仮想アドレスと物理アドレスとを含むアドレス変換対を複数記憶する主記憶装置に接続された演算処理装置において、複数のスレッドを実行し、仮想アドレスを含むメモリリクエストを出力する演算処理部と、前記主記憶装置が記憶する複数のアドレス変換対のうち一部を登録するアドレス変換バッファと、前記演算処理部が出力したメモリリクエストに含まれる仮想アドレスに対応するアドレス変換対が、前記アドレス変換バッファに登録されていない場合、前記対応するアドレス変換対の取得要求を、前記主記憶装置に対して前記複数のスレッド毎に発行する発行部と、前記発行部が前記対応するアドレス変換対の取得要求を発行した場合、前記対応するアドレス変換対を、前記主記憶装置から前記複数のスレッド毎にそれぞれ取得する複数の取得部と、前記複数の取得部がそれぞれ取得したアドレス変換対のいずれかを、前記アドレス変換部に登録する登録部を有することを特徴とする演算処理装置。前記複数の取得部は、前記複数の取得要求のそれぞれに対応する仮想アドレスから互いに異なる複数の物理アドレスをそれぞれ算出し、前記登録部は、前記算出された複数の物理アドレスに記憶された複数のアドレス変換対のうち、前記取得要求に対応する仮想アドレスを含むアドレス変換対を、前記アドレス変換部に登録するすることを特徴とする請求項1記載の演算処理装置。前記発行部は、前記複数の取得要求のいずれかを、前記演算処理部が実行する前記複数のスレッドのうち最初に発行する場合、前記複数の取得部のうち前記取得部ごとに定められた所定の取得部に対して発行し、前記所定の取得部は、前記主記憶装置から取得したアドレス変換対に訂正不可能なエラーが発生した場合に、前記演算処理装置が実行するオペレーティングシステムにトラップ処理を実行させることを特徴とする請求項1又は2記載の演算処理装置。前記複数の取得部は、前記複数の取得要求のそれぞれに対応する仮想アドレスから互いに異なる複数の物理アドレスをそれぞれ算出し、前記それぞれ算出した複数の物理アドレスをキャッシュメモリにそれぞれ保持し、前記登録部は、前記キャッシュメモリが保持した複数のアドレス変換対のうち、前記取得要求に対応する仮想アドレスを含むアドレス変換対を、前記アドレス変換部に登録するすることを特徴とする請求項1~3のいずれか1項に記載の演算処理装置。前記複数の取得部は、前記キャッシュメモリが保持した複数のアドレス変換対のうち、いずれかのアドレス変換対にエラーが発生した場合、前記エラーが発生したアドレス変換対の物理アドレスを取得した後に、前記エラーが発生したアドレス変換対の仮想アドレスを取得することを特徴とする請求項4記載の演算処理装置。前記発行部は、前記演算処理部が出力したメモリリクエストに含まれる仮想アドレスに対応するアドレス変換対が、前記アドレス変換バッファに登録されていない場合、前記所定の取得部以外の取得部に前記取得要求を発行することを特徴とする請求項3~5のいずれか1項に記載の演算処理装置。仮想アドレスと物理アドレスとを含むアドレス変換対を複数記憶する主記憶装置に接続され、前記主記憶装置が記憶する複数のアドレス変換対のうち一部を登録するアドレス変換バッファを有する演算処理装置の制御方法において、前記演算処理装置が有する演算処理部が複数のスレッドを実行し、前記演算処理部が、仮想アドレスを含むメモリリクエストを出力し、前記演算処理部が出力したメモリリクエストに含まれる仮想アドレスに対応するアドレス変換対が、前記アドレス変換バッファに登録されていない場合、前記演算処理装置が有する発行部が、前記対応するアドレス変換対の取得要求を、前記主記憶装置に対して前記複数のスレッド毎に発行し、前記発行部が前記対応するアドレス変換対の取得要求を発行した場合、前記演算処理装置が有する複数の取得部が、前記対応するアドレス変換対を、前記主記憶装置から前記複数のスレッド毎にそれぞれ取得し、前記演算処理装置が有する登録部が、前記複数の取得部がそれぞれ取得したアドレス変換対のいずれかを、前記アドレス変換部に登録することを特徴とする演算処理装置の制御方法。しかしながら、TTEの取得処理および登録処理をHWTWが逐次的に実行する技術では、先行するメモリアクセス要求に関わるTTEの登録を待ってから次のメモリアクセス要求によるTTEの検索を行う。このため、TLBに登録されていないTTEを用いるメモリアクセス要求が連続して発行された場合は、アドレス変換の実行時間が増大するという問題があった。本発明は、1つの側面では、アドレス変換の実行時間を短縮することを目的とする。1つの側面では、仮想アドレスと物理アドレスとを含むアドレス変換対を複数記憶する主記憶装置に接続された演算処理装置である。演算処理装置は、複数のスレッドを実行し、仮想アドレスを含むメモリリクエストを出力する演算処理部と、主記憶装置が記憶する複数のアドレス変換対のうち一部を登録するアドレス変換バッファとを有する。また、演算処理装置は、演算処理部が出力したメモリリクエストに含まれる仮想アドレスに対応するアドレス変換対が、アドレス変換バッファに登録されていない場合、対応するアドレス変換対の取得要求を、主記憶装置に対して複数のスレッド毎に発行する発行部を有する。また、演算処理装置は、発行部が対応するアドレス変換対の取得要求を発行した場合、対応するアドレス変換対を、主記憶装置から複数のスレッド毎にそれぞれ取得する複数の取得部を有する。また、演算処理装置は、複数の取得部がそれぞれ取得したアドレス変換対のいずれかを、アドレス変換部に登録する登録部を有する。1実施態様によれば、アドレス変換の実行時間を短縮することができる。以下に添付図面を参照して本願に係る演算処理装置および演算処理装置の制御方法について説明する。以下の実施例1では、図1を用いて、演算処理装置の一例を説明する。図1は、実施例1に関わる演算処理装置の一例を説明するための図面である。なお、図1では、演算処理装置の一例として、CPUCentralProcessingUnit1の一例を示す。図1に示す例では、CPU1は、主記憶装置であるメモリ2と接続する。また、CPU1は、命令制御部3、演算部4、アドレス変換バッファ5TLB:TranslationLookAsideBuffer、L2Level2キャッシュ6、L1Level1キャッシュ7を有する。また、CPU1は、HWTWHardWareTableWalk10を有する。また、L1キャッシュ7は、L1データキャッシュ制御部7a、L1データタグ7b、L1データキャッシュ7c、L1命令キャッシュ制御部7d、L1命令タグ7e、L1命令キャッシュ7fを有する。メモリ2は、CPU1が演算処理に用いるデータを記憶する。例えば、メモリ2は、CPU1が実行する演算処理の対象となる値のデータ、すなわちオペランドと、演算処理に関わる命令のデータとを記憶する。ここで、命令とは、CPU1が実行可能な命令をいう。また、メモリ2は、所定の領域に仮想アドレスと物理アドレスとの対であるTTETranslationTableEntryを記憶する。ここで、TTEは、TTE-TagとTTE-Dataとの対を有し、TTE-Tagには仮想アドレスが、TTE-Dataには物理アドレスが格納される。命令制御部3は、CPU1が実行する処理の流れの制御を行なう。具体的には、命令制御部3は、CPU1において処理すべき命令をL1キャッシュ7から読み込み、解釈し、解釈結果を演算部4に送信する。なお、命令制御部3は、L1キャッシュ7が有するL1命令キャッシュ7fから演算処理に関わる命令を取得し、演算部4は、演算処理に関わる命令やオペランドをL1キャッシュ7が有するL1データキャッシュ7cから取得する。演算部4は、演算を行う処理部である。具体的には、演算部4は、命令の対象となるデータ、すなわちオペランドを記憶装置から読み込み、命令制御部3によって解釈された命令に従って演算し、演算結果を命令制御部3に送信する。ここで、命令制御部3や演算部4は、オペランドや命令を取得する場合には、オペランドや命令が格納されたメモリ2の仮想アドレスをTLB5に出力する。また、命令制御部3や演算部4は、CPU1が実行する演算処理の単位であるストランドスレッドと仮想アドレスとの組ごとに固有のコンテキストIDをTLB5に出力する。後述するように、TLB5は、命令制御部3や演算部4が仮想アドレスを出力した場合には、TTEを用いて仮想アドレスを物理アドレスに変換し、変換後の物理アドレスをL1キャッシュ7に出力する。このような場合には、L1キャッシュ7は、TLBが出力した物理アドレスを用いて、命令やオペランドを命令制御部3や演算部4に出力する。その後、命令制御部3や演算部4は、L1キャッシュ7から受信したオペランドや命令を用いて、各種処理を実行する。TLB5は、メモリ2が記憶するTTEの一部を登録しており、TTEを用いて、命令制御部3や演算部5が出力した仮想アドレスを物理アドレスに変換し、変換後の物理アドレスをL1キャッシュ7に出力するアドレス変換バッファである。具体的には、TLB5は、メモリ2が記憶する複数のTTEのうち、一部のTTEとコンテキストIDとの組を登録する。そして、TLB5は、命令制御部3や演算部4が仮想アドレスとコンテキストIDとを出力した場合には、以下の処理を実行する。すなわち、TLB5は、自身が登録するTTEとコンテキストIDとの組から、命令制御部3や演算部4が出力した仮想アドレスをTTE-Tagとし、かつ、コンテキストIDが一致するTTEとコンテキストIDとの組を登録しているか判別する。そして、TLB5は、命令制御部3や演算部4が出力した仮想アドレスをTTE-Tagとし、かつ、コンテキストIDが一致するTTEとコンテキストIDとの組を登録している場合には、TLBヒットしたと判別する。その後、TLB5は、TLBヒットしたTTEのTTE-DataをL1キャッシュ7に出力する。一方、TLB5は、命令制御部3や演算部4が出力した仮想アドレスをTTE-Tagとし、かつ、コンテキストIDが一致するTTEとコンテキストIDとの組をキャッシュしていない場合には、TLBミスしたと判別する。なお、TLBミスは、MMUMemoryManagementUnit-MISSと表記される場合もある。このような場合には、TLB5は、HWTW10にTLBミスした仮想アドレスをTTE-TagとするTTEのメモリアクセス要求を発行する。なお、TTEのメモリアクセス要求は、仮想アドレスとTTEのコンテキストIDとメモリアクセス要求を発行することとなった演算処理に関わる処理単位、すなわちストランドスレッド、を一意に示すストランドIDとを有する。また、後述するように、HWTW10は、メモリアクセス要求を受信する複数の受信手段を有しており、TLB5は、TLBミスに係るストランドスレッドごとに異なる受信手段に対してメモリアクセス要求を発行する。このような場合にはHWTW10は、TLB5が発行したメモリアクセス要求の対象となるTTEをL2キャッシュ6およびL1キャッシュ7を介してTLB5に登録する。その後、TLB5は、登録したTTEのTTE-DataをL1キャッシュ7に出力する。ここで、図2は、実施例1に関わるTLBの一例を説明するための図である。図2に示す例では、TLB5は、TLB制御部5a、TLB本体部5b、コンテキストレジスタ5c、仮想アドレスレジスタ5dを有する。TLB制御部5aは、演算部4またはHWTW10からTTEを取得し、登録する処理を制御する。例えば、TLB制御部5aは、CPU1が実行するプログラムによる新たなTTEを演算部4から取得し、取得したTTEをTLB本体部5bに登録する。ここで、TLB本体部5bは、各TTEのTTE-TagとTTE-Dataとを対応付けて記憶する。また、各TTE-Tagには、図2中Aで示す範囲に仮想アドレスが含まれ、図2中Bで示す範囲にコンテキストIDが含まれる。コンテキストレジスタ5cには、検索対象となるTTEに関わるコンテキストIDが格納され、仮想アドレスレジスタ5dには、検索対象となるTTEのTTE-Tagに含まれる仮想アドレスが格納される。TLB検索部5eは、TLB本体部5bが記憶するTTEから、TTE-Tagに含まれる仮想アドレスが、仮想アドレスレジスタ5dに記憶された仮想アドレスと一致するTTEを検索する。同時に、TLB検索部5eは、TTE-Tagに含まれるコンテキストIDが、コンテキストレジスタ5cに格納されたコンテキストIDと一致するTTEを検索する。そして、TLB検索部5eは、仮想アドレスおよびコンテキストIDが一致したTTEのTTE-Data、すなわち、検索対象となる仮想アドレスと対の物理アドレスをL1データキャッシュ制御部7aに出力する。図1に戻って、L1データキャッシュ制御部7aは、TLB5がオペランド取得のために物理アドレスを出力した場合は、以下の処理を実行する。すなわち、L1データキャッシュ制御部7aは、L1データタグ7bのうち、物理アドレスの下位アドレスと対応するキャッシュラインから、物理アドレスのフレームアドレス上位アドレスであるタグデータを検索する。そして、L1データキャッシュ制御部7aは、TLB5が出力した物理アドレスのタグデータを検出した場合には、検出されたタグデータと対応付けてキャッシュされたオペランド等のデータをL1データキャッシュ7cに出力させる。一方、L1データキャッシュ制御部7aは、TLB5が出力した物理アドレスのタグデータが検出されなかった場合は、L2キャッシュ6または、メモリ2が記憶するオペランド等のデータをL1データキャッシュ7cに保持する。また、L1データキャッシュ制御部7aは、後述するHWTW10がTTEのキャッシュ要求であるTRFリクエストを出力した場合には、当該TRFリクエストの対象となるアドレスに格納されたTTEをL1命令キャッシュ7cに保持する。具体的には、L1データキャッシュ制御部7aは、オペランドをL1データキャッシュ7cに保持する際と同様に、L2キャッシュ6またはメモリ2が記憶するTTEをL1データキャッシュ7cに保持する。そして、L1データキャッシュ制御部7aは、HWTW10にTRFリクエストを再度出力させ、L1データキャッシュ7cに保持したTTEをTLB5に登録する。L1命令キャッシュ制御部7dは、TLBが命令取得のために物理アドレスを出力した場合には、L1データキャッシュ制御部7aと同様の処理を実行することで、L1命令キャッシュ7fに保持する命令を、命令制御部3に出力させる。また、L1命令キャッシュ制御部7dは、L1命令キャッシュ7fに命令が保持されていない場合は、メモリ2が記憶する命令、または、L2キャッシュ6が記憶する命令をL1命令キャッシュ7fに保持させる。その後、L1命令キャッシュ制御部7dは、L1命令キャッシュ7fが保持する命令を命令制御部3に出力させる。なお、L1命令タグ7e、L1命令キャッシュ7fは、L1データタグ7b、L1データキャッシュ7cと同様の機能を発揮するものとして、詳細な説明を省略する。なお、L1キャッシュ7は、L1データキャッシュ7cまたはL1命令キャッシュ7fにオペランド、または、命令、または、TTE等のデータが登録されていない場合は、L2キャッシュ6に物理アドレスを出力する。このような場合には、L2キャッシュ6は、L1キャッシュ7が出力した物理アドレスに記憶されるデータをL2キャッシュ6自身が保持しているか判別し、L2キャッシュ6自身が保持している場合には、データをL1キャッシュ7に出力する。一方、L2キャッシュ6は、L1キャッシュ7が出力した物理アドレスに記憶されるデータをL2キャッシュ6自身が保持していない場合は、以下の処理を実行する。すなわち、L2キャッシュ6は、メモリ2からL1キャッシュ7が出力した物理アドレスに記憶されたデータをキャッシュし、キャッシュしたデータをL1キャッシュ7に出力する。次に、図3を用いて、HWTW10について説明する。図3は、実施例1に係るHWTWの一例を説明するための図である。図3に示す例では、HWTW10は、複数の変換対取得部15~15b、制御設定レジスタ部16、TSBTranslationStorageBufferポインタ計算部17、リクエストチェック部18、TSBWTSBWrite制御部19を有する。なお、以下の説明では、HWTW10が3つの変換対取得部15~15bを有する例について記載したが、変換対取得部の数はこれに限定されるものではない。なお、以下の説明では、変換対取得部15a、変換対取得部15bは、変換対取得部15と同様の機能を発揮するものとして、詳細な説明を省略する。変換対取得部15は、複数のリクエスト受信部11~11b、複数のリクエスト制御部12~12b、先行リクエスト受信部13、先行リクエスト制御部14を有する。また、TLB5は、TLB制御部5aを有する。TLB制御部5aは、TLBミスが発生した場合には、TLBミスに係るストランドスレッド毎に異なる変換対取得部15~15bに対してリクエストを発行する。例えば、TLB制御部5aは、CPU1が3つのストランドA~Cを実行する場合は、以下のようにリクエストを発行する。すなわち、TLB制御部5aは、ストランドAに係るリクエストを変換対取得部15に発行し、ストランドBに係るリクエストを変換対取得部15aに発行し、ストランドCに係るリクエストを変換対取得部15bに発行する。なお、TLB制御部5aは、各変換対取得部15~15bに対して、それぞれ特定のストランドスレッドに係るリクエストを発行するわけではなく、実行中のストランドスレッドに応じて、リクエストの発行先を変更する。例えば、TLB制御部5aは、ストランドA~Cが実行された後に、ストランドスレッドBが終了し、その後、ストランドA、C、Dと増えた場合には、ストランドBのリクエストを発行していた変換対取得部に対して、ストランドDのリクエストを発行することとしてもよい。また、TLB制御部5aは、オペランドが格納された記憶領域の仮想アドレスを物理アドレスに変換するTTEを対象とする最初のリクエストである場合、言い換えると、発行するリクエストがリクエストキューの先頭キューに保持されたTOQTopOfQueueである場合には、以下の処理を実行する。すなわち、TLB制御部5aは、リクエストの発行先となる変換対対象部の先行リクエスト受信部13へ発行する。例えば、TLB制御部5aは、ストランドAにおけるTOQのリクエストを変換対取得部15に発行する場合には、先行リクエスト受信部13にリクエストを発行する。また、TLB制御部5aは、ストランドAの実行時において、発行するリクエストが命令に関するTTEのリクエストである場合や、オペランドに関するTTEの後続のリクエストを発行する場合は、いずれかのリクエスト受信部11~11aにリクエストを発行する。リクエスト受信部11~11bは、TLB制御部5aが発行したリクエストを取得し、保持する。また、リクエスト受信部11~11bは、後続のリクエスト制御部12~12bに、リクエストの対象となるTTEを取得させる。リクエスト制御部12~12bは、リクエスト受信部11~11bからリクエストを取得し、取得したリクエストの対象となるTTEを取得する処理を、それぞれ独立して実行する。具体的には、リクエスト制御部12~12bは、それぞれ複数のテーブルウォーカーであるTSBTranslationStorageBuffer0~3を有し、各TSB0~3にTTEの取得処理を実行させる。先行リクエスト受信部13は、オペランドが格納された記憶領域の仮想アドレスを物理アドレスに変換するTTEに対する最初のリクエストを受信する受信部である。また、先行リクエスト制御部14は、各リクエスト制御部12~12bと同様の機能を発揮し、先行リクエスト受信部13受信するリクエストの対象となるTTEを取得する。つまり、先行リクエスト受信部13および先行リクエスト制御部14は、TOQのリクエストの対象となるTTEを取得する。このように、TLB制御部5aは、同じ変換対取得部15が有する複数のリクエスト受信部11~11bおよび複数のリクエスト制御部12~12bに対しては、同一のストランドスレッドに関わるTTEのリクエストを発行する。このため、複数の変換対取得部15~15bを有するHWTW10は、複数のストランドスレッドについて、複数のオペランドに関わるTTEの取得処理を並行して実行することができる。また、変換対取得部15は、複数のリクエスト受信部11~11b、複数のリクエスト制御部12~12b、先行リクエスト受信部13、先行リクエスト制御部14を有するので、TOQのリクエストとTOQ以外のリクエストとを同時並列して実行できる。また、変換対取得部15は、TOQのリクエストとTOQ以外のリクエストとを同時並列して実行できるので、後続のリクエストが先行するTOQのリクエストの実行を待つペナルティを隠蔽できる。また、HWTW10は、複数の変換対取得部15~15bを有するので、オペランドの取得に関わる複数のTTEの取得処理をストランドスレッド毎に並行して実行することができる。制御設定レジスタ部16は、複数のTSBコンフィグレジスタを有する。各TSBコンフィグレジスタには、それぞれTSBポインタを算出するために必要な値が格納される。TSBポインタ計算部17は、TSBコンフィグレジスタに格納された値を用いて、TSBポインタを算出する。そして、TSBポインタ計算部17は、算出したTSBポインタをL1データキャッシュ制御部7aに出力する。リクエストチェック部18は、L1データキャッシュ7cから送出されたTTEがリクエストの対象であるTTEであるか否かをチェックし、チェック結果をTSBW制御部19に通知する。TSBW制御部19は、リクエストチェック部18によるチェック結果に問題がない、すなわち、L1データキャッシュ7cから送出されたTTEがリクエストの対象のTTEである場合には、登録要求をTLB制御部5aに発行する。この結果、TLB制御部5aは、L1データキャッシュ7cに保持されたTTEを登録することとなる。一方、リクエストチェック部18は、リクエストチェック部18により、トラップの発生を誘引するトラップ要因が検出された場合には、検出されたトラップ要因をTSBW制御部19に通知する。以下、リクエスト制御部12が実行するテーブルウォークの一例について図4を用いて説明する。図4は、実施例1に関わるテーブルウォークの一例を説明するための図である。なお、リクエスト制御部12a、12bは、それぞれリクエスト制御部12と同様の処理を実行するものとして、説明を省略する。また、TSB1~3は、TSB0と同様の処理を実行するものとして、詳細な説明を省略する。例えば、図4に示す例では、TSB0は、実行中フラグ、TRF-リクエスト要求フラグ、ムーブイン待ちフラグ、トラップ検出フラグ、完了フラグ、リクエストの対象となるTTEに含まれる仮想アドレスの各データを有する。ここで、実行中フラグとは、TSB0がテーブルウォークを実行しているか否かを示すフラグ情報であり、TSB0は、テーブルウォークの実行中は、実行中フラグをonにする。また、TRF-リクエスト要求フラグとは、TSBポインタ計算部17が算出したTSBポインタが示す記憶領域に記憶されたデータの取得要求であるTRFリクエストをL1データキャッシュ制御部7aに発行したか否かを示すフラグ情報である。すなわち、TSB0は、TRFリクエストを発行した場合には、TRF-リクエスト要求フラグをonにする。また、ムーブイン待ちフラグとは、メモリ2やL2キャッシュ6に格納されたデータをL1データキャッシュ7cに移動させるムーブイン処理が実行されているか否かを示すフラグ情報である。TSB0は、L1データキャッシュ7cによりムーブイン処理が実行されている場合には、ムーブイン待ちフラグをonにする。トラップ検出フラグとは、トラップ要因が検出されたか否かを示すフラグであり、TSB0は、トラップが検出された場合には、トラップ検出フラグをonにする。完了フラグとは、テーブルウォークが完了したか否かを示すフラグであり、TSB0は、テーブルウォークが完了した場合には、完了フラグをonにし、新たなテーブルウォークを実行する場合には、完了フラグをoffにする。また、図4に示す例では、TTEは、8バイトのTTE-Tag部と8バイトのTTE-Data部とを有する。TTE-Tag部には、仮想アドレスが格納されており、TTE-Data部には、RARealAddress:実アドレスが格納されている。また、図4に示す例では、制御設定レジスタは、TSBコンフィグレジスタ、上限レジスタ、下限レジスタ、オフセットレジスタを有する。なお、RAとは、物理アドレスPAPhysicalAddressを算出するために用いられるアドレスである。TSBコンフィグレジスタとは、TSB0~TSB3がそれぞれTSBポインタを算出するためのデータが格納されたレジスタである。また、上限レジスタおよび下限レジスタとは、TTEが格納される物理アドレスの範囲を示すデータが格納されたレジスタである。具体的には、上限レジスタには、物理アドレスの上限値上限PA4613が格納され、下限レジスタには、物理アドレスの下限値下限PA46:13が格納されている。また、オフセットレジスタとは、上限レジスタおよび下限レジスタと対になったレジスタであり、RAからTLBに登録する物理アドレスを算出するためのオフセットPA46:13が格納されるレジスタである。例えば、TSB0は、リクエスト受信部11が保持するリクエストを参照する。そして、TSB0は、リクエストの対象となるTTEのコンテキストIDとストランドIDとを用いて、制御設定レジスタ部16が有するTSBコンフィグレジスタ、上限レジスタ、下限レジスタ、オフセットレジスタとを選択する。そして、TSB0は、TSBコンフィグレジスタのうち、テーブルウォークを実行するか否かを示すテーブルウォーク有効ビットを参照する。図4に示す例では、テーブルウォーク有効ビットは、enableの範囲である。そして、TSB0は、テーブルウォークを実行するか否かを示すテーブルウォーク有効ビットがonである場合は、それぞれテーブルウォークを開始する。そして、TSB0は、選択したTSBコンフィグレジスタに設定されたベースアドレスtsb_base46:13をTSBポインタ計算部17に出力させる。また、図4では表示を省略したが、TSBコンフィグレジスタは、TSBのサイズと、ページサイズとを合わせて記憶しており、TSB0は、TSBのサイズとページサイズとをTSBポインタ計算部17に出力させる。TSBポインタ計算部17は、制御設定レジスタ部16が出力したベースアドレスと、TSBのサイズと、ページサイズとを用いて、TTEが格納された記憶領域を示す物理アドレスであるTSBポインタを算出する。具体的には、TSBポインタ計算部17は、制御設定レジスタ部16が出力したベースアドレスと、TSBのサイズと、ページサイズとを、以下の式1に代入してTSBポインタを計算する。なお、式1中のpaとは、TSBポインタを示し、VAとは、仮想アドレスを示し、VAとは、仮想アドレスを示し、tsb_sizeとはTSBサイズを示し、page_sizeとはページサイズを示す。すなわち、式1は、tsb_baseを物理アドレスの46ビット目から13tsb_sizeビット目とすることを示す。また、式1は、VAを物理アドレスの21tsb_size3×page_sizeビット目から133×page_sizeビット目とし、残りのビットを0とすることを示す。そして、TSB0は、TSBポインタ計算部17がTSBポインタを算出した場合には、TRFリクエストをL1キャッシュ制御部7aに発行し、TRF-リクエスト要求フラグをonにする。具体的には、TSB0は、TSBポインタ計算部17が算出したTSBポインタをL1データキャッシュ制御部7aに出力させる。これとともに、TSB0は、TTEのリクエストを受信したリクエスト受信部11を一意に示すリクエストポートIDTRFREQSRCIDとTSB0を示すテーブルウォーカーのIDTSBPORTIDとをL1データキャッシュ制御部7aに送信する。なお、制御設定レジスタ部16は、複数のTSBコンフィグレジスタを有し、各TSBコンフィグレジスタには、OSOperatingSystemにより、それぞれ異なるTSBのベースアドレスとTSBのサイズとページサイズとが設定されている。そして、リクエスト制御部12が有する各TSB0~3は、制御設定レジスタ部16からそれぞれ異なるTSBコンフィグレジスタを選択する。このため、各TSB0~3は、TSBポインタ計算部17に、それぞれ異なる値のTSBポインタを算出させるので、同一の仮想アドレスからそれぞれ異なるTSBポインタに対するTRFリクエストを発行することとなる。例えば、メモリ2には、TTEを格納する領域が4つ存在し、OSが起動時にいずれの領域にTTEを格納するかを設定する。このため、リクエスト制御部12が1つのTSB0のみを有する場合には、4つの候補全てに対して、TRFリクエストを発行しなければならず、テーブルウォークに要する時間を増大させてしまう。しかし、リクエスト制御部12は、各領域に対してTRFリクエストを発行する4つのTSB0~3を有する場合には、各領域に対するTRFリクエストを各TSB0~3に発行させることで、迅速にTTEを取得することができる。なお、メモリ2には、TTEを格納する領域を任意の数だけ設定することができる。すなわち、メモリ2にTTEを格納する領域を6つ設定する場合には、リクエスト制御部12に6つのTSB0~5を設置し、各領域に対するTRFリクエストを発行するように設定してもよい。図4の説明に戻り、L1データキャッシュ制御部7aは、TSB0が発行したTRFリクエストを取得した場合には、取得したTRFリクエストの対象となるTTEがL1データキャッシュ7cに保持されているか判別する。そして、L1データキャッシュ制御部7aは、TRFのリクエスト対象となるTTEがL1データキャッシュ7cに保持されている場合、すなわちキャッシュヒットした場合には、キャッシュヒットした旨の通知を、TRFリクエストを発行したTSBに送信する。一方、L1データキャッシュ制御部7aは、TRFのリクエスト対象となるTTEがL1データキャッシュ7cに保持されていない場合、すなわちキャッシュミスした場合は、TTEをL1データキャッシュ7cに保持させる。そして、L1データキャッシュ制御部7aは、再度TRFリクエストの対象となるTTEがL1データキャッシュ7cに保持しているか判別する。以下、TSB0によって発行されたTRFリクエストをL1データキャッシュ制御部7aが取得した例について説明する。例えば、TRFリクエストを取得したL1データキャッシュ制御部7aは、リクエストポートIDとテーブルウォーカーのIDとから、リクエスト制御部12のTSB0によるTRFリクエストであると把握する。そして、L1キャッシュ制御部7aは、リクエスト発行のプライオリティを取得すると、L1キャッシュ制御用パイプラインにTRFリクエストを投入する。つまり、L1データキャッシュ制御部7aは、TRFリクエストの対象となるTTE、すなわち、TSBポインタが示す記憶領域に格納されたTTEが保持されているか否かを判別する。そして、L1データキャッシュ制御部7aは、当該TRFリクエストがキャッシュヒットした場合は、L1キャッシュ制御用パイプラインをリクエストが流れ終わったサイクルでTRFリクエストの対象データが保持されていることを示す信号をTSB0に出力する。このような場合には、TSB0は、L1データキャッシュ7cから保持されたデータを送出してもらい、リクエストチェック部18を用いて、送出したデータがTLB制御部5aからリクエストされたTTEであるか否かを判別する。一方、TTEが保持されていない場合、すなわち、TRFリクエストの対象となるTTEがキャッシュミスした場合は、以下の処理を実行する。まず、L1データキャッシュ制御部7aは、図3に示すL1データキャッシュ7cのMIBMoveInBufferにTRFリクエストであることを示すフラグを保持させる。そして、L1データキャッシュ制御部7aは、L1データキャッシュ7cにTRFリクエストの対象となる記憶領域に記憶されたデータのムーブイン処理のリクエストをL2キャッシュ6に発行させる。また、L1データキャッシュ制御部7aは、TRFリクエストがL1キャッシュ制御用パイプラインを流れ終わったサイクルで、L1キャッシュミスしてMIBを確保したことを示す信号をTSB0に出力する。このような場合には、TSB0は、ムーブイン待ちフラグをonにする。ここで、L2キャッシュ6は、ムーブイン処理のリクエストが発行された場合には、通常のロード命令と同様の動作で、メモリ2からTRFリクエストの対象となるデータを保持し、保持したデータをL1データキャッシュ7cに送信する。このような場合には、MIBは、L2キャッシュ6から送信されたデータをL1データキャッシュ7cに保持させるとともに、保持させたデータがTRFリクエストの対象となるデータであると判別する。そして、MIBは、TRFリクエストを再度発行する指示をTSB0に対し発行する。すると、TSB0は、ムーブイン待ちフラグoffに戻し、TSBポインタ計算部17にTSBポインタを再計算させ、L1データキャッシュ制御部7aにTRFリクエストを再度発行する。そして、L1データキャッシュ制御部7aは、TRFリクエストをL1キャッシュ制御用パイプラインに投入する。すると、L1データキャッシュ制御部7aは、キャッシュヒットしたと判別し、TSB0にTRFリクエストの対象データが保持されていることを示す信号をTSB0に出力する。このような場合には、TSB0は、再度TRFリクエストを発行し、キャッシュヒットしたデータをリクエストL1データキャッシュ7cに送出させる。ここで、L1データキャッシュ7cとリクエストチェック部18とは、8バイト幅のバスで接続されている。そして、L1データキャッシュ7cは、先にTTE-Data部を送出し、次に、TTE-Tag部を送出する。リクエストチェック部18は、L1データキャッシュ7cが送出したデータを受信し、受信したデータがTRFリクエストの対象となるTTEであるか否かを判別する。このような場合には、リクエストチェック部18は、TTE-Data部のRAと、上限PA46:13および下限PA4613とを比較することで、TTE-Data部のRAが所定のアドレス範囲内に入っているか否かを判別する。これと並行して、リクエストチェック部18は、L1データキャッシュ7cが送出したTTE-Tag部の仮想アドレスと、TSB0が記憶する仮想アドレスとが一致するか否かを判別する。そして、TSB0は、TTE-Data部のRAが所定のアドレス範囲内に入っており、かつ、TTE-Tag部のVAがTSB0が記憶する仮想アドレスと一致する場合には、TLBに登録するTTEの物理アドレスを算出する。すなわち、TSB0は、TTE-Data部のRAにオフセットPA46:13を加算し、TLB5に登録するTTEの物理アドレスを算出する。なお、リクエストチェック部18は、制御設定レジスタ15に複数の上限レジスタおよび下限レジスタが存在する場合には、最若番の上限レジスタおよび下限レジスタを用いて、TTE-Data部のRAが所定のアドレス範囲内にあるか否かを判別する。その後、リクエストチェック部18は、チェック結果に問題が無ければTLB5への登録要求をTSBW制御部19に通知する。一方、リクエストチェック部18は、チェック結果に問題が有る場合には、TSB0によるテーブルウォークの結果にトラップ要因の通知をTSBW制御部19に通知する。また、このような場合には、TSB0は、トラップ検出フラグをonにする。ここで、チェック結果に問題が有る場合とは、L1データキャッシュ7cが送出したTTE-TagとTSB0が記憶する仮想アドレスが一致しない場合や、RAが所定のアドレス範囲に入らない場合、パスエラーが生じた場合等である。このように、リクエストチェック部18は、TTE-Data部に対して、TTE-Tag部よりも多くのチェックを実行する。このため、HWTW10は、L1データキャッシュ7cにTTE-Data部から先に出力させることで、総チェックサイクルを短くさせ、テーブルウォーク処理を高速化できる。TSBW制御部19は、リクエストチェック部18から登録要求が通知された場合には、TLB制御部5aに対してTTEの登録要求を発行する。このような場合には、TLB制御部5aは、リクエストチェック部18がチェックしたTTE-Tag部とリクエストチェック部18が算出した物理アドレスを有するTTE-Dataとを有するTTEをTLB5に登録する。また、TSBW制御部19は、TLB5に対してTLBミスしたリクエストを再投入させることで、TLB5に登録されたTTEを再度検索させる。この結果、TLB5は、ヒットしたTTEを用いて仮想アドレスを物理アドレスに変換し、変換した物理アドレスを出力する。すると、L1データキャッシュ制御部7aは、通常のデータ取得要求時と同様に、TLB5が出力した物理アドレスが示す記憶領域に格納されたオペランドまたは命令を演算部4に出力する。一方、TSBW制御部19は、テーブルウォークの結果にトラップ要因の通知を受けた場合には、以下の処理を実行する。すなわち、TSBW制御部19は、リクエスト制御部12が有する他のTSBによるTRFリクエストの結果、取得されたTTEのチェック結果をリクエストチェック部18から通知されるまで待機する。そして、TSBW制御部19は、リクエスト制御部12が有するいずれかのTSBが発行したTRFリクエストにより取得されたTTEのチェック結果として登録要求を受信した場合には、TLB制御部5aに対してTTEの登録要求を発行する。そして、TSBW制御部19は、処理を終了する。すなわち、TSBW制御部19は、TSB0~3のうち、いずれかのTSB0~3によってリクエストの対象となるTTEが取得された場合には、その時点でTSB制御部5aにTTEの登録要求を発行する。そして、TSBW制御部19は、他のTSBによるTRFリクエストの結果にトラップ要因が存在する場合にも、それを無視して処理を完了する。また、TSBW制御部19は、処理を完了する場合には、完了信号をL1データキャッシュ7cのMIBに送信する。MIBは、TRFリクエストフラグがonであり、かつ、完了信号を取得すると、TRFリクエスト完了フラグをonにする。このような場合には、L1データキャッシュ7cは、L2キャッシュ6からデータが送出された場合にも、起動信号をTSBW制御部19に送信せず、L2キャッシュ6から送出されたデータのキャッシュのみを行う。また、TSBW制御部19は、先行リクエスト制御部14が有する全てのTSBが発行したTRFリクエストにより取得されたTTEのチェック結果が全てトラップ要因の通知である場合には、以下の処理を実行する。すなわち、TWBW制御部18は、通知されたトラップ要因のうち、最も若い番号のTSBが発行したTRFリクエストに関わるトラップ要因であって、最も優先度の高いトラップ要因をL1データキャッシュ制御部7aに対通知し、トラップ処理を実行させる。一方、TSBW制御部19は、リクエスト制御部12が有する全てのTSB0~3が発行したTRFリクエストに係るチェック結果が、トラップ要因の通知である場合は、そのまま処理を終了する。また、TSBW制御部19は、他のリクエスト制御部12aおよびリクエスト制御部12bについても、全てのTRFリクエストに係るチェック結果がトラップ要求である場合には、そのまま処理を終了する。つまり、TSBW制御部19は、TOQに係るトラップ要因が通知された場合にのみ、トラップ処理を実行し、他のリクエストに関わるトラップ要因が通知された場合には、トラップ処理を実行せずに、処理を終了する。これにより、TSBW制御部19は、TTEのリクエストをアウトオブオーダーに実行する場合にも、TOQに関わるトラップ要因が検出された際にのみトラップ処理を実行するL1データキャッシュ制御部7aの論理の変更を不要とする。この結果、複数の変換対取得部15~15bの制御が容易になる。このように、HWTW10は、複数のオペランドに関わるTTEについてのテーブルウォークをアウトオブオーダーに実行する。このため、HWTW10は、複数のオペランドに関するTTEを迅速に取得することができる。また、HWTW10は、それぞれ独立に動作する複数の変換対取得部15~15bを有し、ストランドスレッド毎に、TTEのリクエストを異なる変換対取得部15~15bに割当てる。このため、HWTW10は、ストランドスレッド毎に、オペランドに関わるTTEのリクエスト同士をアウトオブオーダーに実行することができる。なお、TLB制御部5aは、L1データキャッシュ7cからTTEをTLB5に登録させる場合には、CPU1が実行するソフトウェアがストア命令により、TLB5へ新たなTTEを登録するデータイン動作に変換することにより登録させる。このため、TLB制御部5aは、新たな処理を実行するための回路を実装する必要がなく、回路量を削減することができる。なお、L1キャッシュ制御部7aは、取得したTTEに発生した訂正可能な1ビットエラーを訂正する等の処理を実行するため等の理由により、TRFリクエストがアボートした場合には、TRFリクエストがアボートしたことを示す信号をTSB0に出力する。このような場合には、TSB0は、L1データキャッシュ制御部7aに、再度TRFリクエストを発行する。また、L1キャッシュ制御部7aは、TRFリクエストの対象となるデータに訂正不能なエラーであるUEUncorrectableErrorが発生した場合には、UEである旨を示す信号をTSB0に出力する。このような場合には、L1キャッシュ制御部7aは、TSBW制御部19に、MMU-ERROR-TRAP要因が生じた旨を示す通知を送信する。また、L1キャッシュ制御部7aは、各信号をTRFリクエストのクエストポートIDとテーブルウォーカーのIDとともに送信することで、TRFリクエストを発行した任意のTSBに対して各信号を送信することができる。例えば、命令制御部3、演算部4、L1データキャッシュ制御部7a、L1命令キャッシュ制御部7dとは、電子回路である。また、TLB制御部5a、TLB検索部5eとは、電子回路である。また。リクエスト受信部11~11b、リクエスト制御部12~12b、先行リクエスト受信部13、先行リクエスト制御部14、TSBポインタ計算部17、リクエストチェック部18、TSBW制御部19とは、電子回路である。ここで、電子回路の例として、ASICApplicationSpecificIntegratedCircuitやFPGAFieldProgrammableGateArrayなどの集積回路、またはCPUCentralProcessingUnitやMPUMicroProcessingUnitなどを適用する。また、TLB本体部5b、コンテキストレジスタ5c、仮想アドレス5d、L1データタグ7b、L1データキャッシュ7c、L1命令タグ7e、L1命令キャッシュ7f、制御設定レジスタ部16とは、レジスタ等の半導体メモリ素子である。次に、図5a~5cを用いて、HWTW10が同じストランドスレッドに含まれる複数のオペランドに関するTTEの取得リクエストを並行して実行することで、連続してMMUミスが発生した場合にも、アドレス変換に要する時間を短縮することができる点について説明する。図5aは、OSが連続してトラップ処理を実行する処理を説明するための図である。図5bは、従来のHWTWの処理を説明するための図である。図5cは、実施例1に関わるHWTWの処理を説明するための図である。なお、図5a~図5c中の通常処理とは、演算処理部によって演算処理が実行されている状態を示す。また、図5a~図5c中のキャッシュミスとは、アドレス変換後の物理アドレスが示す記憶領域のオペランド読み込みリクエストが、キャッシュミスした後に主記憶装置からオペランドを取得する処理を実行している状態を示す。図5aに示す例では、従来のCPUは、通常処理の後、TLBを検索した結果、MMUミスを検出する。すると、従来のCPUは、OSにトラップ処理を実行させ、TTEをTLBに登録させる。その後、従来のCPUは、新たに登録したTTEを用いて、アドレス変換を行い、データを検索した結果、キャッシュミスが生じるので、主記憶装置からオペランドを取得する。続いて、従来のCPUは、TLBの検索を行うが、再度MMUミスを検出するので、再度OSにトラップ処理を実行させ、TTEをTLBに登録させる。その後、従来のCPUは、アドレス変換を行ってデータの検索を行うが、キャッシュミスが発生するので、オペランドを主記憶装置から取得する。このように、従来のCPUは、MMUミスが発生する度に、OSにトラップ処理を実行させる。このため、従来のCPUが通常処理を実行するのは、2度目のMMUミスが発生し、MMUミスが発生したTTEをTLBに登録してからとなる。次に、図5bを用いて、従来のCPUがHWTWを実行する処理について説明する。例えば、従来のCPUは、MMUミスが検出されると、HWTWを起動させ、TTEの登録処理を実行させる。そして、従来のCPUは、キャッシュしたTTEを用いてアドレス変換を行い、オペランドを取得する。次に、従来のCPUは、再度MMUミスを検出するが、TTEの登録処理をHWTWに実行させるので、MMUミスの検出直後に、通常処理を開始する。しかし、従来のCPUは、MMUミスが発生する度に、TTEの登録処理を1つのHWTWに順次実行させるので、演算処理に要する時間を5ほどしか短縮することができない。次に、図5cを用いて、HWTW10を有するCPU1が実行する処理について説明する。CPU1は、1度目のMMUミスを検出した場合には、HWTW10にTTEの登録処理を実行させる。続いて、CPU1は、2度目のMMUミスを検出するが、HWTW10は、HWTW10がTTEの取得処理を実行中であっても、新たなTTEの取得リクエストを発行する。すると、HWTW10は、図5c中Cに示すように、複数のオペランドに関わるTTEの取得リクエストを並行して実行する。このため、CPU1は、MMUミスが連続する場合にも、迅速にTTEを取得することができる結果、演算処理に要する時間を20ほど短縮することができる。次に、図6を用いてCPU1が実行する処理の流れの一例について説明する。図6は、実施例1に関わるCPUが実行する処理の流れを説明するためのフローチャートである。図6に示す例では、CPU1は、メモリアクセスリクエストが発行されたことをトリガとしてステップS101:Yes、処理を開始する。なお、CPU1は、メモリアクセスリクエストが発行されていない場合はステップS101:No、処理を開始せずに待機する。まず、CPU1は、メモリアクセスリクエストが発行された場合はステップS101:Yes、メモリアクセスリクエストの対象となる仮想アドレスを物理アドレスに変換するTTEをTLBから検索するステップS102。そして、CPU1は、TTEがTLBヒットしたか否かを判別するステップS103。次に、CPU1は、TTEがTLBミスした場合にはステップS103:No、HWTW10によるテーブルウォークを実行するか否かを示す設定が有効であるか否かを判別するステップS104。すなわち、CPU1は、テーブルウォークを実行するか否かを示すテーブルウォーク有効ビットがonであるか否かを判別する。そして、CPU1は、HWTW10によるテーブルウォークを実行させる場合はステップS104:Yes、HWTW10を起動するステップS105。その後、CPU1は、TSBポインタを算出しステップS106、算出したTSBポインタを用いて、メモリ2のTSB領域にアクセスし、TTEを取得するステップS107。次に、CPU1は、取得したTTEが正しいか否かをチェックするステップS108。そして、CPU1は、取得したTTEが正しい場合、すなわち、TRFリクエストの対象となるTTEである場合にはステップS108:Yes、取得したTTEをTLB5に登録するステップS109。一方、CPU1は、取得したTTEが誤りである場合にはステップS108:No、OSにトラップ処理を実行させるステップS110~S113。なお、OSによるトラップ処理ステップS110~S113は、従来のCPUが実行する処理と同様図9中ステップS5~S8であるものとし、詳細な説明を省略する。また、CPU1は、TTEをTLBから検索した結果ステップS102、TLBヒットした場合にはステップS103:Yes、以下の処理を実行する。すなわち、CPU1は、ヒットしたTTEによってアドレス変換した物理アドレスを用いて、メモリアクセスリクエストの対象データをL1データキャッシュ7cから検索するステップS114。そして、CPU1は、通常時と同様の演算処理を実行し、処理を終了する。次に、図7を用いて、HWTW10が実行する処理の流れについて説明する。図7は、実施例1に関わるHWTWが実行する処理の流れの一例を説明するための図である。図7に示す例では、HWTW10は、リクエスト受信部11~11bがリクエストを受信したことをトリガとしてステップS201:Yes、処理を開始する。なお、HWTW10は、リクエスト受信部11~11bがリクエストを受信していない場合はステップS201:No、リクエストを受信するまで待機する。まず、HWTW10は、テーブルウォークであるTSB0~3を起動させるステップS202。次に、HWTW10は、TSBコンフィグレジスタのテーブルウォーク有効ビットがonであるか否かを判別するステップS203。そして、HWTW10は、テーブルウォーク有効ビットがonである場合はステップS203:Yes、TSBポインタを算出しステップS204、L1データキャッシュ制御部7aにTRFリクエストを発行するステップS205。次に、HWTW10は、L1データキャッシュ7cからの応答によりL1データキャッシュ7cにTRFリクエストの対象のTTEが保持されているかをチェックするステップS206。そして、HWTW10は、L1データキャッシュ7cにTTEが保持されていない場合、すなわち、TTEがキャッシュミスした場合はステップS206MISS、TTEのムーブインMI:MoveIn待ち状態に移行するステップS207。次に、HWTW10は、MIBにTRFリクエストであることを示すフラグが保持されたか否かを判別しステップS208、MIBにTRFリクエストであることを示すフラグが保持された場合はステップS208:Yes、以下の処理を実行する。すなわち、HWTW10は、再度TSBポインタを算出しステップS204、TRFリクエストを発行するステップS205。一方、HWTW10は、MIBにTRFリクエストであることを示すフラグが保持されていない場合はステップS208:No、再度ムーブイン待ち状態に移行するステップS207。一方、HWTW10は、L1データキャッシュ7cに対するTRFリクエストがヒットした場合はステップS206:HIT、ヒットしたTTEの候補が正しいTTEであるか否かを判別するステップS209。そして、HWTW10は、TTEの候補が正しいTTEである場合はステップS209:Yes、TLB5に取得したTTEの登録要求を発行しステップS210、テーブルウォークを完了するステップS211。ここで、HWTW10は、ヒットしたTTEの候補が正しいTTEではない場合はステップS209:No、トラップ要因を検出しステップS212、その後、テーブルウォークを完了するステップS211。また、HWTW10は、L1データキャッシュ7cが記憶するTTEのデータにUEが発生した場合はステップS206:UE、トラップ要因を検出しステップS212、その後、テーブルウォークを完了するステップS211。また、HWTW10は、TRFリクエストがアボートした場合はステップS206:ABORT、再度、TSB0~3を起動させるステップS202。なお、HWTW10は、テーブルウォーク有効ビットがoff0である場合はステップS203:No、テーブルウォークを実行せずに、処理を完了するステップS211。次に、図8を用いて、TSBW制御部19が実行する処理の流れの一例について説明する。図8は、実施例1に関わるTSBW制御部が実行する処理の流れの一例を説明するためのフローチャートである。なお、図8に示す例では、TSBW制御部19は、各TSB0~3によるテーブルウォークが完了したことをトリガとしてステップS301:Yes、処理を開始する。また、TSBW制御部19は、各TSB0~3によるテーブルウォークが完了していない場合はステップS301:No、処理を開始せずに待機する。次に、TSBW制御部19は、TSB0~3のいずれかにより、TSBがヒットしたか否かを判別しステップS302、TSBヒットした場合はステップS302:Yes、TLB登録要求をTLB制御部5aに発行するステップS303。次に、TSBW制御部19は、L1データキャッシュ制御部7aに再起動を要求するステップS304。次に、TSB制御部19は、TRFリクエストを再投入することでステップS305、TLBを再度検索させるステップS306。そして、TSBW制御部19は、TLBヒットしたか否かを判別しステップS307、TLBヒットした場合はステップS307:Yes、L1データキャッシュ7cのキャッシュ検索を実行しステップS308、その後処理を終了する。一方、TSBW制御部19は、TLBミスした場合はステップS307:No、何もせずにそのまま処理を終了する。一方、TSBW制御部19は、TSB0~3のいずれもがTSBミスした場合はステップS302:No、1つのリクエスト制御部が有する全てのTSBがテーブルウォークを完了したか否かを判別するステップS309。そして、TSBW制御部19は、全てのTSBがテーブルウォークを完了していない場合はステップS309:No、以下の処理を実行する。すなわち、TSBW制御部19は、一定時間待機しステップS310、再度1つのリクエスト制御部が有する全てのTSBがテーブルウォークを完了したか否かを判別するステップS309。一方、TSBW制御部19は、1つのリクエスト制御部が有する全てのTSBがテーブルウォークを完了した場合はステップS309:Yes、図7中ステップS212にて検出されたトラップ要因をチェックするステップS311。次に、TSBW制御部19は、トラップ要因が発生したTRFリクエストがTOQであるか否かを判別するステップS312。そして、TSBW制御部19は、トラップ要因が発生したTRFリクエストがTOQに保持されている場合はステップS312:Yes、L1データキャッシュ制御部7aにトラップ要因を通知する。すると、L1データキャッシュ制御部7aは、OSにトラップ要因を通知しステップS314、トラップ処理を実行させる。その後、TSBW制御部19は、処理を終了する。一方、TSBW制御部19は、トラップ要因が発生したTRFリクエストがTOQではない場合はステップS312:No、トラップ要因を破棄しステップS315、何もせずにそのまま処理を終了する。実施例1の効果上述したように、CPU1は、仮想アドレスを物理アドレスに変換するTTEを複数記憶するメモリ2と接続されている。また、CPU1は、複数のスレッドを実行し、仮想アドレスを含むメモリリクエストを出力する演算部4を有する。また、CPU1は、メモリ2からTTEの一部を登録するTLB5を有する。また、CPU1は、演算処理の対象となるデータ、すなわちオペランドが格納された仮想アドレスを物理アドレスに変換するTTEがTLB5に登録されていない場合には、HWTW10にTTEの取得リクエストを発行するTLB制御部5aを有する。また、CPU1は、発行された取得リクエストの対象となるTTEをメモリ2から取得する複数のリクエスト制御部12~12bを有する複数の変換対取得部15~15bを有する。そして、TLB制御部5aは、TTEの取得リクエストに関わるストランドスレッドごとに、異なる変換対取得部15~15bへ発行し、各変換対取得部15~15bは、それぞれ独立してTTEの取得を実行する。また、CPU1は、各変換対取得部15~15bが取得したTTEのいずれかを、TLB5に登録するTSBW制御部19を有する。このため、CPU1は、MMUミスするようなメモリアクセスが連続した場合にも、オペランドが格納された仮想アドレスを物理アドレスに変換する複数のTTEを並行して登録することができる。この結果、CPU1は、アドレス変換に要する時間を短縮することができる。また、CPU1は、1つのストランドスレッドにおいてオペランドに関わるTTEの取得要求が複数発行された場合にも、各TTEを平行して登録することができるので、演算処理に要する時間を短縮できる。また、CPU1は、異なるストランドスレッドにおいてオペランドに関わるTTEの取得要求が同時に発行された場合にも、各TTEを並行して登録できるので、アドレス変換に要する時間を短縮できる。例えば、データベースシステムの一例として、リレーショナルデータベース方式が適用されたシステムが知られている。このようなシステムにおいては、各データには、隣接するデータを示す情報が付加されるため、オペランド等のデータを取得する際に、連続してTLBミスMMUミスが発生し易い。しかし、CPU1は、複数のオペランドに関わるTTLのリクエストが連続してTLBミスした場合にも、並行して各TTEを取得し、アドレス変換を実行することができるので、演算処理に要する時間を短縮することができる。また、CPU1は、演算処理とは独立して上述した処理を実行するので、さらに演算処理に要する時間を短縮できる。また、CPU1は、TTEを取得するリクエスト制御部12に複数のTSB0~3を有し、各TSB0~3にそれぞれ異なる領域からTTEを取得させる。すなわち、CPU1は、1つのTTEを取得するリクエストから、それぞれ異なる物理アドレスを算出し、それぞれ異なる物理アドレスに記憶されたTTEを取得する複数のTSB0~3を有する。そして、CPU1は、取得したTTEの候補のうち、TTE-Tagのチェックを行うことで、リクエストと対応する仮想アドレスを含むTTEを取得する。このため、CPU1は、TTEを格納する領域がメモリ2に複数存在する場合にも、迅速にTTEを取得することができる。また、CPU1は、TTEの取得リクエストが、あるストランドスレッドにおいて最初に発行されたオペランドに関わるTTEの取得リクエストである場合、すなわち、TOQである場合には、先行リクエスト受信部13にTTEの取得リクエストを発行する。そして、CPU1は、先行リクエスト制御部14にTOQとなるTTEの取得リクエストを実行させ、TOQに保持されているTTEの取得リクエストを実行した結果、UE等のトラップ要因が発生した場合には、OSにトラップ処理を実行させる。このため、CPU1は、TOQについてのみトラップ処理を実行する従来のL1データキャッシュ制御部7aに、新たな機能を追加しないので、HWTW10の実装を容易に行うことができる。また、CPU1は、仮想アドレスを用いて算出したTSBポインタをL1データキャッシュ制御部7aに出力することで、TTEをL1データキャッシュ7cに格納させ、L1データキャッシュ7cに格納されたTTEをTSB5に登録する。つまり、CPU1は、TTEをキャッシュメモリに保持し、キャッシュメモリに保持したTTEのうち、取得リクエストに対応するTTEをTSB5に登録する。このため、CPU1は、新たな機能をL1キャッシュ7に付加せずともよいので、HWTW10の実行を容易に行う事ができる。また、CPU1は、L1データキャッシュ7cにキャッシュされたTTEからエラーが発生しているか否かを判別する場合や、リクエストに関わるTTEであるか否かを判別する場合には、TTE-Data部を先に送出させ、次に、TTE-Tag部を送出させる。このため、CPU1は、チェックに時間を要するTTE-Data部のチェックを先に開始することができるため、TTEを取得する際の時間を増加させることなく、L1キャッシュ7とHWTW10との間のバス幅を削減することができる。これまで本発明の実施例について説明したが実施例は、上述した実施例以外にも様々な異なる形態にて実施されてよいものである。そこで、以下では実施例2として本発明に含まれる他の実施例を説明する。1変換対取得部15~15bの数について上述した実施例1では、HWTW10は、3つの変換対取得部15~15bを有していた。しかし、実施例はこれに限定されるものではなく、HWTW10は、2つ以上であれば任意の数の変換対取得部を有することとしてもよい。2リクエスト受信部11~11bおよびリクエスト制御部12~12bの数について上述した実施例1では、HWTW10は、3つのリクエスト受信部11~11bおよび3つのリクエスト制御部12~12bを有していた。しかし、実施例はこれに限定されるものではなく、任意の数のリクエスト受信部およびリクエスト制御部を有することとしてもよい。また、各リクエスト制御部12~12b、および先行リクエスト制御部14は、複数のTSB0~3を有していたが、実施例はこれに限定されるものではない。すなわち、メモリ2にTTEを記憶される領域が固定である場合には、各リクエスト制御部12~12bおよび先行リクエスト制御部14は、1つのTSBを有すればよい。また、メモリ2にTTEを記憶する領域の候補が4つ存在する場合は、各リクエスト制御部12~12bおよび先行リクエスト制御部14は、2つのTSB0、1を有し、各TSB0、1に2回ずつテーブルウォークを実行させてもよい。3先行リクエスト制御部14について上述したCPU1は、TOQに関わるTTEの取得リクエストを先行リクエスト制御部14に実行させていた。しかし、実施例はこれに限定されるものではない。例えば、CPU1は、区別の無い同様の機能を有する4つのリクエスト受信部11~11cおよび4つのリクエスト制御部12~12cを有する。そして、CPU1は、TOQに関わるTTEの取得リクエストを発行するリクエスト制御部にTOQフラグを持たせる。このような場合には、TSBW制御部19は、TOQフラグを持ったリクエスト制御部によるTRFリクエストの実行結果からトラップ要因を検出した場合にのみ、OSにトラップ処理を実行させればよい。