×

Flash storage controller execute loop

  • US 9,483,210 B2
  • Filed: 10/07/2015
  • Issued: 11/01/2016
  • Est. Priority Date: 12/27/2007
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • receiving one or more host commands over a host interface circuit in a storage controller from one or more hosts configured to communicate with the storage controller, the storage controller configured to include one or more storage processors and further configured to be coupled to a flash memory module having multiple flash memory groups, each flash memory group corresponding to a distinct flash memory port in the storage controller, each flash memory port having a flash interface processor;

    creating with the one or more storage processors a plurality of transfer requests from a host command of the one or more host commands, each respective transfer request to perform a portion of the host command and being associated with a respective data structure, wherein a state variable in the respective data structure indicates a status of the respective transfer request;

    for each transfer request of the plurality of transfer requests, assigning the transfer request to a respective worklist associated with a respective flash interface processor of a respective flash memory port, including assigning the plurality of transfer requests to two or more respective worklists associated with two or more flash interface processors of two or more flash memory ports; and

    for each flash interface processor that was assigned a respective transfer request in its respective worklist, performing a task associated with the respective transfer request in the respective worklist.

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