JPH0528042A - キヤツシユメモリ制御方式 - Google Patents

キヤツシユメモリ制御方式

Info

Publication number
JPH0528042A
JPH0528042A JP3207572A JP20757291A JPH0528042A JP H0528042 A JPH0528042 A JP H0528042A JP 3207572 A JP3207572 A JP 3207572A JP 20757291 A JP20757291 A JP 20757291A JP H0528042 A JPH0528042 A JP H0528042A
Authority
JP
Japan
Prior art keywords
processor
data
cache
main storage
storage device
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
JP3207572A
Other languages
English (en)
Inventor
Akira Maeda
章 前田
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP3207572A priority Critical patent/JPH0528042A/ja
Publication of JPH0528042A publication Critical patent/JPH0528042A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 直接アクセス制御を併用した場合の信頼性を
向上させる。 【構成】 直接アクセス制御により入出力装置6から主
記憶装置2へのデータ転送が行なわれると、キャッシュ
制御部3により当該データがキャッシュメモリ4上に転
記されているか否かが判断される。転記されている場合
には、キャッシュ制御部3が当該転記されたデータを無
効とする。この処理と並行して、プロセッサ1から主記
憶装置2に対するライト動作が行なわれると、当該主記
憶装置2からプロセッサ1側に送られる応答信号(1)
13がキャッシュ制御部3により保持される。そして、
キャッシュ制御部3が主記憶装置2上からキャッシュメ
モリ4上へのデータの転記の判断及び無効化の処理中で
あるときは当該処理が終了した後に、応答信号(2)1
4をプロセッサ1に送出する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ライト動作の信頼性の
向上を図ったキャッシュメモリ制御方式に関するもので
ある。
【0002】
【従来の技術】図2は、従来のキャッシュメモリ制御方
式の一例を示す図である。図示のシステムには、プロセ
ッサ21と、主記憶装置22と、キャッシュ制御部23
と、キャッシュメモリ24と、DMA25と、入出力装
置26等が設けられている。プロセッサ21は、主記憶
装置22のデータの一部をキャッシュメモリ24に読み
出し、当該キャッシュメモリ24から逐次命令及びデー
タを取り出して実行する。主記憶装置22は、2ポート
メモリから成り、ローカルバス51と、システムバス5
3との双方からアクセス可能である。
【0003】キャッシュメモリ24は、高速のRAM
(ランダム・アクセス・メモリ)から成る。キャッシュ
制御部23は、キャッシュメモリ24へのリード/ライ
トを制御する。このキャッシュ制御部23は、ライトス
ルー方式のものである。ライトスルー方式は、プロセッ
サ21によるライト動作時にキャッシュメモリ24上の
データの更新とともに、これに対応する主記憶装置22
上のデータを更新する方式である。尚、プロセッサ21
がリード又はライトするデータがキャッシュメモリ24
上に存在することをキャッシュヒットという。一方、プ
ロセッサ21がリード又はライトするデータがキャッシ
ュメモリ24上に存在しないことをキャッシュミスとい
う。
【0004】ローカルバス51は、プロセッサ21を、
キャッシュ制御部23と、主記憶装置22とに接続す
る。即ち、このローカルバス51を介して、プロセッサ
21からキャッシュメモリ24又は主記憶装置22への
リード/ライトが行なわれるとともに、キャッシュ制御
部23と、主記憶装置22との間のデータ転送が行なわ
れる。システムバス53には、DMA25と、入出力装
置26とが接続されている。DMA25によって主記憶
装置22へアクセスでき、これにより、主記憶装置22
と入出力装置26との間でデータ転送が行なわれる。応
答信号52は、主記憶装置22がメモリサイクル終了時
に送出する信号である。この応答信号52により、プロ
セッサ21はアクセスが完了したと判断し、次の処理に
進む。
【0005】図3は、キャッシュヒット時のプロセッサ
のライト動作を説明するタイムチャートである。プロセ
ッサ21のライト動作((a)時点t1)に対して主記憶装置
22は、応答信号52を送出する((b)時点t2)。この応
答信号52により、プロセッサ21はライトサイクルを
終了する((a)時点t4)。キャッシュ制御部23では、キ
ャッシュヒットの場合は、プロセッサ21のライトサイ
クル中に主記憶装置22へのライトデータと同一のデー
タをキャッシュメモリ24にライトする((c)時点t3)。
キャッシュミスの場合は、主記憶装置22のみにデータ
をライトし、キャッシュメモリ24に対しては、ライト
動作を行なわない。
【0006】図4は、主記憶装置へのアクセス動作を説
明するタイムチャートである。このタイムチャートは、
入出力装置26のDMA25により、システムバス53
から主記憶装置22をアクセスする動作を示す。即ち、
入出力装置26のDMA転送に対して((a)時点t1)、主
記憶装置22は、リード又はライト動作を行なう((b)時
点t2)。ライト動作時には、キャッシュ制御部23で
は、キャッシュメモリ24上のデータを無効とするイン
バリッド処理を行なう((c)時点t3)。インバリッド処理
とは、DMA転送で主記憶装置にライトした場合、その
書き換えられたデータがキャッシュメモリ24上に存在
するかどうかチェックして、存在すれば、そのデータを
無効(インバリッド)とする処理である。
【0007】
【発明が解決しようとする課題】しかしながら、上述し
た従来の技術には、次のような問題があった。即ち、入
出力装置26のDMA25によるメモリサイクルでキャ
ッシュメモリ24のインバリッド処理中にプロセッサ2
1の主記憶装置22に対するライト動作が発生した場
合、キャッシュメモリ24のヒット判定に時間のかかる
システムでは、キャッシュメモリに正しいデータがライ
トできないという問題があった。
【0008】図5は、従来の方式による不良動作の一例
を示すタイムチャートである。まず、入出力装置26の
DMA転送によりシステムバス53から主記憶装置22
へライト動作を要求したとする((a)時点t1)。すると、
主記憶装置22は、DMAライトサイクルを開始する
((c)時点t2)。そして、これに応じて、キャッシュ制御
部23では、前述したインバリッド処理を開始する((e)
時点t3)。このようなDMAライトサイクル中にプロセ
ッサ21がライト動作を始めたとする((b)時点t4)。す
ると、プロセッサ21は、このDMAライトサイクルが
終了するまで待たされる((c)時点t5)。
【0009】主記憶装置22では、DMAライトサイク
ルの終了後、プロセッサ21のライトサイクルを開始す
る((c)時点t6)。キャッシュ制御部23においても、イ
ンバリッド処理後、プロセッサ21によるライト動作に
おけるキャッシュヒットを判定してキャッシュヒットと
なった後、ライト動作を開始する。そして、プロセッサ
21のライトサイクルに対する主記憶装置22の処理が
キャッシュ制御部23のキャッシュヒット判定処理より
早い場合、当該キャッシュヒット判定処理後のプロセッ
サ21のライトより前に主記憶装置22から応答信号5
2が出力される((d)時点t7)。
【0010】この応答信号52の受信により、プロセッ
サ21のライトサイクルは終了する((c)時点t8)。とこ
ろが、このとき、キャッシュ制御部23によるキャッシ
ュヒット判定処理後のキャッシュメモリライトが行なわ
れると((e)時点t9)、CPUライトサイクルが終了して
いるため((c)時点t8)、ライトデータが不確定となって
おり、キャッシュメモリ4に誤ったデータがライトされ
ることになる。以上のような状況を想定すると、キャッ
シュメモリ24上のデータが破壊される可能性があると
いう問題があった。本発明は、以上の点に着目してなさ
れたもので、プロセッサと、入出力装置のDMA転送に
よる主記憶装置へのライトが競合した場合のキャッシュ
メモリ上のデータの破壊を防止するようにしたキャッシ
ュメモリ制御方式を提供することを目的とするものであ
る。
【0011】
【課題を解決するための手段】本発明のキャッシュメモ
リ制御方式は、データ処理及び処理したデータの転送を
行なうプロセッサと、当該プロセッサに接続され、デー
タを一時的に格納する主記憶装置と、当該主記憶装置に
格納されたデータの一部を転記するキャッシュメモリ
と、当該主記憶装置に直接アクセス制御方式で接続され
た入出力装置と、前記キャッシュメモリと前記主記憶装
置との間のデータ転送を制御する一方、前記直接アクセ
ス制御による前記入出力装置から前記主記憶装置へのデ
ータ転送時に当該データがキャッシュメモリ上に転記さ
れている場合に当該転記されたデータを無効とするイン
バリッド処理を行なうとともに、前記プロセッサの前記
主記憶装置に対するライト動作時に当該主記憶装置から
プロセッサに送られる応答信号を保持し、前記インバリ
ッド処理中であるときは当該インバリッド処理が終了し
た後に、当該応答信号を前記プロセッサに送出するキャ
ッシュ制御部とから成ることを特徴とするものである。
【0012】
【作用】本発明のキャッシュメモリ制御方式において
は、直接アクセス制御により入出力装置から主記憶装置
へのデータ転送が行なわれると、キャッシュ制御部によ
り当該データがキャッシュメモリ上に転記されているか
否かが判断される。転記されている場合には、キャッシ
ュ制御部が当該転記されたデータを無効とする。この処
理と並行して、プロセッサから主記憶装置に対するライ
ト動作が行なわれると、当該主記憶装置からプロセッサ
に送られる応答信号がキャッシュ制御部により保持され
る。そして、キャッシュ制御部が主記憶装置上からキャ
ッシュメモリ上へのデータの転記の判断及び無効化の処
理中であるときは当該処理が終了した後に、応答信号を
プロセッサに送出する。即ち、主記憶装置上でライトが
終了しても、キャッシュ制御部が処理中のときは、応答
信号がプロセッサに出力されず、プロセッサの出力する
データは保持されている。従って、キャッシュメモリへ
正常なデータがライトされる。
【0013】
【実施例】以下、本発明の実施例を図面を参照して詳細
に説明する。図1は、本発明のキャッシュメモリ制御方
式の実施例のブロック図である。図示のシステムは、プ
ロセッサ1と、主記憶装置2と、キャッシュ制御部3
と、キャッシュメモリ4と、DMA5と、入出力装置6
等から成る。プロセッサ1は、データ処理及び処理した
データの転送を行なう。主記憶装置2は、プロセッサ1
に接続され、入出力装置6内のデータを一時的に格納す
る。キャッシュ制御部3は、キャッシュメモリ4と主記
憶装置2との間のデータ転送を制御する。一方、キャッ
シュ制御部3は、直接アクセス制御による入出力装置6
から主記憶装置2へのデータ転送時に当該データがキャ
ッシュメモリ4上に転記されている場合に当該転記され
たデータを無効とするインバリッド処理を行なう。
【0014】また、キャッシュ制御部3は、プロセッサ
1の主記憶装置2に対するライト動作時にラッチ回路3
1により当該主記憶装置2からプロセッサ1に送られる
応答信号(1)13を保持する。そして、キャッシュ制
御部3は、インバリッド処理中であるときは当該インバ
リッド処理が終了した後に、応答信号(2)14をプロ
セッサ1に送出する。DMA5は、データ転送専用の処
理装置であり、プロセッサ1と比較して簡易なものであ
る。
【0015】入出力装置6は、主記憶装置2に直接アク
セス制御方式で接続されている。即ち、入出力装置6
は、DMA5によってプロセッサ1とは独立に主記憶装
置2との間のデータ転送を行なう。ローカルバス11
は、プロセッサ1、主記憶装置2、キャッシュ制御部3
及びキャッシュメモリ4の相互を接続する。システムバ
ス12は、主記憶装置2、DMA5及び入出力装置6の
相互を接続する。
【0016】応答信号(1)13は、プロセッサ1から
主記憶装置2へのアクセスに対して当該主記憶装置2か
らキャッシュ制御部3に送出される。応答信号(2)1
4は、キャッシュ制御部3が応答信号(1)13を受取
り、所定の条件が成立したとき、信号生成回路33によ
りプロセッサ1に送出される。
【0017】図6は、本発明に係るキャッシュ制御部の
詳細を示すブロック図である。図示のように、キャッシ
ュ制御部は、ラッチ回路31と、キャッシュヒット判定
回路32と、信号生成回路33とから成る。ラッチ回路
31は、フリップフロップ等から成り、応答信号(1)
13及びリセット信号47を入力し、ラッチ信号41を
出力する。キャッシュヒット判定回路32は、プロセッ
サ(CPU)1が要求するデータがキャッシュメモリ4
上に存在するか否かを判定する回路である。即ち、この
キャッシュヒット判定回路32は、CPUアドレス43
及びキャッシュメモリアドレス44を入力し、比較回路
によって両アドレスを比較し、両アドレスが一致した場
合にヒット信号45を出力する。
【0018】信号生成回路33は、所定の条件が成立し
たとき、応答信号(2)14を生成する回路である。即
ち、この信号生成回路33は、ラッチ信号41、CPU
リード/ライト信号42、ヒット信号45及びインバリ
ッド処理信号48を入力し、ラッチ信号41が有効、C
PUリード/ライト信号42がライト、ヒット信号45
が有効且つインバリッド処理信号48が無効のとき、応
答信号(2)14、キャッシュメモリライト信号46及
びリセット信号47を出力する。
【0019】次に、図6を参照して、プロセッサ1が主
記憶装置2へライトしてキャッシュヒットしたときの動
作順序を説明する。まず、図1に示すプロセッサ1は、
CPUアドレス43を送出するとともに、リード/ライ
ト信号42をライトとする。すると、キャッシュヒット
判定回路32において、CPUアドレス43と、キャッ
シュメモリアドレス44とを比較して両者が一致すれば
ヒットと判定してヒット信号45を有効とする。
【0020】信号生成回路33は、ラッチ信号41が有
効であり、CPUリード/ライト信号42がライトを示
し、且つ、インバリッド処理信号48が無効なときで、
なお且つヒット信号45が有効なとき、キャッシュメモ
リライト信号46を有効とするとともに、応答信号
(2)14を有効とする。応答信号(2)14が有効と
なった結果、プロセッサ1はライトサイクルを終了す
る。そのとき、キャッシュメモリライトサイクルも終了
し、リセット信号47を有効としてラッチ回路31をリ
セットする。
【0021】図7は、本発明の方式による動作を説明す
るタイムチャートである。まず、入出力装置6のDMA
転送によりシステムバス12から主記憶装置2へライト
動作を要求したとする((a)時点t1)。すると、主記憶装
置2は、DMAライトサイクルを開始する((c)時点t
2)。そして、これに応じて、キャッシュ制御部3で
は、インバリッド処理を開始する((f)時点t3)。このよ
うなDMAライトサイクル中にプロセッサ1がライト動
作を始めたとする((b)時点t4)。すると、プロセッサ1
は、このDMAライトサイクルが終了するまで待たされ
る((c)時点t5)。
【0022】主記憶装置2では、DMAライトサイクル
の終了後、プロセッサ1のライトサイクルを開始する
((c)時点t6)。キャッシュ制御部3においても、インバ
リッド処理後、プロセッサ1によるライト動作における
キャッシュヒットを判定してキャッシュヒットとなった
後、ライト動作を開始する((f)時点t10)。そして、プロ
セッサ1のライトサイクルに対する主記憶装置2の処理
がキャッシュ制御部3のキャッシュヒット判定処理より
早い場合、当該キャッシュヒット判定処理後のプロセッ
サ1のライトより前に応答信号(1)13が出力される
((d)時点t7)。
【0023】この応答信号(1)13は、キャッシュ制
御部3により受信される。キャッシュ制御部3は、イン
バリッド処理の終了後((f)時点t8)、応答信号(2)1
4をプロセッサ1に出力する((e)時点t9)。応答信号
(2)14の受信により、プロセッサ1のライトサイク
ルは終了する((c)時点t11)。従って、このとき、キャッ
シュ制御部3によるキャッシュヒット判定処理後のキャ
ッシュメモリライトが行なわれても、CPUライトサイ
クルが継続しているため((c)時点t6〜t11)、ローカルバ
ス11上のライトデータが保持されており、キャッシュ
メモリ4に正しいデータがライトされる。
【0024】
【発明の効果】以上説明したように、本発明のキャッシ
ュメモリ制御方式によれば、プロセッサのライトに対
し、主記憶装置より送出する応答信号をキャッシュ制御
に取り込み、ラッチし、キャッシュメモリへライト可能
となったとき、プロセッサへ応答信号を送出するように
したので、インバリッド処理やキャッシュヒットミスヒ
ットの判定に時間を要するようなシステムにおいてプロ
セッサのメモリアクセスと入出力装置のDMAによるメ
モリアクセスが複雑に競合してもキャッシュメモリに正
確なデータをライトできる。
【図面の簡単な説明】
【図1】本発明のキャッシュメモリ制御方式の実施例の
ブロック図である。
【図2】従来のキャッシュメモリ制御方式の一例を示す
図である。
【図3】キャッシュヒット時のプロセッサのライト動作
を説明するフローチャートである。
【図4】主記憶装置へのアクセス動作を説明するタイム
チャートである。
【図5】従来の方式による不良動作の一例を示すタイム
チャートである。
【図6】本発明に係るキャッシュ制御部の詳細を示すブ
ロック図である。
【図7】本発明の方式による動作を説明するフローチャ
ートである。
【符号の説明】 1 プロセッサ 2 主記憶装置 3 キャッシュ制御部 4 キャッシュメモリ 5 DMA 6 入出力装置 11 ローカルバス 12 システムバス 13、14 応答信号

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 データ処理及び処理したデータの転送を
    行なうプロセッサと、 当該プロセッサに接続され、データを一時的に格納する
    主記憶装置と、 当該主記憶装置に格納されたデータの一部を転記するキ
    ャッシュメモリと、 当該主記憶装置に直接アクセス制御方式で接続された入
    出力装置と、 前記キャッシュメモリと前記主記憶装置との間のデータ
    転送を制御する一方、前記直接アクセス制御による前記
    入出力装置から前記主記憶装置へのデータ転送時に当該
    データがキャッシュメモリ上に転記されている場合に当
    該転記されたデータを無効とするインバリッド処理を行
    なうとともに、 前記プロセッサの前記主記憶装置に対するライト動作時
    に当該主記憶装置からプロセッサに送られる応答信号を
    保持し、前記インバリッド処理中であるときは当該イン
    バリッド処理が終了した後に、当該応答信号を前記プロ
    セッサに送出するキャッシュ制御部とから成ることを特
    徴とするキャッシュメモリ制御方式。
JP3207572A 1991-07-24 1991-07-24 キヤツシユメモリ制御方式 Pending JPH0528042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3207572A JPH0528042A (ja) 1991-07-24 1991-07-24 キヤツシユメモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3207572A JPH0528042A (ja) 1991-07-24 1991-07-24 キヤツシユメモリ制御方式

Publications (1)

Publication Number Publication Date
JPH0528042A true JPH0528042A (ja) 1993-02-05

Family

ID=16541976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3207572A Pending JPH0528042A (ja) 1991-07-24 1991-07-24 キヤツシユメモリ制御方式

Country Status (1)

Country Link
JP (1) JPH0528042A (ja)

Similar Documents

Publication Publication Date Title
EP0118828A2 (en) Instruction fetch apparatus and method of operating same
CA1323446C (en) Write-read/write-pass memory subsystem cycle
US5353429A (en) Cache memory systems that accesses main memory without wait states during cache misses, using a state machine and address latch in the memory controller
JPH03225542A (ja) データ記憶方法及びビットエンコードデータの処理回路
JPH05334170A (ja) デュアルポートメモリ用制御回路
EP0173909B1 (en) Look-aside buffer least recently used marker controller
JPH0528042A (ja) キヤツシユメモリ制御方式
JP4037806B2 (ja) キャッシュメモリ装置
JPH07234819A (ja) キャッシュメモリ
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JP3055908B2 (ja) キャッシュメモリ制御装置
CN100410898C (zh) 与填写中的快取线平行使用的可存取缓冲区及其控制方法
JPH06324943A (ja) 主記憶制御方法
JPH0644261B2 (ja) マルチプロセッサシステムにおけるキャッシュ制御方式
JP2805786B2 (ja) 情報処理装置
JP3437224B2 (ja) 遅延無効化方式
JPH08190508A (ja) キャッシュ・メモリ制御回路
JPH06266618A (ja) エラー訂正・検出機能付きの主記憶コントローラを備えた情報処理装置
JPS6141023B2 (ja)
JP2864548B2 (ja) 命令キャッシュ装置
JP2000090007A (ja) キャッシュ制御システム及びその読出し方法並びにその制御プログラムを記録した記録媒体
EP0460852A2 (en) System for maintaining data coherency between main and cache memories
JPH05151104A (ja) データ処理装置
JPH05127988A (ja) メモリ制御方法
JPH113288A (ja) キャッシュメモリ装置およびキャッシュメモリの障害制御方法