PLS UDE 2022 Multicore-Debugging und -Trace für NXPs S32Z- und S32E-Controller

Quelle: Pressemitteilung

Anbieter zum Thema

PLS Programmierbare Logik & Systeme hat die Multicore-Debug- und Trace-Funktionen seiner Universal Debug Engine (UDE) für die neuen S32Z- und S32E-Echtzeitprozessoren von NXP Semiconductors angepasst.

Mithilfe der UDE 2022 können Entwickler alle Funktionseinheiten aus einer Umgebung heraus ansprechen. Kerne lassen sich gemeinsam, in Gruppen oder einzeln debuggen.
Mithilfe der UDE 2022 können Entwickler alle Funktionseinheiten aus einer Umgebung heraus ansprechen. Kerne lassen sich gemeinsam, in Gruppen oder einzeln debuggen.
(Bild: PLS )

Die S32Z- und S32E Echtzeitprozessoren erweitern die bestehende S32-Automotive-Plattform von NXP. Für neue konsolidierte Domänen- und zonale Fahrzeugarchitekturen konzipiert, überzeugen die Bausteine durch das Echtzeitverhalten eines Mikrokontrollers. Darüber hinaus bieten sie eine Kombination aus Taktraten bis in den Gigahetz-Bereich, sicherer Integration von mehreren parallelen Anwendungen und vielen Möglichkeiten der Speichererweiterung. Damit eignen sich die Echtzeitprozessoren für die Steuerung des Antriebsbereiches, die Elektrifizierung und für sicherheitskritische Anwendungen.

NXP fertigt seine S32Z2- und der S32E2-Serie in einer 16-nm-Technologie. Sie kombinieren acht mit 600 MHz bis 1 GHz getaktete Arm Cortex-R52-Kerne mit Cortex-M33-Kernen für spezielle Zwecke wie Systemmanagement und Kommunikation. Echtzeitanwendungen können auf umfangreiche Timer-Funktionen zurückgreifen, die durch das auf den Chips zusätzlich implementierte geclusterte Generic Timer IP Module (GTM v4.1) zur Verfügung stehen.

Ein Network-on-Chip (NoC) sorgt für eine schnelle Kommunikation zwischen den Clustern mit den Hauptrechenkernen und den anderen funktionalen Komponenten. Abhängig von den Modelvarianten stehen darüber hinaus bis zu 64 MB Flash-Speicher zur Verfügung. Der nichtflüchtige Speicher kann durch externe QuadSPI NOR-, eMMC- oder SDHC NAND-Speicher sowie durch LPDDR4-Flash-Speicher zur Unterstützung umfangreicher Anwendungen und Daten erweitert werden.

Alle Funktionseinheiten aus einer Umgebung heraus ansprechen

Mit seiner intuitiv bedienbaren UDE-Debugger-Plattform bietet PLS Entwicklern einen einfachen Zugang zu den Funktionseinheiten der S32Z2- und S32E2-Bausteinen. Die Cortex-R52-Hauptkerne, die Cortex-M33-Systemmanagement- und Kommunikationskerne sowie der GTM sind alle gleichzeitig in einer gemeinsamen Debugger-Instanz sichtbar und werden auch von dort gesteuert. Es ist nicht notwendig, separate Debugger-Instanzen für die verschiedenen Core-Architekturen zu öffnen.

Die UDE ermöglicht das Debuggen von C/C++ sowie Assembler-Code für die Cortex-basierten Kerne einschließlich des Arm- und Thumb-2-Befehlssatzes. Das Debugging der Multi Channel Sequencer (MCS) des GTM kann sowohl auf Assembler- als auch auf C-Code-Ebene durchgeführt werden. Dabei unterstützt die UDE GTM-C-Compiler verschiedener Compiler-Hersteller.

Das MemTool-Add-on als integraler Bestandteil der UDE erlaubt eine einfache und sichere Programmierung des integrierten Flash-Speichers sowie der externen QuadSPI-NOR-, eMMC- und SDHC-NAND-Speicher und unterstützt dabei auch On Chip One-Time Programming (OCOTP).

Kerne gemeinsam, in Gruppen oder einzeln debuggen

Mit Hilfe des Multicore-Run-Control-Managements der UDE 2022 lassen sich die Cores der S32Z und S32E Echtzeitprozessoren auch mit traditionellem Run-Mode-Debugging kontrollieren, d.h. mittels Breakpoints und im Single-Step-Betrieb, und zwar entweder alle zusammen, in Gruppen oder einzeln. Alle Cores in einer solchen Run-Control-Gruppe können nahezu synchron gestartet und gestoppt werden. Dies gewährleistet immer einen konsistenten Zustand der jeweiligen Anwendung während des Debuggens. Mittels Multicore-Breakpoints wird das Debuggen insbesondere von komplexen Anwendungen mit gemeinsam genutztem Code vereinfacht. Ein Multicore-Breakpoint ist immer wirksam, unabhängig davon, welcher Kern den jeweiligen Code gerade ausführt.

Darüber hinaus wurden bei der UDE 2022 die Debugging-Funktionen für die Channel-Programme der Multi-Channel-Sequencer des GTM um Breakpoints und Single Stepping erweitert. Die neuen Features basieren auf erweiterten Hardware-Debugging-Funktionen des integrierten Generic Timer IP Module GTM v4.1.

Nicht-invasive Laufzeitanalysen

Für nicht-invasives Debugging und Laufzeitanalysen von Multicore-Applikationen bietet die UDE 2022 ihren Anwendern umfangreiche Funktionen, die auf aufgezeichneten Trace-Informationen aus dem Arm CoreSight Trace-System der S32Z- und S32E-Bausteinfamilie basieren. Dabei können sowohl der Programmablauf als auch Datentransfers aufgezeichnet werden. Umfangreiche Konfigurationsmöglichkeiten für die ETMv4 der Cortex-R52-Cores sowie für die ETM-M33 der Cortex-M33-Cores erlauben bereits auf dem Chip eine umfassende Filterung der aufzuzeichnenden Trace-Daten.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Neben dem Core-Trace können auch die Transaktionen über das NoC vom Trace-System beobachtet und mit der UDE 2022 analysiert werden. Auch hierfür bietet die UDE 2022 weitreichende Konfigurationsmöglichkeiten zur Filterung der Daten. Die Trace-Unterstützung für das GTM, einschließlich Programm-Trace für die MCS-Kanalprogramme sowie Trace von GTM-Signalen, ist in Kürze verfügbar.

Für die Aufzeichnung der Trace-Daten kann entweder das UAD2next oder das UAD3+ aus der Universal Access Devices-Familie von PLS verwendet werden. Zur Speicherung der Trace-Daten verfügt das UAD2next über 512 MB, das UAD3+ sogar über bis zu 8 GB Trace-Speicher. Der schnelle Download der Trace-Daten vom Chip zur UDE 2022 erfolgt über den High Speed Serial Trace Port (HSSTP), der zu diesem Zwecke in die NXP S32Z- und S32E-Echtzeitprozessoren implementiert wurde.

"Wir freuen uns sehr, dass wir gleichzeitig mit der Markteinführung der NXP S32Z und S32E Echtzeitprozessoren bereits ein dediziertes und leistungsfähiges Debugging-, Systemanalyse- und Testwerkzeug für diese neueste Generation von Hochleistungs-MCUs anbieten können“, sagt Jens Braunes, Product Marketing Manager bei PLS.

"Durch die Zusammenarbeit mit PLS, einem der führenden Tool-Anbieter für S32Z2- und S32E-Echtzeitprozessoren, bietet NXP Entwicklern von Embedded-Anwendungen eine Lösung an, die alle Vorteile der Systemfunktionen nutzt und dazu beiträgt, die Markteinführung zu beschleunigen", sagt Simona-Sorina Costinescu, Software Managerin Automotive Processing Business Line bei NXP.

(ID:48484943)