DSP在實(shí)時(shí)信號模擬器中的應用
在通信、雷達等數字信號處理系統的設計中,信號模擬器發(fā)揮著(zhù)至關(guān)重要的作用。模擬器用來(lái)模擬實(shí)際工作過(guò)程中信號處理系統的各種輸入信號,從而方便了系統調試??梢岳矛F有儀器模擬這些信號,也可以設計專(zhuān)門(mén)的模擬器。這兩種方法各有特點(diǎn):儀器模擬省去了模擬器的設計和調試過(guò)程,比較方便;但有時(shí)現有儀器并不能完全滿(mǎn)足系統測試的要求,另外有些儀器的價(jià)格相當昂貴(專(zhuān)用的信道仿真設備一般在24000到500000美元之間[1])。因此,在信號模擬的方法上應視實(shí)際情況而定:對于A(yíng)DC這樣輸入信號比較簡(jiǎn)單的的系統,可以利用任意波形發(fā)生器這些測試儀器進(jìn)行測試;而對需要多輸入或輸入信號種類(lèi)比較多的系統一般需要設計專(zhuān)用的模擬器。一般來(lái)說(shuō),能用容易得到儀器完成的信號模擬不需要設計專(zhuān)用模擬器。
近年來(lái),隨著(zhù)電子技術(shù)的飛速發(fā)展,DSP、FPGA的性能得到很大提高的同時(shí),其價(jià)格也在下降。因而,使DSP、FPGA得到了廣泛的應用。另外,支持即插即用的USB總線(xiàn)技術(shù),可以方便地完成與計算機的連接。本文利用DSP、FPGA完成了一個(gè)基于USB總線(xiàn)的
可編程信號模擬器,該模擬器可以應用到雷達、通信等領(lǐng)域,尤其是無(wú)線(xiàn)個(gè)人網(wǎng)(WPAN)方面。本文首先介紹模擬器所能完成的功能;接下來(lái)將對該模擬器的系統結構進(jìn)行介紹;在第三部分,詳細介紹各部分硬件的功能;在第四部分,介紹各部分軟件結構;最后各該模擬系統的性能指標,以及模擬WPAN信號的方法。
1 模擬器的系統結構和功能
本模擬器的核心處理芯片采用TI的TMS320VC5402,該芯片是一款性?xún)r(jià)比較高的16bits定點(diǎn)DSP處理器。系統結構如圖1所示。
該模擬器由4個(gè)外部接口:USB接口、雙路模擬輸出接口、數字量輸出接口、用戶(hù)可編程輸出接口等。其中USB接口負責模擬器與計算機之間的通信,接收PC發(fā)送來(lái)的命令,向PC發(fā)送模擬器狀態(tài)等;雙路模擬/數字量輸出接口以不同的方式將模擬結果送出系統;用戶(hù)可根據自己的需要編程產(chǎn)生一些自定義數字量/PWM等信號經(jīng)過(guò)用戶(hù)可編程接口輸出。該模擬器可以由PC機控制,產(chǎn)生I/Q兩路信號進(jìn)行模擬和數字量輸出。預留有用戶(hù)可編程接口,方便用戶(hù)和其它系統進(jìn)行無(wú)縫連接,如:RF模塊等。
2 模擬器硬件組成
2.1 DSP處理器
該模擬器用到2個(gè)DSP處理器(TMS320VC5402),其處理能力可達100MIPS。其中DSP1負責控制USB接口芯片,與PC進(jìn)行通信。并將接收到的數據和命令進(jìn)行處理后,經(jīng)FIFO或多緩沖同步串口(McBSP)與DSP2進(jìn)行通信。DSP2進(jìn)行最后的處理,產(chǎn)生相應的波形送給FIFO;同時(shí)向FPGA發(fā)送相應命令。FPGA根據命令控制DAC、及各輸出接口,將波形數據輸出。從而實(shí)時(shí)產(chǎn)生模擬數據和波形。
TMS320VC5402片內有16Kⅹ16bitsDARAM可以滿(mǎn)足一般系統的處理要求,但考慮到系統擴展,在本系統中預留有外部RAM。該外部RAM可以分配為數據空間或程序空間,進(jìn)行不同空間的大小擴展。
從系統結構圖中可以看出,模擬器的數據流是單向的。DSP的數據總線(xiàn)為16bits寬,利用兩片8bits異步單向FIFO(IDT72v01)進(jìn)行寬度擴展,組成一個(gè)16bits的單向FIFO進(jìn)行數據傳輸??梢詫祿腄SP1傳送到DSP2,由DSP2傳送到各輸出接口。另外,我們利用兩個(gè)DSP的McBSP進(jìn)行一些關(guān)鍵參數、及需要進(jìn)行雙向傳輸的數據進(jìn)行通信傳輸。FIFO通信時(shí),將其空/滿(mǎn)標志經(jīng)過(guò)譯碼連接到對應DSP的READY信號上。這樣DSP在進(jìn)行FIFO讀寫(xiě)時(shí),不會(huì )出現空讀、和漏讀現象。從而可以保證數據傳輸的可靠性和實(shí)時(shí)性。
2.2 USB總線(xiàn)接口
USB總線(xiàn)是一種通用的計算機串行接口總線(xiàn)標準,可以連接多個(gè)設備。USB總線(xiàn)標準目前有:1.0、1.1和2.0多個(gè)標準。其中:1.0、1.1標準最高提供12Mbps的傳輸速率;2.0標準最高提供480Mbps的傳輸速率。在該模擬器中,采用1.1標準的USB接口芯片USBN9602/3。
USBN9602/3是美國國家半導體公司生產(chǎn)的一款支持USB1.1標準的接口芯片。該芯片提供多種數據接口方式(8bits并口、并口復用、和MICROWIRE/PLUS),方便與控制器進(jìn)行連接。相對來(lái)說(shuō),8bits并口訪(fǎng)問(wèn)方式,訪(fǎng)問(wèn)簡(jiǎn)單讀取速度比較快。該模擬器利用DSP對USBN9602/3進(jìn)行控制,其數據線(xiàn)和地址線(xiàn)訪(fǎng)問(wèn)比較方便,因此采用8bits并口訪(fǎng)問(wèn)方式。USBN9602/3中斷信號通知DSP進(jìn)行時(shí)間處理。
2.3 可編程邏輯器件
本模擬器中兩個(gè)DSP的外圍器件的譯碼由一片CPLD完成。該CPLD根據DSP的PS、DS、IS、MSTROB、IOSTROB、WR、以及地址線(xiàn)譯碼得到外圍器件(USBN9602/3、FIFO、RAM)的片選、讀寫(xiě)等信號。
輸出接口部分的FPGA負責完成對DAC、及FIFO的控制,產(chǎn)生他們需要的片選、讀寫(xiě)、時(shí)鐘等信號。模擬器中采用alteral公司的FPGA,在該器件中設計了多個(gè)PWM輸出控制器、多個(gè)數字量輸出控制寄存器。DSP2可以按照訪(fǎng)問(wèn)USBN9602/3的方式訪(fǎng)問(wèn)FPGA,對FPGA內部的寄存器進(jìn)行操作。從而進(jìn)行PWM和數字量輸出。此外用和還可以根據自己的要求設計相應的功能,以滿(mǎn)足不同用戶(hù)的要求。alteral公司的FPGA由多種在線(xiàn)可編程方式,為了方便用戶(hù)升級,我們采用8位并行加載方式。用戶(hù)生成的下載文件經(jīng)USB口傳送給DSP1,由DSP1經(jīng)過(guò)其總線(xiàn)下載
導FPGA中。從而減少了利用EPROM、JTAG等其他方式加載時(shí),對硬件進(jìn)行的EPROM燒寫(xiě)、插拔等其他操作。對編程時(shí)FPGA和模擬器正常使用時(shí)一樣,無(wú)需對硬件進(jìn)行操作,做到了完全在線(xiàn)編程。2.4 DAC模擬輸出
本模擬器采用AD公司的8-Bit雙路發(fā)射機用DAC AD9709作為數模轉換芯片。該芯片的最大轉換速率可達125MSPS,可以應用到通信、基站、數字合成、三維超聲等領(lǐng)域。AD9709的數字輸入端有雙路并行、交織輸入兩種模式。我們采用能充分利用數據帶寬的雙路并行輸入方式。AD9709模擬輸出為兩路差分信號,運放AD8041完成差分轉單端。其功能框圖如下:
3 軟件結構
本模擬器的軟件包括DSP和FPGA兩部分。DSP1軟件包括:USB控制,數據接收、處理、傳輸,FPGA配置,DSP2的引導等工作。DSP2軟件相對較少,DSP1送來(lái)的數據進(jìn)行處理,將處理后的數據送到各接口處,并控制各接口的工作狀態(tài)。FPGA完成數字、模擬各接口的具體控制。圖3為兩個(gè)DSP的程序流程。
圖3 兩個(gè)DSP的程序流程
系統引導方式(Bootloader)。TMS320VC5402本身提供多種引導方式:HPI、串行EEPROM、并口、標準串口(McBSP0、McBSP1)、及IO引導方式等。該系統的程序存放在FLASH中,該FLASH由DSP1訪(fǎng)問(wèn)。因此,DSP1采用并口引導,DSP2采用McBSP0引導。在系統啟動(dòng)時(shí),首先DSP1從并口將FLASH中的對應程序引導到DSP1的程序存儲空間中,并執行相應程序。接著(zhù),DSP1從FLASH中讀取DSP2的程序,將該數據經(jīng)McBSP口傳送給DSP2的McBSP0,對DSP2進(jìn)行引導。在兩片DSP引導、及運行過(guò)程中,利用BIO和XF引腳進(jìn)行握手,從而對整個(gè)系統的運行進(jìn)行同步和協(xié)調。
DSP1的處理流程如圖3中左圖所示,DSP1完成除了完成上面提到的兩個(gè)DSP的引導外。還要完成USB控制、控制FPGA、處理數據、向DSP2傳輸數據。DSP1根據USBN9602/3的中斷信號,讀取USB的狀態(tài),判斷,進(jìn)行相應的控制(其中自然包括USB的枚舉過(guò)程)。兩個(gè)DSP之間由BIO和XF引腳進(jìn)行握手,是并行系統的握手信號,對整個(gè)程序的協(xié)調執行進(jìn)行同步。
DSP2根據DSP1發(fā)送的命令,對數據進(jìn)行相應處理,并向FPGA發(fā)送控制字,調整FPGA的狀態(tài)。由FPGA控制DAC、數字、PWM等接口的工作。
4 應用
綜上所述,該模擬器具有數字模擬輸出接口,可以方便地和PC及進(jìn)行連接控制。其性能較高,最高輸出帶寬可達50MHz。該模擬器經(jīng)編程可以滿(mǎn)足雷達、通信等領(lǐng)域應用的要求。下面以其在信道實(shí)時(shí)仿真中的應用,說(shuō)明其應用過(guò)程。
信道仿真在通信系統設計中必不可少的,因此設計一個(gè)WPAN信道實(shí)時(shí)仿真系統具有一定的實(shí)用價(jià)值。WPAN有著(zhù)廣闊的前景,目前802.15.4標準尚未確定,商用設備沒(méi)有出現。尚處于開(kāi)發(fā)研制階段,而對于系統性能的調試、測試來(lái)說(shuō),信道實(shí)時(shí)仿真至關(guān)重要。我們知道,WPAN的數據率一般不大,在Kbps量級,也就是說(shuō)信道仿真系統的數據吞吐率和數據處理量將不會(huì )太大。
該模擬器DSP1通過(guò)USB接收PC機發(fā)送來(lái)的MAC數據,DSP1種的發(fā)射機程序完成對數據的編碼調制,產(chǎn)生相應的波形數據;該數據經(jīng)過(guò)FIFO傳送到DSP2,DSP2的信道模型程序模擬WSSUS信道處理數據,并向FPGA發(fā)送控制字,調整DAC的工作狀態(tài),經(jīng)FIFO將波形數據送到模擬和數字輸出接口。另外,用戶(hù)自定義接口,模擬用戶(hù)的特定的信號,可以和一些其他電路模塊進(jìn)行連接,以滿(mǎn)足其他需要。例如,連接上RF模塊就可以將波形數據發(fā)送到對應的無(wú)線(xiàn)信道等等。
5 結論
利用DSP+FPGA完成的模擬器具有良好的實(shí)用性和可編程性,適合雷達、通信等不同領(lǐng)域的應用。USB接口,可以利用PC機方便地進(jìn)行通信和數據分析。多種輸出接口模擬、數字、用戶(hù)自定義接口更加擴展了應用領(lǐng)域。
評論