TOP
|
特許
|
意匠
|
商標
特許ウォッチ
Twitter
他の特許を見る
10個以上の画像は省略されています。
公開番号
2025115357
公報種別
公開特許公報(A)
公開日
2025-08-06
出願番号
2024181481
出願日
2024-10-17
発明の名称
乗算および累積(MAC)演算器およびこれを含む行列乗算器
出願人
三星電子株式会社
,
Samsung Electronics Co.,Ltd.
,
ネイバー コーポレーション
,
NAVER Corporation
代理人
弁理士法人ITOH
主分類
G06F
17/16 20060101AFI20250730BHJP(計算;計数)
要約
【課題】 乗算および累積(MAC)演算器およびこれを含む行列乗算器を提供する。
【解決手段】 本開示の実施例による行列乗算器は、第1入力行列と複数のスケール係数(scale factor)とに基づいてスケーリングされた入力行列を生成する入力ベクトルスケーラと、スケーリングされた入力行列のデータタイプを固定小数点に変換し、固定小数点入力行列を生成する第1データタイプ変換器と、固定小数点入力行列および複数のバイナリ(binary)ベクトルを受信し、固定小数点入力行列および複数のバイナリベクトルに基づいて固定小数点出力行列を生成し、第1入力行列および第2入力行列を受信し、第1入力行列および第2入力行列に基づいて第1出力行列を生成する乗算および累積演算器アレイと、固定小数点出力行列のデータタイプを浮動小数点に変換し、第2出力行列を生成する第2データタイプ変換器とを含む。
【選択図】 図1
特許請求の範囲
【請求項1】
第1入力行列と複数のスケール係数(scale factor)とに基づいてスケーリングされた入力行列を生成する入力ベクトルスケーラと、
前記スケーリングされた入力行列のデータタイプを固定小数点に変換し、固定小数点入力行列を生成する第1データタイプ変換器と、
前記固定小数点入力行列および複数のバイナリ(binary)ベクトルを受信し、前記固定小数点入力行列および前記複数のバイナリベクトルに基づいて固定小数点出力行列を生成し、前記第1入力行列および第2入力行列を受信し、前記第1入力行列および前記第2入力行列に基づいて第1出力行列を生成する乗算および累積演算器アレイと、
前記固定小数点出力行列のデータタイプを浮動小数点に変換し、第2出力行列を生成する第2データタイプ変換器と
を含む行列乗算器。
続きを表示(約 2,200 文字)
【請求項2】
外部から前記第2入力行列と、重み(weight)行列としての前記複数のスケール係数および前記複数のバイナリベクトルとを受信し、前記入力ベクトルスケーラに前記複数のスケール係数を順次に提供し、前記乗算および累積演算器アレイに前記第2入力行列と前記複数のバイナリベクトルとを順次に提供し、前記乗算および累積演算器アレイおよび前記第2データタイプ変換器を制御する第1信号を提供する入力パーサ(input parser)
をさらに含む、請求項1に記載の行列乗算器。
【請求項3】
前記乗算および累積演算器アレイは、
前記第1入力行列の第1入力ベクトルおよび前記第2入力行列の第1入力ベクトルを受信し、前記固定小数点入力行列の第1固定小数点入力ベクトルおよび前記複数のバイナリベクトルの第1バイナリ値を受信する第1乗算および累積演算器を含む、
請求項2に記載の行列乗算器。
【請求項4】
前記第1乗算および累積演算器は、
第1レベルの第1信号に基づいて、前記複数のバイナリベクトルの第1バイナリ値と前記第1固定小数点入力ベクトルに対する乗算演算を行い、前記固定小数点出力行列の第1固定小数点出力エレメントを生成し、
前記第1レベルとは異なる第2レベルの第1信号に基づいて、前記第1入力行列の第1入力ベクトルと前記第2入力行列の第1入力ベクトルに対する乗算演算を行い、前記第1出力行列の第1出力エレメントを生成する、
請求項3に記載の行列乗算器。
【請求項5】
前記第1データタイプ変換器は、
前記スケーリングされた入力行列の第1のスケーリングされた入力ベクトルを受信する第1データタイプ変換回路を含み、
前記第1データタイプ変換回路は、前記第1のスケーリングされた入力ベクトルに含まれている第1の複数のスケーリングされた入力エレメントそれぞれの指数(exponents)のうち最も大きい第1指数を抽出し、前記第1指数に基づいて前記第1の複数のスケーリングされた入力エレメントそれぞれのデータタイプを固定小数点に変換する、請求項2に記載の行列乗算器。
【請求項6】
前記第2データタイプ変換器は、
前記固定小数点出力行列の第1固定小数点出力ベクトルと前記第1レベルの第1信号とを受信し、前記第1指数に基づいて前記第1固定小数点出力ベクトルに含まれている第1の複数の固定小数点出力エレメントそれぞれのデータタイプを浮動小数点に変換する、請求項5に記載の行列乗算器。
【請求項7】
第1データタイプの第1データ、および前記第1データタイプとは異なる第2データタイプの第2データの仮数データを受信し、第1信号に基づいて前記第1データを出力し、前記第1信号とは異なる第2信号に基づいて前記第2データの仮数データを出力する第1マルチプレクサと、
複数のバイナリ値を受信し、前記複数のバイナリ値のうち第1バイナリ値と前記第1データとを論理積演算する第1論理積演算部と、
前記第1論理積演算部の出力データを加算し、前記第1データタイプの第1出力データを出力する加算器と
を含むMAC演算器。
【請求項8】
前記第1論理積演算部は、前記第2データタイプの第3データの仮数データをさらに受信し、前記第3データの仮数データの第1ビット値と前記第2データの仮数データとを論理積演算し、
前記加算器は、前記第2データタイプの第2出力データの仮数データを出力する、請求項7に記載のMAC演算器。
【請求項9】
前記第1出力データと前記第2出力データとを受信し、前記第1信号に基づいて前記第1出力データを出力し、前記第2信号に基づいて前記第2出力データを出力する第2マルチプレクサ
をさらに含む、請求項8に記載のMAC演算器。
【請求項10】
外部メモリから第1入力ベクトルおよび第2入力ベクトルを受信し、前記外部メモリから重みベクトルとして複数のスケール係数と複数のバイナリベクトルとを受信するデータバッファと、
前記複数のスケール係数および前記複数のバイナリベクトルを受信し、第1レベルの第1信号と共に前記複数のスケール係数および前記複数のバイナリベクトルを出力し、前記第2入力ベクトルを受信し、前記第1レベルとは異なる第2レベルの第1信号と共に前記第2入力ベクトルを出力する入力パーサと、
前記第1入力ベクトルと前記複数のスケール係数に対する乗算演算とに基づいて第1のスケーリングされた入力ベクトルを生成する入力ベクトルスケーラと、
前記第1のスケーリングされた入力ベクトルを受信し、前記第1のスケーリングされた入力ベクトルに含まれている第1の複数のスケーリングされた入力エレメントそれぞれの指数のうち第1指数を抽出し、前記第1指数に基づいて前記第1のスケーリングされた入力ベクトルのデータタイプを固定小数点に変換する第1データタイプ変換器と、
前記第1レベルの第1信号を受信すると、前記複数のバイナリベクトルのバイナリ値に基づいて前記第1のスケーリングされた入力ベクトルを累積演算し、固定小数点出力行列を生成するMAC演算器と
を含む行列乗算器。
発明の詳細な説明
【技術分野】
【0001】
開示内容は、乗算および累積演算器およびこれを含む行列乗算器に関する。
続きを表示(約 3,000 文字)
【背景技術】
【0002】
人工知能(Artificial Intelligence)の一分野であるディープラーニング(Deep Learning)は、複雑なデータのパターンを認識し、精巧な予測を可能にする。一般に、ディープラーニングは、学習用データを活用してニューラルネットワークモデルを学習させる学習段階(training)と、学習が完了したニューラルネットワークモデルに新たなデータを入力して出力を得る推論段階(inference)とで構成される。このようなディープラーニングの動作時間の大部分は行列乗算(matrix multiplication)にかかる。
【0003】
一方、ディープラーニングは、一般に、GPU(Graphic Processing Unit)またはNPU(Neural Processing Unit)のような汎用プロセッサを用いて実行可能である。最近は、モバイルまたはIoT(internet of things)応用機器にディープラーニング技術を内蔵する傾向が加速化していて、ディープラーニングが要求する大量の演算能力を小さい半導体に実現する技術が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0004】
一実施例は、小さい半導体に実現可能に構成された乗算および累積演算器(MAC、Multiplication and Accumulation)およびこれを含む行列乗算器を提供する。
【0005】
一実施例は、1つのハードウェアで実現されて、複数の入力行列に対する乗算演算と入力行列および重み行列に対する乗算演算を行うように構成された乗算および累積(MAC)演算器およびこれを含む行列乗算器を提供する。
【課題を解決するための手段】
【0006】
一実施例による行列乗算器は、第1入力行列と複数のスケール係数(scale factor)とに基づいてスケーリングされた入力行列を生成する入力ベクトルスケーラと、前記スケーリングされた入力行列のデータタイプを固定小数点に変換し、固定小数点入力行列を生成する第1データタイプ変換器と、前記固定小数点入力行列および複数のバイナリ(binary)ベクトルを受信し、前記固定小数点入力行列および前記複数のバイナリベクトルに基づいて固定小数点出力行列を生成し、前記第1入力行列および第2入力行列を受信し、前記第1入力行列および前記第2入力行列に基づいて第1出力行列を生成する乗算および累積演算器アレイと、前記固定小数点出力行列のデータタイプを浮動小数点に変換し、第2出力行列を生成する第2データタイプ変換器とを含むことができる。
【0007】
一実施例によるMAC演算器は、第1データタイプの第1データ、および前記第1データタイプとは異なる第2データタイプの第2データの仮数データを受信し、第1信号に基づいて前記第1データを出力し、前記第1信号とは異なる第2信号に基づいて前記第2データの仮数データを出力する第1マルチプレクサと、複数のバイナリ値を受信し、前記複数のバイナリ値のうち第1バイナリ値と前記第1データとを論理積演算する第1論理積演算部と、前記第1論理積演算部の出力データを加算し、前記第1データタイプの第1出力データを出力する加算器とを含むことができる。
【0008】
一実施例による行列乗算器は、外部メモリから第1入力ベクトルおよび第2入力ベクトルを受信し、前記外部メモリから重みベクトルとして複数のスケール係数と複数のバイナリベクトルとを受信するデータバッファと、前記複数のスケール係数および前記複数のバイナリベクトルを受信し、第1レベルの第1信号と共に前記複数のスケール係数および前記複数のバイナリベクトルを出力し、前記第2入力ベクトルを受信し、前記第1レベルとは異なる第2レベルの第1信号と共に前記第2入力ベクトルを出力する入力パーサと、前記第1入力ベクトルと前記複数のスケール係数に対する乗算演算とに基づいて第1のスケーリングされた入力ベクトルを生成する入力ベクトルスケーラと、前記第1のスケーリングされた入力ベクトルを受信し、前記第1のスケーリングされた入力ベクトルに含まれている第1の複数のスケーリングされた入力エレメントそれぞれの指数のうち第1指数を抽出し、前記第1指数に基づいて前記第1のスケーリングされた入力ベクトルのデータタイプを固定小数点に変換する第1データタイプ変換器と、前記第1レベルの第1信号を受信すると、前記複数のバイナリベクトルのバイナリ値に基づいて前記第1のスケーリングされた入力ベクトルを累積演算し、固定小数点出力行列を生成するMAC演算器とを含むことができる。
【図面の簡単な説明】
【0009】
一実施例による行列乗算器のブロック図である。
図1の重み行列(WM)を説明するための図である。
データフォーマットとして浮動小数点データを説明するための図である。
乗算および累積演算器を説明するための図である。
図4の仮数演算部の動作方法を説明するための図である。
図1の行列乗算器の構成を示すブロック図である。
一実施例による入力ベクトルスケーラのブロック図である。
図7の入力ベクトルスケーリング回路の動作を説明するための図である。
一実施例による第1データタイプ変換器のブロック図である。
図9の第1データタイプ変換器が指数を抽出する方法を説明するための図である。
図10の第1データタイプ変換器が抽出した指数に基づいて、受信された入力ベクトルのデータタイプを固定小数点に変換する動作方法を説明する図である。
一実施例による乗算および累積演算器アレイのブロック図である。
一実施例による乗算および累積演算器の動作方法を説明するための図である。
一実施例による乗算および累積演算器の動作方法を説明するための図である。
一実施例による乗算および累積演算器の動作方法を説明するための図である。
一実施例による乗算および累積演算器の仮数演算部のブロック図である。
一実施例による乗算および累積演算器のブロック図である。
一実施例による第2データタイプ変換器の動作を説明するための図である。
一実施例によるニューラルプロセッシングシステムを示すブロック図である。
一実施例によるマルチヘッドアテンションを説明するための例示図である。
図20のスケール内積アテンションを説明するための例示図である。
【発明を実施するための形態】
【0010】
以下、添付した図面を参照して、本発明の実施例について、本発明の属する技術分野における通常の知識を有する者が容易に実施できるように詳しく説明する。しかし、本発明は種々の異なる形態で実現可能であり、ここで説明する実施例に限定されない。
(【0011】以降は省略されています)
この特許をJ-PlatPatで参照する
関連特許
三星電子株式会社
半導体素子
1か月前
三星電子株式会社
半導体装置
20日前
三星電子株式会社
電力半導体素子
1か月前
三星電子株式会社
イメージセンサ
16日前
三星電子株式会社
イメージセンサ
1か月前
三星電子株式会社
イメージセンサ
23日前
三星電子株式会社
イメージセンサー
1か月前
三星電子株式会社
ミニファンモータ
1か月前
三星電子株式会社
半導体パッケージ
1か月前
三星電子株式会社
磁気特性測定装置
16日前
三星電子株式会社
イメージセンサー
10日前
三星電子株式会社
半導体設計方法および装置
4日前
三星電子株式会社
表示装置および表示システム
12日前
三星電子株式会社
自律走行型のロボット掃除機
1か月前
三星電子株式会社
撮像装置、および撮像プログラム
3日前
三星電子株式会社
イメージセンサー及びその製造方法
10日前
三星電子株式会社
脱臭触媒、脱臭被膜及び脱臭フィルタ
1か月前
三星電子株式会社
半導体素子及び半導体素子の製造方法
1か月前
三星電子株式会社
発光素子及び前記発光素子を含む電子装置
1か月前
三星電子株式会社
貫通ビアを含むイメージセンサーと半導体素子
5日前
三星電子株式会社
半導体装置及びそれを含むデータ格納システム
13日前
三星電子株式会社
積層セラミック電子部品及びこれを含む電子装置
11日前
三星電子株式会社
化合物および有機エレクトロルミネッセンス素子
11日前
三星電子株式会社
キャパシタ構造体及びこれを含む半導体パッケージ
17日前
三星電子株式会社
レジスト組成物及びそれを利用したパターン形成方法
13日前
三星電子株式会社
乗算および累積(MAC)演算器およびこれを含む行列乗算器
11日前
三星電子株式会社
フォトレジスト組成物及びそれを用いる集積回路素子の製造方法
19日前
三星電子株式会社
摂動を使用して人工知能モデルの性能を測定する方法および装置
1か月前
三星電子株式会社
キャリア基板、及びそれを利用した半導体パッケージの製造方法
1か月前
三星電子株式会社
ナノ光学レンズアレイを具備するイメージセンサ及びこれを含む電子装置
1か月前
三星電子株式会社
映像の復号化方法及び装置
1か月前
三星電子株式会社
フォーカスリング、これを含む基板処理装置、及びこれを利用した基板処理方法
19日前
三星電子株式会社
ソルダ組成物とそれを製造する方法及びそれを用いた半導体パッケージを製造する方法
1か月前
三星電子株式会社
偏波調整畳み込み(PAC)符号の簡略化された逐次消去リスト復号化のための方法及び装置
1か月前
三星電子株式会社
エッチング組成物、それを利用した金属含有膜エッチング方法、及びそれを利用した半導体素子の製造方法
1か月前
三星電子株式会社
半導体素子用洗浄ブラシ、半導体素子用洗浄モジュール、化学的機械研磨設備および化学的機械研磨後の洗浄方法
1か月前
続きを見る
他の特許を見る