CKS32F4xx系列芯片自帶以太網(wǎng)模塊,該模塊包括帶專用DMA控制器的MAC 802.3(介質(zhì)訪問控制)控制器,支持介質(zhì)獨(dú)立接口(MII)和簡(jiǎn)化介質(zhì)獨(dú)立接口(RMII),并自帶了一個(gè)用于外部PHY通信的SMI接口,通過一組配置寄存器,用戶可以為MAC控制器和DMA控制器選擇所需模式和功能。
自帶以太網(wǎng)模塊特點(diǎn)包括:
·支持外部PHY接口,實(shí)現(xiàn)10M/100Mbit/s的數(shù)據(jù)傳輸速率;
·通過符合IEEE802.3的MII/RMII接口與外部以太網(wǎng)PHY進(jìn)行通信;
·支持全雙工和半雙工操作;
·可編程幀長(zhǎng)度,支持高達(dá)16KB巨型幀;
·可編程幀間隔(40~96位時(shí)間,以8為步長(zhǎng));
·支持多種靈活的地址過濾模式;
·通過SMI(MDIO)接口配置和管理PHY設(shè)備;
·支持以太網(wǎng)時(shí)間戳(參見IEEE1588-2008),提供64位時(shí)間戳;
·提供接收和發(fā)送兩組FIFO;
·支持DMA。
以太網(wǎng)主要功能及框圖
圖1ETH框圖
從上圖可以看出,CKS32F4xx系列必須外接PHY芯片,才可以完成以太網(wǎng)通信的,外部PHY芯片可以通過MII/RMII接口與CKS32F4xx系列內(nèi)部MAC連接,并且支持SMI(MDIO&MDC)接口配置外部以太網(wǎng)PHY芯片。
SMI接口,即站管理接口,該接口允許應(yīng)用程序通過2條線:時(shí)鐘(MDC)和數(shù)據(jù)線(MDIO)訪問任意PHY寄存器。該接口支持訪問多達(dá)32個(gè)PHY,應(yīng)用程序可以從32個(gè)PHY中選擇一個(gè)PHY,然后從任意PHY包含的32個(gè)寄存器中選擇一個(gè)寄存器,發(fā)送控制數(shù)據(jù)或接收狀態(tài)信息。任意給定時(shí)間內(nèi)只能對(duì)一個(gè)PHY中的一個(gè)寄存器進(jìn)行尋址。 MII接口,即介質(zhì)獨(dú)立接口,用于MAC層與PHY層進(jìn)行數(shù)據(jù)傳輸。CKS32F4xx系列通過MII與PHY層芯片的連接如圖2所示:
圖2介質(zhì)獨(dú)立接口信號(hào)
MII_TX_CLK:連續(xù)時(shí)鐘信號(hào)。該信號(hào)提供進(jìn)行TX數(shù)據(jù)傳輸時(shí)的參考時(shí)序。標(biāo)稱頻率為:速率為10Mbit/s時(shí)為2.5MHz;速率為100Mbit/s時(shí)為25MHz。
·MII_RX_CLK:連續(xù)時(shí)鐘信號(hào)。該信號(hào)提供進(jìn)行RX數(shù)據(jù)傳輸時(shí)的參考時(shí)序。標(biāo)稱頻率為:速率為10Mbit/s時(shí)為2.5MHz;速率為100Mbit/s時(shí)為25MHz。
·MII_TX_EN:發(fā)送使能信號(hào)。
·MII_TXD[3:0]:數(shù)據(jù)發(fā)送信號(hào)。該信號(hào)是4個(gè)一組的數(shù)據(jù)信號(hào),
·MII_CRS:載波偵聽信號(hào)。
·MII_COL:沖突檢測(cè)信號(hào)。
·MII_RXD[3:0]:數(shù)據(jù)接收信號(hào)。該信號(hào)是4個(gè)一組的數(shù)據(jù)信號(hào)。
·MII_RX_DV:接收數(shù)據(jù)有效信號(hào)。
·MII_RX_ER:接收錯(cuò)誤信號(hào)。該信號(hào)必須保持一個(gè)或多個(gè)周期(MII_RX_CLK),從而向MAC子層指示在幀的某處檢測(cè)到錯(cuò)誤。
RMII接口,即精簡(jiǎn)介質(zhì)獨(dú)立接口,該接口降低了在10/100Mbit/s下微控制器以太網(wǎng)外設(shè)與外部PHY間的引腳數(shù)。
根據(jù)IEEE 802.3u標(biāo)準(zhǔn),MII包括16個(gè)數(shù)據(jù)和控制信號(hào)的引腳。RMII規(guī)范將引腳數(shù)減少為7個(gè)。
RMII接口是MAC和PHY之間的實(shí)例化對(duì)象。這有助于將MAC的MII轉(zhuǎn)換為RMII。
RMII具有以下特性:
·支持10Mbit/s和100Mbit/s的運(yùn)行速率;
·參考時(shí)鐘必須是50MHz;
·相同的參考時(shí)鐘必須從外部提供給MAC和外部以太網(wǎng)PHY;
·它提供了獨(dú)立的2位寬(雙位)的發(fā)送和接收數(shù)據(jù)路徑; CKS32F4xx系列通過RMII接口與PHY層芯片的連接如圖3所示:
圖3精簡(jiǎn)介質(zhì)獨(dú)立接口信號(hào)
從上圖可以看出RMII相比MII,引腳數(shù)量精簡(jiǎn)了不少。注意,圖中的REF_CLK信號(hào),是RMII和外部PHY共用的50Mhz參考時(shí)鐘,必須由外部提供,比如有源晶振,或者CKS32F4xx系列的MCO輸出。不過有些PHY芯片可以自己產(chǎn)生50Mhz參考時(shí)鐘,同時(shí)提供給CKS32F4xx系列,這樣也是可以的。
LWIP簡(jiǎn)介
LWIP是瑞典計(jì)算機(jī)科學(xué)院(SICS)的Adam Dunkels等開發(fā)的一個(gè)小型開源的TCP/IP協(xié)議棧,是TCP/IP的一種實(shí)現(xiàn)方式。LWIP是輕量級(jí)IP協(xié)議,有無操作系統(tǒng)的支持都可以運(yùn)行,LWIP實(shí)現(xiàn)的重點(diǎn)是在保持TCP協(xié)議主要功能的基礎(chǔ)上減少對(duì)RAM的占用,它只需十幾KB的RAM和40K左右的ROM就可以運(yùn)行,這使LWIP協(xié)議棧適合在低端的嵌入式系統(tǒng)中使用。該部分功能移植由于內(nèi)容較多,請(qǐng)自行參考相關(guān)移植材料,本文不做敘述。
LAN8720A通訊
本章我們采用RMII接口和外部PHY芯片連接,實(shí)現(xiàn)網(wǎng)絡(luò)通信功能。LAN8720A是低功耗的10/100M以太網(wǎng)PHY層芯片,I/O引腳電壓符合IEEE802.3-2005標(biāo)準(zhǔn),支持通過RMII接口與以太網(wǎng)MAC層通信,內(nèi)置10-BASE-T/100BASE-TX全雙工傳輸模塊,支持10Mbps和100Mbps,可以通過自協(xié)商的方式與目的主機(jī)最佳的連接方式(速度和雙工模式),支持HP Auto-MDIX自動(dòng)翻轉(zhuǎn)功能,無需更換網(wǎng)線即可將連接更改為直連或交叉連接。
審核編輯:劉清
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5343瀏覽量
170801 -
SMI
+關(guān)注
關(guān)注
0文章
23瀏覽量
12389 -
DMA控制器
+關(guān)注
關(guān)注
1文章
43瀏覽量
12257 -
ETH
+關(guān)注
關(guān)注
0文章
66瀏覽量
3478
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論