论文部分内容阅读
多核处理器将一个以上的计算内核集成在一个处理器中,通过多个核心的并行计算技术,增强处理器计算性能。单片多处理器结构(CMP-Chip Multiprocessor)又是该领域中备受关注的问题。本文简要论述了CMP的多级Cache存储结构,多级结构引起了Cache一致性问题,一致性协议的选取对CMP系统的性能有重要影响。使用何种Cache一致性模型以及它的设计方案是本文重点研究的内容。本文首先介绍了课题的背景及意义、CMP现状和Cache一致性协议现状,简要介绍了CMP的结构、优势和设计的关键问题,同时深入研究了Cache技术,包括Cache基本结构、工作原理、技术分析、替换策略、写策略等。现有的两种Cache一致性协议——MESI协议和Dragon协议,本文分析了两种方案的优缺点:MESI协议因其在不同处理器的私有Cache之间传送数据,而导致存取时间的增加;Dragon协议更新本地处理器私有Cache中的副本时,同时更新含有该副本的其他Cache,增加存取时间的同时占用了大量的总线带宽。在此基础上本文提出了一种含有SC-Cache(Shared Coherence Cache)的基于写无效和写回策略的总线监听CSC(Coherence with SC-Cache)协议。与传统的总线监听协议不同的是,包含共享副本的Cache块只存在于SC-Cache中,各个处理器访问SC-Cache对共享块进行读写操作。最后,本文论述了设计验证的流程和实验用到的工具,给出了实验验证结果。通过修改代码在SimOS全系统仿真模拟器中实现该协议,同时实现MESI协议和Dragon协议,分别在修改后的平台上运行SPEC95标准测试集,动态记录实验中处理器执行的结果。对三种协议实验后得到数据进行分析汇总并比较,结果表明CSC协议的设计减少了访问延迟,提高了存取速度,证明了本文所提出的设计内容具有很好的研究价值。