论文部分内容阅读
现代处理器设计过程中,软件模拟器已经成为不可或缺的重要验证工具。与不使用模拟技术的计算机系统或处理器设计方法相比,软件模拟技术可以极大地降低设计成本和缩短设计周期。本实验室从事处理器设计已经多年,越发体验到软件模拟技术在工程设计中的重要性。鉴于早先开发的指令集模拟器在早期指令集设计中发挥了重要的作用,对于处理器体系结构的仿真主要依靠Verilog模型来实现,而利用该模型进行的仿真是非常耗时的。因此随着处理器设计的深入,为了快速反映处理器微结构的性能,本文以实际需求为出发点,参考现有的模拟器设计开发了针对嵌入式媒体数字信号处理器MediaDSP64(简称MD64)处理器的周期级模拟器SimMD64。通常开发一个微体系结构周期级软件模拟器是一项较为困难的工作,因此,本文在充分调研了国内外软件模拟技术的基础上,通过对比选择,确定以SimpleScalar模拟器为基础,开发出适合MD64处理器体系结构的周期级精确软件模拟器。一个完整的微体系结构周期级软件模拟器工具,不仅包括了模拟器本身,而且同时需要开发出相应的编译工具作为支持。因而在SimMD64的开发过程涉及了交叉编译工具链的开发与MD64处理器体系结构的建模,以及通用处理器模拟技术的应用等几个方面。SimMD64模拟器的开发做为本文的重点章节,依据第二章中提出的模拟器设计框架,从目标文件的加载、MMU功能模块的实现、TLB功能的模拟、cache模块的模拟、通用分支预测技术的采用直至MD64微体系结构的建模等几个方面,层层深入依次展开论述和介绍。通过图像、音视频编解码等媒体应用程序和数字信号处理应用程序在SimMD64模拟器上的评测结果与在MD64处理器的Verilog描述模型在ModelSim上评测结果进行的相似度对比实验,验证了SimMD64设计的可靠性--对富含分支指令和DMA操作的媒体应用程序模拟相似度达到76%以上,对于DSP kernel(无DMA操作,分支指令较少)应用程序的模拟相似度达到了96%以上。就模拟速度而言,进行指令集功能模拟,模拟速度可达到7.20M/s(每秒7.20兆条指令),进行周期级模拟速度可达0.52M/s。最后,通过具体实验提出了对MD64处理器设计的改进方案,为今后进一步开发多核模拟器打下了良好的基础。