[发明专利]一种Scatter-Gather DMA的数据传输缓冲区设计方法在审
申请号: | 201810957576.5 | 申请日: | 2018-08-22 |
公开(公告)号: | CN109189702A | 公开(公告)日: | 2019-01-11 |
发明(设计)人: | 赵瑞东;王朝晖;陈亮甫;吴登勇 | 申请(专利权)人: | 山东超越数控电子股份有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28;G06F13/12 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 孙晶伟 |
地址: | 250100 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓冲区 内核空间 用户空间 链表 数据传输缓冲区 数据拷贝 数据传输技术 中断处理程序 数据传输 数量对应 写入设备 节点数 两组 指向 传输 创建 | ||
1.一种Scatter-Gather DMA的数据传输缓冲区设计方法,其特征是使用scatter-gather DMA进行数据传输时,创建两个scatter-gather DMA链表,并将两个scatter-gather DMA链表分别指向两组内核空间缓冲区,每组内核空间缓冲区的数量对应相应的scatter-gather DMA链表节点数,
用户空间数据拷贝到一组内核空间缓冲区并进行DMA传输的同时,利用CPU将下次需传输的用户空间数据拷贝入另一组内核空间缓冲区,当上一次DMA传输完成,利用中断处理程序启动下一次DMA传输,直至将用户空间数据完全写入设备。
2.根据权利要求1所述的方法,其特征是所述中断处理程序判断当前完成传输的是第几组数据,再将另一组内核空间缓冲区对应的链表地址告知设备,并启动下一次DMA传输。
3.根据权利要求2所述的方法,其特征是进行DMA传输的具体过程为:先将用户空间数据拷贝入第一组内核空间缓冲区,将第一组内核空间缓冲区对应的scatter-gather DMA链表的地址告知设备,开始DMA传输,
在DMA传输的同时,CPU将下次需传输的用户空间数据拷贝入第二组内核空间缓冲区,当DMA传输完成,设备发送传输完成中断之后,中断处理程序则将第二个scatter-gatherDMA链表地址告知设备,并启动DMA传输,直至将用户空间数据完全写入设备。
4.根据权利要求3所述的方法,其特征是具体步骤为:
创建两个scatter-gather DMA链表,并将两个scatter-gather DMA链表分别指向两组内核空间缓冲区,两组内核空间缓冲区的物理地址不连续,每组内核空间缓冲区的数量对应相应的scatter-gather DMA链表节点数,并将两组内核空间缓冲区的物理地址分别填入相应的scatter-gather DMA链表节点中,
先将用户空间数据拷贝入第一组内核空间缓冲区,将第一组内核空间缓冲区对应的scatter-gather DMA链表的地址告知设备,开始DMA传输,
在DMA传输的同时,CPU将下次需传输的用户空间数据拷贝入第二组内核空间缓冲区,当DMA传输完成,设备发送传输完成中断之后,中断处理程序则将第二个scatter-gatherDMA链表地址告知设备,并启动DMA传输,直至将用户空间数据完全写入设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东超越数控电子股份有限公司,未经山东超越数控电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810957576.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种针对嵌入式存储接口数据传输的方法及其系统
- 下一篇:一种数据格式转换方法