91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用matlab產(chǎn)生待濾波信號并編寫testbench進(jìn)行仿真分析

Hx ? 來源:CSDN技術(shù)社區(qū) ? 作者:DengFengLai123 ? 2021-04-27 18:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本講使用matlab產(chǎn)生待濾波信號,并編寫testbench進(jìn)行仿真分析,在Vivado中調(diào)用FIR濾波器的IP核進(jìn)行濾波測試,下一講使用兩個DDS產(chǎn)生待濾波的信號,第五講或第六講開始編寫verilog代碼設(shè)計FIR濾波器,不再調(diào)用IP核。

本例使用上一講的FIR濾波器IP核工程。

matlab與FPGA數(shù)字濾波器設(shè)計(2)——Vivado調(diào)用IP核設(shè)計FIR濾波器

matlab與FPGA數(shù)字濾波器設(shè)計(1)——通過matlab的fdatool工具箱設(shè)計FIR數(shù)字濾波器

100063647-127709-tu_1.png

1. 新建仿真文件

(1) Simulation Sources -》 sim_1 -》右鍵 Add Sources;

(2) Add or Create Simulation Sources,新建仿真文件 fir_ip_tb;

100063647-127710-tu_2.png

2. 編寫testbench

(1) 例化加入的IP核,其中:

輸入時鐘引腳為 clk,設(shè)置為32MHz(此處暫時還未設(shè)定頻率);

輸入數(shù)據(jù)引腳為data_in,位寬16-bit,表示待濾波數(shù)據(jù);

輸出數(shù)據(jù)引腳為data_out,位寬40-bit,表示濾波后的數(shù)據(jù);

輸出數(shù)據(jù)有效信號引腳data_out_valid,位寬1-bit,輸出狀態(tài),為高電平時表示輸出的data_out有效;

輸入數(shù)據(jù)準(zhǔn)備好信號引腳data_in_ready,位寬1-bit,輸出狀態(tài),為高電平時表示準(zhǔn)備好接收輸入數(shù)據(jù);

輸入有效信號S_AXIS_DATA_0_tvalid,為1時表示輸入信號有效,為0時即使有輸入信號data_in到 fir 的 ip 核 ,ip 核也不做處理,此處直接讓其恒為1,輸入數(shù)據(jù)恒有效;

總結(jié),需要給ip核輸入的數(shù)據(jù)目前只有兩個,一個是時鐘,一個是待濾波數(shù)據(jù)。

100063647-127711-tu_3.png

(2) 產(chǎn)生32MHz時鐘信號;

初始 initial 時設(shè)置時鐘信號clk為低電平0,always 表示一直執(zhí)行,#16表示每隔16 ns(單位是在仿真文件開頭自動有定義ns)時鐘取反一次,即每隔 16ns 時鐘 0/1間隔變化,相當(dāng)于32ns一個時鐘周期,約等于32MHz;

100063647-127712-tu_4.png

3. 產(chǎn)生待濾波數(shù)據(jù)data_in

(1) 編寫matlab程序,產(chǎn)生兩個信號0.5MHz和5MHz,采樣頻率32MHz,采樣5個周期,進(jìn)行16-bit量化,并把量化后的數(shù)據(jù)寫到 .txt 文件中;

100063647-127713-tu_5.png

可以看到,在 0.5MHz 和 5MHz處有兩個峰,表示抽樣后的兩個信號,經(jīng)過濾波器之后,5MHz 信號被濾除,只剩下 0.5MHz 信號,藍(lán)色框內(nèi)可以看到,在 3MHz 以后濾波器的響應(yīng)已經(jīng)低于 -80dB,相當(dāng)于濾波后的幅度是濾波前的1/10000,濾波效果很好。

100063647-127714-tu_6.png

使用 32MHz 的采樣時鐘采樣 0.5MHz 待濾波信號(相當(dāng)于0.5MHz信號疊加了5MHz噪聲),每個周期采樣 64 個點(diǎn),在testbench中讀取一個周期的64個點(diǎn),重復(fù)30個周期得到30個周期的輸入待濾波信號給FIR濾波器;

100063647-127715-tu_7.png

4. 仿真結(jié)果分析

點(diǎn)擊1處開始仿真,Vivado中一般默認(rèn)只會仿真1us,這時候只看到了初始化的一部分,是看不到后續(xù)結(jié)果的,點(diǎn)擊2處進(jìn)行仿真,會將所有的仿真步驟完成,執(zhí)行到上圖中第64行的 $stop 語句停止仿真;

100063647-127716-tu_8.png

5. 仿真結(jié)果分析

(1) data_out_valid:初始為0,在1.872 ns跳變?yōu)?,輸出數(shù)據(jù)開始有效,在為0的那段時間輸出數(shù)據(jù)data_out無效,這段時間內(nèi)是FIR的IP核進(jìn)行一些內(nèi)部的配置和初始化;

100063647-127717-tu_9.png

(2) 更改數(shù)據(jù)表示模式

對data_in,右鍵設(shè)置其數(shù)據(jù)格式Radix為有符號的十進(jìn)制數(shù)(Signed Decimal),設(shè)置其波形為模擬波形(Analog);

對 data_out 同樣設(shè)置;

對 Pattern 設(shè)置 無符號十進(jìn)制,不需要設(shè)置波形。

100063647-127718-tu_10.png

(3) 點(diǎn)擊放大縮小可以查看整個仿真的效果

通過下面幾圖,可以看到仿真效果很好,5MHz高頻噪聲濾除干凈,肉眼觀察不出來。

100063647-127719-tu_11.png

100063647-127720-tu_12.png

100063647-127721-tu_13.png

(4) Matlab數(shù)據(jù)分析

肉眼觀察時域的仿真圖無法得知高頻噪聲具體被濾掉了多少,是否還混有噪聲,此時需要將濾波后的數(shù)據(jù)按照前文讀取仿真數(shù)據(jù)的方式,將仿真得到的濾波后的數(shù)據(jù)寫入.txt文件,再通過 matlab 讀取 FPGA 濾波后的數(shù)據(jù)并進(jìn)行FFT 頻譜分析,通過頻域的波形來觀察濾波效果,通過 matlab 仿真,可以看到高頻信號的確被濾除。

100063647-127722-tu_14.png

100063647-127723-tu_15.png

下一講使用兩個 DDS 產(chǎn)生待濾波的信號,結(jié)合FIR濾波器搭建一個信號產(chǎn)生及濾波的系統(tǒng),并編寫testbench進(jìn)行仿真分析。
編輯:lyn

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • matlab
    +關(guān)注

    關(guān)注

    189

    文章

    3025

    瀏覽量

    238684
  • 仿真
    +關(guān)注

    關(guān)注

    54

    文章

    4480

    瀏覽量

    138213
  • fir濾波器
    +關(guān)注

    關(guān)注

    1

    文章

    97

    瀏覽量

    19697
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    857

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用MATLAB和Simulink進(jìn)行信號完整性分析

    信號完整性是保持高速數(shù)字信號的質(zhì)量的過程。信號完整性是衡量電信號從源傳輸?shù)侥繕?biāo)位置時的質(zhì)量的關(guān)鍵度量。在高速數(shù)字和模擬電子中,確保信號的預(yù)期
    的頭像 發(fā)表于 01-23 13:57 ?7198次閱讀
    使用<b class='flag-5'>MATLAB</b>和Simulink<b class='flag-5'>進(jìn)行</b><b class='flag-5'>信號</b>完整性<b class='flag-5'>分析</b>

    求助,關(guān)于testbench仿真的問題求解

    我用c 寫了一段加密算法,其中包含了S盒替換表和密鑰等參數(shù),現(xiàn)在想用vcs和testbench仿真這個程序,c 編譯成機(jī)器碼后怎么區(qū)分哪段數(shù)據(jù)是寫入ITCM哪段是寫入DTCM的,又應(yīng)該怎么寫入DTCM
    發(fā)表于 11-05 08:56

    語法糾錯和testbench的自動生成

    編寫Verilog代碼時,我一般都是先在編輯器上寫完,因?yàn)榫庉嬈鱲scode或者notepad++可以提供語法高亮和自動補(bǔ)全等功能,然后用仿真器跑仿真,但是在編寫過程中不可避免的會有
    發(fā)表于 10-27 07:07

    基于Matlab與FPGA的雙邊濾波算法實(shí)現(xiàn)

    前面發(fā)過中值、均值、高斯濾波的文章,這些只考慮了位置,并沒有考慮相似度。那么雙邊濾波來了,既考慮了位置,有考慮了相似度,對邊緣的保持比前幾個好很多,當(dāng)然實(shí)現(xiàn)上也是復(fù)雜很多。本文將從原理入手,采用Matlab與FPGA設(shè)計實(shí)現(xiàn)雙邊
    的頭像 發(fā)表于 07-10 11:28 ?4557次閱讀
    基于<b class='flag-5'>Matlab</b>與FPGA的雙邊<b class='flag-5'>濾波</b>算法實(shí)現(xiàn)

    無刷直流電機(jī)控制系統(tǒng)的建模仿真分析

    摘要:分析了BLDCM的數(shù)學(xué)模型,運(yùn)用MATLAB仿真軟件搭建了無刷直流電機(jī)控制系統(tǒng)的仿真模型。本系統(tǒng)采用了速度PID控制、電流遲滯控制的雙閉環(huán)控制方案,電流遲滯控制是為了更方便地跟蹤
    發(fā)表于 06-27 16:52

    羅德與施瓦茨方案:D波段射頻寬帶信號產(chǎn)生分析

    R&S D波段寬帶信號產(chǎn)生分析方案,是市面上最為緊湊及易用的解決方案,信號源可直接對上變頻器進(jìn)行參數(shù)設(shè)定,頻譜與
    的頭像 發(fā)表于 06-16 14:46 ?1710次閱讀
    羅德與施瓦茨方案:D波段射頻寬帶<b class='flag-5'>信號</b><b class='flag-5'>產(chǎn)生</b>與<b class='flag-5'>分析</b>

    嵌入式直驅(qū)力矩電機(jī)設(shè)計及其系統(tǒng)仿真分析

    和基于 Matlab/Simulink 的雙閉環(huán)電機(jī)調(diào)速系統(tǒng)仿真模型,對力矩電機(jī)系統(tǒng)進(jìn)行仿真分析,兩者仿
    發(fā)表于 06-11 15:11

    利用MATLAB對交流電機(jī)調(diào)速系統(tǒng)進(jìn)行建模和仿真

    技術(shù)是借助計算機(jī)及相關(guān)技術(shù),對真實(shí)系統(tǒng)的運(yùn)行過程和狀態(tài)進(jìn)行數(shù)字化模擬的技術(shù)。Simulink作為MATLAB的一個組件,能夠?qū)崿F(xiàn)對動態(tài)系統(tǒng)的建模、仿真和綜合分析。本文在Simulink
    發(fā)表于 06-06 14:31

    基于 FPGA 的任意波形發(fā)生器+低通濾波器系統(tǒng)設(shè)計

    濾波信號,兩個正弦波的頻率分別是200Hz、800Hz。用MATLAB產(chǎn)生頻率為500Hz的低通濾波
    發(fā)表于 05-07 15:34

    testbench中如何使用阻塞賦值和非阻塞賦值

    本文詳細(xì)闡述了在一個testbench中,應(yīng)該如何使用阻塞賦值與非阻塞賦值。首先說結(jié)論,建議在testbench中,對時鐘信號(包括分頻時鐘)使用阻塞賦值,對其他同步信號使用非阻塞賦值
    的頭像 發(fā)表于 04-15 09:34 ?1205次閱讀
    在<b class='flag-5'>testbench</b>中如何使用阻塞賦值和非阻塞賦值

    怎么利用matlab得到95%,80%和70%的置信區(qū)間,生成不同區(qū)間下的功率誤差貝塔分布?

    matlab仿真 matlab新手,怎么利用matlab得到95%,80%和70%的置信區(qū)間,生成不同區(qū)間下的功率誤差貝塔分布
    發(fā)表于 04-09 01:21

    進(jìn)群免費(fèi)領(lǐng)FPGA學(xué)習(xí)資料!數(shù)字信號處理、傅里葉變換與FPGA開發(fā)等

    的基礎(chǔ)知識,講述了確定性數(shù)字信號處理的知識,包括離散時間信號及系統(tǒng)的介紹、z變換、傅里葉變換、頻率分析以及濾波器設(shè)計等。介紹了隨機(jī)數(shù)字信號
    發(fā)表于 04-07 16:41

    如何用FOC電機(jī)控制MATLAB仿真

    )、電機(jī)與控制模塊(藍(lán)色方框)、控制信號給定模塊(黃色方框)、信號分路與顯示模塊(綠色方框)。整體結(jié)構(gòu)及功能介紹 用MATLAB2013以上版本打開文件,看到如圖1所示界面:可以看到仿真
    發(fā)表于 03-28 14:51

    MATLAB仿真在直流電機(jī)雙閉環(huán)調(diào)速系統(tǒng)中的應(yīng)用

    分析了直流調(diào)速系統(tǒng)原理的基礎(chǔ)上,在MATLAB/SIMULINK 仿真環(huán)境下對轉(zhuǎn)速、電流雙閉環(huán)調(diào)速系統(tǒng)建模并進(jìn)行仿真
    發(fā)表于 03-20 13:03

    使用AFG31000系列信號發(fā)生器精準(zhǔn)復(fù)制真實(shí)場景信號

    中的核心工具。本文將詳細(xì)介紹如何利用該系列信號發(fā)生器復(fù)制復(fù)雜場景信號,探討其在不同領(lǐng)域的應(yīng)用與優(yōu)化技巧。 ? 一、信號特性分析:復(fù)制真實(shí)
    的頭像 發(fā)表于 03-20 11:45 ?764次閱讀
    使用AFG31000系列<b class='flag-5'>信號</b>發(fā)生器精準(zhǔn)復(fù)制真實(shí)場景<b class='flag-5'>信號</b>