JPH0415495B2 - - Google Patents

Info

Publication number
JPH0415495B2
JPH0415495B2 JP60137680A JP13768085A JPH0415495B2 JP H0415495 B2 JPH0415495 B2 JP H0415495B2 JP 60137680 A JP60137680 A JP 60137680A JP 13768085 A JP13768085 A JP 13768085A JP H0415495 B2 JPH0415495 B2 JP H0415495B2
Authority
JP
Japan
Prior art keywords
data
memory
cache
address
access
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
JP60137680A
Other languages
English (en)
Other versions
JPS61296450A (ja
Inventor
Masayuki Tanji
Yoshihiro Myazaki
Soichi Takatani
Mamoru Sueoka
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60137680A priority Critical patent/JPS61296450A/ja
Publication of JPS61296450A publication Critical patent/JPS61296450A/ja
Publication of JPH0415495B2 publication Critical patent/JPH0415495B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、DMA転送が行われる場合であつて
も、スループツトが低下されないキヤツシユメモ
リ制御方法に関するものである。
〔発明の背景〕
論理アドレスを物理アドレスに変換したのちに
キヤツシユメモリにアクセスする方式の計算機で
は、処理装置、DMA機器各々がキヤツシユメモ
リをアクセスする際での制御方法は同一であるの
が普通となつている。したがつて、比較的多量の
DMA転送を行つた場合、セツトアソシアテイブ
方式でセツト数が多く、しかもキヤツシユメモリ
の容量そのものが大きい大形の計算機では、4〜
16kバイトのDMA転送によつてキヤツシユメモ
リにはDMA転送以前のデータが存在しているこ
とから、スループツトに対して大きな影響は生じ
ないようになつている。しかしながら、小形の計
算機ではキヤツシユメモリの容量が小さいため、
DMA転送以前のデータの多くは放逐されてしま
い、DMA転送以後のキヤツシユヒツト率が低下
する結果、スループツトが減少することになると
いうものである。
一方、処理装置からのアクセスについてはこれ
までに特開昭58−199483号公報に開示されたもの
が知られている。命令にプリフイクスを設け、キ
ヤツシユメモリ中のデータを追い出したくない場
合はそのプリフイクスで指定するようにしたもの
である。しかしながら、これによる場合は、全く
キヤツシユメモリはアクセスされることはなく主
メモリに対してのみアクセスが行われるだけであ
るから、先読みの効果が生まれないことになる。
このようにその得失は別にして処理装置からの
アクセスについては考慮されているが、DAM機
器と主メモリとの間でDMA転送が行われた後で
のスループツト低下についてはこれまで何等考慮
されていないのが現状である。
〔発明の目的〕
本発明の目的は、DMA転送が行われた後でも
スループツトが低下されないキヤツシユメモリ制
御方法を提供するにある。
〔発明の概要〕
この目的のため本発明は、セツトアソシアテイ
ブ方式のキヤツシユメモリ制御方法が採られる場
合に、DMA転送が行われる場合には、キヤツシ
ユミス時にデータを置換するメモリブロツクを選
択するためのフラグを変更しないようにしたもの
である。
セツトアソシアテイブ方式ではアドレスの特定
の一部が等しいデータは複数個キヤツシユメモリ
内に存在し、これら複数の格納場所に対してはア
ドレスの特定の一部が等しいデータは順次別の格
納場所に分散して格納されていくが、DMA転送
が行われる場合には、アドレスの特定の一部が等
しいときは格納場所を局所化しようというもので
ある。このようにすれば、DMA転送によるキヤ
ツシユメモリ内でのデータの書換は一部分に止ま
り、しかもキヤツシユの動作を行うためにデータ
の先読みの効果を生じ、二重の意味でスループツ
トの低下は抑止されるものである。
〔発明の実施例〕
以下、本発明を第1図から第7図により説明す
る。
先ず本発明に係る処理システムとその一部を構
成するメモリ制御装置、更にはそのメモリ制御装
置の一部を構成するキヤツシユメモリの構成につ
いて説明する。
第2図はその処理システムの一例での概要を示
したものである。図示の如く本例では基本処理装
置1000およびDMA機器の例としてのフアイ
ル制御装置5000はともにメモリ制御装置20
00を介し主メモリ3000,4000にアクセ
ス可となつている。フアイル制御装置5000に
収容されているデイスク装置6000はフアイル
を実体として実現するためのものである。メモリ
制御装置2000と基本処理装置1000、主メ
モリ3000,4000、フアイル制御装置50
00各々とはアドレス信号線10,20,30、
データ信号線40,50,60および制御信号線
70,80,90によつて接続され、また、フア
イル制御装置5000とデイスク装置6000と
はデータ信号線110、フアンクシヨン信号線1
20および状態信号線130によつて接続される
ものとなつている。この場合メモリ制御装置20
00と主メモリ3000,4000との間、メモ
リ制御装置2000とフアイル制御装置5000
との間はそれぞれバス構造となつており、一般に
複数の主メモリおよびDMA機器がメモリ制御装
置2000に収納可能となつている。本例では主
メモリが2つ、DMA機器が1つの例を示してい
るわけである。
第3図はメモリ制御装置の構成を示したもので
ある。メモリ制御装置2000はアドレス変換を
行うアドレス変換回路2100、キヤツシユメモ
リ2200および全体を制御する制御回路250
0より主に構成され、内部アドレス信号バス20
0、内部データ信号バス210、内部制御信号バ
ス220、更にはインターフエース回路260
0,2700,2800を介し基本処理装置10
00、主メモリ3000,4000、フアイル制
御装置5000に接続されるようになつている。
基本処理装置またはフアイル制御装置より主メ
モリへのアクセスがあつた場合、メモリ制御装置
は常にキヤツシユメモリを参照し、参照結果に応
じて必要な制御を行うようになつている。即ち、
キヤツシユメモリ内にアクセスに係るアドレス対
応のデータが存在する場合に、アクセスがライト
である場合にはキヤツシユメモリ内のそのデータ
を新たなものに書き換えるとともに、主メモリに
おけるそのアドレスに新たなデータを書き込むよ
うにするものである。アクセスに係るアドレス対
応のデータが存在しない場合は、主メモリに対し
てのみ新たなデータの書き込みが行われるわけで
ある。一方、リードアクセスのときは、アクセス
に係るアドレス対応のデータがキヤツシユメモリ
内に存在する場合には、そのデータをキヤツシユ
メモリより読み出すだけであり、主メモリに対し
てはリードアクセスは実行されないようになつて
いる。キヤツシユメモリ内に存在しない場合は、
主メモリよりデータを読み出したうえキヤシユメ
モリにそのデータを書き込むようにするものであ
る。キヤツシユメモリのこのように使用方法はス
トアスルー方式と称されているが、本発明はこの
方式に限定されることなくストアイン方式のキヤ
ツシユメモリにも適用可となつている。
第1図は第3図におけるキヤツシユメモリの一
例での構成を示したものである。これによると基
本処理装置からのアクセスアドレスはアドレス変
換回路2100によつて物理アドレスに変換され
内部アドレス信号バス200を介して、また、
DMA機器からのアクセスは物理アドレスで行わ
れるため直接内部アドレス信号バス200を介し
アドレスレジスタ2210にラツチされるように
なつている。本例での物理アドレス全体が28ビツ
トとされ、そのうち上位15ビツトのアドレス部分
はPAU中位11ビツトのそれはPAM下位2ビツト
のそれはPALと称されている。また、デイレク
トリとしてのRAM2220,2230からは
PAMをアドレスとしてそのアドレス対応の内容
であるPAUが読み出されるが、必要に応じPAU
がデータとして書き込みされるものとなつてい
る。このデイレクトリはキヤツシユメモリにアド
レス部分〔PAU+PAM〕対応のブロツクデータ
が記憶されている場合にそのPAMに対するPAU
を記憶するためのものである。即ち、デイレクト
リのアドレスPAMを指定した場合に、その内容
がアドレス部分PAUに等しいならば、キヤツシ
ユメモリには必要とするデータが含まれているわ
けである。本例ではセツト数2のセツトアソシア
テイブ方式としたためデイレクトリが2つ用意さ
れているが、これにより同一のPAMに対して2
つのPAUのデータがキヤツシユメモリ内に存在
し得ることから、ヒツト率の向上が図れることに
なる。
ところでPAMはまたVビツト記憶RAM22
90,2300にアドレスとして入力されるよう
になつている。Vビツトは、当該ブロツク対応の
データが有効か無効かを示すものであり、ビツト
状態が“1”である場合にはそのデータは有効で
あることを示している。キヤツシユメモリそのも
のとしてのデータメモリ2330,2340は高
速のRAMにより構成され、そのアドレスとして
はDAMとPALが連結されたものが与えられ8キ
ロワード記憶し得るものとなつている。なお本例
ではデータメモリのデータ幅と、基本処理装置ま
たはDMA機器からのアクセスのデータ幅が常に
等しい場合を想定している。しかしながら大形の
計算機では一般に上述の2つのデータ幅が異なる
が、このような場合にはアドレスレジスタ221
0のフイールドの構成が異なるだけであり特に不
具合を生じることはない。
ここで基本処理装置またはDMA機器より主メ
モリへのメモリアクセスがキヤツシユヒツトした
場合、即ち、アクセスに係るアドレス対応のデー
タがキヤツシユメモリに存在する場合での動作に
ついて説明すれば以下のようである。
即ち、主メモリへのメモリアクセスに際しては
物理アドレスにおけるPAMがデイレクトリとし
てのRAM2220,2230にアドレスとして
与えられ、そのアドレスの内容が比較器224
0,2250によりアドレスレジスタ2210か
らのPAUと比較されるようになつている。ここ
ではキヤツシユヒツトを想定していることから、
比較器2240,2250の何れか1つの出力が
真となるものである。また、これに並行してVビ
ツトRAM2290,2300にもアドレスとし
てRAMが与えられているが、そのビツトもキヤ
ツシユヒツトを想定していることから、比較一致
に係るデイレクトリと同じ側のVビツトRAMの
出力が真となる。比較器の出力とVビツトRAM
の出力はアンド回路2310,2320で論理積
されるが、比較一致に係る側の論理積出力によつ
てデータメモリ2330,2340の何れか一方
がイネーブル状態におかれるところとなるもので
ある。
基本処理装置またはDMA機器からの主メモリ
アクセスがリードの場合には、データメモリの出
力が出力データレジスタ2360を介し内部デー
タ信号バス210上に出力されるものである。ま
た、そのアクセスがライトの場合には、内部デー
タ信号バス210上のデータが入力データバツフ
ア2350を介しデータメモリに入力されたうえ
書き込みされるものである。この場合にはまた内
部データ信号バス210上のデータはインターフ
エース回路2700を介し主メモリにも書き込ま
れるわけである。
ところで、リプレースデータ管理フラグとして
使用されている、RAM2260に記憶されてい
るLRUビツトは2セツトあるデータメモリの何
れがより以前に参照されたかを示すビツトであ
り、LRUビツトが“1”のときはRAM2220
側のデータがRAM2230側のデータより以前
にリードまたはライトされたことを示している。
なお、マルチプレクサ2270,2280は出
力データレジスタ2360へのデータとしてキヤ
ツシユのデータメモリの出力か、または入力デー
タレジスタ2350の出力か、何れか一方を選択
するためのものである。後者はライト時において
基本処理装置からのデータを主メモリに書き込む
場合に選択されるものとなつている。また、Vビ
ツトRAM2290,2300は電源投入時に
RAM2220,2230内のデータを全て無効
化するために設けられたものである。
以上の動作は制御回路2370による制御下に
行われるが、制御回路2370はPLA(プログラ
マブルロジツクアレイ)2371およびラツチレ
ジスタ2372により構成されるものとなつてい
る。PLA2371には内部制御信号バス220
を介し外部から外部状態信号が入力される他、
LRUビツトRAM2260出力、VビツトRAM
2290,2300出力、アンドゲート231
0,2320出力などが入力され、これらの状態
を組合せにより一意に定まる制御出力をラツチレ
ジスタ2372を介しキヤツシユメモリ2200
内の各要素に出力するものとなつている。
第5図A〜CはそのPLAによる制御の一例で
のフローを示したものである。
これによると処理10においては比較器224
0,2250の出力結果が判定され、何れかが一
致の結果となつている場合にはデイレクトリには
アクセスに係るアドレスが存在していることか
ら、処理20にてVビツトが判定されるようにな
つている。この判定ではVビツトRAM229
0,2300のうち、アドレスが存在するデイレ
クトリと同じ側の出力が参照される。Vビツトが
“1”の場合にはキヤツシユヒツトを示している
わけである。但し、以上の判定は、アンドゲート
2310,2320の出力により行うことが可能
である。キヤツシユヒツトである場合には処理3
0でアクセスのモードが判定されるが、アクセス
がリードかライトかは内部制御信号バス220に
より与えられており、これによりリードである場
合には処理40にてデータはデータメモリ220
0より読み出されるものである。データはデータ
メモリ2330,2340の何れかより読み出さ
れたうえ出力データレジスタ2360を介し内部
データ信号バス210上に出力されるものであ
る。また、アクセスがライトである場合には、処
理70にて内部データ信号バス210より入力デ
ータレジスタ2350を介しデータを受け取りデ
ータメモリ2330,2340のうちヒツトした
方にそのデータを書き込むようにするものであ
る。このときのデータは更にマルチプレクサ22
70,2280の何れかを介し内部データ信号バ
ス210上に出力されたうえインターフエース回
路2700を介し主メモリに書き込まれるわけで
ある。
さて、このようにしてキヤツシユのデータメモ
リに対するリード、またはライトが完了すると、
コントローラ2370は処理50で前記のキヤツ
シユアクセスのアクセス元を内部制御信号バス2
20からの内容により判断する。アクセス元が基
本処理装置の場合は処理80が実行され、LPU
ビツトの状態と使用したセツトとの関係を調べら
れるようになつている。LRUビツトは“0”の
ときにはセツト1(RAM2220側)がセツト
2(RAM2230側)よりも最近に使用された
ことを示しており、処理80に示す判定条件が真
の場合にはLRUビツトを設定し直す必要がなく
処理110へ進む。また使用したセツト番号と
LRUビツトの状態が各々逆の場合にも直ちに処
理110に進むものとなつている。しかし、前記
の処理80,90の条件が何れも偽の場合は何れ
かが真となるよう処理100においてLRUビツ
トの状態が反転されるようになつている。この操
作によつて、次回以降のアクセスでキヤツシユミ
スした場合に、古くに使用したセツトのデータを
置き換え得るため、高いキヤツシユヒツト率が期
待し得るものである。処理110ではアクセス元
である基本処理装置に対し内部制御信号バス22
0を介し応答が返されるものである。
一方、アクセス元がDMA機器の場合にはLRU
ビツトに対する操作は行われることなく処理60
にて直ちにアクセス元であるDMA機器に応答が
返されるようになつている。
以上はキヤツシユヒツトした場合での処理であ
るが、処理10における判定においてデイレクト
リ内に目的のアドレスが存在しなかつた場合に
は、処理120にてLRUビツトの状態が判定さ
れるようになつている。そのビツトが“1”の場
合はセツト1がより古くに使用されたのであるか
ら処理130でセツト1を選択し、また、LRU
ビツトが“0”の場合にはその逆に処理180に
てセツト2が選択されるものである。この後は処
理140,190にてアクセス元を判定するが、
アクセス元がDMA機器の場合にはLRUビツトに
対して無操作とする一方、アクセス元が基本処理
装置である場合には処理150,200が行われ
るものである。以上のセツト選択、LRUビツト
操作が行われた後は処理160によつてアクセス
がリードかライトかが判定されるようになつてい
る。リードの場合にはキヤツシユミスであるか
ら、処理170によつて1ブロツク分のデータを
主メモリより内部データ信号バス210を介し読
み取つてデータメモリ2330,2340の何れ
かに格納し、そのうち必要なデータのみを出力デ
ータレジスタ2360を介し内部データ信号バス
210上にのせるようになつている。以後は処理
50に進みアクセス元に従つたLRUビツトの操
作を行つた後、アクセス元に応答を返すようにな
つている。
またライトの場合には、内部データ信号バス2
10上のデータを主メモリ中に書き込むが、以後
の処理はリードの場合と同様となつている。
更に処理20にてVビツトが“1”でない場合
は、処理160が実行されるようになつているも
のである。
本発明による制御方法は以上のようであるが、
一般的にDMA転送ではキヤツシユミスのケース
が多いと考えられるため、キヤツシユメモリ内の
データのリプレースが頻繁に生じるが、同一のセ
ツトのデータがリプレースされるため処理装置の
データは保存されることとなり、本発明による効
果が発揮されることになる。
第6図A〜Dは本発明による制御方法の他の例
でのフローを示したものである。第5図A〜Cに
示すものとは処理50での判定においてアクセス
元がDMA機器である場合での処理のみが異なつ
ているだけである。したがつて、相違部分のみに
ついて説明すれば、第5図A〜Cにおいては、
DMAアクセスの場合はLRUビツトの変更を行わ
ないようにし、DMAアクセスで使用するキヤツ
シユの領域の局所化が確率的に起こるのに対し、
第6図A〜DにおいてはDMAアクセスの場合に
は通常のLRUビツト操作とは逆に操作すること
によつて、積極的に局所化を図るようになつてい
る。
即ち、処理300において、今回参照したセツ
トの番号が1の時に、次回以降キヤツシユミスし
た場合に使用するセツトが再び1であるように、
LRUビツトが1と設定されている場合は処理6
0に進むようになつている。処理310では逆に
今回参照したセツトの番号が2の時にLRUビツ
トが0と設定されていれば処理60に進むが、処
理300,310の何れの条件も偽ならば、処理
320によつてLRUビツトが反転され、処理3
00,310での何れかの条件が真となるように
するものである。アクセス元であるDMA機器に
対しては処理60にて応答を返すものである。
最後に本発明による効果についてセツト数が
2、各セツトに含まれるブロツクの数が4として
説明すれば、第7図Aは従来の方式において8ブ
ロツク分のDMA転送が行われた場合に使用され
るブロツクの順番を模式的に示したものである。
DMA転送によるデータはキヤツシユメモリ内に
分散して記憶されるが、このためそれまで使用し
ていたプログラムやデータが放逐されてヒツト率
が下がり、その結果としてスループツトが低下す
ることになる。一方、本発明による場合は第7図
Bに示すようにブロツクが使用され、空白で示し
たセツト1のブロツク1、4およびセツト2のブ
ロツク2、3は元のプログラムやデータのままで
あり、ヒツト率の低下がその分抑制されることに
なる。
〔発明の効果〕
以上説明したように本発明による場合は、
DMA転送によつて使用されるキヤツシユメモリ
内の領域が局所化されるために、多量のDMA転
送の後もキヤツシユのヒツト率の低下が抑えられ
その結果としてシステムのスループツトが向上さ
れるといつた効果がある。
【図面の簡単な説明】
第1図は、本発明に係るキヤツシユメモリの一
例での構成を示す図、第2図は、本発明に係る処
理システムの一例での構成を示す図、第3図は、
その構成におけるメモリ制御装置の一例での構成
を示す図、第4図は、本発明に係るキヤツシユメ
モリにおける制御回路の構成を示す図、第5図A
〜Cは、その制御回路による制御の一例でのフロ
ーを示す図、第6図A〜Dは、他の例でのフロー
を示す図、第7図A,Bは、本発明による効果を
説明するための図である。 1000……基本処理装置、2000……メモ
リ制御装置、3000,4000……主メモリ、
5000……フアイル制御装置(DMA機器)、
2100……アドレス変換回路、2200……キ
ヤツシユメモリ、2210……アドレスレジス
タ、2220,2230……RAM(デイレクト
リ)、2240,2250……比較器、2260
……LRUビツト記憶RAM、2270,2280
……マルチプレクサ、2290,2300……V
ビツトRAM、2310,2320……アンド回
路、2330,2340……データメモリ、23
50……入力データレジスタ、2360……出力
データレジスタ、2370……制御回路。

Claims (1)

    【特許請求の範囲】
  1. 1 キヤツシユミス時にキヤツシユメモリそのも
    のとして複数のデータメモリより何れか1つが、
    内容置換の際に何れのデータメモリを選択するか
    を判断するためのリプレースデータ管理フラグに
    もとづき選択されるセツトアソシアテイブ方式の
    キヤツシユメモリ制御方法において、主メモリに
    対するメモリアクセスがDMA転送によつて行わ
    れる場合には、上記リプレースデータ管理フラグ
    の変更は禁止されることを特徴とするキヤツシユ
    メモリ制御方法。
JP60137680A 1985-06-26 1985-06-26 キヤツシユメモリ制御方法 Granted JPS61296450A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60137680A JPS61296450A (ja) 1985-06-26 1985-06-26 キヤツシユメモリ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60137680A JPS61296450A (ja) 1985-06-26 1985-06-26 キヤツシユメモリ制御方法

Publications (2)

Publication Number Publication Date
JPS61296450A JPS61296450A (ja) 1986-12-27
JPH0415495B2 true JPH0415495B2 (ja) 1992-03-18

Family

ID=15204302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60137680A Granted JPS61296450A (ja) 1985-06-26 1985-06-26 キヤツシユメモリ制御方法

Country Status (1)

Country Link
JP (1) JPS61296450A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6482256A (en) * 1987-09-25 1989-03-28 Fujitsu Ltd Vector data fetch system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59178671A (ja) * 1983-03-29 1984-10-09 Fujitsu Ltd バツフアストレイジリプレイス方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59178671A (ja) * 1983-03-29 1984-10-09 Fujitsu Ltd バツフアストレイジリプレイス方式

Also Published As

Publication number Publication date
JPS61296450A (ja) 1986-12-27

Similar Documents

Publication Publication Date Title
US5537572A (en) Cache controller and method for dumping contents of a cache directory and cache data random access memory (RAM)
US5091851A (en) Fast multiple-word accesses from a multi-way set-associative cache memory
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
US6192458B1 (en) High performance cache directory addressing scheme for variable cache sizes utilizing associativity
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
JPH06208508A (ja) キャッシュタグメモリ
JPS6135584B2 (ja)
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
JP3236287B2 (ja) マルチプロセッサシステム
EP0533427B1 (en) Computer memory control system
US5287512A (en) Computer memory system and method for cleaning data elements
US6240487B1 (en) Integrated cache buffers
JP2002140232A (ja) マルチプロセッサシステム及びキャッシュを制御する方法
JPH044617B2 (ja)
JPH0415495B2 (ja)
JPH05282208A (ja) キャッシュメモリ制御方式
JPH0290259A (ja) マルチプロセッサシステム
JPH02213960A (ja) キャッシュメモリ
JP2850340B2 (ja) キャッシュメモリ制御回路
KR940001590B1 (ko) 블럭읽기 및 쓰기에서의 메모리 엑세스 시간 단축장치 및 방법
JP2963257B2 (ja) 処理装置
JPH08137753A (ja) ディスクキャッシュ装置
JPS6020255A (ja) バツフア記憶制御方式
JPH06222989A (ja) コピーバックキャッシュタグメモリ
JPH07152650A (ja) キャッシュ制御装置