一种命令的解压方法、系统及固态硬盘技术方案

技术编号:29212185 阅读:16 留言:0更新日期:2021-07-10 00:49
本申请实施例涉及固态硬盘应用领域,公开了一种命令的解压方法、系统及固态硬盘,该命令的解压方法,应用于固态硬盘,包括:获取处理器发送的压缩命令;根据压缩命令,确定压缩命令对应的命令模板;根据压缩命令以及命令模板,生成解压缩命令。通过确定压缩命令对应的命令模板,根据压缩命令以及命令模板,以生成解压缩命令,本申请能够减少处理器发送的命令的数据量,提高固态硬盘的处理效率。提高固态硬盘的处理效率。提高固态硬盘的处理效率。

【技术实现步骤摘要】
一种命令的解压方法、系统及固态硬盘


[0001]本申请涉及固态硬盘应用领域,特别是涉及一种命令的解压方法、系统及固态硬盘。

技术介绍

[0002]固态硬盘(Solid State Drives,SSD),是采用固态电子存储芯片阵列而制成的硬盘,固态硬盘包括控制单元和存储单元(FLASH存储芯片或DRAM存储芯片)。目前固态硬盘系统中有相当部分是存在动态随机存取存储器(Dynamic Random Access Memory,DRAM)的,所以SSD有较大的数据缓存空间用来缓存数据。
[0003]闪存(NAND Flash)是固态硬盘的主要存储介质。SSD系统内CPU与各硬件模块基于门铃(doorbell)进行通信,CPU通过doorbell的提交队列(Submission Queue,SQ)发送命令(Command)给硬件模块;硬件模块执行完相关命令后通过完成队列(Completion Queue,CQ)返回执行结果(Response)供CPU查询。通常发给SQ的单个命令的数据量较大,而且命令的数量也较多,导致CPU给硬件发送命令的整体时间长,即CPU的开销大,导致影响性能的发挥。
[0004]申请内容
[0005]本申请实施例旨在提供一种命令的解压方法、系统及固态硬盘,其解决了现有的固态硬盘的处理器发送命令的数据量大的技术问题,提高固态硬盘的处理效率。
[0006]为解决上述技术问题,本申请实施例提供以下技术方案:
[0007]第一方面,本申请实施例提供一种命令的解压方法,应用于固态硬盘,所述方法包括:
[0008]获取处理器发送的压缩命令;
[0009]根据所述压缩命令,确定所述压缩命令对应的命令模板;
[0010]根据所述压缩命令以及命令模板,生成解压缩命令。
[0011]在一些实施例中,在获取处理器发送的压缩命令之前,所述方法还包括:
[0012]预先建立命令模板组,所述模板组包括多个命令模板,每一命令模板一一对应一个模板标识号。
[0013]在一些实施例中,所述压缩命令包括模板标识号,所述根据所述压缩命令,确定所述压缩命令对应的模板,包括:
[0014]获取所述压缩命令包含的模板标识号;
[0015]根据所述模板标识号,基于所述命令模板组,确定所述压缩命令对应的命令模板。
[0016]在一些实施例中,每一命令模板包括默认数据区以及操作指令区,所述根据所述压缩命令以及命令模板,生成解压缩命令,包括:
[0017]根据所述操作指令区,获取操作指令区包含的操作指令,其中,所述操作指令区包括至少一条操作指令;
[0018]执行所述操作指令区包含的操作指令,以更新所述默认数据区;
[0019]将更新后的默认数据区的字段作为所述解压缩命令的字段,以生成解压缩命令。
[0020]在一些实施例中,在根据所述操作指令区,获取操作指令区包含的操作指令之前,所述方法还包括:
[0021]将所述命令模板中的默认数据区复制到缓冲区。
[0022]在一些实施例中,所述执行所述操作指令区包含的操作指令,包括:
[0023]顺序执行所述操作指令区包含的操作指令,直至当前执行的操作指令为结束指令。
[0024]在一些实施例中,所述压缩命令还包括旁路标志,所述模板标识号和所述旁路标志均存储于所述压缩命令的特定字段,所述方法还包括:
[0025]根据所述压缩命令是否包括旁路标志,确定是否根据所述模板标识号,索引与所述模板标识号对应的命令模板。
[0026]在一些实施例中,所述压缩命令包括源数据区和保留区,其中,处理器不填写所述保留区。
[0027]第二方面,本申请实施例提供一种命令优化系统,用于执行如第一方面所述的命令的解压方法,所述系统包括:
[0028]模板管理模块,用于存储命令模板组,所述命令模板组包括多个命令模板;
[0029]接口模块,用于接收处理器发送的压缩命令;
[0030]解压缩模块,连接所述模板管理模块,所述解压缩模块包括:
[0031]命令解析单元,用于解析处理器发送的压缩命令,以确定对应的命令模板;
[0032]执行管理单元,用于执行所述命令模板中的操作指令,以生成解压缩命令。
[0033]第三方面,本申请实施例提供一种固态硬盘,包括:
[0034]闪存介质,用于存储闪存数据;
[0035]处理器,用于发送压缩命令;
[0036]如第二方面所述的命令优化系统。
[0037]第四方面,本申请实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使固态硬盘能够执行如上所述的命令的解压方法。
[0038]本申请实施例的有益效果是:区别于现有技术的情况下,本申请实施例提供的一种命令的解压方法,应用于固态硬盘,所述方法包括:获取处理器发送的压缩命令;根据所述压缩命令,确定所述压缩命令对应的命令模板;根据所述压缩命令以及命令模板,生成解压缩命令。通过确定压缩命令对应的命令模板,根据压缩命令以及命令模板,以生成解压缩命令,本申请能够减少处理器发送的命令的数据量,提高固态硬盘的处理效率。
附图说明
[0039]一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0040]图1是现有技术的硬件模块之间的通信的示意图;
[0041]图2是现有技术的命令的通信的示意图;
[0042]图3是本申请实施例提供的一种固态硬盘的结构示意图;
[0043]图4是本申请实施例提供的一种命令处理方式的示意图;
[0044]图5是本申请实施例提供的一种命令的示意图;
[0045]图6是现有技术中的CPU对命令的处理方式的示意图;
[0046]图7是本申请实施例提供的一种命令优化系统的结构示意图;
[0047]图8是本申请实施例提供的一种命令的解压方法的流程示意图;
[0048]图9是图8中的步骤S20的细化流程图;
[0049]图10是本申请实施例提供的一种压缩命令的示意图;
[0050]图11是本申请实施例提供的一种命令模板的示意图;
[0051]图12是图8中的步骤S30的细化流程图;
[0052]图13是本申请实施例提供的一种操作指令区的示意图;
[0053]图14是本申请实施例提供的一种解压缩的整体过程;
[0054]图15是本申请实施例提供的一种更新命令模板中的字段的示意图;
[0055]图16是本申请实施例提供的另一种更新命令模板中的字段的示意图;
[0056]图17是本申请实施例提供的一种命令的解压方法的整体流程示意图;
[0057]图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种命令的解压方法,应用于固态硬盘,其特征在于,所述方法包括:获取处理器发送的压缩命令;根据所述压缩命令,确定所述压缩命令对应的命令模板;根据所述压缩命令以及命令模板,生成解压缩命令。2.根据权利要求1所述的方法,其特征在于,在获取处理器发送的压缩命令之前,所述方法还包括:预先建立命令模板组,所述模板组包括多个命令模板,每一命令模板一一对应一个模板标识号。3.根据权利要求2所述的方法,其特征在于,所述压缩命令包括模板标识号,所述根据所述压缩命令,确定所述压缩命令对应的模板,包括:获取所述压缩命令包含的模板标识号;根据所述模板标识号,基于所述命令模板组,确定所述压缩命令对应的命令模板。4.根据权利要求3所述的方法,其特征在于,每一命令模板包括默认数据区以及操作指令区,所述根据所述压缩命令以及命令模板,生成解压缩命令,包括:根据所述操作指令区,获取操作指令区包含的操作指令,其中,所述操作指令区包括至少一条操作指令;执行所述操作指令区包含的操作指令,以更新所述默认数据区;将更新后的默认数据区的字段作为所述解压缩命令的字段,以生成解压缩命令。5.根据权利要求4所述的方法,其特征在于,在根据所述操作指令区,获取操作指令区包含的操作指令之前,所述方法还包括:将所述命令模板中的默认数据区复制到缓冲区。6....

【专利技术属性】
技术研发人员:梁伟黄运新方浩俊
申请(专利权)人:深圳大普微电子科技有限公司
类型:发明
国别省市:

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

1