高精度DDFS信號源FPGA實現
近年來電子信息技術飛速發展,使得各領域對信號源的要求不斷提高,不但要求其頻率穩定度和準確度高,頻率改變方便,而且還要求可以產生任意波形,輸出不同幅度的信號等。DDFS技術是自上世紀70年代出現的一種新型的直接頻率合成技術。DDFS技術是在信號的采樣定理的基礎上提出來的,從“相位”的概念出發,進行頻率合成,不但可利用晶體振蕩的高頻率穩定度、高準確度,且頻率改變方便,轉換速度快,便于產生任意波形等,因此,DDFS技術是目前高精密度信號源的核心技術。
1 DDFS技術原理及相關參數計算
DDFS技術的原理:將對正弦信號(或其他信號)的采樣量化數據存入ROM存儲器中,在時鐘的控制下,依次或隔一定步進讀取ROM中的數據,再通過D/A轉換芯片轉換成模擬信號,進一步經后級的低通濾波器、功率放大電路等來實現頻率合成。其主要的組成部分包括相位累加器、數據存儲ROM表、D/A轉換、低通濾波器及功率放大電路等。
根據DDFS原理,DDFS主要參數包括正弦信號的采樣點數N,最高輸出頻率fomax,最低輸出頻率fomin及頻率分辨率△fo等。本設計要產生1 Hz~10 MHz范圍內,步進為1 Hz的正弦信號,參數計算如下:
1)輸出頻率通式fo ,N為采樣點個數,S為步進長度。
2)輸出最高頻率fomax ;根據奈奎斯特采樣定理,1個周期至少采樣兩個點才能保證原信號的頻率信息。而實現工程應用中一個周期至少采樣16個點或更多點,以保證輸出信號的質量。輸出最高頻率要達10 MHz,所需的系統時鐘信號頻率fc為160 MHz。由于本文使用的外接晶振為50 MHz,則必須使用CycloneII系列FPGA自帶的數字鎖相環(PLL)對輸入時鐘進行倍頻,以達到所需的時鐘頻率160 MHz。可取3倍頻到150 MHz。此時系統輸出的最高頻率為:fomax=150 MHz/16=9.375 MHz。雖然通過提高鎖相環的倍頻數,可進一步提高工作頻率,從而可以產生更高的輸出信號頻率,但由于在進行DDFS模塊設計時,其所能工作的最高頻率將制約著倍頻數。
3)輸出最低頻率fomin ;要做到fc/N=1 Hz,則N=2n=150M,n=log2(150 M)=[27.16]=28。即ROM中的采樣數據為150M點,對應的尋址ROM的地址位數據長度為28位。
4)頻率分辨率△fo △fo=fc/2n,已知ROM的地址位至少為28位,本設計中取32位,這樣所得的fomin及△fo為150M/232=0.03492 Hz。
5)ROM數據1/4周期壓縮 ROM的尋址地址位長度為32位,即所需的ROM單元數將為232個。但ROM中并不需要存儲這么多數據點,因為數據重復量非常大,只需存入一定量的點即可。本設計中,根據正弦信號周期內的數據特點,對周期正弦信號的(0,π/2)區間進行1 024點的采樣,進行12位的量化并存入ROM。這相當于對(0,2π)區間進行了4 096個點的采樣,ROM數據量壓縮為1/4。此時,相位累加器輸出地址位相應修改為30位。這樣以來,在進行數據輸出時,對(π,2π)區間的數據要做取補的運算。因為在這個區間上正弦信號數據為負值。
6)ROM地址位長度 通過數據壓縮,ROM的地址只需10位,此時,只需要對相位累加器的30位地址位輸出值,取高10位用于ROM尋址即可。
7)步進位長度 步進最大應為232/24=228,即為28位的二進制數。
2 DDFS的FPGA實現
本設計中DDFS模塊的設計原理圖如圖1所示。主要包括地址發生單元(相位累加器)、ROM存儲單元、補碼轉換電路及一些數據延時單元組成。工作每一個部分均采用VHDL語言進行描述并生成模塊以便在頂層文件中進行調用。
評論