​如何使用 J-Link 调试多核心芯片
来源:segger.com | 作者:风标电子工程师 | 发布时间: 2024-04-08 | 115 次浏览 | 分享到:

J-Link / J-Trace能够调试连接到同一扫描链上的目标系统上的多个核心。本节描述了配置和使用此功能。

多核调试的工作原理:


多核调试设置示例



多核调试需要多个Degbugger或同一Degbugger的多个实例。两个或更多Degbugger可以同时使用同一个J-Link / J-Trace。配置Degbugger以在多核环境中与核心一起工作不需要特殊设置。所需的只是为每个Degbugger正确设置扫描链。这使得J-Link / J-Trace能够同时调试目标上的多个核心。下面的图示显示了一个主机,通过一个J-Link / J-Trace,用两个相同Degbugger的实例调试两个CPU核心。

两个Degbugger共享同一个物理连接。通过JTAG设置选择要调试的核心,具体如下所述。

详细使用多核调试的步骤:

将目标连接到J-Link / J-Trace。

2.启动调试器,例如 IAR Embedded Workbench for ARM.。

3.选择Project|Options并配置您的扫描链。

下图显示了目标上第一个CPU核心的配置。


J-Link settings - IAR - Multicore debugging - 01


开始调试第一个核。

启动另一个Degbugger,例如另一个 IAR Embedded Workbench for ARM.。

选择Project|Options 并配置您的第二个扫描链。

下面的对话框显示了目标上第二个ARM核的配置。


J-Link settings - IAR - Multicore debugging - 02


开始调试第二个核




有关SEGGER Ozone的多核调试示例项目,请参见“Dual Core Debugging with Ozone”。

您应该注意的事项,多核调试比单核调试更困难。您应该注意与JTAG速度和重置目标相关的陷阱。


JTAG速度

每个核心都有自己的最大JTAG速度。同一链中所有核心的最大JTAG速度是最大JTAG速度的最小值。例如:

·核心#1:2MHz最大JTAG速度

·核心#2:4MHz最大JTAG速度

·扫描链:2MHz最大JTAG速度


重置目标

所有核心共享同一个RESET线。您应该注意,通过RESET线重置一个核心意味着重置所有将其RESET引脚连接到目标上RESET线的核心。