Bis zu acht Arm Cortex-A53 Cores, die in zwei Clustern zu je vier Cores mit optionalem Cluster-Lockstep organisiert sind, stellen die Rechenleistung für Anwendungen und Dienste bereit. Speziell für Echtzeitanwendungen sind zusätzlich bis zu vier Arm Cortex-M7 Dual-Core Lockstep (DCLS) Einheiten in den Bausteinen integriert. Um Sicherheitsanforderungen in Fahrzeuganwendungen zu erfüllen, steuert eine Hardware Security Engine (HSE) alle nötigen Funktionen für die Absicherung des Boot-Prozesses und zur Beschleunigung von Security-Algorithmen bei.
Die UDE 2023 unterstützt ...
Systementwickler beim Multicore-Debugging und Tracing. So erlaubt die Universal Debug Engine unter anderem Laufzeitanalysen von Anwendungen für die NXP-Bausteine. Die Cortex-A53-Prozessorkerne und die Cortex-M7-Kerne sind alle für den Anwender sichtbar und können innerhalb der gemeinsamen Debugger-Oberfläche gesteuert werden. Es besteht keine Notwendigkeit, separate Debugger-Instanzen für die verschiedenen Cores zu betreiben.
Multicore-Breakpoints
Für das Multicore-Debugging bietet das Multicore-Run-Control-Management der UDE eine steuerbare Synchronisation der verschiedenen Cores des S32G3. Breakpoints oder Single-Steps wirken je nach Anforderungen der aktuellen Debug-Aufgabe auf einen einzelnen Core, auf alle Cores, oder auch auf Core-Gruppen. Alle Cores in einer solchen Run-Control-Gruppe können laut PlLS nahezu synchron gestartet und gestoppt werden. Damit bleibt der interne Zustand der jeweiligen Anwendung während des Debuggens konsistent. Multicore-Breakpoints vereinfachen zudem das Debugging von komplexen Anwendungen. Diese kommen insbesondere in gemeinsam genutztem Code zum Einsatz. Ein Multicore-Breakpoint ist unabhängig davon wirksam, welcher Kern den jeweiligen Code gerade ausführt.
Für eine tiefgreifende Analyse ...
auf Systemebene und für nicht-invasives Debugging von Multicore-Anwendungen bietet die UDE Funktionen, die aufgezeichnete Trace-Informationen des Arm CoreSight Trace-Systems nutzen. Damit lassen sich typische Schwierigkeiten bei paralleler Ausführung oder Timing-Probleme untersuchen. Basierend auf dem aufgezeichneten Trace stellt die UDE Analysefunktionen wie Profiling, Call-Graph-Analyse und auch Code Coverage zum Nachweis der Qualität von Softwaretests bereit. Ergänzend zu den Trace-Funktionen für die Cortex-A53- und Cortex-M7-Cores bietet das Softwaretool auch Unterstützung für das Tracing der Transaktionen über das Network-on-Chip (NoC), das für die Kommunikation zwischen den Cores und den anderen Komponenten des S32G3 verwendet wird.
Speichern von Trace-Daten
Zur Speicherung der erfassten Trace-Daten kann entweder das UAD2next oder das UAD3+ aus der Familie der Universal Access Devices von PLS verwendet werden. Das UAD2next verfügt über 512MB Trace-Speicher, das UAD3+ bis zu 4GB. Der Download der Trace-Daten vom Chip zur UDE erfolgt über den High-Speed Serial Trace Port (HSSTP) der S32G3 mit bis zu 5Gbit/s pro Lane.
Die Programmierung des externen OctalSPI-Flashs wird durch das MemTool Add-on ermöglicht, das integraler Bestandteil der UDE ist. eMMC sowie OCOTP (On Chip One-Time Programming) werden ebenfalls unterstützt.
Multicore-Debug- und Trace-Unterstützung für NXPs S32G3 Fahrzeugnetzwerk-Prozessoren
EMBEDDED SYSTEMS AUTOMOTIVE