建立在ARM基礎(chǔ)上的ADSL2+測(cè)試儀的設(shè)計(jì)
引言
近幾年來,不對(duì)稱數(shù)字用戶線(ADSL)作為網(wǎng)絡(luò)“最后一公里”問題的理想解決方案在世界范圍內(nèi)得到了廣泛運(yùn)用。在我,ADSL業(yè)務(wù)已成為運(yùn)營(yíng)商收入的主要增點(diǎn)之一。但由于現(xiàn)有電話線路專門為傳送低頻語(yǔ)音信號(hào)所設(shè)計(jì),不利于高頻信號(hào)傳輸,線路周邊環(huán)境惡劣且復(fù)雜多變,無論ADSL業(yè)務(wù)的開通還是正常的運(yùn)營(yíng)維護(hù),都需進(jìn)行一系列復(fù)雜的測(cè)試工作。
現(xiàn)有測(cè)試儀表多為國(guó)外品牌且價(jià)格昂貴,國(guó)內(nèi)產(chǎn)品普遍存在測(cè)試頻段有限,測(cè)試結(jié)果片面的問題;而且由于核心芯片處理能力有限,嵌入式操作系統(tǒng)不先進(jìn),軟件包功能不夠完善,對(duì)測(cè)試結(jié)果的管理也比較混亂。隨著市場(chǎng)不斷壯大,尤其是基于ITU G.992.3/ G.992.5標(biāo)準(zhǔn)的ADSL2/ 2+推出后,價(jià)格合理、功能完備、操作簡(jiǎn)便的測(cè)試工具成為寬帶運(yùn)營(yíng)商的迫切需求?;诜N現(xiàn)狀,本文提出了一款新型ADSL2+測(cè)試儀,采用ARM9處理器與Windows CE操作系統(tǒng),全面提升了產(chǎn)品的處理能力和可靠性,并使用液晶觸摸屏為用戶提供了直觀簡(jiǎn)便的友好界面,可以在用戶環(huán)路不同位置進(jìn)行網(wǎng)絡(luò)服務(wù)質(zhì)量評(píng)估。
系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件結(jié)構(gòu)如圖1所示,主要由ARM控制處理模塊、內(nèi)置Modem模塊及相關(guān)模擬測(cè)試模塊三部分組成。其中控制處理模塊是測(cè)試儀的核心部分,負(fù)責(zé)系統(tǒng)整體控制與相關(guān)的數(shù)據(jù)處理。
圖1 系統(tǒng)硬件結(jié)構(gòu)
控制處理模塊
本儀表要求具有液晶顯示及觸摸屏等部分,因此在要求高速數(shù)據(jù)處理能力同時(shí),也要求相當(dāng)?shù)目刂颇芰?,系統(tǒng)采用的ARM9系列32位微控制器S3C2410X頻率可達(dá)203MHz,能夠輕松運(yùn)行WinCE、Linux等操作系統(tǒng)以及進(jìn)行較為復(fù)雜的信息處理。同時(shí),采用5英寸STN液晶屏直觀的顯示各項(xiàng)測(cè)試指標(biāo),彌補(bǔ)了現(xiàn)有測(cè)試工具顯示效果的缺陷。使用觸摸屏代替鍵盤輸入部分,使便攜優(yōu)勢(shì)更為突出。考慮到操作系統(tǒng)運(yùn)行及大量高速數(shù)據(jù)處理的需要,系統(tǒng)采用了兩塊32M SDRAM,一塊32M NAND Flash及一塊2M NOR Flash,程序、操作系統(tǒng)及測(cè)試數(shù)據(jù)保存于NAND Flash中,系統(tǒng)從16位NOR Flash引導(dǎo)啟動(dòng)。
內(nèi)置Modem模塊
在測(cè)試線路傳輸性能數(shù)時(shí),系統(tǒng)可不經(jīng)用戶Modem直接連通局端,ADSL/ ADSL2/ 2+數(shù)據(jù)幀經(jīng)內(nèi)置Modem轉(zhuǎn)換并送至CPU解碼分析,因此選擇一款性能可靠?jī)?yōu)良的Modem芯片也極為重要。本系統(tǒng)采用了美國(guó)BROADCOM公司基于最新ADSL2+標(biāo)準(zhǔn)的BCM6338芯片,適用于ADSL / ADSL2/ ADSL2+等各型網(wǎng)絡(luò),確保了測(cè)試結(jié)果的可靠性。
[!--empirenews.page--]
模擬測(cè)試模塊
物理層測(cè)試主要包括電壓、電阻、電容測(cè)試等內(nèi)容,并內(nèi)嵌了時(shí)域反射計(jì)(TDR)用于線路故障定位。全部測(cè)試功能由一獨(dú)立板卡實(shí)現(xiàn),經(jīng)通用I/O口及A/D轉(zhuǎn)換口送至CPU處理存儲(chǔ)。其中電壓、電阻、電容等測(cè)試經(jīng)測(cè)算電壓后計(jì)算所得。S3C2410內(nèi)部集成了一個(gè)8通道10Bit的ADC轉(zhuǎn)換模塊,A/D轉(zhuǎn)換器以片上采樣、保持方式工作,支持掉電模式,其測(cè)量模擬輸入電壓范圍為0~3.3V,在Windows CE環(huán)境下可以實(shí)現(xiàn)外部模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換。圖2是一個(gè)典型電壓測(cè)量的運(yùn)用。
TEST0/TEST1是模擬待測(cè)量電壓,經(jīng)10倍分壓后接到一個(gè)減法放大器,然后與2410的第6支路AD6管腳連接,進(jìn)行信號(hào)傳輸、濾波。通過設(shè)備驅(qū)動(dòng)程序可以得到10Bit的ADC值,根據(jù)這一值計(jì)算AD6的模擬電壓VAD6為:*3.3,根據(jù)原理圖,可以得到外部待測(cè)點(diǎn)TEST0的電壓,計(jì)算公式為:VTEST=
系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件整體結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)軟件結(jié)構(gòu)
系統(tǒng)軟件開發(fā)使用的是Platform Builder 4.2和Embedded Visual C++ 4.0(EVC)。
操作系統(tǒng)內(nèi)核
選擇一款既滿足應(yīng)用要求,性價(jià)比又最佳的實(shí)時(shí)操作系統(tǒng)是本次開發(fā)任務(wù)的關(guān)鍵。綜合考慮到操作系統(tǒng)對(duì)硬件的支持及二次開發(fā)的簡(jiǎn)便性等方面,系統(tǒng)采用了微軟公司的Windows CE。
操作系統(tǒng)的定制移植是項(xiàng)目開發(fā)的重要步驟,我們使用Platform Builder的集成開發(fā)環(huán)境,在選定BSP,根據(jù)項(xiàng)目需要以及存儲(chǔ)器容量限制,裁減內(nèi)核、刪除不必要的系統(tǒng)組件,建立一個(gè)操作系統(tǒng)鏡像工程后,添加自定義的模塊組件到Platform Builder相應(yīng)的工程中,生成一個(gè)操作系統(tǒng)鏡像。Windows CE的特性目錄是可以擴(kuò)展的,可以將自己創(chuàng)制的特性如驅(qū)動(dòng)程序等文件加入到特性目錄中,Platform Builder利用.cec文件來建立特性目錄,它允許Platform Builder顯示這個(gè)特性到集成開發(fā)環(huán)境,并且可以將這個(gè)特性加到一個(gè)操作系統(tǒng)中。
應(yīng)用程序
本項(xiàng)目需開發(fā)的應(yīng)用程序主要包括數(shù)據(jù)運(yùn)算顯示和系統(tǒng)控制兩部分,使用EVC開發(fā)和調(diào)試。系統(tǒng)主要測(cè)試項(xiàng)目有物理層測(cè)試、網(wǎng)絡(luò)層測(cè)試。
物理層測(cè)試用于測(cè)試ADSL/ADSL2/ 2+線路的物理層參數(shù),包括ADSL/ ADSL2/ 2+連接狀態(tài)、連接模式、上/下行速率、噪聲裕量、線路衰減、輸出功率、CRC誤碼、HEC誤碼、FEC誤碼、OCD誤碼、NCD誤碼以及信道比特圖。
通過儀器內(nèi)置的ADSL2+ Modem 進(jìn)行PPPoE撥號(hào),建立PPPoE撥號(hào)連接后,可以進(jìn)行網(wǎng)絡(luò)層的Ping、Ipconfig、Tracert、Route測(cè)試。
設(shè)備驅(qū)動(dòng)程序
Platform Builder雖然自帶了一些標(biāo)準(zhǔn)的BSP,里面也有一些通用的驅(qū)動(dòng)程序,但對(duì)于一些專用的設(shè)備和功能,Platform Builder自帶的驅(qū)動(dòng)無法滿足要求。為了便于與模擬測(cè)試部分的通訊與控制以及液晶觸摸屏的使用,還需編寫相應(yīng)的接口驅(qū)動(dòng)程序,主要包括用于TDR測(cè)試的具有PWM功能的I/O口驅(qū)動(dòng)等,使用C語(yǔ)言編寫。
PWM是一種對(duì)模擬信號(hào)電平進(jìn)行數(shù)字編碼的方法,通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制,用來對(duì)一個(gè)具體模擬信號(hào)的電平進(jìn)行編碼。S3C2410X集成了4個(gè)具有PWM功能的計(jì)時(shí)器,需使用PWM功能時(shí),通過驅(qū)動(dòng)程序可以調(diào)整PWM控制寄存器,控制I/O口輸出等幅值不同寬度的脈沖來等效理想的波形。PWM驅(qū)動(dòng)源代碼略.