© grzegorz wolczyk dreamstime.com
Analizy |
MIPSfpga 2.0 – kierunek architektoniczny inny od pozostałych
MIPSfpga 2.0 to nowa wersja ciekawej platformy i narzędzia, dzięki któremu studenci (i nie tylko) będą mogli lepiej poznać rdzenie, ich budowę, architekturę oraz projekt, zarówno z punktu widzenia poszczególnych elementów, jak również całości.
Projektujesz elektronikę? Zarezerwuj 4 października 2018 roku na największą w Polsce konferencję dedykowaną projektantom, Evertiq Expo Kraków 2018. Przeszło 50 producentów i dystrybutorów komponentów do Twojej dyspozycji, ciekawe wykłady i świetna, twórcza atmosfera. Jesteś zaproszony, wstęp wolny: kliknij po szczegóły. © EvertiqOsoby studiujące kierunki związane z architekturą komputerów operują na teoretycznych modelach ścieżek danych, strukturach kontrolnych i systemach pamięciowych. Jednak sposób, w który wszystko ze sobą współgra często jest pozostawiane wyobraźni. MIPSfpga ma to zmienić. MIPSfpga to pierwszy komercyjny rdzeń CPU typu softcore, udostępniony wszystkim uczelniom. Dzięki temu, użytkownicy (np. studenci) mogą poznać architekturę układów konkretnie, szczegółowo i głęboko, zarówno każdy element układu z osobna, jak i w kontekście pracy z innymi elementami systemu. MIPSfpga to softcore (rdzeń w całości zaimplementowany z wykorzystaniem układów logicznych w formie opisów RTL, element programowy) MIPS, a konkretniej rdzeń microAptiv, czyli taki sam jaki jest stosowany w układach PIC32MK, przeniesiony do FPGA. Narzędzie to (MIPSfpga) nie tylko zawiera dostęp do rdzenia, ale to także pokaźny zestaw materiałów (od Imagination Technologies), które umożliwią szybkie zapoznanie się z rdzeniem i poprowadzą przez kolejne sekcje rdzenia i systemu, pokazując co i jak. Materiały te dzielą się na trzy grupy. Pokażą jak przygotować MIPSfpga, pokażą jak go używać oraz jak modyfikować poszczególne elementy systemu („the Getting Started Guide”, „Labs”, „SoC packages”). Pakiet pierwszy to min. zestaw plików Verilog, będący systemem MIPSfpga. Znajdziemy tu też opis systemu oraz jak go używać. Drugi pakiet jest nieco bardziej rozbudowany. Oferowany jest w formie 25 samodzielnych kursów laboratoryjnych, które umożliwią poznanie architektury komputerów oraz szczegółów projektowych. Przykładowo, znajdziemy tu opisy tego jak zmodyfikować system, by mógł się komunikować z peryferiami, takimi jak LCD, sensory, itp. Będziemy mogli też zmieniać politykę pracy układu np. z pamięcią cache, dodawać nowe instrukcje, a także mierzyć, jak te zmiany wpływają na wydajność pracy rdzenia. Ostatnim pakietem od Imagination Technologies jest MIPSfpga SoC. Pakiet pokazuje jak zbudować własny układ typu SoC, oparty na MIPSfpga, który będzie w stanie uruchomić system operacyjny Linux. Najnowsza wersja MIPSfpga, czyli wersja 2.0, została zaprezentowana oficjalnie w drugiej połowie zeszłego roku (2017). W stosunku do pierwotnej wersji, nowe MIPSfpga wzbogacono o nowe funkcje i zasoby, np. 16 dodatkowych kursów laboratoryjnych, zwiększając ich liczbę z pierwotnych 9 do wspomnianych wyżej 25. Dodano wsparcie dla UART, zmniejszono kod startowy („boot code”), dodano instrukcje instalacji dla Windows, dodano kanał szybkiego debugowania FDC i UDI, dodano bogatsze wsparcie dla I/O, np. instrukcji printf i możliwość definiowania własnych, itd. MIPSfpga ma zmienić formę edukacyjną związaną z poznawaniem architektury systemów komputerowych i samych układów, zapewniając pełny i bogaty dostęp do komercyjnego rdzenia CPU, jednocześnie prowadząc użytkowników krok po kroku, przez kolejne etapy poznawania systemu, także poprzez jego modyfikacje. MIPS niemal od zawsze było utożsamiane z popularnymi rdzeniami do nauki architektury, ze względu na swoją prostotę i elegancję. MIPSfpga to potężna platforma, rozwijająca tą ideę jeszcze dalej, umożliwiając lepsze zrozumienie zarówno pojedynczych elementów, jak i całości.