● 摘要
随着微处理器芯片被越来越广泛地应用于嵌入式系统中,其功耗问题变得日益突出,并且已经成为制约高性能处理器发展的瓶颈问题。如何在保证微处理器性能的同时提高能耗效率成为当今嵌入式系统开发所面临的关键难题。Cache作为CPU与主存之间的缓冲桥梁,其给系统带来高性能的同时也消耗了巨大能量。因此研究低功耗Cache技术是解决整个嵌入式系统功耗问题的良好切入点。
本文主要从体系结构级设计层面出发研究动态可重构Cache结构和配置策略。 Cache的主要参数对系统性能和功耗有重要影响,从严格意义上讲,每个特定环境下的应用程序都对应着一个最优Cache参数。动态可重构Cache的目标是让其能够在不同的运行环境下自主调节参数至最优配置。本文首先将前人的降维可重构思想扩展应用于两级Cache体系结构,设计出对应的参数检索策略,在此基础上,本文提出了一种改进的降维可重构算法,这种算法通过对运行时Cache评价指数的分析,以较小的检索代价找到最优Cache配置,从而达到优化处理器整体性能与功耗的目的。将运行程序分成合理的程序段,在对应程序段采用改进的降维可重构算法在Cache参数空间检索最优解,达到降低系统整体能耗和时延的目的。
本课题对采用改进的降维可重构算法的Cache的能耗优化效果进行了仿真验证。验证借助了基于SimpleScalar的功耗仿真器Sim-Wattch和测试程序集SPEC CPU2006。实验结果表明,采用改进的降维可重构Cache算法,重构次数明显少于穷举重构Cache算法,与改进前的降维可重构算法相比优化了最优参数检索路径。在Cache失效率方面,改进的降维可重构算法略逊于改进前的降维可重构算法,但仍优于穷举法。功耗方面,采用改进的降维可重构算法比固定结构Cache的能耗降低37%,表现优于穷举法和改进前的降维可重构算法。