JPH06318184A - バス調停装置 - Google Patents

バス調停装置

Info

Publication number
JPH06318184A
JPH06318184A JP12902193A JP12902193A JPH06318184A JP H06318184 A JPH06318184 A JP H06318184A JP 12902193 A JP12902193 A JP 12902193A JP 12902193 A JP12902193 A JP 12902193A JP H06318184 A JPH06318184 A JP H06318184A
Authority
JP
Japan
Prior art keywords
circuit
dma
direct memory
transfer
memory 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.)
Pending
Application number
JP12902193A
Other languages
English (en)
Inventor
Yoshiro Eto
義郎 江藤
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.)
Toshiba TEC Corp
Original Assignee
Tokyo Electric Co 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 Tokyo Electric Co Ltd filed Critical Tokyo Electric Co Ltd
Priority to JP12902193A priority Critical patent/JPH06318184A/ja
Publication of JPH06318184A publication Critical patent/JPH06318184A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】より優れた高速処理を実現し、経済性も向上す
る。 【構成】DMA転送バス15を使用してDMA転送を行
うDMA回路12と、DMA転送バスを使用してDMA
制御を行うCPU11と、同一クロックの立上がり及び
立下がりでDMA転送とDMA制御の起動を検出し、起
動の早い方の動作を優先させるとともに起動の遅い方の
動作を待機させる調停回路13とからなり、調停回路
は、DMA転送中にDMA制御の起動があると、DMA
転送が一時終了するまでDMA制御を待機させ、DMA
転送が終了するとCPUによるDMA制御を開始させ、
DMA制御中にDMA回路によるDMA転送の起動があ
ると、DMA制御が終了するまでDMA転送を待機さ
せ、DMA制御が終了するとDMA回路によるDMA転
送を開始させる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えばダイレクト・メ
モリ・アクセス回路によるダイレクト・メモリ・アクセ
ス転送動作とマイクロプロセッサによるダイレクト・メ
モリ・アクセス制御を調停するバス調停装置に関する。
【0002】
【従来の技術】従来、ダイレクト・メモリ・アクセス
(以下、DMAと称する。)回路を使用してDMA転送
動作を行うものとしては、図15に示すものが知られて
いる。
【0003】これはマイクロプロセッサ(以下、CPU
と称する。)1がデータ処理に使用する動作バスとDM
A回路2がデータをDMA転送する転送バスを共通のバ
ス3を使用して行うようになっている。なお、4はメモ
リ、5は転送先回路である。
【0004】この装置では、DMA転送を行う場合に
は、DMA回路2がCPU1に対してバス3のBUSREQ
(主導権要求信号)を出力し、CPU1はBUSREQを受け
ると、バス3を解放し、DMA回路2にBUSACK(バス使
用許可信号)を出力する。
【0005】DMA回路2は、BUSACKを検出すると自ら
バス3を制御してメモリ4に対するデータ転送を行い、
データ転送が終了すると、CPU1へのBUSREQの送出を
停止し、バス3を解放する。
【0006】CPU1は、BUSREQが無くなると、BUSACK
の送出を停止し、バス3を使用しての動作を再開する。
【0007】この一連の動作をシーケンスで示せば図1
6に示すようになる。
【0008】しかし、このように1つのバスをCPUの
動作用とDMA回路によるDMA転送用とで共通に使用
したのでは、DMA回路がDMA転送を行っている間は
CPUはデータ処理ができないため高速処理ができな
い。
【0009】また図17に示すように、CPU1がデー
タ処理に使用するCPU動作バス6とDMA回路2がD
MA転送に使用するDMA転送バス7をそれぞれ設け、
これをDMA制御用CPU8により分離したものが知ら
れている。
【0010】これは図18にシーケンスを示すようにC
PU1は常時CPU動作バス6を使用してデータ処理を
行う。またDMA転送は、DMA制御用CPU8とDM
A回路2との間で信号BUSREQ、BUSACKのやり取りを行
い、DMA回路2がDMA転送バス7を使用してDMA
転送を行う。さらにCPU1がDMA回路2を制御する
ためのDMA制御が発生すると、DMA制御用CPU8
はDMA回路2がDMA転送を行っていない期間を使用
してDMA転送バス7を使用してDMA回路2を制御す
る。
【0011】この装置ではCPU1は常時CPU動作バ
ス6を使用してデータ処理ができるので、図15のもの
に比べて高速処理が実現できる。しかし、DMA制御用
CPU8を使用してソフトウエアによりDMA回路2に
よるDMA転送とCPU1からDMA回路2へのデータ
制御を行うようになっているため、DMA制御に比較的
時間がかかる。また新たなソフトウエアを組込んだDM
A制御用CPUが必要となり、装置全体が高価となる。
【0012】さらに、図15及び図17に示す回路にお
いて、バス3,7に接続するメモリ4としてダイナミッ
ク・ランダム・アクセス・メモリ(以下、DRAMと称
する。)を使用し、かつバス3,7にDRAMをリフレ
ッシュするためのリフレッシュ回路を接続したものもあ
るが、このようなものにおいても同様の問題があった。
【0013】
【発明が解決しようとする課題】このようにバスをCP
Uの動作用とDMA転送用とで共用するものでは、高速
処理ができないという問題があり、またバスをCPUの
動作用とDMA転送用とに分離するものでは、一応の高
速処理を実現できるが、ソフトウエア処理のためDMA
制御に比較的時間がかかるとともに高価となって経済性
が悪いという問題があった。
【0014】そこで本発明は、より優れた高速処理が実
現でき、しかも経済性を向上できるバス調停装置を提供
しようとするものである。
【0015】
【課題を解決するための手段】請求項1対応の発明は、
DMA転送バスを使用してデータの高速転送を行うDM
A回路と、CPU動作バスを使用してデータ転送を行う
とともにDMA転送バスを使用してDMA動作を制御す
るCPUと、DMA転送バスとCPU動作バスとの間に
介在し、同一クロックの立上がり及び立下がりでDMA
回路によるDMA転送動作とCPUによるDMA制御動
作の起動を検出する論理回路を備え、起動の早い方の動
作を優先させるとともに起動の遅い方の動作を待機させ
る調停回路とからなり、調停回路は、DMA転送動作中
にCPUによるDMA制御動作の起動があると、DMA
転送動作が一時終了するまでDMA制御動作を待機さ
せ、その転送動作が一時終了するとCPUによるDMA
制御動作を開始させ、DMA制御動作中にDMA回路に
よるDMA転送動作の起動があると、DMA制御動作が
終了するまでDMA転送動作を待機させ、その制御動作
が終了するとDMA回路によるDMA転送動作を開始さ
せるものである。
【0016】請求項2対応の発明は、DMA転送バスを
使用してデータの高速転送を行うDMA回路と、CPU
動作バスを使用してデータ転送を行い、かつDMA転送
バスを使用してDMA動作を制御するとともにDRAM
をアクセスするCPUと、DMA転送バスを使用してD
RAMをリフレッシュするリフレッシュ回路と、DMA
転送バスとCPU動作バスとの間に介在し、互いに立上
がりの異なるクロックでDMA回路によるDMA転送動
作、CPUによるDMA制御動作、CPUによるDRA
Mのアクセス動作及びリフレッシュ回路によるDRAM
のリフレッシュ動作の起動を検出する論理回路を備え、
起動の早い方の動作を優先させるとともに起動の遅い方
の動作を待機させる調停回路とを設けたものである。
【0017】
【作用】このような構成の本発明においては、DMA回
路がDMA転送を行っているときにCPUによるDMA
制御動作の起動があると、調停回路はDMA転送動作を
優先し、そのDMA転送動作が一時終了するまでDMA
制御動作を待機させる。そしてDMA転送動作が一時終
了すると、調停回路はCPUによるDMA制御動作を開
始させる。
【0018】またDMA制御動作中にDMA回路による
DMA転送動作の起動があると、調停回路はDMA制御
動作を優先し、そのDMA制御動作が終了するまでDM
A転送動作を待機させ、そのDMA制御動作が終了する
とDMA回路によるDMA転送動作を開始させる。
【0019】また本発明においては、DMA回路による
DMA転送動作、CPUによるDMA制御動作、CPU
によるDRAMのアクセス動作及びリフレッシュ回路に
よるDRAMのリフレッシュ動作の起動がかかると、起
動の早い方の動作を優先させるとともに起動の遅い方の
動作を待機させる。
【0020】
【実施例】以下、請求項1に対応する発明の実施例を図
面を参照して説明する。
【0021】図1に示すようにCPU11、DMA回路
12及び調停回路13を設け、前記CPU11にCPU
動作バス14を接続し、前記DMA回路12にDMA転
送バス15を接続している。
【0022】前記調停回路13はCPU動作バス14と
DMA転送バス15の両方に接続している。
【0023】前記DMA回路12にはDMA転送バス1
5を介してメモリ16及び転送先回路17が接続してい
る。
【0024】前記CPU11は前記調停回路13にクロ
ックCLK を供給すると共に、DMA制御を行うときには
DMACS (DMA制御アクセス信号)を供給している。前
記調停回路13はCPU11からのDMACS を検出すると
そのCPU11に対してWAIT信号を供給するようになっ
ている。
【0025】前記DMA回路12はDMA転送を行うと
きには前記調停回路13にBUSREQ(バス使用権要求信
号)を供給している。前記調停回路13はDMA回路1
2からのBUSREQを検出するとそのDMA回路12に対し
てBUSACK(バス使用許可信号)を供給するようになって
いる。
【0026】また前記調停回路13にはRESETXが入力し
ている。
【0027】前記調停回路13は図2に示すように、D
形フリップフロップ21,22,23やJK形フリップ
フロップ24等を含む論理回路、BUSACK生成回路
25及びDMA制御回路26により構成されている。
【0028】前記BUSREQはD形フリップフロップ21の
D入力端子に入力すると共に、負論理オアゲート27に
入力している。
【0029】前記CLK はD形フリップフロップ21,2
3のCK入力端子、JK形フリップフロップ24のCK
入力端子及びDMA制御回路26に入力している。
【0030】前記RESETXはD形フリップフロップ21,
23のクリア端子、JK形フリップフロップ24のクリ
ア端子及び前記負論理オアゲート27に入力している。
そして前記負論理オアゲート27の出力dを前記D形フ
リップフロップ22のクリア端子に入力している。
【0031】前記DMACS はD形フリップフロップ23の
D入力端子に入力すると共にアンドゲート28に入力し
ている。
【0032】前記D形フリップフロップ21のQ出力端
子からの信号aを前記D形フリップフロップ22のCK
入力端子に入力している。そして前記D形フリップフロ
ップ22のQ出力端子からの信号bをアンドゲート29
に入力している。
【0033】前記D形フリップフロップ23の反転出力
端子からの信号を前記アンドゲート28に入力してい
る。そして前記アンドゲート28の出力eを前記JK形
フリップフロップ24のJ入力端子に入力している。
【0034】前記JK形フリップフロップ24のQ出力
端子からの信号をWAITとして前記CPU11に出力する
と共に、アンドゲート30に入力している。
【0035】前記アンドゲート29の出力cを前記BU
SACK生成回路25に入力すると共に、インバータ3
1を介して前記アンドゲート30に入力している。
【0036】前記アンドゲート30の出力fを前記DM
A制御回路26に入力すると共に、インバータ32を介
して前記アンドゲート29に入力している。
【0037】前記BUSACK生成回路25はBUSACKを
生成し、そのBUSACKを前記DMA回路12に入力してい
る。
【0038】前記DMA制御回路26には、前記CPU
11からのCPURD (リード信号)、CPUWR (ライト信
号)、CPUADDRESS(アドレス信号)、CPUDATA (デー
タ)が前記CPU動作バス14を介して入力している。
【0039】前記DMA制御回路26は、前記JK形フ
リップフロップ24のK入力端子に信号gを入力すると
共に、前記CPU11からのCPURD 、CPUWR 、CPUADDRE
SS、CPUDATA に基づいて前記DMA回路12に前記DM
A転送バス15を介してDMACSX(アクセス信号)、DMAW
RX(ライト信号)、DMARDX(リード信号)、DMAADDRESS
(アドレス信号)、DMADATA (データ)を入力してい
る。
【0040】この装置は、DMA非転送時にCPU11
がDMA制御を行う場合には、図3に示すシーケンスに
基づいて行われるようになっている。
【0041】CPU11は、調停回路13に対してDMAC
S を出力する。調停回路13はDMACS の入力によりフリ
ップフロップ23,24を動作し、CPU11に対して
CPUの動作を遅らせるWAITを出力する。CPU11は
調停回路13に対してWAITが無くなるまでDMACS を出力
し続ける。またCPU11は調停回路13のDMA制御
回路26に対して信号及びデータ(DMACSX、DMAWRX、DM
ARDX、DMAADDRESS、DMADATA )を送出する。
【0042】調停回路13は、CPU11に対してWAIT
を出力した時点で、DMA回路12からのBUSREQをチェ
ックし、BUSREQが検出できなかったことを確認すると一
定時間後にWAITの出力を停止させると同時にCPU11
からの信号及びデータ(DMACSX、DMAWRX、DMARDX、DMAA
DDRESS、DMADATA )をDMA制御回路26からDMA転
送バス15を介してDMA回路12に送出し、DMA制
御を行う。
【0043】CPU11はWAITが無くなると、DMA制
御を終了し、他の制御を行う。すなわちCPU動作バス
14を使用してのデータ処理等を行う。
【0044】またDMA非制御時にDMA回路12がD
MA転送を行う場合には、図4に示すシーケンスに基づ
いて行われるようになっている。
【0045】DMA回路12は、調停回路13に対して
BUSREQを出力する。調停回路13は、BUSREQの入力によ
りフリップフロップ21,22を動作し、BUSACK
生成回路25からDMA回路12にBUSACKを出力する。
これによりDMA回路12は、DMA転送バス15を占
有してDMA転送を行う。
【0046】調停回路13は、DMA回路12からのBU
SREQを検出すると、CPU11からのDMACS をチェック
し、DMACS が検出できなかったことを確認するとDMA
回路12にBUSACKを出力してDMA転送を許可する。
【0047】またCPU11はこの間CPU動作バス1
4を使用してデータ処理を行うことができる。
【0048】またDMA転送中にCPU11がDMA制
御を行う場合には、図5に示すシーケンスに基づいて行
われるようになっている。
【0049】この場合は、DMA回路12がDMA転送
を行っている最中にCPU11がDMA回路12に対し
てDMA制御を行うことになるので、バスの衝突が発生
する。
【0050】そこで調停回路13は、DMA回路12か
らのBUSREQに対してBUSACKを出力しているときにCPU
11からのDMACS を検出すると、フリップフロップ2
3,24を動作し、CPU11に対してCPUの動作を
遅らせるWAITを出力する。そしてBUSREQを監視し、BUSR
EQが無くなると、DMA転送が終了したことを確認し、
CPU11からの信号及びデータ(DMACSX、DMAWRX、DM
ARDX、DMAADDRESS、DMADATA )をDMA転送バス15を
介してDMA回路12に送出し、DMA制御を行う。
【0051】そして一定時間後にWAITの出力を停止させ
てCPU11のDMA制御を終了させる。
【0052】さらにDMA制御中にDMA回路12がD
MA転送を行う場合には、図6に示すシーケンスに基づ
いて行われるようになっている。
【0053】この場合は、CPU11がDMA回路12
に対してDMA制御を行っている最中にDMA転送を行
うことになるので、バスの衝突が発生する。
【0054】そこで調停回路13は、CPU11からの
DMACS に対してWAITを出力しているときにDMA回路1
2からのBUSREQを検出すると、DMA制御が終了するま
で、すなわちDMACS が無くなるまでDMA回路12に対
してBUSACKを出力するのを禁止する。
【0055】これによりDMA回路12はBUSACKを検出
するまでDMA転送バス15を占有できないためDMA
転送はできない。すなわちバス衝突は発生しない。
【0056】このような構成の実施例においては、DM
A非転送時にDMA制御を行う場合には、調停回路13
は、図7に示すように、CPU11からのアドレスをデ
コードしたDMACS を入力すると、クロックCLK の立上が
りでD形フリップフロップ23がセット動作し、アンド
ゲート28の出力がハイレベルとなる。
【0057】そしてクロックCLK の立上がりでJK形フ
リップフロップ24がセット動作する。すなわちDMACS
が調停回路13にラッチされる。これによりWAITが発生
しCPU11に出力される。こうしてCPU11の動作
は待たされる。
【0058】またこのときDMA回路12からBUSREQが
入力されていないので、アンドゲート30の出力がハイ
レベルとなってDMA制御回路26に供給される。
【0059】これによりDMA制御回路26は動作が可
能となり、CPU11からのCPURD、CPUWR 、CPUADDRES
S、CPUDATA に基づいてDMACSX、DMAWRX、DMARDX、DMAAD
DRESS、DMADATA を生成し、DMA回路12に出力す
る。すなわちDMA制御が行われる。
【0060】またDMA制御回路26はDMA回路12
に対して各種信号及びデータを出力すると一定時間後に
信号gをJK形フリップフロップ24に供給してそのJ
K形フリップフロップ24をリセット動作しWAITの発生
を停止させる。
【0061】こうしてCPU11によるDMA制御が終
了する。
【0062】またDMA非制御時にDMA転送を行う場
合には、調停回路13は、図8に示すように、DMA回
路12からのBUSREQを入力すると、クロックCLK の立上
がりでD形フリップフロップ21がセット動作し、信号
aがハイレベルとなる。
【0063】そして信号aの立上がりによりD形フリッ
プフロップ22もセット動作し、信号bがハイレベルと
なる。こうしてBUSREQが調停回路13にラッチされる。
【0064】またこのときCPU11からDMACS が入力
されていないので、アンドゲート29の出力がハイレベ
ルとなってBUSACK生成回路25に供給される。
【0065】これによりBUSACK生成回路25は動
作が可能となり、BUSACKを生成し、DMA回路12に出
力する。
【0066】DMA回路12は調停回路13からのBUSA
CKを検出することにより、DMA転送を開始する。そし
てDMA回路12はDMA転送を終了すると、BUSREQの
出力を停止するためD形フリップフロップ22がリセッ
ト動作し、アンドゲート29の出力cがローレベルとな
る。
【0067】こうしてBUSACK生成回路25による
BUSACKの生成が停止される。
【0068】またDMA転送中にDMA制御を行う場合
は、調停回路13は、図9に示すようにアンドゲート2
9の出力cがハイレベル状態となっているときにCPU
11からのDMACS を入力する。
【0069】このときにはアンドゲート30への一方の
入力がローレベルとなっているためJK形フリップフロ
ップ24がDMACS をラッチしてWAITをCPU11に出力
するが、アンドゲート30の出力fはローレベルを保持
する。こうしてCPU11の動作は待たされる。
【0070】DMA回路12によるDMA転送が終了し
てBUSREQの出力が停止されると、アンドゲート29の出
力cがローレベルとなるためアンドゲート30の出力f
がハイレベルとなり、DMA制御回路26は動作が可能
となる。
【0071】これによりDMA制御回路26はCPU1
1からのCPURD 、CPUWR 、CPUADDRESS、CPUDATA に基づ
いてDMACSX、DMAWRX、DMARDX、DMAADDRESS、DMADATA を
生成し、DMA回路12に出力する。すなわちDMA制
御が行われる。
【0072】アンドゲート30の出力fがハイレベルに
なるとアンドゲート29の出力cがローレベルに保持さ
れるので、この動作中にたとえDMA回路12からBUSR
EQが入力されてもBUSACK生成回路25はBUSACKの
生成動作を行うことはなく、バス衝突は発生しない。
【0073】そしてDMA制御回路26は一定時間後に
信号gをJK形フリップフロップ24に供給してそのJ
K形フリップフロップ24をリセット動作しWAITの発生
を停止させる。
【0074】こうしてCPU11によるDMA制御が終
了する。
【0075】またDMA制御中にDMA転送を行う場合
は、調停回路13は、図10に示すようにアンドゲート
30の出力fがハイレベル状態となっているときにDM
A回路12からのBUSREQを入力する。
【0076】このときにはアンドゲート29への一方の
入力がローレベルとなっているためフリップフロップ2
1,22がBUSREQをラッチしてもBUSACK生成回路
25はBUSACKの生成動作を行うことはない。
【0077】従ってDMA回路12は調停回路13から
BUSACKが入力されるまではDMA転送は行わず待機す
る。
【0078】DMA制御が終了しDMA制御回路26か
らの信号gによりJK形フリップフロップ24がリセッ
トされアンドゲート30の出力fがローレベルになる
と、アンドゲート29の出力cがハイレベルとなり、B
USACK生成回路25は動作が可能となる。
【0079】これによりBUSACK生成回路25はBU
SACKの生成を行いDMA回路12に出力する。こうして
DMA回路12はDMA転送バス15を占有してDMA
転送を行う。
【0080】アンドゲート29の出力cがハイレベルに
なるとアンドゲート30の出力fがローレベルに保持さ
れるので、この動作中にたとえCPU11からDMACS が
入力されてもDMA制御回路26は動作しないので、バ
ス衝突は発生しない。
【0081】またこの実施例では、DMA転送とDMA
制御が同時に発生した場合でも、DMA転送については
クロックCLK の立上がりでアンドゲート29の出力cが
ハイレベルとなり、またDMA制御についてはクロック
CLK の立下がりでアンドゲート30の出力fがハイレベ
ルとなる。従って、アンドゲート29の出力cがアンド
ゲート30の出力fに対して優先してハイレベルとなる
ため、DMA転送が優先され、アンドゲート30の出力
fがハイレベルとなってDMA制御が開始されるのはD
MA転送が終了した後となり、バス衝突は発生しない。
【0082】このようにCPU動作バス14とDMA転
送バス15を分離しているため、CPU11はDMA転
送中においてもCPU動作バス14を使用してデータ処
理を行うことができ、高速処理が実現できる。
【0083】また調停回路13は、フリップフロップ2
1〜24、ゲート27〜30及びインバータ31,3
2、BUSACK生成回路25及びDMA制御回路26
からなり、この回路はロッジクだけで構成することがで
きる。
【0084】従ってソフトウェアによる処理を全く行う
必要がないので、調停回路13での制御を高速化できて
より優れた高速処理が実現でき、しかも、低価格なゲー
トアレイ内に組込むことができ経済性を向上できる。
【0085】次に請求項2対応の発明の実施例について
図面を参照して説明する。なお、前記実施例と同一の部
分には同一の符号を付して詳細な説明は省略する。
【0086】これは図11に示すように、CPU動作バ
ス14とDMA転送バス15との間に調停回路131を
接続し、前記DMA転送バス15にメモリとしてDRA
M161を接続すると共にこのDRAM161をリフレ
ッシュするリフレッシュ回路41を接続している。
【0087】前記調停回路131は図12に示すよう
に、D形フリップフロップ51,52,53,54等を
含む論理回路、セレクタ55、DMA制御回路56、D
RAMアクセス制御回路57及びDRAMリフレッシュ
制御回路58により構成されている。
【0088】前記CPU11からの DMACS(DMA制御
アクセス信号)を前記フリップフロップ51のD入力端
子に入力するとともにDRAMCS(DRAM制御アクセス信
号)を前記フリップフロップ52のD入力端子に入力
し、前記DMA回路12からのBUSREQ(バス使用権要求
信号)を前記フリップフロップ53のD入力端子に入力
し、かつ前記リフレッシュ回路41からのREFREQ(リフ
レッシュ要求信号)を前記フリップフロップ54のD入
力端子に入力している。
【0089】前記各フリップフロップ51〜54のCK
入力端子には基本クロック発生器(図示せず)からの基
本クロックCLKを分周器で分周して得られる各種クロ
ックCK1 ,CK2 ,CK3 ,CK4 がそれぞれ入力さ
れるようになっている。前記各クロックCK1 ,CK2
,CK3 ,CK4 は、例えば基本クロックを1パルス
幅ずつずらしたクロックで、そのタイミングはクロック
CK1 の立下がりでクロックCK2 が立上がり、クロッ
クCK2 の立下がりでクロックCK3 が立上がり、クロ
ックCK3 の立下がりでクロックCK4 が立上がり、ク
ロックCK4 の立下がりでクロックCK1 が立上がるタ
イミングになっている。
【0090】また前記調停回路131には信号SRESETが
入力している。この信号SRESETは2入力形ノアゲート5
9,60,61の反転入力端子に入力すると共に前記フ
リップフロップ53のクリア(CL)端子に直接入力し
ている。
【0091】また、前記セレクタ55から前記ノアゲー
ト59の非反転入力端子に信号DMACLRが入力し、前記ノ
アゲート60の非反転入力端子に信号DRAMCLR が入力
し、前記ノアゲート61の非反転入力端子に信号REFCLR
が入力している。
【0092】そして前記各ノアゲート59,60,61
からの出力信号を前記各フリップフロップ51,52,
54のクリア(CL)端子に入力している。
【0093】前記各フリップフロップ51,52,5
3,54は、セット動作するとそれぞれQ出力端子から
前記セレクタ55に対して信号DMARQ 、信号DRAMRQ、信
号BUSRQ 、信号REFRQ を供給している。また前記フリッ
プフロップ51,52のQ出力端子から信号を2入力形
オアゲート62に入力し、そのオアゲート62から信号
WAITを前記CPU11に供給している。
【0094】前記セレクタ55は、前記各フリップフロ
ップ51〜54のQ出力端子からの信号DMARQ 、DRAMR
Q、BUSRQ 、REFRQ により信号 DMACS,DRAMCS,BUSRE
Q,REFREQの入力の順位を判定し、最初に入力した信号
のみを優先して信号を出力するようになっている。すな
わち信号DRAMCSが最初のときには信号DRAMCNT を前記D
RAMアクセス制御回路57に供給し、信号BUSREQが最
初のときには信号BUSACK(バス使用許可信号)を前記D
MA回路12に供給し、信号REFREQが最初のときには信
号REFCNTを前記DRAMリフレッシュ制御回路58に供
給するようになっている。
【0095】この調停回路131は以下の制御を行うよ
うになっている。
【0096】A.単体で要求が発生した場合 a.CPU11がDRAM161をアクセスする場合 この場合は、CPU11からのアドレスデコードされた
DRAMCSをフリップフロップ52が検出すると、セレクタ
55に対してDRAMRQを出力すると共にCPU11に対し
てWAITを出力する。CPU11はWAITを受けとるとアド
レス、RD(リード)/WR(ライト)等の出力時間を
延ばす。
【0097】セレクタ55はDRAMRQを受けとると他の要
求をチェックし、DRAMCSのみの検出であれば他の要求を
禁止してDRAMアクセス制御回路57にDRAMCNT を供
給する。これによりCPU11はDRAMアクセス制御
回路57を介してDRAM161をアクセスすることに
なる。そしてアクセスが開始されて一定時間が経過する
と、DRAMCLR を出力して前記フリップフロップ52をリ
セットする。これによりWAITがクリアされ、CPU11
はアドレス、RD/WR等の出力を停止させる。
【0098】b.CPU11がDMA制御を行う場合 この場合は、CPU11からのアドレスデコードされた
DMACS をフリップフロップ51が検出すると、セレクタ
55に対してDMARQ を出力すると共にCPU11に対し
てWAITを出力する。CPU11はWAITを受けとるとアド
レス、RD/WR等の出力時間を延ばす。
【0099】セレクタ55はDMARQ を受けとると他の要
求をチェックし、DMACS のみの検出であれば他の要求を
禁止してDMA制御回路56にDMACNTを供給する。これ
によりCPU11はDMA制御回路56を介してDMA
回路12をアクセスすることになる。そしてアクセスが
開始されて一定時間が経過すると、DMACLRを出力して前
記フリップフロップ51をリセットする。これによりWA
ITがクリアされ、CPU11はアドレス、RD/WR等
の出力を停止させる。
【0100】c.DMA回路12がDMA転送を行う場
合 この場合は、DMA回路12がDMAリクエストを検出
すると調停回路131にBUSREQを出力する。調停回路1
31ではBUSREQをフリップフロップ53が検出すると、
セレクタ55に対してBUSRQ を出力する。
【0101】セレクタ55はBUSRQ を受けとると他の要
求をチェックし、BUSREQのみの検出であれば他の要求を
禁止し、DMA回路12にBUSACKを出力する。
【0102】これによりDMA回路12は、アドレス、
RD/WR等を出力してDMA転送を開始する。MA転
送開始から一定時間が経過すると、SRESETにより前記フ
リップフロップ53がリセットされる。
【0103】DMA転送が終了すると、DMA回路12
はBUSREQを停止し、アイドル状態となる。
【0104】d.DRAMリフレッシュを行う場合、 この場合は、ある一定周期でリフレッシュ回路41から
出力される信号REFREQを調停回路131のフリップフロ
ップ54が検出すると、セレクタ55に対してREFRQ を
出力する。
【0105】セレクタ55はREFRQ を受けとると他の要
求をチェックし、REFREQのみの検出であれば他の要求を
禁止してリフレッシュ回路41にREFACKを出力するとと
もにDRAMリフレッシュ制御回路58にREFCNTを供給
する。これによりリフレッシュ回路41はDRAMリフ
レッシュ制御回路58を介してDRAM161をリフレ
ッシュすることになる。そしてリフレッシュが開始され
て一定時間が経過すると、REFCLRを出力して前記フリッ
プフロップ54をリセットする。
【0106】B.複数の要求が発生した場合 CPU11からのDMA回路制御及びDRAMアクセス
制御は同時に発生することはないので、CPU11から
のDMA回路制御又はDRAMアクセス、DMA回路1
2のDMA転送、リフレッシュ回路41のリフレッシュ
のうちの2つ又は3つが重なる場合がある。
【0107】このように複数の要求が重なっても、各フ
リップフロップ51〜54に入力するクロックCK1 ,
CK2 ,CK3 ,CK4 の立上がりタイミングがそれぞ
れ異なるので、セレクタ55はいずれかの要求を最初に
検出すると他の要求を禁止する。そしてその要求処理が
終了すると、セレクタ55は待機していた要求信号のう
ち優先順位の高い要求を対応する制御回路56〜58及
びDMA回路12に出力する。
【0108】このような構成の実施例においては、例え
ばCPU11からのDRAMアクセスとDMA回路12
によるDMA転送が重なることが発生しても、各フリッ
プフロップ51〜54に供給されるクロックCK1 ,C
K2 ,CK3 ,CK4 の立上がりタイミングが異なって
いるので、例えば図13に示すようにCPU11からの
DRAMアクセスの要求をフリップフロップ52がクロ
ックCK1 によって検出するタイミングがDMA回路1
2によるDMA転送要求をフリップフロップ53がクロ
ックCK2 によって検出するタイミングよりも早けれ
ば、セレクタ55においてDRAMアクセスの要求が優
先して受付けられ、セレクタ55からDRAMアクセス
制御回路57にDRAMCNT が供給されDRAMアクセスが
先に実行される。CPU11はWAITによりアドレス、R
D/WR等の出力時間を延ばす。そしてDMA転送は待
機状態となる。
【0109】そしてDRAMアクセスが開始されて一定
時間後にセレクタ55からDRAMCLRが出力してCPU1
1へのWAITがクリアされる。
【0110】さらにセレクタ55はDRAMアクセス制
御回路57へのDRAMCNT の供給をT1 時間後に停止し、
今度はDMA回路12にBUSACKをT2 時間出力し、その
DMA回路12にDMA転送制御を行わせる。
【0111】また、例えば図14に示すようにDMA回
路12によるDMA転送要求をフリップフロップ53が
クロックCK2 によって検出するタイミングがCPU1
1からのDRAMアクセスの要求をフリップフロップ5
2がクロックCK1 によって検出するタイミングよりも
早ければ、セレクタ55においてDMA転送の要求が優
先して受付けられ、セレクタ55からDMA回路12に
BUSACKが供給され、DMA回路12によるDMA転送制
御が優先して行われる。
【0112】DRAMアクセスがフリップフロップ52
により検出されると、フリップフロップ52からセレク
タ55にDRAMRQが供給されるとともにCPU11にWAIT
が供給される。そしてDMA転送制御中はセレクタ55
によるDRAMアクセス要求の受付けは待機状態となる
ので、この間セレクタ55へのDRAMRQの供給、CPU1
1へのWAITの供給は継続されることになる。
【0113】そしてBUSACKが出力されてT3 時間経過す
ると、セレクタ55はBUSACKの出力を停止し、代わって
今度はセレクタ55はDRAMアクセス制御回路57に
DRAMCNT をT4 時間供給してCPU11によるDRAM
アクセスを行わせる。そしてDRAMアクセスが開始さ
れて一定時間後にセレクタ55からDRAMCLR が出力して
CPU11へのWAITがクリアされる。
【0114】このようにCPU11からのDRAMアク
セスとDMA回路12によるDMA転送が重なっても対
応するクロックにより検出されるタイミングが早い方が
優先して実行されるので、この実施例においてもソフト
ウエアによる処理を必要としなく、ハードウエア構成で
複数要求に対する優先処理が実行することができ、従っ
て前記実施例同様に、より優れた高速処理が実現でき、
しかも経済性を向上できる。
【0115】なお、CPU11からのDRAMアクセ
ス、DMA回路12によるDMA転送及びリフレッシュ
回路41によるDRAM161のリフレッシュの3つの
要求が重なった場合も同様の制御が行われ、対応するク
ロックにより最初に検出された要求から優先して実行さ
れることになる。
【0116】
【発明の効果】以上、本発明によれば、ハードウェア構
成の調停回路により、起動の早い方の動作を優先させる
とともに起動の遅い方の動作を待機させる制御を行って
いるので、また異なるタイミングで立上がるクロックで
要求を検出し、最初に検出した要求を優先させるととも
に検出タイミングが遅い方の要求を待機させる制御を行
っているので、より優れた高速処理が実現でき、しかも
経済性を向上できる。
【図面の簡単な説明】
【図1】本発明の実施例を示すブロック図。
【図2】同実施例の調停回路の構成を示す図。
【図3】同実施例においてDMA非転送時にDMA制御
を行う場合の動作シーケンスを示す図。
【図4】同実施例においてDMA非制御時にDMA転送
を行う場合の動作シーケンスを示す図。
【図5】同実施例においてDMA転送中にDMA制御を
行う場合の動作シーケンスを示す図。
【図6】同実施例においてDMA制御中にDMA転送を
行う場合の動作シーケンスを示す図。
【図7】同実施例においてDMA非転送時にDMA制御
を行う場合の調停回路の動作シーケンスを示す図。
【図8】同実施例においてDMA非制御時にDMA転送
を行う場合の調停回路の動作シーケンスを示す図。
【図9】同実施例においてDMA転送中にDMA制御を
行う場合の調停回路の動作シーケンスを示す図。
【図10】同実施例においてDMA制御中にDMA転送
を行う場合の調停回路の動作シーケンスを示す図。
【図11】本発明の他の実施例を示すブロック図。
【図12】同実施例の調停回路の構成を示す図。
【図13】同実施例においてDRAMアクセスとDMA
転送が重なった場合においてDRAMアクセス要求の検
出タイミングが早かったときの調停回路の動作シーケン
スを示す図。
【図14】同実施例においてDRAMアクセスとDMA
転送が重なった場合においてDMA転送要求の検出タイ
ミングが早かったときの調停回路の動作シーケンスを示
す図。
【図15】従来例を示すブロック図。
【図16】同従来例の動作シーケンスを示す図。
【図17】他の従来例ブロック図。
【図18】同従来例の動作シーケンスを示す図。
【符号の説明】
11…CPU(マイクロプロセッサ) 12…DMA(ダイレクト・メモリ・アクセス)回路 13,131…調停回路 14…CPU動作バス 15…DMA転送バス 161…DRAM 41…リフレッシュ回路

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 ダイレクト・メモリ・アクセス転送バス
    を使用してデータの高速転送を行うダイレクト・メモリ
    ・アクセス回路と、マイクロプロセッサ動作バスを使用
    してデータ転送を行うとともに前記ダイレクト・メモリ
    ・アクセス転送バスを使用してダイレクト・メモリ・ア
    クセス動作を制御するマイクロプロセッサと、前記ダイ
    レクト・メモリ・アクセス転送バスとマイクロプロセッ
    サ動作バスとの間に介在し、同一クロックの立上がり及
    び立下がりで前記ダイレクト・メモリ・アクセス回路に
    よるダイレクト・メモリ・アクセス転送動作と前記マイ
    クロプロセッサによるダイレクト・メモリ・アクセス制
    御動作の起動を検出する論理回路を備え、起動の早い方
    の動作を優先させるとともに起動の遅い方の動作を待機
    させる調停回路とからなり、 前記調停回路は、ダイレクト・メモリ・アクセス転送動
    作中に前記マイクロプロセッサによるダイレクト・メモ
    リ・アクセス制御動作の起動があると、ダイレクト・メ
    モリ・アクセス転送動作が一時終了するまでダイレクト
    ・メモリ・アクセス制御動作を待機させ、その転送動作
    が一時終了すると前記マイクロプロセッサによるダイレ
    クト・メモリ・アクセス制御動作を開始させ、ダイレク
    ト・メモリ・アクセス制御動作中に前記ダイレクト・メ
    モリ・アクセス回路によるダイレクト・メモリ・アクセ
    ス転送動作の起動があると、ダイレクト・メモリ・アク
    セス制御動作が終了するまでダイレクト・メモリ・アク
    セス転送動作を待機させ、その制御動作が終了すると前
    記ダイレクト・メモリ・アクセス回路によるダイレクト
    ・メモリ・アクセス転送動作を開始させることを特徴と
    するバス調停装置。
  2. 【請求項2】 ダイレクト・メモリ・アクセス転送バス
    を使用してデータの高速転送を行うダイレクト・メモリ
    ・アクセス回路と、マイクロプロセッサ動作バスを使用
    してデータ転送を行い、かつ前記ダイレクト・メモリ・
    アクセス転送バスを使用してダイレクト・メモリ・アク
    セス動作を制御するとともにダイナミック・ランダム・
    アクセス・メモリをアクセスするマイクロプロセッサ
    と、前記ダイレクト・メモリ・アクセス転送バスを使用
    して前記ダイナミック・ランダム・アクセス・メモリを
    リフレッシュするリフレッシュ回路と、前記ダイレクト
    ・メモリ・アクセス転送バスとマイクロプロセッサ動作
    バスとの間に介在し、互いに立上がりの異なるクロック
    で前記ダイレクト・メモリ・アクセス回路によるダイレ
    クト・メモリ・アクセス転送動作、前記マイクロプロセ
    ッサによるダイレクト・メモリ・アクセス制御動作、前
    記マイクロプロセッサによる前記ダイナミック・ランダ
    ム・アクセス・メモリのアクセス動作及び前記リフレッ
    シュ回路による前記ダイナミック・ランダム・アクセス
    ・メモリのリフレッシュ動作の起動を検出する論理回路
    を備え、起動の早い方の動作を優先させるとともに起動
    の遅い方の動作を待機させる調停回路とを設けたことを
    特徴とするバス調停装置。
JP12902193A 1993-03-11 1993-05-31 バス調停装置 Pending JPH06318184A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12902193A JPH06318184A (ja) 1993-03-11 1993-05-31 バス調停装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5059893 1993-03-11
JP5-50598 1993-03-11
JP12902193A JPH06318184A (ja) 1993-03-11 1993-05-31 バス調停装置

Publications (1)

Publication Number Publication Date
JPH06318184A true JPH06318184A (ja) 1994-11-15

Family

ID=26391068

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12902193A Pending JPH06318184A (ja) 1993-03-11 1993-05-31 バス調停装置

Country Status (1)

Country Link
JP (1) JPH06318184A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100400851B1 (ko) * 2000-07-05 2003-10-08 샤프 가부시키가이샤 화상처리 시스템 및 이를 이용한 반도체장치와 디지털스틸 카메라장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100400851B1 (ko) * 2000-07-05 2003-10-08 샤프 가부시키가이샤 화상처리 시스템 및 이를 이용한 반도체장치와 디지털스틸 카메라장치

Similar Documents

Publication Publication Date Title
JP2658958B2 (ja) Dmaコントローラ
JPH06318184A (ja) バス調停装置
JPS6290742A (ja) 中央処理装置の性能を向上させる方法および装置
JPH0259552B2 (ja)
JP3018404B2 (ja) マイクロプロセッサ
JPH03122745A (ja) Dma制御方式
JPH03144990A (ja) メモリ装置
JPS5927938B2 (ja) 多重処理装置
JP2580999B2 (ja) Dmaコントローラ
JPS6214868B2 (ja)
JPH05282246A (ja) マイクロコンピュータ
JPH04372030A (ja) プロセッサのメモリアクセス方式
JPH08180027A (ja) 調停回路
JP3147367B2 (ja) 主記憶制御回路
JPH05165541A (ja) 電子回路
JPH1063566A (ja) メモリ調停回路及び電子回路
JPH03181093A (ja) マルチポートメモリ装置
JPS63298555A (ja) 共有メモリ制御方式
JPH01209556A (ja) データ処理システム
JP2002269026A (ja) マイクロコンピュータ装置
JPH03132859A (ja) マイクロコンピュータシステム
JPS6341973A (ja) マルチプロセツサシステム
JPH09319704A (ja) バス制御装置および情報処理装置
JPH06208542A (ja) バス争奪方式
JPH01201757A (ja) アクセス競合回避回路