Entwicklungssystem Testautomatisierung mit dem Debugger

Der Hardware Debugger von PLS dient dazu, genau zu analysieren, was im Inneren von modernen Systems-on-Chip vor sich geht. PLS kann die Chips aber nicht nur auslesen, sondern auch fernsteuern, was automatisch ablaufende Software Tests erleichtert.

Auf der Embedded World präsentiert PLS eine neue Version seiner Universal Debug Engine (UDE), die neben etlichen zusätzlichen Trace- und Debugging- Funktionen um neue Funktionen für die Testautomatisierung erweitert worden ist. UDE 4.6 unterstützt viele unterschiedliche Prozessor-Architekturen und -Familien wie die Power-Architecture-basierte SPC58E-Serie und die mit einem ARM Cortex-M7 Core ausgestattete STM32F7-Familie von STMicroelectronics, den XMC4800 von Infineon, der als erster Mikrocontroller einen ARM Cortex-M4 Core mit EtherCAT auf einem Chip kombiniert, sowie die mit einem Dual-Core Cortex-A9 und zusätzlichem FPGA ausgestattete Zynq-7000-Familie von Xilinx. Der Universal Emulation Configurator (UEC) ist eine Erweiterung der UDE, mit dem auf die Triggerlogik spezieller Emulations-Chips und die interne Debug-Logik einiger SoCs zugegriffen wird. Die Triggerbedingungen werden über eine grafische Benutzeroberfläche mit Hilfe von Zustandsautomaten festgelegt. Dieser UEC wurde um eine Bibliothek für das Mini-MCDS (Multi-Core Debug Solution) der aktuellen Aurix-Mikrocontroller von Infineon erweitert. Damit steht ein Teil der Diagnosemöglichkeiten, die bislang nur spezielle Emulations-Chips boten, erstmals auch in den Serien-ICs zur Verfügung. Für die Nutzung dieser Funktion ist lediglich eine JTAG-Standard-Debug-Schnittstelle oder DAP (Device Access Port) am Zielsystem erforderlich. Für die Nutzer der Virtualizer-Simulator-Plattform von Synopsys hat PLS die Unterstützung der UDE 4.6 auf Mehrkernsysteme ausgeweitet. Damit kann die UDE auch für Multicore-Simulationen basierend auf Aurix-/TriCore-, PowerArchitecture- oder ARM-Core-Modellen verwendet werden.

Dauerhafte Trace-Speicherung

Dank des neuartigen Ansatzes persistenter Trace-Ströme innerhalb der UDE ist nun außerdem ein Export von Trace-Daten sowie ihr späterer Import und eine Offline-Analyse ohne kostenintensive HiL-Target-Umgebung möglich. Die Verwaltung der verschiedenen Trace-Aufzeichnungen mit frei wählbaren Bezeichnungen und exaktem Zeitstempel erfolgt direkt in der Debugger-Oberfläche. Intelligente Filter-Funktionen für die Symbol- und Peripherie­register-Auswahl vereinfachen die Navigation auch in großen Applikationen und sehr komplexen SoCs. Auch die COM-Software-Schnittstelle der UDE wurde um zusätzliche Funktionen erweitert. So wurden u.a. die Möglichkeiten für das Laden von Multicore-Applikationen sowie das Setzen von Breakpoints durch dritte Tools entscheidend erweitert bzw. vereinfacht. Zusätzliche, komplett neue Funktionen gestatten nunmehr eine automatisch ablaufende Konfiguration, Ausführung und Dokumentation von Code-Coverage-Messungen sowohl durch eigene Makros als auch durch externe Tools. Dies unterstützt die Erstellung von Test Workflows zur Sicherung der Software-Qualität entsprechend der Norm ISO 26262.