[发明专利]一种DMA数据传输方法、系统及一种DMA控制器有效
申请号: | 200910076815.7 | 申请日: | 2009-01-21 |
公开(公告)号: | CN101504632A | 公开(公告)日: | 2009-08-12 |
发明(设计)人: | 石艳 | 申请(专利权)人: | 北京红旗胜利科技发展有限责任公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 北京润泽恒知识产权代理有限公司 | 代理人: | 苏培华 |
地址: | 100081北京市海淀区中*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 dma 数据传输 方法 系统 控制器 | ||
技术领域
本发明涉及DMA数据传输控制领域,特别是涉及一种从外部存储器向CPU内部存储器进行DMA数据传输的方法及系统,以及一种DMA控制器。
背景技术
CPU应用非常广泛,例如,CPU作为重要器件应用在各种SOC(System On Chip,片上系统)中。参考图1所示的一种CPU器件的结构示意图,具体可以包括:
数据存储阵列101,包括多个阵列块,用于存储数据;
指令存储器102,用于存储指令;
数据存储管理器103,用于管理指向所述数据存储阵列的访问请求;
指令存储管理器104,用于管理指向所述指令存储器的访问请求;
控制器105,用于控制并协调各个功能部件运行;
运算器106,用于完成各种算术和逻辑运算;
图1所示的CPU采用的是哈佛体系结构,将数据和指令分开存储和调用,即CPU包括数据通道(数据存储阵列101和数据存储管理器103)和指令通道(指令存储器102和指令存储管理器104),所述数据通道与数据总线相连,所述指令通道与指令总线相连。在实际中,所述指向所述数据存储阵列的访问请求可以为外部存储器通过数据总线发送至数据存储管理器的外部访问请求;所述指向指令存储器的访问请求可以为外部存储器通过指令总线发送至指令存储管理器的外部访问请求;在这种情况下,数据传输一般通过DMA(Direct Memory Access,直接存储器访问)实现。公知的是,采用DMA方式可以在CPU内部存储器与外部存储器之间进行数据传输,不需要CPU的参与,由总线提供数据传输 的通道。
以从外部DRAM存储器(动态随机存取存储器)向CPU内部的SRAM存储器(静态随机存取存储器)进行DMA数据传输为例,在从外部存储器读出数据写入CPU内部存储器的过程中,数据从源地址到目的地址的长度是一致的,如从外部存储器的源地址读取32位的数据,然后必须将这32位的数据写入CPU内部存储器的目的地址。通常为了更好地利用DRAM的特性,DMA数据传输采用Burst read(成组读出)技术,即一次性地读取成组的数据,使较慢的存储器能够适用于较快的CPU,在这种情况下,DMA传输的一段数据长度通常为8个周期的32位数据、16个周期的32位数据或32个周期的32位数据,即从外部存储器的源地址读出的最小数据为256位、512位或1024位。
现有技术中,在从外部存储器读出相应长度的数据后,均会如数写入CPU内部存储器目的地址中,即若当前从外部存储器读出256位数据,那么在写入CPU内部存储器时,也是写入该256位数据。而实际中的一种情况为,对于写入CPU内部存储器的数据,基于当前CPU的运算器、控制器或其它操作需求,仅需要所读出数据中的一部分数据,例如,当前仅需要所读出的256位数据中,第64-160位的数据,而采用现有技术的数据传输方式则会严重浪费CPU内部存储器的存储空间,由于CPU内部存储器的成本比较高昂贵,所以这种浪费是无法忍受的。
因而,目前需要本领域技术人员迫切解决的一个技术问题就是:如何能够节省CPU内部存储器的存储空间,从而降低CPU器件的成本。
发明内容
本发明所要解决的技术问题是提供一种从外部存储器向CPU内部存储器进行DMA数据传输的方法,以节省CPU内部存储器的存储空间,从而降低CPU器件的成本。
本发明还提供了一种DMA数据传输系统及一种DMA控制器,用以保证上述方法在实际中的实现及应用。
为了解决上述技术问题,本发明实施例公开了一种从外部存储器向CPU内部存储器进行DMA数据传输的方法,所述数据传输由DMA控制器控制,所述方法包括:
从外部存储器读出预置长度的连续数据;
依据有效数据配置信息,从所读出的连续数据中提取有效数据;
将所述有效数据写入CPU内部存储器;
其中,所述有效数据配置信息为根据当前写入需求配置寄存器中存储的第一长度信息和第二长度信息;
所述提取有效数据的步骤包括:
依据所述连续数据的起始位置信息和第一长度信息计算出第一位置信息;以及,依据所述连续数据的末尾位置信息和第二长度信息计算出第二位置信息;
由所述第一位置信息和第二位置信息确定有效数据的位置。
优选的,所述的方法,还包括:
通知所述DMA控制器写入有效数据配置信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京红旗胜利科技发展有限责任公司,未经北京红旗胜利科技发展有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910076815.7/2.html,转载请声明来源钻瓜专利网。