国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

這篇具有很好參考價(jià)值的文章主要介紹了數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

本文介紹了設(shè)計(jì)濾波器的FPGA實(shí)現(xiàn)步驟,并結(jié)合杜勇老師的書籍中的并行FIR濾波器部分進(jìn)行一步步實(shí)現(xiàn)硬件設(shè)計(jì),對書中的架構(gòu)做了復(fù)現(xiàn)以及解讀,并進(jìn)行了仿真驗(yàn)證。

并行FIR濾波器FPGA實(shí)現(xiàn)

FIR濾波器的結(jié)構(gòu)形式時(shí),介紹了直接型、級聯(lián)型、頻率取樣型和快速卷積型4種。在FPGA實(shí)現(xiàn)時(shí),最常用的是最簡單的直接型結(jié)構(gòu)。FPGA實(shí)現(xiàn)直接型結(jié)構(gòu)的FIR濾波器,可以采用串行結(jié)構(gòu)、并行結(jié)構(gòu)等不同中的結(jié)構(gòu)設(shè)計(jì),上文根據(jù)書中提供的架構(gòu)完成了串行 FIR濾波器的實(shí)現(xiàn),本文沿用上文的基本代碼結(jié)構(gòu),按照并行FIR濾波器的架構(gòu)完成電路描述。

FIR濾波器需求

設(shè)計(jì)一個(gè)15階(長度為16)的低通線性相位FIR濾波器,采用窗函數(shù)設(shè)計(jì),截止頻率為500 Hz,采樣頻率為2 000 Hz;采用FPGA實(shí)現(xiàn)并行結(jié)構(gòu)的濾波器,系數(shù)的量化位數(shù)為12比特,輸入數(shù)據(jù)位寬為12比特,輸出數(shù)據(jù)位寬為29比特,系統(tǒng)時(shí)鐘為16 kHz。

濾波器系數(shù)確定與量化

確定濾波器的結(jié)構(gòu)后,就根據(jù)濾波器進(jìn)行設(shè)計(jì)代碼仿真,這里引用書中的仿真設(shè)計(jì),并將濾波器參數(shù)系數(shù)量化。確定濾波器系數(shù)的方法有很多,可以使用MATLAB中豐富的函數(shù)實(shí)現(xiàn),或者使用相關(guān)濾波器設(shè)計(jì)的軟件工具,定制滿足當(dāng)前需求的窗函數(shù)的濾波器系數(shù)。具體量化系數(shù)確定可參考上文《數(shù)字信號(hào)處理-09-串行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)》中的相關(guān)內(nèi)容,或者參考杜勇老師的書中的內(nèi)容。

硬件架構(gòu)

下圖為杜勇老師的《數(shù)字濾波器的MATLAB與FPGA實(shí)現(xiàn)》實(shí)現(xiàn)的并行FIR濾波器的結(jié)構(gòu)圖。因?yàn)镕IR濾波器參數(shù)對稱,所以同時(shí)計(jì)算相應(yīng)的對稱結(jié)構(gòu)的值,將對稱系數(shù)的X(n)相加后,可調(diào)用8個(gè)乘法器,完成對濾波器的乘法運(yùn)算,所以針對并行濾波器的架構(gòu)數(shù)據(jù)的輸入速率和時(shí)鐘可以相同,每一個(gè)時(shí)鐘周期流水輸出一個(gè)濾波后的信號(hào)值。圖中的8輸入的加法器,可以替換成N/2;這樣就得到了一個(gè)通用化的并行FIR濾波器結(jié)構(gòu)圖。

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

并行實(shí)現(xiàn)FIR濾波器,雖然浪費(fèi)了加法器和乘法器的資源,但是提升了整個(gè)濾波器實(shí)現(xiàn)的性能,當(dāng)濾波器的系數(shù)長度N增大時(shí),數(shù)據(jù)的吞吐速率不變(暫且不考慮面積增大對性能的影響),但帶來的壞處就是會(huì)用掉相應(yīng)倍數(shù)的邏輯資源和運(yùn)算資源,速度和面積本來就是魚和熊掌的關(guān)系,在實(shí)際應(yīng)用中應(yīng)當(dāng)做相應(yīng)的權(quán)衡和割舍。

根據(jù)架構(gòu)描述電路

根據(jù)杜勇老師書中提供的架構(gòu),對電路進(jìn)行描述,同樣沿用了前文的通用化的模板,后期可根據(jù)參數(shù)輸入來適配不同濾波器長度的設(shè)計(jì)。

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

接口描述如下:

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

參數(shù)描述如下:

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

代碼如下:

`timescale 1ns / 1ps
module Fir_Parallel(

        input clk,//!系統(tǒng)時(shí)鐘
        input rst,//!復(fù)位信號(hào)
        input signed [SIGN_IN_WIDTH-1:0] signal_in,//!信號(hào)輸入
        output signed [SIGN_OUT_WIDTH-1:0] signal_out//!信號(hào)輸出,信號(hào)輸出速度和輸入速度相同
    );

    //
    parameter  integer SIGN_IN_WIDTH    = 12   ;//!信號(hào)輸入位寬
    parameter  integer SIGN_OUT_WIDTH	= 29   ;//!信號(hào)輸出位寬
    parameter  integer FIR_COE_WIDTH	= 12   ;//!濾波器系數(shù)位寬
    parameter  integer FIR_COE_NUM	= 16   ;//!濾波器長度
    localparam integer FIR_WIDTH_DIV_2	= FIR_COE_NUM/2 ;

    function [FIR_COE_WIDTH-1:0] coe_data;
    input [FIR_WIDTH_DIV_2-1:0] index;
    begin
        case(index)
        'd0:coe_data='h000;
        'd1:coe_data='hffd;
        'd2:coe_data='h00f;
        'd3:coe_data='h02e;
        'd4:coe_data='hf8b;
        'd5:coe_data='hef9;
        'd6:coe_data='h24e;
        'd7:coe_data='h7ff;
        endcase
    end
    endfunction
    integer i;
    genvar j;
    //!濾波器系數(shù)加載
    wire signed [FIR_COE_WIDTH-1:0] coe[FIR_WIDTH_DIV_2-1:0]; 
    generate
        for (j=0; j<FIR_WIDTH_DIV_2; j=j+1)
            assign coe[j] = coe_data(j);
    endgenerate
        
    //!寄存輸入信號(hào)
    reg [SIGN_IN_WIDTH-1:0] Sign_in_Reg[FIR_COE_NUM-1:0];
    //將數(shù)據(jù)存入移位寄存器sign_in_Reg中
   
    always @(posedge clk)begin
        if (rst=='b1)begin
            //初始化寄存器值為0
            for (i=0; i<FIR_COE_NUM; i=i+1)
                Sign_in_Reg[i]=12'd0;
        end
        else begin
            for (i=0; i<FIR_COE_NUM-1; i=i+1)
                Sign_in_Reg[i+1] <= Sign_in_Reg[i];
            Sign_in_Reg[0] <= signal_in;
        end
    end
    reg signed [SIGN_IN_WIDTH:0] add_sum[FIR_WIDTH_DIV_2-1:0];
    //為了保證加法運(yùn)算不溢出,輸入輸出數(shù)據(jù)均擴(kuò)展為SIGN_IN_WIDTH+1比特。
    //對稱結(jié)構(gòu)只需要計(jì)算FIR_WIDTH_DIV_2次
    //一級流水
    always @(posedge clk) begin
        if (rst=='b1)begin
            for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
                add_sum[i]<= 'd0;
		end
		else begin
            for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
                add_sum[i]<= {Sign_in_Reg[i][SIGN_IN_WIDTH-1],Sign_in_Reg[i]} + 
                             {Sign_in_Reg[FIR_COE_NUM-1-i][SIGN_IN_WIDTH-1],Sign_in_Reg[FIR_COE_NUM-1-i]};
        end
    end
    
    (*use_dsp48="yes"*) reg signed [SIGN_IN_WIDTH+FIR_COE_WIDTH:0] mult_out[FIR_WIDTH_DIV_2-1:0];
    always @(posedge clk ) begin
        if (rst=='b1)begin
            for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
                mult_out[i]<= 'd0;
        end
        else begin
            for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
                mult_out[i] <= add_sum[i] * coe[i];
        end
    end
   
    assign signal_out = sign_out;
    reg signed [SIGN_OUT_WIDTH-1:0] sum;
    reg signed [SIGN_OUT_WIDTH-1:0] sign_out;

	always @(posedge clk)begin
        if (rst)begin 
				sum <= 'd0; 
				sign_out <= 'd0;
		end
		else begin
            sign_out <= sum;
            // sum = 'd0;
			// for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
            // sum =   sum + mult_out[i];
            sum <=  mult_out[0] + mult_out[1] + mult_out[2] + mult_out[3] +
                    mult_out[4] + mult_out[5] + mult_out[6] + mult_out[7];
        end
    end
endmodule

代碼解讀

關(guān)于加載濾波器系數(shù)的部分,我這里使用了function做了包裝,以便于后續(xù)修改濾波器長度時(shí),可以通過腳本生成function去增加濾波器系數(shù)的長度。

function [FIR_COE_WIDTH-1:0] coe_data;
    input [FIR_WIDTH_DIV_2-1:0] index;
    begin
        case(index)
        'd0:coe_data='h000;
        'd1:coe_data='hffd;
        'd2:coe_data='h00f;
        'd3:coe_data='h02e;
        'd4:coe_data='hf8b;
        'd5:coe_data='hef9;
        'd6:coe_data='h24e;
        'd7:coe_data='h7ff;
        endcase
    end
    endfunction

針對乘法運(yùn)算,這里沒有使用IP,但是為了使得該部分運(yùn)算使用DSP資源,更好地提升性能,因此該信號(hào)的運(yùn)算使用dsp48資源,所以在信號(hào)聲明時(shí)前面加了(*use_dsp48="yes"*)。

關(guān)于杜勇老師書中寫的信號(hào)與系數(shù)相乘后的結(jié)果針對sum信號(hào)使用了阻塞賦值的部分,個(gè)人覺得這個(gè)在時(shí)序邏輯中是不太好的設(shè)計(jì),使用的代碼如下,雖然會(huì)簡化乘累加的過程,但是針對實(shí)際使用的工程來說,這個(gè)是不好的代碼風(fēng)格。

always @(posedge clk)begin
        if (rst=='b1)begin 
				sum = 'd0; 
				sign_out <= 'd0;
		end
		else begin
            sign_out <= sum;
            sum = 'd0;
			for (i=0; i<FIR_WIDTH_DIV_2; i=i+1)
                sum =   sum + mult_out[i];
        end
    end	

所以這里我直接做了展開處理,將8個(gè)結(jié)果做了加法。

電路架構(gòu)優(yōu)化

我認(rèn)為在隨著濾波器規(guī)模變大運(yùn)算的數(shù)據(jù)位寬增加時(shí),信號(hào)與系數(shù)相乘后的結(jié)果進(jìn)行累加操作的部分,組合邏輯的延時(shí)相對會(huì)增加很多,為了進(jìn)一步提升電路架構(gòu)的性能,可對該部分進(jìn)行加法樹的平衡,打拍優(yōu)化加法樹結(jié)構(gòu),應(yīng)該有可能進(jìn)一步提升電路架構(gòu)的性能。

仿真設(shè)計(jì)

仿真數(shù)據(jù)設(shè)計(jì)

為了驗(yàn)證并行設(shè)計(jì)代碼的正確性。這里使用MATLAB腳本產(chǎn)生了一個(gè)混頻信號(hào),混頻的頻率為100hz和700hz的疊加,然后將混頻信號(hào)進(jìn)行量化處理并導(dǎo)出txt文件以供仿真文件讀取。

clc;close all;clear all;
 Fs = 2000; %采樣頻率
N = 2^10; %采樣點(diǎn)數(shù)
f1=300; %正弦波1頻率
f2=400; %正弦波1頻率
t=[0:N-1]/Fs; %時(shí)間序列
s1 = sin(2*pi*f1*t) ;
s2 = sin(2*pi*f2*t) ;
s = s1 .* s2;
figure(1);
subplot(1,2,1);
plot(t,s,'r','LineWidth',1.2);
title('時(shí)域波形');
axis([0,100/Fs,-3,3]);
set(gca,'LineWidth',1.2);
%轉(zhuǎn)化為位寬12bit數(shù)據(jù)
s_12bit=s./max(s).*(2.^11 - 1); % DA輸入波形,量化到16bit
s_12bit(find(s_12bit<0) ) = s_12bit(find(s_12bit<0) ) + 2^12 - 1;
s_12bit = fix(s_12bit);
s_12bit = dec2hex(s_12bit);
% %生成文件
fid= fopen('sin_data.txt','w+');
%生成十六進(jìn)制
for i=1:N
    fprintf(fid,'%s',s_12bit(i,:));
    fprintf(fid,'\r\n');
end
fclose(fid);
%% 設(shè)計(jì)驗(yàn)證
N=16;      %濾波器長度
fs=2000;   %采樣頻率
fc=500;    %低通濾波器的截止頻率
B=12;      %量化位數(shù)
%生成各種窗函數(shù)
w_kais=blackman(N)';
%采用fir1函數(shù)設(shè)計(jì)FIR濾波器
b_kais=fir1(N-1,fc*2/fs,w_kais);
ss=conv(b_kais,s);
subplot(1,2,2);
plot(t(20:1000),ss(20:1000));
title('濾波后信號(hào)');
axis([0,100/Fs,-1,1]);
set(gca,'LineWidth',1.2);

運(yùn)行仿真后,根據(jù)設(shè)計(jì)的濾波器系數(shù)進(jìn)行仿真,發(fā)現(xiàn)可以正常濾波除去高頻分量。

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

仿真激勵(lì)文件編寫

`timescale 1ns / 1ps
module Fir_Parallel_tb;

    // Parameters
    localparam integer SIGN_IN_WIDTH = 12;
    localparam integer SIGN_OUT_WIDTH = 29;
    localparam integer FIR_COE_WIDTH = 12;
    localparam integer FIR_COE_NUM = 16;

    // Ports
    reg clk = 1;
    reg rst = 1;
    reg [SIGN_IN_WIDTH-1:0] signal_in;
    wire [SIGN_OUT_WIDTH-1:0] signal_out;

    Fir_Parallel #(
                       .SIGN_IN_WIDTH(SIGN_IN_WIDTH ),
                       .SIGN_OUT_WIDTH(SIGN_OUT_WIDTH ),
                       .FIR_COE_WIDTH(FIR_COE_WIDTH ),
                       .FIR_COE_NUM (FIR_COE_NUM )
                   )Fir_Parallel_dut (
                       .clk (clk ),
                       .rst (rst ),
                       .signal_in (signal_in ),
                       .signal_out  ( signal_out)
                   );

    reg  [11:0] mem [0:99];
    reg  [9:0] addr ;
    // reg  [11:0]data_out ;
    always #(10*1)
    begin
        if(rst==0)
            addr = addr + 10'd1;
        signal_in  =  mem[addr][11:0];
    end

    always
        #5  clk = ! clk ;

    initial
    begin
        signal_in =0;
        $readmemh("sin_data.txt",mem);
        addr  = 10'd0;
        #10;
        rst   = 0;
    end

endmodule

運(yùn)行仿真,查看波形可見,濾波效果和仿真結(jié)果一致。

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)

延遲分析

該架構(gòu)的數(shù)據(jù)輸入后,每四個(gè)時(shí)鐘周期后輸出一個(gè)數(shù)據(jù),其中,一個(gè)時(shí)鐘周期用于X(n)的加和,一個(gè)時(shí)鐘周期用于計(jì)算信號(hào)和濾波器系數(shù)相乘的結(jié)果,一個(gè)時(shí)鐘周期用于乘法輸出后的數(shù)據(jù)做累加處理,一個(gè)時(shí)鐘用于讀取累加后的結(jié)果。

數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)文章來源地址http://www.zghlxwxcb.cn/news/detail-406389.html

到了這里,關(guān)于數(shù)字信號(hào)處理-10-并行FIR濾波器MATLAB與FPGA實(shí)現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 數(shù)字信號(hào)處理實(shí)驗(yàn):數(shù)字濾波器的設(shè)計(jì)與應(yīng)用

    數(shù)字信號(hào)處理實(shí)驗(yàn):數(shù)字濾波器的設(shè)計(jì)與應(yīng)用

    一. 實(shí)驗(yàn)?zāi)康?????????1.掌握模擬濾波器的設(shè)計(jì)方法,以及脈沖響應(yīng)不變法和雙線性變換法設(shè)計(jì)IIR數(shù)字濾波 器的方法,針對實(shí)際信號(hào)能設(shè)計(jì)相應(yīng)的 IIR 數(shù)字濾波器,并按要求進(jìn)行濾波。 ????????2.掌握用窗函數(shù)法設(shè)計(jì)FIR數(shù)字濾波器的方法,并通過實(shí)驗(yàn)了解各種窗函數(shù)對濾

    2024年02月03日
    瀏覽(24)
  • 【數(shù)字信號(hào)處理2】IIR 濾波器設(shè)計(jì)

    【數(shù)字信號(hào)處理2】IIR 濾波器設(shè)計(jì)

    1.掌握沖激響應(yīng)法和雙線性變換法設(shè)計(jì)IIR濾波器的原理及具體設(shè)計(jì)方法,熟悉用雙線性設(shè)計(jì)法設(shè)計(jì)低通、帶通和高通IIR數(shù)字濾波器的計(jì)算機(jī)程序; 2.熟悉模擬Butterworth濾波器的設(shè)計(jì),掌握沖激響應(yīng)法和雙線性變換法設(shè)計(jì)數(shù)字IIR濾波器的方法。 1、不同階次模擬巴特沃茲濾波器的

    2024年02月05日
    瀏覽(19)
  • 數(shù)字信號(hào)處理實(shí)驗(yàn):IIR數(shù)字濾波器設(shè)計(jì)及軟件實(shí)現(xiàn)

    數(shù)字信號(hào)處理實(shí)驗(yàn):IIR數(shù)字濾波器設(shè)計(jì)及軟件實(shí)現(xiàn)

    目錄 一、實(shí)驗(yàn)?zāi)康?二、實(shí)驗(yàn)原理 三、實(shí)驗(yàn)設(shè)備 四、實(shí)驗(yàn)內(nèi)容及步驟 五、實(shí)驗(yàn)結(jié)果及分析 六、實(shí)驗(yàn)主程序框圖及程序清單 七、實(shí)驗(yàn)總結(jié) 熟悉用雙線性變換法設(shè)計(jì)IIR數(shù)字濾波器的原理與方法; 學(xué)會(huì)調(diào)用MATLAB信號(hào)處理工具箱中濾波器設(shè)計(jì)函數(shù)(或?yàn)V波器設(shè)計(jì)分析工具FDATool)設(shè)

    2024年02月12日
    瀏覽(25)
  • 數(shù)字信號(hào)處理第四次試驗(yàn):IIR數(shù)字濾波器設(shè)計(jì)及軟件實(shí)現(xiàn)

    數(shù)字信號(hào)處理第四次試驗(yàn):IIR數(shù)字濾波器設(shè)計(jì)及軟件實(shí)現(xiàn)

    為了幫助同學(xué)們完成痛苦的實(shí)驗(yàn)課程設(shè)計(jì),本作者將其作出的實(shí)驗(yàn)結(jié)果及代碼貼至CSDN中,供同學(xué)們學(xué)習(xí)參考。如有不足或描述不完善之處,敬請各位指出,歡迎各位的斧正! (1)熟悉用雙線性變換法設(shè)計(jì)IIR數(shù)字濾波器的原理與方法; (2)學(xué)會(huì)調(diào)用MATLAB信號(hào)處理工具箱中濾

    2024年02月08日
    瀏覽(27)
  • 數(shù)字信號(hào)處理|Matlab設(shè)計(jì)巴特沃斯低通濾波器(沖激響應(yīng)不變法和雙線性變換法)

    數(shù)字信號(hào)處理|Matlab設(shè)計(jì)巴特沃斯低通濾波器(沖激響應(yīng)不變法和雙線性變換法)

    2.1頻響圖 系統(tǒng)函數(shù) H 是一個(gè)復(fù)數(shù),其圖譜分為:幅度譜、相位譜 幅度譜 x軸:模擬頻率f(數(shù)字頻率w轉(zhuǎn)化來)【 單位:赫茲Hz 】 y軸:|H1|幅度【一般用:20 * log10|H1|】【 單位:分貝dB 】 ?相位譜 x軸:模擬頻率f(數(shù)字頻率w轉(zhuǎn)化來)【 單位:赫茲Hz 】 y軸:H1 的相位 2.2 各個(gè)頻

    2023年04月08日
    瀏覽(37)
  • 現(xiàn)代信號(hào)處理——自適應(yīng)濾波器(匹配濾波器)

    現(xiàn)代信號(hào)處理——自適應(yīng)濾波器(匹配濾波器)

    信號(hào)處理的目的是從噪聲中提取信號(hào),得到不受干擾影響的真正信號(hào)。采用的處理系統(tǒng)稱為濾波器。 實(shí)時(shí)信號(hào)處理中,希望濾波器的參數(shù)可以根據(jù)系統(tǒng)或環(huán)境的變化進(jìn)行更新,稱為自適應(yīng)濾波器。 濾波器的分類: 線性濾波器、非線性濾波器; FIR濾波器、IIR濾波器; 時(shí)域?yàn)V

    2023年04月27日
    瀏覽(36)
  • 現(xiàn)代信號(hào)處理——自適應(yīng)濾波器(LMS自適應(yīng)濾波器)

    現(xiàn)代信號(hào)處理——自適應(yīng)濾波器(LMS自適應(yīng)濾波器)

    一、自適應(yīng)濾波簡介 維納濾波存在的問題: 適用于平穩(wěn)隨機(jī)信號(hào)的最佳濾波,對于非平穩(wěn)的隨機(jī)信號(hào),其統(tǒng)計(jì)特性(相關(guān)函數(shù))是隨機(jī)的,因此無法估計(jì)其相關(guān)函數(shù),此時(shí)的維納濾波不適用; 維納濾波器的參數(shù)是固定的,就不可能根據(jù)輸入信號(hào)的變換去自動(dòng)調(diào)整濾波器的參

    2024年02月01日
    瀏覽(28)
  • 【Matlab】音頻信號(hào)分析及FIR濾波處理——?jiǎng)P澤(Kaiser)窗

    【Matlab】音頻信號(hào)分析及FIR濾波處理——?jiǎng)P澤(Kaiser)窗

    1.1 課題內(nèi)容: 利用麥克風(fēng)采集語音信號(hào)(人的聲音、或樂器聲樂),人為加上環(huán)境噪聲(窄帶) 分析上述聲音信號(hào)的頻譜,比較兩種情況下的差異 根據(jù)信號(hào)的頻譜分布,選取合適的濾波器指標(biāo)(頻率指標(biāo)、衰減指標(biāo)),設(shè)計(jì)對應(yīng)的 FIR 濾波器 實(shí)現(xiàn)數(shù)字濾波,將濾波前、后的聲

    2024年02月21日
    瀏覽(30)
  • FPGA信號(hào)處理系列文章——深入淺出理解多相濾波器

    提示:文章寫完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔 多相濾波是,按照相位均勻劃分把數(shù)字濾波器的系統(tǒng)函數(shù)H(z)分解成若干個(gè)具有不同相位的組,形成多個(gè)分支,在每個(gè)分支上實(shí)現(xiàn)濾波。 采用多相濾波結(jié)構(gòu),可利用多個(gè)階數(shù)較低的濾波來實(shí)現(xiàn)原本階數(shù)較

    2024年02月05日
    瀏覽(57)
  • 【非歐幾里得域信號(hào)的信號(hào)處理】使用經(jīng)典信號(hào)處理和圖信號(hào)處理在一維和二維歐幾里得域信號(hào)上應(yīng)用低通濾波器研究(Matlab代碼實(shí)現(xiàn))

    【非歐幾里得域信號(hào)的信號(hào)處理】使用經(jīng)典信號(hào)處理和圖信號(hào)處理在一維和二維歐幾里得域信號(hào)上應(yīng)用低通濾波器研究(Matlab代碼實(shí)現(xiàn))

    ????????? 歡迎來到本博客 ???????? ??博主優(yōu)勢: ?????? 博客內(nèi)容盡量做到思維縝密,邏輯清晰,為了方便讀者。 ?? 座右銘: 行百里者,半于九十。 ?????? 本文目錄如下: ?????? 目錄 ??1 概述 ??2 運(yùn)行結(jié)果 2.1 算例1 2.2 算例2 2.3 算例3? 2.4 算例4?

    2024年02月13日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包