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

正文內容

基于modelsim的fft算法的設計學士學位論文-免費閱讀

2025-08-10 15:03 上一頁面

下一頁面
  

【正文】 addra[4:0]=datain_t[4:0]。 addra[4:0]=addr_cf1[4:0]。 dinb[35:0]=dataout_cf2[35:0]。 addrb[4:0]=0。 dataout_valid=0。 dina[35:0]={datain[31],datain[31],datain[31:16],datain[15],datain[15],datain[15:0]}。 addra[4:0]=0。 if(finish_butterfly) state=st5。 else state = st0。 always(posedge clk or negedge rst_n)//write data into the pingpong ram if(!rst_n) begin datain_wr=1。 if(!rst_n) valid=0。b0。 assigndatain_cf2[31:0]=(shift[1:0]==0)?{doutb[33:18],doutb[15:0]}:(shift[1:0]==1)?{doutb[34:19],doutb[16:1]}:(shift[1:0]==2)?{doutb[35:20],doutb[17:2]}:3239。 wire [1:0] shift。 reg datain_wr,datain_blk。 wire [31:0] datain_cf1,datain_cf2。 //ram control signal and databus ,address bus reg [35:0] dina,dinb。 output [3:0] number。 input normal_valid。這種結構的優(yōu)點是只有一個蝶形運算單元,所占的硬件資源少,結構簡單,穩(wěn)定 性能好,缺點是運算速度緩慢,且時序控制較為復雜。 理工大學學士學位論文 18 3 FFT 的算法設計 FFT 處理 器的實現(xiàn)框圖 本論文主要研究的是 32 點的按時間抽取的基 2FFT 算法的 FPGA 實現(xiàn),同時為了提高運行速度還運用了流水線結構,為了兼顧高精度和復雜度的特點還引入了塊浮點結構。由于在執(zhí)行算術運算時需要大量的硬件資源,所以浮點數(shù)記數(shù)方法的使用成本很高。 表 16位有符號數(shù)的定標表示法 Q表示 S表示 十進制數(shù)表示范圍 Q15 1=x= Q14 2=x= Q13 4=x= Q12 8=x= Q11 16=x= Q10 32=x= Q9 64=x= Q8 128=x= Q7 256=x= Q6 512=x= Q5 1024=x= Q4 2048=x= Q3 4096=x= Q2 8192=x= Q1 16384=x= Q0 32768=x=32767 有限字長效應 和單片機、 DSP等器件一樣, FPGA也是不能直接處理模擬信號的。為了判斷“溢出”是否發(fā)生,可以采用雙符號位法,也稱為“變形補碼”或“模 4補碼”,從 而可使模 2補碼所能表示的數(shù)的范圍擴大一倍。 定點數(shù)加減法的溢出及檢測方法 在定點小數(shù)機器中,數(shù)的表示范圍為 |X|1。這種結構的信號流圖有一個非常特別的優(yōu)點就是前一級的旋轉因子剛好是后一級上一半蝶形運算的旋轉因子,且順序不變,如果旋轉因子的計算采用查表法,只要構造出一個 N/2點的NpW,就可以 用它來計算 N、 N/ N/ ...長度的 FFT。如果蝶形運算的兩個輸入數(shù)據(jù)相距 B個點,應用原位計算,則蝶形運算可表示成如下形式: pNLLpNLLWBJXJXBJ WBJXJXJX )()()( )()()( 11 11 ????? ???? ?? ?? 其中 p=J2ML; J=0,1,...,2L1。因為這樣,當計算完一個蝶形以后,所得輸出數(shù)據(jù)可立即存入原輸入數(shù)據(jù)所占用的存儲單元 i以此類推,當 M級運算都計算完畢以后,原來存放輸入序列數(shù)據(jù)的 N個存儲單元中便依次存放了 X(k)的 N個值。當 N=210=1024時,可以求得直接計算 N點的 DFT和使用基 2DITFFT算法的所需乘法次數(shù)的比值為 )2/( 22 ??NN N 這樣,運算效率就提高了 200多倍。依次類推,經(jīng)過 M1次分解,最后將 N點 DFT分解成 N/2個 2點 DFT。由圖 ,要完成一個蝶形運算,需要一次復數(shù)乘法和兩次復數(shù)加法運算。 由于這兩種算法的基本原理是相同的,所以下面主要介紹 DITFFT算法。其實一個 N點 DFT可以看做是由幾個較短的 DFT組成的。那么對于 N個 k值,一共需要 N2次復數(shù)乘法以及 N(N1)次復數(shù)加法運算。 20xx 年魯欣等也設計了 4096 點 FFT,但是他使用了 1024 點的 FFT IP 核進行了擴展設計,如果系統(tǒng)輸入時鐘為 50MHz,計算時間為 。使用 IP 核構建數(shù)字信號處理系統(tǒng)具有諸多優(yōu)點,如開發(fā)周期短、性能穩(wěn)定、可靠、維護方便等。使用無 SRAM 的 FPGA,在工作前需要從芯片外部加載配置數(shù)據(jù)。因此,可編程邏輯器件是設計數(shù)字系統(tǒng)的理想器件。在進行大點數(shù) FFT 計算和 FIR 數(shù)字濾波時,并行算法與 DSP 處理器的尋址能力不相 適應,不能有效利用數(shù)據(jù)傳輸?shù)膸捄瓦\算能力,造成硬件資源的浪費。鑒于此種趨勢,作者將基于 FPGA的 FFT 和 FIR 數(shù)字濾波器設計與實現(xiàn)作為了研究課題。與模擬濾波器相比,數(shù)字濾波器可以滿足濾波器幅度和相位特性的嚴格要求,可以克服模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。其中,離散傅立葉變換( Discretetime Fourier Transform, DFT)和卷積是信號處理中兩個最基本也是最常用的運算,它們涉及到信號與系統(tǒng)的分析與綜合這一廣泛的信號處理領域。而FPGA 內部含有硬件乘法器,大量的存儲單元和可編程 I/O,十分適合于 FFT 處理器的實現(xiàn),而且相對 ASIC,成本低廉,可以反復編程,便于 調試,也更具市場競爭力。 本文應用 Verilog 語言完成 32 點基 2 復數(shù)的 FFT 處理系統(tǒng)設計,包括蝶形運算單元設計、存儲單元設計、塊浮點單元設計、地址產生單元設計、功能切換單元設計以及時序控制單元的設計工作。由數(shù)字信號處理的基本理論可知,卷積可以轉化為 DFT 來實現(xiàn),實際上其他許多算法,如相關、譜分析等也都可以轉化 DFT 來實現(xiàn);此外,各種系統(tǒng)的分析、設計和實現(xiàn)中都會用到 DFT 的計 算問題。有限沖激響應( FIR)濾波器可以保證嚴格的線性相位。 FFT 的國內外發(fā)展研究現(xiàn)狀 針對 FFT 和 FIR 數(shù)字濾波器的硬件實現(xiàn)方案主要有三種途徑: DSP 處理器、專用集成電路 ASIC、可編程邏輯器件,其中可編程邏輯器件以 FPGA 為代 表 。 專用集成電路芯片 ASIC 在集成電路界 ASIC 被認為是一種為專門目的而設計的集成電路?,F(xiàn)在已廣泛用于計算機 硬件、工業(yè)控制、智能儀表、通信設備和醫(yī)療電子儀器等多個領域。配置數(shù)據(jù)可以存儲在片外的 EPROM 或其他存儲體上,人們可以控制加載過程,在現(xiàn)場修改器件的邏輯功能,即所謂現(xiàn)場編程。但也存在以下的缺點: IP 核價格昂貴( Altera 公司的 FFT IP 核售價為 7995 美元), 且 IP 核源代碼不對外開放,不利于二次開發(fā); IP 核針對通用的設計,在某些特殊的應用場合不一定最優(yōu)因此還難以在我國基層應用領域普及。 20xx 年劉在爽、盧瑩瑩對 FPGA 實現(xiàn) FIR 數(shù)字濾波器也進行研究,討論了乘累加和基于 CSD( Canonic signed Digital,標準有符號數(shù))編碼的數(shù)字濾波器的設計。當 N1時, N(N1)≈N2。基于這一思想,可以將 N點 DFT分解為幾個較短的 DFT,這樣一來乘法次數(shù)將大大減少,能夠非常明顯地降低 DFT的運算量。本課題采用的就是 DITFFT這一算法。由圖 ,經(jīng)過一次分解后,計算一個 N點 DFT共需要計算兩個 N/2點DFT可和 N/2個蝶形運算。將前面兩次分解的過程綜合起來,就得到了一個完整的 8點 DITFFT運算流圖,如圖 。圖 FFT算法與直接計算 DFT所需乘法次數(shù)的比較曲線。這種利用同一存儲單元存儲蝶形運算計算輸入、輸出數(shù)據(jù)的 方法就稱為原址計算。L=1,2,...,M 下標 L表示第 L級運算, XI, (J)則表示第 L級運算后數(shù)組元素 X(J)的值。因此在大型數(shù)據(jù)處理系統(tǒng)的 FFT算法中,較多采用的是圖 法。在運算過程中如出現(xiàn)大于 1的現(xiàn)象,稱為“溢出”。數(shù)的變形補碼定義為: [x]補 =x 當 2x≥O [x]補 =4+x 當 0x≥2 或用同余式表示為: [x]補 =4+X (mod 4) 下式也同樣成立: [x]補 +[y]補 =[x+y]補 (mod 4) 為了得到兩數(shù)變形補碼之和等于兩數(shù)和的變形補碼,同樣必須: 兩個符號位都看做數(shù)碼一樣參加運算; 兩數(shù)進行以 4為模的加法,即最高符號位上產生的進位要丟掉。模擬信號必須利用 A/D轉換成數(shù)字信號以后才能利用 FPGA處理。 塊浮點數(shù)記數(shù)方法廣泛用于信號處理領域,如執(zhí)行 FFT變換,它消耗的硬件資源要比浮點數(shù)少得多?;?2FFT 模塊設計主要由 6 個部分組成:蝶形運算單元、存儲單元、地址生成單元、功能切換單元、塊浮點單元和時序控制單元 [4],如圖 所示。其程序設計如下。 input startfft。 wire d_valid。 reg wrda,wrdb。 wire [35:0] dataout_cf1,dataout_cf2。 wire [3:0] address_w。 理工大學學士學位論文 21 assign fft_finish=finish_butterfly。b0。 assign dataout_b[13:0]=(dataout_valid)?{dataout_cf2[35],dataout_cf2_t2[12:0]}:1439。 else valid=d_valid。 datain_blk=1。 end st1: state=st2。 else state=st4。 wrda=1。 blka=datain_blk。 end st2 : begin// write the first bank data to ram1 cf_address_gen_en=0。 wrdb=1。 blkb=blk_cf。 dinb[35:0]=0。 wrda=datain_wr。 blka=datain_blk。// ram signal blka=blk_cf。 wrda=wr_ram。 //disable the b block of the ram1 blkb=1。 wrdb=1。 end st1 : begin// write the data to ram
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1