JPH09330289A - 競合制御回路 - Google Patents

競合制御回路

Info

Publication number
JPH09330289A
JPH09330289A JP14758396A JP14758396A JPH09330289A JP H09330289 A JPH09330289 A JP H09330289A JP 14758396 A JP14758396 A JP 14758396A JP 14758396 A JP14758396 A JP 14758396A JP H09330289 A JPH09330289 A JP H09330289A
Authority
JP
Japan
Prior art keywords
dmac
bus
priority
control circuit
contention
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP14758396A
Other languages
English (en)
Inventor
Mitsunari Takahashi
充成 高橋
Yasuo Tezuka
康夫 手塚
Susumu Kojima
進 小島
Tetsuo Yamaguchi
哲夫 山口
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 JP14758396A priority Critical patent/JPH09330289A/ja
Publication of JPH09330289A publication Critical patent/JPH09330289A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 DMACの内部レジスタにCPUがアクセス
したのと同時に、当該DMACからのDMA要求及び他
DMACからのDMA要求があった場合において、CP
Uがバス使用権を得た場合には、当該DMACが待ち状
態となると共に、他DMACも待ち状態となってしま
う。 【解決手段】 BMバス競合制御回路は、各DMACの
優先順位状態に応じて優先度の低いDMACに対応する
DMACバス競合制御回路に対してBMバス待ち合わせ
表示信号を供給し、複数のDMACバス競合制御回路
は、対応するDMACがDMACバスの待ち合わせ時で
あるときBMバス競合制御回路にDMACバス待ち合わ
せ表示信号を供給する。待ち合わせをしたときには、他
のDMACに対してバス使用権を与えることができ、C
PUからの当該DMAC内レジスタアクセスと、他のD
MACのDMA転送とを並行に実行できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、競合制御回路に関
し、複数の入出力ポートより入出力されるデータを、複
数のDMAC(ダイレクト・メモリ・アクセス・コント
ローラ)と内部メモリとの間でデータ転送する際の競合
を制御する回路に関する。
【0002】近年のデータ入出力装置においては、入出
力ポートの増加に伴い内部メモリとの間で行われるデー
タ転送の高速化が要求されている。このため、プログラ
ム処理、プログラムによるDMAC内レジスタアクセ
ス、複数のDMACと内部メモリとの間のデータ転送を
並行に処理させるために、それぞれが接続されるバスを
分離させる必要がある。
【0003】よって、DMACバス及び内部メモリバス
にておこり得るバスアクセス競合を、それぞれ連携させ
ながら制御させ、又、各入出力ポートのデータ転送量に
合わせた、内部メモリバスの使用割合の割り付けが必要
である。
【0004】
【従来の技術】従来の競合制御回路においては、図29
に示す如く、複数のDMAC100 〜103 と内部メモ
リ(BM)12が同一のBMバス14に接続されている
ため、BMバス14上における複数DMAC間の競合制
御は、各DMACからのDMA要求信号と、CPU16
からのアクセス要求信号と、予め決められた優先度によ
り、一括に行われていた。
【0005】
【発明が解決しようとする課題】ところが、図30
(A)〜(F)に示す如く、DMAC100 の内部レジ
スタにCPU16がアクセスしたのと同時に、当該DM
AC100 からのDMA要求及び他DMAC100 〜1
3 からのDMA要求があった場合において、CPU1
6がバス使用権を得た場合には、当該DMAC100
待ち状態となると共に、他DMAC101 〜103 も待
ち状態となってしまう。すなわち、BMメモリ12に対
するアクセスがされていないにもかかわらず、無用の待
ち状態が発生し、データ転送効率が悪くなってしまう。
【0006】また、内部メモリとして高速素子を使用し
ていたとしても、BMバス12上のデータ転送速度は、
DMACの持つ転送能力に左右されるため、BMバスの
高速化が望めない。本発明は、DMACの内部レジスタ
にCPUがアクセスしたのと同時に、当該DMAC及び
他DMACからのDMA要求があった場合において、当
該DMACの内部レジスタに対するCPUのアクセス
と、他DMACのDMAとを並行処理させることによ
り、BMバス上のデータ転送効率を上げ、またデータ転
送速度の遅いDMACを使用した場合における、BMバ
ス上のデータ転送を高速化する競合制御回路を提供する
ことを目的とする。
【0007】更に、上記目的に加え、BMバス上のデー
タ転送の際、各DMACの優先順位を状況に応じて変化
させることにより、BMバス上のデータ転送を円滑にす
る競合制御回路を提供することを目的とする。
【0008】
【課題を解決するための手段】請求項1に記載の発明
は、CPUと、データバッファメモリに対して入出力デ
ータをDMA転送する複数のDMACとの競合を制御す
る競合制御回路であって、上記CPUから複数のDMA
C夫々に対するアクセス要求と複数のDMAC夫々のD
MA要求とによる、各DMACが接続されたDMACバ
スの競合を制御する複数のDMACバス競合制御回路
と、上記複数のDMAC夫々のDMA要求によるデータ
バッファメモリが接続されたBMバスの競合を制御する
BMバス競合制御回路と、上記複数のDMACの優先順
位状態を表わす優先順位状態表示回路とを有し、上記B
Mバス競合制御回路は、各DMACの優先順位状態に応
じて優先度の低いDMACに対応するDMACバス競合
制御回路に対してBMバス待ち合わせ表示信号を供給
し、上記複数のDMACバス競合制御回路は、対応する
DMACがDMACバスの待ち合わせ時であるとき上記
BMバス競合制御回路にDMACバス待ち合わせ表示信
号を供給する。
【0009】このように、複数のDMACによるBMバ
スの競合があった場合に、BMバス上で優先度が高いD
MACがCPUからの当該DMAC内レジスタのアクセ
スにより待ち合わせをしたときには、他のDMACに対
してバス使用権を与えることができ、CPUからの当該
DMAC内レジスタアクセスと、他のDMACのDMA
転送とを並行に実行できる。
【0010】請求項2に記載の発明は、CPUと、デー
タバッファメモリに対して入出力データをDMA転送す
る複数のDMACとの競合を制御する競合制御回路であ
って、上記CPUから複数のDMAC夫々に対するアク
セス要求と複数のDMAC夫々のDMA要求とによる、
各DMACが接続されたDMACバスの競合を制御する
複数のDMACバス競合制御回路と、上記複数のDMA
C夫々のDMA要求によるデータバッファメモリが接続
されたBMバスの競合を制御するBMバス競合制御回路
と、上記複数のDMACの優先順位状態を表わす優先順
位状態表示回路とを有し、上記複数のDMACバス競合
制御回路は、DMA要求を行ったDMACに許可を与え
ると共に、上記BMバス競合制御回路にBMバス要求を
行い、BMバス競合制御回路は、各DMACの優先順位
状態に応じて優先度の低いDMACに対してBMバス待
ち合わせ表示信号を供給する。
【0011】このように、複数のDMACによるBMバ
スの競合があった場合に、待ち合わせをしたDMACに
対しては、先行してDMAを開始させると共に待ち合わ
せ制御を行い、各DMACによるBMバス保有時間及び
待ち合わせ時間を最小とすることが可能となる。
【0012】請求項3に記載の発明は、請求項1又は2
記載の競合制御回路において、前記優先順位状態表示回
路は、BMバスの使用権を獲得したDMACの優先順位
を最下位に遷移させる。このように、複数のDMACの
BMバスにおけるバス競合があった場合に、バス使用権
を獲得したDMACの優先順位を最下位へ移すことによ
り、各DMACのバス使用権獲得に偏りを生じない。
【0013】請求項4に記載の発明は、請求項1又は2
記載の競合制御回路において、前記優先順位状態表示回
路は、各DMACの単位時間当りのBMバス待ち合わせ
率を求め、上記BMバス待ち合わせ率が高いDMACの
優先順位を高くする。このように、複数のDMACのB
MへのDMA要求があった場合に、各DMACのBMバ
ス使用要求回数とBMバス待ち合わせ回数をカウントし
て各DMAC毎のBMバス待ち合わせ率を算出すること
により、待ち合わせ率の大きいDMACの優先順位を高
くすることが可能となる。
【0014】請求項5に記載の発明は、請求項1又は2
記載の競合制御回路において、前記優先順位状態表示回
路は、単位時間当りの待ち合わせ回数が予め設定された
回数を越えたDMACの優先順位を最上位に遷移させ
る。このように、複数のDMACによるBMバスの競合
があった場合に、各DMACの単位時間当りの待ち合わ
せ回数が予め設定された回数を越えたとき、当該回数を
越えたDMACの優先順位を最上位に移すことにより、
バス使用頻度の高いDMACの優先順位を上げることが
可能となる。
【0015】請求項6に記載の発明は、請求項1又は2
記載の競合制御回路において、前記優先順位状態表示回
路は、単位時間当りの使用要求回数が予め設定された回
数を越えたDMACの優先順位を最上位に遷移させる。
このように、複数のDMACのBMへのDMA要求があ
った場合に、各DMACの単位時間当りの使用要求回数
が予め設定された回数を越えた場合に、当該回数を越え
たDMACの優先順位を最上位に移すことにより、バス
使用頻度の高いDMACの優先順位を上げることが可能
となる。
【0016】請求項7に記載の発明は、請求項3記載の
競合制御回路において、前記優先順位状態表示回路は、
所定のDMACの優先順位の下位への遷移を防止する。
このように、複数のDMACのBMへのDMA要求があ
った場合に、優先順位を上位固定としたいDMACの最
下位状態遷移を抑止することにより、継続してバス使用
頻度の高いDMACの優先順位を上位固定とすることが
可能となる。
【0017】請求項8に記載の発明は、請求項1又は2
記載の競合制御回路において、前記優先順位状態表示回
路は、各DMACのBMバス使用権の獲得回数がDMA
C毎に設定された所定回数を越えたときに優先順位を最
下位に遷移させる。このように、複数のDMACのBM
へのDMA要求があった場合に、各DMA毎に、最下位
状態に遷移するまでに要するDMA転送回数を任意に設
定することにより、優先度の遷移の契機を可変すること
が可能となる。
【0018】請求項9に記載の発明は、請求項1又は2
記載の競合制御回路において、各DMACのBMバス使
用権獲得に応じてBMバス使用権を獲得したDMAC及
び優先順位状態を記憶するメモリを有する。このよう
に、複数のDMACのBMへのDMA要求があった場合
に、各DMACのBMバス使用権の獲得を契機に、DM
AC番号及びその時の優先順位状態番号をメモリに記録
させることにより、任意時間帯でのBMバス上における
各DMACのDMAの実行結果を、その時の優先順位状
態番号と共に実行順に記録でき、また、その記録を読み
取りが可能となる。
【0019】
【発明の実施の形態】図2は本発明を適用したシステム
のブロック図を示す。同図中、DMAC20 0 〜20n
夫々はDMACバス220 〜22n と接続されている。
DMACバス220 〜22n 夫々はDMAC−BMゲー
ト240 〜24n 夫々を介してBMバス26に接続さ
れ、BMバス26には内部メモリ(BM)28が接続さ
れている。DMAC200 〜20n 夫々は入出力ポート
とBM28との間で入出力データのDMA(ダイレクト
・メモリ・アクセス)転送を行う。
【0020】また、DMACバス220 〜22n 夫々は
CPU−DMACゲート320 〜32n 夫々を介してC
PUバス34に接続され、CPUバス34にはCPU3
0及びプログラムを格納したプログラムメモリ(PM)
36等が接続されている。また、CPUバス34とBM
バス26との間にはCPU30に制御されるCPU−B
Mゲート38が接続されている。競合制御回路40はD
MAC200 〜20n及びCPU30と接続されてお
り、DMAC−BMゲート240 〜24n 及びCPU−
DMACゲート320 〜32n 夫々の開閉制御を行う。
また、競合制御回路40には優先順位状態表示回路42
が相互接続されている。更にBMバス使用率監視回路4
4及びBMバス使用状態記録回路46はCPUバス34
に接続されると共に、競合制御回路40に接続されてい
る。
【0021】図1は競合制御回路の第1実施例のブロッ
ク図を示す。同図中、競合制御回路40はDMACバス
競合制御回路500 〜50n 及びBMバス競合制御回路
52から構成されている。DMACバス競合制御回路5
0 〜50n は、各DMACバス200 〜20n におけ
るCPU30とDMAC200 〜20n のバス競合を制
御する。BMバス競合制御回路52は、BMバス26に
おける複数のDMAC200 〜20n のバス競合を制御
する。
【0022】DMACバス競合制御回路500 〜50n
夫々は、CPU30からのDMACバス使用要求信号で
あるCPU−DMACバスRQ0 〜RQn と、DMAC
20 0 〜20n からのDMA要求信号であるDMARQ
0 〜DMARQn とを使用して予め決められた優先度に
よりDMACバス220 〜22n 上の競合制御を行い、
CPU30がバス使用権を得た場合には、CPU30へ
のDMACバス使用許可信号であるCPU−DMACバ
スACK0 〜ACKn と、CPU−DMACゲートの開
放信号と、BMバス競合制御回路52に対するDMAC
バス待ち合わせ表示信号であるDWAIT0 〜DWAI
n を出力する。またDMAC200 〜20n がバス使
用権を得て、かつ、BMバス競合制御回路52からのB
Mバス待ち合わせ表示信号であるWAIT10〜WAIT
1nによる待ち合わせ表示が無い場合には、DMAC20
0 〜20n へのDMACバス使用許可信号であるDMA
ACK0 〜DMAACKn と、DMAC−BMゲートの
開放信号を出力する。DMAC200 〜20n がバス使
用権を得て、かつ、BMバス競合制御回路52からのW
AIT10〜WAIT1nによる待ち合わせ表示がある場合
には、WAIT10〜WAIT1nによる待ち合わせ表示が
無くなるのを待って、DMAACK0 〜DMAACKn
と、DMAC−BMゲートの開放信号を出力する。
【0023】BMバス競合制御回路52は、複数のDM
AC200 〜20n からのDMARQ0 〜DMARQn
と、優先順位状態表示回路42から供給される各DMA
Cの優先順位を表示する優先順位状態表示信号により、
DMACバス競合制御回路500 〜50n からのDWA
IT0 〜DWAITn による待ち合わせ表示が無いDM
ACのみについて、BMバス26上の競合制御を行い、
DWAIT0 〜DWAITn による待ち合わせ表示が有
るDMACについては、DWAIT0 〜DWAITn
よる待ち合わせ表示が無くなるのを待って競合制御を行
い、バス使用権を得られなかった全てのDMACに対応
するDMACバス競合制御回路に対し、BMバス待ち合
わせ信号であるWAIT10〜WAIT1nを出力する。
【0024】ここで、DMAバス競合制御回路500
50n ではCPU−DMACバスRQ0 〜CPU−DM
ACバスRQn がDMARQ0 〜DMARQn より優先
度が高く、BMバス競合制御回路52ではDMARQ0
〜DMARQn の順に優先度が低くなるものとする。こ
の場合に、図3(A)に示すCPU−DMACバスRQ
0 と、同図(B),(D),(E),(F)に示すDM
A−RQ0 〜DMA−RQ3 とが競合すると、CPU3
0がDMAC200 のDMACバス220 の使用権を獲
得し、同時に同図(C)に示す如く、DMAC200
DWAIT10が供給され、同図(H)に示す如くCPU
30によりDMAC200 内のレジスタがアクセスされ
る。また、同図(G)に示す如く、上記のタイミングで
BMバス26の使用権をDMAC201 が獲得する。そ
の後、DMAC201 のDMA転送が終了すると、DM
AC200 ,DMAC202 ,DMAC203 の順にB
Mバス26の使用権を獲得してDMA転送を行う。
【0025】このように、複数のDMAC100 〜10
n によるBMバス26の競合があった場合に、待ち合わ
せをしたDMACに対しては、先行してDMAを開始さ
せると共に待ち合わせ制御を行い、各DMACによるB
Mバス保有時間及び待ち合わせ時間を最小とすることが
可能となる。
【0026】図4は競合制御回路の第2実施例のブロッ
ク図を示す。同図中、競合制御回路40はDMACバス
競合制御回路600 〜60n 及びBMバス競合制御回路
62から構成されている。DMACバス競合制御回路6
0 〜60n は、各DMACバス220 〜22n におけ
るCPU30とDMAC200 〜20n のバス競合を制
御する。BMバス競合制御回路62は、BMバス26に
おける複数のDMAC200 〜20n のバス競合を制御
する。
【0027】DMACバス競合制御回路600 〜60n
夫々は、CPU30からのDMACバス使用要求信号で
あるCPU−DMACバスRQ0 〜RQn と、DMAC
20 0 〜20n からのDMA要求信号であるDMARQ
0 〜DMARQn とを使用して予め決められた優先度に
よりDMACバス220 〜22n 上の競合制御を行い、
CPU30がバス使用権を得た場合には、CPU30へ
のDMACバス使用許可信号であるCPU−DMACバ
スACK0 〜ACKn と、CPU−DMACゲートの開
放信号と、DMAC200 〜20n へのDMACバス使
用許可信号であるDMAACK0 〜DMAACKn を出
力する。DMAC200 〜20n がバス使用権を得た場
合には、DMAACK0 〜DMAACKn と、BMバス
競合制御回路62に対するBMバス使用要求信号である
BRQ0 〜BRQn を出力する。BMバス競合制御回路
62からのBMバス使用許可信号であるBAK0 〜BA
n を供給された場合は、BRQ0 〜BRQn の出力を
無くし、BMバス競合制御回路62は、BRQ0 〜BR
n と、優先順位状態表示回路42から供給される各D
MACの優先順位を表示する優先順位状態表示信号によ
り、BMバス26上の競合制御を行い、バス使用権を得
たDMACに対応するDMAC−BMゲートの開放信号
をBMバス26上のデータ転送速度に合わせて出力し、
バス使用権を得られなかったDMACに対して、BMバ
ス待ち合わせ信号であるWAIT20〜WAIT2n信号を
出力するものである。
【0028】ここで、DMAバス競合制御回路600
60n ではCPU−DMACバスRQ0 〜CPU−DM
ACバスRQn がDMARQ0 〜DMARQn より優先
度が高く、BMバス競合制御回路62ではDMARQ0
〜DMARQn の順に優先度が低くなるものとする。こ
の場合に、図5(A)に示すCPU−DMACバスRQ
0 と、同図(B),(E),(G),(J)に示すDM
A−RQ0 〜DMA−RQ3 とが競合すると、CPU3
0がDMAC200 のDMACバス220 の使用権を獲
得し、同時に同図(C),(H),(K)に示す如く、
DMAC200,202 ,203 にDWAIT22,にD
WAIT23が供給され、同図(W)に示す如くCPU3
0によりDMAC200 内のレジスタがアクセスされ
る。また、同図(F),(I),(L)に示すBRQ1
〜BRQ3 が出力され、同図(M)に示すタイミングで
BMバス26の使用権をDMAC201 ,DMAC20
2 ,DMAC203 が獲得し、その後、同図(B)に示
すBRQ0 が出力されDMAC200 がBMバス26の
使用権を獲得して順にDMA転送を行う。
【0029】このように、複数のDMAC200 〜20
n によるBMバス26の競合があった場合に、BMバス
26上で優先度が高いDMACがCPU30からの当該
DMAC内レジスタのアクセスにより待ち合わせをした
ときには、他のDMACに対してバス使用権を与えるこ
とができ、CPU30からの当該DMAC内レジスタア
クセスと、他のDMACのDMA転送とを並行に実行で
きる。
【0030】図6は優先順位状態表示回路42の第1実
施例のブロック図を示す。同図中、優先順位状態表示回
路42は回転優先回路700 〜70n!-1より構成され
ている。但し、n!はnの階乗を示し、n=4のときn
!=24である。回転優先回路700 のORゲート72
には自状態になりうる全ての他状態の優先状態表示信号
が供給され、ORゲート72はこの優先状態表示信号の
いずれかが1であれば出力1をANDゲート74に供給
する。この他にANDゲート74には自状態にて優先順
位最下位のDMACに対応するDMAC−BMゲートの
開放信号が供給される。
【0031】ところで、図7にはDMACが4個(DM
AC200 〜203 )の場合の優先状態遷移テーブルを
示す。ここで、優先順位状態表示信号番号0は、優先順
位がDMAC200 ,201 ,202 ,203 の順番で
あることを表わしている。この状態でDMAC−BMゲ
ート240 を開放してDMAC200 を選択すると(こ
れをBMG0で表わす)DMAC200 の優先度を最下
位に落として優先順位がDMAC201 ,202 ,20
3 ,200 の優先順位状態表示信号番号9に遷移し、同
様にDMAC−BMゲート241 を開放してDMAC2
1 を選択するとDMAC201 の優先度を最下位に落
として優先順位状態信号番号3に遷移し、DMAC−B
Mゲート242 を開放してDMAC202 を選択すると
DMAC202 の優先度を最下位に落として優先順位状
態表示信号番号1に遷移し、DMAC−BMゲート24
3 を開放してこの状態で優先度が最下位のDMAC20
3を選択すると優先順位状態表示信号番号0のままであ
ることを表わしている。また、図8(A)は優先順位状
態表示信号番号1,4,18,0夫々からDMA−BM
ゲート243 を開放してDMAC203 を選択すると
(これをBMG3で表わす)優先順位状態表示信号番号
0に遷移することを表わしている。図8(B)は優先順
位状態表示信号番号0からDMAC200 を選択すると
(BMG0)優先順位状態表示信号9に遷移し、DMA
C201 を選択すると(BMG1)優先順位状態表示信
号番号3に遷移し、DMAC202 を選択すると(BM
G2)優先番号3に遷移し、DMAC203 を選択する
と(BMG3)優先順位状態表示信号番号0を保持する
ことを表わしている。
【0032】つまり、図6の回転優先回路700 のOR
ゲート72には優先順位状態表示信号番号0,1,4,
18の信号(値1の信号が優先順位状態表示信号番号を
指示する)が供給され、ANDゲート74には優先順位
最下位のDMAC203 のDMAC−BMゲート243
の開放信号(値1で開放を指示する)が供給される。A
NDゲート74出力はRSフリップフロップ76のセッ
ト端子Sに供給され、これによって図8(A)に表わす
状態でフリップフロップ76がセットされ優先順位状態
表示信号番号0がオン(値1)となる。
【0033】また、回転優先回路700 のORゲート7
8には自状態で最下位でない全てのDMAC200 ,2
1 ,202 のDMAC−BTゲート240 ,241
24 2 の開放信号が供給され、ORゲート78の出力信
号がフリップフロップ76のリセット端子Rに供給さ
れ、フリップフロップ76がリセットされると優先順位
状態表示信号番号0がオフ(値0)となる。この優先順
位状態表示信号番号0の信号は自状態から遷移しうる全
ての他状態、即ち優先順位状態表示信号番号0,1,
3,9の回転優先回路に供給されると共に、競合制御回
路40に供給される。他の回転優先回路702 〜70n
-1も入出力信号が異なるだけで上記と同一構成であ
る。
【0034】ここで、図9(J)に示す如く、優先度が
DMAC200 ,201 ,202 ,203 の順である状
態において、同図(A),(B),(C),(D)に示
す如く同時にDMARQ0 〜DMARQ3 が出される
と、同図(E),(F),(G),(H)に示す如く、
DMA−BNゲート240 ,241 ,242 ,243
順に開放信号が出力され、BM26の使用権は同図
(I)に示す如く順次切り換わりDMA転送が行われ
る。
【0035】このように選択されてバス使用権を獲得し
たDMACの優先順位が最下位となる状態に遷移させる
ことにより、各DMACのバス使用権獲得に偏りが生じ
ないようにすることが防止できる。次に優先順位状態表
示回路42の代りにBMバス使用率監視回路44を設け
た実施例について説明する。図10はBMバス使用率監
視回路44のブロック図を示す。同図中、カウント部8
0 〜80n はDMAC200 〜20n に対応して設け
られている。各カウント部800 〜80n 内のBMバス
使用要求回数カウント回路82は、各DMACのBMバ
ス使用要求回数をカウントする。BMバス待ち合わせ回
数カウント回路84は、各DMACのDMA要求時にお
ける待ち合わせ回数をカウントする。回数カウント値ラ
ッチ回路86は、各カウント部800〜80n 夫々のB
Mバス使用要求回数カウント回路82及びBMバス待ち
合わせ回数カウント回路84の出力を一時保持する。単
位時間カウント回路81は、設定された時間の周期で、
キャリーアウト信号を出力する。
【0036】BMバス使用要求回数カウント回路82は
競合制御回路40からのDMARQ又はBRQをカウン
トし、BMバス待ち合わせ回数カウント84は、競合制
御回路40からのWAIT1 又はWAIT2 をカウント
し、単位時間カウント回路からのキャリーアウト信号の
タイミングを契機に、当該カウント値を回数カウント値
ラッチ回路に保持すると共に、両カウント回路のカウン
ト値をリセットし、CPUに対して割り込み通知を行
う。
【0037】これにより、DMAC200 〜20n 夫々
の単位時間当りのBMバス26の使用要求回数とBMバ
ス待ち合わせ回数をCPU30に通知することが可能と
なる。ここで、図11(A)〜(C)に示すDMARQ
0 (又はBRQ0 )〜DMARQ2 (又はBRQ3 )及
び同図(D)〜(F)に示すWAIT10(又はWAIT
20)〜WAIT12(又はWAIT22)が入来すると、カ
ウント部800 〜80 2 夫々のBMバス使用要求回数カ
ウント回路82のカウント値は同図(G)〜(I)に示
す如くなり、カウント部800 〜802 夫々のBMバス
待ち合わせ回数カウント回路のカウント値は同図(J)
〜(L)に示す如くなる。また、同図(M)に示す単位
時間カウント回路81のキャリーアウト信号により回数
カウント値ラッチ回路86は同図(N)に示す如き値を
ラッチする。
【0038】図12はCPU30が実行する優先度設定
処理のフローチャートを示す。CPU30はBMバス使
用率監視回路44からの割り込みによって、この処理を
開始する。同図中、ステップS10ではBMバス使用率
監視回路44からDMAC200 〜20n 夫々のBMバ
スカウント要求回数及びBMバス待ち合わせ回数を読み
取る。
【0039】次にステップS12でDMAC200 〜2
n 毎にBMバス待ち合わせ回数をBMバスカウント要
求回数で割ってBMバス待ち合わせ率を算出する。次の
ステップS14ではDMAC200 〜20n をBMバス
待ち合わせ率の高いものから順に優先順位を高くし、こ
の優先順位で図13に示すテーブルを検索して優先順位
状態表示信号番号を得る。この図13のテーブルはDM
ACが4個の場合のもので、図7の上半部に対応してい
る。
【0040】この後、ステップS16で検索された優先
順位状態表示信号番号を値1とし、他の優先順位状態表
示信号番号を値0とした優先状態表示信号を生成して競
合制御回路40に供給する。ここで、図14(A)に示
す如き単位時間カウント回路81のキャリーアウト信号
が出力され、回数カウント値ラッチ回路86にラッチさ
れた同図(B)に示す如きDMAC200 〜203 夫々
のBMバス使用要求回数,BMバス待ち合わせ回数がC
PU30に読み取られる。CPU30はキャリーアウト
信号をトリガとして同図(C)に示すタイミングで処理
を実行する。この処理により優先順位状態表示信号番
号、優先順位状態夫々は同図(D),(E)に示す如く
遷移する。
【0041】これにより、CPU30ではBMバス待ち
合わせ率を算出して、この待ち合わせ率の高い順にDM
ACの優先順位を高くして、各DMACのBMバス待ち
合わせ率を平均化し、各DMACのバス使用権獲得に偏
りが生じないようにすることができる。
【0042】図15は優先順位状態表示回路42の第2
実施例のブロック図を示す。同図中、単位時間カウント
回路90は設定された時間の周期でキャリーアウト信号
を出力する。BMバス待ち合わせ回数カウント回路92
0 〜92n 夫々は上記カウント回路90のキャリーアウ
ト信号のタイミングでリセットされ、競合制御回路40
からのBMバス待ち合わせ表示信号WAIT10〜WAI
1n又はWAIT20〜WAIT2nを夫々カウントして、
単位時間当りのBMバス待ち合わせ回数が設定された値
を越えたときにキャリーアウト信号を生成して回転優先
回路940 〜94n!-1に供給する。
【0043】回転優先回路940 のORゲート95には
自状態になりうる全ての他状態の優先状態表示信号が供
給され、ORゲート72はこの優先状態表示信号のいず
れかが1であれば出力1をANDゲート96に供給す
る。この他にANDゲート96には自状態にて優先順位
最下位のDMACに対応するキャリーアウト信号が供給
される。
【0044】図16にはDMACが4個(DMAC20
0 〜203 )の場合の優先状態遷移テーブルを示す。こ
こで、優先順位状態表示信号番号0は、優先順位がDM
AC200 ,201 ,202 ,203 の順番であること
を表わしている。この状態でDMAC200 のBMバス
待ち合わせ回数カウント回路920 のキャリーアウト信
号が出力されると(これをCOA0で表わす)、DMA
C200 の優先度を最上位に上げて優先順位がDMAC
200 ,201 ,202 ,203 の優先順位状態表示信
号番号0のままとし、同様にBMバス待ち合わせ回数カ
ウント回路92 1 のキャリーアウト信号が出力されると
(COA1で表わす)、DMAC201の優先度を最上
位に上げて優先順位状態信号番号6に遷移し、BMバス
待ち合わせ回数カウント回路922 のキャリーアウト信
号が出力されると(COA2で表わす)、DMAC20
2 の優先度を最上位に上げて優先順位状態表示信号番号
12に遷移し、BMバス待ち合わせ回数カウント回路9
3 のキャリーアウト信号が出力されるとDMAC20
3 の優先度を最上位に上げて優先順位状態表示信号番号
18に遷移することを表わしている。
【0045】また、図17(A)は優先順位状態表示信
号番号0,6,8,9夫々からBMバス待ち合わせ回数
カウント回路920 のキャリーアウト信号が出力される
と(COA0で表わす)優先順位状態表示信号番号0に
遷移することを表わしている。図17(B)は優先順位
状態表示信号番号0からカウント回路921 のキャリー
アウト信号が出力されると(COA1で表わす)優先順
位状態表示信号番号6に遷移し、カウント回路922
キャリーアウト信号が出力されると(COA2で表わ
す)優先順位状態表示信号12に遷移し、カウント回路
923 のキャリーアウト信号が出力されると(COA3
で表わす)優先番号18に遷移し、カウント回路920
のキャリーアウト信号が出力されると(COA0で表わ
す)優先順位状態表示信号番号0を保持することを表わ
している。
【0046】ANDゲート96出力はRSフリップフロ
ップ97のセット端子Sに供給される。また、回転優先
回路940 のORゲート98には自状態で最上位でない
全てのDMACに対するキャリーアウト信号が供給さ
れ、ORゲート98の出力信号がフリップフロップ97
のリセット端子Rに供給され、フリップフロップ76が
リセットされると優先順位状態表示信号番号0がオフ
(値0)となる。この優先順位状態表示信号番号0の信
号は自状態から遷移しうる全ての他状態、回転優先回路
に供給されると共に、競合制御回路40に供給される。
他の回転優先回路942 〜94n!-1も入出力信号が異
なるだけで上記と同一構成である。ここで、DMAC2
0 〜203 夫々に対応するBMバス待ち合わせ回数カ
ウント回路920 〜923 より図18(A)〜(D)に
示すキャリーアウト信号が出力されると、優先順位状態
表示信号により指定されるDMACの優先順位は同図
(E)に示す如く遷移する。
【0047】このように各DMACの単位時間当りの待
ち合わせ回数が予め設定された回数を越えた場合に、そ
のDMACに対するキャリーアウト信号が出力されたD
MACの優先順位を最上位となる状態に遷移させること
により、バス使用頻度の高いDMACの優先順位を上げ
ることが可能となる。
【0048】図19は優先順位状態表示回路42の第3
実施例のブロック図を示す。同図中、図10と同一部分
には同一符号を付す。図13において、単位時間カウン
ト回路90は設定された時間の周期でキャリーアウト信
号を出力する。BMバス待ち合わせ回数カウント回路9
0 〜99n 夫々は上記カウント回路90のキャリーア
ウト信号のタイミングでリセットされ、競合制御回路4
0からのDMA要求信号DMARQ0 〜DMARQn
はBMバス使用要求信号BRQ0 〜BRQn を夫々カウ
ントして、単位時間当りのBMバス待ち合わせ回数が設
定された値を越えたときにキャリーアウト信号を生成し
て回転優先回路940 〜94n!-1に供給する。
【0049】回転優先回路940 のORゲート95には
自状態になりうる全ての他状態の優先状態表示信号が供
給され、ORゲート72はこの優先状態表示信号のいず
れかが1であれば出力1をANDゲート96に供給す
る。この他にANDゲート96には自状態にて優先順位
最下位のDMACに対応するキャリーアウト信号が供給
される。
【0050】図20にはDMACが4個(DMAC20
0 〜203 )の場合の優先状態遷移テーブルを示す。こ
こで、優先順位状態表示信号番号0は、優先順位がDM
AC200 ,201 ,202 ,203 の順番であること
を表わしている。この状態でDMAC200 のBMバス
使用要求回数カウント回路990 のキャリーアウト信号
が出力されると(これをCOB0で表わす)、DMAC
200 の優先度を最上位に上げて優先順位がDMAC2
0 ,21 2 ,202 ,203 の優先順位状態表示信号
番号0のままとし、同様にBMバス使用要求回数カウン
ト回路991 のキャリーアウト信号が出力されると(C
OB1で表わす)、DMAC201 の優先度を最上位に
上げて優先順位状態信号番号6に遷移し、BMバス使用
要求回数カウント回路992 のキャリーアウト信号が出
力されると(COB2で表わす)、DMAC202 の優
先度を最上位に上げて優先順位状態表示信号番号12に
遷移し、BMバス使用要求回数カウント回路993 のキ
ャリーアウト信号が出力されるとDMAC203 の優先
度を最上位に上げて優先順位状態表示信号番号18に遷
移することを表わしている。
【0051】また、図21(A)は優先順位状態表示信
号番号0,6,8,9夫々からBMバス使用要求回数カ
ウント回路990 のキャリーアウト信号が出力されると
(COB0で表わす)優先順位状態表示信号番号0に遷
移することを表わしている。図21(B)は優先順位状
態表示信号番号0からカウント回路991 のキャリーア
ウト信号が出力されると(COB1で表わす)優先順位
状態表示信号番号6に遷移し、カウント回路992 のキ
ャリーアウト信号が出力されると(COB2で表わす)
優先順位状態表示信号12に遷移し、カウント回路99
3 のキャリーアウト信号が出力されると(COB3で表
わす)優先番号18に遷移し、カウント回路990 のキ
ャリーアウト信号が出力されると(COB0で表わす)
優先順位状態表示信号番号0を保持することを表わして
いる。
【0052】ANDゲート96出力はRSフリップフロ
ップ97のセット端子Sに供給される。また、回転優先
回路940 のORゲート98には自状態で最上位でない
全てのDMACに対するキャリーアウトが供給され、O
Rゲート98の出力信号がフリップフロップ97のリセ
ット端子Rに供給され、フリップフロップ76がリセッ
トされると優先順位状態表示信号番号0がオフ(値0)
となる。この優先順位状態表示信号番号0の信号は自状
態から遷移しうる全ての他状態、回転優先回路に供給さ
れると共に、競合制御回路40に供給される。他の回転
優先回路942〜94n!-1も入出力信号が異なるだけ
で上記と同一構成である。
【0053】ここで、DMAC200 〜203 夫々に対
応するBMバス使用要求回数カウント回路990 〜99
3 より図22(A)〜(D)に示すキャリーアウト信号
が出力されると、優先順位状態表示信号より指定される
DMACの優先順位は同図(E)に示す如く遷移する。
【0054】このように各DMACの単位時間当りの使
用要求回数が予め設定された回数を越えた場合に、その
DMACに対するキャリーアウト信号が出力されたDM
ACの優先順位を最上位となる状態に遷移させることに
より、バス使用頻度の高いDMACの優先順位を上げる
ことが可能となる。
【0055】図23は優先順位状態表示回路42の第4
実施例のブロック図を示す。同図中、上位固定設定レジ
スタ102は、CPU30により書き込まれた値を保持
する。ANDゲート1040 〜104n 夫々は、上位固
定設定レジスタにて保持された値とDMAC−BMゲー
ト240 〜24n 夫々の開放信号との論理積の結果を出
力する。回転優先回路106は、図4に示す回転優先回
路であり、ANDゲート1040 〜104n 1において
は、図4の回転優先回路にて、競合制御回路40より入
力していたDMAC−BMゲート240 〜24n 夫々の
開放信号を、上位固定設定レジスタ102にて保持され
た任意の値にて抑止し、回転優先回路106において
は、抑止されたDMAC−BMゲートの開放信号以外の
DMAC−BMゲートの開放信号のみにより、状態遷移
を行う。
【0056】ここで、図24(A)に示すタイミングで
上位固定レジスタ102の値が書き込まれDMAC20
3 を上位固定と設定すると、同図(B)〜(E)に示す
DMAC−BMゲート240 〜243 夫々の開放信号が
出力されたとき、優先順位状態表示信号により指定され
るDMACの優先順位は同図(F)に示す如くなる。つ
まり同図(E)に示すDMAC−BMゲート243 の開
放信号が出力されてもDMAC203 の優先順位が最下
位に落ちない。
【0057】このため、複数のDMACのBMへのDM
A要求があった場合に、優先順位を上位固定としたいD
MACが最下位状態に遷移することを抑止することがで
き、他DMACの優先順位状態を上位固定のDMACの
優先順位以下で回転させ、バス使用頻度の高いDMAC
の優先順位を継続して上位固定とすることができる。
【0058】図25は優先順位状態表示回路42の第5
実施例のブロック図を示す。同図中、DMA回数設定レ
ジスタ1100 〜110n 夫々は、CPU30により書
き込まれた値を保持する。ゲート開放信号カウント回路
1120 〜112n は、競合制御回路40からのDMA
C−BMゲート240 〜24n 夫々の開放信号をカウン
トし、DMA回数設定レジスタ1100 〜110n 夫々
に設定されたカウント値となったときにキャリーアウト
信号を出力する。回転優先回路114は、図4に示す回
転優先回路であり、ゲート開放信号カウント回路112
0 〜112n においては、図4の回転優先回路にて、競
合制御回路40より入力していたDMAC−BMゲート
240 〜24n 夫々の開放信号をカウントし、DMA回
数設定レジスタ1100 〜110n に設定されたカウン
ト値となったときにキャリーアウト信号を出力し、回転
優先回路114においては、当該キャリーアウト信号を
契機に状態遷移を行う。
【0059】ここで、図26(A)〜(C)に示す如
く、DMA回数設定レジスタ1100〜1103 夫々に
110,200,300が設定されているとき、同図
(D)〜(F)に示す如く、ゲート開放信号カウント回
路1120 〜1123 夫々のカウント値が変化すると、
ゲート開放信号カウント回路1120 〜1123 夫々は
同図(G)〜(I)に示すキャリーアウト信号を出力
し、DMACの優先順位は同図(J)に示す如く遷移す
る。
【0060】このため、複数のDMACのBMへのDM
A要求があった場合に、最下位状態に遷移するまでに要
するDMA回数を、DMAC毎に任意に設定することが
でき、回転優先回路に優先度を持たせると共に、回転契
機を可変とすることが可能となる。
【0061】図27はBMバス使用状態記録回路46の
一実施例のブロック図を示す。同図中、制御レジスタ1
20は、CPU30により書き込まれた値を保持する。
ORゲート122は、DMAC−BMゲート240 〜2
n 夫々の開放信号の論理和をとるもの、WE作成回路
124は、ORゲート122による論理和の結果からD
PM(デュアル・ポート・メモリ)128のライトタイ
ミングを作成する。アドレスカウンタ回路126は、D
MAC−BMゲートの開放信号をカウントし、DPM1
28のアドレスを作成する。DMAC番号作成回路13
0は、DMAC−BMゲート240 〜24n の開放信号
をエンコードし、DMAC番号を作成する。優先順位状
態番号作成回路132は、優先順位状態表示信号番号0
〜n!をエンコードし、優先順位状態番号を作成する。
DPM128は、DMAC番号及び優先順位状態表示信
号番号をアドレスカウント回路126から出力されたア
ドレスに蓄積するものであり、DPM128において
は、制御レジスタ120に保持された値にて書き込みが
許可され、WE作成回路124にて作成されたライトタ
イミングで、DMAC番号及び優先順位状態番号を、ア
ドレスカウント回路126から出力されたアドレスに蓄
積し、CPU30による読み取りを可能としている。
【0062】ここで、図28(A)〜(D)に示すタイ
ミングでDMA要求信号DMARQ 0 〜DMARQ3
発生して、同図(E)〜(H)に示すDMAC−BMゲ
ート240 〜243 夫々の開放信号が出力され、BM2
6の使用権が同図(I)に示す如く切り換わり、優先順
位状態が同図(J)に示す如く遷移した場合について考
える。アドレスカウント回路126は制御レジスタ12
0の内容により同図(K)に示すタイミングでリセット
解除され、アドレスカウント回路126は同図(L)に
示す如く開放信号をカウントする。DMAC番号作成回
路130は同図(M)に示すDMAC番号を作成し、優
先順位状態番号作成回路132は同図(N)に示す優先
順位状態表示信号番号を作成する。そして同図(O),
(P)に示すチップイネーブル信号(CE)及びライト
イネーブル信号(WE)によってDPM128に同図
(Q)に示す如くDMAC番号及び優先順位状態表示信
号番号が書き込まれる。
【0063】このため、複数のDMACのBMへのDM
A要求があった場合に、各DMACのDMAC−BMゲ
ートの開放信号を契機に、DMAC番号及びその時の優
先順位状態表示信号番号をDPM128に記録させ、ま
た、CPU30による制御レジスタ120の設定によ
り、DPM128への記録の開始・停止及びアドレスカ
ウント回路126をリセットすることが可能となる。ま
た、DPM128の内容をCPU30により読み取り可
能とすることにより、任意時間帯でのBMバス26上に
おける各DMACのDMAの実行結果を、その時の優先
順位状態番号と共に実行順に記録し、また、その記録を
読み取り可能となる。
【0064】
【発明の効果】上述の如く、請求項1に記載の発明は、
CPUと、データバッファメモリに対して入出力データ
をDMA転送する複数のDMACとの競合を制御する競
合制御回路であって、上記CPUから複数のDMAC夫
々に対するアクセス要求と複数のDMAC夫々のDMA
要求とによる、各DMACが接続されたDMACバスの
競合を制御する複数のDMACバス競合制御回路と、上
記複数のDMAC夫々のDMA要求によるデータバッフ
ァメモリが接続されたBMバスの競合を制御するBMバ
ス競合制御回路と、上記複数のDMACの優先順位状態
を表わす優先順位状態表示回路とを有し、上記BMバス
競合制御回路は、各DMACの優先順位状態に応じて優
先度の低いDMACに対応するDMACバス競合制御回
路に対してBMバス待ち合わせ表示信号を供給し、上記
複数のDMACバス競合制御回路は、対応するDMAC
がDMACバスの待ち合わせ時であるとき上記BMバス
競合制御回路にDMACバス待ち合わせ表示信号を供給
する。
【0065】このように、複数のDMACによるBMバ
スの競合があった場合に、BMバス上で優先度が高いD
MACがCPUからの当該DMAC内レジスタのアクセ
スにより待ち合わせをしたときには、他のDMACに対
してバス使用権を与えることができ、CPUからの当該
DMAC内レジスタアクセスと、他のDMACのDMA
転送とを並行に実行できる。
【0066】また、請求項2に記載の発明は、CPU
と、データバッファメモリに対して入出力データをDM
A転送する複数のDMACとの競合を制御する競合制御
回路であって、上記CPUから複数のDMAC夫々に対
するアクセス要求と複数のDMAC夫々のDMA要求と
による、各DMACが接続されたDMACバスの競合を
制御する複数のDMACバス競合制御回路と、上記複数
のDMAC夫々のDMA要求によるデータバッファメモ
リが接続されたBMバスの競合を制御するBMバス競合
制御回路と、上記複数のDMACの優先順位状態を表わ
す優先順位状態表示回路とを有し、上記複数のDMAC
バス競合制御回路は、DMA要求を行ったDMACに許
可を与えると共に、上記BMバス競合制御回路にBMバ
ス要求を行い、BMバス競合制御回路は、各DMACの
優先順位状態に応じて優先度の低いDMACに対してB
Mバス待ち合わせ表示信号を供給する。
【0067】このように、複数のDMACによるBMバ
スの競合があった場合に、待ち合わせをしたDMACに
対しては、先行してDMAを開始させると共に待ち合わ
せ制御を行い、各DMACによるBMバス保有時間及び
待ち合わせ時間を最小とすることが可能となる。
【0068】また、請求項3に記載の発明は、請求項1
又は2記載の競合制御回路において、前記優先順位状態
表示回路は、BMバスの使用権を獲得したDMACの優
先順位を最下位に遷移させる。
【0069】このように、複数のDMACのBMバスに
おけるバス競合があった場合に、バス使用権を獲得した
DMACの優先順位を最下位へ移すことにより、各DM
ACのバス使用権獲得に偏りを生じない。また、請求項
4に記載の発明は、請求項1又は2記載の競合制御回路
において、前記優先順位状態表示回路は、各DMACの
単位時間当りのBMバス待ち合わせ率を求め、上記BM
バス待ち合わせ率が高いDMACの優先順位を高くす
る。
【0070】このように、複数のDMACのBMへのD
MA要求があった場合に、各DMACのBMバス使用要
求回数とBMバス待ち合わせ回数をカウントして各DM
AC毎のBMバス待ち合わせ率を算出することにより、
待ち合わせ率の大きいDMACの優先順位を高くするこ
とが可能となる。
【0071】また、請求項5に記載の発明は、請求項1
又は2記載の競合制御回路において、前記優先順位状態
表示回路は、単位時間当りの待ち合わせ回数が予め設定
された回数を越えたDMACの優先順位を最上位に遷移
させる。
【0072】このように、複数のDMACによるBMバ
スの競合があった場合に、各DMACの単位時間当りの
待ち合わせ回数が予め設定された回数を越えたとき、当
該回数を越えたDMACの優先順位を最上位に移すこと
により、バス使用頻度の高いDMACの優先順位を上げ
ることが可能となる。
【0073】また、請求項6に記載の発明は、請求項1
又は2記載の競合制御回路において、前記優先順位状態
表示回路は、単位時間当りの使用要求回数が予め設定さ
れた回数を越えたDMACの優先順位を最上位に遷移さ
せる。
【0074】このように、複数のDMACのBMへのD
MA要求があった場合に、各DMACの単位時間当りの
使用要求回数が予め設定された回数を越えた場合に、当
該回数を越えたDMACの優先順位を最上位に移すこと
により、バス使用頻度の高いDMACの優先順位を上げ
ることが可能となる。
【0075】また、請求項7に記載の発明は、請求項3
記載の競合制御回路において、前記優先順位状態表示回
路は、所定のDMACの優先順位の下位への遷移を防止
する。このように、複数のDMACのBMへのDMA要
求があった場合に、優先順位を上位固定としたいDMA
Cの最下位状態遷移を抑止することにより、継続してバ
ス使用頻度の高いDMACの優先順位を上位固定とする
ことが可能となる。
【0076】また、請求項8に記載の発明は、請求項1
又は2記載の競合制御回路において、前記優先順位状態
表示回路は、各DMACのBMバス使用権の獲得回数が
DMAC毎に設定された所定回数を越えたときに優先順
位を最下位に遷移させる。
【0077】このように、複数のDMACのBMへのD
MA要求があった場合に、各DMA毎に、最下位状態に
遷移するまでに要するDMA転送回数を任意に設定する
ことにより、優先度の遷移の契機を可変することが可能
となる。また、請求項9に記載の発明は、請求項1又は
2記載の競合制御回路において、各DMACのBMバス
使用権獲得に応じてBMバス使用権を獲得したDMAC
及び優先順位状態を記憶するメモリを有する。
【0078】このように、複数のDMACのBMへのD
MA要求があった場合に、各DMACのBMバス使用権
の獲得を契機に、DMAC番号及びその時の優先順位状
態番号をメモリに記録させることにより、任意時間帯で
のBMバス上における各DMACのDMAの実行結果
を、その時の優先順位状態番号と共に実行順に記録で
き、また、その記録を読み取りが可能となる。
【図面の簡単な説明】
【図1】競合制御回路のブロック図である。
【図2】本発明を適用したシステムのブロック図であ
る。
【図3】図2を説明するための信号タイミングチャート
である。
【図4】競合制御回路のブロック図である。
【図5】図4を説明するための信号タイミングチャート
である。
【図6】優先順位状態表示回路のブロック図である。
【図7】優先状態遷移テーブルを示す図である。
【図8】優先状態遷移を説明するための図である。
【図9】図6を説明するための信号タイミングチャート
である。
【図10】BMバス使用監視回路のブロック図である。
【図11】図10を説明するための信号タイミングチャ
ートである。
【図12】優先度設定処理のフローチャートである。
【図13】優先状態遷移テーブルを示す図である。
【図14】図12の処理を説明するための図である。
【図15】優先順位状態表示回路のブロック図である。
【図16】優先状態遷移テーブルを示す図である。
【図17】優先状態遷移を説明するための図である。
【図18】図15を説明するための図である。
【図19】優先順位状態表示回路のブロック図である。
【図20】優先状態遷移テーブルを示す図である。
【図21】優先状態遷移を説明するための図である。
【図22】図19を説明するための信号タイミングチャ
ートである。
【図23】優先順位状態表示回路のブロック図である。
【図24】図23を説明するための信号タイミングチャ
ートである。
【図25】優先順位状態表示回路のブロック図である。
【図26】図25を説明するための信号タイミングチャ
ートである。
【図27】BMバス使用記録回路のブロック図である。
【図28】図27を説明するための信号タイミングチャ
ートである。
【図29】従来システムのブロック図である。
【図30】図29の信号タイミングチャートである。
【符号の説明】
200 〜20n DMAC 220 〜22n DMACバス 240 〜24n DMAC−BMゲート 26 BMバス 28 BM 30 CPU 320 〜32n CPU−DMACゲート 34 CPUバス 40 競合制御回路 42 優先順位状態表示回路 44 BMバス使用率監視回路 46 BMバス使用状態記録回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小島 進 神奈川県横浜市港北区新横浜3丁目9番18 号 富士通コミュニケーション・システム ズ株式会社内 (72)発明者 山口 哲夫 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 CPUと、データバッファメモリに対し
    て入出力データをDMA転送する複数のDMACとの競
    合を制御する競合制御回路であって、 上記CPUから複数のDMAC夫々に対するアクセス要
    求と複数のDMAC夫々のDMA要求とによる、各DM
    ACが接続されたDMACバスの競合を制御する複数の
    DMACバス競合制御回路と、 上記複数のDMAC夫々のDMA要求によるデータバッ
    ファメモリが接続されたBMバスの競合を制御するBM
    バス競合制御回路と、 上記複数のDMACの優先順位状態を表わす優先順位状
    態表示回路とを有し、 上記BMバス競合制御回路は、各DMACの優先順位状
    態に応じて優先度の低いDMACに対応するDMACバ
    ス競合制御回路に対してBMバス待ち合わせ表示信号を
    供給し、 上記複数のDMACバス競合制御回路は、対応するDM
    ACがDMACバスの待ち合わせ時であるとき上記BM
    バス競合制御回路にDMACバス待ち合わせ表示信号を
    供給することを特徴とする競合制御回路。
  2. 【請求項2】 CPUと、データバッファメモリに対し
    て入出力データをDMA転送する複数のDMACとの競
    合を制御する競合制御回路であって、 上記CPUから複数のDMAC夫々に対するアクセス要
    求と複数のDMAC夫々のDMA要求とによる、各DM
    ACが接続されたDMACバスの競合を制御する複数の
    DMACバス競合制御回路と、 上記複数のDMAC夫々のDMA要求によるデータバッ
    ファメモリが接続されたBMバスの競合を制御するBM
    バス競合制御回路と、 上記複数のDMACの優先順位状態を表わす優先順位状
    態表示回路とを有し、 上記複数のDMACバス競合制御回路は、DMA要求を
    行ったDMACに許可を与えると共に、上記BMバス競
    合制御回路にBMバス要求を行い、 BMバス競合制御回路は、各DMACの優先順位状態に
    応じて優先度の低いDMACに対してBMバス待ち合わ
    せ表示信号を供給することを特徴とする競合制御回路。
  3. 【請求項3】 請求項1又は2記載の競合制御回路にお
    いて、 前記優先順位状態表示回路は、BMバスの使用権を獲得
    したDMACの優先順位を最下位に遷移させることを特
    徴とする競合制御回路。
  4. 【請求項4】 請求項1又は2記載の競合制御回路にお
    いて、 前記優先順位状態表示回路は、各DMACの単位時間当
    りのBMバス待ち合わせ率を求め、上記BMバス待ち合
    わせ率が高いDMACの優先順位を高くすることを特徴
    とする競合制御回路。
  5. 【請求項5】 請求項1又は2記載の競合制御回路にお
    いて、 前記優先順位状態表示回路は、単位時間当りの待ち合わ
    せ回数が予め設定された回数を越えたDMACの優先順
    位を最上位に遷移させることを特徴とする競合制御回
    路。
  6. 【請求項6】 請求項1又は2記載の競合制御回路にお
    いて、 前記優先順位状態表示回路は、単位時間当りの使用要求
    回数が予め設定された回数を越えたDMACの優先順位
    を最上位に遷移させることを特徴とする競合制御回路。
  7. 【請求項7】 請求項3記載の競合制御回路において、 前記優先順位状態表示回路は、所定のDMACの優先順
    位の下位への遷移を防止することを特徴とする競合制御
    回路。
  8. 【請求項8】 請求項1又は2記載の競合制御回路にお
    いて、 前記優先順位状態表示回路は、各DMACのBMバス使
    用権の獲得回数がDMAC毎に設定された所定回数を越
    えたときに優先順位を最下位に遷移させることを特徴と
    する競合制御回路。
  9. 【請求項9】 請求項1又は2記載の競合制御回路にお
    いて、 各DMACのBMバス使用権獲得に応じてBMバス使用
    権を獲得したDMAC及び優先順位状態を記憶するメモ
    リを有することを特徴とする競合制御回路。
JP14758396A 1996-06-10 1996-06-10 競合制御回路 Withdrawn JPH09330289A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14758396A JPH09330289A (ja) 1996-06-10 1996-06-10 競合制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14758396A JPH09330289A (ja) 1996-06-10 1996-06-10 競合制御回路

Publications (1)

Publication Number Publication Date
JPH09330289A true JPH09330289A (ja) 1997-12-22

Family

ID=15433640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14758396A Withdrawn JPH09330289A (ja) 1996-06-10 1996-06-10 競合制御回路

Country Status (1)

Country Link
JP (1) JPH09330289A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222161A (ja) * 2001-01-26 2002-08-09 Fujitsu Ltd 半導体装置、及びデータ転送方法
US6941428B2 (en) 2002-09-25 2005-09-06 International Business Machines Corporation Memory controller optimization
JP2007310532A (ja) * 2006-05-17 2007-11-29 Renesas Technology Corp バスアクセス調停方法及び半導体集積回路
CN113711191A (zh) * 2019-05-16 2021-11-26 欧姆龙株式会社 信息处理装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222161A (ja) * 2001-01-26 2002-08-09 Fujitsu Ltd 半導体装置、及びデータ転送方法
JP4620880B2 (ja) * 2001-01-26 2011-01-26 富士通セミコンダクター株式会社 半導体装置、及びデータ転送方法
US6941428B2 (en) 2002-09-25 2005-09-06 International Business Machines Corporation Memory controller optimization
JP2007310532A (ja) * 2006-05-17 2007-11-29 Renesas Technology Corp バスアクセス調停方法及び半導体集積回路
CN113711191A (zh) * 2019-05-16 2021-11-26 欧姆龙株式会社 信息处理装置

Similar Documents

Publication Publication Date Title
US7185121B2 (en) Method of accessing memory via multiple slave ports
US5805927A (en) Direct memory access channel architecture and method for reception of network information
US5655151A (en) DMA controller having a plurality of DMA channels each having multiple register sets storing different information controlling respective data transfer
US6393506B1 (en) Virtual channel bus and system architecture
US6073199A (en) History-based bus arbitration with hidden re-arbitration during wait cycles
JP4907166B2 (ja) リソース管理装置
JPH071495B2 (ja) データ処理システム
JP4848375B2 (ja) バス・アクセス取り消しを伴うデータ処理システム
JP2011048838A (ja) スイッチマトリックス経由のデータ転送を改善するフロー制御方法
JP2002540499A (ja) ディスク・コントローラ・メモリへのアクセスを調停する調停方法およびシステム
GB2228349A (en) Data transfer bus with virtual memory
JPH0728758A (ja) ダイナミックタイムループ調停及び装置
TW200400438A (en) Bus arbiter for integrated circuit systems
JPH09330289A (ja) 競合制御回路
EP1805631A2 (en) Data processing system with bus access retraction
EP1431878A2 (en) Shared write buffer in a peripheral interface and method of operating
WO2007088426A1 (en) Device and method for accessing dynamic memory units
US20050120147A1 (en) Direct memory access controller enabling cycle stealing among channels
JP2002342266A (ja) データプロセッサ
US5799160A (en) Circuit and method for controlling bus arbitration
JP2001056793A (ja) 情報処理装置
JPH09269927A (ja) バスアクセス方法、バス、並びにバス接続システム
US7975086B1 (en) Apparatus for real-time arbitration between masters and requestors and method for operating the same
JP2003091501A (ja) 情報処理装置
JP2000250852A (ja) バス調停装置、バスシステムおよびバス調停方法

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030902