DE4320137B4 - Synchronisation von Tageszeituhren in einem verteilten Verarbeitungsnetzwerksystem - Google Patents

Synchronisation von Tageszeituhren in einem verteilten Verarbeitungsnetzwerksystem Download PDF

Info

Publication number
DE4320137B4
DE4320137B4 DE4320137A DE4320137A DE4320137B4 DE 4320137 B4 DE4320137 B4 DE 4320137B4 DE 4320137 A DE4320137 A DE 4320137A DE 4320137 A DE4320137 A DE 4320137A DE 4320137 B4 DE4320137 B4 DE 4320137B4
Authority
DE
Germany
Prior art keywords
time
station
timer
day
devices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE4320137A
Other languages
English (en)
Other versions
DE4320137A1 (de
Inventor
Warren Albert Edblad
Albert William Crew
Carl Joseph Staab
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Emerson Process Management Power and Water Solutions Inc
Original Assignee
Emerson Process Management Power and Water Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Emerson Process Management Power and Water Solutions Inc filed Critical Emerson Process Management Power and Water Solutions Inc
Publication of DE4320137A1 publication Critical patent/DE4320137A1/de
Application granted granted Critical
Publication of DE4320137B4 publication Critical patent/DE4320137B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/437Ring fault isolation or reconfiguration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0664Clock or time synchronisation among packet nodes using timestamps unidirectional timestamps

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Electric Clocks (AREA)
  • Computer And Data Communications (AREA)

Abstract

Verteiltes Verarbeitungssystem (1) mit:
einer Mehrzahl von Stationen (3), die jeweils einen Stationsprozessor (17) mit einem Betriebssystem, das eine Stations-Tageszeituhr aufweist, und eine Netzwerkschnittstelle (15) besitzen;
einem Datenkommunikationsnetzwerk (5), das die Mehrzahl von Stationen (3) über die Netzwerkschnittstellen (15) verbindet; und
Synchronisationsvorrichtungen zum Synchronisieren der Stations-Tageszeituhren in den Stationsprozessoren;
Vorrichtungen (23) innerhalb einer vorgegebenen Zeitgeberstation, die periodisch ein Zeitgebersignal erzeugen, das über das Datenkommunikationsnetzwerk (5) an alle Stationen (3) einschließlich der Zeitgeberstation gesandt wird;
wobei die Synchronisationsvorrichtungen gekennzeichnet sind durch:
einen freilaufenden Zähler (19) in jeder der Netzwerkschnittstellen, die ein Zählen von Zeitintervallen durchführen;
Festhaltevorrichtungen (21) in jeder der Netzwerkschnittstellen zum Speichern des Zählwerts;
Vorrichtungen in jeder der Netzwerkschnittstellen (15), die den Zählwert des freilaufenden Zählers (19) in der Festhaltevorrichtung (21) bei Erhalt des Zeitgebersignals festhalten;
Vorrichtungen (39–45) in der Zeitgeberstation, die anschließend über das Datenkommunikationsnetzwerk an alle Stationen ein Zeitgeber-Tageszeitsignal...

Description

  • Diese Erfindung bezieht sich auf die Synchronisation von Tageszeituhren, die es in jeder Station eines verteilten Verarbeitungsnetzwerksystems gibt, und insbesondere auf ein solches System, in dem es beträchtliche Zeitverzögerungen gibt, die sich dynamisch ändern können. Die Erfindung bezieht sich weiterhin darauf, eine Tageszeituhr mit höherer Auflösung als in den Tageszeituhren verfügbar ist, die typischerweise in den Stationsprozessoren gefunden werden, zur Verfügung zu stellen.
  • In einem verteilten Verarbeitungssystem und insbesondere in einem verteilten Steuerungssystem ist eine der schwierigeren Aufgaben das Aufrechterhalten einer verteilten, synchronen Tageszeituhr. Die Uhr bildet den Zeitstandard, der in allen Stationen erforderlich ist, um das Planen von verteilten Aufgaben zu erlauben und das Auftreten verschiedener Ereignisse (für Ereignisfolgen, die in dem Netzwerk ablaufen) zu markieren. Die Steuerungsbedingungen in einem typischen, heutigen Steuerungssystem erfordem, daß die Abweichung zwischen zwei Stationen im schlimmsten Fall geringer als 200 Mikrosekunden sind. Daher muß die Auflösung jeder Uhr 100 Mikrosekunden sein, und die Genauigkeit jeder Uhr muß plus/minus 100 Mikrosekunden sein.
  • Die einfachste Lösung ist, eine Station zu haben, die periodisch eine Nachricht überträgt, die die korrekte Tageszeit enthält. Bei Erhalt der Nachricht würden alle Stationen ihre Uhren auf den in der Nachricht spezifizierten Wert einstellen. Unglücklicherweise gibt es viele beträchtliche und variable Verzögerungen zwischen der Zeit, wenn die Nachricht erzeugt wird, und der Zeit, wenn die Uhren in den entfernten Stationen eingestellt werden. Diese Verzögerungen umfassen: die Verarbeitungszeit in dem sendenden Computer, Warteschlangenverzögerungen für die Übertragung, die Verarbeitungszeit in der Quellennetzwerkschnittstelle, Verzögerungen für den Zugriff auf die Medien, die Übertragungszeit, Medienübertragungsverzögerungen, Stationsrepeaterverzögerungen, die Verarbeitungszeit in der Bestimmungsnetzwerkschnittstelle, Warteschlangenverzögerungen im Bestimmungscomputer und Softwareverarbeitungsverzögerungen. Diese Verzögerungen und ihre Veränderlichkeit verhindern eine Synchronisation mit der gewünschten Genauigkeit.
  • Die obige Analyse setzt die Verwendung einer Tageszeituhr voraus, die durch das Betriebssystem in einem Prozessor in jeder Station aufrecht erhalten wird. Die Effekte vieler der beschriebenen Verzögerungen können durch Hinzufügen spezieller Hardware zu den Netzwerkschnittstellen sowohl bei den Sende- als auch bei den Empfangsstationen beseitigt werden. Insbesondere würde die Hardware der Sendestation die lokale Tageszeituhr im Augenblick des Sendens lesen und den Wert in die Nachricht einsetzen. Dies würde den Fehler beseitigen, der durch die folgenden Verzögerungen verursacht wird: die Verarbeitungszeit in dem Sendecomputer, Warteschlangenverzögerungen für das Warten auf die Sendung, die Verarbeitungszeit in der Quellennetzwerkschnittstelle und die Verzögerungen für das Warten auf den Zugriff auf die Medien. Die Hardware in der Empfangsstation würde die Zeitnachricht feststellen, die Tageszeit extrahieren und die lokale Tageszeit einstellen. Dies würde den durch folgendes erzeugten Fehler beseitigen: die Verarbeitungszeit in der Bestimmungsnetzwerkschnittstelle, Warteschlangenverzögerungen im Bestimmungscomputer und Softwareverarbeitungsverzögerungen. Die einzig verbleibenden Fehler sind mit der Übertragungszeit, den Medienübertragungsverzögerungen und den Stationsrepeaterverzögerungen verbunden. Unglücklicherweise ist die spezielle Hardware zum Durchführen der obigen Funktionen ziemlich komplex. Da jede Station in der Lage sein muß, die Zeitgeberfunktion durchzuführen, müßten alle Stationen die beiden speziellen Hardwareteile haben.
  • Das US-Patent 4,815,110 schlägt ein anderes System zur Synchronisation von Tageszeituhren in einem verteilten Verarbeitungssystem vor. Der Zeitsynchronisationsprozeß ist in zwei Phasen unterteilt. Während der ersten Phase überträgt die Zeitgeberstation eine spezielle Nachricht auf das Netzwerk. Zu dem Zeitpunkt, zu dem die Nachricht empfangen wird, hält die Hardware in jeder Station (also speichert) den Wert ihrer lokalen Tageszeituhr. Während der zweiten Phase überträgt die Zeitgeberstation eine Nachricht, die den Wert ihrer Tageszeituhr enthält, der gespeichert wurde, als sie ihre eigene Nachricht während der Phase Eins erhielt. Wenn die Tageszeit des Zeitgebers von jeder anderen Station empfangen worden ist, wird der empfangene Wert von dem gespeicherten Wert subtrahiert. Der resultierende Wert stellt die Differenz zwischen der lokalen Uhr und der Uhr der Zeitgeberstation dar. Die für diesen Prozeß erforderliche Hardware ist viel einfacher als die oben diskutierte, und der Übertragungszeitfehler wird eliminiert. Die erforderliche Hardware umfaßt nur einen Hardwarezähler, der zum Darstellen der lokalen Tageszeit erforderlich ist, und Schaltkreise zum Erkennen der Zeitnachricht während der Phase Eins. Jedoch muß der Zähler folgende Operationen unterstützen: Lesen, Setzen und Speichern. Zusätzlich muß der Wert in dem Zähler die absolute Zeit darstellen.
  • In einem ähnlichen, vom Anmelder der vorliegenden Erfindung entwickelten System sendet eine einzige Masterstation die spezielle Zeitnachricht in Phase Eins an alle Stationen, und in Phase Zwei senden drei Stationen, die Masterstation und zwei zusätzliche Stationen, die Zeiten, zu denen sie die spezielle Zeitnachricht erhalten haben, an alle Stationen. Jede Station bildet dann den Mittelwert der beiden am dichtesten liegenden, empfangenen Tageszeitsignale und führt die Korrektur mit diesem Mittelwert durch.
  • In einigen Netzwerken, wie etwa dem gegenläufigen FDDI-(Faserverteilungs-Datenschnittstelle) Ringnetzwerk, werden Nachrichten durch Repeater in den Netzwerkschnittstellen jeder Station in dem Ring von Station zu Station übertragen. Diese Repeaterfunktion führt zu einer Zeitverzögerung von zum Beispiel 750 Nanosekunden. Zusätzlich führt das Kommunikationsmedium, das die Stationen verbindet, zu zusätzlichen Verzögerungen. Weiterhin kann das FDDI-Netzwerk die Netzwerktopographie durch Auswahl von Faserabschnitten im Uhrzeigersinn oder gegen den Uhrzeigersinn zwischen den Stationen umgestalten, um Ausfälle zu kompensieren. Diese Änderungen in der Topographie beeinflussen die von einer oder mehreren Stationen in dem Netzwerk erfahrene Verzögerung.
  • Ein weiteres Problem ist, daß viele der heutigen Arbeitsstationen Betriebssystem-Tageszeituhren besitzen, die nicht die Auflösung besitzen, die erforderlich ist, um die Anforderungen von verteilten Verarbeitungssystemanwendungen zu erfüllen.
  • Weiterer Stand der Technik zu dieser Thematik findet sich in:
    • US 4,939,753 ;
    • RAMANATHAN, P.; KANDLUR, D.D.; SHIN, K.G.: Hardware-assisted software clock synchronization for homogeneous distrbuted systems; IEEE Transactions on Computers, Volume 39, Issue 4, April 1990, Page(s): 514–524;
    • RAMANATHAN, P.; SHIN, K.G.; BUTLER, R.W.: Faulttolerant clock synchronization in distributed systems; Computer Volume 23, Issue 10, Oct. 1990, Page(s): 33–42;
    • ROM, R.; SHACHAM, N.; A reconfiguration algorithm for a double-loop token ring local area network; IEEE Transactions on Computers, Volume 37, Issue 2, Feb. 1988, Page(s): 182–189;
  • Keine der bekannten Lösungen beinhaltet eine einfach realisierte Möglichkeit, die Zeitverzögerungen zu berücksichtigen und zu kompensieren, die durch die interne Verarbeitung der Signale in den einzelnen Stationen entstehen.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine verbesserte Vorrichtung zur Synchronisation von Stations-Tageszeituhren in einem verteilten Verarbeitungssystem zur Verfügung zu stellen.
  • Es ist eine weitere Aufgabe der Erfindung, diese Hauptaufgabe mit einem Minimum an spezialisierter Hardware zu lösen.
  • Es ist eine zusätzliche Aufgabe der Erfindung, die vorstehenden Aufgaben unter Verwendung der Betriebssystem-Tageszeituhr jeder Station zu lösen und dies auch dann zu tun, wenn die Betriebssystem-Tageszeituhr nicht die von dem Netzwerksystem geforderte Auslösung besitzt.
  • Es ist auch eine Aufgabe der vorliegenden Erfindung, eine solche verbesserte Vorrichtung zur Synchronisation von Tageszeituhren zur Verfügung zu stellen, die Netzwerkverzögerungen und dynamische Änderungen in den Netzwerkverzögerungen, wie sie bei Änderungen in der Netzwerktopographie auftreten, berücksichtigen.
  • Diese und weitere Aufgaben werden durch die in den beigefügten Patentansprüchen definierte Erfindung gelöst. Bevorzugte Weiterbildungen sind in den Unteransprüchen angegeben.
  • Jede der Stationen berücksichtigt bei der Berechnung der Stations-Referenzzeit Verzögerungen, die sowohl von der Repeaterfunktion der Netzwerkschnittstellen und den Kommunikationsmedienverzögerungen erzeugt werden. Diese Berechnungen berücksichtigen auch Änderungen in den kumulativen Verzögerungen, die aus Änderungen in der Netzwerktopographie herrühren.
  • Die Erfindung stellt außerdem eine verbesserte Auflösung in dem Tageszeit-Zeitwert einer Station zur Verfügung, wenn die Tageszeituhr des Betriebssystems der Station nicht die von der Anwendung erforderte Auflösung besitzt. Die Tageszeituhren des Betriebssystems der Stationen besitzen einen Softwarezähler, der durch einen Zeitinterrupt indexiert ist.
  • Entsprechend der Erfindung multipliziert die Lesevorrichtung der augenblicklichen Zeit die Tageszeit in diesem Softwarezähler mit dem Verhältnis der Auflösung des freilaufenden Zählers in der Netzwerkschnittstelle zur Softwarezählerauflösung zum Erzeugen eines hochaufgelösten Produkts. Die Änderung im Zählwert in dem freilaufenden Zähler, die seit dem letzten Zeitinterrupt erzeugt wurde, wird zu diesem Produkt addiert, um die hochaufgelöste, augenblickliche Tageszeit zu erhalten. In einem Ausführungsbeispiel dieses Gesichtspunkts der Erfindung besitzt der freilaufenden Zähler einen Modulus gleich einer Zeiteinheit in dem Softwarezähler, und der Zeitinterrupt wird jedesmal erzeugt, wenn der freilaufende Zähler überläuft, so daß die Änderung in dem Zählwert in dem freilaufenden Zähler seit dem letzten Interrupt nur der augenblickliche Zählwert ist.
  • Es ist eine Aufgabe der vorliegenden Erfindung, ein verteiltes Netzwerksystem zur Verfügung zu stellen, das allen Uhren in dem Netzwerk ermöglicht, sich selbst zu synchronisieren.
  • 1 ist ein schematisches Diagramm des verteilten Verarbeitungssystems, das die Erfindung umfaßt.
  • 2 ist ein schematisches Diagramm einer der Mehrzahl von Stationen, die einen Teil des Systems der 1 bilden.
  • Die 37 sind Flußdiagramme von geeigneten Computerprogrammen, die die Erfindung in dem verteilten Verarbeitungsnetzwerksystem der 1 und 2 implementieren.
  • Die Erfindung wird beschrieben in einer Anwendung in einem verteilten Datenverarbeitungsnetzwerksystem, das als ein FDDI- (verteiltes Faser-Datenaustausch-) Netzwerk implementiert ist, auch wenn für den Fachmann klar ist, daß die Erfindung auch in solchen Systemen angewendet werden kann, die als andere Netzwerktypen implementiert sind.
  • 1 zeigt ein verteiltes Verarbeitungsnetzwerksystem 1 mit einer Mehrzahl von Stationen 3a–d. Die vier Stationen des Systems 1 sind nur exemplarisch, und eine beliebige Anzahl von Stationen kann in dem System 1 umfaßt sein. Die Stationen 3a–d sind über ein Netzwerk 5 in einer doppelten Ringkonfiguration verbunden, wobei ein Ring 7 Nachrichten in Richtung gegen den Uhrzeigersinn und ein zweiter Ring 9 Nachrichten in Richtung des Uhrzeigersinns überträgt. In der bevorzugten Ausführungsform der Erfindung wird der FDDI-Netzwerkstandard verwendet. In einem solchen Netzwerk umfassen die beiden Ringe 7 und 9 optische Fasem als Kommunikationsmedien. In anderen Netzwerken könnten Koaxialkabel oder eine verdrillte Doppelleitung als Kommunikationsmedia verwendet werden. Das FDDI-Netzwerk besitzt eine offene Netzwerkarchitektur. Das FDDI-Netzwerk umfaßt einen Stationsmanagementstandard, der unter anderem die Konfiguration des Netzwerks kontrolliert. Unter normalen Bedingungen wird, wenn die Station 3 eine Nachricht sendet, die Nachricht von einem der Ringe zu jeder Station der Reihe nach transportiert, die dann die Nachricht für die nächste Station wiederholt. Wenn also der innere Ring 7 verwendet wird und die Station 3a eine Nachricht sendet, erhält die Station 3d die Nachricht und wiederholt sie für Station 3c, die ihrerseits die Nachricht für Station 3b wiederholt. Wenn Station 3a von dem System entfernt wird oder ein Fehler in dem Ring auftritt, wie bei 11 in 1 gezeigt, rekonfiguriert das Stationsmanagement das Netzwerk, um sicherzustellen, daß alle verbliebenen, aktiven Stationen gesendete Nachrichten empfangen. Also wird mit der Unterbrechung in dem Ring bei 11, wenn die von der Station 3a herrührende Nachricht die Station 3c erreicht, die Übertragung auf dem äußeren Ring über die Stationen 3d und 3a zur Station 3b zurückgeführt.
  • Die durch jede der Stationen beim Weiterleiten von empfangenen Nachrichten durchgeführte Wiederholungsfunktion erfordert eine endliche Zeit, zum Beispiel 750 Nanosekunden in dem exemplarischen System. Zusätzlich werden Verzögerungen eingeführt durch die Kommunikationsmedien, die die Ringe 7 und 9 bilden. Bei optischen Fasermedien beträgt diese Verzögerung typischerweise 5 bis 6 Mikrosekunden pro Kilometer. In einem verteilten Verarbeitungssystem, das sich über einige Kilometer erstreckt, können die addierten Verzögerungen beträchtlich sein, insbesondere in dem oben dargestellten Fall, bei dem die Nachricht über Stationen zurückgeführt wird, die die Nachricht zweimal wiederholen.
  • Die Stationen 3 in einem verteilten Steuerungssystem können verteilte Verarbeitungseinheiten und Arbeitsstationen 13 umfassen, die durch eine Netzwerkschnittstelle 15, wie in 2 gezeigt, mit den Ringen 7 und 9 des Netzwerks 5 verbunden sind. Die verteilten Verarbeitungseinheiten und die Arbeitsstationen 13 umfassen alle einen Mikroprozessor 17. Die verteilten Verarbeitungsstationen führen die Steuerungsfunktionen des Systems 1 durch. Typischerweise umfaßt dies die Regulierung einer speziellen Systemvariablen auf einen eingestellten Punktwert. Die Arbeitsstationen dienen als Mensch-Maschine-Schnittstellen, durch die ein Operateur das verteilte Verarbeitungssystem 1 bedient und überwacht. Die Koordination der Funktionen der verschiedenen Stationen des Systems 1 erfordem den Austausch von Echtzeitdaten. Der FDDI-Standard erlaubt synchrone und asynchrone Modi für die Übertragung von Daten. Der synchrone Modus wird zur Übertragung der Echtzeitdaten durch die periodische Wiederholung der augenblicklichen Werte von verschiedenen Parametern in dem System verwendet. Wie zuvor erwähnt, erfordert dies die Synchronisierung der Tageszeituhren, die sich in den Prozessoren 17 in jeder Station befinden. Die Steuerungsbedingungen in einem typischen, heutigen Steuerungssystem erfordern im schlechtesten Fall eine Abweichung von weniger als 200 Mikrosekunden zwischen den Stationsuhren.
  • Die vorliegende Erfindung erreicht die Synchronisation zwischen den Stationsuhren mit der erforderlichen Genauigkeit, indem in jeder Netzwerkschnittstelle ein freilaufender Zähler 19 mit einem Speicher 21 zur Verfügung gestellt wird. Der freilaufende Zähler stellt nicht die absolute Zeit dar und muß daher niemals zurückgesetzt werden. Der Zähler sollte tief genug sein, so daß er nicht zu oft überläuft, und die Software muß in der Lage sein, solche Überläufe zu handhaben.
  • Entsprechend der Erfindung ist eine der Stationen als Zeitgeberstation ausgezeichnet. Diese Station überträgt periodisch ein Zeitgebersignal über das Netzwerk 5 zu jeder der anderen Stationen. Zu dem Zeitpunkt, an dem dieses Zeitgebersignal empfangen wird, wird der Zählwert des freilaufenden Zählers 19 in dem Speicher 21 gespeichert. Die Zeitgeberstation sendet dann eine Zeitgeber-Tageszeitnachricht, die die Tageszeit des Zeitpunkts darstellt, an dem sie die Zeitgebernachricht erhalten hat. Dieser Zeitgeber-Tageszeitwert muß berechnet werden, da der freilaufende Zähler nicht die absolute Zeit darstellt. Dies wird durchgeführt durch Lesen der Tageszeituhr des Betriebssystems in dem Prozessor 17 und des freilaufenden Zählers 19. Typischerweise besitzt der Prozessor 17 einen Interruptgenerator 18, der periodisch Interrupts erzeugt, die verwendet werden, um die Tageszeituhr des Betriebssystems zu inkrementieren. Die Differenz zwischen dem augenblicklichen Wert des freilaufenden Zählers 19 und dem in dem Speicher 21 zum Zeitpunkt des Empfangs des Zeitgebersignals gespeicherten Wert wird mit der Periode der Zählwerte, die von dem freilaufenden Zähler aufgezeichnet werden, multipliziert. Der resultierende Wert ist der Zeitbetrag, der verstrichen ist, seit das Zeitgebersignal von der Zeitgeberstation empfangen worden ist. Das Ergebnis ist die Tageszeit zu dem Augenblick, in dem das Zeitgebersignal von der Zeitgeberstation empfangen wurde. Dieser Wert wird in die Tageszeitnachricht des Zeitgebers eingefügt und über das Netzwerk 5 an die anderen Stationen gesendet.
  • Wenn das Tageszeitsignal des Zeitgebers von den anderen Stationen 3 empfangen wird, berechnen die Stationen zunächst einen Referenzwert für ihre Tageszeituhren. Sie benutzen dieselbe Berechnung wie die Zeitgeberstation zuvor. Die empfangene Zeitgebertageszeit wird dann von der berechneten Stations-Referenztageszeit subtrahiert. Der resultierende Wert stellt die Differenz zwischen der lokalen Uhr und der Uhr der Zeitgeberstation dar und wird zur Korrektur der lokalen Tageszeituhr verwendet. Diese Korrektur kann durch Einstellen der Betriebssystemuhr, durch schrittweises Einstellen derselben oder durch Speichern des lokalen Korrekturterms, der zu dem lokalen Zeitwert addiert oder von diesem subtrahiert wird, wenn ein genauer Wert erforderlich ist, durchgeführt werden.
  • Die bis hierhin beschriebene Synchronisationsprozedur berücksichtigt keine Verzögerungen durch das Weiterreichen des Zeitgebersignals in dem Netzwerk. Der Betrag des resultierenden Fehlers hängt von der Art des verwendeten Netzwerkes ab. Wie oben diskutiert, sind in einem Ringnetzwerk, wie in dem beispielhaften FDDI-Netzwerk, die beiden Hauptbeiträge zu der Verzögerung die Stationsverzögerung bei der Wiederholung der Nachricht in jedem Knoten (bis zu 750 Nanosekunden pro Station) und die Signalausbreitungsverzögerung in den Medien (ungefähr 5 Mikrosekunden pro Kilometern für optische Fasern). Die Software, die die Zeitsynchronisationsfunktion durchführt, muß den von der Zeitgeberstation empfangenen Zeitwert korrigieren, um die Übertragungsverzögerung zwischen der lokalen Station und der Zeitgeberstation zu kompensieren. Diese Kompensation basiert auf den bekannten Kabellängen und der augenblicklichen Netzwerkkonfiguration. Die Zeitsynchronisation muß zeitweilig unterbrochen werden, wenn sich das Netzwerk rekonfiguriert. Die Zeitsynchronisation wird wieder aufgenommen, wenn die Topologie des Netzwerkes festgelegt worden ist. Wie oben erwähnt, bestimmt das Stationsmanagement des FDDI-Netzwerkes die augenblickliche Topologie des Netzwerkes.
  • Wenn die Zeitgeberstation versagt oder von dem Netzwerk entfernt wird, muß eine andere Station die Funktion übernehmen. Dies wird erreicht, indem jeder Station ein eindeutiges Zeitintervall zugewiesen wird. Wenn die Station das Zeitgebersignal nicht innerhalb dieses Zeitintervalls empfängt, wird sie die Zeitgeberstation und überträgt das Zeitgebersignal. Die verschiedenen Stationen nehmen die Zeitgeberfunktion sequentiell basierend auf den zugewiesenen, eindeutigen Zeitgeberintervallen an.
  • Die 3-5 zeigen Flußdiagramme für drei Routinen, die die Synchronisation der Tageszeituhren des Netzwerks unter Verwendung des freilaufenden Zählers implementieren. 3 zeigt das Flußdiagramm für eine TX_GLOCK_MESSAGE-Routine, die von der Zeitgeberstation verwendet wird, um das Zeitgebersignal periodisch zu senden. Die Routine 23 beginnt mit dem Einstellen eines Aufweckalarms für das nächste Intervall bei 25. Sie erzeugt dann bei 27 eine Zeitnachricht, die das Zeitgebersignal umfaßt, wie oben diskutiert. Die Nachricht wird dann bei 29 in eine Übertragungsschlange eingereiht, und dann wartet die Routine bei 31 auf den nächsten Alarm.
  • 4 zeigt eine RX_CLOCK_MESSAGE-Routine, die bei Empfang des Zeitgebersignals abläuft. Während es zu einem gegebenen Zeitpunkt nur eine Zeitgeberstation gibt, wird die Routine von allen Stationen durchgeführt, da jede Station die Zeitgeberfunktion annehmen kann. Die Routine beginnt bei 35 mit der Feststellung, ob die Station die augenblickliche Zeitgeberstation ist. Falls nicht, wird die Routine bei 37 beendet. Wenn es sich um die Zeitgeberstation handelt, liest sie bei 29 den augenblicklichen Zählwert des freilaufenden Zählers, die augenblickliche Zeit der Tageszeituhr des Betriebssystems des Stationsprozessors und den in dem Speicher 21 gespeicherten Zählwert ein.
  • Wenn der augenblickliche Zählwert in dem freilaufenden Zähler größer ist als der gespeicherte Zählwert, wird die Empfangszeit des Zeitgebersignals durch Subtraktion der Differenz zwischen dem augenblicklichen Zählwert in dem freilaufenden Zähler und dem gespeicherten Zählwert multipliziert mit der Periode des freilaufenden Zählers von der augenblicklichen Tageszeit in der Tageszeituhr berechnet. Wenn jedoch der augenblickliche Zählwert in dem freilaufenden Zähler kleiner als der gespeicherte Wert ist, was anzeigt, daß der Zähler übergelaufen ist, wird die Empfangszeit bei 41 durch Subtraktion des gespeicherten Zählwerts von dem maximalen Zählwert des freilaufenden Zählers und durch Multiplikation mit der Periode des freilaufenden Zählers berech net. Der resultierte Wert wird dann von dem Tageszeitwert des augenblicklichen Betriebssystems subtrahiert. Die Zeitgeberstation erzeugt dann bei 43 eine Zeitgeber-Tageszeitnachricht, die das Zeitgebertageszeitsignal enthält. Diese Tageszeitnachricht wird bei 45 in eine Sendeschlange eingereiht, und das Alarmintervall für die Routine wird bei 47 zurückgesetzt, bevor die Routine bei 49 beendet wird.
  • 5 zeigt eine RX_TIME_OF_DAY_Routine, die von jeder Station bei Erhalt der Tageszeitnachricht, die die Tageszeit des Zeitgebers enthält, durchgeführt wird. Die Routine beginnt bei 53 mit dem Lesen der augenblicklichen Werte des freilaufenden Zählers und der Tageszeit des Betriebssystems und auch des gespeicherten Zählwerts. Dann wird bei 55 unter Verwendung derselben Berechnungen wie in Block 43 der in 4 gezeigten Routine eine Empfangszeit berechnet. Die Netzwerkverzögerung von dieser Station zur Zeitgeberstation wird dann bei 57 basierend auf der Netzwerktopologie berechnet. Das heißt, das die Repeaterverzögerung für jede der Zwischenstationen zur Gesamtverzögerung für die Länge der Kommunikationsmedien zwischen der Zeitgeberstation und der lokalen Station für den von der Nachricht genommenen Weg addiert wird. Dann wird bei 59 eine Einstellung berechnet, indem zunächst die Netzwerksverzögerung von der Zeitgeberzeit subtrahiert wird und dann die in 55 berechnete Empfangszeit subtrahiert wird. Diese Einstellung wird dann bei 61 verwendet, um die lokale Tageszeituhr einzustellen, bevor die Routine bei 63 beendet wird.
  • Typische Betriebssystemuhren besitzen eine Auflösung von ± 10 Millisekunden. Wie oben diskutiert, ist das für die meisten Zeitsynchronisationsanforderungen nicht angemessen. Entsprechend einem weiteren Gesichtspunkt der Erfindung ist der freilaufende Zähler 19 in der Netzwerkschnittstelle einer Station mit der Betriebssystemuhr in dem Stationsprozessor verbunden, um eine hochauflösende Tageszeituhr zu bilden. Typischerweise verfolgt das Betriebssystem in den Prozessoren 17 die Tageszeit mittels eines periodischen Interrupts. Dieser Interrupt wird von der Hardware erzeugt. Wenn dieser Interrupt auftritt, inkrementiert das Betriebssystem typischerweise einen Softwarezähler. Der Zähler mißt die seit einem festen Zeitpunkt verstrichene Zeit. Die mit dem Zähler verbundenen Einheiten entsprechen üblicherweise der Auflösung der Tageszeituhr, z.☐B. 10☐Millisekunden. Entsprechend einem Ausführungsbeispiel dieses Gesichtspunkts der Erfindung ist der freilaufende Zähler 19 der Netzwerkschnittstelle so ausgeführt, daß er einen Modulus, also einen maximalen Zeitwert gleich der gewünschten Interruptrate besitzt. Der Überlauf des freilaufenden Zählers wird dann verwendet, um den Interrupt für die Tageszeituhr für das Betriebssystem zur Verfügung zu stellen. Eine hochauflösende Zählung, die die seit einem festen Zeitpunkt verstrichene Zeit angibt, wird dann durch Multiplikation des Zählwertes in dem Softwarezähler mit dem Verhältnis der Hardwareauflösung zur Softwareauflösung und anschließender Addition des Wertes des freilaufenden Zählers berechnet. Dieser hochaufgelöste Tageszeitwert kann dann anstelle des Tageszeitwerts des Betriebssystems in den zuvor beschriebenen Synchronisationsprozeduren verwendet werden. Es sollte festgestellt werden, daß die Zeitkorrektur am ehesten durch Speichern eines Korrekturterms erreicht würde, da der freilaufende Zähler nicht einstellbar ist.
  • In einem weiteren Ausführungsbeispiel dieses Gesichtspunkts der Erfindung erzeugt die Tageszeituhr des Betriebssystems die Zeitinterrupts wie üblich. Jedoch ist die Interruptserviceroutine so modifiziert, daß sie den Wert des freilaufenden Zählers zum Zeitpunkt des Tageszeitinterrupts liest und speichert. Die hochauflösende Zählung, die die verstrichene Zeit nach einem festen Zeitpunkt angibt, wird dann durch Multiplikation des Zählwerts im Softwarezähler mit dem Verhältnis der Hardwareauflösung zur Softwareauflösung und anschließender Addition der Differenz zwischen dem augenblicklichen Wert des freilaufenden Zählers und dem zu dem Zeitpunkt des Auftretens des Tageszeitinterrupts gespeicherten Wert berechnet. Wie bei der Zeitsynchronisation oben beschrieben, muß die Differenzberechnung in der Lage sein, ein Überlaufen des Zählers zu bearbeiten.
  • 6 zeigt ein Flußdiagramm für ein Computerprogramm 5, das von den Prozessoren 17 in den Stationen 3 ausgeführt wird und das hochaufgelöste Tageszeitsignal erzeugt. Bei ihrem Aufruf bei 67 liest die Routine bei 69 die Software-Tageszeituhr und den Zählwert des Zählers 69. Die hochaufgelöste Tageszeit wird dann bei 71 entsprechend der ersten Formel berechnet, wenn der Zähler 19 nicht übergelaufen ist, und wird entsprechend der zweiten Formel berechnet, wenn der Zähler übergelaufen ist. Die Routine wird dann bei 73 beendet.
  • 7 zeigt ein Flußdiagramm für die von dem Prozessor 17 in Abhängigkeit von jedem Zeitinterrupt durchgeführte Routine 75. Die Routine speichert den Wert des freilaufenden Zählers 19 als das COUNT_AT_IRQ-Signal, das in der Routine 65 verwendet wird.
  • Während spezifische Ausführungsformen im Detail beschrieben wurden, ist für den Fachmann klar, daß verschiedene Modifikationen und Änderungen an diesen Details im Lichte der Gesamtlehre der Offenbarung durchgeführt werden können. Demzufolge sollen die speziellen offengelegten Anordnungen nur illustrativ und nicht für den Schutzumfang der Erfindung einschränkend sein. Dieser soll den beigefügten Patentansprüchen und allen Äquivalenten derselben entsprechen.

Claims (13)

  1. Verteiltes Verarbeitungssystem (1) mit: einer Mehrzahl von Stationen (3), die jeweils einen Stationsprozessor (17) mit einem Betriebssystem, das eine Stations-Tageszeituhr aufweist, und eine Netzwerkschnittstelle (15) besitzen; einem Datenkommunikationsnetzwerk (5), das die Mehrzahl von Stationen (3) über die Netzwerkschnittstellen (15) verbindet; und Synchronisationsvorrichtungen zum Synchronisieren der Stations-Tageszeituhren in den Stationsprozessoren; Vorrichtungen (23) innerhalb einer vorgegebenen Zeitgeberstation, die periodisch ein Zeitgebersignal erzeugen, das über das Datenkommunikationsnetzwerk (5) an alle Stationen (3) einschließlich der Zeitgeberstation gesandt wird; wobei die Synchronisationsvorrichtungen gekennzeichnet sind durch: einen freilaufenden Zähler (19) in jeder der Netzwerkschnittstellen, die ein Zählen von Zeitintervallen durchführen; Festhaltevorrichtungen (21) in jeder der Netzwerkschnittstellen zum Speichern des Zählwerts; Vorrichtungen in jeder der Netzwerkschnittstellen (15), die den Zählwert des freilaufenden Zählers (19) in der Festhaltevorrichtung (21) bei Erhalt des Zeitgebersignals festhalten; Vorrichtungen (3945) in der Zeitgeberstation, die anschließend über das Datenkommunikationsnetzwerk an alle Stationen ein Zeitgeber-Tageszeitsignal senden, welches die Tageszeit der Zeitgeberstation angibt, wann das Zeitgebersignal empfangen wurde; Vorrichtungen (5357) in den Stationen außer der Zeitgeberstation, die eine Stations-Referenztageszeit aus dem festgehaltenen Zählwert des freilaufenden Zählers (19), dem Zählwert des freilaufenden Zählers zum Zeitpunkt des Erhalts des Tageszeitsignals des Zeitgebers und der Tageszeit in der Betriebssystem-Tageszeituhr zum Zeitpunkt des Erhalts des Tageszeitsignals des Zeitgebers bestimmen; und durch Vorrichtungen (5961) in jeder Station, die die Differenz zwischen der Stations-Referenztageszeit und der empfangenen Zeitgeber-Tageszeit bestimmen und die Tageszeituhr in dem Betriebssystem auf der Basis der Differenz einstellen.
  2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Zeitgeberstation Vorrichtungen (41) zum Erzeugen des Zeitgeber-Tageszeitsignals aus dem in den Festhaltevorrichtungen (21) ihrer Netzwerkschnittstelle (15) gespeicherten Zählwert bei Erhalt des Zeitgebersignals, einem augenblicklichen Zählwert des freilaufenden Zählers (19) und einer augenblicklichen Tageszeit der Tageszeituhr des Betriebssystems umfaßt.
  3. System nach Anspruch 1, dadurch gekennzeichnet, daß eine zweite Station (3) die Zeitgeberstation wird und Vorrichtungen (23, 3945) zum Erzeugen und Übertragen des Zeitgebersignals und des Zeitgeber-Tageszeitsignals umfaßt, wenn ein Zeitgebersignal nicht innerhalb eines vorgegebenen Zeitintervalls empfangen wird.
  4. System nach Anspruch 1, dadurch gekennzeichnet, daß eine andere von verschiedenen Stationen (3) die Zeitgeberstation wird und Vorrichtungen (23, 3945) zum Erzeugen und Übertragen des Zeitgebersignals und des Zeitgeber-Tageszeitsignals umfaßt, wenn ein Zeitgebersignal nicht innerhalb einer vorgegebenen Sequenz von Zeitintervallen jeweils von den verschiedenen Stationen empfangen wird.
  5. System nach Anspruch 1, dadurch gekennzeichnet, daß die Vorrichtungen (5359) zum Bestimmen der Stations-Referenztageszeit Vorrichtungen (5759) zum Einstellen der Stations-Referenztageszeit auf Verzögerungen bei der Übertragung des Zeitgebersignals von der Zeitgeberstation zu dieser Station umfassen.
  6. System nach Anspruch 1, dadurch gekennzeichnet, daß das Datenkommunikationsnetzwerk (5) die Stationen (3) in einer gegenläufigen Ringkonfiguration verbindet, wobei die Netzwerkschnittstellen (15) das Zeitgebersignal und die Zeitgeber-Tageszeitsignale in den Ring mit einer vorgegebe nen Zeitverzögerung weitergeben, und daß die Vorrichtungen (5357) zum Bestimmen der Stations-Referenztageszeit die vorgegebene Zeitverzögerung für alle Netzwerkkontroller zwischen der Station und der Zeitgeberstation berücksichtigen.
  7. System nach Anspruch 6, dadurch gekennzeichnet, daß die gegenläufige Ringkonfiguration des Datenkommunikationsnetzwerks (5) Längen von Kommunikationsmedien (7, 9) zwischen Stationen besitzt, die bekannte Zeitverzögerungen bei der Übertragung des Zeitgebersignals und des Zeitgeber-Tageszeitsignals erzeugen, und daß die Vorrichtungen (5357) zum Bestimmen der Stations-Referenzsignals die vorgegebene Zeitverzögerung für die Längen der Kommunikationsmedien (7, 9) zwischen den Stationen (3) bei der Bestimmung der Stations-Referenztageszeit berücksichtigen.
  8. System nach Anspruch 7, dadurch gekennzeichnet, daß es Vorrichtungen zum Ändern der gegenläufigen Ringkonfiguration des Datenkommunikationsnetzwerks besitzt und daß die Vorrichtungen (5357) zum Bestimmen des Stations-Referenzsignals Änderungen der Anzahl der Netzwerkschnittstellen (15) und der Längen der Kommunikationsmedien (7, 9) zwischen den Stationen bei der Bestimmung der Stations-Referenztageszeit berücksichtigen.
  9. System nach Anspruch 1, dadurch gekennzeichnet, daß die von wenigstens einem Stationsprozessor (17) gehaltene Tageszeituhr einen Softwarezähler besitzt, der von einem Zeitinterrupt mit einer niedrigeren Auflösung als die Auflösung des freilaufenden Zählers (19) indiziert wird, und eine Lesevorrichtung für die augenblickliche Tageszeit umfaßt, die die Tageszeit des Softwarezählers mit dem Verhältnis der Auflösung des freilaufenden Zählers zur Auflösung des Softwarezählers multipliziert, um ein hochaufgelöstes Produkt zu bilden, und zu diesem Produkt eine Änderung im Zählwert des freilaufenden Zählers von dem letzten Zeitinterrupt addiert, um eine hochaufgelöste, augenblickliche Tageszeit zu erhalten.
  10. System nach Anspruch 9, dadurch gekennzeichnet, daß der freilaufende Zähler einen Modulus gleich einer Zeiteinheit in dem Softwarezähler besitzt und daß das System Vorrichtungen (19) zum Erzeugen des Zeitinterrupts zu jedem Zeitpunkt, zu dem der freilaufende Zähler überläuft, umfaßt und daß die Vorrichtungen zum Lesen der augenblicklichen Tageszeit den Zählwert des freilaufenden Zählers als die Änderung des Zählwerts von dem letzten Zeitinterrupt an zu dem Produkt addieren.
  11. System nach Anspruch 9, dadurch gekennzeichnet, daß sie Vorrichtungen zum Speichern eines ersten Zählwerts in dem freilaufenden Zähler, wenn der Softwarezähler von einem Zeitinterrupt indiziert wird, umfaßt und daß die Lesevorrichtungen für die augenblickliche Tageszeit die Änderung in dem Zählwert des freilaufenden Zählers durch Subtrahieren des ersten Zählwerts von einem augenblicklichen Zählwert bestimmen.
  12. Verteiltes Verarbeitungssystem (1) mit: einer Mehrzahl von Netzwerkstationen (3), die jeweils eine Stations-Tageszeituhr und eine Netzwerkschnittstelle (15) besitzen; einem Datenkommunikationsnetzwerk (5) mit einer gegenläufigen Ringkonfiguration (7, 9), das die Mehrzahl von Netzwerkstationen (3) über die Netzwerkschnittstellen (15) verbindet, die mit einer vorgegebenen Zeitverzögerung Daten auf dem Datenkommunikationsnetzwerk senden, empfangen und weitersenden; und Vorrichtungen (17, 19, 21) zum Synchronisieren der Tageszeituhren in den Netzwerkstationen; Vorrichtungen (23) in einer vorgegebenen Zeitgeberstation, die ein Zeitgebersignal über das Datenkommunikationsnetzwerk durch die Netzwerkschnittstellen (15) senden; gekennzeichnet durch, Vorrichtungen (19) in jeder der Stationen einschließlich der Zeitgeberstation, enthaltend einen freilaufenden Zähler (19), die ein Zählen von Zeitintervallen durchführen; die ein Stationssignal speichern, das mit dem Zeitpunkt, zu dem das Zeitgebersignal empfangen wurde, in Verbindung steht; Vorrichtungen (39, 45) in der Zeitgeberstation, die über das Datenkommunikationsnetzwerk (5) durch die Netzwerkschnittstellen (15) ein Zeitgeber-Tageszeitsignal senden, welches den Zeitpunkt angibt, zu dem die Zeitgeberstation das Zeitgebersignal empfangen hat; Vorrichtungen (57) zum Bestimmen einer Netzwerkverzögerung für den Erhalt des Zeitgebersignals, die auf der gegenläufigen Ringkonfiguration des Datenkommunikationsnetzwerks beruht, für jede Station; Vorrichtungen (55, 59) innerhalb jeder Station, die eine Differenz zwischen der Zeitgeber-Tageszeit und einer Station-Referenztageszeit, die aus dem Stationssignal und der Netzwerksverzögerung hergeleitet wird, berechnen; und Vorrichtungen (61) zum Einstellen der Stationstageszeit mit Hilfe dieser Differenz.
  13. System nach Anspruch 12, dadurch gekennzeichnet, daß sie Vorrichtungen (23) umfaßt, die Einstellungen in der gegenläufigen Ringkonfiguration des Datenkommunikationsnetzwerks durchführen, und daß die Vorrichtungen (57), die für jede Station eine Netzwerkverzögerung bestimmen, diese Einstellungen in der gegenläufigen Ringkonfiguration (7, 9) des Datenkommunikationsnetzwerks (5) berücksichtigen.
DE4320137A 1992-06-19 1993-06-17 Synchronisation von Tageszeituhren in einem verteilten Verarbeitungsnetzwerksystem Expired - Lifetime DE4320137B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/901,446 US5327468A (en) 1992-06-19 1992-06-19 Synchronization of time-of-day clocks in a distributed processing network system
US901446 1992-06-19

Publications (2)

Publication Number Publication Date
DE4320137A1 DE4320137A1 (de) 1993-12-23
DE4320137B4 true DE4320137B4 (de) 2007-04-05

Family

ID=25414209

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4320137A Expired - Lifetime DE4320137B4 (de) 1992-06-19 1993-06-17 Synchronisation von Tageszeituhren in einem verteilten Verarbeitungsnetzwerksystem

Country Status (7)

Country Link
US (1) US5327468A (de)
JP (1) JPH0652076A (de)
CN (1) CN1081301A (de)
DE (1) DE4320137B4 (de)
ES (1) ES2076090B1 (de)
GB (1) GB2267985B (de)
PL (1) PL171703B1 (de)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695986A (ja) * 1992-06-19 1994-04-08 Westinghouse Electric Corp <We> リアルタイムデータ・イメージングネットワークシステム及びその操作方法
US5689688A (en) * 1993-11-16 1997-11-18 International Business Machines Corporation Probabilistic anonymous clock synchronization method and apparatus for synchronizing a local time scale with a reference time scale
US5535217A (en) * 1994-12-20 1996-07-09 International Business Machines Corporation Method and apparatus for probabilistic clock synchronization with interval arithmetic
DE19503214C1 (de) * 1995-02-02 1996-10-02 Becker Gmbh Verfahren zur Initialisierung eines Netzwerks
US5701446A (en) * 1995-06-09 1997-12-23 International Business Machines Corporation Method for fine grain adjustments to system time in computer systems
US5694537A (en) * 1995-07-31 1997-12-02 Canon Information Systems, Inc. Network device which selects a time service provider
US5907685A (en) * 1995-08-04 1999-05-25 Microsoft Corporation System and method for synchronizing clocks in distributed computer nodes
US5617375A (en) * 1995-12-04 1997-04-01 Unisys Corporation Dayclock carry and compare tree
US5809540A (en) * 1995-12-04 1998-09-15 Unisys Corporation Processor command for prompting a storage controller to write a day clock value to specified memory location
JP3339786B2 (ja) * 1996-12-02 2002-10-28 オークマ株式会社 環状通信路におけるタイマー同期化装置および初期化方法
US6003091A (en) * 1997-04-08 1999-12-14 International Business Machines Corporation Verifying a time-of-day counter
US5925107A (en) * 1997-04-08 1999-07-20 International Business Machines Corporation Verifying a time-of-day counter
EP0971282B1 (de) * 1998-07-09 2006-03-22 Bull S.A. Mehrprozessorsystem mit synchronisierter Systemzeit
US6311283B1 (en) * 1998-09-17 2001-10-30 Apple Computer, Inc. Need based synchronization of computer system time clock to reduce loading on network server
US6023769A (en) * 1998-09-17 2000-02-08 Apple Computer, Inc. Method and apparatus for synchronizing an imprecise time clock maintained by a computer system
DE29819806U1 (de) 1998-11-05 2000-03-16 Siemens Ag Netzwerkteilnehmer
FR2785751A1 (fr) * 1998-11-05 2000-05-12 Thomson Multimedia Sa Procede de synchronisation d'une horloge locale d'un appareil sur l'horloge d'un reseau de communication sans fil et dispositif de synchronisation associe
DE29820339U1 (de) * 1998-11-13 2000-01-20 Siemens Ag Netzwerkteilnehmer
DE29820820U1 (de) * 1998-11-20 2000-02-10 Siemens Ag Netzwerkteilnehmer
US6389547B1 (en) * 1999-03-19 2002-05-14 Sony Corporation Method and apparatus to synchronize a bus bridge to a master clock
AU758059B2 (en) * 1999-05-04 2003-03-13 Two Way Media Limited Interactive applications
US6728880B1 (en) * 1999-09-17 2004-04-27 Adobe Systems Incorporated Secure time on computers with insecure clocks
WO2001022202A1 (en) * 1999-09-17 2001-03-29 Comuniq Asa Method for synchronizing clocks in electronic units connected to a multi processor data bus
US6801951B1 (en) * 1999-10-08 2004-10-05 Honeywell International Inc. System and method for fault-tolerant clock synchronization using interactive convergence
US7035269B2 (en) * 2000-02-02 2006-04-25 Mcgill University Method and apparatus for distributed synchronous clocking
US6618815B1 (en) * 2000-02-29 2003-09-09 International Business Machines Corporation Accurate distributed system time of day
US6760764B1 (en) * 2000-08-09 2004-07-06 Alcatel Canada Inc. Real time stamp distribution
US6744351B2 (en) * 2001-03-26 2004-06-01 Litech Electronic Products Limited Central radio device and associated appliance
US7080274B2 (en) * 2001-08-23 2006-07-18 Xerox Corporation System architecture and method for synchronization of real-time clocks in a document processing system
US8949468B2 (en) * 2001-09-21 2015-02-03 International Business Machines Corporation Method and system for time synchronization among systems using parallel sysplex links
DE10237097B4 (de) * 2002-08-13 2007-06-28 Rexroth Indramat Gmbh Korrektur von Signallaufzeiten in verteilten Kommunikationssystemen
CN1505299A (zh) * 2002-12-03 2004-06-16 深圳市中兴通讯股份有限公司上海第二 一种扩频通信系统
US7340630B2 (en) * 2003-08-08 2008-03-04 Hewlett-Packard Development Company, L.P. Multiprocessor system with interactive synchronization of local clocks
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7239581B2 (en) * 2004-08-24 2007-07-03 Symantec Operating Corporation Systems and methods for synchronizing the internal clocks of a plurality of processor modules
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7577806B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7577807B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7631120B2 (en) 2004-08-24 2009-12-08 Symantec Operating Corporation Methods and apparatus for optimally selecting a storage buffer for the storage of data
US8014378B1 (en) 2003-10-23 2011-09-06 Itt Manufacturing Enterprise, Inc. Method and apparatus for automatic control of time-of-day synchronization and merging of networks
JP4753344B2 (ja) * 2004-01-16 2011-08-24 欣司 森 分散コンピュータシステムの同期処理方法
US6989068B2 (en) * 2004-04-23 2006-01-24 Eastman Kodak Company Roller chain for applying pressure
DE102004050416A1 (de) * 2004-10-15 2006-04-27 Bosch Rexroth Ag Verfahren zur Synchronisation in einem redundanten Kommunikationssystem
US7487377B2 (en) * 2005-02-09 2009-02-03 International Business Machines Corporation Method and apparatus for fault tolerant time synchronization mechanism in a scaleable multi-processor computer
US7689207B2 (en) * 2005-10-17 2010-03-30 Harris Corporation Time of day synchronization and distribution within a multiprocessor embedded system and related methods
US8498629B2 (en) * 2005-10-18 2013-07-30 Harris Corporation Extensible human machine interface (HMI) plugin architecture for radio software system and related method
US7809410B2 (en) 2005-11-15 2010-10-05 Harris Corporation Power management system for SCA based software defined radio and related method
US7499724B2 (en) * 2006-01-30 2009-03-03 Harris Corporation Event sequencer used for controlling the sequence and timing of events in software defined radio
DE102006013640A1 (de) * 2006-03-22 2007-09-27 Robert Bosch Gmbh Verfahren und Datenübertragungssystem zur Übergabe von Daten zwischen dem Datenübertragungssystem und einem Host-Prozessor eines Teilnehmers eines Datenübertragungssystems
GB0616029D0 (en) * 2006-08-11 2006-09-20 Answerback Interactive Interactive electronic system and method for a plurality of users
US7451339B2 (en) * 2006-09-15 2008-11-11 International Business Machines Corporation Pulse-per-second attachment for STP
US7937076B2 (en) 2007-03-07 2011-05-03 Harris Corporation Software defined radio for loading waveform components at runtime in a software communications architecture (SCA) framework
US8687481B2 (en) * 2007-04-04 2014-04-01 Mitsubishi Electric Corporation Communication system, management apparatus, communication apparatus and computer program
CN101315543B (zh) * 2008-06-28 2010-06-16 黄更 一种网络化数字闹钟、远程控制方法及信号同步传输方法
JP5427840B2 (ja) * 2011-06-23 2014-02-26 株式会社日立製作所 伝送装置及び伝送網システム、伝送方法
JP5850143B2 (ja) * 2012-05-01 2016-02-03 富士電機株式会社 信号同期システム、マルチプロセッサ、及びノード同期システム
TW201411403A (zh) * 2012-06-18 2014-03-16 Ologn Technologies Ag 用於安全時間管理之系統、方法及裝置
US9232242B2 (en) * 2012-12-11 2016-01-05 Cbs Interactive, Inc. Techniques to broadcast a network television program
US9342094B2 (en) 2013-02-26 2016-05-17 Raytheon Company Multi-processor system and method for internal time synchronization and event scheduling of multiple processors
US9900855B2 (en) * 2015-12-08 2018-02-20 Mediatek Inc. Method and associated time manager for managing time relation between system times of different remote systems
CN116450278B (zh) * 2023-06-16 2023-09-26 深圳市微克科技有限公司 一种基于智能穿戴设备的日历更新方法、系统及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939753A (en) * 1989-02-24 1990-07-03 Rosemount Inc. Time synchronization of control networks

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4144414A (en) * 1978-01-23 1979-03-13 Rockwell International Corporation Network synchronization apparatus
US4411007A (en) * 1981-04-29 1983-10-18 The Manitoba Telephone System Distributed network synchronization system
JPS58111784A (ja) * 1981-12-25 1983-07-02 Nec Corp 時刻の遠隔較正方式
US4500989A (en) * 1982-08-02 1985-02-19 Dahod Ashraf M Digital communication system
US4709347A (en) * 1984-12-17 1987-11-24 Honeywell Inc. Method and apparatus for synchronizing the timing subsystems of the physical modules of a local area network
SE452231B (sv) * 1986-03-07 1987-11-16 Philips Norden Ab Forfarande for synkronisering av klockor ingaende i ett lokalt netverk av busstyp
US4736393A (en) * 1986-04-16 1988-04-05 American Telephone And Telegraph Co., At&T Information Systems, Inc. Distributed timing control for a distributed digital communication system
DE3751571T2 (de) * 1986-05-20 1996-04-11 Mitsubishi Electric Corp Verfahren zur Synchronisation der Echtzeituhren in einem Datenübertragungssystem.
JPH0797328B2 (ja) * 1988-10-25 1995-10-18 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン フオールト・トレラント同期システム
US5001730A (en) * 1989-03-31 1991-03-19 International Business Machines Corporation Clock synchronization algorithm for address independent networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939753A (en) * 1989-02-24 1990-07-03 Rosemount Inc. Time synchronization of control networks

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
IEEE Transactions on Computers, Volume 37, Issue 2, Feb. 1988, Page(s):182-189
RAMANATHAN, P.; KANDLUR, D.D.; SHIN, K.G.: Hardware-assisted software clock synchronization for homogeneous distributed systems IEEE Transactions on Computers, Volume 39, Issue 4,April 1990,Page(s):514-524 *
RAMANATHAN, P.; KANDLUR, D.D.; SHIN, K.G.: Hardware-assisted software clock synchronization for homogeneous distributed systems; IEEE Transac- tions on Computers, Volume 39, Issue 4,April 1990, Page(s):514-524
RAMANATHAN, P.; SHIN, K.G.; BUTLER, R.W.: Fault- tolerant clock synchronization in distributed systems; Computer Volume 23, Issue 10, Oct. 1990, Page(s):33-42
RAMANATHAN, P.; SHIN, K.G.; BUTLER, R.W.: Fault-tolerant clock synchronization in distributed systems Computer Volume 23, Issue 10, Oct. 1990, Page(s):33-42 *
ROM, R.; SHACHAM, N.: A reconfiguration algorithm for a double-loop token ring local area network IEEE Transactions on Computers, Volume 37, Issue 2, Feb. 1988, Page(s):182-189 *
ROM, R.; SHACHAM, N.; A reconfiguration algorithm for a double-loop token ring local area network

Also Published As

Publication number Publication date
US5327468A (en) 1994-07-05
CN1081301A (zh) 1994-01-26
ES2076090R (de) 1997-05-01
GB2267985A (en) 1993-12-22
PL171703B1 (pl) 1997-06-30
ES2076090B1 (es) 1997-12-01
ES2076090A2 (es) 1995-10-16
DE4320137A1 (de) 1993-12-23
GB9312419D0 (en) 1993-07-28
PL299389A1 (en) 1994-02-21
GB2267985B (en) 1996-04-10
JPH0652076A (ja) 1994-02-25

Similar Documents

Publication Publication Date Title
DE4320137B4 (de) Synchronisation von Tageszeituhren in einem verteilten Verarbeitungsnetzwerksystem
DE60130622T2 (de) Verfahren und System zur Zeitsynchronisierung
DE19933753B4 (de) Zeitsynchronisierung in einem System mit einem Satz von Knoten, die mit einer Kommunikationsverbindung gekoppelt sind
DE3751571T2 (de) Verfahren zur Synchronisation der Echtzeituhren in einem Datenübertragungssystem.
DE69533579T2 (de) Synchronisierung in einem Datenkommunikationsnetzwerk
EP0475497B1 (de) Stopfentscheidungsschaltung für eine Anordnung zur Bitratenanpassung
DE60311266T2 (de) Clock-synchronisationsmethode für fehlertolerante ethernet-netzwerke
EP0570557B1 (de) Verfahren zur erzeugung einer systemzeitbasis in einer anlage mit verteilten rechnereinheiten
DE3875484T2 (de) Asynchrones zeitmultiplex-kommunikationssystem.
DE102021205793A1 (de) Genauigkeit des zeitstempels auf der empfangsseite
EP0849904B1 (de) Synchrones digitales Nachrichtenübertragungssystem, Steuerungseinrichtung, Netzelement und zentraler Taktgenerator
DE60310749T2 (de) Verfahren zur bestimmung eines timing-offset zwischen einem ersten takt und einem zweiten takt in einem kommunikationsnetz
DE2831280A1 (de) Datenuebertragungs-steuersystem
DE10361178B4 (de) Datenalterungsüberwachungsvorrichtung für Sicherheitsnetzwerke
DE2838757A1 (de) Schnittstellenschaltung fuer zeitmultiplexleitungen von nachrichtenvermittlungsanlagen
DE69115563T2 (de) Verfahren zum Vermindern von Niederfrequenz-Zitterkomponenten in einem digitalen Daten-Übertragungssystem
EP0408130A2 (de) Anordnung zur Bitratenanpassung zweier Signale
DE69220267T2 (de) Pulsstopfanlage
EP1039660A2 (de) Drahtloses Netzwerk mit einer Anwendertaktsynchronisation
DE102018129189B4 (de) Verfahren zum betreiben eines netzwerkteilnehmers in einem automatisierungskommunikationsnetzwerk
WO2001011811A1 (de) Synchronisierungsverfahren und -system für taktquellen bei insbesondere paketvermittelnden kommunikationssystemen
DE1946780C2 (de) Verfahren zur Veränderung der Informationspaketsendezeit bei einem Nachrichtenübertragungssystem mit Vielfachzugriff im Zeitmultiplex über Satelliten und Vorrichtung zur Durchführung dieses Verfahrens
DE112015006604B4 (de) Zeitsynchronisationseinrichtung, Zeitsynchronisationssystem und Zeitsynchronisationsverfahren
EP1955491B1 (de) Verfahren und vorrichtung zur kopplung mindestens zweier unabhängiger bussysteme
DE10191695B4 (de) Verfahren und Kommunikationskontrolleinheit zur Multimaster Uhrensynchronisation in einem verteilten Echtzeitcomputersystem

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: WESTINGHOUSE PROCESS CONTROL INC., PITTSBURGH, PA,

8127 New person/name/address of the applicant

Owner name: EMERSON PROCESS MANAGEMENT POWER & WATER SOLUTIONS

8364 No opposition during term of opposition
R071 Expiry of right
R071 Expiry of right