Skip to Main Content
Techniques are proposed for transparently recapturing part of the capacity of a cyclic redundancy check (CRC) and using the recaptured capacity to carry a secondary communication channel. To do this, a transmitter induces CRC violations in outbound packets of a primary channel according to a set of error templates that are known to both the transmitter and the receiver, and that map one-to-one onto a set of secondary-channel-data words. The receiver corrects the errors by constrained trial and error to deduce which template the transmitter used, and consequently the intended secondary data. Imposing a P -bit-per-packet secondary channel is shown to reduce the performance of the primary channel's CRC as though the degree of the generator polynomial had been reduced by P , where P is an integer. The technique is extended to recapture CRC capacity in fractional-bit increments by permitting only certain codewords to bear the secondary channel. A further extension uses a set of generators mapped one-to-one onto the set of secondary-channel words and known a priori to both the transmitter and receiver. A secondary channel is provided by selecting each packet's primary-channel CRC generator in response to a desired secondary-channel word. A variant of this technique improves the performance of the CRC by selecting the generator according to transmission performance or packet length rather than carrying a secondary channel.
Note: The Institute of Electrical and Electronics Engineers, Incorporated is distributing this Article with permission of the International Business Machines Corporation (IBM) who is the exclusive owner. The recipient of this Article may not assign, sublicense, lease, rent or otherwise transfer, reproduce, prepare derivative works, publicly display or perform, or distribute the Article.