我主要来自嵌入式软件背景,因此,我一般对硬件的了解非常有限。我总是将以太网视为连接以太网电缆的计算机上的那个小物理连接器。从软件 Angular 来看,您所需要做的就是安装驱动程序(在Windows中)或配置Linux内核以包括用于以太网的驱动程序。

问题:

但是,当我开始深入(从硬件的 Angular )并查看各种数据表和原理图时,我开始遇到诸如PHY,MII,SGMII,RGMII等术语。现在,我对构成的含义不感到困惑以太网?例如,当我说Intel 82574L 1.0 Gbps以太网端口时,所有这些术语都适合什么地方?

最佳答案

让我尝试解释一下:

(1)MII,SGMII,RGMII是MAC芯片和PHY芯片之间的三种接口(interface)。英特尔82574L是一个MAC芯片。看下图:

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

有关MII(100Mbps),SGMII(1Gbps,串行),RGMII(1Gbps,缩减)定义的详细信息,可以在Google中进行搜索。

(2)从根本上说,NIC(网络接口(interface)卡)由一个MAC芯片和相关的PHY芯片以及其他外围模块组成。 NIC硬件也应使用一个以太网设备驱动程序。 MAC芯片与控制CPU或PC主板有一个接口(interface),例如PCI-E总线。

关于networking - 澄清以太网,MII,SGMII,RGMII和PHY,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15777399/

10-11 08:37