[发明专利]一种数据处理方法及处理器有效
| 申请号: | 200710076982.2 | 申请日: | 2007-09-12 |
| 公开(公告)号: | CN101122851A | 公开(公告)日: | 2008-02-13 |
| 发明(设计)人: | 董杰明;夏晶;周昔平;金西;张鑫;孙岩 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F9/38 | 分类号: | G06F9/38 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 518129广东省*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据处理 方法 处理器 | ||
技术领域
本发明属于数据处理领域,尤其涉及一种数据处理方法及处理器。
背景技术
精简指令集计算机(Reduced Instruction Set Computing,RISC)的主要特点是中央处理器(Central Processing Unit,CPU)的指令集大大简化,通过简单的指令来提高机器的性能,特别是提高CPU执行程序的速度,主要有如下特点:
(1)RISC结构采用精简的、长短划一的指令集,它的指令数少、寻址方式少、指令格式少,使得大多数的操作获得了尽可能高的效率;
(2)所有的指令都在一个时钟周期完成,且指令长度相等;
(3)采用装载(Load)、存储(Store)结构;
执行与内存有关的操作指令,只允许Load和Store指令执行存储器操作,其余指令只访问保存在处理器寄存器中的操作数,减少了访问内存的次数,降低了对内存带宽的要求,并且所有的操作限制于只针对寄存器,有助于指令集的简化。
(4)拥有较大的寄存器堆;
为了便于实现多数指令在寄存器之间的操作,必须有足够量的协处理数据操作(CDP)通用寄存器。足量的寄存器减少了对内存的访问,加快了运算速度,工业化的RISC系统中至少采用32个通用寄存器。
(5)采用高速缓存(Cache)结构;
为保证指令不间断地传送给CPU运算器,CPU设置了一定大小的Cache以扩展存储器的带宽,满足CPU频繁取指需求,一般有指令Cache和数据Cache两个独立Cache,分别存储指令和数据。
(6)采用多级指令流水线结构;
RISC的特点决定了其很适合采用流水线结构,可使每一时刻都有多条指令重叠执行,每条指令都以相同的步调执行,使CPU始终是忙的。
随着微处理器的发展,为了达到更高的计算性能,并行流水线数目增多,流水线深度增加,数据宽度增加,要求寄存器同时可用的端口数目增多,以便多条流水线可以同时访问寄存器堆,从而使得寄存器堆的面积和功耗都大大增加。同时,寄存器堆端口数的增多使得控制逻辑更加复杂,系统的稳定性下降,限制了时钟的频率,增加了设计的复杂程度。
为了满足多条流水线写寄存器堆的需要,目前一般增加寄存器读写端口的数量,每条流水线有自己的寄存器堆访问端口,以使系统的速度提高。多端口寄存器堆的使用大大增加了产品的功耗,不但使寄存器堆的动态功耗增加,同时漏电流的通路也大大增加,从而使得静态功耗也大幅增加。当发射(Issue)宽度增加,寄存器堆的端口也随之增加时,寄存器堆的面积会随着发射宽度的二次方增加。同时,复杂的控制结构限制了时钟频率的提高,增加了设计的复杂度和错误产生概率。
为了解决上述问题,现有技术中采用分时复用各端口的方法减少寄存器堆的端口数量。简单的分时复用是在时钟上升沿和下降沿分别进行寄存器操作,即在一个时钟周期内进行多次寄存器操作,将寄存器堆的端口数量减下来。具体有两种实现方式:一种方式是寄存器堆的端口功能固定,写端口始终是写端口,每个时钟周期进行多次写操作,读端口始终是读端口,每个时钟周期进行多次读操作。另一种方式是寄存器堆的端口功能变化,在时钟上升沿进行读操作,在时钟下降沿进行写操作,或者相反。
在上述方案中,分时复用寄存器堆各端口的方式增加了时序控制的复杂性,从而增加了错误的产生概率,同时也增加了产品的设计难度和周期。端口功能变化的实现方式比端口功能固定的实现方式的灵活性大一些,但时序控制更加复杂,对寄存器堆的访问时间必须大大少于半个时钟周期的长度,限制了流水线时钟的最高频率。
发明内容
本发明实施例的目的在于提供一种数据处理方法,旨在解决现有方案在减少寄存器堆端口数量时,产生的时序控制复杂、错误产生概率高的问题。
本发明实施例是这样实现的,一种数据处理方法,所述方法包括下述步骤:
检测寄存器堆当前是否存在空闲写端口;
如果寄存器堆当前没有空闲写端口,则根据写寄存器堆的指令顺序,将当前写寄存器堆的指令所在流水线中的数据缓存;
如果寄存器堆当前存在空闲写端口,则优先将缓存的数据写入寄存器堆。
本发明实施例的另一目的在于提供一种数据处理器,用于对流水线的数据进行处理,所述数据处理器包括:
寄存器堆,用于寄存流水线对操作数的处理结果;
缓冲单元,用于缓存指令所在流水线中的数据;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710076982.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:加工设备直接装载
- 下一篇:湿润原料的干燥方法及装置





