[发明专利]一种基于信息记录结构体的DMA数据交互方法和装置有效
申请号: | 201711026587.3 | 申请日: | 2017-10-27 |
公开(公告)号: | CN107832240B | 公开(公告)日: | 2020-06-09 |
发明(设计)人: | 朱朝忠;刘云 | 申请(专利权)人: | 北京腾凌科技有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 陈蕾 |
地址: | 100085 北京市海淀区上地信息路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 信息 记录 结构 dma 数据 交互 方法 装置 | ||
本公开提供了一种基于信息记录结构体的DMA数据交互方法和装置。创建多个应用于DMA数据交互的信息记录结构体,该信息记录结构体至少可存放数据段的长度信息,计数信息,内存空间地址信息和处理状态信息。信息记录结构体使DMA数据交互过程中的传输信息能够固定快速分配,主机和FPGA可以通过对多个信息记录结构体中处理状态标志位的监测获取每段数据的处理状态,进而能够快速准确对每段数据做出相应处理,提高了DMA传输过程的数据处理效率。
技术领域
本公开涉及数据存储领域,特别是涉及一种基于信息记录结构体的DMA数据交互方法和装置。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)是一种可编程电路元器件,随着集成电路(IC)制造工艺的提升,FPGA芯片中的资源越来越多,运算能力和功能也越来越强大,因此,FPGA在信号采集,数据存储,雷达,通信等电子系统中的应用越来越广泛,当FPGA需要与计算机系统进行大量数据交换时,通常利用FPGA中的高速串行收发器来实现PCIE数据收发。
当利用PCIE总线实现FPGA与主机之间的数据传输时,通常采用DMA(DirectMemory Access,直接内存存取)传输方式来加快数据传输速度,降低CPU负担,DMA控制器可以将数据从一个地址空间(主机)搬移到另一个地址空间(FPGA),搬移过程不需要CPU参与,因此节省了CPU资源。
DMA数据读写过程需要用到很多数据传输的相关信息,如数据的存储地址,数据的长度,数据的计数等,比较理想的情况下,数据传输信息准备完毕后立即开始数据读写,数据读写完毕后立即准备下一次的数据传输信息。但现有技术中传输端无法及时获取每段数据的处理状态,包括传输信息是否准备完成,数据是否读写完成等,也就不能够快速准确对每段数据做出相应处理,使DMA传输过程的数据处理效率较低。
发明内容
为解决上述技术问题,本公开提供了一种应用于DMA数据交互的信息记录结构体和基于所述信息记录结构体的DMA数据交互方法,技术方案如下:
一种应用于DMA数据交互的信息记录结构体,所述信息记录结构体至少包括:
数据段的长度信息;
数据段的计数信息;
数据段的内存空间地址信息,用于记录数据段在主机内存的存放地址;
数据段的处理状态信息,用于标识所述数据段的处理情况,具体包括:
状态A1:用于主机到FPGA方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态A2:用于主机到FPGA方向的DMA数据交互,标识主机已经将为数据段分配的内存空间地址信息写入信息记录结构体;
状态A3:用于主机到FPGA方向的DMA数据交互,标识FPGA已经读取内存空间中的数据段;
状态B1:用于FPGA到主机方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态B2:用于FPGA到主机方向的DMA数据交互,标识FPGA已经将数据段写入内存空间中。
一种基于所述信息记录结构体的DMA数据交互方法,所述数据交互为主机到FPGA方向,所述方法包括:
主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京腾凌科技有限公司,未经北京腾凌科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711026587.3/2.html,转载请声明来源钻瓜专利网。
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置