PCIe (PCI Express)
PCI Express is a high-speed serial interconnect standard for connecting processors to peripherals such as GPUs, SSDs, NICs, and FPGAs. It uses a layered architecture (Transaction, Data Link, Physical) with point-to-point differential lane pairs. Link widths scale as ร1, ร2, ร4, ร8, ร16, and speeds have progressed from 2.5 GT/s (Gen1) to 32 GT/s (Gen5) and beyond.
๐ PCIe Key Features
- Serial Point-to-Point: Differential TX/RX pairs per lane, scalable ร1 to ร16
- Layered Architecture: Transaction Layer (TLPs) โ Data Link Layer (DLLPs, CRC, retry) โ Physical Layer (encoding, training)
- LTSSM: Link Training and Status State Machine manages link bring-up, speed negotiation, power states, and error recovery
- Generations: Gen1 (2.5 GT/s), Gen2 (5 GT/s), Gen3 (8 GT/s), Gen4 (16 GT/s), Gen5 (32 GT/s)
- Encoding: 8b/10b (Gen1โ2), 128b/130b (Gen3+)
- Power Management: L0s, L1, L2 low-power link states
- Error Handling: CRC, ACK/NAK retry, ECRC, Advanced Error Reporting (AER)
๐ PCIe LTSSM (Link Training and Status State Machine)
Detect.Quiet ยท Initial power-on state. Waiting to detect a receiver on the other end of the link.
๐ก Click state nodes to jump directly | Use buttons below to trigger events | ๐จ Yellow = Current State
๐ PCIe TLP Timing Waveform
๐ง JSON Editor
๐ LTSSM State Descriptions
โก PCIe Generations
| Gen | Transfer Rate | Encoding | Bandwidth ร1 | Bandwidth ร16 | Year |
|---|---|---|---|---|---|
| Gen1 | 2.5 GT/s | 8b/10b | 250 MB/s | 4 GB/s | 2003 |
| Gen2 | 5 GT/s | 8b/10b | 500 MB/s | 8 GB/s | 2007 |
| Gen3 | 8 GT/s | 128b/130b | ~984 MB/s | ~15.8 GB/s | 2010 |
| Gen4 | 16 GT/s | 128b/130b | ~1969 MB/s | ~31.5 GB/s | 2017 |
| Gen5 | 32 GT/s | 128b/130b | ~3938 MB/s | ~63 GB/s | 2019 |
| Gen6 | 64 GT/s | 1b/1b (PAM4) | ~7877 MB/s | ~126 GB/s | 2022 |
๐ฆ PCIe Packet Types
| Layer | Packet | Purpose | Key Fields |
|---|---|---|---|
| Transaction | TLP | Data transfer (read, write, completion, config, message) | Fmt, Type, Length, Requester/Completer ID, Address, Data |
| Data Link | DLLP | Link management (ACK/NAK, flow control, power mgmt) | DLLP Type, Credits, CRC-16 |
| Physical | Ordered Sets | Training (TS1/TS2), skip, compliance, EIEOS | COM, TS identifier, lane/link numbers, speed |
๐ PCIe vs Other Interconnects
PCIe Gen5 ร16: 63 GB/s
CXL 3.0: 64 GB/s
USB4: 5 GB/s
PCIe: Point-to-point
PCI: Shared bus
CXL: Point-to-point
PCIe: ร1,ร2,ร4,ร8,ร16
USB4: ร1,ร2
Thunderbolt: ร1
GPU, NVMe SSD
Network cards
FPGA accelerators