Bakit Kahanga-hanga ang mga FPGA para sa Retro Gaming Emulation


Ang paggamit ng mga FPGA upang kopyahin ang mga klasikong sistema ng laro ng video ay isang kasanayan na nagkakaroon ng singaw sa loob ng ilang taon na ngayon, ngunit paano naiiba ang mga proyektong ito sa karaniwang software emulation? At sulit ba ang matarik na presyo ng pagpasok para sa karamihan ng mga gumagamit?

Ano ang Ibig Sabihin ng FPGA?

Ang FPGA ay kumakatawan sa field-programmable gate array, isang uri ng integrated circuit na maaaring i-reconfigure pagkatapos ng paggawa. Hindi tulad ng isang tradisyunal na computer chip, ang mga FPGA ay gumagamit ng mga programmable logic block at interconnect na maaaring i-reconfigure upang umangkop sa iba't ibang layunin.

Sa esensya, ang isang FPGA ay maaaring i-reprogram upang kumilos bilang anumang uri ng digital circuit. Magagawa ito nang paulit-ulit sa pamamagitan lamang ng pag-load ng bagong configuration sa RAM upang tularan ang ibang uri ng chip. Habang ang mga mas lumang FPGA ay gumamit ng mga circuit diagram, ang mga bago ay gumagamit ng text-based na programming upang ilarawan ang gawi sa halip.

Ang mga chip na ito ay may malawak na iba't ibang mga gamit, partikular sa AI acceleration at machine learning. Nakipagsosyo ang Microsoft sa Intel upang mapahusay ang paghahanap sa Bing gamit ang pamilya ng Arria ng Intel ng mga FPGA. Ginagamit ang mga ito sa mga sistema ng pagpoproseso ng signal at imahe at may natatanging papel sa pagtulong sa mga designer na patunayan ang mga konsepto sa mga unang yugto ng pag-unlad.

Dahil ang mga FPGA ay maaaring i-reprogram upang kumilos bilang iba't ibang uri ng mga circuit nang paulit-ulit, perpekto din ang mga ito para sa video game hardware emulation. Sa halip na magpatakbo ng emulator sa software, epektibong tinutularan ng mga FPGA ang iba't ibang sistema ng video game sa antas ng hardware.

Paano Gumagana ang FPGA System Emulation?

Ang emulation ng FPGA ay nangangailangan ng isang tao na magsulat ng isang core para sa hardware na gagawa ng gawi ng orihinal na hardware. Ang prosesong ito ay kadalasang nagsasangkot ng reverse engineering na orihinal na hardware at maging ang decapping kung saan ang proteksiyon na takip sa isang pinagsama-samang heat spreader ay tinanggal upang ipakita ang die sa loob.

Nagbibigay-daan ito para sa visual na inspeksyon ng integrated circuit upang makatulong sa paggawa ng gumaganang FPGA core. Ang maselang prosesong ito ay kinabibilangan ng paggamit ng mga kemikal tulad ng sulfuric acid at acetone, init, respirator, at maraming pasensya. Pagkatapos ay kinukuha ang mga reference na larawan, at ang mga core ay isinusulat sa isang hardware description language (HDL) na maaaring bigyang-kahulugan ng isang FPGA.

Ang proseso ng pag-aaral tungkol sa, reverse engineering, at pagsulat ng isang FPGA core ay maaaring tumagal ng ilang buwan at maraming dedikasyon. Kahanga-hanga, marami sa mga core na ito ay ginawang available nang libre sa interes ng pangangalaga ng hardware. Karaniwang inilalabas ang mga core sa isang beta na estado upang mapagbuti ang mga ito at maaaring tumagal ang pag-unlad ng mga taon.

Sa kabila ng pagtulad sa orihinal na hardware, ang FPGA emulation ay madaling kapitan ng mga error, tulad ng software emulation. Regular na ina-update ang mga core habang mas maraming pag-aayos at pagbabago ang ipinatupad sa paghahanap ng perpektong hardware emulation.

Ano ang mga Benepisyo ng FPGA?

Ang FPGA hardware emulation ay ang pinakamalapit na bagay sa paglalaro sa isang orihinal na system, kaya nagbibigay ito ng tunay na karanasan. Maaaring kabilang dito ang mga quirk na naroroon sa orihinal na hardware, kung ipagpalagay na ang core ay nagbibigay ng 1:1 na kopya ng orihinal. Ang mga isyu tulad ng latency na maaaring naroroon sa mga software emulator ay nareresolba dahil ang emulation ay nagaganap sa mas mababang antas (hardware).

Maaaring hindi mapagkakatiwalaan ang orihinal na hardware, lalo na habang tumatanda ito. Ang pagpaparami sa paraan ng pag-uugali ng mga orihinal na circuit sa isang FPGA ay isang paraan ng pagpepreserba ng orihinal na hardware at maaaring i-deploy nang paulit-ulit. Kapag ang mga proyektong ito ay ginawang open source, sinuman ay maaaring makinabang mula sa mga ito basta't pagmamay-ari nila ang kinakailangang FPGA hardware.

Para sa karamihan ng mga tao, mas praktikal na magkaroon ng isang piraso ng hardware na maaaring i-reprogram kaagad. Maaaring magastos ang orihinal na hardware, tumatagal ng espasyo, at maaaring mahirap hanapin sa kaso ng mga bihirang computer at arcade board. Hindi na bumabata ang hardware na ito, at dahil matagal nang tumigil ang produksyon, maaaring mahirap itong ayusin o palitan.

Dahil ang system ay ginagaya sa antas ng hardware, ang mga system ay dapat na makapag-interface sa halos anumang hardware na idinisenyo para sa platform na iyon. Kabilang dito ang mga orihinal na cartridge, peripheral, at accessory na hindi kinakailangang isinasaalang-alang noong isinulat ang core.

Iba ito sa mga software emulator na dapat isaalang-alang ang iba't ibang device na gustong gamitin ng operator (tulad ng light gun, halimbawa).

Mister: FPGA Hardware Emulation para sa Tahanan

Ang MiSTer FPGA ay isang open-source na proyekto ng FPGA na nakatuon sa emulation at preserbasyon ng mga console, home computer, at arcade machine. Ito ang pinakamatagumpay na proyekto sa uri nito, na may daan-daang mga core na magagamit at nasa aktibong pagbuo.

Ang tanging kinakailangan na bahagi para magpatakbo ng MiSTer FPGA ay ang DE10-Nano, isang maliit na Raspberry Pi-like device na naglalaman ng Cyclone V system-on-chip. Maaaring palawakin ang board gamit ang karagdagang RAM, USB hub, at input/output expansion na nagdaragdag ng functionality tulad ng VGA output, SCART output, o JAMMA output para sa mga arcade cabinet.

Upang makapagsimula, kakailanganin mo ng DE10-Nano, isang case, at ilang pagpapalamig. Para sa mas advanced na pagtulad, kinakailangan ang pagpapalawak ng RAM. Maaari mong palawakin ang iyong MiSTer FPGA setup upang umangkop sa iyong layunin gamit ang mga add-on na module mula sa mga reseller tulad ng MiSTer Addons o Ultimate MiSTer. Kakailanganin mong i-set up ang iyong SD card gamit ang pinakabagong bersyon ng MiSTer.

Ang proseso ay higit na kasangkot kaysa sa paggamit ng tradisyonal na mga emulator ngunit nangangailangan pa rin ng mga file ng data at ROM tulad ng isang software emulator. Kung mahilig ka sa isang karanasan na maihahambing sa orihinal na hardware, walang tatalo sa MiSTer. Para sa iba, malaking gastos para magawa ang isang bagay na maaaring gawin nang libre sa pamamagitan ng software emulation.

Analogue Pocket: FPGA Hardware Emulation on the Go

Ang Analogue Pocket ay isang multi-system portable handheld na gumagamit ng FPGA emulation para mag-interface sa orihinal na Game Boy, Game Boy Color, at Game Boy Advance na mga cartridge. May mga add-on na cartridge adapter para sa Game Gear, Neo Geo Pocket, Atari Lynx, at TurboGrafx-16 system din.

Sinusuportahan ng system ang mga modernong pag-unlad tulad ng kakayahang suspindihin ang gameplay sa pamamagitan ng pagpapatulog sa console. Ang Pocket ay may magandang display na muling lumilikha ng mga katangian tulad ng pixel grid pattern at LCD backlight effect. Maaari rin itong ikonekta sa isang dock (ibinebenta nang hiwalay) upang i-play sa isang TV sa pamamagitan ng HDMI.

Sa $219.99, ito ay isang magandang handheld na makakaakit sa sinumang may malusog na koleksyon ng mga orihinal na cartridge. Walang kakayahang mag-load ng mga ROM mula sa software, ngunit ang Analogue Pocket ay tugma sa anumang flashcart na gumagana sa orihinal na hardware.

Ang Mga Kakulangan ng mga FPGA para sa Retro Gaming

Ang pinakamalaking disbentaha sa paggamit ng mga FPGA para sa paglalaro ng mga retro na laro ay ang presyo. Ang mga modernong software emulator ay tumatakbo sa halos anumang device, mula sa mga lumang computer hanggang sa mga smartphone. Karamihan ay libre at marami ang ganap na open-source na mga proyekto. Ang ilan ay sumailalim sa mga dekada ng pag-unlad at lubos na na-configure.

Ang MiSTer FPGA at Analogue Pocket ay mamahaling libangan na pasukin. Ang proyekto ng MiSTer, sa partikular, ay madaling nagkakahalaga ng pataas ng $500 na may sapat na mga add-on, at habang ito ay mahusay na halaga kumpara sa isang arcade board o bihirang computer sa bahay, ito ay isang mahirap na ibenta para sa sinumang hindi naghahanap ng pixel- perpektong pagtulad.

Ang pagkakaroon ay isa ring alalahanin. Sa oras ng pagsulat noong Pebrero 2022, ang DE-10 Nano ay nabili sa lahat ng dako at ang Analogue ay may isang taon na waitlist para sa susunod na batch ng Pocket consoles. Mas pinalala ang mga bagay dahil sa kakulangan sa pandaigdigang semiconductor at mga scalper na naniningil ng napakataas na presyo sa mga website ng reseller.

Ang software emulation at modernong hardware ay umunlad sa isang antas kung saan hindi mapapansin ng maraming kaswal na gamer ang pagkakaiba sa pagitan ng isang software emulator at orihinal na hardware. Ang mga proyekto ng FPGA tulad ng MiSTer at ang Pocket ay nakatuon sa mga mahilig. Ang presyo at kakayahang magamit ay dapat na mapabuti sa paglipas ng panahon, kaya ang hinaharap ng FPGA hardware-level emulation ay napakaliwanag.

Iba Pang Mga Paraan ng Pagtulad sa Mga Klasiko

May mga mas mura at mas madaling paraan ng pagkuha sa pagtulad sa ngayon. Malaki ang posibilidad na ang device na iyong ginagamit para basahin ito ay maaaring magpatakbo ng multi-system emulator tulad ng RetroArch.

Ang isa sa mga pinakamahuhusay na home emulator machine sa ngayon ay ang Xbox Series S (o Series X), na medyo madaling mahanap at ginagamit para magpatakbo ng malaking bilang ng mga RetroArch core. Kung naghahanap ka ng handheld, tingnan na lang ang pinakabagong Linux at Android-powered portable emulator.