IP Library Granted Patent US 9,842,622
Granted Patent B1
US 9,842,622 · App. 14/582,143 · Granted Dec 12, 2017

Data storage device having improved read failure tolerance

Inventors: Albert Monroe (Longmont, CO); Scott E. Burton (Westminster, CO)
Assignee: Western Digital Technologies, Inc.
G11B20/1889G11B5/012G11B2020/10898
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 9,842,622
App. No.
14/582,143
Granted
Dec 12, 2017
Kind
B1
Abstract

Systems and methods for improving read failure tolerance during read-modify-write operations of data storage systems accommodating a host that uses a logical sector of a size smaller than the physical sector size of the data storage system. In one embodiment, the data storage system can perform sector indirection in response to a read error during a read-modify-write command.

Claims (60)

1. A method for writing data to a physical sector of a data storage system, the method comprising:

receiving a write instruction to write new data to a first portion of the physical sector, wherein the physical sector is larger than a logical sector size used by a host system that sends the write instruction to the data storage system and the data storage system is configured to read and write an entire physical sector; and

upon detection of an error while attempting to read data of a second portion of the physical sector outside of the first portion,

writing the new data to a first portion of an auxiliary location separate from the physical sector;

directing read instructions associated with the first portion of the physical sector to the first portion of the auxiliary location; and

directing read instructions associated with the second portion of the physical sector to the second portion of the physical sector.

2. The method of claim 1 , further comprising directing write instructions associated with the second portion of the physical sector to a second portion of the auxiliary location.

3. The method of claim 2 , wherein directing write instructions associated with the second portion of the physical sector to the second portion of the auxiliary location comprises:

receiving a write instruction to write new data to a sub-portion of the second portion of the physical sector;

writing the new data to a sub-portion of the auxiliary location; and

directing read instructions associated with the sub-portion of the second portion of the physical sector to the sub-portion of the auxiliary location.

4. The method of claim 1 , further comprising copying all data from the first and second portions of the auxiliary location to the physical sector upon determining that the second portion of the auxiliary location has been entirely written with new data.

5. The method of claim 1 , further comprising copying all data from the first and second portions of the auxiliary location to the physical sector upon determining that the data storage system is idle.

6. The method of claim 1 , further comprising re-reading the second portion of the physical sector to recover the data.

7. The method of claim 6 , further comprising:

in the event the re-reading operation is successful, copying the first portion of the auxiliary location to the first portion of the physical sector; and

directing all read instructions associated with the first portion of the physical sector to the first portion of the physical sector.

8. The method of claim 1 , wherein directing read instructions associated with the first portion of the physical sector to the first portion of the auxiliary location comprises mapping the physical location of the first portion to the physical location of the first portion of the auxiliary location.

9. A data storage system comprising: a storage location comprising:

a physical sector; and

an auxiliary sector; and

a controller configured to:

receive a write instruction to write new data to a first plurality of blocks of the physical sector, wherein the physical sector is larger than a logical sector size used by a host system that sends the write instruction to the data storage system and the data storage system is configured to read and write an entire physical sector;

write the new data to a first plurality of blocks of the auxiliary sector;

redirect read instructions associated with the first plurality of blocks of the physical sector to the first plurality of blocks of the auxiliary sector;

redirect write instructions associated with a second plurality of blocks of the physical sector to a second plurality of the auxiliary sector; and

move the first and second plurality of blocks of the auxiliary sector to the first and second plurality of blocks of the physical sector, respectively, upon determining that the second plurality of blocks of the auxiliary sector contains new data.

10. The data storage system of claim 9 , wherein the data storage system comprises a magnetic recording system.

11. The data storage system of claim 9 , wherein moving the first and second plurality of blocks of the auxiliary sector to the first and second plurality of blocks of the physical sector, respectively, is performed upon determining that the data storage system is idle.

12. The data storage system of claim 9 , wherein the auxiliary sector comprises capacity at least equal to the combined capacity of the first and second plurality of blocks of the physical sector.

13. The data storage system of claim 9 , wherein the second plurality of blocks of the physical sector has a smaller capacity than the first plurality of blocks of the physical sector.

14. The data storage system of claim 9 , wherein the operation of directing write instructions associated with the second plurality of blocks of the physical sector to the second plurality of blocks of the auxiliary sector comprises:

receiving a write instruction to write new data to a block of the second plurality of blocks of the physical sector;

writing the new data to a block of the auxiliary sector; and

directing read instructions associated with the block of the second plurality of blocks of the physical sector to the block of the auxiliary sector.

15. The data storage system of claim 9 , further comprising:

a plurality of physical sectors; and

a plurality auxiliary sectors.

16. The data storage system of claim 9 , further comprising writing a known pattern to the auxiliary sector prior to writing to the first plurality of blocks.

17. A controller for managing a data storage device associated with a data storage system, the controller configured to:

receive a write instruction to write new data to a first portion of a physical sector of the data storage device, wherein the physical sector is larger than a logical sector size used by a host system that sends the write instruction and the data storage system is configured to read and write an entire physical sector;

write the new data to a first portion of an auxiliary location;

direct read instructions associated with the first portion of the physical sector to the first portion of the auxiliary location;

direct write instructions associated with a second portion of the physical sector to a second portion of the auxiliary location; and

move the first and second portions of the auxiliary location to the first and second portions of the physical sector, respectively, upon determining that the second portion of the auxiliary location contains new data.

18. The controller of claim 17 , wherein directing write instructions associated with the second portion of the physical sector to the second portion of the auxiliary location comprises:

receiving a write instruction to write new data to a sub-portion of the second portion of the physical sector;

writing the new data to a sub-portion of the auxiliary location; and

directing read instructions associated with the sub-portion of the second portion of the physical sector to the sub-portion of the auxiliary location.

19. A method for managing a data storage device associated with a data storage system, the method comprising:

receiving a write instruction to write runt data to a physical sector of the data storage device; and

performing a read-modify-write operation with the physical sector, the read-modify-write operation comprising:

reading the physical sector to obtain missing runt data;

modifying the physical sector to include the runt data and the missing runt data;

writing the physical sector back to the data storage device;

wherein upon receiving an error when performing the operation of reading the physical sector to obtain missing runt data: writing the runt data to a first auxiliary sector;

directing read requests of the runt data to the first auxiliary sector;

directing write requests over the missing runt data to the physical sector; and

directing read requests of the missing runt data to the physical sector.

20. The method of claim 19 , wherein upon receiving an error when performing a read-modify-write operation to write missing runt data to the auxiliary sector, writing the missing runt data to a second auxiliary sector.

Assignments (6)
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2015
From: MONROE, ALBERT; BURTON, SCOTT E.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 037077/0301 →