【Datasheet】PHY KSZ9031千兆网络芯片解读

1、特性

具有RGMII支持的千兆以太网收发器,单芯片10/100/1000Mbps以太网收发器,适用于IEEE 802.3应用;广泛应用于网络服务器、宽带网关、IPTV、游戏主机等;

工作电压:

-内核(DVDDL、AVDDL和AVDDL_PLL)1.2V

-VDD I/O(DVDDH): 3.3V、2.5V 和1.8V

-收发器(AVDDH):3.3V或2.5V

-PHY寄存器配置的MDC/MDIO管理接口

如果在Linux中调试这款PHY芯片的驱动,首先要搞清楚芯片厂商,Micrel公司出品的芯片,后被MICROCHIP公司收购;内核路径为drivers/net/phy/micrel.c;

PHY芯片的使用介绍一下,MCU中需要自带MAC控制器,我们常说的网卡芯片封装了MAC+PHY功能,通过总线或者SPI接口给用户使用;

MAC与PHY之间如何通讯呢,PHY寄存器读写参数配置,通过MDC/MDIO来进行操作,时序为32位串行时序,一般是MAC集成;数据流通过RGMII/RMII/MII媒介接口传输;

后续会聊到PHY地址配置,MAC进行PHY的寄存器读写,首先要知道PHY的硬件地址,地址可以通过电路去配置;

【Datasheet】PHY KSZ9031千兆网络芯片解读_第1张图片

作为千兆网使用,硬件需要RGMII接口应用,提供125MHZ参考时钟信号,使用4个差分对A(引脚2和3)、B(引脚5和6)、C(引脚8和9)、D(引脚10和11);

作为百兆网,使用MII接口,25MHZ参考时钟信号,只使用差分对A和B;差分对C和D可保留为无连接;

下面是比较关键的MII管理接口(MII Management)

集成时钟线(MDC)和数据线(MDIO)的物理连接;

在上文中提到的PHY地址,每个PHY器件通过PHYAD[2:0]配置引脚0~7H之间分配唯一的地址;根据PHY地址,可对PHY寄存器进行编程;

每帧32位Bit,其中PHY寄存器为16位数据,每个寄存器固定位16位;

【Datasheet】PHY KSZ9031千兆网络芯片解读_第2张图片

MII调试技巧:读取PHY标识符寄存器,里面有固化的厂商信息,和芯片手册对比值,可验证MII通讯是否正常;

LED模块可编程设置,我们常说的链路状态和活动状态,通过软件编程可使两个灯的角色互换;

【Datasheet】PHY KSZ9031千兆网络芯片解读_第3张图片

复位电路

这款芯片的复位电路很特别,但是调试这款芯片由于硬件用错电容(偏小),导致上电芯片无法复位,内核启动流程总是寻不到芯片,记忆深刻;

【Datasheet】PHY KSZ9031千兆网络芯片解读_第4张图片

支持的PHY寄存器如下表:

【Datasheet】PHY KSZ9031千兆网络芯片解读_第5张图片

管脚图如下:

【Datasheet】PHY KSZ9031千兆网络芯片解读_第6张图片

管脚定义如下表:

【Datasheet】PHY KSZ9031千兆网络芯片解读_第7张图片

【Datasheet】PHY KSZ9031千兆网络芯片解读_第8张图片

【Datasheet】PHY KSZ9031千兆网络芯片解读_第9张图片

【Datasheet】PHY KSZ9031千兆网络芯片解读_第10张图片

【Datasheet】PHY KSZ9031千兆网络芯片解读_第11张图片

【Datasheet】PHY KSZ9031千兆网络芯片解读_第12张图片
【Datasheet】PHY KSZ9031千兆网络芯片解读_第13张图片

讲错之处欢迎批评指正,后续会分享Linux驱动调试经验;

关注微信公众号,回复ksz9031,中文芯片手册免费下载;
【Datasheet】PHY KSZ9031千兆网络芯片解读_第14张图片

你可能感兴趣的:(以太网,嵌入式,芯片,网络,内核)