CN104765569A - 数据写入方法、存储器控制电路单元与存储器储存装置 - Google Patents
数据写入方法、存储器控制电路单元与存储器储存装置 Download PDFInfo
- Publication number
- CN104765569A CN104765569A CN201410008756.0A CN201410008756A CN104765569A CN 104765569 A CN104765569 A CN 104765569A CN 201410008756 A CN201410008756 A CN 201410008756A CN 104765569 A CN104765569 A CN 104765569A
- Authority
- CN
- China
- Prior art keywords
- erased cell
- entity erased
- temporary
- transient area
- those
- 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
Landscapes
- Read Only Memory (AREA)
Abstract
本发明提出一种数据写入方法、存储器控制电路单元与存储器储存装置。本方法包括将实体抹除单元至少分割为暂驻存储区与闲置区。本方法还包括动态地从暂驻存储区或闲置区的实体抹除单元之中提取多个实体抹除单元作为对应一逻辑单元的暂存实体抹除单元组;及仅以单页模式使用此些暂存实体抹除单元来写入欲储存至此逻辑单元的更新数据。基此,本方法可有效地避免因为暂驻存储区的实体抹除单元老化且被继续使用作为数据暂存所导致的数据错误并可提升写入数据的速度与可靠度。
Description
技术领域
本发明是有关于一种数据写入方法,且特别是有关于用于可复写式非易失性存储器模块的数据写入方法、存储器控制电路单元与存储器储存装置。
背景技术
数字相机、手机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非易失性存储器(rewritable non-volatilememory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,最适于便携式电子产品,例如笔记本电脑。固态硬盘就是一种以快闪存储器作为储存媒体的存储器储存装置。因此,近年快闪存储器产业成为电子产业中相当热门的一环。
依据每个存储单元可储存的比特数,与非(NAND)型快闪存储器可区分为单阶储存单元(Single Level Cell,简称SLC)NAND型快闪存储器、多阶储存单元(Multi Level Cell,简称MLC)NAND型快闪存储器与三阶储存单元(Trinary Level Cell,简称TLC)NAND型快闪存储器,其中SLC NAND型快闪存储器的每个存储单元可储存1个比特的数据(即,“1”与“0”),MLC NAND型快闪存储器的每个存储单元可储存2个比特的数据并且TLCNAND型快闪存储器的每个存储单元可储存3个比特的数据。
在NAND型快闪存储器中,实体程序化单元是由排列在同一条字线上的数个存储单元所组成。由于SLC NAND型快闪存储器的每个存储单元可储存1个比特的数据,因此,在SLC NAND型快闪存储器中,排列在同一条字线上的数个存储单元是对应一个实体程序化单元。
相对于SLC NAND型快闪存储器来说,MLC NAND型快闪存储器的每个存储单元的浮动门储存层可储存2个比特的数据,其中每一个储存状态(即,“11”、“10”、“01”与“00”)包括最低有效比特(Least Significant Bit,简称LSB)以及最高有效比特(Most Significant Bit,简称MSB)。例如,储存状态中从左侧算起的第1个比特的值为LSB,而从左侧算起的第2个比特的值为MSB。因此,排列在同一条字线上的数个存储单元可组成2个实体程序化单元,其中由此些存储单元的LSB所组成的实体程序化单元称为下实体程序化单元(low physical programming unit),并且由此些存储单元的MSB所组成的实体程序化单元称为上实体程序化单元(upper physical programmingunit)。特别是,下实体程序化单元的写入速度会快于上实体程序化单元的写入速度,并且当程序化上实体程序化单元发生错误时,下实体程序化单元所储存的数据也可能因此遗失。
类似地,在TLC NAND型快闪存储器中,每个存储单元可储存3个比特的数据,其中每一个储存状态(即,“111”、“110”、“101”、“100”、“011”、“010”、“001”与“000”)包括每一个储存状态包括左侧算起的第1个比特的LSB、从左侧算起的第2个比特的中间有效比特(Center Significant Bit,简称CSB)以及从左侧算起的第3个比特的MSB。因此,排列在同一条字线上的数个存储单元可组成3个实体程序化单元,其中由此些存储单元的LSB所组成的实体程序化单元称为下实体单元,由此些存储单元的CSB所组成的实体程序化单元称为中实体程序化单元,并且由此些存储单元的MSB所组成的实体程序化单元称为上实体程序化单元。特别是,对排列在同一条字线上的数个存储单元进行程序化时,仅能选择仅程序化下实体程序化单元或者同时下实体单元、中实体程序化单元与上实体程序化单元,否则所储存的数据可能会遗失。
一般而言,使用TLC NAND型快闪存储器的存储器模块,会将其中的部分实体抹除单元分组为使用只操作于下实体程序化单元的一单页模式来模拟SLC NAND型快闪存储器的运作,藉此也提高了寿命(抹除次数上限),也因为只操作于下实体程序化单元,写入、读取速度也增进许多。而此模拟SLCNAND型快闪存储器操作模式的部分实体抹除单元,会被使用于作为存储器模块的缓冲区,用来暂存数据,或是用来储存系统数据。但,若是大量使用此缓冲区来做数据暂存,会使此缓冲区的实体抹除单元抹除次数快速增加导致老化,而使之后暂存其中的数据容易发生不可恢复的数据错误。
基于上述,如何避免因为此缓冲区的实体抹除单元老化所导致的数据错误,以及提升每一存储单元可储存多个比特的快闪存储器的可靠度与效能是此领域技术人员所致力的目标。
发明内容
本发明提供一种数据写入方法、存储器控制电路单元及存储器储存装置,其能够有效地延长存储器储存装置的寿命。
本发明的一范例实施例提出一种数据写入方法,用于可复写式非易失性存储器模块,其中可复写式非易失性存储器模块具有多个实体抹除单元。本数据写入方法包括:将这些实体抹除单元至少分组为闲置区与暂驻存储区;接收第一数据,其中第一数据欲被储存至第一逻辑单元的多个逻辑子单元中;根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元;使用单页模式将第一数据写入至第一暂存实体抹除单元组的这些暂存实体抹除单元;以及从闲置区中的这些实体抹除单元中提取第一实体抹除单元,从第一暂存实体抹除单元组的这些暂存实体抹除单元中将第一数据复制至第一实体抹除单元中并且将第一逻辑单元映射至第一实体抹除单元,其中这些第一数据会被写入至第一实体抹除单元的每个实体程序单元组的下实体程序化单元与上实体程序化单元中并且第一实体抹除单元的每个实体程序化单元组的下实体程序化单元与上实体程序化单元会同时被程序化。
在本发明的一范例实施例中,上述根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤包括:判断暂驻存储区的实体抹除单元的平均抹除次数是否小于第一预设门槛值;以及倘若暂驻存储区的实体抹除单元的平均抹除次数小于第一预设门槛值时,仅从暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元。
在本发明的一范例实施例中,上述根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:判断暂驻存储区的实体抹除单元的平均抹除次数是否大于第二预设门槛值;以及倘若暂驻存储区的实体抹除单元的平均抹除次数大于第二预设门槛值时,仅从闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元。
在本发明的一范例实施例中,上述根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:倘若暂驻存储区的实体抹除单元的平均抹除次数介于第一预设门槛值与第二预设门槛值之间时,从暂驻存储区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的一部分且从闲置区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的另一部分。
在本发明的一范例实施例中,上述根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:根据暂驻存储区的实体抹除单元的平均抹除次数计算暂驻存储区提取比率;建立随机乱数模块,其中随机乱数模块是由多个第一数值与多个第二数值所组成并且这些第一数值的数目与这些第二数值的数目的比率相同于暂驻存储区提取比率;从随机乱数模块中的这些第一数值与这些第二数值之中随机取得数值,并且判断此数值是否属于这些第一数值的其中之一;倘若此数值属于这些第一数值的其中之一时,则从暂驻存储区的实体抹除单元之中提取一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之一;以及倘若数值不属于这些第一数值的其中之一时,则从闲置区的实体抹除单元之中提取一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之另一。
在本发明的一范例实施例中,上述闲置区的这些实体抹除单元和暂驻存储区的这些实体抹除单元是彼此独立地被操作。
在本发明的一范例实施例中,在第一数据复制至第一实体抹除单元之后,作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元会被关联回该暂驻存储区,并且作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元会被关联回该闲置区。
在本发明的一范例实施例中,上述仅从暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的步骤包括:从暂驻存储区的这些实体抹除单元之中提取3个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第一暂存实体抹除单元、第二暂存实体抹除单元与第三暂存实体抹除单元。
在本发明的一范例实施例中,上述仅从闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的步骤包括:从闲置区的这些实体抹除单元之中提取3个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第一暂存实体抹除单元、第二暂存实体抹除单元与第三暂存实体抹除单元。
在本发明的一范例实施例中,上述从暂驻存储区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的一部分且从闲置区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的另一部分的步骤包括:从暂驻存储区的这些实体抹除单元之中提取1个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第一暂存实体抹除单元;以及从闲置区的这些实体抹除单元之中提取2个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第二暂存实体抹除单元与第三暂存实体抹除单元。
在本发明的一范例实施例中,上述从暂驻存储区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的一部分且从闲置区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的另一部分的步骤包括:从暂驻存储区的这些实体抹除单元之中提取2个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第一暂存实体抹除单元与第二暂存实体抹除单元;以及从闲置区的这些实体抹除单元之中提取1个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的第三暂存实体抹除单元。
本发明一范例实施例提供一种存储器控制电路单元,用于控制可复写式非易失性存储器模块,其中可复写式非易失性存储器模块具有多个实体抹除单元。此存储器控制电路单元包括:用以电性连接至主机系统的主机接口;用以电性连接至可复写式非易失性存储器模块的存储器接口;以及电性连接至主机接口与存储器接口的存储器管理电路。存储器管理电路用以将此些实体抹除单元至少分组为闲置区与暂驻存储区,并且从主机系统中接收第一数据,其中主机系统指示将第一数据储存至第一逻辑单元的多个逻辑子单元中。此外,存储器管理电路还用以根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元。再者,存储器管理电路还使用单页模式将第一数据写入至第一暂存实体抹除单元组的这些暂存实体抹除单元。另外,存储器管理电路还用以从闲置区中的这些实体抹除单元中提取第一实体抹除单元,从第一暂存实体抹除单元组的这些暂存实体抹除单元中将第一数据合并至第一实体抹除单元中并且将第一逻辑单元映射至第一实体抹除单元,其中这些第一数据会被写入至第一实体抹除单元的每个实体程序化单元组的下实体程序化单元与上实体程序化单元中并且第一实体抹除单元的每个实体程序化单元组的下实体程序化单元与上实体程序化单元会同时被程序化。
在本发明的一范例实施例中,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,存储器管理电路还用以判断暂驻存储区的实体抹除单元的平均抹除次数是否大于第二预设门槛值,其中倘若暂驻存储区的实体抹除单元的平均抹除次数大于第二预设门槛值时,存储器管理电路仅从闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元。
在本发明的一范例实施例中,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,倘若暂驻存储区的实体抹除单元的平均抹除次数介于第一预设门槛值与第二预设门槛值之间时,存储器管理电路从暂驻存储区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的一部分且从闲置区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的另一部分。
在本发明的一范例实施例中,上述存储器管理电路还用以根据暂驻存储区的实体抹除单元的平均抹除次数计算暂驻存储区提取比率,并且设定随机乱数模块,其中随机乱数模块是由多个第一数值与多个第二数值所组成并且这些第一数值的数目与这些第二数值的数目的比率相同于暂驻存储区提取比率。并且,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,存储器管理电路从随机乱数模块中的这些第一数值与这些第二数值之中随机取得数值,并且判断数值是否属于这些第一数值的其中之一。倘若数值属于这些第一数值的其中之一时,存储器管理电路从暂驻存储区的实体抹除单元之中提取实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之一;并且倘若数值不属于这些第一数值的其中之一时,存储器管理电路从闲置区的实体抹除单元之中提取实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之另一。
在本发明的一范例实施例中,在第一数据复制至第一实体抹除单元之后,上述存储器管理电路还将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元关联回该暂驻存储区,并且该存储器管理电路也将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元关联回该闲置区。
本发明的一范例实施例提供一种存储器储存装置,其包括:用以电性连接至主机系统的连接接口单元、可复写式非易失性存储器模块与存储器控制电路单元。可复写式非易失性存储器模块具有多个实体抹除单元。存储器控制电路单元电性连接至连接接口单元与可复写式非易失性存储器模块,并且用以将这些实体抹除单元至少分组为闲置区与暂驻存储区。存储器控制电路单元还用以从主机系统中接收第一数据,其中主机系统指示将第一数据储存至第一逻辑单元的多个逻辑子单元中。此外,存储器控制电路单元还用以根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的多个暂存实体抹除单元。另外,存储器控制电路单元还使用单页模式将第一数据写入至第一暂存实体抹除单元组的这些暂存实体抹除单元。再者,存储器控制电路单元还用以从闲置区中的这些实体抹除单元中提取第一实体抹除单元,从第一暂存实体抹除单元组的这些暂存实体抹除单元中将第一数据合并至第一实体抹除单元中并且将第一逻辑单元映射至第一实体抹除单元,其中这些第一数据会被写入至第一实体抹除单元的每个实体程序化单元组的下实体程序化单元与上实体程序化单元中并且第一实体抹除单元的每个实体程序化单元组的下实体程序化单元与上实体程序化单元会同时被程序化。
在本发明的一范例实施例中,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,存储器控制电路单元还用以判断暂驻存储区的实体抹除单元的平均抹除次数是否大于第二预设门槛值,其中倘若暂驻存储区的实体抹除单元的平均抹除次数大于第二预设门槛值时,存储器控制电路单元仅从闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元。
在本发明的一范例实施例中,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,倘若暂驻存储区的实体抹除单元的平均抹除次数介于第一预设门槛值与第二预设门槛值之间时,存储器控制电路单元从暂驻存储区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的一部分且从闲置区的实体抹除单元之中提取至少一个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的另一部分。
在本发明的一范例实施例中,上述存储器控制电路单元还用以根据暂驻存储区的实体抹除单元的平均抹除次数计算暂驻存储区提取比率,并且设定随机乱数模块,其中随机乱数模块是由多个第一数值与多个第二数值所组成并且这些第一数值的数目与这些第二数值的数目的比率相同于暂驻存储区提取比率。并且,在根据暂驻存储区的实体抹除单元的平均抹除次数,从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的运作中,存储器控制电路单元从随机乱数模块中的这些第一数值与这些第二数值之中随机取得数值,并且判断数值是否属于这些第一数值的其中之一,其中倘若数值属于这些第一数值的其中之一时,存储器控制电路单元从暂驻存储区的实体抹除单元之中提取实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之一,其中倘若数值不属于这些第一数值的其中之一时,存储器控制电路单元从闲置区的实体抹除单元之中提取实体抹除单元作为对应第一逻辑单元的第一暂存实体抹除单元组的这些暂存实体抹除单元的其中之另一。
在本发明的一范例实施例中,在第一数据复制至第一实体抹除单元之后,上述存储器控制电路单元还将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元关联回该暂驻存储区并且该存储器控制电路单元也将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元关联回该闲置区。
基于上述,本发明的数据写入方法、存储器控制电路单元及存储器储存装置可以根据暂驻存储区的实体抹除单元的平均抹除次数,动态地从暂驻存储区、或闲置区、或者暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应一逻辑单元的暂存实体抹除单元组的多个暂存实体抹除单元,如此一来可以避免暂驻存储区的实体抹除单元因为使用次数过大所导致储存其中的数据错误,从而增进可储存多个比特的快闪存储器的可靠度与效能。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1A是根据本发明范例实施例所示出的主机系统与存储器储存装置的示意图;
图1B是根据本发明范例实施例所示出的电脑、输入/输出装置与存储器储存装置的示意图;
图1C是根据本发明范例实施例所示出的主机系统与存储器储存装置的示意图;
图2是示出图1A所示的存储器储存装置的概要方块图;
图3A与图3B是根据本范例时实施例所示出的存储单元储存架构与实体抹除单元的范例示意图;
图4是根据一范例实施例所示出的存储器控制电路单元的概要方块图;
图5与图6是根据一范例实施例所示出的管理实体抹除单元的范例示意图;
图7是根据一范例所示出的数据暂存的示意图;
图8是根据一范例所示出的数据合并程序的示意图;
图9A为根据第一范例所示出的数据暂存的范例示意图;
图9B为根据第一范例所示出的数据合并的范例示意图;
图9C为根据第一范例所示出的数据暂存的另一范例示意图;
图9D为根据第一范例所示出的数据合并的另一范例示意图;
图9E为根据第一范例所示出的数据暂存的另一范例示意图;
图9F为根据第一范例所示出的数据合并的另一范例示意图;
图9G为根据第一范例所示出的数据暂存的另一范例示意图;
图9H为根据第一范例所示出的数据合并的另一范例示意图;
图10为根据第二范例所示出的随机乱数模块的范例示意图;
图11为根据本发明的一范例实施例所示出的写入数据的流程图;
图12为根据本发明的另一范例实施例所示出的写入数据的流程图。
附图标记说明:
1000:主机系统;
1100:电脑;
1102:微处理器;
1104:随机存取存储器;
1106:输入/输出装置;
1108:系统总线;
1110:数据传输接口;
1202:鼠标;
1204:键盘;
1206:显示器;
1208:打印机;
1212:移动硬盘;
1214:记忆卡;
1216:固态硬盘;
1310:数字相机;
1312:SD卡;
1314:MMC卡;
1316:记忆棒;
1318:CF卡;
1320:嵌入式储存装置;
100:存储器储存装置;
102:连接接口单元;
104:存储器控制电路单元;
106:可复写式非易失性存储器模块;
302:存储器管理电路;
304:主机接口;
306:存储器接口;
308:缓冲存储器;
310:电源管理电路;
312:错误检查与校正电路;
502:数据区;
504:闲置区;
506:暂驻存储区;
508:取代区;
510(0)~510(N):实体抹除单元;
510(S+1):取自暂驻存储区作为第一暂存实体抹除单元组的第一暂存实体抹除单元的实体抹除单元;
510(S+2):取自暂驻存储区作为第一暂存实体抹除单元组的第二暂存实体抹除单元的实体抹除单元;
510(S+3):取自暂驻存储区作为第一暂存实体抹除单元组的第三暂存实体抹除单元的实体抹除单元;
510(F+4):取自闲置区作为第一暂存实体抹除单元组的第一暂存实体抹除单元的实体抹除单元;
510(F+2):取自闲置区作为第一暂存实体抹除单元组的第二暂存实体抹除单元的实体抹除单元;
510(F+3):取自闲置区作为第一暂存实体抹除单元组的第三暂存实体抹除单元的实体抹除单元;
510(F+1):第一实体抹除单元;
530:随机乱数模块;
532:第一数值;
534:第二数值;
LBA(0):第一逻辑单元;
S1101、S1103、S1105、S1107、S1109、S1111、S1113:写入数据的步骤;
S1201、S1203、S1205、S1207:写入数据的步骤。
具体实施方式
图1A是根据本发明范例实施例所示出的主机系统与存储器储存装置的示意图。
请参照图1A,主机系统1000一般包括电脑1100与输入/输出(input/output,简称I/O)装置1106。电脑1100包括微处理器1102、随机存取存储器(random access memory,简称RAM)1104、系统总线1108与数据传输接口1110。输入/输出装置1106包括如图1B的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图1B是根据本发明范例实施例所示出的电脑、输入/输出装置与存储器储存装置的示意图。图1B所示的装置非限制输入/输出装置1106,输入/输出装置1106还可包括其他装置。
在本发明实施例中,存储器储存装置100是通过数据传输接口1110与主机系统1000的其他元件电性连接。通过微处理器1102、随机存取存储器1104与输入/输出装置1106的运作可将数据写入至存储器储存装置100或从存储器储存装置100中读取数据。例如,存储器储存装置100可以是如图1B所示的移动硬盘1212、记忆卡1214或固态硬盘(Solid State Drive,简称SSD)1216等的可复写式非易失性存储器储存装置。
一般而言,主机系统1000为可实质地与存储器储存装置100配合以储存数据的任意系统。虽然在本范例实施例中,主机系统1000是以电脑系统来做说明,然而,在本发明另一范例实施例中主机系统1000可以是数字相机、摄像机、通信装置、音频播放器或视频播放器等系统。例如,图1C是根据本发明范例实施例所示出的主机系统与存储器储存装置的示意图。在主机系统为图1C中的数字相机(摄像机)1310时,可复写式非易失性存储器储存装置则为其所使用的SD卡1312、MMC卡1314、记忆棒(memory stick)1316、CF卡1318或嵌入式储存装置1320(如图1C所示)。嵌入式储存装置1320包括嵌入式多媒体卡(Embedded MMC,简称eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机系统的基板上。
图2是示出图1A所示的存储器储存装置的概要方块图。
请参照图2,存储器储存装置100包括连接接口单元102、存储器控制电路单元104与可复写式非易失性存储器模块106。
在本范例实施例中,连接接口单元102是相容于安全数字(Secure Digital,简称SD)接口标准。然而,必须了解的是,本发明不限于此,连接接口单元102也可以是符合并行先进附件(Parallel Advanced Technology Attachment,简称PATA)标准、电气和电子工程师协会(Institute of Electrical and ElectronicEngineers,简称IEEE)1394标准、高速周边零件连接接口(PeripheralComponent Interconnect Express,简称PCI Express)标准、通用串行总线(Universal Serial Bus,简称USB)标准、超高速一代(Ultra High Speed-I,简称UHS-I)接口标准、超高速二代(Ultra High Speed-II,简称UHS-II)接口标准、串行先进附件(Serial Advanced Technology Attachment,简称SATA)标准、记忆棒(Memory Stick,简称MS)接口标准、多媒体储存卡(Multi MediaCard,简称MMC)接口标准、小型快闪(Compact Flash,简称CF)接口标准、整合式驱动电子接口(Integrated Device Electronics,简称IDE)标准或其他适合的标准。在本范例实施例中,连接接口单元102可与存储器控制电路单元104封装在一个芯片中,或布设于一包含存储器控制电路单元104的芯片外。
存储器控制电路单元104用以执行以硬件形式或固件形式实作的多个逻辑闸或控制指令,并且根据主机系统1000的指令在可复写式非易失性存储器模块106中进行数据的写入、读取、抹除与合并等运作。
可复写式非易失性存储器模块106是电性连接至存储器控制电路单元104,并且用以储存主机系统1000所写入的数据。可复写式非易失性存储器模块106具有实体抹除单元510(0)~510(N)。例如,实体抹除单元510(0)~510(N)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有复数个实体程序化单元,例如本发明的范例实施例中,每一个实体抹除单元包含258个实体程序化单元,而其中属于同一个实体抹除单元的实体程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其他任意个实体程序化单元所组成。
更详细来说,实体抹除单元为抹除的最小单位。也即,每一实体抹除单元含有最小数目之一并被抹除的存储单元。实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。每一实体程序化单元通常包括数据比特区与冗余比特区。数据比特区包含多个实体存取地址用以储存使用者的数据,而冗余比特区用以储存系统的数据(例如,控制信息与错误更正码)。在本范例实施例中,每一个实体程序化单元的数据比特区中会包含4个实体存取地址,且一个实体存取地址的大小为512字节(byte)。然而,在其他范例实施例中,数据比特区中也可包含数目更多或更少的实体存取地址,本发明并不限制实体存取地址的大小以及个数。
在本发明的范例实施例中,可复写式非易失性存储器模块106为复数阶存储单元(Trinary Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可储存3个比特数据的快闪存储器模块)。然而,本发明不限于此,可复写式非易失性存储器模块106也可是多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可储存2个比特数据的快闪存储器模块)、其他快闪存储器模块或其他具有相同特性的存储器模块。
图3A与图3B是根据本范例时实施例所示出的存储单元储存架构与实体抹除单元的范例示意图。
请参照图3A,可复写式非易失性存储器模块106的每个存储单元的储存状态可被识别为“111”、“110”、“101”、“100”、“011”、“010”、“001”或“000”(如图3A所示),其中左侧算起的第1个比特为LSB、从左侧算起的第2个比特为CSB以及从左侧算起的第3个比特为MSB。此外,排列在同一条字线上的数个存储单元可组成3个实体程序化单元,其中由此些存储单元的LSB所组成的实体程序化单元称为下实体程序化单元,由此些存储单元的CSB所组成的实体程序化单元称为中实体程序化单元,并且由此些存储单元的MSB所组成的实体程序化单元称为上实体程序化单元。
请参照图3B,一个实体抹除单元是由多个实体程序化单元组所组成,其中每个实体程序化单元组包括由排列在同一条字线上的数个存储单元所组成的下实体程序化单元、中实体程序化单元与上实体程序化单元。例如,在实体抹除单元中,属于下实体程序化单元的第0个实体程序化单元、属于中实体程序化单元的第1个实体程序化单元和属于上实体程序化单元的第2个实体程序化单元会被视为一个实体程序化单元组。类似地,第3、4、5个实体程序化单元会被视为一个实体程序化单元组,并且以此类推其他实体程序化单元也是依据此方式被区分为多个实体程序化单元组。
图4是根据一范例实施例所示出的存储器控制电路单元的概要方块图。必须了解的是,图4所示出的存储器控制电路单元仅为一个范例,本发明不限于此。
请参照图4,存储器控制电路单元104包括存储器管理电路302、主机接口304、存储器接口306、缓冲存储器308、电源管理电路310、错误检查与校正电路312。
存储器管理电路302用以控制存储器控制电路单元104的整体运作。具体来说,存储器管理电路302具有多个控制指令,并且在存储器储存装置100运作时,此些控制指令会被执行以进行数据的写入、读取、抹除与合并等运作。
在本发明的范例实施例中,存储器管理电路302的控制指令是以固件形式来实作。例如,存储器管理电路302具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器储存装置100运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取、抹除与合并等运作。
在本发明另一范例实施例中,存储器管理电路302的控制指令也可以程序码形式储存于可复写式非易失性存储器模块106的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路302具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元104被致能时,微处理器单元会先执行此驱动码段来将储存于可复写式非易失性存储器模块106中的控制指令载入至存储器管理电路302的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取、抹除与合并等运作。
此外,在本发明另一范例实施例中,存储器管理电路302的控制指令也可以一硬件形式来实作。例如,存储器管理电路302包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。其中,存储单元管理电路用以管理可复写式非易失性存储器模块106的实体抹除单元;存储器写入电路用以对可复写式非易失性存储器模块106下达写入指令以将数据写入至可复写式非易失性存储器模块106中;存储器读取电路用以对可复写式非易失性存储器模块106下达读取指令以从可复写式非易失性存储器模块106中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块106下达抹除指令以将数据从可复写式非易失性存储器模块106中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块106的数据以及从可复写式非易失性存储器模块106中读取的数据。
主机接口304是电性连接至存储器管理电路302并且用以接收与识别主机系统1000所传送的指令与数据。也就是说,主机系统1000所传送的指令与数据会通过主机接口304来传送至存储器管理电路302。在本范例实施例中,主机接口304是相容于SD标准。然而,必须了解的是本发明不限于此,主机接口304也可以是相容于PATA标准、IEEE1394标准、PCI Express标准、USB标准、UHS-I接口标准、UHS-II接口标准、SATA标准、MS标准、MMC标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口306是电性连接至存储器管理电路302并且用以存取可复写式非易失性存储器模块106。也就是说,欲写入至可复写式非易失性存储器模块106的数据会经由存储器接口306转换为可复写式非易失性存储器模块106所能接受的格式。
在本发明一范例实施例中,存储器控制电路单元104还包括缓冲存储器308、电源管理电路310与错误检查与校正电路312。
缓冲存储器308是电性连接至存储器管理电路302并且用以暂存来自于主机系统1000的数据与指令或来自于可复写式非易失性存储器模块106的数据。
电源管理电路310是电性连接至存储器管理电路302并且用以控制存储器储存装置100的电源。
错误检查与校正电路312是电性连接至存储器管理电路302并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路302从主机系统1000中接收到写入指令时,错误检查与校正电路312会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking andCorrecting Code,简称ECC Code),并且存储器管理电路302会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块106中。之后,当存储器管理电路302从可复写式非易失性存储器模块106中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路312会依据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
在本范例实施例中,可复写式非易失性存储器模块至少被分组为暂驻存储区与闲置区。例如,于本发明的范例实施例中,分组于暂驻存储区或闲置区的实体抹除单元数量于出厂时便已设定完毕,而在其他实施例中,每区所含的实体抹除单元数量,也可以经由固件或是软件来设定。
图5与图6是根据一范例实施例所示出的管理实体抹除单元的范例示意图。
请参照图5,可复写式非易失性存储器模块106具有实体抹除单元510(0)~510(N),并且存储器控制电路单元104(或存储器管理电路302)会逻辑地分割(partition)为数据区502、闲置区504、暂驻存储区506与取代区508。
逻辑上属于数据区502与闲置区504的实体抹除单元是用以储存来自于主机系统1000的数据。具体来说,数据区502的实体抹除单元是被视为已储存数据的实体抹除单元,而闲置区504的实体抹除单元是用以替换数据区502的实体抹除单元。也就是说,当从主机系统1000接收到写入指令与欲写入的数据时,存储器控制电路单元104(或存储器管理电路302)会从闲置区504中提取实体抹除单元,并且将数据写入至所提取的实体抹除单元中,以替换数据区502的实体抹除单元。
逻辑上属于暂驻存储区506的实体抹除单元是用以记录系统数据。例如,系统数据包括逻辑转实体地址映射表、关于可复写式非易失性存储器模块的制造商与型号、可复写式非易失性存储器模块的实体抹除单元数、每一实体抹除单元的实体程序化单元数等。特别是,在本范例实施例中,暂驻存储区506除了可以用了储存一些系统数据之外,还可作为对应逻辑单元的暂存实体抹除单元组中暂存实体抹除单元,以暂存主机系统1000所写入的数据。详细的暂存数据的方法以及步骤,将配合图示说明如后。
逻辑上属于取代区508中的实体抹除单元是用于坏实体抹除单元取代程序,以取代损坏的实体抹除单元。具体来说,倘若取代区508中仍存有正常的实体抹除单元并且数据区502的实体抹除单元损坏时,存储器管理电路302会从取代区508中提取正常的实体抹除单元来更换损坏的实体抹除单元。
特别是,数据区502、闲置区504、暂驻存储区506与取代区508的实体抹除单元的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储器储存装置100的运作中,实体抹除单元关联至数据区502、闲置区504、暂驻存储区506与取代区508的分组关系会动态地变动。例如,当闲置区504中的实体抹除单元损坏而被取代区508的实体抹除单元取代时,则原本取代区508的实体抹除单元会被关联至闲置区504。
请参照图6,存储器控制电路单元104(或存储器管理电路302)会配置逻辑单元LBA(0)~LBA(H)以映射数据区502的实体抹除单元,其中每一逻辑单元具有多个逻辑子单元以映射对应的实体抹除单元的实体程序化单元。并且,当主机系统100欲写入数据至逻辑单元或更新储存于逻辑单元中的数据时,存储器控制电路单元104(或存储器管理电路302)会从闲置区504中提取一个实体抹除单元来写入数据,以轮替数据区502的实体抹除单元。在本范例实施例中,逻辑子单元可以是逻辑页面或逻辑扇区。
为了识别数据每个逻辑单元的数据被储存在哪个实体抹除单元,在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)会记录逻辑单元与实体抹除单元之间的映射。并且,当主机系统1000欲在逻辑子单元中存取数据时,存储器控制电路单元104(或存储器管理电路302)会确认此逻辑子单元所属的逻辑单元,并且在此逻辑单元所映射的实体抹除单元中来存取数据。例如,在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)会在可复写式非易失性存储器模块106中储存逻辑转实体地址映射表来记录每一逻辑单元所映射的实体抹除单元,并且当欲存取数据时存储器控制电路单元104(或存储器管理电路302)会将逻辑转实体地址映射表载入至缓冲存储器308来维护。
值得一提的是,由于缓冲存储器308的容量有限无法储存记录所有逻辑单元的映射关系的映射表,因此,在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)会将逻辑单元LBA(0)~LBA(H)分组为多个逻辑区域LZ(0)~LZ(M),并且为每一逻辑区域配置一个逻辑转实体地址映射表。特别是,当存储器控制电路单元104(或存储器管理电路202)欲更新某个逻辑单元的映射时,对应此逻辑单元所属的逻辑区域的逻辑转实体地址映射表会被载入至缓冲存储器308来被更新。
在本发明的范例实施例中,当从主机系统1000接收到指示将数据(以下称为第一数据)储存至逻辑单元(以下称为第一逻辑单元)的写入指令时,存储器控制电路单元104(或存储器管理电路302)会从闲置区504或暂驻存储区506中提取数个实体抹除单元作为对应第一逻辑单元的暂存实体抹除单元组(以下称为第一暂存实体抹除单元组)的暂存实体抹除单元,并且使用单页模式先将第一数据暂存至暂存实体抹除单元的下实体程序化单元。之后,存储器控制电路单元104(或存储器管理电路302)才使用多页模式将暂存实体抹除单元组中的数据写入至对应的实体抹除单元并且将此第一逻辑单元映射至此对应的实体抹除单元。
在此,所谓单页模式是指,仅使用下实体程序化单元来储存数据。也就是说,在单页模式中,存储器控制电路单元104(或存储器管理电路302)仅会对下实体程序化单元进行数据的写入运作。由于暂存实体抹除单元是用单页模式来被操作,因此,在本范例实施例中,一个暂存实体抹除单元仅有三分之一的容量会被使用且对应一个逻辑单元的暂存实体抹除单元组会包含3个暂存实体抹除单元以提供足够的空间来储存一个逻辑单元的数据。在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)是使用单页模式来操作暂驻存储区506的实体抹除单元,或是使用单页模式来操作暂存实体抹除单元组中的暂存实体抹除单元。
所谓多页模式是指使用下实体程序化单元、中实体程序化单元与上实体程序化单元来储存数据。也就是说,当使用多页模式来写入数据时,存储器控制电路单元104(或存储器管理电路302)会对一个实体程序化单元组的下实体程序化单元、中实体程序化单元与上实体程序化单元执行程序化。值得一提的,在一范例实施例中,使用多页模式来操作实体抹除单元时,同一个实体程序化单元组的实体程序化单元会同时地或阶段性地被程序化。再者,相较于以单页模式来操作的实体抹除单元,以多页模式来操作的实体抹除单元的使用寿命较短。具体来说,每个实体抹除单元能够被写入或抹除的次数是有限的,当一个实体抹除单元被写入的次数超过一个临界值时,此实体抹除单元可能就会损坏而无法再被写入数据,其中对应以多页模式来操作的实体抹除单元的临界值会低于对应以单页模式来操作的实体抹除单元的临界值。在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)是使用多页模式来操作关联至数据区502的实体抹除单元。
在本范例实施例中,当一个实体抹除单元被划分至暂驻存储区506后,此实体抹除单元将仅能用于暂驻存储区506,而不会与闲置区504与数据区502的实体抹除单元混用。也就是说,存储器控制电路单元104(或存储器管理电路302)会独立地操作暂驻存储区506与闲置区504的实体抹除单元。例如,当一个实体抹除单元被划分至暂驻存储区506后,存储器控制电路单元104(或存储器管理电路302)会以单页模式于暂驻存储区506中操作此实体抹除单元,直到此实体抹除单元损坏为止。
图7是根据一范例所示出的数据暂存的示意图。
请参照图7,当存储器储存装置100从主机系统1000中接收到指示将更新数据储存至逻辑单元LBA(0)的第0~257个逻辑子单元的写入指令时,假设于本范例实施例中,存储器控制电路单元104(或存储器管理电路302)仅从暂驻存储区506中提取3个实体抹除单元510(S+1)、510(S+2)、510(S+3)分别作为对应逻辑单元LBA(0)的暂存实体抹除单元组的第一暂存实体抹除单元、第二暂存实体抹除单元、第三暂存实体抹除单元,存储器控制电路单元104(或存储器管理电路302)会使用此对应逻辑单元LBA(0)的暂存实体抹除单元组的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(S+2)、第三暂存实体抹除单元510(S+3)来写入属于逻辑单元LBA(0)的更新数据。
例如,存储器控制电路单元104(或存储器管理电路302)会将欲储存至逻辑单元LBA(0)的第0~85个逻辑子单元的更新数据(也称为第一部分数据)依序地写入至第一暂存实体抹除单元510(S+1)的下实体程序化单元、将欲储存至逻辑单元LBA(0)的第86~171个逻辑子单元的更新数据(也称为第二部分数据)依序地写入至第二暂存实体抹除单元510(S+2)的下实体程序化单元以及将欲储存至逻辑单元LBA(0)的第172~257个逻辑子单元的更新数据(也称为第三部分数据)依序地写入至第三暂存实体抹除单元510(S+3)的下实体程序化单元中。值得一提的是,当连续地写入大量数据时,上述依据第一暂存实体抹除单元、第二暂存实体抹除单元与第三暂存实体抹除单元的页面顺序来写入数据可利用快取程序化(cache programming)指令以有效地提升写入数据的速度。在另一范例实施例中,存储器控制电路单元104(或存储器管理电路302)会将欲储存至逻辑单元LBA(0)的各个逻辑子单元的更新数据经过再整理或排列后,再同时写入至第一暂存实体抹除单元510(S+1)的下实体程序化单元、第二暂存实体抹除单元510(S+2)的下实体程序化单元以及第三暂存实体抹除单元510(S+3)的下实体程序化单元中。
在本范例实施例中,当将主机系统1000欲储存的更新数据写入至对应逻辑单元LBA(0)的暂存实体抹除单元组的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(S+2)、第三暂存实体抹除单元510(S+3)后,存储器控制电路单元104(或存储器管理电路302)就会传送通知已完成指令的回复(Response)给主机系统1000。并且,之后,当存储器储存装置100属于闲置状态一段时间(例如,30秒未从主机系统1000中接收到任何指令)或者暂驻存储区506以及闲置区504空的实体抹除单元的数目小于预设门槛值时,存储器控制电路单元104(或存储器管理电路302)才会从对应逻辑单元的暂存实体抹除单元组中将属于此逻辑单元的有效数据合并至一个空的实体抹除单元并且将此逻辑单元映射至此实体抹除单元。例如,预设门槛值会被设定为3。然而,必须了解的是,本发明不限于此,预设门槛值也可以是其他适当的数值。在此,从对应一逻辑单元的暂存实体抹除单元组中将属于此逻辑单元的有效数据复制至数据区502的对应此逻辑单元的一实体抹除单元的运作称为数据合并运作。
图8是根据一范例所示出的数据合并程序的示意图。
假设对应逻辑单元LBA(0)的暂存实体抹除单元组的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(S+2)、第三暂存实体抹除单元510(S+3)已储存逻辑单元LBA(0)的所有逻辑子单元的有效数据(如图7所示)并且存储器管理电路302选择对逻辑单元LBA(0)进行数据合并运作。
首先,如同图8所示出,存储器控制电路单元104(或存储器管理电路302)会从闲置区504中提取一个实体抹除单元作为当作用于轮替的实体抹除单元510(F+1)(以下也称为第一实体抹除单元510(F+1))。具体来说,存储器控制电路单元104(或存储器管理电路302)会从闲置区504中选择一个空的实体抹除单元或者所储存的数据为无效数据的实体抹除单元。特别是,倘若所提取的实体抹除单元是储存无效数据的实体抹除单元时,存储器控制电路单元104(或存储器管理电路302)会先对此实体抹除单元执行抹除运作。也就是说,实体抹除单元上的无效数据必须先被抹除。
之后,请参照图8,存储器控制电路单元104(或存储器管理电路302)会从第一暂存实体抹除单元510(S+1)的下实体程序化单元中将属于逻辑单元LBA(0)的第0~85逻辑子单元的有效数据复制至第一实体抹除单元510(F+1)的对应页面(例如,第0~85实体程序化单元)。接着,存储器控制电路单元104(或存储器管理电路302)会从第二暂存实体抹除单元510(S+2)的下实体程序化单元中将属于逻辑单元LBA(0)的第86~171逻辑子单元的有效数据复制至第一实体抹除单元510(F+1)的对应页面(例如,第86~171实体程序化单元)。然后,存储器控制电路单元104(或存储器管理电路302)会从第三暂存实体抹除单元510(S+3)的下实体程序化单元中将属于逻辑单元LBA(0)的第172~257逻辑子单元的有效数据复制至第一实体抹除单元510(F+1)的对应页面(例如,第172~257实体程序化单元)。
值得一提的是,如上所述,欲被关联至数据区502的实体抹除单元是以多页模式来操作,因此,写入至第一实体抹除单元510(F+1)是以实体程序化单元组为单位来同时或阶段性地程序化。具体来说,在一范例实施例中,第一实体抹除单元510(F+1)的第0、1、2个实体程序化单元会同时地被程序化以写入属于逻辑单元LBA(0)的第0、1、2个逻辑子单元的数据;第一实体抹除单元510(F+1)的第3、4、5个实体程序化单元会同时地被程序化以写入属于逻辑单元LBA(0)的第3、4、5个逻辑子单元的数据;并且以此类推其他逻辑子单元的数据皆是以实体程序化单元组为单位被写入至第一实体抹除单元510(F+1)中。
最后,存储器控制电路单元104(或存储器管理电路302)会在逻辑转实体地址映射表中将逻辑单元LBA(0)映射至第一实体抹除单元510(F+1)并且将对应逻辑单元的暂存实体抹除单元组的暂存实体抹除单元510(S+1)~510(S+3)执行抹除运作。也就是说,在执行下一个写入指令时,已被抹除的暂存实体抹除单元510(S+1)~510(S+3)就可再被选择作为欲写入的逻辑单元的暂存实体抹除单元。
如上所述,当接收到写入指令时,存储器控制电路单元104(或存储器管理电路302)会从闲置区504或暂驻存储区506中提取数个实体抹除单元作为对应第一逻辑单元的暂存实体抹除单元组的暂存实体抹除单元来暂存数据。特别是,在本发明的范例实施例中,存储器控制电路单元104(或存储器管理电路302)会计算位于暂驻存储区506的实体抹除单元的平均抹除次数,并且会与出厂预设的一个或多个预设门槛值做比较,以决定从暂驻存储区506或是从闲置区504中取实体抹除单元来作为对应一个逻辑单元的暂存实体抹除单元组中的暂存实体抹除单元。以下将以数个范例实施例来说明本发明的根据暂驻存储区的实体抹除单元的平均抹除次数,动态地仅从暂驻存储区、或仅从闲置区、或者从暂驻存储区及闲置区的实体抹除单元之中提取多个实体抹除单元作为对应一逻辑单元的暂存实体抹除单元组的多个暂存实体抹除单元且将数据写入暂存实体抹除单元组的数据写入方法。
[第一范例]
图9A为根据第一范例所示出的数据暂存的范例示意图。
请参照图9A,存储器控制电路单元104(或存储器管理电路302)会接收到欲存入第一逻辑单元的第一数据。为了便于说明,在此,第一数据大小为一个实体抹除单元大小,而必须了解的是,于其他实施例中,此第一数据大小也可为多个实体抹除单元大小或小于一个实体抹除单元大小,本发明不限于此。而于第一范例实施例中,存储器控制电路单元104(或存储器管理电路302)设定了三个数值大于零的预设门槛值,而其大小关系是第二预设门槛值大于第三预设门槛值,第三预设门槛值大于第一预设门槛值,而必须了解的是,本范例实施例的门槛值的设定与比较,仅用于说明本发明的概念,并不用于限制本发明。
在接收到第一数据之后,存储器控制电路单元104(或存储器管理电路302)会先决定对应此第一逻辑单元的第一暂存实体抹除单元组中的三个暂存实体抹除单元。倘若暂驻存储区506的实体抹除单元的平均抹除次数小于或等于第一预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会提取暂驻存储区506的3个实体抹除单元,作为此第一暂存实体抹除单元组中的3个暂存实体抹除单元(例如,图9A、9B中的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(S+2)以及第三暂存实体抹除单元510(S+3)(斜线方格),并将第一数据写入于此3个暂存实体抹除单元中(即,图9A所示的“数据暂存”运作)。特别是,如上所述,存储器控制电路单元104(或存储器管理电路302)是使用单页模式来操作暂存实体抹除单元的写入,因此,第一数据会只被写入到此3个暂存实体抹除单元的下实体程序化单元中。
图9B为根据第一范例所示出的数据合并的范例示意图。
请参照图9B,存储器控制电路单元104(或存储器管理电路302)会从闲置区504取一个第一实体抹除单元510(F+1)。之后,存储器控制电路单元104(或存储器管理电路302)会依照上述第一数据写入至第一暂存实体抹除单元组中的3个暂存实体抹除单元的顺序,依序从此3个暂存实体抹除单元的下实体程序化单元中读取第一数据,并将读出的第一数据合并且同时写入到第一实体抹除单元510(F+1)的上、中、下实体程序化单元中(即,此为图9B所示的“数据合并”运作)。之后,存储器控制电路单元104(或存储器管理电路302)会将此第一数据所属的第一逻辑单元映射至第一实体抹除单元510(F+1)(即,将第一实体抹除单元510(F+1)关联至数据区)。
图9C为根据第一范例所示出的数据暂存的另一范例示意图。
请参照图9C,倘若暂驻存储区506的实体抹除单元的平均抹除次数小于或等于一第三预设门槛值但大于第一预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会提取暂驻存储区506的2个实体抹除单元和闲置区504的1个实体抹除单元,作为此第一暂存实体抹除单元组中的3个暂存实体抹除单元(例如,图9C、9D中的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(S+2)以及第三暂存实体抹除单元510(F+3)),并将第一数据暂存于此3个暂存实体抹除单元中。
图9D为根据第一范例所示出的数据合并的另一示意图。
请参照图9D,存储器控制电路单元104(或存储器管理电路302)会从闲置区504取一个第一实体抹除单元510(F+1)。之后,存储器控制电路单元104(或存储器管理电路302)会依照上述第一数据写入至第一暂存实体抹除单元组中的3个暂存实体抹除单元的顺序,从此3个暂存实体抹除单元的下实体程序化单元中读取第一数据,并将读出的第一数据合并且同时写入到成为数据区的第一实体抹除单元510(F+1)的上、中、下实体程序化单元中。之后,存储器控制电路单元104(或存储器管理电路302)会将此第一数据所属的第一逻辑单元映射至第一实体抹除单元510(F+1)。
图9E为根据第一范例所示出的数据暂存的另一范例示意图。
请参照图9E,倘若暂驻存储区506的实体抹除单元的平均抹除次数小于或等于一第二预设门槛值但大于第三预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会提取暂驻存储区506的1个实体抹除单元和闲置区504的2个实体抹除单元,作为此第一暂存实体抹除单元组中的3个暂存实体抹除单元(例如,图9E、9F中的第一暂存实体抹除单元510(S+1)、第二暂存实体抹除单元510(F+2)以及第三暂存实体抹除单元510(F+3)),并将第一数据暂存于此3个暂存实体抹除单元中。
图9F为根据第一范例所示出的数据合并的另一示意图。
请参照图9F,存储器控制电路单元104(或存储器管理电路302)会从闲置区504取一个第一实体抹除单元510(F+1)。之后,存储器控制电路单元104(或存储器管理电路302)会依照上述第一数据写入至第一暂存实体抹除单元组中的3个暂存实体抹除单元的顺序,从此3个暂存实体抹除单元的下实体程序化单元中读取第一数据,并将读出的第一数据合并且同时写入到成为数据区的第一实体抹除单元510(F+1)的上、中、下实体程序化单元中。之后,存储器控制电路单元104(或存储器管理电路302)会将此第一数据所属的第一逻辑单元映射至第一实体抹除单元510(F+1)。
图9G为根据第一范例所示出的数据暂存的另一示意图。请参照图9G,倘若暂驻存储区506的实体抹除单元的平均抹除次数大于第二预设门槛值时,存储器管理电路302会提取闲置区504的3个实体抹除单元,作为此第一暂存实体抹除单元组中的3个暂存实体抹除单元(例如,图9G、9H中的第一暂存实体抹除单元510(F+4)、第二暂存实体抹除单元510(F+2)以及第三暂存实体抹除单元510(F+3)),并将第一数据暂存于此3个暂存实体抹除单元中。
图9H为根据第一范例所示出的数据合并的另一范例示意图。
请参照图9H,存储器控制电路单元104(或存储器管理电路302)会从闲置区504取一个第一实体抹除单元510(F+1)。接着,存储器控制电路单元104(或存储器管理电路302)会依照上述第一数据写入至第一暂存实体抹除单元组中的3个暂存实体抹除单元的顺序,从此3个暂存实体抹除单元的下实体程序化单元中读取第一数据,并将读出的第一数据合并且同时写入到成为数据区的第一实体抹除单元510(F+1)的上、中、下实体程序化单元中。之后,存储器管理电路302会将此第一数据所属的第一逻辑单元映射至第一实体抹除单元510(F+1)。
综合上述,在本范例实施例中,存储器控制电路单元104(或存储器管理电路302)会根据暂驻存储区506的实体抹除单元的平均抹除次数以及预先设定的预设门槛值来决定从暂驻存储区506或闲置区504来提取用作为暂存实体抹除单元组的暂存实体抹除单元。然而,值得注意的是,所述的预设门槛值的数值,以及对应的由暂驻存储区或是闲置区提取实体抹除单元的个数,并不限于本范例实施例。举例来说,可以只有1个预设门槛值和其对应的暂存实体抹除单元提取方式,并且在此范例实施例中,当暂驻存储区506的实体抹除单元的平均抹除次数小于或等于此第一预设门槛值时,对应一逻辑单元的一暂存实体抹除单元组的3个暂存实体抹除单元,便会全部从暂驻存储区的实体抹除单元之中来提取;当暂驻存储区506的实体抹除单元的平均抹除次数大于此第一预设门槛值时,对应一逻辑单元的一暂存实体抹除单元组的3个暂存实体抹除单元,便会全部从闲置区504的实体抹除单元之中来提取。
[第二范例]
第二范例的“数据暂存”、“数据合并”的步骤相似于上述第一范例,以下将说明不同于第一范例的地方。
在第二范例中只有两个预设门槛值会被使用。当暂驻存储区的实体抹除单元的平均抹除次数小于或等于第一预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会提取暂驻存储区的3个实体抹除单元,作为对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元。当暂驻存储区的实体抹除单元的平均抹除次数大于第一预设门槛值且小于或等于第二预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会使用一随机乱数模块与一暂驻存储区提取比率,来决定从暂驻存储区或是闲置区提取共3个实体抹除单元,作为对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元。并且,当暂驻存储区的实体抹除单元的平均抹除次数大于第二预设门槛值时,存储器控制电路单元104(或存储器管理电路302)会提取闲置区的3个实体抹除单元,作为对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元。
图10为根据第二范例所示出的随机乱数模块的范例示意图。
请参照图10,随机乱数模块530包含0~9的10个数值。例如,在本范例实施例中,对应预设门槛值的暂驻存储区提取比率为2比3,因此,随机乱数模块530会按照此暂驻存储区提取比率将10个数值分为两组(即,第一数值532与第二数值534),其中在第一数值532与第二数值534的数值个数比率为2比3。如同图10所示,数值0~3分组为第一数值532,数值4~9分组为第二数值534,而此两组数值个数分别为4个和6个。也就是说,两组数值的数值个数比为2比3,以对应暂驻存储区提取比率2比3。
存储器控制电路单元104(或存储器管理电路302)会使用此随机乱数模块,从其中的第一数值与第二数值之中,随机取得1个数值,并判断随机取得的此数值是否属于第一数值的其中之一。
当随机取得的此数值属于第一数值时,存储器控制电路单元104(或存储器管理电路302)便从暂驻存储区的实体抹除单元之中提取1个实体抹除单元,来作为对应第一逻辑单元的第一暂存实体抹除单元组中的1个暂存实体抹除单元。而,当随机取得的此数值不属于第一数值时(例如,属于第二数值时),存储器控制电路单元104(或存储器管理电路302)便从闲置区的实体抹除单元之中提取1个实体抹除单元,来作为对应第一逻辑单元的第一暂存实体抹除单元组中的1个暂存实体抹除单元。
使用此随机乱数模块提取3个对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元之后,存储器控制电路单元104(或存储器管理电路302)便会将第一数据依序写入此对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元的下实体程序化单元,完成“数据暂存”,而之后的“数据合并”与第一范例相同。值得注意的是,本发明并不限定于本范例实施例的暂驻存储区提取比率,暂驻存储区提取比率可出厂时设定,或是经由固件/软件设定。
[第三范例]
与上述第二范例类似,第三范例也是使用对应一暂驻存储区提取比率的随机乱数模块来提取对应第一逻辑单元的第一暂存实体抹除单元组中的3个暂存实体抹除单元,与第二范例不同地方在于,在第三范例中,并没有预设门槛值的设定,存储器管理电路302会依照暂驻存储区的全部实体抹除单元的平均抹除次数去计算暂驻存储区提取比率。也就是说,此暂驻存储区提取比率会根据平均抹除次数的大小来动态做变化,而存储器控制电路单元104(或存储器管理电路302)每次提取暂存实体抹除单元组的暂存实体抹除单元之前,都会使用随机乱数模块与当时所计算出的暂驻存储区提取比率,来决定从暂驻存储区或是闲置区来提取实体抹除单元,以作为暂存实体抹除单元组的暂存实体抹除单元。
具体来说,在第三范例中,存储器控制电路单元104(或存储器管理电路302)会记录暂驻存储区的实体抹除单元的平均抹除次数,并依照此平均抹除次数与出厂时位于暂驻存储区的使用单页模式操作的实体抹除单元,其最大抹除次数做计算。于本范例实施例中,是使用此最大抹除次数减去此时暂驻存储区的实体抹除单元的平均抹除次数的差值与此时暂驻存储区的实体抹除单元的平均抹除次数的比率当作此时的暂驻存储区提取比率,当然本发明不限于此计算方法。根据本范例实施例的计算方法。
举例来说,暂驻存储区的实体抹除单元,假设其使用单页模式操作的最大抹除次数为3000次,当暂驻存储区的实体抹除单元的平均抹除次数为1500时,根据本范例实施例,暂驻存储区提取比率为(3000-1500)比1500,即为1比1,而此时随机乱数模块中位于第一数值与第二数值的数值个数比率便为1比1。
当暂驻存储区的实体抹除单元的平均抹除次数大于或等于此最大抹除次数的极端例子时,暂驻存储区提取比率为0比1,而此时随机乱数模块中全部的数值会分组为第二数值。
而当暂驻存储区的实体抹除单元的平均抹除次数为0的极端例子时,暂驻存储区提取比率为1比0,而此时随机乱数模块中全部的数值会分组为第一数值。
举例来说,随机乱数模块也可以依据暂驻存储区的实体抹除单元的最大抹除次数3000来设定共有1~3000的数值,其中第一数值的个数为此最大抹除次数减去此时平均抹除次数为1500。也就是说,1~1500分组为第一数值,且1501~3000分组为第二数值,本发明不限于此随机乱数模块的设定方法。例如,于其他实施例中,随机乱数模块的数值总个数为暂驻存储区的实体抹除单元的最大抹除次数,第一数值的数值个数为当时的平均抹除次数,第二数值即为随机乱数模块中非分组为第一数值的数值。当使用此随机乱数模块随机取得的数值属于第一数值,存储器控制电路单元104(或存储器管理电路302)会从闲置区提取实体抹除单元作为暂存实体抹除单元;并且当使用此随机乱数模块随机取得的数值属于第二数值,存储器控制电路单元104(或存储器管理电路302)会从暂驻存储区提取实体抹除单元作为暂存实体抹除单元。
之后,存储器控制电路单元104(或存储器管理电路302)使用此时的随机乱数模块来提取暂存实体抹除单元做“数据暂存”,以及随后的“数据合并”。在本范例实施例中,此暂存提取比率会按照暂驻存储区的平均抹除次数来动态做调整,其中在暂驻存储区中的实体抹除单元的平均抹除次数低时,存储器控制电路单元104(或存储器管理电路302)会提取暂驻存储区的实体抹除单元来作为暂存实体抹除单元,另一方面,在暂驻存储区中的实体抹除单元的平均抹除次数高时,也就是暂驻存储区中的实体抹除单元老化时,存储器控制电路单元104(或存储器管理电路302)会逐渐提取闲置区的实体抹除单元来作为暂存实体抹除单元,如此一来可避免因为暂驻存储区的实体抹除单元老化容易发生数据错误时,又被当作暂存实体抹除单元来做“数据暂存”所导致的不可挽回的数据错误发生。
图11为根据本发明一范例实施例所示出的写入数据的流程图。
请参照图11,在步骤S1101中,存储器控制电路单元104(或存储器管理电路302)会从主机系统900接收到欲写入至一个逻辑单元(以下称第一逻辑单元)的数据(以下称第一数据)。
在步骤S1103中,存储器控制电路单元104(或存储器管理电路302)会判断暂驻存储区506中的实体抹除单元的平均抹除次数是否小于或等于第一预设门槛值。
当暂驻存储区506中的全部实体抹除单元的平均抹除次数小于或等于第一预设门槛值时,在步骤S1111中,存储器控制电路单元104(或存储器管理电路302)会从暂驻存储区506中提取3个实体抹除单元,作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元。
当暂驻存储区506中的全部实体抹除单元的平均抹除次数大于第一预设门槛值时,在步骤S1105中,存储器控制电路单元104(或存储器管理电路302)会判断暂驻存储区506中的全部实体抹除单元的平均抹除次数是否小于或等于第二预设门槛值。
当暂驻存储区506中的全部实体抹除单元的平均抹除次数大于第二预设门槛值时,在步骤S1107中,存储器控制电路单元104(或存储器管理电路302)会从闲置区502中提取3个实体抹除单元,作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元。
当暂驻存储区506中的全部实体抹除单元的平均抹除次数大于第一预设门槛值且小于或等于第二预设门槛值时,在步骤S1109中,存储器控制电路单元104(或存储器管理电路302)会使用对应一暂驻存储区提取比率的随机乱数模块530,来决定从暂驻存储区506或是闲置区504中提取共3个实体抹除单元来作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元。
在步骤S1107、S1109、S1111步骤中,完成从暂驻存储区506或是闲置区504提取3个实体抹除单元,以作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元之后,在步骤S1113,存储器控制电路单元104(或存储器管理电路302)会将第一数据写入第一暂存实体抹除单元组的3个暂存实体抹除单元的下实体程序化单元中,结束第一数据的数据暂存流程。
图12为根据本发明的另一范例实施例所示出的写入数据的流程图。
请参照图12,在步骤S1201中,存储器控制电路单元104(或存储器管理电路302)会从主机系统1000接收到欲写入至一个逻辑单元(以下称第一逻辑单元)的数据(以下称第一数据)。
然后,在步骤S1203中,存储器控制电路单元104(或存储器管理电路302)会计算暂驻存储区提取比率。本发明不限定此暂驻存储区提取比率的计算方式,但所计算出的暂驻存储区提取比率,会依照暂驻存储区506的平均抹除次数增多,而动态变化。也就是说,不论使用何种计算方式所得到的动态变化的暂驻存储区提取比率,存储器控制电路单元104(或存储器管理电路302)会在暂驻存储区506的平均抹除次数增多时,降低提取自暂驻存储区的实体抹除单元作为暂存实体抹除单元组的暂存实体抹除单元的比率,达到减低暂驻存储区的实体抹除单元老化速率的效果。
然后,在步骤S1205中,存储器控制电路单元104(或存储器管理电路302)会使用对应此暂驻存储区提取比率的随机乱数模块,从暂驻存储区或闲置区中提取共3个实体抹除单元,以作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元。
完成从暂驻存储区506或是闲置区504提取3个实体抹除单元,以作为对应第一逻辑单元的第一暂存实体抹除单元组的3个暂存实体抹除单元之后,在步骤S1207中,存储器控制电路单元104(或存储器管理电路302)会将第一数据写入第一暂存实体抹除单元组的3个暂存实体抹除单元的下实体程序化单元中,结束第一数据的数据暂存流程。
值得一提的是,在本发明的范例实施例中,还会在第一数据复制至第一实体抹除单元之后,将作为该第一暂存实体抹除单元组的暂存实体抹除单元之中取自暂驻存储区的实体抹除单元关联回暂驻存储区,并且也将作为该第一暂存实体抹除单元组的暂存实体抹除单元之中取自闲置区的实体抹除单元关联回闲置区。也就是说,在完成“数据合并”之后,这些使用过后的暂存实体抹除单元,可以回到原本所属的暂驻存储区或是闲置区,以便于可以用来做上述的原本暂驻存储区或闲置区的实体抹除单元的其他用途。例如,关联回闲置区之后的实体抹除单元,还可以用来与位于数据区的实体抹除单元一起做耗损平均(wear leveling)的程序,进一步地增进数据区的实体抹除单元的寿命,以增进稳定性。
综上所述,通过上述的范例实施例,本发明可以动态调整暂驻存储区的实体抹除单元的提取比率,可避免因为暂驻存储区的实体抹除单元老化时,又继续自暂驻存储区提取老化的实体抹除单元作为数据暂存所导致的数据错误。此外,主机系统欲写入的数据会先暂存至以单页模式操作的暂存实体抹除单元组中,因此,根据本范例实施例的数据写入方法、存储器控制电路单元与存储器储存装置能够有效地提升写入数据的速度,避免因为TLC的写入速度较慢,所导致的主机逾时。此外,由于欲写入的数据是先暂存在暂存实体抹除单元组中,并且,之后再以实体程序化单元(即,由位于同一条字线的多个存储单元所组成的下实体程序化单元、中实体程序化单元与上实体程序化单元)为单位程序化至数据区的实体抹除单元,因此,可有效地提升储存数据的可靠度。特别是,倘若主机系统持续地对同一个逻辑单元重复执行写入时,由于数据是在暂驻存储区中被更新,因此,根据本范例实施例的数据写入方法、存储器控制电路单元与存储器储存装置能够有效地减少数据区的实体抹除单元的磨损。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (24)
1.一种数据写入方法,用于一可复写式非易失性存储器模块,其特征在于,该可复写式非易失性存储器模块具有多个实体抹除单元,每一该些实体抹除单元具有多个实体程序化单元,该数据写入方法包括:
将该些实体抹除单元至少分组为一闲置区与一暂驻存储区,其中该暂驻存储区的该些实体抹除单元是以单页模式来写入数据;
接收一第一数据,其中该第一数据欲被储存至一第一逻辑单元的多个逻辑子单元中;
根据该暂驻存储区的实体抹除单元的一平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的一第一暂存实体抹除单元组的多个暂存实体抹除单元;
其中该第一暂存实体抹除单元组的该些暂存实体抹除单元是以单页模式来写入该第一数据;以及
从该闲置区中的该些实体抹除单元中提取一第一实体抹除单元,从该第一暂存实体抹除单元组的该些暂存实体抹除单元中将该第一数据复制至该第一实体抹除单元中并且将该第一逻辑单元映射至该第一实体抹除单元。
2.根据权利要求1所述的数据写入方法,其特征在于,该第一数据会被写入至该第一实体抹除单元的每一实体程序化单元组的下实体程序化单元与上实体程序化单元中并且该第一实体抹除单元的每一实体程序化单元组的下实体程序化单元与上实体程序化单元会同时或阶段性地被程序化。
3.根据权利要求1所述的数据写入方法,其特征在于,根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤包括:
判断该暂驻存储区的实体抹除单元的该平均抹除次数是否小于一第一预设门槛值;以及
倘若该暂驻存储区的实体抹除单元的该平均抹除次数小于该第一预设门槛值时,仅从该暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
4.根据权利要求1所述的数据写入方法,其特征在于,根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:
判断该暂驻存储区的实体抹除单元的该平均抹除次数是否大于一第二预设门槛值;以及
倘若该暂驻存储区的实体抹除单元的该平均抹除次数大于该第二预设门槛值时,仅从该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
5.根据权利要求1所述的数据写入方法,其特征在于,根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:
倘若该暂驻存储区的实体抹除单元的该平均抹除次数介于该第一预设门槛值与该第二预设门槛值之间时,从该暂驻存储区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的一部分且从该闲置区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的另一部分。
6.根据权利要求1所述的数据写入方法,其特征在于,根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的多个暂存实体抹除单元的步骤还包括:
根据该暂驻存储区的实体抹除单元的该平均抹除次数计算一暂驻存储区提取比率;
建立一随机乱数模块,其中该随机乱数模块是由多个第一数值与多个第二数值所组成并且该些第一数值的数目与该些第二数值的数目的一比率相同于该暂驻存储区提取比率;
从该随机乱数模块中的该些第一数值与该些第二数值之中随机取得一数值,并且判断该数值是否属于该些第一数值的其中之一;
倘若该数值属于该些第一数值的其中之一时,则从该暂驻存储区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中之一;以及
倘若该数值不属于该些第一数值的其中之一时,则从该闲置区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中之另一。
7.根据权利要求1所述的数据写入方法,其特征在于,该闲置区的该些实体抹除单元和该暂驻存储区的该些实体抹除单元是彼此独立地被操作。
8.根据权利要求1所述的数据写入方法,其特征在于,在该第一数据复制至该第一实体抹除单元之后,作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元会被关联回该暂驻存储区并且作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元会被关联回该闲置区。
9.根据权利要求3所述的数据写入方法,其特征在于,仅从该暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的步骤包括:
从该暂驻存储区的该些实体抹除单元之中提取3个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第一暂存实体抹除单元、一第二暂存实体抹除单元与一第三暂存实体抹除单元。
10.根据权利要求4所述的数据写入方法,其特征在于,仅从该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的步骤包括:
从该闲置区的该些实体抹除单元之中提取3个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第一暂存实体抹除单元、一第二暂存实体抹除单元与一第三暂存实体抹除单元。
11.根据权利要求5所述的数据写入方法,其特征在于,从该暂驻存储区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的一部分且从该闲置区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的另一部分的步骤包括:
从该暂驻存储区的该些实体抹除单元之中提取1个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第一暂存实体抹除单元;以及
从该闲置区的该些实体抹除单元之中提取2个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第二暂存实体抹除单元与一第三暂存实体抹除单元。
12.根据权利要求5所述的数据写入方法,其特征在于,从该暂驻存储区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的一部分且从该闲置区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的另一部分的步骤包括:
从该暂驻存储区的该些实体抹除单元之中提取2个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第一暂存实体抹除单元与一第二暂存实体抹除单元;以及
从该闲置区的该些实体抹除单元之中提取1个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的一第三暂存实体抹除单元。
13.一种存储器控制电路单元,用于控制一可复写式非易失性存储器模块,其特征在于,该存储器控制电路单元包括:
一主机接口,用以电性连接至一主机系统;
一存储器接口,用以电性连接至该可复写式非易失性存储器模块,其中该可复写式非易失性存储器模块具有多个实体抹除单元,每一该些实体抹除单元具有多个实体程序化单元;以及
一存储器管理电路,电性连接至该主机接口与该存储器接口,并且用以将该些实体抹除单元至少分组为一闲置区与一暂驻存储区,其中该暂驻存储区的该些实体抹除单元是以单页模式来写入数据,
其中该存储器管理电路还用以从该主机系统中接收一第一数据,其中该主机系统指示将该第一数据储存至一第一逻辑单元的多个逻辑子单元中;
其中该存储器管理电路还用以根据该暂驻存储区的实体抹除单元的一平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的一第一暂存实体抹除单元组的多个暂存实体抹除单元,
其中该存储器管理电路还用单页模式来写入该第一数据至该第一暂存实体抹除单元组的该些暂存实体抹除单元中,
其中该存储器管理电路还用以从该闲置区中的该些实体抹除单元中提取一第一实体抹除单元,从该第一暂存实体抹除单元组的该些暂存实体抹除单元中将该第一数据复制至该第一实体抹除单元中并且将该第一逻辑单元映射至该第一实体抹除单元。
14.根据权利要求13所述的存储器控制电路单元,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器管理电路还用以判断该暂驻存储区的实体抹除单元的该平均抹除次数是否小于一第一预设门槛值,
其中倘若该暂驻存储区的实体抹除单元的该平均抹除次数小于该第一预设门槛值时,该存储器管理电路仅从该暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
15.根据权利要求13所述的存储器控制电路单元,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器管理电路还用以判断该暂驻存储区的实体抹除单元的该平均抹除次数是否大于一第二预设门槛值,
其中倘若该暂驻存储区的实体抹除单元的该平均抹除次数大于该第二预设门槛值时,该存储器管理电路仅从该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
16.根据权利要求13所述的存储器控制电路单元,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,倘若该暂驻存储区的实体抹除单元的该平均抹除次数介于该第一预设门槛值与该第二预设门槛值之间时,该存储器管理电路从该暂驻存储区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的一部分且从该闲置区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的另一部分。
17.根据权利要求13所述的存储器控制电路单元,其特征在于,该存储器管理电路还用以根据该暂驻存储区的实体抹除单元的该平均抹除次数计算一暂驻存储区提取比率,并且设定一随机乱数模块,其中该随机乱数模块是由多个第一数值与多个第二数值所组成并且该些第一数值的数目与该些第二数值的数目的一比率相同于该暂驻存储区提取比率,
其中在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器管理电路从该随机乱数模块中的该些第一数值与该些第二数值之中随机取得一数值,并且判断该数值是否属于该些第一数值的其中之一,
其中倘若该数值属于该些第一数值的其中之一时,该存储器管理电路从该暂驻存储区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中之一,
其中倘若该数值不属于该些第一数值的其中之一时,该存储器管理电路从该闲置区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中之另一。
18.根据权利要求13所述的存储器控制电路单元,其特征在于,在该存储器管理电路将该第一数据复制至该第一实体抹除单元之后,该存储器管理电路还将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元关联回该暂驻存储区并且该存储器管理电路将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元关联回该闲置区。
19.一种存储器储存装置,其特征在于,包括:
一连接接口单元,用以电性连接至一主机系统;
一可复写式非易失性存储器模块,具有多个实体抹除单元,每一该些实体抹除单元具有多个实体程序化单元;以及
一存储器控制电路单元,电性连接至该连接接口单元与该可复写式非易失性存储器模块,并且用以将该些实体抹除单元至少分组为一闲置区与一暂驻存储区,其中该暂驻存储区的该些实体抹除单元是以单页模式来写入数据,
其中该存储器控制电路单元还用以从该主机系统中接收一第一数据,其中该主机系统指示将该第一数据储存至一第一逻辑单元的多个逻辑子单元中;
其中该存储器控制电路单元还用以根据该暂驻存储区的实体抹除单元的一平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的一第一暂存实体抹除单元组的多个暂存实体抹除单元,
其中该存储器控制电路单元还用单页模式来写入该第一数据至该第一暂存实体抹除单元组的该些暂存实体抹除单元中,
其中该存储器控制电路单元还用以从该闲置区中的该些实体抹除单元中提取一第一实体抹除单元,从该第一暂存实体抹除单元组的该些暂存实体抹除单元中将该第一数据复制至该第一实体抹除单元中并且将该第一逻辑单元映射至该第一实体抹除单元。
20.根据权利要求19所述的存储器储存装置,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器控制电路单元还用以判断该暂驻存储区的实体抹除单元的该平均抹除次数是否小于一第一预设门槛值,
其中倘若该暂驻存储区的实体抹除单元的该平均抹除次数小于该第一预设门槛值时,该存储器控制电路单元仅从该暂驻存储区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
21.根据权利要求19所述的存储器储存装置,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器控制电路单元还用以判断该暂驻存储区的实体抹除单元的该平均抹除次数是否大于一第二预设门槛值,
其中倘若该暂驻存储区的实体抹除单元的该平均抹除次数大于该第二预设门槛值时,该存储器控制电路单元仅从该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元。
22.根据权利要求19所述的存储器储存装置,其特征在于,在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,倘若该暂驻存储区的实体抹除单元的该平均抹除次数介于该第一预设门槛值与该第二预设门槛值之间时,该存储器控制电路单元从该暂驻存储区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的一部分且从该闲置区的实体抹除单元之中提取至少一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的另一部分。
23.根据权利要求19所述的存储器储存装置,其特征在于,该存储器控制电路单元还用以根据该暂驻存储区的实体抹除单元的该平均抹除次数计算一暂驻存储区提取比率,并且设定一随机乱数模块,其中该随机乱数模块是由多个第一数值与多个第二数值所组成并且该些第一数值的数目与该些第二数值的数目的一比率相同于该暂驻存储区提取比率,
其中在根据该暂驻存储区的实体抹除单元的该平均抹除次数,从该暂驻存储区、或该闲置区、或者该暂驻存储区及该闲置区的实体抹除单元之中提取多个实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的运作中,该存储器控制电路单元从该随机乱数模块中的该些第一数值与该些第二数值之中随机取得一数值,并且判断该数值是否属于该些第一数值的其中之一,
其中倘若该数值属于该些第一数值的其中之一时,该存储器控制电路单元从该暂驻存储区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中之一,
其中倘若该数值不属于该些第一数值的其中之一时,该存储器控制电路单元从该闲置区的实体抹除单元之中提取一实体抹除单元作为对应该第一逻辑单元的该第一暂存实体抹除单元组的该些暂存实体抹除单元的其中的另一。
24.根据权利要求19所述的存储器储存装置,其特征在于,在该存储器控制电路单元将该第一数据复制至该第一实体抹除单元之后,该存储器控制电路单元还将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该暂驻存储区的实体抹除单元关联回该暂驻存储区并且该存储器控制电路单元将作为该第一暂存实体抹除单元组的该些暂存实体抹除单元之中取自该闲置区的实体抹除单元关联回该闲置区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410008756.0A CN104765569B (zh) | 2014-01-06 | 2014-01-06 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410008756.0A CN104765569B (zh) | 2014-01-06 | 2014-01-06 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104765569A true CN104765569A (zh) | 2015-07-08 |
CN104765569B CN104765569B (zh) | 2017-10-27 |
Family
ID=53647433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410008756.0A Active CN104765569B (zh) | 2014-01-06 | 2014-01-06 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104765569B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484307A (zh) * | 2015-08-25 | 2017-03-08 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106610791A (zh) * | 2015-10-22 | 2017-05-03 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN107102814A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 内存管理方法、内存控制电路单元与内存储存装置 |
CN107132989A (zh) * | 2016-02-26 | 2017-09-05 | 群联电子股份有限公司 | 数据程序化方法、内存控制电路单元及内存储存装置 |
CN107391035A (zh) * | 2017-07-11 | 2017-11-24 | 华中科技大学 | 一种通过编程错误感知降低固态盘磨损的方法 |
CN107402716A (zh) * | 2016-05-20 | 2017-11-28 | 合肥兆芯电子有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
CN107544922A (zh) * | 2016-06-24 | 2018-01-05 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN108170381A (zh) * | 2017-12-28 | 2018-06-15 | 湖南国科微电子股份有限公司 | 一种SLC Block到XLC Block数据迁移方法 |
CN112051963A (zh) * | 2019-06-06 | 2020-12-08 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元以及存储器存储装置 |
CN112764977A (zh) * | 2019-11-05 | 2021-05-07 | 深圳宏芯宇电子股份有限公司 | 存储控制器以及测试数据产生方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244338A1 (en) * | 2007-03-31 | 2008-10-02 | Nima Mokhlesi | Soft bit data transmission for error correction control in non-volatile memory |
US20100082890A1 (en) * | 2008-09-30 | 2010-04-01 | Jin Gyu Heo | Method of managing a solid state drive, associated systems and implementations |
CN102193869A (zh) * | 2010-03-01 | 2011-09-21 | 群联电子股份有限公司 | 存储器管理与写入方法及其存储器控制器与储存系统 |
CN103176910A (zh) * | 2011-12-26 | 2013-06-26 | 群联电子股份有限公司 | 用于非易失性存储器的数据合并方法、控制器与储存装置 |
TW201349394A (zh) * | 2012-05-21 | 2013-12-01 | Phison Electronics Corp | Nand快閃記憶體單元、nand快閃記憶體陣列及其操作方法 |
-
2014
- 2014-01-06 CN CN201410008756.0A patent/CN104765569B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244338A1 (en) * | 2007-03-31 | 2008-10-02 | Nima Mokhlesi | Soft bit data transmission for error correction control in non-volatile memory |
US20100082890A1 (en) * | 2008-09-30 | 2010-04-01 | Jin Gyu Heo | Method of managing a solid state drive, associated systems and implementations |
CN102193869A (zh) * | 2010-03-01 | 2011-09-21 | 群联电子股份有限公司 | 存储器管理与写入方法及其存储器控制器与储存系统 |
CN103176910A (zh) * | 2011-12-26 | 2013-06-26 | 群联电子股份有限公司 | 用于非易失性存储器的数据合并方法、控制器与储存装置 |
TW201349394A (zh) * | 2012-05-21 | 2013-12-01 | Phison Electronics Corp | Nand快閃記憶體單元、nand快閃記憶體陣列及其操作方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484307B (zh) * | 2015-08-25 | 2019-05-21 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106484307A (zh) * | 2015-08-25 | 2017-03-08 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
CN106610791A (zh) * | 2015-10-22 | 2017-05-03 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN106610791B (zh) * | 2015-10-22 | 2019-04-12 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN107102814A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 内存管理方法、内存控制电路单元与内存储存装置 |
CN107132989A (zh) * | 2016-02-26 | 2017-09-05 | 群联电子股份有限公司 | 数据程序化方法、内存控制电路单元及内存储存装置 |
CN107402716A (zh) * | 2016-05-20 | 2017-11-28 | 合肥兆芯电子有限公司 | 数据写入方法、内存控制电路单元与内存储存装置 |
CN107544922A (zh) * | 2016-06-24 | 2018-01-05 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN107544922B (zh) * | 2016-06-24 | 2020-01-21 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN107391035A (zh) * | 2017-07-11 | 2017-11-24 | 华中科技大学 | 一种通过编程错误感知降低固态盘磨损的方法 |
CN107391035B (zh) * | 2017-07-11 | 2019-05-10 | 华中科技大学 | 一种通过编程错误感知降低固态盘磨损的方法 |
CN108170381A (zh) * | 2017-12-28 | 2018-06-15 | 湖南国科微电子股份有限公司 | 一种SLC Block到XLC Block数据迁移方法 |
CN108170381B (zh) * | 2017-12-28 | 2021-01-01 | 湖南国科微电子股份有限公司 | 一种SLC Block到XLC Block数据迁移方法 |
CN112051963A (zh) * | 2019-06-06 | 2020-12-08 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元以及存储器存储装置 |
CN112051963B (zh) * | 2019-06-06 | 2023-06-13 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元以及存储器存储装置 |
CN112764977A (zh) * | 2019-11-05 | 2021-05-07 | 深圳宏芯宇电子股份有限公司 | 存储控制器以及测试数据产生方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104765569B (zh) | 2017-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9043536B2 (en) | Method of recording mapping information, and memory controller and memory storage apparatus using the same | |
CN104765569A (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN103377129B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
US9141530B2 (en) | Data writing method, memory controller and memory storage device | |
CN104765568A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
CN104423888A (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
CN104679437A (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN105005450A (zh) | 数据写入方法、存储器存储装置及存储器控制电路单元 | |
CN104866429A (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN103514096A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN103544115A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
US9383929B2 (en) | Data storing method and memory controller and memory storage device using the same | |
CN105320464A (zh) | 防止读取干扰的方法、存储器控制电路单元与存储装置 | |
CN103136111A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN103593296A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
US8943264B2 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
CN104978149A (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
CN105022695A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
TWI501244B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN103678162A (zh) | 系统数据储存方法、存储器控制器与存储器储存装置 | |
CN105224238A (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
US9312011B1 (en) | Data writing method, memory storage device and memory control circuit unit | |
CN103714008A (zh) | 数据存储方法、存储器控制器与存储器存储装置 | |
CN103914391A (zh) | 数据读取方法、存储器控制器与存储器存储装置 | |
CN102890653A (zh) | 指令执行方法、存储器控制器与存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |