可編程器件在以太網(wǎng)集線器中的應(yīng)用
發(fā)布時間:2008/5/28 0:00:00 訪問次數(shù):544
1 引言
隨著以太網(wǎng)技術(shù)的發(fā)展和成熟,應(yīng)用范圍日益廣泛。以太網(wǎng)的互聯(lián)技術(shù)也從早期采用專用同軸電纜的總線式網(wǎng)絡(luò)發(fā)展到現(xiàn)在的多層交換機(jī)方式。傳輸和交換的效率和可靠性大為提高。在普通的商用網(wǎng)絡(luò)中由于交換機(jī)性能高,擴(kuò)展性強(qiáng)等優(yōu)勢,逐漸成為了以太網(wǎng)互聯(lián)的主流技術(shù),而集線器技術(shù)已經(jīng)基本不再使用,逐漸淡出市場。但是在某些特殊的應(yīng)用場合需要使用一些特殊的技術(shù),比如網(wǎng)絡(luò)安全方面的數(shù)據(jù)監(jiān)測、攻擊檢測、防范等。網(wǎng)絡(luò)系統(tǒng)往往需要將每一個網(wǎng)絡(luò)端口的數(shù)據(jù)進(jìn)行收集和分析,如果使用交換機(jī)來完成,需要交換機(jī)具有特殊的端口監(jiān)視能力,勢必導(dǎo)致交換及設(shè)計復(fù)雜,使用成本高昂。如果使用集線器技術(shù),雖然傳輸交換的效率會低一些,但是要實(shí)現(xiàn)監(jiān)測和數(shù)據(jù)收集將變得很容易。另外,集線器還有傳輸延時小、響應(yīng)速度快等特點(diǎn),對于要求實(shí)時性能的系統(tǒng)而言也是一種優(yōu)勢。目前通用的集線器已基本停產(chǎn),元器件廠商也停止開發(fā)有關(guān)元器件,因此有必要采用其它方式來實(shí)現(xiàn)集線器的功能。本文介紹一種用可編程器件fpga實(shí)現(xiàn)集線器的原理和方法。
2 集線器工作原理
集線器(hub)工作于is0(國際標(biāo)準(zhǔn)化組織)的osi(開放系統(tǒng)互聯(lián))七層模型中的物理層,其實(shí)質(zhì)是一個多端口的中繼器。主要功能是對接收到的信號進(jìn)行再生放大.以擴(kuò)大網(wǎng)絡(luò)的傳輸距離。因?yàn)橐蕴W(wǎng)遵循"先聽后說"的csma/cd協(xié)議,所以計算機(jī)在發(fā)送數(shù)據(jù)前首先進(jìn)行載波偵聽。只有當(dāng)判定網(wǎng)絡(luò)空閑時,才發(fā)送數(shù)據(jù)。早期的總線方式就是所有網(wǎng)絡(luò)中的計算機(jī)通過一條有t型分支的同軸電纜互聯(lián)起來,計算機(jī)的網(wǎng)絡(luò)接口利用同軸電纜這個共享的介質(zhì)完成載波偵聽和沖突檢測,從而進(jìn)行有效的數(shù)據(jù)包傳遞。而現(xiàn)在普遍使用的交換機(jī)則不需要檢測載波,也不存在共享介質(zhì)沖突等情況。集線器正是利用了以太網(wǎng)共享介質(zhì)這個特性,實(shí)現(xiàn)數(shù)據(jù)包的廣播傳遞方式,從而實(shí)現(xiàn)監(jiān)測、數(shù)據(jù)收集等功能。雖然集線器可以提供獨(dú)立的網(wǎng)絡(luò)接口和通道與計算機(jī)連接,但在集線器內(nèi)部,仍然采用單獨(dú)的內(nèi)部總線作為共享介質(zhì)。當(dāng)來至多個端口數(shù)據(jù)包同時出現(xiàn)時必然產(chǎn)生碰撞和沖突現(xiàn)象。根據(jù)沖突檢測的原理,這時發(fā)生碰撞和沖突的數(shù)據(jù)包會丟失,因此,集線器會強(qiáng)化沖突,使得所有連接在該集線器上的計算機(jī)網(wǎng)絡(luò)接口都能正確判斷數(shù)據(jù)包的沖突,網(wǎng)絡(luò)接口就可以根據(jù)一定的規(guī)則重發(fā)該數(shù)據(jù)幀。也是因?yàn)槿绱?集線器的規(guī)模一般不能太大,而且網(wǎng)絡(luò)上數(shù)據(jù)包有效傳輸負(fù)載率也不能太高,否則發(fā)生沖突的概率會大大增加,造成數(shù)據(jù)多次重發(fā),甚至丟包,影響網(wǎng)絡(luò)的傳輸可靠性。系統(tǒng)設(shè)計時必須要考慮集線器的這些特性。
3 集線器的實(shí)現(xiàn)
3.1 實(shí)現(xiàn)方法
以太網(wǎng)物理層的幀結(jié)構(gòu)包含前導(dǎo)碼、定界符和物理層凈荷,集線器根據(jù)前導(dǎo)碼和定界符識別出數(shù)據(jù)包進(jìn)行處理。目前通用的以太網(wǎng)物理層收發(fā)器技術(shù)已經(jīng)非常成熟。以100m以太網(wǎng)物理層接口器件為例,可以提供mii以及rmii等接口與數(shù)據(jù)包處理電路相連。因此,本文以rmii接口為例對集線器實(shí)現(xiàn)原理進(jìn)行闡述。集線器要實(shí)現(xiàn)的功能主要有數(shù)據(jù)接收、沖突檢
測、沖突加強(qiáng)、數(shù)據(jù)廣播。
數(shù)據(jù)接收功能主要實(shí)現(xiàn)從各端口接收到的crs_dv和rxd中提取出有效的數(shù)據(jù)包,如圖1所示,提取的依據(jù)是在接收到的crs_dv有效并且rxd未發(fā)生載波錯誤的前提下,前導(dǎo)碼和sfd(定界符)以后的數(shù)據(jù)為有效的凈荷數(shù)據(jù)。由于集線器對接收的數(shù)據(jù)不作改變,直接再生后轉(zhuǎn)發(fā),所以數(shù)據(jù)存儲只需幾個時鐘周期,便于后續(xù)處理電路判斷和轉(zhuǎn)發(fā)。
沖突檢測是根據(jù)各端口的數(shù)據(jù)包是否同時到達(dá)作為判定依據(jù)的,若兩個或兩個以上的端口有數(shù)據(jù)包同時到達(dá),則被認(rèn)為發(fā)生了數(shù)據(jù)包沖突,集線器對沖突的反應(yīng)是加強(qiáng)沖突,亦即在檢測到?jīng)_突期間向所有端口發(fā)送強(qiáng)化沖突包,若沖突依然存在,則間隔960ns后繼續(xù)加強(qiáng)沖突,直到?jīng)_突消失。在發(fā)送加強(qiáng)的沖突信號期間應(yīng)保證其完整性,即使沖突加強(qiáng)期間,檢測到?jīng)_突消失,也要把加強(qiáng)的沖突信號發(fā)送完畢。
數(shù)據(jù)廣播是將某個端口收到的數(shù)據(jù)向其它的所有端口發(fā)送,這是集線器的基本功能,也是集線器在各個端口之間轉(zhuǎn)發(fā)數(shù)據(jù)包的唯一工作方式。如圖2所示,tx_en是發(fā)送使能,txd是發(fā)送數(shù)據(jù)。發(fā)出的數(shù)據(jù)包含前導(dǎo)碼、定界符和凈荷數(shù)據(jù)。
另外,如果fpga規(guī)模允許,設(shè)計上還可以在可編程芯片中實(shí)現(xiàn)物理層功能,由fpga處理信號電平變換、時鐘提取、數(shù)據(jù)編解碼等功能,進(jìn)一步提高系統(tǒng)的集成度和可靠性。
3.2 仿真波形
本文中設(shè)計的集線器是多端口的,可編程器件實(shí)現(xiàn)完成后進(jìn)行了模擬仿真,圖3是無沖突的情況的仿真波形,集線器將收到的端口1的數(shù)據(jù)轉(zhuǎn)發(fā)給所有端口,圖中rx_dv_in是端口的載波偵聽/數(shù)據(jù)有效標(biāo)志,rxd rmii0是端口0的接收數(shù)據(jù),tx en 0ut是端口的發(fā)送使能,txd_mii0、txd_rmii2、txd_rmii3是其中3個端口的發(fā)送數(shù)據(jù)。此時沒有沖突,數(shù)據(jù)包正常廣播出去。
集線器同時收到端口0和端口1的數(shù)據(jù)的仿真波形圖,數(shù)據(jù)包發(fā)生沖突,因此沖突檢測標(biāo)志collision detect置高電平,然后集線器加強(qiáng)沖突collision enhance置
1 引言
隨著以太網(wǎng)技術(shù)的發(fā)展和成熟,應(yīng)用范圍日益廣泛。以太網(wǎng)的互聯(lián)技術(shù)也從早期采用專用同軸電纜的總線式網(wǎng)絡(luò)發(fā)展到現(xiàn)在的多層交換機(jī)方式。傳輸和交換的效率和可靠性大為提高。在普通的商用網(wǎng)絡(luò)中由于交換機(jī)性能高,擴(kuò)展性強(qiáng)等優(yōu)勢,逐漸成為了以太網(wǎng)互聯(lián)的主流技術(shù),而集線器技術(shù)已經(jīng)基本不再使用,逐漸淡出市場。但是在某些特殊的應(yīng)用場合需要使用一些特殊的技術(shù),比如網(wǎng)絡(luò)安全方面的數(shù)據(jù)監(jiān)測、攻擊檢測、防范等。網(wǎng)絡(luò)系統(tǒng)往往需要將每一個網(wǎng)絡(luò)端口的數(shù)據(jù)進(jìn)行收集和分析,如果使用交換機(jī)來完成,需要交換機(jī)具有特殊的端口監(jiān)視能力,勢必導(dǎo)致交換及設(shè)計復(fù)雜,使用成本高昂。如果使用集線器技術(shù),雖然傳輸交換的效率會低一些,但是要實(shí)現(xiàn)監(jiān)測和數(shù)據(jù)收集將變得很容易。另外,集線器還有傳輸延時小、響應(yīng)速度快等特點(diǎn),對于要求實(shí)時性能的系統(tǒng)而言也是一種優(yōu)勢。目前通用的集線器已基本停產(chǎn),元器件廠商也停止開發(fā)有關(guān)元器件,因此有必要采用其它方式來實(shí)現(xiàn)集線器的功能。本文介紹一種用可編程器件fpga實(shí)現(xiàn)集線器的原理和方法。
2 集線器工作原理
集線器(hub)工作于is0(國際標(biāo)準(zhǔn)化組織)的osi(開放系統(tǒng)互聯(lián))七層模型中的物理層,其實(shí)質(zhì)是一個多端口的中繼器。主要功能是對接收到的信號進(jìn)行再生放大.以擴(kuò)大網(wǎng)絡(luò)的傳輸距離。因?yàn)橐蕴W(wǎng)遵循"先聽后說"的csma/cd協(xié)議,所以計算機(jī)在發(fā)送數(shù)據(jù)前首先進(jìn)行載波偵聽。只有當(dāng)判定網(wǎng)絡(luò)空閑時,才發(fā)送數(shù)據(jù)。早期的總線方式就是所有網(wǎng)絡(luò)中的計算機(jī)通過一條有t型分支的同軸電纜互聯(lián)起來,計算機(jī)的網(wǎng)絡(luò)接口利用同軸電纜這個共享的介質(zhì)完成載波偵聽和沖突檢測,從而進(jìn)行有效的數(shù)據(jù)包傳遞。而現(xiàn)在普遍使用的交換機(jī)則不需要檢測載波,也不存在共享介質(zhì)沖突等情況。集線器正是利用了以太網(wǎng)共享介質(zhì)這個特性,實(shí)現(xiàn)數(shù)據(jù)包的廣播傳遞方式,從而實(shí)現(xiàn)監(jiān)測、數(shù)據(jù)收集等功能。雖然集線器可以提供獨(dú)立的網(wǎng)絡(luò)接口和通道與計算機(jī)連接,但在集線器內(nèi)部,仍然采用單獨(dú)的內(nèi)部總線作為共享介質(zhì)。當(dāng)來至多個端口數(shù)據(jù)包同時出現(xiàn)時必然產(chǎn)生碰撞和沖突現(xiàn)象。根據(jù)沖突檢測的原理,這時發(fā)生碰撞和沖突的數(shù)據(jù)包會丟失,因此,集線器會強(qiáng)化沖突,使得所有連接在該集線器上的計算機(jī)網(wǎng)絡(luò)接口都能正確判斷數(shù)據(jù)包的沖突,網(wǎng)絡(luò)接口就可以根據(jù)一定的規(guī)則重發(fā)該數(shù)據(jù)幀。也是因?yàn)槿绱?集線器的規(guī)模一般不能太大,而且網(wǎng)絡(luò)上數(shù)據(jù)包有效傳輸負(fù)載率也不能太高,否則發(fā)生沖突的概率會大大增加,造成數(shù)據(jù)多次重發(fā),甚至丟包,影響網(wǎng)絡(luò)的傳輸可靠性。系統(tǒng)設(shè)計時必須要考慮集線器的這些特性。
3 集線器的實(shí)現(xiàn)
3.1 實(shí)現(xiàn)方法
以太網(wǎng)物理層的幀結(jié)構(gòu)包含前導(dǎo)碼、定界符和物理層凈荷,集線器根據(jù)前導(dǎo)碼和定界符識別出數(shù)據(jù)包進(jìn)行處理。目前通用的以太網(wǎng)物理層收發(fā)器技術(shù)已經(jīng)非常成熟。以100m以太網(wǎng)物理層接口器件為例,可以提供mii以及rmii等接口與數(shù)據(jù)包處理電路相連。因此,本文以rmii接口為例對集線器實(shí)現(xiàn)原理進(jìn)行闡述。集線器要實(shí)現(xiàn)的功能主要有數(shù)據(jù)接收、沖突檢
測、沖突加強(qiáng)、數(shù)據(jù)廣播。
數(shù)據(jù)接收功能主要實(shí)現(xiàn)從各端口接收到的crs_dv和rxd中提取出有效的數(shù)據(jù)包,如圖1所示,提取的依據(jù)是在接收到的crs_dv有效并且rxd未發(fā)生載波錯誤的前提下,前導(dǎo)碼和sfd(定界符)以后的數(shù)據(jù)為有效的凈荷數(shù)據(jù)。由于集線器對接收的數(shù)據(jù)不作改變,直接再生后轉(zhuǎn)發(fā),所以數(shù)據(jù)存儲只需幾個時鐘周期,便于后續(xù)處理電路判斷和轉(zhuǎn)發(fā)。
沖突檢測是根據(jù)各端口的數(shù)據(jù)包是否同時到達(dá)作為判定依據(jù)的,若兩個或兩個以上的端口有數(shù)據(jù)包同時到達(dá),則被認(rèn)為發(fā)生了數(shù)據(jù)包沖突,集線器對沖突的反應(yīng)是加強(qiáng)沖突,亦即在檢測到?jīng)_突期間向所有端口發(fā)送強(qiáng)化沖突包,若沖突依然存在,則間隔960ns后繼續(xù)加強(qiáng)沖突,直到?jīng)_突消失。在發(fā)送加強(qiáng)的沖突信號期間應(yīng)保證其完整性,即使沖突加強(qiáng)期間,檢測到?jīng)_突消失,也要把加強(qiáng)的沖突信號發(fā)送完畢。
數(shù)據(jù)廣播是將某個端口收到的數(shù)據(jù)向其它的所有端口發(fā)送,這是集線器的基本功能,也是集線器在各個端口之間轉(zhuǎn)發(fā)數(shù)據(jù)包的唯一工作方式。如圖2所示,tx_en是發(fā)送使能,txd是發(fā)送數(shù)據(jù)。發(fā)出的數(shù)據(jù)包含前導(dǎo)碼、定界符和凈荷數(shù)據(jù)。
另外,如果fpga規(guī)模允許,設(shè)計上還可以在可編程芯片中實(shí)現(xiàn)物理層功能,由fpga處理信號電平變換、時鐘提取、數(shù)據(jù)編解碼等功能,進(jìn)一步提高系統(tǒng)的集成度和可靠性。
3.2 仿真波形
本文中設(shè)計的集線器是多端口的,可編程器件實(shí)現(xiàn)完成后進(jìn)行了模擬仿真,圖3是無沖突的情況的仿真波形,集線器將收到的端口1的數(shù)據(jù)轉(zhuǎn)發(fā)給所有端口,圖中rx_dv_in是端口的載波偵聽/數(shù)據(jù)有效標(biāo)志,rxd rmii0是端口0的接收數(shù)據(jù),tx en 0ut是端口的發(fā)送使能,txd_mii0、txd_rmii2、txd_rmii3是其中3個端口的發(fā)送數(shù)據(jù)。此時沒有沖突,數(shù)據(jù)包正常廣播出去。
集線器同時收到端口0和端口1的數(shù)據(jù)的仿真波形圖,數(shù)據(jù)包發(fā)生沖突,因此沖突檢測標(biāo)志collision detect置高電平,然后集線器加強(qiáng)沖突collision enhance置
熱門點(diǎn)擊
- Xilinx FPGA全局時鐘和第二全局時鐘
- 使用C編譯器+ICD2調(diào)試程序需要注意的問題
- Altera發(fā)布低成本低功耗CPLD EPM
- 基于VHDL的彩燈控制
- FPGA與DDR3 SDRAM的接口設(shè)計
- 基于IP模塊的PCI接口設(shè)計及FPGA實(shí)現(xiàn)
- 基于GCC的嵌入式程序插裝技術(shù)
- 組態(tài)王6.53
- ELD
- EDA技術(shù)在數(shù)字系統(tǒng)設(shè)計分析中的應(yīng)用
推薦技術(shù)資料
- 聲道前級設(shè)計特點(diǎn)
- 與通常的Hi-Fi前級不同,EP9307-CRZ這臺分... [詳細(xì)]
- 超低功耗角度位置傳感器參數(shù)技術(shù)
- 四路輸出 DC/DC 降壓電源
- 降壓變換器和升降壓變換器優(yōu)特點(diǎn)
- 業(yè)界首創(chuàng)可在線編程電源模塊 m
- 可編程門陣列 (FPGA)智能 電源解決方案
- 高效先進(jìn)封裝工藝
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究