JPH0556543B2 - - Google Patents
Info
- Publication number
- JPH0556543B2 JPH0556543B2 JP60212821A JP21282185A JPH0556543B2 JP H0556543 B2 JPH0556543 B2 JP H0556543B2 JP 60212821 A JP60212821 A JP 60212821A JP 21282185 A JP21282185 A JP 21282185A JP H0556543 B2 JPH0556543 B2 JP H0556543B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- address
- block
- data
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はキヤツシユメモリの制御装置に関し、
特にブロツクロード中に処理装置からメモリリー
ドリクエストが発生した際の制御方式の改良に関
する。
特にブロツクロード中に処理装置からメモリリー
ドリクエストが発生した際の制御方式の改良に関
する。
処理装置(以下CPUと称す)とメインメモリ
との動作スピードのギヤツプを埋めるために、周
知の如く両者の間に高速・小容量のメモリで構成
されるキヤツシユ記憶装置を設ける方策がよく採
用される。メインメモリは予め容量が一定の多数
のブロツクに分割され、これら多数のブロツクの
うちの一部のブロツクに格納されているデータ
を、キヤツシユ記憶装置内のキヤツシユメモリに
書込んでおく(このような書込みをブロツクロー
ドという)。
との動作スピードのギヤツプを埋めるために、周
知の如く両者の間に高速・小容量のメモリで構成
されるキヤツシユ記憶装置を設ける方策がよく採
用される。メインメモリは予め容量が一定の多数
のブロツクに分割され、これら多数のブロツクの
うちの一部のブロツクに格納されているデータ
を、キヤツシユ記憶装置内のキヤツシユメモリに
書込んでおく(このような書込みをブロツクロー
ドという)。
CPUがメモリデータのリードリクエストを出
すと、先ず、リードリクエストされているデータ
がキヤツシユメモリに存在する(ヒツト)か否
(ミスヒツト)かが調べられる。もしヒツトすれ
ばキヤツシユメモリからの読出しデータのうちの
当該データがCPUに送出される。反対にミスヒ
ツトすればキヤツシユメモリからの読出しデータ
は放棄され、メインメモリの当該アドレスのデー
タを読んでCPUに送出すると共に当該データが
含まれるブロツクがキヤツシユメモリの空ブロツ
クまたは例えば最も永く使用されていないデータ
を記憶しているブロツクにブロツクロードされ
る。一般にその1ブロツクのデータ量はメインメ
モリからキヤツシユメモリに転送されるデータ単
位よりも大きいため、1回のブロツクロードに対
してメインメモリの読出し動作およびキヤツシユ
メモリへの書込み動作は複数回行なわれることに
なる。
すと、先ず、リードリクエストされているデータ
がキヤツシユメモリに存在する(ヒツト)か否
(ミスヒツト)かが調べられる。もしヒツトすれ
ばキヤツシユメモリからの読出しデータのうちの
当該データがCPUに送出される。反対にミスヒ
ツトすればキヤツシユメモリからの読出しデータ
は放棄され、メインメモリの当該アドレスのデー
タを読んでCPUに送出すると共に当該データが
含まれるブロツクがキヤツシユメモリの空ブロツ
クまたは例えば最も永く使用されていないデータ
を記憶しているブロツクにブロツクロードされ
る。一般にその1ブロツクのデータ量はメインメ
モリからキヤツシユメモリに転送されるデータ単
位よりも大きいため、1回のブロツクロードに対
してメインメモリの読出し動作およびキヤツシユ
メモリへの書込み動作は複数回行なわれることに
なる。
ミスヒツト時に発生するブロツクロード要求が
開始されて最後の読出しデータがキヤツシユメモ
リへ書込みを終了するまでの期間であるブロツク
ロード動作中、キヤツシユメモリへ読出しデータ
を書込んでいるときは、キヤツシユメモリが占有
されるためにキヤツシユメモリからの読出しは行
なうことができない。
開始されて最後の読出しデータがキヤツシユメモ
リへ書込みを終了するまでの期間であるブロツク
ロード動作中、キヤツシユメモリへ読出しデータ
を書込んでいるときは、キヤツシユメモリが占有
されるためにキヤツシユメモリからの読出しは行
なうことができない。
従来、このブロツクロード中にCPUがメモリ
データのリードリクエストを出した場合、ブロツ
クロード中はキヤツシユメモリをブロツクロード
に占有させているため、CPUのメモリデータの
リードリクエストは必ずブロツクロードの終了を
待つて受け付けるように構成されていた。
データのリードリクエストを出した場合、ブロツ
クロード中はキヤツシユメモリをブロツクロード
に占有させているため、CPUのメモリデータの
リードリクエストは必ずブロツクロードの終了を
待つて受け付けるように構成されていた。
上述したように従来のキヤツシユメモリ制御装
置では、CPUのメモリリードリクエストがブロ
ツクロードの終了まで必ず待たされることにな
り、キヤツシユメモリ処理装置のスループツトを
低下させるという欠点があつた。
置では、CPUのメモリリードリクエストがブロ
ツクロードの終了まで必ず待たされることにな
り、キヤツシユメモリ処理装置のスループツトを
低下させるという欠点があつた。
本発明の目的は、ブロツクロード中にCPUか
ら後続のメモリリードリクエストが発生した場
合、その後続のメモリリードリクエストデータの
ブロツクアドレスがブロツクロード中のブロツク
アドレスと等しいときは、ブロツクロード中に後
続のメモリリードリクエストの処理が可能なよう
に構成することにより、キヤツシユメモリ処理装
置のスループツトを向上させることにある。
ら後続のメモリリードリクエストが発生した場
合、その後続のメモリリードリクエストデータの
ブロツクアドレスがブロツクロード中のブロツク
アドレスと等しいときは、ブロツクロード中に後
続のメモリリードリクエストの処理が可能なよう
に構成することにより、キヤツシユメモリ処理装
置のスループツトを向上させることにある。
本発明は上記目的を達成するために、キヤツシ
ユメモリからの読出しデータとメインメモリから
の読出しデータを選択する選択回路と、ブロツク
ロード中に処理装置から後続のメモリリードリク
エストが発生し且つ前記後続のメモリリクエスト
のブロツクアドレスとキヤツシユメモリの書込み
ブロツクアドレスとが一致しているとき前記後続
のメモリリードリクエストのアドレスに対応する
データが既にキヤツシユメモリに書込まれた否か
を判定する判定回路と、 この判定回路で既に書込みが行なわれたと判定
された場合には、ブロツクロードによつてキヤツ
シユメモリが専有されていないタイミングで、前
記後続のメモリリードリクエストのアドレスでキ
ヤツシユメモリから読出されたデータを、前記選
択回路で選択させ、前記書込みが未だ終了してい
ないと判定された場合には、前記後続のメモリリ
ードリクエストのアドレスと同一のアドレスのメ
モリリプライデータが返却されるまで前記メモリ
リードリクエストを待ち合わせ、その返却と同時
にメモリリプライタイミングでメモリリプライデ
ータを前記選択回路で選択される制御手段とを設
ける。
ユメモリからの読出しデータとメインメモリから
の読出しデータを選択する選択回路と、ブロツク
ロード中に処理装置から後続のメモリリードリク
エストが発生し且つ前記後続のメモリリクエスト
のブロツクアドレスとキヤツシユメモリの書込み
ブロツクアドレスとが一致しているとき前記後続
のメモリリードリクエストのアドレスに対応する
データが既にキヤツシユメモリに書込まれた否か
を判定する判定回路と、 この判定回路で既に書込みが行なわれたと判定
された場合には、ブロツクロードによつてキヤツ
シユメモリが専有されていないタイミングで、前
記後続のメモリリードリクエストのアドレスでキ
ヤツシユメモリから読出されたデータを、前記選
択回路で選択させ、前記書込みが未だ終了してい
ないと判定された場合には、前記後続のメモリリ
ードリクエストのアドレスと同一のアドレスのメ
モリリプライデータが返却されるまで前記メモリ
リードリクエストを待ち合わせ、その返却と同時
にメモリリプライタイミングでメモリリプライデ
ータを前記選択回路で選択される制御手段とを設
ける。
ブロツクロード中に処理装置からの後続のメモ
リリードリクエストが発生すると、そのメモリリ
ードリクエストのアドレスのブロツクアドレスと
ブロツクロード処理が行なわれているブロツクロ
ードアドレスのブロツクアドレスとが比較回路で
比較され、両アドレスの一致の有無が調べられ
る。一方、ブロツクロードに要求に対して発生す
る複数のメモリリプライデータの数がカウント回
路でカウントされ、判定回路は比較回路の出力が
一致を示すとき、カウント回路のカウント値、ブ
ロツクロードアドレス及び後続のメモリリードリ
クエストのアドレスから要求されたデータが既に
キヤツシユメモリに書込まれたブロツク内ワード
であるか否かを判定する。そして、既に書込まれ
たデータである場合には、後続のメモリリードリ
クエストのアドレスによつてキヤツシユメモリか
ら読出されたデータをブロツクロードによつてキ
ヤツシユメモリが占有されていないタイミングで
読出してCPUに送出し、書込みが未だ終了して
いないと判定されたときは、要求されたデータが
処理装置から返却されるまで待ち合わせ、返却さ
れたときに処理装置へ送出する。
リリードリクエストが発生すると、そのメモリリ
ードリクエストのアドレスのブロツクアドレスと
ブロツクロード処理が行なわれているブロツクロ
ードアドレスのブロツクアドレスとが比較回路で
比較され、両アドレスの一致の有無が調べられ
る。一方、ブロツクロードに要求に対して発生す
る複数のメモリリプライデータの数がカウント回
路でカウントされ、判定回路は比較回路の出力が
一致を示すとき、カウント回路のカウント値、ブ
ロツクロードアドレス及び後続のメモリリードリ
クエストのアドレスから要求されたデータが既に
キヤツシユメモリに書込まれたブロツク内ワード
であるか否かを判定する。そして、既に書込まれ
たデータである場合には、後続のメモリリードリ
クエストのアドレスによつてキヤツシユメモリか
ら読出されたデータをブロツクロードによつてキ
ヤツシユメモリが占有されていないタイミングで
読出してCPUに送出し、書込みが未だ終了して
いないと判定されたときは、要求されたデータが
処理装置から返却されるまで待ち合わせ、返却さ
れたときに処理装置へ送出する。
第1図は本発明の一実施例のブロツク図であ
る。一般に、メインメモリ(図示せず)は、1ブ
ロツクが例えば32バイトの容量を有する多数のブ
ロツクに分割されている。これに対し、メインメ
モリとキヤツシユメモリ1との間で転送されるデ
ータ単位にブロツクの容量より小さく例えば8バ
イトになつている。従つて、ミスヒツトが生じた
場合にメインメモリに対して4回メモリリードリ
クエスト信号MRQを出し、これを受けてメイン
メモリから送出されるメモリリードデータMRD
を4回キヤツシユメモリ1に書込むことによつて
ブロツクロードが完了する。なお、CPUが要求
するメモリリードデータは最初のメモリリプライ
タイミングでリプライ信号RPYとともにCPUへ
送出する。メインメモリはサイクルタイムが例え
ば100nsであり、CPUのサイクルタイムはそれよ
り短く例えば50nsとなつているため、メインメモ
リはメモリリードリクエストMRQをCPUサイク
ルで2T(Tは1CPUサイクル)に1回受付けるこ
とになり、メモリリプライデータMRD及びメモ
リリプライ信号MRYも同様に2Tに1回送出する
ことになる。
る。一般に、メインメモリ(図示せず)は、1ブ
ロツクが例えば32バイトの容量を有する多数のブ
ロツクに分割されている。これに対し、メインメ
モリとキヤツシユメモリ1との間で転送されるデ
ータ単位にブロツクの容量より小さく例えば8バ
イトになつている。従つて、ミスヒツトが生じた
場合にメインメモリに対して4回メモリリードリ
クエスト信号MRQを出し、これを受けてメイン
メモリから送出されるメモリリードデータMRD
を4回キヤツシユメモリ1に書込むことによつて
ブロツクロードが完了する。なお、CPUが要求
するメモリリードデータは最初のメモリリプライ
タイミングでリプライ信号RPYとともにCPUへ
送出する。メインメモリはサイクルタイムが例え
ば100nsであり、CPUのサイクルタイムはそれよ
り短く例えば50nsとなつているため、メインメモ
リはメモリリードリクエストMRQをCPUサイク
ルで2T(Tは1CPUサイクル)に1回受付けるこ
とになり、メモリリプライデータMRD及びメモ
リリプライ信号MRYも同様に2Tに1回送出する
ことになる。
第1図において、アドレスレジスタ7はCPU
からメモリリクエストアドレスADDがセツトさ
れるレジスタである。このレジスタ7は、メモリ
リクエストアドレスADDの内のブロツクアドレ
スMAHを格納する部分と、ブロツク内のワード
アドレスMALを格納する例えば2ビツトの部分
に分かれ、ブロツク内のワードアドレスMALは
図示しない手段によりブロツクロード動作前半に
おいて所定の順序で更新される。アドレスレジス
タ7の全ての内容はアドレス信号MADとしてキ
ヤツシユメモリ1に選択回路10を介して加えら
れ、ブロツクアドレスMAHは比較回路3に入力
され、ブロツク内ワードアドレスMALは判定回
路4に入力される。
からメモリリクエストアドレスADDがセツトさ
れるレジスタである。このレジスタ7は、メモリ
リクエストアドレスADDの内のブロツクアドレ
スMAHを格納する部分と、ブロツク内のワード
アドレスMALを格納する例えば2ビツトの部分
に分かれ、ブロツク内のワードアドレスMALは
図示しない手段によりブロツクロード動作前半に
おいて所定の順序で更新される。アドレスレジス
タ7の全ての内容はアドレス信号MADとしてキ
ヤツシユメモリ1に選択回路10を介して加えら
れ、ブロツクアドレスMAHは比較回路3に入力
され、ブロツク内ワードアドレスMALは判定回
路4に入力される。
ブロツクロードアドレスレジスタ8は、ブロツ
クロードの動作中の所定のタイミングで開かれる
ゲート回路9を介してアドレスレジスタ7の内容
がセツトされるレジスタで、ブロツクアドレス
BAHを格納する部分と2ビツトのブロツク内ワ
ードアドレスBALを格納する部分とから構成さ
れる。ブロツクロードアドレスレジスタ8の全て
の内容BLAは選択回路10を介してキヤツシユ
メモリ1に加えられ、ブロツクアドレスBAHは
比較回路3に入力され、ブロツク内ワードアドレ
スBALは判定回路4に入力される。上記ブロツ
ク内ワードアドレスBALは図示しない手段によ
りブロツクロード動作後半において所定の順序で
更新される。キヤツシユメモリ1は図示しないメ
インメモリの複数のブロツクのアドレスとデータ
のコピーを記憶するメモリで、選択回路10を介
したアドレスMAD,BLAとメインメモリからの
メモリリードデータMRDと、制御部5からのキ
ヤツシユ書込み信号CWTとが入力され、ヒツト
信号HITとキヤツシユリードデータCRDを出力
する。キヤツシユメモリ1はアドレスレジスタ7
にセツトされたアドレスMADが入力された際、
アドレスMADと同一のアドレス内部に記憶され
ているかを参照し、記憶されている場合はヒツト
信号HITを“1”とし、記憶されていない場合
はヒツト信号HITを“0”のままとする。また、
制御部5からのキヤツシユ書込み信号CWTが
“1”のタイミングで選択回路10から入力され
ているアドレスにメモリリードデータMRDを書
込み、キヤツシユ書込み信号CWTが“0”のタ
イミングでは選択回路10から入力されているア
ドレスのデータがあればそれをキヤツシユリード
データCRDとして出力する。
クロードの動作中の所定のタイミングで開かれる
ゲート回路9を介してアドレスレジスタ7の内容
がセツトされるレジスタで、ブロツクアドレス
BAHを格納する部分と2ビツトのブロツク内ワ
ードアドレスBALを格納する部分とから構成さ
れる。ブロツクロードアドレスレジスタ8の全て
の内容BLAは選択回路10を介してキヤツシユ
メモリ1に加えられ、ブロツクアドレスBAHは
比較回路3に入力され、ブロツク内ワードアドレ
スBALは判定回路4に入力される。上記ブロツ
ク内ワードアドレスBALは図示しない手段によ
りブロツクロード動作後半において所定の順序で
更新される。キヤツシユメモリ1は図示しないメ
インメモリの複数のブロツクのアドレスとデータ
のコピーを記憶するメモリで、選択回路10を介
したアドレスMAD,BLAとメインメモリからの
メモリリードデータMRDと、制御部5からのキ
ヤツシユ書込み信号CWTとが入力され、ヒツト
信号HITとキヤツシユリードデータCRDを出力
する。キヤツシユメモリ1はアドレスレジスタ7
にセツトされたアドレスMADが入力された際、
アドレスMADと同一のアドレス内部に記憶され
ているかを参照し、記憶されている場合はヒツト
信号HITを“1”とし、記憶されていない場合
はヒツト信号HITを“0”のままとする。また、
制御部5からのキヤツシユ書込み信号CWTが
“1”のタイミングで選択回路10から入力され
ているアドレスにメモリリードデータMRDを書
込み、キヤツシユ書込み信号CWTが“0”のタ
イミングでは選択回路10から入力されているア
ドレスのデータがあればそれをキヤツシユリード
データCRDとして出力する。
カウント回路2は、例えば2ビツトのカウンタ
で構成され、1回のブロツクロード要求に対して
発生する複数のメモリリクエストに対応するメモ
リリプライ信号MPYをカウントし、このカウン
タ回路2のカウント値CNTは判定回路4に入力
される。比較回路3は、アドレスレジスタ7のブ
ロツクアドレスMAHとブロツクロードアドレス
レジスタ8からのブロツクアドレスBAHとを比
較するもので両アドレスが一致しているとき判定
回路4、制御部5に加わるアドレス一致信号
EQLを例えば“1”とする。
で構成され、1回のブロツクロード要求に対して
発生する複数のメモリリクエストに対応するメモ
リリプライ信号MPYをカウントし、このカウン
タ回路2のカウント値CNTは判定回路4に入力
される。比較回路3は、アドレスレジスタ7のブ
ロツクアドレスMAHとブロツクロードアドレス
レジスタ8からのブロツクアドレスBAHとを比
較するもので両アドレスが一致しているとき判定
回路4、制御部5に加わるアドレス一致信号
EQLを例えば“1”とする。
判定回路4は、アドレス一致信号EQLが“1”
のとき、ブロツクロードアドレスレジスタ8のブ
ロツク内ワードアドレスBALの現在値とカウン
ト回路2のカウント値CNTとから、ブロツクロ
ードが開始されたブロツク内ワードアドレスを算
出する。これは、例えばブロツク内ワードアドレ
スBALが00→01→10→11→00の順で更新される
とすると、現在のブロツク内ワードアドレス
BALが例えば「10」でカウント値が「2」であ
れば、2つ前の値「00」を開始アドレスとする。
判定回路4は開始アドレスを算出すると、その開
始アドレスとアドレスレジスタ7のブロツク内ワ
ードアドレスMALとを比較し、アドレスレジス
タ7にセツトされた要求アドレスのデータが既に
キヤツシユメモリ内に書込まれたデータか否かを
判定する。この判定は、前述の開始アドレスとカ
ウント回路2のカウント値から既にキヤツシユメ
モリに書込まれたデータのブロツク内ワードアド
レスが判るので、アドレスレジスタ7のブロツク
内ワードアドレスMALがその中に含まれている
か否かで判定できる。判定回路4は、アドレスレ
ジスタ7にセツトされた要求アドレスのデータが
既にキヤツシユメモリ内に書込まれたデータであ
ると判定したときは、制御部5に加わる判定信号
JAGを例えば“1”とする。
のとき、ブロツクロードアドレスレジスタ8のブ
ロツク内ワードアドレスBALの現在値とカウン
ト回路2のカウント値CNTとから、ブロツクロ
ードが開始されたブロツク内ワードアドレスを算
出する。これは、例えばブロツク内ワードアドレ
スBALが00→01→10→11→00の順で更新される
とすると、現在のブロツク内ワードアドレス
BALが例えば「10」でカウント値が「2」であ
れば、2つ前の値「00」を開始アドレスとする。
判定回路4は開始アドレスを算出すると、その開
始アドレスとアドレスレジスタ7のブロツク内ワ
ードアドレスMALとを比較し、アドレスレジス
タ7にセツトされた要求アドレスのデータが既に
キヤツシユメモリ内に書込まれたデータか否かを
判定する。この判定は、前述の開始アドレスとカ
ウント回路2のカウント値から既にキヤツシユメ
モリに書込まれたデータのブロツク内ワードアド
レスが判るので、アドレスレジスタ7のブロツク
内ワードアドレスMALがその中に含まれている
か否かで判定できる。判定回路4は、アドレスレ
ジスタ7にセツトされた要求アドレスのデータが
既にキヤツシユメモリ内に書込まれたデータであ
ると判定したときは、制御部5に加わる判定信号
JAGを例えば“1”とする。
制御部5は、CPUからメモリリードリクエス
ト信号REGを受けると、そのリクエスト信号
REGがブロツクロード動作の前半以外の期間に
入力されたときに限り図示しないセツト信号を送
出してCPUからのアドレスADDをアドレスレジ
スタ7にセツトする。そして、このセツトをブロ
ツクロード動作中以外で行なつたときは、選択回
路10をアドレスレジスタ7側に切換え、ヒツト
信号HITが“1”になるか否かを監視する。そ
して、ヒツト信号HITが“1”になれば選択回
路6をキヤツシユメモリ1側に切換え、アドレス
レジスタ7のアドレスMADで読出されたキヤツ
シユリードデータCRDをリプライ信号RPYとと
もにCPUへ送出する。また、ヒツト信号HITが
“1”にならないと、後述するブロツクロード動
作を開示する。一方、ブロツクロード動作の後半
部分において新たなメモリリードリクエスト信号
REQが発生し、そのメモリリードリクエスト信
号REQに伴うCPUアドレスADDをアドレスレジ
スタ7にセツトしたときは、ブロツクロード動作
と並行して判定回路4の判定結果に基づく後述す
るキヤツシユ一致処理を行なう。
ト信号REGを受けると、そのリクエスト信号
REGがブロツクロード動作の前半以外の期間に
入力されたときに限り図示しないセツト信号を送
出してCPUからのアドレスADDをアドレスレジ
スタ7にセツトする。そして、このセツトをブロ
ツクロード動作中以外で行なつたときは、選択回
路10をアドレスレジスタ7側に切換え、ヒツト
信号HITが“1”になるか否かを監視する。そ
して、ヒツト信号HITが“1”になれば選択回
路6をキヤツシユメモリ1側に切換え、アドレス
レジスタ7のアドレスMADで読出されたキヤツ
シユリードデータCRDをリプライ信号RPYとと
もにCPUへ送出する。また、ヒツト信号HITが
“1”にならないと、後述するブロツクロード動
作を開示する。一方、ブロツクロード動作の後半
部分において新たなメモリリードリクエスト信号
REQが発生し、そのメモリリードリクエスト信
号REQに伴うCPUアドレスADDをアドレスレジ
スタ7にセツトしたときは、ブロツクロード動作
と並行して判定回路4の判定結果に基づく後述す
るキヤツシユ一致処理を行なう。
第2図は上述のブロツクロードの動作タイムチ
ヤートであり、以下第1図及び第2図に基づいて
本実施例の動作を説明する。
ヤートであり、以下第1図及び第2図に基づいて
本実施例の動作を説明する。
ブロツクロード動作の前半以外の期間でCPU
からメモリリードリクエスト信号REQとアドレ
スADDが発生すると、アドレスADDはアドレス
レジスタ7にセツトされ、キヤツシユメモリ1で
は選択回路10がアドレスレジスタ7側に切換え
られることによつてアドレスレジスタ7にセツト
されたアドレスMADに該当するアドレスが内部
に記憶されているか否かが参照される。この結果
キヤツシユメモリ1に該当するアドレスが存在す
れば、キヤツシユメモリ1から制御部5に加えら
れているヒツト信号HITは論理“1”となり、
制御部5は選択回路6においてキヤツシユ読出し
データCRDを選択させ、出力データDTOとして
CPUに送出させる。
からメモリリードリクエスト信号REQとアドレ
スADDが発生すると、アドレスADDはアドレス
レジスタ7にセツトされ、キヤツシユメモリ1で
は選択回路10がアドレスレジスタ7側に切換え
られることによつてアドレスレジスタ7にセツト
されたアドレスMADに該当するアドレスが内部
に記憶されているか否かが参照される。この結果
キヤツシユメモリ1に該当するアドレスが存在す
れば、キヤツシユメモリ1から制御部5に加えら
れているヒツト信号HITは論理“1”となり、
制御部5は選択回路6においてキヤツシユ読出し
データCRDを選択させ、出力データDTOとして
CPUに送出させる。
キヤツシユメモリ1に該当するアドレスが存在
しない場合は、ヒツト信号HITが論理“1”に
ならないために、制御部5はブロツクロードを開
始する。制御部5はブロツクロードを開始する
と、先ずメモリリードリクエスト信号MRQをメ
インメモリに送出し、アドレスレジスタ7が保持
するアドレスMADによつて指定される番地を読
出す。このメモリリードリクエスト信号MRGは
第2図のCPUタイミングT2,T3,T4,T
6の4つのタイミングでそれぞれRQ1〜RQ4
として出され、アドレスレジスタ7の内容は図示
しない手段により下位2ビツトの値(ブロツク内
ワードアドレス)が各タイミングで所定の順序で
更新される。
しない場合は、ヒツト信号HITが論理“1”に
ならないために、制御部5はブロツクロードを開
始する。制御部5はブロツクロードを開始する
と、先ずメモリリードリクエスト信号MRQをメ
インメモリに送出し、アドレスレジスタ7が保持
するアドレスMADによつて指定される番地を読
出す。このメモリリードリクエスト信号MRGは
第2図のCPUタイミングT2,T3,T4,T
6の4つのタイミングでそれぞれRQ1〜RQ4
として出され、アドレスレジスタ7の内容は図示
しない手段により下位2ビツトの値(ブロツク内
ワードアドレス)が各タイミングで所定の順序で
更新される。
メインメモリはメモリリードリクエスト信号
MRQを受けると、メモリリプライ信号MRYと
ともに指定されたアドレスのメモリリードデータ
MRDを送出する。制御部5は最初のメモリリプ
ライ信号MRY(RY1)を第2図のCPUタイミン
グT10で受け取ると選択回路6においてメモリ
リードデータMRDを選択させ、リプライ信号
RPYとともに出力データDTOをCPUに送出す
る。同時に制御部5はゲート信号aを送出してゲ
ート回路9を開きアドレスレジスタ7の内容をブ
ロツクロードアドレスレジスタ8に転送すると共
に選択回路10を切換え、ブロツクロードアドレ
スレジスタ8にセツトされたアドレスBLAによ
つて示されるキヤツシユメモリ1の番地にキヤツ
シユ書込み信号CWTを送出することによりメモ
リリードデータMRDを書込む。キヤツシユメモ
リ1への書込み動作は後続する3つのメモリリー
ドデータについても行なわれ、第2図の各CPU
タイミングT12,T14,T16で制御部5が
メモリリプライ信号MRYをそれぞれRY2〜RY
4として受け取り、ブロツクロードアドレスレジ
スタ8の下位2ビツトの内容が図示しない手段に
より各リプライタイミングで所定の順序で更新さ
れたアドレスにキヤツシユ書込み信号CWTを送
出することによつて書込みを行ない、ブロツクロ
ードを終了する。
MRQを受けると、メモリリプライ信号MRYと
ともに指定されたアドレスのメモリリードデータ
MRDを送出する。制御部5は最初のメモリリプ
ライ信号MRY(RY1)を第2図のCPUタイミン
グT10で受け取ると選択回路6においてメモリ
リードデータMRDを選択させ、リプライ信号
RPYとともに出力データDTOをCPUに送出す
る。同時に制御部5はゲート信号aを送出してゲ
ート回路9を開きアドレスレジスタ7の内容をブ
ロツクロードアドレスレジスタ8に転送すると共
に選択回路10を切換え、ブロツクロードアドレ
スレジスタ8にセツトされたアドレスBLAによ
つて示されるキヤツシユメモリ1の番地にキヤツ
シユ書込み信号CWTを送出することによりメモ
リリードデータMRDを書込む。キヤツシユメモ
リ1への書込み動作は後続する3つのメモリリー
ドデータについても行なわれ、第2図の各CPU
タイミングT12,T14,T16で制御部5が
メモリリプライ信号MRYをそれぞれRY2〜RY
4として受け取り、ブロツクロードアドレスレジ
スタ8の下位2ビツトの内容が図示しない手段に
より各リプライタイミングで所定の順序で更新さ
れたアドレスにキヤツシユ書込み信号CWTを送
出することによつて書込みを行ない、ブロツクロ
ードを終了する。
このブロツクロードによるメモリリプライ信号
MRYが到来する毎にカウント回路2がカウント
アツプされリプライの数が計数される。このカウ
ント回路2のカウント信号CNTは判定回路4に
入力される。
MRYが到来する毎にカウント回路2がカウント
アツプされリプライの数が計数される。このカウ
ント回路2のカウント信号CNTは判定回路4に
入力される。
次に上記ブロツクロード動作中に例えば第2図
のCPUタイミングT13でCPUから後続のメモ
リリードリクエストREQが発生した場合につい
て説明する。
のCPUタイミングT13でCPUから後続のメモ
リリードリクエストREQが発生した場合につい
て説明する。
ブロツクロード動作中に後続のメモリリードリ
クエストREQが発生すると、それに伴つてCPU
から発生されるアドレスADDによつてアドレス
レジスタ7の内容は後続のメモリリードリクエス
トのアドレスへ書換えられ、ブロツクロードアド
レスレジスタ8には現在のブロツクロードアドレ
スが格納されたまま保持される。そして、先ず、
アドレスレジスタ7とブロツクロードアドレスレ
ジスタ8の各々のブロツクアドレス(MAH,
BAH)が比較回路3に入力され、比較結果はア
ドレス一致信号EQLとして出力され判定回路4
と制御部5に入力される。
クエストREQが発生すると、それに伴つてCPU
から発生されるアドレスADDによつてアドレス
レジスタ7の内容は後続のメモリリードリクエス
トのアドレスへ書換えられ、ブロツクロードアド
レスレジスタ8には現在のブロツクロードアドレ
スが格納されたまま保持される。そして、先ず、
アドレスレジスタ7とブロツクロードアドレスレ
ジスタ8の各々のブロツクアドレス(MAH,
BAH)が比較回路3に入力され、比較結果はア
ドレス一致信号EQLとして出力され判定回路4
と制御部5に入力される。
ブロツクアドレスが一致していない場合は、通
常のCPUメモリリードリクエストの処理と同様
であり、ブロツクロードの終了までCPUのメモ
リ読出し要求が待たされることになる。しかし、
一致している場合は、アドレスレジスタ7のブロ
ツク内ワードアドレスMALと、ブロツクロード
アドレスレジスタ8のブロツク内ワードアドレス
BALが判定回路4に入力されることによつて、
判定回路4は、ブロツク内ワードアドレスBAL
とカウント信号CNTに基づきブロツクロードが
開始されたブロツク内ワードアドレス即ち最初に
CPUから要求のあつたアドレスを算出し、これ
とCPUメモリリードリクエストのブロツク内ワ
ードアドレスMALとを比較することによつて、
要求アドレスのデータが既にキヤツシユメモリ1
内に書込まれたデータかそうでないかを判定し、
判定信号JAGとして制御部5に通知する。既に
キヤツシユメモリ1に書込まれたデータである場
合、つまり判定信号JAGが論理“1”である場
合は、制御部5は、ブロツクロードによつてキヤ
ツシユメモリ1が専有されていないタイミングで
選択回路10を一時的にアドレスレジスタ7側に
切換え、アドレスレジスタ7をアドレスでキヤツ
シユメモリ1から読出されたキヤツシユリードデ
ータCRDを選択回路6で選択させ、出力データ
DTOとしてリプライ信号RPYとともにCPUへ送
出する。
常のCPUメモリリードリクエストの処理と同様
であり、ブロツクロードの終了までCPUのメモ
リ読出し要求が待たされることになる。しかし、
一致している場合は、アドレスレジスタ7のブロ
ツク内ワードアドレスMALと、ブロツクロード
アドレスレジスタ8のブロツク内ワードアドレス
BALが判定回路4に入力されることによつて、
判定回路4は、ブロツク内ワードアドレスBAL
とカウント信号CNTに基づきブロツクロードが
開始されたブロツク内ワードアドレス即ち最初に
CPUから要求のあつたアドレスを算出し、これ
とCPUメモリリードリクエストのブロツク内ワ
ードアドレスMALとを比較することによつて、
要求アドレスのデータが既にキヤツシユメモリ1
内に書込まれたデータかそうでないかを判定し、
判定信号JAGとして制御部5に通知する。既に
キヤツシユメモリ1に書込まれたデータである場
合、つまり判定信号JAGが論理“1”である場
合は、制御部5は、ブロツクロードによつてキヤ
ツシユメモリ1が専有されていないタイミングで
選択回路10を一時的にアドレスレジスタ7側に
切換え、アドレスレジスタ7をアドレスでキヤツ
シユメモリ1から読出されたキヤツシユリードデ
ータCRDを選択回路6で選択させ、出力データ
DTOとしてリプライ信号RPYとともにCPUへ送
出する。
一方、アドレス一致信号EQLが論理“1”で
判定信号JAGが“0”の場合は、CPUのメモリ
リードリクエスト信号REQはホールドされ、第
2図のCPUタイミングT14、あるいはT16
でメモリリプライ信号MRYが返却され、判定信
号JAGが“1”になるまで待たされる。制御部
5はメモリリプライ信号MRYとともに判定信号
JAGが“1”になつたタイミングで選択回路6
にメモリリードデータMRDを選択させ、リプラ
イ信号RPYとともにリードデータをCPUに送出
する。この動作は、第2図のCPUタイミングT
12でCPUがメモリリードリクエストREQを出
して、比較信号EQLと判定信号JAGがともに
“1”となつた場合も同様である。
判定信号JAGが“0”の場合は、CPUのメモリ
リードリクエスト信号REQはホールドされ、第
2図のCPUタイミングT14、あるいはT16
でメモリリプライ信号MRYが返却され、判定信
号JAGが“1”になるまで待たされる。制御部
5はメモリリプライ信号MRYとともに判定信号
JAGが“1”になつたタイミングで選択回路6
にメモリリードデータMRDを選択させ、リプラ
イ信号RPYとともにリードデータをCPUに送出
する。この動作は、第2図のCPUタイミングT
12でCPUがメモリリードリクエストREQを出
して、比較信号EQLと判定信号JAGがともに
“1”となつた場合も同様である。
以上説明したように、本発明は、ブロツクロー
ド中に後続のメモリリードリクエストが発生した
場合、発生したメモリリードリクエストのブロツ
クアドレスとブロツクロードのブロツクアドレス
が一致していれば、既にキヤツシユメモリに書込
まれたデータについては速やかにCPUに要求デ
ータが送出され、後続するメモリリプライデータ
がCPUの要求するメモリ読出しデータである場
合には、そのデータが返却された時点でCPUに
要求データが送出されるので、キヤツシユ制御装
置のスループツトを向上させることができる効果
がある。
ド中に後続のメモリリードリクエストが発生した
場合、発生したメモリリードリクエストのブロツ
クアドレスとブロツクロードのブロツクアドレス
が一致していれば、既にキヤツシユメモリに書込
まれたデータについては速やかにCPUに要求デ
ータが送出され、後続するメモリリプライデータ
がCPUの要求するメモリ読出しデータである場
合には、そのデータが返却された時点でCPUに
要求データが送出されるので、キヤツシユ制御装
置のスループツトを向上させることができる効果
がある。
第1図は本発明の一実施例を示すブロツク図お
よび、第2図は第1図の実施例の動作を説明する
ための動作タイムチヤートである。 図において、1はキヤツシユメモリ、2はカウ
ント回路、3は比較回路、4は判定回路、5は制
御部、6は選択回路、7はアドレスレジスタ、8
はブロツクロードアドレスレジスタである。
よび、第2図は第1図の実施例の動作を説明する
ための動作タイムチヤートである。 図において、1はキヤツシユメモリ、2はカウ
ント回路、3は比較回路、4は判定回路、5は制
御部、6は選択回路、7はアドレスレジスタ、8
はブロツクロードアドレスレジスタである。
Claims (1)
- 【特許請求の範囲】 1 キヤツシユメモリからの読出しデータとメイ
ンメモリからの読出しデータを選択する選択回路
と、 ブロツクロード中に処理装置から後続のメモリ
リードリクエストが発生し且つ前記後続のメモリ
リクエストのブロツクアドレスとキヤツシユメモ
リの書込みブロツクアドレスとが一致していると
き前記後続のメモリリードリクエストのアドレス
に対応するデータが既にキヤツシユメモリに書込
まれた否かを判定する判定回路と、 この判定回路で既に書込みが行なわれたと判定
された場合には、ブロツクロードによつてキヤツ
シユメモリが専有されていないタイミングで、前
記後続のメモリリードリクエストのアドレスでキ
ヤツシユメモリから読出されたデータを、前記選
択回路で選択させ、前記書込みが未だ終了してい
ないと判定された場合には、前記後続のメモリリ
ードリクエストのアドレスと同一のアドレスのメ
モリリプライデータが返却されるまで前記メモリ
リードリクエストを待ち合わせ、その返却と同時
にメモリリプライタイミングでメモリリプライデ
ータを前記選択回路で選択させる制御手段とを具
備したことを特徴とするキヤツシユメモリ制御装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60212821A JPS6272041A (ja) | 1985-09-25 | 1985-09-25 | キヤツシユメモリ制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60212821A JPS6272041A (ja) | 1985-09-25 | 1985-09-25 | キヤツシユメモリ制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6272041A JPS6272041A (ja) | 1987-04-02 |
JPH0556543B2 true JPH0556543B2 (ja) | 1993-08-19 |
Family
ID=16628911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60212821A Granted JPS6272041A (ja) | 1985-09-25 | 1985-09-25 | キヤツシユメモリ制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6272041A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0775611A2 (en) | 1993-12-22 | 1997-05-28 | Nihon Plast Co., Ltd. | Reel device for cable |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0278426A3 (en) * | 1987-02-07 | 1990-10-03 | Nec Corporation | Buffer memory circuit arrangement capable of receiving a request without qualification during block transfer |
JPS6479843A (en) * | 1987-09-22 | 1989-03-24 | Nec Corp | Information processor |
US4905188A (en) * | 1988-02-22 | 1990-02-27 | International Business Machines Corporation | Functional cache memory chip architecture for improved cache access |
DE69330875T2 (de) * | 1992-02-28 | 2002-04-11 | Oki Electric Industry Co., Ltd. | Cachespeichervorrichtung. |
JP3967921B2 (ja) * | 1999-11-16 | 2007-08-29 | 株式会社ルネサステクノロジ | データ処理装置及びデータ処理システム |
JP5583893B2 (ja) * | 2008-05-28 | 2014-09-03 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59177782A (ja) * | 1983-03-25 | 1984-10-08 | Nec Corp | バツフアメモリ制御方式 |
-
1985
- 1985-09-25 JP JP60212821A patent/JPS6272041A/ja active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59177782A (ja) * | 1983-03-25 | 1984-10-08 | Nec Corp | バツフアメモリ制御方式 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0775611A2 (en) | 1993-12-22 | 1997-05-28 | Nihon Plast Co., Ltd. | Reel device for cable |
Also Published As
Publication number | Publication date |
---|---|
JPS6272041A (ja) | 1987-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6324597B2 (en) | Host controller interface descriptor fetching unit | |
US5526508A (en) | Cache line replacing system for simultaneously storing data into read and write buffers having multiplexer which controls by counter value for bypassing read buffer | |
JPS5821353B2 (ja) | チヤネル対メモリ書込み装置 | |
JPH05173932A (ja) | データ転送装置 | |
JPS6235949A (ja) | メモリ−装置 | |
JP3444154B2 (ja) | メモリアクセス制御回路 | |
JPH0556543B2 (ja) | ||
CN110235113B (zh) | 存储器控制器和用于数据处理的系统和方法 | |
JPH0115903B2 (ja) | ||
JPH03147157A (ja) | 情報処理装置 | |
JPH08212178A (ja) | 並列計算機 | |
JPH0551933B2 (ja) | ||
JPH0415493B2 (ja) | ||
JPH09319657A (ja) | 命令読み込み用バッファを備えたプロセッサ | |
JP2924643B2 (ja) | ディジタル信号処理方法及び装置 | |
JPS59180878A (ja) | バツフアストア制御方式 | |
JPS61241825A (ja) | デ−タ転送方法 | |
JP2703255B2 (ja) | キャッシュメモリ書込み装置 | |
JPH0447350A (ja) | 主記憶読み出し応答制御方式 | |
JP2557857B2 (ja) | キヤツシユ記憶装置 | |
JPH0520192A (ja) | キヤツシユメモリのストア方式 | |
JP2507634B2 (ja) | 情報処理装置 | |
JPH11312123A (ja) | キャッシュ制御装置 | |
JPH0685154B2 (ja) | 中間バッファ制御方式 | |
JPH04359336A (ja) | キャッシュメモリのデータ置換回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |