WO2007019197A3 - Management of memory blocks that directly store data files - Google Patents
Management of memory blocks that directly store data files Download PDFInfo
- Publication number
- WO2007019197A3 WO2007019197A3 PCT/US2006/030165 US2006030165W WO2007019197A3 WO 2007019197 A3 WO2007019197 A3 WO 2007019197A3 US 2006030165 W US2006030165 W US 2006030165W WO 2007019197 A3 WO2007019197 A3 WO 2007019197A3
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- file
- memory
- blocks
- data files
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
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. A type of memory block is selected to receive additional data of a file that depends upon the types of blocks into which data of the file have already been written. Blocks containing data are selected for reclaiming any unused capacity therefrom by a process that selects blocks in order starting with those containing the least amount of valid data.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP06789236A EP1913463A2 (en) | 2005-08-03 | 2006-08-01 | Management of memory blocks which directly store data files |
KR1020087004689A KR101378031B1 (en) | 2005-08-03 | 2006-08-01 | Management of memory blocks that directly store data files |
JP2008525168A JP2009503743A (en) | 2005-08-03 | 2006-08-01 | Managing memory blocks that store data files directly |
CN200680028003XA CN101233479B (en) | 2005-08-03 | 2006-08-01 | Management of memory blocks that directly store data files |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US70538805P | 2005-08-03 | 2005-08-03 | |
US60/705,388 | 2005-08-03 | ||
US11/382,224 US8055832B2 (en) | 2005-08-03 | 2006-05-08 | Management of memory blocks that directly store data files |
US11/382,224 | 2006-05-08 | ||
US11/382,228 US7581057B2 (en) | 2005-08-03 | 2006-05-08 | Memory system with management of memory blocks that directly store data files |
US11/382,228 | 2006-05-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007019197A2 WO2007019197A2 (en) | 2007-02-15 |
WO2007019197A3 true WO2007019197A3 (en) | 2007-09-07 |
Family
ID=37441503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2006/030165 WO2007019197A2 (en) | 2005-08-03 | 2006-08-01 | Management of memory blocks that directly store data files |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1913463A2 (en) |
JP (1) | JP2009503743A (en) |
KR (1) | KR101378031B1 (en) |
WO (1) | WO2007019197A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8055832B2 (en) | 2005-08-03 | 2011-11-08 | SanDisk Technologies, Inc. | Management of memory blocks that directly store data files |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8166267B2 (en) | 2006-12-26 | 2012-04-24 | Sandisk Technologies Inc. | Managing a LBA interface in a direct data file memory system |
US8046522B2 (en) | 2006-12-26 | 2011-10-25 | SanDisk Technologies, Inc. | Use of a direct data file system with a continuous logical address space interface and control of file address storage in logical blocks |
KR101464199B1 (en) * | 2006-12-26 | 2014-11-21 | 샌디스크 테크놀로지스, 인코포레이티드 | Use of a direct data file system with a continuous logical address space interface |
US7917686B2 (en) | 2006-12-26 | 2011-03-29 | Sandisk Corporation | Host system with direct data file interface configurability |
US7739444B2 (en) | 2006-12-26 | 2010-06-15 | Sandisk Corporation | System using a direct data file system with a continuous logical address space interface |
US8209461B2 (en) | 2006-12-26 | 2012-06-26 | Sandisk Technologies Inc. | Configuration of host LBA interface with flash memory |
US9311229B2 (en) | 2011-03-29 | 2016-04-12 | Blackberry Limited | System and method for managing flash memory |
US8539007B2 (en) * | 2011-10-17 | 2013-09-17 | International Business Machines Corporation | Efficient garbage collection in a compressed journal file |
US9747048B2 (en) * | 2014-06-02 | 2017-08-29 | Micron Technology, Inc. | Systems and methods for packing data in a scalable memory system protocol |
CN110727647B (en) * | 2019-10-21 | 2022-07-05 | 中国民航信息网络股份有限公司 | Freight rate data storage method and device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030065899A1 (en) * | 2001-09-28 | 2003-04-03 | Gorobets Sergey Anatolievich | Memory system sectors |
US20040073727A1 (en) * | 2002-07-29 | 2004-04-15 | M-Systems Flash Disk Pioneers, Ltd. | Portable storage media as file servers |
US20040103241A1 (en) * | 2002-10-28 | 2004-05-27 | Sandisk Corporation | Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system |
WO2005066793A2 (en) * | 2003-12-30 | 2005-07-21 | Sandisk Corporation | Non-volatile memory and method with non-sequential update block management |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060184718A1 (en) | 2005-02-16 | 2006-08-17 | Sinclair Alan W | Direct file data programming and deletion in flash memories |
US7849253B2 (en) | 2005-04-04 | 2010-12-07 | Standard Microsystems Corporation | Method for fast access to flash-memory media |
-
2006
- 2006-08-01 WO PCT/US2006/030165 patent/WO2007019197A2/en active Application Filing
- 2006-08-01 JP JP2008525168A patent/JP2009503743A/en active Pending
- 2006-08-01 EP EP06789236A patent/EP1913463A2/en not_active Withdrawn
- 2006-08-01 KR KR1020087004689A patent/KR101378031B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030065899A1 (en) * | 2001-09-28 | 2003-04-03 | Gorobets Sergey Anatolievich | Memory system sectors |
US20040073727A1 (en) * | 2002-07-29 | 2004-04-15 | M-Systems Flash Disk Pioneers, Ltd. | Portable storage media as file servers |
US20040103241A1 (en) * | 2002-10-28 | 2004-05-27 | Sandisk Corporation | Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system |
WO2005066793A2 (en) * | 2003-12-30 | 2005-07-21 | Sandisk Corporation | Non-volatile memory and method with non-sequential update block management |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8055832B2 (en) | 2005-08-03 | 2011-11-08 | SanDisk Technologies, Inc. | Management of memory blocks that directly store data files |
Also Published As
Publication number | Publication date |
---|---|
WO2007019197A2 (en) | 2007-02-15 |
JP2009503743A (en) | 2009-01-29 |
KR20080044254A (en) | 2008-05-20 |
EP1913463A2 (en) | 2008-04-23 |
KR101378031B1 (en) | 2014-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW200741526A (en) | Management of memory blocks that directly store data files | |
ATE509314T1 (en) | RECLAIMING DATA STORAGE CAPACITY IN FLASH STORAGE SYSTEMS | |
WO2007019197A3 (en) | Management of memory blocks that directly store data files | |
WO2006088727A3 (en) | Direct data file storage in flash memories | |
WO2006088719A3 (en) | Direct data file storage implementation techniques in flash memories | |
WO2006088723A3 (en) | Direct file data programming and deletion in flash memories | |
US9208074B2 (en) | Updating address mapping in sub-intervals in a flash memory data storage device | |
US9632880B2 (en) | Data storage device and flash memory control method | |
US8909986B2 (en) | Data storing method for solid state drive to preserve data integrity after power failure | |
US7752412B2 (en) | Methods of managing file allocation table information | |
US20190034347A1 (en) | Memory addressing | |
EP1771862B1 (en) | Method and device to improve usb flash write performance | |
EP1550952A3 (en) | Address mapping method and mapping information managing method for flash memory, and flash memory using the same | |
US20150026390A1 (en) | Garbage collection control method for solid state drive | |
WO2007019075A3 (en) | Method and system for dual mode access for storage devices | |
TW200732917A (en) | Dual mode access for non-volatile storage devices | |
WO2007019059A3 (en) | Interfacing systems operating through a logical address space and on a direct data file basis | |
ATE518190T1 (en) | FLASH MEMORY MANAGEMENT METHOD | |
JP2008507756A5 (en) | ||
WO2004061673A3 (en) | Method and apparatus for block oriented memory management provided in smart card controllers | |
US10089225B2 (en) | Improving garbage collection efficiency by reducing page table lookups | |
EP1736884A3 (en) | Flash storage | |
WO2007019175A3 (en) | Indexing of file data in reprogrammable non-volatile memories that directly store data files | |
JP2010515162A5 (en) | ||
TW200943058A (en) | Method of wear leveling for non-volatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200680028003.X Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2006789236 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008525168 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020087004689 Country of ref document: KR |