CN1098526A - 闪速文件系统 - Google Patents

闪速文件系统 Download PDF

Info

Publication number
CN1098526A
CN1098526A CN94102329A CN94102329A CN1098526A CN 1098526 A CN1098526 A CN 1098526A CN 94102329 A CN94102329 A CN 94102329A CN 94102329 A CN94102329 A CN 94102329A CN 1098526 A CN1098526 A CN 1098526A
Authority
CN
China
Prior art keywords
unit
address
physical
storer
blank
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN94102329A
Other languages
English (en)
Other versions
CN1078364C (zh
Inventor
阿米尔·班
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Milsys Ltd
Original Assignee
M Systems Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=21835870&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1098526(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by M Systems Co ltd filed Critical M Systems Co ltd
Publication of CN1098526A publication Critical patent/CN1098526A/zh
Application granted granted Critical
Publication of CN1078364C publication Critical patent/CN1078364C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system

Abstract

一种闪速存储器,虚拟变换系统允许数据可被连 续地写入空白的物理地址单元。虚拟存储变换和闪 速存储器的物理单元地址相关,以跟踪存储器里数据 的位置。

Description

本发明涉及一种改进的在闪速存储器(flash memory)里存储和检索信息的系统,更具体地涉及一种组织和管理写入闪速存储器的数据的系统。
正如本领域的一般技术人员所了解的那样,由闪速型、浮栅晶体管组成的电可擦可编程只读存储器(EEPROM)已得到技术上的说明而且目前在商业上是可得到的。这些所谓的闪速存储器是在功能上和性能上与EPROM存储器相类似的非易失性存储器,并具有额外的功能性即可允许电路内、可编程操作来擦除存储器块。在闪速存储器中在之前不先对该区域进行块擦除而要对以前已写过的存储器区域进行重写是不实际的。尽管本发明描述于闪速存储器情况,但是本领域的一般技术人员可以理解该技术内容同样可应用于那些具有类似于闪速存储器的写、读和写之前块擦除特性的数据存储部件。
在典型的计算机系统里,操作系统程序负责对作为系统一部分的数据存储部件的数据管理。数据存储部件能和操作系统程序相容的一个必要的、通常是充分的特性是它能对数据存储媒体的任何位置读出数据和写入数据。这样,闪速存储器和典型的现存操作系统程序是不相容的,因为数据不能写到闪速存储器那些先前已被写进过数据的区域,除非这些区域首先被擦除。
现在技术中已提出用软件产品在不必修改现有的操作系统程序下允许现有的计算机操作程序来管理闪速存储器。但是,这些现有技术的程序把闪速存储器作为“写一次读多次”的部件来运行。现有技术的软件产品不能够重复利用以前已写过的位置。当所有的位置最终写完后如果没有特定的用户干预存储器不能得到进一步的使用。
本发明的目的是提供一种控制和管理闪速存储器存取的方法(软件,硬件的固件),使得对计算机操作系统而言闪速存储器好象是一个数据存储部件,因而有可能对闪速存储器的任何单元读出数据和写进数据。一种允许闪速存储器仿真随机存取存储器和允许现有计算机操作系统提供所有其它所需支持的方法,这种支持和标准随机存取存储器提供的支持具有相同的方式并和仿真方法无关。
简言之,本发明设想提供一种闪速存储器,虚拟变换系统,它允许数据被连续读写进空白的物理地址单元。虚拟存储变换和闪速存储器物理单元地址相关以跟踪存储器里数据的位置。
闪速存储器的物理位置组织为字节阵列。阵列里的各个字节被分配若干地址(anumber of),用这个方法该字节是物理上可存取的,本文中称之为物理地址空间。阵列中的各个字节具有第二个地址,称为虚拟地址空间。一个称为虚拟变换的表把虚拟地址转换为物理地址。在这里须注意,虚拟地址空间不必具有和物理地址空间相同的规模。
相连的、固定长度的物理字节地址组形成块。例如,假设块的长度为512个字节,具有物理地址256211的字节是块500中的211号字节(256211∶512=500+211)。一个或多个物理上相连的闪速存储器区域(称为区)组成单元,该区域可用适当的现有闪速存储器技术物理地擦除每个单元包含整数的块。
虚拟存储变换是一个表,其中第一项目属于虚拟块0,第二个项目属于虚拟块1,依此类推。有一相应的物理地址和表中各个虚拟块地址相关联。在读闪速存储器的操作中,计算机生成的地址译码为虚拟块地址和该块中的字节位置。虚拟存储变换用来把虚拟块地址转换为物理块地址;在虚拟地址空间和物理地址空间中字节的位置相同。
在写操作中,计算机生成的地址再次解释为虚拟块地址和块中的字节位置。虚拟存储变换把它转换成物理存储器块地址。如果对应于该物理地址的闪速存储器块当前已被写过,则通常不可能对该物理地址进行写。一个空白的块则被定位并被写入。虚拟存储变换被改变,使得空白的物理块地址变换给原来的虚拟地址,而原来的物理地址标志为不可使用的并保持为不可使用,直到区擦除操作擦除包含该块的单元为止。要注意写操作假设整个块可被重写。这是计算机系统通常在存储媒体中存取数据的方式。但是,将会理解通常任何所需数据数量的字节可被写进新的存储位置。
本发明的最佳实施例中,对各个单元分配了一个逻辑单元地址,该逻辑单元地址在该单元被重写到闪速存储器的新的物理地址位置时保持不变。虚拟变换包含对逻辑单元地址的参考而不是对物理单元地址的参考,这样单元转换期间的数据移动不会影响虚拟变换。
各个单元具有使用图,它包括该单元的所有的块,块的虚拟地址,如果它(单元)被变换,还包括标志自由块和标志不可使用块的特定字符。
通过把包括不可使用块的存储器单元转换到闪速存储器的保留空白空间,以前写过的闪速存储器的不可使用块被回收。只有可使用块在转换操作中被写入,这样,当重写时,不可使用块的位置不被重写到保留空间,进而成为可使用的。在重写之后,原来的存储器单元空间被闪速擦除为一个单元并且变为空白保留空间对它可进行后续的转换。
此外,在本发明的最佳实施例中,虚拟变换主要是存储在闪速存储器里只有少量的次要虚拟变换存储在随机存取存储器里。闪速存储器的虚拟变换存储在块中并按页面组织,页面的长度等于块中字节数量乘以字节所代表的物理块地址数量的乘积。次要的随机存取存储器包含页面地址。当对一给定的虚拟地址读数据时,通过地址被页面长度除来确定页面号。该结果索引次要的虚拟变换来寻找正确的主要虚拟变换块。余数被存储在闪速存储器里的虚拟变换用来计算所需的物理地址。为改变闪速存储器里的虚拟变换,改变后的变换写入到自由块并且随机存取存储器的次要交换也被改变以反映主要变换位置里的变化,被替换的块被标记为删除。
通过下述对本发明最佳实施例的说明并参照附图可对上述的和其它的目的、概念和优点得到更好的理解,附图为:
图1是一个方块图,说明按照本发明技术内容的一个系统实施例中系统的功能部件。
图2是按照本发明的技术内容的闪速存储器组织的一层图示。
图3图示一个单元是如何格式的。
图4图示说明计算机产生的地址是怎样变换为物理地址的。
图5是说明读操作的流程图。
图6是说明写操作的流程图。
图7图示说明在转移操作之前和之后的一个单元的状态。
图8为转移操作的流程图。
图9为一个流程图,说明把虚拟对物理变换的主要部分存入闪速存储器的操作。
现参照附图1,在一个典型的系统里,处理器10结合其操作系统软件发出一系列读和写命令,对随机存取存储器的特定地址单元读写数据。如本领域的一般技术人员所理解的那样,在随机存取存储器部件里,诸如磁盘存储器,数据可被写或读到任何地址单元。在图1的系统里,处理器10对闪速存储器12中的特定地址单元按块写入数据和读出数据。尽管闪速存储器12的区可被擦除,但是当前已写地址单元不能被重写,除非整个区被擦除。根据本发明的技术内容,闪速存储器控制器14提供一个完整的可重写虚拟地址空间,这样闪速存储器仿真为一个随机存取存储器,如磁盘存储器,并且处理器操作系统软件按照它对标准随机存取存储器提供运行支持的相同方式和按照一种和闪速存储器12和其控制器14无关的方式提供所有其它必需的运行支持(例如文件系统)。典型的系统还包括一个常规的随机存取存储器16。可以理解控制器14的功能由软件、硬件的固件来实现,这就不再需要如图中所建议的那样存在一个物理上的分离装置。
现看图2,它部分地表示闪速存储器的组织。闪速存储器具有若干区,在这里标号为区A和区B等。每个区由许多相连的物理存储位置所组成,它们可利用常规的、周知的闪速存储器技术来进行块擦除。区组织为单元,图中只显示了4个单元,标号为1号单元、6号单元,单元N-1和转移单元。每个单元至少由多个连相区中的一个区组成。如在这里所图示的,每个单元由2个区组成(即,1号单元-区A和区B;2号单元-区C和区D;转移单元-区sy和区zy)。
每个单元由整数个可寻址块组成并且每个块本身又由相连的固定长度字节组所组成。在所有的时候,在存储器12里总有一个单元是空白的(即转移单元),这样在擦除一个单元之前可把该要擦除单元中的有效块写进到该空白单元中。
现有图3,每个单元含有整数的相连数据块21,块反过来又由相连的字节地址组成,字节地址可编址为块号和在块中的偏移。单元里的各个块可编址为块号和在单元中的偏移。每个单元具有一个单元标题23及单元里各块的分配状态图25。单元标题23包括格式标识符和单元的逻辑单元号。因为数据在单元转移期间必须物理地运动,即使单元的物理位置在闪速存储器中发生变化单元号最好保持不变。另外,标题还可包括系统范围的信息。块分配图25对每个块具有一个字,它标记块的状态和块在单元里的偏移。状态指示为“块自由和可写”,“块删除和不可写”,“块分配和含有用户数据”以及块的虚拟地址(背面指针)。
如前所述,最好每个单元被分配一个不变的逻辑单元号,即使单元在存储器里的物理位置改变了该逻辑单元号也不变。如图4所示,计算机10生成地址29由块号和块偏移组成。这些地址被闪速控制器14解释为虚拟地址,而虚拟变换用来建立虚拟地址空间和物理地址空间之间的对应。当块重写时虚拟变换改变这样虚拟地址空间是动态的。还要注意,在任何给定时刻,虚拟地址空间的一个块或多个块可能不映射到物理地址空间,在物理地址空间里的块可能是空白的,因而可被自由写入。
因为在单元转移到空白单元空间期间数据物理上移动,单元分配有逻辑单元号,当单元在存储器的物理位置变化时逻辑单元号不变。虚拟变换31在二级地址转换的第一步中把块号变换为逻辑单元地址。逻辑单元地址是一个和逻辑单元号相关的地址,类似于物理地址,物理地址是和物理单元号相关的一个地址。逻辑单元号是逻辑地址的高位二进制数字,并且可通过位移位操作从逻辑地址中导出。从变换31中得到的逻辑地址33包括逻辑单元号和在单元中块的偏移。
逻辑单元表35把逻辑单元号翻译为逻辑单元的物理单元号。双步地址转换过程消除了当一个单元移动到新的物理位置时改变块地址的要求。
在读操作中由块地址组成的虚拟地址,例如,最初被变换为逻辑单元号和寻址块中在这单元里的块偏移。图35把单元号33变换为单元的物理地址37以及该寻址块在该单元里的偏移37,这样该寻址数据块从这物理位置读出。这里假定以块为单位的数据读出和写仿佛典型上就是这样做的。当然,如果需要以字节为单位的数据读和写可采用相同的原则。图5是一个流程图,说明该读操作。如前面所解释的,虚拟地址29在双步地址变换的第一步中变换为逻辑地址(块40)。在第二步中,逻辑地址变换为闪速存储器里的物理地址(块41)。在该物理地址上的数据被读(块42),然后结束该操作。
在写操作中,虚拟地址29再次首先变换为逻辑单元号和在该单元中的块偏移。控制器14算法为该单元检查块分配表25。如果对应于该地址的块已被写入,则写命令不能在该对应的物理位置上执行。控制算法扫描分配表25的各个单元,直到一个自由块被定位为止。块图25中原来单元地址上的块的状态被改变以在分配表中删除这个块,而自由块的状态改变为已写。虚拟变换31被更新,以使原来的虚拟地址现在指向写操作发生处的新逻辑地址。按前面所描述的方式,该逻辑地址变换为物理地址,对这个地址进行块写入。图6是说明写操作的流程图。在写操作中虚拟地址29变换为逻辑单元地址(块45),并对该单元的单元分配进行检查(块46)。如果在判定块47里该单元地址是自由的,则该单元地址变换为物理地址(块48),数据写进该物理地址(块49),然后操作结束。如果逻辑地址是不自由的(块47),则单元表被扫描以定位单元分配表中的自由地址(块50)。该新逻辑地址变换为物理地址(块51),数据被写入这个物理地址(块52)。单元分配表被更新(块53),以表明原来的块被删除并是不可写的,而且新的块被分配并含有用户数据。虚拟对逻辑地址的变换也被更新,以指向与原来虚拟地址相对应的数据的新的物理地址(块54和块55)。
为允许读和写操作可不受限制连续进行,物理存储空间周期性地回收。如前面所述,在所有时刻至少一个存储器单元是保留的,这样它完整地组成一个自由块并且用作为转换单元。
现有图7,一个有效单元被选择(这里是单元M),而且它的所有当前映射有效块被读并被写入转换单元。选定的单元M然后进行块擦除,并且它变成转换单元,同时有效块写入的转换单元在本例中变成单元M。图7说明这些单元在转换操作之前和之后的状态。图8是转换操作的流程图。在转换操作中一个单元被选择以供转换(块60),该选定单元的有效数据块被读(块61)。这些有效数据块然后被写进转换块中与原来块中位置相对应的位置上(块62)。所选择的原来块然后被闪速擦除(块63),并且逻辑对物理地址的变换被改变使得选定的单元变为转换单元并且把选定单元的单元号分配给转换单元(块64)。
迄今所描述的系统需要一个内容可自由更新的虚拟变换图,这个图可存储在常规的随机存取存储器里。但是,作为例子,假设块的长度为512字节,因为虚拟图含有各块的一条项目,而各条项目可能为例如4字节长(即可编址可达4GB存储器),一个80兆字节的闪速存储器将需640K字节的存储器来存储变换表。为了减少存贮虚拟变换所需的随机存取存储器的总量,在本发明的最佳实施例中,该变换数据的主要部分存储在闪速存储器的本身里,而把计算机的虚拟地址映射为主要虚拟变换的次要虚拟变换被存储在随机存取存储器里,比如存储器16。这里要提出一个重要的观点,即次要虚拟变换的排列使得读和写虚拟变换的过程和前面叙述的读和写常规数据的过程是相同的。对虚拟变换自身的处理等同于上述的对用户数据的处理方式,并且存储在随机存取存储器里的虚拟变换(即次要虚拟变换)等同于前面所描述的虚拟变换。
在本实施例中,虚拟变换在闪速存储器12里的负虚拟地址里驻留;常规空间从虚拟地址零开始。虚拟变换映射它自身使用的负地址,这样驻留在闪速存储器的虚拟变换可象常规用户数据一样被读和被写,只有虚拟变换中映射它本身的那一部分(即次要虚拟变换)驻留在随机存取存储器里。
在一简化的例子里,假设6000字节的虚拟变换存储在12个虚拟变换块里,每块512字节。假设为4字节地址,每个块可存储128个物理地址。这样,每个块包含64K字节虚拟闪速存储器地址。各个虚拟闪速存储器地址块被认为是一个页面,而随机存取存储器存储页面地址,(本例中,只有48字节),这些页面地址映身地址块。当从一给定虚拟地址读数据时,该地址除以页面长度(64K字节)以得到次要虚拟存储器里的页面号,该页面号和主要虚拟变换里存储该地址的页面块相映射。利用该虚拟存储器页面块,映身绝对闪速存储器物理地址的过程可按已说明的方式进行。作为例子,当虚拟地址除以页面长度后,余数可除以虚拟存储块长度(即512)以得到从闪速存储器读出的对地址阵列的索引。
当按给定虚拟地址写数据时,计算机生成的地址同样除以页面长度以获得闪速存储器里对次要虚拟变换的索引。次要虚拟变换映射到主要虚拟变换,在那里主要虚拟变换块被读;这是用来映射到被寻址的物理块,在那里进行读。如果该块不能被重写,一个空白块被识别并按前面叙述的方式写入,同时原来的数据块标记为删除。为更新驻留于闪速存储器里的虚拟变换,本质上仿照同样的过程。虚拟变换块,其修改形式反映地址数据新的物理位置,被写入到闪速存储器的空白块并且旧块被标记为删除。如需要,在随机存取存储器里的次要虚拟存储也被改变以反映主要虚拟存储块位置的变化。
图9是该操作的流程图。该进程的第一步是把虚拟地址转换为页面号(块70),并利用这个页面号来定位RAM16中与存储在闪速存储器里的虚拟变换相关页面块对应的地址(块71)。从闪速存储器读出该地址的虚拟变换页面块(块72)并采用前面已描述通过的方法为数据读或数据写操作的虚拟地址定位对应的物理地址。在数据写操作中,虚拟变换页面块必须更新(块73)并且更新的页面块虚拟变换被写入自由的闪速存储器物理地址位置(块74),曾定位用于页面块变换的原来的闪速存储器地址被标记为删除(块75),而RAM存储器16被更新,以为更新过的变换指出虚拟对物理的变换地址(块76)。
系统启动时很容易重建虚拟变换。驻留在闪速存储器里的虚拟变换是非易失性的,不必重建。驻留在易失性随机存取存储器里的次要虚拟变换在启动时可通过扫描驻留在各单元顶部的块使用图进行重建。标记为和虚拟地址相映射的块被识别,因此可相应地构建次要虚拟变换。
尽管本发明是按单个最佳实施例来说明的,本领域的一般技术人员可认识到本发明可按所附权利要求书中所叙述的精神和范围修改实施。

Claims (8)

1、一种用于数据只能写入空白物理存储单元及相连存储单元区可同时擦除存储器上的存储管理方法,包括以下步骤:
把存储器组织成多个单元,各个单元至少包括一个区;
把各个单元组织成多个块,各个所述块包括多个相连物理存储单元;
为各个单元建立分配表其指示单元中各块的状态如有效写入,空白或删除;
建立一个表以把虚拟地址变换为单元里的物理地址;
当按虚拟地址向所述存储器写数据时:
(a)把所述虚拟地址变换为单元里的物理块地址;
(b)检查由(a)小节中所述虚拟地址变换得到的所述单元的所述分配表来确定所述物理块地址上块的状态为有效写入或空白;
(c)如果所述物理块地址上所述块为有效写入状态:
(1)检查所述单元中至少一个单元的所述分配表以识别一个空白块地址;
(2)把所述数据写入到所述存储器的所述空白块地址上;
(3)改变由所述虚拟地址变换得到的所述单元的所述分配表,标明为删除的物理块地址;
(4)改变根据节(c)(2)中所述数据写入的单元的所述分配表,把所述数据写入的空白块地址指示为有效写入;
(5)改变把虚拟地址变换为一个单元里的物理地址的所述表使得所述表能把所述虚拟地址变换到按步骤(c)(2)所述数据所写入到的所述空白块的物理地址上。
2、根据权利要求1的一种存储管理方法,还包括以下步骤:
在所述存储器里建立一个转移单元,该所述单元的所有的块都是空白的;
周期地识别转移单元之外的一个选定单元以进行擦除;
读所述选定单元里各个有效写入块;
把所述选定单元里各个有效写入块写入到所述的转移单元里;
更新所述转移单元的分配表,指明按照刚叙述的写入步骤所被写入块的状态为已写;
擦除所述选定块;
更新虚拟地址对物理地址的所述表,把所述选定单元标志为转移单元并为所述转移单元标志上所述选定单元的单元标识符。
3、一种用于数据只能写入空白物理存储单元及相连存储单元区可同时擦除存储器上的存储管理方法,包括以下步骤:
在所述存储器里存储一个把虚拟地址变换为物理地址的第一表;
把存储在所述存储器的第一表组织为页面可寻址块的段;
在随机存取存储器里存储一个第二表,该表把页面地址变换为所述存储器里所述页面可寻址块的物理地址;
通过把一个已改变的页面可寻址块写入到一个空白物理块位置上来改变存储在所述存储器里所述第一表里的页面可寻址块;并且
更新存储在所述随机存取存储器里的所述第二表使得该表能把该已改变页面可寻址块页面地址变换到所述已改变页面可寻址块已被写入到的空白物理块位置上。
4、一种用于数据只能写入到空白物理单元及相连存储单元区可同时擦除存储器上的存储管理方法,包括以下步骤:
把存储器组织成多个单元,各个单元至少包括一个区;
把各个单元组织成多个块,各个所述块由多个相连物理存储位置所组成;
建立第一表以把虚拟地址变换为单元内的物理地址;
把按页面可寻址块组织成段的所述第一表存储在所述存储器里;
把第二表存储在随机存取存储器里,第二表把页面变换为所述存储器里所述页面可寻址块的物理地址;
当按虚拟地址把数据写进所述存储器时;
(a)从所述虚拟地址导出页面地址;
(b)把所述页面地址变换为所述存储器里的页面可寻址块;
(c)读所述第一表的一个段其把虚拟地址变换为所述存储器里所述页面可寻址块上的物理地址;
(d)把所述虚拟地址变换为物理地址;
(e)如果所述物理地址上的所述块处于有效写入状态;
(1)把所述数据写入到所述存储器里的一个空白块地址上;
(2)改变所述第一表的段使得所述第一表能把所述虚拟地址变换到按步骤(e)(1)所述数据写入到的空白块的物理位置上;
(3)把来自步骤(e)(2)中已改变的第一表的段写入到所述存储器的一个空白物理块里;
(4)更新存储在所述随机存取存储器里的所述第二表使其映射已改变的第一表的段中所述空白物理块位置的页面地址。
5、一种用于数据只能写入到空白物理单元及相连存储单元区可同时擦除存储器上的存储管理方法,包括以下步骤:
把存储器组织成多个单元,各个单元至少包括一个区;
把各个单元组织成多个块,各个所述块由多个相连的物理存储位置所组成;
为各个单元建立一个分配表,其指示单元中各块的状态如有效写入,空白或删除;
建立一个表以把虚拟地址变换为单元里的物理地址;
当按虚拟地址向所述存储器写入数据时:
(a)把所述虚拟地址变换为单元里的物理块地址;
(b)检查由(a)小节中所述虚拟地址变换得到的所述单元的所述分配表来确定所述物理块地址上块的状态为有效写入或空白;
(c)如果所述物理块地址上所述块为有效写入状态;
(1)检查所述单元中至少一个单元的所述分配表以识别一个空白块地址;
(2)把所述数据写入到所述存储器的所述空白块地址上;
(3)改变由所述虚拟地址变换得到的所述单元的所述分配表,将其标示为删除的物理块地址;
(4)改变根据节(c)(2)中所述数据写入的单元的分配表,把所述数据写入到的空白块地址指示为有效写入;
(5)改变把虚拟地址变换为一个单元里的物理地址的所述表使得所述表能把所述虚拟地址变换到按步骤(c)(2)所述数据被写入到的所述空白块的物理地址上;
当按虚拟地址对所述存储器读数据时:
(d)把所述虚拟地址变换为一个单元里的物理块地址;
(e)从所述存储器的所述物理地址读所述数据。
6、根据权利要求5的一种存储管理方法,还包括以下步骤:
在所述存储器建立一个转移单元,该所述单元的所有块都是空白的;
周期地识别转移单元之外的一个选定单元以进行擦除;
读所述选定单元里的各个有效写a块;
把所述选定单元里各个有效写入块写入到所述的转移单元里;
更新所述转移单元的分配表,指示按照刚叙述的写入步骤所被写入块的状态为已写;
擦除所述选定块;
更新虚拟地址对物理地址的所述表,把所述选定单元标志为转移单元并给所述转移单元标志上所述选定单元的单元标识符。
7、一种用于数据只能写入到空白物理单元及相连存储单元区可同时擦除存储器上的存储管理方法,包括以下步骤:
把存储器组织多个单元,各个单元至少包括一个区;
把各个单元组织成多个块,各个所述块由多个相连物理存储位置所组成;
建立第一表以把虚拟地址变换为单元内的物理地址;
把按页面可寻址块组织成段的所述第一表存储在所述存储器里;
把第二表存储在随机存取存储器里,第二表把页面变换为所述存储器里所述页面可寻址块的物理地址;
当按虚拟地址把数据写进所述存储器时:
(a)从所述虚拟地址导出页面地址;
(b)把所述页面地址变换为所述存储器里的页面可寻址块;
(c)读所述第一表的一个段,其把虚拟地址变换为所述存储器里所述页面可寻址块上的物理地址;
(d)把所述虚拟地址变换为物理地址:
(e)如果所述物理地址上的所述块处于有效写入状态:
(1)把所述数据写入到所述存储器里的一个空白块地址上;
(2)改变所述第一表的段使得所述第一表能把所述虚拟地址变换到按步骤(e)(1)所述数据写入到的空白块的物理位置上;
(3)把来自步骤(e)(2)中已改变的第一表的段写入到所述存储器的一个空白物理块里;
(4)更新存储在所述随机存取存储器里的所述第二表使其映射已改变的第一表的段中所述空白物理块位置的页面地址;
当按虚拟地址对所述存储器读数据时:
(a)从所述虚拟地址导出页面地址;
(f)把所述页面地址变换为所述存储器里的页面可寻址块;
(g)读所述第一表的一个段,其把虚拟地址变换为所述存储器里所述页面可寻址块上的物理地址;
(h)把所述虚拟地址变换为物理地址;
(i)从所述存储器里的所述物理地址读所述数据。
8、根据权利要求7的一种存储管理方法,还包括以下步骤:
在所述存储器里建立一个转移单元,该所述单元的所有块都是空白的;
周期地识别转移单元之外的一个选定单元以进行擦除;
读所述选定单元里的各个有效写入块;
把所述选定单元里各个有效写入块写入到所述的转移单元里;
更新所述转移单元的分配表,指示按照刚叙述的写入步骤被写入块的状态为已写;
擦除所述选定块;
更新虚拟地址对物理地址的所述表,把所述选定单元标志为转移单元并给所述转移单元标志上所述选定单元的单元标识符。
CN94102329A 1993-03-08 1994-03-08 存储器管理方法 Expired - Lifetime CN1078364C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US027,131 1993-03-08
US08/027,131 US5404485A (en) 1993-03-08 1993-03-08 Flash file system

Publications (2)

Publication Number Publication Date
CN1098526A true CN1098526A (zh) 1995-02-08
CN1078364C CN1078364C (zh) 2002-01-23

Family

ID=21835870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN94102329A Expired - Lifetime CN1078364C (zh) 1993-03-08 1994-03-08 存储器管理方法

Country Status (12)

Country Link
US (1) US5404485A (zh)
EP (1) EP0688450B1 (zh)
JP (2) JPH08510072A (zh)
KR (1) KR100292011B1 (zh)
CN (1) CN1078364C (zh)
AU (1) AU6269994A (zh)
DE (1) DE69414556T2 (zh)
FI (1) FI105726B (zh)
IL (1) IL108766A (zh)
TW (1) TW264547B (zh)
WO (1) WO1994020906A1 (zh)
ZA (1) ZA941446B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6839798B1 (en) 1998-12-14 2005-01-04 Renesas Technology Corp. Flash memory capable of storing frequently rewritten data
CN1296833C (zh) * 2002-11-05 2007-01-24 松下电器产业株式会社 用于存储器管理的设备和方法
CN1300803C (zh) * 2000-10-11 2007-02-14 三星电子株式会社 闪速存储器中驱动再映射的方法及其闪速存储器体系结构
CN1322428C (zh) * 2001-06-04 2007-06-20 三星电子株式会社 闪速存储器管理方法
CN1329842C (zh) * 2002-10-28 2007-08-01 三因迪斯克公司 在非易失性存储器系统中执行块高速缓冲存储的方法和装置
CN100421093C (zh) * 1997-06-04 2008-09-24 索尼公司 外部存储装置
CN100424655C (zh) * 2001-11-16 2008-10-08 三星电子株式会社 快闪存储器管理方法
CN1722109B (zh) * 2004-06-30 2010-05-26 三星电子株式会社 增量归并方法和使用该方法的存储系统
CN101094183B (zh) * 2007-07-25 2011-12-07 杭州华三通信技术有限公司 一种缓存管理方法及装置
CN103713857A (zh) * 2013-12-24 2014-04-09 华为技术有限公司 存储数据的方法及存储装置
CN106547480A (zh) * 2015-09-17 2017-03-29 慧荣科技股份有限公司 数据储存装置及其数据读取方法

Families Citing this family (551)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
US5581723A (en) * 1993-02-19 1996-12-03 Intel Corporation Method and apparatus for retaining flash block structure data during erase operations in a flash EEPROM memory array
US5519843A (en) * 1993-03-15 1996-05-21 M-Systems Flash memory system providing both BIOS and user storage capability
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
US5479638A (en) * 1993-03-26 1995-12-26 Cirrus Logic, Inc. Flash memory mass storage architecture incorporation wear leveling technique
US5522069A (en) * 1993-04-30 1996-05-28 Zenith Data Systems Corporation Symmetric multiprocessing system with unified environment and distributed system functions
US5600821A (en) * 1993-07-28 1997-02-04 National Semiconductor Corporation Distributed directory for information stored on audio quality memory devices
US5640529A (en) * 1993-07-29 1997-06-17 Intel Corporation Method and system for performing clean-up of a solid state disk during host command execution
JP3215237B2 (ja) * 1993-10-01 2001-10-02 富士通株式会社 記憶装置および記憶装置の書き込み/消去方法
US5784706A (en) * 1993-12-13 1998-07-21 Cray Research, Inc. Virtual to logical to physical address translation for distributed memory massively parallel processing systems
EP0663636B1 (en) * 1994-01-12 2001-10-31 Sun Microsystems, Inc. Logically addressable physical memory for a virtual memory computer system that supports multiple page sizes
US5696917A (en) 1994-06-03 1997-12-09 Intel Corporation Method and apparatus for performing burst read operations in an asynchronous nonvolatile memory
US5765175A (en) * 1994-08-26 1998-06-09 Intel Corporation System and method for removing deleted entries in file systems based on write-once or erase-slowly media
EP0704803B1 (de) * 1994-09-30 1997-03-05 Alcatel SEL Aktiengesellschaft Verfahren zur Speicherverwaltung eines Flash-Speichers
JPH08137634A (ja) * 1994-11-09 1996-05-31 Mitsubishi Electric Corp フラッシュディスクカード
JP2669365B2 (ja) * 1994-11-24 1997-10-27 日本電気株式会社 書換え可能なromファイル装置
JP3464836B2 (ja) * 1995-01-19 2003-11-10 富士通株式会社 記憶装置のメモリ管理装置
AU692670B2 (en) * 1995-02-10 1998-06-11 Aristocrat Technologies Australia Pty Limited Dram emulator
AUPN105495A0 (en) * 1995-02-10 1995-03-09 Aristocrat Leisure Industries Pty Ltd Dram emulator
JP3706167B2 (ja) * 1995-02-16 2005-10-12 株式会社ルネサステクノロジ 半導体ディスク装置
JP2671860B2 (ja) 1995-03-30 1997-11-05 日本電気株式会社 フラッシュメモリ用ファイルシステム
JPH08328762A (ja) * 1995-06-06 1996-12-13 Mitsubishi Electric Corp 半導体ディスク装置及びそのメモリ管理方法
US6728851B1 (en) 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6081878A (en) * 1997-03-31 2000-06-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5845313A (en) * 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
US8171203B2 (en) * 1995-07-31 2012-05-01 Micron Technology, Inc. Faster write operations to nonvolatile memory using FSInfo sector manipulation
US5930815A (en) * 1995-07-31 1999-07-27 Lexar Media, Inc. Moving sequential sectors within a block of information in a flash memory mass storage architecture
US6978342B1 (en) 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
DE29513792U1 (de) * 1995-08-28 1995-10-12 Siemens Ag Prozessoreinheit
GB2291990A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Flash-memory management system
GB2291991A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Disk drive emulation with a block-erasable memory
JP3703181B2 (ja) * 1995-09-28 2005-10-05 キヤノン株式会社 フラッシュrom管理方法及び装置
JP3727983B2 (ja) * 1995-09-28 2005-12-21 キヤノン株式会社 電子カメラ
US5933847A (en) 1995-09-28 1999-08-03 Canon Kabushiki Kaisha Selecting erase method based on type of power supply for flash EEPROM
JPH0997206A (ja) * 1995-09-28 1997-04-08 Canon Inc フラッシュrom管理方法及び装置及びコンピュータ制御装置
JPH0997207A (ja) * 1995-09-28 1997-04-08 Canon Inc フラッシュrom管理方法及び装置及びコンピュータ制御装置
JPH0997314A (ja) * 1995-09-28 1997-04-08 Canon Inc Icカード装置
US6014724A (en) * 1995-10-27 2000-01-11 Scm Microsystems (U.S.) Inc. Flash translation layer block indication map revision system and method
US5867641A (en) * 1995-10-27 1999-02-02 Scm Microsystems (U.S.) Inc. Flash translation layer cleanup system and method
US5987478A (en) * 1995-10-31 1999-11-16 Intel Corporation Virtual small block file manager for flash memory array
US5829013A (en) 1995-12-26 1998-10-27 Intel Corporation Memory manager to allow non-volatile memory to be used to supplement main memory
US5978808A (en) * 1995-12-27 1999-11-02 Intel Corporation Virtual small block file manager for flash memory array
JPH09185551A (ja) * 1996-01-08 1997-07-15 Mitsubishi Electric Corp 半導体記憶装置
US5787445A (en) * 1996-03-07 1998-07-28 Norris Communications Corporation Operating system including improved file management for use in devices utilizing flash memory as main memory
US5860082A (en) * 1996-03-28 1999-01-12 Datalight, Inc. Method and apparatus for allocating storage in a flash memory
US5896393A (en) * 1996-05-23 1999-04-20 Advanced Micro Devices, Inc. Simplified file management scheme for flash memory
US5848420A (en) * 1996-06-14 1998-12-08 Eastman Kodak Company System and method for accessing data of a digital camera from a personal computer
KR980013092A (ko) * 1996-07-29 1998-04-30 김광호 교환시스템의 화일관리장치 및 방법
FR2752072B1 (fr) * 1996-08-01 1999-01-29 Solaic Sa Carte a circuit integre comportant des fichiers classes selon une arborescence
JPH10124381A (ja) * 1996-10-21 1998-05-15 Mitsubishi Electric Corp 半導体記憶装置
US5745418A (en) * 1996-11-25 1998-04-28 Macronix International Co., Ltd. Flash memory mass storage system
US5937434A (en) * 1997-02-14 1999-08-10 Intel Corporation Method of managing a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US6182188B1 (en) 1997-04-06 2001-01-30 Intel Corporation Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US6311290B1 (en) 1997-02-14 2001-10-30 Intel Corporation Methods of reliably allocating, de-allocating, re-allocating, and reclaiming objects in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US5982553A (en) 1997-03-20 1999-11-09 Silicon Light Machines Display device incorporating one-dimensional grating light-valve array
US6088759A (en) * 1997-04-06 2000-07-11 Intel Corporation Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US5943692A (en) * 1997-04-30 1999-08-24 International Business Machines Corporation Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
GB2328531A (en) * 1997-08-23 1999-02-24 Ibm Storing a long record in a set of shorter keyed records
DE19740525C1 (de) * 1997-09-15 1999-02-04 Siemens Ag Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug
US5937425A (en) * 1997-10-16 1999-08-10 M-Systems Flash Disk Pioneers Ltd. Flash file system optimized for page-mode flash technologies
JPH11203191A (ja) * 1997-11-13 1999-07-30 Seiko Epson Corp 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体
WO1999030239A1 (fr) * 1997-12-05 1999-06-17 Tokyo Electron Limited Memoire et procede d'acces
US6040997A (en) * 1998-03-25 2000-03-21 Lexar Media, Inc. Flash memory leveling architecture having no external latch
US6130770A (en) 1998-06-23 2000-10-10 Silicon Light Machines Electron gun activated grating light valve
US6101036A (en) 1998-06-23 2000-08-08 Silicon Light Machines Embossed diffraction grating alone and in combination with changeable image display
JP4085478B2 (ja) * 1998-07-28 2008-05-14 ソニー株式会社 記憶媒体及び電子機器システム
US6303986B1 (en) 1998-07-29 2001-10-16 Silicon Light Machines Method of and apparatus for sealing an hermetic lid to a semiconductor die
US6314557B1 (en) 1998-12-14 2001-11-06 Infineon Technologies Development Center Tel Aviv Ltd Hybrid computer programming environment
KR20000041291A (ko) * 1998-12-22 2000-07-15 김영환 이동통신 시스템에서 방문 이동 가입자의 데이터 관리 방법
FR2787901B1 (fr) * 1998-12-28 2001-02-09 Bull Sa Organisation memoire par zones physiques
GB9903490D0 (en) * 1999-02-17 1999-04-07 Memory Corp Plc Memory system
CA2267484C (en) * 1999-03-30 2002-03-05 Object Technology International Inc. Reclaiming memory from deleted applications
AU2006200756B2 (en) * 1999-04-05 2008-04-03 Sandisk Il Ltd A USB flash memory device for connecting to a USB-defined BUS
US6148354A (en) * 1999-04-05 2000-11-14 M-Systems Flash Disk Pioneers Ltd. Architecture for a universal serial bus-based PC flash disk
US6282605B1 (en) 1999-04-26 2001-08-28 Moore Computer Consultants, Inc. File system for non-volatile computer memory
KR100330164B1 (ko) 1999-04-27 2002-03-28 윤종용 무효 블록들을 가지는 복수의 플래시 메모리들을 동시에 프로그램하는 방법
KR100544175B1 (ko) * 1999-05-08 2006-01-23 삼성전자주식회사 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법
US8102662B2 (en) * 2007-07-05 2012-01-24 Super Talent Electronics, Inc. USB package with bistable sliding mechanism
US8625270B2 (en) 1999-08-04 2014-01-07 Super Talent Technology, Corp. USB flash drive with deploying and retracting functionalities using retractable cover/cap
US20080209114A1 (en) * 1999-08-04 2008-08-28 Super Talent Electronics, Inc. Reliability High Endurance Non-Volatile Memory Device with Zone-Based Non-Volatile Memory File System
US7466556B2 (en) * 1999-08-04 2008-12-16 Super Talent Electronics, Inc. Single chip USB packages with swivel cover
US7830666B2 (en) 2000-01-06 2010-11-09 Super Talent Electronics, Inc. Manufacturing process for single-chip MMC/SD flash memory device with molded asymmetric circuit board
US7872871B2 (en) * 2000-01-06 2011-01-18 Super Talent Electronics, Inc. Molding methods to manufacture single-chip chip-on-board USB device
US7690031B2 (en) * 2000-01-06 2010-03-30 Super Talent Electronics, Inc. Managing bad blocks in flash memory for electronic data flash card
US7535719B2 (en) * 1999-08-04 2009-05-19 Super Talent Electronics, Inc. Single chip USB packages with contact-pins cover
US7447037B2 (en) * 1999-08-04 2008-11-04 Super Talent Electronics, Inc. Single chip USB packages by various assembly methods
US7318117B2 (en) 2004-02-26 2008-01-08 Super Talent Electronics, Inc. Managing flash memory including recycling obsolete sectors
US7702831B2 (en) * 2000-01-06 2010-04-20 Super Talent Electronics, Inc. Flash memory controller for electronic data flash card
US8141240B2 (en) 1999-08-04 2012-03-27 Super Talent Electronics, Inc. Manufacturing method for micro-SD flash memory card
KR100577380B1 (ko) * 1999-09-29 2006-05-09 삼성전자주식회사 플래시 메모리와 그 제어 방법
KR100703680B1 (ko) * 1999-10-14 2007-04-05 삼성전자주식회사 플래시 파일 시스템
CN1088218C (zh) 1999-11-14 2002-07-24 邓国顺 用于数据处理系统的快闪电子式外存储方法及其装置
US6643731B2 (en) * 1999-12-31 2003-11-04 Texas Instruments Incorporated Low cost memory management that resists power interruption
US20080286990A1 (en) * 2003-12-02 2008-11-20 Super Talent Electronics, Inc. Direct Package Mold Process For Single Chip SD Flash Cards
US7702984B1 (en) 2000-01-06 2010-04-20 Super Talent Electronics, Inc. High volume testing for USB electronic data flash cards
US20060161725A1 (en) * 2005-01-20 2006-07-20 Lee Charles C Multiple function flash memory system
US6424975B1 (en) 2000-01-07 2002-07-23 Trg Products, Inc. FAT file system in palm OS computer
US7102671B1 (en) 2000-02-08 2006-09-05 Lexar Media, Inc. Enhanced compact flash memory card
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
EP1130516A1 (en) * 2000-03-01 2001-09-05 Hewlett-Packard Company, A Delaware Corporation Address mapping in solid state storage device
US7167944B1 (en) 2000-07-21 2007-01-23 Lexar Media, Inc. Block management for mass storage
US7113432B2 (en) 2000-09-14 2006-09-26 Sandisk Corporation Compressed event counting technique and application to a flash memory system
US6473845B1 (en) * 2000-09-28 2002-10-29 Hewlett-Packard Company System and method for dynamically updating memory address mappings
US7606733B2 (en) * 2000-10-27 2009-10-20 Sandisk Il Ltd. Account portability for computing
US6986030B2 (en) 2000-10-27 2006-01-10 M-Systems Flash Disk Pioneers Ltd. Portable memory device includes software program for interacting with host computing device to provide a customized configuration for the program
US7373656B2 (en) * 2000-10-27 2008-05-13 Sandisk Il Ltd. Automatic configuration for portable devices
US7028165B2 (en) * 2000-12-06 2006-04-11 Intel Corporation Processor stalling
KR100365725B1 (ko) 2000-12-27 2002-12-26 한국전자통신연구원 플래시 메모리를 이용한 파일 시스템에서 등급별 지움정책 및 오류 복구 방법
US6763424B2 (en) * 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US6510488B2 (en) 2001-02-05 2003-01-21 M-Systems Flash Disk Pioneers Ltd. Method for fast wake-up of a flash memory system
US6938144B2 (en) 2001-03-22 2005-08-30 Matsushita Electric Industrial Co., Ltd. Address conversion unit for memory device
US6707591B2 (en) 2001-04-10 2004-03-16 Silicon Light Machines Angled illumination for a single order light modulator based projection system
US6732221B2 (en) 2001-06-01 2004-05-04 M-Systems Flash Disk Pioneers Ltd Wear leveling of static areas in flash memory
US6591330B2 (en) 2001-06-18 2003-07-08 M-Systems Flash Disk Pioneers Ltd. System and method for flexible flash file
US6747781B2 (en) 2001-06-25 2004-06-08 Silicon Light Machines, Inc. Method, apparatus, and diffuser for reducing laser speckle
US6782205B2 (en) 2001-06-25 2004-08-24 Silicon Light Machines Method and apparatus for dynamic equalization in wavelength division multiplexing
US7024532B2 (en) * 2001-08-09 2006-04-04 Matsushita Electric Industrial Co., Ltd. File management method, and memory card and terminal apparatus that make use of the method
US6829092B2 (en) 2001-08-15 2004-12-07 Silicon Light Machines, Inc. Blazed grating light valve
US7356641B2 (en) * 2001-08-28 2008-04-08 International Business Machines Corporation Data management in flash memory
US6760805B2 (en) * 2001-09-05 2004-07-06 M-Systems Flash Disk Pioneers Ltd. Flash management system for large page size
US7299463B2 (en) 2001-09-28 2007-11-20 Intel Corporation Method for atomically updating a plurality of files
US6678785B2 (en) 2001-09-28 2004-01-13 M-Systems Flash Disk Pioneers Ltd. Flash management system using only sequential write
GB0123415D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Method of writing data to non-volatile memory
GB0123410D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system for data storage and retrieval
GB0123416D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
GB0123421D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Power management system
GB0123419D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Data handling system
GB0123417D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Improved data processing
US6977847B2 (en) * 2001-11-23 2005-12-20 M-Systems Flash Disk Pioneers Ltd. Detecting partially erased units in flash devices
JP3967121B2 (ja) * 2001-12-11 2007-08-29 株式会社ルネサステクノロジ ファイルシステム、ファイルシステム制御方法およびファイルシステムを制御するためのプログラム
DE10163342A1 (de) * 2001-12-21 2003-07-10 Elektro Beckhoff Gmbh Unterneh Datenübertragungsverfahren, serielles Bussystem und Anschalteinheit für einen passiven Busteilnehmer
TWI240861B (en) * 2002-01-11 2005-10-01 Integrated Circuit Solution In Data access method and architecture of flash memory
US6800238B1 (en) 2002-01-15 2004-10-05 Silicon Light Machines, Inc. Method for domain patterning in low coercive field ferroelectrics
US6950918B1 (en) 2002-01-18 2005-09-27 Lexar Media, Inc. File management of one-time-programmable nonvolatile memory devices
US6957295B1 (en) 2002-01-18 2005-10-18 Lexar Media, Inc. File management of one-time-programmable nonvolatile memory devices
US6621739B2 (en) * 2002-01-18 2003-09-16 Sandisk Corporation Reducing the effects of noise in non-volatile memories through multiple reads
US7231643B1 (en) 2002-02-22 2007-06-12 Lexar Media, Inc. Image rescue system including direct communication between an application program and a device driver
WO2003080192A1 (en) * 2002-03-19 2003-10-02 Smith Gregory S Device and method for throwing motion training
US6728023B1 (en) 2002-05-28 2004-04-27 Silicon Light Machines Optical device arrays with optimized image resolution
US6767751B2 (en) 2002-05-28 2004-07-27 Silicon Light Machines, Inc. Integrated driver process flow
US6822797B1 (en) 2002-05-31 2004-11-23 Silicon Light Machines, Inc. Light modulator structure for producing high-contrast operation using zero-order light
US6829258B1 (en) 2002-06-26 2004-12-07 Silicon Light Machines, Inc. Rapidly tunable external cavity laser
EP1376608A1 (fr) * 2002-06-28 2004-01-02 Cp8 Procédé d'écriture dans une mémoire non volatile et système pour la mise en oeuvre d'un tel procédé
US6714337B1 (en) 2002-06-28 2004-03-30 Silicon Light Machines Method and device for modulating a light beam and having an improved gamma response
US6813059B2 (en) 2002-06-28 2004-11-02 Silicon Light Machines, Inc. Reduced formation of asperities in contact micro-structures
KR100484147B1 (ko) * 2002-07-26 2005-04-18 삼성전자주식회사 플래시 메모리 관리 방법
US7035949B2 (en) * 2002-07-29 2006-04-25 M-System Flash Dist Pioneers Ltd. Multipurpose processor, system and method
US6801354B1 (en) 2002-08-20 2004-10-05 Silicon Light Machines, Inc. 2-D diffraction grating for substantially eliminating polarization dependent losses
US7130979B2 (en) * 2002-08-29 2006-10-31 Micron Technology, Inc. Dynamic volume management
US6970969B2 (en) * 2002-08-29 2005-11-29 Micron Technology, Inc. Multiple segment data object management
US6968439B2 (en) 2002-08-29 2005-11-22 Micron Technology, Inc. Single segment data object management
US6712480B1 (en) 2002-09-27 2004-03-30 Silicon Light Machines Controlled curvature of stressed micro-structures
US7254668B1 (en) * 2002-10-28 2007-08-07 Sandisk Corporation Method and apparatus for grouping pages within a block
JP3694501B2 (ja) * 2002-10-30 2005-09-14 松下電器産業株式会社 記憶装置
DE10252059B3 (de) * 2002-11-08 2004-04-15 Infineon Technologies Ag Verfahren zum Betreiben einer Speicheranordnung
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
KR100483490B1 (ko) * 2002-12-24 2005-04-15 한국전자통신연구원 저장 매체에 데이터를 저장하기 위한 이중 저널링저장방법
EP1576593B1 (en) * 2002-12-24 2015-10-21 LG Electronics Inc. Dual journaling store method and storage medium thereof
FI20022297A (fi) * 2002-12-31 2004-07-01 Nokia Corp Menetelmä muistikomponenttien sisältöjen vertailemiseksi
TW200415464A (en) * 2003-02-12 2004-08-16 Acard Technology Corp SATA flash memory device
US6806997B1 (en) 2003-02-28 2004-10-19 Silicon Light Machines, Inc. Patterned diffractive light modulator ribbon for PDL reduction
US6829077B1 (en) 2003-02-28 2004-12-07 Silicon Light Machines, Inc. Diffractive light modulator with dynamically rotatable diffraction plane
US7526598B2 (en) * 2003-03-03 2009-04-28 Sandisk Il, Ltd. Efficient flash memory device driver
US20040186746A1 (en) * 2003-03-21 2004-09-23 Angst Wendy P. System, apparatus and method for storage and transportation of personal health records
US7003621B2 (en) * 2003-03-25 2006-02-21 M-System Flash Disk Pioneers Ltd. Methods of sanitizing a flash-based data storage device
EP1462946A1 (en) * 2003-03-25 2004-09-29 Acard Technology Corp. Architecture for a serial ATA bus based flash memory apparatus
US7664987B2 (en) * 2003-05-25 2010-02-16 Sandisk Il Ltd. Flash memory device with fast reading rate
US6973519B1 (en) 2003-06-03 2005-12-06 Lexar Media, Inc. Card identification compatibility
US7606993B2 (en) * 2003-06-10 2009-10-20 Tdk Corporation Flash memory controller, memory control circuit, flash memory system, and method for controlling data exchange between host computer and flash memory
US7372731B2 (en) * 2003-06-17 2008-05-13 Sandisk Il Ltd. Flash memories with adaptive reference voltages
JP4433372B2 (ja) * 2003-06-18 2010-03-17 株式会社日立製作所 データアクセスシステム及び方法
US6988175B2 (en) * 2003-06-30 2006-01-17 M-Systems Flash Disk Pioneers Ltd. Flash memory management method that is resistant to data corruption by power loss
US7188228B1 (en) * 2003-10-01 2007-03-06 Sandisk Corporation Hybrid mapping implementation within a non-volatile memory system
US7012835B2 (en) * 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US7173852B2 (en) * 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
US7296144B2 (en) * 2003-11-24 2007-11-13 Sandisk Il Ltd. Method of traceless portable application execution
US7440286B2 (en) * 2005-04-21 2008-10-21 Super Talent Electronics, Inc. Extended USB dual-personality card reader
US7872873B2 (en) 2003-12-02 2011-01-18 Super Talent Electronics, Inc. Extended COB-USB with dual-personality contacts
US8102657B2 (en) 2003-12-02 2012-01-24 Super Talent Electronics, Inc. Single shot molding method for COB USB/EUSB devices with contact pad ribs
US8998620B2 (en) * 2003-12-02 2015-04-07 Super Talent Technology, Corp. Molding method for COB-EUSB devices and metal housing package
KR100608602B1 (ko) * 2003-12-10 2006-08-03 삼성전자주식회사 플래시 메모리, 이를 위한 사상 제어 장치 및 방법
US20050132178A1 (en) * 2003-12-12 2005-06-16 Sridhar Balasubramanian Removable flash backup for storage controllers
WO2005059854A2 (en) 2003-12-17 2005-06-30 Lexar Media, Inc. Electronic equipment point-of-sale activation to avoid theft
JP2005190036A (ja) 2003-12-25 2005-07-14 Hitachi Ltd 記憶制御装置及び記憶制御装置の制御方法
JP4463042B2 (ja) 2003-12-26 2010-05-12 株式会社日立製作所 ボリュームの動的割り付け機能を有する記憶装置システム
US7433993B2 (en) * 2003-12-30 2008-10-07 San Disk Corportion Adaptive metablocks
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US8504798B2 (en) * 2003-12-30 2013-08-06 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
US20050144363A1 (en) * 2003-12-30 2005-06-30 Sinclair Alan W. Data boundary management
US7383375B2 (en) * 2003-12-30 2008-06-03 Sandisk Corporation Data run programming
KR100526188B1 (ko) * 2003-12-30 2005-11-04 삼성전자주식회사 플래시 메모리의 주소 사상 방법, 사상 정보 관리 방법 및상기 방법을 이용한 플래시 메모리
US7631138B2 (en) * 2003-12-30 2009-12-08 Sandisk Corporation Adaptive mode switching of flash memory address mapping based on host usage characteristics
JP2008524759A (ja) * 2004-01-15 2008-07-10 サンディスク アイエル リミテッド ブックマーク付き着脱式メディア
EP1706869B3 (en) * 2004-01-19 2013-04-03 Trek 2000 International Ltd Portable data storage device using a memory address mapping table
US7869219B2 (en) * 2004-01-20 2011-01-11 Super Talent Electronics, Inc. Flash drive with spring-loaded retractable connector
US7177200B2 (en) * 2004-02-10 2007-02-13 Msystems Ltd. Two-phase programming of a flash memory
US8019928B2 (en) * 2004-02-15 2011-09-13 Sandisk Il Ltd. Method of managing a multi-bit-cell flash memory
US7716413B2 (en) * 2004-02-15 2010-05-11 Sandisk Il Ltd. Method of making a multi-bit-cell flash memory
EP2506486A1 (en) * 2004-02-23 2012-10-03 Lexar Media, Inc. Secure compact flash
CN1323358C (zh) * 2004-03-05 2007-06-27 中国科学院计算技术研究所 一种虚拟存储模型及其方法
US7310347B2 (en) * 2004-03-14 2007-12-18 Sandisk, Il Ltd. States encoding in multi-bit flash cells
US20050213393A1 (en) 2004-03-14 2005-09-29 M-Systems Flash Disk Pioneers, Ltd. States encoding in multi-bit flash cells for optimizing error rate
TWI254947B (en) * 2004-03-28 2006-05-11 Mediatek Inc Data managing method and data access system for storing all management data in a management bank of a non-volatile memory
US7725628B1 (en) 2004-04-20 2010-05-25 Lexar Media, Inc. Direct secondary device interface by a host
US7325090B2 (en) * 2004-04-29 2008-01-29 Sandisk Il Ltd. Refreshing data stored in a flash memory
TWI249670B (en) * 2004-04-29 2006-02-21 Mediatek Inc System and method capable of sequentially writing a flash memory
US7370166B1 (en) 2004-04-30 2008-05-06 Lexar Media, Inc. Secure portable storage device
US8352697B2 (en) * 2004-05-17 2013-01-08 Sandisk Il Ltd. Method of managing files for optimal performance
US7346401B2 (en) * 2004-05-25 2008-03-18 International Business Machines Corporation Systems and methods for providing constrained optimization using adaptive regulatory control
WO2005121968A2 (en) * 2004-06-07 2005-12-22 Wms Gaming Inc. Gaming device with resource swapping
US20060004951A1 (en) * 2004-06-30 2006-01-05 Rudelic John C Method and apparatus to alter code in a memory
US20080195817A1 (en) * 2004-07-08 2008-08-14 Super Talent Electronics, Inc. SD Flash Memory Card Manufacturing Using Rigid-Flex PCB
US7817469B2 (en) * 2004-07-26 2010-10-19 Sandisk Il Ltd. Drift compensation in a flash memory
US7957189B2 (en) * 2004-07-26 2011-06-07 Sandisk Il Ltd. Drift compensation in a flash memory
US8407396B2 (en) * 2004-07-30 2013-03-26 Hewlett-Packard Development Company, L.P. Providing block data access for an operating system using solid-state memory
US7386700B2 (en) * 2004-07-30 2008-06-10 Sandisk Il Ltd Virtual-to-physical address translation in a flash file system
US8275969B2 (en) * 2004-08-05 2012-09-25 Sandisk Il Ltd. Storage with persistent user data
US7594063B1 (en) * 2004-08-27 2009-09-22 Lexar Media, Inc. Storage capacity status
US7464306B1 (en) 2004-08-27 2008-12-09 Lexar Media, Inc. Status of overall health of nonvolatile memory
EP1797645B1 (en) * 2004-08-30 2018-08-01 Google LLC Systems and methods for providing nonvolatile memory management in wireless phones
US20060059296A1 (en) * 2004-09-16 2006-03-16 M-Systems Flash Disk Pioneers, Ltd. Emulating small block size of flash memory
US7164611B2 (en) 2004-10-26 2007-01-16 Micron Technology, Inc. Data retention kill function
US7496493B1 (en) * 2004-11-09 2009-02-24 Western Digital Technologies, Inc. External memory device to provide disk device and optical functionality
EP1672487A1 (en) * 2004-12-14 2006-06-21 Sony Ericsson Mobile Communications AB Method and means for an efficient memory usage
WO2006063941A2 (en) * 2004-12-14 2006-06-22 Sony Ericsson Mobile Communications Ab Method and means for an efficient memory usage
US7685400B2 (en) * 2004-12-15 2010-03-23 International Business Machines Corporation Storage of data blocks of logical volumes in a virtual disk storage subsystem
US7412560B2 (en) * 2004-12-16 2008-08-12 Sandisk Corporation Non-volatile memory and method with multi-stream updating
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7395404B2 (en) 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
US7386655B2 (en) * 2004-12-16 2008-06-10 Sandisk Corporation Non-volatile memory and method with improved indexing for scratch pad and update blocks
US7149111B2 (en) * 2004-12-17 2006-12-12 Msystems Ltd. Method of handling limitations on the order of writing to a non-volatile memory
US7246195B2 (en) * 2004-12-30 2007-07-17 Intel Corporation Data storage management for flash memory devices
DE102005001038B3 (de) * 2005-01-07 2006-05-04 Hyperstone Ag Verfahren zur Umsetzung von logischen in reale Blockadressen in Flashspeichern
US7308525B2 (en) * 2005-01-10 2007-12-11 Sandisk Il Ltd. Method of managing a multi-bit cell flash memory with improved reliablility and performance
US7426623B2 (en) * 2005-01-14 2008-09-16 Sandisk Il Ltd System and method for configuring flash memory partitions as super-units
US8341371B2 (en) * 2005-01-31 2012-12-25 Sandisk Il Ltd Method of managing copy operations in flash memories
US20060184719A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct data file storage implementation techniques in flash memories
US9104315B2 (en) * 2005-02-04 2015-08-11 Sandisk Technologies Inc. Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage
US20060184718A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct file data programming and deletion in flash memories
US7877539B2 (en) * 2005-02-16 2011-01-25 Sandisk Corporation Direct data file storage in flash memories
US8423788B2 (en) * 2005-02-07 2013-04-16 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8108691B2 (en) * 2005-02-07 2012-01-31 Sandisk Technologies Inc. Methods used in a secure memory card with life cycle phases
US8321686B2 (en) * 2005-02-07 2012-11-27 Sandisk Technologies Inc. Secure memory card with life cycle phases
EP1851771A2 (en) * 2005-02-11 2007-11-07 M-Systems Flash Disk Pioneers Ltd. Nand flash memory system architecture
US7224604B2 (en) * 2005-03-14 2007-05-29 Sandisk Il Ltd. Method of achieving wear leveling in flash memory using relative grades
US8522048B2 (en) * 2005-04-14 2013-08-27 Sandisk Il Ltd. Content delivery system
US7634494B2 (en) * 2005-05-03 2009-12-15 Intel Corporation Flash memory directory virtualization
US7275140B2 (en) * 2005-05-12 2007-09-25 Sandisk Il Ltd. Flash memory management method that is resistant to data corruption by power loss
US7334725B2 (en) * 2005-06-01 2008-02-26 San Disk Il Ltd. Flash memory device within a business card
US7389397B2 (en) * 2005-06-01 2008-06-17 Sandisk Il Ltd Method of storing control information in a large-page flash memory device
JP2006338371A (ja) 2005-06-02 2006-12-14 Toshiba Corp メモリシステム
KR100827227B1 (ko) * 2005-06-24 2008-05-07 삼성전자주식회사 저성능 저장장치의 drm 권리 객체를 효율적으로관리하는 방법 및 장치
US20070005929A1 (en) * 2005-06-30 2007-01-04 Post Daniel J Method, system, and article of manufacture for sector mapping in a flash device
US7743409B2 (en) * 2005-07-08 2010-06-22 Sandisk Corporation Methods used in a mass storage device with automated credentials loading
US8438647B2 (en) 2005-07-14 2013-05-07 Imation Corp. Recovery of encrypted data from a secure storage device
US8321953B2 (en) * 2005-07-14 2012-11-27 Imation Corp. Secure storage device with offline code entry
US8505075B2 (en) * 2005-07-14 2013-08-06 Marble Security, Inc. Enterprise device recovery
US8015606B1 (en) 2005-07-14 2011-09-06 Ironkey, Inc. Storage device with website trust indication
US8335920B2 (en) 2005-07-14 2012-12-18 Imation Corp. Recovery of data access for a locked secure storage device
US20070016721A1 (en) * 2005-07-18 2007-01-18 Wyse Technology Inc. Flash file system power-up by using sequential sector allocation
US7949845B2 (en) * 2005-08-03 2011-05-24 Sandisk Corporation Indexing of file data in reprogrammable non-volatile memories that directly store data files
US7627733B2 (en) * 2005-08-03 2009-12-01 Sandisk Corporation Method and system for dual mode access for storage devices
US7984084B2 (en) * 2005-08-03 2011-07-19 SanDisk Technologies, Inc. Non-volatile memory with scheduled reclaim operations
US7558906B2 (en) 2005-08-03 2009-07-07 Sandisk Corporation Methods of managing blocks in nonvolatile memory
US7669003B2 (en) * 2005-08-03 2010-02-23 Sandisk Corporation Reprogrammable non-volatile memory systems with indexing of directly stored data files
US7480766B2 (en) * 2005-08-03 2009-01-20 Sandisk Corporation Interfacing systems operating through a logical address space and on a direct data file basis
US7552271B2 (en) 2005-08-03 2009-06-23 Sandisk Corporation Nonvolatile memory with block management
KR100739722B1 (ko) * 2005-08-20 2007-07-13 삼성전자주식회사 플래시 메모리 관리 방법 및 플래시 메모리 시스템
US7571275B2 (en) * 2005-08-31 2009-08-04 Hamilton Sundstrand Corporation Flash real-time operating system for small embedded applications
US20070067620A1 (en) * 2005-09-06 2007-03-22 Ironkey, Inc. Systems and methods for third-party authentication
US7934049B2 (en) * 2005-09-14 2011-04-26 Sandisk Corporation Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory
US8855714B2 (en) 2005-09-14 2014-10-07 Sandisk Il Ltd. Removable media player for mobile phones
US8966284B2 (en) * 2005-09-14 2015-02-24 Sandisk Technologies Inc. Hardware driver integrity check of memory card controller firmware
US8291295B2 (en) * 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7631245B2 (en) 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
TWI298836B (en) * 2005-10-12 2008-07-11 Sunplus Technology Co Ltd Apparatus for controlling flash memory and method thereof
US7529905B2 (en) 2005-10-13 2009-05-05 Sandisk Corporation Method of storing transformed units of data in a memory system having fixed sized storage blocks
US7814262B2 (en) * 2005-10-13 2010-10-12 Sandisk Corporation Memory system storing transformed units of data in fixed sized storage blocks
US7681109B2 (en) * 2005-10-13 2010-03-16 Ramot At Tel Aviv University Ltd. Method of error correction in MBC flash memory
US7526715B2 (en) * 2005-10-17 2009-04-28 Ramot At Tel Aviv University Ltd. Probabilistic error correction in multi-bit-per-cell flash memory
US7631162B2 (en) 2005-10-27 2009-12-08 Sandisck Corporation Non-volatile memory with adaptive handling of data writes
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
ATE518190T1 (de) * 2005-12-09 2011-08-15 Sandisk Il Ltd Verfahren zur flash-speicher-verwaltung
US7877540B2 (en) * 2005-12-13 2011-01-25 Sandisk Corporation Logically-addressed file storage methods
US7747837B2 (en) 2005-12-21 2010-06-29 Sandisk Corporation Method and system for accessing non-volatile storage devices
US7769978B2 (en) * 2005-12-21 2010-08-03 Sandisk Corporation Method and system for accessing non-volatile storage devices
EP1966701A2 (en) * 2005-12-21 2008-09-10 Nxp B.V. Memory with block-erasable locations
US7793068B2 (en) * 2005-12-21 2010-09-07 Sandisk Corporation Dual mode access for non-volatile storage devices
US8266378B1 (en) 2005-12-22 2012-09-11 Imation Corp. Storage device with accessible partitions
US8639873B1 (en) 2005-12-22 2014-01-28 Imation Corp. Detachable storage device with RAM cache
KR100755700B1 (ko) * 2005-12-27 2007-09-05 삼성전자주식회사 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 그 관리방법
US20070147115A1 (en) * 2005-12-28 2007-06-28 Fong-Long Lin Unified memory and controller
US7519754B2 (en) 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
FR2895828B1 (fr) * 2006-01-03 2008-05-30 Thales Sa Procede de gestion de donnees destinees a etre ecrites et lues dans une memoire
US7512847B2 (en) * 2006-02-10 2009-03-31 Sandisk Il Ltd. Method for estimating and reporting the life expectancy of flash-disk memory
US8848442B2 (en) * 2006-03-06 2014-09-30 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
US7388781B2 (en) * 2006-03-06 2008-06-17 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
US8645793B2 (en) * 2008-06-03 2014-02-04 Marvell International Ltd. Statistical tracking for flash memory
US7823043B2 (en) * 2006-05-10 2010-10-26 Sandisk Il Ltd. Corruption-resistant data porting with multiple error correction schemes
US8042029B2 (en) * 2006-05-21 2011-10-18 Ramot At Tel Aviv University Ltd. Error correction decoding by trial and error
US7583545B2 (en) * 2006-05-21 2009-09-01 Sandisk Il Ltd Method of storing data in a multi-bit-cell flash memory
US7711890B2 (en) 2006-06-06 2010-05-04 Sandisk Il Ltd Cache control in a non-volatile memory device
US20070300031A1 (en) * 2006-06-22 2007-12-27 Ironkey, Inc. Memory data shredder
US8307148B2 (en) 2006-06-23 2012-11-06 Microsoft Corporation Flash management techniques
US7533328B2 (en) * 2006-07-04 2009-05-12 Sandisk Il, Ltd. Method of error correction in a multi-bit-per-cell flash memory
KR100764052B1 (ko) 2006-08-03 2007-10-08 삼성전자주식회사 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법
US20080046641A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US20080046630A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US20080052524A1 (en) * 2006-08-24 2008-02-28 Yoram Cedar Reader for one time password generating device
US20080072058A1 (en) * 2006-08-24 2008-03-20 Yoram Cedar Methods in a reader for one time password generating device
WO2008026466A1 (fr) * 2006-08-31 2008-03-06 Sharp Kabushiki Kaisha Système de fichiers
KR100802059B1 (ko) * 2006-09-06 2008-02-12 삼성전자주식회사 읽기 디스터브로 인한 배드 블록의 생성을 억제할 수 있는메모리 시스템 및 그것의 동작 방법
US7886204B2 (en) * 2006-09-27 2011-02-08 Sandisk Corporation Methods of cell population distribution assisted read margining
US7716538B2 (en) * 2006-09-27 2010-05-11 Sandisk Corporation Memory with cell population distribution assisted read margining
US7761626B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Methods for main memory in a system with a memory controller configured to control access to non-volatile memory, and related technologies
US9984012B2 (en) 2006-09-28 2018-05-29 Virident Systems, Llc Read writeable randomly accessible non-volatile memory modules
US7761623B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Main memory in a system with a memory controller configured to control access to non-volatile memory, and related technologies
US8949555B1 (en) 2007-08-30 2015-02-03 Virident Systems, Inc. Methods for sustained read and write performance with non-volatile memory
WO2008040028A2 (en) * 2006-09-28 2008-04-03 Virident Systems, Inc. Systems, methods, and apparatus with programmable memory control for heterogeneous main memory
US8074022B2 (en) * 2006-09-28 2011-12-06 Virident Systems, Inc. Programmable heterogeneous memory controllers for main memory with different memory modules
US7761624B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Systems and apparatus for main memory with non-volatile type memory modules, and related technologies
US20080082750A1 (en) * 2006-09-28 2008-04-03 Okin Kenneth A Methods of communicating to, memory modules in a memory channel
US7761625B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Methods for main memory with non-volatile type memory modules, and related technologies
KR100849221B1 (ko) 2006-10-19 2008-07-31 삼성전자주식회사 비휘발성 메모리의 관리 방법 및 비휘발성 메모리 기반의장치
KR100771519B1 (ko) * 2006-10-23 2007-10-30 삼성전자주식회사 플래시 메모리를 포함한 메모리 시스템 및 그것의 머지방법
WO2008051940A2 (en) 2006-10-23 2008-05-02 Virident Systems, Inc. Methods and apparatus of dual inline memory modules for flash memory
US7814263B2 (en) * 2006-10-26 2010-10-12 Sandisk Il Ltd. Erase history-based flash writing method
KR100789406B1 (ko) 2006-11-03 2007-12-28 삼성전자주식회사 플래시 메모리 시스템 및 그것의 가비지 컬렉션 방법
US7913055B2 (en) * 2006-11-04 2011-03-22 Virident Systems Inc. Seamless application access to hybrid main memory
KR100816761B1 (ko) * 2006-12-04 2008-03-25 삼성전자주식회사 낸드 플래시 메모리 및 에스램/노어 플래시 메모리를포함하는 메모리 카드 및 그것의 데이터 저장 방법
US8443134B2 (en) * 2006-12-06 2013-05-14 Fusion-Io, Inc. Apparatus, system, and method for graceful cache device degradation
CN101622594B (zh) * 2006-12-06 2013-03-13 弗森-艾奥公司 使用空数据令牌指令管理来自于请求设备的数据的装置、系统和方法
US8151082B2 (en) * 2007-12-06 2012-04-03 Fusion-Io, Inc. Apparatus, system, and method for converting a storage request into an append data storage command
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
US8161353B2 (en) 2007-12-06 2012-04-17 Fusion-Io, Inc. Apparatus, system, and method for validating that a correct data segment is read from a data storage device
US9104599B2 (en) 2007-12-06 2015-08-11 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for destaging cached data
US9495241B2 (en) 2006-12-06 2016-11-15 Longitude Enterprise Flash S.A.R.L. Systems and methods for adaptive data storage
US8706968B2 (en) * 2007-12-06 2014-04-22 Fusion-Io, Inc. Apparatus, system, and method for redundant write caching
US9116823B2 (en) 2006-12-06 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for adaptive error-correction coding
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
KR100845552B1 (ko) 2006-12-18 2008-07-10 (재)대구경북과학기술연구원 Ftl의 어드레스 매핑 방법
US7814401B2 (en) * 2006-12-21 2010-10-12 Ramot At Tel Aviv University Ltd. Soft decoding of hard and soft bits read from a flash memory
US8370561B2 (en) * 2006-12-24 2013-02-05 Sandisk Il Ltd. Randomizing for suppressing errors in a flash memory
US8127200B2 (en) * 2006-12-24 2012-02-28 Sandisk Il Ltd. Flash memory device and system with randomizing for suppressing errors
US8423794B2 (en) * 2006-12-28 2013-04-16 Sandisk Technologies Inc. Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications
US8885384B2 (en) 2007-01-11 2014-11-11 Chengdu Haicun Ip Technology Llc Mask-programmed read-only memory with reserved space
KR100885181B1 (ko) * 2007-02-06 2009-02-23 삼성전자주식회사 그룹 맵핑 동작을 수행하는 메모리 시스템 및 그것의어드레스 맵핑 방법
US7966355B2 (en) * 2007-02-13 2011-06-21 Modu Ltd. Interface for extending functionality of memory cards
US8370562B2 (en) * 2007-02-25 2013-02-05 Sandisk Il Ltd. Interruptible cache flushing in flash memory systems
US20080222349A1 (en) * 2007-03-07 2008-09-11 Ocz Technology Group Inc. Ieee 1394 interface-based flash drive using multilevel cell flash memory devices
CN100461134C (zh) * 2007-03-27 2009-02-11 华为技术有限公司 一种外部存储器控制器及基于外部存储器控制器的地址变换的方法
US7477547B2 (en) * 2007-03-28 2009-01-13 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
US7573773B2 (en) * 2007-03-28 2009-08-11 Sandisk Corporation Flash memory with data refresh triggered by controlled scrub data reads
JP4636046B2 (ja) * 2007-03-29 2011-02-23 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
US7808834B1 (en) 2007-04-13 2010-10-05 Marvell International Ltd. Incremental memory refresh
US8254134B2 (en) 2007-05-03 2012-08-28 Super Talent Electronics, Inc. Molded memory card with write protection switch assembly
US7689762B2 (en) * 2007-05-03 2010-03-30 Atmel Corporation Storage device wear leveling
US7850468B2 (en) 2007-06-28 2010-12-14 Super Talent Electronics, Inc. Lipstick-type USB device
US7789680B2 (en) * 2007-07-05 2010-09-07 Super Talent Electronics, Inc. USB device with connected cap
US8102658B2 (en) * 2007-07-05 2012-01-24 Super Talent Electronics, Inc. Micro-SD to secure digital adaptor card and manufacturing method
US8031526B1 (en) 2007-08-23 2011-10-04 Marvell International Ltd. Write pre-compensation for nonvolatile memory
US7944702B2 (en) 2007-08-27 2011-05-17 Super Talent Electronics, Inc. Press-push flash drive apparatus with metal tubular casing and snap-coupled plastic sleeve
US8189381B1 (en) 2007-08-28 2012-05-29 Marvell International Ltd. System and method for reading flash memory cells
US8085605B2 (en) 2007-08-29 2011-12-27 Marvell World Trade Ltd. Sequence detection for flash memory with inter-cell interference
US9921896B2 (en) 2007-08-30 2018-03-20 Virident Systems, Llc Shutdowns and data recovery to avoid read errors weak pages in a non-volatile memory system
JP4746598B2 (ja) * 2007-09-28 2011-08-10 株式会社東芝 半導体記憶装置
US7970983B2 (en) * 2007-10-14 2011-06-28 Sandisk Il Ltd. Identity-based flash management
US8024545B2 (en) 2007-10-19 2011-09-20 Inha-Industry Partnership Institute Efficient prefetching and asynchronous writing for flash memory
US8241047B2 (en) * 2007-10-30 2012-08-14 Super Talent Electronics, Inc. Flash drive with spring-loaded swivel connector
US20090138673A1 (en) * 2007-11-28 2009-05-28 Apple Inc. Internal memory mapped external memory interface
US8116083B2 (en) * 2007-12-04 2012-02-14 Super Talent Electronics, Inc. Lipstick-type USB device with tubular housing
US8195912B2 (en) * 2007-12-06 2012-06-05 Fusion-io, Inc Apparatus, system, and method for efficient mapping of virtual and physical addresses
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US8316277B2 (en) * 2007-12-06 2012-11-20 Fusion-Io, Inc. Apparatus, system, and method for ensuring data validity in a data storage process
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
US7934052B2 (en) 2007-12-27 2011-04-26 Pliant Technology, Inc. System and method for performing host initiated mass storage commands using a hierarchy of data structures
KR101386489B1 (ko) * 2008-01-14 2014-04-21 삼성전자주식회사 메모리 장치 및 멀티 비트 프로그래밍 방법
US8892831B2 (en) 2008-01-16 2014-11-18 Apple Inc. Memory subsystem hibernation
US20090198952A1 (en) 2008-02-04 2009-08-06 Apple Inc Memory Mapping Architecture
WO2009102821A2 (en) * 2008-02-12 2009-08-20 Virident Systems, Inc. Methods and apparatus for two-dimensional main memory
US8856464B2 (en) * 2008-02-12 2014-10-07 Virident Systems, Inc. Systems for two-dimensional main memory including memory modules with read-writeable non-volatile memory devices
KR101103110B1 (ko) 2008-02-29 2012-01-04 가부시끼가이샤 도시바 메모리 시스템
KR101437123B1 (ko) * 2008-04-01 2014-09-02 삼성전자 주식회사 메모리 시스템 및 그것의 마모도 관리 방법
WO2009124320A1 (en) * 2008-04-05 2009-10-08 Fusion Multisystems, Inc. Apparatus, system, and method for bad block remapping
US20100017558A1 (en) * 2008-04-11 2010-01-21 Richard Matthew Fruin Memory device operable in read-only and re-writable modes of operation
CA2629960C (en) * 2008-04-28 2009-12-08 Westport Power Inc. Apparatus and method for improving the accuracy of measurements taken with a capacitance-type sensor
KR20110050404A (ko) * 2008-05-16 2011-05-13 퓨전-아이오, 인크. 결함 있는 데이터 저장소를 검출하고 교체하는 장치, 시스템 및 프로그램 제품
JP2009282678A (ja) * 2008-05-21 2009-12-03 Hitachi Ltd フラッシュメモリモジュール及びストレージシステム
KR101497074B1 (ko) * 2008-06-17 2015-03-05 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 데이터 관리 방법
US9513695B2 (en) 2008-06-24 2016-12-06 Virident Systems, Inc. Methods of managing power in network computer systems
US8745314B1 (en) 2008-06-24 2014-06-03 Virident Systems, Inc. Methods for a random read and read/write block accessible memory
TWI370969B (en) 2008-07-09 2012-08-21 Phison Electronics Corp Data accessing method, and storage system and controller using the same
US8417902B2 (en) * 2008-08-05 2013-04-09 Atmel Corporation One-time-programmable memory emulation
JP4909963B2 (ja) * 2008-09-09 2012-04-04 株式会社東芝 統合メモリ管理装置
US7962801B2 (en) * 2008-10-15 2011-06-14 Silicon Motion, Inc. Link table recovery method
KR101510120B1 (ko) * 2008-11-21 2015-04-10 삼성전자주식회사 메모리 장치 및 메모리 장치의 관리 방법
US8316201B2 (en) * 2008-12-18 2012-11-20 Sandisk Il Ltd. Methods for executing a command to write data from a source location to a destination location in a memory device
US9612954B2 (en) * 2008-12-31 2017-04-04 Micron Technology, Inc. Recovery for non-volatile memory after power loss
US8589700B2 (en) * 2009-03-04 2013-11-19 Apple Inc. Data whitening for writing and reading data to and from a non-volatile memory
US20100228906A1 (en) * 2009-03-06 2010-09-09 Arunprasad Ramiya Mothilal Managing Data in a Non-Volatile Memory System
US8176295B2 (en) 2009-04-20 2012-05-08 Imation Corp. Logical-to-physical address translation for a removable data storage device
US8065469B2 (en) 2009-04-20 2011-11-22 Imation Corp. Static wear leveling
TWI457940B (zh) * 2009-05-15 2014-10-21 Macronix Int Co Ltd 區塊為基礎快閃記憶體之位元組存取
US8307258B2 (en) 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
US8281227B2 (en) 2009-05-18 2012-10-02 Fusion-10, Inc. Apparatus, system, and method to increase data integrity in a redundant storage system
US8516219B2 (en) 2009-07-24 2013-08-20 Apple Inc. Index cache tree
US8468293B2 (en) 2009-07-24 2013-06-18 Apple Inc. Restore index page
US8745365B2 (en) * 2009-08-06 2014-06-03 Imation Corp. Method and system for secure booting a computer by booting a first operating system from a secure peripheral device and launching a second operating system stored a secure area in the secure peripheral device on the first operating system
US8683088B2 (en) 2009-08-06 2014-03-25 Imation Corp. Peripheral device data integrity
US20110040924A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Detecting a Transmission Error Over a NAND Interface Using Error Detection Code
US20110041039A1 (en) * 2009-08-11 2011-02-17 Eliyahou Harari Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
US8612718B2 (en) * 2009-08-19 2013-12-17 Seagate Technology Llc Mapping alignment
US20110055471A1 (en) * 2009-08-28 2011-03-03 Jonathan Thatcher Apparatus, system, and method for improved data deduplication
US8688894B2 (en) * 2009-09-03 2014-04-01 Pioneer Chip Technology Ltd. Page based management of flash storage
WO2011031796A2 (en) 2009-09-08 2011-03-17 Fusion-Io, Inc. Apparatus, system, and method for caching data on a solid-state storage device
CN102598019B (zh) * 2009-09-09 2015-08-19 才智知识产权控股公司(2) 用于分配存储的设备、系统和方法
US8601222B2 (en) 2010-05-13 2013-12-03 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US9122579B2 (en) 2010-01-06 2015-09-01 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for a storage layer
US9223514B2 (en) 2009-09-09 2015-12-29 SanDisk Technologies, Inc. Erase suspend/resume for memory
CN102597910B (zh) 2009-09-09 2015-03-25 弗森-艾奥公司 存储设备中用于功率减小管理的装置、系统及方法
US8255655B2 (en) 2009-10-02 2012-08-28 Sandisk Technologies Inc. Authentication and securing of write-once, read-many (WORM) memory devices
US8489803B2 (en) * 2009-12-14 2013-07-16 Smsc Holdings S.A.R.L. Efficient use of flash memory in flash drives
US8595411B2 (en) 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
US8443263B2 (en) * 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US9396104B1 (en) 2010-03-22 2016-07-19 Seagate Technology, Llc Accessing compressed data of varying-sized quanta in non-volatile memory
US8416624B2 (en) 2010-05-21 2013-04-09 SanDisk Technologies, Inc. Erase and programming techniques to reduce the widening of state distributions in non-volatile memories
KR20120003283A (ko) * 2010-07-02 2012-01-10 삼성전자주식회사 데이터 저장 장치 및 그것의 배드 블록 관리 방법
WO2012016089A2 (en) 2010-07-28 2012-02-02 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US8725934B2 (en) 2011-12-22 2014-05-13 Fusion-Io, Inc. Methods and appratuses for atomic storage operations
US8984216B2 (en) 2010-09-09 2015-03-17 Fusion-Io, Llc Apparatus, system, and method for managing lifetime of a storage device
US8452914B2 (en) * 2010-11-26 2013-05-28 Htc Corporation Electronic devices with improved flash memory compatibility and methods corresponding thereto
EP2652623B1 (en) 2010-12-13 2018-08-01 SanDisk Technologies LLC Apparatus, system, and method for auto-commit memory
US10817421B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent data structures
US9208071B2 (en) 2010-12-13 2015-12-08 SanDisk Technologies, Inc. Apparatus, system, and method for accessing memory
US9218278B2 (en) 2010-12-13 2015-12-22 SanDisk Technologies, Inc. Auto-commit memory
US9047178B2 (en) 2010-12-13 2015-06-02 SanDisk Technologies, Inc. Auto-commit memory synchronization
US10817502B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent memory management
WO2012083308A2 (en) 2010-12-17 2012-06-21 Fusion-Io, Inc. Apparatus, system, and method for persistent data management on a non-volatile storage media
DE102010063773A1 (de) * 2010-12-21 2012-07-12 Endress + Hauser Wetzer Gmbh + Co. Kg Feldgerät mit einem semi-permanenten elektronischen Speicher und Verfahren zum Betreiben eines solchen Feldgerätes
WO2012100087A2 (en) 2011-01-19 2012-07-26 Fusion-Io, Inc. Apparatus, system, and method for managing out-of-service conditions
CN102609214A (zh) * 2011-01-21 2012-07-25 鸿富锦精密工业(深圳)有限公司 将biosrom模拟成磁盘的的系统及方法
US8966184B2 (en) 2011-01-31 2015-02-24 Intelligent Intellectual Property Holdings 2, LLC. Apparatus, system, and method for managing eviction of data
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US9201677B2 (en) 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US8874823B2 (en) 2011-02-15 2014-10-28 Intellectual Property Holdings 2 Llc Systems and methods for managing data input/output operations
WO2012116369A2 (en) 2011-02-25 2012-08-30 Fusion-Io, Inc. Apparatus, system, and method for managing contents of a cache
US9563555B2 (en) 2011-03-18 2017-02-07 Sandisk Technologies Llc Systems and methods for storage allocation
US8966191B2 (en) 2011-03-18 2015-02-24 Fusion-Io, Inc. Logical interface for contextual storage
JP2012203443A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリシステムおよびメモリシステムの制御方法
JP2012226822A (ja) 2011-04-15 2012-11-15 Samsung Electronics Co Ltd 不揮発性メモリ装置
US20120317377A1 (en) * 2011-06-09 2012-12-13 Alexander Palay Dual flash translation layer
TWI521343B (zh) * 2011-08-01 2016-02-11 Toshiba Kk An information processing device, a semiconductor memory device, and a semiconductor memory device
US8687421B2 (en) 2011-11-21 2014-04-01 Sandisk Technologies Inc. Scrub techniques for use with dynamic read
US9274937B2 (en) 2011-12-22 2016-03-01 Longitude Enterprise Flash S.A.R.L. Systems, methods, and interfaces for vector input/output operations
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US9251052B2 (en) 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
US10102117B2 (en) 2012-01-12 2018-10-16 Sandisk Technologies Llc Systems and methods for cache and storage device coordination
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10359972B2 (en) 2012-08-31 2019-07-23 Sandisk Technologies Llc Systems, methods, and interfaces for adaptive persistence
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
US8629689B1 (en) * 2012-05-18 2014-01-14 Altera Corporation Integrated circuit with improved interconnect routing and associated methods
US8972824B1 (en) 2012-05-22 2015-03-03 Pmc-Sierra, Inc. Systems and methods for transparently varying error correction code strength in a flash drive
US9021336B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for redundantly storing error correction codes in a flash drive with secondary parity information spread out across each page of a group of pages
US8793556B1 (en) 2012-05-22 2014-07-29 Pmc-Sierra, Inc. Systems and methods for reclaiming flash blocks of a flash drive
US8788910B1 (en) 2012-05-22 2014-07-22 Pmc-Sierra, Inc. Systems and methods for low latency, high reliability error correction in a flash drive
US9021337B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for adaptively selecting among different error correction coding schemes in a flash drive
US9183085B1 (en) 2012-05-22 2015-11-10 Pmc-Sierra, Inc. Systems and methods for adaptively selecting from among a plurality of error correction coding schemes in a flash drive for robustness and low latency
US8996957B1 (en) 2012-05-22 2015-03-31 Pmc-Sierra, Inc. Systems and methods for initializing regions of a flash drive having diverse error correction coding (ECC) schemes
US9047214B1 (en) 2012-05-22 2015-06-02 Pmc-Sierra, Inc. System and method for tolerating a failed page in a flash device
US9021333B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for recovering data from failed portions of a flash drive
US9176812B1 (en) 2012-05-22 2015-11-03 Pmc-Sierra, Inc. Systems and methods for storing data in page stripes of a flash drive
US20130326114A1 (en) * 2012-05-30 2013-12-05 Seagate Technology Llc Write mitigation through fast reject processing
US9128820B1 (en) 2012-06-18 2015-09-08 Western Digital Technologies, Inc. File management among different zones of storage media
KR102147359B1 (ko) 2012-06-29 2020-08-24 삼성전자 주식회사 비휘발성 메모리 장치의 관리 방법 및 비휘발성 메모리 장치
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
US9064575B2 (en) * 2012-08-03 2015-06-23 Micron Technology, Inc. Determining whether a memory cell state is in a valley between adjacent data states
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US10318495B2 (en) 2012-09-24 2019-06-11 Sandisk Technologies Llc Snapshots for a non-volatile device
US10509776B2 (en) 2012-09-24 2019-12-17 Sandisk Technologies Llc Time sequence data management
US9733907B2 (en) 2012-10-30 2017-08-15 Oracle International Corporation System and method for testing compiler implementation using dynamic combinatorial test generation
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9652376B2 (en) 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9478271B2 (en) * 2013-03-14 2016-10-25 Seagate Technology Llc Nonvolatile memory data recovery after power failure
US9009565B1 (en) 2013-03-15 2015-04-14 Pmc-Sierra, Inc. Systems and methods for mapping for solid-state memory
US9053012B1 (en) 2013-03-15 2015-06-09 Pmc-Sierra, Inc. Systems and methods for storing data for solid-state memory
US9026867B1 (en) 2013-03-15 2015-05-05 Pmc-Sierra, Inc. Systems and methods for adapting to changing characteristics of multi-level cells in solid-state memory
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
US9081701B1 (en) 2013-03-15 2015-07-14 Pmc-Sierra, Inc. Systems and methods for decoding data for solid-state memory
US9208018B1 (en) 2013-03-15 2015-12-08 Pmc-Sierra, Inc. Systems and methods for reclaiming memory for solid-state memory
US9558108B2 (en) 2013-04-15 2017-01-31 Macronix International Co., Ltd. Half block management for flash storage devices
US10558561B2 (en) 2013-04-16 2020-02-11 Sandisk Technologies Llc Systems and methods for storage metadata management
US10102144B2 (en) 2013-04-16 2018-10-16 Sandisk Technologies Llc Systems, methods and interfaces for data virtualization
CN103324553B (zh) * 2013-06-21 2016-08-24 华为技术有限公司 数据恢复方法、系统及装置
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9842128B2 (en) 2013-08-01 2017-12-12 Sandisk Technologies Llc Systems and methods for atomic storage operations
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US10019352B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for adaptive reserve storage
US10019320B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for distributed atomic storage operations
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US10073630B2 (en) 2013-11-08 2018-09-11 Sandisk Technologies Llc Systems and methods for log coordination
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
US9542118B1 (en) 2014-09-09 2017-01-10 Radian Memory Systems, Inc. Expositive flash memory control
US10552085B1 (en) 2014-09-09 2020-02-04 Radian Memory Systems, Inc. Techniques for directed data migration
US10114562B2 (en) 2014-09-16 2018-10-30 Sandisk Technologies Llc Adaptive block allocation in nonvolatile memory
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9627072B2 (en) 2014-11-25 2017-04-18 Macronix International Co., Ltd. Variant operation sequences for multibit memory
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US9946607B2 (en) 2015-03-04 2018-04-17 Sandisk Technologies Llc Systems and methods for storage error management
US10009438B2 (en) 2015-05-20 2018-06-26 Sandisk Technologies Llc Transaction log acceleration
US10185513B1 (en) 2015-06-05 2019-01-22 Life365, Inc. Device configured for dynamic software change
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
US10185666B2 (en) 2015-12-15 2019-01-22 Facebook, Inc. Item-wise simulation in a block cache where data eviction places data into comparable score in comparable section in the block cache
US20170168956A1 (en) * 2015-12-15 2017-06-15 Facebook, Inc. Block cache staging in content delivery network caching system
US10126962B2 (en) 2016-04-22 2018-11-13 Microsoft Technology Licensing, Llc Adapted block translation table (BTT)
US9817593B1 (en) 2016-07-11 2017-11-14 Sandisk Technologies Llc Block management in non-volatile memory system with non-blocking control sync system
US9881682B1 (en) 2016-11-23 2018-01-30 Seagate Technology Llc Fine grained data retention monitoring in solid state drives
CN108733576B (zh) * 2017-04-20 2022-12-09 得一微电子股份有限公司 一种固态硬盘及其内存转换层对映方法
US10318416B2 (en) * 2017-05-18 2019-06-11 Nxp B.V. Method and system for implementing a non-volatile counter using non-volatile memory
IT201700057287A1 (it) * 2017-05-26 2018-11-26 St Microelectronics Srl Procedimento per gestire schede a circuito integrato, scheda ed apparecchiatura corrispondenti
KR102521746B1 (ko) 2017-12-18 2023-04-13 에스케이하이닉스 주식회사 메모리 장치의 주소 맵핑을 관리하는 반도체 장치 및 이를 포함하는 데이터 저장 장치
KR20190120573A (ko) * 2018-04-16 2019-10-24 에스케이하이닉스 주식회사 메모리 시스템, 데이터 처리 시스템 및 메모리 시스템의 동작 방법
JP2021023748A (ja) * 2019-08-09 2021-02-22 株式会社島津製作所 X線透視撮影装置
TW202403560A (zh) * 2022-07-08 2024-01-16 瑞昱半導體股份有限公司 資料存取方法及資料存取系統

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4511964A (en) * 1982-11-12 1985-04-16 Hewlett-Packard Company Dynamic physical memory mapping and management of independent programming environments
JPH0271342A (ja) * 1988-09-07 1990-03-09 Oki Electric Ind Co Ltd メモリ管理装置
JPH0314042A (ja) * 1989-06-13 1991-01-22 Fujitsu Ltd データベースにおける資源管理方式
JPH04506720A (ja) * 1990-03-23 1992-11-19 イーストマン・コダック・カンパニー ディジタル・データ処理システムのための仮想メモリ管理及び割付け装置
US5193184A (en) * 1990-06-18 1993-03-09 Storage Technology Corporation Deleted data file space release system for a dynamically mapped virtual data storage subsystem
US5210866A (en) * 1990-09-12 1993-05-11 Storage Technology Corporation Incremental disk backup system for a dynamically mapped data storage subsystem
JP2584119B2 (ja) * 1990-09-28 1997-02-19 富士写真フイルム株式会社 メモリカードにおけるデータ記録方法およびメモリカードシステム
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
JP2582487B2 (ja) * 1991-07-12 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体メモリを用いた外部記憶システム及びその制御方法
JP3407317B2 (ja) * 1991-11-28 2003-05-19 株式会社日立製作所 フラッシュメモリを使用した記憶装置
JP3178909B2 (ja) * 1992-01-10 2001-06-25 株式会社東芝 半導体メモリ装置
JPH0695955A (ja) * 1992-09-09 1994-04-08 Ricoh Co Ltd フラッシュ・ファイル・システム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100421093C (zh) * 1997-06-04 2008-09-24 索尼公司 外部存储装置
US6839798B1 (en) 1998-12-14 2005-01-04 Renesas Technology Corp. Flash memory capable of storing frequently rewritten data
CN1300803C (zh) * 2000-10-11 2007-02-14 三星电子株式会社 闪速存储器中驱动再映射的方法及其闪速存储器体系结构
CN1322428C (zh) * 2001-06-04 2007-06-20 三星电子株式会社 闪速存储器管理方法
CN100424655C (zh) * 2001-11-16 2008-10-08 三星电子株式会社 快闪存储器管理方法
CN1329842C (zh) * 2002-10-28 2007-08-01 三因迪斯克公司 在非易失性存储器系统中执行块高速缓冲存储的方法和装置
CN1296833C (zh) * 2002-11-05 2007-01-24 松下电器产业株式会社 用于存储器管理的设备和方法
CN1722109B (zh) * 2004-06-30 2010-05-26 三星电子株式会社 增量归并方法和使用该方法的存储系统
CN101094183B (zh) * 2007-07-25 2011-12-07 杭州华三通信技术有限公司 一种缓存管理方法及装置
CN103713857A (zh) * 2013-12-24 2014-04-09 华为技术有限公司 存储数据的方法及存储装置
CN103713857B (zh) * 2013-12-24 2017-06-27 华为技术有限公司 存储数据的方法及存储装置
CN106547480A (zh) * 2015-09-17 2017-03-29 慧荣科技股份有限公司 数据储存装置及其数据读取方法
CN106547480B (zh) * 2015-09-17 2019-04-12 慧荣科技股份有限公司 数据储存装置及其数据读取方法

Also Published As

Publication number Publication date
KR100292011B1 (ko) 2001-09-17
DE69414556D1 (de) 1998-12-17
AU6269994A (en) 1994-09-26
DE69414556T2 (de) 1999-05-06
JPH08510072A (ja) 1996-10-22
EP0688450A4 (en) 1995-10-20
KR960701402A (ko) 1996-02-24
JP2003085037A (ja) 2003-03-20
FI954235A (fi) 1995-11-08
FI954235A0 (fi) 1995-09-08
IL108766A0 (en) 1994-05-30
WO1994020906A1 (en) 1994-09-15
US5404485A (en) 1995-04-04
JP3997130B2 (ja) 2007-10-24
TW264547B (zh) 1995-12-01
IL108766A (en) 1996-12-05
FI105726B (fi) 2000-09-29
EP0688450A1 (en) 1995-12-27
EP0688450B1 (en) 1998-11-11
ZA941446B (en) 1994-09-26
CN1078364C (zh) 2002-01-23

Similar Documents

Publication Publication Date Title
CN1078364C (zh) 存储器管理方法
CN100424655C (zh) 快闪存储器管理方法
KR100389867B1 (ko) 플래시 메모리 관리방법
CN1223945C (zh) 改进的闪速文件系统
EP0770959B1 (en) Flash translation layer clean-up method
EP0770960B1 (en) Flash translation layer block indication map revision method
US6587915B1 (en) Flash memory having data blocks, spare blocks, a map block and a header block and a method for controlling the same
US8041884B2 (en) Controller for non-volatile memories and methods of operating the memory controller
US7877569B2 (en) Reduction of fragmentation in nonvolatile memory using alternate address mapping
US7356641B2 (en) Data management in flash memory
EP0852765B1 (en) Memory management
US7287117B2 (en) Flash memory and mapping control apparatus and method for flash memory
US6839798B1 (en) Flash memory capable of storing frequently rewritten data
CN1351350A (zh) 闪存中存储块的分区及读写信息标识的方法
US20030046482A1 (en) Data management in flash memory
CN1542624A (zh) 一种在Flash文件系统中加快逻辑块映射速度的方法
KR100868674B1 (ko) 플래시메모리 관리방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: MILSYS LTD.

Free format text: FORMER NAME: M-SYSTEMS LTD.

CP03 Change of name, title or address

Address after: Israel Kfar Saba

Patentee after: Milsys Ltd.

Address before: Israel Tel Aviv

Patentee before: M-Systems Ltd.

C17 Cessation of patent right
CX01 Expiry of patent term

Expiration termination date: 20140308

Granted publication date: 20020123