[發(fā)明專利]面向神經(jīng)網(wǎng)絡處理器的近似浮點乘法器及浮點數(shù)乘法有效
| 申請?zhí)枺?/td> | 201710311756.1 | 申請日: | 2017-05-05 |
| 公開(公告)號: | CN107273090B | 公開(公告)日: | 2020-07-31 |
| 發(fā)明(設計)人: | 韓銀和;許浩博;王穎 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | G06F7/57 | 分類號: | G06F7/57;G06N3/063 |
| 代理公司: | 北京泛華偉業(yè)知識產(chǎn)權代理有限公司 11280 | 代理人: | 王勇;蘇曉麗 |
| 地址: | 100190 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 面向 神經(jīng)網(wǎng)絡 處理器 近似 浮點 乘法器 乘法 | ||
本發(fā)明公開了用于神經(jīng)網(wǎng)絡處理器的近似浮點乘法器及浮點數(shù)乘法。該近似浮點乘法器在執(zhí)行操作數(shù)的尾數(shù)乘法操作時根據(jù)指定的精度從各操作數(shù)尾數(shù)高位開始截取部分位并在所截取的部分位前后補1得到兩個新的尾數(shù),對這兩個新的尾數(shù)進行乘法運算,以得到乘積的近似尾數(shù),以及在經(jīng)規(guī)格化后的近似尾數(shù)的低位補零使其位數(shù)與操作數(shù)的尾數(shù)位數(shù)一致從而得到所述乘積的尾數(shù)。該近似浮點乘法器采用近似計算的方式,根據(jù)精度需求截取尾數(shù)的不同位數(shù)進行相應乘法操作,降低了乘法操作的能量損耗,提高了乘法運算速度,進而使得神經(jīng)網(wǎng)絡處理系統(tǒng)性能更加高效。
技術領域
本發(fā)明涉及神經(jīng)網(wǎng)絡處理器,尤其涉及神經(jīng)網(wǎng)絡處理器內(nèi)的乘法運算。
背景技術
目前神經(jīng)網(wǎng)絡處理器通常采用已訓練好的權重數(shù)據(jù)作為輸入信號進行神經(jīng)網(wǎng)絡模型的運算操作。乘法和加法操作是神經(jīng)網(wǎng)絡運算操作中的重要環(huán)節(jié),大部分專用硬件加速器為了降低設計復雜度并提高運算效率,通常運用定點乘法器進行乘法操作,而訓練得到的權重數(shù)據(jù)大多在以浮點計算環(huán)境下得到,訓練環(huán)境與硬件加速環(huán)境之間數(shù)據(jù)存儲及計算形式的不匹配導致在硬件加速處理結果與訓練結果產(chǎn)生較大差異。然而,如果在硬件加速器中采用傳統(tǒng)浮點乘法器,又會造成加速效率降低、硬件開銷大和運行功耗提高等問題,嚴重阻礙了神經(jīng)網(wǎng)絡處理器在嵌入式設備的應用,同于也無法滿足在未來超低功耗物聯(lián)網(wǎng)端節(jié)點中采用神經(jīng)網(wǎng)絡處理器實時分析處理數(shù)據(jù)的需求
發(fā)明內(nèi)容
因此,本發(fā)明的目的在于克服上述現(xiàn)有技術的缺陷,提供一種新的用于神經(jīng)網(wǎng)絡處理器的近似浮點乘法器及浮點數(shù)乘法。
本發(fā)明的目的是通過以下技術方案實現(xiàn)的:
一方面,本發(fā)明提供了一種近似浮點乘法器,包括:
符號位運算單元,其對輸入的兩個操作數(shù)的符號位進行異或運算以得到這兩個操作數(shù)的乘積的符號位;
階碼運算單元,其對輸入的兩個操作數(shù)的階碼進行加法運算,以得到所述乘積的階碼;
尾數(shù)運算單元,其根據(jù)指定的精度從各操作數(shù)尾數(shù)高位開始截取部分位并在所截取的部分位前后補1得到兩個新的尾數(shù),對這兩個新的尾數(shù)進行乘法運算,以得到乘積的近似尾數(shù),其中所述精度指示操作數(shù)的尾數(shù)中需要參與乘法運算的位數(shù);
規(guī)格化單元,其對所述近似尾數(shù)和所述乘積的階碼進行規(guī)格化處理;
移位單元,其在經(jīng)規(guī)格化后的近似尾數(shù)的低位補零使其位數(shù)與操作數(shù)的尾數(shù)位數(shù)一致,以得到所述乘積的尾數(shù)。
在上述近似浮點乘法器中,還可包括特殊值判斷單元,其判斷輸入的兩個操作數(shù)中是否存在特殊值并向階碼運算單元和尾數(shù)運算單元發(fā)出指示所述判斷的結果的特殊值指示信號,以及當判斷這兩個操作數(shù)中存在特殊值時,直接輸出預先設定的與所檢測的特殊值對應的結果作為這兩個操作數(shù)的乘積。
在上述近似浮點乘法器中,所述階碼運算單元和所述尾數(shù)運算單元可以在收到來自特殊值判斷單元指示操作數(shù)中存在特殊值的特殊值指示信號時,不再繼續(xù)進行相關運算。
在上述近似浮點乘法器中,所述尾數(shù)計算單元可包括第一編碼器、第二編碼器和定位乘法器,其中第一編碼器和第二編碼器根據(jù)收到的精度指示信號分別從各操作數(shù)尾數(shù)高位開始截取部分位并在所截取的部分位前后補1;定位乘法器對第一和第二編碼器的輸入數(shù)據(jù)進行乘法運算并輸出運算結果。
在上述近似浮點乘法器中,所述精度的最大值為操作數(shù)尾數(shù)的位數(shù),最小值為零。
又一方面,本發(fā)明提供了一種浮點數(shù)乘法,包括:
步驟a1,將待相乘的兩個操作數(shù)的符號位進行異或運算,得到這兩個操作數(shù)的乘積的符號位;
步驟a2,將這兩個操作數(shù)的階碼進行加法運算,以得到所述乘積的階碼;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經(jīng)中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710311756.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 硬件神經(jīng)網(wǎng)絡轉(zhuǎn)換方法、計算裝置、軟硬件協(xié)作系統(tǒng)
- 生成較大神經(jīng)網(wǎng)絡
- 神經(jīng)網(wǎng)絡的生成方法、生成裝置和電子設備
- 一種舌診方法、裝置、計算設備及計算機存儲介質(zhì)
- 學習神經(jīng)網(wǎng)絡結構
- 脈沖神經(jīng)網(wǎng)絡轉(zhuǎn)換方法及相關轉(zhuǎn)換芯片
- 圖像處理方法、裝置、可讀存儲介質(zhì)和計算機設備
- 一種適應目標數(shù)據(jù)集的網(wǎng)絡模型微調(diào)方法、系統(tǒng)、終端和存儲介質(zhì)
- 用于重構人工神經(jīng)網(wǎng)絡的處理器及其操作方法、電氣設備
- 一種圖像神經(jīng)網(wǎng)絡結構的優(yōu)化方法及裝置





