Abstract:
Method of decoding LDPC codes such as IRA codes used in the DVB-S2 standard, the code graph comprising first variable nodes (systematic), second variable nodes (parity) having a degree two, and check nodes connected to second variable nodes by a zigzag connectivity, the method comprising a) grouping the check nodes into at least one group, the check nodes of each group being connected by variable nodes called internal variable nodes, b) performing for each group (GR i ) the following sub-steps b1) and b2): b1) jointly updating (71) all the check nodes of said group by using an algorithm of the Maximum-A-Posteriori (MAP) type on a two-state trellis, b2) updating (72,73) all the first variable nodes and all the second variable nodes (PN i-1,i ; PN i,i+1 ) connected to said group except said at least one internal second variable node, c) iteratively repeating step b) When using a plurality of groups, a corresponding plurality of trellis windows are LogMAP decoded without training period since connecting parity nodes are updated according the sum-product algorithm.
Abstract:
The LDPC decoder (1) for decoding codewords, comprises processing means for updating messages exchanged iteratively between variable nodes (VN i ) and check nodes (CN i ) of a bipartite graph of said LDPC code. The decoder architecture is a partly parallel architecture clocked by a clock signal. The processing means comprises P processing units (PU i ). First variable nodes (IN i ) and check nodes (CN i ) are mapped on the P processing units (PU i ) according to two orthogonal directions. The decoder comprises P main memory banks (MMB i ) assigned to the P processing units (PU i ) for storing all the messages iteratively exchanged between said first variable nodes (IN i ) and the check nodes (CN i ). Each main memory bank (MMB i ) comprises at least two single port memory partitions (MP i ) and one buffer (BUF i ), the decoder also comprises a shuffling network (SN) and a shift memory (SM).
Abstract:
This is a method for controlling the decoding of a LDPC encoded codeword composed of several digital data, said LDPC code being represented by a bipartite graph between check nodes (CN i ) and variable nodes (VN i ). Said method comprises updating messages exchanged iteratively between variable nodes (VN i ) and check nodes (CN i ). Said method comprises, at each iteration, calculating for each variable node a first sum (Λ n ) of all the incident messages (λ i ) received by said variable node and the corresponding digital data (λ ch ) and calculating a second sum (VNR new ) of all the absolute values of the first sums (Λ n ), and stopping the decoding process if the second sum (VNR new ) is unchanged or decreases within two successive iterations and if a predetermined threshold condition is satisfied.
Abstract:
The method for decoding a LDPC encoded codeword composed of several digital data, said LDPC code being represented by a bipartite graph between check nodes (CN i ) and variable nodes (VN i ) including first variable nodes (IN i ) and second variable nodes (PN i ) of degree 2 connected to the check nodes (CN i ) by a zigzag connectivity, comprises updating messages exchanged iteratively between variable nodes (VN i ) and check nodes (CN j ) including a first variable processing phase during which all the messages from the first variable nodes (IN i ) to the check nodes (CN i ) are updated and a check nodes processing phase during which all the messages from the check nodes (CN i ) to the first variable nodes (IN i ) are updated. Said check nodes processing phase further comprises updating all the messages from the second variable nodes (PN i ) to the check nodes (CN i ), and directly passing an updated message processed by a check node to the next check node through said zigzag connectivity.