Today’s software is increasing in graphics intensity. Even “mundane” business software uses icons, charts, animations, etc. When you add 3D games and educational software to the equation, one can see that there is a crunch in bandwidth for graphical information. With newer software and games getting much more graphics intensive, the PCI bus has been maxed out. In fact, the PCI bus, once considered very fast, can now be considered a bottleneck.
Intel knew this. In response, they designed the Accelerated Graphics Port, or AGP. Intel defines AGP as a “high performance, component level interconnect targeted at 3D graphical display applications and is based on a set of performance extensions or enhancements to PCI.” In short, AGP uses the main PC memory to hold 3D images. In effect, this gives the AGP video card an unlimited amount of video memory. To speed up the data transfer, Intel designed the port as a direct path to the PC’s main memory. In fact, while AGP is often referred to as a “bus” (I do it, too), it technically is not. AGP is really a point-to-point connection between the graphics card and the system memory and CPU. There is nothing else on the connection, so it really isn’t a bus.
AGP sounds groundbreaking, and it is, no doubt, the latest craze in the need for graphical speed. In fact, today, AGP is an afterthought because even the cheaper systems are using it. One reason it is faster than PCI is that, while PCI runs at 33MHz, the AGP bus runs much faster. A 4X AGP bus runs at 4 times 33MHz, or 133MHz! Also, a normally clocked PCI bus can achieve a throughput of 132MB/s. Yes, this is fast, but when compared to the throughputs of 3D games, one finds that it is nowhere near enough. AGP, running in 2x mode (2 x 33 = 66MHz), can achieve a throughput of 528MB/s! AGP pulls this off by constantly transferring data on both the rises and falls of the 66MHz clock cycle. PCI is running at half this clock cycle and only transfers on one side of the clock cycle. Also, AGP makes use of sideband transfers and pipelining so it can constantly transfer data without depending on other components in the PC.
The pipelining ability of the AGP bus is a key point that explains why it provides a performance advantage. Since AGP pipelines operations it can process quicker and more efficiently than PCI bus can. AGP uses a special organization process for all pending and processing requests. In effect, the bus can process one instruction while still recieving the next instructions. This allows much more to be accomplished in a shorter amount of time.
To give you a bit of an idea how the AGP bus differs from PCI, look at the diagram to the right. The diagram shows the typical bus layout of the modern PC. You can see that the PCI bus is connected to the primary frontside bus via a bus bridge. The bus bridge does the translation from the main bus to the PCI bus. AGP, on the other hand, gets rid of this via and is attached directly to the primary system bus. There is no bus bridge to go through, it operates at full speed, and it has a direct line into the memory controller.
One can easily see why the need for a new graphical interface is needed. While PCI served us well, and still continues to do so, it is bogged down by the demand of full screen 3D graphics. It works great for 2D business software and most games, but intense 3D challenges the bandwidth limitations. For true 3D, there is much information that must be transferred for a single image.
AGP, as stated above, uses the main PC memory to store all 3D information, including textures and the Z-buffer. This rids us of a prime problem of PCI video. Textures add reality to what we see on screen. The Z-buffer creates an illusion of depth. Both of these take up loads of memory, and they use the same chunk of memory. Therefore, manufacturers were forced to choose between textures or the z-buffer. Often, they had to design software that was weak in both areas in order to deal with the PCI bus. With AGP, this restriction is gone.
To create lifelike 3D images, the CPU must perform intensive 3D calculations. The graphics controller processes the texture data and bitmaps. In many cases, the controller must read elements from 7 or 8 different textures and average them into a single pixel on the screen. When this calculation is performed, the pixel must be stored in the memory buffer. Because these textures are so large, they cannot be stored on the video card’s buffer. With AGP, they instead are stored in the main system memory. Because of this, it is recommended that you have a large amount of system memory in your machine. This should be no problem due to the low prices of RAM. Intel, no doubt, took this into account when they decided to use your RAM for graphics.
To access the texture data from the main memory, AGP uses a technique called Direct Memory Execute, or DIME. In short, this connects the memory directly to the AGP/PCI chipset. This lets the graphics card access the textures in the main memory, which is limited only by the amount of memory you have in your system. The AGP chipset makes use of a system called GART, or Graphics Address Remapping Table. GART provides a kind of translation method to map system memory. Using GART, the AGP chipset sees the system memory and graphics card memory as one big memory pool. This helps to alleviate the extra overhead of needing to deal with the hard drives for storage and, thus, perform the extra operation of having to move the texture graphic from the hard drive to the system memory. With AGP, it is already in memory.
Like PCI, AGP uses a 32-bit connector. But, there is a difference. The AGP connector has 64 contacts, just like the old MCA adapter. This extra contact provides new roadways for the pipelining and queuing of data requests. Another difference is that AGP uses an extra eight sideband address lines that allows the controller to issue simultaneous commands while also accessing all 32 of the main data pathways. This is called Sideband Addressing, or SBA. All this comes together to give AGP a faster throughput then PCI.
AGP Modes
AGP comes in multiple modes, rated on the multiplier used based on the PCI bus speed. Each mode still runs at the normal 66 MHz AGP bus speed, but data is transferred at different times per clock cycle. For example, a 2X AGP system transfers data twice per clock cycle, whereas a 4X system transfers data four times per clock cycle. The following table outlines the specs for each AGP mode:
Mode | Clock Rate | Transfer Rate |
1x | 66 MHz | 266 MBps |
2x | 133 MHz | 533 MBps |
| 4x | 266 MHz | 1066 MBps |
8x | 533 MHz | 2133 MBps |

Like what you read?
If so, please join over 28,000 people who receive our exclusive weekly newsletter and computer tips, and get FREE COPIES of 5 eBooks we created, as our gift to you for subscribing. Just enter your name and email below:







