关键词:
SCMP
双环结构
Cache一致性
模拟
实现
摘要:
单芯片多处理器(SCMP)系统是当前计算机体系结构研究的热点问题之一。与传统的多处理机系统一样,Cache一致性问题也是片内多处理器系统必须首先解决的问题。本文分析了传统的多处理机系统在解决数据一致性问题上所普遍采用的两种协议以及这两种协议所存在的不足之处,研究了当前国外几种典型的片内多处理器系统模型在数据一致性问题上所采用的技术,针对这些技术所存在的缺陷,给出了我们在片内Cache一致性问题上所采用的“双环结构”的解决方法。 在此基础上,本文主要针对双环结构的设计思想,采用了硬件描述语言对其进行了模拟与实现。首先我们对带有双环结构的Cache从功能上对其进行了模块划分,分配了每个模块所要完成的功能。其次,在认真分析模块与模块之间关联关系的基础上,详细地描述了我们在设计与实现过程中的关键技术。第三,对所划分的模块采用硬件描述语言Verilog进行具体的设计与实现。第四,将本文所设计的带有双环结构的Cache模块纳入本课题组所设计的SCMP模拟平台中,作为其中的一个子模块,选择几个具有一定代表性的应用程序对其功能和整体性能进行模拟和测试。 为了对双环结构设计在硬件开销和时间开销上做出正确的评价,本文最后,还在FPGAAdvantage for HDL Designer 5.4集成开发环境下对双环结构的设计进行了逻辑综合。 模拟和测试结果表明,基于双环结构的片内多处理器Cache一致性解决方法,有效地克服了总线检测和目录结构在维护数据一致性问题上不能很好地解决访问冲突等缺陷。能很好地解决cache数据一致性的问题。 逻辑综合结果表明双环结构的实现复杂度低、硬件开销也相对较小,能够较好的满足片内并行系统的需要。