基于Verilog的多路相干DDS信號源設(shè)計(jì)
摘要:傳統(tǒng)的多路同步信號源常采用單片機(jī)搭載多片專用DDS芯片配合實(shí)現(xiàn)。該技術(shù)實(shí)現(xiàn)復(fù)雜,且在要求各路同步相干可控時(shí)難以實(shí)現(xiàn)。本文在介紹了DDS原理的基礎(chǔ)上,給出了用Verilog_HDL語言實(shí)現(xiàn)相干多路DDS的工作原理、設(shè)計(jì)思路、電路結(jié)構(gòu)。利用Modelsim仿真驗(yàn)證了該設(shè)計(jì)的正確性,本設(shè)計(jì)具有調(diào)相方便,相位連續(xù),頻率穩(wěn)定度高等優(yōu)點(diǎn)。
本文引用地址:http://m.butianyuan.cn/article/201610/307556.htm關(guān)鍵詞:DDS;現(xiàn)場可編程門陣列(FPGA);相位累加器;Verilog_HDL
實(shí)現(xiàn)信號源的多路同步輸出且各路間擁有固定的相位關(guān)系,在雷達(dá)、通信等多領(lǐng)域有著重要的應(yīng)用。為了實(shí)現(xiàn)此功能,大多數(shù)設(shè)計(jì)是利用單片機(jī)控制多個(gè)專用DDS芯片,實(shí)現(xiàn)多信號同步輸出,如圖1所示。但腱由于采用分立的專用DDS芯片,各芯片參數(shù)很難做到完全相同,參數(shù)的差異會(huì)造成輸出信號頻率和相位不同。因此,盡管各DDS芯片采用同一頻率字,各個(gè)輸出信號頻率也難以完全相同。同樣,由于參數(shù)的不一致,波形之間的相位也難以做到同步準(zhǔn)確可調(diào),更重要的是各個(gè)信號通道間頻率差異的累積效應(yīng)可能會(huì)導(dǎo)致同步失敗。由于這些原因,要實(shí)現(xiàn)多路同步輸出且各路信號間成相干關(guān)系必須采用另外的系統(tǒng)。本文給出了一種基于FPGA的3路相干信號源設(shè)計(jì)方案。
1 DDS基本原理
DDS(Direct Digital Synthesizer)的實(shí)質(zhì)足對相位進(jìn)行可控等問隔的采樣。一個(gè)DDS信號發(fā)生器是由:相位累加器、正弦查找表(波形Rom表)、數(shù)模轉(zhuǎn)換器以及模擬低通濾波器(LPF)組成,原理框圖如圖2所示。
DDS系統(tǒng)的核心是相位累加器。相位累加器在參考時(shí)鐘信號的控制下產(chǎn)生讀取Rom表數(shù)據(jù)的地址值,隨后通過查表變換,讀出相應(yīng)地址的信號波形的數(shù)字幅度值序列,再由數(shù)模變換器將代表波形幅度的數(shù)字序列轉(zhuǎn)化為模擬電平,最后經(jīng)由低通濾波器濾除高頻分量使波形平滑。
2 基于FPGA的3路同步輸出DDS工作原理
3路同步相干DDS信號源工作原理如圖3所示。
所有的部分都在統(tǒng)一時(shí)鐘的控制下保證了各路信號的同步輸出;各頻率輸入為同一控制字,使得各信號間有很好的同頻性;不同的相位輸入決定了各路間固定的相位差,滿足了相干性要求。在FPGA里面做到的是D/A轉(zhuǎn)換器之前的部分。3路信號結(jié)構(gòu)相同,每一路的電路結(jié)構(gòu)如圖4所示。
3 電路設(shè)計(jì)
3.1 電路總體接口
本系統(tǒng)采用Verilog語言編程,綜合工具為Quartusii,仿真工具為Modelsim。
電路接口有clk,rst_n,K1,K2,K3,phase1,phase2,phase3,d_out1,d_out2,d_out3,其中clk為系統(tǒng)時(shí)鐘,rst_n為復(fù)位信號低電平異步復(fù)位,K1,K2,K3為頻率控制字輸入(本系統(tǒng)為同一輸入),phase1,phase2,phase3為3路相位輸入,d_out1,d_out2,d_out3為3路輸出。
3.2 源程序代碼代碼
頂層模塊代碼如下所示,
頂層模塊的RTL Viewer如圖5所示。
相位累加器模塊代碼如下所示。
波形ROM表利用Quartus ii軟件的插件管理程序Megawizard plug-in manager獲得,對于波形數(shù)據(jù)mif文件的獲得這里使用了專用軟件Guagle_Wave。
4 仿真與分析
仿真測試文件代碼如下。
3路相干輸出DDS的仿真結(jié)果如圖6所示。途中豎線為相位跳變處,從此之后各路信號保持了良好的相干性,由此可見滿足了設(shè)計(jì)要求。本設(shè)計(jì)只需改變各路的相位控制字就可實(shí)現(xiàn)各路之間的相位調(diào)整。本設(shè)計(jì)運(yùn)用Vefilog語言結(jié)合DDS原理和FPGA器件,實(shí)現(xiàn)了多路相干信號源設(shè)計(jì),相位連續(xù)可調(diào),且易于調(diào)節(jié)。
評論