In short: Each PCIe generation keeps the same differential serial lanes but climbs in bit rate by changing the line code (8b/10b → 128b/130b), the modulation (NRZ → PAM4 at Gen6), and the equalization that reopens an eye the channel has almost closed.
Why the physical layer dominates PCIe scaling
PCI Express moves data over point-to-point differential lanes: two wires per direction carrying equal-and-opposite swings (typically ~800 mV differential, AC-coupled). A link is x1 to x16 such lanes running in parallel. The headline numbers you see quoted — 2.5, 5.0, 8.0, 16.0, 32.0 and 64.0 GT/s for Gen1 through Gen6 — are per-lane transfer rates, and the gap between that raw rate and usable throughput is almost entirely a physical-layer story: how bits are encoded, how the transmitter pre-distorts them, and how the receiver claws the signal back out of a lossy FR-4 channel.
A 16 GT/s (Gen4) x16 link delivers ~31.5 GB/s each way after encoding overhead — roughly double Gen3, with no change in lane count or connector pinout.
Line coding: from 8b/10b to 128b/130b
Serial links need DC balance and enough transitions for clock recovery, because PCIe is embedded-clock — there is no separate clock wire; the receiver's CDR (clock-data recovery) PLL locks onto the data edges. Gen1/Gen2 used 8b/10b: every 8 payload bits became a 10-bit symbol, guaranteeing transitions and bounded running disparity, but costing a brutal 20% overhead. That is why 5 GT/s Gen2 yields only 500 MB/s per lane, not 625.
From Gen3 onward PCIe switched to 128b/130b: 128 payload bits wrapped with a 2-bit sync header, just 1.5% overhead. DC balance and transition density are instead provided by a scrambler (a LFSR that XORs the data). This single change is why Gen3 at 8 GT/s beats twice-Gen2: the rate went 5→8 GT/s (1.6×) but effective throughput nearly doubled because the tax dropped from 20% to 1.5%.
| Gen | Rate (GT/s) | Encoding | Modulation | ~GB/s per lane |
|---|---|---|---|---|
| 1 | 2.5 | 8b/10b | NRZ | 0.25 |
| 2 | 5.0 | 8b/10b | NRZ | 0.50 |
| 3 | 8.0 | 128b/130b | NRZ | ~0.985 |
| 4 | 16.0 | 128b/130b | NRZ | ~1.97 |
| 5 | 32.0 | 128b/130b | NRZ | ~3.94 |
| 6 | 64.0 | 242B FLIT + FEC | PAM4 | ~7.56 |
Equalization: reopening a closed eye
At 8 GT/s and above, an FR-4 trace plus two connectors can impose 20–35 dB of insertion loss at Nyquist. High frequencies attenuate more than low ones, so a sharp edge smears into the next bit — inter-symbol interference (ISI). Left uncorrected, the "eye" at the receiver is fully closed and the bit error rate is hopeless. Three equalizers cooperate:
- Tx FFE (feed-forward, 3-tap in Gen3+): the transmitter pre-emphasizes edges and de-emphasizes steady bits so the channel's low-pass response arrives roughly flat.
- Rx CTLE (continuous-time linear equalizer): an analog high-pass boost that lifts the attenuated high-frequency content.
- Rx DFE (decision-feedback equalizer): a non-linear block that subtracts the known ISI contribution of already-decided bits, with no noise amplification.
PCIe negotiates the Tx FFE coefficients during link training. The receiver measures its eye and requests preset/coefficient changes from the far-end transmitter through the LTSSM's Recovery.Equalization sub-states — the handshake we cover in depth in the LTSSM link-training walkthrough. In practice you validate all of this in a SerDes toolchain: Synopsys HSPICE/StatEye or Cadence Sigrity for channel and IBIS-AMI simulation, and Siemens HyperLynx for board-level SI closure before tape-out.
Gen6 and the jump to PAM4
NRZ (two levels, one bit per symbol) ran out of road: pushing to 128 GT/s NRZ would need ~32 GHz of clean channel, which FR-4 simply cannot deliver. Gen6 instead keeps the symbol rate at 32 GBd but uses PAM4 — four voltage levels encoding two bits per symbol — doubling throughput to 64 GT/s. The catch: three stacked eyes mean the vertical margin per eye shrinks to one third, so SNR drops ~9.5 dB. PCIe 6.0 answers this with mandatory lightweight forward error correction and a fixed FLIT (flow-control unit) format, trading a tiny latency budget for a workable raw BER (~1e-6 corrected to ~1e-12). Gen6 therefore needs a gray-coded PAM4 SerDes and far more elaborate DFE than any prior generation.
PAM4 packs 2 bits per symbol but costs ~9.5 dB of SNR — which is why FEC became mandatory in PCIe 6.0 rather than optional.
If you are building or verifying this silicon, the same signal-integrity discipline underpins custom SerDes IP — see the design-services view at Avecas VLSI design services. For a structured path through protocols, timing and SI, browse our course catalog or the companion article on FLIT mode and forward error correction.
FAQ
Why does PCIe have no separate clock line?
It uses an embedded clock recovered by the receiver's CDR from data transitions. The scrambler and 8b/10b/128b/130b coding guarantee enough edges for the PLL to stay locked, saving pins and avoiding skew between clock and data at multi-GHz rates.
What is the difference between pre-emphasis and de-emphasis?
They are two views of the same Tx FFE action: boosting the amplitude of transition bits (pre-emphasis) or attenuating non-transition bits (de-emphasis). Both pre-distort the waveform so the channel's frequency-dependent loss yields a flat, open eye at the receiver.
Does a higher PCIe generation change the connector?
No. Gen1 through Gen6 share the same mechanical connector and lane structure; the physical layer changes are in the encoding, modulation and equalization, so a Gen5 card is backward compatible in a Gen3 slot (negotiated down during training).
Why did Gen6 switch to PAM4 instead of just raising the NRZ rate?
Doubling NRZ to 128 GT/s would require roughly 32 GHz of usable channel bandwidth, which standard PCB materials and connectors cannot provide. PAM4 doubles data per symbol while holding the symbol rate at 32 GBd, keeping the channel demands realistic.
Want to simulate eye diagrams, tune FFE/DFE taps and master link training hands-on? Join the CourseTron High-Speed SerDes & PCIe Protocol course and the companion training track at ChipXpert.