首页> 外国专利> Hardware and software co-simulation including simulating a target processor using binary translation

Hardware and software co-simulation including simulating a target processor using binary translation

机译:硬件和软件协同仿真,包括使用二进制翻译来仿真目标处理器

摘要

A co-simulation design system to simulate on a host an electronic system that includes target digital circuitry and a target processor with an accompanying user program. The system includes a processor simulator to simulate execution of the user program by executing host software that includes an analyzed version of the user program. The system further includes a hardware simulator to simulate the target digital circuitry and an interface mechanism that couples the hardware simulator with the processor simulator. The user program is provided in binary form. Determining the analyzed version of the user program includes decomposing the user program into linear blocks, translating each linear block of the user program into host code that simulate the operations of the linear block, storing the host code of each linear block in a host code buffer for the linear block, and adding timing information into the code in the host code buffer on the time it would take for the target processor to execute the user program. The timing information incorporates target processor instruction timing. Adding of timing information includes inserting dynamic hooks into the host code that during execution invoke dynamic mechanisms that may effect timing and that cannot be determined ahead of execution such that while the processor simulator executes the analyzed version of the user program, the processor simulator accumulates simulation time according to a simulation time frame, the accumulated simulation time accounting for the target processor instruction timing as if the user program was executing on the target processor.
机译:一种协同仿真设计系统,用于在主机上仿真电子系统,该电子系统包括目标数字电路和目标处理器以及附带的用户程序。该系统包括处理器模拟器,以通过执行包括用户程序的分析版本的主机软件来模拟用户程序的执行。该系统还包括用于仿真目标数字电路的硬件模拟器和将硬件模拟器与处理器模拟器耦合的接口机制。用户程序以二进制形式提供。确定所分析的用户程序版本包括:将用户程序分解为线性块;将用户程序的每个线性块转换为模拟线性块操作的主机代码;将每个线性块的主机代码存储在主机代码缓冲区中对于线性块,并在目标处理器执行用户程序所需的时间上将时序信息添加到主机代码缓冲区中的代码中。时序信息包含目标处理器指令时序。添加计时信息包括在执行过程中调用可能影响计时并且在执行之前无法确定的动态机制的宿主代码中插入动态挂钩,以便在处理器模拟器执行用户程序的分析版本时,处理器模拟器会累积模拟根据仿真时间范围确定时间,累积的仿真时间将目标处理器的指令时间考虑在内,就好像用户程序正在目标处理器上执行一样。

著录项

  • 公开/公告号US6751583B1

    专利类型

  • 公开/公告日2004-06-15

    原文格式PDF

  • 申请/专利权人 VAST SYSTEMS TECHNOLOGY CORP;

    申请/专利号US20010933579

  • 发明设计人 NEVILLE A. CLARKE;JAMES R. TOROSSIAN;

    申请日2001-08-20

  • 分类号G06F94/55;G06F175/00;

  • 国家 US

  • 入库时间 2022-08-21 23:18:38

相似文献

  • 专利
  • 外文文献
  • 中文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号