Date:
czw., cze 26, 2025
By:
kama3 kama3
Każdy kafelek zawiera rekonfigurowalne zasoby obsługujące wiele trybów sprzętowych, a mianowicie rekonfigurowalną pamięć na układzie scalonym (ROCM), rekonfigurowalną szynę krzyżową (RXB) oraz łącza rejestr-rejestr (R2R).
Do wcześniejszych projektów najbardziej podobnych do Versa zaliczają się procesor surowy [10], Manticore [11] i ET-SoC-1 firmy EsperantoTechnologies [12] (dwa ostatnie opracowano równolegle z tą pracą).
rekonfigurowalne jednostki funkcjonalne — mianowicie połączenia międzysystemowe i pamięci na układzie scalonym — wykorzystujące właściwości specyficzne dla danego trybu w celu zoptymalizowania przepustowości i opóźnień;3) ulepszenia rdzeni ARM klasy przemysłowej, które umożliwiają uniwersalne, programowalne obliczenia skurczowe;
W tej pracy opisano Versa [9] (rys. 1): uniwersalny akcelerator, który wykorzystuje elastyczność mikroarchitektury do obsługi różnych algorytmów. W przeciwieństwie do istniejących projektów, które zawierają stałe obliczenia, połączenia i pamięć na chipie, Versa zapewnia zoptymalizowane tryby dla każdego z poprzednich, które można rekonfigurować w skali nanosekund. Umożliwia to implementacje jądra i sprzęt, które są współoptymalizowane pod kątem charakterystyki algorytmu i dynamicznych potrzeb aplikacji.
Z drugiej strony, procesory graficzne polegają całkowicie na obliczeniach SIMD, które amortyzują narzuty związane ze sterowaniem. SIMD wyróżnia się w obliczeniach z przewidywalnymi gęstymi danymi, a programiści GPU korzystają z modelu programowania SIMT, który daje iluzję skalarnego wykonania. Jednak ze względu na rozbieżność wątków, podstawowe jednostki SIMD są podatne na niedostateczne wykorzystanie i pogorszoną wydajność przy nieregularnych obciążeniach [7]. Programowalne w terenie macierze bramek (FPGA) są wysoce konfigurowalne, ale ponoszą nietrywialne narzuty sprzętowe w zamian za rekonfigurowalność na poziomie bramek. Ponadto FPGA wykazują długie czasy rekonfiguracji w skali mikrosekund [8].