×

Method of operating a data storage system having plural data pipes

  • US 8,090,789 B1
  • Filed: 06/28/2007
  • Issued: 01/03/2012
  • Est. Priority Date: 06/28/2007
  • Status: Active Grant
First Claim
Patent Images

1. A method for transferring data between a host computer/server and a bank of disk drives through a system interface, such system interface having a plurality of storage processors, one portion of the storage processors having a user data port coupled to the host computer/server and another portion of the storage processors having a user data port coupled to the bank of disk drives, the method comprising:

  • passing packets of user data between the plurality of storage processors via a packet switching network coupled to the plurality of storage processors, each one of the plurality of storage processors comprising;

    a CPU section; and

    a data pipe section coupled between the user data port and the packet switching network, such data pipe section comprising;

    a plurality of data pipes, wherein the data pipes are initially void of any apriori assignment of priority; and

    wherein the packets of user data at the user data port passes through the data pipes to the packet switching network;

    placing the descriptors on one or more request rings each one of the descriptors being associated with a corresponding one of a plurality of user data I/O transfers, andwherein the ring manager;

    selects one of the request rings to service next using a prioritized scheduling algorithm;

    retrieves one of the descriptors from the selected one of the request rings;

    determines which one or ones of the plurality of data pipes is available to process the selected descriptor;

    selects the determined available one of the plurality of data pipes for a corresponding one of the plurality of user data I/O transfers;

    wherein the selecting determined available one of the plurality of data pipes for a corresponding one of the plurality of user data I/O transfers comprises selecting the determined available one of the plurality of data pipes for a corresponding one of the plurality of user data I/O transfers; and

    programming the selected one of the data pipes in accordance with the retrieved descriptors to control the flow of the user data associated with the corresponding user data I/O transfer passing through such selected one of the data pipes.

View all claims
  • 9 Assignments
Timeline View
Assignment View
    ×
    ×