[发明专利]一种内存数据的搬移装置及方法在审
申请号: | 201310697443.6 | 申请日: | 2013-12-17 |
公开(公告)号: | CN103713953A | 公开(公告)日: | 2014-04-09 |
发明(设计)人: | 李哲;宁洪;李炜 | 申请(专利权)人: | 上海华为技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F13/28 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 唐华明 |
地址: | 200121 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 数据 搬移 装置 方法 | ||
技术领域
本申请涉及数据处理领域,特别是涉及一种内存数据的搬移装置及方法。
背景技术
内存数据是指存储在内存中的数据。内存数据的搬移,是指将内存数据从内存中的某个存储地址转移到另外的存储地址。典型的例子就是移动一个外部内存的区块到另一个更快的内存中去。
现有技术中,通常采用DMA(Direct Memory Access,直接内存存取)技术进行内存数据的搬移。DMA是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依于CPU的大量中断负载。
DMA技术中的内存数据搬移指令可以划分为多维数据搬移指令和一维数据搬移指令。其中,一维数据搬移指令是指对于连续个字节的数据的搬移指令;多维数据搬移指令是指对于多个源地址或者目标地址不连续的连续个字节的数据的搬移指令。
现有技术中,采用DMA技术进行内存数据的搬移的方法主要是获取多个数据搬移指令,将多个数据搬移指令调度给不同的承载DMA功能的逻辑电路,如果数据搬移指令是多维的,则由承载DMA功能的逻辑电路将每个多维数据搬移指令拆分成一维数据搬移指令,然后执行相应的内存数据搬移动作。
但是,现有技术中的搬移内存数据的方法,对于多个数据搬移指令的执行时间,取决于最复杂的的多维搬移指令在某一个承载DMA功能的逻辑电路上的执行时间。其它的逻辑电路在执行完自身需要执行的数据搬移指令后,就处于空闲状态。相对于仍在执行数据搬移指令的逻辑电路而言,处于空闲状态的逻辑电路无法得到充分利用,造成了硬件资源的浪费。
发明内容
本申请的目的是提供一种内存数据的搬移装置及方法,能够解决处于空闲状态的逻辑电路无法得到充分利用,造成了硬件资源浪费的问题。
为实现上述目的,本申请提供了如下方案:
根据本申请的第一方面的第一种可能的实现方式,本申请提供一种内存数据的搬移装置,包括:
拆分模块,用于将获取到的多维数据搬移指令拆分成多个一维数据搬移指令;
调度模块,将所述一维数据搬移指令分配至处于空闲状态的DMA模块;
所述DMA模块,用于执行所述一维数据搬移指令;
其中,所述DMA模块为多个。
结合第一方面的第二种可能的实现方式,所述拆分模块,具体包括:
参数值确定单元,用于确定所述多维数据搬移指令中的二维参数值和三维参数值;
计算单元,用于根据所述二维参数值和所述三维参数值,计算所述多维数据搬移指令需要拆分成的所述一维数据搬移指令的数目;
拆分单元,用于将所述多维数据搬移指令拆分成所述数目个所述一维数据搬移指令。
结合第一方面的第二种可能的实现方式的第一种具体实现方式,所述计算单元,具体包括:
乘积计算子单元,用于计算所述二维参数值与所述三维参数值的乘积;
数目确定子单元,用于将所述乘积确定为所述需要拆分成的所述一维数据搬移指令的数目。
结合第一方面的第四种可能的实现方式,所述调度模块,具体包括:
模块确定单元,用于确定处于空闲状态的所述DMA模块;
地址信息确定单元,用于确定处于空闲状态的所述DMA模块的地址信息;
分配单元,用于将所述一维数据搬移指令分配至所述地址信息表示的地址。
结合第一方面的第四种可能的实现方式的第一种具体实现方式,所述模块确定单元,具体包括:
电平信号获取子单元,用于获取所述DMA模块的状态位的电平信号;
判断子单元,用于判断所述电平信号的电位状态是否与预设电位状态相同,得到判断结果;
模块确定子单元,用于当所述判断结果为是时,则将所述DMA模块确定为处于空闲状态的所述DMA模块。
根据本申请的第二方面的第一种可能的实现方式,本申请提供一种内存数据的搬移方法,包括:
将获取到的多维数据搬移指令拆分成多个一维数据搬移指令;
将所述一维数据搬移指令分配至处于空闲状态的DMA模块;
由所述DMA模块执行所述一维数据搬移指令。
结合第二方面的第二种可能的实现方式,所述将获取到的多维数据搬移指令拆分成多个一维数据搬移指令,具体包括:
确定所述多维数据搬移指令中的二维参数值和三维参数值;
根据所述二维参数值和所述三维参数值,计算所述多维数据搬移指令需要拆分成的所述一维数据搬移指令的数目;
将所述多维数据搬移指令拆分成所述数目个所述一维数据搬移指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海华为技术有限公司,未经上海华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310697443.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:工装夹具
- 下一篇:一种用于自生CO2提高采收率的配方
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置