【手続補正書】
【提出日】平成18年11月20日(2006.11.20)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  プロセッサであって、
ロックを特定する第１の１つまたは２つ以上の命令を受取りさらに復号化するように結合される復号ユニットを含み、前記復号ユニットは、前記第１の１つまたは２つ以上の命令に応答して、ロック表示を生成するように構成され、前記プロセッサはさらに、
前記ロック表示と前記第１の１つまたは２つ以上の命令とを前記復号ユニットから受取るように結合されるロード／記憶ユニットを含み、前記ロード／記憶ユニットは、実行のために、前記第１の１つまたは２つ以上の命令を選択し、さらにそれに応答してロックトグルコマンドの第１の要求を伝送するように構成され、前記プロセッサはさらに、
前記ロード／記憶ユニットとバスとの間に結合されるシステムインターフェイスコントローラを含み、前記システムインターフェイスコントローラは、前記ロックトグルコマンドの前記第１の要求を前記ロード／記憶ユニットから受取るように構成され、前記システムインターフェイスコントローラはさらに、前記第１のロックトグルコマンドの前記要求を受取ったことに応答して、前記第１のロックトグルコマンドを発行するように構成され、
前記ロード／記憶ユニットはさらに、前記第１の１つまたは２つ以上の命令を実行したことに応答して、前記ロックトグルコマンドの第２の要求を伝送するように構成され、前記システムインターフェイスコントローラはさらに、前記ロックトグルコマンドの前記第２の要求を前記ロード／記憶ユニットから受取り、前記ロックトグルコマンドの前記第２の要求を受取ったことに応答して、前記第２のロックトグルコマンドを発行するように構成される、プロセッサ。
【請求項２】  前記システムインターフェイスコントローラは複数のバッファをさらに含み、
使用中の待ち行列エントリをトラッキングするように構成されるリソースカウンタと、
未処理のプロセッサコマンドをトラッキングするように構成されるコミットカウンタとを含む、請求項１に記載のプロセッサ。
【請求項３】  前記システムインターフェイスコントローラはさらに、プロセッサコマンドを発行したことに応答して、前記リソースカウンタを増分するように構成され、
前記システムインターフェイスコントローラはさらに、前記プロセッサコマンドを発行したことに応答して、前記コミットカウンタを増分するように構成される、請求項２に記載のプロセッサ。
【請求項４】  前記システムインターフェイスコントローラはさらに、システムデバイスからアクノレッジ信号を受取ったことに応答して、前記リソースカウンタを減分するように構成され、前記システムインターフェイスコントローラはさらに、前記システムデバイスからコミット信号を受取ったことに応答して、前記コミットカウンタを減分するように構成される、請求項３に記載のプロセッサ。
【請求項５】  前記アクノレッジ信号は、待ち行列エントリを解放したことに応答して、前記システムデバイスによって送られる、請求項４に記載のプロセッサ。
【請求項６】  前記コミット信号は、特定のプロセッサコマンドに対してコヒーレンシィポイントに到達したことに応答して、前記システムデバイスによって送られる、請求項４に記載のプロセッサ。
【請求項７】  前記ロード／記憶ユニットはさらに、前記ロックトグルコマンドの前記第１の要求が最も古い未処理のオペレーションになるまで前記ロックトグルコマンドの前記第１の要求をバッファリングするように構成され、
前記システムインターフェイスコントローラはさらに、前記ロックトグルコマンドが実行されたとき前記ロード／記憶ユニットに知らせるように構成される、請求項６に記載のプロセッサ。
【請求項８】  １つまたは２つ以上のプロセッサをコンピュータシステムに結合するためのブリッジであって、
前記１つまたは２つ以上のプロセッサのうちの第１のプロセッサから複数のコマンドを受取るように結合される第１の入力ポートと、
前記第１の入力ポートに結合される第１のプロセッサ待ち行列とを含み、前記第１の入力ポートは前記複数のコマンドを前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサから前記第１のプロセッサ待ち行列へと転送するように構成され、前記第１のプロセッサ待ち行列は前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサから前記複数のコマンドを記憶するように構成され、前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサからの前記複数のコマンドはロックトグルコマンドを含み、前記ブリッジはさらに、
ロック状態を記憶するように構成されるロックレジスタと、
第１の入力待ち行列と前記ロックレジスタとに結合される制御論理と含み、前記制御論理は前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサからの前記複数のコマンドを、第１のプロセッサ待ち行列から取除くように構成され、前記ロックトグルコマンドを前記第１のプロセッサ待ち行列から取除いたことに応答して、前記制御論理は、ロック状態を検査するように構成され、前記制御論理はさらに、前記ロック状態がロックの欠如を表示する場合には、前記ロック状態を設定して前記１つまたは２つ以上のプロセッサのうちの第１のプロセッサのためのロックを表示するように構成され、前記ロック状態が前記ロックを表示する場合には、前記ロック状態を設定して前記ロックの欠如を表示するように構成される、ブリッジ。
【請求項９】  前記複数のコマンドは、前記ロックを特定する１つまたは２つ以上のコマンドを含み、前記ロックを特定する前記１つまたは２つ以上のコマンドは、前記ロックトグルコマンドの後に前記第１のプロセッサ待ち行列で受取られ、前記制御論理はさらに、前記前記ロック状態が前記ロックを表示する間は前記ロックを特定する前記１つまたは２つ以上のコマンドを実行するように構成される、請求項８に記載のブリッジ。
【請求項１０】  前記複数のコマンドは、第２のロックトグルコマンドを含み、前記第２のロックトグルコマンドは、前記ロックを特定する前記１つまたは２つ以上のコマンドの後に前記第１のプロセッサ待ち行列で受取られ、前記制御論理はさらに、前記ロックを特定する前記１つまたは２つ以上のコマンドを実行した後に前記ロック状態を設定して前記ロックの欠如を表示するように構成される、請求項９に記載のブリッジ。
【請求項１１】  １つまたは２つ以上のプロセッサのうちの第２のプロセッサから第２の複数のコマンドを受取るように結合される第２の入力ポートと、
前記第２の入力ポートに結合される第２のプロセッサ待ち行列とを含み、前記第２の入
力ポートは前記第２の複数のコマンドを前記１つまたは２つ以上のプロセッサのうちの前記第２のプロセッサから前記第２のプロセッサ待ち行列へと転送するように構成され、前記第２のプロセッサ待ち行列は前記１つまたは２つ以上のプロセッサのうちの前記第２のプロセッサから前記第２の複数のコマンドを記憶するように構成され、
前記制御論理はさらに、予め定められたプロトコルに従って、前記第１のプロセッサ待ち行列および前記第２のプロセッサ待ち行列からコマンドを選択するように構成され、前記制御論理はさらに、前記ロック状態が前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示するとき前記第１のプロセッサ待ち行列からのみコマンドを選択するように構成される、請求項８に記載のブリッジ。
【請求項１２】  前記１つまたは２つ以上のプロセッサの各々は別のプロセッサバスによって前記ブリッジに結合される、請求項１１に記載のブリッジ。
【請求項１３】  コンピュータシステムであって、
１つまたは２つ以上のプロセッサと、
前記１つまたは２つ以上のプロセッサに結合されるブリッジとを含み、前記ブリッジは前記１つまたは２つ以上のプロセッサから受取られたコマンドを実行するように構成され、
前記１つまたは２つ以上のプロセッサの各々はロックトグルコマンドをブリッジへと伝送して、ロック状態がロックを表示するように設定されることを要求するように構成され、前記ブリッジは、前記１つまたは２つ以上のプロセッサのうちの第１のプロセッサから前記ロックトグルコマンドを受取ったことに応答して、前記ロック状態を検査するように構成され、前記制御論理はさらに、前記ロック状態がロックの欠如を表示する場合には、前記ロック状態を設定して前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示し、さらには前記ロック状態が前記ロックを表示する場合には、前記ロック状態を設定して前記ロックの欠如を表示するように構成される、コンピュータシステム。
【請求項１４】  前記ブリッジはさらに、前記ロック状態が前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示している間は、前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサから受取ったコマンドのみを実行するように構成される、請求項１３に記載のコンピュータシステム。
【請求項１５】  前記ブリッジは、前記ロック状態を記憶するように構成されるロックレジスタを含む、請求項１３に記載のコンピュータシステム。
【請求項１６】  前記１つまたは２つ以上のプロセッサの各々は、
前記ロックを特定する第１の１つまたは２つ以上の命令を受取りさらに復号化するように結合される復号ユニットを含み、前記復号ユニットは、前記第１の１つまたは２つ以上の命令に応答して、ロック表示を生成するように構成され、前記１つまたは２つ以上のプロセッサの各々はさらに、
前記ロック表示と前記第１の１つまたは２つ以上の命令とを前記復号ユニットから受取るように結合されるロード／記憶ユニットを含み、前記ロード／記憶ユニットは、実行のために、前記第１の１つまたは２つ以上の命令を選択し、さらにそれに応答して前記ロックトグルコマンドの第１の要求を伝送するように構成され、前記１つまたは２つ以上のプロセッサの各々はさらに、
前記ロード／記憶ユニットとバスとの間に結合されるシステムインターフェイスコントローラを含み、前記システムインターフェイスコントローラは、前記ロックトグルコマンドの前記第１の要求を前記ロード／記憶ユニットから受取るように構成され、前記システムインターフェイスコントローラはさらに、前記第１のロックトグルコマンドの前記要求を受取ったことに応答して、前記第１のロックトグルコマンドを発行するように構成され、
前記ロード／記憶ユニットはさらに、前記第１の１つまたは２つ以上の命令を実行したことに応答して、前記ロックトグルコマンドの第２の要求を伝送するように構成され、前記システムインターフェイスコントローラはさらに、前記ロックトグルコマンドの前記第
２の要求を前記ロード／記憶ユニットから受取り、前記ロックトグルコマンドの前記第２の要求を受取ったことに応答して、前記第２のロックトグルコマンドを発行するように構成される、請求項１３に記載のコンピュータシステム。
【請求項１７】  前記システムインターフェイスコントローラは複数のバッファをさらに含み、
使用中の待ち行列エントリをトラッキングするように構成されるリソースカウンタと、
未処理のプロセッサコマンドをトラッキングするように構成されるコミットカウンタとを含み、
前記システムインターフェイスコントローラはさらに、プロセッサコマンドを発行したことに応答して、前記リソースカウンタを増分するように構成され、前記システムインターフェイスコントローラはさらに、前記プロセッサコマンドを発行したことに応答して、前記コミットカウンタを増分するように構成される、請求項１６に記載のコンピュータシステム。
【請求項１８】  前記ブリッジはさらに、待ち行列エントリを解放したことに応答してアクノレッジ信号を送るように構成され、前記ブリッジはさらに、特定のプロセッサコマンドに対してコヒーレンシィポイントに到達したことに応答してコミット信号を送るように構成される、請求項１７に記載のコンピュータシステム。
【請求項１９】  前記システムインターフェイスコントローラはさらに、前記ブリッジから前記アクノレッジ信号を受取ったことに応答して、前記リソースカウンタを減分するように構成され、前記システムインターフェイスコントローラはさらに、前記ブリッジから前記コミット信号を受取ったことに応答して、前記コミットカウンタを減分するように構成される、請求項１８に記載のコンピュータシステム。
【請求項２０】  前記ロード／記憶ユニットはさらに、前記ロックトグルコマンドの前記第１の要求が最も古い未処理のオペレーションになるまで前記ロックトグルコマンドの前記第１の要求をバッファリングするように構成され、
前記システムインターフェイスコントローラはさらに、前記ロックトグルコマンドが実行されたとき前記ロード／記憶ユニットに知らせるように構成される、請求項１９に記載のコンピュータシステム。
【請求項２１】  １つまたは２つ以上のプロセッサとシステムデバイスとを含むコンピュータシステムを動作させるための方法であって、
前記１つまたは２つ以上のプロセッサのうちの第１のプロセッサから前記システムデバイスへと第１のロックトグルコマンドを発行するステップと、
前記第１のロックトグルコマンドに応答して、前記システムデバイス内のロック状態の表示を検査するステップと、
前記ロック状態の前記表示を検査したことおよび前記ロック状態がロックの欠如を表示すると判断したこととに応答して、前記ロック状態を設定し前記第１のプロセッサによるロックを表示するステップと、
前記ロック状態の前記表示を検査したことおよび前記ロック状態が前記ロックを表示すると判断したこととに応答して、前記ロック状態を設定し前記ロックの欠如を表示するステップとを含む、方法。
【請求項２２】  前記ロック状態が前記第１のプロセッサのための前記ロックを表示する間は、前記１つまたは２つ以上のプロセッサのうちの第２のプロセッサからのコマンドを無視するステップをさらに含む、請求項２１に記載の方法。
【請求項２３】  前記ロック状態を設定して前記ロックを表示したことに応答して、前記ロックを特定する前記１つまたは２つ以上のコマンドを、前記第１のプロセッサから前記システムデバイスへと送るステップと、
前記ロックを特定する前記１つまたは２つ以上のコマンドを、前記第１のプロセッサから前記システムデバイスへと送った後に、第２のロックトグルコマンドを、前記第１のプロセッサから前記システムデバイスへと送るステップとをさらに含む、請求項２１に記載の方法。
【請求項２４】  コンピュータシステムであって、
１つまたは２つ以上のプロセッサと、
前記１つまたは２つ以上のプロセッサに結合されるブリッジとを含み、
前記１つまたは２つ以上のプロセッサのうちの第１のプロセッサは第１のコマンドを前記ブリッジへと伝送して、前記ブリッジ内のロック状態を切替えるように構成され、前記ブリッジは、前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサから前記第１のコマンドを受取ったことに応答して、前記ロック状態がロックの欠如を表示する場合には、前記ロック状態を設定して前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示し、さらには前記ロック状態が前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示する場合には、前記ロック状態を設定して前記ロックの欠如を表示するように構成される、コンピュータシステム。
【請求項２５】  前記ブリッジはさらに、前記ロック状態が前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサのための前記ロックを表示している間は、前記１つまたは２つ以上のプロセッサのうちの前記第１のプロセッサから受取ったコマンドのみを実行するように構成される、請求項２４に記載のコンピュータシステム。
【請求項２６】  前記ブリッジは、前記ロック状態を記憶するように構成されるロックレジスタを含む、請求項２４に記載のコンピュータシステム。
【請求項２７】  前記ブリッジは、前記１つまたは２つ以上のプロセッサのうちの前記第２のプロセッサから前記第１のコマンドを受取ったことに応答して、前記ロック状態が前記ロックの欠如を表示する場合には、前記ロック状態を設定して前記１つまたは２つ以上のプロセッサのうちの第２のプロセッサのためのロックを表示するように構成される、請求項２４に記載のコンピュータシステム。
【請求項２８】  バスブリッジであって、
ロック状態を記憶するように構成されるロック記憶装置と、
前記ロックレジスタに結合され、さらに第１のプロセッサから第１のコマンドを受取って前記ロック状態を切替えるように結合される制御論理とを含み、前記制御論理は、前記ロックトグルコマンドと、ロック状態がロックの欠如を表示すると判断したことに応答して、前記ロックレジスタ内の前記ロック状態を設定し前記第１のプロセッサによるロックを表示するように構成され、前記制御論理は、前記第１のコマンドと、前記ロック状態が前記第１のプロセッサによる前記ロックを表示すると判断したこととに応答して、前記ロック状態を設定しロックの欠如を表示するように構成される、バスブリッジ。
【請求項２９】  前記制御論理はさらに、前記ロック状態が前記第１のプロセッサのための前記ロックを表示している間は、前記第１のプロセッサから受取ったコマンドのみを実行するように構成される、請求項２８に記載のバスブリッジ。
【請求項３０】  前記ロック記憶装置はロックレジスタである、請求項２８に記載のバスブリッジ。
【請求項３１】  前記制御論理はさらに、第２のプロセッサから前記第１のコマンドを受取ったことに応答して、前記ロック状態が前記ロックの欠如を表示する場合には、前記ロック状態を設定して第１のプロセッサと異なる前記第２のプロセッサのためのロックを表示するように構成される、請求項２８に記載のバスブリッジ。
【請求項３２】  プロセッサであって、
ロックの要求またはロック解除の要求に応答して第１の要求を生成するように構成される第１の回路と、
前記第１の回路に結合されるシステムインターフェイスコントローラとを含み、前記システムインターフェイスコントローラは、前記第１の要求に応答して第１のコマンドを伝送してロック状態を切替えるように構成される、プロセッサ。
【請求項３３】  前記第１の回路は前記第１のコマンドの後に１つまたは２つ以上のメモリアクセスを実行するように構成され、前記１つまたは２つ以上のメモリアクセスはロックされた状態で行われる、請求項３２に記載のプロセッサ。
【請求項３４】  前記システムインターフェイスコントローラは、前記第１の回路に前記第１のコマンドがコミットされたと表示するように構成され、前記第１の回路は前記システムコントローラからの表示に応答して前記１つまたは２つ以上のメモリアクセスを実行するように構成される、請求項３３に記載のプロセッサ。
【請求項３５】  前記第１の回路は、前記第１の要求を生成し、前記第１のコマンドの後に１つまたは２つ以上のメモリアクセスを行い、かつ前記１つまたは２つ以上のメモリアクセスの後に再び前記第１の要求を生成することにより、ロックされたシーケンスを行うように構成される、請求項３２に記載のプロセッサ。
【請求項３６】  前記第１の回路は、前記第１の回路内で最も古い未処理の要求である前記ロックの要求またはロック解除の前記要求に応答して、前記第１の要求を生成するように構成される、請求項３２に記載のプロセッサ。