網(wǎng)卡(Network Interface Card,簡(jiǎn)稱NIC),也稱網(wǎng)絡(luò)適配器,是電腦與局域網(wǎng)相互連接的設(shè)備。只要連接到局域網(wǎng)就需要網(wǎng)卡。一個(gè)網(wǎng)卡主要包括OSI的最下面兩層,物理層和數(shù)據(jù)鏈路層。物理層的芯片稱之為PHY,數(shù)據(jù)鏈路層的芯片稱之為MAC控制器。
本文旨在學(xué)習(xí)以太網(wǎng)基礎(chǔ)MAC和PHY的知識(shí),總結(jié)系統(tǒng)框架和物理硬件組成原理,了解各種接口。
PHY & MAC & MII
PHY
PHY 是物理接口收發(fā)器,它實(shí)現(xiàn)物理層。包括 MII/GMII (介質(zhì)獨(dú)立接口) 子層、PCS (物理編碼子層) 、PMA (物理介質(zhì)附加) 子層、PMD (物理介質(zhì)相關(guān)) 子層、MDI 子層。定義了數(shù)據(jù)傳送與接收所需要的電與光信號(hào)、線路狀態(tài)、時(shí)鐘基準(zhǔn)、數(shù)據(jù)編碼和電路等,并向數(shù)據(jù)鏈路層設(shè)備提供標(biāo)準(zhǔn)接口。物理層的芯片稱之為PHY。
MAC
MAC 是 Media Access Control 的縮寫,即媒體訪問(wèn)控制子層協(xié)議。該協(xié)議位于 OSI 七層協(xié)議中數(shù)據(jù)鏈路層的下半部分,主要負(fù)責(zé)控制與連接物理層的物理介質(zhì)。
在發(fā)送數(shù)據(jù)的時(shí)候,MAC 協(xié)議可以事先判斷是否可以發(fā)送數(shù)據(jù),如果可以發(fā)送將給數(shù)據(jù)加上一些控制信息,最終將數(shù)據(jù)以及控制信息以規(guī)定的格式發(fā)送到物理層;在接收數(shù)據(jù)的時(shí)候,MAC 協(xié)議首先判斷輸入的信息是否發(fā)生傳輸錯(cuò)誤,如果沒(méi)有錯(cuò)誤,則去掉控制信息發(fā)送至 LLC 層。以太網(wǎng) MAC 由 IEEE-802.3 以太網(wǎng)標(biāo)準(zhǔn)定義。
MII
MII即媒體獨(dú)立接口,也叫介質(zhì)無(wú)關(guān)接口。它是IEEE-802.3定義的以太網(wǎng)行業(yè)標(biāo)準(zhǔn)。它包括一個(gè)數(shù)據(jù)接口,以及一個(gè)MAC和PHY之間的管理接口。數(shù)據(jù)接口包括分別用于發(fā)送器和接收器的兩條獨(dú)立信道。每條信道都有自己的數(shù)據(jù)、時(shí)鐘和控制信號(hào)。
MII數(shù)據(jù)接口總共需16個(gè)信號(hào)。管理接口是個(gè)雙信號(hào)接口:一個(gè)是時(shí)鐘信號(hào),另一個(gè)是數(shù)據(jù)信號(hào)。通過(guò)管理接口,上層能監(jiān)視和控制PHY。
由此可見,MAC 和 PHY,一個(gè)是數(shù)據(jù)鏈路層,一個(gè)是物理層;兩者通過(guò) MII 傳送數(shù)據(jù)。
系統(tǒng)組成
從硬件的角度來(lái)分析,以太網(wǎng)的電路接口一般由CPU、MAC(Media Access Control)控制器和物理層接口PHY組成:
對(duì)于上述三部分,并不一定都是獨(dú)立的芯片,主要有以下幾種情況:(1)CPU內(nèi)部集成了MAC和PHY,難度較高;(2)CPU內(nèi)部集成MAC,PHY采用獨(dú)立芯片(主流方案);(3)CPU不集成MAC和PHY,MAC和PHY采用獨(dú)立芯片或者集成芯片(高端采用)。
PHY整合了大量模擬硬件,而MAC是典型的全數(shù)字器件,芯片面積及模擬/數(shù)字混合架構(gòu)的原因,是將MAC集成進(jìn)微控制器而將PHY留在片外的原因。更靈活、密度更高的芯片技術(shù)已經(jīng)可以實(shí)現(xiàn)MAC和PHY的單芯片整合。
以常用的CPU內(nèi)部集成MAC,PHY采用獨(dú)立的芯片方案為例,虛線內(nèi)表示CPU和MAC集成在一起,PHY芯片通過(guò)MII接口與CPU上的MAC互聯(lián)。
對(duì)于這種方案,其硬件方案比獨(dú)立的更簡(jiǎn)單,PHY與MAC之間有以下兩個(gè)重要的硬件接口:(1)MDIO總線接口,主要是完成CPU對(duì)于PHY芯片的寄存器配置;(2)MII即媒體獨(dú)立接口,也叫介質(zhì)無(wú)關(guān)接口。常見的有MII、RMII、GMII、RGMII等。“媒體獨(dú)立”表明在不對(duì) MAC 硬件重新設(shè)計(jì)或替換的情況下,任何類型的 PHY 設(shè)備都可以正常工作。MII 數(shù)據(jù)接口總共需要16個(gè)信號(hào),包括:
transmit data - TXD[3:0]
transmit strobe - TX_EN
transmit clock - TX_CLK
transmit error - TX_ER/TXD4
receive data - RXD[3:0]
receive strobe - RX_DV
receive clock - RX_CLK
receive error - RX_ER/RXD4
collision indication - COL
carrier sense - CRS
一般說(shuō)來(lái),包括IC 對(duì) PHY 作讀取與寫入用的一組信號(hào):MDC(clock),MDIO(data) 作為 data sampling reference 用的兩組 clock,頻率應(yīng)為 25MHz(TX_CLK,RX_CLK)各4-bit 的輸出、輸入 Bus(TX[0:3],RX[0:3]);通知對(duì)方準(zhǔn)備輸入數(shù)據(jù)的輸出、輸入的啟動(dòng)信號(hào)(TX_EN);輸出、輸入的錯(cuò)誤通知信號(hào)(TX_ER,RX_ER);得到有效輸入數(shù)據(jù)的通知信號(hào)(RX_DV);網(wǎng)絡(luò)出現(xiàn)擁塞的 colision 信號(hào)(Col)。做為 carrier 回復(fù)用的信號(hào)(CRS),電位可使用+5V 或+3.3V。
MII 以 4bit,即半字節(jié)方式雙向傳送數(shù)據(jù),時(shí)鐘速率 25MHz,其工作速率可達(dá) 100Mb/s。MII傳遞了網(wǎng)絡(luò)的所有數(shù)據(jù)和數(shù)據(jù)的控制,而 MAC對(duì)PHY 的工作狀態(tài)的確定和對(duì) PHY 的控制則是使用 SMI ( Serial Management Interface) 界面通過(guò)讀寫PHY的寄存器來(lái)完成的。PHY 里面的部分寄存器是 IEEE 定義的,這樣 PHY 把自己的目前的狀態(tài)反映到寄存器里面,MAC 通過(guò) SMI 總線不斷地讀取 PHY 的狀態(tài)寄存器以得知目前 PHY 的狀態(tài),例如連接速度,雙工能力等。當(dāng)然也可以通過(guò) SMI 設(shè)置 PHY 的寄存器達(dá)到控制的目的,例如流控地打開關(guān)閉,自協(xié)商模式還是強(qiáng)制模式等。
不論是物理連接的 MII 總線和 SMI 總線還是 PHY 的狀態(tài)寄存器和控制寄存器都是有 IEEE 的規(guī)范的,因此不同公司的 MAC 和 PHY 一樣可以協(xié)調(diào)工作。當(dāng)然為了配合不同公司的 PHY 的自己特有的一些功能,驅(qū)動(dòng)需要做相應(yīng)的修改。
SMI
SMI是MAC內(nèi)核訪問(wèn)PHY寄存器接口,它由兩根線組成、雙工,MDC為時(shí)鐘,MDIO為雙向數(shù)據(jù)通信,原理上跟I2C總線很類似,也可以通過(guò)總線訪問(wèn)多個(gè)不同的PHY。
MDC/MDIO基本特性:
兩線制:MDC(時(shí)鐘線)和MDIO(數(shù)據(jù)線)。
時(shí)鐘頻率:2.5MHz
通信方式:總線制,可同時(shí)接入的PHY數(shù)量為32個(gè)
通過(guò)SMI接口,MAC芯片主動(dòng)地輪詢PHY層芯片,獲得狀態(tài)信息,并發(fā)出命令信息。
后來(lái)為了支持千兆網(wǎng)口,也就開始有了千兆網(wǎng)的MII接口,也就是GMII接口。現(xiàn)在比較常用的是RGMII,減小了MAC和PHY之間的引腳數(shù)量。數(shù)據(jù)信號(hào)和控制信號(hào)混合在一起,并且在工作時(shí)鐘的上升沿和下降沿同時(shí)采樣,其對(duì)應(yīng)關(guān)系如下:10M帶寬對(duì)應(yīng)的是2.5MHz,因?yàn)?bit*2.5M=10Mbps100M帶寬對(duì)應(yīng)的是25MHz,因?yàn)?bit*25M=100Mbps1000M帶寬對(duì)應(yīng)的是125MHz,4bit*125M=1000Mbps,因?yàn)?50MHz頻率太高,所以采用雙邊沿采樣技術(shù)(會(huì)帶來(lái)設(shè)計(jì)復(fù)雜度)。
審核編輯:湯梓紅
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5374瀏覽量
171093 -
網(wǎng)卡
+關(guān)注
關(guān)注
3文章
303瀏覽量
27336 -
Mac
+關(guān)注
關(guān)注
0文章
1099瀏覽量
51368 -
PHY
+關(guān)注
關(guān)注
2文章
301瀏覽量
51693 -
MII
+關(guān)注
關(guān)注
0文章
5瀏覽量
6027
原文標(biāo)題:以太網(wǎng)——PHY、MAC、MII與網(wǎng)卡
文章出處:【微信號(hào):cdebyte,微信公眾號(hào):億佰特物聯(lián)網(wǎng)應(yīng)用專家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論