论文部分内容阅读
随着集成电路技术的飞速发展,以及微处理器体系结构和微体系结构的不断进步,处理器的性能不断提高。但是,由于存储系统的发展速度远远滞后于CPU的发展速度,而且CPU和主存的速度差在进一步扩大,如何提高存储子系统的性能是微处理器设计者必须解决的关键问题。Cache作为提高存储子系统性能的一种有效途径,其组织结构与设计是当前体系结构设计的研究热点之一。 本文来源于西北工业大学航空微电子中心所承担的“十五”国防预研项目(项目编号41308010307),作者参与完成了“龙腾”C2微处理器的设计。该款处理器在接口和指令集上同Intel公司的486DX4处理器完全兼容。本文在分析了各种Cache设计和实现技术的基础上,提出了基于Simics虚拟仿真平台的程序全地址流的统计方法,并设计了一种使用十字链表直方图统计Cache缺失率的方案。将这两种技术应用于“龙腾”C2处理器Cache单元的设计,完成了龙腾C2处理器中的混合Cache单元(Unified Cache Unit)的设计和实现,并进行了充分的验证。 论文的主要工作如下: 1.考察了Intel486DX4处理器的体系结构,完成了“龙腾”C2微处理器片上Cache的设计和实现。综合的结果表明:“龙腾”C2片上Cache可以达到166M,满足“龙腾”C2处理器给定的频率的要求。 2.研究了现代Cache的设计方法,针对“龙腾”C2处理器的特点,提出了一种基于Simics虚拟仿真平台的程序全地址流的统计方法。并设计出了一种十字链表直方图Cache命中率统计方案,可以方便地统计任何大小和任何路数组相连Cache的命中率。 3.研究了现代Cache的实现方法,分析考察了基于SMIC标准宏单元库的几种实现方案,并选择一种合适的方案完成了片上Cache的存储单元的实现。 4.结合整个项目的验证计划,使用代码检查、时序验证、覆盖率检查、功能点验证和联合验证的方式对“龙腾”C2处理器的Cache单元进行了充分的验证。