02 01&07 PCI-SIG Architecture Overview FROZEN
02 01&07 PCI-SIG Architecture Overview FROZEN
Architecture Overview
Richard Solomon
LSI Corporation
9 Evolutionary
– System BIOS maps devices then operating systems boot and
run without further knowledge of PCI
– PCI-aware O/S could gain improved functionality
9 Evolutionary
– PCI compatible at hardware *AND* software levels
– PCI-X 266/533 added as “mid-life” performance bump
• 2133MB/sec at PCI-X 266 and 4266MB/sec at PCI-X 533
9 Evolutionary
– PCI compatible at software level
• Configuration space, Power Management, etc
• Of course, PCIe-aware O/S can get more functionality
– Transaction layer familiar to PCI/PCI-X designers
– System topology matches PCI/PCI-X
– PCIe 2.0 doubled bandwidth from 250MB/s/lane to 500MB/s/lane
– PCIe 3.0 will double again to 1GB/s/lane!
PCI-to-PCI PCI-to-PCI
Bridge Bridge
Primary = 0 Primary = 4
Secondary = 1 Secondary = 5
Subord = 3 Subord = 5
PCI-to-PCI PCI-to-PCI
Bridge Bridge
Primary = 1 Primary = 1
Secondary = 2 Secondary = 3
Subord = 2 Subord = 3
PCI Bus 2
PCI Bus 3
Device Identification 3 2
Byte
1 0
(in decimal)
Class Code
Register
Revision
ID
02
04
Base Address 0
9 Subsystem DeviceID: Vendor Base Address 1 05
Base Address 3 07
09
determine required size and maps Base Address 5
10
appropriately CardBus CIS Pointer
Subsystem ID Subsystem 11
Vendor ID
9 Memory, I/O, and bus-master Expansion ROM
Base Address
12
14
Base Address 0 04
Base Address 1 05
Base Address 2 06
Base Address 3 07
Base Address 4 08
Base Address 5 09
Subsystem ID Subsystem 11
Vendor ID
Expansion ROM 12
Base Address
Reserved Capabilities
Pointer
13 Capabilities List “Head”
Reserved 14
31 20 19 16 15 8 7 0
Pointer to Next
Version Capability ID Dword 0
Capability
Dword 1
Feature-specific Configuration Registers
Dword n
par or
PCI-X 66 3.3V 533 266 N/A 256 yes
ECC
par or
PCI-X 133 3.3V 1066 533 N/A 256 yes
ECC
Mode 2
PCI-X 533 1.5V 4266 2133 1066 ECC 4K yes
* For lower bus speeds, # slots / bus is implementation choice to share bandwidth
97 ns setup time
Receiver Decodes Receiver
Asserts Logic Responds
Signal
1 2 3
PCI @ 66MHz
PCI Clock, 66 MHz
9 15 ns period
Sender
9 3ns setup time
Asserts Receiver
PCI-X registered
Signal Responds
Propagation delay
across bus
Receiver Decodes Logic protocol allocates
3
PCI -X Clock
1 2
a full clock period
for logic decision
Sender
Asserts
Signal
Receiver
registers Receiver Receiver 9 @ 66MHz - 15ns
signal Decodes Logic Responds
9 @ 133MHz - 7.5ns
Propagation delay across bus
C/BE# BUS CMD ATTR BE#'s-0 BE#'s-1 BE#'s-2 BE#'s-3 BE#'s-4 BE#'s-5
C/BE# BUS CMD BE#'s-0 BE#'s-1 BE#'s-2 BE#'s-3 BE#'s-4 BE#'s-5
FRAME#
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
FRAME#
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
IRDY#
IRDY#
TRDY#
TRDY#
DEVSEL# DEVSEL#
(Common clock)
AD ADDRESS ATTR DATA-0 DATA-1 DATA-2 DATA-3 DATA-4 DATA-5 AD ADDR ATTR 0 1 2 3 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(Strobe)
C/BE# BUS CMD ATTR BE#'s-0 BE#'s-1 BE#'s-2 BE#'s-3 BE#'s-4 BE#'s-5
C/BE# BUS CMD ATTR
FRAME#
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
FRAME#
IRDY#
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
Data Transfer
IRDY#
TRDY#
TRDY#
DEVSEL#
DEVSEL#
Bus Transaction
RO -- Relax ordering
NS -- No Snoop
R -- Reserved
RO -- Relaxed ordering
Completer Attributes
3 0 31 30 29 28 24 23 16 15 11 10 08 07 00
B S S Completer Completer Completer
Upper Lower
C C C R Bus Device Function
Byte Count Byte Count
M E M Number Number Number
C/BE[3:0]# AD[31:0]
Bandwidth MegaBytes/sec
200 200
125 125
40% 40%
1 2 3 4 5 1 2
9 D0 – operating normally
9 D1 – reduced power
9 D2 – reduced power
– In both D1/D2, the device can’t *do* anything on the
bus except respond to configuration cycles
9 D3cold – device powered off
9 D3hot – device all but powered off
Transaction a 9
9
Protocol
Configuration
Chipset
PCI Express
“Root Complex”
Port(s)
PCI Express PCI Express PCI Express PCI Express PCI Express
Endpoint Endpoint Endpoint Endpoint Endpoint
Device Device Device Device Device