Fibre Channel Protocol Architecture Fibre Channel Layered Model
8b/10b Encoding
• Multiple 10b characters for each 8b Byte:
– 6 ones and 4 zeros = Positive disparity – 4 ones and 6 zeros = Negative disparity – 5 ones and 5 zeros = Neutral disparity
Byte
0xDF
Bits
11011111
Encoded
0101000110 1010110110
Disparity
+
-
Transmission characters always have either:
• Positive disparity: 6 ones and 4 zeros • Negative disparity: 4 ones and 6 zeros • Neutral disparity: 5 ones and 5 zeros
The 8b/10b scheme defines multiple transmission characters for each 8-bit data byte. Because the encoder can choose between multiple 10-bit representations for each 8-bit byte, it can balance the number of ones and zeros in the data stream. The imbalance between the number of 1s and 0s— known as the running disparity—is continually re-evaluated. To balance the number of ones and zeros, every transmitted byte is encoded into one of two possible 10-bit representations depending on the current running disparity.