多USB接口的局域網(wǎng)接入技術的實現(xiàn)
摘要:提出了一種全新的計算機接入局域網(wǎng)的方案,使多臺計算機可以方便地使用各自的USB接口接入局域網(wǎng),并提供了該方案的實現(xiàn)方法。關鍵詞:通用串行總線(USB) 局域網(wǎng)
目前,在局域網(wǎng)內(nèi)部,計算機接入局域網(wǎng)的傳統(tǒng)方法是通過在計算機主板上安裝以太網(wǎng)卡來實現(xiàn)網(wǎng)絡的互聯(lián)。這種接入方式需要計算機主板上有閑置的ISA或者PCI插槽,還需要上級網(wǎng)絡設備有足夠的接口支持。當上級網(wǎng)絡設備的下行接口數(shù)量不夠時,必須在這個網(wǎng)絡設備下面添加集線器(HUB)或者交換機(Switcher)。
針對這種情況,本文提出了一種多通用串行總線(USB)接口的局域網(wǎng)接入適配器。它將傳統(tǒng)意義上的多塊以太網(wǎng)卡和集線器的功能集于一身,使多臺計算機可以用各自的USB接口連接到上級網(wǎng)絡設備的一個下行接口,并在內(nèi)部采用了比集線器功能更為更強大交換控制器,對各接口的數(shù)據(jù)流量加以控制,保證可靠地運行。
與傳統(tǒng)的通過以太網(wǎng)卡的局域網(wǎng)接入方式相比較,這種通過USB接口的局域網(wǎng)接入方式具有很多優(yōu)點:安裝簡便,支持熱插拔,而且不需要在計算機內(nèi)部安裝以太網(wǎng)卡,尤其在主板插槽緊張時節(jié)省了資源。
(范文先生網(wǎng)www.qkfawen.com收集整理)
1 系統(tǒng)硬件組成
本文所述的系統(tǒng)實現(xiàn)了對四路USB接口的局域網(wǎng)接入。圖1是整個系統(tǒng)的硬件組成框圖。
1.1 物理層
物理層芯片連接上級網(wǎng)絡設備的下行RJ45接口和交換控制器。本文所述系統(tǒng)用臺灣REALTEK公司的RTL8204芯片實現(xiàn)。這塊芯片是一塊高度集成的10BASE-T/100BASE-TX/FX的以太網(wǎng)收發(fā)芯片。RTL8204包括了四個獨立的通道,可以同時收發(fā)四路以太網(wǎng)信號,每路通道都集成了4B5B編解碼器、曼徹斯特編解碼器、加擾器、解擾器、輸出驅(qū)動、輸出波形形成、濾波、數(shù)字自適應均衡和鎖相環(huán)模塊。但在本系統(tǒng)中只用了一路連接外部局域網(wǎng)。與普通物理層芯片所具有的質(zhì)獨立(MII)接口相比較,RTL8204使用了相對簡單的簡化介質(zhì)獨立(RMII)接口向上與MAC層進行連接。這種RMII接口省掉了MII接口中的許多控制信號和數(shù)據(jù)信號,將15位信號減到了7位,簡化了硬件的設計工作[3]。
1.2 交換控制器
本系統(tǒng)采用的交換控制器是臺灣REALTEK公司的RTL8308B芯片。這是一塊具有8端口10Mbps/100Mbps的交換控制器。它對各個端口的數(shù)據(jù)進行處理并交換,并對各端口的流量加以控制。RTL8308B每個端口都能夠處理10Mbps或者100Mbps的數(shù)據(jù),可以工作在全雙工或者半雙工模式下。與RTL8204一樣,RTL8308B的接口也是RMII接口,硬件設計非常方便。
RTL8308B片內(nèi)集成有2MB的DRAM?梢杂米鲾(shù)據(jù)包的緩存。RTL8308B支持IEEE802.3x全雙工流量控制和半雙工后退壓力算法、地址學習算法、廣播風暴控制和環(huán)路測試功能。RTL8308B片外用一片串行EEPROM 24LC02B實現(xiàn)對芯片的配置[4]。
1.3 USB轉(zhuǎn)換芯片
USB轉(zhuǎn)換芯片對USB接口的數(shù)據(jù)、控制信號和RMII接口的數(shù)據(jù)、控制信號進行轉(zhuǎn)換。本系統(tǒng)采用臺灣ASIX公司的AX88170作為USB協(xié)議轉(zhuǎn)換芯片。這塊芯片片內(nèi)5KB×16bit的SRAM,內(nèi)部對數(shù)據(jù)進行USB協(xié)議和網(wǎng)絡協(xié)議轉(zhuǎn)換。它支持USB1.1標準,并可連接基于IEEE 702.3或IEEE 802.3u以太網(wǎng)協(xié)議下的10Mbps/100Mbps網(wǎng)絡,而且在支持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轉(zhuǎn)換芯片AX88170。在EEPROM 24LC02B內(nèi)設置好物理端口對應的物理地址,使RTL8308B的A端口到H端口對應著物理地址08H~0FH。
2.2 RTL8204的配置
RTL8204的系統(tǒng)配置通過讀取某些控制引腳上電時刻的電平來實現(xiàn)。RTL8204在上電時讀取對應的引腳電平,并將其狀態(tài)寫入自己的內(nèi)部寄存器中。這些控制引腳包括速率的選擇(10Mbps/100Mbps)、全雙工/半雙工的選擇以及自動協(xié)商的使能。本系統(tǒng)選擇了自動協(xié)商工作方式,使RTL8204可以自動地與傳輸方式未知的上級網(wǎng)絡設備協(xié)商物理層信號的傳輸方式。
降此以外,對RTL8204最重要的配置是其端口的物理地址的設備。本系統(tǒng)用RTL8204的C端口連接RTL8308B的C端口,要求這兩個端口的物理地址一致。前文所述,RTL8308B的C端口地址應為0AH,所以,應該將該RTL8204的C端口地址設置成為0AH,具體設備方法可以參考文獻[3]。
2.3 AX88170的系統(tǒng)配置
USB轉(zhuǎn)換芯片AX88170的數(shù)據(jù)接口可以選擇MII接口或者RMII接口,本系統(tǒng)選擇了設計較為簡單的RMII接口。AX88170還可以工作在PHY模式或者MAC模式下,在本系統(tǒng)中,RTL8308B工作在MAC層,對其他芯片的傳輸方式進行控制。所以,這里需要將MX88170設置為工作在PHY模式下。
和前所述的REL8204、RTL8308B一樣,AX88170的物理地址的設置也要與RTL8308B的設置相一致。本文中的4片AX88170分別與RTL8308B的E、F、G、H端口連接,所以對應的物理端口地址應該分別設置為0CH、0DH、0E和0FH。
除此之外,在存儲AX88170控制信息的EEPROM93LC56中,還存儲這個端口的MAC地址。這里4個MAC地址和RTL8308B的MAC地址的選擇應該避免自身的重復,并且不應與現(xiàn)有局域網(wǎng)里的MAC地址重復。
2.4 其它控制信號
整個系統(tǒng)的復位信號的重要性不言而喻,除了每片芯片都有各自最小時間的要求外,交換控制器RTL8308B還要求在復位后完成重新配置的時間不能早于其他物理層芯片(即RTL8204和4片MX88170)的配置暗。也就是說,RTL8308B的復位時間不能短于其他物理層芯片的復位時間。所以本系統(tǒng)還采用了MAXIM的MAX809芯片用作所有芯片的復位信號,既保證了復位信號的單穩(wěn)的可靠性,也保證了RTL8308B和其他物理層芯片的復位時間是相等的。
在本系統(tǒng)中,時鐘信號成為重要,特別是50MHz的時鐘信號。50MHz時鐘信號需要連接到RTL8308B、RTL8204和4片MX88170的RMII接口,需要足夠的驅(qū)動能力,并且它們之間的相位差要足夠小才可以保證傳輸?shù)目煽啃。本系統(tǒng)采用了IDT公司的49FCT3805(1:5時鐘驅(qū)動芯片)對時鐘信號增加了驅(qū)動力,并增大了扇出。
3 測試程序和驅(qū)動程序
為了方便硬件的調(diào)試,還需要編寫簡單的測試程序來調(diào)試系統(tǒng)。除標準USB指令外,AX88170廠家提供了關于MX88170的特殊指令,包括讀寫EEPROM、讀寫片內(nèi)收發(fā)存儲器、讀寫內(nèi)部其他控制寄存器等,方便了系統(tǒng)的調(diào)試。由于MX88170芯片的廠商免費提供了其在Windows 98、Windows 2000和Windows Me下的驅(qū)動程序,所以本系統(tǒng)僅僅編寫了簡單的USB設備的測試程序,主要用來調(diào)試AX88170的工作狀態(tài)。圖2給出了程序的流程圖。程序初始化后打開目標設備,然后讀取設備標識和配置標識并判斷。如果正確,則繼續(xù)讀取設備標識和配置標識并判斷。如果正確,則繼續(xù)讀取EEPROM里的MAC地址和物理端口地址,之后向MX88170的片內(nèi)發(fā)送SRAM和接收SRAM讀寫數(shù)據(jù),如果結(jié)果正確即證明AX88170已經(jīng)能夠正常工作。MX88170完整的驅(qū)動程序由芯片廠端免費提供。
經(jīng)過測試,本系統(tǒng)工作性能穩(wěn)定。
本系統(tǒng)用于辦公室或?qū)嶒炇噎h(huán)境下的計算機組網(wǎng),支持IEEE 802.3的10Mbps/100Mbps以太網(wǎng)標準,兼容全雙工和半雙工網(wǎng)絡。圖3為它的應用實例,它可以將4臺電腦通過USB接口連接在一起,并與局域網(wǎng)相連,從而實現(xiàn)多臺計算機的信息交換、資源共享。各用戶終端可以通過本設備連接至局域網(wǎng),進而與Internet網(wǎng)絡相連。
系統(tǒng)下一步的改進主要針對兩個方面:一是高速的USB 2.0協(xié)議;二是增加USB接口數(shù)量,使其能適應更高速更復雜的網(wǎng)絡。
與傳統(tǒng)的用以太網(wǎng)卡的局域網(wǎng)接入方式相比較,利用本文的USB接口以太網(wǎng)適配器接入較為靈活、方便,而且成本低廉,具有良好的市場前景。
【多USB接口的局域網(wǎng)接入技術的實現(xiàn)】相關文章:
多 USB 接口的局域網(wǎng)接入技術的實現(xiàn)08-06
USB接口的高速數(shù)據(jù)采集卡的設計與實現(xiàn)08-06
EZ-USB接口設備的軟配置技術08-06
RS232接口轉(zhuǎn)USB接口的通信方法08-06
基于DSP平臺的USB接口設計08-06
基于USB接口的數(shù)據(jù)采集系統(tǒng)設計08-06
DSP與慢速設備接口的實現(xiàn)08-06
基于CH371的實用USB接口設計08-06