CN103699344A - 非易失性存储器装置及其操作方法 - Google Patents
非易失性存储器装置及其操作方法 Download PDFInfo
- Publication number
- CN103699344A CN103699344A CN201410016156.9A CN201410016156A CN103699344A CN 103699344 A CN103699344 A CN 103699344A CN 201410016156 A CN201410016156 A CN 201410016156A CN 103699344 A CN103699344 A CN 103699344A
- Authority
- CN
- China
- Prior art keywords
- volatile memory
- data
- solid block
- reformation
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000002407 reforming Methods 0.000 claims abstract description 43
- 239000007787 solid Substances 0.000 claims description 189
- 238000013507 mapping Methods 0.000 claims description 38
- 230000008521 reorganization Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 6
- 241001269238 Data Species 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000009183 running Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种非易失性存储器装置及其操作方法,其中非易失性存储器装置的非易失性存储器模块包括第一实体块与第二实体块。此操作方法包括以下步骤。对非易失性存储器装置进行重整,并将已完成重整的第一重整数据写入第一实体块的至少一第一页面。在于断电事件后再一次供电给非易失性存储器装置时,对第二实体块进行抹除程序。将第一实体块在断电事件之前所写入的第一重整数据复制到第二实体块的至少一第二页面上。继续对非易失性存储器装置进行重整,并将所述再一次供电给非易失性存储器装置之后所重整的第二重整数据写入第二实体块。本发明可避免在断电事件后再次供电给非易失性存储器装置时对非易失性存储器装置进行重整所造成的数据错误。
Description
技术领域
本发明是有关于一种存储器装置,且特别是有关于一种非易失性存储器装置及其操作方法。
背景技术
一般使用与非快闪(NAND flash)存储器做为数据储存介质的硬盘,例如固态硬盘(solid state disk,SSD)、嵌入式快闪存储卡(EmbeddedMultiMediaCard,eMMC)或移动硬盘等,通常包括多个实体块(block),且每一个实体块会包括多个页面(page)。由于一个被写满的实体块在被抹除之前无法重复地再被写入数据,因此当一个主机要更新实体块中的数据时,则会先将新数据写入至另一个未被写满的实体块(暂存区块)。此另一个实体块会储存有效数据,而原先的实体块中储存的待更新的数据(原始数据)则会被无效化并留存于原本的实体块中。因此,当暂存区块的空间已不够用时,这与非快闪存储器便需要对原始数据与新数据进行重整。
重整是将一个或是多个实体块上的有效数据搬移或复制至一个备用的实体块,借以让一个被写满有效及无效数据的实体块可以被抹除并于之后用以储存其他数据。所述重整操作为本领域技术人员所熟知,故不再赘述。然而,当这些实体块被重整时,倘若有断电事件发生,则这备用的实体块中可能会有已被写入重整数据却尚未完成重整操作的页面,而这些页面可能因此断电事件而造成数据损毁或错误。因此若实体块被重整时有断电事件发生,则硬盘可能会损失部份的数据。
另一方面,一般来说,硬盘(如:固态硬盘、eMMC等)在使用时,需要使用信息表来记录逻辑地址至实体地址的映射关系。而在不断执行主机的众多数据存取指令或者重整指令的过程中,由于逻辑地址与实体地址的对应关系可被对应地改变,因此信息表的内容可被不断地更新。然而,随着固态硬盘所写入的数据增多,信息表所记录的内容也会随着增加。因此,传统固态硬盘需要使用非常大的储存空间来放置此信息表。
此外,上述的硬盘可能具有单层存储单元(Single Level Cell,SLC)NAND型快闪存储器、多层存储单元(Multi Level Cell,MLC)NAND型快闪存储器、三层存储单元(Triple Level Cell,TLC)NAND型快闪存储器或其他型快闪存储器。其中,三层存储单元快闪存储器具有较高的位错误率。
发明内容
本发明提供一种非易失性存储器装置与其操作方法,其可避免在断电事件后再次供电给非易失性存储器装置时,对非易失性存储器装置进行重整所造成的数据错误。
本发明提供一种操作方法,其可有效减少地址映射表(address mappingtable)的数据量。
本发明提供一种操作方法,其可兼顾数据写入的正确性以及数据写入速度。
本发明提出一种非易失性存储器装置的操作方法,其中非易失性存储器装置的非易失性存储器模块包括第一实体块与第二实体块。此操作方法包括:对非易失性存储器装置进行重整,并将已完成重整的第一重整数据写入第一实体块的至少一第一页面;在于断电事件后再一次供电给非易失性存储器装置时,对第二实体块进行抹除程序;在抹除程序完成后将第一实体块在断电事件之前所写入的第一重整数据复制到第二实体块的至少一第二页面上,其中所述至少一第二页面对应于所述至少一第一页面;以及继续对非易失性存储器装置进行重整,并将再一次供电给非易失性存储器装置之后所继续重整的第二重整数据写入第二实体块。
本发明另提出一种非易失性存储器装置,其包括非易失性存储器模块以及存储器控制器。非易失性存储器模块包括第一实体块与第二实体块,其中第一实体块具有至少一第一页面,第二实体块具有至少一第二页面。存储器控制器耦接于非易失性存储器模块。当存储器控制器对非易失性存储器装置进行重整时,存储器控制器将已完成重整的第一重整数据写入第一实体块的所述至少一第一页面。在于断电事件后再一次供电给非易失性存储器装置时,存储器控制器对第二实体块进行抹除程序,并在抹除程序完成后将第一实体块在断电事件之前所写入的第一重整数据复制到第二实体块的所述至少一第二页面上,其中所述至少一第二页面对应于所述至少一第一页面,以及存储器控制器继续对非易失性存储器装置进行重整,并将再一次供电给非易失性存储器装置之后所继续重整的第二重整数据写入第二实体块。
本发明另提出一种非易失性存储器装置的操作方法,非易失性存储器装置的非易失性存储器模块包括至少一实体块。此操作方法包括:将数据写入所述至少一实体块中;判断条件是否成立,其中所述条件包括所述数据的多个逻辑地址为连续且所述数据位在同一个实体块的多个连续页面中;以及当所述条件成立时,将所述数据的起始逻辑地址、所述数据的起始实体地址与所述数据的数据长度分别记录在执行长度映射表(run-length mapping table)中的逻辑地址栏位、实体地址栏位以及长度栏位。
本发明另提出一种非易失性存储器装置的操作方法,非易失性存储器装置的非易失性存储器模块包括多个操作于单层存储单元模式的实体块以及多个操作于三层存储单元模式的实体块。此操作方法包括:将数据写入所述操作于单层存储单元模式的实体块其中之一;当在非易失性存储器模块内所述操作于单层存储单元模式的实体块之中的三个实体块的所有页面均被使用时,依据一条件而决定对所述三个实体块进行内部重整或是外部重整,以将所述三个实体块的数据重整至操作于三层存储单元模式的所述实体块中的择定实体块。
基于上述,在于断电事件后再一次供电给非易失性存储器装置时,存储器控制器会将已完成重整的重整数据复制至另一实体块,并利用所述另一实体块来继续写入下一个重整数据。借此,可提高非易失性存储器装置进行重整时的正确性。此外,在将数据写入非易失性存储器模块的实体块时,存储器控制器可通过执行长度映射表,来记录具有连续逻辑地址且位在同一个实体块的多个连续页面中的重整数据,以有效减少地址映射表的数据量。再者,非易失性存储器模块可选择通过外部的存储器控制器来对写入操作于三层存储单元模式的实体块的数据进行纠错,或者选择直接通过非易失性存储器模块内部的控制电路将数据进行重整,借以兼顾数据写入的正确性以及数据写入速度。
附图说明
图1是依照本发明的一实施例所绘示的非易失性存储器装置的方块示意图。
图2是依照本发明的一实施例所绘示图1的存储器控制器的方块示意图。
图3是依照本发明一实施例所绘示的非易失性存储器装置的操作方法流程示意图。
图4与图5A至图5D为说明非易失性存储器装置进行重整的示意图。
图6是依照本发明一实施例所绘示的非易失性存储器装置的操作方法流程示意图。
图7A是依照本发明一实施例所绘示的第一重整数据的逻辑地址信息与实体地址信息的示意图。
图7B是依照本发明一实施例所绘示的执行长度映射表的示意图。
图7C是依照本发明一实施例所绘示的页映射表的示意图。
图8是依照本发明一实施例所绘示的操作方法流程示意图。
具体实施方式
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
图1是依照本发明的一实施例所绘示的非易失性存储器装置的方块示意图。请参照图1,非易失性存储器装置100例如是以快闪存储器(flash memory)作为储存介质的快闪存储器储存装置,例如固态硬盘(Solid State Disk,SSD)、嵌入式快闪存储卡(Embedded MultiMediaCard,eMMC)或移动硬盘等硬盘。在一些应用情境中,非易失性存储器装置100可做为储存放置各种快取数据(cache data)的快取空间(cache space)。在另一些应用情境中,非易失性存储器装置100可做为大容量储存设备(mass storage device)。此外,本实施例的非易失性存储器装置100可耦接于主机10,以供主机10存取数据,其中主机10可以是个人计算机、笔记型计算机、平板计算机、智能型手机或是其他计算平台/装置。非易失性存储器装置100可设置于主机10的内部,并与主机10电性连接。或者,非易失性存储器装置100也可以利用外接的方式与主机10电性连接,例如,通过通用序列总线(Universal Serial Bus,USB)等各式总线与主机10电性连接等等,本实施例不对其加以限制。
非易失性存储器装置100包括一个存储器控制器110以及一或多个非易失性存储器模块120,其中存储器控制器110耦接于非易失性存储器模块120。本实施例并不限制非易失性存储器模块120的数量。存储器控制器110可以用硬件型式或固件型式实作之。例如,存储器控制器110可能包括多个逻辑门。存储器控制器110可根据主机10所下达的指令在非易失性存储器模块120中进行数据的写入、读取、抹除、重整与/或其他运作。
非易失性存储器模块120具有至少一实体块以储存主机10所写入的数据。为了方便说明,在此以非易失性存储器模块120所包括的第一实体块122与第二实体块124为例,但本实施例并不限制实体块的数量。详细而言,第一实体块122具有至少一页面122p。第二实体块124具有至少一页面124p,其中属于同一个实体块的不同页面可被独立地写入,且属于同一个实体块的所有页面可以被同时地抹除。举例而言,每一实体块可由128个页面所组成,但不限于此。在其他实施例中,每一实体块也可由64个页面、256个页面或其他任意个页面所组成。在本实施例中,非易失性存储器模块120例如是单层存储单元(Single Level Cell,SLC)NAND型快闪存储器、多层存储单元(Multi Level Cell,MLC)NAND型快闪存储器、三层存储单元(Triple LevelCell,TLC)NAND型快闪存储器或其他类型快闪存储器。其中,SLC NAND型快闪存储器的每个存储单元可储存1个位的数据,MLC NAND型快闪存储器的每个存储单元可储存2个位的数据,而TLC NAND型快闪存储器的每个存储单元可储存3个位的数据。
图2是依照本发明的一实施例所绘示图1的存储器控制器110的方块示意图。请同时参照图1与图2,存储器控制器110包括微处理单元202、主机接口204、存储器接口206、缓冲存储器208以及错误检查与校正单元210。
微处理单元202用以控制存储器控制器110的整体运作。例如,微处理单元202可以控制存储器控制器110以执行本实施例的操作方法(容后详述),来对非易失性存储器装置100中的非易失性存储器模块120进行重整,或者将数据写入非易失性存储器模块120中。此外,存储器控制器110会维护一个或多个逻辑转实体地址(logical to physical address)的信息表(或称为地址映射表),以记录数据在主机10的逻辑地址与在非易失性存储器模块120中实体地址的映射关系。借此,当主机10欲存取某一逻辑地址时,微处理单元202便可根据所述信息表取得对应的实体地址,并于非易失性存储器模块120中的所述实体地址上存取数据。
主机接口204是耦接于微处理单元202,并且用以接收主机10所传送的指令与数据。也就是说,主机10所传送的指令与数据会通过主机接口204来传送至微处理单元202。在本实施例中,主机接口204例如是相容于序列先进附件(Serial Advanced Technology Attachment,SATA)标准的接口电路。然而,必须了解的是本发明不限于此。例如在其他实施例中,主机接口204亦可以是相容于并列先进附件(Parellel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component InterconnectExpress,PCI Express)标准、通用序列总线(Universal Serial Bus,USB)标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(UltraHigh Speed-II,UHS-II)接口标准、安全数字(Secure Digital,SD)接口标准、存储棒(Memory Stick,MS)接口标准、多媒体储存卡(Multi Media Card,MMC)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的数据传输标准的接口电路。
存储器接口206耦接于微处理单元202并且用以存取非易失性存储器模块120。存储器接口206可以将数据信号转换为非易失性存储器模块120所能接受的格式。也就是说,微处理单元202可以将欲写入至非易失性存储器模块120的数据经由存储器接口206储存至非易失性存储器模块120中。
缓冲存储器208耦接于微处理单元202并且用以暂存来自于主机10的数据与指令,或是储存微处理单元202对非易失性存储器模块120的管理信息(例如上述的信息表),或是暂存来自于非易失性存储器模块120的数据等。在此,缓冲存储器208例如是动态随机存取存储器(dynamic random accessmemory,DRAM)、静态随机存取存储器(static random access memory,SRAM)或是其他易失性存储器(volatile memory)等。
错误检查与校正单元210耦接于微处理单元202并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当微处理单元202从主机10中接收到写入指令时,错误检查与校正单元210会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECCCode),并且微处理单元202会将对应此写入指令的数据与对应的错误检查与校正码写入至非易失性存储器模块120中。之后,微处理单元202从非易失性存储器模块120中读取数据时会同时读取此数据对应的错误检查与校正码,而错误检查与校正单元210会依据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
底下即搭配上述非易失性存储器装置100来说明本实施例的操作方法各步骤。图3是依照本发明一实施例所绘示的存储器装置100的操作方法流程图。图4以及图5A至图5D为说明非易失性存储器装置100进行重整的示意图。请参照图1、图3与图4,于步骤S302,当存储器控制器110对非易失性存储器装置100进行重整时,存储器控制器110将已完成重整的第一重整数据写入第一实体块122的至少一个页面122p。例如在图4中,以标示为P1-0~P1-1的所述页面122p来存放已完成重整的重整数据D0,而以标示为P1-2~P1-x的所述页面122p来存放已完成重整的重整数据D1。重整数据D0与D1依序被写入所述至少一个页面122p,其中x为正整数。值得注意的是,对于多层存储单元(Multi Level Cell,MLC)及三层存储单元(Triple Level Cell,TLC)NAND型快闪存储器而言,其具有成对页面(Pair Page)与多页面于同一个存储单元的特性,即一个存储单元中具有对应的两个页面或三个页面的位数据。另外,对于同一实体块而言,这些成对页面可能是连续或是不连续,其端视不同的设计而定。例如在图4中,假设标示为P1-x及P1-(x-1)的所述页面122p对应同一个存储单元,则此为连续的成对页面,而假设标示为P1-x及P1-(x-2)的所述页面122p对应同一个存储单元,则此为不连续的成对页面。
此外,在本实施例中,若没有发生断电事件,则在将重整数据D1写入图4中标示为P1-2至P1-x的这些页面122p之后,存储器控制器110可从重整数据D1的最后一个页面122p所接续的页面,即自标示为P1-(x+1)的这个页面122p开始,继续储存下一笔重整数据。假设在将所述下一笔重整数据写入第一实体块122的过程中发生断电事件,使得所述下一笔重整数据未能完整写入第一实体块122。重新上电后,存储器控制器110可再一次将所述下一笔重整数据写入第一实体块122,以及进行后续数据重整操作。然而,在没有应用本实施例所述技术的情况下,重新上电后在将所述下一笔重整数据再一次写入第一实体块122的过程中,所述下一笔重整数据可能会发生错误/逸失。例如所述下一笔重整数据未完整地写入标示为P1-(x+1)的这个页面122p便发生断电事件,则重新上电后存储器控制器110可根据标示为P1-0至P1-x的这个页面122p中的对应信息而判断出重整数据D1已完整地写入到标示为P1-x的这个页面122p。在没有应用本实施例所述技术的情况下,重新上电后标示为P1-(x+1)的这个页面122p本身与它的成对页面(Pair Page)的数据会发生错误/逸失。
值得一提的是,存储器控制器110可提供一个信息表来记录对应于第一重整数据D0的至少一实体地址信息,其中实体地址信息分别指出第一实体块122中标示为P1-0~P1-1的所述页面122p的实体地址。因此,当主机10欲存取第一实体块122中的重整数据D0时,存储器控制器110可根据信息表而在第一实体块122中对重整数据D0进行存取。此外,当存储器控制器110将已完成重整的重整数据D0写入第一实体块122的其中一个页面122p时,存储器控制器110可利用一个指标,来记录目前已写入已完成重整的重整数据D0的后一个页面122p的实体地址。其中,指标例如是被储存在存储器控制器110的缓冲存储器208(绘示于图2)中,且可根据存储器控制器110所写入的实体块的页面进行更新,以记录相同或不同的实体块中页面的实体地址。
假设在未进行本发明的步骤S304~S308的情况下,当在断电事件后再一次供电给非易失性存储器装置100时,非易失性存储器装置100可能会发生重整数据D1错误/逸失的问题。所述在未进行步骤S304~S308的情况下发生重整数据D1错误/逸失的原因说明如下。
举例来说,如图4所示,倘若存储器控制器110将重整数据D1写入第一实体块122中标示为P1-x的页面122p时有一断电事件发生,使得存储器控制器110已执行的写入动作被中断,则除了正在写入的页面P1-x可能受损之外,也可能会连带影响同一存储单元中的其他成对页面(Pair Page,例如标示为P1-(x-1)或P1-(x-2)的所述页面122p),而导致一个或多个页面数据错误。换言之,若重整过程中发生断电事件,则对于MLC NAND型快闪存储器而言,可能会产生连续或不连续成对页面的数据错误。或者,对于TLC NAND型快闪存储器而言,则可能会产生连续或不连续的三个页面的数据错误。本发明实施例的步骤S304~S308可以有效防止在断电与重新上电的过程中重整数据发生错误/逸失,以下即搭配图5A至图5D来进行说明。
请参照图5A,存储器控制器110将数据D0写入第一实体块122中标示为P1-0或P-1的页面122p,其中数据D0例如为已完成重整的重整数据。在将数据D0写入第一实体块122之后,存储器控制器110可继续储存下一笔重整数据至第一实体块122。在此将假设在将所述下一笔重整数据写入第一实体块122的过程中发生断电事件,使得所述下一笔重整数据未能完整写入第一实体块122。在于断电事件后再一次供电给非易失性存储器装置100时,如图5B所示,存储器控制器110可以进行步骤S304,以从多个自由实体块选择一个实体块(例如第二实体块124),并对第二实体块124进行抹除程序。在此,存储器控制器110例如是抹除第二实体块124中所储存的数据。例如,图5B所绘示的第二实体块124,表示于断电事件后再一次供电给非易失性存储器装置100时,第二实体块124中所储存的数据已被抹除。
于步骤S306,在上述抹除程序完成后,存储器控制器110会搜寻在断电事件之前所完整写入第一实体块122的有效数据。例如,在重新上电后,存储器控制器110可根据页面122p中的对应信息,而判断出这些重整数据D0在断电事件之前已完整地写入到第一实体块122。因此,存储器控制器110在步骤S306中将第一实体块122在断电事件之前所完整写入的重整数据D0复制到第二实体块124的至少一个页面124p上,其中所述至少一个页面124p对应于所述至少一个页面122p。例如于图5C,在第二实体块124中标示为P2-0~P2-1的所述页面124p来存放从第一实体块122复制而来的重整数据D0。
于步骤S308,存储器控制器110会继续对非易失性存储器装置100进行重整,并将再一次供电给非易失性存储器装置100之后所继续重整的第二重整数据写入第二实体块124,而不写入第一实体块122。例如在图5D中,在完成重整数据D0复制至第二实体块124之后,存储器控制器110可以继续对非易失性存储器装置100进行重整而获得第二重整数据D2,并将第二重整数据D2存放在第二实体块124中标示为P2-2~P2-y的所述页面124p上,其中y为正整数。在一实施例中,等到第二实体块124完成数据重整作业后,存储器控制器110还可选择性地对第一实体块122进行抹除程序,来释放第一实体块122的储存空间。
此外,存储器控制器110还可更新信息表的实体地址信息。其中,实体地址信息分别指出对应于第二实体块124中标示为P2-0~P2-y的页面124p的实体地址。如此一来,存储器控制器110便可根据信息表而存取非易失性存储器装置100中经重整的数据(包括断电事件前所重整的第一重整数据D0,以及断电事件后再一次供电给非易失性存储器装置100所重整的第二重整数据D2)。
在此说明的是,倘若存储器控制器110在将第二重整数据D2存入至第二实体块124的过程中,又有另一断电事件发生而使存储器控制器110正在进行的重整动作再一次中断时,则存储器控制器110会再一次执行与上述步骤S304~S306。亦即,在于断电事件后再一次供电给存储器装置100时,存储器控制器110会对另一个实体块进行初始化程序,以及在上述初始化程序完成后,存储器控制器110会再一次将第一实体块122在断电事件之前所写入的第一重整数据D0复制到所述另一个实体块对应的页面上。并且,存储器控制器110会继续对存储器装置100进行重整而获得第二重整数据D2,并将所述而获得第二重整数据D2写入所述另一个实体块。
基于上述,由于在于断电事件后再一次供电给非易失性存储器装置100时,存储器控制器110会将已完成重整的第一重整数据D0从原先的第一实体块122复制到已经过抹除程序的第二实体块124。并且,存储器控制器110可将电源恢复供应后所重整的第二重整数据D2(即接续第一重整数据D0后的重整数据)写入第二实体块124,而不写入第一实体块122。如此一来,当存储器控制器110对非易失性存储器装置100进行重整时,若有断电事件又再次恢复供电的情况,则由于断电事件之前的第一重整数据D0被安全的保留于第一实体块122,因此存储器控制器110可避免于第一实体块122因断电被破坏所造成的错误,借以提高重整数据的正确性。
值得一提的是,上述存储器控制器110在将已完成重整的重整数据写入实体块(例如实体块122、124或其他实体块)中的至少一页面时,还可通过执行长度映射表(run-length mapping table),来记录具有连续逻辑地址且位在同一个实体块的多个连续页面中的重整数据,以减少用来储存重整数据的逻辑地址信息以及实体地址信息的空间。为了方便说明,底下以存储器控制器110将已完成重整的重整数据写入非易失性存储器模块120的至少一实体块时的步骤为例,来说明将重整数据写入实体块中的操作方法。
图6是依照本发明一实施例所绘示的非易失性存储器装置的操作方法流程示意图。请同时参照图1与图6,于步骤S602,存储器控制器110将重整数据写入非易失性存储器模块120的至少一实体块,例如是第一实体块122或第二实体块124。于步骤S604,存储器控制器110会判断第一条件是否成立,其中第一条件包括所述重整数据的多个逻辑地址为连续且所述重整数据位在同一个实体块的多个连续页面中。举例来说,若存储器控制器110将具有多个连续逻辑地址的重整数据写入非易失性存储器模块120的第一实体块122的多个连续页面中,则第一条件成立。然而,若存储器控制器110将重整数据写入非易失性存储器模块120的第一实体块122的非连续页面,则第一条件不成立。
当第一条件成立时,则如步骤S606所示,存储器控制器110会将重整数据的起始逻辑地址、重整数据的起始实体地址与重整数据的数据长度分别记录在执行长度映射表中的逻辑地址栏位、实体地址栏位以及长度栏位,其中存储器控制器110可根据重整数据的起始实体地址与终止实体地址而得知重整数据的数据长度。
图7A是依照本发明一实施例所绘示被写入非易失性存储器模块120的重整数据的逻辑地址信息与实体地址信息的关系示意图。图7B是依照本发明一实施例所绘示的执行长度映射表的示意图。在图7B所示实施例中,执行长度映射表的逻辑地址栏位为逻辑页地址(logical page address)栏位,而执行长度映射表中的实体地址栏位包括实体块地址(physical block address)栏位以及实体页地址(physical page address)栏位。从图6A的逻辑地址信息可知重整数据的逻辑页地址为连续,例如逻辑地址为n1~n1+4。并且,根据图7A的实体地址信息可知重整数据是位在同一个实体块的多个连续页面中,例如实体块地址皆是为m1,而实体页地址为k1~k1+4。存储器控制器110可根据此重整数据的起始实体页地址k1与终止实体页地址k1+4而得知此重整数据的数据长度为5。
因此,存储器控制器110在步骤S604会判断图7A所例举的重整数据符合第一条件,所以存储器控制器110在步骤S606将此重整数据的地址映射关系记录在执行长度映射表中。例如图7B所示,存储器控制器110会将此重整数据的起始逻辑页地址(在此例为n1)、实体块地址(在此例为m1)、起始实体页地址(在此例为k1)与数据长度(在此例为5)分别记录在执行长度映射表中的逻辑页地址栏位、实体块地址栏位、实体页地址栏位以及长度栏位。
另一方面,当图6的步骤S604判断第一条件不成立时,则存储器控制器110会进行步骤S608。如步骤S608所示,存储器控制器110会将重整数据的所述多个逻辑地址与多个实体地址分别记录在页映射表(page mapping table)中的逻辑地址栏位与实体地址栏位。例如,图7C是依照本发明一实施例所绘示的页映射表的示意图。在图7C的页映射表中,重整数据位在不同实体块的非连续页面中,其中逻辑地址栏位的逻辑页地址栏位记录了重整数据的逻辑页地址为n1、n2、n3、n4与n5,实体地址栏位的实体块地址栏位记录了重整数据的实体块地址为m1、m2、m3、m4与m5,而实体地址栏位的实体页地址栏位记录了重整数据的实体页地址为k1、k2、k3、k4与k5。
另需说明的是,上述图6的操作方法,不限定应用于重整数据的写入操作。例如,当存储器控制器110从主机10接收一数据写入指令而对应地将一笔数据写入非易失性存储器模块120后,存储器控制器110也可根据上述图6所示第一条件来进行判断,以选择利用执行长度映射表或者页映射表来记录数据的逻辑地址与实体地址的映射关系信息。亦即,当存储器控制器110将一笔数据写入非易失性存储器模块120的至少一实体块后,若图6的步骤S604判断第一条件成立,则存储器控制器110会选择利用执行长度映射表来记录数据的逻辑地址与实体地址的映射关系信息。然而,若图6的步骤S604判断第一条件不成立时,则存储器控制器110会选择利用页映射表来记录数据的逻辑地址与实体地址的映射关系信息。
基于上述,本实施例的存储器控制器110在将数据写入非易失性存储器模块120的至少一实体块时,可通过执行长度映射表,来记录具有连续逻辑地址且位在同一个实体块的多个连续页面中的重整数据,以有效储存对应于重整数据的逻辑地址信息以及实体地址信息。借此,映射表的数据量可以大幅减少。
值得一提的是,本实施例的非易失性存储器模块120可具有操作于单层存储单元(Single Level Cell,SLC)模式的多个实体块以及操作于三层存储单元(Trinary Level Cell,TLC)模式的多个实体块。在将数据写入TLC模式实体块的操作过程中,所述数据会被暂存于SLC模式的实体块中,而不会直接写入TLC模式实体块。当在非易失性存储器模块120内操作于SLC实体块之中的三个实体块的所有页面均被使用时,也就是所述三个SLC实体块的暂存空间均被用尽时,所述三个SLC实体块会进行重整,以将所述三个SLC实体块的数据重整/搬移至非易失性存储器模块120内操作于TLC模式的实体块中。在此,假设第一实体块122与第二实体块124是操作于TLC模式,则当非易失性存储器模块120内操作于SLC模式的实体块之中的三个实体块的所有页面均被使用时,存储器控制器110还可对所述三个SLC实体块进行重整,以将所述三个SLC实体块的数据重整至非易失性存储器模块120内操作于TLC模式的第一实体块122或第二实体块124中。底下再举一实施例来进行说明。
图8是依照本发明一实施例所绘示的操作方法流程图。底下即搭配上述非易失性存储器装置100来说明本实施例的操作方法各步骤。请参照图1与图8,存储器控制器110在步骤S801中将数据写入操作于SLC模式的实体块其中之一。于步骤S802,存储器控制器110判断是否需要将SLC实体块的数据搬移至TLC实体块。当在非易失性存储器模块120内操作于SLC模式的多个实体块之中的三个实体块的所有页面均被使用时,也就是步骤S802的判断结果为“SLC实体块的数据需要搬移至TLC实体块”,存储器控制器110会接着进行步骤S803。在步骤S803中,存储器控制器110依据一第二条件而决定对所述三个SLC实体块进行“内部重整”或是“外部重整”,以将所述三个SLC实体块的数据重整至非易失性存储器模块120内操作于TLC模式的实体块中的一个择定实体块。反之,当所述三个SLC实体块尚有页面未被使用时,也就是步骤S802的判断结果为“SLC实体块的数据尚不需搬移至TLC实体块”,存储器控制器110会返回至步骤S801,以等待下一笔数据。
于图8所示实施例中,步骤S803包含子步骤S804、S806与S808。于步骤S804,存储器控制器110会判断所述第二条件是否成立。此第二条件包括:非易失性存储器模块120内操作于TLC模式的实体块中任一个的抹除(erasing)次数已达第一门槛值,或是非易失性存储器模块120内操作于TLC模式的实体块中任一个的位错误率已达第二门槛值。例如,非易失性存储器模块120可以记录操作于TLC模式的实体块的抹除次数。并且/或者,存储器控制器110可以记录这些TLC实体块各自的位错误率。例如,当存储器控制器110从TLC模式的实体块中读取数据时,可通过错误检查与校正电路210对从TLC实体块读出的数据进行错误检查与校正(请参照于图2的相关说明),借以获得所述操作于TLC模式的实体块的位错误率。
当步骤S804判断所述第二条件成立时,则非易失性存储器装置100进行所述外部重整,以将操作于SLC模式的所述三个实体块的数据重整至操作于TLC模式的所述择定实体块。所述外部重整如步骤S806所示。于步骤S806中,非易失性存储器模块120内的所述三个SLC实体块的数据会被读取至非易失性存储器模块120外部的存储器控制器110,并由所述存储器控制器110对所述三个SLC实体块的数据进行纠错(例如进行错误检查与校正),以及将纠错后的数据从所述存储器控制器110写入操作于TLC模式的所述择定实体块中(例如写入第一实体块122或第二实体块124中)。具体而言,存储器控制器110中的错误检查与校正电路210(绘示于图2)可对所述三个SLC实体块的数据进行纠错,并且经纠错的数据写入操作于TLC模式的第一实体块122或第二实体块124,以降低TLC实体块中数据的位错误率。在完成所述外部重整后,所述三个SLC实体块中的数据会被抹除以释放存储器空间。
另一方面,当步骤S804判断所述第二条件不成立时,则非易失性存储器装置100进行所述内部重整,以将操作于SLC模式的所述三个实体块的数据重整至操作于TLC模式的所述择定实体块。与所述外部重整的差别在于,所述内部重整在将所述三个SLC实体块的数据搬移至TLC实体块的过程中并不会进行纠错作业。所述内部重整如步骤S808所示。于步骤S808中,由非易失性存储器模块120内部的控制电路将所述三个SLC实体块的数据重整至操作于TLC模式的所述择定实体块中(例如写入第一实体块122或第二实体块124中)。具体来说,非易失性存储器模块120内部的此控制电路可执行以硬件型式或固件型式实作的多个逻辑门或控制指令,以控制所述三个SLC实体块中的数据重整所分别写入的操作于TLC模式的第一实体块122或第二实体块124。也就是说,控制电路可根据预先设定的指令,以自动将数据重整写入对应的操作于TLC模式的实体块。借此,当进行数据重整以将所述三个SLC实体块中的数据写入TLC模式的实体块时,所述内部重整可具有较高的数据写入速度。在完成所述内部重整后,所述三个SLC实体块中的数据会被抹除以释放存储器空间。
基于上述,非易失性存储器装置100在步骤S804中可根据第二条件的成立与否,判断是否通过非易失性存储器模块120外部的存储器控制器110来对非易失性存储器模块120进行数据重整作业,例如将所述三个SLC实体块中的数据搬移至TLC模式的实体块。在数据重整作业中,存储器控制器110在步骤S806中可以对写入于TLC实体块的数据进行纠错,以降低TLC实体块中数据的位错误率。或者,非易失性存储器装置100在步骤S808中通过非易失性存储器模块120内部的控制电路将数据直接从原本的实体块搬移至TLC实体块而不进行纠错,以获得较高的数据重整速度。借此,本实施例可同时兼顾数据写入的正确性以及数据写入速度。
综上所述,在本实施例的非易失性存储器装置与其操作方法中,当在于断电事件后再一次供电给非易失性存储器装置时,存储器控制器110会将已完成重整的第一重整数据从第一实体块复制到已经过抹除程序的第二实体块,并且将电源恢复供应后所重整的第二重整数据接续第一重整数据写入第二实体块。如此一来,若有断电事件又再次恢复供电的情况,则存储器控制器110可避免于同一实体页重复写入重整数据所造成的错误,借以提高重整数据的正确性。此外,在本实施例的操作方法中,存储器控制器110在将数据写入非易失性存储器模块120的至少一实体块时,可通过执行长度映射表,来记录具有连续逻辑地址且位在同一个实体块的多个连续页面中的数据,以减少映射表的数据量。在本实施例另一操作方法可判断是否通过非易失性存储器模块120外部的存储器控制器110来对写入非易失性存储器模块120内TLC实体块的数据进行纠错,或者通过非易失性存储器模块120内部的控制电路将数据直接从原本的实体块搬移至TLC实体块而不进行纠错。借此,本实施例可同时兼顾数据写入的正确性以及数据写入速度。
以上所述仅为本发明较佳实施例,然其并非用以限定本发明的范围,任何熟悉本项技术的人员,在不脱离本发明的精神和范围内,可在此基础上做进一步的改进和变化,因此本发明的保护范围当以本申请的权利要求书所界定的范围为准。
附图中符号的简单说明如下:
100:非易失性存储器装置
10:主机
110:存储器控制器
120:非易失性存储器模块
122、124:实体块
122p、124p:页面
202:微处理单元
204:主机接口
206:存储器接口
208:缓冲存储器
210:错误检查与校正单元
D0:第一重整数据
D1:重整数据
D2:第二重整数据
P1-0~P1-(x+1)、P2-0~P2-y:页面
n1、n1+1~n1+4、n1、n2、n3、n4、n5:逻辑页地址
m1、m2、m3、m4、m5:实体块地址
k1、k1+1~k1+4、k2、k3、k4、k5:实体页地址
S302~S308:非易失性存储器装置的操作方法各步骤
S602~S608、S801~S808:操作方法各步骤。
Claims (27)
1.一种非易失性存储器装置的操作方法,其特征在于,该非易失性存储器装置的一非易失性存储器模块包括一第一实体块与一第二实体块,该操作方法包括:
对该非易失性存储器装置进行重整,并将已完成重整的一第一重整数据写入该第一实体块的至少一第一页面;
在于一断电事件后再一次供电给该非易失性存储器装置时,对该第二实体块进行一抹除程序;
在该抹除程序完成后,将该第一实体块在该断电事件之前所写入的该第一重整数据复制到该第二实体块的至少一第二页面上,其中所述至少一第二页面对应于所述至少一第一页面;以及
继续对该非易失性存储器装置进行重整,并将再一次供电给该非易失性存储器装置之后所继续重整的一第二重整数据写入该第二实体块。
2.根据权利要求1所述的非易失性存储器装置的操作方法,其特征在于,在将该第一实体块在该断电事件之前所写入的该第一重整数据复制到该第二实体块的所述第二页面上的步骤包括:取得在该断电事件之前已完整写入该第一实体块的该第一重整数据,并将该第一重整数据复制到该第二实体块的所述第二页面上。
3.根据权利要求1所述的非易失性存储器装置的操作方法,其特征在于,
在对该非易失性存储器装置进行重整、并将已完成重整的该第一重整数据写入该第一实体块的所述第一页面的步骤包括:提供一信息表,用以记录至少一实体地址信息,所述实体地址信息分别指出该第一实体块的所述第一页面的多个第一实体地址;以及
在继续对该非易失性存储器装置进行重整、并将所述再一次供电给该非易失性存储器装置之后所重整的该第二重整数据写入该第二实体块的步骤包括:更新该信息表的所述实体地址信息,使所述实体地址信息分别从指出所述第一实体地址、改成指出该第二实体块的所述第二页面的多个第二实体地址。
4.根据权利要求1所述的非易失性存储器装置的操作方法,其特征在于,该断电事件造成该第一实体块的至少二个该第一页面的数据错误,而具有错误数据的所述页面对应同一存储单元。
5.根据权利要求1所述的非易失性存储器装置的操作方法,其特征在于,所述将已完成重整的该第一重整数据写入该第一实体块的至少一第一页面的步骤包括:
将该第一重整数据写入该第一实体块中;
判断一条件是否成立,其中该条件包括该第一重整数据的多个逻辑地址为连续且该第一重整数据位在同一个实体块的多个连续页面中;以及
当该条件成立时,将该第一重整数据的起始逻辑地址、该第一重整数据的起始实体地址与该第一重整数据的数据长度分别记录在一执行长度映射表中的一逻辑地址栏位、一实体地址栏位以及一长度栏位。
6.根据权利要求5所述的非易失性存储器装置的操作方法,其特征在于,该执行长度映射表中的该逻辑地址栏位为一逻辑页地址栏位,该执行长度映射表中的该实体地址栏位包括一实体块地址栏位以及一实体页地址栏位。
7.根据权利要求5所述的非易失性存储器装置的操作方法,其特征在于,所述将已完成重整的该第一重整数据写入该第一实体块的至少一第一页面的步骤还包括:
当该条件不成立时,将该第一重整数据的所述多个逻辑地址与该第一重整数据的多个实体地址分别记录在一页映射表中的一逻辑地址栏位与一实体地址栏位。
8.根据权利要求1所述的非易失性存储器装置的操作方法,其特征在于,还包括:
当在该非易失性存储器模块内操作于单层存储单元模式的多个实体块之中的三个实体块的所有页面均被使用时,对所述三个实体块进行重整,以将所述三个实体块的数据重整至该非易失性存储器模块内操作于三层存储单元模式的该第一实体块或该第二实体块中。
9.根据权利要求8所述的非易失性存储器装置的操作方法,其特征在于,对所述三个实体块进行重整的步骤包括:
判断一条件是否成立,其中该条件包括该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的抹除次数已达一第一门槛值、或者该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的位错误率已达一第二门槛值;以及
当该条件成立时,读取所述三个实体块的数据至该非易失性存储器模块外部的一存储器控制器,由所述存储器控制器对所述三个实体块的数据进行纠错,以及将纠错后的数据从所述存储器控制器写入操作于三层存储单元模式的该第一实体块或该第二实体块中。
10.根据权利要求8所述的非易失性存储器装置的操作方法,其特征在于,对所述三个实体块进行重整的步骤还包括:
判断一条件是否成立,其中该条件包括该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的抹除次数已达一第一门槛值、或者该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的位错误率已达一第二门槛值;以及
当该条件不成立时,由该非易失性存储器模块内部的一控制电路将所述三个实体块的数据重整至操作于三层存储单元模式的该第一实体块或该第二实体块中。
11.一种非易失性存储器装置,其特征在于,包括:
一非易失性存储器模块,包括一第一实体块与一第二实体块,其中该第一实体块具有至少一第一页面,该第二实体块具有至少一第二页面;以及
一存储器控制器,耦接于该非易失性存储器模块,其中当该存储器控制器对该非易失性存储器装置进行重整时,该存储器控制器将已完成重整的一第一重整数据写入该第一实体块的所述至少一第一页面,而在于一断电事件后再一次供电给该非易失性存储器装置时,该存储器控制器对该第二实体块进行一抹除程序,并在该抹除程序完成后将该第一实体块在该断电事件之前所写入的该第一重整数据复制到该第二实体块的所述至少一第二页面上,其中所述至少一第二页面对应于所述至少一第一页面,以及该存储器控制器继续对该非易失性存储器装置进行重整,并将再一次供电给该非易失性存储器装置之后所继续重整的一第二重整数据写入该第二实体块。
12.根据权利要求11所述的非易失性存储器装置,其特征在于,该存储器控制器取得在该断电事件之前已完整写入该第一实体块的该第一重整数据,并将该第一重整数据复制到该第二实体块的所述第二页面上。
13.根据权利要求11所述的非易失性存储器装置,其特征在于,该存储器控制器依据一信息表,记录至少一实体地址信息,所述实体地址信息分别指出该第一实体块的所述第一页面的多个第一实体地址,以及该存储器控制器更新该信息表的所述实体地址信息,使所述实体地址信息分别从指出所述第一实体地址,改成指出该第二实体块的所述第二页面的多个第二实体地址。
14.根据权利要求11所述的非易失性存储器装置,其特征在于,该断电事件造成该第一实体块的至少二个该第一页面的数据错误,而具有错误数据的所述页面对应同一存储单元。
15.根据权利要求11所述的非易失性存储器装置,其特征在于,该存储器控制器将该第一重整数据写入该第一实体块中,并判断一条件是否成立,其中该条件包括该第一重整数据的多个逻辑地址为连续且该第一重整数据位在同一个实体块的多个连续页面中;以及当该条件成立时,该存储器控制器将该第一重整数据的起始逻辑地址、该第一重整数据的起始实体地址与该第一重整数据的数据长度分别记录在一执行长度映射表中的一逻辑地址栏位、一实体地址栏位以及一长度栏位。
16.根据权利要求15所述的非易失性存储器装置,其特征在于,该执行长度映射表中的该逻辑地址栏位为一逻辑页地址栏位,该执行长度映射表中的该实体地址栏位包括一实体块地址栏位以及一实体页地址栏位。
17.根据权利要求15所述的非易失性存储器装置,其特征在于,当该条件不成立时,该存储器控制器将该第一重整数据的所述多个逻辑地址与该第一重整数据的多个实体地址分别记录在一页映射表中的一逻辑地址栏位与一实体地址栏位。
18.根据权利要求11所述的非易失性存储器装置,其特征在于,还包括:
当在该非易失性存储器模块内操作于单层存储单元模式的多个实体块之中的三个实体块的所有页面均被使用时,该存储器控制器对所述三个实体块进行重整,以将所述三个实体块的数据重整至该非易失性存储器模块内操作于三层存储单元模式的该第一实体块或该第二实体块中。
19.根据权利要求18所述的非易失性存储器装置,其特征在于,该存储器控制器判断一条件是否成立,其中该条件包括该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的抹除次数已达一第一门槛值、或者该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的位错误率已达一第二门槛值,以及当该条件成立时,该存储器控制器读取所述三个实体块的数据至该非易失性存储器模块外部的一控制器,由所述控制器对所述三个实体块的数据进行纠错,以及将纠错后的数据从所述控制器写入操作于三层存储单元模式的该第一实体块或该第二实体块中。
20.根据权利要求18所述的非易失性存储器装置,其特征在于,该存储器控制器判断一条件是否成立,其中该条件包括该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的抹除次数已达一第一门槛值、或者该非易失性存储器模块内操作于三层存储单元模式的实体块中任一个的位错误率已达一第二门槛值,以及当该条件不成立时,由该非易失性存储器模块内部的一控制电路将所述三个实体块的数据重整至操作于三层存储单元模式的该第一实体块或该第二实体块中。
21.一种非易失性存储器装置的操作方法,其特征在于,该非易失性存储器装置的一非易失性存储器模块包括至少一实体块,该操作方法包括:
将一数据写入所述至少一实体块中;
判断一条件是否成立,其中该条件包括该数据的多个逻辑地址为连续且该数据位在同一个实体块的多个连续页面中;以及
当该条件成立时,将该数据的起始逻辑地址、该数据的起始实体地址与该数据的数据长度分别记录在一执行长度映射表中的一逻辑地址栏位、一实体地址栏位以及一长度栏位。
22.根据权利要求21所述的非易失性存储器装置的操作方法,其特征在于,该执行长度映射表中的该逻辑地址栏位为一逻辑页地址栏位,该执行长度映射表中的该实体地址栏位包括一实体块地址栏位以及一实体页地址栏位。
23.根据权利要求21所述的非易失性存储器装置的操作方法,其特征在于,还包括:
当该条件不成立时,将该数据的所述多个逻辑地址与该数据的多个实体地址分别记录在一页映射表中的一逻辑地址栏位与一实体地址栏位。
24.一种非易失性存储器装置的操作方法,其特征在于,该非易失性存储器装置的一非易失性存储器模块包括多个操作于单层存储单元模式的实体块以及多个操作于三层存储单元模式的实体块,该操作方法包括:
将一数据写入所述操作于单层存储单元模式的实体块的其中之一;以及
当在该非易失性存储器模块内所述操作于单层存储单元模式的实体块之中的三个实体块的所有页面均被使用时,依据一条件而决定对所述三个实体块进行一内部重整或是一外部重整,以将所述三个实体块的数据重整至该非易失性存储器模块内操作于三层存储单元模式的所述实体块中的一择定实体块。
25.根据权利要求24所述的非易失性存储器装置的操作方法,其特征在于,该条件包括该非易失性存储器模块内所述操作于三层存储单元模式的实体块中任一个的抹除次数已达一第一门槛值、或者该非易失性存储器模块内所述操作于三层存储单元模式的实体块中任一个的位错误率已达一第二门槛值。
26.根据权利要求24所述的非易失性存储器装置的操作方法,其特征在于,当该条件成立时,进行所述外部重整以将操作于单层存储单元模式的所述三个实体块的数据重整至操作于三层存储单元模式的所述择定实体块;以及所述外部重整包括:
读取操作于单层存储单元模式的所述三个实体块的数据至该非易失性存储器模块外部的一存储器控制器;
通过该存储器控制器对所述操作于单层存储单元模式的所述三个实体块的数据进行纠错;以及
将纠错后的数据从该存储器控制器写入操作于三层存储单元模式的所述择定实体块中。
27.根据权利要求24所述的非易失性存储器装置的操作方法,其特征在于,当该条件不成立时,进行所述内部重整以将操作于单层存储单元模式的所述三个实体块的数据重整至操作于三层存储单元模式的所述择定实体块;以及所述内部重整包括:
由该非易失性存储器模块内部的一控制电路将操作于单层存储单元模式的所述三个实体块的数据写入至操作于三层存储单元模式的所述择定实体块中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610115166.7A CN105786412B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
CN201610114822.1A CN105786411B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102140173A TWI520153B (zh) | 2013-11-05 | 2013-11-05 | 非揮發性記憶體裝置及其操作方法 |
TW102140173 | 2013-11-05 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610114822.1A Division CN105786411B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
CN201610115166.7A Division CN105786412B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103699344A true CN103699344A (zh) | 2014-04-02 |
CN103699344B CN103699344B (zh) | 2016-08-17 |
Family
ID=50360885
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410016156.9A Active CN103699344B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置及其操作方法 |
CN201610114822.1A Active CN105786411B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
CN201610115166.7A Active CN105786412B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610114822.1A Active CN105786411B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
CN201610115166.7A Active CN105786412B (zh) | 2013-11-05 | 2014-01-14 | 非易失性存储器装置的操作方法 |
Country Status (2)
Country | Link |
---|---|
CN (3) | CN103699344B (zh) |
TW (1) | TWI520153B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105892946A (zh) * | 2016-03-30 | 2016-08-24 | 联想(北京)有限公司 | 一种数据存储方法及电子设备 |
CN106527967A (zh) * | 2015-09-10 | 2017-03-22 | 蜂巢数据有限公司 | 减小存储设备中的读命令时延 |
CN107291377A (zh) * | 2016-03-31 | 2017-10-24 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN107957849A (zh) * | 2016-10-14 | 2018-04-24 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN108052410A (zh) * | 2017-12-20 | 2018-05-18 | 北京兆易创新科技股份有限公司 | 一种防止SPI-Nand读取数据页出错的方法及装置 |
CN108108261A (zh) * | 2016-11-24 | 2018-06-01 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108351816A (zh) * | 2015-12-18 | 2018-07-31 | 英特尔公司 | 用于在数据存储设备上执行数据拷贝操作的技术 |
CN108572786A (zh) * | 2017-03-09 | 2018-09-25 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
CN108701491A (zh) * | 2016-02-18 | 2018-10-23 | 美光科技公司 | 错误率降低 |
CN109542335A (zh) * | 2017-09-22 | 2019-03-29 | 慧荣科技股份有限公司 | 快闪存储器的数据内部搬移方法以及使用该方法的装置 |
CN110008059A (zh) * | 2019-02-20 | 2019-07-12 | 深圳市汇顶科技股份有限公司 | 非易失性存储介质的数据更新方法、装置及存储介质 |
CN114993540A (zh) * | 2022-08-02 | 2022-09-02 | 国网江西省电力有限公司建设分公司 | 张力传感器数据采集保护与存储装置 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI569139B (zh) * | 2015-08-07 | 2017-02-01 | 群聯電子股份有限公司 | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 |
CN108572920B (zh) | 2017-03-09 | 2022-04-12 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
TWI657339B (zh) * | 2017-06-25 | 2019-04-21 | 慧榮科技股份有限公司 | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器 |
CN109117383B (zh) | 2017-06-25 | 2022-09-20 | 慧荣科技股份有限公司 | 管理闪存模块的方法和闪存控制器 |
TWI726475B (zh) * | 2017-09-22 | 2021-05-01 | 慧榮科技股份有限公司 | 快閃記憶體的資料內部搬移方法以及使用該方法的裝置 |
CN111949565A (zh) * | 2019-05-17 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种存储器及其控制方法和控制装置 |
CN112015708B (zh) * | 2020-10-30 | 2021-02-19 | 北京金山云网络技术有限公司 | 一种分布式存储系统数据均衡的方法和相关装置 |
WO2024187368A1 (en) * | 2023-03-14 | 2024-09-19 | Micron Technology , Inc. | Consecutive logical page address space |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1336590A (zh) * | 2000-07-27 | 2002-02-20 | 乔工科技股份有限公司 | 有缺陷的挥发性内存重新格式化的方法及其装置 |
CN101408864A (zh) * | 2007-10-09 | 2009-04-15 | 群联电子股份有限公司 | 用于断电时的数据保护方法及使用此方法的控制器 |
CN101464836A (zh) * | 2007-12-20 | 2009-06-24 | 宇瞻科技股份有限公司 | 闪存储存装置的数据储存方法 |
CN102005245A (zh) * | 2010-11-30 | 2011-04-06 | 公安部第三研究所 | 一种智能卡擦写保护方法 |
CN103176920A (zh) * | 2013-03-26 | 2013-06-26 | 杭州华三通信技术有限公司 | Nor flash掉电保护方法及装置 |
US20130173542A1 (en) * | 2012-01-03 | 2013-07-04 | International Business Machines Corporation | Replication of data sets |
US20130219110A1 (en) * | 2010-07-28 | 2013-08-22 | Fujitsu Semiconductor Europe Gmbh | Electronic apparatuses |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1173272C (zh) * | 2000-09-12 | 2004-10-27 | 财团法人资讯工业策进会 | 多重可变地址映射电路 |
US20030225962A1 (en) * | 2002-05-31 | 2003-12-04 | Hitachi, Ltd. | Memory card and memory card system |
CN101667157A (zh) * | 2008-09-04 | 2010-03-10 | 群联电子股份有限公司 | 闪存数据传输方法、闪存储存系统及控制器 |
US20110252187A1 (en) * | 2010-04-07 | 2011-10-13 | Avigdor Segal | System and method for operating a non-volatile memory including a portion operating as a single-level cell memory and a portion operating as a multi-level cell memory |
TWI442222B (zh) * | 2010-07-21 | 2014-06-21 | Silicon Motion Inc | 快閃記憶裝置與快閃記憶裝置管理方法 |
CN102566937A (zh) * | 2010-12-30 | 2012-07-11 | 慧荣科技股份有限公司 | 快闪存储装置及其运作方法 |
CN102279803A (zh) * | 2011-04-13 | 2011-12-14 | 西安交通大学 | 一种提高多层单元NAND-Flash存储可靠性的备用区分配方法 |
-
2013
- 2013-11-05 TW TW102140173A patent/TWI520153B/zh active
-
2014
- 2014-01-14 CN CN201410016156.9A patent/CN103699344B/zh active Active
- 2014-01-14 CN CN201610114822.1A patent/CN105786411B/zh active Active
- 2014-01-14 CN CN201610115166.7A patent/CN105786412B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1336590A (zh) * | 2000-07-27 | 2002-02-20 | 乔工科技股份有限公司 | 有缺陷的挥发性内存重新格式化的方法及其装置 |
CN101408864A (zh) * | 2007-10-09 | 2009-04-15 | 群联电子股份有限公司 | 用于断电时的数据保护方法及使用此方法的控制器 |
CN101464836A (zh) * | 2007-12-20 | 2009-06-24 | 宇瞻科技股份有限公司 | 闪存储存装置的数据储存方法 |
US20130219110A1 (en) * | 2010-07-28 | 2013-08-22 | Fujitsu Semiconductor Europe Gmbh | Electronic apparatuses |
CN102005245A (zh) * | 2010-11-30 | 2011-04-06 | 公安部第三研究所 | 一种智能卡擦写保护方法 |
US20130173542A1 (en) * | 2012-01-03 | 2013-07-04 | International Business Machines Corporation | Replication of data sets |
CN103176920A (zh) * | 2013-03-26 | 2013-06-26 | 杭州华三通信技术有限公司 | Nor flash掉电保护方法及装置 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106527967A (zh) * | 2015-09-10 | 2017-03-22 | 蜂巢数据有限公司 | 减小存储设备中的读命令时延 |
CN108351816A (zh) * | 2015-12-18 | 2018-07-31 | 英特尔公司 | 用于在数据存储设备上执行数据拷贝操作的技术 |
CN108351816B (zh) * | 2015-12-18 | 2021-11-30 | 英特尔公司 | 用于在数据存储设备上执行数据拷贝操作的方法 |
CN108701491B (zh) * | 2016-02-18 | 2022-04-05 | 美光科技公司 | 用于错误率降低的方法和设备 |
CN108701491A (zh) * | 2016-02-18 | 2018-10-23 | 美光科技公司 | 错误率降低 |
CN105892946A (zh) * | 2016-03-30 | 2016-08-24 | 联想(北京)有限公司 | 一种数据存储方法及电子设备 |
CN107291377A (zh) * | 2016-03-31 | 2017-10-24 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN107957849A (zh) * | 2016-10-14 | 2018-04-24 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107957849B (zh) * | 2016-10-14 | 2021-03-16 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN108108261B (zh) * | 2016-11-24 | 2021-03-02 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108108261A (zh) * | 2016-11-24 | 2018-06-01 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108572786B (zh) * | 2017-03-09 | 2021-06-29 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
CN108572786A (zh) * | 2017-03-09 | 2018-09-25 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
CN109542335A (zh) * | 2017-09-22 | 2019-03-29 | 慧荣科技股份有限公司 | 快闪存储器的数据内部搬移方法以及使用该方法的装置 |
CN109542335B (zh) * | 2017-09-22 | 2022-04-01 | 慧荣科技股份有限公司 | 快闪存储器的数据内部搬移方法以及使用该方法的装置 |
CN108052410B (zh) * | 2017-12-20 | 2021-04-13 | 北京兆易创新科技股份有限公司 | 一种防止SPI-Nand读取数据页出错的方法及装置 |
CN108052410A (zh) * | 2017-12-20 | 2018-05-18 | 北京兆易创新科技股份有限公司 | 一种防止SPI-Nand读取数据页出错的方法及装置 |
CN110008059A (zh) * | 2019-02-20 | 2019-07-12 | 深圳市汇顶科技股份有限公司 | 非易失性存储介质的数据更新方法、装置及存储介质 |
CN110008059B (zh) * | 2019-02-20 | 2021-05-11 | 深圳市汇顶科技股份有限公司 | 非易失性存储介质的数据更新方法、装置及存储介质 |
CN114993540A (zh) * | 2022-08-02 | 2022-09-02 | 国网江西省电力有限公司建设分公司 | 张力传感器数据采集保护与存储装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105786412A (zh) | 2016-07-20 |
CN105786411A (zh) | 2016-07-20 |
TW201519251A (zh) | 2015-05-16 |
CN105786411B (zh) | 2019-04-09 |
CN105786412B (zh) | 2019-04-19 |
TWI520153B (zh) | 2016-02-01 |
CN103699344B (zh) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103699344A (zh) | 非易失性存储器装置及其操作方法 | |
US8230161B2 (en) | Data backup method for a flash memory and controller and storage system using the same | |
US9268687B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US10303367B2 (en) | Mapping table updating method without updating the first mapping information, memory control circuit unit and memory storage device | |
US9177656B2 (en) | Data writing method, memory storage device and memory controlling circuit unit | |
TWI451249B (zh) | 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置 | |
TWI585778B (zh) | 非揮發性記憶體裝置的操作方法 | |
TWI495998B (zh) | 資料管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI476590B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI584189B (zh) | 記憶體控制器、記憶體儲存裝置與資料寫入方法 | |
TWI540428B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
US20150161042A1 (en) | Memory management method, memory controlling circuit unit, and memory storage device | |
US20160054935A1 (en) | Data storing method and memory controller and memory storage device using the same | |
CN103593255B (zh) | 数据管理方法、记忆存储存储器与记忆存储控制器 | |
TW201526006A (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI521346B (zh) | 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置 | |
TWI446170B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI606458B (zh) | 非揮發性記憶體裝置的操作方法 | |
US9830077B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US20120324205A1 (en) | Memory management table processing method, memory controller, and memory storage apparatus | |
CN103176910A (zh) | 用于非易失性存储器的数据合并方法、控制器与储存装置 | |
CN104951241A (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 |