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

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

Info

Publication number
JPH0644246B2
JPH0644246B2 JP60066619A JP6661985A JPH0644246B2 JP H0644246 B2 JPH0644246 B2 JP H0644246B2 JP 60066619 A JP60066619 A JP 60066619A JP 6661985 A JP6661985 A JP 6661985A JP H0644246 B2 JPH0644246 B2 JP H0644246B2
Authority
JP
Japan
Prior art keywords
data
block
address
read
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.)
Expired - Lifetime
Application number
JP60066619A
Other languages
English (en)
Other versions
JPS61228540A (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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP60066619A priority Critical patent/JPH0644246B2/ja
Priority to US06/824,837 priority patent/US4835678A/en
Priority to DE8686101357T priority patent/DE3688400T2/de
Priority to EP86101357A priority patent/EP0189944B1/en
Publication of JPS61228540A publication Critical patent/JPS61228540A/ja
Publication of JPH0644246B2 publication Critical patent/JPH0644246B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔発明の属する技術分野〕 本発明は,データ処理装置に於けるキャッシュメモリ制
御方式,特にブロック転送中のデータを使用する制御方
式に関する。
〔従来技術〕
従来,キャッシュメモリを有するデータ処理装置におい
ては,ブロック転送が行なわれると,そのブロック転送
が終了する時点,すなわち該ブロック中の最後のデータ
がキャッシュメモリへ書き込み終了時点より,上記ブロ
ック中のデータを有効にするための制御が行なわれてい
た。
したがって,ブロック転送中のデータを後続のリード要
求により使用する場合,ブロック転送終了まで待つこと
になる。このことは,上記後続のリード要求はキャッシ
ュメモリ中にデータがあるにもかかわらず,実質的にア
クセスタイムが遅延してしまうことを意味する。すなわ
ち,ブロック転送を起動したリード要求のアクセスタイ
ムは,リード対象のデータを主記憶装置より読み出して
要求元へ返すまでの時間だけではなく,ブロック転送に
要する時間も加えなければならないという欠点を持って
いた。
又,ブロック転送を起動してからブロック転送の最初の
データが主記憶装置より返る前に,後続のリード要求を
受け付けて処理するキャッシュ制御方式に於いても,受
け付けたリード要求がブロック転送中のデータを使用し
なければこのリード要求は実行できるが、受け付けたリ
ード要求がブロック転送中のデータを使用する場合に、
リード対象であるデータがキャッシュメモリに書かれた
タイミングで該受け付けたリード要求を再開できるのに
もかかわらず、ブロック転送終了まで該受け付けたリー
ド要求の処理の実行を延ばさなければならないという欠
点を持っていた。
〔発明の目的〕
従って本発明の目的は、前述のようなブロック転送中の
データを使用するキャッシュメモリ制御方式に於いて、
現在ブロック転送中であるブロックに含まれているデー
タを、後続のリード要求がこのブロック転送終了まで待
つことなく、リード対象であるデータのキャッシュメモ
リに対する書き込み終了後に使用できる機能を実現する
ことに有る。さらに、この機能を最大限に利用するた
め、この後続のリード要求をリード対象であるデータを
キャッシュメモリへ書き込む前にキャッシュメモリが受
け付けた場合に、このリード要求の実行を保留しなが
ら、リード対象であるデータがキャッシュメモリに書か
れるを監視し、書き込まれた直後にこのリード要求を実
行可能とするタイミングでこのリード要求を再開させる
機能を実現することに有る。
[発明の構成] 本発明によるキャッシュメモリ制御方式は、連続したア
ドレスのN個のデータにより構成されるブロックデータ
単位で主記憶装置よりデータを取り込みブロック転送を
行なうキャッシュメモリを有するデータ処理装置に於い
て、前記ブロックデータを前記キャッシュメモリへの書
き込み単位毎にN/2のサブブロックに分けて構成し、
2個のキャッシュライトレジスタを含み、1回の書き込
みサイクルで2個のデータを同時に書き込むようにし
て、1つのブロック転送をN/2の書き込みサイクルよ
り構成することにより該書き込みサイクルがマシンサイ
クルを連続的に使用せずに1つのブロック転送中に空サ
イクルを作る手段と、前記N/2のサブブロックに対応
するN/2個のサブブロック用フリップフロップを含
み、1つの書き込みサイクルにより前記キャッシュメモ
リへのデータを書き込みが終了すると対応する前記サブ
ブロック用フリップフロップをセットして書き込み単位
毎にデータの使用可能を示す手段と、データ要求元に対
して後続のリード要求を受け付けられることを示すアベ
イル信号を有効にして受け付けリードアドレスレジスタ
に格納した前記データ要求元からのリード要求のアドレ
スが、ブロック転送中のアドレスと同一のブロックアド
レスに於いて一致した場合は一時処理の実行を延ばし、
前記アベイル信号を停止するとともに、上記の実行を延
ばされたリード要求のアドレスを退避用アドレスレジス
タに退避させ、前記サブブロック用フリップフロップの
セットにより、待っていたブロック転送のアドレスが移
送された移送用アドレスレジスタのブロックアドレスと
前記退避用アドレスレジスタのブロックアドレスとを比
較すると共に、読み出し対象のデータが前記キャッシュ
メモリへ書き込まれる時期を判断し、前記退避用アドレ
スレジスタに退避したアドレスをリードアドレスセレク
タを通じて前記リードアドレスレジスタに移送して処理
を再開させる処理再開手段とを含んでいる。
[実施例] 次に,本発明について実施例を挙げ,図面を参照して詳
細に説明する。
第1図は本発明による実施例の構成を示すブロック図で
ある。図において,BAR 1,ADR 2,SAR 3およびRAR
6はアドレスを格納するレジスタ,BDR 7,CWRE 4およ
びCWRO 5はデータを格納するレジスタである。データ要
求元よりリードアドレスパス18を通じて与えられたリ
ードアドレスはADR 2へ格納される。このアドレスは,
アドレスセレクタ12を通してアドレスアレイ及びデー
タアレイにより構成されるキャッシュメモリ部10をア
クセスし,キャッシュメモリにデータがあれば,データ
セレクタ13からリードデータパス19を介してリード
データをデータ要求元へ返す。リード要求されたデータ
がキャッシュメモリになければ,リードアドレスをADR
2よりRAR 6へ移送し,メモリアドレスパス14を介し
て主記憶装置に対しブロック転送を要求する。要求され
たブロックの転送は,メモリデータパス15上のデータ
をリプライ信号16のタイミングでRDR 7に格納するこ
とによって行なわれる。
第2図は,第1図の実施例におけるブロック転送動作を
説明するためのタイムチャートである。このタイムチャ
ートの例は,第3図に示すごとく,64バイトの1ブロ
ックデータが8バイトのデータパスを使用してブロック
転送される場合を示している。そして,タイムチャート
中の0〜7の数字は,第3図に於ける8バイトデータア
ドレス0〜7に対応している。又,A〜Eの文字はリー
ド要求に対応している。第2図を参照し,リード要求A
が8バイトデータアドレス0のデータを要求したとき,
キャッシュメモリにデータがなければ,ブロック転送が
起動されてリプライ信号16によりRDR 7には8マシン
サイクルの間連続的にデータが転送される。このRDR 7
の使用により,キャッシュメモリ部10へデータを書き
込むには,マシンサイクルを8回連続的に使用しなけれ
ばならない。しかし,キャッシュメモリ部10への書き
込みのためにCWRE4およびCWRO5を使用することにより,
例えば8バイトデータアドレス0のデータをCWRE4へ格
納し,次のタイミングで8バイトデータアドレス1のデ
ータをCWRO5に格納すれば,キャッシュライト信号20
を有効にすることによって書き込みサイクルを4回に短
縮し,1ブロック転送中に書き込みサイクルの空サイク
ルを作ること(第1の機能)が可能になる。
又,第3図に示すごとく,8バイトデータをキャッシュ
メモリへの書き込み単位毎にサブブロック0〜3として
定義すると,これ等サブブロックに対応してサブブロッ
クイネーブル・フリップフロッフ(F/F)8を構成するSBE
0〜SBE 3を設け,これによってサブブロックがキャ
ッシュメモリへの書き込み終了時に対応するサブブロッ
クイネーブルF/Fをセットする。このサブブロックイネ
ーブルF/Fによりブロック転送終了時,すなわち64バ
イトのブロック全てをキャッシュメモリへ書き込む前に
データの使用可能を示すこと(第2の機能)ができる。
又,第1図に於けるアベイル信号17は,データ要求元
に対して後続のリード要求を受け付けられることを示す
信号であるが,本発明の実施例はブロック転送が起動さ
れても後続のリード要求を受け付けるようになってお
り,キャッシュメモリにデータがあればキャッシュメモ
リよりデータを返し,キャッシュメモリにデータがなけ
れば次のブロック転送を起動するという処理を行なうこ
とによって,ブロック転送を起動してからブロック転送
の最初のデータが主記憶装置より返る前にアベイル信号
17を有効にして後続のリード要求を受け付けること
(第3の機能)ができる。
更に,上記のブロック転送を起動してからアベイル信号
17を有効にしてリード要求を受け付け,ADR 2に格納
されたリード要求のアドレスが,ブロック転送中のアド
レスであるRAR 6に格納されたアドレスとブロックアド
レスにおいて一致した場合,既にブロック転送を起動し
ているデータを読み出し対象としているため,一時処理
の実行を延ばしてそのブロック転送を待つことになる。
そして,アベイル信号17を無効にし,新しいリード要
求を受け付けないように制御するが,このタイミングで
は新しいリード要求が1つだけ受け付けられてADR 2に
格納されるため,上記の実行を延ばされたリード要求の
アドレスはSAR 3へ退避される。この退避されたリード
要求は,待っていたブロック転送のアドレスがBAR 1へ
移送されてキャッシュメモリへ主記憶装置からのデータ
を書き込むのに対応して,サブブロックイネーブルF/F
がセットされることにより,BAR 1のブロックアドレス
とSAR 3のブロックアドレスとを比較し,又,上記サブ
ブロックイネーブルF/Fにより読み出し対象のデータが
キャッシュメモリへ書き込まれる時期を判断する。すな
わち,SAR3に退避されたリード要求が対象とするデ
ータが含まれるサブブロックに対応するサブブロックイ
ネーブルF/Fがセットれることにより、このリード要
求が処理可能となる。実際は処理可能の1サイクル前
に、言い換えればサブブロックイネーブルF/Fをセッ
トする指示信号によりこのリード要求を指示し、SAR 3
に退避したアドレスをリードアドレスセレクタ11を通
じてADR 2へ移送することにより,処理を再開すること
(第4の機能)が可能になる。
第4図は,このような4つの機能を備えた第1図の実施
例において,リード要求A,B,Cを処理する動作を説
明するための図である。この図において,リード要求
A,B,Cはブロックアドレスが同一であり,64バイ
ト以下のアドレスが示されている。すなわち,リード要
求Aがキャッシュメモリにデータが無い時に起動させた
ブロック転送により,キャッシュメモリに書き込まれた
データをリード要求B,Cが読み出すことになる。再び
第2図のタイムチャートを参照し,リード要求Aによっ
てブロック転送が起動された後に,リード要求Bがこの
ブロック転送によりキャッシュメモリに書き込まれるデ
ータを対象とするため,アベイル信号17を無効にし,
その結果リード要求BがSAR 3へ,リード要求CがADR
2へ格納された状態でブロック転送が開始され,リード
要求B,Cが再開処理されていることが理解されよう。
すなわち,リード要求Bはサブブロック0のデータが有
効になればキャッシュメモリのライトサイクルの空サイ
クルを利用して処理できるから,サブブロックイネーブ
ルF/FであるSBE 0がセットされ,空サイクルのタイミ
ングT5でADR 2へアドレスを移送するためにタイミン
グT4に於いて再開タイミングが生じ,タイミングT5
で処理されてデータをデータ要求元へ返すことができ
る。又,このタイミングT5でSAR 3に格納されたリー
ド要求Cは,サブブロック2のデータが有効になるT9
まで処理が延ばされ,タイミングT8で再開タイミング
が生じ,タイミングT9で処理されてデータをデータ要
求元へ返すことができる。以後,アベイル信号17は,
ADR 2およびSAR 3に未処理のリード要求がない場合,
キャッシュメモリのライトサイクルの空サイクルに合わ
せてタイミングT10に有効となり,タイミングT11
から後続のリード要求を受け付けることができる。
なお,上記第2図の参照において述べたような4つの機
能がないとすれば,リード要求Aにより起動されたブロ
ック転送の対象となるデータを後続するリード要求Bが
読み出す場合,ブロック転送の終了時点,すなわち第2
図のタイムチャートにおける1ブロック中の全てのデー
タがキャッシュメモリへ書き込み終了時点であるタイミ
ングT11まで処理が待たされることになる。
〔発明の効果〕
以上の説明により明らかなように,本発明によれば,ブ
ロック転送の対象となるデータをリード対象とする後続
のリード要求をブロック転送の終了時点まで待たせるこ
となく,キャッシュメモリに対してリード対象となるデ
ータを、その書き込み終了後ブロック転送終了以前でも
使用可能とすることができる点において,処理効率を向
上すべく得られる効果は大きい。
【図面の簡単な説明】
第1図は本発明による実施例の構成を示すブロック図,
第2図は,第1図の実施例におけるブロック転送の動作
を説明するためのタイムチャート,第3図は,第2図に
適用されるブロック転送対象の1ブロックを示す構成
例,第4図は,第2図のタイムチャートにおいて,ADR
2に格納されるリード要求のアドレスを示す構成例であ
る。 図において,1〜3,6はアドレスレジスタ,4,5,
7はデータレジスタ,8はサブブロックイネーブルF/
F,9は制御部,10はキャッシュメモリ部,11はリ
ードアドレスセレクタ,12はアドレスセレクタ,13
はデータセレクタである。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】連続したアドレスのN個のデータにより構
    成されるブロックデータ単位で主記憶装置よりデータを
    取り込みブロック転送を行なうキャッシュメモリを有す
    るデータ処理装置に於いて、 前記ブロックデータを前記キャッシュメモリへの書き込
    み単位毎にN/2のサブブロックに分けて構成し、 2個のキャッシュライトレジスタを含み、1回の書き込
    みサイクルで2個のデータを同時に書き込むようにし
    て、1つのブロック転送をN/2の書き込みサイクルよ
    り構成することにより該書き込みサイクルがマシンサイ
    クルを連続的に使用せずに1つのブロック転送中に空サ
    イクルを作る手段と、 前記N/2のサブブロックに対応するN/2個のサブブ
    ロック用フリップフロップを含み、1つの書き込みサイ
    クルにより前記キャッシュメモリへのデータを書き込み
    が終了すると対応する前記サブブロック用フリップフロ
    ップをセットして書き込み単位毎にデータの使用可能を
    示す手段と、 データ要求元に対して後続のリード要求を受け付けられ
    ることを示すアベイル信号を有効にして受け付けリード
    アドレスレジスタに格納した前記データ要求元からのリ
    ード要求のアドレスが、ブロック転送中のアドレスと同
    一のブロックアドレスに於いて一致した場合は一時処理
    の実行を延ばし、前記アベイル信号を停止するととも
    に、上記の実行を延ばされたリード要求のアドレスを退
    避用アドレスレジスタに退避させ、前記サブブロック用
    フリップフロップのセットにより、待っていたブロック
    転送のアドレスが移送された移送用アドレスレジスタの
    ブロックアドレスと前記退避用アドレスレジスタのブロ
    ックアドレスとを比較すると共に、読み出し対象のデー
    タが前記キャッシュメモリへ書き込まれる時期を判断
    し、前記退避用アドレスレジスタに退避したアドレスを
    リードアドレスセレクタを通じて前記リードアドレスレ
    ジスタに移送して処理を再開させる処理再開手段とを含
    むことを特徴とするキャッシュメモリ制御方式。
JP60066619A 1985-02-01 1985-04-01 キヤツシユメモリ制御方式 Expired - Lifetime JPH0644246B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP60066619A JPH0644246B2 (ja) 1985-04-01 1985-04-01 キヤツシユメモリ制御方式
US06/824,837 US4835678A (en) 1985-02-01 1986-02-03 Cache memory circuit for processing a read request during transfer of a data block
DE8686101357T DE3688400T2 (de) 1985-02-01 1986-02-03 Cachespeicherschaltung geeignet zur verarbeitung einer leseanforderung waehrend der uebertragung eines datenblocks.
EP86101357A EP0189944B1 (en) 1985-02-01 1986-02-03 Cache memory circuit capable of processing a read request during transfer of a data block

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60066619A JPH0644246B2 (ja) 1985-04-01 1985-04-01 キヤツシユメモリ制御方式

Publications (2)

Publication Number Publication Date
JPS61228540A JPS61228540A (ja) 1986-10-11
JPH0644246B2 true JPH0644246B2 (ja) 1994-06-08

Family

ID=13321083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60066619A Expired - Lifetime JPH0644246B2 (ja) 1985-02-01 1985-04-01 キヤツシユメモリ制御方式

Country Status (1)

Country Link
JP (1) JPH0644246B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6429953A (en) * 1987-07-25 1989-01-31 Fujitsu Ltd Controller for buffer move-in of buffer storage system
JPH03225541A (ja) * 1990-01-31 1991-10-04 Agency Of Ind Science & Technol キャッシュメモリ装置
JPH07105128A (ja) * 1993-10-07 1995-04-21 Mitsubishi Electric Corp データ転送装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57167188A (en) * 1981-04-06 1982-10-14 Nippon Telegr & Teleph Corp <Ntt> Buffer memory controlling system
JPS5996584A (ja) * 1982-11-24 1984-06-04 Nec Corp 情報処理装置

Also Published As

Publication number Publication date
JPS61228540A (ja) 1986-10-11

Similar Documents

Publication Publication Date Title
US5251310A (en) Method and apparatus for exchanging blocks of information between a cache memory and a main memory
JPH01269142A (ja) 計算機システム
JPH0532775B2 (ja)
JPH0644246B2 (ja) キヤツシユメモリ制御方式
US5012410A (en) Data processor with instruction cache memory
JPH0353657B2 (ja)
JPH0752410B2 (ja) キャッシュメモリ制御方式
JP3039391B2 (ja) メモリシステム
JP3221409B2 (ja) キャッシュ制御システム及びその読出し方法並びにその制御プログラムを記録した記録媒体
CA1305557C (en) Control signal generation circuit for arithmetic and logic unit for digital processor
JPS6410858B2 (ja)
JPH02259945A (ja) ストア処理方式
JP3078293B2 (ja) 記憶制御装置
JP2001229074A (ja) メモリ制御装置と情報処理装置及びメモリ制御チップ
JPH0461384B2 (ja)
JP2815850B2 (ja) データ処理ユニット
JPS63187349A (ja) 記憶装置
JP2531209B2 (ja) チャネル装置
JPH06231032A (ja) アクセス制御装置
JPS6055454A (ja) デ−タ転送制御方式
JPS6054057A (ja) キャッシュメモリ制御装置
JP2001202286A (ja) キャッシュメモリのフラッシュ制御回路及びその制御方法
JPH0769861B2 (ja) キヤツシユメモリ制御装置に於けるバイパスバツフアの制御方式
JPH01129334A (ja) キャッシュメモリのデータ制御方式
JPH0664552B2 (ja) 情報処理装置の無効化処理方式

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term