• The AGP bus and what was the main idea behind its development. Technical documentation. AGP - agp, agp bus, agp standard Agp bus bandwidth

    In order, without changing the already established standard for the PC1 bus, to speed up data input/output to the video adapter and, in addition, to increase PC performance when processing three-dimensional images without installing specialized expensive dual-processor video adapters, in 1997 Intel developed a standard for the AGP bus ( Accelerated Graphics Port). AGP is a data transfer channel between video adapters and RAM memory, as well as the processor system bus, without intersecting with the PC1 bus.

    Note Due to problems with compatibility of video cards with various AGP specifications, which in severe cases caused the motherboard and video adapter to burn out, the AGP bus is not used in new developments.

    The AGP bus is a high-speed local I/O bus designed exclusively for video system needs. It connects the video adapter (ZO accelerator) with the PC system memory, so there is only one AGP connector (slot) on the motherboard. Since the AGP bus is used by only one device, the arbitration problem characteristic of the PC1 bus does not arise (when several devices simultaneously require access to the bus), which increases the speed of data exchange between the video adapter and system memory.

    The AGP bus was developed based on the PC1 bus architecture, so it is also 32-bit.

    At the same time, it has a number of important differences from the PCI bus, which make it possible to increase the throughput several times.

    Using higher clock speeds.

    Demultiplexing (SBA mode).

    Packet data transfer.

    Direct in-memory execution (DiME) mode.

    Operating modes If the PCI bus in its standard version (32-bit) has a clock frequency of 33 MHz, which theoretically provides the PCI bus bandwidth

    Rice. 5.4. Block diagram of a video system based on the AGP bus

    33 - 32 = 1056 bps = 132 MB/s. then the AGP bus is clocked with a signal with a frequency of 66 MHz. therefore, its throughput is 66 - 32 = 264 MB/s (this corresponds to the so-called 1P mode). In addition to mode 1 - . The AGP Revision 1.0 standard provides 2D mode. in which data is transmitted not only on the leading, but also on the falling edge of the clock pulse. In 2D mode, the equivalent clock frequency is 132 MHz. and the throughput is 528 MB/s.

    In the latest versions of the AGP bus. using a reduced supply voltage, more than two can be completed in one synchronization cycle. and four or eight gears (modes 4P and 8).

    In the most general form, the block diagram of an AGP-based video system can be presented as follows. as shown in fig. 5.4.

    Structurally, the AGP connector resembles a PCT slot. however, it is slightly higher because the pins in the AGP connector are arranged in two layers. Depending on the supported supply voltage, there are several types of AGP slots. Cards that support modes usually have a universal connector with two slots (Fig. 5.5).


    Rice. 5.5. Universal AGP bus connector on the video adapter

    The AGP standard was developed by Intel in order to, without changing the existing standard for the PCI bus, speed up data input/output to the video card and, in addition, increase computer performance when processing three-dimensional images without installing expensive dual-processor video cards with large amounts of video memory, as well as memory for textures, z-buffer, etc. This standard was supported by a large number of companies included in the AGP Implementors Forum, an organization created on a voluntary basis to implement this standard. The starting version of the standard is AGP 1.0.

    Design:

      A separate slot with 3.3 V power supply, reminiscent of a PCI slot, but in fact in no way compatible with it. A regular video card cannot be installed in this slot and vice versa.

    Operating principles and the main advantages of AGP compared to PCI:

    1. Physical characteristics of AGP compared to PCI

      The data transfer speed is up to 532 Mb/s, which is due to the AGP bus frequency of 66 MHz, the ability to cancel the multiplexing mechanism of the address and data bus (on PCI, the address is first issued over the same physical lines, and then the data). The PCI bus has a clock speed of 33 MHz and 32 bits of data, so it can handle 33,000,000 x 4 bytes = 132 Mb/s. AGP has a bus frequency of 66 MHz and the same bit depth, and in standard mode (more precisely, “1x” mode) it can pass 66,000,000 x 4 bytes = 266 Mbytes/s. In x1 mode, the clock signal itself is used as a strobe. To increase the throughput of the AGP bus, the standard includes the ability to transmit data using additional special signals used as strobes, instead of the CLK signal in normal mode (these are “2x” and “4x” modes). In 2x mode, the throughput becomes 66,000,000 x 2 x 4 bytes = 532 Mbytes/s. In the "4x" mode (introduced in specification 2.0), the throughput increases accordingly, to 1064 Mbytes/s.

      In addition to the “classical” addressing method as on PCI - first the address is set, then data appears on the same buses, AGP can use the sideband addressing mode, also called “sideband addressing”, in which the address and data buses are separated and therefore can be transmitted simultaneously. The exchange speed in SBA mode increases significantly, since the time spent on transmitting an address over the bus is eliminated. In this case, special SBA address signals (not found in PCI) are used ( S ide B and A ddressing). The table below shows the 3DMark99 test results for the ASUS V3400 TNT 16 MB SGRAM video card with and without SBA mode enabled.

      Pipeline data processing on AGP as opposed to PCI. The figure below shows this clearly:

    Figure 1. AGP vs PCI. After a delay, data appears on the PCI at the set address. On AGP, a packet of addresses is first set, to which a response with a data packet follows. (c) Intel Corporation

      Most 3D image processing is performed in the computer's main memory by both the central processor and the video card processor. The mechanism for accessing the video card processor to memory is called D.I. rect M emory E xecute (DIME - direct execution in memory). It should be mentioned that not all AGP video cards currently support this mechanism. Some cards currently only have a mechanism similar to the bus master on the PCI bus, i.e. DMA channels are used to quickly transfer data to the video card. This principle should not be confused with UMA (Unified Memory Architecture), which is used in inexpensive video cards, usually located on the motherboard (for example, SP97-V from ASUSTeK Computers). Main differences:

      • The area of ​​the computer's main memory that can be used by an AGP card (also called "AGP memory") does not replace screen memory. In UMA, the main memory is used as screen memory, and AGP memory only supplements it.

        Memory bandwidth in a UMA video card is less than that of the PCI bus.

    Figure 2. Block diagram of interaction between an AGP card and a computer.

      For texture calculations, only the central processor and video card processor are involved.

      The CPU writes data for the video card directly to an area of ​​conventional memory, which is also accessed by the video card's processor.

      Only memory read/write operations are performed

      There is no arbitration on the bus (there is always one AGP port) and no time spent on it

    2. Comparison of AGP and PCI video cards:

      In reality, an AGP card will outperform a regular card (if you compare cards with video processors of similar power) only in 3D image processing tasks that require a large amount of memory for textures (more than 8 Mb). You must understand that the computer's memory itself must be at least 32 MB, otherwise the AGP card will have nowhere to place textures.

      Tests of various cards carried out by Tom Pabst in the fall of 1997 showed that in conventional tests there is practically no difference between the AGP cards now available and the Matrox Millenium II reference card. In three-dimensional tests there is a difference, but not very significant. Since then, a lot of water has flown under the bridge and the situation has changed significantly, as discussed below.

      Windows 95 OSR2 version 2.5 already fully supports AGP and the results of 3D tests for AGP are ahead of those for PCI, especially in scenes with large texture sets. You can see their results on the Tom Pabst website. Windows NT 4.0 does not support AGP, and only NT 5.0 (Windows 2000) will benefit from AGP.

      The AGP standard by itself does not guarantee performance gains. Only when the developer of a video card (more precisely, a video card processor) uses all the capabilities of the bus does this give a performance increase. For example, the Matrox Millenium II AGP video card does not support both DIME and "2x" mode, so it is almost impossible to find an application under which the AGP version of this video card will somehow be superior to the PCI version.

      An AGP video card can significantly outperform the same PCI video card only if it uses either DMA and x2, or DIME and x2. In modes without x2 there is practically no winning. You can check in what mode the video card in your computer is running using a small program pcilist, which can be copied from the EnTech Taiwan website.

    Development of AGP

    1.AGP 2.0

    In December 1997, Intel released a preliminary version of the AGP 2.0 standard, and in May 1998 the final version. Main differences from the previous version:

      The transfer speed can be doubled compared to 1.0 - this mode is called "4x" - and reach a value of 1064 MB/s.

      The address transmission speed in the "sideband addressing" mode can also be doubled

      Added "quick write" mechanism F ast W rite( FW). The main idea is to write data/control commands directly to the AGP device, bypassing intermediate data storage in the main memory. To eliminate possible errors, a new signal has been introduced into the bus standard WBF# (W rite B uffer F ull - write buffer is full). If the signal is active, FW mode is not possible.

    The first video cards supporting version 2.0 appeared at the end of April 1999. By the appearance of the AGP connector on the video card, you can easily determine the presence of such support.

    View of the video card connector with AGP 1.0

    View of the video card connector with AGP 2.0

    As can be seen from the photographs, the connectors differ in design by having an additional slot for AGP 2.0. Since the corresponding connector on the motherboard will have a plastic strip under the second slot, a board with AGP 1.0 cannot be installed in such a slot, but vice versa - without any problems.

    2.AGP Pro

    In July 1998, Intel released version 0.9 of the AGP Pro specification, which differs significantly in design from AGP 2.0. The brief essence of the differences is as follows:

      The AGP connector has been changed - pins have been added along the edges of the existing connector for connecting additional 12V and 3.3V power circuits

      Compatible with AGP 2.0 only from bottom to top - boards with AGP 2.0 can be installed in the AGP Pro slot, but not vice versa.

      AGP Pro is intended only for systems with the ATX form factor. Installation of AGP Pro boards in the NLX system is not provided (the size of the board in AGP Pro is too large).

      Since the AGP Pro card is allowed to consume up to 110 Wt (!!), the height of the elements on the board (including possible cooling elements) can reach 55 mm, so two adjacent PCI slots must remain free. In addition, two adjacent PCI slots can be used by the AGP Pro board for its own purposes.

      From a circuit design point of view, the new specification does not add anything other than special pins that inform the system about the consumption of the AGP Pro board.

    The figure shows that the dimensions of the AGP Pro slot evoke nostalgic memories of the late 80s, when the display controller board looked almost the same (although it was no more than one compartment thick). Of course, the specification for AGP Pro stipulates the maximum dimensions and current consumption, but after reading it, a seditious thought comes to mind - what does Intel now consider the main processor in a computer?

    AGP 8X

    In November 2000, Intel released a preliminary version (draft) of the next version of the AGP bus - 8X. The main idea is to increase the bandwidth to 8x4=32 bytes per system bus clock cycle. This means that the data transfer rate on the bus will increase to 2 Gigabytes per second. How this happens can be seen from the figure below:

    In addition, the design of the new bus version includes several fundamental changes that expand the capabilities of the AGP interface. Some of them can be listed:

      Reducing the signal voltage level on the bus

      Calibration cycles

      Dynamic bus inversion

      Support for isochronous data transfer mode

      Supports multiple AGP 8X ports (previously only one port was possible)

      New configuration registers for the 8X bus

    What's next?

    In fact, with the decreasing cost of synchronous SDRAM (and its variant, synchronous graphics memory SGRAM), as well as even faster DDR DRAM, the prospects for AGP are not as bright as they once seemed. The main goal pursued by Intel - creating a cheap equivalent to professional video cards with large amounts of local memory - becomes meaningless given the low cost of memory. The bandwidth in AGP 2.0 standard boards (1 GB/s), which are yet to appear, is 2 times less than the actual current bandwidth for local SGRAM memory, reaching 2 GB/s. Therefore, increasing the clock frequency and PCI bus width can negate all the advantages of AGP.
    Another thing is that AGP has become virtually the only interface for video cards, and only this fact makes it almost impossible to switch back to PCI, so AGP will continue to develop, but in parallel with the development of PCI.

    Accelerated Graphics Port (AGP) - Accelerated graphics port

    The abbreviation AGP is either familiar to you, or you don't like playing on a computer. This designates a popular type of system bus that has a special connector format for connecting expansion cards. There are many expansion cards designed for this 32-bit bus, and almost all of them belong to the category of graphics accelerators. Although at present, starting from 2010, video cards for this bus are practically not produced, since it has lost the palm, nevertheless, there are many computers that have graphics accelerators designed for the AGP bus.

    Over the entire existence of the personal computer system bus, several different standards have been developed. However, only a few of these buses were developed specifically for connecting video cards. The AGP bus is one example of such a bus.

    Readers may be interested to know what this abbreviation means. It stands for Accelerated Graphic Port. The AGP bus was developed by Intel in 1996 as an improvement to the PCI bus, and was first used in Intel chipsets designed for Pentium and Pentium 2 processors. Support for the bus appeared in Windows operating systems starting with Windows 95 OSR2 and Windows NT 4.0 SP3.

    The main idea when developing the bus was not only to increase the efficiency of the computer video system, but also to reduce its cost. This was supposed to be achieved by reducing the amount of RAM on the card, since the Accelerated Graphic Port standard implied improved capabilities compared to PCI for using the computer's main RAM.

    During the tire's existence, several specifications were released, the latest of which was specification 3.0. In addition, several bus speed standards have been developed, ranging from 1x to 8x.

    As computer hardware developed, starting in the mid-2000s, it became obvious, however, that the AGP bus did not meet the new requirements for graphics accelerators. Therefore, several extensions to the standard were created, for example, the 64-bit Accelerated Graphic Port bus or a variant of the bus called Accelerated Graphic Port Pro. In addition, a number of unofficial bus extensions have been created by some motherboard developers, but they are not widely used.

    Characteristics and differences from PCI

    Before the advent of the Accelerated Graphic Port bus, the vast majority of graphics accelerators used the PCI connector. Unlike PCI, the new bus had twice the clock frequency (66 MHz), as well as twice the data transfer speed (533 MB/s). Although it initially had the same supply voltage as PCI - 3.3 V, it was subsequently reduced to 1.5 and 0.8 V, respectively, in specifications 2.0 and 3.0. Also, unlike PCI, the bus supported direct access to DMA memory and separation of data processing requests. The operation of the bus was controlled by an AGP controller located in the motherboard chipset.

    The characteristics of the different bus versions are shown in the table below:

    A standard AGP slot has 132 pins (66 on each side). In general, their arrangement is similar to that of the PCI bus pins, but there are several additional signals. At the same time, the connector may have several options that differ in operating voltage. The connector designed for a voltage of 1.5 V, just like the connector designed for a voltage of 3.3 V, has a special protrusion that prevents the insertion of a board of an inappropriate standard. In addition, there is a universal connector that allows you to insert all types of video cards into it. There are also video cards that can be inserted into any type of slot.

    However, it should be borne in mind that there are motherboards that use a connector designed only for a certain voltage value, and are not equipped with keys to prevent incorrect connection. Therefore, when installing video cards into a connector, you should pay attention at this point, and also study the instructions for the motherboard and video card and compare their characteristics, since connecting a video card to a connector with the wrong voltage can lead to failure of both the card and the connector itself.

    The connector for cards that support the Accelerated Graphic Port Pro standard also has two options, designed for different voltages - 1.5 V and 3.3 V. Regular standard cards can be inserted into the Pro type slot, but the reverse operation cannot be performed.

    Setting up the bus in the BIOS

    Perhaps many readers are interested in such questions as how to enable AGP and how to configure AGP. For this purpose, the easiest way is to use the BIOS Setup tools. As such, the Accelerated Graphic Port bus is not enabled in the BIOS; it is activated by default. But in the BIOS you can find many options designed to configure it. For example, you can use it to enable fast recording mode for your video card. In this mode, the video card receives data directly from the central processor, bypassing the system RAM as an intermediate storage location. Using , you can set the size of RAM that will be used by a video card with this interface. You can read more about setting up some bus operation parameters on our website in the section dedicated to BIOS options (“Chipset Parameters”).

    Conclusion

    Although now in most motherboards the AGP slot has given way to slots for such a high-performance bus as PCI Express, nevertheless, the introduction of the Accelerated Graphic Port bus turned out to be a real breakthrough in the world of graphics video cards at one time. In addition, graphics cards of this format can still be found in many working computers.