Das Tracing-Tool vereinfacht das Testen von Software und das Debuggen von Autom...

Blog

HeimHeim / Blog / Das Tracing-Tool vereinfacht das Testen von Software und das Debuggen von Autom...

Oct 04, 2023

Das Tracing-Tool vereinfacht das Testen von Software und das Debuggen von Autom...

Die Ablaufverfolgung ist eine wesentliche Debug-Methode zur Untersuchung von Fehlern und Zeitproblemen

Tracing ist eine wesentliche Debug-Methode zur Untersuchung von Fehlern, Zeitproblemen oder zur Identifizierung von Engpässen in eingebetteten Anwendungen, insbesondere wenn das Laufzeitverhalten der untersuchten Anwendung während des Debuggens nicht beeinträchtigt werden darf. Für eine effiziente Trace-Nutzung muss jedoch zunächst das Trace-System des verwendeten Mikrocontrollers entsprechend konfiguriert werden. Das ist in der Regel gar nicht so einfach. Das Verfahren kann sehr zeitaufwändig sein und erfordert oft tiefere Kenntnisse des Trace-Systems des jeweiligen SoC.

Die UDE SimplyTrace-Funktion vereinfacht diesen Prozess, indem Trace-Funktionen aus typischen Anwendungsfällen übernommen und kontextsensitiv an die verschiedenen Debugger-Ansichten angehängt werden. Beispielsweise kann die Trace-Aufzeichnung für die Anwendungsfälle „Trace from Source Code Line“ oder „Trace to Source Code Line“ direkt aus dem Quellcode-Fenster konfiguriert werden. Dies ist so einfach wie das Setzen eines Haltepunkts. Darüber hinaus kann die mit den UDE SimplyTrace-Funktionen erstellte Trace-Konfiguration auch nachträglich mit den regulären UDE-Konfigurationstools angepasst und erweitert werden.

Die Implementierung des Features basiert auf einer zunehmenden Abstraktion über verschiedene Schichten. Die unterste Schicht umfasst die Funktionen der On-Chip-Trace-Komponenten, während die oberste Schicht die Anwendungsfälle des Softwareentwicklers widerspiegelt. Dieser Ansatz ermöglicht eine einfache Erweiterung sowohl im Hinblick auf neue Trace-Architekturen als auch auf zusätzliche Anwendungsfälle.

Die anfängliche UDE SimplyTrace-Implementierung stellt zunächst die häufig verwendeten Programm-Trace-Funktionen sowie grundlegende Daten-Trace-Anwendungsfälle wie die Beobachtung von Datenzugriffen auf Variablen bereit. Weitere Anwendungsfälle, wie etwa der Datentrace von Registerzugriffen oder ein vereinfachter Tasktrace für Echtzeitbetriebssysteme, sind in der Entwicklung.

Erfahrene Entwickler, die bereits mit den Trace-Funktionen der jeweiligen Mikrocontroller vertraut sind, können die mit UDE SimplyTrace erstellten Trace-Konfigurationen als Vorlage verwenden und diese mit den regulären Konfigurationstools in UDE, wie dem Universal Emulation Configurator (UEC), bearbeiten. Dies ermöglicht dem Benutzer, die Trace-Aufgabe anzupassen oder zu erweitern, wenn die spezifischen Anforderungen über die typischen Anwendungsfälle hinausgehen.

Der neuartige Ansatz zur einfachen Trace-Nutzung funktioniert unabhängig vom verwendeten Mikrocontroller. Da der Anwender keinerlei Berührungspunkte mit den speziellen Anpassungen der UDE SimplyTrace-Funktionen an das jeweils verwendete Trace-System hat, ist der jeweilige Schulungsaufwand äußerst gering, die Lernkurve jedoch steil. Dadurch können mit UDE SimplyTrace die Phasen des Softwaretests, der Laufzeitanalyse und der Systemoptimierung enorm vereinfacht und beschleunigt werden.

Mit UDE 2023 sind die UDE SimplyTrace-Funktionen nun für die Mikrocontroller-Geräte der Aurix-Familie von Infineon, für Arm Cortex MCUs mit dem entsprechenden CoreSight Debug- und Trace-System sowie für PowerArchitecture-basierte Geräte mit Nexus Class 3 Trace-Unterstützung verfügbar.

https://www.pls-mc.com