Einführung in Netzwerktreiber für Linux-Geräte

Einführung in Netzwerktreiber für Linux-Geräte

Kabelgebundenes Netzwerk: Ethernet Drahtloses Netzwerk: 4G, WLAN, Bluetooth, 5G

Bildbeschreibung hier einfügen

Zusammenfassung: Interner MAC + externer PHY + RJ45-Buchse (integrierter Netzwerktransformator) bilden eine vollständige eingebettete Netzwerkschnittstellenhardware.

Das interne MAC-Peripheriegerät wird über die MII- oder RMII-Schnittstelle mit dem externen PHY-Chip verbunden. Die MII/RMII-Schnittstelle wird zur Übertragung von Netzwerkdaten verwendet. Darüber hinaus muss der Master den PHY-Chip konfigurieren oder lesen, d. h. die internen Register des PHY lesen und schreiben, sodass auch eine Steuerschnittstelle namens MIDO erforderlich ist. MDIO ist IIC sehr ähnlich und verfügt ebenfalls über zwei Drähte, eine Datenleitung namens MDIO und eine Taktleitung namens MDC.

Bildbeschreibung hier einfügen

(1) Data Link Layer MAC ist die Abkürzung für Media Access Control, das Unterschichtprotokoll für die Medienzugriffssteuerung. Dieses Protokoll befindet sich in der unteren Hälfte der Datenverbindungsschicht im OSI-Siebenschichtprotokoll und ist hauptsächlich für die Steuerung des physischen Mediums verantwortlich, das die physische Schicht verbindet. Beim Senden von Daten kann das MAC-Protokoll im Voraus bestimmen, ob die Daten gesendet werden können. Wenn sie gesendet werden können, werden den Daten einige Steuerinformationen hinzugefügt und schließlich werden die Daten und Steuerinformationen im angegebenen Format an die physische Schicht gesendet. Beim Empfangen von Daten bestimmt das MAC-Protokoll zunächst die Eingabeinformationen und ob ein Übertragungsfehler vorliegt. Wenn kein Fehler vorliegt, werden die Steuerinformationen entfernt und an die LLC-Schicht gesendet. Der Ethernet-MAC wird durch den Ethernet-Standard IEEE-802.3 definiert.

(2) Die physikalische Schicht PHY ist der physikalische Schnittstellen-Transceiver, der die physikalische Schicht implementiert. Es umfasst die MII/GMII-Unterschicht (Media Independent Interface), die PCS-Unterschicht (Physical Coding-Unterschicht), die PMA-Unterschicht (Physical Medium Attachment), die PMD-Unterschicht (Physical Medium Dependent) und die MDI-Unterschicht.

(3) MII steht für Media Independent Interface. „Medienunabhängig“ bedeutet, dass jeder PHY-Gerätetyp normal funktionieren kann, ohne dass die MAC-Hardware neu gestaltet oder ersetzt werden muss. Enthält jeweils zwei unabhängige Kanäle für Sender und Empfänger. Jeder Kanal hat seine eigenen Daten-, Takt- und Steuersignale. Die MII-Datenschnittstelle erfordert insgesamt 16 Signale, darunter TX_ER, TXD<3:0>, TX_EN, TX_CLK, COL, RXD, RX_EX, RX_CLK, CRS, RX_DV usw.

(4) RMII steht für Reduced Media Independent Interface und ist eine vereinfachte Version der MII-Schnittstelle. Die RMII-Schnittstelle erfordert nur 7 Datenleitungen, also 9 weniger als MII, was die Platinenverdrahtung erheblich erleichtert. Generell ist ein Bustakt von 50 MHz erforderlich. Wie MII unterstützt RMII Busschnittstellengeschwindigkeiten von 10M und 100M .

(5) GMII ist die MII-Schnittstelle von Gigabit Ethernet . Es verfügt auch über eine entsprechende RGMII-Schnittstelle, was eine vereinfachte GMII-Schnittstelle bedeutet. GMII verwendet 8-Bit-Schnittstellendaten und einen Arbeitstakt von 125 MHz , sodass die Übertragungsrate 1000 Mbit/s erreichen kann. Es ist außerdem mit dem von MII spezifizierten 10/100 Mbit/s-Betriebsmodus kompatibel.

(6) MDIO-Schnittstelle
MDIO steht für Management Data Input/Output, was wörtlich Managementdaten-Ein- und Ausgabeschnittstelle bedeutet. Es handelt sich um eine einfache serielle Zweidrahtschnittstelle, eine MDIO-Datenleitung und eine MDC-Taktleitung. Über die beiden Leitungen MDIO und MDC kann der Treiber auf jedes Register des PHY-Chips zugreifen. Die MDIO-Schnittstelle unterstützt bis zu 32 PHYs. Es kann immer nur ein PHY gleichzeitig betrieben werden. Wie kann man also diese 32 PHY-Chips unterscheiden? Verwenden Sie genau wie IIC die Geräteadresse. Die Geräteadressen aller PHY-Chips unter derselben MDIO-Schnittstelle dürfen nicht in Konflikt geraten und müssen eindeutig sein. Spezifische Geräteadresswerte finden Sie im entsprechenden PHY-Datenhandbuch.

Daher sind der MAC und der externe PHY-Chip hauptsächlich über die MII/RMII- und MDIO-Schnittstellen verbunden, und möglicherweise sind auch andere Pins wie Reset und Interrupt erforderlich.

Anhang:

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen

Dies ist das Ende dieses Artikels über den Netzwerktreiber von Linux-Geräten. Weitere relevante Inhalte zu Linux-Netzwerktreibern finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Hinweise zum Zeichengerätetreiber des Linux-Kernel-Gerätetreibers

<<:  Analyse zweier Verwendungen des A-Tags in HTML-Post-Anfragen

>>:  Die 9 besten ausländischen Websites mit kostenlosem Bildmaterial

Artikel empfehlen

Eine kurze Einführung in den MySQL-Dialekt

Wenn wir einmal von Datenbanken absehen, was ist ...

Realisierung baumförmiger Sekundärtabellen auf Basis von Angular

Erster Blick auf die Wirkung: Code: 1.html <di...

Schriftreferenzen und Übergangseffekte außerhalb des Systems

Code kopieren Der Code lautet wie folgt: <span...

Konfigurationsmethode für die SystemC-Umgebung unter Linux

Das Folgende ist die Konfigurationsmethode unter ...

Eine vollständige Liste häufig verwendeter HTML-Tags und ihrer Eigenschaften

Zunächst müssen Sie einige Eigenschaften von HTML...

Beispielcode zum Setzen von Hotlinks und Koordinatenwerten für Webbilder

Manchmal müssen Sie mehrere Bereiche auf einem Bi...

Anwendungsbeispiele für die MySQL-Volltextsuche

Inhaltsverzeichnis 1. Umweltvorbereitung 2. Daten...

Allgemeine Symbole in Unicode

Unicode ist ein von einer internationalen Organis...

Vue implementiert eine einfache Slider-Verifizierung

Dieses Artikelbeispiel zeigt die Implementierung ...

Nginx implementiert dynamische und statische Trennung Beispielerklärung

Um das Parsen der Website zu beschleunigen, könne...

Implementierung von Portalen und Fehlergrenzbehandlung in React

Inhaltsverzeichnis Portale Fehlergrenzenbehandlun...

Detaillierte Einführung zum MySQL-Cursor

Inhaltsverzeichnis 1. Was ist ein Cursor? 2. So v...

So verwenden Sie den EXPLAIN-Befehl in SQL

Bei unserer täglichen Arbeit führen wir manchmal ...