CN113094307A - 映射信息管理方法、存储器存储装置及存储器控制器 - Google Patents
映射信息管理方法、存储器存储装置及存储器控制器 Download PDFInfo
- Publication number
- CN113094307A CN113094307A CN202110369184.9A CN202110369184A CN113094307A CN 113094307 A CN113094307 A CN 113094307A CN 202110369184 A CN202110369184 A CN 202110369184A CN 113094307 A CN113094307 A CN 113094307A
- Authority
- CN
- China
- Prior art keywords
- physical
- unit
- program
- memory
- entity
- 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
- 238000013507 mapping Methods 0.000 title claims abstract description 97
- 230000005055 memory storage Effects 0.000 title claims abstract description 43
- 238000007726 management method Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C14/00—Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
Abstract
本发明提供一种映射信息管理方法、存储器存储装置及存储器控制器。所述方法包括:在存储器存储装置的第一实体单元中划分多个实体窗,其中每一个实体窗包括多个实体程序化单元;对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作;在执行所述第一程序化操作的过程中,检测存储器存储装置的非预期断电;在所述非预期断电恢复后,更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。因此,可提高存储器存储装置的数据稳定性。
Description
技术领域
本发明涉及一种存储器存储装置中的管理信息的管理技术,且尤其涉及一种映射信息管理方法、存储器存储装置及存储器控制器。
背景技术
非易失性存储器模块(例如快闪存储器模块)具有数据非易失性保存、低耗电及数据存取快速等优点。一般来说,在同一个字线具有多个实体页的存储器模块中,数据可能会先被存储至某一字线的下页,然后再接续被存储至此字线的上页和/或中页。然而,在将数据写入至上页和/或中页的过程中,若发生非预期断电,则突然中断的上页和/或中页的数据写入程序可能会影响到同一个字线中先前已经被正常写入的下页数据,使其产生错误。在后续对于此非预期断电的恢复程序中,这个受影响的下页中的错误数据若没有被系统查觉并更正,则存储器模块的数据稳定性将受影响。
发明内容
本发明提供一种映射信息管理方法、存储器存储装置及存储器控制器,可提高存储器存储装置的数据稳定性。
本发明的实施例提供一种映射信息管理方法,其用于存储器存储装置。所述存储器存储装置包括存储器模块。所述存储器模块包括多个实体单元。所述映射信息管理方法包括:在所述多个实体单元中的第一实体单元中划分多个实体窗,其中每一个实体窗包括多个实体程序化单元;对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作;在执行所述第一程序化操作的过程中,检测所述存储器存储装置的非预期断电;在所述非预期断电恢复后,更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
在本发明的一实施例中,更新与所述多个实体窗中的所述第二实体窗中的所述第二实体程序化单元有关的所述映射信息的步骤包括:响应于所述非预期断电被恢复,对所述第二实体程序化单元所存储的数据进行解码;以及响应于所述第二实体程序化单元所存储的所述数据无法被成功解码,更新与所述第二实体程序化单元有关的所述映射信息。
在本发明的一实施例中,所述的映射信息管理方法还包括:在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,对所述第二实体程序化单元执行第二程序化操作;以及
对应于所述第二程序化操作,将映射至所述第三实体程序化单元的所述逻辑单元改为映射至所述第二实体程序化单元。
在本发明的一实施例中,所述的映射信息管理方法还包括:建立日志数据;以及在将所述逻辑单元映射至所述第二实体程序化单元之后,持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
本发明的实施例另提供一种存储器存储装置,其包括连接接口、存储器模块及存储器控制器。所述连接接口用以连接至主机系统。所述存储器模块包括多个实体单元。所述存储器控制器连接至所述连接接口与所述存储器模块。所述存储器控制器用以在所述多个实体单元中的第一实体单元中划分多个实体窗。每一个实体窗包括多个实体程序化单元。所述存储器控制器还用以对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作。在执行所述第一程序化操作的过程中,所述存储器控制器还用以检测所述存储器存储装置的非预期断电。在所述非预期断电恢复后,所述存储器控制器还用以更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
在本发明的一实施例中,在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,所述存储器控制器还用以对所述第二实体程序化单元执行第二程序化操作。对应于所述第二程序化操作,所述存储器控制器还用以将映射至所述第三实体程序化单元的逻辑单元改为映射至所述第二实体程序化单元。
在本发明的一实施例中,所述存储器控制器还用以建立日志数据。在将所述逻辑单元映射至所述第二实体程序化单元之后,所述存储器控制器还用以持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
本发明的实施例另提供一种存储器控制器,其用以控制存储器模块。所述存储器模块包括多个实体单元。所述存储器控制器包括主机接口、存储器接口及存储器控制电路。所述主机接口用以连接至主机系统。所述存储器接口用以连接至所述存储器模块。所述存储器控制电路连接至所述主机接口与所述存储器接口。所述存储器控制电路用以在所述多个实体单元中的第一实体单元中划分多个实体窗,且每一个实体窗包括多个实体程序化单元。所述存储器控制电路还用以对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作。在执行所述第一程序化操作的过程中,所述存储器控制电路还用以检测所述存储器控制器的非预期断电。在所述非预期断电恢复后,所述存储器控制电路还用以更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
在本发明的一实施例中,所述第一实体程序化单元与所述第二实体程序化单元皆位于所述可复写式非挥发性存储器模块中的第一字线。
在本发明的一实施例中,所述第二实体程序化单元包括位于所述第一字线的下实体程序化单元,且所述第一实体程序化单元包括位于所述第一字线的上实体程序化单元或中实体程序化单元。
在本发明的一实施例中,更新与所述多个实体窗中的所述第二实体窗中的所述第二实体程序化单元有关的所述映射信息的操作包括:响应于所述非预期断电被恢复,对所述第二实体程序化单元所存储的数据进行解码;以及
响应于所述第二实体程序化单元所存储的所述数据无法被成功解码,更新与所述第二实体程序化单元有关的所述映射信息。
在本发明的一实施例中,在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,所述存储器控制电路还用以对所述第二实体程序化单元执行第二程序化操作。对应于所述第二程序化操作,所述存储器控制电路还用以将映射至所述第三实体程序化单元的所述逻辑单元改为映射至所述第二实体程序化单元。
在本发明的一实施例中,所述存储器控制电路还用以建立日志数据。在将所述逻辑单元映射至所述第二实体程序化单元之后,所述存储器控制电路还用以持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
基于上述,第一实体单元中可划分多个实体窗,其中每一个实体窗包括多个实体程序化单元。在对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作的过程中,存储器存储装置的非预期断电可被检测。在所述非预期断电恢复后,与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息可被更新,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。因此,可提高存储器存储装置的数据稳定性。
附图说明
图1是根据本发明的实施例所示出的存储器存储装置的示意图;
图2是根据本发明的实施例所示出的存储器控制器的示意图;
图3是根据本发明的实施例所示出的管理存储器模块的示意图;
图4是根据本发明的一实施例所示出的利用实体窗来管理实体单元中的实体程序化单元的示意图;
图5是根据本发明的一实施例所示出的将数据存储至实体程序化单元的示意图;
图6是根据本发明的一实施例所示出的更新与实体程序化单元有关的映射信息的示意图;
图7是根据本发明的一实施例所示出的映射信息管理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
图1是根据本发明的实施例所示出的存储器存储装置的示意图。请参照图1,存储器存储系统10包括主机系统11与存储器存储装置12。主机系统11可为任意型态的计算机系统。例如。主机系统11可为笔记本计算机、台式计算机、智能手机、平板计算机、工业计算机、游戏机、数码相机等各式电子系统。存储器存储装置12用以存储来自主机系统11的数据。例如,存储器存储装置12可包括固态硬盘、U盘、存储卡或其他类型的非易失性存储装置。主机系统11可经由串行高级技术附件(Serial Advanced Technology Attachment,SATA)接口、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)、通用串行总线(Universal Serial Bus,USB)或其他类型的连接接口电性连接至存储器存储装置12。因此,主机系统11可将数据存储至存储器存储装置12和/或从存储器存储装置12读取数据。
存储器存储装置12可包括连接接口121、存储器模块122及存储器控制器123。连接接口121用以将存储器存储装置12连接至主机系统11。例如,连接接口121可支持SATA、PCIExpress或USB等连接接口标准。存储器存储装置12可经由连接接口121与主机系统11通信。
存储器模块122用以存储数据。存储器模块122可包括可复写式非易失性存储器模块。存储器模块122包括存储单元阵列。存储器模块122中的存储单元是以电压的形式来存储数据。例如,存储器模块122可包括单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块或其他具有相似特性的存储器模块。
存储器控制器123连接至连接接口121与存储器模块122。存储器控制器123可用以控制存储器存储装置12。例如,存储器控制器123可控制连接接口121与存储器模块122以进行数据存取与数据管理。例如,存储器控制器123可包括中央处理单元(CPU)、或是其他可编程的一般用途或特殊用途的微处理器、数字信号处理器(Digital Signal Processor,DSP)、可编程控制器、专用集成电路(Application Specific Integrated Circuits,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)或其他类似装置或这些装置的组合。
在一实施例中,存储器控制器123亦称为快闪存储器控制器。在一实施例中,存储器模块122亦称为快闪存储器模块。存储器模块122可接收来自存储器控制器123的指令序列并根据此指令序列存取存储单元。
图2是根据本发明的实施例所示出的存储器控制器的示意图。请参照图1与图2,存储器控制器123包括主机接口21、存储器接口22、存储器控制电路23及解码电路24。主机接口21用以经由连接接口121连接至主机系统11,以与主机系统11通信。存储器接口22用以连接至存储器模块122。
存储器控制电路23连接至主机接口21、存储器接口22及解码电路24。存储器控制电路23可用以控制主机接口21、存储器接口22及解码电路24。此外,存储器控制电路23可经由主机接口21与主机系统11通信并经由存储器接口22存取存储器模块122。存储器控制电路23也可视为存储器控制器123的控制核心。在以下实施例中,对于存储器控制电路23的说明等同于对于存储器控制器123的说明。
解码电路24用以编码与解码数据。例如,当接收到来自主机系统11的写入指令时,解码电路24可对此写入指令所指示存储的数据进行编码。通过编码产生的数据(例如原始数据与检错码)可被存储至存储器模块122。尔后,当主机系统11(和/或存储器控制电路23)欲读取此数据时,解码电路24可对此编码数据进行解码以尝试更正其中可能存在的错误。例如,解码电路24可支持低密度奇偶检查码(low density parity check code,LDPCcode)或其他类型的编/解码算法。
图3是根据本发明的实施例所示出的管理存储器模块的示意图。请参照图1至图3,存储器模块122包括多个实体单元301(1)~301(B)。每一个实体单元皆包括多个存储单元且用以非易失性地存储数据。例如,一个实体单元可包括一或多个实体区块。每一个实体单元可包括多个实体程序化单元。例如,一个实体程序化单元可包括一或多个实体页。一个实体程序化单元中的多个存储单元可被同时程序化以存储数据。此外,一个实体单元中的所有存储单元可被同时抹除。
在一实施例中,存储器模块122中的实体单元301(1)~301(A)与301(A+1)~301(B)可分别被划分至数据区31与闲置区32。数据区31中的实体单元301(1)~301(A)存储有来自主机系统11的数据(亦称为使用者数据)。闲置区32中的实体单元301(A+1)~301(B)未存储数据。
在一实施例中,当有来自于主机系统11的新数据需要存储时,闲置区32中的一或多个实体单元会被选取并且用于存储此新数据。闲置区32中被选取以存储数据的实体单元可被划分至数据区31。
在一实施例中,存储器控制电路23可配置多个逻辑单元302(1)~302(C)来映射数据区31中的实体单元。例如,一个逻辑单元可由一或多个逻辑地址组成。逻辑单元与实体单元之间的映射关系则可记载于映射表格中。例如,一个映射表格可包含一或多个逻辑至实体映射表。记载于逻辑至实体映射表中的信息(亦称为映射信息)可反映至少一逻辑单元与至少一实体单元(或至少一实体程序化单元)之间的映射关系。当接收到来自主机系统11的存取指令时,存储器控制电路23可查询相应的映射表格来存取数据区31中的实体单元。
在一实施例中,若某一实体单元(或某一实体程序化单元)当前有被某一逻辑单元映射,则表示此实体单元(或此实体程序化单元)中存储有有效数据。然而,若某一实体单元(或某一实体程序化单元)当前未被任何逻辑单元映射,则表示此实体单元(或此实体程序化单元)中未存储有效数据。在一实施例中,未存储有效数据的实体单元可被重新划分至闲置区32。
图4是根据本发明的一实施例所示出的利用实体窗来管理实体单元中的实体程序化单元的示意图。请参照图4,在一实施例中,存储器控制电路23可从图3的闲置区32中选择实体单元301(1)以存储来自主机系统11的数据。
在一实施例中,当前用来存储数据的实体单元301(1)亦称为开启单元(或开启区块)。尔后,当实体单元301(1)被写满后,另一个实体单元可被选择作为新的开启单元,以替换被写满的实体单元301(1)而接续存储来自主机系统11的数据。
在一实施例中,存储器控制电路23可利用实体窗来管理实体单元中的实体程序化单元。在一实施例中,存储器控制电路23可在实体单元301(1)中划分多个实体窗41(1)~41(N),其中每一个实体窗皆包括多个实体程序化单元,且N为大于1的整数。在实体单元301(1)作为开启单元的状态下,存储器控制电路23可依序将来自主机系统11的数据存储至此些实体窗41(1)~41(N)中的实体程序化单元中。在一实施例中,将数据写入(即存储)至某一实体程序化单元中的操作亦称为程序化操作。
在一实施例中,在某一个实体窗中的实体程序化单元皆已被程序化后,至少一映射表格可被逻辑的连结至此实体窗。例如,来自主机系统11的一部分数据可先被写入至实体窗41(1)中的实体程序化单元。在实体窗41(1)中的实体程序化单元皆已被程序化后,映射表格42(1)可被连结至此实体窗。映射表格42(1)中记载了与实体窗41(1)中的至少部分实体程序化单元有关的映射信息。例如,映射表格42(1)可记载实体窗41(1)中的至少部分实体程序化单元与至少一逻辑单元之间的映射关系。
接着,来自主机系统11的另一部分数据可接续被写入至实体窗41(2)中的实体程序化单元。在实体窗41(2)中的实体程序化单元皆已被程序化后,映射表格42(2)可被连结至此实体窗。映射表格42(2)中记载了与实体窗41(2)中的至少部分实体程序化单元有关的映射信息。例如,映射表格42(2)可记载实体窗41(2)中的至少部分实体程序化单元与至少一逻辑单元之间的映射关系。
在一实施例中,在某一个实体窗与至少一映射表格之间逻辑上的连结已被建立(即此映射表格已记载了与此实体窗有关的映射信息)后,存储器控制电路23可判定此实体窗(和/或存储于此实体窗中的数据)已处于稳定状态。以图4为例,在建立实体窗41(1)与映射表格42(1)之间的连结关系后,存储器控制电路23可判定实体窗41(1)和/或存储于实体窗41(1)中的数据已处于稳定状态。同理,在建立实体窗41(2)与映射表格42(2)之间的连结关系后,存储器控制电路23可判定实体窗41(2)和/或存储于实体窗41(2)中的数据已处于稳定状态。
在一实施例中,若某一个实体窗未与任一映射表格建立连结,则存储器控制电路23可判定此实体窗(和/或存储于此实体窗中的数据)未处于稳定状态。以图4为例,由于实体窗41(3)~41(N)皆未被连结至任何映射表格,故存储器控制电路23可判定实体窗41(3)~41(N)(和/或存储于实体窗41(3)~41(N)中的数据)未处于稳定状态。
在一实施例中,在实体窗41(1)与41(2)皆处于稳定状态后,存储器控制电路23可对实体窗41(3)中的至少一实体程序化单元(亦称为第一实体程序化单元)执行程序化操作(亦称为第一程序化操作),以将来自于主机系统11的数据401存储至实体窗41(3)中的实体程序化单元。须注意的是,在执行第一程序化操作的过程中,实体窗41(3)非处于稳定状态。
在一实施例中,在执行第一程序化操作的过程中,存储器控制电路23可检测发生于存储器存储装置12的非预期断电。例如,此非预期断电可包括突然的电压变化(例如电压突然下降至低于某一门槛值)。在一实施例中,此非预期断电可导致第一程序化操作无法顺利完成。此外,此非预期断电和/或未顺利完成的第一程序化操作(或失败的第一程序化操作)可导致原先已处于稳定状态的实体窗中的部分数据发生异常。
图5是根据本发明的一实施例所示出的将数据存储至实体程序化单元的示意图。请参照图5,在一实施例中,假设实体窗41(2)包括实体程序化单元501(1)~501(D),且实体窗41(3)包括实体程序化单元502(1)~502(E)。在完成对于实体程序化单元501(1)~501(D)的程序化操作后,实体窗41(2)可处于稳定状态。在实体窗41(2)已处于稳定状态后,存储器控制电路23可对实体窗41(3)中的实体程序化单元502(1)(即第一实体程序化单元)执行第一程序化操作,以将数据401存储至实体程序化单元502(1)中。
在一实施例中,假设在对实体程序化单元502(1)执行第一程序化操作的过程中,发生了非预期断电。此非预期断电导致对实体程序化单元502(1)执行的第一程序化操作无法顺利完成。同时,此非预期断电和/或未顺利完成的第一程序化操作(或失败的第一程序化操作)对存储于实体程序化单元501(D)(亦称为第二实体程序化单元)中的数据也产生影响,例如在实体程序化单元501(D)中的数据中产生了新的错误比特。
在一实施例中,实体程序化单元502(1)与实体程序化单元501(D)位于存储器模块122中的同一条字线(亦称为第一字线)上。例如,较早程序化的实体程序化单元501(D)可包括位于第一字线的下实体程序化单元(亦称为下页),而较晚被程序化的实体程序化单元502(1)可包括位于所述第一字线的上实体程序化单元(亦称为上页)或中实体程序化单元(亦称为中页)。
在一实施例中,在恢复所述非预期断电后,存储器控制电路23可尝试修复此非预期断电对于存储器模块122的不良影响。例如,响应于所述非预期断电被恢复,解码电路24可尝试对实体程序化单元501(D)所存储的数据进行解码。若解码电路24无法成功解码实体程序化单元501(D)所存储的数据,表示实体程序化单元501(D)所存储的数据中受到失败的第一程序化操作的影响而产生了太多的错误比特,且此些错误比特超过了解码电路24的解码能力(或错误更正能力)。
在一实施例中,在恢复所述非预期断电后,响应于实体程序化单元501(D)所存储的数据无法被成功解码,存储器控制电路23可更新图4的映射表格42(2)中与实体程序化单元501(D)有关的映射信息。例如,在更新映射表格42(2)中与实体程序化单元501(D)有关的映射信息的操作中,存储器控制电路23可将原先映射至实体程序化单元501(D)的逻辑单元回复为映射至另一实体程序化单元(亦称为第三实体程序化单元)。
图6是根据本发明的一实施例所示出的更新与实体程序化单元有关的映射信息的示意图。请参照图6,假设在发生所述非预期断电时,图4的映射表格42(2)中记载的信息反映了逻辑单元602(1)与实体程序化单元501(D)之间的映射关系。
在恢复所述非预期断电后,响应于实体程序化单元501(D)所存储的数据无法被成功解码,存储器控制电路23可移除逻辑单元602(1)与实体程序化单元501(D)之间的映射关系并重新将逻辑单元602(1)映射至实体程序化单元501(1)(即第三实体程序化单元)。存储器控制电路23可根据调整后的与逻辑单元602(1)有关的映射信息来更新映射表格42(2),以将逻辑单元602(1)与实体程序化单元501(1)之间的映射关系记载于映射表格42(2)中。
在图4的一实施例中,在将数据写入至实体窗41(2)的过程中,存储器控制电路23可先对图5的实体程序化单元501(1)执行一个程序化操作,以将属于图6的逻辑单元602(1)的(旧的)数据存储至实体程序化单元501(1)中。同时,存储器控制电路23可将逻辑单元602(1)映射至实体程序化单元501(1)。尔后,存储器控制电路23可对实体程序化单元501(D)执行另一个程序化操作(亦称为第二程序化操作),以将属于逻辑单元602(1)的(新的)数据存储至实体程序化单元501(D)中。对应于第二程序化操作,存储器控制电路23可将原先映射至实体程序化单元501(1)的逻辑单元602(1)改为映射至实体程序化单元501(D)。同时,存储器控制电路23可将逻辑单元602(1)与实体程序化单元501(D)之间的映射关系记载于映射表格42(2)中。
也就是说,在图4至图6的一实施例中,属于逻辑单元602(1)的旧数据是先被存储于实体程序化单元501(1)中,然后属于逻辑单元602(1)的新数据再被存储于实体程序化单元501(D)中。因此,最后当实体窗41(2)处于稳定状态时,映射表格42(2)所记载的信息可反映逻辑单元602(1)与实体程序化单元501(D)之间的(最新的)映射关系。尔后,在发生图5的实施例中的非预期断电之后,在图6的实施例中,逻辑单元602(1)再被从当前映射的实体程序化单元501(D)回复为映射至实体程序化单元501(1)。
在图6的一实施例中,在将逻辑单元602(1)从当前映射的实体程序化单元501(D)回复为映射至实体程序化单元501(1)后,当后续主机系统11指示读取属于逻辑单元602(1)的数据时,存储器控制电路23可将存储于实体程序化单元501(1)中的属于逻辑单元602(1)的旧数据回传给主机系统11。因此,可避免主机系统11从实体程序化单元501(D)读取到已知无法成功解码的数据。
在一实施例中,存储器控制电路23可建立一个日志数据。在对某一个实体窗中的实体程序化单元执行程序化操作时,此日志数据可持续记载与一或多个处于稳定状态的实体窗有关的映射信息。例如,在一实施例中,在将逻辑单元602(1)从映射至实体程序化单元501(1)(即第三实体程序化单元)改为映射至实体程序化单元501(D)(即第二实体程序化单元)之后,存储器控制电路23可持续将逻辑单元602(1)与实体程序化单元501(1)之间的(旧的)映射关系记载于此日志数据中。尔后,在图6的实施例中,存储器控制电路23可查询此日志数据而将逻辑单元602(1)回复为映射至实体程序化单元501(1)。
在图6的一实施例中,在恢复所述非预期断电后,若实体程序化单元501(D)所存储的数据可以被成功解码,则存储器控制电路23可不更新图4的映射表格42(2)中与实体程序化单元501(D)有关的映射信息。也就是说,在图6的一实施例中,若实体程序化单元501(D)所存储的数据可以被成功解码,则逻辑单元602(1)与实体程序化单元501(D)之间的映射关系可被维持(即不被移除)。
须注意的是,在前述实施例中,是以实体程序化单元502(1)、501(D)及501(1)分别作为第一实体程序化单元、第二实体程序化单元及第三实体程序化单元的范例,但本发明不以此为限。在另一实施例中,第一实体程序化单元、第二实体程序化单元及第三实体程序化单元皆可以是指其他的实体程序化单元,视实务需求而定,只要符合前述关于操作时序的描述即可。
图7是根据本发明的一实施例所示出的映射信息管理方法的流程图。请参照图7,在步骤S701中,在存储器存储装置中的第一实体单元中划分多个实体窗,其中每一个实体窗包括多个实体程序化单元。在步骤S702中,对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作。在步骤S703中,在执行所述第一程序化操作的过程中,检测所述存储器存储装置的非预期断电。在步骤S704中,在所述非预期断电恢复后,更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
然而,图7中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图7中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图7的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,同一个实体单元中的多个实体程序化单元可通过实体窗来进行管理,从而改善对于实体程序化单元的管理效率。特别是,针对容量越来越大的实体单元而言,使用所述实体窗可更加显着提高对于实体程序化单元的管理效率。此外,在发生非预期断电后,可通过将原先指向已处于稳定状态的实体窗中数据无法成功更正的实体程序化单元的逻辑单元,回复为指向存储有此逻辑单元的旧数据(亦称为复本数据)的实体程序化单元,从而避免主机系统在后续的读取过程中读取到无法更正的数据。藉此,可提高存储器存储装置的数据稳定性。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (18)
1.一种映射信息管理方法,其特征在于,用于存储器存储装置,所述存储器存储装置包括存储器模块,所述存储器模块包括多个实体单元,且所述映射信息管理方法包括:
在所述多个实体单元中的第一实体单元中划分多个实体窗,其中每一个实体窗包括多个实体程序化单元;
对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作;
在执行所述第一程序化操作的过程中,检测所述存储器存储装置的非预期断电;以及
在所述非预期断电恢复后,更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
2.根据权利要求1所述的映射信息管理方法,其中所述第一实体程序化单元与所述第二实体程序化单元皆位于所述存储器模块中的第一字线。
3.根据权利要求2所述的映射信息管理方法,其中所述第二实体程序化单元包括位于所述第一字线的下实体程序化单元,且所述第一实体程序化单元包括位于所述第一字线的上实体程序化单元或中实体程序化单元。
4.根据权利要求1所述的映射信息管理方法,其中更新与所述多个实体窗中的所述第二实体窗中的所述第二实体程序化单元有关的所述映射信息的步骤包括:
响应于所述非预期断电被恢复,对所述第二实体程序化单元所存储的数据进行解码;以及
响应于所述第二实体程序化单元所存储的所述数据无法被成功解码,更新与所述第二实体程序化单元有关的所述映射信息。
5.根据权利要求1所述的映射信息管理方法,还包括:
在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,对所述第二实体程序化单元执行第二程序化操作;以及
对应于所述第二程序化操作,将映射至所述第三实体程序化单元的所述逻辑单元改为映射至所述第二实体程序化单元。
6.根据权利要求5所述的映射信息管理方法,还包括:
建立日志数据;以及
在将所述逻辑单元映射至所述第二实体程序化单元之后,持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
7.一种存储器存储装置,其特征在于,包括:
连接接口,用以连接至主机系统;
存储器模块,其中所述存储器模块包括多个实体单元;以及
存储器控制器,连接至所述连接接口与所述存储器模块,
其中所述存储器控制器用以在所述多个实体单元中的第一实体单元中划分多个实体窗,且每一个实体窗包括多个实体程序化单元,
所述存储器控制器还用以对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作,
在执行所述第一程序化操作的过程中,所述存储器控制器还用以检测所述存储器存储装置的非预期断电,并且
在所述非预期断电恢复后,所述存储器控制器还用以更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
8.根据权利要求7所述的存储器存储装置,其中所述第一实体程序化单元与所述第二实体程序化单元皆位于所述存储器模块中的第一字线。
9.根据权利要求8所述的存储器存储装置,其中所述第二实体程序化单元包括位于所述第一字线的下实体程序化单元,且所述第一实体程序化单元包括位于所述第一字线的上实体程序化单元或中实体程序化单元。
10.根据权利要求7所述的存储器存储装置,其中更新与所述多个实体窗中的所述第二实体窗中的所述第二实体程序化单元有关的所述映射信息的操作包括:
响应于所述非预期断电被恢复,对所述第二实体程序化单元所存储的数据进行解码;以及
响应于所述第二实体程序化单元所存储的所述数据无法被成功解码,更新与所述第二实体程序化单元有关的所述映射信息。
11.根据权利要求7所述的存储器存储装置,其中在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,所述存储器控制器还用以对所述第二实体程序化单元执行第二程序化操作,并且
对应于所述第二程序化操作,所述存储器控制器还用以将映射至所述第三实体程序化单元的所述逻辑单元改为映射至所述第二实体程序化单元。
12.根据权利要求11所述的存储器存储装置,其中所述存储器控制器还用以建立日志数据,并且
在将所述逻辑单元映射至所述第二实体程序化单元之后,所述存储器控制器还用以持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
13.一种存储器控制器,其特征在于,用以控制存储器模块,其中所述存储器模块包括多个实体单元,且所述存储器控制器包括:
主机接口,用以连接至主机系统;
存储器接口,用以连接至所述存储器模块;以及
存储器控制电路,连接至所述主机接口与所述存储器接口,
其中所述存储器控制电路用以在所述多个实体单元中的第一实体单元中划分多个实体窗,且每一个实体窗包括多个实体程序化单元,
所述存储器控制电路还用以对所述多个实体窗中的第一实体窗中的第一实体程序化单元执行第一程序化操作,
在执行所述第一程序化操作的过程中,所述存储器控制电路还用以检测所述存储器控制器的非预期断电,并且
在所述非预期断电恢复后,所述存储器控制电路还用以更新与所述多个实体窗中的第二实体窗中的第二实体程序化单元有关的映射信息,以将映射至所述第二实体程序化单元的逻辑单元回复为映射至第三实体程序化单元。
14.根据权利要求13所述的存储器控制器,其中所述第一实体程序化单元与所述第二实体程序化单元皆位于所述存储器模块中的第一字线。
15.根据权利要求14所述的存储器控制器,其中所述第二实体程序化单元包括位于所述第一字线的下实体程序化单元,且所述第一实体程序化单元包括位于所述第一字线的上实体程序化单元或中实体程序化单元。
16.根据权利要求13所述的存储器控制器,其中更新与所述多个实体窗中的所述第二实体窗中的所述第二实体程序化单元有关的所述映射信息的操作包括:
响应于所述非预期断电被恢复,对所述第二实体程序化单元所存储的数据进行解码;以及
响应于所述第二实体程序化单元所存储的所述数据无法被成功解码,更新与所述第二实体程序化单元有关的所述映射信息。
17.根据权利要求13所述的存储器控制器,其中在对所述多个实体窗中的所述第一实体窗中的所述第一实体程序化单元执行所述第一程序化操作之前,所述存储器控制电路还用以对所述第二实体程序化单元执行第二程序化操作,并且
对应于所述第二程序化操作,所述存储器控制电路还用以将映射至所述第三实体程序化单元的所述逻辑单元改为映射至所述第二实体程序化单元。
18.根据权利要求17所述的存储器控制器,其中所述存储器控制电路还用以建立日志数据,并且
在将所述逻辑单元映射至所述第二实体程序化单元之后,所述存储器控制电路还用以持续将所述逻辑单元与所述第三实体程序化单元之间的映射关系记载于所述日志数据中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110369184.9A CN113094307B (zh) | 2021-04-06 | 2021-04-06 | 映射信息管理方法、存储器存储装置及存储器控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110369184.9A CN113094307B (zh) | 2021-04-06 | 2021-04-06 | 映射信息管理方法、存储器存储装置及存储器控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113094307A true CN113094307A (zh) | 2021-07-09 |
CN113094307B CN113094307B (zh) | 2023-12-05 |
Family
ID=76674081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110369184.9A Active CN113094307B (zh) | 2021-04-06 | 2021-04-06 | 映射信息管理方法、存储器存储装置及存储器控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113094307B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117632809A (zh) * | 2024-01-25 | 2024-03-01 | 合肥兆芯电子有限公司 | 存储器控制器、数据读取方法及存储装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120131381A1 (en) * | 2009-08-21 | 2012-05-24 | International Business Machines Corporation | Operating a Data Storage System |
CN103136116A (zh) * | 2011-12-05 | 2013-06-05 | 财团法人工业技术研究院 | 存储器存储系统及其中控装置、管理方法与断电恢复方法 |
CN105988950A (zh) * | 2015-02-03 | 2016-10-05 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN106372000A (zh) * | 2015-07-20 | 2017-02-01 | 群联电子股份有限公司 | 映射表更新方法、存储器控制电路单元及存储器存储装置 |
CN107590080A (zh) * | 2016-07-07 | 2018-01-16 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器控制电路单元及存储器存储装置 |
CN107844431A (zh) * | 2017-11-03 | 2018-03-27 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器控制电路单元与存储器存储装置 |
CN111796774A (zh) * | 2020-07-07 | 2020-10-20 | 深圳宏芯宇电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制器 |
-
2021
- 2021-04-06 CN CN202110369184.9A patent/CN113094307B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120131381A1 (en) * | 2009-08-21 | 2012-05-24 | International Business Machines Corporation | Operating a Data Storage System |
CN103136116A (zh) * | 2011-12-05 | 2013-06-05 | 财团法人工业技术研究院 | 存储器存储系统及其中控装置、管理方法与断电恢复方法 |
CN105988950A (zh) * | 2015-02-03 | 2016-10-05 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN106372000A (zh) * | 2015-07-20 | 2017-02-01 | 群联电子股份有限公司 | 映射表更新方法、存储器控制电路单元及存储器存储装置 |
CN107590080A (zh) * | 2016-07-07 | 2018-01-16 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器控制电路单元及存储器存储装置 |
CN107844431A (zh) * | 2017-11-03 | 2018-03-27 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器控制电路单元与存储器存储装置 |
CN111796774A (zh) * | 2020-07-07 | 2020-10-20 | 深圳宏芯宇电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117632809A (zh) * | 2024-01-25 | 2024-03-01 | 合肥兆芯电子有限公司 | 存储器控制器、数据读取方法及存储装置 |
CN117632809B (zh) * | 2024-01-25 | 2024-04-02 | 合肥兆芯电子有限公司 | 存储器控制器、数据读取方法及存储装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113094307B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102571747B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US11907059B2 (en) | Abnormal power loss recovery method, memory control circuit unit, and memory storage device | |
CN111352859A (zh) | 用于存储器子系统的不良块管理 | |
US11068201B2 (en) | Flash memory controller, method for managing flash memory module and associated electronic device | |
CN103678162B (zh) | 系统数据储存方法、存储器控制器与存储器储存装置 | |
CN110069362B (zh) | 数据储存装置与数据处理方法 | |
US11538547B2 (en) | Systems and methods for read error recovery | |
CN113094307B (zh) | 映射信息管理方法、存储器存储装置及存储器控制器 | |
WO2022089138A1 (en) | Methods for controlling data storage device, and associated flash memory controller | |
US10922025B2 (en) | Nonvolatile memory bad row management | |
US11662940B2 (en) | Data storage device and data processing method for restoring MLC/TLC memory to avoid degradation of access performance of a memory device caused by word line short | |
CN111796774B (zh) | 存储器控制方法、存储器存储装置及存储器控制器 | |
CN112988069A (zh) | 存储器管理方法、存储器存储装置及存储器控制器 | |
US20200264953A1 (en) | Error correction in data storage devices | |
CN117632579B (zh) | 存储器控制方法和存储器存储装置 | |
CN113721832A (zh) | 数据储存装置与数据处理方法 | |
CN113220502B (zh) | 存储器管理方法、存储器存储装置及存储器控制器 | |
CN112306382A (zh) | 快闪存储器控制器、储存装置及其读取方法 | |
US11954347B2 (en) | Memory system and operating method thereof | |
US11809748B2 (en) | Control method of flash memory controller and associated flash memory controller and electronic device | |
US20230214151A1 (en) | Memory system and operating method thereof | |
CN112965670B (zh) | 主机存储器缓冲区管理方法、存储装置与控制电路单元 | |
US11508446B2 (en) | Method for accessing flash memory module and associated flash memory controller and electronic device | |
US20230186995A1 (en) | Performing data integrity checks to identify defective wordlines | |
US20230031193A1 (en) | Memory system and operating method thereof |
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 |