Mik azok az FPGA-k?

A mezőben programozható kaputömbök bonyolultnak hangzanak, de egy teljesen új világot nyitnak a fejlesztők számára.

Ha valaha is olvasott a retro-játék emulációról, találkozhatott egy félvezető típussal, amelyet Field-Programmable Gate Array-nek (FPGA) hívnak. Ezek speciális integrált áramkörök, amelyek gyártásuk után újrakonfigurálhatók a konfigurálható logikai blokkok (CLB) révén. Más szóval, alapvetően átprogramozhatja a lapkakészletet, hogy úgy működjön, mint bármely más típusú digitális áramkör, amely többféle alkalmazással rendelkezik az AI-ban, a lapkakészlet-tervezésben és más területeken.

Az FPGA-knak számos felhasználási módja van, és az olyan eszközök, mint az Analogue Pocket, különböző kézi eszközök támogatására használják őket. A Microsoft azonban FPGA-kat is használ a Bing működtetésére, mivel ez lehetővé teszi a vállalat számára, hogy gyorsan átprogramozza azokat, hogy támogassák az új algoritmusokat fejlesztésük során.

FPGA vs hagyományos CPU: Mi a különbség?

A szabványos lapkakészlettel ellentétben - a

Snapdragon 8 Gen 2például – az FPGA-t nem úgy tervezték, hogy terepen újraprogramozzák. Ez egy System on Chip (SoC), amely több részből áll, beleértve a GPU-t, az NPU-t és a CPU-t. A kiszállítás után ezt kapják meg a fogyasztók és a vállalkozások.

Az FPGA-k azonban alakíthatóak, így a felhasználó további költségek vagy kockázatok nélkül módosíthatja a chip egyes részeit. A gyorsan fejlődő iparágakban, mint például az önvezető autók, bármikor új előírások és szabványok vezethetők be az eszköz bármely aspektusára vonatkozóan. Az FPGA használata lehetővé teheti az OTA frissítést, amely átprogramozza a chipet az új szabványok támogatására.

Az egyik nagy különbség az FPGA-k és a hagyományos CPU-k között az, hogy úgy tervezték, hogy párhuzamosan dolgozzák fel az adatokat sokkal alacsonyabb órajel kompromisszum mellett. Például egy FPGA 10 adatfeldolgozási folyamattal képes szorzási műveleteket végrehajtani két számon minden egyes folyamatban, ciklusonként 20 számot megszorozva. A hagyományos CPU ciklusonként, magonként és szekvenciális sorrendben két számot tud megszorozni.

Hogyan működnek az FPGA-k emulációhoz?

Az FPGA-kat gyakran használják hardveres emulációra, és a lapkakészlet tervezési folyamatának egy érdekes része az FPGA-k használata az SoC különböző részeinek emulálására a tesztelés során. A lapkakészlet-tervezők több FPGA-t is használhatnak egy alkalmazás-specifikus integrált áramkör (ASIC) prototípusához. Hardverleíró nyelvet (HDL) használnak a hardverterv létrehozásához, és ez a nyelv mondja meg az FPGA-nak, hogyan rendezze el magát. Az Analogue Pocket esetében ezek a tervek általában Verilog nyelven írt "magok" formájában kerülnek terjesztésre, és a felhasználók letölthetnek egy magot, hogy felkészítsék a kézi számítógépet bizonyos konzolokra.

Például az Analogue Pocket képes a Game Boy játékokat közvetlenül a kazettanyílásában olvasni, és úgy játszani, mintha az eredeti konzol lenne. Nem csak ez, hanem a patronadapterek további támogatást nyújtanak más eszközökhöz is, mint például a Game Gear, az Atari Lynx és még sok más. Ez csak az FPGA újraprogramozhatósága miatt lehetséges, amely hardveres emulációt használ a szoftveres emuláció helyett, hogy biztosítsa a játékok játszhatóságát. Egy MiSTer (amely egy DE-10 Nano FPGA kártyát használ alapként, és további modulokat igényel a tetején) hasonló abban, hogy használható olyan konzolok emulálására, mint a SNES, a Sega Genesis és még a GameCube. A hardveres emuláció általában pontosabb, mint a szoftveres emuláció, miközben teljesítményelőnyöket is kínál.

Míg a hardver öregszik, és idővel megbízhatatlanná válhat, az FPGA-k egyszerűen átprogramozhatók, hogy ugyanazt a hardverélményt emulálják.

Természetesen ez nem jelenti azt, hogy a magok egy chipkészlet tökéletes egy-egy HDL-értelmezése. Meglehetősen közel állnak egymáshoz, de idővel javításokat és fejlesztéseket végeznek a magokon, hogy kijavítsák a normál használat során észlelhető problémákat. Ezek a magok az ezekbe az eszközökbe kerülő lapkakészletek visszafejtésével készülnek, és az alaplap minden egyes alkatrészét fel kell térképezni. Az egyedi, szabadalmaztatott lapkakészletekben ez még nehezebbé válik, a fejlesztőknek gyakran látniuk kell egy "lefedetlen" chip mikroszkóppal, hogy megnézze, mi történik pontosan a chip belsejében, és megismételheti azt.

Ezért fontosak az FPGA-k a hardver megőrzése szempontjából is. Míg a hardver öregszik, és idővel megbízhatatlanná válhat, az FPGA-k egyszerűen átprogramozhatók, hogy ugyanazt a hardverélményt emulálják. A chip átrendezi saját fizikai logikáját magában, hogy megfeleljen az adott magnak. Az openFPGA ökoszisztémát úgy tervezték, hogy segítse a hardver megőrzését.

Ezen felül további előnyhöz jut, ha ezeket a játékokat legitim módon, de jobb hardveren játszhatja. Felvehet egy analóg zsebet 220 dollárért, és ugyanúgy játszhat Game Boy játékokkal, mint a múltban, de jobb felépítési minőséggel, jobb képernyővel és még dokkoló támogatással is.

Az FPGA-k hátrányai

DE-10 Nano a MiSTer FPGA buildhez

Van azonban néhány hátránya. Kezdetben sokkal több helyet foglalnak el, mint a hagyományos CPU-k, és az előállításuk is lényegesen drágább. Az olyan eszközök, mint az Analogue Pocket és a MiSTer FPGA, sok pénzbe kerülnek, utóbbival több mint 500 dollárt fizet, ha néhány kiegészítőt is felvesz. A legtöbb ember szívesebben emulálja a játékokat okostelefonján vagy számítógépén, és nem törődik azzal a pixel-tökéletes pontossággal, amelyet a hardverszintű emuláció biztosít.

Természetesen az FPGA-k is némileg gyerekcipőben járnak fogyasztói vonatkozásban, népszerűségük csak az elmúlt években rúgott fel. Valójában olyan régóta léteznek professzionális felhasználási esetekben tudósok, chipset-építészek, mesterséges intelligencia és hasonlók körében, de csak az utóbbi években jelentek meg a fogyasztói eszközök, és életképesek a hétköznapi vagy lelkesebb felhasználásra.

A legtöbb ember számára, aki emulációval szeretne foglalkozni, egy dedikált eszköz kényelme, amely garantálja a az eredetihez igazodó élmény csábító, de ez nem olyan, amire mindenkinek szüksége van, vagy nem is törődik vele. Személy szerint, ha olyan játékkal szeretnék játszani, mint a Super Mario Bros, szívesen játszom a telefonomon útközben. Nincs szükségem hozzá külön eszközre, de megértem, milyen vonzerőt jelent, ha van ilyen.