Patents by Inventor Ryan James Goss

Ryan James Goss 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: 11392304
    Abstract: Apparatus and method for object storage, such as a solid-state drive (SSD) or array thereof. In some embodiments, data arranged as an object are presented for storage to a non-volatile memory (NVM) of a data storage device. Prior to storage, a configuration of the NVM is adaptively adjusted, such as by adjusting a garbage collection unit (GCU) layout, an error correction code (ECC) scheme, and/or a map metadata format used by the NVM. The object is thereafter stored to the NVM using the adaptively adjusted configuration. A controller of the data storage device generates a predicted remaining storage capacity of the NVM in terms of additional objects that can be stored by the NVM responsive to the adaptively adjusted configuration of the NVM. A non-linear sliding scale may be used such that a greater number of smaller objects or a smaller number of larger objects may be accommodated.
    Type: Grant
    Filed: May 29, 2020
    Date of Patent: July 19, 2022
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Patent number: 11307806
    Abstract: Improving performance in solid state devices (SSDs) by controlling or throttling the depth of the request queue. In one implementation, a method includes monitoring a request queue in a solid state device (an SSD), the request queue comprising a first request and a second request having an actual time interval therebetween, determining a queue depth for the request queue, determining a target interval based on the queue depth and a target queue depth, and responsive to the actual time interval being less than the target interval, delaying acting on the second request until after the target interval.
    Type: Grant
    Filed: July 22, 2020
    Date of Patent: April 19, 2022
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Shuhei Tanakamaru, Ryan James Goss, Dana Lynn Simonson, Erich Franz Haratsch
  • Publication number: 20220059171
    Abstract: A solid-state memory may have many non-individually erasable memory cells arranged into dies with each die having a first plane and a second plane. Receipt of a single read command from a host connected to the solid-state memory can prompt generation of a first reference voltage and a second reference voltage by the controller to produce asynchronous data retrieval. The reference voltages can be different and selected by the controller to induce a predetermined delay between retrieval of data from the first plane and retrieval of data from the second plane from the single read command. Passage of each reference voltage concurrently to a common single data address of the first plane and the second plane may produce asynchronous retrieval of data from the respective first plane and second plane.
    Type: Application
    Filed: August 19, 2021
    Publication date: February 24, 2022
    Inventor: Ryan James Goss
  • Publication number: 20220027084
    Abstract: Improving performance in solid state devices (SSDs) by controlling or throttling the depth of the request queue. In one implementation, a method includes monitoring a request queue in a solid state device (an SSD), the request queue comprising a first request and a second request having an actual time interval therebetween, determining a queue depth for the request queue, determining a target interval based on the queue depth and a target queue depth, and responsive to the actual time interval being less than the target interval, delaying acting on the second request until after the target interval.
    Type: Application
    Filed: July 22, 2020
    Publication date: January 27, 2022
    Inventors: Shuhei TANAKAMARU, Ryan James GOSS, Dana Lynn SIMONSON, Erich Franz HARATSCH
  • Publication number: 20210397566
    Abstract: A data storage system can transfer user-generated data from a data storage device to a host responsive to a host workload that consists of data read requests from the host received at a requested rate. A completion rate of a data read request can be delayed in accordance to a data access uniformity strategy to nominally match the requested rate.
    Type: Application
    Filed: June 22, 2020
    Publication date: December 23, 2021
    Inventors: Ryan James Goss, Graham David Ferris, Daniel John Benjamin, Ryan Charles Weidemann
  • Patent number: 11204883
    Abstract: A data storage system can transfer user-generated data from a data storage device to a host responsive to a host workload that consists of data read requests from the host received at a requested rate. A completion rate of a data read request can be delayed in accordance to a data access uniformity strategy to nominally match the requested rate.
    Type: Grant
    Filed: June 22, 2020
    Date of Patent: December 21, 2021
    Inventors: Ryan James Goss, Graham David Ferris, Daniel John Benjamin, Ryan Charles Weidemann
  • Publication number: 20210373785
    Abstract: Apparatus and method for object storage, such as a solid-state drive (SSD) or array thereof. In some embodiments, data arranged as an object are presented for storage to a non-volatile memory (NVM) of a data storage device. Prior to storage, a configuration of the NVM is adaptively adjusted, such as by adjusting a garbage collection unit (GCU) layout, an error correction code (ECC) scheme, and/or a map metadata format used by the NVM. The object is thereafter stored to the NVM using the adaptively adjusted configuration. A controller of the data storage device generates a predicted remaining storage capacity of the NVM in terms of additional objects that can be stored by the NVM responsive to the adaptively adjusted configuration of the NVM. A non-linear sliding scale may be used such that a greater number of smaller objects or a smaller number of larger objects may be accommodated.
    Type: Application
    Filed: May 29, 2020
    Publication date: December 2, 2021
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Publication number: 20210365384
    Abstract: Apparatus and method for managing metadata in a data storage device such as a solid-state drive (SSD). The metadata are stored in combined (combo) pages in a non-volatile memory (NVM) each having first and second level map entries. The second level map entries provide a logical-to-physical address translation layer for user data blocks stored to the NVM, and the first level map entries describe the second level map entries in the combo page. A global map structure is accessed to identify a selected combo page in the NVM associated with a pending access command. The first and second level map entries are retrieved from the combo page, and the second level map entries are used to identify a target location for the transfer of user data blocks to or from the NVM.
    Type: Application
    Filed: May 21, 2020
    Publication date: November 25, 2021
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Patent number: 11132140
    Abstract: Method and apparatus for enhancing performance of a storage device, such as a solid-state drive (SSD). A non-volatile memory (NVM) stores user data from a client device. Map metadata in a local memory describes locations of the user data in the NVM. The map metadata is arranged as a snapshot and accumulated journal updates. A metadata manager circuit combines a first portion of the journal updates with the existing snapshot to generate a new snapshot, and places a second portion of the journal updates into a read-only journal table in accordance with a selected metadata journaling strategy. A controller uses the updated snapshot and the table to service subsequently received client commands. Only dirty entries are processed and are written at the slowest acceptable rate, thereby improving client I/O performance during normal operation and time to ready (TTR) performance of the device during initialization.
    Type: Grant
    Filed: April 24, 2020
    Date of Patent: September 28, 2021
    Assignee: Seagate Technology, LLC
    Inventors: Daniel John Benjamin, Ryan James Goss
  • Publication number: 20210279188
    Abstract: Method and apparatus for enhancing performance of a storage device, such as a solid-state drive (SSD). In some embodiments, the storage device monitors a rate at which client I/O access commands are received from a client to transfer data with a non-volatile memory (NVM) of the storage device. A ratio of background access commands to the client I/O access commands is adjusted to maintain completion rates of the client I/O access commands at a predetermined level. The background access commands transfer data internally with the NVM to prepare the storage device to service the client I/O access commands, and can include internal reads and writes to carry out garbage collection and metadata map updates. The ratio may be adjusted by identifying a workload type subjected to the storage device by the client.
    Type: Application
    Filed: March 5, 2020
    Publication date: September 9, 2021
    Inventors: Ryan James Goss, David W. Claude, Graham David Ferris, Daniel John Benjamin, Ryan Charles Weidemann
  • Patent number: 11106390
    Abstract: Method and apparatus for managing data in a storage device, such as a solid-state drive (SSD). In some embodiments, a first read command from a command queue is forwarded to a non-volatile memory (NVM) to request retrieval of a first set of readback data. While the NVM initiates in-process execution of the first read command, an expanded read command is issued to the NVM. The expanded read command supercedes the first read command and requests an expanded set of readback data that includes the first set of readback data as well as a second set of readback data. The second set of readback data may be associated with a second read command in the command queue. The NVM transfers the expanded set of readback data to a read buffer responsive to the expanded read command. The first and second read commands may be client reads, background reads or both.
    Type: Grant
    Filed: April 24, 2020
    Date of Patent: August 31, 2021
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Publication number: 20210182192
    Abstract: Method and apparatus for enhancing power cycle performance of a storage device, such as a solid-state drive (SSD). In some embodiments, map data that describe the contents of a non-volatile memory (NVM) are arranged as snapshots and intervening journal updates. During a scram interval in which the storage device transitions to a powered down condition, the snapshots and journal updates for primary segments with high client interest are updated prior to storage to the NVM. During a reinitialization interval in which the storage device transitions to a powered up condition, the updated primary segments are loaded, after which the storage device provides the client device with an operationally ready notification. Remaining secondary segments are updated and loaded after the notification. The primary segments are identified based on a detected workload from the client device. Configuration changes can further be made based on the detected workload.
    Type: Application
    Filed: December 13, 2019
    Publication date: June 17, 2021
    Inventors: Daniel John Benjamin, Ryan Charles Weidemann, Ryan James Goss, David W. Claude, Graham David Ferris
  • Patent number: 11016880
    Abstract: A system may consist of a network controller connected between a non-volatile memory and a host with a disturb module connected to the non-volatile memory. A received data write request from a host may prompt the assignment of a first physical block address in the non-volatile memory to a data block of the data write request with the network controller. The data block and first physical block address can each be characterized with the disturb module before the first physical block address is altered to a second block address in the non-volatile memory in response to a disturb strategy generated by the disturb module. The second block address can be selected based on the characterization of the data block and first physical block address with respect to a risk of a disturb condition occurring in the non-volatile memory.
    Type: Grant
    Filed: April 28, 2020
    Date of Patent: May 25, 2021
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Daniel John Benjamin, David W. Claude, Graham David Ferris, Ryan Charles Weidemann
  • Patent number: 11016889
    Abstract: Method and apparatus for enhancing power cycle performance of a storage device, such as a solid-state drive (SSD). In some embodiments, map data that describe the contents of a non-volatile memory (NVM) are arranged as snapshots and intervening journal updates. During a scram interval in which the storage device transitions to a powered down condition, the snapshots and journal updates for primary segments with high client interest are updated prior to storage to the NVM. During a reinitialization interval in which the storage device transitions to a powered up condition, the updated primary segments are loaded, after which the storage device provides the client device with an operationally ready notification. Remaining secondary segments are updated and loaded after the notification. The primary segments are identified based on a detected workload from the client device. Configuration changes can further be made based on the detected workload.
    Type: Grant
    Filed: December 13, 2019
    Date of Patent: May 25, 2021
    Assignee: Seagate Technology LLC
    Inventors: Daniel John Benjamin, Ryan Charles Weidemann, Ryan James Goss, David W. Claude, Graham David Ferris
  • 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: 10977189
    Abstract: Technologies are described herein for or reducing the size of the forward mapping table in an SSD or other storage device using hashing. A physical address of a storage location within a storage media is determined for the storage of data associated with a logical block address. The data is written to the storage location and a hash value is computed from a representation of the physical address using a hash function, where the size of the hash value is smaller than the representation of the physical address and the hash value points to a plurality of separate storage locations in the storage media. The hash value is stored in the forward mapping table associated with logical block address as opposed to the representation of the physical address.
    Type: Grant
    Filed: September 6, 2019
    Date of Patent: April 13, 2021
    Assignee: Seagate Technology LLC
    Inventors: Kristofer Carlson Conklin, Ryan James Goss, Reid Alan Welch
  • Patent number: 10979077
    Abstract: Embodiments herein provide for a controller that is operable to soft read a data bit a plurality of times, to generate a bit set for the data bit from the soft reads, to logically operate on the bit set, and to generate a Hamming weight for the data bit based on the logical operation. The Hamming weight has fewer bits than the bit set and is operable to correct the data bit.
    Type: Grant
    Filed: August 27, 2019
    Date of Patent: April 13, 2021
    Assignee: Seagate Technology LLC
    Inventors: Nicholas Odin Lien, Jay Allen Sheldon, Ryan James Goss, Ara Patapoutian
  • Publication number: 20210073141
    Abstract: Technologies are described herein for or reducing the size of the forward mapping table in an SSD or other storage device using hashing. A physical address of a storage location within a storage media is determined for the storage of data associated with a logical block address. The data is written to the storage location and a hash value is computed from a representation of the physical address using a hash function, where the size of the hash value is smaller than the representation of the physical address and the hash value points to a plurality of separate storage locations in the storage media. The hash value is stored in the forward mapping table associated with logical block address as opposed to the representation of the physical address.
    Type: Application
    Filed: September 6, 2019
    Publication date: March 11, 2021
    Inventors: Kristofer Carlson Conklin, Ryan James Goss, Reid Alan Welch
  • Patent number: 10901866
    Abstract: Systems and methods presented herein provide for failure detection and data recovery in a storage system. In one embodiment, a method operable in a storage system comprises locating failures in data blocks in storage area of a storage device, categorizing the failures into block groups, each block group comprising one or more data blocks having failures, and halting input/output (I/O) operations to data blocks in a first of the block groups due to the failures of the first block group. The method also includes detecting additional failures in one or more data blocks of other block groups remaining in the storage area, and determining when to fail the storage area of the storage device based on the detected failures.
    Type: Grant
    Filed: August 1, 2018
    Date of Patent: January 26, 2021
    Assignee: Seagate Technology, LLC
    Inventors: Mehmet Emin Aklik, Ryan James Goss, Antoine Khoueir, Nicholas Odin Lien
  • Patent number: 10892777
    Abstract: Method and apparatus for decoding error correction code (ECC) code words. Reference voltages are used to extract a selected code word from a communication channel. The selected code word is processed by an ECC decoder, and an initial syndrome weight is determined indicative of unresolved parity errors. A coarse search operates to concurrently adjust, over a first succession of iterations, each of the reference voltages. A subsequent fine search operates, over a second succession of iterations, to individually adjust the reference voltages. Decoding and syndrome weight determination continues over each iteration until a minimum syndrome weight is obtained, after which a user data content of the code word is decoded. The coarse search may transition the decoder from a saturated operational region to a linear operational region. The decoder may be a low density parity check (LDPC) decoder.
    Type: Grant
    Filed: February 6, 2019
    Date of Patent: January 12, 2021
    Assignee: Seagate Technology LLC
    Inventors: Zheng Wang, Ara Patapoutian, Ryan James Goss, Antoine Khoueir