Patents by Inventor Alan W. Sinclair

Alan W. Sinclair 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: 10126959
    Abstract: System and method for transferring data between a host system and a data storage system is provided. The system includes an interface that uses a file based protocol to transfer data between the data storage system and the host system, wherein the data storage system includes a first mass storage device and a second mass storage device; wherein the first mass storage device is a solid state non-volatile memory device and the second mass storage device is a non-solid state memory device. The first mass storage device is a flash memory device that operates as a primary storage device that stores data on a file by file basis. The second mass storage device is a magnetic disk drive that operates as secondary storage device and stores data received via a logical interface.
    Type: Grant
    Filed: July 31, 2015
    Date of Patent: November 13, 2018
    Assignee: SANDISK TECHNOLOGIES LLC
    Inventor: Alan W. Sinclair
  • Patent number: 10055147
    Abstract: System and method for transferring data between a host system and a data storage system is provided. The system includes an interface that uses a file based protocol to transfer data between the data storage system and the host system, wherein the data storage system includes a first mass storage device and a second mass storage device; wherein the first mass storage device is a solid state non-volatile memory device and the second mass storage device is a non-solid state memory device. The first mass storage device is a flash memory device that operates as a primary storage device that stores data on a file by file basis. The second mass storage device is a magnetic disk drive that operates as secondary storage device and stores data received via a logical interface.
    Type: Grant
    Filed: July 31, 2015
    Date of Patent: August 21, 2018
    Assignee: SANDISK TECHNOLOGIES LLC
    Inventor: Alan W. Sinclair
  • Patent number: 9396103
    Abstract: A method and system for storage address re-mapping is disclosed. The method includes allocating logical addresses in blocks of clusters and re-mapping logical addresses into storage address space, where short runs of data dispersed in logical address space are mapped in a contiguous manner into blocks in storage address space. Valid data is flushed from blocks having both valid and obsolete data to make new blocks available for receiving data when an available number of new blocks falls below a desired threshold. The system includes a host file system, processor executable instructions residing on a host separately from the host file system or residing on a flash memory device such as an embedded solid state disk, or a backend memory manager of the flash memory device that is configured to map data from a logical address space to complete blocks in storage address space in a contiguous manner.
    Type: Grant
    Filed: February 22, 2008
    Date of Patent: July 19, 2016
    Assignee: SanDisk Technologies LLC
    Inventors: Alan W. Sinclair, Barry Wright
  • Publication number: 20150363135
    Abstract: System and method for transferring data between a host system and a data storage system is provided. The system includes an interface that uses a file based protocol to transfer data between the data storage system and the host system, wherein the data storage system includes a first mass storage device and a second mass storage device; wherein the first mass storage device is a solid state non-volatile memory device and the second mass storage device is a non-solid state memory device. The first mass storage device is a flash memory device that operates as a primary storage device that stores data on a file by file basis. The second mass storage device is a magnetic disk drive that operates as secondary storage device and stores data received via a logical interface.
    Type: Application
    Filed: July 31, 2015
    Publication date: December 17, 2015
    Inventor: Alan W. Sinclair
  • Publication number: 20150363131
    Abstract: System and method for transferring data between a host system and a data storage system is provided. The system includes an interface that uses a file based protocol to transfer data between the data storage system and the host system, wherein the data storage system includes a first mass storage device and a second mass storage device; wherein the first mass storage device is a solid state non-volatile memory device and the second mass storage device is a non-solid state memory device. The first mass storage device is a flash memory device that operates as a primary storage device that stores data on a file by file basis. The second mass storage device is a magnetic disk drive that operates as secondary storage device and stores data received via a logical interface.
    Type: Application
    Filed: July 31, 2015
    Publication date: December 17, 2015
    Inventor: Alan W. Sinclair
  • Patent number: 9141308
    Abstract: A controller is presented having one or more interfaces through which to communicate with a plurality of memory dies with multi-level memory cells and an interface through which to communicate with a host. The controller also contains a processor that is configured to receive a command from the host to program data in a plurality of lower pages and a plurality of upper pages of the multi-level memory cells. The controller detects an indication from the host that indicates which previously-programmed lower pages from a previous program command are at risk of being corrupted by the programming of the upper pages from the received program command. Prior to programming the upper pages, the controller backs up the previously-programmed lower pages from the previous program command that are at risk of being corrupted but not the lower pages of data programmed by the received program command.
    Type: Grant
    Filed: December 30, 2011
    Date of Patent: September 22, 2015
    Assignee: SanDisk Technologies Inc.
    Inventors: Paul A. Lassa, Robert D. Selinger, Alan W. Sinclair
  • Patent number: 9104315
    Abstract: System and method for transferring data between a host system and a data storage system is provided. The system includes an interface that uses a file based protocol to transfer data between the data storage system and the host system, wherein the data storage system includes a first mass storage device and a second mass storage device; wherein the first mass storage device is a solid state non-volatile memory device and the second mass storage device is a non-solid state memory device. The first mass storage device is a flash memory device that operates as a primary storage device that stores data on a file by file basis. The second mass storage device is a magnetic disk drive that operates as secondary storage device and stores data received via a logical interface.
    Type: Grant
    Filed: August 3, 2005
    Date of Patent: August 11, 2015
    Assignee: SANDISK TECHNOLOGIES INC.
    Inventor: Alan W. Sinclair
  • Patent number: 8713283
    Abstract: A method and system for interfacing a system operating through a logical address space with a direct file storage (DFS) medium is disclosed. The method includes receiving data associated with addresses in a logical block address (LBA) format from a host system and generating file objects manageable by the DFS medium based on a determination of the correlation of the LBA data to host file data. The memory system includes non-volatile memory using the DFS format, an interface for receiving LBA format data, and a controller configured to communicate with the host via an LBA interface and generate file objects from the LBA format data correlated to the host application files usable by the memory system.
    Type: Grant
    Filed: June 8, 2007
    Date of Patent: April 29, 2014
    Assignee: SanDisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Patent number: 8700961
    Abstract: A controller communicates with a plurality of multi-chip memory packages. Each multi-chip memory package comprises a plurality of memory dies, each having a respective plurality of memory blocks, some of which are good and some of which are bad. The controller determines a number of good blocks in each memory die. Based on the determined number of good blocks in each memory die, the controller selects a memory die from each of the multi-chip memory packages to access in parallel, wherein the selected memory dies are not necessarily all in the same relative position in each multi-chip package. The controller then creates a metablock from a set of good blocks from each of the selected memory dies, wherein a maximum number of metablocks that can be created across the selected memory dies is determined by a lowest number of good blocks in the selected memory dies.
    Type: Grant
    Filed: December 20, 2011
    Date of Patent: April 15, 2014
    Assignee: SanDisk Technologies Inc.
    Inventors: Paul A. Lassa, Alan W. Sinclair
  • Publication number: 20130173848
    Abstract: A controller is presented having one or more interfaces through which to communicate with a plurality of memory dies with multi-level memory cells and an interface through which to communicate with a host. The controller also contains a processor that is configured to receive a command from the host to program data in a plurality of lower pages and a plurality of upper pages of the multi-level memory cells. The controller detects an indication from the host that indicates which previously-programmed lower pages from a previous program command are at risk of being corrupted by the programming of the upper pages from the received program command. Prior to programming the upper pages, the controller backs up the previously-programmed lower pages from the previous program command that are at risk of being corrupted but not the lower pages of data programmed by the received program command.
    Type: Application
    Filed: December 30, 2011
    Publication date: July 4, 2013
    Inventors: Paul A. Lassa, Robert D. Selinger, Alan W. Sinclair
  • Patent number: 8473669
    Abstract: A method and system for permitting host write operations in one part of a flash memory concurrently with another operation in a second part of the flash memory is disclosed. The method includes receiving data at a front end of a memory system, selecting at least one of a plurality of subarrays in the memory system for executing a host write operation, and selecting at least one other subarray in which to execute a second operation. The write operation and second operation are then executed substantially concurrently. The memory system includes a plurality of subarrays, each associated with a separate subarray controller, and a front end controller adapted to select and initiate concurrent operations in the subarrays.
    Type: Grant
    Filed: December 7, 2009
    Date of Patent: June 25, 2013
    Assignee: SanDisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Publication number: 20130159601
    Abstract: A controller communicates with a plurality of multi-chip memory packages. Each multi-chip memory package comprises a plurality of memory dies, each having a respective plurality of memory blocks, some of which are good and some of which are bad. The controller determines a number of good blocks in each memory die. Based on the determined number of good blocks in each memory die, the controller selects a memory die from each of the multi-chip memory packages to access in parallel, wherein the selected memory dies are not necessarily all in the same relative position in each multi-chip package. The controller then creates a metablock from a set of good blocks from each of the selected memory dies, wherein a maximum number of metablocks that can be created across the selected memory dies is determined by a lowest number of good blocks in the selected memory dies.
    Type: Application
    Filed: December 20, 2011
    Publication date: June 20, 2013
    Inventors: Paul A. Lassa, Alan W. Sinclair
  • Patent number: 8452940
    Abstract: A method and system writes data to a memory device including writing data to varying types of physical write blocks. The method includes receiving a request to write data for a logical block address within an LBA range to the memory device. Depending on whether the quantity of valid data in the memory device meets a predetermined criteria, the data is written to a specific chaotic block, a general chaotic block, or a mapped block. The mapped block is assigned for writing data for the LBA range, the specific chaotic block is assigned for writing data for contiguous LBA ranges including the LBA range, and the general chaotic block is assigned for writing data for any LBA range. Lower fragmentation and write amplification ratios may result by using this method and system.
    Type: Grant
    Filed: December 30, 2008
    Date of Patent: May 28, 2013
    Assignee: SanDisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Patent number: 8429352
    Abstract: A method and system for flushing physical memory blocks in a memory device is disclosed. The method includes detecting a quantity of available memory, background flushing partially obsolete memory blocks if the quantity decreases to a background activation threshold, disabling the background flushing if the quantity increases to a background deactivation threshold, foreground flushing the partially obsolete memory blocks if the quantity decreases to a foreground activation threshold, and disabling the foreground flushing if the quantity increases to a foreground deactivation threshold. The thresholds may be adaptively defined. The background flushing may occur when the host interface is idle. The foreground flushing may interleave writing operations with flushing operations while a write command is unfinished.
    Type: Grant
    Filed: February 22, 2008
    Date of Patent: April 23, 2013
    Assignee: SanDisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Patent number: 8335907
    Abstract: Methods of maintaining an address table for mapping logical addresses to physical addresses include continuously consolidating main address maps and an update address map, and periodically compacting the update address map. Consolidating includes selecting a main address map, reading valid mapping entries from the main and update address maps, constructing a mapping set including the valid mapping entries, and writing the mapping set to a second main address map. The update address map is compacted if a criterion is met, and includes copying the valid mapping entries to an unwritten block or metablock and assigning the unwritten block or metablock as a new update address map. The length of consolidation may depend on the average length of compacted mapping entries following a compaction operation. Increased performance due to lower maintenance overhead may result by using these methods.
    Type: Grant
    Filed: December 30, 2009
    Date of Patent: December 18, 2012
    Assignee: SanDisk Technologies Inc.
    Inventors: Alan W. Sinclair, Nicholas J. Thomas
  • Patent number: 8239639
    Abstract: A method and system for providing advance data type information to a mass storage system is disclosed. The method may include a host system providing host file information, such as a host file identifier and/or a data type, to a memory system in addition to LBA format data. The system may include a processor, a memory system interface and a host file system operative on the processor to identify and provide host file information and/or data type information to the memory system along with LBA format data.
    Type: Grant
    Filed: February 12, 2008
    Date of Patent: August 7, 2012
    Assignee: SanDisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Patent number: 8214583
    Abstract: Host system data files are written directly to a large erase block flash memory system with a unique identification of each file and offsets of data within the file but without the use of any intermediate logical addresses or a virtual address space for the memory. Directory information of where the files are stored in the memory is maintained within the memory system by its controller, rather than by the host. The file based interface between the host and memory systems allows the memory system controller to utilize the data storage blocks within the memory with increased efficiency.
    Type: Grant
    Filed: May 7, 2010
    Date of Patent: July 3, 2012
    Assignee: SanDisk Technologies Inc.
    Inventors: Alan W. Sinclair, Peter J. Smith
  • Patent number: 8209461
    Abstract: Data files are assigned addresses within one or more logical blocks of a continuous logical address space interface (LBA interface) of a usual type of flash memory system with physical memory cell blocks. This assignment may be done by the host device which typically, but not necessarily, generates the data files. The number of logical blocks containing data of any one file is controlled in a manner that reduces the amount of fragmentation of file data within the physical memory blocks, thereby to maintain good memory performance. The host may configure the logical blocks of the address space in response to learning the physical characteristics of a memory to which it is connected.
    Type: Grant
    Filed: December 26, 2006
    Date of Patent: June 26, 2012
    Assignee: SanDisk Technologies Inc.
    Inventors: Alan W. Sinclair, Barry Wright
  • Patent number: 8209516
    Abstract: A method and system for reading data from a non-volatile mass storage device is provided. The method includes, performing logical configuration for the non-volatile mass storage device, wherein file data is allocated addresses in a virtual logical address space; and data identified by virtual logical addresses is read by a host system. The system includes a file storage segment that reads and writes data on a file-by-file basis, allowing a host system to access data from the non-volatile mass storage device using a file interface format; and a logical interface segment that allows the host system to access data using logical addressing, wherein the host system is unaware of a storage format under which data is stored on a file-by-file basis.
    Type: Grant
    Filed: February 26, 2010
    Date of Patent: June 26, 2012
    Assignee: Sandisk Technologies Inc.
    Inventor: Alan W. Sinclair
  • Patent number: 8205063
    Abstract: A method and system writes data to a memory device including dynamic assignment of logical block addresses (LBAs) to physical write blocks. The method includes receiving a request to write data for a logical block address within an LBA range to the memory device. The method assigns the LBA range to a particular write block exclusively or non-exclusively, depending on the existence of previously assigned write blocks and the availability of unwritten blocks. A data structure may be utilized to record the recent usage of blocks for assigning non-exclusive write blocks. An intermediate storage area may be included that implements the dynamic assignment of LBA ranges to physical write blocks. Data in the intermediate storage area may be consolidated and written to the main storage area. Lower fragmentation and write amplification ratios may result by using this method and system.
    Type: Grant
    Filed: December 30, 2008
    Date of Patent: June 19, 2012
    Assignee: Sandisk Technologies Inc.
    Inventor: Alan W. Sinclair