Fast min*- or max*-circuit in LDPC (low density parity check) decoder
First Claim
Patent Images
1. A min*−
- (min-star-minus) circuit, the circuit comprising;
a subtraction block that is operable to calculate a difference between a first input value and a second input value such that the difference comprises a first plurality of LSBs (Least Significant Bits) of the difference, a second plurality of LSBs of the difference, and an MSB (Most Significant Bit);
a first log correction factor block that is operable to determine a first log correction factor based on the first plurality of LSBs of the difference;
a second log correction factor block that is operable to determine a second log correction factor based on the first plurality of LSBs of the difference;
a log correction factor MUX (Multiplexor) that is operable to receive the first log correction factor and the second log correction factor as inputs and whose selection is governed by the MSB of the difference;
an input value selection MUX that is operable to receive the first input value and the second input value as inputs and whose selection is governed by the MSB of the difference;
wherein an output of the input value selection MUX is a minimum input value selected from among the first input value and the second input value;
wherein an output of the log correction factor MUX is a final log correction factor; and
wherein a final min*−
resultant, that is based on the first input value and the second input value, comprises the minimum input value and the final log correction factor.
7 Assignments
0 Petitions
Accused Products
Abstract
Fast min*− (min-star-minus) or max*− (max-star-minus) circuit in LDPC (Low Density Parity Check) decoder. A novel and efficient approach by which certain of the calculations required to perform check node processing within various types of decoders is presented. The functionality and architectures presented herein are applicable to LDPC decoders and may also be employed within other types of decoders that are operable to decode other types of coded signals as well. The parallel and sometimes simultaneous calculation and determination of certain parts of the overall resultant of the max*− and/or min*− processing allows for very fast operation when compared to prior art approaches.
35 Citations
32 Claims
-
1. A min*−
- (min-star-minus) circuit, the circuit comprising;
a subtraction block that is operable to calculate a difference between a first input value and a second input value such that the difference comprises a first plurality of LSBs (Least Significant Bits) of the difference, a second plurality of LSBs of the difference, and an MSB (Most Significant Bit); a first log correction factor block that is operable to determine a first log correction factor based on the first plurality of LSBs of the difference; a second log correction factor block that is operable to determine a second log correction factor based on the first plurality of LSBs of the difference; a log correction factor MUX (Multiplexor) that is operable to receive the first log correction factor and the second log correction factor as inputs and whose selection is governed by the MSB of the difference; an input value selection MUX that is operable to receive the first input value and the second input value as inputs and whose selection is governed by the MSB of the difference; wherein an output of the input value selection MUX is a minimum input value selected from among the first input value and the second input value; wherein an output of the log correction factor MUX is a final log correction factor; and wherein a final min*−
resultant, that is based on the first input value and the second input value, comprises the minimum input value and the final log correction factor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
- (min-star-minus) circuit, the circuit comprising;
-
11. A max*−
- (max-star-minus) circuit, the circuit comprising;
a subtraction block that is operable to calculate a difference between a first input value and a second input value such that the difference comprises a first plurality of LSBs (Least Significant Bits) of the difference, a second plurality of LSBs of the difference, and an MSB (Most Significant Bit); a first log correction factor block that is operable to determine a first log correction factor based on the first plurality of LSBs of the difference; a second log correction factor block that is operable to determine a second log correction factor based on the first plurality of LSBs of the difference; a log correction factor MUX (Multiplexor) that is operable to receive the first log correction factor and the second log correction factor as inputs and whose selection is governed by the MSB of the difference; an input value selection MUX that is operable to receive the first input value and the second input value as inputs and whose selection is governed by the MSB of the difference; wherein an output of the input value selection MUX is a maximum input value selected from among the first input value and the second input value; wherein an output of the log correction factor MUX is a final log correction factor; and wherein a final max*−
resultant, that is based on the first input value and the second input value, comprises the minimum input value and the final log correction factor. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
- (max-star-minus) circuit, the circuit comprising;
-
21. A method for performing min*−
- (min-star-minus) processing, the method comprising;
during a first time period; calculating a first plurality of LSBs (Least Significant Bits) of a difference between a first input value and a second input value; during a second time period; calculating a second plurality of LSBs of the difference between the first input value and the second input value; calculating an MSB (Most Significant Bit) of the difference between the first input value and the second input value; determining a first log correction factor using the first plurality of LSBs of the difference; determining a second log correction factor using the first plurality of LSBs of the difference; during a third time period; selecting either the second log correction factor or the second log correction factor as being a final log correction value based on an MSB (Most Significant Bit) of the difference; and selecting a minimum input value from among the first input value and the second input value based on the MSB of the difference; and wherein a final min*−
resultant, that is based on the first input value and the second input value, comprises the minimum input value and the final log correction factor. - View Dependent Claims (22, 23, 24, 25, 26)
- (min-star-minus) processing, the method comprising;
-
27. A method for performing max*−
- (max-star-minus) processing, the method comprising;
during a first time period; calculating a first plurality of LSBs (Least Significant Bits) of a difference between a first input value and a second input value; during a second time period; calculating a second plurality of LSBs of the difference between the first input value and the second input value; calculating an MSB (Most Significant Bit) of the difference between the first input value and the second input value; determining a first log correction factor using the first plurality of LSBs of the difference; determining a second log correction factor using the first plurality of LSBs of the difference; during a third time period; selecting either the second log correction factor or the second log correction factor as being a final log correction value based on an MSB (Most Significant Bit) of the difference; and selecting a maximum input value from among the first input value and the second input value based on the MSB of the difference; and wherein a final max*−
resultant, that is based on the first input value and the second input value, comprises the maximum input value and the final log correction factor. - View Dependent Claims (28, 29, 30, 31, 32)
- (max-star-minus) processing, the method comprising;
Specification