[發明專利]一種64比特浮點乘加器及其浮點運算流水節拍處理方法有效
| 申請號: | 200910093047.6 | 申請日: | 2009-09-27 |
| 公開(公告)號: | CN101692202A | 公開(公告)日: | 2010-04-07 |
| 發明(設計)人: | 齊子初;郭崎;胡偉武 | 申請(專利權)人: | 北京龍芯中科技術服務中心有限公司 |
| 主分類號: | G06F7/57 | 分類號: | G06F7/57 |
| 代理公司: | 北京市隆安律師事務所 11323 | 代理人: | 史霞 |
| 地址: | 100012 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 64 比特 浮點 乘加器 及其 運算 流水 節拍 處理 方法 | ||
1.一種64比特雙精度雙通路浮點乘加器,實現形式為(A×B)+C的 浮點乘加運算,其特征在于,包括第一指數處理單元和第一符號處理單元 和第二指數處理單元、第二符號處理單元、指數以及符號選擇器;
所述第一指數處理單元,用于計算浮點乘加和浮點乘法運算時的指數 差;
所述第一符號處理單元,用于判斷浮點乘加運算和浮點乘法運算結果 的符號以及是否做有效減法;
所述第二指數處理單元,用于對只做加法操作時操作數的指數進行處 理;
所述第二符號處理單元,用于對只作加法操作時操作數的符號進行處 理;
所述指數以及符號選擇器,用于選擇第一指數處理單元和第一符號處 理單元的結果,或者選擇第二指數處理單元和第二符號處理單元的結果; 并判斷指數差,當指數差等于0、或者等于1、或者等于2、或者等于-1, 且做有效減法時,通過近路徑進行運算,否則通過遠路徑進行運算。
2.根據權利要求1所述的浮點乘加器,其特征在于,其按照時序劃 分為4個流水節拍,根據順序對4個流水節拍進行功能劃分,在第一流水 節拍中,除包括所述第一指數處理單元、所述第一符號處理單元外,還包 括基4的波茨編碼器、27∶2的乘法壓縮樹,其中:
所述基4的波茨編碼器,用于對操作數B的尾數進行編碼,然后將編 碼的結果與操作數A的尾數相乘得到27個部分積,所述27個部分積送到 所述27∶2的乘法壓縮樹中;
所述27∶2的乘法壓縮樹,用于對操作數A×B的所述27個部分積進 行壓縮得到兩個標記為carry,sum的106比特數據。
3.根據權利要求2所述的浮點乘加器,其特征在于,在第二個流水 節拍中,除包括所述第二符號處理單元、所述第二指數處理單元、所述指 數以及符號選擇器外,還包括3bit的對齊移位器、反相器取反單元、57bit 3∶2乘法進位保留加法器壓縮樹、57bit首位0的個數預測器、57bit 雙全加器、57bit取反全加器、第一選擇器、第二選擇器、106比特全加 器和51比特補碼器、51比特對齊移位器、第三選擇器,其中:
所述3bit的對齊移位器,用于對操作數C的53比特尾數,根據指數 差d的值進行移位;
所述反相器取反單元,用于對所述3bit的對齊移位器的56比特數據 進行取反并將其擴充1位符號位得到57bit的數據;所述數據sum和carry 的高56bit也高位擴充1位符號位0得到57bit的數據,將這3組57bit 的數據輸入到所述57bit3∶2乘法進位保留加法器壓縮樹;
所述57bit3∶2乘法進位保留加法器壓縮樹,用于對所述反相器取 反單元輸出的3組57bit的數據進行壓縮,得到2個57bit帶符號的結果;
所述57bit首位0的個數預測器,用于對所述57bit3∶2乘法進 位保留加法器壓縮樹輸出的2個帶符號的結果進行首0或者首1的預測, 預測結果用一個序列表示,該序列標記為f;如果所述57bit的首位0 的個數預測器的2個輸入數據相加為正數,那么f輸出的是首0的位置, 如果所述57bit的首位0的個數預測器的2個輸入數據相加為負數,那 么f輸出的是首1的位置;
所述57bit雙全加器,用于對所述57bit3∶2乘法進位保留加法 器壓縮樹的2個57bit結果進行相加,輸出這兩個輸入相加的結果,標記 為sumpos,以及這兩個輸入相加再加1的結果,標記為sumpos1;
所述57bit取反雙全加器,用于對所述57bit3∶2乘法進位保留 加法器壓縮樹的2個57bit結果先取反再相加,輸出取反后相加的結果, 標記為suminv,以及相加再加1的結果,標記為suminv1;
所述第一選擇器,用于在只做浮點加法時對乘法的結果進行旁路,當 只做浮點加法時直接輸出操作數A的尾數,否則輸出所述乘法的結果的 sum_sel;
所述第二選擇器,用于在只做浮點加法時對乘法的結果進行旁路,當 只做浮點加法時直接輸出數據0值,否則輸出所述乘法結果的carry_sel;
所述106bit全加器和51bit補碼器,用于對所述第一選擇器和所述第 二選擇器輸出的2個106比特的結果sum_sel和carry_sel進行相加并對低 51比特進行取補,輸出一個106比特乘法結果,標記為MUL_res,低51 比特取補的結果標記為MUL51C,1位低51比特的進位,標記位carry51,1 位51比特取補后的進位結果,標記為carry51C,其中MUL51C、carry51、 carry51C和MUL_res的低51比特用于CLOSE路徑中,而106比特乘法結 果用于FAR路徑中;
所述51比特對齊移位器,用于對操作數C的尾數根據所述指數差- d的值進行最多51bit右移操作,得到104比特的結果;
所述第三選擇器,用于對所述51比特對齊移位器的輸出以及操作數 C進行選擇,當指數差d≤0時選擇所述51比特對齊移位器的輸出;當指 數差d>0時直接輸出操作數C。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京龍芯中科技術服務中心有限公司,未經北京龍芯中科技術服務中心有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910093047.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種訪問存儲器的方法、系統和總線仲裁裝置
- 下一篇:一種清洗晶片容器的方法





