[发明专利]一种控制数据传输的方法及DMA控制器有效
申请号: | 201410276233.4 | 申请日: | 2014-06-19 |
公开(公告)号: | CN104021099B | 公开(公告)日: | 2017-11-17 |
发明(设计)人: | 王震 | 申请(专利权)人: | 大唐微电子技术有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 李红爽,栗若木 |
地址: | 100094*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 控制 数据传输 方法 dma 控制器 | ||
技术领域
本发明涉及集成电路领域,特别是涉及一种控制数据传输的方法及DMA(Direct Memory Access,存储器直接访问)控制器。
背景技术
随着互联网及电子产品的快速发展,含有音频、视频等大量数据的应用软件考验着硬件芯片的数据处理能力,大量数据的快速传输已成为当今芯片的重要性能指标。
相对于传统系统中的CPU直接传输数据方式、查询方式及中断方式,DMA控制器采取的传输方式,为作用于存储器之间、存储器与外设之间、外设与外设之间直接交换数据。不执行CPU读写指令,且不需要经过CPU缓存,减少了中间环节。只要完成配置DMA控制器,所有读写时序全部由硬件执行,因此大大提高了传送数据的速率。
如图1所示,为现有设计的DMA系统结构框图。CPU工作模式中:通过系统总线(SYS_BUS),CPU可以单独访问DMA控制器、源存储器或外设(Src)、目的存储器或外设(Dst)。DMA工作模式中:通过SYS_BUS,CPU配置DMA内部功能寄存器,包括传输长度、源起始地址、目的起始地址、传输方向、工作使能等。
使能打开后,DMA开始工作。首先,通过SYS_BUS,从源起始地址读出的数据送进DMA暂存,完成一次读操作。然后,DMA再将数据写入目的起始地址,完成一次写操作。同时,源地址、目的地址增加至下一次读、写操作的地址。依此,进行后续的从Src读出数据,并写入Dst的操作。直至所有数据全部传输完毕,DMA工作完毕,释放总线。
现有设计的DMA控制器,存在不同数据宽度存储器之间数据转换频繁、传输效率较低、耗时较长的技术缺点:
从设计原理上,现有设计的DMA控制器,由于设计简单,很少考虑数据宽度匹配的问题,所以要求源、目的传输数据宽度必须相等。针对在不同数据宽度的存储器或外设之间传输时,需要在系统或存储器接口模块中,增加数据转换或数据缓存的设计,导致系统复杂化,数据速度较慢等缺点。
此外,现有设计的DMA控制器工作时,会占有系统总线。此时,CPU无法通过系统总线访问其它从模块,只能等到DMA工作完毕后,才可操作。此时,CPU可能无法及时处理外设或其他模块的中断信号,在系统使用上具有一定的局限性。
发明内容
本发明要解决的技术问题是提供一种控制数据传输的方法及DMA控制器,以提高不同数据宽度之间的传输效率。
为了解决上述技术问题,本发明提供了一种控制数据传输的方法,应用于存储器直接访问控制器,包括:
接收CPU的配置信息,对所述配置信息进行解析,所述配置信息包括传输宽度转换参数;
从源外设读取数据,根据所述传输宽度转换参数将读取到的数据转换成相应的数据宽度后写入目的外设。
进一步地,上述方法还具有下面特点:
所述从源外设读取数据是通过所述源外设与所述存储器直接访问控制器之间的接口实现的;
所述将数据写入目的外设是通过所述目的外设与所述存储器直接访问控制器之间的接口实现的。
进一步地,上述方法还具有下面特点:
所述接收的配置信息还包括:源起始地址和目的起始地址;
所述传输宽度转换参数包括源外设数据宽度和目的外设所需的数据宽度;
所述从源外设读取数据,根据所述传输宽度转换参数将读取到的数据转换成相应的数据宽度后写入所述目的外设,包括:根据所述传输宽度转换参数,按照所述源外设的接口时序从所述源起始地址开始读取源外设数据宽度的数据,将读取到的数据转换成所述目的外设所需的数据宽度后,按照所述目的外设的接口时序,从所述目的起始地址开始写入所述目的外设。
进一步地,上述方法还具有下面特点:
所述源外设支持的数据宽度包括以下的任一种:8比特、16比特和32比特;
所述目的外设支持的数据宽度包括以下的任一种:8比特、16比特和32比特。
进一步地,上述方法还具有下面特点:
所述传输宽度转换参数为0时,表示数据宽度从8bits转换为8bits;
所述传输宽度转换参数为5时,表示数据宽度从16bits转换为16bits;
所述传输宽度转换参数为a时,表示数据宽度从32bits转换为32bits;
所述传输宽度转换参数为1时,表示数据宽度从16bits转换为8bits;
所述传输宽度转换参数为2时,表示数据宽度从32bits转换为8bits;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐微电子技术有限公司,未经大唐微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410276233.4/2.html,转载请声明来源钻瓜专利网。