[发明专利]运算处理装置有效
| 申请号: | 200880130631.8 | 申请日: | 2008-08-08 |
| 公开(公告)号: | CN102112965A | 公开(公告)日: | 2011-06-29 |
| 发明(设计)人: | 大贯祥照 | 申请(专利权)人: | 富士通株式会社 |
| 主分类号: | G06F9/34 | 分类号: | G06F9/34;G06F9/40 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 李伟;王轶 |
| 地址: | 日本神*** | 国省代码: | 日本;JP |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 运算 处理 装置 | ||
技术领域
本发明涉及具有寄存器窗口方式的寄存器文件的运算处理装置。本发明包含不使用用于从寄存器文件高速读取的临时存储元件而实现从寄存器进行高速读取的运算处理装置及其方法。
背景技术
RISC(Reduced Instruction Set Computer)架构的处理器(以下,称为RISC处理器),以寄存器-寄存器运算为中心,通过减少存储器访问来实现处理的高速化。其被称为加载存储架构。RISC处理器为了有效地进行上述寄存器-寄存器运算而具有大容量的寄存器文件。作为该寄存器文件,已知有以减少子程序调用时的变量的传递(变量的保存/复原)的溢出的方式构成的寄存器窗口方式的寄存器文件。
图1是表示寄存器窗口方式的寄存器文件的构成的图。
图1所示的寄存器文件1000具有一个寄存器窗口W global和8个寄存器窗口W0~W7,在这些窗口中,寄存器窗口W0~W7在逻辑上呈环状连结。各寄存器窗口Wk(k=0~7)分别具有Wk out,Wk in,以及Wk local这三种段。这三种段都由8个寄存器构成。Wk local具有各寄存器窗口固有的8个本地寄存器。Wk in具有8个in寄存器(输入寄存器),Wk out具有8个out寄存器(输出寄存器)。此外,W global具有在全部子程序中共享的8个全局寄存器。
Wk out用于向本程序调用的子程序传递变量,Wk in用于从调用了本程序的母程序取得变量。在寄存器文件1000中,Wk in和Wk+1 out、以及Wk out和Wk-1 in重叠构成,因此在调用子程序时,能够确保变量的传递和为此使用的寄存器的高速化。Wk local作为各子程序、即被母程序调用的子程序进行操作用的寄存器组使用。
各子程序在执行时使用8个寄存器窗口W0~W7中的任意一个。在此,执行中的子程序使用的寄存器窗口Wk(被称为当前窗口),在每次发生子程序调用时向右(用“SAVE(保存)”表示的虚线的箭头方向)旋转两个上述段,在子程序复原时向左(用“RESTORE(复原)”表示的虚线的箭头方向)旋转两个上述段。
在寄存器文件1000中,各寄存器窗口Wk通过分配给各自的寄存器窗口编号(以下,称为窗口编号)进行管理。给寄存器窗口Wk分配窗口编号k。执行中的子程序所使用的寄存器窗口Wk的窗口编号k被CWP(Current Window Pointer:当前窗口指针)保持。CWP的值通过SAVE(保存)命令的执行或陷井(trap)发生而加1,通过RESTORE(复原)命令的执行或利用RETT命令从陷井返回而减1。在图1中CWP的值是“0”,CWP指定寄存器窗口W0。这样,在本说明书中,将使CWP的值增减来切换当前窗口的命令称为“窗口切换命令”。
图1所示的寄存器文件1000具有1个窗口W global。W global是储存在全部程序中共享的数据的寄存器组。
各寄存器窗口Wk具有24个(=8×3)寄存器,寄存器窗口W global具有8个寄存器。在这些寄存器中,Wk in和Wk out寄存器重叠64个(=8×8),因此寄存器文件1000具有的寄存器的总数为136个(=24×8+8-64)。为了使处理器的运算器执行子程序,必须使寄存器文件1000的全部寄存器能够读写数据。
在这种情况下,从这样大的寄存器文件1000读取数据的电路的规模和速度都成为问题。为了解决该问题,提案了如图2所示那样构成的运算处理装置。
图2所示的运算处理装置2000具有主寄存器文件2001(以下记载为MRF)工作寄存器文件2002(以下记载为WRF)以及运算部2003,控制部2004。
一般来说,对于寄存器窗口方式的寄存器文件,若寄存器窗口数增加,则具备的寄存器的数量也变多,从而很难向运算器高速地提供操作数。因此,除了保持全部窗口的寄存器文件即MRF2001以外,将WRF2002保持为用于保持由指针CWP表示的MRF2001中的一个窗口的拷贝的MRF2001的子组,并利用该WRF2002来进行数据的读取。WRF2002仅保持由指针表示的窗口的拷贝。由于WRF2002与MRF2001相比较小,因此在从控制部2004供给读取的地址即READ ADDRESS来进行读取的情况下,能够使数据读取高速化。
运算部2003具备针对MRF2001的重命名寄存器ROB2005,进行运算结果的重命名。并且,在提交时从ROB2005向MRF2001、WRF2002写回运算结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于富士通株式会社,未经富士通株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880130631.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:高效节能锅
- 下一篇:一种可以摆放水杯的夹子





