


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
數(shù)字信號(hào)處理中浮點(diǎn)運(yùn)算的fpga實(shí)現(xiàn)
浮點(diǎn)運(yùn)算是計(jì)算機(jī)操作的重要方法。與固定計(jì)算相比,它具有廣闊的計(jì)算范圍、有效的精度和高成本。在各種工程計(jì)算和科學(xué)計(jì)算中有著廣泛應(yīng)用。目前浮點(diǎn)運(yùn)算大多采用DSP芯片實(shí)現(xiàn),具有算法簡單,精度高的優(yōu)點(diǎn)。但同時(shí)由于浮點(diǎn)運(yùn)算結(jié)構(gòu)復(fù)雜,采用DSP實(shí)現(xiàn)會(huì)增加系統(tǒng)負(fù)擔(dān),降低系統(tǒng)速度。在某些對速度要求較高的情況,必須采用專門的浮點(diǎn)運(yùn)算處理器。EDA/FPGA技術(shù)不斷發(fā)展,其高速、應(yīng)用靈活、低成本的優(yōu)點(diǎn)使其廣泛應(yīng)用數(shù)字信號(hào)處理領(lǐng)域。在FPGA技術(shù)應(yīng)用的初期,其有限的器件資源難以應(yīng)付浮點(diǎn)運(yùn)算巨大的硬件開銷;其時(shí)鐘頻率也不能滿足工程應(yīng)用的速度要求。近年來,超大規(guī)模集成電路的工藝水平不斷提高,體系結(jié)構(gòu)上也進(jìn)行了較大的改進(jìn)。在降低成本的同時(shí),也使得器件在容量、速度、資源上有了較大的提高。使得采用FPGA來實(shí)現(xiàn)浮點(diǎn)運(yùn)算成為具有高速、低成本、開發(fā)周期短等優(yōu)點(diǎn)的理想選擇。1浮點(diǎn)數(shù)的生成浮點(diǎn)運(yùn)算可分為兩類:非規(guī)格化和規(guī)格化浮點(diǎn)運(yùn)算。非規(guī)格化浮點(diǎn)運(yùn)算,不要求操作數(shù)是規(guī)格化數(shù),對運(yùn)算結(jié)果也不要求規(guī)格化處理。而規(guī)格化浮點(diǎn)運(yùn)算只能對規(guī)格化的浮點(diǎn)數(shù)進(jìn)行操作,并且要求對運(yùn)算結(jié)果加以規(guī)格化處理。由于規(guī)格化浮點(diǎn)數(shù)具有惟一的表示形式,而且在±6.985×10-10~±8.5815×109計(jì)算機(jī)中尾數(shù)能獲得最大的有效數(shù)字(同為十六位浮點(diǎn)數(shù)時(shí)),所以在一般的計(jì)算機(jī)中一般選用規(guī)格化浮點(diǎn)運(yùn)算。常用的浮點(diǎn)格式為IEEE754標(biāo)準(zhǔn)。IEEE754標(biāo)準(zhǔn)有:單精度浮點(diǎn)數(shù)、雙精度浮點(diǎn)數(shù)和擴(kuò)展雙精度浮點(diǎn)數(shù)。單精度為32位,雙精度為64位,擴(kuò)展雙精度為80位以上。在通常的數(shù)字信號(hào)處理應(yīng)用中,單精度浮點(diǎn)數(shù)已經(jīng)足夠用了,本文以它為例來設(shè)計(jì)。單精度的浮點(diǎn)數(shù)的表示如圖所示:其中s為符號(hào)位,s為1時(shí)表示負(fù)數(shù),s為0時(shí)表示正數(shù);e為階數(shù),取值范圍為,0和255表示特殊值;f為尾數(shù),由23位構(gòu)成。規(guī)格化的浮點(diǎn)數(shù)尾數(shù)要求由它表示的浮點(diǎn)數(shù)v的值如下式所示。32位浮點(diǎn)數(shù)可以表示的范圍為在某些情況下可能不需要32位的精度,那么可以用24位或者16位來表示浮點(diǎn)數(shù),如16位浮點(diǎn)數(shù)表示如圖2所示。16位浮點(diǎn)數(shù)可以表示的范圍為±6.985×10-10~±8.5815×109。2浮點(diǎn)運(yùn)算的方法2.1對階時(shí)的操作要求浮點(diǎn)加法運(yùn)算的實(shí)現(xiàn)包括以下幾個(gè)步驟符號(hào)判斷、:對階、尾數(shù)加減操作、規(guī)格化、舍入操作、溢出判斷。具體實(shí)現(xiàn)時(shí)通常把規(guī)格化、舍入操作、溢出判斷作為一個(gè)步驟實(shí)現(xiàn)。浮點(diǎn)數(shù)的格式顯然可以分為兩部分,即符號(hào)和數(shù)據(jù)的絕對值。若符號(hào)相同則符號(hào)不便絕對值相加;若符號(hào)不同則須比較兩絕對值的大小然后兩絕對值作差運(yùn)算。符號(hào)不同時(shí)首先判斷和的符號(hào),顯然若兩浮點(diǎn)數(shù)的階不同時(shí)和的符號(hào)當(dāng)與階數(shù)大的操作數(shù)相同;若階數(shù)不同則繼續(xù)比較對階操作首先比較兩浮點(diǎn)數(shù)的階數(shù)大小。比較階碼后,為進(jìn)行下一步操作當(dāng)在保持相同數(shù)值的前提下改變小階碼數(shù)的表示方式。即階碼加一的同時(shí)使尾數(shù)右移一位,直到兩數(shù)階碼相同為止。對階后只需對尾數(shù)進(jìn)行相應(yīng)的加減運(yùn)算。若最高位產(chǎn)生進(jìn)位則需將階碼加一后尾數(shù)右移一位。由于規(guī)格的浮點(diǎn)數(shù)必須滿足還要對運(yùn)算結(jié)果進(jìn)行規(guī)格化,即判斷尾數(shù)的最高位。若為零則將尾數(shù)左移一位、階碼加一,直到階碼最高為為1。由于對階時(shí)小階碼數(shù)尾數(shù)右移,造成和的尾數(shù)位長大于23位。若采用截?cái)嗵幚韯t相對誤差較大,故采用舍入操作以減小誤差。另外,當(dāng)和較大,超過表示范圍;或當(dāng)運(yùn)算結(jié)果過小,超過浮點(diǎn)數(shù)的分辨率時(shí)會(huì)造成運(yùn)算錯(cuò)誤。故須增加電路判斷運(yùn)算結(jié)果是否正確。另外,對階時(shí)階碼小的數(shù)據(jù)尾數(shù)右移,而規(guī)格化時(shí)還有可能左移,這可能造成有效數(shù)據(jù)位的丟失。故為保證計(jì)算精度,須增加加法器的位寬。由于規(guī)格數(shù)首位為1,同階數(shù)據(jù)產(chǎn)生進(jìn)位無需左移數(shù)據(jù);而不同階數(shù)據(jù)的和亦可保證高位為1,故同號(hào)加法操作時(shí)不會(huì)產(chǎn)生這種情況,只有異號(hào)加法操作存在這種情況。顯然同階數(shù)無需右移操作,當(dāng)階差為二或更大時(shí)對階后尾數(shù)差將大于四分之一,即次高位為1,規(guī)格化時(shí)只需左移一位數(shù)據(jù)。而階差為1時(shí)也只可能右溢出一位數(shù)據(jù)。故在保證浮點(diǎn)數(shù)精度不變的情況只須將加法器增加一位。對于減法運(yùn)算,只需將被減數(shù)符號(hào)取反然后進(jìn)行加法運(yùn)算即可。QUARTUSII下進(jìn)行仿真其結(jié)果如圖3(數(shù)據(jù)采用十進(jìn)制)2.2藥法或全法或廢法浮點(diǎn)乘法實(shí)現(xiàn)相對簡單,只需將兩符號(hào)異或、階碼做和、尾數(shù)做積。即:e3=e1+e2-127,f3=f1×f2,。然后進(jìn)行規(guī)格化。由于有條件1/2£f1,f2<1成立,使得滿足1/4£f3<1即可知f3的最高位和次高位中至少一位為1。從而使規(guī)格化操作流程大大簡化。最后對運(yùn)算結(jié)果進(jìn)行舍入操作,同時(shí)仍需檢查運(yùn)算結(jié)果是否有數(shù)據(jù)溢出的問題。QUARTUSII下進(jìn)行仿真其結(jié)果如圖4(數(shù)據(jù)采用十進(jìn)制)浮點(diǎn)除法運(yùn)算方法與乘法類似,即:e3=e1-e2+127,f3=f1/f2,其中尾數(shù)操作與乘法差異較大。二進(jìn)制除法的流程與人工計(jì)算除法的流程類似,包括移位、比較、做差。由于規(guī)格尾數(shù)的約束條件可知1/2<f3<2,即可判斷無需左移操作。若最高位為1時(shí)需將尾數(shù)右移一位后階碼加一。然后進(jìn)行規(guī)格化和舍入操作,與乘法時(shí)一樣,只需判斷尾數(shù)前兩位即可。其中AS為加/減法選擇,0為加法1為減法;DATA為符號(hào)位,E為階碼,F為尾數(shù)。以上數(shù)據(jù)驗(yàn)證了運(yùn)算在同階、不同階、同號(hào)和異號(hào)以及數(shù)據(jù)過大溢出強(qiáng)制清零時(shí)運(yùn)算的正確性。其中4325376(十進(jìn)制)=10000100···0、5242880(十進(jìn)制)=101000···0、4784128(十進(jìn)制)=100100100···0、7340032(十進(jìn)制)=111000···0;4521984(十進(jìn)制)=100010100···0、5505024(十進(jìn)制)=10101000···0、6070272=101110010100···0。圖四中數(shù)據(jù)驗(yàn)證了同號(hào)、異號(hào)及數(shù)據(jù)過大強(qiáng)制清零等幾種情況下乘法操作的正確性。其中5242880(十進(jìn)制)=101000···0、4456448(十進(jìn)制)=1000100···0、5570560(十進(jìn)制)=101010100···0;6553600(十進(jìn)制)=1100100···0、4718592(十進(jìn)制)=1001000···0、7372800(十進(jìn)制)=1110000100···0。3規(guī)格浮點(diǎn)數(shù)操作浮點(diǎn)運(yùn)算過程中為保證結(jié)果精度及判斷數(shù)據(jù)是否有溢出應(yīng)使階碼加法器高位增加一位;而尾數(shù)由于移位操作亦應(yīng)增加位長,以上根據(jù)規(guī)格數(shù)的尾數(shù)特點(diǎn)在保證運(yùn)算精度的前提下使硬件消耗最小。編譯采用ALTERA公司高性價(jià)比的Cyclone系列器件EP1C240C8。其中加/減法器占用系統(tǒng)LE資源15
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貢緞臺(tái)布企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報(bào)告
- 模塊化建筑吊裝系統(tǒng)企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 食品用司盤企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- 地鐵建設(shè)承包協(xié)議
- 2025年高純氧化鈮、氧化鉭項(xiàng)目發(fā)展計(jì)劃
- 2025年度高端制造技術(shù)知識(shí)產(chǎn)權(quán)保密合同
- 農(nóng)村宅基地使用權(quán)贈(zèng)與及房屋租賃協(xié)議書(2025年度)
- 二零二五年度房屋租賃定金合同(含租賃保險(xiǎn))范本
- 二零二五年度財(cái)務(wù)審計(jì)報(bào)告制作合同
- 二零二五年度房地產(chǎn)開發(fā)商購房退款協(xié)議
- 駕駛員的責(zé)任和義務(wù)
- 預(yù)防艾梅乙母嬰傳播課件
- 寶寶雙排牙介紹演示培訓(xùn)課件
- DB3402-T 59-2023 露天礦山無人駕駛礦車作業(yè)通用要求
- 2022中國腦性癱瘓康復(fù)指南(第一章)
- 糧油倉儲(chǔ)企業(yè)一規(guī)定兩守則試題(新改版附答案)
- 肛腸外科運(yùn)用PDCA循環(huán)降低住院腸造口并發(fā)癥發(fā)生率品管圈QCC持續(xù)質(zhì)量改進(jìn)成果匯報(bào)
- GB/T 15558.5-2023燃?xì)庥寐竦鼐垡蚁?PE)管道系統(tǒng)第5部分:系統(tǒng)適用性
- 區(qū)塊鏈技術(shù)在政府?dāng)?shù)字化轉(zhuǎn)型中審計(jì)項(xiàng)目的應(yīng)用研究
- 拼多多民事起訴狀模板
- 廠房租賃合同糾紛起訴狀
評(píng)論
0/150
提交評(píng)論