Transfer Speeds Explained: Gigatransfers per Second (GT/s)#
Your PCIe bus may support, e.g., 8 GT/s. What does that mean?
Transfer speeds are usually specified in Gbit/s, Gbps, or Gigabits per second, but GT/s stands for Gigatransfers per second.
The difference has to do with the encoding of the data. Because PCIe is a serial bus with the clock embedded in the data, it needs to ensure that enough level transitions (from 1 to 0 and from 0 to 1) occur for a receiver to recover the clock. To increase level transitions, PCIe uses 8b/10b encoding, where 8-bit groups are encoded into a 10-bit symbol that is then decoded at the receiver. Thus, the bus needs to transfer 10 bits to send 8 bits of encoded data.
Info
With PCIe Gen 3, the coding was changed to 128b/130b, which increased the effective data rate from around 80 % to more than 98 %. The communication is much more efficient.
So when talking about 8 GT/s it means that 8 Gbit/s of raw data are transferred per cycle per lane. That is 7.88 Gbit/s or 984.6 MB/s of payload data per lane.
The table below shows an overview of the most common PCIe speeds:
PCIe Generation | Bit Encoding | Transfer Rate [GT/s] | Throughput for 1 Lane (x1) [MB/s] | Throughput for 4 Lanes (x4) [MB/s] |
---|---|---|---|---|
1.0 | 8b/10b | 2.5 | 250.0 | 1000.0 |
2.0 | 8b/10b | 5.0 | 500.0 | 2000.0 |
3.0 | 128b/130b | 8.0 | 984.6 | 3940.0 |
4.0 | 128b/130b | 16.0 | 1969.0 | 7880.0 |