(57)【要約】  キャッシュに記憶されたエフェメラルデータは、必要とされるとき読み取られるが、電力および帯域幅を節約するためにシステムメモリに書き込まれない。一実施形態では、Read-No-Writeback命令に応答して、エフェメラルデータと関連するNo-Writebackビットがセットされる。No-Writebackビットがセットされているキャッシュライン中のデータは、システムメモリに書き戻されない。したがって、キャッシュラインを追い出すとき、キャッシュラインがNo-Writebackビットをセットされている場合、そのキャッシュライン中のデータは、システムメモリに書き戻されることなく廃棄される。
2017510902.tif 000002
【特許請求の範囲】
【請求項１】
アドレスを示すRead-No-Writeback命令をキャッシュにおいて受信するステップと、
前記アドレスと関連するキャッシュラインが、前記キャッシュから前記キャッシュラインを追い出すときにメモリに書き込まれないことを示すために前記キャッシュにおいてNo-Writebackビットをセットするステップと
を含む、方法。
【請求項２】
No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すステップ
をさらに含む、請求項1に記載の方法。
【請求項３】
デバイスによって、トランザクション属性にフラグをセットするステップであって、前記デバイスが、キャッシュの前記キャッシュラインを読み取るものである、ステップと、
前記キャッシュラインが前記メモリに書き込まれないように、前記キャッシュラインと関連する前記No-Writebackビットを前記フラグに応答してキャッシュコントローラによってセットするステップと
をさらに含む、請求項1に記載の方法。
【請求項４】
No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すステップ
をさらに含む、請求項3に記載の方法。
【請求項５】
前記キャッシュにおいて、前記デバイスに対応する受信マスター識別情報を調べるステップと、
前記キャッシュラインが前記メモリに書き込まれないように、前記マスター識別情報に応じて前記キャッシュラインと関連するNo-Writebackビットをセットするステップと
をさらに含む、請求項3に記載の方法。
【請求項６】
前記キャッシュにおいて、デバイスに対応する受信マスター識別情報を調べるステップであって、前記デバイスが、前記キャッシュに記憶されたキャッシュライン中のデータを読み取るものである、ステップと、
前記キャッシュラインが前記メモリに書き込まれないように、前記マスター識別情報に応じて前記キャッシュラインと関連するNo-Writebackビットをセットするステップと
をさらに含む、請求項1に記載の方法。
【請求項７】
キャッシュラインと関連するデータを記憶するためのストレージであって、各キャッシュラインが対応するNo-Writebackビットを有する、ストレージと、
前記ストレージに結合されるコントローラであって、キャッシュラインを示すRead-No-Writeback命令を受信することに応答して、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときにメモリに書き込まれないことを示すために前記キャッシュラインに対応するNo-Writebackビットをセットする、コントローラと
を含む、キャッシュ。
【請求項８】
前記コントローラがさらに、No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すものである、請求項7に記載のキャッシュ。
【請求項９】
前記コントローラがさらに、デバイスに対応する受信マスター識別情報を調べ、前記デバイスが、前記キャッシュライン中のデータを読み取り、前記キャッシュラインが前記メモリに書き込まれないように前記マスター識別情報に応じて前記キャッシュラインと関連する前記No-Writebackビットをセットするものである、請求項8に記載のキャッシュ。
【請求項１０】
前記コントローラがさらに、デバイスに対応する受信マスター識別情報を調べ、前記デバイスが、前記キャッシュライン中のデータを読み取り、前記キャッシュラインが前記メモリに書き込まれないように前記マスター識別情報に応じて前記キャッシュラインと関連する前記No-Writebackビットをセットする、請求項7に記載のキャッシュ。
【請求項１１】
前記キャッシュが、セルラーフォン、タブレット、およびコンピュータシステムからなるグループから選択される装置の一部である、請求項7に記載のキャッシュ。
【請求項１２】
メモリと、
デバイスと、
前記デバイスに結合されるキャッシュであって、前記キャッシュに記憶されたキャッシュラインのアドレスを示す、前記デバイスからのRead-No-Writeback命令を受信し、前記キャッシュラインが対応するNo-Writebackビットを有するとき、前記キャッシュから前記キャッシュラインを追い出すときに前記キャッシュラインが前記メモリに書き込まれないことを示すために前記No-Writebackビットをセットする、キャッシュと
を含む、システム。
【請求項１３】
前記キャッシュがさらに、No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出す、請求項12に記載のシステム。
【請求項１４】
前記デバイスが、前記キャッシュの前記キャッシュラインを読み取るためにトランザクション属性にフラグをセットし、
前記キャッシュが、前記フラグに応答して、前記キャッシュラインが前記メモリに書き込まれないように、前記No-Writebackビットをセットする、
請求項12に記載のシステム。
【請求項１５】
前記キャッシュがさらに、No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出す、請求項14に記載のシステム。
【請求項１６】
前記デバイスがマスター識別情報を有し、
前記キャッシュが受信し、前記受信マスター識別情報を調べ、前記キャッシュラインが前記メモリに書き込まれないように、前記キャッシュが、前記マスター識別情報に応じて前記No-Writebackビットをセットするものである、
請求項14に記載のシステム。
【請求項１７】
前記デバイスがディスプレイである、請求項12に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、電子システムにおけるキャッシュメモリに関する。
【背景技術】
【０００２】
たとえば、セルフォンおよびタブレットなど、様々な家庭用電子デバイスの多くについては、システムメモリに記憶される必要のないいくつかのタイプのデータがキャッシュに存在する。そのようなデータは、エフェメラルデータ(ephemeral data)と呼ばれる場合がある。たとえば、モバイルフォンまたはタブレットのディスプレイにレンダリングされた画像を見る人が、画像を回転させたいと思う場合がある。多くの環境における画像回転に関して内部で生成されるデータは、システムメモリに記憶される必要がない。しかしながら、多くのデバイスは、キャッシュライン置換ポリシーを実行するとき、そのようなエフェメラルデータをシステムメモリに書き込む場合がある。エフェメラルデータの書込み動作が、電力およびメモリ帯域幅を不必要に消費する。
【発明の概要】
【課題を解決するための手段】
【０００３】
本発明の実施形態は、無効化を伴う読取り(read with invalidate)を使用してキャッシュにおける帯域幅および電力を下げるためのシステムおよび方法を対象とする。
【０００４】
一実施形態では、本方法は、アドレスを示すRead-No-Writeback命令をキャッシュにおいて受信するステップと、アドレスと関連するキャッシュラインが、キャッシュからキャッシュラインを追い出す(eviction)ときにメモリに書き込まれないことを示すために、キャッシュにおいてNo-Writebackビットをセットするステップとを含む。
【０００５】
別の実施形態では、キャッシュが、キャッシュラインと関連するデータを記憶するためのストレージであって、各キャッシュラインが、対応するNo-Writebackビットを有する、ストレージと、ストレージに結合されるコントローラであって、キャッシュラインを示すRead-No-Writeback命令を受信することに応答して、キャッシュラインがキャッシュからキャッシュラインを追い出すときにメモリに書き込まれないことを示すためにキャッシュラインに対応するNo-Writebackビットをセットする、コントローラとを含む。
【０００６】
別の実施形態では、システムが、メモリと、デバイスと、デバイスに結合されるキャッシュとを含み、キャッシュは、キャッシュに記憶されたキャッシュラインのアドレスを示す、デバイスからのRead-No-Writeback命令を受信し、キャッシュラインが対応するNo-Writebackビットを有するとき、キャッシュからキャッシュラインを追い出すときにキャッシュラインがメモリに書き込まれるべきではないことを示すためにNo-Writebackビットをセットする。
【０００７】
添付の図面は、本発明の実施形態の説明を助けるために提示されており、実施形態を限定するためではなく、実施形態を例示するためにのみ提供される。
【図面の簡単な説明】
【０００８】
【図１】一実施形態が適用されるシステムを示す図である。
【図２】一実施形態による方法を示す図である。
【図３】一実施形態による別の方法を示す図である。
【図４】一実施形態による別の方法を示す図である。
【図５】一実施形態による別の方法を示す図である。
【図６】一実施形態が適用できる通信ネットワークを示す図である。
【発明を実施するための形態】
【０００９】
本発明の態様は、本発明の特定の実施形態を対象とする以下の説明および関連する図面において開示される。本発明の範囲から逸脱することなく、代替的な実施形態が考案される場合がある。加えて、本発明のよく知られている要素は、本発明の関連する詳細を不明瞭にしないように、詳細には説明されず、または省略される。
【００１０】
「本発明の実施形態」という用語は、本発明のすべての実施形態が議論される特徴、利点または動作モードを含むことを必要としない。
【００１１】
本明細書で使用する用語は、特定の実施形態について説明することのみを目的とするものであり、本発明の実施形態を限定するものではない。本明細書で使用される単数形"a"、"an"、および"the"は、文脈が別段に明確に示すのでなければ、複数形を含むものとする。本明細書で使用する場合、「備える(comprises)」、「備えている(comprising)」、「含む(includes)」、および/または「含んでいる(including)」という用語は、述べられた特徴、整数、ステップ、動作、要素、および/または構成要素の存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、および/またはそれらのグループの存在または追加を排除するものではないことがさらに理解されよう。
【００１２】
さらに、多くの実施形態が、たとえば、コンピューティングデバイスの要素によって実行されるべき一連の動作の観点から説明される。特定の回路(たとえば、特定用途向け集積回路(ASIC))、プログラム命令を実行する1つまたは複数のプロセッサ、または両方の組合せが、本明細書において説明する種々の動作を実行する場合があることが認識されよう。さらに、本明細書で説明する一連のアクションは、実行時に、関連するプロセッサに本明細書で説明する機能を実行させるコンピュータ命令の対応するセットを記憶した、任意の形式のコンピュータ可読記憶媒体内で完全に具現化されるものとみなすことができる。したがって、本発明の様々な態様は、そのすべてが特許請求される主題の範囲内であることが企図された、いくつかの異なる形式で具現化することができる。さらに、本明細書において説明されている実施形態ごとに、本明細書においては、任意のそのような実施形態の対応する形態を、たとえば説明されているアクションを実施する「ように構成される論理」として説明することができる。
【００１３】
キャッシュに記憶されたエフェメラルデータに読取り動作を実行する際に、いくつかの実施形態は、エフェメラルデータをNo-Writebackデータとしてタグ付けする機能を含み、タグ付けされたエフェメラルデータは、システムメモリに書き込まれることはない。No-Writebackタグは、対応するデータが有効であるかどうかを示すための従来の有効タグに加えるものである。No-Writebackタグ付けは、たとえばキャッシュが、バスマスタによって実行される読取り動作と関連するバスシグナリングを調べる方法など、いくつかの方法で行われる場合がある。たとえば、バスシグナリングは、読取り命令のオペコードが、データのキャッシュラインを読み取るときに、データがNo-Writebackとしてタグ付けされることを示す、読取り命令の特殊なバージョンを含む場合がある。別の方法は、キャッシュが読取りデバイス(たとえば、ディスプレイ)と関連するMasterID(マスター識別情報)を調べ、MasterIDに応じてデータをNo-Writebackとしてタグ付けすることである。別の方法は、フラグを含めるために読取りデバイスとキャッシュとの間のトランザクションでトランザクション属性を変更することであり、フラグは、読取り動作を実行時にキャッシュに、キャッシュラインをNo-Writebackデータとしてタグ付けさせるために、読取りデバイスによってセットされてよい。
【００１４】
図1は、一実施形態が適用できるシステム100を示す。システム100は、ディスプレイ104に表示される画像を処理し、操作するために使用されてよいプロセッサ102を含む。システム100には、バスアービタ106、システムメモリ108、キャッシュ110、およびシステムバス112もまた含まれる。システム100は、たとえば、セルラーフォンまたはタブレットなど、より大きいシステムの一部を表す場合がある。
【００１５】
説明を簡単にするために、システムのすべての構成要素が図1に示されるわけではない。システム100中に示す構成要素のいくつかは、1つまたは複数の半導体チップに統合される場合がある。たとえば、キャッシュ110は、プロセッサ102と一体化される場合があるが、簡単にするために、キャッシュ110はシステムバス112に結合される別個の構成要素として示している。別の例として、プロセッサ102は、バスアービタ106の機能を実行する場合がある。さらに、システムメモリ108は、メモリ階層の一部である場合があり、キャッシュのいくつかのレベルがある場合がある。簡単にするために、単に1つのレベル、キャッシュ110が示される。
【００１６】
プロセッサ102は、ディスプレイ104に専用であり、画像処理用に最適化されたものであってよい。しかしながら、実施形態はそのように限定されず、プロセッサ102は、たとえばセルラーフォンまたはタブレット用の一般的なアプリケーションプロセッサを表してよい。いくつかの実施形態については、図1に示す構成要素の全部または大部分は、ディスプレイ104に専用である、または画像処理用に最適化されたものである場合がある。たとえば、キャッシュ110は、プロセッサ102と一体化され、ディスプレイ104に専用であってよく、システムメモリ108は、図示していない他の構成要素と共有される。
【００１７】
キャッシュ110は、キャッシュアドレスを保持するためのレジスタ112を含む。図1の特定の例では、レジスタ112に記憶されるキャッシュアドレスは、2つのフィールド、すなわちタグフィールド114と、インデックスフィールド116とを含み、タグフィールド114の値は、キャッシュアドレスのビットの上位セットであり、インデックスフィールド116の値は、キャッシュアドレスのビットの下位セットである。図1の特定の例については、キャッシュ110は、タグがRAM(ランダムアクセスメモリ)118に記憶され、データの対応するキャッシュラインがRAM120に記憶される、ダイレクトマップキャッシュとして構成される。他の実施形態では、キャッシュが、たとえばセットアソシアティブキャッシュなど、他の方法で構成されてよい。RAM118およびRAM120が、別個のRAMとして実装されるか、1つのRAMとして実装されるかは、この説明には重要ではない。キャッシュラインおよび関連するビットを記憶するための他のタイプのストレージが使用されてよい。図1の特定の例については、キャッシュライン122などの各キャッシュラインが、4バイトのデータを含む。
【００１８】
インデックスフィールド116中のビットの上位セットが、デコーダ124に提供され、デコーダ124は、キャッシュライン122と関連するタグ126を取得するために、RAM118へインデックス付けするために使用される。インデックスフィールド116中のビットの下位セットが、キャッシュライン122に記憶された特定のバイトを選択するために、マルチプレクサ128で使用される。タグ126は、マッチがあるかどうかを示すために、比較器130によってタグフィールド114に記憶された値と比較される。タグ126に加えて、インデックスフィールド116に記憶されたビットの上位セットは、キャッシュライン122と関連する有効ビット132を提供するために、RAM118へインデックス付けするために使用され、有効ビット132は、キャッシュライン122に記憶されたデータが有効であるかどうかを示す。タグ126がタグフィールド114の値とマッチする場合、および有効ビット132がキャッシュライン122は有効であることを示す場合、キャッシュライン122に記憶されたデータが正しいアドレスを有し、有効であることを示す有効なヒットがある。
【００１９】
有効ビット132を提供することに加えて、インデックスフィールド116に記憶されたビットの上位セットは、キャッシュライン122と関連するNo-Writebackビット133を提供するために、RAM118にインデックス付けする。No-Writebackビット133は、キャッシュ110からキャッシュライン122を追い出すときに、キャッシュライン122に記憶されたデータがシステムメモリ108に書き戻されるべきかどうかを示す。No-Writebackビット133がセットされている場合、実施されているキャッシュポリシーにかかわらず、キャッシュライン122はシステムメモリ108に書き戻されない。
【００２０】
いくつかの実施形態では、プロセッサ102用の命令セットは、Read-No-Writeback命令を含む。Read-No-Writeback命令は、そのパラメータの1つがアドレスである命令であり、キャッシュ110によって受信されるとき、そのアドレスと関連するデータは、従来の読取り動作においてと同様に、適切なキャッシュラインから読み取られる。適切なキャッシュラインが見つけられるならば、キャッシュラインがキャッシュから追い出されるときにシステムメモリ108に書き戻されないことを示すために、キャッシュラインと関連するNo-Writebackビットはセットされる。ノーライトビットをこのようにセットすると、キャッシュライン中のデータは、システムメモリ(またはより高いレベルのキャッシュ)に書き込まれることはない。Read-No-Writeback命令を受信した後に、キャッシュコヒーレンスポリシーがキャッシュ110にライトバック命令を送信する場合、No-Writebackとしてマーク付けされたキャッシュラインがメモリ(たとえば、システムメモリ108)に書き込まれることはない。ここでは、キャッシュ110が命令を受信することへの言及は、命令を示す様々なバス信号がキャッシュ110に提供されることを意味する場合がある。
【００２１】
いくつかの実施形態については、No-Writebackビットは、次に置き換えるキャッシュラインを選択するための手段として使用することができる。そのような実施形態では、置換ポリシーは、セットされたNo-Writebackビットを有するキャッシュラインを探し、No-Writebackビットがセットされていない有効キャッシュラインを追い出す前に、そのようなキャッシュラインを追い出すことである。これは、エフェメラルデータがその最後の使用を確認し、置き換えられることが可能であるという前提に基づいている。
【００２２】
図2および図3は、上記で説明した実施形態のいくつかを示す。プロセッサで実行しているプロセス(ステップ202)については、エフェメラルデータが生成される場合(ステップ204)、エフェメラルデータがシステムメモリに書き戻されることのないように、キャッシュされたエフェメラルデータのキャッシュライン中のNo-Writebackビットがセットされる。キャッシュコヒーレンスポリシーの実施時に、キャッシュラインのライトバック命令がキャッシュによって受信される場合(ステップ208)、キャッシュラインと関連するNo-Writebackビットがセットされている場合(ステップ210)、実施されている特定のキャッシュライン置換ポリシーにかかわらず、キャッシュラインはシステムメモリに書き込まれることはない(ステップ212)。しかしながら、No-Writebackビットがセットされていない場合(ステップ210)、キャッシュラインは、それが有効であるならば、システムメモリに書き込まれてよい(ステップ214)。
【００２３】
図3を参照すると、命令のフェッチ時に(ステップ302)、Read-No-Writeback命令がデコードされる場合(ステップ304)、Read-No-Writeback命令がキャッシュに送信される(ステップ306)。キャッシュがRead-No-Writeback命令を実行すると、Read-No-Writeback命令のアドレスパラメータによって示されるキャッシュラインと関連するデータの読取りを引き起こし、キャッシュラインがシステムメモリに書き戻されないように、対応するNo-Writebackビットをセットする(ステップ308)。
【００２４】
図2および図3に示すプロセスの一部は、プロセッサ102によって実行されてよく、他はキャッシュ110で、たとえばRAM118においてNo-Writebackビットをセットするためにコントローラ134によって実行されてよい。
【００２５】
いくつかの実施形態については、キャッシュラインと関連するNo-Writebackビットが、キャッシュを読み取るデバイス(たとえば、セルラーフォンのディスプレイ)と関連する変更されたトランザクション属性に従ってセットされてよい。トランザクション属性はフラグを含み、フラグは、読取り動作が実行されるとき、キャッシュに記憶された対応するキャッシュラインにNo-Writebackビットがセットされることを示すためにデバイスによってセットされてよい。これは、図4に示されており、ステップ402において、キャッシュラインのデータを読み取るデバイスが、トランザクション属性にフラグをセットし、ステップ404においてキャッシュコントローラ134は、キャッシュラインにNo-Writebackビットをセットして、それがエフェメラルデータであることを示す。
【００２６】
図5は、別の方法を示す。ステップ502において、キャッシュ110は、たとえばディスプレイなど、読取りデバイスと関連するMasterIDを調べ、特定のMasterIDに応じて、キャッシュコントローラ134は、キャッシュラインと関連するNo-Writebackビットをセットして、キャッシュライン中のデータがエフェメラルデータであることを示す(ステップ504)。
【００２７】
図6は、実施形態を適用できるワイヤレス通信システムを示す。図6は、基地局604A、604B、および604Cを含むワイヤレス通信ネットワーク602を示す。図6は、セルラーフォン、タブレット、またはコンピュータもしくはコンピュータシステムなど、セルラーフォンネットワークに好適な何らかの他の種類の通信デバイスなどのモバイル通信デバイスであってよい、606と標示される通信デバイスを示す。通信デバイス606は、モバイルである必要はない。図6の特定の例では、通信デバイス606は、基地局604Cと関連するセル内に位置する。矢印608および610は、それぞれアップリンクチャネルおよびダウンリンクチャネルを図式的に表しており、そのチャネルによって、通信デバイス606は基地局604Cと通信する。
【００２８】
実施形態は、たとえば、通信デバイス606もしくは基地局604C、またはその両方と関連するデータ処理システムにおいて使用される場合がある。図6は、本明細書で説明する実施形態が用いられてもよい多くの適用例のうちのたった1つの適用例を示す。
【００２９】
情報および信号が様々な異なる技術および技法のいずれかを用いて表される場合があることが、当業者には了解されよう。たとえば、上記の説明全体にわたって参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表されてもよい。
【００３０】
さらに、本明細書に開示される実施形態に関して記載される、様々な例示のロジックブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェアまたは両方の組合せとして実装できることが、当業者には了解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、およびステップが、全般にそれらの機能性に関してこれまで説明されてきた。そのような機能がハードウェアまたはソフトウェアとして実装されるかどうかは、特定の用途および全体的なシステムに課せられる設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装してもよいが、そのような実装の決定は、本発明の範囲からの逸脱を引き起こすものと解釈されるべきではない。
【００３１】
本明細書で開示した実施形態に関して説明した方法、シーケンス、および/またはアルゴリズムは、ハードウェア、プロセッサによって実行されるソフトウェアモジュール、またはその2つの組合せにおいて直接具現化されてもよい。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において知られている任意の他の形態の記憶媒体中に存在してもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替形態では、記憶媒体はプロセッサと一体化することができる。
【００３２】
したがって、本発明の実施形態は、無効化を伴う読取りを使用して、キャッシュにおける帯域幅および電力を下げるための方法を具現する非一時的コンピュータ可読媒体を含むことができる。したがって、本発明は図示される例に限定されず、本明細書で説明される機能を実行するためのあらゆる手段が、本発明の実施形態に含まれる。
【００３３】
上記開示は、本発明の実例実施形態を示したものであるが、添付の特許請求の範囲で定義されている本発明の範囲を逸脱することなく、本明細書において様々な変更および修正を加えることができることに留意されたい。本明細書で説明される本発明の実施形態による方法クレームの機能、ステップ、および/または動作は、任意の特定の順序で実行される必要はない。さらに、本発明の要素は、単数形において記載または特許請求されている場合があるが、単数形に限定することが明示的に述べられていない限り、複数形も考えられる。
【符号の説明】
【００３４】
100  システム
102  プロセッサ
104  ディスプレイ
106  バスアービタ
108  メモリ
110  キャッシュ
112  レジスタ
114  タグ
116  インデックス
118  ランダムアクセスメモリ
120  ランダムアクセスメモリ
122  キャッシュライン
124  デコーダ
126  タグ
128  マルチプレクサ
130  比較器
132  有効ビット
134  コントローラ
【図１】
2017510902.tif 000003
【図２】
2017510902.tif 000004
【図３】
2017510902.tif 000005
【図４】
2017510902.tif 000006
【図５】
2017510902.tif 000007
【図６】
2017510902.tif 000008
【手続補正書】
【提出日】平成28年10月14日(2016.10.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デバイスからの読取り命令および前記デバイスに対応する受信情報をキャッシュにおいて受信するステップであって、前記読取り命令がアドレスを示す、受信するステップと、
前記デバイスに対応する前記受信情報から、前記アドレスと関連するキャッシュラインが、前記キャッシュから前記キャッシュラインを追い出すときにメモリに書き込まれないかどうかを判定するステップと、
前記デバイスに対応する前記受信情報から、前記キャッシュラインは前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを判定するとき、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを示すために前記キャッシュにおいてNo-Writebackビットをセットするステップと
を含む、方法。
【請求項２】
No-Writebackビットがセットされていない他のキャッシュラインを、前記キャッシュから追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すステップ
をさらに含む、請求項1に記載の方法。
【請求項３】
前記デバイスに対応する前記受信情報が、前記デバイスに対応する受信マスター識別情報であり、
前記デバイスに対応する前記受信マスター識別情報から、前記キャッシュから前記キャッシュラインを追い出すときに前記キャッシュラインが前記メモリに書き込まれないかどうかを判定するステップが、前記キャッシュにおいて前記デバイスに対応する前記受信マスター識別情報を調べることに基づく、請求項1に記載の方法。
【請求項４】
キャッシュラインと関連するデータを記憶するためのストレージであって、各キャッシュラインが対応するNo-Writebackビットを有する、ストレージと、
前記ストレージに結合されるコントローラであって、デバイスからの読取り命令および前記デバイスに対応する受信情報を受信することであって、前記読取り命令がアドレスを示す、受信することと、それに応答して、
前記デバイスに対応する前記受信情報から、前記アドレスと関連しているキャッシュラインが、キャッシュから前記キャッシュラインを追い出すときにメモリに書き込まれないかどうかを判定することと、
前記デバイスに対応する前記受信情報から、前記キャッシュラインは前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを判定するとき、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを示すために前記キャッシュラインに対応する前記No-Writebackビットをセットすることと
を行うように構成される、コントローラと
を含む、キャッシュ。
【請求項５】
前記コントローラが、No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すようにさらに構成される、請求項4に記載のキャッシュ。
【請求項６】
前記デバイスに対応する前記受信情報が、前記デバイスに対応する受信マスター識別情報であり、前記コントローラが、
前記デバイスに対応する前記受信マスター識別情報から、前記キャッシュラインが、前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないかどうかを調べかつ判定し、
前記受信マスター識別情報から、前記キャッシュラインが追い出すときに前記メモリに書き込まれないことを判定するとき、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを示すために前記キャッシュラインと関連する前記No-Writebackビットをセットする
ようにさらに構成される、請求項5に記載のキャッシュ。
【請求項７】
前記デバイスに対応する前記受信情報が、前記デバイスに対応する受信マスター識別情報であり、前記コントローラが、
前記デバイスに対応する前記受信マスター識別情報から、前記キャッシュラインが、前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないかどうかを調べかつ判定し、
前記受信情報から、前記キャッシュラインが追い出すときに前記メモリに書き込まれないことを判定するとき、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを示すために前記キャッシュラインと関連する前記No-Writebackビットをセットする
ようにさらに構成される、請求項4に記載のキャッシュ。
【請求項８】
前記キャッシュが、セルラーフォン、タブレット、およびコンピュータシステムからなるグループから選択される装置の一部である、請求項4に記載のキャッシュ。
【請求項９】
メモリと、
デバイスと、
前記デバイスに結合されるキャッシュであって、
キャッシュラインを記憶し、かつ前記デバイスからの読取り命令および前記デバイスに対応する受信情報を受信することであって、前記読取り命令が前記キャッシュラインのアドレスを示す、記憶かつ受信することと、
前記キャッシュラインとともに対応するNo-Writebackビットを記憶することと
を行うように構成され、
前記デバイスに対応する前記受信情報から、前記キャッシュラインが、前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないかどうかを判定し、
前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを判定することに応答して、前記キャッシュラインが前記キャッシュから前記キャッシュラインを追い出すときに前記メモリに書き込まれないことを示すために前記No-Writebackビットをセットする
ようにさらに構成されるキャッシュと
を含む、システム。
【請求項１０】
前記キャッシュが、No-Writebackビットがセットされていない他のキャッシュラインを追い出す前に、置換ポリシーに応答して前記キャッシュラインを追い出すようにさらに構成される、請求項9に記載のシステム。
【請求項１１】
前記デバイスがマスター識別情報を有し、
前記デバイスに対応する前記受信情報が、受信マスター識別情報である、
請求項9に記載のシステム。
【請求項１２】
前記デバイスがディスプレイである、請求項9に記載のシステム。
【国際調査報告】
2017510902.tif 000009
2017510902.tif 000010