Patents by Inventor James G. Peterson

James G. Peterson 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: 9952781
    Abstract: A storage controller identifies a storage location within a storage division that corresponds to a high error rate. In response, the storage controller may refresh data stored on the storage division by relocating data from the storage division and/or initializing (e.g., erasing) the storage division. In some embodiments, the storage division is selectively refreshed by relocating data from the storage location(s) having high error rates, while deferring a full relocation of other data from the storage division. The storage division may be selectively refreshed based on reliability characteristics of the storage division, such as the remaining data retention time calculated for the storage division.
    Type: Grant
    Filed: November 3, 2014
    Date of Patent: April 24, 2018
    Assignee: SanDisk Technologies LLC
    Inventors: Evan Orme, James G. Peterson
  • Patent number: 9798673
    Abstract: Techniques are disclosed relating to storing translations in memory that are usable to access data on a recording medium. In one embodiment, a request is sent for a memory allocation within a non-pageable portion of a memory in a computer system. Responsive to the request, allocated memory is received. Translations usable to map logical addresses to physical addresses within a storage device are stored within the allocated memory. In some embodiments, the translations are usable to access an area within the storage device used to store pages evicted from the memory. In one embodiment, a size of the memory allocation is determined based on a size of the area. In another embodiment, a size of the memory allocation is determined based on a size of a partition including the area. In some embodiments, the storage device is a solid-state storage array.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: October 24, 2017
    Assignee: SanDisk Technologies LLC
    Inventors: James G. Peterson, Igor Sharovar, David Atkisson
  • Publication number: 20170143296
    Abstract: In part, the disclosure relates to computer-based methods, devices, and systems suitable for detecting a delivery catheter using intravascular data. In one embodiment, the delivery catheter is used to position the intravascular data collection probe. The probe can collect data suitable for generating one or more representations of a blood vessel with respect to which the delivery catheter can be detected.
    Type: Application
    Filed: December 18, 2015
    Publication date: May 25, 2017
    Applicant: LIGHTLAB IMAGING, INC.
    Inventors: James G. Peterson, Christopher E. Griffin, Sonal Ambwani
  • Publication number: 20160335766
    Abstract: The disclosure relates, in part, to computer-based visualization of stent position within a blood vessel. A stent can be visualized using intravascular data and subsequently displayed as stent struts or portions of a stent as a part of a one or more graphic user interface(s) (GUI). In one embodiment, the method includes steps to distinguish stented region(s) from background noise using an amalgamation of angular stent strut information for a given neighborhood of frames. The GUI can include views of a blood vessel generated using distance measurements and demarcating the actual stented region(s), which provides visualization of the stented region. The disclosure also relates to display of intravascular diagnostic information such as indicators. An indicator can be generated and displayed with images generated using an intravascular data collection system. The indicators can include one or more viewable graphical elements suitable for indicating diagnostic information such as stent information.
    Type: Application
    Filed: May 17, 2016
    Publication date: November 17, 2016
    Applicant: LightLab Imaging, Inc.
    Inventors: Sonal Ambwani, Christopher E. Griffin, James G. Peterson, Satish Kaveti, Joel M. Friedman
  • Patent number: 9342256
    Abstract: Techniques are disclosed relating to handling snapshot data for a storage device. In one embodiment, a computing system maintains information that indicates the state of data associated with an application at a particular point in time. In this embodiment, the computing system assigns an epoch number to a current epoch, where the current epoch is an interval between the particular point in time and a future point in time. In this embodiment, the computing system writes, during the current epoch, a block of data to the storage device. In this embodiment, the writing the block of data includes storing the epoch number with the block of data.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: May 17, 2016
    Assignee: SANDISK TECHNOLOGIES, INC.
    Inventors: James G. Peterson, Nisha Talagala, Swaminathan Sundararaman, Sriram Subramanian
  • Publication number: 20160132243
    Abstract: Data of a vector storage request pertaining to one or more disjoint, non-adjacent, and/or non-contiguous logical identifier ranges are stored contiguously within a log on a non-volatile storage medium. A request consolidation module modifies one or more sub-requests of the vector storage request in response to other, cached storage requests. Data of an atomic vector storage request may comprise persistent indicators, such as persistent metadata flags, to identify data pertaining to incomplete atomic storage requests. A restart recovery module identifies and excludes data of incomplete atomic operations.
    Type: Application
    Filed: January 19, 2016
    Publication date: May 12, 2016
    Inventors: Ashish Batwara, James G. Peterson, Nisha Talagala, Nick Piggin, Michael Zappe
  • Publication number: 20160110125
    Abstract: A storage controller identifies a storage division comprising unreadable data. In response, the storage controller relocates readable data (if any) from the identified storage division. The storage controller may be further configured to associate the unreadable data with a logical address, and to record persistent metadata to indicate that the logical address is mapped to unreadable, corrupt data. The storage controller may clear the corruption indicator from the logical address. The logical address may be cleared in response to determining that the unreadable data is invalid and/or available from another source.
    Type: Application
    Filed: October 31, 2014
    Publication date: April 21, 2016
    Applicant: FUSION-IO, INC.
    Inventors: Evan Orme, James G. Peterson
  • Publication number: 20160110249
    Abstract: A storage controller identifies a storage location within a storage division that corresponds to a high error rate. In response, the storage controller may refresh data stored on the storage division by relocating data from the storage division and/or initializing (e.g., erasing) the storage division. In some embodiments, the storage division is selectively refreshed by relocating data from the storage location(s) having high error rates, while deferring a full relocation of other data from the storage division. The storage division may be selectively refreshed based on reliability characteristics of the storage division, such as the remaining data retention time calculated for the storage division.
    Type: Application
    Filed: November 3, 2014
    Publication date: April 21, 2016
    Applicant: Fusion-IO, Inc.
    Inventors: Evan Orme, James G. Peterson
  • Patent number: 9274937
    Abstract: Data of a vector storage request pertaining to one or more disjoint, non-adjacent, and/or non-contiguous logical identifier ranges are stored contiguously within a log on a non-volatile storage medium. A request consolidation module modifies one or more sub-requests of the vector storage request in response to other, cached storage requests. Data of an atomic vector storage request may comprise persistent indicators, such as persistent metadata flags, to identify data pertaining to incomplete atomic storage requests. A restart recovery module identifies and excludes data of incomplete atomic operations.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: March 1, 2016
    Assignee: Longitude Enterprise Flash S.a.r.l.
    Inventors: Ashish Batwara, James G. Peterson, Nisha Talagala, Nick Piggin, Michael Zappe
  • Publication number: 20160026408
    Abstract: Embodiments are disclosed relating to garbage collecting storage blocks in a storage device. In one embodiment, data is selected for relocation from a storage block in a storage device during reclaiming of the storage block. The data may be selected based on metadata that identifies whether data is valid at a time when the reclaiming is initiated. In some embodiments, prior to relocating data from the storage block, the metadata is captured from a data structure that identifies whether data on the storage device is valid. In one embodiment, a determination of whether the selected data has become invalid due to other data that is stored during the reclaiming is made. In some embodiments, in response to determining that the selected data has become invalid, the selected data is specified as invalid in the data structure.
    Type: Application
    Filed: October 21, 2014
    Publication date: January 28, 2016
    Applicant: FUSION-IO, INC.
    Inventor: James G. Peterson
  • Patent number: 9223662
    Abstract: Apparatuses, systems, methods, and computer program products for auto-commit memory are presented. A monitor module determines that a triggering event for an auto-commit memory has occurred. An identification module identifies a triggered commit action for an auto-commit memory. An auto-commit memory module performs a triggered commit action for an auto-commit memory in response to a triggering event occurring.
    Type: Grant
    Filed: August 27, 2013
    Date of Patent: December 29, 2015
    Assignee: SanDisk Technologies, Inc.
    Inventors: David Flynn, David Nellans, John Strasser, James G. Peterson, Robert Wipfel
  • Patent number: 9195396
    Abstract: Techniques are disclosed relating to determining statistics associated with the storage of data on a medium. In one embodiment, a computing system maintains a management statistic for a storage device, and uses the management statistic as a proxy for a workload statistic for a storage block within the storage device. In some embodiments, the storage block is a first storage block included within a second storage block of the storage device. In one embodiment, the management statistic is a timestamp indicative of when a write operation was performed for the second storage block; the workload statistic is a write frequency of the first storage block. In one embodiment, the management statistic is a number of read operations performed for the second storage block; the using includes deriving, based on the number of read operation, a read frequency for the first storage block as the workload statistic.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: November 24, 2015
    Assignee: SanDisk Technologies, Inc.
    Inventors: James G. Peterson, Swaminathan Sundararaman
  • Patent number: 9170897
    Abstract: A storage controller may be configured to assess the reliability of a solid-state storage medium. The storage controller may be further configured to project, forecast, and/or estimate storage reliability at a future time. The projection may be based on a currently reliability metric of the storage and a reliability model. The portions or sections of the solid-state storage media may be retired in response the projected reliability metric failing to satisfy a reliability threshold. The reliability threshold may be based on data correction and/or reconstruction characteristics. The projected reliability metrics of a plurality of erase blocks of a storage division may be combined, and one or more of the erase blocks may be retired in response to determining that the combined reliability metric projection fails to satisfy the reliability threshold.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: October 27, 2015
    Assignee: SANDISK TECHNOLOGIES, INC.
    Inventors: Warner Losh, James G. Peterson
  • Publication number: 20140351526
    Abstract: Techniques are disclosed relating to processing data in a storage controller. In one embodiment, a method includes receiving data at a storage controller of a storage device. The method further includes processing data units of the data in parallel via a plurality of write pipelines in the storage controller. The method further includes writing the data units to a storage medium of the storage device. In some embodiments, the method may include inserting header information into the data for a plurality of data units before processing, and the header information may include sequence information. In some embodiments, writing the data units may include writing according to a sequence determined prior to processing the data units.
    Type: Application
    Filed: April 16, 2014
    Publication date: November 27, 2014
    Applicant: Fusion-io, Inc.
    Inventor: James G. Peterson
  • Publication number: 20140281333
    Abstract: Techniques are disclosed relating to storing translations in memory that are usable to access data on a recording medium. In one embodiment, a request is sent for a memory allocation within a non-pageable portion of a memory in a computer system. Responsive to the request, allocated memory is received. Translations usable to map logical addresses to physical addresses within a storage device are stored within the allocated memory. In some embodiments, the translations are usable to access an area within the storage device used to store pages evicted from the memory. In one embodiment, a size of the memory allocation is determined based on a size of the area. In another embodiment, a size of the memory allocation is determined based on a size of a partition including the area. In some embodiments, the storage device is a solid-state storage array.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Igor Sharovar, David Atkisson
  • Publication number: 20140281307
    Abstract: Techniques are disclosed relating to handling snapshot data for a storage device. In one embodiment, a computing system maintains information that indicates the state of data associated with an application at a particular point in time. In this embodiment, the computing system assigns an epoch number to a current epoch, where the current epoch is an interval between the particular point in time and a future point in time. In this embodiment, the computing system writes, during the current epoch, a block of data to the storage device. In this embodiment, the writing the block of data includes storing the epoch number with the block of data.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Nisha Talagala, Swaminathan Sundararaman, Sriram Subramanian
  • Publication number: 20140281260
    Abstract: Techniques are disclosed relating to determining statistics associated with the storage of data on a medium. In one embodiment, a computing system maintains a management statistic for a storage device, and uses the management statistic as a proxy for a workload statistic for a storage block within the storage device. In some embodiments, the storage block is a first storage block included within a second storage block of the storage device. In one embodiment, the management statistic is a timestamp indicative of when a write operation was performed for the second storage block; the workload statistic is a write frequency of the first storage block. In one embodiment, the management statistic is a number of read operations performed for the second storage block; the using includes deriving, based on the number of read operation, a read frequency for the first storage block as the workload statistic.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Swaminathan Sundararaman
  • Patent number: 8725934
    Abstract: A method and apparatus for storing data packets in two different logical erase blocks pursuant to an atomic storage request is disclosed. Each data packet stored in response to the atomic storage request comprises persistent metadata indicating that the data packet pertains to an atomic storage request. In addition, a method and apparatus for restart recovery is disclosed. A data packet preceding an append point is identified as satisfying a failed atomic write criteria, indicating that the data packet pertains to a failed atomic storage request. One or more data packets associated with the failed atomic storage request are identified and excluded from an index of a non-volatile storage media.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: May 13, 2014
    Assignee: Fusion-io, Inc.
    Inventors: Ashish Batwara, James G. Peterson, Nisha Talagala, Michael Zappe
  • Publication number: 20140006685
    Abstract: A storage controller is configured to implement an atomic storage operation comprising a plurality of separate storage operations on a non-volatile storage medium. The storage controller may store persistent indicators to identify data that pertains to the atomic storage operation. An invalid shutdown may occur before the atomic storage operation is complete. A restart and recovery operation comprises a first scan of the non-volatile storage medium to identify data of the failed atomic storage operation. A physical trim note is stored on the non-volatile storage medium to identify the data of the failed atomic storage operation. The data may be identified by media address. Storage metadata is reconstructed in a second scan, which excludes the data and/or operations of the failed atomic storage operation.
    Type: Application
    Filed: June 29, 2012
    Publication date: January 2, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Ashish Batwara, Nisha Talagala, Michael Zappe
  • Publication number: 20130346793
    Abstract: Apparatuses, systems, methods, and computer program products for auto-commit memory are presented. A monitor module determines that a triggering event for an auto-commit memory has occurred. An identification module identifies a triggered commit action for an auto-commit memory. An auto-commit memory module performs a triggered commit action for an auto-commit memory in response to a triggering event occurring.
    Type: Application
    Filed: August 27, 2013
    Publication date: December 26, 2013
    Applicant: Fusion-io, Inc.
    Inventors: David Flynn, David Nellans, John Strasser, James G. Peterson, Robert Wipfel