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

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

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

3天內不再提示

基于FPGA的橫向FIR濾波器設計詳解

FPGA之家 ? 來源:YXQ ? 2019-07-08 08:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

關于FIR濾波器的設計,大多數文獻和資料都偏向于理論的介紹與闡述,使讀者在學習完這類文獻后只是明白了如何解決例題與習題,真正的動手設計FIR濾波器依然會覺得抽象很陌生,本文則是在理論的基礎上詳細闡述了如何基于Verilog HDL搭建的數字電路,來完成來完成FIR橫向濾波器的設計。

橫向FIR濾波器的設計

設經過AD采集得到的輸入序列為x(n),其通過單位沖激響應為h(n)的因果FIR濾波器后,輸出y(n)在時域可表示為線性卷積和的形式:

其中N-1為FIR濾波器階數(也稱抽頭數),可以明顯的看出h(n)是長度為抽頭數加一的有限長序列,不失一般性的設抽頭數為3的FIR單位沖激響應h(n)為,

依卷積和畫出信號流程圖如下,

我們必須明確這里的自變量n表示的并非是連續時間,而是第N次AD采樣。

首先根據流程圖所示,我們需要設計一個關于x(n)的移位電路,其RTL視圖如下,

如圖所示的x(n)的移位功能在Verilog中可以通過如下代碼實現,注意clk是與數據同步的AD的采樣率時鐘(AD當前數據建立后,采用一個脈沖標志可實現)。

input clk;input signed[8:0] x_in;output reg signed [8:0] xn;output reg signed [8:0] xn_1;output reg signed [8:0] xn_2;output reg signed [8:0] xn_3;always@(posedge clk)	begin		xn   <= x_in;	//x(n)		xn_1 <= xn;	//x(n-1)		xn_2 <= xn_1;	//x(n-2)		xn_3 <= xn_2;	//x(n-3)	end

其次,為了設計方便,需要將浮點數轉換為定點運算,注意,N位的數據完成N*N乘法后,其結果的長度為2N位,為了配合乘法運算,我們需要采用18位補碼表示有符號數據(MSB為符號位),并對浮點數進行8位的量化處理(乘以256轉換為定點數運算,運算結果除以256可得到相應的浮點數),那么上述的系統的沖激響應h(n)可表示為(這里不可避免的引入了量化誤差),

對應的18位補碼有符號十進制數為,

電路RTL視圖如下,

如圖所示的x(n)移位后對應的乘法功能在Verilog中可以通過如下代碼實現。

input clk;input signed[8:0] x_in;output signed [17:0] mult0;output signed [17:0] mult1;output signed [17:0] mult2;output signed [17:0] mult3;reg signed [8:0] xn;reg signed [8:0] xn_1;reg signed [8:0] xn_2;reg signed [8:0] xn_3;always@(posedge clk)	begin		xn   <= x_in;		//x(n)		xn_1 <= xn;		//x(n-1)		xn_2 <= xn_1;		//x(n-2)		xn_3 <= xn_2;		//x(n-3)		endassign mult0 = xn * 18'd162;	//x(n)  *h(0)assign mult1 = xn_1 * 18'd134;	//x(n-1)*h(1)assign mult2 = xn_2 * 18'd218;	//x(n-2)*h(2)assign mult3 = xn_3 * 18'd262062;//x(n-3)*h(3)

最后,采用一級加法電路完成整個求卷積和的過程,需要注意的是,有符號的加法操作,需要對符合位進行保護,完成加法后數據的長度應設為2*N+log2(Tap+1)-1(其中Tap表示抽頭數),則本文需要的加法寄存器的長度為為19位(2*9+log(4)-1),并且取其高11位作為y(n)輸出(該操作等于除以256)其電路RTL視圖如下,

該結構的總體Verilog代碼如下。

module fir(	input clk,	input signed[8:0] x_in,	output signed [10:0] y_out);reg signed [8:0] xn;reg signed [8:0] xn_1;reg signed [8:0] xn_2;reg signed [8:0] xn_3;wire signed [17:0] mult0;wire signed [17:0] mult1;wire signed [17:0] mult2;wire signed [17:0] mult3;wire signed [18:0] adder0;always@(posedge clk)	begin		xn   <= x_in;		//x(n)		xn_1 <= xn;			//x(n-1)		xn_2 <= xn_1;		//x(n-2)		xn_3 <= xn_2;		//x(n-3)		endassign mult0 = xn * 18'd162;		//x(n)  *h(0)assign mult1 = xn_1 * 18'd134;	//x(n-1)*h(1)assign mult2 = xn_2 * 18'd218;	//x(n-2)*h(2)assign mult3 = xn_3 * 18'd262062;//x(n-3)*h(3)	assign adder0 = mult0 + mult1 + mult2 + mult3; //adder0(n)=x(n)*h(0)+x(n-1)*h(1)+x(n-2)*h(2)+x(n-3)*h(3)assign y_out = adder0[18:8];	//y(n)=adder0(n)/256endmodule

基于ModelSim求系統沖激響應與矩形脈沖響應

列寫testbench如下,

`timescale 1ns/1ns`define ad_clk 20module fir_tb;	reg						clk;	reg signed[8:0] 		x_in;	wire signed [10:0] 	y_out;		fir fir(		.clk(clk),		.x_in(x_in),		.y_out(y_out)	);	initial clk = 1;	always#(`ad_clk/2) clk = ~clk;		initial		begin			x_in = 9'd0;			#(`ad_clk*20);			#3;			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd0;			#(`ad_clk*20);			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd100;			#(`ad_clk);			x_in = 9'd0;			#(`ad_clk*20);				$stop;			endendmodule

仿真求得對應的響應為

顯然,當輸入為x(n)=100δ(n)時,輸出為y(n)=100h(n)(存在著量化誤差),輸入為x(n)=100[u(n)-u(n-5)]時,輸出y(n)=[63δ(n) 115δ(n-1) 200δ(n-2) 168δ(n-3) 168δ(n-4) 105δ(n-5) 53δ(n-6) -33δ(n-7)]。

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

    關注

    1660

    文章

    22408

    瀏覽量

    636203
  • fir濾波器
    +關注

    關注

    1

    文章

    97

    瀏覽量

    19697

原文標題:基于FPGA的橫向FIR濾波器設計詳解——Bryan

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    5.5 GHz 帶通濾波器:高頻陶瓷解決方案詳解

    5.5 GHz 帶通濾波器:高頻陶瓷解決方案詳解 在高頻電路設計中,濾波器是至關重要的元件,它能夠精確篩選出特定頻率范圍內的信號,抑制其他頻率的干擾。今天,我們就來詳細探討一款 5.5 GHz
    的頭像 發表于 01-20 16:20 ?138次閱讀

    MAX293八階低通橢圓開關電容濾波器詳解

    MAX293/MAX294/MAX297:八階低通橢圓開關電容濾波器詳解 在電子電路設計中,濾波器的選擇至關重要,它直接影響著信號處理的質量和效果。今天我們要詳細探討的是MAXIM公司的三款八階低
    的頭像 發表于 01-20 11:00 ?300次閱讀

    通信設備濾波器選型指南:Murata多層LC濾波器詳解

    通信設備濾波器選型指南:Murata多層LC濾波器詳解 在通信設備的設計中,濾波器是至關重要的組件,它能有效過濾掉不需要的信號,確保設備的正常運行。今天,我們就來詳細了解一下村田(Mu
    的頭像 發表于 01-05 17:20 ?658次閱讀

    低通無鉛薄膜RF/微波濾波器LP0603系列:設計與測試詳解

    低通無鉛薄膜RF/微波濾波器LP0603系列:設計與測試詳解 在當今的電子設備中,射頻(RF)和微波濾波器是至關重要的組件,它們能夠有效地篩選信號頻率,保證系統性能。今天,我們就來深入探討AVX
    的頭像 發表于 12-31 16:05 ?306次閱讀

    詳解WE - BPF多層芯片帶通濾波器:從參數到使用注意事項

    詳解WE - BPF多層芯片帶通濾波器:從參數到使用注意事項 在電子產品的設計中,濾波器是一個至關重要的組件,它能夠幫助我們精確地篩選出所需頻率的信號,抑制不需要的干擾。今天,我們就來詳細了解一下W
    的頭像 發表于 12-29 15:55 ?280次閱讀

    信號處理:指數移動平均 (EMA) 濾波器

    作者: Mustahsin Zarif 之前我們在《信號處理簡介》一文中已經見過了兩類濾波器:有限脈沖響應 (FIR) 濾波器和無限脈沖響應 (IIR) 濾波器。我們看到了移動平均
    的頭像 發表于 10-04 18:35 ?1933次閱讀
    信號處理:指數移動平均 (EMA) <b class='flag-5'>濾波器</b>

    有源濾波器與無源濾波器的區別

    濾波器是根據電路參數對電路頻帶寬度的影響而設計出來的工程應用電路,濾波器種類很多,有源濾波器和無源濾波器的區別我們最簡單的分別辦法是看看是否需要電源,在作用上最大的區別在于有源
    的頭像 發表于 06-18 09:03 ?1836次閱讀

    GNSS 低噪聲放大器前端模塊,集成前濾波器和后濾波器 skyworksinc

    電子發燒友網為你提供()GNSS 低噪聲放大器前端模塊,集成前濾波器和后濾波器相關產品參數、數據手冊,更有GNSS 低噪聲放大器前端模塊,集成前濾波器和后濾波器的引腳圖、接線圖、封裝手
    發表于 06-06 18:34
    GNSS 低噪聲放大器前端模塊,集成前<b class='flag-5'>濾波器</b>和后<b class='flag-5'>濾波器</b> skyworksinc

    Sky5? 低電流 GNSS LNA 前端模塊,集成前置濾波器和后置濾波器 skyworksinc

    電子發燒友網為你提供()Sky5? 低電流 GNSS LNA 前端模塊,集成前置濾波器和后置濾波器相關產品參數、數據手冊,更有Sky5? 低電流 GNSS LNA 前端模塊,集成前置濾波器和后置
    發表于 05-14 18:31
    Sky5? 低電流 GNSS LNA 前端模塊,集成前置<b class='flag-5'>濾波器</b>和后置<b class='flag-5'>濾波器</b> skyworksinc

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

    第一部分 設計概述 1.1 設計目的 本次設計包括基于FPGA的任意波形發生設計實現和基于FPGA的低通濾波器設計實現。 波形發生是一種
    發表于 05-07 15:34

    進群免費領FPGA學習資料!數字信號處理、傅里葉變換與FPGA開發等

    ~ 01、數字信號處理的FPGA實現 旨在講解前端數字信號處理算法的高效實現。首先概述了當前的FPGA技術、器件以及用于設計最先進DSP系統的工具。闡述了計算機算法的概念、理論、FIR和IIR
    發表于 04-07 16:41

    深入解讀智多晶FIR IP

    在數字信號處理領域,FIR 濾波器憑借其穩定性強、線性相位等優勢,被廣泛應用于各類信號處理場景。今天,就帶大家深入解讀西安智多晶微電子有限公司推出的FIR IP。
    的頭像 發表于 03-20 17:08 ?1180次閱讀
    深入解讀智多晶<b class='flag-5'>FIR</b> IP

    高帶通TSIF集成濾波器

    低通濾波器 高通濾波器 帶通濾波器 帶阻濾波器 全通濾波器 濾波器類型 作用 頻率特性 應用場景
    的頭像 發表于 03-20 15:42 ?956次閱讀
    高帶通TSIF集成<b class='flag-5'>濾波器</b>

    基于FPGAFIR數字濾波器設計

    在現代通信信號處理領域中,隨著各種精密計算和快速計算的發展對信號處理的實時性、快速性的要求越來越高。以往的模擬濾波器無法克服電壓漂移、溫度漂移和噪聲等問題,從而帶來了許多誤差和不穩定因素。而數字濾波器具有穩定性高、精度高、設計靈活、實現方便等突出優點。
    的頭像 發表于 03-06 12:31 ?2025次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>FIR</b>數字<b class='flag-5'>濾波器</b>設計