多核调试与跟踪

概述

无限制的多核调试,即使是最复杂的调试也能胜任芯片

System-on-Chip (SoC) is the brain behind computing and communication in a wide variety of electronic systems. As applications grow increasingly complex, so do the SoCs that power them. Not only is the number of cores constantly growing, but also the number of different core. With TRACE32®, you can debug and trace even your most complex SoCs, including your applications, operating systems, hypervisors, and other software running on multiple cores. In Summary, TRACE32® provides you with the deepest possible insights into your entire embedded system.

调试 150 多种支持内核的混合物架构

通过一个调试接口和一个debug probe ,同时调试来自不同架构 的内核,从而深入了解整个嵌入式系统。

使用 AMP 执行并发和同步调试

通过对 AMP 系统中的所有内核进行同步运行控制,同时调试来自不同架构 的内核。

管理运行多个操作系统和虚拟机管理程序的复杂系统

要深入了解整个嵌入式系统,不仅要调试应用程序,还要调试多个操作系统和管理程序。

探索异构多芯片系统

调试复杂的嵌入式系统,这些系统由两个或多个 SoC 组成,每个 SoC 可以有多个相同或不同的内核。

简化多核系统调试

使用我们自创的 iAMP 方法(集成非对称多处理),在一个图形用户界面中调试具有 SMP 功能的 CPU 集群,并对所有内核进行同步运行控制。

实时跟踪异构和同构多核系统

使用异构或同构处理器混合架构 ,通过同一跟踪端口同时记录来自多个内核的跟踪。

多核调试

无缝调试任何多核系统

无论您使用哪种多核系统,TRACE32® 都支持。无论是对称多处理 (SMP)、非对称多处理 (AMP)、集成非对称多处理 (iAMP)、混合 AMP/SMP 和多芯片 系统,还是拥有超过 1000 个内核的多核架构 ,都没有关系。我们的PowerView 软件具有业界领先的所有功能,仍然是所有芯片 和所有内核的统一用户界面。

异质多核系统

AMP 系统有多个内核,每个内核分别执行不同的任务。我们的PowerView 软件可为任何混合内核架构 提供一致的图形用户界面和功能集。您可以通过单个debug probe 调试多达 16 个同步PowerView 实例的各种多核配置。

  • 异质 AMP 系统
    在系统中,每个内核都可能有自己的内核架构 、内存模型、操作系统、地址转换和调试符号,以及自己的物理地址空间。
  • 多芯片 AMP系统
    一些嵌入式控制单元包含多个独立的多核 SoC。您可以通过菊花链 (JTAG)、星形拓扑 (cJTAG/SWD) 或使用带有CombiProbe 的两个晶须将它们组合起来进行调试。
  • 组合式 AMP/SMP 系统
    多核 SoC 通常包含一个由相同的高性能应用内核组成的 SMP 集群,周围是由其他 CPU 内核组成的混合内核架构 ,用于执行专用任务。

同质多核系统

SMP 系统有多个内核为一个共同目标服务,所有内核都有完全相同的内核架构 。我们的PowerView 软件可以在一个图形用户界面中调试所有内核,无论是否有操作系统或管理程序,内核数量从 2 个到 1 024 个不等。您可以同时启动和停止所有内核,也可以只关注一个内核。

  • 将 SMP内核视为操作系统资源
    在 SMP 系统中,可以将 CPU 内核视为目标操作系统的执行资源。调试的重点是并行执行的任务,而不是哪个内核实际执行哪个任务。
  • Arm® DynamIQ 共享单元(big.LITTLE)
    在单个PowerView GUI 中,您可以使用 DynamIQ 调试 SMP 系统。DynamIQ 将高性能内核与高能效内核相结合,允许操作系统关闭当前不需要的内核,以节约能源。
  • 管理程序协调多个操作系统
    如今的 SMP 多核集群通常同时使用多个操作系统,并由hypervisor 保护物理内存。即使是这些最复杂的系统,PowerView 也能在您身边进行调试。

多核系统

多核系统是高性能计算系统中的一种特殊形式的多核系统,其典型特征是运行多个操作系统。我们现在发明的 iAMP 允许通过单个PowerView GUI 实例调试逻辑上耦合的相同内核,并对所有内核进行同步运行控制。

  • 在单个图形用户界面中进行大规模多核调试
    即使没有Hypervisor ,PowerView ,也能将相同的内核逻辑地分组到机器中,每个机器都有自己的目标操作系统。
  • 带有 SMP 集群的 iAMP 系统
    iAMP 允许将多达 1 024 个内核组合成多达 30 台虚拟机,其中一台机器可以是单个内核,也可以是一个 SMP 子系统。

 

SMP

AMP

iAMP

调试同质内核*

调试异构内核

 

 

在一个PowerView GUI 中调试所有内核

 

在多个PowerView GUI 中调试内核**

 

 

使用hypervisor 静态分配访客

使用hypervisor 与动态核心分配

 

 

使用可管理多个内核的单一操作系统

 

 

使用多种操作系统

 

同步运行

异步运行

 

 

*:相同内核或至少具有相同指令集的内核。

**:最多 16 个。

找到满足您需求的理想调试模式

如果您想为任何多核系统创建一个新的 TRACE32® 设置,您可以选择 SMP、AMP 和我们自创的 iAMP。表格为您提供了最重要的用例的快速概览,您可以在上面的详细说明中找到可能的配置。

找到满足您需求的理想调试模式

如果您想为任何多核系统创建一个新的 TRACE32® 设置,您可以选择 SMP、AMP 和我们自创的 iAMP。表格为您提供了最重要的用例的快速概览,您可以在上面的详细说明中找到可能的配置。

 

SMP

AMP

iAMP

调试同构内核*

调试异构内核

 

 

在一个PowerView GUI 中调试所有内核

 

在多个PowerView GUI 中调试内核**

 

 

使用Hypervisor 静态分配访客

使用Hypervisor 与动态核心分配

 

 

使用可管理多个内核的单一操作系统

 

 

使用多种操作系统

 

同步运行

异步运行

 

 

*:相同内核或至少具有相同指令集的内核。

**:最多 16 个。

iAMP 系统的多核调试配置

为多核系统的所有内核提供单一调试器

多核系统是多核系统的一种特殊形式,以运行多个操作系统为典型特征。这种系统以前主要用于高性能计算领域,现在越来越多地用于嵌入式设计。现在,我们发明的 iAMP 允许通过单个PowerView GUI 实例调试逻辑上耦合的相同内核,并对所有内核进行同步运行控制。

Multicore Off-Chip Tracing

Perform Multi-Core Off-Chip Tracing in AMP, iAMP or SMP systems

In this example, you trace each SMP subsystem and individual core from its own PowerView GUI and can use up to 16 PowerView GUIs. PowerView starts and stops each SMP subsystem and individual core independently, but they can also be synchronized. An Off-Chip-Trace configuration like this is ideal when:

  • 您希望从我们的 TRACE32® PowerTrace 模块中的超大跟踪缓冲区中获益,以长期收集跟踪信息,这对于代码覆盖率和时序分析以及许多故障排除方案都至关重要。
  • You do not want to have to stop the target periodically to read out the trace information of a small on-chip trace buffer and transfer it to the Host-PC before you can continue tracing.
  • There is no sufficient On-Chip Trace buffer (or a Trace buffer with insufficient size according to your needs) implemented.
  • 您希望以最大带宽将跟踪数据流传输到主机。
多核跟踪

同时分析所有内核的实时行为

有时,传统的停止模式调试可能不够充分。我们的跟踪扩展提供的程序流程数据可以准确显示哪些指令已被执行,以及执行这些指令所需的时间,而不会干扰正在测试的应用程序。这对于查找运行时才会出现的难以发现的错误、确保应用程序满足所有时序要求或创建用于认证的代码覆盖率报告等都非常有用。

With our trace tools, you can capture real-time traces on any multicore SoC that provides a trace interface or on-chip buffer. It doesn't matter what type of multi-core system you are using: Symmetric Multiprocessing (SMP), Asymmetric Multiprocessing (AMP), Integrated Asymmetric Multiprocessing (iAMP), or any kind of mix. Modern multi-core SoC merge the trace data from all cores, so you only need a single trace probe to capture the off-chip trace of all cores all together.

Multi-Core Off-Chip Tracing

Off-Chip-Trace is ideal when:

  • 您希望找到只在实时情况下出现的海森虫。如果错误只是偶尔出现或原因复杂,您可能需要长时间记录。
  • 您需要进行代码覆盖和时序分析,这就需要长时间收集跟踪信息。我们的 TRACE32® PowerTrace 模块提供的大容量跟踪缓冲区可确保长时间记录。
  • 您希望将跟踪数据流传输到主机,以实时查看代码覆盖结果,或捕获超长的跟踪记录以进行非常全面的分析。
  • Stopping the target periodically is not an option for you. Therefore, transferring a small on-chip trace buffer to the host-PC is out of the question You need a large off-chip trace buffer.
  • There is no sufficient On-Chip trace buffer implemented (or a trace buffer with insufficient size to satisfy to your needs.

Multi-Core On-Chip Tracing

On-Chip-Trace is ideal when:

  • 您要找到海森虫,它只会实时出现。
  • The size-limited on-chip trace buffer is sufficient to collect the necessary trace information for your trouble-shooting scenarios.
  • 您不必在较长时间内执行实时跟踪。
  • 您不需要代码覆盖率和定时分析。
  • 芯片 仅有一个调试端口,没有单独的跟踪端口。
调试和跟踪流行的多核 SOC

我们的工具包罗万象

我们的 TRACE32® 调试和跟踪工具涵盖了所有流行的多核 SoC。在本节中,您将看到来自不同的知名芯片 制造商的七个非常成功和复杂的 SoC 示例,以及您理想的 TRACE32® 配置,以方便快捷地调试和跟踪它们。

调试和跟踪 AMD Zynq™ UltraScale+™ MPSoC

适用于各种嵌入式应用的异构多处理平台。

执行:

  • 4 x 应用内核 Arm® Cortex®-A53
  • 2 x 实时内核 Arm® Cortex®-R5F。
  • 1 x 平台管理单元 MicroBlaze Hard-IP。
  • FPGA 逻辑中的可选 Arm® Cortex®-M3、Cortex®-M1 和 MicroBlaze 软核。

应用内核通常配置为运行 Linux 等丰富操作系统的 SMP 集群,而其他内核通常异步运行。

Our TRACE32® tools can debug all cores concurrently. You can trace the Cortex-A and Cortex-R cores via parallel or serial Off-Chip-Trace or via On-Chip-Buffers.

探索最适合 ZYNQ 的 TRACE32® 工具

调试和跟踪 Infineon AURIX™ TC4x

用于汽车应用的 MCU,侧重于嵌入式安全、安保和实时控制。

执行:

  • 多达六个 TriCore™ V1.8.内核。
  • 可选通用定时器模块 (GTM)。
  • 基于 ARC-EV 的并行处理装置(PPU)。
  • 基于 TriCore 的网络安全实时模块 (CSRM)。
  • 基于 XC800 的待机控制器 (SCR)。
  • 可编程数字信号处理(cDSP)。

所有内核通常与运行 AUTOSAR 操作系统的主要 TriCore 内核异步 (AMP) 运行。

Our TRACE32® tools can debug all cores concurrently. AMP is available for all cores, where SMP and iAMP is also an option for TriCore. The major cores can be traced via serial Off-Chip-Trace or via On-Chip-Buffers.

探索最适合 AURIX 的 TRACE32® 工具

调试Intel® Xeon® Silver 处理器

Intel® Xeon® Silver 处理器为数据中心的入门级计算、网络和存储提供了更高的内存速度、低延迟和能效。

执行:

  • 多达 12 xIntel® Sapphire Rapids x86 CPU

Our tools can debug all cores concurrently. Real-time trace is supported via On-Chip-Buffers.

探索最适合Intel® Xeon® 的 TRACE32® 工具

调试 NVIDIA DRIVE™ Orin™ SoC

智能汽车的中央计算机,为自动驾驶功能、信心视图、数字集群和人工智能驾驶舱提供动力。

执行:

  • 12 x Arm® Cortex®-A78AE
  • 4 x Arm® Cortex®-R52

Our tools can debug all cores concurrently. All cores can be debugged in AMP, SMP or iAMP configurations. Real-time trace is supported via high-speed serial-trace or via On-Chip-Buffers.

探索最适合 Orin 的 TRACE32® 工具

恩智浦 i.MX8 QuadMax

工业、汽车和信息娱乐应用处理器

执行:

  • 1 x 高性能应用核心 Arm® Cortex®-A72
  • 4 x 高效应用内核 Arm® Cortex®-A53
  • 2 x 实时内核 Arm® Cortex®-M4F
  • 1 x 系统控制单元 Arm® Cortex®-M4F
  • 1 x 音频处理器 Cadence® Tensilica® HiFi 4 DSP Xtensa-LX7
  • 1 x 安全控制器 (SECO) Arm® Cortex®-M0+
  • 1 x 平台管理单元 MicroBlaze Hard-IP

应用内核通常运行丰富的操作系统,如 AUTOSAR Adaptive、Linux、Android Automotive 或 QNX,其中 Cortex-A53 内核作为 SMP 集群运行。实时内核通常运行 AUTOSAR Classic 或其他实时操作系统。

Our tools can debug all cores concurrently via a single debug interface (SWJ-DP). All application and real-time cores can be traced via On-Chip-Buffers or the PCIe interface of the chip.

探索最适合 i.MX8 QuadMax 的 TRACE32® 工具

调试高通 Snapdragon™ SoC

Processor family for mobile devices and vehicles.

执行:

  • Kryo 或 Krait Armv7/v8 应用内核。
  • Qualcomm® Hexagon™ DSP
  • 更多的子控制器、图形处理器和数字信号处理器。

骁龙处理器通常包含大量 CPU 内核。

我们不仅支持应用内核,还支持 SoC 上的大多数其他内核。像往常一样,我们的目标是通过单一物理接口同时调试所有内核。

每款 Snapdragon 的确切拓扑结构是保密的。有关详细信息,请联系高通公司。

探索最适合 Snapdragon 的 TRACE32® 工具

调试和跟踪德州仪器 AM69Ax

用于自主移动机器人和机器视觉的处理器

执行:

  • 8 x 应用内核 Arm® Cortex®-A72 分成两个集群。
  • 2 x 通用计算实时内核 Arm® Cortex®-R5F。
  • 2 x 设备管理内核 Arm® Cortex®-R5F。
  • 4 x 深度学习加速器 TI C7x DSP。
  • 2 x 安全管理内核 (SMS) Arm® Cortex®-M4。

两个应用集群通常与 Linux 等丰富的操作系统同步运行,而其他内核通常异步运行。

我们的 TRACE32® 工具可通过芯片的并行跟踪端口 (TPIU) 并发调试和跟踪所有内核,端口大小最大为 32 位。

探索最适合 AM69Ax 的 TRACE32® 工具