Co jsou FPGA?

click fraud protection

Field Programmable Gate Arrays zní složitě, ale vývojářům otevírají zcela nový svět.

Pokud jste někdy četli o emulaci retro her, možná jste narazili na polovodičový typ nazývaný Field-Programmable Gate Array (FPGA). Jedná se o speciální integrované obvody, které se po vyrobení mohou samy překonfigurovat díky konfigurovatelným logickým blokům (CLB). Jinými slovy, můžete v podstatě přeprogramovat čipovou sadu tak, aby fungovala jako jakýkoli jiný typ digitálního obvodu, který má mnoho aplikací v AI, návrhu čipové sady a dalších oblastech.

FPGA mají mnoho případů použití a zařízení jako Analogue Pocket je využívají k podpoře různých kapesních zařízení. Microsoft však také používá FPGA k napájení Bingu, protože umožňuje společnosti rychle je přeprogramovat tak, aby podporovaly nové algoritmy při jejich vývoji.

FPGA vs tradiční CPU: Jaký je rozdíl?

Na rozdíl od standardní čipové sady — the Snapdragon 8 Gen 2, například — FPGA není navrženo pro přeprogramování v terénu. Je to systém na čipu (SoC) složený z několika částí, včetně GPU, NPU a CPU. Jakmile bude odesláno, obdrží spotřebitelé a podniky.

FPGA jsou však zamýšleny jako tvárné, takže uživatel může měnit části čipu, aniž by to znamenalo další náklady nebo rizika. V rychle se rozvíjejících odvětvích, jako jsou automobily s vlastním pohonem, lze kdykoli zavést nové předpisy a normy pro jakýkoli aspekt zařízení. Použití FPGA může umožnit aktualizaci OTA pro přeprogramování čipu tak, aby podporoval nové standardy.

Jeden velký rozdíl mezi FPGA a tradičními CPU je v tom, že jsou navrženy tak, aby zpracovávaly data paralelně s kompromisem mnohem nižší rychlosti hodin. Například FPGA s 10 kanály pro zpracování dat může provádět operace násobení na dvou číslech pro každý kanál, násobením 20 čísel za cyklus. Tradiční CPU může násobit dvě čísla za cyklus, na jádro a v sekvenčním pořadí.

Jak fungují FPGA pro emulaci?

FPGA se často používají pro emulaci hardwaru a zajímavou součástí procesu návrhu čipové sady je použití FPGA k emulaci různých částí SoC při testování. Návrháři čipových sad mohou použít více FPGA k prototypu ASIC (Application-Specific Integrated Circuit). Hardwarový popisný jazyk (HDL) se používá k vytvoření návrhu hardwaru a tento jazyk říká FPGA, jak se má zařídit. V případě Analogue Pocket jsou tyto návrhy distribuovány ve formě "jádrů" obvykle napsaných ve Verilog a uživatelé si mohou stáhnout jádro pro přípravu handheldu pro konkrétní konzole.

Analogue Pocket může například číst hry Game Boy přímo ve slotu pro cartridge a hrát je, jako by to byla původní konzole. Nejen to, ale adaptéry kazet přidávají další podporu pro další zařízení, jako je Game Gear, Atari Lynx a další. To je možné pouze díky přeprogramovatelné povaze FPGA, které využívá emulaci hardwaru namísto emulace softwaru, aby bylo zajištěno, že hry budou hratelné. MiSTer (který používá desku DE-10 Nano FPGA jako základ a vyžaduje další moduly navrchu) je podobný v tom, že jej lze použít k emulaci konzol jako SNES, Sega Genesis a dokonce i Hrací kostka. Hardwarová emulace je obecně přesnější než softwarová a zároveň nabízí výkonnostní výhody.

Zatímco hardware stárne a může se časem stát nespolehlivým, FPGA lze jednoduše přeprogramovat tak, aby emulovala stejný hardware.

To samozřejmě neznamená, že jádra jsou dokonalou HDL interpretací čipsetu jedna k jedné. Jsou docela blízko, ale v průběhu času se na jádrech provádějí opravy a vylepšení, aby se odstranily problémy, které lze identifikovat při běžném používání. Tato jádra jsou vyrobena reverzním inženýrstvím čipových sad, které jsou součástí těchto zařízení, a vyžadují mapování každé jednotlivé součásti na základní desce. U vlastních proprietárních čipsetů je to ještě obtížnější, protože vývojáři to často potřebují vidět "nezavíčkovaný" čip s mikroskopem, abyste viděli, co se přesně děje uvnitř čipu, a replikovali to.

Proto jsou FPGA také důležité pro zachování hardwaru. Zatímco hardware stárne a může se časem stát nespolehlivým, FPGA lze jednoduše přeprogramovat tak, aby emulovala stejný hardware. Čip v sobě přeuspořádá svou vlastní fyzickou logiku tak, aby odpovídala jakémukoli jádru, které má. Ekosystém openFPGA je navržen tak, aby pomáhal při zachování tohoto hardwaru.

Kromě toho získáte další výhodu hraní těchto her legitimním způsobem, ale na celkově lepším hardwaru. Můžete si vyzvednout Analogue Pocket za 220 $ a hrát hry Game Boy stejně jako v minulosti, ale s vyšší kvalitou sestavení, lepší obrazovkou a dokonce podporou doku.

Nevýhody FPGA

DE-10 Nano pro sestavení MiSTer FPGA

Existuje však několik nevýhod. Pro začátek zabírají mnohem více místa než tradiční CPU a také jsou výrazně dražší na výrobu. Zařízení jako Analogue Pocket a MiSTer FPGA stojí spoustu peněz, přičemž to druhé vás vyjde na více než 500 $, pokud si také vyberete několik doplňků. Většina lidí by raději emulovala hry na svých chytrých telefonech nebo počítačích a nestará se o dokonalou přesnost pixelů, kterou poskytuje emulace na úrovni hardwaru.

FPGA jsou samozřejmě také poněkud v plenkách souvisejících se spotřebiteli, přičemž jejich popularita stoupá až v posledních letech. Ve skutečnosti existují tak dlouho v případech profesionálního použití vědci, architekty čipových sad, AI a podobně, ale teprve v posledních letech se objevila spotřebitelská zařízení, která jsou životaschopná pro běžné použití nebo pro nadšence.

Pro většinu lidí, kteří se chtějí dostat do emulace, je pohodlí vyhrazeného zařízení, které zaručuje a věrný originální zážitek je lákavý, ale není to něco, co by každý potřeboval nebo o co by se staral. Osobně, pokud si chci zahrát hru jako Super Mario Bros, rád si ji zahraji na svém telefonu na cestách. Nepotřebuji k tomu vyhrazené zařízení, ale chápu přitažlivost takového zařízení.