摘要
分支目标缓存(BTB)是高端嵌入式CPU的主要耗能部件之一。针对BTB访问中引入的冗余功耗问题,提出了一种循环体访问过滤机制消除循环体指令流中顺序指令对BTB的无效访问。进一步提出了一种分支跟踪方法补偿循环过滤机制对循环体中非循环类分支指令的错误过滤造成的性能损失,节省了循环体指令流中顺序指令访问BTB的大量冗余功耗。基于Powerstone基准程序的仿真实验表明,在128表项BTB配置下,二级循环过滤器和4表项分支踪迹表可以减少约71.9%的BTB功耗,而平均每条指令周期数(CPI)退化仅为0.66%。
Branch target buffer (BTB) is one of the most power-hungry components in high-performance embedded CPUs. This paper proposed a loop access filtering mechanism to eliminate the redundant BTB operations for sequential instructions in loops. Furthermore, it proposed a branch tracing' method to compensate the performance penalty due to the over-filtering of the loop filter for the not-loop blanch instructions. It could reduce remarkable BTB power consumption by removing sequential instructions accessing the BTB. Simulation on Powerstone benchmark demonstrates that under the configuration of ]28-entry BTB, two-level loop filter and 4-entry branch trace table can achieve approximately 71.9% power reduction while only bring 0.66% cycle loss per instruction(CPI) on average.
出处
《计算机应用研究》
CSCD
北大核心
2012年第3期998-1001,共4页
Application Research of Computers
关键词
分支目标缓存
循环过滤
分支踪迹
功耗节省
性能补偿
branch target buffer
loop filtering
branch tracing
power reduction
performance compensation