[發明專利]采布斯乘法的微處理器有效
| 申請號: | 201810052753.5 | 申請日: | 2018-01-19 |
| 公開(公告)號: | CN108288091B | 公開(公告)日: | 2020-09-11 |
| 發明(設計)人: | 陳靜;李曉陽;宋娟麗;黃振華;王惟林;賴瑾 | 申請(專利權)人: | 上海兆芯集成電路有限公司 |
| 主分類號: | G06N3/063 | 分類號: | G06N3/063 |
| 代理公司: | 北京市柳沈律師事務所 11105 | 代理人: | 徐協成 |
| 地址: | 上海市張江高科技*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 采布斯 乘法 微處理器 | ||
本發明提供一種采布斯乘法的微處理器。該微處理器包括一第一空間、一第二空間以及一數據路徑。該數據路徑用以執行一微指令。該微指令的一第一字段用于指示該數據路徑自該第一空間取得一被乘數供應數據。該微指令的一第二字段用于指示該數據路徑自該第二空間取得一乘數供應數據。該微指令的一第三字段用于指示該數據路徑的一數據位寬。該數據路徑對該乘數供應數據進行取數獲得多個布斯乘法取數。該數據路徑依據該數據位寬將該被乘數供應數據劃分為多個被乘數,并對該等被乘數與該等布斯乘法取數進行布斯乘法以產生多個部分乘積。該數據路徑更根據該數據位寬從該等部分乘積中選擇一部分進行移位相加以產生多個乘積。
技術領域
本發明涉及處理器,特別涉及實現類神經網絡算法的神經網絡處理器或加速器。
背景技術
人工智能技術常使用類神經網絡建立機器學習架構。類神經網絡涉及復雜且大量的運算,尤其涉及大量的張量(tensor)乘法和乘加運算。如何根據神經網絡算法的特殊性,設計適用于神經網絡算法的處理器架構,為本技術領域一項重要課題。
發明內容
根據本申請一種實施方式所實現的一種微處理器,包括一第一空間、一第二空間以及一數據路徑。該數據路徑執行一微指令。該微指令的一第一字段用于指示該數據路徑自該第一空間取得一被乘數供應數據。該微指令的一第二字段用于指示該數據路徑自該第二空間取得一乘數供應數據。該微指令的一第三字段用于指示該數據路徑的一數據位寬。該數據路徑依據該數據位寬將該被乘數供應數據劃分為多個被乘數,并對該等被乘數與該等布斯乘法取數進行布斯乘法以產生多個部分乘積。該數據路徑更根據該數據位寬從該等部分乘積中選擇一部分進行移位相加以產生多個乘積。
本申請微處理器實現兼容多種位寬的乘法運算硬件。
下文特舉實施例,并配合所附圖示,詳細說明本發明內容。
附圖說明
圖1根據本申請一種實施方式圖解一微處理器100為類神經網絡演算所提供的硬件架構;
圖2圖解該數據位寬調整器108的一種實施方式;
圖3為流程圖,根據本申請一種實施方式說明差值監控模塊216以及小數位寬FL調整模塊204的運作邏輯;
圖4為流程圖,根據本申請一種實施方式說明判斷模塊224以及字長WL調整208的運作邏輯;
圖5根據本申請一種實施方式圖解一微指令(μop)的格式;
圖6為方塊圖,根據本申請一種實施方式圖解一微處理器600,其中聚焦于宏指令轉換為微指令的技術;
圖7根據本申請一種實施方式圖解微碼解碼有限狀態機612如何解碼一宏指令以及所對應的多個微指令如何執行的流程圖;
圖8特別圖解一二階張量(即矩陣)相乘所對應的多個微指令如何執行;
圖9圖解圖5微指令(μop)字段A與B所指示的各32位數據的各種數據位寬(WL);
圖10根據本申請一種實施方式圖解乘加運算的一數據路徑1000;
圖11以字長WL為8位為例,說明乘加運算所獲得的數據M以及S;
圖12A-1、圖12A-2、圖12B-1以及圖12B-2因應字長WL不定,圖解32位數據B的各種三位內容bn+1bnbn-1;
圖13根據本申請一種實施方式圖解乘法器1002的硬件架構;且
圖14根據本申請一種實施方式圖解數據路徑1000執行的一微指令(可為SIMD微指令)1400。
【符號說明】
100~處理器;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海兆芯集成電路有限公司,未經上海兆芯集成電路有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810052753.5/2.html,轉載請聲明來源鉆瓜專利網。





