LU101216B1 - Technik zur Korrektur eiines Zeitparameters - Google Patents

Technik zur Korrektur eiines Zeitparameters Download PDF

Info

Publication number
LU101216B1
LU101216B1 LU101216A LU101216A LU101216B1 LU 101216 B1 LU101216 B1 LU 101216B1 LU 101216 A LU101216 A LU 101216A LU 101216 A LU101216 A LU 101216A LU 101216 B1 LU101216 B1 LU 101216B1
Authority
LU
Luxembourg
Prior art keywords
node
telegram
unit
clocks
symbol
Prior art date
Application number
LU101216A
Other languages
English (en)
Inventor
Martin Striewe
Vjaceslav Magazinik
Original Assignee
Phoenix Contact Gmbh & Co
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 Phoenix Contact Gmbh & Co filed Critical Phoenix Contact Gmbh & Co
Priority to LU101216A priority Critical patent/LU101216B1/de
Priority to CN202080035936.1A priority patent/CN113826087B/zh
Priority to PCT/EP2020/063268 priority patent/WO2020229509A1/de
Priority to US17/610,173 priority patent/US11907006B2/en
Application granted granted Critical
Publication of LU101216B1 publication Critical patent/LU101216B1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus
    • 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/08Clock generators with changeable or programmable clock frequency
    • 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/06Clock generators producing several clock signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

Eine Technik zum Korrigieren eines Zeitparameters (115; 125) in einem ersten Knoten nach Maßgabe eines zweiten Knotens wird beschrieben. Ein Vorrichtungsaspekt der Technik umfasst eine Taktgebereinheit (110), die periodische Takte im ersten Knoten bereitstellt. Eine Peripherieeinheit (120) dekodiert Symbole eines asynchron übertragenen Telegramms vom zweiten Knoten und misst eine Anzahl (124) der Takte während der Übertragung einer Symbolfolge aufeinanderfolgender Symbole des Telegramms. Eine Korrektureinheit (130) korrigiert den Zeitparameter (115; 125) abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge.

Description

| 1 LU101216 = x = | Technik zur Korrektur eines Zeitparameters Technisches Gebiet Die Erfindung betrifft die Korrektur eines Zeitparameters in einem verbundenen Kno- ten. Insbesondere betrifft die Erfindung eine Vorrichtung und ein Verfahren zum Kor- | rigieren eines Zeitparameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens. | ; Stand der Technik . .
Die Zahl vernetzter Geräte nimmt in vielen Bereichen rasant zu. Beispielsweise wer- den zunehmend Geräte vernetzt, die selbst keine Benutzerschnittstelle aufweisen. | Vernetzte Geräte, die zur Kommunikation auf einer höheren Schicht das Internet- Protokoll (IP) nutzen, werden auch als Internet der Dinge (loT) bezeichnet. Unab- | hängig von der Anwendung, dem Vorhandensein einer Benutzerschnittstelle oder der Anbindung an einen Cloud-Dienst werden vernetzte Geräte hierin als Knoten be- | zeichnet. | Die physikalische Schicht der Kommunikation zwischen den Knoten kann eine asyn- chrone Datenübertragung ohne Taktleitungen umfassen, beispielsweise für eine ein- fache Installation oder um bestehende 2-adrige Leitungen zu nutzen. Die asynchrone Datenübertragung ermöglicht einen Feldbus. Dadurch können Sensoren und Aktua- | toren in Schaltkästen, Fertigungsanlagen und Fahrzeugen vernetzt werden. Feldbus- | se hierfür sind der Interbus und der Bus eines sogenannten "Controller Area Net- | work" (CAN-Bus). Anwendungsbeispiele sind die industrielle Produktion unter der | Bezeichnung "Industrie 4.0" bzw. das autonome Fahren. Die asynchrone Datenüber- | tragung ermöglicht auch Feldbusse zur Vernetzung von Verbrauchszéhlern oder Heizungsanlagen in Wohnhäusern zur Fernablesung und Heimautomatisierung. Für a g g | Letzteres ist der Mess-Bus (auch: "Metering Bus" oder M-Bus) der Normenreihe |. EN13757 etabliert.
Der Begriff "asynchron" bezieht sich dabei auf das Format der Datenübertragung, beispielsweise mittels eines Startbits. Die direkt vernetzten Knoten müssen unterei- | — nander "synchron" sein im Sinne einer nach außen einheitlichen System-Symbolrate. | Letzteres wird hierin als Gleichgang bezeichnet, um eine begriffliche Verwechslung mit der asynchronen Datenübertragung zu vermeiden.
|
| 2 LU101216 | Um den Gleichgang bei asynchroner Datenübertragung ausgehend vom Startbit zu- mindest während der Übertragung eines Zeichens aufrechtzuerhalten, muss her- | kémmlicherweise jeder Knoten einen hinreichend genauen und stabilen Taktgeber aufweisen. Dies ist beispielsweise im Dokument US 3452330 A beschrieben. Ein . solcher Taktgeber, beispielsweise ein Quarzoszillator, erhöht jedoch die Herstel- | : lungskosten und den Stromverbrauch jedes Knotens.
Um den Gleichgang der Knoten bei einer Taktung mittels leistungsärmeren Schwing- kreisen aufrechtzuerhalten, werden in einem CAN-Bus Stopfbits gesendet. Diese | reduzieren jedoch die Protokolleffizienz und erhéhen die Komplexitat der Signalver- arbeitung in jedem Knoten. | ; Zusammenfassung der Erfindung Somit besteht eine Aufgabe der vorliegenden Erfindung darin, eine effizientere Tech- | nik zum Gleichgang von Knoten, die asynchron Daten übertragen, anzugeben. | Diese Aufgabe wird durch eine Vorrichtung und ein Verfahren mit den Merkmalen der .
unabhängigen Ansprüche gelöst, Vorteilhafte Ausführungsformen und Anwendungen der Erfindung sind Gegenstand der abhängigen Ansprüche und werden in der fol- | genden Beschreibung unter teilweiser Bezugnahme auf die Figuren näher erläutert. Gemäß einem Aspekt der Erfindung ist eine Vorrichtung zum Korrigieren eines Zeit- parameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens bereitgestellt. Die Vorrichtung umfasst eine Taktgebereinheit, die dazu ausgebildet | ist, periodische Takte im ersten Knoten bereitzustellen. Die Vorrichtung umfasst fer- . LL ner eine Peripherieeinheit, die dazu ausgebildet ist, Symbole eines asynchron über- tragenen Telegramms vom zweiten Knoten zu dekodieren und eine Anzahl der Takte während der Übertragung einer Symbolfolge aufeinanderfolgender Symbole des Te- legramms zu messen, Die Vorrichtung umfasst ferner eine Korrektureinheit, die dazu ausgebildet ist, den Zeitparameter abhängig vom Verhältnis der gemessenen Anzahl | der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge zu kor- | rigieren.
: .
‘ |.
|
ZELLE
; LU101216 Der Zeitparameter kann eine Taktrate der Taktgebereinheit, eine Symbolrate des Dekodierens, ein Steuerparameter zur Steuerung der Taktrate und/oder ein Steuer- parameter zur Steuerung der Symbolrate sein.
Ausführungsbeispiele der Vorrichtung können einen Fehler und/oder einen Abbruch Ë des Dekodierens bei einer (beispielsweise temperaturabhängigen) Drift des Takts der Taktgebereinheit verhindern. Beispielsweise kann eine erste Abweichung der Taktrate der Taktgebereinheit und/oder der Symbolrate des Dekodierens, die das Dekodieren noch nicht verhindert, durch das Messen des Verhältnisses bestimmt und durch die Korrektureinheit abhängig vom gemessenen Verhältnis korrigiert oder kompensiert werden, Insbesondere kann das Korrigieren des Zeitparameters die Abweichung der Taktrate und/oder der Symbolrate direkt korrigieren oder (beispiels- weise vollständig oder zumindest teilweise) kompensieren.
Dieselben oder weitere Ausführungsbeispiele der Vorrichtung können aufgrund des in Reaktion auf die erste Abweichung korrigierten Zeitparameters bei einer zweiten Abweichung, die größer als die erste Abweichung ist, das weitere Dekodieren und/oder das weitere erfindungsgemäße Korrigieren ermöglichen. Ein Fehler oder Abbruch des Dekodierens kann verhindert werden. Beispielsweise kann die zweite Abweichung so groß sein, dass ohne das Korrigieren des Zeitparameters in Reaktion ; auf die erste Abweichung das Dekodieren in Folge der zweiten Abweichung schei- tern würde, wohingegen erfindungsgemäß das Dekodieren gelingt, beispielsweise da ) eine das Dekodieren störende Abweichung auf die Differenz zwischen der zweiten Abweichung und der ersten Abweichung begrenzt ist.
Ein Erfassen (beispielsweise ein Abtasten) des vom zweiten Knoten übertragenen | Telegramms und/oder das Dekodieren der Symbole des Telegramms (beispielsweise aufgrund von Abtastwerten des Abtastens) kann von der Taktgebereinheit getaktet sein und/oder vom Zeitparameter konfiguriert sein. Sobald der Zeitparameter von der Korrektureinheit korrigiert ist, kann das Erfassen und/oder das Dekodieren gemäß dem korrigierten Zeitparameter erfolgen. Beispielsweise kann ein erstes Telegramm oder ein erstes Zeichen innerhalb des Telegramms Grundlage für das Korrigieren | des Zeitparameters durch die Korrektureinheit sein. Das heißt, die aufeinanderfol- genden Symbole in der Symbolfolge kônnen Symbole des ersten Telegramms bzw. Ë des ersten Zeichens sein. Der korrigierte Zeitparameter kann beim Erfassen | und/oder beim Dekodieren eines zweiten Telegramms (das vom zweiten Knoten un- | i
| LU101216 mittelbar nach dem ersten Telegramm übertragen wird) oder eines zweiten Zeichens des ersten Telegramms angewendet werden. Dieselben oder weitere Ausführungsbeispiele der Vorrichtung können den Zeitpara- | meter implizit nur aufgrund der asynchronen Übertragung vom zweiten Knoten zum ersten Knoten und/oder ohne eine Steuerleitung zwischen dem ersten Knoten und dem zweiten Knoten korrigieren.
Der Zeitparameter kann (beispielsweise direkt oder indirekt) das Dekodieren steuern oder beeinflussen. Der Zeitparameter kann ein zeitlicher Parameter des Dekodierens Ë (Dekodierparameter) sein.
Der Zeitparameter kann eine Taktrate des ersten Knotens, eine Symbolrate des ers- ten Knotens und/oder ein Verhältnis aus Taktrate und Symbolrate (auch: Teiler) des ersten Knotens umfassen. Der Zeitparameter kann einen (beispielsweise ganzzahli- gen) Teiler umfassen. Die Symbolrate kann aus der Taktrate (d.h., ausgehend vom .
Takt der Taktgebereinheit) gemäß dem Teiler bestimmt sein. Beispielsweise gibt es im ersten Knoten nur eine Taktgebereinheit sowohl für das Messen der Anzahl der | Takte als auch für das Dekodieren. Die Symbolrate kann gemäß dem Teiler ein ganzzahliger Bruchteil der Taktrate sein. Beispielsweise kann die Vorrichtung einen Frequenzteiler umfassen, der die Symbolrate aus der Taktrate gemäß dem Teiler . erzeugt. Beispielsweise kann ein vom zweiten Knoten empfangenes Signal des Telegramms gemäß dem Takt der Taktgebereinheit vom ersten Knoten abgetastet oder unterab- | getastet werden. Alternativ oder ergänzend kann das empfangene Signal gemäß der Symbolrate in die Symbole des Telegramms unterteilt werden. Alternativ oder ergän- | zend können Abtastwerte des empfangenen Signals gemäß dem Teiler in die Sym- bole des Telegramms unterteilt werden. | | Die Symbolfolge kann kürzer als ein Zeichen innerhalb des Telegramms sein. Die herkömmliche Verwendung von Stopfbits zur Aufrechterhaltung des Gleichgangs , während der Übertragung eines Zeichens kann so vermieden werden. Insbesondere kann die Protokolleffizienz verbessert werden, da Stopfbits keinem Symbol zur Über- : tragung von Daten (weder Steuerdaten noch Nutzdaten) entsprechen. JS,
| LU101216 ein Abtasten des vom zweiten Knoten übertragenen Telegramms oder das Dekodie- | ren der Symbole des Telegramms von der Taktgebereinheit getaktet ist und/oder vom Zeitparameter gesteuert ist. | 5 Der erste Knoten kann ein Knoten (insbesondere ein Slaveknoten) in einer Kommu- | nikationskette sein. Der erste Knoten kann innerhalb oder am Ende der Kommunika- tionskette angeordnet sein. Die Kommunikationskette kann mehrere Knoten umfas- sen, die in einer Reihe zur asynchronen Datenübertragung verbunden sind. Die | Kommunikationskette kann eine sogenannte Daisy Chain sein. Der zweite Knoten kann ein Masterknoten und/oder ein dem ersten Knoten in der Kommunikationskette | vorgeschalteter Knoten sein. Der dritte Knoten kann ein weiterer Knoten (insbeson- | dere ein weiterer Slaveknoten) und/oder ein dem ersten Knoten in der Kommunikati- onskette nachgeschalteter Knoten sein.
Die Peripherieeinheit kann eine erste (beispielsweise serielle) Schnittstelle zur asyn- chronen Ubertragung des Telegramms vom zweiten Knoten und/oder eine zweite (beispielsweise serielle) Schnittstelle zur asynchronen Ubertragung eines Tele- gramms zu einem dritten Knoten umfassen. Sowohl die erste Schnittstelle als auch die zweite Schnittstelle können von der Taktgebereinheit getaktet sein und/oder vom / korrigierten Zeitparameter gesteuert sein. Die Peripherieeinheit kann für jede Schnittstelle jeweils einen Kodierer und/oder ei- | nen Dekodierer umfassen. Der jeweilige Kodierer und/oder Dekodierer kann dazu ausgebildet sein, die Symbole eines Zeichens eines gesendeten bzw. des empfan- genen Telegramms abhängig vom Zeitparameter zu kodieren bzw. zu dekodieren. | Der Zeitparameter kann eine Taktrate der Taktgebereinheit umfassen. Die Korrektur- einheit kann dazu ausgebildet sein, die Taktrate der Taktgebereinheit abhängig vom | Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufeinanderfolgender | Symbole in der Symbolfolge zu korrigieren. Die korrigierte Taktrate kann gegenüber | einer Ist-Taktrate der Taktgebereinheit um den Quotienten aus einer vorbestimmten | Anzahl der Takte pro Symbol und dem gemessenen Verhältnis korrigiert sein. Die | vorbestimmte Anzahl der Takte pro Symbol kann dem Quotient aus der korrigierten | Taktrate (oder der Soll-Taktrate) der Taktgebereinheit und der System-Symbolrate | entsprechen. | |
6 | LU101216 | Alternativ oder zusätzlich kann der Zeitparameter eine Symbolrate (auch: Baudrate) | der Peripherieeinheit umfassen.
Die Korrektureinheit kann dazu ausgebildet sein, die Symbolrate der Peripherieeinheit abhängig vom Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge zu kor- | rigieren.
Die korrigierte Symbolrate kann gegenüber einer vorbestimmten System- Symbolrate um den Quotienten aus dem gemessenen Verhältnis und einer vorbe- stimmten Anzahl der Takte pro Symbol korrigiert sein. | Das Signal eines Zeichens des Telegramms vom zweiten Knoten kann gemäß der | Symbolrate in die Symbole des Telegramms unterteilt werden.
Ein kleiner Fehler der | Symbolrate, beispielsweise eine Abweichung der Symbolrate um weniger als ein halbes Symbol pro Zeichen, kann anhand eines Startsymbols und eines Stoppsym- bols (oder mehrerer Stoppsymbole) des Zeichens korrigiert werden.
Beispielsweise kann das Signal des jeweiligen Zeichens zwischen dem Startsymbol und dem | Stoppsymbol in gleichlange Symbole unterteilt werden.
Alternativ oder zusätzlich kann der Zeitparameter einen Teiler für eine Symbolrate | der Peripherieeinheit relativ zu einer Taktrate der Taktgebereinheit umfassen.
Die Korrektureinheit kann dazu ausgebildet sein, den Teiler abhängig vom Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufeinanderfolgender Symbole in der | Symbolfolge zu korrigieren.
Der korrigierte Teiler kann gleich oder proportional dem gemessen Verhältnis sein.
Die Symbolfolge aufeinanderfolgender Symbole des Telegramms kann sich von ei- ner ersten fallenden (oder ersten steigenden) Flanke zu einer späteren, ersten stei- | genden (oder ersten fallenden) Flanke der Übertragung des Telegramms erstreckt. | Die Vorrichtung kann mittels eines Mikrocontrollers realisiert sein.
Eine Prozesso- | reinheit, beispielsweise des Mikrocontrollers, kann die Korrektureinheit implementie- | ren. | Der Mikrocontroller kann die Taktgebereinheit, die Peripherieeinheit und/oder die | Korrektureinheit umfassen.
Der Mikrocontroller kann ferner eine Capture-Compare- | Einheit (CC-Einheit) umfassen, die mit einem empfangenen Signal des Telegramms | vom zweiten Knoten beaufschlagt ist.
Die CC-Einheit kann dazu ausgebildet sein, die | Anzahl der Takte während der Übertragung der Symbolfolge zu messen. |
Beispielsweise kann die Symbolfolge des Telegramms ausschließlich Symbole zur | Ubertragung von Nutzdaten umfassen.
Die der Messung der Anzahl der Takte zu- | grundeliegende Symbolfolge des Telegramms kann sich unmittelbar an ein Startbit anschließen und ausschließlich Symbole zu Nutzdaten umfassen. |
| Die Symbolfolge des Telegramms kann kürzer als ein Zeichen des Telegramms sein.
Alternativ oder zusätzlich kann die Symbolfolge des Telegramms ein Teil des ersten Zeichens des Telegramms sein. |
Die Peripherieeinheit kann ferner dazu ausgebildet sein, eine Anzahl der Takte wäh- | rend der Ubertragung eines vorbestimmten Synchronisationszeichens des Tele- | gramms zu messen.
Die Korrektureinheit kann ferner dazu ausgebildet sein, den | Zeitparameter zu korrigieren abhängig vom Verhältnis der gemessenen Anzahl der | Takte und einer vorbestimmten Anzahl von Symbolen im Synchronisationszeichen | und/oder abhängig von einem Quotienten der gemessenen Anzahl der Takte und einem vorbestimmten Soll-Wert der Anzahl der Takte während der Übertragung des / Synchronisationszeichens.
Das Synchronisationszeichen kann am Anfang des Tele- | gramms übertragen werden. |
Die Korrektur auf Grundlage des Synchronisationszeichens kann immer am Anfang | der Ubertragung des Telegramms durchgefiihrt werden und/oder falls ein Dekodieren | der Symbole im Telegramm aufgrund des Fehlers oder der Abweichung des Zeitpa- rameters nicht möglich ist.
Beispielsweise kann am Anfang der Übertragung des Te- | legramms der Zeitparameter mittels des Synchronisationszeichens korrigiert werden. |
Während der Übertragung des Telegramms kann der Zeitparameter korrigiert werden abhängig vom Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufei- | nanderfolgender, dekodierter Symbole in der Symbolfolge. | Gemäß einem weiteren Aspekt ist eine Anordnung von zur asynchronen Datenüber- | tragung in Reihe (z.B. topologisch linear) verbundenen Knoten bereitgestellt.
Die An- | ordnung umfasst einen ersten Knoten, der zur asynchronen Datenübertragung mit | einem zweiten Knoten verbunden ist, und der ein Ausführungsbeispiel der Vorrich- | tung zum Korrigieren eines Zeitparameters im ersten Knoten nach Maßgabe des | zweiten Knotens gemäß dem Vorrichtungsaspekt umfasst.
Optional umfasst die An- | ordnung den zweiten Knoten als Masterknoten der Anordnung.
Die Anordnung um- | fasst ferner einen dritten Knoten, der zur asynchronen Datenübertragung mit dem | ersten Knoten verbunden ist, und der ein weiteres Ausfiihrungsbeispiel der Vorrich- | tung zum Korrigieren eines Zeitparameters im dritten Knoten nach Maßgabe des ers- ten Knotens gemäß dem Vorrichtungsaspekts umfasst.
Gemäß noch einem weiteren Aspekt der Erfindung ist ein Verfahren zum Korrigieren eines Zeitparameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens bereitgestellt.
Das Verfahren umfasst oder initiiert einen Schritt des Bereitstellens | periodischer Takte (beispielsweise einen Schritt des Taktens) im ersten Knoten.
Das | Verfahren umfasst oder initiiert ferner einen Schritt des Dekodierens von Symbolen | eines asynchron übertragenen Telegramms vom zweiten Knoten und des Messens | einer Anzahl der Takte während der Übertragung einer Symbolfolge aufeinanderfol- | gender Symbole des Telegramms.
Das Verfahren umfasst oder initiiert ferner einen | Schritt des Korrigierens des Zeitparameters abhängig vom Verhältnis der gemesse- | nen Anzahl der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbol- | folge. |
Das Verfahren kann ferner einen jeden Schritt und ein jedes Merkmal umfassen, der | bzw. das im Kontext des Vorrichtungsaspekts offenbart ist, und umgekehrt.
Kurze Beschreibung der Figuren |
Die zuvor beschriebenen bevorzugten Ausführungsformen, Merkmale und Verfah- | rensschritte der Erfindung sind beliebig miteinander kombinierbar.
Weitere Einzelhei- | ten und Vorteile der Erfindung werden im Folgenden unter Bezug auf die beigefügten | Zeichnungen beschrieben.
Es zeigen:
Fig. 1 eine schematische Darstellung eines Ausführungsbeispiels einer Vorrich- | tung zum Korrigieren eines Zeitparameters in einem ersten Knoten nach | Maßgabe eines zweiten Knotens; | Fig. 2 ein Flussdiagramm eines Ausführungsbeispiels eines Verfahrens zum | Korrigieren eines Zeitparameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens, das mittels der Vorrichtung der Fig. 1 ausführbar sein kann; Fig. 3 eine schematische Darstellung einer beispielhaften Anordnung mehrerer in Reihe verbundener Knoten, die zumindest teilweise die Vorrichtung der Fig. 1 verkörpern können; und
| 9 LU101216 Fig. 4 eine schematische Wiedergabe eines beispielhaften Telegramms, das von oder zu einem der Knoten übertragbar sein kann.
Ausführliche Beschreibung : | Fig. 1 zeigt ein schematisches Blockschaltbild eines Ausführungsbeispiels einer all- | gemein mit Bezugszeichen 100 bezeichneten Vorrichtung zum Korrigieren eines Zeitparameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens. | | Die Vorrichtung 100 umfasst eine Taktgebereinheit 110, die periodische Takte im ersten Knoten bereitstellt. Die Vorrichtung 100 umfasst ferner eine Peripherieeinheit 120, die Symbole eines vom zweiten Knoten asynchron übertragenen Telegramms | dekodieren und mittels eines Zählers 124 eine Anzahl der Takte während der Uber- | tragung einer Symbolfolge aufeinanderfolgender Symbole des Telegramms misst. | Die Vorrichtung 100 umfasst ferner eine Korrektureinheit 130, die den Zeitparameter abhängig vom Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufei- nanderfolgender Symbole in der Symbolfolge 406 korrigiert. | Der Zeitparameter kann eine Taktrate 115 der bereitgestellten Takte oder einen Steuerparameter der Taktgebereinheit zur Steuerung der Taktrate umfassen. Alter- nativ oder zusätzlich kann der Zeitparameter eine Symbolrate 125 der Peripherieein- | heit 120 oder einen Steuerparameter der Peripherieeinheit zur Steuerung der Sym- | bolrate 125 umfassen. Zumindest letzteres Beispiel des Zeitparameters kann, wie in | Fig. 1 schematisch dargestellt, in ein Register der Peripherieeinheit 120 geschrieben | sein. Der Steuerparameter zur Steuerung der Symbolrate kann ein Teiler der Taktrate sein. Beispielsweise kann die Symbolrate die Taktrate 115 geteilt durch den Teiler sein. Die Symbolrate 125 kann eine Funktion des Zeitparameters sein. Beispielsweise kann die Symbolrate der Quotient aus der Taktrate 115 und dem Teiler sein, wobei die Taktrate 115 und der Teiler jeweils Beispiele für den Zeitparameter sind.
Die Symbolfolge kann durch die aufeinanderfolgenden Symbole bestimmt sein. Bei- spielsweise kann sich die Symbolfolge von einer ersten fallenden (oder steigenden)
Flanke zu einer ersten steigenden (bzw. fallenden) Flanke in einem von der Peri- pherieeinheit 120 empfangenen Signal des Telegramms erstrecken.
Die Anzahl der Takte während der Symbolfolge kann in den Zähler 124 geschrieben werden.
Der Zähler 124 kann beispielsweise zu Beginn des Telegramms und/oder zu Beginn der Symbolfolge auf Null gesetzt werden.
Bei jedem Takt der Taktgeberein- heit 110 kann der Zähler 124 um Eins inkrementiert werden, Die Korrektureinheit 130 kann die gemessene Anzahl der Takte am Ende der Symbolfolge aus dem Zähler 124 auslesen, beispielsweise als Nenner des Verhältnisses aus der Anzahl der Takte zu der Anzahl der Symbole in der Symbolfolge.
Die Peripherieeinheit 120 umfasst ferner einen Dekodierer 122, der das Dekodieren des vom zweiten Knoten empfangenen Telegramms ausführt.
Der Dekodierer 122 kann die Anzahl der aufeinanderfolgenden Symbole, die zur Symbolfolge gehören, an die Korrektureinheit 130 ausgeben.
Alternativ oder zusätzlich kann die Korrektur- einheit anhand der vom Dekodier 122 ausgegebenen Symbole einen Anfang und/oder ein Ende der Symbolfolge und/oder die Anzahl der Symbole in der Symbol- folge bestimmen. | Optional ist die Vorrichtung 100 oder der erste Knoten zur bidirektionalen Kommuni- | kation mit dem zweiten Knoten ausgebildet.
Hierzu kann die Vorrichtung 100 oder | der erste Knoten eine erste Schnittstelle 121 umfassen, die den Dekodierer 122 und ferner einen Kodierer 123 umfasst.
Der Kodierer 123 ist dazu ausgebildet, die Sym- bole für ein Telegramm zu erzeugen, das über die erste Schnittstelle 121 an den zweiten Knoten gesendet wird.
Ferner kann die Vorrichtung 100 oder der erste Knoten über eine zweite Schnittstelle 126 mit einem dritten Knoten in asynchronem Datenaustausch stehen.
Hierzu kann die Vorrichtung 100 oder der erste Knoten die zweite Schnittstelle 126 umfassen.
Die zweite Schnittstellen 126 kann einen Dekodierer 127 und einen Kodierer 128 umfas- sen zum Empfangen bzw.
Senden von Telegrammen vom bzw. an den dritten Kno- ten.
Der zweite Knoten kann ein Masterknoten oder ein (beispielsweise im Vergleich zum ersten Knoten höherrangiger) Slaveknoten sein, der eine System-Symbolrate allein aufgrund der asynchronen Datenübertragung dem ersten Knoten vorgibt.
Der erste Knoten kann bezüglich dem zweiten Knoten ein Slaveknoten sein.
Der dritte Knoten
11 | LU101216 kann ein (beispielsweise im Vergleich zum ersten Knoten niederrangiger) Slavekno- ten sein. Dieselbe Symbolrate 125 kann auf beide Schnittstellen 121 und 126 angewendet werden. Beispielsweise kann die Korrektureinheit 130 den Zeitparameter abhängig vom an der ersten Schnittstelle 121 gemessenen Verhältnis korrigieren. Dadurch kann beispielsweise die Einhaltung der Symbolrate 125 auch an der zweiten Schnitt- stelle 126 erreicht werden. Insbesondere kann die an der ersten Schnittstelle (bei- spielsweise eingangsseitig, d.h., im Wege des Empfangens eines asynchron über- tragenen Telegramms) vorgegebene Symbolrate (beispielsweise ausgangsseitig, d.h., im Wege des Sendens eines asynchron übertragenen Telegramms) an der zweiten Schnittstelle weitergegeben werden. So kann der Masterknoten über mehre- re in Reihe zur asynchronen Datenübertragung verbundene Slaveknoten eine ein- heitliche System-Symbolrate vorgeben.
Jede der beiden Schnittstellen 121 und 126 des ersten Knotens kann eine sogenann- te "Universal Asynchronous Receiver Transmitter"-Schnittstelle (UART-Schnittstelle) sein. Fig. 2 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines allgemein mit Be- _ zugszeichen 200 bezeichneten Verfahrens zum Korrigieren eines Zeitparameters in einem ersten Knoten nach Maßgabe eines zweiten Knotens. In einem Schritt 210 werden periodische Takte im ersten Knoten bereitgestellt. Sym- bole eines asynchron übertragenen Telegramms vom zweiten Knoten werden in ei- nem Schritt 220 dekodiert. Ferner wird im Schritt 220 eine Anzahl der Takte während der Ubertragung einer Symbolfolge aufeinanderfolgender Symbole des Telegramms gemessen. In einem Schritt 230 wird der Zeitparameter abhängig vom Verhältnis der gemessenen Anzahl der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge (kurz: gemessenes Verhältnis) korrigiert. | In jedem Aspekt der Erfindung kann die Anzahl der aufeinanderfolgenden Symbole in der Symbolfolge auf Grundlage des Dekodierens bestimmt werden. Beispielsweise kann die Anzahl der aufeinanderfolgenden Symbole in der Symbolfolge als die An- zahl der dekodierten Symbole, welche der Symbolfolge zeitlich zuzuordnen sind, be- stimmt werden.
| LU101216 Das Telegramm kann eine Vielzahl von Zeichen umfassen. Die Zeichen können auch als Bytes bezeichnet werden. Die Symbolrate kann auch als Baudrate bezeichnet werden. Die zu übertragenden Daten können einer Zeichenfolge aufeinanderfolgen- der Zeichen entsprechen. Die zu übertragenden Daten können Nutzdaten und/oder Steuerdaten umfassen. Jedes Zeichen kann eine bestimmte Anzahl von Bits umfas- sen, beispielsweise 4, 7, 8, 10 oder 12 Bits. Jedes Zeichen kann gemäß einem Ko- dierverfahren kodiert (d.h., als ein gesendetes Signal auf einer Sendeleitung ausge- ; geben) bzw. dekodiert (d.h., aus einem empfangenen Signal auf einer Empfangslei- tung erfasst) werden. Jedes Symbol kann einem oder mehreren Bits entsprechen, beispielsweise abhängig vom Kodierverfahren.
Zur Vereinfachung wird im Folgenden ohne Beschränkung der Allgemeinheit ange- nommen, dass jedes Bit einem Symbol entspricht.
Bei der herkömmlichen asynchronen Datenübertragung kann es durch Tempera- turdrift der Taktgebereinheit 110, d.h., der takterzeugenden Komponenten, zu Baud- ratenfehlern kommen, welche ab einer gewissen Abweichung zu Kommunikations- abbrüchen führen. Um dies zu verhindern ist man herkémmlicherweise gezwungen zur Takterzeugung teure Quarze einzusetzen. Ausführungsbeispiele der Erfindung können ermöglichen, auf ein Quarz in den untergeordneten Knoten (d.h., den Slave- knoten) zu verzichten.
Das Messen 220 des Verhältnisses aus Takten pro dekodiertem Symbol und/oder das Korrigieren 230 abhängig vom gemessenen Verhältnis kann von der Vorrichtung 100 im ersten Knoten (beispielsweise in einem der Slaveknoten) alle X empfangenen Telegramme ausgeführt werden, wobei X eine vorbestimmte Ganzzahl ist.
Die Korrektureinheit kann die Symbolfolge als Teil des ersten Bytes des empfange- nen Telegramms messen. Aus der Anzahl der Bits und der gemessenen Takte wird das gemessene Verhältnis, d.h., die Anzahl der Takte pro Bit (kurz: Takte/Bit) ermit- telt. Das gemessene Verhältnis kann auch als Ist-Takte pro Bit (kurz: Ist-Takte/Bit) bezeichnet werden.
In einem Ausführungsbeispiel ist eine Anzahl der Soll-Takte pro Bit (kurz: Soll- Takte/Bit) vorbestimmt. Die Korrektureinheit 130 berechnet die Differenz zwischen den Soll-Takten und Ist-Takten pro Bit, d.h.
Abweichung = Soll-Takte/Bit - Ist-Takte/Bit. Dies ist die Abweichung in Takten pro Bit. Um die Baudrate 125 im ersten Knoten (d.h., im Slaveknoten) zu korrigieren, geht die ' Korrektureinheit 130 von der bisherigen Baudrate aus. Diese kann numerisch der System-Baudrate entsprechen, jedoch aufgrund einer Abweichung der Taktrate 115 entsprechend von der System-Baudrate abweichen. Als numerischer Wert steht so- mit im Register "Slave-Baudrate" vor der Korrektur der Wert der System-Baudrate. Nach der Korrektur dieses Register-Wertes als Beispiel für den Zeitparameter steht im Register "Slave-Baudrate" der Wert | Korrigierte Baudrate = Systembaudrate [ 1 + Korrekturfaktor(Abweichung) ] | = Systembaudrate + Korrekturrate(Abweichung) | 15 | Der Korrekturfaktor bzw. die Korrekturrate ist eine Funktion der Abweichung. Bei- | spielsweise ist Korrekturfaktor(Abweichung) = Abweichung / [Soll-Takte/Bit].
Durch die Korrektur der Baudraten fiir beide Schnittstellen 121 und 126 des Slave- knotens (als Beispiel des ersten Knotens) kann der in der linearen Topologie nächste | Slaveknoten (beispielsweise der erste Knoten als der nächste niederrangige Knoten | nach dem zweiten Knoten) seine Baudrate an die Baudrate des vorherigen Master- oder Slaveknoten (beispielsweise des zweiten Knotens) anpassen. | Durch die Korrektur der Baudrate 125 als Beispiel des Zeitparameters ist eine interne Anpassung realisiert, durch welche die von auBen (beispielsweise an der zweiten | Schnittstelle 126) beobachtbare Baudrate des jeweiligen Slaveknoten mit Anstieg seiner Temperatur bei der definierten (vorzugsweise allein durch die asynchrone Da- tenübertragung vom Masterknoten vorgegebenen) System-Baudrate bleibt. Fig. 3 zeigt schematisch eine Anordnung 300 (auch: System) mehrerer Knoten, die zur asynchronen Datenübertragung in Reihe (d.h. topologisch linear) verbunden sind. Ein erster Knoten der Anordnung kann als Masterknoten 310 die System-Baudrate für die gesamte Anordnung 300 vorgeben, indem jeder dem Masterknoten 310 nach- geschalteter Slaveknoten 320 ein Ausführungsbeispiel der Vorrichtung 100 umfasst.
: LU101216 Beispielsweise umfasst der Masterknoten 310 (vorzugsweise als einziger Knoten der Anordnung 300) einen Schwingquarz 312. Mittels des Schwingquarzes 312 erzeugt der Masterknoten eine Folge von Symbolen beim Senden des Telegramms, deren | 5 Symbolrate die System-Symbolrate vorgibt. | Insbesondere ist jeweils die erste Schnittstelle 121 mit dem benachbarten Knoten | (d.h. dem sogenannter zweiten Knoten) verbunden, der topologisch näher am Mas- | terknoten 310 ist als der jeweilige Knoten (d.h. der sogenannte erste Knoten). Die | 10 zweite Schnittstelle 126 ist jeweils mit dem benachbarten Knoten (d.h. dem soge- | nannten dritten Knoten) verbunden, der topologisch weiter entfernt vom Masterkno- | ten 310 ist als der jeweilige Knoten (d.h. der erste Knoten). | Eine solche Anordnung 300 kann auch als Daisy-Chain bezeichnet werden.
Ein Te- | 15 legramm, das (beispielsweise ausgehend vom Masterknoten 310) Anordnung 300 | von Slaveknoten 320 zu Slaveknoten 320 durchläuft, kann auch als Daisy-Chain- | Telegramm bezeichnet werden.
Während kostengünstigere interne Oszillator stark temperaturabhängig sind, können Ausfithrungsbeispiele der Vorrichtung eine Drift der Baudrate bei Erwärmung in den Slaveknoten 320 verhindern und somit teurere Schwingquarze in den Slaveknoten | einsparen.
Ein bevorzugtes Ausführungsbeispiel implementiert die Vorrichtung 100 mittels eines Mikrocontrollers (der in Fig. 3 kurz als "uC" bezeichnet ist). Eine sogenannte Cap- | ture-Compare-Einheit (CC-Einheit) im Mikrocontroller kann den Zähler 124 imple- mentieren, um das Verhältnis Takte/Bit zu messen, die Soll-Baudrate des Systems aus dem Daisy-Chain-Telegramm zu ermitteln und damit eine Temperaturdrift des internen Oszillators auszugleichen.
Hierzu ist ein Signaleingang 322 der CC-Einheit mit dem Signal des Telegramms vom zweiten Knoten beaufschlagt, beispielsweise | indem eine Empfangsleitung (die in Fig. 3 mit "Rx" bezeichnet ist) der ersten Schnitt- | stelle 121 mit dem Signaleingang 322 verbunden ist.
Fig. 4 zeigt schematisch den Anfang eines Signals eines Telegramms 400. Die Zeit | 35 nimmt in der schematischen Darstellung der Fig. 4 von links nach rechts zu.
In verti- kaler Richtung ist ein Spannungspegel des Signals schematisch gezeigt.
Das Telegramm umfasst mehrere Zeichen (d.h., Bytes) 402 und 404, Die von der Peripherieeinheit 120 (beispielsweise der CC-Einheit) gemessene Symbolfolge 406 ist Teil des ersten Zeichens 402. D.h., die gemessene Symbolfolge 406 endet mit oder vor dem letzten Symbol (vorzugsweise dem letzten Datensymbol) des ersten Zeichens 402. | Beispielsweise ist der Anfang der gemessenen Symbolfolge 406 durch die erste fal- | lende Flanke 408 im ersten Zeichen 402 des Teegramms 400 definiert, und das En- | de der gemessenen Symbolfolge 406 ist durch die erste steigende Flanke 410 nach | 10 der ersten fallenden Flanke 408 definiert.
Die erste fallende Flanke 408 kann einem | Startbit entsprechen.
Alternativ oder zusätzlich kann die erste steigende Flanke 410 | nach der fallenden Flanke 408 vor einem Stoppbit 412 (oder vor mehreren Stoppbits) | des ersten Zeichens 412 sein.
Jedes Zeichen 402 und 404 kann jeweils durch Start- | und Stoppbits eingerahmt sein. | Eine Implementierung des Verfahrens 200 kann alle X empfangenen Telegramme 400 (d.h., nach jeweils X empfangenen Telegrammen 400) die Anzahl der Takte in | der Symbolfolge 406 gemäß dem Schritt 220 messen, beispielsweise indem die CC- Einheit im Slaveknoten 320 aktivieren wird.
Die CC-Einheit im Slaveknoten 320 misst die Takte von fallender Flanke 408 bis zur steigenden Flanke 410 des ersten emp- fangenen Bytes 402. ; Die Peripherieeinheit 120 des Slaveknotens 320 dekodiert gemäß dem Schritt 220 die Symbole (d.h., die Bits) des ersten Bytes 402. Mit anderen Worten, der Slavekno- ten 320 wertet das erste auf seiner Empfangsleitung eingetroffene Byte 402 aus und | ermittelt wie viele Symbole (d.h., Bits) von der Symbolfolge 406 (d.h., von der CC- | Messung im Schritt 220) umfasst wurden.
Aus der Anzahl der Bits und der gemesse- | nen Anzahl der Takte (auch: CC-Takte) kann das Verhältnis der CC-Takte pro Bit (auch: CC-Takte/Bit) berechnet werden.
Dieses Verhältnis ist das gemessene Ver- | 30 hältnis oder Ist-Verhältnis (kurz: Ist-Takte/Bit). | In einer ersten Variante des Ausführungsbeispiels wird die Symbolrate 125 des Sla- veknoten 320 durch den Teiler bezüglich der Taktrate 115 gesteuert.
Der Teiler ist | ein Beispiel des Zeitparameters.
In der ersten Variante kann das gemessene Ver- hältnis als der korrigierte Teiler gesetzt werden, beispielsweise indem das gemesse- ne Verhältnis in das entsprechende Register zur Steuerung der Symbolrate 125 ge- | schrieben wird, |
In einer zweiten Variante des Ausführungsbeispiels ist in der Korrektureinheit 130 des Slaveknoten 320 die Anzahl der Soll-Takte pro Bit (kurz: Soll-Takte/Bit), d.h., der Soll-Wert des Verhältnisses, als eine Konstante vorgegeben.
Der Soll-Wert des Ver- haéltnisses kann aus dem Quotienten einer Soll-Taktrate (beispielsweise CC_Clock) und der System-Baudrate berechnet werden.
Ein numerisches Beispiel hierfür ist: CC_Clock/Baudrate = 48.000.000 Takte / 312,5 kBd = 153,6 Takte/Bit.
Die Abweichung des im Schritt 220 gemessenen Verhältnisses vom vorgegebenen Soll-Wert des Verhältnisses wird als Takt_pro_Bit_Differenz berechnet: Takt_pro_Bit_Differenz = Soll-Takte/Bit - Ist-Takte/Bit, | d.h., die Abweichung in Takten pro Bit. | Die Korrektureinheit 130 korrigiert im Schritt 230 die numerische Baudrate 125 im Slaveknoten 320 als Beispiel des Zeitparameters.
Vor der Korrektur ist die numeri- sche Baudrate 125, beispielsweise der Wert "Slave_Baud" im entsprechenden Re- gister der Schnittstellen 121 und 126, gleich der System-Baudrate.
Die korrigierte numerische Baudrate ist | Slave Baud = Systembaudrate + Korrekturfaktor(Takt_pro_ Bit Differenz) | 25 Durch die Korrektur der Baudraten, für beide Slave-UARTs 121 und 126, kann der | nächste Slaveknoten (d.h., der dritte Knoten) seine Baudrate an die Baudrate des vorherigen Slaveknotens (d.h., des ersten Knotens) anpassen.
Durch die interne Anpassung bleibt die Baudrate des Slaveknotens mit Anstieg sei- ner Temperatur auf der definierten System-Baudrate, die von außen beobachtbar ist. | Wie anhand vorstehender Ausführungsbeispiele und deren Varianten aufgezeigt, | kann die Vorrichtung 100 in jedem System (insbesondere in jeder Anordnung 300) | implementiert werden, das eine definierte System-Symbolrate (d.h., eine Soll- | 35 Baudrate) aufweist.
Ein numerisches Beispiel für die System-Symbolrate ist | 312,5 kBd = 312.500 Bd, wobei Bd fiir die Einheit Baud steht, also Symbole pro Se- | kunde (beispielsweise Bit pro Sekunde).
| LU101216
Vorzugsweise kann im Schritt 220 das Messen der Anzahl der Takte innerhalb der
Symbolfolge 406 in jedem Slaveknoten mittels einer Capture-Compare-Einheit aus- | geführt werden, die beispielsweise die Anzahl der Takte zwischen Flankenwechseln | 5 des Signals des empfangenen Telegramms misst. | Alternativ oder ergänzend zu jedem Ausführungsbeispiel und jeder Variante kann | mindestens eine der folgenden Möglichkeiten umgesetzt sein.
Eine erste Umset- | zungsmöglichkeit verzichtet auf den Schwingquarz 312 im Masterknoten 310. Bei- | 10 spielsweise kann die Technik umgesetzt werden mit einem Masterknoten, der sei- | nerseits als Slave in ein übergeordnetes System einbindbar ist.
Hierzu ist der Mas- | terknoten 310 optional mit einem Ausführungsbeispiel der Vorrichtung 100 ausge- | stattet, das die Symbolrate des Masterknotens an das übergeordnete System an- | passt, beispielsweise ohne dass das übergeordnete System einen Master-Slave- | 15 Mechanismus unterstützt. | Die beschriebene Implementierung des Verfahrens 200 wertet für das Messen der Anzahl der Takte in der Symbolfolge 406 mittels des Zählers 124 (beispielsweise mit- tels der Capture-Compare-Einheit) den Inhalt des empfangenen Bytes 402 aus (d.h., das Byte 402 wird dekodiert). Dies setzt voraus, dass dieses Byte 402 noch deko- dierbar (d.h., empfangbar) ist, d.h., die bis dahin entstandene Abweichung (oder der bestehende Fehler) der Symbolrate liegt noch unter einer Schwelle eines Dekodier- fehlers (d.h., einer Schwelle der Nicht-Empfangbarkeit). Alternativ oder ergänzend | vermeidet eine zweite Umsetzungsmôglichkeit diese Einschränkung (beispielsweise eine Einschränkung an die Volatilität der Taktrate 115), indem ein Synchronisations- | zeichens 402 (beispielsweise ein im Kommunikationsprotokoll vorgeschriebenes Synchronisationsbyte) am Anfang des Telegramms 400 übertragen wird, so dass das | gemessene Verhältnis nicht aus den dekodierten Symbolen der empfangenen Nutz- daten ermittelt werden muss, und damit vom erfolgreichen Empfang (d.h., dem er- | 30 folgreichen Dekodieren) einer Symbolfolge 406 unabhängig ist.
Damit kann eine | Volatilität der Taktrate 115 (beispielsweise eine sprunghafte Abweichung der Taktra- | te 115) oder ein Driftbereich der Taktrate 115, welche bzw. welcher weiterhin die Auf- rechterhaltung des Gleichgangs für die asynchrone Datenübertragung gestattet, wei- : | ter vergrößert werden.
Hierfür kann eine Vergrößerung der Telegrammlänge um das | 35 Synchronisationszeichen in Kauf genommen werden.
| Die Anzahl der Takte während der Übertragung des vorbestimmten Synchronisati- | onszeichens des Telegramms 400 kann mittels der CC-Einheit 124 gemessen wer- | den.
Das Verhältnis der gemessenen Anzahl 124 der Takte und einer vorbestimmten | Anzahl von Symbolen im Synchronisationszeichen ergibt das gemessene Verhältnis, | 5 das Grundlage für die Korrektur des Zeitparameters ist, beispielsweise ohne dass | Symbole des Synchronisationszeichens dekodiert werden oder dekodierbar sind.
In | einer Variante der zweiten Umsetzungsmôäglichkeit wird ein Quotienten aus der ge- | messenen Anzahl 124 der Takte und einem vorbestimmten Soll-Wert der Anzahl der | Takte während der Übertragung des Synchronisationszeichens bestimmt.
Die nume- | 10 rische Symbolrate 125 oder der entsprechende Teiler können um diesen Quotienten | korrigiert werden.
Alternativ kann die Taktrate 115 um den Kehrwert dieses Quotien- | ten korrigiert werden. | Eine dritte Umsetzungsmöglichkeit kann alternativ oder zusätzlich zur Korrektur der | 15 numerischen Baudrate 125 oder des entsprechenden Teilers (als Beispiele des Zeit- | parameters) die interne Takterzeugung mittels der Taktgebereinheit 110 korrigieren | (d.h. kalibrieren). Mit anderen Worten, die Taktrate 115 (als weiteres Beispiel des | Zeitparameters) kann korrigiert werden.
Das Messen 220 der Anzahl der Takte in der Symbolfolge 406 kann durch die fallen- den und steigenden Flanken ausgelöst und beendet werden.
Beispielsweise kann die Flankenänderung einen Hardwareinterrupt auslösen, der eine entsprechende Mess- routine startet bzw. beendet, Beispielsweise wird eine Uhr (beispielsweise ein CC- Timer) der Peripherieeinheit 120 (beispielsweise der CC-Einheit) durch die Signal- | 25 Beaufschlagung 322 gestartet bzw. gestoppt, wobei die Uhr ein Zähler 124 ist, der | mit jedem Takt der Taktgebereinheit 110 inkrementiert wird.
Eine vierte Umset- zungsmôglichkeit implementiert das Messen 220 der Anzahl der Takte in der Sym- bolfolge 406 durch Abfragen oder Abtasten des empfangenen Signals an der ersten Schnittstelle 121, z.B. durch eine zyklische Abfrage, d.h., durch ein sogenanntes Pol- ling.
Bei Erfassung einer entsprechenden Flankenänderung in der zyklischen Abfra- | ge kann der Zähler 124 gestartet bzw. gestoppt werden.
Obwohl die Erfindung in Bezug auf exemplarische Ausführungsbeispiele beschrieben | worden ist, ist es für einen Fachmann ersichtlich, dass verschiedene Änderungen vorgenommen werden können und Äquivalente als Ersatz verwendet werden kön- | nen.
Ferner kénnen viele Modifikationen vorgenommen werden, um eine bestimmte Situation, eine bestimmte Topologie der asynchronen Datenübertragung und/oder
| 19 LU101216 ein bestimmtes Kommunikationsprotokoll an die Lehre der Erfindung anzupassen.
Folglich ist die Erfindung nicht auf die offenbarten Ausführungsbeispiele beschränkt, sondern umfasst alle Ausführungsbeispiele, die in den Bereich der beigefügten Pa- tentansprüche fallen,
| 20 | LU101216 Bezugszeichenliste 100 Vorrichtung zum Korrigieren eines Zeitparameters 110 Takigebereinheit 115 Zeitparameter der Taktgebereinheit, insbesondere Taktrate oder Steuerparameter der Taktrate 120 Peripherieeinheit 121 Erste serielle Schnittstelle 122 Dekodierer der ersten Schnittstelle 123 Kodierer der ersten Schnittstelle 124 Zähler, insbesondere Capture-Compare-Einheit 125 Zeitparameter der Peripherieeinheit, insbesondere Register für Symbolrate oder Steuerparameter der Symbolrate 126 Zweite serielle Schnittstelle 127 Dekodierer der zweiten Schnittstelle 128 Kodierer der zweiten Schnittstelle 130 Korrektureinheit 200 Verfahren zum Korrigieren eines Zeitparameters | 210 Schritt des Taktens | 20 220 Schritt des Dekodierens und Messens 230 Schritt des Korrigierens 300 Anordnung in Reihe verbundener Knoten 310 Masterknoten 312 Oszillator, insbesondere Quarzoszillator mit einem Schwingquarz 320 Slaveknoten 322 Signal-Beaufschlagung einer Capture-Compare-Einheit 400 Telegramm 402 Erstes Zeichen des Telegramms 404 Zweites Zeichen des Telegramms 406 Symbolfolge 408 Erste fallende Flanke des Telegrams, beispielsweise Startbit des ersten Zeichens des Telegramms 410 Erste steigende Flanke des Telegrams 412 Stoppbit des ersten Zeichens des Telegramms

Claims (16)

. Patentansprüche LU101216
1. Vorrichtung (100) zum Korrigieren eines Zeitparameters (115; 125) in einem ersten Knoten (320) nach Maßgabe eines zweiten Knotens (310; 320), umfassend: eine Taktgebereinheit (110), die dazu ausgebildet ist, periodische Takte im ersten Knoten (320) bereitzustellen; eine Peripherieeinheit (120), die dazu ausgebildet ist, Symbole eines asynchron übertragenen Telegramms (400) vom zweiten Knoten (310; 320) zu dekodieren und eine Anzahl (124) der Takte während der Übertragung einer Symbolfolge (406) aufeinanderfolgender Symbole des Telegramms (400) zu messen; und eine Korrektureinheit (130), die dazu ausgebildet ist, den Zeitparameter (115; 125) abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge (406) zu korrigieren.
2. Vorrichtung nach Anspruch 1, wobei der Zeitparameter (115; 125) eine Taktrate (115) der Taktgebereinheit (110), eine Symbolrate (125) des Dekodierens, ein Parameter zur Steuerung der Taktrate (115) oder ein Parameter zur Steuerung der Symbolrate (125) umfasst.
3. Vorrichtung nach Anspruch 1 oder 2, wobei ein Abtasten des vom zweiten Knoten übertragenen Telegramms (400) oder das Dekodieren der Symbole des Telegramms (400) von der Taktgebereinheit (110) getaktet ist und/oder vom Zeitparameter gesteuert ist.
; 4. Vorrichtung nach einem der Ansprüche 1 bis 3, wobei die Peripherieeinheit | (120) eine erste serielle Schnittstelle (121) zur asynchronen Ubertragung des Telegramms (400) vom zweiten Knoten (310; 320) und eine zweite serielle Schnittstelle (126) zur asynchronen Übertragung eines Telegramms (400) zu einem dritten Knoten (310; 320) umfasst, und wobei sowohl die erste Schnittstelle (121) als auch die zweite Schnittstelle (126) von der Taktgebereinheit (110) getaktet ist und/oder vom korrigierten Zeitparameter (115; 125) gesteuert ist.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, wobei der Zeitparameter (115; 125) eine Taktrate (115) der Taktgebereinheit (110) umfasst, und die Korrektureinheit | (130) dazu ausgebildet ist, die Taktrate (115) der Taktgebereinheit (110) abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge (406) zu korrigieren.
6. Vorrichtung nach Anspruch 5, wobei die korrigierte Taktrate (115) gegenüber LU101216 einer Ist-Taktrate der Taktgebereinheit (110) um den Quotienten aus einer vorbestimmten Anzahl der Takte pro Symbol und dem gemessenen Verhältnis korrigiert ist.
7. Vorrichtung nach einem der Ansprüche 1 bis 6, wobei der Zeitparameter (115; 125) eine Symbolrate (125) der Peripherieeinheit (120) umfasst, und die Korrektureinheit (130) dazu ausgebildet ist, die Symbolrate (125) der Peripherieeinheit (120) abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge zu korrigieren.
8. Vorrichtung nach Anspruch 7, wobei die korrigierte Symbolrate (125) gegenüber einer vorbestimmten System-Symbolrate um den Quotienten aus dem gemessenen Verhältnis und einer vorbestimmten Anzahl der Takte pro Symbol | korrigiert ist.
9. Vorrichtung nach einem der Anspriiche 1 bis 8, wobei der Zeitparameter (115; | 125) einen Teiler für eine Symbolrate (125) der Peripherieeinheit (120) relativ zu einer Taktrate (115) der Taktgebereinheit (110) umfasst, und die Korrektureinheit | (130) dazu ausgebildet ist, den Teiler (125) abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole in der Symbolfolge zu korrigieren.
10. Vorrichtung nach Anspruch 9, wobei der korrigierte Teiler gleich oder proportional zu dem gemessen Verhältnis ist.
11. Vorrichtung nach einem der Ansprüche 1 bis 10, wobei sich die Symbolfolge (406) aufeinanderfolgender Symbole des Telegramms (400) von einer ersten fallenden Flanke zu einer ersten steigenden Flanke der Übertragung des Telegramms (400) erstreckt.
12. Vorrichtung nach einem der Ansprüche 1 bis 11, wobei ein Mikrocontroller die Taktgebereinheit (110), die Peripherieeinheit (120) und die Korrektureinheit (130) umfasst, und wobei der Mikrocontroller ferner eine Capture-Compare-Einheit umfasst, die mit einem empfangenen Signal des Telegramms (400) vom zweiten Knoten (310; 320) beaufschlagt ist und die dazu ausgebildet ist, die Anzahl (124) der Takte während der Übertragung der Symbolfolge (406) zu messen.
13. Vorrichtung nach einem der Ansprüche 1 bis 12, wobei die Symbolfolge (406) LA TOTZT6 des Telegramms (400) ausschließlich Symbole zur Übertragung von Nutzdaten umfasst. :
14. Vorrichtung nach einem der Ansprüche 1 bis 13, wobei die Symbolfolge (406) des Telegramms (400) kürzer als ein Zeichen (402; 404) des Telegramms (400) ist | und/oder Teil des ersten Zeichens (402) des Telegramms (400) ist. :
15. Vorrichtung nach einem der Ansprüche 1 bis 14, wobei die Peripherieeinheit (120) ferner dazu ausgebildet ist, eine Anzahl (124) der Takte während der Übertragung eines vorbestimmten Synchronisationszeichens des Telegramms (400) zu messen, und wobei die Korrektureinheit (130) ferner dazu ausgebildet ist, den Zeitparameter (115; 125) zu korrigieren abhängig vom Verhältnis der gemessenen Anzahl (124) der Takte und einer vorbestimmten Anzahl von Symbolen im Synchronisationszeichen und/oder abhängig von einem Quotienten der gemessenen Anzahl (124) der Takte und einem vorbestimmten Soll-Wert der Anzahl der Takte während der Übertragung des Synchronisationszeichens.
16. Verfahren (200) zum Korrigieren eines Zeitparameters (115; 125) in einem ersten Knoten (320) nach Maßgabe eines zweiten Knotens (310; 320), wobei das Verfahren (200) die folgenden Schritte umfasst oder initiiert: Bereitstellen (210) periodischer Takte im ersten Knoten (320); | Dekodieren (220) von Symbolen eines asynchron übertragenen Telegramms (400) vom zweiten Knoten (310; 320) und Messen einer Anzahl (124) der Takte | während der Übertragung einer Symbolfolge (406) aufeinanderfolgender Symbole | des Telegramms (400); und | Korrigieren (230) des Zeitparameters (115; 125) abhängig vom Verhältnis der | gemessenen Anzahl (124) der Takte und der Anzahl aufeinanderfolgender Symbole | in der Symbolfolge (406). | |
LU101216A 2019-05-15 2019-05-15 Technik zur Korrektur eiines Zeitparameters LU101216B1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
LU101216A LU101216B1 (de) 2019-05-15 2019-05-15 Technik zur Korrektur eiines Zeitparameters
CN202080035936.1A CN113826087B (zh) 2019-05-15 2020-05-13 用于修正时间参数的技术
PCT/EP2020/063268 WO2020229509A1 (de) 2019-05-15 2020-05-13 Technik zur korrektur eines zeitparameters
US17/610,173 US11907006B2 (en) 2019-05-15 2020-05-13 Technique for correcting a time parameter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
LU101216A LU101216B1 (de) 2019-05-15 2019-05-15 Technik zur Korrektur eiines Zeitparameters

Publications (1)

Publication Number Publication Date
LU101216B1 true LU101216B1 (de) 2020-11-16

Family

ID=67303489

Family Applications (1)

Application Number Title Priority Date Filing Date
LU101216A LU101216B1 (de) 2019-05-15 2019-05-15 Technik zur Korrektur eiines Zeitparameters

Country Status (4)

Country Link
US (1) US11907006B2 (de)
CN (1) CN113826087B (de)
LU (1) LU101216B1 (de)
WO (1) WO2020229509A1 (de)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3452330A (en) 1967-07-25 1969-06-24 Bell Telephone Labor Inc Asynchronous data transmission system with error detection and retransmission
US20050251701A1 (en) * 2002-01-07 2005-11-10 Lars-Berno Fredriksson Distributed control and monitoring system
DE102004039219B3 (de) * 2004-08-12 2006-02-09 Infineon Technologies Ag Schaltungsanordnung mit Mikrocontroller und integriertem Schaltkreis sowie Verfahren zum Betrieb einer derartigen Schaltungsanordnung
DE102007011684A1 (de) * 2007-03-09 2008-09-11 Robert Bosch Gmbh Verfahren, CAN-Bus-Treiber und CAN-Bus-System zur Rückgewinnung einer Taktfrequenz eines CAN-Busses
DE102011115965A1 (de) * 2011-10-13 2013-04-18 Abb Technology Ag Verfahren zur Baudratenerkennung für Feldgeräte
US10277385B1 (en) * 2018-05-27 2019-04-30 Nxp B.V. Slave node for CAN bus network

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6334219B1 (en) * 1994-09-26 2001-12-25 Adc Telecommunications Inc. Channel selection for a hybrid fiber coax network
DE10046920C2 (de) * 2000-09-21 2003-08-14 Siemens Ag Verfahren zum gesteuerten Einsynchronisieren auf ein nicht stabiles Taktsystem und hiermit korrespondierende Empfangseinheit
AT501510B1 (de) * 2004-07-19 2009-05-15 Univ Wien Tech Dezentrale fehlertolerante taktgenerierung in vlsi chips
US9459960B2 (en) * 2005-06-03 2016-10-04 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
CN100479361C (zh) * 2005-12-15 2009-04-15 中国人民解放军国防科学技术大学 同步媒介访问控制器
CN102035639B (zh) * 2009-09-30 2014-09-17 华为技术有限公司 时间同步方法、装置和系统
JP5426326B2 (ja) * 2009-11-09 2014-02-26 ルネサスエレクトロニクス株式会社 データ受信装置、データ受信方法、及びプログラム
DE102011087472B4 (de) * 2011-11-30 2016-10-20 Continental Automotive Gmbh Verfahren zur Synchronisation von Uhren in Knoten eines Fahrzeugnetzes und zur Durchführung des Verfahrens eingerichteter Knoten
EP2645638A1 (de) 2012-03-29 2013-10-02 Robert Bosch Gmbh Kommunikationssystem mit Ketten- oder Ringtopologie
CN103684678A (zh) * 2012-11-01 2014-03-26 国网电力科学研究院 一种用于uart的波特率自适应方法、装置及uart
US9419737B2 (en) * 2013-03-15 2016-08-16 Concio Holdings LLC High speed embedded protocol for distributed control systems
SG10201913539SA (en) * 2013-04-07 2020-02-27 Dolby Int Ab Signaling change in output layer sets
EP2800315B1 (de) * 2013-04-29 2018-07-04 Siemens Aktiengesellschaft Verfahren zur zeitsynchronisation in einem kommunikationsnetz
US10108578B2 (en) 2013-09-11 2018-10-23 Texas Instruments Incorporated Single wire communications interface and protocol
KR101677882B1 (ko) * 2013-09-26 2016-11-18 미쓰비시덴키 가부시키가이샤 통신 시스템, 대기 장치, 통신 방법 및 대기 프로그램
EP3404873B1 (de) * 2017-05-18 2019-10-02 Melexis Technologies NV Niedrigenergie-datenbusempfänger
DE102018121389B4 (de) * 2018-09-03 2021-09-16 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Bussystem
EP3700137B1 (de) * 2019-02-22 2023-08-02 Volvo Car Corporation Überwachung von can-knoten
US11283535B2 (en) * 2019-03-20 2022-03-22 Arris Enterprises Llc Method of remotely monitoring the timing performance of a PTP slave
MX2022013497A (es) * 2020-04-28 2023-01-16 Arris Entpr Llc Sistema para la recuperación de la fluctuación de un transcodificador.
US10924260B1 (en) * 2020-05-15 2021-02-16 Rohde & Schwarz Gmbh & Co. Kg Signal analysis method and signal processing module

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3452330A (en) 1967-07-25 1969-06-24 Bell Telephone Labor Inc Asynchronous data transmission system with error detection and retransmission
US20050251701A1 (en) * 2002-01-07 2005-11-10 Lars-Berno Fredriksson Distributed control and monitoring system
DE102004039219B3 (de) * 2004-08-12 2006-02-09 Infineon Technologies Ag Schaltungsanordnung mit Mikrocontroller und integriertem Schaltkreis sowie Verfahren zum Betrieb einer derartigen Schaltungsanordnung
DE102007011684A1 (de) * 2007-03-09 2008-09-11 Robert Bosch Gmbh Verfahren, CAN-Bus-Treiber und CAN-Bus-System zur Rückgewinnung einer Taktfrequenz eines CAN-Busses
DE102011115965A1 (de) * 2011-10-13 2013-04-18 Abb Technology Ag Verfahren zur Baudratenerkennung für Feldgeräte
US10277385B1 (en) * 2018-05-27 2019-04-30 Nxp B.V. Slave node for CAN bus network

Also Published As

Publication number Publication date
US20220221894A1 (en) 2022-07-14
CN113826087B (zh) 2024-09-20
CN113826087A (zh) 2021-12-21
US11907006B2 (en) 2024-02-20
WO2020229509A1 (de) 2020-11-19

Similar Documents

Publication Publication Date Title
EP2751956B1 (de) Verfahren und vorrichtung zur prüfung der korrekten funktion einer seriellen datenübertragung
EP2289201B1 (de) Vorrichtung und verfahren zur seriellen datenübertragung zwischen einem positionsmessgerät und einer steuerungseinheit
WO2012168294A2 (de) Hochpräzise synchronisierte messwerterfassung
DE19930661A1 (de) Meßumformer
EP2960737B1 (de) Vorrichtung und verfahren zum erzeugen eines triggersignals in einer positionsmesseinrichtung und positionsmesseinrichtung hierzu
EP3001627A1 (de) Verfahren und vorrichtung zur seriellen datenübertragung über einen bidirektionalen datenübertragungskanal
WO2013041296A1 (de) Verfahren und vorrichtung zum koppeln eines ersten sensors mit zumindest einem zweiten sensor
EP2853862B1 (de) Positionsmesseinrichtung und Verfahren zur Überprüfung eines Arbeitstaktsignals
DE102016203415A1 (de) Spc-sensor-schnittstelle mit partiellem paritätsschutz
EP1629331B1 (de) Variables feldgerät für die prozessautomatisierungstechnik
EP3864780B1 (de) Verfahren zum betreiben eines netzwerkteilnehmers in einem automatisierungskommunikationsnetzwerk
EP2701018B1 (de) Verfahren zur sicheren Parametrierung eines Feldgeräts
WO2005013020A1 (de) Verfahren zur automatischen anpassung eines busfähigen feldgerätes der prozessautomatisierungstechnik an das auf dem feldbus verwendete busprotokoll
LU101216B1 (de) Technik zur Korrektur eiines Zeitparameters
DE112020006988B4 (de) Zeitkorrekturvorrichtung, zeitkorrekturverfahren, und zeitkorrekturprogramm
DE102019112699B4 (de) Technik zur Korrektur eines Zeitparameters
EP2299614B1 (de) Vorrichtung und Verfahren zur Zeitsynchronisation in einem Kommunikationsnetz
EP2438712A1 (de) Verfahren zum betreiben eines datenübertragungssystems, datenübertragungssystem und computerprogrammprodukt
EP1421335B1 (de) Verfahren zur korrektur einer oszillatorfrequenz
DE102010003741A1 (de) Verfahren zum Datenaustausch
EP1934661A1 (de) Verfahren zum sicheren versenden von daten eines feldgerätes der prozessautomatisierungstechnik
DE102017102417A1 (de) Sensorbauelemente und verfahren zum übertragen von sensordaten und verfahren zum steuern eines sensorbauelements, vorrichtung und verfahren zum decodieren eines sensorsignals
DE102009054800A1 (de) Anordnung zur applikationsspezifischen Aufbereitung und Verfügbarmachung von gerätespezifischen Informationen eines Feldgeräts
DE102019132278A1 (de) Sensorvorrichtung, Steuerung sowie Verfahren zur Kommunikation zwischen einer Sensorvorrichtung und einer Steuerung
EP4372550A1 (de) Verfahren zur reduktion der unterbrechungszeiten bei einem software-update eines feldgeräts

Legal Events

Date Code Title Description
FG Patent granted

Effective date: 20201116