王 寧,王 梅,鄭麗娟
(河北科技大學 信息科學與工程學院,河北 石家莊 050000)
?
基于FPGA的DDS信號源研究
王寧,王梅,鄭麗娟
(河北科技大學 信息科學與工程學院,河北 石家莊 050000)
摘要:文中詳細闡述了基于FPGA利用Quartus II實現(xiàn)DDS(直接數(shù)字頻率合成器)模塊的方法。根據(jù)DDS原理對其進行系統(tǒng)建模,采用verilog HDL語言實現(xiàn)各個模塊的功能,并且在開發(fā)環(huán)境下進行了仿真。該信號源可以輸出方波、三角波以及正弦波三種波形,其與傳統(tǒng)的信號源相比較,具有波形質(zhì)量好、精度高、設(shè)計方案簡潔、易于實現(xiàn)、便于擴展與維護的特點。
關(guān)鍵詞:直接數(shù)字頻率合成器;信號源;現(xiàn)場可編程門陣列
頻率合成技術(shù)是將一個或者多個基準頻率轉(zhuǎn)換成另一個或多個合乎質(zhì)量要求的所需頻率的技術(shù)。近幾年隨著FPGA等技術(shù)的發(fā)展使得DDS這種獨特的結(jié)構(gòu)得到了飛速的發(fā)展,并且在通信、雷達、導航等眾多領(lǐng)域都有了廣泛的應用[1]。DDS是以一個固定的頻率精度的時鐘作為參考時鐘源通過數(shù)字信號處理技術(shù)產(chǎn)生一個頻率和相位可調(diào)的輸出信號,具有頻率切換時間短、頻率分辨率高、易于調(diào)整和實現(xiàn)等優(yōu)點[2]。隨著微電子技術(shù)和數(shù)字集成電路的飛速發(fā)展,以及電子工程領(lǐng)域的實際需要使得DDS逐步成為現(xiàn)代頻率合成技術(shù)的佼佼者,具有廣闊的應用前景。本文所使用的Verilog HDL是其中一種標準化的硬件描述語言。
假設(shè)一個純凈的單頻信號可以表示為:
(1)
只要它的幅度U和初始相位θ0不變,它的頻譜就是位于f0的一條譜線。為了簡化表示可令U=1,θ0=0,當然這也不會影響對頻率的研究。即:
(2)
如果對此信號進行采樣,采樣周期為Tc,則可以得到離散的波形序列:
(3)
相應的離散相位序列為:
(4)
(5)
相應的模擬信號為:
(6)
DDS實現(xiàn)頻率合成主要是通過查找表方式進行的[3],如圖1所示為DDS的原理圖。DDS系統(tǒng)核心包括相位累加器和存儲器,其中相位累加器由1個加法器和1個32位的相位寄存器組成,主要是用來實現(xiàn)線性數(shù)字信號的逐級累加;波形存儲器中存儲的主要是輸出波形的幅度值,通過尋址讀出數(shù)據(jù)進行波形的相位與幅度值的轉(zhuǎn)換,從而完成信號的相位序列到幅度序列的轉(zhuǎn)化。
圖1 DDS原理框圖
當頻率合成器正常工作時,在標準頻率參考源控制下,相位累加器則以步長K進行線性累加,輸出的N位二進制碼作為波形存儲器的地址,對波形進行尋址,波形存儲器輸出的幅碼經(jīng)過數(shù)模轉(zhuǎn)換器變成階梯波形,在經(jīng)過低通濾波器后得到平滑的波形。實際應用中,相位累加器的所有輸出位并沒有全部送到波形存儲器中,一般只是截取了高幾位,這樣減少了查找表的規(guī)模又不影響系統(tǒng)的頻率分辨率,但是會帶來一定的雜散干擾。
本文采用Altera公司的Quartus II軟件進行設(shè)計,該軟件根據(jù)設(shè)計者需要提供了一個完整的多平臺開發(fā)環(huán)境并且支持多種設(shè)計方式。Quartus II支持的輸入方式包括:原理圖輸入方式、網(wǎng)表文件輸入方式以及文本輸入方式。其中文本輸入方式支持AHDL、VHDL和Verilog HDL 3種硬件描述語言,本文所用Verilog HDL語言具有行為描述的特點。
相位累加器主要是用來實現(xiàn)線性數(shù)字信號的逐級累加,如圖2所示為相位累加器的模塊符號。為了獲得較高的頻率分辨率,相位累加器的字長一般都比較大,而所采用的波形存儲器的數(shù)據(jù)寬度一般為8位到16位,本文采用的是10位的數(shù)據(jù)寬度,因此波形存儲器內(nèi)存大小設(shè)置為1 024×10 bit,存儲器模塊如圖3所示。波形存儲器采用的是Altera公司提供的IP核(或稱庫函數(shù)),ROM的數(shù)據(jù)經(jīng)過mif文件導入存儲。存儲好的數(shù)據(jù)通過程序中的相位累加器的累加、尋址讀出。如圖4為得到DDS的模塊符號。
本文設(shè)置的時鐘脈沖是500 ns,顯示出的方波、正弦波和三角波等三種波形如圖5。
圖2 相位累加器的模塊符號
圖3 ROM存儲器
圖4 DDS的模塊符號
圖5 時鐘脈沖為500ns的仿真波形
從圖5可以看出通過讀取ROM中的數(shù)據(jù)生成的波形中有很多毛刺,不平滑,這都是DDS雜散帶來的影響,所以消除雜散也是研究的重要問題。
DDS的一個缺點就是較高的雜散電平。由于DDS采用的是全數(shù)字結(jié)構(gòu),不可避免地引入了雜散[4,5],其來源主要有:
(1)相位累加器相位舍位誤差造成的雜散。如果將相位累加器的輸出直接作為波形存儲器的查找地址,那么存儲器容量將非常大,在硬件上實現(xiàn)就會比較困難,所以采用了取高位輸出低位舍去的方法,因此必然會造成誤差。
(2)幅度量化誤差造成的雜散。在實際設(shè)計中一個模擬量不可能用一串二進制代碼來精確表示,而只能用N位二進制來表示近似值,這樣就會產(chǎn)生幅度量化誤差。
(3)DAC非理想特性造成的雜散。在實現(xiàn)過程中DAC存在非線性特性,輸出信號就會產(chǎn)生諧波分量,導致頻譜雜散的產(chǎn)生。
基于FPGA實現(xiàn)的DDS易于維護,實現(xiàn)方便,可以簡單地完成幾種波形的輸出,通過改變頻率控制字可以改變輸出波形的頻率,得到所需要的各種不同頻率的波形。
參考文獻:
[1]戎強.基于DDS/FPGA的多波形信號源的研究[D].哈爾濱:哈爾濱工程大學,2008.
[2]高琴,姜壽山,魏忠義.基于FPGA的DDS信號源設(shè)計與實現(xiàn)[J].西安工程科技學院學報,2006,(2):210-214.
[3]鐘蔚杰,蔣壘,劉耀應.基于VHDL編程的DDS設(shè)計[J].艦船電子對抗,2007,(30):102-105.
[4]湯汗屏.直接數(shù)字頻率合成雜散抑制方法的研究[J].電線技術(shù),2008,(5):10-14.
[5]王曉音,聶裕平,龐偉正.輸出頻譜雜散的抑制[J].電子對抗技術(shù),2008,(11):25-28.
王梅(1962-),河北科技大學副教授,研究方向為數(shù)字交換與傳輸;
鄭麗娟(1988-),碩士研究生,研究方向為數(shù)字交換與傳輸。
研制開發(fā)
Study of DDS Signal Source Based on FPGA
WANG Ning,WANG Mei ,ZHENG Li-juan
(College of Information Science and Engineering, Hebei University of Science and Technology, Shijiazhuang 050000, China)
Abstract:This paper expounds the method of implementing DDS (direct digital frequency synthesizer) module by use of Quartus II based on FPGA. System modeling is firstly conducted according to the principle of DDS. The function of each module is then realized using verilog HDL language. And simulation under development environment is also done. The signal source can output square wave, triangle wave and sine wave, and have features of better wave quality, higher precision, more simple scheme, easier implementation, more convenient expansibility and maintenance when compared with traditional signal sources.
Key words:direct digital frequency synthesizer (DDS); signal source; Field-Programmable Gate Array(FPGA)
中圖分類號:TN74
文獻標識碼:A
文章編號:1009-3664(2015)02-0038-02
作者簡介:王寧(1989-),碩士研究生,研究方向為數(shù)字交換與傳輸;