米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 沖電気工業株式会社

発明の名称 競合調停装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−132011(P2003−132011A)
公開日 平成15年5月9日(2003.5.9)
出願番号 特願2001−325390(P2001−325390)
出願日 平成13年10月23日(2001.10.23)
代理人 【識別番号】100086807
【弁理士】
【氏名又は名称】柿本 恭成
【テーマコード(参考)】
5B061
【Fターム(参考)】
5B061 BA01 BB02 BB17 RR02 RR03 
発明者 武田 浩一 / 堀江 公人
要約 課題
デバイス間のバス等のコンピュータの資源を使用するチャンスが公平で、かつ高速な競合調停装置を提供する。

解決手段
パルス生成回路50から高速のパルスGP1〜GPNが1周期毎に順次出力される。例えば、パルスGP1の立ち上がりのタイミング以前にデバイス30−1がバス使用希望信号RQ1を出し、続いてデバイス30−2がバス使用希望信号RQ2を出したとする。パルスGP1の立ち上がりのタイミングで、調停装置40がデバイス30−1に対してバス使用許諾信号GR1を出力すると、デバイス30−1のバスマスタ32−1はバス使用確認信号AK1を出力する。この信号AK1を受けて、使用許諾禁止回路55は、他のデバイス30−2,…の使用を禁止する禁止信号IGを出力する。この結果、バス33の使用権はデバイス30−1が確保し、他のデバイス30−2,…のバス使用希望は留保される。
特許請求の範囲
【請求項1】 コンピュータの所定の資源を利用するN個(但し、Nは2以上の正の整数)のデバイスと、前記各デバイスにそれぞれ設けられ、前記資源の使用を希望する使用希望信号を出力すると共に、該使用希望信号に基づき、外部から与えられる使用許諾信号に応答して使用確認信号を出力するN個の制御手段と、一定のパルス間隔でN個の使用許諾パルスを1周期毎に順次生成して出力するパルス生成手段、前記N個の制御手段からそれぞれ出力される使用確認信号を入力して前記使用を許可されないデバイスの非許可制御手段に対する使用許諾を禁止するための禁止信号を出力する使用許諾禁止手段、及び前記使用許諾信号を出力して前記N個の制御手段にそれぞれ与えるN個のゲート回路を有する調停装置とを備え、前記調停装置の各ゲート回路は、前記各制御手段から出力される使用希望信号及び使用確認信号と、前記パルス生成手段から出力される各使用許諾パルスと、前記使用許諾禁止手段から出力される禁止信号とをそれぞれ入力し、前記使用を許可されたデバイスの許可制御手段に対しては、該使用許諾パルスに対応した前記使用許諾信号を出力して該許可制御手段に与え、前記使用を許可されないデバイスの非許可制御手段に対しては、該使用許諾パルスを遮断して前記使用許諾信号の出力を停止する構成にしたことを特徴とする競合調停装置。
【請求項2】 コンピュータの所定の資源は、バスであることを特徴とする請求項1記載の競合調停装置。
【請求項3】 パルス生成手段は、リングオシレ−タの出力からゲート回路によって使用許諾パルスを生成して出力する回路構成にしたことを特徴とする請求項1又は2記載の競合調整装置。
【請求項4】 各制御手段は、使用許諾信号に同期して使用希望信号を出力することにより、デバイスの使用希望が該デバイスの順番に従って許諾される構成にしたことを特徴とする請求項1〜3のいずれかl項に記載の競合調停装置。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は、複数のリクエスト(使用希望)が競合する場合においてそのリクエストの一つを高速に選択する競合調停装置、例えば、マイクロプロセッサのバスの調停等に応用可能な新しい競合調停装置に関するものである。
【0002】
【従来の技術】例えば、一般のコンピュータに関する資源は有限であるので、複数のリクエストが競合する場合においては、その資源を使用せんとする沢山のリクエストからその一つを選択したい場合があり、その調停方式(Arbitration )には様々な方式がある。その場合に、どの調停方式を選択するかは、回路量、高速性、帯域幅、コスト及び消費電力等のトレードオフを考えなくてはならない。
【0003】図8は、従来の芋づる式(daisy-chain )競合調停装置の一例を示す構成図である。この競合調停装置は、メモリ等の複数個Nのデバイス10−1〜10−Nを有している。各デバイス10−1〜10−Nには、バスインタフェース11−1〜11−Nが設けられており、これらのバスインタフェース11−1〜11−Nが、バスデータ(Bus Data )BDを伝送するバス15に接続されている。各デバイス10−1〜10−Nからは、バス使用希望信号(Bus Request )RQ及びバス解放信号(Bus Release )RLが出力され、これらが調停装置(Bus Arbiter)16に入力されるようになっている。
【0004】調停装置16は、バス使用希望信号RQやバス解放信号RLを管理し、バス使用許諾信号(Bus Grant )GR1をデバイス10−1に与える機能を有し、例えば、ホストのパーソナルコンピュータ(以下「PC」という。)等で構成されている。調停装置16から出力されたバス使用許諾信号GR1がデバイス10−1に与えられると、その後、デバイス10−1から10−N方向へ、バス使用許諾信号GR2〜GRNが順次転送されていくようになっている。
【0005】このような競合調停装置では、デバイス10−1〜10−Nが一つのバス15の使用権を争い、ある一つのデバイス(例えば、10−2)のみがバスインタフェース11−2を介して一定期間バス15を使用でき、その他のデバイス10−1,10−3〜10−Nはその使用を待たされる。これはバス15上でのバスデータBDの衝突を防止するためでもある。
【0006】バス15の使用権は、バス使用許諾信号GR1〜GRNの伝搬によって移っていく。この状況は、デバイス10−1〜10−Nがトークン(token )を保持していて、これをデバイス10−1〜10−N間で受け渡していくようにもとらえることができる。予めバス15の使用許諾を希望するデバイス10−1〜10−Nは、バス使用希望信号RQを出しておき、そのトークンを入手すると、バス15の使用が可能になり、その間他のデバイスはバス使用希望信号RQを出していても、バス解放信号RLが出されるまで、待たされることになる。
【0007】図9は、図8の芋づる式競合調停装置において、デバイス10−2がバス15の使用を希望したときの動作例を示すタイミングチャートである。
【0008】例えば、タイミングt1以前に出されていたデバイス10−2からのバス使用希望信号RQ2は、タイミングt2でバス使用許諾信号GR2が立ち上がることにより、該デバイス10−2がトークンを受け取ったので、バス15の使用権を確保でき、このバス15に対してデータDA2を入出力できる。しかし、何らバス使用希望信号RQを出さないデバイス10−1その他は、これと同時にバス15を使用することはできない。
【0009】この芋づる式調停方式において、トークンの受け渡しは、バス使用許諾信号GR1〜GRNの伝搬によっており、デバイス10−1〜10−Nは10−1から10−N方向へ順次トークンを渡していく。
【0010】芋づる式調停方式は、各デバイス10−1〜10−Nがトークンの伝搬の1周期当りに各1回のバス使用権獲得のチャンスを持つので、調停装置16を有するものの分散型(distributed )で各デバイス10−1〜10−Nに公平な調停方式といえよう。分かりやすい調停方式なので、広く普及している。
【0011】図10は、従来の分散型調停方式(Distributed Arbitration )の一例を示す分散型競合調停装置の構成図である。分散型競合調停装置としては、例えば、米国アップル社のMACに使われているNuBusがよく知られている。この分散型競合調停装置は、複数個Nのデバイス20−1〜20−Nを有し、これらの各デバイス20−1〜20−Nに設けられたバスインタフェース21−1〜21−Nが、バスデータBDを伝送するデータバス25に接続されている。さらに、各デバイス20−1〜20−Nに設けられたバスマスタ22−1〜22−Nが、リクエストバス26に接続されている。
【0012】分散型競合調停装置では、中央バス調停装置がなく、各デバイス20−1〜20−Nに搭載されているバスマスタ22−1〜22−Nがリクエストバス26を参照して、この値と自己の優先度を比較し、バス使用希望信号RQを取りやめるか否かを判定し、最後に残ったデバイス(20−1〜20−Nのうちの一つ)がデータバス25の使用権を獲得する。これは、言わば自己選択(self-selection)方式である。リクエストバス26は、オープンコレクタ(open-collector)でドライブされていて、このリクエストバス26の値の決定のために“L”レベルを優先する論理が取られている。
【0013】この分散型競合調停装置は、中央バス調停装置を必要としないので、簡易で、すっきりした構成とすることができる。ただ、やや特殊な判定方式であるので、採用しているシステムは少ない。
【0014】
【発明が解決しようとする課題】しかしながら、従来の競合調停装置では、次の(A)及び(B)のような課題があった。
(A) 図8の芋づる式競合調停装置では、デバイス10−1〜10−N間をトークンが受け渡されて行くので、伝搬時間(propagation delay )が大きく、デバイス10−1〜10−Nの数Nが多くなる程、調停がさらに遅延してしてしまう欠点がある。特に、全てのデバイス10−1〜10−Nが最も判定の遅いデバイスに依存してしまうので、帯域幅が制限されてしまい、高速の調停が必要とされるデバイスの要求を満たさないおそれがある。この結果、バス15のスピードが犠牲になり、高速性が要求される入出力機器等が使えなくなるかも知れない。また、調停のチャンスという意味では公平であるが、優先度の低いバスが無期限にバス15を占有する可能性があり、そのままでは優先度の高いデバイスの要求に応えることはできない。
【0015】(B) 図10の分散型競合調停装置では、全てのデバイス20−1〜20−Nが、自己の優先度とリクエストバス26上の値を比較する必要があるので、決定まで時間がかかる難点がある。又、優先度が高いデバイスがデータバス25を占有する可能性があり、これを制限するシステムが必要となるかも知れない。本発明は、前記従来技術がもつ課題を解決し、デバイス間のバスを獲得するチャンスが公平で、かつ高速な競合調停装置を提供することを目的とする。
【0016】
【課題を解決するための手段】前記課題を解決するために、本発明のうちの第1の発明は、技術的には従来にない全く新しい調停方式の競合調停装置であって、コンピュータの所定の資源を利用するN個(但し、Nは2以上の正の整数)のデバイスと、前記各デバイスにそれぞれ設けられ、前記資源の使用を希望する使用希望信号を出力すると共に、該使用希望信号に基づき、外部から与えられる使用許諾信号に応答して使用確認信号を出力するN個の制御手段と、調停装置とを備えている。
【0017】前記調停装置は、一定のパルス間隔でN個の使用許諾パルスを1周期毎に順次生成して出力するパルス生成手段と、前記N個の制御手段からそれぞれ出力される使用確認信号を入力して前記使用を許可されないデバイスの非許可制御手段に対する使用許諾を禁止するための禁止信号を出力する使用許諾禁止手段と、前記使用許諾信号を出力して前記N個の制御手段にそれぞれ与えるN個のゲート回路とを有している。
【0018】そして、前記調停装置の各ゲート回路は、前記各制御手段から出力される使用希望信号及び使用確認信号と、前記パルス生成手段から出力される各使用許諾パルスと、前記使用許諾禁止手段から出力される禁止信号とをそれぞれ入力し、前記使用を許可されたデバイスの許可制御手段に対しては、該使用許諾パルスに対応した前記使用許諾信号を出力して該許可制御手段に与え、前記使用を許可されないデバイスの非許可制御手段に対しては、該使用許諾パルスを遮断して前記使用許諾信号の出力を停止する構成にしている。
【0019】このような構成を採用したことにより、デバイスに設けられた制御手段から、コンピュータの所定の資源の使用を希望する使用希望信号が出力されると、これが調停装置内のゲート回路に与えられる。ゲート回路では、パルス生成手段から出力される使用許諾パルスに対応した使用許諾信号を出力し、制御手段に与える。これにより、デバイスは資源の使用を許可されるので、制御手段から使用確認信号を出力し、調停装置に与える。使用を許可されない他のデバイスに対応する調停装置内のゲート回路では、使用許諾禁止手段から出力される禁止信号により、使用許諾信号の出力を停止するので、使用を許可されないデバイスの資源の利用が制限される。
【0020】この第1の発明の競合調停装置は、単にバスの使用権を巡る調停に止まらず、コンピュータの資源の分配に関して広く適用可能である。
【0021】第2の発明は、第1の発明の競合調停装置において、コンピュータの所定の資源として、バスの使用権を巡る調停に利用される。
【0022】第3の発明は、第1又は第2の発明の競合調停装置において、パルス生成手段は、リングオシレ−タの出力からゲート回路によって使用許諾パルスを生成して出力する回路構成にしている。
【0023】第4の発明は、第1〜第3の発明のいずれか一つの競合調停装置において、各制御手段は、使用許諾信号に同期して使用希望信号を出力することにより、デバイスの使用希望が該デバイスの順番に従って許諾される構成にしている。
【0024】このように第3及び第4の発明を構成することにより、例えば、パルス生成手段から高速の使用許諾パルスを出力すると、これに対応した高速の使用許諾信号が各デバイスの制御手段に供給され、迅速な調停が行われる。
【0025】
【発明の実施の形態】(第1の実施形態)
(1)構成図1は本発明の第1の実施形態を示す競合調停装置の構成図である。この競合調停装置は、メモリ等の複数個Nのデバイス31−1〜30−Nを有している。各デバイス30−1〜30−Nは、バスインタフェース31−1〜31−Nと、制御手段(例えば、バスマスタ)32−1〜32−Nとを有し、これらのバスインタフェース31−1〜31−Nが、コンピュータの所定の資源(例えば、バスデータBDを伝送する外部バス)33に接続され、バスマスタ32−1〜32−Nが、調停装置40に接続されている。各バスインタフェース31−1〜31−Nは、外部バス33上のバスデータBDを入出力する機能を有している。各バスマスタ32−1〜32−Nは、使用希望信号(例えば、バス使用希望信号)RQ1〜RQN、及び使用確認信号(例えば、バス使用確認信号)AK1〜AKNを調停装置40へ出力すると共に、該調停装置40から出力される使用許諾信号(例えば、バス使用許諾信号)GR1〜GRNを入力する機能を有している。
【0026】バス使用希望信号RQ1〜RQNは、デバイス30−1〜30−Nが外部バス33の使用を希望するときにバスマスタ32−1〜32−Nから出力され、本実施形態ではバス使用確認信号AK1〜AKNが出力される限り存続する。バス使用確認信号AK1〜AKNは、デバイス30−1〜30−Nが、調停装置40からのバス使用許諾信号GR1〜GRNを確認したときにバスマスタ32−1〜32−Nから出力され、本実施形態ではデバイス30−1〜30−Nのバス使用が終了したときに取下げられる。バス使用許諾信号GR1〜GRNは、調停装置40がデバイス30−1〜30−Nに外部バス33の使用権限を与えるときにバスマスタ32−1〜32−Nに入力され、これによってデバイス30−1〜30−Nはトークンを得ることになる。
【0027】調停装置40は、パルス生成手段(例えば、高速パルス生成回路)50、使用許諾禁止手段(例えば、使用許諾禁止回路)55、及びN個のゲート回路60−1〜60−Nから構成されており、バスマスタ32−1〜32−Nに対し、バス使用希望信号RQ1〜RQN及びバス使用確認信号AK1〜AKNを入力すると共に、バス使用許諾信号GR1〜GRNを出力する回路である。
【0028】高速パルス生成回路50は、一定のパルス間隔で高速のN個の使用許諾パルスGP1〜GPNを1周期毎に順次生成して出力する回路である。使用許諾パルスGP1〜GPNは、バス使用許諾信号GR1〜GRNの基礎になる。使用許諾禁止回路55は、バスマスタ32−1〜32−Nに接続され、これらのバスマスタ32−1〜32−Nから出力されるバス使用確認信号AK1〜AKNを入力し、バス使用許諾信号GR1〜GRNを禁止する禁止信号IGを出力する回路である。
【0029】高速パルス生成回路50、使用許諾禁止回路55及びバスマスタ32−1〜32−Nには、ゲート回路60−1〜60−Nが接続されている。各ゲート回路60−1〜60−Nは、各バスマスタ32−1〜32−Nから出力されるバス使用希望信号RQ1〜RQN及びバス使用確認信号AK1〜AKNと、高速パルス生成回路50から出力される使用許諾パルスGP1〜GPNと、使用許諾禁止回路55から出力される禁止信号IGとをそれぞれ入力し、外部バス33の使用を許可されたデバイス(例えば、30−1)のバスマスタ32−1に対しては、使用許諾パルスGP1に対応したバス使用許諾信号GR1を出力してバスマスタ32−1に与え、使用を許可されないデバイス(例えば、32−2〜30−N)の非許可のバスマスタ32−2〜32−Nに対しては、使用許諾パルスGP2〜GPNを遮断してバス使用許諾信号GR2〜GRNの出力を停止する回路である。
【0030】ゲート回路60−1〜60−Nは、例えば、2入力ANDゲート61−1〜61−Nと、2入力NANDゲート62−1〜62−Nと、2入力ANDゲート63−1〜63−Nとで構成されている。各ANDゲート61−1〜61−Nは、高速の各使用許諾パルスGP1〜GPNと、各バス使用希望信号RQ1〜RQNとを入力し、外部バス33の使用を希望するデバイス(例えば、30−1)のみにバス使用許諾信号GR1を出力する目的で設けられている。各NANDゲート62−1〜62−Nは、禁止信号IGと、各バス使用確認信号AK1〜AKNとを入力し、現に外部バス33を使用しているデバイス(例えば、30−1)のみにバス使用許諾信号GR1を出力し続ける目的で設けられている。
【0031】各ANDゲート63−1〜63−Nは、各ANDゲート61−1〜61−Nの出力信号と、各NANDゲート62−1〜62−Nの出力信号とを入力し、各バス使用許諾信号GR1〜GRNを生成して出力する機能を有している。そのため、一旦あるデバイス(例えば、30−1)が外部バス33を占有すると、他のデバイス30−2〜30−Nにバス使用許諾信号GR2〜GRNは出力されないが、当該デバイス30−1には依然としてバス使用許諾信号GR1が出力され続ける。これらのゲート回路60−1〜60−Nの作用により、調停装置40において外部バス33がデバイス30−1〜30−N間で排他的に使用されることが保証される。
【0032】図2は、図1中の高速パルス生成回路50の構成例を示す回路図である。この高速パルス生成回路50は、奇数個のインバータ51−1〜51−Nがリング状に接続されたリングオシレータを有している。デバイス30−1〜30−Nの数が偶数個の場合は、自走発振のために必ず位相調整回路53が必要となる。位相調整回路53は、信号遅延機能を有する信号反転用のインバータ53aと、信号遅延用のコンデンサ53bとで構成され、リングオシレータの発振周波数の調整のためにも使用される。リングオシレータを構成するインバータ51−1〜51−Nの出力側には、信号遅延用のコンデンサ52−1〜52−Nが付加されており、いたずらに発振周波数が高くなるのを抑制している。
【0033】各インバータ51−1〜51−Nの入出力側間には、インバータ1段分の時間遅れを利用した2入力の排他的論理和(以下「XOR」という。)ゲート54−1〜54−Nが接続され、高速の使用許諾パルスGP1〜GPNを生成して出力するようになっている。つまり、XORゲート54−1〜54−Nにより、インバータ1段分の時間幅を持つ使用許諾パルスGP1〜GPNが生成される。使用許諾パルスGP1〜GPNのパルス幅を十分に確保するには、インバータ51−1〜51−Nの段数を複数にしてその間のXORをとるのがよい。
【0034】図2では、単に最も簡単なインバータ1段分の具体例を示しており、波形整形のためにも複数段の遅延時間をもつ使用許諾パルスGP1〜GPNの生成が望ましい。コンデンサ52−1〜52−Nは、使用許諾パルスGP1〜GPNのパルス幅があまり狭くならないように作用し、この結果、リングオシレータの発振周波数をも決定するものであるから、調停装置40の速度、若しくは帯域幅を決定する重要な要素である。
【0035】図3は、図1中の使用許諾禁止回路55の構成例を示す回路図である。この使用許諾禁止回路55は、例えば、バス使用確認信号AK1〜AKNを入力してこれらの論理和をとり、禁止信号IGを出力する多入力ORゲート55aで構成されている。この多入力ORゲート55aを設けることにより、いずれかのデバイス(例えば、30−1)が外部バス33の使用を開始したときには、このデバイス30−1を除く他のデバイス30−2〜30−Nに対し、NANDゲート62−1〜62−Nによってバス使用許諾信号GR2〜GRNの出力が禁止されることになる。
【0036】(2)動作図4は、図2の高速パルス生成回路50の動作を示すタイミングチャートである。図2の高速パルス生成回路50において、インバータ1段分だけ時間が遅れたタイミングt1,t2,t3,…で、インバータ51−N,51−1,51−2,…の出力信号が順次“H”レベルに立ち上がっていく。すると、各インバータ51−1〜51−Nの入出力が、各XORゲート54−1〜54−NでXORがとられ、タイミングt1,t2,…で、高速の使用許諾パルスGP1,GP2,…が各XORゲート54−1〜54−Nから出力される。
【0037】図5(A)〜(D)は図1の競合調停装置の動作を示すタイミングチャートであり、同図(A)は使用許諾パルス出力のタイミングチャート、同図(B)はデバイス30−1のリクエスト1とデバイス30−2のリクエスト2が競合したときのタイミングチャート、同図(C)はデバイス30−1のリクエスト1の終了後のデバイス30−2のリクエスト2とデバイス30−3のリクエスト3の競合のときのタイミングチャート、及び同図(D)は同期式リクエストのタイミングチャートである。
【0038】以下、図5の(A)〜(D)の動作を説明する。
(A)使用許諾パルス出力高速パルス生成回路50が生成する高速の使用許諾パルスGP1〜GPNのタイミングは、ANDゲート61−1〜61−N及び63−1〜63−Nで阻止されない限り、バス使用許諾信号GR1〜GRNのタイミングと同一である。例えば、デバイス30−1に入力するバス使用許諾信号GR1の場合、この基礎は生成された使用許諾パルスGP1であって、これはタイミングt1に始まり、タイミングt2で終了する。最後のデバイス30−Nに対して、使用許諾パルスGPNはタイミングtnで始まり、タイミングt1で終了する。つまり、高速パルス生成回路50は、周期Tを繰り返し、一定のパルス幅の使用許諾パルスGP1〜GPNを順次各デバイス30−1〜30−Nに向けて出力している。
【0039】(B)リクエスト1とリクエスト2の競合例えば、タイミングt1以前にデバイス30−1がバス使用希望信号RQ1(リクエスト1)を出し、続いてデバイス30−2がバス使用希望信号RQ2(リクエスト2)を出したときには、双方のリクエスト1及び2が競合するので、次のように処理される。
【0040】タイミングt1で、調停装置40がデバイス30−1に対し外部バス33の使用を許諾するバス使用許諾信号GR1を出力すると、デバイス30−1のバスマスタ32−1はその応答としてバス使用確認信号AK1を出力する。このバス使用確認信号AK1を受けて、使用許諾禁止回路55は他のデバイス30−2〜30−Nの使用を禁止する禁止信号IGを出力する。これにより、図中破線で示されるように、デバイス30−2のバス使用許諾信号GR2は出力されない。この結果、外部バス33の使用権はデバイス30−1が確保し、その後、外部バス33の使用希望を取下げるべくバス使用希望信号RQ1を“L”レベルに立ち下げるまで、他のデバイス30−2〜30−Nの使用を禁止する禁止信号IGも“L”レベルに立ち下がらず、他のデバイス30−2〜30−Nのバス使用希望は留保されてしまう。
【0041】デバイス30−1によるバス使用権の放棄、即ちトークンの受け渡しがあったときは、この際、デバイス30−2がバス使用希望信号RQ2を出し続けていれば、デバイス30−2はデバイス30−1に続き、次の周期Tのタイミングt2でそのトークンを受け取って外部バス33の使用権を確保することができる。すると、今度は、デバイス30−1のバス使用許諾信号GR1が出力されなくなる。
【0042】なお、周期Tの期間において、仮にバス使用希望信号RQ1よりもRQ2が早く出されても、デバイス30−1が30−2よりも優先される。又、バス使用希望信号RQ1,RQ2,…が使用許諾パルスGP1,GPN,…の“H”レベルの期間に発生すると、バス使用許諾信号GR1,GR2,…がひげ状のパルスになるおそれがあるが、これに対する対策としては、例えば、バスマスタ32−1〜32−N内にフィルタを設けて消去することが可能である。
【0043】(C)リクエスト1終了後のリクエスト2とリクエスト3の競合ここでは、バス使用希望信号RQ1(リクエスト1)の終了時のトークンの取り扱い(例えば、デバイス30−1が外部バス33の使用を放棄し、トークンを次のデバイス30−2,30−3に渡すときにどのデバイス30−2又は30−3が選択されるのかの取り扱い)が示されている。
【0044】例えば、デバイス30−1がトークンを持っているときに、デバイス30−2と30−3が双方ともバス使用希望信号RQ1及びRQ2(リクエスト2及び3)を出して競合した場合、次のように処理される。
【0045】タイミングt2以前にデバイス30−2によるバス使用希望信号RQ1(リクエスト2)が出ていれば、問題なくトークンはデバイス30−2が取得する。しかし、タイミングt3直前にデバイス30−1が外部バス33の使用を放棄したとすれば、トークンはデバイス30−3が取得してしまう。つまり、デバイス30−3によるバス使用確認信号AK3が出力され、このバス使用確認信号AK3を受けて使用許諾禁止回路55が他のデバイス30−1,30−2,30−4〜30−Nの使用を禁止する禁止信号IGを出力する。デバイス30−2が先にバス使用希望信号RQ2(リクエスト2)を出していたことを考えると、結果的にバス使用の機会の均等が破れてしまったことになる。この問題を解決するのが、次に説明する(D)の同期式リクエストである。
【0046】(D)同期式リクエスト同期式リクエストでは、トークンの保持は必ず使用許諾パルスGP1〜GPNの1周期T単位で行うようにする。具体的には、デバイス30−1のバス使用希望信号RQ1(リクエスト1)の終了は、使用許諾パルスGP1の“L”レベルへの立ち下りに同期して行うこととし、デバイス30−1のバスマスタ32−1がその制御を行うような回路構成になっている。この結果、前記(C)の場合と異なり、必ずデバイス30−1から30−N方向の順番にバス使用希望信号RQ1〜RQN(リクエスト1〜N)が調べられ、トークンは次のデバイスであるデバイス30−2に渡される。タイミングt2では、デバイス30−2のバス使用確認信号AK2が出力され、この結果、デバイス30−3のバス使用確認信号AK3は出力されない。従って、デバイス30−1〜30−N間でのバス使用の機会の均等を確保することができる。
【0047】(3)効果第1の実施形態では、次の(a)〜(c)に示すような効果等がある。
(a)従来の図8の芋づる式競合調停装置では、トークンをデバイス10−1から10−N方向へ順次渡していく調停方式なので、デバイス10−1〜10−Nを通過する遅延時間が無視できない。これに対し、本実施形態では、高速パルス生成回路50を有する調停装置40を用いることを特徴とするので、トークンはデバイス30−1〜30−N上ではなく、高速パルス生成回路50内を巡回していると見なすことができる。即ち、高速パルス生成回路50から出力される高速の使用許諾パルスGP1〜GPNのおかげで、バス使用希望信号RQ1〜RQN(リクエスト1〜N)を出したデバイス30−1〜30−Nは、速やかにそのリクエストを受け付けてもらえる利点を有している。本実施形態による調停方式は、従来にない新しい方式であり、デバイス30−1〜30−N間の機会均等を保証し、かつ、高速に外部バス33の調停を行うことが可能である。
【0048】(b)前記(a)で説明したように、バス使用の機会均等は確保されているが、従来の図8の芋づる式調停方式と同様に、低速のデバイス(30−1〜30−Nのうちのあるもの)がいつまでも外部バス33を占有し続けるおそれが残っている。この対策としては、優先度の概念を導入したり、一定時間でトークンを手放す構成にすることが望ましい。これについては、次の第2の実施形態で説明する。
【0049】(c)同期式リクエストを実現するバスマスタ32−1〜32−Nを導入すれば、トークンは必ずデバイス30−1から30−N方向へ順番に手渡されることになり、これによってデバイス30−1〜30−N間の機会の均等を確保できる。
【0050】(第2の実施形態)
(1)構成図6は、本発明の第2の実施形態を示す競合調停装置における優先度付きバスマスタを有するデバイスの一例の構成図であり、第1の実施形態を示す図1中の要素と共通の要素には共通の符号が付されている。
【0051】この優先度付きバスマスタを有するデバイスは、例えば、図1の各デバイス30−1〜30−Nに代えて設けられるものであり、図1の外部バス33に接続されるバスインタフェース31と、調停装置40に接続されるバスマスタ32と、デバイス本体とを有している。
【0052】バスマスタ32は、2入力ANDゲート71−1〜71−4、2入力ORゲート72−1〜72−5、リセットレジスタ73、フリップフロップからなるキャリーフラグ(Carry Flag)74、優先順位決定回路を構成するプライオリティカウンタ(Priority Counter)75とプライオリティレジスタ76、使用確認用のアクノリッジ(Acknowledge )レジスタ77、使用許諾用のグラント(Grant )レジスタ78、及び内部バス79等を有している。内部バス79は、デバイスイネーブル(Device Enable )信号DEで動作するバスインタフェース31を介して、外部バス33に接続されている。
【0053】図7は、図6のデバイスに付加されるバス占有解除回路の一例を示す構成図である。このバス占有解除回路は、ウオッチドッグタイマ(Watch Dog Timer )80、及び2入力ORゲート72−6で構成されている。
【0054】(2)動作優先度を導入した図6及び図7のデバイスでは、次のように動作する。デバイス本体が外部バス33の使用を希望してデバイスリクエスト(Device Request )信号DRを出力したとき、リセットレジスタ73がセットされて直ちにバス使用希望信号RQが出るのではない。ANDゲート71−1において、キャリーフラグ74の出力端子Qからリクエストイネーブル(Request Enable )信号REが出ていなければ、リセットレジスタ73はセットされない。これは、デバイス内部に優先度を導入したからである。この場合、優先度はプライオリティレジスタ76のデータにより決まる。プライオリティレジスタ76のデータは、内部バス79を介して、タイミングクロック(Timing Clock )TC1においてデータラッチ(Data Latch )信号DLによりプライオリティレジスタ76へ取り込まれる。
【0055】次に、プライオリティレジスタ76に取り込まれたデータは、データセット(Data Set )信号DSによりプライオリティカウンタ75へセットされる。カウンタクロック(Counter Clock )信号CCによりプライオリティカウンタ75が進み、桁上げ信号であるキャリー(Carry )信号Cが出力されると、キャリーフラグ74がセットされる。この結果、キャリーフラグ74からリクエストイネーブル信号REが出力されてANDゲート71−1が開き、リセットレジスタ73がセットされてバス使用希望信号RQが出力され、図1の調停装置40がそのリクエストを認識することができる。
【0056】一旦、キャリーフラグ74の出力端子Qからリクエストイネーブル信号REが出力された後、タイミングクロックTC3においてANDゲート71−2によりリスタート(Restart)信号RSが立ち上がり、 ORゲート72−2を介してキャリーフラグ74がリセットされると共に、ORゲート72−3を介してプライオリティカウンタ75がリセットされる。今度は、キャリーフラグ74から出力されるリクエストイネーブル信号REは、プライオリティカウンタ75のキャリー信号Cが出ている間だけ有効になる。プライオリティカウンタ75のデータ量が大きいと、頻繁にリクエストイネーブル信号REが出力される。これは、そのデバイスの優先度が高いことを意味する。
【0057】図6のデバイスがバス使用希望信号RQを出力して外部バス33の占有を希望したとき、図1の調停装置40がこれを認めてバス使用許諾信号GRを出力すると、グラントレジスタ78がセットされる。グラントレジスタ78の出力端子Qから出力される信号は、タイミングクロックTC2においてANDゲート71−4によりアクノリッジレジスタ77をセットし、この結果、図1の調停装置40に対しバス使用確認信号AKで応答できる。これは、図6のデバイスのバス使用許諾信号GRを受けて、このデバイスが外部バス33の占有を開始したことを意味する。アクノリッジレジスタ77から出力されるバス使用確認信号AKは、バスインタフェース31を介して、内部バス79と外部バス33を連結し、併せてデバイス内のその他の制御に使用される。
【0058】例えば、外部バス33に接続された図示しない中央処理装置(以下「CPU」という。)が図6のデバイスに対しアクセスしようとするときは、バスインタフェース31に対し、デバイスイネーブル信号DEにより行う。例えば、外部バス33に接続された図示しないCPUが、直接図6のデバイスの優先度を指定するために、プライオリティレジスタ76に書き込む場合等である。
【0059】図6のデバイスが、外部バス33の占有を終了し、デバイス本体がデバイスリクエスト(Device Request )信号DRを取り下げたとき、若しくは、リクエストアボート(Request Abort )信号RAを立ち上げたときは、ANDゲート71−1又はORゲート72−1を介してリセットレジスタ73がリセットされ、この結果、バス使用希望信号RQが立ち下がり、ORゲート72−4を介してアクノリッジレジスタ77がリセットされる。これにより、バス使用確認信号AKが強制的に立ち下がり、その他のデバイスに外部バス33を占有する機会が与えられることになる。
【0060】図1の調停装置40から与えられるバス使用許諾信号GRは、図6のデバイスの使用許可を与える信号であるが、パルスで入力されるので、これを受け取るグラントレジスタ78が必要になる。しかし、外部バス33の占有を開始し、アクノリッジレジスタ77からバス使用確認信号AKを出力した後に、グラントレジスタ78をセットしたままにしておくと、バス使用許諾信号GRが立ち下がり、図1の調停装置40が外部バス33の使用許諾を取り消した後も許諾があるかのように見えてしまうので、予めORゲート72−5においてバス使用確認信号AKを検出してグラントレジスタ78をリセットしておく。
【0061】図6の優先度付きバスマスタ32を有するデバイスの場合、このままでは低速のデバイスによる外部バス33の占有を解除することができない。デバイス本体から出力されるリクエストアボート信号RAは、自ら外部バス33の占有を放棄するための信号である。そこで、図7に示すように、デバイス内部にウオッチドッグタイマ80を設ける。ウオッチドッグタイマ80は、クロックCKをカウントし、デバイスが一定時間正常な動作をしているときには、セットされてタイマキャリー(Timer Carry )信号TCAが出力されない。もしデバイスに異常が発生した場合は、ウオッチドッグタイマ80が一定時間以上経過してもリセットされないために、オーバーフローが生じてタイマキャリー信号TCAが出力される。このタイマキャリー信号TCAとマニュアルアボート(Manual Abort )信号MAとがORゲート72−6で論理和がとられ、リクエストアボート信号RAが出力される。
【0062】このようなウオッチドッグタイマ80を設けることにより、予め定められた時間で外部バス33を放棄することができる。この時間を短くすれば、これは図6のデバイスの優先度を下げたことと等価になる。
【0063】(3)効果第2の実施形態では、優先度の低いデバイス(例えば、低速のデバイス)がいつまでも外部バス33を占有することを防止でき、優先度の高いデバイスの要求に答えることができる。
【0064】(利用形態)本発明は、上記実施形態に限定されず、種々の変形や利用形態が可能である。この変形や利用形態としては、例えば、次の(i)〜(iii)のようなものがある。
【0065】(i)図1の高速パルス生成回路50や使用許諾禁止回路55は、図2や図3以外の回路で構成することも可能である。又、各ゲート回路60−1〜60−Nは、図示以外の他のゲート等で構成してもよい。
【0066】(ii)図6及び図7に示す優先度付きバスマスタを有するデバイスは、図示以外の回路で構成することも可能である。
【0067】(iii)実施形態の競合調停装置では、外部バス33の使用権を巡る調停方式について説明したが、本発明は、コンピュータの外部バス33以外の他の資源の分配に関して広く適用可能である。
【0068】
【発明の効果】以上詳細に説明したように、第1〜第3の発明によれば、パルス生成手段を有する調停装置を設けたので、トークンはデバイス上ではなく、例えば、高速のパルスを出力するパルス生成手段内を巡回していると見なすことができる。よって、パルス生成手段から出力される高速のパルスにより、使用希望信号を出力したデバイスは速やかにその使用希望信号を受け付けてもらうことができ、デバイス間の機会均等を保証し、かつ高速にバス等のコンピュータの資源の調停を行うことができる。
【0069】第4の発明によれば、同期式リクエストを実現する制御手段を設けると、トークンは必ずデバイスの順番に手渡されることになり、デバイス間の機会の均等をより確実に保証することができる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013