在固态介质中使用多级别映射的修整机制的制作方法

文档序号:6538089阅读:222来源:国知局
在固态介质中使用多级别映射的修整机制的制作方法
【专利摘要】公开了在固态介质中使用多级别映射的修整机制。所描述的实施例提供用于接收包括逻辑地址和地址范围的请求的介质控制器。响应于该请求,介质控制器判断接收到的请求是否是作废请求。如果接收到的请求类型是作废请求,则介质控制器使用映射来确定与逻辑地址和范围相关联的映射的一个或多个条目。与每一个映射条目相关联的映射中的指示符被设置为表示这些映射条目将被作废。介质控制器向主机设备确认该作废请求完成,并在介质控制器的空闲模式下基于将被作废的映射条目更新空闲空间计数。使与作废的映射条目相关联的物理地址可用,以便重复用于来自主机设备的随后的请求。
【专利说明】在固态介质中使用多级别映射的修整机制
[0001] 相关申请的交叉引用
[0002] 本申请是2012年8月8日提交的国际专利申请PCT/US2012/049905的部份继续 申请,并要求 申请日期:的权益,在此引用该申请的全部内容作为参考。
[0003] 本申请要求2013年3月14日提出的美国临时专利申请61/783, 555的 申请日期: 的权益,在此引用该申请的全部内容作为参考。
[0004] 本申请的主题涉及下列美国专利申请:2012年5月4日提交的13/464,433、2012 年8月4日提交的13/567, 025、2012年8月31日提交的13/600, 464、2012年12月28日 提交的13/729, 966以及2013年1月23日提交的13/748, 260,在此引用这些申请的全部内 容作为参考。
[0005] 背景
[0006] 闪存是非易失性存储器(NVM),这是特定类型的电可擦可编程只读存储器 (EEPR0M)。一种通常使用的类型的闪存技术是NAND闪存。NAND闪存每个单元需要小的芯 片面积,通常被分成一个或多个存储体或平面。每一个存储体都被分成块;每一个块都被分 成页面。每一个页面都包括用于存储用户数据、纠错码(ECC)信息或两者的若干个字节。
[0007] 对于NAND设备,有三个基本操作:读取、写入和擦除。一页一页地执行读和写操 作。页面大小一般是2N字节的用户数据(加上ECC信息的额外的字节),其中,N是整数,每 个页面,有典型的用户数据页面大小,例如,2, 048字节(2KB),4, 096字节(4KB),8, 192字节 (8KB)或更多。"读取单位"是可以从NVM中读取的并由ECC校正的数据以及对应的ECC信 息的最小的量,并通常可以在4K比特和32K比特之间(例如,每个页面,一般有整数个读取 单位)。页面通常以块排列,逐块地执行擦除操作。典型的块大小是,例如,每块有64、128 或更多个页面。页面必须按顺序写入,通常从块内的低位地址到高位地址。直到块被擦除 之前,不能重写较低的地址。与每一个页面相关联的还有备用区(通常,100 - 640字节),一 般用于存储ECC信息和/或用于存储器管理的其他元数据。ECC信息一般用于检测并纠 正存储在页面中的用户数据中的错误,元数据可以用于在逻辑地址和物理地址之间进行映 射。在带有多个存储体的NAND闪存芯片中,可以支持允许来自每一个存储体的页面被基本 上并行地访问的多存储体操作。
[0008] NAND闪存在由浮动栅晶体管制成的存储器单元的阵列中存储信息。在没有外部 电源的情况下,这些晶体管能在大约几个月或几年的长的时间段内保留它们的电压电平, 也简称为电荷。在单级别单元(SLC)闪存中,每一个单元都存储一个比特的信息。在多级 别单元(MLC)闪存中,通过在施加于其单元的浮动栅的电荷的多个级别之间选择,每一个单 元都可以存储一个以上的比特。MLC NAND闪存使用多个电压电平/单元,带有串行链接的 晶体管布局,以使用相同数量的晶体管存储更多比特。如此,分别地考虑,每一个单元都具 有对应于被存储在单元中的逻辑比特值的特定编程的电荷(例如,对于SLC闪存,0或1 ;对 于MLC闪存,00,01,10,11 ),基于每一个单元的一个或多个阈值电压,读取这些单元。然而, 增大每个单元的比特数量会增大单元与单元干扰以及保留噪声,从而增大读取错误的可能 性,如此,增大该系统的错码率(BER)。进一步地,每一个单元的读取的阈值电压分布会在 NVM的操作时间内变化,例如,由于读取干扰、写入干扰、保留丢失、单元老化以及过程、电压 以及温度(PVT)变化,也会增大BER。
[0009] 如上文所描述的,典型的NVM要求先擦除块然后才能将新的数据写入到块中。如 此,诸如使用一个或多个NVM芯片的固态磁盘(SSD)之类的NVM系统,通常周期性地启动"垃 圾回收"过程,以擦除"陈旧的"或过时的数据,以防止闪存被主要是过时的数据填充,这将 缩小实现的闪存容量。然而,在设备故障之前,NVM块只能被擦除有限的次数。例如,SLC闪 存只能被擦除大约100, 〇〇〇次,而MLC闪存只能被擦除大约10, 000次。因此,在NVM的使 用寿命(例如,在NAND闪存的额定的数量的编程/擦除(P/E)周期内),NVM磨损,闪存块将 发生故障,并变得无法使用。NVM中的块故障类似于硬盘驱动器(HDD)中的扇区故障。典型 的NVM系统还可以执行磨损平衡,以尽可能均匀地在NVM的所有块上分布P/E周期。如此, 在NVM系统的寿命内,随着不好的块的数量增大和/或用于系统数据要求(例如,逻辑到物 理转换表、日志、元数据、ECC,等等)的存储量增大,总的存储容量缩小。如此,在垃圾回收 过程中,减少被写入到NVM的数据量是重要的。
[0010] 在垃圾回收过程中,块中的仍有效的用户数据在后台进程中被移动到存储介质上 的新位置。"有效"用户数据可以是被写入了至少一次的任何地址,即使主机设备不再使用 此数据。为减少在垃圾回收过程中重写的"有效的"但不再需要的数据的量,某些存储协议 支持使NVM能将以前保存的数据的块指定为不需要的或无效以便块在垃圾回收过程中不 移动并且可以使块可用于存储新的数据的命令。这样的命令的示例有SATA "修整"(数据 集管理)命令、SCSI UNMAP命令、MultiMediaCard (MMC) "擦除"命令,以及安全数字(SD) 卡"擦除"命令。一般而言,这样的命令会改善NVM性能,以便完全修整的NVM具有接近于 相同类型的新制造的(即,空的)NVM的性能的性能。然而,同时对于大量的块执行这些命令 可能很费时,并降低NVM的操作效率。


【发明内容】

[0011] 提供本
【发明内容】
是为了以精简的形式介绍将在以下详细描述中进一步描述的一 些概念。本
【发明内容】
并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用 于限制所要求保护的主题的范围。
[0012] 所描述的实施例为固态介质提供介质控制器。介质控制器包括控制处理器,其接 收来自主机设备的包括至少一个逻辑地址和地址范围的请求。响应于请求,控制处理器判 断接收到的请求是否是作废请求。如果接收到的请求类型是作废请求,则控制处理器使用 介质控制器的映射来确定与逻辑地址和范围相关联的映射的一个或多个条目。与每一个映 射条目相关联的映射中的指示符被设置成表示这些映射条目将被作废。控制处理器向主机 设备确认该作废请求完成,并在介质控制器的空闲模式下基于将被作废的映射条目更新空 闲空间计数。使与作废的映射条目相关联的物理地址可用,以便重复用于来自主机设备的 随后的请求。

【专利附图】

【附图说明】
[0013] 通过下面的详细描述,所附的权利要求,以及附图,所描述的实施例的其他方面、 特点、以及优点将变得更加完全显而易见,在附图中,类似的参考编号标识类似或相同的元 素。
[0014] 图1示出了根据示例性实施例的闪存存储系统的框图;
[0015] 图2示出了单个标准闪存单元的示例性功能框图;
[0016] 图3示出了根据示例性实施例的示例性NAND MLC闪存单元;
[0017] 图4示出了图1的闪存存储系统的闪存的示例性布局的框图;
[0018] 图4示出了图1的闪存存储系统的固态介质的示例性布局的框图;
[0019] 图5不出了图1的闪存存储系统的逻辑块号(LBN)的逻辑页号(LPN)部分的不例 性映射的框图;
[0020] 图6示出了图1的闪存存储系统的示例性两级别映射结构的框图;
[0021] 图7示出了图1的闪存存储系统所使用的示例性映射页眉的框图;以及
[0022] 图8示出了图1的闪存存储系统所使用的兆-修整(Mega-TRM)操作的示例性流 程图。

【具体实施方式】
[0023] 所描述的实施例为固态介质提供介质控制器。介质控制器包括控制处理器,其接 收来自主机设备的包括至少一个逻辑地址和地址范围的请求。响应于该请求,控制处理器 判断接收到的请求是否是作废请求。如果接收到的请求类型是作废请求,则控制处理器使 用介质控制器的映射来确定与逻辑地址和范围相关联的映射的一个或多个条目。与每一个 映射条目相关联的映射中的指示符被设置成表示这些映射条目将被作废。控制处理器向主 机设备确认该作废请求完成,并在介质控制器的空闲模式下基于将被作废的映射条目更新 空闲空间计数。使与作废的映射条目相关联的物理地址可用,以便重复用于来自主机设备 的随后的请求。
[0024] 表1定义了为有助于理解所描述的实施例在整个说明书中使用的缩写词列表: [0025]

【权利要求】
1. 一种处理由与固态介质和主机设备进行通信的介质控制器接收到的主机请求的方 法,所述方法包括: 由所述介质控制器,接收来自所述主机设备的请求,所述请求包括至少一个逻辑地址 和地址范围; 响应于接收所述请求: 判断所接收到的请求是否是作废请求,如果所接收到的请求类型是作废请求: 使用所述介质控制器的映射,来确定与所述固态介质的所述至少一个逻辑地址和地址 范围相关联的所述映射的一个或多个条目; 在所述映射中标记与所述映射条目中的每一个相关联的指示符,所述指示符表示所述 一个或多个映射条目将被作废; 向所述主机设备确认所述作废请求完成; 在所述介质控制器的空闲模式中,基于将被作废的所述一个或多个映射条目来更新所 述介质控制器的空闲空间计数;W及 使与被作废的映射条目相关联的所述物理地址可用,W便重复用于来自所述主机设备 的随后的请求。
2. 如权利要求1所述的方法,其特征在于,所述映射是包括第一级别映射和第二级别 映射的多级别映射,所述方法还包括: 将多个第二级别的映射页面的多个条目中的每一个与所述固态介质的物理地址相关 联;W及 将所述第一级别映射的多个条目中的每一个与第二级别映射页面相关联,由此,将所 述至少一个逻辑地址和地址范围与所述第二级别映射条目中的至少一个相关联。
3. 如权利要求2所述的方法,其特征在于: 每一个第二级别映射条目都包括有效指示;W及 每一个第一级别的映射条目都包括所述第二级别映射页面的对应的一个的地址、对应 于与所述第一级别映射条目相关联的所述第二级别映射的一个或多个条目的有效指示、W 及被配置成指出所述第二级别映射的条目何时作废但不可用于被写入的待处理(TBP)指示 符;所述方法还包括: 所述方法还包括: 通过设置与所述第二级别映射页面的完全在所述请求的所述地址范围内的那些页面 相关联的所述第一级别映射中的所述TBP指示符的特定指示符,使所述第二级别映射的条 目作废。
4. 如权利要求3所述的方法,所述方法还包括: 通过直接修整所述第二级别映射页面的只部分地在所述请求的所述地址范围内的那 些页面的条目,来使所述第二级别映射的条目作废。
5. 如权利要求3所述的方法,其特征在于,如果为给定的第二级别映射设置了所述TBP 指示符,则所述方法还包括: 推迟处理对所述给定第二级别映射的所述作废请求,直到对于所述给定第二级别映射 接收到随后的作废请求,由此,缩短所述作废请求的处理时间并减少对所述固态介质的写 入操作W更新所述给定第二级别映射。
6. 如权利要求3所述的方法,其特征在于,使所述第二级别映射的被作废的条目中的 每一个可用W便重复用于来自所述主机设备的随后的请求的步骤包括: 如果设置,则清除所述相关联的TBP指示符;W及 如果设置,则清除所述相关联的有效指示符。
7. 如权利要求3所述的方法,其特征在于,还包括: 将所述第一级别映射存储在所述介质控制器的映射存储器中; 将全部所述第二级别映射页面存储在所述固态介质中;W及 将至少所述第二级别映射页面的子集临时地存储在禪合到所述介质控制器的控制处 理器的映射缓存中。
8. 如权利要求1所述的方法,其特征在于,所述介质控制器的所述空闲空间计数包括 具有多个条目的块已用空间表,所述方法还包括: 将所述块已用空间表的每一个条目与所述固态介质的多个物理区域中的一个相关联。
9. 如权利要求1所述的方法,其特征在于,所述作废请求是下列各项中的一项;串行高 级技术附件(SATA)"修整"命令、小型计算机系统接口(SCSI) UNMAP命令、MultiMediaCard (MMC)"擦除"命令、W及安全数字(SD)卡"擦除"命令。
10. 如权利要求3所述的方法,其特征在于,每一个第一级别映射条目包括至少一个 "修整"地址范围指示符,被配置成跟踪相关联的第二级别映射的在所述请求的范围内的部 分。
【文档编号】G06F12/02GK104346287SQ201410056341
【公开日】2015年2月11日 申请日期:2014年2月19日 优先权日:2013年8月9日
【发明者】E·T·科恩, L·巴瑞乌丁 申请人:Lsi公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1