Linux デバイス用ネットワーク ドライバーの紹介

Linux デバイス用ネットワーク ドライバーの紹介

有線ネットワーク: イーサネット 無線ネットワーク: 4G、WiFi、Bluetooth、5G

ここに画像の説明を挿入

概要: 内部 MAC + 外部 PHY + RJ45 ソケット (内蔵ネットワーク トランスフォーマー) は、完全な組み込みネットワーク インターフェイス ハードウェアを構成します。

内部 MAC 周辺機器は、MII または RMII インターフェイスを介して外部 PHY チップに接続します。MII/RMII インターフェイスは、ネットワーク データの送信に使用されます。さらに、マスターはPHYチップを設定または読み取る、つまりPHYの内部レジスタを読み書きする必要があるため、MIDOと呼ばれる制御インターフェースも必要です。MDIOはIICと非常によく似ており、MDIOと呼ばれるデータラインとMDCと呼ばれるクロックラインの2本のワイヤがあります。

ここに画像の説明を挿入

(1)データリンク層MACはMedia Access Controlの略で、メディアアクセス制御サブ層プロトコルである。このプロトコルは、OSI 7 層プロトコルのデータリンク層の下位半分に位置し、主に物理層を接続する物理媒体の制御を担当します。データを送信する場合、MAC プロトコルは、データが送信可能かどうかを事前に判断できます。送信できる場合は、データにいくつかの制御情報が追加され、最終的にデータと制御情報が指定された形式で物理層に送信されます。データを受信する場合、MAC プロトコルは最初に入力情報を判断して、伝送エラーが発生するかどうかを確認します。エラーがない場合、制御情報が削除され、LLC 層に送信されます。イーサネット MAC は、IEEE-802.3 イーサネット標準で定義されています。

(2)物理層PHYは物理層を実装する物理インターフェーストランシーバーである。これには、MII/GMII (メディア独立インターフェース) サブレイヤー、PCS (物理コーディング サブレイヤー)、PMA (物理メディア アタッチメント) サブレイヤー、PMD (物理メディア依存) サブレイヤー、および MDI サブレイヤーが含まれます。

(3)MIIはMedia Independent Interfaceの略です。「メディアに依存しない」とは、MACハードウェアを再設計したり交換したりすることなく、あらゆるタイプのPHYデバイスが正常に動作できることを意味します。送信機と受信機にそれぞれ独立した 2 つのチャンネルが含まれています。各チャネルには独自のデータ、クロック、および制御信号があります。 MII データ インターフェイスには、TX_ER、TXD<3:0>、TX_EN、TX_CLK、COL、RXD、RX_EX、RX_CLK、CRS、RX_DV など、合計 16 個の信号が必要です。

(4)RMIIはReduced Media Independent Interfaceの略で、MIIインターフェースの簡易版です。 RMII インターフェースでは、MII よりも 9 少ない 7 つのデータ ラインのみが必要なので、ボードの配線が大幅に容易になります。通常、50 MHz のバス クロックが必要です。 MII と同様に、RMII は 10M および 100M のバス インターフェイス速度をサポートします

(5) GMIIはギガビットイーサネットのMIIインターフェースです。また、対応するRGMIIインターフェースも備えており、これはGMIIインターフェースを簡略化したものです。 GMII は 8 ビットのインターフェース データと125MHz の動作クロックを使用するため、伝送速度は 1000Mbps に達します。 MII で規定された 10/100 Mbps 動作モードにも対応しています。

(6)MDIOインターフェース
MDIO は Management Data Input/Output の略で、文字通り管理データの入力と出力のインターフェースを意味します。これは、1 つの MDIO データ ラインと 1 つの MDC クロック ラインで構成されるシンプルな 2 線式シリアル インターフェースです。ドライバーは、MDIO と MDC の 2 つのラインを介して PHY チップの任意のレジスタにアクセスできます。 MDIO インターフェイスは最大 32 個の PHY をサポートします。 同時に動作できる PHY は 1 つだけなので、これら 32 個の PHY チップをどのように区別するのでしょうか? IIC と同様に、デバイス アドレスを使用します。同じ MDIO インターフェイスのすべての PHY チップのデバイス アドレスは競合することはできず、一意である必要があります。特定のデバイス アドレス値については、対応する PHY データ マニュアルを参照してください。

したがって、MAC と外部 PHY チップは主に MII/RMII および MDIO インターフェイスを介して接続され、リセットや割り込みなどの他のピンも必要になる場合があります。

付録:

ここに画像の説明を挿入
ここに画像の説明を挿入

Linux デバイスのネットワーク ドライバーに関するこの記事はこれで終わりです。Linux ネットワーク ドライバーに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux カーネル デバイス ドライバー キャラクタ デバイス ドライバー ノート

<<:  HTML の POST リクエストにおける a タグの 2 つの使用法の分析

>>:  海外の無料写真素材サイトベスト9

推薦する

ピクセルを包括的なブランド体験に変えるヒント

編集者:この記事では、インタラクティブデザインがブランドコミュニケーションチェーン全体で果たすべき役...

IE6のバグと修正は予防戦略です

元記事:究極の IE6 チートシート: 25 以上の Internet Explorer 6 のバグ...

MySQL 上級学習インデックスの長所と短所、使用ルール

1. インデックスの利点と欠点利点: 高速検索、高速グループ化および並べ替えデメリット: ストレージ...

W3C チュートリアル (11): W3C DOM アクティビティ

ドキュメント オブジェクト モデル (DOM) は、プログラムがドキュメントのコンテンツ、構造、およ...

画像比較を実現するjQueryプラグイン

この記事の例では、画像比較を実現するためのjQueryプラグインの具体的なコードを参考までに共有して...

IE8 ベータ 1 には注意が必要な 2 つの領域があります

<br />関連記事: Web スキル: 複数の IE バージョンを共存させるソリューシ...

MYSQL の binlog 最適化に関する考察の要約

質問質問 1: トランザクションをコミットするときに REDO ログをフラッシュすることによって発生...

MySQLクエリ条件におけるonとwhereの配置の違いの分析

導入今日SQLを書いているときに、問題が発生しました。要件は、データを照会し、スコアと過去 1 週間...

Linux で NFS のワンクリック展開を実装する方法

サーバー情報管理サーバー: m01 172.16.1.61サーバー: nfs01 172.16.1....

VMware 仮想マシンのインストール Apple Mac OS の超詳細なチュートリアル

目次要約する仕事の都合で Apple の Mac OS に対応するソフトウェアをインストールする必要...

Vue 3.0 カスタムディレクティブの使い方

目次1. カスタム指示1. グローバルカスタム指示を登録する2. グローバルカスタム指示を使用する3...

CSS スタイルで一般的なグラフィック効果を示すサンプルコード

一般的な基本グラフィックと私が遭遇するいくつかの小さなアイコンについて簡単に説明します。以下は CS...

MySQL の自動インクリメント主キーが連続していないのはなぜですか?

目次1. はじめに2. 自己増分ストレージの説明3つの自己付加価値修正メカニズム4. 自己評価を修正...

Vueでブラウザ共有機能を呼び出す方法

序文Vue(発音は /vjuː/、view に似ています)は、ユーザーインターフェイスを構築するため...

node_modulesを削除して再インストールする方法

目次ステップ1: プロジェクトをインストールするディレクトリにnode_modulesをインストール...