Patents by Inventor David W. Claude

David W. Claude has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11003580
    Abstract: Method and apparatus for managing data in a storage device, such as a solid-state drive (SSD). In some embodiments, write and read commands from a client device are placed into a command queue pending servicing to transfer data between the client device and a non-volatile memory (NVM). A write cache temporarily stores sets of writeback data pending transfer. A cache manager detects an overlap condition in which a subsequently received command at least partially overlaps a pending write command. In response, the cache manager enacts a change in caching policy that includes retention of the cached writeback data to aid in the servicing of the subsequently received command. The changes in caching policy can include an increase in the size of the write cache, delays in the writing of hot writeback data sets, the coalescing of different writeback data sets, cache hits using the cached writeback data, etc.
    Type: Grant
    Filed: April 30, 2020
    Date of Patent: May 11, 2021
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Patent number: 10949110
    Abstract: Apparatus and method for managing metadata in a data storage device, such as a solid-state drive (SSD). In some embodiments, a non-volatile memory (NVM) includes a population of semiconductor memory dies. The dies are connected a number of parallel channels such that less than all of the semiconductor dies are connected to each channel. A controller circuit apportions the semiconductor memory dies into a plurality of die sets, with each die set configured to store user data blocks associated with a different user. The controller circuit subsequently rearranges the dies into a different arrangement of die sets so that at least one die is migrated from a first dies set to a second die set. A map manager circuit is configured to establish an array of pointers in a memory to identify contiguous portions of map metadtata that describe user data stored in the at least one migrated die.
    Type: Grant
    Filed: June 29, 2018
    Date of Patent: March 16, 2021
    Assignee: Seagate Technology LLC
    Inventors: Stacey Secatch, David W. Claude, Steven S. Williams, Jeff Rogers
  • Patent number: 10872015
    Abstract: A data storage system can connect a plurality of remote hosts to a plurality of die sets resident in a semiconductor memory. Execution of at least one data access command addressed by a remote host of the plurality of remote hosts can occur prior to a power interruption event being detected for at least one die set of the plurality of die sets. User-generated data associated with the at least one data access command may then be flushed to a predetermined location responsive to an available resource budget associated with the power interruption event.
    Type: Grant
    Filed: June 29, 2018
    Date of Patent: December 22, 2020
    Assignee: Seagate Technology LLC
    Inventors: Stacey Secatch, Steven S. Williams, David W. Claude, Benjamin J. Scott, Kyumsung Lee, Jeff Rogers
  • Patent number: 10817217
    Abstract: A data storage system can divide a semiconductor memory into a plurality of die sets prior to populating a die set queue with data access commands addressed by a remote host and having a first order. A command order strategy generated by a time-to-ready module organizes the data access commands to a second order that populate a channel queue and are executed as directed by the time-to-ready module in the second order.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: October 27, 2020
    Assignee: Seagate Technology LLC
    Inventors: Steven S. Williams, David W. Claude
  • Patent number: 10552086
    Abstract: Apparatus and method for managing shared resources in a data storage device such as a solid-state drive (SSD). In some embodiments, a non-volatile memory (NVM) has a population of semiconductor memory dies which are divided into die sets for different users. Each die set includes user garbage collection units (GCUs) for storage of user data blocks by the associated user and overprovisioned global GCUs to store user data blocks from the users of the other die sets. When an imbalance condition exists such that the workload traffic level of a first die set exceeds a workload traffic level of a second die set, at least one host I/O command for the first die set is offloaded for servicing using a selected global GCU of the second die set. The offloaded data may be subsequently transferred to the first die set after the imbalance condition is resolved.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: February 4, 2020
    Assignee: Seagate Technology LLC
    Inventors: David W. Claude, Steven S. Williams, Stacey Secatch
  • Publication number: 20200004457
    Abstract: Apparatus and method for managing shared resources in a data storage device such as a solid-state drive (SSD). In some embodiments, a non-volatile memory (NVM) has a population of semiconductor memory dies which are divided into die sets for different users. Each die set includes user garbage collection units (GCUs) for storage of user data blocks by the associated user and overprovisioned global GCUs to store user data blocks from the users of the other die sets. When an imbalance condition exists such that the workload traffic level of a first die set exceeds a workload traffic level of a second die set, at least one host I/O command for the first die set is offloaded for servicing using a selected global GCU of the second die set. The offloaded data may be subsequently transferred to the first die set after the imbalance condition is resolved.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: David W. Claude, Steven S. Williams, Stacey Secatch
  • Publication number: 20200004450
    Abstract: Apparatus and method for managing metadata in a data storage device, such as a solid-state drive (SSD). In some embodiments, a non-volatile memory (NVM) includes a population of semiconductor memory dies. The dies are connected a number of parallel channels such that less than all of the semiconductor dies are connected to each channel. A controller circuit apportions the semiconductor memory dies into a plurality of die sets, with each die set configured to store user data blocks associated with a different user. The controller circuit subsequently rearranges the dies into a different arrangement of die sets so that at least one die is migrated from a first dies set to a second die set. A map manager circuit is configured to establish an array of pointers in a memory to identify contiguous portions of map metadtata that describe user data stored in the at least one migrated die.
    Type: Application
    Filed: June 29, 2018
    Publication date: January 2, 2020
    Inventors: Stacey Secatch, David W. Claude, Steven S. Williams, Jeff Rogers
  • Publication number: 20200004971
    Abstract: Apparatus and method for managing entropy in a cryptographic processing system, such as but not limited to a solid-state drive (SSD). In some embodiments, a processing device is operated to transfer data between a host device and a non-volatile memory (NVM). In response to the detection of a power down event associated with the processing device, entropy associated with the power down event is collected and stored in a memory. Upon a subsequent reinitialization of the processing device, the entropy is conditioned and used as an input to a cryptographic function to subsequently transfer data between the host device and the NVM. In some embodiments, the entropy is obtained from the state of a hardware timer that provides a monotonically increasing count for timing control. In other embodiments, the entropy is obtained from a RAID buffer used to store data to a die set of the NVM.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Stacey Secatch, Steven S. Williams, David W. Claude, Benjamin J. Scott, Kyumsung Lee, Stephen H. Perlmutter
  • Publication number: 20200004670
    Abstract: Apparatus and method for managing metadata in a data storage device, such as a solid-state drive (SSD). In some embodiments, a non-volatile memory (NVM) includes a population of semiconductor memory dies. The dies are connected a number of parallel channels such that less than all of the semiconductor dies are connected to each channel. A controller circuit apportions the semiconductor memory dies into a plurality of die sets, with each die set configured to store user data blocks associated with a different user. A separate set of map data is generated to describe user data blocks stored to each die set. The controller circuit stores the respective sets of map data in the associated die sets so that no die set stores map data associated with a different die set. The die sets may be arranged in accordance with the NVMe (Non-Volatile Memory Express) specification.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Steven S. Williams, Kyumsung Lee, David W. Claude
  • Publication number: 20200004443
    Abstract: A data storage system can arrange semiconductor memory into a plurality of die sets where performance metrics of execution of a first data access command to a first die set and of a second data access command to a second die set are measured. A proactive strategy is generated to maintain consistent data access command execution performance with a quality of service module based on the measured performance metrics and a third data access command is altered, as directed by the proactive strategy, to prevent a predicted non-uniformity of data access command performance between the first die set and the second die set.
    Type: Application
    Filed: June 29, 2018
    Publication date: January 2, 2020
    Inventors: Stacey Secatch, David W. Claude
  • Publication number: 20200004455
    Abstract: A data storage system can divide a semiconductor memory into a plurality of die sets prior to populating a die set queue with data access commands addressed by a remote host and having a first order. A command order strategy generated by a time-to-ready module organizes the data access commands to a second order that populate a channel queue and are executed as directed by the time-to-ready module in the second order.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Steven S. Williams, David W. Claude
  • Publication number: 20200004456
    Abstract: A semiconductor data storage memory can receive data access commands into a queue in a first time sequence that correspond with the transfer of data between a host and portions of the memory. The memory may be divided into separate portions that each have a different owner and the access commands may be issued to each of the respective separate portions. The access commands can subsequently be executed in a different, second time sequence responsive to estimated completion times for each of the access commands based on measured completion times for previously serviced, similar commands to maintain a nominally consistent quality of service level for each of the respective owners.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Steven S. Williams, Stacey Secatch, David W. Claude, Kyumsung Lee, Benjamin J. Scott
  • Publication number: 20200004636
    Abstract: A data storage system can connect a plurality of remote hosts to a plurality of die sets resident in a semiconductor memory. Execution of at least one data access command addressed by a remote host of the plurality of remote hosts can occur prior to a power interruption event being detected for at least one die set of the plurality of die sets. User-generated data associated with the at least one data access command may then be flushed to a predetermined location responsive to an available resource budget associated with the power interruption event.
    Type: Application
    Filed: June 29, 2018
    Publication date: January 2, 2020
    Inventors: Stacey Secatch, Steven S. Williams, David W. Claude, Benjamin J. Scott, Kyumsung Lee, Jeff Rogers
  • Publication number: 20200004448
    Abstract: A data storage system can arrange semiconductor memory into a plurality of die sets that each store a top-level map with each top-level map logging information about user-generated data stored in a die set in which the top-level map is stored. A journal can be stored in at least one die set of the plurality of die sets with each journal logging a change to user-generated data stored in the die set of the plurality of die sets in which the journal and top-level map are each located.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Stacey Secatch, Steven S. Williams, David W. Claude, Benjamin J. Scott, Kyumsung Lee, Jeff Rogers