基于DDS技術(shù)的BPSK信號生成
0 引言
本文引用地址:http://www.ex-cimer.com/article/188869.htm直接數(shù)字式頻率合成器(Direct Digitalfrequency Synthesizer,DDS)是從相位概念出發(fā),直接合成所需波形的頻率合成技術(shù)。VHDL是IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,可描述硬件電路的功能、信號連接關(guān)系及定時關(guān)系,在電子工程領(lǐng)域用來描述、驗證和設(shè)計電子線路,得到了廣泛應(yīng)用。故將VHDL語言與DDS技術(shù)結(jié)合,設(shè)計生成BPSK信號。
1 DDS的基本原理
DDS把一系列數(shù)字量形式的信號通過數(shù)模轉(zhuǎn)換器(DAC)轉(zhuǎn)換成模擬量形式的信號,其基本結(jié)構(gòu)如圖1。
DDS由相位累加器、加法器、波形存儲器(ROM)、數(shù)字乘法器、D/A轉(zhuǎn)換器和低通濾波器(LPF)組成。DDS的核心是相位累加器,由一個加法器和一個相位寄存器(REG)級聯(lián)構(gòu)成。在參考時鐘fc的控制下,相位累加器對頻率控制字K進(jìn)行線性累加,輸出的和再與相位控制字P相加后作為地址,對ROM尋址。ROM中存放經(jīng)過采樣、量化處理后的周期性連續(xù)信號一個周期波形的幅度值,即與一個周期的相位采樣相對應(yīng)的函數(shù)波形查找表,不同相位地址對應(yīng)周期信號的不同幅度值編碼。ROM輸出的幅度值編碼通過數(shù)字乘法器被幅度控制字A加權(quán),加權(quán)后的幅度值編碼經(jīng)D/A轉(zhuǎn)換器變成階梯波,再經(jīng)低通濾波器平滑后就可得所合成信號的模擬波形。合成的信號波形取決于ROM中存放的幅度值數(shù)據(jù),故用DDS可產(chǎn)生任意波形。
設(shè)相位累加器的字長為N,則DDS的輸出頻率f0和頻率分辨率(即最小輸出頻率)△fmin分別為:
只要N足夠大,DDS可以得到很小的頻率分辨率。要改變DDS的輸出頻率,只要改變頻率控制字K即可。
根據(jù)Nyquist采樣定理,在對連續(xù)信號進(jìn)行采樣的一個周期內(nèi),采樣頻率不能改變,故利用DDS進(jìn)行信號合成時,在信號合成的一個周期內(nèi),頻率控制字K不能發(fā)生變化,也就是K在每次改變之前至少應(yīng)該持續(xù)2N/K個DDS時鐘周期,即2N/K/fc。
通過改變相位控制字P,可以控制輸出信號的相位參數(shù)。設(shè)相位加法器的字長為M,當(dāng)相位控制字由0變到P(P≠0)時,ROM的輸入為相位累加器的輸出與相位控制字P之和,因此,其輸出的幅度值相位會增加2πP/2M,從而使最后輸出的模擬信號產(chǎn)生相移。
DDS輸出信號的幅度可以通過在ROM之后加入一個數(shù)字乘法器來實現(xiàn)。幅度控制字A起到對ROM所輸出的幅度值編碼進(jìn)行加權(quán)的作用。
可見,當(dāng)DDS的相位累加器字長和相位加法器字長確定后,通過改變K、P、A就可以有效地控制DDS輸出的模擬信號的頻率、相位和幅度,這就是DDS技術(shù)的調(diào)制特性。
2 采用VHDL語言實現(xiàn)DDS
為簡單起見,以下所描述的DDS僅設(shè)置了頻率控制字K,相位控制字P和幅度控制字A都未予以考慮,其處理可類推。DDS的輸出為正弦波信號。
由于正弦波關(guān)于π奇對稱,關(guān)于π/2與3π/2偶對稱,因此波形存儲器(ROM)中只需存儲其1/4個周期的幅度值編碼。具體地,ROM中存儲正弦波0~π/2相位范圍內(nèi)的256個采樣點的幅度值,采用8位編碼。而DDS的輸出為9位,最高位作為符號位,用以區(qū)分幅度值的正負(fù),“0”表示正,“1”表示負(fù)。ROM為8位地址尋址,而相位累加器的字長采用10位。最高位用以區(qū)分正弦波的前、后半周期,“0”為前半周期,幅度值為正,“1”為后半周期,幅度值為負(fù)。次高位用以區(qū)分正弦波前、后半周期的前、后1/4周期,“0”為前1/4周期,尋址地址為相位累加器的低8位,“1”為后1/4周期,尋址地址為相位累加器低8位的取反。
用VHDL實現(xiàn)DDS的源程序的核心部分如下:
在Xilinx ISE 8.2i開發(fā)環(huán)境中對其進(jìn)行仿真的結(jié)果如圖2。
評論