Retro Gaming & FPGAs
How to Geek | 2022-04-03 17:57:42
FPGA stands for field-programmable gate array, a type of integrated circuit that can be reconfigured after manufacture. Unlike a traditional computer chip, FPGAs use programmable logic blocks and interconnects that can be reconfigured to suit a variety of different purposes. In essence, an FPGA can be reprogrammed to act as any type of digital circuit. This can be done over and over again simply by loading a new configuration into RAM to emulate a different type of chip. While older FPGAs used circuit diagrams, new ones use text-based programming to describe the behavior instead. FPGA emulation requires someone to write a “core” for the hardware that reproduces the behavior of original hardware. This process often involves reverse engineering original hardware and even “decapping” where the protective cover on an integrated heat spreader is removed to reveal the die inside. This allows for visual inspection of the integrated circuit to aid in the production of a working FPGA core. This delicate process involves the use of chemicals like sulfuric acid and acetone, heat, respirators, and a lot of patience. Reference images are then taken, and cores are written in a hardware description language (HDL) that can be interpreted by an FPGA.