SlideShare a Scribd company logo
1 of 24
以太网标准寄存器和计数器详解
作者:李西昆
PHY里面的标准寄存器列表
IEEE定义了12个标准寄存器,在每个PHY中都必须含有这些寄存器,并且地址必须符合
规范。这些寄存器在我们网口调试中经常被用到,其列表如下:
 Control Register
 Status Register
 PHY ID Register0
 PHY ID Register1
 AN Advertise Register
 AN Link Partner Ability Register
 AN Expansion Register
 AN Next Page Transmit Register
 AN Link Partner Next Page Register
 AN 1000Base-T Control Register
 AN 1000Base-T Status Register
 Extended Status Register
 地址:0x0
 地址: 0x1
 地址: 0x2
 地址: 0x3
 地址: 0x4
 地址: 0x5
 地址: 0x6
 地址: 0x7
 地址: 0x8
 地址: 0x9
 地址: 0xA
 地址: 0xF
Control Register---1
Page 3
 Control Register是读写寄存器,控制PHY的基本功能,是最重要寄存器
 Bit[5:0]:Reserved,不用管
 Bit[6]:Bit[13]: Link Speed控制,当自协商关闭(Bit[12]=0)的时候,用来设置Link速
率,;当自协商打开时,此2bit不起作用。
 Bit[6]:Bit[13]=00 :10M
 Bit[6]:Bit[13]=01 :100M
 Bit[6]:Bit[13]=10 :1000M
 Bit[6]:Bit[13]=11 :Reserved
如果想强制PHY的工作速率时,可以配置此Bit位,注意要先关闭自协商。
 Bit[7]:冲突测试,设置为1时只有发送就认为有冲突(拉高COL信号),正常工作时
为0。此Bit一般用不到。
 Bit[8]:双工控制,当自协商关闭(Bit[12]=0)的时候,设置双工状态(1:全双工;0:半双工
); 当自协商打开时,此bit不起作用。如果想强制双工状态,可以设置此Bit
 Bit[9]:重新自协商控制, 当自协商打开时(Bit[12]=1) ,将此Bit置1会强制触发一次自
协商操作;然后此Bit会自动清零。当自协商关闭时,此Bit不起作用。如果修改了自
协商设置,可以通过此Bit刷新自协商。(更省事的方法是拔插一下网线)
Control Register--2
Page 4
 Bit[10]:隔离控制,当此Bit置1时,PHY接口信号都停止工作。正常工作时应为0,
一般不会用到。
 Bit[11]: PowerDown,设置此Bit进入节电模式,一般用不到。
 Bit[12]:自协商使能,当此Bit=1时,使能自协商,速度/双工由根据自协商结果决定
,当此Bit=0时,自协商关闭,速度/双工由Bit[6],Bit[13]和Bit[8]决定。
 Bit[14]: 环回控制,当此Bit=1时,PHY被环回,MAC送来的数据被环回给MAC,无
论网线是否连接,PHY都保持LinkUp。在定位问题时可以用这个Bit。
 Bit[15]: 软复位,写入1后PHY被复位,然后此Bit自动被清零。注意:一些PHY中的
某些寄存器被修改后,需要软复位一下才能起作用(比如88E1111的模式控制)。
Status Register---1
Page 5
 Status Register是只读寄存器,反映PHY的基本状态,是最重要的寄存器。
 Bit[0]:扩展能力位,此Bit没什么用,不用管
 Bit[1]: Jabber状态,如果为1,表示检测到了Jabber状态(Jabber就是接受端一直接
收到没有间隔载波信号,是一种故障状态)。正常情况应该为0
 Bit[2]: Link状态,如果为1,表示LinkUp;如果为0,表示LinkDown。此Bit通常为
粘性(Sticky或Latch)Bit,要读2次才能读到当前状态值。这是最常用的Bit。
 Bit[3]: 自协商能力位,一般都固定为1,表示支持自协商,没什么用。
 Bit[4]: 远端故障位,如果为1,表示出现远端故障(即本端接收正常,但对方接收不正
常,只有自协商打开时,此Bit才有意义),正常情况下为0。一般也是粘性bit。
 Bit[5]: 自协商完成位,当PHY成功完成了一次自协商操作后,此Bit被置1。只有自协
商打开时,此bit才有意义。需要注意的是,如果成功完成了并行检测,此Bit也会被
置为1。
 Bit[6]: 管理帧前导码抑制能力,一般都为1,表示可以接受SMI接口上的MDIO帧前
导码1的个数少于32个。一般不用管。
 Bit[7]: Reserved,不用管。
Status Register---2
Page 6
 Bit[8]:扩展状态支持,一般都为1,基本用不到。
 Bit[10:9]: 100Base-T2能力,固定为0,表示不支持全双工或半双工的100Base-T2
 Bit[12:11]: 10Base-T能力,固定为1,表示支持全双工和半双工的10Base-T,如果
是光口则固定为0)
 Bit[14:13]: 100Base-Tx能力,固定为1,表示支持全双工和半双工的100Base-Tx
10Base-T,如果是光口则固定为0
 Bit[15]: 100Base-T4能力,固定为0,表示不支持100Base-T4
PHY ID Register
Page 7
 地址为0x2和0x3的2个PHY ID Register是只读寄存器,保存着芯片ID信息。
 在一种型号的PHY芯片中,这2个寄存器内容固定不变。软件可以用来判断PHY的器
件型号。
 因为内容固定不变,可以用来测试SMI接口的读操作是否有效。
AN Advertise Register---1(电口)
Page 8
 AN Advertise Register是读写寄存器,控制PHY发出去的自协商信息。只有自
协商使能时,此寄存器才起作用。此寄存器在电口和光口上内容不一样。电口的
寄存器含义如下:
 Bit[4:0]:Selector域,固定为00001,不用去管
 Bit[5]: 10Base-T半双工能力位,为1时告知对方本端支持10M半双工,为0时,表示
不支持10M半双工。
 Bit[6]: 10Base-T全双工能力位,为1时告知对方本端支持10M全双工,为0时,表示
不支持10M全双工
 Bit[7]: 100Base-Tx半双工能力位,为1时告知对方本端支持100M半双工,为0时,
表示不支持100M半双工
 Bit[8]: 100Base-Tx全双工能力位,为1时告知对方本端支持100M全双工,为0时,
表示不支持100M全双工
 Bit[9]: 100Base-T4能力位,固定为0,告知对方本端不支持100Base-T4能力。
 Bit[10]: Pause能力位,为1时告知对方本端支持Pause流控帧,为0时,表示不支持
Pause流控帧
AN Advertise Register---2(电口)
Page 9
 Bit[11]: 非对称Pause能力位,为1时告知对方本端支持非对称Pause流控机制,为0
时,表示不支持非对称Pause流控机制
 Bit[12]: 保留位,不用管。
 Bit[13]: 远端故障位,此bit=1时,告知对方本端出现接收故障。正常工作时不用此
Bit,保持此Bit=0。
 Bit[14]: ACK,确认bit,固定为0,用不到。因为自协商信息帧中的ACK位由PHY的
硬件自己维护,不需要软件干预。
 Bit[15]: 下一页能力,此bit=1时,告知对方本端有自协商下一页能力。正常工作时
不用此Bit,保持此Bit的缺省值即可。注意:虽然1000Base-T自协商需要使用下一页
机制,但是一般PHY在支持1000Base-T时,自动启用下一页能力,而不管此Bit是否
为1.
AN Advertise Register---3(光口)
Page 10
 如果是光口, AN Advertise Register寄存器含义如下:
 Bit[4:0]:保留位,内容不用关注
 Bit[5]: 1000Base-X全双工能力位,为1时告知对方本端支持1000Base-X全双工,为
0时,表示不支持1000Base-X全双工。
 Bit[6]: 1000Base-X半双工能力位,为1时告知对方本端支持1000Base-X半双工,为
0时,表示不支持1000Base-X半双工
 Bit[7]: Pause能力位,为1时告知对方本端支持Pause流控帧,为0时,表示不支持
Pause流控帧
 Bit[8]: 非对称Pause能力位,为1时告知对方本端支持非对称Pause流控机制,为0时
,表示不支持非对称Pause流控机制
 Bit[10:9]: 保留位,不用管
AN Advertise Register---4 (光口)
Page 11
 Bit[13:12]: 远端故障指示位,此bit不为00时,告知对方本端出现接收故障
。正常工作时不用此Bit,保持此Bit=00。
 Bit[14]: ACK,确认bit,固定为0,用不到。因为自协商信息帧中的ACK位
由PHY的硬件自己维护,不需要软件干预。
 Bit[15]: 下一页能力,此bit=1时,告知对方本端有自协商下一页能力。
1000Base-X自协商不用下一页,所以应该保持此Bit为0
AN Link Partner Ability Register—1(电口)
Page 12
 AN Link Partner Ability Register 是只读寄存器,反映PHY接收到的自协商信
息。只有自协商使能时,此寄存器才起作用。当自协商交换没有完成时,此寄存
器内容为0x0000。对于电口和光口,此寄存器的内容不一样。电口的内容如下:
 Bit[4:0]:Selector域,固定为00000,不用去管
 Bit[5]: 10Base-T半双工能力位,为1时表示对方支持10M半双工,为0时,表示对方
不支持10M半双工。
 Bit[6]: 10Base-T全双工能力位,为1时表示对方支持10M全双工,为0时,表示对方
不支持10M全双工
 Bit[7]: 100Base-Tx半双工能力位,为1时表示对方支持100M半双工,为0时,表示
对方不支持100M半双工
 Bit[8]: 100Base-Tx全双工能力位,为1时表示对方支持100M全双工,为0时,表示
对方不支持100M全双工
 Bit[9]: 100Base-T4能力位,固定为0,表示对方不支持100Base-T4能力。
 Bit[10]: Pause能力位,为1时表示对方支持Pause流控帧,为0时,表示对方不支持
Pause流控帧
AN Link Partner Ability Register—2(电口)
Page 13
 Bit[11]: 非对称Pause能力位,为1时表示对方支持非对称Pause流控机制,为0时,
表示对方不支持非对称Pause流控机制
 Bit[12]: 保留位,不用管。
 Bit[13]: 远端故障位,此bit=1时,表示对方出现接收故障。为0时,表示对方没有接
收故障。
 Bit[14]: ACK,确认bit,为1时表示对方接收到本端发送的自协商信息,为0时表示对
方没有接收到本端的自协商信息。
 Bit[15]: 下一页能力,此bit=1时,表示对方有自协商下一页能力。此bit=0时,表示
对方没有自协商下一页能力。当自协商1000Base-T时,此Bit必须为1。
AN Link Partner Ability Register—3(光口)
Page 14
 光口的AN Link Partner Ability Register 寄存器内容如下:
 Bit[4:0]:保留位,固定为00000,不用去管
 Bit[5]: 1000Base-X全双工能力位,为1时表示对方支持1000Base-X全双工,为0时
,表示对方不支持1000Base-X全双工
 Bit[6]: 1000Base-X半双工能力位,为1时表示对方支持1000Base-X半双工,为0时
,表示对方不支持10000Base-X半双工。
 Bit[7]: Pause能力位,为1时表示对方支持Pause流控帧,为0时,表示对方不支持
Pause流控帧
 Bit[8]: 非对称Pause能力位,为1时表示对方支持非对称Pause流控机制,为0时,表
示对方不支持非对称Pause流控机制
 Bit[11:9]: 保留位,不用管。
AN Link Partner Ability Register—4(光口)
Page 15
 Bit[13:12]: 远端故障位,此bit不为00时,表示对方出现接收故障。
 00: 无故障
 01: 链路故障,表示对方接收端接收不到信号
 10: 离线,表示对方一切正常,但主动要求离线。
 11: 自协商错误,表示对方能接收到信号,但无法完成自协商。
 Bit[14]: ACK,确认bit,为1时表示对方接收到本端发送的自协商信息,为0时表示对
方没有接收到本端的自协商信息。
 Bit[15]: 下一页能力,此bit=1时,表示对方有自协商下一页能力。此bit=0时,表示
对方没有自协商下一页能力。因为1000Base-X不需要下一页,此Bit为0为1都没有关
系。
AN Expansion Register
Page 16
 AN Expansion Register 是只读寄存器,反应自协商结果和状态。只有自协商
使能时,此寄存器才有意义。
 Bit[0]:对方的自协商能力位,1表示对方支持自协商,0表示对方不支持自协商。
此Bit的作用:如果是通过并行检测建立的Link,即使对方没有自协商能力,AN Link
Partner Ability寄存器也不为0。此时需要通过此Bit判断是通过自协商建立的Link还
是并行检测建立的Link。
 Bit[1]: 自协商信息页接收指示,为1表示接收到了自协商信息页。为0表示没有接收
到信息页。
 Bit[2]: 自协商下一页能力,为1表示本端支持下一页,为0表示不支持下一页。
 Bit[3]:对方自协商下一页能力,为1表示对方支持下一页,为0表示对方不支持下一页
 Bit[4]:并行检测故障,为1表示并行检测过程中出现错误,为0表示并行检测过程没有
发现错误。此Bit只有PHY使用并行检测时才有意义。
 Bit[15:5]: 保留位。不关心。
AN Next Page Transmit Register
AN Link Partner Next Page Register
Page 17
 本端/对方自协商下一页寄存器
 这2个寄存器基本没什么用处,可以不关心。
AN 1000Base-T Control Register---1
Page 18
 AN 1000Base-T Control Register是读写寄存器,控制1000Base-T的自协商。
只有自协商使能,且PHY支持1000Base-T时,此寄存器才有意义。
 Bit[7:0]: 保留位,不用关心。
 Bit[8]: 1000Base-T半双工能力位,为1时告知对方本端支持1000Base-T半双工,为
0时告知对方本端不支持1000Base-T半双工。
 Bit[9]: 1000Base-T全双工能力位,为1时告知对方本端支持1000Base-T全双工,为
0时告知对方本端不支持1000Base-T全双工。
 Bit[10]: 端口类型:为1时表示本端是多端口设备,期望被设置成Mater;为0时表示
本端为单端口设备,期望被设置成Slave。主从设置只存在于1000Base-T自协商中,
双绞线上的线路时钟由Master端提供,Slave跟随Mater的线路时钟。
 Bit[11]: 手工主从设置:1表示本端被手工设置成Master,为0表示本端被手工设置成
Slave,只有手工主从设置被使能(bit[12]=1)时,此Bit才起作用。
 Bit[12]: 自动/手工主从设置:1表示手工主从设置,自协商主从状态由Bit[11]的值决
定;0表示自动主从设置,自协商主从状态靠双方协商自动决定。
AN 1000Base-T Control Register---2
Page 19
 Bit[15:13]: 1000Base-T测试模式控制。因为1000Base-T在每对双绞线上跑的都是双向
信号,做以太网一致性测试时无法区分是哪一端发出的信号。因此测试时需要让PHY进入
特殊的测试模式,使PHY发送固定的波形以测试一致性。正常工作时应该置为000
 000:正常工作模式 001:测试模式1 010:测试模式2
 011:测试模式3 100:测试模式4 其他:保留
测试模式1的波形 测试模式2、3的波形
测试模式4的波形
AN 1000Base-T Status Register
Page 20
 AN 1000Base-T Status Register是只读寄存器,反映1000Base-T的自协商状
态。只有自协商使能,且PHY支持1000Base-T时,此寄存器才有意义。当自协
商未完成时,此寄存器为0x0000
 Bit[7:0]: Idle错误计数器,不用关心。
 Bit[9:8]: 保留位,不用关心
 Bit[10]:对方1000Base-T半双工能力位,为1时表示对方支持1000Base-T半双工,为
0时表示对方不支持1000Base-T半双工。
 Bit[11]:对方1000Base-T全双工能力位,为1时表示对方支持1000Base-T全双工,为
0时表示对方不支持1000Base-T全双工。
 Bit[12]:对方接收状态:为1时对方接收正常,为0表示对方接收故障。
 Bit[13]: 本端接收状态:1表示本端接收正常,为0表示本端接收故障。
 Bit[14]:主从状态:1表示本端为Master状态,为0表示本端为Slave状态
 Bit[15]:主从状态错误:为1表示主从协商出错(比如两端都受过设置成Master或都设
置成Slave);为0表示主从协商正常。
MAC里面的标准以太网计数器
IEEE定义了一些以太网统计计数器,所有的MAC都必须支持这些标准计数器。
 InGoodOctets
 InGoodFrame
 InBadOctets
 InBadFrame
 InUniCast
 InBroadCast
 InMultiCast
 InPause
 InUnderSize
 InOverSize
 InFragments
 InJabber
 InRxErr
 InFCSErr
 OutGoodOctets
 OutGoodFrame
 Collisions
 Dropped
错误计数器的含义---1
像GoodFrame、GoodOctets等计数器的含义很好理解,下面解释一下其他的错误计数
器的含义:
 InUnderSize:
 有正确的帧结构(前导码、SFD、FCS),FCS正确,但长度不足64Byte的报文。正常情况
下应该为0。此计数器一般和硬件信号质量无关。
 InOverSize
 有正确的帧结构(前导码、SFD、FCS), FCS正确,但长度超过15122Byte或设定长度,
且小于Jabber标准的报文。正常情况下应该为0。此计数器一般和硬件信号质量无关。
 InFragments
 没有正确帧结构的报文,正常情况下应该为0,如果为非零,表示硬件信号质量有问题。
 InJabber
 远超过最大报文长度的帧(帧发送时间超过20ms或设定值)。在最初的共享媒体以太网设
备(如HUB)中,Jabber是非常严重的错误,发现某个端口出现Jabber后要马上隔离该端口。
但在现在的以太网设备上,因为不再是共享媒体机制,Jabber已经很少关注了。
 正常情况下应该为0。如果为非0,可能和硬件信号质量相关
错误计数器的含义---2
 InRxErr
 如果PHY集成在MAC中,此错误表示符号错误;比如8B/10B编码的PCS层,接收到了非法
的10B符号。正常情况下应该为0,如果为非零,表示硬件信号质量有问题。
 InFCSErr
 有正确的帧结构和正确的长度,但FCS(CRC校验)出错的报文。正常情况下应该为0,如果为
非零,表示硬件信号质量有问题。
 Collision
 当端口处于半双工时,发生冲突的次数。全双工情况下,应该为0。
 Dropped
 已经正确接收到MAC中,但因为申请不到Buffer或者队列满而被丢弃的报文。正确情况下也
可能为非0,此计数器一般和硬件信号质量无关。
 BadFrame
 指的是UnderSize、OverSize、Fragments、FCSErr的总和,正常情况下应该为0,如果不
为0,仔细检查各个错误计数器的统计。
谢谢!

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

以太网标准寄存器和计数器详解-100MBPS Register and 1000BASE-T1.ppt

  • 2. PHY里面的标准寄存器列表 IEEE定义了12个标准寄存器,在每个PHY中都必须含有这些寄存器,并且地址必须符合 规范。这些寄存器在我们网口调试中经常被用到,其列表如下:  Control Register  Status Register  PHY ID Register0  PHY ID Register1  AN Advertise Register  AN Link Partner Ability Register  AN Expansion Register  AN Next Page Transmit Register  AN Link Partner Next Page Register  AN 1000Base-T Control Register  AN 1000Base-T Status Register  Extended Status Register  地址:0x0  地址: 0x1  地址: 0x2  地址: 0x3  地址: 0x4  地址: 0x5  地址: 0x6  地址: 0x7  地址: 0x8  地址: 0x9  地址: 0xA  地址: 0xF
  • 3. Control Register---1 Page 3  Control Register是读写寄存器,控制PHY的基本功能,是最重要寄存器  Bit[5:0]:Reserved,不用管  Bit[6]:Bit[13]: Link Speed控制,当自协商关闭(Bit[12]=0)的时候,用来设置Link速 率,;当自协商打开时,此2bit不起作用。  Bit[6]:Bit[13]=00 :10M  Bit[6]:Bit[13]=01 :100M  Bit[6]:Bit[13]=10 :1000M  Bit[6]:Bit[13]=11 :Reserved 如果想强制PHY的工作速率时,可以配置此Bit位,注意要先关闭自协商。  Bit[7]:冲突测试,设置为1时只有发送就认为有冲突(拉高COL信号),正常工作时 为0。此Bit一般用不到。  Bit[8]:双工控制,当自协商关闭(Bit[12]=0)的时候,设置双工状态(1:全双工;0:半双工 ); 当自协商打开时,此bit不起作用。如果想强制双工状态,可以设置此Bit  Bit[9]:重新自协商控制, 当自协商打开时(Bit[12]=1) ,将此Bit置1会强制触发一次自 协商操作;然后此Bit会自动清零。当自协商关闭时,此Bit不起作用。如果修改了自 协商设置,可以通过此Bit刷新自协商。(更省事的方法是拔插一下网线)
  • 4. Control Register--2 Page 4  Bit[10]:隔离控制,当此Bit置1时,PHY接口信号都停止工作。正常工作时应为0, 一般不会用到。  Bit[11]: PowerDown,设置此Bit进入节电模式,一般用不到。  Bit[12]:自协商使能,当此Bit=1时,使能自协商,速度/双工由根据自协商结果决定 ,当此Bit=0时,自协商关闭,速度/双工由Bit[6],Bit[13]和Bit[8]决定。  Bit[14]: 环回控制,当此Bit=1时,PHY被环回,MAC送来的数据被环回给MAC,无 论网线是否连接,PHY都保持LinkUp。在定位问题时可以用这个Bit。  Bit[15]: 软复位,写入1后PHY被复位,然后此Bit自动被清零。注意:一些PHY中的 某些寄存器被修改后,需要软复位一下才能起作用(比如88E1111的模式控制)。
  • 5. Status Register---1 Page 5  Status Register是只读寄存器,反映PHY的基本状态,是最重要的寄存器。  Bit[0]:扩展能力位,此Bit没什么用,不用管  Bit[1]: Jabber状态,如果为1,表示检测到了Jabber状态(Jabber就是接受端一直接 收到没有间隔载波信号,是一种故障状态)。正常情况应该为0  Bit[2]: Link状态,如果为1,表示LinkUp;如果为0,表示LinkDown。此Bit通常为 粘性(Sticky或Latch)Bit,要读2次才能读到当前状态值。这是最常用的Bit。  Bit[3]: 自协商能力位,一般都固定为1,表示支持自协商,没什么用。  Bit[4]: 远端故障位,如果为1,表示出现远端故障(即本端接收正常,但对方接收不正 常,只有自协商打开时,此Bit才有意义),正常情况下为0。一般也是粘性bit。  Bit[5]: 自协商完成位,当PHY成功完成了一次自协商操作后,此Bit被置1。只有自协 商打开时,此bit才有意义。需要注意的是,如果成功完成了并行检测,此Bit也会被 置为1。  Bit[6]: 管理帧前导码抑制能力,一般都为1,表示可以接受SMI接口上的MDIO帧前 导码1的个数少于32个。一般不用管。  Bit[7]: Reserved,不用管。
  • 6. Status Register---2 Page 6  Bit[8]:扩展状态支持,一般都为1,基本用不到。  Bit[10:9]: 100Base-T2能力,固定为0,表示不支持全双工或半双工的100Base-T2  Bit[12:11]: 10Base-T能力,固定为1,表示支持全双工和半双工的10Base-T,如果 是光口则固定为0)  Bit[14:13]: 100Base-Tx能力,固定为1,表示支持全双工和半双工的100Base-Tx 10Base-T,如果是光口则固定为0  Bit[15]: 100Base-T4能力,固定为0,表示不支持100Base-T4
  • 7. PHY ID Register Page 7  地址为0x2和0x3的2个PHY ID Register是只读寄存器,保存着芯片ID信息。  在一种型号的PHY芯片中,这2个寄存器内容固定不变。软件可以用来判断PHY的器 件型号。  因为内容固定不变,可以用来测试SMI接口的读操作是否有效。
  • 8. AN Advertise Register---1(电口) Page 8  AN Advertise Register是读写寄存器,控制PHY发出去的自协商信息。只有自 协商使能时,此寄存器才起作用。此寄存器在电口和光口上内容不一样。电口的 寄存器含义如下:  Bit[4:0]:Selector域,固定为00001,不用去管  Bit[5]: 10Base-T半双工能力位,为1时告知对方本端支持10M半双工,为0时,表示 不支持10M半双工。  Bit[6]: 10Base-T全双工能力位,为1时告知对方本端支持10M全双工,为0时,表示 不支持10M全双工  Bit[7]: 100Base-Tx半双工能力位,为1时告知对方本端支持100M半双工,为0时, 表示不支持100M半双工  Bit[8]: 100Base-Tx全双工能力位,为1时告知对方本端支持100M全双工,为0时, 表示不支持100M全双工  Bit[9]: 100Base-T4能力位,固定为0,告知对方本端不支持100Base-T4能力。  Bit[10]: Pause能力位,为1时告知对方本端支持Pause流控帧,为0时,表示不支持 Pause流控帧
  • 9. AN Advertise Register---2(电口) Page 9  Bit[11]: 非对称Pause能力位,为1时告知对方本端支持非对称Pause流控机制,为0 时,表示不支持非对称Pause流控机制  Bit[12]: 保留位,不用管。  Bit[13]: 远端故障位,此bit=1时,告知对方本端出现接收故障。正常工作时不用此 Bit,保持此Bit=0。  Bit[14]: ACK,确认bit,固定为0,用不到。因为自协商信息帧中的ACK位由PHY的 硬件自己维护,不需要软件干预。  Bit[15]: 下一页能力,此bit=1时,告知对方本端有自协商下一页能力。正常工作时 不用此Bit,保持此Bit的缺省值即可。注意:虽然1000Base-T自协商需要使用下一页 机制,但是一般PHY在支持1000Base-T时,自动启用下一页能力,而不管此Bit是否 为1.
  • 10. AN Advertise Register---3(光口) Page 10  如果是光口, AN Advertise Register寄存器含义如下:  Bit[4:0]:保留位,内容不用关注  Bit[5]: 1000Base-X全双工能力位,为1时告知对方本端支持1000Base-X全双工,为 0时,表示不支持1000Base-X全双工。  Bit[6]: 1000Base-X半双工能力位,为1时告知对方本端支持1000Base-X半双工,为 0时,表示不支持1000Base-X半双工  Bit[7]: Pause能力位,为1时告知对方本端支持Pause流控帧,为0时,表示不支持 Pause流控帧  Bit[8]: 非对称Pause能力位,为1时告知对方本端支持非对称Pause流控机制,为0时 ,表示不支持非对称Pause流控机制  Bit[10:9]: 保留位,不用管
  • 11. AN Advertise Register---4 (光口) Page 11  Bit[13:12]: 远端故障指示位,此bit不为00时,告知对方本端出现接收故障 。正常工作时不用此Bit,保持此Bit=00。  Bit[14]: ACK,确认bit,固定为0,用不到。因为自协商信息帧中的ACK位 由PHY的硬件自己维护,不需要软件干预。  Bit[15]: 下一页能力,此bit=1时,告知对方本端有自协商下一页能力。 1000Base-X自协商不用下一页,所以应该保持此Bit为0
  • 12. AN Link Partner Ability Register—1(电口) Page 12  AN Link Partner Ability Register 是只读寄存器,反映PHY接收到的自协商信 息。只有自协商使能时,此寄存器才起作用。当自协商交换没有完成时,此寄存 器内容为0x0000。对于电口和光口,此寄存器的内容不一样。电口的内容如下:  Bit[4:0]:Selector域,固定为00000,不用去管  Bit[5]: 10Base-T半双工能力位,为1时表示对方支持10M半双工,为0时,表示对方 不支持10M半双工。  Bit[6]: 10Base-T全双工能力位,为1时表示对方支持10M全双工,为0时,表示对方 不支持10M全双工  Bit[7]: 100Base-Tx半双工能力位,为1时表示对方支持100M半双工,为0时,表示 对方不支持100M半双工  Bit[8]: 100Base-Tx全双工能力位,为1时表示对方支持100M全双工,为0时,表示 对方不支持100M全双工  Bit[9]: 100Base-T4能力位,固定为0,表示对方不支持100Base-T4能力。  Bit[10]: Pause能力位,为1时表示对方支持Pause流控帧,为0时,表示对方不支持 Pause流控帧
  • 13. AN Link Partner Ability Register—2(电口) Page 13  Bit[11]: 非对称Pause能力位,为1时表示对方支持非对称Pause流控机制,为0时, 表示对方不支持非对称Pause流控机制  Bit[12]: 保留位,不用管。  Bit[13]: 远端故障位,此bit=1时,表示对方出现接收故障。为0时,表示对方没有接 收故障。  Bit[14]: ACK,确认bit,为1时表示对方接收到本端发送的自协商信息,为0时表示对 方没有接收到本端的自协商信息。  Bit[15]: 下一页能力,此bit=1时,表示对方有自协商下一页能力。此bit=0时,表示 对方没有自协商下一页能力。当自协商1000Base-T时,此Bit必须为1。
  • 14. AN Link Partner Ability Register—3(光口) Page 14  光口的AN Link Partner Ability Register 寄存器内容如下:  Bit[4:0]:保留位,固定为00000,不用去管  Bit[5]: 1000Base-X全双工能力位,为1时表示对方支持1000Base-X全双工,为0时 ,表示对方不支持1000Base-X全双工  Bit[6]: 1000Base-X半双工能力位,为1时表示对方支持1000Base-X半双工,为0时 ,表示对方不支持10000Base-X半双工。  Bit[7]: Pause能力位,为1时表示对方支持Pause流控帧,为0时,表示对方不支持 Pause流控帧  Bit[8]: 非对称Pause能力位,为1时表示对方支持非对称Pause流控机制,为0时,表 示对方不支持非对称Pause流控机制  Bit[11:9]: 保留位,不用管。
  • 15. AN Link Partner Ability Register—4(光口) Page 15  Bit[13:12]: 远端故障位,此bit不为00时,表示对方出现接收故障。  00: 无故障  01: 链路故障,表示对方接收端接收不到信号  10: 离线,表示对方一切正常,但主动要求离线。  11: 自协商错误,表示对方能接收到信号,但无法完成自协商。  Bit[14]: ACK,确认bit,为1时表示对方接收到本端发送的自协商信息,为0时表示对 方没有接收到本端的自协商信息。  Bit[15]: 下一页能力,此bit=1时,表示对方有自协商下一页能力。此bit=0时,表示 对方没有自协商下一页能力。因为1000Base-X不需要下一页,此Bit为0为1都没有关 系。
  • 16. AN Expansion Register Page 16  AN Expansion Register 是只读寄存器,反应自协商结果和状态。只有自协商 使能时,此寄存器才有意义。  Bit[0]:对方的自协商能力位,1表示对方支持自协商,0表示对方不支持自协商。 此Bit的作用:如果是通过并行检测建立的Link,即使对方没有自协商能力,AN Link Partner Ability寄存器也不为0。此时需要通过此Bit判断是通过自协商建立的Link还 是并行检测建立的Link。  Bit[1]: 自协商信息页接收指示,为1表示接收到了自协商信息页。为0表示没有接收 到信息页。  Bit[2]: 自协商下一页能力,为1表示本端支持下一页,为0表示不支持下一页。  Bit[3]:对方自协商下一页能力,为1表示对方支持下一页,为0表示对方不支持下一页  Bit[4]:并行检测故障,为1表示并行检测过程中出现错误,为0表示并行检测过程没有 发现错误。此Bit只有PHY使用并行检测时才有意义。  Bit[15:5]: 保留位。不关心。
  • 17. AN Next Page Transmit Register AN Link Partner Next Page Register Page 17  本端/对方自协商下一页寄存器  这2个寄存器基本没什么用处,可以不关心。
  • 18. AN 1000Base-T Control Register---1 Page 18  AN 1000Base-T Control Register是读写寄存器,控制1000Base-T的自协商。 只有自协商使能,且PHY支持1000Base-T时,此寄存器才有意义。  Bit[7:0]: 保留位,不用关心。  Bit[8]: 1000Base-T半双工能力位,为1时告知对方本端支持1000Base-T半双工,为 0时告知对方本端不支持1000Base-T半双工。  Bit[9]: 1000Base-T全双工能力位,为1时告知对方本端支持1000Base-T全双工,为 0时告知对方本端不支持1000Base-T全双工。  Bit[10]: 端口类型:为1时表示本端是多端口设备,期望被设置成Mater;为0时表示 本端为单端口设备,期望被设置成Slave。主从设置只存在于1000Base-T自协商中, 双绞线上的线路时钟由Master端提供,Slave跟随Mater的线路时钟。  Bit[11]: 手工主从设置:1表示本端被手工设置成Master,为0表示本端被手工设置成 Slave,只有手工主从设置被使能(bit[12]=1)时,此Bit才起作用。  Bit[12]: 自动/手工主从设置:1表示手工主从设置,自协商主从状态由Bit[11]的值决 定;0表示自动主从设置,自协商主从状态靠双方协商自动决定。
  • 19. AN 1000Base-T Control Register---2 Page 19  Bit[15:13]: 1000Base-T测试模式控制。因为1000Base-T在每对双绞线上跑的都是双向 信号,做以太网一致性测试时无法区分是哪一端发出的信号。因此测试时需要让PHY进入 特殊的测试模式,使PHY发送固定的波形以测试一致性。正常工作时应该置为000  000:正常工作模式 001:测试模式1 010:测试模式2  011:测试模式3 100:测试模式4 其他:保留 测试模式1的波形 测试模式2、3的波形 测试模式4的波形
  • 20. AN 1000Base-T Status Register Page 20  AN 1000Base-T Status Register是只读寄存器,反映1000Base-T的自协商状 态。只有自协商使能,且PHY支持1000Base-T时,此寄存器才有意义。当自协 商未完成时,此寄存器为0x0000  Bit[7:0]: Idle错误计数器,不用关心。  Bit[9:8]: 保留位,不用关心  Bit[10]:对方1000Base-T半双工能力位,为1时表示对方支持1000Base-T半双工,为 0时表示对方不支持1000Base-T半双工。  Bit[11]:对方1000Base-T全双工能力位,为1时表示对方支持1000Base-T全双工,为 0时表示对方不支持1000Base-T全双工。  Bit[12]:对方接收状态:为1时对方接收正常,为0表示对方接收故障。  Bit[13]: 本端接收状态:1表示本端接收正常,为0表示本端接收故障。  Bit[14]:主从状态:1表示本端为Master状态,为0表示本端为Slave状态  Bit[15]:主从状态错误:为1表示主从协商出错(比如两端都受过设置成Master或都设 置成Slave);为0表示主从协商正常。
  • 21. MAC里面的标准以太网计数器 IEEE定义了一些以太网统计计数器,所有的MAC都必须支持这些标准计数器。  InGoodOctets  InGoodFrame  InBadOctets  InBadFrame  InUniCast  InBroadCast  InMultiCast  InPause  InUnderSize  InOverSize  InFragments  InJabber  InRxErr  InFCSErr  OutGoodOctets  OutGoodFrame  Collisions  Dropped
  • 22. 错误计数器的含义---1 像GoodFrame、GoodOctets等计数器的含义很好理解,下面解释一下其他的错误计数 器的含义:  InUnderSize:  有正确的帧结构(前导码、SFD、FCS),FCS正确,但长度不足64Byte的报文。正常情况 下应该为0。此计数器一般和硬件信号质量无关。  InOverSize  有正确的帧结构(前导码、SFD、FCS), FCS正确,但长度超过15122Byte或设定长度, 且小于Jabber标准的报文。正常情况下应该为0。此计数器一般和硬件信号质量无关。  InFragments  没有正确帧结构的报文,正常情况下应该为0,如果为非零,表示硬件信号质量有问题。  InJabber  远超过最大报文长度的帧(帧发送时间超过20ms或设定值)。在最初的共享媒体以太网设 备(如HUB)中,Jabber是非常严重的错误,发现某个端口出现Jabber后要马上隔离该端口。 但在现在的以太网设备上,因为不再是共享媒体机制,Jabber已经很少关注了。  正常情况下应该为0。如果为非0,可能和硬件信号质量相关
  • 23. 错误计数器的含义---2  InRxErr  如果PHY集成在MAC中,此错误表示符号错误;比如8B/10B编码的PCS层,接收到了非法 的10B符号。正常情况下应该为0,如果为非零,表示硬件信号质量有问题。  InFCSErr  有正确的帧结构和正确的长度,但FCS(CRC校验)出错的报文。正常情况下应该为0,如果为 非零,表示硬件信号质量有问题。  Collision  当端口处于半双工时,发生冲突的次数。全双工情况下,应该为0。  Dropped  已经正确接收到MAC中,但因为申请不到Buffer或者队列满而被丢弃的报文。正确情况下也 可能为非0,此计数器一般和硬件信号质量无关。  BadFrame  指的是UnderSize、OverSize、Fragments、FCSErr的总和,正常情况下应该为0,如果不 为0,仔细检查各个错误计数器的统计。