Claims
- 1. A method for transferring data between a host device and a data storage device, comprising:
providing a first command queue configured to accommodate a preselected maximum number of commands; receiving a command at the first command queue; loading data associated with the command into a first memory space and reporting to the host that the command has been completed; moving the command to a second command queue when disc access is required to execute the command, wherein the second command queue is configured to accommodate a greater number of commands than the preselected maximum number of commands; and executing the commands in the second command queue in a sequence selected to optimize overall data transfer performance.
- 2. The method of claim 1, wherein the command in the loading step is a write command.
- 3. The method of claim 1, further comprising loading data obtained from performance enhancing features into the first memory space.
- 4. The method of claim 3, wherein read data is retrieved from the first memory space without accessing the disc.
- 5. The method of claim 1, wherein the first command queue and the second command queue are located in the same memory location.
- 6. The method of claim 1, wherein data transferred between the host and the first memory space and data transferred between the first memory space and a second memory space occur independently.
- 7. The method of claim 1, further comprising the step of reporting to the host that more commands have been executed at the first command queue than have actually been executed.
- 8. A data storage device, comprising:
a data recording medium on which user data are stored in a number of data sectors; an interface circuit that processes commands from a host device to transfer the user data between the host and selected data sectors; an intermediate memory location coupled to the interface circuit such that user data associated with write commands from the host and nonrequested data from the data recording medium read during latency periods are stored; a first command queue coupled to the intermediate memory location that facilitates transfer of data between the intermediate memory location and the host and receives commands from the host; and a second command queue coupled to the intermediate memory location that facilitates transfer of data between the intermediate memory location and the data recording medium and receives commands from the first command queue, the second command queue having a greater capacity to store commands than the first command queue.
- 9. The data storage device of claim 8, wherein the interface circuit returns a command complete message to the host when a write command is transferred from the first command queue to the second command queue.
- 10. The data storage device of claim 8, wherein the commands are sorted at the second command queue and executed.
- 11. The data storage device of claim 8, wherein data transfer resources of the first command queue and the second command queue are independent of each other.
- 12. The data storage device of claim 8, wherein the first command queue and the second command queue are located in the same memory space.
- 13. The data storage device of claim 8, wherein the first command queue reports to the host that more commands have been executed than actually have been executed and wherein the second command queue sorts and executes the commands that the first command queue has reported as complete.
- 14. The data storage device of claim 8, wherein data associated with read commands is transferred to the host from the intermediate memory location without accessing the data recording medium.
- 15. The data storage device of claim 8, wherein all write commands are moved from the first command queue to the second command queue and removed from the first command queue.
- 16. The data storage device of claim 8, wherein a command in the first command queue that cannot be satisfied from the intermediate memory location is linked with the corresponding command in the second command queue until the command is executed.
- 17. A data storage device configured to transfer data between a host device and a storage medium in response to commands issued by the host device, comprising:
a data buffer; a first command queue and a second command queue coupled to the data buffer; and means for allocating system resources within the data storage device.
- 18. The data storage device of claim 17, wherein the means for allocating system resources comprises an interface circuit comprising the first command queue and the second command queue.
- 19. The data storage device of claim 18, wherein the interface circuit reports to the host that commands have been executed before the commands have actually been executed.
- 20. The data storage device of claim 17, wherein transfer of data between the host and the buffer and between the buffer and the storage medium occur independently.
RELATED APPLICATIONS
[0001] This application claims priority to United States Provisional Application No. 60/354,627 filed Feb. 6, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60354627 |
Feb 2002 |
US |