论文部分内容阅读
随着片上系统(SoC)和嵌入式系统的发展,异构多核处理器开始进入人们的视线。为了缩短芯片开发周期并节约开发成本,需要有一个系统级的多核仿真工具。然而目前缺乏可用的系统级异构多核模拟平台,对异构多核仿真器的探讨也刚刚开始受到关注。本文提出了一种基于SimpleScalar并考虑到存储与总线扩展的异构多核仿真器。该仿真器采用SystemC实现对多个不同指令集的SimpleScalar模块的控制和同步,处理器内核之间通过共享存储区进行通信和数据共享。不同于其他基于SimpleScalar的多核仿真平台,由于采用了专门的共享存储区访问指令和系统调用,使这一多核仿真器的核间通信机制趋于完善。此外,特有的基于通信的同步方式——只在需要通信时才进行仿真器的核间同步——使多核仿真器的效率相对于原始SimpleScalar并没有太大的损失。本文所提出的多核仿真器框架,由于采用了SystemC来实现接口设计,因此具有良好的可扩展性。通过由共享存储区扩展出来的总线接口,既可以增加新的SimpleScalar内核,也可以挂接外部的硬件加速单元,实现协同仿真。本文在Linux平台上对该仿真器进行了大量的、有效的测试。除了学术界流行的测试基准程序之外,本文还对MP3解码程序进行了多核系统的移植,从解码结果和仿真统计数据上可以看出本设计所实现的多核仿真器是可靠的、高效的。最后,本文认为该仿真器是多核处理器的良好研究平台。据此可以进行有关单核内部结构、处理器整体结构乃至包括内存及总线的系统级研究。