P
US7577891B2ExpiredUtilityPatentIndex 84

Method and apparatus for extending decoding time in an iterative decoder using input codeword pipelining

Assignee: AQUANTIA CORPPriority: May 27, 2005Filed: May 26, 2006Granted: Aug 18, 2009
Est. expiryMay 27, 2025(expired)· nominal 20-yr term from priority
Inventors:FARJADRAD RAMINSHIRANI RAMIN
H03M 13/1102H03M 13/3738H03M 13/1105H03M 13/6597H03M 13/2975
84
PatentIndex Score
15
Cited by
9
References
19
Claims

Abstract

A decoder architecture and method for implementing a decoder are provided. In one implementation, the decoder architecture includes an input buffer configured to receive a plurality of codewords to be processed, and includes an iterative decoder configured to receive a first codeword from the input buffer and process the first codeword. The iterative decoder processes the first codeword only for an amount of time required for the first codeword to become substantially error free. The decoder architecture further includes logic coupled to each of the iterative decoder and the input buffer. The logic is configured to determine when the first codeword processed by the decoder becomes substantially error free. The logic further generates a signal for loading a second codeword from the input buffer into the iterative decoder responsive to the logic determining when the first codeword becomes substantially error free.

Claims

exact text as granted — not AI-modified
1. A decoder architecture comprising:
 an input buffer configured to receive a plurality of codewords to be processed, wherein the input buffer is configured to receive each of the plurality of codewords at a pre-determined fixed rate; 
 a decoder configured to receive a first codeword from the input buffer and process the first codeword, the decoder processing the first codeword only for an amount of time required for the first codeword to become substantially error free, wherein an average decoding speed of the decoder is set such that an average read speed of the decoder from the input buffer is faster than the pre-determined fixed rate of receiving the plurality of codewords in the input buffer; and 
 logic in communication with each of the decoder and the input buffer, the logic configured to determine when the first codeword processed by the decoder becomes substantially error free, wherein the logic generates a signal for loading a second codeword from the input buffer into the decoder responsive to the logic determining that the first codeword has become substantially error free. 
 
   
   
     2. The decoder architecture of  claim 1 , wherein a time difference between the pre-determined fixed rate at which the input buffer receives each of the plurality of codewords and the average read speed of the decoder is accumulated over multiple codewords, the accumulated time difference providing additional time for the decoder to decode a codeword requiring longer than the average decoding speed to become substantially error free. 
   
   
     3. The decoder architecture of  claim 1 , wherein the pre-determined fixed rate corresponds to a value between a maximum time required for the decoder to process a worst case codeword and a minimum time required to decode each of a majority of the plurality of codewords. 
   
   
     4. The decoder architecture of  claim 1 , further comprising a counter to limit a maximum amount of time for a given codeword to be processed by the decoder. 
   
   
     5. The decoder architecture of  claim 4 , further comprising an output buffer configured to receive codewords from the decoder and output each codeword at a rate synchronized to the pre-determined fixed rate. 
   
   
     6. The decoder architecture of  claim 1 , wherein the decoder is an iterative decoder. 
   
   
     7. The decoder architecture of  claim 6 , wherein the iterative decoder comprises one of a low density parity check (LDPC) decoder, a Hamming decoder, or a Turbo decoder. 
   
   
     8. The decoder architecture of  claim 6 , wherein the logic determines that the first codeword processed by the decoder has become substantially error free upon the first codeword passing all parity checks of an H matrix associated with the iterative decoder. 
   
   
     9. The decoder architecture of  claim 1  wherein the decoder receives the plurality of codewords at a variable rate from the input buffer. 
   
   
     10. A method for decoding a plurality of codewords, the method comprising:
 loading a plurality of codewords to be processed into an input buffer, wherein the loading the plurality of codewords into the input buffer is at a pre-determined fixed rate; 
 transferring a first codeword from the input buffer to a decoder; 
 processing the first codeword in the decoder, wherein an average decoding speed of the decoder is set such that an average read speed of the decoder from the input buffer is faster than the pre-determined fixed rate of loading the plurality of codewords into the input buffer; 
 determining when the first codeword processed by the decoder becomes substantially error free; and 
 generating a signal for loading a second codeword from the input buffer into the decoder responsive to a determination that the first codeword has become substantially error free. 
 
   
   
     11. The method of  claim 10 , wherein a time difference between the pre-determined fixed rate at which the input buffer receives each of the plurality of codewords and the average read speed of the decoder is accumulated over multiple codewords, the accumulated time difference providing additional time for the decoder to decode a codeword that requires longer than the average decoding speed to become substantially error free. 
   
   
     12. The method of  claim 10 , wherein the pre-determined fixed rate corresponds to a value between a maximum time required for the decoder to process a worst case codeword and a minimum time required to decode each of a majority of the plurality of codewords. 
   
   
     13. The method of  claim 12 , wherein the maximum time required for the decoder to process a worst case codeword and the minimum time required to decode each of a majority of the plurality of codewords are determined empirically based on application requirements. 
   
   
     14. The method of  claim 10 , further comprising limiting a maximum amount of time for a given codeword to be processed by the decoder. 
   
   
     15. The method of  claim 14 , further comprising providing an output buffer in communication with the decoder, the output buffer receiving codewords from the decoder and outputting each codeword at a rate synchronized to the pre-determined fixed rate. 
   
   
     16. The method of  claim 10 , wherein the decoder is an iterative decoder. 
   
   
     17. The method of  claim 16 , wherein the iterative decoder comprises one of a low density parity check (LDPC) decoder, a Hamming decoder, or a Turbo decoder. 
   
   
     18. The method of  claim 16 , wherein determining when the first codeword processed by the decoder becomes substantially error free comprises determining that the first codeword processed by the decoder has become substantially error free upon the first codeword passing all parity checks of an H matrix associated with the iterative decoder. 
   
   
     19. The method of  claim 10  wherein the plurality of codewords are transferred from the input buffer to the decoder at a variable rate.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.