【手続補正書】
【提出日】平成18年9月20日(2006.9.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１行のデータおよびキャッシュ行について１つまたはそれ以上のエラー・チェック・ビットを記憶するように各々動作可能な複数の前記キャッシュ行と、
前記１つまたはそれ以上のエラー・チェック・ビットを使用してアクセスされる１つのキャッシュ行の少なくとも一部分をチェックするように動作できるエラー・チェック回路と、
前記エラー・チェック回路が前記キャッシュ行の部分にエラーを検出したならば、主メモリから少なくとも前記キャッシュの部分の補充をトリガするように動作できるエラー処理回路を含むキャッシュ・メモリ。
【請求項２】
請求項１に記載のキャッシュ・メモリにおいて、前記補充は、前記キャッシュ行の部分を含むキャッシュ行全体の補充であるキャッシュ・メモリ。
【請求項３】
請求項１に記載のキャッシュ・メモリにおいて、各キャッシュ行もまた前記データの行のための１つまたはそれ以上のダーティ・ビットを記憶し、１つのセット・ダーティ・ビットは、前記主メモリから読取られてから前記データの行の対応する部分が変更されているが、いまだ前記主メモリへライト・バックされてないことを示すキャッシュ・メモリ。
【請求項４】
請求項３に記載のキャッシュ・メモリにおいて、前記キャッシュの部分に対応するいずれかのダーティ・ビットがセットされている場合は、前記エラー処理回路が前記補充をトリガしないキャッシュ・メモリ。
【請求項５】
請求項３に記載のキャッシュ・メモリにおいて、単一のダーティ・ビットがデータの一行全体に対応するキャッシュ・メモリ。
【請求項６】
請求項３に記載のキャッシュ・メモリにおいて、複数のダーティ・ビットが前記データの行の複数の部分のそれぞれ１つに対応するキャッシュ・メモリ。
【請求項７】
請求項１に記載のキャッシュ・メモリにおいて、複数のエラー・チェック・ビットが１つのキャッシュ行に対応するキャッシュ・メモリ。
【請求項８】
請求項１に記載のキャッシュ・メモリにおいて、前記１つまたはそれ以上のエラー・チェック・ビットが、
パリティ・ビット、
重複ビット、
チェックサム・ビット、および
エラー訂正コード・ビット
の１つまたはそれ以上であるキャッシュ・メモリ。
【請求項９】
請求項４に記載のキャッシュ・メモリにおいて、前記キャッシュ行の部分に対応するいずれかのダーティ・ビットがセットされれば、前記エラー処理回路がソフトウェア処理ルーチンの実施をトリガするキャッシュ・メモリ。
【請求項１０】
請求項１に記載のキャッシュ・メモリにおいて、前記データの行が１つまたはそれ以上のデータ・ワードとデータＴＡＧを含み、またデータ検出回路が前記データＴＡＧ内にエラーを発見するならば、前記エラー処理回路が前記キャッシュ行の補充をトリガするキャッシュ・メモリ。
【請求項１１】
請求項１に記載のキャッシュ・メモリにおいて、前記キャッシュ・メモリはマルチプル・ウェイ・キャッシュ・メモリであって、前記データの行が１つまたはそれ以上のデータ・ワードとデータＴＡＧを含み、前記キャッシュ行について１つよりも多いＴＡＧの一致が起きたときに前記エラー検出回路が前記データＴＡＧ内のエラーを検出するならば、前記キャッシュ行が無効にされるキャッシュ・メモリ。
【請求項１２】
請求項３に記載のキャッシュ・メモリにおいて、各キャッシュ行は前記１つまたはそれ以上のダーティ・ビットについて少なくとも１つのエラー・チェック・ビットを記憶し、また前記エラー処理回路は前記１つまたはそれ以上のダーティ・ビットについてエラー・チェック・ビット内にエラーを検出するのに応答して、前記主メモリへ向けて前記キャッシュ行のライト・バックをトリガするキャッシュ・メモリ。
【請求項１３】
請求項１に記載のキャッシュ・メモリにおいて、各キャッシュ行が１つの有効ビットを記憶し、１つのセット有効ビットが前記有効データを記憶する前記キャッシュ行を示すキャッシュ・メモリ。
【請求項１４】
請求項１に記載のキャッシュ・メモリにおいて、各キャッシュ行が複数の有効ビットを記憶し、１つのセット有効ビットが有効データを記憶する前記キャッシュ行の対応する部分を示すキャッシュ・メモリ。
【請求項１５】
請求項３に記載のキャッシュ・メモリにおいて、各キャッシュ行が各有効ビットについて１つのエラー・チェック・ビットを記憶し、前記エラー処理回路は、いずれかの有効ビットについていずれかのエラー・チェック・ビット内のエラーの検出に応答して、
（ｉ）  前記キャッシュ行のいずれかの部分にダーティ・ビットがセットされれば、前記主メモリへ前記キャッシュ行のライト・バックをトリガし、
（ｉｉ）  前記キャッシュ行のいずれの部分にもダーティ・ビットが何もセットされなければ、前記主メモリから前記キャッシュ行の補充をトリガするキャッシュ・メモリ。
【請求項１６】
請求項１３に記載のキャッシュ・メモリにおいて、対応する有効ビットがノン・エラーであって無効性を示すキャッシュ行内で検出されるエラーは、無視されるキャッシュ・メモリ。
【請求項１７】
請求項１に記載のキャッシュ・メモリにおいて、
（ｉ）  データ・キャッシュ・メモリ、
（ｉｉ）  命令キャッシュ・メモリ、
（ｉｉｉ）  ユニファイド・キャッシュ・メモリ、および、
（ｉｖ）  Ｈａｒｖａｒｄ・キャッシュ・メモリの内の１つであるキャッシュ・メモリ。
【請求項１８】
請求項１に記載のキャッシュ・メモリにおいて、前記１つまたはそれ以上のエラー・チェック・ビットの少なくともいくつかは、前記キャッシュ行が書き込まれる時に更新されるキャッシュ・メモリ。
【請求項１９】
キャッシュ・メモリ内のソフト・エラーを訂正する方法であって、
複数のキャッシュ行の各々の中に１行のデータと、前記キャッシュ行のための１つまたはそれ以上のエラー・チェック・ビットを記憶するステップと、
前記１つまたはそれ以上のエラー・チェック・ビットを使用して、アクセスされる１つのキャッシュ行の少なくとも一部分をエラー・チェックするステップと、
前記エラー・チェックが前記キャッシュ行の部分内にエラーを検出するならば、ハードウエアが主メモリから前記キャッシュ行の少なくとも部分を補充することをトリガするステップを含む方法。
【請求項２０】
請求項１９に記載の方法において、前記補充は、前記キャッシュ行の部分を含む前記キャッシュ行全体の補充である方法。
【請求項２１】
請求項１９に記載の方法において、各キャッシュ行はまた前記データの行について１つまたはそれ以上のダーティ・ビットを記憶し、１つのセット・ダーティ・ビットは、前記主メモリから読取られてから前記データの行の対応する部分が変更されているが、いまだ前記主メモリにライト・バックされていないことを示す方法。
【請求項２２】
請求項２１に記載の方法において、前記キャッシュ行の部分に対応するダーティ・ビットが何もセットされていなければ、前記補充がトリガされない方法。
【請求項２３】
請求項２１に記載の方法において、単一のダーティ・ビットがデータの１行全体に対応する方法。
【請求項２４】
請求項２１に記載の方法において、複数のダーティ・ビットが、前記データの行の複数の部分のそれぞれに対応する方法。
【請求項２５】
請求項１９に記載の方法において、複数のエラー・チェック・ビットが１つのキャッシュ行に対応する方法。
【請求項２６】
請求項１９に記載の方法において、前記１つまたはそれ以上のエラー・チェック・ビットが、
パリティ・ビット、
重複ビット、
チェック・サム・ビット、
エラー訂正コード・ビット、
の１つまたはそれ以上である方法。
【請求項２７】
請求項２２に記載の方法において、前記キャッシュ行の部分に対応するいずれかのダーティ・ビットがセットされれば、ソフトウェア処理ルーチンの実行がトリガされる方法。
【請求項２８】
請求項１９に記載の方法において、前記データの行が１つまたはそれ以上のデータ・ワードおよびデータＴＡＧを含み、前記データＴＡＧ内にエラーが検出されれば、前記キャッシュ行の補充がトリガされる方法。
【請求項２９】
請求項１９に記載の方法において、前記キャッシュ・メモリはマルチプル・ウェイ・キャッシュ・メモリであり、前記データの行は１つまたはそれ以上のデータ・ワードおよびデータＴＡＧを含み、前記キャッシュ行について１つ以上のＴＡＧ一致が起きたときに、前記エラー検出回路が前記データＴＡＧ内にエラーを検出すれば、前記キャッシュ行が無効にされる方法。
【請求項３０】
請求項２１に記載の方法において、各キャッシュ行が前記１つまたはそれ以上のダーティ・ビットについて少なくとも１つのエラー・チェック・ビットを記憶し、前記１つまたはそれ以上のダーティ・ビットについてエラー・チェック・ビット内のエラー検出に応答して、前記主メモリへ前記キャッシュ行のライト・バックがトリガされる方法。
【請求項３１】
請求項１９に記載の方法において、各キャッシュ行は１つの有効ビットを含み、前記キャッシュ行が有効データを記憶することをセット有効ビットが指示する方法。
【請求項３２】
請求項１９に記載の方法において、各キャッシュ行は複数の有効ビットを含み、前記キャッシュ行の対応する部分が有効データを記憶することをセット有効ビットが指示する方法。
【請求項３３】
請求項２１に記載の方法において、各キャッシュ行が各有効ビットについて１つのエラー・チェック・ビットを記憶し、いずれかの有効ビットについていずれかのエラー・チェック・ビット内でのエラー検出に応答して、
（ｉ）  前記キャッシュ・メモリのいずれかの部分についてダーティ・ビットがセットされれば、前記主メモリへの前記キャッシュ行のライト・バックがトリガされ、また、
（ｉｉ）  前記キャッシュ・メモリのいずれの部分にもダーティ・ビットが何もセットされなければ、前記主メモリからの前記キャッシュ行の補充がトリガされる方法。
【請求項３４】
請求項３１に記載の方法において、対応する有効ビットがノン・エラーであって無効性を示すキャッシュ行内で検出されたエラーは無視される方法。
【請求項３５】
請求項１９に記載の方法において、前記キャッシュ・メモリが、
（ｉ）  データ・キャッシュ・メモリ、
（ｉｉ）  命令キャッシュ・メモリ、
（ｉｉｉ）  ユニファイド・キャッシュ・メモリ
（ｉｖ）  Ｈａｒｖａｒｄ・キャッシュ・メモリ
のうちの１つである方法。
【請求項３６】
請求項１９に記載の方法において、前記キャッシュ行が書き込まれたときに、前記１つまたはそれ以上のエラー・チェック・ビットが更新される方法。