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).

  • 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: 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: 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: 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
  • Publication number: 20200252079
    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: Application
    Filed: February 6, 2019
    Publication date: August 6, 2020
    Inventors: Zheng Wang, Ara Patapoutian, Ryan James Goss, Antoine Khoueir
  • Patent number: 10719439
    Abstract: A method operable with the storage device includes determining a workload to the storage device based on host Input/Output (I/O) requests to the storage device. When the workload is above a threshold, a first portion of the storage device is selected for garbage collection based on the I/O requests. Otherwise, when the workload is below the threshold, a second different portion of the storage device is selected for garbage collection based on a storage ability of the second portion of the storage device.
    Type: Grant
    Filed: September 6, 2017
    Date of Patent: July 21, 2020
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Siddhartha K. Panda, Daniel J. Benjamin, Ryan C. Weidemann
  • Patent number: 10679140
    Abstract: A connection between a user device and a network server is established. Via the connection, a deep learning network is formed for a processing task. A first portion of the deep learning network operates on the user device and a second portion of the deep learning network operates on the network server. Based on cooperation between the user device and the network server, a boundary between the first portion and the second portion of the deep learning network is dynamically modified based on a change in a performance indicator that could affect the processing task.
    Type: Grant
    Filed: October 6, 2014
    Date of Patent: June 9, 2020
    Assignee: Seagate Technology LLC
    Inventors: Kevin Arthur Gomez, Frank Dropps, Ryan James Goss, Jon Trantham, Antoine Khoueir
  • Publication number: 20200091937
    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: Application
    Filed: August 27, 2019
    Publication date: March 19, 2020
    Inventors: Nicholas Odin Lien, Jay Allen Sheldon, Ryan James Goss, Ara Patapoutian
  • Patent number: 10592134
    Abstract: Systems and methods are disclosed for open block stability scanning. When a solid state memory block remains in an open state, where the block is only partially filled with written data, for a prolonged period of time, a circuit may perform a scan on the block to determine the stability of the stored data. When the scan indicates that the data is below a stability threshold, the data may be refreshed by reading the data and writing it to a new location. When the scan indicates that the data is above a stability threshold, the circuit may extend the time period in which the block may remain in the open state.
    Type: Grant
    Filed: January 1, 2018
    Date of Patent: March 17, 2020
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Antoine Khoueir, Ara Patapoutian
  • Patent number: 10564890
    Abstract: A data storage system may have a number of data storage devices that each have a non-volatile memory connected to a memory buffer. The memory buffer can consist of a map unit having a predetermined size. In receipt of a data sector into the map unit of the memory buffer, the data sector may be identified as a runt with a runt module connected to the memory buffer and the non-volatile memory. The runt module can generate and subsequently execute a runt handling plan to fill the size of the map unit before storing the filled map unit in the non-volatile memory.
    Type: Grant
    Filed: July 7, 2017
    Date of Patent: February 18, 2020
    Assignee: Seagate Technology LLC
    Inventors: Matthew Lovell, Thomas V. Spencer, Ryan James Goss
  • Patent number: 10541034
    Abstract: Systems and methods presented herein provide for computing read voltages for a storage device. In one embodiment, a controller is controller is operable to soft read data from a portion of the storage device, and to iteratively test the soft read data a predetermined number of times. For example, the controller may test the soft read data a number of times by applying a different probability weight to the soft read data each time the soft read data is tested. The controller may then decode the soft read data based on the probability weight, and determine an error metric of the decoded soft read data. Then, the controller determines a read voltage for the portion of the storage device based on the probability weight and the error metric.
    Type: Grant
    Filed: April 30, 2018
    Date of Patent: January 21, 2020
    Assignee: Seagate Technology LLC
    Inventors: Nicholas Odin Lien, Ryan James Goss
  • Patent number: 10490234
    Abstract: An unrecoverable error is determined when attempting to access data stored in a target memory unit of a storage medium of a data storage device. Access to neighboring memory units that are proximate to the target memory unit is controlled in response. The controlling of the access affects a temperature of the target memory unit over a period of time. After the period of time, access to the data is attempted from the target memory unit.
    Type: Grant
    Filed: October 17, 2017
    Date of Patent: November 26, 2019
    Assignee: Seagate Technology LLC
    Inventors: Jay Allen Sheldon, Ryan James Goss
  • Patent number: 10430084
    Abstract: Method and apparatus for managing data in a memory. In accordance with some embodiments, a data object is stored in a first non-volatile tier of a multi-tier memory structure. A metadata unit is generated to describe the data object, the metadata unit having a selected granularity. The metadata unit is stored in a different, second non-volatile tier of the multi-tier memory structure responsive to the selected granularity.
    Type: Grant
    Filed: January 23, 2017
    Date of Patent: October 1, 2019
    Assignee: Seagate Technology LLC
    Inventors: Ryan James Goss, Mark Allen Gaertner, Michael Joseph Steiner