The PCI Bus
The PCI Bus
Main features
• coupling of the processor and expansion bus by means of a bridge,
• 32-bit standard bus width with a maximum transfer rate of 133
Mbytes/s,
• expansion to 64 bits with a maximum transfer rate of 266 Mbytes/s,
– PCI-64/66 532 Mbytes/s,PCI-X 64/133 1064 Mbytes/s
• supporting of multi-processor systems,
• burst transfers with arbitrary length,
• supporting of 5 V and 3.3 V power supplies,
• write posting and read prefetching,
• multimaster capabilities,
• operating frequencies from 0 MHz to a maximum of 33 MHz,
– PCI-66 3.3V only, PCI-X 100MHz-133MHz
• multiplexing of address and data bus reducing the number of pins,
• supporting of ISA/EISA/MCA,
• configuration through software and registers,
• processor independent specification
Block diagram of a PCI bus system
Processor/Main Memory System
Copro- Main
CPU Cache
cessor Memory
PCI Motion
Audio
Bridge Video
PCI Bus
• Bus Arbitration
– Parallel arbitration
– Hidden arbitration
– Arbitration algorithm is not defined
• DMA
– Burst transfers
• Interrupts
– INTA# activated
– Data: interrupt vector
PCI Bus Cycles
• INTA sequence (0000)
• special cycle (0001)
• I/O read access (0010)
• I/O write access (0011)
• memory read access (0110)
• memory write access (0111)
• configuration read access (1010)
• configuration write access (1011)
• memory multiple read access (1100)
• dual addressing cycle (1101)
• line memory read access (1110)
• memory write access with invalidation (1111)
PCI Configuration Address Space
31 16 15 0
• Manufacturer ID
64 Byte Header
Unit ID
Status
Manufacturer ID
Command
– allocated by PCI SIG
BIST
Class code
Header Latency
Revision
CLS • Unit ID, revision
– identifies unit
192 Bytes Available
• Class code
for PCI Unit
Base Address register
• Status: • Command:
– PER: Parity error – BEE: Fast back-to-back cycles
– SER: System error (Back-to-Back Enable)
– MAB: Master abort – SEE: SERR Enable
– TAB: Target abort received – WC: Wait cycle control
– STA: Target abort signaled – PER: Parity error (Parity Error
– DEVTIM: DEVSEL timing Response)
• 00=fast 01=medium – VPS: VGA palette snoop
10=slow 11=reserved – MWI: Memory write access with
– DP: Data parity error invalidation
– FBB: Fast back-to-back – SC: Special cycle
cycles supported/ – BM: Busmaster
unsupported – MAR: Activate/deactivate
Memory address area
– IOR: Activate/deactivate I/O
address area
PCI Configuration Address Spaces
• Configuration Mechanism #1
– CONFIG-ADDRESS (0cf8h) and CONFIG-
DATA (0cfch) registers are defined in the I/O
area
31 30 24 23 16 15 11 10 8 7 2 1 0
ECD
PRF
Base Address Type 0
PRF
Base Address 0
AD
Base Address Reserved 0
• Differential Signaling
Electrical Physical Layer Showing
Differential Transmitter and Receiver
PCI Express System
PCI Express Properties
• Packet Based Protocol
• Bandwidth and Clocking
– 2.5 Gbits/sec/lane/direction
– 8b/10b encoding
– 250 Mbytes/sec/lane/direction
• Address Spaces
– Memory
– I/O
– Configuration (extended from 256 Bytes to 4
Kbytes)
PCI Express Transactions
• Transactions
– memory read / write
– I/O read / write
– configuration read / write
– new transaction type: Message transactions
• Transaction Model
– posted (split transaction communication)
– non-posted
PCI Express Properties
• Quality of Service (QoS)
– deterministic latencies and bandwidth
• Traffic Classes (TCs)
– TCs can move through the fabric with different priority
• Virtual Channels (VCs)
– Each Traffic Class is individually mapped to a Virtual Channel
• Interrupt Handling
– Virtual wires
• Power Management
– device power states: D0, D1, D2, D3-Hot and D3-Cold
• D0 is the full-on power state
• D3-Cold is the lowest power state.
– Link power states: L0, L0s, L1, L2 and L3
• Hot Plug Support
• PCI Compatible Software Model
PCI Express Topology
PCI Express Device Layers
PCI Express Transaction Layer Packets
PCI-X-AS (advanced switching) Packet format
The PCI Express AS protocol is inserted into a base PCI Express format. The data
payload, in this case a PCI Express base packet, could be data in any protocol format as PCI
Express AS is protocol agnostic. The PCI Express AS protocol requires a start indicator, or
comma, and an AS header that contains the PI or Protocol Interface and the routing path of the AS packet.