IP Library › Granted Patent US 11,722,152
Granted Patent B1
US 11,722,152 · App. 17/534,327 · Granted Aug 8, 2023

Capacity-expanding memory control component

Inventors: Enrique Musoll (San Jose, CA); Anh T. Tran (Elk Grove, CA); Subbarao Arumilli (Cupertino, CA); Chi Feng (San Jose, CA)
Assignee: Astera Labs, Inc.
H03M13/1575G11C29/36G11C29/42H03M13/095H03M13/1515G11C2029/3602
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,722,152
App. No.
17/534,327
Granted
Aug 8, 2023
Kind
B1
Abstract

A memory control component encodes over-capacity data into an error correction code generated for and stored in association with an application data block, inferentially recovering the over-capacity data during application data block read-back by comparing error syndromes generated in detection/correction operations for respective combinations of each possible value of the over-capacity data and the read-back application data block.

Claims (31)

1. An integrated circuit component comprising:

encoding circuitry to generate an error correction code corresponding to (i) a first block of data and (ii) first supplemental data having a first number of bits;

a physical signaling interface to:

store the first block of data and the error correction code within one or more external memory components in a memory write transaction, and

retrieve the first block of data and the error correction code from the one or more external memory components in a memory read transaction;

decoding circuitry to generate a plurality of error syndromes each corresponding to (i) the retrieved first block of data and the error correction code, and (ii) a respective data pattern constituted by the first number of bits;

wherein the encoding circuitry to generate the error correction code corresponding to the first block of data and first supplemental data comprises circuitry to execute a block-code encoding operation in which the first block of data and first supplemental data constitute inputs; and

wherein the first block of data is constituted by ‘V’ bits and the first supplemental data is constituted by ‘q’ bits, where q is less than V, and wherein the circuitry to execute the block-code encoding operation comprises circuitry to supplement the first block of data and first supplemental data with V−q bits of pattern data to produce, as a complete data input to the block-code encoding operation, 2*V bits.

2. The integrated circuit component of claim 1 further comprising a syndrome comparator circuit to identify, within the plurality of error syndromes, a first error syndrome that reports fewer errors than all others of the plurality of error syndromes.

3. The integrated circuit component of claim 2 wherein the syndrome comparator circuit outputs, as a recovered instance of the first supplemental data, the respective pattern of data to which the first error syndrome corresponds.

4. The integrated circuit component of claim 3 wherein the decoding circuitry to generate the plurality of error syndromes comprises circuitry to execute a corresponding plurality of error detection operations with respect to the first block of data, error correction code, and respective data patterns to produce a plurality of nominally error-corrected instances of the first block of data.

5. The integrated circuit component of claim 4 further wherein the syndrome comparator circuit further outputs, as a read-back instance of the first block of data, one of the nominally error-corrected instances of the first block of data to which the first error syndrome corresponds.

6. The integrated circuit component of claim 4 wherein each of the respective data patterns is constituted by q bits, and wherein the circuitry to execute the plurality of error detection operations comprises circuitry to execute 2 q error detection operations.

7. The integrated circuit component of claim 1 wherein the circuitry to supplement the first block of data and first supplemental data with pattern data comprises circuitry to generate, as the pattern data, a predetermined pattern of bits.

8. The integrated circuit component of claim 7 wherein the circuitry to supplement the first block of data and first supplemental data with pattern data comprises circuitry to generate, as the pattern data, V−q bits in a pattern dependent on one or more values specific to the memory write transaction.

9. The integrated circuit component of claim 1 wherein the encoding circuitry to generate the error correction code corresponding to the first block of data and first supplemental data comprises a Reed-Solomon encoder circuit to execute a Reed-Solomon encoding operation to produce the error correction code, and wherein the decoding circuitry to generate the plurality of error syndromes comprises one or more Reed-Solomon decoder circuits to execute a plurality of Reed-Solomon decoding operations.

10. A method of operation with an integrated-circuit (IC) component, the method comprising:

generating an error correction code corresponding to (i) a first block of data and (ii) first supplemental data having a first number of bits;

storing the first block of data and the error correction code within one or more external memory components in a memory write transaction;

retrieving the first block of data and the error correction code from the one or more external memory components in a memory read transaction;

generating a plurality of error syndromes each corresponding to (i) the retrieved first block of data and the error correction code, and (ii) a respective data pattern constituted by the first number of bits;

wherein generating the error correction code corresponding to the first block of data and first supplemental data comprises executing a block-code encoding operation in which the first block of data and first supplemental data constitute inputs; and

wherein the first block of data is constituted by ‘V’ bits and the first supplemental data is constituted by ‘q’ bits, where q is less than V, and wherein executing the block-code encoding operation comprises supplementing the first block of data and first supplemental data with V−q bits of pattern data to produce, as complete data input to the block-code encoding operation, 2*V bits.

11. The method of claim 10 further comprising identifying, within the plurality of error syndromes, a first error syndrome that reports fewer errors than all others of the plurality of error syndromes.

12. The method of claim 11 further comprising outputting, as a recovered instance of the first supplemental data, the respective pattern of data to which the first error syndrome corresponds.

13. The method of claim 12 wherein generating the plurality of error syndromes comprises executing a corresponding plurality of error detection operations with respect to the first block of data, error correction code, and respective data patterns to produce a plurality of nominally error-corrected instances of the first block of data.

14. The method of claim 13 further comprising outputting, as a read-back instance of the first block of data, one of the nominally error-corrected instances of the first block of data to which the first error syndrome corresponds.

15. The method of claim 13 wherein each of the respective data patterns is constituted by q bits, and wherein executing the plurality of error detection operations comprises executing 2 q error detection operations.

16. The method of claim 10 wherein supplementing the first block of data and first supplemental data with pattern data comprises generating, as the pattern data, a predetermined pattern of bits.

17. The method of claim 10 wherein supplementing the first block of data and first supplemental data with pattern data comprises generating, as the pattern data, V−q bits in a pattern dependent on one or more values specific to the memory write transaction.

18. The method of claim 10 wherein generating the error correction code corresponding to the first block of data and first supplemental data comprises executing a Reed-Solomon encoding operation to produce the error correction code, and wherein generating the plurality of error syndromes comprises executing a plurality of Reed-Solomon decoding operations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: MUSOLL, ENRIQUE; TRAN, ANH T.; ARUMILLI, SUBBARAO; FENG, CHI
To: ASTERA LABS, INC.
Reel/Frame 058348/0643 →
Continuity (1)
Provisional Application 63118595 · Nov 25, 2020
Cited By (1)
US 12,261,623