大俠好,歡迎來到FPGA技術江湖,江湖偌大,相見即是緣分。大俠可以關注FPGA技術江湖,在“闖蕩江湖”、"行俠仗義"欄里獲取其他感興趣的資源,或者一起煮酒言歡。
大俠好,今天由“82年的程序媛”本媛給大俠帶來FPGA設計之基于DDS的線性調頻信號的產生,后續(xù)本媛還會繼續(xù)更新產品項目開發(fā)心得,學習心得等,歡迎大家持續(xù)關注,話不多說,上貨。
一、?DDS工作原理
DDS(Direct Digital Synthesizer)技術是一種頻率合成方法,其輸出頻率具有分辨率高、功耗低、頻率切換速度快且頻率切換時輸出信號的相位連續(xù)等特點。為此在數(shù)字信號處理及硬件實現(xiàn)中有著很重要的作用。DDS的結構主要由相位累加器、波形存儲器、數(shù)模轉換器和低通濾波器等四個大的結構組成,其結構框圖如下:
其中,fclk為參考時鐘,Pword為相位控制字,給定輸出信號的初始相位值;Fword為頻率控制字,用于控制輸出信號的頻率。DDS模塊工作時,每來一個參考時鐘,相位累加器就將頻率控制字與寄存器輸出的值累加,將相加后的值繼續(xù)輸入到寄存器中,這樣構成一個循環(huán),可以不停的對頻率控制字進行累加。累加的值作為地址在波形存儲器中通過查找地址所對應的幅值表,就可以完成其從相位到幅值之間的轉化。
在DDS模塊中,輸出頻率的公式為:Fout = fclk/2*Fword
從公式可以看出,DDS輸出的頻率由頻率控制字Fword決定。當頻率控制字變化時,輸出頻率也跟著變化,從而可以實現(xiàn)調頻信號的產生。
二、?線性調頻信號
線性調頻信號是一種頻率連續(xù)線性變化的信號,是一種常用的雷達信號。在雷達系統(tǒng)中常用做發(fā)射信號,由于其帶寬較高且包絡為矩形,故在接收機端可以實現(xiàn)脈沖壓縮得到較高的距離分辨力。線性調頻信號表達式為:S(t)=Acos(2πf0 + πut^2) (0≤t≤τ);相位對 t 求導得到頻率: f=f0+ut;其中:f0為起始頻率,u為調頻斜率,τ為脈沖寬度,B=uτ為信號的帶寬。由公式可以看出,S(t)的頻率隨時間變化線性變化,初始值為f0,斜率為u。
三、?基于DDS的線性調頻信號產生
由DDS原理可知通過控制輸入的頻率控制字即可控制輸出的信號頻率,我們可以通過控制頻率控制字使DDS輸出信號的頻率線性變化,由此產生線性調頻信號。由于在MATLAB中仿真能更清楚的了解信號的頻譜,故本實驗采用在system generator中搭建模型的方式,仿真正確后生成IP核的加入到工程中。首先,我們需要確定線性調頻信號的相關參數(shù),即模型的輸入包括采樣率fs、信號的帶寬B、斜率選擇ratio以及初始相位frq_first等。整體模型框圖如下圖所示:
首先根據(jù)帶寬及采樣率通過fword_gen模塊產生線性的DDS的頻率控制字,并且給出初始相位和斜率選擇;將計算得到的頻率控制字輸出給DDS,產生頻率在Band帶寬內線性變化的余弦信號;最后通過幅度調制模塊對輸出信號的振幅進行調整,得到一個chirp信號。
DDS模塊調用xilinx的IP核DDS compiler6.0,可以雙擊IP核進行配置其系統(tǒng)時鐘、相位位寬、輸出信號位寬等。
其中poff為相位控制字,pinc為頻率控制字。需要注意的是,在搭建模型調用IP核時,輸入的相位控制字和頻率控制字均需要為小數(shù),可以通過調用reinterpret模塊,將fword_gen模塊生成的頻率控制字轉換成小數(shù)后輸入給DDS IP核。
最后通過在matlab環(huán)境下仿真得到的chirp信號如下圖所示:分別為信號實部、虛部以及初始相位375M、帶寬為500M的信號頻譜圖。
今天本媛就說到這里,后續(xù)繼續(xù)和大俠一起分享,歡迎關注貌美如花的“82年的程序媛”本媛,江湖偌大,繼續(xù)闖蕩,加油!