[發明專利]一種用于執行多個浮點數相加的裝置及方法有效
| 申請號: | 201610261902.X | 申請日: | 2016-04-25 |
| 公開(公告)號: | CN107305485B | 公開(公告)日: | 2021-06-08 |
| 發明(設計)人: | 郭崎;周聖元;李震;陳云霽;陳天石 | 申請(專利權)人: | 中科寒武紀科技股份有限公司 |
| 主分類號: | G06F7/575 | 分類號: | G06F7/575 |
| 代理公司: | 中科專利商標代理有限責任公司 11021 | 代理人: | 任巖 |
| 地址: | 100190 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 執行 浮點 相加 裝置 方法 | ||
本公開提供了一種執行多個浮點數相加的裝置和方法,裝置包括預處理模塊、加法運算模塊及規格化處理模塊,預處理模塊對多個浮點數進行預處理,以使多個浮點數的指數位和符號位一致,加法運算模塊對預處理后的多個浮點數相加,得到累加結果及該累加結果的待移位值,規格化處理模塊根據待移位值對累加結果的符號位、指數位和尾數位進行移位,得到規格化的累加結果。本公開在執行多個浮點數相加時具有運算延遲低、結果精度損失小的優點。
技術領域
本公開提供一種用于執行多個浮點數相加的裝置及方法,可用于圖像處理器、數字處理器、智能設備及片上網絡數據運算等。
背景技術
隨著大數據時代的來臨,數據的運算量也隨之大幅增加,對運算的速度也提出了更高的要求。無論是圖像還是數字等處理器,都必須滿足低延遲、準確度高的運算要求。浮點數加法,作為最基本且最常用的浮點數運算之一,如何加速此類運算,也顯得尤為重要,并引起了廣泛的討論和研究。
現有的操作數相加的加速裝置,主要分為兩種,串行進位加法樹和進位保存加法樹。
圖1示出了串行進位加法樹的結構,即采用二叉樹的結構,對待運算的操作數兩兩相加,而后向上傳遞,直至得到最終結果。顯然,該結構支持多浮點數并行相加,加速了加法運算,但是在進位傳播時,需要消耗大量的時鐘延遲,而且,運算結果和操作數的順序也有一定的關系,運算結果的精度損失較大。
圖2示出了進位保存加法樹的結構,即利用華萊士樹的結構,將由每一級全加器的進位生成的部分連接到下一級的高位,通過連線實現進位傳遞,避免復雜的進位傳遞邏輯,降低了進位傳遞的延遲。然而,這種方法并不能直接用于浮點數的加法,并且,操作數的順序不同,也可能帶來計算誤差。
另外,常用算法中,大多將浮點數加法和浮點數的累加混合在一起,這種混合操作,就要求運算器必需同時支持這兩種運算,并且運算結果和給定的操作數順序無關。
發明內容
(一)要解決的技術問題
本公開的目的在于,提供一種能夠執行多個浮點數相加的裝置和方法,具有運算延遲低、結果精度損失小的優點。
(二)技術方案
本公開提供一種用于執行多個浮點數相加的裝置,浮點數包括符號位、指數位和尾數位,裝置包括:
加法運算模塊,用于對多個浮點數相加,得到累加結果及該累加結果的待移位值,所述累加結果包括符號位、指數位和尾數位;
規格化處理模塊,用于根據待移位值對所述累加結果的符號位、指數位和尾數位進行移位,得到規格化的累加結果。
進一步,裝置還包括:
預處理模塊,用于對所述多個浮點數進行預處理,以使多個浮點數的指數位和符號位一致。
進一步,預處理模塊包括:
比較選擇模塊,用于對所述多個浮點數的指數位進行兩兩比較,選擇出最大的指數位;
計算移位模塊,用于根據每個浮點數和具有最大指數位的浮點數的指數位的關系來求得每個浮點數需要進行邏輯移位的位數n,并對相應浮點數的尾數位進行邏輯移位,以使每一個浮點數的指數位均等于所述最大的指數位。
進一步,在比較選擇模塊中,以二叉樹的形式對所述多個浮點數的指數位進行兩兩比較。
進一步,在所述計算移位模塊中,令每一個浮點數的符號位與指數位最大的浮點數的符號位一致,其中,浮點數在改變符號位時,對其尾數位取補碼。
進一步,計算移位模塊求得邏輯移位的位數n,包括:
計算最大的指數位和待邏輯移位的浮點數的指數位的差值Δe;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中科寒武紀科技股份有限公司,未經中科寒武紀科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610261902.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種非線性函數運算裝置及方法
- 下一篇:一種神經網絡maxout層計算裝置





