1、 以太网接口
1.1 PHY芯片的作用
实现并行以太网数据到符合以太网物理层链路数据传输格式的电平信号之间的转换。
详细的说:
RJ45接口上的电信号为高速串行信号,数据是通过串行方式发送的,千兆以太网的位速率为 1.25Gbps、百兆以太网的位速率为 125Mbps。而典型的处理器如 CPU、FPGA、DSP 一般都不具备直接产生符合以太网物理链路层传输的电信号的能力,只能产生 TTL 电平标准的并行数据,所以在 RJ45 接口和处理器之间,需要使用一个能够实现 TTL 电平和高速串行数据收发模式之间的转换器,这个转换器就是PHY 芯片。
1.2 RJ45接口
RJ45 座子上一般有两个灯,一个黄色(橙色),一个绿色,绿色亮的话表示网络连接正常,黄色闪烁的话说明当前正在进行网络通信,黄灯闪动频率快表示网速好,这两个灯由 PHY 芯片控制。
1.3 MAC与PHY连接接口
有GMII、RGMII、MII、RMII 等多种并行接口。
其中MII和RGMII应用于1000Mbps以太网,MII和RMII应用于100Mbps 和 10Mbps 以太网。
1.3.1 MII接口介绍
TXD[3:0] (Transmit Data):4-bit 数据总线,用于传输数据从 MAC 层到 PHY 层
TX_ER(Transmit Error):发送数据错误提示信号,同步于TX_CLK,高电平有效,表示TX_ER有效期内传输的数据无效。对于10Mbps速率下,TX_ER不起作用
TX_EN(Transmit Enable): 发送使能信号,只有在TX_EN有效期内传的数据才有效
TX_CLK:发送参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。注意,TX_CLK时钟的方向是从PHY侧指向MAC侧的,因此此时钟是由PHY提供的
RX_ER(Receive Error): 接收数据错误提示信号,同步于RX_CLK,高电平有效,表示RX_ER有效期内传输的数据无效。对于10Mbps速率下,RX_ER不起作用
RX_DV(Reveive Data Valid): 接收数据有效信号,作用类型于发送通道的TX_EN
RX_CLK:接收数据参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。RX_CLK也是由PHY侧提供的
CRS(Carrier Sense):载波检测信号,不需要同步于参考时钟,只要有数据传输,CRS就有效,另外,CRS只有PHY在半双工模式下有效
COL(Collision Detectd):冲突检测信号,不需要同步于参考时钟,只有PHY在半双工模式下有效
note:
(1)载波检测CRS的主要功能是监听通信信道,检查是否有其他设备正在传输数据。它的目的是避免多个设备在同一时间发送数据,从而防止冲突的发生。
(2)冲突检测COL的主要功能是在数据发送过程中检测是否有其他设备同时在发送数据。如果检测到冲突,设备会停止发送数据并进行重传。
1.3.2 RMII
RMII即Reduced MII,是MII的简化板,连线数量由MII的16根减少为8根。
TXD[1:0]:数据发送信号线,数据位宽为2,是MII接口的一半
TX_EN(Transmit Enable):数据发送使能信号,与MII接口中的该信号线功能一样
RXD[1:0]:数据接收信号线,数据位宽为2,是MII接口的一半;
CRS_DV:当没有数据接收时,CRS_DV 信号为低电平。
CRS_DV 上升沿指示开始接收数据。此时,RXD[1:0] 数据线上的数据开始有效。
CRS_DV 保持高电平,在接收数据期间,CRS_DV 信号保持高电平,表示 RXD[1:0] 上的数据继续有效。
CRS_DV 下降沿:指示数据接收结束。此时,RXD[1:0] 数据线上的数据不再有效。
RX_ER(Receive Error):数据接收错误提示信号,与MII接口中的该信号线功能一样
CLK_REF:是由外部时钟源提供的50MHz参考时钟,与MII接口不同,MII接口中的接收时钟和发送时钟是分开的,而且都是由PHY芯片提供给MAC芯片的。这里需要注意的是,由于数据接收时钟是由外部晶振提供而不是由载波信号提取的,所以在PHY层芯片内的数据接收部分需要设计一个FIFO,用来协调两个不同的时钟,在发送接收的数据时提供缓冲。PHY层芯片的发送部分则不需要FIFO,它直接将接收到的数据发送到MAC就可以了。
1.3.3 GMII
TX_ER(Transmit Error):发送数据错误提示信号,同步于 GTX_CLK,高电平有效,表示 TX_ER 有效期内传输的数据无效。
TX_EN(Transmit Enable):发送使能信号,只有在 TX_EN 有效期内传的数据才有效。
GTX_CLK:发送参考时钟,时钟频率为 125MHz。需要注意的是,GTX_CLK 时钟的方向是从 MAC 侧指向 PHY 侧的,此时钟是由 MAC 提供的,这里与 MII 接口有所差别的地方。
TXD(Transmit Data):数据发送信号,共 8 根信号线。
RX_ER(Receive Error):接收数据错误提示信号,同步于 RX_CLK,高电平有效,表示 RX_ER 有效期内传输的数据无效。
RX_DV (Receive Data Valid):接收数据有效信号,作用类似于发送通道的TX_EN。
RXD(Receive Data):数据接收信号,共 8 根信号线。
RX_CLK :接收数据参考时钟,时钟频率为 125MHz。RX_CLK 是由 PHY 侧提供的。
CRS( Carrier Sense):载波侦测信号,不需要同步于参考时钟,只要有数据传输,CRS 就有效。需要注意的是 CRS 只有 PHY 在半双工模式下有效。
COL(Collision Detected):冲突检测信号,不需要同步于参考时钟。需要注意的是 CRS 只有 PHY 在半双工模式下有效。
1.3.4 RGMII
TX_CLK (Transmit Clock):发送时钟信号,用于同步发送数据。
TXD[3:0] (Transmit Data):发送数据线,上升沿和下降沿传输数据。
TX_CTL (Transmit Control):发送控制信号,包含TX_EN(Transmit Enable)和TX_ER(Transmit Error)信号的复用。TX_CTL 为高电平时,表示发送数据有效。
RX_CLK (Receive Clock):接收时钟信号,用于同步接收数据。
RXD[3:0] (Receive Data):接收数据线,上升沿和下降沿传输数据。
RX_CTL (Receive Control):接收控制信号,包含RX_DV(Receive Data Valid)和RX_ER(Receive Error)信号的复用。X_CTL 为高电平时,表示接收到的数据有效。
1.4 PHY配置
MDIO接口的组成:(该数据线在上面的图中没有画出来)
MDIO(Management Data Input/Output)线:用于传输管理数据,双向数据线。
MDC(Management Data Clock)线:用于传输时钟信号,由MAC控制器驱动。
MDIO接口的作用:
MDIO 将管理器件(如 MAC 控制器、微处理器)与具备管理功能的 PHY 芯片相连接,从而控制收发器并从收发器收集状态信息。可收集的信息包括链接状态、传输速度与选择、断电、低功率休眠状态、TX/RX模式选择、自动协商控制、环回模式控制等。
例如,需要设置其以太网通信速率为千兆、百兆、十兆或自动协商,而处理器也需要知道其连接状态,例如,需要知道网络是否已经连接通,以及当前的链接速率是多少。
2、PCB布线
2.1 等长
MII、RMII、GMII、RGMII
MII总线一般分为两部分(Tx和Rx),TX数据线与TX_CLK信号保持同步;RX数据线与RX_CLK信号保持同步。所以MII总线的等长处理可以分为两组:
第一组:TXD[0:3]、TX_CLK
第二组:RXD[0:3]、RX_CLK
同理,RMII、GMII、RGMII、XGMII都需要分成两组做等长处理。其中,最好是把RGMII接口的TXD[3:0]、RXD[3:0]和RX_CLK全部等长,并且,在其他接口中,把接收数据线画等长,发送数据线画等长。
2.2 阻抗匹配
RX+/RX-、TX+/TX- 两组差分对设置 100 ohm
标签:MII,TX,CLK,芯片,RX,PHY,以太网,时钟 From: https://blog.csdn.net/m0_57189965/article/details/140618313note:以太网主要规定的是物理层和介质访问层协议的内容,我们经常听到的UDP 协议、FTP 传输协议、HTTP传输协议、TCP 协议都是传输层的内容。