A method of decoding soft input information related to a transmitted word of a linear block code (n, k) and providing hard or soft output information is disclosed. The method comprises the steps of forming a reliability vector from the input information, identifying (n-k) linearly independent least reliable symbols and k most reliable symbols, converting a parity check matrix of the linear block code to a pseudo-systematic form with respect to the least reliable symbols, calculating extrinsic information and composite information for the most reliable symbols using the soft input information and the pseudo-systematic parity check matrix, and calculating extrinsic information for the least reliable systems using composite information for the most reliable symbols.
CROSS-REFERENCE TO RELATED APPLICATION
This application claims priority of U.S. Provisional Patent Application No. 60/467,564 filed May 5, 2003, entitled "Vectorized Approximate Max-Log-APP Decoding for Linear Block Codes" which is incorporated herein by reference for all purposes.
Methods, apparatuses, and systems are presented for deriving data from an error correction encoded composite signal involving (a) receiving a composite signal comprising contributions from a plurality of individual signals transmitted over different paths representing a common data sequence encoded using an error correction code, (b) calculating soft values of a first type taking into account the received composite signal and soft values of a second type, (c) generating symbol outputs taking into account soft values of the first type, (d) performing error correction decoding on the symbol soft outputs, (e) calculating soft values of the second type taking into account error correction decoded outputs, (f) feeding back soft values of the second type, (g) iteratively updating soft values of the first type, symbol outputs, error correction decoded outputs, and soft values of the second type by repeating previous steps, and (h) providing updated error correction decoded outputs.
Methods, apparatuses, and systems are presented for deriving data from a composite signal by processing multiple blocks of symbols, involving (a) receiving a composite signal comprising contributions from a plurality of individual signals transmitted over different paths and representing a common data sequence, (b) calculating soft values of a first type taking into account the received composite signal and soft values of a second type, (c) generating symbol outputs taking into account the soft values of the first type, (d) calculating soft values of the second type taking into account the symbol outputs, (e) feeding back soft values of the second type, (f) iteratively updating soft values of the first type, symbol outputs, and soft values of the second type by repeating previous steps, and (g) deriving data using the updated symbol outputs, wherein multiple blocks of symbols are so processed, and adjacent blocks of symbols partially overlap one another.