下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
廣東工業(yè)大學(xué)研究生課程考試試卷封面學(xué)院:題號分?jǐn)?shù)12345678合計平時成績總評成績開課單位:專業(yè):姓名:學(xué)號:考試科目:學(xué)生類別:考試時間:第周星期(年月日)開課學(xué)期:年秋季任課教師:說明:1.以上左欄學(xué)生填寫,右欄老師填寫;2.學(xué)位課考試的答題均寫在答題紙上,考查課假設(shè)無課堂考試可不用答題紙,但仍應(yīng)填寫此頁封面;3.平時成績根據(jù)任課教師所寫的課程教學(xué)大綱規(guī)定評定;4.任課教師評完分后從網(wǎng)上錄入成績,再打印成績單一式兩份連同試卷、答題紙交教務(wù)員保管〔保管四年〕。1.設(shè)計內(nèi)容本設(shè)計是一個基于FPGA的一維數(shù)字信號處理算法的FIR的設(shè)計,設(shè)計使用Verilog語言編寫FIR濾波器的模塊,通過編譯和綜合,并通過MATLAB和modelsim仿真比照驗證設(shè)計結(jié)果。2.設(shè)計原理有限沖擊響應(yīng)(FIR)濾波器和無限沖擊響應(yīng)(IIR)濾波器廣泛應(yīng)用于數(shù)字信號處理系統(tǒng)中。IIR數(shù)字濾波器方便簡單,但它相位的線性,要采用全通網(wǎng)絡(luò)進(jìn)行相位校正。圖象處理以及數(shù)據(jù)傳輸,都要求信道具有線性相位特性,而有限沖擊響應(yīng)(FIR)濾波器既具有嚴(yán)格的線性相位,又具有任意的幅度。與此同時FIR濾波器還具有以下優(yōu)點(diǎn):(1)FIR濾波器的單位抽樣響應(yīng)是有限長的,在有限z平面上不存在極點(diǎn),其運(yùn)算結(jié)構(gòu)中不存在反應(yīng)支路,即沒有環(huán)路,因而濾波器性能穩(wěn)定。(2)只要經(jīng)過一定的延時,任何非因果有限長序列都能變成因果的有限長序列,因而能用因果系統(tǒng)來實現(xiàn)。(3)FIR濾波器由于單位沖擊響應(yīng)是有限長的,因而可用快速傅里葉變換(FFT)算法來實現(xiàn)過濾信號,可大大提高運(yùn)算效率,因此越來越受到廣泛的重視。如果的長度為N,那么它的系統(tǒng)函數(shù)和差分方程一般具有如下形式:根據(jù)差分方程直接畫出FIR濾波器的結(jié)構(gòu),稱為直接型結(jié)構(gòu)。如下圖:圖2.1FIR濾波器直接結(jié)構(gòu)FIR濾波器的特點(diǎn):(1)系統(tǒng)的單位沖擊響應(yīng)h(n)在有限個n值處不為零。(2)系統(tǒng)函數(shù)H(z)在|z|>0處收斂,極點(diǎn)全部在z=0處(穩(wěn)定系統(tǒng))。(3)結(jié)構(gòu)上主要是非遞歸結(jié)構(gòu),沒有輸出到輸入的反應(yīng),但有些結(jié)構(gòu)中(例如頻率抽樣結(jié)構(gòu))也包含有反應(yīng)的遞歸局部。對線性時不變系統(tǒng)保持線性相位的條件是:單位脈沖響應(yīng)為偶對稱或奇對稱。即:為設(shè)計線性濾波器,應(yīng)保證h(n)為對稱的。1〕假設(shè)N為偶數(shù),其線性相位FIR濾波器的對稱結(jié)構(gòu)流圖:圖2.2假設(shè)N為偶數(shù)線性相位FIR濾波器的對稱結(jié)構(gòu)流圖圖中:“+1〞對應(yīng)偶對稱情況,“-1〞對應(yīng)奇對稱情況。當(dāng)n為奇數(shù)時,最后一個支路斷開。2〕假設(shè)N為奇數(shù),其線性相位FIR濾波器的對稱結(jié)構(gòu)流圖:圖2.3N為奇數(shù)線性相位FIR濾波器的對稱結(jié)構(gòu)流圖在本設(shè)計中,我們采用線性FIR低通濾波器,所采用的階數(shù)N=8,所以是偶對稱的,估采取圖2.2的結(jié)構(gòu),其中“±1“取“+1〞。3.設(shè)計思路由上面的FIR濾波器的對稱結(jié)構(gòu)流圖,可知要在FPGA上實現(xiàn)FIR濾波器,首先要確定濾波器的抽頭系數(shù)h〔n〕。其系數(shù)確實定,我們可以通過兩種方法來實現(xiàn):第一種就是通過MATLAB編寫FIR濾波器程序,然后直接導(dǎo)出抽頭系數(shù)“h〔n〕〞;另外一種方法就是使用MATLAB自帶的FDATOOL簡便地設(shè)計一個FIR濾波器,然后導(dǎo)出系數(shù)??紤]到要更直觀地描述FIR濾波器的設(shè)計,我采用了第一種方法,用編寫MATLAB代碼的方式設(shè)計一個FIR低通濾波器。設(shè)計好濾波器后,接著就是準(zhǔn)備一維數(shù)字信號〔語音信號〕,通過濾波器的濾波,看能把語音信號中的高頻的信號濾除,只剩下低頻的信號,從而驗證濾波器的性能。然后再把語音信號保存起來,以供后面驗證用Verilog設(shè)計的FIR濾波器模塊使用。這里面涉及到怎樣讀取音頻文件的問題,這就需要了解音頻文件的格式〔.wav〕,每個音頻文件都有文件頭,這個文件頭就包含了音頻文件的很多像類似采樣率這樣的信息。文件頭后就是具體的語音信號。做好準(zhǔn)備工作后,就可以在QUARTUSII里面編寫Verilog代碼了。由于是硬件描述語言,所以設(shè)計的思路很簡單,就是通過把輸入序列移位,然后首位對稱相加再乘以抽頭系數(shù),然后把相乘結(jié)果再相加最后給輸出。其中涉及的難點(diǎn)是FPGA對有符號小數(shù)的乘法處理局部。在QUARTUSII編寫好模塊之后,就要用到modelsim來對設(shè)計進(jìn)行仿真。對于仿真信號的輸入,我們可以添加一個altera的romIP核來存放之前用MATLAB讀取的語音信號,然后通過時鐘的驅(qū)動一個一個輸入到FIR濾波器模塊,最后在modelsim中顯示濾波器的輸出結(jié)果,同時把濾波器的輸出結(jié)果保存起來,以備最后用來跟用MATLAB設(shè)計的濾波器的結(jié)果作比照。驗證的最后一步,就是要把modelsim輸出的仿真結(jié)果用MATLAB進(jìn)行繪圖,和之前MATLAB的仿真輸出結(jié)果進(jìn)行比擬,從而驗證濾波器的設(shè)計是否成功。4.設(shè)計過程1〕用MATLAB仿真FIR濾波器用MATLAB仿真設(shè)計線性FIR濾波器,首先要確定其指標(biāo),在本設(shè)計里,我們規(guī)定濾波器的指標(biāo)如下:階數(shù)N=8,截止頻率為12.5Hz。用加漢明窗函數(shù)的方法設(shè)計FIR濾波器。根據(jù)此可以編得MATLAB代碼如下:據(jù)此可以求得濾波器抽頭系數(shù)h〔n〕為:h=0.00280.02980.12590.23250.23250.12590.02980.0028由于FPGA不支持浮點(diǎn)數(shù)的運(yùn)算,所以我們采用定點(diǎn)數(shù)的格式來量化抽頭系數(shù)。對于16位的輸入數(shù)據(jù),我們這里采用Q11的定點(diǎn)小數(shù)格式,即11位小數(shù)位,4位整數(shù)位,1位符號位。將抽頭系數(shù)乘以2^11可得:b=560257476476257605這樣我們就得到了8階FIR濾波器的量化系數(shù)了。確定好FIR濾波器的系數(shù)了,再接著就是準(zhǔn)備需要處理的語音信號作為FIR濾波器的輸入數(shù)據(jù)。語音信號是以.wav格式存儲的音頻文件,這種格式的音頻文件,都是有文件頭的,文件頭里包含許多有用的信息,例如,采樣頻率、聲道數(shù)、文件長度等這類的詳細(xì)信息。所以要想準(zhǔn)確的讀取的語音信號的采樣值,必須知道音頻信號的格式。在這里,采用了自定義函數(shù)read_wav讀取.wav格式的音頻文件的方式讀取語音信號。用讀取的語音信號分別與濾波器系數(shù)進(jìn)行卷積運(yùn)算,可以得到濾波器后的結(jié)果。代碼和結(jié)果如下列圖所示:圖4.1MATLAB仿真FIR的輸入波形以及輸出波形對照通過簡單分析上述處理前后的對照圖的結(jié)果,可以看出,其信號的高頻局部可得到濾除,而低頻局部會無失真地保存。然后將讀取的語音信號以十六進(jìn)制的方式保存起來,為驗證后面用FPGA設(shè)計濾波器提供輸入。具體實現(xiàn)代碼如下:圖4.2對語音信號的采樣點(diǎn)以十六進(jìn)制保存到txt文件中2〕用verilog編寫FIR濾波器模塊本設(shè)計中,整個Verilog程序可以分為三個局部:FIR濾波器主程序、有符號小數(shù)的乘法模塊以及modelsim仿真的TestBench代碼。其中關(guān)鍵程序就是有符號小數(shù)的乘法處理模塊?!?〕FIR濾波器主程序:其主程序的變量定義如下:其中輸入數(shù)據(jù)和濾波器的抽頭系數(shù),都是16位,由于輸入序列最大值不超過40,所以相加結(jié)果仍然是16位。相乘的結(jié)果用32位表示。為了防止相乘再相加后數(shù)據(jù)的溢出,我們在這里把存放相乘再相加的結(jié)果擴(kuò)大了2位,用到34位,然后最后的輸出,在原來的根底上再擴(kuò)大1位,35位的輸出。在最后的輸出中,可以把低位去掉,只保存假設(shè)干高位,但這里只需要仿真出結(jié)果便可,所以沒有進(jìn)行截斷處理,然而在實際工程中,由于數(shù)位的限制,還是要注意這點(diǎn)。FIR主程序就是描述圖2.2的FIR濾波器結(jié)構(gòu),其行為描述,具體可以用以下代碼實現(xiàn):其中x1~x8通過前一個值對后一個值的賦值,可以實現(xiàn)移位操作;而s1~s4是用來存放首位對稱相加的結(jié)果;然后y1~y4是乘法輸出的結(jié)果,通過out1與out2的相加,最后輸出到結(jié)果out。其中乘法的運(yùn)算,我們調(diào)用4次乘法模塊〔因為線性FIR濾波器是對稱結(jié)構(gòu),所以可以只進(jìn)行8/2=4次的乘法運(yùn)算?!?〕有符號小數(shù)的乘法模塊對于有符號的小數(shù)運(yùn)算,在FPGA里面,其實是和有符號整數(shù)的運(yùn)算是一樣的。只是定點(diǎn)數(shù)的小數(shù)點(diǎn)的位置,我們需要牢記,在最后輸出結(jié)果的時候,要適當(dāng)?shù)倪M(jìn)行移位。由于負(fù)數(shù)在Verilog中是以補(bǔ)碼形式保存的,所以在輸入16位有符號數(shù)的時候,在進(jìn)行相乘之前,要把負(fù)數(shù)變?yōu)樵a再相乘,而正數(shù)的補(bǔ)碼就是其本身,所以不用轉(zhuǎn)換。然后把符號位提出來,進(jìn)行異或運(yùn)算,得到輸出的符號位,再把有效數(shù)位的原碼進(jìn)行相乘,最后得到1位符號位和30位相乘結(jié)果。為了補(bǔ)全32位,可以在最低位加上一個無關(guān)位0。最終輸出如果是負(fù)數(shù),還需要把它變成補(bǔ)碼的形式輸出。至此,一個有符號的小數(shù)乘法運(yùn)算就完成了。根據(jù)以上思路,我們可以寫出出乘法模塊的代碼:〔3〕modelsim仿真的TestBench代碼5.分析驗證設(shè)計好以上Verilog模塊后,可以進(jìn)行FPGA的編譯綜合和Modelsim仿真了。結(jié)果如下列圖所示:圖5.1modelsim仿真波形為了方便將modelsim的仿真跟MATLAB的仿真作比照,本設(shè)計將modelsim的仿真結(jié)果保存在txt文件中,然后通過MATLAB讀出這些數(shù)據(jù),畫圖驗證modelsim的仿真結(jié)果是否達(dá)標(biāo),從而驗證FIR這種一維數(shù)字信號處理算法是否正確。圖5.2modelsim仿真結(jié)果保存在txt文件中執(zhí)行以下MATLAB代碼,讀取modelsim的仿真結(jié)果并畫出modelsim仿真結(jié)果:圖5.3分別畫出用matlab仿真和用modelsim仿真后的FIR數(shù)字濾波器的輸出波形圖5.4比擬matlab仿真的輸出波形和modelsim仿真的輸出波形根據(jù)上面這些輸出波形,可以清楚看出,modelsim仿真的輸出波形和MATLAB的輸出波形根本是一致的,可以確定用FPGA設(shè)計的一維數(shù)字信號處理的FIR算法正常工作,到達(dá)了預(yù)期的效果。6.設(shè)計總結(jié)通過本次設(shè)計,我對Verilog這門語言有了更深入的理解和認(rèn)識,掌握了FPG
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年學(xué)生保險全保障協(xié)議
- 2025標(biāo)識標(biāo)牌行業(yè)發(fā)展趨勢分析與預(yù)測合同3篇
- 二零二五版辦公區(qū)域租賃合同(含物業(yè)增值服務(wù))
- 二手住宅交易服務(wù)合同(2024年版)3篇
- 二零二五年度上市公司專項財務(wù)咨詢與輔導(dǎo)協(xié)議
- 二零二五年度股權(quán)分割協(xié)議書模板
- 2025年度礦業(yè)權(quán)出讓與地質(zhì)安全監(jiān)管合同
- 2025年度車輛借出免責(zé)及車輛使用責(zé)任界定協(xié)議
- 二零二五年度文化藝術(shù)活動派遣協(xié)議范本
- 2025年度城市綜合體物業(yè)保安勞務(wù)管理合同
- 小兒甲型流感護(hù)理查房
- 霧化吸入療法合理用藥專家共識(2024版)解讀
- 2021年全國高考物理真題試卷及解析(全國已卷)
- 拆遷評估機(jī)構(gòu)選定方案
- 趣味知識問答100道
- 鋼管豎向承載力表
- 2024年新北師大版八年級上冊物理全冊教學(xué)課件(新版教材)
- 人教版數(shù)學(xué)四年級下冊核心素養(yǎng)目標(biāo)全冊教學(xué)設(shè)計
- JJG 692-2010無創(chuàng)自動測量血壓計
- 三年級下冊口算天天100題(A4打印版)
- CSSD職業(yè)暴露與防護(hù)
評論
0/150
提交評論