JPH08235067A - I/oキャッシュメモリ - Google Patents

I/oキャッシュメモリ

Info

Publication number
JPH08235067A
JPH08235067A JP7038019A JP3801995A JPH08235067A JP H08235067 A JPH08235067 A JP H08235067A JP 7038019 A JP7038019 A JP 7038019A JP 3801995 A JP3801995 A JP 3801995A JP H08235067 A JPH08235067 A JP H08235067A
Authority
JP
Japan
Prior art keywords
data
write
valid
read
address
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.)
Withdrawn
Application number
JP7038019A
Other languages
English (en)
Inventor
Hitoshi Kinoshita
仁 木下
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 Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP7038019A priority Critical patent/JPH08235067A/ja
Publication of JPH08235067A publication Critical patent/JPH08235067A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 少ないハードウェア量でDMA転送時のリー
ド要求及びライト要求夫々共通に緩衝バッファを用い、
ブロック転送要求及び部分ライト要求に対応可能とす
る。 【構成】 アドレスタグ検出制御部3はI/Oバス11
0上のアドレスとそれに対応するアドレスタグ部1aの
アドレスとを比較する。バリッド検出制御部4はデータ
バリッド部1bとライトフラグ1cとリードフラグ1d
とに格納されたフラグ情報を検出する。データ制御部5
は各検出制御部の検出結果を基にデータRAM2に対す
る書込み及び読出しと、主記憶装置に対するDMAライ
ト及びDMAリードと、主記憶装置に対するコピーバッ
クとを夫々制御する。リード/ライトタグ制御部6はタ
グ部1に対するフラグ情報の書込み制御を行う。DMA
終了検出制御部7はI/OデバイスからのDMA終了信
号を検出する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はI/Oキャッシュメモリ
に関し、特にシステムバスと入出力バスとの間のデータ
転送に用いる緩衝バッファメモリに関する。
【0002】
【従来の技術】従来、この種のバッファメモリは、中央
処理装置(CPU)と主記憶装置(MEM)とが接続さ
れかつ高速バスであるシステムバスと、複数の入出力
(I/O)デバイスが夫々接続されかつ低速バスである
入出力バスとの間を接続するバス接続装置内に設けられ
ている。
【0003】このバス接続装置においては一般的に、I
/ODMA(入出力ダイレクトメモリアクセス)転送用
の緩衝バッファとしてライト及びリード夫々専用に設け
られた数段のライトバッファ及びリードバッファで構成
している。
【0004】
【発明が解決しようとする課題】上述した従来のバッフ
ァメモリでは、DMA転送用の緩衝バッファとしてライ
ト及びリード夫々専用に設けられた数段のライトバッフ
ァ及びリードバッファで構成されているので、複数の入
出力デバイスに対応させるにはビジー率を低減させるた
めにそれら緩衝バッファの数を増やさなければならず、
ハードウェアが増大してしまう。
【0005】また、高速バスであるシステムバス上の主
記憶装置とのコヒーレンシ制御ができないため、ライト
データを多く格納することができない。さらに、先行リ
ードも必要データ分だけプリフェッチしなければならな
いので、多くのデータを準備できないという制約があ
る。
【0006】そこで、本発明の目的は上記の問題点を解
消し、少ないハードウェア量でDMA転送時のリード要
求及びライト要求夫々共通に緩衝バッファを用いること
ができ、ブロック転送要求及び部分ライト要求に対応す
ることが可能なI/Oキャッシュメモリを提供すること
にある。
【0007】
【課題を解決するための手段】本発明によるI/Oキャ
ッシュメモリは、主記憶装置と複数の入出力デバイスと
の間のダイレクトメモリアクセスによるデータ転送に用
いられるI/Oキャッシュメモリであって、前記データ
転送のデータを一時保持する保持手段と、前記ダイレク
トメモリアクセスが前記主記憶装置への書込みであるこ
とを示すライトフラグと、前記ダイレクトメモリアクセ
スが前記主記憶装置からの読出しであることを示すリー
ドフラグと、前記保持手段のデータが有効であることを
示すバリッドフラグと、前記ダイレクトメモリアクセス
の対象のデータが前記保持手段に保持されているか否か
を検出する検出手段と、前記検出手段の検出結果と前記
ライトフラグの内容と前記リードフラグの内容と前記バ
リッドフラグの内容とに応じて前記保持手段に対するデ
ータの書込み及び読出しを制御する制御手段とを備えて
いる。
【0008】本発明による他のI/Oキャッシュメモリ
は、上記の構成のほかに、前記ダイレクトメモリアクセ
スが前記主記憶装置への書込みの時に前記ダイレクトメ
モリアクセスの終了を検出する検出手段と、前記検出手
段で前記ダイレクトメモリアクセスの終了が検出された
時にそのダイレクトメモリアクセスに対応する前記保持
手段の内容を前記主記憶装置に書込むライトバック手段
とを具備している。
【0009】
【作用】データRAMの有効無効を示すデータバリッド
部の内容と、DMAライトか否かを示すライトフラグの
内容と、DMAリードか否かを示すリードフラグの内容
とに基づいてデータRAMに対するDMAライト及びD
MAリードを制御する。これによって、データRAMを
少ないハードウェア量でDMAライト及びDMAリード
に共通に使用することが可能となる。
【0010】また、ストアインキャッシュ方式のデータ
RAMを用いるとともに、データバリッド部をタグ部の
一部として制御する。これによって、ブロック転送要求
及び部分ライト要求に対応することが可能となる。
【0011】さらに、DMA終了検出制御部がI/Oデ
バイスからのDMA終了信号を検出した時にアドレスタ
グ検出制御部とデータ制御部とリード/ライトタグ制御
部とレジスタとによりI/Oバスからの最後のDMAラ
イトデータを自動的に主記憶装置にコピーバックする。
これによって、データRAMにDMAライトデータが残
らないので、データRAM内のDMAライトデータが主
記憶装置にライトバックするまで待たせることなく、D
MA転送を実行させることができる。
【0012】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
【0013】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、本発明の一実施例によるI
/Oキュッシュメモリはタグ(Tag)部1と、データ
RAM2と、アドレスタグ検出制御部3と、バリッド
(Valid)検出制御部4と、データ制御部5と、リ
ード/ライトタグ制御部6と、DMA終了検出制御部7
と、レジスタ8〜11とから構成されており、レジスタ
8〜11を介してシステム(system)バス100
及びI/Oバス110に夫々接続されている。
【0014】尚、図示していないが、システムバス10
0には中央処理装置(CPU)及び主記憶装置(ME
M)が、I/Oバス110には複数のI/Oデバイスが
夫々接続されている。
【0015】タグ部1はデータRAM2にデータが保持
されているアドレスを格納するアドレスタグ部1aと、
データRAM2の各アドレスに保持されたデータが有効
か無効かを示す情報を格納するデータバリッド部1b
と、データRAM2の各アドレスに保持されたデータが
DMAライト要求時に保持されたものか否かを示す情報
を格納するライトフラグ1cと、データRAM2の各ア
ドレスに保持されたデータがDMAリード要求時に保持
されたものか否かを示す情報を格納するリードフラグ1
dとから構成されている。ここで、タグ部1はフルアソ
シアティブ方式であり、データRAM2はストアインキ
ャッシュ方式である。
【0016】アドレスタグ検出制御部3はレジスタ8を
通してI/Oバス110上から送られてきたアドレス
と、そのアドレスに対応してアドレスタグ部1aから出
力されたアドレスとを比較し、I/Oバス110上のア
ドレスがアドレスタグ部1a内にあるか否かを判定し、
その判定結果をバリッド検出制御部4からの情報に付加
してデータ制御部5及びリード/ライトタグ制御部6に
出力する。
【0017】バリッド検出制御部4はレジスタ8を通し
てタグ部1にアドレスが入力された時にデータバリッド
部1bとライトフラグ1cとリードフラグ1dとから夫
々そのアドレスに対応して出力される情報を検出し、そ
れらのフラグ情報をアドレスタグ検出制御部3に出力す
る。
【0018】データ制御部5はレジスタ10,11に夫
々保持されたデータのデータRAM2に書込み、データ
RAM2から読出したデータをレジスタ10,11に保
持するよう制御すると共に、主記憶装置に対するコピー
バックを制御する。
【0019】リード/ライトタグ制御部6はI/Oバス
110上のDMA要求がライト要求かリード要求かを判
別し、その判別結果とアドレスタグ検出制御部3の判定
結果とDMA終了検出制御部7の検出結果とに基づいて
タグ部1のデータバリッド部1bとライトフラグ1cと
リードフラグ1dとに対するフラグ情報の書込み制御を
行う。
【0020】DMA終了検出制御部7は各I/Oデバイ
スからのDMA終了信号線(図示せず)の内容を監視
し、I/OデバイスからのDMA終了信号を検出すると
その旨をアドレスタグ検出制御部3とデータ制御部5と
リード/ライトタグ制御部6とレジスタ8とに夫々通知
する。ここで、DMA終了信号線はI/Oバス110内
に設けられている。
【0021】図2は本発明の一実施例によるDMAライ
ト時の処理動作を示すフローチャートであり、図3は本
発明の一実施例によるDMAリード時の処理動作を示す
フローチャートである。これら図1〜図3を用いて本発
明の一実施例によるDMA転送時の処理動作について説
明する。
【0022】DMAライト時には、アドレスタグ検出制
御部3でレジスタ8を通してI/Oバス110上から送
られてきたアドレスとそのアドレスに対応してアドレス
タグ部1aから出力されたアドレスとが比較され、I/
Oバス110上のアドレスがアドレスタグ部1a内にあ
るか否かの判定(W−hit?)が行われる(図2ステ
ップS1)。このとき、I/Oバス110上のデータは
レジスタ10に保存される。
【0023】この場合、アドレスタグ検出制御部3でI
/Oバス110上のアドレスがアドレスタグ部1a内に
あると判定されると、データ制御部5はそのアドレスに
対応するデータRAM2の番地にレジスタ10に保存さ
れているデータを上書き(data update)す
る(図2ステップS2)。このとき、リード/ライトタ
グ制御部6はそのアドレスに対応するデータバリッド部
1b及びライトフラグ1cに夫々有効ビットをセットす
る。
【0024】このDMAライトの処理が終了した後に、
DMA終了検出制御部7がI/OデバイスからのDMA
終了信号を検出すると、その旨がアドレスタグ検出制御
部3とデータ制御部5とリード/ライトタグ制御部6と
レジスタ8とに夫々通知される。
【0025】レジスタ8はDMA終了検出制御部7から
DMA終了信号の検出が通知されると、その時保持して
いるアドレスをタグ部1とアドレスタグ検出制御部3と
レジスタ9とに夫々出力する。
【0026】アドレスタグ検出制御部3はDMA終了検
出制御部7からDMA終了信号の検出が通知されると、
レジスタ8から送られてきたアドレスに対応するタグ部
1のデータバリッド部1b及びライトフラグ1cに夫々
有効ビットがセットされているか否かを検出し、データ
バリッド部1b及びライトフラグ1cに夫々有効ビット
がセットされているアドレスをデータ制御部5に通知す
る。
【0027】データ制御部5はDMA終了検出制御部7
からDMA終了信号の検出が通知されると、アドレスタ
グ検出制御部3から送られてきたアドレス、つまりデー
タバリッド部1b及びライトフラグ1cに夫々有効ビッ
トがセットされているアドレスのデータをデータRAM
2から読出し、レジスタ11及びシステムバス100を
通して主記憶装置にコピーバックする。このとき、その
データバリッド部1b及びライトフラグ1cに夫々有効
ビットがセットされているアドレスはレジスタ9からシ
ステムバス100を通して主記憶装置に供給される。
【0028】アドレスタグ検出制御部3はI/Oバス1
10上のアドレスがアドレスタグ部1a内にないと判定
すると、アドレスの比較結果及びバリッド検出制御部4
の検出結果を基にタグ部1のステータスにエラーが有る
か否かを判定する(Err?)(図2ステップS3)。
アドレスタグ検出制御部3はエラー有りと判定すると、
保持部(図示せず)にステータスエラーをセットし、割
込み信号線(図示せず)を介して中央処理装置に割込み
を発行する(Err Set→INT)(図2ステップ
S4)。
【0029】アドレスタグ検出制御部3はエラー無しと
判定すると、あるいは中央処理装置に割込みを発行する
と、アドレスの比較結果及びバリッド検出制御部4の検
出結果を基にライトミスか否かを判定する(W−mis
s?)(図2ステップS5)。アドレスタグ検出制御部
3はライトミスであると判定すると、タグ部1のデータ
バリッド部1b全てに有効ビットがセットされているか
否かを判定する(all V?)(図2ステップS
7)。
【0030】アドレスタグ検出制御部3はデータバリッ
ド部1b全てに有効ビットがセットされていると判定す
ると、その旨をデータ制御部5に通知する。データ制御
部5はアドレスタグ検出制御部3からの通知を受ける
と、データRAM2内のデータ全てをレジスタ11及び
システムバス100を通して主記憶装置にライトバック
し[Write Back(Full)](図2ステッ
プS8)、その後にDMAライトデータをデータRAM
2内に書込み、タグ部1のデータバリッド部1b及びラ
イトフラグ1cに夫々有効ビットをセットする(Ta
g.V.datawrite)(図2ステップS6)。
【0031】また、アドレスタグ検出制御部3はデータ
バリッド部1b全てに有効ビットがセットされていない
と判定すると、その旨をデータ制御部5に通知する。デ
ータ制御部5はアドレスタグ検出制御部3からの通知を
受けると、データRAM2内のデータのうちデータバリ
ッド部1bに有効ビットがセットされているデータをリ
ードモディファイライトでレジスタ11及びシステムバ
ス100を通して主記憶装置にライトバックし[Wri
te Back(RMW)](図2ステップS9)、そ
の後にDMAライトデータをデータRAM2内に書込
み、タグ部1のデータバリッド部1b及びライトフラグ
1cに夫々有効ビットをセットさせる(図2ステップS
6)。
【0032】アドレスタグ検出制御部3はライトミスで
ないと判定すると、その旨をデータ制御部5に通知す
る。データ制御部5はアドレスタグ検出制御部3からの
通知を受けると、DMAライトデータをデータRAM2
内に書込み、タグ部1のデータバリッド部1b及びライ
トフラグ1cに夫々有効ビットをセットする(図2ステ
ップS6)。
【0033】このとき、アドレスがタグ部1に存在しな
く、データRAM2(キャッシュ領域)がいっぱいの場
合にはデータRAM2内の一番古い領域を割り当て、そ
の領域のデータが有効であるかどうかをバリッド検出制
御部4で確認する。
【0034】バリッド検出制御部4はライトフラグ1c
及びリードフラグ1dのどちらかに有効ビットがセット
されており、データバリッド部1bに有効ビットがセッ
トされていなければ、その旨をアドレスタグ検出部3を
介してデータ制御部5に通知する。
【0035】データ制御部5はアドレスタグ検出部3か
らの通知を受けると、つまりデータRAM2内のリード
またはライトでデータがインバリッドであれば、レジス
タ10のデータをデータRAM2に上書きし、タグ部1
のデータバリッド部1b及びライトフラグ1cに夫々有
効ビットをセットする。
【0036】バリッド検出制御部4はライトフラグ1c
及びデータバリッド部1bに有効ビットがセットされて
おり、しかも連続でなければ、その旨をアドレスタグ検
出部3を介してデータ制御部5に通知する。
【0037】データ制御部5はアドレスタグ検出部3か
らの通知を受けると、つまりデータRAM2内のデータ
がライトでかつバリッドであり、それが連続でなけれ
ば、主記憶装置から該当するアドレスのデータをシステ
ムバス100からレジスタ11を通して入力し、そのデ
ータをデータRAM2のデータとモディファイして主記
憶装置に書込んでから、その新しいデータをデータRA
M2に登録する。この場合も、タグ部1のデータバリッ
ド部1b及びライトフラグ1cに夫々有効ビットがセッ
トされる。
【0038】バリッド検出制御部4はライトフラグ1c
及びリードフラグ1dのどちらかに有効ビットがセット
されており、データバリッド部1bに有効ビットがセッ
トされていなければ、その旨をアドレスタグ検出部3を
介してデータ制御部5に通知する。
【0039】データ制御部5はアドレスタグ検出部3か
らの通知を受けると、レジスタ10のデータをデータR
AM2に上書きし、タグ部1のデータバリッド部1b及
びライトフラグ1cに夫々有効ビットをセットさせる。
【0040】このDMAライトの処理が終了した後に、
DMA終了検出制御部7がI/OデバイスからのDMA
終了信号を検出すると、その旨がアドレスタグ検出制御
部3とデータ制御部5とリード/ライトタグ制御部6と
レジスタ8とに夫々通知される。
【0041】レジスタ8はDMA終了検出制御部7から
DMA終了信号の検出が通知されると、その時保持して
いるアドレスをタグ部1とアドレスタグ検出制御部3と
レジスタ9とに夫々出力する。
【0042】アドレスタグ検出制御部3はDMA終了検
出制御部7からDMA終了信号の検出が通知されると、
レジスタ8から送られてきたアドレスに対応するタグ部
1のデータバリッド部1b及びライトフラグ1cに夫々
有効ビットがセットされているか否かを検出し、データ
バリッド部1b及びライトフラグ1cに夫々有効ビット
がセットされているアドレスをデータ制御部5に通知す
る。
【0043】データ制御部5はDMA終了検出制御部7
からDMA終了信号の検出が通知されると、アドレスタ
グ検出制御部3から送られてきたアドレス、つまりデー
タバリッド部1b及びライトフラグ1cに夫々有効ビッ
トがセットされているアドレスのデータをデータRAM
2から読出し、レジスタ11及びシステムバス100を
通して主記憶装置にコピーバックする。このとき、デー
タバリッド部1b及びライトフラグ1cに夫々有効ビッ
トがセットされているアドレスはレジスタ9からシステ
ムバス100を通して主記憶装置に供給される。
【0044】このように、低速バス(I/Oバス11
0)からの最後のDMAライトデータを自動的に主記憶
装置にコピーバックすることによって、データRAM2
にDMAライトデータが残らないので、データRAM2
内のDMAライトデータが主記憶装置にライトバックさ
れるまでDMA転送が待たされることがない。
【0045】一方、DMAリード時には、アドレスタグ
検出制御部3でレジスタ8を通してI/Oバス110上
から送られてきたアドレスとそのアドレスに対応してア
ドレスタグ部1aから出力されたアドレスとが比較さ
れ、I/Oバス110上のアドレスがアドレスタグ部1
a内にあるか否かの判定が行われる(hit?)(図3
ステップS11)。
【0046】アドレスタグ検出制御部3はI/Oバス1
10上のアドレスがアドレスタグ部1a内にあると判定
すると、アドレスの比較結果及びバリッド検出制御部4
の検出結果を基にDMAリードのバイト数やデータ位置
がデータRAM2内の有効データに含まれているか否か
を判断する(Request data V ok?)
(図3ステップS12)。
【0047】アドレスタグ検出制御部3はDMAリード
のバイト数やデータ位置がデータRAM2内の有効デー
タに含まれていると判断すると、その旨をデータ制御部
5に通知する。
【0048】データ制御部5はアドレスタグ検出部3か
らの通知を受けると、データRAM2内のデータをレジ
スタ10及びI/Oバス110を介してI/Oデバイス
に転送する(Read Service)(図3ステッ
プS15)。
【0049】また、アドレスタグ検出制御部3はDMA
リードのバイト数やデータ位置がデータRAM2内の有
効データに含まれていないと判断すると、その旨をデー
タ制御部5に通知する。
【0050】データ制御部5はアドレスタグ検出部3か
らの通知を受けると、主記憶装置から該当するブロック
データをシステムバス100及びレジスタ11を通して
読出し、そのブロックデータをデータRAM2に保持し
(MEM Blook Read)(図3ステップS1
3)、タグ部1のデータバリッド部1bに有効ビットを
セットさせる(data V set)(図3ステップ
S14)。
【0051】その後に、データ制御部5は主記憶装置か
ら読出してデータRAM2に保持したデータをレジスタ
10及びI/Oバス110を介してI/Oデバイスに転
送する(Read Service)(図3ステップS
15)。
【0052】アドレスタグ検出制御部3はI/Oバス1
10上のアドレスがアドレスタグ部1a内にないと判定
すると、アドレスの比較結果及びバリッド検出制御部4
の検出結果を基にタグ部1のステータスにエラーが有る
か否かを判定する(図3ステップS16)。アドレスタ
グ検出制御部3はエラー有りと判定すると、保持部にス
テータスエラーをセットし、割込み信号線を介して中央
処理装置に割込みを発行する(Err Set→IN
T)(図3ステップS17)。
【0053】アドレスタグ検出制御部3はエラー無しと
判定すると、あるいは中央処理装置に割込みを発行する
と、ライトフラグ1cに有効ビットがセットされている
か否かを判定する(W hit?)(図3ステップS1
8)。アドレスタグ検出制御部3はライトフラグ1cに
有効ビットがセットされていると判定すると、その旨を
データ制御部5に通知する。データ制御部5はアドレス
タグ検出制御部3からの通知を受けると、データRAM
2内のデータをレジスタ11及びシステムバス100を
通して主記憶装置にライトバックもしくはリードモディ
ファイライトする[Write Back(Full
or RMW)](図3ステップS19)。
【0054】アドレスタグ検出制御部3はライトフラグ
1cに有効ビットがセットされていないと判定すると、
その旨をデータ制御部5に通知する。データ制御部5は
アドレスタグ検出制御部3からの通知を受けると、該当
するDMAリードデータを主記憶装置からシステムバス
100及びレジスタ11を通して読出し、そのDMAリ
ードデータをデータRAM2に保持し[Replace
(Read & Set)](図3ステップS20)、
データRAM2に保持したデータをレジスタ10及びI
/Oバス110を介してI/Oデバイスに転送する(R
ead Service)(図3ステップS15)。
【0055】また、データ制御部5はデータRAM2内
のデータを主記憶装置にライトバックもしくはリードモ
ディファイライトすると、該当するDMAリードデータ
を主記憶装置からシステムバス100及びレジスタ11
を通して読出し、そのDMAリードデータをデータRA
M2に保持し[Replace(Read & Se
t)](図3ステップS20)、データRAM2に保持
したデータをレジスタ10及びI/Oバス110を介し
てI/Oデバイスに転送する(Read Servic
e)(図3ステップS15)。
【0056】ここで、コヒーレンシ制御では高速バス
(システムバス100)上における主記憶装置へのライ
トを常時モニタし、タグ部1の一致があった場合にその
エントリのデータバリッド部1bを無効にするという動
作を行う。
【0057】さらに、データRAM2がストアインキャ
ッシュ方式であるため、必然的にエントリのライトフラ
グがセットされ、主記憶装置の内容より新しい場合(デ
ータRAM2の内容がオーナである場合)があり得る。
その場合には最終的にI/OデバイスからのDMA転送
終了割込みまたはソフトウェアによるコマンドで主記憶
装置にライトバックを行うことで解決される。
【0058】図4は図1のアドレスタグ検出制御部3の
判定基準を示す図である。図においては、アドレスタグ
検出制御部3はアドレスの比較結果及びバリッド検出制
御部4の検出結果を基にタグ部1のステータスにエラー
が有るか否かを判定するための判定基準を示している。
【0059】アドレスタグ検出制御部3はデータバリッ
ト部1b(V)とリードフラグ1d(R)とライトフラ
グ1c(W)とアドレスの一致(hit)とからなるフ
ラグ情報が“0001”,“0010”,“001
1”,“0100”,“0101”,“0110”,
“0111”,“1000”,“1001”,“111
0”,“1111”の時にステータスエラーと判定し、
中央処理装置に割込み信号を発行して次の処理に移る
(Status Err→INT→next)(図4の
の状態参照)。
【0060】また、アドレスタグ検出制御部3はフラグ
情報(V,R,W,hit)が“1010”の時にライ
トミスと判定し(W−miss)(図4のの状態参
照)、フラグ情報(V,R,W,hit)が“101
1”の時にライトヒットと判定し(W−hit)(図4
のの状態参照)、フラグ情報(V,R,W,hit)
が“1100”の時にリードミスと判定し(R−mis
s)(図4のの状態参照)、フラグ情報(V,R,
W,hit)が“1101”の時にリードヒットと判定
する(R−hit)(図4のの状態参照)。
【0061】このように、タグ部1のデータバリッド部
1bの内容とライトフラグ1cの内容とリードフラグ1
dの内容とに基づいてデータRAM2に対するDMAラ
イト及びDMAリードを制御することによって、データ
RAM2を少ないハードウェア量でDMAライト及びD
MAリードに共通に使用することが可能となる。
【0062】また、ストアインキャッシュ方式のデータ
RAM2を用いるとともに、データバリッド部1bをタ
グ部1の一部として制御することで、ブロック転送要求
及び部分ライト要求に対応することが可能となる。
【0063】さらに、DMA終了検出制御部7がI/O
デバイスからのDMA終了信号を検出した時にアドレス
タグ検出制御部3とデータ制御部5とリード/ライトタ
グ制御部6とレジスタ8とにより低速バス(I/Oバス
110)からの最後のDMAライトデータを自動的に主
記憶装置にコピーバックすることによって、データRA
M2にDMAライトデータが残らないので、データRA
M2内のDMAライトデータが主記憶装置にライトバッ
クされるまで待たせることなく、DMA転送を実行させ
ることができる。
【0064】
【発明の効果】以上説明したように本発明のI/Oキャ
ッシュメモリによれば、データ転送のデータを一時保持
する保持手段に対するデータの書込み及び読出しを、ダ
イレクトメモリアクセスが主記憶装置への書込みである
ことを示すライトフラグの内容と、ダイレクトメモリア
クセスが主記憶装置からの読出しであることを示すリー
ドフラグの内容と、保持手段のデータが有効であること
を示すバリッドフラグの内容と、ダイレクトメモリアク
セスの対象のデータが保持手段に保持されているか否か
を検出する検出手段の検出結果とに応じて制御すること
によって、少ないハードウェア量でDMA転送時のリー
ド要求及びライト要求夫々共通に緩衝バッファを用いる
ことができ、ブロック転送要求及び部分ライト要求に対
応することが可能になるという効果がある。
【0065】また、本発明の他のI/Oキャッシュメモ
リによれば、ダイレクトメモリアクセスが主記憶装置へ
の書込みの時にそのダイレクトメモリアクセスの終了の
検出に応じてそれに対応する保持手段の内容を主記憶装
置にライトバックすることによって、保持手段内のDM
Aライトデータが主記憶装置にライトバックされるまで
待たせることなく、DMA転送を実行させることができ
るという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
【図2】本発明の一実施例によるDMAライト時の処理
動作を示すフローチャートである。
【図3】本発明の一実施例によるDMAリード時の処理
動作を示すフローチャートである。
【図4】図1のアドレスタグ検出制御部の判定基準を示
す図である。
【符号の説明】
1 タグ部 1a アドレスタグ部 1b データバリッド部 1c ライトフラグ 1d リードフラグ 2 データRAM 3 アドレスタグ検出制御部 4 バリッド検出制御部 5 データ制御部 6 リード/ライトタグ制御部 7 DMA終了検出部 8〜11 レジスタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 主記憶装置と複数の入出力デバイスとの
    間のダイレクトメモリアクセスによるデータ転送に用い
    られるI/Oキャッシュメモリであって、前記データ転
    送のデータを一時保持する保持手段と、前記ダイレクト
    メモリアクセスが前記主記憶装置への書込みであること
    を示すライトフラグと、前記ダイレクトメモリアクセス
    が前記主記憶装置からの読出しであることを示すリード
    フラグと、前記保持手段のデータが有効であることを示
    すバリッドフラグと、前記ダイレクトメモリアクセスの
    対象のデータが前記保持手段に保持されているか否かを
    検出する検出手段と、前記検出手段の検出結果と前記ラ
    イトフラグの内容と前記リードフラグの内容と前記バリ
    ッドフラグの内容とに応じて前記保持手段に対するデー
    タの書込み及び読出しを制御する制御手段とを有するこ
    とを特徴とするI/Oキャッシュメモリ。
  2. 【請求項2】 前記保持手段は、前記主記憶装置から前
    記入出力デバイスに転送されるデータと前記入出力デバ
    イスから前記主記憶装置に転送されるデータとを夫々一
    時保持するよう構成されたことを特徴とする請求項1記
    載のI/Oキャッシュメモリ。
  3. 【請求項3】 前記ダイレクトメモリアクセスが前記主
    記憶装置への書込みの時に前記ダイレクトメモリアクセ
    スの終了を検出する検出手段と、前記検出手段で前記ダ
    イレクトメモリアクセスの終了が検出された時にそのダ
    イレクトメモリアクセスに対応する前記保持手段の内容
    を前記主記憶装置に書込むライトバック手段とを含むこ
    とを特徴とする請求項1または請求項2記載のI/Oキ
    ャッシュメモリ。
  4. 【請求項4】 前記ライトバック手段は、前記ライトフ
    ラグの内容と前記バリッドフラグの内容とに基づいて前
    記保持手段の内容を前記主記憶装置に書込むよう構成さ
    れたことを特徴とする請求項3記載のI/Oキャッシュ
    メモリ。
JP7038019A 1995-02-27 1995-02-27 I/oキャッシュメモリ Withdrawn JPH08235067A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7038019A JPH08235067A (ja) 1995-02-27 1995-02-27 I/oキャッシュメモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7038019A JPH08235067A (ja) 1995-02-27 1995-02-27 I/oキャッシュメモリ

Publications (1)

Publication Number Publication Date
JPH08235067A true JPH08235067A (ja) 1996-09-13

Family

ID=12513872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7038019A Withdrawn JPH08235067A (ja) 1995-02-27 1995-02-27 I/oキャッシュメモリ

Country Status (1)

Country Link
JP (1) JPH08235067A (ja)

Similar Documents

Publication Publication Date Title
KR100252570B1 (ko) 축소된요구블로킹을갖는캐시메모리
JP3289661B2 (ja) キャッシュメモリシステム
US5765196A (en) System and method for servicing copyback requests in a multiprocessor system with a shared memory
CA2127081A1 (en) Processor interface chip for dual-microprocessor processor system
US5918069A (en) System for simultaneously writing back cached data via first bus and transferring cached data to second bus when read request is cached and dirty
JPH08185359A (ja) メモリサブシステム
JPH0337744A (ja) データ処理装置
JP2003316753A (ja) マルチプロセッサ装置
JP2695017B2 (ja) データ転送方式
US6345320B1 (en) DMA address buffer and cache-memory control system
EP0835490B1 (en) Write cache for write performance improvement
JPH06318174A (ja) キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法
JP3009430B2 (ja) プロセッサおよびそのキャッシュメモリ制御方法
US5920891A (en) Architecture and method for controlling a cache memory
JPH04336641A (ja) 処理システムにおける使用のためのデータキャッシュおよび方法
JPH10105461A (ja) 処理装置及びルックアサイド・キャッシュをスヌープする改善された装置及び方法
JPH08235067A (ja) I/oキャッシュメモリ
US20020169930A1 (en) Memory access control system, method thereof and host bridge
US5546560A (en) Device and method for reducing bus activity in a computer system having multiple bus-masters
JPH0784879A (ja) キャッシュメモリ装置
JP2001043204A (ja) キャッシュ・メモリ制御装置
US6266777B1 (en) Information processing apparatus to control bus latency
JP2636760B2 (ja) マルチプロセッサシステム
JP2703255B2 (ja) キャッシュメモリ書込み装置
JP3299147B2 (ja) キャッシュ制御回路

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020507