×

IPHD (iterative parallel hybrid decoding) of various MLC (multi-level code) signals

  • US 7,383,487 B2
  • Filed: 12/20/2004
  • Issued: 06/03/2008
  • Est. Priority Date: 01/10/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A decoder that is operable to perform IPHD (Iterative Parallel Hybrid Decoding) on a MLC (Multi-Level Code) LDPC (Low Density Parity Check) signal, the decoder comprising:

  • an initialize edge message functional block that is operable to;

    receive I, Q (In-phase, Quadrature) values corresponding to a symbol of the MLC LDPC signal; and

    initialize a plurality of edge messages with respect to a plurality of bit nodes to a plurality of predetermined values for each level of the MLC LDPC signal;

    a plurality of check engines in a parallel arrangement that includes a separate check engine that corresponds to each level of the MLC LDPC signal that is operable to;

    for each level of the MLC LDPC signal, the corresponding check engine of the plurality of check engines is operable to receive the initialized plurality of edge messages with respect to a plurality of bit nodes from the initialize edge message functional block; and

    for each level of the MLC LDPC signal, the corresponding check engine of the plurality of check engines is operable to perform check node processing that involves updating a plurality of edge messages with respect to a plurality of check nodes;

    a symbol update engine that is operable to;

    for each level of the MLC LDPC signal, receive the updated plurality of edge messages with respect to the plurality of check nodes from the plurality of check engines;

    receive the I, Q values corresponding to the symbol of the MLC LDPC signal;

    calculate a plurality of symbol metrics using the I, Q values;

    calculate a plurality of LLR (Log-Likelihood Ratio) bit metrics using the plurality of symbol metrics;

    calculate a plurality of logarithms of probabilities of bits of the symbol of the MLC LDPC signal using the plurality of LLR bit metrics and the updated pluralities of edge messages with respect to the plurality of check nodes corresponding to all levels of the MLC LDPC signal; and

    estimate a logarithm of a probability of the symbol of the MLC LDPC signal using the plurality of logarithms of probabilities of bits of the symbol of the MLC LDPC signal using and at least one symbol metric of the plurality of symbol metrics; and

    a plurality of bit engines in a parallel arrangement that includes a separate bit engine that corresponds to each level of the MLC LDPC signal that is operable to;

    receive the estimate of the logarithm of the probability of the symbol of the MLC LDPC signal;

    for each level of the MLC LDPC signal, the corresponding bit engine of the plurality of bit engines is operable to receive the updated plurality of edge messages with respect to the plurality of check nodes; and

    for each level of the MLC LDPC signal, the corresponding bit engine of the plurality of bit engines is operable to perform bit node processing that involves updating a plurality of edge messages with respect to a plurality of bit nodes.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×