Matrox AGP, PCI, and PCIe Guide
Matrox guide to different types of expansion slots and
Matrox makes a variety of graphics cards designed to be inserted into certain types of computer expansion slots. The most common slot types used by graphics cards are AGP, PCI, and PCIe and for each of these types, there are also several sub-types. The different slot types available are an important consideration when buying a graphics card or computer. This guide describes differences between these slot types and their sub-types.
The AGP (Accelerated Graphics Port) standard was introduced by Intel in 1997 and was specifically designed to connect graphics hardware to the rest of the computer. This is in contrast to connection standards like PCI which aren't limited to graphics hardware. The advantage of the AGP approach is that graphics hardware has a dedicated connection with the rest of the computer and thus graphics hardware using an AGP connection doesn't have to compete with other devices for communication resources.
|The dedicated nature of AGP can be a disadvantage in that computers supporting AGP usually have only one AGP slot. This is sufficient for most needs, but can be limiting when multiple graphics cards need to be used to support multiple displays. Fortunately, computers using the AGP standard usually have other general-purpose, PCI slots that can accommodate extra graphics cards. There are also AGP graphics cards like the Matrox QID that support up to 4 monitors at a time.||
Matrox QID (AGP)
AGP also features a more direct way to access system memory. This can be useful for 3D applications that require large amounts of memory and when there isn't enough dedicated graphics memory. Graphics cards intended for 3D applications (for example, Matrox Parhelia 256MB) have large amounts of graphics memory to minimize the use of slower system memory. More direct access to system memory is useful to low-end graphics hardware built into the motherboard of a computer. Such graphics hardware typically doesn't have its own dedicated graphics memory. This type of graphics hardware is typically disabled automatically when a graphics card is installed.
The original AGP standard was extended to achieve higher maximum bandwidths. To take advantage of the extended capabilities, graphics hardware and software has to be specifically designed for the new specifications. For example, different versions of the standard use different voltages and slightly different edge connectors.
Each variation of the standard is differentiated by a multiplier indicating the differences in potential bandwidth. The base potential bandwidth of AGP is 266 MB/s (megabytes per second) and the variation of AGP associated with this bandwidth is referred to as AGP 1x (pronounced "one-ex"). With different variations of AGP, increases in potential bandwidth are achieved by multiplying the number of bits of data transferred with each clock cycle on each data line.
The following is a summary of the most common variations of AGP.
|AGP 1x||32||1||66||3.3 or 1.5||AGP 1.0 (at 3.3 V)||266|
|AGP 2x||32||2||66||3.3 or 1.5||AGP 1.0 (at 3.3 V)||533|
|AGP 4x||32||4||66||1.5 or 0.8||AGP 2.0 (at 1.5 V)||1066|
|AGP 8x||32||8||66||0.8||AGP 3.0||2133|
|Because of the different voltages associated with various versions of AGP, the edge connectors are "keyed" so that a card won't fit into an incompatible slot (assuming both the card and the slot are compliant with the specifications). The keying is actually a gap along the edge connector that indicates support for a particular voltage.
Edge connector for a card capable of 3.3 or 1.5 volts (as indicated by the left and right gaps, respectively) over an AGP slot requiring
If the slot requires a gap at a certain location, cards without that gap (that is, without support for the corresponding voltage) won't fit into that slot. The original AGP 1.0 specification only supported voltages of 3.3 volts but subsequent revisions supported 1.5 and 0.8 volts. So, older computers designed to the original specification may not support some newer AGP cards.
Matrox has AGP 8x cards (for example,
Millennium P650) supporting 1.5 and 0.8 volts. These are compatible with all compliant AGP 4x and 8x slots, and with compliant AGP 1x and 2x slots that support 1.5 volts (that is, all slots compliant with the AGP 2.0 or later specification). Matrox also has AGP 4x cards (for example, Millennium G550 and Millennium G450) that are compatible with all compliant AGP slots.
Matrox Millennium P650 (AGP) graphics card
There are other variations of AGP that the industry didn't widely implement, namely AGP Pro for higher power requirements and "AGP Express" which is a hack of the an AGP connector on a PCI bus. Matrox AGP cards are compatible with AGP Pro slots, but not with "AGP Express" slots.
PCI (Peripheral Component Interconnect) is a type of computer bus for attaching or inserting peripheral devices into a computer. The PCI standard was first proposed by Intel in 1990 and was widely implemented in computers by 1995. Today, the specifications for PCI and its variants are maintained by the PCI-SIG (PCI Special Interest Group), a consortium of over 900 companies.
PCI is a general-purpose connection standard designed to support multiple devices of various kinds, including graphics hardware, audio hardware, network hardware, and so on. Revisions of the PCI standard have added new features and performance improvements, including different bus speeds and bus widths. Below is a summary of the different potential bandwidths for the most popular variants of the basic PCI standard.
These various types of slots and expansion cards are generally compatible with each other. However, unless a card and slot are designed to use a wider bus (that is, 64 bits) or a faster bus speed (66 MHz) they generally default to the lower setting.
|For example, a 64-bit PCI card like Matrox Parhelia 256MB PCI has an edge connector that's wider (longer) than for a 32-bit PCI card like Matrox Millennium G450 PCI. Despite this, a 64-bit PCI card can be inserted into a 32-bit PCI slot. In this case, part of the edge connector simply overhangs the slot and only the first part of the edge connector is used (that is, only 32-bit communication occurs). By the same token, a 32-bit PCI card can be inserted into a 64-bit slot. In this case, the edge connector of the card will only fill part of the slot and the connection will be 32-bit.
Matrox Parhelia PCI 256MB (64-bit)
Matrox Millennium G450 PCI (32-bit)
There's also an extension of the PCI standard referred to as PCI-X (not to be confused with PCI Express). Cards and slots designed for PCI-X are capable of bus speeds higher than 66 MHz. PCI-X slots are commonly available in servers and high-end workstations. A 64-bit, 66 MHz PCI card is compatible with PCI-X slots and can run at 66 MHz in such a slot.
As with AGP, PCI cards and slots are keyed to support different voltages. PCI cards and slots may run at 5 or 3.3 volts. All currently shipping Matrox PCI cards are compatible with either voltage and are keyed accordingly.
While the PCI standard pre-dates the AGP standard, most new computers still include PCI slots while AGP slots are being phased out.
PCIe (PCI Express) is a recently introduced standard for connecting devices to computers. It's software-compatible with PCI but has higher potential bandwidth and greater flexibility than PCI or AGP. The PCIe specification is also maintained by the PCI-SIG. For wider compatibility, and because the two standards share a common foundation, most new computers support PCIe and PCI.
A connection between a PCIe device and the system is known as a "link" and this link is built around a dedicated, bi-directional, serial (1-bit), point-to-point connection known as a "lane". A lane is capable of simultaneously transferring 250 MB/s of data in each direction. A link can use more than one lane at a time but all links compliant with the PCIe specification must minimally support single-lane connections, referred to as "x1" (pronounced "by-one") links.
For higher potential bandwidth, PCIe devices and systems can optionally support links using multiple simultaneous lanes – for example, a "x16" link uses 16 lanes. To support extra lanes, a PCIe card and slot must be designed to accommodate the extra electrical lines required (2 lines per lane). Card and slot types exist for x1, x4, x8, and x16 links.
Currently, the only devices that use a x16 link are graphics cards. Other devices typically don't require the high potential bandwidths provided by such a connection. Matrox has several PCIe x16 graphics cards, including Millennium P650 PCIe 128, Millennium P650 LP PCIe 64, and QID LP PCIe.
PCIe cards will physically fit into slots designed for their lane configuration or higher (up-plugging) but not into slots designed for lower lane configurations (down-plugging). So, for example, a x1 card will fit into x1, x4, x8, and x16 slots but a x16 card will only fit into a x16 slot. A x1 card in any compliant PCIe slot will always run in x1 mode. Matrox introduced the world's first PCIe x1 graphics cards, the Millennium G550 PCIe and Millennium G550 LP PCIe.
PCIe x1 graphics cards
The internal architecture of PCIe is much like a local area network in that each link goes to a central hub in the computer that performs network-like switching. This is in contrast to the PCI architecture, where all devices share the same unidirectional, parallel bus. Because PCIe isn't based on parallel connections that can be hindered by timing issues, PCIe allows data to be more easily and cost-effectively transmitted over longer distances. In fact, the PCI-SIG is developing a cabling specification to allow external devices to be connected to a computer using the PCIe standard.
Potential bandwidths of AGP, PCI, and PCIe
The higher potential bandwidth that certain slot types provide don't necessarily result in proportionally higher performance. The bandwidth associated with each slot type is the maximum achievable and is subject to limitations due to software overhead (for example, operating system activity) and whether an application is maximizing usage. For example, a simple 2D application like a spreadsheet or word processing program is less likely to benefit from the advantages of this higher bandwidth. Intensive, real-time, 3D programs are more likely to use such extra bandwidth.
The differences in these bandwidths only affect the speed at which data is transferred between the graphics hardware and the rest of the computer. These bandwidths don't affect the speed of the graphics chip itself and don't directly affect the speed of the rest of the computer.
The following summarizes the differences in potential bandwidth between the various slot types.