在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

FIR數字濾波器的設計及驗證方案

454398 ? 來源:MYMINIEYE ? 作者:MYMINIEYE ? 2020-11-08 16:31 ? 次閱讀

一 .濾波器介紹

濾波器是一種用來減少,消除干擾的電器部件,有對特定頻率的頻點或該頻點以外的頻率信號進行有效濾除,從而實現消除干擾、獲取特定頻率信號的功能。數字濾波器相比模擬濾波器,有著更高的精度、信噪比、無可比擬的可靠性。

FIR,IIR是數字濾波器中最常見的兩種濾波器。FIR濾波器是有限沖擊響應,最主要特點是沒有反饋回路,故不存在不穩定的問題,很容易做到嚴格的線性相位特性,另外設計方式是線性的,硬件容易實現,對于抽取和插入,結構簡單,很容易得到高速流水線的設計,有定義明確的量化噪聲,并且有較低的系數和算法四舍五入誤差預算,但是其高濾波器長度的實現需要大量的工作量及資源;IIR濾波器是無限沖擊響應,最主要的特點是可以用較低的階數,獲得高的選擇性,所用的存儲單元少,計算量小,效率高。但是這樣的效率是以非線性相位為代價的,選擇性越好,相位非線性越嚴重。本文以FIR為例介紹數字濾波器的設計及驗證。

二.FIR濾波器設計
采用matlab的Filter Design 來完成對FIR濾波器的設計,打開matlab,在命令行輸入filterDesigner,進入到設計頁面,如下

對濾波器的設計主要涉及三個點:通帶,阻帶,過渡帶。

主要的參數有以下5個:

Fpass:通帶上限截至頻率,Apass:帶內平坦度;

Fstop:阻帶下限截至頻率,Astop:帶外抑制幅度;

Fs:數據率

輸入數據的速率為9.14MHz,通帶上限截止頻率為2M,由于考慮到鏡像干擾,阻帶截至頻率設為2.2M,階數選擇128階,濾波器階數可以根據需要設置,也可以設置帶內平坦度和帶外抑制幅度,來選擇所需最小階數,達到自己需要的精度即可。設置完成之后,如下:

濾波器設計完成之后需要對濾波器的系數進行定點量化,選擇按鈕3,定義16位的數據位寬,其中15位為小數。如下:

點擊Filter Design菜單欄的Targets選項下拉菜單的Generate C Header和XILINX Coefficient(.COE) File,分別導出的是C的頭文件和.coe文件(濾波器系數文件),C的頭文件如下

Coe文件為:

這里選擇產生Generate C Header,產生濾波器系數,此處沒有選擇coe文件,是因為當vivado IP核使用coe方式導入時,vivado不能區分小數位。

三.vivado FIR IP核介紹
1.設置濾波器的屬性:打開vivado IP核,直接填入濾波器的系數,此處系數需要量化為小數,左邊為濾波器的增益,和matlab一致,如下:

濾波器的類型包括單速率(Single Rate,即數據輸出與輸入速率相同),抽取(Decimation)和插值(Interpolation)應用于多速率信號處理系統,此外還支持希爾伯特變換(Hilbert)模式。抽取型一般多用于數字前端下變頻抽取樣值降低AD采樣速率,插值型用于常用于提高采樣速率。由于需要對AD數據進行抽取濾波,這里選擇抽取類型,抽取的倍數為2倍。

2.設置FIR濾波器的通道,由于只使用一個通道,因此交織通道序列(Channel Sequence)選擇Basic,通道數(Number of Channels)為1;Hardware Oversampling Specification中設置過采樣模式,選擇Input Sample Period,即輸入采樣周期,也可以通過輸入采樣頻率和時鐘頻率來設置,設置如下:

3.濾波器量化設置

填入濾波器系數之后,選擇量化的位數,輸入的數據位寬為16,小數位數為15,如果全精度輸出,輸出位寬為33,對后續的處理很不方便,輸出也需要進行相應的截尾,因此設置為:

4.FIR濾波器在FPGA上實現資源選取的情況,一般采用系統默認即可。

5.對外輸入和對外輸入接口情況,這里只添加復位信號,可以根據自己的實際需求,添加信號。

6.Summary是對FIR濾波器設計的總結,所使用的類型功能,濾波器階數等,最后點擊生成FIR IP核。

四.FIR 濾波器實現
1.C模型使用
Vivado提供了FIR IP核的C仿真模型,但是不能直接再matlab上運行,需要搭建仿真環境,根據自己使用的matlab選擇不同的版本,具體搭建參考https://www.cnblogs.com/qiantuo1234/p/7284384.html 。搭建完成之后在matlab命令窗口輸入mex-setup,出現以下提示表示安裝成功

然后找到IP核C模型,在vivado工程FIR IP核的目錄下的cmodel的文件夾,FIR_demo.srcs/sources_1/ip/fir_compiler_0/cmodel,其中有兩個文件,lin64是linux版本的,nt64是windows版本的,選擇nt64解壓。

matlab打開解壓的文件夾,輸入run make_fir_compiler_v7_2_mex,出現以下表示運行成功。

最后要調用的文件是run_fir_compiler_v7_2_mex.m,這個文件可以作為參考使用,部分內容為:

作如下修改:

其中FIR參數設置要和vivado中的IP核配置完全相同,否則會出現比對數據不一致的情況,具體參數配置見下表

各類型對應的數值選擇

2.Modelsim 仿真
仿真時需要注意,采用的抽取類型,數據速率和時鐘速率不一樣,每隔8個時鐘周期采一個數據,然后輸入到FIR IP核,輸出是每隔16個時鐘周期輸出一個數據,輸出延遲可在FIR IP核Summary界面得知,模塊時序如下:

3.數據對比
濾波器的截至頻率為2MHz,用matlab產生一個1MHz和3MHz的混合信號,分別輸入C仿真模型和modelsim進行仿真,得到的結果進行對比如下:

可以清楚的看到輸出的結果是一致的,通過比較matlab和modelsim輸出的數據,發現也是一致的,相減之后為零,驗證了濾波器的正確性。

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

    關注

    1629

    文章

    21736

    瀏覽量

    603389
  • 濾波器
    +關注

    關注

    161

    文章

    7817

    瀏覽量

    178128
  • fir濾波器
    +關注

    關注

    1

    文章

    95

    瀏覽量

    19042
收藏 人收藏

    評論

    相關推薦

    AMC1304后接的數字濾波器接口應該是什么樣的?

    疑問: 1、AMC1304后接的數字濾波器接口應該是什么樣的,和ADS1202一樣是采用的SPI嗎。如果是,我需要在上升沿還是下降沿進行數據的讀取。 2、后接的數字濾波器采用的是sin3 OSR為
    發表于 11-28 06:43

    模擬濾波器數字濾波器的轉換步驟

    將模擬濾波器轉換為數字濾波器是一個涉及多個步驟的過程,旨在保持濾波器性能的同時,適應數字信號處理的需求。以下是將模擬濾波器轉換為
    的頭像 發表于 11-26 10:03 ?741次閱讀

    ADS1256的數字濾波器時可以自己設置嗎?

    想問下TI,ADS1256的數字濾波器時可以自己設置嗎,還是通過ADC的DATA RATE的設置,默認是設置到相對于的數字濾波
    發表于 11-26 07:13

    數模轉換數字濾波器的結合應用

    數模轉換(DAC)與數字濾波器的結合應用在現代電子系統中非常普遍,這種結合能夠顯著提高系統的性能、精度和可靠性。以下是對數模轉換數字濾波器結合應用的介紹: 一、數模轉換
    的頭像 發表于 11-25 16:20 ?296次閱讀

    ADC3663數字濾波器如何使用呢?

    板上用到了ADC3663,看數據手冊上,它可以有數字濾波功能,甚至不需要前級的抗混疊濾波器(這么理解對嗎)。 我想問下,這個數字濾波器如何使用呢?咱們是否有推薦的資料,如源碼等。 因為看了手冊也不知道從何處著手呢
    發表于 11-18 07:12

    基于FPGA實現FIR數字濾波器

    數字信號處理系統中,有限脈沖響應(finite impulse response,FIR)數字濾波器是一個非常重要的基本單元。近年來,由于FPGA具有高速度、高集成度和高可靠性的特點而得到快速發展
    的頭像 發表于 11-05 16:26 ?597次閱讀
    基于FPGA實現<b class='flag-5'>FIR</b><b class='flag-5'>數字濾波器</b>

    Δ-Σ ADC中的數字濾波器類型

    電子發燒友網站提供《Δ-Σ ADC中的數字濾波器類型.pdf》資料免費下載
    發表于 09-06 09:50 ?0次下載
    Δ-Σ ADC中的<b class='flag-5'>數字濾波器</b>類型

    數字濾波器的實現方法

    數字濾波器是一種通過對數字信號進行處理來完成對數字信號或模擬信號進行濾波的儀器。其實現方式多樣,可以從硬件和軟件兩個角度進行探討,同時涉及多種數學方法和設計步驟。
    的頭像 發表于 08-20 16:06 ?805次閱讀

    AMC1210四通道數字濾波器數據表

    電子發燒友網站提供《AMC1210四通道數字濾波器數據表.pdf》資料免費下載
    發表于 08-19 09:15 ?0次下載
    AMC1210四通道<b class='flag-5'>數字濾波器</b>數據表

    數字濾波器的原理和應用

    數字濾波器是一種由數字乘法器、加法器和延時單元組成的算法或裝置,其輸入和輸出均為數字信號。它的主要功能是通過一定的運算關系改變輸入信號所含頻率成分的相對比例或者濾除某些頻率成分,以達到期望的響應特性。
    的頭像 發表于 08-05 16:19 ?1127次閱讀
    <b class='flag-5'>數字濾波器</b>的原理和應用

    如何區分IIR濾波器FIR濾波器

    對信號進行處理的系統,它可以按照預定的規則改變信號的頻譜特性。在數字信號處理中,濾波器通常用于去除噪聲、抑制干擾或提取特定頻率成分。IIR和FIR濾波器是兩種基本的
    的頭像 發表于 07-19 09:44 ?4830次閱讀

    iir濾波器fir濾波器的優勢和特點

    (Infinite Impulse Response)濾波器是一種具有無限脈沖響應的數字濾波器。它的輸出不僅取決于當前的輸入值,還取決于之前的輸入值。IIR濾波器通常由遞歸濾波器實現,
    的頭像 發表于 07-19 09:28 ?1492次閱讀

    數字濾波器是如何工作的

    之前我們在說明數字濾波器的時候,多為Python來進行示例驗證的。實際應用中,多為C/C++,無論是在嵌入式系統中,還是PC機上,尤其對于時間或者實時性要求比較嚴格的情況下,C/C++應該是我們的首選。
    的頭像 發表于 06-13 10:09 ?547次閱讀
    <b class='flag-5'>數字濾波器</b>是如何工作的

    數字濾波器的頻率響應與模擬濾波器的頻率響應有何區別

    數字濾波器的頻率響應與模擬濾波器的頻率響應有何區別? 數字濾波器和模擬濾波器是用于信號處理和濾波的兩種主要類型的
    的頭像 發表于 02-05 09:10 ?1603次閱讀

    數字濾波器在中頻處理中的分類及區別

    數字濾波器在中頻處理中的分類主要依據其用途和性能要求。
    的頭像 發表于 01-29 17:03 ?943次閱讀
    主站蜘蛛池模板: 天天在线干| 天天操天天噜| 80s国产成年女人毛片| 国产大乳喷奶水在线看| 日韩高清性爽一级毛片免费| 四虎永久免费网站入口2020| 中文字幕一二三区| 日本毛片在线观看| 一区二区美女视频| 性做久久久久久久免费看| 深爱婷婷| 六月丁香婷婷激情国产| 国产大乳孕妇喷奶水在线观看| 久久久久久久国产免费看| 欧美性区| 国产婷婷| 天天拍天天射| 久久免费国产视频| 亚洲dv| 国产在线小视频| 在线 | 一区二区三区四区| 四虎看黄| 国产国语videosex另类| 成人激情在线| 国产免费久久精品99久久| 美女黄色在线| 午夜影视体验区| 在线视频黄| aⅴ一区二区三区| 欧美性精品videofree| 成人在线亚洲| 精品看片| 美女视频黄a视频美女大全| 天堂中文字幕在线| 12306影院午夜入口| 亚洲日本一区二区三区在线不卡| 五月婷婷狠狠| 国产一级又色又爽又黄大片| 天天狠天天插| 午夜欧美在线| 人成xxxwww免费视频|