Can some one explain how PCIe uses 10 bits to send 8 bits?

255 views

This text below is hard to understand. Some thing that the PCIe uses 10 bits to send 8 bits because it is a serial bus that it cannot send 8 bits.

Why the computer bus cannot send 8 bits because some thing to do with it being a serial bus or clock.

Quote PCIe is a serial bus with the clock embedded in the data, it needs to ensure that enough level transitions (1 to 0 and 0 to 1) occur for a receiver to recover the clock. To increase level transitions, PCIe uses “8b/10b” encoding, where every eight bits 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. Quote

In: 1

4 Answers

Anonymous 0 Comments

Data is sent by alternating the electric potential between two voltage levels. The time slices when the level is either high or low are chosen by the sender can vary slightly. The receiver needs to have some mechanism for aligning to them. This can be done either by having the clock and data on separate lines, or the clock can be inferred from the data stream. Clock is basically the level alternating in a fixed pattern without any data. High speed connections today are usually serial over only one wire.

If several bytes equal to 0 or 255 (all bits clear or set) are transmitted in a row, the receiver sees a constant voltage for an extended period of time. As this continues, it will lose count of how many time slices have passed, and where the boundary to the next symbol is. A constant level direct current also can’t be easily passed over long cables, where it will tend to decay to zero.

A simple way of avoiding this condition is to allocate two clock intervals for each bit such as 01 for 0, 10 for 1. This cuts the maximum bandwidth in half. 8/10 is a tradeoff allowing for higher throughput. Bit sequences are essentially assigned new codes, skipping over ones with 1 or 0 runs. Because some combinations are not unavailable, additional additional two bits are required to represent all possible inputs.

You are viewing 1 out of 4 answers, click here to view all answers.