PCIe - PCI Express

pci expressPCI express is an advanced version of PCI. PCIe is the standard for expansion slots and computer bus. The programming concepts in PCIe are similar to that of PCI. But it uses quite different communication protocol. PCIe not only provides PCI functionalities in a faster manner but AGP support as well.

PCI Express Physical Layer

The great advantage of PCI Express is that it can fit in any existing PCI system. There is no need to change cards or system software. The only change is required in physical layer. The physical consists of serial interconnects. This resolves the skew problem associated with parallel design. The physical layer serial communication protocol never blocks and allows PCI Express to replace all the existing bus standards.

PCI Express Protocol

PCI Express Protocol is based on links or lanes. A lane is a point-to-point 1-bit (serial) connection between any two PCI Express devices. A lane is bi-directional and also known as link between PCIe devices. The devices can be connected through more than one lane. PCIe uses same link for sending data, control messages, and interrupts. For the links based on multiple lanes, the protocol uses data striping. Data striping involves sending successive byte to successive lanes.

PCI Express Issues

Slots compatibility

PCIe slots support all the cards. A smaller card can fit in larger size but a larger size card cannot be fit in smaller slot. However larger size slots can be linked to smaller ones through lanes.

Synchronization

One considerable issue with serial protocol is synchronization. Different encoding schemes are used for this purpose. The most commonly used is 8B / 10B encoding.

Data Processing

Being a serial protocol the processing is quite a overhead. Complex software is required to send additional information. The additional information can include acknowledgments and error checking mechanisms.

PCI Express Versions

The early versions of PCIe or first generation PCIe provided data rates of 2.5 Gigabits per second or 250 megabits per send per bi-directional lane. Now there are PCI Express standards supporting data rates of 5 to 10 Gigabits per second.

PCI Express and other serial Architectures

There are number of architectures based on serial protocols. Rapid - I/O, Hyper Transport, Star fabric, and Infini Band are famous industrial standards. The use of standards depends upon the trade offs such as latency, flexibility or overhead. PCI Express is much flexible as it can be adapted by any PCI existing system. A little bit overhead of protocol and processing is involved. On the whole it is sure that in the near future PCI Express will replace all the internal existing local bus standards.