×

Efficient enforcement of command execution order in solid state drives

  • US 10,019,196 B2
  • Filed: 07/30/2015
  • Issued: 07/10/2018
  • Est. Priority Date: 08/23/2012
  • Status: Active Grant
First Claim
Patent Images

1. A method, comprising:

  • receiving, by a memory system, a plurality of commands from a host, the plurality of commands including corresponding data;

    storing a subset of the plurality of commands that are to be executed in an order in which they are received into an in-order queue;

    assigning a respective sequence number to each command of the subset, wherein the respective sequence number corresponds to an order in which each command of the subset is received by the memory system;

    executing, by a processor included in the memory system, commands of the subset in accordance with internal scheduling criteria that allows commands to be executed in an order different than the order in which the commands were received;

    storing, in the memory system, the corresponding data and the respective sequence number for executed commands;

    recording, in the memory system, the respective sequence number for a last command of a series of commands that have executed successfully in an order in which each command of the series was received by the memory system;

    sending a message to the host indicating that a given command of the subset has been executed in response to determining that each command of the subset with a respective sequence number less than the respective sequence number assigned to the given command has been successfully executed; and

    in response to determining that the memory system is recovering from a power disruption;

    skipping stored sequence numbers less than the recorded sequence number; and

    scanning the stored sequence numbers, beginning at the recorded sequence number, to identify a gap in the respective sequence numbers stored in the memory system.

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