JPH11272606A - バス制御装置 - Google Patents

バス制御装置

Info

Publication number
JPH11272606A
JPH11272606A JP10070544A JP7054498A JPH11272606A JP H11272606 A JPH11272606 A JP H11272606A JP 10070544 A JP10070544 A JP 10070544A JP 7054498 A JP7054498 A JP 7054498A JP H11272606 A JPH11272606 A JP H11272606A
Authority
JP
Japan
Prior art keywords
system bus
memory
bus
processor
signal
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
JP10070544A
Other languages
English (en)
Inventor
Naoki Yamazaki
直己 山崎
Ryoetsu Nakajima
亮悦 中島
Masumi Fujino
真すみ 藤野
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 JP10070544A priority Critical patent/JPH11272606A/ja
Priority to US09/232,604 priority patent/US6493775B2/en
Publication of JPH11272606A publication Critical patent/JPH11272606A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】複数のバスマスタとなり得る装置(プロセッ
サ、DMAC等)がシステムバス20にアクセスするバ
ス制御装置に関し、アクセスタイムが高速で高価なデバ
イスを用いず、遅いアクセスタイムのデバイスに影響さ
れることなく、システムバスを効率的に利用する。 【解決手段】プロセッサ10とメモリ又はI/Oとの間
でデータを転送するとき、プロッセッサ用システムバス
制御部15とメモリ用システムバス制御部又はI/O用
システムバス制御部とが、各入出力信号をアクセス可能
な最小限の時間幅でシステムバスにアクセスし、DMC
AがメモリとI/Oとの間でデータを転送するとき、D
MAC用システムバス制御部とメモリ用システムバス制
御部又はI/O用システムバス制御部とが、各入出力信
号をアクセス可能な最小限の時間幅でシステムバスにア
クセスする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はバス制御装置に関
し、特に複数のバスマスタとなり得る装置(プロセッ
サ、DMAC等)がシステムバスにアクセスするバス制
御装置に関するものである。近年、逐次型のコンピュー
タの性能は物理的な限界に近づきつつあり、コンピュー
タの性能をさらに向上させる1つの選択肢としてマルチ
プロセッサ方式がある。この方式においては、バス制御
装置がシステムバスをいかに有効に利用するかが重要で
ある。
【0002】
【従来の技術】図11は、一般的なバス制御装置の構成
例を示しており、システムバス20を構成するアドレス
バス21、データバス22及び制御バス23にプロセッ
サ(以後、MPUと称することがある)10a及び10
b、DMAC(Direct MemoryAccess Controller)1
1、メモリ12、及び処理回路(I/O:Input/Output
system)13a及び13bが接続されている。なお、同
図には、MPU10a、MPU10b、DMAC11、
メモリ12、I/O13a、I/O13b、及びシステ
ムバス20のための通常のシステムバス制御部は図示さ
れていない。
【0003】図12は、MPU10aがシステムバス2
0をアクセスするタイミング例を示している。すなわ
ち、MPU10aがメモリ12のデータを読み込むリー
ドサイクルとメモリ12にデータを書き込むライトサイ
クルの動作タイミング例を示している。バス制御装置全
体は、バスクロック101に同期して動作を行い、この
バスクロック101を2分の1分周したクロック201
に同期してプロッセサ10が動作を行うようになってい
る。
【0004】リードサイクルにおいて、MPU10a
は、クロック201の立下りでアドレス信号202を出
力し(タイミングt41)、次のクロック201の立上
りでメモリリード信号203をアクティブ(負論理)に
する(同t42)。プロッセッサ10のバス制御部は、
アドレス信号202及びメモリリード信号203を受け
て、バスクロック101の次の立上りのタイミングでM
PU10aリクエスト102(負論理)をアクティブに
する(同t43)。
【0005】このリクエスト102を受信してシステム
バス側は、アドレスバス21,及びデータバス22が空
いていることを確認した後、MPU10aバスアクノリ
ッジ103(負論理)を次のクロック101の立下りで
アクティブにする(同t44)。このバスアクノリッジ
103を受けたMPU10aのシステムバス制御部は、
アドレスバス21及び制御バス23にそれぞれアドレス
信号202及びメモリリード信号203を出力する。
【0006】メモリ12は、アドレスバス21及び制御
バス23からアドレス信号202及びメモリリード20
3を受けて、アドレス信号202が指定するデータ20
8をデータバス22に出力する。このデータ208がデ
ータバス22上で有効になったとき(同t45)、MP
U10aのシステムバス制御部は、メモリ12から通知
されるレディ信号をレディ信号207としてMPU10
aに出力する。MPU10aは、データを読み込み、リ
ードサイクルを終了し、システムバスを開放する(同t
46)。
【0007】ライトサイクルにおいて、MPU10a
は、クロック201の立下りでアドレス信号202を出
力し(同t51)、次のクロック201の立上りでメモ
リリード信号203をアクティブとせずにデータ信号
(図示せず)を出力する(同t52)。リードサイクル
と同様に、MPU10aのシステムバス制御部は、バス
リクエスト102でバスを要求した後(同t53)、バ
スアクノリッジ103を受信する(同t54)。このバ
スアクノリッジ103を受信したシステムバス制御部
は、アドレスバス21にアドレス信号202を出力し、
データバス22に該データ信号をデータバス信号208
として出力する。
【0008】システムバス制御部は、次のクロック20
1の立上りでメモリライト信号204を制御バス23に
出力し(同t55)、このメモリライト信号を受けたメ
モリ12には、アドレスバス21で指定されたアドレス
202にデータバス22で指定されたデータ208が書
き込まれる。システムバス制御部は、メモリ12へのデ
ータ書込が終了した後、メモリ12から通知されるレデ
ィ信号をレディ信号207としてMPU10aに出力す
る(同t56)。MPU10aはライトサイクルを終了
し、システムバスを開放する(同t57)。
【0009】図13は、DMAC11がシステムバス2
0をアクセスする時のタイミング例を示している。すな
わち、DMAC11が、メモリ12からデータを読み出
してI/O13aに書き込むリードサイクルと、I/O
13aからデータを読み出してメモリ12に書き込むラ
イトサイクルとの動作タイミング例を示している。図1
2と同様にバス制御装置全体は、バスクロック101に
同期して動作を行い、このバスクロック101を2分の
1分周したクロック201に同期してDMAC11が動
作を行うようになっている。
【0010】リードサイクルにおいて、DMAC11
は、クロック201の立下りでメモリ12のデータを指
定するアドレス信号202を出力し(タイミングt6
1)、次のクロック201の立上りでメモリリード信号
203をアクティブ(負論理)にする(同t62)。D
MAC11のシステムバス制御部は、システムバス側と
DMACバスリクエスト102及びDMACバスアクノ
リッジ103を送受信してシステムバスの使用権を獲得
する(同t63,t64)。そして、DMAC11のシ
ステムバス制御部は、アドレスバス21及び制御バス2
3にそれぞれアドレス信号202及びメモリリード信号
203を出力する。
【0011】メモリ12は、アドレスバス21及び制御
バス23からアドレス信号202及びメモリリード信号
203を受けて、アドレス信号202が指定するデータ
208をデータバス22に出力する。次のクロック20
1の立上りで(同t65)、DMAC11はI/Oライ
ト信号206を出力する。
【0012】このデータ208がデータバス22上で有
効になったとき、I/O13aは、I/Oライト206
を受けてデータバス22上のデータ202を読み込む動
作を行う。DMAC11のシステムバス制御部は、DM
AC11にメモリ12から通知されるレディ信号をレデ
ィ信号207として出力する(同t66)。DMAC1
1は、リードサイクルを終了しシステムバスを開放する
(同t67)。
【0013】ライトサイクルにおいて、タイミングt7
1〜t74の動作は、DMAC11がタイミングt72
でメモリリード信号203をアクティブにする代わりに
I/Oリード信号(負論理)205をアクティブにする
以外はリードサイクルと同じである。タイミングt74
でシステムバスの使用権を獲得したDMAC11のシス
テムバス制御部は、アドレス信号202及びI/Oリー
ド信号205をアドレスバス21及び制御バス23に出
力する。
【0014】I/O13aは、I/Oリード信号205
を受けてデータ208がデータバス22に出力する。次
のクロック立上りのタイミングt75で、DMAC11
はメモリライト信号204を出力する。この信号を受け
てメモリ12は、アドレスバス21上のアドレス202
にデータバス23上のデータ208を読み込む。
【0015】メモリのアクセスタイムを考慮した読込終
了時点で(同t76)、DMAC11のシステムバス制
御部は、メモリ12から通知されるレディ信号をレディ
信号207としてDMAC11に出力する。DMAC1
1はライトサイクルを終了し、システムバスを開放する
(同t77)。
【0016】
【発明が解決しようとする課題】このような従来のバス
制御装置においては、MPU10a,MPU10b及び
DMAC11のいずれか1つが、バスマスタとして処理
を実行する。そしてバスマスタはメモリ12又はI/O
13a,13bをアクセスするサイクルタイムの開始か
ら終了までシステムバス20を占有していた。
【0017】従って、バスマスタ以外のMPU又はDM
ACは、バスマスタがサイクルタイムを終了してシステ
ムバス20を開放するまで、バスリクエスト信号に対す
るアクノリッジ信号が返って来ないため、待たされるこ
とになる。
【0018】この結果、システムの性能を向上するため
に複数のMPUやDMACを搭載しても、システムバス
20のバスネックに起因して、システム全体の性能は、
増設したMPU等の数の倍数だけ性能が向上せず、せい
ぜい50〜60%程度に留まっている。また、メモリ1
2又はI/O13a,13bのアクセスタイムが遅い場
合、システムバス20がメモリ12又はI/O13a,
13bに占有され、システム全体の性能がダウンしてし
まうことになる。
【0019】そこで、複数のMPU及びDMACのバス
アクセスに優先度を設けて優先度の高いMPU又はDM
ACからのバスリクエスト信号を優先して受け付けて待
ち時間を短くする方式がある。通常、DMACのバスア
クセスの優先度がMPUの優先度より高く設定される。
この場合、DMACがデータ転送を開始すると、MPU
はDMACによる全てのデータ転送が終了するまで待た
されることになる。従って、DMACが含まれるバス制
御装置のMPUは、リアルタイム処理を必要とするシス
テムには適用できないことになる。この対応策として、
MPUとDMACとが異なるバスを使用する方式もある
が、この方式はシステムの規模が大きくなりコストが高
い。
【0020】さらに、例えばMPU10aがシステムバ
ス20を占有したままハングアップした場合、他のMP
U10b及びDMAC11は、システムバス20をアク
セスすることができなくなり、システムがダウンすると
ともに、復帰することが不可能な状態になってしまう。
【0021】これに対応した技術として、例えば特開昭
60−147866号公報は、バス使用権を得たMPU
をバスマスタ、相手のMPUをバススレーブとしてデー
タ転送を行うマルチプロセッサシステムにおいて、バス
マスタがバススレーブからのレディ信号を待たずに、一
定期間でバスアクセスサイクルを終了し、データ転送完
了/未完了を示すXACK信号がデータ転送完了である
場合、プロッセササイクルを終了し、データ転送未完了
の場合、バスマスタは再度バススレーブにバスを経由し
てアクセスを繰り返すことによりデータ転送の転送が可
能となる方式が提案されている。
【0022】すなわち、上述のハングアップの状況が発
生した場合においても、一旦システムバスが解放される
ため、システムは停止することなく処理を継続すること
が可能となる。しかしながら、この公知例においては、
データ転送完了/未完了信号が未完了を示す場合、バス
マスタが、データ転送完了になるまで何度もシステムバ
スを経由してバススレーブにアクセスを行い、システム
バスを占有する時間が増えバスの利用効率が悪くなる。
また、バスマスタがシステムバスにアクセスするタイミ
ングは、バスマスタのサイクルタイミングと同じであ
り、システムバスのバスネックに起因したシステム全体
の性能の低下は解決していない。
【0023】このバスネックに対応した技術として、例
えば特開平5−265932号公報は、システムバスを
共通バス制御部により制御するマルチプロセッサシステ
ムにおいて、各MPUとシステムバスの間に、記憶部と
制御部を有するインタフェースを接続している。そし
て、各MPUのアクセス速度より高速のアクセス速度の
メモリをシステムバスに接続する。MPUとインタフェ
ースの記憶部との間のデータ転送はMPUのアクセス速
度に従って行い、記憶部とメモリとの間で高速なデータ
転送を行っている。
【0024】この公知例では、システムバスをアクセス
する時間は、メモリのアクセスタイムに依存している。
従って、必ずMPUのアクセスタイムより速いメモリを
使用する必要があり、DRAMのような安価で大容量の
メモリを使用することが出来ない。
【0025】従って本発明は、複数のバスマスタとなり
得る装置(MPU、DMAC等)がシステムバスにアク
セスするバス制御装置において、アクセスタイムが高速
で高価なデバイスを用いず、遅いアクセスタイムのデバ
イスに影響されることなく、システムバスを効率的に利
用することを課題とする。
【0026】
【課題を解決するための手段】〔1〕上記の課題を解決
するため、本発明に係るバス制御装置は、バスマスタで
あるプロセッサ(MPU)10aとメモリ12がシステ
ムバスに共通接続されたバス制御装置において、図1に
原理的に示す如く、プロセッサ用出力バッファ30をバ
スマスタであるMPU10aとシステムバス20の間に
設ける。プロッセッサ用システムバス制御部15が、出
力バッファ30を出力イネーブル40(41)で制御す
ることによりMPU10aの出力信号であるアドレス2
02、制御信号24’及びデータ208をアクセス可能
な最小限の時間幅で該システムバス20に、アドレス2
1(アドレスバス21上の信号をアドレス21と称す
る)、システム制御信号24、及びデータ22(データ
バス22上の信号をデータ22と称する)としてアクセ
スする。
【0027】さらに、図2に原理的に示す如く、メモリ
用ラッチ回路33をシステムバス20とメモリ12の間
に設ける。メモリ用システムバス制御部16が、メモリ
用ラッチ回路33の入力タイミングをラッチイネーブル
51で制御することによりシステムバス20上の該出力
信号であるアドレス21、データ22及びシステム制御
信号24を保持し、該出力信号がメモリ書込を示すと
き、メモリ12の書込信号であるアドレス121、デー
タ122、チップセレクト53、及びライト124に変
換する。
【0028】この結果、MPU10a及びメモリ12の
システムバス20にアクセスする時間がアクセス可能な
最小限の時間で済み、その最小限の時間で、MPUは指
定するメモリ12のアドレスに指定するデータを書き込
むことが可能となる。
【0029】なお、図1のシステムバス同期制御部32
は、システムバス制御部15に含まれ、図2のメモリ制
御タイミング生成部34は、システムバス制御部16に
含まれるが、それぞれシステムバス制御部の外に図示し
ている。
【0030】〔2〕また、本発明は、上記の本発明
〔1〕において、さらに、メモリ12とシステムバス2
0の間にメモリ用出力バッファ35(図2参照)を設
け、システムバス20とMPU10aの間にプロセッサ
用ラッチ回路31(図1参照)を設ける。そして、図2
において、メモリ用システムバス制御部17が、該出力
信号である制御信号24’がメモリ読出を示すとき、メ
モリ12のアクセスタイムを考慮した読出信号に変換
し、メモリ用出力バッファ35を制御することによりメ
モリ12の出力データ122が安定したとき、システム
バス20にアクセス可能な最小限の時間幅で出力データ
22としてアクセスする。
【0031】図1において、プロッセッサ用システムバ
ス制御部15が、プロセッサ用ラッチ回路31の入力タ
イミングをシステムバスアクセス・リード44及びラッ
チタイミング46を制御することにより該データ信号2
2を保持し、プロッセッサMPU10aにデータ208
として読み込ませる。
【0032】この結果、MPU10a及びメモリ12の
システムバス20にアクセスする時間がアクセス可能な
最小限の時間のみで済み、MPU10aはこの最小限の
時間で指定するメモリ12のアドレスからデータを読み
出すことが可能となる。
【0033】〔3〕本発明を図2〜図4により説明す
る。バスマスタであるDMAC11(図3参照)とメモ
リ12(図2参照)及び処理回路であるI/O13a
(図4参照)がシステムバス20に共通接続されてお
り、DMAC用出力バッファ36(図3参照)をDMA
C11とシステムバス20との間に設ける。
【0034】そして、図3において、DMAC用システ
ムバス制御部17が、DMAC用出力バッファ36を出
力イネーブル60で制御することによりDMAC11の
出力信号であるアドレス202、制御信号24’及びD
MAC制御信号26をアクセス可能な最小限の時間幅で
該システムバス上にアドレス21、システム制御信号2
4及びDMAC制御信号26としてアクセスする。
【0035】図2において、上記〔1〕、〔2〕と同様
に、メモリ用ラッチ回路33をシステムバス20とメモ
リ12の間に設ける。メモリ用システムバス制御部16
が、メモリ用ラッチ回路33をラッチイネーブル51で
制御することによりシステムバス20上の出力信号であ
るアドレス21、データ22、システム制御信号24及
びバス制御信号25をラッチする。
【0036】そして、メモリ用システムバス制御部16
は、該出力信号がメモリ読出を示すとき、該出力信号を
該メモリ12のアクセスタイムを考慮した読出信号であ
るアドレス121及びチップセレクト53に変換し、メ
モリ12の出力データ信号122が安定したとき、出力
データ信号122をアクセス可能な最小限の時間幅で出
力バッファ35を介して該システムバス20上にデータ
22として送出する。
【0037】図4において、処理回路用システムバス制
御部であるI/O用システムバス制御部18は、システ
ムバス20からの出力データ信号であるアドレス21、
データ22、及びシステム制御信号24がデータ書込を
示すとき、データ22を書込信号72及び73により処
理回路I/O13aに書き込む。
【0038】この結果、DMAC11、メモリ12及び
I/O13aのシステムバス20にアクセスする時間が
アクセス可能な最小限の時間で済み、DMAC11は、
この最小限の時間でメモリ12の指定されたアドレスか
らデータを読み出し、このデータを指定されたI/O1
3aに書き込むことが可能となる。
【0039】なお、図3のシステムバス同期制御部37
は、システムバス制御部17に含まれ、図4のI/O制
御タイミング生成部38は、システムバス制御部18に
含まれるが、それぞれシステムバス制御部の外に図示し
ている。
【0040】〔4〕本発明を図2〜図4により説明す
る。上記〔3〕と同様に、DMAC11、メモリ12、
及びI/O13aがシステムバス20に共通接続されて
おり、DMAC用出力バッファ36(図3参照)が、D
MAC11とシステムバス20の間に設けられている。
【0041】図3において、DMCA用システムバス制
御部17が、DMAC用出力バファ36を出力イネーブ
ル60で制御することによりDMAC11の出力信号で
あるアドレス202、制御信号24’(203〜20
6)及びDMAC制御信号26をアクセス可能な最小限
の時間幅でシステムバス20上にアドレス21、システ
ム制御信号24及びDMAC制御信号26としてアクセ
スする。
【0042】図4において、I/O用出力バッファ39
が、I/O13aとシステムバス20の間に設けられて
いる。そして、I/O用システムバス制御部18は、出
力信号であるシステム制御信号24がI/O読出を示す
とき、I/O用出力バッファ39を出力イネーブル71
で制御することによりI/O13aの出力データである
データ22をアクセス可能な最小限の時間幅で該システ
ムバス20上に送出する。
【0043】図2において、上記と同様に、メモリ用ラ
ッチ回路33がシステムバス20とメモリ12の間に設
けられ、メモリ用システムバス制御部16が、メモリ用
ラッチ回路33をラッチイネーブル51で制御すること
でシステムバス20上の出力データであるアドレス2
1、データ22、及びシステム制御信号24を記憶し、
メモリ12のアクセスタイムを考慮したメモリ書込信号
であるアドレス121、データ122、システム制御信
号23’、チップセレクト53、及びライト124に変
換する。
【0044】この結果、DMAC11、メモリ12、及
びI/O13aのシステムバス20にアクセスする時間
がアクセス可能な最小限の時間で済み、DMAC11
は、その最小限の時間で、指定するI/O13aからデ
ータを読み出し、このデータを指定するメモリ12に書
き込むことが可能となる。
【0045】〔5〕本発明を図1及び図4により説明す
る。プロセッサ(MPU)10a(図1参照)とI/O
13a(図4参照)がシステムバス20に共通接続され
ている。図1において、上記の如くプロセッサ用出力バ
ッファ30がMPU10aとシステムバス20の間に設
けられ、プロッセッサ用システムバス制御部15が、プ
ロセッサ用出力バッファ30を出力イネーブル40(4
1)で制御することによりMPU10aの出力信号であ
るアドレス202、制御信号24’、及びデータ208
をアクセス可能な最小限の時間幅でシステムバス20に
アドレス21、システム制御信号24、及びデータ22
としてアクセスする。
【0046】図4において、I/O用システムバス制御
部18は、該システムバス20上の出力信号であるアド
レス21、データ22及びシステム制御信号24がI/
O書込を示すとき、該出力信号を書込信号に変換し、チ
ップセレクト72及びライト73を出力してデータを書
き込む。
【0047】この結果、MPU10a及びI/O13a
のシステムバス20にアクセスする時間がアクセス可能
な最小限の時間で済み、MPU10aはその最小限の時
間で指定したI/O13aにデータを書き込むことが可
能となる。
【0048】〔6〕本発明を図1及び図4より説明す
る。上記と同様に、プロセッサ(MPU)10aとI/
O13aがシステムバス20に共通接続されている。図
4において、I/O出力バッファ39が、I/O13a
とシステムバス20の間に設けられ、I/O用システム
バス制御部18が、I/O用出力バッファ39を出力イ
ネーブル71で制御することによりI/O13aの出力
データ22をアクセス可能な最小時間幅でシステムバス
20にアクセスする。
【0049】図1において、上記と同様に、プロセッサ
用ラッチ回路31が、システムバス20とMPU10a
の間に設けられ、プロセッサ用システムバス制御部15
が、プロセッサ用ラッチ回路31をシステムアクセス・
リード44、ラッチタイミング46で制御することによ
り、MPU10aがシステムバス20上の出力データ2
2をデータ208を読み込ことが可能となる。
【0050】この結果、MPU10a及びI/O13a
のシステムバス20にアクセスする時間がアクセス可能
な最小限の時間で済み、MPU10aはその最小限の時
間でI/O13aの指定されたアドレスからデータを読
み出すことが可能となる。
【0051】〔7〕また、本発明は、上記の本発明
〔3〕又は〔5〕において、図2に示したメモリ用ラッ
チ回路33の場合と同様に、システムバス20とI/O
13aの間にさらにI/O用ラッチ回路を設け、I/O
用システムバス制御部18が、I/O用ラッチ回路を制
御することにより該システムバス20上の該信号である
アドレス21、データ22、システム制御信号23を一
時記憶し、I/O13aのアクセスタイムを考慮した書
込信号に変換することができる。
【0052】この結果、I/O13aは、アクセスタイ
ムに応じて確実にデータを読み込むことが可能となる。
【0053】〔8〕また、本発明は、上記の本発明
〔1〕乃至〔6〕のいずれかにおいて、システムバス2
0のバスマスタが、サイクルを終了しないときで該シス
テムバスにアクセスしていないとき、別のバスマスタが
該システムバスにアクセスできる。
【0054】すなわち、バスマスタとなり得る複数のデ
バイスがシステムバスに共通接続された場合、バスマス
タであるデバイスが、例えばリード/ライトサイクル中
に一時的にシステムバスを開放したとき、別のデバイス
がバスリクエストを行ってシステムバスを使用すること
が可能である。
【0055】この結果、各バスマスタがシステムバスを
占有する時間を最小限で利用し、開放された時間を別の
バスマスタが利用することになり、システムバスの利用
効率を向上させることが可能になる。
【0056】
〔9〕また、本発明は、上記の本発明
〔7〕において、プロッセッサ、メモリ、DMAC及び
I/Oは、バスマスタとなることが可能である。
【0057】〔10〕また、本発明は、上記の本発明
〔1〕、〔3〕及び〔4〕のいずれかにおいて、該メモ
リ用ラッチ回路をFIFOとすることもできる。図2に
おいて、メモリ12のアクセスタイムが遅い場合、ラッ
チ回路33にFIFOを用いる。この結果、それぞれの
バスマスタがアクセスするアクションを保持することが
できる。
【0058】
【発明の実施の形態】図5は、本発明に係るバス制御装
置の実施例(1)を示しており、この実施例では、図1
に示した機能ブロックを詳細に示した論理回路図であ
る。同図の出力バッファ30及びラッチ回路31は、図
5のバッファ350,351及びラッチ回路383にそ
れぞれ相当している。同期制御部32は、バッファ34
3、AND回路362、D−FF回路378,379、
及びOR回路372で構成されている。図1のシステム
バス制御部15は、図5のその他の論理素子で構成され
ているが、その接続関係は後述する動作とともに説明す
る。なお、図1のプロセッサ(MPU)10aは、図5
では省略されている。
【0059】図6は、本発明の実施例(2)を示してお
り、この実施例は図2に示した機能ブロックを詳細にし
た論理回路図である。同図のメモリ12及び出力バッフ
ァ35は、図6のメモリ12と、バッファ450及び4
51とがそれぞれ相当している。ラッチ回路33は、ラ
ッチ回路483〜486,494〜497で構成され、
メモリ制御タイミング生成部34は、シフトレジスタ4
90、インバータ457及びNAND回路464で構成
されている。図2のシステムバス制御部17は、残りの
論理素子で構成されている。
【0060】図7は、本発明の実施例(3)を示してお
り、この実施例は図3に示した機能ブロックをより詳細
に示した論理回路図である。同図の出力バッファ36
は、図7のバッファ550〜552が相当し、システム
バス同期制御部37は、バッファ543、AND回路5
62及びD−FF回路578が相当している。システム
バス制御部16には、残りの論理素子で構成されている
が、その接続関係は後述する動作とともに説明する。な
お、図3のDMAC11は、図7では省略されている。
【0061】図8は、本発明の実施例(4)を示してお
り、この実施例は図4に示した機能ブロックをより詳細
に示した論理回路図である。同図のI/O13a及び出
力バッファ39は、図8のI/O13aと、バッファ6
46,650及び651とがそれぞれ相当している。I
/O制御タイミング生成部38は、バッファ644、シ
フトレジスタ689、インバータ658、及びAND回
路665で構成されている。システムバス制御部18
は、残りの論理素子で構成されているが、その接続関係
は後述する動作とともに説明する。
【0062】図9は、本発明の実施例(1)及び(2)
の動作例を示したタイムチャート図である。同図を参照
して、MPU10aがアドレスを指定してメモリ12
(図6参照)にデータを書き込む動作を図5及び図6に
より以下に説明する。
【0063】図5において、プログラムによりMPU1
0aがメモリライトするためにシステムバス20をアク
セスする場合、MPU10aは、システムバスアクセス
45(図9には図示せず)、メモリライト204(負論
理)及びメモリセレクト104’(図9には図示せず)
をアクティブとして出力する。さらに、MPU10aは
アドレス202を出力するとともにデータ(0)〜(1
5)208を出力する(図9のタイミングt11)。
【0064】システムバスアクセス45を入力したAN
D回路360の出力信号は、メモリライト204をOR
回路371及び368を介して入力してインアクティブ
からアクティブになる。この信号を受けたD−FF37
6,377及びシフトレジスタ388は、CLR(クリ
ア)状態が解除される。D−FF376及びシフトレジ
スタ388は、バッファ340を介して端子CLKに入
力されたバスクロック101に同期した動作を開始す
る。この結果、入力端子DがアクティブであるD−FF
376の出力端子Q、従ってAND回路361の一方の
入力端子はアクティブとなる。
【0065】AND回路361の出力は、他方の入力端
子が、アクティブであるD−FF377の出力信号/Q
(反転Qの意味)を入力しているのでアクティブとな
り、出力バッファ345の出力であるバスリクエスト1
02はアクティブ(負論理)になる(同t12)。
【0066】このバスリクエスト102を受信したシス
テムバス側は、システムバスが他のバスマスタによって
使用されていない場合、MPU10aバスアクノリッジ
103を返して来る(同t13)。このバスアクノリッ
ジ103をバッファ342を介して入力端子Aで受信し
たシフトレジスタ388は、出力端子Q A 及びQB をバ
スクロック101に同期して順次アクティブにする。
【0067】D−FF377の端子/Qに接続された入
力端子がアクティブNAND回路364の出力端子は、
シフトレジスタ388の出力端子QA がアクティブなっ
たときアクティブとなる。そして、シフトレジスタ38
8の出力端子QB がアクティブになったとき、D−FF
377はバスクロック101がAND回路365を介し
て端子CLKに入力され、出力端子/Qをインアクティ
ブとする。この信号を入力しているAND回路364及
び361の出力端子をインアクティブとなり、バスリク
エスト102はインアクティブとなる。
【0068】また、AND回路364の出力信号40が
アクティブのときのみ、この信号40をイネーブル端子
ENで受信したバッファ350は、アドレス(0)〜
(19)202、メモリセレクト104’、及びメモリ
ライト204等を、システムバス20上にアドレス
(0)〜(19)21(図9の斜線部分)、メモリセレ
クト104、及びメモリライト106(各信号は負論
理)としてアクセスする(同t14)。
【0069】一方、メモリライト204がアクティブの
とき、OR回路371及びインバータ354を介して接
続されたOR回路370の一方の入力端子はインアクテ
ィブとなる。従って、AND回路364の出力信号はO
R回路370を介してバッファ351のイネーブル端子
ENをアクティブにする。AND回路364の出力端子
がアクティブのときのみ、バッファ351はデータ
(0)〜(15)208をデータ(0)〜(15)22
(斜線部分)としてデータバス22にアクセスする(同
t14)。
【0070】図6において、初期化信号100をバッフ
ァ440を介して端子CLRに受信したD−FF476
〜478及び480は、初期状態で各出力端子/Qをア
クティブとしている。メモリセレクト104をバッファ
442を介して受信したD−FF476は、バッファ4
40を介して端子CLKに入力したバスクロック101
に同期して出力端子/Qをアクティブからインアクティ
ブにする。
【0071】従ってAND回路460の出力端子は、メ
モリセレクト104がアクティブのときからバスクロッ
ク101の立ち上がりまでアクティブとなる。このアク
ティブ信号をラッチイネーブル端子ENで受信したラッ
チ回路494〜497は、それぞれアドレス(0)〜
(19)21と、メモリリード105と、データ(0)
〜(15)22と、MPU10aバスアクノリッジ10
3をラッチする。
【0072】D−FF479の入力端子Dには、メモリ
セレクト104がバッファ442及び端子LENがアク
ティブであるラッチ回路492を介して入力されてい
る。D−FF479の出力端子Qがインアクティブのと
きのみ、OR回路468はクロック101を端子CLK
に与えると、D−FF479の出力端子Qはアクティブ
となる。この信号を端子CLKに入力したラッチ回路4
83〜486は、ラッチ回路494〜497の出力信号
を記憶する(同t15)。そして、D−FF479のア
クティブ(負論理)な出力端子/Qに接続されたメモリ
12の端子CSもアクティブ(負論理)となる。
【0073】シフトレジスタ490は、メモリライト1
06を入力端子Aで受けクロック101に同期して順次
出力端子QA 〜QD をアクティブにする。このQB 及び
D信号からインバータ457及びNAND464は、
B の立ち上りからQD の立ち上りまでのパルス信号を
ライト124信号として作成してメモリ12のライトイ
ネーブル端子WEに与える(同t16)。
【0074】メモリ12は、ラッチ回路483の出力デ
ータQ0〜Q19をアドレス121として、ラッチ回路
485の出力データQ0〜Q15をデータ122として
記憶する。以後、シフトレジスタの出力端子QD がアク
ティブになった時点で、このアクティブ信号をOR回路
475を介して入力端子Dに入力して、D−FF480
の出力Qが、インアクティブとなりD−FF479、ラ
ッチ回路484及び490はクリアされる。
【0075】一方、図5において、メモリライト204
は、OR回路371を介してD−FF379の入力端子
D及び端子CLRに入力されている。MPU10aバス
アクノリッジ103が、バッファ342及びシフトレジ
スタ388を介してバスクロック101に同期した形で
D−FF379の端子CLKに与えられる。この結果、
D−FF379の出力信号Qはメモリライト204がア
クティブ(負論理)でバスアクノリッジ103がアクテ
ィブ(負論理)になったときからメモリライト204が
インアクティブになるまでインアクティブになり、この
信号Qをバッファ372を介してレディ207として出
力し、このレディ207は、該CLK端子入力の立ち上
がりからメモリライト204がインアクティブになるま
で、アクティブとなる(同t14,t17)。
【0076】この結果、MPU10aは、システムバス
にアドレス21とデータ22及びシステム制御信号24
を出力した後、レディ207信号を受けて動作を終了す
る。なお、メモリ12へのアクセスタイミングは、シフ
トレジスタ490の出力端子とインバータ457及びA
ND回路464の入力端子の接続を変更して設定するこ
とが可能である。
【0077】また、D−FF479の出力端子Qがアク
ティブであることは、MPU10aからのメモリ書込信
号がラッチ回路494〜496からラッチ回路483〜
485にシフトされ、メモリ12への書込動作中である
ことを示している。
【0078】この書込動作中に、MPU10aとは別の
MPU10bがバスマスタとなりメモリ12にアクセス
してメモリセレクト104をアクティブとした場合につ
いて以下に説明する。メモリセレクト104は、バッフ
ァ442、D−FF476及びAND回路460を介し
たラッチ命令としてMPU10bのメモリ書込信号をラ
ッチ回路494〜496にラッチする。さらに、メモリ
セレクト104は、一方の入力端子がD−FF479の
アクティブである出力端子Qに接続されたAND回路4
61を介して、D−FF477及び478に順次シフト
され、D−FF478の出力端子/Qをアクティブ(負
論理)とする。
【0079】この出力端子/Qに接続されたラッチ回路
492の入力端子LENは、インアクティブ(正論理)
になったとき、バッファ442を介したメモリセレクト
104をラッチして出力し、D−FF479の入力端子
Dをアクティブにする。
【0080】MPU10aの書込信号の動作が完了して
D−FF479はクリアされ、出力端子Qがインアクテ
ィブになる。そして、出力端子Qはアクティブな入力端
子Dによって再びアクティブになる。この結果、MPU
10bのメモリ書込動作が実行されることになる。
【0081】次に、図9を参照して、MPU10aがメ
モリ12のアドレスを指定してデータを読み出す場合の
図5及び図6の動作を以下に説明する。この場合には、
システムバスをメモリリード動作のためにアクセスする
のでシステムバスアクセス45及びメモリリード203
がアクティブとなる(図9のタイミングt1)。さら
に、MPU10aはアドレス202を出力する。
【0082】これにより、同図のメモリライト動作を示
すタイミングt12〜t14と同様にして、図5の回路
において、MPU10aから出力されたアドレス(0)
〜(19)202は、最小限の時間(斜線部分)だけア
ドレスバス21にアクセス状態となる(同t2〜4)。
【0083】従って、バッファ350を介してメモリリ
ード203から変換されたメモリリード105は、この
斜線部分のみバス上でアクティブとなる。図6におい
て、アドレス21及びメモリリード105は、それぞれ
ラッチ回路483及び484に一時記憶され(同t
5)、メモり12に与えられる。
【0084】すなわち、メモリリード105は、ラッチ
回路495,484、及びインバータ456を介してメ
モリ12のアウトプットイネーブル端子OEに与えられ
る。メモリ12は、出力端子D0〜D15から指定され
たアドレス202(アドレス(0)〜(15)21)の
データ208を出力する。
【0085】一方、メモリリード105は、ラッチ回路
495及び484、シフトレジスタ489、D−FF4
81、及びバッファ44を介してメモリバスリクエスト
107としてシステムバス側に出力される(同t6)。
システムバス側は、システムバス20が空いている場
合、メモリバスアクノリジ108を返して来る(同t
7)。
【0086】メモリバスアクノリッジ108をバッファ
443を介して入力端子Aで受信してシフトレジスタ4
88は、クロック101に同期して出力QA 及びQB
順次アクティブにする。出力QA がアクティブになった
とき、インバータ458を介して接続されたバッファ4
50及び451の端子ENがアクティブとなる。
【0087】この結果、バッファ450は、データ12
2(メモリ12の出力D0〜D15)を、データバス2
2上にデータ(0)〜(15)22として出力し(斜線
部分)、バッファ451は、ラッチ回路486にラッチ
されていたMPU10aバスアクノリッジ103をMP
U10aリードアクノリッジ109として出力する(同
t7)。
【0088】シフトレジスタ488の出力端子QBがア
クティブになったとき、この端子QBにNOR回路47
5を介して入力端子Dが接続されたD−FF480の出
力端子Qは、インアクティブとなる。従って、シフトレ
ジスタ488,489、D−FF479,481及びラ
ッチ回路484はクリアされる。
【0089】図5において、MPU10aリードアクノ
リッジ109をバッファ343を介して受信したAND
回路362は、他方の端子で入力したバスクロック10
1を出力しD−FF378の端子CLKに与える。この
D−FF378は、アクティブなメモリリード203が
OR回路369を介して端子CLRで受けているため動
作状態であり、端子CLKにバスクロック101を受け
て、端子Dで入力したアクノリッジ109を出力端子Q
から出力する(同t8)。
【0090】D−FF378の出力端子Qの信号を端子
CLKに与えられたラッチ回路383は、バッファ34
4を介して入力したデータバス22上のデータ(0)〜
(15)22をラッチし、NAND回路366を介して
出力イネーブル端子ENに入力されたシステムバスアク
セス45がアクティブのときのみ、MPU10aのデー
タ入出力端子にデータ(0)〜(15)208として出
力する。
【0091】一方、D−FF378の出力端子Qの信号
は、OR回路372を介してレディ207としてMPU
10aに与えられる(同t9)。MPU10aはデータ
(0)〜(15)208を読み込み、動作を完了する。
さらに、MPU10aは、レディ207により読出サイ
クルを終了して、アドレス202、データ208、及び
制御信号に含まれるメモリリード203等の各信号をイ
ンアクティブにして、プロセッサの動作が終了する(同
t10)。
【0092】この結果、MPU10a及びメモリ12の
システムバス20にアクセスする時間がアクセス可能な
最小限の時間(データ22の斜線部分)で、MPU10
aは指定するメモリ12のアドレスからデータを読み出
すことことができた。
【0093】図10は、本発明の実施例(2)〜(4)
の動作例を示したタイムチャート図である。同図を参照
して、DMCA11がメモリ12のデータを読み出しI
/O13aに書き込む場合の図6乃至図8の動作を以下
に説明する。まず、図9に示したメモリリード時の動作
と同様に、メモリリード203が与えられるが、この場
合のメモリリード203はDMAC11から与えられる
点が、図9のMPU10aによる動作と異なっている。
【0094】従って、図7におけるOR回路568、A
ND回路560、D−FF576、シフトレジスタ58
8、AND回路561、NAND回路564,565、
D−FF回路577、及び出力バッファ544を経由す
ることにより、DMACバスリクエスト102がアクテ
ィブとなる(図10のt22)。
【0095】そして、図9と同様にして、DMACバス
アクノリッジ103(同t23)を得られ、DMAC1
1は、システムバスの使用権を獲得する。そして、シス
テムバス上にアドレス21(同24)、メモリセレクト
104(同)及びメモリリード105(同)が出力され
る。
【0096】さらに、図6において、アドレス21及び
メモリリード105をラッチ回路483及び484でラ
ッチすることによりアドレス121及びリード123が
メモリ12に与えられる(同t25)。この後、タイミ
ングt25からメモリ12の出力データが安定する時間
が経過した時(同t26)。メモリバスリクエスト10
7がアクティブとなる。
【0097】この時、システムバス20が占有されてい
なければ、システムバス側からメモリバスアクノリッジ
108を返して来る(同t27)。このメモリバスアク
ノリッジ108を受けてシフトレジスタ488、及びイ
ンバータ458を経由したイネーブル信号によりバッフ
ァ450からメモリ12の出力データD0〜D15がデ
ータ(0)〜(15)22としてデータバス22に出力
される(斜線部分)。
【0098】図6において、同時に、DMACバスアク
ノリッジ103が、バッファ497、ラッチ回路48
6、及びバッファ451を介してDMACリードアクノ
リッジ109が出力される(同t28)。
【0099】これでデータ22がシステムバス20上に
アクセスされたことになるので、次にはDMACによる
I/O13aへの書き込むための動作が行われる。図7
において、まず、上記のDMACリードアクノリッジ1
09を受けたDMAC用システムバス制御部17は、バ
ッファ543、他方の入力がアクティブなメモリリード
203であるNAND回路566、及びバッファ551
を介してDMAACK(1)112として出力する。
【0100】図8において、このDMAACK(1)1
12を受けたI/O用システムバス制御部18は、これ
をバッファ642及びインバータ655を介してI/O
13aのチップセレクト端子CSに与える。
【0101】さらに、DMAC用システムバス制御部1
7から出力されたI/Oライト206は、バッファ55
1(図7参照)によりI/Oライト111として出力さ
れる(タイミングt28)。図8において、このI/O
ライト111はバッファ44、シフトレジスタ689、
インバータ658、及びNAND回路665を経由して
I/O13aのライトイネーブル端子WEに与えられ
る。
【0102】この時、I/Oライト111は、バッファ
644及びインバータ656を介してバッファ645の
イネーブル端子ENに与えられている。従って、データ
(0)〜(15)22は、バッファ45を介してI/O
13aのデータD0〜D15として与えられ、I/O1
3aに書き込まれることになる。
【0103】一方、DMACリードアクノリッジ109
(図7参照)を受けたDMAC用システムバス制御部1
7は、バッファ543、AND回路562、及びD−F
F578を介してレディ207をDMAC11に返す
(同t29)。レディ207を受けたDMAC11は動
作を終了する(同t30)
【0104】次に、図10により、DMAC11がシス
テムバス20にI/O13aのデータを読み出しメモリ
12に書き込む場合の動作を説明する。まず、DMAC
11は、アドレス202を出力し、I/Oリード205
及びメモリライト204をアクティブにする(図10タ
イミングt31)。そして、I/Oライト時と同様にD
MACバスリクエスト102及びDMACバスアクノリ
ッジ103が送受信され、DMAC11はバスの使用権
を獲得する(同t32,t33)。
【0105】これにより、プロセッサ用システムバス制
御部15と同様に、図7において、I/Oリード205
と、アドレス(0)〜(19)202及びメモリライト
204とは、それぞれバッファ552及び550を介し
てI/Oリード110、アドレス(0)〜(19)21
及びメモリライト106として出力される。
【0106】図8において、さらに、DMACバスアク
ノリッジ103はバッファ646及びバッファ651を
介してDMACリードアクノリッジ109として出力さ
れる(同t34,t35)。I/Oリード110は、バ
ッファ644及びインバータ657を介してI/O13
の出力イネーブル端子OEに与えられ、I/O13aの
データ端子D0〜D15よりバッファ650を介してデ
ータ(0)〜(15)22としてシステムバス20に出
力される。アドレス(0)〜(19)21は、ラッチ回
路494,483を介してメモリ12のアドレス端子A
0〜A19に与えられる。
【0107】図6において、メモリライト106は、バ
ッファ495、ラッチ回路484、シフトレジスタ49
0、インバータ457及びNAND回路464を介して
メモリ12のイネーブル端子WEに与えられる。一方、
システムバス20上のデータ(0)〜(15)22は、
バッファ496及びラッチ回路485を介したメモリ1
2のデータ端子D0〜D15に与えられている。従っ
て、メモリライト106によりデータ22がメモリ12
に書き込まれることとなる(同t36)。
【0108】一方、I/O用システムバス制御部18か
らDMACリードアクノリッジ109を受けたDMAC
用システムバス制御部17は、上記と同様にしてバッフ
ァ43及びD−FF75を介してレディ207をDMA
C11に返す(同t29)。DMAC11は、動作を終
了する(同t30)。
【0109】
【発明の効果】以上説明したように、本発明に係るバス
制御装置によれば、プロセッサ、DMAC等の複数バス
マスタで構成されており、プロセッサとメモリ又はI/
Oとの間でデータを転送するとき、プロッセッサ用シス
テムバス制御部とメモリ用システムバス制御部又はI/
O用システムバス制御部とが、各入出力信号をアクセス
可能な最小限の時間幅でシステムバスにアクセスするよ
うに構成し、DMCAがメモリとI/Oとの間でデータ
を転送するとき、DMAC用システムバス制御部とメモ
リ用システムバス制御部又はI/O用システムバス制御
部とが、各入出力信号をアクセス可能な最小限の時間幅
でシステムバスにアクセスするように構成したので、ア
クセスタイムが高速で高価なデバイスを用いず、遅いア
クセスタイムのデバイスに影響されることなく、システ
ムバスを効率的に利用することが可能となる。
【0110】この結果、他のプロセッサ等がシステムバ
スを使用中に、プロセッサがウエイト状態になること
や、DMA転送中に、プロセッサが全くシステムバスに
アクセスことが出来なくなる状態になることを回避で
き、システムの性能を向上することが可能となった。ま
た、アクセスタイムの遅いメモリやI/Oに引きずられ
て、性能が低下することを防ぐことが可能となった。さ
らに、システムバスを占有した状態でのハングアップ状
態がなくなるため、バスマスタ(プロッセッサ等)相互
間でハングアップした時の救済処置を施すことにより、
さらに信頼の高いシステムを構築することが可能となっ
た。
【図面の簡単な説明】
【図1】本発明に係るバス制御装置の原理(1)を説明
したブロック図である。
【図2】本発明に係るバス制御装置の原理(2)を説明
したブロック図である。
【図3】本発明に係るバス制御装置の原理(3)を説明
したブロック図である。
【図4】本発明に係るバス制御装置の原理(4)を説明
したブロック図である。
【図5】本発明に係るバス制御装置の実施例(1)を示
した論理回路図である。
【図6】本発明に係るバス制御装置の実施例(2)を示
した論理回路図である。
【図7】本発明に係るバス制御装置の実施例(3)を示
した論理回路図である。
【図8】本発明に係るバス制御装置の実施例(4)を示
した論理回路図である。
【図9】本発明の実施例(1)及び(2)の動作例を示
したタイムチャートである。
【図10】本発明の実施例(2),(3)及び(4)の
動作例を示したタイムチャートである。
【図11】一般的なバス制御装置の構成例を示したブロ
ック図である。
【図12】従来のバス制御装置におけるプロッセッサの
アクセスタイミングを示したタイムチャート図である。
【図13】従来のバス制御装置におけるDMACのアク
セスタイミングを示したタイムチャート図である。
【符号の説明】
10a,10b プロセッサ(MPU)11 DMAC 12 メモリ 13a,13b 処理回路
(I/O) 15 プロッセッサ用システムバス制御部 16 メモリ用システムバス制御部 17 DMAC用システムバス制御部 18 I/O用システムバス制御部 20 システムバス 21 アドレスバス 22 データバス 23 制御バス 24 システム制御信号 25 バス制御信号 26 DMAC制御信号 30 プロセッサ用出力
バッファ 31 プロセッサ用ラッチ回路 32 プロセッサ用シス
テムバス同期制御部 33 メモリ用ラッチ回路 34 メモリ制御タイミ
ング生成部 35 メモリ用出力バッファ 36 DMCA用出力バ
ッファ 37 DMAC用システムバス同期制御部 38 I/O制御タイミング生成部 39 I/O用出力バッファ 340〜351,440〜451,540〜552,640〜651 バッファ 354,454〜457,554,654〜658 インバータ 360〜362,460〜461,560〜562 AND回路 364〜366,464,564〜566,664,665 NAND回路 368〜372,468, 469,568〜571,668,669 OR回路 474, 475 NOR回路 376〜379,476〜481,576〜578,676 D−FF回路 383,483〜486,494〜497 ラッチ回路 388,488〜490,588,688,689 シフトレジスタ 図中、同一符号は同一又は相当部分を示す。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】プロセッサとメモリがシステムバスに共通
    接続されたバス制御装置において、 該プロセッサと該システムバスの間に設けられたプロセ
    ッサ用出力バッファと、 該プロセッサ用出力バッファを制御することにより該プ
    ロセッサの出力信号をアクセス可能な最小限の時間幅で
    該システムバスにアクセスするプロッセッサ用システム
    バス制御部と、 該システムバスと該メモリの間に設けられたメモリ用ラ
    ッチ回路と、 該メモリ用ラッチ回路の入力タイミング制御することに
    より該システムバス上の該出力信号を保持し、該出力信
    号がメモリ書込を示すとき、該メモリの書込信号に変換
    するメモリ用システムバス制御部と、 を有することを特徴としたバス制御装置。
  2. 【請求項2】請求項1において、 さらに、該メモリと該システムバスの間にメモリ用出力
    バッファと、 該システムバスと該プロセッサの間にプロセッサ用ラッ
    チ回路と、 を有し、 該メモリ用システムバス制御部が、該出力信号がメモリ
    読出を示すとき、該メモリのアクセスタイムを考慮した
    読出信号に変換し、該メモリ用出力バッファを制御する
    ことにより該メモリの出力データが安定したとき、該シ
    ステムバスにアクセス可能な最小限の時間幅で該出力デ
    ータをアクセスし、 該プロッセッサ用システムバス制御部が、該プロセッサ
    用ラッチ回路の入力タイミングを制御することにより該
    データ信号を保持し、該プロッセッサに読み込ませる、 ことを特徴としたバス制御装置。
  3. 【請求項3】DMAC、メモリ、及び処理回路がシステ
    ムバスに共通接続されたバス制御装置において、 該DMACと該システムバスの間に設けられたDMAC
    用出力バッファと、 該DMAC用出力バッファを制御することにより該DM
    ACの出力信号をアクセス可能な最小限の時間幅で該シ
    ステムバス上にアクセスするDMCA用システムバス制
    御部と、 該システムバスと該メモリの間に設けられたメモリ用ラ
    ッチ回路と、 該メモリ用ラッチ回路を制御することで該システムバス
    上の該出力信号を記憶し、該出力信号がメモリ読出を示
    すとき、該出力信号を該メモリのアクセスタイムを考慮
    した読出信号に変換し、該メモリの出力データが安定し
    たとき、該出力データ信号をアクセス可能な最小限の時
    間幅で該システムバス上にアクセスするメモリ用システ
    ムバス制御部と、 該出力信号がデータ書込を示すとき、外該システムバス
    にアクセスして該出力データ信号を該処理回路に書き込
    む処理回路用システムバス制御部と、 を有することを特徴としたバス制御装置。
  4. 【請求項4】DMAC、メモリ、及び処理回路がシステ
    ムバスに共通接続されたバス制御装置において、 該DMACと該システムバスの間に設けられたDMAC
    用出力バッファと、 該DMAC用出力バッファを制御することにより該DM
    ACの出力信号をアクセス可能な最小限の時間幅で該シ
    ステムバス上にアクセスするDMCA用システムバス制
    御部と、 該処理回路と該システムバスの間に設けられた処理回路
    用出力バッファと、 該出力信号が処理回路読出を示すとき、処理回路用出力
    バッファを制御することより該処理回路の出力データを
    アクセス可能な最小限の時間幅で該システムバス上にア
    クセスする処理回路用システムバス制御部と、 該システムバスと該メモリの間に設けられたメモリ用ラ
    ッチ回路と、 該メモリ用ラッチ回路を制御することで該システムバス
    上の該出力データを記憶し、該メモリのアクセスタイム
    を考慮したメモリ書込信号に変換するメモリ用システム
    バス制御部と、 を有することを特徴としたバス制御装置。
  5. 【請求項5】プロセッサと処理回路が、システムバスに
    共通接続されたバス制御装置において、 該プロセッサと該システムバスの間に設けられたプロセ
    ッサ用出力バッファと、 該プロセッサ用出力バッファを制御することにより該プ
    ロセッサの出力信号をアクセス可能な最小限の時間幅で
    該システムバスにアクセスするプロッセッサ用システム
    バス制御部と、 該システムバス上の該出力信号が処理回路書込を示すと
    き、該出力信号を書込信号に変換する処理回路用システ
    ムバス制御部と、 を有することを特徴としたバス制御装置。
  6. 【請求項6】プロセッサと処理回路が、システムバスに
    共通接続されたバス制御装置において、 該処理回路とシステムバスの間に設けられた処理回路用
    出力バッファと、 該処理回路用出力バッファを制御することにより該処理
    回路の出力データをアクセス可能な最小時間幅で該シス
    テムバスにアクセスする処理回路用システムバス制御部
    と、 該システムバスと該プロセッサの間に設けられたプロセ
    ッサ用ラッチ回路と、 該プロセッサ用ラッチ回路を制御することにより、該シ
    ステムバス上の該出力データを該プロセッサに読み込ま
    せる読込信号を発生するプロセッサ用システムバス制御
    部と、 を有することを特徴としたバス制御装置。
  7. 【請求項7】請求項3又は5において、 該システムバスと処理回路の間にさらに処理回路用ラッ
    チ回路を有し、 部該処理用システムバス制御装置が、処理回路用ラッチ
    回路を制御することにより該システムバス上の該信号を
    一時記憶し該処理回路のアクセスタイムを考慮した書込
    信号に変換することを特徴としたバス制御装置。
  8. 【請求項8】請求項1乃至6のいずれかにおいて、 該システムバスのバスマスタが、サイクルを終了しない
    ときで該システムバスにアクセスしていないとき、別の
    バスマスタが該システムバスにアクセスできることを特
    徴としたバス制御装置。
  9. 【請求項9】請求項7において、 該バスマスタが、プロッセッサ、メモリ、DMAC及び
    処理部のいずれかであることを特徴としたバス制御装
    置。
  10. 【請求項10】請求項1、3及び4のいずれかにおい
    て、 該メモリ用ラッチ回路がFIFOであることを特徴とし
    たバス制御装置。
JP10070544A 1998-03-19 1998-03-19 バス制御装置 Pending JPH11272606A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP10070544A JPH11272606A (ja) 1998-03-19 1998-03-19 バス制御装置
US09/232,604 US6493775B2 (en) 1998-03-19 1999-01-19 Control for timed access of devices to a system bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10070544A JPH11272606A (ja) 1998-03-19 1998-03-19 バス制御装置

Publications (1)

Publication Number Publication Date
JPH11272606A true JPH11272606A (ja) 1999-10-08

Family

ID=13434577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10070544A Pending JPH11272606A (ja) 1998-03-19 1998-03-19 バス制御装置

Country Status (2)

Country Link
US (1) US6493775B2 (ja)
JP (1) JPH11272606A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516258B2 (en) 2005-03-11 2009-04-07 Canon Kabushiki Kaisha Electronic apparatus and control method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052714A (ja) * 2005-08-19 2007-03-01 Fuji Xerox Co Ltd 情報処理システム
US8271709B2 (en) * 2009-05-11 2012-09-18 Honeywell International Inc. Bus protocol for control of communications between two computers

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4095265A (en) * 1976-06-07 1978-06-13 International Business Machines Corporation Memory control structure for a pipelined mini-processor system
US4410943A (en) * 1981-03-23 1983-10-18 Honeywell Information Systems Inc. Memory delay start apparatus for a queued memory controller
JPS60147866A (ja) 1984-01-12 1985-08-03 Nippon Telegr & Teleph Corp <Ntt> バス制御方式
US5034917A (en) * 1988-05-26 1991-07-23 Bland Patrick M Computer system including a page mode memory with decreased access time and method of operation thereof
US5182800A (en) * 1990-11-16 1993-01-26 International Business Machines Corporation Direct memory access controller with adaptive pipelining and bus control features
WO1993004432A2 (en) * 1991-08-16 1993-03-04 Multichip Technology High-performance dynamic memory system
US5471632A (en) * 1992-01-10 1995-11-28 Digital Equipment Corporation System for transferring data between a processor and a system bus including a device which packs, unpacks, or buffers data blocks being transferred
JPH05265932A (ja) 1992-03-18 1993-10-15 Fujitsu Ltd バス制御方式
US5613162A (en) * 1995-01-04 1997-03-18 Ast Research, Inc. Method and apparatus for performing efficient direct memory access data transfers
US5826045A (en) * 1995-12-11 1998-10-20 Ncr Corporation Arbitration parking apparatus and method for a split transaction bus in a multiprocessor computer system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516258B2 (en) 2005-03-11 2009-04-07 Canon Kabushiki Kaisha Electronic apparatus and control method

Also Published As

Publication number Publication date
US6493775B2 (en) 2002-12-10
US20020069311A1 (en) 2002-06-06

Similar Documents

Publication Publication Date Title
EP0426329B1 (en) Combined synchronous and asynchronous memory controller
US11829640B2 (en) Asynchronous arbitration across clock domains for register writes in an integrated circuit chip
US7581054B2 (en) Data processing system
EP1730643A2 (en) Pvdm (packet voice data module) generic bus protocol
JP2004171209A (ja) 共有メモリデータ転送装置
US7263572B2 (en) Bus bridge and data transfer method
EP0663087A1 (en) Method and apparatus for non-snoop window reduction
JP3514477B2 (ja) 入力/出力装置及びデータ転送方法
CN117312210B (zh) 一种通用扩展risc-v处理器性能的方法
JPH1011180A (ja) コンピュータ・システムに用いられる周辺装置及びその制御方法
US6519670B1 (en) Method and system for optimizing a host bus that directly interfaces to a 16-bit PCMCIA host bus adapter
US7774513B2 (en) DMA circuit and computer system
US6247089B1 (en) Efficient data loading scheme to minimize PCI bus arbitrations delays and wait states
JPH11272606A (ja) バス制御装置
US7904624B2 (en) High bandwidth split bus
EP0426156B1 (en) Floppy disk controller with DMA verify operations
JPH07295947A (ja) データ転送管理装置及び方法
CN120179571B (zh) 一种ddr内存地址动态管理的控制方法及系统
JP3240863B2 (ja) 調停回路
WO1992006432A1 (fr) Dispositif de commande de bus
JP2013120587A (ja) シリアル転送装置及びシリアル転送方法
EA038978B1 (ru) Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном пзу, в адресное пространство микропроцессорного ядра, компьютерная система и способ передачи данных
JP2002073534A (ja) データ転送装置
JP2003067322A (ja) データ転送方法、ブリッジ回路、及びデータ転送システム
JPH1063566A (ja) メモリ調停回路及び電子回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090824

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091201