用于存储器装置的存储地址重新映射的方法和系统制造方法及图纸

技术编号:8105661 阅读:202 留言:0更新日期:2012-12-21 04:19
本发明专利技术公开了大容量存储器系统和在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法。该大容量存储器系统包括:可重新编程的非易失性存储器单元,该存储器单元被布置在能一起擦除的多个存储器单元块中;接口,适用于从主机系统接收数据,该数据以主机逻辑块地址(LBA)地址来定址;以及与该接口通信的控制器,该控制器被配置为分配连续存储LBA地址的块用于从该主机系统接收该数据,且被配置为将用于所接收的数据的主机LBA地址的每个重新映射到该连续存储LBA地址的块,其中,该控制器被配置为:将每个连续存储LBA地址顺序地按所接收的数据被接收的次序分配给所接收的数据,而不考虑与所接收的数据相关的主机LBA地址。

【技术实现步骤摘要】

本申请总体上涉及操作系统和存储器装置之间的数据通信。更具体地,本申请涉及诸如可重新编程非易失性半导体闪存存储器的存储器系统、以及连接或可连接该存储器的主机装置的操作。
技术介绍
当将数据写入传统的闪存数据存储器系统时,主机一般将独有的逻辑地址分配给 存储器系统的连续虚拟地址空间中的扇区、簇或其他数据单位。主机将数据写入存储器系统的逻辑地址空间中的地址,并从其读取数据。然后,存储器系统在逻辑地址空间和存储器的物理块或元块(metablock)之间共同地映射数据,其中数据被存储在与逻辑地址空间中的范围(range)相对应的固定逻辑组中。通常,每个固定逻辑组被存储在存储器系统的分离的物理块中。存储器系统保持跟踪逻辑地址空间如何映射到物理存储器中,但主机不知道这些。主机保持跟踪其数据文件在逻辑地址空间中的地址,但存储器系统在不知道该映射的情况下操作。以此方式操作的存储器系统的缺点在于破碎化(fragmentation)。例如,被写入根据NTFS文件系统操作的个人计算机(PC)中的固态盘(SSD)驱动器的数据常常具有如下特性驱动器的逻辑地址空间中的广泛分布的位置处的连续地址的短区段(short run)的模式。即使主机所使用的文件系统对于连续文件的新数据分配顺序的地址,删除的文件的任意模式也导致可用的空闲存储器区域破碎化,使得它不能以分块的单元来分配给新文件数据。闪存存储器管理系统一般通过将连续逻辑地址块映射到物理地址的元块来操作。当来自主机的短区段的地址被单独更新时,包含该区段的地址的整个逻辑块必须保持它对单个元块的长期映射。这需要逻辑到物理存储器管理系统中的无用数据(garbage)收集操作,其中逻辑块内主机未更新的所有数据被重新放置(relocate),以将其与更新的数据相整合。这是非常大的开销,可能严重约束了写速度和存储器寿命。
技术实现思路
在与已知盘驱动器中所使用的磁存储器相比,闪存存储器目前所具有的有限次的写循环的情况下,期望利用闪存存储器改善系统性能,以补偿短的逻辑地址区段和破碎化的问题。为解决这一点,描述了用于存储器装置中的存储地址重新映射的方法和系统。根据本专利技术的ー个方面,提供ー种大容量存储器系统,包括可重新编程的非易失性存储器単元,所述存储器単元被布置在能一起擦除的多个存储器单元块中;接ロ,适用于从主机系统接收数据,所述数据以主机逻辑块地址(LBA)地址来定址;以及与所述接ロ通信的控制器,所述控制器被配置为分配连续存储LBA地址的块用于从所述主机系统接收所述数据,且被配置为将用于所接收的数据的主机LBA地址的每个重新映射到所述连续存储LBA地址的块,其中,所述控制器被配置为将每个连续存储LBA地址顺序地按所接收的数据被接收的次序分配给所接收的数据,而不考虑与所接收的数据相关的主机LBA地址。根据本专利技术的另一方面,提供ー种大容量存储器系统,所述系统包括可重新编程的非易失性存储器単元,所述存储器単元被布置在能一起擦除的多个存储器单元块中;接ロ,适用于从主机系统接收以主机逻辑块地址(LBA)格式来定址的数据;以及与所述接ロ通信的控制器,所述控制器包括处理器可执行指令,用于执行如下步骤在所述大容量存储系统处从所述主机系统接收与主机逻辑块地址(LBA)地址相关的数据;按接收的次序连续地将接收的主机LBA地址重新映射到连续存储LBA地址的块;分配连续存储LBA地址的附加块,所述附加块在分配时不包含有效数据,且如果所述连续存储LBA地址的块被完全分配,连续地将剩余的接收的主机LBA地址重新映射到所述附加块;以及建立不包含有效数据的连续存储LBA地址的新块。 根据本专利技术的另一方面,提供一种在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法,该方法包括在所述大容量存储系统处从所述主机系统接收与主机逻辑块地址(LBA)地址相关的数据;按接收的次序、而不考虑主机LBA地址的次序,在具有连续物理地址的写入块的连续物理地址中存储所接收的数据;分配来自多个白色块的白色块,作为当所述写入块被完全编程时存储所接收的数据的下一写入块,多个白色块的每个包括仅包含未写容量的连续物理地址的块;更新存储地址表(SAT),其将所接收的数据的主机LBA地址映射到每个写入块中的物理地址,其中,所述SAT被维持在物理地址的至少ー个块中;以及建立新的白色块,其中,所述建立新的白色块包括从多个粉色块中选择粉色块,其中,多个粉色块的每个包括具有有效数据和废弃数据两者的完全编程的物理地址的连续块,其中,所选择的粉色块具有小于阈值量的有效数据;以及将来自所选粉色块的所有有效数据重新放置到重新放置块,其中,在重新放置来自所选粉色块的所有有效数据时,所选粉色块变为新的白色块。根据第一方面,描述了在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法。该方法包括在大容量存储系统处从主机系统接收与主机逻辑块地址(LBA)地址相关联的数据。分配连续存储LBA地址块来接收主机LBA地址,其中连续存储LBA地址块仅仅包含废弃数据。该方法还包括将所接收数据的每个主机LBA地址重新映射到连续存储LBA地址块,其中按照所接收数据被接收的次序,以连续的方式将每个存储LBA地址顺序地分派给所接收数据,而不论主机LBA地址如何。根据第二方面,描述了在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法。该方法包括从主机系统上的文件系统接收与主机逻辑块地址(LBA)地址相关联的数据。所接收的主机LBA地址被按接收的次序重新映射到连续存储LBA地址块,并且在分配时仅仅对未写容量定址的连续存储LBA地址附加块被分配,并且仅仅在连续存储LBA地址块被完全编程之后,剰余的所接收的主机LBA地址才被连续地重新映射到附加块。还创建仅仅对未写容量定址的连续存储LBA地址新块。在本专利技术的另一方面中,公开了在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法,包括在大容量存储系统处从主机系统接收与主机逻辑块地址(LBA)地址相关联的数据,以及将所接收的主机LBA地址按接收的次序连续地重新映射到连续存储LBA地址块。该方法还包括分配连续存储LBA地址附加块,该附加块在分配时仅仅对未写容量定址,并且仅仅在连续存储LBA地址块被完全编程吋,才将剩余的所接收的主机LBA地址连续地重新映射到附加块。另外,该方法还包括生成存储地址表,其在与主机LBA地址相关联的数据被重新映射到连续存储LBA地址时将主机LBA地址映射到存储LBA地址。根据另一方面,公开了在主机系统和可重新编程的非易失性大容量存储系统之间传输数据的方法,包括步骤在大容量存储系统上的应用处从主机系统接收与主机逻辑块地址(LBA)地址相关联的数据,以及将所接收的主机LBA地址按接收的次序连续地重新映射到连续存储LBA地址块。该方法还包括分配连续存储LBA地址附加块,该附加块在分配时仅仅对未写容量定址,并且仅仅在连续存储LBA地址块被完全编程吋,才将另外的所接收的主机LBA地址连续地重新映射到附加块。还包括如下步骤在接收与先前接收的主机LBA地址相关联的新数据之前,标识目前对有效和废弃数据定址的连续存储LBA地址的先前完全编程的块;以及从所标识的连续存储LBA地址的先前完全编程的块,创建仅本文档来自技高网
...

【技术保护点】
一种大容量存储器系统,包括:可重新编程的非易失性存储器单元,所述存储器单元被布置在能一起擦除的多个存储器单元块中;接口,适用于从主机系统接收数据,所述数据以主机逻辑块地址(LBA)地址来定址;以及与所述接口通信的控制器,所述控制器被配置为分配连续存储LBA地址的块用于从所述主机系统接收所述数据,且被配置为将用于所接收的数据的主机LBA地址的每个重新映射到所述连续存储LBA地址的块,其中,所述控制器被配置为:将每个连续存储LBA地址顺序地按所接收的数据被接收的次序分配给所接收的数据,而不考虑与所接收的数据相关的主机LBA地址。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:艾伦W辛克莱巴里赖特
申请(专利权)人:桑迪士克科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1