Universal Debug Engine von PLS in neuer Version Multicore Debugging leicht gemacht

Über die immer gleich bleibende Benutzeroberfläche der UDE 4.2 lassen sich die Multi Core Targets flexibel steuern, ohne dass der Anwender die zugrunde liegende On-Chip-Logik im Detail kennen muss.
Über die immer gleich bleibende Benutzeroberfläche der UDE 4.2 lassen sich die Multi Core Targets flexibel steuern, ohne dass der Anwender die zugrunde liegende On-Chip-Logik im Detail kennen muss.

Stark erweiterte Kontroll- und Testverfahren für Multicore Targets, optimierte Visualisierungsmöglichkeiten beim System-Level-Debugging sowie die dedizierte Unterstützung einer Vielzahl aktueller 32-Bit-Multi-Core-SoCs verschiedener Hersteller – mit diesen Merkmalen wartet die Universal Debug Engine (UDE) 4.2 von PLS auf, die das Unternehmen auf der embedded world 2014 vorstellt.

Die Kontrolle und das Debugging eines Multicore-Systems erfolgt bei der UDE 4.2 von PLS Programmierbare Logic & Systeme in einer konsistent gestalteten Benutzeroberfläche. Unterschiedliche, vom Anwender selbst definierbare Farben und Ansichtsgruppen für einzelne Funktionseinheiten sorgen dabei für eine schnelle Übersicht und eine einfache Navigation auch in komplexen SoCs. Für die Kontrolle durch den Debugger können die einzelnen Cores gezielt selektiert und synchronisiert werden. Dazu nutzt die UDE 4.2 unter anderem auch die vorhandenen On-Chip-Trigger- und Synchronisations-Möglichkeiten der unterschiedlichen Chip-Hersteller. Über die immer gleich bleibende Benutzeroberfläche der UDE 4.2 lassen sich die Multi Core Targets flexibel steuern, ohne dass der Anwender die zugrunde liegende On-Chip-Logik im Detail kennen muss.

Mit neuen Eigenschaften wartet auch das Trace-Framework der Universal Debug Engine 4.2 auf. Die Auslagerung der Datenverarbeitung in einen separaten Prozess beispielsweise sorgt nicht nur für eine schnellere Auswertung, sondern erlaubt auch die persistente Speicherung von Trace-Sessions für eine spätere Analyse ohne direkten Zugriff auf das Target. Diverse Filter und die Möglichkeit, aufgezeichnete Ereignisse verschiedener Trace-Quellen unterschiedlich einzufärben, sorgen für eine übersichtliche Präsentation der Ergebnisse.

Um die von Infineon, Freescale und STMicroelectronics für einige SoCs angebotenen Emulation Devices noch effizienter nutzen zu können, hat PLS auch den Universal Emulation Configurator (UEC) der Universal Debug Engine erweitert. Dabei erfolgt die Programmierung der auf den Emulation Devices befindlichen zusätzlichen Trigger-Logik durch eine grafische Konfiguration von Trace-Aufgaben, bei der Signale und Aktionen über eine State Machine verknüpft werden.

Zur Aufnahme der Trace-Daten dient das Hardware Tool Universal Access Device (UAD) 3+ mit 4 GByte externem Trace-Speicher. Dank eines vier serielle High-Speed-Lanes mit jeweils bis zu 3,25 GBit/s Übertragungsgeschwindigkeit unterstützenden AURORA-Trace-Pods und eines parallelen Trace Pods für die Aufzeichnung von Signalen bis 500 MHz ist das UAD3+ auch für zukünftige Entwicklungen gerüstet.

Cleveres Datenmanagement

Eine schnelle und sichere Auswertung der immensen Trace-Datenmengen wird durch ein neues Modul unterstützt, das erstmals auch die Coverage-Analyse von optimiertem Code ermöglicht. Dazu hat PLS das typischerweise für Debug-Informationen verwendete DWARF-Format so erweitert, dass durch den Compiler ausgelöste Kontrollflussänderungen für den Debugger erkennbar sind. Der generierte Report enthält neben Balkengrafiken für eine schnelle Übersicht eine detaillierte Aufstellung über Statement- und Branch-Coverage pro Funktion, Quelltextzeile und einzelnem Maschinenbefehl. Zudem sind nicht ausgeführter Code, nur teilweise abgedeckte Codebereiche oder nicht ausgeführte Sprünge schnell lokalisierbar. Der Report lässt sich im Rahmen der von der IS0262626-Norm geforderten Dokumente zum Nachweis der Softwarequalitätssicherung verwenden.

Unterstützte Bausteine

Zu den von der UDE 4.2 neu unterstützten Mikrocontrollern zählen unter anderem die aktuellsten Steps der AURIX-Familie von Infineon, der Qorivva-Bausteine MPC57xx von Freescale sowie der SPC57x-Familie von STMicroelectronics. Bei diesen drei Modellreihen können auch die Programme für die integrierten Generic Timer Module (GTM) und Hardware Security Module (HSM) debuggt werden. Aber auch die speziell für sicherheitskritische Applikationen nach IEC 61508 SIL-3 oder ISO 26262 ASIL D entwickelte Cortex-R4-basierte Hercules(TM) Mikrocontroller-Plattform von Texas Instruments mit den Baureihen TMS570LS und RM4x und die Cortex-M0- basierten XMC1000-Bausteine von Infineon unterstützt die UDE 4.2 uneingeschränkt.