Jste zde

Výběr a použití FPGA pro automobilové rozhraní, zabezpečení a výpočetně náročné operace

Výkonné mikrokontrolery nebo speciální aplikační procesory jsou potřené pro náročné výpočetní operace. Vozidlo střední třídy obsahuje 25 až 35 výpočetních jednotek a luxusní vozy potřebují 70 jednotek a více. Mezi náročné výpočetní operace patří pokročilé asistenční systémy pro řidiče (ADAS), infotainment, bezpečnostní funkce a všelijaká konektivita. Pro tyto účely je vhodné využít vlastností FPGA, které pomohou mikrokontrolerům od náročných operací a zároveň přidávají do systému větší flexibilitu.

V moderních vozech je běžnou součástí systému zpracování obrazu a videa ve spojení s umělou inteligencí (AI). Samotná architektura procesoru stěží zvládá všechna rozhraní a protokoly pro připojené senzory, kamery a displeje. V mnoha případech ale tyto procesory nejsou schopny uspokojit extrémní požadavky na výpočetní výkon pro strojové vidění a umělou inteligenci.

FPGA mohou pomoci třemi způsoby. První způsob je takový, že FPGA vytvoří most mezi jednotlivými procesory, a tím pomáhají s efektivní distribucí dat. Druhá možnost je, že FPGA převezmou výpočetně náročné operace jako je zpracování obrazu či umělou inteligenci. Poslední forma pomoci je vytvoření mostu mezi procesory a jednotlivými senzory, jelikož FPGA lze naprogramovat tak, aby efektivně vyčítala data přes širokou škálu rozhraní či protokolů. Všechny tyto formy pomoci uvolní potřebný výkon mikrokontrolerům a ty se mohou věnovat jiné činnosti.

Tento článek pojednává o požadavcích na výpočetní výkon v moderních vozidlech a popisuje automobilové aplikace, které lze řešit pomocí FPGA. Přestavíme si několik příkladů FPGA od Lattice Semiconductor a jejich použití v problematice konektivity a zabezpečení.

FPGA pro automobilové aplikace

Dnešní automobily s podporou systému ADAS obsahují mnoho senzorů vně vozidla. Jedná se o venkovní kamery, radary, LiDARy a ultrazvukové detektory. Data z jednotlivých senzorů je nutné předběžně zpracovat (odstranit šum a správně naformátovat), popřípadě data z více senzorů sloučit a až poté předat do procesoru, kde budou použita k dalšímu zpracování. V mnoha případech se k analýze dat, rozhodování a přijímání vhodných akcí používá umělá inteligence.

V poslední době se můžeme setkat s nasazením tzv. elektronického nebo též digitálního zpětného zrcátka. V tomto případě je u zadního okna nainstalována širokoúhlá kamera s vysokým rozlišením. Video stream z této kamery se zobrazuje na digitálním displeji, který nahrazuje klasické střední zpětné zrcátko.

V některých případech mohou být video streamy z kamer umístěných na bočních zrcátkách sloučeny s video streamem z kamery zadního okna. Tyto tři kanály jsou spojeny dohromady a poskytují jeden širokoúhlý obraz. Tím se poskytuje řidiči vyšší stupeň bezpečnosti, jelikož má větší přehled o tom, co se děje okolo vozidla.

Dalším bezpečnostním prvkem je kamera umístěná na palubní desce nebo na vnitřním zpětném zrcátku. Tato kamera snímá řidiče a díky umělé inteligenci systém dokáže rozpoznat, kdo na sedadle sedí a systém přizpůsobí nastavení sedadla a zrcátek danému řidiči. Kromě rozpoznání řidiče, tato kamera také sleduje jeho pozornost a zda se plně věnuje řízení. Takový systém je schopen rozeznat známky ospalosti, zdravotní problémy jako je epileptický nebo srdeční záchvat a bezpečně zastavit vozidlo u krajnice a nakonec přivolat pomoc.

Pokud se vrátíme k video aplikacím, tak v některých případech je nutné rozdělit jeden video vstup do více směrů a někdy je žádoucí sloučit jednotlivé video streamy do jednoho kanálu. U elektrických vozidel se k tomu přidává efektivní ovládání motorů (čerpadla, chlazení apod.) a navíc je nutné řídit proces nabíjení pro dosažení maximální životnosti baterie.

Aby toho nebylo málo, tak moderní automobily začínají podporovat 5G nebo V2X technologii. V2X znamená „vehicle to anything“ čili „vozidlo komunikující s čímkoli". To znamená komunikace mezi vozidlem a jakoukoli jinou entitou, která může ovlivnit nebo může být ovlivněna silniční infrastrukturou nebo jiným vozidlem. S touto konektivitou souvisí vysoké nároky na výpočetní výkon potřebný pro zabezpečení komunikace, aby se zabránilo „hacknutí“ vozidla.

Zařízení pro automobilový průmysl

Je důležité si uvědomit, že ne všechna FPGA jsou vhodná pro automobilové aplikace. Automotive Electronics Council (AEC) je organizace původně založená v 90. letech 20. století společnostmi Chrysler, Ford a GM za účelem stanovení společných standardů pro kvalifikaci dílů a systémů kvality. Jedním z nejčastěji zmiňovaných standardů AEC je AEC-Q100 - Kvalifikace zátěžového testu na základě mechanismu selhání pro integrované obvody.

IATF 16949:2016 je technická specifikace zaměřená na vývoj systému pro kvalitu managmentu, který zajišťuje neustálé zlepšování s důrazem na prevenci defektů a snižování plýtvání v dodavatelském řetězci. Dodavatelé elektronických systémů pro automobilový trh vyžadují součástky v souladu s normou AEC-Q100, aby se mohli prokázat certifikaci ISO/TS-16949.

Výběr správného FPGA

FPGA jsou extrémně flexibilní, ale různé rodiny nabízejí různé kombinace funkcí, díky nimž se lépe hodí pro konkrétní úkoly. Například moderní kamery a displeje často využívají rozhraní MIPI. Oba protokoly MIPI CSI-2 (kamera/snímač) a DSI (Displej) využívají komunikační fyzickou vrstvu nazývanou D-PHY. Starší mikrokontrolery nemusí toto rozhraní podporovat, ale některá FPGA ano, jako například CrossLink-NX embedded vision a procesorová FPGA od Lattice Semiconductor.

Kromě dvou odolných čtyř kanálových transceiverů MIPI D-PHY podporujících rychlost přenosu 10 Gbit/s na PHY, CrossLink-NX také nabízí 5 Gbit/s PCIe, 1,5 Gbit/s programovatelné vstupy/výstupy (I/O ) a 1066 Mbit/s DDR3 paměť.

Tyto FPGA podporují rozhraní a protokoly jako je LVDS, Sub-LVDS (verze LVDS se sníženým napětím), Open LVDS Display Interface (OLDI) a SGMII. Díky těmto vlastnostem je lze použít pro agregaci video streamů, rozdělování video streamů, spouštění aplikací AI a při tom také fungovat jako mosty mezi staršími mikrokontrolery a moderními senzory a displejem.

Vývojáři automobilových systémů, kteří se chtějí seznámit s FPGA CrossLink-NX mohou využít kombinaci  LIFCL-VIP-SI-EVN CrossLink-NX VIP Sensor Input Board (obrázek 1) a LF-EVDK1-EVN Modular Embedded Vision Kit. Kromě CrossLink-NX FPGA obsahuje vstupní deska také čtyři 13 megapixelové obrazové snímače Sony IMX258 CMOS MIPI MIPI s rozlišením 4K2K při 30 fps nebo 1080p při 60 fps. Deska dále nabízí snadné připojení snímačů prostřednictvím tří nezávislých rozhraní PMOD.

Obrázek 1: Vstupní deska CrossLink-NX VIP, která může fungovat jako vstup pro sadu Embedded Vision Development Kit, obsahuje CrossLink-NX FPGA a podporuje agregaci čtyř obrazových snímačů MIPI Sony IMX258. (Zdroj obrázku: Lattice Semiconductor)

Pro výpočetně náročné aplikace jako je rozpoznávání a ovládání gest, rozpoznávání a ovládání hlasu, detekce lidské přítomnosti, identifikace cestujících a monitorování řidičů jsou FPGA Lattice ECP5 vybaveny jednotkou serializer/deserializer (SERDES) s rychlostí až 3,2 Gbit/s, 85 000 lookup table (LUT) a bloky pro digitální zpracování signálu (DSP), které poskytují dostatečný výkon pro symetrické filtry. Tyto FPGA také poskytují programovatelné vstupy/výstupy pro LVCMOS 33/25/18/15/12, XGMII, LVTTL, LVDS, Bus-LVDS, 7:1 LVDS, LVPECL a MIPI D-PHY I/O rozhraní.

Příkladem ECP5 FPGA je LFE5U-85F-6BG554C s 84 000 logickými prvky, 3,75 Mbits RAM pamětí a 259 I/O. K dispozici je vývojová sada LFE5UM-45F-VERSA-EVNG ECP5 Versa (obrázek 2). Sada využívá formát poloviční PCI Express (PCIe) a umožňuje využívat veškeré funkce ECP5 FPGA, včetně PCIe, Gigabit Ethernet (GbE), DDR3 a SERDES.

Obrázek 2: Vývojová sada ECPe Versa ve formátu polovičního PCI Express umožňuje vyzkoušet si veškeré  funkce ECP5 FPGA, včetně PCIe, GbE, DDR3 a generického SERDES. (Zdroj obrázku: Lattice Semiconductor)

Zabezpečení automobilů pomocí FPGA

S konektivitou souvisí také bezpečnost. Útoky hackrerů jsou na denním pořádku a nevyhnou se jim ani vozidla, kde by útok mohl mít fatální následky. Základem bezpečnosti je mít v systému hardwarovou část, které lze důvěřovat. Této části se říká root of trust (RoT). Jedním z řešení je mít RoT založené na FPGA například řada Lattice MachXO3D.

Kromě značných zdrojů LUT a velkého počtu I/O nabízejí možnosti okamžitého zapnutí. Mezi univerzální aplikace patří přemostění sběrnice, rozhraní sběrnice, řízení motoru, řízení zapínání a další řídicí logické procesy.

Zajímavostí je, že MachXO3D je jediné FPGA se schopností duálního spouštění a je vybaveno pevným neměnným bezpečnostním enginem certifikovaným Národním institutem pro standardy a technologie (NIST). To umožňuje MachXO3D fungovat jako hardwarové RoT pro automobil. Když je systém zapnutý, MachXO3D nejprve zkontroluje, zda běží ověřený firmware. Poté zkontroluje firmware ostatních zařízení v systému. Pokud je některá ze součástí systému napadena nebo porušena, včetně sebe sama, MachXO3D odmítne podezřelý firmware a znovu nahraje tuto část ověřeným obrazem firmwaru.

Závěr

Moderní automobily jsou vybaveny elektronikou, která vyžaduje mnoho senzorů, elektrických rozhraní a protokolů s odpovídajícími nároky na výpočetní výkon a šířku pásma. Klasické mikrokontrolery nemají dostatek výpočetního výkonu, aby pokryly požadavky pro umělou inteligenci, strojové vidění a bezpečnostní funkce. Pro tyto účely je vhodné využít vlastností FPGA, které pomohou mikrokontrolerům od náročných operací, a tím přidávají do systému určitý stupeň flexibility. V rámci bezpečnosti je možné využít FPGA se schopností duálního spouštění a Immutable Security Engine s certifikací NIST fungovat jako hardwarové RoT. FPGA se spustí jako první a zkontroluje na dalších zařízeních firmware, čímž zabrání cíleným útokům na automobilový systém.

 

Článek vyšel v originále na webu DigiKey.com, autorem je Clive "Max" Maxfield.

Hodnocení článku: