発明の詳細な説明【技術分野】 【0001】 本発明は、人工知能システムに関し、より詳しくは、浮動小数点型のデータに対する累積演算を遂行するように構成されたアクセラレータおよびその動作方法に関する。 続きを表示(約 2,500 文字)【背景技術】 【0002】 人工知能(AI:Artificial Intelligence)は、人間の学習、推論、知覚のような多様な能力を人工的に実現するコンピュータサイエンスの一分野である。最近、人工知能は、自然言語の理解、自然言語の翻訳、ロボティクス、人工視覚、問題解決、学習、知識の獲得、認知科学のような多様な分野で広く活用される。 【0003】 人工知能は、多様なアルゴリズムに基づいて実現されている。一例として、ニューラルネットワーク(neural network)は、ノード(node)およびシナプス(synapse)が繰り返し連結された複雑なネットワークから構成される。現在のノードから次のノードにデータが移動する過程で、対応するシナプスに応じて多様な信号処理が発生することができ、このような信号処理過程はレイヤと呼ばれる。すなわち、ニューラルネットワークは、複雑に相互連結された多様なレイヤを含み得る。ニューラルネットワークに含まれる多様なレイヤは大量の演算を必要とすることから、これを最適化するための多様な方法が研究されている。 【先行技術文献】 【特許文献】 【0004】 米国特許出願公開第2021/0182024号明細書 米国特許第5,021,986号明細書 米国特許出願公開第2023/0008856号明細書 公開特許第2001-043067号明細書 米国特許出願公開第2021/0312012号明細書 米国特許第6,363,476号明細書 米国特許第9,274,750号明細書 【非特許文献】 【0005】 「WINNING BOTH THE ACCURACY OF FLOATING POINT ACTIVATION AND THE SIMPLICITY OF INTEGER ARITHMETIC」Yulhwa Kim Et al., Published as a conference paper at ICLR 2023 【発明の概要】 【発明が解決しようとする課題】 【0006】 本発明は、上記従来技術に鑑みてなされたものであって、本発明の目的は、向上した信頼性および向上した性能を有する、浮動小数点型のデータに対する累積演算を遂行するように構成されたアクセラレータおよびその動作方法を提供することにある。 【課題を解決するための手段】 【0007】 本発明の一実施形態によれば、複数のデータに対する累積演算を遂行するように構成されたアクセラレータの動作方法は、前記複数のデータのうち少なくとも2つの第1データをロードする段階と、前記少なくとも2つの第1データの指数のうち最大値である第1指数を探索する段階と、前記第1指数に基づいて、前記少なくとも2つの第1データの第1仮数に対するビットシフトを遂行して整列された第1仮数を生成し、前記整列された第1仮数に対する累積演算を遂行して第1累積値を生成する段階と、前記複数のデータのうち少なくとも2つの第2データをロードする段階と、前記少なくとも2つの第2データの指数のうち最大値である第2指数を探索し、前記第2指数は前記第1指数よりも大きい段階と、前記第2指数と前記第1指数との差に基づいて前記第1累積値に対するビットシフトを遂行して第1整列された累積値を生成し、前記第2指数に基づいて前記少なくとも2つの第2データの第2仮数に対するビットシフトを遂行して整列された第2仮数を生成し、前記整列された第2仮数および前記第1整列された累積値に対する累積演算を遂行して第2累積値を生成する段階と、を備え、前記複数のデータのそれぞれは浮動小数点型を有する。 【0008】 本発明の一実施形態によれば、複数のデータに対する累積演算を遂行するように構成されたアクセラレータは、前記複数のデータを格納するように構成されたユニファイドバッファ部と、前記複数のデータのうち少なくとも2つの第1データをロードし、前記少なくとも2つの第1データの指数のうち最大値である第1最大指数を探索し、前記第1最大指数および前の最大指数に基づいて、前記少なくとも2つの第1データの仮数に対するビットシフトを遂行して、第1整列された仮数を生成するように構成された事前整列部と、前の最大指数および前記第1最大指数に基づいて、前の累積値に対するビットシフトを遂行して整列された累積値を生成し、前記整列された累積値および前記第1仮数に対する累積演算を遂行するように構成された複数の処理部と、前記第1最大指数に基づいて前記複数の処理部の演算結果に対する正規化を遂行して出力値を生成するように構成された正規化部と、を備え、前記複数のデータのそれぞれは、浮動小数点型である。 【0009】 本発明の一実施形態によれば、複数のデータに対する累積演算を遂行するように構成されたアクセラレータの動作方法は、複数のデータのうち少なくとも2つのデータに対する累積演算を遂行し、第0最大指数および第0累積値を生成する段階と、前記複数のデータのうち、第1データの第1指数が前記第0最大指数より大きい場合、前記第1指数および前記第0最大指数に基づいて前記第0累積値に対するビットシフトを遂行して第0整列された累積値を生成する段階と、前記第1データの第1仮数および前記第0整列された累積値に対する累積演算を遂行して第1累積値を生成する段階と、を備え、前記複数のデータのそれぞれは、浮動小数点型を有する。 【発明の効果】 【0010】 本発明によれば、向上した信頼性および向上した性能を有する、浮動小数点型のデータに対する累積演算を遂行するように構成されたアクセラレータおよびその動作方法が提供される。 【図面の簡単な説明】 (【0011】以降は省略されています) この特許をJ-PlatPatで参照する