Debug-Tools für Infineons Aurix TC4x Familie

EMBEDDED SYSTEMS

PLS Programmierbare Logik & Systeme bringt Analyse-, Test- und Debugging-Funktionen seiner Universal Debug Engine (UDE) für die aktuellste Aurix-Mikrocontroller-Generation von Infineon. Die in 28-nm-Technologie hergestellten Multi-Core-SoCs der TC4x-Familie adressieren Automotive-Applikationen wie beispielsweise E-Mobility, ADAS und auch KI-Anwendungen. Sie verfügen über bis zu sechs Rechenkernen der TriCore v1.8 Architektur und einem Cyber-Security Real-Time Modul (CSRM).



Neu hinzugekommen sind das enhanced Generic Timer Modul (eGTM), Komponenten aus der AURIX Accelerator Suite wie die Converter-DSPs (cDSP) an den Analog-Digital-Convertern (ADC), sowie die auf der Synopsys ARC EV Architektur basierende Parallel Processing Unit (PPU), welche die mathematische Modellierung von komplexen heterogenen Systemen ermöglicht.

Gegenwärtig ermöglicht die UDE das Debuggen von C/C++- sowie Assembler-Code, wobei alle gängigen Compiler, insbesondere die von HighTec, Synopsys und Tasking, unterstützt werden. Der Support des Synopsys MetaWare OpenCL C-Compilers für PPU-Code ist laut PLS in Vorbereitung. Für das Debugging des CSRM innerhalb der UDE bietet PLS ein entsprechendes Erweiterungspaket an.


Je nach Partitionierung ...

der Applikationen, die auf dem TC4x laufen, können die Cores entweder alle gemeinsam, in Gruppen oder auch nur einzeln durch traditionelles Run-Mode-Debugging, d.h. durch Breakpoints oder durch Single-Step-Betrieb, kontrolliert werden. Dabei erlaubt die UDE unter Ausnutzung der Chip-eigenen Debug-Logik ein nahezu synchrones Starten und Stoppen der jeweiligen Cores. Insbesondere in gemeinsam genutztem Code sollen Multi-Core-Breakpoints das Debuggen komplexer Applikationen vereinfachen. Ein Multi-Core-Breakpoint wirkt dabei immer, unabhängig davon, welcher Core gerade den betreffenden Code ausführt.


Die Benutzeroberfläche der UDE ...

lässt sich den Präferenzen der jeweiligen Nutzer und den Erfordernissen der aktuellen Debug- oder Testaufgabe anpassen. Alle Fenster im Debugger, die beispielsweise den Quellcode, interne Zustände wie Variablen, Register oder auch grafische Visualisierungen anzeigen, lassen sich innerhalb der UDE-Oberfläche flexibel anordnen, gruppieren oder auch auf mehrere Monitore verteilen. Zusätzlich erlauben Perspektiven, innerhalb einer Debugger-Sitzung mehrere Ansichten zu definieren und zwischen ihnen umzuschalten. 

Die UDE unterstützt den Softwaretest und die Fehlersuche auf virtuellen Prototypen aus dem Synopsys Virtualizer Development Kit für Aurix TC4x. Damit ist eine Full-System Simulation der TC4x-Bausteine möglich. Für das Software-Debugging der TriCore v1.8 Cores beinhaltet der Debugger den Instruction-Set-Simulator TSIM.


Ausblick

Im Laufe dieses Jahres will PLS die UDE auch mit On-Chip- und externen Trace ausstatten. Dann steht auch für den TC4x der  Universal Emulation Configurator (UEC) zur Definition von Trace-Aufgaben zur Verfügung. Außerdem erfolgt für die Geräte UAD2next und UAD3+ der Universal Access Device-Familie die Anpassung an die serielle Hochgeschwindigkeits-Trace-Schnittstelle der Aurix-Chips.

Fachartikel