中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

PHY寄存器怎么用

本篇文章給大家分享的是有關(guān)PHY寄存器怎么用,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

山城網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,山城網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為山城上1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的山城做網(wǎng)站的公司定做!

PHY寄存器怎么用

STM32只有網(wǎng)絡(luò)外設(shè)時(shí)不能進(jìn)行網(wǎng)絡(luò)通信的,因?yàn)镾TM32只提供了SMI接口,MII和RMII接口。我們還需要與之通信的外部網(wǎng)絡(luò)芯片,簡(jiǎn)稱PHY芯片。我熟悉的PHY型號(hào)有:RTL8201F,RTL8201E,RTL8201G,DP83848,YT8512C等,原計(jì)劃講解RTL8201F的,但是內(nèi)容太多,先把PHY寄存器拿出來(lái)講一下。

為什么STM32不集成PHY呢?

PHY(PortPhysical Layer),中文可稱之為端口物理層。

1、PHY芯片是模擬芯片,需要將網(wǎng)線的差分信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),如果集成,則芯片面積增加,如果要降低功耗,還要高的芯片制造工藝,這會(huì)直接將芯片成本拉高。

2、并不是所有的STM32使用者都需要使用到網(wǎng)絡(luò),集成PHY會(huì)增加成本。

所以,STM32不集成PHY不是技術(shù)問(wèn)題,而是各方面考慮的結(jié)果。

難道沒(méi)有集成PHY的MCU嗎?

有的,TI的LM3S8962。

PHY寄存器怎么用

我們說(shuō)回PHY寄存器,外部PHY芯片寄存器分為3種類型

Basic:基礎(chǔ)寄存器

Extended:擴(kuò)展寄存器

Vendor-spcififc:廠商特殊寄存器

其中在802.3協(xié)議2012版中有如下說(shuō)明。

PHY寄存器怎么用

不同的手冊(cè),對(duì)基礎(chǔ)寄存器有不同的說(shuō)明,按照802.3-2012上圖的說(shuō)明基礎(chǔ)寄存器是控制器寄存器(寄存器0)和狀態(tài)寄存器(寄存器1),在GMII(千兆網(wǎng))接口中海油擴(kuò)展?fàn)顟B(tài)寄存器(寄存器15)。

本文主要根據(jù)802.3-2012協(xié)議講解PHY的基礎(chǔ)寄存器,并不是根據(jù)某個(gè)具體芯片講解的。

PHY寄存器怎么用

寄存器0和寄存器1在協(xié)議文檔的中位置如下圖

PHY寄存器怎么用

上面提到的802.3-2012協(xié)議大家可以到ieee官網(wǎng)下載

https://standards.ieee.org/

或者通過(guò)百度網(wǎng)盤下載

鏈接:https://pan.baidu.com/s/1Nr_KHse32zysBKZ0btPceg

提取碼:xhin

01、控制寄存器(寄存器0)

寄存器0是PHY控制寄存器,通過(guò)ControlRegister可以對(duì)PHY的主要工作狀態(tài)進(jìn)行設(shè)置

PHY寄存器怎么用

bit15 Rset

bit15為1時(shí)表示,PHY復(fù)位。Bit15控制的是PHY復(fù)位功能,在該位置寫入1實(shí)現(xiàn)對(duì)PHY的復(fù)位操作。復(fù)位后該端口PHY的其他控制、狀態(tài)寄存器將恢復(fù)到默認(rèn)值,每次PHY復(fù)位應(yīng)該在0.5s的時(shí)間內(nèi)完成,復(fù)位過(guò)程中Bit15保持為1,復(fù)位完成之后該位應(yīng)該自動(dòng)清零。一般要改變端口的工作模式(如速率、雙工、流控或協(xié)商信息等)時(shí),在設(shè)置完相應(yīng)位置的寄存器之后,需要通過(guò)Reset位復(fù)位PHY來(lái)使配置生效。

在復(fù)位過(guò)程完成之前,不需要PHY接受對(duì)控制寄存器的寫事務(wù),而在復(fù)位過(guò)程完成之前,對(duì)控制寄存器中除bit15以外的位的寫操作可能無(wú)效。

bit14 Loopback

Loopback是一個(gè)調(diào)試以及故障診斷中常用的功能,Bit14置1之后,PHY和外部MDI的連接在邏輯上將被斷開(kāi),從MAC經(jīng)過(guò)MII/GMII(也可能是其他的MAC/PHY接口)發(fā)送過(guò)來(lái)的數(shù)據(jù)將不會(huì)被發(fā)送到MDI上,而是在PHY內(nèi)部(一般在PCS)回環(huán)到本端口的MII/GMII接收通道上。

通過(guò)Loopback功能可以檢查MII/GMII以及PHY接口部分是否工作正常,對(duì)于端口不通的情況可用于故障定位。需要注意的是,很多時(shí)候PHY設(shè)置Loopback后端口可能就Linkdown了,MAC無(wú)法向該端口發(fā)幀,這時(shí)就需要通過(guò)設(shè)置端口ForceLink up才能使用Loopback功能。

bit13 Speed Selection(LSB)

Bit13和Bit6兩位聯(lián)合實(shí)現(xiàn)對(duì)端口的速率控制功能,具體的對(duì)應(yīng)關(guān)系詳見(jiàn)下圖

PHY寄存器怎么用

需要注意的是SpeedSelection只有在自動(dòng)協(xié)商關(guān)閉的情況下才起作用,如果自動(dòng)協(xié)商設(shè)置為Enable狀態(tài),則該設(shè)置不起作用;

并且,對(duì)SpeedSelection的修改設(shè)置,往往需要復(fù)位端口才能配置生效。因此在設(shè)置該位置的時(shí)候需要檢查自動(dòng)協(xié)商的設(shè)置并通過(guò)Bit15復(fù)位端口。

bit12 Auto-Negotiation Enable

自動(dòng)協(xié)商(AN)開(kāi)關(guān)。設(shè)置為1表示打開(kāi)AN功能,端口的工作模式通過(guò)和連接對(duì)端進(jìn)行自動(dòng)協(xié)商來(lái)確定。如果設(shè)置為0則自動(dòng)協(xié)商功能關(guān)閉,端口的工作模式通過(guò)ControlRegister相應(yīng)位置的配置決定。必須注意的是,對(duì)于1000BASE-T接口,自動(dòng)協(xié)商必須打開(kāi)。

bit11 Power Down

端口工作開(kāi)關(guān):設(shè)置為1將使端口進(jìn)入PowerDown(低功耗狀態(tài))模式,正常情況下PHY在PowerDown模式其MII和MDI均不會(huì)對(duì)外發(fā)送數(shù)據(jù)。PowerDown模式一般在軟件shutdown端口的時(shí)候使用,需要注意的是端口從PowerDown模式恢復(fù),需要復(fù)位端口以保證端口可靠的連接。

bit10 Isolate

隔離狀態(tài)開(kāi)關(guān):改位置1將導(dǎo)致PHY和MII接口之間處于電氣隔離狀態(tài),除了MDC/MDIO接口的信號(hào)外,其他MII引腳處于高阻態(tài)。IEEE802.3沒(méi)有對(duì)Isolate時(shí)MDI接口的狀態(tài)進(jìn)行規(guī)范,此時(shí)MDI端可能還在正常運(yùn)行。Isolate在實(shí)際應(yīng)用中并沒(méi)有用到。并且,值得注意的是,由于目前很多百兆的PHY芯片其MAC接口主流的都是SMII/S3MII,8個(gè)端口的接口是相互關(guān)聯(lián)的,一個(gè)端口設(shè)置Isolate可能會(huì)影響其他端口的正常使用,因此在使用中注意不要隨意更改bit10的狀態(tài)。

bit9 Restart Auto-Negotiation

重新啟動(dòng)自動(dòng)協(xié)商開(kāi)關(guān):Bit9置1將重新啟動(dòng)端口的自動(dòng)協(xié)商進(jìn)程,當(dāng)然前提是Auto-NegotiationEnable是使能的。一般在修改端口的自動(dòng)協(xié)商能力信息之后通過(guò)Bit9置1重新啟動(dòng)自動(dòng)協(xié)商來(lái)使端口按照新的配置建立link。

bit8 Duplex Mode

雙工模式設(shè)置:Bit8置1端口設(shè)置為全雙工,置0則端設(shè)置為半雙工,和SpeedSelection的設(shè)置一樣,DuplexMode的設(shè)置只有在自動(dòng)協(xié)商關(guān)閉的情況下才起作用,如果自動(dòng)協(xié)商設(shè)置為Enable狀態(tài),則該設(shè)置不起作用,端口的雙工模式根據(jù)AN結(jié)果來(lái)定。對(duì)DuplexMode的修改配置也需要復(fù)位端口才能生效。

bit7 Collision Test

沖突信號(hào)(COL)測(cè)試開(kāi)關(guān):在需要對(duì)COL信號(hào)進(jìn)行測(cè)試時(shí),可以通過(guò)Bit7置1,這時(shí)PHY將輸出一個(gè)COL脈沖以供測(cè)試。實(shí)際測(cè)試操作中也可以將端口配置為半雙工狀態(tài),通過(guò)發(fā)幀沖突來(lái)測(cè)試COL信號(hào),因此該配置實(shí)用價(jià)值不大。

bit6 Speed Selection(MSB)

和Bit13兩位聯(lián)合實(shí)現(xiàn)對(duì)端口的速率控制功能。

PHY寄存器怎么用

bit5 Unidirectional enable

當(dāng)?shù)?2位為1或第8位為0時(shí),該位為忽略了。

當(dāng)?shù)?2位為0且第8位為1:

1:從MII接口啟用傳輸,不管PHY是否確定已建立有效鏈路

0:僅當(dāng)PHY確定已建立有效鏈路時(shí),才啟用從MII接口傳輸

Bits 4:0 reserved

保留位,它們應(yīng)寫入為零,讀取時(shí)應(yīng)忽略;但是,PHY應(yīng)返回這些位中的值零。

02、狀態(tài)寄存器(寄存器1)

寄存器1是PHY狀態(tài)寄存器,主要包含PHY的狀態(tài)信息。

PHY寄存器怎么用

bit15 100BASE-T4

PHY使用100BASE-T4信令規(guī)范執(zhí)行鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit14 100BASE-X Full Duplex

PHY使用100BASE-X信令規(guī)范執(zhí)行全雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit13 100BASE-X Half Duplex

PHY使用100BASE-X信令規(guī)范執(zhí)行半雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit12 10Mb/s Full Duplex

PHY具有以10Mb/s的速度運(yùn)行時(shí)執(zhí)行全雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit11 10Mb/s Half Duplex

PHY具有以10Mb/s的速度運(yùn)行時(shí)執(zhí)行半雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit10 100BASE-T2 Full Duplex

PHY具有使用100BASE-T2信令規(guī)范執(zhí)行全雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit9 100BASE-T2 Half Duplex

PHY具有使用100BASE-T2信令規(guī)范執(zhí)行半雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit8 Externded Status

1:使能寄存器15

0:不使能寄存器15

bit7 Unidirectional ability

1:PHY有能力編碼和傳輸來(lái)自PHY的數(shù)據(jù)通過(guò)MII接口,而不管PHY是否已確定有效鏈路已被連接已建立。

0:僅當(dāng)PHY確定已建立有效鏈路時(shí),才啟用從MII接口傳輸

bit6 MF Preamble Suppression

1:PHY能夠接受管理幀,而不管它們前面是否有前導(dǎo)碼模式。

0:PHY不能接受管理幀,除非它們前面有前導(dǎo)碼模式。

前導(dǎo)碼模式。

在官方文檔中22.2.4.5.2中有描述的。大家可以自行查看。

PHY寄存器怎么用

其實(shí)這個(gè)前導(dǎo)碼我們?cè)谥耙彩侵v解到的,在文章《STM32網(wǎng)絡(luò)之SMI接口》如下圖,建議沒(méi)有讀過(guò)這篇文章的同學(xué)讀一下。

PHY寄存器怎么用

bit5 Auto-Negotiation Complete

AN完成狀態(tài)指示位:Bit5指示的是端口AN進(jìn)程是否完成的狀態(tài)位。在ANEnable的情況下,Bit5=1表示自動(dòng)協(xié)商進(jìn)程已經(jīng)成功結(jié)束,此時(shí)PHY的其他和Link狀態(tài)相關(guān)的寄存器才是正確可靠的。如果AN進(jìn)程沒(méi)有完成,則這些狀態(tài)信息可能是錯(cuò)誤的。在調(diào)試以及異常故障處理時(shí),可以通過(guò)該位寄存器的狀態(tài)判斷AN是否成功,從而進(jìn)一步的檢查AN相關(guān)的設(shè)置是否正確,或者芯片的AN功能是否正常等。

bit4 Remote Fault

遠(yuǎn)端錯(cuò)誤指示位:Bit4=1代表連接對(duì)端(LinkPartner)出錯(cuò),至于出錯(cuò)的具體類型以及錯(cuò)誤檢測(cè)機(jī)制在規(guī)范中并沒(méi)有定義,由PHY的制造商自由發(fā)揮,一般的廠商都會(huì)在其他的寄存器(Register16-31由廠商自行定義)指示比較詳細(xì)的錯(cuò)誤類型。在與端口相關(guān)的故障查證中,RemoteFault是一個(gè)重要的指示信息,通過(guò)互聯(lián)雙方的RemoteFault信息(可能要加上其他的具體錯(cuò)誤指示),可以幫助定位故障原因。

bit3 Auto-Negotiation Ability

1:PHY使能自動(dòng)協(xié)商

0:PHY不使能自動(dòng)協(xié)商

bit2 Link Status

Link狀態(tài)指示位:Bit2=1代表端口Linkup,0則代表端口Linkdown。實(shí)際應(yīng)用中一般都是通過(guò)Bit2來(lái)判斷端口的狀態(tài)。而且,一般的MAC芯片也是通過(guò)輪詢PHY的這個(gè)寄存器值來(lái)判斷端口的Link狀態(tài)的(這個(gè)過(guò)程可能有不同的名稱,比如BCM叫做LinkScan,而Marvell叫做PHYPolling。)如前所述,在ANEnable的情況下,LinkStatus的信息只有在Auto-NegotiationComplete指示已經(jīng)完成的情況下才是正確可靠的,否則有可能出錯(cuò)。

bit1 Jabber Detect

1:檢測(cè)到抖動(dòng)(戳刺)狀態(tài)

0:沒(méi)有檢測(cè)到抖動(dòng)(戳刺)狀態(tài)

bit0 Extended Capability

1:PHY提供了擴(kuò)展的功能集,可通過(guò)擴(kuò)展的寄存器集進(jìn)行訪問(wèn)。

0:沒(méi)有提供擴(kuò)展寄存器。

03、寄存器15

寄存器15主要模式千兆網(wǎng)模式下,PHY的狀態(tài)。

PHY寄存器怎么用

如上圖,寄存器15主要描述,千兆網(wǎng)模式下PHY的狀態(tài),具體含義和寄存器1的相關(guān)位差不多。

bit15 1000BASE-X Full Duplex

PHY使用1000BASE-X信令規(guī)范執(zhí)行全雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit14 1000BASE-X Half Duplex

PHY使用100B0ASE-X信令規(guī)范執(zhí)行半雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit13 1000BASE-T Full Duplex

PHY具有使用1000BASE-T信令規(guī)范執(zhí)行全雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

bit12 1000BASE-T Half Duplex

PHY具有使用1000BASE-T信令規(guī)范執(zhí)行半雙工鏈路傳輸和接收的能力。1:具有能力;0:不具有能力。

Bits 11:0 reserved

保留位,讀取的時(shí)候忽略。

04、其他寄存器

除去基礎(chǔ)寄存器,802.3-2012協(xié)議也提到了其他寄存器,這里簡(jiǎn)單說(shuō)明下,不做重點(diǎn)講解。

寄存器2、3:芯片ID寄存器

寄存器2、3分別是PHYID寄存器,從內(nèi)核代碼知道,寄存器2(PHYID1)為高16位,而寄存器3(PHYID2)為低16位。它們作為PHY芯片的標(biāo)識(shí),一般被認(rèn)為作用不大,以前有過(guò)同一主CPU搭配不同的PHY組合不同的板卡,使用同一份內(nèi)核,這里就可以用PHYID來(lái)做區(qū)別。

寄存器4:自動(dòng)協(xié)商通告寄存器

該寄存器保存著PHY本身具備的特性、能力。如PHY支持流控、百兆全雙工/半雙工、十兆全雙工/半雙工,等。

當(dāng)設(shè)置為自動(dòng)協(xié)商使能情況下通過(guò)FLP在MDI上進(jìn)行通告。如果不使能,則此寄存器的配置無(wú)效。

寄存器5:自動(dòng)協(xié)商對(duì)端能力通告寄存器

該寄存器和寄存器4類似,它表示對(duì)端(交換機(jī)或PC)具備的特性、能力。同樣要注意是的只有在自動(dòng)協(xié)商使能情況下該寄存器信息才有效。由于此寄存器表示的是對(duì)端的狀態(tài),所以一般情況下寄存器的值被設(shè)計(jì)為只讀,但有的芯片如dm9000的流控位5.10FCS是可讀寫的。

該寄存器主要用來(lái)了解對(duì)端的情況,在出現(xiàn)問(wèn)題時(shí),可以了解對(duì)方的信息,從而大致定位范圍。而不用一味地找自身原因。萬(wàn)一真的是對(duì)端的交換機(jī)出現(xiàn)故障,此寄存器就是有力的現(xiàn)場(chǎng)證據(jù)。

以上就是PHY寄存器怎么用,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享文章:PHY寄存器怎么用
文章來(lái)源:http://www.rwnh.cn/article42/ipcihc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站排名定制網(wǎng)站、品牌網(wǎng)站制作ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)
隆尧县| 吉隆县| 南陵县| 昌黎县| 边坝县| 仪陇县| 阿瓦提县| 巫溪县| 堆龙德庆县| 密云县| 疏附县| 夹江县| 沛县| 花垣县| 黔江区| 奉化市| 兴隆县| 客服| 汉沽区| 大余县| 墨竹工卡县| 吕梁市| 台湾省| 阳泉市| 琼中| 崇仁县| 肥东县| 巴东县| 阳西县| 东平县| 无锡市| 东平县| 华安县| 图木舒克市| 天等县| 克拉玛依市| 信丰县| 巍山| 青田县| 广饶县| 利辛县|