【手続補正書】
【提出日】平成19年1月22日(2007.1.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  メインメモリと；
前記メインメモリに接続されたプロセッサであって、非テンポラルデータ及びテンポラルデータを処理する命令を実行するように構成されたプロセッサ；並びに、
前記プロセッサに接続された少なくとも１つのキャッシュメモリであって、前記少なくとも１つのキャッシュメモリは少なくとも２つのキャッシュウェイを有し、前記少なくとも２つのキャッシュウェイの各々は前記少なくとも１つのキャッシュメモリに複数のセットを含み、前記複数のセットの各々は前記少なくとも１つのキャッシュメモリに第一のビット及び第二のビットを有し、前記複数のセットの各々の前記第一のビットは、関連したセット内の前記少なくとも２つのキャッシュウェイの中の１つにプロセッサによって処理される頻度が少なく第一に置換してもよい前記非テンポラルデータが入っているかどうかを指示し、前記第二のビットは、対応するウェイ内のデータエントリの順序を指示するように構成したキャッシュメモリ
を含み、
前記プロセッサが、前記メインメモリ又は前記少なくとも１つのキャッシュメモリのうちの１つからデータを得るように構成する
ことを特徴とするキャッシュメモリ管理機能を有するコンピュータシステム。
【請求項２】  メインメモリを設けるステップと；
前記メインメモリに接続され、非テンポラルデータ及びテンポラルデータを処理する命令を実行するプロセッサを設けるステップ；並びに、
前記プロセッサに接続された少なくとも１つのキャッシュメモリを設けるステップであって、前記少なくとも１つのキャッシュメモリは、少なくとも二つのキャッシュウェイを有し、前記少なくとも２つのキャッシュウェイの各々は前記少なくとも１つのキャッシュメモリに保存された複数のデータセットを含み、前記複数のデータセットの各々は前記少なくとも１つのキャッシュメモリ内に第一のビット及び第二のビットを有し、前記複数のデータセットの各々の前記第一のビットは、関連したデータセット内の前記少なくとも２つのキャッシュウェイの中の１つにプロセッサによって使われる頻度が少なく第一に置換してもよい非テンポラルデータが入っているかどうかを指示し、前記第二のビットは、対応するウェイ内のデータエントリの順序を指示するように構成したキャッシュメモリを設けるステップ；並びに、
前記プロセッサによって前記メインメモリ又は前記少なくとも１つのキャッシュメモリからデータを得るステップ
を含むことを特徴とする、コンピュータシステムにおいて置換のためにキャッシュメモリを割り当てる方法。
【請求項３】  １つ又はそれ以上のキャッシュのセットであって、前記１つ又はそれ以上のキャッシュのセットの各々は、各々が関連したデータセットについてデータを保存するように構成した少なくとも２つのウェイを含むように構成したキャッシュのデータセットと；
１つ又はそれ以上の最低使用頻度のビットであって、１つの場合の該最低使用頻度のビットが、関連したキャッシュのセットのプロセッサによる最低アクセス頻度のウェイを示すように構成した最低使用頻度ビット；並びに、
該関連したキャッシュのセット内の該少なくとも２つのウェイのいずれか１つに、第一に置換しても良い非テンポラルデータを含むかどうかを指示するように構成したロックビット
を含むことを特徴とする、テンポラル及び非テンポラルデータをその中に保存するデータキャッシュメモリ。
【請求項４】  １つ又はそれ以上のデータセットであって、該１つ又はそれ以上のデータセットが少なくとも二つのウェイを含み、該少なくとも二つのウェイの各々が関連したデータセットについてデータを保存するように構成したデータセットと、
１つ又はそれ以上の最低使用頻度のビットであって、１つの場合の該最低使用頻度のビットが、関連したキャッシュのデータセットでプロセッサによる最低アクセス頻度のウェイを示すように構成した最低使用頻度ビット、及び、
該関連したキャッシュのデータセット内の該少なくとも２つのウェイのいずれか１つに、第一に置換しても良い非テンポラルデータを含むかどうかを指示するように構成したロックビット
を含むように構成したキャッシュメモリを設けるステップと；
データを処理する命令に関連したローカリティヒントに基づいて、該データがテンポラルか非テンポラルかを判断するステップ；並びに、
関連したデータセット内に保存されたデータが非テンポラルデータである場合に、関連したデータセットについて該ロックビットを設定するステップ
を含むことを特徴とする、テンポラル及び非テンポラルデータを保存するデータキャッシュメモリについて、他のデータに置換しても良い非テンポラルデータエントリを指示する方法。
【請求項５】  非テンポラル命令の実行中に、データキャッシュメモリ内のキャッシュデータセットに生じたキャッシュミスに応答して、該キャッシュデータセットに第一のビットを動的に設定するステップであって、該第一のビットは、該キャッシュデータセット内の少なくとも２つのウェイのうちの１つが該非テンポラルデータを含むことを指示し、該キャッシュデータセット内の第二のビットは、該キャッシュデータセット内の該少なくとも２つのウェイのデータエントリの順序を指示するように構成したビット設定ステップと；
設定された該第一のビット、及び、テンポラル命令の実行中に該キャッシュデータセットに生じたキャッシュミスに応答して、該少なくとも２つのウェイのうちの１つの該非テンポラルデータを該テンポラルデータに置換するステップ；並びに、
該少なくとも２つのウェイのうちの１つの該非テンポラルデータを該テンポラルデータに置換するステップに応答して、該キャッシュデータセット内の該第一のビットをクリアするステップ
を含むことを特徴とする、テンポラル及び非テンポラルデータを保存するデータキャッシュメモリ内の非テンポラルデータ汚染をクリアする方法。
【請求項６】  上記非テンポラルデータが、上記プロセッサにより使用される頻度が少なくなるように予め決められたタイプのデータであることを特徴とする請求項３に記載のデータキャッシュメモリ。
【請求項７】  上記非テンポラルデータが、キャッシュ記憶される必要のないストリーミングデータであるタイプのデータであることを特徴とする請求項３に記載のデータキャッシュメモリ。
【請求項８】  上記ロックビットがデータの該１つ又はそれ以上のキャッシュセットの内の１つのキャッシュセットに対して設定され、該ロックビットが、該１つのキャッシュセットが上記非テンポラルデータを含むことを指示し、上記１つ又はそれ以上の最低使用頻度のビットが、上記少なくとも２つのウェイの内のどのウェイが上記非テンポラルデータを含むかを指示するように更新されることを特徴とする請求項３に記載のデータキャッシュメモリ。
【請求項９】  上記非テンポラルデータが、使用頻度が低くなるように予め決められたタイプのデータであることを特徴とする請求項５に記載の方法。
【請求項１０】  上記非テンポラルデータが、キャッシュ記憶される必要のないストリーミングデータであるタイプのデータであることを特徴とする請求項５に記載の方法。
【請求項１１】  上記データキャッシュメモリがデータの複数のキャッシュセットを含み、上記第一のビットを動的に設定する上記ステップ、該第一のビットを動的にクリアする上記ステップ、及び非テンポラルデータを置換する上記ステップが、該データキャッシュメモリ内のデータの該複数のキャッシュセットのそれぞれのキャッシュセットへの命令アクセス中に一度にキャッシュセット１つずつ実行されることを特徴とする請求項５に記載の方法。
【請求項１２】  上記非テンポラル命令の実行中の上記キャッシュセットに対する上記キャッシュミスに応答して上記少なくとも２つのウェイのどのウェイが上記非テンポラルデータを含むかを指示するように、データの該キャッシュセットの上記第二のビットを更新するステップをさらに含む請求項５に記載の方法。
【請求項１３】  上記テンポラル命令の実行中の上記キャッシュセットに対するキャッシュヒットに応答して上記少なくとも２つのウェイのどのウェイが上記非テンポラルデータを含むかを指示するように、上記第一のビットの上記設定を維持しかつ上記第二のビットを維持するステップをさらに含む請求項１２に記載の方法。
【請求項１４】  設定された上記第一のビットを維持するステップであって、上記非テンポラル命令の実行中の該キャッシュセットに対するキャッシュヒットと、クリアされたモードビットとに応答して該少なくとも２つのウェイのどのウェイが上記非テンポラルデータを含むかを指示し続けるように、上記第二のビットが更新されないステップをさらに含む請求項１２に記載の方法。
【請求項１５】  上記非テンポラル命令の実行中の上記キャッシュセットに対するキャッシュヒットと、設定されたモードビットとに応答して上記第一のビットを設定するステップをさらに含む請求項１２に記載の方法。
【請求項１６】
上記テンポラル命令の実行中の上記キャッシュセットに対するキャッシュヒットに応答してデータの上記キャッシュセットにおける上記第一のビットの上記設定を維持するステップをさらに含む請求項５に記載の方法。
【請求項１７】  上記第一のビットがロックビットであることを特徴とする請求項５に記載の方法。