Universal Debug Engine (UDE) Analyse-, Test- und Debug-Tool für Aurix TC4x-Familie

Von Sebastian Gerstl

Die aktuellste Version der Universal Debug Engine (UDE) von PLS bietet nun auch umfangreiche Analyse-, Test- und Debugging-Funktionen für die neueste AURIX-Mikrocontroller-Generation von Infinion.

Anbieter zum Thema

PLS‘ UDE unterstützt ab sofort auch die neue Infineon AURIX™ TC4x Familie, die neueste Generation an Automotive-MCUs des deutschen Chipherstellers.
PLS‘ UDE unterstützt ab sofort auch die neue Infineon AURIX™ TC4x Familie, die neueste Generation an Automotive-MCUs des deutschen Chipherstellers.
(Bild: PLS)

Die in 28-Nanometer-Technologie hergestellten Multi-Core-SoCs der TC4x-Familie adressieren ein weites Spektrum von Automotive-Applikationen. Hierzu zählen beispielsweise E-Mobility, ADAS und auch KI-Anwendungen. Darüber hinaus eignen sie sich laut Hersteller für hochkomplexe Herausforderungen im Bereich Domänen- und Zonenkontrolle.

Mit Blick auf das autonome Fahren würden die Bausteine höchsten Sicherheitsansprüchen gerecht. Sie bestehen aus bis zu sechs Rechenkernen der Next-Generation TriCore v1.8 Architektur, einem speziellen Cyber-Security Real-Time Modul (CSRM) und weitere Erweiterungen für High-Performance Anwendungen.

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.

Leichte Nutzerführung, tiefgreifende Systemanalysen

Über ihre Benutzeroberfläche sichert die UDE Entwicklerinnen und Entwicklern einen einfachen Zugriff auf alle TriCore v1.8- und Spezialkerne des jeweiligen TC4x-SoC. Das Tool ermöglicht so die Steuerung aller Cores für das Debugging, den Test und für tiefgreifende Systemanalysen innerhalb einer Debugger-Instanz. Es ist also nicht erforderlich, separate Debugger-Instanzen für die verschiedenen Core-Architekturen wie dem Synopsys ARC für die PPU oder der GTM zu öffnen.

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 in Vorbereitung. Für das Debugging des CSRM innerhalb der UDE bietet PLS zusätzlich 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 vereinfachen darüber hinaus Multi-Core-Breakpoints das Debuggen komplexer Applikationen. Ein Multi-Core-Breakpoint wirkt dabei immer, unabhängig davon, welcher Core gerade den betreffenden Code ausführt.

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 vollkommen 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. Diese Option erweist sich als überaus hilfreich, wenn der Fokus auf eine bestimmte Debugging-Aufgabe gelegt werden soll, so beispielsweise beim Multicore-Debugging, wenn sich der Entwickler detailliert mit der Analyse des Verhaltens eines Cores auseinandersetzen will, oder bei Performance-Messungen durch Profiling. Perspektiven können dabei frei angelegt und Debugger-Fenster darin ohne Beschränkung eingefügt und angeordnet werden.

Einsatz bereits für Pre-Silicon-Entwicklung möglich

Für ein schnelles Time-to-Market kann die UDE bereits für die Pre-Silicon-Entwicklung eingesetzt werden. Dafür unterstützt die UDE 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 die UDE zudem den Instruction-Set-Simulator TSIM.

Im Laufe des Jahres wird die UDE auch On-Chip- und externen Trace unterstützen. Dann steht auch für den TC4x der bereits vielfach eingesetzte Universal Emulation Configurator (UEC) zur flexiblen 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 neuen AURIX-Generation.

Dieser Beitrag stammt ursprünglich von unserem Partnerportal Embedded-Softwarer-Engineering.de.

(ID:48025976)