IP Library Granted Patent US 11,061,582
Granted Patent B2
US 11,061,582 · App. 16/801,506 · Granted Jul 13, 2021

Codeword interleaving for magnetic storage media

Inventor: Mats Oberg (San Jose, CA)
Assignee: Marvell Asia PTE, Ltd.
G06F3/0614G06F3/0659G06F3/0676G11B20/00007G11B20/1217G11B20/1809G11B20/1833G11B20/1866G11B2220/2516
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,061,582
App. No.
16/801,506
Granted
Jul 13, 2021
Kind
B2
Abstract

The present disclosure describes aspects of codeword interleaving for magnetic storage media. In some aspects, segments of a codeword are spread or interleaved across multiple sectors of magnetic storage media. Data for one or more codewords may be received by a read channel and, for each codeword, a respective indicator is selected or received. The indicator may indicate which partitions of the multiple sectors that segments of one of the codewords are to be written. The data is then encoded to provide the codewords and segments of the codewords are placed in an interleaver based on the respective indicator corresponding to the codeword. The codeword segments are written from the interleaver to partitions of the multiple sectors of the magnetic storage media. By so doing, codewords may be spread across multiple sectors, such that a loss of a few sectors does not prevent readback and decoding of the codewords.

Claims (74)

1. A method for improving reliability of data written to magnetic storage media, comprising:

receiving data for one or more codewords to be written to a set of multiple sectors of the magnetic storage media;

selecting, for each of for the one or more codewords, a respective indicator that indicates within which partitions of the multiple sectors the segments of the codeword are to be written;

encoding the data to provide one or more codewords of encoded data;

placing the segments of the one or more codewords into an interleaver based on the respective indicator corresponding to each of the codewords; and

writing, from the interleaver, the segments of each of the one or more codewords to the partitions of at least some of the multiple sectors to interleave the respective segments of the codewords across the set of multiple sectors of the magnetic storage media.

2. The method of claim 1 , wherein the respective indicators that correspond to each codeword include pre-defined indices and the method further comprises receiving, from a storage media controller, an indication of which pre-defined index corresponds to at least one of the codewords.

3. The method of claim 1 , further comprising determining, for at least one of the codewords, a location index for where the segments of the codeword are to be written to respective partitions of the at least some of the multiple sectors.

4. The method of claim 3 , further comprising:

receiving, from a storage media controller, a write signal that indicates a start of one of the multiple sectors;

determining, based on the location index for the at least one codeword, that one of the segments of the codeword is to be written to one of the partitions of the sector; and

writing, based on the write signal and the location index, one of the segments of the codeword to the partition of the sector for which the write signal is received.

5. The method of claim 3 , further comprising:

receiving, from a storage media controller, a write signal that indicates a start of one of the multiple sectors;

determining, based on the location index for the at least one codeword, that one of the segments of the codeword is not to be written to one of the partitions of the sector; and

blocking, based on the location index of the codeword, the write signal to prevent writing of the partition of the sector to which one of the segments of the codeword is not to be written.

6. The method of claim 1 , wherein:

the set of multiple sectors of the magnetic storage media include consecutive sectors of the magnetic storage media; and

writing the segments of the one or more codewords to partitions includes writing segments of at least one of the codewords to nonconsecutive sectors of the multiple sectors of the magnetic storage media.

7. The method of claim 1 , wherein:

the set of multiple sectors of the magnetic storage media include consecutive sectors of the magnetic storage media; and

writing the segments of the one or more codewords to partitions includes writing segments of at least one of the codewords to consecutive sectors of the multiple sectors of the magnetic storage media.

8. The method of claim 1 , wherein writing the respective segments of the one or more codewords to the partitions of the multiple sectors includes writing segments of at least one of the codewords to each sector of the set of the multiple sectors of the magnetic storage media.

9. An apparatus for improved data storage reliability, comprising:

an interface to receive data from a host;

a disk of magnetic storage media arranged in sectors to store the data;

an interleave buffer configured to buffer segments of codewords for writing to the sectors of the magnetic storage media; and

an interleaver configured to:

receive, from the host device, data that corresponds to one or more codewords to be stored by a set of multiple sectors of the magnetic storage media;

select, for each of the one or more codewords, a respective indicator indicating within which partitions of the multiple sectors that segments of the codeword are to be written;

encode the data for the one or more codewords to provide one or more codewords of encoded data;

place, into the interleave buffer, segments of the one or more codewords based on the respective indicator corresponding to each of the codewords; and

write, from the interleave buffer, the segments of the one or more codewords to the partitions of at least some of the multiple sectors to interleave the respective segments of the codewords across the set of multiple sectors of the magnetic storage media.

10. The apparatus of claim 9 , wherein the interleaver is further configured to determine, for at least one of the codewords, a location index for where the segments of the codeword are to be written to respective ones of the partitions of the multiple sectors.

11. The apparatus of claim 10 , further comprising:

a storage media controller configured to generate a write signal that indicates a start of one of the multiple sectors, and wherein:

the interleaver is further configured to:

determine, based on the location index for the at least one codeword, that one of the segments of the codeword is to be written to one of the partitions of the sector; and

write, based on the write signal and the location index, one of the segments of the at least one codeword to the partition of the sector for which the write signal is received.

12. The apparatus of claim 10 , further comprising:

a storage media controller configured to generate a write signal that indicates a start of one of the multiple sectors, and wherein:

the interleaver is further configured to:

determine, based on the location index for the at least one codeword, that one of the segments of the codeword is not to be written to one of the partitions of the sector; and

block, based on the location index, the write signal to prevent writing of the partition of the sector to which one of the segments of the at least one codeword is not to be written.

13. The apparatus of claim 11 , further comprising a storage media controller configured to:

group the multiple sectors of the magnetic storage media as an interleaved sector group;

provide, to the interleaver, data for a set of codewords that corresponds to the interleaved sector group, the data for the set of codewords including the data for the one or more codewords; and

provide, to the interleaver and for each codeword of the set of codewords, an indication of the respective indicator that corresponds to the codeword to enable the interleaver to select the respective indicator to interleave the segments of the codeword.

14. The apparatus of claim 13 , wherein the interleaved sector group includes a number of sectors that is equal to or greater than a number of the one or more codewords with which the interleaved sector group corresponds.

15. The apparatus of claim 9 , wherein:

the segments of the one or more codewords are written to respective partitions of consecutive ones of the multiple sectors; or

the segments of the one or more codewords are written to respective partitions of non-consecutive ones of the multiple sectors.

16. A System-on-Chip (SoC) comprising:

an interface to a storage media controller from which data is received for writing to magnetic storage media;

an interface to a media writer of the magnetic storage media;

an interleave buffer configured to buffer segments of codewords for writing to sectors of the magnetic storage media; and

an interleaver configured to:

receive, from the storage media controller, data that corresponds to one or more codewords to be written to a set of multiple sectors of the magnetic storage media;

receive, from the storage media controller, respective indicators indicating which partitions of the multiple sectors that segments of each of the codewords are to be written;

encode the data for the one or more codewords to provide one or more codewords of encoded data;

place, into the interleave buffer, segments of the one or more codewords based on the respective indicator corresponding to each of the codewords; and

write, from the interleave buffer and with the media writer, the segments of the one or more codewords to the partitions of at least some of the multiple sectors to interleave the respective segments of the codewords across the set of multiple sectors of the magnetic storage media.

17. The SoC of claim 16 , wherein the interleaver is further configured to determine, for at least one of the codewords, a location index for where the segments of the codeword are to be written to respective ones of the partitions of the multiple sectors.

18. The SoC of claim 17 , wherein the interleaver is further configured to:

receive, from the storage media controller, a write signal that indicates a start of one of the multiple sectors;

determine, based on the location index for the at least one codeword, that one of the segments of the codeword is to be written to one of the partitions of the sector; and

write, based on the write signal and the location index, one of the segments of the at least one codeword to the partition of the sector for which the write signal is received.

19. The SoC of claim 17 , wherein the interleaver is further configured to:

receive, from the storage media controller, a write signal that indicates a start of one of the multiple sectors;

determine, based on the location index for the at least one codeword, that one of the segments of the codeword is not to be written to one of the partitions of the sector; and

block, based on the location index, the write signal to prevent writing of the partition of the sector to which one of the segments of the at least one codeword is not to be written.

20. The SoC of claim 16 , wherein:

the segments of the one or more codewords are written to respective partitions of consecutive ones of the multiple sectors; or

the segments of the one or more codewords are written to respective partitions of non-consecutive ones of the multiple sectors.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2020
From: MARVELL SEMICONDUCTOR, INC.
To: MARVELL ASIA PTE, LTD.
Reel/Frame 051978/0457 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2020
From: OBERG, MATS
To: MARVELL SEMICONDUCTOR, INC.
Reel/Frame 052063/0202 →
Continuity (2)
Provisional Application 62810785 · Feb 26, 2019
Related Publication 20200272339A1 · Aug 27, 2020
Cited By (4)
US 12,197,738 US 12,198,724 US 12,455,699 US 12,640,166