[发明专利]一种数据读取方法及设备有效
申请号: | 201310291218.2 | 申请日: | 2013-07-11 |
公开(公告)号: | CN104281545B | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 张立新;张义;张科;江涛 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F13/16 | 分类号: | G06F13/16;G06F13/28 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 读取 方法 设备 | ||
技术领域
本发明涉及计算机领域,尤其涉及一种数据读取方法及设备。
背景技术
众所周知,计算机系统一般由处理器、内存、输入设备、输出设备和总线五部分组成,其中内存是用来保存处理器运行所需的数据和指令,动态随机存取存储器(Dynamic Random Access Memory,DRAM)是目前计算机系统的内存的主流实现。
对DRAM中数据的读取一般都是通过行加列的方式实现的,具体的,当内存控制器(Memory Controller,MC)接收到中央处理器(Center Processing Unit,CPU)发送的数据访问指令时,首先对数据访问指令进行解析得到需要访问的数据在DRAM中的行地址和列地址,然后向DRAM发出行地址,以使得DRAM将该行地址对应行的数据存储在行缓冲区(row buffer)中,最后再将列地址发送至DRAM,这样DRAM根据接收到的列地址便可以从row buffer中选中需要读取的数据块,并通过DRAM和MC之间的数据线发送至MC的缓存中,再由MC将需要读取的数据块发送至CPU。由此可以看出,传统的数据读取方法能够在功能上满足访问需求,但在如读取大文件或者播放视频文件等场景下,CPU需要从DRAM中获取到连续的大量的数据,传统的方法是CPU向MC发送多个数据访问指令,以便MC不断的向DRAM发送多个列地址,这样以保证能够读取大量连续的数据,但是这样的操作复杂并且功耗高。
对于这种需要连续读取大量数据的场景,现有技术提供一种解决方案,在第三代双倍数据率同步动态随机存取存储器(Double-Data-Rate Three Synchronous Dynamic Random Access Memory,DDR3SDRAM)的规范中,提出一种突发读(burst read)的操作,具体的是通过burst read命令,MC只需要向DRAM发出一个行地址和一个列地址,DRAM就可以将从该列地址开始的连续的N(N<9)个数据块读出发送至MC。
现有技术中至少存在如下问题:众所周知,DRAM中一行数据的大小一般为4KB-64KB,而在DDR3SDRAM的规范中,从MC的角度来看是以最大8倍的数据位宽进行数据的读取,也就是说一次性最大读取数据的大小为512bit,粒度是比传统的64bit或128bit大,但是仍然远小于DRAM中一行数据的大小,若要读出整个row buffer中缓存的DRAM的一行数据,仍需要多次发出burst read命令,也就是说还是会出现操作复杂且功耗高等问题。因此,在需要连续读取大量数据的场景中,如何在降低操作复杂度,且降低功耗高已成为本领域技术人员研究的重要课题。
发明内容
本发明的实施例提供一种数据读取方法及设备,降低了大量数据连续读取过程中的操作复杂度和功耗。
为达到上述目的,本发明的实施例采用如下技术方案:
本发明的第一方面,提供一种数据读取方法,包括:
内存控制器MC将需要读取的数据在存储器中的行地址发送至所述存储器,以便所述存储器将所述存储器中与所述行地址对应行的数据存储在所述存储器的缓冲区中;
所述MC向所述存储器发送第一命令,以便所述存储器根据所述第一命令遍历所有列地址将所述需要读取的数据发送至所述MC;其中,所述需要读取的数据为所述缓冲区中存储的与所述行地址对应行的所有数据,所述第一命令用于激活所述存储器中的直接存储器存取DMA逻辑;
所述MC接收所述存储器发送的所述需要读取的数据。
结合第一方面,在一种可能的实现方式中,在所述内存控制器MC将需要读取的数据的行地址发送至存储器之前,还包括:
所述MC接收中央处理器CPU发送的数据访问指令;其中,所述数据访问指令中包括所述需要读取的数据在所述存储器中的所述行地址;
所述MC解析所述数据访问指令得到所述行地址。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,所述数据访问指令中包括指示标识,所述指示标识用于指示所述需要读取的数据为所述行地址对应行的所有数据;
所述MC解析所述数据访问指令得到所述行地址,包括:
所述MC解析所述数据访问指令得到所述行地址和所述指示标识;
所述MC向所述存储器发送第一命令,包括:
所述MC根据所述指示标识向所述存储器发送所述第一命令。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310291218.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:公告服务查询终端
- 下一篇:用于从寄存器提取写掩码的系统、装置和方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置