DE10260807A1 - Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock - Google Patents

Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock Download PDF

Info

Publication number
DE10260807A1
DE10260807A1 DE2002160807 DE10260807A DE10260807A1 DE 10260807 A1 DE10260807 A1 DE 10260807A1 DE 2002160807 DE2002160807 DE 2002160807 DE 10260807 A DE10260807 A DE 10260807A DE 10260807 A1 DE10260807 A1 DE 10260807A1
Authority
DE
Germany
Prior art keywords
transmission
time reference
time
transmission method
timer block
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.)
Granted
Application number
DE2002160807
Other languages
English (en)
Other versions
DE10260807B4 (de
Inventor
Harald Karl
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE2002160807 priority Critical patent/DE10260807B4/de
Publication of DE10260807A1 publication Critical patent/DE10260807A1/de
Application granted granted Critical
Publication of DE10260807B4 publication Critical patent/DE10260807B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • H04L12/4035Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
    • 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/0685Clock or time synchronisation in a node; Intranode synchronisation
    • H04J3/0697Synchronisation in a packet node
    • 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

Abstract

Beim Zuführen eines Synchronisationssignals (PPS) zu einem Zeitgeberblock (53) wird in ein Register (63) des Zeitgeberblocks (53) ein Anfangswert eingespeichert und das Register (63) danach getaktes inkrementiert. Von einer Sendeschaltung (20) wird überwacht, ob ein Übertragungsmedium (3) belegt ist. Im Falle der Nichtbelegung wird an den Zeitgeberblock (53) ein Freigabesignal übermittelt. Nach dem Übermitteln des Freigabesignals wird der Wert des Registers (63) aus dem Register (63) ausgelesen, anhand des Wertes eine Zeitreferenz ermittelt und die ermittelte Zeitreferenz von der Sendeschaltung (20) über das Übertragungsmedium (3) gesendet. Zwischen dem Auslesen des Registers (63) und dem Senden der Zeitreferenz liegt eine vorbestimmte Sendezeitverzögerung (T5).

Description

  • Die vorliegende Erfindung betrifft ein Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium, wobei beim Zuführen eines Synchronisationssignals zu einem Zeitgeberblock in ein Register des Zeitgeberblocks ein Anfangswert eingespeichert wird und das Register danach getaktet inkrementiert wird, wobei der Wert des Registers aus dem Register ausgelesen wird, anhand des Wertes eine Zeitreferenz ermittelt wird und die ermittelte Zeitreferenz von der Sendeschaltung über das Übertragungsmedium gesendet wird.
  • Die vorliegende Erfindung betrifft ferner einen Zeitgeberblock zur Durchführung des oben genannten Sendeverfahrens.
  • Die oben stehend beschriebene Vorgehensweise wird z. B. beim Synchronisieren von über das SIMATIC-NET verbundenen Endgeräten angewendet.
  • Zum Synchronisieren von über ein Übertragungsmedium miteinander kommunizierenden Endgeräten ist es erforderlich, von Zeit zu Zeit eine Zeitreferenz von dem einen Endgerät zum anderen Endgerät zu übertragen, damit die Endgeräte sich miteinander synchronisieren können. Die Synchronisation ist dabei umso genauer, je genauer die tatsächliche Sendezeit bzw. Empfangszeit mit der Zeitreferenz übereinstimmt.
  • Bei der Vorgehensweise des Standes der Technik treten im Wesentlichen drei Fehlerquellen auf.
  • Die erste Fehlerquelle ist der Zeitversatz zwischen dem Eingang eines Synchronisationssignals und dem Senden der Zeitreferenz über das Übertragungsmedium. Diese Zeitverzögerung ist im Stand der Technik variabel. Sie hängt insbesondere von der Verweildauer des die Zeitreferenz enthaltenden Telegramms in der Sendewarteschlange der Sendeschaltung ab.
  • Im Stand der Technik wird versucht, die Sendezeitverzögerung durch entsprechende Priorisierung des Zeitreferenztelegramms niedrig zu halten. Ferner wird das Telegramm aus der Sendewarteschlange entfernt, wenn es nach einer vorbestimmten Wartezeit – z. B. einer Millisekunde – noch nicht gesendet worden ist.
  • Die zweite Verzögerung tritt durch die Trägheit der verwendeten Sende- und Empfangsbausteine selbst sowie durch die nur endliche Übertragungsgeschwindigkeit über das Übertragungsmedium auf.
  • Die dritte Fehlerquelle ist die Empfangsverzögerungszeit, die zwischen dem Ankommen des die Zeitreferenz enthaltenden Telegramms und dem Einspeichern des Anfangswerts in das Register des Zeitgeberblocks verstreicht. Im Stand der Technik ist auch diese Zeit variabel. Sie wird insbesondere durch die Auslastung des Prozessors bestimmt. Auch hier wird versucht, die Zeitverzögerung durch geeignete Priorisierung des Zeitreferenztelegramms zu minimieren.
  • Trotz aller Bemühungen des Standes der Technik lassen sich in der Regel Gangdifferenzen von 1 bis 2 ms nicht vermeiden.
  • Die Aufgabe der vorliegenden Erfindung besteht darin, ein Sendeverfahren für eine Zeitreferenz sowie den korrespondierenden Zeitgeberblock zur Verfügung zu stellen, mittels derer auf einfache Weise eine hochgenaue Synchronisation der Endgeräte möglich ist.
  • Die Aufgabe wird für das Sendeverfahren dadurch gelöst, dass von einer Sendeschaltung überwacht wird, ob das Übertragungsmedium belegt ist, dass im Falle der Nichtbelegung an den Zeitgeberblock ein Freigabesignal übermittelt wird, dass der Wert des Registers erst nach dem Übermitteln des Freigabesignals aus dem Register ausgelesen wird und dass zwischen dem Auslesen des Registers und dem Senden der Zeitreferenz über das Übertragungsmedium eine vorbestimmte Sendezeitverzögerung liegt.
  • Es wird also – im Gegensatz zu den bisherigen Bestrebungen des Standes der Technik – die Verzögerung nicht minimiert. Vielmehr wird dafür gesorgt, dass die Verzögerung bekannt ist. Denn dann ist es möglich, die bekannte Verzögerung sende- und/oder empfangsseitig zu berücksichtigen. Dies gilt sogar dann, wenn die Sendezeitverzögerung erheblich größer als die minimal erreichbare Verzögerung ist. Entscheidend ist nur, dass die Sendezeitverzögerung bekannt ist.
  • Die Aufgabe wird ferner durch einen Zeitgeberblock gelöst, der für die Durchführung des erfindungsgemäßen Sendeverfahrens angepasst ist.
  • In der Regel sollte die Zeitreferenz mit dem ersten über das Übertragungsmedium übertragenen Bit korrespondieren. Die Sendezeitverzögerung ist somit vorzugsweise durch das Auslesen des Registers und dem Beginn des Ausgebens der Zeitreferenz bestimmt .
  • Wenn das Synchronisationssignal dem Zeitgeberblock zu vorbekannten Zeitpunkten vorgegeben wird, ist es möglich, dass der Anfangswert vorbestimmt ist. Insbesondere ist es möglich, dass der Anfangswert derart bestimmt ist, dass durch ihn die Sendezeitverzögerung kompensiert wird. Denn dann ist zur Bestimmung des Anfangswertes weder eine Kenntnis über die Eigenschaften des Übertragungsmediums noch über die Eigenschaften des empfängerseitigen Zeitgeberblocks erforderlich. Der Anfangswert kann dem Zeitgeberblock z. B. vorgegeben werden.
  • Alternativ ist es möglich, dass das Synchronisationssignal dem Zeitgeberblock über das Übertragungsmedium zugeführt wird, das Synchronisationssignal selbst bereits eine Zeitreferenz erhält und der Anfangswert anhand der im Synchronisationssignal enthaltenen Zeitreferenz ermittelt wird. Diese Vorgehensweise bietet insbesondere den Vorteil, dass eine Synchronisation zu beliebigen Zeitpunkten möglich ist.
  • Zum Ermitteln der korrekten Zeit sollte vorzugsweise die im Synchronisationssignal enthaltene Zeitreferenz in einer Korrekturschaltung des Zeitgeberblocks um einen vorbestimmten Korrekturwert korrigiert und die korrigierte Zeitreferenz als Anfangswert herangezogen werden. Die Korrektur ist dabei insbesondere dann möglich, wenn zwischen dem Zuführen des Synchronisationssignals und dem Einspeichern des Anfangswertes eine vorbestimmte Empfangszeitverzögerung liegt. Der Korrekturwert kann dabei derart bestimmt sein, dass durch ihn die Empfangszeitverzögerung kompensiert wird. Alternativ kann der Korrekturwert auch derart bestimmt sein, dass durch ihn die Summe von Sendezeitverzögerung und Empfangszeitverzögerung kompensiert wird.
  • Die Empfangszeitverzögerung ist analog zur Sendezeitverzögerung vorzugsweise durch den Beginn des Zuführens der Zeitreferenz und das Einspeichern des Anfangswertes bestimmt. Der Korrekturwert kann dabei dem Zeitgeberblock vorgegeben werden.
  • Wenn das Synchronisationssignal zusätzlich zur Zeitreferenz eine Quell- und/oder Zieladresse enthält, ist es möglich, dass der Anfangswert nur dann in das Register eingespeichert wird, wenn die Quelladresse mit einer Sollquelladresse und/oder die Zieladresse mit einer Sollzieladresse übereinstimmt. Dadurch ist eine selektive Synchronisierung nur bezüglich einer bestimmten Synchronisationssignalquelle bzw. nur bezüglich eines bestimmten Synchronisationsziels erreichbar. Die Sollquelladresse und/oder die Sollzieladresse können dabei beispielsweise der Empfangsschaltung vorgegeben werden, so dass diese die Selektion ausführt.
  • Wenn das Synchronisationssignal zusätzlich zur Zeitreferenz ferner eine Prüfinformation für die Zeitreferenz enthält, ist es möglich, dass der Anfangswert nur dann in das Register eingespeichert wird, wenn die Zeitreferenz anhand der Prüfinformation als ordnungsgemäß ermittelt wird. Ein Einspeichern unkorrekter Zeitreferenzen kann somit vermieden werden.
  • Die Synchronisation kann, wenn bereits das zugeführte Synchronisationssignal eine Zeitreferenz enthält, insbesondere dadurch bewerkstelligt werden, dass ein Synchronisationspuls ausgegeben wird, wenn der Wert des Registers einen vorbestimmten Referenzwert erreicht.
  • Vorzugsweise ist das Sendeverfahren derart ausgestaltet, dass der Zeitgeberblock seine Funktion selbst dynamisch festlegt. Dies kann insbesondere auf folgende Weise erreicht werden:
    • – Mit jedem Einspeichern des Anfangswertes auf Grund einer über das Übertragungsmedium zugeführten Zeitreferenz wird ein Zeitgeber gestartet;
    • – der Zeitgeberblock wird gemäß einem Sendeverfahren betrieben, bei dem ihm ein Synchronisationssignal mit Zeitreferenz zugeführt wird, bis der Zeitgeber einen Grenzwert erreicht;
    • – wenn der Zeitgeber den Grenzwert erreicht, wird der Zeitgeberblock hingegen gemäß einem Sendeverfahren betrieben, bei dem das Synchronisationssignal dem Zeitgeberblock zu vorbekannten Zeitpunkten vorgegeben wird.
  • Ergänzend kann der Zeitgeberblock wieder gemäß einem Sendeverfahren betrieben werden, bei dem im Synchronisationssignal eine Zeitreferenz enthalten ist, wenn ihm über das Übertragungsmedium wieder eine Zeitreferenz zugeführt wird.
  • Beim Senden der Zeitreferenz über das Übertragungsmedium ist es möglich, den Wert des Registers 63 (unverändert) zu senden. Alternativ ist es aber auch möglich, den Wert des Regis ters in einer Korrekturschaltung des Zeitgeberblocks um einen vorbestimmten Korrekturwert zu korrigieren und diesen Wert als Zeitreferenz über das Übertragungsmedium zu senden. Analog zur Korrektur beim Zuführen der Zeitreferenz über das Übertragungsmedium gibt es auch für die Bestimmung dieses Korrekturwerts zwei Möglichkeiten. Zum einen kann er derart bestimmt sein, dass durch die (ausschließlich) die Sendezeitverzögerung kompensiert wird. Alternativ kann durch den Korrekturwert die Summe von Sendezeitverzögerung und Empfangszeitverzögerung kompensiert werden.
  • Wenn der Zeitgeberblock ein Anforderungssignal an die Sendeschaltung übermittelt, die Sendeschaltung das Anforderungssignal abwartet und das Freigabesignal erst nach Erhalt des Anforderungssignals an den Zeitgeberblock übermittelt, wird das Übertragungsmedium von der Sendeschaltung nur dann für die Übermittlung der Zeitreferenz freigehalten, wenn auch eine Zeitreferenz zum Versenden zur Verfügung steht. Der übrige Datenverkehr wird also nur so wenig wie möglich beeinträchtigt.
  • Wenn im Rahmen des Sendeverfahrens von einer weiteren Sendeschaltung überwacht wird, ob ein weiteres Übertragungsmedium belegt ist, im Falle der Nichtbelegung an den Zeitgeberblock ein weiteres Freigabesignal übermittelt wird und der Wert des Registers erst nach dem Ermitteln auch des weiteren Freigabesignals aus dem Register ausgelesen und von den Sendeschaltungen die Zeitreferenz über die Übertragungsmedien gesendet wird, ist bei mehreren – prinzipiell voneinander unabhängigen – Übertragungsmedien auf einfache Weise eine gleichzeitige Versendung der Zeitreferenz über die Übertragungsmedien gewährleistet.
  • Es ist möglich, die Zeitreferenz als solche direkt und unmittelbar über das Übertragungsmedium auszusenden. Vorzugweise aber werden der Zeitreferenz vom senderseitigen Zeitgeberblock zusätzliche Informationen hinzugefügt.
  • Insbesondere ist es möglich, dass die zusätzlichen Informationen eine Quell- und/oder eine Zieladresse umfassen. Dadurch ist es empfangsseitig beispielweise möglich, den Anfangswert nur dann in das Register einzuspeichern, wenn die Quelladresse mit einer Sollquelladresse und/oder die Zieladresse mit einer Sollzieladresse übereinstimmt. Es ist also auf einfache Weise eine selektive Synchronisation realisierbar.
  • Weiterhin ist es möglich, dass die zusätzlichen Informationen eine Prioritäts- und/oder eine Typinformation umfassen. In diesem Fall ist insbesondere ein Aussondern des Zeitreferenztelegramms aus anderen über das Übertragungsmedium übertragenen Daten leicht möglich.
  • Auch die zusätzlichen Informationen können dem Zeitgeberblock vorgegeben werden.
  • Die zusätzlichen Informationen können aber auch eine Prüfinformation für die Zeitreferenz umfassen. Wenn dies der Fall ist, ist es empfangsseitig insbesondere möglich, dass der Anfangswert nur dann in das Register eingespeichert wird, wenn die Zeitreferenz anhand der Prüfinformation als ordnungsgemäß ermittelt wird. Eine fehlerhafte Synchronisierung kann somit auf einfache Weise vermieden werden. Die Prüfinformation kann dabei eine Prüfinformation ausschließlich für die Zeitreferenz als solche sein. Sie kann aber auch eine Prüfinformation für das gesamte über das Übertragungsmedium übertragene Zeitreferenztelegramm sein.
  • Die einzige bei der erfindungsgemäßen Vorgehensweise nicht berücksichtigte Verzögerung ist die durch die Sende- und Empfangstreiber und das Übertragungsmedium selbst hervorgerufene Zeitverzögerung. Diese liegt in der Regel unterhalb von 10 μs, oftmals sogar unter 1 μs. Sie ist daher in aller Regel tolerierbar. Prinzipiell wäre mit der erfindungsgemäßen Vorgehensweise aber auch diese Zeitverzögerung durch die Sende- und Empfangstreiber und das Übertragungsmedium selbst kompensierbar.
  • Der Zeitgeberblock ist vorzugsweise mit der Sendeschaltung bzw. der Empfangsschaltung direkt verbunden. Denn dadurch kann insbesondere auf einfache Weise gewährleistet werden, dass die Sende- bzw. Empfangszeitverzögerung vorbestimmbar ist. Aus dem gleichen Grund ist auch der Zeitgeberblock selbst vorzugsweise als festverdrahtete Schaltung ausgebildet.
  • Wenn im Falle einer festverdrahteten Schaltung der Zeitgeberblock als elektronisch programmierbare Schaltung, z. B. als field programmable gate array (FPGA) oder als electronically programmable logic device (EPLD), ausgebildet ist, ist die Erstellung des Zeitgeberblocks besonders einfach. Alternativ kann der Zeitgeberblock z. B. als ASIC ausgebildet sein. Denn dann ist er insbesondere bei großen Stückzahlen kostengünstig herstellbar.
  • Wenn der Zeitgeberblock als Ethernet-Ansschaltung ausgebildet ist, ist er besonders vielseitig einsetzbar. Aber auch Ausgestaltungen für andere, insbesondere leitungsgebundene Übertragungsmedien sind denkbar und möglich.
  • Weitere Vorteile und Einzelheiten ergeben sich aus der nachfolgenden Beschreibung eines Ausführungsbeispiels in Verbindung mit den Zeichnungen. Dabei zeigen in Prinzipdarstellung
  • 1 mehrere in Linientopologie verbundene Endgeräte,
  • 2 ein Endgerät mit einer Netzwerkanschaltung,
  • 3A3C eine Verbindungsschaltung und eine Schnittstelle,
  • 4 ein Datenpaket,
  • 5 ein Ablaufdiagramm,
  • 6A6D eine Erweiterung der Verbindungsschaltung der 3A3C,
  • 7 eine Korrekturschaltung und
  • 8 ein weiteres Ablaufdiagramm.
  • Gemäß 1 sind mehrere Endgeräte 1 über Netzwerkanschaltungen 2 und Netzwerkleitungen 3 miteinander vernetzt. Die Vernetzung zwischen den Endgeräten 1 erfolgt beispielsweise gemäß dem Ethernet-Standard.
  • Die Endgeräte 1 weisen in der Regel insbesondere eine intelligente Einheit 4, z. B. einen Mikrocontroller oder einen Mikroprozessor, und einen media access controller 5 (MAC 5) auf. Die intelligenten Einheiten 4 sind mit den MACs 5 über Adress-/Datenbusse 6 verbunden. Die MACs 5 sind mit den internen Ports 8 der Netzwerkanschaltungen 2 verbunden.
  • Die internen Ports 8 sind als medienunabhängige Schnittstellen (MII = media independent Interface) ausgebildet. Die Endgeräte 1 sind daher direkt an die internen Ports 8 anschaltbar.
  • Die Netzwerkleitungen 3 können elektrische oder Lichtwellenleiter sein. Auch Mischformen sind möglich. Sie sind über Physical Layer Devices 7 an die Netzwerkanschaltungen 2 angeschaltet, und zwar an externe Ports 9, 10 der Netzwerkanschaltungen 2. Die Physical Layer Devices 7 beinhalten die Sendetreiber für die auszusendenden Daten sowie die Schwellwertwandler zum Binarisieren der empfangenen Daten. Auch die externen Ports 9, 10 sind somit als medienunabhängige Schnittstellen (MII) ausgebildet.
  • Wie bereits aus 1 und noch deutlicher aus 2 ersichtlich ist, sind die Leitungen, über die von den Ports 8 bis 10 Daten versendet werden, von den Leitungen verschieden, über welche den Ports 8 bis 10 Daten zugeführt werden. Die Ports 8 bis 10 werden also im Vollduplex-Betrieb betrieben, also unter gleichzeitigem Senden und Empfangen von Daten. Dies ist insbesondere aufgrund des Fehlens eines zwischengeschalteten MACs von Vorteil.
  • Das Senden bzw. Empfangen der Daten erfolgt mit einem Übertragungstakt von z. B. 100 MHz. Intern arbeitet die Verbindungsschaltung 11 mit einem internen Takt, der niedriger als der Übertragungstakt ist. Der interne Takt ist z. B. nur 25 MHz.
  • Wie ferner aus den 1 und 2 ersichtlich ist, weisen die Netzwerkanschaltungen 2 außer den bereits erwähnten Ports 8 bis 10 keine weiteren Ports zum Datenaustausch mit dem Netzwerk auf. Es sind also genau drei Ports 8 bis 10 vorhanden.
  • Die Ports 8 bis 10 sind gemäß 2 über eine Verbindungsschaltung 11 miteinander verschaltet. Die Verbindungsschaltung 11 arbeitet dabei nicht ein Softwareprogramm ab, sondern ist als festverdrahtete Verbindungsschaltung 11 ausgebildet. Sie enthält die Steuerwerke, die Zwischenspeicher und die Verbindungsleitungen für die Ports 8 bis 10.
  • Der Netzwerkanschaltung 2 ist eine Stromversorgungseinrichtung 12 zugeordnet. Die Stromversorgungseinrichtung 12 kann z. B. mit Versorgungsleitungen 13 verbunden sein, über die das Endgerät 1 mit elektrischer Energie versorgt wird. In diesem Fall ist die Netzwerkanschaltung 2 also vom Endgerät 1 aus mit elektrischer Energie versorgbar.
  • Alternativ oder zusätzlich ist es aber auch möglich, die Netzwerkanschaltung 2 unabhängig vom Endgerät 1 mit elektrischer Energie zu versorgen. Insbesondere ist, wie in 2 dargestellt, eine Versorgung über die Netzwerkleitungen 3 möglich. Es ist sogar möglich, der Stromversorgungseinrichtung 12 auf beiden Wegen elektrische Energie zuzuführen. In diesem Fall weist die Stromversorgungseinrichtung 12 vorzugsweise eine Überwachungsschaltung auf, mittels derer bei Zusammenbruch der Stromversorgung über die Versorgungsleitungen 13 auf die alternative Stromversorgung, beispielsweise über die Netzwerkleitungen 3, umgeschaltet wird.
  • Die Netzwerkanschaltung 2 weist ferner eine Schnittstellenschaltung 14 auf. Über diese Schnittstellenschaltung 14 ist insbesondere die Verbindungsschaltung 11 parametrierbar. Hierauf wird später noch näher eingegangen werden.
  • Die Netzwerkanschaltung 2 kann, wie in 2 durch eine gestrichelte Umrahmung mit entsprechender Beschriftung angedeutet ist, als field programmable gate array (FPGA) oder als electronically progammable logic device (EPLD) ausgebildet sein. Sie ist in diesem Fall also als elektronisch programmierbare Schaltung 11 ausgebildet. Prinzipiell könnte die Verbindungsschaltung 11 aber auch als nicht weiter programmierbare Schaltung ausgebildet sein, z. B. als integrierter Schaltkreis, insbesondere als ASIC. Die Stromversorgungseinrichtung 12 ist dabei, wie ebenfalls in 2 dargestellt, außerhalb des Schaltkreises angeordnet.
  • Der interne Aufbau der Verbindungsschaltung 11 wird nunmehr nachstehend in Verbindung mit den 3A bis 3C näher erläutert, die Funktionsweise der Verbindungsschaltung 11 in Verbindung mit 5. Ergänzend wird dabei auch der Aufbau eines typischen Datenpakets herangezogen, wie er in 4 dargestellt ist.
  • Gemäß 3 weist die Verbindungsschaltung 11 einen internen Block 15 und zwei externe Blöcke 16, 17 auf. Die Blöcke 15 bis 17 sind dabei – siehe 2 – alle innerhalb der Verbindungsschaltung 11 angeordnet. Der interne Block 15 ist aber dem internen Port 8 zugeordnet (daher die Bezeichnung als interner Block), die externen Blöcke 16, 17 den externen Ports 9, 10 (daher die Bezeichnung als externe Blöcke).
  • Wenn der Netzwerkanschaltung 2 vom Endgerät 1 über den internen Port 8 ein Datenpaket zugeführt werden soll, geschieht dies wie folgt:
    Einer Empfangsmaschine 18 des internen Blocks 15 wird über ein UND-Gatter 19 die entsprechende logische Verknüpfung zweier Freigabebits zugeführt. Je eines der Freigabebits stammt dabei von je einem der externen Blöcke 16, 17. Die Freigabebits werden von Sendemaschinen 20, 21 der externen Blöcke 16, 17 auf logisch Eins gesetzt, wenn Zwischenspeicher 22, 23 leer sind. Die Zwischenspeicher 22, 23 sind dabei nach dem FIFO-Prinzip (FIFO = first-in-first-out) organisiert.
  • Wenn beide Zwischenspeicher 22, 23 leer sind, nimmt die Empfangsmaschine 18 vom Endgerät 1 ein Datenpaket entgegen und leitet es über einen Datenausgang 24 und Dateneingänge 25, 26 den Zwischenspeichern 22, 23 zu. Die Datenübertragung erfolgt dabei z. B. in sogenannten Nibblen, also in Gruppen von je 4 Bit. Das Datenpaket wird also in die Zwischenspeicher 22, 23 eingeschrieben. Die Zwischenspeicher 22, 23 dienen also zum Zwischenspeichern von Datenpaketen, die der Netzwerkanschaltung 2 über den internen Port 8 zugeführt werden. Auf Grund des Umstands, dass die Datenpakete dabei erst dann in die Zwischenspeicher 22, 23 eingeschrieben werden, wenn die Zwischenspeicher 22, 23 zuvor geleert wurden, ist dabei zu jedem Zeitpunkt in die Zwischenspeicher 22, 23 nur ein einziges Datenpaket einspeicherbar. Weitere Datenpakete werden, soweit erforderlich, vom Endgerät 1 verwaltet.
  • Den Zwischenspeichern 22, 23 sind Belegungsermittler 27, 28 zugeordnet. Die Belegungsermittler 27, 28 ermitteln zum einen, ob die Zwischenspeicher 22, 23 belegt sind, ob in ihnen also zu sendende Daten abgespeichert sind. Wenn dies der Fall ist, wird eine entsprechende Information an die Sendemaschinen 20, 21 gegeben, welche daraufhin die Freigabebits zurücksetzen. Ferner ermitteln die Belegungsermittler 27, 28, ob folgende Bedingungen erfüllt sind:
    • a) Das Datenpaket ist vollständig in die Zwischenspeicher 22, 23 eingeschrieben.
    • b) Die in die Zwischenspeicher 22, 23 eingeschriebenen Daten des Datenpakets haben eine Mindestgröße von z. B. 50 Byte erreicht.
  • Sowie eine dieser beiden Bedingungen erfüllt ist (ODER-Verknüpfung), übermitteln die Belegungsermittler 27, 28 ein Sendebereitschaftsbit an die Sendemaschinen 20, 21.
  • Schließlich ermitteln die Belegungsermittler 27, 28 durch Analysieren des Datenpakets noch dessen Priorität. Wenn das Datenpaket als hochprior erkannt wird, wird ein Prioritätsbit, das an die Sendemaschinen 20, 21 übermittelt wird, auf Eins gesetzt.
  • Die Frage, ob das in die Zwischenspeicher 22, 23 – vollständig oder teilweise – eingespeicherte Datenpaket nunmehr sofort und unmittelbar gesendet wird, hängt von einer Vielzahl von Umständen ab, auf die später noch eingegangen wird. Bereits an dieser Stelle sei aber erwähnt, dass – wenn die weiteren Sendebedingungen erfüllt sind – mit dem Ausgeben der Daten des Datenpakets über die externen Ports 9, 10 begonnen wird, sowie das Sendebereitschaftsbit gesetzt ist. Es wird also nicht abgewartet, bis das Datenpaket vollständig in die Zwischenspeicher 22, 23 eingespeichert ist. Vielmehr ist die Verbindungsschaltung 11 derart ausgebildet, dass die Daten des Datenpakets bereits vor dem vollständigen Zuführen des Datenpakets über die externen Ports 9, 10 ausgegeben werden. Etwas anderes gilt nur für extrem kleine Datenpakete, deren Gesamtgröße unter der Mindestgröße von z. B. 50 Byte liegt.
  • Das Ausgeben wird aber nicht bereits mit dem ersten eingespeicherten Bit, Nibble oder Byte gestartet. Es wird abgewartet, bis in den Zwischenspeichern 22, 23 – zumindest bei längeren Datenpaketen – die Mindestanzahl von Daten hinterlegt ist.
  • Die oben stehend beschriebene Vorgehensweise, mit dem Ausgeben von Daten des Datenpakets zu beginnen, sowie alternativ das Datenpaket vollständig in die Zwischenspeicher 22, 23 eingespeichert ist oder aber die in die Zwischenspeicher 22, 23 eingespeicherten Daten des Datenpakets eine Mindestgröße erreicht haben, gilt selbstverständlich bezüglich beider externer Ports 9, 10. Sie gilt umgekehrt auch, wenn der Netzwerkanschaltung 2 über einen der externen Ports 9, 10 Daten zugeführt werden, die dann an den internen Port 8 und/oder den anderen externen Port 10, 9 weiterzuleiten und dort auszugeben sind.
  • Aus den oben stehenden Ausführungen ist insbesondere auch ersichtlich, dass die Verbindungsschaltung 11 derart ausgebildet ist, dass das Datenpaket stets über beide externe Ports 9, 10 ausgeben wird, wenn das Datenpaket der Netzwerkanschaltung 2 über den internen Port 8 zugeführt wird.
  • Wenn umgekehrt dem internen Block 15 der Netzwerkanschaltung 2 ein Datenpaket zugeführt wird, das der Netzwerkanschaltung 2 über einen der externen Ports 9, 10 zugeführt wird, geschieht dies wie folgt:
    Wie aus 4 ersichtlich ist, weist das Datenpaket eine Zieladresse und eine Quelladresse auf. Die Quelladresse ist stets eine eindeutige Einzeladresse. Die Zieladresse kann eine Einzeladresse sein. Sie kann aber auch eine Mehrfachadresse sein, die für mehrere oder sogar für alle Endgeräte 1 gültig ist.
  • Der interne Block 15 weist gemäß 3A Adressextraktoren 29 und einen Adressvergleicher 30 auf. Die Adressextraktoren 29 extrahieren aus den ihnen zugeführten Datenpaketen zunächst die Zieladresse. Die Zieladresse wird dem Adressvergleicher 30 zugeführt. Der Adressvergleicher 30 vergleicht die Zieladresse mit (mindestens) einer intern hinterlegten Filteradresse. Wenn die extrahierte Zieladresse dieser Filteradresse bzw. einer der Filteradressen entspricht, übermittelt der Adressvergleicher 30 ein Freigabebit an den übermittelnden Extraktor 29. Nur in diesem Fall wird das zugeführte Datenpaket an einen internen Datenwegermittler 31 weitergegeben. Ansonsten wird es nicht weitergeleitet und somit also insbesondere auch vom internen Port 8 ferngehalten.
  • Die Prüfung im Adressvergleicher 30 umfasst insbesondere eine Prüfung, ob die Zieladresse mit der Filteradresse identisch ist. Sie umfasst ferner eine Prüfung, ob die Zieladresse, falls sie eine Mehrfachadresse ist, die Filteradresse mit umfasst. Gegebenenfalls sind noch weitere Prüfungen nach Typ und/oder Funktion des Datenpakets möglich. Dies ist aber nicht erforderlich.
  • Im Ergebnis wird also das Datenpaket nur dann über den internen Port 8 ausgegeben, wenn die Zieladresse des Datenpakets eine Durchschaltbedingung, nachstehend Endgeräte-Durchschaltbedingung genannt, erfüllt.
  • Das Extrahieren der Zieladresse und das Überprüfen der Zieladresse benötigen Zeit. Während dieser Zeit werden dem internen Block 15 über seinen entsprechenden Dateneingang 32 weiterhin Daten zugeführt. Der interne Block 15 und damit auch die Verbindungsschaltung 11 weist daher einen Zwischenspeicher 33 auf, in dem diese Daten zwischengespeichert werden, bis die Prüfung, ob die Endgeräte-Durchschaltbedingung erfüllt ist, abgeschlossen ist. Dieser Zwischenspeicher 33 kann relativ klein ausgebildet sein. Er ist vorzugsweise als FIFO-Speicher organisiert. Er wird also zyklisch beschrieben und ausgelesen.
  • Da der Datenverkehr über die Ports 8 bis 10 unabhängig voneinander abläuft, ist es möglich, dass dem internen Block 15 über beide Dateneingänge 32 gleichzeitig Daten zugeführt werden. Der Datenwegermittler 31 überprüft daher, wenn ihm Daten von einem der Adressextraktoren 29 zugeführt werden, ob ihm auch bereits vom anderen Adressextraktor 29 Daten zugeführt werden und wohin er diese Daten ausgibt. Wenn der Datenwegermittler 31 diese anderen Daten bereits direkt an eine Sendemaschine 34 des internen Blocks 15 ausgibt, speichert er die später empfangenen Daten des anderen Dateneingangs 32 in einem Zwischenspeicher 35 ab. Anderenfalls gibt er sie direkt an die Sendemaschine 34 weiter. Der Zwischenspeicher 35 ist ebenfalls nach de FIFO-Prinzip organisiert. Er kann dabei, wie in 3A angedeutet, zu einem Zeitpunkt mehr als ein Datenpaket zwischenspeichern. Es ist in diesen Zwischenspeicher 35 also mehr als ein Datenpaket einspeicherbar.
  • In ähnlicher Weise können, wie in 3B gestrichelt angedeutet, auch die externen Blöcke 16, 17 Adressextraktoren 36 und Adressvergleicher 37 aufweisen. In diesem Fall vergleicht der Adressvergleicher 37 die Zieladresse mit der Filteradresse aber ausschließlich auf Identität und invertiert dann das Vergleichsergebnis. Der Adressextraktor 36 leitet das Datenpaket, das ihm vom anderen externen Port (z. B. dem Port 10) zugeführt wird, also nur dann an die Sendemaschine 20 weiter, wenn dieses Datenpaket nicht bzw. nicht ausschließlich für das angeschlossene Endgerät 1 bestimmt ist. In diesem Fall ist also eine Netzwerk-Durchschaltbedingung erfüllt.
  • Zur Vereinfachung des Schaltungsaufwands ist es möglich, zur Überprüfung, ob die Netzwerk-Durchschaltbedingung erfüllt ist, den Adressvergleicher 30 des internen Blocks 15 zu verwenden und nur das entsprechende Freigabebit an einen Zwischenspeicher 38 zu übermitteln, der – ebenso wie der Zwischenspeicher 33 – die Daten zwischenspeichert, bis die Prüfung auf die Netzwerk-Durchschaltbedingung abgeschlossen ist.
  • Alternativ oder zusätzlich zur Zieladresse können die Adressextraktoren 29 des internen Blocks 15 bzw, die Adressextraktoren 36 der externen Blöcke 16, 17 auch die Quelladresse extrahieren und an die Adressvergleicher 30, 37 übermitteln. In diesem Fall überprüfen die Adressvergleicher 30, 37 die Quelladresse mit der Filteradresse (bzw. einer der Filteradressen). Wenn die Quelladresse von der Filteradresse verschieden ist, ist eine Quell-Durchschaltbedingung erfüllt. Ansonsten wird das Datenpaket sowohl vom Adressextraktor 29 als auch vom Adressextraktor 36 nicht weitergeleitet. Kreisläufer bei den Datenpaketen können somit ausgefiltert werden.
  • Auch bezüglich des Prüfens auf die Quell-Durchschaltbedingung ist selbstverständlich eine Zwischenspeicherung in den Zwischenspeichern 33, 38 bis zum Abschließen dieser Prüfung erforderlich.
  • Wie in den 3A und 3B durch gestricheltes Durchkreuzen angedeutet ist, können in einer vereinfachten Version der Verbindungsschaltung 11 die Adressextraktoren 29, 36 und die Adressvergleicher 30, 37 entfallen. In diesem Fall werden Datenpakete, die der Netzwerkanschaltung 2 über einen der externen Ports 9, 10 zugeführt werden, stets über den internen Port 8 und den anderen externen Port 10, 9 ausgegeben.
  • Wie oben stehend ausgeführt, sind die Ports 8 bis 10 im Vollduplex-Betrieb betreibbar. Es ist also bei jedem Port ein gleichzeitiges Senden und Empfangen möglich. Wenn nun einer der Ports 8 bis 10 – z. B. der interne Port 8 – gleichzeitig Daten eines Datenpakets ausgibt und Daten eines anderen Datenpakets entgegennimmt, dann werden ihm also Daten von einem zweiten Port, z. B. dem externen Port 9 zugeführt, nämlich die Daten, die er selbst z. B. über seine Sendemaschine 34 ausgibt. Diese Daten werden – zumindest in der Regel – auch dem dritten Port bzw. Block, hier dem externen Port 10 bzw. dem externen Block 17, zugeführt. Diesen Port 10 bzw. Block 17 werden aber auch die Daten zugeführt, die der erstgenannte Port (im gegebenen Beispiel der interne Port 8) empfängt. Der betreffende Block – hier der Block 17 – muss also gleichzeitig Daten von den beiden anderen Blöcken 15, 16 entgegen nehmen. Der Block 17 kann aber – logischerweise – über den Port 10, dem er zugeordnet ist, nur die Daten eines einzigen Da tenpakets ausgeben. Um in einem derartigen Fall einen Datenverlust zu vermeiden, weist daher jeder der Blöcke 15 bis 17 mindestens einen Zwischenspeicher 22, 23, 35, 39 und 40 auf. In diesen Zwischenspeichern 22, 23, 35, 39 und 40 werden Datenpakete, die nicht sofort ausgegeben werden, zwischengespeichert.
  • Wie aus 3A ersichtlich ist, weist der interne Block 15 einen einzigen derartigen Zwischenspeicher auf, nämlich den Zwischenspeicher 35. In diesen Zwischenspeicher 35 ist, wie bereits erwähnt, mehr als ein Datenpaket einspeicherbar.
  • Die externen Blöcke 16, 17 weisen jeweils zwei derartige Zwischenspeicher auf, nämlich zum einen die Zwischenspeicher 22 und 39 für den externen Block 16 und zum anderen die Zwischenspeicher 23 und 40 für den externen Block 17. Die Zwischenspeicher 22, 23 dienen, wie ebenfalls bereits erwähnt, zum Zwischenspeichern maximal eines Datenpakets, das den externen Blöcken 16, 17 über den internen Port 8 zugeführt wird. Die Zwischenspeicher 39 und 40 hingegen dienen zum Zwischenspeichern von Datenpaketen, die der Netzwerkanschaltung 2 über den jeweils anderen externen Port 10, 9 zugeführt werden. In diese Zwischenspeicher 39, 40 ist, wie in den 3B und 3C angedeutet, mehr als ein Datenpaket einspeicherbar.
  • Gegebenenfalls könnten die Blöcke 15 bis 17 auch weitere, in den FIG nicht dargestellte Zwischenspeicher aufweisen. Beispielsweise könnten die Zwischenspeicher 39, 40 in mehrere parallel geschaltete FIFO-Speicher aufgeteilt sein. Dadurch könnte auf relativ einfache Weise eine Priorisierung innerhalb der über den anderen externen Port 9, 10 zugeführten Datenpakete erfolgen.
  • Die Funktionsweise der Sendemaschine 20 des externen Blocks 16 wird nunmehr nachstehend in Verbindung mit 5 näher erläutert. Die Sendemaschine 21 des anderen externen Blocks 17 arbeitet ein identisches Verfahren ab.
  • Gemäß 5 sendet die Sendemaschine 20 in einem Schritt 41 Daten eines Datenpakets über den externen Port 9, dem sie zugeordnet ist, aus. Sodann überprüft sie in einem Schritt 42, ob das Datenpaket vollständig gesendet wurde. Wenn dies nicht der Fall ist, kehrt sie zum Schritt 41 zurück. Anderenfalls führt sie einen Schritt 43 aus, in dem ein Zeitregister auf den Wert Null gesetzt wird.
  • Nach dem Schritt 43 prüft die Sendemaschine 20 in einem Schritt 44, ob der Wert des Zeitregisters eine erste Mindestpause T1 erreicht hat. Wenn dies nicht der Fall ist, wird der Schritt 44 – zu einem etwas späteren Zeitpunkt, also mit einem etwas höheren Wert des Zeitregisters – wiederholt.
  • Wenn der Wert des Zeitregisters die erste Mindestpause T1 überschritten hat, wird vom Schritt 44 zu einem Schritt 45 verzweigt. Dort wird – durch überprüfen der vom Belegungsermittler 27 übermittelten Bits – überprüft, ob hochpriore Daten vom internen Port 8 zum Aussenden anstehen. Wenn diese Prüfung positiv verläuft, wird in einem Schritt 46 mit dem Senden dieser Daten begonnen und zum Schritt 41 verzweigt.
  • Wenn im Schritt 45 hingegen entschieden wurde, dass keine hochprioren Daten vom internen Port 8 zum Senden anstehen, wird zu einem Schritt 47 verzweigt. Im Schritt 47 wird überprüft, ob das Zeitregister eine zweite Mindestpause T2 überschritten hat. Die zweite Mindestpause T2 ist dabei größer als die erste Mindestpause T1.
  • Wenn die zweite Mindestpause T2 nicht überschritten ist, wird zum Schritt 44 zurückgesprungen. Wenn die zweite Mindestpause T2 überschritten ist, wird in einem Schritt 48 überprüft, ob Daten vom anderen externen Port 10 zum Aussenden anstehen. Wenn dies der Fall ist, wird in einem Schritt 49 mit dem Senden dieser Daten begonnen und sodann zum Schritt 41 verzweigt.
  • Wenn hingegen keine Daten vom anderen externen Port 10 zum Aussenden anstehen, wird in einem Schritt 50 überprüft, ob der Inhalt des Zeitregisters eine dritte Mindestpause T3 überschritten hat. Die dritte Mindestpause T3 ist dabei größer als die zweite Mindestpause T2.
  • Wenn die dritte Mindestpause T3 nicht überschritten ist, wird zum Schritt 44 verzweigt. Anderenfalls wird in einem Schritt 51 überprüft, ob – nunmehr niederpriore – Daten vom internen Port 8 zum Aussenden anstehen. Wenn dies nicht der Fall ist, wird zum Schritt 44 verzweigt. Wenn hingegen Daten vom internen Port 8 zum Aussenden anstehen, wird in einem Schritt 52 mit dem Senden dieser Daten begonnen und zum Schritt 41 verzweigt.
  • Den Datenpaketen sind also Prioritäten zugeordnet. Die Sendemaschinen 20, 21 erfüllen die Funktion von Paketsteuerelementen, mittels derer stets das höchstpriore Datenpaket zuerst ausgegeben wird, wenn von dem jeweiligen externen Block 16, 17 mehrere Datenpakete prinzipiell ausgebbar sind. Dabei ist den Datenpaketen, die der Netzwerkanschaltung 2 über den internen Port 8 zugeführt werden, alternativ eine hohe oder eine niedrige Priorität zugeordnet. Den Datenpaketen, die der Netzwerkanschaltung 2 über den jeweils anderen externen Port 10, 9 zugeführt werden, ist eine mittlere Priorität zugeordnet.
  • Darüber hinaus werden die den externen Ports 9, 10 zuzuführenden Datenpakete von den Sendemaschinen 20, 21 derart verzögert, dass zwischen dem Ende eines bereits ausgegebenen Datenpakets und dem Anfang des nächsten Datenpakets eine Mindestpause, nämlich eine der Mindestpausen T1 bis T3, liegt. Die Mindestpause T1 bis T3 ist dabei ersichtlich von der Priorität des zu sendenden Datenpakets abhängig. Ferner hängt die Priorität und damit indirekt auch die Mindestpause T1 bis T3 auch davon ab, ob das zu sendende Datenpaket der Netzwerkanschaltung 2 über den internen Port 8 oder den anderen ex ternen Port 10, 9 zugeführt wurde. Die Mindestpause T1 bis T3 ist dabei um so größer, je geringer die Priorität des zu sendenden Datenpakets ist.
  • Bereits oben stehend wurde erwähnt, dass die Verbindungsschaltung 11 nicht eine prozessorgesteuerte Schaltung ist, die ein Softwareprogramm ausführt, sondern eine festverdrahtete Schaltung. Zur Sicherheit wird aber nochmals darauf hingewiesen, dass auch die Sendemaschinen 20, 21 die oben stehend in Verbindung mit 5 beschriebene Schrittfolge nicht durch Abarbeiten eines Softwareprogramms realisieren, sondern durch eine schaltungstechnische Ausbildung der Sendemaschinen 20, 21. Das Wort „Maschinen" ist daher im vorliegenden Fall im Sinne eine Turing-Maschine zu verstehen. Auch die anderen Elemente der Verbindungsschaltung 11, beispielsweise die Empfangsmaschine 18, die Belegungsermittler 27, 28, die Adressextraktoren 29, 36 und auch die Adressvergleicher 30, 37 arbeiten stets nicht ein Softwareprogramm ab, sondern sind schaltungstechnisch derart ausgestaltet, dass sie die erforderliche Funktionalität realisieren.
  • Wie bereits erwähnt, weist die Netzwerkanschaltung 2 eine Schnittstellenschaltung 14 auf, mittels derer die Verbindungsschaltung 11 parametrierbar ist. Die Parametrierung der Verbindungsschaltung 11 umfasst insbesondere die Vorgabe der Filteradressen, die den Adressvergleichern 30, 37 zugeführt werden, sowie die Mindestpausen T1 bis T3. Gegebenenfalls können auch weitere Parameter eingestellt werden. Beispielsweise können einzelne Ports, insbesondere alternativ einer der beiden externen Ports 9, 10, abschaltbar sein.
  • In den 6A bis 6D ist eine Erweiterung der Netzwerkanschaltung 2 der 3A bis 3C dargestellt. Der wesentliche Unterschied zur Darstellung der 3A bis 3C besteht darin, dass die Netzwerkanschaltung 2 der 6A bis 6D zusätzlich zu den Blöcken 15 bis 17 einen Zeitgeberblock 53 aufweist. Der Zeitgeberblock 53 dient der Synchronisierung des an die Netzwerkanschaltung 2 angeschlossenen Endgeräts 1 mit anderen Endgeräten 1.
  • Der interne Block 15 ist in 6A dargestellt. Es ist gegenüber 3A unverändert geblieben. Bezüglich des internen Blocks 15 sind daher keine weiteren Ausführungen erforderlich.
  • Die externen Blöcke 16, 17 hingegen weisen zusätzliche Elemente auf. So weisen die externen Blöcke 16, 17 insbesondere empfangsseitige Paketselektoren 54, 55 auf. Mittels dieser Paketselektoren 54, 55 wird geprüft, ob ein dem jeweiligen externen Port 9, 10 zugeführtes Datenpaket ein Zeit-Datenpaket ist. Ist das Datenpaket kein Zeit-Datenpaket, wird es auf normale Datenausgänge 56, 57 der externen Blöcke 16, 17 durchgeschaltet. Wenn es hingegen ein Zeit-Datenpaket ist, wird es auf Zeitausgänge 58, 59 der externen Blöcke 16, 17 durchgeschaltet.
  • Ein empfangenes Zeit-Datenpaket wird über den entsprechenden Zeitausgang 58 bzw. 59 dem korrespondierenden Zeiteingang 60 bzw. 61 des Zeitgeberblocks 53 zugeführt. Von dem jeweiligen Zeiteingang 60 bzw. 61 wird es einem Zeitstempelgenerator 62 zugeführt. Dieser kann anhand des zugeführten Zeitdatenpakets die Zeit ermitteln. Zur korrekten Ermittlung der Zeit wird dabei dem Zeitstempelgenerator 62 über die Schnittstellenschaltung 14 ein Korrekturwert zugeführt. Der Korrekturwert ist also parametrierbar. Er dient der Berücksichtigung der Zeit (Empfangszeitverzögerung T4), die der Zeitstempelgenerator 62 benötigt, um aus der übermittelten Zeit den Anfangswert zu berechnen und in einen Zeitzähler 63 einzuspeichern.
  • Das Zuführen eines Zeitdatenpakets zum Zeitgeberblock 53 erfolgt dabei auf die gleiche Weise wie das Zuführen eines Datenpakets zum internen Port B. Auch die Daten der Zeitdatenpakete werden also bereits vor dem vollständigen Zuführen dieser Datenpakete zu den externen Ports 9, 10 an den Zeitgeberblock 53 weitergeleitet.
  • Ebenso wie der interne Block 15 und die externen Blöcke 16, 17 ist auch der Zeitgeberblock 53 Bestandteil der Verbindungsschaltung 11. Er ist somit ebenfalls als Hardware-Schaltung ausgebildet, in eine Ethernet-Anschaltung integriert, gegebenenfalls in einen ASIC integriert oder gegebenenfalls auch Teil des FPGA bzw. EPLD. Es wird also kein Softwareprogramm abgearbeitet. Die Zeit, die benötigt wird, um aus dem Zeitdatenpaket die korrekte Zeit zu ermitteln und an den Zeitzähler 63 weiterzuleiten, ist daher vorab ermittelbar. Dadurch ist eine hochgenaue Korrektur im Zeitstempelgenerator 62 möglich. Ruf Grund der hochgenauen Korrektur ist es ferner möglich, dass der Zeitzähler 63 bei jedem Erreichen eines Referenzwerts – z. B. einmal pro Sekunde – ein hochgenaues Zeitsignal PPS über die Schnittstellenschaltung 14 an das Endgerät 1 ausgibt.
  • Die oben stehend beschriebene Vorgehensweise wird ausgeführt, wenn das angeschlossene Endgerät 1 als abhängiges Endgerät (Slave) betrieben wird, dem die Zeitreferenz über das Übertragungsmedium 3 vorgegeben wird. Hierzu wird ein Modusregister der Schnittstellenschaltung 14 entsprechend geladen. Der Inhalt dieses Registers legt beispielsweise fest, ob das angeschlossene Endgerät 1 abhängig oder unabhängig ist. Ferner kann festgelegt sein, über welchen der externen Ports 9, 10 gegebenenfalls ein Zeitdatenpaket empfangen wird und über welchen ein Zeitdatenpaket gesendet wird.
  • Über ein Zeitadressenregister kann ferner – z. B. durch Vorgabe an die Paketselektoren 54, 55 – vorgegeben werden, welche Datenpakete als Zeitdatenpakete erkannt und behandelt werden.
  • Wenn der Zeitgeberblock 53 als Master betrieben werden soll, wird dem Zeitstempelgenerator 62 zu vorbekannten Zeitpunkten, z. B. jede Sekunde, das hochgenaue Zeitsignal PPS über die Schnittstellenschaltung 14 zugeführt. Mit dem Eintreffen dieses Zeitsignals PPS wird der Zeitzähler 63 jeweils mit einem vorbestimmten Anfangswert geladen und neu gestartet. Der Zeitzähler 63 übermittelt daraufhin ein Anforderungssignal an eine Zeitsendesteuerung 64. Diese fragt bei einer der Sendemaschinen 20, 21, eventuell auch bei beiden Sendemaschinen 20, 21, ab, ob diese ein Zeittelegramm sofort und ohne Verzögerung aussenden können. Er wartet entsprechende Bestätigungen von den Sendemaschinen 20, 21 ab.
  • Die Sendemaschinen 20, 21 überwachen, ob sie anderweitig ein Datenpaket senden. Sie überwachen also, ob das Übertragungsmedium 3, das heißt die Leitungen 3, belegt sind. Sie senden ihre Bestätigungen erst ab, wenn die Leitungen 3 frei sind.
  • Eine derartige Vorgehensweise ist allgemein als Handshake bekannt und wird daher nachstehend nicht näher beschrieben.
  • Wenn die Sendemaschinen 20, 21 der Zeitsendesteuerung 64 ihre Sendebereitschaft angezeigt haben, übermittelt diese einem Zeitdatenpaketgenerator 65 ein Startsignal. Dieser liest daraufhin vom Zeitzähler 63 den momentanen Zählerstand ein. Den Zählerstand fügt er in ein Zeitdatenpaket ein und sendet dieses über einen Zeitausgang 66 an Zeiteingänge 67 und/oder 68 der externen Blöcke 16, 17 und von dort weiter zu den Sendemaschinen 20 bzw. 21. Der Zählerstand kann, falls erforderlich, vor dem Einfügen in das Zeitdatenpaket um einen Korrekturwert korrigiert werden. Die Korrektur kann in einer Korrekturschaltung – ebenso wie beim Empfang einer Zeitreferenz – erfolgen. Damit kann insbesondere eine Sendezeitverzögerung T5 kompensiert werden.
  • Die Sendemaschinen 20, 21 geben dann das ihnen zugeführte Zeitdatenpaket aus. Falls das Zeitpaket über beide externe Ports 9, 10 ausgegeben werden soll, erfolgt das Auslesen des Zeitzählers 63 erst mit dem Übermitteln der Bestätigungen von beiden Sendemaschinen 20, 21. Das Ausgeben des Zeitdatenpakets an die Sendemaschinen 20 bzw. 21 erfolgt, wie aus 6 ersichtlich ist, direkt. Zwischen dem Zeitgeberblock 53 und den externen Ports 9, 10 sind also keine Zwischenspeicher angeordnet.
  • Das Versenden der Zeitdatenpakete über die externen Ports 9, 10 erfolgt auf die gleiche Weise wie das Versenden eines Datenpakets, das den externen Ports 9, 10 über den internen Port 8 zugeführt wird. Daten eines Zeitdatenpakets werden also ebenfalls bereits vor dem vollständigen Zuführen des Zeitdatenpakets über die externen Ports 9, 10 ausgegeben.
  • Da auch der Zeitdatenpaketgenerator 65 als Hardware-Schaltung ausgebildet ist, ist die durch diesen hervorgerufene Zeitverzögerung T5 vorab ermittelbar und/oder bekannt. Sie kann daher bei der Ermittlung der korrekten Zeit berücksichtigt werden. Der nötige Korrekturfaktor zur Berücksichtigung der Verzögerungszeit T5, also der Sendeanfangswert, kann wieder über die Schnittstellenschaltung 14 parametrierbar sein. Er bestimmt insbesondere den Anfangswert, der im Sendefall in den Zeitzähler 63 geladen wird, oder den Korrekturwert, um den der aus dem Zeitzähler 63 ausgelesene Wert korrigiert wird.
  • Der Aufbau und die Wirkungsweise des Zeitgeberblocks 53 werden nachfolgend in Verbindung mit den 6, 7 und 8 nochmals detaillierter beschrieben. Dabei wird zuerst der Sendefall, also die Ausgabe eines Zeitdatenpakets beschrieben, danach der Empfangsfall, also der Empfang eines Zeitdatenpakets.
  • Im Masterfall wird dem Zeitgeberblock 53 von Zeit zu Zeit, z. B. jede Sekunde, das Zeitsignal PPS zugeführt. Dieses Zeitsignal PPS wird innerhalb des Zeitgeberblocks 53 dem Zeitstempelgenerator 62 zugeführt. Das Zeitsignal PPS dient also als Synchronisationspuls für den Zeitgeberblock 53.
  • Beim Zuführen des Synchronisationspulses PPS speichert der Zeitstempelgenerator 62 im Zeitzähler 63 einen Sendeanfangswert ein. Danach wird der Zeitzähler 63 getaktet inkrementiert. Der Zeitzähler 63 ist also ein Zählregister. Der Sendeanfangswert korrespondiert mit der Sendeverzögerungszeit T5.
  • Wie bereits ausgeführt, übermittelt die Zeitsendesteuerung 64 an die Sendemaschinen 20, 21 eine Anfrage, ob diese ein Zeittelegramm sofort und ohne Verzögerung aussenden können. Dies entspricht einem Anforderungssignal, das an die Sendemaschinen 20, 21 übermittelt wird. Die Sendemaschinen 20, 21 warten dieses Anforderungssignal ab. Nach dessen Erhalt überprüfen sie, ob sie selbst gerade über das Übertragungsmedium 3 (die Netzwerkleitungen 3) ein Datenpaket senden. Wenn dies nicht der Fall ist, ist das Übertragungsmedium 3 nicht belegt. In diesem Fall übermitteln sie ihre Sendebereitschaft in Form eines entsprechenden Freigabesignals an die Zeitsendesteuerung 64.
  • Sowie die Zeitsendesteuerung 64 die Freigabesignale entgegen genommen hat, übermittelt sie das Startsignal an den Zeitdatenpaketgenerator 65. Dieser liest daraufhin den momentanen Zählerstand aus dem Zeitzähler 63 aus. Dieser Zählerstand (= Wert) entspricht – gegebenenfalls nach entsprechender Korrektur – der zu übermittelnden Zeitreferenz. Dieser Zeitreferenz werden vom Zeitdatenpaketgenerator 65 aber noch zusätzliche Informationen hinzugefügt. Insbesondere wird ein komplettes Zeitdatenpaket erstellt. Der Zeitreferenz werden also – siehe 4 – eine Quell- und ein Zieladresse sowie eine Prioritäts- und/oder eine Typinformation hinzugefügt. Diese zusätzlichen Informationen können den Zeitgeberblock 53 bzw. dem Zeitdatenpaketgenerator 65 vorab über die Schnittstellenschaltung 14 vorgegeben werden.
  • Ferner ermittelt der Zeitdatenpaketgenerator 65 eine Prüfinformation (CRC = cyclic redundancy check) für das Zeitdatenpaket, also insbesondere auch für die Zeitreferenz.
  • Das so ermittelte Zeitdatenpaket wird dann ohne weitere Verzögerung an die Sendemaschinen 20, 21 übermittelt und von diesen als Zeitreferenz über das Übertragungsmedium 3 gesendet.
  • Wie aus 6 ersichtlich ist, ist der Zeitgeberblock 53 direkt mit den Sendemaschinen 20, 21 verbunden, über welche die Zeitreferenz in das Übertragungsmedium 3 einspeisbar ist. Es erfolgt keine weitere Zwischenspeicherung. Im Zusammenwirken mit dem Umstand, dass die gesamte in 6 dargestellte Verbindungsschaltung 11 eine festverdrahtete Schaltung ist, liegt daher zwischen dem Auslesen des Zeitzählers 63 und dem Senden der Zeitreferenz über das Übertragungsmedium 3 bzw. die Leitungen 3 eine vorbestimmte Sendezeitverzögerung T5.
  • Der Sendeanfangswert bzw. der beim Senden berücksichtigte Korrekturwert korrespondiert mit der Sendezeitverzögerung T5. Er ist somit derart bestimmt, dass durch ihn die Sendezeitverzögerung T5 kompensiert wird. Insbesondere ergibt sich der Sendeanfangswert als f x T5, wobei f die Taktfrequenz (z. B. 25 MHz) ist, mit der der Zeitzähler 63 inkrementiert wird. Dieser Anfangswert kann – sei es direkt als Zahlenwert, sei es indirekt durch Vorgabe der Sendezeitverzögerung T5 – dem Zeitgeberblock 53 vorgegeben werden.
  • In der Regel erfolgt das Synchronisieren zwischen den Endgeräten 1 mit dem ersten Bit des neuen Zeitdatenpakets. Die Sendezeitverzögerung T5 ist daher in aller Regel durch das Auslesen des Zeitzählers 63 und dem Beginn des Ausgebens der Zeitreferenz bzw. des Zeitdatenpakets bestimmt.
  • In völlig analoger Weise wird vorgegangen, wenn von einem der externen Blöcke 16, 17 über das Übertragungsmedium 3 ein Zeitdatenpaket empfangen wird. In diesem Fall wird zunächst in den Paketselektoren 54, 55 überprüft, ob die im Zeitdatenpaket enthaltene Quelladresse mit einer Sollquelladresse übereinstimmt. Ebenso wird überprüft, ob die im Datenpaket enthaltene Zieladresse mit einer Sollzieladresse übereinstimmt. Die Adressen werden den Paketselektoren 54, 55 dabei wieder über die Schnittstellenschaltung 14 vorgegeben. Nur im Falle einer Übereinstimmung wird, wie bereits erwähnt, das Zeitdatenpaket an den Zeitgeberblock 53 weitergeleitet. Ansonsten entfallen die nachfolgend beschriebenen weiteren Schritte.
  • Im Falle der Übereinstimmung wird das Zeitdatenpaket vom empfangenden externen Block 16, 17 dem Zeitstempelgenerator 62 zugeführt. Dieser überprüft zunächst anhand der Prüfinformation, ob die Zeitreferenz ordnungsgemäß übermittelt wurde. Nur wenn dies der Fall ist, wird die Zeitreferenz weiter verarbeitet. Ansonsten wird sie verworfen.
  • Im Falle eines ordnungsgemäß empfangenen Zeitdatenpakets extrahiert der Zeitstempelgenerator 62 die Zeitreferenz und korrigiert sie – siehe 7 – in einer Korrekturschaltung 69 um einen Korrekturwert. Die korrigierte Zeitreferenz wird dann als Empfangsanfangswert in den Zeitzähler 63 eingespeichert. Ab dem Einspeichern des Empfangsanfangswertes wird der Zeitzähler 63 dann getaktet inkrementiert. Wenn der Wert des Zeitzählers 63 einen Referenzwert erreicht, der z. B. der nächsten vollen Sekunde entspricht, wird in Form des Zeitsignals PPS ein Synchronisationspuls an das angeschlossene Endgerät 1 ausgegeben.
  • Auch soweit es den Empfangsweg betrifft, ist der Zeitgeberblock 53 direkt mit den Empfangsschaltungen 16, 17 verbunden, über die die Zeitreferenz über das Übertragungsmedium 3 empfangbar ist. Es erfolgt also keine Zwischenspeicherung. In Verbindung mit der Ausgestaltung der gesamten Verbindungsschaltung 11 als Hardware-Schaltung ist somit auch die Verar beitungszeit zwischen dem Empfangen der Zeitreferenz und dem Einspeichern des Empfangsanfangswertes vorbestimmt. Diese Zeit wird nachstehend Empfangszeitverzögerung T4 genannt. Der Korrekturwert, um den die empfangene Zeitreferenz korrigiert wird, kann daher derart bestimmt werden, dass durch ihn die Empfangszeitverzögerung T4 kompensiert wird. Er kann – analog zum Sendeanfangswert – direkt als Zahlenwert oder indirekt durch die Empfangszeitverzögerung T4 dem Zeitgeberblock 53 bzw. dem Zeitstempelgenerator 62 über die Schnittstellenschaltung 14 vorgegeben werden.
  • In aller Regel erfolgt, wie bereits erwähnt, eine Synchronisation auf das erste empfangene Bit. Die Empfangszeitverzögerung T4 ist daher durch den Beginn des Empfangens der Zeitreferenz bzw. des Zeitdatenpakets und das Einspeichern des Empfangsanfangswertes in den Zeitzähler 63 bestimmt.
  • Wie ebenfalls bereits oben stehend in Verbindung mit 6D ausgeführt, kann durch eine entsprechende Vorgabe des Betriebsmodus bestimmt werden, ob der Zeitgeberblock 53 als Master oder als Slave betrieben wird. Es ist aber auch möglich, den Zeitgeberblock 53 derart zu parametrieren, dass er seine Rolle dynamisch wählt. Dies wird nachstehend in Verbindung mit 8 näher erläutert.
  • Gemäß 8 kann von der Zeitsendesteuerung 64 zunächst in einem Schritt 70 überprüft werden, ob dem Zeitstempelgenerator 62 über das Übertragungsmedium 3 eine Zeitreferenz zugeführt wurde und die zugeführte Zeitreferenz ordnungsgemäß war. Dies kann beispielsweise dadurch erreicht werden, dass, wie in 6D angedeutet, ein OK-Bit an die Zeitsendesteuerung 64 übermittelt wird.
  • Wenn der Zeitsendesteuerung 64 dieses Bit übermittelt wird, setzt sie in einem Schritt 71 einen Zeitgeber auf den Wert Null und startet ihn. Ferner setzt sie in einem Schritt 72 ein Masterbit M auf den Wert Null. Das Masterbit M wird dem Zeitstempelgenerator 62 zugeführt, der sich in diesem Fall als Slave verhält. Die weitere Abarbeitung erfolgt dann anhand der empfangenen Zeitreferenz, wie bereits beschrieben wurde.
  • Wenn der Zeitsendesteuerung 64 hingegen kein OK-Bit übermittelt wird, überprüft sie in einem Schritt 73, ob der Zeitgeber einen Grenzwert erreicht hat. Wenn dies der Fall ist, setzt sie in einem Schritt 74 das Masterbit M auf den Wert Eins und gibt es an den Zeitstempelgenerator 62 aus. Dieser stellt daraufhin auf Masterbetrieb um. Er nimmt also, solange ihm das Masterbit M mit Wert Eins übermittelt wird, über die Schnittstellenschaltung 14 das Zeitsignal PPS entgegen und schreibt jeweils den Sendeanfangswert in den Zeitzähler 63 ein. Die Zeitsendesteuerung 64 ermittelt dann gemäß der oben stehend beschriebenen Weise, ob ein Zeitdatenpaket versendet werden kann und veranlasst gegebenenfalls das Versenden dieses Pakets.
  • Gemäß 8 wird also mit jedem Einspeichern des Empfangsanfangswertes der Zeitgeber gestartet. Bis der Zeitgeber den Grenzwert erreicht, wird der Zeitgeberblock 53 als Slave betrieben. Er erzeugt also anhand der übermittelten Zeitreferenz das Zeitsignal PPS (bzw. den Synchronisationspuls PPS). Wenn der Zeitgeber den Grenzwert erreicht und überschreitet, wird der Zeitgeberblock 53 hingegen als Master betrieben. Er übermittelt also selbst über eine oder beide der Sendemaschinen 20, 21 eine Zeitreferenz. Sobald wieder ein Zeitdatenpaket ordnungsgemäß empfangen wird, also wieder ein Empfangsanfangswert in den Zeitzähler 63 eingespeichert wird, konfiguriert sich der Zeitgeberblock 53 aber wieder auf Slavebetrieb um.
  • Auch eine Mischform von Master- und Slavebetrieb ist möglich. In diesem Fall fungiert der Zeitgeberblock 53 z. B. bezüglich des externen Ports 9 als Slave, nimmt also von dort eine Zeitreferenz entgegen und ermittelt daraus – gegebenenfalls unter Korrektur in der Korrekturschaltung 69 – den in das Register 63 einzuschreibenden Anfangswert. Bezüglich des anderen externen Ports 10 fungiert der Zeitgeberblock 53 als Master. Der einzige Unterschied zum „normalen" Masterbetrieb ist, dass dem Zeitgeberblock 53 der Synchronisationspuls PPS nicht von außen vorgegeben wird.
  • Die Korrektur der Sende- und der Empfangszeitverzögerung T5, T4 kann weiterhin in der Korrekturschaltung 69 und der korrespondierenden sendeseitigen Korrekturschaltung erfolgen. Sie kann aber auch vollständig in der einen oder der anderen Korrekturschaltung 69 erfolgen.
  • Mittels der erfindungsgemäßen Netzwerkanschaltung 2 ist somit auf einfache und kostengünstige Weise eine Linientopologie mehrerer Endgeräte 1 aufbaubar. Bei dieser Topologie bleibt dabei die Echtzeitfähigkeit erhalten. Durch Hinzunahme des Zeitgeberblocks 53 kann dabei sogar auf einfache und hochgenaue Weise eine Synchronisation mehrerer Endgeräte 1 bewirkt werden.

Claims (37)

  1. Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium (3), – wobei beim Zuführen eines Synchronisationssignals (PPS) zu einem Zeitgeberblock (53) in ein Register (63) des Zeitgeberblocks (53) ein Anfangswert eingespeichert wird und das Register (63) danach getaktet inkrementiert wird, – wobei von einer Sendeschaltung (20) überwacht wird, ob das Übertragungsmedium (3) belegt ist, und im Falle der Nichtbelegung an den Zeitgeberblock (53) ein Freigabesignal übermittelt wird, – wobei nach dem Übermitteln des Freigabesignals der Wert des Registers (63) aus dem Register (63) ausgelesen wird, anhand des Wertes eine Zeitreferenz ermittelt wird und die ermittelte Zeitreferenz von der Sendeschaltung (20) über das Übertragungsmedium (3) gesendet wird, – wobei zwischen dem Auslesen des Registers (63) und dem Senden der Zeitreferenz über das Übertragungsmedium (3) eine vorbestimmte Sendezeitverzögerung (T5) liegt.
  2. Sendeverfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Sendezeitverzögerung (T5) durch das Auslesen des Registers (63) und den Beginn des Ausgebens der Zeitreferenz bestimmt ist.
  3. Sendeverfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Synchronisationssignal (PPS) dem Zeitgeberblock (53) zu vorbekannten Zeitpunkten vorgegeben wird und dass der Anfangswert vorbestimmt ist.
  4. Sendeverfahren nach Anspruch 3, dadurch gekennzeichnet, dass der Anfangswert derart bestimmt ist, dass durch ihn die Sendezeitverzögerung (T5) kompensiert wird.
  5. Sendeverfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass der Anfangswert dem Zeitgeberblock (53) vorgegeben wird.
  6. Sendeverfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Synchronisationssignal über das Übertragungsmedium (3) einer Empfangsschaltung (16, 17) und von dieser dem Zeitgeberblock (53) zugeführt wird, dass das Synchronisationssignal selbst bereits eine Zeitreferenz enthält und dass der Anfangswert anhand der im Synchronisationssignal enthaltenen Zeitreferenz ermittelt wird.
  7. Sendeverfahren nach Anspruch 6, dadurch gekennzeichnet, dass die im Synchronisationssignal enthaltene Zeitreferenz in einer Korrekturschaltung (69) des Zeitgeberblocks (53) um einen vorbestimmten Korrekturwert korrigiert wird und die korrigierte Zeitreferenz als Anfangswert herangezogen wird.
  8. Sendeverfahren nach Anspruch 7, dadurch gekennzeichnet, dass zwischen dem Zuführen des Synchronisationssignals und dem Einspeichern des Anfangswertes eine vorbestimmte Empfangszeitverzögerung (T4) liegt und dass der Korrekturwert derart bestimmt ist, dass durch ihn die Empfangszeitverzögerung (T4) kompensiert wird.
  9. Sendeverfahren nach Anspruch 7, dadurch gekennzeichnet, dass zwischen dem Zuführen des Synchronisationssignals und dem Einspeichern des Anfangswertes eine vorbestimmte Empfangszeitverzögerung (T4) liegt und dass der Korrekturwert derart bestimmt ist, dass durch ihn die Summe von Sendezeitverzögerung (T5) und Empfangszeitverzögerung (T4) kompensiert wird.
  10. Sendeverfahren nach Anspruch 8 oder 9, dadurch gekennzeichnet, dass die Empfangszeitverzögerung (T4) durch den Beginn des Zuführens der Zeitreferenz und das Einspeichern des Anfangswertes bestimmt ist.
  11. Sendeverfahren nach einem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass der Korrekturwert dem Zeitgeberblock (53) vorgegeben wird.
  12. Sendeverfahren nach einem der Ansprüche 6 bis 11, dadurch gekennzeichnet, dass das Synchronisationssignal zusätzlich zur Zeitreferenz eine Quell- und/oder eine Zieladresse enthält und dass der Anfangswert nur dann in das Register (63) eingespeichert wird, wenn die Quelladresse mit einer Sollquelladresse und/oder die Zieladresse mit einer Sollzieladresse übereinstimmt.
  13. Sendeverfahren nach Anspruch 12, dadurch gekennzeichnet, dass die Sollquelladresse und/oder die Sollzieladresse der Empfangsschaltung (16, 17) vorgegeben werden.
  14. Sendeverfahren nach einem der Ansprüche 6 bis 13, dadurch gekennzeichnet, dass das Synchronisationssignal zusätzlich zur Zeitreferenz eine Prüfinformation für die Zeitreferenz enthält und dass der Anfangswert nur dann in das Register (63) eingespeichert wird, wenn die Zeitreferenz anhand der Prüfinformation als ordnungsgemäß ermittelt wird.
  15. Sendeverfahren nach einem der Ansprüche 6 bis 14, dadurch gekennzeichnet, dass ein Synchronisationspuls (PPS) ausgegeben wird, wenn der Wert des Registers (63) einen vorbestimmten Referenzwert erreicht.
  16. Sendeverfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, – dass mit jedem Einspeichern des Anfangswertes aufgrund einer über das Übertragungsmedium (3) zugeführten Zeitreferenz ein Zeitgeber gestartet wird, – dass der Zeitgeberblock (53) gemäß einem Sendeverfahren nach einem der Ansprüche 6 bis 15 betrieben wird, bis der Zeitgeber einen Grenzwert erreicht, und – dass der Zeitgeberblock (53) gemäß einem Sendeverfahren nach Anspruch 3, 4 oder 5 betrieben wird, wenn der Zeitgeber den Grenzwert erreicht.
  17. Sendeverfahren nach Anspruch 16, dadurch gekennzeichnet, dass der Zeitgeberblock (53) wieder gemäß einem Sendeverfahren nach einem der Ansprüche 6 bis 15 betrieben wird, wenn ihm über das Übertragungsmedium (3) wieder eine Zeitreferenz zugeführt wird.
  18. Sendeverfahren nach einem der Ansprüche 1 bis 17, dadurch gekennzeichnet, dass der Wert des Registers (63) als Zeitreferenz über das Übertragungsmedium (3) gesendet wird.
  19. Sendeverfahren nach einem der Ansprüche 1 bis 17, dadurch gekennzeichnet, dass der Wert des Registers (63) in einer Korrekturschaltung des Zeitgeberblocks (53) um einen vorbestimmten Korrekturwert korrigiert wird und dass der korrigierte Wert als Zeitreferenz über das Übertragungsmedium (3) gesendet wird.
  20. Sendeverfahren nach Anspruch 19, dadurch gekennzeichnet, dass der Korrekturwert derart bestimmt ist, dass durch ihn die Sendezeitverzögerung (T5) kompensiert wird.
  21. Sendeverfahren nach Anspruch 19, dadurch gekennzeichnet, dass das Synchronisationssignal dem Zeitgeberblock (53) über das Übertragungsmedium (3) zugeführt wird, dass zwischen dem Zuführen des Synchronisationssignals und dem Einspeichern des Anfangswertes eine vorbestimmte Empfangszeitverzögerung (T4) liegt und dass der Korrekturwert derart bestimmt ist, dass durch ihn die Summe von Sendezeitverzögerung (T5) und Empfangszeitverzögerung (T4) kompensiert wird.
  22. Sendeverfahren nach einem der obigen Ansprüche, dadurch gekennzeichnet, dass der Zeitgeberblock (53) ein Anforderungssignal an die Sendeschaltung (20) übermittelt, dass die Sendeschaltung (20) das Anforderungssignal abwartet und dass die Sendeschaltung (20) das Freigabesignal erst nach Erhalt des Anforderungssignals an den Zeitgeberblock (53) übermittelt.
  23. Sendeverfahren nach einem der obigen Ansprüche, dadurch gekennzeichnet, dass von einer weiteren Sendeschaltung (21) überwacht wird, ob ein weiteres Übertragungsmedium (3) belegt ist, dass im Falle der Nichtbelegung an den Zeitgeberblock (53) ein weiteres Freigabesignal übermittelt wird und dass der Wert des Registers (63) erst nach dem Übermitteln auch des weiteren Freigabesignals aus dem Register (63) ausgelesen und von den Sendeschaltungen (20, 21) die Zeitreferenz über die Übertragungsmedien (3) gesendet wird.
  24. Sendeverfahren nach einem der obigen Ansprüche, dadurch gekennzeichnet, dass der über das Übertragungsmedium (3) zu übermittelnden Zeitreferenz vom Zeitgeberblock (53) zusätzliche Informationen hinzugefügt werden.
  25. Sendeverfahren nach Anspruch 24, dadurch gekennzeichnet, dass die zusätzlichen Informationen eine Quell- und/oder eine Zieladresse umfassen.
  26. Sendeverfahren nach Anspruch 24 oder 25, dadurch gekennzeichnet, dass die zusätzlichen Informationen eine Prioritäts- und/oder eine Typinformation umfassen.
  27. Sendeverfahren nach Anspruch 24, 25 oder 26, dadurch gekennzeichnet, dass die zusätzlichen Informationen dem Zeitgeberblock (53) vorgegeben werden.
  28. Sendeverfahren nach Anspruch 24, 25 oder 26, dadurch gekennzeichnet, dass die zusätzlichen Informationen eine Prüfinformation für die Zeitreferenz umfassen.
  29. Zeitgeberblock zur Durchführung eines Sendeverfahrens nach einem der Ansprüche 1 bis 28.
  30. Zeitgeberblock nach Anspruch 29, dadurch gekennzeichnet, dass er direkt mit mindestens einer Sendeschaltung (20, 21) verbunden ist, über die die Zeitreferenz in ein Übertragungsmedium (3) einspeisbar ist.
  31. Zeitgeberblock nach Anspruch 30, dadurch gekennzeichnet, dass die Sendeschaltung (20, 21) mit mindestens einem Sendeblock (z. B. 8) verbunden ist, von dem aus der Sendeschaltung (20, 21) ebenfalls Daten zuführbar sind, die von der Sendeschaltung (20, 21) in das Übertragungsmedium (3) einspeisbar sind.
  32. Zeitgeberblock nach Anspruch 29, 30, oder 31, dadurch gekennzeichnet, dass er direkt mit mindestens einer Empfangsschaltung (16, 17) verbunden ist, über die die Zeitreferenz über ein Übertragungsmedium (3) empfangbar ist.
  33. Zeitgeberblock nach Anspruch 32, dadurch gekennzeichnet, dass die Empfangsschaltung (16, 17) mit mindestens einem Empfangsblock (z. B. 15) verbunden ist, dem von der Empfangsschaltung (16, 17) ebenfalls über das Übertragungsmedium (3) übertragene Daten zuführbar sind.
  34. Zeitgeberblock nach einem der Ansprüche 29 bis 33, dadurch gekennzeichnet, dass er als festverdrahtete Schaltung ausgebildet ist.
  35. Zeitgeberblock nach Anspruch 34, dadurch gekennzeichnet, dass er als elektronisch programmierbare Schaltung, z. B. als field programmable gate array (FPGA) oder als electronically programmable logic device (EPLD), ausgebildet ist.
  36. Zeitgeberblock nach Anspruch 34, dadurch gekennzeichnet, dass er als ASIC ausgebildet ist.
  37. Zeitgeberblock nach einem der Ansprüche 29 bis 36, dadurch gekennzeichnet, dass er als Ethernet-Anschaltung ausgebildet ist.
DE2002160807 2002-12-23 2002-12-23 Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock Expired - Fee Related DE10260807B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2002160807 DE10260807B4 (de) 2002-12-23 2002-12-23 Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2002160807 DE10260807B4 (de) 2002-12-23 2002-12-23 Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock

Publications (2)

Publication Number Publication Date
DE10260807A1 true DE10260807A1 (de) 2004-07-08
DE10260807B4 DE10260807B4 (de) 2007-07-05

Family

ID=32477955

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2002160807 Expired - Fee Related DE10260807B4 (de) 2002-12-23 2002-12-23 Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock

Country Status (1)

Country Link
DE (1) DE10260807B4 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1653643A1 (de) * 2004-10-27 2006-05-03 Siemens Aktiengesellschaft Verfahren und Anlage zur Zeitsynchronisation in einem verteilten Kommunikationsnetzwerk
DE102005029655A1 (de) * 2005-06-23 2006-12-28 Hilscher Gesellschaft für Systemautomation mbH Verfahren und Vorrichtung zur Synchronisation von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines Automatisierungssystems
FR2897228A1 (fr) * 2006-02-08 2007-08-10 Thomson Licensing Sas Methode de transmission d'informations temporelles a latence fixe
EP2527935B1 (de) * 2011-05-26 2014-12-03 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungssystems
DE102004051145B4 (de) * 2004-10-20 2015-09-17 Artis Gmbh Sensorsystem für eine spanabhebende Werkzeugmaschine und spanabhebende Werkzeugmaschine mit einem Sensorsystem

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337463A (en) * 1980-08-22 1982-06-29 Control Data Corporation Time synchronization master station and remote station system
US5408506A (en) * 1993-07-09 1995-04-18 Apple Computer, Inc. Distributed time synchronization system and method
WO2001095550A2 (en) * 2000-06-06 2001-12-13 Ontime Networks As Distributing time information in a communication network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337463A (en) * 1980-08-22 1982-06-29 Control Data Corporation Time synchronization master station and remote station system
US5408506A (en) * 1993-07-09 1995-04-18 Apple Computer, Inc. Distributed time synchronization system and method
WO2001095550A2 (en) * 2000-06-06 2001-12-13 Ontime Networks As Distributing time information in a communication network

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004051145B4 (de) * 2004-10-20 2015-09-17 Artis Gmbh Sensorsystem für eine spanabhebende Werkzeugmaschine und spanabhebende Werkzeugmaschine mit einem Sensorsystem
DE102004051145C5 (de) * 2004-10-20 2021-03-18 Marposs Monitoring Solutions Gmbh Sensorsystem für eine spanabhebende Werkzeugmaschine und spanabhebende Werkzeugmaschine mit einem Sensorsystem
EP1653643A1 (de) * 2004-10-27 2006-05-03 Siemens Aktiengesellschaft Verfahren und Anlage zur Zeitsynchronisation in einem verteilten Kommunikationsnetzwerk
DE102005029655A1 (de) * 2005-06-23 2006-12-28 Hilscher Gesellschaft für Systemautomation mbH Verfahren und Vorrichtung zur Synchronisation von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines Automatisierungssystems
FR2897228A1 (fr) * 2006-02-08 2007-08-10 Thomson Licensing Sas Methode de transmission d'informations temporelles a latence fixe
EP1819077A1 (de) * 2006-02-08 2007-08-15 Thomson Licensing Verfahren zur Übertragung von Zeitinformationen mit festgesetzter Latenzzeit
US8040992B2 (en) 2006-02-08 2011-10-18 Thomson Licensing Method of transmitting time information with fixed latency
EP2527935B1 (de) * 2011-05-26 2014-12-03 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungssystems

Also Published As

Publication number Publication date
DE10260807B4 (de) 2007-07-05

Similar Documents

Publication Publication Date Title
WO2002043336A9 (de) System und verfahren zur parallelen übertragung von echtzeitkritischen und nicht echtzeitkritischen daten über schaltbare datennetze, insbesondere ethernet
WO2010026067A1 (de) Verfahren zum übertragen von datenpaketen in einem kommunikationsnetz und schaltvorrichtung
DE102014108457B3 (de) Netzwerkverteiler
EP2961106B1 (de) Netzwerk, kopf-teilnehmer und datenübertragungsverfahren
EP3759871B1 (de) Master-slave bussystem und verfahren zum betrieb eines bussystems
DE69433232T2 (de) Digitales Nachrichtennetz mit Auswahlprozess einer Moderatorstation
EP2148474A1 (de) Multirouter für zeitgesteuerte Kommunikationssysteme
DE102011015966B4 (de) Automatisierungssystem
WO2003096637A2 (de) Verfahren und system zur übertragung von daten über schaltbare datennetze
EP1509005B1 (de) Verfahren und Vorrichtung zur Übertragung von Daten über ein Busnetz mittels Broadcast
EP1430643B1 (de) Verfahren zur übertragung von echtzeit-datentelegrammen in einem zyklischen kommunikationssystem
EP1702245B1 (de) Verfahren, Knoten und Netzwerk zum zyklischen Versenden von Ethernet-Telegrammen
DE10004425A1 (de) Netzwerk sowie Netzwerkteilnehmer, insbesondere Feldgerät, für ein derartiges Netzwerk
DE102018129813A1 (de) Datenübertragungsverfahren und Automatisierungskommunikationsnetzwerk
DE10260807B4 (de) Sendeverfahren für eine Zeitreferenz über ein Übertragungsmedium und hiermit korrespondierender Zeitgeberblock
EP1436950B1 (de) Teilnehmergerät für ein hochperformantes kommunikationssystem
EP3072250B1 (de) Kommunikationseinrichtung, kommunikationssystem und verfahren zum synchronisierten senden von telegrammen
EP1238319A2 (de) Serielle datenübertragung über ein bussystem
WO2003036832A2 (de) Verfahren zum betrieb eines endteilnehmers eines isochronen, zyklischen kommunikationssystems
DE10260806A1 (de) Netzwerkanschaltung, insbesondere Ethernet-Anschaltung
WO2017036508A1 (de) Kommunikationsgerät für ein redundant betreibbares industrielles kommunikationsnetz und verfahren zum betrieb eines kommunikationsgeräts
DE102019125545B3 (de) Datenübertragungsverfahren, segment-telegramm und automatisierungskommunikationsnetzwerk
DE10307424A1 (de) Datenvermittlungsvorrichtung und Multiplex-Kommunikationssysteme
DE102020202226A1 (de) Verfahren sowie Übertragungssystem zur Übermittlung von Messdaten
WO2001058067A1 (de) Uhrzeitsynchronisation in einem netzwerk sowie netzwerkteilnehmer, insbesondere feldgerät, für ein derartiges netzwerk

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130702