JP2680293B2 - データ処理装置及びキャッシュメモリ制御方法 - Google Patents
データ処理装置及びキャッシュメモリ制御方法Info
- Publication number
- JP2680293B2 JP2680293B2 JP8036025A JP3602596A JP2680293B2 JP 2680293 B2 JP2680293 B2 JP 2680293B2 JP 8036025 A JP8036025 A JP 8036025A JP 3602596 A JP3602596 A JP 3602596A JP 2680293 B2 JP2680293 B2 JP 2680293B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- memory
- data
- address
- control circuit
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【0001】
【産業上の利用分野】本発明はバッファ記憶としてのキ
ャッシュ・メモリを有するデータ処理装置に係わる。
ャッシュ・メモリを有するデータ処理装置に係わる。
【0002】
【従来の技術】従来、マイクロコンピュータ等では入出
力装置を制御するために専用の命令を設けず、一般の命
令を用いて主メモリと同一のアドレス空間にある入出力
制御レジスタをアクセスすることによって入出力装置を
制御するメモリマップドI/O方式が多く用いられてい
る。
力装置を制御するために専用の命令を設けず、一般の命
令を用いて主メモリと同一のアドレス空間にある入出力
制御レジスタをアクセスすることによって入出力装置を
制御するメモリマップドI/O方式が多く用いられてい
る。
【0003】図1はメモリマップドI/O方式の例を示
すシステムのブロック図である。システムバス100に
接続された主メモリ2、入出力制御回路3,5はプロセ
ッサ1により制御される。主メモリ2、入出力制御回路
3,5にはそれぞれ固有のアドレスが割当てられ、プロ
セッサ1により入出力制御回路3,5内の制御レジスタ
の値が書き換えられて、入出力装置4,6が制御され
る。また、入出力装置4,6は、自己の状態が変化した
とき、入出力制御回路3,5内の状態レジスタの値を書
き換える。プロセッサ1は、ストア命令等により主メモ
リ2内の内容を書き換える場合、システムバス100に
主メモリ2の書き込みアドレス、書き込むデータおよび
ライトコマンドを出力する。また、ロード命令等により
主メモリ内の内容を読み出す場合、システムバス100
に主メモリ2の読み出しアドレスとリードコマンドを出
力し、主メモリ2からシステムバス100に出力される
データを読み出しデータとして取り込む。入出力装置4
が起動されるのは入出力制御回路3内の制御レジスタの
スタートビットがオンにされたときである。
すシステムのブロック図である。システムバス100に
接続された主メモリ2、入出力制御回路3,5はプロセ
ッサ1により制御される。主メモリ2、入出力制御回路
3,5にはそれぞれ固有のアドレスが割当てられ、プロ
セッサ1により入出力制御回路3,5内の制御レジスタ
の値が書き換えられて、入出力装置4,6が制御され
る。また、入出力装置4,6は、自己の状態が変化した
とき、入出力制御回路3,5内の状態レジスタの値を書
き換える。プロセッサ1は、ストア命令等により主メモ
リ2内の内容を書き換える場合、システムバス100に
主メモリ2の書き込みアドレス、書き込むデータおよび
ライトコマンドを出力する。また、ロード命令等により
主メモリ内の内容を読み出す場合、システムバス100
に主メモリ2の読み出しアドレスとリードコマンドを出
力し、主メモリ2からシステムバス100に出力される
データを読み出しデータとして取り込む。入出力装置4
が起動されるのは入出力制御回路3内の制御レジスタの
スタートビットがオンにされたときである。
【0004】例えば、ストア命令を実行するとき、書き
込みアドレスを制御レジスタの固有アドレスとして、ス
トア命令を実行することにより入出力装置4が起動され
る。一方、入出力装置4の動作の完了を知るために、上
述のロード命令等で入出力制御回路3内の状態レジスタ
を読み出して、この状態レジスタの動作完了ビットがオ
ンかどうかをチェックする。動作完了ビットがオンであ
れば、状態レジスタの他のビットをチェックすることに
より正常終了、異常終了等の完了状態を知ることができ
る。
込みアドレスを制御レジスタの固有アドレスとして、ス
トア命令を実行することにより入出力装置4が起動され
る。一方、入出力装置4の動作の完了を知るために、上
述のロード命令等で入出力制御回路3内の状態レジスタ
を読み出して、この状態レジスタの動作完了ビットがオ
ンかどうかをチェックする。動作完了ビットがオンであ
れば、状態レジスタの他のビットをチェックすることに
より正常終了、異常終了等の完了状態を知ることができ
る。
【0005】このように、メモリマップドI/O方式を
用いれば、専用の入出力命令を設けなくとも一般の命令
で入出力装置をきめこまかく制御できるという利点があ
る。
用いれば、専用の入出力命令を設けなくとも一般の命令
で入出力装置をきめこまかく制御できるという利点があ
る。
【0006】
【発明が解決しようとする課題】一方、マイクロプロセ
ッサ等の性能向上を図るために、マイクロプロセッサ等
にバッファ記憶(キャッシュ・メモリ)を設けている。
このバッファ記憶と上述したメモリマップドI/O方式
を組合わせた方式を採用すると次のような問題が発生す
る。図2を用いてこの問題点を明らかにする。
ッサ等の性能向上を図るために、マイクロプロセッサ等
にバッファ記憶(キャッシュ・メモリ)を設けている。
このバッファ記憶と上述したメモリマップドI/O方式
を組合わせた方式を採用すると次のような問題が発生す
る。図2を用いてこの問題点を明らかにする。
【0007】図2は、メモリマップドI/O方式におい
てバッファ記憶を用いたシステムの例を示すブロック図
である。
てバッファ記憶を用いたシステムの例を示すブロック図
である。
【0008】図2において、プロセッサ1は命令を実行
するプロセッサ本体10とバッファ記憶11から成り、
バッファ記憶11は主メモリ2を参照するためのアドレ
スとそのアドレスで示されている領域のデータを記憶し
ている。いま、命令フェッチやデータ読み出し等のため
プロセッサ本体10で主メモリ2上の領域のデータの参
照要求が生じると、まず最初に、バッファ記憶11がチ
ェックされ、この主メモリ2上の領域のデータがバッフ
ァ記憶11に記憶されている場合、バッファ記憶11の
該当するデータをプロセッサ本体10へ送り、読み出し
を終了する。しかし、主メモリ2上の領域のデータがバ
ッファ記憶11に記憶されていない場合、システムバス
100を介して主メモリ2から該当するデータの読み出
しを行い、読み出したデータをプロセッサ本体10へ送
ると共に、バッファ記憶11に記憶する。また、データ
書き込み時には、プロセッサ本体10から出力された書
き込みデータと書き込みアドレスは、システムバス10
0を介して主メモリ2に送られ、該当する書き込みデー
タが主メモリ2に書き込まれる。これと同時に、この書
き込みデータと書き込みアドレスは、バッファ記憶11
にも記憶される。
するプロセッサ本体10とバッファ記憶11から成り、
バッファ記憶11は主メモリ2を参照するためのアドレ
スとそのアドレスで示されている領域のデータを記憶し
ている。いま、命令フェッチやデータ読み出し等のため
プロセッサ本体10で主メモリ2上の領域のデータの参
照要求が生じると、まず最初に、バッファ記憶11がチ
ェックされ、この主メモリ2上の領域のデータがバッフ
ァ記憶11に記憶されている場合、バッファ記憶11の
該当するデータをプロセッサ本体10へ送り、読み出し
を終了する。しかし、主メモリ2上の領域のデータがバ
ッファ記憶11に記憶されていない場合、システムバス
100を介して主メモリ2から該当するデータの読み出
しを行い、読み出したデータをプロセッサ本体10へ送
ると共に、バッファ記憶11に記憶する。また、データ
書き込み時には、プロセッサ本体10から出力された書
き込みデータと書き込みアドレスは、システムバス10
0を介して主メモリ2に送られ、該当する書き込みデー
タが主メモリ2に書き込まれる。これと同時に、この書
き込みデータと書き込みアドレスは、バッファ記憶11
にも記憶される。
【0009】バッファ記憶11は主メモリ2と比べてア
クセス速度が速いため、以上のような制御を行うと、一
度読み出しまたは書き込みを行った主メモリ2上の領域
のデータはバッファ記憶11に記憶されているため、再
度主メモリ2上の同一領域のデータを参照するときのア
クセス時間を短縮できるという利点がある。
クセス速度が速いため、以上のような制御を行うと、一
度読み出しまたは書き込みを行った主メモリ2上の領域
のデータはバッファ記憶11に記憶されているため、再
度主メモリ2上の同一領域のデータを参照するときのア
クセス時間を短縮できるという利点がある。
【0010】ところが、入出力制御回路3または5内の
状態レジスタを参照する場合、次のような問題が生じ
る。
状態レジスタを参照する場合、次のような問題が生じ
る。
【0011】いま、プロセッサ1が状態レジスタをチェ
ックし、入出力装置4の動作完了を待つプログラムの実
行を行うものとする。プロセッサ本体10は、入出力制
御回路3内の状態レジスタの参照要求を行うと、状態レ
ジスタの値はプロセッサ本体10へ送られると同時に、
バッファ記憶11にも記憶される。プロセッサ本体10
は状態レジスタの完了ビットをチェックし、オンであれ
ば次のプログラムへ進み、オフであれば状態レジスタの
読み出しと完了ビットのチェックを繰り返す。しかし、
2回目以降の状態レジスタの読み出しではバッファ記憶
11に記憶された値が返されるため、入出力装置4が入
出力動作を完了し、入出力制御回路3内の状態レジスタ
の完了ビットをオンにしても、プロセッサ1はこれを検
出できないという問題がある。
ックし、入出力装置4の動作完了を待つプログラムの実
行を行うものとする。プロセッサ本体10は、入出力制
御回路3内の状態レジスタの参照要求を行うと、状態レ
ジスタの値はプロセッサ本体10へ送られると同時に、
バッファ記憶11にも記憶される。プロセッサ本体10
は状態レジスタの完了ビットをチェックし、オンであれ
ば次のプログラムへ進み、オフであれば状態レジスタの
読み出しと完了ビットのチェックを繰り返す。しかし、
2回目以降の状態レジスタの読み出しではバッファ記憶
11に記憶された値が返されるため、入出力装置4が入
出力動作を完了し、入出力制御回路3内の状態レジスタ
の完了ビットをオンにしても、プロセッサ1はこれを検
出できないという問題がある。
【0012】また、制御レジスタと状態レジスタが同じ
アドレスの異なるビットに割付けられている場合、およ
び同じアドレスに割付けられており、書き込み時には制
御レジスタが、読み出し時には状態レジスタがアクセス
されるような構成をとっている場合には、制御レジスタ
に書き込んだ値がバッファ記憶11に記憶されているた
め状態レジスタの読み出しを行うと制御レジスタの値が
読み出されるという問題がある。
アドレスの異なるビットに割付けられている場合、およ
び同じアドレスに割付けられており、書き込み時には制
御レジスタが、読み出し時には状態レジスタがアクセス
されるような構成をとっている場合には、制御レジスタ
に書き込んだ値がバッファ記憶11に記憶されているた
め状態レジスタの読み出しを行うと制御レジスタの値が
読み出されるという問題がある。
【0013】次に、負荷分散のために複数個のプロセッ
サを結合したマルチプロセッサ方式においてバッファ記
憶とプロセッサ間のメッセージの転送において発生する
問題について説明する。
サを結合したマルチプロセッサ方式においてバッファ記
憶とプロセッサ間のメッセージの転送において発生する
問題について説明する。
【0014】例えば、2つのプロセッサ間でメッセージ
の転送を行いながら処理を進めるシステムの場合の例
を、図3および図4のブロック図で示す。
の転送を行いながら処理を進めるシステムの場合の例
を、図3および図4のブロック図で示す。
【0015】図3は、プロセッサ1と7、それぞれのプ
ロセッサ専用のローカルメモリ2と2′およびメッセー
ジ通信用の共有メモリ8から成るシステムのブロック図
である。通常、各々のプロセッサ1または7は、自プロ
セッサのローカルメモリ2または2′を用いて処理を行
っているが、プロセッサ1からプロセッサ7に処理依頼
を行う場合、プロセッサ1は処理内容と処理に必要なデ
ータを共有メモリ8の予め定められた領域に書き、プロ
セッサ7に割込みをかける。プロセッサ7は割込みが生
ずると、共有メモリ8の内容を読み出し依頼された処理
を行う。プロセッサ7は、処理を終了すると、プロセッ
サ1に連絡するため共有メモリ8に結果を書き込み、プ
ロセッサ1に割込みをかける。その後、プロセッサ7は
以前の処理を続行する。プロセッサ1は、プロセッサ7
からの割込みにより共有メモリ8から処理結果を取り出
し、引き続き処理を続行する。プロセッサ1はプロセッ
サ7に依頼した処理が実行されている間は、ローカルメ
モリ2を用いて他の処理を行うことが出来る。
ロセッサ専用のローカルメモリ2と2′およびメッセー
ジ通信用の共有メモリ8から成るシステムのブロック図
である。通常、各々のプロセッサ1または7は、自プロ
セッサのローカルメモリ2または2′を用いて処理を行
っているが、プロセッサ1からプロセッサ7に処理依頼
を行う場合、プロセッサ1は処理内容と処理に必要なデ
ータを共有メモリ8の予め定められた領域に書き、プロ
セッサ7に割込みをかける。プロセッサ7は割込みが生
ずると、共有メモリ8の内容を読み出し依頼された処理
を行う。プロセッサ7は、処理を終了すると、プロセッ
サ1に連絡するため共有メモリ8に結果を書き込み、プ
ロセッサ1に割込みをかける。その後、プロセッサ7は
以前の処理を続行する。プロセッサ1は、プロセッサ7
からの割込みにより共有メモリ8から処理結果を取り出
し、引き続き処理を続行する。プロセッサ1はプロセッ
サ7に依頼した処理が実行されている間は、ローカルメ
モリ2を用いて他の処理を行うことが出来る。
【0016】図4は、2つのプロセッサ1,7がそれぞ
れ共通のシステムバス100に接続され、主メモリ2を
共有しているシステムのブロック図である。それぞれの
プロセッサは、互いに独立に主メモリ2にアクセスを行
うが、一方のプロセッサが主メモリ2をアクセス中の場
合、他方のプロセッサのアクセス要求は待たされるよう
制御される。このシステムにおいて、プロセッサ間のメ
ッセージ通信は、主メモリ2の特定領域を用いて行なわ
れ、メッセージを書く領域が主メモリ2内の特定領域で
ある点を除いて、図3に示されるシステムと同様の方式
がとられている。
れ共通のシステムバス100に接続され、主メモリ2を
共有しているシステムのブロック図である。それぞれの
プロセッサは、互いに独立に主メモリ2にアクセスを行
うが、一方のプロセッサが主メモリ2をアクセス中の場
合、他方のプロセッサのアクセス要求は待たされるよう
制御される。このシステムにおいて、プロセッサ間のメ
ッセージ通信は、主メモリ2の特定領域を用いて行なわ
れ、メッセージを書く領域が主メモリ2内の特定領域で
ある点を除いて、図3に示されるシステムと同様の方式
がとられている。
【0017】この2つのシステムにおいて、各プロセッ
サ1,7に一般的なバッファ記憶11,71を設ける
と、例えばプロセッサ1がメッセージ通信用領域に書き
込みを行った場合、プロセッサ1の有するバッファ記憶
11の値は書き込みと同時に更新されるが、プロセッサ
7のバッファ記憶71に同じアドレスの値が記憶されて
いてもその更新が行われないために、プロセッサ7がメ
ッセージ領域をアクセスしてもバッファ記憶71の情報
が読み出されてしまい、プロセッサ1からのメッセージ
を正しく受け取れないという問題が生じる。
サ1,7に一般的なバッファ記憶11,71を設ける
と、例えばプロセッサ1がメッセージ通信用領域に書き
込みを行った場合、プロセッサ1の有するバッファ記憶
11の値は書き込みと同時に更新されるが、プロセッサ
7のバッファ記憶71に同じアドレスの値が記憶されて
いてもその更新が行われないために、プロセッサ7がメ
ッセージ領域をアクセスしてもバッファ記憶71の情報
が読み出されてしまい、プロセッサ1からのメッセージ
を正しく受け取れないという問題が生じる。
【0018】従って本発明の目的とするところは、上記
問題点を解決するためになされたもので、マイクロプロ
セッサ等を有するデータ処理装置において、性能向上を
図るためのバッファ記憶を設けても、矛盾なくデータア
クセスを行うことにある。
問題点を解決するためになされたもので、マイクロプロ
セッサ等を有するデータ処理装置において、性能向上を
図るためのバッファ記憶を設けても、矛盾なくデータア
クセスを行うことにある。
【0019】
【課題を解決するための手段】バッファ記憶を有するマ
イクロプロセッサを用いる場合、入出力制御回路内のレ
ジスタや共有メモリのメッセージ領域などは当該マイク
ロプロセッサ以外の装置等の特定要因によってデータが
変化するものであり、このようなデータの変化を当該マ
イクロプロセッサが検出するのが困難な記憶手段上のデ
ータについてはバッファ記憶に保持しないように制御す
れば、当該マイクロプロセッサはバッファ記憶にアクセ
スせず外部の記憶手段に対してアクセスを行うため、常
に最新のデータを得ることが出来る。
イクロプロセッサを用いる場合、入出力制御回路内のレ
ジスタや共有メモリのメッセージ領域などは当該マイク
ロプロセッサ以外の装置等の特定要因によってデータが
変化するものであり、このようなデータの変化を当該マ
イクロプロセッサが検出するのが困難な記憶手段上のデ
ータについてはバッファ記憶に保持しないように制御す
れば、当該マイクロプロセッサはバッファ記憶にアクセ
スせず外部の記憶手段に対してアクセスを行うため、常
に最新のデータを得ることが出来る。
【0020】本願で開示される代表的な発明の概要は、
下記の通りである。
下記の通りである。
【0021】すなわち、命令の実行と論理アドレスの発
生を行うプロセッサ(10)と、上記プロセッサから受けた
論理アドレスの物理アドレスへの変換を行うメモリマネ
ージメントユニット(9)と、上記メモリマネージメント
ユニットからの物理アドレスに応答したデータを出力す
るメモリ回路(82)と、上記メモリ回路から読み出された
データを記憶するキャッシュメモリ(11)と、上記キャッ
シュメモリへのデータ書き込みを制御する制御回路(81,
13)とを具備し、上記制御回路は、上記メモリマネージ
メントユニットから出力された上記物理アドレスを取り
込み、該物理アドレスが上記メモリ回路の所定のアドレ
スをアクセスする際に上記メモリ回路から読み出された
データの上記キャッシュメモリへの書き込みを禁止する
というものである。
生を行うプロセッサ(10)と、上記プロセッサから受けた
論理アドレスの物理アドレスへの変換を行うメモリマネ
ージメントユニット(9)と、上記メモリマネージメント
ユニットからの物理アドレスに応答したデータを出力す
るメモリ回路(82)と、上記メモリ回路から読み出された
データを記憶するキャッシュメモリ(11)と、上記キャッ
シュメモリへのデータ書き込みを制御する制御回路(81,
13)とを具備し、上記制御回路は、上記メモリマネージ
メントユニットから出力された上記物理アドレスを取り
込み、該物理アドレスが上記メモリ回路の所定のアドレ
スをアクセスする際に上記メモリ回路から読み出された
データの上記キャッシュメモリへの書き込みを禁止する
というものである。
【0022】本発明のその他の目的と特徴は、以下の実
施例から明らかとなろう。
施例から明らかとなろう。
【0023】
【実施例】以下、本発明の一実施例を図5から図10を
用いて詳細に説明する。図5は本発明の一実施例を示す
全体システム構成図、図6から図10はそれぞれ図5中
の各ブロックの回路図である。
用いて詳細に説明する。図5は本発明の一実施例を示す
全体システム構成図、図6から図10はそれぞれ図5中
の各ブロックの回路図である。
【0024】図5において、マイクロプロセッサ1(以
下MPUと略す)、メモリマネージメントユニット9
(以下MMUと略す)、主メモリ2、共有メモリ8、入
出力制御回路3、入出力装置4、システムバス100お
よびシステムバスに接続される図示されない他のマイク
ロプロセッサ(以下MPUXと略す)から成る。
下MPUと略す)、メモリマネージメントユニット9
(以下MMUと略す)、主メモリ2、共有メモリ8、入
出力制御回路3、入出力装置4、システムバス100お
よびシステムバスに接続される図示されない他のマイク
ロプロセッサ(以下MPUXと略す)から成る。
【0025】MPU1は、命令の実行を行うプロセッサ
本体10、キャッシュメモリ11、キャッシュメモリ制
御回路13、リード/ライト制御回路14およびORゲ
ート15から成り、アドレス信号116、データ信号1
22、リード信号125、ライト信号124、PURG
E信号126、ACK信号128およびRMA信号12
7によってMMU9と接続され、また、データ信号12
2、リード信号125、ライト信号124、ACK信号
128およびRMA信号127によってシステムバス1
00と接続されている。ここで、ACK信号は動作終了
を示す信号であり、また、RMA信号はキャッシュ・メ
モリ11への書き込みの可否を表わす信号である。
本体10、キャッシュメモリ11、キャッシュメモリ制
御回路13、リード/ライト制御回路14およびORゲ
ート15から成り、アドレス信号116、データ信号1
22、リード信号125、ライト信号124、PURG
E信号126、ACK信号128およびRMA信号12
7によってMMU9と接続され、また、データ信号12
2、リード信号125、ライト信号124、ACK信号
128およびRMA信号127によってシステムバス1
00と接続されている。ここで、ACK信号は動作終了
を示す信号であり、また、RMA信号はキャッシュ・メ
モリ11への書き込みの可否を表わす信号である。
【0026】MMU9は、仮想記憶方式をサポートする
ためのアドレス変換機構であり、アドレス信号116上
の論理アドレスを内蔵するアドレス変換テーブルによっ
て物理アドレスに変換し、アドレス信号129を介して
システムバス100に出力する。主メモリ2は、主メモ
リ制御回路21と主メモリ記憶部22から成り、データ
信号152、アドレス信号159、リード信号155、
ライト信号154およびACK信号158によってシス
テムバス100に接続され、MPU1で処理を行うため
の命令およびデータを記憶する。
ためのアドレス変換機構であり、アドレス信号116上
の論理アドレスを内蔵するアドレス変換テーブルによっ
て物理アドレスに変換し、アドレス信号129を介して
システムバス100に出力する。主メモリ2は、主メモ
リ制御回路21と主メモリ記憶部22から成り、データ
信号152、アドレス信号159、リード信号155、
ライト信号154およびACK信号158によってシス
テムバス100に接続され、MPU1で処理を行うため
の命令およびデータを記憶する。
【0027】共有メモリ8は、共有メモリ制御回路81
および共有メモリ記憶部82から成り、データ信号14
2、アドレス信号149、リード信号145、ライト信
号144、ACK信号148およびRMA信号147に
よってシステムバス100に接続され、MPU1とMP
UXのメッセージ通信のためのデータおよびMPUXで
処理を行うための命令とデータを記憶する。
および共有メモリ記憶部82から成り、データ信号14
2、アドレス信号149、リード信号145、ライト信
号144、ACK信号148およびRMA信号147に
よってシステムバス100に接続され、MPU1とMP
UXのメッセージ通信のためのデータおよびMPUXで
処理を行うための命令とデータを記憶する。
【0028】入出力制御回路3は、データ信号132、
アドレス信号139、リード信号135、ライト信号1
34、ACK信号138およびRMA信号137によっ
てシステムバス100に接続され、信号130を介して
入出力装置4の制御および入出力データの転送を行う。
アドレス信号139、リード信号135、ライト信号1
34、ACK信号138およびRMA信号137によっ
てシステムバス100に接続され、信号130を介して
入出力装置4の制御および入出力データの転送を行う。
【0029】システムバス100において各装置のAC
K信号138,148,158およびRMA信号13
7,147はそれぞれワイアードORされ、MMU9、
主メモリ2、共有メモリ8または入出力制御回3のいず
れかによりACK信号またはRMA信号がオンにされる
と、MPU1に入力されるACK信号128またはRM
A信号127がオンになる。逆に、上記の装置すべての
ACK信号またはRMA信号がオフにされると、MPU
1に入力されるACK信号128またはRMA信号12
7はオフとなる。
K信号138,148,158およびRMA信号13
7,147はそれぞれワイアードORされ、MMU9、
主メモリ2、共有メモリ8または入出力制御回3のいず
れかによりACK信号またはRMA信号がオンにされる
と、MPU1に入力されるACK信号128またはRM
A信号127がオンになる。逆に、上記の装置すべての
ACK信号またはRMA信号がオフにされると、MPU
1に入力されるACK信号128またはRMA信号12
7はオフとなる。
【0030】以上の構成において、パワーオンリセット
時には、プロセッサ本体10により、信号113がオン
にされ、キャッシュメモリ制御回路13にキャッシュメ
モリ11のクリアが指示される。キャッシュメモリ制御
回路13は信号117をオンにして、キャッシュメモリ
11の記憶内容をすべて無効化する。
時には、プロセッサ本体10により、信号113がオン
にされ、キャッシュメモリ制御回路13にキャッシュメ
モリ11のクリアが指示される。キャッシュメモリ制御
回路13は信号117をオンにして、キャッシュメモリ
11の記憶内容をすべて無効化する。
【0031】また、読み出しを行うときは、プロセッサ
本体10により読み出すアドレスがアドレス信号116
に出力され信号111がオンにされる。読み出しまたは
書き込みの完了を表わす信号112がオンとなると、プ
ロセッサ本体10により、信号115上のデータが読み
出したデータとして取り込まれ、アドレス信号116へ
の出力をやめ、信号111がオフにされて読み出し動作
を終了する。
本体10により読み出すアドレスがアドレス信号116
に出力され信号111がオンにされる。読み出しまたは
書き込みの完了を表わす信号112がオンとなると、プ
ロセッサ本体10により、信号115上のデータが読み
出したデータとして取り込まれ、アドレス信号116へ
の出力をやめ、信号111がオフにされて読み出し動作
を終了する。
【0032】さらに、書き込みを行うとき、プロセッサ
本体10により、書き込みを行うアドレスがアドレス信
号116に、書き込むデータが信号115に出力され信
号110がオンにされる。読み出しまたは書き込みの完
了を表わす信号112がオンとなると、プロセッサ本体
10により、アドレス信号116および信号115への
出力をやめ、信号110がオフにされて書き込み動作を
終了する。
本体10により、書き込みを行うアドレスがアドレス信
号116に、書き込むデータが信号115に出力され信
号110がオンにされる。読み出しまたは書き込みの完
了を表わす信号112がオンとなると、プロセッサ本体
10により、アドレス信号116および信号115への
出力をやめ、信号110がオフにされて書き込み動作を
終了する。
【0033】次に、主メモリ2からの読み出しについ
て、キャッシュメモリ11との関係において説明する。
キャッシュメモリ11は、アドレス信号116に出力さ
れたアドレスが保持されているかどうかをチェックし、
保持されていれば信号121をオンにする。リード/ラ
イト制御回路14は、信号111がオンでかつ信号12
1がオンのとき、キャッシュメモリ11から読み出しを
行うものと判断して信号114をオンにしプロセッサ本
体10に読み出しの完了を通知する。これと並行して、
キャッシュメモリ制御回路13は、信号111および信
号121がオンのとき、信号119をオンにし、該当す
るデータをキャッシュメモリ11から信号115に出力
するように指示する。プロセッサ本体10はこの値を取
り込んで読み出しを終了する。
て、キャッシュメモリ11との関係において説明する。
キャッシュメモリ11は、アドレス信号116に出力さ
れたアドレスが保持されているかどうかをチェックし、
保持されていれば信号121をオンにする。リード/ラ
イト制御回路14は、信号111がオンでかつ信号12
1がオンのとき、キャッシュメモリ11から読み出しを
行うものと判断して信号114をオンにしプロセッサ本
体10に読み出しの完了を通知する。これと並行して、
キャッシュメモリ制御回路13は、信号111および信
号121がオンのとき、信号119をオンにし、該当す
るデータをキャッシュメモリ11から信号115に出力
するように指示する。プロセッサ本体10はこの値を取
り込んで読み出しを終了する。
【0034】一方、キャッシュメモリ11に該当するデ
ータが保持されていない場合には、信号121はオフと
なる。信号111がオンでかつ信号121がオフの場
合、リード/ライト制御回路14は、プロセッサ外部か
らの読み出しを行うために、リード信号125をオンに
する。MPU1から出力されたアドレスは、MMU9で
変換されシステムバス100に送られる。主メモリ制御
回路21は、アドレス信号159とリード信号155か
ら読み出し要求がなされたことを認識し、主メモリ記憶
部22から該当するデータを読み出し、データ信号15
2に出力するように制御を行う。読み出しが完了する
と、主メモリ制御回路21はACK信号158をオンに
してMPU1に知らせる。主メモリ制御回路21はRM
A信号と接続されていないため、RMA信号127はオ
フ、ACK信号128はオンとなる。ACK信号128
は、ORゲート15を介してプロセッサ本体10に接続
されており、読み出し完了が通知される。また、この
時、キャッシュメモリ制御回路13は信号119をオフ
にし、データ信号122と信号115を接続するように
キャッシュメモリ11に指示し、読み出されたデータは
プロセッサ本体10に転送される。さらにこの条件でか
つACK信号128がオン、RMA信号127がオフの
とき、キャッシュメモリ制御回路13は、信号120を
オン、信号118をオンにしてキャッシュメモリ11に
読み出したデータを記憶するように指示する。キャッシ
ュメモリ11は既に記憶しているデータの一つを消去
し、この読み出したデータとそのアドレスを記憶する。
以後、このアドレスへの読み出し要求があると、キャッ
シュメモリ11に記憶されたデータが読み出される。
ータが保持されていない場合には、信号121はオフと
なる。信号111がオンでかつ信号121がオフの場
合、リード/ライト制御回路14は、プロセッサ外部か
らの読み出しを行うために、リード信号125をオンに
する。MPU1から出力されたアドレスは、MMU9で
変換されシステムバス100に送られる。主メモリ制御
回路21は、アドレス信号159とリード信号155か
ら読み出し要求がなされたことを認識し、主メモリ記憶
部22から該当するデータを読み出し、データ信号15
2に出力するように制御を行う。読み出しが完了する
と、主メモリ制御回路21はACK信号158をオンに
してMPU1に知らせる。主メモリ制御回路21はRM
A信号と接続されていないため、RMA信号127はオ
フ、ACK信号128はオンとなる。ACK信号128
は、ORゲート15を介してプロセッサ本体10に接続
されており、読み出し完了が通知される。また、この
時、キャッシュメモリ制御回路13は信号119をオフ
にし、データ信号122と信号115を接続するように
キャッシュメモリ11に指示し、読み出されたデータは
プロセッサ本体10に転送される。さらにこの条件でか
つACK信号128がオン、RMA信号127がオフの
とき、キャッシュメモリ制御回路13は、信号120を
オン、信号118をオンにしてキャッシュメモリ11に
読み出したデータを記憶するように指示する。キャッシ
ュメモリ11は既に記憶しているデータの一つを消去
し、この読み出したデータとそのアドレスを記憶する。
以後、このアドレスへの読み出し要求があると、キャッ
シュメモリ11に記憶されたデータが読み出される。
【0035】次に、主メモリ2に対する書き込みについ
て説明する。信号110がオンになると、キャッシュメ
モリ制御回路13は、信号119をオフにし、キャッシ
ュメモリ11に対して信号115と信号122を接続す
るように指示する。この指示により書き込みデータがシ
ステムバス100へ転送される。リード/ライト制御回
路14は、信号110がオンになるとライト信号124
をオンにし、プロセッサ外部へ書き込みを指示し、ま
た、アドレス信号116上のアドレスは、MMU9で変
換されシステムバス100へ送られる。主メモリ制御回
路21は、アドレス信号159およびライト信号154
によって書き込み要求がなされたことを認識すると、デ
ータ信号152の値を該当するアドレスへ書き込むよう
に主メモリ記憶部22の制御を行い、終了時にACK信
号158をオンにする。これにより、ACK信号128
がオンになりORゲート15を介してプロセッサ本体1
0に書き込みの終了が通知される。
て説明する。信号110がオンになると、キャッシュメ
モリ制御回路13は、信号119をオフにし、キャッシ
ュメモリ11に対して信号115と信号122を接続す
るように指示する。この指示により書き込みデータがシ
ステムバス100へ転送される。リード/ライト制御回
路14は、信号110がオンになるとライト信号124
をオンにし、プロセッサ外部へ書き込みを指示し、ま
た、アドレス信号116上のアドレスは、MMU9で変
換されシステムバス100へ送られる。主メモリ制御回
路21は、アドレス信号159およびライト信号154
によって書き込み要求がなされたことを認識すると、デ
ータ信号152の値を該当するアドレスへ書き込むよう
に主メモリ記憶部22の制御を行い、終了時にACK信
号158をオンにする。これにより、ACK信号128
がオンになりORゲート15を介してプロセッサ本体1
0に書き込みの終了が通知される。
【0036】書き込み時にも、キャッシュメモリ11に
は該当アドレスのデータが記憶されているかどうかのチ
ェックが行われ、その結果が信号121に出力される。
ACK信号128がオン、RMA信号127がオフ、信
号110がオンの状態になると、キャッシュメモリ制御
回路13はキャッシュメモリ11への書き込みを指示す
るが、信号121がオンのときには信号118をオンお
よび信号120をオフにして、既に記憶されているアド
レスおよびデータのうちデータのみを書き換えるように
指示し、また、信号121がオフのときには信号118
と信号120をともにオンにし、既に記憶されているデ
ータの一つを消去して書き込みアドレスとデータを記憶
するように指示する。
は該当アドレスのデータが記憶されているかどうかのチ
ェックが行われ、その結果が信号121に出力される。
ACK信号128がオン、RMA信号127がオフ、信
号110がオンの状態になると、キャッシュメモリ制御
回路13はキャッシュメモリ11への書き込みを指示す
るが、信号121がオンのときには信号118をオンお
よび信号120をオフにして、既に記憶されているアド
レスおよびデータのうちデータのみを書き換えるように
指示し、また、信号121がオフのときには信号118
と信号120をともにオンにし、既に記憶されているデ
ータの一つを消去して書き込みアドレスとデータを記憶
するように指示する。
【0037】次に、メモリマップドI/O方式におい
て、入出力制御回路3内部の制御レジスタまたは状態レ
ジスタの読み出しの場合は、入出力制御回路3は、アド
レス信号139およびリード信号135からその要求を
知ると、読み出しデータをデータ信号132に出力し、
ACK信号138とRMA信号137をオンにする。信
号111がオン、ACK信号128およびRMA信号1
27がオンの場合、キャッシュメモリ制御回路13は信
号118をオンにしないためキャッシュメモリ11への
書き込みは行われない。ところが、信号121がオフで
あるため、信号122および信号115が接続されて、
読み出されたデータはプロセッサ本体10に転送され
る。
て、入出力制御回路3内部の制御レジスタまたは状態レ
ジスタの読み出しの場合は、入出力制御回路3は、アド
レス信号139およびリード信号135からその要求を
知ると、読み出しデータをデータ信号132に出力し、
ACK信号138とRMA信号137をオンにする。信
号111がオン、ACK信号128およびRMA信号1
27がオンの場合、キャッシュメモリ制御回路13は信
号118をオンにしないためキャッシュメモリ11への
書き込みは行われない。ところが、信号121がオフで
あるため、信号122および信号115が接続されて、
読み出されたデータはプロセッサ本体10に転送され
る。
【0038】また、入出力制御回路3内部の制御レジス
タまたは状態レジスタへの書き込みの場合、入出力制御
回路3はアドレス信号139およびライト信号134か
らその要求を知ると、データ信号132の値を書き込
み、ACK信号138およびRMA信号137をオンに
する。信号110がオン、ACK信号128およびRM
A信号127がオンの場合、キャッシュメモリ制御回路
13は信号118をオンにしないため、入出力制御回路
3内部の制御レジスタまたは状態レジスタのアドレスお
よびデータがキャッシュメモリ11に書き込まれること
はない。
タまたは状態レジスタへの書き込みの場合、入出力制御
回路3はアドレス信号139およびライト信号134か
らその要求を知ると、データ信号132の値を書き込
み、ACK信号138およびRMA信号137をオンに
する。信号110がオン、ACK信号128およびRM
A信号127がオンの場合、キャッシュメモリ制御回路
13は信号118をオンにしないため、入出力制御回路
3内部の制御レジスタまたは状態レジスタのアドレスお
よびデータがキャッシュメモリ11に書き込まれること
はない。
【0039】入出力制御回路3内部の制御レジスタおよ
び状態レジスタの読み出しまたは書き込みにおいて、キ
ャッシュメモリ11内にデータが記憶されているかどう
かのチェックが行われるが、データが記憶されていない
ため、信号121はオフとなる。したがって、読み出し
時には、常にプロセッサ外部から読み出される。
び状態レジスタの読み出しまたは書き込みにおいて、キ
ャッシュメモリ11内にデータが記憶されているかどう
かのチェックが行われるが、データが記憶されていない
ため、信号121はオフとなる。したがって、読み出し
時には、常にプロセッサ外部から読み出される。
【0040】従って、キャッシュメモリをバッファ記憶
として設けてもメモリマップI/O方式において、入出
力の制御を矛盾なく行うことができる。
として設けてもメモリマップI/O方式において、入出
力の制御を矛盾なく行うことができる。
【0041】次に、共有メモリ8に対する読み出しおよ
び書き込みについて説明する。共有メモリ8は、MPU
1とMPUXとのメッセージ通信領域とMPUXで処理
する命令およびデータを記憶する領域の2つの領域に分
けられ、MPU1からはメッセージ通信領域のみにアク
セスが行われる。共有メモリ制御回路81は、メッセー
ジ通信領域からの読み出しおよび書き込みの場合、常に
RMA信号147をオンにするため、前述した入出力制
御回路3内部の制御レジスタおよび状態レジスタと同様
にメッセージ通信領域のデータもMPU1のキャッシメ
モリ11に記憶されることはない。またMPUXもMP
U1と同様の構成であれば、MPUXのキャッシメモリ
へメッセージ通信領域のデータが記憶されることはな
い。一方、MPUXのための命令およびデータを記憶す
る領域を読み出しまたは書き込んだ場合、共有メモリ制
御回路81はRMA信号147をオフにするため、MP
UXは、該領域の値を自己のキャッシュメモリに書き込
むことができ、MPU1における主メモリ2と同様の処
理を行う。
び書き込みについて説明する。共有メモリ8は、MPU
1とMPUXとのメッセージ通信領域とMPUXで処理
する命令およびデータを記憶する領域の2つの領域に分
けられ、MPU1からはメッセージ通信領域のみにアク
セスが行われる。共有メモリ制御回路81は、メッセー
ジ通信領域からの読み出しおよび書き込みの場合、常に
RMA信号147をオンにするため、前述した入出力制
御回路3内部の制御レジスタおよび状態レジスタと同様
にメッセージ通信領域のデータもMPU1のキャッシメ
モリ11に記憶されることはない。またMPUXもMP
U1と同様の構成であれば、MPUXのキャッシメモリ
へメッセージ通信領域のデータが記憶されることはな
い。一方、MPUXのための命令およびデータを記憶す
る領域を読み出しまたは書き込んだ場合、共有メモリ制
御回路81はRMA信号147をオフにするため、MP
UXは、該領域の値を自己のキャッシュメモリに書き込
むことができ、MPU1における主メモリ2と同様の処
理を行う。
【0042】この制御は、共有メモリ制御回路81内
に、アドレスがMPU1の領域に属すかMPUXの領域
に属すかを判定する回路を設けることにより実現され
る。
に、アドレスがMPU1の領域に属すかMPUXの領域
に属すかを判定する回路を設けることにより実現され
る。
【0043】従って、マルチプロセッサ方式において、
キャッシュメモリをバッファ記憶として設けても、メッ
セージの交信を矛盾なく行うことができる。
キャッシュメモリをバッファ記憶として設けても、メッ
セージの交信を矛盾なく行うことができる。
【0044】ここでは、2個のプロセッサによるマルチ
プロセッサ方式の例を示したが、3個以上のプロセッサ
による場合も、同様の効果が得られることは容易に理解
できる。
プロセッサ方式の例を示したが、3個以上のプロセッサ
による場合も、同様の効果が得られることは容易に理解
できる。
【0045】さて、図5の各ブロックのうち主要なもの
の内部回路を図6〜図10を用いて説明する。
の内部回路を図6〜図10を用いて説明する。
【0046】図6はキャッシュメモリ11の回路図であ
り、連想メモリ16、カウンタ17、ANDゲート18
およびスイッチ19から成る。連想メモリ16は、アド
レス、データおよび有効ビットを記憶しており、アドレ
スチェックを行う場合には、アドレス信号116と一致
するアドレスを記憶しているエントリのデータおよび有
効ビットをそれぞれ信号160および信号121に出力
する。一致するアドレスが無い場合、信号121はオフ
にされる。また、信号117がオンにされると、連想メ
モリ16のすべての有効ビットがオフにされ、すべての
記憶の無効化が行われる。一方、信号118は連想メモ
リ16への書き込み信号であり、信号120がオフなら
ばアドレス信号116と一致するアドレスを有するエン
トリのデータフィールドに信号115の値を書き当該エ
ントリの有効ビットをオンにする。信号120がオンの
場合には、カウンタ17によって示されるエントリにア
ドレス信号116および信号115の値を書き込み有効
ビットをオンにする。この際、ANDゲート18の出力
がオンとなりカウンタ17の値は+1される。すなわ
ち、カウンタ17は、連想メモリ16に既に記憶されて
いるデータのうち一つを新しいものに書き換える場合
に、書き換えるべきエントリを示す働きをする。スイッ
チ19は信号119がオンのとき信号160と信号11
5を接続し、オフのとき信号122と信号115を接続
する双方向性のスイッチである。
り、連想メモリ16、カウンタ17、ANDゲート18
およびスイッチ19から成る。連想メモリ16は、アド
レス、データおよび有効ビットを記憶しており、アドレ
スチェックを行う場合には、アドレス信号116と一致
するアドレスを記憶しているエントリのデータおよび有
効ビットをそれぞれ信号160および信号121に出力
する。一致するアドレスが無い場合、信号121はオフ
にされる。また、信号117がオンにされると、連想メ
モリ16のすべての有効ビットがオフにされ、すべての
記憶の無効化が行われる。一方、信号118は連想メモ
リ16への書き込み信号であり、信号120がオフなら
ばアドレス信号116と一致するアドレスを有するエン
トリのデータフィールドに信号115の値を書き当該エ
ントリの有効ビットをオンにする。信号120がオンの
場合には、カウンタ17によって示されるエントリにア
ドレス信号116および信号115の値を書き込み有効
ビットをオンにする。この際、ANDゲート18の出力
がオンとなりカウンタ17の値は+1される。すなわ
ち、カウンタ17は、連想メモリ16に既に記憶されて
いるデータのうち一つを新しいものに書き換える場合
に、書き換えるべきエントリを示す働きをする。スイッ
チ19は信号119がオンのとき信号160と信号11
5を接続し、オフのとき信号122と信号115を接続
する双方向性のスイッチである。
【0047】図7はバッファ記憶にデータの保持を禁止
する手段を有するキャッシュメモリ制御回路13の回路
図であり、ORゲート51,53、ANDゲート52,
54およびラッチ55から成り、ORゲート51によっ
て、キャッシュメモリ11を無効化する信号117と、
ORゲート53およびANDゲート52によってキャッ
シュメモリ11への書き込みを指示する信号118と、
ANDゲート54によってキャッシュメモリ11内のス
イッチ19を制御する信号119とを発生させる。ま
た、ラッチ55は信号121の値を保持し、連想メモリ
16へアドレスおよび有効ビットを書き込むことにより
信号121の値が変化することを防止する。
する手段を有するキャッシュメモリ制御回路13の回路
図であり、ORゲート51,53、ANDゲート52,
54およびラッチ55から成り、ORゲート51によっ
て、キャッシュメモリ11を無効化する信号117と、
ORゲート53およびANDゲート52によってキャッ
シュメモリ11への書き込みを指示する信号118と、
ANDゲート54によってキャッシュメモリ11内のス
イッチ19を制御する信号119とを発生させる。ま
た、ラッチ55は信号121の値を保持し、連想メモリ
16へアドレスおよび有効ビットを書き込むことにより
信号121の値が変化することを防止する。
【0048】図8はリード/ライト制御回路14の回路
図であり、遅延回路56、ANDゲート57,58およ
び否定ゲート59より成り、キャッシュメモリ11でア
ドレスのチェックが行われ、信号121が確定するまで
の間、遅延回路56により信号121を参照しないよう
にする。
図であり、遅延回路56、ANDゲート57,58およ
び否定ゲート59より成り、キャッシュメモリ11でア
ドレスのチェックが行われ、信号121が確定するまで
の間、遅延回路56により信号121を参照しないよう
にする。
【0049】図9は検出手段を有する入出力制御回路3
の回路図であり、デコーダ60,ANDゲート63,6
5,66、ORゲート64、トライステートバッファ6
8、オープンエミッタバッファ61,62および状態レ
ジスタ67から成り、デコーダ60は、アドレス信号1
39をデコードし、入出力制御回路3が選択されている
かどうかの判定と、どのレジスタが選択されているかを
判定する。選択されているレジスタが予め定めた特定領
域に相当する状態レジスタであれば、RMA信号137
をオンにする。また、オープンエミッタバッファ61
は、RMA信号137のドライブを行い、オープンエミ
ッタバツファ62は、ACK信号138をドライブし、
RMA信号137、ACK信号138は、ワイアードO
Rされるため、オープンエミッタバッファ61,62で
ドライブする。状態レジスタ67への書き込み時には、
ANDゲート65の出力がオンとされて書き込みが行わ
れ、また、状態レジスタ67の読み出し時には、AND
ゲート66の出力がオンとされて、トライステートバッ
ファ68からデータ信号132への出力が行われる。状
態レジスタ67の各ビットは入出力装置4からの信号に
よってオンまたはオフに変化する。
の回路図であり、デコーダ60,ANDゲート63,6
5,66、ORゲート64、トライステートバッファ6
8、オープンエミッタバッファ61,62および状態レ
ジスタ67から成り、デコーダ60は、アドレス信号1
39をデコードし、入出力制御回路3が選択されている
かどうかの判定と、どのレジスタが選択されているかを
判定する。選択されているレジスタが予め定めた特定領
域に相当する状態レジスタであれば、RMA信号137
をオンにする。また、オープンエミッタバッファ61
は、RMA信号137のドライブを行い、オープンエミ
ッタバツファ62は、ACK信号138をドライブし、
RMA信号137、ACK信号138は、ワイアードO
Rされるため、オープンエミッタバッファ61,62で
ドライブする。状態レジスタ67への書き込み時には、
ANDゲート65の出力がオンとされて書き込みが行わ
れ、また、状態レジスタ67の読み出し時には、AND
ゲート66の出力がオンとされて、トライステートバッ
ファ68からデータ信号132への出力が行われる。状
態レジスタ67の各ビットは入出力装置4からの信号に
よってオンまたはオフに変化する。
【0050】図10は検出手段を有する共有メモリ制御
回路81の回路図であり、デコーダ69,80、オープ
ンエミッタバッファ86,87、ORゲート83、AN
Dゲート84、タイミング制御回路85から成る。デコ
ーダ69は、共有メモリ8が選択されているかどうかの
判定と、共有メモリ記憶部82へ送るアドレスの生成を
行い、またデコーダ80は選択されているのが予め定め
られた特定領域すなわちメッセージ通信領域かどうかの
判定を行う。特定領域であればRMA信号147をオン
にする。オープンエミッタバッファ86,87は、RM
A信号147およびACK信号148のドライブを行
う。ANDゲート84の出力がオンとなるのは、共有メ
モリ8へのアクセス要求があったときのみである。ま
た、タイミング制御回路85は共有メモリ記憶部82の
アクセスに必要な制御信号と動作完了信号を生成する。
回路81の回路図であり、デコーダ69,80、オープ
ンエミッタバッファ86,87、ORゲート83、AN
Dゲート84、タイミング制御回路85から成る。デコ
ーダ69は、共有メモリ8が選択されているかどうかの
判定と、共有メモリ記憶部82へ送るアドレスの生成を
行い、またデコーダ80は選択されているのが予め定め
られた特定領域すなわちメッセージ通信領域かどうかの
判定を行う。特定領域であればRMA信号147をオン
にする。オープンエミッタバッファ86,87は、RM
A信号147およびACK信号148のドライブを行
う。ANDゲート84の出力がオンとなるのは、共有メ
モリ8へのアクセス要求があったときのみである。ま
た、タイミング制御回路85は共有メモリ記憶部82の
アクセスに必要な制御信号と動作完了信号を生成する。
【0051】本実施例によれば、キャッシュメモリ11
とキャッシュメモリ制御回路13を含むマイクロプロセ
ッサ1において、キャッシュメモリ11にデータを書き
込むことを禁止するRMA信号がマイクロプロセッサ1
内のキャッシュメモリ制御回路13に入力されるように
構成されており、例えば、特定領域を示す情報を禁止条
件としてマイクロプロセッサ1と独立に構成できるた
め、汎用性のあるマイクロプロセッサを提供することが
できる。
とキャッシュメモリ制御回路13を含むマイクロプロセ
ッサ1において、キャッシュメモリ11にデータを書き
込むことを禁止するRMA信号がマイクロプロセッサ1
内のキャッシュメモリ制御回路13に入力されるように
構成されており、例えば、特定領域を示す情報を禁止条
件としてマイクロプロセッサ1と独立に構成できるた
め、汎用性のあるマイクロプロセッサを提供することが
できる。
【0052】ところで、図5において、MMU9内部に
ある仮想記憶方式に用いられるアドレス変換テーブル
は、MPU1からメモリマップドI/O方式によってア
クセスが可能である。
ある仮想記憶方式に用いられるアドレス変換テーブル
は、MPU1からメモリマップドI/O方式によってア
クセスが可能である。
【0053】アドレス信号116の値がアドレス変換テ
ーブルのアドレスであり、リード信号125またはライ
ト信号124がオンのときには、アドレス変換は行われ
ずアドレス変換テーブルの読み出しまたは書き込みが行
われる。この場合にも、ACK信号128およびRMA
信号127がオンにされる。
ーブルのアドレスであり、リード信号125またはライ
ト信号124がオンのときには、アドレス変換は行われ
ずアドレス変換テーブルの読み出しまたは書き込みが行
われる。この場合にも、ACK信号128およびRMA
信号127がオンにされる。
【0054】書き込みの場合には、さらにPURGE信
号126がオンにされる。キャッシュメモリ制御回路1
3はPURGE信号126を受けると、信号117をオ
ンにし、キャッシュメモリ11をすべて無効化する。
号126がオンにされる。キャッシュメモリ制御回路1
3はPURGE信号126を受けると、信号117をオ
ンにし、キャッシュメモリ11をすべて無効化する。
【0055】この無効化によって、キャッシュメモリ1
1内の論理アドレスのデータと実際のメモリ上の物理ア
ドレスのデータとの対応関係がくずれるのを防止するこ
とができる。例えば、論理アドレス100番地のデータ
がキャッシュメモリ11に記憶されているとする。この
データを読み出したときにはアドレス変換により物理ア
ドレス1000番地に対応していたものをアドレス変換
テーブルを書き換えて500番地に対応するようにした
とすると、プロセッサが100番地を読み出すとキャッ
シュメモリ11にある物理アドレス1000番地のデー
タが読み出されてしまい矛盾が生じる。これを防ぐた
め、アドレス変換テーブルが書き換えられた場合には、
PURGE信号を出して、キャッシュメモリ11を無効
化する。
1内の論理アドレスのデータと実際のメモリ上の物理ア
ドレスのデータとの対応関係がくずれるのを防止するこ
とができる。例えば、論理アドレス100番地のデータ
がキャッシュメモリ11に記憶されているとする。この
データを読み出したときにはアドレス変換により物理ア
ドレス1000番地に対応していたものをアドレス変換
テーブルを書き換えて500番地に対応するようにした
とすると、プロセッサが100番地を読み出すとキャッ
シュメモリ11にある物理アドレス1000番地のデー
タが読み出されてしまい矛盾が生じる。これを防ぐた
め、アドレス変換テーブルが書き換えられた場合には、
PURGE信号を出して、キャッシュメモリ11を無効
化する。
【0056】
【発明の効果】以上の説明から明らかなように、本発明
によれば、特定要因によって記憶内容が変化する特定領
域を含む記憶手段に対してプロセッサがアクセスすると
き、特定領域へのアクセスであればそのデータをバッフ
ァ記憶に保持することを禁止することにより、アクセス
したデータに矛盾が発生しないようになる。
によれば、特定要因によって記憶内容が変化する特定領
域を含む記憶手段に対してプロセッサがアクセスすると
き、特定領域へのアクセスであればそのデータをバッフ
ァ記憶に保持することを禁止することにより、アクセス
したデータに矛盾が発生しないようになる。
【図1】従来のメモリマップドI/O方式のシステムの
ブロック図である。
ブロック図である。
【図2】従来のメモリマップドI/O方式のシステムの
ブロック図である。
ブロック図である。
【図3】共有メモリを有する従来のマルチプロセッサ方
式のシステムのブロック図である。
式のシステムのブロック図である。
【図4】共有メモリを有する従来のマルチプロセッサ方
式のシステムのブロック図である。
式のシステムのブロック図である。
【図5】本発明の一実施例を示す全体システム構成図で
ある。
ある。
【図6】図5で示すキャッシュメモリの回路図である。
【図7】図5で示すキャッシュメモリ制御回路の回路図
である。
である。
【図8】図5で示すリード/ライト制御回路の回路図で
ある。
ある。
【図9】図5で示す入出力制御回路の回路図である。
【図10】図5で示す共有メモリ制御回路の回路図であ
る。
る。
1,7…マイクロプロセッサ(MPU,MPUX)、
2,2′…主メモリ、3…入出力制御回路、4…入出力
装置、8…共有メモリ、9…メモリマネジメントユニッ
ト(MMU)、10…プロセッサ本体、11…キャッシ
ュメモリ、13…キャッシュメモリ制御回路、14…リ
ード/ライト制御回路、21…主メモリ制御回路、22
…主メモリ記憶部、81…共有メモリ制御回路、82…
共有メモリ記憶部、100…システムバス、127,1
37,147…RMA信号、128,138,148,
158…ACK信号、116,129,139,14
9,159…アドレス信号、122,132,142,
152…データ信号、124,134,144,154
…ライト信号、125,135,145,155…リー
ド信号、126…PURGE信号。
2,2′…主メモリ、3…入出力制御回路、4…入出力
装置、8…共有メモリ、9…メモリマネジメントユニッ
ト(MMU)、10…プロセッサ本体、11…キャッシ
ュメモリ、13…キャッシュメモリ制御回路、14…リ
ード/ライト制御回路、21…主メモリ制御回路、22
…主メモリ記憶部、81…共有メモリ制御回路、82…
共有メモリ記憶部、100…システムバス、127,1
37,147…RMA信号、128,138,148,
158…ACK信号、116,129,139,14
9,159…アドレス信号、122,132,142,
152…データ信号、124,134,144,154
…ライト信号、125,135,145,155…リー
ド信号、126…PURGE信号。
Claims (1)
- 【請求項1】命令の実行と論理アドレスの発生を行うプ
ロセッサと、 上記プロセッサから受けた論理アドレスの物理アドレス
への変換を行うメモリマネージメントユニットと、 上記メモリマネージメントユニットからの物理アドレス
に応答したデータを出力するメモリ回路と、 上記メモリ回路から読み出されたデータを記憶するキャ
ッシュメモリと、 上記キャッシュメモリへのデータ書き込みを制御する制
御回路とを具備し、 上記制御回路は、上記メモリマネージメントユニットか
ら出力された上記物理アドレスを取り込み、該物理アド
レスが上記メモリ回路の所定のアドレスをアクセスする
際に上記メモリ回路から読み出されたデータの上記キャ
ッシュメモリへの書き込みを禁止することを特徴とする
データ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8036025A JP2680293B2 (ja) | 1996-02-23 | 1996-02-23 | データ処理装置及びキャッシュメモリ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8036025A JP2680293B2 (ja) | 1996-02-23 | 1996-02-23 | データ処理装置及びキャッシュメモリ制御方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5007357A Division JPH0724043B2 (ja) | 1993-01-20 | 1993-01-20 | データ処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9007250A Division JP2791319B2 (ja) | 1997-01-20 | 1997-01-20 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08235063A JPH08235063A (ja) | 1996-09-13 |
JP2680293B2 true JP2680293B2 (ja) | 1997-11-19 |
Family
ID=12458192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8036025A Expired - Lifetime JP2680293B2 (ja) | 1996-02-23 | 1996-02-23 | データ処理装置及びキャッシュメモリ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2680293B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE526946C2 (sv) * | 2003-06-13 | 2005-11-22 | Haldex Brake Prod Ab | Sensor system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5848289A (ja) * | 1981-09-17 | 1983-03-22 | Fuji Electric Co Ltd | バツフアメモリ制御方式 |
-
1996
- 1996-02-23 JP JP8036025A patent/JP2680293B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH08235063A (ja) | 1996-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR0154533B1 (ko) | 데이타 프로세서 | |
US5802576A (en) | Speculative cache snoop during DMA line update | |
US5148526A (en) | Data processing system with an enhanced cache memory control | |
US5249284A (en) | Method and system for maintaining data coherency between main and cache memories | |
US20030028728A1 (en) | Cache memory control device | |
KR19990045059A (ko) | 캐시 메모리 시스템 | |
JPH0711793B2 (ja) | マイクロプロセッサ | |
US7472227B2 (en) | Invalidating multiple address cache entries | |
US5678025A (en) | Cache coherency maintenance of non-cache supporting buses | |
JP2708943B2 (ja) | キャッシュメモリ制御装置 | |
US6851036B1 (en) | Method and apparatus for controlling external devices through address translation buffer | |
US5950227A (en) | CPU write-back cache coherency mechanism that transfers data from a cache memory to a main memory after access of the main memory by an alternative bus master | |
JP2680293B2 (ja) | データ処理装置及びキャッシュメモリ制御方法 | |
JP2580263B2 (ja) | バッファ記憶装置 | |
JPH0724043B2 (ja) | データ処理装置 | |
JPH09212420A (ja) | データ処理装置及びキャッシュメモリ制御方法 | |
JPH10232833A (ja) | データ処理システム | |
JPH0630074B2 (ja) | プロセッサ | |
JPS6329297B2 (ja) | ||
JPH06243037A (ja) | データ先読み装置 | |
JPH02213960A (ja) | キャッシュメモリ | |
KR20040047398A (ko) | 캐쉬 메모리를 이용한 데이터 억세스 방법 | |
JPS63247852A (ja) | キヤツシユメモリ制御方法 | |
JP2613258B2 (ja) | 情報処理方法及び装置 | |
JP2001043204A (ja) | キャッシュ・メモリ制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19961126 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19970624 |
|
EXPY | Cancellation because of completion of term |