fpga怎樣處理浮點(diǎn)數(shù)

fpga怎樣處理浮點(diǎn)數(shù)

用純硬件描述語言在FPGA實(shí)現(xiàn)浮點(diǎn)數(shù)的處理我認(rèn)為是挺難的,我能想出來的有兩種辦法,僅供參考。1.你可以設(shè)置相應(yīng)的當(dāng)量如5.6你可以認(rèn)為當(dāng)量是10,在邏輯使用中用56運(yùn)算,到相應(yīng)的處理時(shí)再除以當(dāng)量,在FPGA用“/”是可以的,不過自動(dòng)約掉小數(shù),需啊你注意。

fpga為什么要實(shí)現(xiàn)浮點(diǎn)運(yùn)算呢

有許多問題是整數(shù)運(yùn)算不能解決的,或者說用整數(shù)模擬浮點(diǎn)運(yùn)算的步驟更多、消耗的時(shí)間片更多,所以用浮點(diǎn)運(yùn)算更快、效率更高。比如:做FIR濾波,我們在matlab上得到的濾波參數(shù)一般是浮點(diǎn)的,如果這個(gè)參數(shù)拿來使用,fpga支持浮點(diǎn)運(yùn)算就很簡單的可以實(shí)現(xiàn)了,否則還需要轉(zhuǎn)換成整數(shù)(涉及數(shù)據(jù)位寬、移位、小數(shù)點(diǎn)對齊等等一系列問題)來運(yùn)算帶來不必要的麻煩。

比如DSP分成浮點(diǎn)的和定點(diǎn)的,浮點(diǎn)DSP就可以直接進(jìn)行浮點(diǎn)運(yùn)算,而定點(diǎn)DSP需要引入浮點(diǎn)運(yùn)算庫實(shí)現(xiàn)用整型計(jì)算得到浮點(diǎn)運(yùn)算的效果。

浮點(diǎn)DSP一個(gè)時(shí)鐘周期完成的浮點(diǎn)運(yùn)算,定點(diǎn)DSP要花費(fèi)幾倍甚至十幾倍的時(shí)間來計(jì)算,精度還要受影響。

請教關(guān)于FPGA中小數(shù)(浮點(diǎn)數(shù))的表示問題

個(gè)人愚見:比如FPGA處理a[7:0]/b[7:0]的話,a[7:0]比b[7:0]小,得到的結(jié)果是0到1之間。所以在除時(shí)將被除數(shù)即a[7:0]后面添幾位0,得到的結(jié)果就有幾位小數(shù)。

如一個(gè)除法器中:.dividend({a,15\’b0}),.quotient(c),.divisor(b),那商c[22:0]的結(jié)果就應(yīng)該是:0000_0000.0000_0000_0000_000到0000_0000.1111_1111_1111_111這個(gè)范圍了。

百科

FPGA 中可以取整嗎??如何進(jìn)行?先謝謝了哦 、、

1.?