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

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

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

3天內不再提示

Vivado FIR IP核實現

FPGA設計論壇 ? 來源:CSDN技術社區FPGADesigner ? 2025-03-01 14:44 ? 次閱讀

IP核概述

daf89f38-f01d-11ef-9310-92fbcf53809c.png

Xilinx的FIR IP核屬于收費IP,但是不需要像 Quartus那樣通過修改license文件來破解。如果是個人學習,現在網絡上流傳的license破解文件在破解Vivado的同時也破解了絕大多數可以破解的IP核。只要在IP Catalog界面中FIR Compiler的License狀態為“Included”即可正常使用。

IP核參數設置

和Quartus不一樣,Vivado的FIR Compiler沒有提供設計FIR濾波器和生成濾波器系數的功能,因此需要使用MATLAB等其它工具設計好濾波器再將系數導入到IP核中。MATLAB的FDATOOL工具在設計好濾波器后,可以直接生成IP核需要的coe文件,如下圖所示:

db174078-f01d-11ef-9310-92fbcf53809c.png

在IP Catalog中打開FIR Compiler,主界面如下:

db29f402-f01d-11ef-9310-92fbcf53809c.jpg

左邊的Tab可以切換看到FIR的模塊圖(管腳信息)、頻率響應等信息。右邊的Tab是對FIR濾波器進行設計。

IP核支持兩種FIR系數輸入方式,以“Vector”的形式直接寫入;或者以“COE File”的形式導入coe文件。Xilinx的FIR IP核支持多種濾波器結構,可以在“Filter Type”中設置,本文選擇傳統的“Single Rate”結構。該IP核同樣也支持系數重載。

除了單速率(Single Rate,即數據輸出與輸入速率相同)外,FIR Compiler還支持抽取(Decimation)和插值(Interpolation)應用于多速率信號處理系統。此外還支持希爾伯特變換(Hilbert)模式,可以在“Filter Type”中設置。

db40aa58-f01d-11ef-9310-92fbcf53809c.png

IP核支持多通道數據輸入,可以在Channel Specification這個Tab中設置輸入數據的通道數。還可以在Hardware Oversampling Specification中設置過采樣模式,即輸入數據的頻率可以高出FIR系統時鐘的頻率。

db532a66-f01d-11ef-9310-92fbcf53809c.jpg

Implementation這個Tab中可以設置FIR系數的類型、量化方式、量化位寬(此值應該與MATLAB中的設置一致,否則頻率響應是錯的)和結構。本文由于是設計線性相位FIR,濾波器系數是對稱的,因此選擇為“Symmetric”,也可以選擇為“Inferred”,軟件會自動判斷系數的結構。

Detailed Implementation這個Tab中可以設置優化方式、存儲的類型、是否使用DSP單元等與綜合、實現有關的信息。Interface這個Tab中可以設置與IP核接口相關的信息。

IP核接口說明

Vivado的很多IP核采用的是AXI4接口,主要有數據(tdata)、準備好(tready)、有效(tvalid)幾種信號,還有主機(m)和從機(s)之分。另外在Interface這個Tab還可以配置使用更多輔助的AXI4接口信號。

接下來介紹幾個主要的接口:

db63f288-f01d-11ef-9310-92fbcf53809c.jpg

在設置為多通道、可變系數模式時,還會用到其它的接口。上表中的接口已經足夠完成一次單通道、固定系數的FIR濾波器設計。其它接口在后文的設計中使用到FIR濾波器的其它模式時,再做介紹。

需要注意,同DDS Compiler一樣(https://blog.csdn.net/fpgadesigner/article/details/80512067),AXI4接口的tdata位寬是以字節為單位,即只會是8的倍數,因此需要結合設計的實際位寬做相應處理。

FPGA設計

IP核的接口在Verilog HDL中進行設計時,一定要參考官方文檔中給出的時序圖。在IP核的配置界面點擊“documentation”,可以找到IP核的user guide。也可以在Xilinx官網或DocNav工具中搜索pg149,查閱FIR Compiler的說明。

單通道、固定系數的FIR Compiler接口時序非常簡單,Verilog HDL示例代碼如下所示:

`timescale 1ns / 1ps

module Xilinx_FIRIP_liuqi

(

input clk, //FPGA系統時鐘/數據速率:2kHz

inputsigned [11:0] Xin, //數據輸入頻率為2kHZ

outputm_tvalid, //FIR輸出數據有效信號

outputsigned [24:0] Yout //濾波后的輸出數據

);

wire s_tready;

wire signed [31:0] m_tdata;

fir fir_lowpass_500kHz

(

.aclk (clk),

.s_axis_data_tvalid (1'b1),

.s_axis_data_tready (s_tready),

.s_axis_data_tdata ({{4{Xin[11]}},Xin}),

.m_axis_data_tvalid (m_tvalid),

.m_axis_data_tdata (m_tdata)

);

assign Yout = m_tdata[24:0];

endmodule

程序中認為輸入的采樣數據始終有效,因此將s_axis_data_tvalid永遠置1。由于s_axis_data_tdata為16bit位寬,但輸入信號數據為12bit位寬,因此用拼接運算符{}在高位填充補碼的符號位;由于m_axis_data_tdata為32bit位寬,但輸出信號數據有效位僅有25bit位寬,因此僅需取低25bit作為FIR濾波器輸出。當然不這么操作,直接將信號賦值到實例化接口,結果也是正確的,這樣做只是為了更嚴謹。

仿真與工程下載

使用MATLAB生成一個200khz+800kHz的混合頻率信號,寫入txt文件,。編寫Testbench讀取txt文件對信號濾波,文件操作方法參考“Testbench編寫指南(一)文件的讀寫操作”https://blog.csdn.net/fpgadesigner/article/details/80470972。

在Vivado中進行仿真,對正弦信號的濾波如下圖所示:

db80b896-f01d-11ef-9310-92fbcf53809c.jpg

新建一個虛擬總線,僅保留一個符號位。明顯看到經過500Hz低通濾波器濾波后,輸入的200+800Hz信號只剩下200Hz的單頻信號。且當FIR濾波器輸出有效時,m_tvalid信號置高。

原文鏈接:https://blog.csdn.net/fpgadesigner/article/details/80621411

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

    關注

    187

    文章

    2988

    瀏覽量

    232589
  • 濾波器
    +關注

    關注

    161

    文章

    7963

    瀏覽量

    180195
  • Xilinx
    +關注

    關注

    73

    文章

    2175

    瀏覽量

    123712
  • IP核
    +關注

    關注

    4

    文章

    335

    瀏覽量

    50160
  • Vivado
    +關注

    關注

    19

    文章

    820

    瀏覽量

    67772

原文標題:Vivado FIR IP核實現

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Vivado 使用Simulink設計FIR濾波器

    領域都有著廣泛的應用。 Vivado自帶的FIR濾波器IP核已經很好用,這里借FIR濾波器的設計,介紹Simulink圖形設計編程方法。Simulink可以使設計更直觀,使硬件資源得到
    發表于 04-17 17:29

    采用xilinx EDK的GPIO IP核實現中斷的功能(里面很詳細的)

    采用xilinx EDK的GPIO IP核實現中斷的功能(里面很詳細的)
    發表于 08-17 10:02

    Verilog中用*實現乘法和用乘法器ip核實現乘法的區別?

    Verilog中用*實現乘法和用乘法器ip核實現乘法綜合結果有哪些不同?
    發表于 03-18 09:35

    基于FPGA的FIR濾波器IP仿真實例

    在通信、圖像處理、模式識別等領域都有著廣泛的應用。Vivado集成的FIR IP核可以實現如下公式所示的N級卷積運算。 FIR
    發表于 07-16 17:24

    請問如何使用單FIR編譯器v7.2核實現多頻帶帶通濾波器?

    你好,我希望實現帶可變帶寬的帶通濾波器(如16k,32k,64k等)。我有各種帶寬的濾波器系數。我有Vivado 2015和FIR編譯器v7.2。我希望將多頻段BPF協方系數用于單個IP
    發表于 05-07 08:24

    并行FIR濾波器Verilog設計

    型結構FIR實現時可以采用并行結構、串行結構、分布式結構,也可以直接使用Quartus和Vivado提供的FIR IP核。本篇先介紹并行
    發表于 09-25 17:44

    FIR IP用戶手冊

    FIR IP 用戶手冊 FIR(Finite Impulse Response),有限沖擊響應濾波器,是數字信號處理里面常用的濾波器類型。
    發表于 08-09 06:56

    在測控系統中用IP 核實現D/A 轉換

    采用數字化技術, 在測控系統中用IP 核實現D/A 轉換,并且在1 片可編程邏輯器件中實現。它不受溫度的影響, 既可保持高分辨率, 又可降低對電路精度和穩定度的要求,并減少元
    發表于 04-16 08:51 ?11次下載

    在測控系統中用IP核實現D/A轉換

    采用數字化技術, 在測控系統中用IP 核實現D/A 轉換,并且在1 片可編程邏輯器件中實現。它不受溫度的影響, 既可保持高分辨率, 又可降低對電路精度和穩定度的要求, 并減少元
    發表于 05-15 15:09 ?12次下載

    在測控系統中用IP核實現D/A轉換

    摘要:采用數字化技術、在測控系統中用IP核實現D/A轉換,并且在1片可編程邏輯器件中實現。它不受溫度的影響,既可保持高分辨率,又可降低對電路精度和穩
    發表于 06-20 15:04 ?1067次閱讀
    在測控系統中用<b class='flag-5'>IP</b><b class='flag-5'>核實現</b>D/A轉換

    基于vivadofir ip核的重采樣設計與實現

    本文基于xilinx 的IP核設計,源于音頻下采樣這一需求。 創建vivado工程 1. 首先打開vivado,創建一個新的project(勾選create project subdirectory
    發表于 02-08 02:25 ?5148次閱讀
    基于<b class='flag-5'>vivado</b>的<b class='flag-5'>fir</b> <b class='flag-5'>ip</b>核的重采樣設計與<b class='flag-5'>實現</b>

    FIR濾波器的FPGA設計與實現

    ,結合MATLAB軟件提供的專用數字濾波器設計工具包FDATOOL,以及QuartusⅡ軟件提供的FIR核實現快速、便捷的設計FIR濾波器的幾個具體實驗,得出結論證實了熟練使用FDATOOL工具和
    發表于 12-21 14:53 ?14次下載
    <b class='flag-5'>FIR</b>濾波器的FPGA設計與<b class='flag-5'>實現</b>

    FPGA實現基于Vivado的BRAM IP核的使用

    ? Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP核,比如數學類的IP核,數字信號處理使用的IP核,以及存儲類的IP核,本篇文章主要介紹BRAM ?
    的頭像 發表于 12-29 15:59 ?1.2w次閱讀

    Vivado中構建自定義AXI4-Stream FIR濾波器IP 3

    AMD-Xilinx 的 Vivado 開發工具具有很多方便FPGA開發功能,我最喜歡的功能之一是block design的設計流程。Vivado 中的block design是使用RTL IP形式
    發表于 02-10 14:51 ?1535次閱讀
    在<b class='flag-5'>Vivado</b>中構建自定義AXI4-Stream <b class='flag-5'>FIR</b>濾波器<b class='flag-5'>IP</b> 3

    FPGA實現基于Vivado的BRAM IP核的使用

    文章是基于Vivado的 2017.1的版本,其他版本都大同小異。 首先在Vivado界面的右側選擇IP Catalog 選項。
    的頭像 發表于 12-05 15:05 ?2076次閱讀
    主站蜘蛛池模板: 日韩精品一级a毛片 | 人人公开免费超级碰碰碰视频 | 亚洲一区在线播放 | 六九视频在线观看 | 免费一级特黄特色大片 | 综合爱爱 | 日本黄色网页 | 午夜香港三级在线观看网 | 欧美人与动欧交视频 | 久久久久久99 | 欧美亚洲网站 | 狠狠色丁香久久婷婷综合丁香 | 欧美成人天天综合在线视色 | 日本aaaaa| 狠狠色丁香六月色 | 欧美奇米 | 婷婷六月天激情 | 天天cao在线 | www.天天操.com | 亚洲第一福利网站 | 日韩成人免费观看 | 色777777女人色 | 高清视频在线播放 | 一级黄色片在线看 | 女69女人poren25 | 日本大片在线看 | 日本色图在线 | 美女扒开腿让男生桶爽网站 | 国产精品资源在线观看 | 日本xx69| 日韩毛片免费视频一级特黄 | 五月婷婷六月丁香激情 | 中文字幕在线一区二区三区 | 亚洲成a人片在线观看www | 天天爽爽 | 濑亚美莉vs黑人欧美视频 | 四虎影视免费观看 | 国产午夜不卡在线观看视频666 | 久久久久国产精品免费网站 | 天堂在线视频精品 | 国产色妞妞在线观看 |