【技术实现步骤摘要】
本专利技术涉及存储,具体涉及一种适用于配置有可复写式非易失性存储器模块的存储装置的基于aipr(异步独立平面读取,asynchronous independent planeread)的数据读取方法及存储器控制器。
技术介绍
1、非易失性存储器(non-volatile memory)是指当电流断掉后,所存储的数据不会消失的电脑存储器,具有数据非易失性、省电、体积小与无机械结构等优点,被广泛地应用于各种电子装置中。
2、常见的非易失性存储器(non-volatile memory)为配置闪存(nand flash)的存储器(如固态硬盘),其具有读写速度高,不须机械化结构来进行数据的存取等特点。
3、闪存芯片的存储组织通常包括die(芯片)/lun(逻辑单元,logical unitnumber)、plane(平面)、block(块)和page(页)。其中,lun是闪存中独立执行命令的最小单元。一个die/lun可以包含多个平面,每个平面由数百乃至数千个block构成。
4、目前,ssd主要通过命令+地址的方式对闪存进行读、写、擦除等操作。对于读操作,主流方式包括single-plane read(单平面读取,sp)、multi-plane read(多平面读取,mp)以及asynchronous independent plane read(异步独立平面读取,aipr)。
5、sp读取操作每次仅对一个芯片中一个平面执行读操作。mp虽然能够对一个芯片中多个平面执行操作,但需要设置相同
技术实现思路
1、本专利技术的目的是提供一种数据读取方法及存储器控制器,旨在解决现有技术中aipr命令执行效率不高的问题,充分发挥闪存芯片的多平面并发读取能力,提高存储装置的命令执行速率和数据通道利用率。
2、本专利技术的一或多个实施例提供一种基于异步独立平面读取(asynchronousindependent plane read,aipr)的数据读取方法,适用于配置有可复写式非易失性存储器模块的存储装置。所述方法包括:将来自主机系统的所述多个读取命令分别存储到一或多个缓存池,其中所述一或多个缓存池分别对应到不同的芯片使能引脚;当满足预设条件时,对所述一或多个缓存池中的第一缓存池中的多个第一读取命令执行预排序操作,以将所述多个第一读取命令分组为多个读取命令组,其中属于同一个读取命令组中的一或多个第二读取命令分别对应到所述存储装置中同一芯片的不同平面,且所述一或多个第二读取命令各自所对应的存储单元属于相同的存储单元类型;根据所述第一缓存池的所述多个读取命令组,生成对应所述第一缓存池的执行命令序列,以及根据所述执行命令序列,执行所述多个命令,以完成对应所述多个第一读取命令的并行读取操作。
3、在本专利技术的一或多个实施例中,其中所述预设条件包括以下至少一项:所述第一缓存池中存储的所述多个第一读取命令的数量达到预定阈值;或所述第一缓存池中最早存入的第一读取命令的等待时间达到预定时间阈值。
4、在本专利技术的一或多个实施例中,其中所述方法还包括:根据已记录的映射信息,获取每个读取命令的物理地址;以及根据所述读取命令的所述物理地址,获取所述读取命令的所述物理地址的物理特性,其中所述物理特性包括所述芯片使能引脚、所述平面、芯片及所述存储单元类型。
5、在本专利技术的一或多个实施例中,其中执行所述预排序操作的步骤包括:根据所述多个第一读取命令各自所对应的所述存储单元类型,分组所述多个第一读取命令以获取一或多个存储单元类型命令组,其中属于同一个存储单元类型命令组的一或多个第一读取命令对应相同的所述存储单元类型;根据同一个存储单元类型命令组内的所述一或多个第一读取命令各自所对应的所述芯片,分组同一个存储单元类型命令组内的所述一或多个第一读取命令以获取一或多个芯片命令组,其中属于同一个芯片命令组的一或多个第一读取命令对应相同的所述芯片;以及将每个芯片命令组内各自指向不同平面的一或多个第二读取命令编制为同一个读取命令组,以获取所述多个读取命令组,其中每个读取命令组内的一或多个第二读取命令的处理顺序是基于对应的平面的顺序来设定。
6、在本专利技术的一或多个实施例中,其中所述执行命令序列内的多个命令包括下列类型:读取触发命令、轮询命令及数据访问命令,其中生成所述执行命令序列的步骤包括:根据所述多个读取命令组的编制顺序,依次对每个读取命令组执行命令序列生成操作,其中在对所述多个读取命令组中的当前读取命令组执行所述命令序列生成操作时,根据所述当前读取命令组的一或多个当前第二读取命令的处理顺序,生成对应每个当前第二读取命令的所述读取触发命令、所述轮询命令和所述数据访问命令,以获取对应所述当前读取命令组的第一命令序列;以及将所生成的所述第一命令序列存入所述执行命令序列。
7、在本专利技术的一或多个实施例中,其中所述方法还包括:在对所述多个读取命令组中的当前读取命令组执行所述命令序列生成操作时,检查排序在当前读取命令组后的下一个读取命令组,以获取所述下一个读取命令组中的一或多个下一个第二读取命令各自所指向的所述平面及所述平面的工作状态,其中所述工作状态包括空闲状态和繁忙状态;以及根据所述一或多个下一个第二读取命令各自所指向的所述平面的所述工作状态,调整所述一或多个下一个第二读取命令的处理顺序。
8、在本专利技术的一或多个实施例中,其中获取所述下一个读取命令组中的所述一或多个下一个第二读取命令各自所指向的所述平面及所述平面的所述工作状态的步骤包括:若所述一或多个下一个第二读取命令的其中一个所指向的第一平面未被所述当前读取命令组中的所述一或多个当前第二读取命令所指向,判定所述第一平面的所述工作状态为所述空闲状态;以及若所述一或多个下一个第二读取命令的其中一个所指向的第二平面已被所述当前读取命令组中的所述一或多个当前第二读取命令所指向,判定所述第二平面的所述工作状态为所述繁忙状态。
9、在本专利技术的一或多个实施例中,其中调整所述一或多个下一个第二读取命令的处理顺序的步骤包括:优先处理所述一或多个下一个第二读取命令中对应空闲状态的所述第二平面的目标下一个第二读取命令。
10、在本专利技术的一或多个实施例中,其中所述方法还包括:在对所述多个读取命令组中的当前读取命令组执行所述命令序列生成操作时,检查排序在当前读取命令组后的下一个读取命令组,以获取所述下一个读取命令组中的一或多个下一个第二读取命令各自所指向的所述平面及所述平面的工作状态,其中所述工作状态包括空闲状态和繁忙状态;获取所述一或多个下一个第二读取命令中对应为所述空闲状态的所述目标平面的目标下一个第二读取命令;生成对应所述目标下一个第二读取命令的目标读取触发命令,目标轮询命令及目标数据访问命本文档来自技高网...
【技术保护点】
1.一种数据读取方法,适用于配置有可复写式非易失性存储器模块的存储装置,且所述存储装置支持异步独立平面读取,其特征在于,所述方法包括:
2.根据权利要求1所述的数据读取方法,其特征在于,所述预设条件包括以下至少一项:
3.根据权利要求1所述的数据读取方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的数据读取方法,其特征在于,执行所述预排序操作的步骤包括:
5.根据权利要求3所述的数据读取方法,其特征在于,其中所述执行命令序列内的多个命令包括下列类型:读取触发命令、轮询命令及数据访问命令,其中生成所述执行命令序列的步骤包括:
6.根据权利要求5所述的数据读取方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的数据读取方法,其特征在于,其中获取所述下一个读取命令组中的所述一或多个下一个第二读取命令各自所指向的所述平面及所述平面的所述工作状态的步骤包括:
8.根据权利要求7所述的数据读取方法,其特征在于,其中调整所述一或多个下一个第二读取命令的处理顺序的步骤包括:
9.根据
10.根据权利要求5所述的数据读取方法,其特征在于,所述方法还包括:
11.根据权利要求5所述的数据读取方法,其特征在于,根据所述当前读取命令组的所述一或多个当前第二读取命令的所述处理顺序,生成对应每个当前第二读取命令的所述读取触发命令、所述轮询命令和所述数据访问命令的步骤包括:
12.根据权利要求11所述的数据读取方法,其特征在于,将所生成的所述第一命令序列存入所述执行命令序列的步骤包括:
13.根据权利要求5所述的数据读取方法,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
14.根据权利要求5所述的数据读取方法,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
15.一种存储器控制器,用于控制配置有可复写式非易失性存储器模块的存储装置,其特征在于,所述存储器控制器包括:
16.根据权利要求15所述的存储器控制器,其特征在于,所述预设条件包括以下至少一项:
17.根据权利要求15所述的存储器控制器,其特征在于,所述处理器还被配置以:
18.根据权利要求17所述的存储器控制器,其特征在于,执行所述预排序操作的步骤包括:
19.根据权利要求18所述的存储器控制器,其特征在于,其中所述执行命令序列内的多个命令包括下列类型:读取触发命令、轮询命令及数据访问命令,其中生成所述执行命令序列的步骤包括:
20.根据权利要求19所述的存储器控制器,其特征在于,所述处理器还被配置以:
21.根据权利要求20所述的存储器控制器,其特征在于,其中获取所述下一个读取命令组中的所述一或多个下一个第二读取命令各自所指向的所述平面及所述平面的所述工作状态的步骤包括:
22.根据权利要求21所述的存储器控制器,其特征在于,其中调整所述一或多个下一个第二读取命令的处理顺序的步骤包括:
23.根据权利要求19所述的存储器控制器,其特征在于,所述处理器还被配置以:
24.根据权利要求19所述的存储器控制器,其特征在于,所述处理器还被配置以:
25.根据权利要求19所述的存储器控制器,其特征在于,根据所述当前读取命令组的所述一或多个当前第二读取命令的所述处理顺序,生成对应每个当前第二读取命令的所述读取触发命令、所述轮询命令和所述数据访问命令的步骤包括:
26.根据权利要求25所述的存储器控制器,其特征在于,将所生成的所述第一命令序列存入所述执行命令序列的步骤包括:
27.根据权利要求19所述的存储器控制器,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
28.根据权利要求19所述的存储器控制器,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
...【技术特征摘要】
1.一种数据读取方法,适用于配置有可复写式非易失性存储器模块的存储装置,且所述存储装置支持异步独立平面读取,其特征在于,所述方法包括:
2.根据权利要求1所述的数据读取方法,其特征在于,所述预设条件包括以下至少一项:
3.根据权利要求1所述的数据读取方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的数据读取方法,其特征在于,执行所述预排序操作的步骤包括:
5.根据权利要求3所述的数据读取方法,其特征在于,其中所述执行命令序列内的多个命令包括下列类型:读取触发命令、轮询命令及数据访问命令,其中生成所述执行命令序列的步骤包括:
6.根据权利要求5所述的数据读取方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的数据读取方法,其特征在于,其中获取所述下一个读取命令组中的所述一或多个下一个第二读取命令各自所指向的所述平面及所述平面的所述工作状态的步骤包括:
8.根据权利要求7所述的数据读取方法,其特征在于,其中调整所述一或多个下一个第二读取命令的处理顺序的步骤包括:
9.根据权利要求5所述的数据读取方法,其特征在于,所述方法还包括:
10.根据权利要求5所述的数据读取方法,其特征在于,所述方法还包括:
11.根据权利要求5所述的数据读取方法,其特征在于,根据所述当前读取命令组的所述一或多个当前第二读取命令的所述处理顺序,生成对应每个当前第二读取命令的所述读取触发命令、所述轮询命令和所述数据访问命令的步骤包括:
12.根据权利要求11所述的数据读取方法,其特征在于,将所生成的所述第一命令序列存入所述执行命令序列的步骤包括:
13.根据权利要求5所述的数据读取方法,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
14.根据权利要求5所述的数据读取方法,其特征在于,对所述多个读取命令组执行所述命令序列生成操作包括:
15.一种存储...
【专利技术属性】
技术研发人员:李智威,彭崇,王鑫,程旭辉,洪婉君,张洋,胡健,
申请(专利权)人:合肥开梦科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。