【誤訳訂正書】
【提出日】令和3年7月5日(2021.7.5)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
ニューラルネットワークをトレーニングするための専用ハードウェアチップであって、
前記専用ハードウェアチップの計算動作を制御するように構成されたスカラープロセッサと、
ベクトル処理ユニットの２次元配列を有するように構成されたベクトルプロセッサとを備え、前記ベクトル処理ユニットは、すべて、同じ命令を単一命令複数データ方式で実行し、前記ベクトルプロセッサのロードおよびストア命令を通して互いに通信し、
前記専用ハードウェアチップはさらに、
前記ベクトルプロセッサに結合され、乗算結果を得るために、少なくとも１つの２次元行列を１次元ベクトルまたは２次元行列と乗算するように構成された行列乗算ユニットを備える、専用ハードウェアチップ。
【請求項２】
前記ベクトルプロセッサに高速のプライベートメモリを提供するように構成されたベクトルメモリをさらに備える、請求項１に記載の専用ハードウェアチップ。
【請求項３】
前記スカラープロセッサに高速のプライベートメモリを提供するように構成されたスカラーメモリをさらに備える、請求項１に記載の専用ハードウェアチップ。
【請求項４】
行列の転置演算を実行するように構成された転置ユニットをさらに備える、請求項１〜３のいずれかに記載の専用ハードウェアチップ。
【請求項５】
ベクトルアレイの異なるレーン間において、数値上で削減を実行し、前記数値を置換するように構成された、削減および置換ユニットをさらに備える、請求項１〜４のいずれかに記載の専用ハードウェアチップ。
【請求項６】
前記専用ハードウェアチップのデータを記憶するように構成された高帯域幅メモリをさらに備える、請求項１〜５のいずれかに記載の専用ハードウェアチップ。
【請求項７】
疎計算コアをさらに含む、請求項１〜６のいずれかに記載の専用ハードウェアチップ。
【請求項８】
インターフェイスと、
前記専用ハードウェアチップ上の前記インターフェイスまたはリソースを他の専用ハードウェアチップまたはリソースに接続するチップ間相互接続とをさらに備える、請求項１〜７のいずれかに記載の専用ハードウェアチップ。
【請求項９】
複数の高帯域幅メモリをさらに備え、前記チップ間相互接続は、前記インターフェイスおよび前記高帯域幅メモリを他の専用ハードウェアチップに接続する、請求項８に記載の専用ハードウェアチップ。
【請求項１０】
前記インターフェイスは、ホストコンピュータへのホストインターフェイスである、請求項８または９に記載の専用ハードウェアチップ。
【請求項１１】
前記インターフェイスは、ホストコンピュータのネットワークへの標準ネットワークインターフェイスである、請求項８または９に記載の専用ハードウェアチップ。
【請求項１２】
スカラーメモリ、ベクトルメモリ、前記スカラープロセッサ、前記ベクトルプロセッサ、および前記行列乗算ユニットを備え、前記スカラープロセッサはＶＬＩＷ命令フェッチ／実行ループを実行し、前記専用ハードウェアチップを制御し、命令バンドルをフェッチしてデコードした後、前記スカラープロセッサ自体は、前記スカラープロセッサおよび前記スカラーメモリの複数のマルチビットビットレジスタを用いて、前記命令バンドルのスカラースロットにおいて見いだされる命令を実行するのみであり、スカラー命令セットは、アドレス計算、ロード／ストア命令、および分岐命令で使用される算術演算を含み、残りの命令スロットは、前記ベクトルプロセッサおよび前記行列乗算ユニットについての命令をエンコードする、請求項８〜１１のいずれかに記載の専用ハードウェアチップ。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】０００７
【訂正方法】変更
【訂正の内容】
【０００７】
ベクトルメモリが、ベクトルプロセッサに高速のプライベートメモリを提供するように構成されてもよい。スカラーメモリが、スカラープロセッサに高速のプライベートメモリを提供するように構成されてもよい。転置ユニットが、行列の転置演算を実行するように構成されてもよい。削減および置換ユニットが、ベクトルアレイの異なるレーン間において、数値上で削減を実行し、数値を置換するように構成されてもよい。高帯域幅メモリが、専用ハードウェアチップのデータを記憶するように構成されてもよい。専用ハードウェアチップは、疎計算コアを備えてもよい。
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】００２５
【訂正方法】変更
【訂正の内容】
【００２５】
この疎から密へのマッピングを実行するために、疎計算コアは、埋め込みテーブルである、予め構築されたルックアップテーブルを用いる。たとえば、ユーザ入力として一連のクエリワードがある場合、各クエリワードはハッシュ識別子またはワンホットエンコードされたベクトルに変換される。識別子をテーブルインデックスとして用いて、埋め込みテーブルは対応する密なベクトルを返し、それは、次の層への入力活性化ベクトルになることができる。疎計算コアは、検索クエリワードにわたって操作を実行して、１つの密な活性化ベクトルを作成することもできる。疎計算コアは、効率的な疎の、分散されたルックアップを実行し、なぜならば、埋め込みテーブルが巨大であり得、専用ハードウェアチップの１つの限られた容量の高帯域幅メモリに収まらないためである。疎計算コア機能に関する詳細は、２０１６年２月５日に提出された「MATRIX PROCESSING APPARATUS（行
列処理装置）」と題される米国特許出願第１５／０１６，４８６号に記載され、それをここに引用により援用する。
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】００２６
【訂正方法】変更
【訂正の内容】
【００２６】
図３は、コンピュートコア（３００）のハイレベルの例を示す。コンピュートコアは、複数のコンピュートユニットを並列で制御するマシン、つまりＶＬＩＷマシンであることができる。各コンピュートコア（３００）には、スカラーメモリ（３０４）、ベクトルメモリ（３０８）、スカラープロセッサ（３０３）、ベクトルプロセッサ（３０６）、および拡張ベクトルユニット（つまり、行列乗算ユニット（ＭＸＵ）（３１３）と、転置ユニット（ＸＵ）（３１４）と、削減および置換ユニット（ＲＰＵ）（３１６））が含まれる。
【誤訳訂正５】
【訂正対象書類名】明細書
【訂正対象項目名】００３４
【訂正方法】変更
【訂正の内容】
【００３４】
チップは、データを高帯域幅メモリ（４５６ｃ〜４５６ｄ）に保存し、そのデータをベクトルメモリにおいて読込および読出し（４４６）、そのデータを処理する。コンピュートコア（４８０ｂ）自体は、２次元に分割されたオンチップＳ−ＲＡＭであるベクトルメモリ（４４６）を含む。ベクトルメモリには、アドレスが浮動小数点数、つまり各々３２ビットである１２８個の数値を保持するアドレス空間がある。コンピュートコア（４８０ｂ）は、値を計算する計算ユニット、および計算ユニットを制御するスカラーユニットも含む。計算ユニットはベクトルプロセッサを含んでもよく、スカラーユニットはスカラープロセッサを含んでもよい。専用チップの一部を形成し得るコンピュートコアは、行列乗算ユニット、または行列、つまり１２８×１２８の行列の転置演算を実行する転置ユニット（４２２）などの別の拡張演算ユニット、ならびに削減および置換ユニットをさらに含むことができる。
【誤訳訂正６】
【訂正対象書類名】明細書
【訂正対象項目名】００３５
【訂正方法】変更
【訂正の内容】
【００３５】
ベクトルプロセッサ（３０６）は、ベクトル処理ユニットの２次元配列、すなわち１２８×８から成り、これらはすべて、同じ命令を単一命令複数データ（ＳＩＭＤ）方式で実行する。ベクトルプロセッサには、レーンとサブレーン、つまり１２８本のレーンおよび８本のサブレーンがある。レーン内において、ベクトルユニットはロード命令およびストア命令を介して互いに通信する。各ベクトルユニットは、一度に１つの４バイト値にアクセスできる。同じレーンに属さないベクトルユニットは直接通信できない。これらのベクトルユニットは、以下で説明する削減／置換ユニットを用いる必要がある。
【誤訳訂正７】
【訂正対象書類名】明細書
【訂正対象項目名】００３８
【訂正方法】変更
【訂正の内容】
【００３８】
上記のように、専用のハードウェアチップの一部として実装できる各プロセッサは、３つの拡張演算ユニット、つまり、行列乗算演算を実行する行列乗算ユニット（４４８）と、行列、すなわち１２８×１２８の行列の転置演算を実行する転置ユニット（４２２）と、削減および置換ユニット（図４において別個のユニット４２４、４２６として示される）とを有する。
【誤訳訂正８】
【訂正対象書類名】明細書
【訂正対象項目名】００４２
【訂正方法】変更
【訂正の内容】
【００４２】
削減／置換ユニット（またはユニット４２４、４２６）は、置換、レーン回転、回転置換、レーン削減、置換されたレーン削減、およびセグメント化された置換されたレーン削減などのさまざまな操作をサポートすることで、クロスレーン通信の問題に対処する。図示されているように、これらの計算は別々であるが、コンピュートコアは一方もしくは他方または一方に連鎖された他方を用いることができる。削減ユニット（４２４）は、数値からなる各ラインにおけるすべての数値を加算し、それらの数値を置換ユニット（４２６）に供給する。置換ユニットは、異なるレーン間でデータを移動する。転置ユニット、削減ユニット、置換ユニット、および行列乗算ユニットは、各々、完了までに１クロックサイクル以上かかる。したがって、各ユニットにはＦＩＦＯが関連付けられ、計算結果をＦＩＦＯにプッシュし、後で別の命令を実行して、データをＦＩＦＯからベクトルレジスタにプルできる。ＦＩＦＯを用いることにより、コンピュートコアは、長々とした演算の間、複数のベクトルレジスタを予約する必要がない。図示されているように、各ユニットはベクトルレジスタ（４４０）からデータを取得する。
【誤訳訂正９】
【訂正対象書類名】明細書
【訂正対象項目名】００６４
【訂正方法】変更
【訂正の内容】
【００６４】
実施形態５は、ベクトルアレイの異なるレーン間において、数値上で削減を実行し、数値を置換するように構成された、削減および置換ユニットをさらに備える、実施形態１〜４のいずれか１つの専用ハードウェアチップである。