Die Leistungsfähigkeit von PTP könnte zukünftig viele gängige Testanforderungen grundlegend verändern. Dieser Artikel beschreibt die Funktionsweise und die Vorteile dieser Technologie. PTP synchronisiert präzise die in vielen modernen Systemkomponenten integrierten Echtzeituhren. Ähnlich wie das Network Timing Protocol (NTP) arbeitet PTP über Ethernet und TCP/IP. Es ist jedoch deutlich präziser: Eine Synchronisierung bis hinunter zu 100 ns oder sogar besser ist problemlos möglich. Man könnte meinen, solche Systeme seien anfällig und schwierig zu konfigurieren, doch das Gegenteil ist der Fall. Wie wir später sehen werden, ist die Systemeinrichtung einfach und weitgehend automatisch. Zunächst betrachten wir jedoch einige grundlegende Konzepte des IEEE-1588-Standards.


TXI-104-1PTP basiert auf einer Master-Slave-Architektur. Die Slave-Uhren werden mit der Master-Uhr synchronisiert (typischerweise mit der stabilsten und genauesten Zeitbasis). Der Schlüssel zur Genauigkeit von PTP liegt in der Berücksichtigung der Nachrichtenübertragungszeit im LAN bei der Berechnung der Slave-Uhrabweichung (siehe Abbildung 1).
Wie dargestellt, sendet die Master-Uhr in regelmäßigen Abständen eine Synchronisationsnachricht „Sync“ an den Slave. Der Slave antwortet mit einer Verzögerungsanforderungsnachricht „Delay_Req“. Sowohl das Senden als auch das Empfangen dieser Nachrichten werden von den Uhren protokolliert. Die vier resultierenden Zeitprotokolle werden anschließend zur Berechnung der Übertragungszeit verwendet (die Zeit, die die Nachricht tatsächlich auf der physikalischen Netzwerkschicht übertragen wird). Die Berechnung in Abbildung 1 basiert auf der Annahme einer symmetrischen Übertragungszeit (bei Ethernet eine durchaus plausible Annahme). Mit der Übertragungszeit und den auf der Sync-Nachrichtenzeit basierenden Registern lässt sich die Slave-Uhrabweichung unkompliziert berechnen.


Hardware ist besser als Software.

Obwohl es keine zwingende Voraussetzung ist, werden Timing-Register für optimale Leistung in Hardware auf der physikalischen Netzwerkschicht erfasst. Warum? Der Schlüssel zu perfekter Synchronisation sind stabile und wiederholbare Timing-Register mit minimalen Abweichungen. Dies lässt sich am besten durch Hardware-Design erreichen (siehe das Blockdiagramm in Abbildung 2).
Bei einem Ethernet-Design mit einem separaten physikalischen Chip (Implementierung der physikalischen Schicht) ist es relativ einfach, den Bitstrom von Ethernet-Frames zu erfassen. Die Hardware zur Mustererkennung sucht dann nach einem eingehenden Delay_Req- oder ausgehenden Sync-Nachrichtenmuster. Die IEEE-1588-Spezifikation gibt klar an, welche Bitübergangs-Timing-Register erfasst werden sollen.
Im oben beschriebenen Design wird das Timing-Register so erfasst, als würde der Ethernet-Frame tatsächlich an die physikalische Netzwerkschicht gesendet. Daher kann das Timing-Register nicht in derselben Nachricht gesendet werden. Die Follow-Up-Nachricht (siehe Abbildung 1) dient der separaten Übermittlung des zeitbasierten Protokolls („genaue Sendezeit“) von der ursprünglichen Sync-Nachricht.
In manchen Situationen mag es ausreichend und durchaus sinnvoll sein, eine Softwareanwendung zur zeitbasierten Protokollierung zu verwenden. Die resultierende Synchronisierungsgenauigkeit wird jedoch aufgrund des mit der Netzwerkprotokollstapelung verbundenen Timing-Jitters deutlich geringer ausfallen.

Netzwerkverzögerungsjitter ist der größte Feind.
Wie bereits erwähnt, basiert der Taktkorrekturalgorithmus auf der Annahme symmetrischer Übertragungszeiten. Daher beeinträchtigen Schwankungen der Übertragungszeiten (in eine Richtung) die Synchronisationsgenauigkeit. Für optimale Leistung sollte eine Netzwerkinfrastruktur mit minimalem Verzögerungsjitter gewählt werden.

TXI-104-2Ein Ethernet-Hub zeichnet sich konstruktionsbedingt durch relativ niedrige und stabile Latenz aus. Er ist ein einfacher Signalverstärker, und Ethernet-Frames werden weder gespeichert noch interpretiert. Ein Ethernet-Switch hingegen weist eine höhere Latenz und, was noch wichtiger ist, einen deutlich höheren Jitter auf. Der Switch analysiert eingehende Frames und reiht sie zur Ausgabe an den entsprechenden Zielport ein. Ein Router weist einen noch höheren Jitter auf, da er Pakete auf der IP-Schicht untersucht und sie mithilfe von Softwaremechanismen speichert und weiterleitet.
Wenn Sie einen Switch oder Router aufgrund ihrer zusätzlichen Funktionen auf den Netzwerkschichten 2 bzw. 3 nutzen möchten, müssen Sie den höheren Jitter und die daraus resultierende geringere Synchronisationsgenauigkeit nicht in Kauf nehmen. Punkt-zu-Punkt-Verbindungen (PTP) verwenden einen Mechanismus namens Peripherie-Taktgeber, um die negativen Auswirkungen von Netzwerkkomponenten mit hohem Jitter zu neutralisieren (siehe Abbildung 3).


TXI-104-3Ein Peripherie-Taktgeber ist ein Switch oder Router mit eigener, integrierter Echtzeituhr, der dem IEEE-1588-Standard entspricht. Abgesehen von PTP-Timing-Nachrichten wie Sync und Delay_Req verhält er sich wie ein normaler Switch oder Router. Bezüglich PTP beendet der Peripherie-Taktgeber jedoch den Synchronisationspfad hinter jedem einzelnen Port. Der Port, der mit der besten Uhr (Master-Taktgeber) verbunden ist, fungiert als Slave-Taktgeber. Folglich synchronisiert sich die interne Uhr des Switches oder Routers über diesen Port mit dem Master-Taktgeber. Die anderen Ports fungieren als Master-Taktgeber. Dadurch synchronisieren sich alle Slave-Taktgeber in ihrem jeweiligen Synchronisationspfad mit der internen Uhr des Peripherie-Taktgebers.
Dieser Mechanismus erhöht die Synchronisationsgenauigkeit erheblich (auf das Niveau eines einfachen Ethernet-Hubs oder sogar besser), da die IEEE-1588-Timing-Nachrichten nicht über das Netzwerkgerät vermittelt oder geroutet werden (anders als andere IP-Pakete oder Ethernet-Frames). Folglich wird eine wichtige Quelle für Verzögerungsjitter (Speicherung und Verarbeitung im Netzwerkgerät) eliminiert.
Wie weit kann diese Technologie noch verbessert werden?
Wie bereits erwähnt, sollte ein System, das auf maximale Leistung ausgelegt ist, zwei wichtige Regeln beachten. Erstens sollte es eine hardwaregestützte Implementierung des IEEE-1588-Standards für Master- und Slave-Taktgeber verwenden. Zweitens sollte es eine geeignete Netzwerkinfrastruktur nutzen: einen einfachen Ethernet-Hub oder ein komplexeres Netzwerkelement (Switch oder Router) mit einem Peripherie-Taktgeber. Wie hoch lässt sich die Synchronisationsgenauigkeit bei Einhaltung dieser Regeln erreichen?
Mit hardwaregestützten Verfahren ist die Genauigkeit durch zwei Faktoren begrenzt: die Takterfassung der physikalischen Implementierung und die Stabilität des Oszillators bzw. des lokalen Taktgebers selbst. Bei der Implementierung von Fast Ethernet liegt der Takterfassungsjitter typischerweise im niedrigen Bereich von unter zehn Nanosekunden. Die Auswirkungen dieses Jitters lassen sich mithilfe statistischer Methoden sehr effektiv reduzieren. Die Variation des lokalen Oszillators hängt stark vom Systemdesign ab und kann Takterfassungsprobleme leicht minimieren. Es ist zu beachten, dass das Sync-Nachrichtenintervall auf 1 Sekunde reduziert werden kann, jedoch nicht darunter. Ein Design mit hoher Stabilität sollte geringe Variationen aufweisen, um die Stabilität der Takterfassung (im kleinen Nanosekundenbereich) zu gewährleisten. Dies könnte eine relativ teure Lösung auf Basis eines wärmebeständigen Oszillators erfordern.

Die besten Designs beinhalten geeignete statistische Methoden zur Reduzierung der Auswirkungen von Verzögerungsschwankungen. Der IEEE-1588-Standard schreibt die Verwendung eines Mittelwertbildungsalgorithmus nicht vor; daher können Hersteller hier einen weiteren Beitrag zu ihren Lösungen leisten.


Sind diese Systeme schwierig zu installieren?
Einer der interessantesten Aspekte des IEEE-1588-Standards ist die weitgehend automatische Systemkonfiguration (sofern man den Konfigurationsprozess nicht manuell steuern möchte). Wie ist das möglich?
Jede Uhr speichert bestimmte Datensätze, die ihre inhärenten Fähigkeiten (z. B. ihre Stabilität) und ihre aktuelle Konfiguration (z. B. eine Schätzung der Echtzeitabweichung vom Master sowie die Kennung des Masters) beschreiben. Diese (und weitere) Parameter beschreiben die Qualität einer Uhr und werden in jeder von ihr gesendeten Sync-Nachricht veröffentlicht.
Sobald eine Uhr online ist, übernimmt sie die Master-Rolle und beginnt, Sync-Nachrichten (mit ihren Spezifikationen) zu senden. Andere Uhren empfangen die Qualitätsparameter und vergleichen sie mit ihren eigenen Spezifikationen (mithilfe des „Best Master Clock“-Algorithmus). Erkennen sie einen besseren Master, übernehmen sie die Slave-Rolle.
Was sind die Kriterien für eine „gute“ Uhr? Ein wichtiger Parameter ist die „Clock Stratum“. Dieser Wert gibt an, ob die Uhr direkt oder indirekt auf eine „offizielle“ Standardzeitquelle, wie beispielsweise einen GPS-Empfänger, rückführbar ist. Uhren mit direkter Anbindung an eine absolute Zeitquelle sind vorzuziehen. Ein weiterer wichtiger Parameter ist die „Uhrenvarianz“, ein Indikator für die inhärente Stabilität der Uhr.
Wie bereits erwähnt, können die automatischen oder Standardeinstellungen bei Bedarf angepasst werden. Der IEEE-1588-Standard definiert hierfür verschiedene Management-Nachrichten. Diese ermöglichen es, die Datensätze der Uhr abzufragen, die Echtzeit-Einstellungen anzupassen und den Status oder andere Betriebsparameter der Uhr über das LAN zu ändern.


Wozu dient diese Technologie also?
Die Datenerfassung ist eine naheliegende Anwendung des IEEE-1588-Standards. Viele Anwendungen erfordern Sensoren, die über ein großes Gebiet verteilt sind (z. B. in Industrieanlagen oder in der drahtgebundenen/drahtlosen Kommunikation). Aber auch in zentralisierten Anwendungen ist die Synchronisierung verschiedener Instrumente oder Datenerfassungseinheiten notwendig. In nahezu allen Anwendungen ist es entscheidend zu wissen, wann die einzelnen Messungen durchgeführt wurden. Die hohe Zeitgenauigkeit von IEEE 1588 eröffnet mehr Möglichkeiten für die Nachbearbeitung und Analyse und ermöglicht so ein besseres Verständnis. Ohne IEEE 1588 müssten Instrumente mithilfe separater GPS-Empfänger oder eines zentral generierten Triggersignals synchronisiert werden. Die erste Option ist kostspielig, die zweite aufgrund von Laufzeitverzögerungen und Triggerjitter nicht unkompliziert. Auch
Funktionstests profitieren stark von IEEE 1588. Oftmals müssen Reize in einer vordefinierten Reihenfolge und mit präziser Zeitsteuerung angewendet werden. Ebenso wichtig ist es, die Reaktion eines Prüflings (DUT) zu einem vordefinierten Zeitpunkt zu messen oder aufzuzeichnen. Selbst komplexeste Szenarien lassen sich mit der zeitbasierten Triggerung gemäß IEEE-1588-Standard problemlos umsetzen. Ohne diese wäre es unter Umständen erforderlich, ein oder mehrere Hardware-Triggersignale zu generieren und diese auf geeignete Weise an die verschiedenen Instrumente weiterzuleiten. Die zeitbasierte Triggerung bietet deutlich mehr Flexibilität, da sie nicht durch die physische Verkabelung eingeschränkt ist und keine Signalqualitätseinbußen aufweist.


Zusammenfassung:
Der IEEE-1588-Standard ist eine faszinierende Technologie. Wenn Sie im Bereich Systemanwendungen arbeiten, sollten Sie ihn unbedingt in Betracht ziehen. Diese Technologie und ihre Funktionen können Ihnen die Arbeit erheblich erleichtern. Punkt-zu-Punkt (PTP) ermöglicht die systemweite zeitbasierte Protokollierung und präzise zeitbasierte Auslösung ohne aufwendige Verkabelung. Daher bietet er in diesem Bereich ein beispielloses Maß an Flexibilität.

 

Weitere Informationen

 

Der Autor,
Stefan Kopp, hat einen Abschluss in Informatik von der Dualen Hochschule Stuttgart. Seit 1989 ist er bei Agilent (ehemals HP) in verschiedenen Funktionen tätig, unter anderem als Projektmanager für kundenspezifische Testlösungen und als Vertriebsmitarbeiter. Aktuell arbeitet er als Berater im Bereich Testautomatisierung und Testsystemkomponenten.