CN1232912C - 非易失性存储器的控制方法 - Google Patents

非易失性存储器的控制方法 Download PDF

Info

Publication number
CN1232912C
CN1232912C CNB028022890A CN02802289A CN1232912C CN 1232912 C CN1232912 C CN 1232912C CN B028022890 A CNB028022890 A CN B028022890A CN 02802289 A CN02802289 A CN 02802289A CN 1232912 C CN1232912 C CN 1232912C
Authority
CN
China
Prior art keywords
data
data block
block
write
page
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 - Lifetime
Application number
CNB028022890A
Other languages
English (en)
Other versions
CN1465012A (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1465012A publication Critical patent/CN1465012A/zh
Application granted granted Critical
Publication of CN1232912C publication Critical patent/CN1232912C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • 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/7209Validity control, e.g. using flags, time stamps or sequence numbers

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

提供在书写数据块的过程中,因记忆装置的电源隔断及复位指令等发生强制中断时,既不删除应删除的数据、也不删除应写入的数据的非易失性存储器的控制方法。在数据块的最终页面写入数据时,通过将设置在其数据块的最终页面的冗余区域的数据块数据有效化标志置0(有效),使该数据块有效化。此外,由于设置新旧判断用的计数器,在所述解决手段中不能处理时也能够保护数据。

Description

非易失性存储器的控制方法
技术领域
本发明,涉及非易失性存储器及非易失性半导体存储器的控制方法。
背景技术
近年,作为处理音乐及视频数据的携带机器的记忆装置,采用快速存储器等非易失性存储器的记忆装置引人关注。
对于快速存储器的构造,以512M位NAND型快速存储器情况为例进行说明。
图2是512M位快速存储器的物理块的构成例。1个快速存储器由4096个数据块构成。该数据块成为删除的基本单位。1个数据块还可分割为32页面,1页面是读出、写入的基本单位。1页的容量是528字节,其中,512字节是数据区域,留下的16字节是冗余区域。数据区域是用户使用的区域,冗余区域是非易失性存储器记忆装置的系统控制部使用的区域。
实施例的快速存储器的各数据,在删除状态(删除完成,未记忆)是1。因此,在快速存储器写入1也可等于什么也未写。
图3,是已有的快速存储器的物理块内部构成图。图3,表示在1物理块的冗余区域被书写的主要数据。在最初页面的冗余区域,配置着写入完成标志101、逻辑地址102、数据块数据无效化标志的标志1亦即103共3部分。这些数据在后面进行说明。
图4是表示逻辑地址与物理地址的关系的图。在用快速存储器的非易失性存储器记忆装置中,由外部指定的逻辑地址、与配置在快速存储器内的物理地址一般并不一致。如一致,将会产生快速存储器内发生故障的数据块的地址不能使用,应用程序负担加重,或在特定地址中写入的频发的系统中,与该地址相关的数据块在短时期内超过保证改写次数从而成为短寿命之类的问题。
因此,如图3所示,物理块自己被分配在哪个逻辑地址,是记忆在冗余区域中的。一般,非易失性存储器记忆装置的系统控制部,在电源投入时,读出书写在整个快速存储器的冗余区域的逻辑地址信息,将图5那样的逻辑地址与物理地址进行转换的逻辑物理地址转换表格制作在RAM上。系统控制部,在指令处理时,对外部指定的逻辑地址,在这个逻辑物理地址转换表格中,对物理地址进行特定,对该物理地址进行存取。
使用图6~图8,对已有的一般的写入顺序进行说明。图6是1数据块写入处理的概要流程图。图7是图6的步骤603中的新数据写入处理部的详细流程图。图8是图7的步骤706中冗余区域数据作成处理部的详细流程图。
在图6,在步骤601,从登记表格检索删除完成数据块。登记表格是删除完成未写入的数据块的一览表。登记表格与逻辑物理地址转换表格同样,在电源投入时,读出书写在整个快速存储器的冗余区域的写入完成标志,制作在RAM上的表格。在步骤602,更新登记表格,确保删除完成数据块。在步骤603,在确保的数据块写入数据(详细见图7,8)。在步骤604,通过逻辑物理地址转换表格判断旧数据块存在否。存在时,进入步骤605。在步骤605,在旧数据块的初始页面的冗余区域的标志1,改写0(无效),对旧数据块进行无效化。在旧数据块不存在时,跳过步骤605,进入步骤606。在步骤606,将逻辑物理地址转换表格的旧数据块的物理地址改写为新数据块的物理地址,该流程终了。
此外,在旧数据的删除中,一种方法是物理删除,另一种方法是在表示数据无效的标志上做记号、表面删除,然后在别的时间进行物理删除。后者是一般使用的方法,所述图6的流程图也用这种方式说明。这是因为标志的改写要比快速存储器物理删除快。此外,在由多个快速存储器芯片构成的非易失性存储器记忆装置中,当别的快速存储器芯片进行写入时,如果同时将做无效记号的数据块作物理删除,与该写入同时删除的时间段,作为整体写入的速度快。
在图7,在步骤701,将RAM上设置的页面计数器设定为初期值(1)。在步骤702,判断是不是书写主机供给的数据的页面,如果是书写主机供给的数据的页面,进入步骤703,从主机输入1页数据。如果不是书写主机供给的数据的页面,进入步骤704,从旧数据块读出1页数据。在步骤705,在数据区域设置数据,在步骤706,在冗余区域设置数据(详细见图8)。在步骤707,写入1页。在步骤708,对页面计数器加1。在步骤709,判断页面计数器是否大于33。如果页面计数器不满33,从步骤702~步骤709重复进行。如页面计数器是33,该流程终了。
在所述图7的步骤702~步骤704,写入单位是页面,删除单位是数据块,所以,在发生的处理中,被称为卷入处理。亦即,从外部写入,数据以页面单位传递时,对于此外的页面,因为要保持已有的数据不变,因此从变更的旧数据块读出,将该数据合成,进行1数据块的写入。按照写入的开始页面、终了页面,分为前半卷入处理和后半卷入处理。
在图8,在步骤801,判断是不是初始页面。如是初始页面,进入步骤802,在写入完成标志101设置0(写入完成)。在步骤803,在逻辑地址102设置由来自主机指示的逻辑地址。在步骤804,在标志1的数据块数据无效化标志103设置1(不无效),该流程终了。在步骤801,当不是初始页面时,该流程终了。
在这样的系统,在对数据块书写的过程中,由于记忆装置的电源隔断及对记忆装置发复位指令等发生强制中断时,在同一逻辑地址存在2个物理地址。这现象发生在所述顺序中、新数据块数据的写入(步骤603)途中,或发生于新数据块数据的写入(步骤603)终了、旧数据块数据的无效化(步骤604)进行之前的中断情况下。
通过作成该现象发生后的初期时的逻辑物理地址转换表格,考虑将某一方的数据块的物理地址登录到逻辑物理地址转换表格中、放置写入另一方的数据块数据及逻辑地址的数据块的方法。此时,当删除所述状态登录的数据块、重新投入电源时,在新生成于RAM的逻辑物理地址转换表格中,在应删除的逻辑地址登录别的数据块(放置的数据块)的物理地址。结果,发生应删除的地址不能删除的现象。
此外,在写入旧数据块数据的数据块与写入新数据块数据的数据块间,在写入同一逻辑地址的状态下发生中断、然后重新投入电源时,写入旧数据块数据的数据块的物理地址可能被登陆到逻辑物理地址转换表格。此时,新的数据块数据删除。作为系统,发生致命的现象。
因此,以往,在作成初期时的逻辑物理地址转换表格时,在同一逻辑地址重复出现物理地址的情况下,对一方的数据块无效化、进行解消重复的处理。两数据块的选择方法,一是进行两数据块的数据读出、确认设置于每页面的错误订正符号、选择无错误的数据块的方法,或是选择写入于最终页面前的数据块的方法。
但是,随着近年来快速存储器及非易失性存储器记忆装置的大容量化,需要高速进行逻辑物理地址转换表格的作成处理,但所述地址重复解消处理却成了高速化的大障碍。用硬件作成逻辑物理地址转换表格是一般的,通过软件对地址重复信息进行处理的方法使逻辑物理地址转换表格的作成速度大大减低。即使全部处理都由硬件解决,如在地址重复解消中进行已有的复杂的判断处理,伴随这一处理将导致硬件面积的增大,价格的上升。
此外,重复的两方的数据块,在最终页面前正确物理写入的状态,往往也必须由数据区域的内容选择更正确的数据块。例如,在书写处理中,在进行新数据的写入后,确认含于该数据中的错误订正符号,或者判断该数据值是否是异常值,确认正当性,开始对旧数据作无效化的处理,都是必要的数据处理。在这样的情况下,单纯采用选择写入时期的新数据的方法是不能解决的。例如,有必要根据数据的各自情况对数据区域进行扫描、判断正确的数据块、进行选择处理,但用硬件完成这全部的处理是困难的。
本发明的目的在于,针对以上问题,提供以增加简单构造、可确保可靠性、能高速作成逻辑物理地址转换表格的记忆装置。
发明内容
为了解决所述课题,本发明具有以下构成。
按照本发明一种观点形成的非易失性存储器的控制方法,存储器具有多个数据块,所述数据块具有多个页面,所述页面,具有写入数据的数据区域及冗余区域,所述数据块的最初的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否无效、且表示非易失性存储器在被删除状态所述数据不无效的数据块数据无效化标志,所述数据块的最后的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否有效、且表示非易失性存储器在被删除状态所述数据不有效的数据块数据有效化标志;具备在所述数据区域写入数据的数据写入步骤,以及能用具有写入所述数据的所述数据区域的所述数据块的所述数据块数据有效化标志表示所述数据有效的有效化步骤。
按照本发明又一种观点形成的非易失性存储器的控制方法,可同时执行对将原有数据更新为新的数据时写入所述新的数据的所述数据块进行的有效化步骤,以及能用写入所述原有数据的所述数据块的所述数据块数据无效化标志表示所述原有数据无效的无效化步骤。
按照本发明又一种观点形成的非易失性存储器的控制方法,所述冗余区域还具有逻辑地址、以及在所述数据块写入的所述数据的履历信息,还具备在存在具有同一所述逻辑地址的多个数据块时、以所述履历信息为基础判断哪个数据块的数据现在有效的判断步骤。
所谓“履历信息”,是明确数据的新旧的信息。例如,计数器值及日期、时间。
按照本发明一种观点形成的非易失性存储器的控制方法,具有多个数据块,所述数据块具有多个页面,所述页面,具有写入数据的数据区域及冗余区域,所述数据块的最初的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否无效、且表示非易失性存储器在被删除状态所述数据不无效的数据块数据无效化标志,所述数据块的最后的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否有效、且表示非易失性存储器在被删除状态所述数据不有效的数据块数据有效化标志;至少1个所述数据块的数据块数据有效化标志,表示所述数据有效。
按照本发明一种观点形成的非易失性存储器的控制方法,所述冗余区域还具有逻辑地址、以及在所述数据块写入的所述数据的履历信息。
按照本发明,可使相对于书写过程中的中断引起的同一逻辑地址的物理地址的重复的危险性大大减轻,实现能确保可靠性、能高速动作的记忆装置的控制。
发明的新的特征不外乎特别记载于附加的权利要求范围,对于构成及内容两方面,本发明连同别的目的及特征一起,结合附图在下面作详细说明,以利于更好地理解和评估。
附图说明
图1是本发明实施例1的快速存储器物理块内的构成图例。
图2是已有的快速存储器物理块的构成图例。
图3是已有的快速存储器物理块内的构成图例。
图4是表示逻辑地址与物理地址的关系的图。
图5是逻辑物理地址转换表格的示例。
图6是1数据块写入处理概略流程图。
图7是图6中的新数据写入处理部的详细流程图。
图8是已有的图7中的冗余区域数据作成处理部的详细流程图。
图9是本发明的实施例1的图7中的冗余区域数据作成处理部的详细流程图。
图10是本发明的实施例1的电源投入时的逻辑物理地址转换表格作成处理概略流程图。
图11是本发明实施例2的1数据块写入处理概略流程图。
图12是本发明的实施例2的图7中的冗余区域数据作成处理部的详细流程图。
图13是本发明实施例4的快速存储器物理块内的构成图例。
附图的一部分或全部,通过以图示为目的的概要的展示进行描述,请不要拘泥于对其中的要素的实际相对大小及位置的准确性。
具体实施形态
下面参照附图对用来实施本发明的实施例进行说明。
实施例1
使用图1、6、7、9,对本发明的实施例1的记忆装置进行说明。
图1是本发明实施例1的快速存储器物理块内的构成图例。图1展示出在1物理块的冗余区域写入的主要的数据。在最初的页面的冗余区域,配置着写入完成标志101、逻辑地址102、作为数据块数据无效化标志的标志1亦即103,共3部分。在最后页面的冗余区域,配置着作为数据块数据有效化标志的标志2亦即104。与以往例不同点在于追加了标志2亦即104。
写入完成标志101,表示在该数据块已写入。写入完成标志101为1的时候,表示其数据块未写入,为0时表示其数据块写入完成。在初始页面写入时,如在写入完成标志101相应写入固定值0,可写完该数据块。如考虑到在1数据块的写入中发生中断,写入完成标志101,进行写入的最初页面的内容是必要条件。
逻辑地址102,表示其物理块被现在分配的逻辑地址。它不一定配置在初始页面上,如果逻辑地址102与所述写入完成标志101兼用,则必须在初始页面进行配置。例如以16位表示逻辑地址时,逻辑地址102的值为删除状态的Oxffff时判断为未写入,当逻辑地址102的值不是Oxffff时判断为写入完成。如果规定实际的逻辑地址可以取这个数值以外的值,逻辑地址102可与写入完成标志兼用。
标志1亦即103是数据块数据无效化标志。当标志1亦即103为1时,表示其物理块不是无效,当写入0时,表示其物理块无效。在写入新数据时保持1不变,在其数据中书写发生时(写在其数据块的数据是旧数据时),通过只改写该标志使之为0后可进行无效化。所谓快速存储器的改写,是指不删除下进行的照样书写。
标志2亦即104是数据块数据有效化标志。当标志2亦即104为1时,表示其物理块不是有效,当写入0时,表示其物理块有效。在最终页面写入时,如在标志2亦即104相应写入0,可对其数据块有效化。如考虑到在1数据块的写入中发生中断,标志2亦即104,进行写入的最终页面的内容是必要条件。
如上所述,由于需要将写入完成标志分配到初始页面、将标志2分配到最终页面,因此,也可将逻辑地址、及标志1分配到其中某一页面上。亦即,对于初期的逻辑物理地址转换表格的作成,由于扫描的页面减少、读出时间缩短,可以使表格作成的时间缩短。
使用图6、7、9,对本发明的实施例1的存储器系统的写入顺序进行说明。
图6是本发明的实施例1的1数据块写入处理概略流程图。图7是本发明的实施例1的图6的步骤603中的新数据写入处理部的详细流程图。图9是本发明的实施例1的图7的步骤706中的冗余区域数据作成处理部的详细流程图。
在图6,在步骤601,从登记表格检索删除完成数据块。在步骤602,更新登记表格,确保删除完成数据块。在步骤603,在确保的数据块写入数据(详细见图7,9)。在步骤604,通过逻辑物理地址转换表格判断旧数据块存在否。存在时,进入步骤605。在步骤605,在旧数据块的初始页面的冗余区域的标志1,改写0(无效),对旧数据块进行无效化。在旧数据块不存在时,跳过步骤605,进入步骤606。在步骤606,将逻辑物理地址转换表格的旧数据块的物理地址改写为新数据块的物理地址,该流程终了。
此外,在旧数据的删除中,一种方法是物理删除,另一种方法是在表示数据无效的标志上做记号、表面删除,然后在别的时间进行物理删除。后者是一般使用的方法,图6的流程图也用这种方式说明。这是因为标志的改写要比快速存储器物理删除快。此外,在由多个快速存储器芯片构成的非易失性存储器记忆装置中,当别的快速存储器芯片进行写入时,如果同时将做无效记号的数据块作物理删除,与该写入同时删除的时间段,作为整体写入的速度快。
在图7,在步骤701,将RAM上设置的页面计数器设定为初期值(1)。在步骤702,判断是不是书写主机供给的数据的页面,如果是书写主机供给的数据的页面,进入步骤703,从主机输入1页数据。如果不是书写主机供给的数据的页面,进入步骤704,从旧数据块读出1页数据。在步骤705,在数据区域设置数据,在步骤706,在冗余区域设置数据(详细见图9)。在步骤707,写入1页。在步骤708,对页面计数器加1。在步骤709,判断页面计数器是否大于33。如果页面计数器不满33,从步骤702~步骤709重复进行。如页面计数器是33,该流程终了。
写入单位是页面,删除单位是数据块,所以,在数据块中不满的数据写入中,发生被称为卷入的处理。亦即,从外部写入,数据以页面单位传递时,对于此外的页面,因为要保持已有的数据不变,因此从变更的旧数据块读出,将该数据合成,进行1数据块的写入。这就是步骤702~步骤704。按照写入的开始页面、终了页面,分为前半卷入处理和后半卷入处理。
在图9,在步骤901,判断是不是初始页面。如是初始页面,进入步骤902,在写入完成标志101设置0(写入完成)。在步骤903,在逻辑地址102设置由来自主机指示的逻辑地址。在步骤904,在标志1的数据块数据无效化标志103设置1(不无效),该流程终了。在步骤901,当不是初始页面时,进入步骤905,判断是不是最终页面。如果是最终页面,进入步骤906,在标志2亦即104设置0(有效),该流程终了。如果不是最终页面,该流程终了。
此外,本说明仅对所述标志,逻辑地址数据进行了说明,但在实际的系统中,数据错误订正符号等,别的数据的写入一般也可进行。因这些数据与本发明无关系,这里从略。
与以往例的图6~图8的区别,在于如图9所示,追加在冗余区域的数据的作成中,在标志2亦即104写入0(有效)。虽然数据作成时间存在一些差异,但对快速存储器的物理的写入需要的时间是相同的。
下面,对使用标志1、2的数据块数据的判断方法进行说明。以往只是标志1,但通过标志1、2的组合,可进行如下的判断。
在该数据块写入完成时,首先,仅当标志1=1(不无效)且标志2=0(有效)时判断为有效数据块。
当标志1=1(不无效)且标志2=1(不有效)的情况,在写入途中发生中断,被看成最终页面前不能写入的无效数据块。此时,按照所述的次序,由于是在旧数据块的无效化之前,所以在电源再投入时选择旧数据块、新数据写入本身并不存在。
当标志1=0(无效)且标志2=0(有效)的情况,表示书写是无效化的数据块。
当标志1=0(无效)且标志2=1(不有效)的情况,被看成是非正常次序、无效的数据块。
如上所述,即使发生写入时的中断,通过2个标志可判断数据块数据的有效、无效。
利用图10,对本发明的实施例1的电源投入时的表格作成次序进行说明。
图10是逻辑物理地址转换表格作成处理概略流程图。
在图10,首先一开始,将表格作成用的表格区域进行初始化,在步骤1001,将逻辑物理地址转换表格初始化。在逻辑物理地址转换表格上,将所有物理块设定为未分配状态。在步骤1002,登记表格被初始化。在登记表格上,将所有物理块设定为删除完成状态。在在步骤1003,将无效表格初始化。在无效表格上,将所有物理块设定为无效。无效表格,被写入的数据无效、是设置于表示未删除的数据块的RAM上的表格。
在步骤1004,将RAM上设置的数据块计数器初始化(数据块计数器=0)。在步骤1005,判断是否写入完成标志101=1(未写入)。如写入完成标志101=1(未写入),将登记表格的相关位完全删除。在本流程中,由于一开始对登记表格进行初始化(完全删除),所以,该处理不需要。进入步骤1010,使无效表格的相关位有效。该数据块的处理终了,进入步骤1011。在步骤1005的判断中,将写入完成标志在逻辑地址数据中兼用时也一样。此外,在未写入时也不必要读出最终页面。
在步骤1005,写入完成标志1=0(写入完成)时,进入步骤1006,使登记表格的相关位成为使用结束。
在步骤1007,判断是否标志1=1(不无效)。当标志1=0(无效),该数据块的处理终了,进入步骤1011。当标志1=1(不无效),进入步骤1008,判断是否标志2=0(有效)。当标志2=1(不有效),该数据块的处理终了,进入步骤1011。当标志2=0(有效),该数据块被看成有效,进入步骤1009,在逻辑物理地址转换表格上登录。在步骤1010,使无效表格的相关位有效。在步骤1011,对数据块计数器加1。在步骤1012,判断是否为最终数据块。如果不是最终数据块,返回步骤1005,进行下一个数据块的处理。如果是最终数据块,该流程终了。
这样,图10的处理,是按照物理地址依次在最终数据块前读出初始页面及最终页面的冗余区域,并作成逻辑物理地址转换表格、登记表格及无效表格的处理;步骤1008的判断只是追加在以往处理上的构造。
此外,在实际的控制中,如本流程所示,在一般的系统中,准备有预先记忆着写入结束时无效的数据块的表格(无效表格)。这应称为应删除表格的图表,所以,在书写时不进行物理删除,在用所述标志1做无效化记号的系统中,利用别的数据块的写入处理的时间并列进行无效化数据块的删除处理是必要的。此时,可在检索应删除数据块的情况下使用。因此,不仅初期时、在书写时也可与旧数据块的无效化一致,对该表格上的数据也更新。
如上所述,由于在已有的写入顺序、在逻辑物理地址转换表格作成顺序中不进行大的变更、追加,使书写途中的中断引起的对同一逻辑地址的物理地址的重复的危险性可大大减低。
实施例2
使用图7、11、12,对本发明的实施例2的存储器系统的写入顺序进行说明。图11是本发明实施例2的1数据块写入处理概略流程图。与实施例1(图6)的不同点,在于追加数据种类的判断(从步骤1103到步骤1105)与新数据块的有效化(从步骤1107到步骤1110)。图12是本发明的实施例2的图7中的步骤706中的冗余区域数据作成处理部的详细流程图。与实施例1(图9)的不同点在于通过有效确认标志设定标志2(从步骤1206到步骤1207)。
在图11,在步骤1101,通过登记表格检索删除结束数据块。在步骤1102,更新登记表格,确保删除结束数据块。在步骤1103,判断数据种类在进行写入后是否需要正当性确认。必要时,进入步骤1104,将设置于RAM上的有效确认标志设定为1。不要时,进入步骤1105,将有效确认标志设定为0。有效确认标志,是程序执行后临时设定的标志,该标志不用在快速存储器上写入。在步骤1106,在确保的数据块上写入数据(详细见图7,12)。
在步骤1107,判断有效确认标志是否为1(必要)。有效确认标志=1(必要)时,进入步骤1108,对从主机接收的数据进行正当性检查。例如,检查数据订正符号是否是应取得的值。在步骤1109,根据该数据的正当性检查进行分支。当数据有效时,进入步骤1110,在新数据块的最终页面的标志2上改写0(有效),对新数据块进行有效化。在步骤1107,有效确认标志=0(不要)时,在步骤1106,在数据写入时对新数据块进行有效化(参照后述的图12的说明),进入步骤1111。步骤1111~步骤1113,与图6的步骤604~步骤606相同,所以,说明从略。在步骤1109,当数据不有效时,该流程终了。
在步骤1106(图11),进行如图7所示的处理。在图7,由于与实施例1相同,说明从略。
在实施例2的步骤706(图7),进行如图12所示的处理。在图12,步骤1201~步骤1205,与实施例1(图9)的步骤901~步骤905相同,所以,说明从略。在步骤1205,在最终页面的情况下,进入步骤1206,判断有效确认标志是否为1(必要)。有效确认标志=1(必要)时,进入步骤1207,对标志2设置1(不有效),该流程终了。有效确认标志=0(不要)时,进入步骤1208,对标志2设置0(有效),该流程终了。
实施例2,与实施例1比较,发生数据的判断处理、确认处理、仅写入标志2的改写部分的处理。这样,实施例2,从写入处理整体看,速度减低。速度是否优先、可靠性是否优先、这要根据数据的种类进行选择。
如上所述,在判断正当性后需要进行有效化的数据,也可应用实施例1的方法用简单操作与之对应。
实施例3
对本发明的实施例3的记忆装置进行说明。实施例3涉及写入新数据的数据块的有效化及存储旧数据的数据块的无效化。
在本发明的实施例2,在图11的步骤1110,进行新数据的有效化,在步骤1112,进行旧数据的无效化。此时,严格地说,两数据块有效的时间只在瞬间存在。一旦执行步骤1110结束,在执行步骤1112的前夕写入中断时,新旧数据块都有效,因此,提出了有关新旧数据块同时写入的系统的控制方法的提案。
亦即,往往非易失性存储器记忆装置是由多个快速存储器芯片构成,但在同一逻辑地址的书写中,设置选择新数据块与旧数据块不同的芯片的规则,在新数据块的有效化同时,实施旧数据块的无效化。以多个快速存储器芯片构成、同时进一步对多个快速存储器芯片进行处理作为前提,随着近年的高速、大容量处理,并列处理是一般构造。
通过这样的处理,能使同一逻辑地址上新旧数据块分配的危险性进一步减低。
实施例4
对本发明的实施例4的记忆装置进行说明。本发明的实施例1~3,以简单配置使同一逻辑地址中物理地址重复的危险性大大减低为目的,而实施例4则是涉及重复时的保护处理。
用图13对本发明的实施例4的记忆装置进行说明。
图13是本发明实施例4的快速存储器物理块内的构成图例。表示1物理块的冗余区域中书写的主要数据。在初始页面的冗余区域,配置着写入完成标志101、逻辑地址102、数据块数据无效化标志的标志1亦即103共3部分。在最终页面的冗余区域,配置着数据块数据有效化标志的标志2亦即104、新旧判断用的计数器105。与以往例的图3的区别在于,标志2亦即104、及计数器105是追加的部分。本说明作为8位计数器作说明。
首先,在写入新数据块时,从旧数据块的冗余区域读出计数值。此外,在写入到新数据时,写入在该计数值中加1的值。例如,旧数据块的计数值为4时,新数据块计数值为5。因此,重复的新旧数据块,两方的标志101、103、104都有效且数据的正当性可确认,则通过该计数值分清新旧,可作为根据数据用途选择哪一个数据块的判断材料。一般,如果新的数据能够写入结束,判断在删除旧数据前夕中断写入,选择新的数据。
此外,当然要进行计数器溢出时的应对处理。按照前例,计数值大的数据块为有效,但当计数值为0xff及0x00时,选择0x00的数据块。
此外,该计数值的说明时,新数据块的计数值可写入加1的值,但作为一例进行减1也行。此外,也可用写入日期时间以取代计数值,只要能分清新旧,那一种的数据分配都可用。
如上说明所述,按照实施例1~3的发明,可使分配在同一逻辑地址的物理块重复的危险性大幅减低,即使重复也能够通过实施例4的保护处理应对。初期的表格作成处理用硬件实现,在检测地址重复时用软件处理。按这样的分工,可构成能确保可靠性且高速动作、可行的系统。
此外,本发明不限于所述实施例。只要不超越发明的宗旨范围,容许进行变更。
在所述实施例,在1位中,用1或0表示标志,极性可根据快速存储器的删除电平变更,也可采用多个位、多元决定处理判断的装置。
此外,以数据的写入单位作为数据块进行说明,可采用将多个数据块作为1写入单位处理。此外,以每1页面进行写入快速存储器为例说明,利用快速存储器可同时写入多个页面,可对多个快速存储器芯片同时写入,所以,在这种多页面写入方式中,开头写入的某页面、及最终写入的某页面可进行置换。
此外,对有关数据的有效化标志,无效化标志进行说明,不限于数据。即使是与冗余区域中原来的用户数据不同的、系统使用的别的数据,也要通过书写进行数据的有效化及数据的无效化才能应用。
按照本发明,不用对已有的写入顺序、逻辑物理地址转换表格的作成顺序进行大的变更和追加,就能构成可使书写途中的中断引起的对同一逻辑地址的物理地址的重复危险性大大减低、可确保可靠性且高速动作的系统。
对发明进行一定程度细化的实施形态作了说明,但该实施形态的现公开的内容,在构成细节方面是可变化的,各主要部分的组合及顺序的变化只要不超越申请范围及宗旨,均可进行。
产业上的可利用性
如上所述,本发明的非易失性存储器的控制方法,作为进行数据读出及写入的非易失性存储器的控制方法是有用的。

Claims (3)

1.一种非易失性存储器的控制方法,
所述存储器具有多个数据块,
所述数据块具有多个页面,
所述页面具有写入数据的数据区域及冗余区域,
所述数据块的最初的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否无效、且表示非易失性存储器在被删除状态所述数据不无效的数据块数据无效化标志,
所述数据块的最后的所述页面的所述冗余区域,具有表示写入其数据块的所述数据是否有效、且表示非易失性存储器在被删除状态所述数据不有效的数据块数据有效化标志;
所述非易失性存储器的控制方法,其特征在于,具备
在所述数据区域写入数据的数据写入步骤,以及
能用数据块的数据块数据有效化标志表示所述数据有效的有效化步骤,所述数据块具有写入所述数据的数据区域。
2.如权利要求1所述的非易失性存储器的控制方法,其特征在于,
可同时执行对将原有数据更新为新的数据时写入所述新的数据的所述数据块进行的有效化步骤,以及能用写入所述原有数据的所述数据块的所述数据块数据无效化标志表示所述原有数据无效的无效化步骤。
3.如权利要求1所述的非易失性存储器的控制方法,其特征在于,
所述冗余区域还具有逻辑地址以及在所述数据块写入的所述数据的履历信息,还具备在存在具有同一所述逻辑地址的多个数据块时,以所述履历信息为依据判断哪个数据块的数据现在有效的判断步骤。
CNB028022890A 2001-06-28 2002-06-24 非易失性存储器的控制方法 Expired - Lifetime CN1232912C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001197388A JP3692313B2 (ja) 2001-06-28 2001-06-28 不揮発性メモリの制御方法
JP197388/2001 2001-06-28

Publications (2)

Publication Number Publication Date
CN1465012A CN1465012A (zh) 2003-12-31
CN1232912C true CN1232912C (zh) 2005-12-21

Family

ID=19035002

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028022890A Expired - Lifetime CN1232912C (zh) 2001-06-28 2002-06-24 非易失性存储器的控制方法

Country Status (8)

Country Link
US (1) US6879528B2 (zh)
EP (1) EP1403771A4 (zh)
JP (1) JP3692313B2 (zh)
KR (1) KR100531192B1 (zh)
CN (1) CN1232912C (zh)
CA (1) CA2420986C (zh)
TW (1) TWI242711B (zh)
WO (1) WO2003003219A1 (zh)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922350B2 (en) * 2002-09-27 2005-07-26 Intel Corporation Reducing the effect of write disturbs in polymer memories
WO2004031966A1 (ja) * 2002-10-02 2004-04-15 Matsushita Electric Industrial Co., Ltd. 不揮発性記憶装置の制御方法
US8463998B1 (en) 2002-12-13 2013-06-11 Open Text S.A. System and method for managing page variations in a page delivery cache
US8312222B1 (en) * 2002-12-13 2012-11-13 Open Text, S.A. Event-driven regeneration of pages for web-based applications
US6845061B2 (en) * 2003-02-05 2005-01-18 Megawin Technology Co., Ltd. Method for quickly detecting the state of a nonvolatile storage medium
JP3928724B2 (ja) * 2003-02-20 2007-06-13 ソニー株式会社 記録媒体の記録制御方法および記録媒体の記録制御装置
JP2006519444A (ja) * 2003-03-04 2006-08-24 深▲せん▼市朗科科技有限公司 フラッシュメモリーのデータ管理方法
US7003621B2 (en) * 2003-03-25 2006-02-21 M-System Flash Disk Pioneers Ltd. Methods of sanitizing a flash-based data storage device
TWI220193B (en) * 2003-05-28 2004-08-11 Genesys Logic Inc Dynamic adjustment method of redundant block in non-volatile memory and related device thereof
DE10340010B4 (de) * 2003-08-29 2005-07-28 Infineon Technologies Ag Verfahren und Vorrichtung zum sicheren Speichern von Daten
JP2005108273A (ja) 2003-09-26 2005-04-21 Toshiba Corp 不揮発性半導体記憶装置
JP2005107608A (ja) * 2003-09-29 2005-04-21 Nec Electronics Corp 電子機器、不揮発性メモリ及び不揮発性メモリのデータ書き換え方法
JP2005190288A (ja) * 2003-12-26 2005-07-14 Tdk Corp メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
US7299314B2 (en) * 2003-12-31 2007-11-20 Sandisk Corporation Flash storage system with write/erase abort detection mechanism
KR100704618B1 (ko) * 2004-01-19 2007-04-10 삼성전자주식회사 플래시 메모리의 데이터 복구 장치 및 방법
DE102004005290B3 (de) * 2004-02-03 2005-07-21 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zur Absicherung von Daten in einem nichtflüchtigen Datenspeicher
JP3924568B2 (ja) 2004-02-20 2007-06-06 Necエレクトロニクス株式会社 フラッシュメモリにおけるデータアクセス制御方法、データアクセス制御プログラム
WO2005083573A1 (ja) * 2004-02-27 2005-09-09 Matsushita Electric Industrial Co., Ltd. 半導体メモリ装置
JP4722839B2 (ja) * 2004-05-19 2011-07-13 パナソニック株式会社 メモリ制御回路、不揮発性記憶装置及びメモリ制御方法
US7480749B1 (en) * 2004-05-27 2009-01-20 Nvidia Corporation Main memory as extended disk buffer memory
KR100632946B1 (ko) 2004-07-13 2006-10-12 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 프로그램 방법
JP4660316B2 (ja) * 2004-09-03 2011-03-30 パナソニック株式会社 不揮発性メモリ装置
KR100645044B1 (ko) * 2004-09-17 2006-11-10 삼성전자주식회사 높은 신뢰도를 갖는 불 휘발성 메모리 장치의 프로그램 방법
JP2006107326A (ja) * 2004-10-08 2006-04-20 Oki Electric Ind Co Ltd 半導体集積回路
KR100631765B1 (ko) 2004-10-18 2006-10-09 삼성전자주식회사 플래시 메모리의 데이터 처리 장치 및 방법
CN100345123C (zh) * 2004-11-27 2007-10-24 鸿富锦精密工业(深圳)有限公司 延长非易失性存储器使用寿命的装置及方法
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
JP4667092B2 (ja) * 2005-03-17 2011-04-06 富士通株式会社 情報処理装置、情報処理装置におけるデータ制御方法
US8244958B2 (en) 2005-05-09 2012-08-14 Sandisk Il Ltd. Method and system for facilitating fast wake-up of a flash memory system
US7797479B2 (en) * 2005-06-30 2010-09-14 Intel Corporation Technique to write to a non-volatile memory
US9092361B2 (en) 2005-07-15 2015-07-28 Panasonic Intellectual Property Management Co., Ltd. Nonvolatile storage device, memory controller, and defective region detection method
US20070083697A1 (en) * 2005-10-07 2007-04-12 Microsoft Corporation Flash memory management
JP4692231B2 (ja) * 2005-11-04 2011-06-01 株式会社デンソー 車両用の電子制御装置
EP1895418B1 (en) * 2005-12-09 2015-04-01 Panasonic Corporation Nonvolatile memory device, method of writing data, and method of reading out data
KR100703806B1 (ko) 2006-02-16 2007-04-09 삼성전자주식회사 비휘발성 메모리, 이를 위한 데이터 유효성을 판단하는장치 및 방법
CN101288056A (zh) * 2006-03-13 2008-10-15 松下电器产业株式会社 闪速存储器用的存储控制器
JP4501881B2 (ja) * 2006-03-23 2010-07-14 Tdk株式会社 メモリコントローラ及びフラッシュメモリシステム
JP4984666B2 (ja) 2006-06-12 2012-07-25 ソニー株式会社 不揮発性メモリ
US8307148B2 (en) 2006-06-23 2012-11-06 Microsoft Corporation Flash management techniques
US7711923B2 (en) * 2006-06-23 2010-05-04 Microsoft Corporation Persistent flash memory mapping table
KR100736103B1 (ko) 2006-06-27 2007-07-06 삼성전자주식회사 비휘발성 메모리, 상기 비휘발성 메모리의 데이터 유효성을판단하는 장치 및 방법
WO2008026466A1 (fr) * 2006-08-31 2008-03-06 Sharp Kabushiki Kaisha Système de fichiers
KR100827695B1 (ko) 2006-11-03 2008-05-07 삼성전자주식회사 연약 셀을 표식자로서 활용하는 불휘발성 반도체 메모리장치
US8151060B2 (en) 2006-11-28 2012-04-03 Hitachi, Ltd. Semiconductor memory system having a snapshot function
JP4743182B2 (ja) * 2006-12-07 2011-08-10 株式会社デンソー マイクロコンピュータ
US7934050B2 (en) * 2006-12-07 2011-04-26 Denso Corporation Microcomputer for flash memory rewriting
JP4301301B2 (ja) 2007-02-05 2009-07-22 ソニー株式会社 不揮発性半導体記憶装置およびその管理方法
US20100180072A1 (en) * 2007-06-22 2010-07-15 Shigekazu Kogita Memory controller, nonvolatile memory device, file system, nonvolatile memory system, data writing method and data writing program
JP5378197B2 (ja) * 2007-07-20 2013-12-25 パナソニック株式会社 メモリコントローラ、メモリカード、不揮発性メモリシステム
JP4497184B2 (ja) * 2007-09-13 2010-07-07 ソニー株式会社 集積装置およびそのレイアウト方法、並びにプログラム
JP2009080884A (ja) * 2007-09-26 2009-04-16 Panasonic Corp 不揮発性半導体記憶装置
JP5142685B2 (ja) * 2007-11-29 2013-02-13 株式会社東芝 メモリシステム
KR100963775B1 (ko) * 2008-08-01 2010-06-14 한양대학교 산학협력단 비휘발성 메모리의 데이터 보호 장치 및 방법
JP5267052B2 (ja) * 2008-10-30 2013-08-21 富士通株式会社 不揮発性メモリ・ドライバ
TWI396202B (zh) * 2008-11-14 2013-05-11 Phison Electronics Corp 錯誤校正控制器及其快閃記憶體晶片系統與錯誤校正方法
JP5317690B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
US9612954B2 (en) 2008-12-31 2017-04-04 Micron Technology, Inc. Recovery for non-volatile memory after power loss
TWI469148B (zh) * 2009-05-15 2015-01-11 Chi Mei Comm Systems Inc 快閃記憶體資料擦除系統及方法
KR101097245B1 (ko) * 2009-09-28 2011-12-21 삼성에스디아이 주식회사 배터리 팩, 및 데이터 플래시 동작 제어 방법
JP5360216B2 (ja) 2009-12-22 2013-12-04 トヨタ自動車株式会社 情報管理装置、及び情報管理方法
CN102841819A (zh) * 2011-06-20 2012-12-26 富泰华工业(深圳)有限公司 电子装置及其防止数据丢失的方法
JP5435107B2 (ja) * 2012-11-22 2014-03-05 富士通株式会社 不揮発性メモリ・ドライバ
US9047172B2 (en) 2012-11-29 2015-06-02 Intel Corporation Adaptive power control of memory map storage devices
CN104252883B (zh) * 2013-06-26 2017-06-13 深圳市江波龙电子有限公司 闪存管理方法和系统
CN103559138B (zh) * 2013-10-09 2016-03-30 华为技术有限公司 固态硬盘及其空间管理方法
US20150169438A1 (en) * 2013-12-18 2015-06-18 Infineon Technologies Ag Method and device for incrementing an erase counter
JP2016012335A (ja) * 2014-06-05 2016-01-21 株式会社Genusion 記憶装置及び記憶装置システム並びに情報端末
KR20160024530A (ko) * 2014-08-26 2016-03-07 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
CN106782660A (zh) * 2016-11-28 2017-05-31 湖南国科微电子股份有限公司 片上系统芯片过烧写保护方法及片上系统芯片
CN109920462B (zh) * 2019-03-01 2021-01-22 中国科学院微电子研究所 一种数据写入控制电路和控制方法
KR20220020143A (ko) * 2020-08-11 2022-02-18 삼성전자주식회사 오버라이트 처리를 수행하는 스토리지 시스템, 스토리지 시스템을 제어하는 호스트 시스템 및 스토리지 시스템의 동작 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2582487B2 (ja) * 1991-07-12 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体メモリを用いた外部記憶システム及びその制御方法
JP3171901B2 (ja) * 1992-02-05 2001-06-04 セイコーインスツルメンツ株式会社 不揮発性メモリカードの書換え方法
JPH05233426A (ja) * 1992-02-20 1993-09-10 Fujitsu Ltd フラッシュ・メモリ使用方法
JP2856621B2 (ja) * 1993-02-24 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 一括消去型不揮発性メモリおよびそれを用いる半導体ディスク装置
KR970008188B1 (ko) * 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
JP3411186B2 (ja) * 1997-06-06 2003-05-26 シャープ株式会社 不揮発性半導体記憶装置
JPH11282765A (ja) 1998-03-27 1999-10-15 Hitachi Ltd フラッシュメモリを使用した外部記憶装置
JP2000330850A (ja) * 1999-05-19 2000-11-30 Casio Comput Co Ltd フラッシュメモリ制御方法

Also Published As

Publication number Publication date
EP1403771A1 (en) 2004-03-31
CA2420986A1 (en) 2003-02-27
WO2003003219A1 (en) 2003-01-09
US20030189860A1 (en) 2003-10-09
KR20040014971A (ko) 2004-02-18
JP2003015929A (ja) 2003-01-17
EP1403771A4 (en) 2008-02-27
CN1465012A (zh) 2003-12-31
TWI242711B (en) 2005-11-01
KR100531192B1 (ko) 2005-11-28
CA2420986C (en) 2006-09-12
JP3692313B2 (ja) 2005-09-07
US6879528B2 (en) 2005-04-12

Similar Documents

Publication Publication Date Title
CN1232912C (zh) 非易失性存储器的控制方法
JP6262426B2 (ja) メモリシステム及びそれのブロック複写方法
US8904090B2 (en) Non-volatile memory device, devices having the same, and method of operating the same
CN109871333B (zh) 存取闪存模块的方法及相关的闪存控制器与电子装置
CN1536579A (zh) 存储卡
CN1571069A (zh) 非易失性存储系统
CN1795437A (zh) 用于块内页面分组的方法及设备
CN1702776A (zh) 存储卡、半导体装置和半导体存储器的控制方法
CN1201231C (zh) 数据存储器、数据处理系统和方法
CN1691178A (zh) 信息记录装置和信息记录方法
CN1652253A (zh) 存储卡和半导体器件
KR101731408B1 (ko) 플래시 메모리에 데이터를 기록하는 방법 및 관련 메모리 장치 및 플래시 메모리
CN1763729A (zh) 用于闪速存储器的数据处理设备和方法
CN109697170B (zh) 存取闪存模块的方法及相关的闪存控制器与电子装置
CN1525391A (zh) 非易失性存储卡
CN1892911A (zh) 设有以不同阈值电压存数据的存储单元的半导体存储装置
CN110633047A (zh) 管理闪存模块的方法及相关的闪存控制器及电子装置
CN1538456A (zh) 闪存存取装置及方法
CN1214326C (zh) 非易失性存储装置及其控制方法
CN1435758A (zh) 存储装置、数据处理方法以及数据处理程序
US11216381B2 (en) Data storage devices and data processing methods
CN1447243A (zh) 快闪存储器中快速且能防止不正常断电的演算法及其控制系统
JP2012068765A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN1751296A (zh) 记录媒体的记录控制方法及记录控制装置
CN1534509A (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
CX01 Expiry of patent term

Granted publication date: 20051221

CX01 Expiry of patent term