web-dev-qa-db-ja.com

イーサネット、MII、SGMII、RGMIIおよびPHYの説明

私は主に組み込みソフトウェアのバックグラウンドから来ているため、ハードウェア全般に関する知識は非常に限られています。イーサネットは、イーサネットケーブルを接続するコンピューター上の小さな物理コネクタとして常に考えています。また、ソフトウェアの観点からする必要があるのは、ドライバーをインストールするか(Windowsで)、Linuxカーネルを構成してイーサネット用のドライバーを含めるだけです。

質問:

しかし、ハードウェアに向かって1レベル下がってさまざまなデータシートと回路図を見ると、PHY、MII、SGMII、RGMIIなどの用語に出会うようになりました。イーサネット?たとえば、Intel 82574L 1.0 Gbpsイーサネットポートと言うとき、これらすべての用語はどこに当てはまりますか?

29
modest

説明しよう:

(1)MII、SGMII、RGMIIは、MACチップとPHYチップ間の3種類のインターフェースです。 Intel 82574Lは1つのMACチップです。次の図を見てください:

 _______         __________                  ___________
  CPU  | PCI-E   |        |  MII/SGMII/RGMII |         |
  or   |<=======>| MAC    |<================>| PHY     |<==========>physical interface 
  board| or else |        |                  |         |
________         __________                  ___________

MII(100Mbps)、SGMII(1Gbps、シリアル)、RGMII(1Gbps、削減)の定義の詳細については、グーグルで検索できます。

(2)基本的に、NIC(Network Interface Card)は1つのMACチップと関連するPHYチップ、およびその他の周辺モジュールで構成されます。また、1つのイーサネットデバイスドライバーはNICハードウェアで動作するはずです。MACチップには、PCI-Eバスなどの制御CPUまたはPCメインボードとのインターフェイスが1つあります。

36
tian_yufeng

いくつかの定義:

  • MAC-メディアアクセスコントローラー。これは、OSからのパケットをワイヤ(またはファイバー)に送信されるバイトストリームに変換するシステムの一部です。多くの場合、PCI Expressのようなものを介してホストプロセッサとインターフェイスします(たとえば)。
  • PHY-物理層-MACからのバイトストリームを1つ以上のワイヤまたはファイバ上の信号に変換します。
  • MII-メディアに依存しないインターフェース。 MACとPHY間のピンの標準セットだけです。これにより、MACは物理メディアが何であるかを知る必要も、気にする必要もありません。また、PHYはホストプロセッサインターフェイスがどのように見えるかを知る必要もありません。

MIIはかなり前に標準化され、100Mbit /秒の速度をサポートしています。より少ないピンを使用するバージョン、RMII(縮小の場合は 'R')も利用できます。

ギガビット速度の場合、GMII(ギガビットの場合は「G」)インターフェースが使用され、RGMIIと呼ばれるピンカウントの少ないバージョンが使用されます。 SGMIIと呼ばれる非常に削減されたピンカウントバージョンも利用できます(シリアルの場合は 'S')。これは、MACのIOピンの特別な機能を必要としますが、他のxMIIは比較的従来のロジック信号です。

他の状況で使用されるインターフェイスにはさらに多くの種類があり、それらはウィキペディアのMIIページからリンクされている場合があります。

http://en.wikipedia.org/wiki/Media_Independent_Interface

特定のIntelチップの質問について-私が知る限り(データシートのリンクは死んでいるようです)、そのチップはMACであり、PCIeです。そのため、ホスト上のPCIeバスとある種のギガビット物理層(PHY)の間に配置されます。

30
Martin Thompson

「OSIの7つの層」という用語を探したいと思うかもしれません。

**イーサネットPHYは、通信の文字通り物理的なコンポーネントで構成される物理層に対応します。

**イーサネットMAC(MACアドレスではなく、Media-Access Controller)は、データリンク層に対応します。データリンク層は、物理層にフレームを送信する前にフレームを配置する役割を果たします。

MII、RMII、Auto-Negotionなどの構成は、これら2つから構成されます。そして、生活を楽にするライブラリがあります。

**ネットワーク層は、パケットのルーティングを担当します。 IPやDHCPなどのプロトコルは、この層にあると見なされます。また、この層は、ソフトウェアベースのみの最初の最下層です。たとえば、軽量IPを使用している場合、ip&netifライブラリが他のすべての基盤になります。

**トランスポート層は、TCP&UDPのような伝送プロトコルがあります。

うまくいけば、上の層についてはあまり知りません。

2
İlkerK