Apparatus for detecting data collision on data bus for out-of-order memory accesses with access execution time based in part on characterization data specific to memory
First Claim
1. A method for reordering commands to achieve an optimal command sequence based on a target response restriction that determines an optimal slot for a data transfer between an initiator controller and a target subsystem by prohibiting an issuance of a command that would cause a data conflict, comprising:
- at a command queue, storing a command to be issued, storing a time indicating when the data transfer appears on a data bus between the controller and the target device after the command was issued to the target, storing a burst-bit indicating data burst transfer and a read/write bit (r/w);
in a data queue coupled to the command queue, storing a time indicating when the data transfer will appear on the data bus between the controller for an already issued request to the target device, and storing the burst bit and the read/write bit (r/w);
at a collision detector coupled to the data queue and the command queue, detecting the possible collisions on the data bus between the issued command that is stored in the command queue and already issued commands that are stored in the data queue;
storing target subsystem characterization data at a target subsystem characterization data base; and
at a queues and link controller coupled to the collision detector the data queue and the command queue, reordering commands to be issued wherein the controller calculates the new issue time of commands as well as a time when the data appears on the data bus, wherein the new issue time is based at least in part on the target subsystem characterization data, and storing the reordered commands.
3 Assignments
0 Petitions
Accused Products
Abstract
According to the present invention, a system for reordering commands to achieve an optimal command sequence based on a target response restriction is disclosed. A data queue coupled to a command queue is arranged to store a time indicating when the data transfer will appear on the data bus between the controller for an already issued request to the target device as well as arranged to store the burst bit and the read/write bit (r/w). The system also includes a collision detector coupled to the data queue and the command queue arranged to detect the possible collisions on the data bus between the issued command that is stored in the command queue and already issued commands that are stored in the data queue. A queues and link controller is coupled to the collision detector and the data queue and the command queue and is arranged to store and reorder commands to be issued wherein the controller calculates the new issue time of commands as well as a time when the data appears on the data bus.
67 Citations
10 Claims
-
1. A method for reordering commands to achieve an optimal command sequence based on a target response restriction that determines an optimal slot for a data transfer between an initiator controller and a target subsystem by prohibiting an issuance of a command that would cause a data conflict, comprising:
-
at a command queue, storing a command to be issued, storing a time indicating when the data transfer appears on a data bus between the controller and the target device after the command was issued to the target, storing a burst-bit indicating data burst transfer and a read/write bit (r/w);
in a data queue coupled to the command queue,storing a time indicating when the data transfer will appear on the data bus between the controller for an already issued request to the target device, and storing the burst bit and the read/write bit (r/w);
at a collision detector coupled to the data queue and the command queue,detecting the possible collisions on the data bus between the issued command that is stored in the command queue and already issued commands that are stored in the data queue;
storing target subsystem characterization data at a target subsystem characterization data base; and
at a queues and link controller coupled to the collision detector the data queue and the command queue,reordering commands to be issued wherein the controller calculates the new issue time of commands as well as a time when the data appears on the data bus, wherein the new issue time is based at least in part on the target subsystem characterization data, and storing the reordered commands. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus for reordering commands to achieve an optimal command sequence based on a target response restriction that determines an optimal slot for a data transfer between an initiator controller and a target subsystem by prohibiting an issuance of a command that would cause a data conflict, comprising:
-
at a command queue, a means for storing a command to be issued, a means for storing a time indicating when the data transfer appears on a data bus between the controller and the target device after the command was issued to the target, a means for storing a burst-bit indicating data burst transfer and a read/write bit (r/w);
in a data queue coupled to the command queue,a means for storing a time indicating when the data transfer will appear on the data bus between the controller for an already issued request to the target device, and a means for storing the burst bit and the read/write bit (r/w);
at a collision detector coupled to the data queue and the command queue,a means for detecting the possible collisions on the data bus between the issued command that is stored in the command queue and already issued commands that are stored in the data queue;
a means for storing target subsystem characterization data at a target subsystem characterization data base; and
at a queues and link controller coupled to the collision detector the data queue and the command queue, a means for reordering commands to be issued wherein the controller calculates the new issue time of commands as well as a time when the data appears on the data bus, wherein the new issue time is based at least in part on the target subsystem characterization data, and a means for storing the reordered commands. - View Dependent Claims (7, 8, 9, 10)
-
Specification