JPH083804B2 - キャッシュ内蔵プロセッサ - Google Patents

キャッシュ内蔵プロセッサ

Info

Publication number
JPH083804B2
JPH083804B2 JP63223469A JP22346988A JPH083804B2 JP H083804 B2 JPH083804 B2 JP H083804B2 JP 63223469 A JP63223469 A JP 63223469A JP 22346988 A JP22346988 A JP 22346988A JP H083804 B2 JPH083804 B2 JP H083804B2
Authority
JP
Japan
Prior art keywords
signal
address
bus
strobe signal
processor
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
JP63223469A
Other languages
English (en)
Other versions
JPH0272450A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63223469A priority Critical patent/JPH083804B2/ja
Publication of JPH0272450A publication Critical patent/JPH0272450A/ja
Publication of JPH083804B2 publication Critical patent/JPH083804B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔概要〕 マイクロプロセッサに関し、たとえばマルチプロセッ
サシステムもしくは直接メモリアクセス(DMA)転送シ
ステム等に用いられるキャッシュ内蔵プロセッサに適用
され、 ブロックアクセス中も外部からのバス要求を受付けら
れるようにして外部要求に対する柔軟性を向上させるこ
とを目的とし、 バスサイクル生成実行を可能とする外部デバイスおよ
び外部記憶装置がバスを介して非同期接続され得、命令
用またはデータ用のキャッシュを内蔵するプロセッサで
あって、前記外部デバイスから前記バスへデータアクセ
ス時に送出されるストローブ信号を検出してその有効期
間を内部クロックに同期させる同期化ストローブ信号有
効期間検出部と、該ストローブ信号の有効期間が前記内
部クロックに同期したときに前記プロセッサのバス放棄
中にあって前記外部デバイスから前記バスへのリード/
ライト信号を前記ストローブ信号で取込むリード/ライ
ト信号ラッチ部と、前記プロセッサが前記外部記憶装置
に対してワード単位でデータを連続してフェッチし、一
ブロックをまとめてキャッシュインするブロックアクセ
ス中にあって該プロセッサのバス放棄中に該プロセッサ
が実行する予定の実行保留アドレスをラッチする実行保
留アドレスラッチ部と、前記ストローブ信号の有効期間
が前記内部クロックに同期したときに前記外部デバイス
から前記バスへのアクセスドレスを監視アドレスとして
前記ストローブ信号で取込む監視アドレスラッチ部と、
前記ストローブ信号の有効期間が前記内部クロックに同
期したときにあり且つ前記リード/ライト信号が前記外
部デバイスのライト動作を示す時に前記実行保留アドレ
スラッチ部のアドレスと前記監視アドレスラッチ部に取
込まれた監視アドレスとをブロック単位で比較する比較
部とを具備し、該比較部の比較結果に応じて前記ブロッ
クアクセス動作を継続するか否かを判別するように構成
する。
〔産業上の利用分野〕
本発明はマイクロプロセッサに関し、たとえばマルチ
プロセッサシステムもしくは直接メモリアクセス(DM
A)転送システム等に用いられるキャッシュ内蔵プロセ
ッサに適用される。
〔従来の技術〕
従来のキャッシュ内蔵プロセッサを有するマルチプロ
セッサシステムもしくはDMA転送システムにおいて、プ
ロセッサ(CPU)が主記憶装置に対してニブルモード等
によるワード単位でデータを連続してフェッチし、一ブ
ロックをまとめてキャッシュインするブロックアクセス
を行うことがあり、このようなブロックアクセスの方法
として、主記憶装置側でインクリメントしてサポートす
る場合と、CPU側でインクリメントしてサポートする場
合がある。本発明は後者の場合を想定している。すなわ
ち、CPU側でインクリメントしてサポートする場合とし
て、CPUがブロックアクセス要求信号を主記憶装置に送
出したにもかかわらず主記憶装置からアクノリッジ信号
が折返されない場合に適用される。この場合、CPUは、3
2ビットマイクロプロセッサの場合、28ビットのブロッ
クアドレスと共にブロック内アドレス4ビットをインク
リメントして主記憶装置に送出する。すなわち、第8図
に示すように、1ブロック=16バイトで構成すれば、こ
の場合、下位アドレスとして4ビットのうち、上位2ビ
ットをワードアドレス、下位2ビットをバイトアドレス
とし、ブロック内アドレスとしては、4つのワードアド
レスADD,0000,0100,1000,1100(バイトアドレスは00に
固定)と共に各ワードの4バイトの有効、無効を示すバ
イトコントロール信号▲▼をCPU内で発生する。
〔発明が解決しようとする課題〕
しかしながら、CPU側でインクリメントしてサポート
する場合、第8図の例では、バスサイクルイメージがリ
ードサイクル4回分となるが、通常、このようなブロッ
クアクセス中は、外部たとえばDMACからのバス要求は受
付けられないようになっており、この結果、外部要求に
対して柔軟性が乏しいという課題があった。
従って、本発明の目的は、ブロックアクセス中も外部
からのバス要求を受付けられるようにして外部要求に対
する柔軟性を向上させることにある。
〔課題を解決するための手段〕
上述の課題を解決するための手段は第1図に示され
る。すなわち、バスサイクル生成実行を可能とする外部
デバイスたとえばDMACおよび外部記憶装置3がバス4を
介して非同期接続され得、命令用またはデータ用のキャ
ッシュ1aを内蔵するプロセッサ(CPU)が、同期化スト
ローブ信号有効期間検出部11、リード/ライト信号ラッ
チ部12、実行保留アドレスラッチ部13、監視アドレスラ
ッチ部14、および比較部15をさらに内蔵している。ここ
で、同期化ストローブ信号有効期間検出部11は外部デバ
イス2からバス4へデータアクセス時に送出されるスト
ローブ信号を検出してその有効期間を内部クロックに同
期させる。ストローブ信号▲▼の有効期間が内部ク
ロックに同期したときに、リード/ライト信号ラッチ部
12はプロセッサのバス放棄中にあって外部デバイス2か
らバス4へのリード/ライト信号R/をストローブ信号
で取込む。また、実行保留アドレスラッチ部13はプロセ
ッサが外部記憶装置に対してワード単位でデータを連続
してフェッチし、一ブロックをまとめてキャッシュイン
するブロックアクセス中にあって該プロセッサのバス放
棄中に該プロセッサが実行する予定の実行保留アドレス
をラッチする。さらに、ストローブ信号▲▼の有効
期間が内部クロックに同期したときに、監視アドレスラ
ッチ部14は外部デバイス2からバス4へのアクセスアド
レスADDを監視アドレスとしてストローブ信号で取込
む。この結果、ストローブ信号の有効期間が内部クロッ
クに同期したときにあり且つリード/ライト信号が外部
デバイスのライト動作を示すときに、比較部15は実行保
留アドレスラッチ部13のアドレスと監視アドレスラッチ
部14に取込まれた監視アドレスとをブロック単位で比較
する。そして、比較部の比較結果に応じて前記ブロック
単位でのデータのフェッチおよびキャッシュイン動作を
継続するようにしたものである。
〔作用〕
上述の手段によれば、外部デバイス2はプロセッサ1
に対して非同期に動作するが、外部デバイス2からバス
4(主記憶装置3)への書込み動作のみがプロセッサ1
の内蔵のハードウエアで監視され、アクセスアドレスが
監視アドレスとしてプロセッサ内部に取込まれる。この
結果、たとえば、第8図のバスサイクルXにおいて、プ
ロセッサ1のブロックアクセスの保留中に当該ブロック
が外部デバイス2により書込まれたときには、実行保留
動作を中断し、他方、当該ブロックが何ら書込み動作さ
れなければバス再獲得後継続動作を実行するようにな
る。
〔実施例〕
第2図は本発明に係るキャッシュ内蔵プロセッサを含
むDMA転送システムを示す回路図である。
第2図においては、高速バッファメモリ(キャッシ
ュ)1aを内蔵するワンチッププロセッサ(CPU)1、外
部デバイスとしてのDMA制御装置(DMAC)2および主記
憶装置(MS)3がバス4を介して接続されている。ここ
で、CPU1とDMACとは共にマスタとなり得るデバイスであ
って非同期で動作する。CPU1が動作中において、DMAC2
からのバス権要求を検出すると、CPU1は現在実行中のバ
スサイクル終了後にバスマスタ権をDMAC2に譲渡する。
この時点でバスマスタ権がDMAC2に移る。この結果、DMA
C2が主記憶装置3に対してバスサイクルを実行する。
他方、キャッシュ1aには、主記憶装置3の記憶内容の
うちCPU1の使用頻度の高いデータが予め記憶されてい
る。すなわち、主記憶装置3の記憶内容とキャッシュ1a
の有効な記憶内容とは一致していなければならず、従っ
て、DMAC2にバスマスタ権が移って主記憶装置3の記憶
内容がDMAC2によって書直されたときには、当該記憶内
容がキャッシュ1aの記憶内容に対応するのであれば、キ
ャッシュ1aのその記憶内容は無効化されなければならな
い。
第2図において、CPU1がバス4を介して主記憶装置3
に対してワード単位でデータを連続してフェッチし、一
ブロックをまとめてキャッシュインするためにブロック
アクセス要求信号BREQを送出した場合にあって、主記憶
装置3側でブロックアクセスをサポートしていない場合
には、主記憶装置3からアクノリッジ信号ACKは折返さ
れない。この場合、CPU1側でブロックアドレス(28ビッ
ト)と共にインクリメントされる下位アドレス(4ビッ
ト)を生成して主記憶装置3をアクセスすることにな
る。
第3図は第2図のCPU1の詳細を示すブロック回路図で
ある。第3図において、命令制御部21は、命令を格納す
る命令キュー211、命令をデコードする命令デコーダ21
2、内部並列処理を円滑に行うことを目的とするパイプ
ライン制御部213、デコードされた命令にもとづき種々
の制御信号を発生するμ−ROM214等により構成される。
命令実行部22は、アドレス発生回路221、レジスタファ
イル222、演算部223等により構成され、各部は命令制御
部21によって制御される。記憶制御部23は、命令アクセ
ス制御部231およびオペランドアクセス制御部232により
構成され、各制御部231(232)はアドレス変換バッファ
(TLB)231a(232a)およびキャッシュ231b(232b)を
有している。バス制御部24は、アドレス入出力部241、
バスアクセス制御部242およびデータ入出力部243を有し
ている。
第4図は第3図のバスアクセス制御部242とその周辺
の詳細な回路図である。
第4図において、アドレス入出力部241は2つのスル
ーラッチ301,302によって構成され、たとえば32ビット
の双方向のバスをなしている。すなわち、図示しないク
ロックによってスルーラッチ301がマスタ、スルーラッ
チ302がスレーブとなり、記憶制御部23からバス4へア
クセス要求アドレスが送出される。このアドレスの32ビ
ットのうち、上位28ビットは主記憶装置3のブロックア
ドレスを示し、下位4ビットは各ブロック内のアドレス
を示す。
バスアクセス制御部242のストローブ有効一定期間加
工部401および多段並列ストローブ有効検出部402は、第
1図の同期化ストローブ信号有効検出部11を構成してい
る。すなわち、ストローブ信号▲▼が1マシンサイ
クルより短い場合にはそのストローブ信号▲▼と同
一の長さの信号S1を生成し、他方、たとえ1マシンサイ
クル(内部4相クロック信号CLKで決定される)より長
くてもクロック信号CLKに同期した1マシンサイクルの
信号S1を生成する。すなわち、1マシンサイクルもしく
はそれより短い期間を有効期間として検出する。
403は後述するリード/ライト信号ラッチ部12および
監視アドレスラッチ部14のスレーブパルスを生成するス
レーブパルス生成部である。
404はストローブ信号S1の同期化指定位相パルスを検
出して信号S24として送出する同期化指定位相パルス検
出回路であり、この信号S24は監視アドレスイネーブル
信号生成部としてのノア回路408に供給される。
スルーラッチ405、アンド回路406、スルーラッチ407
は第1図のリード/ライト信号ラッチ部12を構成し、こ
の場合、スルーラッチ405,407はマスタ、スレーブなる
関係を有する。スルーラッチ405はストローブ信号▲
▼によって動作し、スルーラッチ407はスレーブパル
ス生成部403の信号S16によって動作する。なお、アンド
回路406を設けたのはリード/ライト信号ラッチ部12がC
PU1のバス放棄中すなわち監視モード中の場合のみ動作
させるためである。この場合、CPU1のバス放棄/獲得信
号はCPU1内部で発生する。
409はイネーブル信号を生成するための回路であっ
て、リード/ライト信号ラッチ回路12が書き込み信号を
ラッチした場合にのみ同期化指定位相パルス検出部404
の信号S24に応じて監視アドレスイネーブル信号として
作用する信号S25を生成する。この信号S25は監視アドレ
スイネーブル信号遅延部409によって遅延されてイネー
ブル信号ENとなる。
スルーラッチ401,411,412は第1図の監視アドレスラ
ッチ回路14を構成し、キャッシュ1aを16バイト1ブロッ
クで構成したとすれば、DMAC2のアクセス要求アドレス
の上位28ビットをラッチする。この場合、スルーラッチ
410,411はマスタ、スレーブの関係を有し、スルーラッ
チ411,412もマスタ、スレーブの関係を有する。スルー
ラッチ410はストローブ信号▲▼によって動作し、
スルーラッチ411はスレーブパルス生成部403の出力S12
によって動作し、スルーラッチ412はノア回路408の出力
S25によって動作する。なお、スルーラッチ401,411,412
のアドレスバスとアドレス入出力部241のスルーラッチ3
01,302のアドレスバスとが双方向関係にある。
413はバス放棄認識監視アドレス出力部であって、監
視アドレスラッチ部14によってラッチされた監視アドレ
スをCPU1がバス放棄中のみ後段に出力させるようにした
ものである。
イネーブル信号ENが発生した場合のみ、監視アドレス
ラッチ部14によってラッチされた監視アドレスは記憶制
御部23のラッチ回路501にラッチされる。この結果、ラ
ッチ回路501の監視アドレスとキャッシュのタグ部502に
格納されている各セットの登録済のアドレスとがその比
較器502aによって比較され、この比較結果はラッチ回路
503を介して各セット対応の有効/無効ビットとして書
込まれる。
また、同時に、イネーブル信号ENが発生した場合の
み、内部クロック信号P0に同期して、アドレス入出力部
241のスルーラッチ301のアドレスのうち実行保留アドレ
スとしての28ビットとスルーラッチ412にラッチされた
監視アドレスとが比較器601によって比較され、この比
較結果はスルーラッチ602に格納される。すなわち、CPU
1が主記憶装置3に対してワード単位でデータを連続し
てフェッチし、一ブロックをまとめてキャッシュインす
るブロックアクセス中にあってCPU1のバス放棄中にあれ
ば、比較器601の比較結果であるラッチ回路602の値に応
じてバスオペレーション制御部603は実行保留動作の中
断もしくはバス再獲後の継続動作を実行する。たとえ
ば、実行保留アドレスと監視アドレスとが一致すればバ
スオペレーション制御部603は記憶制御部23のアクセス
制御部604に対し実行保留動作の中断を指示し、他方、
一致がなければバスオペレーション制御部603は記憶制
御部23のメモリ管理制御部604に対しバス獲得後継続動
作を指示する。
なお、バスアクセス制御部242のバスオペレーション
制御部603は記憶制御部23のアクセス制御部604のコマン
ド実行要求信号に対して実行応答であるコマンド実行終
了信号を送出するものである。
第5図はさらに第4図の回路の詳細な回路図、第6図
は第5図のDフリップフロップFF1〜FF7の回路図、第7A
図は第5図の回路401,402の回路動作を示すタイミング
図、第7B図は第5図の回路403,404,408,409の回路動作
を示すタイミング図である。
なお、第5図の回路はCPU1の4つの内部クロック信号
P0,P1,P2,P3(第7A図、第7B図の最上段の数字は当該ク
ロック信号を示す)によって同期して動作する。
以下、第5図の回路について第7A図、第7B図を参照し
て説明する。
ストローブ有効一定期間加工部401はインバータG1
ナンド回路G2により構成されている。また、多数並列ス
トローブ有効検出部402においては、4つの直列3段接
続のスルーラッチLA1〜LA3,LA4〜LA6,LA7〜LA9,LA10〜L
A12を並列接続してあり、さらに、アンド回路G3、ナン
ド回路G4を設けてある、すなわち、ストローブ信号▲
▼が立下ると、第7A図に示すごとく、ナンド回路G2
信号S1は立下る。ストローブ信号▲▼がローレベル
である間は、3段直列接続のスルーラッチが内部クロッ
ク信号P0,P1,P2,P3によって該ローレベルを通過させて
いくが、この場合、アンド回路G3の少なくとも1つの入
力がローレベルとなるとアンド回路G3の出力S14は立下
るので最初にローレベルを取込んだスルーラッチLA1,LA
4,LA7,LA10の1つが多段並列ストローブ有効検出部402
の動作を決定する。たとえば1段目のスルーラッチLA1,
LA4,LA7,LA10のうちLA1がクロック信号P0によってロー
レベルを通過させ、次いで、2段目のスルーラッチLA2
がクロック信号P2によってスルーラッチLA1を通過した
ローレベル出力を通過させ、さらに3段目のスルーラッ
チLA3がクロック信号P0によってスルーラッチLA2を通過
したローレベル出力を通過させ、この結果、アンド回路
G3の出力S14が立上る。この期間は、クロック信号P0→P
2→P0によって行われるので、1マシンサイクルに相当
する。従って、ストローブ信号▲▼が1マシンサイ
クル以上にローレベルを保持すると、ナンド回路G2の出
力S1はアンド回路G3の出力S14によって強制的に立上る
ことになる。このように、ストローブ信号▲▼の有
効期間信号S1は1マシンサイクル相当以上にならず、従
って、ストローブ信号▲▼のローレベルが長くなっ
ても、後段の回路動作は1回しか行わないことになり、
電力消費の点で有利である。
なお、ナンド回路G4はスレーブパルス生成部403のた
めのものである。すなわち、ナンド回路G4は、3段直列
接続のうち2段目のスルーラッチLA2,LA5,LA8,LA11の各
出力に接続されている。1段目と2段目のスルーラッチ
の動作は2クロック分だけ遅れており、この場合にも、
ナンド回路G4の少なくとも1つの入力がローレベルにな
るとナンド回路G4の出力S15は立上るので、最初にロー
レベルが通過したスルーラッチLA1,LA4,LA7,LA10の1つ
がナンド回路G4の動作を決定する。従って、ナンド回路
G4はストローブ信号▲▼の立下り後2クロック分だ
け遅れて2クロック分のパルス信号S15を発生する。
スレーブパルス生成部403としてのゲートG5には、上
述のナンド回路G4出力S15と共にストローブ信号▲
▼が供給されている。従って、ゲートG5は、ストローブ
信号▲▼の立下り後に1クロック分のパルス信号S
16を生成する。このパルス信号S16はリード/ライト信
号ラッチ回路の2段目のラッチとしてのスルーラッチLA
14(407)および監視アドレスラッチ回路の2段目のラ
ッチとしてのスルーラッチLA16(411)を動作させる。
なお、各回路の1段目のラッチとしてのスルーラッチLA
13(405)およびスルーラッチLA15(410)はストローブ
信号▲▼によって動作する。また、上述のごとく、
アンド回路G6(406)の存在のために、リード/ライト
信号ラッチ回路12はCPU1のバス放棄中でなければ動作し
ない。
同期化指定位相パルス検出部404においては、3つの
直列2段接続のDフリップフロップFF1,FF2;FF3,FF4;FF
5,FF6を並列接続し、これらにアンド回路G7を接続し、
さらに、DフリップフロップFF7を接続する。有効期間
信号S1がローレベルである間は、内部クロック信号P0,P
2,03によってDフリップフロップFF1,FF3,FF5が該ロー
レベルを取込んでいくが、この場合、アンド回路G7の少
なくとも1つの入力がローレベルとなるとアンド回路G7
の出力S23は立下るので、最初にローレベルを取込んだ
DフリップフロップFF1,FF3,FF5の1つが同期化指定位
相パルス検出部404の動作を決定する。たとえば、1段
目のDフリップフロップFF1,FF3,FF5のうちFF1がクロッ
ク信号P0によってローレベルを取込み、次いで、2段目
のDフリップフロップFF2がクロック信号P1によってD
フリップフロップFF1のローレベル出力を取込み、この
結果、アンド回路G7の出力S13がローレベルとなり、次
いで、DフリップフロップFF1がセットされる。その
後、DフリップフロップFF1がハイレベルを取込むのは
クロック信号P0により、さらに、DフリップフロップFF
2がDフリップフロップFF1のハイレベル出力S17を取込
むのはクロック信号P1による。従って、アンド回路G7
出力S23がローレベルとなる時点(クロック信号P1)か
らハイレベル時点(クロック信号P1)までの期間は1マ
シンサイクルとなる。しかるに、DフリップフロップFF
7はクロック信号P3によってセットされ、クロック信号P
2によって動作するので、アンド回路G7の出力S23が1マ
シンサイクル間ローレベルであれば必ずクロック信号P2
の指定位相でDフリップフロップFF7の出力S24はローレ
ベルとなる。つまり、ストローブ信号▲▼の有効期
間S1に対して同期化された指定位相でパルス信号が検出
されることになる。
書込み信号がリード/ライト信号ラッチ部12によって
ラッチされ、且つ同期化指定位相パルスS24が検出され
た場合にのみ、イネーブル信号の生成のためのノア回路
G8の出力S25は指定位相P2に同期した正のパルスとな
る。この結果、このパルス信号S25は監視アドレスラッ
チ部14のスルーラッチLA17のスレーブ信号となる。
アンド回路G9、およびナンド回路G10およびPチャネ
ルトランジスタQNに構成されるバス放棄認識監視アドレ
ス出力部413はラッチされた監視アドレスをCPU1のバス
放棄中の条件のもとでクロック信号P0の指定位相で監視
アドレスとして記憶制御部23のラッチ回路501(第4
図)に送出するためのものである。すなわち、クロック
信号P2によってノードNはPチャネルトランジスタQP
よってプリチャージされてハイレベル電位VCCとなり、
他方、CPU1のバス放棄中にあっては、アンド回路G9の出
力はクロック信号P0に同期してハイレベルとなり、この
結果、監視アドレスの“1",“0"に応じてNチャネルト
ランジスタQNはオンとなる。たとえば、“0"であればト
ランジスタQNはオンとなり、ノードNは放電されてGND
となり、他方“1"であればトランジスタQNはオフとな
り、ノードNの電位はVCCを保持する。
RSフリップフロップFF8、スルーラッチLA18、ノア回
路G11は第4図の監視アドレスイネーブル信号遅延部409
を構成する。すなわち、クロック信号P2に同期したハイ
レベルパルス信号S25が発生すると、RSフリップフロッ
プFF8がセットされその出力Q(S26)がハイレベルとな
り、また同時に、スルーラッチLA18をクロック信号P2に
同期して動作するのでその出力S27はローレベルとな
る。次いで、RSフリップフロップFF8がクロック信号P0
によってリセットされ、さらに、スルーラッチLA18がRS
フリップフロップFF8のの出力(ハイレベル)をクロ
ック信号P2によって通過させる。この結果、ノア回路G
11の出力はクロック信号P0により立上りクロック信号P2
により立下る正のパルス信号となる。つまり、イネーブ
ル信号ENはノア回路G8の出力S25を2クロック分(P2→P
0)だけ遅延させた信号である。
ストローブ信号▲▼の有効期間が内部クロック信
号に同期して検出され、CPU1のバス放棄中にリード/ラ
イト信号ラッチ部12によって書込み信号がラッチされ、
監視アドレスラッチ部14によって監視アドレスがラッチ
され、且つイネーブル信号ENが発生すると、第4図のキ
ャッシュ502のタグ部の比較器502aにおいて、監視アド
レスと登録済のアドレスとが比較され、一致していれば
有効/無効ビットが無効とされる(たとえば“0")。こ
の結果、1ブロック分のデータが無効化される。
さらに、イネーブル信号ENが発生すると、クロック信
号P0に同期して実行保留アドレスと監視アドレスとの比
較のための比較器601の動作が行われ、この比較結果は
ラッチ回路602に格納される。
なお、上述の実施例においては、CPU1に1つのキャッ
シュたとえば命令用キャッシュを設けた場合であるが、
本発明は命令用およびデータ用の2つのキャッシュを設
けた場合にも適用し得る。
〔発明の効果〕
以上説明したように本発明によれば、キャッシュ内蔵
プロセッサの内部に、外部デバイスのバスを介した主記
憶への書込み動作を監視するハードウェアを設けたの
で、プロセッサの主記憶へのブロックアクセス中にあっ
ても、外部デバイスからのバス要求に応じることができ
る。さらに、本発明のキャッシュ内蔵プロセッサによれ
ば、プロセッサの主記憶へのブロックアクセスの保留中
に当該ブロックが外部デバイスにより書込まれたときに
は、該プロセッサの実行保留動作を中断し、また、当該
ブロックが何ら書込み動作されなければプロセッサはバ
ス再獲得後継続動作を実行するようにしたので、無駄な
処理を低減して全体的な処理速度を向上することができ
る。
【図面の簡単な説明】
第1図は本発明の基本構成を示すブロック回路図、 第2図は本発明に係るキャッシュ内蔵プロセッサを含む
DMA転送システムを示すブロック回路図、 第3図は第2図のCPUの詳細を示すブロック回路図、 第4図は第3図のバスアクセス制御部およびその周辺の
詳細なブロック回路図、 第5図は第4図のバスアクセス制御部のさらに詳細なブ
ロック回路図、 第6図は第5図にDフリップフロップの論理回路図、 第7A図、第7B図は第5図の回路動作を示すタイミング
図、 第8図はブロックアクセスを説明する図である。 1…キャッシュ内蔵CPU、1a…キャッシュ、2…DMAC、
3…主記憶装置、4…バス、11…同期化ストローブ信号
有効期間検出部、12…リード/ライト信号ラッチ部、13
…監視アドレスイネーブル信号生成部、14…監視アドレ
スラッチ部、15(601)…比較部。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】バスサイクル生成実行を可能とする外部デ
    バイス(2)および外部記憶装置(3)がバス(4)を
    介して非同期接続され得、命令用またはデータ用のキャ
    ッシュ(1a)を内蔵するプロセッサであって、 前記外部デバイスから前記バスへデータアクセス時に送
    出されるストローブ信号を検出してその有効期間を内部
    クロックに同期させる同期化ストローブ信号有効期間検
    出部(11)と、 該ストローブ信号の有効期間が前記内部クロックに同期
    したときに前記プロセッサのバス放棄中にあって前記外
    部デバイスから前記バスへのリード/ライト信号(R/
    W)を前記ストローブ信号で取込むリード/ライト信号
    ラッチ部(12)と、 前記プロセッサが前記外部記憶装置に対してワード単位
    でデータを連続してフェッチし、一ブロックをまとめて
    キャッシュインするブロックアクセス中にあって該プロ
    セッサのバス放棄中に該プロセッサが実行する予定の実
    行保留アドレスを前記ストローブ信号でラッチする実行
    保留アドレスラッチ部(13)と、 前記ストローブ信号の有効期間が前記内部クロックに同
    期したときに前記外部デバイスから前記バスへのアクセ
    スアドレスを監視アドレスとして前記ストローブ信号で
    取込む監視アドレスラッチ部(14)と、 前記ストローブ信号の有効期間が前記内部クロックに同
    期したときにあり且つ前記リード/ライト信号が前記外
    部デバイスのライト動作を示すときに前記実行保留アド
    レスラッチ部のアドレスと前記監視アドレスラッチ部に
    取込まれた監視アドレスとをブロック単位で比較する比
    較部(15)と を具備し、 該比較部の比較結果に応じて前記ブロックアクセス動作
    を継続するか否かを判別するようにしたキャッシュ内蔵
    プロセッサ。
  2. 【請求項2】前記ストローブ信号がアドレスの有効を示
    す信号(AS)もしくはデータの有効を示す信号(DS)で
    ある請求項1に記載のキャッシュ内蔵プロセッサ。
  3. 【請求項3】前記ストローブ信号の有効期間が前記内部
    クロックに同期されて1マシンサイクル期間もしくはそ
    れ以下とされる請求項1に記載のキャッシュ内蔵プロセ
    ッサ。
  4. 【請求項4】前記リード/ライト信号ラッチ部(12)は
    前記リード/ライト信号を前記ストローブ信号の立上り
    もしくは立下りエッジによりラッチする請求項1に記載
    のキャッシュ内蔵プロセッサ。
  5. 【請求項5】前記監視アドレスラッチ部(14)は前記ア
    クセスアドレスを前記ストローブ信号の立上りもしくは
    立下りエッジによりラッチする請求項1に記載のキャッ
    シュ内蔵プロセッサ。
JP63223469A 1988-09-08 1988-09-08 キャッシュ内蔵プロセッサ Expired - Lifetime JPH083804B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63223469A JPH083804B2 (ja) 1988-09-08 1988-09-08 キャッシュ内蔵プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63223469A JPH083804B2 (ja) 1988-09-08 1988-09-08 キャッシュ内蔵プロセッサ

Publications (2)

Publication Number Publication Date
JPH0272450A JPH0272450A (ja) 1990-03-12
JPH083804B2 true JPH083804B2 (ja) 1996-01-17

Family

ID=16798627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63223469A Expired - Lifetime JPH083804B2 (ja) 1988-09-08 1988-09-08 キャッシュ内蔵プロセッサ

Country Status (1)

Country Link
JP (1) JPH083804B2 (ja)

Also Published As

Publication number Publication date
JPH0272450A (ja) 1990-03-12

Similar Documents

Publication Publication Date Title
JP4170218B2 (ja) キャッシュミスに応答してタスクを切り替えることによってキャッシュベース埋め込みプロセッサのスループットを改善する方法および装置
US5813022A (en) Circuit for placing a cache memory into low power mode in response to special bus cycles executed on the bus
JP2641819B2 (ja) キャッシュ・コントローラ並びにフォールト・トレラント・コンピュータ及びそのデータ転送方式
US6279063B1 (en) Microcomputer system with at least first and second microcomputers each operable in master and slave modes with configurable bus access control terminals and bus use priority controller
US6101584A (en) Computer system and semiconductor device on one chip including a memory and central processing unit for making interlock access to the memory
JPH0727493B2 (ja) ライトスルーキャッシュおよびパイプラインスヌープサイクルを備えたメモリシステムを有するパーソナルコンピュータ
US5386519A (en) Information processing apparatus incorporating buffer storing a plurality of branch target instructions for branch instructions and interrupt requests
WO1995003568A9 (en) Write back cache controller method and apparatus for use in a system having a cpu with internal cache memory
WO1995003568A2 (en) Write back cache controller method and apparatus for use in a system having a cpu with internal cache memory
EP0418621B1 (en) Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory
JP3018038B2 (ja) キャッシュを有するデータ処理装置
JPH083804B2 (ja) キャッシュ内蔵プロセッサ
KR0153487B1 (ko) 장치간의 통신 수행 방법 및 통신 수행 시스템
US6701398B1 (en) Global bus synchronous transaction acknowledge with nonresponse detection
JPH0778765B2 (ja) キャッシュ内蔵プロセッサ
KR960003065B1 (ko) 정보처리장치
US20020169930A1 (en) Memory access control system, method thereof and host bridge
US6397304B1 (en) Method and apparatus for improving system performance in multiprocessor systems
US5931930A (en) Processor that indicates system bus ownership in an upgradable multiprocessor computer system
JP3103174B2 (ja) メモリアクセス装置
JP2982197B2 (ja) キャッシュ用バスモニタ回路
JPH0784971A (ja) コンピュータシステム
JPH04157543A (ja) キャッシュメモリ制御回路
JPH03271859A (ja) 情報処理装置
JPS6215644A (ja) キヤツシユメモリ制御回路