DE112019002669T5 - Datenverkehrsgestaltung auf plca-fähigen 10spe-netzwerken - Google Patents

Datenverkehrsgestaltung auf plca-fähigen 10spe-netzwerken Download PDF

Info

Publication number
DE112019002669T5
DE112019002669T5 DE112019002669.0T DE112019002669T DE112019002669T5 DE 112019002669 T5 DE112019002669 T5 DE 112019002669T5 DE 112019002669 T DE112019002669 T DE 112019002669T DE 112019002669 T5 DE112019002669 T5 DE 112019002669T5
Authority
DE
Germany
Prior art keywords
transmission
data
transmission time
node
time window
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.)
Pending
Application number
DE112019002669.0T
Other languages
English (en)
Inventor
Bernd Sostawa
Martin Miller
Michael Rentschler
Venkatraman Iyer
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.)
Microchip Technology Inc
Original Assignee
Microchip Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microchip Technology Inc filed Critical Microchip Technology Inc
Publication of DE112019002669T5 publication Critical patent/DE112019002669T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • H04L47/225Determination of shaping rate, e.g. using a moving window
    • 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/40143Bus networks involving priority mechanisms
    • H04L12/4015Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
    • 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/40143Bus networks involving priority mechanisms
    • H04L12/40156Bus networks involving priority mechanisms by using dedicated slots associated with a priority level
    • 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/407Bus networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/39Credit based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/568Load balancing, smoothing or shaping

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Ein 10SPE-Netzwerkknoten weist einen Prozessor, einen Speicher, Anweisungen in dem Speicher, die so ausgebildet sind, dass der Prozessor Daten generiert, die an andere Knoten gesendet werden sollen, und einen Netzwerkstapelspeicher auf. Der Netzwerkstapelspeicher weist eine Schaltung auf, die ausgebildet ist, um die Übertragung von Daten in einem Sendezeitfenster in einem Übertragungszyklus auf einem 10SPE-Netzwerk basierend auf einem Bandbreitenaufteilungsschema zu verzögern.

Description

  • PRIORITAT
  • Diese Anmeldung beansprucht die Priorität vor der vorläufigen US-Patentanmeldung Nr. 62/676,778 , die am 25. Mai 2018 eingereicht wurde und auf deren Inhalt hiermit in vollem Umfang Bezug genommen wird.
  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die vorliegende Offenbarung bezieht sich auf Ethernet-Kommunikation und insbesondere auf die Gestaltung des Datenverkehrs in PHY-Layer-Collision-Avoidance- (PLCA-) fähigen Netzwerken gemäß dem IEEE 802.3cg-Standard, auch bekannt als Single Twisted Pair Ethernet, 10SPE oder 10BASE-T1S.
  • HINTERGRUND DER ERFINDUNG
  • 10SPE ist ein vorgeschlagener Standard, der derzeit überarbeitet und weiterentwickelt wird. 10SPE definiert Ethernet Local Area-, Access- und Metropolitan Area Networks. Ethernet wird bei ausgewählten Betriebsgeschwindigkeiten angegeben und verwendet eine Common Media Access Control (MAC-) Spezifikation und Management Information Base (MIB). Das Carrier Sense Multiple Access with Collision Detection (CSMA/CD) MAC-Protokoll spezifiziert den Betrieb mit geteiltem Medium (Halbduplex) sowie den Vollduplexbetrieb. Geschwindigkeitsspezifische Media Independent Interfaces (MIIs) bieten eine architektonische und optionale Implementierungsschnittstelle für ausgewählte Physical Layer Entities (PHY). Die physikalische Schicht codiert Datenübertragungsblöcke für die Übertragung und decodiert empfangene Datenübertragungsblöcke mit der Modulation, die für die Betriebsgeschwindigkeit, das Übertragungsmedium und die unterstützte Verbindungslänge angegeben ist. Weitere spezifizierte Funktionen sind: Steuerungs- und Verwaltungsprotokolle sowie die Bereitstellung von Strom über ausgewählte Twisted-Pair-PHY- Typen.
  • 10SPE spezifiziert Ergänzungen und entsprechende Modifikationen von IEEE Std. 802.3 zum Hinzufügen von 10 Mb/s Physical Layer (PHY-) Spezifikationen und Verwaltungsparametern für den Betrieb und der damit verbundenen optionalen Stromversorgung für einzelne symmetrische Twisted-Pair-Kupferkabel.
  • ZUSAMMENFASSUNG
  • Ausführungsformen der vorliegenden Offenbarung können einen 10SPE-Netzwerkknoten aufweisen. Der Knoten kann einen Prozessor, einen Speicher und Anweisungen in dem Speicher aufweisen, die so ausgebildet sind, dass der Prozessor Daten generiert, die an andere Knoten gesendet werden. Der Knoten kann einen Netzwerkstapelspeicher aufweisen, der eine Schaltung aufweist, die ausgebildet ist, um die Daten in einem oder mehreren Übertragungszyklen zu senden. Ein gegebener Übertragungszyklus kann zumindest einen Sendezeitfenster für jeden der 10SPE-Netzwerkknoten zum Senden von Daten aufweisen. Die Schaltung kann weiterhin ausgebildet sein, um die Übertragung von Daten in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus basierend auf einem Bandbreitenaufteilungsschema bis zu einem zweiten Sendezeitfenster zu verzögern. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung weiterhin ausgebildet sein, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Übertragungszyklen zu verzögern. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung weiterhin ausgebildet sein, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Sendezeitfenstern für den 10SPE-Netzwerkknoten zu verzögern. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung weiterhin ausgebildet sein, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einem Guthabenabrechnungsschema zu verzögern, wobei das Senden von Daten eine Vielzahl von Guthabenpunkten kostet und Guthabenpunkte sich im Laufe der Zeit ansammeln. In Kombination mit einer der obigen Ausführungsformen kann der Übertragungszyklus eine Vielzahl von Sendezeitfenstern des 10SPE-Netzwerks aufweisen. In Kombination mit einer der obigen Ausführungsformen können das erste Sendezeitfenster und ein zweites Zeitfenster unterschiedliche Größen aufweisen. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung weiterhin ausgebildet sein, um die Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster zu verzögern, basierend auf einem anderen 10SPE-Netzwerkknoten, der zuvor Daten gesendet hat. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung weiterhin ausgebildet sein, um die Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster zu verzögern, basierend darauf, dass der 10SPE-Netzwerkknoten eine niedrigere Priorität aufweist, als einer der anderen Knoten. In Kombination mit einer der obigen Ausführungsformen können die Anweisungen weiterhin ausgebildet sein, um den Prozessor zu einer Verzögerung der Datenübertragung in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus bis zum zweiten Sendezeitfenster zu veranlassen, basierend auf einer Bestimmung der Inaktivität der anderen Knoten. In Kombination mit einer der obigen Ausführungsformen kann die Schaltung durch Anweisungen implementiert werden, die vom Prozessor ausgeführt werden sollen.
  • Ausführungsformen der vorliegenden Offenbarung können einen Produktionsgegenstand aufweisen. Der Gegenstand kann Anweisungen aufweisen, die, wenn sie vom Prozessor geladen und ausgeführt werden, den Betrieb der Schaltung einer der obigen Ausführungsformen implementieren.
  • Ausführungsformen der vorliegenden Offenbarung können eine elektronische Vorrichtung, einen Computer, eine Netzwerkkarte, eine mobile Vorrichtung oder einen Server aufweisen, einschließlich eines der Knoten der obigen Ausführungsformen. Ausführungsformen der vorliegenden Offenbarung können ein Netzwerk aufweisen, das zwei oder mehr Knoten einer der obigen Ausführungsformen aufweist.
  • Ausführungsformen der vorliegenden Offenbarung können Verfahren aufweisen, die von einem der Knoten ausgeführt werden, Anweisungen, wenn ausgeführt, Schaltungen, elektronische Vorrichtungen, Computer, Netzwerkkarten, mobile Vorrichtungen, Netzwerke oder Server der obigen Ausführungsformen.
  • Figurenliste
    • 1 ist eine Veranschaulichung eines beispielhaften 10SPE-Netzwerks gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 2 ist eine Veranschaulichung eines beispielhaften Übertragungszyklus gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 3 ist eine Veranschaulichung des Zeitpunkts eines beispielhaften Übertragungszyklus gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 4 ist eine Veranschaulichung eines Übertragungs- oder Buszyklus, bei dem ein gegebener Knoten seine Übertragungsmöglichkeit gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
    • 5 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem ACP-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
    • 6 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem ACT-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
    • 7 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem CBS-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
    • 8 ist eine Veranschaulichung von Guthabenwerten des Betriebs von 7 gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 9 ist eine Veranschaulichung einer digitalen Schaltung zum Implementieren eines Guthabenschemas gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 10 ist eine Veranschaulichung des Zuweisens von mehr als einer Kennung zu einem gegebenen Knoten gemäß Ausführungsformen der vorliegenden Offenbarung.
    • 11 ist eine Veranschaulichung mehrerer Größen der Datenübertragung gemäß Ausführungsformen der vorliegenden Offenbarung.
  • DETAILLIERTE BESCHREIBUNG
  • 1 ist eine Veranschaulichung eines beispielhaften 10SPE-Netzwerks 100 gemäß Ausführungsformen der vorliegenden Offenbarung. Das Netzwerk 100 kann eine beliebige geeignete Anzahl und Art von Knoten aufweisen. Beispielsweise kann das Netzwerk 100 Knoten 102, 104A, 104B, 104C aufweisen. Diese Knoten können ausgebildet sein, um über ein Netzwerk 120 miteinander zu kommunizieren. Das Netzwerk 120 kann auf jede geeignete Weise implementiert werden.
  • Der Knoten 102 kann ein Hauptknoten sein. Der Knoten 102 kann als Hauptknoten fungieren, indem er Netzwerkzuweisungen, Zuordnungen oder andere Verwaltungsaufgaben im Namen anderer Knoten im Netzwerk ausführt. Solche Aufgaben können mit dem Knoten 102 einer Netzwerkverwaltungsanwendung 112 ausgeführt werden.
  • Die Knoten 102, 104A, 104B, 104C können jeweils mit Netzwerktreibern oder einem Stapelspeicher 106 implementiert sein. Der Stapelspeicher 106 kann eine PHY-Schicht 108 aufweisen. Die Knoten 102, 104A, 104B, 104C können jeweils mit einer oder mehreren Endbenutzeranwendungen 110, Prozessoren 114 und Speicher 116 implementiert sein. Endbenutzeranwendungen 110, Netzwerkverwaltungsanwendung 112 und Netzwerktreiber oder -stapelspeicher 106 können Software, Bibliotheken, Funktionen, Skripte, Anwendungen, Code oder andere Anweisungen zur Ausführung durch Prozessoren 114 aufweisen. Die Anweisungen können in entsprechenden Speichern 116 gespeichert sein. Die Anweisungen können, wenn sie von Prozessoren 114 ausgeführt werden, Benutzeranwendungen 110, Netzwerkverwaltungsanwendung 112 und Netzwerktreiber oder -stapelspeicher 106 veranlassen, die Funktionalität der vorliegenden Offenbarung auszuführen. Speicher 116 können durch ein oder mehrere Speicherelemente jeder geeigneten Implementierung implementiert werden, ob Langzeit- oder Kurzzeitspeicher. Die Prozessoren 114 können von einem oder mehreren geeigneten Prozessoren, Kernen oder Mikrocontrollern implementiert werden.
  • Die Knoten 102, 104A, 104B, 104C können jede geeignete elektronische Vorrichtung implementieren, wie beispielsweise einen Computer, einen Laptop, einen Server, eine virtuelle Maschine, eine mobile Vorrichtung oder eine elektronische Kfz-Steuereinheit (ECU). Die Knoten 102, 104A, 104B, 104C können jeweils unterschiedliche Implementierungen von Endbenutzeranwendungen 110 aufweisen. Endbenutzeranwendungen 110 erfordern möglicherweise die Kommunikation mit anderen Endbenutzeranwendungen 110 oder anderen Knoten 102, 104A, 104B, 104C. Eine solche Kommunikation kann beispielsweise unter Verwendung von 10SPE über das Netzwerk 120 durchgeführt werden.
  • Obwohl in 1 eine bestimmte Anzahl von Knoten gezeigt ist, kann das Netzwerk 100 eine beliebige geeignete Anzahl und Kombination von 10SPE-fähigen Knoten aufweisen.
  • Jeder Knoten kann ausgebildet sein, um eine Datenverkehrsgestaltung durchzuführen. In einer Ausführungsform kann eine solche Gestaltung in Hardware unter Verwendung digitaler Logik durchgeführt werden. In einer anderen Ausführungsform können Hooks in der Hardware jedes Knotens implementiert sein, so dass die Firmware auch den Datenverkehr beobachten und gestalten kann. Das Gestalten des Datenverkehrs kann durchgeführt werden, um Bandbreitengerechtigkeit oder Priorisierung für zeitkritische Knoten zu erzwingen.
  • Die Kommunikation zwischen den Knoten 102, 104A, 104B, 104C kann unter Verwendung von Übertragungszyklen und Datenübertragungsblöcken durchgeführt werden, die in den folgenden Merkmalen gezeigt sind. Jeder der Knoten 102, 104A, 104B, 104C kann ausgebildet sein, um unter Verwendung von Datenübertragungsblöcken, die den folgenden Ausführungsformen entsprechen, miteinander zu kommunizieren.
  • 2 ist eine Veranschaulichung 200 eines beispielhaften Übertragungszyklus gemäß Ausführungsformen der vorliegenden Offenbarung. Der Übertragungszyklus kann für das Netzwerk 100 nach 1 sein.
  • Eine erste Instanz eines Übertragungszyklus 202A kann Sendezeitfenster für jeden Knoten des Netzwerks aufweisen. Wenn sich N Knoten im Netzwerk befinden, können N Sendezeitfenster in einem bestimmten Übertragungszyklus vorhanden sein. Beispielsweise kann der Übertragungszyklus 202A Sendezeitfenster 210, 212, 214 aufweisen. Jedes solche Sendezeitfenster kann einem gegebenen Knoten zugewiesen sein. Das Sendezeitfenster kann mit einer Kennung (0 ... N-1) identifiziert werden, die für den Übertragungszyklus eindeutig ist. Die Kennung kann einen Absender des Datenpakets identifizieren. Jedes Sendezeitfenster kann bis hin zu einer bestimmten Datenmenge 206 aufweisen. Wie weiter unten erläutert, kann in einigen Ausführungsformen ein zugewiesenes Sendezeitfenster keine Daten aufweisen. Die Kennung kann in den Daten 206 vorhanden sein. Die Kennung kann einen Absender der Daten identifizieren. In verschiedenen Ausführungsformen kann das Sendezeitfenster für einen gegebenen Knoten unter Bedingungen weggelassen werden, die nachstehend ausführlicher erörtert werden. Die Sendezeitfenster 210, 212, 214 können durch eine Ruheperiode 208 getrennt sein. Jeder Übertragungszyklus 202 kann durch ein Markierungssignal (Beacon) 204 initiiert werden. Das Markierungssignal 204 kann eine geeignete Information aufweisen, um anzuzeigen, dass der Übertragungszyklus beginnt. Der Übertragungszyklus 202A kann enden und ein anderer Übertragungszyklus 202B kann beginnen. Die Teilnahme einzelner Knoten an einem gegebenen Übertragungszyklus 202 kann zwischen den Übertragungszyklen variieren.
  • Nach dem Empfang des Übertragungszyklus 202 kann ein gegebener Knoten diesen analysieren. Das Signal 216 kann analysiert werden, um diesen Übertragungszyklus 202 zu bestimmen. Die Ruhezeit 208 oder das Fehlen von Daten kann interpretiert werden, um zu bestimmen, dass als nächstes ein separater Datenteil des Übertragungszyklus 202 empfangen werden soll. Die Daten 206 können analysiert werden, um zu bestimmen, ob Daten zu oder von einem gegebenen Knoten enthalten sind. Der gegebene Knoten kann seine eigenen Daten 206 in den Übertragungszyklus einfügen.
  • Der Übertragungszyklus kann die Verwendung von PLCA zur Gestaltung des Datenverkehrs im Netzwerk widerspiegeln. PLCA kann in IEEE P802.3cg angegeben werden. PLCA bietet möglicherweise Zugriffsgerechtigkeit für Knoten im Netzwerk. Die Zugriffsgerechtigkeit kann die Fähigkeit jedes Knotens aufweisen, in einem gegebenen Übertragungszyklus 202 auf das Netzwerk zuzugreifen. PLCA bietet jedoch keine Bandbreitengerechtigkeit oder Priorisierung zwischen den Knoten. Bandbreitengerechtigkeit wird möglicherweise nicht bereitgestellt, da gegebene Knoten, obwohl Zugriffsgerechtigkeit bereitgestellt wird, möglicherweise mehr Daten in ihre Datenpakete einfügen als andere Knoten. Darüber hinaus kann die Zugriffsgerechtigkeit keine Priorisierung zwischen den Knoten ermöglichen. Ausführungsformen der vorliegenden Offenbarung können Bandbreitengerechtigkeit und Priorisierung zwischen den Knoten bereitstellen. PLCA und Verbesserungen davon können in digitaler Logik oder Anweisungen zur Ausführung in einem Netzwerkstapelspeicher implementiert werden. PLCA und Verbesserungen davon können Hooks für Firmware aufweisen, um den Datenverkehr zu beobachten und zu gestalten.
  • Bei den meisten Implementierungen eines kollisionsbasierten Netzwerks beträgt die maximale Bandbreitennutzung möglicherweise nur 60%. Darüber hinaus kann es ohne deterministisches Verhalten möglicherweise nicht für sicherheitskritische Anwendungen verwendet werden. Stattdessen kann mit PLCA ein Masterknoten wie der Knoten 102 den Netzwerkzugriff auf der physischen Schicht organisieren. Dies kann Kollisionen verhindern, deterministisches Verhalten bereitstellen und die Bandbreite voll ausnutzen.
  • In 2 kann jedem PHY der jeweiligen Knoten eine statische ID (0 ... N-1) zugewiesen werden, die in den Daten 206 enthalten ist. Der Hauptknoten kann eine ID von „0“ aufweisen. Der Hauptknoten kann ein Markierungssignal 204 senden, das einen neuen Übertragungszyklus startet. Nach dem Empfang kann jeder der anderen Knoten die Möglichkeit aufweisen, Daten innerhalb eines jeweiligen Sendezeitfensters 210, 212, 214 über die jeweilige PHY-Hardware oder -Software zu senden. In einer Ausführungsform kann ein Knoten die Möglichkeit zum Senden von Daten in einem jeweiligen Sendezeitfenster 210, 212, 214 übergehen oder bereitstellen. Andere Knoten können ausgebildet sein, um zu erkennen, dass der gegebene Knoten seine Gelegenheit zum Senden von Daten übersprungen hat, wenn die Ruhezeit 208 einen gegebenen Schwellenwert überschreitet. Dann kann das nächste Sendezeitfenster beginnen.
  • 3 ist eine Veranschaulichung 300 des Zeitpunkts eines beispielhaften Übertragungszyklus gemäß Ausführungsformen der vorliegenden Offenbarung. Die minimale und maximale Zeit zum Abschließen eines Übertragungs- oder Buszyklus kann berechnet werden.
  • Die minimale Zeit, die benötigt wird, um einen vollständigen Übertragungszyklus abzuschließen, kann als Minimum Bus Cycle Time  =  tBeacon + N* tSilence
    Figure DE112019002669T5_0001
    angegeben werden, wobei tBeacon die Zeit ist, die für die Ausgabe eines Markierungssignals benötigt wird, tSilence die Zeit ist, die für die Ruhezeit zwischen einem Paar von Sendezeitfenstern benötigt wird und N ist die Anzahl der Knoten oder Sendezeitfenster. Eine solche Mindestzeit würde auftreten, wenn alle Knoten die Möglichkeit hätten, ihre jeweiligen Sendezeitfenster zu verwenden. Die maximale Zeit, die benötigt wird, um einen vollständigen Übertragungszyklus abzuschließen, kann als Maximum Bus Cycle Time  =  tBeacon + N* tSilence + N*tMTU
    Figure DE112019002669T5_0002
    angegeben werden, wobei tBeacon die Zeit ist, die für die Ausgabe eines Markierungssignals benötigt wird, tSilence die Zeit ist, die für die Ruhezeit zwischen einem Paar von Sendezeitfenstern benötigt wird, tMTU die Zeit ist, die zum Senden der am längsten zulässigen Datenlänge benötigt wird (MTU - maximum transmission unit), N die Anzahl der Knoten oder Sendezeitfenster ist. Eine solche maximale Zeit würde auftreten, wenn alle Knoten die maximale Zeit zwischen den Sendezeitfenster zum Senden ihrer Daten verwenden würden (wodurch die volle Menge an Ruhezeit gebraucht wird), alle Knoten ihre Sendezeitfenster zum Senden von Daten verwenden würden und alle Knoten die maximale Datenmenge in ihren jeweilige Sendezeitfenstern senden würden. In einer Ausführungsform kann eine MTU 64 Bytes lang sein. Die Ruhezeitunterbrechungsperioden können in diese Berechnung einbezogen werden, da ein bestimmter Knoten möglicherweise die Dauer der Ruhezeitunterbrechungsperiode abzüglich (beispielsweise) einer Nanosekunde vor dem Senden abwartet.
  • Ausführungsformen der vorliegenden Offenbarung können Verbesserungen gegenüber PLCA bereitstellen, indem Knoten mit größeren Datenpaketen, Bandbreitenüberverbrauch, niedrigerer Priorität oder Best-Effort-Datenverkehr in verschiedenen Übertragungszyklen Übertragungsmöglichkeiten (TO) erhalten. Darüber hinaus können Ausführungsformen der vorliegenden Offenbarung Verbesserungen gegenüber PLCA bereitstellen, indem Knoten mit zeitsensitivem Datenverkehr versehen werden, um mehr Übertragungsmöglichkeiten zu erhalten. Richtlinien für einzelne Knoten, um TOs verwerfen, können von einem Hauptknoten festgelegt und von einzelnen Knoten implementiert werden. Richtlinien zum Bereitstellen von Knoten mit mehr Übertragungsmöglichkeiten können von einem Masterknoten bereitgestellt werden, indem einem einzelnen Knoten mehrere IDs zugewiesen werden.
  • In einer Ausführungsform können Knoten TOs gemäß einem Application Controlled PLCA (ACP-) Schema erzielen. In einer anderen Ausführungsform können Knoten TOs gemäß einem anwendungsgesteuerten Zeitmultiplexalgorithmus (ACT) verworfen werden. In einer weiteren Ausführungsform können Knoten TOs gemäß einem Credit-Based-Shaping- (CBS-) Schema verworfen werden. In einer weiteren Ausführungsform kann ACP oder ACT unter Verwendung eines CBS-Schemas implementiert werden.
  • 4 ist eine Veranschaulichung eines Übertragungs- oder Buszyklus 402, bei dem ein gegebener Knoten seine Übertragungsmöglichkeit gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt. Ein Markierungssignal 204 kann im Übertragungszyklus 402 ausgegeben werden. Knoten 0 kann seinen TO nehmen und Daten 404 übertragen. Knoten 1 kann seinen TO nicht nehmen und somit keine Daten 406 übertragen, wobei nur die Ruhezeit 412 verbleibt. Nach die Ruhezeit 412 für eine maximale Ruhezeitperiode abläuft, kann der Knoten 2 seinen TO nehmen und Daten 408 übertragen. Später kann der Knoten N1 seinen TO nehmen und Daten 410 übertragen. Zwischen verschiedenen Sendezeitfenstern kann Ruhezeit 414 auftreten. Ein weiterer Zyklus kann beginnen, beginnend mit dem Markierungssignal 204 vom Masterknoten.
  • 5 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem ACP-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
  • In ACP kann ein bestimmter Knoten, der verzögert werden soll, auf eine bestimmte Anzahl von Übertragungsmöglichkeiten warten, bevor er das Sendezeitfenster tatsächlich verwendet. Wenn einem bestimmten Knoten eine einzelne Kennung zugewiesen wird, ähnelt diese Technik möglicherweise ACT, mit Ausnahme eines Zeitversatzes. Wenn einem bestimmten Knoten jedoch mehrere Kennungen zugewiesen werden, kann der angegebene Knoten eine ACP-Wartezeit schneller durchlaufen als ein anderer Knoten, dem eine einzelne Kennung zugewiesen wurde. Solche Mehrfachkennungen können innerhalb eines einzelnen Übertragungszyklus mehrere Sendezeitfenster für einen bestimmten Knoten ergeben.
  • Ein emulierter Carrier Sense (CRS) 502 kann als Bandbreitenunterdrückungssignal verwendet werden. Das emulierte CRS 502 kann einen Träger auf dem Bus emulieren, so dass eine gegebene Steuerung in einem Knoten glaubt, dass der Bus gerade verwendet wird und der Knoten nicht sendet. Emuliertes CRS 502 kann lokal für jeden Knoten erzeugt werden und kann von Software oder Schaltungen auf dem Knoten verwendet und ausgegeben werden, um Hardware zu übertragen. Wenn also ein gegebener Knoten sein TO nicht nehmen soll, kann der gegebene Knoten emuliertes CRS 502 an seine eigene Ausrüstung ausgeben. Das emulierte CRS 502 kann eine tatsächliche CRS-Signalleitung emulieren, die als Eingang in die Hardware dient. Das emulierte CRS 502 kann mit einer tatsächlichen CRS-Signalleitung logisch ODER-verknüpft werden.
  • Ein Markierungssignal 512 kann zu Beginn eines Übertragungszyklus 520 gesendet werden. Daten können in Sendezeitfenstern für Knoten 0 (514), Knoten 1 (516) und Knoten 2 (518) gesendet werden.
  • In 5 kann emuliertes CRS 502 für Knoten 1 (516) gezeigt sein. Wenn emuliertes CRS 502 aktiviert ist (zum Beispiel hoch), kann Knoten 1 (516) seinen TO aufgeben, wie in 510 gezeigt. Wenn emuliertes CRS 502 deaktiviert ist (zum Beispiel niedrig), kann Knoten 1 (516) seinen TO nehmen, wie in 508 gezeigt. Somit kann in 5 Knoten 1 (516) sein erstes TO nehmen, seine nächsten zwei TOs aufgeben und sein viertes TO nehmen.
  • 6 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem ACT-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt. Ein Markierungssignal 612 kann zu Beginn eines Übertragungszyklus 620 gesendet werden. Daten können in Sendezeitfenstern für Knoten 0 (614), Knoten 1 (616) und Knoten 2 (618) gesendet werden. Ein emuliertes CRS 602 ist zusammen mit einem Markierungssignal 604 gezeigt, das der Verwendung des Markierungssignal 612 in einem Übertragungszyklus entspricht.
  • ACT kann dazu führen, dass der Knoten wartet, bis eine bestimmte Anzahl von Markierungssignalen 604 eingetreten ist, bevor er erneut sendet. ACT und ACP können für einen bestimmten Knoten ausgeführt werden, beispielsweise nachdem der angegebene Knoten ein großes Datenpaket gesendet hat oder wenn ein Knoten Datenverkehr mit niedrigerer Priorität aufweist. In einer Ausführungsform können Knoten, wenn in einem bestimmten Zyklus keine Knoten im Netzwerk senden, den nächsten TO übernehmen, unabhängig von den ansonsten vorhandenen Bandbreitenbeschränkungen. Die Bandbreitenunterdrückung auf einem gegebenen Knoten kann mit emuliertem CRS 602 durchgeführt werden. Wie oben beschrieben, kann CRS ein Trägersignal auf einem Bus aufweisen, so dass Teile des Knotens glauben, dass das Netzwerk oder der Bus nicht verfügbar ist und zu sendende Daten verzögert oder gehalten werden. Emuliertes CRS 602 kann in Kombination mit tatsächlichen CRS-Signalen verwendet werden.
  • In 6 kann Knoten 1, sobald der emulierte CRS 602 zum Beispiel für den Knoten aktiv (hoch) ist, seinen Sendezeitfenster 616 für einen Impuls des Markierungssignals 604 ergeben. Wenn das emulierte CRS 602 aktiv bleibt, kann der Knoten 1 (616) weiterhin seinen Sendezeitfenster 616 für einen anderen Impuls des Markierungssignals 604 liefern. Beispielsweise können Daten für den Knoten 1 in den Zeitfenstern 622, 628 gesendet werden, aber in den Zeitfenstern 624, 626 weggelassen werden, in denen stattdessen Ruhezeit verwendet werden kann.
  • Wenn der Übertragungszyklus 620 mehrere Sendezeitfenster für Knoten 1 in einer einzelnen Instanz des Zyklus aufweisen würde, würden diese mehreren Sendezeitfenster für einen einzelnen Impuls des Markierungssignals 604 erbracht werden, wenn CRT 602 aktiviert ist.
  • 7 ist eine Veranschaulichung eines Knotens, der seine Übertragungsmöglichkeit gemäß einem CBS-Schema gemäß Ausführungsformen der vorliegenden Offenbarung nicht nutzt.
  • Ein CBS-Schema kann eine bestimmte Anzahl von Guthabenpunkten oder anderen Einheiten erfordern, damit ein gegebener Knoten seine Daten in einem jeweiligen Sendezeitfenster sendet. Die Guthabenpunkte können im Laufe der Zeit anwachsen. Das Senden von Daten kann eine bestimmte Anzahl von Guthabenpunkten verringern. Ein Knoten kann mit einer anfänglichen Anzahl von Guthabenpunkten initialisiert werden. Unterschiedlichen Knoten kann eine unterschiedliche Anzahl von Anfangsguthaben, Guthabenaufbauraten oder Guthabenkosten zum Senden von Daten zugewiesen werden.
  • Ein Markierungssignal 712 kann zu Beginn eines Übertragungszyklus 720 gesendet werden. Daten 706 können in Sendezeitfenstern für Knoten 0 (714), Knoten 1 (716) und Knoten 2 (718) gesendet werden. Ein emuliertes CRS 702 kann verwendet werden, um zu bewirken, dass ein gegebener Knoten sein TO 722 einsetzt oder sein TO 724 verwirft.
  • 8 ist eine Veranschaulichung von Guthabenwerten des Betriebs von 7 gemäß Ausführungsformen der vorliegenden Offenbarung.
  • Wie oben diskutiert, kann mit CBS die Fähigkeit zum Senden von Datenpaketen durch Guthabenpunkte hergestellt werden. Wenn nicht genügend Guthabenpunkte zum Senden verfügbar sind, nimmt der Knoten möglicherweise kein TO an. Guthabenpunkte werden im Laufe der Zeit möglicherweise wieder aufgefüllt, oder wenn im Netzwerk nur wenig Datenverkehr verwendet wird, werden sie möglicherweise wiederhergestellt. Beim Senden von Daten können Guthabenpunkte verbraucht werden.
  • Die Kurve 802 kann einen Wert eines Zählers von Guthabenpunkten für einen gegebenen Knoten über die Zeit darstellen. Die Zeit kann in Gesamtbytes gemessen werden, die am Knoten gesendet oder empfangen werden. Saturated High (SH) 804 kann eine Begrenzung der maximalen Anzahl von Guthabenpunkten anzeigen, die angesammelt werden können. Transmit byte (TB) 806 kann eine Verringerung der Guthabenpunkte anzeigen, wenn der Knoten Daten einer bestimmten Größe sendet. Das Receive Byte (RB) 810 kann im Laufe der Zeit eine Zunahme der Guthabenpunkte anzeigen. Beispielsweise kann es nach dem Senden eines Bytes sieben Zyklen dauern, um das zum Senden des Bytes erforderliche Guthaben wieder aufzufüllen. In einer Ausführungsform kann eine Initial Number (IN) von Guthabenpunkten auf SH 804 eingestellt werden. Die Kurve 812 spiegelt die fortgesetzte Steigung oder den Anstieg der Guthabenpunkte für die Kurve 802 wider, wenn SH 804 nicht vorhanden war.
  • Die untere Grenze (LM) 806 kann eine Grenze anzeigen, die, wenn die Kurve 802 LM 806 erreicht, das Senden zusätzlicher Bytes unterdrücken oder verzögern kann. Eine Unterdrückung oder Verzögerung kann durch emuliertes CRS durchgeführt werden. In einer Ausführungsform kann es einem Knoten gestattet sein, ein Datenpaket zu beenden, das sich mitten in der Übertragung befindet, bevor das zusätzliche Senden unterdrückt wird, sobald LM 806 erreicht ist. Dies ist beispielsweise bei 814, 816 gezeigt.
    Saturated Low (SL) 808 kann eine Mindestanzahl von Guthabenpunkten darstellen, unterhalb derer das Senden zusätzlicher Guthabenpunkte bei der Bandbreitenverteilung nicht gegen den Knoten angerechnet wird. SL 808 kann zum Beispiel erreicht werden, wenn ein besonders großes Datensegment gesendet wird, während die Kurve 802 (die das Guthaben darstellt) kaum über LM 806 liegt, wodurch das Senden eines Datenpakets 816 ermöglicht wird. SL 808 kann somit ein absolutes Minimum darstellen. Zum Beispiel darf Kurve 802 (die das Guthaben darstellt) möglicherweise keine negative Menge an Guthaben aufweisen. In einem anderen Beispiel kann die Kurve 802 (die das Guthaben darstellt) möglicherweise nicht mehr bestraft werden als SL 808. Flache Teile der Kurve 802 können das Guthaben konstant darstellen, da kein Datenverkehr auf dem Bus vorhanden ist (d. H. Ruhezeit). Daher würden die Guthabenpunkte in einer solchen Situation nicht zunehmen oder abnehmen, wenn keine Guthabenpunkte angesammelt würden.
  • Wenn die Kurve 802 (die das Guthaben darstellt) über LM 806 steigt, können die Daten erneut gesetzt werden. Beispielsweise kann bei 822 das Senden deaktiviert sein, aber sobald ein Datenpaket beendet ist und der Knoten im Laufe der Zeit Guthabenpunkte wiederherstellt, kann bei 820 das Senden wieder aktiviert werden.
  • Kurve 802 und die Anzahl der Guthabenpunkte können unter bestimmten Umständen auf IN zurückgesetzt werden. Wenn beispielsweise der Bus während eines gesamten Übertragungszyklus leer war, kann die Kurve 802 (die das Guthaben darstellt) auf den IN-Guthabenwert gesetzt werden. In einem anderen Beispiel kann, wenn andere (aber nicht alle) Knoten ihren TO innerhalb eines Übertragungszyklus verwerfen, die Kurve 802 (die das Guthaben darstellt) auf IN gesetzt werden.
  • Einem gegebenen Knoten kann eine höhere oder niedrigere Priorität zugewiesen werden, indem beispielsweise SH 804 oder IN angehoben oder abgesenkt, die Größe von TB 809 verringert oder vergrößert, RB 810 erhöht oder verringert, LM 806 abgesenkt oder angehoben oder SL 808 angehoben oder abgesenkt wird. Darüber hinaus kann einem bestimmten Knoten eine höhere Priorität zugewiesen werden, indem seine Guthabenzahl unter mehr Bedingungen auf IN zurückgesetzt wird. Einem bestimmten Knoten kann eine niedrigere Priorität zugewiesen werden, indem seine Guthabenzahl unter weniger Bedingungen auf IN zurückgesetzt wird. Beispielsweise kann ein gegebener Knoten in seiner Priorität gesenkt werden, indem zwei leere Übertragungszyklen benötigt werden, um die Guthabenzahl auf IN wiederherzustellen, oder in seiner Priorität erhöht werden, indem die Guthabenzahl wiederhergestellt wird, wenn ein oder mehrere andere Knoten ihre TOs innerhalb eines Übertragungszyklus verworfen haben.
  • In einer Ausführungsform kann CBS verwendet werden, um ACP oder ACT zu implementieren. Zum Beispiel kann das Verwenden eines TO eine bestimmte Anzahl von Guthabenpunkten abziehen, oder das Verwerfen eines TO kann eine bestimmte Anzahl von regenerierten Guthabenpunkten wert sein. In einem anderen Beispiel kann das Übergehen eines Übertragungszyklus eine bestimmte Menge an regenerierten Guthabenpunkte wert sein, oder die Regenerationsrate kann mit der Länge des Übertragungszyklus in Beziehung stehen. In einem weiteren Beispiel kann der Empfang eines Markierungssignals verwendet werden, um eine bestimmte Anzahl von Guthabenpunkten zu regenerieren.
  • Die Fair-Share-Bandbreitenzuweisung kann von ACP, ACT oder CBS durchgeführt werden, die ACP oder ACT implementieren. Wenn beispielsweise ein gegebener Knoten Daten niedrigere Priorität aufweist, zu sendende Best-Effort-Daten oder kürzlich große Datenpakete gesendet hat, kann der gegebene Knoten die Anzahl der empfangenen Zeitfenster und die Anzahl der empfangenen Markierungssignale zählen. Ein solcher Knoten mit niedrigerer Priorität kann darauf beschränkt sein, nur ein Datenpaket für beispielsweise zwei, drei oder mehr empfangene Markierungssignals zu senden. In ähnlicher Weise kann ein Knoten mit niedrigerer Priorität darauf beschränkt sein, ein Datenpaket für jedes von beispielsweise zwei, drei oder mehr verfügbaren Sendezeitfenstern zu senden. Diese Zählungen können durch reine Zählungen in ACP oder ACT implementiert oder in ein Guthabenschema für CBS übersetzt werden, das ACP oder ACT implementiert.
  • Ein Masterknoten kann verschiedenen Knoten basierend auf vorhandenem Datenverkehr, Datenverkehrstrends, Datennutzung, Benutzereinstellungen oder einer anderen geeigneten Richtlinie Priorität zuweisen. Darüber hinaus kann ein gegebener Knoten basierend auf diesen Faktoren seine eigene Priorität bestimmen. Die spezifischen Werte, die für verschiedene Aspekte von ACP, ACT oder CBS verwendet werden, können vom Hauptknoten bestimmt, aber von den jeweiligen Knoten implementiert werden. Die jeweiligen Knoten können die Richtlinien implementieren, indem sie Software mit Firmware oder Netzwerkhardware verbinden.
  • 9 ist eine Veranschaulichung einer Schaltung 900 zum Implementieren eines CBS-Schemas gemäß Ausführungsformen der vorliegenden Offenbarung. In jedem Knoten kann eine Instanz der Schaltung 900 implementiert sein.
  • Verschiedene Ereignisse 920 können von der Schaltung 900 empfangen werden. Diese Ereignisse können RB- (Receive Byte), TE- (Transmit Packet End), BN-(Markierungssignal/Beacon), TB- (Transmit Byte), TO- (Transmit Opportunity), EC- (Empty Cycle) Ereignisse aufweisen . Die Register 922, 924, 926, 928, 930, 932 können positive oder negative Guthabenwerte aufweisen, die einem bestimmten Ereignis zugeordnet sind. Der Wert des gegebenen Ereignisses kann an eine Addierschaltung 912 bereitgestellt werden, die Werte akkumulieren und ihre Ergebnisse in die Sättigungslogik 914 liefern kann. Die Sättigungslogik 914 kann ausgebildet sein, um Werte aus den Registern 902, 904 für Werte von SH und SL zu lesen, und die Guthabenbewegung auf einen Wert zwischen diesen Werten begrenzen. Die Guthabenlogik 916 kann ausgebildet sein, um bei Interrupts, Initialisierung, Nachrichten mit hoher Priorität, Erhöhung der Priorität des Knotens oder anderen Kriterien einen IN-Wert von Guthabenpunkten wiederherzustellen.
  • Ein durch die Guthabenlogik 916 erzeugter Guthabenwert kann bei 910 mit einem in Register 908 gespeicherten Schwellenwert verglichen werden, unterhalb dessen ein TO verworfen werden kann.
  • Die Entscheidung 938 kann stattdessen mit Software oder Firmware getroffen werden. Empfangene Bytes, Übertragungsereignisse, Sendebytes, TOs, Markierungssignale und andere Ereignisse können gezählt und an die Software gemeldet werden. Software kann diese Werte verwenden, um zu bestimmen, ob Übertragungsmöglichkeiten verworfen werden sollen. Dies kann über einen GPIO-Pin übertragen werden, wie in 934 gezeigt. Eine solche Firmware kann durch Anweisungen zur Ausführung durch einen Prozessor oder Mikrocontroller implementiert werden.
  • Darüber hinaus kann die Entscheidung 938 mit einer Kombination aus Firmware und Hardware getroffen werden. Beispielsweise kann die Ausgabe der Schaltung 900 gegen eine empfangene Nachricht ausgewertet werden, dass der gegebene Knoten Daten mit hoher Priorität senden soll. In einem solchen Fall kann eine Entscheidung 938, den TO zu verwerfen, durch Firmware oder Software außer Kraft gesetzt werden. In einem anderen Beispiel kann der Ausgang der Schaltung 900 gegen eine Feststellung bewertet werden, dass der Übertragungsbus nicht von anderen Knoten verwendet wurde. Wenn der Übertragungsbus nicht von anderen Knoten verwendet wurde, kann eine Entscheidung 938, den TO zu verwerfen, durch Firmware oder Software überschrieben werden.
  • Die Ausgabe der Logik 910 kann mit einem GPIO-Pin 934 ODER-verknüpft werden. Der GPIO-Pin 934 kann widerspiegeln, ob Nachrichten zum Erzwingen eines Datenpakets oder zum außer Kraft setzen eines Datenpakets empfangen wurden. Der Ausgang des ODER-Gatters 940 kann basierend auf einem Softwaresignal 946 selbst mit dem GPIO-Pin 934 gemultiplext werden, um die Logik 910 zu ignorieren und den GPIO-Pin 934 allein zu verwenden. Die Ausgabe des Multiplexers 942 kann die Entscheidung 938 ergeben.
  • 10 ist eine Veranschaulichung des Zuweisens von mehr als einer Kennung zu einem gegebenen Knoten gemäß Ausführungsformen der vorliegenden Offenbarung.
  • Dem Knoten 1 (1002) kann das Sendezeitfenster 0 zugewiesen werden. Dem Knoten 2 (1004) können die Sendezeitfenster 1 und 3 zugewiesen werden. Dem Knoten 3 (1006) kann das Sendezeitfenster 2 zugewiesen werden. Somit können dem Knoten 2 (1004) mehr Möglichkeiten für einen TO gegeben werden als Knoten 3 (1006). Diese zusätzlichen Sendeplätze können unabhängig von ACT, ACP oder CBS sein oder in Verbindung mit ACT, ACP oder CBS verwendet werden. Jeden Übertragungszyklus kann ein Markierungssignal 1008 starten.
  • In diesem Schema können einem Knoten, der eine höhere Priorität hat oder Gelegenheiten für eine höhere Priorität benötigt, die dennoch weggelassen werden können, mehrere PLCA-Kennungen für Sendezeitfenster zugewiesen werden.
  • 11 veranschaulicht verschiedene Größen der Datenübertragung gemäß Ausführungsformen der vorliegenden Offenbarung. Es werden zwei Beispiele für relative MTU-Größen gezeigt. Eine „große“ MTU kann eine MTU mit Standardgröße sein, während eine verkürzte MTU beispielsweise die Hälfte oder ein Viertel der Zeit einer Standard-MTU betragen kann. Es können mehr Permutationen und vergleichsweise größere oder kleinere Größen verwendet werden. Die Größen können von einem Masterknoten festgelegt werden.
  • Ein gegebenes Sendezeitfenster kann in einer großen MTU 1102 als relativ größer oder in einer kleinen MTU 1106 als relativ kleiner bezeichnet werden. Insgesamt kann die Verwendung einer oder mehrerer großer MTUs 1102 eine relativ größere maximale Buszykluszeit 1104 ergeben. Umgekehrt kann die Verwendung einer oder mehrerer MTUs 1102 relativ kürzere maximale Buszykluszeit 1108 ergeben. In einer Ausführungsform können alle Sendezeitfenster eines gegebenen Zyklus dieselbe MTU-Länge aufweisen. In einer anderen Ausführungsform können Sendezeitfenster eines gegebenen Zyklus gemäß einem gegebenen Knoten variieren.
  • Beispielsweise kann einem Knoten, dem in 10 mehrere Kennungen zugewiesen wurden, eine kleine MTU 1106 zugewiesen werden. Anderen Knoten kann eine große MTU 1102 zugewiesen werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 62/676778 [0001]

Claims (20)

10 SPE-Netzwerkknoten, der aufweist: einen Prozessor; einen Speicher; Anweisungen in dem Speicher, die so ausgebildet sind, dass der Prozessor Daten generiert, die an andere Knoten gesendet werden sollen; und einen Netzwerkstapelspeicher mit einer Schaltung, der ausgebildet ist, um: die Daten in einem oder mehreren Übertragungszyklen zu senden, wobei ein gegebener Übertragungszyklus für jeden der 10SPE-Netzwerkknoten zumindest ein Sendezeitfenster zum Senden von Daten aufweist; und die Übertragung von Daten basierend auf einem Bandbreitenaufteilungsschema in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus bis zu einem zweiten Sendezeitfenster zu verzögern.
10SPE-Netzwerkknoten nach Anspruch 1, wobei die Schaltung weiterhin ausgebildet ist, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Übertragungszyklen zu verzögern.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 2, wobei die Schaltung weiterhin ausgebildet ist, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Sendezeitfenstern für den 10SPE-Netzwerkknoten zu verzögern.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 3, wobei die Schaltung weiterhin ausgebildet ist, um die Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einem Guthabenabrechnungsschema zu verzögern, wobei das Senden von Daten mehrere Guthabenpunkte kostet und Guthabenpunkte im Laufe der Zeit anwachsen.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 4, wobei der Übertragungszyklus mehrere Sendezeitfenster des 10SPE-Netzwerks aufweist.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 5, wobei das erste Sendezeitfenster und ein zweites Zeitfenster unterschiedliche Größen aufweisen.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 6, wobei die Schaltung weiterhin ausgebildet ist, um basierend auf einem anderen 10SPE-Netzwerkknoten, der zuvor Daten gesendet hat, die Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster zu verzögern.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 7, wobei die Schaltung weiterhin ausgebildet ist, um basierend darauf, dass der 10SPE-Netzwerkknoten eine niedrigere Priorität aufweist als einer der anderen Knoten, die Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster zu verzögern.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 8, wobei die Anweisungen weiterhin ausgebildet sind, um auf der Grundlage einer Feststellung von Inaktivität an den anderen Knoten den Prozessor zu einer Verzögerung der Datenübertragung in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus bis zum zweiten Sendezeitfenster zu veranlassen.
10SPE-Netzwerkknoten nach einem der Ansprüche 1 bis 9, wobei die Schaltung durch Anweisungen implementiert ist, die vom Prozessor auszuführen sind.
Verfahren, das aufweist: Erzeugen von Daten, die an andere Knoten gesendet werden sollen; Senden der Daten in einem oder mehreren Übertragungszyklen, wobei ein gegebener Übertragungszyklus zumindest einen Sendezeitfenster für jeden der 10SPE-Netzwerkknoten zum Senden von Daten aufweist; und Verzögern der Übertragung von Daten in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus bis zu einem zweiten Sendezeitfenster basierend auf einem Bandbreitenaufteilungsschema.
Verfahren nach Anspruch 11, das weiterhin das Verzögern der Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Übertragungszyklen aufweist.
Verfahren nach einem der Ansprüche 11 bis 12, das weiterhin das Verzögern der Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einer Anzahl von Sendezeitfenstern für den 10SPE-Netzwerkknoten aufweist.
Verfahren nach einem der Ansprüche 11 bis 13, das weiterhin das Verzögern der Übertragung von Daten in dem ersten Sendezeitfenster basierend auf einem Guthabenabrechnungsschema aufweist, wobei das Senden von Daten eine Vielzahl von Guthabenpunkten kostet und Guthabenpunkte im Laufe der Zeit anwachsen.
Verfahren nach einem der Ansprüche 11 bis 14, wobei der Übertragungszyklus mehrere Sendezeitfenster des 10SPE-Netzwerks aufweist.
Verfahren nach einem der Ansprüche 11 bis 15, wobei das erste Sendezeitfenster und ein zweites Zeitfenster unterschiedliche Größen aufweisen.
Verfahren nach einem der Ansprüche 11 bis 16, das weiterhin basierend auf einem anderen 10SPE-Netzwerkknoten, der zuvor Daten gesendet hat, das Verzögern der Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster aufweist.
Verfahren nach einem der Ansprüche 11 bis 17, das weiterhin basierend darauf, dass der 10SPE-Netzwerkknoten eine niedrigere Priorität aufweist als einer der anderen Knoten, das Verzögern der Übertragung von Daten in dem ersten Sendezeitfenster bis zum zweiten Sendezeitfenster aufweist.
Verfahren nach einem der Ansprüche 11 bis 18, das weiterhin basierend auf einer Feststellung von Inaktivität der anderen Knoten das Verzögern der Übertragung von Daten in einem ersten Sendezeitfenster in einem ersten Übertragungszyklus bis zum zweiten Sendezeitfenster aufweist.
Verfahren nach einem der Ansprüche 11 bis 19, wobei das Verfahren durch Anweisungen implementiert ist, die von einem Prozessor auszuführen sind.
DE112019002669.0T 2018-05-25 2019-05-21 Datenverkehrsgestaltung auf plca-fähigen 10spe-netzwerken Pending DE112019002669T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862676778P 2018-05-25 2018-05-25
US62/676,778 2018-05-25
US16/183,850 US10868765B2 (en) 2018-05-25 2018-11-08 Shaping traffic on PLCA-enabled 10SPE networks
US16/183,850 2018-11-08
PCT/US2019/033204 WO2019226585A1 (en) 2018-05-25 2019-05-21 Shaping traffic on plca-enabled 10spe networks

Publications (1)

Publication Number Publication Date
DE112019002669T5 true DE112019002669T5 (de) 2021-03-04

Family

ID=68614095

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019002669.0T Pending DE112019002669T5 (de) 2018-05-25 2019-05-21 Datenverkehrsgestaltung auf plca-fähigen 10spe-netzwerken

Country Status (6)

Country Link
US (1) US10868765B2 (de)
JP (1) JP7314178B2 (de)
KR (1) KR20210010841A (de)
CN (1) CN112154630A (de)
DE (1) DE112019002669T5 (de)
WO (1) WO2019226585A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11513577B2 (en) 2020-03-24 2022-11-29 Microchip Technology Incorporated Low connection count interface wake source communication according to 10SPE local and remote wake and related systems, methods, and devices
DE112020002209B4 (de) 2019-05-03 2023-01-12 Microchip Technology Incorporated Emulation von Kollisionen in drahtgebundenen lokalen Netzwerken und zugehörige Systeme, Verfahren und Vorrichtungen
US11757550B2 (en) 2019-08-23 2023-09-12 Microchip Technology Incorporated Ethernet interface and related systems, methods and devices

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10868765B2 (en) * 2018-05-25 2020-12-15 Microchip Technology Incorporated Shaping traffic on PLCA-enabled 10SPE networks
US11233750B2 (en) * 2018-10-29 2022-01-25 Hyundai Motor Company Method and apparatus for allocating transmission opportunities in vehicle network
US11171807B2 (en) * 2018-10-30 2021-11-09 Hyundai Motor Company Method and apparatus for allocating priority transmission opportunities in vehicle network
KR20200109931A (ko) * 2019-03-15 2020-09-23 현대자동차주식회사 차량 네트워크에서 웨이크업 신호의 송수신을 위한 방법 및 장치
JP2022530400A (ja) * 2019-04-25 2022-06-29 マイクロチップ テクノロジー インコーポレイテッド 有線ローカルエリアネットワーク内のマスタノードの移行、並びに関連するシステム、方法、及びデバイス
WO2020226685A1 (en) * 2019-05-03 2020-11-12 Microchip Technology Incorporated Media access for time-sensitive and best efforts data packets, and related systems, methods and devices
CN112422153B (zh) 2019-08-23 2023-04-07 微芯片技术股份有限公司 检测到共享传输介质处冲突后处理数据接收的方法和***
CN112422219B (zh) 2019-08-23 2024-05-24 微芯片技术股份有限公司 以太网接口和相关***、方法和设备
CN112422385B (zh) 2019-08-23 2022-11-29 微芯片技术股份有限公司 用于改进的媒体访问的接口以及相关的***、方法和设备
CN112423403A (zh) 2019-08-23 2021-02-26 微芯片技术股份有限公司 检测网络上的冲突
EP4142222A1 (de) * 2020-04-30 2023-03-01 KONE Corporation Bestimmung einer sequenz von busknoten in einem multi-drop-kommunikationsbus
US11700146B2 (en) * 2020-08-26 2023-07-11 Microchip Technology Incorporated EMI reduction in PLCA-based networks through beacon temporal spreading
DE102020215763A1 (de) 2020-12-11 2022-06-15 Continental Automotive Gmbh Verfahren zur Optimierung der Übertragungsdatenrate in einem Sensornetzwerk im Teilnetzbetrieb in einem Ethernetnetzwerk
JP2022171397A (ja) * 2021-04-30 2022-11-11 株式会社オートネットワーク技術研究所 通信装置及び通信システム
FR3125660B1 (fr) * 2021-07-20 2023-10-20 Safran Electronics & Defense Procédé , équipement , programme de communication, dispositif embarqué ay ant ces équipements

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175537A (en) 1990-03-29 1992-12-29 Micro Technology, Inc. Method and apparatus for scheduling access to a CSMA communication medium
EP0462349B1 (de) * 1990-06-21 1995-02-22 International Business Machines Corporation Breitbandringkommunikationssystem und Zugriffssteuerungsverfahren
US20020133589A1 (en) * 1998-09-11 2002-09-19 Rajugopal R. Gubbi Dynamic bandwidth negotiation scheme for wireless computer networks
EP1199848A3 (de) 2000-10-17 2003-12-17 Appairent Technologies, Inc. Zeitmultiplexnetzwerk fur Vielfachsuniverselzugriff
EP1346398A2 (de) * 2000-11-01 2003-09-24 Actelis Networks Ltd. Schnellzugriffssystem über eine kupferkabelanlage
US20030026267A1 (en) * 2001-07-31 2003-02-06 Oberman Stuart F. Virtual channels in a network switch
KR100770897B1 (ko) * 2001-11-07 2007-10-26 삼성전자주식회사 통신 시스템에서 패킷 데이터 제어 채널의 송수신 장치 및방법
EP2018004B1 (de) * 2001-11-09 2019-03-06 Panasonic Intellectual Property Corporation of America Sicherstellung des Mediumzugriffs in einem drahtlosen Netzwerk
JP4233354B2 (ja) 2003-02-28 2009-03-04 株式会社クボタ 自動販売機の商品取出口装置
US20060256723A1 (en) * 2005-05-16 2006-11-16 Hellenthal Jan W Scheduling incoming packet traffic on an output link of a network device associated with a data network
US20070271401A1 (en) * 2006-05-16 2007-11-22 Eliel Louzoun Techniques to moderate interrupt transfer
CN100438506C (zh) * 2006-12-15 2008-11-26 华为技术有限公司 通用公共无线接口数据传输方法及其设备和***
JP2009105539A (ja) 2007-10-22 2009-05-14 Sumitomo Electric Ind Ltd 光加入者線端局装置、それを含んだ通信システムおよびフレーム送信方法
US9166917B2 (en) * 2011-07-17 2015-10-20 Broadcom Corporation Link layer preemption
EP3038325B1 (de) * 2014-12-22 2019-12-11 Siemens Aktiengesellschaft Verfahren zur datenübermittlung in einem kommunikationsnetz eines industriellen automatisierungssystems und koppel-kommunikationsgerät
US10764201B2 (en) * 2017-11-28 2020-09-01 Dornerworks, Ltd. System and method for scheduling communications
US11272543B2 (en) * 2018-02-21 2022-03-08 Nxp B.V. Physical layer device that connects to a shared media and method for operating a physical layer device that connects to a shared media
US10952243B2 (en) * 2018-04-10 2021-03-16 Nio Usa, Inc. Method, system and device for network communications within a vehicle
US10868765B2 (en) * 2018-05-25 2020-12-15 Microchip Technology Incorporated Shaping traffic on PLCA-enabled 10SPE networks
US11171807B2 (en) * 2018-10-30 2021-11-09 Hyundai Motor Company Method and apparatus for allocating priority transmission opportunities in vehicle network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112020002209B4 (de) 2019-05-03 2023-01-12 Microchip Technology Incorporated Emulation von Kollisionen in drahtgebundenen lokalen Netzwerken und zugehörige Systeme, Verfahren und Vorrichtungen
US11757550B2 (en) 2019-08-23 2023-09-12 Microchip Technology Incorporated Ethernet interface and related systems, methods and devices
US11513577B2 (en) 2020-03-24 2022-11-29 Microchip Technology Incorporated Low connection count interface wake source communication according to 10SPE local and remote wake and related systems, methods, and devices

Also Published As

Publication number Publication date
JP7314178B2 (ja) 2023-07-25
KR20210010841A (ko) 2021-01-28
JP2021525473A (ja) 2021-09-24
WO2019226585A1 (en) 2019-11-28
US10868765B2 (en) 2020-12-15
US20190363991A1 (en) 2019-11-28
CN112154630A (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
DE112019002669T5 (de) Datenverkehrsgestaltung auf plca-fähigen 10spe-netzwerken
DE10046656B4 (de) Scheduling-Verfahren für ein Master-Slave-System und Master-Slave-System
DE69533680T2 (de) Verfahren und Vorrichtung zur dynamischen Bestimmung und Zuteilung von Zugriffsguoten für ein gemeinsames Betriebsmittel
DE60001532T2 (de) Verfahren zur Überwachung eines Paketstroms in einem Paketnetz mit Paketen variabler Länge
DE10196447B4 (de) Verfahren und Vorrichtung zum Verringern der Erschöpfung des Pools in einer Vermittlung mit gemeinsam genutztem Speicher
DE112006000126B4 (de) Verfahren und Media Access Controller für Mesh-Netzwerke mit adaptiver Quality-of-Service Verwaltung
DE69126640T2 (de) Flusssteuerung für Hochgeschwindigkeitsnetzwerk
DE112009000834B4 (de) Expressvirtuelle Kanäle in einem Paketvermittelten Auf-Chip Verbindungsnetzwerk
DE60128413T2 (de) Gekennzeichneter Prioritätswarteschlangescheduler
DE69328380T2 (de) Verfahren und vorrichtung zur vermittlung von mehreren verkehrsklassen
CN110224944B (zh) 一种分布式网络流量控制方法和装置
DE60110934T2 (de) Modularer und skalierbarer switch und verfahren zum verteilen schneller ethernet-datenrahmen
DE102007038964A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten
EP3729738B1 (de) Verfahren zum senden von datenpaketen, steuergerät und system mit steuergerät
DE60028903T2 (de) Verfahren und Vorrichtung zur Kommunikationskontrolle
DE102019201230A1 (de) Teilnehmerstation für ein serielles Bussystem und Verfahren zum Senden einer Nachricht in einem seriellen Bussystem
DE60316925T2 (de) Raten-basierte Ablaufplanung für Paketanwendungen
DE10306293B4 (de) Verfahren zur Übertragungsbandbreitenzuteilung in einer paketorientierten Kommunikationseinrichtung
DE60310146T2 (de) System und Methode zur Überwachung, mit geringer Zusatzinformation, des Leerzustandes der Senderwarteschlange
DE112013000812T5 (de) Variable Bestätigungsrate zum Verringern von Buskonflikt in Gegenwart von Datenübertragungsfehlern
DE112021004490T5 (de) Emi-reduzierung in plca-basierten netzwerken durch zeitliche beacon-spreizung
DE69838103T2 (de) Verfahren zur Pufferverwaltung
EP2538618A1 (de) Verfahren zur Übertragung von Datenpaketen
WO2019211076A1 (de) Verfahren und computerprogramm zum senden eines datenpaketes, verfahren und computerprogramm zum empfangen eines datenpaketes, kommunikationseinheit und kraftfahrzeug mit kommunikationseinheit
DE102004030337B4 (de) Vorrichtung und Verfahren zur Datenpaketübertragung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012801000

Ipc: H04L0047100000