Universeller hybrider Systembeobachter für Echtzeitsysteme - real-time

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009. Folie 2. ▫ eingebettete Systeme werden komplexer. ▫ Vielzahl an ...
448KB Größe 3 Downloads 34 Ansichten
Universeller hybrider Systembeobachter für Echtzeitsysteme Björn Pietsch Institut für Regelungstechnik Leibniz Universität Hannover

Björn Pietsch

 eingebettete Systeme werden komplexer  Vielzahl an Aufgaben  Auslegung, Verifikation, Optimierung und Fehlersuche aufwendig  Einsicht in innere Vorgänge notwendig  Zeitverhalten von außen vorgegeben  gleichzeitige Verfolgung interner und externer Abläufe nützlich  herkömmliche Analysatoren und Debugger nur sehr bedingt geeignet

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 2

Gliederung     

Notwendigkeit der Aktionsverfolgung Grundtypen der Beobachter OSOBS: Operating System Observer Effizienz und Anwendungen Ausblick

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 3

Softwarebeobachter Code

Daten

CPU

Speicher

Busbridge

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 4

Softwarebeobachter        

systemeigene Tracer (z.B. ftrace, LTTng) keine zusätzliche Hardware leicht portierbar beanspruchen Systemressourcen Auflösung und/oder Aufzeichnungsdauer begrenzt erzeugen zusätzliche Ereignisse verändern Abläufe Beobachtung externer Vorgänge nicht möglich

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 5

Hardwarebeobachter Code

Daten

CPU

Speicher

>99%

Cache

Busbridge

Beobachter Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 6

Hardwarebeobachter  Busbeobachtung  rückwirkungsfrei bei zugänglichem Bus  System on Chip nutzt keinen externen Bus  Cache fängt Großteil der Zugriffe ab  komplexe Hardware notwendig  Prozessormodule (z.B. Nexus5001, ARM Trace Port)  meist rückwirkungsfrei, keine Cache/SoC-Probleme  Daten unspezifisch: hohe Datenraten  komplexe Hardware notwendig

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 7

Hybrider Beobachter Code

Daten

CPU

Speicher

Beobachter (systemunabhängig)

Busbridge spezif. Target

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 8

Hybrider Beobachter  Aufzeichnung mit externer Hardware  Datenumfang praktisch unbegrenzt  ständige Bereitschaft: einfacher Zugriff  einfache Überwachung peripherer Systeme  Hardware notwendig, aber standardisierbar  zwei Zeitbasen: Vereinheitlichung notwendig  Aktive Ausgabe von Meldungen an wichtigen Stellen  Beschränkung auf bedeutende Ereignisse  standardisierte Datenkanäle (z.B. PCI, PCIe) nutzbar  Beeinflussung der Abläufe, aber gering

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 9

Anforderungen an einen hybriden Beobachter  möglichst geringe Beeinflussung des Systems  Unabhängigkeit von spezieller Softwarestruktur  Modularität zur einfachen Anpassung an verschiedene Systeme  Beobachtung von Netzwerken  Erfassung und Anregung von Interrupts  Widerstandsfähigkeit gegen Ereignisbursts  Sicherung gegen Übertragungsfehler

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 10

OSOBS: Struktur am Beispiel eines Roboters OSOBS-Master CAN 4 Kanäle SRAM 4 MiB

CAN

CPCITarget

HSSI

Leitrechner

HSSI

PCI FPGA USBModul

HostPC

Interrupts

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 11

Daten Kontinuierliche Ereignisrate: 1,25 Mio./s Maximale Ereignisrate über PCI: 3,3 Mio./s Pufferkapazität: 250.000 Ereignisse Ereignisformat (4x4 Byte):  Zeitstempel  Quellkennung (Prozess/Quelle)  Ereigniscode  Statusmeldung  2 Interruptdetektoren/-generatoren    

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 12

Beobachtungspunkte  Speicherfenster für Target, Adresse trägt auch Information  Aufwand für Beobachtungspunkt (PowerPC):  2 Speicherzugriffe  RTOS-UH: 5 Maschinenbefehle  Linux: 13 Maschinenbefehle, Optimierungspotential  spezielle Ereigniscodes ermöglichen Datentransport:  Speicherbelegung  benutzerdefinierte Werte aus Anwendung 14E90 40002010 0 200 Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 13

Analyse  Vorverarbeitung  Konversion in XML  Wiederherstellung unterbrochener Beobachtungspunkte  Vereinheitlichung der Zeitmessung  Umwandlung der Datenereignisse  Zustandsrekonstruktion für Prozesse  statistisch  gerufene Funktionen  Ausführungs- und Latenzzeiten  grafisch

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 14

Grafische Analyse

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 15

Anwendungen    

Treibereffizienz CAN Funktionsklärung des Gatekeepers in Linux/Xenomai Referenzerfassung des Ressourcenverbrauchs Versagensmechanismus bei Interruptlast

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 16

Ausblick  Bedienkomfort  Analysen fortführen  LTTV-Integration

Quelle: www.lttng.org Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 17

Vielen Dank für die Aufmerksamkeit Fragen ?

Björn Pietsch Institut für Regelungstechnik Leibniz Universität Hannover www.irt.uni-hannover.de

Björn Pietsch Universeller hybrider Systembeobachter für Echtzeitsysteme, 20.11.2009

Folie 18