Systems and methods for decoding error correcting codes
AssigneeInnogrit Technologies Co., Ltd.
InventorsYuan-mao Chang, Jie Chen, Chung-Li Wang
Life of this patent
Estimating the term…
Abstract
Systems and methods are provided for decoding a codeword encoded by a linear block code. A method may comprise performing a hard decision decoding on a codeword, determining which check nodes are satisfied and which check nodes are unsatisfied after the hard decision decoding, scheduling a check node processing order by moving at least one unsatisfied check node to be processed ahead of at least one satisfied check node and performing a soft decision decoding on the codeword according to the check node processing order.
Claims20
A method, comprising:
- performing a hard decision decoding on a codeword to generate check constraints satisfaction information by a hard decision decoder, the hard decision decoding being based on a parity check matrix for the codeword being represented in a bipartite graph with symbols in the codeword represented as bit nodes and parity check equations for the codeword represented as check nodes, and the check constrains satisfaction information including which parity check equations are satisfied and which parity check equations are unsatisfied;
- sending the check constraints satisfaction information from the hard decision decoder to a soft decision decoder;
- determining which check nodes are satisfied and which check nodes are unsatisfied based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the hard decision decoder;
- scheduling a check node processing order based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the hard decision decoder by moving at least one unsatisfied check node that would be processed after at least one satisfied check node in a sequential order to be processed ahead of the at least one satisfied check node, the sequential order being an order of the parity check equations in the parity check matrix;
- and
- performing a soft decision decoding by the soft decision decoder on the codeword to go over the parity check equations in the parity check matrix according to the check node processing order.
A method, comprising:
- performing a hard decision decoding on a codeword to generate check constraints satisfaction information by a first decoder, the hard decision decoding being based on a parity check matrix for the codeword being represented in a bipartite graph with symbols in the codeword represented as bit nodes and parity check equations for the codeword represented as check nodes, the check constraints satisfaction information including which parity check equations are satisfied and which parity check equations are unsatisfied;
- sending the check constraints satisfaction information from the first decoder to a second decoder;
- determining which check nodes are satisfied and which check nodes are unsatisfied based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the first decoder;
- scheduling a check node processing order for a soft decision decoding based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the first decoder, wherein the soft decision decoding processes the check nodes in batches and the check node processing order is scheduled by moving at least one batch of check nodes containing at least one unsatisfied check node that would be processed after at least one batch of check nodes containing no unsatisfied check node in a sequential order ahead of the at least one batch of check nodes containing no unsatisfied check node, the sequential order being an order of the parity check equations in the parity check matrix;
- and
- performing the soft decision decoding by the second decoder on the codeword to go over the parity check equations in the parity check matrix according to the check node processing order.
A system, comprising:
- a hard decision decoder comprising a bit flip control to perform a hard decision decoding on a codeword and generate check constraints satisfaction information, the hard decision decoding being based on a parity check matrix for the codeword being represented in a bipartite graph with symbols in the codeword represented as bit nodes and parity check equations for the codeword represented as check nodes, the check constraints satisfaction information including which parity check equations are satisfied and which parity check equations are unsatisfied;
- and
- a soft decision decoder coupled to the hard decision decoder to receive the check constraints satisfaction information sent from the hard decision decoder, the soft decision decoder comprising:
- a decoding order scheduler to:
- determine which check nodes are satisfied and which check nodes are unsatisfied based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the hard decision decoder;
- and
- schedule a check node processing order based on which parity check equations are satisfied and which parity check equations are unsatisfied in the check constraints satisfaction information generated by the hard decision decoder by moving at least one unsatisfied check node to be processed that would be processed after at least one batch of check nodes containing no unsatisfied check node in a sequential order ahead of at least one satisfied check node, the sequential order being an order of the parity check equations in the parity check matrix;
- and
- a bit node processor and a check node processor to perform a soft decision decoding on the codeword to go over the parity check equations in the parity check matrix according to the check node processing order.
Dependencies are inferred from the claim text.