IP Library › Granted Patent US 8,320,066
Granted Patent B2
US 8,320,066 · App. 12/776,117 · Granted Nov 27, 2012

Storage device and read/write processing method therefor

Assignee: Kabushiki Kaisha Toshiba
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 8,320,066
App. No.
12/776,117
Granted
Nov 27, 2012
Kind
B2
Abstract

According to one embodiment, a storage device includes: a control circuit configured to perform a write retry when data writing fails, wherein the control circuit recognizes that read commands are issued at regular intervals for reproducing continuous pieces of data, and upon detecting an error requiring the write retry to be performed in the data writing by a write command received during the reproduction, the control circuit interrupts the data writing, perform data reading to store the data in the buffer memory after allocating a storage area for the data in the buffer memory, and then resumes the data writing.

Claims (43)

1. A storage device comprising:

a reader and writer configured to read data from a storage medium and to write data to the storage medium with a head;

a buffer memory configured to store the data; and

a controller configured to retry data writing data if the data writing was unsuccessful, wherein

the controller is further configured to detect whether a host has received read commands issued at regular intervals for reproducing continuous data, and

wherein the controller is further configured to interrupt the data writing, to read data in response to the read commands, to allocate a storage area for the data in the buffer memory, to store the data in the buffer memory, and to resume the data writing, if the controller detects an error in the data writing by a write command received during the reproduction.

2. The storage device of claim 1 , wherein the controller is configured to determine whether a space for storing the data is available in the buffer memory when the controller detects the error, and the controller is configured to read the data after the allocation of the storage area if the space is available in the buffer memory.

3. The storage device of claim 1 , wherein the controller is configured to determine whether a read command of the read commands to be processed next has been received, and the control circuit is configured to allocate the storage area for data in the read command to be processed next, if the read command to be processed next has not been received yet, and to read the data once the read command to be processed next has been received.

4. The storage device of claim 1 , wherein the controller is configured to determine whether a read command to be processed next of the read commands has been received, and the controller is configured to allocate the storage area for data of the read command to be processed next and for data of a read command subsequent to the read command to be processed next when the read command to be processed next has been received, and to read the data.

5. The storage device of claim 2 ,

wherein the buffer is configured to store data of the write command first, and the storage medium is configured to store the data, during the data writing, and

wherein the controller is configured to write the data with a write command which is not the write command corresponding to the retry of writing while allocating the storage area for a read command to be processed next, and to read the data when the space is unavailable in the buffer memory.

6. The storage device of claim 1 , wherein the controller is configured to detect the read commands based on a data size requested by the read command.

7. The storage device of claim 1 , wherein the controller is configured to detect the read commands by analyzing issue patterns in the issued read commands.

8. The storage device of claim 1 , wherein the controller is configured to determine the error by at least one of detection of vibration on the device and a positional error of the head during the writing.

9. The storage device of claim 1 , wherein the reader and writer comprises:

a head configured to read the data from the storage medium and to write the data to the storage medium; and

an actuator configured to position the head at a target track of the storage medium.

10. A data reading and writing method for a storage device, comprising:

reading out data from a buffer memory or from a storage medium with a reader and writer in response to a read command from a host, and transmitting the data to the host;

storing data from the host in the buffer memory in response to a write command from the host, and subsequently writing the data on the storage medium with the reader and writer, and retrying to write when the data writing fails;

detecting that the received read commands are issued at regular intervals by the host for reproducing continuous data;

interrupting the data writing upon detecting an error in the data writing by the write command received during the reproduction;

reading the data, allocating a storage area for the data in the buffer memory, and storing the data in the buffer memory; and

resuming the data writing after the storing.

11. The data reading and writing method of claim 10 , wherein the storing comprises:

determining whether a space for storing the data is available in the buffer memory when the error is detected; and

reading the data after the allocation of the storage area when the space is available in the buffer memory.

12. The data reading and writing method of claim 10 , wherein the storing comprises:

determining whether a read command to be processed next of the read commands has been received; and

allocating the storage area for data of the read command to be processed next, if the read command to be processed next has not been received yet and reading the data once the read command to be processed next has been received.

13. The data reading and writing method of claim 10 , wherein the storing comprises:

determining whether a read command to be processed next of the read commands has been received; and

allocating the storage area for data of the read command to be processed next and for data of a read command subsequent to the read command to be processed next when the read command to be processed next has been received, and reading the data.

14. The data reading and writing method of claim 11 , further comprising:

writing the data by a received write command which is not the write command corresponding to the retry of writing when the space is unavailable in the buffer memory; and

allocating the storage area for a read command to be processed next, and reading the data.

15. The data reading and writing method of claim 10 , wherein the recognizing recognizes the reproduction based on a data size requested by the read command.

16. The data reading and writing method of claim 10 , further comprising detecting the read commands by analyzing patterns in the issued read commands.

17. The data reading and writing method of claim 10 , wherein the interrupting comprises determining the error by at least one of detection of vibration on the device and a positional error of the head during the writing.

18. The data reading and writing method of claim 10 , wherein the reader and writer comprises:

a head configured to read the data from the storage medium and to write the data to the storage medium; and

an actuator configured to position the head at a target track of the storage medium.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2012
From: TOSHIBA STORAGE DEVICE CORPORATION
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 027672/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2010
From: YAMAKAWA, TERUJI
To: TOSHIBA STORAGE DEVICE CORPORATION
Reel/Frame 024359/0089 →
Continuity (2)
Continuation PCTJP2007001219 · Nov 7, 2007
Related Publication 20100214687A1 · Aug 26, 2010