[发明专利]跟踪高速缓存中节省功率的装置和方法无效
| 申请号: | 200710137015.2 | 申请日: | 2007-07-19 |
| 公开(公告)号: | CN101158926A | 公开(公告)日: | 2008-04-09 |
| 发明(设计)人: | 理查德·W.·多英;戈登·T.·戴维斯;MVV·A.·克里施纳;埃里克·F.·鲁宾逊;杰弗里·R.·萨莫斯;布雷特·奥尔森;约翰·D.·加布斯奇;苏梅德·W.·萨塔耶 | 申请(专利权)人: | 国际商业机器公司 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F1/32 |
| 代理公司: | 中国国际贸易促进委员会专利商标事务所 | 代理人: | 杜娟 |
| 地址: | 美国*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 跟踪 高速缓存 节省 功率 装置 方法 | ||
技术领域
本发明涉及跟踪高速缓存中节省功率的装置和方法。
背景技术
传统的处理器设计利用各种高速缓存结构来存储指令和数据的本地拷贝,以避免典型DRAM存储器的长存取时间。在典型的高速缓存层次结构中,较靠近处理器的高速缓存(L1)往往较小并且非常快,而较靠近DRAM的高速缓存(L2或L3)则往往大得多但是也较慢(较长的存取时间)。较大的高速缓存往往既处理指令也处理数据,而处理器系统在L1级上(即最靠近处理器核心)经常将包括分开的数据高速缓存和指令高速缓存。
所有这些高速缓存通常具有类似的结构,主要差别在于具体大小(例如高速缓存行大小、每同余类(congruence class)路线的数量、同余类的数量)。在L1指令高速缓存的情况下,当代码执行到达先前读取(fetch)的高速缓存行末端时,或者当在先前读取的高速缓存行内遇到采用的(或者至少预测采用的)分支时,高速缓存被访问。在任一情况下,下一指令地址被呈现给高速缓存。在典型操作中,同余类被通过缩短的地址(忽略高序位)选择,并且通过将地址匹配到该同余类内每一路线的标记内的地址字段的内容来选择该同余类内的特定路线。
用于索引和用于匹配标记的地址可以使用有效地址或真实地址(依赖于超过本公开范围的系统问题)。通常,为了索引到标记阵列中和为了比较标记内容,低序地址位(例如在高速缓存行内选择特定字节或字)被忽略。这是因为对于常规高速缓存,所有这些字节/字将被存储在相同的高速缓存行中。
近来,已经使用存储指令执行的跟踪(trace)的指令高速缓存,以英特尔奔腾4最为出名。这些“跟踪高速缓存”通常将来自不同地址区域的指令块(即本来要求多个常规高速缓存行的指令块)进行组合。跟踪高速缓存的目的是更有效地处理分支,至少当分支被很好地预测时如此。分支目标地址处的指令就是跟踪行中的下一指令,允许处理器像其执行无分支的长代码块一样有效地执行具有高分支密度的代码。就像几个常规高速缓存行的一些部分可以组成单个跟踪行一样,几个跟踪行可以包含同一常规高速缓存行的一些部分。因此,在跟踪高速缓存中标记必须被有差别地处理。在常规高速缓存中,低序地址行被忽略,但对于跟踪行,在标记中必须使用完整地址。
相关的差别在于对于到高速缓存行中的索引的处理。对于常规高速缓存行,在选择高速缓存行(索引和标记比较)时,最低有效位被忽略,但是在进入新高速缓存行的分支的情况下,这些最低有效位被用来确定从用于读取分支目标处的第一个指令的高速缓存行的开始处的偏移。相反,分支目标的地址将是跟踪行中的第一个指令。因此不需要偏移。从前一高速缓存行末端经过顺序指令执行的直通(flow-through)仅使用零偏移,因为它将执行下一高速缓存行中的第一个指令(与其是否是跟踪行无关)。完整的标记比较将从同余类中选择合适的行。在期望的分支目标地址在跟踪行内但不是该跟踪行中的第一个指令的情况下,跟踪高速缓存将声明未命中,并可能构造在该分支目标处开始的新跟踪行。
发明内容
本发明通过只访问在跟踪高速缓存阵列内有效的指令来实现功率节省。跟踪高速缓存行的大小可变(由跟踪产生规则确定),并且每一个跟踪行的大小被存储在跟踪高速缓存目录中。在访问所述目录并确定高速缓存命中后,阵列只被使能到跟踪行的大小。通过不访问跟踪高速缓存的一部分而节省了功率。
更具体地,本发明也通过对指令解码中的锁存器进行时钟门控(不使能)并且对不在跟踪中的那些指令进行路由来节省功率。这也由跟踪高速缓存大小确定,并且还被作为将时钟门控向下游继续的有效位传播到解码/执行流水线中。
还通过以处理器核心剩余部分频率的一半来运行指令跟踪单元节省功率。由于跟踪高速缓存每次访问提供大量的指令(最多达24),所以跟踪单元能够较慢地运行并仍维持到执行单元的恒定指令流。分支预测也能够消耗可观的功率量。分支预测逻辑在高速缓存之前,并且把预测信息包含在跟踪中。当发生跟踪高速缓存命中时,只在跟踪形成期间而不在正常操作期间消耗分支预测功率。
附图说明
已经陈述了本发明的一些目的,结合附图,随着描述的开展,其他的目的将会出现,在附图中:
图1是计算机系统中央处理器和分层的存储器的工作耦合的图示,所述分层的存储器具有第一级、第二级和第三级高速缓存及DRAM;
图2是在具体实施本发明的装置的单元间的某些指令检索交互作用的图示;
图3是在根据本发明的高速缓存中保持的数据的表示;和
图4是具体实施本发明的装置的某些硬件单元的框图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710137015.2/2.html,转载请声明来源钻瓜专利网。





