[发明专利]一种基于PCIe的DMA数据传输方法及系统有效
申请号: | 201710156750.1 | 申请日: | 2017-03-16 |
公开(公告)号: | CN106951388B | 公开(公告)日: | 2020-06-30 |
发明(设计)人: | 谢丽佳 | 申请(专利权)人: | 湖南博匠信息科技有限公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 410205 湖南省长沙市高新开*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 pcie dma 数据传输 方法 系统 | ||
1.一种基于PCIe的DMA数据传输方法,其特征在于,包括:
接收上位机通过PCIe总线发送至PCIe IP核的控制指令;其中,所述控制指令包括DMA起始地址、DMA大小、DMA模式和启动DMA指令;
根据所述控制指令从多个DMA通道中选择对应的所述DMA通道通过PCIe总线对数据进行传输;其中,多个所述DMA通道相互独立;
所述根据所述控制指令从多个DMA通道中选择对应的DMA通道通过PCIe总线对数据进行传输,包括:
对所述控制指令进行解帧和命令解析,获取从事务请求;
对所述从事务请求进行处理,生成DMA参数;
根据所述DMA参数,生成DMA控制信号;具体的,根据DMA参数生成对DMA通道进行控制的DMA控制信号,以控制DMA数据传输方向、DMA起始地址、DMA大小、DMA启动与停止以及DMA的工作模式;
根据所述DMA控制信号从多个所述DMA通道中选择对应的所述DMA通道通过所述PCIe总线进行DMA读和/或DMA写;其中,不同种类的数据使用单独的DMA通道进行传输。
2.根据权利要求1所述的基于PCIe的DMA数据传输方法,其特征在于,所述根据所述DMA控制信号从多个所述DMA通道中选择对应的所述DMA通道通过所述PCIe总线进行DMA读和/或DMA写,包括:
若所述DMA控制信号中包含DMA读指令,则生成读请求包;
将所述读请求包发送至所述上位机;
通过所述PCIe总线接收所述上位机发送的带有数据的读完成包,并将所述读完成包中的所述数据写入到所述DMA控制信号对应的DMA通道的FIFO中;其中,所述读完成包中的所述数据为所述读请求包对应的所述上位机的缓存空间中的数据;
若所述DMA控制信号中包含DMA写指令,则将所述DMA控制信号对应的DMA通道的FIFO中的数据生成写请求包,并通过所述PCIe总线发送至所述上位机;其中,每个所述DMA通道均存在独立的FIFO。
3.根据权利要求2所述的基于PCIe的DMA数据传输方法,其特征在于,所述接收上位机发送的控制指令之前,还包括:
所述上位机对所述缓存空间进行配置。
4.根据权利要求1至3任一项所述的基于PCIe的DMA数据传输方法,其特征在于,所述根据所述控制指令从多个DMA通道中选择对应的所述DMA通道通过PCIe总线对数据进行传输之后,还包括:
传输结束后,产生中断信息;
将所述中断信息以MSI中断方式或继承中断INTx方式发送到上位机。
5.一种基于PCIe的DMA数据传输系统,其特征在于,包括:
接收模块,用于接收上位机通过PCIe总线发送至PCIe IP核的控制指令;其中,所述控制指令包括DMA起始地址、DMA大小、DMA模式和启动DMA指令;
DMA控制模块,用于根据所述控制指令从多个DMA通道中选择对应的所述DMA通道通过PCIe总线对数据进行传输;其中,多个所述DMA通道相互独立;
所述DMA控制模块,包括:
从事务子模块,用于对所述控制指令进行解帧和命令解析,获取从事务请求;
从事务管理子模块,用于对所述从事务请求进行处理,生成DMA参数;
DMA管理子模块,用于根据所述DMA参数,生成DMA控制信号;具体的,根据DMA参数生成对DMA通道进行控制的DMA控制信号,以控制DMA数据传输方向、DMA起始地址、DMA大小、DMA启动与停止以及DMA的工作模式;
DMA核子模块,用于根据所述DMA控制信号从多个所述DMA通道中选择对应的所述DMA通道通过所述PCIe总线进行DMA读和/或DMA写;其中,不同种类的数据使用单独的DMA通道进行传输。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南博匠信息科技有限公司,未经湖南博匠信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710156750.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种釜式螺旋桨搅拌机
- 下一篇:一种能够减震的饲料搅拌加热装置