基于DSP和VC的網(wǎng)絡通信檢測系統(tǒng)的研究
摘要:對網(wǎng)路通信系統(tǒng)功能的維修檢測是在當今電子通信行業(yè)不可缺少的一部分,基于此提出了一種針對網(wǎng)路通信系統(tǒng)的功能檢測的方案,該方案基于DSP和VC實現(xiàn),體系簡單,具有很強的可操作行和實現(xiàn)性。本方案還給出了對網(wǎng)路通信系統(tǒng)的總線通信和音頻口的性能檢測的開發(fā)流程。
關鍵詞:DSP;VC;通信;音頻口
嵌入式技術是目前電子行業(yè)研究的熱點,然而嵌入式技術在網(wǎng)路通信上的應用更成為了一種必然的趨勢。本文針對網(wǎng)路通信系統(tǒng)的維修保障,給出了基于DSP和VC及網(wǎng)絡通信的對網(wǎng)路通信系統(tǒng)性能進行檢測的精簡、高效的設計方案,能夠在短時間內對網(wǎng)路通信系統(tǒng)進行快速檢測。
1 系統(tǒng)的硬件結構設計
系統(tǒng)的硬件結構主要包括基于TMS320VC5510 DSP處理芯片和CS8900A的網(wǎng)卡芯片電路的設計,如圖1所示。DSP芯片是本系統(tǒng)設計的核心,它完成了對設備測量數(shù)據(jù)的解析及處理,已經按照既定的通信協(xié)議與VC程序完成了數(shù)據(jù)的傳輸和測試控制。本系統(tǒng)采用的是美國TI公司開發(fā)的TMS320VC5510微處理芯片,它具有更高的代碼執(zhí)行效率和更低的功耗,其最高指令執(zhí)行速度可達800MIPS,它主要由CPU、外設總線控制器、DMA控制器、片上外設和片上存儲單元等幾大部分組成。網(wǎng)卡芯片采用的是Cirrus Logic公司生產的es8900a局域網(wǎng)處理芯片,它采用的是100 pin TQFP封裝,內部集成了在片RAM、10BASE-T收發(fā)濾波器,并且提供8位和16位兩種接口。
2 測試方法流程
首先由VC通過串口向DSP發(fā)送各個模塊的測試命令,DSP收到這些命令后,根據(jù)命令解析函數(shù)解析命令,調用不同處理函數(shù)去完成相應的操作,并把最終的測試結果返回給VC,并在VC界面中顯示測量結果。在DSP中主要遵循層層調用的原則,即:VC程序發(fā)送命令給DSP,進入DSP中斷函數(shù),中斷函數(shù)調用dsp55x.c中的命令解析函數(shù),對收到的不同命令,dsp55x.c通過調用cs8900a.c中不同的處理函數(shù)來完成不同的測試功能,然后通過寫串口函數(shù)把測試結果回送給VC程序,這樣的設計與調用順序清晰明了,程序規(guī)范而易懂。
我們把測試命令分為三類:DSP模擬總線通信命令;各個接口發(fā)功能測試;各個接口收功能測試。
如果DSP收到總線連接命令,則調用cs8900a函數(shù)Send_Data(),利用以太網(wǎng)發(fā)送函數(shù)ethemet_driver_send(),模擬總線發(fā)確認幀。
如果DSP收到的是各接口發(fā)功能測試命令,則調用cs8900a函數(shù)Send_Data(),利用以太網(wǎng)發(fā)送函數(shù)ethemet_driver_send(),模擬各接口發(fā)不同的音頻數(shù)據(jù)包,這里不同的數(shù)據(jù)包是根據(jù)不同的測試接口調用expand_packet_change()函數(shù)而改變的,主要更改的是目標MAC地址、源MAC地址、命令字等關鍵信息,音頻數(shù)據(jù)部分可以采用同樣的數(shù)據(jù)。
如果DSP收到的是各接口收功能測試命令,則調用cs8900a函數(shù)Send_Data(),利用音頻測試函數(shù)YinPinV(intflag),根據(jù)A律轉線性函數(shù)alaw21inear()解碼出來的存放在expand_packet[]數(shù)組中的數(shù)據(jù)計算電壓幅值、調制速率等參數(shù),這里,expand_packet[]是在aria_broad cast()函數(shù)中不斷更新的。
具體的DSP程序測試流程示意圖如圖2所示:
[!--empirenews.page--]
3 軟件模塊測試函數(shù)說明
主要對VC、dsp55x.c、cs8900a.c三個源文件中包含的測試函數(shù)進行相關的描述,及主要函數(shù)的流程說明。
3.1 VC模塊測試函數(shù)
主要包括相關的連接命令發(fā)送函數(shù)、測試命令發(fā)送函數(shù)、測試結果接受函數(shù)。通過發(fā)送連接測試命令建立與被測接口的正常通信,然后通過發(fā)送相關的測試命令控制DSP完成相應的操作,最終顯示由DSP測試顯示的結果。
3.2 dsp55x.c模塊測試函數(shù)
本模塊主要通過讀串口信息,獲取由VC發(fā)送的測試命令,然后調用cs8900a.c中的相關測試函數(shù),通過cs8900a與被測設備建立通信方式,然后把相關的測試結果經過DSP中的算法處理,然后通過串口發(fā)送給VC程序。
3.3 es8900a.c模塊測試函數(shù)
cs8900a.c主要完成與網(wǎng)口操作有關的工作,如DSP模擬發(fā)功能時,通過網(wǎng)口向外發(fā)送數(shù)據(jù)包,DSP模擬收功能時,通過網(wǎng)口接收數(shù)據(jù)包,還有廣播函數(shù)arp_broadcast()一直在讀以太網(wǎng)上傳來的數(shù)據(jù),并把符合條件的音頻數(shù)據(jù)通過A律轉線性函數(shù)alaw2linear()解碼,保存在特定數(shù)組中,這些數(shù)組一直在更新,在我們測試的時候可以隨時調用這些數(shù)組進行各參數(shù)計算,并且完成了精簡協(xié)議棧在DSP中的移植,使得網(wǎng)口可以進行數(shù)據(jù)傳輸。
3.4 關鍵函數(shù)流程圖
在測試程序中,最關鍵的函數(shù)就是各接口收/發(fā)音頻測試函數(shù),即為dsp55x.c中的YinPinTest()和cs8900a.c中的YinPinV(int flag)這兩個關鍵函數(shù)的流程圖分別如圖3、圖4所示。
4 設計結論
在本課題中提出了基于DSP和VC的對網(wǎng)絡通信系統(tǒng)性能進行測試的方案,以及其實現(xiàn)方法,TMS320VC5510微處理芯片高效率的代碼執(zhí)行和cs8900a穩(wěn)定的網(wǎng)卡芯片可以確保最終可實現(xiàn)在短時間內對網(wǎng)絡通信系統(tǒng)的現(xiàn)場保障和維修檢測。接下來的研究中還需要解決的問題是,如何解決不同測試命令之間的交互、測試方法的穩(wěn)定性以及VC測試流程和被測設備之間的時序調整,設置可以通過網(wǎng)絡來傳輸檢測的結果,實現(xiàn)對設備的遠程檢測及分析。