-
PRIORITÄTSANSPRUCH
-
Diese Anmeldung beansprucht den Vorteil des Einreichungstags der chinesischen Patentanmeldung mit der Seriennummer
201910784565.6 , eingereicht am 23. August 2019, für „Detecting Collisions On a Network“, und beansprucht den Vorteil des Einreichungstags der anhängigen US-Patentanmeldung mit der Seriennummer Nr.
16/587,505 , eingereicht am 30. September 2019, für „Detecting Collisions On A Network“, deren Offenbarung jeweils hiermit in ihrer Gesamtheit durch diese Bezugnahme aufgenommen ist.
-
TECHNISCHES GEBIET
-
Die vorliegende Offenbarung bezieht sich allgemein auf Kommunikationsnetzwerke und insbesondere auf ein Erkennen von Kollisionen in einem Single Pair Ethernet-Netzwerk.
-
STAND DER TECHNIK
-
Zum Bereitstellen von Konnektivität mit hohen Geschwindigkeiten können zum Verbinden von Computern und externen Peripherieeinheiten verschiedene Schnittstellenstandards verwendet werden. Ein weit verbreiteter, flexibler Netzwerkstandard zum Verbinden von Computern (z. B. in Local Area Networks (LANs) und Wide Area Networks (WANs)) ist das Ethernet-Protokoll. Unter Ethernet-Kommunikation wird allgemein eine Punkt-zu-Punkt-Kommunikation innerhalb eines Netzwerks mit mehreren Endpunkten verstanden. Ethernet nutzt gemeinsam verwendete Ressourcen allgemein effizient, ist leicht wart- und rekonfigurierbar und mit vielen Systemen kompatibel.
-
Figurenliste
-
Während diese Offenbarung mit Ansprüchen endet, die bestimmte Ausführungsformen besonders hervorheben und eindeutig beanspruchen, können verschiedene Merkmale und Vorteile von Ausführungsformen innerhalb des Schutzumfangs dieser Offenbarung leichter aus der folgenden Beschreibung ermittelt werden, wenn sie in Verbindung mit den beigefügten Zeichnungen gelesen werden, in denen:
- 1 ein Netzwerk darstellt, das eine Anzahl von Knoten gemäß verschiedenen Ausführungsformen der Offenbarung einschließt;
- 2 einen Knoten veranschaulicht, der eine Medienzugriffsschicht und eine Bitübertragungsschicht einschließt, die mit einem Netzwerk gekoppelt ist, gemäß verschiedenen Ausführungsformen der Offenbarung;
- 3A und 3B Zeitdiagramme darstellen, die verschiedene Signale zeigen, die einem Netzwerk zugeordnet sind, gemäß verschiedenen Ausführungsformen der Offenbarung;
- 4 ein weiteres Zeitdiagramm zeigt, das verschiedene Signale veranschaulicht, die einem Netzwerk zugeordnet sind, gemäß verschiedenen Ausführungsformen der Offenbarung;
- 5 eine beispielhafte Bitübertragungsschicht eines Netzwerkknotens gemäß verschiedenen Ausführungsformen der Offenbarung veranschaulicht;
- 6 einen Beispielsignaldetektor gemäß verschiedenen Ausführungsformen der Offenbarung veranschaulicht; und
- 7 ein Flussdiagramm eines Beispielverfahrens zum Betreiben einer Bitübertragungsschicht (PHY) eines Netzwerks gemäß verschiedenen Ausführungsformen der Offenbarung ist.
-
ART(EN) ZUM AUSFÜHREN DER ERFINDUNG
-
In der folgenden detaillierten Beschreibung wird auf die beigefügten Zeichnungen Bezug genommen, die einen Teil hiervon bilden und in denen zur Veranschaulichung spezifische Beispiele von Ausführungsformen gezeigt sind, in denen die vorliegende Offenbarung ausgeführt werden kann. Diese Ausführungsformen werden ausreichend detailliert beschrieben, um es einem Durchschnittsfachmann zu ermöglichen, die vorliegende Offenbarung auszuführen. Es können jedoch auch andere Ausführungsformen benutzt werden und Änderungen der Struktur, des Materials und des Prozesses können vorgenommen werden, ohne von dem Schutzumfang der Offenbarung abzuweichen.
-
Die hierin dargestellten Veranschaulichungen sollen keine tatsächlichen Ansichten eines bestimmten Verfahrens oder Systems oder einer bestimmten Vorrichtung oder Struktur sein, sondern sind lediglich idealisierte Darstellungen, die zur Beschreibung der Ausführungsformen der vorliegenden Offenbarung genutzt werden. Die hierin dargestellten Zeichnungen sind nicht notwendigerweise maßstabsgetreu. Ähnliche Strukturen oder Komponenten in den verschiedenen Zeichnungen können zur Vereinfachung für den Leser die gleiche oder eine ähnliche Nummerierung beibehalten; die Ähnlichkeit in der Nummerierung bedeutet jedoch nicht, dass die Strukturen oder Komponenten notwendigerweise in Größe, Zusammensetzung, Konfiguration oder einer anderen Eigenschaft identisch sind.
-
Die folgende Beschreibung kann Beispiele einschließen, um zu helfen, es dem Durchschnittsfachmann zu ermöglichen, die offenbarten Ausführungsformen auszuführen. Die Verwendung der Begriffe „beispielhaft“, „als Beispiel“ und „zum Beispiel“ bedeutet, dass die zugehörige Beschreibung erläuternd ist, und obwohl der Schutzumfang der Offenbarung die Beispiele und ihre rechtlichen Äquivalente umfassen soll, ist die Verwendung solcher Begriffe nicht dazu bestimmt, den Schutzumfang einer Ausführungsform oder dieser Offenbarung auf die spezifizierten Komponenten, Schritte, Merkmale, Funktionen oder dergleichen einzuschränken.
-
Es versteht sich von selbst, dass die Komponenten der Ausführungsformen, wie sie hierin allgemein beschrieben und in der Zeichnung veranschaulicht sind, in einer breiten Vielfalt unterschiedlicher Konfigurationen angeordnet und gestaltet werden können. Somit soll die folgende Beschreibung verschiedener Ausführungsformen den Schutzumfang der vorliegenden Offenbarung nicht einschränken, sondern ist lediglich repräsentativ für verschiedene Ausführungsformen. Während die verschiedenen Gesichtspunkte der Ausführungsformen in Zeichnungen dargestellt werden können, sind die Zeichnungen nicht notwendigerweise maßstabsgetreu gezeichnet, sofern nicht ausdrücklich angegeben.
-
Des Weiteren sind die gezeigten und beschriebenen spezifischen Implementierungen nur Beispiele und sollten nicht als die einzige Möglichkeit zum Implementieren der vorliegenden Offenbarung ausgelegt werden, sofern hierin nicht anders angegeben. Elemente, Schaltungen und Funktionen können in Blockdiagrammform gezeigt sein, um die vorliegende Offenbarung nicht durch unnötige Details undeutlich werden zu lassen. Umgekehrt sind gezeigte und beschriebene spezifische Implementierungen nur beispielhaft und sollten nicht als die einzige Möglichkeit zum Implementieren der vorliegenden Offenbarung ausgelegt werden, sofern hierin nicht anders angegeben. Außerdem sind Blockdefinitionen und die Aufteilung von Logik zwischen verschiedenen Blöcken beispielhaft für eine spezifische Implementierung. Es ist für den Durchschnittsfachmann ohne Weiteres ersichtlich, dass die vorliegende Offenbarung durch zahlreiche andere Aufteilungslösungen ausgeführt werden kann. Auf Details zu zeitlichen Erwägungen und dergleichen wurde größtenteils verzichtet, soweit solche Details für ein Erlangen eines vollständigen Verständnisses der vorliegenden Offenbarung nicht erforderlich sind und innerhalb der Fähigkeiten des Durchschnittsfachmanns liegen.
-
Der Durchschnittsfachmann würde verstehen, dass Informationen und Signale unter Verwendung einer Vielfalt verschiedener Technologien und Techniken dargestellt werden können. Manche Zeichnungen können Signale zur Übersichtlichkeit der Darstellung und Beschreibung als ein einzelnes Signal veranschaulichen. Es ist für den Durchschnittsfachmann verständlich, dass das Signal einen Bus von Signalen darstellen kann, wobei der Bus eine Vielfalt von Bitbreiten aufweisen kann und die vorliegende Offenbarung auf einer beliebigen Anzahl von Datensignalen, einschließlich eines einzelnen Datensignals, implementiert werden kann.
-
Die verschiedenen veranschaulichenden logischen Blöcke, Module und Schaltungen, die in Verbindung mit den hierin offenbarten Ausführungsformen beschrieben werden, können mit einem Universalprozessor, einem Spezialprozessor, einem digitalen Signalprozessor (DSP), einer integrierten Schaltung (IC), einer anwendungsspezifischen integrierten Schaltung (Application Specific Integrated Circuit, ASIC), einer anwenderprogrammierbaren Gatteranordnung (FPGA) oder einer anderen programmierbaren Logikvorrichtung, einer diskreten Gatter- oder Transistorlogik, diskreten Hardwarekomponenten oder einer beliebigen Kombination davon, die zum Durchführen der hierin beschriebenen Funktionen ausgelegt sind, implementiert oder durchgeführt werden. Ein Allzweckprozessor (der hierin auch als Host-Prozessor oder einfach als Host bezeichnet werden kann) kann ein Mikroprozessor sein, alternativ kann der Prozessor jedoch ein beliebiger herkömmlicher Prozessor, Controller, Mikrocontroller oder Zustandsautomat sein. Ein Prozessor kann auch als eine Kombination von Rechenvorrichtungen, wie eine Kombination aus einem DSP und einem Mikroprozessor, eine Vielzahl von Mikroprozessoren, ein oder mehrere Mikroprozessoren in Verbindung mit einem DSP-Kern oder eine beliebige andere derartige Konfiguration implementiert sein. Ein Universalcomputer einschließlich eines Prozessors wird als Spezialcomputer angesehen, während der Universalcomputer so konfiguriert ist, dass er Rechenanweisungen (z. B. einen Softwarecode) ausführt, die sich auf Ausführungsformen der vorliegenden Offenbarung beziehen.
-
Die Ausführungsformen können in Bezug auf einen Prozess beschrieben sein, der als ein Flussdiagramm, ein Fließschema, ein Strukturdiagramm oder ein Blockdiagramm dargestellt ist. Obwohl ein Flussdiagramm operationale Handlungen als einen sequentiellen Prozess beschreiben kann, können viele dieser Handlungen in einer anderen Abfolge, parallel oder im Wesentlichen gleichzeitig durchgeführt werden. Außerdem kann die Reihenfolge der Handlungen umgeordnet werden. Ein Prozess kann einem Verfahren, einem Thread, einer Funktion, einer Prozedur, einer Unterroutine, einem Unterprogramm usw. entsprechen. Weiterhin können die hierin offenbarten Verfahren in Hardware, Software oder beiden implementiert sein. Bei Implementieren in Software können die Funktionen als eine oder mehrere Anweisungen oder ein Code auf computerlesbaren Medien gespeichert oder übertragen werden. Computerlesbare Medien schließen sowohl Computerspeicherungsmedien als auch Kommunikationsmedien, einschließlich jedes Mediums, das die Übertragung eines Computerprogramms von einem Ort zu einem anderen unterstützen, ein.
-
Jeder Verweis auf ein Element hierin unter Verwendung einer Bezeichnung, wie „erste/r/s“, „zweite/r/s“ und so fort schränkt die Menge oder Reihenfolge dieser Elemente nicht ein, es sei denn, eine solche Einschränkung wird ausdrücklich angegeben. Vielmehr können diese Bezeichnungen hierin als ein zweckmäßiges Verfahren zum Unterscheiden zwischen zwei oder mehr Elementen oder Instanzen eines Elements verwendet werden. Ein Verweis auf ein erstes und ein zweites Element bedeutet also nicht, dass dort nur zwei Elemente eingesetzt werden dürfen oder dass das erste Element dem zweiten Element in irgendeiner Weise vorausgehen muss. Außerdem kann ein Satz von Elementen, sofern nicht anders angegeben, ein oder mehrere Elemente umfassen.
-
Wie hierin verwendet, bedeutet der Begriff „im Wesentlichen“ in Bezug auf einen gegebenen Parameter, eine gegebene Eigenschaft oder eine gegebene Bedingung in einem für den Durchschnittsfachmann verständlichen Ausmaß und schließt ein, dass der gegebene Parameter, die gegebene Eigenschaft oder die gegebene Bedingung mit einem geringen Maß an Varianz, wie zum Beispiel innerhalb annehmbarer Fertigungstoleranzen, erfüllt ist. Beispielhaft kann abhängig von dem bestimmten Parameter, der bestimmten Eigenschaft oder der bestimmten Bedingung, der bzw. die im Wesentlichen erfüllt ist, der Parameter, die Eigenschaft oder die Bedingung zu mindestens 90 % erfüllt, zu mindestens 95 % erfüllt oder sogar zu mindestens 99 % erfüllt sein.
-
Ein Fahrzeug, wie ein Automobil, ein Lastkraftwagen, ein Bus, ein Schiff und/oder ein Flugzeug, kann ein Fahrzeugkommunikationsnetzwerk einschließen. Je nach Anzahl der elektronischen Vorrichtungen innerhalb des Netzwerks kann die Komplexität eines Fahrzeugkommunikationsnetzwerks variieren. So kann ein modernes Fahrzeugkommunikationsnetzwerk verschiedene Steuermodule zum Beispiel zur Motorsteuerung, Getriebesteuerung, Sicherheitssteuerung (z. B. Antiblockiersystem) und Emissionssteuerung einschließen. Um diese Module zu unterstützen, werden in der Automobilindustrie verschiedene Kommunikationsprotokolle verwendet.
-
10SPE (d. h. 10 MBit/s Single Pair Ethernet) ist eine Netzwerktechnologiespezifikation, die derzeit vom Institute of Electrical and Electronic Engineers als Spezifikation IEEE 802.3cg™ entwickelt wird. Ein 10SPE-Netzwerk kann eine Anzahl von Knoten (hierin auch als „Endpunkte“ bezeichnet) einschließen, wobei mindestens manche der Knoten eine 10SPE-Bitübertragungsschicht (PHY) einschließen können.
-
Eine 10SPE-PHY kann in einem Halbduplexmodus arbeiten und kann den Carrier Sense Multiple Access mit Kollisionserkennung (CSMA/CD) unterstützen, die ein Medienzugriffssteuerungsverfahren ist, das vor allem in der frühen Ethernet-Technologie für die lokalen Netzwerke verwendet wird. Gemäß CSMA/CD, sollte ein Knoten, der über einen Bus übertragen möchte, eine Übertragung verschieben, wenn bereits ein Träger auf dem Bus vorhanden ist. Mit anderen Worten, wenn ein Knoten einen Träger auf dem Bus erfasst, sollte der Knoten mit dem Übertragen warten. Die Erfinder dieser Offenbarung schätzen, dass bei dem Vorstehenden nicht von einer gleichzeitigen Übertragung durch Knoten des Netzwerks ausgegangen wird, das heißt davon ausgegangen wird, dass eine ausreichende Lücke in der Zeit besteht, zwischen dem Zeitpunkt, wenn Knoten beginnen, für einen späteren Knoten zu übertragen, um den Träger für ein Datenpaket eines früheren Knotens zu erkennen. Die Erfinder dieser Offenbarung schätzen jedoch, dass manchmal zwei oder mehr Knoten beginnen können, so zeitnah zu übertragen, dass die Knoten keinen aktiven Träger erkennen, bevor sie mit dem Übertragen beginnen.
-
Verschiedene Ausführungsformen, wie nachstehend ausführlicher beschrieben, beziehen sich auf ein Erkennen von Kollisionen auf einem gemeinsamen Bus (z. B. einem 10SPE-Bus) und insbesondere auf ein Erkennen von Kollisionen an einer Bitübertragungsschicht (d. h. einer PHY) eines 10SPE-Netzwerks. In manchen Ausführungsformen kann eine PHY während des Übertragens so konfiguriert sein, dass sie Signalpegel an einem 10SPE-Bus beobachtet und eine Kollision auf dem Bus basierend mindestens teilweise auf den beobachteten Signalpegeln erkennt. Anders ausgedrückt kann eine PHY während des Übertragens bestimmen, ob mindestens ein anderer Knoten in einem Netzwerk auch überträgt.
-
Gemäß verschiedenen Ausführungsformen kann die Erkennung einer ungewöhnlichen Signalamplitude (z. B. bei einer 10SPE-PHY) eine Kollision in einem 10SPE-Netzwerk angeben. Genauer gesagt, kann in manchen Ausführungsformen eine Netzwerkkollision erkannt werden, wenn eine Amplitude eines Signals, das durch das Übertragen der PHY auf dem Bus beobachtet wird, entweder größer oder kleiner als eine erwartete Amplitude ist. Zum Beispiel kann eine PHY, die ein erstes Signal (ein „lokal übertragenes Signal“) überträgt, ein zweites Signal beobachten, das das erste Signal und ein anderes Signal („fernübertragenes Signal“) einschließen kann, das von einer anderen PHY übertragen wird. Wenn in diesem Beispiel das lokal übertragene Signal dieselbe Phase wie das fernübertragene Signal aufweist, dann interferieren die Signale theoretisch konstruktiv, und das an der PHY beobachtete Signal sollte eine Amplitude aufweisen, die größer als eine erwartete Amplitude ist. Wenn das lokal übertragene Signal eine andere Phase als das fernübertragene Signal aufweist, interferieren die Signale theoretisch gegenseitig destruktiv, und das an der PHY beobachtete Signal sollte eine Amplitude aufweisen, die kleiner als eine erwartete Amplitude ist.
-
In manchen Ausführungsformen kann eine 10SPE-PHY einen Signaldetektor einschließen, der zum Beispiel einen Amplitudendetektor (z. B. einen analogen Amplitudendetektor) und optionale Logik einschließen kann. Der Signaldetektor kann betriebsmäßig mit einem Bus gekoppelt sein und so konfiguriert sein, dass er auf ein Signal an dem Bus reagiert, das einen Amplitudenverlauf einer Kollision aufweist. In manchen Ausführungsformen kann der Signaldetektor, der verwendet werden kann, um Kollisionen zu erkennen, während eine PHY in einem Übertragungsmodus arbeitet, auch verwendet werden, um Signale zu erkennen, während eine PHY in einem Empfangsmodus arbeitet.
-
In manchen Ausführungsformen kann ein Signaldetektor einer PHY so konfiguriert sein, dass er einen oder mehrere Schwellenwerte verwendet. In diesen Ausführungsformen kann der Signaldetektor so konfiguriert sein, dass er Signale mit einer Amplitude erkennt, die größer als erwartet ist, um einen ersten „größeren“ Schwellenwert zu verwenden. Zum Beispiel kann der Signaldetektor während einer ersten Phase (z. B. für eine erste Anzahl von Bits eines Kollisionserkennungsvorgangs) mit der ersten Schwelle (z. B. einer ersten Differenzschwelle) programmiert werden. Ferner kann der Signaldetektor zum Erkennen von Signalen mit einer Amplitude, die kleiner als erwartet ist, so konfiguriert sein, dass er einen zweiten, unteren Schwellenwert (z. B. eine zweite Differenzschwelle) verwendet. Zum Beispiel kann in manchen Ausführungsformen der untere Schwellenwert den gleichen Schwellenwert für die Signalerkennung (z. B. während eines Empfangsmodus) verwenden. Zum Beispiel kann der Signaldetektor während einer zweiten Phase (z. B. für eine zweite Anzahl von Bits eines Kollisionserkennungsvorgangs) mit dem zweiten Schwellenwert programmiert werden.
-
In manchen Ausführungsformen kann eine Ausgabe eines Signaldetektors mehrfach abgetastet (z. B. überabgetastet) werden, um zum Beispiel die Zuverlässigkeit mit hoher Zeitbereichsauflösung zu verbessern. Zum Beispiel kann die Ausgabe eines Signaldetektors alle 10 Nanosekunden abgetastet werden.
-
In manchen Ausführungsformen kann ein Kollisionserkennungsvorgang für eine angegebene Zeitdauer durchgeführt werden (z. B. beginnt, wenn die Signalübertragung beginnt). Genauer gesagt, kann zum Beispiel ein Kollisionserkennungsvorgang, der an einer PHY durchgeführt wird, als Reaktion darauf initiiert werden, dass die PHY ein Signal überträgt, und der Kollisionserkennungsvorgang kann für eine angegebene Bitzeit (z. B. eine programmierbare Bitzeit von N Bits (z. B. 512 Bits)) nach einem Initiieren der Übertragung durchgeführt werden. Eine angegebene Zeitdauer kann als nicht einschränkende Beispiele in Bezug auf Zeit (z. B. Mikrosekunden, ohne Einschränkung), Bits/Bytes, Symbole oder Taktzyklen ohne Einschränkung sein. Als nicht einschränkende Beispiele kann eine Zeitdauer in kombinatorischen Logik- oder Steuerbitwerten angegeben werden, die in einem Steuerregister gespeichert sind.
-
In manchen Ausführungsformen kann ein Kollisionserkennungsvorgang während der Datenübertragung durchgeführt werden (z. B. wenn die Übertragung aktiviert ist). In anderen Ausführungsformen kann ein Kollisionserkennungsvorgang auf eine bestimmte Zeitdauer beschränkt sein, kann helfen, Kollisionen mit zukünftigen eingehenden Signalen zu vermeiden. Gemäß verschiedenen Ausführungsformen kann nach Ablauf einer programmierbaren Bitzeit (z. B. 512 Bits) der Kollisionserkennungsvorgang beendet werden (z. B. durch Nichtverarbeiten und/oder Nichtbenutzen eines Signals (z. B. eines Ausgangs des Signaldetektors), das über die Erkennungsschaltlogik erzeugt wird.
-
Verschiedene Ausführungsformen der vorliegenden Offenbarung werden nun unter Bezugnahme auf die begleitenden Zeichnungen erläutert.
-
1 ist ein Blockdiagramm von mindestens einem Abschnitt eines Netzwerks (z. B. einem drahtgebundenen lokalen Netzwerk) 100 gemäß manchen Ausführungsformen. Genauer gesagt, kann das Netzwerk 100 ein 10SPE-Netzwerk einschließen. Das Netzwerk 100 schließt eine Anzahl von Knoten (auch als „Endpunkte“ bezeichnet) ein, die betriebsmäßig mit einem Kommunikationsbus 104 gekoppelt sind. Genauer gesagt, schließt das Netzwerk 100 Knoten 102 1, 102 2, 102 3, 102 4, 102 5 und 102 6, allgemein Knoten 102, ein. Obwohl das Netzwerk 100 mit sechs Knoten dargestellt ist, ist die Offenbarung nicht so beschränkt, und ein Netzwerk kann mehr als sechs Knoten (z. B. acht Knoten, zehn Knoten, zwölf Knoten oder mehr) oder weniger als sechs Knoten (z. B. fünf Knoten, drei Knoten oder zwei Knoten) einschließen.
-
Jeder Knoten 102_1, 102_2, 102_3, 102_4, 102_5 und 102_6 ist so konfiguriert, dass er über den Kommunikationsbus 104 kommuniziert, der einen gemeinsamen Bus (z. B. ein einzelnes verdrilltes Paar) einschließen oder ein solcher sein kann. Wie hierin verwendet, bezieht sich der Begriff „gemeinsamer Bus“ auf ein drahtgebundenes Übertragungsmedium, wie ein einzelnes verdrilltes Paar, das sowohl Übertragungssignale als auch Empfangssignale über dieselbe leitfähige Struktur (z. B. ein oder mehrere Kabel) leitet.
-
In mindestens manchen Ausführungsformen kann das Netzwerk 100 in einer Automobilumgebung verwendet werden. Genauer gesagt, kann das Netzwerk 100 als nicht einschränkendes Beispiel so konfiguriert sein, dass es einen oder mehrere von Knoten 102 mit anderen Knoten, einem Computer und/oder einer Steuerung (z. B. innerhalb eines Fahrzeugs) verbindet. In diesem Beispiel kann jeder Knoten 102 des Netzwerks 100 zum Beispiel einen Verstärker, ein Mikrofon, eine Antenne, einen Lautsprecher und/oder einen Sensor ohne Einschränkung einschließen. Andere nicht einschränkende Beispiele für Anwendungsumgebungen schließen Netzwerke für Beleuchtungssysteme, Wohn- und kommerzielle Gebäude und Netzwerke für Aufzüge ein.
-
2 stellt ein Beispielnetzwerksegment 101 dar, das einen Knoten 102 (z. B. Knoten 102_1, Knoten 102_2, Knoten 102_3, Knoten 102_4, Knoten 102_5 oder Knoten 102_6), gekoppelt mit dem Kommunikationsbus 104, einschließt. Wie in 2 gezeigt, schließt der Knoten 102 eine Bitübertragungsschicht (PHY) 106 ein, die betriebsmäßig mit einer Medienzugriffssteuerungsschicht (MAC-Schicht) 108 gekoppelt ist. Die PHY 106 kann so konfiguriert sein, als Schnittstelle für eine physische Verbindung zwischen der MAC 108 und dem Kommunikationsbus 104 zu dienen. In manchen Ausführungsformen schließt die PHY 106 mindestens einen Abschnitt der Ethernet-Bitübertragungsschicht-Schaltlogik ein. Wie nachstehend ausführlicher beschrieben, kann eine PHY (z. B. die PHY 106) einen Transceiver mit Übertragungsschaltlogik und Empfangsschaltlogik einschließen.
-
3A und 3B stellen Zeitdiagramme dar, die verschiedene Signale zeigen, die einem Netzwerk (z. B. dem Netzwerk 100 von 1) gemäß verschiedenen Ausführungsformen der Offenbarung zugeordnet sind. Genauer gesagt, stellt 3A ein Zeitdiagramm 300 dar, das Signale zeigt, die dem Erkennen einer Kollision basierend auf einem an einer PHY beobachteten Signal zugeordnet sind, wobei das beobachtete Signal eine Amplitude aufweist, die größer als erwartet ist. Genauer gesagt, schließt das Zeitdiagramm 300 ein Signal 302 ein, das ein Signal angibt, das von einem ersten Knoten (z. B. von dem Knoten 102_1) übertragen wird, und ein Signal 304, das ein Signal angibt, das von einem zweiten Knoten (z. B. von dem Knoten 102_2) übertragen wird. Das Zeitdiagramm 300 schließt ferner ein Signal 306 ein, das ein Signal angibt, das von einer PHY des zweiten Knotens (z. B. des Knotens 102_2) beobachtet wird. Außerdem stellt das Zeitdiagramm 300 ferner Schwellenwerte 308A und 308B (d. h. zum Erkennen eines Signals mit einer Amplitude, deren Betrag größer als erwartet ist) und ein Signal 310 dar, das an einem Signaldetektor an der PHY erzeugt wird, was eine Kollision angeben kann.
-
Wie in dem Zeitdiagramm 300 gezeigt, übersteigt, wenn der erste Knoten und der zweite Knoten gleichzeitig übertragen werden, eine Amplitude des Signals 306, die ein an der PHY des zweiten Knotens (z. B. des Knotens 102_2) beobachtetes Signal darstellt, mindestens eine der Schwellen 308A und 308B, und das Reaktionssignal 310 geht von einem niedrigen Zustand in einen hohen Zustand über, um eine Kollision anzuzeigen. In diesem Beispiel ist, da der Betrag der Amplitude des Signals 306 beide Schwellen 308A und 308B überschreitet, die Amplitude des Signals 306 größer als erwartet (d. h. als wenn nur der zweite Knoten übertragen würde). Da die Amplitude des Signals 306 größer als die Schwellen 308 und/oder 308B ist, kann daraus geschlossen werden, dass mindestens zwei Knoten (hier der erste Knoten 102_1 und der zweite Knoten 102_2) gleichzeitig (in diesem Beispiel in Phase) übertragen. Insbesondere wird in dem in 3A gezeigten Beispiel für einen Zeitraum bevor die Amplitude des Signals 306, der die Schwelle 308A überschritt, das Signal 310 deaktiviert, da der Betrag der Amplitude des Signals 306 eine der Schwellen nicht überschreitet.
-
3B stellt ein Zeitdiagramm 350 dar, das Signale zeigt, die dem Erkennen einer Kollision basierend auf einem Signal, das an einer PHY beobachtet wird, mit einer Amplitude, die kleiner als erwartet ist, zugeordnet sind. Genauer gesagt, schließt das Zeitdiagramm 350 ein Signal 352 ein, das ein Signal angibt, das von der ersten PHY (z. B. dem Knoten 102_1) übertragen wird, und ein Signal 354, das ein Signal angibt, das von der zweiten PHY (z. B. dem Knoten 102_2) übertragen wird. Das Zeitdiagramm 350 schließt ferner ein Signal 356 ein, das ein Signal angibt, das durch die PHY des zweiten Knotens (z. B. des Knotens 102_2) beobachtet wird. Außerdem stellt das Zeitdiagramm 350 ferner Schwellen 358A und 358B (d. h. zum Erkennen eines Signals mit einer Amplitude, die kleiner als erwartet ist) und ein Kollisionssignal 360 dar, das eine Kollision angeben kann.
-
Wie in dem Zeitdiagramm 350 gezeigt, überschreitet, wenn der erste Knoten und der zweite Knoten gleichzeitig übertragen, der Betrag einer Amplitude des Signals 356, der ein an der PHY des Knotens 102_2 beobachtetes Signal darstellt, die Schwellen 358A und 358B nicht, und somit geht das Signal 360 von einem niedrigen Zustand in einen hohen Zustand über, um eine Kollision anzuzeigen. Da in diesem Beispiel der Betrag der Amplitude des Signals 356 die Schwellen 358A und 358B nicht überschreitet, ist die Amplitude des Signals 356 kleiner als erwartet (d. h. als wenn nur die PHY des zweiten Knotens übertragen würde). Da die Amplitude des Signals 306 kleiner als erwartet ist, kann bestimmt werden, dass die erste PHY und die zweite PHY gleichzeitig (hier außer Phase) übertragen.
-
Wie oben erwähnt, kann in manchen Ausführungsformen ein Kollisionserkennungsvorgang während einer angegebenen Zeitdauer während der Signalübertragung durchgeführt werden (z. B. um eine spätere Kollision zu vermeiden, die einen Paketverlust verursachen kann). Genauer gesagt, kann zum Beispiel die Kollisionserkennung nur innerhalb einer angegebenen Bitzeit (z. B. erste 512 Bits) angewendet werden (z. B. gestartet als Reaktion auf die Signalübertragung). In mindestens manchen dieser Ausführungsformen kann die verbleibende Dauer der Signalübertragung (z. B. nach der Zeit von 512 Bits) für eine andere Signalerkennung als ein nicht einschränkendes Beispiel verwendet werden, wobei eine andere Signalerkennung eine Trägersignalerkennung einschließen kann.
-
4 stellt ein Zeitdiagramm 400 dar, das einen Zeitraum 402 einschließt, wobei eine PHY eines ersten Knotens (z. B. des Knotens 102_1 von 1) überträgt („Remote Tx“) und einen Zeitraum 404, wobei eine PHY eines zweiten Knotens (z. B. des Knotens 102_1 von 1) überträgt („Local Tx“). Ferner empfängt die PHY des zweiten Knotens (z. B. Knoten von 102_1 von 1) das übertragene Signal („Local Rx“) während jedes Zeitraums 402 und Zeitraums 404. Das Zeitdiagramm 400 stellt ferner Zeiträume 410 und 412 dar, wobei eine andere Signalschwellenerkennung an der PHY des zweiten Knotens durchgeführt wird.
-
Das Zeitdiagramm 400 stellt ferner einen Zeitraum 411 dar, wobei eine Kollisionsschwellenerkennung an der PHY des zweiten Knotens durchgeführt wird. In diesem Beispiel weist der Zeitraum 411, der als Reaktion auf die Signalübertragung durch die PHY des zweiten Knotens startet, eine programmierbare Dauer auf. Als nicht einschränkendes Beispiel kann der Zeitraum 411 eine Bitzeit-Dauer von etwa 512 Bits aufweisen. Wie vorstehend erwähnt, kann in manchen Ausführungsformen ein Signaldetektor einer PHY für die Kollisionsschwellenerkennung verwendet werden (z. B. während eines Übertragungsmodus), und somit kann in diesen Ausführungsformen keine andere Signalerkennung während des Zeitraums 411 durchgeführt werden. In anderen Ausführungsformen wird insbesondere in Betracht gezogen, dass eine PHY Schaltlogik (z. B. zwei Signaldetektoren) einschließen kann, die so konfiguriert sind, dass sie gleichzeitig eine andere Signalschwellenerkennung und Kollisionsschwellenerkennung durchführen.
-
5 veranschaulicht eine Beispiel-PHY 500 gemäß verschiedenen Ausführungsformen der Offenbarung. Die PHY 500 ist als eine Beispiel-PHY-Konfiguration bereitgestellt, die zum Ausführen verschiedener hierin offenbarter Ausführungsformen verwendet werden kann; die Offenbarung ist jedoch nicht auf eine bestimmte PHY-Konfiguration beschränkt, und andere Konfigurationen können innerhalb des Schutzumfangs der Offenbarung liegen.
-
Zum Beispiel kann die PHY 106 von 2 die PHY 500 einschließen. Die PHY 500 schließt eine Übertragungsschaltlogik 502 ein, die zum Übermitteln von Übertragungsdaten an den Kommunikationsbus 504 von einer MAC (z. B. der MAC 108 von 2) konfiguriert sein kann. Zum Beispiel kann der Bus 504 ein Teil des Kommunikationsbusses 104 von 1 und 2. Der Kommunikationsbus 504, der sowohl zum Übertragen als auch zum Empfangen von Daten verwendet werden kann, kann ein einzelnes verdrilltes Paar (z. B. ein ungeschirmtes verdrilltes Paar oder UTP) einschließen.
-
Die PHY 500 schließt ferner einen Signaldetektor 506 und eine Kollisionslogik 508 ein. Wie hierin ausführlicher beschrieben, kann der Signaldetektor 506 so konfiguriert sein, dass er eine Signalschwellenerkennung während eines Zeitraums durchführt, der einer Kollisionsschwellenerkennung zugeordnet ist (z. B. die Zeit 411 von 4), und die Kollisionslogik 508 kann so konfiguriert sein, dass sie eine Kollision als Reaktion auf eine oder mehrere Signalschwellen erkennt, die durch den Signaldetektor 506 erkannt werden.
-
Die PHY 500 kann ferner eine Kalibriereinheit 510 zum Abstimmen des Signaldetektors 506, als ein nicht einschränkendes Beispiel, durch Abstimmen eines oder mehrerer Schwellenwerte (zum Beispiel Schwellenwerte, die an dem Signaldetektor 506 gespeichert sind) und/oder zum Abstimmen der Kollisionslogik 508 mit einem oder mehreren Parametern (z. B. einer programmierbaren Bitzeit zur Kollisionserkennung) einschließen.
-
In einer oder mehreren Ausführungsformen kann der Signaldetektor 506 so konfiguriert sein, dass er Signale erkennt, die an dem Kommunikationsbus 504 beobachtet werden, die außerhalb angegebener Schwellen liegen. Genauer gesagt, kann ein Signal EINGABE (z. B. ein Differenzsignal RXP, RXN, gezeigt in 6) des Busses 504 (z. B. beobachtet an Anschlüssen p und n, die betriebsmäßig mit einem Kabel mit einzelnem verdrilltem Paar gekoppelt sind) an dem Signaldetektor 506 beobachtet werden. Der Signaldetektor 506 kann so konfiguriert sein, dass er erkennt, ob eine EINGABE-Amplitude außerhalb einer Schwelle liegt, und als Reaktion an die Kollisionslogik 508 eine logische „1“ für ein Signal det out übermittelt, und erkennt, ob eine EINGABE-Amplitude innerhalb einer Schwelle liegt, und als Reaktion auf die Kollisionslogik 508 eine logische „0“ für ein Signal det out übermittelt. Als Reaktion auf das Empfangen einer logischen „1“ für det out kann die Kollisionslogik 508 so konfiguriert sein, dass sie ein Kollisionserkennungssignal (z. B. das Signal 310 von 3A oder das Signal 360 von 3B) überträgt, das an einer MAC (z. B. der MAC 108 von 2) empfangen werden kann.
-
Es versteht sich, dass eine 10SPE-PHY in einem Halbduplexmodus arbeiten kann und somit wird in herkömmlichen Vorrichtungen, Systemen und/oder Netzwerken, mindestens manches an Schaltlogik der 10SPE-PHY (z. B. der Signaldetektor 506) während eines Übertragungsmodus möglicherweise nicht verwendet. Im Gegensatz dazu kann gemäß verschiedenen Ausführungsformen der Signaldetektor 506, der verwendet werden kann, um andere Signalschwellen (z. B. Trägersignalschwellen zur Trägererfassung) einschließlich während der anderen Modi als die Übertragung (z. B. während eines Empfangsmodus) zu erkennen, verwendet werden, um Kollisionen (z. B. während einer „Kollisionserkennung“ (hierin auch als „Kollisionserkennungsvorgang“ bezeichnet)) während eines Übertragungsmodus (d. h. während ein Signal durch die Schaltlogik 502 übertragen wird) zu erkennen.
-
Wie hierin erwähnt, kann gemäß manchen Ausführungsformen die Kollisionserkennung während einer angegebenen Zeitdauer (z. B. einer programmierbaren Bitzeit) während der Signalübertragung durchgeführt werden. Dementsprechend kann in mindestens manchen dieser Ausführungsformen ein Bitzählwert (d. h. eine Anzahl von Bits, die durch die Schaltlogik 502 übertragen werden) überwacht und (z. B. über die Übertragungsschaltlogik 502) an die Kollisionslogik 508 bereitgestellt werden. Bei einem Bitzählwert, der gleich einer angegebenen Bitanzahl (z. B. 512) ist, kann ein Kollisionserkennungsvorgang beendet werden. Genauer gesagt, kann als Reaktion auf die Signalübertragung durch eine PHY (d. h. der Beginn der Signalübertragung, als Reaktion auf das aktivierte Übertragungsfreigabe-TxEn-Signal der MAC 108) ein Kollisionserkennungsvorgang an der PHY initiiert werden, und Bits, die von der Übertragungsschaltlogik 502 übertragen werden, können überwacht und durch die Kollisionslogik 508 in einem Bitzählwert gezählt werden, der die Anzahl von Bits darstellt, die übertragen werden, während die Kollisionslogik 508 zählt. Wenn der Bitzählwert gleich einer angegebenen Bitanzahl (z. B. 512) ist, kann ein Kollisionserkennungsvorgang beendet werden (z. B. durch Nichtverarbeiten und/oder Nichtbenutzen eines Signals (z. B. des Signals det out) innerhalb des Signaldetektors 506).
-
Es wird darauf hingewiesen, dass in manchen Ausführungsformen mindestens manche Abschnitte der Übertragungsschaltlogik 502 (z. B. ein Pulsformer und/oder ein Treiber) und/oder mindestens manche Abschnitte eines Empfängers (z. B. eines Signaldetektors) in einem Chip vorliegen können, der von einem Chip getrennt ist, der den Signaldetektor 506 und die Kollisionslogik 508 einschließt.
-
6 veranschaulicht einen Beispielsignaldetektor 600 gemäß verschiedenen Ausführungsformen der Offenbarung. Zum Beispiel kann der Signaldetektor 506 von 5 den Signaldetektor 600 einschließen. Wie veranschaulicht, schließt der Signaldetektor 600 einen Komparator 602, einen Komparator 604 und ein ODER-Gatter 606 ein. Jeder Komparator 602 und 604 kann über ein Schwellensteuersignal thrsh_cntl <X:0> abgestimmt werden, das zum Beispiel über die Kalibriereinheit 510 von 5 erzeugt werden kann. Der Betrieb eines Signaldetektors, wie des Signaldetektors 600, ist dem Durchschnittsfachmann bekannt, und somit werden manche Details bezüglich des Betriebs des Signaldetektors 600 nicht beschrieben.
-
Während eines in Betracht gezogenen Vorgangs des Signaldetektors 600 kann der Komparator 602 erkennen, ob ein positives Differenzsignal RXP einen ersten Schwellenwert erreicht hat oder nicht. Wenn ja, ist eine Ausgabe D1 des Komparators 602 eine „1.“ In ähnlicher Weise kann der Komparator 604 verwendet werden, um zu erkennen, ob ein negatives Differenzsignal RXN den ersten Schwellenwert erreicht hat (z. B. ein negatives des positiven Schwellenwertes) oder nicht. Wenn ja, ist eine Ausgabe D2 des Komparators 604 eine „1.“ Wenn entweder der Komparator 602 oder der Komparator 604 eine „1“ übermittelt, wird ein ODER-Gatter 606 eine „1“ übermittelt. Insbesondere, da ein Differenzsignal kontinuierlich zwischen seiner positiven Amplitude und negativen Amplitude schaltet, können die Ausgaben der Komparatoren 602 und 604 (d. h. Ausgaben D1 und D2) nicht notwendigerweise eine aufeinanderfolgende „1“ sein, die Ausgabe des ODER-Gatters 606 kann jedoch eine aufeinanderfolgende „1“ sein. Das Ergebnis des ODER-Gatters 606 ist somit nur eine aufeinanderfolgende „1“ oder ein hohes Potentialsignal, wenn der Betrag des beobachteten Signals größer als der erste Schwellenwert ist.
-
Wie vorstehend erwähnt, kann die Kollisionsschwellenerkennung auf verschiedenen Schwellenwerten basieren. Genauer gesagt, können in einem Beispiel die Komparatoren 602 und 604 mit einem ersten Schwellenwert zum Erkennen von Amplituden programmiert werden, die größer als erwartete Amplituden sind. In diesem Beispiel kann, wenn das Detektorausgabesignal det out ein hohes Potentialsignal einschließt, d. h. eine „1“, bestimmt werden, dass ein empfangenes Signal (z. B. das Differenzsignal RXP, RXN) eine Amplitude aufweist, die gleich oder größer als der erste Schwellenwert ist (z. B. somit eine Kollision aufgetreten ist). Andernfalls kann bestimmt werden, dass das empfangene Signal (z. B. das Differenzsignal RXP, RXN) eine Amplitude aufweist, die kleiner als der erste Schwellenwert ist. In anderen Ausführungsformen kann, wenn das Detektorausgabesignal det out ein hohes Potentialsignal länger als eine vorbestimmte Zeit (z. B. einige Nanosekunden) (d. h. das Differenzsignal RXP, RXN bleibt für die vorbestimmte Zeit über (d. h. ist größer als) der erste Differenzschwellenwert) einschließt, bestimmt werden, dass eine Kollision aufgetreten ist. Andernfalls kann bestimmt werden, dass keine Kollision aufgetreten ist.
-
Ferner können in einem anderen Beispiel die Komparatoren 602 und 604 mit einem zweiten, unteren Schwellenwert zum Erkennen von Amplituden programmiert werden, die kleiner als erwartete Amplituden sind. In diesem Beispiel kann, wenn das Detektorausgabesignal det out ein niedriges Potentialsignal einschließt, bestimmt werden, dass ein empfangenes Signal (z. B. das Differenzsignal RXP, RXN) eine Amplitude aufweist, die kleiner als der zweite Schwellenwert ist (z. B. eine somit eine Kollision aufgetreten ist). Andernfalls kann bestimmt werden, dass das empfangene Signal (z. B. das Differenzsignal RXP, RXN) eine Amplitude aufweist, die gleich oder größer als der zweite Schwellenwert ist. Anders ausgedrückt, kann in manchen Ausführungsformen die Kollisionsschwellenerkennung dadurch gekennzeichnet sein, dass sie Auslenkungen außerhalb eines Bereichs erkennt, der durch die erste Schwelle und die zweite Schwelle definiert ist. Das Ergebnis von ODER-Gatter 606 ist somit nur eine aufeinanderfolgende „0“ oder ein niedriges Potentialsignal, wenn der Betrag des beobachteten Signals kleiner als der zweite Schwellenwert ist.
-
In anderen Ausführungsformen kann, wenn das Detektorausgabesignal det out ein niedriges Potentialsignal länger als eine programmierte Zeit (z. B. einige Nanosekunden) (d. h. das Differenzsignal RXP, RXN bleibt für die vorbestimmte Zeit innerhalb (d. h. kleiner als) des zweiten Differenzschwellenwerts) einschließt, bestimmt werden (z. B. durch die Kollisionslogik 508), dass eine Kollision aufgetreten ist. Andernfalls kann bestimmt werden, dass keine Kollision aufgetreten ist.
-
Der Signaldetektor 600 ist als ein Beispielsignaldetektor bereitgestellt, und Ausführungsformen, die hierin offenbart sind, sind nicht auf einen bestimmten Signaldetektor beschränkt. Vielmehr kann jeder geeignete Signaldetektor zum Ausführen verschiedener Ausführungsformen der Offenbarung verwendet werden, einschließlich, ohne Einschränkung, unter Verwendung mehrerer Signaldetektoren.
-
Gemäß manchen Ausführungsformen kann das Kollisionserkennungssignal (z. B. erzeugt über die Kollisionslogik 508 von 5) zum Steuern des Betriebs eines zugeordneten Knotens verwendet werden. Genauer gesagt, kann zum Beispiel das Kollisionserkennungssignal an eine MAC (z. B. die MAC 108 von 2) übermittelt werden, und wenn ein Kollisionserkennungssignal angibt, dass eine Kollision aufgetreten ist, kann die MAC bewirken, dass der Knoten das Übertragen stoppt. Genauer gesagt, kann die MAC als Reaktion auf das Erkennen einer Kollision jede weitere Übertragung einstellen oder jede weitere Übertragung für mindestens eine vorbestimmte Backoff-Zeit einstellen.
-
7 ist ein Flussdiagramm eines Beispielverfahrens 700 zum Betreiben eines Netzwerks, wie eines 10SPE-Netzwerks. Das Verfahren 700 kann gemäß mindestens einer in der vorliegenden Offenbarung beschriebenen Ausführungsform angeordnet werden. Das Verfahren 700 kann in manchen Ausführungsformen von einer Vorrichtung, einem System oder einem Netzwerk durchgeführt werden, wie dem Netzwerk 100 von 1, dem Knoten 102 von 2, der PHY 500 von 5, und dem Signaldetektor 600 von 6, und/oder einer oder mehreren der Komponenten davon oder einem anderen System oder einer anderen Vorrichtung. In diesen und anderen Ausführungsformen kann das Verfahren 700 auf der Grundlage der Ausführung von Anweisungen durchgeführt werden, die auf einem oder mehreren nichtflüchtigen computerlesbaren Medien gespeichert sind. Obwohl als diskrete Blöcke veranschaulicht, können verschiedene Blöcke, je nach gewünschter Implementierung, in zusätzliche Blöcke unterteilt, zu weniger Blöcken kombiniert oder eliminiert werden.
-
Das Verfahren 700 kann bei Block 702 beginnen, wo eine Bitzeit zum Durchführen einer Kollisionserkennung programmiert werden kann und das Verfahren mit Block 704 fortfahren kann. Genauer gesagt, kann zum Beispiel eine Kalibriereinheit (z. B. die Kalibriereinheit 510 von 5) ein oder mehrerer Signale an die Kollisionslogik 508 übermitteln, um eine Kollisionslogik 508 mit der Bitzeit (z. B. 512 Bits) zu programmieren.
-
In Block 704 kann ein Signaldetektor mit einem oder mehreren Schwellenwerten programmiert werden. Genauer gesagt, kann eine Kalibriereinheit (z. B. die Kalibriereinheit 510 von 5) ein Schwellensteuersignal an den Signaldetektor (z. B. den Signaldetektor 506 von 5) zum Programmieren des Signaldetektors mit einem Schwellenwert übermitteln. Zum Beispiel kann während eines Kollisionserkennungsvorgangs der Signaldetektor (z. B. der Signaldetektor 506) während einer ersten Phase (z. B. einer ersten Anzahl von Bits (z. B. 256 Bits)) des Kollisionsschwellenerkennungsvorgangs mit einem ersten Schwellenwert programmiert werden, und der Signaldetektor kann während einer zweiten Phase (z. B. einer zweiten Anzahl von Bits (z. B. 256 Bits)) des Kollisionserkennungsvorgangs mit einem anderen Schwellenwert programmiert werden. Alternativ können mehrere Instanzen des Signaldetektors 506 bereitgestellt werden, die jeweils mit einem jeweiligen Schwellenwert bereitgestellt werden.
-
Bei Block 706 wird ein erstes Signal an einen gemeinsamen Bus übertragen, und das Verfahren 700 kann mit Block 708 fortfahren. Zum Beispiel kann eine PHY des Knotens 102_2 (siehe 1) eines 10SPE-Netzwerks ein Signal an den Bus 104 (siehe 1) übertragen.
-
Bei Block 708 kann ein zweites Signal an dem gemeinsamen Bus beobachtet werden, und das Verfahren 700 kann mit Block 710 fortfahren. Genauer gesagt, kann zum Beispiel die PHY des Knotens 102 2 (siehe 1) das zweite Signal (z. B das Eingabesignal EINGABE von 5) während des Übertragens des ersten Signals beobachten. In einer Ausführungsform kann ein Differenzsignal beobachtet werden (z. B. bei einer Differenzeingabe), und das Differenzsignal kann für das zweite Signal repräsentativ sein.
-
Bei Block 710 kann eine Amplitude des beobachteten Signals mit einer Anzahl von Schwellenwerten verglichen werden, und das Verfahren 700 kann mit Block 712 fortfahren. Zum Beispiel kann der Betrag der Amplitude des beobachteten Signals mit einem ersten Satz von Schwellenwerten (z. B. den Schwellenwerten 308A und/oder 308B von 3A) und/oder einem zweiten Satz von Schwellenwerten (z. B. den Schwellenwerten 358A und/oder 358B von 3B) verglichen werden. Genauer gesagt, kann während einer ersten Phase (z. B. einer ersten Anzahl von Bits) die Amplitude des beobachteten Signals (z. B. über den Signaldetektor 506 von 5) mit dem ersten Satz von Schwellenwerten (z. B. den Schwellenwerten 308A und/oder 308B von 3A) verglichen werden, um zu bestimmen, ob der Betrag der Amplitude des beobachteten Signals größer als der erste Satz von Schwellenwerten (d. h. größer als erwartet) ist. Ferner kann zum Beispiel während einer zweiten Phase (z. B. einer zweiten Anzahl von Bits) die Amplitude des beobachteten Signals (z. B. über den Signaldetektor 506 von 5) mit dem zweiten Satz von Schwellenwerten (z. B. den Schwellen 358A und/oder 358B von 3B) verglichen werden, um zu bestimmen, ob der Betrag der Amplitude des beobachteten Signals kleiner als der zweite Satz von Schwellenwerten (d. h. kleiner als erwartet) ist.
-
Bei Block 712 kann basierend auf dem Vergleich der Amplitude des beobachteten Signals mit der Anzahl von Schwellenwerten bestimmt werden, ob eine Kollision aufgetreten ist oder nicht, und das Verfahren 700 kann mit Block 714 fortfahren. In manchen Ausführungsformen kann eine Kollisionslogik (z. B. die Kollisionslogik 508 von 5) basierend auf einem Erkennungssignal (z. B. dem Signal det out aus dem Signaldetektor 506 von 5) bestimmen, ob eine Kollision aufgetreten ist oder nicht. Genauer gesagt, kann, als Reaktion darauf, dass der Betrag der Amplitude des beobachteten Signals größer als der erste Differenzschwellenwert (z. B. Schwellen 308A und/oder 308B von 3A) oder kleiner als der zweite Differenzschwellenwert (z. B. Schwellen 358A und/oder 358B von 3B) ist, bestimmt werden, dass eine Kollision aufgetreten ist.
-
Bei Block 714 kann ein Kollisionserkennungsprozess (z. B. nach Ablauf der programmierbaren Bitzeit (z. B. 512 Bits) beendet werden. Genauer gesagt, kann, zum Beispiel als Reaktion auf einen Bitzählwert (z. B. bestimmt über die Übertragungsschaltlogik 502), der mit einer programmierten Bitzeit (z. B. bei der Kollisionslogik 508) übereinstimmt, der Kollisionserkennungsprozess beendet werden. Optional kann bei Block 714 die Signalerkennung für einen Empfangsmodus eingestellt werden, und insbesondere eingestellt werden, um andere Signalschwellenwerte zu verwenden, die zum Beispiel einem Zeitraum für eine andere Signalschwellenerkennung 412 von 4 zugeordnet sind.
-
Modifikationen, Ergänzungen oder Auslassungen können an dem Verfahren 700 vorgenommen werden, ohne von dem Schutzumfang der vorliegenden Offenbarung abzuweichen. Zum Beispiel können die Vorgänge des Verfahrens 700 in unterschiedlicher Reihenfolge implementiert werden. Des Weiteren werden die skizzierten Vorgänge und Aktionen nur als Beispiele bereitgestellt, und manche der Vorgänge und Aktionen können optional, zu weniger Vorgängen und Aktionen kombiniert oder zu zusätzlichen Vorgängen und Aktionen erweitert sein, ohne das Wesen der offenbarten Ausführungsform zu beeinträchtigen.
-
Ferner kann das Verfahren 700 gemäß manchen Ausführungsformen ein Überabtasten des Signals einschließen, das von einem Signaldetektor erzeugt wird (z. B., um die Zuverlässigkeit und/oder Genauigkeit zu verbessern). Genauer gesagt, kann zum Beispiel für ein Bit-Einheits-Integral von X Nanosekunden das empfangene Signal N Mal abgetastet werden. Mit anderen Worten können N Abtastwerte des empfangenen Signals pro Bitzeit (z. B. pro 80 Nanosekunden) verarbeitet werden. Genauer gesagt, kann, als ein Beispiel, ein Abtastwert des empfangenen Signals alle 10 Nanosekunden verarbeitet werden.
-
Verschiedene Ausführungsformen, wie hierin offenbart, können sich auf eine niedrige Leistung, schnelles und effizientes Kollisionserkennungsverfahren beziehen, wie eine zugehörige Schaltlogik, die nur einen kleinen Bereich erfordern kann. Verschiedene Ausführungsformen der vorliegenden Offenbarung können ist 10SPE-Netzwerke für verschiedene Anwendungen implementiert werden, wie zum Beispiel die Automobilanwendung, industrielle Anwendungen, Server-Backplanes, ohne Einschränkung. Ferner können verschiedene Ausführungsformen der Offenbarung ohne Einschränkung auf Gebäude, Aufzüge, Beleuchtung, Industriefelder, Internet der Dinge (IOT) anwendbar sein.
-
Wie in der vorliegenden Offenbarung verwendet, können sich die Begriffe „Modul“ oder „Komponente“ auf spezifische Hardwareimplementierungen beziehen, die konfiguriert sind, um die Aktionen des Moduls oder der Komponente und/oder Softwareobjekte oder Softwareroutinen durchzuführen, die auf Universalhardware (z. B. computerlesbaren Medien, Verarbeitungsvorrichtungen usw.) des Rechensystems gespeichert und/oder von dieser ausgeführt werden können. In manchen Ausführungsformen können die verschiedenen Komponenten, Module, Engines und Dienste, die in der vorliegenden Offenbarung beschrieben sind, als Objekte oder Prozesse implementiert werden, die auf dem Rechensystem ausgeführt werden (z. B. als separate Threads). Obwohl manche der in der vorliegenden Offenbarung beschriebenen Systeme und Verfahren allgemein als in Software implementiert (gespeichert auf und/oder ausgeführt durch Universalhardware) beschrieben sind, sind spezifische Hardwareimplementierungen oder eine Kombination von Software und spezifischen Hardwareimplementierungen ebenfalls möglich und werden in Betracht gezogen.
-
Begriffe, die in der vorliegenden Offenbarung und insbesondere in den beiliegenden Ansprüchen verwendet werden (z. B. Inhalte der beiliegenden Ansprüche), sind allgemein als „offene“ Begriffe gedacht (z. B. sollte der Begriff „einschließlich“ als „einschließlich, jedoch nicht beschränkt auf interpretiert werden, der Begriff „aufweisend“ sollte als „mindestens aufweisend“ interpretiert werden, der Begriff „schließt ein“ sollte als „schließt ein, ist jedoch nicht beschränkt auf interpretiert werden usw.).
-
Darüber hinaus wird, wenn eine bestimmte Anzahl einer eingeführten Anspruchsangabe beabsichtigt ist, eine solche Absicht ausdrücklich in dem Anspruch angegeben, und in Ermangelung einer solchen Angabe liegt keine solche Absicht vor. Als Verständnishilfe können zum Beispiel die folgenden beiliegenden Ansprüche eine Benutzung der einleitenden Wendungen „mindestens eine/r/s“ und „eine/r/s oder mehrere“ zum Einführen von Anspruchsangaben enthalten. Die Verwendung solcher Wendungen sollte jedoch nicht so ausgelegt werden, dass sie impliziert, dass die Einführung einer Anspruchsangabe durch die unbestimmten Artikel „ein“ oder „eine“ einen bestimmten Anspruch, der eine solche eingeführte Anspruchsangabe enthält, auf Ausführungsformen beschränkt, die nur eine solche Angabe enthalten, selbst wenn derselbe Anspruch die einleitenden Wendungen „eine/r/s oder mehrere“ oder „mindestens eine/r/s“ und unbestimmte Artikel wie „ein“ und/oder „eine“ einschließt (z. B. sollte „ein“ und/oder „eine“ so interpretiert werden, dass es „mindestens ein/e“ oder „ein/e oder mehrere“ bedeutet); gleiches gilt für die Verwendung bestimmter Artikel, die zum Einführen von Anspruchsangaben verwendet werden.
-
Selbst wenn eine bestimmte Anzahl einer eingeführten Anspruchsangabe explizit angegeben ist, wird der Fachmann außerdem erkennen, dass eine solche Angabe so interpretiert werden sollte, dass sie mindestens die angegebene Anzahl bedeutet (z. B. bedeutet die bloße Angabe von „zwei Angaben“ ohne andere Modifikatoren mindestens zwei Angaben oder zwei oder mehr Angaben). Des Weiteren ist in den Fällen, in denen eine Konvention analog zu „mindestens eines von A, B und C usw.“ oder „eines oder mehrere von A, B und C usw.“ verwendet wird, eine solche Konstruktion im Allgemeinen dazu beabsichtigt, A allein, B allein, C allein, A und B zusammen, A und C zusammen, B und C zusammen, oder A, B und C zusammen einzuschließen usw.
-
Ferner sollte jedes disjunkte Wort oder jede disjunkte Wendung, das bzw. die zwei oder mehr alternative Begriffe darstellt, sei es in der Beschreibung, den Ansprüchen oder den Zeichnungen, so verstanden werden, dass die Möglichkeiten des Einschließens eines der Begriffe, des einen oder des anderen Begriffs oder beider Begriffe in Betracht gezogen werden. Zum Beispiel sollte die Wendung „A oder B“ so verstanden werden, dass sie die Möglichkeiten „A“ oder „B“ oder „A und B“ einschließt.
-
Zusätzliche, nicht einschränkende Ausführungsformen der Offenbarung schließen ein:
- Ausführungsform 1: Verfahren zum Betreiben einer Bitübertragungsschicht (PHY) eines 10SPE-Netzwerks, umfassend: Übertragen eines ersten Signals von einem Knoten an einen gemeinsamen Bus; Beobachten eines zweiten Signals, das sich auf dem gemeinsamen Bus während mindestens eines Abschnitts des Übertragens befindet; und Erkennen einer Kollision auf dem gemeinsamen Bus als Reaktion auf ein Erkennen, dass das beobachtete zweite Signal eines von größer als ein erster Schwellenwert und kleiner als ein zweiter Schwellenwert ist.
-
Ausführungsform 2: Verfahren gemäß Ausführungsform 1, ferner umfassend ein Vergleichen einer Amplitude des beobachteten zweiten Signals mit mindestens einem von dem ersten Schwellenwert und dem zweiten Schwellenwert.
-
Ausführungsform 3: Verfahren gemäß einer der Ausführungsformen 1 und 2, wobei das Vergleichen der Amplitude des beobachteten zweiten Signals mit mindestens einem von dem ersten Schwellenwert und dem zweiten Schwellenwert ein Vergleichen der Amplitude des beobachteten zweiten Signals mit sowohl dem ersten Schwellenwert als auch dem zweiten Schwellenwert umfasst.
-
Ausführungsform 4: Verfahren gemäß einer der Ausführungsformen 1 bis 3, wobei das Vergleichen der Amplitude des zweiten Signals mit mindestens einer von der ersten Schwelle und der zweiten Schwelle ein Vergleichen einer Amplitude eines Differenzsignals mit mindestens einem von dem ersten Schwellenwert und dem zweiten Schwellenwert umfasst.
-
Ausführungsform 5: Verfahren gemäß einer der Ausführungsformen 1 bis 4, wobei das Erkennen der Kollision ein Erkennen der Kollision während einer programmierbaren Bitzeit umfasst.
-
Ausführungsform 6: Verfahren zum Betreiben einer Single Pair Ethernet-Bitübertragungsschicht (PHY), umfassend: Übertragen eines ersten Signals an einen gemeinsamen Bus; und Durchführen einer Kollisionsschwellenerkennung, während das erste Signal übertragen wird, und als Reaktion darauf, dass das erste Signal übertragen wird, schließt das Durchführen der Kollisionsschwellenerkennung ein: Beobachten einer Amplitude eines zweiten Signals an dem gemeinsamen Bus; und Bestimmen, dass eine Kollision aufgetreten ist, als Reaktion darauf, dass ein Betrag der beobachteten Amplitude des zweiten Signals eines von größer als ein erster Schwellenwert und kleiner als ein zweiter Schwellenwert ist.
-
Ausführungsform 7: Verfahren gemäß Ausführungsform 6, wobei das Beobachten der Amplitude des zweiten Signals ein Beobachten der Amplitude eines Differenzsignals umfasst.
-
Ausführungsform 8: Verfahren gemäß einer der Ausführungsformen 6 und 7, wobei das Durchführen einer Kollisionsschwellenerkennung ferner umfasst: Programmieren eines Signaldetektors der PHY auf den ersten Schwellenwert; Vergleichen, über den Signaldetektor, des Betrags der Amplitude des zweiten Signals mit dem ersten Schwellenwert; Programmieren des Signaldetektors der PHY auf den zweiten Schwellenwert; und Vergleichen, über den Signaldetektor, des Betrags der Amplitude des zweiten Signals mit dem zweiten Schwellenwert, wobei das Bestimmen, dass die Kollision aufgetreten ist, ein Bestimmen, dass die Kollision aufgetreten ist, als Reaktion darauf umfasst, dass der Betrag der Amplitude des zweiten Signals eines von größer als der erste Schwellenwert und kleiner als der zweite Schwellenwert ist.
-
Ausführungsform 9: Vorrichtung der Bitübertragungsschicht (PHY), umfassend: einen Sender, der so konfiguriert ist, dass er ein erstes Signal über einen gemeinsamen Bus überträgt; einen Signaldetektor, der so konfiguriert ist, dass: so konfiguriert ist, dass er ein zweites Signal an einem gemeinsamen Bus während der Übertragung des ersten Signals beobachtet; eine Amplitude des beobachteten zweiten Signals mit einer Anzahl von Schwellenwerten vergleicht; und ein Detektorausgabesignal basierend auf einem Vergleich der Amplitude des beobachteten zweiten Signals mit mindestens einem Schwellenwert der Anzahl von Schwellenwerten erzeugt; und eine Kollisionslogik, die mit dem Signaldetektor gekoppelt und so konfiguriert ist, dass: sie das Detektorausgabesignal empfängt; und bestimmt, ob eine Kollision auf dem gemeinsamen Bus aufgetreten ist, basierend auf dem Detektorausgabesignal.
-
Ausführungsform 10: Vorrichtung gemäß Ausführungsform 9, wobei der Signaldetektor so konfiguriert ist, dass er ein Steuersignal zum Programmieren des mindestens einen Schwellenwertes empfängt.
-
Ausführungsform 11: Vorrichtung gemäß einer der Ausführungsformen 9 und 10, ferner umfassend eine Kalibriereinheit, die so konfiguriert ist, dass sie ein oder mehrere Steuersignale an den Signaldetektor zum Einstellen des mindestens einen Schwellenwertes übermittelt.
-
Ausführungsform 12: Vorrichtung gemäß einer der Ausführungsformen 9 bis 11, wobei der Signaldetektor einschließt: einen ersten Komparator, der so konfiguriert ist, dass er ein Differenzsignal, das das zweite Signal einschließt, empfängt und ein erstes Erkennungssignal erzeugt; einen zweiten Komparator, der so konfiguriert ist, dass er das Differenzsignal, das das zweite Signal einschließt, empfängt und ein zweites Erkennungssignal erzeugt; und ein ODER-Gatter, das so konfiguriert ist, dass es das erste Erkennungssignal und das zweite Erkennungssignal empfängt und das Detektorausgabesignal erzeugt.
-
Ausführungsform 13: Vorrichtung gemäß einer der Ausführungsformen 9 bis 12, wobei der Signaldetektor ferner so konfiguriert ist, dass er eingehende Signale in einem Empfangsmodus erkennt.
-
Ausführungsform 14: Vorrichtung gemäß einer der Ausführungsformen 9 bis 13, wobei die Kollisionslogik so konfiguriert ist, das sie das Detektorausgabesignal mit einer Rate von etwa einem Abtastwert pro 10 Nanosekunden abtastet.
-
Während die vorliegende Offenbarung hierin in Bezug auf bestimmte veranschaulichte Ausführungsformen beschrieben wurde, wird der Fachmann erkennen und anerkennen, dass die vorliegende Erfindung nicht darauf beschränkt ist. Vielmehr können viele Ergänzungen, Streichungen und Modifikationen an den veranschaulichten und beschriebenen Ausführungsformen vorgenommen werden, ohne von dem Schutzumfang der Erfindung, wie er hierin nachfolgend zusammen mit ihren rechtlichen Äquivalenten beansprucht wird, abzuweichen. Zusätzlich können Merkmale von einer Ausführungsform mit Merkmalen einer anderen Ausführungsform kombiniert werden, während sie immer noch innerhalb des Schutzumfangs der Erfindung enthalten sind, wie er vom Erfinder in Betracht gezogen wird.
-
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
-
- CN 201910784565 [0001]
- CN 16/587505 [0001]