一种DMA描述符管理方法、系统、装置及可读存储介质制造方法及图纸

技术编号:43470897 阅读:15 留言:0更新日期:2024-11-27 13:09
本发明专利技术提出的一种DMA描述符管理方法、系统、装置及可读存储介质,所述方法包括:从主机内存中获取命令队列,提取命令队列中待处理命令的提交队列ID和命令ID;根据提交队列ID和命令ID在本地内存中获取对应的描述符信息,基于描述符信息,利用描述符模版生成DMA描述符;将DMA描述符作为节点插入平衡搜索树中,并更新平衡搜索树;对于命令队列中待执行的命令,根据该命令的提交队列ID和命令ID在平衡搜索树中检索到相应的DMA描述符,并存储到DMA分配队列中;在DMA分配队列中依次提取DMA描述符,根据提取的DMA描述符执行主机内存与本地内存之间的数据传输;数据传输完成后,更新DMA描述符的状态。本发明专利技术可实现对存储访问的高效管理和优化,减小总线占用率,提高系统整体性能。

【技术实现步骤摘要】

本专利技术涉及计算机,更具体的说是涉及一种dma描述符管理方法、系统、装置及可读存储介质。


技术介绍

1、目前,非易失性存储器(如ssd)已成为数据存储的主流。非易失性内存主机控制器规范(nvme)协议作为一种高效的数据传输协议,被广泛应用于主机与ssd之间的通信。为提高数据传输效率,同时减轻中央处理器(cpu)的负担,通常在nvme ssd中引入dma引擎,cpu为dma引擎设置dma描述符以指示有关dma引擎传输的信息。

2、然而,现有nvme协议实现机制中,dma描述符的获取和处理方式普通采用如下流程:1、cpu从本地内存读取队列命令后为其创建dma描述符,并将dma描述符存储于本地内存中。2、cpu通过总线访问dma描述符链地址寄存器,配置描述符地址,并在描述符创建完成后访问dma控制寄存器,触发dma使能信号,表示描述符已经配置好,dma引擎可以传输数据。3、dma引擎通过总线访问dma描述符地址,从本地内存中读取当前dma描述符内容,当dma描述符中的有效位置1时,根据dma描述符内容开始数据传输。4、dma引擎在读取当前dma描述本文档来自技高网...

【技术保护点】

1.一种DMA描述符管理方法,其特征在于,包括:

2.根据权利要求1所述的DMA描述符管理方法,其特征在于,所述根据提交队列ID和命令ID在本地内存中获取对应的描述符信息,基于描述符信息,利用描述符模版生成DMA描述符,包括:

3.根据权利要求2所述的DMA描述符管理方法,其特征在于,所述将DMA描述符作为节点插入平衡搜索树中,并更新平衡搜索树,包括:

4.根据权利要求3所述的DMA描述符管理方法,其特征在于,所述对于命令队列中待执行的命令,根据该命令的提交队列ID和命令ID在平衡搜索树中检索到相应的DMA描述符,并存储到DMA描述符队列中,包括:...

【技术特征摘要】

1.一种dma描述符管理方法,其特征在于,包括:

2.根据权利要求1所述的dma描述符管理方法,其特征在于,所述根据提交队列id和命令id在本地内存中获取对应的描述符信息,基于描述符信息,利用描述符模版生成dma描述符,包括:

3.根据权利要求2所述的dma描述符管理方法,其特征在于,所述将dma描述符作为节点插入平衡搜索树中,并更新平衡搜索树,包括:

4.根据权利要求3所述的dma描述符管理方法,其特征在于,所述对于命令队列中待执行的命令,根据该命令的提交队列id和命令id在平衡搜索树中检索到相应的dma描述符,并存储到dma描述符队列中,包括:

5.根据权利要求4所述的dma描述符管理方法,其特征在于,所述dma分配队列设置有头指针和尾指针;当dma描述符写入dma缓冲区时,将相关的提交队列id和命令id加入dma分配队列,并对尾指针加1,表示有新的dma描述符等待配置;当提取头指针对应的dma描...

【专利技术属性】
技术研发人员:张靖付溢华曾昭贵周永旺娄博杰
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

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

1