【以太网硬件十三】SGMII和1000base-X有什么异同?

目录

MII接口类型

MII

GMII

RGMII

SGMII

SGMII与1000base-X的异同


        通过前面的文章我们已经知道了1000base-X是千兆以太网光口的物理接口命名,包括使用不同光纤和光模块或铜缆的1000base-SX、1000base-LX、1000base-EX、1000base-CX等接口标准,也就是说1000base-X是物理层接口。

        那SGMII是什么呢?

        我们先来回顾一下这张百兆以太网的结构框图,可以看到物理层我们之前已经有过分析,从下到上分别是MDI、PMD、PMA、PCS,再往上就是MII、MAC、LLC,我们今天讨论的SGMII就是MII的一种类型。

【以太网硬件十三】SGMII和1000base-X有什么异同?_第1张图片

        解释一下MII和MDI,MII翻译过来为媒体无关接口,MDI为媒体相关接口,用人话说就是MDI是直接和传输物理媒介(双绞线、光纤等)连接的,所以叫媒体相关接口,而MII是在物理层之上连接MAC和PHY,与外部的传输介质无关,所以叫媒体无关接口。

MII接口类型

MII

【以太网硬件十三】SGMII和1000base-X有什么异同?_第2张图片

        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提供的。

        TXD(Transmit Data)[3:0]:数据发送信号,共4根信号线;

        RX_ER(Receive Error): 接收数据错误提示信号,同步于RX_CLK,高电平有效,表示RX_ER有效期内传输的数据无效。对于10Mbps速率下,RX_ER不起作用;

        RX_DV(Reveive Data Valid): 接收数据有效信号,作用类型于发送通道的TX_EN;

        RXD(Receive Data)[3:0]:数据接收信号,共4根信号线;

        RX_CLK:接收数据参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。RX_CLK也是由PHY侧提供的。

        CRS:Carrier Sense,载波侦测信号,不需要同步于参考时钟,只要有数据传输,CRS就有效,另外,CRS只有PHY在半双工模式下有效;

        COL:Collision Detectd,冲突检测信号,不需要同步于参考时钟,只有PHY在半双工模式下有效。

                MII接口一共有16根线。

GMII

【以太网硬件十三】SGMII和1000base-X有什么异同?_第3张图片

        与MII接口相比,GMII的数据宽度由4位变为8位,GMII接口中的控制信号如TX_ER、TX_EN、RX_ER、RX_DV、CRS和COL的作用同MII接口中的一样,发送参考时钟GTX_CLK和接收参考时钟RX_CLK的频率均为125MHz(1000Mbps/8=125MHz)。

        在这里有一点需要特别说明下,那就是发送参考时钟GTX_CLK,它和MII接口中的TX_CLK是不同的,MII接口中的TX_CLK是由PHY芯片提供给MAC芯片的,而GMII接口中的GTX_CLK是由MAC芯片提供给PHY芯片的。两者方向不一样

        在实际应用中,绝大多数GMII接口都是兼容MII接口的,所以,一般的GMII接口都有两个发送参考时钟:TX_CLK和GTX_CLK(两者的方向是不一样的,前面已经说过了),在用作MII模式时,使用TX_CLK和8根数据线中的4根。

RGMII

【以太网硬件十三】SGMII和1000base-X有什么异同?_第4张图片

        RGMII即Reduced GMII,是GMII的简化版本,将接口信号线数量从24根减少到14根(COL/CRS端口状态指示信号,这里没有画出),时钟频率仍旧为125MHz,TX/RX数据宽度从8为变为4位,为了保持1000Mbps的传输速率不变,RGMII接口在时钟的上升沿和下降沿都采样数据。在参考时钟的上升沿发送GMII接口中的TXD[3:0]/RXD[3:0],在参考时钟的下降沿发送GMII接口中的TXD[7:4]/RXD[7:4]。RGMI同时也兼容100Mbps和10Mbps两种速率,此时参考时钟速率分别为25MHz和2.5MHz。

        TX_EN信号线上传送TX_EN和TX_ER两种信息,在TX_CLK的上升沿发送TX_EN,下降沿发送TX_ER;同样的,RX_DV信号线上也传送RX_DV和RX_ER两种信息,在RX_CLK的上升沿发送RX_DV,下降沿发送RX_ER。

【以太网硬件十三】SGMII和1000base-X有什么异同?_第5张图片

                SGMII

【以太网硬件十三】SGMII和1000base-X有什么异同?_第6张图片

        SGMII即Serial GMII,串行GMII,收发各一对差分信号线,时钟频率625MHz,在时钟信号的上升沿和下降沿均采样,参考时钟RX_CLK由PHY提供,是可选的,主要用于MAC侧没有时钟的情况,一般情况下,RX_CLK不使用。收发都可以从数据中恢复出时钟。

        在TXD发送的串行数据中,每8比特数据会插入TX_EN/TX_ER 两比特控制信息,同样,在RXD接收数据中,每8比特数据会插入RX_DV/RX_ER 两比特控制信息,所以总的数据速率为625Mbps*2=1.25Gbps。

        其他的MII接口类型这里不再赘述,变化的规律一般就是数据线增或减、时钟速率变化、数据单边沿或双边沿采样、控制信息合入数据线、并行转为串行传输。

        SGMII与1000base-X的异同

        1、电气特性类似,都是一对差分对,802.3规范上未查到针对这两种接口电平的规范定义,具体要求以终端芯片的数据手册要求或光模块的SFF标准为准;

        2、支持的速率不同,SGMII支持10/100/1000,1000base-X只支持1000;

        3、位置不同,SGMII是媒体独立接口,1000base-X是物理相关接口;

        4、编码不同,SGMII 1.25G是将控制信息2个bit编入8bit数据中,1000base-X的8B/10B编码是按规则增加的2bit开销。

你可能感兴趣的:(以太网硬件,网络)