Praxistest Debug&Trace Auf Spurensuche

Alleinstellungsmerkmale

Wir möchten einige Funktionen und Merkmale herausstelllen, die unserer Einschätzung nach besonders sind.

Ozone / J-Trace Pro bieten wohl den barrierefreisten Zugang zu Cortex-M-Systemen. Insbesondere ermöglicht eine offene Softwareschnittstelle die Einbindung in viele IDES. Unter den Highspeed-Debuggern erhöht das lüfterlose Design die Portabilität enorm. Neben der übersichtlichen Darstellung der Trace-Liste und des Code-Profilings finden wir die graphische Darstellung des Aufrufstapels (Bild 4) besonders gelungen.

UDE / UAD2next zeichnet sich durch die große Bandbreite an Zielplattformen und ein besonders flüssiges und übersichtliches GUI mit vergleichsweise hohem Automatisierungsgrad aus. An jeder erdenklichen Stelle findet man Autovervollständigung und fensterübergreifendes Highlighting der selben Symbole. Auch höhere Parametrierdialoge wie für die Trace-Liste oder das Code-Profiling sind sehr direkt und nutzerfreundlich gelöst.UDE war zudem im Test das einzige Tool, das unter dem ETM-Interface ein timinigbasiertes Code Profiling-Diagramm zeigte. Die UDE besitzt zudem das größte Sortiment an xy-Darstellungen.

uVision / ULink plus - Unter ULink plus ist zwar kein Code Profiling oder eine Codeerfüllungsanalyse möglich, dafür aber Power Meter (Bild 5), eine GPIO für die Testautomatisierung und ein Logikanalysator für die dynamische Variablenanalyse integriert. Für das Power Profiling muss ein geeigneter Shunt aus dem Paket gewählt werden, hier sind Ströme bis zu 250 mA möglich.

Auf dem Testboard muss ein Jumper vorliegen, der eine Stromversorgung aufknöpft; zwischen diese beiden Pin wird der Shunt gesetzt, ein zusätzlicher dritter Pin verbindet zur Masse (Bild 6). Auf dem STM32F779NI-eval finden wir geeignete Testpunkte für den globalen Stromumsatz und den der MCU.

Eine weitere Besonderheit bei ULink plus ist der Event-Recorder, der das dynamische Verhalten einer Applikation zeigt. Für bis zu 64 verschiedene Code-Bereiche wird Ausführungszeit und Energieaufnahme aufgezeichnet und die Event-Statistik-Funktion (Bild 7) zeigt maximale, minimale, und durchschnittliche Werte. Bezieht sich ein Code-Bereich auf einen Algorithmus, kann der Programmierer leicht verschiedene Implementierungen vergleichen und so die optimale Variante erkennen.

Im uVision Systemanalyzer wird dann die dynamische Spur in Symbolen und Zustandsinformationen gemeinsam mit dem Spannungs- und Stromverlauf gezeigt. Weiterhin kann eine Liste ausgegeben werden, welche die Programmsymbole in Beziehung zum Energieumsatz setzt (Power Profiling). arm kennt hierfür einen besonders eindrucksvollen Applikationsbericht [9].

PowerView / μTrace zeichnet sich durch Vollständigkeit aus: sowohl in Funktion als auch Dokumentation. Unabhängig von der jeweiligen Aufgabe steht man im PowerView stets vor der größten Konfigurations- und Darstellungstiefe. Zur Bewältigung der Vielfalt liegt ein umfangreiches Archiv an Handbüchern, Hardwaredokumentation und Applikationsberichten bereit.

Mit der starken Skriptzentrierung bietet PowerView auch den höchsten Automatisierungsgrad bezüglich der Programmausführung unter den Tools: für das jeweilige Ziel müsste eigentlich nur ein passendes cmm-Skript ausgeführt werden, das Konfiguration und Aufruf der jeweiligen Darstellungen regelt. Eine Besonderheit ist das MIPS-Diagramm (Bild 8), welches das Timing für Betriebssystemaufgaben visualisiert.

Auch gibt es einen kontextsensitive Hilfemodus: Jedes darin angeklickte Symbol erhält eine kurze Erklärung mit Verweis auf die entsprechende Stelle im .pdf-Archiv.