0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA中浮點(diǎn)運(yùn)算定標(biāo)實(shí)現(xiàn)方法

潤(rùn)和軟件 ? 來(lái)源:CSDN技術(shù)社區(qū) ? 作者:jf_1689824307.4557 ? 2021-08-12 09:53 ? 次閱讀

有些FPGA中是不能直接對(duì)浮點(diǎn)數(shù)進(jìn)行操作的,只能采用定點(diǎn)數(shù)進(jìn)行數(shù)值運(yùn)算。對(duì)于FPGA而言,參與數(shù)學(xué)運(yùn)算的書(shū)就是16位的整型數(shù),但如果數(shù)學(xué)運(yùn)算中出現(xiàn)小數(shù)怎么辦呢?要知道,F(xiàn)PGA對(duì)小數(shù)是無(wú)能為力的,一種解決辦法就是采用定標(biāo)。

數(shù)的定標(biāo)就是將要運(yùn)算的浮點(diǎn)數(shù)擴(kuò)大很多倍,然后取整,再用這個(gè)數(shù)進(jìn)行運(yùn)算,運(yùn)算得到的結(jié)果再縮小相應(yīng)的倍數(shù)就可以了。在設(shè)計(jì)中,一定不要忘記小數(shù)點(diǎn)。在FPGA 中是體現(xiàn)不出來(lái)小數(shù)點(diǎn)的,小數(shù)點(diǎn)的位置只有程序員知道。Q表示小數(shù)點(diǎn)的位置,Q15就表示小數(shù)點(diǎn)在第15位。

浮點(diǎn)數(shù)(x)轉(zhuǎn)換為定點(diǎn)數(shù)(xq):xq=(int)x*2^Q

定點(diǎn)數(shù)(xq)轉(zhuǎn)換浮點(diǎn)數(shù)(x):x= (float)xq*2^(-Q)

比如,16進(jìn)制數(shù)2000H,用Q0表示就是8192;若用Q15表示,則為0.25。

下面介紹Q格式運(yùn)算中Q值的確定:

(1)定點(diǎn)加減法:需要轉(zhuǎn)換成相同Q格式才能加減

(2)定點(diǎn)乘法:不同Q格式的數(shù)據(jù)相乘,相當(dāng)于Q值相加

(3)定點(diǎn)除法:不同Q格式的數(shù)據(jù)相除,相當(dāng)于Q值相減

(4)定點(diǎn)左移:相當(dāng)于Q值增加

(5)定點(diǎn)右移:相當(dāng)于Q值減少

比如,Q15表示的4000H(浮點(diǎn)數(shù)0.5)乘以Q15表示的4000H,4000H×4000H=1000 0000H,乘完之后Q值變?yōu)?5+15=30,即結(jié)果為0.01B,即為浮點(diǎn)數(shù)0.25。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21736

    瀏覽量

    603419
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7030

    瀏覽量

    89038
  • 浮點(diǎn)運(yùn)算
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

    11169

原文標(biāo)題:FPGA中浮點(diǎn)運(yùn)算實(shí)現(xiàn)方法——定標(biāo)

文章出處:【微信號(hào):hoperun300339,微信公眾號(hào):潤(rùn)和軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    為什么研究浮點(diǎn)加法運(yùn)算,對(duì)FPGA實(shí)現(xiàn)方法很有必要?

    處理等方面受到了限制,由于FPGA關(guān)于浮點(diǎn)數(shù)的運(yùn)算只能自行設(shè)計(jì),因此,研究浮點(diǎn)加法運(yùn)算
    發(fā)表于 07-05 06:21

    如何利用FPGA實(shí)現(xiàn)高速流水線浮點(diǎn)加法器研究?

    處理等方面受到了限制,為什么研究浮點(diǎn)加法運(yùn)算FPGA實(shí)現(xiàn)方法很有必要? 因?yàn)?b class='flag-5'>FPGA
    發(fā)表于 08-15 08:00

    求一種在FPGA實(shí)現(xiàn)單精度浮點(diǎn)加法運(yùn)算方法

    介紹一種在FPGA實(shí)現(xiàn)的單精度浮點(diǎn)加法運(yùn)算器,運(yùn)算器算法的實(shí)現(xiàn)考慮了
    發(fā)表于 04-29 06:27

    浮點(diǎn)運(yùn)算方法

    浮點(diǎn)運(yùn)算方法:  
    發(fā)表于 01-16 09:22 ?29次下載
    <b class='flag-5'>浮點(diǎn)</b><b class='flag-5'>運(yùn)算</b><b class='flag-5'>方法</b>

    DSP的浮點(diǎn)運(yùn)算方法

      DSP的浮點(diǎn)運(yùn)算方法
    發(fā)表于 01-16 09:25 ?4次下載

    用VHDL語(yǔ)言在CPLD/ FPGA實(shí)現(xiàn)浮點(diǎn)運(yùn)算

     介紹了用VHDL 語(yǔ)言在硬件芯片上實(shí)現(xiàn)浮點(diǎn)加/ 減法、浮點(diǎn)乘法運(yùn)算方法,并以Altera 公司的FLEX10K系列產(chǎn)品為硬件平
    發(fā)表于 07-28 14:06 ?85次下載

    浮點(diǎn)運(yùn)算單元的FPGA實(shí)現(xiàn)

    浮點(diǎn)加法是數(shù)字信號(hào)處理的一種非常頻繁且非常重要的操作,在現(xiàn)代數(shù)字信號(hào)處理應(yīng)用浮點(diǎn)加法運(yùn)算幾乎占到全部
    發(fā)表于 04-10 10:47 ?8次下載
    <b class='flag-5'>浮點(diǎn)</b><b class='flag-5'>運(yùn)算</b>單元的<b class='flag-5'>FPGA</b><b class='flag-5'>實(shí)現(xiàn)</b>

    浮點(diǎn)運(yùn)算FPGA實(shí)現(xiàn)

    結(jié)構(gòu)復(fù)雜,采用DSP實(shí)現(xiàn)會(huì)增加系統(tǒng)負(fù)擔(dān),降低系統(tǒng)速度。在某些對(duì)速度要求較高的情況,必須采用專門(mén)的浮點(diǎn)運(yùn)算處理器。 EDA/FPGA技術(shù)不斷發(fā)展,其高速、應(yīng)用靈活、低成本的優(yōu)點(diǎn)使其廣泛應(yīng)
    發(fā)表于 04-10 14:25 ?17次下載

    如何在FPGA中正確處理浮點(diǎn)數(shù)運(yùn)算

    使用插值算法實(shí)現(xiàn)圖像縮放是數(shù)字圖像處理算法中經(jīng)常遇到的問(wèn)題。我們經(jīng)常會(huì)將某種尺寸的圖像轉(zhuǎn)換為其他尺寸的圖像,如放大或者縮小圖像。由于在縮放的過(guò)程中會(huì)遇到浮點(diǎn)數(shù),如何在FPGA中正確的處理浮點(diǎn)
    的頭像 發(fā)表于 03-18 11:03 ?5080次閱讀

    FPGA浮點(diǎn)數(shù)轉(zhuǎn)化為定點(diǎn)數(shù)方法

    FPGA在常規(guī)運(yùn)算時(shí)不能進(jìn)行浮點(diǎn)運(yùn)算,只能進(jìn)行定點(diǎn)整型運(yùn)算,在處理數(shù)據(jù)的小數(shù)乘加運(yùn)算和除法
    的頭像 發(fā)表于 10-13 16:23 ?4796次閱讀

    浮點(diǎn)與定點(diǎn)運(yùn)算以及數(shù)據(jù)定標(biāo)和精度問(wèn)題

    計(jì)算機(jī)體系結(jié)構(gòu)浮點(diǎn)和定點(diǎn)數(shù)據(jù)的表示 1、定點(diǎn)數(shù): 定點(diǎn)數(shù)指小數(shù)點(diǎn)在數(shù)的位置是固定不變的,通常有定點(diǎn)整數(shù)和定點(diǎn)小數(shù)或者說(shuō)是定點(diǎn)分?jǐn)?shù)。在對(duì)小數(shù)點(diǎn)位置作出選擇之后即定標(biāo)定了Q值后,
    的頭像 發(fā)表于 12-06 10:00 ?4907次閱讀

    為什么研究浮點(diǎn)加法運(yùn)算,對(duì)FPGA實(shí)現(xiàn)方法很有必要?

    ,浮點(diǎn)加法器是現(xiàn)代信號(hào)處理系統(tǒng)中最重要的部件之一。FPGA是當(dāng)前數(shù)字電路研究開(kāi)發(fā)的一種重要實(shí)現(xiàn)形式,它與全定制ASIC電路相比,具有開(kāi)發(fā)周期短、成本低等優(yōu)點(diǎn)。 但多數(shù)FPGA不支持
    的頭像 發(fā)表于 09-22 10:40 ?1127次閱讀
    為什么研究<b class='flag-5'>浮點(diǎn)</b>加法<b class='flag-5'>運(yùn)算</b>,對(duì)<b class='flag-5'>FPGA</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>方法</b>很有必要?

    浮點(diǎn)LMS算法的FPGA實(shí)現(xiàn)

    運(yùn)算運(yùn)算步驟遠(yuǎn)比定點(diǎn)運(yùn)算繁瑣,運(yùn)算速度慢且所需硬件資源大大增加,因此基于浮點(diǎn)運(yùn)算的LMS算法的
    的頭像 發(fā)表于 12-21 16:40 ?793次閱讀

    FPGA浮點(diǎn)四則運(yùn)算實(shí)現(xiàn)過(guò)程

    由于定點(diǎn)的四則運(yùn)算比較簡(jiǎn)單,如加減法只要注意符號(hào)擴(kuò)展,小數(shù)點(diǎn)對(duì)齊等問(wèn)題即可。在本文中,運(yùn)用在前一節(jié)描述的自定義浮點(diǎn)格式FPGA數(shù)的表示
    的頭像 發(fā)表于 11-16 11:19 ?439次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>中</b><b class='flag-5'>浮點(diǎn)</b>四則<b class='flag-5'>運(yùn)算</b>的<b class='flag-5'>實(shí)現(xiàn)</b>過(guò)程

    FPGA浮點(diǎn)四則運(yùn)算是什么

    由于定點(diǎn)的四則運(yùn)算比較簡(jiǎn)單,如加減法只要注意符號(hào)擴(kuò)展,小數(shù)點(diǎn)對(duì)齊等問(wèn)題即可。在本文中,運(yùn)用在前一節(jié)描述的自定義浮點(diǎn)格式FPGA數(shù)的表示
    的頭像 發(fā)表于 11-16 12:51 ?268次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的<b class='flag-5'>浮點(diǎn)</b>四則<b class='flag-5'>運(yùn)算</b>是什么