CN106445401B - 表格更新方法、存储器储存装置及存储器控制电路单元 - Google Patents

表格更新方法、存储器储存装置及存储器控制电路单元 Download PDF

Info

Publication number
CN106445401B
CN106445401B CN201510488020.2A CN201510488020A CN106445401B CN 106445401 B CN106445401 B CN 106445401B CN 201510488020 A CN201510488020 A CN 201510488020A CN 106445401 B CN106445401 B CN 106445401B
Authority
CN
China
Prior art keywords
entity
logic
mapping information
write data
mapping table
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
Application number
CN201510488020.2A
Other languages
English (en)
Other versions
CN106445401A (zh
Inventor
叶志刚
林依仙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Phison Electronics Corp
Original Assignee
Phison Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to CN201510488020.2A priority Critical patent/CN106445401B/zh
Publication of CN106445401A publication Critical patent/CN106445401A/zh
Application granted granted Critical
Publication of CN106445401B publication Critical patent/CN106445401B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Read Only Memory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种表格更新方法、存储器储存装置及存储器控制电路单元。所述方法包括:接收写入指令与对应于写入指令的写入数据;将对应于写入指令的实体至逻辑映射信息记录至缓冲存储器的第一映射表格中;根据第一映射表格将对应于写入数据的实体至逻辑映射信息储存至可复写式非易失性存储器模块中的一实体单元;更新暂存于缓冲存储器的第一映射表格所记录的对应于所述写入数据的实体至逻辑映射信息,其中更新后的实体至逻辑映射信息仅包括对应于所述写入数据的实体至逻辑映射信息的部分信息;以及根据第一映射表格所记录的更新后的实体至逻辑映射信息来更新第二映射表格。藉此,可节省第一映射表格的使用空间。

Description

表格更新方法、存储器储存装置及存储器控制电路单元
技术领域
本发明是有关于一种存储器管理机制,且特别是有关于一种表格更新方法、存储器储存装置及存储器控制电路单元。
背景技术
数码相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非易失性存储器模块(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。
一般来说,使用可复写式非易失性存储器模块的存储器储存装置是通过查询或修改用以记录逻辑地址与实体地址之间的映射关系(即,逻辑至实体映射关系)的逻辑至实体映射表格来存取数据。当逻辑至实体映射表格中的某一个逻辑地址的逻辑至实体映射关系改变时,就需要将相关的逻辑至实体映射表格读取到存储器储存装置的缓冲存储器中来更新相关的逻辑至实体映射关系并且将更新后的逻辑至实体映射表格回存到可复写式非易失性存储器模块中。
然而,对于逻辑至实体映射表格的太频繁存取可能会减少可复写式非易失性存储器模块的使用寿命。因此,对于某些特定类型的存储器储存装置来说,其会进一步导入实体至逻辑映射表格。例如,当某一条来自主机***的数据被储存至存储器储存装置时,与此条数据有关的实体至逻辑映射信息会先被记录至缓冲存储器中的一个实体至逻辑映射表格并且此实体至逻辑映射表格中的信息会随着相对应的数据被储存至可复写式非易失性存储器模块中。然后,当缓冲存储器中的某一个实体至逻辑映射表格被写满时,此实体至逻辑映射表格所记载的多条信息会被用来更新逻辑至实体映射表格。藉此,可减少读取并回存逻辑至实体映射表格的频率。
然而,在某些情况下,若主机***所指示存取的某一逻辑地址的逻辑至实体映射信息已经存在于缓冲存储器中,则此逻辑地址的逻辑至实体映射信息当下可能会直接在缓冲存储器中进行更新。因此,持续将此逻辑地址的实体至逻辑映射信息维护在缓冲存储器中显然是不必要的,并且会造成缓冲存储器的空间无谓的浪费。
发明内容
有鉴于此,本发明提供一种表格更新方法、存储器储存装置及存储器控制电路单元,可在缓冲存储器中适应性地更新不需要的实体至逻辑映射信息,从而节省缓冲存储器空间。
本发明的一范例实施例提供一种映射表格更新方法,其用于可复写式非易失性存储器模块,所述映射表格更新方法包括:接收写入指令与对应于所述写入指令的写入数据;将对应于所述写入数据的实体至逻辑映射信息记录至暂存于缓冲存储器的第一映射表格中;根据所述第一映射表格将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的实体单元,所述实体单元储存有所述写入数据的至少部分数据;更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,其中更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息;以及根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新第二映射表格。
在本发明的一范例实施例中,将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的步骤包括:在所述第一映射表格中保留第一区域;以及将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的第二区域。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤包括:移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
在本发明的一范例实施例中,所述写入数据包括第一写入数据与第二写入数据,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤包括:将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,当接收到所述写入指令时,用以储存所述第二写入数据的逻辑单元的逻辑至实体映射信息是暂存于所述缓冲存储器中。
在本发明的一范例实施例中,所述第一映射表格为实体至逻辑映射表格,所述第二映射表格为逻辑至实体映射表格。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤仅在更新后的所述实体至逻辑映射信息的数据大小不大于预设大小时执行。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤包括:判断用以储存所述写入数据的至少一逻辑单元的逻辑至实体映射信息是否暂存于所述缓冲存储器中;若用以储存所述写入数据中的第一写入数据的逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及若用以储存所述写入数据中的第二写入数据的逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤包括:判断暂存于所述缓冲存储器中的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及若暂存于所述缓冲存储器中的所述第一映射表格中存在所述同一个逻辑单元的所述实体至逻辑映射信息,只保留所述同一个逻辑单元的所述实体至逻辑映射信息的其中一条信息于所述第一映射表格中。
本发明的另一范例实施例提供一种存储器储存装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。所述连接接口单元用以电性连接至主机***。所述存储器控制电路单元电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,所述存储器控制电路单元用以接收写入指令与对应于所述写入指令的写入数据,所述存储器控制电路单元还用以将对应于所述写入数据的实体至逻辑映射信息记录至暂存于缓冲存储器的第一映射表格中,所述存储器控制电路单元还用以根据暂存于所述缓冲存储器中的所述第一映射表格发送写入指令序列,以指示将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的实体单元,其储存有所述写入数据中的至少部分数据,所述存储器控制电路单元还用以更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息,所述存储器控制电路单元还用以根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新第二映射表格。
在本发明的一范例实施例中,所述存储器控制电路单元将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的操作包括:在所述第一映射表格中保留第一区域;以及将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的第二区域。
在本发明的一范例实施例中,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
在本发明的一范例实施例中,所述写入数据包括第一写入数据与第二写入数据,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,当接收到所述写入指令时,用以储存所述第二写入数据的逻辑单元的逻辑至实体映射信息是暂存于所述缓冲存储器中。
在本发明的一范例实施例中,所述第一映射表格为实体至逻辑映射表格,所述第二映射表格为逻辑至实体映射表格。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作仅在更新后的所述实体至逻辑映射信息的数据大小不大于预设大小时执行。
在本发明的一范例实施例中,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:判断用以储存所述写入数据的至少一逻辑单元的逻辑至实体映射信息是否暂存于所述缓冲存储器中;若用以储存所述写入数据中的第一写入数据的逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及若用以储存所述写入数据中的第二写入数据的逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:判断暂存于所述缓冲存储器中的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及若暂存于所述缓冲存储器中的所述第一映射表格中存在所述同一个逻辑单元的所述实体至逻辑映射信息,只保留所述同一个逻辑单元的所述实体至逻辑映射信息的其中一条信息于所述第一映射表格中。
本发明的另一范例实施例提供一种存储器控制电路单元,其用于控制可复写式非易失性存储器模块,所述存储器控制电路单元包括主机接口、存储器接口、缓冲存储器及存储器管理电路。所述主机接口用以电性连接至主机***。所述存储器接口用以电性连接至所述可复写式非易失性存储器模块。所述存储器管理电路电性连接至所述主机接口、所述存储器接口及所述缓冲存储器。所述存储器管理电路用以接收写入指令与对应于所述写入指令的写入数据,所述存储器管理电路还用以将对应于所述写入数据的实体至逻辑映射信息记录至暂存于所述缓冲存储器的第一映射表格中,所述存储器管理电路还用以根据暂存于所述缓冲存储器中的所述第一映射表格发送写入指令序列,以指示将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的实体单元,其储存有所述写入数据中的至少部分数据,所述存储器管理电路还用以更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息,所述存储器管理电路还用以根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新第二映射表格。
在本发明的一范例实施例中,所述存储器管理电路将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的操作包括:在所述第一映射表格中保留第一区域;以及将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的第二区域。
在本发明的一范例实施例中,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
在本发明的一范例实施例中,所述写入数据包括第一写入数据与第二写入数据,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,当接收到所述写入指令时,用以储存所述第二写入数据的逻辑单元的逻辑至实体映射信息是暂存于所述缓冲存储器中。
在本发明的一范例实施例中,所述第一映射表格为实体至逻辑映射表格,所述第二映射表格为逻辑至实体映射表格。
在本发明的一范例实施例中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作仅在更新后的所述实体至逻辑映射信息的数据大小不大于预设大小时执行。
在本发明的一范例实施例中,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:判断用以储存所述写入数据的至少一逻辑单元的逻辑至实体映射信息是否暂存于所述缓冲存储器中;若用以储存所述写入数据中的第一写入数据的逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及若用以储存所述写入数据中的第二写入数据的逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
在本发明的一范例实施例中,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:判断暂存于所述缓冲存储器的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及若暂存于所述缓冲存储器的所述第一映射表格中存在所述同一个逻辑单元的所述实体至逻辑映射信息,只保留所述同一个逻辑单元的所述实体至逻辑映射信息的其中一条信息于所述第一映射表格中。
基于上述,在将某一条写入数据的实体至逻辑映射信息从缓冲存储器储存至可复写式非易失性存储器模块之后,此写入数据的实体至逻辑映射信息会在缓冲存储器中被更新,以尝试在缓冲存储器中释放出更多的可用空间。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据本发明的一范例实施例所示出的主机***与存储器储存装置的示意图;
图2是根据本发明的一范例实施例所示出的电脑、输入/输出装置与存储器储存装置的示意图;
图3是根据本发明的一范例实施例所示出的主机***与存储器储存装置的示意图;
图4是示出图1所示的存储器储存装置的概要方块图;
图5是根据本发明的一范例实施例所示出的可复写式非易失性存储器模块的概要方块图;
图6是根据本发明的一范例实施例所示出的存储单元数组的示意图;
图7是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图;
图8是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图;
图9至图13是根据本发明的一范例实施例所示出的更新映射表格的示意图;
图14是根据本发明的一范例实施例所示出的使用保留区域来更新第一映射表格的示意图;
图15是根据本发明的一范例实施例所示出的移除实体至逻辑映射信息以更新第一映射表格的示意图;
图16是根据本发明的另一范例实施例所示出的移除实体至逻辑映射信息以更新第一映射表格的示意图;
图17是根据本发明的一范例实施例所示出的更新第二映射表格的示意图;
图18是根据本发明的一范例实施例所示出的映射表格更新方法的流程图;
图19是根据本发明的另一范例实施例所示出的映射表格更新方法的流程图。
附图标记说明:
10:存储器储存装置;
11:主机***;
12:电脑;
122:微处理器;
124:随机存取存储器;
126:***总线;
128:数据传输接口;
13:输入/输出装置;
21:鼠标;
22:键盘;
23:显示器;
24:打印机;
25:U盘;
26:存储卡;
27:固态硬盘;
31:数码相机;
32:SD卡;
33:MMC卡;
34:记忆棒;
35:CF卡;
36:嵌入式储存装置;
402:连接接口单元;
404:存储器控制电路单元;
406:可复写式非易失性存储器模块;
502:存储单元数组;
504:字元线控制电路;
506:位元线控制电路;
508:行解码器;
510:数据输入/输出缓冲器;
512:控制电路;
602:存储单元;
604:位元线;
606:字元线;
608:共用源极线;
612、614:晶体管;
702:存储器管理电路;
704:主机接口;
706:存储器接口;
708:错误检查与校正电路;
710:缓冲存储器;
712:电源管理电路;
800(0)~800(R):实体抹除单元;
810(0)~810(D):逻辑单元;
802:储存区;
806:***区;
910(0)~910(F)、1110(0)~1110(S):实体程序化单元;
920、1420、1520、1620、1720:第一映射表格;
922、1022、1122、1222、1322、1422、1432、1442、1522(0)~1522(K)、1622(0)~1622(G)、1722(0)~1722(L):实体至逻辑映射信息;
930、1340、1630、1730、1740:第二映射表格;
932、1632(0)~1632(J)、1732(0)~1732(L):逻辑至实体映射信息;
1410:保留区域;
S1801~S1805、S1901~S1909:步骤。
具体实施方式
一般而言,存储器储存装置(也称,存储器储存***)包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与控制器(也称,控制电路)。通常存储器储存装置是与主机***一起使用,以使主机***可将数据写入至存储器储存装置或从存储器储存装置中读取数据。
图1是根据本发明的一范例实施例所示出的主机***与存储器储存装置的示意图。图2是根据本发明的一范例实施例所示出的电脑、输入/输出装置与存储器储存装置的示意图。
请参照图1,主机***11一般包括电脑12与输入/输出(input/output,简称为:I/O)装置13。电脑12包括微处理器122、随机存取存储器(random access memory,简称为:RAM)124、***总线126与数据传输接口128。输入/输出装置13包括如图2的鼠标21、键盘22、显示器23与打印机24。必须了解的是,图2所示的装置非限制输入/输出装置13,输入/输出装置13可还包括其他装置。
在一范例实施例中,存储器储存装置10是通过数据传输接口128与主机***11的其他元件电性连接。通过微处理器122、随机存取存储器124与输入/输出装置13的运作可将数据写入至存储器储存装置10或从存储器储存装置10中读取数据。例如,存储器储存装置10可以是如图2所示的U盘25、存储卡26或固态硬盘(Solid State Drive,简称为:SSD)27等的可复写式非易失性存储器储存装置。
图3是根据本发明的一范例实施例所示出的主机***与存储器储存装置的示意图。
一般而言,主机***11为可实质地与存储器储存装置10配合以储存数据的任意***。虽然在本范例实施例中,主机***11是以电脑***来作说明,然而,另一范例实施例中,主机***11可以是数码相机、摄影机、通信装置、音频播放器或视频播放器等***。例如,在主机***11为数码相机(摄影机)31时,可复写式非易失性存储器储存装置则为其所使用的SD卡32、MMC卡33、记忆棒(memory stick)34、CF卡35或嵌入式储存装置36(如图3所示)。嵌入式储存装置36包括嵌入式多媒体卡(Embedded MMC,简称为:eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机***11的基板上。
图4是示出图1所示的存储器储存装置的概要方块图。
请参照图4,存储器储存装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
在本范例实施例中,连接接口单元402是兼容于串行高级技术附件(SerialAdvanced Technology Attachment,简称为:SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元402也可以是符合并行高级技术附件(Parallel Advanced TechnologyAttachment,简称为:PATA)标准、电气和电子工程师协会(Institute of Electrical andElectronic Engineers,简称为:IEEE)1394标准、外部设备互连(Peripheral ComponentInterconnect Express,简称为:PCI Express)标准、通用串行总线(Universal SerialBus,简称为:USB)标准、安全数字(Secure Digital,简称为:SD)接口标准、超高速一代(Ultra High Speed-I,简称为:UHS-I)接口标准、超高速二代(Ultra High Speed-II,简称为:UHS-II)接口标准、记忆棒(Memory Stick,简称为:MS)接口标准、多媒体储存卡(MultiMedia Card,简称为:MMC)接口标准、嵌入式多媒体储存卡(Embedded Multimedia Card,简称为:eMMC)接口标准、通用快闪存储器(Universal Flash Storage,简称为:UFS)接口标准、小型快闪(Compact Flash,简称为:CF)接口标准、集成设备电路(Integrated DeviceElectronics,简称为:IDE)标准或其他适合的标准。连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。
存储器控制电路单元404用以执行以硬件形式或固件形式实作的多个逻辑门电路或控制指令并且根据主机***11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是电性连接至存储器控制电路单元404并且用以储存主机***11所写入的数据。可复写式非易失性存储器模块406可以是单层单元(Single Level Cell,简称为:SLC)NAND型快闪存储器模块(即,一个存储单元中可储存1个比特数据的快闪存储器模块)、多层单元(Multi Level Cell,简称为:MLC)NAND型快闪存储器模块(即,一个存储单元中可储存2个比特数据的快闪存储器模块)、三层单元(TripleLevel Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可储存3个比特数据的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
图5是根据本发明的一范例实施例所示出的可复写式非易失性存储器模块的概要方块图。图6是根据本发明的一范例实施例所示出的存储单元数组的示意图。
请参照图5,可复写式非易失性存储器模块406包括存储单元数组502、字元线控制电路504、位元线控制电路506、行解码器(column decoder)508、数据输入/输出缓冲器510与控制电路512。
在本范例实施例中,存储单元数组502可包括用以储存数据的多个存储单元602、多个选择栅漏极(select gate drain,简称为:SGD)晶体管612与多个选择栅源极(selectgate source,简称为:SGS)晶体管614、以及连接此些存储单元602的多条位元线604、多条字元线606、与共用源极线608(如图6所示)。存储单元602是以数组方式(或立体堆叠的方式)配置在位元线604与字元线606的交叉点上。当从存储器控制电路单元404接收到写入指令或读取指令时,控制电路512会控制字元线控制电路504、位元线控制电路506、行解码器508、数据输入/输出缓冲器510来写入数据至存储单元数组502或从存储单元数组502中读取数据,其中字元线控制电路504用以控制施予至字元线606的电压,位元线控制电路506用以控制施予至位元线604的电压,行解码器508依据指令中的列地址以选择对应的位元线604,并且数据输入/输出缓冲器510用以暂存数据。
可复写式非易失性存储器模块406中的每一个存储单元602是以临界电压的改变来储存一或多个比特。具体来说,每一个存储单元602的控制栅极(control gate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制栅极,可以改变电荷捕捉层的电子量,因而改变了存储单元602的临界电压。此改变临界电压的程序也称为“把数据写入至存储单元602”或“程序化存储单元602”。随着临界电压的改变,存储单元数组502的每一个存储单元602具有多个储存状态。并且通过读取电压可以判断存储单元602是属于哪一个储存状态,藉此取得存储单元602所储存的一或多个比特。
图7是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图。
请参照图7,存储器控制电路单元404包括存储器管理电路702、主机接口704、存储器接口706、错误检查与校正电路708及缓冲存储器710。
存储器管理电路702用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路702具有多个控制指令,并且在存储器储存装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路702的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路702的控制指令是以固件形式来实作。例如,存储器管理电路702具有微处理器单元(未示出)与唯读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器储存装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在另一范例实施例中,存储器管理电路702的控制指令也可以程序码形式储存于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放***数据的***区)中。此外,存储器管理电路702具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元404被致能时,微处理器单元会先执行此开机码来将储存于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路702的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在另一范例实施例中,存储器管理电路702的控制指令也可以一硬件形式来实作。例如,存储器管理电路702包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。其中,存储单元管理电路用以管理可复写式非易失性存储器模块406的实体抹除单元;存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令序列以将数据写入至可复写式非易失性存储器模块406中;存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令序列以从可复写式非易失性存储器模块406中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令序列以将数据从可复写式非易失性存储器模块406中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。写入指令序列、读取指令序列及抹除指令序列可各别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块406执行相对应的写入、读取及抹除等操作。
主机接口704是电性连接至存储器管理电路702并且用以接收与识别主机***11所传送的指令与数据。也就是说,主机***11所传送的指令与数据会通过主机接口704来传送至存储器管理电路702。在本范例实施例中,主机接口704是兼容于SATA标准。然而,必须了解的是本发明不限于此,主机接口704也可以是兼容于PATA标准、IEEE 1394标准、PCIExpress标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口706是电性连接至存储器管理电路702并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口706转换为可复写式非易失性存储器模块406所能接受的格式。具体来说,若存储器管理电路702要存取可复写式非易失性存储器模块406,存储器接口706会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾回收程序等等)的相对应的指令序列,在此不一一赘述。这些指令序列例如是由存储器管理电路702产生并且通过存储器接口706传送至可复写式非易失性存储器模块406。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的辨识码、存储器地址等信息。
错误检查与校正电路708是电性连接至存储器管理电路702并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路702从主机***11中接收到写入指令时,错误检查与校正电路708会为对应此写入指令的数据产生对应的错误更正码(error correcting code,简称为:ECC)和/或错误检查码(error detecting code,简称为:EDC),并且存储器管理电路702会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路702从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路708会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正程序。
缓冲存储器710是电性连接至存储器管理电路702并且用以暂存来自于主机***11的数据与指令或来自于可复写式非易失性存储器模块406的数据。
在一范例实施例中,存储器控制电路单元404还包括电源管理电路712。电源管理电路712是电性连接至存储器管理电路702并且用以控制存储器储存装置10的电源。
图8是根据本发明的一范例实施例所示出的管理可复写式非易失性存储器模块的示意图。必须了解的是,在此描述可复写式非易失性存储器模块406之实体抹除单元的运作时,以“选择”、“分组”、“划分”、“关联”等词来操作实体抹除单元是逻辑上的概念。也就是说,可复写式非易失性存储器模块406的实体抹除单元的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块406的实体抹除单元进行操作。
可复写式非易失性存储器模块406的存储单元会构成多个实体程序化单元,并且此些实体程序化单元会构成多个实体抹除单元。具体来说,同一条字元线上的存储单元会组成一或多个实体程序化单元。若每一个存储单元可储存2个以上的比特,则同一条字元线上的实体程序化单元至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效比特(Least Significant Bit,简称为:LSB)是属于下实体程序化单元,并且一存储单元的最高有效比特(Most Significant Bit,简称为:MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。在此范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元为实体页面或是实体扇(sector)。若实体程序化单元为实体页面,则每一个实体程序化单元通常包括数据比特区与冗余比特区。数据比特区包含多个实体扇,用以储存使用者的数据,而冗余比特区用以储存***的数据(例如,错误更正码)。在本范例实施例中,数据比特区包含32个实体扇,且一个实体扇的大小为512比特组(byte,简称为:B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。也即,每一实体抹除单元含有最小数目之一并被抹除的存储单元。例如,实体抹除单元为实体区块。
请参照图8,存储器管理电路702可将可复写式非易失性存储器模块406的实体抹除单元800(0)~800(R)逻辑地划分为多个区域,例如为储存区802与***区806。
储存区802的实体抹除单元是用以储存来自主机***11的数据。储存区802中会储存有效数据与无效数据。例如,当主机***11要删除一份有效数据时,被删除的数据可能还是储存在储存区802中,但会被标记为无效数据。没有储存有效数据的实体抹除单元也被称为闲置(spare)实体抹除单元。例如,被抹除以后的实体抹除单元便会成为闲置实体抹除单元。若储存区802或***区806中有实体抹除单元损坏时,储存区802中的实体抹除单元也可以用来替换损坏的实体抹除单元。倘若储存区802中没有可用的实体抹除单元来替换损坏的实体抹除单元时,则存储器管理电路702可能会将整个存储器储存装置10宣告为写入保护(write protect)状态,而无法再写入数据。此外,有储存有效数据的实体抹除单元也被称为非闲置(non-spare)实体抹除单元。
***区806的实体抹除单元是用以记录***数据,其中此***数据包括关于存储器芯片的制造商与型号、存储器芯片的实体抹除单元数、每一实体抹除单元的实体程序化单元数等。
储存区802与***区806的实体抹除单元的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储器储存装置10的运作中,实体抹除单元关联至储存区802与***区806的分组关系可能会动态地变动。例如,当***区806中的实体抹除单元损坏而被储存区802的实体抹除单元取代时,则原本在储存区802的实体抹除单元会被关联至***区806。
存储器管理电路702会配置逻辑单元810(0)~810(D)以映射至储存区802中的实体抹除单元800(0)~800(A)。例如,在本范例实施例中,主机***11是透过逻辑地址来存取储存区802中的数据,因此,每一个逻辑单元810(0)~810(D)是指一个逻辑地址。此外,在一范例实施例中,每一个逻辑单元810(0)~810(D)也可以是指一个逻辑扇、一个逻辑程序化单元、一个逻辑抹除单元或者由多个连续的逻辑地址组成。每一个逻辑单元810(0)~810(D)是映射至一或多个实体单元。在本范例实施例中,一个实体单元是指一个实体抹除单元。然而,在另一范例实施例中,一个实体单元也可以是一个实体地址、一个实体扇、一个实体程序化单元或者是由多个连续的实体地址组成,本发明不加以限制。
存储器管理电路702会将逻辑单元与实体单元之间的映射关系(即,逻辑至实体映射信息)记录于一逻辑至实体映射表格。此逻辑至实体映射表格会被储存在***区806中。当主机***11欲从存储器储存装置10读取数据或写入数据至存储器储存装置10时,存储器管理电路702可从***区806中读取逻辑至实体映射表格中的部分信息至缓冲存储器710,以执行对于存储器储存装置10的数据存取。
存储器管理电路702可以在缓冲存储器710中查询或更新逻辑至实体映射表格中的部分信息。例如,若主机***11指示读取某一个逻辑单元所储存的数据,则存储器管理电路702可以从***区806的逻辑至实体映射表格中读取此逻辑单元的逻辑至实体映射信息至缓冲存储器710,从而获得储存此条数据的实体单元并且可指示从此实体单元中读取数据。例如,若主机***11指示写入数据至某一逻辑单元或删除储存于某一逻辑单元的数据且此逻辑单元的逻辑至实体映射信息当下已暂存于缓冲存储器710中,则存储器管理电路702可以直接在缓冲存储器710中更新此逻辑单元的逻辑至实体映射信息。例如,存储器管理电路702可以移除此逻辑单元的映射关系或者将此逻辑单元从映射至某一实体单元改为映射至另一实体单元。更新后的此逻辑单元的逻辑至实体映射信息可以在任意时间点被回存到储存在可复写式非易失性存储器模块406的逻辑至实体映射表格中。
值得一提的是,若主机***11指示写入数据至某一逻辑单元或删除储存于某一逻辑单元的数据且此逻辑单元的逻辑至实体映射信息当下并没有暂存于缓冲存储器710中,则存储器管理电路702可能不会即时地从***区806的逻辑至实体映射表格中读取相对应的逻辑至实体映射信息来进行更新。原因在于,若对应于来自主机***11的每一个写入指令或删除指令都即时地读取相关的逻辑至实体映射信息到缓冲存储器710中进行更新并且回存更新后的逻辑至实体映射信息至可复写式非易失性存储器模块406,则***区806中的存储单元可能会被相当频繁地进行读取与写入,从而加速***区806中的存储单元老化。
因此,在本范例实施例中,存储器管理电路702会在缓冲存储器710中建立一个实体至逻辑映射表格。此实体至逻辑映射表格会暂存于缓冲存储器710中并且用以记录主机***11所欲储存的数据的实体单元至逻辑单元的映射关系(即,实体至逻辑映射信息)。例如,对应于将某一条数据写入至储存区802中的某一个实体抹除单元,则对应于此条数据的实体至逻辑映射信息会先被记录在缓冲存储器710中的实体至逻辑映射表格中,然后再被储存至此实体抹除单元中的最后一个实体程序化单元中。
在本范例实施例中,储存在一个实体抹除单元中的实体至逻辑映射信息可以作为执行某些特定程序的参考。例如,储存在某一实体抹除单元中的实体至逻辑映射信息可以包括至少一参数。例如,此至少一参数可用以指示此实体抹除单元所储存的有效数据(或,无效数据)的数据量(或,需要被从中搬移数据的实体程序化单元的数目)和/或此实体抹除单元中的哪一个实体程序化单元储存有效数据(或,无效数据)等等。例如,此至少一参数可以在对应于可复写式非易失性存储器模块406中的闲置实体抹除单元不足而执行的数据整并程序(例如,垃圾回收程序)中被使用。
在一范例实施例中,存储器管理电路702也可以根据某一实体抹除单元所储存的实体至逻辑映射信息来获得储存于此实体抹除单元中的某一条数据所对应的实体至逻辑映射关系。在将此实体至逻辑映射关系与逻辑至实体映射表格中的信息进行比对之后,若比对结果为原先用以储存此条数据的逻辑单元已被改为映射至其他的实体单元,表示此条数据为无效数据。反之,若比对结果为用以储存此条数据的逻辑单元仍然映射至目前储存此数据的实体单元,则表示此条数据为有效数据。
在缓冲存储器710中一个实体至逻辑映射表格被写满之后,此实体至逻辑映射表格中的信息会被用来更新储存在可复写式非易失性存储器模块406中的逻辑至实体映射表格。例如,在将缓冲存储器710中的实体至逻辑映射表格写满的期间,若一或多个逻辑单元的逻辑至实体映射关系被改变,则此些被改变的逻辑至实体映射关系可以在缓冲存储器710中的实体至逻辑映射表格被写满之后同步地被更新至储存在可复写式非易失性存储器模块406中的逻辑至实体映射表格。例如,在根据缓冲存储器710中的实体至逻辑映射表格来更新储存在可复写式非易失性存储器模块406中的逻辑至实体映射表格的操作中,逻辑至实体映射表格中部分的逻辑至实体映射信息会被读取至缓冲存储器710中并且被更新;然后,更新后的逻辑至实体映射信息会被重新存入可复写式非易失性存储器模块406中。通过一次性地修改多条逻辑至实体映射信息,可减少对于可复写式非易失性存储器模块406的存取频率。
然而,在一般对于实体至逻辑映射表格的记录方式中,并不会考虑到某一个逻辑单元的实体至逻辑映射信息是否被重复记载。也就是说,即使主机***11是对同一个逻辑单元重复进行数据写入操作,则对应于每一次的数据写入操作的实体至逻辑映射关系都会被一一记录在此实体至逻辑映射表格中。例如,假设实体至逻辑映射表格被同一个逻辑单元的多条实体至逻辑映射信息写满,则真正在后续更新逻辑至实体映射表格的操作中真正有用的数据却只有一条(即,实体至逻辑映射表格中最后一次记录的实体至逻辑映射信息)。在这样的情况下,缓冲存储器710中的部分空间会被浪费掉。此外,在这样的情况下实体至逻辑映射表格也很容易就被写满,导致对于逻辑至实体映射表格的更新也会更加频繁。
此外,在某些情况下,若主机***11指示将某一条数据储存至某一逻辑单元并且此逻辑单元的逻辑至实体映射信息当下是暂存在缓冲存储器710中,则此逻辑单元的逻辑至实体映射信息可能会直接在缓冲存储器710中被更新并且更新后的此逻辑单元的逻辑至实体映射信息会随着后续的回存操作回存到可复写式非易失性存储器模块406中。换言之,在此情况下,并不需要根据此逻辑单元的实体至逻辑映射信息来更新可复写式非易失性存储器模块406中的逻辑至实体映射表格。
因此,在本范例实施例中,在将对应于至少一条写入数据的实体至逻辑映射信息储存至某一个实体单元之后,此实体至逻辑映射信息就会在缓冲存储器710中被更新,从而尝试释放出更多的可用空间。以下为了说明方便,也将实体至逻辑映射表格称为第一映射表格,并且将逻辑至实体映射表格称为第二映射表格。
图9至图13是根据本发明的一范例实施例所示出的更新映射表格的示意图。
请参照图9,存储器管理电路702会接收一写入指令与对应于此写入指令的写入数据。在本范例实施例中,是假设此写入指令指示将对应于此写入指令的写入数据写入至逻辑单元810(0)~810(E)。例如,逻辑单元810(0)~810(E)包含于图8的逻辑单元810(0)~810(D)中。
存储器管理电路702会从储存区802中选择至少一个实体抹除单元来储存此写入数据。例如,存储器管理电路702可以选择实体抹除单元800(0)来储存此写入数据。例如,存储器管理电路702可以发送一写入指令序列以指示可复写式非易失性存储器模块406将此写入数据储存至实体抹除单元800(0)中的实体程序化单元910(0)~910(E)。此外,存储器管理电路702还会将逻辑单元810(0)~810(E)映射至实体程序化单元910(0)~910(E)。
存储器管理电路702会将对应于此写入数据的实体至逻辑映射信息922记录至暂存于缓冲存储器710的第一映射表格920中。例如,实体至逻辑映射信息922可包括实体程序化单元910(0)~910(E)与逻辑单元810(0)~810(E)之间的映射关系。换言之,实体至逻辑映射信息922会包含每一个逻辑单元810(0)~810(E)的实体至逻辑映射信息。
存储器管理电路702会根据第一映射表格922发送另一写入指令序列以指示将实体至逻辑映射信息922储存至实体程序化单元910(F)。例如,实体程序化单元910(F)为实体抹除单元800(0)中排序最后的实体程序化单元。例如,存储器管理电路702是指示先将写入数据储存至实体程序化单元910(0)~910(E),然后再将对应于此写入数据的实体至逻辑映射信息922储存至实体程序化单元910(F)。此外,在另一范例实施例中,实体抹除单元800(0)也可以是可复写式非易失性存储器模块406中储存有此写入数据中的至少部分数据的任一个实体单元。
在将实体至逻辑映射信息922储存至实体程序化单元910(F)之后,存储器管理电路702会在缓冲存储器710中更新记录于第一映射表格920中的实体至逻辑映射信息922,以尝试减少实体至逻辑映射信息922的数据大小。
在本范例实施例中,缓冲存储器710中暂存有第二映射表格930。第二映射表格930包含从可复写式非易失性存储器模块406所储存的逻辑至实体映射表格中读取的至少一部分信息。例如,第二映射表格930包含逻辑至实体映射信息932。
在本范例实施例中,存储器管理电路702会比对实体至逻辑映射信息922与逻辑至实体映射信息932并且判断其中是否存在与同一个逻辑单元有关的映射信息。若与同一个逻辑单元有关的映射信息同时包含于实体至逻辑映射信息922与逻辑至实体映射信息932中,则存储器管理电路702会将此逻辑单元的实体至逻辑映射信息从实体至逻辑映射信息922中移除。例如,在一范例实施例中,若逻辑至实体映射信息932包含逻辑单元810(0)的逻辑至实体映射信息,则存储器管理电路702会将逻辑单元810(0)的实体至逻辑映射信息(即,对应于储存于逻辑单元810(0)中的写入数据的实体至逻辑映射信息)从实体至逻辑映射信息922中移除并且将逻辑单元810(1)~810(E)的实体至逻辑映射信息(即,对应于储存于逻辑单元810(1)~810(E)中的写入数据的实体至逻辑映射信息)保留在实体至逻辑映射信息922中。
请参照图10,假设实体至逻辑映射信息922被更新为实体至逻辑映射信息1022。例如,实体至逻辑映射信息1022仅包含逻辑单元810(1)~810(E)的实体至逻辑映射信息。在本范例实施例中,实体至逻辑映射信息1022仅包括实体至逻辑映射信息922中的部分信息,故实体至逻辑映射信息1022的数据大小会小于实体至逻辑映射信息922的数据大小。
然而,在另一范例实施例中,若实体至逻辑映射信息922与逻辑至实体映射信息932不包含与同一个逻辑单元有关的映射信息(例如,逻辑至实体映射信息932没有包含逻辑单元810(0)~810(E)中任一者的逻辑至实体映射信息),则实体至逻辑映射信息1022的数据大小可能会与实体至逻辑映射信息922的数据大小相同。
根据图9的另一范例实施例,在更新实体至逻辑映射信息922的操作中,存储器管理电路702还会判断记录于第一映射表格920中的多条实体至逻辑映射信息是否为同一逻辑单元的实体至逻辑映射信息。在同一个逻辑单元的多条实体至逻辑映射信息中,存储器管理电路702只会保留最后一条实体至逻辑映射信息,而此逻辑单元的其余实体至逻辑映射信息会被从第一映射表格920中移除。例如,假设主机***11重复对于逻辑单元810(0)执行了N次的写入操作,则实体至逻辑映射信息922可能会包含N条逻辑单元810(0)的实体至逻辑映射信息。由于只有最后一条的逻辑单元810(0)的实体至逻辑映射信息会反映出在这N次的写入操作中逻辑单元810(0)最终的实体与逻辑映射关系,故实体至逻辑映射信息1022会包含第N条的逻辑单元810(0)的实体至逻辑映射信息,而不会包含前N-1条逻辑单元810(0)的实体至逻辑映射信息。
请参照图11,存储器管理电路702会接收另一写入指令与对应于此写入指令的写入数据。在本范例实施例中,是假设此写入指令指示将对应于此写入指令的写入数据写入至逻辑单元810(P)~810(P+Q)。例如,逻辑单元810(P)~810(P+Q)也包含于图8的逻辑单元810(0)~810(D)中。
存储器管理电路702会从储存区802中选择至少一个实体抹除单元来储存此写入数据。例如,存储器管理电路702可以选择实体抹除单元800(1)来储存此写入数据。例如,存储器管理电路702可以发送一写入指令序列以指示可复写式非易失性存储器模块406将此写入数据储存至实体抹除单元800(1)中的实体程序化单元1110(0)~1110(Q)。此外,存储器管理电路702还会将逻辑单元810(P)~810(P+Q)映射至实体程序化单元1110(0)~1110(Q)。
存储器管理电路702会接续于实体至逻辑映射信息1022而将此写入数据的实体至逻辑映射信息1122记录至暂存于缓冲存储器710的第一映射表格920中。例如,实体至逻辑映射信息1122包括实体程序化单元1110(0)~1110(Q)与逻辑单元810(P)~810(P+Q)之间的映射关系。例如,实体至逻辑映射信息1122会包含每一个逻辑单元810(P)~810(P+Q)的实体至逻辑映射信息。
存储器管理电路702会根据第一映射表格920发送另一写入指令序列以指示将实体至逻辑映射信息1122储存至实体程序化单元1110(S)。例如,实体程序化单元1110(S)为实体抹除单元800(1)中的最后一个实体程序化单元。
在将实体至逻辑映射信息1122储存至实体程序化单元1110(S)之后,存储器管理电路702会在缓冲存储器710中更新记录于第一映射表格920中的实体至逻辑映射信息1122,以尝试减少实体至逻辑映射信息1122的数据大小。例如,存储器管理电路702可以比对实体至逻辑映射信息1122与逻辑至实体映射信息932并且判断其中是否存在与同一个逻辑单元有关的映射信息。若与同一个逻辑单元有关的映射信息同时包含于实体至逻辑映射信息1122与逻辑至实体映射信息932中,则存储器管理电路702会将此逻辑单元的实体至逻辑映射信息从实体至逻辑映射信息1122中移除以更新逻辑至实体映射信息932。此外,存储器管理电路702还可以判断第一映射表格920中是否包含同一逻辑单元的多条实体至逻辑映射信息并且可从第一映射表格920中移除同一个逻辑单元的部分实体至逻辑映射信息。例如,若逻辑单元810(P)的两条实体至逻辑映射信息同时存在于实体至逻辑映射信息1122中,则记录时间较早的逻辑单元810(P)的实体至逻辑映射信息会被移除,而记录时间较晚的逻辑单元810(P)的实体至逻辑映射信息会被保留。
在另一范例实施例中,实体至逻辑映射信息1022与1122也可以被同步更新。例如,若逻辑单元810(P)的两条实体至逻辑映射信息分别存在于实体至逻辑映射信息1022与逻辑至实体映射信息1122中,则存在于较早记录的实体至逻辑映射信息1022中的逻辑单元810(P)的实体至逻辑映射信息也可被移除。
请参照图12,假设在将实体至逻辑映射信息1122更新为实体至逻辑映射信息1222之后,实体至逻辑映射信息1222仅包括实体至逻辑映射信息1122中的部分信息,则实体至逻辑映射信息1222的数据大小会小于实体至逻辑映射信息1122的数据大小。
请参照图13,存储器管理电路702可以接收更多的写入指令并且对应将更多的实体至逻辑映射信息记录于第一映射表格920中。记录于第一映射表格920中的实体至逻辑映射信息会被复制到相对应的实体单元中然后被更新。如图13所示,实体至逻辑映射信息1322是第一映射表格920中最后一条更新后的实体至逻辑映射信息。
在本范例实施例中,第一映射表格920中不会存在同一个逻辑单元的多条实体至逻辑映射信息。然而,在另一范例实施例中,同一个更新程序所产生的实体至逻辑映射信息中不包含同一个逻辑单元的多条实体至逻辑映射信息,但是,在不同的更新程序所产生的实体至逻辑映射信息中则可能存在同一个逻辑单元的多条实体至逻辑映射信息。例如,实体至逻辑映射信息1022与1322可能个别包含一条逻辑单元810(0)的实体至逻辑映射信息。
在将更新后的实体至逻辑映射信息1322记录至第一映射表格920之后,存储器管理电路702会根据第一映射表格920所记录的更新后的实体至逻辑映射信息来更新储存于***区806的第二映射表格1340。例如,第二映射表格1340为储存于实体抹除单元800(A+1)中的逻辑至实体映射表格。关于如何根据第一映射表格来更新第二映射表格已于前述说明,此处不再赘述。
特别是,在图13的范例实施例中,第一映射表格920中的信息都是经过筛选的信息,因此相对于一般的实体至逻辑映射表格的记录方式,第一映射表格920可以储存更多有效的实体至逻辑映射信息。然后,在根据第一映射表格920来更新第二映射表格1340时,所耗费的***资源与时间也可以被减少。
值得一提的是,在图9至图13的范例实施例中,是在第一映射表格920中直接以更新后的实体至逻辑映射信息来覆盖原先的实体至逻辑映射信息。然而,在另一范例实施例中,也可以在第一映射表格中设置一个保留区域,并且将还没有更新的实体至逻辑映射信息记录在此保留区域之后。藉此,在更新此实体至逻辑映射信息之后,原先记录在此保留区域之后的实体至逻辑映射信息可被移除,并且更新后的实体至逻辑映射信息可记录在此保留区域中。
图14是根据本发明的一范例实施例所示出的使用保留区域来更新第一映射表格的示意图。
请参照图14,在本范例实施例中,一个保留区域(也称为第一区域)1410会被配置在第一映射表格1420中。对应于某一写入数据的实体至逻辑映射信息1412会被记录在保留区域1410之后的区域(也称为第二区域)。在将实体至逻辑映射信息1412更新为实体至逻辑映射信息1422之后,实体至逻辑映射信息1412会被从第一映射表格1420中移除并且实体至逻辑映射信息1422会被记录在保留区域1410中。尔后,若接收到另一条写入指令与对应的写入数据,则对应于此写入数据的实体至逻辑映射信息1432会被记录在保留区域1410之后的区域。在将实体至逻辑映射信息1432更新为实体至逻辑映射信息1442之后,实体至逻辑映射信息1432会被从第一映射表格1420中移除并且实体至逻辑映射信息1442会被记录在保留区域1410中。以此类推,可以依照这样的规则来整理第一映射表格1420中更多的实体至逻辑映射信息。特别是,若保留区域1410即将或已被写满,则在将下一条实体至逻辑映射信息记录至第一映射表格1420之前,一个新的保留区域(未示出)会被配置以储存下一条更新后的实体至逻辑映射信息记录。
在一范例实施例中,在更新记录于第一映射表格中的某一实体至逻辑映射信息之前,存储器管理电路702还会先估计更新后的实体至逻辑映射信息的数据大小并且判断此估计出来的数据大小是否大于一预设大小。存储器管理电路702仅会在此估计出来的数据大小不大于此预设大小时去实际更新此实体至逻辑映射信息。换言之,若估计出来的更新后的实体至逻辑映射信息的数据大小大于此预设大小,表示更新数据可能没有节省多少空间,故存储器管理电路702会跳过对于此实体至逻辑映射信息的更新。例如,此预设大小可以是相对于待更新的实体至逻辑映射信息的数据大小来设定。例如,可将此预设大小设定为待更新的实体至逻辑映射信息的数据大小的一预设百分比(例如,50%)。或者,根据图14的范例实施例,此预设大小也可以设定为等于保留区域1410的大小。
图15是根据本发明的一范例实施例所示出的移除实体至逻辑映射信息以更新第一映射表格的示意图。
请参照图15,实体至逻辑映射信息1522(0)~1522(K)是对应于某一写入数据而被记录于暂存于缓冲存储器710的第一映射表格1520中。在将实体至逻辑映射信息1522(0)~1522(K)复制到可复写式非易失性存储器模块中的某一个实体单元储存之后,实体至逻辑映射信息1522(0)~1522(K)会在第一映射表格1520中被更新。在本范例实施例中,存储器管理电路702会判断实体至逻辑映射信息1522(0)~1522(K)中是否包含同一个逻辑单元的多条实体至逻辑映射信息。假设实体至逻辑映射信息1522(0)~1522(3)是同一个逻辑单元的实体至逻辑映射信息,则在对应的映射表格更新操作中,存储器管理电路702会移除实体至逻辑映射信息1522(0)~1522(3)中较早记录的实体至逻辑映射信息1522(0)~1522(2)并且保留实体至逻辑映射信息1522(0)~1522(3)中最晚记录的实体至逻辑映射信息1522(3)。
图16是根据本发明的另一范例实施例所示出的移除实体至逻辑映射信息以更新第一映射表格的示意图。
请参照图16,实体至逻辑映射信息1622(0)~1622(G)是对应于某一写入数据而被记录于暂存于缓冲存储器710的第一映射表格1620中。特别是,在将实体至逻辑映射信息1622(0)~1622(G)记录至暂存于缓冲存储器710的第一映射表格1620时,缓冲存储器710还暂存有第二映射表格1630。例如,第二映射表格1630中记录有逻辑至实体映射信息1632(0)~1632(J)。
在将实体至逻辑映射信息1622(0)~1622(G)复制到可复写式非易失性存储器模块中的某一个实体单元储存之后,实体至逻辑映射信息1622(0)~1622(G)会在第一映射表格1620中被更新。在本范例实施例中,存储器管理电路702会比对实体至逻辑映射信息1622(0)~1622(G)与逻辑至实体映射信息1632(0)~1632(J)并且判断其中是否存在与同一个逻辑单元有关的映射信息。在本范例实施例中,假设实体至逻辑映射信息1622(0)~1622(J)是属于特定的至少一逻辑单元的实体至逻辑映射信息并且此特定的逻辑单元的逻辑至实体映射信息包含于逻辑至实体映射信息1632(0)~1632(J)中,则在对应的表格更新操作中,存储器管理电路702会将实体至逻辑映射信息1622(0)~1622(J)从第一映射表格1620中移除并且保留实体至逻辑映射信息1622(J+1)~1622(G)于第一映射表格1620中。藉此,在更新暂存于缓冲存储器710的第一映射表格1620之后,被保留的实体至逻辑映射信息1622(J+1)~1622(G)中的任一者的逻辑单元的逻辑至实体映射信息不会包含于同时被暂存于缓冲存储器710中的逻辑至实体映射信息1632(0)~1632(J)中。
图17是根据本发明的一范例实施例所示出的更新第二映射表格的示意图。
请参照图17,若暂存于缓冲存储器710中的第一映射表格1720被实体至逻辑映射信息1722(0)~1722(L)写满,则储存于可复写式非易失性存储器模块的实体抹除单元800(A+1)中的逻辑至实体映射表格1740(即,第二映射表格)中的部分信息会被读取到缓冲存储器710中。例如,被读取到缓冲存储器710中的信息被视为第二映射表格1730,其包含逻辑至实体映射信息1732(0)~1732(L)。逻辑至实体映射信息1732(0)~1732(L)中的每一条信息会对应于实体至逻辑映射信息1722(0)~1722(L)中的某一条信息。例如,逻辑至实体映射信息1732(0)是对应于实体至逻辑映射信息1722(0)、逻辑至实体映射信息1732(1)是对应于实体至逻辑映射信息1722(1)等,以此类推。实体至逻辑映射信息1722(0)~1722(L)会被用来更新同时被暂存于缓冲存储器710中的逻辑至实体映射信息1732(0)~1732(L)。例如,逻辑至实体映射信息1732(0)是记录某一个逻辑单元的旧的逻辑至实体映射关系并且实体至逻辑映射信息1722(0)是记录此逻辑单元的新的实体至逻辑映射关系,则此新的实体至逻辑映射关系会被用来更新此旧的逻辑至实体映射关系。在完成逻辑至实体映射信息1732(0)~1732(L)的更新之后,更新后的实体映射信息1732(0)~1732(L)会被回存到可复写式非易失性存储器模块中(例如,逻辑至实体映射表格1740)。此外,第一映射表格1720中的信息可被清除,以暂存对应于来自主机***11的下一条写入数据的实体至逻辑映射信息。
图18是根据本发明的一范例实施例所示出的映射表格更新方法的流程图。
请参照图18,在步骤S1801中,接收写入指令与对应于所述写入指令的写入数据。在步骤S1802中,将对应于所述写入数据的实体至逻辑映射信息记录至暂存于缓冲存储器的第一映射表格中。在步骤S1803中,根据所述第一映射表格将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的一实体单元,其中,所述实体单元储存有所述写入数据中的至少部分数据。在步骤S1804中,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,其中更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息。在步骤S1805中,根据所述第一映射表格所记录的更新后的实体至逻辑映射信息来更新第二映射表格。
图19是根据本发明的另一范例实施例所示出的映射表格更新方法的流程图。
请参照图19,在步骤S1901中,接收写入指令与对应于所述写入指令的写入数据。在步骤S1902中,将对应于所述写入数据的实体至逻辑映射信息记录至暂存于缓冲存储器的第一映射表格中。在步骤S1903中,根据所述第一映射表格将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的实体单元,其中,所述实体单元储存有所述写入数据中的至少部分数据。在步骤S1904中,判断用以储存所述写入数据的至少一逻辑单元的逻辑至实体映射信息是否暂存于所述缓冲存储器中。若步骤S1904的判断结果为是,则在步骤S1905中,将所述逻辑单元的所述实体至逻辑映射信息从所述第一映射表格中移除。若步骤S1904的判断结果为否,则在步骤S1906中,判断所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息。若步骤S1906的判断结果为是,则在步骤S1907中,只保留所述同一个逻辑单元的多条实体至逻辑映射信息的其中一条信息于所述第一映射表格中。若步骤S1906的判断结果为否,则在步骤S1908中,判断所述第一映射表格是否已写满或即将写满。若所述第一映射表格已写满或即将写满,在步骤S1909中,根据所述第一映射表格所记录的实体至逻辑映射信息来更新第二映射表格。若所述第一映射表格尚未写满或仍有足够的储存空间,则在步骤S1908之后步骤S1901可被重复执行,以继续使用此第一映射表格。
在本范例实施例中,步骤S1904~步骤S1907为更新暂存于缓冲存储器中的第一映射表格的操作。然而,在另一范例实施例中,也可以选择在第一映射表格的更新操作中仅执行步骤1904与步骤S1905或者仅执行步骤1906与步骤S1907。
在另一范例实施例中,步骤S1908还包括判断存储器储存装置或存储器控制电路单元是否处于一特定状态或是否接收到一重整指令。例如,此特定状态可以是闲置状态、刚开机的状态或即将关机的状态。若存储器储存装置或存储器控制电路单元处于此特定状态或接收到此重整指令,步骤S1909会被执行。若存储器储存装置或存储器控制电路单元不处于此特定状态、没有接收到此重整指令且所述第一映射表格尚未写满,则步骤S1901可被重复执行。
然而,图18与图19中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图18与图19中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图18与图19的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,在将某一条写入数据的实体至逻辑映射信息从缓冲存储器储存至可复写式非易失性存储器模块之后,此写入数据的实体至逻辑映射信息会在缓冲存储器中被更新,以尝试在缓冲存储器中释放出更多的可用空间。藉此,在一范例实施例中,可避免可复写式非易失性存储器模块中的逻辑至实体映射表格因为缓冲存储器中的实体至逻辑映射表格很容易被写满而太频繁地被更新。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (27)

1.一种映射表格更新方法,用于一可复写式非易失性存储器模块,其特征在于,所述映射表格更新方法包括:
接收一写入指令与对应于所述写入指令的一写入数据;
将对应于所述写入数据的一实体至逻辑映射信息记录至暂存于一缓冲存储器的一第一映射表格中;
根据所述第一映射表格将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的一实体单元,其中,所述实体单元储存有所述写入数据的至少部分数据;
在将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的所述实体单元后,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,以减少所述缓冲存储器中对应于所述写入数据的所述实体至逻辑映射信息的数据量,其中更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息;以及
根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新一第二映射表格,所述第二映射表格为一逻辑至实体映射表格。
2.根据权利要求1所述的映射表格更新方法,其特征在于,所述将对应于所述写入数据的一实体至逻辑映射信息记录至暂存于一缓冲存储器的一第一映射表格中,包括:
在所述第一映射表格中保留一第一区域;以及
将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的一第二区域。
3.根据权利要求2所述的映射表格更新方法,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,包括:
移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及
将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
4.根据权利要求1所述的映射表格更新方法,其特征在于,所述写入数据包括一第一写入数据与一第二写入数据,
所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,包括:
将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
5.根据权利要求4所述的映射表格更新方法,其特征在于,当接收到所述写入指令时,用以储存所述第二写入数据的一逻辑单元的一逻辑至实体映射信息是暂存于所述缓冲存储器中。
6.根据权利要求1所述的映射表格更新方法,其特征在于,所述第一映射表格为一实体至逻辑映射表格。
7.根据权利要求1所述的映射表格更新方法,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的步骤仅在更新后的所述实体至逻辑映射信息的一数据大小不大于一预设大小时执行。
8.根据权利要求1所述的映射表格更新方法,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,包括:
判断用以储存所述写入数据的至少一逻辑单元的一逻辑至实体映射信息是否暂存于所述缓冲存储器中;
若用以储存所述写入数据中的一第一写入数据的一逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
若用以储存所述写入数据中的一第二写入数据的一逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
9.根据权利要求1所述的映射表格更新方法,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,包括:
判断暂存于所述缓冲存储器的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及
若暂存于所述缓冲存储器的所述第一映射表格中存在所述同一个逻辑单元的该些实体至逻辑映射信息,只保留所述同一个逻辑单元的该些实体至逻辑映射信息的其中一条信息于所述第一映射表格中。
10.一种存储器储存装置,其特征在于,包括:
一连接接口单元,用以电性连接至一主机***;
一可复写式非易失性存储器模块;以及
一存储器控制电路单元,电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以接收一写入指令与对应于所述写入指令的一写入数据,
其中所述存储器控制电路单元还用以将对应于所述写入数据的一实体至逻辑映射信息记录至暂存于一缓冲存储器的一第一映射表格中,
其中所述存储器控制电路单元还用以根据暂存于所述缓冲存储器中的所述第一映射表格发送一写入指令序列,以指示将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的一实体单元,其中所述实体单元储存有所述写入数据中的至少部分数据,
所述存储器控制电路单元还用以在将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的所述实体单元后,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,以减少所述缓冲存储器中对应于所述写入数据的所述实体至逻辑映射信息的数据量,其中更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息,
所述存储器控制电路单元还用以根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新一第二映射表格,所述第二映射表格为一逻辑至实体映射表格。
11.根据权利要求10所述的存储器储存装置,其特征在于,所述存储器控制电路单元将对应于所述写入数据的一实体至逻辑映射信息记录至暂存于一缓冲存储器的一第一映射表格中的操作包括:
在所述第一映射表格中保留一第一区域;以及
将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的一第二区域。
12.根据权利要求11所述的存储器储存装置,其特征在于,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及
将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
13.根据权利要求10所述的存储器储存装置,其特征在于,所述写入数据包括一第一写入数据与一第二写入数据,
所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
14.根据权利要求13所述的存储器储存装置,其特征在于,当接收到所述写入指令时,用以储存所述第二写入数据的一逻辑单元的一逻辑至实体映射信息是暂存于所述缓冲存储器中。
15.根据权利要求10所述的存储器储存装置,其特征在于,所述第一映射表格为一实体至逻辑映射表格。
16.根据权利要求10所述的存储器储存装置,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作仅在更新后的所述实体至逻辑映射信息的一数据大小不大于一预设大小时执行。
17.根据权利要求10所述的存储器储存装置,其特征在于,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
判断用以储存所述写入数据的至少一逻辑单元的一逻辑至实体映射信息是否暂存于所述缓冲存储器中;
若用以储存所述写入数据中的一第一写入数据的一逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
若用以储存所述写入数据中的一第二写入数据的一逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
18.根据权利要求10所述的存储器储存装置,其特征在于,所述存储器控制电路单元更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
判断暂存于所述缓冲存储器的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及
若暂存于所述缓冲存储器的所述第一映射表格中存在所述同一个逻辑单元的该些实体至逻辑映射信息,只保留所述同一个逻辑单元的该些实体至逻辑映射信息的其中一条信息于所述第一映射表格中。
19.一种存储器控制电路单元,用于控制一可复写式非易失性存储器模块,其特征在于,所述存储器控制电路单元包括:
一主机接口,用以电性连接至一主机***;
一存储器接口,用以电性连接至所述可复写式非易失性存储器模块;
一缓冲存储器;以及
一存储器管理电路,电性连接至所述主机接口、所述存储器接口及所述缓冲存储器,
其中,所述存储器管理电路用以接收一写入指令与对应于所述写入指令的一写入数据,
所述存储器管理电路还用以将对应于所述写入数据的一实体至逻辑映射信息记录至暂存于所述缓冲存储器的一第一映射表格中,
所述存储器管理电路还用以根据暂存于所述缓冲存储器中的所述第一映射表格发送一写入指令序列,以指示将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的一实体单元,其中,所述实体单元储存有所述写入数据中的至少部分数据,
所述存储器管理电路还用以在将对应于所述写入数据的所述实体至逻辑映射信息储存至所述可复写式非易失性存储器模块中的所述实体单元后,更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息,以减少所述缓冲存储器中对应于所述写入数据的所述实体至逻辑映射信息的数据量,其中更新后的所述实体至逻辑映射信息仅包括对应于所述写入数据的所述实体至逻辑映射信息的部分信息,
所述存储器管理电路还用以根据所述第一映射表格所记录的更新后的所述实体至逻辑映射信息来更新一第二映射表格,所述第二映射表格为一逻辑至实体映射表格。
20.根据权利要求19所述的存储器控制电路单元,其特征在于,所述存储器管理电路将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的操作包括:
在所述第一映射表格中保留一第一区域;以及
将对应于所述写入数据的所述实体至逻辑映射信息记录至所述第一映射表格中的一第二区域。
21.根据权利要求20所述的存储器控制电路单元,其特征在于,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
移除记录于所述第二区域的对应于所述写入数据的所述实体至逻辑映射信息;以及
将更新后的所述实体至逻辑映射信息记录至所述第一区域中。
22.根据权利要求19所述的存储器控制电路单元,其特征在于,所述写入数据包括一第一写入数据与一第二写入数据,
所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
23.根据权利要求22所述的存储器控制电路单元,其特征在于,当接收到所述写入指令时,用以储存所述第二写入数据的一逻辑单元的一逻辑至实体映射信息是暂存于所述缓冲存储器中。
24.根据权利要求19所述的存储器控制电路单元,其特征在于,所述第一映射表格为一实体至逻辑映射表格。
25.根据权利要求19所述的存储器控制电路单元,其特征在于,所述更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作仅在更新后的所述实体至逻辑映射信息的一数据大小不大于一预设大小时执行。
26.根据权利要求19项所述的存储器控制电路单元,其特征在于,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
判断用以储存所述写入数据的至少一逻辑单元的一逻辑至实体映射信息是否暂存于所述缓冲存储器中;
若用以储存所述写入数据中的一第一写入数据的一逻辑单元的所述逻辑至实体映射信息非暂存于所述缓冲存储器中,将对应于所述第一写入数据的所述实体至逻辑映射信息保留于所述第一映射表格中;以及
若用以储存所述写入数据中的一第二写入数据的一逻辑单元的所述逻辑至实体映射信息是暂存于所述缓冲存储器中,将对应于所述第二写入数据的所述实体至逻辑映射信息从所述第一映射表格中移除。
27.根据权利要求19所述的存储器控制电路单元,其特征在于,所述存储器管理电路更新暂存于所述缓冲存储器的所述第一映射表格所记录的对应于所述写入数据的所述实体至逻辑映射信息的操作包括:
判断暂存于所述缓冲存储器的所述第一映射表格中是否存在同一个逻辑单元的多条实体至逻辑映射信息;以及
若暂存于所述缓冲存储器的所述第一映射表格中存在所述同一个逻辑单元的该些实体至逻辑映射信息,只保留所述同一个逻辑单元的该些实体至逻辑映射信息的其中一条信息于该第一映射表格中。
CN201510488020.2A 2015-08-11 2015-08-11 表格更新方法、存储器储存装置及存储器控制电路单元 Active CN106445401B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510488020.2A CN106445401B (zh) 2015-08-11 2015-08-11 表格更新方法、存储器储存装置及存储器控制电路单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510488020.2A CN106445401B (zh) 2015-08-11 2015-08-11 表格更新方法、存储器储存装置及存储器控制电路单元

Publications (2)

Publication Number Publication Date
CN106445401A CN106445401A (zh) 2017-02-22
CN106445401B true CN106445401B (zh) 2020-01-07

Family

ID=58092864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510488020.2A Active CN106445401B (zh) 2015-08-11 2015-08-11 表格更新方法、存储器储存装置及存储器控制电路单元

Country Status (1)

Country Link
CN (1) CN106445401B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729307A (zh) * 2017-10-31 2018-02-23 北京无线电测量研究所 一种基于Qt的可配置扩展表格的显示方法及***
CN107844431B (zh) * 2017-11-03 2022-01-25 合肥兆芯电子有限公司 映射表更新方法、存储器控制电路单元与存储器存储装置
CN110879793B (zh) * 2018-09-05 2021-09-14 群联电子股份有限公司 存储器管理方法、存储器存储装置及存储器控制电路单元
CN111767005B (zh) * 2019-04-01 2023-12-08 群联电子股份有限公司 存储器控制方法、存储器存储装置及存储器控制电路单元
CN115515012A (zh) * 2021-06-07 2022-12-23 广州视源电子科技股份有限公司 一种密钥烧录方法、装置、电子设备板卡及存储介质
CN113419683B (zh) * 2021-07-01 2023-07-04 群联电子股份有限公司 存储器存取方法、存储器存储装置及存储器控制电路单元

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294607A (zh) * 2012-02-27 2013-09-11 北京华虹集成电路设计有限责任公司 一种存储管理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4058322B2 (ja) * 2002-10-07 2008-03-05 株式会社ルネサステクノロジ メモリカード
US20070233937A1 (en) * 2006-03-31 2007-10-04 Coulson Richard L Reliability of write operations to a non-volatile memory
US8788740B2 (en) * 2007-12-21 2014-07-22 Spansion Llc Data commit on multicycle pass complete without error
TW200935422A (en) * 2008-02-05 2009-08-16 Phison Electronics Corp Flash memory data writing method and controller thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294607A (zh) * 2012-02-27 2013-09-11 北京华虹集成电路设计有限责任公司 一种存储管理方法

Also Published As

Publication number Publication date
CN106445401A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
TWI575374B (zh) 映射表格更新方法、記憶體儲存裝置及記憶體控制電路單元
US20180260317A1 (en) Method for managing the copying and storing of data in garbage collection, memory storage device and memory control circuit unit using the same
US9280460B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
US9582416B2 (en) Data erasing method, memory control circuit unit and memory storage apparatus
US9880742B2 (en) Valid data merging method, memory controller and memory storage apparatus
CN106445401B (zh) 表格更新方法、存储器储存装置及存储器控制电路单元
CN110879793B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
US10283196B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
US10503433B2 (en) Memory management method, memory control circuit unit and memory storage device
US9383929B2 (en) Data storing method and memory controller and memory storage device using the same
CN107943710B (zh) 存储器管理方法及使用所述方法的存储控制器
TWI540428B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
US11010290B2 (en) Method for reading management information according to updating data reflecting both of host write and data merge, memory storage device and memory control circuit unit
US11755242B2 (en) Data merging method, memory storage device for updating copied L2P mapping table according to the physical address of physical unit
US9501397B2 (en) Data writing method, memory controller, and memory storage apparatus
CN113885808A (zh) 映射信息记录方法以及存储器控制电路单元与存储装置
CN112051971B (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
US10346040B2 (en) Data merging management method based on data type, memory storage device and memory control circuit unit
US9760456B2 (en) Memory management method, memory storage device and memory control circuit unit
CN112988076B (zh) 快闪存储器控制方法、存储装置及控制器
US9830077B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
CN110096215B (zh) 存储器管理方法、存储器储存装置及存储器控制电路单元
CN112394883A (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
US11561719B2 (en) Flash memory control method of re-programming memory cells before erase operations, flash memory storage device and flash memory controller
US20240004554A1 (en) Partial erasing management method, memory storage device, and memory control circuit unit

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant