CN101458956A - 存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法 - Google Patents

存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法 Download PDF

Info

Publication number
CN101458956A
CN101458956A CNA2008101099682A CN200810109968A CN101458956A CN 101458956 A CN101458956 A CN 101458956A CN A2008101099682 A CNA2008101099682 A CN A2008101099682A CN 200810109968 A CN200810109968 A CN 200810109968A CN 101458956 A CN101458956 A CN 101458956A
Authority
CN
China
Prior art keywords
block
purge
spare
blocks
flash memory
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
CNA2008101099682A
Other languages
English (en)
Other versions
CN101458956B (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.)
Silicon Motion Inc
Original Assignee
Silicon Motion Inc
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 Silicon Motion Inc filed Critical Silicon Motion Inc
Publication of CN101458956A publication Critical patent/CN101458956A/zh
Application granted granted Critical
Publication of CN101458956B publication Critical patent/CN101458956B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • 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)

Abstract

本发明提供一种存取一快闪存储器的装置及方法、及平均地使用该快闪存储器的区块的方法。该存储器装置包含一快闪存储器及一控制器。该快闪存储器包含一具有多个数据区块的数据区以及一具有多个备用区块的备用区。该控制器接收对应于一第一数据区块的一数据并选择一备用区块,当对应于该被选择的备用区块的一清除次数少于一默认值时,该控制器写入该数据至该被选择的备用区块;当对应于该被选择的备用区块的清除次数达到该默认值时,该控制器选择一第二数据区块并将储存于该第二数据区块的一数据写入至该被选择的备用区块。据此,平均地使用该快闪存储器的区块。

Description

存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法
技术领域
本发明是关于一种存取一快闪存储器(flash memory)及方法、及平均地使用该快闪存储器的区块的方法。
背景技术
近年来,诸如SD/MMC、CF、MS、XD卡等可携式存储器装置被广泛地用于诸多应用中。图1是绘示现有存储器装置的方块图。存储器装置10包含一存储器控制器11与一非挥发性快闪存储器12。存储器控制器11包含一界面逻辑110、一挥发性缓冲存储器112、一控制逻辑114以及一微处理器116,其中界面逻辑110用以与一主机(图未绘示)传输数据,挥发性缓冲存储器112则用以暂时储存正写入或正读取自非挥发性快闪存储器12的数据。这些电路单元110、112、114及116相互连接并受控于微处理器116。非挥发性快闪存储器12包含多个单元(标记为区块)以及只有于清除之后方能直接覆写的数据区块(标记为被写入区块)。换言的,只有空区块可被写入。
然而,快闪存储器12的各该区块只能被清除一定次数,此称为耐久次数(endurance times)。举例而言,一个区块只能被清除几万次,此后便无法再被进一步清除,使该区块不再可用。当快闪存储器12具有无法被清除的区块时,无论其是否存在任何其它可被清除的区块,都仅能被读取或者无法使用。一般而言,单级单元(single-level-cell)快闪存储器的区块可被清除十万次,而多级单元(multi-level-cell)快闪存储器的区块只能被清除一万次。
图2是绘示一用以将逻辑地址链接至实体地址的链接表20。链接表20可被储存于缓冲存储器112或控制逻辑114中。链接表20表示由主机所传送逻辑地址与快闪存储器12的各区块的实体地址之间的关系。链接表20包含对应于快闪存储器12中各该区块的清除次数。清除次数是表示区块已被清除或重新写入的次数。而对应于各该区块的清除次数是预设为0。
图3A~图3D是绘示现有平均抹写(wear-leveling)方法的示意图。于图3A中,假定快闪存储器12于区块0、区块1、区块2、区块3及区块4中具有数据,且一新数据有待写入或写入至快闪存储器12内以取代区块1的陈旧数据。首先清除区块1。使对应于区块1的清除次数递增1,并随后将新数据写入区块1中。而如图3B所示,储存于快闪存储器12的区块1中的数据发生变化,且区块1的清除次数变为“1”。如图3C中所示,应了解,当快闪存储器被长时间重新写入/存取之后,对应于频繁使用的区块的清除次数会比较大。例如,区块0的清除次数是500,区块1的清除次数是1000,区块2的清除次数是360,区块3的清除次数是410,区块4的清除次数是230等等。区块1的清除次数较大,是肇因于储存在区块1中的数据经常得到更新。清除次数较大亦意味着区块1中的数据是较热门数据。一旦新数据再次被写入于区块1中的逻辑地址(LA1)且区块1的清除次数已达到一默认值(例如1000),便可通过搜最小清除次数而选择含有冷门数据的不常使用的区块4,以与区块1进行交换。首先,自区块4中读取不常使用的区块4中的冷门数据,并将其暂时储存于缓冲存储器112中,随后于区块1被清除后重新写入于区块4中。接着,于区块4亦被清除后,将新数据重新写入至区块4中。再接着,如图3D中所示,于查找表20中重新链接LA1、LA4、区块0及区块4间的关系。应注意,于交换之后,对应于区块1及区块4的清除次数亦递增1。借此,将对应于LA1的热门数据引导并写入至清除次数较小的区块4中,以防止区块1故障或失效。
然而,前段所述现有的平均抹写方法具有数种缺点。首先,所有区块的清除次数皆为绝对值,当运作平均抹写方法时将其记录于缓冲存储器12中需要使用许多位,且于将“空位(blank)”记录回存至快闪存储器12时,亦需要占用快闪存储器12的容量。第二,比较及搜寻清除次数较小的区块会极大地影响效能。第三,其代价是使清除次数最小的区块(即区块4)会被清除一次或多次。最重要的是,现有的平均抹写方法是一种粗糙的方法,无法充分利用每一区块。
因此,于存储器行业中需要一种用以管控快闪存储器的区块,使其的使用并更平均、充分、有效且低成本地利用区块的方式。
发明内容
本发明提供一种用以存取一快闪存储器(flash memory)的方法。该快闪存储器划分为一数据区以及一备用区。该数据区包含多个数据区块,该备用区包含多个备用区块。该方法包含下列步骤:接收对应于一第一逻辑地址的数据;于该备用区中选择一备用区块;将该数据写入至该被选择的备用区块;以及将该被选择的备用区块的一实体地址链接至该第一逻辑地址。
本发明亦提供一种用以平均地使用一快闪存储器的区块的方法。该快闪存储器包含一数据区以及一备用区。该数据区包含多个数据区块,该备用区包含多个备用区块。该方法包含下列步骤:接收对应于一第一数据区块的数据;于该备用区中选择位于该备用区的一顶端序列的一备用区块;当对应于该被选择的备用区块的一清除次数达到一默认值时,选择一第二数据区块;将储存于该第二数据区块的一数据写入至该被选择的备用区块;以及重新映像该第二数据区块以及该被选择的备用区块。
本发明还提供一种存储器装置,其包含一快闪存储器及一控制器。该快闪存储器包含一具有多个数据区块的数据区以及一具有多个备用区块的备用区。该控制器用以接收对应于一第一数据区块的数据并选择一备用区块,其中当对应于该被选择的备用区块的一清除次数少于一默认值时,该控制器写入该数据至该被选择的备用区块;当对应于该被选择的备用区块的清除次数达到该默认值时,则该控制器选择一第二数据区块并将储存于该第二数据区块的一数据写入至该被选择的备用区块,借以平均地使用该快闪存储器的区块。
通过利用此种配置,本发明能够平均地使用一快闪存储器的区块,例如数据区块及备用区块。借此,可提高快闪存储器的寿命,以较低的成本管控快闪存储器的数据区块及备用区块,并增强快闪存储器的存取效能。
附图说明
在参阅附图及随后描述的实施方式后,此技术领域具有通常知识者便可清楚了解本发明的目的、特点和优点,以及本发明的技术手段及实施态样,其中:
图1是现有存储器装置的方块图;
图2是用以将逻辑地址链接至实体地址的查找表;
图3A~图3D是现有的平均抹写方法的示意图;
图4是本发明的存储器装置;
图5是本发明的数据区块及备用区块的映像表;
图6A~图6D是本发明的非挥发性快闪存储器的存取示意图;
图7是本发明的快闪存储器存取方法的流程图;以及
图8是图7的步骤S714中选择第二数据区块的方法的流程图。
具体实施方式
以下将更详细地说明本发明的一种用以存取快闪存储器的方法、一种用以平均使用一快闪存储器的区块的方法以及一种存储器装置。
图4是绘示本发明的一存储器装置的方块图。存储器装置40包含一存储器控制器41及一非挥发性快闪存储器42。存储器控制器41包含一界面逻辑410、一挥发性缓冲存储器412、一微处理器416及一控制逻辑414,其中界面逻辑410用以与一主机(图未绘示)传输数据,挥发性缓冲存储器412则用以暂时储存正写入至或正读取自非挥发性快闪存储器42的数据。这些电路单元410、412、414及416相互连接且受控于微处理器416。非挥发性快闪存储器42被划分成数据区422及备用区424。数据区422包含多个数据区块,备用区424则包含多个备用区块。举例而言,数据区包含“k”个数据区块,备用区包含“(N-k)”个备用区块。
图5则绘示本发明的数据区块及备用区块的映像表。该数据区块映像表包含逻辑地址列502、实体地址列504及清除次数列506。该备用区块映像表则包含实体地址列524及清除次数列526。于初始情形中,逻辑地址LA 0是链接至实体地址区块0,逻辑地址LA 1是链接至实体地址区块1,逻辑地址LA 2是连接至实体地址区块2,依此类推。对应于备用区块的许多实体地址则不链接至逻辑地址。此外,对应于各该区块的清除次数为0。
图6A~图6D绘示本发明的非挥发性快闪存储器的存取示意图。于图6A中,数据区422的各该数据区块皆填充有数据,而各该备用区块则为空的(即没有填充数据)。一方面,逻辑地址LA 0链接至清除次数为50的实体区块0,LA 1链接至清除次数为70的区块1,LA 2链接至清除次数为100的区块2,依此类推。另一方面,备用区块映像表52显示实体区块“k”的清除次数为100,实体区块(k+1)的清除次数为200,实体区块(k+2)的清除次数为400,亦依此类推。
当由一主机(图未绘示)传送逻辑地址为LA 1的数据时,存储器控制器41暂时储存该数据于缓冲存储器412中,并随后于备用区424中选择一用以写入/储存数据的备用区块。于一实施态样中,当备用区块的清除次数少于一默认值(例如400)时,该备用区块是排位于备用区424的顶端序列中。换言之,因该备用区块的清除次数100小于400,故该备用区块的实体地址是区块“k”。接着,控制器41相应地重新映像实体地址区块1的数据区块与实体地址区块“k”的备用区块之间的关系。亦即,控制器41将逻辑地址LA 1链接至实体地址区块“k”。于另一实施态样中,则可清除对应于实体地址区块1的数据区块,并回收该数据区块至备用区424的一尾端序列。如图6B中所绘示的数据区422包含一对应于实体地址区块“k”的区块,备用区424包含一对应于实体地址区块“1”的区块。亦应注意的是,LA 1于映像表50中是与区块“k”相链接,且清除次数为71的实体地址区块“1”被记录至映像表52中。
接着,由一主机(图未绘示)传送逻辑地址为LA 2的新数据,存储器控制器41暂时储存该新数据于缓冲存储器412中,并接着于备用区424中选择一备用区块,以于其中写入/储存数据。于一实施态样中,该备用区块是位于备用区424的顶端序列中。换言之,当该备用区块的清除次数少于默认值(例如400)时,该备用区块的实体地址是区块(k+1)。接着,存储器控制器41相应地重新映像实体地址区块2的数据区块与实体地址区块“k+1”的备用区块之间的关系。亦即,控制器41将逻辑地址LA 2链接至实体地址区块(k+1)。于另一实施态样中,则可清除对应于实体地址区块2的数据区块,并回收该数据区块至备用区424的尾端序列中。如图6C中所绘示的数据区422包含一对应于实体地址区块(k+1)的区块,备用区424包含一对应于实体地址区块2的区块。亦应注意的是,LA 2于映像表50中是与区块(k+1)相链接,且清除次数为101的实体地址区块2被记录至映像表52中。
接着,由一主机(图未绘示)传送逻辑地址为LA 3的新数据,存储器控制器41暂时储存该新数据于缓冲存储器412中,并接着于备用区424中选择一备用区块,以于其中写入/储存数据。然而,备用区424的顶端序列中备用区块的清除次数达到一默认值(例如400)。存储器控制器41于数据区422中搜寻一清除次数等于0的数据区块。若不存在清除次数为0的数据区块,则存储器控制器41将对应于所有区块的所有清除次数减去1并重新搜寻。于一实施态样中,是选择对应于区块(k-1)的数据区块,是因其清除次数为0。接着,存储器控制器41将对应于实体地址区块(k-1)的数据区块重新映像至对应于实体地址区块“k+2”的备用区块。亦即,控制器读取储存于区块(k-1)中的数据并将数据写入/写入至对应于实体地址区块(k+1)的备用区块中。同时,存储器控制器41将逻辑地址LA(k-2)链接至实体地址区块(k+2)。于另一实施态样中,则可清除对应于实体地址区块(k-2)的数据区块,并回收该数据区块至备用区424的尾端序列中。如图6C中所绘示的数据区422包含一对应于实体地址区块(k+2)的区块,备用区424包含一对应于实体地址区块(k-2)的区块。亦应注意的是,LA(k-2)于映像表50中是与区块(k+2)相链接,且清除次数为1的实体地址区块(k-2)被记录至映像表52中。
于将数据区块(k-2)重新映像至备用区块(k+2)之后,存储器控制器41还于备用区424的顶端序列中选择一备用区块,以于其中写入/储存数据。此时,选择对应于清除次数为80(小于一默认值400)的实体地址区块(k+3)的备用区块。存储器控制器41接着将储存于缓冲存储器412中的数据写入至对应于实体地址区块(k+3)的备用区块中,并相应地重新映像实体地址区块3的数据区块与实体地址区块(k+3)的备用区块之间的关系。亦即,控制器41将逻辑地址LA 3链接至实体地址区块(k+3)。于另一实施态样中,可清除对应于实体地址区块3的数据区块,并回收该数据区块至备用区424的尾端序列中。如图6D中所绘示的数据区422包含一对应于实体地址区块(k+3)的区块,备用区424包含一对应于实体地址区块3的区块。亦应注意的是,LA 3于映像表50中是与区块(k+3)相链接,且清除次数为91的实体地址区块3被记录至映像表52中。
图7是本发明的快闪存储器存取方法的流程图。其归纳如下说明。于步骤S702中,存储器控制器41首先自主机接收对应于第一数据区块的第一逻辑地址的数据。于步骤S704中,存储器控制器41于备用区424中选择一位于顶端序列的备用区块。于步骤S706中,存储器控制器41判断该备用区块的清除次数是否达到一默认值(例如400)。若已达到,则执行步骤S714,反之,则执行步骤S708。于步骤S708中,当对应于该备用区块的清除次数少于400时,存储器控制器41将数据写入至该备用区块中。于步骤S710中,存储器控制器41清除第一数据区块并回收该第一数据区块至备用区424的尾端序列中,其中该第一数据区块是原本对应于该第一逻辑地址。该步骤是可选择的,亦即本发明并不限制所有步骤皆需要被执行,其可以仅仅执行某些步骤以达成本发明的目的。
于步骤S712中,存储器控制器41重新映像该备用区块的实体地址。亦即,存储器控制器41将该备用区块的实体地址链接至第一逻辑地址。于步骤S712执行之后,再回到步骤S702。于步骤S714中,当对应于该备用区块的清除次数达到默认值(例如400)时,存储器控制器41选择一清除次数等于0的第二数据区块。于步骤S716中,存储器控制器41将储存于第二数据区块中的数据写入至备用区块中。于步骤S718中,存储器控制器41清除第二数据区块,并回收第二数据区块至备用区424的尾端序列中。该步骤是可选择的,亦即本发明并不限制所有步骤皆需要被执行,其可以仅仅执行某些步骤以达成本发明的目的。
于步骤S720中,存储器控制器41重新映像第二数据区块与备用区块。亦即,存储器控制器41将第二数据区块的逻辑地址链接至备用区块的实体地址。于步骤S720执行之后,再回到步骤S704,以进一步处理对应于第一数据区块的一逻辑地址的数据。若对应于下一备用区块的清除次数少于400,则执行步骤S708。该默认值可预先被设定于一储存于该存储器控制器41中的固件中或者快闪存储器42其中的一区块中。该默认值亦可是一固定值(例如400)或者一范围值(例如400±5%)。
图8是绘示图7的步骤S714中选择第二数据区块的方法。于步骤S7142中,存储器控制器41于对应于各该数据区块的清除次数中搜寻一为0的清除次数。若不存在为0的清除次数,则执行步骤S7144,存储器控制器41将对应于所有区块的清除次数减去1。直到这些数据区块其中之一的清除次数等于0时,由存储器控制器41选择该数据区块。
借此,本发明具有数种优点。首先,清除次数是相对值,且所耗用的位数较现有技术为少。此意味着不仅快闪存储器本身所需的记录容量减小,而且缓冲存储器412于运作期间所需的容量亦得以减小。第二,存储器控制器41无需比较所有清除次数便能如于背景技术部分中所述发现数据区块具有该次数。因此整个系统的效能亦得到增强。
据此,本发明能够平均地使用一快闪存储器的区块,例如数据区块及备用区块。可进一步提高快闪存储器的寿命,以较低的成本管控快闪存储器的数据区块及备用区块,并增强快闪存储器的存取效能。
上述的实施例仅用来例举本发明的实施态样,以及阐释本发明的技术特征,并非用来限制本发明的范畴。任何熟悉此技术者可轻易完成的改变或均等性的安排均属于本发明所主张的范围,本发明的权利范围应以申请专利范围为准。

Claims (20)

1.一种用以存取一快闪存储器的方法,该快闪存储器划分为一数据区以及一备用区,该数据区包含多个数据区块,该备用区包含多个备用区块,该方法包含下列步骤:
接收对应于一第一逻辑地址的一数据;
于该备用区中选择一备用区块;
将该数据写入至该被选择的备用区块;以及
将该被选择的备用区块的一实体地址链接至该第一逻辑地址。
2.根据权利要求1所述的方法,其特征在于该被选择的备用区块是位于该备用区的一顶端序列。
3.根据权利要求1所述的方法,其特征在于该被选择的备用区块是于对应于该被选择的备用区块的一清除次数少于一默认值时被选择。
4.根据权利要求3所述的方法,其特征在于该默认值是一固定值以及一范围值其中之一,且该默认值是预先被设定于一设置于该快闪存储器的固件以及一控制器其中之一当中。
5.根据权利要求3所述的方法,其特征在于还包含下列步骤:
清除一第一数据区块的内容;以及
回收该第一数据区块至该备用区的一尾端序列,其中该第一数据区块是原本对应于该第一逻辑地址。
6.一种用以平均地使用一快闪存储器的区块的方法,该快闪存储器包含一数据区以及一备用区,该数据区包含多个数据区块,该备用区包含多个备用区块,该方法包含下列步骤:
接收对应于一第一数据区块的一数据;
于该备用区中选择位于该备用区的一顶端序列的一备用区块;
当对应于该被选择的备用区块的一清除次数达到一默认值时,选择一第二数据区块;
将储存于该第二数据区块的一数据写入至该被选择的备用区块;以及
重新映像该第二数据区块以及该被选择的备用区块。
7.根据权利要求6所述的方法,其特征在于对应于该第二数据区块的一清除次数是等于零。
8.根据权利要求6所述的方法,其特征在于选择该第二数据区块的步骤还包含以下步骤:
于这些数据区块当中搜寻清除次数为零的一数据区块。
9.根据权利要求8所述的方法,其特征在于还包含以下步骤:
当这些数据区块当中没有清除次数为零的数据区块时,将每一区块的清除次数减一。
10.根据权利要求6所述的方法,其特征在于该第二数据区块是通过搜寻清除次数最小的一数据区块而被选择。
11.根据权利要求6所述的方法,其特征在于还包含下列步骤:
清除该第二数据区块;以及
回收该第二数据区块至该备用区的一尾端序列。
12.根据权利要求6所述的方法,其特征在于该重新映像的步骤还包含以下步骤:
将该被选择的备用区块的一实体地址链接至该第二数据区块的一逻辑地址。
13.根据权利要求6所述的方法,其特征在于该默认值是一固定值以及一范围值其中之一,且该默认值是预先被设定于一设置于该快闪存储器的固件以及一控制器其中之一当中。
14.一种存储器装置,包含:
一快闪存储器,其包含一具有多个数据区块的数据区以及一具有多个备用区块的备用区;以及
一控制器,用以接收对应于一第一数据区块的一数据并选择一备用区块;
其中,当对应于该被选择的备用区块的一清除次数少于一默认值时,该控制器写入该数据至该被选择的备用区块,当对应于该被选择的备用区块的清除次数达到该默认值时,该控制器选择一第二数据区块并将储存于该第二数据区块的一数据写入至该被选择的备用区块,借以平均地使用该快闪存储器的区块。
15.根据权利要求14所述的存储器装置,其特征在于该控制器还包含一缓冲存储器,用以暂时储存该快闪存储器的这些区块的链接信息,该链接信息是相关于这些区块的逻辑地址以及实体地址。
16.根据权利要求15所述的存储器装置,其特征在于该链接信息还相关于这些区块的实体地址的多个清除次数,且该具有这些清除次数的链接信息是于一存取操作之后被储存于该快闪存储器的其中之一区块。
17.根据权利要求16所述的存储器装置,其特征在于这些清除次数是相对值。
18.根据权利要求14所述的存储器装置,其特征在于该第二数据区块是通过搜寻清除次数为零的一数据区块而被选择。
19.根据权利要求18所述的存储器装置,其特征在于当这些数据区块当中没有清除次数为零的数据区块时,该控制器用以将每一区块的清除次数减一。
20.根据权利要求14所述的存储器装置,其特征在于该默认值是一固定值以及一范围值其中之一,且该默认值是预先被设定于一设置于该快闪存储器的固件以及该控制器其中之一当中。
CN2008101099682A 2007-12-14 2008-06-06 存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法 Active CN101458956B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/956,485 2007-12-14
US11/956,485 US8122179B2 (en) 2007-12-14 2007-12-14 Memory apparatus and method of evenly using the blocks of a flash memory

Publications (2)

Publication Number Publication Date
CN101458956A true CN101458956A (zh) 2009-06-17
CN101458956B CN101458956B (zh) 2011-09-21

Family

ID=40754777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101099682A Active CN101458956B (zh) 2007-12-14 2008-06-06 存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法

Country Status (3)

Country Link
US (1) US8122179B2 (zh)
CN (1) CN101458956B (zh)
TW (1) TWI442399B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402396A (zh) * 2010-09-15 2012-04-04 群联电子股份有限公司 复合式储存装置及其复合式储存媒体控制器与编址方法
CN102122269B (zh) * 2010-01-07 2012-10-03 慧荣科技股份有限公司 闪存的写入逾时控制方法及其记忆装置
US8417909B2 (en) 2009-12-30 2013-04-09 Phison Electronics Corp. Block management and data writing method, and flash memory storage system and controller using the same
CN102122233B (zh) * 2010-01-08 2013-04-10 群联电子股份有限公司 区块管理与数据写入方法、闪存储存系统与控制器
CN102110056B (zh) * 2009-12-24 2013-07-17 群联电子股份有限公司 闪存管理方法、闪存控制器与闪存存储系统
CN103425596A (zh) * 2012-05-18 2013-12-04 慧荣科技股份有限公司 数据储存装置和快闪存储器的区块管理方法
US9037814B2 (en) 2009-12-15 2015-05-19 Phison Electronics Corp. Flash memory management method and flash memory controller and storage system using the same
CN104932876A (zh) * 2014-03-20 2015-09-23 株式会社巨晶片 半导体装置及读取指令的控制方法
CN105489246A (zh) * 2014-09-16 2016-04-13 华邦电子股份有限公司 Nor闪存及其修补方法
CN102129353B (zh) * 2010-01-13 2017-04-12 群联电子股份有限公司 数据写入系统与数据写入方法
CN107025062A (zh) * 2016-01-29 2017-08-08 捷鼎国际股份有限公司 数据储存方法及其系统

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101454817B1 (ko) * 2008-01-11 2014-10-30 삼성전자주식회사 반도체 메모리 장치 및 그것의 마모도 관리 방법
JP5010505B2 (ja) * 2008-03-01 2012-08-29 株式会社東芝 メモリシステム
TWI373769B (en) * 2008-08-15 2012-10-01 Phison Electronics Corp Block management method for flash memory and storage system and controller using the same
TW201017403A (en) * 2008-10-28 2010-05-01 Silicon Motion Inc Access methods for memory devices and memory devices and machine readable medium thereof
US8219781B2 (en) 2008-11-06 2012-07-10 Silicon Motion Inc. Method for managing a memory apparatus, and associated memory apparatus thereof
US8094500B2 (en) 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US20100174845A1 (en) * 2009-01-05 2010-07-08 Sergey Anatolievich Gorobets Wear Leveling for Non-Volatile Memories: Maintenance of Experience Count and Passive Techniques
US8244960B2 (en) * 2009-01-05 2012-08-14 Sandisk Technologies Inc. Non-volatile memory and method with write cache partition management methods
US8700840B2 (en) * 2009-01-05 2014-04-15 SanDisk Technologies, Inc. Nonvolatile memory with write cache having flush/eviction methods
US9164700B2 (en) * 2009-03-05 2015-10-20 Sandisk Il Ltd System for optimizing the transfer of stored content in response to a triggering event
KR101586047B1 (ko) * 2009-03-25 2016-01-18 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
TWI405208B (zh) * 2009-08-06 2013-08-11 Novatek Microelectronics Corp 快閃記憶體及其存取方法
TWI407310B (zh) * 2009-10-09 2013-09-01 Silicon Motion Inc 資料儲存裝置及資料存取方法
JP2012019383A (ja) * 2010-07-08 2012-01-26 Panasonic Corp 記録制御装置、半導体記録装置および記録システム
JP2013254357A (ja) * 2012-06-07 2013-12-19 Sony Corp 情報処理装置および方法、並びにプログラム
US20140075093A1 (en) * 2012-09-12 2014-03-13 Infineon Technologies Ag Method and system for implicit or explicit online repair of memory
JP6326209B2 (ja) * 2013-09-30 2018-05-16 ラピスセミコンダクタ株式会社 半導体装置及び半導体メモリにおける消去回数の検索方法
KR102403266B1 (ko) * 2015-06-22 2022-05-27 삼성전자주식회사 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
US9728262B2 (en) * 2015-10-30 2017-08-08 Sandisk Technologies Llc Non-volatile memory systems with multi-write direction memory units
US9971685B2 (en) * 2016-04-01 2018-05-15 Intel Corporation Wear leveling based on a swapping operation between sets of physical block addresses of a non-volatile memory
TWI644210B (zh) * 2017-09-08 2018-12-11 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置

Family Cites Families (13)

* 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
GB2291990A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Flash-memory management system
KR100818035B1 (ko) * 2000-05-04 2008-03-31 엔엑스피 비 브이 저장 매체 상의 데이터 관리 및 데이터 관리 시스템과 컴퓨터 판독가능한 저장 매체
JP4199519B2 (ja) * 2002-11-05 2008-12-17 パナソニック株式会社 メモリ管理装置及びメモリ管理方法
TWI240863B (en) * 2003-09-05 2005-10-01 Megawin Technology Co Ltd Method for efficiently controlling flash memory read/write
US7188228B1 (en) * 2003-10-01 2007-03-06 Sandisk Corporation Hybrid mapping implementation within a non-volatile memory system
US7650458B2 (en) * 2006-06-23 2010-01-19 Microsoft Corporation Flash memory driver
KR101454817B1 (ko) * 2008-01-11 2014-10-30 삼성전자주식회사 반도체 메모리 장치 및 그것의 마모도 관리 방법
US8275928B2 (en) * 2008-05-15 2012-09-25 Silicon Motion, Inc. Memory module and method for performing wear-leveling of memory module using remapping, link, and spare area tables
US8140739B2 (en) * 2008-08-08 2012-03-20 Imation Corp. Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table
US8082386B2 (en) * 2008-10-21 2011-12-20 Skymedi Corporation Method of performing wear leveling with variable threshold
US8040744B2 (en) * 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
TWI457940B (zh) * 2009-05-15 2014-10-21 Macronix Int Co Ltd 區塊為基礎快閃記憶體之位元組存取

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037814B2 (en) 2009-12-15 2015-05-19 Phison Electronics Corp. Flash memory management method and flash memory controller and storage system using the same
CN102110056B (zh) * 2009-12-24 2013-07-17 群联电子股份有限公司 闪存管理方法、闪存控制器与闪存存储系统
US8417909B2 (en) 2009-12-30 2013-04-09 Phison Electronics Corp. Block management and data writing method, and flash memory storage system and controller using the same
CN102122269B (zh) * 2010-01-07 2012-10-03 慧荣科技股份有限公司 闪存的写入逾时控制方法及其记忆装置
CN102122233B (zh) * 2010-01-08 2013-04-10 群联电子股份有限公司 区块管理与数据写入方法、闪存储存系统与控制器
CN102129353B (zh) * 2010-01-13 2017-04-12 群联电子股份有限公司 数据写入系统与数据写入方法
CN102402396B (zh) * 2010-09-15 2014-09-17 群联电子股份有限公司 复合式储存装置及其复合式储存媒体控制器与编址方法
CN102402396A (zh) * 2010-09-15 2012-04-04 群联电子股份有限公司 复合式储存装置及其复合式储存媒体控制器与编址方法
CN103425596A (zh) * 2012-05-18 2013-12-04 慧荣科技股份有限公司 数据储存装置和快闪存储器的区块管理方法
CN104932876A (zh) * 2014-03-20 2015-09-23 株式会社巨晶片 半导体装置及读取指令的控制方法
CN104932876B (zh) * 2014-03-20 2019-06-07 株式会社巨晶片 半导体装置及读取指令的控制方法
CN105489246A (zh) * 2014-09-16 2016-04-13 华邦电子股份有限公司 Nor闪存及其修补方法
CN105489246B (zh) * 2014-09-16 2018-10-19 华邦电子股份有限公司 Nor闪存及其修补方法
CN107025062A (zh) * 2016-01-29 2017-08-08 捷鼎国际股份有限公司 数据储存方法及其系统
CN107025062B (zh) * 2016-01-29 2020-03-06 宜鼎国际股份有限公司 数据储存方法及其系统

Also Published As

Publication number Publication date
CN101458956B (zh) 2011-09-21
US20090157947A1 (en) 2009-06-18
US8122179B2 (en) 2012-02-21
TWI442399B (zh) 2014-06-21
TW200926182A (en) 2009-06-16

Similar Documents

Publication Publication Date Title
CN101458956B (zh) 存取一快闪存储器的装置、方法及平均地使用该快闪存储器的区块的方法
US8996791B2 (en) Flash memory device, memory control device, memory control method, and storage system
CN101582052B (zh) 存储器模组及于存储器模组中实现平均磨损的方法
US7797481B2 (en) Method and apparatus for flash memory wear-leveling using logical groups
US7526599B2 (en) Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system
US8904089B2 (en) Method for performing block management/Flash memory management, and associated memory device and controller thereof
US7603593B2 (en) Method for managing bad memory blocks in a nonvolatile-memory device, and nonvolatile-memory device implementing the management method
US8433844B2 (en) Method for managing a memory device having multiple channels and multiple ways, and associated memory device and controller thereof
US9075707B2 (en) Data writing method and data storage device
US20100169556A1 (en) Nonvolatile storage device, information recording system, and information recording method
CN101908368A (zh) 电子存储装置及其操作方法
US8037236B2 (en) Flash memory writing method and storage system and controller using the same
CN108733577B (zh) 存储器管理方法、存储器控制电路单元及存储器存储装置
US9009442B2 (en) Data writing method, memory controller and memory storage apparatus
US20100318726A1 (en) Memory system and memory system managing method
US8954646B2 (en) Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
US20090210612A1 (en) Memory controller, nonvolatile memory device, and nonvolatile memory system
US20140089566A1 (en) Data storing method, and memory controller and memory storage apparatus using the same
US8762685B2 (en) Data writing method, memory controller and memory storage apparatus
US8209464B2 (en) Management method, management apparatus, and controller for memory data access
TWI805445B (zh) 借助額外實體位址資訊來進行記憶體裝置之存取控制的方法、記憶體裝置以及記憶體裝置的控制器
CN106484630A (zh) 快闪存储器的存取方法及相关的存储器控制器与电子装置
US20110055459A1 (en) Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
CN111966302B (zh) 一种基于逻辑物理映射表的SPI Nand数据写入方法
CN107315648B (zh) 一种提高坏块管理时数据搬移性能的方法

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