Patents by Inventor Steven T. Sprouse

Steven T. Sprouse 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: 20130279248
    Abstract: In a nonvolatile memory that stores data in two or more different data storage formats, such as binary and MLC, a separation scheme is used to distribute blocks containing data in one data storage format (e.g. binary) so that they are separated by at least some minimum number of blocks using another data storage format (e.g. MLC).
    Type: Application
    Filed: April 23, 2012
    Publication date: October 24, 2013
    Inventors: Zac Shepard, Steven T. Sprouse, Chris Nga Yee Avila
  • Publication number: 20130282958
    Abstract: In a nonvolatile memory array, blocks that contain only obsolete data are modified by adding charge to their cells, increasing the charge level from the programmed charge levels that represented obsolete data to elevated charge levels. The increase in overall charge in such blocks lessens the tendency of such blocks to impact data retention in neighboring blocks.
    Type: Application
    Filed: April 23, 2012
    Publication date: October 24, 2013
    Inventors: Zac Shepard, Steven T. Sprouse, Chris Nga Yee Avila, Neil David Hutchison
  • Publication number: 20120320679
    Abstract: A system and method for reducing write amplification while maintaining a desired level of sequential read and write performance is disclosed. A controller in a multi-bank flash storage device may receive host data for writing to the plurality of flash memory banks. The controller may organize the received data in multi-page logical groups greater than a physical page and less than a physical block and interleave writes of the host data to the memory banks with that striping factor. A buffer RAM is associated with each bank of the multi-bank memory where the buffer RAM is sized as equal to or greater than the size of the multi-page logical group.
    Type: Application
    Filed: May 17, 2012
    Publication date: December 20, 2012
    Inventors: Steven T. Sprouse, Sergey Anatolievich Gorobets, William Wu, Alan Bennett, Marielle Bundukin
  • Publication number: 20120297121
    Abstract: A non-volatile memory organized into flash erasable blocks receives data from host writes by first staging into logical groups before writing into the blocks. Each logical group contains data from a predefined set of order logical addresses and has a fixed size smaller than a block. The totality of logical groups are obtained by partitioning a logical address space of the host into non-overlapping sub-ranges of ordered logical addresses, each logical group having a predetermined size within a range delimited by a minimum size of at least one page and a maximum size of fitting at least two logical groups in a block and up to an order of magnitude higher than a typical size of a host write. In this way, excessive garbage collection due to operating a large logical group is avoided while the address space is reduced to minimize the size of a caching RAM.
    Type: Application
    Filed: May 10, 2012
    Publication date: November 22, 2012
    Inventors: Sergey Anatolievich Gorobets, William S. Wu, Steven T. Sprouse
  • Publication number: 20120297118
    Abstract: A system and method for reducing the need to check both a secondary address table and a primary address table for logical to physical translation tasks is disclosed. The method may include generating a fast translation indicator, such as a logical group bitmap, indicating whether there is an entry in the secondary address table that contains desired information pertaining to a particular logical address. Upon a host request relating to the particular logical address, the storage device may check the bitmap to determine if retrieval and parsing of the secondary table is necessary. The system may include a storage device having RAM cache storage, flash storage and a controller configured to generate and maintain at least one fast translation indicator to reduce the need to check both secondary and primary address tables during logical to physical address translation operations of the storage device.
    Type: Application
    Filed: May 4, 2012
    Publication date: November 22, 2012
    Inventors: Sergey Anatolievich Gorobets, William Wu, Steven T. Sprouse
  • Publication number: 20120297122
    Abstract: A non-volatile memory organized into flash erasable blocks sorts units of data according to a temperature assigned to each unit of data, where a higher temperature indicates a higher probability that the unit of data will suffer subsequent rewrites due to garbage collection operations. The units of data either come from a host write or from a relocation operation. The data are sorted either for storing into different storage portions, such as SLC and MLC, or into different operating streams, depending on their temperatures. This allows data of similar temperature to be dealt with in a manner appropriate for its temperature in order to minimize rewrites. Examples of a unit of data include a logical group and a block.
    Type: Application
    Filed: May 10, 2012
    Publication date: November 22, 2012
    Inventors: Sergey Anatolievich Gorobets, Alan David Bennett, Tom Hugh Shippey, Liam Michael Parker, Yauheni Yaromenka, Steven T. Sprouse, William S. Wu, Marielle Bundukin
  • Publication number: 20110161560
    Abstract: Systems and methods are disclosed to reduce the number of partial logical groups that are erased by writing erase patterns to memory in a non-volatile memory system. When a non-aligned erase command is received, the logical addresses of data associated with the erase command may be marked as erased. If the logical group corresponds to the size of a physical metablock, the controller may also issue a physical erase command for complete logical groups within the erase command. For those parts of the erase command that encompass only partial logical groups, the ranges of the logical block addresses marked for erasure are stored. As subsequent erase commands are received the address ranges of the erase commands are added to the previously stored address ranges. When a set of erase commands spans an entire logical group, the logical group is marked for physical erasure in its entirety.
    Type: Application
    Filed: December 31, 2009
    Publication date: June 30, 2011
    Inventors: Neil D. Hutchison, Alan D. Bennett, Sergey A. Gorobets, Steven T. Sprouse
  • Publication number: 20110153912
    Abstract: A method of operating a memory system is presented. The memory system includes a controller and a non-volatile memory circuit, where the non-volatile memory circuit has a first portion, where data is stored in a binary format, and a second portion, where data is stored in a multi-state format. The controller manages the transfer of data to and from the memory system and the storage of data on the non-volatile memory circuit. The method includes receiving a first set of data and storing this first set of data in a first location in the second portion of the non-volatile memory circuit. The memory system subsequently receives updated data for a first subset of the first data set. The updated data is stored in a second location in the first portion of the non-volatile memory circuit, where the controller maintains a logical correspondence between the second location and the first subset of the first set of data.
    Type: Application
    Filed: December 18, 2009
    Publication date: June 23, 2011
    Inventors: Sergey Anatolievich Gorobets, William S. Wu, Shai Traister, Alexander Lyashuk, Steven T. Sprouse
  • Patent number: 7898091
    Abstract: In a first embodiment, an apparatus and a method of fabrication thereof includes a substrate, a controller formed on a first integrated circuit (IC) die and disposed on the substrate, a second IC die embodying circuitry configured to enable communication between the controller and an external device, first I/O pads disposed on the first IC die, second I/O pads disposed on the second IC die, wire bonding interconnections coupling at least one of the first I/O pads with at least one of the second I/O pads, and a memory array formed on a third IC die and configured to enable communication with the controller. In a second embodiment the memory array is alternatively integrated into the first IC die.
    Type: Grant
    Filed: October 2, 2007
    Date of Patent: March 1, 2011
    Assignee: SanDisk Corporation
    Inventors: Steven T. Sprouse, Dhaval Parikh, Michael McCarthy
  • Publication number: 20100161927
    Abstract: The embodiments described herein generally use a challenge to protect a removable mobile flash memory storage device, where the challenge may be in the form of a “Completely Automated Public Turing Test to Tell Computers and Humans Apart” (“CAPTCHA”). In one embodiment, a method is provided in which a removable mobile flash memory storage device receives a command from a host device, generates a CAPTCHA challenge, provides the CAPTCHA challenge to the host device, receives a response to the CAPTCHA challenge from the host device, determines if the response satisfies the CAPTCHA challenge, and performs the command only if the response satisfies the CAPTCHA challenge. In another embodiment, a removable mobile flash memory storage device is provided for performing these acts.
    Type: Application
    Filed: December 18, 2008
    Publication date: June 24, 2010
    Inventors: Steven T. Sprouse, Carlos J. Gonzalez, Ron Barzilai, Dhaval Parikh
  • Patent number: 7697325
    Abstract: A method and apparatus for storing an n-bit (for n>=2) data block in an array of non-volatile memory cells utilizes a predetermined n+k-bit (for k>=1) encoding selected to reduce the number of programmed cells required to store the n-bit data block.
    Type: Grant
    Filed: September 24, 2007
    Date of Patent: April 13, 2010
    Assignee: SanDisk Corporation
    Inventors: Steven T. Sprouse, Dhaval Parikh, Sukhminder S. Lobana, Shai Traister
  • Patent number: 7642874
    Abstract: An oscillator circuit may be used with controller circuits that are designed to operate with crystals, with no modifications to the pinout or firmware of the controller circuit. In some embodiments, the oscillator circuit includes an enable input that is responsive to low-amplitude transitions, which may be coupled to and driven by the crystal output signal of the controller circuit. When transitions are present on the crystal output signal, the oscillator circuit enables its clock output signal. When the controller circuit disables its crystal output signal, the oscillator circuit no longer detects transitions on the crystal output signal coupled to the oscillator circuit enable input, and disables the clock output signal.
    Type: Grant
    Filed: March 31, 2007
    Date of Patent: January 5, 2010
    Assignee: SanDisk Corporation
    Inventor: Steven T. Sprouse
  • Patent number: 7642873
    Abstract: An oscillator circuit may be used with controller circuits that are designed to operate with crystals, with no modifications to the pinout or firmware of the controller circuit. In some embodiments, the oscillator circuit includes an enable input that is responsive to low-amplitude transitions, which may be coupled to and driven by the crystal output signal of the controller circuit. When transitions are present on the crystal output signal, the oscillator circuit enables its clock output signal. When the controller circuit disables its crystal output signal, the oscillator circuit no longer detects transitions on the crystal output signal coupled to the oscillator circuit enable input, and disables the clock output signal.
    Type: Grant
    Filed: March 31, 2007
    Date of Patent: January 5, 2010
    Assignee: SanDisk Corporation
    Inventor: Steven T. Sprouse
  • Patent number: 7599241
    Abstract: In a non-volatile memory (NVM) device having a controller and a non-volatile memory array controlled by the controller a voltage supervisor circuit monitors an output of a voltage supply powering the NVM device. The voltage supervisor circuit may be part of the NVM device or coupled to it. The voltage supervisor circuit is configured to assert a “low-voltage” signal responsive to detecting the output of the voltage supply powering the NVM device dropping below a predetermined value. The controller is configured to write data into the memory array while the “low-voltage” signal is deasserted and to suspend writing data while the “low-voltage” signal is asserted. In response to assertion of the “low-voltage” signal, the controller completes a write cycle/program operation, if pending, and prevents any additional write cycles/program operation(s) during assertion of the “low-voltage” signal.
    Type: Grant
    Filed: August 6, 2007
    Date of Patent: October 6, 2009
    Assignee: SanDisk Corporation
    Inventors: Steven T. Sprouse, Dhaval Parikh, Arjun Kapoor
  • Patent number: 7581967
    Abstract: A Universal Serial Bus flash memory unit having an electrically conductive housing includes a spring that provides an electrically conductive, low-resistance pathway between the housing and the metal shell of the Universal Serial Bus connector so that electrostatic charge can directly discharge from the housing to the metal shell instead of discharging through electronic components within the housing.
    Type: Grant
    Filed: August 16, 2006
    Date of Patent: September 1, 2009
    Assignee: Sandisk Corporation
    Inventors: Patricio Collantes, Jr., Robert C. Miller, Steven T. Sprouse, Dhaval Parikh
  • Patent number: 7564696
    Abstract: A bracket retainer is provided for securing an adapter card in a computer chassis in manner that maintains the electrical and the mechanical stability of the computer chassis and adapter card. This bracket retainer approach secures the adapter card to the computer chassis by utilizing a rotating door structure that allows the adapter card to be tightened into its card connector, as a rear tab of the adapter card, which is protruding through an opening of a rear panel of the computer chassis, is engaged by the rotating door structure. This bracket retainer approach also allows the bracket retainer to be secured to the computer chassis by interlocking the door structure with a top cover of the computer chassis.
    Type: Grant
    Filed: March 1, 2006
    Date of Patent: July 21, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Alan L. Winick, Michael T. Milo, Steven T. Sprouse
  • Publication number: 20090085221
    Abstract: In a first embodiment, an apparatus and a method of fabrication thereof includes a substrate, a controller formed on a first integrated circuit (IC) die and disposed on the substrate, a second IC die embodying circuitry configured to enable communication between the controller and an external device, first I/O pads disposed on the first IC die, second I/O pads disposed on the second IC die, wire bonding interconnections coupling at least one of the first I/O pads with at least one of the second I/O pads, and a memory array formed on a third IC die and configured to enable communication with the controller. In a second embodiment the memory array is alternatively integrated into the first IC die.
    Type: Application
    Filed: October 2, 2007
    Publication date: April 2, 2009
    Inventors: Steven T. Sprouse, Dhaval Parikh, Michael McCarthy
  • Publication number: 20090080249
    Abstract: A method and apparatus for storing an n-bit (for n>=2) data block in an array of non-volatile memory cells utilizes a predetermined n+k-bit (for k>=1) encoding selected to reduce the number of programmed cells required to store the n-bit data block.
    Type: Application
    Filed: September 24, 2007
    Publication date: March 26, 2009
    Inventors: Steven T. Sprouse, Dhaval Parikh, Sukhminder S. Lobana, Shai Traister
  • Publication number: 20090040842
    Abstract: In a non-volatile memory (NVM) device having a controller and a non-volatile memory array controlled by the controller a voltage supervisor circuit monitors an output of a voltage supply powering the NVM device. The voltage supervisor circuit may be part of the NVM device or coupled to it. The voltage supervisor circuit is configured to assert a “low-voltage” signal responsive to detecting the output of the voltage supply powering the NVM device dropping below a predetermined value. The controller is configured to write data into the memory array while the “low-voltage” signal is deasserted and to suspend writing data while the “low-voltage” signal is asserted. In response to assertion of the “low-voltage” signal, the controller completes a write cycle/program operation, if pending, and prevents any additional write cycles/program operation(s) during assertion of the “low-voltage” signal.
    Type: Application
    Filed: August 6, 2007
    Publication date: February 12, 2009
    Inventors: Steven T. Sprouse, Dhaval Parikh, Arjun Kapoor
  • Publication number: 20090040843
    Abstract: In a non-volatile memory (NVM) device having a controller and a non-volatile memory array controlled by the controller a voltage supervisor circuit monitors an output of a voltage supply powering the NVM device. The voltage supervisor circuit may be part of the NVM device or coupled to it. The voltage supervisor circuit is configured to assert a “low-voltage” signal responsive to detecting the output of the voltage supply powering the NVM device dropping below a predetermined value. The controller is configured to write data into the memory array while the “low-voltage” signal is deasserted and to suspend writing data while the “low-voltage” signal is asserted. In response to assertion of the “low-voltage” signal, the controller completes a write cycle/program operation, if pending, and prevents any additional write cycles/program operation(s) during assertion of the “low-voltage” signal.
    Type: Application
    Filed: August 6, 2007
    Publication date: February 12, 2009
    Inventors: Steven T. Sprouse, Dhaval Parikh, Arjun Kapoor