Linux内核驱动之网络驱动(4)PHY芯片分析

来源:互联网 发布:绩效软件 编辑:程序博客网 时间:2024/05/21 10:24

一 以太网PHY芯片RTL8201CP分析

RTL8201CP是一个单端口的物理层收发器, 只有一个MII接口,

它可以通过网络变压器YL18-2050S或YT37-1107S接RJ45来实现全部的10/100M以太网物理层功能

 

由上图分析RTL8201的引脚主要分为:

MII接口引脚,MDI接口引脚,自身配置引脚,电源引脚。

下面着重分析一下它的自身配置引脚

时钟晶振电路:由于最高支持百兆PHY所以需要输入25MHZ晶振

 

PHYADDn/LEDn等5个引脚用来配置PHY芯片的地址和需要输出的网口灯. 在PHY芯片中管脚复用都比较普遍,都是分时使用:

上电复位时用作输入引脚,复位结束后作为输出引脚。

PHYADD[4:0]上电复位时用作PHY address,复位结束后用作LED输出管脚.从电路分析PHYADD0是高电平,PHYADD1 – PHYADD4都是低电平,很明显PHY芯片的地址是0x01

复位结束后作为输出的网口灯.从datasheet知道:

PHYADD[4:0]上电时被拉高则稍后输出低电平,反之则输出高电平.

所以复位结束后NET_LED0输出高电平,其它都输出低电平

LED0代表Link LED,LED1代表Full Duplex LED,

LED2代表10M ACT LED,LED3代表100M ACT LED,LED5代表Collision LED


从上图也可以分析出来LED0此时为低电平,LED3为高电平,这样LED才会正常显示.同时当Link 是通着时候LED0会亮,

当有数据传输时候LED3会亮

功能配置引脚从图中可以看到MII,SPEED,DUPLEX,ANE引脚都为高电平表示RTL8201使用MII模式,使用全双工100M,以及自动协商能力

ISOLATE,LDPS,PRTR引脚都是低电平

二 以太网PHY芯片ET1011C分析

ET1011C是一个1000M网络传输芯片,支持MII,GMII,RGMII,

TBI,RTBI等接口与MAC相连,下图是使用GMII与MAC相连的原理图


对于PHY芯片来说一般都是4种类型的管脚

MII接口引脚,MDI接口引脚,自身配置引脚,电源引脚。

由于使用GMII接口,所以左上图24个管脚都是GMII接口

右上角都是MDI接口,连接到RJ45的以太网口

ET1011C的配置引脚主要是MAC_IF_SEL[2:0],PHYADDR[n],还有其他SPEED_1000,PAUSE等引脚.

对于上述配置引脚都有存在内部上拉或者下拉,当然也可以通过外部电路上拉下拉改变。比如MAC_IF_SEL[2:0] = 000(默认全部下拉)

PHYADDR[4:0] = 00001

 

当使用GMII/MII接口时MAC_IF_SEL[2:0] = 000

当使用RGMII接口时MAC_IF_SEL[2:0] = 100 / 110

当使用TBI接口时MAC_IF_SEL[2:0] = 001

当使用RTBI接口时MAC_IF_SEL[2:0] = 101 / 111

 

PHYADDR[4:0]在上电复位时作为输入表示PHY芯片的地址

上电复位结束后PHYADDR[0]和PHYADDR[1]用作LED_100

LED_TXRX输出。上述两个LED引脚默认是关闭状态,需要编辑

寄存器28来配置LED_100和LED_TXRX的LED灯意义。

 

SPEED_1000和PAUSE引脚在上电复位时作为输入引脚。

芯片内部将SPEED_1000上拉,PAUSE下拉

上电复位结束后SPEED_1000用来作为LED灯,默认打开,表示LED_1000。PAUSE也用来做LED等,默认打开,表示LED_LINK

当然该LED引脚输出的LED功能也可以通过寄存器28进行修改

 

转载,请注明 匠牛社区AM5728开发板


0 0