论文部分内容阅读
现代微处理器系统中,Cache存储器在整个存储器层级处于最顶端,其后就是主存储器。现代处理器系统中,Cache通常由多级组成,分别为L1Cache,L2Cache和L3Cache。CPU在对数据进行访问时,首先是访问各级Cache,若各级Cache没有相关数据,才在最后访问主存储器。如果Cache中有CPU所访问的数据,则CPU只会对相关的Cache进行访问,不会访问其他Cache主存,这样就可以减少访问时间并且还能降低功耗。
近些年来,随着半导体工艺不断地改进提高,处理器芯片的集成度在急剧的增加,而且处理器的性能也在进一步提高。但是,功耗也随之增加。因为有着“存储墙”问题的出现,Cache正好能缓解这一问题。在处理器系统中,Cache有着非常重要的地位,同时处理器系统芯片中的功耗来源主要是Cache功耗。所以,Cache低功耗的研究有着现实性的意义。
本文主要是研究动态分步Tag比较的Cache低功耗技术,分析原来Tag比较技术的不足,重点介绍了部分Tag布隆过滤器(BF)和Hotline检查技术,并通过方针验证。
在一个高相关联的Cache中,Tag比较功耗占了Cache功耗的大部分。现有Tag比较方法中包括预测Cache命中或缺失。本文采用动态分步Tag比较的方法来预测Cache命中和Cache缺失的情况。部分Tag的布隆过滤器通过检查不相关的地址预测Cache缺失和Hotline检查预测Cache命中,这样可以减少Tag比较。提出了一种既减少Tag的比较又能满足性能约束和动态调整预测Cache命中或缺失的方法,就是采用分步Tag比较可以进一步降低功耗,又能自适应动态变化的Cache访问行为。本文采用的是SimpleScalar和Wattch模拟仿真工具,通过模拟仿真平台来分析相关数据,从实验结果可以发现所提出方法能降低功耗,与局部Tag增强Cache命中预测的方法相比较,该方法降低了大概20%的功耗。