国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種模式可配置的單精度浮點乘法器設計

2020-04-07 09:53鄧軍勇
西安郵電大學學報 2020年6期
關(guān)鍵詞:尾數(shù)功耗乘法

蔣 林,田 璞,鄧軍勇

(1.西安郵電大學,電子工程學院,陜西 西安 710121; 2.西安科技大學,集成電路實驗室,陜西 西安 710054)

計算機處理器需要處理大量的乘法運算,由于乘法運算的復雜度較高,所以,乘法器的運算速度和功耗通常也就決定了處理器的運行速度和功耗[1]。單精度浮點乘法器采用兩個符合IEEE754標準的浮點數(shù)完成乘法運算,與定點運算相比,浮點運算單元(floating point units,FPUs)提供了高精度、高動態(tài)范圍的實際值以及簡單的編程模型[2]。

一般而言,頻率、功耗和面積是衡量乘法器和處理器性能的3個重要指標。為了降低浮點乘法器功耗,大多數(shù)的設計都是通過犧牲計算的精度來實現(xiàn)的[3-4]。例如,在某些對精度要求不高的機器學習和數(shù)據(jù)傳感技術(shù)中,有研究直接利用一個乘數(shù)的值來代替乘法的結(jié)果,以降低功耗[5],但是,該方法的誤差較大。在對運算精度和速度比較高的應用如信號處理、神經(jīng)網(wǎng)絡和流處理等應用[6-7]中,為提高計算速度,有研究通過重構(gòu)流水線級數(shù)的方式來提高運算頻率[8],這會增大設計面積開銷。為了降低浮點乘法的面積開銷,使用改進的Booth編碼,調(diào)整擴展位的位置可以有效減少版圖面積[9],但是,這種設計會增加浮點乘法運算的功耗。

單精度浮點乘法器的關(guān)鍵技術(shù)主要在尾數(shù)乘法的設計部分,該部分通常由定點數(shù)乘法實現(xiàn)。傳統(tǒng)的定點數(shù)乘法算法有原碼一位乘法、Booth算法和Wallace樹型結(jié)構(gòu)。原碼一位乘法基本思想是“判斷—加法—右移”循環(huán),實現(xiàn)簡單,功耗小,但是,該算法的實現(xiàn)頻率低。Booth算法是對原碼一位乘法的改進,每次判斷右移的尾數(shù)為兩位,其實現(xiàn)的周期數(shù)幾乎是原碼一位乘法的一半,但是這種算法功耗較大[10]。Wallace結(jié)構(gòu)在乘法器設計中采用樹型結(jié)構(gòu),減少了關(guān)鍵路徑和所需的加法單元數(shù)目,但是,這種方法會增加功耗和面積[11]。目前的設計更多地關(guān)注某一個單個性能,難以兼顧對頻率、面積和功耗的需求。

針對以上方法的不足,擬設計一種模式可配置單精度浮點乘法器。利用互補金屬氧化物半導體(complementary metal oxide semiconductor,CMOS)工藝設計原碼一位、基4-Booth和Wallace樹型算法3種常用定點數(shù)乘法的浮點乘法器,并且測試這3種乘法器的性能。在乘法器的尾數(shù)乘法部分添加模式選擇模塊,根據(jù)應用場景對頻率、功耗和面積3個性能的不同需求選擇和切換相應的算法,以滿足不同應用對處理器性能的要求。

1 單精度浮點乘法器

浮點乘法器通過A和B兩個操作數(shù)的符號位進行異或操作來計算C=A×B的符號位,其將指數(shù)項的有效值相加,并將兩個尾數(shù)相乘得到結(jié)果的尾數(shù)。浮點乘法器的原理示意圖如圖1所示。

圖1 浮點乘法器原理示意圖

單精度浮點乘法器的操作數(shù)符合IEEE754標準。這種表示方式可以使數(shù)據(jù)的精度更高,表示范圍更大。具體的精度浮點數(shù)格式示意圖如圖2。其中,最高位s表示符號位,階碼e表示第23-30位,尾數(shù)f表示第0-22位。尾數(shù)用原碼表示,第一位總是1,可以在尾數(shù)省略第一位的1,稱為隱藏位,因而單精度格式的23位尾數(shù)實際是24位有效數(shù)字。

圖2 精度浮點數(shù)格式示意圖

單精度浮點乘法器的關(guān)鍵計算模塊就是尾數(shù)乘法部分,這部分通常通過定點數(shù)乘法實現(xiàn),常見的定點數(shù)乘法有原碼一位乘法、Booth算法[11]和Wallace樹型結(jié)構(gòu)[9]。

原碼一位乘法的原理示意圖如圖3所示。經(jīng)過n次的“判斷—加法—右移”循環(huán),直到輸出乘積,但隨著操作數(shù)位寬的增加原碼一位乘法循環(huán)的次數(shù)會增加,即圖中右移的次數(shù)會增加,導致較低的計算頻率。

圖3 原碼一位乘法原理

基4-Booth乘法[11]原理示意圖如圖4所示?;?-Booth乘法是對原碼一位乘法的改進,其每次右移的位數(shù)是兩位?;?-Booth乘法一定程度上減少了計算周期數(shù),圖4中控制邏輯的計數(shù)器比原碼一位乘法復雜,會造成更大的功耗。

圖4 基4-Booth乘法原理

Wallace結(jié)構(gòu)的乘法器在設計中采用樹型結(jié)構(gòu)[9],一種常用的6:4進位保存加法器(carry save adder,CSA)的Wallace樹型結(jié)構(gòu)乘法器原理示意圖如圖5所示。Wallace樹型6:4CSA壓縮器能夠減少關(guān)鍵路徑和所需的加法器單元數(shù)目,同時也提高了計算頻率,但是,這會造成較大的能量消耗和面積,另外,由于每個計算單元的計算量會增大,從而增大了布線資源消耗。

圖5 6:4CSA壓縮器的Wallace樹型結(jié)構(gòu)

不同的應用領(lǐng)域?qū)μ幚砥餍阅芤蟾鞑幌嗤?。例如,在電子產(chǎn)品等應用領(lǐng)域,對功耗有較高的要求。在視頻圖像處理領(lǐng)域,由于對海量圖像數(shù)據(jù)處理的實時性要求越來越高,就需要低功耗且占用面積小的浮點乘法運算。傳統(tǒng)的乘法算法無法同時兼顧面積、頻率和功耗。

2 多模式浮點乘法器設計

提出一種模式可配置的浮點乘法器,根據(jù)不同應用領(lǐng)域?qū)π阅艿牟煌枨笠约?種定點數(shù)乘法算法在頻率、面積和功耗方面的優(yōu)勢,配置對應的標志位,選擇相應的乘法算法實現(xiàn)浮點乘法運算。

2.1 乘法器整體框架

設計的可配置浮點乘法器包括符號異或模塊、指數(shù)加模塊、判斷模塊、尾數(shù)乘法模塊和尾數(shù)規(guī)格化及舍入模塊,其結(jié)構(gòu)示意圖如圖6所示。

圖6 可配置浮點乘法器結(jié)構(gòu)圖

單精度浮點乘法器的實現(xiàn)過程包括如下5個步驟。

步驟1將32位的浮點數(shù)分段,分別為符號位、指數(shù)位和尾數(shù),同時恢復尾數(shù)的隱藏位“1”。

步驟2對符號位進行異或操作。

步驟3將階碼(指數(shù))相加,尾數(shù)相乘。

步驟4對尾數(shù)進行規(guī)格化和舍入操作,然后判斷階碼是否有溢出。

步驟5將計算的符號位、階碼和尾數(shù)進行拼接并作為結(jié)果輸出。

2.2 模式選擇的可重構(gòu)設計

浮點乘法運算的尾數(shù)乘法采用定點數(shù)乘法。尾數(shù)乘法部分一般采用原碼一位乘法、基4-Booth算法和Wallace樹型算法3種定點數(shù)乘法算法實現(xiàn)。利用90 nm CMOS工藝設計了基于這3種定點數(shù)乘法算法的浮點乘法器,并且完成邏輯綜合(design compiler,DC),3種算法的浮點乘法器性能測試結(jié)果如表1所示。

表1 3種浮點乘法器性能測試結(jié)果

可以看出,原碼一位乘法在面積和功耗方面具有優(yōu)勢,當應用場景對面積和功耗要求較高時,采用原碼一位乘法是較好的選擇。Wallace樹型算法在延時(即頻率)性能較好,當應用場景對延時/頻率有較高要求時,應該選擇Wallace樹型算法。

根據(jù)表1中的性能測試結(jié)果,進而設計了可配置浮點乘法器的面積最優(yōu)模式、頻率最優(yōu)模式和功耗最優(yōu)模式3種計算模式,具體的模式及其算法選擇如表2所示。

表2 模式及實現(xiàn)算法

可配置的單精度浮點乘法器的設計思路是在尾數(shù)乘法部分添加了模式選擇模塊,根據(jù)不同應用對延時、功耗和面積3個性能的需求在原碼一位乘法和Wallace 樹型算法之間進行選擇和切換,以滿足不同應用對處理器性能的要求。

1)面積、功耗最優(yōu)模式

當應用對乘法器面積要求較高時,電路的標志位模式切換至“00”,當應用對乘法器功耗要求較高時,模式切換至“01”,選擇在面積和功耗方面有優(yōu)勢的原碼一位乘法算法實現(xiàn)浮點乘法運算。面積或功耗最優(yōu)浮點乘法原理示意圖如圖7所示。

圖7 面積或功耗最優(yōu)浮點乘法原理

2)頻率最優(yōu)模式

在數(shù)字信號處理等應用中,對浮點運算單元的頻率要求較高,電路的標志位模式切換至“01”,選擇頻率較優(yōu)的Wallace樹型算法來實現(xiàn)浮點乘法。頻率最優(yōu)浮點乘法原理示意圖如圖8所示。

圖8 頻率最優(yōu)浮點乘法原理

3 實驗結(jié)果及分析

在ModelSim SE-6410.1c上實現(xiàn)功能仿真,仿真結(jié)果表明,設計的可配置浮點乘法器計算一次浮點乘法運算最多需要23個時鐘周期,最少需要7個時鐘周期,平均需要15個時鐘周期。和文獻[12]的粗粒度可重構(gòu)處理器實現(xiàn)的浮點乘法器相比,所需周期個數(shù)平均降低了87.3%。對比結(jié)果如表3所示。

表3 與文獻[12]對比

為評估所提出的模式可配置單精度浮點乘法器,在90 nm CMOS工藝上做了邏輯綜合,其中面積、延時和功耗的結(jié)果如表4所示,綜合結(jié)果表明,與文獻[2]的ifpmul32相比,延時和功耗均有所降低,最小延時降低了57%,最小面積降低了76.6%。

表4 與文獻[2]對比

4 結(jié)語

針對現(xiàn)有單精度浮點乘法器不能兼顧不同應用領(lǐng)域?qū)︻l率、面積和功耗的需求,提出了一種模式可配置浮點乘法器。利用CMOS工藝設計原碼一位乘法、基4-Booth算法和Wallace樹型算法3種常用定點數(shù)乘法的浮點乘法器,并且測試其性能。在乘法器的尾數(shù)乘法部分添加模式選擇模塊,根據(jù)應用場景對頻率、功耗和面積3個性能的不同需求選擇和切換相應的算法,以滿足不同應用對對處理器性能的要求。實驗結(jié)果表明,設計方案能夠根據(jù)應用場景實現(xiàn)不同算法之間的切換,且性能較好。

猜你喜歡
尾數(shù)功耗乘法
基于任務映射的暗硅芯片功耗預算方法
《整式的乘法與因式分解》鞏固練習
把加法變成乘法
2019年度上半年《啟迪與智慧》上下半月刊、《幽默與笑話》上下半月刊、《拳擊與格斗》上半月刊抽大獎中獎結(jié)果
2019年度下半年《啟迪與智慧》上下半月刊、《幽默與笑話》上下半月刊、《拳擊與格斗》上半月刊抽大獎中獎結(jié)果
揭開GPU功耗的面紗
乘法豬
有趣的九九乘法表
環(huán)保之功,從主板做起
嵌入式系統(tǒng)功耗的動態(tài)管理
湘潭县| 青河县| 两当县| 若尔盖县| 镇远县| 鹤壁市| 卢龙县| 奎屯市| 惠水县| 湖口县| 阆中市| 耿马| 霍州市| 新密市| 花莲县| 明光市| 胶南市| 大新县| 墨玉县| 彩票| 沙湾县| 扶风县| 大英县| 达孜县| 定边县| 昌宁县| 江陵县| 锡林郭勒盟| 浮梁县| 五大连池市| 余干县| 河津市| 江源县| 台湾省| 津市市| 辽中县| 临夏县| 固安县| 长丰县| 涡阳县| 怀远县|