IP Library Granted Patent US 10,075,192
Granted Patent B2
US 10,075,192 · App. 15/150,423 · Granted Sep 11, 2018

Systems and methods for data processing with folded parity sector

Inventors: Yang Han (Sunnyvale, CA); Keke Liu (Union City, CA); Xuebin Wu (San Jose, CA); Shaohua Yang (San Jose, CA); Avi Steiner (Kiriat Motzkin, IL)
Assignee: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
H03M13/3746G06F3/064G06F3/0619G06F3/0644G06F3/0673G06F11/1076H03M13/1128
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 10,075,192
App. No.
15/150,423
Granted
Sep 11, 2018
Kind
B2
Abstract

An apparatus for processing data includes a decoder configured to iteratively decode codewords in a data block representing a number of user data sectors, the codewords including user data, folded parity sector data and error correction code parity bits. The folded parity sector data includes a number of parity checks, each with multiple user data bits from each of the data sectors, and with an offset between each of the user data bits from the data sectors determined at least in part by a number of folds in the data sectors. The apparatus also includes a scheduler configured to control decoding of the codewords based at least in part on the folded parity sector data.

Claims (28)

1. An apparatus for processing data from a non-volatile storage device, comprising:

a decoder configured to iteratively decode codewords in a data block representing a plurality of user data sectors, the codewords comprising user data, folded parity sector data and error correction code parity bits, wherein the folded parity sector data comprises a plurality of parity checks, each comprising a plurality of user data bits from each of the data sectors with an offset between each of the plurality of user data bits from the data sectors determined at least in part by a number of folds in the data sectors; and

a scheduler configured to control decoding of the codewords based at least in part on the folded parity sector data.

2. The apparatus of claim 1 , wherein the data decoder comprises a low density parity check decoder.

3. The apparatus of claim 1 , wherein the scheduler is configured to schedule a plurality of decoding iterations in the decoder for each of the plurality of user data sectors and to schedule an update of the parity sector data based on results of the plurality of decoding iterations.

4. The apparatus of claim 1 , wherein the decoder is configured to decode the codewords according to a parity check matrix for the data block comprising a plurality of component codeword parity check matrices, one for each of the codewords, the parity check matrix for the data block further comprising single parity check bits that satisfy parity check equations in the folded parity sector data, error correction code parity bits for the codewords, and a parity check matrix for the folded parity sector data.

5. The apparatus of claim 4 , wherein the single parity check bits are protected by the error correction code parity bits.

6. The apparatus of claim 1 , wherein the decoder is configured to perform parity sector updates to perform parity checks of bits in the user data specified by the folded parity sector data to generate soft information.

7. The apparatus of claim 6 , wherein the decoder is configured to repeat decoding iterations for the codewords that fail to converge in earlier decoding iterations, wherein the repeated decoding iterations are performed in part based on the soft information.

8. The apparatus of claim 6 , wherein the decoder is configured to perform auxiliary parity sector updates after a subset of the codewords in the data block have been decoded.

9. The apparatus of claim 1 , wherein the decoder comprises memory configured to store carry-on decoding state information.

10. The apparatus of claim 1 , wherein the decoder comprises an irregular low density parity check decoder, and wherein the folded parity sector data parity checks specify different numbers of the user data bits based on column weights.

11. The apparatus of claim 10 , wherein the folded parity sector data parity checks specify the user data bits that bridge high and low column weight portions of combinations of the codewords.

12. The apparatus of claim 1 , wherein the decoder is configured to calculate values of parity bits that have been punctured.

13. The apparatus of claim 12 , wherein the punctured parity bits comprise high column weight parity bits in an irregular low density parity check decoder.

14. The apparatus of claim 1 , wherein the decoder comprises an irregular low density parity check decoder configured to calculate values of high column weight user data bits that have been shortened.

15. The apparatus of claim 1 , wherein the codewords have a plurality of code rates and wherein the scheduler is configured to schedule decoding of the codewords in order of ascending code rates.

16. The apparatus of claim 15 , wherein the folded parity sector data comprises a plurality of layers of parity checks that bridge neighboring codewords in order of ascending code rates.

17. The apparatus of claim 1 , wherein the decoder comprises an irregular low density parity check decoder configured to scale check node to variable node messages based at least in part on column weights.

18. The apparatus of claim 1 , wherein the decoder is configured to apply bit selective scaling to the folded parity sector data.

19. A method of processing data from a non-volatile storage device, comprising:

performing decoding iterations on a plurality of codewords in a data block each associated with a user data sector, wherein the plurality of codewords are protected by a folded parity sector, wherein the folded parity sector specifies parity checks based on multiple bits selected from each of the user data sectors at offsets based in part on a number of folds per user data sector;

performing a parity sector update to generate soft information for the codewords based at least in part on the parity checks specified by the folded parity sector and on the user data sectors; and

repeating the decoding iterations for any of the codewords that failed to converge, based at least in part on the soft information from the parity sector update.

20. A storage system comprising:

a storage medium;

means for decoding codewords in a data block stored on the storage medium, the data block representing a plurality of user data sectors, the codewords comprising user data, folded parity sector data and error correction code parity bits, wherein the folded parity sector data comprises a plurality of parity checks, each comprising a plurality of user data bits from each of the data sectors with an offset between each of the plurality of user data bits from the data sectors determined at least in part by a number of folds in the data sectors; and

means for scheduling decoding of the codewords based at least in part on the folded parity sector data.

Assignments (5)
MERGER Recorded Mar 3, 2023
From: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED; BROADCOM INTERNATIONAL PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 062952/0850 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2020
From: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
To: BROADCOM INTERNATIONAL PTE. LTD.
Reel/Frame 053771/0901 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER AND APPLICATION NOS. 13/237,550 AND 16/103,107 FROM THE MERGER PREVIOUSLY RECORDED ON REEL 047231 FRAME 0369. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048549/0113 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047231/0369 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2016
From: HAN, YANG; LIU, KEKE; WU, XUEBIN; YANG, SHAOHUA; STEINER, AVI
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 039061/0034 →
Continuity (1)
Related Publication 20170324430A1 · Nov 9, 2017