Re: PAM5 and 8B10B and FEC
Thank you, Albert Widmer: You wrote the code
so you know it best.
My two conclusions are unchanged:
1) it is useless to add the 8b/10b coding in a PAM-5
scheme, since the two main advantages of this coding,
good DC balance and low running disparity, are not
conserved in a 5-level transmission scheme. You
still will need to add a scrambler to randomize the
transmitted symbols in order to get a reasonable
good DC balance. You just waste gates by adding
the 8b/10b coder in a PAM-5 transmission scheme.
2) even 442 independent "raw" symbols (instead of
my original 524) are too much:
5^4 = 625 < 2 * 442 = 884
so we do not have enough unused points in the
4-dimensional constellation in order to be able
to add Trellis coding and get coding gain using FEC.
Therefore, if one would still want to have both
the 8b/10b coder and FEC in a PAM-n transmission
scheme, he would be forced to go to a PAM-6 scheme
using the same baud rate or keep PAM-5 but increase
the baud rate.
Jaime E. Kardontchik
San Jose, CA 95131
> Reference: Note by Jaime Kardontchik, same subject, dated 03/02/2000
> 02:15:57 AM
> I wish to correct a common misconception about Fibre Channel 8B/10B code.
> You wrote: "Now, if you also want to add the 8b/10b coding, your 'raw' data
> becomes now something more than 512 symbols: 256 for Current RD(-) and
> another 256 symbols for Current RD(+) plus another 12 symbols
> corresponding to valid special code groups, like K28.5 and K28.7. In total,
> your raw data after adding 8b/10b consists of 524 different symbols."
> The actual number of symbols for 8B/10B code is 440 plus 2 for every
> control character used, e.g. 242 for Fibre Channel.
> The code is partitioned into a 6B and a 4B part. The 6B part consists of 18
> disparity independent vectors and 14 (13 for data, 1 for control) disparity
> dependent vectors. Similarly, the 4B part consists of 4 disparity
> independent and 5 disparity dependent vectors. Therefore, for data, we have
> 18x4 = 72 disparity independent 10B vectors and 256-72 = 184 disparity
> dependent vectors. So, the total number of 10B data vectors is 72+(2x184) =
> 440. Since all control characters are disparity dependent, you have to add
> 2 vectors for each control character used.
> Albert Widmer
> IBM T.J. Watson Research Center
> Yorktown Heights, NY 10598-0218
> email: widmer@xxxxxxxxxx