System and method for providing multi-initiator capability to an ATA drive
First Claim
1. An adapter for enabling multiple hosts to share access to a single parallel ATA device, comprising:
- a switch for receiving commands from multiple hosts;
a memory module for storing identifying information associated with a received command;
an arbitration logic module operatively connected to the switch for assigning a priority scheme to received commands; and
a state machine that determines when a received command has been completed by the parallel ATA device and updates the memory module to indicate that the commend has been completed.
2 Assignments
0 Petitions
Accused Products
Abstract
A multi-port adapter and method of operation suitable for use with serial ATA devices is disclosed. An adapter includes a switch that receives input from multiple host devices and an arbiter module for assigning a priority scheme to received commands. An outstanding request table is implemented as a memory module for storing identifying information associated with commands received from multiple host devices, and a free pointers queue is maintained to track slots available in the outstanding request table. A command tracker state machine decodes incoming requests from hosts, monitors the execution by these commands by the ATA device, and updates the memory module to reflect completion of commands. Also disclosed is a storage system including an adapter of the present invention and ATA storage devices.
86 Citations
39 Claims
-
1. An adapter for enabling multiple hosts to share access to a single parallel ATA device, comprising:
-
a switch for receiving commands from multiple hosts;
a memory module for storing identifying information associated with a received command;
an arbitration logic module operatively connected to the switch for assigning a priority scheme to received commands; and
a state machine that determines when a received command has been completed by the parallel ATA device and updates the memory module to indicate that the commend has been completed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for enabling multiple hosts to share access to a single parallel ATA device, comprising:
-
receiving commands from a plurality of hosts;
storing identifying information associated with received commands in a memory module;
executing an arbitration scheme to assign a priority to received commands;
forwarding the received command having the highest priority to the parallel ATA device;
monitoring execution of the commands by the parallel ATA device; and
updating the memory module to reflect completion of a command. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A storage module adaptable for use in a storage area network, comprising:
-
a plurality of host bus adapters that receive communication requests from one or more host computers;
a plurality of storage devices communicatively connected with the host bus adapters, wherein the plurality of storage devices includes an ATA disk drive; and
a dual port adapter connected to at least one ATA disk drive, such that the ATA disk drive can maintain communications with at least two host bus adapters. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A method for constructing a storage system, the method comprising:
-
communicatively connecting a first host bus adapter to a dual port adapter;
communicatively connecting a second host bus adapter to the dual port adapter; and
communicatively connecting at least one storage device to the dual port adapter, the at least one storage device comprising an ATA disk drive;
wherein the ATA disk drive is enabled to maintain communication with the first host bus adapter and the second host bus adapter via the dual port adapter. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A storage system comprising:
-
a plurality of host bus adapters that are capable of receiving communication requests from one or more host computers;
a plurality of storage devices communicatively connected with the plurality of host bus adapters, wherein the plurality of storage devices includes at least one ATA device;
a switch adapted to receive commands from the plurality of host bus adapters;
memory adapted to store identifying information associated with each received command; and
arbitration logic operatively connected to the switch and adapted to assign a priority scheme to received commands;
wherein the at least one ATA device is capable of receiving the commands from the plurality of host bus adapters via the switch. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
Specification