The Doom-chip "On Ice": designing hardware for a 1993 retro-classic
What would have resembled a console hardware dedicated to our beloved retro-games from the early 90's, such as Doom 1993 and Comanche 1992? I invite you on a journey to answer this question, not using emulation, not using a micro-controller, but designing our own hardware running on an entry-range ice40 UP5K FPGA, using a fully Open Source toolchain.
We'll dive into the rendering technology of the era, which was not polygon based in the traditional sense but rather based on clever tricks akin to ray-casting. We'll see what parts are critical to accelerate and how to achieve that in a limited gate-count (< 5K LUTs), while still reaching 320x240 pixels realtime rendering with full resolution textures.
The result fits entirely into the FPGA and its accompanying SPI-flash chip, and uses a low-cost SPI-screen. This turns your dev boards into a fantasy retro-console.
So buckle up Marty, we're going back to the future to re-invent the GPU!