《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > DSP完成的實(shí)時(shí)信號(hào)模擬器
DSP完成的實(shí)時(shí)信號(hào)模擬器
摘要: 本文基于DSP設(shè)計(jì)了一種可編程實(shí)時(shí)信號(hào)模擬器。該模擬器包括USB、模擬、數(shù)字、用戶自定義接口,。其中USB接口可以方便地和PC機(jī)進(jìn)行通信,模擬,、數(shù)字和用戶接口輸出模擬器產(chǎn)生的模擬和數(shù)字信號(hào),。DSP是模擬器的核心器件,對(duì)數(shù)據(jù)進(jìn)行處理,,和各部分的管理,。FPGA完成DAC等器件的時(shí)序及接口控制等。本模擬器提供在線升級(jí)功能,用戶經(jīng)USB接口可對(duì)板上的FPGA和DSP程序進(jìn)行升級(jí),。另外,,F(xiàn)PGA編程可產(chǎn)生用戶需要的各種接口信號(hào)。這樣便于和其他模塊進(jìn)行連接,,擴(kuò)大了適用范圍,。DSP編程可以產(chǎn)生用戶需要的波形。該模擬器在數(shù)據(jù)通信系統(tǒng)等領(lǐng)域,,具有一定的實(shí)用意義,。
關(guān)鍵詞: DSP 模擬器 TMS320VC5402
Abstract:
Key words :

       前言

  在通信、雷達(dá)等數(shù)字信號(hào)處理系統(tǒng)的設(shè)計(jì)中,,信號(hào)模擬器發(fā)揮著至關(guān)重要的作用,。模擬器用來模擬實(shí)際工作過程中信號(hào)處理系統(tǒng)的各種輸入信號(hào),從而方便了系統(tǒng)調(diào)試,??梢岳矛F(xiàn)有儀器模擬這些信號(hào),也可以設(shè)計(jì)專門的模擬器,。這兩種方法各有特點(diǎn):儀器模擬省去了模擬器的設(shè)計(jì)和調(diào)試過程,,比較方便;但有時(shí)現(xiàn)有儀器并不能完全滿足系統(tǒng)測試的要求,,另外有些儀器的價(jià)格相當(dāng)昂貴(專用的信道仿真設(shè)備一般在24000到500000美元之間[1]),。因此,在信號(hào)模擬的方法上應(yīng)視實(shí)際情況而定:對(duì)于ADC這樣輸入信號(hào)比較簡單的的系統(tǒng),,可以利用任意波形發(fā)生器這些測試儀器進(jìn)行測試,;而對(duì)需要多輸入或輸入信號(hào)種類比較多的系統(tǒng)一般需要設(shè)計(jì)專用的模擬器。一般來說,,能用容易得到儀器完成的信號(hào)模擬不需要設(shè)計(jì)專用模擬器,。

  近年來,隨著電子技術(shù)的飛速發(fā)展,,DSP,、FPGA的性能得到很大提高的同時(shí),其價(jià)格也在下降,。因而,,使DSP、FPGA得到了廣泛的應(yīng)用,。另外,,支持即插即用的USB總線技術(shù),可以方便地完成與計(jì)算機(jī)的連接,。本文利用DSP,、FPGA完成了

 

一個(gè)基于USB總線的可編程信號(hào)模擬器,,該模擬器可以應(yīng)用到雷達(dá)、通信等領(lǐng)域,,尤其是無線個(gè)人網(wǎng)(WPAN)方面,。

  本文首先介紹模擬器所能完成的功能;接下來將對(duì)該模擬器的系統(tǒng)結(jié)構(gòu)進(jìn)行介紹,;在第三部分,,詳細(xì)介紹各部分硬件的功能;在第四部分,,介紹各部分軟件結(jié)構(gòu),;最后各該模擬系統(tǒng)的性能指標(biāo),以及模擬WPAN信號(hào)的方法,。

       1 模擬器的系統(tǒng)結(jié)構(gòu)和功能

  本模擬器的核心處理芯片采用TI的TMS320VC5402,,該芯片是一款性價(jià)比較高的16bits定點(diǎn)DSP處理器。系統(tǒng)結(jié)構(gòu)如圖1所示,。  

系統(tǒng)結(jié)構(gòu)

  該模擬器由4個(gè)外部接口:USB接口,、雙路模擬輸出接口、數(shù)字量輸出接口,、用戶可編程輸出接口等,。其中USB接口負(fù)責(zé)模擬器與計(jì)算機(jī)之間的通信,接收PC發(fā)送來的命令,,向PC發(fā)送模擬器狀態(tài)等,;雙路模擬/數(shù)字量輸出接口以不同的方式將模擬結(jié)果送出系統(tǒng);用戶可根據(jù)自己的需要編程產(chǎn)生一些自定義數(shù)字量/PWM等信號(hào)經(jīng)過用戶可編程接口輸出,。該模擬器可以由PC機(jī)控制,,產(chǎn)生I/Q兩路信號(hào)進(jìn)行模擬和數(shù)字量輸出。預(yù)留有用戶可編程接口,,方便用戶和其它系統(tǒng)進(jìn)行無縫連接,如:RF模塊等,。

       2 模擬器硬件組成

       2.1 DSP處理器

  該模擬器用到2個(gè)DSP處理器(TMS320VC5402),,其處理能力可達(dá)100MIPS。其中DSP1負(fù)責(zé)控制USB接口芯片,,與PC進(jìn)行通信,。并將接收到的數(shù)據(jù)和命令進(jìn)行處理后,經(jīng)FIFO或多緩沖同步串口(McBSP)與DSP2進(jìn)行通信,。DSP2進(jìn)行最后的處理,,產(chǎn)生相應(yīng)的波形送給FIFO;同時(shí)向FPGA發(fā)送相應(yīng)命令,。FPGA根據(jù)命令控制DAC,、及各輸出接口,將波形數(shù)據(jù)輸出。從而實(shí)時(shí)產(chǎn)生模擬數(shù)據(jù)和波形,。

  TMS320VC5402片內(nèi)有16Kⅹ16bitsDARAM可以滿足一般系統(tǒng)的處理要求,,但考慮到系統(tǒng)擴(kuò)展,在本系統(tǒng)中預(yù)留有外部RAM,。該外部RAM可以分配為數(shù)據(jù)空間或程序空間,,進(jìn)行不同空間的大小擴(kuò)展。

  從系統(tǒng)結(jié)構(gòu)圖中可以看出,,模擬器的數(shù)據(jù)流是單向的,。DSP的數(shù)據(jù)總線為16bits寬,利用兩片8bits異步單向FIFO(IDT72v01)進(jìn)行寬度擴(kuò)展,,組成一個(gè)16bits的單向FIFO進(jìn)行數(shù)據(jù)傳輸,。可以將數(shù)據(jù)從DSP1傳送到DSP2,,由DSP2傳送到各輸出接口,。另外,我們利用兩個(gè)DSP的McBSP進(jìn)行一些關(guān)鍵參數(shù),、及需要進(jìn)行雙向傳輸?shù)臄?shù)據(jù)進(jìn)行通信傳輸,。FIFO通信時(shí),將其空/滿標(biāo)志經(jīng)過譯碼連接到對(duì)應(yīng)DSP的READY信號(hào)上,。這樣DSP在進(jìn)行FIFO讀寫時(shí),,不會(huì)出現(xiàn)空讀、和漏讀現(xiàn)象,。從而可以保證數(shù)據(jù)傳輸?shù)目煽啃院蛯?shí)時(shí)性,。

       2.2 USB總線接口

  USB總線是一種通用的計(jì)算機(jī)串行接口總線標(biāo)準(zhǔn),可以連接多個(gè)設(shè)備,。USB總線標(biāo)準(zhǔn)目前有:1.0,、1.1和2.0多個(gè)標(biāo)準(zhǔn)。其中:1.0,、1.1標(biāo)準(zhǔn)最高提供12Mbps的傳輸速率,;2.0標(biāo)準(zhǔn)最高提供480Mbps的傳輸速率。在該模擬器中,,采用1.1標(biāo)準(zhǔn)的USB接口芯片USBN9602/3,。

  USBN9602/3是美國國家半導(dǎo)體公司生產(chǎn)的一款支持USB1.1標(biāo)準(zhǔn)的接口芯片。該芯片提供多種數(shù)據(jù)接口方式(8bits并口,、并口復(fù)用,、和MICROWIRE/PLUS),方便與控制器進(jìn)行連接,。相對(duì)來說,,8bits并口訪問方式,,訪問簡單讀取速度比較快。該模擬器利用DSP對(duì)USBN9602/3進(jìn)行控制,,其數(shù)據(jù)線和地址線訪問比較方便,,因此采用8bits并口訪問方式。USBN9602/3中斷信號(hào)通知DSP進(jìn)行時(shí)間處理,。

       2.3 可編程邏輯器件

  本模擬器中兩個(gè)DSP的外圍器件的譯碼由一片CPLD完成,。該CPLD根據(jù)DSP的PS、DS,、IS,、MSTROB、IOSTROB,、WR,、以及地址線譯碼得到外圍器件(USBN9602/3、FIFO,、RAM)的片選,、讀寫等信號(hào)。

  輸出接口部分的FPGA負(fù)責(zé)完成對(duì)DAC,、及FIFO的控制,,產(chǎn)生他們需要的片選、讀寫,、時(shí)鐘等信號(hào),。模擬器中采用alteral公司的FPGA,在該器件中設(shè)計(jì)了多個(gè)PWM輸出控制器,、多個(gè)數(shù)字量輸出控制寄存器,。DSP2可以按照訪問USBN9602/3的方式訪問FPGA,對(duì)FPGA內(nèi)部的寄存器進(jìn)行操作,。從而進(jìn)行PWM和數(shù)字量輸出,。此外用和還可以根據(jù)自己的要求設(shè)計(jì)相應(yīng)的功能,以滿足不同用戶的要求,。alteral公司的FPGA由多種在線可編程方式,,為了方便用

 

戶升級(jí),我們采用8位并行加載方式,。用戶生成的下載文件經(jīng)USB口傳送給DSP1,由DSP1經(jīng)過其總線下載導(dǎo)FPGA中,。從而減少了利用EPROM,、JTAG等其他方式加載時(shí),對(duì)硬件進(jìn)行的EPROM燒寫,、插拔等其他操作,。對(duì)編程時(shí)FPGA和模擬器正常使用時(shí)一樣,,無需對(duì)硬件進(jìn)行操作,做到了完全在線編程,。

       2.4 DAC模擬輸出

  本模擬器采用AD公司的8-Bit雙路發(fā)射機(jī)用DAC AD9709作為數(shù)模轉(zhuǎn)換芯片,。該芯片的最大轉(zhuǎn)換速率可達(dá)125MSPS,可以應(yīng)用到通信,、基站,、數(shù)字合成、三維超聲等領(lǐng)域,。AD9709的數(shù)字輸入端有雙路并行,、交織輸入兩種模式。我們采用能充分利用數(shù)據(jù)帶寬的雙路并行輸入方式,。AD9709模擬輸出為兩路差分信號(hào),,運(yùn)放AD8041完成差分轉(zhuǎn)單端。其功能框圖如下:    

功能框圖

       3 軟件結(jié)構(gòu)

  本模擬器的軟件包括DSP和FPGA兩部分,。DSP1軟件包括:USB控制,,數(shù)據(jù)接收、處理,、傳輸,,F(xiàn)PGA配置,DSP2的引導(dǎo)等工作,。DSP2軟件相對(duì)較少,,DSP1送來的數(shù)據(jù)進(jìn)行處理,將處理后的數(shù)據(jù)送到各接口處,,并控制各接口的工作狀態(tài),。FPGA完成數(shù)字、模擬各接口的具體控制,。圖3為兩個(gè)DSP的程序流程,。

兩個(gè)DSP的程序流程

圖3 兩個(gè)DSP的程序流程

  系統(tǒng)引導(dǎo)方式(Bootloader)。TMS320VC5402本身提供多種引導(dǎo)方式:HPI,、串行EEPROM,、并口、標(biāo)準(zhǔn)串口(McBSP0,、McBSP1),、及IO 引導(dǎo)方式等。該系統(tǒng)的程序存放在FLASH中,,該FLASH由DSP1訪問,。因此,DSP1采用并口引導(dǎo),,DSP2采用McBSP0 引導(dǎo),。在系統(tǒng)啟動(dòng)時(shí),,首先DSP1從并口將FLASH中的對(duì)應(yīng)程序引導(dǎo)到DSP1的程序存儲(chǔ)空間中,并執(zhí)行相應(yīng)程序,。接著,,DSP1從FLASH中讀取DSP2的程序,將該數(shù)據(jù)經(jīng)McBSP口傳送給DSP2的McBSP0,,對(duì)DSP2進(jìn)行引導(dǎo),。在兩片DSP引導(dǎo)、及運(yùn)行過程中,,利用BIO和XF引腳進(jìn)行握手,,從而對(duì)整個(gè)系統(tǒng)的運(yùn)行進(jìn)行同步和協(xié)調(diào)。

  DSP1的處理流程如圖3中左圖所示,,DSP1完成除了完成上面提到的兩個(gè)DSP的引導(dǎo)外,。還要完成USB控制、控制FPGA,、處理數(shù)據(jù),、向DSP2傳輸數(shù)據(jù)。DSP1根據(jù)USBN9602/3的中斷信號(hào),,讀取USB的狀態(tài),,判斷,進(jìn)行相應(yīng)的控制(其中自然包括USB的枚舉過程),。兩個(gè)DSP之間由BIO和XF引腳進(jìn)行握手,,是并行系統(tǒng)的握手信號(hào),對(duì)整個(gè)程序的協(xié)調(diào)執(zhí)行進(jìn)行同步,。

  DSP2根據(jù)DSP1發(fā)送的命令,,對(duì)數(shù)據(jù)進(jìn)行相應(yīng)處理,并向FPGA發(fā)送控制字,,調(diào)整FPGA的狀態(tài),。由FPGA控制DAC、數(shù)字,、PWM等接口的工作,。

       4  應(yīng)用

       綜上所述,該模擬器具有數(shù)字模擬輸出接口,,可以方便地和PC及進(jìn)行連接控制,。其性能較高,最高輸出帶寬可達(dá)50MHz,。該模擬器經(jīng)編程可以滿足雷達(dá),、通信等領(lǐng)域應(yīng)用的要求。下面以其在信道實(shí)時(shí)仿真中的應(yīng)用,說明其應(yīng)用過程,。

       信道仿真在通信系統(tǒng)設(shè)計(jì)中必不可少的,因此設(shè)計(jì)一個(gè)WPAN信道實(shí)時(shí)仿真系統(tǒng)具有一定的實(shí)用價(jià)值,。WPAN有著廣闊的前景,,目前802.15.4標(biāo)準(zhǔn)尚未確定,商用設(shè)備沒有出現(xiàn),。尚處于開發(fā)研制階段,,而對(duì)于系統(tǒng)性能的調(diào)試、測試來說,,信道實(shí)時(shí)仿真至關(guān)重要,。我們知道,WPAN的數(shù)據(jù)率一般不大,,在Kbps量級(jí),,也就是說信道仿真系統(tǒng)的數(shù)據(jù)吞吐率和數(shù)據(jù)處理量將不會(huì)太大。

  該模擬器DSP1通過USB接收PC機(jī)發(fā)送來的MAC數(shù)據(jù),,DSP1種的發(fā)射機(jī)程序完成對(duì)數(shù)據(jù)的編碼調(diào)制,,產(chǎn)生相應(yīng)的波形數(shù)據(jù);該數(shù)據(jù)經(jīng)過FIFO傳送到DSP2,,DSP2的信道模型程序模擬WSSUS信道處理數(shù)據(jù),,并向FPGA發(fā)送控制字,調(diào)整DAC的工作狀態(tài),,經(jīng)FIFO將波形數(shù)據(jù)送到模擬和數(shù)字輸出接口,。另外,用戶自定義接口,,模擬用戶的特定的信號(hào),,可以和一些其他電路模塊進(jìn)行連接,以滿足其他需要,。例如,,連接上RF模塊就可以將波形數(shù)據(jù)發(fā)送到對(duì)應(yīng)的無線信道等等。

       5 結(jié)論

  利用DSP+FPGA完成的模擬器具有良好的實(shí)用性和可編程性,,適合雷達(dá),、通信等不同領(lǐng)域的應(yīng)用。USB接口,,可以利用PC機(jī)方便地進(jìn)行通信和數(shù)據(jù)分析,。多種輸出接口模擬、數(shù)字,、用戶自定義接口更加擴(kuò)展了應(yīng)用領(lǐng)域,。    

 

 

        參考文獻(xiàn)

  [1] Wickert, M.A.; Papenfuss, J.; Implementation of a real-time frequency-selective RF channel simulator using a hybrid DSP-FPGA architecture。Microwave Theory and Techniques, IEEE Transactions on , Volume: 49 Issue: 8 , Aug. 2001 Page(s): 1390–1397,。

  [2] TMS320VC5402 fixed-point digital signal processor. Texas Instruments Incorporated. 2000.

  [3] AD9709 Data sheet. Analog Devices, Inc. 2000.

  [4] USBN9603/USBN9604 Universal Serial Bus Full Speed Node Controller with Enhanced DMA Support. National Semiconductor corporation. 2001

  [5] USBN9602 (Universal Serial Bus) Full Speed Function Controller with DMA Support. National Semiconductor corporation. 1998

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。