【誤訳訂正書】
【提出日】平成27年3月26日(2015.3.26)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
複数のプロセッサコアを含むマルチコアプロセッサを備えるコンピューティングシステムであって、
前記複数のプロセッサコアの少なくともいくつかがプレディケート予測器を備え、
少なくとも１つのプレディケート予測器が、前記複数のプロセッサコアのうちの対応するプロセッサコアにマッピングされたプレディケート命令の出力を予測するように構成され、
コンパイラが、分岐命令とプレディケート命令が混在した命令ブロックを生成し、
前記命令ブロックは、前記複数のプロセッサコアのうちのどのプロセッサコアが前記分岐命令を実行するのに割り当てられるかを決定するブロックアドレスを含み、
前記予測は、前記分岐命令内に符号化された情報に基づき、
前記分岐命令内に符号化された前記情報は、出口コードを表し、
前記少なくとも１つのプレディケート予測器が、予測が正しく連続的に行われた数を示す信頼性予測情報を保持し、前記信頼性予測情報に基づいて、対応するプレディケート命令の出力を予測すべきかを決定するように構成され、
前記少なくとも１つのプレディケート予測器が、基本予測器およびグローバル履歴レジスタを備え、前記予測は、前記基本予測器および前記グローバル履歴レジスタにさらに基づき、
前記グローバル履歴レジスタが、コアローカルプレディケート履歴レジスタを備え、前記コアローカルプレディケート履歴レジスタは、前記対応するプロセッサコアの前記プレディケート予測器に関するデータを記憶するように構成される、
コンピューティングシステム。
【請求項２】
前記複数のプロセッサコアの少なくとも１つのプロセッサコアが、前記分岐命令を備えるアプリケーションプログラムを実行するように構成される、請求項１に記載のコンピューティングシステム。
【請求項３】
前記コンパイラの実行により、前記分岐命令に前記情報が符号化される、請求項１に記載のコンピューティングシステム。
【請求項４】
前記マルチコアプロセッサが、エクスプリシット・データ・グラフ・エグゼキューション（ｅｘｐｌｉｃｉｔ  ｄａｔａ  ｇｒａｐｈ  ｅｘｅｃｕｔｉｏｎ）マイクロアーキテクチャを備える、請求項１に記載のコンピューティングシステム。
【請求項５】
前記グローバル履歴レジスタが、グローバルブロック履歴レジスタを備え、前記グローバルブロック履歴レジスタは、複数の命令ブロックに関する複数のエントリを記憶するように構成され、前記複数のエントリの少なくともいくつかは、関連する分岐命令に対応する予測された出口コードを含む、請求項１に記載のコンピューティングシステム。
【請求項６】
マルチコアプロセッサ内の複数のプロセッサコアの少なくともいくつかに対してプレディケート予測器を使用することと、
前記複数のプロセッサコアのうちの対応するプロセッサコアにマッピングされたプレディケート命令の出力を予測することと、
を含み、
少なくとも１つのプレディケート予測器が、基本予測器およびグローバル履歴レジスタを含み、前記グローバル履歴レジスタが、複数の命令ブロックに関する複数のエントリを記憶するように構成されるグローバルブロック履歴レジスタを含み、前記複数のエントリの少なくともいくつかは、関連する分岐命令に対応する予測された出口コードを含み、
コンパイラが、分岐命令とプレディケート命令が混在した命令ブロックを生成し、前記プレディケート命令の前記出力を予測することは、前記分岐命令内に符号化された情報に基づき、前記プレディケート命令の前記出力を予測することは、前記基本予測器および前記グローバル履歴レジスタにさらに基づき、前記分岐命令内に符号化された前記情報は、出口コードを表し、
前記少なくとも１つのプレディケート予測器が、予測が正しく連続的に行われた数を示す信頼性予測情報を保持し、前記信頼性予測情報に基づいて、対応するプレディケート命令の出力を予測すべきかを決定し、
前記グローバル履歴レジスタが、コアローカルプレディケート履歴レジスタを備え、前記コアローカルプレディケート履歴レジスタは、前記対応するプロセッサコアの前記プレディケート予測器に関するデータを記憶するように構成される、
マルチコアプロセッサ内でプレディケート予測を提供する方法。
【請求項７】
前記複数のプロセッサコアの少なくとも１つのプロセッサコアによってアプリケーションプログラムを実行することをさらに含み、前記アプリケーションプログラムが、前記分岐命令を含む、請求項６に記載の方法。
【請求項８】
コンパイラを用いて、前記分岐命令に前記情報を符号化することをさらに含む、請求項６に記載の方法。
【請求項９】
前記命令ブロックは、ブロックアドレスを含み、前記ブロックアドレスを用いて、どのプロセッサコアが前記分岐命令を実行するかを決定することをさらに含む、請求項７に記載の方法。
【請求項１０】
マルチコアプロセッサコンピューティングシステム内でプレディケート予測を提供するためのコンピュータ実行可能命令が記憶された、コンピュータによってアクセス可能な媒体であって、処理構成が、前記処理構成による前記コンピュータ実行可能命令の実行に応じて処理手順を実行するように構成され、前記処理手順が、
マルチコアプロセッサの複数のプロセッサコアの少なくともいくつかに対してプレディケート予測器を使用することであって、前記プロセッサコアの少なくともいくつかが少なくとも１つのプレディケート予測器を備える、使用することと、
前記複数のプロセッサコアのうちの対応するプロセッサコアにマッピングされたプレディケート命令の出力を予測することと、
を含み、コンパイラが、分岐命令とプレディケート命令が混在した命令ブロックを生成し、前記プレディケート命令の前記出力を予測することは、前記分岐命令内に符号化された情報に基づき、前記命令ブロックは、前記複数のプロセッサコアのうちのどのプロセッサコアが前記分岐命令を実行するのに割り当てられるかを決定するブロックアドレスを含み、前記分岐命令内に符号化された前記情報は、出口コードを表し、
前記少なくとも１つのプレディケート予測器が、予測が正しく連続的に行われた数を示す信頼性予測情報を保持し、前記信頼性予測情報に基づいて、対応するプレディケート命令の出力を予測すべきかを決定し、
前記少なくとも１つのプレディケート予測器が、基本予測器およびグローバル履歴レジスタを備え、前記予測は、前記基本予測器および前記グローバル履歴レジスタにさらに基づき、
前記グローバル履歴レジスタが、コアローカルプレディケート履歴レジスタを備え、前記コアローカルプレディケート履歴レジスタは、前記対応するプロセッサコアの前記プレディケート予測器に関するデータを記憶するように構成される、
コンピュータによってアクセス可能な媒体。
【請求項１１】
複数のプロセッサコアを含むマルチコアプロセッサを備えるコンピューティングシステムであって、
前記複数のプロセッサコアの少なくともいくつかがプレディケート予測器を備え、
少なくとも１つのプレディケート予測器が、前記複数のプロセッサコアのうちの対応するプロセッサコアにマッピングされたプレディケート命令の出力を予測するように構成され、
前記少なくとも１つのプレディケート予測器が、基本予測器およびグローバル履歴レジスタを備え、
前記グローバル履歴レジスタが、前記対応するプロセッサコアの前記プレディケート予測器に関するデータを記憶するように構成されるコアローカルプレディケート履歴レジスタと、複数の命令ブロックに関する複数のエントリを記憶するように構成されるグローバルブロック履歴レジスタとを備え、
前記複数のエントリの少なくともいくつかは、関連する分岐命令に対応する予測された出口コードを含み、
コンパイラが、分岐命令とプレディケート命令が混在した命令ブロックを生成し、
前記予測は、前記分岐命令内に符号化された情報に基づき、
前記予測は、前記基本予測器および前記グローバル履歴レジスタにさらに基づき、
前記情報は、出口コードを表し、
前記少なくとも１つのプレディケート予測器が、予測が正しく連続的に行われた数を示す信頼性予測情報を保持し、前記信頼性予測情報に基づいて、対応するプレディケート命令の出力を予測すべきかを決定するように構成される、
コンピューティングシステム。
【請求項１２】
マルチコアプロセッサ内の複数のプロセッサコアの少なくともいくつかに対してプレディケート予測器を使用することと、
前記複数のプロセッサコアのうちの対応するプロセッサコアにマッピングされたプレディケート命令の出力を予測することと、
を含み、
コンパイラが、分岐命令とプレディケート命令が混在した命令ブロックを生成し、前記命令ブロックは、前記複数のプロセッサコアのうちのどのプロセッサコアが前記分岐命令を実行するのに割り当てられるかを決定するブロックアドレスを含み、前記プレディケート命令の前記出力を予測することは、前記分岐命令内に符号化された情報に基づき、前記分岐命令内に符号化された前記情報は、出口コードを表し、
前記プレディケート予測器が、前記予測が正しく連続的に行われた数を示す信頼性予測情報を保持し、前記信頼性予測情報に基づいて、対応するプレディケート命令の出力を予測すべきかを決定し、
前記プレディケート予測器が、基本予測器およびグローバル履歴レジスタを備え、前記予測は、前記基本予測器および前記グローバル履歴レジスタにさらに基づき、
前記グローバル履歴レジスタが、コアローカルプレディケート履歴レジスタを備え、前記コアローカルプレディケート履歴レジスタは、前記対応するプロセッサコアの前記プレディケート予測器に関するデータを記憶するように構成される、
マルチコアプロセッサ内でプレディケート予測を提供する方法。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】００２５
【訂正方法】変更
【訂正の内容】
【００２５】
一実施例によるアーキテクチャでは、命令の各ブロックは、接続されるまたは加わるコアを調整してそのようなブロックの実行を容易にする、特定のコア（例えば所有者コア（owner core））を有してもよい。例えば、所有者コアは、従来のアーキテクチャのプログラムカウンタと同様にまたは同等に、ブロック開始アドレスにより識別され得る。図３を見ると、命令の複数のブロック（例えば、簡単にするためにブロック３０１〜３０３として示されている３つのブロック）が提供され、各ブロックは、ブロック開始アドレス３０４〜３０６の１つをそれぞれ含む。そのようなアドレス３０４〜３０６は、適切な所有者コア２１１〜２１３を識別するために使用され得る。図３に示されるように、ブロック３０１は自身のアドレス３０４を通じてコア２１１と関連して（例えば、コア２１１に所有されて）もよく、ブロック３０２は自身のアドレス３０５を通じてコア２１３と関連してもよく、ブロック３０３は自身のアドレス３０６を通じてコア２１２と関連してもよい。それぞれの所有者コア２１１〜２１３は、フェッチ命令を送信し、次のブロックアドレスを予測して所有者であることを示すトークンを次のブロックアドレスに渡し、完了情報（例えばレジスタの書き込み、記憶、出口／分岐アドレスなどを含む）を集め、コミットを送信または（１つまたは複数の）コマンドをフラッシュし、最終的にコミットの肯定応答を得るという役割を担い得る。
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】００２６
【訂正方法】変更
【訂正の内容】
【００２６】
さらに、それぞれの所有者コア２１１〜２１３のうちの１つまたは複数は、次のブロックアドレスを予測しやすくすることができる。コア２１１〜２１３のそれぞれは、完全な機能ブロック予測器２１４〜２１６の１つをそれぞれ含んでもよく、予測器は複数のコアについて同一であっても、互いに異なっていてもよい。ブロック予測器２１４〜２１６の次の１つは、どの分岐がテイクされてブロックの外に出るかを予測できる出口予測器と、予測される出口目標に基づいてブロック２１４〜２１６の次の１つのアドレスを予測できる、予測器２１４〜２１６のうち、関連する目標となる予測器とを含んでもよい。図４を参照すると、予測器２１４〜２１６の出口予測器は、２レベルのローカル予測器、グローバル予測器、および／または選択予測器を含んでもよく、これらは、ローカル出口履歴４０１およびグローバル出口履歴４０２を使用できる。出口履歴４０１、４０２は、それぞれのブロックの各分岐命令に対して静的に割り当てられた、概略プレディケート経路情報２０６を用いて、コア２１１〜２１３から生成され得る。概略プレディケート経路情報２０６は、分岐命令に符号化されることが可能であり、特定のブロックの具体的な分岐を識別することができる。コンパイラ２０４は、最初は、それぞれのブロックの分岐命令の順序に基づいて、概略プレディケーション経路情報２０６を割り当ててもよい。コア２１１〜２１３は、出口を用いて、（従来のアーキテクチャで使用され得るような）テイクされた／テイクされなかったという情報の代わりに、関連する予測器の中でローカル履歴およびグローバル履歴を生成することができる。  
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】００２９
【訂正方法】変更
【訂正の内容】
【００２９】
図６ｂを参照すると、別の実施例では、グローバルブロック履歴レジスタ（ＧＢＨＲ）６０５が提供され得る。分散型の出口予測器がブロックの出口コードを予測すると、そのような出口予測器は、出口予測番号またはコードを連結させることもでき、したがってＧＢＨＲ６０５を生成する。本実施例では、コンパイラ２０４は、各ブロック内の分岐命令に、プログラム内での分岐命令の順序にしたがって、３ビットの出口コードを割り当てることができる。したがって、ＧＢＨＲ６０５は、グローバル履歴情報として使用され得る。ブロック内のプレディケートからの情報を何ら使用することなく、出口予測器とプレディケート予測器の両方が同一の履歴情報を共有することができ、これにより、追加の通信機構の必要性を減らす、またはなくすことができる。