Legal claims defining the scope of protection, as filed with the USPTO.
1. A system comprising: a first controller configured to communicate with a host via a first interface; a second controller configured to communicate with a storage device via a second interface, wherein the second interface is separate from the first interface; and a bridge module configured to allow the second controller to transfer data between the storage device and the host and to allow the second controller to access memory of the host via the first interface during the transfer, and provide a data path for the transfer between the storage device and the host, wherein the data path includes the first controller, the bridge module, and the second controller, and wherein the data path excludes a buffer to store the data.
2. The system of claim 1 , wherein the bridge module is configured to allow the second controller to convert an incoming command from the host while the transfer is in progress.
3. The system of claim 1 , wherein the bridge module is configured return to the host a status of the transfer by interpreting information received from the second controller about the transfer.
4. The system of claim 1 , wherein: the first interface is a Universal Serial Bus (USB) interface; and the second interface is a Serial Advanced Technology Attachment (SATA) interface.
5. The system of claim 1 , wherein the bridge module is configured to: convert a first command received from the host to a second command, wherein the first command is compliant with the first interface, and wherein the second command is compliant with the second interface; and transfer the second command to the second interface.
6. The system of claim 5 , further comprising the second interface configured to: request the bridge module for the data path providing access to the memory of the host; transfer the data from the memory of the host to the storage device via the data path according to the second command in response to the first command being a write command to write the data to the storage device; and transfer the data from the storage device to the memory of the host according to the second command in response to the first command being a read command to read the data from the storage device.
7. The system of claim 1 , wherein the bridge module comprises: a bridge interface module configured to receive a request from the second controller for the data path providing access to the memory of the host; and an arbitration module configured to provide, based on the request, the data path to the second controller to transfer the data between the storage device and the memory of the host, wherein the bridge interface module allows the second controller to transfer the data between the storage device and the memory of the host via the data path.
8. A system-on-chip (SOC) comprising: a Universal Serial Bus (USB) controller configured to interface a storage controller of a storage device to a host via a USB interface; a Serial Advanced Technology Attachment (SATA) controller configured to interface the storage controller to the storage device via a SATA interface; a command handling module configured to convert a USB command received by the USB controller from the host to a SATA command, and output the SATA command to the SATA controller, wherein the SATA controller is configured to generate a request for a data path for access to a memory of the host to transfer data between the storage device and the memory of the host according to the SATA command, wherein the data path is a path between the memory and the storage device, and wherein the data path excludes a buffer to store the data; and a data handling module configured to receive the request from the SATA controller, and provide the data path to the SATA controller to transfer the data between the storage device and the memory of the host, wherein the SATA controller is configured to transfer the data between the storage device and the memory of the host according to the SATA command.
9. The SOC of claim 8 , further comprising a status handling module configured to: receive and interpret command completion information from the SATA controller, and generate, based on the command completion, a status of the transfer by determining whether the transfer is completed without error, and send the status of the transfer to the host via the USB controller.
10. A method comprising: communicating with a host via a first interface of a first controller; communicating with a storage device via a second interface of a second controller, wherein the second interface is separate from the first interface; allowing the second controller to transfer data between the storage device and the host; allowing the second controller to access memory of the host via the first interface during the transfer; and providing a data path for the transfer between the storage device and the host, wherein the data path includes the first controller and the second controller, and wherein the data path excludes a buffer to store the data.
11. The method of claim 10 , further comprising converting an incoming command from the host while the transfer is in progress.
12. The method of claim 10 , further comprising returning to the host a status of the transfer by interpreting information received from the second controller about the transfer.
13. The method of claim 10 , wherein: the first interface is a Universal Serial Bus (USB) interface; and the second interface is a Serial Advanced Technology Attachment (SATA) interface.
14. The method of claim 10 , further comprising: converting a first command received from the host to a second command, wherein the first command is compliant with the first interface, and wherein the second command is compliant with the second interface; and transferring the second command to the second interface.
15. The method of claim 14 , further comprising: requesting the data path providing the second controller access to the memory of the host; transferring the data from the memory of the host to the storage device via the data path according to the second command in response to the first command being a write command to write the data to the storage device; and transferring the data from the storage device to the memory of the host according to the second command in response to the first command being a read command to read the data from the storage device.
16. The method of claim 10 , further comprising: receiving a request from the second controller for the data path providing access to the memory of the host; providing, based on the request, the data path to the second controller to transfer the data between the storage device and the memory of the host; and allowing the second controller to transfer the data between the storage device and the memory of the host via the data path.
Unknown
November 26, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.