CN114203239B - 存储器管理方法、存储器存储装置及存储器控制电路单元 - Google Patents
存储器管理方法、存储器存储装置及存储器控制电路单元 Download PDFInfo
- Publication number
- CN114203239B CN114203239B CN202111488077.4A CN202111488077A CN114203239B CN 114203239 B CN114203239 B CN 114203239B CN 202111488077 A CN202111488077 A CN 202111488077A CN 114203239 B CN114203239 B CN 114203239B
- Authority
- CN
- China
- Prior art keywords
- unit
- entity
- units
- management information
- data
- 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.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 215
- 230000005055 memory storage Effects 0.000 title claims abstract description 48
- 238000011084 recovery Methods 0.000 claims abstract description 22
- 230000010354 integration Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 22
- 238000013507 mapping Methods 0.000 description 12
- 238000012937 correction Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000012005 ligant binding assay Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/061—Improving I/O performance
-
- 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
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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
- G06F3/064—Management of blocks
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
本发明提供一种存储器管理方法、存储器存储装置及存储器控制电路单元。所述方法包括:执行第一写入操作,以将第一数据存储至第一实体单元;对应于第一写入操作记录第一单元管理信息,其中第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述第一已使用实体单元包括第一实体单元;执行数据整并操作,以将第一实体单元中的至少部分数据复制到第二实体单元;以及在执行数据整并操作后,根据第一单元管理信息记录第二单元管理信息,其中第二单元管理信息反映多个第二已使用实体单元的使用顺序。所述多个第二已使用实体单元包括第二实体单元但不包括第一实体单元。藉此,可提高后续执行数据复原的工作效率。
Description
技术领域
本发明涉及一种存储器管理技术,且尤其涉及一种存储器管理方法、存储器存储装置及存储器控制电路单元。
背景技术
智能手机与平板计算机在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(rewritable non-volatile memorymodule)(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。
当可复写式非易失性存储器模块发生异常断电等状况而导致数据遗失时,若存在用以记载映射信息的映射表,可根据映射表所记载的映射信息重新从可复写式非易失性存储器模块读取所需的数据即可。然而,若映射表也遗失或损坏,则需要通过特定工具程序执行全盘扫描来重建映射表并对遗失的数据进行恢复。因此,如何提高数据复原的工作效率实为相关领域技术人员所致力研究的课题之一。
发明内容
本发明提供一种存储器管理方法、存储器存储装置及存储器控制电路单元,可提高后续执行数据复原的工作效率。
本发明的范例实施例提供一种存储器管理方法,其用于可复写式非易失性存储器模块。所述可复写式非易失性存储器模块包括多个实体单元。所述存储器管理方法包括:执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;以及在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元。
本发明的范例实施例另提供一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。所述连接接口单元用以连接至主机系统。所述可复写式非易失性存储器模块包括多个实体单元。所述存储器控制电路单元连接至所述连接接口单元与所述可复写式非易失性存储器模块。所述存储器控制电路单元用以:执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;以及在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元。
本发明的范例实施例另提供一种存储器控制电路单元,其用以控制可复写式非易失性存储器模块。所述存储器控制电路单元包括主机接口、存储器接口及存储器管理电路。所述主机接口用以连接至主机系统。所述存储器接口用以连接至所述可复写式非易失性存储器模块。所述可复写式非易失性存储器模块包括多个实体单元。所述存储器管理电路连接至所述主机接口与所述存储器接口。所述存储器管理电路用以:执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;以及在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元。
基于上述,在执行第一写入操作以将第一数据存储至第一实体单元后,第一单元管理信息可被记录以反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元可包括第一实体单元。此外,在执行数据整并操作以将第一实体单元中的至少部分数据复制到第二实体单元后,第二单元管理信息可根据第一单元管理信息而记录,以反映多个第二已使用实体单元的使用顺序。特别是,所述多个第二已使用实体单元可包括第二实体单元但不包括第一实体单元。藉此,可提高后续根据单元管理信息来执行数据复原的工作效率。
附图说明
图1是根据本发明的范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据本发明的范例实施例所示出的主机系统、存储器存储装置及I/O装置的示意图;
图3是根据本发明的范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是根据本发明的范例实施例所示出的存储器存储装置的示意图;
图5是根据本发明的范例实施例所示出的存储器控制电路单元的示意图;
图6是根据本发明的范例实施例所示出的管理可复写式非易失性存储器模块的示意图;
图7是根据本发明的范例实施例所示出的主机写入操作与数据整并操作的示意图;
图8是根据本发明的范例实施例所示出的更新实体单元的写入戳记的示意图;
图9是根据本发明的范例实施例所示出的记录单元管理信息的示意图;
图10是根据本发明的范例实施例所示出的记录单元管理信息的示意图;
图11是根据本发明的范例实施例所示出的在数据恢复操作中扫描实体单元的示意图;
图12是根据本发明的范例实施例所示出的存储器管理方法的流程图;
图13是根据本发明的范例实施例所示出的存储器管理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
一般而言,存储器存储装置(亦称,存储器存储系统)包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与控制器(亦称,控制电路)。存储器存储装置可与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据本发明的范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。图2是根据本发明的范例实施例所示出的主机系统、存储器存储装置及I/O装置的示意图。
请参照图1与图2,主机系统11可包括处理器111、随机存取存储器(random accessmemory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114可连接至系统总线(systembus)110。
在一范例实施例中,主机系统11可通过数据传输接口114与存储器存储装置10连接。例如,主机系统11可经由数据传输接口114将数据存储至存储器存储装置10或从存储器存储装置10中读取数据。此外,主机系统11可通过系统总线110与I/O装置12连接。例如,主机系统11可经由系统总线110将输出信号传送至I/O装置12或从I/O装置12接收输入信号。
在一范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114可设置在主机系统11的主机板20上。数据传输接口114的数目可以是一或多个。通过数据传输接口114,主机板20可以经由有线或无线方式连接至存储器存储装置10。
在一范例实施例中,存储器存储装置10可例如是U盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近场通信(Near Field Communication,NFC)存储器存储装置、无线保真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通信技术为基础的存储器存储装置。此外,主机板20也可以通过系统总线110连接至全球定位系统(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,主机系统11为计算机系统。在一范例实施例中,主机系统11可为可实质地与存储器存储装置配合以存储数据的任意系统。在一范例实施例中,存储器存储装置10与主机系统11可分别包括图3的存储器存储装置30与主机系统31。
图3是根据本发明的范例实施例所示出的主机系统与存储器存储装置的示意图。请参照图3,存储器存储装置30可与主机系统31搭配使用以存储数据。例如,主机系统31可以是数码相机、摄像机、通信装置、音频播放器、视频播放器或平板计算机等系统。例如,存储器存储装置30可为主机系统31所使用的安全数字(Secure Digital,SD)卡32、小型快闪(Compact Flash,CF)卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embedded Multi Media Card,eMMC)341和/或嵌入式多芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模块直接连接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的范例实施例所示出的存储器存储装置的示意图。请参照图4,存储器存储装置10包括连接接口单元41、存储器控制电路单元42与可复写式非易失性存储器模块43。
连接接口单元41用以将存储器存储装置10连接主机系统11。存储器存储装置10可经由连接接口单元41与主机系统11通信。在一范例实施例中,连接接口单元41是相容于高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准。然而,必须了解的是,本发明不限于此,连接接口单元41亦可以是符合串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准、并行高级技术附件(ParallelAdvanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute ofElectrical and Electronic Engineers,IEEE)1394标准、通用串行总线(UniversalSerial Bus,USB)标准、SD接口标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、存储棒(Memory Stick,MS)接口标准、MCP接口标准、MMC接口标准、eMMC接口标准、通用快闪存储器(Universal FlashStorage,UFS)接口标准、eMCP接口标准、CF接口标准、整合式驱动电子接口(IntegratedDevice Electronics,IDE)标准或其他适合的标准。连接接口单元41可与存储器控制电路单元42封装在一个芯片中,或者连接接口单元41是布设于一包含存储器控制电路单元42的芯片外。
存储器控制电路单元42连接至连接接口单元41与可复写式非易失性存储器模块43。存储器控制电路单元42用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令并且根据主机系统11的指令在可复写式非易失性存储器模块43中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块43用以存储主机系统11所写入的数据。可复写式非易失性存储器模块43可包括单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个比特的快闪存储器模块)、二阶存储单元(Multi LevelCell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个比特的快闪存储器模块)、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个比特的快闪存储器模块)、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块(即,一个存储单元中可存储4个比特的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
可复写式非易失性存储器模块43中的每一个存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个比特。具体来说,每一个存储单元的控制门(control gate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制门,可以改变电荷补捉层的电子量,进而改变存储单元的临界电压。此改变存储单元的临界电压的操作亦称为“把数据写入至存储单元”或“程序化(programming)存储单元”。随着临界电压的改变,可复写式非易失性存储器模块43中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个比特。
在一范例实施例中,可复写式非易失性存储器模块43的存储单元可构成多个实体程序化单元,并且此些实体程序化单元可构成多个实体抹除单元。具体来说,同一条字线上的存储单元可组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的比特,则同一条字线上的实体程序化单元可至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效比特(Least Significant Bit,LSB)是属于下实体程序化单元,并且一存储单元的最高有效比特(Most Significant Bit,MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,和/或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。
在一范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元可为实体页(page)或是实体扇(sector)。若实体程序化单元为实体页,则此些实体程序化单元可包括数据比特区与冗余(redundancy)比特区。数据比特区包含多个实体扇,用以存储使用者数据,而冗余比特区用以存储系统数据(例如,错误更正码等管理数据)。在一范例实施例中,数据比特区包含32个实体扇,且一个实体扇的大小为512字节(byte,B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目的一并被抹除的存储单元。例如,实体抹除单元为实体区块(block)。
图5是根据本发明的范例实施例所示出的存储器控制电路单元的示意图。请参照图5,存储器控制电路单元42包括存储器管理电路51、主机接口52及存储器接口53。
存储器管理电路51用以控制存储器控制电路单元42的整体运作。具体来说,存储器管理电路51具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路51的操作时,等同于说明存储器控制电路单元42的操作。
在一范例实施例中,存储器管理电路51的控制指令是以固件型式来实作。例如,存储器管理电路51具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在一范例实施例中,存储器管理电路51的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块43的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路51具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元42被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块43中的控制指令载入至存储器管理电路51的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
在一范例实施例中,存储器管理电路51的控制指令亦可以一硬件型式来实作。例如,存储器管理电路51包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是连接至微控制器。存储单元管理电路用以管理可复写式非易失性存储器模块43的存储单元或存储单元群组。存储器写入电路用以对可复写式非易失性存储器模块43下达写入指令序列以将数据写入至可复写式非易失性存储器模块43中。存储器读取电路用以对可复写式非易失性存储器模块43下达读取指令序列以从可复写式非易失性存储器模块43中读取数据。存储器抹除电路用以对可复写式非易失性存储器模块43下达抹除指令序列以将数据从可复写式非易失性存储器模块43中抹除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块43的数据以及从可复写式非易失性存储器模块43中读取的数据。写入指令序列、读取指令序列及抹除指令序列可各别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块43执行相对应的写入、读取及抹除等操作。在一范例实施例中,存储器管理电路51还可以下达其他类型的指令序列给可复写式非易失性存储器模块43以指示执行相对应的操作。
主机接口52是连接至存储器管理电路51。存储器管理电路51可通过主机接口52与主机系统11通信。主机接口52可用以接收与识别主机系统11所传送的指令与数据。例如,主机系统11所传送的指令与数据可通过主机接口52来传送至存储器管理电路51。此外,存储器管理电路51可通过主机接口52将数据传送至主机系统11。在本范例实施例中,主机接口52是相容于PCI Express标准。然而,必须了解的是本发明不限于此,主机接口52亦可以是相容于SATA标准、PATA标准、IEEE 1394标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口53是连接至存储器管理电路51并且用以存取可复写式非易失性存储器模块43。例如,存储器管理电路51可通过存储器接口53存取可复写式非易失性存储器模块43。也就是说,欲写入至可复写式非易失性存储器模块43的数据会经由存储器接口53转换为可复写式非易失性存储器模块43所能接受的格式。具体来说,若存储器管理电路51要存取可复写式非易失性存储器模块43,存储器接口53会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾回收操作等等)的相对应的指令序列。这些指令序列例如是由存储器管理电路51产生并且通过存储器接口53传送至可复写式非易失性存储器模块43。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的识别码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元42还包括错误检查与校正电路54、缓冲存储器55及电源管理电路56。
错误检查与校正电路54是连接至存储器管理电路51并且用以执行错误检查与校正操作以确保数据的正确性。具体来说,当存储器管理电路51从主机系统11中接收到写入指令时,错误检查与校正电路54会为对应此写入指令的数据产生对应的错误更正码(errorcorrecting code,ECC)和/或错误检查码(error detecting code,EDC),并且存储器管理电路51会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块43中。之后,当存储器管理电路51从可复写式非易失性存储器模块43中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路54会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正操作。
缓冲存储器55是连接至存储器管理电路51并且用以暂存数据。电源管理电路56是连接至存储器管理电路51并且用以控制存储器存储装置10的电源。
在一范例实施例中,图4的可复写式非易失性存储器模块43可包括快闪存储器模块。在一范例实施例中,图4的存储器控制电路单元42可包括快闪存储器控制器。在一范例实施例中,图5的存储器管理电路51可包括快闪存储器管理电路。
图6是根据本发明的范例实施例所示出的管理可复写式非易失性存储器模块的示意图。请参照图6,存储器管理电路51可将可复写式非易失性存储器模块43中的实体单元610(0)~610(B)逻辑地分组至存储区601与闲置(spare)区602。在一范例实施例中,一个实体单元是指一个实体抹除单元。在一范例实施例中,一个实体单元亦可以是指一个虚拟区块(VB),其包括多个实体抹除单元。
存储区601中的实体单元610(0)~610(A)用以存储使用者数据(例如来自图1的主机系统11的使用者数据)。例如,存储区601中的实体单元610(0)~610(A)可存储有效(valid)数据与无效(invalid)数据。闲置区602中的实体单元610(A+1)~610(B)未存储数据(例如有效数据)。例如,若某一个实体单元未存储有效数据,则此实体单元可被关联(或加入)至闲置区602。此外,闲置区602中的实体单元(或未存储有效数据的实体单元)可被抹除。在写入新数据时,一或多个实体单元可被从闲置区602中提取以存储此新数据。在一范例实施例中,闲置区602亦称为闲置池(free pool)。
存储器管理电路51可配置逻辑单元612(0)~612(C)以映射存储区601中的实体单元610(0)~610(A)。在一范例实施例中,每一个逻辑单元对应一个逻辑地址。例如,一个逻辑地址可包括一或多个逻辑区块地址(Logical Block Address,LBA)或其他的逻辑管理单元。在一范例实施例中,一个逻辑单元也可对应一个逻辑抹除单元或者由多个逻辑地址组成。
须注意的是,一个逻辑单元可被映射至一或多个实体单元。若某一实体单元当前有被某一逻辑单元映射,则表示此实体单元当前存储的数据包括有效数据。反之,若某一实体单元当前未被任一逻辑单元映射,则表示此实体单元当前存储的数据为无效数据。
存储器管理电路51可将描述逻辑单元与实体单元之间的映射关系的管理数据(亦称为逻辑至实体映射信息)记录于至少一逻辑至实体映射表。当主机系统11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路51可根据此逻辑至实体映射表中的信息来存取可复写式非易失性存储器模块43。
当属于闲置区602的实体单元不足(例如属于闲置区602的实体单元的总数少于一预设数目)时,存储器管理电路502可执行数据整并操作,以增加属于闲置区602的实体单元的总数。在一范例实施例中,数据整并操作亦称为垃圾收集(garbage collection)操作。
在数据整并操作中,存储器管理电路502可从存储区601中选择至少一个实体单元(亦称为来源单元)并且尝试将有效数据从所选择的实体单元复制到另一实体单元(亦称为目标单元)。用来存储所复制的有效数据的实体单元也是从闲置区602中选择并且会被关联至存储区601。若某一个实体单元所存储的有效数据皆已被复制至目标单元,则此实体单元可被抹除并且被关联至闲置区602。
在一范例实施例中,将某一个实体单元从存储区601重新关联回闲置区602的操作(或抹除某一个实体单元的操作)亦称为释放一个闲置实体单元。藉由执行数据整并操作,一或多个闲置实体单元会被释放并且使得属于闲置区602的实体单元的总数逐渐增加。
图7是根据本发明的范例实施例所示出的主机写入操作与数据整并操作的示意图。请参照图7,在主机写入操作中,主机系统11可发送至少一个写入指令以指示将数据701写入至某一个逻辑单元。根据此写入指令,数据701可被存储至映射至此逻辑单元的实体单元710(0)。例如,实体单元710(0)可以是从图6的闲置区602中选择。
另一方面,在数据整并操作中,数据702可被从属于来源单元720的实体单元721(0)~721(D)收集并且被复制到属于目标单元730的实体单元731(0)~731(E)中。例如,数据702包括有效数据。属于来源单元720的实体单元721(0)~721(D)是从图6的存储区601中选择,而属于目标单元730的实体单元731(0)~731(E)是从图6的闲置区602中选择。
在一范例实施例中,存储器管理电路502可根据来自主机系统11的写入指令执行写入操作(亦称为第一写入操作),以将所述写入指令所指示的数据(亦称为第一数据)存储至图6的某一个实体单元(亦称为第一实体单元)。存储器管理电路502可对应于第一写入操作记录对应于第一实体单元的单元管理信息(亦称为第一单元管理信息)。第一单元管理信息可反映多个已使用的实体单元(亦称为第一已使用实体单元)的使用顺序。其中,已使用的实体单元是指已经用以存储数据的实体单元。特别是,所述多个第一已使用实体单元包括第一实体单元。尔后,根据第一单元管理信息,存储器管理电路502可获得包括第一实体单元的多个第一已使用实体单元的使用顺序。
在一范例实施例中,在将第一数据存储至第一实体单元后,存储器管理电路502可执行数据整并操作,以将第一实体单元中的至少部分数据复制到图6的另一个实体单元(亦称为第二实体单元)。亦即,在此范例实施例中,第一实体单元属于用以从中收集有效数据的来源单元,而第二实体单元属于用以存储有效数据的目标单元。在执行数据整并操作后,存储器管理电路502可根据第一单元管理信息记录对应于第二实体单元的单元管理信息(亦称为第二单元管理信息)。第二单元管理信息可反映多个已使用的实体单元(亦称为第二已使用实体单元)的使用顺序。特别是,相较于第一已使用实体单元,所述多个第二已使用实体单元包括第二实体单元但不包括第一实体单元。尔后,根据第二单元管理信息,存储器管理电路502可获得包括第二实体单元但不包括第一实体单元的多个第二已使用实体单元的使用顺序。
在一范例实施例中,第一单元管理信息包括所述多个第一已使用实体单元的排序信息,且第二单元管理信息包括所述多个第二已使用实体单元的排序信息。所述多个第一已使用实体单元的排序信息可反映所述多个第一已使用实体单元的使用顺序。所述多个第二已使用实体单元的排序信息可反映所述多个第二已使用实体单元的使用顺序。
在一范例实施例中,在根据第一单元管理信息记录第二单元管理信息的操作中,存储器管理电路502可将第一实体单元的排序信息从所述多个第一已使用实体单元的排序信息中移除。然后,存储器管理电路502可根据第二实体单元及所述多个第一已使用实体单元中剩余的实体单元(即所述多个第一已使用实体单元中不包含第一实体单元的其余实体单元)的排序信息获得所述多个第二已使用实体单元的排序信息。
在一范例实施例中,第一单元管理信息与第二单元管理信息可分别存储于第一实体单元与第二实体单元中。例如,第一单元管理信息可存储于第一实体单元中的某一实体程序化单元(亦称为第一实体程序化单元)。例如,第一实体程序化单元可为第一实体单元中的最后一个实体程序化单元。例如,第二单元管理信息可存储于第二实体单元中的某一实体程序化单元(亦称为第二实体程序化单元)。例如,第二实体程序化单元可为第二实体单元中的最后一个实体程序化单元。此外,第一实体程序化单元与第二实体程序化单元亦可以分别是第一实体单元与第二实体单元中的任一个实体程序化单元,本发明不加以限制。或者,在一范例实施例中,第一单元管理信息与第二单元管理信息亦可存储于特定的管理表格中,本发明不加以限制。
在一范例实施例中,在执行数据整并操作之前,存储器管理电路502还可执行另一写入操作(亦称为第二写入操作),以将另一数据(亦称为第二数据)存储至图6的另一个实体单元(亦称为第三实体单元)。第二写入操作可在第一写入操作之前或之后执行。在此范例实施例中,所述多个第二已使用实体单元还包括第三实体单元,且第二单元管理信息更可反映包括第二实体单元与第三实体单元的所述多个第二已使用实体单元的使用顺序。
在一范例实施例中,对应于第一写入操作,存储器管理电路502可更新对应于第一实体单元的写入戳记。此外,对应于数据整并操作,存储器管理电路502可更新对应于第二实体单元的写入戳记。所述写入戳记可实作为时间戳或任意型态的标记信息。存储器管理电路502可根据对应于各个实体单元的写入戳记获得多个已使用实体单元(例如第一已使用实体单元与第二已使用实体单元)的使用顺序。此外,所述写入戳记可存储于对应的实体单元(例如第一实体程序化单元与第二实体程序化单元)中或者存储于特定的管理表格,本发明不加以限制。
图8是根据本发明的范例实施例所示出的更新实体单元的写入戳记的示意图。请参照图8,假设实体单元810(0)~810(4)依序被写入数据。亦即,在实体单元810(0)~810(4)中,实体单元810(0)较早被写入数据,且实体单元810(4)较晚被写入数据。存储器管理电路502可将时间戳(即写入戳记)TS(0)~TS(4)分别分配给实体单元810(0)~810(4)。例如,对应于将数据写入实体单元810(i)的写入操作,时间戳TS(i)可被分配给实体单元810(i)。i介于0与4之间。藉此,时间戳TS(0)~TS(4)可反映实体单元810(0)~810(4)的使用顺序。
图9是根据本发明的范例实施例所示出的记录单元管理信息的示意图。请参照图8与图9,对应于将数据依序写入至实体单元810(0)~810(4),单元管理信息910(0)~910(4)可被记录。例如,对应于实体单元810(j)的单元管理信息910(j)可反映分别带有时间戳TS(0)~TS(j)的实体单元810(0)~810(j)已被使用以及已使用的实体单元810(0)~810(j)的使用顺序。j介于1至4之间。此外,单元管理信息910(j)可根据单元管理信息910(j-1)而产生。例如,单元管理信息910(4)可根据单元管理信息910(3)产生,包括将已使用的实体单元810(4)的排序信息加入至已使用的实体单元810(0)~810(3)的排序信息中。此外,单元管理信息910(0)~910(4)可分别被记录于实体单元810(0)~810(4)中或者额外记录于特定的管理表格中,本发明不加以限制。
图10是根据本发明的范例实施例所示出的记录单元管理信息的示意图。请参照图8与图10,须注意的是,在此范例实施例中,实体单元810(1)与810(2)属于来源单元720且实体单元810(4)属于目标单元730。因此,在数据整并操作中,存储于实体单元810(1)与810(2)中的有效数据可被收集并复制到实体单元810(4)中。在执行数据整并操作后,实体单元810(1)与810(2)中的数据皆成为无效数据。对应于将数据依序写入至实体单元810(0)~810(4),单元管理信息910(0)~910(4)同样可被记录。例如,单元管理信息910(j)可根据单元管理信息910(j-1)而产生。
须注意的是,相较于图9的范例实施例,在图10的范例实施例中,响应于将数据从实体单元810(1)与810(2)复制到实体单元810(4)的数据整并操作,所记录的单元管理信息910(4)可带有已使用的实体单元810(0)、810(3)及810(4)的排序信息,但不带有作为来源单元的实体单元810(1)与810(2)的排序信息。例如,在产生单元管理信息910(4)的过程中,存储器管理电路502可将作为来源单元的实体单元810(1)与810(2)的排序信息从单元管理信息910(3)中移除并加入新的实体单元810(4)的排序信息以产生单元管理信息910(4)。藉此,相较于图9的范例实施例,在图10的范例实施例中,单元管理信息910(4)可不带有明显只存储无效数据的实体单元810(1)与810(2)的排序信息。
在一范例实施例中,存储器管理电路502可执行数据恢复操作,以针对可复写式非易失性存储器模块43中可能遗失或损坏的数据进行复原。例如,造成所述数据遗失或损坏的原因可包括存储器存储装置10和/或主机系统11意外的断电、意外结束数据写入程序、意外结束数据读取程序、意外结束数据抹除程序、装置剧烈晃动和/或环境温度变化过于剧烈等,本发明不加以限制。
在一范例实施例中,在数据恢复操作中,存储器管理电路502可搜寻图6的多个实体单元中具有最新写入戳记的实体单元。存储器管理电路502可根据具有最新写入戳记的实体单元获得对应的单元管理信息(亦称为第三单元管理信息)。例如,第三单元管理信息可反映多个已使用实体单元(亦称为第三已使用实体单元)的使用顺序。存储器管理电路502可根据第三单元管理信息扫描所述多个第三已使用实体单元,以读取所述多个第三已使用实体单元中的数据(包括有效数据)。存储器管理电路502可根据所读取的数据重建映射表(即逻辑至实体映射表)并对遗失或损坏的数据进行复原。
以图8与图9的范例实施例为例,在记录时间戳TS(0)~TS(4)及单元管理信息910(0)~910(4)后,在数据恢复操作中,存储器管理电路502可根据时间戳TS(0)~TS(4)获得最后被使用(即写入数据)的实体单元为实体单元810(4)(因为实体单元810(4)具有最新的时间戳TS(4))。然后,存储器管理电路502可根据对应于实体单元810(4)的单元管理信息910(0)判定需扫描的实体单元包括实体单元810(0)~810(4)并对实体单元810(0)~810(4)进行扫描,以从实体单元810(0)~810(4)中读取数据恢复所需的数据(即有效数据)。
另一方面,以图8与图10的范例实施例为例,在记录时间戳TS(0)~TS(4)及单元管理信息910(0)~910(4)后,在数据恢复操作中,存储器管理电路502同样可根据时间戳TS(0)~TS(4)获得最后被使用(即写入数据)的实体单元为实体单元810(4)。但是,须注意的是,在图10的范例实施例中,存储器管理电路502可根据对应于实体单元810(4)的单元管理信息910(0)判定需扫描的实体单元包括实体单元810(0)、810(3)及810(4)。
图11是根据本发明的范例实施例所示出的在数据恢复操作中扫描实体单元的示意图。请参照图10与图11,在确定需扫描的实体单元包括实体单元810(0)、810(3)及810(4)后,在数据恢复操作中,存储器管理电路502可略过实体单元810(1)与810(2),而对实体单元810(0)、810(3)及810(4)进行扫描。例如,扫描顺序可以是依序扫描实体单元810(4)、810(3)及810(0),以从实体单元810(0)、810(3)及810(4)中读取数据恢复所需的数据(即有效数据)。
须注意的是,在图10的另一范例实施例中,若仍然是根据图9的单元管理信息910(4)来逐一扫描实体单元810(0)~810(4),则对数据恢复操作的执行时间将会延长,包含花费额外的扫描时间与系统资源在扫描明显未存储有效数据的实体单元810(1)与810(2)。然而,若如图10的范例实施例所述,在数据恢复操作中,略过实体单元810(1)与810(2)而对实体单元810(0)、810(3)及810(4)进行扫描,则可通过减少需扫描的实体单元的总数,在不影响数据恢复操作的稳定性的前提下有效提高数据恢复操作的执行效率(例如减少数据恢复操作的执行时间)。
图12是根据本发明的范例实施例所示出的存储器管理方法的流程图。请参照图12,在步骤S1201中,执行第一写入操作,以将第一数据存储至第一实体单元。在步骤S1202中,对应于所述第一写入操作记录第一单元管理信息,其中第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括第一实体单元。在步骤S1203中,执行数据整并操作,以将第一实体单元中的至少部分数据复制到第二实体单元。在执行所述数据整并操作后,在步骤S1204中,根据第一单元管理信息记录第二单元管理信息,其中第二单元管理信息反映多个第二已使用实体单元的使用顺序。特别是,所述多个第二已使用实体单元包括第二实体单元但不包括第一实体单元。
图13是根据本发明的范例实施例所示出的存储器管理方法的流程图。请参照图13,在步骤S1301中,在数据恢复操作中,搜寻多个实体单元中具有最新写入戳记的实体单元。在步骤S1302中,根据具有最新写入戳记的实体单元获得第三单元管理信息,其中第三单元管理信息反映多个第三已使用实体单元的使用顺序。在步骤S1303中,根据第三单元管理信息扫描所述多个第三已使用实体单元,以读取所述多个第三已使用实体单元中的有效数据。
然而,图12与图13中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图12与图13中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图12与图13的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明所提出的范例实施例可根据多个实体单元的使用顺序来记载对应于此些实体单元的写入戳记与单元管理信息。特别是,所记载的单元管理信息可不包含已经作为来源单元使用的实体单元的排序信息。藉此,后续可在不影响数据恢复操作的稳定性的前提下,有效提高数据恢复操作的执行效率(例如减少数据恢复操作的执行时间)。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种存储器管理方法,其特征在于,用于可复写式非易失性存储器模块,所述可复写式非易失性存储器模块包括多个实体单元,所述存储器管理方法包括:
执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;
对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;
执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;
在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元;
对应于所述第一写入操作,更新对应于所述第一实体单元的写入戳记;
对应于所述数据整并操作,更新对应于所述第二实体单元的写入戳记;
在数据恢复操作中,搜寻所述多个实体单元中具有最新写入戳记的实体单元;
根据具有所述最新写入戳记的所述实体单元获得第三单元管理信息,其中所述第三单元管理信息反映多个第三已使用实体单元的使用顺序;以及
根据所述第三单元管理信息扫描所述多个第三已使用实体单元料。
2.根据权利要求1所述的存储器管理方法,其中所述第一单元管理信息包括所述多个第一已使用实体单元的排序信息,所述第二单元管理信息包括所述多个第二已使用实体单元的排序信息,且根据所述第一单元管理信息记录所述第二单元管理信息的步骤包括:
将所述第一实体单元的排序信息从所述多个第一已使用实体单元的所述排序信息中移除;以及
根据所述第二实体单元及所述多个第一已使用实体单元中剩余的实体单元的排序信息获得所述多个第二已使用实体单元的所述排序信息。
3.根据权利要求1所述的存储器管理方法,其中所述第一单元管理信息与所述第二单元管理信息分别存储于所述第一实体单元与所述第二实体单元中。
4.根据权利要求1所述的存储器管理方法,还包括:
在执行所述数据整并操作之前,执行第二写入操作,以将第二数据存储至所述多个实体单元中的第三实体单元,
其中所述多个第二已使用实体单元还包括所述第三实体单元。
5.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以连接至主机系统;
可复写式非易失性存储器模块,包括多个实体单元;以及
存储器控制电路单元,连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以:
执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;
对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;
执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;
在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元;
对应于所述第一写入操作,更新对应于所述第一实体单元的写入戳记;
对应于所述数据整并操作,更新对应于所述第二实体单元的写入戳记;
在数据恢复操作中,搜寻所述多个实体单元中具有最新写入戳记的实体单元;
根据具有所述最新写入戳记的所述实体单元获得第三单元管理信息,其中所述第三单元管理信息反映多个第三已使用实体单元的使用顺序;以及
根据所述第三单元管理信息扫描所述多个第三已使用实体单元料。
6.根据权利要求5所述的存储器存储装置,其中所述第一单元管理信息包括所述多个第一已使用实体单元的排序信息,所述第二单元管理信息包括所述多个第二已使用实体单元的排序信息,且根据所述第一单元管理信息记录所述第二单元管理信息的操作包括:
将所述第一实体单元的排序信息从所述多个第一已使用实体单元的所述排序信息中移除;以及
根据所述第二实体单元及所述多个第一已使用实体单元中剩余的实体单元的排序信息获得所述多个第二已使用实体单元的所述排序信息。
7.根据权利要求5所述的存储器存储装置,其中所述第一单元管理信息与所述第二单元管理信息分别存储于所述第一实体单元与所述第二实体单元中。
8.根据权利要求5所述的存储器存储装置,其中所述存储器控制电路单元更用以:
在执行所述数据整并操作之前,执行第二写入操作,以将第二数据存储至所述多个实体单元中的第三实体单元,
其中所述多个第二已使用实体单元还包括所述第三实体单元。
9.一种存储器控制电路单元,其特征在于,用以控制可复写式非易失性存储器模块,所述存储器控制电路单元包括:
主机接口,用以连接至主机系统;
存储器接口,用以连接至所述可复写式非易失性存储器模块,其中所述可复写式非易失性存储器模块包括多个实体单元;以及
存储器管理电路,连接至所述主机接口与所述存储器接口,
其中所述存储器管理电路用以:
执行第一写入操作,以将第一数据存储至所述多个实体单元中的第一实体单元;
对应于所述第一写入操作记录第一单元管理信息,其中所述第一单元管理信息反映多个第一已使用实体单元的使用顺序,且所述多个第一已使用实体单元包括所述第一实体单元;
执行数据整并操作,以将所述第一实体单元中的至少部分数据复制到所述多个实体单元中的第二实体单元;
在执行所述数据整并操作后,根据所述第一单元管理信息记录第二单元管理信息,其中所述第二单元管理信息反映多个第二已使用实体单元的使用顺序,所述多个第二已使用实体单元包括所述第二实体单元但不包括所述第一实体单元;
对应于所述第一写入操作,更新对应于所述第一实体单元的写入戳记;
对应于所述数据整并操作,更新对应于所述第二实体单元的写入戳记;
在数据恢复操作中,搜寻所述多个实体单元中具有最新写入戳记的实体单元;
根据具有所述最新写入戳记的所述实体单元获得第三单元管理信息,其中所述第三单元管理信息反映多个第三已使用实体单元的使用顺序;以及
根据所述第三单元管理信息扫描所述多个第三已使用实体单元料。
10.根据权利要求9所述的存储器控制电路单元,其中所述第一单元管理信息包括所述多个第一已使用实体单元的排序信息,所述第二单元管理信息包括所述多个第二已使用实体单元的排序信息,且根据所述第一单元管理信息记录所述第二单元管理信息的操作包括:
将所述第一实体单元的排序信息从所述多个第一已使用实体单元的所述排序信息中移除;以及
根据所述第二实体单元及所述多个第一已使用实体单元中剩余的实体单元的排序信息获得所述多个第二已使用实体单元的所述排序信息。
11.根据权利要求9所述的存储器控制电路单元,其中所述第一单元管理信息与所述第二单元管理信息分别存储于所述第一实体单元与所述第二实体单元中。
12.根据权利要求9所述的存储器控制电路单元,其中所述存储器管理电路更用以:
在执行所述数据整并操作之前,执行第二写入操作,以将第二数据存储至所述多个实体单元中的第三实体单元,
其中所述多个第二已使用实体单元还包括所述第三实体单元。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111488077.4A CN114203239B (zh) | 2021-12-07 | 2021-12-07 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
TW110146501A TWI795119B (zh) | 2021-12-07 | 2021-12-13 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
US17/565,380 US11803331B2 (en) | 2021-12-07 | 2021-12-29 | Method for recording unit management information, memory storage device and memory control circuit unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111488077.4A CN114203239B (zh) | 2021-12-07 | 2021-12-07 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114203239A CN114203239A (zh) | 2022-03-18 |
CN114203239B true CN114203239B (zh) | 2024-04-30 |
Family
ID=80651208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111488077.4A Active CN114203239B (zh) | 2021-12-07 | 2021-12-07 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11803331B2 (zh) |
CN (1) | CN114203239B (zh) |
TW (1) | TWI795119B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1734642A (zh) * | 2004-07-08 | 2006-02-15 | 索尼株式会社 | 信息记录系统和方法、程序存储介质和程序 |
KR20120045421A (ko) * | 2010-10-29 | 2012-05-09 | 삼성전자주식회사 | 메모리 시스템 및 데이터 저장 장치 그리고 그것의 데이터 관리 방법 |
CN103021460A (zh) * | 2011-09-22 | 2013-04-03 | 爱思开海力士有限公司 | 包括存储器件和系统的半导体器件的设定数据储存 |
CN107818808A (zh) * | 2016-09-14 | 2018-03-20 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器存储装置 |
US10025708B1 (en) * | 2017-09-08 | 2018-07-17 | Phison Electronics Corp. | Memory management method, memory control circuit unit and memory storage apparatus |
CN109273037A (zh) * | 2017-07-17 | 2019-01-25 | 大心电子(英属维京群岛)股份有限公司 | 数据读取方法以及存储控制器 |
CN110333770A (zh) * | 2019-07-10 | 2019-10-15 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN110879793A (zh) * | 2018-09-05 | 2020-03-13 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN113168375A (zh) * | 2018-10-30 | 2021-07-23 | 美光科技公司 | 使用贪婪无用单元收集的存储器组件中的周期性清空 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI537966B (zh) * | 2014-10-03 | 2016-06-11 | 群聯電子股份有限公司 | 錯誤處理方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI585770B (zh) * | 2015-08-11 | 2017-06-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |
TWI571881B (zh) * | 2015-10-23 | 2017-02-21 | 群聯電子股份有限公司 | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 |
US9977597B2 (en) * | 2016-05-10 | 2018-05-22 | Seagate Technology Llc | Enhanced read recovery based on write time information |
TWI592799B (zh) * | 2016-07-01 | 2017-07-21 | 群聯電子股份有限公司 | 映射表更新方法、記憶體控制電路單元及記憶體儲存裝置 |
CN110390985B (zh) * | 2018-04-20 | 2021-08-03 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
TWI668570B (zh) * | 2018-08-09 | 2019-08-11 | 群聯電子股份有限公司 | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI705331B (zh) * | 2019-06-24 | 2020-09-21 | 群聯電子股份有限公司 | 有效資料合併方法、記憶體控制電路單元與記憶體儲存裝置 |
US11620234B2 (en) * | 2020-06-29 | 2023-04-04 | Western Digital Technologies, Inc. | Operation-deterministic write operations for data recovery and integrity checks |
-
2021
- 2021-12-07 CN CN202111488077.4A patent/CN114203239B/zh active Active
- 2021-12-13 TW TW110146501A patent/TWI795119B/zh active
- 2021-12-29 US US17/565,380 patent/US11803331B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1734642A (zh) * | 2004-07-08 | 2006-02-15 | 索尼株式会社 | 信息记录系统和方法、程序存储介质和程序 |
KR20120045421A (ko) * | 2010-10-29 | 2012-05-09 | 삼성전자주식회사 | 메모리 시스템 및 데이터 저장 장치 그리고 그것의 데이터 관리 방법 |
CN103021460A (zh) * | 2011-09-22 | 2013-04-03 | 爱思开海力士有限公司 | 包括存储器件和系统的半导体器件的设定数据储存 |
CN107818808A (zh) * | 2016-09-14 | 2018-03-20 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器存储装置 |
CN109273037A (zh) * | 2017-07-17 | 2019-01-25 | 大心电子(英属维京群岛)股份有限公司 | 数据读取方法以及存储控制器 |
US10025708B1 (en) * | 2017-09-08 | 2018-07-17 | Phison Electronics Corp. | Memory management method, memory control circuit unit and memory storage apparatus |
CN110879793A (zh) * | 2018-09-05 | 2020-03-13 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN113168375A (zh) * | 2018-10-30 | 2021-07-23 | 美光科技公司 | 使用贪婪无用单元收集的存储器组件中的周期性清空 |
CN110333770A (zh) * | 2019-07-10 | 2019-10-15 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
Also Published As
Publication number | Publication date |
---|---|
US20230176782A1 (en) | 2023-06-08 |
CN114203239A (zh) | 2022-03-18 |
US11803331B2 (en) | 2023-10-31 |
TWI795119B (zh) | 2023-03-01 |
TW202324113A (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220291862A1 (en) | Abnormal data management method, memory storage device, and memory control circuit unit | |
TWI702496B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI766582B (zh) | 有效資料合併方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN112051971B (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
CN111737165B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN111767005B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN110308876B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
TW202201229A (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW202109536A (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
US11983069B2 (en) | Data rebuilding method, memory storage apparatus, and memory control circuit unit | |
CN112988076B (zh) | 快闪存储器控制方法、存储装置及控制器 | |
CN112835536B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN112799601B (zh) | 有效数据合并方法、存储器存储装置及控制电路单元 | |
CN114203239B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
TWI814501B (zh) | 映射表重建方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI813362B (zh) | 部分抹除管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI826161B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI839144B (zh) | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI741779B (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI823792B (zh) | 映射表更新方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI724427B (zh) | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 | |
US11954329B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
CN112445418B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN108121663B (zh) | 数据存储方法、存储器存储装置及存储器控制电路单元 | |
CN116009790A (zh) | 有效节点管理方法、存储装置及存储器控制电路单元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |