Tuesday, April 14, 2009

PCI Bus

The PCI Bus

The PCI bus (Peripheral Component Interconnect) was developed by Intel on 22 June 1992. Contrary to the VLB bus, it is not so much a traditional local bus but rather an intermediate bus located between the processor bus (NorthBridge) and the I/O bus (SouthBridge).

PCI Connectors

At least 3 or 4 PCI connectors are generally present on motherboards and can generally be recognised by their standardised white colour.

The PCI interface exists in 32 bits with a 124-pin connector, or in 64 bits with a 188-pin connector. There are also two signalling voltage levels:

·                                 3.3V, for laptop computers

·                                 5V, for desktop computers

The signalling voltage does not equal the voltage of the motherboard power supply but rather the voltage threshold for the digital encryption of data.

There are 2 types of 32-bit connectors:

·                                 32-bit PCI connector, 5V:

                                                                                  PCI connector, 5V

·                                 32-bit PCI connector, 3.3V:

                                                                             PCI connector, 3.3V

The 64-bit PCI connectors offer additional pins and can accommodate 32-bit PCI cards. There are 2 types of 64-bit connectors:

·                                 64-bit PCI connector, 5V:

                                                                         64-bit PCI connector, 5V

·                                 64-bit PCI connector, 3.3V:

                                                                          64-bit PCI connector, 3.3V

Interoperability

Generally, it is not possible to make a mistake when plugging a PCI card into a PCI slot. If the card plugs in correctly, it is compatible. Otherwise, there are foolproof devices to keep you from installing it.


                                                                                     PCI - Interoperability


There are expansion boards that have what are called "universal" connectors, i.e. that have two types of foolproof devices (two notches). These expansion cards can detect signalling voltage and adapt to it, and can therefore can be inserted independantly in 3.3V or 5V slots.

Bus Updates

The original version of the PCI bus is 32-bits wide and has a clock speed of 33 MHz, which allows it to theoretically provide a throughput of 132 Mb/s on 32 bits. On 64-bit architectures, the bus operates on 64 bits and offers a theoretical throughput of 264 Mb/s.

An interest group made up of a large number of manufacturers, dubbed PCI-SIG (PCI Special Interests Group), was created to upgrade the PCI standard. Bus updates were published. Version 2.0 from 30 April 1993 defined the shape of the connectors and additional cards and gave it a clock speed of 66 MHz versus 33 MHz for version 1.0, therefore doubling its theoretical throughput to reach 266 Mb/s on 32 bits.

On 1 June 1995, revision 2.1 of the PCI bus improved its use to 66 MHz. At the time, engineers anticipated a progressive move from 5V signalling voltage toward 3.3V.

Version 2.2 of the PCI bus, which appeared on 18 December 1998, allowed peripherals to be plugged in when hot (hot plug).

Revision 2.3, edited on 29 March 2002, did away with the possibility of using additional 5V cards but permitted the use of cards that support both voltages in order to ensure downward compatibility. Revision 3.0 of the PCI standard completely did away with the use of 5V compatible cards.

In September 1999, a major change to the PCI bus was made, dubbed PCI-X. The PCI-X 1.0 bus supports 66, 100 and 133 MHz frequencies. The PCI-X bus is fully compatible with the PCI format. PCI-X slots support PCI format cards and vice versa.

Revision 2.0 of the PCI-X bus supports 66, 100, 133, 266 and 533 MHz frequencies and allows throughputs of 4.27 Gb/s on 64 bits.

The table below summarises the different PCI bus revisions:

Revision

Release Date

Frequency

Voltage

Width

PCI 1.0

1992

33 MHz

Nil

32 bits

133 Mb/s

64 bits

266 Mb/s

PCI 2.0

1993

33 MHz

3.3V / 5V

32 bits

132 Mb/s

64 bits

264 Mb/s

PCI 2.1

1995

33 MHz

3.3V / 5V

32 bits

132 Mb/s

64 bits

264 Mb/s

66 MHz

3.3V

32 bits

264 Mb/s

64 bits

528 Mb/s

PCI 2.2

1998

33 MHz

3.3V / 5V

32 bits

132 Mb/s

64 bits

264 Mb/s

66 MHz

3.3V

32 bits

264 Mb/s

64 bits

528 Mb/s

PCI 2.3

2002

33 MHz

3.3V / 5V

32 bits

132 Mb/s

64 bits

264 Mb/s

66 MHz

3.3V

32 bits

264 Mb/s

64 bits

528 Mb/s

PCI-X 1.0

1999

66 MHz

3.3V

32 bits

264 Mb/s

64 bits

528 Mb/s

100 MHz

3.3V

32 bits

400 Mb/s

64 bits

800 Mb/s

133 MHz

3.3V

32 bits

532 Mb/s

64 bits

1,064 Mb/s

PCI-X 2.0

2002

66 MHz

3.3V

32 bits

264 Mb/s

64 bits

528 Mb/s

100 MHz

3.3V

32 bits

400 Mb/s

64 bits

800 Mb/s

133 MHz

3.3V

32 bits

532 Mb/s

64 bits

1,064 Mb/s

266 MHz

3.3V / 1.5V

32 bits

1,064 Mb/s

64 bits

2,128 Mb/s

533 MHz

3.3V / 1.5V

32 bits

2,128 Mb/s

64 bits

4,256 Mb/s