Jump to content

Systematic code

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Nageh (talk | contribs) at 20:33, 20 March 2010 ((almost) complete rewrite). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In coding theory, a systematic code is an error-correcting code in which the input data is embedded in the encoded output. Conversely, in a non-systematic code the output does not contain the input symbols. Systematic codes have the advantage that the parity data can simply be appended to the source block, and receivers do not need to recover the original source symbols if received correctly – this is useful for example if error-correction coding is combined with a hash function for quickly determining the correctness of the received source symbols, or in cases where errors occur in erasures and a received symbol is thus always correct.

Linear codes

The encoding of a linear code can be described by specifying its generator matrix. In a systematic code, this matrix, , can always be written as , where is the identity matrix of size .

Through a theorem[1], every non-systematic linear code can be transformed into a systematic code.

Examples

  • Checksums and hash functions, combined with the input data, can be viewed as systematic error-detecting codes.
  • Linear codes are usually implemented as systematic error-correcting codes (e.g., Reed-Solomon codes in CDs).
  • In DVB-H, for additional error protection and power efficiency for mobile receivers, a systematic Reed-Solomon code is employed as an erasure code over packets within a data burst, where each packet is protected with a CRC: data in verified packets count as correctly received symbols, and if all are received correctly, evaluation of the additional parity data can be omitted, and receiver devices can switch off reception until the start of the next burst.
  • Fountain codes may be either systematic or non-systematic: as they do not exhibit a fixed code rate, the set of source symbols is diminishing among the possible output set.

References

  1. ^ Richard E. Blahut (2003). Algebraic codes for data transmission (2nd ed.). Cambridge. Univ. Press. pp. 53–54. ISBN 9780521553742.