freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)基于fpga的fir數(shù)字濾波器設(shè)計(jì)(參考版)

2025-06-22 19:00本頁面
  

【正文】 FIR數(shù)字濾波器的設(shè)計(jì)方式選擇更具有科學(xué)性和時(shí)效性,可以根據(jù)自己熟悉的軟件,需要的FIR數(shù)字濾波器的精度,F(xiàn)IR數(shù)字濾波器的類型和濾波器階數(shù)來靈活選擇設(shè)計(jì)思路和方法。用Matlab Simulink仿真數(shù)字濾波器設(shè)計(jì)更加直觀,操作便捷,易于分析。輸出結(jié)果如圖222所示:圖222 濾波前信號(hào)波形圖圖223濾波后信號(hào)波形圖 仿真總結(jié)由上面的仿真結(jié)果輸出圖可以看出,所設(shè)計(jì)的數(shù)字帶通濾波器使混合輸入信號(hào)中頻率為30Hz的正弦波信號(hào)通過,明顯的出現(xiàn)了帶中信號(hào)。圖216 Matlab中模擬的混合信號(hào) 然后在程序中設(shè)置好仿真模型如下圖(217)圖217 Simulink模型仿真設(shè)置好仿真參數(shù),對(duì)各個(gè)信號(hào)進(jìn)行單獨(dú)修改和設(shè)置如下圖(218):圖218 sin(2*pi*30*t)參數(shù)模塊在主設(shè)置中,振幅(Amplitude)設(shè)置為1, 頻率(Frequency)設(shè)置為30Hz, 輸出混合為實(shí)常量,樣本時(shí)間為1/1000, 采樣幀數(shù)設(shè)置為1幀,以下不同頻率信號(hào)同理設(shè)置: 圖219 sin(2*pi*10*t)參數(shù)模塊圖220 混合參數(shù)模塊圖221 仿真設(shè)計(jì)模塊最后來設(shè)置仿真參數(shù):在Matlab模型窗口打開菜單[Simulation:Configuration Parameters]。
grid。楊成杰本科畢業(yè)設(shè)計(jì)混合正弦波信號(hào)X(t)濾波前39。
plot(t,X)。
x3=sin(2*pi*t*60)。
x1=sin(2*pi*t*10)。圖215 Simulink工具窗口圖本論文模擬一個(gè)混合信號(hào)正弦波信號(hào)他包涵了10,30,60(Hz)的信號(hào),在Matlab模擬出來是這樣一個(gè)信號(hào):Fs=200。利用移位來把小數(shù)運(yùn)算轉(zhuǎn)換成整數(shù)運(yùn)算,這樣我們的11階濾波器程序大大減少篇幅同時(shí)也增加了程序的可讀程度和穩(wěn)定程度。在原來的濾波器中需要對(duì)每一個(gè)參數(shù)進(jìn)行單獨(dú)設(shè)置,這樣會(huì)使得程序占有巨量的篇幅大大的增加了工作量和容錯(cuò)度。在先前的設(shè)計(jì)中我們使用Matlab進(jìn)行綜合仿真設(shè)計(jì),并且借助FDAtool設(shè)計(jì)出濾波器。b1}。b0}。//兩數(shù)符號(hào)位相異或,得到乘積的符號(hào)位 x6=x3[14:0]*x4[14:0]。b1}。b1}。//截取16位被乘數(shù), x2=in_b[31:16]。b0。b0。b0。b0。b0。b0。b0。b0。 reg[31:0] x7。 reg[0:0] x5。///////////////////////////////////////////////////// reg[31:0] y_out。 output[29:0] x6。//輸出的乘積 /*寄存器類型變量 為了能更清楚的了解全處理過程, 特地設(shè)計(jì)為輸出的,不然仿真可能會(huì)被綜合掉*/ output[15:0] x1,x2,x3,x4。//時(shí)鐘和復(fù)位信號(hào) input[31:0] in_a,in_b。 modulefix_mult ( clk,rst_n,in_a,in_b,x1,x2,x3,x4,x5,x6,x7,y_out )。本文采用適合于FPGA 實(shí)現(xiàn)的自定義26 位浮點(diǎn)數(shù)據(jù)格式,利用改進(jìn)的基4Boot h 編碼運(yùn)算方式,以及CSA和4 2 壓縮器綜合的Wallace 樹形結(jié)構(gòu),減少了部分積,使系統(tǒng)具有高速度,低功耗的特點(diǎn),并且結(jié)構(gòu)規(guī)則。而乘法,尤其是浮點(diǎn)乘法運(yùn)算是數(shù)值計(jì)算和數(shù)據(jù)分析中最常用的運(yùn)算之一。于是我們要進(jìn)行小數(shù)乘法器的設(shè)計(jì)。filter_in_force [3] = $realtobits(+000)。 filter_in_force [1] = $realtobits(+000)。 end endfunction //function abs_real // Component Instances filter u_filter ( .clk(clk), .clk_enable(clk_enable), .reset(reset), .filter_in(filter_in), .filter_out(filter_out) )。 input real arg。 reg [63:0] filter_out_expected [0:3344]。在原來的38階濾波器的設(shè)計(jì)中出現(xiàn)了這樣子的問題。但是在程序設(shè)計(jì)的過程中我們遇見了實(shí)數(shù)乘法的問題,程序的運(yùn)行遇到了困難,在與指導(dǎo)老師的研究中我們發(fā)現(xiàn)問題出在實(shí)數(shù)乘法的問題上。0010B的原碼應(yīng)用原來的位代替 11111100B 41=0111 4的原碼:10004* t為有符號(hào)數(shù),所以是帶符號(hào)右移,于是t3==使用移位代替乘法運(yùn)算這個(gè)方法的優(yōu)點(diǎn)是速度快,例如11階的濾波器,完成一次運(yùn)算需要11次乘法,如果使用單MAC的話,需要11個(gè)時(shí)鐘周期來完成,而使用移位方法可以在一個(gè)時(shí)鐘周期完成11個(gè)乘法運(yùn)算;缺點(diǎn)是需要另外去完成濾波系數(shù)到移位位數(shù)的換算,如果修改濾波系數(shù)的話,程序修改將會(huì)比較麻煩,同時(shí)硬件資源也要使用多一些。 end endmodule使用MAC單元完成乘加運(yùn)算(包括單MAC和多MAC的情況)這個(gè)方法可以利用FPGA中已有的MAC單元(像Xilinx Spartan 3E-100中有四個(gè)乘加單元),只要設(shè)計(jì)好數(shù)據(jù)運(yùn)算流程,就能方便高效地實(shí)現(xiàn)FIR運(yùn)算。 mult13_8 uut16(clk,c16,xx[16],acc17)。mult13_8 uut14(clk,c14,xx[14],acc15)。mult13_8 uut12(clk,c12,xx[12],acc13)。mult13_8 uut10(clk,c10,xx[10],acc11)。mult13_8 uut8(clk,c8,xx[8],acc9)。mult13_8 uut6(clk,c6,xx[6],acc7)。mult13_8 uut4(clk,c4,xx[4],acc5)。mult13_8 uut2(clk,c2,xx[2],acc3)。 endmult13_8 uut0(clk,c0,xx[0],acc1)。k=k1) sxin[k]=sxin[k1]。 for(k=32。i16。 always (posedge clk) begin xx[16]=sxin[16] 。 reg [8:0]xx[16:0]。 reg [8:0]sxin[0:32]。 reg[7:0] x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16。 output [25:0] y。 input clk。因此,程序設(shè)計(jì)是正確的。圖213功能仿真由上圖212可以看出,tap0到tap10是輸入x的依次延時(shí)1個(gè)時(shí)鐘周期,結(jié)果sum輸出相對(duì)于輸入x延遲了2個(gè)時(shí)鐘周期,y輸出相對(duì)于sum輸出延遲了1個(gè)時(shí)鐘周期,這和程序設(shè)計(jì)相符合。 各個(gè)系數(shù)的移位情況如下:其中2表示左移1位,1表示不移位,其他依次類推:128h(0)=128==128h(1)=128==1++128h(2)=128==4+1+++128h(3)=128==8+41+128h(4)=128==16+128h(5)=128==128164++這樣,我們就可以把這個(gè)11階FIR數(shù)字濾波器的輸出用一下的算式得到表25 Verilog方法設(shè)計(jì)FIR的實(shí)驗(yàn)數(shù)據(jù)圖 212系數(shù)放大后求SUM計(jì)算得到結(jié)果后再將sum右移7位,即可得到正確結(jié)果。這個(gè)方法的實(shí)現(xiàn)中,使用了移位代替乘法運(yùn)算來實(shí)現(xiàn)濾波器乘加的方法。FIR濾波器采用對(duì)稱結(jié)構(gòu),每個(gè)抽頭的輸出分別乘以相應(yīng)加權(quán)的二進(jìn)制值,再將結(jié)果相加。表24 Matlab中導(dǎo)出的濾波器系數(shù)MATLAB軟件仿真的濾波器的抽頭系數(shù)及其幅度頻響特性如下圖211所示。(11階FIR數(shù)字濾波器)FPGA實(shí)現(xiàn)FIR濾波器,首先進(jìn)行指標(biāo)選定和Matlab軟件參數(shù)仿真,然后執(zhí)行基于Verilog方法的硬件實(shí)現(xiàn)中用移位方法代替了乘法運(yùn)算。VerilogHDL是一種硬件描述語言(hardware description language),為了制作數(shù)字電路而用來描述ASIC和FPGA的設(shè)計(jì)之用。Verilog HDL進(jìn)行設(shè)計(jì)最大的優(yōu)點(diǎn)是其工藝無關(guān)性。Verilog HDL可以用來進(jìn)行各種層次的邏輯設(shè)計(jì),也可以進(jìn)行數(shù)字系統(tǒng)的邏輯綜合,仿真驗(yàn)證和時(shí)序分析等。   Altera Quartus II 作為一種可編程邏輯的設(shè)計(jì)環(huán)境, 由于其強(qiáng)大的設(shè)計(jì)能力和直觀易用的接口,越來越受到數(shù)字系統(tǒng)設(shè)計(jì)者的歡迎。目前Altera已經(jīng)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1