- Accelerated Graphics Port
Infobox Computer Hardware Bus
name = AGP
fullname = Accelerated Graphics Port
caption = An AGP slot (having maroon color) and two PCI slots
invent-date = 1997
super-date = 2004
width = 32
style = p
numdev = 1 device/slot
speed = up to 2133 MB/sThe Accelerated Graphics Port (also called Advanced Graphics Port, often shortened to AGP) is a high-speed point-to-point channel for attaching a to a
computer's motherboard, primarily to assist in the acceleration of 3D computer graphics. Since 2004, AGP is being progressively phased out in favor of PCI Express. However, as of mid 2008 new AGP cards and motherboards are still available for purchase, though OEM driver support is minimal. [ [http://news.softpedia.com/news/AGP-Almost-at-the-End-of-the-Road-87316.shtml AGP almost at the end, Softpedia] ]
Advantages over PCI
As computers became increasingly graphically oriented, successive generations of graphics adapters began to push the limits of PCI, a bus with shared bandwidth. This led to the development of AGP, a "bus" dedicated to graphics adapters.
For the needs of modern graphics adapters, AGP is superior to PCI because it provides a dedicated pathway between the slot and the processor rather than sharing the PCI bus, allowing for faster communication. AGP also uses sideband addressing, meaning that the address and
data buses are separated so the entire packet does not need to be read to get addressing information. This is done by adding eight extra 8-bit buses which allow the graphics controller to issue new AGP requests and commands at the same time with other AGP data flowing via the main 32 address/data (AD) lines. This results in improved overall AGP data throughput.
In addition, to load a texture, a PCI graphics card must copy it from the system's RAM into the card's
framebuffer, whereas an AGP card is capable of reading textures directly from system RAM using the Graphics Address Remapping Table(GART). GART reapportions main memory as needed for texture storage, allowing the graphics card to access them directly. [ [http://www.sysopt.com/features/mboard/article.php/3549951 What is AGP?] , SysOpt, September 19, 2003.] The maximum amount of system memory available to AGP is defined as the AGP aperture.
The two main reasons graphics cards with the PCI interface are still produced are that, first, they can be used in nearly any PC; because while some motherboards with built-in graphics adapters lack an AGP slot, few, if any, modern desktop PCs lack PCI slots. Secondly, a user with an appropriate
operating systemcan use several PCI graphics cards (or several PCI graphics cards in combination with one AGP card) simultaneously — to give many different video outputs (for the use of many screens). This is almost impossible with AGP 1.0 and AGP 2.0 cards, because they do not support more than one AGP Master (video card) per AGP Target (chipset interface). AGP 3.0 does support more than one AGP Master per AGP Target, but nonetheless few PC motherboards are equipped with more than one AGP slot. Some server-class computers support having multiple AGP slots in a single system: the HP AlphaServerGS1280 has up to 64 AGP slots [ [http://h18002.www1.hp.com/alphaserver/download/alphaserver_gs1280_ds_0704.pdf HP AlphaServer GS1280 system Data sheet] ] , the AlphaServer ES80 up to 4 AGP slots, and the AlphaServer ES47 up to 2 AGP slots.
The AGP slot first appeared on
x86compatible system boards based on Socket 7 Pentiumand Slot 1 Pentium IIprocessors. Intel introduced AGP support with the i 440LX Slot 1chipset in mid-October 1997 and a flood of products followed from all the major system board vendors. [http://www.intel.com/design/chipsets/datashts/290564.htm Intel 440LX AGPset] , Intel, accessed October 18, 2007.]
The first Socket 7 chipsets to support AGP were the VIA Apollo VP3, SiS 5591/5592, and the ALI Aladdin V. Intel never released an AGP-equipped Socket 7 chipset. FIC demonstrated the first Socket 7 AGP system board in November 1997 as the "FIC PA-2012" based on the VIA Apollo VP3 chipset, followed very quickly by the "EPoX P55-VP3" also based on the VIA VP3 chipset which was first to market. [Lal Shimpi, Anand. [http://www.anandtech.com/showdoc.aspx?i=155&p=1 Chipset Guide (Socket 7)] , Anandtech, August 1, 1997.]
Early video chipsets featuring AGP support included the Rendition Vérité V2200,
3dfxVoodoo Banshee, Nvidia RIVA 128, 3DlabsPERMEDIA 2, Intel i740, ATI Rage series, MatroxMillennium II, and S3 ViRGE GX/2. Some early AGP boards used graphics processors built around PCI and were simply bridged to AGP. This resulted in the cards benefiting little from the new bus, with the only improvement used being the 66 MHz bus clock, with its resulting doubled bandwidth over PCI, and bus exclusivity. Examples of such cards were the Voodoo Banshee, Vérité V2200, Millennium II, and S3 ViRGE GX/2. Intel's i740 was explicitly designed to exploit the new AGP feature set. In fact it was designed to texture only from AGP memory, making PCI versions of the board difficult to implement (local board RAM had to emulate AGP memory.)
Microsoft first introduced AGP support into "
Windows 95OEM Service Release 2" (OSR2 version 1111 or 950B) via the "USB SUPPLEMENT to OSR2" patch. [ [http://www.computerhope.com/issues/ch000145.htm Which version of Windows 95 supports AGP?] , ComputerHope, accessed October 18, 2007.] After applying the patch the Windows 95 system became "Windows 95 version 4.00.950 B". The first Windows NT-based operating system to receive AGP support was Windows NT 4.0with service pack3, introduced in 1997. Linuxsupport for AGP enhanced fast data transfers was first added in 1999 with the implementation of the AGPgartkernel module.
Versions of AGP
Intel released the first version of AGP; appropriately titled “AGP specification 1.0,” in 1997. [ [http://www.playtool.com/pages/agpcompat/agp10.pdf Accelerated Graphics Port Interface Specification Rev. 1.0] , Intel, accessed October 18, 2007.] It included both the 1x and 2x speeds. Specification 2.0 documented AGP 4X and 3.0 documented 8X. [ [http://www.smartcomputing.com/editorial/article.asp?article=articles/archive/g0801/35x01/04g01.asp AGP 4X: Faster Data Transfer & Better-Quality Images] , Smart Computing, January 2000.] [ [http://download.intel.com/support/motherboards/desktop/sb/agp30.pdf AGP 3.0 Specification] , Intel, accessed October 18, 2007.] Available versions include:
;AGP 1x: A
32-bitchannel operating at 66 MHz resulting in a maximum data rate of 266 megabytes per second (MB/s), doubled from the 133 MB/s transfer rate of PCI bus 33 MHz / 32-bit; 3.3 V signaling.;AGP 2x: A 32-bit channel operating at 66 MHz double pumpedto an effective 133 MHz resulting in a maximum data rate of 533 MB/s; signaling voltages the same as AGP 1x;;AGP 4x: A 32-bit channel operating at 66 MHz quad pumped to an effective 266 MHz resulting in a maximum data rate of 1066 MB/s (1 GB/s); 1.5 V signaling;;AGP 8x: A 32-bit channel operating at 66 MHz, strobing eight times per clock, delivering an effective 533 MHz resulting in a maximum data rate of 2133 MB/s (2 GB/s); 0.8 V signaling.
There are various physical interfaces (i.e. shape of slots), as explained in the Compatibility section below.
AGP version 3.5 is only publicly mentioned by Microsoft under "Universal Accelerated Graphics Port (UAGP)", which specifies mandatory supports of extra registers once marked optional under AGP 3.0. Upgraded registers include PCISTS, CAPPTR, NCAPID, AGPSTAT, AGPCMD, NISTAT, NICMD. New required registers include APBASELO, APBASEHI, AGPCTRL, APSIZE, NEPG, GARTLO, GARTHI.
A number of non-standard variations of the AGP interface have been produced by manufacturers.
;64-bit AGP: A
64-bitchannel. Used in high-end professional graphic cards. It was once proposed as an optional standard for AGP 3.0 in draft documents, but was dropped in the final version of the standard.
;Ultra-AGP, Ultra-AGPII: It is an internal AGP interface standard used by SiS for the north bridge controllers with integrated graphics. The original version supports same bandwidth as AGP 8x, while Ultra-AGPII has maximum 3.2GB/s bandwidth.
;AGP Pro: This was a rarely-used slot for cards that required more electrical power. It is a longer slot with additional pins for that purpose. AGP Pro cards were usually workstation-class cards used to accelerate professional
computer-aided designapplications employed in the fields of architecture, machining, engineering, simulations, and similar fields.
PCI-based AGP ports
:;AGP Express: Not a true AGP interface, but rather a way to allow an AGP card to be connected over the legacy PCI bus on a
PCI Expressmotherboard. It is a technology found on ECS motherboards, and is used as a selling point for AGP card owners who want a new motherboard but do not want to be forced to buy a PCIe graphics card as well (most new motherboards do not provide AGP slots, only PCIe slots). An "AGP Express" slot is basically a PCI slot (with the electrical power of two) in the AGP form factor. While it offers backward compatibility with AGP cards, its disadvantages include [http://www.ecs.com.tw/ECSWeb/Support/agp.aspx incomplete support] (some AGP cards do not work with AGP Express) and reduced performance - the card is forced to use the shared PCI bus at its lower bandwidth, rather than having exclusive use of the faster AGP.:;AGI: The ASRockGraphics Interface (AGI) is a proprietary variant of the Accelerated Graphics Port (AGP) standard. Its purpose is to provide AGP-support for those of Asrock's motherboards that use chipsets lacking native AGP-support. However, it's not fully compatible and several videocard chipsets are known to not be supported.:;AGX: The EpoX Advanced Graphics eXtended (AGX) is also a proprietary variant of the Accelerated Graphics Port (AGP) standard. It shares the same problems with the AGI port explained above. User manuals even recommend not using AGP 8X ATI cards with AGX slots.:;XGP: The BiostarXtreme Graphics Port is also a variant of the Accelerated Graphics Port (AGP) standard. It is similar to the two standards above, in that it supports AGP cards with chipsets that do not support AGP. Also like the above, it has support issues with many AGP cards.:;AGR: The Advanced Graphics Riseris a variation of the AGP port used in some PCIe motherboards to offer a limited backwards compatibility with AGP. It is, effectively, a modified PCI slot with no direct interconnection with the CPU or memory, and thus slower even compared to an AGP 1x slot. Its actual compatibility with AGP cards is also limited, while motherboard manufacturers usually publish a specific compatibility list.
AGP cards are backward and forward compatible within limits. 1.5 V-only keyed cards will not go into 3.3 V slots and vice versa, though "Universal" slots exist which accept either type of card. AGP Pro cards will not fit into standard slots, but standard AGP cards will work in a Pro slot. Some cards, like Nvidia's
GeForce 6series or ATI's Radeon X800series, only have keys for 1.5 V to prevent them from being installed in older mainboards without 1.5 V support. Some of the last modern cards with 3.3 V support were the Nvidia GeForce FXseries and the ATI Radeon 9500/9700/9800(R350) (but not 9600/9800(R360)).
It is important to check voltage compatibility as some cards incorrectly have dual notches and some motherboards incorrectly have fully open slots. Furthermore, some poorly designed older 3.3 V cards incorrectly have the 1.5 V key. Inserting a card into a slot that does not support the correct signaling voltage may cause damage.
There are some proprietary exceptions to this rule. For example, Apple
Power Macintoshcomputers with the Apple Display Connector(ADC) have an extra connector which delivers power to the attached display. Additionally, moving cards between computers of various CPU architectures may not work due to firmwareissues.
As of 2008, few new motherboards feature AGP slots. No new motherboard chipsets are equipped with AGP support, but motherboards continue to be produced with older chipsets that have AGP support.
PCI Expressallows for higher data transfer rates, has more robust full-duplex support, and also supports other devices.
All new graphics processors are designed for PCI-Express. To create AGP graphics cards, those chips require an additional PCIe to AGP bridge chip to convert PCIe signals to and from AGP signals. This incurs additional board costs due to the need for the additional bridge chip and for a separate AGP-designed circuit board.
Various manufacturers of graphics cards continue to produce AGP cards for the shrinking AGP user-base. The first bridged cards were the GeForce 6600 and ATI Radeon X800 XL boards, released during 2004-5. [Gasior, Geoff. [http://techreport.com/articles.x/7624 Nvidia's GeForce 6600 GT AGP graphics card: Bridging backwards] , Tech Report, November 16, 2004.] [Gasior, Geoff. [http://techreport.com/articles.x/8344 ATI's new AGP Radeons: A bridge is born] , Tech Report, May 20, 2005.] As of late 2007, AGP cards from Nvidia are limited to the older
GeForce 7series boards. AMD's only official DirectX10-capable AGP cards are from ATI's Radeon HD 2400 and 2600 budget and mid-range lines. As of April 2008 several manufacturers released AGP cards based on the mid-range Radeon HD3650 and the mid-high end HD3850.
List of device bandwidths
* [http://pinouts.ru/Slots/agp_pinout.shtml AGP pinout]
* [http://www.motherboards.org/articles/tech-planations/920_4.html AGP expansion slots]
* [http://www.playtool.com/pages/agpcompat/agp.html AGP compatibility] (with pictures)
* [http://www.sis.com/elibrary/elibrary_index00_000012.htm Ultra-AGPII Technology]
* [http://members.datafast.net.au/dft0802/specs.htm PCI Specifications Documents] contains AGP specs.
* [http://www.microsoft.com/whdc/archive/uagp.mspx Universal Accelerated Graphics Port (UAGP)]
* [http://computer.howstuffworks.com/agp.htm How Stuff Works - AGP]
Wikimedia Foundation. 2010.