Ethernet Compliance Testing bei Toradex

Donnerstag, 13. Juni 2019

Ethernet

Einführung

Toradex entwickelt zuverlässige und robuste Embedded Systems, welche auch in rauen Umgebungen unter Dauerbelastung korrekt funktionieren. Die Produkte von Toradex haben sich während Jahren etabliert und sich in unzähligen Produkten bewährt. Toradex verfolgt aktiv die Technologieentwicklung in den unterschiedlichsten Branchen.

Im derzeit rasant wachsenden IoT Bereich ist Ethernet eines der wichtigsten Interfaces. In diesem Bericht werden einige Ethernet Standards erklärt und die Testabläufe von Toradex zur Erfüllung dieser Standards erläutert. Dies beinhaltet unsere Testkonfiguration, die Testprozesse und die Testresultate.

In diesem Beispiel wurde ein Colibri iMX6ULL SoM und das Iris Carrier Board verwendet. Sie können diese Testabläufe aber auch als Vorlage für die Verifikation eines individualisierten Carrier Boards verwenden.

Apalis iMX8QM based IoT with Ixora Carrier Board
Weshalb wir Standards verwenden und Compliance Testing durchführen

Ethernet Designs halten sich an den IEEE 802.3 Standard, welcher den Physical und den Data Link Layer des bekannten sieben-stufigen OSI-Modells definiert. Ausserdem spezifiziert der Standard die Charakteristik der Signalformen. Hält man sich an diesen Standard, ermöglicht dies die Kompatibilität und Interoperabilität mit anderen Geräten in beliebigen Umgebungen weltweit. Anderenfalls ist es sehr wahrscheinlich, dass Probleme oder Datenverluste auftreten. Compliance Testing stellt sicher, dass die Implementation den Standard erfüllt.

Zusätzlich zu der Charakteristik der Signalformen, spezifiziert im IEEE 802.3 Standard, stellt die Universität von New Hampshire InterOperability Laboratory (UNH-IOL) weitere standardisierte Testabläufe zur Verifikation der Konformität der Signale zur Verfügung.

Diese Dokumente finden Sie hier:
Grundlagen zum Ethernet Physical Layer

Der Ethernet Standard umfasst mehrere tausend Seiten. Aus diesem Grund erläutern wir hier nur die wichtigsten Konzepte und einige Schlüsselwörter.

OSI Reference Model from IEEE Standard for Ethernet
Abbildung 1: OSI Referenzmodell für den IEEE Standard für Ethernet

Starten wir mit dem physischen Leiter. Die Signale kommen typischerweise mit einem paarweise verdrillten Kupferkabel bei der Ethernetbuchse auf unserem Carrier Board an und setzen ihren Weg in impedanzangepassten differentiellen Leiterbahnen auf dem PCB fort bis zum Ethernet PHY IC. Dieses Gerät konvertiert die analogen Signale vom Leiter zu den digitalen Signalen für den Prozessor und umgekehrt.

Die elektrischen Signale treffen zuerst auf das Medium Dependent Interface (MDI) des PHYs, ein Teil des Physical Layers. Unterschiedliche phyische Medien haben unterschiedliche Charakteristiken. Abhängig vom spezifischen Typ des Mediums werden die Signale konvertiert und an den nächsten Layer des OSI-Modells weitergeleitet: der Data Link Layer. Auf unseren Colibri-Modulen verwenden wir 10Base-T und 100Base-TX (Fast Ethernet) und auf unseren Apalis-Modulen verwenden wir 1000Base-T (Gigabit). Das standardisierte Interface zwischen den beiden OSI-Layern wird Media Independent Interface (MII) genannt und ist unabhängig vom Pyhsical Layer.

Tabelle 1: Übersicht über das Media Independent Interface
MII Media Independent Interface
RMII Reduced Media Independent Interface
GMII Gigabit Media Independent Interface
RGMII Reduced Gigabit Media Independent Interface
SGMII Serial Gigabit Media Independent Interface
QSGMII Quad Serial Gigabit Media Independent Interface
XGMII 10 Gigabit Media Independent Interface

Mittlerweile ist das abwärtskompatible Reduced Gigabit Media Independent Interface (RGMII) das Mass der Dinge und das zukünftige Interface für 10 Gigabit ist bereits im Gespräch: XGMII. Der Zusatz 'Reduced' bedeutet, dass weniger Signale notwendig sind für den gleichen Standard. Die xMII Interfaces sind parallele Datenbusse und es existiert ein zusätzlicher serieller Bus für Steuerungsaufgaben: Management Data Input/Output (MDIO).  Die xMII Interfaces enden beim Media Access Control (MAC) Layer. Hier wird die allseits bekannte MAC Adresse als eindeutige Kennzeichnung verwendet. Der MAC Layer kann mit SoCs (System on Chip) integriert werden, zum Beispiel mit den NXP® Prozessoren. Alternativ kann dieser Layer aber auch direkt im gleichen IC wie der PHY realisiert werden, dies ist bekannt als Ethernet Controller. Das Ethernet Controller IC ist dann mit dem SoC via USB oder PCIe verbunden. Bitte beachten Sie, dass wir höhere OSI Layer und Protokolle wie ARP, NDP, IP, TCP, UDP, organisiert in Frames und Packages, nicht betrachten, da die elektrischen Charakteristiken dieselben sind!

Gehen wir für den Moment zurück zum PHY. Hier gibt es 2 Hauptcharakteristeken, auf die wir näher eingehen: Der Speed und der Duplex Mode. Unsere Module unterstützen Geschwindigkeiten bis zu 1 Gbit (Apalis Modules) oder bis zu 100Mbit (Colibri Modules), beide Half- und Full-Duplex. Im Full Duplex Mode kommunizieren die PHYs an den beiden Enden des Links simultan miteinander (gleichzeitiges Senden und Empfangen von Daten). Im Half Duplex Mode kann der PHY nicht gleichztig Senden und Empfangen und es deshalb nötig, Carrier Sense Multiple Access with Collision Detection (CSMA/CD) zu verwenden um Kollisionen zu vermeiden und den Datenstrom zu kontrollieren.

Wie bereits beschrieben, unterstützen unsere Apalismodule Gigabit Ethernet. Aber woher wissen die Kommunikationspartner, mit welcher Geschwindigkeit die Daten gesendet werden können? Es existiert ein automatischer Verhandlungsmechanismus, bei dem die Linkpartner den besten Link mit 16ms-Linkpulsen ermitteln. Bitte seien Sie vorsichtig mit dem Ändern der Einstellungen beim automatischen Verhandlungsmechanismus, da ein bekanntes Problem bei fix definierten Einstellungen auftreten kann (Dublex Mismatch). 

Der Physical Layer wird mechanisch unterschiedlich implementiert. Die Standards 10Base-T und 100Base-TX verwenden zwei verdrillte Leiterpaare, der Standard 1000Base-TX verwendet vier. Die Geschwindigkeit des 100Base-TX ist höher als beim 10Base-T. Der Grund dafür ist die viel höhere Frequenz von 62.5 MHz gegenüber von 10 MHz und ein dichteres Schema bei der Signalmodulation (PAM-3). Der Standard 1000Base-TX verwendet die gleiche Frequenz wie 100Base-TX, aber die Übertragung findet mit vier verdrillten Leiterpaaren und einem höheren Modulationslevel statt (PAM-5). Das zusätzliche Feature EEE (Energy Efficient Ethernet) wurde entwickelt, um Energie zu sparen.

Die untenstehende Abbildung fasst die Möglichkeiten von Ethernet mit dem Ansatz des Toradex SoMs zusammen:
Possible Ethernet Interface Options
Automotive Ethernet

Bevor wir mit dem Compliance Testing beginnen, möchte ich kurz auf das 100Base-T1 (Automotive Ethernet) eingehen, da wir dazu sehr viele Fragen erhalten. Die Kunden möchten wissen, ob es möglich ist, das Automotive Ethernet mit einem schnelleren Ethernet PHY zu verbinden. Das 100Base-T1 verwendet einen unterschiedlichen physischen Layer um die erhöhten Anforderungen im raueren Automobilbereich zu erfüllen. Die direkte Verbindung ist nicht möglich, aber das MII ist dasselbe. Die einfachste Lösung ist deshalb, den 100Base-T1 PHY direkt mit dem Multimedia Independent Interface des SoCs zu verbinden. Dazu muss allerdings ein Modul mit einem xMII auf dem Module Edge Connector gewählt werden (beachten Sie dazu die folgende Liste). Bitte beachten Sie, dass dies bei Toradex nicht ein Standard Interface ist und die Pinzuordnung bei jedem Modul anders ausfallen kann.  Zudem müssen sie ein eigenes Carrier Board mit dem 100Base-T1 PHY entwickeln.

Ethernet Compliance Testing für die System von Toradex
10Base-T Test: DOV Internal MAU Normal
Abbildung 2. 10Base-T Test: DOV Internal MAU Normal

Nach diesem kurzen Überblick möchte ich mit dem Compliance Testing beginnen. Hier testen wir die elektrischen Signale bezüglich Zeitparameter und Spannung. Es ist zu beachten, dass die elektrischen Signale für 10/100/1000 Mbps sehr unterschiedlich sind und verschiedene Anfroderungen erfüllen müssen.

Die Tests evaluieren die Spannungsamplituden, Jiter-Werte, Anstiegs- und Abfallzeiten und andere Signalparameter. Für jeden Test muss ein definiertes Signal vom DUT (Device under Test) generiert werden, zum Beispiel die Ausgabe eines pseudozufälligen Signals. Die Definition einer Maske ist der einfachste Weg um die Signalanforderungeren zu testen. Die Signale dürfen für die Erfüllung der Spezifikationen nicht signifikant von der Maske abweichen. In Abbildung 2 ist die Maske für die 10Base-T Tests gezeigt. Dabei müssen zum Beispiel die Peak Differential Output Voltage zwischen 2.2 V und 2.8 V liegen. Die Differential Output Voltage Harmonics muss grösser als 27 dB und alle Jitter-Werte müssen kleiner als 22 ns sein. Sehr interessant ist das zweifach Modell für die zweifach verdrillten Leiter des 10Base-T Standards, welches für bestimmte Compliance Tests verwendet werden muss. Mit dem Ersatzschaltbild basierend auf definierten Elementen (lumped circuit) ist es möglich, verschiedene Übertragungselemente rein mit passiven Komponenten zu modellieren. Abhängig vom PYH wird ein Linkpartner benötigt für die 10Base-T Compliance Tests. Sie können den Test Report of Colibri iMX6ULL mit allen notwendigen Tests als Beispiel herunterladen.

Measured differential random 10Base-T signal without load
Abbildung 3: Gemessene differentielles Random 10Base-T Signal ohne Last

Die Interface-Charakteristiken für den Standard 100Base-TX sind in Tabelle 2 definiert und basieren auf den MLT-3 Spannungssignalen (drei Level). Die Daten werden mit dem Algorithmus 4B5B kodiert, was ein Clock Recovery aus dem Datenstrom ermöglicht, da die Level Transition erzwungen wird. Es ist für alle unsere Tests ausreichend, ein pseudozufälliges Testmuster (PRBS7) zu verwenden. Allerdings muss beachtet werden, dass bestimmte Testwerte nur bei definierten Mustern gemessen werden können.

Tabelle 2: Interface-Charakteristik 100Base-TX
Characteristics Min Max Unit
UTP DOV Base to Upper/Lower 950 1050 mV
Signal Amplitude Symmetry 98 102 %
Rise/Fall Time 3 5 ns
Rise/Fall Time Symmetry 0 500 ps
Duty Cycle Distortion -250 250 ps
Transmit Jitter 0 1.4 ns
Overshoot 0 5 %


Measured differential random signal 100Base-TX
Abbildung 4: Gemessenes differentielles Random Signal 100Base-TX

Die Testbedingungen werden für den Standard 1000Base-T analog festgelegt und werden deshalb hier nicht explizit aufgeführt. Für diese Tests wird ein zusätzlicher Störsender benötigt. Es wird hier ein Arbitrary Waveform Generator (AWG) verwendet, um die notwendigen Störsignale in der Frequen von 31.25 MHz und 20.833 MHz zu generieren. In Abbildung 5 sehen Sie das Testmuster des Test Modes 1, welches vom PHY generiert wurde. Es existieren vier verschiedene Testmuster, welche mittels den MDIO Register Settings des PHYs generiert werden können. Bitte vergessen Sie nicht, dass die Compliance Tests aufgrund der vier paarweise verdrillten Leiter vier Mal ausgeführt werden müssen.

Waveform 1000Base-T from IEEE Standard for Ethernet
Abbildung 5: Definition der Test Mode 1 Waveform 1000Base-T des IEEE Standards für Ethernet


Distortion Test 1000Base-T without disturber
Abbildung 6: Gemessener differentieller Test Mode 4. Störungstest 1000Base-T ohne Störsender.

Wir haben nun einige der elektrischen Anforderungen vorgestellt, welche für die Erfüllung der  Interface-Definition erreicht werden müssen. Bevor wir die Messausrüstung genauer betrachten werden, möchte ich die wichtigste Frage dieses Blogs beantworten: Wie generieren wir diese Testsignale?

Jeder Verkäufer von PHYs hat individuelle Methoden, um die Register Settings zu modifizieren und die Test Modes zu starten. Dies ist meist nicht öffentlich verfügbar und nur beim PHY Verkäufer erhältlich. Ein sehr gutes Beispiel ist Microchip, da dieser Anbieter seit letztem Jahr alle Informationen über Ethernet Compliance in einem einzigen Dokument zur Verfügung stellt. In unseren Modulen verwenden wir die Ethernet PHYs mit den Modellnummern KSZ8041 und KSZ9031. Ein Dokument von TI als weiteres Beispiel finden Sie ebenfalls unten verlinkt. Falls Sie einen neuen Ethernet PHY suchen und das Ethernet Compliance Testing selbst durchführen möchten, fragen Sie bitte vorgängig Ihren Verkäufer für detaillierte Informationen zu den Register Settings.

Testumgebung

Wie oben beschrieben, müssen wir Zeitspannen im Bereich von Pikosekunden präzise messen. Dazu muss ein Oszilloskop mit einer Bandbreite bis zu 1 GHz und Speicher der Klasse 4MS oder höher verwendet werden. Normalweise benötigen Sie einen Adapter für den Anschlus vom des Ethernetsignal vom Ethernet Jack an das Oszilloskop. Aus diesem Grund arbeiten wir eng mit Teledyne LeCroy zusammen und verwenden ein High-End Oszilloskop der Serie WaveMaster in Kombination mit der angemessenen Hardware und Software. Weitere Anbieter von geeigneter Hardware sind Tektronix, Rhode&Schwarz, Keysight und Weitere.

Zitat von Mr. Hofferbert, Spezialist bei Teledyne LeCroy:
“Teledyne LeCroy is a leading manufacturer of digital storage oscilloscopes (DSO). With modern DSOs it is possible to perform qualification measurements. Toradex uses appropriate equipment from Teledyne LeCroy to test the design of Ethernet PHYs. With the combination of our QualiPHY Software and latest oscilloscopes, a semi-automatic test has been implemented to test the physical level of the Ethernet PHYs according to the IEEE 802.3 specification. This measurement solution allows the development engineers at Toradex to test and resolve issues with signal integrity in an early development stage of their embedded systems. Toradex is very interested in using the measurement equipment as efficiently as possible. If there are any uncertainties or measurement deviation, we work together to quickly solve these issues and provide our expertise in measurement application.”

Gregor Hofferbert, Teledyne LeCroy
Fazit

Nach dem Compliance Test verfassen wir einen Compliance Report für die Verifkation unseres PCB Designs. Wie Sie dem Testbericht von Teledyne LeCroy entnehmen können, ist das Colibri iMX6ULL mit dem Iris Carrier Board is Standard 10Base-T und 100Base-TX konform. So können wir sichergehen, dass unsere Implementation mit anderen konformen System zusammen funktioniert. Dies können wir deshalb auch unseren Kunden garantieren.

In folgendem Link finden Sie Design Guides für Carrier Boards https://developer.toradex.com/carrier-board-design. Zudem teilen wir auch unsere Carrier Boards kostenlos als Altium Designer Projekte und bieten in unserem Community Channel Hilfe an:
https://www.toradex.com/community.

Wir haben damit begonnen, unsere Testing Software in unseren BSP zu integrieren und ermöglichen das einfache Ausführen von existierenden Treibern, um Compliance Tests selbständig durchführen zu können. Bitte gehen Sie damit trotzdem sehr vorsichtig um, da für jeden PHY andere Softwaretechniken verwendet werden müssen um das Testmuster erzeugen zu können. Es existiert keine einfache Anleitung. Als Beispiel:
https://git.toradex.com/cgit/linux-toradex.git/commit/?h=tegra-next&id=13bd0f089ac6babeb7248fe3db4b9c19233cce3c

Es können Probleme auftreten bei falschem Routing, schlechtem GND Layout oder ungenauem Crystal Circuit Design. Zudem spielt die Testumgebung eine Rolle: Erdschleifen, störende Netzteile oder solche mit zu tiefer Leistung können Messfehler verursachen. Es ist notwendig, die Design Guidelines der PYH Verkäufer zu beachten. Ich persönlich mag das Troubleshooting Dokument von Intel, welches bei ersten Debuggingversuchen hilfreich sein kann, da es einen grundlegenden Überblick über Fehler und deren Ursachen bietet. Die häufigsten Fehlerursachen sind Designs mit zu langen Leiterbahnen, schlechten EMV Eigenschaften oder die falsche Verwendung von Messeinrichtungen. Allerdings gibt es aber auch spezifische Fehler welche in starker Korrelation stehen, zum Beispiel werden falsche Amplitudenwerte meist durch falsch bestückte Widerstände oder durch Probleme mit der Mittelabgriffsschaltung verursacht. Ein weiteres Beispiel sind zu hohe Jitter-Werte, welche durch Probleme dei den zeitgebenden Kristallelementen, durch Impedance Mismatch oder durch schlechte Netzteile verursacht werden können. Im Allgemeinen sollte Ihnen Ihr PHY-Verkäufer behilflich sein, wobei auch ein Überprüfung des Schemas oder des Layouts hilfreich sein kann.

https://www.intel.com/content/dam/www/public/us/en/documents/application-notes/ieee-conformance-phy-app-note.pdf

In diesem Blog erhielten Sie Einblicke in eine der vielen Verfikationen die Toradex durchführt, um Produkte mit höchster Zuverlässigkeit und in bester Qualität anzubieten. Interne Testverfahren von uns und Ihre Einhaltung von Design Guidelines reduzieren das Risiko auf ein Minimum. Für die bestmögliche Qualität können Sie Ihre eigene Verifiaktion auf Ihrem individuellen Carrier Board durchführen und sich an den System Engineering Approach halten (wie zum Beispiel von der NASA dokumentiert). Dieser empfiehlt gewisse Tests bereits in der frühen Entwicklungsphase durchzuführen, um das Risiko zu reduzieren und Kosten zu sparen. Ich hoffe, ich konnte Ihnen viele Ratschläge und Informationen mit auf den Weg geben. Für weitere Informationen stehe ich Ihnen gerne zur Verfügung.

#Ethernet #Iris Carrier Board #NXP® i.MX 6ULL
Author Andrija Stojkovic, Hardware Development Engineer, Toradex AG

Leave a comment

Your email ID will be kept confidential. Required fields are marked *


Bitte geben Sie die angezeigten Buchstaben ein. Gross/Kleinschreibung ist unbedeutend.



* Your comment will be reviewed and then added. Thank you.