ARMCortex-A7处理器仿真方法、系统、介质及设备技术方案

技术编号:37122088 阅读:15 留言:0更新日期:2023-04-01 05:17
本发明专利技术提供了一种ARM Cortex

【技术实现步骤摘要】
ARM Cortex

A7处理器仿真方法、系统、介质及设备


[0001]本专利技术涉及处理器模拟的
,具体地,涉及ARM Cortex

A7处理器仿真方法、系统、介质及设备。

技术介绍

[0002]当前的处理器芯片仿真,更多的还是停留在处理器本身功能的仿真上,在公开号为CN109885466B的专利文献中公开了一种处理器C8000的仿真方法、系统及介质,包括:机制模拟步骤:模拟C8000处理器的运行机制;寄存器和存储器模拟步骤:模拟C8000处理器的寄存器和存储器;片上设备模拟步骤:模拟C8000的片上设备。
[0003]目前已有的处理器仿真模拟主要是对处理器核心的模拟,没有片上外设,无法完成固件运行,并且只能模拟单核运行,无法模拟多核运行。
[0004]针对上述中的相关技术,专利技术人认为存在单纯的处理器模拟仿真无法完成固件运行模拟的问题。因此,需要提出一种新的技术方案以改善上述技术问题。

技术实现思路

[0005]针对现有技术中的缺陷,本专利技术的目的是提供一种ARM Cortex

A7处理器仿真方法、系统、介质及设备。
[0006]根据本专利技术提供的一种ARM Cortex

A7处理器仿真方法,所述方法包括如下步骤:
[0007]步骤S1:机制模拟,模拟ARM Cortex

A7处理器的运行机制;
[0008]步骤S2:寄存器和存储介质模拟,模拟ARM Cortex

A7处理器的寄存器和存储介质;
[0009]步骤S3:片上外设模拟,模拟ARM Cortex

A7处理器的片上外围设备,得到访问逻辑。
[0010]优选地,所述步骤S1包括如下步骤:
[0011]步骤S1.1:指令翻译,将通过存储介质加载的二进制机器码进行动态翻译,先翻译成tcg中间代码,再翻译成宿主机架构对应的代码;
[0012]步骤S1.2:时间控制,每执行一条ARM Cortex

A7指令对应的宿主机架构的指令,时间计数加一,同时检查事件缓冲区,判断是否存在要处理的事件,若存在,则打断指令的执行流程,处理需要处理的事件;否则继续执行指令;
[0013]步骤S1.3:运行模拟,运行模拟包括单核运行模拟和多核运行模拟,单核模拟是对处理器运行控制的模拟,单核模拟包括取址、译码、执行、写回操作;多核模拟采用串行的方式,先模拟核一运行机制,执行固定数量的指令后切换到核二,依次循环进行。
[0014]优选地,所述步骤S2包括如下步骤:
[0015]步骤S2.1:寄存器模拟,在宿主机上开辟一块内存空间用于内核寄存器的模拟,采用影子寄存器的方式进行读写,将宿主机上开辟的空间和影子寄存器同步,当前寄存器的改变并不影响下一条指令的执行时,寄存器不会进行同步,反之则必须进行同步;
[0016]步骤S2.2:存储介质模拟,根据处理器片上ROM和RAM大小,在宿主机上开辟同样大小的内存空间,宿主机访问数据时均采用每次偏移64位的访问方法。
[0017]优选地,所述步骤S3包括如下步骤:
[0018]步骤S3.1:功能仿真,对处理器中的通用中断控制器GIC、通用定时器Generic Timer、看门狗watchdog的基本功能模块进行仿真;
[0019]步骤S3.2:通信仿真,进行片上外围设备通信功能模拟,片上外围设备通信包括I2C、SPI、QSPI、CAN、MAC、UART、DMA通信接口,功能模拟包括寄存器模拟、内存模拟、内部逻辑模拟,得到各个模块的存储空间和寄存器访问接口,得到访问所需逻辑。
[0020]本专利技术还提供一种ARM Cortex

A7处理器仿真系统,所述系统包括如下模块:
[0021]模块M1:机制模拟,模拟ARM Cortex

A7处理器的运行机制;
[0022]模块M2:寄存器和存储介质模拟,模拟ARM Cortex

A7处理器的寄存器和存储介质;
[0023]模块M3:片上外设模拟,模拟ARM Cortex

A7处理器的片上外围设备,得到访问逻辑。
[0024]优选地,所述模块M1包括如下模块:
[0025]模块M1.1:指令翻译,将通过存储介质加载的二进制机器码进行动态翻译,先翻译成tcg中间代码,再翻译成宿主机架构对应的代码;
[0026]模块M1.2:时间控制,每执行一条ARM Cortex

A7指令对应的宿主机架构的指令,时间计数加一,同时检查事件缓冲区,判断是否存在要处理的事件,若存在,则打断指令的执行流程,处理需要处理的事件;否则继续执行指令;
[0027]模块M1.3:运行模拟,运行模拟包括单核运行模拟和多核运行模拟,单核模拟是对处理器运行控制的模拟,单核模拟包括取址、译码、执行、写回操作;多核模拟采用串行的方式,先模拟核一运行机制,执行固定数量的指令后切换到核二,依次循环进行。
[0028]优选地,所述模块M2包括如下模块:
[0029]模块M2.1:寄存器模拟,在宿主机上开辟一块内存空间用于内核寄存器的模拟,采用影子寄存器的方式进行读写,将宿主机上开辟的空间和影子寄存器同步,当前寄存器的改变并不影响下一条指令的执行时,寄存器不会进行同步,反之则必须进行同步;
[0030]模块M2.2:存储介质模拟,根据处理器片上ROM和RAM大小,在宿主机上开辟同样大小的内存空间,宿主机访问数据时均采用每次偏移64位的访问系统。
[0031]优选地,所述模块M3包括如下模块:
[0032]模块M3.1:功能仿真,对处理器中的通用中断控制器GIC、通用定时器Generic Timer、看门狗watchdog的基本功能模块进行仿真;
[0033]模块M3.2:通信仿真,进行片上外围设备通信功能模拟,片上外围设备通信包括I2C、SPI、QSPI、CAN、MAC、UART、DMA通信接口,功能模拟包括寄存器模拟、内存模拟、内部逻辑模拟,得到各个模块的存储空间和寄存器访问接口,得到访问所需逻辑。
[0034]本专利技术还提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述中的ARM Cortex

A7处理器仿真方法的步骤。
[0035]一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现上述中的ARM Cortex

A7处理器
仿真方法的步骤。
[0036]与现有技术相比,本专利技术具有如下的有益效果:
[0037]1、本专利技术通过采用ARM Cortex

A7内核加片上外设的仿真方法,解决了单纯的处理本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种ARM Cortex

A7处理器仿真方法,其特征在于,所述方法包括如下步骤:步骤S1:机制模拟,模拟ARM Cortex

A7处理器的运行机制;步骤S2:寄存器和存储介质模拟,模拟ARM Cortex

A7处理器的寄存器和存储介质;步骤S3:片上外设模拟,模拟ARM Cortex

A7处理器的片上外围设备,得到访问逻辑。2.根据权利要求1所述的ARM Cortex

A7处理器仿真方法,其特征在于,所述步骤S1包括如下步骤:步骤S1.1:指令翻译,将通过存储介质加载的二进制机器码进行动态翻译,先翻译成tcg中间代码,再翻译成宿主机架构对应的代码;步骤S1.2:时间控制,每执行一条ARM Cortex

A7指令对应的宿主机架构的指令,时间计数加一,同时检查事件缓冲区,判断是否存在要处理的事件,若存在,则打断指令的执行流程,处理需要处理的事件;否则继续执行指令;步骤S1.3:运行模拟,运行模拟包括单核运行模拟和多核运行模拟,单核模拟是对处理器运行控制的模拟,单核模拟包括取址、译码、执行、写回操作;多核模拟采用串行的方式,先模拟核一运行机制,执行固定数量的指令后切换到核二,依次循环进行。3.根据权利要求1所述的ARM Cortex

A7处理器仿真方法,其特征在于,所述步骤S2包括如下步骤:步骤S2.1:寄存器模拟,在宿主机上开辟一块内存空间用于内核寄存器的模拟,采用影子寄存器的方式进行读写,将宿主机上开辟的空间和影子寄存器同步,当前寄存器的改变并不影响下一条指令的执行时,寄存器不会进行同步,反之则必须进行同步;步骤S2.2:存储介质模拟,根据处理器片上ROM和RAM大小,在宿主机上开辟同样大小的内存空间,宿主机访问数据时均采用每次偏移64位的访问方法。4.根据权利要求1所述的ARM Cortex

A7处理器仿真方法,其特征在于,所述步骤S3包括如下步骤:步骤S3.1:功能仿真,对处理器中的通用中断控制器GIC、通用定时器Generic Timer、看门狗watchdog的基本功能模块进行仿真;步骤S3.2:通信仿真,进行片上外围设备通信功能模拟,片上外围设备通信包括I2C、SPI、QSPI、CAN、MAC、UART、DMA通信接口,功能模拟包括寄存器模拟、内存模拟、内部逻辑模拟,得到各个模块的存储空间和寄存器访问接口,得到访问所需逻辑。5.一种ARM Cortex

A7处理器仿真系统,其特征在于,所述系统包括如下模块:模块M1:机制模拟,模拟ARM Cortex

A7处理器的运行机制;模块M2:寄存器和存储介...

【专利技术属性】
技术研发人员:卢化龙凤少波秦炜
申请(专利权)人:上海创景信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1