In high-speed serial data transmission, transmit data is coded as synchronized traffic. Data and clock are combined as single signal to send and receiver can easily and accurately divide data and clock. To reach satisfying error rate, the key technology lies in coding of serial transmission. At present most of high-speed serial standards uses 8B/10B coding, such as fiber channel, PCI－Express, ATA and Ethernet. XAUI and serial SCSI use 8B/10B coding and better solve the following problem:
1. Translation density: Ensure that there is enough signal translation in data traffic. It uses 8/10 coding. Continuous “1” and “0” cannot exceed five. The phased-locked loop (PLL) of receiver can work and avoid data loss caused by clock float or synchronization loss.
2. Compensation: In high-speed data transmission, differential signal is often used. DC component should be little as much as possible. 8B/10B has DC compensation. The link will not have DC offset with the change of time.
3. Check: 8B/10B coding uses redundancy. It codes 8-bit data and some special rule as 10-bit data. According to these rules, it can check error information during transmission.
4. Special Character: 8B/10B coding rules some special characters. It can be used as frame synchronization character and other delimiter or control character.
8B/10B coding is developed by IBM Company. Change 8-bit code as 10-bit code of serial transmission. 8B/10B coding ensures related balance combination of 1 and 0. It is not related with value. It simplifies clock recovery and reduces the cost of receiver. The coding offers other bit that promotes error check. 8B/10B coding offers a set of basic data and control character of serial communication. Much independent standards is based on this public character and define higher protocol layer.