设为首页 加入收藏

TOP

GMAC网卡相关介绍与分析(一)
2023-07-23 13:42:24 】 浏览:104
Tags:GMAC 卡相关

GMAC网卡相关介绍与分析


环境描述

环境

UTP

这里指MDI连接RJ45接口,UTP对网线来讲为非屏蔽双绞线。

SDS

SERDES是英文SERializer(串行器)/DESerializer(解串器)的简称 ,SerDes的主要特点包括:

1) 在数据线中时钟内嵌,不需要传送时钟信号。
2) 通过加重/均衡技术可以实现高速长距离传输,如背板。
3) 使用了较少的芯片引脚.

SGMII和FIBER都属于SDS,UTP\SDS指PHY与RJ45或光口的连接方式。MII、RGMII等表示PHY与MAC之间的硬件连接方式。

MII

本节信息来源

MII

MII

MII共16根线,数据位宽4(tx rx各4根信号线),TX_CLK RX_CLK均是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提供的。
????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根线。

RMII

RMII

RMII即 Reduced MII,是MII的简化板,共8根线,数据位宽2。

CLK_REF:是由外部时钟源提供的50MHz参考时钟,与MII接口不同,MII接口中的接收时钟和发送时钟是分开的,而且都是由PHY芯片提供给MAC芯片的。这里需要注意的是,由于数据接收时钟是由外部晶振提供而不是由载波信号提取的,所以在PHY层芯片内的数据接收部分需要设计一个FIFO,用来协调两个不同的时钟,在发送接收的数据时提供缓冲。PHY层芯片的发送部分则不需要FIFO,它直接将接收到的数据发送到MAC就可以了。

GMII

GMII

同MII,但数据位宽8位,共24根信号线,其中GTX_CLK由MAC侧提供,大多数GMII兼容MII。

RGMII

phy 如果工作在含有RGMII 接口的模式,按照业内惯例,tx clk delay 由MAC 来完成;rx clk delay 由phy 来完成。所以一般PHY芯片的rx clk delay默认是 2ns, tx clk delay默认是750ps。
来源https://blog.csdn.net/fangye945a/article/details/121109158

RGMII

RGMII即Reduced GMII,是GMII的简化版本,共14根信号线,位宽为4,该时钟上升沿下降沿均采集数据。

SGMII

SGMII

SGMII即Serial GMII,串行GMII,收发各一对差分信号线,时钟频率625MHz,在时钟信号的上升沿和下降沿均采样,参考时钟RX_CLK由PHY提供,是可选的,主要用于MAC侧没有时钟的情况,一般情况下,RX_CLK不使用。收发都可以从数据中恢复出时钟。大多数MAC芯片的SGMII接口都可以配置成SerDes接口(在物理上完全兼容,只需配置寄存器即可),直接外接光模块,而不需要PHY层芯片,此时时钟速率仍旧是625MHz。

GMAC网卡信息获取方法

获取GMAC网卡信息

 xqzhang@greatwall:~$ sudo find /sys/ -name "*stmmac*"
/sys/bus/platform/drivers/stmmaceth
/sys/bus/mdio_bus/devices/stmmac-0:04
/sys/bus/mdio_bus/drivers/Atheros 8035 ethernet/stmmac-0:04
/sys/devices/platform/FTGM0001:00/mdio_bus/stmmac-0
/sys/devices/platform/FTGM0001:00/mdio_bus/stmmac-0/stmmac-0:04
/sys/class/mdio_bus/stmmac-0
/sys/kernel/debug/stmmaceth
/sys/module/dwmac_generic/drivers/platform:stmmaceth
/sys/module/stmmac
/sys/module/stmmac/holders/stmmac_platform
/sys/module/stmmac_platform

由上述信息可知,phy驱动为Atheros 8035 ethernet,该设备为平台设备,设备目录为/sys/devices/platform/FTGM0001:00/

查看PHY工作接口模式

cat /sys/devices/platform/FTGM0001:00/mdio_bus/stmmac-0/stmmac-0:04/phy_interface
rgmii

获取PHY ID

cat /sys/devices/platform/FTG
首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇less,more,vi命令光标移动快捷.. 下一篇centOS中安装docker

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目