MDIO与MII
其实MDIO不应该与MII放到一个层级上来说,MDIO只是SMI通信接口的一个引脚,但是MII却是一种通信接口。
目录
一.站点管理接口SMI:
SMI是一个只有两根线的通信接口,一根时钟线MDC,一根数据线MDIO。MDIO会在MDC的时钟信号驱动下,向PHY设备传递信息。SMI和CAN差不多,都是可以挂从机的,理论上SMI上最多可以挂32个PHY。
它存在两种操作模式,读模式和写模式。这么说他还算是半双工通信。
写模式:
读模式:
基本格式都相同,相同点是:都是要PHY地址(类似于器件地址),PHY寄存器地址。不同点是:操作符不一样。
个人猜测,这个东西是协助MII通信使用的,例如现在能不能通信,现在该发还是该收,等等。
二.MII通信:
如图所示MII接口刨除SMI接口,还有16个接口,可以分为三个部分。
第一个部分:接收端口,RX
RX_CLK接收时钟。
RXD接收数据,四个引脚RXD[0-3],用于接收数据。
RX_DV接收使能,这个引脚可以控制主机是否接收PHY来的数据。
RX_ER这个引脚是接收出错信号。
全部都由PHY发给MAC。
第二个部分:发送端口,TX
TX_CLK接收时钟,由PHY发送给MAC时钟。
TXD接收数据,四个引脚TXD[0-3],用于接收数据。
TX_DV接收使能,这个引脚可以控制主机是否接收PHY来的数据。
TX_ER这个引脚是接收出错信号。
除了TX_CLK,其余的几个都由MAC发给PHY。
第三个部分:可有可无部分
COL和CRS一般都用不到,所以就不讲了。
在详细的细节我也没说,感兴趣的话可以看stm32f10系列的数据手册,里边啥协议都给讲了,很牛逼。