国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用DDS生成三個信號并在Vivado中實現低通濾波器

FPGA技術江湖 ? 來源:OpenFPGA ? 2025-03-01 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者: 碎碎思,來源:OpenFPGA

本文使用 DDS 生成三個信號,并在 Vivado 中實現低通濾波器。低通濾波器將濾除相關信號。

f2bb87e4-efea-11ef-9310-92fbcf53809c.png

介紹

用DDS生成三個信號,并在Vivado中實現低通濾波器。低通濾波器將濾除較快的信號。

本文分為幾個主要部分:

信號生成:展示如何使用DDS(直接數字合成)IP生成測試信號 - 10 MHz 信號和 500 kHz 信號,然后將它們組合起來創建混合信號進行測試。

FIR 濾波器設計:解釋影響 FIR 濾波器性能的關鍵因素,包括:

抽頭數量及其對濾波器響應的影響

量化和系數位寬設計

權衡資源利用

設計:演示使用 Vivado 進行設計,包括

設置FIR IP

使用 MATLAB 生成的系數配置濾波器參數

設置適當的位寬和時鐘頻率

添加必要的組件,如時鐘源和 ILA(集成邏輯分析儀)

測試和驗證:顯示如何通過以下方式驗證濾波器的操作:

仿真結果顯示高頻分量的濾波

FPGA 板上的硬件實現

使用基于計數器的脈沖發生器觀察濾波器脈沖響應的特殊技術

第 1 部分:DDS 設置,用于生成兩個信號和混合信號

首先為測試臺生成信號:

f2d2738c-efea-11ef-9310-92fbcf53809c.png

在BD設計中添加 DDS IP。在配置選項卡中,將系統時鐘設置為 100 MHz。

f2e46876-efea-11ef-9310-92fbcf53809c.png

由于我們只需要生成正弦波,因此在Implementation選項卡中,選擇輸出為Sine選項,并取消選擇相位輸出選項。在Output Frequency選項卡中,將Channel 1的頻率設置為 500 kHz。

f2edffc6-efea-11ef-9310-92fbcf53809c.pngf2f521de-efea-11ef-9310-92fbcf53809c.png

在BD設計中添加另一個 DDS IP。重復相同的設置,但這次將輸出頻率設置為 10 MHz。

f2f95362-efea-11ef-9310-92fbcf53809c.png

在BD設計中添加一個加法器。將其輸入位寬設置為 8,將其輸出位寬設置為 9。

f3071c0e-efea-11ef-9310-92fbcf53809c.png

將兩個 DDS 編譯器的輸出連接到加法器的輸入。這將生成混合信號。

在設計中添加一個模擬時鐘發生器,并將其頻率設置為 100MHz。該頻率也是設計的采樣率

DDS編譯器仿真結果:

如仿真結果所示:

f30f94b0-efea-11ef-9310-92fbcf53809c.png

第一個正弦波的周期為 2000 ns,這是一個 500 kHz 的信號。

第二個正弦波的周期為 100 ns,這是一個 10 MHz 信號。

還可以觀察混合信號,其中較快信號的幅度以較慢信號的頻率波動,從而顯示了兩個頻率的組合。

Vivado FIR 濾波器仿真

f319fd42-efea-11ef-9310-92fbcf53809c.png

FIR 濾波器配置:FIR 濾波器的性能受幾個因素影響:

抽頭數量:

增加抽頭數量可改善濾波器響應,從而使通帶更平坦,波紋更少,振鈴減少。

更多的抽頭數還會增強截止頻率的衰減,從而提高濾波器的精度。然而,更多的抽頭會引入更大的延遲,這可能不適合某些 DSP 系統。

f320221c-efea-11ef-9310-92fbcf53809c.png 不同抽頭數的FIR濾波器響應比較

量化和濾波器系數位寬:

量化-通過將數字映射到由分配的位寬決定的一組固定的離散值來降低數字的精度。

使用較少的位數進行量化會降低濾波器系數的準確性,從而對濾波器的性能產生負面影響。

資源權衡:

濾波器性能和 FPGA 資源利用率之間存在權衡。

增加抽頭數量或系數的位寬需要更多的 DSP 資源,這可能會消耗 FPGA 很多資源。

f32fd77a-efea-11ef-9310-92fbcf53809c.png 兩種不同FIR濾波器所需的FPGA資源

通過平衡這些因素,可以優化 FIR 濾波器以滿足應用程序的特定要求。

在 Matlab 中生成量化 FIR 濾波器抽頭

為了簡化工作,提供了一個可以輕松生成量化 FIR 濾波器的 Matalab 代碼,可以在 Vivado 中直接使用它:

closeall
clearall
clc
%%setuptheparametershere
Sample_Rate=50e6;
cutoff_frequency=5e6;
number_of_filter_taps=191;%mustbeoddnumber!
filter_taps_bitwidth=10;
lowpass_highpass='low';%shouldbeloworhigh
%%Caluculatethetaps
Nyquist_frequency=Sample_Rate/2;
Wn=cutoff_frequency/(Nyquist_frequency);
%Generatearowvectorbcontainingthen+1coefficients
filter_taps=fir1(number_of_filter_taps-1,Wn,lowpass_highpass);
%%Quantization
%onebitforsign
filter_taps=floor(filter_taps/max(filter_taps)*(2^(filter_taps_bitwidth-1)-1));
%%plotthefilterresponse
N=1024;%Numberofpointsforthefrequencyresponse
[H,f]=freqz(filter_taps,1,N,Sample_Rate);%Calculatethefrequencyresponse
%Magnitudeandphaseresponse
magnitude=abs(H);%Magnituderesponse

%Plotthefilterresponse
%Magnituderesponseplot
figure;
plot(f,20*log10(magnitude),'linewidth',1.3);%PlotmagnitudeindB
gridon;
title('MagnitudeResponse(dB)',FontSize=22);
xlabel_txt='Frequency(Hz)';
xlabel(xlabel_txt,FontSize=22);
ylabel('Magnitude(dB)',FontSize=22);
%xlim([030e6])
figure
freqz(filter_taps,1)
figure
stem(filter_taps,'linewidth',1.3)
gridon;

在提供的Matlab代碼中,需要配置以下參數:

采樣率:這是采樣頻率,在我們的設計中它對應于驅動系統的時鐘頻率。

截止頻率:指定濾波器的截止頻率。

抽頭數:設置濾波器的抽頭數,決定濾波器的精度和性能。

抽頭位寬:定義濾波器系數的位寬,影響量化精度。

濾波器類型:選擇需要的濾波器類型。此代碼目前僅支持高通和低通濾波器。

Vivado 中的 FIR 編譯器 IP 設置:

借助 Matlab 代碼,生成截止頻率為 1MHz、量化為 16 位的 21 個濾波器抽頭。需要進行少許修改才能使生成的值在 Vivado 中可用。

復制 FIR 濾波器抽頭并將其粘貼到“濾波器選項”選項卡 下的“系數向量”字段中。

f3417e30-efea-11ef-9310-92fbcf53809c.png

請注意,一旦更新濾波器系數,實施選項卡中的輸出寬度將自動調整。

在“通道規范”選項卡中,設置采樣率和時鐘頻率匹配連接到 FIR 濾波器的時鐘。在本教程中,我們使用 100 MHz 時鐘。

f34ceac2-efea-11ef-9310-92fbcf53809c.png

在“實施”選項卡中,配置“輸入位寬”以匹配輸入信號的位寬。例如,由于此設計中加法器的輸出有 9 位,因此將輸入位寬設置為 9。

f3515940-efea-11ef-9310-92fbcf53809c.png

這樣FIR 濾波器現已配置完畢并可以使用。

請注意,FIR 濾波器的輸入和輸出位寬與正確的字節數對齊。例如,當我們將輸入位寬設置為 9 位時,濾波器的實際輸入位寬會調整為 2 個字節(16 位)。

仿真結果

仿真就會觀察到 FIR 濾波器表現為低通濾波器,衰減頻率更高的信號。

f3592a44-efea-11ef-9310-92fbcf53809c.png

Vivado 綜合

上訴設計都是可綜合的,在系統內為設計添加時鐘后就可以進行綜合和實現了。

最后,需要在設計中加入一個 ILA 來監控和研究目標信號。移除所有額外的端口,并將它們連接到 ILA。

f362d526-efea-11ef-9310-92fbcf53809c.png

使用上面的架構需要使用SDK或者Vitis運行一個簡單的“HelloWorld!”程序。

如果使用板載時鐘就按照需求進行修改。

f36f5a4e-efea-11ef-9310-92fbcf53809c.png

運行后,應該能看到與仿真相同的結果:

f3739cb2-efea-11ef-9310-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22408

    瀏覽量

    636217
  • 濾波器
    +關注

    關注

    162

    文章

    8411

    瀏覽量

    185679
  • FIR
    FIR
    +關注

    關注

    4

    文章

    152

    瀏覽量

    35503
  • Vivado
    +關注

    關注

    19

    文章

    857

    瀏覽量

    71100

原文標題:FPGA DSP:Vivado 中帶有 DDS 的 FIR 濾波器

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于 FPGA 的任意波形發生+低通濾波器系統設計

    設計將用兩種方式實現低通濾波器。 方法一:利用Vivado自身具備的DDS和FIR的IP核實現;方法二:通過Verilog編程
    發表于 07-15 18:33

    基于 FPGA 的任意波形發生+低通濾波器系統設計

    設計將用兩種方式實現低通濾波器。 方法一:利用Vivado自身具備的DDS和FIR的IP核實現; 方法二:通過Verilog編程
    發表于 05-07 15:34

    低通濾波器如何設計?

    kHz 比音頻信號帶寬20~20kHz 大得多 為了從 PWM 開關信號恢復出音頻信號 通常采用低通濾波器 LPF
    發表于 11-07 14:46

    有源濾波器數字低通濾波器的設計及其DSP實現

    有源濾波器數字低通濾波器的設計及其DSP實現摘要:介紹了基于瞬時無功功率理論的ip iq 諧波檢測方法及對低通濾波器的要求,分析討論了數字
    發表于 05-13 17:19 ?90次下載

    基于DDS低通濾波器設計與仿真

    分析了幾種經典濾波器特性,重點研究了DDS系統中低通濾波器的設計方法。根據DDS的結構特點和輸出雜散頻譜特性,結合濾波器技術指標使用了歸一化
    發表于 06-22 15:19 ?118次下載

    基于DDS的橢圓函數低通濾波器的設計

      低通濾波器是直接數字頻率合成DDS的重要組成部分,其性能的好壞直接影響整個DDS的特性。提出一種基于DDS的橢圓函數低
    發表于 12-09 11:09 ?4311次閱讀
    基于<b class='flag-5'>DDS</b>的橢圓函數<b class='flag-5'>低通濾波器</b>的設計

    DDS信號發生橢圓低通濾波器的設計

    給出了利用DDS技術對DDS信號發生低通濾波器進行設計的一般方法, 該方法采用截止特性陡峭的7階橢圓函數
    發表于 09-27 14:31 ?92次下載
    <b class='flag-5'>DDS</b><b class='flag-5'>信號</b>發生<b class='flag-5'>器</b><b class='flag-5'>中</b>橢圓<b class='flag-5'>低通濾波器</b>的設計

    LC低通濾波器作用及應用案例

    低通濾波器的作用是抑制高頻信號,通過低頻信號。簡單理解,可認為是通低頻、阻高頻。低通濾波器包括有源低通濾波器和無源
    發表于 10-09 16:46 ?4.2w次閱讀
    LC<b class='flag-5'>低通濾波器</b>作用及應用案例

    低通濾波器的設計與實現

    低通濾波器的設計是已知ow(dB3-截止頻率 )、LPH0(直流增益 )、Q(在dB3-截止頻率時的電壓放大倍數與通帶放大倍數數值之比)三個參數來設計電路,可選的電路形式為壓控電壓源低通濾波器和無限增益多路反饋
    發表于 04-22 09:23 ?78次下載
    <b class='flag-5'>低通濾波器</b>的設計與<b class='flag-5'>實現</b>

    低通濾波器與匹配濾波器的區別

    低通濾波器和匹配濾波器的主要區別在于:   1.低通濾波器是一種濾波器,它可以抑制高頻信號,使低頻
    發表于 02-16 17:44 ?3300次閱讀

    低通濾波器與高通濾波器有什么不同

    低通濾波器和高通濾波器的不同之處在于,低通濾波器的電路結構,電容放在輸出端,電感放在輸入端,而高通濾波器的電路結構
    發表于 02-17 14:50 ?1.6w次閱讀
    <b class='flag-5'>低通濾波器</b>與高通<b class='flag-5'>濾波器</b>有什么不同

    低通濾波器電路圖分享

    低通濾波器是一種電子濾波器,允許低于截止頻率的信號通過,但高于截止頻率的信號不能通過。低通濾波器常用于音頻應用
    的頭像 發表于 02-12 09:33 ?1w次閱讀
    <b class='flag-5'>低通濾波器</b>電路圖分享

    有源低通濾波器設計原理 有源低通濾波器的截止頻率計算

    、增強信號質量。 有源低通濾波器的基本原理是利用一放大器和反饋電路來實現濾波器的放大和濾波功能
    的頭像 發表于 02-03 09:36 ?5189次閱讀

    什么是低通濾波器?低通濾波器有什么作用?

    在電子工程領域中,濾波器是一種用于信號處理的重要元件。而低通濾波器作為濾波器的一種類型,具有其獨特的頻率響應特性。本文維愛普電源濾波器小編將
    的頭像 發表于 04-08 16:30 ?7234次閱讀
    什么是<b class='flag-5'>低通濾波器</b>?<b class='flag-5'>低通濾波器</b>有什么作用?

    低通濾波器的工作原理 低通濾波器在音頻處理的應用

    的特性,電容通高頻阻低頻,而電感則相反,通低頻阻高頻。通過巧妙結合這兩種元件,低通濾波器可以實現信號的頻率選擇性過濾。 RC低通濾波器 RC低通濾
    的頭像 發表于 02-01 10:24 ?3292次閱讀