PLS Programmierbare Logik & Systeme stellt umfangreiche Analyse-, Test- und Debugging-Funktionen für die neueste Generation der Aurix-Mikrocontroller von Infineon bereit. Ab sofort können Entwickler die neuen Funktionen auf der aktuellen Version der Universal Debug Engine (UDE) nutzen.
Infineons Multi-Core-SoCs der TC4x-Familie werden in 28-nm-Technologie hergestellt und adressieren ein weites Spektrum an Automotive-Applikationen. Zum Beispiel E-Mobility, ADAS sowie KI-Anwendungen. Zudem meistern sie komplexe Herausforderungen im Bereich Domänen- und Zonenkontrolle. Hierbei werden die Bausteine den hohen Sicherheitsansprüchen in Hinblick auf autonomes Fahren gerecht. Sie bestehen aus bis zu sechs Rechenkernen der TriCore-v1.8-Architektur, einem speziellen Cyber-Security-Real-Time-Modul (CSRM) sowie Erweiterungen für High-Performance-Applikationen. Neu hinzugekommen sind das enhanced Generic Timer Modul (eGTM) sowie Komponenten aus der Aurix Accelerator Suite wie die Converter-DSPs (cDSP) an den Analog-Digital-Konvertern (ADC). Außerdem die auf der Synopsys ARC-EV-Architektur basierende Parallel Processing Unit (PPU), welche das mathematische Modellieren von komplexen heterogenen Systemen ermöglicht.
Über ihre intuitive und anwenderfreundliche Benutzeroberfläche sichert die UDE von PLS Programmierbare Logik & Systeme Entwicklern einen einfachen Zugriff auf alle TriCore-v1.8- und Spezialkerne des jeweiligen TC4x-SoCs. So ermöglicht das Tool die Steuerung aller Cores für das Debugging, den Test und für tiefgreifende Systemanalysen innerhalb einer Debugger-Instanz. Es ist demnach 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 PLS alle gängigen Compiler, insbesondere die von HighTec, Synopsys und Tasking, unterstützt. PLS bereitet zudem den Support des Synopsys MetaWare OpenCL C-Compilers für PPU-Code vor. Für das Debuggen des CSRM innerhalb der UDE bietet PLS zusätzlich ein Erweiterungspaket an.
Je nach Partitionierung der Applikationen, die auf dem TC4x laufen, können Entwickler die Cores entweder alle gemeinsam, in Gruppen oder einzeln mit Run-Mode-Debugging kontrollieren, also mit Breakpoints oder im Single-Step-Betrieb. Hierbei 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.
Weiterhin lässt sich die Benutzeroberfläche der UDE flexibel den Präferenzen des Nutzers und den Erfordernissen der aktuellen Debug- oder Testaufgabe anpassen. Alle Fenster im Debugger lassen sich innerhalb der UDE-Oberfläche flexibel anordnen, gruppieren oder auf mehrere Monitore verteilen. Hierbei können die Fenster beispielsweise den Quellcode oder interne Zustände wie Variablen, Register oder grafische Visualisierungen anzeigen. Zusätzlich erlauben es Perspektiven, innerhalb einer Debugger-Sitzung mehrere Ansichten zu definieren und zwischen ihnen umzuschalten – hilfreich, wenn der Entwickler den Fokus auf eine bestimmte Debugging-Aufgabe legen möchte. Beispielsweise kann das beim Multicore-Debugging der Fall sein, wenn sich der Entwickler detailliert mit der Analyse des Verhaltens eines Cores auseinandersetzen will, oder wenn er Performance-Messungen mit Profiling ausführt. Anwender können hierbei Perspektiven frei anlegen und Debugger-Fenster ohne Beschränkung einfügen und anordnen.
Für eine schnelle Time-to-Market können Entwickler die UDE bereits für die Pre-Silicon-Entwicklung einsetzen. Hierfür unterstützt die UDE den Softwaretest und die Fehlersuche auf virtuellen Prototypen aus dem Synopsys Virtualizer Development Kit für Aurix TC4x. Hiermit 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 soll die UDE laut PLS ebenfalls On-Chip- und externen Trace unterstützen. Entwicklern steht dann für den TC4x der 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 Trace-Schnittstelle der neuen Aurix-Generation.