存储装置数据读写方法、存储器存储装置及存储器控制器制造方法及图纸

技术编号:38687566 阅读:14 留言:0更新日期:2023-09-02 23:01
本发明专利技术提供一种存储装置数据读写方法、存储器存储装置及存储器控制器,存储装置数据读写方法包括:对主机发送过来的数据读写指令进行指令解析,以获取得到执行数据读写指令的逻辑页地址;将逻辑页地址发送给硬件加速模块,以通过硬件加速模块对逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移;根据逻辑页号在第一映射表中获取对应的物理页号,及根据逻辑页内偏移获取物理页内偏移;将物理页号和物理页内偏移发送给硬件加速模块,以通过硬件加速模块对物理页号和物理页内偏移进行第二计算,得到相应的物理页地址;根据物理页地址,在存储器模块中执行数据读写指令。藉此,其可大幅提升存储装置的数据读写速度。其可大幅提升存储装置的数据读写速度。其可大幅提升存储装置的数据读写速度。

【技术实现步骤摘要】
存储装置数据读写方法、存储器存储装置及存储器控制器


[0001]本专利技术涉及一种存储器管理技术,且尤其涉及一种存储装置数据读写方法、存储器存储装置及存储器控制器。

技术介绍

[0002]目前,随着主机接口速率和NAND接口速率的提升,SSD的性能从SATA时代的500MB/s带宽提升到现在的7GB/s(PCIe Gen4),IOPS(Input/Output Operations Per Second)也从100K提升到了1M,进而对于SSD的产品设计提出了更高的要求。然而,在传统的SSD处理过程中,主要由固件负责主机的读写命令处理,由于CPU频率/代码效率受限,其能够达到的性能上限会受到很大的局限性,单纯的固件实现已经不能支撑如此的高性能需求,需要对从架构层面进行硬件加速。此外,从前端模块到发起NAND读,中间需要经历多个模块中转,涉及多核CPU的通讯/同步/计算/内存访问

,故会引入较大的延迟,进而对SSD的整体性能影响较大。

技术实现思路

[0003]本专利技术提供一种存储装置数据读写方法、存储器存储装置及存储器控制器,可通过将数据读写过程中一部分使用固件实现需要主控参与的功能转为硬件加速模块来实现,减少命令交互的过程,提高系统效率,使得存储装置的数据读写速度大幅提升。
[0004]本专利技术的实施例提供一种存储装置数据读写方法,用于存储器存储装置,其中,所述存储器存储装置包括存储器控制器、硬件加速模块和存储器模块,所述存储器模块包括多个物理区块,每个所述物理区块包括多个物理页,所述存储装置数据读写方法包括:对主机发送过来的数据读写指令进行指令解析,以获取得到执行所述数据读写指令的逻辑页地址;将所述逻辑页地址发送给所述硬件加速模块,以通过所述硬件加速模块对所述逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移;根据所述逻辑页号在第一映射表中获取对应的物理页号,及根据所述逻辑页内偏移获取物理页内偏移;将所述物理页号和所述物理页内偏移发送给所述硬件加速模块,以通过所述硬件加速模块对所述物理页号和所述物理页内偏移进行第二计算,得到相应的物理页地址;根据所述物理页地址,在所述存储器模块中执行所述数据读写指令。
[0005]本专利技术的实施例另提供一种存储装置数据读写方法,用于存储器存储装置,其中,所述存储器存储装置包括存储器控制器、硬件加速模块和存储器模块,所述存储器模块包括多个物理区块,每个所述物理区块包括多个物理页,所述存储装置数据读写方法包括:对主机发送过来的多条数据读写指令进行指令解析,以在执行所述多条数据读写指令的逻辑页地址连续时,获取得到执行所述多条数据读写指令中的第一条数据读写指令的逻辑页地址;
将所述逻辑页地址发送给所述硬件加速模块,以通过所述硬件加速模块对所述逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移;根据所述逻辑页号在第一映射表中获取对应的物理页号,及根据所述逻辑页内偏移获取物理页内偏移;将所述物理页号和所述物理页内偏移发送给所述硬件加速模块,以通过所述硬件加速模块对所述物理页号和所述物理页内偏移进行第二计算,得到相应的物理页地址;根据所述物理页地址,在所述存储器模块中执行所述多条数据读写指令中的第一条数据读写指令,并在当前数据读写指令执行完后,对所述物理页地址进行自增运算,以根据经所述自增运算后的所述物理页地址,在所述存储器模块中执行当前数据读写指令的下一条数据读写指令,直至执行完所述多条数据读写指令。
[0006]本专利技术的实施例另提供一种存储器存储装置,包括:连接接口,用以连接至主机系统;存储器模块,包括多个物理区块,每一所述物理区块包括多个物理页;存储器控制器,连接至所述连接接口与所述存储器模块;硬件加速模块,连接至所述存储器控制器;其中所述存储器控制器用以执行上述的存储装置数据读写方法,所述硬件加速模块用以进行所述第一计算和所述第二计算。
[0007]本专利技术的实施例另提供一种存储器控制器,用以控制存储器模块和硬件加速模块,其中所述存储器模块包括多个物理区块,每一所述物理区块包括多个物理页,且所述存储器控制器包括:主机接口,用以连接至主机系统;存储器接口,用以连接至所述存储器模块;硬件加速模块接口,用以连接至所述硬件加速模块;存储器控制电路,连接至所述主机接口、所述存储器接口和所述硬件加速模块接口;其中所述存储器控制电路用以执行上述的存储装置数据读写方法,所述硬件加速模块用以进行所述第一计算和所述第二计算。
[0008]基于上述,其存储装置在数据读写时,会先对主机发送过来的数据读写指令进行指令解析,以获取得到执行数据读写指令的逻辑页地址。接着,将该逻辑页地址发送给硬件加速模块,以通过硬件加速模块对逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移。然后,根据逻辑页号在第一映射表中获取对应的物理页号,及根据逻辑页内偏移获取物理页内偏移后,将物理页号和物理页内偏移发送给硬件加速模块,以通过硬件加速模块对物理页号和物理页内偏移进行第二计算,得到相应的物理页地址。最后,再根据物理页地址,在存储器模块中执行数据读写指令。藉此,其可通过将数据读写过程中一部分使用固件实现需要主控参与的功能转为硬件加速模块来实现,减少命令交互的过程,提高系统效率,使得存储装置的数据读写速度大幅提升。
附图说明
[0009]图1是根据本专利技术的实施例所示出的存储器存储装置的示意图;
图2是根据本专利技术的实施例所示出的存储器控制器的示意图;图3是根据本专利技术的实施例所示出的存储器模块的示意图;图4是根据本专利技术的实施例所示出的存储装置数据读写方法的第一种流程图;图5是根据本专利技术的实施例所示出的存储装置数据读写方法的第二种流程图。
具体实施方式
[0010]现将详细地参考本专利技术的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
[0011]图1是根据本专利技术的实施例所示出的存储器存储装置的示意图。请参照图1,存储器存储系统10包括主机系统11与存储器存储装置12。主机系统11可为任意型态的计算机系统。例如。主机系统11可为笔记本计算机、台式计算机、智能手机、平板计算机、工业计算机、游戏机、数码相机等各式电子系统。存储器存储装置12用以存储来自主机系统11的数据。例如,存储器存储装置12可包括固态硬盘、U盘、存储卡或其他类型的非易失性存储装置。主机系统11可经由串行高级技术附件(Serial Advanced Technology Attachment, SATA)接口、高速周边零件连接接口(Peripheral Component Interconnect Express, PCI Express)、通用串行总线(Universal Serial Bus, USB)或其他类型的连接接口电性连接至存储器存储装置12。因此,主机系统11可将数据存储至存储器存储装置12和/或从存储器存储装置12读取数据。
[0012]存储器存储装置12可包括连接接口121、存储器模块1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种存储装置数据读写方法,其特征在于,用于存储器存储装置,其中,所述存储器存储装置包括存储器控制器、硬件加速模块和存储器模块,所述存储器模块包括多个物理区块,每个所述物理区块包括多个物理页,所述存储装置数据读写方法包括:对主机发送过来的数据读写指令进行指令解析,以获取得到执行所述数据读写指令的逻辑页地址;将所述逻辑页地址发送给所述硬件加速模块,以通过所述硬件加速模块对所述逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移;根据所述逻辑页号在第一映射表中获取对应的物理页号,及根据所述逻辑页内偏移获取物理页内偏移;将所述物理页号和所述物理页内偏移发送给所述硬件加速模块,以通过所述硬件加速模块对所述物理页号和所述物理页内偏移进行第二计算,得到相应的物理页地址;根据所述物理页地址,在所述存储器模块中执行所述数据读写指令。2.根据权利要求1所述的存储装置数据读写方法,其特征在于,所述硬件加速模块包括除法器,所述硬件加速模块对所述逻辑页地址进行第一计算,得到相应的逻辑页号和逻辑页内偏移的步骤包括:通过所述除法器对所述逻辑页地址进行预设除法运算,以得到相应的逻辑页号和逻辑页内偏移。3.根据权利要求2所述的存储装置数据读写方法,其特征在于,所述通过所述除法器对所述逻辑页地址进行预设除法运算的步骤包括:通过所述除法器进行所述逻辑页地址除以页容量的除法运算,以将所述除法运算所得的商作为所述逻辑页号,及将所述除法运算所得的余数作为所述逻辑页内偏移。4.根据权利要求2所述的存储装置数据读写方法,其特征在于,所述硬件加速模块还包括乘法器和加法器,所述硬件加速模块对所述物理页号和所述物理页内偏移进行第二计算,得到相应的物理页地址的步骤包括:通过所述乘法器和所述加法器对所述物理页号和所述物理页内偏移进行预设乘法运算和预设加法运算,以得到相应的物理页地址。5.根据权利要求4所述的存储装置数据读写方法,其特征在于,所述通过所述乘法器和所述加法器对所述物理页号和所述物理页内偏移进行预设乘法运算和预设加法运算的步骤包括:先通过所述乘法器进行所述物理页号乘以页容量的乘法运算,再通过所述加法器进行所述乘法运算所得的乘积与所述物理页内偏移相加的加法运算,以将所述加法运算的和作为所述物理页地址。6.根据权利要求1

5任一项所述的存储装置数据读写方法,其特征在于,所述数据读写指令为数据读取指令时,所述根据所述逻辑页号在第一映射表中获取对应的物理页号的步骤包括:若在所述第一映射表找到所述逻辑页号对应的所述物理页号,则进一步查询第二映射表,以找到所述物理页号对应的物理区块号;若在所述第一映射表无法找到所述逻辑页号对应的所述物理页号,则直接返回一个错误的讯息给所述主机,并中止执行所述数据读取指令。
7.根据权利要求6所述的存储装置数据读写方法,其...

【专利技术属性】
技术研发人员:赖振楠詹伟钦吴斯奇
申请(专利权)人:深圳宏芯宇电子股份有限公司
类型:发明
国别省市:

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

1