[发明专利]一种用以储存目标地址的分支目标缓冲器系统及方法有效
申请号: | 200810083742.X | 申请日: | 2008-03-10 |
公开(公告)号: | CN101533344A | 公开(公告)日: | 2009-09-16 |
发明(设计)人: | 王得安 | 申请(专利权)人: | 王得安 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京银龙知识产权代理有限公司 | 代理人: | 许 静 |
地址: | 台湾省*** | 国省代码: | 中国台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用以 储存 目标 地址 分支 缓冲器 系统 方法 | ||
技术领域
本发明有关于计算机架构(computer architecture)中的处理器(processor)的分支目标缓冲器(BTB),尤其有关于一种用以储存目标地址的分支目标缓冲器系统及方法,应用于16位元、32位元、64位元或更多位元的处理器架构,在储存分支指令的目标地址时,分支目标缓冲器无须储存目标地址的全部位元,而仅须储存目标地址的变动范围、进位位元(Carry bit)、以及减/加位元(Sub/Add bit),为针对处理器(processor)中的分支目标缓冲器(BTB),提出减少目标地址栏位(target address field)位元个数的系统及方法。
背景技术
分支目标缓冲器(BTB)是用来储存分支指令(branch instruction)的目标地址(target address),并常被用来判断是否为分支指令,如果某一指令已被认定为分支指令,再由分支预测器(branch predictor)根据此分支指令跳跃的历史,来判断此分支指令是否会跳跃(taken or not),若分支预测器预测执行方向改变而并非为循序执行,则由分支目标缓冲器的目标地址栏位(target address field)提供目标地址,让程式继续执行下去。
图1为一示意图,用以显示说明现有技术中用以储存分支指令(branch instruction)的目标地址(target address)的分支目标缓冲器的运作情形。如图1中所示,分支目标缓冲器10储存了曾执行过的目标分支(target branch)的历史记录,分支目标缓冲器10具有多个进入点(entry)101,而进入点101的个数可为,例如,512个(512-entry),即,在分支目标缓冲器10中,例如,具有512个进入点101(512-entry)。
在分支目标缓冲器10中的一进入点(entry)101包含标签(tag)102、以及资料(data)103,标签102为先前执行过的分支指令地址的[31:9]位元(在此,以512-entry为例),而资料(data)103包含了前一个执行过的分支指令 的目标地址(target address)([31:0])104、以及二个位元的历史资讯105。
分支目标缓冲器10会抓取目前的指令地址,然后检查该指令地址是否为之前所曾执行过的分支指令。使用目前地址的[8:2]位元来读出标签(tag)102,然后跟目前指令地址的[31:9]位元做比对。如果目前分支指令地址和快取中的标签(tag)102相同,资料103中的记录历史资讯的二位元历史资讯105会指出该分支指令常被抓取,分支目标缓冲器10将使用目标地址104做为下一个要传送到指令快取的指令地址。资料103中的二个历史记录位元历史资讯105代表了四种在分支目标缓冲器10的分支进入点(entry)101里可能的状况。
纵观现有技术,分支目标缓冲器在储存分支指令的目标地址(target address)时,必须储存全部的目标地址栏位位元,因而,分支目标缓冲器所含的位元数总数无法降低,致使晶片的面积以及耗电功率无法进一步降低,因此,如何能让分支目标缓冲器所必须储存、使用的位元数总数减少,并可应用于16位元、32位元、64位元或更多位元的处理器架构,但确可产生出完整的目标地址,并可达到相同的运算效能,以及达到降低晶片的面积以及耗电功率的目的,乃是待解决的问题。
发明内容
本发明的主要目的便是在于提供一种用以储存目标地址的分支目标缓冲器系统及方法,应用于16位元、32位元、64位元或更多位元的处理器架构,分支指令的目标地址储存环境,在储存分支指令的目标地址时,分支目标缓冲器无须储存目标地址的全部位元,而仅须储存目标地址的变动范围、进位位元(Carry bit)、以及减/加位元(Sub/Add bit)。
本发明的又一目的便是在于提供一种用以储存目标地址的分支目标缓冲器系统及方法,应用于16位元、32位元、64位元或更多位元的处理器架构,无须储存分支指令地址(branch instruction address)与目标地址(target address)相似的部分,因而减少了分支目标缓冲器(BTB)所须储存的目标地址栏位的位元个数。
本发明的再一目的便是在于提供一种用以储存目标地址的分支目标缓冲器系统及方法,应用于16位元、32位元、64位元或更多位元的处理器架构,虽使用较少的目标地址栏位位元个数,但确可产生出完整的目标地址,而并无运算效能的损失。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于王得安,未经王得安许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810083742.X/2.html,转载请声明来源钻瓜专利网。