基于FPGA+DDS的正弦信號發(fā)生器的設(shè)計(jì)
1971年,美國學(xué)者TIERNCY J、TADER C M和GOLD B在《A Digital Frequeney Synthesizer》一文中提出了以全數(shù)字技術(shù),從相位概念出發(fā)直接合成所需波形的一種新的頻率合成原理,稱之為直接數(shù)字頻率合成器DDS(Direct Digitial Frequency Synthesis)[1]。這是頻率合成技術(shù)的一次重大革命,但限于當(dāng)時微電子技術(shù)和數(shù)字信號處理技術(shù)的限制,DDS并沒有得到足夠的重視。隨著現(xiàn)代超大規(guī)模集成電路集成工藝的高速發(fā)展,數(shù)字頻率合成技術(shù)得到了質(zhì)的飛躍,它在相對帶寬、頻率轉(zhuǎn)換時間、相位連續(xù)性、正交輸出、高分辨率以及集成化等一系列性能指標(biāo)方面,已遠(yuǎn)遠(yuǎn)超過了傳統(tǒng)頻率合成技術(shù)所能達(dá)到的水平。因此廣泛用于通信、宇航、遙控遙測、儀器儀表等各項(xiàng)電子領(lǐng)域[1-2]。
目前實(shí)現(xiàn)DDS的技術(shù)方案大致分為兩種,一是用專用的DDS芯片來實(shí)現(xiàn)。常用的DDS芯片有ADI公司的AD9xxx系列,如其中的AD9913,它具有高達(dá)100 MHz的模擬輸出,內(nèi)部集成一個10位的D/A轉(zhuǎn)換器,頻率分辨率≥0.058 Hz,相調(diào)諧分辨率為0.022°[3]。另一種是用FPGA來實(shí)現(xiàn)。可編程的FPGA器件具有內(nèi)部資源豐富、處理速度快、可在系統(tǒng)內(nèi)編程并有強(qiáng)大的EDA設(shè)計(jì)軟件支持等特點(diǎn)。因此,基于FPGA的設(shè)計(jì)相對于專用DDS芯片,可使電路設(shè)計(jì)更加靈活、提高系統(tǒng)的可靠性、縮短設(shè)計(jì)周期、降低成本。所以,采用FPGA設(shè)計(jì)的DDS系統(tǒng)具有很高的性價比。
1 DDS基本原理
直接數(shù)字頻率合成的理論依據(jù)是采樣定理,即先對一個完整周期的正弦波進(jìn)行N點(diǎn)采樣,然后把采樣點(diǎn)存儲在ROM中構(gòu)成一個查找表,頻率合成時,相位累加器在參考時鐘的作用下控制ROM中數(shù)據(jù)的輸出。ROM的輸出經(jīng)過D/A轉(zhuǎn)換,將一個階梯化的信號(即采樣信號)通過一個理想的低通濾波器,就得到符合要求的模擬信號。
DDS的基本結(jié)構(gòu)如圖1所示,主要由相位累加器、相位調(diào)制器、波形ROM查找表、DAC和低通濾波器(LPF)構(gòu)成。其中相位累加器、相位調(diào)制器、波形ROM查找表是DDS結(jié)構(gòu)中的數(shù)字部分,由于具有數(shù)控頻率合成的功能,又合稱為NCO(Numerically Controlled Oscillators)。
2 DDS波形發(fā)生器的系統(tǒng)設(shè)計(jì)
本系統(tǒng)分為軟件設(shè)計(jì)和硬件設(shè)計(jì)兩部分,軟件部分主要是基于FPGA的程序設(shè)計(jì),硬件部分包括D/A轉(zhuǎn)換和低通濾波器設(shè)計(jì)。
2.1 VHDL程序設(shè)計(jì)
2.1.1 定制波形數(shù)據(jù)文件
在設(shè)計(jì)DDS信號源之前,先建立一個儲存波形數(shù)據(jù)的ROM,儲存波形數(shù)據(jù)文件有.mif和.hex兩種格式。.mif和.hex格式的文件可以用Quartuas II建立,也可以用Quartuas II以外的編輯器設(shè)計(jì),如MATLAB、C語言等。本系統(tǒng)的ROM文件一個周期有1 024個點(diǎn)的正弦波數(shù)據(jù)、10 bit地址線和10 bit數(shù)據(jù)線。
2.2 相關(guān)電路設(shè)計(jì)
2.2.1 D/A轉(zhuǎn)換電路
位于波形輸出ROM后的D/A單元,是將數(shù)字量形式的波形幅值轉(zhuǎn)換成所要求的合成頻率的模擬量形式信號[4]。由于儲存波形的ROM具有10 bit的輸出,所以采用10 bit的DAC將FPGA輸出的數(shù)字信號轉(zhuǎn)換成模擬信號。本系統(tǒng)采用ADI公司的10 bit COMS數(shù)模轉(zhuǎn)換芯片AD5432,AD5432的驅(qū)動電壓為3 V~5.5 V,具有50 MHz的串行接口、10 MHz的乘法帶寬、2.5 MS/s的更新速率,采用±10 V的參考輸入,輸出為電流[5]。
2.2.2 濾波電路
經(jīng)由DAC的輸出信號實(shí)際上是階梯模擬信號, 需利用低通濾波器濾除波形的雜波,并進(jìn)行平滑處理。由于本系統(tǒng)的最高輸出頻率為10 MHz,所以選取的低通濾波器的截止頻率也應(yīng)為10 MHz。為了減少系統(tǒng)體積,節(jié)省設(shè)計(jì)時間,提高系統(tǒng)的可靠性,本系統(tǒng)選用凌特公司LT6600-10低通濾波器。LT6600-10內(nèi)集成了一個全差分放大器和一個近似于切比雪夫響應(yīng)的四階10 MHz低通濾波器,差分增益由兩個外部電阻設(shè)置[6],其基本連接方式如圖3所示。
3 實(shí)驗(yàn)仿真與分析
實(shí)驗(yàn)中所用的FPGA芯片為Altera公司的Cyclone III系列,Cyclone III是Altera公司的首款65 nm低成本FPGA,含有5 K~120 K邏輯單元(LE),288個數(shù)字信號處理(DSP)乘法器,存儲器達(dá)到4 Mbit。Cyclone III系列比前一代產(chǎn)品每邏輯單元成本降低20%,使設(shè)計(jì)人員能夠更多地在成本敏感的應(yīng)用中使用FPGA。系統(tǒng)所用的測試頻率(參考頻率)為50 MHz,調(diào)試好系統(tǒng),使系統(tǒng)的輸出從1 kHz~10 MHz遞增,并改變輸出波形的相位,輸出波形的相位變化范圍為0°~360°。經(jīng)示波器測試,系統(tǒng)的輸出波形形狀良好,輸出波形的實(shí)測頻率與理論計(jì)算值的絕對誤差小于0.1%,滿足設(shè)計(jì)要求,有較好的實(shí)用價值。圖4為實(shí)驗(yàn)的輸出波形。
產(chǎn)生測試信號的儀器統(tǒng)稱為信號源,也稱為信號發(fā)生器,它用于產(chǎn)生被測電路所需特定參數(shù)的電測試信號。信號發(fā)生器用途非常廣泛,科學(xué)實(shí)驗(yàn)、產(chǎn)品研發(fā)、生產(chǎn)維修、IC芯片測試中都能見到它的身影,目前市場上大部分信號發(fā)生器多采用DDS頻率直接合成技術(shù)。盡管基于FPGA的DDS信號發(fā)生器應(yīng)用廣泛,較傳統(tǒng)的信號源有許多優(yōu)點(diǎn),但是由于DDS數(shù)字化實(shí)現(xiàn)的固有特點(diǎn),決定了其輸出頻譜雜散較大,又由于DDS內(nèi)部DAC和ROM的工作速度的限制,使得DDS信號源的最高輸出頻率受限[7]。不過,隨著DDS技術(shù)的不斷完善和發(fā)展,其頻譜雜散、最高輸出頻率的性能指標(biāo)將得到優(yōu)化,未來將有越來越多的信號發(fā)生器采用DDS技術(shù),所以說對DDS進(jìn)行研究具有很好的現(xiàn)實(shí)意義。