NVIDIA NV1 (and NV2)
These days, the NVIDIA DGX Spark has been given to selected people for let them try it. It allows to perform AI inference locally; well the DGX is awesome (really) but what about the origins? Does NVIDIA always had such groundbreaking tools? More or less, let’s see.
NVIDIA NV1 (STG2000)
Manufactured by SGS-Thomson Electronics (formerly STMicroelectronics), was a multimedia PCI card announced in May 1995 and released in November 1995.
It was sold to retail by Diamond as the Diamond Edge 3D, the largest add-in board (AIB) supplier at that time.
Diamond Multimedia logo
STMicroelectronics logo
The chip were the first multimedia accelerator to deliver real-time photo-realistic 3D graphics on the same die; it featured a complete 2D/3D graphics core based upon:
- quadratic forward texture mapping (QTM), from which comes the alias NVIDIA’s Quadratic Processor originates
- VRAM or FPM DRAM memory,
- an integrated 32-channel 350 MIPS (Million Instructions Per Second) playback-only sound card, and
- a Sega Saturn compatible joypad port, yes, gaming stuffs
NVIDIA NV1
die shot of NVIDIA NV1
QTM
The 3D system of the NV1 were built for quadrilaterals (quads), rather that the standard triangles.
Quadrilaterals are not just polygonal shapes; with them, you can, for example, define a sphere using only four quads. I’m not speaking magic, this can be done thanks to the additional five points used to define a curve from each quadrilateral. Making them easier to be handled from a CPU.
Texture mapping is a method for mapping a texture on a 3D model, or more generally, any computer graphics.
Mapping 2D texture onto a 3D model
1) 3D model no textures
2) Same model with textures
VRAM or FPM DRAM
VRAM (Video RAM) and FPM DRAM (Fast Page Mode Dynamic RAM) were both used and sold within the very same card, having the former or the latter were a matter of which was the company who rolled out the specific chip.
The NV1 was the roll-out of NVIDIA, it was shipped with the VRAM; in contrast, the STG2000 was marketed from SGS and shipped with the DRAM module.
Why market two different versions? My assumption is that the VRAM was pricier than the FPM DRAM; so, who seeks for higher performance could opt for the VRAM version, while the DRAM model served general-purpose needs.
However, this is something I couldn’t figure out searching online; so, any ideas or trusted sources will be appreciated.
Sound card
Since Microsoft announced Multimedia PC (MPC) standard, Sound Blaster seemed to be the only sound card that could get close to the MPC compliance
Multimedia PC logo
Sound Blaster logo
The card wanted to be an all-in-one board (AIB) for gamers. The audio experience within a game is quite important, leading NVIDIA to the decision to replace the then widespread Sound Blaster audio cards with their 32-channel 350 MIPS sound card.
They claim that their card “deliver the highest fidelity and realism for today’s interactive multimedia applications […] allows developer to precisely control the relationship of audio playback to 3D graphics, video or other audio systems”. Showing clearly which was their target market.
Sega joypad
The NV1 must had be a omni AIB option to gamers, without the need of additional hardware. Sega planned to use the NV1 inside the Sega Saturn game console, in fact both companies collaborated for the next version of the chip, the NV2 (we’ll talk about it later).
Sega Saturn logo
Sega Saturn console
This highlight the market direction at the time, gaming were already present and it was able to drive and influence a whole company decisions.
Block diagram
This section is not only for geeks. I want to make such material available to people from various backgrounds. If you want to deep (or just curious) about what’s inside, stay with me!
Inside the STG2000 Box
Let’s start, we mentioned that the STG2000 takes care of the graphics, sound and game controls, shifting the burden of manage such aspect of the computer from the CPU to the STG2000.
STG2000 block diagram
It is connected to the PC via the PCI bus, think about it as the “highway” between computer parts, in particular, a 32-lane road with data that moves back and forth.
Within the STG2000 box there is the Host Bus Interface that is like a translator: data coming from the PCI Bus here gets translated, so that other connected components understand information that are arriving.
This interface is connected with a FIFO and a DMA.
The FIFO (First In, First Out) is a waiting line for data, and keeps everything in order by shipping data sequentially as they arrives.
The DMA (Direct Memory Access) is the first piece that allows the card to remove some burden from the CPU, in fact it allows the chip to move data between computer’s memory and chip without bothering the CPU at all. Think of it as a delivery man that knows where to go without asking for directions every time.
Then the core, the NV BUS, this is the super-fast internal highway, it connects all the small “departments” together (i.e. memory, audio, graphics, etc..).
For videos about cats
Three key components stood out:
-
The first one is the VGA Emulation, it is basically a retro-compatibility component. VGA were already an older standard; however, it was taken as a baseline. In mid-1990s has been superseeded by VESA and SVGA (Super VGA). But hey, it was a gamer-oriented card, and gamers love legacy titles.
-
Then we have the Graphics and Video Engine that were the brain behind drawing and video playback, handling 2D graphics, video scaling, and special effects.
-
Then We have the Memory Interface, which stores images and texture right before being shown on screem. It connects to video memory (DRAM).
Displaying stuffs
The DRAM module is a short-term memory for handling graphics, it can store pictures, frames and textures.
Then we have the ASGP (Audio, Sega, Game Port), which is basically a controller that manages signals between gamepads and audio. It’s a traffic cop directing where the sound and controller data go.
Lastly, we have the Palette-DAC (Digital-to-Analog Converter) that turns digital pixel data into analog signals (RGB) for monitors; it connects also to the VESA feature connector for compatibility with the then modern video hardware.
Gamers heaven
Two key components made this a gamer’s dream:
- the Game Port, for old-style joysticks (recall the retro-compatibility)
- the SEGA SATURN™ Game Pads TAA DAAAAAAAA here starts the magic. This was the fanciest part of that time, this chip can connect to Sega Saturn-style controllers; so you could shine during the late-night gaming sessions.
Rumor says that DJ Huang wanted it
For the audio part we had an Audio Engine, which handled recording and sound playback, as well as a mixer for giving a sprinkle of fancy to your music. All this without touching the CPU.
And the CODEC or DAC, which converts digital audio into analog sound for speakers and obviously vice-versa for mic input. In fact, it connects to Line In for external audio, Mic for microphone input and Line Out for speakers or headphones.
Was it the game changer?
Recapping, the NV1 was intended to replace using a single chip:
- 2D graphics card,
- Sound Blaster-compatible audio systems, and
- 15-pin joystick ports
which were the de-facto standard on IBM PC compatible platform until the widespread transition to Microsoft 95 and the later integration of onboard audio electronics.
The quadrilateral curse
However, the compromises were not easy to manage, especially for the choice of using quads.
Standard (rectangular) texture format couldn’t easily map onto complex quadrilateral shapes. Texture mapping often struggle when dealing with quads that aren’t planar (i.e. with all vertices coplanar) or irregular (skewed), resulting in distortions/artifacts due to the non-linear mathematical mapping.
Texture mapping for (left) planar quads and (right) non planar skewed quads.
The market were standardized (as today) around triangles, and also with NVIDIA Nvlip API (which allows to simplify quad programming), developers were reluctant to adopt it. It just wasn’t worth it.
Unlucky fate
NVIDIA doesn’t set its grumpy face, and decided to assign a team of expert developer in the conversion, so to adapt triangle-based games to quadrilateral, but this adaption was not always enough.
When Microsoft released Direct3D (D3D) in June 1996, there was like a glimmer of hope for NVIDIA.
D3D could theoretically allows to wrap triangles as quadratic surfaces for the NV1. But when games for Direct3D started came out, some missing features of the NV1, like z-buffering and poor image quality became evident, showing a minimal compatibility of the D3D-based software for the NV1.
The NV1 has not been successful in the market.
NVIDIA NV2 (the abandoned project)
A partnership between Sega and NVIDIA was born from the porting of Sega console titles over to the PC platform, thanks to the similarity of the 3D rendering architecture of NV1 and Sega Saturn (recall also that NV1 had 2 ports dedicated to Sega Saturn gamepads).
Such partnership made Sega prone to use the next generation of NV1 (i.e. the NV2) within the Sega’s Dreamcast console.
Sega Dreamcast logo
Sega Dreamcast console
The NV2 was based on the predecessor NV1, but with some additional features, like a faster texturing and a fractal image compression.
However, the desire to use their quadratic forward texture mapping technology caused some friction between the two companies. Sega complained that a quadratic 3D game engine were difficult to port over modern 3D graphics hardware which were triangle-based.
Due to the increasing popularity of triangle based graphics hardware (OpenGL and DirectX were already committed on it), NVIDIA abadoned the development the NV2, starting a new architecture: the NV3 a.k.a. Riva 128.
But that’s a story for another post.
Thanks for reaching the end of the post! I’m getting more passionate about parallel programming day by day, so I thought a bit of NVIDIA GPU history might be appreciated; it helps us understand how far we’ve come!
![]()
Gallery
NVIDIA Universe
logo NVIDIA 1993-2006
logo NVIDIA 2006-present
NVIDIA NV3, a.k.a. RIVA 128
NVIDIA NV3, a.k.a. RIVA 128
die shot of NVIDIA NV3
Resources
[1] HandWiki - Engineering:NV1
[2] HandWiki - Engineering:Sega Saturn
[3] HandWiki - Texture mapping
[4] Wikipedia - Diamond Multimedia
[5] Wikipedia - # STMicroelectronics
[6] Wikipedia - Multimedia PC
[7] Wikipedia - Sound Blaster
[8] Electronic Design - Nvidia’s Quadratic Processor: The NV1
[9] Staroceans - NV1
[10] Staroceans - Texture mapping
[11] Staroceans - Die shot
[12] Vintage 3D - Nvidia NV1 Diamonde Edge 3D review
[13] AMD GPU OPEN - Bilinear interpolation on a quadrilateral using Barycentric coordinates
[14] IEEE Computer Society - Nvidia’s Quadratic Processor, the NV1
[15] STG2000 Datasheet
[16] Nvidia Corporation - NVIDIA Press Releases
[17] Nvidia Corporation - NVIDIA NV1 Windows 95 Multimedia Accelerator Rides Wave of Software Support
[18] Nvidia Corporation - Multimedia Accelerator From NVIDIA Corporation Transforms PC Into The Ultimate Multimedia Machine
[19] Nvidia Corporation - Diamond Multimedia Endorses Multimedia Accelerator From NVIDIA Corporation
[20] Nvidia Corporation - NV1 Product Description
[21] Nvidia Corporation - About NVLIB
[22] Nvidia Corporation - Home (1996 - 1997)
[23] Nvidia Corporation - Home (1998)