Dzisiejszy świat jest pełen zaawansowanych technologicznie gadżetów o coraz bardziej złożonych możliwościach, które kiedyś byłyby tematem z cyklu science fiction. Kiedy korzystamy z naszych urządzeń i robimy zdjęcia w wysokiej rozdzielczości za pomocą telefonów komórkowych, niewielu z nas zastanawia się nad podstawową technologią. Jeszcze mniej osób zdaje sobie sprawę z rosnącego napięcia wywołanego przez dynamikę fizyczną i rynkową w każdym urządzeniu, co sprawia, że każde kolejne pokolenie systemów staje się coraz trudniejsze do wykonania.
Nieustanna pogoń za miniaturyzacją urządzeń o coraz mniejszym poborze mocy i większych możliwościach napędza potrzebę mocniejszej integracji. To z kolei wymaga drobniejszych geometrii urządzeń krzemowych, w których projektanci muszą wykorzystywać procesy 28 nm, 16 nm, 12 nm, 7 nm, 5 nm i nie tylko. Z każdą redukcją wielkości geometrii procesu krzemowego wiąże się nieliniowy wzrost kosztów projektowania i produkcji elementów. Tworzenie w coraz mniejszych geometriach wymaga coraz rzadszej wiedzy specjalistycznej, dłuższych czasów projektowania, zwiększonych kosztów narzędzi projektowych i zwielokrotnionego ryzyka projektowego. Wykładniczo rosnące koszty projektowania muszą być amortyzowane w stosunku do liczby urządzeń wyprodukowanych w trakcie eksploatacji elementu. Niestety wraz ze wzrostem globalnej konkurencji rośnie różnorodność aplikacji i skraca się żywotność produktów. Mniejsza liczba projektów może usprawiedliwiać koszt produkcji urządzeń krzemowych na zamówienie i coraz mniej firm mogących przyciągnąć coraz rzadsze talenty do ich projektowania.
Teoretycznie technologia reprogramowalna, taka jak układy FPGA, złagodziłaby wiele z tych problemów, ale tradycyjne elementy FPGA są duże, mało wydajne energetycznie i drogie, często z uwagi na to są spychane do roli platformy dla prototypu czy systemu do debugowania. Efinix bezpośrednio odpowiada na tę dynamikę rynkową, produkując energooszczędne, wydajne układy FPGA, które są wystarczająco gęste, aby wykonywać intensywne zadania obliczeniowe, a jednocześnie są optymalizowane pod kątem dużych wdrożeń. W poniższym artykule omówiono ekonomię projektowania i wdrażania systemów akceleracji algorytmów sztucznej inteligencji (AI), łącząc korzyści i aspekty odnoszące się do technologii FPGA firmy Efinix, ukazując, jak ogromne koszty i obciążenia związane z projektowaniem i produkcją na poziomie chipów stają się coraz bardziej nieuzasadnione w obecności alternatywnego sprzętu, jakim są tego rodzaju układy programowalne.
Ogromny koszt krzemu na zamówienie — przyczyna
Projektowanie chipów od podstaw wymaga niemal niewyobrażalnych nakładów inwestycyjnych z punktu widzenia kosztów, wiedzy i perspektywy czasowej, co ostatecznie sprawia, że branża projektowania układów scalonych jest wypełniona prawie wyłącznie dużymi firmami z ogromną tradycją. Czasami grupa rozczarowanych inżynierów zrywa z wielką korporacją, aby stworzyć startup i wygenerować własne IP. Jednak bariera wejścia często jest tak duża, że pomysły trafiają do kosza zaraz po tym, jak zostały poczęte. Ta sprzętowa blokada samoistnie tłumi innowacyjność, szczególnie w szybko rozwijającej się dziedzinie sztucznej inteligencji o dużej mocy obliczeniowej, w której aplikacje nieustannie zmieniają zarówno krytyczne, jak i niekrytyczne zadania w praktycznie każdej gałęzi przemysłu. Moc obliczeniowa wymagana dla tego rodzaju oprogramowania jest bardzo duża — ogromna złożoność i intensywność obliczeniowa przekłada się na niebotyczną energochłonność. To wszystko sprawia dodatkowo, że sektor ten dąży do wykorzystywania możliwe najnowocześniejszych rozwiązań. Najczęściej koszt wytwarzania niestandardowego krzemu w celu spełnienia zmieniających się wymagań jest, jednakże nieuzasadniony (patrz rysunek 1).
Koszt projektowania i rozwoju
Na początek potrzebne jest oprogramowanie do automatyzacji projektowania elektronicznego (EDA) do wykonania podstaw projektu układu scalonego i do jego symulacji oraz weryfikacji. Ekosystem oprogramowania EDA jest bogaty w narzędzia do każdego aspektu procesu projektowania, które mogą zoptymalizować bazowy koncept w ramach zadanego harmonogramu. Cena tego oprogramowania jest jednak bardzo wysoka, zaczynając od dziesiątek tysięcy dolarów za pojedynczą licencję rocznie do setek tysięcy dolarów, idąc w górę. Kwoty te są rozłożone na dziesiątki do setek maszyn, ta liczba mnoży się i łatwo osiąga granicę miliona dolarów. To tylko jeden aspekt kosztów wejścia w tworzenie projektów chipów. Aby wygenerować produkt końcowy firma może zakupić projekty (bloki IP), analogowe lub cyfrowe, aby zintegrować specjalną funkcjonalność I/O ze swoim konceptem. Sam przemysł rozwoju rdzeni IP jest przemysłem wartym wiele miliardów dolarów; z tego powodu koszt zakupu własności intelektualnej również znacznie przekracza milion dolarów. Jeśli przedsiębiorstwo ma wolne środki, o wiele prostsze i szybsze jest poleganie na outsourcingu krzemowej własności intelektualnej od zewnętrznej, wyspecjalizowanej w rozwoju półprzewodników firmy niż poświęcanie czasu i jednorazowych kosztów inżynieryjnych na generowanie jej wewnętrznie.
Koszt produkcji
Finalizacja projektu układu scalonego to monumentalny wysiłek, w którym cały proces wymaga zatwierdzenia przez zespół inżynierów, co może mieć miejsce dopiero po rozległych globalnych symulacjach, analizach, krytycznych przeglądach projektu, iteracyjnych ulepszeniach układu i przygotowaniu danych maskowania w celu zapewnienia wykonalności projektu oraz wygenerowaniu końcowych plików GSDII do produkcji fotomaski. Przy zmniejszających się rozmiarach tranzystorów jakość fotomaski ma kluczowe znaczenie dla precyzyjnego wykonania zaprojektowanej struktury półprzewodnikowej. Ten proces jest podatny na błędy, ponieważ jest to przejście od projektowania oprogramowania do tworzenia fizycznego chipa. Firmy inwestujące w ten wielomilionowy proces często korzystają z wieloprojektowego wafla (MPW) lub krzemu: „wahadłowego”, aby zmniejszyć ryzyko projektowe. Pozwala to na produkowanie próbek chipów przed wprowadzeniem ich na taśmę produkcyjną, kupując części MPW i dzieląc ogólne koszty maski na wiele zaangażowanych firm. Te opcje pozwalają firmom projektującym układy scalone uzyskać i zweryfikować układy za kilka tysięcy dolarów przed zainwestowaniem w pełnoskalową produkcję.
Koszt testów i obudowy
Aby zmaksymalizować wydajność nowych projektów układów scalonych w skali chipowej i systemów w pakietach (SiP), dostawcy zwracają się do producentów chipów o znane dobre układy (KGD). Chociaż podnosi to koszt samego systemu, ostatecznie zmniejsza wydatki, eliminując konieczność umieszczania wadliwych urządzeń w obudowach. Testowanie gołej struktury krzemowej jest skomplikowanym procesem obejmującym niestandardowe karty testowe z tysiącami sond pomiarowych dociskanych do mikrowypukłości w celu zweryfikowania układu pod kątem defektów za pomocą testów napięciowych, prądowych i temperaturowych. Uszkodzona struktura jest wyrzucana do kosza, podczas gdy zwalidowane struktury są wysyłane do pakowni w celu montażu w obudowie. Wszystkie te dopełniające kroki wiążą się z dodatkowym kosztem. Sama kwestia obudowy jest nauką samą w sobie, zarówno w odniesieniu do pasożytniczej indukcyjności, jak i pojemności, a także w stosunku do poważnych wyzwań związanych z zarządzaniem temperaturą. Kosymulacja elektryczno-termiczna jest niezbędna do wykrycia i optymalizacji problemów termicznych, dodając kolejny poziom złożoności i wymaganej wiedzy do ostatecznego projektu. Po analizie termicznej obudowy układu otrzymuje się przetestowane urządzenia, gotowe do montażu. Jednak, gdy wystąpią problemy i konieczna jest aktualizacja sprzętu, cały proces rozpoczyna się od nowa. To niebotycznie podnosi koszty całkowitego przedsięwzięcia i sprawia, że dla mniejszych rywali wejście w dziedzinę projektowania układów scalonych jest niewykonalne.
Upadek prawa Moore’a: wyzwania stojące za mniejszymi geometriami urządzeń
Niemożliwość produkcji niestandardowych urządzeń krzemowych dodatkowo pogłębia się z uwagi na pozorne spowolnienie prawa Moore'a, w wyniku którego złota era wykładniczych ulepszeń w rozmiarach tranzystorów i gęstości mocy osiągnęła pewne plateau. Kierując się tą logiką, aby sprostać coraz wyższym wymaganiom wydajności chipów, producenci muszą przejść do wytwarzania coraz większych struktur półprzewodnikowych. Jednak wraz ze wzrostem rozmiaru struktury krzemowej spada wydajność produkcji, ze względu na zwiększone ryzyko powstawania na niej defektów. Skłoniło to producentów półprzewodników i firmy projektowe do poszukiwania alternatywnych rozwiązań, w tym rozbicia funkcjonalności monolitycznego układu scalonego na połączone ze sobą mniejsze chipy w celu wykonywania intensywnych obliczeniowo procesów.
Chiplety
Obudowy mniejszych urządzeń przeszły z modułów wielochipowych (MCM) do projektów typu: „system-in-package” jeszcze w latach 80. Teraz technologia przeszła do chipletów. W projekcie chipletowym teoretyczna: „duża struktura” jest podzielona na specjalnie zaprojektowane wzmocnione bloki IP (lub mniejsze układy półprzewodnikowe), które można wytwarzać w bardziej opłacalny sposób. Te chiplety są zoptymalizowane do pracy z innymi blokami, z których wszystkie są połączone za pomocą znormalizowanego interfejsu imitującego funkcjonalność SoC, ale zbudowanego przy niższych kosztach i w krótszym czasie. Urządzenie może się składać dodatkowo z układów o różnych geometriach, niektóre mogą być wykonane w bardziej ekonomicznym procesie 28 nm, a inne wykorzystywać najnowocześniejsze procesy litograficzne 7 nm (lub o niższym wymiarze charakterystycznym). Obudowy tych elementów mogą różnić się topologią i korzystać, między innymi, z krzemowych interposerów (technologia 2,5D), chipów ułożonych w stos (technologia w pełni 3D), wbudowanych mostków łączących wiele chipów (2,5D) lub z klasycznych modułów MCM z wyprowadzonymi z chipów sygnałami.
W porównaniu z wytwarzaniem dużego SoC i próbą uaktualnienia technologii poprzez wprowadzenie większej liczby funkcji i możliwości, układy ASIC oparte na chipletach są znacznie bardziej opłacalne. Teoretycznie każdy blok może potencjalnie być ponownie wykorzystany lub przeskalowany w przyszłych iteracjach projektowania sprzętu, w których znormalizowane interfejsy chip-chip umożliwiają interoperacyjność między blokami, co pozwala na znacznie szybszy czas wprowadzenia nowych elementów na rynek. Tej łatwości zmian nie można zignorować z perspektywy projektowania — ustalony projekt chipa, łatwo dostępny w bibliotece można łączyć z innymi chipletami, tworząc zupełnie nowy system. W praktyce jest tylko kilka dobrze zdefiniowanych standardowych interfejsów tego rodzaju. Wciąż istnieje wiele niestandaryzowanych interfejsów, które utrudniają przyjmowanie bibliotek chipletów zewnętrznym firmom, które po prostu nie wiedzą, jaki standard wybrać, a mogą sobie pozwolić tylko na podjęcie jednego. Często interfejsy te są bardzo szybkie i dlatego mają tendencję do zwiększania kosztów całego projektu.
Projektowanie chipletów to stosunkowo nowa technologia, a spora część tej wiedzy jest w posiadaniu dużych twórców i producentów chipów. Dla projektantów chipów istnieje, jednak poważny potencjał związany z pracą z chipletami w przyszłych projektach ASIC. Coraz bardziej kłopotliwe wąskie gardła odnoszące się do kosztów i czasu opracowywania są w pewnym stopniu pomijane, dzięki nowej metodologii projektowania. Jednak dla firm, które nie mogą zainwestować w zasoby potrzebne do wygenerowania i optymalizacji chipletu, jest to po prostu niewykonalne.
Procesory wbudowane
Często jedynym narzędziem, które pozostaje do dyspozycji projektanta jest wykorzystanie standardowych procesorów wbudowanych i przygotowywanie jak największej ilości oprogramowania, odwołując się do sprzętu tylko tam, gdzie jest to konieczne. W ten sposób zdefiniowane standardy i funkcje wykorzystują konwencjonalne elementy sprzętowe na wielu rynkach, co pozwala na ich produkcję w wymaganej ilości. Projektanci muszą wdrożyć jak najwięcej w oprogramowaniu i wykorzystać jedynie niewielką ilość logiki łączącej urządzenia peryferyjne, wszędzie tam, gdzie jest to konieczne. W niektórych przypadkach obliczeń odbywają się one na wielu rdzeniach, aby przyspieszyć czas przetwarzania równoległego.
Układy GPU są obecnie idealnym rozwiązaniem w np. treningu głębokich sieci neuronowych (DNN). Wiąże się to z kilkoma wyzwaniami. Konieczna jest złożona jednostka sterująca, a dostęp do pamięci jest często nadmiarowy, co powoduje wzrost zużycia energii przez system. Ze względu na ogólny charakter tych procesorów rzadko można znaleźć optymalizacje sprzętowe specyficzne dla algorytmów DNN. Aktualizacje i zmiany w zakresie algorytmów ML stają się wtedy bardzo trudne do wdrożenia, co wymaga coraz większej mocy obliczeniowej. W najlepszym razie jest to kompromis; idealnie procesor i akcelerator są w jednym kawałku krzemu. W ten sposób wydajność systemu można szybko zoptymalizować.
Koszty i korzyści obliczeniowe wykorzystania FPGA do akceleracji sprzętu
Mapowanie algorytmu uczenia maszynowego na sprzęt to skomplikowany proces, który obejmuje równoważenie dokładności danych, przepustowości, opóźnień, zużycia energii, kosztu sprzętu, elastyczności i skalowalności. Możliwość wykorzystania większej liczby rdzeni obliczeniowych do rozwiązania problemu może szybko stać się niepraktyczne, zwłaszcza jeśli problem wiąże się również z kosztami i zużyciem energii.
Realizacja akceleracji sprzętowej w układach FPGA jest znacznie prostsza niż w przypadku procesorów wbudowanych. Wynika to z fundamentalnej różnicy w architekturze sprzętowej. Procesory i procesory graficzne mogą realizować tylko równoległość danych, podczas gdy układy FPGA (i ASIC) oferują równoległość danych i potoków. W CPU lub GPU każdy procesor działa zgodnie z modelem wykonywania wielu danych z jedną instrukcją, w którym identyczne zadania są przeprowadzane na różnych fragmentach danych rozproszonych lub elementy przetwarzające wykonują tę samą operację w cyklu zegara, gdy dane są podzielone na partycje i rozprowadzane równolegle do poszczególnych jednostek przetwarzających. W układach FPGA, jak i ASIC, odmienne zadania w zestawie instrukcji mogą być wykonywane jednocześnie w jednym cyklu zegara, dzięki czemu każdy element przetwarzający dane w potoku może równolegle pobierać zasoby z różnymi znacznikami czasu. Zapewnia to szybką akcelerację sprzętową dla sieci DNN ze współbieżnością i zależnością danych.
Aby lepiej to zobrazować, można by użyć bardziej fizycznego przykładu fabryki tłoczenia tac. Fabryka przetwarza tacki poprzez cięcie, tłoczenie i etykietowanie. Procesory lub procesory graficzne mogą być w stanie przetwarzać duży rząd tac. Jednak każdy z nich musiałby przejść identyczne zadanie cięcia przed przejściem do stemplowania. Po ostemplowaniu rzędu następny cykl zegara będzie poświęcony etykietowaniu produktów. Z drugiej strony, FPGA będzie w stanie pracować z wieloma rzędami tacek jednocześnie, podczas gdy jeden rząd tac jest cięty, drugi stemplowany, a inny etykietowany, wszystko w tym samym cyklu zegarowym. W ten sposób potok FPGA może być w pełni wykorzystany, co powoduje, że jest on z natury bardziej wydajny. Techniki optymalizacji zarówno obliczeń DNN, jak i przenoszenia danych można lepiej zaimplementować na sprzęcie FPGA. FPGA pozwalają projektantom pracować z rozmiarami pakietów dostosowanymi do konkretnej aplikacji i mogą precyzyjnie skalować oraz dostrajać protokoły komunikacyjne, a także topologie dla aplikacji.
Układy FPGA oferują również poważną przewagę dla sztucznej inteligencji w porównaniu z układami ASIC. Niezależnie od tego, czy producent zastosował bardziej opłacalną technikę pakowania chipletów, po wyprodukowaniu układu ASIC projektant jest mniej lub bardziej skazany na rodzaj obliczanych danych i charakter przepływu zasobów przez sprzęt i jego urządzenia peryferyjne. FPGA oferują platformę bardziej ogólnego przeznaczenia zapewniającą możliwości paralelizmu potokowego, które mają ASIC, bez uszczerbku dla aplikacji, twardych obwodów i wysokich kosztów. Układy FPGA korzystają również z najnowocześniejszego przetwarzania przy użyciu najaktualniejszych technik projektowania obwodów, wytwarzania, przetwarzania płytek i metod pakowania. Coraz częściej układy FPGA są budowane na węzłach o rozmiarze 16 nm lub drobniejszych z wykorzystaniem technologii FinFET. Jednak użytkownicy końcowi są w mniejszym lub większym stopniu zabezpieczeni przed tymi obciążającymi kosztami. Zdobycie wiedzy projektowej dla VHDL jest znacznie tańsze i łatwiejsze do osiągnięcia niż pozyskanie zespołu inżynierów od układów scalonych sygnałów analogowych/mieszanych, układu, integralności sygnału i zasilania oraz pakowania półprzewodników. Same miękkie rdzenie IP stanowią tylko ułamek kosztów twardych rdzeni IP przy znacznie mniejszym ryzyku związanym z przestarzałością sprzętu, przy czym zawsze, gdy ewoluują wymagania aplikacji, zmienia się również interfejs WE/WY.
Spojrzenie na ekosystem FPGA
Przewiduje się, że do 2026 r. światowy rynek FPGA osiągnie ponad 9 miliardów dolarów, przy czym większość tego wzrostu przypisuje się do centrów danych i wysokowydajnych aplikacji obliczeniowych. Współczesny rynek FPGA jest głównie napędzany przez ekstrema spektrum obliczeniowego z wysokiej klasy energochłonnymi FPGA z jednej strony i low-end FPGA z logiką kleju z drugiej (patrz rysunek 2).
W latach 80. XX wieku układy FPGA znalazły swoją niszę w logice łączeniowej TTL do szybkiego projektowania i prototypowania systemów: „sklejając” różne bloki IP z ogólnymi protokołami I/O i interfejsami komunikacyjnymi. Prawie dekadę później FPGA stały się bardziej wyrafinowane, wprowadzając do swojej struktury duże bloki pamięci SRAM, mnożniki we wbudowanych blokach cyfrowego przetwarzania sygnału (DSP), procesory wbudowane, zaawansowane moduły I/O i interfejsy SerDes. Przyniosło to nowy poziom elastyczności projektowania na rynku, który wcześniej był zdominowany przez procesory typu CPU, GPU i układy SoC. Dzięki układom FPGA możliwe jest generowanie programowych bloków IP na rekonfigurowalnej platformie. Potężne, wysokiej klasy układy FPGA zaczęto wykorzystywać w centrach danych w celu zwiększenia wydajności wielkoskalowych systemów danych do szyfrowania, kompresji, filtrowania i wirtualnego przełączania jako odejście od przetwarzania wielordzeniowego. Stworzyło to równowagę między wydajnością a wydajnością obliczeniową z dodatkową ogromną korzyścią rekonfiguracji. Sieci uczenia głębokiego są w ciągłym procesie unowocześniania o nowe typy warstw i zmieniające się zestawy danych. Z tego powodu wykorzystywano układy FPGA do tworzenia programowalnych akceleratorów do wnioskowania. Układy programowalne okazały się potężnym narzędziem do efektywnej realizacji algorytmów uczenia maszynowego, dzięki zoptymalizowanemu ruchowi danych, zoptymalizowanym sieciom, zmniejszonej precyzji arytmetycznej i możliwości równoległego rozłożenia obliczeń.
W rosnącym ekosystemie aplikacji AI wiecznie aktualizujących modele i techniki optymalizacji przy wsparciu sprzętowych akceleratorów istnieje luka między układami programowalnymi o niskiej i bardzo wysokiej wydajności obliczeniowej. Wraz z rozwojem systemów luka ta staje się tylko bardziej widoczna. Możliwości w zakresie rozwoju autonomicznych pojazdów powietrznych i naziemnych, systemów opieki zdrowotnej, rozpoznawania wizualnego, wykrywania oszustw i względem wielu innych zastosowań będą nieuchronnie wymagały tej samej platformy, którą można ponownie konfigurować, ale w bardziej opłacalnym i mniej energochłonnym pakiecie.
Przełamywanie niestandardowych rozwiązań krzemowych za pomocą ekonomicznych układów FPGA
Głównym celem tego artykułu było zaprezentowanie trudności związanych zarówno z kosztami, jak i wymaganą wiedzą w zakresie wytwarzania niestandardowych urządzeń półprzewodnikowych. Doprowadziło to do powstania ekskluzywnego klubu producentów chipów, którzy mogą konkurować na rynku i ostatecznie dyktować ceny i możliwości sprzętowe w segmencie chipsetów AI. Bardzo opłacalne rozwiązania CPU i GPU ogólnego przeznaczenia są świetne w przypadku niektórych aplikacji algorytmów AI, ale z natury są ograniczeniem w innych sektorach, dodatkowo, limitując rozwiązania dostępne dla programistów. Układy FPGA od Efinix idealnie nadają się do niszowych zastosowań AI, które wymagają niskiego zużycia energii, małych opóźnień, niewielkich kosztów, rozmiarów i łatwości programowania.
Układy FPGA wykorzystujące: „kwantową” strukturę obliczeniową Efinix są małe, energooszczędne i wydajne. Są one wyceniane za wdrożenie zbiorcze, przy czym najtańsze modele zaczynają się od 10 dolarów, a zestaw rozwojowy od 48 dolarów (patrz rysunek 3). Stanowią one wstępnie zdefiniowany, standardowy produkt, a akceleracja sprzętowa za pośrednictwem platformy Efinix wymaga zerowych kosztów inżynieryjnych, co skraca czas wprowadzania na rynek o lata i pozwala zaoszczędzić wiele milionów dolarów na kosztach rozwoju produktów.
Ta nowa ekonomia otwiera możliwości, które dotychczas były zamknięte z powodu kosztów opracowania układów scalonych. Reprogramowalny charakter układów FPGA zapewnia, że ich debugowanie jest szybkie, ryzyko projektowe jest zmniejszone, a wynikowy projekt pozostaje elastyczny, aż do wdrożenia (i później). Projektanci mogą wprowadzać innowacje za darmo, wdrażając niekonwencjonalne funkcje dla poszczególnych produktów, różnicując te ostatnie za pomocą innowacyjnych funkcjonalności na standardowej platformie krzemowej. Jest to możliwe tylko dzięki przełomowej wydajności tkaniny kwantowej Efinix, która zapewnia wysoką wydajność na rynku masowym.
Szybki przegląd specyfikacji rodziny Titanium (rysunek 4) pokazuje integrację struktury obliczeniowej o dużej gęstości z warstwami DSP, szybkimi wejściami/wyjściami i interfejsami nadawczo-odbiorczymi potrzebnymi do zaspokojenia potrzeb systemów o małym poborze mocy i niewielkim rozmiarze, dedykowanym do pracy na krawędzi w aplikacjach wysokowydajnych systemów automatyki przemysłowej czy wbudowanych aplikacji wizyjnych. Stosunek gęstości do rozmiaru tych układów prezentuje nowy paradygmat dla aplikacji FPGA. Konstrukcje Efinix są wystarczająco drobne i mocne, aby zastąpić zarówno konwencjonalne, niedrogie układy FPGA, które były zbyt małe, aby pomieścić kompletny projekt, a tym samym używane były jedynie jako urządzenie pomostowe, jak również bardzo niestandardowe układy scalone ASIC, do których układy FPGA wykorzystywano jako logikę łączeniową.
Dynamiczne partycjonowanie sprzętu i oprogramowania w ramach: „kwantowej” tkanki Efinix
Wykorzystywana najczęściej obecnie metodologia projektowania systemu w maksymalnym możliwym stopniu w oprogramowaniu i uciekanie się do sprzętu tylko tam, gdzie potrzebna jest zwiększona wydajność, jest również uwzględniona w paradygmacie projektowania FPGA Efinix. Definiowane programowo procesory RISC-V o otwartym kodzie źródłowym mogą być bezpłatnie instalowane w układach FPGA. Intuicyjna warstwa abstrakcji sprzętowej akceleratora jest udostępniana projektantom w celu dodania małych elementów sprzętu w celu przyspieszenia kodu pisanego w C/C++. Dynamiczne partycjonowanie sprzętu i oprogramowania jest możliwe w ramach tej samej konfigurowalnej struktury, co zapewnia maksymalizację wydajności i sprawności, a także skraca czas wprowadzania na rynek i obniża koszty rozwoju.
Architektura zestawu instrukcji RISC-V znacznie rozwinęła się od swoich skromnych początków na Uniwersytecie Kalifornijskim w Berkeley. Bezpośrednim wynikiem inicjatywy RISC-V jest teraz bogaty zestaw programowych rdzeni typu open source. W rezultacie staje się ona coraz bardziej popularną architekturą dla układów scalonych produkowanych przez firmy zaangażowane w ekosystemy sztucznej inteligencji, od komercyjnych gigantów technologicznych po armię USA – konkurując z popularnymi architekturami, takimi jak ARM czy x86. Podobnie jak wiele platform programowo-sprzętowych typu open source, rozwijający się ekosystem dla RISC-V doprowadził do lepszej współpracy, dzięki wydajniejszym i bezpieczniejszym projektom. Obniża to bariery dla projektantów wchodzących na rynek, dzięki możliwości stworzenia własnej instancji implementacji RISC-V najbliższej potrzebom konkretnej aplikacji i odpowiedniej jej konfiguracji. Projektant może opracować kod w języku C na procesorze, a gdy okaże się on zbyt wolny, może łatwo stopniowo migrować wszelkie krytyczne elementy do FPGA, aż do osiągnięcia wymaganej wydajności systemu. Ten rodzaj prostej akceleracji sprzętowej jest trudny do uzyskania bez platformy FPGA. Możliwość ta pozostaje dostępna dla użytkownika, nawet po wdrożeniu urządzenia w docelowym systemie.
Podsumowanie
Kolejne generacje chipów są coraz trudniejsze do rynkowego uzasadnienia, gdyż wielokroć mniejsze geometrie procesów stają się nieliniowo droższe. Dodatkowo zwiększona integracja potęguje złożoność i koszty obudów tych elementów. Wzrost skomplikowania zwiększa czas i koszty projektowania systemów. Z powodu tych czynników zmniejszają się marże przy masowej produkcji układów scalonych.
Po pierwsze, wzrost konkurencji umożliwia konsumentom większy wybór, co zmniejsza wolumeny produkcji poszczególnych rozwiązań. Wzrost konkurencji skraca również czas życia produktów na rynku. Nowe technologie wymagające dużej mocy obliczeniowej muszą być coraz bardziej elastyczne, nie tylko po to, by wspierać zmieniające się wymagania rynku, ale także, by nadążyć za aktualizacjami, np. modeli uczenia głębokiego. Widoczny jest brak układów FPGA używanych w aplikacjach AI, które znajdują się pośrodku drogi pod względem złożoności i wydajności, co powoduje, że projektanci polegają na niestandardowych chipletach lub procesorach wbudowanych w celu akceleracji sprzętowej tych algorytmów.
Nowy paradygmat ekonomiczny FPGA stworzony przez Efinix pozwala projektantom na bardziej elastyczne wprowadzanie innowacji w dziedzinie, która przyniesie rewolucyjne korzyści całemu społeczeństwu. Ta jedyna w swoim rodzaju zmiana w możliwościach projektowania produktów zapewnia punkt zwrotny i odbija od ślepego zaułka produkcji niestandardowego krzemu i prowadzi do konfigurowalnych układów FPGA.
Źródła:
https://www.eetimes.com/economics-of-the-fpga/
https://www.marketsandmarkets.com/Market-Reports/fpga-market-194123367.html
https://spectrum.ieee.org/riscv-rises-among-chip-developers-worldwide#toggle-gdpr
Nieustanna pogoń za miniaturyzacją urządzeń o coraz mniejszym poborze mocy i większych możliwościach napędza potrzebę mocniejszej integracji. To z kolei wymaga drobniejszych geometrii urządzeń krzemowych, w których projektanci muszą wykorzystywać procesy 28 nm, 16 nm, 12 nm, 7 nm, 5 nm i nie tylko. Z każdą redukcją wielkości geometrii procesu krzemowego wiąże się nieliniowy wzrost kosztów projektowania i produkcji elementów. Tworzenie w coraz mniejszych geometriach wymaga coraz rzadszej wiedzy specjalistycznej, dłuższych czasów projektowania, zwiększonych kosztów narzędzi projektowych i zwielokrotnionego ryzyka projektowego. Wykładniczo rosnące koszty projektowania muszą być amortyzowane w stosunku do liczby urządzeń wyprodukowanych w trakcie eksploatacji elementu. Niestety wraz ze wzrostem globalnej konkurencji rośnie różnorodność aplikacji i skraca się żywotność produktów. Mniejsza liczba projektów może usprawiedliwiać koszt produkcji urządzeń krzemowych na zamówienie i coraz mniej firm mogących przyciągnąć coraz rzadsze talenty do ich projektowania.
Teoretycznie technologia reprogramowalna, taka jak układy FPGA, złagodziłaby wiele z tych problemów, ale tradycyjne elementy FPGA są duże, mało wydajne energetycznie i drogie, często z uwagi na to są spychane do roli platformy dla prototypu czy systemu do debugowania. Efinix bezpośrednio odpowiada na tę dynamikę rynkową, produkując energooszczędne, wydajne układy FPGA, które są wystarczająco gęste, aby wykonywać intensywne zadania obliczeniowe, a jednocześnie są optymalizowane pod kątem dużych wdrożeń. W poniższym artykule omówiono ekonomię projektowania i wdrażania systemów akceleracji algorytmów sztucznej inteligencji (AI), łącząc korzyści i aspekty odnoszące się do technologii FPGA firmy Efinix, ukazując, jak ogromne koszty i obciążenia związane z projektowaniem i produkcją na poziomie chipów stają się coraz bardziej nieuzasadnione w obecności alternatywnego sprzętu, jakim są tego rodzaju układy programowalne.
Ogromny koszt krzemu na zamówienie — przyczyna
Projektowanie chipów od podstaw wymaga niemal niewyobrażalnych nakładów inwestycyjnych z punktu widzenia kosztów, wiedzy i perspektywy czasowej, co ostatecznie sprawia, że branża projektowania układów scalonych jest wypełniona prawie wyłącznie dużymi firmami z ogromną tradycją. Czasami grupa rozczarowanych inżynierów zrywa z wielką korporacją, aby stworzyć startup i wygenerować własne IP. Jednak bariera wejścia często jest tak duża, że pomysły trafiają do kosza zaraz po tym, jak zostały poczęte. Ta sprzętowa blokada samoistnie tłumi innowacyjność, szczególnie w szybko rozwijającej się dziedzinie sztucznej inteligencji o dużej mocy obliczeniowej, w której aplikacje nieustannie zmieniają zarówno krytyczne, jak i niekrytyczne zadania w praktycznie każdej gałęzi przemysłu. Moc obliczeniowa wymagana dla tego rodzaju oprogramowania jest bardzo duża — ogromna złożoność i intensywność obliczeniowa przekłada się na niebotyczną energochłonność. To wszystko sprawia dodatkowo, że sektor ten dąży do wykorzystywania możliwe najnowocześniejszych rozwiązań. Najczęściej koszt wytwarzania niestandardowego krzemu w celu spełnienia zmieniających się wymagań jest, jednakże nieuzasadniony (patrz rysunek 1).
Koszt projektowania i rozwoju
Na początek potrzebne jest oprogramowanie do automatyzacji projektowania elektronicznego (EDA) do wykonania podstaw projektu układu scalonego i do jego symulacji oraz weryfikacji. Ekosystem oprogramowania EDA jest bogaty w narzędzia do każdego aspektu procesu projektowania, które mogą zoptymalizować bazowy koncept w ramach zadanego harmonogramu. Cena tego oprogramowania jest jednak bardzo wysoka, zaczynając od dziesiątek tysięcy dolarów za pojedynczą licencję rocznie do setek tysięcy dolarów, idąc w górę. Kwoty te są rozłożone na dziesiątki do setek maszyn, ta liczba mnoży się i łatwo osiąga granicę miliona dolarów. To tylko jeden aspekt kosztów wejścia w tworzenie projektów chipów. Aby wygenerować produkt końcowy firma może zakupić projekty (bloki IP), analogowe lub cyfrowe, aby zintegrować specjalną funkcjonalność I/O ze swoim konceptem. Sam przemysł rozwoju rdzeni IP jest przemysłem wartym wiele miliardów dolarów; z tego powodu koszt zakupu własności intelektualnej również znacznie przekracza milion dolarów. Jeśli przedsiębiorstwo ma wolne środki, o wiele prostsze i szybsze jest poleganie na outsourcingu krzemowej własności intelektualnej od zewnętrznej, wyspecjalizowanej w rozwoju półprzewodników firmy niż poświęcanie czasu i jednorazowych kosztów inżynieryjnych na generowanie jej wewnętrznie.
Koszt produkcji
Finalizacja projektu układu scalonego to monumentalny wysiłek, w którym cały proces wymaga zatwierdzenia przez zespół inżynierów, co może mieć miejsce dopiero po rozległych globalnych symulacjach, analizach, krytycznych przeglądach projektu, iteracyjnych ulepszeniach układu i przygotowaniu danych maskowania w celu zapewnienia wykonalności projektu oraz wygenerowaniu końcowych plików GSDII do produkcji fotomaski. Przy zmniejszających się rozmiarach tranzystorów jakość fotomaski ma kluczowe znaczenie dla precyzyjnego wykonania zaprojektowanej struktury półprzewodnikowej. Ten proces jest podatny na błędy, ponieważ jest to przejście od projektowania oprogramowania do tworzenia fizycznego chipa. Firmy inwestujące w ten wielomilionowy proces często korzystają z wieloprojektowego wafla (MPW) lub krzemu: „wahadłowego”, aby zmniejszyć ryzyko projektowe. Pozwala to na produkowanie próbek chipów przed wprowadzeniem ich na taśmę produkcyjną, kupując części MPW i dzieląc ogólne koszty maski na wiele zaangażowanych firm. Te opcje pozwalają firmom projektującym układy scalone uzyskać i zweryfikować układy za kilka tysięcy dolarów przed zainwestowaniem w pełnoskalową produkcję.
Koszt testów i obudowy
Aby zmaksymalizować wydajność nowych projektów układów scalonych w skali chipowej i systemów w pakietach (SiP), dostawcy zwracają się do producentów chipów o znane dobre układy (KGD). Chociaż podnosi to koszt samego systemu, ostatecznie zmniejsza wydatki, eliminując konieczność umieszczania wadliwych urządzeń w obudowach. Testowanie gołej struktury krzemowej jest skomplikowanym procesem obejmującym niestandardowe karty testowe z tysiącami sond pomiarowych dociskanych do mikrowypukłości w celu zweryfikowania układu pod kątem defektów za pomocą testów napięciowych, prądowych i temperaturowych. Uszkodzona struktura jest wyrzucana do kosza, podczas gdy zwalidowane struktury są wysyłane do pakowni w celu montażu w obudowie. Wszystkie te dopełniające kroki wiążą się z dodatkowym kosztem. Sama kwestia obudowy jest nauką samą w sobie, zarówno w odniesieniu do pasożytniczej indukcyjności, jak i pojemności, a także w stosunku do poważnych wyzwań związanych z zarządzaniem temperaturą. Kosymulacja elektryczno-termiczna jest niezbędna do wykrycia i optymalizacji problemów termicznych, dodając kolejny poziom złożoności i wymaganej wiedzy do ostatecznego projektu. Po analizie termicznej obudowy układu otrzymuje się przetestowane urządzenia, gotowe do montażu. Jednak, gdy wystąpią problemy i konieczna jest aktualizacja sprzętu, cały proces rozpoczyna się od nowa. To niebotycznie podnosi koszty całkowitego przedsięwzięcia i sprawia, że dla mniejszych rywali wejście w dziedzinę projektowania układów scalonych jest niewykonalne.
Upadek prawa Moore’a: wyzwania stojące za mniejszymi geometriami urządzeń
Niemożliwość produkcji niestandardowych urządzeń krzemowych dodatkowo pogłębia się z uwagi na pozorne spowolnienie prawa Moore'a, w wyniku którego złota era wykładniczych ulepszeń w rozmiarach tranzystorów i gęstości mocy osiągnęła pewne plateau. Kierując się tą logiką, aby sprostać coraz wyższym wymaganiom wydajności chipów, producenci muszą przejść do wytwarzania coraz większych struktur półprzewodnikowych. Jednak wraz ze wzrostem rozmiaru struktury krzemowej spada wydajność produkcji, ze względu na zwiększone ryzyko powstawania na niej defektów. Skłoniło to producentów półprzewodników i firmy projektowe do poszukiwania alternatywnych rozwiązań, w tym rozbicia funkcjonalności monolitycznego układu scalonego na połączone ze sobą mniejsze chipy w celu wykonywania intensywnych obliczeniowo procesów.
Chiplety
Obudowy mniejszych urządzeń przeszły z modułów wielochipowych (MCM) do projektów typu: „system-in-package” jeszcze w latach 80. Teraz technologia przeszła do chipletów. W projekcie chipletowym teoretyczna: „duża struktura” jest podzielona na specjalnie zaprojektowane wzmocnione bloki IP (lub mniejsze układy półprzewodnikowe), które można wytwarzać w bardziej opłacalny sposób. Te chiplety są zoptymalizowane do pracy z innymi blokami, z których wszystkie są połączone za pomocą znormalizowanego interfejsu imitującego funkcjonalność SoC, ale zbudowanego przy niższych kosztach i w krótszym czasie. Urządzenie może się składać dodatkowo z układów o różnych geometriach, niektóre mogą być wykonane w bardziej ekonomicznym procesie 28 nm, a inne wykorzystywać najnowocześniejsze procesy litograficzne 7 nm (lub o niższym wymiarze charakterystycznym). Obudowy tych elementów mogą różnić się topologią i korzystać, między innymi, z krzemowych interposerów (technologia 2,5D), chipów ułożonych w stos (technologia w pełni 3D), wbudowanych mostków łączących wiele chipów (2,5D) lub z klasycznych modułów MCM z wyprowadzonymi z chipów sygnałami.
W porównaniu z wytwarzaniem dużego SoC i próbą uaktualnienia technologii poprzez wprowadzenie większej liczby funkcji i możliwości, układy ASIC oparte na chipletach są znacznie bardziej opłacalne. Teoretycznie każdy blok może potencjalnie być ponownie wykorzystany lub przeskalowany w przyszłych iteracjach projektowania sprzętu, w których znormalizowane interfejsy chip-chip umożliwiają interoperacyjność między blokami, co pozwala na znacznie szybszy czas wprowadzenia nowych elementów na rynek. Tej łatwości zmian nie można zignorować z perspektywy projektowania — ustalony projekt chipa, łatwo dostępny w bibliotece można łączyć z innymi chipletami, tworząc zupełnie nowy system. W praktyce jest tylko kilka dobrze zdefiniowanych standardowych interfejsów tego rodzaju. Wciąż istnieje wiele niestandaryzowanych interfejsów, które utrudniają przyjmowanie bibliotek chipletów zewnętrznym firmom, które po prostu nie wiedzą, jaki standard wybrać, a mogą sobie pozwolić tylko na podjęcie jednego. Często interfejsy te są bardzo szybkie i dlatego mają tendencję do zwiększania kosztów całego projektu.
Projektowanie chipletów to stosunkowo nowa technologia, a spora część tej wiedzy jest w posiadaniu dużych twórców i producentów chipów. Dla projektantów chipów istnieje, jednak poważny potencjał związany z pracą z chipletami w przyszłych projektach ASIC. Coraz bardziej kłopotliwe wąskie gardła odnoszące się do kosztów i czasu opracowywania są w pewnym stopniu pomijane, dzięki nowej metodologii projektowania. Jednak dla firm, które nie mogą zainwestować w zasoby potrzebne do wygenerowania i optymalizacji chipletu, jest to po prostu niewykonalne.
Procesory wbudowane
Często jedynym narzędziem, które pozostaje do dyspozycji projektanta jest wykorzystanie standardowych procesorów wbudowanych i przygotowywanie jak największej ilości oprogramowania, odwołując się do sprzętu tylko tam, gdzie jest to konieczne. W ten sposób zdefiniowane standardy i funkcje wykorzystują konwencjonalne elementy sprzętowe na wielu rynkach, co pozwala na ich produkcję w wymaganej ilości. Projektanci muszą wdrożyć jak najwięcej w oprogramowaniu i wykorzystać jedynie niewielką ilość logiki łączącej urządzenia peryferyjne, wszędzie tam, gdzie jest to konieczne. W niektórych przypadkach obliczeń odbywają się one na wielu rdzeniach, aby przyspieszyć czas przetwarzania równoległego.
Układy GPU są obecnie idealnym rozwiązaniem w np. treningu głębokich sieci neuronowych (DNN). Wiąże się to z kilkoma wyzwaniami. Konieczna jest złożona jednostka sterująca, a dostęp do pamięci jest często nadmiarowy, co powoduje wzrost zużycia energii przez system. Ze względu na ogólny charakter tych procesorów rzadko można znaleźć optymalizacje sprzętowe specyficzne dla algorytmów DNN. Aktualizacje i zmiany w zakresie algorytmów ML stają się wtedy bardzo trudne do wdrożenia, co wymaga coraz większej mocy obliczeniowej. W najlepszym razie jest to kompromis; idealnie procesor i akcelerator są w jednym kawałku krzemu. W ten sposób wydajność systemu można szybko zoptymalizować.
Koszty i korzyści obliczeniowe wykorzystania FPGA do akceleracji sprzętu
Mapowanie algorytmu uczenia maszynowego na sprzęt to skomplikowany proces, który obejmuje równoważenie dokładności danych, przepustowości, opóźnień, zużycia energii, kosztu sprzętu, elastyczności i skalowalności. Możliwość wykorzystania większej liczby rdzeni obliczeniowych do rozwiązania problemu może szybko stać się niepraktyczne, zwłaszcza jeśli problem wiąże się również z kosztami i zużyciem energii.
Realizacja akceleracji sprzętowej w układach FPGA jest znacznie prostsza niż w przypadku procesorów wbudowanych. Wynika to z fundamentalnej różnicy w architekturze sprzętowej. Procesory i procesory graficzne mogą realizować tylko równoległość danych, podczas gdy układy FPGA (i ASIC) oferują równoległość danych i potoków. W CPU lub GPU każdy procesor działa zgodnie z modelem wykonywania wielu danych z jedną instrukcją, w którym identyczne zadania są przeprowadzane na różnych fragmentach danych rozproszonych lub elementy przetwarzające wykonują tę samą operację w cyklu zegara, gdy dane są podzielone na partycje i rozprowadzane równolegle do poszczególnych jednostek przetwarzających. W układach FPGA, jak i ASIC, odmienne zadania w zestawie instrukcji mogą być wykonywane jednocześnie w jednym cyklu zegara, dzięki czemu każdy element przetwarzający dane w potoku może równolegle pobierać zasoby z różnymi znacznikami czasu. Zapewnia to szybką akcelerację sprzętową dla sieci DNN ze współbieżnością i zależnością danych.
Aby lepiej to zobrazować, można by użyć bardziej fizycznego przykładu fabryki tłoczenia tac. Fabryka przetwarza tacki poprzez cięcie, tłoczenie i etykietowanie. Procesory lub procesory graficzne mogą być w stanie przetwarzać duży rząd tac. Jednak każdy z nich musiałby przejść identyczne zadanie cięcia przed przejściem do stemplowania. Po ostemplowaniu rzędu następny cykl zegara będzie poświęcony etykietowaniu produktów. Z drugiej strony, FPGA będzie w stanie pracować z wieloma rzędami tacek jednocześnie, podczas gdy jeden rząd tac jest cięty, drugi stemplowany, a inny etykietowany, wszystko w tym samym cyklu zegarowym. W ten sposób potok FPGA może być w pełni wykorzystany, co powoduje, że jest on z natury bardziej wydajny. Techniki optymalizacji zarówno obliczeń DNN, jak i przenoszenia danych można lepiej zaimplementować na sprzęcie FPGA. FPGA pozwalają projektantom pracować z rozmiarami pakietów dostosowanymi do konkretnej aplikacji i mogą precyzyjnie skalować oraz dostrajać protokoły komunikacyjne, a także topologie dla aplikacji.
Układy FPGA oferują również poważną przewagę dla sztucznej inteligencji w porównaniu z układami ASIC. Niezależnie od tego, czy producent zastosował bardziej opłacalną technikę pakowania chipletów, po wyprodukowaniu układu ASIC projektant jest mniej lub bardziej skazany na rodzaj obliczanych danych i charakter przepływu zasobów przez sprzęt i jego urządzenia peryferyjne. FPGA oferują platformę bardziej ogólnego przeznaczenia zapewniającą możliwości paralelizmu potokowego, które mają ASIC, bez uszczerbku dla aplikacji, twardych obwodów i wysokich kosztów. Układy FPGA korzystają również z najnowocześniejszego przetwarzania przy użyciu najaktualniejszych technik projektowania obwodów, wytwarzania, przetwarzania płytek i metod pakowania. Coraz częściej układy FPGA są budowane na węzłach o rozmiarze 16 nm lub drobniejszych z wykorzystaniem technologii FinFET. Jednak użytkownicy końcowi są w mniejszym lub większym stopniu zabezpieczeni przed tymi obciążającymi kosztami. Zdobycie wiedzy projektowej dla VHDL jest znacznie tańsze i łatwiejsze do osiągnięcia niż pozyskanie zespołu inżynierów od układów scalonych sygnałów analogowych/mieszanych, układu, integralności sygnału i zasilania oraz pakowania półprzewodników. Same miękkie rdzenie IP stanowią tylko ułamek kosztów twardych rdzeni IP przy znacznie mniejszym ryzyku związanym z przestarzałością sprzętu, przy czym zawsze, gdy ewoluują wymagania aplikacji, zmienia się również interfejs WE/WY.
Spojrzenie na ekosystem FPGA
Przewiduje się, że do 2026 r. światowy rynek FPGA osiągnie ponad 9 miliardów dolarów, przy czym większość tego wzrostu przypisuje się do centrów danych i wysokowydajnych aplikacji obliczeniowych. Współczesny rynek FPGA jest głównie napędzany przez ekstrema spektrum obliczeniowego z wysokiej klasy energochłonnymi FPGA z jednej strony i low-end FPGA z logiką kleju z drugiej (patrz rysunek 2).
W latach 80. XX wieku układy FPGA znalazły swoją niszę w logice łączeniowej TTL do szybkiego projektowania i prototypowania systemów: „sklejając” różne bloki IP z ogólnymi protokołami I/O i interfejsami komunikacyjnymi. Prawie dekadę później FPGA stały się bardziej wyrafinowane, wprowadzając do swojej struktury duże bloki pamięci SRAM, mnożniki we wbudowanych blokach cyfrowego przetwarzania sygnału (DSP), procesory wbudowane, zaawansowane moduły I/O i interfejsy SerDes. Przyniosło to nowy poziom elastyczności projektowania na rynku, który wcześniej był zdominowany przez procesory typu CPU, GPU i układy SoC. Dzięki układom FPGA możliwe jest generowanie programowych bloków IP na rekonfigurowalnej platformie. Potężne, wysokiej klasy układy FPGA zaczęto wykorzystywać w centrach danych w celu zwiększenia wydajności wielkoskalowych systemów danych do szyfrowania, kompresji, filtrowania i wirtualnego przełączania jako odejście od przetwarzania wielordzeniowego. Stworzyło to równowagę między wydajnością a wydajnością obliczeniową z dodatkową ogromną korzyścią rekonfiguracji. Sieci uczenia głębokiego są w ciągłym procesie unowocześniania o nowe typy warstw i zmieniające się zestawy danych. Z tego powodu wykorzystywano układy FPGA do tworzenia programowalnych akceleratorów do wnioskowania. Układy programowalne okazały się potężnym narzędziem do efektywnej realizacji algorytmów uczenia maszynowego, dzięki zoptymalizowanemu ruchowi danych, zoptymalizowanym sieciom, zmniejszonej precyzji arytmetycznej i możliwości równoległego rozłożenia obliczeń.
W rosnącym ekosystemie aplikacji AI wiecznie aktualizujących modele i techniki optymalizacji przy wsparciu sprzętowych akceleratorów istnieje luka między układami programowalnymi o niskiej i bardzo wysokiej wydajności obliczeniowej. Wraz z rozwojem systemów luka ta staje się tylko bardziej widoczna. Możliwości w zakresie rozwoju autonomicznych pojazdów powietrznych i naziemnych, systemów opieki zdrowotnej, rozpoznawania wizualnego, wykrywania oszustw i względem wielu innych zastosowań będą nieuchronnie wymagały tej samej platformy, którą można ponownie konfigurować, ale w bardziej opłacalnym i mniej energochłonnym pakiecie.
Przełamywanie niestandardowych rozwiązań krzemowych za pomocą ekonomicznych układów FPGA
Głównym celem tego artykułu było zaprezentowanie trudności związanych zarówno z kosztami, jak i wymaganą wiedzą w zakresie wytwarzania niestandardowych urządzeń półprzewodnikowych. Doprowadziło to do powstania ekskluzywnego klubu producentów chipów, którzy mogą konkurować na rynku i ostatecznie dyktować ceny i możliwości sprzętowe w segmencie chipsetów AI. Bardzo opłacalne rozwiązania CPU i GPU ogólnego przeznaczenia są świetne w przypadku niektórych aplikacji algorytmów AI, ale z natury są ograniczeniem w innych sektorach, dodatkowo, limitując rozwiązania dostępne dla programistów. Układy FPGA od Efinix idealnie nadają się do niszowych zastosowań AI, które wymagają niskiego zużycia energii, małych opóźnień, niewielkich kosztów, rozmiarów i łatwości programowania.
Układy FPGA wykorzystujące: „kwantową” strukturę obliczeniową Efinix są małe, energooszczędne i wydajne. Są one wyceniane za wdrożenie zbiorcze, przy czym najtańsze modele zaczynają się od 10 dolarów, a zestaw rozwojowy od 48 dolarów (patrz rysunek 3). Stanowią one wstępnie zdefiniowany, standardowy produkt, a akceleracja sprzętowa za pośrednictwem platformy Efinix wymaga zerowych kosztów inżynieryjnych, co skraca czas wprowadzania na rynek o lata i pozwala zaoszczędzić wiele milionów dolarów na kosztach rozwoju produktów.
Ta nowa ekonomia otwiera możliwości, które dotychczas były zamknięte z powodu kosztów opracowania układów scalonych. Reprogramowalny charakter układów FPGA zapewnia, że ich debugowanie jest szybkie, ryzyko projektowe jest zmniejszone, a wynikowy projekt pozostaje elastyczny, aż do wdrożenia (i później). Projektanci mogą wprowadzać innowacje za darmo, wdrażając niekonwencjonalne funkcje dla poszczególnych produktów, różnicując te ostatnie za pomocą innowacyjnych funkcjonalności na standardowej platformie krzemowej. Jest to możliwe tylko dzięki przełomowej wydajności tkaniny kwantowej Efinix, która zapewnia wysoką wydajność na rynku masowym.
Szybki przegląd specyfikacji rodziny Titanium (rysunek 4) pokazuje integrację struktury obliczeniowej o dużej gęstości z warstwami DSP, szybkimi wejściami/wyjściami i interfejsami nadawczo-odbiorczymi potrzebnymi do zaspokojenia potrzeb systemów o małym poborze mocy i niewielkim rozmiarze, dedykowanym do pracy na krawędzi w aplikacjach wysokowydajnych systemów automatyki przemysłowej czy wbudowanych aplikacji wizyjnych. Stosunek gęstości do rozmiaru tych układów prezentuje nowy paradygmat dla aplikacji FPGA. Konstrukcje Efinix są wystarczająco drobne i mocne, aby zastąpić zarówno konwencjonalne, niedrogie układy FPGA, które były zbyt małe, aby pomieścić kompletny projekt, a tym samym używane były jedynie jako urządzenie pomostowe, jak również bardzo niestandardowe układy scalone ASIC, do których układy FPGA wykorzystywano jako logikę łączeniową.
Dynamiczne partycjonowanie sprzętu i oprogramowania w ramach: „kwantowej” tkanki Efinix
Wykorzystywana najczęściej obecnie metodologia projektowania systemu w maksymalnym możliwym stopniu w oprogramowaniu i uciekanie się do sprzętu tylko tam, gdzie potrzebna jest zwiększona wydajność, jest również uwzględniona w paradygmacie projektowania FPGA Efinix. Definiowane programowo procesory RISC-V o otwartym kodzie źródłowym mogą być bezpłatnie instalowane w układach FPGA. Intuicyjna warstwa abstrakcji sprzętowej akceleratora jest udostępniana projektantom w celu dodania małych elementów sprzętu w celu przyspieszenia kodu pisanego w C/C++. Dynamiczne partycjonowanie sprzętu i oprogramowania jest możliwe w ramach tej samej konfigurowalnej struktury, co zapewnia maksymalizację wydajności i sprawności, a także skraca czas wprowadzania na rynek i obniża koszty rozwoju.
Architektura zestawu instrukcji RISC-V znacznie rozwinęła się od swoich skromnych początków na Uniwersytecie Kalifornijskim w Berkeley. Bezpośrednim wynikiem inicjatywy RISC-V jest teraz bogaty zestaw programowych rdzeni typu open source. W rezultacie staje się ona coraz bardziej popularną architekturą dla układów scalonych produkowanych przez firmy zaangażowane w ekosystemy sztucznej inteligencji, od komercyjnych gigantów technologicznych po armię USA – konkurując z popularnymi architekturami, takimi jak ARM czy x86. Podobnie jak wiele platform programowo-sprzętowych typu open source, rozwijający się ekosystem dla RISC-V doprowadził do lepszej współpracy, dzięki wydajniejszym i bezpieczniejszym projektom. Obniża to bariery dla projektantów wchodzących na rynek, dzięki możliwości stworzenia własnej instancji implementacji RISC-V najbliższej potrzebom konkretnej aplikacji i odpowiedniej jej konfiguracji. Projektant może opracować kod w języku C na procesorze, a gdy okaże się on zbyt wolny, może łatwo stopniowo migrować wszelkie krytyczne elementy do FPGA, aż do osiągnięcia wymaganej wydajności systemu. Ten rodzaj prostej akceleracji sprzętowej jest trudny do uzyskania bez platformy FPGA. Możliwość ta pozostaje dostępna dla użytkownika, nawet po wdrożeniu urządzenia w docelowym systemie.
Podsumowanie
Kolejne generacje chipów są coraz trudniejsze do rynkowego uzasadnienia, gdyż wielokroć mniejsze geometrie procesów stają się nieliniowo droższe. Dodatkowo zwiększona integracja potęguje złożoność i koszty obudów tych elementów. Wzrost skomplikowania zwiększa czas i koszty projektowania systemów. Z powodu tych czynników zmniejszają się marże przy masowej produkcji układów scalonych.
Po pierwsze, wzrost konkurencji umożliwia konsumentom większy wybór, co zmniejsza wolumeny produkcji poszczególnych rozwiązań. Wzrost konkurencji skraca również czas życia produktów na rynku. Nowe technologie wymagające dużej mocy obliczeniowej muszą być coraz bardziej elastyczne, nie tylko po to, by wspierać zmieniające się wymagania rynku, ale także, by nadążyć za aktualizacjami, np. modeli uczenia głębokiego. Widoczny jest brak układów FPGA używanych w aplikacjach AI, które znajdują się pośrodku drogi pod względem złożoności i wydajności, co powoduje, że projektanci polegają na niestandardowych chipletach lub procesorach wbudowanych w celu akceleracji sprzętowej tych algorytmów.
Nowy paradygmat ekonomiczny FPGA stworzony przez Efinix pozwala projektantom na bardziej elastyczne wprowadzanie innowacji w dziedzinie, która przyniesie rewolucyjne korzyści całemu społeczeństwu. Ta jedyna w swoim rodzaju zmiana w możliwościach projektowania produktów zapewnia punkt zwrotny i odbija od ślepego zaułka produkcji niestandardowego krzemu i prowadzi do konfigurowalnych układów FPGA.
Źródła:
https://www.eetimes.com/economics-of-the-fpga/
https://www.marketsandmarkets.com/Market-Reports/fpga-market-194123367.html
https://spectrum.ieee.org/riscv-rises-among-chip-developers-worldwide#toggle-gdpr