Claims
- 1. A coupling circuit for a Serial ATA storage device, comprising:
a first Serial ATA controller-side transceiver receiving a first Serial ATA communication path; a second Serial ATA controller-side transceiver receiving a second Serial ATA communication path; a Serial ATA storage device-side transceiver; coupling circuit switches selectively coupling either the first Serial ATA controller-side transceiver or the second Serial ATA controller-side transceiver to the Serial ATA storage device-side transceiver; and a microcontroller adapted to control the coupling circuit switches.
- 2. The coupling circuit of claim 1, further comprising an out of band squelch control component for activating the first Serial ATA controller-side transceiver receiving a first Serial ATA communication path, the second Serial ATA controller-side transceiver receiving a second Serial ATA communication path, and the Serial ATA storage device-side transceiver.
- 3. The coupling circuit of claim 1, wherein the microcontroller includes a processor coupled to a power switch and coupled to the coupling circuit switches.
- 4. The coupling circuit of claim 1, wherein the microcontroller includes a processor coupled to a set of D flip-flops that are coupled to a power switch and coupled to the coupling circuit switches.
- 5. The coupling circuit of claim 1, wherein the microcontroller is programmed to as follows:
switch the coupling circuit to a first storage controller; switch the coupling circuit to a second storage controller; power up the Serial ATA storage device; and power down the Serial ATA storage device.
- 6. The coupling circuit of claim 5, wherein the microcontroller is further programmed to as follows:
write data to a memory; read data from the memory; and read the status of the coupling circuit.
- 7. The coupling circuit of claim 6, wherein the status includes information on whether the Serial ATA storage device is coupled to the first Serial ATA controller-side transceiver or the second Serial ATA controller-side transceiver, the Serial ATA storage device is powered up or down, the communication status, and/or the board revision and code revision levels of the coupling circuit.
- 8. A method of controlling Serial ATA storage devices in a data storage subsystem, comprising:
connecting the Serial ATA storage devices to a first storage controller; reading the identity of each of the Serial ATA storage devices; dividing the Serial ATA storage devices into set(s); assigning each set to the first storage controller or a second storage controller; and coupling the Serial ATA storage devices as assigned to the first storage controller or the second storage controller.
- 9. The method of claim 8, wherein the step of assigning includes receiving a host I/O command in the first storage controller.
- 10. The method of claim 8, wherein the step of coupling includes the first controller instructing the second storage controller to couple to the set(s) of Serial ATA storage devices.
- 11. The method of claim 8, wherein the step of coupling includes coupling the set(s) of Serial ATA storage devices to the first storage controller and notifying the second storage controller.
- 12. The method of claim 8, wherein the step of dividing the Serial ATA storage devices results in two sets of Serial ATA storage devices plus a spare.
- 13. The method of claim 8, wherein the step of coupling includes coupling all of the Serial ATA storage devices to the first storage controller and coupling all of the Serial ATA storage devices to the second storage controller if the first controller fails.
- 14. A data storage system for assigning control of Serial ATA storage devices, wherein each Serial ATA storage device connects through coupling circuit switches to storage controllers, comprising:
a host sending an I/O command; and a first storage controller receiving the I/O command and commanding the coupling circuit switches to connect the Serial ATA storage devices identified in the I/O command to the first storage controller.
- 15. The data storage system of claim 14, wherein the first storage controller is programmed to read the identity of each of the Serial ATA storage devices and divide the Serial ATA storage devices into set(s).
- 16. The data storage system of claim 14, further comprising a second storage controller programmed to read the identity of each of the Serial ATA storage devices and divide the Serial ATA storage devices into set(s).
- 17. A data storage subsystem for controlling Serial ATA storage devices, wherein each Serial ATA storage device connects through coupling circuit switches to storage controllers, comprising:
a first storage controller; and a second storage controller, wherein the first storage controller assigns the Serial ATA storage devices to the first storage controller or the second storage controller and commands the coupling circuit switches to correspondingly connect the Serial ATA storage devices to the first storage controller or the second storage controller.
- 18. The subsystem of claim 17, wherein the first storage controller reads the identity of each of the Serial ATA storage devices and divides the Serial ATA storage devices into set(s).
- 19. The subsystem of claim 18, wherein the first storage controller assigns the set(s) to the second storage controller and instructs the second storage controller to switch to the set(s) of Serial ATA storage devices.
- 20. The subsystem of claim 18, wherein the first storage controller assigns the set(s) to the second storage controller, switches the set(s) to the second storage controller, and notifies the second storage controller of the assignment.
- 21. A method of restoring operation of a Serial ATA storage device, comprising:
detecting the Serial ATA storage device has failed to respond to an I/O command within a predetermined time; commanding a coupling circuit to power down the Serial ATA storage device for a predetermined time; and commanding a coupling circuit to power up the Serial ATA storage device.
- 22. A coupling circuit for a storage device, comprising:
a first controller-side transceiver receiving a first communication path; a second controller-side transceiver receiving a second communication path; a storage device-side transceiver; coupling circuit switches selectively coupling either the first controller-side transceiver or the second controller-side transceiver to the storage device-side transceiver; and a microcontroller adapted to control the coupling circuit switches and control the power to the storage device.
- 23. A coupling circuit for a Serial ATA storage device, comprising:
means for receiving a first Serial ATA communication path; means for receiving a second Serial ATA communication path; means for coupling either the first Serial ATA communication path or the second Serial ATA communication path to the Serial ATA storage device; and a microcontroller adapted to control the coupling circuit switches.
BACKGROUND
[0001] This application is a continuation-in-part of U.S. application Ser. No. 10/264,603, Systems and Methods of Multiple Access Paths to Single Ported Storage Devices, filed on Oct. 3, 2002 (Attorney Docket No. Pillar 701), which is incorporated herein by reference.
[0002] This application also incorporates herein by reference as follows:
[0003] U.S. application Ser. No. 10/354,797, Methods and Systems of Host Caching, filed on Jan. 29, 2003 (Attorney Docket No. Pillar 709);
[0004] U.S. application Ser. No. 10/397,610, Methods and Systems for Management of System Metadata, filed on Mar. 26, 2003 (Attorney Docket No. Pillar 707);
[0005] U.S. application Ser. No. 10/440,347, Methods and Systems of Cache Memory Management and Snapshot Operations, filed on May 16, 2003 (Attorney Docket No. Pillar 713);
[0006] U.S. application Ser. No. Unknown, Systems and Methods of Data Migration in Snapshot Operations, filed on Jun. 19, 2003 (Attorney Docket No. Pillar 711), Express Mail Label No. EJ039579912US; and
[0007] U.S. application Ser. No. 10/616,128, Snapshots of File Systems in Data Storage Systems, filed on Jul. 8, 2003 (Attorney Docket No. Pillar 714).
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10264603 |
Oct 2002 |
US |
Child |
10677560 |
Oct 2003 |
US |