DE112020005872T5 - Erweiterte linktrainingszeit, verhandelt beim linkstart - Google Patents

Erweiterte linktrainingszeit, verhandelt beim linkstart Download PDF

Info

Publication number
DE112020005872T5
DE112020005872T5 DE112020005872.7T DE112020005872T DE112020005872T5 DE 112020005872 T5 DE112020005872 T5 DE 112020005872T5 DE 112020005872 T DE112020005872 T DE 112020005872T DE 112020005872 T5 DE112020005872 T5 DE 112020005872T5
Authority
DE
Germany
Prior art keywords
link
link training
training time
extend
capabilities
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
DE112020005872.7T
Other languages
English (en)
Inventor
Bruce McLoughlin
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE112020005872T5 publication Critical patent/DE112020005872T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/60Receivers
    • H04B10/66Non-coherent receivers, e.g. using direct detection
    • H04B10/69Electrical arrangements in the receiver
    • H04B10/697Arrangements for reducing noise and distortion
    • H04B10/6971Arrangements for reducing noise and distortion using equalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03012Arrangements for removing intersymbol interference operating in the time domain
    • H04L25/03114Arrangements for removing intersymbol interference operating in the time domain non-adaptive, i.e. not adjustable, manually adjustable, or adjustable only during the reception of special signals
    • H04L25/03133Arrangements for removing intersymbol interference operating in the time domain non-adaptive, i.e. not adjustable, manually adjustable, or adjustable only during the reception of special signals with a non-recursive structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03878Line equalisers; line build-out devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/07Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
    • H04B10/073Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an out-of-service signal
    • H04B10/0731Testing or characterisation of optical devices, e.g. amplifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/07Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
    • H04B10/075Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal
    • H04B10/077Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal using a supervisory or additional signal
    • H04B10/0775Performance monitoring and measurement of transmission parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/40Transceivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03343Arrangements at the transmitter end

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Communication Control (AREA)

Abstract

Hierin beschriebene Beispiele betreffen Linktraining zwischen netzwerkverbundenen Vorrichtungen. Bei manchen Beispielen wird ein Betrag zum Erweitern des Linktrainings bestimmt. Das Ausmaß zum Erweitern des Linktrainings kann durch Folgendes bestimmt werden: Empfangen, durch einen Empfänger in einer ersten Vorrichtung, von Signalen über eine Spur von einem Sender in einer zweiten Vorrichtung, wobei die Signale eine Fähigkeit zum Erweitern der Linktrainingszeit und ein Ausmaß zum Erweitern der Linktrainingszeit angeben; Bestimmen, an der ersten Vorrichtung, einer Linktrainingszeit basierend auf einer Standardlinktrainingszeit und einem Betrag zum Erweitern der Linktrainingszeit; und Durchführen eines Linktrainings basierend auf der bestimmten Linktrainingszeit. In manchen Beispielen ist der bestimmte Betrag ein höchster gemeinsamer Nenner der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit. Bei manchen Beispielen umfassen die Signale, die Fähigkeit , die Linktrainingszeit zu erweitern, und ein Ausmaß zum Erweitern der Linktrainingszeit angeben, eine IEEE-802.3-kompatible Nächstseite.

Description

  • PRIORITÄTSANSPRUCH
  • Diese Anmeldung beansprucht die Priorität gemäß 35 U.S.C. § 365(c) der US-ANMELDUNG Nr. 17/022,610 , eingereicht am 16. September 2020, mit dem Titel EXTENDED LINK-TRAINING TIME NEGOTIATED ON LINKSTART-UP, was wiederum den Nutzen der Priorität der vorläufigen US-Anmeldung Nr. 62/941,949 , eingereicht am 29. November 2019 mit dem Titel EXTENDED LINK-TRAINING TIME NEGOTIATED ON LINK START-UP, beansprucht und zusätzlich den Nutzen der Priorität der vorläufigen US-Anmeldung Nr. 62/941,985 beansprucht, die alle in ihrer Gesamtheit hiermit aufgenommen werden.
  • BESCHREIBUNG
  • Ein optisches Modul ist ein Hot-Plugging-optischer Sendeempfänger, der in Datenkommunikationsanwendungen mit hoher Bandbreite verwendet wird. Das optische Modul weist typischerweise eine elektrische Verbindung zu einem Chip (zum Beispiel einer anwendungsspezifischen integrierten Host-Schaltung (ASIC)) auf. Diese elektrische Verbindung ist ein serieller Link mit hoher Datenrate (als xGAUI-n bezeichnet, wobei AUI für die Anschlusseinheitschnittstelle steht, x die Datenrate pro Spur in Giga-Bits pro Sekunde (Gbps) ist und n die Anzahl der Spuren ist) mit Stromraten von 50 Gb/s pro Spur (50GAUI-1). 50GAUI-1 ist eine einspurige serielle Verbindung, die für Chip-zu-Chip- oder Chip-zu-Modul-Zwischenverbindungen verwendet wird. Ein optisches Modul ist jedoch lediglich ein Beispiel für eine Vorrichtung, die eine serielle Verbindung verwendet. Ein elektrisches Signalempfangs- und Verarbeitungsmodul kann auch eine serielle Verbindung verwenden.
  • Serielle Kommunikation zwischen einem Sender und einem Empfänger mit sehr hohen Datenraten verwendet Entzerrung, um eine frequenzabhängige Signaldämpfung abzuschwächen. Entzerrung kann am Sender (Tx) und/oder am Empfänger (Rx) angewendet werden. Typischerweise wird eine Kombination von Sender- und Empfängerentzerrung verwendet.
  • Figurenliste
    • 1 stellt ein beispielhaftes System dar.
    • 2A-2B stellen beispielhafte Systeme dar.
    • 3A stellt einen beispielhaften Inhalt von Feldern einer nächsten Seite dar.
    • 3B zeigt ein beispielhaftes zweitnächstes Seitenformat.
    • 4A stellt eine Prozesssequenz eines Linktrainings dar.
    • 4B stellt eine beispielhafte Sequenz dar, die für eine Link-Neutrainingsoperation verwendet werden kann.
    • 5A stellt ein Beispiel für einen Entzerrer dar.
    • 5B stellt ein Funktionsmodell einer Struktur eines Vier-Abgriff-Vorwärtskopplungsentzerrers (FFE) dar.
    • 6A und 6B stellen beispielhafte Prozesse dar.
    • 7A und 7B stellen beispielhafte Prozesse dar.
    • 8 stellt ein Netzwerkschnittstelle dar.
    • 9 stellt einen beispielhaften Schalter dar.
    • 10 stellt ein beispielhaftes System dar.
    • 11 stellt eine Umgebung dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Unter netzverbundenen Vorrichtungen werden für Vorrichtungen zum Kommunizieren miteinander gemeinsame Kommunikationsfähigkeiten und Parameter entdeckt. Autoverhandlung (AN) ist ein Prozess, bei dem Endpunkte einer Verbindung Informationen über verschiedene für ihre Kommunikation relevante Fähigkeiten teilen. Für ein Beispiel für AN siehe Klausel 73 von IEEE (Institute of Electrical and Electronics Engineers) 802.3-2018. Verbindungspartnereinrichtungen tauschen Fähigkeiten und Betriebsmodi über den Austausch von Basisseiten aus, und, falls angefordert, tauschen die Verbindungspartnereinrichtungen nächste Seiten aus. Gemäß Klausel 73 von IEEE 802.3-2018 sendet jede Vorrichtung eine Liste ihrer Datenratenfähigkeiten an ihren Verbindungspartner. Die automatische Verhandlung kann die höchste gemeinsame Fähigkeit bestimmen und die höchsten gemeinsamen Fähigkeiten werden zur Kommunikation zwischen den Verbindungspartnereinrichtungen verwendet. Nachdem beide Vorrichtungen ihre Fähigkeitsliste des Verbindungspartners empfangen haben, können die Vorrichtungen zu den höchsten gemeinsamen Datenraten- und Merkmalsfähigkeiten übergehen.
  • Linktraining ist ein Prozess, der durch eine Vorrichtung verwendet wird, die durch ein Kupferkabel, eine Backplane oder andere drahtgebundene oder drahtlose Signalübertragungsmedien verbunden ist, durch die der Sender und der Empfänger auf einem seriellen Hochgeschwindigkeitslink miteinander kommunizieren, um ihre Entzerrungseinstellungen abzustimmen. Zum Beispiel können Serialisierer/Deserialisierer (SerDes) Linktraining verwenden. Linktraining ermöglicht das Abstimmen des Filters mit endlicher Impulsantwort (FIR) für jeden Kanal in einer anwendungsspezifischen integrierten Schaltung (ASIC) oder einer anderen Vorrichtung, um die gewünschte Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR), Augengröße oder Verbindungsfehler (z. B., unkorrigierbare und korrigierbare Vorwärtsfehlerkorrektur (FEC) -Fehler, Pseudozufallsbitsequenzfehler (PRBS-FEHLER), physische Codierungs-Subschicht (PCS-FEHLER)) zu erreichen. In einigen Beispielen untersucht der Empfänger das Auge nach dem Anwenden von Entzerrung auf das Signal und bestimmt, ob Augenhöhe und/oder Augenbreite akzeptabel ist. Der Empfänger kann eine Entscheidung treffen, Linktraining zu beenden, weil das Auge akzeptabel ist, oder trainieren, um das Auge weiter zu optimieren. Falls der Empfänger anfordert, dass sein Verbindungspartnersender die Vorläufer-, Hauptcursor- oder Nachcursor-Entzerrungseinstellung ändert, beginnt der Augenuntersuchungsprozess erneut.
  • Da Verbindungspartner sowohl einen Sender als auch einen Empfänger beinhalten, kann ein Verbindungspartner gleichzeitig den Sender des anderen Partners trainieren. Nachdem der Link trainiert wurde, beginnen die zwei Vorrichtungen das Senden von normalem Datenverkehr unter Verwendung der optimierten Sendereinstellungen.
  • Die Ethernet (IEEE 802.3) -Standards für 10 Gb/s und mehr über Backplane- und Kupferkabel beinhalten eine PMD (Physical Media Dependent) -Steuerfunktion, die das Anpassen der Senderentzerrungseinstellungen als Teil des Linktrainings ermöglicht. Die PMD-Steuerfunktion verwendet ein handshakebasiertes Protokoll zum Anfordern von Koeffizientenänderungen. Das Protokoll wird durch Zustandsdiagramme beschrieben (z. B., 72-4, 72-5 und 72-6 in IEEE Std 802.3-2012 und Variationen davon). Diese Zustandsdiagramme werden in genehmigten Standards und Entwurfsstandards für mehrere PMDs (z. B., 10GBASE-KR, 40GBASE-KR4, 40GBASE-CR4 und 100GBASE-CR10) referenziert.
  • IEEE 802.3-2018 Klausel 73 und Unterklauseln 73.7.4 und 73.7.5 und Tabelle 73-7 legen dar, dass ein getestetes Gerät für die richtige Zeitdauer zurückgestellt werden wird, bevor versucht wird, den Status der Verbindung, der durch den Auto-Negotiation-Prozess bestimmt wird, zu verifizieren. IEEE 802.3-2018 Abschnitte 72 und 73 spezifizieren geeignete Linktrainingszeiten. Ein Link scheitert, falls derLink_fail_hemm_timer abgelaufen ist, bevor der Link aktiv ist (z. B. Signal wird ordnungsgemäß decodiert). In einigen Fällen kann jedoch die Zeitdauer, die durch Link_fail_hemm_timer festgelegt wird, unzureichend sein, um eine gewünschte Bitfehlerrate (BER) auf dem Link zu erreichen, was zu mehr Fehlern während des Normalbetriebs führt (z. B., weniger zyklische Redundanzprüfungs- (CRC) Fehler).
  • Ein Verweis auf einen beliebigen Standard bezieht sich hier auf eine beliebige Version einschließlich früherer Versionen, aktueller und zukünftiger Versionen sowie proprietärer Ableitungen davon.
  • Verschiedene Ausführungsformen versuchen, die Verbindungsqualität zu verbessern, die Autoverhandlung zumindest in Fällen verwenden, in denen die IEEE definierte Verbindungstrainingszeit möglicherweise kein optimales Training erlaubt. IEEE 802.3 schlägt eine Verhandlung unter Verwendung einer nächsten Seitenaustauschphase vor. Für ein Beispiel für nächste Seitennachrichten siehe Anhang 28 C von IEEE 802.3-2018. In einigen Beispielen können nächste Seiten verwendet werden, um Identifikationstags, energieeffiziente Ethernet (EEE) -Parameter, Betriebsparameter und anbieterspezifische Informationen auszutauschen. Gemäß verschiedenen Ausführungsformen können einer oder beide Verbindungspartner einen Austausch der nächsten Seite während einer Autoverhandlung verwenden, um die Fähigkeit anzukündigen, die Verbindungstrainingszeit zu verlängern, und eine Zeitdauer, während der ein Verbindungspartner die Verbindungstrainingszeit verlängern kann. Bei manchen Beispielen können Verbindungspartner eine oder mehrere Zeitmengen ankündigen, für die die Verbindungstrainingszeit verlängert werden kann. Linkpartner können verhandeln, wie stark „der Link_Fail_Inhibition_Timer“ erweitert werden soll, um eine Zeitdauer für Linktraining einzustellen. Falls beide Seiten die Fähigkeit ankündigen, dies zu tun, dann wird in manchen Beispielen der höchste gemeinsame Nenner von zwei Erweiterungszeiten verwendet und zu der Verbindungsausfallsperrzeit addiert, um eine Gesamtmenge an erlaubter Verbindungsausfallsperrzeit zu bestimmen. Falls jedoch ein Verbindungspartner angibt, dass die Verbindungsausfallsperrzeit nicht unterstützt wird, dann wird die Standardsperrzeit verwendet (z. B., IEEE 802.3 Standard Link_Fail_Hemm_Timer).
  • Verschiedene Ausführungsformen können für Linktraining oder Linkneutraining zwischen Chip-zu-Chip über Leiterbahnen von Backplane-Verbindungen (z. B., 10GBASE-KRx oder Ableitungen davon (wobei x eine ganze Zahl ist)) oder Netzwerkschnittstelle-zu-Netzwerkschnittstelle-Verbindungen durch Kupferkabel (z. B., 40GBASE-CR4 oder Ableitungen davon) verwendet werden. Verschiedene Ausführungsformen können auf Link-oder Fahrspurgeschwindigkeiten von oder über 10 Gbps oder eine beliebige Link- oder Fahrspurgeschwindigkeit angewendet werden.
  • Verschiedene Ausführungsformen stellen eine Weise bereit, dass Partner oder Ports übereinstimmen, die IEEE definierte Linktrainingszeit zu erweitern, was eine optimalere Entzerrerabstimmung ermöglicht. Der Empfang einer proprietären „nächsten Seite“ kann unter anderem eine Anforderung durch einen Verbindungspartner darstellen, die nachfolgende Verbindungstrainingsphase um eine spezifizierte Zeit zu erweitern. Die maximale Zeitdauer, um das Erweitern des Link-Trainings zu ermöglichen, kann in einem Feld der nächsten Seite spezifiziert werden. Zum Beispiel repräsentiert der Wert in dem Feld die zusätzliche Zeit, die über die IEEE definierte maximale Zeit zuzulassen ist.
  • Viele SerDes haben ein Problem, dass eine gute RX-Entzerrung (z. B., Augenqualität, Signalintegrität) in einer Zeit erreicht wird, die unter IEEE 802.3 vergeben wird. Das Erweitern der Verbindungsausfallsperrzeit kann mehr Zeit für das Verbindungstraining zum Verbessern der Verbindung ermöglichen. Durch Erweitern der Linktrainingszeit kann die Bitfehlerrate (BER) auf dem Link minimiert werden, was zu weniger Fehlern während des Normalbetriebs führt (z. B., weniger CRC-FEHLER).
  • Linktraining ist auf andere drahtgebundene Kommunikations- oder Vernetzungssysteme anwendbar, wie etwa unter anderem FibreChannel, InfiniBand oder SAS (Serial Attached Small Computer System Interface). Das Erweitern der Linktrainingszeit kann für 4-stufige Pulsamplitudenmodulations (PAM) -Links (z. B., PAM4-Links), PAM4-, PAM5-, PAM6-, n-stufige PAM-LINKS (wobei n eine ganze Zahl ist), Non-Return-to-Zero (NRZ) - Leitungscode und so weiter nützlich sein.
  • Verschiedene Ausführungsformen stellen ein Protokoll bereit, das jederzeit nach dem Einrichten einer Punkt-zu-Punkt-Verbindung aufgerufen werden kann. Verschiedene Ausführungsformen stellen zumindest bereit, dass das Abstimmen fortgesetzt wird, nachdem eine Verbindung eingerichtet wurde. Verschiedene Ausführungsformen können verwendet werden, um die Abstimmung einer Verbindung über die Zeit hinaus zu erweitern, die von IEEE 802.3 für das Verbindungstraining im Anschluss an die automatische Verhandlung erlaubt wird. In manchen Fällen kann das Protokoll verwendet werden, nachdem die Verbindung eingerichtet wurde, um die Sende (Tx) -Entzerrung auf beiden Seiten der Verbindung zu modifizieren. Manche Ausführungsformen stellen eine Fähigkeit bereit, einen Verbindungspartner aufzufordern, Änderungen an den Sendeeinstellungen des Verbindungspartners vorzunehmen, um den lokalen Empfänger zu optimieren. Linkabstimmung kann aus einer Vielzahl von Gründen wünschenswert sein, wie etwa geänderten Bedingungen (z. B. Leistung, Spannung, Temperaturänderungen), periodischer Änderung und anderen Gründen. Verschiedene Ausführungsformen können ein erweitertes Linktraining bereitstellen, nachdem ein Link hochgefahren ist, unabhängig davon, ob es unter Verwendung von AN hochgefahren wird oder nicht. Das erweiterte Link-Training kann eine Abstimmung der Link-Partner-Sendeentzerrungseinstellungen sowie eine lokale Empfängerentzerrung ermöglichen, was zu einer potenziell verbesserten Abstimmung führt. Das Linktraining kann aus Sicht des Empfängers stattfinden, sodass aufgefordert wird, dass sich die Sendereinstellungen ändern. In manchen Beispielen können Daten übertragen werden, während das Training stattfindet, und ein Trainingsdatenmuster kann während des Neutrainings verwendet werden. Während des Linkneutrainings kann ein Übergangsdichtesignal oder unterschiedliche separate Trainingsdaten verwendet werden.
  • Verschiedene Ausführungsformen können Verbindungsschichtentdeckungsprotokoll (LLDP) -Typ-Längenwerte (TLVs) verwenden, um inkrementelle Änderungen an Übertragungsentzerrungseinstellungen (z. B., PRE, main, Post) eines Verbindungspartners anzufordern. LLDP-Protokoll und TLV-Format sind jedoch nicht erforderlich, und es kann eine beliebige Art von Nachricht verwendet werden. Zum Beispiel kann ein Paketheader verwendet werden, um Sender- oder Empfängerentzerrungseinstellungen zu übermitteln. Verschiedene Ausführungsformen könnten zum Beispiel einen Benutzerdatagrammprotokoll (UDP) - Paketaustausch verwenden, um erweitertes Linktraining zu ermöglichen und zu verwenden. Erweitertes Linktraining kann in Kombination mit einer Qualitätsmetrik für die lokale Empfängerentzerrung verwendet werden, um die Linkqualität (z. B., niedrigere Bitfehlerrate (BER: niedrigere Bitfehlerrate) zu verbessern und Linkfehler (z. B., Vorwärtsfehlerkorrektur (FEC: Forward Error Correction) oder PCS), die am Empfänger identifiziert werden, gegenüber einer Nur-Empfangsseitenoptimierung zu reduzieren. Erweitertes Linktraining oder Neutraining kann verwendet werden, um die Abstimmung eines Links über die Zeit hinaus zu erweitern, die von IEEE 802.3 (oder anderen Standards oder Spezifikationen) für Linktraining erlaubt wird.
  • Gemäß manchen Ausführungsformen kann eine LLDP-kompatible Nachricht von einer Initiatoreinrichtung verwendet werden, um eine Partnereinrichtung zu kommunizieren oder anzufordern, zu bestimmen oder zu prüfen, ob empfangene Signalcharakteristiken gedriftet sind oder die Signalqualität akzeptabel ist, und die Initiatoreinrichtung oder die Partnereinrichtung auszulösen, ein Neutraining durchzuführen. Gemäß manchen Ausführungsformen kann zum Beispiel eine Temperaturänderung an einer Basisstation oder Edge- oder Fog-Computing-Vorrichtung oder einer beliebigen Art von Vorrichtung (z. B. Tageswärme oder Nacht- oder Tageskälte) ein Neutraining von Entzerrereinstellungen auslösen.
  • Zum Beispiel können Linktrainingszeiterweiterung und Neutraining durch eine Basisstation angewendet werden, die Kommunikationen unter Verwendung drahtgebundener oder drahtloser Protokolle (z. B., 3 GPP Long Term Evolution (LTE) (4 G) oder 3GPP 5G), von Vor-Ort-Datenzentren, Off-Ort-Datenzentren, Edge-Netzwerkelementen (Rechenelementen, die physisch näher an einer Basisstation oder einem Netzwerkzugangspunkt als ein Datenzentrum bereitgestellt sind), Fog-Netzwerkelementen (Rechenelementen, die physisch näher an einer Basisstation oder einem Netzwerkzugangspunkt als ein Datenzentrum, aber weiter von einem Edge-Netzwerk entfernt bereitgestellt sind) und/oder hybriden Datenzentren (z. B., ein Datenzentrum, das Virtualisierungs-, Cloud- und softwaredefiniertes Netzwerk verwendet, um Anwendungsarbeitslasten über physische Datenzentren und verteilte Multi-Cloud-Umgebungen zu liefern) unterstützt. Netzwerk- oder Rechenelemente können in einem lokalen Netzwerk (LAN), einem städtischen Netzwerk (MAN), einem Netzwerk mit Vorrichtungen, die unter Verwendung von Glasfaserverbindungen verbunden sind, einem Campusnetzwerk (CAN) oder einem Weitverkehrsnetzwerk (WAN) verwendet werden.
  • Verschiedene Ausführungsformen können mit Geschwindigkeiten von 50 G SerDes und höher verwendet werden, obwohl niedrigere Geschwindigkeiten unterstützt werden können.
  • FIGur 1 ist ein Blockdiagramm, das eine Ethernet-Portschaltungsanordnung in einer Netzwerkschnittstellensteuerung 50 veranschaulicht. Die Ethernet-Portlogik weist ein Medienzugriffssteuerungs (MAC) -Modul 52, ein Abgleichunterschichtmodul 54 und ein PHY-MODUL 56 auf. Das PHY-MODUL 56 kann ein Physical Medium Attachment (PMA) - Subschichtmodul 62, eine Physical Medium Dependent (PMD) -Subschicht 64, ein Vorwärtsfehlerkorrektur (FEC) -MODUL 60 und ein Physical Coding Sublayer (PCS) -Modul 58 beinhalten.
  • Das MAC-MODUL 52 ist dazu ausgelegt, Daten zu und von dem PHY-MODUL 56 zu transferieren. Das Rekonziliations-Subschicht (RS) -Modul 54 kann eine Abbildungsoperation bereitstellen, die die Signale an einer medienunabhängigen Schnittstelle (MII) mit den Medienzugangssteuerung (MAC)-Physikalische-Signalisierungs-Subschicht (PLS) - Dienstdefinitionen abgleicht. Das MAC-MODUL 52 kann dazu ausgelegt sein, Aspekte der MAC-SCHICHT-OPERATIONEN zu implementieren, und das RS-MODUL 54 kann dazu ausgelegt sein, Abgleichunterschicht-Operationen zu implementieren.
  • Die PMD-UNTERSCHICHT (PMD: Physical Medium Dependent) 64 kann für eine Schnittstelle zu einer Medien-abhängigen Schnittstelle (MDI: Medium Dependent Interface) 80 des Übertragungsmediums verantwortlich sein. Die Physical Medium Attachment (PMA) - Subschicht 62 kann Übertragung, Empfang, Signaldetektion, Taktrückgewinnung und Schräglagenausrichtung durchführen. Die PMD 64 und die PMA 62 können dazu konfiguriert sein, serielle Daten über die MDI 80 zu übertragen und zu empfangen.
  • Bei manchen Beispielen können PMD 64, PMA 62a und/oder 62b einen SerDes beinhalten oder verwenden. Bei manchen Beispielen können erweitertes Linktraining und Neutraining bereitgestellt werden, um Filterparameter eines Sende- und/oder Empfangsentzerrers, der von einem SerDes verwendet wird, anzupassen. Zum Beispiel kann ein Software SerDes-Treiber, der durch einen Prozessor in einem Host oder einer Netzwerkschnittstelle ausgeführt wird, verwendet werden, um einen Sendeentzerrungsparameter zu ändern. Bei manchen Beispielen kann eine beliebige Kombination von Hardware, Software und/oder Firmware verwendet werden, um Linktraining und/oder Linkneutraining zu verwalten und durchzuführen.
  • Bei manchen Beispielen (z. B. für 100GBASE-CR1 oder 100GBASE-KR1) kann das FEC-MODUL 60 Daten decodieren, die von der PMD 64 und der PMA 62 an das PCS-MODUL 58 weitergeleitet werden, oder Daten codieren, die von dem PCS-MODUL 58 an die PMD 64 und die PMA 62a, 62b weitergeleitet werden. Bei manchen Beispielen (z. B. für 200 G-und 400 G-Modi) weist das PCS-MODUL 58 ein FEC-MODUL 60 auf. Vorwärtsfehlerkorrekturcode kann die Zuverlässigkeit der Datenübertragung bei höheren Leitungsgeschwindigkeiten verbessern.
  • In der Übertragungsrichtung kann das MAC-MODUL 52 Daten empfangen, die in einem Medienzugriffssteuerungs (MAC) -RAHMEN über die MDI 80 zu übertragen sind, und erzeugt den MAC-RAHMEN, der zusätzlich zu den empfangenen Daten Interpaketlücke (IPG), Präambel, Start of Frame Delimiter (SFD), Auffüllen und zyklische Redundanzprüfungs (CRC) - Bits beinhaltet, bevor der MAC-RAHMEN an das PHY-MODUL 56 weitergeleitet wird. Das PHY-MODUL 56 kann den MAC-RAHMEN zur zuverlässigen seriellen Übertragung über die MDI 80 codieren.
  • In der Empfangsrichtung kann das MAC-MODUL 52 MAC-RAHMEN über einen Datenbus von dem PHY-MODUL 56 empfangen. Das MAC-MODUL 52 kann MAC-RAHMEN von der PHY 56 akzeptieren, Ethernet-Rahmendetektion und -validierung, zyklische Redundanzprüfung (CRC) -Validierung durchführen, Statistikzähler aktualisieren, den CRC ausstreifen, Präambeldetektion und -entfernung und Start of Frame Delimiter (SFD) -Detektion und -entfernung und Weiterleiten des Rests des MAC-FRAMES, der Header für andere Protokolle beinhaltet, an eine nächste Schicht (zum Beispiel eine Internetprotokoll (IP) -Schicht) zur Verarbeitung.
  • 2A veranschaulicht ein vereinfachtes Beispiel für ein Sender-Empfänger-Paar zwischen einer Netzwerkschnittstellensteuerung 100 und einer Vorrichtung 120. Die MDI 130 stellt eine Verknüpfung zwischen der Netzwerkschnittstellensteuerung 100 und der Vorrichtung 120 bereit, indem Daten parallel über eine oder mehrere Spuren übertragen werden. Die Vorrichtung 120 kann eine beliebige Vorrichtung sein, wie etwa eine andere Netzwerkschnittstelle, Netzwerkschnittstelle-Karte (NIC), ein Schalter, ein Router, ein Server, eine Host-Rechenplattform und so weiter.
  • Die Netzwerkschnittstellensteuerung 100 kann einen Host-Empfänger 206 und einen Host-Sender 208 für mindestens eine Spur einer elektrischen Verbindung zwischen der Netzwerkschnittstellensteuerung 100 und der Vorrichtung 120 beinhalten. Die Vorrichtung 120 kann einen Modulempfänger 212 und einen Modul-Sender 210 für eine elektrische Verbindung zwischen Netzwerkschnittstellensteuerung 100 und der Vorrichtung 120 beinhalten.
  • Zum Beispiel kann die Linktrainingssteuerung 202 der NIC 100 verwendet werden, um Erweiterungen der Linktrainingszeit mit der Linktrainingssteuerung des Moduls 120 anzukündigen und auszuhandeln oder umgekehrt. Die Linktrainingssteuerung 202 kann auch Linkneutrainingsoperationen initiieren oder verwalten, wie hier beschrieben. Die Linktrainingssteuerung kann als Treiber, Mikrocontroller oder andere Software in einem Host oder einer Netzwerkschnittstelle implementiert sein.
  • Sender (Tx) 208/210 oder Empfänger (Rx) 206/212 können einen SerDes verwenden, um ein Signal zu serialisieren oder zu deserialisieren. Wenn ein SerDes eingeschaltet wird und ein Signal empfangen wird, kann eine RX-Abstimmung verwendet werden, um die Signalqualität zu bereinigen. Wenn es eine Zeitgrenze zum Durchführen einer RX-Abstimmung gibt, ist ein Signal innerhalb der Zeitgrenze und der Verbindungsstrecken-Comeup an eine PCS-SCHICHT weiterzuleiten, falls die Verbindung akzeptabel ist. Falls die Verbindung nicht besteht, kann das Training neu gestartet werden. Bei manchen Beispielen können Tx 208-Rx 212 und/oder Tx 210-Rx 206 eine unabhängige Rx-Abstimmung nutzen. Bei manchen Ausführungsformen ist eine Zeitdauer zum Durchführen einer Entzerrerabstimmung für Tx 208-Rx 212 und Tx 210-Rx 206 gleich.
  • Wenn Autoverhandlung verwendet wird, um eine Verbindung zwischen zwei Ethernet-Ports herzustellen, wird eine IEEE definierte Prozedur befolgt. Zuerst kann ein „Basisseite“ - Austausch durchgeführt werden, um gemeinsame Fähigkeiten zu bestimmen und einen Betriebsmodus (z. B., Linkgeschwindigkeit (z. B., 1000BASE-KX, 10GBASE-KX4 . 100GBASE-CR4 und so weiter), FEC-MODUS, Pausenfähigkeit und so weiter) auszuwählen. Als Nächstes kann eine nächste Seitenaustauschphase beliebiger Länge auftreten. Der nächste Seitenaustausch kann zum Beispiel verwendet werden, um IEEE-FÄHIGKEITEN sowie Nicht-IEEE-Fähigkeiten, wie etwa die Ethernet-Konsortium-Modi, anzukündigen. Am Ende des nächsten Seitenaustauschs kann der ausgewählte Betriebsmodus konfiguriert werden und eine Linktrainingsphase kann beginnen. Während dieser Linktrainingsphase können Ändern der Peer-Sende- (z. B., Tx 208 oder Tx 210) -Entzerrungseinstellungen und Überwachen der Auswirkung auf die Linkqualität am Empfänger (z. B., Rx 206 oder Rx 212) und Anpassen von Entzerrungseinstellungen zum Optimieren des Links auftreten.
  • Bei manchen Beispielen kann eine Linktrainingszeit durch Spezifikation einer früheren Startzeit und Verwendung einer Standardlinktrainingszeit erweitert werden. Vorrichtungen können zum Beispiel eine Startzeit für Linktraining verhandeln (z. B. unter Verwendung von AN, Next Page Exchange oder proprietären Austauschschemas), indem ein Offset von einem Standardstart der Linktrainingszeit verhandelt wird, wobei der Offset eine Zeitdauer vor dem Standardstart der Linktrainingszeit angibt, zu der das Linktraining gestartet werden soll. Vorrichtungen können eine Fähigkeit angeben, Linktraining vor einem Standardstart der Linktrainingszeit zu starten, eine größte Zeitmenge vor einem Standardstart der Linktrainingszeit angeben, zu der Linktraining gestartet werden soll, und eine kleinere der Zeitmengen vor einem Standardstart der Linktrainingszeit, zu der Linktraining gestartet werden soll, auswählen.
  • Kommunikationen zwischen Vorrichtungen können unter Verwendung eines beliebigen Protokolls stattfinden. Ethernet-Rahmen können zum Beispiel von der NIC 100 an die Vorrichtung 120 gesendet werden. Ethernet-Rahmen können zum Beispiel von der Vorrichtung 120 an die NIC 100 gesendet werden. Ein Ethernet-Rahmen kann eines oder mehrere von Folgendem beinhalten: eine Präambel, einen Rahmenstartbegrenzer (SFD), eine ZIEL-MAC-ADRESSE, eine QUELL-MAC-ADRESSE, ein EtherType-Feld, ein Längenfeld, eine Rahmenprüfsequenz (z. B., eine zyklische Redundanzprüfung (CRC)) und Nutzdaten.
  • Aus der Perspektive beider Ports gibt es vier Ansätze zum Linktraining, obwohl mehr oder weniger Ansätze verwendet werden können.
    1. (1) Der lokale Port sendet weder die proprietäre nächste Seite, noch empfängt er eine. Dies führt zu keiner Erweiterung der Linktrainingsphase.
    2. (2) Der lokale Port sendet die proprietäre nächste Seite, empfängt aber keine von dem Verbindungspartner (er wird als Reaktion darauf eine NULLSEITE empfangen). Dies gibt an, dass der Linkpartner entweder nicht in der Lage ist oder nicht bereit ist, die Linktrainingszeit zu verlängern. Dies führt zu keiner Erweiterung der Linktrainingsphase.
    3. (3) Der lokale Port ist nicht in der Lage oder nicht bereit, die Linktrainingszeit zu verlängern, so dass er nicht die proprietäre nächste Seite sendet, sondern eine von dem Linkpartner empfängt (er wird mit einer NULLSEITE antworten). Dies führt zu keiner Erweiterung der Linktrainingsphase.
    4. (4) Der lokale Port sendet und empfängt die proprietäre nächste Seite, was angibt, dass beide Ports in der Lage sind und bereit sind, die Linktrainingszeit zu verlängern. Die Zeitdauer zum Erweitern der Linktrainingsphase ist so definiert, dass sie das Minimum der von den zwei Ports angekündigten Zeiten ist. Im Fall (4) darf die anschließende Linktrainingsphase (falls notwendig) länger als die IEEE definierte maximale Zeit andauern. Wird die Zeit immer noch überschritten, so wird die Autoverhandlung neu gestartet.
  • Gemäß verschiedenen Ausführungsformen kündigt eine Linktrainingssteuerung erweiterte Linktrainingsfähigkeit während der nächsten Seitenaustauschphase der Autoverhandlung an. Es sind zwei nächste Seiten erforderlich, um diese Fähigkeit anzukündigen. Zuerst wird eine organisatorisch eindeutige Kennung (OUI) -markierte formatierte erste nächste Seite mit der ANBIETER-OUI von <tbd> unter Verwendung des Nachrichtencodes Nr. 1 gesendet. Als Nächstes wird eine OUI-MARKIERTE unformatierte zweite nächste Seite mit der angeforderten Zeiterweiterung in Millisekunden gesendet. Ein beispielhaftes Format für eine erste nächste Seite ist in 3A gezeigt.
  • In der 3A sind beispielhafte Inhalte von Feldern einer nächsten Seite Folgendes.
    • D0_3: 0001b (anzeigend „Organisationallly Unique Identifier Tagged Message“)
    • D4_10: 0000000b
    • D11: T
    • D12: 0 b
    • D13: 1b
    • D14: ACK
    • D15: 1b (NP)
    • D16_26: Anbieter OUI <tbd> Bits [23:13]
    • D27_31: 00000b
    • D32 42: Anbieter OUI <tbd> Bits [12:2]
    • D43 47: 00000b
  • 3B zeigt ein beispielhaftes zweitnächstes Seitenformat, das wie folgt sein kann. Ein beispielhafter Inhalt von Feldern kann wie folgt sein.
    • D0_3: 0001b (was angibt, dass der Wert „erweiterte Linktrainingszeit“ folgt).
    • D4_8: 00000b
    • D9_10: Anbieter OUI <tbd> Bits [1:0]
    • D11: T
    • D12_13: 00b
    • D14: ACK
    • D15: NP
    • D16 47: Zeit, in Millisekunden, um für Linktraining erweitert zu werden (vorzeichenloser 32-Bit-Wert). Bei manchen Beispielen ist dieser Wert die absolute Zeit für das Linktraining, die kleiner, gleich oder größer als die standardmäßige IEEE 802.3-Linktrainingszeit sein kann.
  • Falls eine Seite des Links bei manchen Beispielen keine „Anbieterverbindungstrainingserweiterungsfähigkeit“ unterstützt, dann wird er auf die OUI-MARKIERTE formatierte nächste Seite mit einer NULLSEITE reagieren. Dies kann bewirken, dass ein Wert von „0“ für das Feld „Time_in_ms“ angezeigt wird.
  • Falls eine Seite der Verbindung bei manchen Beispielen die Option „erweiterte Verbindungstrainingszeit“ nicht unterstützt, dann wird sie auf die OUI-MARKIERTE unformatierte nächste Seite mit einer NULLSEITE reagieren. Dies kann bewirken, dass ein Wert von „0“ für das Feld „Time_in_ms“ angezeigt wird.
  • Die für das Linktraining erlaubte Zeit wird als der höchste gemeinsame Nenner der von den beiden Seiten des Links angekündigten Werte gelöst. Falls die gelöste Zeit kleiner als die IEEE (oder Ethernet-Konsortium) -definierte Linktrainingszeit ist, dann wird stattdessen die IEEE (oder Ethernet-Konsortium) -definierte Linktrainingszeit verwendet.
  • Die in der nächsten Seite spezifizierte Linktrainingszeit kann entweder sein: (1) Ein Wert, der zu der STANDARD-IEEE-LINK-TRAININGSZEIT hinzugefügt werden soll (z. B., ein relativer Wert) oder (2) eine absolute Link-Trainingszeit, die zu verwenden ist. In (1) gibt es keine Möglichkeit, dass die verhandelte Linktrainingszeit kleiner als die STANDARD-IEEE-LINKTRAININGSZEIT sein könnte, in (2) könnte das Linktraining kleiner als die STANDARD-IEEE-LINKTRAININGSZEIT sein.
  • Bei manchen Beispielen kann die Standardverbindungstrainingszeit auf einen höheren oder niedrigeren Wert gesetzt werden, um die Verbindungstrainingszeit zu erweitern oder zu verringern. Zum Beispiel kann AN, nächster Seitenaustausch oder proprietäres Austauschschema verwendet werden, um die Standardverbindungstrainingszeit einzustellen oder zu ändern. Bei manchen Beispielen, bei denen eine Standardverbindungstrainingszeit eingestellt oder geändert wird, kann eine Erweiterung oder Verringerung der Verbindungstrainingszeit verwendet werden oder nicht.
  • Als Nächstes unter Bezugnahme auf 2B kann bei manchen Ausführungsformen, nachdem das Linktraining abgeschlossen ist, ein Mikrocontroller 244 (z. B., ein beliebiger von 244-0 bis 244-N), der mit einer beliebigen Spur assoziiert ist, ein Neutraining initiieren. Zum Beispiel kann ein Vorrichtungstreiber, eine Plattformvorrichtung oder Software eine Verhandlung und Implementierung eines Linkneutrainings auslösen. Link-Neutraining kann unabhängig pro SerDes-Spur ausgeführt werden. Verschiedene Ausführungsformen stellen ein Protokoll bereit, um Neutraining einzurichten, Anforderungen in Verbindung mit Neutraining bereitzustellen oder Antworten in Verbindung mit Neutraining zu empfangen. Ein Protokollstapel (z. B., Schicht 3) kann eine Nachricht als eine Einrichtung, Anforderung oder Antwort anzeigend erkennen.
  • Bei manchen Beispielen können verschiedene Nachrichten verwendet werden, um ein Linktraining (Setup) zu initiieren, um unterstützte Abgriffe anzugeben, eine Anwendung spezieller Entzerrerabgriffsparameter (z. B. Halten, Inkrementieren oder Dekrementieren von Tx Abgriff #x)) anzufordern. Bei manchen Beispielen können eine oder mehrere Erhöhungen oder eine oder mehrere Verringerungen anstelle eines Inkrements oder Dekrements angewendet werden. Verschiedene Ausführungsformen stellen eine Antwort bereit, die angibt, wann bestimmte Entzerrerabgriffsparameter verwendet werden (z. B., Tx Abgriff #x aktualisiert). Die Tx-Taps können unter Verwendung vorzeichenbehafteter ganzzahliger Werte (-3.. 0.. +3) definiert werden. Präemphase-Taps können durch negative Werte identifiziert werden, wohingegen Post-emphase-Taps durch positive Werte identifiziert werden können. Ein Hauptabgriff kann durch den Wert Null (0) identifiziert werden.
  • In manchen Fällen sind möglicherweise nicht alle Abgriffe durch einen gegebenen SerDes oder seine Steuerung neu trainierbar. Bei manchen Beispielen kann ein Sender einen beliebigen Abgriff ankündigen, der zur Anpassung durch Linkneutraining in der Lage ist. Die unterstützten Abgriffe können in einer anfänglichen Einrichtungsnachricht an den Verbindungspartner kommuniziert werden. Die Einrichtungsnachricht kann den lokalen Port_id identifizieren, der Gegenstand von Tap-Änderungsanfragen durch den Link-Partner sein wird. Ein Port_id kann in einer beliebigen Antwort bereitgestellt werden. In einigen Beispielen kann ein Port id-Wert ein beliebiger vorzeichenloser 8-Bit-Wert (oder ein beliebiger anderer Wert (e.g, 32 Bits)) sein, den die lokale Vorrichtung verwenden kann, um auf einen lokalen Port abgebildet zu werden. Da der Link vor der Verwendung dieses Protokolls aufgetreten ist, wird angenommen, dass beide Seiten mit der Anzahl und Abbildung von SerDes Spuren übereinstimmen, die von dem Port verwendet werden.
  • Unterstützte Abgriffe können durch einen vorzeichenlosen 8-Bit-Wert identifiziert werden, der eine Abbildung unterstützter Tx-Abgriffe enthält. Zum Beispiel ist eine Abbildung von Bit zu Abgriff# wie folgt:
    Tap# Bit
    -3 0
    -2 1
    -1 2
    0 3
    1 4
    2 5
    3 6
  • Für PAM4-codierte Signale können Tx-Abgriffe wie folgt identifiziert werden:
    • Pre2=-2
    • Pre1=-1
    • Main=0
    • Post1=1
    • Post2=2.
  • Es können jedoch andere Arten von Formatierung verwendet werden. Anforderungen zum Ändern ununterstützter Abgriffe können als Protokollfehler angesehen werden und können ignoriert werden.
  • Falls der Link vor der Verwendung dieses Protokolls aufgetreten ist, wird angenommen, dass beide Seiten mit der Anzahl und Abbildung von SerDes Spuren übereinstimmen, die von dem Port verwendet werden.
  • Bei manchen Beispielen kann ein Meldungsformat zum EINRICHTEN Folgendes beinhalten: { SETUP, Port_id, <supported_Taps> }.
  • Zur Identifizierung eines TAP, der Gegenstand einer Anfrage oder Antwort ist, können die folgenden Identifizierungsdaten in der vollständigen Anfrage oder Antwortnachricht enthalten sein:
    • { Port id, Logical Lane id, Tap id, REQ/RSP }, wobei:
      • Port_id ist der lokale Port_id, der in der Einrichtungsnachricht empfangen wird
      • Logical_Lane_id ist ein Wert von 0 bis 15, der die logische Lane auf dem Port angibt Tap_id ist das Subjekt Tap# (z. B., -3 bis +3)
      • SETUP/REQ/RSP/TRAINIERT (0-3) identifiziert diese Nachricht entweder als eine Setup (0)-, Anforderung (1)-, Antwort (2)- oder trainierte (3) -Nachricht. Trainierte Nachrichten geben den Abschluss des Protokolls an.
  • Bei manchen Beispielen können Anfragen eine der Folgenden sein: HALTEN, INC, DEC. Bei manchen Beispielen kann ein Nachrichtenformat für ANFORDERUNGEN Folgendes sein: { REQ, Port_id, Logical Lane id, Tap id, <INC/DEC/HOLD> }. Bei manchen Beispielen können Antworten eines von Folgendem beinhalten: NOT_UPDATED, AKTUALISIERT, MIN, MAX. Bei manchen Beispielen kann ein Nachrichtenformat für Anfragen Folgendes beinhalten: { RSP, Port_id, Logical Lane id, Tap id, <NOT_UPDATED/UPDATED/MIN/MAX> }. Dementsprechend kann eine vollständige Nachricht die folgenden Informationen enthalten:
    • {SETUP, Port id, <supported_Taps>, DESTRUKTIVE_MODE_ABILITY, DESTRUKTIVE_MODE_REQ, <Random-Initiator-Bit> }
    • { REQ, Port id, Logical Lane id, Tap id, <INC/DEC/HOLD> }
    • { RSP, Port id, Logical Lane id, Tap id, <NOT_UPDATED/UPDATED/MIN/MAX> }
  • Es kann Zeit benötigen, bis der Sender die Einstellungsänderung durchführt (Anforderung) und der Empfänger weiß, dass die Konfigurationsänderung angewendet wurde oder nicht angewendet wurde (Antwort). Da Nachrichten verloren gehen oder beschädigt werden können, kann sich das Austauschprotokoll aus Fehlern erholen.
  • Manche SerDes sind möglicherweise nicht in der Lage, inkrementell vollständig zu optimieren, und verwenden möglicherweise einen Neuanpassungsmodus, der bewirkt, dass der Link in eine oder beide Richtungen herunterfährt, wenn eine Abgriffänderung evaluiert wird (RX-Equalisierung). Die Unterstützung dieses Betriebsmodus kann die Verwendung des Protokolls beinhalten, das jeweils in einer Richtung arbeitet. Zum Beispiel kann eine Seite Abgriffsanfragen stellen und ihre Empfängerentzerrung anpassen, und als Nächstes kann das andere Ende der Verbindung den Prozess starten, um Empfängerentzerrung anzupassen. Dies ist notwendig, um die Ursache eines Verbindungsverlusts zu unterscheiden, der auf die Empfängeranpassung (verursacht durch die entfernte Seite) oder auf eine angeforderte Abgriffänderung (verursacht durch die lokale Seite) zurückzuführen sein könnte.
  • Ein „destruktiver Modus“ (oder „Neustartsperrmodus“) kann bewirken, dass eine Verbindung während des Trainings fehlschlägt („herunterfährt“), aber den Empfänger auffordert, der Verbindung nicht zu erlauben, herunterzufahren, bis eine Zeitdauer verstrichen ist, so dass zu Standard-Tx-Abgriffeinstellungen erst zurückgekehrt wird, nachdem die Zeitdauer verstrichen ist (max-Link-Verlustzeit), um einen Protokollneustart zu vermeiden. Trainingsabgriffeinstellungen, die während des erfolgreichen Neutrainings und vor dem Zeitablauf angewendet werden, werden verwendet, und ein Trainingsprotokoll wird möglicherweise nicht neu gestartet. Nachdem die Zeitdauer verstrichen ist, tritt jedoch ein Protokolltrainingsneustart auf, um Tx-Abgriffeinstellungen zu bestimmen, und/oder Standard-Tx-Abgriffeinstellungen können verwendet werden.
  • Der Betrieb im „Destruktivmodus“ wird in der Einrichtungsnachricht durch drei Parameter kommuniziert:
    • DESTRUKTIV_MODE_ABILITY
    • DESTRUKTIVE_MODE_REQ
    • <max-link-loss-time>
    • DESTRUCTIVE_MODE_ABILITY gibt an, dass dieser Knoten einen destruktiven Modus-Betrieb als eine Option unterstützt.
    • DESTRUCTIVE_MODE_REQ gibt an, dass dieser Knoten eine destruktive Modusoperation (nicht nur „Anforderungen“) erfordert.
    • <max-link-loss-time> ist ein vorzeichenloser 32-Bit-Wert, der die maximale Zeit in Millisekunden repräsentiert, während der die Verbindung heruntergefahren sein kann und keinen Protokollneustart verursachen kann. Diese Zeit kann in jeder Richtung unterschiedlich sein und sollte auf die maximale Zeitdauer eingestellt werden, die die lokale Empfängeranpassung benötigen sollte.
  • Ein Protokollfehler kann auftreten, indem DESTRUKTIVE_MODE_REQ=1, aber DESTRUKTIVE_MODE_ABILITY=0 gesetzt wird.
  • Falls eine Seite einen destruktiven Modus erfordert (DESTRUKTIVE_MODE_REQ=1), die andere Seite aber keinen destruktiven Modus unterstützt (DESTRUKTIVE MODE FÄHIGKEIT=0), kann das Protokoll enden.
  • Falls eine oder beide Seiten eine destruktive Modus-Operation erfordern, dann wird ein zusätzlicher Nachrichtenaustausch verwendet, um zu bestimmen, welche Seite zuerst geht.
    • {INITIATOR_BID,<local-bid>, <remote-bid> }
    • <local-bid> ist ein vorzeichenloser 32-Bit-Wert ungleich null, der bestimmt, welche Seite zuerst startet. Sie kann durch einen Zufallsprozess erzeugt werden, um Konvergenz zu gewährleisten. Die Seite mit dem größten „Gebot“ geht zuerst. Im Falle einer Schwelle übermittelt jede Seite ein neues zufälliges „Gebot“.
    • <remote-bid> ist der 32-Bit-Wert, der zuletzt von der anderen Seite als sein „Gebot“ empfangen wurde. Der Anfangswert dieses Feldes ist „0“, bevor irgendein Gebot von der anderen Seite empfangen wurde. Die INITIATOR_BID-Nachricht könnte periodisch übertragen werden, um verlorene Nachrichten wiederherzustellen.
  • Das Gebot wird fortgesetzt, bis ein Gebot von der anderen Seite mit einem <remotebid>-Feld, das mit dem Wertstrom <local-bid> übereinstimmt, und mit unterschiedlichen Werten für das lokale und das entfernte Gebot empfangen wird. Zu diesem Zeitpunkt bestimmen beide Seiten, welche zuerst gehen sollten, und die „Gewinne“ -Seite kann Abgriffsanfragen initiieren.
  • In einigen Beispielen werden LLDP-PROTOKOLLDATENEINHEITEN (PDUs) für Fähigkeitsankündigung, -anforderung und -antwort verwendet. Bei einigen Beispielen gibt es 3 TLVs-Typen:
    • StartUpTlv kann eine lokale Portkennung beinhalten, die von dem Verbindungspartner in einem beliebigen nachfolgenden TLV zurückgegeben wird, um einen spezifischen Port zu identifizieren. StartUpTlv kann auch Angaben darüber beinhalten, welche Abgriffe auf der lokalen Vorrichtung unterstützt werden. Unterstützte Abgriffe können prä2, prä1, main, post1, post2 oder weniger, mehr oder andere Abgriffe sein. Bei manchen Beispielen können InfiniBand-Verbindungseinstellungen angepasst werden.
    • RequestTlv kann den localPortId beinhalten, der in dem StartUpTlv für diesen Port empfangen wird. RequestTlv kann auch einen logischen laneID (0-7) innerhalb des localPortid, einen tapld, der angibt, welcher Tx-Abgriff Gegenstand der Anforderung ist, und die Anforderung selbst, HOLD=0 oder UPDATE=+/-1 beinhalten.
    • StatusTlv kann den localPortId beinhalten, der in dem StartUpTlv für diesen Port empfangen wird. StatusTlv kann auch einen logischen laneID (0-7) innerhalb des localPortid, einen tapld, der angibt, welcher Tx-Abgriff Gegenstand dieses Statusberichts ist, und den Status selbst, NOT_UPDATED=0, UPDATED=1, MIN=2, MAX=3 beinhalten. MIN oder MAX können zurückgegeben werden, um anzuzeigen, dass keine weiteren Änderungen in derselben Richtung möglich sind, und sollten genauso behandelt werden wie AKTUALISIERT.
  • In einigen Beispielen können LLDP-PDUS bis zu zwei Linktrainings-TLVs pro logischer Spur aufweisen: eine requestTlv und eine statusTlv (responseTlv). Ein requestTlv kann eine Änderung einer Tx-Abgriffeinstellung auf dem Verbindungspartner initiieren. PDUs können als Reaktion auf den Empfang einer PDU von dem Verbindungspartner oder nach einer Zeitüberschreitungsperiode erzeugt werden. Falls irgendein Abgriff gerade geändert wird und kein statusTlv für ihn in der letzten Zeit empfangen wurde, kann eine PDU erzeugt werden, um die angeforderte Änderung zu duplizieren, um verlorene oder beschädigte PDUs zu handhaben.
  • Bei manchen Beispielen können Änderungen an den Abgriffeinstellungen in den kleinstmöglichen Inkrementen/Dekrementen vorgenommen werden, um das Potential zum Bewirken eines Linkverlusts infolge einer Abgriffänderung zu minimieren.
  • 2 B stellt ein beispielhaftes System zum kommunikativen Koppeln einer Netzwerkvorrichtung mit einer anderen Netzwerkvorrichtung dar. Zum Beispiel können der Host 250 und die Vorrichtung 232 eine Netzwerkvorrichtung beinhalten, wie etwa eine Netzwerkschnittstelle und/oder einen Switch und/oder einen Router und/oder einen Server und/oder eine Hostrechenplattform und/oder ein Interconnect und/oder ein Fabric und/oder ein Rack und/oder eine beliebige Rechen- oder Kommunikationsvorrichtung. Zum Beispiel kann die Vorrichtung 232 mit einer Schnittstelle mit mehreren elektrischen Verbindungen (z. B., Backplane oder Kupferkabel) verbunden sein. Das System stellt mehrere Spuren von Sende-Empfangspaaren bereit, die zum Senden oder Empfangen elektrischer Signale zwischen dem Host 250 und der Vorrichtung 232 verwendet werden können. Eine Fahrspur kann ein Signal senden und/oder empfangen. Ein Sender einer Spur kann einen Entzerrer verwenden, der in einer analogen Schaltung implementiert ist, um ein elektrisches Signal zur Übertragung zu erzeugen. Der Entzerrer kann eine oder mehrere Stromquellen aufweisen, die zum Erzeugen eines Signals verwendet werden, wodurch Gewichtungen von Stromquellen angepasst werden können, um Signalcharakteristiken zu ändern. Entzerrereinstellungen können modifiziert werden, um Gewichtungen von Stromquellen zu ändern. Zum Beispiel kann ein Digital-Analog-Wandler (DAC) verwendet werden, um ein Signal in der digitalen Domäne zu erzeugen und das Ergebnis in einem analogen Format auszugeben.
  • Verschiedene Ausführungsformen verwenden beliebige Mikrocontroller 244, um Zeit zum Abschließen des Linktrainings auszuhandeln, und ob die Trainingszeit verlängert werden soll. Zusätzlich dazu können die Mikrocontroller 244 ein Neutraining von Sender- und/oder Empfängerentzerrungseinstellungen initiieren und verwalten.
  • Der Sendeempfänger 238 kann zur elektrischen Signalübertragung und zum elektrischen Signalempfang zwischen der Vorrichtung 232 und der Host-Vorrichtung 250 verwendet werden. Der Sendeempfänger 238 kann mehrere Sende- und Empfangsspuren zur elektrischen Signalkommunikation zwischen der Vorrichtung 232 und der Hostvorrichtung 250 bereitstellen. Zum Beispiel können die Lanes 240-0 bis 240-N eine Sende- und Empfangsschaltungsanordnung zum Koppeln mit einer Empfangs- und Sendeschaltungsanordnung der Lanes 254-0 bis 254-N der Hostvorrichtung 250 bereitstellen. Die Spuren 240-0 bis 240-N können Serialisierer / Deserialisierer (SerDes) -Formatierung von Signalen bereitstellen. Bei manchen Beispielen kann der Sendeempfänger 238 Teil einer PMD oder PHY sein.
  • Die Vorrichtung 232 kann durch eine Zwischenverbindung 242 kommunikativ mit der Hostvorrichtung 250 gekoppelt sein. Die Zwischenverbindung 242 kann elektrische Signalleiter sein, die Pins oder Löcher der Lanes 240-0 bis 240-N einer steckbaren Vorrichtung 232 mit Löchern oder Pins der Lanes 254-0 bis 254-N des Hosts 250 koppeln. Die Host-Vorrichtung Netzwerkschnittstelle 250 kann Signale in elektrischem Format zu oder von der Vorrichtung 232 übertragen oder empfangen.
  • Die Hostvorrichtung 250 kann einen Sendeempfänger 252 zur Kommunikation mit der Vorrichtung 232 beinhalten. Der Sendeempfänger 252 kann Lanes 254-0 bis 254-N beinhalten, wobei eine beliebige der Lanes 254-0 bis 254-N eine Empfangs-und Sendeschaltungsanordnung beinhaltet. Bei manchen Beispielen kann der Sendeempfänger 252 Teil einer PMD oder PHY sein. Ein beliebiger Mikrocontroller 256-0 bis 256-N kann verwendet werden, um den Betrieb seiner Lane gemäß hierin beschriebenen Ausführungsformen zu verwalten.
  • Bei manchen Ausführungsformen kann ein einziger Mikrocontroller Entzerrereinstellungen einer oder mehrerer Spuren verwalten. Der eine oder die mehreren Parameter können bewirken, dass eine Empfänger - oder Sendervorrichtung in einer beliebigen der Spuren 254-0 bis 254-N ihre Entzerrereinstellung für einen spezifischen Abgriff anpasst, ob der Koeffizientenwert eines Entzerrerabgriffs erhöht oder verringert werden soll. Bei manchen Ausführungsformen können die Einstellungen eines Abgriffs unabhängig von einer Anpassung von Einstellungen eines anderen Abgriffs angepasst werden.
  • Bei manchen Beispielen kann der Host 250 anfordern, eine Entzerrereinstellung eines beliebigen Abgriffs einer Senderentzerrerschaltung der Vorrichtung 232 zu ändern. Gleichermaßen kann die Vorrichtung 232 anfordern, eine Entzerrereinstellung eines beliebigen Abgriffs einer Senderentzerrerschaltung des Hosts 250 zu ändern. Dementsprechend können die Vorrichtung 232 und der Host 250 Senderentzerrereinstellungen anpassen, die durch eine Partnervorrichtung verwendet werden. Darüber hinaus können beliebige der Vorrichtungen 232 und des Hosts 250 Empfängerentzerrungseinstellungen anpassen, um Kanalverzerrungen zu kompensieren.
  • Um zum Beispiel eine Entzerrereinstellungsänderung zu initiieren, kann ein beliebiger Mikrocontroller 244-0 bis 244-N eine Signalqualität eines empfangenen Signals bestimmen und bestimmen, welcher senderseitige Abgriff der Hostvorrichtung 250 geändert werden soll, und ob die Einstellung des Abgriffs inkrementiert oder dekrementiert werden soll. Beispielsweise kann eine Augenöffnung eines empfangenen Signals gemessen werden. Ein Auge kann 1-zu-0- und 0-zu-1-Übergänge eines Signals repräsentieren und angeben, ob die Übergänge innerhalb isolierter Zeitbereiche auftreten. Ein Mikrocontroller kann Intersymbolinterferenz (ISI) schätzen und Einstellungen basierend darauf auswählen, dass eine ISI einen Minimalwert erreicht. Ein Mikrocontroller kann verfügbare Senderabgriffeinstellungen durchsuchen und Einstellungen auswählen, die zu einem am weitesten offenen Auge führen. Senderentzerrereinstellungen können periodisch beginnend mit oder nach dem Verbindungsstart geändert werden und periodisch laufen. Ähnliche Operationen können für den Mikrocontroller 256-0 bis 256-N auftreten, um Sendeentzerrungseinstellungen der Vorrichtung 232 anzupassen.
  • Eine beliebige der Vorrichtung 232 oder des Hosts 250 kann Paketverarbeitung durchführen, wie etwa eine Medienzugriffssteuerung und/oder eine beliebige Protokollschichtverarbeitung und/oder Sicherheit und/oder Routing und/oder Zielsuche und/oder so weiter.
  • FIGur 4 A stellt eine Prozesssequenz eines Linktrainings dar. Bei 402 kann in IEEE 802.3 Klausel 73 AN Basisseitenaustausch beginnen. In diesem Beispiel werden 200Gbps-Linkgeschwindigkeit und RS-FEC-Fähigkeiten angekündigt. Bei 404 kann ein nächster Seitenaustausch stattfinden. In manchen Beispielen werden beide Linkspartner ANKUNDIGUNGSANBIETER-OUI als Intel identifiziert, wohingegen ein Link eine Trainingserweiterungszeit von (bis zu) 5 Sekunden ankündigt und der entgegengesetzte Link eine Trainingserweiterungszeit von (bis zu) 10 Sekunden ankündigt. Eine ANBIETER-OUI der Vorrichtung kann jedoch ankündigt werden. In manchen Beispielen wird der höchste gemeinsame Nenner der Erweiterungszeiten ausgewählt, nämlich 5 Sekunden. Bei 406 verwendet das Linktrainingsschema eine Standardlinktrainingszeit + 5 Sekunden. Ein beispielhaftes Linktrainingsformat befindet sich in Klausel 72 von IEEE 802.3-2018.
  • 4 B stellt eine beispielhafte Sequenz dar, die für eine Link-Neutrainingsoperation verwendet werden kann. Bei 450 kann eine automatische Verhandlung angewendet werden, um einen oder mehrere Betriebsparameter zwischen Partnereinrichtungen einzustellen. IEEE 802.3, Klausel 73 AN kann zum Beispiel verwendet werden, um zumindest Linkgeschwindigkeit, FEC-MODUS, Pausenfähigkeit und/oder andere Parameter einzustellen. Bei 452 kann ein Linktraining durchgeführt werden, um SerDes-Übertragungs- und Empfangsentzerrungsparameter einzustellen. Zum Beispiel kann IEEE 802.3 Klausel 72-Linktraining durchgeführt werden, um Sende- und/oder Empfängerentzerrungseinstellungen einzustellen. In manchen Fällen kann die Linktrainingsdauer gemäß hierin beschriebenen Beispielen erweitert werden. Danach können Daten oder anderer Inhalt über eine oder mehrere Spuren oder eine Verbindung übertragen werden.
  • Bei 454 kann die Fähigkeit zum Neutrainieren einer Verbindung verhandelt werden. Zum Beispiel kann ein Sender einen beliebigen Abgriff ankündigen, der in der Lage ist, durch Linkneutraining dem Linkspartner in einer anfänglichen Einrichtungsnachricht angepasst zu werden. Die Setup-Nachricht identifiziert den lokalen Port id, der Gegenstand von Abgriffänderungsanforderungen durch den Link-Partner sein wird. Bei 456 kann eine Anforderung zum Modifizieren von Senderkomponenteneinstellungen bei der ersten Vorrichtung empfangen werden. Die Anforderung kann eine Portkennung, die Gegenstand von Abgriffwechselanforderungen durch den Verbindungspartner sein wird, eine Spurkennung, einen oder mehrere Gegenstandsabgriffe oder eine Inkrementierungs-/Dekrementierungs-/Halteabgriffeinstellung beinhalten. Bei 458 wird eine Antwort an die zweite Vorrichtung bereitgestellt, um anzugeben, dass diese spezifizierten Tap-Einstellungen angewendet wurden. Die zweite Vorrichtung kann Signalcharakteristiken wie etwa BER, Augengröße und andere Fehler messen. In diesem Beispiel bestimmt die zweite Vorrichtung, dass die Einstellungen akzeptabel sind. Bei 460 gibt die zweite Vorrichtung an, dass die Einstellungen gehalten werden sollen. Die Tap-Einstellungen können angewendet und für aktuelle und zukünftige Verwendung gespeichert werden.
  • Es wird angemerkt, dass sowohl die erste als auch die zweite Vorrichtung unabhängige Sendereinstellungen vornehmen können. Bei manchen Beispielen können Empfängerentzerrereinstellungen durch einen Verbindungspartner auf eine ähnliche Weise wie jene eingestellt werden, die zum Spezifizieren von Senderabgriffeinstellungen verwendet wird.
  • 5 A stellt ein Beispiel für einen Entzerrer dar. Der Senderentzerrer 500 beinhaltet einen Vorcursor-Abgriff c(- 1), einen Cursor-Abgriff c(0) und einen Nachcursor-Abgriff c(1). Bei einer veranschaulichenden Ausführungsform identifizieren Filterabgriffeinstellungen einen von vier möglichen Abgriffwerten für den Vorcursorabgriff c(- 1) unter Verwendung von zwei Bits und einen von sechs möglichen Abgriffwerten für den Nachcursorabgriff c(1). Der Cursor-Tapc(0) -Koeffizient kann basierend auf den Werten der anderen zwei Tap-Koeffizienten, c(- 1) und c(1), berechnet werden, sodass die Gleichung: c(0)- c(1)- c(- 1)=1 erfüllt ist. Die Filterabgriffeinstellungen können durch Inkrementieren oder Dekrementieren der Filterabgriffeinstellungen modifiziert werden.
  • FIGur 5 B stellt ein Funktionsmodell einer Struktur eines Vier-Abgriff-Vorwärtskopplungsentzerrers (FFE) 550 in einem Sender dar. Ein FFE 550 ist in jeder Kommunikationsspurschnittstelle einer Chip-zu-Chip- oder Chip-zu-Modul-Schnittstelle implementiert. Das FFE 550 beinhaltet einen Vorcursor-Abgriff c(- 2), einen Vorcursor-Abgriff c(- 1), einen Cursor-Abgriff c(0) und einen Nachcursor-Abgriff c(1). Die Filterabgriffeinstellungen können durch Inkrementieren oder Dekrementieren der Filterabgriffeinstellungen modifiziert werden. Ein Koeffizient eines beliebigen Abgriffs kann unabhängig von einem Koeffizienten eines anderen Abgriffs oder anderer Abgriffe modifiziert werden.
  • 6 A stellt einen beispielhaften Prozess zum potenziellen Erweitern einer Zeit dar, die für Linktraining zugewiesen ist. Der Prozess kann durch einen Sendeempfänger in einer ersten Vorrichtung mit einer drahtgebundenen oder drahtlosen Verbindung zu einem Sendeempfänger in einer zweiten Vorrichtung durchgeführt werden. Die erste Vorrichtung kann zum Beispiel eine Netzwerkschnittstelle, eine Hostvorrichtung, ein elektrisches oder optisches Modul oder eine beliebige Vorrichtung sein. Die zweite Vorrichtung kann zum Beispiel eine Netzwerkschnittstelle, eine Hostvorrichtung, ein elektrisches oder optisches Modul oder eine beliebige Vorrichtung sein. Die Verbindung kann ein Kupferkabel, ein optisches Kabel, eine Backplane, eine beliebige Art von Ethernet-Kabel oder beliebige drahtgebundene oder drahtlose Signalausbreitungsmedien sein. Ein Sendeempfänger kann einen Sender und einen Empfänger beinhalten. Signale, die durch die Verbindung propagiert werden, können mit Ethernet, FibreChannel, InfiniBand oder Serial Attached Small Computer System Interface (SAS) kompatibel verwendet werden.
  • Bei 602 findet ein Austausch zwischen dem Sendeempfänger der ersten Vorrichtung und dem Sendeempfänger der zweiten Vorrichtung statt, um gemeinsame Fähigkeiten mit einem Verbindungspartner zu bestimmen. IEEE 802.3 AN kann zum Beispiel durchgeführt werden, um mindestens Linkgeschwindigkeit, FEC-FÄHIGKEITEN und andere Fähigkeiten zu bestimmen. Bei 602 kann ein Betriebsmodus für die Verbindung ausgewählt werden. Der Betriebsmodus kann als die geringsten von beiden Transceivern angekündigten Fähigkeiten bestimmt werden. Der Betriebsmodus umfasst Geschwindigkeit und/oder Vorwärtsfehlerkorrektur (FEC) und/oder Pausenfähigkeit und/oder andere Fähigkeiten.
  • Bei 604 können die Sendeempfänger an einer Austauschphase teilnehmen, um andere Fähigkeiten anzukündigen. Beispielsweise können Fähigkeiten unter Verwendung einer nächsten Seitenaustauschphase der Auto-Negotiation angezeigt werden. Andere Fähigkeiten können einen Betrag zum Erweitern der Linktrainingszeit beinhalten, der unterstützt, nicht unterstützt, erweitert wird und so weiter.
  • Bei 606 können beide Sendeempfänger eine Menge zum Erweitern der Linktrainingszeit basierend auf der Fähigkeit des Sendeempfängers und der angekündigten Fähigkeit des Linkpartner-Sendeempfängers zum Erweitern der Linktrainingszeit, falls vorhanden, bestimmen. Falls zum Beispiel ein Sendeempfänger das Erweitern des Linktrainings unterstützt, der andere aber nicht, dann wird die Standardlinktrainingszeit verwendet. Falls ein Transceiver eine höhere erweiterte Linktrainingszeit unterstützt als ein anderer, wird die erweiterte Linktrainingszeit mit dem höchsten gemeinsamen Nenner von beiden Transceivern verwendet.
  • Bei 608 nehmen die Sendeempfänger an einer Linktrainingsphase für die Linktrainingszeit plus dem Betrag zum Erweitern der Linktrainingszeit teil. Die Linktrainingsphase kann Anfordern von Änderungen in den Peer-Sendeentzerrungseinstellungen, Überwachen der Auswirkung auf die Linkqualität am Empfänger und Anpassen von Entzerrereinstellungen beinhalten, um Fehler und/oder Augengröße und/oder so weiter zu optimieren.
  • 6 B stellt einen beispielhaften Prozess zum Durchführen eines Linkneutrainings dar. Bei 650 wird eine Fähigkeit zum Durchführen eines Linkneutrainings an einen Linkspartner kommuniziert. Eine Fähigkeit zum Durchführen eines Linkneutrainings kann zum Beispiel in dem Format einer hierin beschriebenen Setup-Nachricht vorliegen. Zum Beispiel kann 650 652 beinhalten, wobei eine Fähigkeit zum Durchführen eines Link-Neutrainings eine Angabe zum Einrichten eines Neutrainings, eine Portkennung und eine Identifikation von Abgriffen, die während des Link-Neutrainings konfiguriert werden können, beinhalten kann.
  • Bei 654 kann eine Anforderung zum Rekonfigurieren von Komponenten, die zur Konfiguration während des Linkneutrainings verfügbar sind, empfangen werden. Eine Anforderung kann zum Beispiel eine Portkennung, die Gegenstand von Abgriffwechselanforderungen durch den Verbindungspartner sein wird, eine Spurkennung, einen oder mehrere Gegenstandsabgriffe oder eine Inkrementierungs-/Dekrementierungs-/Halteabgriffeinstellung beinhalten.
  • Bei 656 kann eine Bestimmung vorgenommen werden, ob eine Antwort auf eine Konfigurationsanfrage empfangen wurde. Zum Beispiel kann eine Antwort eine Angabe darüber beinhalten, ob die Rekonfiguration durchgeführt wurde oder nicht. Andere Beispiele für Antwortnachrichten sind hierin bereitgestellt. Die Antwort kann zum Beispiel eine Kennung einer Portkennung und/oder eine Fahrspurkennung und/oder ein Thread und/oder aktualisiert/nicht aktualisiert/min erreicht/max erreicht beinhalten. Falls die Antwort empfangen wurde, geht der Prozess zu 658 über. Falls die Antwort nicht empfangen wurde, kann sich 656 wiederholen.
  • Bei 658 kann eine Bestimmung vorgenommen werden, ob die Konfiguration akzeptabel ist. Falls zum Beispiel eine Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR) oder beliebige andere gewünschte Charakteristiken erreicht werden, kann die Konfiguration als akzeptabel bestimmt werden. Nachdem eine Konfiguration als akzeptabel bestimmt wurde, kann die Datenübertragung fortfahren oder wiederaufgenommen werden. Andernfalls kann der Empfänger bei 654 andere Konfigurationen angeben und der Prozess fährt fort.
  • 7 A stellt ein Beispiel für Zustände dar, die von einer Zustandsmaschine verwendet werden können, die zum Modifizieren eines Abgriffwerts verwendet werden kann, um zu versuchen, zu erreichen, dass beide Enden der Verbindung mit dem Zustand einer Aktualisierung übereinstimmen. Zum Beispiel kann ein SerDes-Treiber oder Mikrocontroller, der mit einem SerDes assoziiert ist, eine Zustandsmaschine implementieren. Eine Logical_Lane_id kann unabhängige Zustandsmaschinen für Aktualisierungen für jeden unterstützten Abgriff unterstützen. Eine Anforderung für eine Abgriffeinstellungsänderung kann von einer Zustandsmaschine verfolgt werden. In einigen Beispielen können Statuswerte in der/den Antwortnachncht(en) den Zustand aktualisieren. Die Zustandsmaschine kann bei manchen Beispielen drei Zustände beinhalten:
    • ST_IDLE, ein Zustand, aus dem eine Änderung initiiert werden kann. Eingetreten beim Start oder nach Verlassen des ST_UPDATED-Zustands nach Abschluss eines Abgriffwechsels.
    • ST_UPDATE, eingetreten beim Ausgeben eines requestTlv für den Abgriff. In diesem Zustand wird der requestTlv geändert, um eine AKTUALISIERUNG (+/-1) anzugeben. Verlassen beim Empfangen eines statusTlv, der AKTUALISIERT (oder BEGRENZT) angibt.
    • ST_UPDATED, eingetreten beim Empfangen eines statusTlv mit dem AKTUALISIERT Status (oder LIMIT). In diesem Zustand wird der requestTlv geändert, um HALTEN anzugeben. Verlassen beim Empfangen eines statusTlv, der NOT UPDATED angibt.
  • Eine Anforderungsnachricht kann periodisch ausgegeben werden, um den Fall zu behandeln, dass eine Nachricht verloren geht.
  • Der Anfangszustand kann da HOLD sein, wo „keine Anforderung zur Änderung“ besteht. Falls eine Anforderung zum Ändern einer Tx-Abgriff-Einstellung erfolgt und der Status der vorherigen Anforderung NICHT AKTUALISIERT wird, kann die Anforderung ausgegeben und der Status der Abgriff-Anforderung in Abhängigkeit von der Anforderung zum Aktualisieren von INKREMENTIEREN/DEKREMENTIEREN geändert werden. Dieser Zustand kann beibehalten werden, bis der Status des Abgriffs (aus einer Antwortnachricht) AKTUALISIERT, MIN oder MAX wird. AKTUALISIERT kann angeben, dass die Tap-Änderungsanforderung bewirkt oder durchgeführt wurde. MIN kann angeben, dass eine Dekrementierungsanforderung gestellt wurde, und der Abgriff befindet sich nun auf seinem Minimalwert, oder der Abgriff befand sich bereits auf seinem Minimalwert. Gleichermaßen kann MAX angeben, dass eine Inkrementanforderung gestellt wurde, und der Tap befindet sich nun auf seinem Maximalwert, oder der Tap befand sich bereits auf seinem Maximalwert.
  • 7 B stellt eine beispielhafte Zustandsmaschine dar, die zum Verfolgen von Zuständen von Aktualisierungsanforderungen verwendet werden kann. Zum Beispiel kann ein SerDes-Treiber oder Mikrocontroller, der mit einem SerDes assoziiert ist, eine Zustandsmaschine durchführen. In einigen Beispielen kann jede Logical Lane id unabhängige Zustandsmaschinen für Aktualisierungen für jeden unterstützten Abgriff unterstützen. Ein Anfangszustand eines Abgriffs kann NICHT AKTUALISIERT werden, wodurch keine Änderung im Gange ist. Wenn eine Anforderung (INKREMENTIEREN (INC)/DEKREMENTIEREN (DEC)) empfangen wird, kann sich der Zustand zum AKTUALISIEREN DES TX-ABGRIFFS bewegen, während die Änderung in Hardware bewirkt wird. Nachdem die Änderung abgeschlossen ist, kann der Zustand in Abhängigkeit von dem Ergebnis der Änderung in einen von drei Zuständen wechseln. Falls der Abgriff erfolgreich geändert wurde, ändert sich der Zustand zu AKTUALISIERT. Wurde der Abgriff inkrementiert und befindet sich der Abgriff nun auf seinem Maximalwert, so kann sich der Zustand zu MAX ändern. Gleichermaßen ändert sich, falls der Abgriff dekrementiert wurde und sich der Abgriff nun auf seinem Minimalwert befindet, der Zustand zu MIN. Dieser Zustand kann beibehalten werden, bis eine HALTEANFORDERUNG empfangen wird, und nach dem Empfangen der HALTEANFORDERUNG kann der Zustand zu NICHT AKTUALISIERT zurückkehren.
  • Da es möglich ist, dass Änderungen, die unter Verwendung dieses Protokolls angefordert werden, bewirken könnten, dass der Link selbst heruntergeht, kann jede Seite eines Links seine Tx-Taps in ihre ursprünglichen Einstellungen zurückkehren, falls der Link heruntergeht. Sich ändernde senderseitige Parameter können bewirken, dass eine Verbindung fallengelassen wird, und in diesem Fall können anfängliche Einstellungen vor der Anpassung verwendet werden.
  • 8 stellt eine Netzwerkschnittstelle dar, die Ausführungsformen verwenden kann oder durch Ausführungsformen verwendet werden kann. Verschiedene Ressourcen in der Netzwerkschnittstelle können Linkaufbau, Linktraining oder Linkneutraining gemäß hierin beschriebenen Ausführungsformen durchführen. Bei manchen Beispielen beinhaltet die Netzwerkschnittstelle 800 eine Netzwerkschnittstelle-, Netzwerkschnittstellensteuerung- oder eine Netzwerkschnittstelle-Karte. Bei manchen Beispielen kann Netzwerkschnittstelle 800 Teil eines Schalters oder eines System-on-Chip (SoC) mit Vorrichtungen, wie etwa einem Prozessor oder Speicher, sein. Die Netzwerkschnittstelle 800 kann einen Sendeempfänger 802, Prozessoren 804, eine Sendewarteschlange 806, eine Empfangswarteschlange 808, einen Speicher 810 und eine Busschnittstelle 812 und DMA-Engine 852 beinhalten. Der Sendeempfänger 802 kann in der Lage sein, Pakete in Übereinstimmung mit den anwendbaren Protokollen, wie etwa Ethernet, wie etwa in IEEE 802.3 beschrieben, zu empfangen und zu übertragen, obwohl andere Protokolle verwendet werden können. Der Transceiver 802 kann Pakete von und zu einem Netzwerk über ein Netzwerkmedium (nicht dargestellt) empfangen und senden. Der Sendeempfänger 802 kann eine PHY-SCHALTUNGSANORDNUNG 814 und eine Medienzugriffssteuerung (MAC) - Schaltungsanordnung 816 beinhalten. Die PHY-SCHALTUNGSANORDNUNG 814 kann eine (nicht gezeigte) Codierungs- und Decodierungsschaltungsanordnung zum Codieren und Decodieren von Datenpaketen gemäß anwendbaren Bitübertragungsschichtspezifikationen oder Standards beinhalten. Die MAC-SCHALTUNGSANORDNUNG 816 kann dazu konfiguriert sein, MAC-ADRESSFILTERUNG an empfangenen Paketen durchzuführen, MAC-HEADER empfangener Pakete durch Verifizieren von Datenintegrität zu verarbeiten, Präambeln und Auffüllen zu entfernen und Paketinhalt zur Verarbeitung durch höhere Schichten bereitzustellen. Die MAC-SCHALTUNGSANORDNUNG 816 kann dazu konfiguriert sein, zu übertragende Daten zu Paketen zusammenzusetzen, die Ziel-und Quelladressen zusammen mit Netzwerksteuerinformationen und Fehlerdetektions-Hashwerten beinhalten.
  • Die Prozessoren 804 können eine beliebige Kombination von Folgendem sein: Prozessor, Kern, Grafikverarbeitungseinheit (GPU), feldprogrammierbares Gate-Array (FPGA), anwendungsspezifische integrierte Schaltung (ASIC) oder eine andere programmierbare Hardwarevorrichtung, die Programmieren der Netzwerkschnittstelle 800 ermöglichen. Die Prozessoren 804 können zum Beispiel eine Identifikation einer Ressource, die zum Durchführen einer Arbeitslast zu verwenden ist, und eine Erzeugung eines Bitstroms zur Ausführung auf der ausgewählten Ressource bereitstellen. Zum Beispiel kann eine „intelligente Netzwerkschnittstelle“ Paketverarbeitungsfähigkeiten in der Netzwerkschnittstelle unter Verwendung der Prozessoren 804 bereitstellen.
  • Der Paketzuweiser 824 kann eine Verteilung empfangener Pakete zur Verarbeitung durch mehrere CPUs oder Kerne unter Verwendung von hier beschriebener Zeitschlitzzuweisung oder RSS bereitstellen. Wenn der Paketzuweiser 824 RSS verwendet, kann der Paketzuweiser 824 einen Hash berechnen oder eine andere Bestimmung basierend auf Inhalten eines empfangenen Pakets vornehmen, um zu bestimmen, welche CPU oder welcher Kern ein Paket verarbeiten soll.
  • Interrupt-Koaleszenz 822 kann eine Interrupt-Moderation durchführen, wobei die Netzwerkschnittstellen-Interrupt-Koaleszenz 822 darauf wartet, dass mehrere Pakete eintreffen oder dass ein Timeout abläuft, bevor sie einen Interrupt an das Hostsystem erzeugt, um empfangene Pakete zu verarbeiten. Empfangssegmentkoaleszenz (RSC) kann durch die Netzwerkschnittstelle 800 durchgeführt werden, wodurch Teile ankommender Pakete zu Segmenten eines Pakets kombiniert werden. Die Netzwerkschnittstelle 800 stellt dieses koaleszierte Paket einer Anwendung zur Verfügung.
  • Die Direktspeicherzugriff (DMA) -Engine 852 kann einen Paketkopf, Paketnutzdaten und/oder Deskriptor direkt vom Host-Speicher zur Netzwerkschnittstelle kopieren oder umgekehrt, anstatt das Paket in einen Zwischenpuffer am Host zu kopieren und dann eine andere Kopieroperation vom Zwischenpuffer zum Zielpuffer zu verwenden.
  • Der Speicher 810 kann eine beliebige Art von flüchtiger oder nichtflüchtiger Speichereinrichtung sein und kann eine beliebige Warteschlange oder Anweisungen speichern, die zum Programmieren der Netzwerkschnittstelle 800 verwendet werden. Die Übertragungswarteschlange 806 kann Daten oder Referenzen auf Daten zur Übertragung durch die Netzwerkschnittstelle beinhalten. Die Empfangswarteschlange 808 kann Daten oder Referenzen auf Daten beinhalten, die durch die Netzwerkschnittstelle von einem Netzwerk empfangen wurden. Die Deskriptorwarteschlangen 820 können Deskriptoren beinhalten, die Daten oder Pakete in der Sendewarteschlange 806 oder der Empfangswarteschlange 808 referenzieren. Die Busschnittstelle 812 kann eine Schnittstelle mit der Host-Vorrichtung (nicht dargestellt) bereitstellen. Zum Beispiel kann die Busschnittstelle 812 kompatibel mit der PCI-, PCI-EXPRESS-, PCI-x-, SERIAL-ATA- und/oder USB-KOMPATIBLEN Schnittstelle sein (obwohl andere Verschaltungsstandards verwendet werden können).
  • Bei manchen Beispielen können die Netzwerkschnittstelle und andere hierin beschriebene Ausführungsformen in Verbindung mit einer Basisstation (z. B., 3G, 4G, 5G und so weiter), einer Makrobasisstation (z. B., 5G Netzwerke), einer Pikostation (z. B., einem IEEE 802.11 kompatiblen Zugangspunkt), einer Nanostation (z. B., für Point-to-MultiPoint (PtMP) - Anwendungen) Datenzentren vor Ort, Datenzentren außerhalb, Randnetzelementen, Nebelnetzelementen und/oder hybriden Datenzentren (z. B., Datenzentren, die Virtualisierungs-, Cloud- und softwaredefinierte Vernetzung verwenden, um Anwendungsarbeitslasten über physische Datenzentren und verteilte Multi-Cloud-Umgebungen zu liefern) verwendet werden.
  • 9 stellt einen beispielhaften Schalter dar. Verschiedene Ausführungsformen können in oder mit dem Switch verwendet werden, um eine Linkherstellung, ein Linktraining oder ein Linkneutraining gemäß hierin beschriebenen Ausführungsformen durchzuführen. Der Switch 904 kann Pakete oder Frames eines beliebigen Formats oder gemäß einer beliebigen Spezifikation von einem beliebigen Port 902-0 bis 902-X zu einem beliebigen der Ports 906-0 bis 906-Y (oder umgekehrt) routen. Beliebige der Ports 902-0 bis 902-X können mit einem Netzwerk aus einer oder mehreren miteinander verbundenen Vorrichtungen verbunden sein. Gleichermaßen kann jeder der Ports 906-0 bis 906-X mit einem Netzwerk aus einer oder mehreren miteinander verbundenen Vorrichtungen verbunden sein. Der Switch 904 kann entscheiden, an welchen Port Pakete oder Frames zu übertragen sind, unter Verwendung einer Tabelle, die Paketcharakteristiken auf einen assoziierten Ausgangsport abbildet. Zum Beispiel können Abgleichhandlungstabellen verwendet werden, wodurch ein Hash eines Teils eines Pakets als Index verwendet wird, um einen Eintrag zu finden. Zusätzlich dazu kann der Switch 904 Paketreplikation zum Weiterleiten eines Pakets oder Frames an mehrere Ports und Einreihen von Paketen oder Frames in eine Warteschlange vor der Übertragung an einen Ausgangsport durchführen. Einige Ausführungsformen implementieren Hash-Lookup in P4-Programmiersprache, die eine Programmiersprache ist, die dazu ausgelegt ist, das Programmieren von Paketweiterleitung in Datenebenen zu ermöglichen. Im Gegensatz zu Allzwecksprache, wie etwa C oder Python, ist P4 eine domänenspezifische Sprache mit einer Anzahl von Konstrukten, die um die Netzwerkdatenweiterleitung optimiert sind.
  • 10 stellt ein System dar. Das System kann hierin beschriebene Ausführungsformen verwenden, um eine Linkherstellung, ein Linktraining oder ein Linkneutraining gemäß hierin beschriebenen Ausführungsformen durchzuführen. Das System 1000 beinhaltet einen Prozessor 1010, der Verarbeitung, Betriebsverwaltung und Ausführung von Anweisungen für das System 1000 bereitstellt. Der Prozessor 1010 kann eine beliebige Art von Mikroprozessor, Zentralverarbeitungseinheit (CPU), Grafikverarbeitungseinheit (GPU), Verarbeitungskern oder anderer Verarbeitungshardware zum Bereitstellen von Verarbeitung für das System 1000 oder eine Kombination von Prozessoren beinhalten. Der Prozessor 1010 steuert den Gesamtbetrieb des Systems 1000 und kann ein oder mehrere programmierbare Universal- oder Spezialmikroprozessoren, Digitalsignalprozessoren (DSPs), programmierbare Steuerungen, anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikvorrichtungen (PLDs) oder dergleichen oder eine Kombination solcher Vorrichtungen sein oder beinhalten.
  • In einem Beispiel beinhaltet das System 1000 eine Schnittstelle 1012, die mit dem Prozessor 1010 gekoppelt ist, die eine Schnittstelle mit höherer Geschwindigkeit oder eine Schnittstelle mit hohem Durchsatz für Systemkomponenten darstellen kann, die Verbindungen mit höherer Bandbreite, wie etwa das Speichersubsystem 1020 oder die Grafikschnittstellenkomponenten 1040 oder Beschleuniger 1042, benötigen. Die Schnittstelle 1012 repräsentiert eine Schnittstellenschaltung, die eine eigenständige Komponente sein kann oder auf einem Prozessor-Die integriert sein kann. Wo vorhanden, verbindet sich die Grafikschnittstelle 1040 mit Grafikkomponenten, um einem Benutzer des Systems 1000 eine visuelle Anzeige bereitzustellen. In einem Beispiel kann die Grafikschnittstelle 1040 eine High-Definition-Anzeige (HD-ANZEIGE) ansteuern, die einem Benutzer eine Ausgabe bereitstellt. Eine hohe Auflösung kann sich auf eine Anzeige mit einer Pixeldichte von näherungsweise 100 PPI (Pixel pro Zoll) oder mehr beziehen und kann Formate, wie etwa volle HD (z. B., 1080 p), Netzhautanzeigen, 4 K (Ultrahochauflösung oder UHD) oder andere beinhalten. Bei einem Beispiel kann die Anzeige eine Touchscreen-Anzeige beinhalten. In einem Beispiel erzeugt die Grafikschnittstelle 1040 eine Anzeige basierend auf Daten, die in dem Speicher 1030 gespeichert sind, oder basierend auf Operationen, die durch den Prozessor 1010 ausgeführt werden, oder beides. In einem Beispiel erzeugt die Grafikschnittstelle 1040 eine Anzeige basierend auf Daten, die in dem Speicher 1030 gespeichert sind, oder basierend auf Operationen, die durch den Prozessor 1010 ausgeführt werden, oder beides.
  • Die Beschleuniger 1042 können eine Festfunktions-Offload-Engine sein, auf die von einem Prozessor 1010 zugegriffen werden kann oder von diesem verwendet werden kann. Die Beschleuniger 1042 können unter Verwendung einer Speicherschnittstelle (z. B., DDR4 und DDR5) oder unter Verwendung eines beliebigen hierin beschriebenen Vernetzungs- oder Verbindungsstandards mit dem Prozessor 1010 gekoppelt sein. Zum Beispiel kann ein Beschleuniger unter den Beschleunigern 1042 sequenzielle und spekulative Decodierungsoperationen auf eine hierin beschriebene Weise, Komprimierungs (DC) -Fähigkeit, Kryptographiedienste, wie etwa Public-Key-Verschlüsselung (PKE), Verschlüsselung, Hash/Authentifizierungsfähigkeiten, Entschlüsselung oder andere Fähigkeiten oder Dienste bereitstellen. Bei manchen Ausführungsformen stellt zusätzlich oder alternativ ein Beschleuniger unter den Beschleunigern 1042 Feldauswahlsteuerungsfähigkeiten bereit, wie hier beschrieben. In manchen Fällen können Beschleuniger 1042 in einen CPU-SOCKEL (z. B., einen Verbinder zu einer Hauptplatine oder Leiterplatte, die eine CPU beinhaltet und eine elektrische Schnittstelle mit der CPU bereitstellt) integriert sein. Die Beschleuniger 1042 können zum Beispiel einen Einzel- oder Mehrkernprozessor, eine Grafikverarbeitungseinheit, einen Einzel- oder Mehrebenen-Cache einer logischen Ausführungseinheit, Funktionseinheiten, die zum unabhängigen Ausführen von Programmen oder Threads verwendbar sind, anwendungsspezifische integrierte Schaltungen (ASICs), Neuronalnetzprozessoren (NNPs), programmierbare Steuerlogik und programmierbare Verarbeitungselemente, wie etwa feldprogrammierbare Gate-Arrays (FPGAs), beinhalten. Beschleuniger 1042 können mehrere neuronale Netzwerke, CPUs, Prozessorkerne, Universalgrafikverarbeitungseinheiten bereitstellen oder Grafikverarbeitungseinheiten können zur Verwendung durch künstliche Intelligenz (AI)- oder Maschinenlernmodelle (ML) verfügbar gemacht werden. Das AI-MODELL kann zum Beispiel eines oder eine Kombination von Folgendem verwenden oder beinhalten: ein bestärkendes Lernschema, Q-Lernschema, Tiefen-Q-Lernen oder Asynchronous Advantage Actor-Critic (A3C), kombinatorisches neuronales Netzwerk, rekurrentes kombinatorisches neuronales Netzwerk oder ein anderes AI- oder ML-MODELL. Mehrere neuronale Netze, Prozessorkerne oder Grafikverarbeitungseinheiten können zur Verwendung durch AI- oder ML-MODELLE bereitgestellt werden.
  • Das Speichersubsystem 1020 repräsentiert den Hauptspeicher des Systems 1000 und stellt eine Speicherung für Code bereit, der durch den Prozessor 1010 ausgeführt werden soll, oder Datenwerte, die beim Ausführen einer Routine verwendet werden sollen. Das Speichersubsystem 1020 kann einen oder mehrere Speichervorrichtungen 1030, wie etwa Nurlesespeicher (ROM), Flash-Speicher, eine oder mehrere Varianten von Direktzugriffsspeicher (RAM), wie etwa DRAM, oder andere Speichervorrichtungen oder eine Kombination solcher Vorrichtungen beinhalten. Der Speicher 1030 speichert und hostet unter anderem das Betriebssystem (OS) 1032, um eine Softwareplattform zur Ausführung von Anweisungen in dem System 1000 bereitzustellen. Zusätzlich dazu können Anwendungen 1034 auf der Softwareplattform des OS 1032 aus dem Speicher 1030 ausgeführt werden. Die Anwendungen 1034 repräsentieren Programme, die ihre eigene Betriebslogik zum Durchführen einer Ausführung einer oder mehrerer Funktionen aufweisen. Die Prozesse 1036 repräsentieren Agenten oder Routinen, die dem OS 1032 oder einer oder mehreren Anwendungen 1034 oder einer Kombination Hilfsfunktionen bereitstellen. Das OS 1032, die Anwendungen 1034 und die Prozesse 1036 stellen Softwarelogik bereit, um Funktionen für das System 1000 bereitzustellen. In einem Beispiel beinhaltet das Speichersubsystem 1020 die Speichersteuerung 1022, die eine Speichersteuerung zum Erzeugen und Ausgeben von Befehlen an den Speicher 1030 ist. Es versteht sich, dass Speichersteuerung 1022 ein physischer Teil des Prozessors 1010 oder ein physischer Teil der Schnittstelle 1012 sein könnte. Zum Beispiel kann Speichersteuerung 1022 eine integrierte Speichersteuerung sein, die in einer Schaltung mit dem Prozessor 1010 integriert ist.
  • Bei manchen Beispielen kann der Prozessor 1010 einen (nicht dargestellten) Vorrichtungstreiber für Netzwerkschnittstelle 1050 ausführen. Das OS 1032 kann Fähigkeiten von Netzwerkschnittstelle 1050 von dem Vorrichtungstreiber bestimmen. Zum Beispiel kann das OS 1032 eine Angabe von Fähigkeiten der Netzwerkschnittstelle 1050 empfangen, eine oder mehrere der folgenden Fähigkeiten oder hierin beschriebenen Fähigkeiten durchzuführen: Linktrainingszeiterweiterung, Beginn des Linktrainings früher als geplant, Ändern oder Einstellen einer Standardlinktrainingszeit, Linkneutraining oder Komponentenparametermodifikation. Das OS 1032 kann den Vorrichtungstreiber auffordern, die Netzwerkschnittstelle 1050 zu aktivieren oder zu deaktivieren, um beliebige der hier beschriebenen Fähigkeiten durchzuführen. Bei manchen Beispielen kann das OS 1032 selbst die Netzwerkschnittstelle 1050 aktivieren oder deaktivieren, um beliebige der hier beschriebenen Fähigkeiten durchzuführen. Das OS 1032 kann Anforderungen (z. B., von einer Anwendung 1034) an die Netzwerkschnittstelle 1050 liefern, eine oder mehrere Fähigkeiten der Netzwerkschnittstelle 1050 zu nutzen. Zum Beispiel können beliebige der Anwendungen 1034 die Verwendung oder Nichtverwendung beliebiger hierin beschriebener Fähigkeiten durch Netzwerkschnittstelle 1050 anfordern. In einigen Beispielen kann ein Datenzentrum-Administrator die Netzwerkschnittstelle 1050 dazu konfigurieren, beliebige der hierin beschriebenen Fähigkeiten durchzuführen.
  • Obwohl dies nicht speziell veranschaulicht ist, versteht es sich, dass das System 1000 einen oder mehrere Busse oder Bussysteme zwischen Vorrichtungen beinhalten kann, wie etwa einen Speicherbus, einen Grafikbus, Schnittstellenbusse oder andere. Busse oder andere Signalleitungen können Komponenten kommunikativ oder elektrisch miteinander koppeln oder die Komponenten sowohl kommunikativ als auch elektrisch koppeln. Busse können physische Kommunikationsleitungen, Punkt-zu-Punkt-Verbindungen, Brücken, Adapter, Steuerungen oder andere Schaltungen oder eine Kombination beinhalten. Busse können zum Beispiel einen Systembus und/oder einen Peripheral Component Interconnect (PCI) -Bus und/oder einen Hyper Transport oder Industriestandard-Architektur (ISA) -Bus und/oder einen Small Computer System Interface (SCSI) -Bus und/oder einen Universal Serial Bus (USB) oder einen Institute of Electrical and Electronics Engineers (IEEE) -Standard 1394-Bus (Firewire) beinhalten.
  • In einem Beispiel beinhaltet das System 1000 eine Schnittstelle 1014, die mit der Schnittstelle 1012 gekoppelt sein kann. In einem Beispiel repräsentiert die Schnittstelle 1014 eine Schnittstellenschaltung, die eigenständige Komponenten und integrierte Schaltungen beinhalten kann. In einem Beispiel sind mehrere Benutzerschnittstellenkomponenten oder Peripheriekomponenten oder beides mit der Schnittstelle 1014 gekoppelt. Die Netzwerkschnittstelle 1050 stellt dem System 1000 die Fähigkeit bereit, mit entfernten Vorrichtungen (z. B., Servern oder anderen Rechenvorrichtungen) über ein oder mehrere Netzwerke zu kommunizieren. Die Netzwerkschnittstelle 1050 kann einen Ethernet-Adapter, Drahtlosverbindungskomponenten, Zellularnetzwerkverbindungskomponenten, USB (Universal Serial Bus) oder andere drahtgebundene oder drahtlose standardbasierte oder proprietäre Schnittstellen beinhalten. Die Netzwerkschnittstelle 1050 kann Daten an eine Vorrichtung übertragen, die sich in demselben Datenzentrum oder Rack befindet, oder an eine entfernte Vorrichtung, die Senden von im Speicher gespeicherten Daten beinhalten kann. Die Netzwerkschnittstelle 1050 kann Daten von einer entfernten Vorrichtung empfangen, was Speichern empfangener Daten in einem Speicher beinhalten kann. Verschiedene Ausführungsformen können in Verbindung mit der Netzwerkschnittstelle 1050, dem Prozessor 1010 und dem Speichersubsystem 1020 verwendet werden.
  • In einem Beispiel weist das System 1000 eine oder mehrere Eingabe/Ausgabe (E/A) - Schnittstellen 1060 auf. Die E/A-Schnittstelle 1060 kann eine oder mehrere Schnittstellenkomponenten beinhalten, über die ein Benutzer mit dem System 1000 interagiert (z. B. Audio, alphanumerisch, taktil/berührend oder eine andere Schnittstelle). Die Peripherieschnittstelle 1070 kann eine beliebige Hardwareschnittstelle beinhalten, die oben nicht speziell erwähnt ist. Peripheriegeräte beziehen sich allgemein auf Vorrichtungen, die sich in Abhängigkeit von dem System 1000 verbinden. Eine abhängige Verbindung ist eine, bei der das System 1000 die Softwareplattform oder Hardwareplattform oder beides bereitstellt, auf der eine Operation ausgeführt wird und mit der ein Benutzer interagiert.
  • In einem Beispiel beinhaltet das System 1000 ein Speicherungssubsystem 1080 zum Speichern von Daten auf eine nichtflüchtige Weise. In einem Beispiel können sich bei gewissen Systemimplementierungen zumindest gewisse Komponenten der Speicherung 1080 mit Komponenten des Speichersubsystems 1020 überlappen. Das Speicherungssubsystem 1080 beinhaltet eine oder mehrere Speicherungsvorrichtungen 1084, die ein beliebiges herkömmliches Medium zum Speichern großer Datenmengen auf nichtflüchtige Weise sein können oder beinhalten können, wie etwa eine oder mehrere magnetische, Festkörper- oder optische Platten oder eine Kombination. Die Speicherung 1084 hält Code oder Anweisungen und Daten 1086 in einem persistenten Zustand (z. B. der Wert bleibt trotz Unterbrechung der Stromversorgung des Systems 1000 erhalten). Die Speicherung 1084 kann allgemein als ein „Speicher“ betrachtet werden, obwohl der Speicher 1030 typischerweise der Ausführungs- oder Betriebsspeicher ist, um dem Prozessor 1010 Anweisungen bereitzustellen. Obwohl die Speicherung 1084 nichtflüchtig ist, kann der Speicher 1030 flüchtigen Speicher beinhalten (z. B. der Wert oder Zustand der Daten ist unbestimmt, falls die Leistung zum System 1000 unterbrochen wird). In einem Beispiel beinhaltet das Speicherungssubsystem 1080 eine Steuerung 1082, um eine Schnittstelle mit der Speicherung 1084 zu bilden. In einem Beispiel ist die Steuerung 1082 ein physischer Teil der Schnittstelle 1014 oder des Prozessors 1010 oder kann Schaltungen oder Logik sowohl in dem Prozessor 1010 als auch in der Schnittstelle 1014 beinhalten.
  • Ein flüchtiger Speicher ist ein Speicher, dessen Zustand (und damit die in ihm gespeicherten Daten) unbestimmt ist, wenn die Stromversorgung des Gerätes unterbrochen wird. Dynamischer flüchtiger Speicher kann Auffrischen der in der Vorrichtung gespeicherten Daten beinhalten, um den Zustand beizubehalten. Ein Beispiel für dynamischen flüchtigen Speicher beinhaltet DRAM (Dynamic Random Access Memory) oder irgendeine Variante, wie etwa synchronen DRAM (SDRAM). Ein Beispiel für einen flüchtigen Speicher beinhaltet einen Cache. Ein Speichersubsystem, wie hier beschrieben, kann mit einer Anzahl von Speichertechnologien kompatibel sein, wie etwa DDR3 (Double Data Rate Version 3, ursprüngliche Freigabe durch JEDEC (Joint Electronic Device Engineering Council) am 27. Juni 2007). DDR4 (DDR Version 4, anfängliche Spezifikation veröffentlicht im September 2012 von JEDEC), DDR4E (DDR Version 4), LPDDR3 (Low Power DDR Version 3, JESD209-3B, August 2013 von JEDEC), LPDDR4) LPDDR Version 4, JESD209-4, ursprünglich veröffentlicht von JEDEC im August 2014), WIO2 (Wide Input/Output Version 2, JESD229-2, ursprünglich veröffentlicht von JEDEC im August 2014, HBM (High Bandwidth Memory, JESD325, ursprünglich veröffentlicht durch JEDEC im Oktober 2013, LPDDR5 (gegenwärtig besprochen durch JEDEC), HBM2 (HBM Version 2), gegenwärtig besprochen durch JEDEC, oder andere oder Kombinationen von Speichertechnologien und Technologien basierend auf Ableitungen oder Erweiterungen solcher Spezifikationen.
  • Eine nichtflüchtige Speicher (NVM) -Vorrichtung ist ein Speicher, dessen Zustand bestimmt ist, selbst wenn Strom zu der Vorrichtung unterbrochen wird. In einer Ausführungsform kann die NVM-VORRICHTUNG eine blockadressierbare Speichervorrichtung umfassen, wie etwa NAND-TECHNOLOGIEN oder insbesondere NAND-FLASH-SPEICHER mit mehreren Schwellenebenen (zum Beispiel Single-Level-Cell („SLC“), Multi-Level-Cell („MLC“), Quad-Level-Cell („QLC“), Tri-Level-Cell („TLC“) oder irgendein anderes NAND). Eine NVM-VORRICHTUNG kann auch eine byteadressierbare dreidimensionale Kreuzungspunkt-Speichervorrichtung zum Schreiben an Ort und Stelle oder eine andere byteadressierbare NVM-VORRICHTUNG zum Schreiben an Ort und Stelle (auch als persistenter Speicher bezeichnet), wie etwa einen ein- oder mehrstufigen Phasenwechselspeicher (PCM) oder Phasenwechselspeicher mit einem Schalter (PCMS), NVM-VORRICHTUNGEN, die Chalkogenid-Phasenwechselmaterial (zum Beispiel Chalkogenidglas) verwenden, resistiven Speicher einschließlich Metalloxidbasis, Sauerstoffleerstelle-Basis und Conductive Bridge Random Access Memory (CB-RAM), Nanodrahtspeicher, ferroelektrischen Direktzugriffsspeicher (FeRAM, FRAM), magnetoresistiven Direktzugriffsspeicher (MRAM), der Memristortechnologie beinhaltet, Spintransferdrehmoment (STT)-MRAM, eine Spintronik-Magnetübergangsspeicher-basierte Vorrichtung, eine MTJ-BASIERTE (MTJ: Magnetic Tunnel Junction) Vorrichtung, eine DW (Domain Wall)- und SOT (Spin Orbit Transfer) -basierte Vorrichtung, eine Speichervorrichtung auf Thyristorbasis oder eine Kombination beliebiger der obigen oder einen anderen Speicher umfassen.
  • Eine (nicht dargestellte) Leistungsquelle stellt Leistung an die Komponenten des Systems 1000 bereit. Genauer gesagt ist die Leistungsquelle typischerweise mit einer oder mehreren Leistungsversorgungen in dem System 1000 gekoppelt, um die Komponenten des Systems 1000 mit Leistung zu versorgen. Bei einem Beispiel beinhaltet die Stromversorgung einen AC/DC (Wechselstrom zu Gleichstrom) -Adapter zum Einstecken in eine Wandsteckdose. Eine solche AC-LEISTUNG kann eine erneuerbare Energie (z, B., Solarleistung) -Leistungsquelle sein. Bei einem Beispiel beinhaltet die Leistungsquelle eine DC-LEISTUNGSQUELLE, wie etwa einen externen AC-DC-WANDLER. Bei einem Beispiel beinhaltet die Stromquelle oder Stromversorgung drahtlose Ladehardware zum Laden über die Nähe zu einem Ladefeld. Bei einem Beispiel kann die Stromquelle eine interne Batterie, eine Wechselstromquelle, eine bewegungsbasierte Stromversorgung, eine Solarstromquelle oder eine Brennstoffzellenquelle beinhalten.
  • Bei einem Beispiel kann das System 1000 unter Verwendung von miteinander verbundenen Rechenschlitten von Prozessoren, Speichern, Speicherungen, Netzwerkschnittstellen und anderen Komponenten implementiert werden. Hochgeschwindigkeitszwischenverbindungen zwischen Komponenten können verwendet werden, wie etwa: Ethernet (IEEE 802.3), Remote Direct Memory Access (RDMA), InfiniBand, Internet Wide Area RDMA Protocol (iWARP), Quick UDP Internet Connections (QUIC), RDMA over Converged Ethernet (RoCE), Peripheral Component Interconnect Express (PCIe), Intel QuickPath Interconnect (QPI), Intel Ultra Path Interconnect (UPI), Intel On-Chip System Fabric (IOSF), Omnipath, Compute Express Link (CXL), HyperTransport, Hochgeschwindigkeits-Fabric, NVLink, Advanced Microcontroller Bus Architecture (AMBA) -Interconnect, OpenCAPI, Gen-Z, Cache Coherent Interconnect for Accelerators (CCIX), 3 GPP Long Term Evolution (LTE) (4 G), 3GPP 5Gund Variationen davon. Daten können unter Verwendung eines Protokolls, wie etwa NVMe over Fabrics (NVMe-oF) oder NVMe, in virtualisierte Speicherungsknoten kopiert oder gespeichert werden.
  • Ausführungsformen hierin können in verschiedenen Arten von Rechen- und Vernetzungsausrüstungen implementiert werden, wie etwa Switches, Router, Racks und Bladeserver, wie etwa jenen, die in einem Datenzentrum und/oder einer Serverfarmumgebung eingesetzt werden. Die in Datenzentren und Serverfarms verwendeten Server umfassen gruppierte Serverkonfigurationen wie rackbasierte Server oder Blade Server. Diese Server sind in Kommunikation über verschiedene Netzwerkbereitstellungen miteinander verbunden, wie etwa Partitionieren von Serversätzen in Lokalnetzwerke (LANs) mit geeigneten Schalt- und Routingeinrichtungen zwischen den LANs, um ein privates Intranet zu bilden. Cloud-Hosting-Einrichtungen können zum Beispiel typischerweise große Datenzentren mit einer Vielzahl von Servern einsetzen. Ein Blade umfasst eine separate Rechenplattform, die dazu konfiguriert ist, Servertyp-Funktionen durchzuführen, das heißt einen „Server auf einer Karte“. Dementsprechend beinhaltet ein Blade Komponenten, die herkömmlichen Servern gemein sind, einschließlich einer Hauptplatine Leiterplatte (Hauptplatine), die interne Verdrahtung (z. B., Busse) zum Koppeln geeigneter integrierter Schaltungen (ICs) bereitstellt, und anderer Komponenten, die auf der Platine montiert sind.
  • 11 stellt eine Umgebung 1100 dar, die mehrere Rechen-Racks 1102 beinhaltet, wobei einige einen Top-of-Rack (ToR) -Switch 1104, einen Pod-Manager 1106 und mehrere gebündelte Systemschubladen beinhalten. Verschiedene Ausführungsformen können in oder mit dem Switch verwendet werden, um eine Linkherstellung, ein Linktraining oder ein Linkneutraining gemäß hierin beschriebenen Ausführungsformen durchzuführen. Allgemein können die gebündelten Systemschubladen gebündelte Rechenschubladen und gebündelte Speicherungsschubladen beinhalten. Optional können die gebündelten Systemschubladen auch gebündelte Speicherschubladen und gebündelte Eingabe/Ausgabe (E/A) -Schubladen beinhalten. In der veranschaulichten Ausführungsform weisen die gebündelten Systemschubladen eine gebündelte Intel® -XEON® -Computerschublade 1108 und eine gebündelte Intel® -ATOM™-RECHENSCHUBLADE 1110, eine gebündelte Speicherungsschublade 1112, eine gebündelte Speicherungsschublade 1114 und eine gebündelte E/A-Schublade 1116 auf. Manche der gebündelten Systemschubladen sind über eine Hochgeschwindigkeitsverbindung 1118, wie etwa eine 40-Gigabit/Sekunde (Gb/s)- oder 100-Gb/s-Ethernet-Verbindung oder eine 100+ Gb/soptische Siliciumphotonikverbindung (SiPh) mit dem ToR-Schalter 1104 verbunden. In einer Ausführungsform umfasst die Hochgeschwindigkeitsverbindung 1118 eine optische Verbindung von 800 Gb/s SiPh.
  • Mehrere der Rechen-Racks 1102 können über ihre ToR-Schalter 1104 (z. B. mit einem Pod-Level-Switch oder Datenzentrum-Switch) miteinander verbunden sein, wie durch Verbindungen mit einem Netzwerk 1120 veranschaulicht ist. Bei manchen Ausführungsformen werden Gruppen von Rechen-Racks 1102 als separate Pods über einen oder mehrere Pod-Manager 1106 verwaltet. In einer Ausführungsform wird ein einziger Pod-Manager verwendet, um Racks in dem Pod zu verwalten. Alternativ dazu können verteilte POD-Manager für POD-Managementoperationen verwendet werden.
  • Die Umgebung 1100 beinhaltet ferner eine Verwaltungsschnittstelle 1122, die verwendet wird, um verschiedene Aspekte der Umgebung zu verwalten. Dies beinhaltet das Verwalten der Rack-Konfiguration mit entsprechenden Parametern, die als Rack-Konfigurationsdaten 1124 gespeichert sind.
  • Verschiedene Beispiele können unter Verwendung von Hardwareelementen, Softwareelementen oder einer Kombination von beiden implementiert werden. Bei manchen Beispielen können Hardwareelemente Vorrichtungen, Komponenten, Prozessoren, Mikroprozessoren, Schaltungen, Schaltungselemente (z. B., Transistoren, Widerstände, Kondensatoren, Induktivitäten und so weiter), integrierte Schaltungen, ASICs, PLDs, DSPs, FPGAs, Speichereinheiten, Logikgatter, Register, Halbleitervorrichtung, Chips, Mikrochips, Chipsätze und so weiter beinhalten. Bei manchen Beispielen können Softwareelemente Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Software-Schnittstellen, APIs, Befehlsätze, Rechencode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine beliebige Kombination davon beinhalten. Das Bestimmen, ob ein Beispiel unter Verwendung von Hardwareelementen und/oder Softwareelementen implementiert wird, kann gemäß einer beliebigen Anzahl von Faktoren variieren, wie etwa einer gewünschten Rechenrate, Leistungspegeln, Wärmetoleranzen, Verarbeitungszyklusbudget, Eingangsdatenraten, Ausgangsdatenraten, Speicherressourcen, Datenbusgeschwindigkeiten und anderen Gestaltungs- oder Leistungsfähigkeitsbeschränkungen, wie für eine gegebene Implementierung gewünscht. Es wird angemerkt, dass Hardware-, Firmware- und/oder Softwareelemente hierin kollektiv oder einzeln als „Modul“, oder „Logik“ bezeichnet werden können. Ein Prozessor kann eine oder mehrere Kombinationen aus einer Hardwarezustandsmaschine, digitaler Steuerlogik, Zentraleinheit oder beliebigen Hardware-, Firmware- und/oder Softwareelementen sein.
  • Manche Beispiele können unter Verwendung oder als ein Herstellungsartikel oder mindestens ein computerlesbares Medium implementiert werden. Ein computerlesbares Medium kann ein nichtflüchtiges Speichermedium zum Speichern von Logik beinhalten. Bei manchen Beispielen kann das nichtflüchtige Speichermedium einen oder mehrere Typen von computerlesbaren Speichermedien beinhalten, die elektronische Daten speichern können, einschließlich flüchtigem Speicher oder nichtflüchtigem Speicher, entfernbarem oder nicht entfernbarem Speicher, löschbarem oder nicht löschbarem Speicher, beschreibbarem oder wiederbeschreibbarem Speicher und so weiter. Bei manchen Beispielen kann die Logik verschiedene Softwareelemente beinhalten, wie etwa Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Software-Schnittstellen, API, Befehlsätze, Rechencode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine beliebige Kombination davon.
  • Gemäß manchen Beispielen kann ein computerlesbares Medium ein nichtflüchtiges Speichermedium zum Speichern oder Pflegen von Anweisungen beinhalten, die bei Ausführung durch eine Maschine, eine Recheneinrichtung oder ein System bewirken, dass die Maschine, die Recheneinrichtung oder das System Verfahren und/oder Operationen gemäß den beschriebenen Beispielen durchführt. Die Anweisungen können einen beliebigen geeigneten Typ von Code beinhalten, wie etwa Quellcode, kompilierten Code, interpretierten Code, ausführbaren Code, statischen Code, dynamischen Code und dergleichen. Die Anweisungen können gemäß einer vordefinierten Computersprache, Art und Weise oder Syntax implementiert werden, um eine Maschine, eine Rechenvorrichtung oder ein System anzuweisen, eine gewisse Funktion durchzuführen. Die Anweisungen können unter Verwendung einer beliebigen geeigneten High-Level-, Low-Level-, objektorientierten, visuellen, kompilierten und/oder interpretierten Programmiersprache implementiert werden.
  • Ein oder mehrere Aspekte mindestens eines Beispiels können durch repräsentative Anweisungen implementiert werden, die auf mindestens einem maschinenlesbaren Medium gespeichert sind, das verschiedene Logik innerhalb des Prozessors repräsentiert, die, wenn sie durch eine Maschine, eine Rechenvorrichtung oder ein System gelesen werden, die Maschine, die Rechenvorrichtung oder das System veranlassen, Logik herzustellen, um die hierin beschriebenen Techniken durchzuführen. Solche Repräsentationen, die als „IP-KERNE“ bekannt sind, können auf einem greifbaren, maschinenlesbaren Medium gespeichert werden und verschiedenen Kunden oder Herstellungsanlagen zugeführt werden, um in die Herstellungsmaschinen zu laden, die tatsächlich die Logik oder den Prozessor herstellen.
  • Die Erscheinungen des Ausdrucks „ein Beispiel“ oder „ein Beispiel“ beziehen sich nicht notwendigerweise alle auf dasselbe Beispiel oder dieselbe Ausführungsform. Ein beliebiger hier beschriebener Aspekt kann mit einem beliebigen anderen hier beschriebenen Aspekt oder ähnlichen Aspekt kombiniert werden, unabhängig davon, ob die Aspekte mit Bezug auf dieselbe Figur oder dasselbe Element beschrieben sind. Aufteilung, Weglassung oder Einbeziehung von Blockfunktionen, die in den begleitenden Figuren dargestellt sind, schließt nicht aus, dass die Hardwarekomponenten, Schaltungen, Software und/oder Elemente zum Implementieren dieser Funktionen notwendigerweise in Ausführungsformen aufgeteilt, weggelassen oder eingeschlossen wären.
  • Manche Beispiele können unter Verwendung des Ausdrucks „gekoppelt“ und „verbunden“ zusammen mit ihren Derivaten beschrieben werden. Diese Begriffe sind nicht notwendigerweise synonym zueinander zu verstehen. Zum Beispiel können Beschreibungen unter Verwendung der Begriffe „verbunden“ und/oder „gekoppelt“ angeben, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt miteinander stehen. Der Begriff „gekoppelt“ kann jedoch auch bedeuten, dass zwei oder mehr Elemente nicht in direktem Kontakt miteinander stehen, aber dennoch miteinander zusammenwirken oder interagieren.
  • Die Begriffe „erster“, „zweiter“ und dergleichen bezeichnen hier keine Reihenfolge, Quantität oder Wichtigkeit, sondern werden vielmehr verwendet, um ein Element von einem anderen zu unterscheiden. Die Begriffe „ein“ und „eine“ bezeichnen hierin keine Mengenbegrenzung, sondern bezeichnen das Vorhandensein mindestens eines der referenzierten Gegenstände. Der Ausdruck „aktiviert“, der hier unter Bezugnahme auf ein Signal verwendet wird, bezeichnet einen Zustand des Signals, in dem das Signal aktiv ist und der durch Anwenden eines beliebigen logischen Pegels entweder logisch 0 oder logisch 1 auf das Signal erreicht werden kann. Die Begriffe „folgen“ oder „nach‟ können sich auf unmittelbar nachfolgendes oder nachfolgendes anderes Ereignis oder andere Ereignisse beziehen. Andere Abfolgen von Operationen können auch gemäß alternativen Ausführungsformen durchgeführt werden. Des Weiteren können zusätzliche Operationen in Abhängigkeit von den speziellen Anwendungen hinzugefügt oder entfernt werden. Eine beliebige Kombination von Änderungen kann verwendet werden und ein Durchschnittsfachmann mit dem Nutzen dieser Offenbarung würde die vielen Variationen, Modifikationen und alternativen Ausführungsformen davon verstehen.
  • Disjunkte Sprache, wie etwa der Ausdruck „mindestens eines von X, Y oder Z“ wird, sofern nicht speziell anders angegeben, in dem Kontext verstanden, wie er allgemein verwendet wird, um darzustellen, dass ein Element, ein Begriff usw. entweder X, Y oder Z oder eine beliebige Kombination davon (z. B., X, Y und/oder Z) sein kann. Dementsprechend beabsichtigt eine solche disjunkte Sprache nicht allgemein zu implizieren und sollte nicht implizieren, dass bestimmte Ausführungsformen erfordern, dass jeweils mindestens eines von X, mindestens eines von Y oder mindestens eines von Z vorhanden ist. Zusätzlich sollte konjunktive Sprache, wie etwa der Ausdruck „mindestens eines von X, Y und Z“, sofern nicht spezifisch anders angegeben, auch X, Y, Z oder eine beliebige Kombination davon bedeutend verstanden werden, einschließlich „X, Y und/oder Z“ '.
  • Veranschaulichende Beispiele für die hier offenbarten Vorrichtungen, Systeme und Verfahren sind unten bereitgestellt. Eine Ausführungsform der Vorrichtungen, Systeme und Verfahren kann eines oder mehrere und eine beliebige Kombination der unten beschriebenen Beispiele beinhalten.
  • Flussdiagramme, wie hier veranschaulicht, stellen Beispiele für Sequenzen verschiedener Prozesshandlungen bereit. Die Flussdiagramme können Operationen, die durch eine Software- oder Firmware-Routine auszuführen sind, sowie physische Operationen angeben. In einer Ausführungsform kann ein Flussdiagramm den Zustand einer endlichen Zustandsmaschine (FSM) veranschaulichen, die in Hardware und/oder Software implementiert sein kann. Obwohl in einer bestimmten Sequenz oder Reihenfolge gezeigt, kann, sofern nicht anders spezifiziert, die Reihenfolge der Aktionen modifiziert werden. Dementsprechend sollten die veranschaulichten Ausführungsformen nur als ein Beispiel verstanden werden und der Prozess kann in einer anderen Reihenfolge durchgeführt werden und manche Handlungen können parallel durchgeführt werden. Zusätzlich können eine oder mehrere Aktionen in verschiedenen Ausführungsformen weggelassen werden; dementsprechend sind nicht alle Aktionen in jeder Ausführungsform erforderlich. Andere Verfahrensabläufe sind möglich.
  • Verschiedene hierin beschriebene Komponenten können ein Mittel zum Durchführen der beschriebenen Operationen oder Funktionen sein. Jede hier beschriebene Komponente beinhaltet Software, Hardware oder eine Kombination von diesen. Die Komponenten können als Softwaremodule, Hardwaremodule, Spezialhardware (z. B., anwendungsspezifische Hardware, anwendungsspezifische integrierte Schaltungen (ASICs), digitale Signalprozessoren (DSPs) usw.), eingebettete Steuerungen, festverdrahtete Schaltungen und so weiter implementiert werden.
  • Beispiel 1 beinhaltet eine Einrichtung, die Folgendes umfasst: eine erste Vorrichtung, die einen Sender und einen Empfänger umfasst, die mit einer Spur eines Kommunikations-Links assoziiert sind, wobei: die erste Vorrichtung eine kommunikationsidentifizierende Fähigkeit empfangen soll, die Linktrainingszeit über eine erste Linktrainingszeit hinaus zu erweitern; das erste Gerät eine Kommunikation übertragen soll, die eine Fähigkeit zum Erweitern der Linktrainingszeit beinhaltet; und das erste Gerät einen Betrag zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit bestimmen soll.
  • Beispiel 2 beinhaltet ein beliebiges Beispiel, wobei die erste Linktrainingszeit eine Standardlinktrainingszeit umfasst.
  • Beispiel 3 beinhaltet ein beliebiges Beispiel, wobei der bestimmte Betrag ein kleinerer der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit ist.
  • Beispiel 4 beinhaltet ein beliebiges Beispiel, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
  • Beispiel 5 beinhaltet ein beliebiges Beispiel, wobei die Kommunikation eine IEEE (Institute of Electrical and Electronics Engineers) 802.3-kompatible nächste Seite umfasst.
  • Beispiel 6 beinhaltet ein beliebiges Beispiel, wobei zum Bestimmen einer Menge zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit die erste Vorrichtung an einer Austauschphase teilnehmen soll, um nicht-IEEE-kompatible Fähigkeiten anzukündigen.
  • Beispiel 7 beinhaltet ein beliebiges Beispiel, wobei die erste Vorrichtung ausgelegt ist zum: Ankündigen einer oder mehrerer Fähigkeiten und Auswählen eines Betriebsmodus für die Fahrspur, wobei die eine oder die mehreren Fähigkeiten eine Linkgeschwindigkeit und/oder Vorwärtsfehlerkorrektur (FEC: Forward Error Correction) -Fähigkeiten und/oder Pausenfähigkeiten umfassen.
  • Beispiel 8 beinhaltet ein beliebiges Beispiel, wobei die erste Vorrichtung ein Verbindungspartner mit einer zweiten Vorrichtung ist und die erste und die zweite Vorrichtung an einer Verbindungstrainingsphase für die Verbindungstrainingszeit plus dem bestimmten Betrag teilnehmen sollen, um die Verbindungstrainingszeit zu erweitern.
  • Beispiel 9 beinhaltet ein beliebiges Beispiel, wobei die Linktrainingsphase Folgendes umfasst: Anfordern von Änderungen in den Sendeentzerrungseinstellungen der zweiten Vorrichtung, Überwachen einer Auswirkung auf die Linkqualität an einem Empfänger der ersten Vorrichtung, um Empfangssignalcharakteristiken zu bestimmen, und selektives Anfordern zusätzlicher Änderungen in den Sendeentzerrungseinstellungen der zweiten Vorrichtung basierend auf den Empfangssignalcharakteristiken.
  • Beispiel 10 beinhaltet ein beliebiges Beispiel, wobei die empfangenen Signalcharakteristiken eines oder mehrere von Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR) oder Verbindungsfehlern umfassen, wobei Verbindungsfehler eines oder mehrere von Folgendem umfassen: unkorrigierbare und korrigierbare Vorwärtsfehlerkorrektur (FEC) -Fehler, Pseudozufallsbitsequenz (PRBS) -Fehler oder Physical Coding Sublayer (PCS) - Fehler.
  • Beispiel 11 beinhaltet ein beliebiges Beispiel, wobei die erste Vorrichtung in einem Server und/oder einem Rack und/oder einem Datenzentrum bereitgestellt ist.
  • Beispiel 12 beinhaltet ein beliebiges Beispiel und beinhaltet ein Verfahren zum Bestimmen eines Umfangs zum Erweitern eines Linktrainings, wobei das Verfahren Folgendes umfasst: Empfangen, durch einen Empfänger in einer ersten Vorrichtung, von Signalen von einem Sender in einer zweiten Vorrichtung über eine Spur, wobei die Signale Fähigkeit, die Linktrainingszeit zu erweitern, und eine Menge zum Erweitern der Linktrainingszeit angeben; Bestimmen, an der ersten Vorrichtung, einer Linktrainingszeit basierend auf einer Standardlinktrainingszeit und einer Menge zum Erweitern der Linktrainingszeit; und Durchführen eines Linktrainings basierend auf der bestimmten Linktrainingszeit.
  • Beispiel 13 beinhaltet ein beliebiges Beispiel, wobei der bestimmte Betrag der höchste gemeinsame Nenner der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit ist.
  • Beispiel 14 beinhaltet ein beliebiges Beispiel, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
  • Beispiel 15 beinhaltet ein beliebiges Beispiel, wobei die Signale, die Fähigkeit angeben, die Linktrainingszeit zu erweitern, und die Menge, die Linktrainingszeit zu erweitern, eine IEEE-802.3-kompatible Nächste Seite umfassen.
  • Beispiel 16 beinhaltet ein beliebiges Beispiel und beinhaltet Folgendes: Ankündigen, durch das erste Gerät, einer oder mehrerer Fähigkeiten; Empfangen, von einem Verbindungspartner, einer oder mehrerer Fähigkeiten; und Auswählen eines Betriebsmodus für die Spur, wobei die eine oder die mehreren Fähigkeiten eine Linkgeschwindigkeit und/oder Vorwärtsfehlerkorrektur (FEC) -Fähigkeiten und/oder Pausenfähigkeiten umfassen.
  • Beispiel 17 beinhaltet ein beliebiges Beispiel, wobei die erste Vorrichtung ein Verbindungspartner mit einer zweiten Vorrichtung ist und Folgendes umfasst: Einbeziehen in eine Verbindungstrainingsphase mit der zweiten Vorrichtung für eine Verbindungstrainingszeit plus dem bestimmten Betrag, um die Verbindungstrainingszeit zu erweitern.
  • Beispiel 18 beinhaltet ein beliebiges Beispiel, wobei die Linktrainingsphase Folgendes umfasst: Anfordern von Änderungen in den Sendeentzerrereinstellungen der zweiten Vorrichtung, Überwachen einer Auswirkung auf die Verbindungsqualität an einem Empfänger der ersten Vorrichtung, um Empfangssignalcharakteristiken zu bestimmen, und selektives Anfordern zusätzlicher Änderungen in den Sendeentzerrungseinstellungen der zweiten Vorrichtung basierend auf den Empfangssignalcharakteristiken.
  • Beispiel 19 beinhaltet ein beliebiges Beispiel, wobei die empfangenen Signalcharakteristiken eines oder mehrere von Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR) oder Verbindungsfehlern umfassen, wobei Verbindungsfehler eines oder mehrere von Folgendem umfassen: unkorrigierbare und korrigierbare Vorwärtsfehlerkorrektur (FEC) -Fehler, Pseudozufallsbitsequenz (PRBS) -Fehler oder Physical Coding Sublayer (PCS) - Fehler.
  • Beispiel 20 beinhaltet ein beliebiges Beispiel und beinhaltet ein computerlesbares Medium, das darauf gespeicherte Anweisungen umfasst, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Beteiligen an einem Linktraining, wobei: der eine oder die mehreren Prozessoren eine Kommunikation empfangen sollen, die Fähigkeit identifiziert, die Linktrainingszeit zu verlängern; der eine oder die mehreren Prozessoren eine Übertragung einer Kommunikation bewirken sollen, die eine Fähigkeit zum Erweitern der Linktrainingszeit beinhaltet; und der eine oder die mehreren Prozessoren eine Menge zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit bestimmen sollen.
  • Beispiel 21 beinhaltet ein beliebiges Beispiel, wobei der bestimmte Betrag ein kleinerer der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit ist.
  • Beispiel 22 beinhaltet ein beliebiges Beispiel, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
  • 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 17/022610 [0001]
    • US 62/941949 [0001]
    • US 62/941985 [0001]

Claims (22)

  1. Vorrichtung, die Folgendes umfasst: eine erste Vorrichtung, die einen Sender und einen Empfänger umfasst, die mit einer Spur eines Kommunikations-Links assoziiert sind, wobei: die erste Vorrichtung ausgelegt ist zum Empfangen einer kommunikationsidentifizierenden Fähigkeit zum Erweitern der Linktrainingszeit über eine erste Linktrainingszeit hinaus; die erste Vorrichtung ausgelegt ist zum Übertragen einer Kommunikation einschließlich einer Fähigkeit zum Erweitern der Linktrainingszeit; und die erste Vorrichtung zum Bestimmen eines Betrags zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit dient.
  2. Einrichtung nach Anspruch 1, wobei die erste Linktrainingszeit eine Standardlinktrainingszeit umfasst.
  3. Vorrichtung nach Anspruch 1, wobei der bestimmte Betrag ein kleinerer der empfangenen identifizierten Fähigkeit und der übertragenen angezeigten Fähigkeit ist.
  4. Einrichtung nach Anspruch 1, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
  5. Einrichtung nach Anspruch 1, wobei die Kommunikation eine IEEE (Institute of Electrical and Electronics Engineers) 802.3-kompatible Nächste Seite umfasst.
  6. Einrichtung nach Anspruch 1, wobei zum Bestimmen eines Betrags zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit das erste Gerät an einer Austauschphase teilnehmen soll, um nicht-IEEE-kompatible Fähigkeiten anzukündigen.
  7. Einrichtung nach Anspruch 1, wobei die erste Einrichtung ausgelegt ist zum: Ankündigen einer oder mehrerer Fähigkeiten und Auswählen eines Betriebsmodus für die Spur, wobei die eine oder die mehreren Fähigkeiten eine Linkgeschwindigkeit und/oder Vorwärtsfehlerkorrektur (FEC) -Fähigkeiten und/oder Pausenfähigkeiten umfassen.
  8. Einrichtung nach Anspruch 1, wobei das erste Gerät ein Verbindungspartner mit einem zweiten Gerät ist und das erste und das zweite Gerät an einer Verbindungstrainingsphase für die Verbindungstrainingszeit plus dem bestimmten Betrag teilnehmen sollen, um die Verbindungstrainingszeit zu erweitern.
  9. Einrichtung nach Anspruch 8, wobei die Linktrainingsphase Folgendes umfasst: Anfordern von Änderungen in den Sendeentzerrungseinstellungen der zweiten Vorrichtung, Überwachen einer Auswirkung auf die Verbindungsqualität an einem Empfänger der ersten Vorrichtung, um empfangene Signalcharakteristiken zu bestimmen, und selektives Anfordern zusätzlicher Änderungen in den Sendeentzerrungseinstellungen der zweiten Vorrichtung basierend auf den empfangenen Signalcharakteristiken.
  10. Einrichtung nach Anspruch 9, wobei die empfangenen Signaleigenschaften eines oder mehrere von Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR) oder Verbindungsfehlern umfassen, wobei Verbindungsfehler eines oder mehrere von Folgendem umfassen: unkorrigierbare und korrigierbare Vorwärtsfehlerkorrektur (FEC) -Fehler, Pseudozufallsbitsequenz (PRBS) -Fehler oder Physical Coding Sublayer (PCS) -Fehler.
  11. Einrichtung nach Anspruch 1, die eines oder mehrere von Folgendem umfasst: einen Server, ein Rack oder ein Datenzentrum, und wobei die erste Vorrichtung in einem oder mehreren von Folgendem bereitgestellt ist: dem Server, dem Rack oder dem Datenzentrum.
  12. Verfahren zum Bestimmen eines Ausmaßes zum Erweitern eines Linktrainings, wobei das Verfahren Folgendes umfasst: Empfangen, durch einen Empfänger in einer ersten Vorrichtung, von Signalen über eine Spur von einem Sender in einer zweiten Vorrichtung, wobei die Signale die Fähigkeit angeben, die Linktrainingszeit zu verlängern, und Betrag zum Erweitern der Linktrainingszeit; Bestimmen, an der ersten Vorrichtung, einer Linktrainingszeit basierend auf einer Standardlinktrainingszeit und einem Betrag zum Erweitern der Linktrainingszeit; und Durchführen eines Linktrainings basierend auf der bestimmten Linktrainingszeit.
  13. Verfahren nach Anspruch 12, wobei der bestimmte Betrag der höchste gemeinsame Nenner der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit ist.
  14. Verfahren nach Anspruch 12, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
  15. Verfahren nach Anspruch 12, wobei die Signale, die Fähigkeit angeben, die Linktrainingszeit zu erweitern, und Menge zum Erweitern der Linktrainingszeit, eine IEEE-802.3-kompatible Next Page umfassen.
  16. Verfahren nach Anspruch 12, das Folgendes umfasst: Ankündigen, durch die erste Vorrichtung, einer oder mehrerer Fähigkeiten; Empfangen, von einem Verbindungspartner, einer oder mehrerer Fähigkeiten; und Auswählen eines Betriebsmodus für die Fahrspur, wobei die eine oder die mehreren Fähigkeiten eine Linkgeschwindigkeit und/oder Vorwärtsfehlerkorrektur (FEC) -Fähigkeiten und/oder Pausenfähigkeiten umfassen.
  17. Verfahren nach Anspruch 12, wobei die erste Vorrichtung ein Verbindungspartner mit einer zweiten Vorrichtung ist und Folgendes umfasst: Teilnehmen an einer Linktrainingsphase mit der zweiten Vorrichtung für eine Linktrainingszeit plus dem bestimmten Betrag, um die Linktrainingszeit zu erweitern.
  18. Verfahren nach Anspruch 17, wobei die Linktrainingsphase Folgendes umfasst: Anfordern von Änderungen in den Sendeentzerrereinstellungen der zweiten Vorrichtung, Überwachen einer Auswirkung auf die Verbindungsqualität an einem Empfänger der ersten Vorrichtung, um empfangene Signalcharakteristiken zu bestimmen, und selektives Anfordern zusätzlicher Änderungen in den Sendeentzerrereinstellungen der zweiten Vorrichtung basierend auf den Empfangssignalcharakteristiken.
  19. Verfahren nach Anspruch 18, wobei die empfangenen Signalcharakteristiken eines oder mehrere von Bitfehlerrate (BER), Augengröße, Signal-Rausch-Verhältnis (SNR) oder Verbindungsfehlern umfassen, wobei Verbindungsfehler eines oder mehrere von Folgendem umfassen: unkorrigierbare und korrigierbare Vorwärtsfehlerkorrektur (FEC) -Fehler, Pseudozufallsbitsequenz (PRBS) -Fehler oder Physical Coding Sublayer (PCS) -Fehler.
  20. Computerlesbares Medium, das darauf gespeicherte Anweisungen umfasst, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Beteiligen an einem Linktraining, wobei: der eine oder die mehreren Prozessoren eine kommunikationsidentifizierende Fähigkeit zum Erweitern der Linktrainingszeit empfangen sollen; der eine oder die mehreren Prozessoren eine Übertragung einer Kommunikation einschließlich einer Fähigkeit zum Erweitern der Linktrainingszeit bewirken sollen; und der eine oder die mehreren Prozessoren eine Menge zum Erweitern der Linktrainingszeit basierend auf der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit bestimmen sollen .
  21. Computerlesbares Medium nach Anspruch 20, wobei der bestimmte Betrag ein kleinerer der empfangenen identifizierten Fähigkeit und der übertragenen angegebenen Fähigkeit ist.
  22. Computerlesbares Medium nach Anspruch 20, wobei, falls die empfangene Kommunikation keine Fähigkeit angibt, die Linktrainingszeit zu erweitern, die Linktrainingszeit eine Standardlinktrainingszeit ist.
DE112020005872.7T 2019-11-29 2020-09-25 Erweiterte linktrainingszeit, verhandelt beim linkstart Pending DE112020005872T5 (de)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201962941949P 2019-11-29 2019-11-29
US201962941985P 2019-11-29 2019-11-29
US62/941,985 2019-11-29
US62/941,949 2019-11-29
US17/022,610 2020-09-16
US17/022,610 US11973624B2 (en) 2019-11-29 2020-09-16 Extended link-training time negotiated on link start-up
PCT/US2020/052892 WO2021108026A1 (en) 2019-11-29 2020-09-25 Extended link-training time negotiated on link start-up

Publications (1)

Publication Number Publication Date
DE112020005872T5 true DE112020005872T5 (de) 2022-09-15

Family

ID=74043127

Family Applications (2)

Application Number Title Priority Date Filing Date
DE112020005872.7T Pending DE112020005872T5 (de) 2019-11-29 2020-09-25 Erweiterte linktrainingszeit, verhandelt beim linkstart
DE102020128258.3A Pending DE102020128258A1 (de) 2019-11-29 2020-10-28 Kommunikationsverbindngs-umtrainieren

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE102020128258.3A Pending DE102020128258A1 (de) 2019-11-29 2020-10-28 Kommunikationsverbindngs-umtrainieren

Country Status (4)

Country Link
US (2) US11973624B2 (de)
CN (2) CN114556814A (de)
DE (2) DE112020005872T5 (de)
WO (1) WO2021108026A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11973624B2 (en) 2019-11-29 2024-04-30 Intel Corporation Extended link-training time negotiated on link start-up
US11438211B1 (en) * 2020-07-23 2022-09-06 Marvell Asia Pte Ltd. Adaptive diagnostics for communication systems
US11831585B2 (en) * 2020-10-23 2023-11-28 Aviva Technology Holding Method and apparatus for asymmetrical communication
CN115483999A (zh) * 2021-05-31 2022-12-16 华为技术有限公司 数据接口均衡调整的方法、装置、设备和存储介质
US11665029B2 (en) * 2021-07-01 2023-05-30 Nvidia Corporation Feed forward filter equalizer adaptation using a constrained filter tap coefficient value
EP4354307A1 (de) * 2021-07-08 2024-04-17 Huawei Technologies Co., Ltd. System und verfahren zur verbindungsaushandlung sowie vorrichtung
US11636061B2 (en) * 2021-09-01 2023-04-25 Xilinx, Inc. On-demand packetization for a chip-to-chip interface
CN114070720B (zh) * 2021-10-20 2024-03-29 浪潮金融信息技术有限公司 一种基于异步长连接技术的数据前置系统、方法及介质
US20230354445A1 (en) * 2022-05-02 2023-11-02 Marvell Asia Pte Ltd Interoperability of communication devices
US20240080123A1 (en) * 2022-09-01 2024-03-07 Marvell Asia Pte Ltd Out-of-band based independent link training of in-band links between host devices and optical modules
EP4369667A1 (de) * 2022-11-01 2024-05-15 Samsung Electronics Co., Ltd. Elektronische vorrichtung und betriebsverfahren dafür

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050201454A1 (en) 2004-03-12 2005-09-15 Intel Corporation System and method for automatically calibrating two-tap and multi-tap equalization for a communications link
US20060291500A1 (en) * 2005-06-03 2006-12-28 Adc Dsl Systems, Inc. Non-intrusive transmit adjustment control
US20070208894A1 (en) 2006-03-02 2007-09-06 Curry David S Modification of a layered protocol communication apparatus
US20090097401A1 (en) * 2007-10-12 2009-04-16 Wael William Diab Method and system for configurable data rate thresholds for energy efficient ethernet
US8296469B2 (en) * 2008-12-31 2012-10-23 Intel Corporation Scalable method and apparatus for link with reconfigurable ports
WO2012106934A1 (zh) 2011-07-27 2012-08-16 华为技术有限公司 Pci快速通道设备、链路能量管理方法及系统
US8949497B2 (en) 2011-08-24 2015-02-03 Nvidia Corporation Method and apparatus for interleaving bursts of high-speed serial interconnect link training with bus data transactions
US9252968B2 (en) * 2012-06-22 2016-02-02 Intel Corporation Link training and training frame for 100GBPS ethernet
US8972640B2 (en) * 2012-06-27 2015-03-03 Intel Corporation Controlling a physical link of a first protocol using an extended capability structure of a second protocol
BR112014016079A8 (pt) * 2012-07-10 2017-07-04 Intel Corp sistema de rede configurado para determinar correção antecipada de erros durante um modo de dados
CN104756474B (zh) 2012-07-13 2019-07-30 适应性频谱和信号校正股份有限公司 用于通信链路性能估计的方法和系统
US9411750B2 (en) 2012-07-30 2016-08-09 International Business Machines Corporation Efficient calibration of a low power parallel data communications channel
US8902964B2 (en) * 2012-09-29 2014-12-02 Intel Corporation Equalization effort-balancing of transmit finite impulse response and receive linear equalizer or receive decision feedback equalizer structures in high-speed serial interconnects
US9513662B2 (en) 2013-01-04 2016-12-06 Intel Corporation System and method for power management
US8826103B2 (en) * 2013-01-18 2014-09-02 Intel Corporation Time protocol latency correction based on forward error correction status
US10148508B1 (en) 2013-08-14 2018-12-04 Aquantia Corp. Method and system for ethernet transceiver rate control
US9575922B2 (en) 2013-09-27 2017-02-21 Intel Corporation Apparatus, system, and method for improving equalization with a software equalization algorithm
US20150186201A1 (en) 2014-01-02 2015-07-02 Intel Corporation Robust link training protocol
JP6427979B2 (ja) 2014-06-19 2018-11-28 富士通株式会社 原因特定方法、原因特定プログラム、情報処理システム
US9608865B2 (en) 2014-07-09 2017-03-28 Cisco Technology, Inc. Method, system and logic for configuring a local link based on a remote link partner
US20170346596A1 (en) * 2016-05-27 2017-11-30 Intel Corporation Method, apparatus, and system for signal equalization
WO2018000387A1 (zh) 2016-06-30 2018-01-04 华为技术有限公司 一种通道训练的方法、装置及系统
US10880137B2 (en) 2017-05-12 2020-12-29 Intel Corporation Bypassing equalization at lower data rates
US11356306B2 (en) 2018-03-30 2022-06-07 Intel Corporation Technologies for cooperative link equalization without disruption to link traffic
US10474607B2 (en) * 2018-05-01 2019-11-12 Intel Corporation Adapt link training based on source capability information
CN109376103B (zh) 2018-06-19 2021-10-19 华为技术有限公司 快速均衡的方法、芯片和通信系统
US11003612B2 (en) 2019-04-26 2021-05-11 Dell Products L.P. Processor/endpoint connection configuration system
US11397701B2 (en) 2019-04-30 2022-07-26 Intel Corporation Retimer mechanisms for in-band link management
US11228340B1 (en) 2019-08-28 2022-01-18 Marvell Asia Pte, Ltd. Ethernet link transmit power method based on network provided alien crosstalk feedback
US10868580B1 (en) 2019-08-28 2020-12-15 Marvell Asia Pte., Ltd. Ethernet link transmit power method based on alien crosstalk feedback
US11729044B2 (en) * 2019-10-29 2023-08-15 Intel Corporation Service resiliency using a recovery controller
US11836101B2 (en) 2019-11-27 2023-12-05 Intel Corporation Partial link width states for bidirectional multilane links
US11973624B2 (en) 2019-11-29 2024-04-30 Intel Corporation Extended link-training time negotiated on link start-up
US11991025B2 (en) 2019-12-04 2024-05-21 Intel Corporation Transceiver parameter determination
US11187077B2 (en) 2020-01-31 2021-11-30 Halliburton Energy Services, Inc. Adaptive wireline telemetry in a downhole environment
US11818237B2 (en) 2020-04-27 2023-11-14 Intel Corporation Device-to-device link training
KR20220059981A (ko) 2020-11-02 2022-05-11 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
US20220302943A1 (en) 2021-03-16 2022-09-22 Intel Corporation Low power high sensitivity sense amplifier latch with complimentary outputs in reset mode
TWI769012B (zh) 2021-07-12 2022-06-21 瑞昱半導體股份有限公司 多點網路系統與網路裝置
US20220342841A1 (en) 2021-12-22 2022-10-27 Swadesh Choudhary Die-to-die adapter

Also Published As

Publication number Publication date
US11863357B2 (en) 2024-01-02
US11973624B2 (en) 2024-04-30
DE102020128258A1 (de) 2021-06-02
CN114556814A (zh) 2022-05-27
CN112887234A (zh) 2021-06-01
US20200412586A1 (en) 2020-12-31
WO2021108026A1 (en) 2021-06-03
US20210006330A1 (en) 2021-01-07

Similar Documents

Publication Publication Date Title
DE112020005872T5 (de) Erweiterte linktrainingszeit, verhandelt beim linkstart
US20200280428A1 (en) Configuration scheme for link establishment
US11818237B2 (en) Device-to-device link training
DE112013007743B4 (de) Steuern einer physischen Verbindung von einem ersten Protokoll unter Verwendung einer erweiterten Funktionsstruktur eines zweiten Protokolls
US20190342199A1 (en) Managing congestion in a network
DE102019129690A1 (de) Datenratenadaptive linkgeschwindigkeit
DE112006000126B4 (de) Verfahren und Media Access Controller für Mesh-Netzwerke mit adaptiver Quality-of-Service Verwaltung
US11991025B2 (en) Transceiver parameter determination
DE112017006687T5 (de) Hochgeschwindigkeitsverbindungen mit kanalerweiterung
DE112012006336T5 (de) Netzwerksystem, konfiguriert um die Vorwärtsfehlerkorrektur während einer verlinkten Schulungssequenzzu lösen
DE112017006523T5 (de) Retimer mit kurzer latenzzeit
DE202013104344U1 (de) Vorrichtung zur schnellen PMA-Ausrichtung in 100GBASE-KP4
DE202013105453U1 (de) Trainingsrahmen in PMA-Größe für 100GBASE-KP4
DE102021122231A1 (de) Dynamische netzwerksteuerungs-leistungsverwaltung
US11424901B2 (en) Method and apparatus for synchronous signaling between link partners in a high-speed interconnect
DE112013004449T5 (de) Vorrichtung und Verfahren zum Optimieren von halbaktiven Auslastungen
DE202013105546U1 (de) EEE Aktualisierungs- und Wecksignalisierung für 100GBASE-KP4
DE102022104187A1 (de) Verfahren und vorrichtung zum sparen von leistung in usb-repeatern/retimern
DE102021117755A1 (de) Schutz vor netzwerk-initiierten angriffen
DE112017003736T5 (de) Ethernet-autonegotiation mit paralleler detektion für 10g-dac oder andere nicht automatisch ausgehandelte modi
DE112022002377T5 (de) Paketformatanpassungstechnologien
DE102022121268A1 (de) Überlastungssteuerung auf basis von netzwerktelemetrie
DE102022103981A1 (de) Flusssteuerungstechnologien
DE102020102981A1 (de) Auswahl von Eingängen für Nachschlagoperationen
DE112019001730T5 (de) Technologien für kooperative verbindungsentzerrung ohne unterbrechung für den verbindungsverkehr