The legendary 3dfx Voodoo is back in FPGA form

Alfonso Maruccia

Posts: 2,570   +956
Staff
In context: 3dfx remains a legendary name among gamers and 3D graphics enthusiasts more than two decades after its demise (it was acquired and absorbed into Nvidia in 2000). Resourceful developers and modders continue to experiment with the old technology, either by using original chips or through complex reimplementation efforts.

3dfx Voodoo graphics accelerators are likely to remain a key part of retro modding projects and gaming ventures for years to come. The Voodoo chip is now almost perfectly emulated in several DOS-based emulators, such as DOSBox-X, and PC emulators like PCem and 86Box, while hardware modders continue developing their own custom implementations.

Francisco Ayala Le Brun decided to take a different approach, turning 3dfx Voodoo technology into a new FPGA-based reimplementation.

Le Brun, who serves as CTO at the Dutch company VideowindoW, recently detailed the significant effort required to describe the Voodoo chip in SpinalHDL. SpinalHDL is a hardware description language designed to convert projects into digital models, which can then be realized in "real" hardware by configuring the integrated circuits of a modern field-programmable gate array chip.

As Le Brun explained, the Voodoo 1 is an old card but not a simple chip design. It lacks modern GPU features such as transform-and-lighting hardware or programmable shaders. Its graphics capabilities are fixed in silicon, with circuits handling gradients for Gouraud shading, texture sampling, mipmapping, bilinear and trilinear filtering, alpha clipping, clipping, and much more.

In 3dfx-based graphics, the CPU handles the complex mathematical calculations required to describe a 3D scene, while the Voodoo accelerator's primary role is to render mapped triangles as quickly as possible.

The developer noted that this apparent barebone design "can make the hardware sound simpler than it really is. Even a single triangle may involve interpolated colors, texture sampling, mip level selection, bilinear or trilinear filtering, alpha clipping, depth comparison, clipping, and fog. None of these operations are programmable in the modern sense. They are all baked into the silicon."

3dfx Interactive: Gone But Not Forgotten

Le Brun detailed how he unraveled the complexity hidden within the Voodoo 1 design, recreating control paths, register semantics, and the chip's "deep" pipeline timings in his FPGA implementation. The original 3D accelerator could "slice" a complex rendering job for each pixel across different stages, achieving data throughput that software rendering alone could not match.

Thanks to modern tools such as SpinalHDL and register-transfer-level design techniques, Le Brun was able to encode the Voodoo's architectural principles without losing track of the intricate details. His SpinalVoodoo FPGA implementation is available on GitHub, with only a few features of the original Voodoo chip still missing.

Currently, he does not appear interested in selling FPGA hardware built around the SpinalVoodoo design.

Permalink to story:

 
My first computer was a Hewlett Packard 8570c with a Pentium III 450 MHz, 96 MB SDRAM and a 20GB HDD.

The Voodoo 3 3000 AGP was my first video card. In retrospect I should have aimed for the 3500 TV.

You had to install it into the AGP slot and then change two pins on the motherboard to get it to disable the VGA (ven-dis)

I was playing Quake 2 (my first PC game) in Open GL, Half Life, Soldier of Fortune, etc - on damn dial up.

Those were the Good old days.

I was a "high ping bastard" till I managed to get DSL. A Phone call came in and my entire game was disconnected.

I eventually upgraded to a Geforce MX 400 where I could see the benefit of more VRAM. The console instruments in my flight simulators worked instead of being static.

Now I have a 5090, 64GB DDR5, 12TB SSD and 285k in the worst hardware unaffordability era I've ever seen. $4999 Black Friday.
 
My first computer was a Hewlett Packard 8570c with a Pentium III 450 MHz, 96 MB SDRAM and a 20GB HDD.

The Voodoo 3 3000 AGP was my first video card. In retrospect I should have aimed for the 3500 TV.

You had to install it into the AGP slot and then change two pins on the motherboard to get it to disable the VGA (ven-dis)

I was playing Quake 2 (my first PC game) in Open GL, Half Life, Soldier of Fortune, etc - on damn dial up.

Those were the Good old days.

I was a "high ping bastard" till I managed to get DSL. A Phone call came in and my entire game was disconnected.

I eventually upgraded to a Geforce MX 400 where I could see the benefit of more VRAM. The console instruments in my flight simulators worked instead of being static.

Now I have a 5090, 64GB DDR5, 12TB SSD and 285k in the worst hardware unaffordability era I've ever seen. $4999 Black Friday.

Same, but my first card was the voodoo 2. Playing Unreal Tournament with those fancy graphics was a core memory for me
 
Same, but my first card was the voodoo 2. Playing Unreal Tournament with those fancy graphics was a core memory for me
Oh yes! I lost so much of my late teens and early 20's to UT, and the joy in my face you should have seen when I changed thr GPU renderer to my voodoo2 for Glide....wooooooooow
 
My first computer was a Hewlett Packard 8570c with a Pentium III 450 MHz, 96 MB SDRAM and a 20GB HDD.

The Voodoo 3 3000 AGP was my first video card. In retrospect I should have aimed for the 3500 TV.

You had to install it into the AGP slot and then change two pins on the motherboard to get it to disable the VGA (ven-dis)

I was playing Quake 2 (my first PC game) in Open GL, Half Life, Soldier of Fortune, etc - on damn dial up.

Those were the Good old days.

I was a "high ping bastard" till I managed to get DSL. A Phone call came in and my entire game was disconnected.

I eventually upgraded to a Geforce MX 400 where I could see the benefit of more VRAM. The console instruments in my flight simulators worked instead of being static.

Now I have a 5090, 64GB DDR5, 12TB SSD and 285k in the worst hardware unaffordability era I've ever seen. $4999 Black Friday.

Sorry to hear about your gpu cpu purchase brother we'll pray for you
 
Back