以太网PHY寄存器分析【转】

转自:https://blog.csdn.net/Firefly_cjd/article/details/79825869

以太网PHY寄存器分析    1

1、以太网PHY标准寄存器分析    2

1.1 Control Register    2

1.2 Status register    5

1.3 PHY Identifier Register    8

1.4 Auto-Negotiation Advertisement Register    8

1.5 Auto-Negotiation Link Partner Base Page Ability Register    9

1.6 Auto-Negotiation Expansion Register    10

1.7 AN next page Register/AN Link Partner Received Next Page    10

1.8 MASTER-SLAVE Control Register    10

1.9 MASTER-SLAVE Status Register    12

1.10 Extended Status Register    13

2、PHY扩展寄存器分析    13

2.1 工作模式控制器    14

2.2端口驱动模式    15

2.3 预加重配置    15

2.4自动协商降格    16

2.5 Auto-Crossover配置    17

2.6 MDI信号边沿速率调整    18

2.7 错误指示寄存器    18

 

 

 

1、以太网PHY标准寄存器分析

 

PHY是IEEE802.3中定义的一个标准模块,STA(station management entity,管理实体,一般为MAC或CPU)通过SMI(Serial Manage Interface)对PHY的行为、状态进行管理和控制,而具体管理和控制动作是通过读写PHY内部的寄存器实现的。PHY寄存器的地址空间为5位,从0到31最多可以定义32个寄存器(随着芯片功能不断增加,很多PHY芯片采用分页技术来扩展地址空间以定义更多的寄存器,在此不作讨论),IEEE802.3定义了地址为0-15这16个寄存器的功能,地址16-31的寄存器留给芯片制造商自由定义,如表1所示。以下结合实际应用,对IEEE802.3定义的寄存器各项功能进行分析。

 

表1 PHY 管理寄存器集

Register address  

Register name  

Basic/Extended

MII GMII

Control  

B  

B  

Status  

B  

B  

2,3 

PHY Identifier  

E  

E  

Auto-Negotiation Advertisement  

E  

E  

Auto-Negotiation Link Partner Base Page Ability  

E  

E  

Auto-Negotiation Expansion  

E  

E  

Auto-Negotiation Next Page Transmit  

E  

E  

Auto-Negotiation Link Partner Received Next Page

E  

E  

MASTER-SLAVE Control Register  

E  

E  

10 

MASTER-SLAVE Status Register

E  

E  

11 through 14 

Reserved  

E  

E  

15 

Extended Status  

Reserved  

B  

16 through 31 

Vendor Specific  

E  

E  

 

 

1.1 Control Register

 

寄存器0是PHY控制寄存器,通过Control Register可以对PHY的主要工作状态进行设置。Control Register的每一位完成的功能见表2。

 

表2 Control Register

Bit(s)  

Name  

Description  

R/Wa 

0.15 

Reset  

1 = PHY reset 
0 = normal operation

R/W SC  

0.14 

Loopback  

1 = enable loopback mode 
0 = disable loopback mode

R/W  

0.13 

Speed Selection (LSB)  

0.6 0.13 
1 1 = Reserved 
1 0 = 1000 Mb/s 
0 1 = 100 Mb/s 
0 0 = 10 Mb/s

R/W  

0.12 

Auto-Negotiation Enable  

1 = Enable Auto-Negotiation Process 
0 = Disable Auto-Negotiation Process

R/W  

0.11 

Power Down  

1 = power down

0 = normal operation

R/W  

0.10

Isolate  

1 = electrically Isolate PHY from MII or GMII 
0 = normal operation

R/W  

0.9 

Restart Auto-Negotiation  

1 = Restart Auto-Negotiation Process 
0 = normal operation

R/W SC  

0.8 

Duplex Mode  

1 = Full Duplex 
0 = Half Duplex

R/W  

0.7 

Collision Test  

1 = enable COL signal test 
0 = disable COL signal test

R/W  

0.6 

Speed Selection (MSB)  

0.6 0.13 
1 1 = Reserved 
1 0 = 1000 Mb/s 
0 1 = 100 Mb/s 
0 0 = 10 Mb/s

R/W  

0.5:0  

Reserved  

Write as 0, ignore on Read

R/W  

 

Reset:Bit15控制的是PHY复位功能,在该位置写入1实现对PHY的复位操作。复位后该端口PHY的其他控制、状态寄存器将恢复到默认值,每次PHY复位应该在0.5s的时间内完成,复位过程中Bit15保持为1,复位完成之后该位应该自动清零。一般要改变端口的工作模式(如速率、双工、流控或协商信息等)时,在设置完相应位置的寄存器之后,需要通过Reset位复位PHY来使配置生效。

Loopback:Loopback是一个调试以及故障诊断中常用的功能,Bit14置1之后,PHY和外部MDI的连接在逻辑上将被断开,从MAC经过MII/GMII(也可能是其他的MAC/PHY接口)发送过来的数据将不会被发送到MDI上,而是在PHY内部(一般在PCS)回环到本端口的MII/GMII接收通道上,通过Loopback功能可以检查MII/GMII以及PHY接口部分是否工作正常,对于端口不通的情况可用于故障定位。需要注意的是,很多时候PHY设置Loopback后端口可能就Link down了,MAC无法向该端口发帧,这时就需要通过设置端口Force Link up才能使用Loopback功能。

案例:在S3760-12SFP/GT开发过程中,我们曾经出现过一个故障,其中有一片PHY(88E1145)对应的端口发送的帧出现CRC错误,当时这个问题的排查过程经历和很长的时间,最后得出的结论是RGMII的接口电平配置电阻焊接混料导致故障。我们姑且不去考虑这个案例实际的解决过程,在这里讨论一下如何通过Loopback功能对该问题进行定位。

首先介绍一下S3760交换部分的架构,MAC芯片为98EX126,通过RGMII接口连接到PHY芯片88E1145,MAC通过PCI管理总线连接到CPU。在这个案例中,查看88E1145的资料,其Loopback操作在PCS子层完成,两个方向的Loopback,如下图所示。第一种模式,从MAC经过RGMII发送的帧到达PCS后被Loopback到RGMII的接收通道再送回给MAC(这种模式就是上面所描述的寄存器0 Loopback位控制的Loopback模式),另一种模式,从MDI接收上来的帧到达PCS后被Loopback到MDI的发送通道,这种Loopback模式在IEEE802.3中并没有要求,但是目前常见的PHY都支持该功能。分别做这两种Loopback操作,可以发现第一种Loopback操作之后可以在MAC上检测到CRC错误,而第二种Loopback模式,用SMB从端口砸帧再Loopb

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值