本文档为G32R501双核仿真指导手册。该手册适用于基于Arm® Cortex®-M52内核的G32R5xx系列双核微控制器(MCU),重点介绍了如何在开发环境中进行双核调试。
双核的基本机制
G32R5xx中的双核属于非对称体系结构,默认情况下,CPU0被设置为master,可以正常工作,而CPU1被设置为slave,当芯片启动时,CPU1被设置为hold状态,其时钟被禁用。要让从核工作,需要CPU0通过寄存器来使能其时钟,并设置其启动地址。
| 通用系列 | 具体支持产品型号 |
|---|---|
| G32R5xx | G32R501DxCx7/G32R501DxYx7/G32R501DxYx8Q |
调试支持
双核调试允许使用单个硬件调试探针同时调试两个内核。两个内核的调试信息可以在单个集成开发环境(IDE)图形用户界面(GUI)中显示,也可以为每个内核单独创建一个IDE GUI实例。
为了确保顺利进行双核调试,使用的调试器必须提供以下功能:
- 可选访问端口
- 使用相同的调试探针同时连接多个内核的能力
- 所有内核的可见性
- 支持交叉触发Arm®组件
- 在同一调试会话中在不同领域之间切换访问端口的可能性,以可视化内存和外围设备的状态
MDK-ARM双核调试支持
在MDK-ARM上进行双核调试的具体步骤包括:新建工程并配置CPU0工程的调试设置;新建工程并配置CPU1工程的调试设置;使用CPU0工程下载CPU1的程序文件;配置.sct文件;启动双核调试。
IAR EW for Arm双核调试支持
在IAR EW for Arm上进行双核调试的具体步骤包括:新建工程并配置CPU0/CPU1工程的调试设置;配置CPU0工程包含CPU1运行镜像;配置仿真器及启动地址等配置;配置CPU0工程链接CPU1工程;启动双核调试。
Eclipse双核调试支持
在Eclipse上进行双核调试的具体步骤包括:导入工程并配置仿真选项卡;去除由Eclipse启动pyOCD GDB Server的设置;设置GDB Client连接至相应内核端口;从终端启动pyOCD gdbserver;在Eclipse分别启动两个仿真服务。
252
