多位存储单元非易失性存储器的写入方法及系统的制作方法

文档序号:8396710阅读:533来源:国知局
多位存储单元非易失性存储器的写入方法及系统的制作方法
【技术领域】
[0001]本发明涉及一种非易失性存储器,特别是涉及一种将填充数据(padding data)写入至多位存储单元(mult1-bit per cell)非易失性存储器的方法及系统。
现有技术
[0002]闪存为一种非易失性固态存储装置,可以电性抹除或写入数据。相较于其它存储器,闪存的优点包括低功率、非易失性储存、高效能、物理稳定性、可移植性等。
[0003]闪存广泛使用于电子装置,特别是便携式电子装置,例如数码相机、个人数字助理(PDA)、动态图像专家组-1 (MPEG-1)或动态图像专家组-2 (MPEG-2)音频层面III (简称为MP3)播放器、移动电话、平板电脑等。该些电子装置可使用各种界面协议,例如安全数字(SD)、微安全数字(ySD)、内嵌式安全数字(eSD)、内嵌式多媒体卡(eMMC)、通用串行总线(USB),快捷外设互联标准(PCIe)、串行高级技术附件(SATA)等。
[0004]传统闪存又称为单位存储单元(single-bit per cell)闪存,其中一个存储单元储存一比特单位信息,因此,每个存储单元经写入后会有两种可能的状态。现代闪存又称为多位存储单元(mult1-bit per cell)闪存,其中一个存储单元可储存多比特单位信息,因此,每个存储单元经写入后会有多于两种可能状态,因而可以提高存储容量或者降低制造成本。
[0005]闪存一般会包括多个实体数据区块(block),通常是由逻辑寻址与转换机制来确定数据的储存位置。藉此,每一实体数据区块即可共享于多个逻辑单位。对于多位闪存,当一命令所对应的逻辑单元遭到损坏时,则另一命令所对应的另一逻辑单元也可能遭到损坏。图1所示的两位存储单元闪存的数据区块,其包括多个数据页(data page)。每一字符线对应一对数据页,即,最低有效位(LSB)页与最高有效位(MSB)页。图式中所示的序号代表写入顺序。当逻辑单元所对应的数据页8和9被损坏,例如遇到电源中断,则另一逻辑单元所对应的数据页2和3的先前写入数据也可能会遭到损坏。
[0006]因此亟需提出一种新颖且有效的机制,在写入失败时,避免受到其它逻辑单元的干扰。

【发明内容】

[0007]鉴于上述情况,本发明实施例的目的之一在于提出一种有效地将填充数据写入至多位存储单元非易失性存储器的系统及方法,其具有高效能与低写入放大率(writeamplificat1n)。
[0008]根据本发明实施例,接收写入命令及其主机数据,在写入主机数据至多位存储单元非易失性存储器时,将填充数据写入至少一个较低有效位(LSB)页。其中,对于该写入命令,写入有主机数据的每一 LSB页所对应的较高有效位(MSB)页也写入有主机数据。
【附图说明】
[0009]图1是示出两位存储单元闪存的数据区块。
[0010]图2是示出第一机制,在写入失败时用以避免受到其它逻辑单元的干扰。
[0011]图3显示第二机制,在写入失败时用以避免受到其它逻辑单元的干扰。
[0012]图4A至图4C是示出第三机制,在写入失败时用以避免受到其它逻辑单元的干扰。
[0013]图5是示出本发明实施例的存储器系统的方框图。
[0014]图6是示出本发明实施例的将填充数据写入至多位存储单元非易失性存储器的方法流程图。
[0015]图7A至图7F是示出根据图6的流程将虚拟数据填充于数据区块。
[0016]图8是示出本发明另一实施例的将填充数据写入至多位存储单元非易失性存储器的方法流程图。
[0017]图9A至图9C是示出根据图8的流程将待回收(GC)旧数据与虚拟数据填充于数据区块。
[0018]图10是示出本发明又一实施例的将填充数据写入至多位存储单元非易失性存储器的方法流程图。
[0019]附图标记说明
[0020]500存储器系统
[0021]50 主机
[0022]51 控制器
[0023]511 界面
[0024]512缓冲器
[0025]513虚拟数据生成器
[0026]514旧数据储存器
[0027]52 非易失性存储器
[0028]521数据区块
[0029]61 接收写入命令
[0030]62 决定填充LSB页数量及填充LSB页指数
[0031]63 目前是否为LSB页
[0032]64 比较目前数据页的指数与填充LSB页指数
[0033]65 主机数据移至缓冲器
[0034]66 缓冲数据写入存储器
[0035]67 尚有数据页待写入
[0036]68 虚拟数据移至缓冲器
[0037]81 是否有旧数据
[0038]82 旧数据移至缓冲器
[0039]101主机是否发出停止写入命令
[0040]102决定填充数据页数量
[0041]103虚拟数据移至缓冲器
[0042]104写入填充数据页
【具体实施方式】
[0043]在写入失败时(例如因为电源中断),为了避免受到其它逻辑单元的干扰,提出以下一些机制。图2示出第一机制,在本说明书中又称为最低有效位(LSB)页备份机制。图示的序号代表可能(但非必定)的写入顺序。在此机制中,在写入最高有效位(MSB)页至目标数据区块之前,相应的LSB页先备份在辅助数据区块的LSB页。
[0044]如图2所示,在写入MSB页4与页5至(左边)目标数据区块之前,相应的LSB页O与I先备份于(右边)辅助数据区块的LSB页O与页I。类似的情形,在写入MSB页8与页9至(左边)目标数据区块之前,相应的LSB页2与页3先备份于(右边)辅助数据区块的LSB页2与页3。第一机制的缺点在于需要额外的辅助数据区块以及写入时间,用以进行LSB页的备份,因而造成高写入放大率(即,实际写入的数据量为所需写入的逻辑数据量的数倍)及低效能。
[0045]图3示出第二机制,在本说明书中又称为先写入LSB页机制。在此机制中,在写入数据至目标数据区块前,所有数据先暂存于辅助数据区块的LSB页。接着,所有暂存的LSB页再整个写入目标数据区块的LSB页与MSB页。
[0046]如图3所示,在写入数据至(右边)目标数据区块前,所有数据先暂存于两(左边)辅助数据区块的LSB页。接着,所有暂存的LSB页再整个写入(右边)目标数据区块的LSB页与MSB页。第二机制的缺点在于需要额外的辅助数据区块及其写入时间,用以暂存数据,因而造成高写入放大率及低效能。
[0047]图4A至第图4C示出第三机制,在本说明书中又称为写入后填充数据机制。在此机制中,在写入数据至目标数据区块后,在目标数据区块中的写入数据页附近填充虚拟(dummy)数据。一般来说,虚拟数据填充于至少一个LSB页或/和至少一个MSB页,使得接收自主机(host)写入命令所写入的主机数据(host data)的LSB页所对应的MSB页写入虚拟数据,因而不会受到后续写入命令的干扰。
[0048]如图4A所示,在数据区块的(斜线)数据页O?页I写入主机数据之后,在数据区块的(点状)数据页2?页5写入虚拟数据。第三机制不像第一机制需要额外辅助数据区块以备份LSB页,且不像第二机制需要额外辅助数据区块以暂存数据。第三机制所需填充的虚拟数据数量视写入主机数据量而定。在最差情形下,写入虚拟数据所浪费的数据空间与写入时间可能比第一机制更大。图4B所示使用第三机制,其中每一命令写入主机数据至一数据页(例如数据页0),接着填充虚拟数据于其它数据页(例如数据页I?4)。具体来说,写入第一命令至数据页0,接着填充虚拟数据于数据页I?4。接下来,写入第二命令至数据页5,但不需填充虚拟数据。接下来,写入第三命令至数据页6,接着填充虚拟数据于数据页7?12。图4C示出使用第三机制,其中每一命令写入主机数据至两数据页(例如数据页O?1),接着填充虚拟数据于其它数据页(例如数据页2?5)。详而言之,写入第一命令至数据页O?I,接着填充虚拟数据于数据页2?5。接下来,写入第二命令至数据页6?7,接着填充虚拟数据于数据页8?13。接下来,写入第三命令至数据页14?15,接着填充虚拟数据于数据页16?21。如图4B及图4C所示,填充的虚拟数据量三倍于写入的主机数据。
[0049]图5示出本发明实施例的存储器系统500的方框图,其可在写入失败时,有效避免其它逻辑单元的干扰。在本实施例中,存储器系统500包括控制器51,设置于主机50 (例如计算机)与非易失性存储器52之间。非易失性存储器52,例如多位存储单元闪存,包括至少多个(多位存储单元)数据区块521。非易失性存储器52还可包括单位存储单元数据区块。
[0050]本实施例的控制器51包括界面511,电性耦接至主机50,并与主机50通信。界面511可符合各种协议,例如安全数字(SD)、微安全数字(μ SD)、内嵌式安全数字(eSD)、内嵌式多媒体卡(eMMC)、通用串行总线(USB)、快捷外设互联标准(PCIe)、串行高级技术附件(SATA)等。控制器51可包括缓冲器512,用以暂存将移动至/自非易失性存储器52的数据。控制器51还可包括虚拟数据生成器513,用以生成虚拟数据;及旧数据储存器514,用以储存来自(多位存储单元或单位存储单元)数据区块521的旧数据。旧数据储存器514可为缓冲器512的一部分或整合于缓冲器512。在本实施例中,所谓“旧数据”系指目前命令的主机数据接收到之前,即已存在于非易失性存储器52的数据。
[0051]图6示出本发明实施例的将填充数据写入至多位存储单元非易失性存储器52的方法流程图,其可在写入失败时,有效避免其它逻辑单元的干扰。图7A示出与图6的流程相关的数据区块。本实施例虽以两位存储单元非易失性存储器(例如闪存)作为例示,但本实施例也可适用于其它多位存储单元非易失性存储器。在本说明书中,“最低有效位(least-significant-bit)” 可与“较低有效位(less-significant-bit)” 互用
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1