基于FPGA的多功能信號(hào)源生成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要:為了滿足科研與實(shí)驗(yàn)需要,提出并實(shí)現(xiàn)了一種以FPGA和高速D/A為核心,其結(jié)構(gòu)簡(jiǎn)單,控制靈活,信號(hào)質(zhì)量高的多功能信號(hào)源生成系統(tǒng)。該信號(hào)源生成系統(tǒng)能夠?qū)崟r(shí)產(chǎn)生中心頻率在30~130 MHz的各種雷達(dá)、通信、導(dǎo)航和白噪聲等信號(hào),且產(chǎn)生的各種信號(hào)頻率、幅度、相位和其他參數(shù)均可控。信號(hào)源作為基帶信號(hào)單元配以混頻模塊,可實(shí)現(xiàn)在任意頻段的信號(hào)。另外,該信號(hào)源還可以作為一個(gè)通用平臺(tái),通過FPGA內(nèi)部程序的更新來(lái)實(shí)現(xiàn)其他復(fù)雜信號(hào)。
關(guān)鍵詞:FPGA;信號(hào)源;硬件設(shè)計(jì);AD9736
產(chǎn)品級(jí)的信號(hào)源往往滿足不了科研和實(shí)驗(yàn)的需要,尤其在復(fù)雜電磁環(huán)境的研究和實(shí)驗(yàn)中,需要的信號(hào)樣式多種多樣,而且根據(jù)場(chǎng)景的不同,需要信號(hào)樣式、個(gè)數(shù)都發(fā)生了改變。
現(xiàn)場(chǎng)可編程邏輯陣列器件(FPGA)繼承了ASIC中大規(guī)模、高集成度、高可靠性的優(yōu)點(diǎn),克服了普通ASIC設(shè)計(jì)周期長(zhǎng),投資大,靈活性差的缺點(diǎn),逐步成為復(fù)雜數(shù)字硬件電路設(shè)計(jì)的理想首選。為了能滿足科研與實(shí)驗(yàn)的需要,產(chǎn)生一系列需要的信號(hào),設(shè)計(jì)了一種以FPGA和高速D/A為核心.能產(chǎn)生中心頻率在30~130 MHz的、各種參數(shù)均可調(diào)的雷達(dá)、通信、導(dǎo)航和噪聲信號(hào)的多功能信號(hào)源生成系統(tǒng)。
1 系統(tǒng)硬件結(jié)構(gòu)
多功能信號(hào)源生成系統(tǒng)在綜合控制器的控制下產(chǎn)生一個(gè)或多個(gè)中心頻率在30~130 MHz的雷達(dá)、通信、導(dǎo)航、噪聲等信號(hào),輸出電平一60~o dBm.步進(jìn)值為0.06 dB。系統(tǒng)主要由綜合控制器、信號(hào)生成器、射頻模塊和天線4個(gè)部分構(gòu)成,如圖1所示。綜合控制器實(shí)現(xiàn)對(duì)系統(tǒng)的整體控制,包括信號(hào)路數(shù)及各路信號(hào)參數(shù)。信號(hào)生成器主要包括控制參數(shù)接口轉(zhuǎn)換模塊和信號(hào)生成模塊兩個(gè)部分。射頻模塊主要完成兩項(xiàng)功能,即650 MHz時(shí)鐘的生成和對(duì)輸入的中頻信號(hào)變頻,最后經(jīng)天線輸出信號(hào)。
2 綜合控制器
綜合控制器為一臺(tái)工控計(jì)算機(jī),主要完成控制參數(shù)的輸入和數(shù)字基帶信號(hào)生成。控制人員通過綜合控制器控制界面將控制參數(shù)輸入,這些控制參數(shù)經(jīng)過計(jì)算機(jī)uSB接口輸入到信號(hào)生成器,實(shí)現(xiàn)對(duì)信號(hào)生成器的控制。數(shù)字基帶信號(hào)是一定速率的二進(jìn)制碼流,在該系統(tǒng)中綜合控制器完成將BMP圖片轉(zhuǎn)換成一定速率的二進(jìn)制數(shù)據(jù),并通過USB接口輸人到信號(hào)生成器中,作為系統(tǒng)的數(shù)字基帶信號(hào)。綜合控制器在工作時(shí),負(fù)責(zé)向信號(hào)生成器注入控制參數(shù),如信號(hào)路數(shù)和各路信號(hào)參數(shù)(信號(hào)樣式、工作頻率、功率輸出、調(diào)制指數(shù)、延遲時(shí)間、跳頻速率、脈寬、脈沖周期等),當(dāng)控制參數(shù)輸入完畢后,綜合控制器開始利用USB接口傳輸由BMP圖片轉(zhuǎn)換的二進(jìn)制數(shù)據(jù)。系統(tǒng)在工作過程中可實(shí)時(shí)更改控制參數(shù),并根據(jù)指令進(jìn)行刷新,此時(shí)數(shù)字基帶信號(hào)傳輸將暫停,等待更新完畢后繼續(xù)輸出。
3 信號(hào)生成器
信號(hào)生成器由兩部分構(gòu)成,即控制參數(shù)接口轉(zhuǎn)換模塊和信號(hào)生成模塊??刂茀?shù)接口轉(zhuǎn)換模塊完成將綜合控制器通過USB傳輸線傳輸?shù)目刂茀?shù)和數(shù)字基帶信號(hào)轉(zhuǎn)換為總線數(shù)據(jù)送入總線中,由信號(hào)生成模塊產(chǎn)生特定控制參數(shù)的信號(hào)。
3.1 控制參數(shù)接口轉(zhuǎn)換模塊
控制參數(shù)接口轉(zhuǎn)換模塊完成從USB接口中收到的數(shù)據(jù)接收,并將接收數(shù)據(jù)轉(zhuǎn)換為總線數(shù)據(jù)送入背板總線??刂茀?shù)接口轉(zhuǎn)換模塊主要包括兩個(gè)部分:USB控制芯片和1片F(xiàn)PGA,如圖2所示。在這個(gè)模塊內(nèi)完成數(shù)據(jù)包的獲取和拆分兩個(gè)操作。數(shù)據(jù)包的獲取就是USB控制芯片將USB傳輸線中的1位數(shù)據(jù)轉(zhuǎn)換為16位的FD信號(hào),送到FPGA中。FPGA再將接收到的數(shù)據(jù)按照數(shù)據(jù)包拆分協(xié)議分成16位控制參數(shù)信號(hào)DATA與160 kHz的數(shù)字基帶信號(hào)DATAl60K送到背板總線,同時(shí)通過總線進(jìn)行傳輸?shù)倪€有兩個(gè)時(shí)鐘信號(hào)AIOW和CLKl60K。其中AIOW是與控制參數(shù)信號(hào)DATA相匹配的時(shí)鐘,是由FPGA送入總線中的,而CLKl60K是與數(shù)字基帶信號(hào)DATAl60K相匹配的時(shí)鐘,是由信號(hào)生成器通過總線送入FPGA中的。數(shù)據(jù)包的拆分主要由1片Spartan3 FPGA(XC3S200)來(lái)實(shí)現(xiàn)。
3.2 信號(hào)生成模塊
信號(hào)生成模塊采取FPGA和高速D/A相結(jié)合的方法,在FPGA內(nèi)部產(chǎn)生高速采樣數(shù)據(jù)。采樣數(shù)據(jù)送人高速D/A中還原出信號(hào)。在該系統(tǒng)中,F(xiàn)PGA芯片選用Xilinx公司Virtex-4系列的XC4VLXl00,而高速D/A選用AD公司的AD9736。如圖1所示,信號(hào)生成模塊包括2塊信號(hào)生成電路板,每塊電路板上有2塊FPGA和4塊高速D/A,每塊FPGA與2個(gè)D/A相連,即1個(gè)FPGA內(nèi)部需要同時(shí)產(chǎn)生2路信號(hào)采樣數(shù)據(jù),整個(gè)系統(tǒng)能產(chǎn)生8路信號(hào)。
FPGA的工作時(shí)鐘是射頻模塊生成的時(shí)鐘在高速D/A內(nèi)完成二分頻后送給FPGA的。由于每塊FPGA與2個(gè)D/A相連,因此它也有2個(gè)時(shí)鐘輸入。為了保持時(shí)鐘與數(shù)據(jù)的同源特性,在FPGA內(nèi)部電路設(shè)計(jì)中采取了并行設(shè)計(jì)的方法,即送給高速D/A的高速采樣數(shù)據(jù)與其匹配的時(shí)鐘完全是由其送入的時(shí)鐘來(lái)產(chǎn)生的,而與另一個(gè)D/A送入的時(shí)鐘完全無(wú)關(guān),保持了各路信號(hào)之間的獨(dú)立性。同時(shí),射頻模塊可以產(chǎn)生相參和非相參的時(shí)鐘,從而使得系統(tǒng)能產(chǎn)生相參和非相參信號(hào)。另外,送入D/A的時(shí)鐘也可由外部送入,大大增加了系統(tǒng)的靈活性。
FPGA內(nèi)部采取了模塊化設(shè)計(jì)方法,包括參數(shù)分配模塊、各種信號(hào)采樣數(shù)據(jù)生成模塊和信號(hào)求各種信號(hào)采樣數(shù)據(jù)生成模塊和信號(hào)求和模塊,其設(shè)計(jì)框圖如圖3所示。參數(shù)分配模塊主要將總線接收到的各路信號(hào)中控制參數(shù)信號(hào)DATA分配到各信號(hào)采樣數(shù)據(jù)生成模塊中,其內(nèi)部控制示意圖如圖4所示。參數(shù)分配模塊在時(shí)鐘AIOW的上升沿時(shí)刻,按照控制參數(shù)信號(hào)DATA的高位情況,識(shí)別DATA低15位為地址還是數(shù)據(jù),如果為地址則送往地址鎖存器鎖存;如果為數(shù)據(jù)則送往地址譯碼器,由地址譯碼器根據(jù)譯碼協(xié)議判定數(shù)據(jù)為特定信號(hào)采樣數(shù)據(jù)生成模塊的特定控制參數(shù)。信號(hào)采樣數(shù)據(jù)生成模塊則根據(jù)所分配的參數(shù)生成所需信號(hào)采樣數(shù)據(jù)送往求和模塊。為了減少信號(hào)經(jīng)過求和模塊帶來(lái)信號(hào)能量的損失,設(shè)計(jì)中不是采用傳統(tǒng)截取高位輸出的方式,而是采取了截取低位輸出的方式,這種方式保證了求和器在沒有溢出的情況下,能維持系統(tǒng)指定參數(shù)的信號(hào)輸出,而不損失信號(hào)能量。為了防止求和器溢出,產(chǎn)生失真信號(hào),在綜合控制器中做相應(yīng)處理,使得控制人員輸入的控制參數(shù)在合適的范圍之內(nèi)。
信號(hào)采樣數(shù)據(jù)生成模塊可將生成在這種模式下的一個(gè)或多個(gè)信號(hào)組合,而且可以根據(jù)需要.通過輸入控制參數(shù),實(shí)時(shí)改變組合的模式。圖3中只表示了一種模塊的組合關(guān)系,如果在這種組合下還不能滿足實(shí)驗(yàn)和科研需要,系統(tǒng)可以通過重新進(jìn)行軟件編程,下載到FPGA中,從而得到所需信號(hào)采樣。
4 AD9736簡(jiǎn)介
AD9736是由AD公司.生產(chǎn)的一種14 b高速DAC,其采樣時(shí)鐘速率突破了1 GSPS,達(dá)到1.2 GSPS,且功耗極低。AD9736的輸出電流在10~30 mA范圍內(nèi)可編程,并且很容易配置單端或差分輸出電路結(jié)構(gòu)。AD9736采用LVDS數(shù)據(jù)接口,可以有效保證高速數(shù)據(jù)的傳輸。AD9736內(nèi)部支持兩倍插值,且內(nèi)嵌了一個(gè)55階的對(duì)稱FIR插值濾波器,該濾波器通帶內(nèi)平整度為O.001 dB,阻帶衰減達(dá)到90 dB,過渡帶為20%~30%,從而大大降低采樣數(shù)據(jù)速度。文獻(xiàn)[2]列出了AD9736在800 MSPS,1 GSPS和1.2 GSPS采樣率下無(wú)雜散動(dòng)態(tài)范圍(SFDR)和互調(diào)失真(IMD)情況,如圖5,圖6所示。該器件在1.2 GSPS采樣速率下,255 MHz輸出頻率時(shí)互調(diào)失真(IMD)為74 dBc,并且在600 MHz輸出頻率時(shí)IMD優(yōu)于60 dBc,sFDR在300 MHz輸出頻率時(shí)為62 dBc。
5 系統(tǒng)性能
該信號(hào)生成系統(tǒng)能夠?qū)崟r(shí)產(chǎn)生單個(gè)或多個(gè)中心頻率在30~130 MHz的各種信號(hào),如單音、調(diào)幅、調(diào)相、調(diào)頻、ASK、FSK、BPSK、QPSK、跳頻、直擴(kuò)、白噪聲等,還可以模擬各種雷達(dá)發(fā)射脈沖和回波信號(hào)。另外,還可以通過ISE編程和重新下載程序到FPGA中實(shí)現(xiàn)更復(fù)雜的信號(hào)。
該系統(tǒng)產(chǎn)生的信號(hào)在頻率、幅度和其他各種參數(shù)均實(shí)現(xiàn)可調(diào),頻率分辨率達(dá)到0.35 Hz,輸出電平為-60~O dBm,步進(jìn)值為0.06 dB時(shí),SFDR優(yōu)于60 dB。由于該系統(tǒng)能同時(shí)發(fā)射多路信號(hào),并且有多個(gè)天線,因而可用于模擬從不同方向上發(fā)射多路信號(hào)復(fù)雜的模擬電磁環(huán)境。同樣,該系統(tǒng)還可以作為干擾源和信號(hào)源用于各種干擾與抗干擾的試驗(yàn)研究。圖7和圖8分別為系統(tǒng)產(chǎn)生的FSK信號(hào)波形和頻譜圖;圖9和圖10分別為系統(tǒng)模擬FSK信號(hào)經(jīng)過多路徑傳輸?shù)牟ㄐ魏皖l譜圖。
6 結(jié) 語(yǔ)
利用FPGA和高速D/A相結(jié)合實(shí)現(xiàn)的信號(hào)源,結(jié)構(gòu)簡(jiǎn)單,控制靈活,性能優(yōu)越,還可以根據(jù)需要在這個(gè)平臺(tái)上,重新下載程序到FPGA中,更改其內(nèi)部電路,而不用另外制板,這樣既節(jié)省時(shí)間,也減少開銷,還有利于信號(hào)源的改進(jìn)。另外,系統(tǒng)還可以作為基帶信號(hào)單元,結(jié)合混頻電路在任意要求的頻段上實(shí)現(xiàn)多種樣式的信號(hào)。