US2008140881A1PendingUtilityA1
Method and apparatus for storage command and data router
Est. expiryApr 14, 2023(expired)· nominal 20-yr term from priority
G06F 11/0772G06F 11/201G06F 3/0613G06F 3/0635G06F 11/0727G06F 11/2089G06F 3/067
51
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
An interconnecting unit and method for data communication between a plurality of computer hosts and a plurality of storage devices. The interconnecting unit couples the hosts to the storage devices and enables the data communication. The interconnection includes a plurality device control units. Each of the device control unit allows multiple commands to be distributed to multiple storage devices. The communication through the interconnecting unit is strong enough to tolerate failure across one connection path between the hosts and the storage devices.
Claims
exact text as granted — not AI-modified1 . An interconnecting unit for coupling a plurality of hosts to a plurality of storage devices, the coupling involving exchange of a plurality of serial I/O structures between the plurality of hosts and the plurality of storage devices, the interconnecting unit comprising:
a. a plurality of device control units enabling distribution of a plurality of commands to the plurality of storage devices, each of the plurality of commands being an element of a serial I/O structure; b. a plurality of host interface units, each of the plurality of host interface units synchronizing data between a host and the interconnecting unit; c. a plurality of device interface units, each of the plurality of device interface units synchronizing data between a storage device and the interconnecting unit; and d. an interconnect routing unit situated between a device control unit and a device interface unit, wherein the device control unit is configured to select a routing path out of possible routing paths through the interconnect routing unit between the device control unit and the device interface unit upon receiving a command from a host to create a connection between the host and a storage device to allow processing of the command, which is an element of a serial I/O structure.
2 . The interconnecting unit according to claim 1 , wherein each of the plurality of the elements of a serial I/O structure is transmitted in a serial bit format.
3 . The interconnecting unit according to claim 1 , wherein each of the plurality of host interface units converts each of the plurality of the received elements of the serial I/O structure in a serial bit stream format to a character bit format.
4 . The interconnecting unit according to claim 1 , wherein each of the plurality of device interface units converts each of the plurality of the received elements of the serial I/O structure in a serial bit stream format to a character bit format.
5 - 18 . (canceled)
19 . The interconnecting unit according to claim 1 , wherein the routing path includes a read routing path from the host to storage device through the interconnect routing unit and the write routing path from the storage device to the host through the interconnect routing unit, the read routing path and the write routing path being selected by the device control unit.
20 . The interconnecting unit according to claim 19 wherein the device control unit comprises a read select unit configured to select the read routing path and a write select routing unit configured to select the write routing path.
21 . The interconnecting unit according to claim 20 , wherein the plurality of device control units each include a single read select unit and a single write select unit for a single host.
22 . The interconnecting unit according to claim 1 , wherein the device control unit serializes the data for sending to the interconnect unit over a serial link.
23 . The interconnecting unit according to claim 1 , wherein the device interface unit serializes the data for the storage device over a serial link
24 . A method for coupling a host to a storage device, the method comprising:
receiving, at a device control unit, a command from a host, the command being an element of a serial I/O structure; determining a storage device in which to route the command; selecting, at the device control unit, a routing path out of possible routing paths through an interconnect routing unit situated between the device control unit and a device interface unit upon receiving the command from the host to create a connection between the host and the storage device to allow processing of the command; routing the command to the device interface unit through the routing path; serializing data for the command at the device interface unit; and sending the serialized data for the command to the storage device.
25 . The method of claim 24 , further comprising:
monitoring the storage device for a response; determining if the storage device is queue capable; and routing the response to the host if the storage device is queue capable.
26 . The method of claim 25 , further comprising locking the host and the storage device to allow exchanging of serial I/O structures for the command.
27 . The method of claim 25 , further comprising negotiating with the host to indicate which storage device is going to be used.
28 . The method of claim 24 , further comprising:
serializing data for the command from the host; and sending the serialized data for the command to the interconnect unit from the device control unit.
29 . An apparatus comprising:
one or more processors; and logic encoded in one or more tangible media for execution by the one or more processors and when executed operable to: receive, at a device control unit, a command from a host, the command being an element of a serial I/O structure; determine a storage device in which to route the command; select, at the device control unit, a routing path out of possible routing paths through an interconnect routing unit situated between the device control unit and a device interface unit upon receiving the command from the host to create a connection between the host and the storage device to allow processing of the command; route the command to the device interface unit through the routing path; serialize data for the command at the device interface unit; and send the serialized data for the command to the storage device.
30 . The apparatus of claim 29 , wherein the logic when executed is further operable to:
monitor the storage device for a response; determine if the storage device is queue capable; and route the response to the host if the storage device is queue capable.
31 . The apparatus of claim 30 , wherein the logic when executed is further operable to lock the host and the storage device to allow exchanging of serial I/O structures for the command.
32 . The apparatus of claim 30 , wherein the logic when executed is further operable to negotiate with the host to indicate which storage device is going to be used.
33 . The apparatus of claim 29 , wherein the logic when executed is further operable to:
serialize data for the command from the host; and send the serialized data for the command to the interconnect unit from the device control unit.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.