CN1126037C - 用于具有限制删除频率的存储器的存取控制的方法 - Google Patents

用于具有限制删除频率的存储器的存取控制的方法 Download PDF

Info

Publication number
CN1126037C
CN1126037C CN98810919A CN98810919A CN1126037C CN 1126037 C CN1126037 C CN 1126037C CN 98810919 A CN98810919 A CN 98810919A CN 98810919 A CN98810919 A CN 98810919A CN 1126037 C CN1126037 C CN 1126037C
Authority
CN
China
Prior art keywords
useful
deletion
address
grade
memory block
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.)
Expired - Fee Related
Application number
CN98810919A
Other languages
English (en)
Other versions
CN1278934A (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.)
Hyperstone AG
Original Assignee
奥托·穆勒
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
Application filed by 奥托·穆勒 filed Critical 奥托·穆勒
Publication of CN1278934A publication Critical patent/CN1278934A/zh
Application granted granted Critical
Publication of CN1126037C publication Critical patent/CN1126037C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)

Abstract

在以块方式的具有限制删除频率的存储器的计算机中的存取控制方法,存储器包括可提供给用户存取的有用存储器块(NB0,NB1),借助于地址变换,此时地址变换是经过指示表格(AZTO)进行的和对应于每个地址指示(AP0,-AP1023)用表格保存了删除有用等级(LN0,-LN1023),各自当达到预先规定的删除状态判据时删除有用等级被提高,随后在指示表格(AZTO)中搜索其它的删除有用等级-登录(LN0,-LN1023),直到找到一个比较低的删除有用等级时,随后将相应的地址指示(AP0,-AP1023)与在输出指示位置(AP1)上的地址指示进行交换,和将各个对应于这些地址指示的有用存储器-块内容进行交换和,各自当完整的搜索过程以后没有找到比较低的删除有用等级时,中断搜索。

Description

用于具有限制删除频率 的存储器的存取控制的方法
本发明涉及到在一个以块方式用于具有限制删除频率的存储器借助于地址变换的存取控制方法,存储器包括有可提供用户存取的有效存储器块。
已经知道,具有限制删除频率的存储器由于单个存储器段具有完全不同的用途,为了比较好的充分利用其限制频繁使用,将具有限制删除频率的存储器分成为单个的可删除的存储器块,将这些存储器块借助于地址变换按照地址进行控制,此时当开始使用存储器时将很多备用块从地址中取出,这些备用块各自只有当目前使用的块完全被利用以后和不能再使用时逐步通过备用方式的地址装置投入运行。然而这种方法限制各自可提供使用的块数,并且在使用备用块以后留下很多或多或少被使用过但是没有完全利用的块。而且随着被废弃块数量的增加,检查是否某些地址可以用其它备用区代替,也变得复杂了。
此外已知,记录时间和/或删除时间与存储器的各个老化状态相对应。
本发明的任务是公开一种方法,在其中没有保留备用块和几乎毫无剩余地均衡地充分利用块的删除可能性。
解决方法是,经过指示表格进行地址变换和将对应于每个地址指示将删除有用等级用表格方式保存,当各自达到预先规定的删除状态判据时将删除有用等级提高,然后在指示表格中其它的删除有用等级-登录搜索与现实删除有用等级最小距离的比较低的删除有用等级,并且如果找到了这样的删除有用等级时,则将相应的地址指示和删除有用等级与在输出指示位置上的进行交换并且将对应于这些地址指示的有用存储-块内容同样进行交换。
因为不能将所有在开始时由于制造误差有缺陷的存储器块放入地址表格中,通过新的方法实际上所有可使用的存储器块几乎可以充分使用到其最大频繁删除界限;读取实际上可以不受限制;在新的内容记录之前必须被删除。当存储器块达到其可使用性的终点时,将存储器块与很少删除的被使用的地址相关,和相应的将更加很少删除的块与目前比较高频率的地址相关。用这种方法实际上绝对不会由于超负荷出现故障,并且非常明显的提高了系统可靠性。一开始有故障的块一般来说在0-2%之间和允许的删除循环频繁性例如为一百万。使用非直接选择地址一方面排除了使用一开始有故障的块并且此外确保了几乎无剩余的充分利用功能合格块的寿命容量。
为了解决由于删除过程出现的块的损耗,用存取程序进行工作,这个程序不仅在计算机启动时并且在每次删除过程时对单个块的损耗进行监控和转换地址和管理和保护地址表格。
按照各种删除状态判据,可以单独或者共同的使用这些判据,将在这之前被删除的有用存储器块的删除有用等级进行各自现实的登录。
使用各个有用存储器块的所有删除过程的模-计数作为第一个删除状态判据,因此在其中至少引入一个模计数器和在每次删除过程时被增量和在每次模运行时被使用于删除有用等级-登录的增量。
使用各自要求的记录时间和/或删除时间作为另外的删除状态判据。如果后面监控没有完全进行的记录或删除,这些记录时间和/或删除时间或者然后各自被提高,或者按照另外的与系统有关的老化曲线由存储器内部确定。
记录时间和/或删除时间愈长,则进行的删除有用等级-登录也愈高。在存储器内部产生记录时间以及产生删除时间时,各自在一个时间节拍计数器上求出时间周期,将其结束状态然后各自被利用作为删除状态判据。
此外考虑了这样的可识别的损耗现象,这种损耗现象导致了一种通过冗余可修复的数据读取故障,如果这些块在每次可修复故障情况下被定量地降一级。
保持地址数据和损耗数据是在存储器本身以及在存储器块上进行的,则最后保持到经过损耗过程的整个生命期,和不会在例如从一个计算机换成另外的计算机更换存储器时丢失或可能被去相关。
为了找到地址数据和损耗数据安排了固定块,这个固定块按照物理地址是第一个可使用的存储器块,并且借助于在其中存储的识别数是可以找到的。在这个固定块上安排用于程序编码的指示和具有到其它块的指示或必要时到其它区的指示表格,如果将块分成区时,以及到其为了安全性安排的副本。
将块地址指示以及区地址指示保存在为此安排的存储器块中。这些块指示以及区指示按照其本身的逻辑地址在那里用一个指示表格的形式存储。按照地址同步的在相同块的其它区里进行对应的删除有用等级-登录。整个块的复本用于安全性和如果正巧在新装入时电流中断可能出现不完整的内容时有可能进行改造。
将多个,例如16个区,例如512字节,综合成为一个共同准备删除的块认为指示表格的存储器费用是在严格的界限之内,则大约99.8%的功能块是可以使用的。
一般来说存储器是由很多存储器组件构成的,这些组件又包括有很多块。因此块指示是由芯片地址部分和块地址部分构成的,而芯片地址部分和块地址部分是组合在一起存储的。这些地址最好是以单元方式用两次方计算的二进制数存储。例如将256个块地址顺序存储在地址指示表格的一个区中和将四个这样的区一共1024个块地址并排排列在一起。
用户数据最好在块内的区中并且在其中以数据串方式分布。这些区最好连同一些备用字节有512字节的长度用于故障识别和故障修正的检查字节以及用于删除过程的模计数器。每个数据串可以有不同长度和一般包括有100和200之间的字节,在这些字节上各自附上四个检查字节,则二到四个数据串位于一个块中。
如果区被删除,综合检查例如Reed Solomon编码无效。检查电路通报一个相应的状态进入继续计算。当这个块的其它区新记录时被删除的但是没有安排新内容的区不允许记录;它们必须不能记录,以便有可能以后产生综合修正。
将存储器分成可以一同删除的块的优点是,例如为8千字节,管理工作比对块的单个区的处理有效,并且对管理存储器的需求非常小;大约为0.2%。为此需要的块指示包括各个芯片内部的芯片选择部分和块地址部分。
当将逻辑块地址翻译成物理块地址时是用第一个逻辑地址部分在固定块上选择表格,用表格中的内容控制相应的指示表格块,其中第二个逻辑地址部分选定地址指示表格中相应的区和第三个逻辑地址部分准备好区中的相应地址指示,用其芯片号码部分和块号码部分获悉有用存储器块的地址。
有利的是将至少最后使用的地址指示表格区和在计算机的管理存储器中的固定块取消,然后则如果进行连续选择地址时,各自在连续的存储器调入时立即使用区中的下一个地址指示,一直达到区结束。
有利的是将地址指示表格块各自分成对应于两次方的子单元数;从而由一个整个二进制建立的逻辑地址的单个比特组可以直接使用于选择地址。例如四个比特选定块中的区和八个比特选定区中的地址指示。其它的比特用于经过固定块上的表格选定指示块。
为了平衡单个用户块的损耗在每个区中引入例如2字节长的模-计数器,在每次删除过程之后将其内容提高一个一。在删除不同频繁使用的块之间的数据交换帧之后的块新记录时各自以区的方式将数据分成串和将其各自与被生成的ECC-编码,多余的故障修正编码、存储和为此模-计数器在这里计数。块的所有区具有相同的模-计数器水平,这在以后读取出现矛盾时作为冗余被使用在修复上。如果模通过时是关闭的即如果计数器内容出现零时,则进行检查。
如果例如当模为2的16次方-计数时,即在计数器中包括有两个字节时,一个过程是完整的,将附加在地址指示表格上的删除有用等级-表格调入和在相应表格区中的块的删除有用等级提高一个一。将新计算的删除有用等级,这最好作为一个二进制数存储在一个字节中,登录在删除有用表格中。随后它被检查,是否它与在删除等级表格中的最低等级有一个最小距离。必要时将地址指示与被找到的和现实登录的删除有用等级进行的交换,和将具有安全措施的相应有用存储器块内容中的有用信息进行的交换和以前一样进行记录。
用这种方法将重复频繁使用的逻辑地址各自重新从属于这样的物理的块,而这些物理块比目前从属的块是很少使用的。从而产生均衡的损耗。
寻找比较低的或最低登录的搜索过程进行的很快和很容易,因为准备比较的量最好被编码在唯一的字节中并且按顺序地存储在区中。从搜索中得到的位置地址,被确定比较低和最低的等级在那里,然后推导出对应块的逻辑地址。
第一次搜索在程序启动以后最好在地址指示块上开始,在其中存储着现实的准备提高的删除有用等级登录和现实的地址指示。每次搜索过程的结果作为索引固定保存在删除有用等级表格中,并且各个下一个搜索过程然后在下一个索引时开始。索引的增量产生现有块总数的模。删除地址指示表格块的数目远远比最大允许的删除数目低,这可以从块的指示数与安排的删除有用等级数的乘积中得出,这达到了小于两倍的删除数目。
在寻找损耗最小的块情况下,当接通计算机时在所谓的加速时搜索程序寻找代表最小损耗的登录时,并且将这个数值对于继续搜索过程作为比较数值持久保存在计算机存储器中。如果在以后的搜索过程中没有找到具有一个这样的删除有用等级的块时,则将最小的损耗等级提高并且使用在继续的搜索中。在这种特殊情况下不发生继续搜索,并且取消与其它存储器的内容交换。只提高其损耗等级登录。
此外关于有用存储器块质量的登录和平均使用有用存储器块的战略有利的补充如下,每次在这些块以及在其区上发现读取故障时,将这些通过借助于ECC-综合的自动故障修正或通过重新读取避免,同样可以使用损耗等级作为删除有用等级在表格中登录,从此则一个块逐渐被非常少地使用。所有的块这样继续均衡地损耗,并且不需要备用块,并且所有块的实际可使用性几乎可以使用到它们的寿命终结。
存储器寿命数目的终结可以如一般从统计经验中决定,然而删除过程数目的界限还允许在运行中与实际情况相匹配,如果还没有确认损耗现象时,特别是如果读取故障通过保持冗余只很少被发现。
一个特别的有争议的过程是改变地址指示块,因为此时可能产生故障,特别是如果此时出现电流中断。因此将每个地址指示块复制保存在存储器中和将两个块在改变以前进行比较,并且然后先后引入同样的内容。
在加速时将原始的和复制的进行比较,此时有必要识别在断开以前还没有被占满的块,并且随后借助于复本将其带入相同的状态。
如果原始块已经重新记录,而复制块在断开瞬间还没有被删除,则人们识别的是在比较高损耗等级-登录上的比较新的状态,并且从而也得到相应新的地址指示登录的指示。按照这个将复制块更新,并且将有用-存储器-瞬间内容进行交换。
附图1表示了存储器结构化的框图和存取路径。
在第一个存储器组件上的第一个可使用的块是固定块AB。这个在固定区中包括有识别数EZ,用于程序编码PK的指示ZP和表格PBT,这些包括地址指示表格AZTO、AZTD等原始块和复制块的各自成对的指示ZO1、ZD1、ZO2、ZD2。
包括地址指示表格AZTO、AZTD的区S0-S3,在其中并排存储了地址指示AP0、AP1-AP1023。
此外在S4、S5区中以紧凑的形式如同地址指示AP0、AP1…一样的顺序并排排列存储了删除有用等级LN0、LN1-LN1023。
地址指示AP0、AP1...表示各自在存储器芯片C1、C2上和其中的有用存储器块NB0、NB1上由于使用经历位于存储器中的分布,其中参考符号的数字代表逻辑块地址。
用其内部的区结构表示了有用存储器块NB0;有16个区,其中一个被称为SS区和在其中添满结构化的内容。
每个SS区包括长度为168以及176字节的三个数据串DS0-DS2,一共512字节,和此外各自有每个为4字节的综合修正PS0-PS2和具有2字节的模计数器存储器MC。
用二进制建立的逻辑地址LA的地址变换是用第一个逻辑地址段LA1在固定区AS的表格PBT中的指示位置上寻址。
第二个逻辑地址段LA2在相对于块开始中的一个区S0-S3中寻址。
第三个逻辑地址段LS3块定被选择区内的地址指示AP0-AP1023中的一个的位置。
当选择相应的删除有用等级-登录情况时第二个和第三个逻辑地址段的分布有些不同,其中第二个LA2*和第三个地址段LA3*各自缩短以及加长一个比特。
地址指示位置的或在表格AZT0上有用等级-登录位置的逆变换在相反方向毫无问题地进行。
数据变换连接和选定过程的作用连接是原理象征性地和只是现在,例如对于芯片选定、块选定和区选择,具体地在各个芯片上或在芯片卡上实现。+1加法器用删除信号L将模-计数器MC中的内容提高,和用于提高(+1)有用等级-登录的模-通过信号(=0)的路径在正巧与地址指示AP1并联的选定计数器LN1只能作为比喻和功能性地去理解。
放入计算机存储器中的复本COPY和与一个搜索过程SU同样如同地址指示表格的原始块AZTO和复制块AZTD一样各自在比较器(?=)中进行比较也抽象符号化。搜索过程SU和比较(?=)产生操作信号CD、CD1,将这些与程序部分PK进行处理并且产生相应的控制信号ST。

Claims (15)

1.在用块方式的具有限制删除频率的存储器的计算机上借助于地址变换的存取控制的方法,存储器包括有可提供给用户存取的有用存储器块(NB0,NB1),
其特征为,
经过指示表格(AZTO)进行地址变换和对应于每个地址指示(AP0,-AP1023)的删除有用等级(LN0,-LN1023)是以表格方式保存的,当删除有用等级各自达到预先规定的删除状态判据时被提高,随后在指示表格(ANTO)上其它的删除有用等级-登录(LN0,-LN1023…)用与现实的删除有用等级最短距离搜索最低的删除有用等级,并且如果找到这样的删除有用等级时,将相应的地址指示(AP0,-AP1023…)和删除有用等级与在输出指示位置(AP1)上的进行交换,并且将各自对应于这些地址指示的有用存储器-块内容同样进行交换,并且删除状态判据是这样构成的,如果在每个有用-存储器块(NB0)上除了引入有用数据字节(DS0,-DS2)和检查字节(PS0,-PS2)以外还引入模-删除过程计数器(MC),在每次删除过程(L)时将其内容现实化,并且在每次完整的模-通过时认为达到了删除状态判据。
2.按照权利要求1的方法,
其特征为,
有用存储器块(NR0,-NR1)/或在每次删除过程之后通过检查字节(PS0,-PS2)的检查读出以及处理检查过程的完整性和在要求情况下用-个比较长的记录时间或删除时间重复各个过程,然后将这些作为删除状态判据进行处理,其中用表格保存的删除有用等级-登录(LN0,-LN1023)被相应地提高。
3.按照权利要求2的方法,
其特征为,
用时间计数器求出各个记录时间或删除时间,并且将各个计数器结束状态处理为删除状态判据。
4.按照上述权利要求之一的方法,
其特征为,
将有用数据字节(DS0,-DS2)和检查字节(PS0,-PS2)为了读取故障修正存储在每个有用存储器块(NB0,-NB1)中,并且然后如果在读取有用存储器块(NB0,-NB1)时通过检查字节(PS0,-PS2)决定可以改造故障情况时,将这个作为删除状态判据处理,并且按照这个将相应的有用存储器块(NB0,-NB1)用表格保存的删除有用等级-登录(LN0,-LN1023)提高预先规定的等级数。
5.按照上述权利要求1到3之一的方法,
其特征为,
将指示表格(AZTO)中的地址指示(AP0,-AP1023)按照顺序对应于各个区(S0,-S3)分别放入在至少一个在区(S0,-S5)中分成的存储器块中,并且将各个对应于区地址指示的删除有用等级-登录(LN0,-LN1023)以相应的顺序安排存储在相同存储块的其它区(S4,S5)中。
6.按照上述权利要求1到3之一的方法,
其特征为,
指示表格(AZTO)以两倍方式保持存储和然后如果得出一个读取故障时,用复本(AZTD)将内容进行改造。
7.按照上述权利要求1到3之一的方法,
其特征为,
每个有用存储器块(NB0,NB1)被分成很多区(SS),和用块方式和区方式被分成的指示表格(AP0,-AP1023)和各自有一个与所有对应于块的区近似同步连续计数的模-删除过程计数器(MC)从属于有用存储器块(NB0,NB1)的每个区(SS),并且随时检查其近似同步运行和当计数器内容有偏差时将这个按照其它计数器(MC)的冗余内容重新恢复。
8.按照上述权利要求1到3之一的方法,
其特征为,
在接通程序运行时在指示表格(AZTO,AZTD,COPY)上的删除有用等级-登录(LN0,-LN1023)搜索现实最低的和将这个现实最低的存储在计算机内部的存储器中和在每次继续的搜索过程时将这个具有现实最低数值的存储器现实化。
9.按照上述权利要求1到3之一的方法,
其特征为,
在启动之后首次搜索在存储器块上的指示表格(AZTO,COPY)中的删除有用等级-登录(LN0,-LN1023)开始,在存储器块中保存了现实的地址指示(AP0,-AP1023),和将每次搜索过程的结果作为索引固定保存在删除有用等级表格中。
10.按照权利要求9的方法,
其特征为,
连续搜索过程在删除有用等级表格中各自从模的下一个索引开始和将现有总块数的模的索引进行增量。
11.按照上述权利要求1到3之一的方法,
其特征为,
将每个有用存储器块(NB0,NB11)分成16个区(SS),每个为512字节,并且在这些中存储了一个或多个有用数据串(DS0,DS1,DS2)与各自连接在其上的检查字节(PS0,-PS2)以及模-删除过程计数器(MC)。
12.按照上述权利要求1到3之一的方法,
其特征为,
有用存储器是由多个存储器组件(C1,C2)构成的并且作为地址指示(AP0,-AP1023)将存储器组件号码(C1,C2)和组件内部有效的块号码(NB1,NB2)组合在一起存储。
13.按照上述权利要求1到3之一的方法,
其特征为,
在第一个可使用的存储器块中安排了一个固定块(AB),在其上记录了识别数(EZ),在每次加速过程时搜索这个识别数,和将指示(ZP)存储在程序(PK)中用于执行本方法和存储了表格(PBT),其内容是给出原始指示表格(Z01,Z02)和指示表格-复本(ZD1,ZD2)的位置。
14.按照权利要求13的方法,
其特征为,
将表格(PBT)从固定块(AB)中复制到计算机内部存储器中并且在那里同步保存。
15.按照上述权利要求1到3之一的方法,
其特征为,
至少指示表格(AZTO)最后使用的区(S0,-S5),在内部管理存储器中附加作为复本(COPY)保存并且在那里进行程序处理。
CN98810919A 1998-09-04 1998-12-31 用于具有限制删除频率的存储器的存取控制的方法 Expired - Fee Related CN1126037C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19840389 1998-09-04
DE19840389.5 1998-09-04

Publications (2)

Publication Number Publication Date
CN1278934A CN1278934A (zh) 2001-01-03
CN1126037C true CN1126037C (zh) 2003-10-29

Family

ID=7879831

Family Applications (1)

Application Number Title Priority Date Filing Date
CN98810919A Expired - Fee Related CN1126037C (zh) 1998-09-04 1998-12-31 用于具有限制删除频率的存储器的存取控制的方法

Country Status (9)

Country Link
US (1) US6694402B1 (zh)
EP (1) EP1027653B1 (zh)
JP (1) JP2002524796A (zh)
KR (1) KR100533140B1 (zh)
CN (1) CN1126037C (zh)
DE (1) DE59811962D1 (zh)
HK (1) HK1033702A1 (zh)
TW (1) TW413820B (zh)
WO (1) WO2000014641A1 (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10127179A1 (de) * 2001-06-05 2002-12-19 Infineon Technologies Ag Verfahren zur Verwaltung eines Speichers einer Chipkarte
DE10256509B4 (de) * 2002-06-19 2008-06-12 Hyperstone Gmbh Verfahren zum Adressieren von blockweise löschbaren Speichern
US7096313B1 (en) 2002-10-28 2006-08-22 Sandisk Corporation Tracking the least frequently erased blocks in non-volatile memory systems
US6831865B2 (en) 2002-10-28 2004-12-14 Sandisk Corporation Maintaining erase counts in non-volatile storage systems
US7035967B2 (en) 2002-10-28 2006-04-25 Sandisk Corporation Maintaining an average erase count in a non-volatile storage system
US7103732B1 (en) * 2002-10-28 2006-09-05 Sandisk Corporation Method and apparatus for managing an erase count block
US7032087B1 (en) 2003-10-28 2006-04-18 Sandisk Corporation Erase count differential table within a non-volatile memory system
JP2006039966A (ja) * 2004-07-27 2006-02-09 Toshiba Corp メモリカードおよびメモリカードに搭載されるカード用コントローラ並びにメモリカードの処理装置
US7904619B2 (en) 2006-11-24 2011-03-08 Sandforce, Inc. System, method, and computer program product for reducing memory write operations using difference information
US7904764B2 (en) * 2006-11-24 2011-03-08 Sandforce, Inc. Memory lifetime gauging system, method and computer program product
US20080126685A1 (en) * 2006-11-24 2008-05-29 Radoslav Danilak System, method, and computer program product for reducing memory write operations using an instruction set
US7747813B2 (en) * 2006-11-24 2010-06-29 Sandforce, Inc. Multi-memory device system and method for managing a lifetime thereof
US7809900B2 (en) * 2006-11-24 2010-10-05 Sandforce, Inc. System, method, and computer program product for delaying an operation that reduces a lifetime of memory
US7904672B2 (en) 2006-12-08 2011-03-08 Sandforce, Inc. System and method for providing data redundancy after reducing memory writes
US8090980B2 (en) * 2006-12-08 2012-01-03 Sandforce, Inc. System, method, and computer program product for providing data redundancy in a plurality of storage devices
US7515500B2 (en) * 2006-12-20 2009-04-07 Nokia Corporation Memory device performance enhancement through pre-erase mechanism
US7731365B2 (en) * 2007-03-19 2010-06-08 Johnson&Johnson Vision Care, Inc. Method of fitting contact lenses
US7903486B2 (en) 2007-11-19 2011-03-08 Sandforce, Inc. System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory
US7849275B2 (en) 2007-11-19 2010-12-07 Sandforce, Inc. System, method and a computer program product for writing data to different storage devices based on write frequency
US9183133B2 (en) 2007-11-28 2015-11-10 Seagate Technology Llc System, method, and computer program product for increasing spare space in memory to extend a lifetime of the memory
US20100017588A1 (en) * 2008-07-15 2010-01-21 Radoslav Danilak System, method, and computer program product for providing an extended capability to a system
US20100017566A1 (en) * 2008-07-15 2010-01-21 Radoslav Danilak System, method, and computer program product for interfacing computing device hardware of a computing device and an operating system utilizing a virtualization layer
US20100064093A1 (en) * 2008-09-09 2010-03-11 Radoslav Danilak System, method, and computer program product for converting data in a binary representation to a non-power of two representation
TWI364661B (en) * 2008-09-25 2012-05-21 Silicon Motion Inc Access methods for a flash memory and memory devices
US20100146236A1 (en) * 2008-12-08 2010-06-10 Radoslav Danilak System, method, and computer program product for rendering at least a portion of data useless in immediate response to a delete command
US8276042B2 (en) 2009-02-03 2012-09-25 Micron Technology, Inc. Determining sector status in a memory device
US20100199020A1 (en) * 2009-02-04 2010-08-05 Silicon Storage Technology, Inc. Non-volatile memory subsystem and a memory controller therefor
US20100250830A1 (en) * 2009-03-27 2010-09-30 Ross John Stenfort System, method, and computer program product for hardening data stored on a solid state disk
US8671258B2 (en) 2009-03-27 2014-03-11 Lsi Corporation Storage system logical block address de-allocation management
US8230159B2 (en) 2009-03-27 2012-07-24 Lsi Corporation System, method, and computer program product for sending logical block address de-allocation status information
US8090905B2 (en) * 2009-03-27 2012-01-03 Sandforce, Inc. System, method, and computer program product for converting logical block address de-allocation information in a first format to a second format
US20110004718A1 (en) * 2009-07-02 2011-01-06 Ross John Stenfort System, method, and computer program product for ordering a plurality of write commands associated with a storage device
US9792074B2 (en) * 2009-07-06 2017-10-17 Seagate Technology Llc System, method, and computer program product for interfacing one or more storage devices with a plurality of bridge chips
US8140712B2 (en) * 2009-07-17 2012-03-20 Sandforce, Inc. System, method, and computer program product for inserting a gap in information sent from a drive to a host device
US8516166B2 (en) * 2009-07-20 2013-08-20 Lsi Corporation System, method, and computer program product for reducing a rate of data transfer to at least a portion of memory
US8108737B2 (en) * 2009-10-05 2012-01-31 Sandforce, Inc. System, method, and computer program product for sending failure information from a serial ATA (SATA) solid state drive (SSD) to a host device
WO2012095901A1 (ja) * 2011-01-12 2012-07-19 パナソニック株式会社 プログラム実行装置およびコンパイラシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230233B1 (en) * 1991-09-13 2001-05-08 Sandisk Corporation Wear leveling techniques for flash EEPROM systems
JP3178909B2 (ja) * 1992-01-10 2001-06-25 株式会社東芝 半導体メモリ装置
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
US5606660A (en) 1994-10-21 1997-02-25 Lexar Microsystems, Inc. Method and apparatus for combining controller firmware storage and controller logic in a mass storage system
US5845313A (en) 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
US5907856A (en) 1995-07-31 1999-05-25 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
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
DE69627176T2 (de) 1995-11-13 2004-02-05 Lexar Media, Inc., Fremont Aut0matische spannungsdetektion in anwendungen mit mehreren spannungen
US6000006A (en) * 1997-08-25 1999-12-07 Bit Microsystems, Inc. Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage
KR100297986B1 (ko) * 1998-03-13 2001-10-25 김영환 플래쉬 메모리 셀 어레이의 웨어 레벨링 시스템 및 웨어 레벨링 방법

Also Published As

Publication number Publication date
KR20010031230A (ko) 2001-04-16
TW413820B (en) 2000-12-01
EP1027653B1 (de) 2004-09-15
EP1027653A1 (de) 2000-08-16
WO2000014641A1 (de) 2000-03-16
CN1278934A (zh) 2001-01-03
JP2002524796A (ja) 2002-08-06
US6694402B1 (en) 2004-02-17
KR100533140B1 (ko) 2005-12-02
HK1033702A1 (en) 2001-09-14
DE59811962D1 (de) 2004-10-21

Similar Documents

Publication Publication Date Title
CN1126037C (zh) 用于具有限制删除频率的存储器的存取控制的方法
US6185653B1 (en) System and method for disk mapping and data retrieval
KR100382395B1 (ko) 컴퓨터메모리에정보를기억하는방법및장치
EP0072413B1 (en) A storage subsystem with hashed cache addressing
US6671694B2 (en) System for and method of cache-efficient digital tree with rich pointers
US7809921B2 (en) Method and apparatus for translating a virtual address to a real address using blocks of contiguous page table entries
KR100308173B1 (ko) 부분불량메모리를탑재한반도체기억장치
CN102792285B (zh) 用于处理数据的装置和方法
US7240178B2 (en) Non-volatile memory and non-volatile memory data rewriting method
EP0610618B1 (en) Method and apparatus for address translation
EP0149389B1 (en) Address translation control system
EP0660531A2 (en) Method and apparatus for compressing data
US6430672B1 (en) Method for performing address mapping using two lookup tables
CN104331269A (zh) 一种嵌入式系统可执行代码压缩方法及代码解压缩系统
CN101510176B (zh) 通用操作系统对cpu二级缓存访问的控制方法
KR880000361B1 (ko) 콤퓨터 시스템
CN111832065A (zh) 使用电路实现的软件和用于密钥-值存储的方法
EP0032956B1 (en) Data processing system utilizing hierarchical memory
KR20160140381A (ko) 가변 레이트 텍스처 압축을 수행하는 방법 및 압축기
CN111966281B (zh) 数据储存装置与数据处理方法
CN114356647B (zh) 一种eps系统数据编码及存储方法
EP0675443A1 (en) Apparatus and method for accessing direct mapped cache
KR970071286A (ko) 고성능 데이터 처리 시스템에서 4-웨이 최소 최근 사용 메카니즘의 구현 방법과 이를 포함한 캐시 메모리
CN114003169B (zh) 一种用于ssd的数据压缩方法
US7676651B2 (en) Micro controller for decompressing and compressing variable length codes via a compressed code dictionary

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
ASS Succession or assignment of patent right

Owner name: HYPERSTONE AG

Free format text: FORMER OWNER: OTTO MULER

Effective date: 20040305

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20040305

Address after: Konstanz

Patentee after: Hyperstone AG

Address before: Konstanz

Patentee before: Otto Muler

C56 Change in the name or address of the patentee

Owner name: HYPERSTONE CO., LTD.

Free format text: FORMER NAME OR ADDRESS: HYPERSTONE AG

CP01 Change in the name or title of a patent holder

Address after: Konstanz

Patentee after: Hyperstone AG

Address before: Konstanz

Patentee before: Hyperstone AG

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20031029

Termination date: 20100201