Navigation
  • Home
  • Recent
  • Most Active
  • Popular
  • Blog
  • Credits
  • RSS
  •   Interaction
  • Register
  • Statistics
  •   Help
  • Suggestions
  • Contact Us
  • How to Edit
  • Help



  • [Edit]


    A low-density parity-check code (LDPC code) is an error correcting code, a method of transmitting a message over a noisy transmission channel. While LDPC and other error correcting codes cannot guarantee perfect transmission, the probability of lost information can be made as small as desired. LDPC was the first code to allow data transmission rates close to the theoretical maximum, the Shannon Limit.Impractical to implement when developed in 1963, LDPC codes were forgotten. The next 30 or so years of information theory failed to produce anything one-third as effective and LDPC remains, in theory, the most effective developed to date (2006).

    The explosive growth in information technology has produced a corresponding increase of commercial interest in the development of highly efficient data transmission codes as such codes impact everything from signal quality to battery life. Although implementation of LDPC codes has lagged that of other codes, notably the turbo code, the absence of encumbering software patents has made LDPC attractive to some and LDPC codes are positioned to become a standard in the developing market for highly efficient data transmission methods. In 2003 an LDPC code beat six turbo codes to become the new standard for the satellite transmission of digital television.

    LDPC codes are also known as Gallager codes, in honor of Robert G. Gallager, who developed the LDPC concept in his doctoral dissertation at MIT in 1960.


        Low-density parity-check code
            Function
        

                People
                Theory
                Applications

    top

    Function
    LDPC uses a sparse parity-check matrix, similar to those used for decoding Hamming codes.
    This sparse matrix is randomly generated, subject to the sparsity constraints. Decoding them is an NP-complete problem, but there are good approximate decoders. These codes were first designed by Gallager in 1962.
    See sparse graph code.

    Below is a graph fragment of an example LDPC code using Forney's factor graph notation. A message is encoded by placing bits on the
    T's at the top such that the graphical constraints are
    satisfied. Specifically, all lines connecting to an =
    box have the same value, and all values connecting to a
    + box must sum, modulo two, to zero (in other words, they must sum to an even number).

    If we ignore
    constraints for lines going out of the picture, then there are 8
    possible 6 bit strings which correspond to valid codewords: (i.e.,
    000000, 011001, 110010, 111100, 101011, 100101, 001110, 010111). Thus
    this LDPC code fragment represents a 3-bit message with 6 bits. The
    purpose of this redundancy is to aid in recovering from channel errors.

    Again, if we ignore lines going out of the picture, then the parity-check matrix representing this graph fragment is

    mathbf =
    egin
    1 & 1 & 1 & 1 & 0 & 0 \
    0 & 0 & 1 & 1 & 0 & 1 \
    1 & 0 & 0 & 1 & 1 & 0 \
    end


    In this matrix, each row represents one of the three parity-check constraints, whereas each column represents one of the six bits in the received codeword.

    Imagine that the 5th message, 101011, is transmitted across a binary erasure channel
    and received with the 1st and 4th bit erased to yield ?01?11. We know
    that the transmitted message must have satisfied the code constraints
    which we can represent by writing the received message on the top of
    the factor graph as shown below.

    We can now solve for the missing bits using an algorithm which is
    commonly referred to as belief propagation. In this case, the
    first step of belief propagation is to realize that the 4th bit must
    be 0 to satisfy the middle constraint.

    Now that we have decoded the 4th bit, we realize that the 1st bit must
    be a 1 to satisfy the leftmost constraint.

    Thus we are able to iteratively decode the message encoded with our
    LDPC code.

    We can validate this result by multiplying the corrected codeword r by the parity-check matrix H:

    mathbf = mathbf

    top


    egin
    1 & 1 & 1 & 1 & 0 & 0 \
    0 & 0 & 1 & 1 & 0 & 1 \
    1 & 0 & 0 & 1 & 1 & 0 \
    end

    egin
    1 \ 0 \ 1 \ 0 \ 1 \ 1 \
    end

    top


    egin
    0 \ 0 \ 0 \
    end


    Because the outcome z of this operation is the 3 x 1 zero vector, we have successfully validated the resulting codeword r.

    top

    People

    top

    Theory

    top

    Applications
      DVB-S2 (Digital video broadcasting)
      WiMAX (IEEE 802.16e standard for microwave communications)
     
    Search more:
     

       
    Source Privacy License Download Contact Us Atlas
    Scientus.org Dictionary (Yet Another Wiki) RC : 1.39
    This article is licensed under the GNU Free Documentation License [copyleft]. It uses material from the Wikipedia article "Low-density parity-check code". link