Čo znamená „field programmable array“?

Úplný názov je Field Programmable Gate Array (FPGA), teda programovateľné hradlové pole. FPGA realizuje konfigurovateľnú digitálnu logiku; NPU urýchľuje podporované operácie neurónových sietí. Voľba závisí od skutočnej signálovej cesty. Spracovanie signálov vo FPGA môže byť užitočné pre paralelné rozhrania alebo časovo citlivý zber údajov, zatiaľ čo NPU môže zjednodušiť podporovanú inferenčnú úlohu.

Od vývojovej dosky FPGA k zákazkovému výrobku

Doska FPGA overuje len časť systému. Zákazkový návrh potrebuje aj sekvencovanie napájania, hodinové signály, pamäťové rozhrania, tepelný návrh a opakovateľnú skúšobnú metódu. Porovnajte návrh a overovanie FPGA s architektúrou MPU alebo FPGA typu system-on-chip. Náklady na FPGA zahŕňajú okrem čipu aj vývoj, nástroje, zložitosť dosky a výrobné skúšky.

Čo je AI MPU?

Platforma MPU s podporou AI kombinuje aplikačný mikroprocesor so softvérom a akceleračnými zdrojmi potrebnými na pracovné zaťaženie strojového učenia. Začnite identifikáciou úloh, ktoré patria do CPU a ktoré využívajú podporovaný akcelerátor.

MPU alebo aplikačný mikroprocesor je zvyčajne softvérovým centrom zabudovaného systému Linux. „AI MPU“ nie je samostatnou kategóriou procesorov ani tak ako platforma MPU, ktorá zahŕňa alebo úzko spolupracuje so zdrojmi zrýchlenia, ako sú NPU, GPU, DSP alebo FPGA. MPU hostí Linux, siete, úložisko, bezpečnostné služby, aplikačnú logiku a runtime, ktoré koordinuje pracovné zaťaženie AI.

Pre strojové učenie MPU nie je praktickou otázkou len rýchlosť procesora. Šírka pásma pamäte, podpora akcelerátora, kamera a vysokorýchlostná kvalita I/O, Linux BSP, dlhodobá dostupnosť, tepelný dizajn a vyspelosť modelového reťazca sú často dôležitejšie ako hlavná hodnota TOPS.

Čo robí MPU dobrou platformou umelej inteligencie?

Najlepší MPU pre umelú inteligenciu je špecifický pre pracovné zaťaženie. Brána videnia môže uprednostňovať MIPI CSI, hardvérové ​​video potrubia a NPU. Odolný misijný počítač môže potrebovať PCIe, viacero portov Ethernet, deterministické sprievodné jadrá a silnejšie bezpečnostné funkcie. Priemyselná platforma môže oceniť dlhú životnosť produktu, TSN, CAN-FD a stabilný ekosystém Linux.

Porovnajte skutočný model a kompletný reťazec predbežného spracovania. Platforma s nižšou inzerovanou hodnotou urýchľovača môže vyhrať, ak sa vyhne kópiám pamäte, podporuje požadované operátory a udržiava efektívnu cestu medzi snímačom a výsledkom.

NPU: efektívna nervová inferencia na okraji

Edge NPU urýchľuje operátorov neurónových sietí, ako sú konvolúcie, maticové operácie a bežné aktivačné funkcie. Je to zvyčajne najefektívnejšie miesto pre podporované modely detekcie, klasifikácie, segmentácie a extrakcie funkcií, keď záleží na výkone a trvalej priepustnosti.

Výkon NPU závisí od kompilácie a pokrytia operátorom. Nepodporované vrstvy sa môžu vrátiť späť na CPU alebo iný urýchľovač. Požiadavky na kvantizáciu, rozloženie tenzorov, rozlíšenie vstupu a pohyb pamäte môžu tiež dramaticky zmeniť výkon v reálnom svete. Vždy porovnávajte produkčný graf a nespoliehajte sa len na teoretické TOPS.

FPGA: deterministické kanály a umelá inteligencia, kde je dôležitá flexibilita

FPGA vyniká v deterministickom pohybe údajov, vlastných rozhraniach a masívne paralelných potrubiach. V okrajových systémoch môže deserializovať senzory, zarovnať časové značky, filtrovať údaje, generovať oblasti záujmu, vykonávať predbežné spracovanie obrazu a napájať urýchľovač s predvídateľnou latenciou. FPGA AI odvodenie je možné aj vtedy, keď sa model dobre mapuje na dostupný DSP, pamäť a akceleračný zásobník dodávateľa.

Kompromisom je inžinierske úsilie. Musí sa naplánovať návrh RTL alebo HLS, simulácia, načasovanie uzavretia, overenie a aktualizácia. FPGA by ste mali vybrať, pretože deterministické správanie alebo vlastný paralelizmus vytvára systémovú hodnotu – nielen preto, že môže bežať aritmetiku.

NPU vs FPGA pre Edge AI

Rozhodnutie NPU vs FPGA je často falošná binárna hodnota. NPU je vo všeobecnosti jednoduchšou voľbou pre podporované neurónové siete a silný výkon na watt. FPGA je silnejší, keď systém potrebuje vlastné senzorové rozhrania, deterministické predspracovanie, neobvyklé dátové formáty alebo prísne kontrolované potrubie pred a po odvodení.

Spoločná architektúra používa oboje: FPGA pre príjem a predbežné spracovanie senzora, NPU pre neurónovú sieť a MPU pre orchestráciu Linux. To znižuje množstvo nepravidelnej práce nútenej na ktorýkoľvek procesor.

ZdrojNajvhodnejšie pracovné zaťaženieHlavné obmedzenia
FPGADeterministické pipeline, vlastné I/O, časová pečiatka, predspracovanie, špecializované zrýchlenieRTL/HLS úsilie, overenie, prostriedky zariadenia
NPUPodporovaná neurálna inferencia s dobrým výkonom na wattPodpora operátora, kompilátor/runtime, kvantizácia a presun pamäte
MPUAplikácie Linux, siete, úložisko, kybernetická bezpečnosť, orchestráciaMenej deterministické prevedenie; univerzálna réžia
Jadro MCU / RTRiadiace slučky, dohľad nad bezpečnosťou, radenie výkonu, deterministické I/OObmedzená pamäť a vysoká úroveň výpočtov
FPGAI/O
NPUAI
MPULinux · I/O

Edge computing

  1. Začnite s termínmi: identifikovať, ktoré signály majú náročné požiadavky na časovanie a maximálne oneskorenie medzi senzorom a činnosťou.
  2. Rýchlosti údajov mapy: vypočítajte priepustnosť snímača, stredné veľkosti tenzorov a najhorší prípad prenosu pamäte.
  3. Ponechajte deterministický príjem blízko rozhrania: Často sú vhodné FPGA, motory DMA alebo jadrá v reálnom čase.
  4. Umiestnite podporované neurónové modely na NPU: overiť pokrytie operátora a skutočný zostavený výkon.
  5. Použite MPU pre systém: sieťovanie, ukladanie, aktualizácie, protokolovanie, API a aplikačná politika prirodzene patria do Linux.
  6. Rezervovať ovládanie v reálnom čase: MCU alebo deterministické jadro by malo v prípade potreby dohliadať na časovo kritickú aktiváciu a stav platformy.

Skrytou prekážkou je často šírka pásma pamäte

Mnoho návrhov edge AI sa zameriava na výpočtové špičky a neskôr zistí, že latenciu dominujú kópie, konverzia farieb, preformátovanie tenzora alebo zdieľané DDR. Cesty s nulovým alebo nízkym počtom kópií, topológia DMA, správanie vyrovnávacej pamäte a prístup k pamäti akcelerátora by sa mali vyhodnotiť včas. Tepelné škrtenie môže tiež zmeniť silný benchmark na slabý trvalý výkon.

To je dôležité najmä vtedy, keď viacero kamier, radarov, senzorov udalostí alebo vysokorýchlostné toky Ethernet zdieľajú rovnaký pamäťový subsystém.

Príklady referenčnej architektúry

Potrubie zraku / senzora udalostí

Senzor → Príjem a časové označenie FPGA → Inferencia NPU → Služby rozhodovania MPU → Výstup CAN-FD alebo Ethernet. Toto je silný vzor pre vnímanie s nízkou latenciou a priamo sa spája s naším .

Vstavaný počítač AI

Vysokorýchlostné I/O → DMA / cesta akcelerátora → NPU alebo odvodenie GPU → Aplikačné služby Linux → úložné a sieťové API. náš vstavaný výpočtový modul a počítač s odolným okrajom triedy produktov sú postavené na tomto type rozdelenia.

Priemyselná deterministická brána

Rozhrania CAN-FD / sériové / Ethernet → Časová pečiatka FPGA alebo MCU a spracovanie protokolov → Služby MPU → voliteľná analytika NPU. Tu môže byť deterministický I/O a dlhodobá údržba softvéru dôležitejšia ako maximálna priepustnosť AI.

Ako si vybrať medzi FPGA, NPU a MPU

Vyberte si z kompletného pracovného zaťaženia, nie z označenia procesora. Ak je dominantným problémom neurálna inferencia, začnite od kompatibility NPU. Ak dominujú vlastné I/O a deterministické predspracovanie, vyhodnoťte zdroje FPGA. Ak dominujú služby Linux, sieťový a aplikačný softvér, začnite so schopnosťou MPU. Väčšina vysokovýkonných okrajových platforiem bude kombinovať aspoň dva z týchto zdrojov.

Pred potvrdením hardvéru spustite reprezentatívne streamy cez zamýšľaný softvérový balík a zmerajte end-to-end latenciu, výkon, šírku pásma pamäte a teplotné hodnoty. Tento dôkaz je cennejší ako hodnotenie generických urýchľovačov.

Spracovaný príklad: štyri kamery a rozpočet na zdieľanú pamäť

Uvažujme o príklade plánovania so štyrmi tokmi 1280 × 720 pri 30 snímkach za sekundu, reprezentovaných ako RGB s jedným bytom na kanál po konverzii obrazu. Ich kombinované logické zaťaženie obrazu je 4 × 1280 × 720 × 30 × 3 = 331,776,000 bajtov za sekundu, približne 332 MB/s v desatinných jednotkách. Toto nie je prenosová rýchlosť spojenia kamery alebo nameraný výkon produktu ALVEXIS.

Jedna dodatočná full-frame kópia číta a zapisuje toto užitočné zaťaženie a pridáva približne 664 MB/s pamäťovej prevádzky pred zvážením správania cache alebo iných operácií. Tenzory modelov, konverzia farieb, protokolovanie a súbežné služby pridávajú svoju vlastnú návštevnosť. To vysvetľuje, prečo môže byť dizajn obmedzený pohybom údajov, aj keď sa jeho hlavné hodnotenie akcelerátora javí ako dostatočné.

Práca na miestoVýchodiskový bodDôkaz pred spáchaním
Príjem a synchronizácia fotoaparátuPodporované rozhrania SoC so FPGA alebo sprievodným zariadením v prípade potrebySimultánne zachytávanie toku, správanie časovej značky a strata pri zaťažení
Neurónová inferenciaNPU, keď je podporovaný zvolený graf a presnosťPresnosť prevodu a trvalé merania aplikácií na zariadení
Služby a nahrávanie LinuxZdroje MPU a explicitne rozpočtovaná cesta k úložiskuSprávanie CPU, pamäte a I/O počas aktívnej inferencie
Časovo kritické externé ovládanieVhodný regulátor v reálnom čase alebo overená deterministická implementáciaDôkaz o dobe odozvy v rámci príslušného najhoršieho pracovného zaťaženia

Účelom rozdelenia je, aby bola každá požiadavka na načasovanie a zdroj explicitná. Neznamená to, že každý dizajn potrebuje štyri rôzne procesory. Začnite s najjednoduchšou architektúrou, ktorá spĺňa požiadavky, a potom pridajte zdroje tam, kde ich oprávňujú merania alebo obmedzenia rozhrania.

Validačný plán pre výber mixu procesorov

  1. Zmrazte vstupnú zmluvu: snímače, formáty údajov, model, rozlíšenie a prevádzkové podmienky.
  2. Pred porovnaním priepustnosti urýchľovača overte podporu modelu a kvalitu výstupu.
  3. Samostatne zmerajte akvizíciu, predbežné spracovanie, odvodenie a doručenie a potom zmerajte celú cestu.
  4. Opakujte pri trvalom tepelnom zaťažení s aktívnym záznamom, sieťovým pripojením a všetkými zamýšľanými senzormi.
  5. Zaznamenajte vek frontu, stratené vstupy a oneskorenie, takže vysoká priemerná rýchlosť nezakryje občasné oneskorenia.

Uchovávajte revíziu dosky, obraz softvéru, verzie toolchain a testovacie vstupy s výsledkami. Pre implementáciu Rockchip, Sprievodca nasadením modelu RK3588 rozvíja tento pracovný postup. Pre údaje z kamery udalosti použite sprievodca integráciou softvéru na definovanie časových pečiatok a reprezentácií pred výberom inferenčnej cesty.

Po charakterizácii pracovného zaťaženia porovnajte Možnosti integrácie SoM a SBC. Toto rozhodnutie spája výpočtovú architektúru s konektormi, napájaním, kryt a produkčnou prácou.

Od výberu procesora až po zostaviteľný produkt

Užší zoznam procesorov je užitočný len vtedy, keď sa hodí pre celý produkt. Pred objednaním dosky na mieru premeňte pracovné zaťaženie na krátky technický popis:

  • Vstupy: počet snímačov, rozhrania, vzorkovacie frekvencie a požiadavky na synchronizáciu.
  • Pracovná záťaž AI: skutočný model, podporovaná presnosť a prijateľná kvalita výstupu.
  • Fyzické obmedzenia: rozmery, zdroj energie, chladenie a prevádzkové prostredie.
  • Doručenie: množstvo prototypu, objem výroby, vlastníctvo softvéru a akceptačné testy.

V prípade inšpekčnej stanice pripojte kamerové potrubie k spúšťaču linky, identifikátoru dielu a rozhraniu výsledkov. náš priemyselné strojové videnie a riešenie kontroly kvality vysvetľuje, ako sa tieto požiadavky stanú pilotný projekt.

MPU, NPU a FPGA edge AI FAQ

Čo je MPU AI?

Umelá inteligencia MPU popisuje pracovné zaťaženia umelej inteligencie nasadené na platforme vstavaného mikroprocesora, zvyčajne so Linux a často s integrovanou alebo sprievodnou akceleráciou, ako je NPU, GPU alebo FPGA. MPU bežne spravuje aplikácie, siete, úložisko, bezpečnosť a orchestráciu okolo inferenčného potrubia.

Môže MPU spustiť strojové učenie?

áno. Úlohy strojového učenia MPU môžu bežať na jadrách CPU alebo používať integrované akcelerátory. V prípade produkčných systémov je podpora modelu, šírka pásma pamäte, trvalá teplotná rýchlosť a komplexná latencia dôležitejšia ako samotná hlavná TOPS.

NPU vs FPGA: čo je lepšie pre edge AI?

NPU je zvyčajne jednoduchšia voľba pre podporované odvodenie neurónovej siete so silným výkonom na watt. FPGA sa uprednostňuje, keď sú pri návrhu kľúčové rozhrania vlastných snímačov, deterministické predspracovanie, neobvyklé formáty údajov alebo špecializované potrubia. Mnoho systémov používa oboje.

Môžete spustiť pracovné zaťaženie NPU na FPGA?

FPGA môže implementovať urýchľovače neurónovej siete alebo inferenčné potrubia, ale nie je to automaticky ekvivalentné vyhradenému NPU. Obchod zahŕňa programovateľné logické zdroje, pamäť, vyspelosť reťaze nástrojov, podporu modelu, overovacie úsilie a výkon.

Kedy má inferencia FPGA AI zmysel?

FPGA AI inferencia je atraktívna, keď inferencia musí byť úzko spojená s deterministickým predspracovaním, užívateľskými rozhraniami alebo špecializovaným pohybom dát. Je to užitočné najmä vtedy, keď štandardný runtime NPU nevyhovuje dráhe snímača alebo obmedzeniam latencie.

Kde TinyML zapadá do výpočty na okraji siete

výpočty na okraji siete popisuje spracovanie v blízkosti zdroja údajov; edge AI tam aplikuje strojové učenie. TinyML rieši obmedzenejšiu triedu nasadenia, často na mikrokontroléroch s obmedzenou pamäťou a výkonom. Malý vibračný klasifikátor a kanál vnímania z viacerých kamier si preto vyžadujú veľmi odlišné hardvérové ​​rozpočty, aj keď obe môžu byť okrajovou AI.

Pre cieľ mikrokontroléra skontrolujte veľkosť modelu, pamäť runtime, podporované operátory a réžiu získavania. V prípade dizajnu založeného na NPU alebo FPGA tiež vyhodnoťte pohyb pamäte a oblasť medzi zrýchlenou a nezrýchlenou prácou. Vyberte si najmenšiu architektúru, ktorá vyhovuje meranej úlohe a požiadavkám na obnovu, namiesto toho, aby ste vyberali technológiu len podľa jej skratky.

Technické referencie

Príklad šírky pásma je explicitný výpočet, nie referenčná hodnota produktu. Overte vybranú architektúru na zamýšľanom pracovnom zaťažení.

Rozdeľte svoju skutočnú okrajovú pracovnú záťaž AI.

Odošlite rozhrania snímača, typ modelu, rýchlosť prenosu dát, obálku výkonu a obmedzenia nasadenia. Môžeme ich namapovať na architektúru MPU/NPU/FPGA a vhodnú triedu výpočtových modulov.