飛思卡爾MC9S12NE64以太網(wǎng)模塊介紹
掃描二維碼
隨時(shí)隨地手機(jī)看文章
MC9S12NE64是Freescale公司生產(chǎn)的基于HCS12 CPU內(nèi)核的16位單片機(jī),內(nèi)嵌EMAC和EPHY模塊。
NE64的以太網(wǎng)模塊實(shí)現(xiàn)了以太幀的收發(fā)功能。其中包括以太網(wǎng)介質(zhì)訪問控制模塊(Ethernet Media Access Controller,EMAC)和以太網(wǎng)物理層驅(qū)動(dòng)模塊(Ethernet PhysicalTransceiver,EPHY),這兩個(gè)模塊都遵循IEEE802.3標(biāo)準(zhǔn)。NE64的EMAC模塊和EPHY模塊的內(nèi)部結(jié)構(gòu)如圖所示。
圖中NE64的EMAC模塊和EPHY模塊可以獨(dú)立使用,也可以集成使用。如果分開使用則通過MII接口的18個(gè)引腳與外界EMAC模塊或者EPHY模塊通信;如果使用內(nèi)部模塊,那么MII接口引腳對(duì)這兩個(gè)模塊均不可見,這樣以太網(wǎng)模塊對(duì)外通信的引腳只有4個(gè):2差分個(gè)輸入(RXN、RXP)和2個(gè)差分輸出(TXN、TXP)。
1.EPHY模塊
EPHY模塊是物理接口收發(fā)器。支持IEEE-802.3定義的MII(Medium-independentinterface)介質(zhì)無關(guān)端口。MII層定義了MAC和各種物理層之間的標(biāo)準(zhǔn)電氣和機(jī)械接口,它們使得EPHY與EMAC之間的數(shù)據(jù)通信、EPHY的配置及通信狀態(tài)的判斷得以實(shí)現(xiàn)。EPHY模塊一端與EMAC通信,另一端與傳輸介質(zhì)進(jìn)行通信。EPHY模塊提供4個(gè)存儲(chǔ)映射寄存器和18個(gè)MII寄存器,通過設(shè)置這些寄存器,使EPHY模塊正常工作。
EPHY模塊是遵循IEEE 802.3標(biāo)準(zhǔn)并兼容10/100Mbps的以太網(wǎng)收發(fā)器。可以配置成10BASE-T或者100BASE-TX模式。需要注意的是在外部總線模式下只能選擇10BASE-T模式。
① 10BASE-T模式
10BASE-T模式中10表示傳輸速率為10Mb/S,BASE表示采用基帶傳輸,T(twisted)為雙絞線,每個(gè)網(wǎng)段最大傳輸距離為100M,實(shí)際傳輸距離受物理連線影響。使用曼徹斯特編碼方式??梢圆捎?類UTP(Unshielded Twisted-Pair cable 非屏蔽雙絞線)、集線器、RJ-45連接器連接。雙絞線是兩根絕緣導(dǎo)線互相絞結(jié)在一起的一種通用的傳輸介質(zhì),它可減少線間電磁干擾,適用于模擬、數(shù)據(jù)通信。
以太網(wǎng)通信是一種不可靠通信,實(shí)際它并不知道通信的對(duì)方有沒有真正收到自己發(fā)出的數(shù)據(jù)。以太網(wǎng)中半雙工模式下采用CSMA/CD ( Carrier Sense MultipleAccess/Collision Detect),即載波監(jiān)聽多路訪問/沖突檢測(cè)方法。CSMA/CD是一種分布式介質(zhì)訪問控制協(xié)議,網(wǎng)中的各個(gè)站(節(jié)點(diǎn))都能獨(dú)立地決定數(shù)據(jù)幀的發(fā)送與接收。每個(gè)站在發(fā)送數(shù)據(jù)幀之前,首先要進(jìn)行載波監(jiān)聽,只有介質(zhì)空閑時(shí),才允許發(fā)送幀。
這時(shí),如果兩個(gè)以上的站同時(shí)監(jiān)聽到介質(zhì)空閑并發(fā)送幀,則會(huì)產(chǎn)生沖突現(xiàn)象,這使發(fā)送的幀都成為無效幀,發(fā)送隨即宣告失敗。每個(gè)站必須有能力隨時(shí)檢測(cè)沖突是否發(fā)生,一旦發(fā)生沖突,則應(yīng)停止發(fā)送,以免介質(zhì)帶寬因傳送無效幀而被白白浪費(fèi),然后隨機(jī)延時(shí)一段時(shí)間后,再重新爭(zhēng)用介質(zhì),重發(fā)送幀。
假設(shè)A檢測(cè)到網(wǎng)絡(luò)是空閑的,開始發(fā)數(shù)據(jù)包,盡力傳輸,當(dāng)數(shù)據(jù)包還沒有到達(dá)B時(shí),B也監(jiān)測(cè)到網(wǎng)絡(luò)是空閑的,開始發(fā)數(shù)據(jù)包,這時(shí)就會(huì)發(fā)生碰撞,B首先發(fā)現(xiàn)發(fā)生碰撞,開始發(fā)送碰撞信號(hào),所謂碰撞信號(hào),就是連續(xù)的01010101或者10101010,十六進(jìn)制就是55或AA。這個(gè)碰撞信號(hào)會(huì)返回到A,如果碰撞信號(hào)到達(dá)A時(shí),A還沒有發(fā)完這個(gè)數(shù)據(jù)包,A就知道這個(gè)數(shù)據(jù)包發(fā)生了錯(cuò)誤,就會(huì)重傳這個(gè)數(shù)據(jù)包。但如果碰撞信號(hào)到達(dá)A時(shí),數(shù)據(jù)包已經(jīng)發(fā)完,則A不會(huì)重傳這個(gè)數(shù)據(jù)包。
② 100BASE-TX模式
快速以太網(wǎng)技術(shù)100Base-TX是由10Base-T標(biāo)準(zhǔn)以太網(wǎng)發(fā)展而來的,主要解決網(wǎng)絡(luò)帶寬在局域網(wǎng)絡(luò)應(yīng)用中的瓶頸問題??芍С?00Mbps的數(shù)據(jù)傳輸速率,在交換式以太網(wǎng)環(huán)境中可以實(shí)現(xiàn)全雙工通信。在編碼上,采用了效率更高的編碼方式4B/5B編碼。對(duì)NE64 EPHY模塊的實(shí)際通信速度可以采用一些方法進(jìn)行測(cè)試。比如將NE64通過網(wǎng)線(5類UTP)接到交換機(jī)的端口上,指示燈閃爍表示連接有效,并以顏色表示數(shù)據(jù)
速率:綠色-100Mbps,黃色-10Mbps。
2.EMAC模塊
MC9S12NE64的EMAC實(shí)現(xiàn)了數(shù)據(jù)鏈路層的功能,提供將一臺(tái)設(shè)備的網(wǎng)絡(luò)層數(shù)據(jù)傳輸至另一臺(tái)設(shè)備的機(jī)制。EMAC主要負(fù)責(zé)數(shù)據(jù)的傳輸,具有10Mbps/100Mbps的傳輸能力。在數(shù)據(jù)傳輸之前,EMAC自動(dòng)對(duì)以太幀進(jìn)行封裝:添加幀的前導(dǎo)位、幀起始位以及CRC校驗(yàn)碼。此外,EMAC具有MAC地址識(shí)別和濾波功能,并能進(jìn)行錯(cuò)誤檢測(cè)。在半雙工模式下,EMAC采用載波多路訪問和沖突檢測(cè)(CSMA/CD)機(jī)制;在全雙工模式下,可采用流量控制機(jī)制。因此,EMAC模塊的初始化應(yīng)該是包括這些功能在內(nèi)的初始化,它可以通過讀寫EMAC模塊提供的21個(gè)寄存器來實(shí)現(xiàn)。