CN109460372B - 数据存储方法、存储器控制电路单元及存储器存储装置 - Google Patents

数据存储方法、存储器控制电路单元及存储器存储装置 Download PDF

Info

Publication number
CN109460372B
CN109460372B CN201710794230.3A CN201710794230A CN109460372B CN 109460372 B CN109460372 B CN 109460372B CN 201710794230 A CN201710794230 A CN 201710794230A CN 109460372 B CN109460372 B CN 109460372B
Authority
CN
China
Prior art keywords
data
memory
sub
parity information
mode
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
CN201710794230.3A
Other languages
English (en)
Other versions
CN109460372A (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 CN201710794230.3A priority Critical patent/CN109460372B/zh
Publication of CN109460372A publication Critical patent/CN109460372A/zh
Application granted granted Critical
Publication of CN109460372B publication Critical patent/CN109460372B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

本发明提出一种数据存储方法、存储器控制电路单元及存储器存储装置。所述方法包括:从主机系统接收第一写入指令;根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入第一数据;当使用第一模式写入第一数据时,使用第一模式将第一数据写入至实体抹除单元中的第一实体抹除单元中;以及当使用第二模式写入第一数据时,使用第二模式将第一数据写入至实体抹除单元中的第二实体抹除单元中。

Description

数据存储方法、存储器控制电路单元及存储器存储装置
技术领域
本发明涉及一种数据存储方法、存储器控制电路单元及存储器存储装置。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器(rewritable non-volatile memory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,因此,近年可复写式非易失性存储器产业成为电子产业中相当热门的一环。例如,以快闪存储器作为存储媒体的固态硬盘(Solid-statedrive)已广泛应用作为电脑主机的硬盘,以提升电脑的存取效能。
发明内容
本发明提出一种数据存储方法、存储器控制电路单元及存储器存储装置,可以动态地根据可使用的缓冲存储器状态来决定不同的数据写入方式。藉此提高存储器存储装置在使用上的弹性。
本发明提供一种数据存储方法,用于具有可复写式非易失性存储器模块的存储器存储装置,所述可复写式非易失性存储器模块包括多个实体抹除单元,且所述多个实体抹除单元中的每一个实体抹除单元包括多个实体程序化单元,所述数据存储方法包括:从主机系统接收第一写入指令;根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据;当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,使用第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中;以及当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的第二实体抹除单元中。
在本发明的一实施例中,使用第一模式将第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中的步骤包括:将第一数据以及用以校正第一数据的第一同位信息写入至多个实体抹除单元中的第一实体抹除单元中。其中使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的步骤包括:将第一数据以及用以校正第一数据的第二同位信息写入至多个实体抹除单元中的第二实体抹除单元中,其中第一同位信息的数量大于第二同位信息的数量。
在本发明的一实施例中,其中根据可使用的所述缓冲存储器状态,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的步骤包括:判断所述主机系统的第一缓冲存储器是否可以使用;当所述主机系统的所述第一缓冲存储器可以使用时,使用所述第一模式写入所述第一数据;以及当所述主机系统的所述第一缓冲存储器不可以使用时,使用所述第二模式写入该第一数据。
在本发明的一实施例中,其中所述第一同位信息包括第三同位信息以及第四同位信息,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤包括:将所述第一数据中的第一子数据暂存至所述第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中;将所述第一数据中的第二子数据暂存至所述存储器存储装置的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中;将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元;将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元;以及使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤包括:将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中;将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元;以及使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行写入。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤之后,所述第二实体抹除单元仅能使用所述第二模式进行写入。
在本发明的一实施例中,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正一相对应数据的同位信息。
在本发明的一实施例中,可复写式非易失性存储器模块包括分别电性连接至存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的步骤包括:将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中;将第一数据中的第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于多个存储器子模块中的第一存储器子模块;以及将第一数据中的第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,第二字元线属于多个存储器子模块中的第二存储器子模块。其中使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的步骤包括:传送至少一第一数据请求指令至主机系统;根据第一数据请求指令,从主机系统取得第三子数据以及第四子数据;将第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元;以及将第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,其中在第一数据中第三子数据以及第四子数据为不连续。
在本发明的一实施例中,其中可复写式非易失性存储器模块包括多个字元线,其中使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的步骤包括:将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中;将第一数据中的第五子数据写入至多个字元线中第三字元线上的第九实体程序化单元;将第一数据中的第六子数据写入至多个字元线中第四字元线上的第十实体程序化单元;以及根据第五子数据以及第六子数据产生第五同位信息,并将第五同位信息存储至第十一实体程序化单元中。其中使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的步骤包括:将第一数据中的第五子数据以及第六子数据分别写入至多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元;以及根据第五子数据以及第六子数据产生第六同位信息,并将第六同位信息存储至第十四实体程序化单元中。
本发明提供一种存储器控制电路单元,用于控制可复写式非易失性存储器模块,其中所述可复写式非易失性存储器模块包括多个实体抹除单元,且所述多个实体抹除单元之中的每一个实体程序化单元包括多个实体程序化单元,所述存储器控制电路单元包括:主机接口、存储器接口以及存储器管理电路。主机接口电性连接至主机系统。存储器接口电性连接至所述可复写式非易失性存储器模块。存储器管理电路电性连接至所述主机接口以及所述存储器接口。存储器管理电路用以执行下述运作:从主机系统接收第一写入指令;根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据;当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,使用第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中;以及当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,使用第二模式将所述第一数据写入至所述多个实体抹除单元中的第二实体抹除单元中。
在本发明的一实施例中,在使用第一模式将第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中的运作中,存储器管理电路将第一数据以及用以校正第一数据的第一同位信息写入至多个实体抹除单元中的第一实体抹除单元中。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器管理电路将第一数据以及用以校正第一数据的第二同位信息写入至多个实体抹除单元中的第二实体抹除单元中,其中第一同位信息的数量大于第二同位信息的数量。
在本发明的一实施例中,其中根据可使用的所述缓冲存储器,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的运作中,存储器管理电路判断所述主机系统的第一缓冲存储器是否可以使用。当所述主机系统的所述第一缓冲存储器可以使用时,存储器管理电路使用所述第一模式写入所述第一数据;以及当所述主机系统的所述第一缓冲存储器不可以使用时,存储器管理电路使用所述第二模式写入所述第一数据。
在本发明的一实施例中,其中所述第一同位信息包括第三同位信息以及第四同位信息,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,存储器管理电路将所述第一数据中的第一子数据暂存至所述第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中,将所述第一数据中的第二子数据暂存至所述存储器存储装置的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中,将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元,将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元,以及使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,存储器管理电路将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中,将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元,以及使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行写入。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作之后,所述第二实体抹除单元仅能使用所述第二模式进行写入。
在本发明的一实施例中,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正一相对应数据的同位信息。
在本发明的一实施例中,可复写式非易失性存储器模块包括分别电性连接至存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中在使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的运作中,存储器管理电路将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中,将第一数据中的第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于多个存储器子模块中的第一存储器子模块;以及存储器管理电路将第一数据中的第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,第二字元线属于多个存储器子模块中的第二存储器子模块。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器管理电路传送至少一第一数据请求指令至主机系统,根据第一数据请求指令,从主机系统取得第三子数据以及第四子数据,将第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元,以及将第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,其中在第一数据中第三子数据以及第四子数据为不连续。
在本发明的一实施例中,其中可复写式非易失性存储器模块包括多个字元线,其中在使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的运作中,存储器管理电路将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中,将第一数据中的第五子数据写入至多个字元线中第三字元线上的第九实体程序化单元,将第一数据中的第六子数据写入至多个字元线中第四字元线上的第十实体程序化单元,以及根据第五子数据以及第六子数据产生第五同位信息,并将第五同位信息存储至第十一实体程序化单元中。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器管理电路将第一数据中的第五子数据以及第六子数据分别写入至多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元;以及根据第五子数据以及第六子数据产生第六同位信息,并将第六同位信息存储至第十四实体程序化单元中。
本发明提供一种存储器存储装置,此存储器存储装置包括连接接口单元、可复写式非易失性存储器模块以及存储器控制电路单元。连接接口单元电性连接至主机系统。可复写式非易失性存储器模块包括多个实体抹除单元且所述多个实体抹除单元之中的每一个实体抹除单元包括多个实体程序化单元。存储器控制电路单元电性连接至所述连接接口单元与所述可复写式非易失性存储器模块。存储器控制电路单元用以执行下述运作:从主机系统接收第一写入指令;根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据;当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,使用第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中;以及当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,使用第二模式将所述第一数据写入至所述多个实体抹除单元中的第二实体抹除单元中。
在本发明的一实施例中,在使用第一模式将第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中的运作中,存储器控制电路单元将第一数据以及用以校正第一数据的第一同位信息写入至多个实体抹除单元中的第一实体抹除单元中。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器控制电路单元将第一数据以及用以校正第一数据的第二同位信息写入至多个实体抹除单元中的第二实体抹除单元中,其中第一同位信息的数量大于第二同位信息的数量。
在本发明的一实施例中,其中根据可使用的所述缓冲存储器,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的运作中,存储器控制电路单元判断所述主机系统的第一缓冲存储器是否可以使用。当所述主机系统的所述第一缓冲存储器可以使用时,存储器控制电路单元使用所述第一模式写入所述第一数据;以及当所述主机系统的所述第一缓冲存储器不可以使用时,存储器控制电路单元使用所述第二模式写入所述第一数据。
在本发明的一实施例中,其中所述第一同位信息包括第三同位信息以及第四同位信息,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,存储器控制电路单元将所述第一数据中的第一子数据暂存至所述第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中,将所述第一数据中的第二子数据暂存至所述存储器存储装置的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中,将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元,将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元,以及使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,存储器控制电路单元将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中,将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元,以及使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行写入。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
在本发明的一实施例中,其中将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作之后,所述第二实体抹除单元仅能使用所述第二模式进行写入。
在本发明的一实施例中,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正一相对应数据的同位信息。
在本发明的一实施例中,可复写式非易失性存储器模块包括分别电性连接至存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中在使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的运作中,存储器控制电路单元将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中,将第一数据中的第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于多个存储器子模块中的第一存储器子模块,以及将第一数据中的第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,第二字元线属于多个存储器子模块中的第二存储器子模块。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器控制电路单元传送至少一第一数据请求指令至主机系统,根据第一数据请求指令,从主机系统取得第三子数据以及第四子数据,将第三子数据经由第一数据总线写入至多个字元线中第一字元线上的第七实体程序化单元,以及将第四子数据经由第二数据总线写入至多个字元线中第二字元线上的第八实体程序化单元,其中在第一数据中第三子数据以及第四子数据为不连续。
在本发明的一实施例中,其中可复写式非易失性存储器模块包括多个字元线,其中在使用第一模式将第一数据写入至多个实体抹除单元中的第一实体抹除单元中的运作中,存储器控制电路单元将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中,将第一数据中的第五子数据写入至多个字元线中第三字元线上的第九实体程序化单元,将第一数据中的第六子数据写入至多个字元线中第四字元线上的第十实体程序化单元,以及根据第五子数据以及第六子数据产生第五同位信息,并将第五同位信息存储至第十一实体程序化单元中。其中在使用第二模式将第一数据写入至多个实体抹除单元中的第二实体抹除单元中的运作中,存储器控制电路单元将第一数据中的第五子数据以及第六子数据分别写入至多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元,以及根据第五子数据以及第六子数据产生第六同位信息,并将第六同位信息存储至第十四实体程序化单元中。
基于上述,本发明提出的一种数据存储方法、存储器控制电路单元及存储器存储装置,可以动态地根据可使用的缓冲存储器状态来决定不同的数据写入方式。藉此提高存储器存储装置在使用上的弹性。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据本发明的一范例实施例所显示的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据本发明的另一范例实施例所显示的主机系统、存储器存储装置及I/O装置的示意图;
图3是根据本发明的另一范例实施例所显示的主机系统与存储器存储装置的示意图;
图4是根据本发明的一范例实施例所显示的存储器存储装置的概要方块图;
图5是根据本发明的一范例实施例所显示的存储器控制电路单元的概要方块图;
图6是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的示意图;
图7是根据本发明的一范例实施例所显示的数据存储方法的流程图;
图8A与图8B是根据本发明的第一范例实施例所显示的使用第一模式进行写入的示意图;
图9A与图9B是根据本发明的第一范例实施例所显示的使用第二模式进行写入的示意图;
图10是根据本发明的第一范例实施例所显示的数据存储方法的流程图;
图11A至图11C是根据本发明的第二范例实施例所显示的使用第一模式与第二模式进行写入的示意图;
图12是根据本发明的第二范例实施例所显示的数据存储方法的流程图;
图13是根据本发明的第三范例实施例所显示的数据存储方法的流程图。
附图标号说明:
30、10:存储器存储装置
31、11:主机系统
110:系统总线
111:处理器
112:随机存取存储器
113:只读存储器
114:数据传输接口
12:输入/输出(I/O)装置
20:主机板
201:随身盘
202:存储卡
203:固态硬盘
204:无线存储器存储装置
205:全球定位系统模块
206:网络接口卡
207:无线传输装置
208:键盘
209:荧幕
210:喇叭
32:SD卡
33:CF卡
34:嵌入式存储装置
341:嵌入式多媒体卡
342:嵌入式多芯片封装存储装置
402:连接接口单元
404:存储器控制电路单元
406:可复写式非易失性存储器模块
502:存储器管理电路
504:主机接口
506:存储器接口
508:错误检查与校正电路
510:缓冲存储器
512:电源管理电路
601:存储区
602:取代区
610(0)~610(B):实体抹除单元
612(0)~612(C):逻辑单元
步骤S701:从主机系统接收第一写入指令的步骤
步骤S703:根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入第一数据的步骤
步骤S705:使用第一模式将第一数据写入至第一实体抹除单元中的步骤
步骤S707:使用第二模式将第一数据写入至第二实体抹除单元中的步骤
SDATA1、SDATA2、SDATA3、SDATA4、SDATA5、SDATA6、SDATA7、SDATA8:子数据
710:第一缓冲存储器
701a、701b、501a、501b:暂存区
P1、P2、P3、P4、P5、P6:同位信息
步骤S1001:从主机系统接收第一写入指令的步骤
步骤S1003:判断主机系统的第一缓冲存储器是否可以使用的步骤
步骤S1005:将对应第一写入指令的第一数据中的第一子数据暂存至第一缓冲存储器中,产生对应第一子数据的第三同位信息并将第三同位信息暂存于第一缓冲存储器中的步骤
步骤S1007:将第一数据中的第二子数据暂存至存储器存储装置的第二缓冲存储器中,产生对应第二子数据的第四同位信息并将第四同位信息暂存于第二缓冲存储器中的步骤
步骤S1009:将第一子数据以及第三同位信息分别从第一缓冲存储器写入至第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元的步骤
步骤S1011:将第二子数据以及第四同位信息从第二缓冲存储器写入至第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元的步骤
步骤S1013:使用第一旗标标记第一实体抹除单元以表示第一实体抹除单元是使用第一模式进行程序化的步骤
步骤S1015:将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中,产生对应第一数据的第二同位信息并将第二同位信息暂存于第二缓冲存储器中的步骤
步骤S1017:将第一数据以及第二同位信息从第二缓冲存储器分别写入至第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元的步骤
步骤S1019:使用第二旗标标记第二实体抹除单元以表示第二实体抹除单元是使用第二模式进行程序化的步骤
P1(0)、P1(1)、P1(2)、P1(3)、P2(0)、P2(1)、P2(2)、P2(3):实体程序化单元
WL1、WL2:字元线
DATA0、DATA1、DATA2、DATA3、DATA4、DATA5、DATA6、DATA7:子数据
步骤S1201:从主机系统接收第一写入指令的步骤
步骤S1203:根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入所述第一数据的步骤
步骤S1205:将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中的步骤
步骤S1207:将第一数据中的第三子数据经由第一数据总线写入至多个字元线中一第一字元线上的第七实体程序化单元的步骤
步骤S1209:将第一数据中的第四子数据经由第二数据总线写入至多个字元线中一第二字元线上的第八实体程序化单元的步骤
步骤S1211:传送第一数据请求指令至主机系统的步骤
步骤S1213:根据第一数据请求指令,从主机系统取得第三子数据以及第四子数据的步骤
步骤S1215:将第三子数据经由第一数据总线写入至第一字元线上的第七实体程序化单元的步骤
步骤S1217:将第四子数据经由第二数据总线写入至第二字元线上的第八实体程序化单元的步骤
步骤S1301:从主机系统接收第一写入指令的步骤
步骤S1303:根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入所述第一数据的步骤
步骤S1305:将对应第一写入指令的第一数据暂存至存储器存储装置的第二缓冲存储器中的步骤
步骤S1307:将第一数据中的第五子数据写入至多个字元线中一第三字元线上的第九实体程序化单元的步骤
步骤S1309:将第一数据中的第六子数据写入至多个字元线中一第四字元线上的第十实体程序化单元的步骤
步骤S1311:根据第五子数据以及第六子数据产生第五同位信息,并将第五同位信息存储至第十一实体程序化单元中的步骤
步骤S1313:将第一数据中的第五子数据以及第六子数据分别写入至多个字元线中一第五字元线上的第十二实体程序化单元以及第十三实体程序化单元的步骤
步骤S1315:根据第五子数据以及第六子数据产生第六同位信息,并将第六同位信息存储至第十四实体程序化单元中的步骤
具体实施方式
一般而言,存储器存储装置(亦称,存储器存储系统)包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与控制器(亦称,控制电路)。通常存储器存储装置是与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据本发明的一范例实施例所显示的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。图2是根据本发明的另一范例实施例所显示的主机系统、存储器存储装置及I/O装置的示意图。
请参照图1与图2,主机系统11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆电性连接至系统总线(system bus)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可例如是随身盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近距离无线通讯(NearField Communication,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通讯技术为基础的存储器存储装置。此外,主机板20也可以通过系统总线110电性连接至全球定位系统(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、荧幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,所提及的主机系统为可实质地与存储器存储装置配合以存储数据的任意系统。虽然在上述范例实施例中,主机系统是以电脑系统来作说明,然而,图3是根据本发明的另一范例实施例所显示的主机系统与存储器存储装置的示意图。请参照图3,在另一范例实施例中,主机系统31也可以是数码相机、摄影机、通讯装置、音频播放器、视频播放器或平板电脑等系统,而存储器存储装置30可为其所使用的安全数码(SecureDigital,SD)卡32、小型快闪(Compact Flash,CF)卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embedded Multi MediaCard,eMMC)341和/或嵌入式多芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模块直接电性连接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的一范例实施例所显示的存储器存储装置的概要方块图。
请参照图4,存储器存储装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
连接接口单元402用以将存储器存储装置10电性连接至主机系统11。在本范例实施例中,连接接口单元402是符合高速周边零件连接接口(Peripheral ComponentInterconnect Express,PCI Express)标准,且相容于快速非易失性存储器(NVM express)接口标准。具体而言,快速非易失性存储器接口标准为一种主机系统与存储器装置之间通讯的协议,其定义了存储器存储装置的控制器与主机系统的作业系统之间的暂存器接口、指令集与功能集,并通过对存储器存储装置的接口标准最佳化,来促进以PCIe接口为主的存储器存储装置的数据存取速度与数据传输速率。然而,在另一范例实施例中,连接接口单元402亦可以是符合其他适合的标准。此外,连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。
存储器控制电路单元404用以执行以硬件型式或韧件型式实作的多个逻辑闸或控制指令并且根据主机系统11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是电性连接至存储器控制电路单元404并且用以存储主机系统11所写入的数据。可复写式非易失性存储器模块406可以是单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个位元的快闪存储器模块)、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个位元的快闪存储器模块)、复数阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个位元的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
可复写式非易失性存储器模块406中的每一个存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个位元。具体来说,每一个存储单元的控制栅极(controlgate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制栅极,可以改变电荷补捉层的电子量,进而改变存储单元的临界电压。此改变存储单元的临界电压的操作亦称为“把数据写入至存储单元”或“程序化(programming)存储单元”。随着临界电压的改变,可复写式非易失性存储器模块406中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个位元。
在本范例实施例中,可复写式非易失性存储器模块406的存储单元会构成多个实体程序化单元,并且此些实体程序化单元会构成多个实体抹除单元。具体来说,同一条字元线上的存储单元会组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的位元,则同一条字元线上的实体程序化单元至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效位元(Least Significant Bit,LSB)是属于下实体程序化单元,并且一存储单元的最高有效位元(Most Significant Bit,MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,和/或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。
在本范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元为实体页面(page)或是实体扇(sector)。若实体程序化单元为实体页面,则此些实体程序化单元通常包括数据位元区与冗余(redundancy)位元区。数据位元区包含多个实体扇,用以存储使用者数据,而冗余位元区用以存储系统数据(例如,错误更正码等管理数据)。在本范例实施例中,数据位元区包含32个实体扇,且一个实体扇的大小为512位元组(byte,B)。然而,在其他范例实施例中,数据位元区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目的一并被抹除的存储单元。例如,实体抹除单元为实体区块(block)。
图5是根据本发明的一范例实施例所显示的存储器控制电路单元的概要方块图。
请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504及存储器接口506。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路502的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路502的控制指令是以韧件型式来实作。例如,存储器管理电路502具有微处理器单元(未显示)与只读存储器(未显示),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在另一范例实施例中,存储器管理电路502的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路502具有微处理器单元(未显示)、只读存储器(未显示)及随机存取存储器(未显示)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元404被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在另一范例实施例中,存储器管理电路502的控制指令亦可以一硬件硬件型式来实作。例如,存储器管理电路502包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。存储单元管理电路用以管理可复写式非易失性存储器模块406的存储单元或其群组。存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令序列以将数据写入至可复写式非易失性存储器模块406中。存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令序列以从可复写式非易失性存储器模块406中读取数据。存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令序列以将数据从可复写式非易失性存储器模块406中抹除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。写入指令序列、读取指令序列及抹除指令序列可各别包括一或多个程序码或指令码并且用以指示可复写式非易失性存储器模块406执行相对应的写入、读取及抹除等操作。在一范例实施例中,存储器管理电路502还可以下达其他类型的指令序列给可复写式非易失性存储器模块406以指示执行相对应的操作。
主机接口504是电性连接至存储器管理电路502并且用以接收与识别主机系统11所传送的指令与数据。也就是说,主机系统11所传送的指令与数据会通过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是相容于PATA标准、IEEE 1394标准、PCIExpress标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是电性连接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。具体来说,若存储器管理电路502要存取可复写式非易失性存储器模块406,存储器接口506会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压准位或执行垃圾回收操作等等)的相对应的指令序列。这些指令序列例如是由存储器管理电路502产生并且通过存储器接口506传送至可复写式非易失性存储器模块406。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的辨识码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元404还包括错误检查与校正电路508、缓冲存储器510与电源管理电路512。
错误检查与校正电路508是电性连接至存储器管理电路502并且用以执行错误检查与校正操作以确保数据的正确性。具体来说,当存储器管理电路502从主机系统11中接收到写入指令时,错误检查与校正电路508会为对应此写入指令的数据产生对应的错误更正码(error correcting code,ECC)和/或错误检查码(error detecting code,EDC),并且存储器管理电路502会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路508会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正操作。
缓冲存储器510是电性连接至存储器管理电路502并且用以暂存来自于主机系统11的数据与指令或来自于可复写式非易失性存储器模块406的数据。电源管理电路512是电性连接至存储器管理电路502并且用以控制存储器存储装置10的电源。
图6是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的示意图。须注意的是,在此描述可复写式非易失性存储器模块406的管理时,“选择”与“分组”等词是逻辑上的操作概念。也就是说,可复写式非易失性存储器模块406中各实体元件的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块406的部分实体元件进行操作。
请参照图6,存储器管理电路502会将可复写式非易失性存储器模块406的实体抹除单元610(0)~610(B)逻辑地分组至存储区601与替换区602。存储区601中的实体抹除单元610(0)~610(A)是用以存储数据,而替换区602中的实体抹除单元610(A+1)~610(B)则是用以替换存储区601中损坏的实体抹除单元。例如,若从某一个实体抹除单元中读取的数据所包含的错误过多而无法被更正时,此实体抹除单元会被视为是损坏的实体抹除单元。须注意的是,若替换区602中没有可用的实体抹除单元,则存储器管理电路502可能会将整个存储器存储装置10宣告为写入保护(write protect)状态,而无法再写入数据。
需注意的是,在另一范例实施例中,一个实体抹除单元亦可以是指一个实体地址、一个实体程序化单元或由多个连续或不连续的实体地址组成。存储器管理电路502会配置逻辑单元612(0)~612(C)以映射存储区601中的实体抹除单元610(0)~610(A)。在本范例实施例中,每一个逻辑单元是指一个逻辑地址。然而,在另一范例实施例中,一个逻辑单元也可以是指一个逻辑程序化单元、一个逻辑抹除单元或者由多个连续或不连续的逻辑地址组成。此外,逻辑单元612(0)~612(C)中的每一个可被映射至一或多个实体抹除单元。
存储器管理电路502会将逻辑单元与实体抹除单元之间的映射关系(亦称为逻辑-实体地址映射关系)记录于至少一逻辑-实体地址映射表。当主机系统11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路502可根据此逻辑-实体地址映射表来执行对于存储器存储装置10的存取操作。
在本范例实施例中,当存储器管理电路502从主机系统11接收到一第一写入指令时,存储器管理电路502会根据可使用的缓冲存储器的空间,判断使用第一模式写入上述第一写入指令的第一数据至可复写式非易失性存储器模块406或使用第二模式写入上述的第一数据至可复写式非易失性存储器模块406。例如,存储器管理电路502会判断主机系统11的随机存取存储器112中是否有被划分给存储器管理电路502使用的存储器空间(在此称为,第一缓冲存储器)或此第一缓冲存储器的空间大小是否大于一门槛值等。
当主机系统11的随机存取存储器112中有配置上述第一缓冲存储器给存储器管理电路502使用或第一缓冲存储器的空间足够时,存储器管理电路502会使用第一模式写入至可复写式非易失性存储器模块406的实体抹除单元中的一实体抹除单元(以下称为,第一实体抹除单元)中。
当主机系统11的随机存取存储器112中没有配置上述第一缓冲存储器给存储器管理电路502使用或第一缓冲存储器空间不够时,存储器管理电路502会使用第二模式将第一数据写入至可复写式非易失性存储器模块406的实体抹除单元中的一实体抹除单元(以下称为,第二实体抹除单元)中。
图7是根据本发明的一范例实施例所显示的数据存储方法的流程图。
在步骤S701中,存储器管理电路502从主机系统11接收第一写入指令。在步骤S703中,根据可使用的缓冲存储器状态,存储器管理电路502判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入第一数据。在本范例实施例中,缓冲存储器状态例如是主机系统11中可用于支援缓冲存储器510运作的额外容量大小、缓冲存储器510的配置状况或者是主机11的缓冲存储器是否可以被存储器管理电路502使用的状态。
当根据可使用的缓冲存储器状态判断使用第一模式写入第一数据时,在步骤S705中,存储器管理电路502使用第一模式将第一数据写入至第一实体抹除单元中。
当根据可使用的缓冲存储器判断使用第二模式写入第一数据时,在步骤S707中,存储器管理电路502使用第二模式将第一数据写入至第二实体抹除单元中。
以下以多个详细的实施例来说明使用第一模式与第二模式进行写入的过程。
[第一范例实施例]
传统上,快闪存储器存储装置的快闪存储器控制器配置有缓冲存储器,并且从主机系统接收到写入指令与多笔数据时,快闪存储器控制器会先将此些数据暂存于缓冲存储器,并根据此些数据计算相对应的同位信息。之后,快闪存储器控制器才会将上述的数据与同位信息从缓冲存储器中写入至快闪存储器的一实体抹除单元中。特别是,受限于缓冲存储器的可用资源,通常缓冲存储器中可用于计算同位信息的资源较少而无法同时产生较大量的同位信息。因此,实体抹除单元中通常只存有少量的同位信息可以用于侦错。例如,一实体抹除单元中只存有一笔同位信息可以用于对该实体抹除单元中的实体程序化单元进行错误更正。
需注意的是,虽然可以从主机系统的随机存取存储器中划分出部分的空间(在此称为,主机缓冲存储器空间)供快闪存储器存储装置使用以提升快闪存储器控制器可以使用的资源。然而,由于上述的主机缓冲存储器空间可能会被主机系统收回或移除,当主机缓冲存储器空间被移除时,可能会造成同位信息的计算或存储上的错误。其原因在于,当主机缓冲存储器空间被移除时,快闪存储器控制器并没有足够的资源(例如,缓冲存储器的空间)来产生数量等同于主机缓冲存储器空间未被移除时的同位信息。
为了避免上述情况发生,传统的方法仍是维持根据快闪存储器控制器中缓冲存储器的可用资源来产生对应数量的同位信息。然而,由于此方式产生的同位信息的数量较少,对于存储在实体抹除单元中的数据的保护程度也相对地较低。而本发明的第一范例实施例主要用于解决上述的问题。
图8A与图8B是根据本发明的第一范例实施例所显示的使用第一模式进行写入的示意图。
请同时参照图8A与图8B,假设主机系统11下达一写入指令(以下称为第一写入指令),并且对应于写入指令的第一数据可以分为子数据SDATA1、子数据SDATA2、子数据SDATA3与子数据SDATA4。此时,存储器管理电路502会根据可使用的缓冲存储器的空间,判断使用第一模式写入上述第一数据至可复写式非易失性存储器模块406或使用第二模式写入上述第一数据至可复写式非易失性存储器模块406。在此将子数据SDATA1与子数据SDATA2统称为“第一子数据”,将子数据SDATA3与子数据SDATA4统称为“第二子数据”。
在图8A与图8B的实施例中,假设主机系统11的随机存取存储器112中有划分出第一缓冲存储器710给存储器管理电路502使用。此时,存储器管理电路502可以使用第一模式来对第一数据进行写入。详细来说,存储器管理电路502例如可以先将子数据SDATA1暂存至第一缓冲存储器710中的暂存区701a,并且在第一缓冲存储器710中的暂存区701b中记录一同位信息P1(亦称为,第三同位信息)。在此假设先前并未有其他暂存在暂存区701b中的同位信息,故此时同位信息P1的値相同于子数据SDATA1的数值。之后,存储器管理电路502会选取一个实体抹除单元(例如,实体抹除单元610(A+1)),并且将子数据SDATA1从第一缓冲存储器710中写入至实体抹除单元610(A+1)(亦称为,第一实体抹除单元)的实体程序化单元701(0)中。
类似地,存储器管理电路502例如可以先将子数据SDATA2暂存至存储器控制电路单元404的缓冲存储器510(亦称为,第二缓冲存储器)中的暂存区501a,并且在缓冲存储器510中的暂存区501b中记录一同位信息P2(亦称为,第四同位信息)。在此假设先前并未有其他暂存在暂存区501b中的同位信息,故此时同位信息P2的値相同于子数据SDATA2的数值。之后,存储器管理电路502会将子数据SDATA2从缓冲存储器510中写入至实体抹除单元610(A+1)的实体程序化单元701(1)中。
类似地,存储器管理电路502例如可以将子数据SDATA3暂存至第一缓冲存储器710中的暂存区701a,并且更新暂存区701b中所记录的同位信息P1。例如,存储器管理电路502会使用子数据SDATA3的数値与暂存在暂存区701a中的同位信息P1的数值进行互斥或(XOR)运算以产生新的同位信息P1,并且将此新的同位信息P1暂存至暂存区701b中。之后,存储器管理电路502会将子数据SDATA3从第一缓冲存储器710中写入至实体抹除单元610(A+1)的实体程序化单元701(2)中。
类似地,存储器管理电路502例如可以将子数据SDATA4暂存至缓冲存储器510中的暂存区501a,并且更新暂存区501b中所记录的同位信息P2。例如,存储器管理电路502会使用子数据SDATA4的数値与暂存在暂存区501a中的同位信息P2的数值进行互斥或(XOR)运算以产生新的同位信息P2,并且将此新的同位信息P2暂存至暂存区501b中。之后,存储器管理电路502会将子数据SDATA4从缓冲存储器510中写入至实体抹除单元610(A+1)的实体程序化单元701(3)中。
之后,存储器管理电路502可以将第一缓冲存储器710中的同位信息P1写入至实体抹除单元610(A+1)的实体程序化单元701(4)中。存储器管理电路502可以将缓冲存储器510中的同位信息P2写入至实体抹除单元610(A+1)的实体程序化单元701(5)中。在此须说明的是,同位信息P1、P2可以统称为“第一同位信息”,且第一同位信息是用以校正使用第一模式写入的第一数据。然而在一实施例中,第一同位信息也可以是用以校正其他对应的数据。
此外,实体程序化单元701(0)、701(2)可以统称为“第一实体程序化单元”;实体程序化单元701(4)可以称为“第二实体程序化单元”;实体程序化单元701(1)、701(3)可以统称为“第三实体程序化单元”;实体程序化单元701(5)可以称为“第四实体程序化单元”。
此外,存储器管理电路502还会使用第一旗标标记此实体抹除单元610(A+1)以表示实体抹除单元610(A+1)是使用第一模式进行写入。之后当存储器管理电路502需再对实体抹除单元610(A+1)进行写入时,存储器管理电路502可以根据第一旗标得知实体抹除单元610(A+1)只能使用第一模式进行写入。例如,假设之后存储器管理电路502从主机系统接收到另一写入指令以及对应此写入指令的子数据SDATA5、子数据SDATA6、子数据SDATA7以及子数据SDATA8时,存储器管理电路502可以使用如上述写入子数据SDATA1、子数据SDATA2、子数据SDATA3以及子数据SDATA4,将子数据SDATA5、子数据SDATA6、子数据SDATA7以及子数据SDATA8使用第一模式分别写入至实体抹除单元610(A+1)的实体程序化单元701(6)~701(9)。存储器管理电路502也会根据子数据SDATA5以及子数据SDATA7产生同位信息P3并将同位信息P3写入至实体抹除单元610(A+1)的实体程序化单元701(10)。存储器管理电路502也会根据子数据SDATA6以及子数据SDATA8产生同位信息P4并将同位信息P4写入至实体抹除单元610(A+1)的实体程序化单元701(11)。
图9A与图9B是根据本发明的第一范例实施例所显示的使用第二模式进行写入的示意图。
请同时参照图9A与图9B,类似于图8A与图8B,假设主机系统11下达写入指令(以下称为第一写入指令),且对应第一写入指令的第一数据可以分为子数据SDATA1、子数据SDATA2、子数据SDATA3与子数据SDATA4。此时,存储器管理电路502会根据可使用的缓冲存储器的空间,判断使用第一模式写入上述的第一数据至可复写式非易失性存储器模块406或使用第二模式写入上述的第一数据至可复写式非易失性存储器模块406。
不同的是,在图9A与图9B的实施例中,假设主机系统11的随机存取存储器112中没有划分出第一缓冲存储器710给存储器管理电路502使用。此时,存储器管理电路502会使用第二模式来对第一数据进行写入。详细来说,存储器管理电路502例如可以先将子数据SDATA1暂存至缓冲存储器510中的暂存区501a,并且在缓冲存储器510中的暂存区501b中记录一同位信息P5(亦称为,第二同位信息),此第二同位信息是用以校正使用第二模式写入的第一数据。然而在一实施例中,第二同位信息也可以是用以校正其他对应的数据。
在此假设先前并未有其他暂存在暂存区501b中的同位信息,故此时同位信息P5的値相同于子数据SDATA1的数值。之后,存储器管理电路502会选取一个实体抹除单元(例如,实体抹除单元610(A+2)),并且将子数据SDATA1从缓冲存储器510中写入至实体抹除单元610(A+2)(亦称为,第二实体抹除单元)的实体程序化单元702(0)中。
类似地,存储器管理电路502例如可以将子数据SDATA2暂存至缓冲存储器510中的暂存区501a,并且更新暂存区501b中所记录的同位信息P5。例如,存储器管理电路502会使用子数据SDATA2的数値与暂存在暂存区501b中的同位信息P5的数值进行互斥或(XOR)运算以产生新的同位信息P5,并且将此新的同位信息P5暂存至暂存区501b中。之后,存储器管理电路502会将子数据SDATA2从缓冲存储器510中写入至实体抹除单元610(A+2)的实体程序化单元702(1)中。
类似地,存储器管理电路502例如可以将子数据SDATA3暂存至缓冲存储器510中的暂存区501a,并且更新暂存区501b中所记录的同位信息P5。例如,存储器管理电路502会使用子数据SDATA3的数値与暂存在暂存区501b中的同位信息P5的数值进行互斥或(XOR)运算以产生新的同位信息P5,并且将此新的同位信息P5暂存至暂存区501b中。之后,存储器管理电路502会将子数据SDATA3从缓冲存储器510中写入至实体抹除单元610(A+2)的实体程序化单元702(2)中。
类似地,存储器管理电路502例如可以将子数据SDATA4暂存至缓冲存储器510中的暂存区501a,并且更新暂存区501b中所记录的同位信息P5。例如,存储器管理电路502会使用子数据SDATA4的数値与暂存在暂存区501b中的同位信息P5的数值进行互斥或(XOR)运算以产生新的同位信息P5,并且将此新的同位信息P2暂存至暂存区501b中。之后,存储器管理电路502会将子数据SDATA4从缓冲存储器510中写入至实体抹除单元610(A+2)的实体程序化单元702(3)中。
之后,存储器管理电路502可以将缓冲存储器510中的同位信息P5写入至实体抹除单元610(A+2)的实体程序化单元702(4)中。在此须说明的是,实体程序化单元702(0)~702(3)可以统称为“第五实体程序化单元”;实体程序化单元702(4)可以称为“第六实体程序化单元”。
此外,存储器管理电路502还会使用一第二旗标标记此实体抹除单元610(A+2)以表示实体抹除单元610(A+2)是使用第二模式进行写入。之后当存储器管理电路502需再对实体抹除单元610(A+2)进行写入时,存储器管理电路502可以根据第二旗标得知实体抹除单元610(A+2)只能使用第二模式进行写入。例如,假设之后存储器管理电路502从主机系统接收到另一写入指令以及对应此写入指令的子数据SDATA5、子数据SDATA6、子数据SDATA7以及子数据SDATA8时,存储器管理电路502可以使用如上述写入子数据SDATA1、子数据SDATA2、子数据SDATA3、子数据SDATA4以及同位信息P5的方式,将子数据SDATA5、子数据SDATA6、子数据SDATA7以及子数据SDATA8使用第二模式分别写入至实体抹除单元610(A+2)的实体程序化单元702(5)~702(8)。存储器管理电路502也会根据子数据SDATA5、子数据SDATA6、子数据SDATA7以及子数据SDATA8产生同位信息P6并将同位信息P6写入至实体抹除单元610(A+2)的实体程序化单元702(9)。
特别是,由图8B与图9B的内容可知,使用第一模式写入第一数据时,可以存储较多关于第一数据的同位信息(即,同位信息P1、P2),而使用第二模式写入第一数据时,所存储的关于第一数据的同位信息(即,同位信息P5)较少。而通过使用上述第一旗标以及第二旗标的方式,可以让此两种数据存储模式共存,并且可以在使用第一模式的情况下,提高数据的保护能力。
图10是根据本发明的第一范例实施例所显示的数据存储方法的流程图。
请参照图10,在步骤S1001中,存储器管理电路502从主机系统11接收第一写入指令。在步骤S1003中,存储器管理电路502判断主机系统11的第一缓冲存储器是否可以使用。
当主机系统11的第一缓冲存储器可以使用时,在步骤S1005中,存储器管理电路502会将对应第一写入指令的第一数据中的第一子数据暂存至第一缓冲存储器中,产生对应第一子数据的第三同位信息并将第三同位信息暂存于第一缓冲存储器中。在步骤S1007中,存储器管理电路502会将第一数据中的第二子数据暂存至存储器存储装置10的第二缓冲存储器中,产生对应第二子数据的第四同位信息并将第四同位信息暂存于第二缓冲存储器中。在步骤S1009中,存储器管理电路502会将第一子数据以及第三同位信息分别从第一缓冲存储器写入至第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元。在步骤S1011中,存储器管理电路502会将第二子数据以及第四同位信息从第二缓冲存储器写入至第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元。在步骤S1013中,存储器管理电路502会使用第一旗标标记第一实体抹除单元以表示第一实体抹除单元是使用第一模式进行程序化。
特别是,上述步骤S1005至步骤S1013的写入模式可以统称为“第一模式”。
此外,当主机系统11的第一缓冲存储器不可以使用时,在步骤S1015中,存储器管理电路502会将对应第一写入指令的第一数据暂存至存储器存储装置10的第二缓冲存储器中,产生对应第一数据的第二同位信息并将第二同位信息暂存于第二缓冲存储器中。在步骤S1017中,存储器管理电路502会将第一数据以及第二同位信息从第二缓冲存储器分别写入至第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元。在步骤S1019中,存储器管理电路502会使用第二旗标标记第二实体抹除单元以表示第二实体抹除单元是使用第二模式进行程序化。
特别是,上述步骤S1015至步骤S1019的写入模式可以统称为“第二模式”。
在此须说明的是,在本发明的一实施例中,第一模式与第二模式也可以分别是根据不同的演算法产生用于校正一相对应数据的同位信息。例如,当缓冲存储器的空间足够时,可以在第一模式中使用运算较复杂且安全性较高的演算法来产生同位信息;相对地,当缓冲存储器的空间不足时,可以在第二模式中使用运算较简单且安全性较低的演算法来产生同位信息。而须注意的是,本发明并不用于限定第一模式中用于产生同位信息的演算法以及第二模式中用于产生同位信息的演算法。
基于上述,在第一实施例中,可以动态地根据可使用的缓冲存储器的空间大小来产生对应的同位信息。当缓冲存储器的空间足够时,可以使用第一模式根据写入数据写入较多的同位信息至实体抹除单元中,并使用一标记来标示此实体抹除单元是使用第一模式进行写入;当缓冲存储器的空间不足时,可以使用第二模式根据写入数据写入较少的同位信息至实体抹除单元中,并使用另一标记来标示此实体抹除单元是使用第二模式进行写入。藉此,可以根据可用的缓冲存储器空间调整同位信息的存储方式,并且可以提高存储在实体抹除单元中数据的保护程度。
[第二范例实施例]
图11A至图11C是根据本发明的第二范例实施例所显示的使用第一模式与第二模式进行写入的示意图。
请参照图11A至图11C,在本范例实施例中,假设可复写式非易失性存储器模块406是三维(Three-Dimension,3D)NAND型快闪存储器模块,可复写式非易失性存储器模块406中包括多个存储器子模块且此些存储器子模块包括多个字元线。在本范例实施例中,可复写式非易失性存储器模块406中的每一条字元线上的存储单元假设可形成四个实体程序化单元。如图11A所示,可复写式非易失性存储器模块406中例如可以包括属于上述多个存储器子模块中的一第一存储器子模块的字元线WL1(亦称为,第一字元线)以及属于上述多个存储器子模块中的一第二存储器子模块的字元线WL2(亦称为,第二字元线)。字元线WL1上的存储单元形成实体程序化单元P1(0)~P1(3),且字元线WL2上的存储单元形成实体程序化单元P2(0)~P2(3)。
需说明的是,在此假设存储器管理电路502要将一第一数据写入至字元线WL1以及字元线WL2上的实体程序化单元中。所述第一数据中包括多个子数据,此些子数据依序为子数据DATA0、子数据DATA1、子数据DATA2、子数据DATA3、子数据DATA4、子数据DATA5、子数据DATA6以及子数据DATA7。
假设存储器管理电路502从主机系统11接收到关于要写入上述第一数据的第一写入指令时,存储器管理电路502可以判断可用的缓冲存储器的状态,并根据可用的缓冲存储器状态决定使用第一模式来写入第一数据或使用第二模式来写入第二数据。缓冲存储器的状态已详述如前,故在此不再赘述。
当存储器管理电路502决定使用第一模式来写入第一数据时,存储器管理电路502可以直接从主机系统11接收完整的第一数据并将此第一数据暂存于存储器管理电路502可使用的缓冲存储器中(例如,主机11所提供的缓冲存储器与存储器存储装置10中的缓冲存储器504中),并且以下述的方式来进行数据平行的写入。
详细来说,当存储器管理电路502要对字元线WL1以及字元线WL2上的实体程序化单元进行平行地写入时,存储器管理电路502会直接地从暂存在缓冲存储器中的完整的第一数据挑选欲存储在字元线WL1上的实体程序化单元P1(0)以及实体程序化单元P1(1)的数据以及欲存储在字元线WL2上的实体程序化单元P2(0)以及实体程序化单元P2(1)的数据。
接着,请参照图11B,存储器管理电路502例如可以挑选第一数据中的子数据DATA0、子数据DATA1、子数据DATA4与子数据DATA5。其中,子数据DATA0与子数据DATA1可以统称为第三子数据,子数据DATA4与子数据DATA5可以统称为第四子数据。特别是,在第一数据中,上述的第三子数据以及第四子数据为不连续。须注意的是,子数据DATA0是将被写入至字元线WL1上的实体程序化单元P1(0)中的子数据,子数据DATA1是将被写入至字元线WL1上的实体程序化单元P1(1)中的子数据DATA1,子数据DATA4是将被写入至字元线WL2上的实体程序化单元P2(0)中的子数据,子数据DATA5是将被写入至字元线WL2上的实体程序化单元P2(1)中的子数据。
之后,存储器管理电路502可以依序将子数据DATA0以及子数据DATA1分别写入至实体程序化单元P1(0)以及实体程序化单元P1(1)。类似地,存储器管理电路502可以依序将子数据DATA4以及子数据DATA5分别写入至实体程序化单元P2(0)以及实体程序化单元P2(1)。其中,实体程序化单元P1(0)以及实体程序化单元P1(1)可以统称为第七实体程序化单元,实体程序化单元P2(0)以及实体程序化单元P2(1)可以统称为第八实体程序化单元。
之后,存储器管理电路502会再次地从暂存在缓冲存储器中的完整的第一数据挑选欲存储在字元线WL1上的实体程序化单元P1(2)以及实体程序化单元P1(3)的数据以及欲存储在字元线WL2上的实体程序化单元P2(2)以及实体程序化单元P2(3)的数据。
之后,请参照图11C,存储器管理电路502例如可以挑选第一数据中的子数据DATA2、子数据DATA3、子数据DATA6与子数据DATA7。须注意的是,子数据DATA2是将被写入至字元线WL1上的实体程序化单元P1(2)中的子数据,子数据DATA3是将被写入至字元线WL1上的实体程序化单元P1(3)中的子数据。子数据DATA6是将被写入至字元线WL2上的实体程序化单元P2(2)中的子数据,子数据DATA7是将被写入至字元线WL2上的实体程序化单元P2(3)中的子数据。
之后,存储器管理电路502可以依序将子数据DATA2以及子数据DATA3分别写入至实体程序化单元P1(2)以及实体程序化单元P1(3)。类似地,存储器管理电路502可以依序将子数据DATA6以及子数据DATA7分别写入至实体程序化单元P2(2)以及实体程序化单元P2(3)。藉此方式,可以完成以第一模式进行写入的操作。
然而,当欲使用第二模式进行写入时(例如,可使用的缓冲存储器不够或是主机系统10没有提供缓冲存储器空间供存储器管理电路502时),存储器管理电路502会改为使用传送数据请求指令的方式来请求在平行写入时所需的数据。
详细来说,当存储器管理电路502决定使用第二模式来写入第一数据时,存储器管理电路502可以传送第一数据请求指令至主机系统11以请求欲存储在字元线WL1上的实体程序化单元P1(0)以及实体程序化单元P1(1)的子数据DATA0与子数据DATA1,且第一数据请求指令还会向主机系统11请求欲存储在字元线WL2上的实体程序化单元P2(0)以及实体程序化单元P2(1)的子数据DATA6以及子数据DATA7。通过此方式,存储器管理电路502即可以不用暂存完整的第一数据。
在从主机系统11取得子数据DATA0、子数据DATA1、子数据DATA6与子数据DATA7后,存储器管理电路502可以根据类似图11B的方式依序将子数据DATA0以及子数据DATA1分别写入至实体程序化单元P1(0)以及实体程序化单元P1(1),以及依序将子数据DATA4以及子数据DATA5分别写入至实体程序化单元P2(0)以及实体程序化单元P2(1)。
之后,存储器管理电路502可以再传送另一数据请求指令至主机系统11以请求欲存储在字元线WL1上的实体程序化单元P1(2)以及实体程序化单元P1(3)的子数据DATA2与子数据DATA3,且此另一数据请求指令还会向主机系统11请求欲存储在字元线WL2上的实体程序化单元P2(2)以及实体程序化单元P2(3)的子数据DATA6以及子数据DATA7。
在从主机系统11取得子数据DATA2、子数据DATA3、子数据DATA6与子数据DATA7后,存储器管理电路502可以根据类似图11C的方式依序将子数据DATA2以及子数据DATA3分别写入至实体程序化单元P1(2)以及实体程序化单元P1(3),以及依序将子数据DATA6以及子数据DATA7分别写入至实体程序化单元P2(2)以及实体程序化单元P2(3)。
也就是说,在第二范例实施例中,当缓冲存储器不够使用时,可以使用第二模式的数据请求指令来向主机系统11请求所需的数据来进行平行写入,而不需如第一模式暂存所有的第一数据。
特别是,在经由上述的写入后,存储在字元线WL(1)中最末端的实体页面P1(2)~P1(3)的数据是会接续存储在字元线WL(2)中起始的实体页面P2(0)~P2(1)的数据。也就是说,在经由上述写入操作后,数据会依序地存储在字元线WL1与字元线WL2中。
然而需注意的是,本发明并不用于限制一字元线上的实体页面的数目。在其他实施例中,一条字元线可以包括更多或更少的实体页面。
图12是根据本发明的第二范例实施例所显示的数据存储方法的流程图。
请参照图12,在步骤S1201中,存储器管理电路502从主机系统11接收第一写入指令。在步骤S1203中,存储器管理电路502根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入所述第一数据。
当存储器管理电路502判断使用第一模式写入对应第一写入指令的第一数据时,在步骤S1205中,存储器管理电路502会将对应第一写入指令的第一数据暂存至存储器存储装置10的缓冲存储器510中。之后在步骤S1207中,存储器管理电路502会将第一数据中的第三子数据经由第一数据总线写入至第一字元线上的第七实体程序化单元。其中,所述第一字元线属于上述多个存储器子模块中的第一存储器子模块。最后在步骤1209中,存储器管理电路502会将第一数据中的第四子数据经由第二数据总线写入至第二字元线上的第八实体程序化单元。其中,所述第二字元线属于所述多个存储器子模块中的第二存储器子模块。
然而,当存储器管理电路502判断使用第二模式写入对应第一写入指令的第一数据时,在步骤S1211中,存储器管理电路502会传送第一数据请求指令至所述主机系统11。在步骤S1213中,存储器管理电路502会根据所述第一数据请求指令,从所述主机系统11取得上述的第三子数据以及上述的第四子数据。在步骤S1215中,存储器管理电路502会将第三子数据经由第一数据总线写入至第一字元线上的第七实体程序化单元。在步骤S1217中,存储器管理电路502会将第四子数据经由第二数据总线写入至第二字元线上的第八实体程序化单元。
须注意的是,在第一数据中,上述的第三子数据以及上述的第四子数据为不连续。
基于上述,在第二范例实施例中,可以动态地根据可使用的缓冲存储器的空间大小来决定是否暂存所有欲写入的数据,或者改为使用指令向主机系统11请求欲写入的数据中的部分数据,藉此达到平行写入的效果。
[第三范例实施例]
在第三范例实施例中,存储器管理电路502可以根据可用的缓冲存储器状态,判断是否将对应第一写入指令的第一数据写入至单一一个字元线或是分散写入多个字元线中。特别是,由于可复写式非易失性存储器本身的物理特性,当一数据皆被存储在单一字元线时,当在存取该数据时在解码的过程中发生失败的机率可能较高,因此可以考量可用的缓冲存储器状态,来决定将数据写入至单一一个字元线或是分散写入多个字元线中。
在第三范例实施例中,假设存储器管理电路502从主机系统11接收到关于要写入第一数据的第一写入指令时,存储器管理电路502可以判断可用的缓冲存储器的状态,并根据可用的缓冲存储器状态决定使用第一模式来写入第一数据或使用第二模式来写入第二数据。缓冲存储器的状态已详述如前,故在此不再赘述。此外,在此假设第三范例实施例中的第一数据包括一第五子数据以及一第六子数据。
当存储器管理电路502决定使用第一模式来写入第一数据时,存储器管理电路502将第一数据暂存至所述存储器存储装置的缓冲存储器504中。之后,存储器管理电路502会将第一数据中的第五子数据从缓冲存储器506中写入至多个字元线中的一字元线(亦称为,第三字元线)上的一实体程序化单元(亦称为,第九实体程序化单元)中。之后,存储器管理电路502会将第一数据中的第六子数据从缓冲存储器506中写入至所述多个字元线中一字元线(亦称为,第四字元线)上的一实体程序化单元(亦称为,第十实体程序化单元)。最后,存储器管理电路502会根据第五子数据以及第六子数据产生一用于错误检查或更正的同位信息(亦称为,第五同位信息),并将此第五同位信息存储至一实体程序化单元(亦称为,第十一实体程序化单元)中。
当存储器管理电路502决定使用第二模式来写入第一数据时,存储器管理电路502会按照主机系统11传送第五子数据以及第六子数据的顺序,依序将第五子数据以及第六子数据写入至多个字元线中的一字元线(亦称为,第五字元线)上的一实体程序化单元(亦称为,第十二实体程序化单元)与另一实体程序化单元(亦称为,第十三实体程序化单元)中。之后,存储器管理电路502会根据第五子数据以及第六子数据产生一用于错误检查或更正的同位信息(亦称为,第六同位信息),并将此第六同位信息存储至一实体程序化单元(亦称为,第十四实体程序化单元)中。也就是说,在本范例实施例中,当缓冲存储器的可用空间足够时,会使用第一模式以将写入指令的数据分散写入至多个不同的字元线中。然而,当缓冲存储器的可用空间不够时,会使用第二模式以将写入指令的数据写入至同一字元线中。而当数据分散写入至多个不同的字元线中时,之后在存取该数据时可以提高解码的成功机率。
图13是根据本发明的第三范例实施例所显示的数据存储方法的流程图。
请参照图13,在步骤S1301中,存储器管理电路502从主机系统11接收第一写入指令。在步骤S1303中,存储器管理电路502根据可使用的缓冲存储器状态,判断使用第一模式写入对应第一写入指令的第一数据或使用第二模式写入所述第一数据。
当存储器管理电路502判断使用第一模式写入对应第一写入指令的第一数据时,在步骤S1305中,存储器管理电路502将对应第一写入指令的第一数据暂存至存储器存储装置10的缓冲存储器510中。在步骤S1307中,存储器管理电路502将第一数据中的第五子数据写入至第三字元线上的第九实体程序化单元。在步骤S1309中,存储器管理电路502将第一数据中的第六子数据写入至第四字元线上的第十实体程序化单元。最后,在步骤S1311中,存储器管理电路502根据第五子数据以及第六子数据产生第五同位信息,并将第五同位信息存储至第十一实体程序化单元中。
当存储器管理电路502判断使用第二模式写入对应第一写入指令的第一数据时,在步骤S1313中,存储器管理电路502将第一数据中的第五子数据以及第六子数据分别写入至第五字元线上的第十二实体程序化单元以及第十三实体程序化单元。最后在步骤S1315中,存储器管理电路502根据第五子数据以及第六子数据产生第六同位信息,并将第六同位信息存储至一第十四实体程序化单元中。
基于上述,在第三范例实施例中,可以动态地根据可使用的缓冲存储器的空间大小来决定是否将数据写入至同一字元现中或是分散写入不同的字元线中,而当数据被分散写入不同的自元线时,可以提高该数据在存取时解码的成功机率。
综上所述,本发明提出的一种数据存储方法、存储器控制电路单元及存储器存储装置,可以动态地根据可使用的缓冲存储器状态来决定不同的数据写入方式。藉此提高存储器存储装置在使用上的弹性。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求书所界定的为准。

Claims (27)

1.一种数据存储方法,用于具有一可复写式非易失性存储器模块的存储器存储装置,其特征在于,所述可复写式非易失性存储器模块包括多个实体抹除单元,且所述多个实体抹除单元中的每一个实体抹除单元包括多个实体程序化单元,所述数据存储方法包括:
从主机系统接收第一写入指令;
根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据;
当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中;以及
当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的第二实体抹除单元中,
用以校正所述第一数据的第一同位信息包括第三同位信息以及第四同位信息,其中将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤包括:
将所述第一数据中的第一子数据暂存至所述主机系统的第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中;
将所述第一数据中的第二子数据暂存至所述存储器存储装置的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中;
将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元;
将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元;以及
使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
2.根据权利要求1所述的数据存储方法,其特征在于,使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤包括:
将所述第一数据以及用以校正所述第一数据的第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中,
其中使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤包括:
将所述第一数据以及用以校正第一数据的第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中,
其中所述第一同位信息的数量大于所述第二同位信息的数量。
3.根据权利要求2所述的数据存储方法,其特征在于,根据可使用的所述缓冲存储器状态,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的步骤包括:
判断所述主机系统的第一缓冲存储器是否可以使用;
当所述主机系统的所述第一缓冲存储器可以使用时,使用所述第一模式写入所述第一数据;以及
当所述主机系统的所述第一缓冲存储器不可以使用时,使用所述第二模式写入所述第一数据。
4.根据权利要求3所述的数据存储方法,其特征在于,将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤包括:
将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中;
将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元;以及
使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行写入。
5.根据权利要求2所述的数据存储方法,其特征在于,将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
6.根据权利要求2所述的数据存储方法,其特征在于,将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤之后,所述第二实体抹除单元仅能使用所述第二模式进行程序化。
7.根据权利要求1所述的数据存储方法,其特征在于,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正一相对应数据的一同位信息。
8.根据权利要求1所述的数据存储方法,其特征在于,所述可复写式非易失性存储器模块包括分别电性连接至存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤包括:
将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中;
将所述第一数据中的第三子数据经由第一数据总线写入至所述多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于所述多个存储器子模块中的第一存储器子模块;以及
将所述第一数据中的第四子数据经由第二数据总线写入至所述多个字元线中第二字元线上的第八实体程序化单元,所述第二字元线属于所述多个存储器子模块中的第二存储器子模块,
其中使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤包括:
传送至少一第一数据请求指令至所述主机系统;
根据所述第一数据请求指令,从所述主机系统取得所述第三子数据以及所述第四子数据;
将所述第三子数据经由所述第一数据总线写入至所述多个字元线中所述第一字元线上的所述第七实体程序化单元;以及
将所述第四子数据经由所述第二数据总线写入至所述多个字元线中所述第二字元线上的所述第八实体程序化单元,
其中在所述第一数据中所述第三子数据以及所述第四子数据为不连续。
9.根据权利要求1所述的数据存储方法,其特征在于,所述可复写式非易失性存储器模块包括多个字元线,其中使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的步骤包括:
将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中;
将所述第一数据中的第五子数据写入至所述多个字元线中第三字元线上的第九实体程序化单元;
将所述第一数据中的第六子数据写入至所述多个字元线中第四字元线上的第十实体程序化单元;以及
根据所述第五子数据以及所述第六子数据产生第五同位信息,并将所述第五同位信息存储至第十一实体程序化单元中,
其中使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的步骤包括:
将所述第一数据中的所述第五子数据以及所述第六子数据分别写入至所述多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元;以及
根据所述第五子数据以及所述第六子数据产生第六同位信息,并将所述第六同位信息存储至第十四实体程序化单元中。
10.一种存储器控制电路单元,用于控制可复写式非易失性存储器模块,其特征在于,所述可复写式非易失性存储器模块包括多个实体抹除单元,且所述多个实体抹除单元之中的每一个实体程序化单元包括多个实体程序化单元,所述存储器控制电路单元包括:
主机接口,用以电性连接至主机系统;
存储器接口,用以电性连接至所述可复写式非易失性存储器模块;
存储器管理电路,电性连接至所述主机接口以及所述存储器接口,
其中所述存储器管理电路用以从该主机系统接收第一写入指令,
其中所述存储器管理电路更用以根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据,
当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,所述存储器管理电路更用以使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中,
当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,所述存储器管理电路更用以使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的第二实体抹除单元中,
其中用以校正所述第一数据的第一同位信息包括第三同位信息以及第四同位信息,其中在将所述第一数据写入至所述多个实体抹除单元之中的所述第一实体抹除单元中的运作中,
所述存储器管理电路更用以将所述第一数据中的第一子数据暂存至所述主机系统的第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中,
所述存储器管理电路更用以将所述第一数据中的第二子数据暂存至所述存储器控制电路单元的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中,
所述存储器管理电路更用以将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元,
所述存储器管理电路更用以将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元,以及
所述存储器管理电路更用以使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
11.根据权利要求10所述的存储器控制电路单元,其特征在于,在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器管理电路将所述第一数据以及用以校正所述第一数据的第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器管理电路将所述第一数据以及用以校正所述第一数据的第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中,
其中所述第一同位信息的数量大于所述第二同位信息的数量。
12.根据权利要求11所述的存储器控制电路单元,其特征在于,在根据可使用的所述缓冲存储器状态,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的运作中,
所述存储器管理电路更用以判断所述主机系统的第一缓冲存储器是否可以使用,
当所述主机系统的所述第一缓冲存储器可以使用时,所述存储器管理电路使用所述第一模式写入所述第一数据,以及
当所述主机系统的该第一缓冲存储器不可以使用时,所述存储器管理电路使用所述第二模式写入所述第一数据。
13.根据权利要求12所述的存储器控制电路单元,其特征在于,在将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元之中的该第二实体抹除单元中的运作中,
所述存储器管理电路更用以将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中,
所述存储器管理电路更用以将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元,以及
所述存储器管理电路更用以使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行程序化。
14.根据权利要求11所述的存储器控制电路单元,其特征在于,在将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元之中的所述第一实体抹除单元中的运作之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
15.根据权利要求11所述的存储器控制电路单元,其特征在于,在将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元之中的该第二实体抹除单元中的运作之后,所述第二实体抹除单元仅能使用所述第二模式进行程序化。
16.根据权利要求10所述的存储器控制电路单元,其特征在于,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正相对应数据的同位信息。
17.根据权利要求10所述的存储器控制电路单元,其特征在于,所述可复写式非易失性存储器模块包括分别电性连接至该存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器管理电路将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中,
所述存储器管理电路将所述第一数据中的第三子数据经由第一数据总线写入至所述多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于所述多个存储器子模块中的第一存储器子模块,以及
所述存储器管理电路将所述第一数据中的第四子数据经由第二数据总线写入至所述多个字元线中第二字元线上的第八实体程序化单元,所述第二字元线属于所述多个存储器子模块中的第二存储器子模块,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器管理电路传送至少一第一数据请求指令至所述主机系统,
所述存储器管理电路根据所述第一数据请求指令,从所述主机系统取得所述第三子数据以及所述第四子数据,
所述存储器管理电路将所述第三子数据经由所述第一数据总线写入至所述多个字元线中所述第一字元线上的所述第七实体程序化单元,以及
所述存储器管理电路将所述第四子数据经由所述第二数据总线写入至所述多个字元线中所述第二字元线上的所述第八实体程序化单元,
其中在所述第一数据中所述第三子数据以及所述第四子数据为不连续。
18.根据权利要求10所述的存储器控制电路单元,其特征在于,所述可复写式非易失性存储器模块包括多个字元线,其中在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器管理电路将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中,
所述存储器管理电路将所述第一数据中的第五子数据写入至所述多个字元线中第三字元线上的第九实体程序化单元,
所述存储器管理电路将所述第一数据中的第六子数据写入至所述多个字元线中第四字元线上的第十实体程序化单元,以及
所述存储器管理电路根据所述第五子数据以及所述第六子数据产生第五同位信息,并将所述第五同位信息存储至第十一实体程序化单元中,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器管理电路将所述第一数据中的所述第五子数据以及所述第六子数据分别写入至所述多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元,以及
所述存储器管理电路根据所述第五子数据以及所述第六子数据产生第六同位信息,并将所述第六同位信息存储至第十四实体程序化单元中。
19.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以电性连接至主机系统;
可复写式非易失性存储器模块,包括多个实体抹除单元,且所述多个实体抹除单元之中的每一个实体抹除单元包括多个实体程序化单元;以及
存储器控制电路单元,电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以从所述主机系统接收第一写入指令,
其中所述存储器控制电路单元更用以根据可使用的缓冲存储器状态,判断使用第一模式写入对应所述第一写入指令的第一数据或使用第二模式写入所述第一数据,
当根据可使用的所述缓冲存储器状态判断使用所述第一模式写入所述第一数据时,所述存储器控制电路单元更用以使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的第一实体抹除单元中,
当根据可使用的所述缓冲存储器状态判断使用所述第二模式写入所述第一数据时,所述存储器控制电路单元更用以使用所述第二模式将所述第一数据写入至所述多个实体抹除单元之中的第二实体抹除单元中,
其中用以校正所述第一数据的第一同位信息包括第三同位信息以及第四同位信息,其中在将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器控制电路单元更用以将所述第一数据中的第一子数据暂存至所述主机系统的第一缓冲存储器中,产生对应所述第一子数据的所述第三同位信息并将所述第三同位信息暂存于所述第一缓冲存储器中,
所述存储器控制电路单元更用以将所述第一数据中的第二子数据暂存至所述存储器存储装置的第二缓冲存储器中,产生对应所述第二子数据的所述第四同位信息并将所述第四同位信息暂存于所述第二缓冲存储器中,
所述存储器控制电路单元更用以将所述第一子数据以及所述第三同位信息分别从所述第一缓冲存储器写入至所述第一实体抹除单元中的第一实体程序化单元以及第二实体程序化单元,
所述存储器控制电路单元更用以将所述第二子数据以及所述第四同位信息从所述第二缓冲存储器写入至所述第一实体抹除单元中的第三实体程序化单元以及第四实体程序化单元,以及
所述存储器控制电路单元更用以使用第一旗标标记所述第一实体抹除单元以表示所述第一实体抹除单元是使用所述第一模式进行程序化。
20.根据权利要求19所述的存储器存储装置,其特征在于,在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器控制电路单元将所述第一数据以及用以校正所述第一数据的第一同位信息写入至所述多个实体抹除单元中的所述第一实体抹除单元中,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器控制电路单元将所述第一数据以及用以校正所述第一数据的第二同位信息写入至所述多个实体抹除单元中的所述第二实体抹除单元中,
其中所述第一同位信息的数量大于所述第二同位信息的数量。
21.根据权利要求20所述的存储器存储装置,其特征在于,在根据可使用的所述缓冲存储器状态,判断使用所述第一模式写入所述第一数据或使用所述第二模式写入所述第一数据的运作中,
所述存储器控制电路单元更用以判断所述主机系统的第一缓冲存储器是否可以使用,
当所述主机系统的所述第一缓冲存储器可以使用时,所述存储器控制电路单元使用所述第一模式写入所述第一数据,以及
当所述主机系统的所述第一缓冲存储器不可以使用时,所述存储器控制电路单元更用以使用所述第二模式写入所述第一数据。
22.根据权利要求21所述的存储器存储装置,其特征在于,在将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元之中的所述第二实体抹除单元中的运作中,
所述存储器控制电路单元更用以将所述第一数据暂存至所述存储器存储装置的所述第二缓冲存储器中,产生对应所述第一数据的所述第二同位信息并将所述第二同位信息暂存于所述第二缓冲存储器中,
所述存储器控制电路单元更用以将所述第一数据以及所述第二同位信息从所述第二缓冲存储器分别写入至所述第二实体抹除单元中的第五实体程序化单元以及第六实体程序化单元,以及
所述存储器控制电路单元更用以使用第二旗标标记所述第二实体抹除单元以表示所述第二实体抹除单元是使用所述第二模式进行程序化。
23.根据权利要求20所述的存储器存储装置,其特征在于,在将所述第一数据以及对应所述第一数据的所述第一同位信息写入至所述多个实体抹除单元之中的所述第一实体抹除单元中的运作之后,所述第一实体抹除单元仅能使用所述第一模式进行程序化。
24.根据权利要求20所述的存储器存储装置,其特征在于,在将所述第一数据以及对应所述第一数据的所述第二同位信息写入至所述多个实体抹除单元之中的该第二实体抹除单元中的运作之后,所述第二实体抹除单元仅能使用所述第二模式进行程序化。
25.根据权利要求19所述的存储器存储装置,其特征在于,所述第一模式与所述第二模式分别根据不同的演算法产生用于校正相对应数据的同位信息。
26.根据权利要求19所述的存储器存储装置,其特征在于,所述可复写式非易失性存储器模块包括分别电性连接至该存储器控制电路单元的多个存储器子模块,所述多个存储器子模块包括多个字元线,其中在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器控制电路单元将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中,
所述存储器控制电路单元将所述第一数据中的第三子数据经由第一数据总线写入至所述多个字元线中第一字元线上的第七实体程序化单元,所述第一字元线属于所述多个存储器子模块中的第一存储器子模块,以及
所述存储器控制电路单元将所述第一数据中的第四子数据经由第二数据总线写入至所述多个字元线中第二字元线上的第八实体程序化单元,所述第二字元线属于所述多个存储器子模块中的第二存储器子模块,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器控制电路单元传送至少一第一数据请求指令至所述主机系统,
所述存储器控制电路单元根据所述第一数据请求指令,从所述主机系统取得所述第三子数据以及所述第四子数据,
所述存储器控制电路单元将所述第三子数据经由所述第一数据总线写入至所述多个字元线中所述第一字元线上的所述第七实体程序化单元,以及
所述存储器控制电路单元将所述第四子数据经由所述第二数据总线写入至所述多个字元线中所述第二字元线上的所述第八实体程序化单元,
其中在所述第一数据中所述第三子数据以及所述第四子数据为不连续。
27.根据权利要求19所述的存储器存储装置,其特征在于,所述可复写式非易失性存储器模块包括多个字元线,其中在使用所述第一模式将所述第一数据写入至所述多个实体抹除单元中的所述第一实体抹除单元中的运作中,
所述存储器控制电路单元将对应所述第一写入指令的所述第一数据暂存至所述存储器存储装置的第二缓冲存储器中,
所述存储器控制电路单元将所述第一数据中的第五子数据写入至所述多个字元线中第三字元线上的第九实体程序化单元,
所述存储器控制电路单元将所述第一数据中的第六子数据写入至所述多个字元线中第四字元线上的第十实体程序化单元,以及
所述存储器控制电路单元根据所述第五子数据以及所述第六子数据产生第五同位信息,并将所述第五同位信息存储至第十一实体程序化单元中,
其中在使用所述第二模式将所述第一数据写入至所述多个实体抹除单元中的所述第二实体抹除单元中的运作中,
所述存储器控制电路单元将所述第一数据中的所述第五子数据以及所述第六子数据分别写入至所述多个字元线中第五字元线上的第十二实体程序化单元以及第十三实体程序化单元,以及
所述存储器控制电路单元根据所述第五子数据以及所述第六子数据产生第六同位信息,并将所述第六同位信息存储至第十四实体程序化单元中。
CN201710794230.3A 2017-09-06 2017-09-06 数据存储方法、存储器控制电路单元及存储器存储装置 Active CN109460372B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710794230.3A CN109460372B (zh) 2017-09-06 2017-09-06 数据存储方法、存储器控制电路单元及存储器存储装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710794230.3A CN109460372B (zh) 2017-09-06 2017-09-06 数据存储方法、存储器控制电路单元及存储器存储装置

Publications (2)

Publication Number Publication Date
CN109460372A CN109460372A (zh) 2019-03-12
CN109460372B true CN109460372B (zh) 2022-11-22

Family

ID=65605925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710794230.3A Active CN109460372B (zh) 2017-09-06 2017-09-06 数据存储方法、存储器控制电路单元及存储器存储装置

Country Status (1)

Country Link
CN (1) CN109460372B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201428491A (zh) * 2006-12-08 2014-07-16 Lsi Corp 在多個儲存裝置中提供資料冗餘之系統、方法及電腦程式產品
CN103984635A (zh) * 2013-02-08 2014-08-13 群联电子股份有限公司 数据写入方法、存储器控制器与存储器储存装置
CN104252317A (zh) * 2013-06-26 2014-12-31 群联电子股份有限公司 数据写入方法、存储器控制器与存储器存储装置
US9613705B1 (en) * 2015-11-27 2017-04-04 Phison Electronics Corp. Method for managing programming mode of rewritable non-volatile memory module, and memory storage device and memory control circuit unit using the same

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102108839B1 (ko) * 2013-06-12 2020-05-29 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 사용자 장치 및 그것의 데이터 쓰기 방법
US9348695B2 (en) * 2014-05-21 2016-05-24 Sandisk Technologies Inc. System and method of storing redundancy data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201428491A (zh) * 2006-12-08 2014-07-16 Lsi Corp 在多個儲存裝置中提供資料冗餘之系統、方法及電腦程式產品
CN103984635A (zh) * 2013-02-08 2014-08-13 群联电子股份有限公司 数据写入方法、存储器控制器与存储器储存装置
CN104252317A (zh) * 2013-06-26 2014-12-31 群联电子股份有限公司 数据写入方法、存储器控制器与存储器存储装置
US9613705B1 (en) * 2015-11-27 2017-04-04 Phison Electronics Corp. Method for managing programming mode of rewritable non-volatile memory module, and memory storage device and memory control circuit unit using the same

Also Published As

Publication number Publication date
CN109460372A (zh) 2019-03-12

Similar Documents

Publication Publication Date Title
CN109491588B (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
CN111880749A (zh) 数据读取方法、存储器存储装置及存储器控制电路单元
CN113885808B (zh) 映射信息记录方法以及存储器控制电路单元与存储装置
CN109273033B (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
TWI658402B (zh) 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置
TWI648675B (zh) 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置
CN111208932B (zh) 映射表更新方法、存储器控制电路单元与存储器存储装置
CN109032957B (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
CN113140253B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN113724774A (zh) 解码方法、存储器存储装置及存储器控制电路单元
CN109460372B (zh) 数据存储方法、存储器控制电路单元及存储器存储装置
CN110874282B (zh) 数据存取方法、存储器控制电路单元与存储器存储装置
CN109308930B (zh) 数据写入方法、存储器控制电路单元及存储器存储装置
CN109710450B (zh) 数据编码方法、存储器控制电路单元与存储器存储装置
CN109508252B (zh) 数据编码方法、存储器控制电路单元与存储器存储装置
CN111610937A (zh) 数据写入方法、存储器存储装置及存储器控制电路单元
CN111143253A (zh) 数据储存方法、存储器控制电路单元以及存储器储存装置
CN112445417A (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN112445416B (zh) 冷区域判断方法、存储器控制电路单元与存储器存储装置
CN113419683B (zh) 存储器存取方法、存储器存储装置及存储器控制电路单元
CN114527941B (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
TWI771079B (zh) 記憶體存取方法、記憶體儲存裝置及記憶體控制電路單元
TWI777519B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
CN113434331B (zh) 跨框编码管理方法、存储器存储装置及存储器控制电路
TWI763310B (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