JPH11134257A - キャッシュメモリ制御装置 - Google Patents

キャッシュメモリ制御装置

Info

Publication number
JPH11134257A
JPH11134257A JP9316560A JP31656097A JPH11134257A JP H11134257 A JPH11134257 A JP H11134257A JP 9316560 A JP9316560 A JP 9316560A JP 31656097 A JP31656097 A JP 31656097A JP H11134257 A JPH11134257 A JP H11134257A
Authority
JP
Japan
Prior art keywords
cache
memory
data
main memory
cache memory
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.)
Pending
Application number
JP9316560A
Other languages
English (en)
Inventor
Masakazu Chiba
雅一 千葉
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP9316560A priority Critical patent/JPH11134257A/ja
Publication of JPH11134257A publication Critical patent/JPH11134257A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】キャッシュメモリ上で頻繁に使用されるサブル
ーチンプログラム・データ等、同一のインデックスで指
されるメインメモリのプログラム、データの処理を行う
場合に上書き又は書き戻されることを回避し、CPUの
余分な処理をなくしシステムバスのトラフィックの増大
を防ぎ性能向上を図る。 【解決手段】複数のキャッシュライン毎にメインメモリ
のデータを保持するキャッシュメモリと、各キャッシュ
ライン毎にキャシュメモリに保持されているデータのメ
インメモリにおけるアドレス情報を保持するタグメモリ
と、各キャッシュラインの有効/無効を示す有効ビット
と、各キャッシュライン毎に用意されロック状態の有無
を示すロックビットを備え、前記ロックビットの内容に
よって対応するキャッシュラインの内容が書き換えが制
御される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、キャッシュメモリ
制御装置に関する。
【0002】
【従来の技術】キャッシュメモリは、最近のマイクロプ
ロセッサにおいては、その内部に配設され、メインメモ
リとCPUの間でのCPUのメモリアクセス処理の高速
化のために用いられている。
【0003】すなわち、一般的に、メインメモリの内容
は、CPUに取り込まれて処理を行うが、メインメモリ
の読み書き処理速度が、CPUの処理速度に比べて低速
な場合、中間にキャッシュメモリを置き、予めメインメ
モリから読み込んだデータをキャッシュメモリ上に保持
し、CPUは、キャッシュメモリ上のデータを使用する
ように構成されている。
【0004】また、キャッシュメモリは、キャッシュラ
インを一つの単位として管理され、メインメモリからの
読み込みと書き換えは、キャッシュライン毎に行われ
る。さらにキャッシュメモリは、容量的に制限があるた
め、インデクスという概念で、メインメモリ上のアドレ
スに対応させている。
【0005】図3は、従来のキャッシュメモリ制御装置
の構成を示す図である。図3を参照すると、301はC
PU、302はアドレスバス、303はインデクス、3
04はタグメモリ、305は有効ビット、306はキャ
ッシュメモリである。タグメモリ304にはアドレスの
一部が格納され、アドレスのインデクスと一致するキャ
ッシュラインが選択される。
【0006】メインメモリ上では異なるアドレスであっ
ても、同一のインデクスに相当する場合、共通のキャッ
シュラインが用いられることになる。通常のソフトウェ
ア(プログラム命令)をCPUで処理する場合、キャッ
シュメモリ上では、この読み込みと書き換えを絶えず繰
り返えして処理を継続する。
【0007】ソフトウェアにおいて、サブルーチンのよ
うに、頻繁に使用されるプログラムであっても、同一の
インデクスに相当する他のプログラムが使用されると、
このキャッシュメモリ上のサブルーチンのプログラムは
削除され、新しいプログラムがキャッシュライン上に上
書きされることになる。
【0008】この場合、再びサブルーチンのプログラム
を使用したい場合、改めてメインメモリから該サブルー
チンプログラムを読み込む必要があるが、こうした無駄
とメインメモリとプロセッサ間のシステムバスのトラフ
ィックの増大を避けるためには、ソフトウェアを開発す
る段階から、キャッシュメモリの構成とメインメモリ上
のアドレスを意識して、プログラムを作成する必要があ
る。
【0009】また、別の方法としては、頻繁に使用され
るサブルーチン、初期化ルーチンなどは、予めROM
(読み出し専用メモリ)などに固定的に格納しておき、
書き換えが行われないようにしている。
【0010】データを扱う場合は、キャッシュライン上
のデータを新しいデータ、または同一インデクスで異な
るメインメモリアドレスの場合、書き換えが行われる
が、この場合、キャッシュライン上のデータはメインメ
モリに書き戻される。
【0011】
【発明が解決しようとする課題】上記したように、従来
のキャッシュメモリにおいては、キャッシュメモリ上で
頻繁に使用されるサブルーチンプログラム、または頻繁
に使用されるデータなどは、同一のインデクスで指され
るメインメモリのプログラム、またはデータの処理を行
う場合、上書き、または書き戻されてしまう。
【0012】上書きされてしまう場合、サブルーチンプ
ログラム、またはデータを再び使用しようとした際、新
たにメインメモリから読み込み直す必要がある。この場
合、CPUはメインメモリからのプログラム、またはデ
ータの読み込みのための処理を行うため、CPUに余分
な負荷がかかることになる。
【0013】また、書き戻しが発生した場合には、メイ
ンメモリとCPUとの間でデータの転送が発生するの
で、システムバスに対するトラフィックが生じ、システ
ム全体の性能が低下する。
【0014】したがって、本発明は、上記問題点に鑑み
てなされたものであって、その目的は、キャッシュメモ
リ上で頻繁に使用されるサブルーチンプログラム、また
はデータ等が、同一のインデックスで指されるメインメ
モリのプログラム、データの処理を行う場合に、上書き
又は書き戻される、ことを回避し、CPUの余分な処理
をなくしシステムバスのトラフィックの増大を防ぎ性能
向上を図るキャッシュメモリ制御装置を提供することに
ある。
【0015】
【課題を解決するための手段】前記目的を達成するため
本発明のキャッシュメモリ制御装置は、複数キャッシュ
ライン毎にメインメモリのデータを保持するキャッシュ
メモリと、前述のキャッシュメモリの各キャッシュライ
ンに保持されているデータのメインメモリにおけるアド
レスを保持するタグと、前述キャッシュメモリの各キャ
ッシュライン毎に用意されたロックビットと、ロックビ
ットの内容によって対応するキャッシュラインの内容を
書き換え可能か否かを制御する制御回路を有し、ロック
ビットによってキャッシュメモリ上の内容を管理する手
段を有している。
【0016】
【発明の実施の形態】本発明の実施の形態について以下
に説明する。本発明のキャッシュメモリ制御装置は、そ
の好ましい実施の形態において、複数のキャッシュライ
ン毎にメインメモリのデータを保持するキャッシュメモ
リ(図1の107)と、前記各キャッシュライン毎に前
記キャシュメモリに保持されているデータの前記メイン
メモリにおけるアドレス情報を保持するタグメモリ(図
1の104)と、前記各キャッシュラインの有効/無効
を示す有効ビット(図1の106)と、を備えたキャッ
シュメモリ制御装置において、各キャッシュライン毎に
用意されロック状態の有無を示すロックビット(図1の
105)をさらに備え、前記ロックビットの内容によっ
て対応するキャッシュラインの内容が書き換えが制御さ
れる。
【0017】本発明の実施の形態においては、前記キャ
ッシュラインに対応する前記ロックビットの内容がロッ
ク状態の場合、前記キャッシュラインにおけるプログラ
ムの上書き、またはデータの書き戻し、および読み込み
は行われない。
【0018】また本発明の実施の形態においては、プロ
セッサの命令の実行によって、前記キャッシュラインの
無効化及び前記ロックビットをロックしない状態に設定
が行われる。
【0019】
【実施例】本発明の実施例について図面を参照して以下
に説明する。
【0020】[実施例1]図1は、本発明の一実施例の
構成を示す図である。図1において、101はCPU、
102はアドレスバス、103はインデクス、104は
タグメモリ、105はロックビット、106は有効ビッ
ト、107はキャッシュメモリである。
【0021】図1を参照すると、本発明の一実施例にお
いて、まず始めに、プロセッサがキャッシュを用いる場
合は、CPU101が参照しようとするアドレスをキャ
ッシュに対してアドレスバス102を介して発行する。
【0022】次に、アドレスの一部を用いてインデクス
103を生成し、生成したインデクスでこれから使用す
るキャッシュラインを選択する。
【0023】キャッシュラインが選択されたら、そのキ
ャッシュラインの内容が有効か否かを示す有効ビット1
06をチェックする。
【0024】ここで有効ビット106の内容が「有効」
状態を示す場合、CPU101はこのキャッシュライン
上のデータを読み込む。また、「無効」状態であった場
合は、不図示のメインメモリからデータ、またはプログ
ラムを読み込んでくる必要があるので、不図示のシステ
ムバスを介して、データ、またはプログラムを読み込
む。つまり、キャッシュのリファイル処理が行われる。
以上がCPU101のデータ、またはプログラムの読み
込む際の処理である。
【0025】また、上記読み込み処理を行う場合は、タ
グメモリ104の内容もチェックする。キャッシュライ
ン毎に設けられたタグメモリ104は、アドレスの一部
をその内容とし、同一インデクスで共有されるキャッシ
ュラインを、全てのメモリ空間内で区別している。
【0026】次に有効ビット106の内容が「有効」状
態であって、タグメモリ104の内容が、参照しようと
するアドレスと異なる場合について考える。この場合、
内容がプログラムであれば新たにメインメモリからプロ
グラムを読み込んでキャッシュライン上に置く。データ
であった場合は、メインメモリに、その内容を書き戻し
てから、新たにメインメモリからデータを読み込んでキ
ャッシュライン上に置く。
【0027】しかし、その際に、ロックビット106の
内容が「ロック」状態の場合、プログラムの上書き、ま
たはデータの書き戻し、および読み込みは行わない。
【0028】[実施例2]次に図2を参照して、本発明
の第2の実施例をの処理フローを説明するための図であ
る。
【0029】本発明の第2の実施例においては、プロセ
ッサの命令の実行(CPUでの命令の実行)で、キャッ
シュラインの無効化とロックビットの無効化、すなわち
「ロックしない」状態にすることが出来る(ステップ2
01)。
【0030】まず、プロセッサは該当するインデクスが
示すキャッシュラインの有効ビットを検査する(ステッ
プ202)。
【0031】この場合、有効ビットが「無効」を示し、
キャッシュラインの内容が有効でなかった場合は、プロ
セッサは何も処理を行わない(ステップ203)。
【0032】有効ビットが「有効」であった場合、この
有効ビットを「無効」の状態に変更する(ステップ20
4)。そして、ロックビットの検査も行い(ステップ2
05)、「ロック」状態であった場合は、「ロックしな
い」状態に変更する(ステップ206)。
【0033】このようにすることで、キャッシュライン
が無効であるが、ロックされているという状態を避ける
ことが出来る。
【0034】
【発明の効果】以上説明したように、本発明によれば、
キャッシュメモリ上で頻繁に使用されるサブルーチンプ
ログラム、またはデータ等は、同一のインデクスで指さ
れるメインメモリのプログラム、またはデータの処理を
行う場合、上書きまたは書き戻されてしまうことを回避
することが出来る。
【0035】このため、本発明によれば、CPUはメイ
ンメモリからのプログラム、またはデータの読み込みの
ための処理を行うためCPUに無駄な負荷がかからな
い。また、書き戻しが発生しないため、メインメモリと
CPUとの間でデータの転送が発生しないので、システ
ムバスに対するトラフィックが生じることがなく、シス
テム全体の性能の低下を抑止する。
【図面の簡単な説明】
【図1】本発明の一実施例のキャッシュメモリ制御装置
の構成を示す図である。
【図2】本発明の第2の実施例におけるキャッシュライ
ンの無効化、及びロックの無効化の処理の流れを示す図
である。
【図3】従来のキャッシュメモリ制御装置の構成を示す
図である。
【符号の説明】
101,301 CPU 102,302 アドレスバス 103,303 インデクス 104,304 タグメモリ 105 ロックビット 106,305 有効ビット 107,306 キャッシュメモリ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】複数のキャッシュライン毎にメインメモリ
    のデータを保持するキャッシュメモリと、 前記各キャッシュライン毎に前記キャシュメモリに保持
    されているデータの前記メインメモリにおけるアドレス
    情報を保持するタグメモリと、 前記各キャッシュラインの有効/無効を示す有効ビット
    とを備えたキャッシュメモリ制御装置において、 前記各キャッシュライン毎に用意されロック状態の有無
    を示すロックビットをさらに備え、前記ロックビットの
    内容によって対応するキャッシュラインの内容の書き換
    えが制御される、ことを特徴とするキャッシュメモリ制
    御装置。
  2. 【請求項2】前記キャッシュラインに対応する前記ロッ
    クビットの内容がロック状態の場合、前記キャッシュラ
    インにおけるプログラムの上書き、データの書き戻し、
    および読み込みが行われないことを特徴とする請求項1
    記載のキャッシュメモリ制御装置。
  3. 【請求項3】プロセッサの命令の実行によって、前記キ
    ャッシュラインの無効化及び前記ロックビットをロック
    しない状態に設定が行われる、ことを特徴とする請求項
    1記載のキャッシュメモリ制御装置。
  4. 【請求項4】複数のキャッシュライン毎にメインメモリ
    のデータを保持するキャッシュメモリと、 前記キャッシュメモリの前記各キャッシュラインに保持
    されているデータの前記メインメモリにおけるアドレス
    を保持するタグと、 前記キャッシュメモリの前記各キャッシュライン毎に用
    意されたロックビットと、 前記ロックビットの内容によって対応するキャッシュラ
    インの内容が書き換え可能か否かを制御する制御回路
    と、 を有し、 前記ロックビットによって前記キャッシュメモリ上の内
    容を管理する、ことを特徴とするキャッシュメモリ制御
    装置。
JP9316560A 1997-10-31 1997-10-31 キャッシュメモリ制御装置 Pending JPH11134257A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9316560A JPH11134257A (ja) 1997-10-31 1997-10-31 キャッシュメモリ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9316560A JPH11134257A (ja) 1997-10-31 1997-10-31 キャッシュメモリ制御装置

Publications (1)

Publication Number Publication Date
JPH11134257A true JPH11134257A (ja) 1999-05-21

Family

ID=18078465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9316560A Pending JPH11134257A (ja) 1997-10-31 1997-10-31 キャッシュメモリ制御装置

Country Status (1)

Country Link
JP (1) JPH11134257A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472331B2 (en) 2004-07-16 2008-12-30 Samsung Electronics Co., Ltd. Memory systems including defective block management and related methods
US7958308B2 (en) 2006-02-24 2011-06-07 Fujitsu Limited Recording controller and recording control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472331B2 (en) 2004-07-16 2008-12-30 Samsung Electronics Co., Ltd. Memory systems including defective block management and related methods
US7958308B2 (en) 2006-02-24 2011-06-07 Fujitsu Limited Recording controller and recording control method

Similar Documents

Publication Publication Date Title
US9626303B2 (en) Data processing apparatus and address space protection method
JP4818793B2 (ja) マイクロコンピュータ及びメモリアクセスの制御方法
US20150002526A1 (en) Shared Virtual Memory Between A Host And Discrete Graphics Device In A Computing System
US20090077320A1 (en) Direct access of cache lock set data without backing memory
EP2062145A1 (en) Memory access security management
JP2007011580A (ja) 情報処理装置
US20030061452A1 (en) Processor and method of arithmetic processing thereof
US7096389B2 (en) System and method for dynamically moving checksums to different memory locations
KR101842764B1 (ko) 하드웨어 가속기와 호스트 시스템 사이의 데이터 일관성 유지 장치 및 방법
US4924379A (en) Multiprocessor system with several processors equipped with cache memories and with a common memory
JPH11134257A (ja) キャッシュメモリ制御装置
EP1031082B1 (en) Method and apparatus for controlling shared memory access
JPS5848289A (ja) バツフアメモリ制御方式
JP2659007B2 (ja) 情報処理方法及び装置
JP2746189B2 (ja) ファイルアクセス制御システム
JP3381080B2 (ja) 処理の中断が可能な排他制御方式
US20060041724A1 (en) Locked cache line sharing
JP2636760B2 (ja) マルチプロセッサシステム
JPH07191856A (ja) 情報処理装置
KR920002829B1 (ko) 메모리 액세스 제어 시스템
JPH10254782A (ja) データ処理装置
JP2002024088A (ja) データ処理装置
JPS5822834B2 (ja) バッフア・インバリッド制御方式
JPH0526216B2 (ja)
JPH0713865A (ja) キャッシュメモリ制御システム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010904