Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering...

20

Transcript of Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering...

Page 1: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare
Page 2: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

Zeitsynchronisation mit IEEE 1588 und White

Rabbit

Dipl. Ing. Peter Plazotta, CEO

TSEP Technical Software Engineering Plazotta, Wolnzach

Page 3: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

• Zeitsynchronisation mit IEEE 1588• Überblick

• Konzept

• Verfügbare Hardware

• Zeitsynchronisation White Rabbit• Konzept / Anforderungen / Topologie

• Hardware- und Softwareerweiterungen zu IEEE 1588

• Mögliche Anwendungen

• Zusammenfassung

Agenda

Page 4: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 – Zielsetzung

Verteilung der Zeit aus einer sehr genauen Zeitquelle (Atomuhr,

GPS) an mehreren Computern oder Geräten im Netzwerk. Zur

Verteilung der Zeit steht nur die vorhandene Netzwerk-

infrastruktur zur Verfügung.

Page 5: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 - Historie

Historie:

1985 NTP-Protokoll veröffentlicht als RFC 985 von David L. Mills, die Genauigkeiten isthier etwa Mikrosekunde (1x10-6 Sek.)

1990 Eine Gruppe um John C. Eidson (HP) wurde gegründet, um das NTP-Protokoll zu verbessern

2000 John C. Eidson veröffentlichte seine Ergebnisse

2002 Der IEEE-Standard 1588-2002 basiert auf den Ergebnissen von John C. Eidson Untersuchungen. Die Genauigkeiten ist hier imNanosekunden (1x10-9 Sek) Bereich.

2008 Der aktuelle Standard IEEE 1588-2008 wurde veröffentlicht

Was ist seit 2008 passiert:

• Das Team um John C. Eidson arbeitet an der Version v3 die Ende 2018/Anfang 2019 veröffentlicht werden soll. Draft Versionen des Standards sind bereits vorhanden.

• Eine Gruppe von Unternehmen und Institutionen (CERN, GSI Helmholtz-Zentrum, National Instruments) entwickelte 2011 den "White Rabbit Standard", der aus der IEEE 1588-2008 abgeleitet wurde. Hierbei wird vor allen auf die Fehlerkorrektur der Hardwarekomponenten und den Systemeigenschaften eingegangen. Die Genauigkeiten liegt hier unter 200 Picosekunden (200x10-12 Sek).

Page 6: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 – Konzept

• Gruppierung aller Geräte im Netzwerk

• Mehr als ein Port (Verbindung zu anderen Uhren) kann sich in einer Uhr befinden

• Verwendung eines Master / Slave-Konzept, um die Zeit hierarchisch zu verteilen.

• Jede Uhr kann sowohl Master oder Slave sein

• Jeder Master synchronisiert seine angeschlossen Slaves mit seiner Masterzeit

• Der Austausch der Zeit zwischen Master uns Slave erfolgt über das TCP/IP Protokoll.

• Die Zeit wird regelmäßig neu synchronisiert

• Über einen Algorithmus wird zwischen der Master- und Slave-Rolle entschieden (Best Master Clock Algorithm). Somit konfiguriert sich das System selbstständig.

• Jeder Clock ist mit einem Qualitätskriterium ausgestattet, somit ist sichergestellt das die Uhrzeit der besten Clock verwendet wird

• Die Anforderungen an zusätzliche Netzwerkgeräte (z. B. Switches) zur Unterstützung des IEEE 1588 Standards sind definiert

Page 7: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 / Master Slave Synchronisation

Ablauf der Synchronisation:

t1 Master sendet periodisch “Sync Message”

(Enthält die Sendezeit)

t2 Slave empfängt die “Sync Message”

t3 Slave sendet eine “Delay Request Message” aus

t4 Master empfängt die “Delay Request Message” und

sendet die Empfangszeit dieser Nachricht an den

Slave zurück (Delay Response Message).

Zur Berechnung der Netzwerk-Übertragungszeit (meanPathDelay) wird

nachstehende Formel verwendet. Diese setzt eine symmetrische

Übertragungszeit (Senden/Empfangen) innerhalb des Netzwerks

voraussetzt:

Page 8: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 / „Problems to solve“

„Problems to solve“

1. Jede Uhr wird im Regelfall als ein Zähler implementiert, der die Zyklen zählt und die Zeit über die Frequenz des Zählers berechnet. Da die Frequenz unterschiedlich ist von Gerät zu Gerät muss diese korrigiert werden

2. Ethernet ist eine nicht deterministische Verbindung, daher variieren die Übertragungszeiten. Die Übertragungszeiten müssen ermittelt werden.

3. Laufzeiten innerhalb eines Gerätes (Netzwerkstacks, Treiber etc.) sind ebenfalls nicht deterministisch, da "PreemptiveScheduling" jeden Prozess jederzeit unterbrechen kann.

4. Laufzeiten innerhalb der Physikalischen Netzwerkes variieren (Kabellänge, Temperatur)

Page 9: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 – Hardware

Als Ergebnis der vorhergehenden Erläuterungen können kann folgender Schlußgezogen werden, dass je genauer der Zeitstempel tn an der Hardware-Schnittstelle festgelegt oder bestimmt werden kann, desto genauer ist der berechnete „meanPathDelay". Diese Beobachtung führt dann sehr schnell zu der Erkenntnis, dass ein Teil der IEEE 1588-Funktionalität in den entsprechenden Netzwerkchips untergebracht werden sollte. 2012 präsentierte Intel seine Netzwerkchips der Intel-Serie I21x / I35x, die erstmals eine Unterstützung für IEEE 1588 enthielten. Diese Netzwerkchips enthalten alle zeitkritischen Teile des IEEE-1588-Standards:

• Hardware clock: Ein interner Zähler mit den notwendigen Stellgrößen zur Frequenzanpassung

• Hardware Timestamping: Übertragen des aktuellen Zeitstempels auf ausgesendete TCP/IP UDP Pakete

• Hardware Timestamping Grabber: Speichern der Zeitstempel in den empfangen TCP/IP UDP Pakten

• Hardware Based Time Events: Erzeugung von zeitbezogenen Trigger Events oder Signalen (PPS)

Page 10: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 - Genauigkeit

Fakten:

• Signallaufzeit in Kabeln: 4ns

• Mit einer Genauigkeit von 20 ns kann Triggerung mit IEEE 1588 genauer sein als

bei Triggerkabel mit mehr als 5 m Länge

Genauigkeit:

• +/- 40 ns kann ohne größeren Aufwand (Hardware/Software) erreicht werden

• +/- 20 ns kann mit Hilfe von entsprechenden Algorithmen (Kalman Filter) und

Optimierungen erreicht werden

• < 1 ns kann mit zusätzlicher Hardware erreicht werden (Glasfaser statt Kupfer,

White Rabbit Hardware)

Schlussfolgerung:

Je genauer die System arbeiten sollen, desto kostenintensiver werden sie.

Page 11: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

IEEE 1588 – Demosystem

Auf unserem Stand Halle 5-258 steht eine laufende Demoeinheit,

auf der zwei TSEP IEEE 1588 Stacks laufen. Visualisiert wird bei

diesem Demosystem sowohl der softwaretechnische

meanPathDelay, als auch die Differenz der PPS Signale

(Hardware Uhr).

Page 12: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit

Page 13: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit / Zielsetzung

CERN, GSI und andere Firmen sahen den Bedarf den

bestehenden IEEE 1588 2008 Standard weiter zu verbessern.

Hierfür gab vom CERN aus konkrete Anforderungen. Sowohl die

Genauigkeit von IEEE 1588 als auch die zu erwartenden

Netzwerkkabellängen (mehrere Kilometer) sollten ermöglicht

werden.

Page 14: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit / Anforderungen

• Standard Ethernet

• Große Anzahl von Knoten (>1000)

• 1Gb Übertragungsgeschwindigkeit

• Zeitsynchronität < 1ns

• Kabellängen im Kilometer Bereich

• Einbindung von nicht WR fähigen Geräten

• Deterministisch und zuverlässige Datenübertragung mit

niedriger Latenz

• Offener Standard (Hardware/Software)

Page 15: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit / Topologie (Beispiel CERN)

• Innerhalb des Netzwerkes soll die Verteilung

hierarchisch erfolgen

• Der Einsatz von speziellen WR Switches

ermöglicht eine einfache Skalierung des

Systems

• WR Nodes und andere nicht WR fähige Geräte

sollen eingebunden werden können

• Die Masterzeit wird zentral eingespeist

Page 16: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit / Hardware

Folgende Verbesserung sind notwendig um die gewünschte Genauigkeit zu erreichen:

• Verwendung von Glasfaser Ethernet, statt Kupfer (1Gb Kabel werden die Daten über 4 Kabelpaare parallel übertragen, Zeitverschiebung bei Byte-Resample)

• Layer 1 Syntonization, Abgleich der Sende und Empfangsfrequenzen bei beiden Partnern

• „Digital Dual-Mixer Time Difference (DDMTD) phasedetection“ (Sende Frequenz wird aus Empfangsfrequenz abgeleitet)

Page 17: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

White Rabbit / Software

Verbesserung der Laufzeitberechnung:

• Annahme eines asymmetrischen Fehlermodels

gegenüber IEEE 1588

• Erweiterung des Fehlermodells gegenüber IEEE 1588

• Erweiterung des Statusmodells und der

ausgetauschten Nachrichten gegenüber IEEE 1588

Page 18: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

Denkbare Verwendungen

Messtechnik:

• Offline Datenerfassung und korrelieren der Daten über den Zeitstempel

• Trigger mit IEEE 1588, es existiert vom IVI Konsortium eine Softwaredefinition für die Konfiguration und Verwaltung solcher Ereignisse

• Virtuelles Messgerät

Prozesstechnik:

• Steuerung von verschiedenen Geräten (Roboter, Automaten) über IEEE 1588

Energietechnik:

• Steuerung und Verwaltung von Mess- und Steuergrößen in Kraftwerken

Page 19: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

Zusammenfassung

• IEEE 1588 hat großes Potential und ist aufgrund der verfügbaren Hardware

einfach und sofort einsetzbar

• Offline Datenerfassung oder Cloud Datenanalyse, kann über akkurate

Zeitstempel die Daten korrelieren

• Messungen die über einen größere Fläche verteilt sind (Durchbiegung einer

Tragfläche eines Passagierflugzeuges) und damit die Laufzeiten in den

Kabeln relevant werden, können von IEEE 1588 profitieren

• Mit Hilfe von anderen Standards wie LXI und IVI lassen sich interagierende

System bauen.

Page 20: Zeitsynchronisation mit 1588 und White Rabbit - tsep.com · - Technical Software Engineering Plazotta •Zeitsynchronisation mit IEEE 1588 •Überblick •Konzept •Verfügbare

- Technical Software Engineering Plazotta

Thank you for your attention!