[發(fā)明專利]用于神經(jīng)網(wǎng)絡(luò)處理器的浮點(diǎn)乘法器及浮點(diǎn)數(shù)乘法有效
| 申請(qǐng)?zhí)枺?/td> | 201710311728.X | 申請(qǐng)日: | 2017-05-05 |
| 公開(公告)號(hào): | CN107291419B | 公開(公告)日: | 2020-07-31 |
| 發(fā)明(設(shè)計(jì))人: | 韓銀和;許浩博;王穎 | 申請(qǐng)(專利權(quán))人: | 中國(guó)科學(xué)院計(jì)算技術(shù)研究所 |
| 主分類號(hào): | G06F7/57 | 分類號(hào): | G06F7/57;G06N3/02 |
| 代理公司: | 北京泛華偉業(yè)知識(shí)產(chǎn)權(quán)代理有限公司 11280 | 代理人: | 王勇;蘇曉麗 |
| 地址: | 100190 北*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 神經(jīng)網(wǎng)絡(luò) 處理器 浮點(diǎn) 乘法器 乘法 | ||
1.一種用于神經(jīng)網(wǎng)絡(luò)處理器的浮點(diǎn)乘法器,包括:符號(hào)位運(yùn)算單元,其對(duì)輸入的兩個(gè)操作數(shù)的符號(hào)位進(jìn)行異或運(yùn)算以得到這兩個(gè)操作數(shù)的乘積的符號(hào)位;階碼運(yùn)算單元,其對(duì)輸入的兩個(gè)操作數(shù)的階碼進(jìn)行加法運(yùn)算,以得到所述乘積的階碼;尾數(shù)運(yùn)算單元,其對(duì)輸入的兩個(gè)操作數(shù)的尾數(shù)進(jìn)行匹配以從多個(gè)計(jì)算模式中選擇相應(yīng)模式來(lái)計(jì)算所述乘積的尾數(shù);規(guī)格化單元,其對(duì)自尾數(shù)運(yùn)算單元輸出的尾數(shù)和自階碼運(yùn)算單元輸出的階碼進(jìn)行規(guī)格化處理,并輸出經(jīng)規(guī)格化后的階碼和尾數(shù);
其中,所述多個(gè)計(jì)算模式包括第一模式、第二模式和第三模式,在第一模式中直接選取其中一個(gè)操作數(shù)的尾數(shù)作為所述乘積的尾數(shù),在第二模式中,分別從這兩個(gè)操作數(shù)的尾數(shù)的高位開始截取部分位并在所截取的數(shù)的高位處補(bǔ)1,接著對(duì)所得到兩個(gè)數(shù)進(jìn)行乘法運(yùn)算以得到所述乘積的尾數(shù),在第三模式中,對(duì)這兩個(gè)操作數(shù)的尾數(shù)進(jìn)行乘法運(yùn)算以得到所述乘積的尾數(shù);所述尾數(shù)運(yùn)算單元在輸入的兩個(gè)操作數(shù)的尾數(shù)高四位相匹配時(shí)選擇第一模式,否則在這兩個(gè)操作數(shù)的尾數(shù)高三位相匹配時(shí)選擇第二模式,否則選擇第三模式;
其中所述尾數(shù)運(yùn)算單元包括模式匹配單元、乘法器和選擇器,其中所述模式匹配單元對(duì)輸入的兩個(gè)操作數(shù)的尾數(shù)進(jìn)行匹配并基于匹配的結(jié)果直接輸出結(jié)果給選擇器或指示乘法器進(jìn)行相應(yīng)運(yùn)算;乘法器根據(jù)來(lái)自模式匹配單元的指示從輸入的兩個(gè)操作數(shù)的尾數(shù)中選擇相應(yīng)位數(shù)進(jìn)行乘法運(yùn)算并將結(jié)果提供給選擇器;選擇器根據(jù)來(lái)自模式匹配單元的選擇信號(hào)選擇將源自模式匹配單元的結(jié)果還是源自乘法器的結(jié)果作為輸出。
2.根據(jù)權(quán)利要求1所述的浮點(diǎn)乘法器,還包括特殊值判斷單元,其判斷輸入的兩個(gè)操作數(shù)中是否存在特殊值并向階碼運(yùn)算單元和尾數(shù)運(yùn)算單元發(fā)出指示所述判斷的結(jié)果的特殊值指示信號(hào),以及當(dāng)判斷這兩個(gè)操作數(shù)中存在特殊值時(shí),直接輸出預(yù)先設(shè)定的與所檢測(cè)的特殊值對(duì)應(yīng)的結(jié)果作為這兩個(gè)操作數(shù)的乘積。
3.根據(jù)權(quán)利要求2所述的浮點(diǎn)乘法器,其中所述階碼運(yùn)算單元和所述尾數(shù)運(yùn)算單元在收到來(lái)自特殊值判斷單元指示操作數(shù)中存在特殊值的特殊值指示信號(hào)時(shí),不再繼續(xù)進(jìn)行相關(guān)運(yùn)算。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的浮點(diǎn)乘法器,其中從兩個(gè)操作數(shù)尾數(shù)所截取的部分位的位數(shù)其中M為整數(shù),表示操作數(shù)尾數(shù)的位數(shù)。
5.一種用于神經(jīng)網(wǎng)絡(luò)處理器的浮點(diǎn)數(shù)乘法,該神經(jīng)網(wǎng)絡(luò)處理器包括根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的浮點(diǎn)乘法器,所述浮點(diǎn)數(shù)乘法包括:
步驟a1,由符號(hào)位運(yùn)算單元將待相乘的兩個(gè)操作數(shù)的符號(hào)位進(jìn)行異或運(yùn)算,得到這兩個(gè)操作數(shù)的乘積的符號(hào)位;
步驟a2,由階碼運(yùn)算單元將這兩個(gè)操作數(shù)的階碼進(jìn)行加法運(yùn)算,以得到所述乘積的階碼;
步驟a3,由尾數(shù)運(yùn)算單元判斷這兩個(gè)操作數(shù)的尾數(shù)高四位是否匹配,如果匹配,則選擇其中一個(gè)操作數(shù)的尾數(shù)作為乘積的尾數(shù),跳轉(zhuǎn)至步驟a6,如果不匹配,則繼續(xù)至步驟a4;
步驟a4,由尾數(shù)運(yùn)算單元判斷這兩個(gè)操作數(shù)的尾數(shù)高三位是否匹配,如果匹配,則從這兩個(gè)操作數(shù)尾數(shù)的高位開始截取部分位并在所截取的數(shù)的高位補(bǔ)1,對(duì)所得到的數(shù)進(jìn)行乘法運(yùn)算以得到乘積的尾數(shù),跳轉(zhuǎn)至步驟a6;如果不匹配,則繼續(xù)步驟a5;
步驟a5,由尾數(shù)運(yùn)算單元對(duì)這兩個(gè)操作數(shù)的尾數(shù)進(jìn)行乘法運(yùn)算以得到乘積的尾數(shù);
步驟a6,由規(guī)格化單元對(duì)所述乘積的尾數(shù)和階碼進(jìn)行規(guī)格化處理,并以所述乘積的符號(hào)位、經(jīng)規(guī)格化后的尾數(shù)與階碼作為最終輸出。
6.根據(jù)權(quán)利要求5所述的浮點(diǎn)數(shù)乘法,在步驟a1-a6之前還包括步驟a0,判斷待相乘的兩個(gè)操作數(shù)中是否存在特殊值,若有特殊值,則直接輸出預(yù)先設(shè)定的與所述特殊值對(duì)應(yīng)的結(jié)果值作為這兩個(gè)操作數(shù)的乘積,否則繼續(xù)至步驟a1。
7.根據(jù)權(quán)利要求6所述的浮點(diǎn)數(shù)乘法,在步驟a0中:
如果這兩個(gè)操作數(shù)中存在零值,則直接輸出零值;
如果這兩個(gè)操作數(shù)相同且均為浮點(diǎn)表示范圍內(nèi)的最大值或最小值,則直接輸出最大值;
如果這兩個(gè)操作數(shù)中一個(gè)為最大值且另一個(gè)為最小值,則直接輸出最小值;
如果這兩個(gè)操作數(shù)中僅存在一個(gè)最大值或最小值,則直接輸出該最大值或最小值。
8.根據(jù)權(quán)利要求5-7中任一項(xiàng)所述的浮點(diǎn)數(shù)乘法,其中從兩個(gè)操作數(shù)尾數(shù)所截取的部分位的位數(shù)其中M為整數(shù),表示操作數(shù)尾數(shù)的位數(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)科學(xué)院計(jì)算技術(shù)研究所,未經(jīng)中國(guó)科學(xué)院計(jì)算技術(shù)研究所許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710311728.X/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F7-00 通過(guò)待處理的數(shù)據(jù)的指令或內(nèi)容進(jìn)行運(yùn)算的數(shù)據(jù)處理的方法或裝置
G06F7-02 .比較數(shù)字值的
G06F7-06 .將單個(gè)記錄載體上的數(shù)據(jù)進(jìn)行排序、選擇、合并或比較的裝置
G06F7-22 .用于排序或合并在連續(xù)記錄載體
G06F7-38 .只利用數(shù)制表示,例如利用二進(jìn)制、三進(jìn)制、十進(jìn)制表示來(lái)完成計(jì)算的方法或裝置
G06F7-58 .隨機(jī)數(shù)或偽隨機(jī)數(shù)發(fā)生器
- 硬件神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法、計(jì)算裝置、軟硬件協(xié)作系統(tǒng)
- 生成較大神經(jīng)網(wǎng)絡(luò)
- 神經(jīng)網(wǎng)絡(luò)的生成方法、生成裝置和電子設(shè)備
- 一種舌診方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
- 脈沖神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法及相關(guān)轉(zhuǎn)換芯片
- 圖像處理方法、裝置、可讀存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備
- 一種適應(yīng)目標(biāo)數(shù)據(jù)集的網(wǎng)絡(luò)模型微調(diào)方法、系統(tǒng)、終端和存儲(chǔ)介質(zhì)
- 用于重構(gòu)人工神經(jīng)網(wǎng)絡(luò)的處理器及其操作方法、電氣設(shè)備
- 一種圖像神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化方法及裝置
- 浮點(diǎn)異常處理裝置
- 一種微處理器浮點(diǎn)部件驗(yàn)證裝置
- 一種計(jì)算機(jī)圖像處理系統(tǒng)
- 實(shí)現(xiàn)浮點(diǎn)數(shù)指數(shù)分析替換的裝置及方法
- 實(shí)現(xiàn)浮點(diǎn)數(shù)符號(hào)分析替換的裝置及方法
- 一種可變浮點(diǎn)數(shù)據(jù)微處理器
- 浮點(diǎn)數(shù)據(jù)類型轉(zhuǎn)換方法、裝置、存儲(chǔ)介質(zhì)及計(jì)算機(jī)設(shè)備
- 浮點(diǎn)計(jì)算方法及系統(tǒng)
- 浮點(diǎn)數(shù)處理器
- 一種浮點(diǎn)數(shù)據(jù)處理方法及裝置





