Method and apparatus for efficient command queuing within a serial ATA environment
First Claim
Patent Images
1. A method, comprising:
- a) receiving a command, said command tagged with a reference number;
b) sending said command and said reference number over a Serial ATA interface to a device and setting a bit in order to indicate said Serial ATA interface is busy and altering a field of information to reflect that said reference number is presently unavailable for tagging to another command;
c) receiving information from said Serial ATA interface that was sent from said device, said information indicating that said bit should be cleared in order to indicate that said Serial ATA interface is no longer busy and clearing said bit so as to indicate that said Serial ATA interface is no longer busy; and
d) receiving additional information from said Serial ATA interface that was sent from said device, said additional information indicating that said field of information should again be altered to reflect that said reference number is presently available for tagging to another command because said command has been executed and altering said field of information to reflect that said reference number is presently available for tagging to another command.
3 Assignments
0 Petitions
Accused Products
Abstract
A method is described that involves sending a second command over a Serial ATA interface to a device before the device is able to execute a first command that was previously sent to the Serial ATA interface. In a further embodiment of the first command is tagged with a first reference number. In an even further embodiment of the method the second command is tagged with a second reference number.
41 Citations
42 Claims
-
1. A method, comprising:
-
a) receiving a command, said command tagged with a reference number;
b) sending said command and said reference number over a Serial ATA interface to a device and setting a bit in order to indicate said Serial ATA interface is busy and altering a field of information to reflect that said reference number is presently unavailable for tagging to another command;
c) receiving information from said Serial ATA interface that was sent from said device, said information indicating that said bit should be cleared in order to indicate that said Serial ATA interface is no longer busy and clearing said bit so as to indicate that said Serial ATA interface is no longer busy; and
d) receiving additional information from said Serial ATA interface that was sent from said device, said additional information indicating that said field of information should again be altered to reflect that said reference number is presently available for tagging to another command because said command has been executed and altering said field of information to reflect that said reference number is presently available for tagging to another command. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method, comprising:
-
a) receiving a packet having a command and a reference number, said packet received from a Serial ATA interface that is coupled to a host;
b) queuing said command in a queue and sending information to said host over said Serial ATA interface, said information indicating that a bit within said host should be cleared in order to indicate that said Serial ATA interface is no longer busy;
c) executing said command; and
d) sending additional information to said host over said Serial ATA interface, said additional information indicating that a field of information should be altered to reflect that said reference number is presently available for tagging to another command because said command was executed. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. An apparatus, comprising:
-
a) a host side functional unit that communicates over a Serial ATA interface;
b) a host status register, said host side functional unit to set a bit within said host status register in response to reception of a command and a reference number for said command, said command to be sent over said Serial ATA interface, said setting of said bit to indicate said Serial ATA interface is busy; and
c) an SDevice register to present a field of information, said field of information to indicate a status for each one of a plurality of commands, said host side functional unit to set said command'"'"'s status, in response to said reception, to indicate said command is both outstanding and unexecuted. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A machine readable medium having stored thereon a sequence of instructions which when executed by a processor or a controller, cause said processor or controller to implement a method, said method comprising:
-
a) receiving a command, said command tagged with a reference number;
b) sending said command and said reference number over a Serial ATA interface to a device and setting a bit in order to indicate said Serial ATA interface is busy and altering a field of information to reflect that said reference number is presently unavailable for tagging to another command;
c) receiving information from said Serial ATA interface that was sent from said device, said information indicating that said bit should be cleared in order to indicate that said Serial ATA interface is no longer busy and clearing said bit so as to indicate that said Serial ATA interface is no longer busy; and
d) receiving additional information from said Serial ATA interface that was sent from said device, said additional information indicating that said field of information should again be altered to reflect that said reference number is presently available for tagging to another command because said command has been executed and altering said field of information to reflect that said reference number is presently available for tagging to another command. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42)
-
Specification