"/>
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    硬件加速器和用于在硬件加速器中計算的方法技術

    技術編號:36701225 閱讀:34 留言:0更新日期:2023-03-01 09:18
    公開了硬件加速器和用于在硬件加速器中計算的方法。所述用于計算的方法包括:接收被表示為浮點的多個輸入數據;通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬;以及執行具有已調整的位寬的輸入數據之間的運算。位寬的輸入數據之間的運算。位寬的輸入數據之間的運算。

    【技術實現步驟摘要】
    硬件加速器和用于在硬件加速器中計算的方法
    [0001]本申請要求于2021年8月23日在韓國知識產權局提交的第10
    ?
    2021
    ?
    0111118號韓國專利申請的權益,所述韓國專利申請的全部公開出于所有目的通過引用包含于此。


    [0002]下面的描述涉及一種硬件加速器和用于在硬件加速器中計算的方法。

    技術介紹

    [0003]人工神經網絡可通過參考計算架構而被實現。各種類型的電子系統可使用人工神經網絡分析輸入數據并提取有效信息。用于處理人工神經網絡的設備可能需要針對復雜的輸入數據進行大量的計算。這樣的技術可能無法有效地處理與用于通過使用人工神經網絡分析大量的輸入數據來提取期望的信息的與人工神經網絡相關的運算。

    技術實現思路

    [0004]提供
    技術實現思路
    以簡化的形式介紹在下面的具體實施方式中進一步描述的構思的選擇。本
    技術實現思路
    不意在確定要求保護的主題的關鍵特征或必要特征,也不意在用于幫助確定要求保護的主題的范圍。
    [0005]在一個總體方面,一種用于在硬件加速器中計算的方法包括:通過動態浮點轉換器接收被表示為浮點的多個輸入數據;通過動態浮點轉換器通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬;以及通過混合精度計算單元執行具有已調整的位寬的輸入數據之間的運算。
    [0006]針對每個輸入數據,通過動態浮點轉換器調整尾數的位寬的步驟可包括:與輸入數據的大小成比例地調整尾數的位寬。
    [0007]針對每個輸入數據,通過動態浮點轉換器調整尾數的位寬的步驟可包括:通過比較器將輸入數據與閾值進行比較;通過控制器基于比較的結果來調整尾數的位寬;以及通過寄存器存儲具有已調整的位寬的輸入數據和關于位寬的信息。
    [0008]閾值基于輸入數據的分布和容許誤差范圍被確定。
    [0009]所述方法可包括:接收所述多個輸入數據的分布;以及通過控制器基于所述多個輸入數據的分布確定對應于所述多個輸入數據中的每個輸入數據的閾值。
    [0010]執行所述運算的步驟可包括:控制具有已調整的位寬的輸入數據被輸入到的運算器的分組和時序。
    [0011]執行所述運算的步驟可包括:基于每個輸入數據的已調整的位寬,確定由預設數量的運算器執行的運算的周期的數量;以及基于確定的周期的數量將具有已調整的位寬的輸入數據輸入到預設數量的運算器。
    [0012]確定運算的周期的數量的步驟可包括:基于每個輸入數據的尾數的已調整的位寬以及預設數量的運算器在單個周期中能處理的位的數量來確定運算的周期的數量。
    [0013]每個運算器可包括:乘法器,被配置為:執行輸入數據的尾數的整數乘法;移位器,
    被配置為:對乘法器的結果進行移位;以及累加器,被配置為:將移位結果累加。
    [0014]執行所述運算的步驟可包括:基于每個輸入數據的尾數的已調整的位寬,確定用于在預設數量的運算周期內執行運算的運算器的數量;以及基于確定的運算器的數量,將具有已調整的位寬的輸入數據輸入到運算器。
    [0015]確定運算器的數量的步驟可包括:基于每個輸入數據的尾數的已調整的位寬以及運算器在單個周期中能處理的位的數量來確定運算器的數量。
    [0016]調整尾數的位寬的步驟可包括:與響應于指數大于或等于閾值相比,響應于指數小于閾值而向尾數分配較小的位寬。
    [0017]執行所述運算的步驟包括:使用運算器,并且尾數的已調整的位寬小于或等于運算器在單個周期中能處理的位的數量。
    [0018]調整尾數的位寬的步驟可包括:響應于指數大于或等于閾值而保持尾數的位寬。
    [0019]閾值包括多個閾值范圍,每個閾值范圍對應于相應的位寬,并且調整尾數的位寬的步驟可包括:響應于輸入數據對應于所述多個閾值范圍中的一個閾值范圍,將尾數的位寬調整為與所述多個閾值范圍中的所述一個閾值范圍對應的位寬。
    [0020]執行所述運算的步驟可包括:使用運算器執行乘法運算和累加運算。
    [0021]在另一總體方面,一種硬件加速器包括:動態浮點轉換器,被配置為:接收被表示為浮點的多個輸入數據,通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬;混合精度計算單元,包括一個或者多個運算器,所述一個或多個運算器被配置為:執行具有已調整的位寬的輸入數據之間的運算;以及控制單元。
    [0022]為了調整尾數的位寬,動態浮點轉換器可被配置為:針對每個輸入數據,與輸入數據的大小成比例地調整尾數的位寬。
    [0023]為了調整尾數的位寬,動態浮點轉換器可包括:比較器,被配置為:針對每個輸入數據,將輸入數據與閾值進行比較;控制器,被配置為:基于比較的結果來調整尾數的位寬;以及寄存器,被配置為:存儲具有已調整的位寬的輸入數據和關于位寬的信息。
    [0024]閾值基于輸入數據的分布和容許誤差范圍被確定。
    [0025]動態浮點轉換器可被配置為:接收所述多個輸入數據的分布;其中,控制器還可被配置為:基于所述多個輸入數據的分布確定對應于所述多個輸入數據中的每個輸入數據的閾值。
    [0026]為了執行所述運算,控制單元可被配置為:控制具有已調整的位寬的輸入數據被輸入到的包括在混合精度計算單元中的運算器的分組和時序。
    [0027]為了執行所述運算,控制單元可被配置為:基于每個輸入數據的尾數的已調整的位寬,確定由包括在混合精度計算單元中的預設數量的運算器執行的運算的周期的數量;以及基于確定的周期的數量將具有已調整的位寬的輸入數據輸入到預設數量的運算器。
    [0028]為了確定所述運算的周期的數量,控制單元可被配置為:基于每個輸入數據的尾數的已調整的位寬以及預設數量的運算器在單個周期中能處理的位的數量來確定運算的周期的數量。
    [0029]每個運算器可包括:乘法器,被配置為:執行輸入數據的尾數的整數乘法;移位器,被配置為:對乘法器的結果進行移位;以及累加器,被配置為:將移位結果累加。
    [0030]為了執行所述運算,控制單元可被配置為:基于每個輸入數據的尾數的已調整的
    位寬,確定用于在預設數量的運算周期內執行運算的運算器的數量;以及基于確定的運算器的數量,將具有已調整的位寬的輸入數據輸入到確定的數量的運算器。
    [0031]為了確定運算器的數量,控制單元可被配置為:基于每個輸入數據的尾數的已調整的位寬以及確定的數量的運算器在單個周期中能處理的位的數量來確定運算器的數量。
    [0032]在另一總體方面,一種用于計算的設備包括:中央處理裝置,被配置為:接收被表示為浮點的多個輸入數據的分布,以及基于所述多個輸入數據的分布確定對應于所述多個輸入數據中的每個輸入數據的閾值;以及硬件加速器,包括:動態浮點轉換器,被配置為:接收所述多個輸入數據,通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬,以及混合精度計算單元,包括一個或者多個運算器,所述一個或多個運算器被配置為:執行具有已調整的位寬的輸入數據之間的運算。
    ...

    【技術保護點】

    【技術特征摘要】
    1.一種用于在硬件加速器中計算的方法,包括:通過動態浮點轉換器接收被表示為浮點的多個輸入數據;通過動態浮點轉換器通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬;以及通過混合精度計算單元執行具有已調整的位寬的輸入數據之間的運算。2.根據權利要求1所述的方法,其中,針對每個輸入數據,通過動態浮點轉換器調整尾數的位寬的步驟包括:與輸入數據的大小成比例地調整尾數的位寬。3.根據權利要求1所述的方法,其中,針對每個輸入數據,通過動態浮點轉換器調整尾數的位寬的步驟包括:通過比較器將輸入數據與閾值進行比較;通過控制器基于比較的結果來調整尾數的位寬;以及通過寄存器存儲具有已調整的位寬的輸入數據和關于位寬的信息。4.根據權利要求3所述的方法,其中,閾值基于輸入數據的分布和容許誤差范圍被確定。5.根據權利要求1所述的方法,還包括:接收所述多個輸入數據的分布;以及通過控制器基于所述多個輸入數據的分布確定對應于所述多個輸入數據中的每個輸入數據的閾值。6.根據權利要求1所述的方法,其中,執行所述運算的步驟包括:控制具有已調整的位寬的輸入數據被輸入到的運算器的分組和時序。7.根據權利要求1至權利要求6中的任意一項所述的方法,其中,執行所述運算的步驟包括:基于每個輸入數據的已調整的位寬,確定由預設數量的運算器執行的運算的周期的數量;以及基于確定的周期的數量將具有已調整的位寬的輸入數據輸入到預設數量的運算器。8.根據權利要求7所述的方法,其中,確定運算的周期的數量的步驟包括:基于每個輸入數據的尾數的已調整的位寬以及預設數量的運算器在單個周期中能處理的位的數量來確定運算的周期的數量。9.根據權利要求7所述的方法,其中,每個運算器包括:乘法器,被配置為:執行輸入數據的尾數的整數乘法;移位器,被配置為:對乘法器的結果進行移位;以及累加器,被配置為:將移位結果累加。10.根據權利要求1至權利要求6中的任意一項所述的方法,其中,執行所述運算的步驟包括:基于每個輸入數據的尾數的已調整的位寬,確定用于在預設數量的運算周期內執行運算的運算器的數量;以及基于確定的運算器的數量,將具有已調整的位寬的輸入數據輸入到運算器。11.根據權利要求10所述的方法,其中,確定運算器的數量的步驟包括:基于每個輸入數據的尾數的已調整的位寬以及運算器在單個周期中能處理的位的數量來確定運算器的
    數量。12.根據權利要求3所述的方法,其中,調整尾數的位寬的步驟包括:與響應于指數大于或等于閾值相比,響應于指數小于閾值而向尾數分配較小的位寬。13.根據權利要求1所述的方法,其中,執行所述運算的步驟包括:使用運算器,并且尾數的已調整的位寬小于或等于運算器在單個周期中能處理的位的數量。14.根據權利要求3所述的方法,其中,調整尾數的位寬的步驟包括:響應于指數大于或等于閾值而保持尾數的位寬。15.根據權利要求3所述的方法,其中,閾值包括多個閾值范圍,每個閾值范圍對應于相應的位寬,并且調整尾數的位寬的步驟包括:響應于輸入數據對應于所述多個閾值范圍中的一個閾值范圍,將尾數的位寬調整為與所述多個閾值范圍中的所述一個閾值范圍對應的位寬。16.根據權利要求1所述的方法,其中,執行所述運算的步驟包括:使用運算器執行乘法運算和累加運算。17.一種硬件加速器,包括:動態浮點轉換器,被配置為:接收被表示為浮點的多個輸入數據,通過基于每個輸入數據的指數的大小對每個輸入數據的尾數執行掩蔽來調整尾數的位寬;混合精度計算單元,包括一個或者多個運算器,所述一個或多個運算器被配置為:執行具有已調整的位寬的輸入數據之間的運算;以及控制單元。18.根據權利...

    【專利技術屬性】
    技術研發人員:金東英
    申請(專利權)人:三星電子株式會社
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 色综合无码AV网站| 性无码免费一区二区三区在线| 亚洲啪啪AV无码片| 亚洲AV日韩AV永久无码久久| 永久免费av无码不卡在线观看 | 一本大道无码人妻精品专区| 亚洲国产成人无码av在线播放 | 亚洲无码日韩精品第一页| 久久久久无码精品国产| 在线a亚洲v天堂网2019无码| 无码人妻av一区二区三区蜜臀| 亚洲精品无码久久久久sm| 丰满亚洲大尺度无码无码专线| 无码国产精品一区二区免费16 | 毛片一区二区三区无码| 亚洲中文字幕久久精品无码喷水| 无码精品一区二区三区| 中文字幕无码不卡免费视频| 亚洲精品无码久久久久去q | 亚洲av永久无码一区二区三区| 亚洲日韩中文无码久久| 无码视频在线播放一二三区| 亚洲a∨无码精品色午夜| 亚洲一区二区三区国产精品无码| 中文人妻无码一区二区三区| 成人免费一区二区无码视频 | 中文字幕av无码无卡免费| 亚洲av无码一区二区三区乱子伦| 国产亚洲精久久久久久无码77777 国产在线无码精品电影网 | 无码人妻精品一区二区三区久久| 人妻无码中文字幕| 自慰系列无码专区| 欧日韩国产无码专区| 国产精品无码av片在线观看播| 亚洲AV无码AV男人的天堂不卡| 无码国产精品一区二区免费式影视| 久久久久琪琪去精品色无码| 无码免费一区二区三区免费播放| 亚洲AV无码久久精品成人 | 91精品无码久久久久久五月天| 久久精品中文字幕无码|