When mapping symbols of various modulation constellations, Gray code is used such that - each adjacent symbol only differs by one bit. Why do we want small physical changes in the signal to correspond to small changes in the symbol ? Why not use binary mapping ?
-
1\$\begingroup\$ Using gray code means that in the presence of an incorrect slice/demap it's more likely only one bit will be wrong. If you used binary, you might get two bits wrong in such a case. Given the improved probability of getting only one bit wrong using gray coded symbols, the addition of error-correction codes is now also more meaningful as they can be easily designed to correct single-bit errors. \$\endgroup\$– jonkOct 21, 2020 at 3:23
1 Answer
Because of noise and channel distortion.
Any noise or distortion would result in a change in amplitude and phase of receiving symbols. So for instance in 16-QAM with 4-bit words, if an amount of distortion causes a symbol to place in the adjacent room, we will have only one bit error while other 3 bits are ok. In this case if we use binary sequence, the same amount of distortion could end up more losses, even the all bits of the symbol.
-
1\$\begingroup\$ So in other words it's done to make the job for the FEC module easier ? \$\endgroup\$– shaikoOct 21, 2020 at 8:05
-
\$\begingroup\$ Yes, using Gray code reduces the overall error rate with respect to the case of using normal-binary code. And of course, makes error correction process much more easier. \$\endgroup\$ Oct 21, 2020 at 8:29