[发明专利]即时功能级仿真器的实现方法和装置及仿真处理器有效
申请号: | 201310014349.6 | 申请日: | 2013-01-15 |
公开(公告)号: | CN103077073A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 程彬;鲍翀 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 即时 功能 仿真器 实现 方法 装置 仿真 处理器 | ||
技术领域
本发明实施例涉及仿真处理技术,尤其涉及一种即时功能级仿真器的实现方法和装置及仿真处理器。
背景技术
目前,为进行各种硬件器件的调试、试验,往往需要将待调试器件作为目标机,在宿主机上配置仿真器,通过宿主机执行仿真器中的指令来模拟目标机动作。基于此需求,现有技术提供了多种仿真器来完成此仿真过程,例如常用的是功能级仿真器。
功能级仿真器用于将特定类型的机器指令翻译为能在宿主机上执行的仿真指令。因此功能级仿真器能读入用特定类型的机器指令写成的程序,并将其在宿主机上成功执行。
常规的功能级仿真器实现技术,通过逐条读入机器指令加以翻译再执行从而完成仿真功能。而目前较为流行的即时(just-in-time,以下简称JIT)功能级仿真器,其特点是一次读入多条机器指令构成的指令块,一起进行翻译和执行。因此相较于逐条翻译执行的功能级仿真器而言,能大幅提高仿真器的执行速度。
JIT功能级仿真器的执行阶段是一个动态执行的过程。JIT功能级仿真器只能在指令块中可能触发异常的地方,跳出执行阶段进行相应的异常识别和异常处理,从而导致JIT功能级仿真器执行速度大幅下降。由于JIT功能级仿真器本身会引入许多调度操作,因此在存在异常的场景下,相较于常规的功能级仿真器实现技术,JIT功能级仿真器的执行速度反而更慢。
发明内容
本发明实施例提供一种即时功能级仿真器的实现方法和装置及仿真处理器,以解决现有JIT仿真技术中异常处理时速度大幅降低的问题,以实现JIT仿真技术的执行性能提升。
第一方面,本发明实施例提供一种即时功能级仿真器的实现方法,包括:
读入目标机的机器指令;
将所述机器指令以及所述机器指令的异常识别指令和异常处理指令进行翻译,成为宿主机的执行仿真指令、异常识别仿真指令和异常处理仿真指令;
将所述执行仿真指令、异常识别仿真指令和异常处理仿真指令存储至宿主机的内存中;
从所述内存中读取所述仿真指令,并通过所述宿主机执行,且在执行所述异常识别仿真指令而识别到异常时,调用执行所述异常处理仿真指令以处理所述异常。
在第一方面的第一种可能的实现方式中,将所述机器指令以及所述机器指令的异常识别指令和异常处理指令进行翻译,成为宿主机的执行仿真指令、异常识别仿真指令和异常处理仿真指令包括:
将所述机器指令翻译成为宿主机的执行仿真指令;
按照预设规则获取所述机器指令的异常识别指令和异常处理指令;
将所述异常识别指令和异常处理指令翻译为宿主机的异常识别仿真指令和异常处理仿真指令。。
根据第一方面的第一种可能的实现方式,在第二种可能的实现方式中,将所述异常识别指令翻译为宿主机的异常识别仿真指令包括:
将设定异常机器指令对应的异常识别指令进行翻译,成为宿主机的异常识别仿真指令,并加入到所述设定异常机器指令对应的执行仿真指令位置前。
在第一方面的第三种可能的实现方式中,将所述机器指令以及所述机器指令的异常识别指令和异常处理指令进行翻译,成为宿主机的执行仿真指令、异常识别仿真指令和异常处理仿真指令包括:将所述机器指令以及所述机器指令的异常识别指令和异常处理指令翻译为宿主机的中间指令;采用编译器将所述中间指令编译为宿主机的执行仿真指令、异常识别仿真指令和异常处理仿真指令。
在第一方面的第四种可能的实现方式中,将所述执行仿真指令、异常识别仿真指令和异常处理仿真指令存储至宿主机的内存中之后,还包括:
将所述异常处理仿真指令在内存中的存储地址索引,添加至对应的异常识别仿真指令中,以便在识别到异常时调用所述异常处理仿真指令。
根据第一方面的第四种可能的实现方式,在第五种可能的实现方式中,从所述内存中读取所述执行仿真指令,并通过所述宿主机执行,且在执行所述异常识别仿真指令而识别到异常时,调用执行所述异常处理仿真指令以处理所述异常包括:
从所述内存中读取所述执行仿真指令,并通过所述宿主机执行;
在执行所述异常识别仿真指令而识别到异常时,设置与所述异常对应的标志位;
根据所述标志位从对应的异常识别仿真指令中查询获取所述索引;
根据索引调用执行异常处理仿真指令。
第二方面,本发明实施例提供一种即时功能级仿真器的实现装置,包括:
读取模块,用于读入目标机的机器指令;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310014349.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种医疗用支架
- 下一篇:一种LED矿灯壳体以及使用其的LED矿灯