以太网PHY芯片的MII / MDIO接口的详细说明

电脑杂谈  发布时间:2020-06-16 14:05:12  来源:网络整理

phy芯片是什么_phy芯片 工作原理_phy芯片 工作原理

MII接口提供了MAC与PHY之间以及PHY与STA之间的互连技术(站点管理). 该接口支持10Mb / s和100Mb / s的数据传输速率,数据传输位宽为4位.

在提到MII时,可能会有诸如RS,PLS,STA等之类的术语. 让我们来谈谈它们之间的对应关系.

所谓的RS是对帐子层. 它的主要功能是提供MII与MAC / PLS之间的信号映射机制. 它们(RS和MII)之间的关系如下:

MII/MDIO接口详解

MII接口的管理接口可以同时控制多个PHY. 802.3协议最多支持32个PHY,但存在某些限制: 要满足协议要求的连接器特性. 所谓的管理接口是MDC信号和MDIO信号.

已经提到了RS和PLS之间的关系,以及连接到MII接口的对象. 它们通过MII接口连接,原理图如下. 从图中可以看出,MII的管理接口与STA(站点管理)相连.

该接口支持10Mb / s和100Mb / s,两种工作模式下所有功能和时序关系相同,唯一的区别是时钟频率. 802.3要求PHY不一定必须支持这两种速率,但是必须对其进行描述并通过管理接口反馈给MAC.

MII/MDIO接口详解

下面将详细介绍MII接口的信号定义和定时特性. 由于MII接口具有MAC和PHY模式,因此将基于这两种不同的模式进行分析,并介绍RMII / SMII.

MII接口可以分为MAC模式和PHY模式. 一般来说,MAC和PHY是连接的,但MAC和MAC也可以连接.

先前的10M MAC层芯片和物理层芯片之间的数据传输是通过数据线进行的. 时钟是10M. 在100M中,如果还使用一条数据线进行传输,则时钟需要100Mphy芯片 工作原理,这会带来一些问题,因此定义了MII接口,该接口使用4条数据线来传输数据,因此在传输100M数据时,时钟将从100M减少到25M,并在传输10M数据时将时钟减少到2.5M,从而实现10M和100M兼容性.

MII界面主要包括四个部分. 一个是从MAC层到物理层的发送数据接口,第二个是从物理层到MAC层的接收数据接口,第三个是从物理层到MAC层的状态指示信号,第四个是是MAC层和物理层MDIO接口之间用于状态信息的传输控制.

phy芯片是什么_phy芯片 工作原理_phy芯片 工作原理

MII接口的MAC模式定义:

MII/MDIO接口详解

MII接口PHY模式定义:

MII/MDIO接口详解

在MII接口中,TX通道参考时钟为TX_CLK,而RX通道参考时钟为RX_CLK. 802.3-2005定义了它们之间的关系.

MII/MDIO接口详解

图3 MII上的发射信号时序关系

从图3可以看出,时钟到输出的延迟应为最小值0 ns,最大值为25 ns. 规范仅定义了TX通道上MAC端和TX通道PHY的传输特性. 侧面的特性未定义. 只要最终时序满足TX通道上MAC端的传输特性,IC供应商就可以调整TX通道上PHY的接收特性.

MII/MDIO接口详解

图4 MII处的接收信号时序关系

从图4可以看出,输入建立时间应至少为10 ns,输入保持时间应至少为10 ns. 规范仅定义了RX信道的MAC端的接收特性,并且RX通道PHY端的传输特性未定义. 只要最终时序满足RX通道上MAC端的接收特性,IC供应商就可以调整RX通道上PHY的传输特性.

<1>: TX_CLK(发送时钟),TX_CLK(发送时钟)是连续时钟信号(即系统启动,该信号始终存在),它是TX_EN,TXD和TX_ER(信号方向为从RS到PHY的参考时钟),TX_CLK由PHY驱动. TX_CLK的时钟频率为数据传输速率的25%,偏差为+ -100ppm. 例如,在100Mb / s模式下,TX_CLK时钟频率为25MHz,占空比在35%至65%之间.

phy芯片 工作原理_phy芯片 工作原理_phy芯片是什么

<2>: 对于相同的RX_CLK,它与TX_CLK的要求相同,不同之处在于它是RX_DV,RXD和RX_ER的参考时钟(信号方向从PHY到RS). RX_CLK也由PHY驱动. PHY可以从接收到的数据中提取时钟RX_CLK,也可以从标称参考时钟(例如TX_CLK参考)驱动RX_CLK

<3>: TXD(发送数据),TXD由RS驱动,在TX_CLK的时钟周期内与TX_CLK同步,并且TX_EN有效,PHY接收TXD上的数据,否则TXD的数据具有对PHY没有影响.

MII/MDIO接口详解

<4>: TX_ER(发送编码错误),TX_ER与TX_CLK同步. 在数据传输期间,如果TX_ER有效超过一个时钟周期,并且TX_ENTX_ER此时有效,则对PHY或工作在10Mb / s的TX_EN无效无效. 在MII接口的连接中,如果未使用TX_ER信号线,则必须将其下拉至地面.

MII/MDIO接口详解

<5>: RX_DV(接收数据有效),RXD_DV与RX_CLK同步并由PHY驱动. 其功能类似于传输通道中的TX_EN. 不同之处在于时序上存在细微差异: 为了使数据成功被RS接收,RXD_DV有效的时间必须覆盖整个FRAME过程,即,不迟于开始帧定界符(SFD)开始并排除任何帧尾定界符,如下图7所示.

MII/MDIO接口详解

<6>: RXD(接收数据),RXD由RS驱动,在RX_CLK的时钟周期内与RX_CLK同步,并且RX_DV有效,RSD接收RXD上的数据,否则RXD的数据具有对RS无影响. 当RX_DV无效时,PHY可以通过在将值<1110>驱动到RXD <3: 0>时声明RX_ER信号来提供伪载波指示.

<7>: RX_ER(接收错误),RX_ER与RX_CLK同步,其在RX通道中的作用类似于TX_ER对TX通道的数据传输的影响.

MII/MDIO接口详解

<8>: CRS(载波侦听). CRS不需要与参考时钟同步. 只要信道上存在发送或接收过程,CRS就必须有效. 当控制寄存器中的双工模式位0.8设置为逻辑1(禁止自动协商,手动设置为全双工模式)时,或者当自动协商过程选择全双工时,CRS信号的行为不确定工作模式,即半双工模式信号有效,全双工模式信号无效.

<9>: COL(检测到冲突),COL不需要与参考时钟同步. 当控制寄存器中的双工模式位0.8设置为逻辑1(禁用自动协商,手动设置为全双工模式)时,或者当自动协商进程选择全双工模式时,COL信号的行为未指定操作. 也就是说,半双工模式信号有效,而全双工模式信号无效.

phy芯片 工作原理_phy芯片 工作原理_phy芯片是什么

MII/MDIO接口详解

MDIO接口包括两条信号线: MDC和MDIO. 通过它,MAC层芯片(或其他控制芯片)可以访问物理层芯片的寄存器(在先前的100M物理层芯片中引入的寄存器集,但不限于100M物理层芯片,10M物理层芯片)也可以具有这些寄存器),并使用这些寄存器来控制和管理物理层芯片. MDIO管理界面如下:

MDC: 管理接口的时钟. 这是一个非周期性的信号. 信号的最小周期(实际上是正电平时间和负电平时间的总和)为400ns,最小正电平时间和负电平时间为160ns. 正负水平的时间是无限的. 与TX_CLK和RX_CLK无关.

MDIO是双向数据线. 用于传输MAC层控制信息和物理层状态信息. MDIO数据与MDC时钟同步,并且在MDC的上升沿有效. MDIO管理界面的数据帧结构如下:

PRE: 帧前缀字段是32个连续的“ 1”位. 该帧前缀字段不是必需的,并且某些物理层芯片没有此字段用于MDIO操作.

OP: 帧操作码,位“ 10”表示该帧是读操作帧,位“ 01”表示该帧是写操作帧.

PHYAD: 物理层芯片地址,为5位,每个芯片将自己的地址与这5位进行比较,如果匹配,则响应后续操作,如果不匹配,则忽略后续操作.

REGAD: 用于选择物理层芯片中32个寄存器之一的地址.

TA: 状态转换字段. 如果是读操作,则MDIO在第一位处于高阻抗状态,而物理层芯片在第二位将MDIO设置为“ 0”. 如果是写操作,则MDIO仍由MAC层芯片控制,该芯片连续输出“ 10”两位.

DATA: 帧寄存器的数据字段,为16位. 如果是读取操作phy芯片 工作原理,则是从物理层发送到MAC层的数据. 如果是写操作,则是从MAC层发送到物理层的数据.

IDLE: 帧结束后的空闲状态. 此时,MDIO被被动驱动并处于高阻抗状态,但通常通过一个上拉电阻将其置于高电平,即MDIO引脚需要一个上拉电阻.

MDIO数据帧的时序关系如下:

phy芯片 工作原理_phy芯片是什么_phy芯片 工作原理

MII接口也有一些缺点,主要是因为接口信号线很多. 有14条用于发送,接收和指示接口的数据线(不包括MDIO接口的信号线,因为它由所有MII接口共享). 当交换芯片的端口中数据较多时,会引起芯片引脚数量过多的问题,给芯片的设计和单板的设计带来一定的问题. 为了解决这些问题,人们设计了两个新的MII接口,分别是RMII接口(精简MII接口)和SMII接口(StreamMII接口).

这两个接口都减少了MII接口的数据线,但是它们通常仅用于以太网交换机的交换MAC芯片和多端口物理层芯片,而很少用于单端口MAC层芯片和物理层. 在芯片中. RMII接口和SMII接口都可以用于10M以太网和100M以太网,但是不能用于1000M以太网,因为此时时钟频率太高,无法实现.

MII/MDIO接口详解

[转自]

关于PHYAD:

MDIO帧的PHYAD字段是一个5位二进制值,能够寻址32

唯一地址. 但是,每个MDIO从站都必须响应物理地址0. 这

要求指示任何特定PHY的物理地址不得设置为0

避免MDIO争用. 物理地址1到31可用于连接

将31个PHY设备连接到一条MDIO总线上.

物理地址0可用于编写单个命令,所有附加命令都应遵守

PHY,例如重置或掉电命令.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shumachanpin/article-247407-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...