Concurrent recursive-read averaging and iterative inner and outer code decoding

US11336304B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11336304-B2
Application numberUS-202016908593-A
CountryUS
Kind codeB2
Filing dateJun 22, 2020
Priority dateJun 22, 2020
Publication dateMay 17, 2022
Grant dateMay 17, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one implementation, the disclosure provides a decoding system that concurrently executes a read sample combining recovery process and an iterative outer code (IOC) recovery process. Performing the read sample combining recovery process entails executing multiple rounds of logic that each provide for combining together different data samples read from a data block. The IOC recovery process is performed at least partially concurrent with the read sample combining recovery process and each round of the IOC recovery process is based on newly-updated data samples generated by the read sample combining recovery process.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a first circuit block that performs a read sample combining recovery process on a data block responsive to a failed initial attempt to read the data block, each of multiple rounds of the read sample combining recovery process combining together different data samples read from the data block; and a second circuit block that performs an iterative outer code (IOC) recovery process concurrent with the read sample combining recovery process. 2. The system of claim 1 , wherein each round of the IOC recovery process is based on newly-updated data samples generated by the first circuit block during the read sample combining process. 3. The system of claim 2 , wherein the first circuit block performs decoding operations based on inputs generated by the second circuit block during the IOC recovery process. 4. The system of claim 1 , wherein actions performed by the first circuit block during each of the multiple rounds of the read sample combining recovery process include: updating a read sample stored in one of a plurality of sample buffers, the updated read sample being an average of multiple read samples associated with a failed data segment; providing the updated read sample to an inner code decoder; and executing, at the inner code decoder, a recovery attempt of the failed data segment based on the updated read sample. 5. The system of claim 4 , wherein the system includes a buffer management engine configured to: manage a buffer-to-block map correlating a data block ID for each failed data block of a plurality of failed data blocks to a corresponding one of the plurality of sample buffers storing data read from the failed data block. 6. The system of claim 5 , wherein the read sample combining recovery process is a recursive read averaging recovery process. 7. The system of claim 1 , wherein actions performed by the second circuit block during each of the multiple rounds of the IOC recovery process include: providing, as inputs to an outer code decoder, decoded information extracted from one or more averaged read samples generated by the first circuit block during a previous round of the read sample combining recovery process; executing logic of the outer code decoder to update the decoded information; providing the updated decoded information as reliability information to an inner code decoder; and executing, at the inner code decoder, a recovery attempt of one or more failed data segments based on the updated reliability information. 8. The system of claim 7 , wherein the updated decoded information generated during the IOC recovery process is used in a next recovery attempt of the read sample combining recovery process. 9. The system of claim 7 , wherein the inner code decoder receives an updated read sample generated by the first circuit block during each round of the read sample combining recovery process and also receives updated reliability information generated by the second circuit block during each round of the IOC recovery process. 10. A method comprising: performing multiple rounds of a read sample combining recovery process on a data block responsive to a failed initial attempt to read the data block, each of multiple rounds of the read sample combining recovery process combining together different data samples read from the data block; and performing an iterative outer code (IOC) recovery process concurrent with the read sample combining recovery process, each round of the IOC recovery process being based on newly-updated data samples generated during the read sample combining recovery process. 11. The method of claim 10 , wherein performing multiple rounds of the read sample combining recovery process includes executing decoding operations based on inputs generated by the IOC recovery process. 12. The method of claim 10 , wherein performing multiple rounds of the read sample combining recovery process further comprises: updating a read sample stored in one of a plurality of sample buffers, the updated read sample being an average of multiple read samples associated with a failed data segment; providing the updated read sample to an inner code decoder; and executing, at the inner code decoder, a recovery attempt of the failed data segment based on the updated read sample. 13. The method of claim 12 , wherein performing multiple rounds of the IOC recovery process further comprises: providing, as inputs to an outer code decoder, decoded information extracted from one or more averaged read samples generated during a previous round of the read sample combining recovery process; executing logic of the outer code decoder to update the decoded information; providing the updated reliability information to an inner code decoder; and executing, at the inner code decoder, a recovery attempt of one or more failed data segments based on the updated reliability information. 14. The method of claim 13 , wherein the updated decoded information generated during the IOC recovery process is used by the inner code decoder in a next recovery attempt of the read sample combining recovery process. 15. The method of claim 13 , wherein the inner code decoder receives the updated read sample generated during each round of the read sample combining recovery process and also receives the updated decoded information generated during each round of the IOC recovery process. 16. The method of claim 12 , further comprising: managing a buffer-to-block map, the buffer-to-block map correlating a data block ID for each failed data block a plurality of failed data blocks to a corresponding buffer of the plurality of sample buffers that stores data read from the failed data block. 17. The method of claim 16 , further comprising: updating the buffer-to-block map each time the read sample combining recovery process alters a buffer location for data of one of a failed data block. 18. One or more tangible computer-readable storage media encoding computer-executable instructions for executing a computer process, the computer process comprising: performing multiple rounds of a read sample combining recovery process on a data block responsive to a failed initial attempt to read the data block, each of multiple rounds of the read sample combining recovery process combining together different data samples read from the data block; and performing an iterative outer code (IOC) recovery process concurrent with the read sample combining recovery process, each round of the IOC recovery process being based on newly-updated data samples generated during the read sample combining recovery process. 19. The one or more tangible computer-readable storage media of claim 18 , wherein performing multiple rounds of the read sample combining recovery process includes executing decoding operations based on inputs generated by the IOC recovery process. 20. The one or more tangible computer-readable storage media of claim 18 , wherein performing multiple rounds of the read sample combining recovery process further comprises: updating a read sample stored in one of a plurality of sample buffers, the updated read sample being an average of multiple read samples associated with a failed data segment; providing the updated read sample to an inner code decoder; and executing, at the inner code decoder, a recovery attempt of the failed data segment based on the updated read sample.

Assignees

Inventors

Classifications

  • using codes or arrangements adapted for a specific type of error (G06F11/1048 takes precedence) · CPC title

  • using block codes (H03M13/2957 takes precedence) · CPC title

  • Iterative decoding (H03M13/2957 takes precedence) · CPC title

  • Turbo codes and decoding · CPC title

  • Error control coding in combination with demodulation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11336304B2 cover?
In one implementation, the disclosure provides a decoding system that concurrently executes a read sample combining recovery process and an iterative outer code (IOC) recovery process. Performing the read sample combining recovery process entails executing multiple rounds of logic that each provide for combining together different data samples read from a data block. The IOC recovery process is…
Who is the assignee on this patent?
Seagate Technology Llc
What technology area does this patent fall under?
Primary CPC classification H03M13/2906. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 17 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).