Patents by Inventor Sergey Gorobets

Sergey Gorobets 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: 7441067
    Abstract: A re-programmable non-volatile memory system, such as a flash EEPROM system, having its memory cells grouped into blocks of cells that are simultaneously erasable is operated in a manner to level out the wear of the individual blocks through repetitive erasing and re-programming. This may be accomplished without use of counts of the number of times the individual blocks experience erase and re-programming but such counts can optionally aid in carrying out the wear leveling process. Individual active physical blocks are chosen to be exchanged with those of an erased block pool in a predefined order.
    Type: Grant
    Filed: November 15, 2004
    Date of Patent: October 21, 2008
    Assignee: SanDisk Corporation
    Inventors: Sergey A. Gorobets, Alan D. Bennett, Peter J. Smith, Alan W. Sinclair, Kevin M. Conley, Philip D. Royall
  • Publication number: 20080244203
    Abstract: An information storage arrangement that combines higher-endurance (or performance) storage with lower-endurance (or performance) storage is managed in a manner that makes judicious use of the lower-endurance (or performance) storage. It is therefore possible to exploit the economic advantage associated with lower-endurance (or performance) storage, while also avoiding storage capacity losses that would otherwise be associated with lower-endurance (or performance) storage.
    Type: Application
    Filed: March 30, 2007
    Publication date: October 2, 2008
    Inventors: Sergey A. Gorobets, Neil A. Dunlop, Kevin P. Kealy
  • Publication number: 20080244202
    Abstract: An information storage arrangement that combines higher-endurance (or performance) storage with lower-endurance (or performance) storage is managed in a manner that makes judicious use of the lower-endurance (or performance) storage. It is therefore possible to exploit the economic advantage associated with lower-endurance (or performance) storage, while also avoiding storage capacity losses that would otherwise be associated with lower-endurance (or performance) storage.
    Type: Application
    Filed: March 30, 2007
    Publication date: October 2, 2008
    Inventors: Sergey A. Gorobets, Neil A. Dunlop, Kevin P. Kealy
  • Publication number: 20080091872
    Abstract: A re-programmable non-volatile memory system, such as a flash EEPROM system, having its memory cells grouped into blocks of cells that are simultaneously erasable is operated to perform memory system housekeeping operations in the foreground during execution of a host command, wherein the housekeeping operations are unrelated to execution of the host command. Both one or more such housekeeping operations and execution of the host command are performed within a time budget established for executing that particular command. One such command is to write data being received to the memory. One such housekeeping operation is to level out the wear of the individual blocks that accumulates through repetitive erasing and re-programming.
    Type: Application
    Filed: December 3, 2007
    Publication date: April 17, 2008
    Inventors: Alan Bennett, Sergey Gorobets, Andrew Tomlin, Charles Schroter
  • Publication number: 20070274150
    Abstract: Methods and apparatus for use in a memory system having a non-volatile memory and a controller for limiting the number of non-volatile memory arrays from a plurality of available arrays accessed at one time are useful in the control of concurrent access of memory arrays. One method includes implementing a pipelining sequence for transferring data to and from the non-volatile memory arrays and limiting the number of active arrays operating at one time. The controller is configured to wait for the at least one of the arrays to complete before initiating a transfer to and from a further array.
    Type: Application
    Filed: May 8, 2007
    Publication date: November 29, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070263444
    Abstract: A system and methods are given for providing information on the amount of life remaining for a memory having a limited lifespan, such as a flash memory card. For example, it can provide a user with the amount of the memory's expected remaining lifetime in real time units (i.e., hours or days) or as a percentage of estimated initial life. An end of life warning can also be provided. In a particular embodiment, the amount of remaining life (either as a percentage or in real time units) can be based on the average number of erases per block, but augmented by the number of spare blocks or other parameters, so that an end of life warning is given if either the expected amount of remaining life falls below a certain level or the number of spare blocks falls below a safe level.
    Type: Application
    Filed: May 15, 2006
    Publication date: November 15, 2007
    Inventors: Sergey Gorobets, Kevin Conley
  • Publication number: 20070266200
    Abstract: A system and methods are given for providing information on the amount of life remaining for a memory having a limited lifespan, such as a flash memory card. For example, it can provide a user with the amount of the memory's expected remaining lifetime in real time units (i.e., hours or days) or as a percentage of estimated initial life. An end of life warning can also be provided. In a particular embodiment, the amount of remaining life (either as a percentage or in real time units) can be based on the average number of erases per block, but augmented by the number of spare blocks or other parameters, so that an end of life warning is given if either the expected amount of remaining life falls below a certain level or the number of spare blocks falls below a safe level.
    Type: Application
    Filed: May 15, 2006
    Publication date: November 15, 2007
    Inventors: Sergey Gorobets, Kevin Conley
  • Publication number: 20070159885
    Abstract: The invention describes the method for regrouping data read from multi-sector pages inside a memory chip. As a result, garbage collection operation time greatly reduces and overall system performance increases. Architectural features include the ability to selectively transfer individual data sectors of a page between on-chip registers and the ability to realign data sectors within a register.
    Type: Application
    Filed: March 23, 2007
    Publication date: July 12, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070156998
    Abstract: In a memory system with a file storage system, a scheme for allocating memory locations for a write operation is to write the files substantially contiguously in a memory block one after another rather than to start a new file in a new block. In this way, they are more efficiently packed into the blocks by being written contiguously one after another. In a preferred embodiment, an incrementing write pointer points to the write location in memory for the next data for a file, which is independent of the offset address of the data within the file. When a current write block becomes filled with file data, an erased block is allocated, and the write pointer is moved to this block. Similarly a relocation pointer is used for data relocation during garbage collection or data compaction operations.
    Type: Application
    Filed: December 21, 2005
    Publication date: July 5, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070143532
    Abstract: A mass storage memory system is provided. The memory system includes, re-programmable non-volatile memory cells arranged in a plurality of blocks of memory cells; and a controller that is adapted to receive data via a first interface, and/or a second interface, and data received via the first interface and the second interface is accessible via the first interface and the second interface even if a file name for the data is not provided by a host system or before a write operation is complete. The first interface is a file based interface and the second interface is a logical interface.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventors: Sergey Gorobets, Alan Sinclair
  • Publication number: 20070143561
    Abstract: In a memory system with a file storage system, an optimal file handling scheme is adaptively selected from a group thereof based on the attributes of the file being handled. The file attributes may be obtained from a host or derived from a history of the file had with the memory system. In one embodiment, a scheme for allocating memory locations for a write operation is dependent on an estimated size of the file to be written. In another embodiment, a scheme for allocating memory locations for a relocation operation, such as for garbage collection or data compaction, is dependent on an estimated access frequency of the file in question. In this way, the optimal handling scheme can be used for the particular file at any time.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070143378
    Abstract: In a memory system with a file storage system, an optimal file handling scheme is adaptively selected from a group thereof based on the attributes of the file being handled. The file attributes may be obtained from a host or derived from a history of the file had with the memory system. In one embodiment, a scheme for allocating memory locations for a write operation is dependent on an estimated size of the file to be written. In another embodiment, a scheme for allocating memory locations for a relocation operation, such as for garbage collection or data compaction, is dependent on an estimated access frequency of the file in question. In this way, the optimal handling scheme can be used for the particular file at any time.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070143566
    Abstract: In the file storage system, each portion belonging to a data file is identified by its file ID and an offset along the data file, where the offset is a constant for the file and every file data portion is always kept at the same position within a memory page to be read or programmed in parallel. In this way, every time a page containing a file portion is read and copy to another page, the data in it is always page-aligned, and each bit within the file portion can always be manipulated by the same sense amplifier and same set data latches within the same memory column. In a preferred implementation, the page alignment is such that (offset within a page)=(data offset within a file) MOD (page size). Any gaps that may exist in page can be padded with any existing page-aligned valid data.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070143560
    Abstract: In a memory system with a file storage system, a scheme for allocating memory locations for a write operation is to write the files substantially contiguously in a memory block one after another rather than to start a new file in a new block. In this way, they are more efficiently packed into the blocks by being written contiguously one after another. In a preferred embodiment, an incrementing write pointer points to the write location in memory for the next data for a file, which is independent of the offset address of the data within the file. When a current write block becomes filled with file data, an erased block is allocated, and the write pointer is moved to this block. Similarly a relocation pointer is used for data relocation during garbage collection or data compaction operations.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070143571
    Abstract: Method and mass storage memory system is provided. The system includes, re-programmable non-volatile memory cells, the memory cells being arranged in a plurality of blocks that are erasable together; and a controller including a microprocessor that is adapted to receive files of data identified by unique identifiers via a first interface and the controller causes a received data file to be stored in one or more memory blocks; and the controller receives data identified by logical addresses via a second interface and stores the received data in one or more memory blocks, wherein data written via the first interface is indexed using the unique identifiers so that data is accessible via the second interface or the first interface; and data received via the second interface is indexed so that data can be accessed via the first interface or the second interface.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventors: Alan Sinclair, Sergey Gorobets
  • Publication number: 20070143570
    Abstract: Method for transferring data between a host system and a re-programmable non-volatile mass storage system having memory cells organized into blocks of memory cells is provided. The method includes receiving data via a first interface and/or a second interface; and making data accessible via the first interface and the second interface, even if a file name is not provided by a host system or before a write operation is complete.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventors: Sergey Gorobets, Alan Sinclair
  • Publication number: 20070143567
    Abstract: In the file storage system, each portion belonging to a data file is identified by its file ID and an offset along the data file, where the offset is a constant for the file and every file data portion is always kept at the same position within a memory page to be read or programmed in parallel. In this way, every time a page containing a file portion is read and copy to another page, the data in it is always page-aligned, and each bit within the file portion can always be manipulated by the same sense amplifier and same set data latches within the same memory column. In a preferred implementation, the page alignment is such that (offset within a page)=(data offset within a file) MOD (page size). Any gaps that may exist in page can be padded with any existing page-aligned valid data.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Sergey Gorobets
  • Publication number: 20070113029
    Abstract: The present invention presents a number of improvements for managing erase processes in non-volatile memory. Such memory systems typically manage the memory by logically organize the basic unit of physical erase (erase block) into composite logical groupings (meta-blocks or logical group), where an erase block generally consists of a number of sectors. When an erase command is received, the specified sectors are checked against the memory system's control data. If the specified sectors span any full logical grouping, the full logical groupings can each be treated a whole and erased according to one process (such as performing a true, physical erase), while other sectors are “logically” erased at the sector level by standard techniques.
    Type: Application
    Filed: November 14, 2005
    Publication date: May 17, 2007
    Applicant: SanDisk Corporation
    Inventors: Alan Bennett, Alan Bryce, Sergey Gorobets
  • Publication number: 20070113030
    Abstract: The present invention presents a number of improvements for managing erase processes in non-volatile memory. Such memory systems typically manage the memory by logically organize the basic unit of physical erase (erase block) into composite logical groupings (meta-blocks or logical group), where an erase block generally consists of a number of sectors. When an erase command is received, the specified sectors are checked against the memory system's control data. If the specified sectors span any full logical grouping, the full logical groupings can each be treated a whole and erased according to one process (such as performing a true, physical erase), while other sectors are “logically” erased at the sector level by standard techniques.
    Type: Application
    Filed: November 14, 2005
    Publication date: May 17, 2007
    Applicant: SanDisk Corporation
    Inventors: Alan Bennett, Alan Bryce, Sergey Gorobets
  • Publication number: 20070101096
    Abstract: A memory system is presented where sectors are normally stored in logically contiguous groups. As repeated writes of the same small sector group can causes a massive garbage collection (data relocation), the pattern of host access is monitored by checking the sectors' update history and control data structures' update history. When repeated access patterns are detected and then expected again, the “hot” segments are separated into specially handled, non-standard zone in the memory. The non-standard zone has a sector management that is different from the logical groups and optimized for the repeated host accesses in order to reduce the frequency and amount of garbage collection operations.
    Type: Application
    Filed: October 27, 2005
    Publication date: May 3, 2007
    Applicant: SanDisk Corporation
    Inventor: Sergey Gorobets