[发明专利]用于指令高速缓存踪迹生成的设备和方法无效
申请号: | 200710149015.4 | 申请日: | 2007-09-04 |
公开(公告)号: | CN101187860A | 公开(公告)日: | 2008-05-28 |
发明(设计)人: | 理查德·W·多英;戈登·T·戴维斯;MVV·A·克里什纳;埃里克·F·鲁宾逊;杰弗里·R·萨默斯;布雷特·奥尔森;约翰·D·杰布希;萨梅德·W·萨塞伊 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F12/08 |
代理公司: | 北京市柳沈律师事务所 | 代理人: | 黄小临 |
地址: | 美国纽*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 指令 高速缓存 踪迹 生成 设备 方法 | ||
技术领域和背景技术
传统的处理器的设计利用各种高速缓存结构来存储指令和数据的本地副本,以避免典型的DRAM存储器的冗长的存取时间。在典型的高速缓存分级结构中,与处理器较靠近的高速缓存(一级或L1)往往容量较小或存取速度很快,而与RDAM较靠近的高速缓存(级别L2或L3)往往容量相当大但是存取速度也较慢(较长的存取时间)。容量较大的高速缓存倾向于处理指令和数据,处理器系统常常在级别L1(即最接近于处理器芯的级别)上包括分开的数据高速缓存和指令高速缓存。所有这些高速缓存通常都有相同的结构,其主要差别在于具体尺寸(即线尺寸、每个同余类的方式的数量和同余类的数量)。
在L1指令高速缓存的情况下,在代码执行达到以前提取的高速缓存线的末端或者是在以前提取的高速缓存线中遇到了所采用的(或者至少是预测要采用的)分支时,就存取高速缓存。在两者中任何一种情况下,下一个指令地址将呈现给该高速缓存。在典型的操作中,通过缩址(abbreviated address)(忽略高阶位)来选择同余类,并通过将此地址和在同余类中的每个方式的标记中的地址字段的内容相匹配,来选择同余类中的一个具体方式。根据此讨论的范围之外的系统问题,用于变址(indexing)和匹配标记的地址可以使用有效地址或真实地址。通常,忽略低阶地址位(即在高速缓存线中选择特定的字节和字词),以便变址(indexing)到标记阵列中和比较标记内容。这是因为对常规的高速缓存而言,所有这样的字节/字都将存储在相同的高速缓存线中。
近来,存储指令执行踪迹的指令高速缓存已经最显著地使用于因特奔腾4。这些“踪迹高速缓存”通常都将来自不同地址区的指令块组合在一起(这就是说,需要多个常规高速缓存线)。踪迹高速缓存的目的是更有效地处理分支,至少在很好地预测分支的情况下是这样。在分支目标地址上的指令仅仅是踪迹线中的下一个指令,它允许处理器执行具有高分支密度的代码,其有效程度就像它执行没有分支的代码的长块那样。正如某些常规的高速缓存线可以充当单个的踪迹线那样,几个踪迹线可以包含部分相同的常规的高速缓存线。正是因为这一点,在踪迹高速缓存中必须分别地处理标记。
在常规的高速缓存中,忽略低阶地址线,但是,对于踪迹线而言,在标记中必须使用全地址。相关的差别在于将变址(index)处理到高速缓存线中。对于常规的高速缓存线而言,在选择高速缓存线时(比较变址和标记两者),忽略最少有效位,但在分支进入新的高速缓存线的情况下,则使用最少有效位来确定相对于高速缓存线开始位置的偏移,以便提取在分支目标上的第一指令。相反,分支目标的地址将是踪迹线中的第一指令。这样就不需要偏移。从前一高速缓存线的末端经由顺序执行指令的流过(flow-through)仅使用零偏移,这是因为它将执行在下一个高速缓存线中的第一指令(而与其是否是踪迹线无关)。全标记比较将从同余类中选择适当的行。在所希望的分支目标地址位于踪迹线之中而第一指令又不在踪迹线之内的情况下,踪迹高速缓存将宣告漏失,并且可能构造在分支目标上开始的新的踪迹线。
为了让踪迹高速缓存设计能正确发挥功能并具有高级的性能,用于设计的踪迹生成方法是严格的。踪迹生成包括从较高级的存储器中提取指令,鉴别和预测在指令流中的所有的分支,由此建立一个指令的“基本块”,并将其加到当前的指令踪迹中。将基本块定义为指令流中直到并包括第一分支的所有指令。
发明内容
本发明的目的在于使用高精确的分支经历表(BHT)来预计分支被采用还是不被采用。将预测为不被采取的分支附加到踪迹缓冲器中,并且下一个基本块根据在提取缓冲器中其余的指令来构造。预测为被采用的分支清除剩余的提取缓冲器,并用分支目标地址寄存器(BTAC)来确定下一个地址。用这个地址来提取用于构造下一个基本块的下一个指令流。在下面将要说明的踪迹确定规则的限制条件中,通常将多个基本块加到相同的踪迹线中。
附图说明
通过下面结合所示附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1是一个示意图,该图示出计算机系统中心处理器和具有一级、二级和三级高速缓存的分层存储器以及DRAM的联合操作。
图2是一个示意图,该图示出L1指令高速缓存的结构。
图3是一个示意图,该图根据本发明示出了在产生踪迹时的指令流。
图4是一个示意图,该图根据本发明示出了在产生踪迹时的地址流。
图5是一个流程图,该图示出了与产生指令“A”的踪迹的相关过程,然后,指令“A”转移到指令“B”。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710149015.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:乳液基胶粘剂
- 下一篇:可切换发出光色的照明装置