複数のスレッドがハードウエアマルチスレッディング処理を行うマルチスレッドプロセッサであって、前記複数のスレッドによって使用可能な、演算器その他の複数の命令実行手段と、前記複数の命令実行手段に対して前記複数のスレッドのいずれかに属する命令を発行すると共に、所定のタイミングで前記複数の命令実行手段の機能チェック用命令と該機能チェック用命令が正しく実行されたか否かを確認する確認用命令を発行する命令発行手段と、前記命令発行手段が前記機能チェック用命令を発行する際と、前記確認用命令を発行する際とで前記複数の命令実行手段のうち異なる命令実行手段に命令を発行するように前記命令発行手段を制御する制御手段と、を備えるマルチスレッドプロセッサ。請求項1に記載のマルチスレッドプロセッサであって、前記制御手段は、前記命令発行手段が発行しようとする命令の属するスレッドを特定可能な手段を有し、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に、前記機能チェック用命令の属するスレッドと、前記確認用命令の属するスレッドのそれぞれに対応した異なるID信号を前記命令発行手段に出力する手段であり、前記命令発行手段は、前記制御手段から入力されるID信号に応じて、前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段である、マルチスレッドプロセッサ。請求項2に記載のマルチスレッドプロセッサであって、前記制御手段は、前記命令発行手段が前記機能チェック用命令の属するスレッド及び前記確認用命令の属するスレッドとは、異なるスレッドに属する命令を発行しようとする際に、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に出力するID信号とは異なるID信号を前記命令発行手段に出力する手段である、マルチスレッドプロセッサ。請求項1に記載のマルチスレッドプロセッサであって、前記制御手段は、前記命令発行手段が発行しようとする命令の属するスレッドグループを特定可能な手段を有し、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に、前記機能チェック用命令の属するスレッドグループと、前記確認用命令の属するスレッドグループのそれぞれに対応した異なるID信号を前記命令発行手段に出力する手段であり、前記命令発行手段は、前記制御手段から入力されるID信号に応じて、前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段である、マルチスレッドプロセッサ。請求項4に記載のマルチスレッドプロセッサであって、前記制御手段は、前記命令発行手段が前記機能チェック用命令の属するスレッドグループ及び前記確認用命令の属するスレッドグループとは異なるスレッドグループに属する命令を発行しようとする際には、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に出力するID信号とは異なるID信号を前記命令発行手段に出力する手段である、マルチスレッドプロセッサ。複数のスレッドがハードウエアマルチスレッディング処理を行うマルチスレッドプロセッサであって、前記複数のスレッドによって使用可能な、演算器その他の複数の命令実行手段と、前記複数の処理手段のそれぞれに対して命令発行可能な命令発行手段と、を備え、前記命令発行手段は、発行する命令の属するスレッド又はスレッドグループを示す入力信号に応じて前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段である、マルチスレッドプロセッサ。しかしながら、ハードウエアマルチスレッディング処理を行うマルチスレッドプロセッサの場合、仮に、共有される演算器を用いて機能チェックをしようとすると、同一の演算器による演算結果を比較することになり、正確なチェックを行うことができない。また、演算器等を複数備える場合であっても、従来のマルチスレッドプロセッサでは、演算器の選択とスレッドの対応付けに関する制御を行っておらず、同一の演算器による演算結果を比較する結果となる場合がある。本発明はこのような課題を解決するためのものであり、複数の命令実行手段を備えるマルチスレッドプロセッサにおいて、命令実行手段の正確な機能チェックを行うことを、主たる目的とする。上記目的を達成するための本発明の第1の態様は、複数のスレッドがハードウエアマルチスレッディング処理を行うマルチスレッドプロセッサであって、前記複数のスレッドによって使用可能な、演算器その他の複数の命令実行手段と、前記複数の命令実行手段に対して前記複数のスレッドのいずれかに属する命令を発行すると共に、所定のタイミングで前記複数の命令実行手段の機能チェック用命令と該機能チェック用命令が正しく実行されたか否かを確認する確認用命令を発行する命令発行手段と、前記命令発行手段が前記機能チェック用命令を発行する際と、前記確認用命令を発行する際とで前記複数の命令実行手段のうち異なる命令実行手段に命令を発行するように前記命令発行手段を制御する制御手段と、を備えるマルチスレッドプロセッサである。この本発明の第1の態様によれば、命令発行手段が機能チェック用命令を発行する際と、確認用命令を発行する際とで複数の命令実行手段のうち異なる命令実行手段に命令を発行するように命令発行手段を制御するため、複数の命令実行手段を備えるマルチスレッドプロセッサにおいて、命令実行手段の正確な機能チェックを行うことができる。本発明の第1の態様において、前記制御手段は、前記命令発行手段が発行しようとする命令の属するスレッドを特定可能な手段を有し、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に、前記機能チェック用命令の属するスレッドと、前記確認用命令の属するスレッドのそれぞれに対応した異なるID信号を前記命令発行手段に出力する手段であり、前記命令発行手段は、前記制御手段から入力されるID信号に応じて、前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段であるものとしてもよい。この場合、前記制御手段は、前記命令発行手段が前記機能チェック用命令の属するスレッド及び前記確認用命令の属するスレッドとは、異なるスレッドに属する命令を発行しようとする際に、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に出力するID信号とは異なるID信号を前記命令発行手段に出力する手段であるものとしてもよい。また、本発明の第1の態様において、前記制御手段は、前記命令発行手段が発行しようとする命令の属するスレッドグループを特定可能な手段を有し、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に、前記機能チェック用命令の属するスレッドグループと、前記確認用命令の属するスレッドグループのそれぞれに対応した異なるID信号を前記命令発行手段に出力する手段であり、前記命令発行手段は、前記制御手段から入力されるID信号に応じて、前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段であるものとしてもよい。この場合、前記制御手段は、前記命令発行手段が前記機能チェック用命令の属するスレッドグループ及び前記確認用命令の属するスレッドグループとは異なるスレッドグループに属する命令を発行しようとする際には、前記命令発行手段が前記機能チェック用命令及び前記確認用命令を発行しようとする際に出力するID信号とは異なるID信号を前記命令発行手段に出力する手段であるものとしてもよい。本発明の第2の態様は、複数のスレッドがハードウエアマルチスレッディング処理を行うマルチスレッドプロセッサであって、前記複数のスレッドによって使用可能な、演算器その他の複数の命令実行手段と、前記複数の処理手段のそれぞれに対して命令発行可能な命令発行手段と、を備え、前記命令発行手段は、発行する命令の属するスレッド又はスレッドグループを示す入力信号に応じて前記複数の命令実行手段のうち命令を発行する命令実行手段を決定する手段である、マルチスレッドプロセッサである。この本発明の第2の態様によれば、命令発行手段が、発行する命令の属するスレッド又はスレッドグループを示す入力信号に応じて複数の命令実行手段のうち命令を発行する命令実行手段を決定するため、命令実行手段の正確な機能チェックを行うことができる。本発明によれば、複数の命令実行手段を備えるマルチスレッドプロセッサにおいて、命令実行手段の正確な機能チェックを行うことができる。以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。以下、図面を参照し、本発明の一実施例に係るマルチスレッドプロセッサ1について説明する。図1は、本発明の一実施例に係るマルチスレッドプロセッサ1のシステム構成例である。マルチスレッドプロセッサ1は、主要な構成として、プログラムメモリ10と、命令フェッチユニット20と、命令バッファ221~22nと、命令デコーダ24と、レジスタフェッチユニット26と、命令発行部28と、汎用レジスタ301~30nと、システムレジスタ32と、実行ユニット40と、パイプライン制御回路50と、ID信号出力部60と、を備える。なお、本実施例では、二以上の任意の数であるスレッド数後述するアクセス専用スレッドを含むがnであるとし、の後の数字がスレッドナンバーを示すものとする。また、図1に示す構成は、ハードウエアマルチスレッディング処理を行うための一般的な構成を例示したものであり、ハードウエアマルチスレッディング処理を行うことが可能な構成であれば、任意の構成要素を置換、削除、追加等してよい。ハードウエアマルチスレッディング処理とは、複数のスレッドが、命令デコーダや演算回路等のハードウエアの一部を共有して処理を行なうものである。スレッドとは、ハードウエアを部分的に共有して処理を行なう仮想的な処理主体をいう。本実施例では、命令バッファやレジスタはスレッド毎に用意されているが、その他の構成要素はスレッド間で共用されるものとする。スレッドの切り替えは、所定の実行順に従って、図示しないOSオペレーティングシステムに含まれるスレッドスケジューラによって制御されるものとする。プログラムメモリ10は、例えばフラッシュROMReadOnlyMemoryであり、各スレッドが実行するプログラム命令列を格納する。プログラムメモリ10は、命令フェッチユニット20から命令の格納場所を示すアドレスが入力されると、当該アドレスに格納された命令を出力する。なお、フラッシュROMに代えて、EEPROMElectricallyErasableandProgrammableReadOnlyMemoryや通常のROM等が用いられ得る。命令フェッチユニット20は、スレッド毎のプログラムカウンタ211~21nを有し、図示しない命令フェッチバスを介してプログラムメモリ10から命令等をフェッチし、命令バッファ221~22nのうち、スレッドに対応した命令バッファに格納する。すなわち、スレッド1が実行する命令等をフェッチした場合は命令バッファ221に命令を格納し、スレッド2が実行する命令等をフェッチした場合は命令バッファ222に命令を格納する。命令バッファ221~22nは、例えばFIFOFirstInFirstOutに従って命令を入出力するように制御される。命令デコーダ24は、いずれかの命令バッファから供給される命令及びオペランドの格納場所より具体的には、汎用レジスタ301~30n又は図示しないRAM等におけるアドレスを解読デコードする。レジスタフェッチユニット26は、解読されたオペランドの格納場所に格納されたオペランドを取得する。命令発行部28は、命令デコーダ24及びレジスタフェッチユニット26によって用意された命令、オペランド、演算結果の格納場所等からなる命令を、実行ユニット40に発行する。実行ユニット40は、例えば、四則演算その他の演算処理を行うための複数のALUArithmeticLogicUnit41A、41Bの他、乗算器MUL42、除算器DIV43、LSULoadStoreUnit44A、44B等の命令実行手段を備え、スーパースカラ動作を可能にしている。また、この他に、FPGAFieldProgrammableGateArrayやSIMDSingleInstructionMultipleData演算器等を備えてもよい。実行ユニット40は、実行した演算等の結果を、スレッドに対応した汎用レジスタ301~30nに格納するライトバック。命令発行部28は、命令の属するスレッドに応じて、命令を発行する実行ユニット40に含まれる命令実行手段のうちいずれに命令を実行するかを決定する。また、命令発行部28は、必要に応じて、実行ユニット40に含まれる命令実行手段のうち複数のものに対して命令の同時発行が可能であるかどうかを判定し、その結果に応じて命令を同時発行して並行処理を行わせるスーパースカラ動作。スーパースカラ動作が可能であるかどうかの判定は、オペランドチェック先の命令の演算結果を後の命令が用いて演算を行うかをチェックする等その他の手法により行われる。また、スレッド毎にスーパースカラ動作の許可又は不許可が設定されている場合は、これが加味されてよい。システムレジスタ32は、コンテキストデータ等のデータを格納する。パイプライン制御回路50は、上記パイプライン動作全体を制御する。具体的には、内部クロックの立ち上がり等に応じて、命令フェッチユニット20、命令デコーダ24、命令発行部28、実行ユニット40が有する命令実行手段等を作動させる。また、OSから入力される信号等を参照し、これらの動作がいずれのスレッドに属するものであるかを把握している。ID信号出力部60は、例えば、スレッドの実行順を規定したデータが格納されるスレッド実行順格納用レジスタ62を備える。必然的に、スレッド実行順格納用レジスタ62に格納されたスレッドの実行順は、OSに含まれるスレッドスケジューラによって制御される実行順と一致している。図2は、スレッド実行順格納用レジスタ62に格納されるデータの内容を例示した図である。係るデータは、マルチスレッドプロセッサの起動時に、プログラムメモリ10又は図示しないROM等からダウンロードされて用いられる。本実施例では、スレッド1は、命令実行手段の機能チェック用の命令のみを含み、スレッド3は、機能チェック用命令が正しく実行されたか否かを確認する確認用命令のみを含む。確認用命令は、機能チェック用の命令と全く同一の命令であってもよいし、異なる命令であっても構わない。また、図2に示すように、スレッド実行順格納用レジスタ62には、次に命令発行するスレッドを示すポインタ64が附設されている。ポインタ64は、具体的には、スレッド実行順格納用レジスタ62のアドレスのうち所定のアドレスを示す値が格納されるレジスタであってよい。ポインタ64の示すアドレスは、パイプライン制御回路50によってクロック毎に変更される。ID信号出力部60は、ポインタ64が示すスレッド実行順格納用レジスタ62のアドレスに格納された値に基づいて、ID信号を命令発行部28に出力する。例えば、ポインタ64がスレッド1を示している場合は0、ポインタ64がスレッド3を示している場合は1、ポインタ64がスレッド1及び3以外のスレッドを示している場合は2をID信号として出力する。そして、命令発行部28は、以下のように、ID信号が0である場合と1である場合で異なる命令実行手段に命令を発行する。例えば、ID信号出力部60から入力されたID信号が0である場合は、ALU41Aロードストア等が付随する場合は、更にLSU44A又は44Bに命令を発行し、ID信号出力部60から入力されたID信号が1である場合は、ALU41Bロードストア等が付随する場合は、更にLSU44A又は44Bに命令を発行し、ID信号出力部60から入力されたID信号が2である場合は、ALU41AとALU41Bのうち任意の一方又は双方に命令を発行する。図3は、命令発行部28がID信号に応じて命令を発行する命令実行手段を決定する様子を示す図である。図4は、このような命令発行制御の結果として実現されるパイプライン動作を模式的に示す図である。本図では、スレッド数が0~3の4つであるものとしている。図中、IFは命令フェッチInstructionFetchを、DECはデコード及びレジスタフェッチを、IDは、ID信号の受信を、それぞれ示している。図示するように、時点t1でスレッド1によってALU41Aを用いた機能チェック用命令が実行されると、その後、スレッド3によってALU41Bを用いた確認用命令が実行される。また、時点t2では、時点1とは逆に、スレッド3によってALU41Bを用いた機能チェック用命令が実行され、その後、スレッド1によってALU41Aを用いた確認用命令が実行される。これらの命令実行結果を比較することにより、ALU41AとALU41Bのいずれかに異常が発生していないかどうかを正確に検知することができる。図5は機能チェック用命令の処理フローの一例を示す図であり、図6は、確認用命令の処理フローの一例を示す図である。機能チェック用命令を実行するALUは、機能チェック用命令及びオペランドを取得しS100、演算処理を行うS102。ここでは、演算処理として、{x[7:0]}で示されるオペランドと、{0x55}という値とのアンド演算を行うものとする。図7は、係るアンド演算の正しい演算結果期待値を示す図である。図示するように、期待値は、{0b01010100}すなわち{0x54}となる。機能チェック用命令を実行したALUは、演算結果を汎用レジスタの所定領域に格納するS104。一方、確認用命令を実行するALUは、汎用レジスタの他の領域に予め格納されている期待値を取得しS200、更にいずれかのLSUが、機能チェック用命令を実行したALUによって格納された演算結果を取得するとS202、これらを比較して、一致するかどうかを判定するS204。一致判定は、具体的には双方の値を減算して値0となるか否かにより行われる。S204において、期待値と演算結果が一致しないと判定された場合には、OS等により所定のエラー処理が行われるS206。エラー処理は、実行ユニット40のリセット、マルチスレッドプロセッサ全体のリセット等、段階的に行われる。以上説明した本実施例のマルチスレッドプロセッサ1によれば、複数の命令実行手段を備えるマルチスレッドプロセッサにおいて、命令実行手段の正確な機能チェックを行うことができる。以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。例えば、ID信号出力部60において、スレッド毎にID信号を決定するものとしたが、機能チェック用命令や確認用命令の属するスレッドを含めて、複数のスレッドを含むスレッドグループ毎にID信号を決定するものとしてもよい。具体的には、ポインタ64がスレッド0及び1を示している場合は0、ポインタ64がスレッド2及び3を示している場合は1をID信号として出力するものとしてもよい。このように、機能チェック用命令が実行される際のID信号と、確認用命令が実行される際のID信号が異なっていればよく、この限りにおいて、スレッドのグルーピングは如何なる態様を採用してもよい。また、スレッド実行順格納用レジスタ62を備え、ポインタ64をパイプライン制御回路50が制御する構成を例示したが、パイプライン制御回路50が直接的に、次に命令発行するスレッドを示す信号を命令発行部28に出力する構成であってもよい。