IP Library Granted Patent US 11,218,166
Granted Patent B1
US 11,218,166 · App. 17/306,057 · Granted Jan 4, 2022

Early convergence for decoding of LDPC codes

Inventor: Yingquan Wu (Palo Alto, CA)
H03M13/1117H03M13/116
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 11,218,166
App. No.
17/306,057
Granted
Jan 4, 2022
Kind
B1
Abstract

Low-density parity-check (LDPC) encoded data with one or more errors and information associated with an early convergence checkpoint are received. The information associated with the early convergence checkpoint is used to perform LDPC decoding on the LDPC encoded data up to the early convergence checkpoint and generate a decoded codeword where the early convergence checkpoint is prior to a first complete iteration of the LDPC decoding. It is determined whether the LDPC decoding is successful and in the event it is determined that the LDPC decoding is successful, the decoded codeword is output.

Claims (76)

1. A system, comprising:

a memory; and

a processor coupled to the memory and configured to:

receive low-density parity-check (LDPC) encoded data with one or more errors;

receive information associated with an early convergence checkpoint, wherein the information associated with the early convergence checkpoint is determined, including by:

receiving a first layered decoding scheduling and a second layered decoding scheduling, wherein the LDPC decoding includes layered min-sum decoding;

determining a first potential fractional iteration count based at least in part on the first layered decoding scheduling;

determining a second potential fractional iteration count based at least in part on the second layered decoding scheduling; and

selecting a minimum one of the first potential fractional iteration count or the second potential fractional iteration count to be a fractional iteration count;

use the information associated with the early convergence checkpoint to perform LDPC decoding on the LDPC encoded data up to the early convergence checkpoint and generate a decoded codeword, wherein the early convergence checkpoint is prior to a first complete iteration of the LDPC decoding;

determine whether the LDPC decoding is successful; and

in the event it is determined that the LDPC decoding is successful, output the decoded codeword.

2. The system of claim 1 , wherein using the information associated with the early convergence checkpoint includes using one or more of the following: layered min-sum LDPC decoding or sum-product algorithm (SPA) LDPC decoding.

3. The system of claim 1 , wherein the LDPC encoded data is received via a communication channel.

4. The system of claim 1 , wherein the LDPC encoded data is received via a storage system.

5. The system of claim 1 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of variable nodes; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

6. The system of claim 1 , wherein:

the LDPC encoded data includes QC-LDPC encoded data;

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of circulants; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

7. The system of claim 1 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving the fractional iteration count; and

using the information associated with the early convergence checkpoint includes:

receiving a current iteration of the LDPC decoding; and

in response to the current iteration exceeding the fractional iteration count, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum decoding.

8. A method, comprising:

receiving low-density parity-check (LDPC) encoded data with one or more errors;

receiving information associated with an early convergence checkpoint, wherein the information associated with the early convergence checkpoint is determined, including by:

receiving a first layered decoding scheduling and a second layered decoding scheduling, wherein the LDPC decoding includes layered min-sum decoding;

determining a first potential fractional iteration count based at least in part on the first layered decoding scheduling;

determining a second potential fractional iteration count based at least in part on the second layered decoding scheduling; and

selecting a minimum one of the first potential fractional iteration count or the second potential fractional iteration count to be a fractional iteration count;

using the information associated with the early convergence checkpoint to perform LDPC decoding on the LDPC encoded data up to the early convergence checkpoint and generate a decoded codeword, wherein the early convergence checkpoint is prior to a first complete iteration of the LDPC decoding;

determining whether the LDPC decoding is successful; and

in the event it is determined that the LDPC decoding is successful, outputting the decoded codeword.

9. The method of claim 8 , wherein using the information associated with the early convergence checkpoint includes using one or more of the following: layered min-sum LDPC decoding or sum-product algorithm (SPA) LDPC decoding.

10. The method of claim 8 , wherein the LDPC encoded data is received via a communication channel.

11. The method of claim 8 , wherein the LDPC encoded data is received via a storage system.

12. The method of claim 8 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of variable nodes; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

13. The method of claim 8 , wherein:

the LDPC encoded data includes QC-LDPC encoded data;

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of circulants; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

14. The method of claim 8 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving the fractional iteration count; and

using the information associated with the early convergence checkpoint includes:

receiving a current iteration of the LDPC decoding; and

in response to the current iteration exceeding the fractional iteration count, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum decoding.

15. A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

receiving low-density parity-check (LDPC) encoded data with one or more errors;

receiving information associated with an early convergence checkpoint, wherein the information associated with the early convergence checkpoint is determined, including by:

receiving a first layered decoding scheduling and a second layered decoding scheduling, wherein the LDPC decoding includes layered min-sum decoding;

determining a first potential fractional iteration count based at least in part on the first layered decoding scheduling;

determining a second potential fractional iteration count based at least in part on the second layered decoding scheduling; and

selecting a minimum one of the first potential fractional iteration count or the second potential fractional iteration count to be a fractional iteration count;

using the information associated with the early convergence checkpoint to perform LDPC decoding on the LDPC encoded data up to the early convergence checkpoint and generate a decoded codeword, wherein the early convergence checkpoint is prior to a first complete iteration of the LDPC decoding;

determining whether the LDPC decoding is successful; and

in the event it is determined that the LDPC decoding is successful, outputting the decoded codeword.

16. The computer program product of claim 15 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of variable nodes; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

17. The computer program product of claim 15 , wherein:

the LDPC encoded data includes QC-LDPC encoded data;

receiving the information associated with the early convergence checkpoint includes receiving a collective state signal that is based at least in part on a plurality of states associated with a plurality of circulants; and

using the information associated with the early convergence checkpoint includes in response to the collective state signal indicating that the early convergence checkpoint has been reached, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum LDPC decoding.

18. The computer program product of claim 15 , wherein:

receiving the information associated with the early convergence checkpoint includes receiving the fractional iteration count; and

using the information associated with the early convergence checkpoint includes:

receiving a current iteration of the LDPC decoding; and

in response to the current iteration exceeding the fractional iteration count, pausing the LDPC decoding, wherein the LDPC decoding includes layered min-sum decoding.

19. The computer program product of claim 15 , wherein using the information associated with the early convergence checkpoint includes using one or more of the following: layered min-sum LDPC decoding or sum-product algorithm (SPA) LDPC decoding.

20. The computer program product of claim 15 , wherein the LDPC encoded data is received via a storage system.

Assignments (2)
CHANGE OF NAME Recorded Aug 13, 2025
From: BEIJING TENAFE ELECTRONIC TECHNOLOGY CO., LTD.
To: NANJING TENAFE ELECTRONIC TECHNOLOGY CO., LTD.
Reel/Frame 072008/0631 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2021
From: WU, YINGQUAN
To: BEIJING TENAFE ELECTRONIC TECHNOLOGY CO., LTD.
Reel/Frame 057119/0520 →
Cited By (1)
US 12,212,336