The Graphic Accelerator Guide

The Transfer Of Data Between Video Chipset To Video RAM And From Video RAM To The RAM DAC

I have been taking these two steps together because here lies the key for the performance of a video card as long as you exclude special chipset features. The big problem of a video card is that the poor video memory lies in between two very busy devices and has to serve both of them all the time. Each time the screen has to change the chipsets has to alter the video memory (and it changes continuously, e.g. mouse pointer, cursor blinking, etc.). Also the RAM DAC has to read out the video memory continuously, to maintain the screen. You can see, the video memory is caught in between them and here all these smart ideas like using VRAM, WRAM, MDRAM, SGRAM, EDO RAM, or increasing the video bus size like 32 bit, 64 bit and now 128 bit come in.

The higher the screen resolution and the higher the colour resolution, the more data has to be transferred from the video chipset to the video memory and the faster the data has to be read by the RAM DAC to be sent to the monitor. You can see that the video memory has to be accessed all the time by the chipset and the RAM DAC. Normal dynamic RAM can only be accessed at a max. frequency, so after the video chipset finished accessing (r/w) the video memory, the RAM DAC has to wait until it's allowed to read and vice versa.

The Video Card Manufacturers found 3 different ways to fight that problem:

  1. Here comes the idea in, to make the video RAM dual ported . This means, that the video chipset reads or writes from/to the video memory via one port, but the RAM DAC reads out the video memory through an independent second port. The video chipset doesn't have to wait for the RAM DAC anymore and the RAM DAC doesn't have to wait for the video chipset anymore. This kind of video memory is called VRAM . It's obviously more complicated by having double the ports and therefore more expensive to produce. That's the simple reason why VRAM cards are more expensive and also faster. The WRAM used by Matrox and a few other cards is also dual ported, but organised somehow smarter so that it's faster than VRAM but also 20% cheaper to produce. If you should wonder why typically cards which offer a high refresh rate and high colour depth have these two kinds of memory, you should consider the following. A higher refresh rate means that the RAM DAC feeds the monitor with a complete screen picture more often than at a lower refresh rate. Therefore the RAM DAC has to read out the video memory more often. This only can be achieved with either VRAM/WRAM, by accessing the video memory via the second port, or by a considerable decrease of video performance of DRAM/EDO cards. If you don't believe it, just run your favourite video benchmark at a low and then at a high refresh rate - you'll see a considerable difference if you've got a DRAM/EDO card. The same is valid for a higher colour depth. At a 8 bit colour resolution (=256 colours) a 1024x768 screen needs 786,432 Bytes to be read by the RAM DAC to send a complete screen picture to the monitor. At 24 bit colour resolution (16,777,216 colours) the same screen needs 2,359,296 Bytes to be read by the RAM DAC - and this takes more time. This btw is also the reason why you often can't have the same high refresh rate at true colour as you had at low colour in cheaper cards.
  2. The other way to fight this problem is to increase the video memory bus size . Years back everybody was amazed by the new 32 bit video cards. These cards had a 32 bit data path between video chipset, video memory and RAM DAC. With 32 bit data path you can transfer 4 Bytes in one go. Later there came the 64 bit video cards = 8 Byte in one go, which are the standard at present and only recently some new chipsets were born, to have a 128 bit data path = 16 Byte in one go. It's easy to see, that video cards with both (VRAM/WRAM & wide data path) will be the best performers, but with a really wide data path you could get around VRAM/WRAM. Now by getting completely excited about these wide data paths we shouldn't forget one very important thing: a normal 8x1Mbit memory chip, as used on most video cards has a data bus of 32 bits !!! Therefore even a 128 bit chipset can access this memory chip only 32 bit wide !!! This is the reason why all 64 bit video cards are a lot slower if only fitted with 1 MB of video RAM ! Don't get a 64 bit video card with less than 2 MB !!!! Chipsets with 128 bit data path usually need at least 4 MB local memory, otherwise their performance is cut in half. The NVidia Riva chipset e.g. is able to talk to only 2 MB as well, via a 64 bit data path. Riva cards with only 2 MB are therefore castrated. However, due to the architecture of the card you won't use 128 bit data path even if you upgrade to 4 MB, because the data path just stays the same. This is probably the case in many video cards, so be careful not getting a 1 MB 64 bit card or a 2 MB 128 bit card!
  3. The third and to us maybe most obvious way to get the video RAM accessed faster is to simply increase the clock speed of the video chipset/video RAM/RAM DAC . Years back the video chipsets ran at clock speeds high above the motherboard memory bus speeds already. SGRAM is nowadys running at 100 MHz clock and some graphci chip manufacturers are already talking of 125 or even 133 MHz video RAM clock using 7 ns SGRAM. SGRAM is nothing but a special graphics version of SDRAM (synchronous DRAM) , so we know this is able to run at clock speeds up to 133 MHz.

Summarizing all these performance aspects, we learn that for optimal performance we should have an AGP or at least PCI system with the latest chipset and 33 MHz PCI bus speed, a video card with a high performance chip and either SGRAM or WRAM, a wide data path or a high clock frequency of the video chipset or best all these three things together!