Jump to content

PCI-X

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Tea2min (talk | contribs) at 10:06, 21 July 2006 (+ Category:Open standards). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

You must add a |reason= parameter to this Cleanup template – replace it with {{Cleanup|June 2006|reason=<Fill reason here>}}, or remove the Cleanup template.

A PCI-X Gigabit Ethernet expansion card.

PCI-X is an expansion card standard designed to supersede PCI.

Although they are commonly confused, PCI-X and PCI-Express are different. PCI-X (Peripheral Component Interconnect Extended) is a computer bus technology (the "data pipes" between parts of a computer). The technology was developed jointly by IBM, HP, and Compaq. PCI-X is a revision to the PCI standard that doubles the clock speed (from 66 MHz to 133 MHz) and hence the amount of data exchanged between the computer processor and peripherals. Standard PCI supports up to 64-bit at 66 MHz (though anything above 32-bit at 33mhz is only seen in very high end systems) and additional buses move 32 bits at 66 MHz or 64 bits at 33 MHz. The theoretical maximum amount of data exchanged between the processor and peripherals PCI-X is 1.06 Gb/s, compared to 532 Mb/s with standard PCI. PCI-X is generally backward compatible with PCI, meaning that you can, for example, install a PCI-X card in a standard PCI slot (but it will be limited to the standard PCI bus speed). PCI and PCI-X cards can be intermixed on a PCI-X bus, but the speed will be limited to the speed of the slowest card. PCI-X improves the fault tolerance of PCI allowing, for example, faulty cards to be reinitialized or take offline.

IBM, HP, and Compaq designed PCI-X for servers to increase performance for high bandwidth devices such as Gigabit Ethernet, Fibre Channel and Ultra3 SCSI cards, and to allow processors to be interconnected in clusters. Compaq, IBM, and HP submitted PCI-X to the PCI Special Interest Group (Special Interest Group of the Association for Computing Machinery) in 1998. PCI SIG approved PCI-X, and it is now an open standard that can be adapted and used by all computer developers. PCI SIG controls technical support, training and compliance testing for PCI-X. IBM, Intel, Microelectronics and Mylex plan to develop chipsets to support PCI-X. 3Com and Adaptec intend to develop PCI-X peripherals.

To accelerate PCI-X adoption by the industry, Compaq offers PCI-X development tools at their Web site.

PCI-X was developed in an attempt to codify individual extensions to the standard PCI bus. PCI-X was needed as some devices, most notably Gigabit Ethernet cards, Fibre Channel and Ultra3 SCSI controllers, as well as cluster interconnects could saturate the full bandwidth (only 133MB/s) of the PCI bus themselves. The first solution was to run the 33 Mhz PCI bus at double the speed, 66 Mhz, effectively doubling the throughput to 266 MB/s. However, machines with multiple high bandwidth devices still needed more headroom, so additional pins were added to the slot, going from 120 to 184, to form a 64-bit variety. This initially only ran at 33 Mhz basically giving the same maximum throughput of 266MB/s. Combined 64-bit 66 Mhz ports also showed up. However, these extensions were only loosely supported as optional part of the PCI 2.x standards. Device compatibility beyond the traditional 133 MB/s was still difficult.

In 1998 Compaq, IBM, and HP combined the 64-bit extension with the 66 Mhz extension, and predicting future demand developed 100 MHz and 133 Mhz variants to raise the possible bandwidth to 798 MB/s and 1064 MB/s respectively. They submitted the joint result to the PCI Special Interest Group (PCI SIG) as PCI-X. PCI SIG approved PCI-X, and it is now an open standard that can be adapted and used by all computer developers. PCI SIG controls technical support, training and compliance testing for PCI-X. All major chip makes generally now have some variant of PCI-X in their product lines.

PCI-X is somewhat backwards compatible with a standard PCI bus and its early extensions. Originally the PCI bus was a 5 Volt bus. Later, in PCI Revision 2.x the PCI bus was a dual voltage interconnect. In 3.0 this was changed to 3.3 Volt only. The PCI-X bus is not compatible with 5 Volt cards. However, generally most newer PCI and faster devices will run in a PCI-X slot, however, they will limit the speed of the entire bus. For example a PCI 2.3 device running at 32-bit and 66 Mhz in a PCI-X 133 bus will limit the total throughput of the bus to 266 MB/s. To get around this limitation, many motherboard have separate PCI-X channels, allowing for better backwards compatibility, and higher total bandwidth. PCI-X is also more designed to be more fault tolerant than PCI. For example, PCI-X has provisions to reinitialize or deactivate a faulty card before a total system failure occurs.

To accelerate PCI-X adoption by the industry, Compaq offers PCI-X development tools at their Web site.

PCI-X 2.0

In 2003 PCI SIG ratified PCI-X 2.0 which adds 266 MHz and 533 MHz variants. These variants give roughly 2.15 GB/s and 4.3 GB/s throughput, respectively. PCI-X 2.0 makes additional protocol revisions that are designed to help system reliability and add error correction ECC to the bus to avoid resends. To deal with one of the most common complaints of the PCI-X form factor, the 184 pin connector, 16-bit ports were developed to allow PCI-X to be used in devices with tight space constraints. Similar to PCI-Express, P2P functions were added to allow for devices on the bus to talk to each other without burdening the CPU or bus controller.

Despite the various theoretical advantages of PCI-X 2.0 and its backwards compatibility with PCI-X and PCI devices, it has not been implemented on a large scale (as of 2006). This lack of implementation is primarily because hardware vendors have chosen to integrate PCI-Express instead.

Confusion with PCI-Express

PCI-X is often confused with PCI-Express, commonly abbreviated PCI-E or PCIe. While they are both high speed computers buses for internal peripherals, they differ in many ways. The first is that PCI-X is a parallel interface that is directly backward compatible with all but the oldest (5 Volt) PCI devices. PCIe is a serial bus that offers no compatibility with older buses. In the future PCI-X and PCI buses may run off a PCIe bridge, similar to the way ISA buses ran off of PCI buses in some computers. This should not be confused with compatibility. PCIe also matches PCI-X and even PCI-X 2.0 in maximum bandwidth. PCIe x1 offers 250MB/s in both directions, and currently supports up to an x16 standard at 4 GB/s. PCI-X like PCI is a unidirectional bus.

PCI-X has a number of technological and economical disadvantages compared to PCI-Express. The 64-bit parallel interface requires inherently difficult trace routing, because as with all parallel interfaces, the signals from the bus must arrive simultaneously, or within a very short window and noise from adjacent slots may cause interference. The serial interface of PCIe suffers fewer such problems and therefore requires less complex and less expensive designs. PCI-X buses are unidirectional whereas PCIe buses are bidirectional. PCI-X buses run only as fast as the slowest device; PCIe devices are able to independently negotiate the bus speed.