Generations
What the usable rate is made of
The rate on the ladder is the bottle strength; the usable bandwidth is the drink, and the deductions are the mixer.
What the rate is made of
The number on the PCI Express ladder is a recipe, not a reading: raw symbol rate per lane, minus encoding overhead, minus packet overhead, equals the usable bandwidth the software actually sees. This page decomposes the figure the way a recipe decomposes into ingredients, because quoting the headline rate without its deductions is the most common error in the field.
The ingredients are separable. The raw figure, 8 GT/s or 16 GT/s or 32 GT/s per lane, is the symbol rate on the wire. The first deduction is encoding: the early generations paid a fifth of their rate to the 8b/10b scheme, the later ones pay a few per cent to 128b/130b. The second deduction is packet structure: every transaction layer packet carries a header and framing that are not payload. The third is protocol traffic: acknowledgments and flow control updates consume the same wire. What remains after the deductions is the figure a benchmark can actually approach.
The recipe reading is a habit from other measured crafts. The aperitivo desk that keeps an aperitivo notebook treats a Negroni the same way: the balance of bitter, sweet and dilution is the drink, and quoting the bottle's strength without the build is quoting the headline figure. A link rate is a build: the headline is the bottle strength, and the deductions are the mixer.
How much does each ingredient cost?
Encoding first, because it is the largest single deduction. Under 8b/10b every ten symbols carry eight bits of data, a fixed twenty per cent tax. Under 128b/130b the tax falls to about 1.5 per cent, which is why the generation that changed encoding gained usable bandwidth beyond its rate increase. Packet overhead is variable: small transactions pay proportionally more header per payload byte, so the usable figure depends on the traffic mix, and a datasheet's bandwidth claim assumes a favorable one. Protocol traffic is the quietest deduction: acknowledgment and flow control packets share the wire, and under heavy bidirectional load their share is not zero.
The full arithmetic is worked on the encoding and usable bandwidth page, and the raw figures it starts from are listed in the link speed table. The general concept is summarized in the article on overhead, read on September 6, 2026.
| Ingredient | Typical cost | Where it is charged |
|---|---|---|
| Raw symbol rate | The headline figure, per lane | The wire |
| Encoding | 20 per cent at 8b/10b, about 1.5 per cent at 128b/130b | Every symbol |
| Packet structure | Header and framing per TLP | Every transaction, worse on small ones |
| Protocol traffic | Acknowledgment and flow control packets | Continuous, under load |
Why does the usable figure resist a single number?
Because the deductions are not all constant. Encoding is fixed by generation; packet overhead depends on payload size; protocol traffic depends on the transfer pattern. A spec sheet that quotes one usable number has chosen a traffic mix to quote it against, and a reader who quotes it without the mix has quoted a best case as a property. The honest form of the figure is the rate, the encoding, and the traffic assumption, all three, or none at all.
The same caution applies to the width multiplier. The figures scale by the negotiated width, and the width on the bench is the width the link actually trained, described on what every lane carries: the recipe's total is per active lane, not per slot label.
Where does the deduction show up in practice?
At the copy benchmark that never reaches the headline. A storage device on a x4 link that delivers three quarters of the slot's named rate is not underperforming; it is delivering the recipe's remainder. The gap between the advertised figure and the measured one is the size of the deductions under that traffic, and reading the gap as a defect is the beginner's version of reading the bottle strength as the strength of the drink.
Checks for decomposing a rate
- Start from the raw per-lane figure and the generation's encoding before any bandwidth claim.
- Name the traffic mix behind a usable figure: small payloads pay more overhead per byte.
- Multiply by the negotiated width, not the slot's label.
- Reserve a share for protocol traffic before calling a measured gap a defect.
Common mistakes
- Quoting the wire rate as the usable rate: the encoding tax is not optional.
- Comparing generations on headline alone: the encoding change hides part of the gain.
- Benchmarking with one traffic mix and generalizing the figure.
- Reading a measured shortfall as a fault before the recipe's deductions are priced.
The rate on the ladder is the bottle strength; the usable bandwidth is the drink. Read the recipe before quoting either, and the gap between datasheet and benchmark stops being a surprise.
A rate figure is not a single number. It combines the signalling rate per lane with the encoding overhead, and the usable data rate follows from both. The same nominal generation can therefore appear under more than one published value once encoding changes are taken into account. Readers who need to match a figure to the revision it came from can consult two figures, two editions, where the rate ladder is set out against the specifications that define it, with revision notes dated to each entry.
The page behind these facts
The encodings and their overheads are documented in the 8b/10b article and the 64b/66b-family article, and the overhead concept in the article linked above, all read on September 6, 2026. The desk's own arithmetic is on the encoding and usable bandwidth page.