[发明专利]一种基于sgl链表的DMA传输方法在审
申请号: | 201810025217.6 | 申请日: | 2018-01-11 |
公开(公告)号: | CN108228497A | 公开(公告)日: | 2018-06-29 |
发明(设计)人: | 郑文霞;彭鹏;姜黎 | 申请(专利权)人: | 湖南国科微电子股份有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 北京弘权知识产权代理事务所(普通合伙) 11363 | 代理人: | 逯长明;许伟群 |
地址: | 410100 湖南省长*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种基于sgl链表的DMA传输方法,应用于CPU中。配置至少一个sgl entry的sgl entry链表,每个sgl entry对应一个index,每个index指向一个寄存地址,寄存地址连续。确定当前DMA传输对应起始sgl entry index在的寄存地址。发起DMA传输命令至DMA控制器,使得DMA控制器根据起始sgl entry index,从SGL MEN中找到相应的起始sgl entry后,开始按照sgl entry中的存储地址传输数据至第二寄存器DATA MEN中。借助sgl链表,传输离散物理地址的数据成为单一操作。提高了数据传输效率。 | ||
搜索关键词: | 链表 寄存 数据传输效率 传输数据 存储地址 单一操作 地址连续 物理地址 寄存器 指向 传输 配置 应用 | ||
【主权项】:
1.一种基于sgl链表的DMA传输方法,应用于CPU中,其特征在于,包括以下步骤:确定当次DMA传输的数据的大小和所有存储地址;配置sgl entry链表,用第一寄存器SGL MEN来存储所述sgl entry链表,所述sgl entry链表包括至少一个sgl entry,每个sgl entry携带一块存储地址连续的被传输数据的数据大小信息、所述被传输数据的存储地址信息以及下一个sgl entry对应的被传输数据的存储地址信息,其中,每个sgl entry对应一个index,每个index指向一个第一寄存器中的寄存地址,所述寄存地址连续;确定当前DMA传输对应的sgl entry链表的起始sgl entry对应的index在第一寄存器SGL MEN中的寄存地址;发起DMA传输命令,将所述DMA传输命令发送至DMA控制器,使得所述DMA控制器根据所述起始sgl entry对应的index,从所述SGL MEN中找到相应的起始sgl entry后,开始按照所述sgl entry中的存储地址传输数据至第二寄存器DATA MEN中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南国科微电子股份有限公司,未经湖南国科微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810025217.6/,转载请声明来源钻瓜专利网。