【手続補正書】
【提出日】平成18年10月10日(2006.10.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マルチスレッド・プロセッサにおいて要求スレッドから宛先スレッドに向けられたスレッド間割込みを処理する方法であって、
前記宛先スレッドへの前記スレッド間割込みの送達の要求を受信する工程と、
前記スレッド間割込みの前記宛先スレッドが、スレッド間割込みの受信が可能とされているかどうか判断する工程と、
前記宛先スレッドがスレッド間割込みの受信が可能とされている場合は、スレッドＩＤを使用して前記宛先スレッドへの前記スレッド間割込みの送達を制御する工程とを含み、
前記要求スレッドは、単一のスレッド間割込みレジスタの第１のビットをセットすることにより、前記宛先スレッドへの前記スレッド間割込みの送達を要求するものであり、前記スレッド間割込みレジスタが、少なくとも前記要求スレッドと前記宛先スレッドとを含む複数のスレッドによって共有され、前記宛先スレッドは、共有された前記スレッド間割込みレジスタの第２のビットをセットすることによって、前記宛先スレッドから前記要求スレッドへの追加のスレッド間割込みの送達を要求するよう動作することを特徴とする方法。
【請求項２】
前記マルチスレッド・プロセッサのフラグ・レジスタ内の対応する割込み保留ビットをセットすることによって、前記要求元スレッドは前記宛先スレッドへの前記スレッド間割込みの送達を要求することを特徴とする請求項１に記載の方法。
【請求項３】
前記スレッド間割込みが前記宛先スレッドに送達されたとき、前記割込み保留ビットが自動的にクリアされることを特徴とする請求項２に記載の方法。
【請求項４】
前記マルチスレッド・プロセッサのイネーブル・レジスタ内の対応するイネーブル・ビットがセットされている場合は、前記宛先スレッドのスレッド間割込みの受信が可能とされていることを特徴とする請求項１に記載の方法。
【請求項５】
前記宛先スレッドが複数の割込みを同時に受信することを防ぐために、前記スレッド間割込みが前記宛先スレッドに送達されたときに前記イネーブル・ビットが自動的にクリアされることを特徴とする請求項４に記載の方法。
【請求項６】
前記宛先スレッドが前記スレッド間割込みを処理したときに、前記イネーブル・ビットが自動的に再セットされることを特徴とする請求項５に記載の方法。
【請求項７】
前記スレッド間割込みの前期要求が受信されると、前記マルチスレッド・プロセッサの１命令実行サイクルより短い持続時間を有する時間内に、前記スレッド間割込みが前記宛先スレッドに続いて送達されることを特徴とする請求項１に記載の方法。
【請求項８】
前記受信する工程、前記判断する工程、および前記制御する工程の各々が割込みコントローラに実装されることを特徴とする請求項１に記載の方法。
【請求項９】
前記割込みコントローラが、イネーブル・レジスタ、フラグ・レジスタ、および論理回路を含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記イネーブル・レジスタが少なくともＮ個の部分を含み、前記Ｎ個の部分の各々が前記マルチスレッド・プロセッサのＮ個のスレッドの１つに対応することを特徴とする請求項９に記載の方法。
【請求項１１】
前記スレッドの各々が、前記イネーブル・レジスタのそのスレッドに対応する部分にだけアクセスすることが許されており、そして前記イネーブル・レジスタの他のスレッドに対応するＮ−１個の部分のいずれにもアクセスすることが許されないことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記フラグ・レジスタが少なくともＮ個の部分を含み、前記Ｎ個の部分の各々が前記マルチスレッド・プロセッサのＮ個のスレッドの１つに対応することを特徴とする請求項９に記載の方法。
【請求項１３】
前記各スレッドは前記フラグ・レジスタの前記Ｎ個の部分のいずれにもアクセスすることが許されることを特徴とする請求項１２に記載の方法。
【請求項１４】
マルチスレッド・プロセッサにおいて、要求スレッドから宛先スレッドに向けられたスレッド間割込みを処理する装置であって、前記装置が、
論理回路を含む割込みコントローラを含み、前記割込みコントローラが、（ｉ）前記宛先スレッドへの前記スレッド間割込みの送達の要求を受信し、（ｉｉ）前記スレッド間割込みの前記宛先スレッドがスレッド間割込みの受信が可能とされているかどうかを判断し、（ｉｉｉ）前記宛先スレッドがスレッド間割込みの受信が可能とされている場合は、スレッドＩＤを使用して前記宛先スレッドへの前記スレッド間割込みの送達を制御する、ように構成されており、
前記要求スレッドは、単一のスレッド間割込みレジスタの第１のビットをセットすることにより、前記宛先スレッドへの前記スレッド間割込みの送達を要求するものであり、前記スレッド間割込みレジスタが、少なくとも前記要求スレッドと前記宛先スレッドとを含む複数のスレッドによって共有され、前記宛先スレッドは、共有された前記スレッド間割込みレジスタの第２のビットをセットすることによって、前記宛先スレッドから前記要求スレッドへの追加のスレッド間割込みの送達を要求するよう動作することを特徴とする装置。
【請求項１５】
前記割込みコントローラがイネーブル・レジスタおよびフラグ・レジスタをさらに含み、前記フラグ・レジスタ内の対応する割込み保留ビットをセットすることによって、前記要求元スレッドが前記宛先スレッドへのスレッド間割込みの送達を要求し、そして前記イネーブル・レジスタ内の対応するイネーブル・ビットがセットされている場合は、前記宛先スレッドのスレッド間割込みの受信が可能とされていることを特徴とする請求項１４に記載の装置。
【請求項１６】
前記論理回路が、
前記割込み要求を処理するための割込み要求論理回路と、
前記イネーブル・レジスタおよび前記フラグ・レジスタの両方からの対応するビットを、各論理ゲートが入力として受信する複数の論理ゲートと、
前記論理ゲートの出力の中から少なくとも１つの出力を選択して、少なくとも一部は前記スレッドＩＤに基づく前記スレッド間割込みの生成を制御する際に使用するマルチプレクサ回路とを含むことを特徴とする請求項１５に記載の装置。
【請求項１７】
前記論理回路は、タイマ割込み、命令アドレス割込み、およびデータ・アドレス割込みの少なくとも１つを含む少なくとも１つの更なる種類の割込みに対する前記スレッド間割込みの優先度を決める優先度論理回路をさらに含むことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記更なる種類の割込みよりも高い優先度、または低い優先度を前記スレッド間割込みに提供するように前記優先度論理回路が構成されることを特徴とする請求項１７に記載の装置。
【請求項１９】
データ・メモリおよびキャッシュ・メモリの少なくとも一方を含むメモリと、
マルチスレッド・プロセッサ中で、要求元スレッドから宛先スレッドに向けられたスレッド間割込みを処理する割込みコントローラとを含み、前記割込みコントローラが、（ｉ）前記宛先スレッドへの前記スレッド間割込みの送達の要求を受信し、（ｉｉ）前記スレッド間割込みの前記宛先スレッドがスレッド間割込みの受信が可能とされているかどうかを判断し、（ｉｉｉ）前記宛先スレッドがスレッド間割込みの受信が可能とされている場合は、スレッドＩＤを使用して前記宛先スレッドへの前記スレッド間割込みの送達を制御するように構成されており、
前記要求スレッドは、単一のスレッド間割込みレジスタの第１のビットをセットすることにより、前記宛先スレッドへの前記スレッド間割込みの送達を要求するものであり、前記スレッド間割込みレジスタが、少なくとも前記要求スレッドと前記宛先スレッドとを含む複数のスレッドによって共有され、前記宛先スレッドは、共有された前記スレッド間割込みレジスタの第２のビットをセットすることによって、前記宛先スレッドから前記要求スレッドへの追加のスレッド間割込みの送達を要求するよう動作することを特徴とするマルチスレッド・プロセッサ。
【請求項２０】
要求元スレッドから宛先スレッドに向けられたスレッド間割込みの処理に使用されるプログラム・コードが実施された機械可読の記憶媒体を、マルチスレッド・プロセッサ中に含む製品であって、前記プログラム・コードが前記プロセッサによって実行されるときに、
前記宛先スレッドへの前記スレッド間割込みの送達の要求を受信する工程と、
前記スレッド間割込みの前記宛先スレッドがスレッド間割込みの受信が可能とされているかどうかを判断する工程と、
前記宛先スレッドがスレッド間割込みの受信が可能とされている場合には、スレッドＩＤを使用して、前記宛先スレッドへの前記スレッド間割込みの送達を制御する工程とを実施するものであり、
前記要求スレッドは、単一のスレッド間割込みレジスタの第１のビットをセットすることにより、前記宛先スレッドへの前記スレッド間割込みの送達を要求するものであり、前記スレッド間割込みレジスタが、少なくとも前記要求スレッドと前記宛先スレッドとを含む複数のスレッドによって共有され、前記宛先スレッドは、共有された前記スレッド間割込みレジスタの第２のビットをセットすることによって、前記宛先スレッドから前記要求スレッドへの追加のスレッド間割込みの送達を要求するよう動作することを特徴とする製品。