IP Library Granted Patent US 7,441,175
Granted Patent B2
US 7,441,175 · App. 10/799,232 · Granted Oct 21, 2008

Turbo product code implementation and decoding termination method and apparatus

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,441,175
App. No.
10/799,232
Granted
Oct 21, 2008
Kind
B2
Abstract

A method of decoding a turbo product code (TPC) code word comprises iteratively decoding the TPC code word using an iterative decoder. The method further comprises terminating the iterative decoding when the TPC code word satisfies a cyclic redundancy check (CRC). The TPC code word can include a plurality of square code blocks of user data, with CRC data bits appended to one of the plurality of code blocks instead of replacing user data within the code blocks. Apparatus for implementing the method are also provided.

Claims (53)

1. A method comprising:

iteratively decoding a turbo product code (TPC) code word by:

i) generating a probability indicative parameter, using a soft decision algorithm, for each of a plurality of sequences of bits from the TPC code word;

ii) de-interleaving the TPC code word to generate a de-interleaved TPC code word;

iii) decoding the de-interleaved TPC code word, using a TPC decoder, as a function of the probability indicative parameter from the soft decision algorithm to generate a decoded TPC code word; and

iv) re-interleaving the decoded TPC code word for use by the soft decision algorithm in updating the probability indicative parameter for each of the plurality of sequences of bits; and

terminating the iterative decoding when the TPC code word satisfies a cyclic redundancy check (CRC).

2. The method of claim 1 , wherein the soft decision algorithm is a Bahl, Cocke, Jelinek, and Raviv (BCJR) algorithm.

3. The method of claim 1 , wherein the soft decision algorithm is a soft output viterbi algorithm (SOVA).

4. The method of claim 1 , wherein iteratively decoding the TPC code word further comprises iteratively decoding a TPC code word with single parity check (TPC/SPC).

5. The method of claim 1 , further comprising:

performing the CRC on the decoded TPC code word.

6. The method of claim 1 , further comprising:

terminating the iterative decoding prior to the TPC code word satisfying the CRC if a predetermined number of iterations between the soft decision algorithm and the TPC decoder have been completed.

7. The method of claim 1 , further comprising:

performing an error correcting code (ECC) on the decoded TPC code word.

8. The method of claim 1 , and before the step of iteratively decoding the TPC code word, further comprising appending CRC data bits to one of a plurality of code blocks of the TPC code word.

9. The method of claim 8 , and after the step of appending the CRC data bits to one of the plurality of code blocks of the TPC code word, further comprising adding a row and a column of parity bits to each of the plurality of code blocks of the TPC code word.

10. A data storage system, comprising:

iterative decoder implementing circuitry having a soft decision algorithm and a turbo product code (TPC) decoder, the circuitry configured to iteratively decode a TPC code word by:

i) generation of a probability indicative parameter, using the soft decision algorithm, for each of a plurality of sequences of bits from the TPC code word;

ii) de-interleaving of the TPC code word to generate a de-interleaved TPC code word;

iii) decoding of the de-interleaved TPC code word, using the TPC decoder, as a function of the probability indicative parameter from the soft decision algorithm to generate a decoded TPC code word; and

iv) re-interleaving of the decoded TPC code word for use by the soft decision algorithm in updating the probability indicative parameter for each of the plurality of sequences of bits; and

wherein the iterative decoder implementing circuitry is further configured to terminate the iterative decoding when the TPC code word satisfies a cyclic redundancy check (CRC).

11. The data storage system of claim 10 , wherein the TPC code word contains 512 bytes of user data.

12. A communication system, comprising:

iterative decoder implementing circuitry having a soft decision algorithm and a turbo product code (TPC) decoder, the circuitry configured to iteratively decode a TPC code word by:

i) generation of a probability indicative parameter, using the soft decision algorithm, for each of a plurality of sequences of bits from the TPC code word;

ii) de-interleaving of the TPC code word to generate a de-interleaved TPC code word;

iii) decoding of the de-interleaved TPC code word, using the TPC decoder, as a function of the probability indicative parameter from the soft decision algorithm to generate a decoded TPC code word; and

iv) re-interleaving of the decoded TPC code word for use by the soft decision algorithm in updating the probability indicative parameter for each of the plurality of sequences of bits; and

wherein the iterative decoder implementing circuitry is further configured to terminate the iterative decoding when the TPC code word satisfies a cyclic redundancy check (CRC).

13. An apparatus comprising:

an iterative decoder having a soft decision algorithm implementing circuitry and a turbo product code (TPC) decoder, the circuitry configured to iteratively decode a TPC code word by:

i) generation of a probability indicative parameter, using the soft decision algorithm, for each of a plurality of sequences of bits from the TPC code word;

ii) de-interleaving of the TPC code word to generate a de-interleaved TPC code word;

iii) decoding of the de-interleaved TPC code word, using the TPC decoder, as a function of the probability indicative parameter from the soft decision algorithm to generate a decoded TPC code word; and

iv) re-interleaving of the decoded TPC code word for use by the soft decision algorithm in updating the probability indicative parameter for each of the plurality of sequences of bits;

cyclic redundancy check (CRC) implementing circuitry configured to perform a CRC on the TPC code word; and

wherein the iterative decoder is configured to terminate the iterative decoding when the TPC code word satisfies the CRC.

14. The apparatus of claim 13 , wherein the soft decision algorithm implementing circuitry is configured to implement a soft output viterbi algorithm (SOVA).

15. The apparatus of claim 13 , wherein the TPC code word is a TPC code word with single parity check (TPC/SPC), and wherein the iterative decoder is configured to iteratively decode a TPC/SPC code word.

16. A method comprising:

providing a plurality of square code blocks of a turbo product code (TPC) code word of user data, the user data having a predefined user data length; and

appending cyclic redundancy check (CRC) data bits to at least one of the plurality of code blocks, the appended CRC data bits extending a length of the code word beyond the user data length to an extended length.

17. The method of claim 16 , and further comprising:

iteratively decoding the TPC code word; and

terminating the iterative decoding when the TPC code word satisfies a cyclic redundancy check (CRC).

18. The method of claim 16 , wherein the user data length is 4096 bits and the extended length of the code word is greater than 4096 bits.

19. The method of claim 16 , further comprising:

iteratively decoding the TPC code word between a soft decision algorithm and a TPC decoder.

20. The method of claim 16 , wherein the TPC code word is interleaved for the soft decision algorithm and de-interleaved for the TPC decoder.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2025
From: THE BANK OF NOVA SCOTIA
To: SEAGATE TECHNOLOGY PUBLIC LIMITED COMPANY; SEAGATE TECHNOLOGY; SEAGATE TECHNOLOGY HDD HOLDINGS; I365 INC.; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE HDD CAYMAN; SEAGATE TECHNOLOGY (US) HOLDINGS, INC.
Reel/Frame 072193/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2024
From: SEAGATE TECHNOLOGY LLC; SEAGATE SINGAPORE INTERNATIONAL HEADQUARTERS PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 067489/0509 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jul 19, 2013
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE
To: SEAGATE TECHNOLOGY LLC; EVAULT INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE TECHNOLOGY US HOLDINGS, INC.
Reel/Frame 030833/0001 →
SECURITY AGREEMENT Recorded Mar 24, 2011
From: SEAGATE TECHNOLOGY LLC
To: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT
Reel/Frame 026010/0350 →