在现代处理器的设计过程中,仿真原型广泛应用于体系结构的性能评价、硬件设计的功能验证以及软件设计的仿真调试。然而,尽管目前有大量公开源代码的仿真原型可用,但其中绝大多数都是针对特定ISA处理器的特定体系结构编写,研究人员在构建自己所需的仿真原型时需要修改大量代码,花费大量时间调试验证。特别是微体系结构级仿真原型,由于要描述周期精确的数据通路和控制通路,需要修改的代码将会更多。本项目的目标是研究一种基于虚拟机的微体系结构级仿真原型快速构建方法,可以利用时序仿真与功能仿真耦合分离的原理,使用现有各种虚拟机作为功能模型,快速且准确地构建研究人员所需的特定微体系结构仿真原型,包括多线程、多核、异构多核、PIM、流处理体系结构等。除此以外,为加快仿真速度,该仿真原型还可将时序模型部分使用FPGA进行硬件加速,相对传统纯软件仿真原型的加速比预期达到100以上。
processor;simulation prototype;micro architecture;virtual machine;
本项目完成了一种基于虚拟机的微体系结构级仿真原型快速构建方法,可以利用功能仿真与时序仿真耦合分离的原理,使用现有Simics等各种虚拟机作为功能模型,借助Verilog/VHDL进行时序建模,并利用FPGA进行硬件加速,快速且准确地构建研究人员所需的特定微体系结构仿真原型。本项目使用软硬件混合仿真方法构建的x86仿真原型的仿真速度为38 MIPS,是传统纯软件仿真原型PTLsim的140倍。本项目还实现了面向浮点密集型应用的软硬件协同仿真原型实例。本项目的研究成果不仅适用于体系结构研究人员加快设计空间的评估速度,还特别适合于硬件设计人员构建自动化的功能验证平台。