【技术实现步骤摘要】
生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法
[0001]本专利技术涉及CPU芯片仿真
,具体而言,涉及一种生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法,更具体地是通过生成可执行文件来实现仿真切片恢复的一种CPU芯片仿真加速方法。
技术介绍
[0002]切片仿真是常用的对CPU芯片进行验证的手段,如果CPU芯片能够无错执行切片,那么所生成的指令日志应该和生成的切片在模拟器上执行的指令日志一致,因此,切片仿真可以用于验证CPU的正确性。CPU芯片在验证的过程中,需要执行大量程序以验证其稳定性,因而芯片仿真执行是一个非常耗时的过程。
[0003]仿真切片通常是生成切片程序的执行上下文,其包括内存、磁盘、寄存器、缓存的快照等,并恢复到仿真模型中。当真实CPU芯片硬件没有被建模时,特别是乱序执行CPU模型缺失的时候,通过不同的仿真模型生成出来的快照无法恢复到真实的硬件模型中。
[0004]业内常采用如表1所列举的几种常见切片方法,比较每种方法的切片仿真应用场景和硬件CPU模型的关系如下:r/>[0005]表本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法,其特征在于,包括:步骤S1:采用行为仿真模型与SimPoint结合摘取指定程序中权重较高部分的基本块向量,生成特征切片,其中,所述行为仿真模型为gem5;步骤S2:修改行为仿真模型,并使用开发的指令和指令上下文跟踪功能再次运行行为仿真模型,在特征切片的开始执行阶段开始跟踪特征切片的执行,直到特征切片执行的结束;步骤S3:在特征切片执行完成后,指令上下文跟踪功能根据跟踪结果生成一段切片汇编代码,得到指定程序切片;步骤S4:利用目标测试系统上可执行的测试固件,执行得到的指定程序切片。2.根据权利要求1所述的生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法,其特征在于,步骤S1具体包括:步骤S1.1:在运行行为仿真模型gem5的同时引入SimPoint切片功能,分析并提取权重最高的程序基本块向量,生成可被SimPoint使用的且用于分析权重的基本块向量侧写文件;步骤S1.2:运行SimPoint分析基本块向量侧写文件,输出SimPoint权重分析结果文件;步骤S1.3:再次执行行为仿真模型gem5,读入SimPoint权重结果文件中指定基本块向量侧写文件有较高权重的基本块向量,并生成模拟器能够重复执行的检查点快照,得到特征切片。3.根据权利要求1所述的生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法,其特征在于,步骤S2中的指令和指令上下文跟踪功能为一gem5模拟器的插件,当每次指定程序的指令被gem5模拟器的CPU执行时调用该插件,此时记录被执行的指令码和当时的模拟器内的内存与寄存器的状态。4.根据权利要求1所述的生成可执行文件进行仿真切片恢复的CPU芯片仿真加速方法,其特征在于,步骤S2中的跟踪功能包括对CPU寄存器、代码及数据的自动跟踪,其中数据还包括数据段、栈和堆,具体包括:对CPU寄存器的跟踪只在特征切片的开始执行的时候,并记录所有上下文寄存器的信息;对栈的跟踪是在特征切片的开始执行的时候,通过堆栈指针记录切片开始时...
【专利技术属性】
技术研发人员:郑律,姜志颖,王飞,范东睿,
申请(专利权)人:苏州睿芯集成电路科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。