[发明专利]基于需求的处理资源分配无效
申请号: | 200710306675.9 | 申请日: | 2007-09-18 |
公开(公告)号: | CN101196868A | 公开(公告)日: | 2008-06-11 |
发明(设计)人: | A·索达尼;C·K·谭;S·米尔克斯;J·豪金斯 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F15/78 | 分类号: | G06F15/78;G06F1/32 |
代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 曾祥夌;魏军 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 需求 处理 资源 分配 | ||
1.一种装置,包括:
堆栈控制器,用于根据堆栈是否将被已分配的指令使用来启用或禁用所述堆栈。
2.如权利要求1所述的装置,其特征在于,所述指令是单指令多数据指令,以及所述堆栈是执行与所述单指令多数据指令相关联的操作的单指令多数据堆栈。
3.如权利要求1所述的装置,其特征在于,所述指令是浮点指令,以及所述堆栈是执行与浮点指令相关联的操作的浮点堆栈。
4.如权利要求3所述的装置,其特征在于,还包括重排序缓冲区,用于存储与已分配的指令相对应的信息,并且指示已分配的指令是否已经被引退。
5.如权利要求1所述的装置,其特征在于,当重排序缓冲区中存储的所有先于所述指令的指令已经被引退时,所述堆栈控制器禁用所述堆栈。
6.如权利要求5所述的装置,其特征在于,所述堆栈控制器使用第一位来指示指令是否已经被分配,以及使用第二位来指示指令是否已经被引退。
7.如权利要求6所述的装置,其特征在于,所述第一位对应于指出重排序缓冲区中最近分配的指令的头指针,所述第二位对应于指出重排序缓冲区中已经被引退的最先分配的指令的尾指针。
8.如权利要求7所述的装置,其特征在于,还包括用于分配指令的分配单元,用于调度指令的调度器和用于引退指令的引退单元。
9.一种系统,包括:
存储器,存储第一指令和第二指令;
处理器,检测寄存器是否已经分配给第一或第二指令,以及确定是否响应所述分配来启用对应的第一或第二执行堆栈,以及所述处理器响应第一或第二指令被引退,来进一步确定是否禁用所述第一或第二执行堆栈。
10.如权利要求9所述的系统,其特征在于,所述处理器包括分配单元来分配寄存器给所述第一或第二指令。
11.如权利要求10所述的系统,其特征在于,所述处理器还包括堆栈控制器来从所述分配单元接收关于所述寄存器是否已经分配给第一或第二指令的指示,以及在所述第一或第二执行堆栈尚未启用时,响应所述分配来启用所述第一或第二执行堆栈。
12.如权利要求11所述的系统,其特征在于,所述处理器还包括引退单元,用于引退所述第一或第二指令。
13.如权利要求12所述的系统,其特征在于,所述分配单元从所述引退单元接收关于所述第一或第二指令是否已经引退的指示。
14.如权利要求13所述的系统,其特征在于,所述处理器还包括重排序缓冲区,所述缓冲区的条目与所述分配单元为所述第一和第二指令分配寄存器的顺序相对应。
15.如权利要求14所述的系统,其特征在于,如果所述第一或第二指令是重排序缓冲区中将要被引退的条目的代的最后一个指令,则所述堆栈控制器禁用所述第一或第二堆栈。
16.如权利要求15所述的系统,其特征在于,所述第一和第二指令分别对应于单指令多数据指令和浮点指令,以及所述第一和第二执行堆栈分别对应于单指令多数据堆栈和浮点堆栈。
17.一种方法,包括:
为第一指令分配至少一个寄存器;
设置第一位来指示所述至少一个寄存器已经被分配;
在重排序缓冲区中存储所述至少一个寄存器的分配的指示;
引退所述第一指令;
设置第二位来指示所述第一指令是否为将被引退的重排序缓冲区条目的第一代的最后一个指令。
18.如权利要求17所述的方法,其特征在于,还包括:如果所述堆栈在所述至少一个寄存器被分配之前禁用,则响应所述第一位被设置,启用对应于所述第一指令的堆栈。
19.如权利要求17所述的方法,其特征在于,还包括:响应所述第一位没有被设置,禁用所述堆栈。
20.如权利要求17所述的方法,其特征在于,所述重排序缓冲区由头指针变址来指向对应于被分配的至少一个寄存器的重排序缓冲区条目,以及所述重排序缓冲区由尾指针变址来指向对应于被引退的指令的重排序缓冲区条目。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710306675.9/1.html,转载请声明来源钻瓜专利网。