论文部分内容阅读
在集成电路工艺以及微处理器性能需求的双重推动下,多核处理器逐渐取代单核处理器成为了市场的主流,微处理器的发展进入多核时代。当今大部分多核处理器采用共享存储的结构,各处理器核之间通过读写共享地址空间的数据进行通信,并通过高速缓存减少访存延时以及对存储带宽的压力,但各个私有高速缓存结构也带来了多核间不同高速缓存中数据的一致性问题。如何维护多核处理器中各个高速缓存的数据一致性是当前微处理器研发的一个重要课题。 本文基于北京大学微处理器研发中心正在研发的UniCore-3多核处理器,重点进行该处理器中缓存一致性控制部件(Snoop Control Unit,SCU)的设计与实现,包括根据需求制定设计方案,完成寄存器传输级逻辑实现,性能评测等工作。本文主要工作包括: 1.在调研分析的基础上制定缓存一致性控制部件的设计方案。主流多核处理器通常通过硬件实现缓存一致性协议解决一致性问题,普遍采用基于目录或者侦听的MESI与MOESI协议。结合不同缓存一致性协议的特点,并根据UniCore-3多核处理器互连结构、存储结构等具体特性,确定了UniCore-3将采用基于侦听的MOESI协议,通过缓存一致性控制部件维护高速缓存的一致性。 2.完成了缓存一致性控制部件的设计与实现工作。首先,根据需求分析,从缓存一致性协议出发,确定了缓存一致性控制总体流程;其次,分析解决了缓存一致性控制部件的设计要点;再次,确定了缓存一致性控制部件的工作机制,并在此基础上完成了缓存一致性控制部件内部结构和功能的划分与实现;最后,完成了寄存器传输级的编码工作。 3.对缓存一致性控制部件的实现要点进行了性能评测。通过评测缓存一致性控制流程各阶段的延时,分析了主要的耗时阶段及原因;通过评测缓存到缓存传输的延时,分析了缓存到缓存传输技术对缓存一致性控制的影响,分析结果显示采用缓存到缓存传输技术减少了缓存一致性控制延时,提升了缓存一致性控制效率。