数据访问系统、数据访问方法和存储介质技术方案

技术编号:36806789 阅读:12 留言:0更新日期:2023-03-09 00:19
本公开提供一种数据访问系统、数据访问方法和存储介质。数据访问系统包括主机、存储器控制器和闪存,存储器控制器包括:闪存转换层,被配置为从主机接收对闪存的包括逻辑块地址的读命令,基于逻辑块地址确定区域标识和逻辑块地址偏移量;随机存取存储器,被配置为存储包括被布置在与多个超级块相对应的多个区域中的多个闪存物理地址的映射表;地址管理电路,被配置为通过根据区域标识和逻辑块地址偏移量访问映射表,确定与逻辑块地址相对应的闪存物理地址,确定与闪存物理地址相对应的页码和块标识,页码和块标识用于通过访问存储在与块标识相对应的块中的与页码相对应的页中的数据,执行读命令。本公开提高了执行存储器访问操作的总体效率。问操作的总体效率。问操作的总体效率。

【技术实现步骤摘要】
数据访问系统、数据访问方法和存储介质


[0001]本公开通常涉及对闪存(flash memory)的数据访问,更具体地,涉及一种数据访问系统、数据访问方法和存储介质。

技术介绍

[0002]对闪存的存储器访问包括读操作和写操作。虽然写操作通常以串行方式执行,但读操作通常涉及对闪存的随机访问,并且需要使用宝贵的硬件处理资源来计算闪存上的与逻辑地址相对应的物理位置。当坏块在闪存中开始累积时,这样的计算可能变得特别繁琐,这导致计算复杂化。需要减少对诸如固态驱动器(solid

state drive,SSD)的闪存驱动器执行读操作过程中的这一重大瓶颈。

技术实现思路

[0003]有鉴于此,本公开的一个目的是提高对闪存执行读操作的吞吐量和执行存储器访问操作的总体效率。
[0004]根据一个方面,一种系统包括:主机;存储器控制器,与主机通信耦合;以及闪存,与存储器控制器通信耦合;闪存包括多个块,多个块被分组为多个超级块,并且多个块中的每个块包括多个页。其中,存储器控制器包括:闪存转换层,被配置为:从主机接收对闪存的读命令,其中读命令包括逻辑块地址(logic block address,LBA),并且基于逻辑块地址确定区域标识和逻辑块地址偏移量;随机存取存储器(random access memory,RAM),被配置为存储映射表,其中映射表包括多个闪存物理地址(flash physical address,FPA),多个闪存物理地址被布置在与多个超级块相对应的多个区域中;以及地址管理电路,被配置为:从闪存转换层接收区域标识和逻辑块地址偏移量,通过根据区域标识和逻辑块地址偏移量访问存储在随机存取存储器中的映射表,确定与逻辑块地址相对应的闪存物理地址,并且确定与闪存物理地址相对应的页码和块标识,页码和块标识用于通过访问存储在多个块中的与块标识相对应的块中的多个页中的与页码相对应的页中的数据,执行读命令。
[0005]在一些实施例中,地址管理电路在现场可编程门阵列(field programmable gate array,FPGA)或专用集成电路(application

specific integrated circuit,ASIC)上实现。
[0006]在一些实施例中,闪存包括固态驱动器(solid

state drive,SSD)。
[0007]在一些实施例中,响应于闪存被上电,生成映射表并将映射表存储在随机存取存储器中。
[0008]在一些实施例中,通过跳过多个超级块中的一个或多个坏块来生成映射表。
[0009]在一些实施例中,随机存取存储器是一个或多个双倍数据速率(double data rate,DDR)同步动态随机存取存储器(synchronous dynamic random access memory,SDRAM)。
[0010]在一些实施例中,地址管理电路还被配置为并行地确定与多个逻辑块地址偏移量
相对应的多个闪存物理地址。
[0011]在一些实施例中,存储器控制器是用于闪存的开放通道控制器。
[0012]根据另一个方面,一种方法包括:通过存储器控制器中的闪存转换层,从主机接收对闪存的读命令,其中读命令包括逻辑块地址(logic block address,LBA),闪存包括多个块,多个块被分组为多个超级块,并且多个块中的每个块包括多个页;通过闪存转换层,基于逻辑块地址确定区域标识和逻辑块地址偏移量;通过地址管理电路,通过根据区域标识和逻辑块地址偏移量访问存储在随机存取存储器中的映射表,确定与逻辑块地址相对应的闪存物理地址(flash physical address,FPA),其中映射表包括多个闪存物理地址,多个闪存物理地址被布置在与多个超级块相对应的多个区域中;以及通过地址管理电路,确定与闪存物理地址相对应的页码和块标识,其中页码和块标识用于通过访问存储在多个块中的与块标识相对应的块中的多个页中的与页码相对应的页中的数据,执行读命令。
[0013]根据另一个方面,一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质存储指令,当由一个或多个处理器执行指令时,使得一个或多个处理器执行操作,该操作包括:通过存储器控制器中的闪存转换层,从主机接收对闪存的读命令,其中读命令包括逻辑块地址(logic block address,LBA),闪存包括多个块,多个块被分组为多个超级块,并且多个块中的每个块包括多个页;通过闪存转换层,基于逻辑块地址确定区域标识和逻辑块地址偏移量;通过地址管理电路,通过根据区域标识和逻辑块地址偏移量访问存储在随机存取存储器中的映射表,确定与逻辑块地址相对应的闪存物理地址(flash physical address,FPA),其中映射表包括多个闪存物理地址,多个闪存物理地址被布置在与多个超级块相对应的多个区域中;以及通过地址管理电路,确定与闪存物理地址相对应的页码和块标识,其中页码和块标识用于通过访问存储在多个块中的与块标识相对应的块中的多个页中的与页码相对应的页中的数据,执行读命令。
[0014]本公开实施例中,每个区域被映射到对应的超级块,一个超级块中所有块的相同页形成超级页,将各个区域内部的物理地址通过超级页的概念进行抽象,每个超级页中相同偏移量的位置处对应的块号、通道等信息都是一致的,基于此,在映射表中使用区域标识和LBA偏移量标识FPA,压缩了将LBA转换为FPA的映射的表项。使用映射表,以及通过简单计算确定与逻辑块地址相对应的闪存物理地址所对应的页码和块标识,利用页码和块标识访问存储在对应的块中对应的页中的数据,执行读命令,这样,将超级块中存在坏块考虑在内,不再需要投入宝贵的计算资源(例如CPU)来执行读操作中的每个LBA的地址转换的计算,且CPU免于执行映射表查找,导致对闪存执行读操作的吞吐量更高,提高了执行存储器访问操作的总体效率。此外,由于在每次NAND闪存上电或变得对主机可用时生成映射表,因此硬件系统灵活地与不同类型的并且具有不同坏块分布的NAND闪存驱动器一起工作,提高了对各种NAND闪存的兼容性。
附图说明
[0015]在参考附图考虑以下描述和所附权利要求书的情况下,本公开的系统、方法和硬件设备的这些和其他特征,结构的相关元件的操作方法和功能以及部件的组合和制造的经济性将变得更加明显。附图构成本说明书的一部分,其中相似的附图标记表示附图中相关的部分。然而,应当理解的是,附图仅用于说明和描述的目的,而不旨在定义本专利技术的限制。
[0016]图1示出根据本公开的一些实施例的示例性的具有分区命名空间(zoned namespace)的闪存驱动器存储器系统的架构的示意图。
[0017]图2示出根据本公开的一些实施例的示例性的具有分区命名空间的闪存驱动器的工作流的示意图。
[0018]图3示出根据本公开的一些实施例的示例性的具有分区命名空间的闪存驱动器的物理地址布置的示意图。
[0019]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据访问系统,包括:主机;存储器控制器,与所述主机通信耦合;以及闪存,与所述存储器控制器通信耦合,所述闪存包括多个块,所述多个块被分组为多个超级块,所述多个块中的每个块包括多个页;其中所述存储器控制器包括:闪存转换层,被配置为:从所述主机接收对所述闪存的读命令,其中所述读命令包括逻辑块地址;以及基于所述逻辑块地址确定区域标识和逻辑块地址偏移量;随机存取存储器,被配置为存储映射表,其中所述映射表包括多个闪存物理地址,所述多个闪存物理地址被布置在与所述多个超级块相对应的多个区域中;以及地址管理电路,被配置为:从所述闪存转换层接收所述区域标识和所述逻辑块地址偏移量;通过根据所述区域标识和所述逻辑块地址偏移量访问存储在所述随机存取存储器中的所述映射表,确定与所述逻辑块地址相对应的闪存物理地址;以及确定与所述闪存物理地址相对应的页码和块标识,所述页码和所述块标识用于通过访问存储在所述多个块中的与所述块标识相对应的块中的所述多个页中的与所述页码相对应的页中的数据,执行所述读命令。2.根据权利要求1所述的数据访问系统,其中,所述地址管理电路在现场可编程门阵列或专用集成电路上实现。3.根据权利要求1所述的数据访问系统,其中,所述闪存包括固态驱动器。4.根据权利要求1所述的数据访问系统,其中,响应于所述闪存被上电,生成所述映射表并将所述映射表存储在所述随机存取存储器中。5.根据权利要求1所述的数据访问系统,其中,通过跳过所述多个超级块中的一个或多个坏块来生成所述映射表。6.根据权利要求1所述的数据访问系统,其中,所述随机存取存储器是一个或多个双倍数据速率同步动态随机存取存储器。7.根据权利要求1所述的数据访问系统,其中,所述地址管理电路还被配置为并行地确定与多个逻辑块地址偏移量相对应的多个闪存物理地址。8.根据权利要求1所述的数据访问系统,其中,所述存储器控制器是用于所述闪存的开放通道控制器。9.一种数据访问方法,包括:通过存储器控制器中的闪存转换层,从主机接收对闪存的读命令,其中所述读命令包括逻辑块地址,所述闪存包括多个块,所述多个块被分组为多个超级块,所述多个块中的每个块包括多个页;通过所述闪存转换层,基于所述逻辑块地址确定区域标识和逻辑块地址偏移量;通过地址管理电路,通过根据所述区域标识和所述逻辑块地址偏移量访问存储在随机存取存储器中的映射表,确定与所述逻辑块地址相对应的闪存物理地址,其中所述映射表包括多个闪存物理地址,所述多个闪存物理地址被布置在与所述多个超级块相对应的多个
区域中;以及通过所述地址管理电路,确定与所述闪存物理地址相对应...

【专利技术属性】
技术研发人员:高祥薛菲金加靖吴文涛恒久许玉铭王记锋
申请(专利权)人:平头哥上海半导体技术有限公司
类型:发明
国别省市:

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

1