Professional Documents
Culture Documents
Background
Richard Solomon
Synopsys
Evolutionary
– System BIOS maps devices then operating systems boot and
run without further knowledge of PCI
– PCI-aware O/S could gain improved functionality
– PCI 2.1 (1995) doubled bandwidth with 66MHz mode
Evolutionary
– PCI compatible at hardware *AND* software levels
– PCI-X 2.0 (2003) doubled bandwidth
• 2133MB/sec at PCI-X 266 and 4266MB/sec at PCI-X 533
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 (2006) doubled per-lane bandwidth: 250MB/s to 500MB/s
– PCIe 3.0 (2010) doubled again to 1GB/s/lane… PCIe 4.0 will double
again to 2GB/s/lane!
PCIe Technology Seminar Copyright © 2014, PCI-SIG, All Rights Reserved 7
PCI Concepts
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
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
Bandwidth MegaBytes/sec
200 200
125 125
40% 40%
1 2 3 4 5 1 2
Signal Link
Wire Lane
Root Complex
Bus 0 (Internal) Memory
Switch
PCIe PCIe 3 Switch PCIe Virtual
PCI
Endpoint Endpoint PCIe Bridge
Bus 2
Bridge To
Virtual Virtual Virtual
PCIe 4 PCIe 5 PCI/PCI-X PCI PCI PCI
Bridge Bridge Bridge
PCIe Legacy
Endpoint Endpoint PCI/PCI-X
Bus 8
Legend
PCI Express Device Downstream Port
PCI Express Device Upstream Port
PCIe Technology Seminar Copyright © 2014, PCI-SIG, All Rights Reserved 26
Transaction Types,
Address Spaces
Request are translated to one of four transaction types by
the Transaction Layer:
1. Memory Read or Memory Write. Used to transfer data from or to a
memory mapped location.
– The protocol also supports a locked memory read transaction variant
2. I/O Read or I/O Write. Used to transfer data from or to an I/O location.
– These transactions are restricted to supporting legacy endpoint
devices
3. Configuration Read or Configuration Write. Used to discover device
capabilities, program features, and check status in the 4KB PCI Express
configuration space.
4. Messages. Handled like posted writes. Used for event signaling and
general purpose messaging.
MRd FSB
Requester:
-Step 1: Root Complex (requester)
initiates Memory Read Request (MRd) Root Complex
-Step 4: Root Complex receives CplD DDR
SDRAM
MRd CplD
Switch A Switch C
MRd
CplD
MRd CplD
Completer:
Endpoint Endpoint -Step 2: Endpoint (completer)
receives MRd
-Step 3: Endpoint returns
Completion with data (CplD)
PCIe Technology Seminar Copyright © 2014, PCI-SIG, All Rights Reserved 29
DMA Transaction
Processor Processor
FSB
Completer:
-Step 2: Root Complex (completer)
receives MRd Root Complex
-Step 3: Root Complex returns DDR
Completion with data (CplD) SDRAM
CplD MRd
Switch A Switch C
CplD
MRd
CplD MRd
Requester:
Endpoint Endpoint -Step 1: Endpoint (requester)
initiates Memory Read Request (MRd)
-Step 4: Endpoint receives CplD
PCIe Technology Seminar Copyright © 2014, PCI-SIG, All Rights Reserved 30
Peer-to-Peer Transaction
Processor Processor
FSB
Root Complex
DDR
SDRAM
CplD MRd MRd CplD
Switch A Switch C
CplD
Link
Link
Ordered-Set Ordered-Set
Physical Layer Physical Layer
Transmitted Received
Link
Transmitter Receiver
Receiver sends Flow Control Packets (FCP) which are a type of DLLP (Data Link Layer Packet)
to provide the transmitter with credits so that it can transmit packets to the receiver
Replay
Buffer De-mux De-mux
Error
Mux Mux Check
Tx Rx Tx Rx
DLLP
ACK /
NAK
Link
TLP
Sequence TLP LCRC
M-PCIe
https://www.pcisig.com/specifications/pciexpress/specifications/ECN_M-
PCIe_22_May_2013.pdf
L1 PM Substates
https://www.pcisig.com/specifications/pciexpress/specifications/ECN_L1_PM_S
ubstates_with_CLKREQ_31_May_2013_Rev10a.pdf