最近在學(xué)習(xí)FPGA DSP相關(guān)設(shè)計(jì),從濾波器開始學(xué)習(xí),最開始先生成兩個正弦信號,產(chǎn)生混頻信號,通過modelsim仿真來驗(yàn)證設(shè)計(jì)。 本案例用Block Design方法進(jìn)行設(shè)計(jì)(也可以選擇編寫.v文件的形式進(jìn)行設(shè)計(jì))。
信號源產(chǎn)生
本次案例用DDS IP核產(chǎn)生兩個簡單的正弦信號,為了方便后面觀察,這里分別產(chǎn)生一個4M和一個5M的正弦信號。
雙擊打開DDS IP核進(jìn)入設(shè)置,對相關(guān)參數(shù)進(jìn)行設(shè)置
本案例相關(guān)設(shè)置如下所示:
設(shè)置完相關(guān)參數(shù)之后,可以在Output Frequencies中查看頻率信息。
同樣的,在Summary選項(xiàng)中查看設(shè)置的參數(shù)信息
混頻
調(diào)用一個乘法器,將兩路正弦信號進(jìn)行混頻,觀察混頻之后的信號。
會產(chǎn)生一個aclk的輸入管腳,然后把另外一個DDS IP核的aclk引腳連接到aclk輸入管腳上。
然后把兩個DDS的M_ASIS_DATA輸出管腳分別連接到mult_gen IP核的A和B上,之后,右鍵點(diǎn)擊P管腳,選擇make external自動生成輸出的管腳即可。
右鍵點(diǎn)擊空白處,選擇valid design,出現(xiàn)如下窗口,說明連接沒有錯誤。
連線完成之后,ctrl+s保存一下工程,然后在source窗口里面,有一個類似于金字塔形狀的選項(xiàng)
這個就是工程的BD文件,右鍵點(diǎn)擊,選擇create a HDL wapper,生成一個頂層文件。
仿真
工程建立完成以后,我們寫個TB文件對其進(jìn)行仿真,測試代碼如下:
module tb_top(
);
reg aclk_0 ;
wire [31:0]S_0;
initial
begin
aclk_0 = 1;
end
always #5 aclk_0 = ~aclk_0 ;
DSP_TEST_wrapper DSP_TEST_wrapper_i
(.aclk_0(aclk_0),
.S_0(S_0));
endmodule
將測試文件添加進(jìn)工程,點(diǎn)擊左側(cè)run simulation即可用modelsim進(jìn)行仿真(需要將VIVADO和modelsim進(jìn)行關(guān)聯(lián),在SIMULATION選項(xiàng)進(jìn)行設(shè)置)
仿真結(jié)果如下圖所示(我將兩路正弦信號也連了管腳出來,便于仿真觀察,也可以在modelsim中把DDS IP的信號添加進(jìn)來觀察,效果一樣)
編輯:hfy
-
dsp
+關(guān)注
關(guān)注
556文章
8158瀏覽量
357783 -
FPGA
+關(guān)注
關(guān)注
1646文章
22053瀏覽量
618764 -
濾波器
+關(guān)注
關(guān)注
162文章
8139瀏覽量
182135
發(fā)布評論請先 登錄
基于 FPGA 的任意波形發(fā)生器+低通濾波器系統(tǒng)設(shè)計(jì)
Vivado FIR IP核實(shí)現(xiàn)

使用DDS生成三個信號并在Vivado中實(shí)現(xiàn)低通濾波器

帶通濾波器的設(shè)計(jì)步驟與優(yōu)化方法
Vivado Design Suite用戶指南:邏輯仿真

常見濾波器故障及解決方法
模擬低通濾波器的設(shè)計(jì)方法有哪些
經(jīng)典濾波器的設(shè)計(jì)說明

基于FPGA實(shí)現(xiàn)FIR數(shù)字濾波器

卡爾曼濾波器的特性及仿真

請問AIC3254的miniDSP可以實(shí)現(xiàn)256階FIR濾波器嗎,或者有替代CODEC方案嗎?
具有可編程FIR和IIR濾波器的Δ-Σ ADC的優(yōu)點(diǎn)

emi濾波器是什么濾波器
巴特沃斯濾波器和切比雪夫濾波器的區(qū)別
FIR濾波器的工作原理和特點(diǎn)

評論