Statische Binärcode-Analyse-Tools

Berechnung der Worst-Case-Ausführungszeit (WCET)

Werkzeug: TimeWeaver

Bei modernen, hochkomplexen Prozessoren (viele davon mit mehreren Kernen) ist es sehr schwierig, die Pipeline-, Cache- und Crosstalk-Mechanismen zwischen den Kernen formal zu modellieren.

 

In diesem Fall ist es nicht möglich, die WCET allein durch statische Codeanalyse zu berechnen, und es ist notwendig, gemischte Techniken der Analyse und der Laufzeitmessung zu verwenden.

Was ist TimeWeaver

TimeWeaver ist ein hybrides Analysegerät, das diese beiden WCET-Berechnungstechniken kombiniert. Die genauesten Messungen der Ausführungszeit werden durch die Erfassung von nicht-intrusiven Hardware-Traces des Mikroprozessors erzielt. Daher ist TimeWeaver nur für Prozessoren mit Hardware-Trace-Fähigkeit und für Platinen mit Nexus-Trace-Anschluss und Aurora-Schnittstelle oder ähnlichem verfügbar. Darüber hinaus ist ein Debug-Testgerät mit Hardware-Trace-Fähigkeit wie Lauterbach oder Green Hills Probe erforderlich.

Um die WCET-Berechnung durchzuführen, benötigt TimeWeaver:

  • Der ausführbare Binärcode
  • Ausführungsspuren
  • Optional können der Quellcode und Anmerkungen zur Architektur angegeben werden.

Das Ergebnis der Analyse ähnelt dem von aiT und ist hinreichend genau, um als Nachweis für die Zertifizierung zu gelten.

TimeWeaver ist für die folgenden Architekturen und Trace-Formate verfügbar:

PowerPC mit der Fähigkeit zur Ausgabe von Nexus-Programm-Trace-Meldungen (IEEE-ISTO 5001, Klasse 2 oder höher):
ARM mit taktgenauem ETM-Trace oder ULink Pro
Tricore-Traces

Unterstützte Prozessorfamilien und Compiler

  • Kortex A53
  • Kortex R5F
  • AUDO-Familie (z. B. TC1796)
  • AURIX-Familie (z. B. TC275)
  • AURIX 2. Gen. Familie (TC3xx)
  • QorlQ P-Serie (e500mc-Kern)
  • QorlQ T-Serie (e5500, e6500 Kern)
  • Qorivva Linie MPC55xx, MPC56Xxx MPC57xx (e200-Kern)

Abonnieren Sie unseren Newsletter