论文部分内容阅读
以往的超标量处理器通过采用更先进的工艺、更高的主频、更多的晶体管数目提高性能水平,所付出的代价是处理器的高功耗。近年来,功耗的显著增长使得处理器设计不再以追求主频提升为主要目标,而更注重提高功耗效率。从主流超标量处理器的功耗分布来看,由RAM和CAM构成的片上存储部件所占的功耗比重最大。如何改进这些关键性的存储部件并进行有效管理,在对性能影响尽可能小的前提下充分降低功耗开销是本文的主要研究课题。本文主要对超标量处理器中若干关键的片上存储部件进行研究,同时还充分考虑对同时多线程(SMT)技术的支持,主要的创新结果如下。
发射队列中CAM标签的唤醒逻辑是主要的功耗来源。本文从指令的待唤醒操作数数目分类与等待时延特性出发,提出采用两级缓置和自适应多体技术减少CAM标签和唤醒逻辑功耗开销,共享并平衡对发射队列资源的占用。实验结果表明,该方法可降低发射队列功耗的67%,IPC性能损失为1.9%,并且在发射级可以获得潜在更高的时钟频率,适用于SMT执行。
物理寄存器堆的多端口设计在提供峰值发射带宽需求的同时,也带来显著的功耗开销。本文基于对物理寄存器生命周期的划分和观察,提出利用小的辅助性结构管理一些活跃的寄存器值,分担主寄存器堆的访问压力,从而降低其端口数目和功耗。实验结果表明,该方法可降低寄存器堆功耗的42%,IPC性能损失为2.8%,不影响时钟频率。
Load.Store队列的CAM相联查找操作是主要的功耗来源。本文分析了Load-Store队列相联查找命中的充分必要条件,提出显式的利用年龄编码表示程序的顺序性条件约束,提高了基于计数器的Bloom过滤算法的过滤比率。实验结果表明,采用年龄编码的Bloom过滤算法,可将Load-Store队列总的功耗降低85%,在过滤比率和功耗节省上比基于计数器的算法提高5%。
随着工艺特征尺寸的减小,漏电流功耗显著增加。本文分析了负载程序在访问各数据Cache行的重用距离分布特性,结合DrowsyCache技术提出一种利用三态有限状态机的Cache漏电流控制策略。实验结果表明,基于重用距离的控制策略可以更好的适应负载程序在数据访问上的时间局部性,漏电流功耗降低了89%,比已有最好的策略多降低7%,能够限定漏电流功耗的上界,而对于性能的影响平均小于0.5%。