JP4434534B2 - プロセッサ・システム - Google Patents

プロセッサ・システム Download PDF

Info

Publication number
JP4434534B2
JP4434534B2 JP2001296289A JP2001296289A JP4434534B2 JP 4434534 B2 JP4434534 B2 JP 4434534B2 JP 2001296289 A JP2001296289 A JP 2001296289A JP 2001296289 A JP2001296289 A JP 2001296289A JP 4434534 B2 JP4434534 B2 JP 4434534B2
Authority
JP
Japan
Prior art keywords
cache line
memory
external memory
write
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001296289A
Other languages
English (en)
Other versions
JP2003108439A (ja
Inventor
田 恭 正 中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001296289A priority Critical patent/JP4434534B2/ja
Priority to EP02021824A priority patent/EP1298532A3/en
Priority to US10/256,079 priority patent/US6931495B2/en
Publication of JP2003108439A publication Critical patent/JP2003108439A/ja
Application granted granted Critical
Publication of JP4434534B2 publication Critical patent/JP4434534B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0835Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、キャッシュメモリに格納されたデータを外部メモリに書き戻す機能をもつプロセッサを備えたプロセッサ・システムに関し、特にI/O回路から外部メモリにDMA転送を行うことが可能なプロセッサ・システムに関する。
【0002】
【従来の技術】
プロセッサの動作周波数は、年々高くなる傾向にあるが、主記憶に用いられる外部メモリはプロセッサほど高速化が進んでいないため、両者のギャップを埋めるために、キャッシュメモリを用いるのが一般的である。
【0003】
キャッシュメモリは、複数のワードからなるキャッシュラインごとに外部メモリとの間でデータのやり取りを行う。プロセッサがキャッシュメモリに書き込んだデータは、外部メモリに書き戻す(ライトバックを行う)必要があるため、各キャッシュラインごとに、外部メモリへの書き戻しを行った否かを示すダーティビットが設けられている。ダーティビットがセットされている場合には、まだ外部メモリへの書き戻しが終わっていないことを示している。
【0004】
プロセッサには、種々のI/O回路が接続されるが、各I/O回路と外部メモリとの間で、プロセッサを介さずにデータをDMA転送すると、プロセッサの処理負担が軽減されるとともに、I/O回路から外部メモリに高速にデータを転送することができる。
【0005】
【発明が解決しようとする課題】
ところが、キャッシュメモリのデータを外部メモリにまだ書き戻していないアドレスに対してDMA転送が指示される場合もありうる。このような場合、DMA転送を行う前に、外部メモリに対してライトバック動作を行う必要がある。また、まだライトバック動作を行っていないキャッシュラインのアドレスを包含するアドレス範囲についてDMA転送を行う場合には、そのキャッシュラインを無効(インバリデード)にする必要がある。
【0006】
例えば、図8は、キャッシュメモリのアドレス情報を格納するタグに0x2000が格納され、あるキャッシュラインが4ワードで構成されている例を示している。この場合、キャッシュラインには、0x2000〜0x200f番地までの4ワードデータが格納されている。
【0007】
図7の場合、キャッシュラインの一部のみが更新されても、そのキャッシュラインのダーティビットはセットされる。すなわち、ダーティビットだけでは、そのキャッシュラインのどこが更新されたのかを知ることはできない。
【0008】
ダーティビットがセットされている状態で、例えば、0x2004番地から1ワード分のデータをI/O回路から外部メモリにDMA転送する場合には、DMA転送を行う前にまずキャッシュラインのライトバック動作が行われる。
【0009】
ところが、キャッシュラインの中で更新されたのが0x2005番地の1バイトだけの場合、この1バイト分はDMA転送により書き換えられるので、ライトバック動作は意味がなくなってしまう。
【0010】
このように、従来は、キャッシュライン単位でダーティビットを持っているものの、キャッシュライン中のどこが更新されたのかを示す情報をもっていなかったため、本来行う必要がない場合までライトバック動作を行うことが多く、不要なバストランザクションが発生する原因になっていた。
【0011】
また、このような不要なバストランザクションの発生を避けるために、DMAの対象となるデータを定義する際に各キャッシュラインに一つずつデータが配置されるようにデータの宣言を工夫する(例えば、データの宣言間にダミーの宣言を挿入するなど)手法も考えられるが、このような手法はソフトウエアの開発効率を低下させる要因になる。
【0012】
一方、キャッシュメモリが外部メモリに格納されるべき最新データを保持しているか否かを探索するスヌープ機能を持つプロセッサの場合、ソフトウエアによるデータ一貫性を保持するためのソフトウェアによる操作は必要ないが、I/O回路から外部メモリにDMA転送を行う場合は以下の動作が行われる。
【0013】
DMA転送を行うべき対象があるキャッシュラインにヒットした場合には、そのキャッシュラインはインバリデートされる。このキャッシュラインにダーティビットがセットされている場合は、DMA転送を行う前にこのキャッシュラインが書き戻され、その後にDMA転送が行われる。
【0014】
この場合も、例えばタグに0x2000番地が格納されていてダーティビットがセットされている場合には、仮に更新すべきデータが0x2005番地のみに存在する場合でも、キャッシュライン全体が書き戻される。
【0015】
このように、スヌープ機能を持つ従来のプロセッサは、キャッシュライン中のどこが更新されたかを示す情報を持っていなかったため、必ずライトバック動作を行わなければならず、不要なバストランザクションを発生させる原因になっていた。
【0016】
また、ソフトウエアによりデータの宣言を工夫する手法を採用すると、ソフトウエアの開発効率が悪くなるという問題があった。
【0017】
本発明は、このような点に鑑みてなされたものであり、その目的は、DMA転送時の不要なバストランザクションを低減可能なプロセッサ・システムを提供することにある。
【0018】
【課題を解決するための手段】
上述した課題を解決するために、本発明は、複数のワードからなるキャッシュラインを単位として、キャッシュメモリに格納されたデータを外部メモリに書き戻す機能をもつプロセッサを備えたプロセッサ・システムにおいて、前記キャッシュラインより細かいアドレス単位で、前記外部メモリへの書き戻しをまだ行っていないことを示す情報を格納する小単位ダーティ情報格納部と、I/O回路から前記外部メモリにデータをDMA(Direct Memory Access)転送する際の該当アドレスに対応するデータが前記キャッシュメモリに格納されている場合にセットされる特定モードフラグの情報を格納するモード情報格納部と、前記特定モードフラグがセットされているときに、あるキャッシュラインの書き戻しが指示されると、前記小単位ダーティ情報格納部に格納されている情報に基づいて、DMA転送前にそのキャッシュラインの書き戻しを行うか否かを決定するライトバック決定部と、を備える。
【0019】
本発明では、キャッシュラインの書き戻しを行った外部メモリのメモリ領域に対して、書き戻しの直後にI/O回路からのDMA転送を行う場合は、書き戻しを省略するようにして不要なバストランザクションを低減する。
【0020】
【発明の実施の形態】
以下、本発明に係るプロセッサ・システムについて、図面を参照しながら具体的に説明する。
【0021】
(第1の実施形態)
図1は本発明に係るプロセッサ・システムの第1の実施形態の概略構成を示すブロック図である。図1のプロセッサ・システムは、指定されたプログラムに従って各種演算処理を行うCPU1と、外部メモリ2と、外部メモリ2に格納すべきデータを一時的に格納するキャッシュメモリ3と、バスの調停を行うアービタ4とを備えている。キャッシュメモリ3、外部メモリ2およびアービタ4はいずれもバス5に接続されている。このバス5には、各種のI/O回路6も接続されている。
【0022】
キャッシュメモリ3は、図2に示すように、複数のワードデータからなるキャッシュライン10を単位としてデータの更新を行う。キャッシュメモリ3には、各キャッシュライン10のデータに対応するアドレス情報を格納するタグ11と、キャッシュライン10のデータを外部メモリ2に書き戻す必要があるか否かを示す情報(ダーティビット)を格納するダーティビット格納部12と、キャッシュライン10中の各ワード1〜4のそれぞれごとに外部メモリ2への書き戻しをまだ行っていないことを示す情報(ワードダーティビット)を格納するワードダーティビット格納部13とを有する。
【0023】
ワードダーティビットは、対応するワードデータがダーティ状態(そのワードデータが更新されて、まだ外部メモリ2への書き戻しを行っていない状態)のときにセットされる。このとき、そのワードデータが属するキャッシュライン10のダーティビットも当然にセットされる。
【0024】
CPU1は、I/O回路6から外部メモリ2にDMA(Direct Memory Access)転送する際にキャッシュメモリ3の該当アドレスを書き戻すか、あるいはインバリデートする必要があるときにセットされる特定モードフラグを格納するモード情報格納部21と、キャッシュライン10の書き戻しを実際に行うか否かを決定するライトバック決定部22と、を有する。
【0025】
ライトバック決定部22は、特定モードフラグがセットされているときに、あるキャッシュライン10の書き戻しが指示されると、ワードダーティビット格納部13に格納されている情報に基づいて、そのキャッシュライン10の書き戻しを実際に行うか否かを決定する。
【0026】
図3はライトバック決定部22の処理動作を示すフローチャートである。まず、キャッシュラインのダーティビットがセットされているか否かを判定する(ステップS1)。セットされていないと判定されると図3の処理を終了する。
【0027】
上記のダーティビットがセットされていると判定されると、次に特定モードフラグがセットされているか否かを判定する(ステップS2)。このフラグがセットされるのは、I/O回路6から外部メモリ2にDMA転送する際に、DMA転送する該当アドレスのデータがキャッシュメモリ3に格納されている場合である。このフラグがセットされていないと判定されると、後述するステップS6に進む。
【0028】
特定モードフラグがセットされている場合には、次に、DMA転送する該当アドレスに対応するワードデータのワードダーティビットがセットされているか否かを判定する(ステップS3)。このワードダーティビットがセットされている場合には、次に、DMA転送するアドレス以外のアドレスに対応するワードデータのワードダーティビットがセットされているか否かを判定する(ステップS4)。
【0029】
ステップS3でワードダーティビットがセットされていないと判定された場合、あるいはステップS4の判定が否定された場合、すなわちワードダーティビットがセットされているすべてのワードデータのアドレスに対してDMA転送する場合には、書き戻しを行わずにI/O回路6からのDMA転送を行う(ステップS5)。
【0030】
一方、ステップS4の判定が肯定された場合、すなわちDMA転送の対象となるワードデータ以外についてもワードダーティビットがセットされている場合は、該当アドレスに対応するキャッシュライン10の書き戻しを行った後にI/O回路6から外部メモリ2へのDMA転送を行う(ステップS6)。
【0031】
このように、第1の実施形態では、キャッシュライン10中の各ワードデータごとに、ダーティ状態か否かを示すワードダーティビットを設け、ワードダーティビットがセットされたすべてのワードデータに対応するアドレスに対してDMA転送が指示された場合には、キャッシュライン10の書き戻しを行わずにI/O回路6からのDMA転送を行うようにしたため、実質的に意味のないキャッシュライン10の書き戻し処理を行わずに済み、不要なバストランザクションを低減できる。また、不要なバストランザクションを低減するためにソフトウェアによる工夫を行わなくて済み、ソフトウェアの開発効率の向上が図れる。
【0032】
(第2の実施形態)
図4は本発明に係るプロセッサ・システムの第2の実施形態の概略構成を示すブロック図である。図4では、図1と共通する構成部分には同一符号を付しており、以下では相違点を中心に説明する。
【0033】
図4のキャッシュメモリ3は、図5に詳細構成を示すように、キャッシュライン10中の各バイトデータごとに外部メモリ2への書き戻しをまだ行っていないことを示す情報(バイトダーティビット)を格納するバイトダーティ格納部14とを有する。
【0034】
CPU1内のライトバック決定部22は、バイトダーティビットがセットされたすべてのバイトデータに対応するアドレスについてDMA転送が指示された場合には、キャッシュライン10の書き戻しを行わずにI/O回路6からのDMA転送を行い、DMA転送が指示されていないアドレスに対応するバイトデータのバイトダーティビットもセットされている場合には、キャッシュライン10の書き戻しを行ってからI/O回路6からのDMA転送を行う。
【0035】
このように、第2の実施形態では、キャッシュライン10中の各バイトデータごとに、ダーティ状態か否かを示すバイトダーティビットを設け、バイトダーティビットがセットされたすべてのバイトデータに対応するアドレスについてDMA転送が指示された場合は、キャッシュライン10の書き戻しを行わずにI/O回路6からのDMA転送を行うようにしたため、実質的に意味のないキャッシュライン10の書き戻し処理を行わなくて済み、不要なバストランザクションを低減できる。また、不要なバストランザクションの低減のためにソフトウェアによる工夫を行わなくて済み、ソフトウェアの開発効率を向上できる。
【0036】
特に、第2の実施形態の場合、キャッシュライン10中のバイトデータごとに、ダーティ状態か否かを示すバイトダーティビットを設けるため、書き戻しが必要か否かの判断を第1の実施形態よりもさらに効率よく行うことができる。
【0037】
(第3の実施形態)
図6は本発明に係るプロセッサ・システムの第3の実施形態の概略構成を示すブロック図である。図6では、図1と共通する構成部分には同一符号を付しており、以下では相違点を中心に説明する。
【0038】
図6のプロセッサ・システムは、図1の構成に加えて、スヌープ機能を実現するためのスヌープ制御部23を備えている。ここで、スヌープとは、I/O回路によるDMA転送の際、バス上に出現するDMA転送のアドレスを見て、そのアドレスに対応するデータをキャッシュメモリが保持しているか否かを判定し、そのDMA転送の種類に応じて、キャッシュメモリに対して必要な処理を行うことである。
【0039】
I/O回路6から外部メモリ2にDMA転送する際に、DMA転送する該当アドレスのデータがキャッシュメモリ3に格納されている場合には、上述した特定モードフラグがセットされる。このフラグがセットされている状態で、スヌープ制御部23が発行したアドレスがあるキャッシュライン10にヒットした場合には、このアドレスに対応するワードデータのワードダーティビットのみがセットされているか否かを判定し、判定が肯定されるとキャッシュライン10の書き戻しを行わずにI/O回路6からのDMA転送を行い、判定が否定されるとキャッシュライン10の書き戻しを行ってからI/O回路6からのDMA転送を行う。
【0040】
このように、第3の実施形態では、スヌープ機能を備えているプロセッサ・システムにおいて、スヌープ処理を行った結果、外部メモリ2に最新データが格納されていないと判断された場合でも、書き戻しを行うべきワードデータのワードダーティビットのみがセットされていれば、書き戻しを行わずにI/O回路6からのDMA転送を行うようにしたため、第1および第2の実施形態と同様に、無駄なバストランザクションを低減できる。
【0041】
図6はキャッシュライン10中のワードデータごとにワードダーティビットを設ける例を示しているが、キャッシュライン10中のバイトデータごとにバイトダーティビットを設けてもよい。この場合のブロック図は図7のようになる。この場合も、図3と図5のプロセッサ・システムを併せた効果が得られる。
【0042】
【発明の効果】
以上詳細に説明したように、本発明によれば、ワードダーティビット格納部13とモード情報格納部21を設けてキャッシュライン10の書き戻しを行うか否かを判断するため、必要な場合のみキャッシュライン10の書き戻しが行われ、不要なバストランザクションを低減できる。
【図面の簡単な説明】
【図1】本発明に係るプロセッサ・システムの第1の実施形態の概略構成を示すブロック図。
【図2】第1の実施形態のキャッシュメモリの詳細構成を示すブロック図。
【図3】ライトバック決定部の処理動作を示すフローチャート。
【図4】本発明に係るプロセッサ・システムの第2の実施形態の概略構成を示すブロック図。
【図5】第2の実施形態のキャッシュメモリの詳細構成を示すブロック図。
【図6】本発明に係るプロセッサ・システムの第3の実施形態の概略構成を示すブロック図。
【図7】第3の実施形態の変形例を示すブロック図。
【図8】キャッシュメモリのライトバック動作を説明する図。
【符号の説明】
1 CPU
2 外部メモリ
3 キャッシュメモリ
4 アービタ
5 バス
6 I/O回路
10 キャッシュライン
11 タグ
12 ダーティビット格納部
13 ワードダーティビット格納部
14 ビットダーティビット格納部
21 モード情報格納部
22 ライトバック決定部
23 スヌープ制御部

Claims (6)

  1. 複数のワードからなるキャッシュラインを単位として、キャッシュメモリに格納されたデータを外部メモリに書き戻す機能をもつプロセッサを備えたプロセッサ・システムにおいて、
    前記キャッシュラインより細かいアドレス単位で、前記外部メモリへの書き戻しをまだ行っていないことを示す情報を格納する小単位ダーティ情報格納部と、
    I/O回路から前記外部メモリにデータをDMA(Direct Memory Access)転送する際の該当アドレスに対応するデータが前記キャッシュメモリに格納されている場合にセットされる特定モードフラグの情報を格納するモード情報格納部と、
    前記特定モードフラグがセットされているときに、あるキャッシュラインの書き戻しが指示されると、前記小単位ダーティ情報格納部に格納されている情報に基づいて、DMA転送前にそのキャッシュラインの書き戻しを行うか否かを決定するライトバック決定部と、を備えることを特徴とするプロセッサ・システム。
  2. 前記ライトバック決定部は、前記小単位ダーティ情報格納部に前記外部メモリへの書き戻しをまだ行っていないことを示す情報が格納されているすべてのアドレス単位に対して前記I/O回路から外部メモリへのDMA転送が指示された場合には、そのキャッシュラインの書き戻しを行わずにそのDMA転送を行うことを特徴とする請求項1に記載のプロセッサ・システム。
  3. 前記ライトバック決定部は、前記小単位ダーティ情報格納部に前記外部メモリへの書き戻しをまだ行っていないことを示す情報が格納されている少なくとも一部のアドレス単位に対して前記I/O回路から外部メモリへのDMA転送が指示されなかった場合には、そのキャッシュラインの書き戻しを行った後にそのDMA転送を行うことを特徴とする請求項1に記載のプロセッサ・システム。
  4. 前記小単位ダーティ情報格納部は、キャッシュラインに含まれるワード単位あるいはバイト単位で前記外部メモリへの書き戻しをまだ行っていないことを示す情報を格納することを特徴とする請求項2または3に記載のプロセッサ・システム。
  5. 前記キャッシュメモリが前記外部メモリに格納されるべき最新データを保持しているか否かを探索するスヌープ制御部を備え、
    前記ライトバック決定部は、前記特定モードフラグがセットされているときに、前記スヌープ制御部によりあるキャッシュラインの書き戻しが指示されると、前記小単位ダーティ情報格納部に格納されている情報に基づいて、そのキャッシュラインの書き戻しを行うか否かを決定する請求項1〜4のいずれかに記載のプロセッサ・システム。
  6. 前記小単位ダーティ情報格納部は、前記キャッシュメモリの内部に設けられ、
    前記モード情報格納部は、前記プロセッサの内部に設けられることを特徴とする請求項1〜5のいずれかに記載のプロセッサ・システム。
JP2001296289A 2001-09-27 2001-09-27 プロセッサ・システム Expired - Fee Related JP4434534B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001296289A JP4434534B2 (ja) 2001-09-27 2001-09-27 プロセッサ・システム
EP02021824A EP1298532A3 (en) 2001-09-27 2002-09-27 Processor and method of arithmetic processing thereof
US10/256,079 US6931495B2 (en) 2001-09-27 2002-09-27 Processor and method of arithmetic processing thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001296289A JP4434534B2 (ja) 2001-09-27 2001-09-27 プロセッサ・システム

Publications (2)

Publication Number Publication Date
JP2003108439A JP2003108439A (ja) 2003-04-11
JP4434534B2 true JP4434534B2 (ja) 2010-03-17

Family

ID=19117562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001296289A Expired - Fee Related JP4434534B2 (ja) 2001-09-27 2001-09-27 プロセッサ・システム

Country Status (3)

Country Link
US (1) US6931495B2 (ja)
EP (1) EP1298532A3 (ja)
JP (1) JP4434534B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11294821B1 (en) 2020-09-11 2022-04-05 Kabushiki Kaisha Toshiba Write-back cache device

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4434534B2 (ja) * 2001-09-27 2010-03-17 株式会社東芝 プロセッサ・システム
JP2005128963A (ja) * 2003-10-27 2005-05-19 Toshiba Information Systems (Japan) Corp 記憶制御装置及びdma転送が可能な制御システム
US7380070B2 (en) 2005-02-17 2008-05-27 Texas Instruments Incorporated Organization of dirty bits for a write-back cache
US20070162475A1 (en) * 2005-12-30 2007-07-12 Intel Corporation Method and apparatus for hardware-based dynamic escape detection in managed run-time environments
US7991965B2 (en) 2006-02-07 2011-08-02 Intel Corporation Technique for using memory attributes
US7610448B2 (en) * 2006-12-27 2009-10-27 Intel Corporation Obscuring memory access patterns
WO2009153707A1 (en) * 2008-06-17 2009-12-23 Nxp B.V. Processing circuit with cache circuit and detection of runs of updated addresses in cache lines
WO2010055494A1 (en) * 2008-11-17 2010-05-20 Nxp B.V. A cache management policy and corresponding device
US9195596B2 (en) * 2011-11-02 2015-11-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Mapping of valid and dirty flags in a caching system
KR101996641B1 (ko) 2012-02-06 2019-07-04 삼성전자주식회사 메모리 오버레이 장치 및 방법
US9342461B2 (en) * 2012-11-28 2016-05-17 Qualcomm Incorporated Cache memory system and method using dynamically allocated dirty mask space
KR101502827B1 (ko) * 2014-03-20 2015-03-17 주식회사 에이디칩스 컴퓨터 시스템에서의 캐시 무효화 방법
US20150293847A1 (en) * 2014-04-13 2015-10-15 Qualcomm Incorporated Method and apparatus for lowering bandwidth and power in a cache using read with invalidate
GB2533768B (en) * 2014-12-19 2021-07-21 Advanced Risc Mach Ltd Cleaning a write-back cache
KR102362239B1 (ko) 2015-12-30 2022-02-14 삼성전자주식회사 디램 캐시를 포함하는 메모리 시스템 및 그것의 캐시 관리 방법
KR20220030440A (ko) 2020-08-31 2022-03-11 삼성전자주식회사 전자 장치, 시스템-온-칩, 및 그것의 동작 방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155824A (en) * 1989-05-15 1992-10-13 Motorola, Inc. System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address
US5485592A (en) * 1992-04-07 1996-01-16 Video Technology Computers, Ltd. Write back cache controller method and apparatus for use in a system having a CPU with internal cache memory
JPH0797352B2 (ja) * 1992-07-02 1995-10-18 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・システム及び入出力コントローラ
US5664149A (en) * 1992-11-13 1997-09-02 Cyrix Corporation Coherency for write-back cache in a system designed for write-through cache using an export/invalidate protocol
US5623633A (en) * 1993-07-27 1997-04-22 Dell Usa, L.P. Cache-based computer system employing a snoop control circuit with write-back suppression
US5586297A (en) * 1994-03-24 1996-12-17 Hewlett-Packard Company Partial cache line write transactions in a computing system with a write back cache
EP0683457A1 (en) * 1994-05-20 1995-11-22 Advanced Micro Devices, Inc. A computer system including a snoop control circuit
US5860105A (en) * 1995-11-13 1999-01-12 National Semiconductor Corporation NDIRTY cache line lookahead
US5687131A (en) * 1996-03-22 1997-11-11 Sharp Microelectronics Technology, Inc. Multi-mode cache structure
US5784699A (en) * 1996-05-24 1998-07-21 Oracle Corporation Dynamic memory allocation in a computer using a bit map index
US6658537B2 (en) * 1997-06-09 2003-12-02 3Com Corporation DMA driven processor cache
US6119205A (en) * 1997-12-22 2000-09-12 Sun Microsystems, Inc. Speculative cache line write backs to avoid hotspots
US6591347B2 (en) * 1998-10-09 2003-07-08 National Semiconductor Corporation Dynamic replacement technique in a shared cache
GB2350910A (en) * 1999-06-08 2000-12-13 Advanced Risc Mach Ltd Status bits for cache memory
EP1182563B1 (en) * 2000-08-21 2009-09-02 Texas Instruments France Cache with DMA and dirty bits
GB2369694B (en) * 2000-11-29 2002-10-16 Sun Microsystems Inc Efficient memory modification tracking
US6978360B2 (en) * 2001-05-11 2005-12-20 International Business Machines Corporation Scalable processor
JP4434534B2 (ja) * 2001-09-27 2010-03-17 株式会社東芝 プロセッサ・システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11294821B1 (en) 2020-09-11 2022-04-05 Kabushiki Kaisha Toshiba Write-back cache device

Also Published As

Publication number Publication date
US6931495B2 (en) 2005-08-16
US20030061452A1 (en) 2003-03-27
EP1298532A3 (en) 2003-09-03
JP2003108439A (ja) 2003-04-11
EP1298532A2 (en) 2003-04-02

Similar Documents

Publication Publication Date Title
JP4434534B2 (ja) プロセッサ・システム
JP3016575B2 (ja) 複数キャッシュ・メモリ・アクセス方法
JP3620473B2 (ja) 共有キャッシュメモリのリプレイスメント制御方法及びその装置
JP3067112B2 (ja) 遅延プッシュをコピー・バック・データ・キャッシュに再ロードする方法
JP3289661B2 (ja) キャッシュメモリシステム
US6868472B1 (en) Method of Controlling and addressing a cache memory which acts as a random address memory to increase an access speed to a main memory
US7757044B2 (en) Facilitating store reordering through cacheline marking
US20230214326A1 (en) Computer Memory Expansion Device and Method of Operation
JPH09259036A (ja) ライトバックキャッシュおよびライトバックキャッシュ内で整合性を維持する方法
JP3236287B2 (ja) マルチプロセッサシステム
US6412047B2 (en) Coherency protocol
JPH05210589A (ja) 高速バッファコピー方法
US6349370B1 (en) Multiple bus shared memory parallel processor and processing method
US7757046B2 (en) Method and apparatus for optimizing line writes in cache coherent systems
JPH06103169A (ja) 中央演算処理装置のリードデータプリフェッチ機構
CN112835532A (zh) 用于缓存控制的方法以及计算装置
TWI243999B (en) Apparatus and related method for maintaining read caching data of south bridge with north bridge
US7035981B1 (en) Asynchronous input/output cache having reduced latency
JP2001222467A (ja) キャッシュ装置
JPH05158793A (ja) 並列キャッシュメモリ
JP2689920B2 (ja) 演算処理システムに用いられるプリフェッチバッファ装置
JP3378270B2 (ja) マルチプロセッサシステム
JP4856373B2 (ja) メモリ・システムとその制御方法、データ・コヒーレンシを保つ方法
JP2780555B2 (ja) キャッシュ・メモリ内蔵型マイクロプロセッサ
JPH04195563A (ja) メモリシステムの制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061013

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091029

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091222

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees