论文部分内容阅读
随着片上系统(System On Chip,SoC)产业的不断发展,软件模拟器在体系架构设计、软硬件协同设计、验证测试等方面发挥的作用越来越大。在可配置专用处理器(RASP)核的开发设计过程中,完成了基于Matlab的算法计算模型以及基于SystemC的周期精确模型,虽然它们在算法设计和体系结构设计以及验证方面有着不可忽视的作用,但它们都不适合进行带操作系统的全系统仿真。 为此,本文使用在模拟速度上优势明显的QEMU模拟器作为开发平台,利用其提供QOM(QEMU Object Model)虚拟设备模型,对RASP核进行功能上的仿真模拟。通过对RASP核的功能和体系架构分析,本文将RASP核的功能仿真模型依据功能划分为对外接口层、控制层以及算法实现层三个层次。其中,对外接口层负责RASP核寄存器组的模拟和SRAM的模拟,控制层负责RASP核的主控制器的模拟,算法实现层负责DMA模块、重构控制器、可重构运算阵列的模拟。本文按照以上三个层次的顺序,在对外接口层,实现了寄存器组模块和内部存储区模块;在算法控制层,设计并实现了运算任务队列,并利用运算任务队列实现了对内部算法的调度以及主模式、从模式和调试模式等运行模式;在算法实现层,设计了适用每个算法运算单元的通用分步运行流程,并在模拟RASP核内部运算IP的基础数学计算函数的基础上,以互相关算法和复数FIR算法为例介绍了算法运算单元的实现方法。最后,通过使用QEMU模拟器的QTests,本文设计并实现了简单易用的通用test case测试模板,并利用该模板对RASP核功能仿真模型进行了功能和性能上验证。 本文基于QEMU设计并实现了一个高性能的RASP核功能仿真模型,对比基于SystemC的周期精确模型,本模型在忽略内部细节的基础上实现了相同的功能与算法运算精度,并在运行速度上有着明显的提升。不同算法、不同数据量的情况下,指令运行的速度提升不同,小点数算法指令的执行速度得到了约3~6倍左右的提升,大点数算法指令的执行速度得到了约10~30倍左右的提升。