《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業(yè)界動態(tài) > 多USB接口的局域網接入技術的實現(xiàn)

多USB接口的局域網接入技術的實現(xiàn)

2008-11-27
作者:程 石 胡愛群 蔡天佑 王興建

  摘? 要: 提出了一種全新的計算機接入局域網的方案,使多臺計算機可以方便地使用各自的USB接口接入局域網,并提供了該方案的實現(xiàn)方法,。?

  關鍵詞: 通用串行總線(USB)? 局域網?

?

  目前,在局域網內部,計算機接入局域網的傳統(tǒng)方法是通過在計算機主板上安裝以太網卡來實現(xiàn)網絡的互聯(lián),。這種接入方式需要計算機主板上有閑置的ISA或者PCI插槽,還需要上級網絡設備有足夠的接口支持。當上級網絡設備的下行接口數(shù)量不夠時,必須在這個網絡設備下面添加集線器(HUB)或者交換機(Switcher)。?

  針對這種情況,本文提出了一種多通用串行總線(USB)接口的局域網接入適配器,。它將傳統(tǒng)意義上的多塊以太網卡和集線器的功能集于一身,使多臺計算機可以用各自的USB接口連接到上級網絡設備的一個下行接口,并在內部采用了比集線器功能更為強大的交換控制器,對各接口的數(shù)據(jù)流量加以控制,保證可靠地運行,。?

  與傳統(tǒng)的通過以太網卡的局域網接入方式相比較,這種通過USB接口的局域網接入方式具有很多優(yōu)點:安裝簡便,支持熱插拔,而且不需要在計算機內部安裝以太網卡,尤其在主板插槽緊張時節(jié)省了資源。?

1 系統(tǒng)硬件組成?

  本文所述的系統(tǒng)實現(xiàn)了對四路USB接口的局域網接入,。圖1是整個系統(tǒng)的硬件組成框圖,。?

?

?

1.1 物理層?

  物理層芯片" title="物理層芯片">物理層芯片連接上級網絡設備的下行RJ45接口和交換控制器。本文所述系統(tǒng)用臺灣REALTEK公司的RTL8204芯片實現(xiàn),。這塊芯片是一塊高度集成的10BASE-T/100BASE-TX/FX的以太網收發(fā)芯片,。RTL8204包括了四個獨立的通道,可以同時收發(fā)四路以太網信號,每路通道都集成了4B5B編解碼器、曼徹斯特編解碼器,、加擾器,、解擾器、輸出驅動,、輸出波形形成,、濾波、數(shù)字自適應均衡和鎖相環(huán)模塊,。但在本系統(tǒng)中只用了一路連接外部局域網,。與普通物理層芯片所具有的介質獨立(MII)接口相比較,RTL8204使用了相對簡單的簡化介質獨立(RMII)接口向上與MAC層進行連接。這種RMII接口省掉了MII接口中的許多控制信號和數(shù)據(jù)信號,將15位信號減到了7位,簡化了硬件的設計工作[3],。?

1.2 交換控制器?

  本系統(tǒng)采用的交換控制器是臺灣REALTEK公司的RTL8308B芯片,。這是一塊具有8端口10Mbps/100Mbps" title="100Mbps">100Mbps的交換控制器。它對各個端口的數(shù)據(jù)進行處理并交換,并對各端口的流量加以控制,。RTL8308B每個端口都能夠處理10Mbps或者100Mbps的數(shù)據(jù),可以工作在全雙工" title="全雙工">全雙工或者半雙工" title="半雙工">半雙工模式下,。與RTL8204一樣,RTL8308B的接口也是RMII接口,硬件設計非常方便。?

  RTL8308B片內集成有2MB的DRAM,可以用作數(shù)據(jù)包的緩存,。RTL8308B支持IEEE802.3x全雙工流量控制和半雙工后退壓力算法,、地址學習算法、廣播風暴控制和環(huán)路測試功能,。RTL8308B片外用一片串行EEPROM 24LC02B實現(xiàn)對芯片的配置[4],。?

1.3 USB轉換芯片?

  USB轉換芯片" title="轉換芯片">轉換芯片對USB接口的數(shù)據(jù)、控制信號和RMII接口的數(shù)據(jù),、控制信號進行轉換,。本系統(tǒng)采用臺灣ASIX公司的AX88170作為USB協(xié)議轉換芯片。這塊芯片片內有5KB×16bit的SRAM,內部對數(shù)據(jù)進行USB協(xié)議和網絡協(xié)議轉換,。它支持USB1.1標準,并可連接基于IEEE 802.3或IEEE 802.3u以太網協(xié)議下的10Mbps/100Mbps網絡,而且在支持MII接口的同時,還支持簡單的RMII接口,方便硬件的設計,。?

  AX88170片外用一片串行EEPROM 93LC56實現(xiàn)對芯片的配置[5]。?

1.4 通用串行總線(USB)接口?

  通用串行總線(USB)設備在即插即用的特性上能夠較好地滿足用戶使用方便的要求,。USB規(guī)范目前有兩個版本:1.1和2.0,。目前,絕大多數(shù)計算機主板還只是支持USB 1.1規(guī)范的最高12Mbps速率,所以本系統(tǒng)是針對USB 1.1規(guī)范進行的[1],。?

2 硬件配置?

2.1 RTL8308B的配置?

  交換控制器RTL8308B的配置是通過芯片在上電時讀取串行EEPROM 24LC02B及某些控制引腳的電平來實現(xiàn)的。這其中包括廣播控制使能,、半雙工后退壓力函數(shù)使能,、全雙工流量控制、環(huán)路監(jiān)測函數(shù)使能位,、CRC校驗允許位,、Hash算法使能位等。對這些控制位的使能,本系統(tǒng)視需要而定,這里不再一一敘述,。?

  此外,非常重要的是選擇好RTL8308B的物理端口,并設置好其對應的物理地址,。如果物理地址沒有設置正確,交換控制器將不能正常地從連接端口交換數(shù)據(jù)。在本系統(tǒng)中,根據(jù)芯片手冊要求及實際需要,選取C端口連接RTL8204的C端口,E,、F,、G、H分別連接4片USB轉換芯片AX88170,。在EEPROM 24LC02B內設置好物理端口對應的物理地址,使RTL8308B的A端口到H端口對應著物理地址08H~0FH,。?

2.2 RTL8204的配置?

  RTL8204的系統(tǒng)配置通過讀取某些控制引腳上電時刻的電平來實現(xiàn)。RTL8204在上電時讀取對應的引腳電平,并將其狀態(tài)寫入自己的內部寄存器中,。這些控制引腳包括速率的選擇(10Mbps/100Mbps),、全雙工/半雙工的選擇以及自動協(xié)商的使能。本系統(tǒng)選擇了自動協(xié)商工作方式,使RTL8204可以自動地與傳輸方式未知的上級網絡設備協(xié)商物理層信號的傳輸方式,。?

  除此以外,對RTL8204最重要的配置是其端口的物理地址的設置,。本系統(tǒng)用RTL8204的C端口連接RTL8308B的C端口,要求這兩個端口的物理地址一致,。前文所述,RTL8308B的C端口地址應為0AH,所以,應該將該RTL8204的C端口地址設置成為0AH,具體設置方法可以參考文獻[3],。?

2.3 AX88170的系統(tǒng)配置?

  USB轉換芯片AX88170的數(shù)據(jù)接口可以選擇MII接口或者RMII接口,本系統(tǒng)選擇了設計較為簡單的RMII接口。AX88170還可以工作在PHY模式或者MAC模式下,在本系統(tǒng)中,RTL8308B工作在MAC層,對其他芯片的傳輸方式進行控制,。所以,這里需要將AX88170設置為工作在PHY模式下,。?

  和前所述的RTL8204、RTL8308B一樣,AX88170的物理地址的設置也要與RTL8308B的設置相一致,。本文中的4片AX88170分別與RTL8308B的E,、F、G,、H端口連接,所以對應的物理端口地址應該分別設置為0CH,、0DH、0EH和0FH,。?

  除此以外,在存儲AX88170控制信息的EEPROM 93LC56中,還存有這個端口的MAC地址,。這里4片AX88170的4個MAC地址和RTL8308B的MAC地址的選擇應該避免自身的重復,并且不應與現(xiàn)有局域網里的MAC地址重復。?

2.4 其它控制信號?

  整個系統(tǒng)的復位信號的重要性不言而喻,除了每片芯片都有各自最小時間的要求外,交換控制器RTL8308B還要求在復位后完成重新配置的時間不能早于其他物理層芯片(即RTL8204和4片AX88170)的配置時間,。也就是說,RTL8308B的復位時間不能短于其他物理層芯片的復位時間,。所以本系統(tǒng)采用了MAXIM的MAX809芯片用作所有芯片的復位信號,既保證了復位信號的單穩(wěn)的可靠性,也保證了RTL8308B和其他物理層芯片的復位時間是相等的,。?

  在本系統(tǒng)中,時鐘信號尤為重要,特別是50MHz的時鐘信號。50MHz時鐘信號需要連接到RTL8308B,、RTL8204和4片AX88170的RMII接口,需要足夠的驅動能力,并且它們之間的相位差要足夠小才可以保證傳輸?shù)目煽啃?。本系統(tǒng)采用了IDT公司的49FCT3805(1:5時鐘驅動芯片)對時鐘信號增加了驅動力,并增大了扇出。?

3 測試程序和驅動程序?

  為了方便硬件的調試,還需要編寫簡單的測試程序來調試系統(tǒng),。除標準USB指令外,AX88170廠家提供了關于AX88170的特殊指令,包括讀寫EEPROM,、讀寫片內收發(fā)存儲器、讀寫內部其他控制寄存器等,方便了系統(tǒng)的調試,。由于AX88170芯片的廠商免費提供了其在Windows 98,、Windows 2000和Windows Me下的驅動程序,所以本系統(tǒng)僅僅編寫了簡單的USB設備的測試程序,主要用來調試AX88170的工作狀態(tài)。圖2給出了程序的流程圖,。程序初始化后打開目標設備,然后讀取設備標識和配置標識并判斷,。如果正確,則繼續(xù)讀取EEPROM里的MAC地址和物理端口地址,之后向AX88170的片內發(fā)送SRAM和接收SRAM讀寫數(shù)據(jù),如果結果正確即證明AX88170已經能夠正常工作。AX88170完整的驅動程序由芯片廠商免費提供,。

?

?

  經過測試,本系統(tǒng)工作性能穩(wěn)定,。?

  本系統(tǒng)用于辦公室或實驗室環(huán)境下的計算機組網,支持IEEE 802.3的10Mbps/100Mbps以太網標準,兼容全雙工和半雙工網絡。圖3為它的應用實例,它可以將4臺電腦通過USB接口連接在一起,并與局域網相連,從而實現(xiàn)多臺計算機的信息交換,、資源共享,。各用戶終端可以通過本設備連接至局域網,進而與Internet網絡相連。?

?

?

  系統(tǒng)下一步的改進主要針對兩個方面:一是高速的USB 2.0協(xié)議;二是增加USB接口數(shù)量,使其能適應更高速更復雜的網絡,。?

  與傳統(tǒng)的用以太網卡的局域網接入方式相比較,利用本文的多USB接口以太網適配器接入較為靈活,、方便,而且成本低廉,具有良好的市場前景。?

參考文獻?

1 Universal Serial Bus Specification Revision 1.1 http://www.usb.org?

2 Jan Axelson. USB大全. 北京:中國電力出版社,2001?

3 RTL8204? Datasheet.? REALTEK Corp. 2001?

4 RTL8308B Datasheet.? REALTEK Corp. 2001?

5 AX88170? Datasheet.? ASIX Corp. 2001?

6 Chris Cant. Windows WDM設備驅動程序開發(fā)指南.北京:機械工業(yè)出版社,2000?

本站內容除特別聲明的原創(chuàng)文章之外,,轉載內容只為傳遞更多信息,,并不代表本網站贊同其觀點。轉載的所有的文章,、圖片,、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者,。如涉及作品內容,、版權和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。