JP3557507B2 - バス使用権調停回路 - Google Patents
バス使用権調停回路 Download PDFInfo
- Publication number
- JP3557507B2 JP3557507B2 JP17300096A JP17300096A JP3557507B2 JP 3557507 B2 JP3557507 B2 JP 3557507B2 JP 17300096 A JP17300096 A JP 17300096A JP 17300096 A JP17300096 A JP 17300096A JP 3557507 B2 JP3557507 B2 JP 3557507B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- priority
- signal
- low power
- bus master
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Bus Control (AREA)
Description
【発明の属する技術分野】
本発明は、プロセッサバスを介して接続された複数のバスマスタと、これらのバスマスタのプロセッサバス使用権を調停するアービトレーションモジュールとを備え、特にラウンドロビン式の調停法を採用した場合の優先順位決定の最適化を図ったバス使用権調停回路に関する。
【0002】
【従来の技術】
複数のバスマスタがプロセッサバスに接続されてこれを使用する場合、バス使用権の調停はアービトレーションモジュールが行う。プロセッサバスの使用要求を複数のバスマスタが同時に出力し、これらが競合した場合、予め設定された優先順に使用許可が行われる。この優先順位は固定的なものと浮動的なものとがある。後者の調停法としてラウンドロビン式調停法が知られている。この方法では、複数のバスマスタに対しその調停が公平になるように周期的に優先順位を変更する。従って、ある時点で優先順位が1位になったバスマスタは次の時点で優先順位が最下位となり、順に優先順位が繰り上がって、その後再び優先順位が1位に戻る。
【0003】
一方、マイクロコンピュータを使用するシステムでは、電源が入っていてもプロセッサを使用しないような場合には、システムの消費電力低減のため動作クロックを停止することが行われる。この低消費電力モードの開始にあたっては、予めシステム各部に低消費電力モード信号が出力され、各部でこれに対応する処理がなされる。バス使用権調停回路においても、このようなモードに移行するような場合には予め回路の初期化を行う。従って、再び動作クロックの出力が開始されて正常モードに移る場合には、初期状態から改めてバス使用権の調停を開始する。即ち、初期状態では常にある一定のバスマスタを最優先とし、その状態から順に優先順位を変更する処理に進む。
【0004】
【発明が解決しようとする課題】
ところで、上記のような従来のバス使用権調停回路には次のような解決すべき課題があった。
上記のように従来のラウンドロビン式調停法では、システムが低消費電力モードに移行し、その低消費電力モードを終了して再び動作を開始した場合に、常に初期状態となって一定のバスマスタに最初に優先権が与えられてしまう。しかしながら、例えばこの低消費電力モードへ移行する直前に実行していた処理を最優先に開始したい場合がある。そのとき、そのバスマスタが最初に優先権を与えられるという保証はない。
【0005】
また、ラウンドロビン式調停法では、予め定められた一定の順番に優先順位が周期的に変更される。この変更順位や変更される周期等も予め設定された固定的なもので、例えば何らかの緊急性のある処理を特定のバスマスタに実行させようとする場合に、必ずしもそのバスマスタがその時点で優先順位を最優先に設定されているとは限らない。
このようなランドロビン式調停法において、優先順位の設定を要求に応じて柔軟に切り換えることのできる自由度が要求されている。
【0006】
【課題を解決するための手段】
本発明は以上の点を解決するため次の構成を採用する。
〈構成1〉
プロセッサバスを介して接続された複数のバスマスタと、これらのバスマスタのプロセッサバス使用権を調停するアービトレーションモジュールとを備え、このアービトレーションモジュールは、ラウンドロビン式に各バスマスタの優先順位付けを行うとともに、システムが低消費電力モードに移行して、その低消費電力モードを終了したとき、低消費電力モードへの移行直前の優先順位付けを承継するか、常に一定のバスマスタに最初に優先権を与えるかを判定する判定回路を設けたことを特徴とするバス使用権調停回路。
【0007】
〈説明〉
プロセッサバスを使用してデータ等のアクセスを行う場合には、各バスマスタは、アービトレーションモジュールに対して予めバス使用要求を行う。バス使用要求が競合したときは、アービトレーションモジュールは、予め設定した優先順位に従って、該当するバスマスタにプロセッサバスの使用許可を与える。ラウンドロビン式の調停方法では、周期的に優先順位を変更する。低消費電力モードは、プロセッサを使用していないとき、低消費電力状態にするために選択されるモードである。
この低消費電力モードに移行するとき、アービトレーションモジュールは初期状態にリセットされるから、低消費電力モードを終了すると、常に一定のバスマスタに最初に優先権を与えるように動作する。
【0008】
判定回路は、指定に従って、低消費電力モードへの移行直前の優先順位付けを承継するように、例えばそのリセットを阻止する。
これにより、低消費電力モードへの移行後、引き続き直前の処理を継続したいシステムや、常に改めて最初から処理を行いたいシステムのいずれにも対応でき、優先順位付けの最適化が図れる。
【0009】
〈構成2〉
プロセッサバスを介して接続された複数のバスマスタと、これらのバスマスタのプロセッサバス使用権を調停するアービトレーションモジュールとを備え、このアービトレーションモジュールは、システムが低消費電力モードに移行すると、上位の制御部から供給されるバスマスタの選択信号に基づいて選択すべきバスマスタを示すセレクト信号を出力する判定回路と、前記各バスマスタに対しラウンドロビン式に優先順位を付与すると共に前記セレクト信号が入力されると、低消費電力モードの終了で対応するバスマスタに優先権を付与する制御回路とを含むことを特徴とするバス使用権調停回路。
【0010】
〈説明〉
アービトレーションモジュールは低消費電力モードを終了し、任意のバスマスタが指定されているとき、そのバスマスタに最初に優先権を与える。
このように自由な指定ができれば、優先順位付けのいっそうの最適化が図れる。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態を具体例を用いて説明する。
〈具体例1〉
図1は、具体例1のバス使用権調停回路を示すブロック図である。
この回路は、アービトレーションモジュール1がプロセッサバス11に接続された複数のバスマスタ2,3,4のバス使用権を調停するよう構成されたものである。各バスマスタ2,3,4からは、プロセッサバス要求信号(NAREQ)5,7,9がアービトレーションモジュール1に対して出力され、アービトレーションモジュール1はいずれかのバスマスタに対しプロセッサバス使用許可信号(NAACK)6または8または10を出力する。
【0016】
動作クロック(CLK)12はこれら全てのモジュールに対し供給されている。また、アービトレーションモジュール1には低消費電力モード信号(PSM)13と、PSM優先セレクト信号(PSMSET)15とが入力するように構成されている。このアービトレーションモジュール1は、ラウンドロビン式の調停法によりバスマスタ2,3,4に対するプロセッサバス11の使用権調停を行っている。
また、動作クロック12と低消費電力モード信号13、PSM優先セレクト信号15はいずれも、図示しない上位のマイクロコントローラから送られてくるものとする。
【0017】
図2には、具体例1のアービトレーションモジュールの内部回路を示す。
図1に示したアービトレーションモジュール1は、この図に示すように判定回路17及び制御回路14から構成されている。判定回路17には2個のフリップフロップ(F/F)31,32と、オア回路33とが設けられている。各フリップフロップ31,32は、いずれもD端子に入力した信号を1クロックだけ保持し、Q端子に出力するよう構成されている。この制御は動作クロック(CLK)12によって行われる。なお、フリップフロップ32は低消費電力モード信号13によって信号の出力を制御される。このためにこの信号をイネーブル端子ENに受け入れている。オア回路33はフリップフロップ31の出力とフリップフロップ32の出力を受け入れて、これらをモード決定信号(PSMOUT)16として制御回路14に向け出力するよう構成されている。
【0018】
制御回路14の構成は従来のものとは変わるところはなく、動作クロック12を受け入れてそのタイミングでプロセッサバス要求信号5,7,9のいずれかに対する使用許可信号6,8,10を出力する構成となっている。この制御回路14は、モード決定信号16が入力すると一旦調停動作を停止し、初期化を行って、動作クロック12が再入力したときその初期状態から再び調停を開始する。
【0019】
図3には、制御回路14の具体的な内部回路を示す。
この回路を簡単な機能ブロックで表すと、例えば優先順位設定カウンタ35とゲート36,37,38とで構成される。図に示すように、プロセッサバス要求信号5,7,9はそれぞれゲート36,37,38に入力する。優先順位設定カウンタ35は、いずれかのバスマスタに優先権を与えるようにカウント値を定めてゲート36,37,38に向けて出力する。例えば、バスマスタ2に優先権が与えられる場合、ゲート36のみが開放され、ゲート37,38は閉じたままとなる。その結果、プロセッサバス要求信号5に応答してプロセッサバス信号許可信号6のみがアサートされる。
優先順位設定カウンタ35は所定のタイミングでカウントアップして優先順位を切り換える。低消費電力モードではモード決定信号16が優先順位決定カウンタをリセットして初期化する。
【0020】
図4には、このようなラウンドロビン式の基本的な調停法説明図を示す。
この例では、バスマスタ(BM)2,3,4に対し太い実線の矢印の順番で代わる優先順位が与えられるものとする。即ち、通常動作の際にはまずバスマスタ2に優先権が与えられ、その後所定のタイミングでバスマスタ3、バスマスタ4というように順に優先権が与えられ周期的に優先順位が切り換えられる。ここで、例えばバスマスタ2がプロセッサバス使用権を持っていて、いったん低消費電力モードに移行したとする。この場合に、上記のように初期化が行われると、予め設定した初期状態ではバスマスタ2に初めに優先権が与えられることから、動作再開後はそのままバスマスタ2が優先権を持つ。一方、バスマスタ3がプロセッサバス使用権を持っていて低消費電力モードに移行した場合には、動作が再開されると優先権は初期状態のバスマスタ2に移る。バスマスタ4がプロセッサバス使用権を持っていて低消費電力モードに移行した場合にも優先権はバスマスタ2に戻って動作が再開される。
【0021】
一方、具体例1の構成によれば、このように常にバスマスタ2に対し優先権が戻る状態と、直前の状態即ち低消費電力モードに移行する直前に優先権を持っていたバスマスタが、動作再開後その優先権を承継するといった状態の選択が可能となる。
【0022】
図5には、具体例1の優先順位変化説明図を示す。
図の(a)に示すように、通常動作時では優先順位がBM2,BM3,BM4,BM2,BM3,BM4というように変化するものとする。ここで、本発明においては例えば(b)に示すように、BM4がプロセッサバス使用権を持っていて低消費電力モードに移行したときは、優先順位を非承継の場合には低消費電力モードに移行したとき動作を再開すると、再びBM2,BM3,BM4という優先順位の設定が行われる。一方、直前の動作を承継する場合にはBM3,BM4というように使用権が移り、低消費電力モードに移行して動作を再開した場合、BM4に最初に優先権が与えられる。
【0023】
(c)はBM2がプロセッサバス使用権を持っていて低消費電力モードに移行したときの順位変化を示し、(d)はBM3がプロセッサバス使用権を持っていて低消費電力モードに移行したときの順位変化を示す。いずれの場合にも、低消費電力モードに移行し動作を再開したときには、動作承継の場合、直前にプロセッサバス使用権を持っていたBM2やBM3が引き続いて優先権を持つ。
以上のような承継と非承継の動作は、PSM優先セレクト信号15(図1)によって選択される。図2に示す判定回路17の具体的な動作を図6及び図7を用いて説明する。
【0024】
図6は、優先順位非承継時の動作モードタイムチャートである。
まず、図6(a)に示すように動作クロック12が各モジュールに供給されているものとする。ここで、時刻t1に低消費電力モード信号13がアサートされたとする。なお、この低消費電力モード信号13は“1”のとき通常状態、“0”のとき低消費電力モード状態を示すものとする。
【0025】
ここで、図6に示す状態では、(c)に示すように、PSM優先セレクト信号15はローレベル“0”に維持されたままである。この信号は“0”のときは優先順位非承継を指示し、“1”のときは優先順位を直前の状態から承継する旨を指示する。時刻t1に低消費電力モード信号13がアサートされ、図2に示すフリップフロップ31にゼロがセットされると、次のクロックの立ち上がり時にフリップフロップ31から“0”の信号がオア回路33に向けて出力される。一方、フリップフロップ32のイネーブル端子ENには低消費電力モード信号13が入力するから、既に“0”がセットされたフリップフロップ32の出力が時刻t2のタイミングでオア回路33に向け出力される。この内容は“0”である。その結果、モード決定信号16の内容は“0”となって制御回路14に送り込まれる。これは当初から低消費電力モード信号13を制御回路14に直接入力したのと同様の状態である。即ち、これによって制御回路14はモード決定信号16の入力したタイミングで初期化を行い、先に説明した通り、一定の、例えばバスマスタ2を常に最優先にして動作を再開する。
【0026】
図7は、優先順位承継時の動作タイムチャートである。
図7の(b)に示すように、時刻t2に低消費電力モード信号13がアサートされる前に、(c)に示すように時刻t1に予めPSM優先セレクト信号15が“0”から“1”にアサートされていると、図2に示したフリップフロップ32に内容が“1”の信号が取り込まれる。そして、時刻t2に低消費電力モード信号13が“1”から“0”にアサートされると、フリップフロップ32の出力が許可され、次のタイミングの時刻t3でフリップフロップ32の出力する内容が“1”の信号がオア回路33に入力する。その結果、低消費電力モード信号13がアサートされても、フリップフロップ32の出力によってモード決定信号16の内容が“1”のままにされる。即ち、モード決定信号16は、図7(d)に示すように低消費電力モード信号13の内容に関わらず“1”のままとなる。その結果、図2に示す制御回路14は低消費電力モードへの移行を知らされず、直前の優先順位を維持したまま動作を停止する。そして、動作再開時には直前の優先権を持っていたバスマスタに再び優先権が与えられる。
【0027】
〈具体例1の効果〉
以上のように、具体例1に示したアービトレーションモジュール1の内部に低消費電力信号モード信号とPSM優先セレクト信号とを受け入れて、PSM優先セレクト信号の内容に応じてモード決定信号を出力する判定回路17を設けたので、低消費電力モードへ移行した際のバスマスタの優先順位をそのモード移行前の状態を承継するか、予め設定された一定のバスマスタに優先順位を設定するか自由に選択できる。これによって、システム制御の自由度が増し、動作の最適化を行うことができる。
【0028】
〈具体例2〉
図8には、具体例2のバス使用権調停回路を示す。
この回路は、図1に示した具体例1の回路に対し新たにバスマスタセレクト信号(REQSEL)18を入力するように構成したものである。このバスマスタセレクト信号18は、低消費電力モードを解除した際のバスマスタの優先順位を任意に指定するための信号である。即ち、バスマスタセレクト信号18が“0”のとき、例えばバスマスタ2の優先順位を1番にし、“1”のときバスマスタ3の優先順位を1番にし、“2”のときバスマスタ4の優先順位を1番にする。なお、PSM優先セレクト信号15の役割は具体例1と同様である。
【0029】
図9には、これを実現するための具体例2のアービトレーションモジュール内部回路を示す。
図に示すように、この判定回路17には、具体例1の図2に示した回路に対し新たにフリップフロップ34を追加している。このフリップフロップ34にはバスマスタセレクト信号(REQSEL)18が入力する。また、このフリップフロップ34のイネーブル端子ENには低消費電力モード信号13が入力する。このフリップフロップ34はバスマスタセレクト信号18を受け入れて低消費電力モード信号13が“0”のとき、動作クロック12のタイミングに合わせてQ端子から格納していた信号を出力する。その出力はセレクト信号(REQOUT)19となって制御回路14に入力する。その他の結線は既に説明した具体例1の場合と同様である。
【0030】
図10に、具体例2の回路の動作タイムチャートを示す。
図の(a)は動作クロック12、(b)は低消費電力モード信号13、(c)はPSM優先セレクト信号15、(d)はモード決定信号16、(e)はバスマスタセレクト信号18、(f)はセレクト信号19、(g),(h),(i)はそれぞれバスマスタ2,3,4のプロセッサバス要求信号、(j),(k),(l)はバスマスタ2,3,4のプロセッサバス使用許可信号を示す。
【0031】
図に示すように、動作クロック12は時刻t8において低消費電力モード信号により動作を停止し、時刻t9から動作を再開する。PSM優先セレクト信号15の内容は“0”のままとする。従って、低消費電力モード信号13が時刻t4で“1”から“0”に切り換わると、その1クロック後の時刻t5にモード決定信号16が“1”から“0”に切り換わる。これは具体例1で説明したのと同一の動作である。ここで、(e)に示すように、バスマスタセレクト信号18の内容が時刻t3に“0”から“1”に切り換わっている。
【0032】
この信号は図9に示したフリップフロップ34に格納されるが、低消費電力モード信号13が時刻t4で“1”から“0”に切り換わるため、フリップフロップ34の出力が可能になり、(f)のセレクト信号19は時刻t5に“0”から“1”に切り換わる。ここで、例えば(g)に示すように、時刻t1にバスマスタ2からのプロセッサバス要求信号5が停止し、これを受けて時刻t2に(j)に示すように、プロセッサバス使用許可信号6が“0”から“1”に切り換わった。これでバスマスタ2の処理は終了する。このとき、(i)に示すように、バスマスタ4のプロセッサバス要求信号9が“0”となっており、バス権要求中である。(h)に示すように、バスマスタ3も同様にバス権要求中である。
【0033】
このタイミングではバスマスタ3がバスマスタ4よりも優先順位が高いことから、(k)に示すように時刻t2にプロセッサバス使用許可信号8が“1”から“0”になり、バスマスタ3に対しバスの使用許可が与えられる。バスマスタ4は時刻t5でプロセッサバスの要求をいったん停止する。また、バスマスタ3は時刻t6でバスの使用を開放し、その1クロック後、(k)に示すように、プロセッサバス使用許可信号も“0”から“1”に復帰する。こうして、低消費電力モードに移行する。
【0034】
その後、時刻t9に低消費電力モード信号13が“0”から“1”に立ち上がると、動作クロック12の動作が開始する。ここで、(e)のようにバスマスタセレクト信号18の内容が“0”で、(f)のようにセレクト信号19の内容が“1”であるから、バスマスタ3の要求を最優先にする指定がなされる。図のように、この時刻t9にバスマスタ2,3,4が一斉にバス権要求を行った場合であっても、バスマスタ3の要求を優先的に受け付けてプロセッサバス使用許可信号8が“1”から“0”に切り換わる。
【0035】
即ち、図9に示す回路によれば、判定回路17のフリップフロップ34を除く部分で、具体例1に説明したものと同様に、低消費電力モード移行前の状態を承継する動作と承継しない動作の選択ができる。更に、移行前の状態を承継しないとしても、初期設定で定められたバスマスタ2に対し常に優先権を与えるようにするだけでなく、バスマスタセレクト信号18を切り換えることによって、バスマスタ3に常に優先権を与えるよう設定することができる。また、バスマスタセレクト信号18を2ビット構成にし、0,1,2という切換えができる構成にすれば、低消費電力モードを終了した場合に、バスマスタ2に優先権を与える状態、バスマスタ3に優先権を与える状態、バスマスタ4に優先権を与える状態のいずれかを自由に選択することができる。
【0036】
図11には、このようなバスマスタセレクト信号を2ビット構成にした場合の具体例2の調停法説明図を示す。
この図に示した例は、いずれも低消費電力モードに移行する前の状態を承継しない動作であるから、PSM優先セレクト信号(PSMSET)15の内容は全て“0”となっている。そして、この例ではバスマスタセレクト信号(REQSEL)18が“0”のときは1つ前のバスマスタに(BM3→BM2)、“1”のときは自分に(BM3→BM3)、“2”のときは次のバスマスタに(BM3→BM4)優先権が移行するように設定している。
【0037】
図12には、このような具体例2の優先順位変化説明図を示した。
(a)では、通常動作時でラウンドロビン式によりバスマスタ2,3,4の順に優先権が設定される。一方、(b)に示すように、バスマスタセレクト信号の内容を“0”に設定した場合に、バスマスタ3に優先権を与えた状態で低消費電力モードに移行したときには、再び動作を開始するとバスマスタ2に優先権が最初に与えられる。一方、(c)に示すように、バスマスタセレクト信号18の内容が“1”の場合には、同じくバスマスタ3が優先権を得ている状態で低消費電力モードに移ると、動作を再開したとき同一のバスマスタ3に優先権が最初に与えられる。更に、(d)に示すように、バスマスタセレクト信号18の内容が“2”の場合には同様の状態で動作が再開されると、次のバスマスタ4に最初に優先権が与えられる。このような制御は、図3に示した優先順位設定カウンタ35の値を動作再開時に指定した値だけカウントアップさせることにより実現する。
【0038】
〈具体例2の効果〉
以上のようにして、PSM優先セレクト信号にバスマスタセレクト信号を加えることによって低消費電力モードに移行した後動作が再開されるとき、任意のバスマスタに最初に優先権を与えることが可能になる。そして、上位のプロセッサからの制御によってプログラマブルに任意に指定の切換えができるため、システムの動作の自由度を拡大する。
【0039】
〈具体例3〉
図13には、具体例3のバス使用権調停回路を示す。
この例は図8を用いて説明した具体例2の回路に対し更に割り込み信号(NMINT)が入力する構成となっている。その他の部分は、具体例1や具体例2の構成と変わるところはない。
【0040】
図14には、具体例3のアービトレーションモジュールの内部回路ブロック図を示す。
この図に示すように、具体例3では判定回路17の構成は具体例2のものと全く同一である。そして、制御回路14に対し割り込み信号(NMINT)20が入力する構成となっている。
この具体例は、既に説明した具体例1や具体例2と同様に低消費電力モード信号13による低消費電力モードへの切換えが可能な構成となっている。しかしながら、この具体例の目的は、ラウンドロビン式の調停方法を実行している場合に、任意のタイミングで割り込み信号20を制御回路14に入力し、予め設定された所定のバスマスタに無条件に優先権を与えることを目的としている。従って、必ずしも低消費電力モードへの移行がなくてもこの具体例を実施することができる。なお、この具体例では、具体例2を用いて説明したバスマスタセレクト信号18によるセレクト信号19の内容によって、割り込み信号20が入力したときにどのバスマスタに優先権を与えるかを決定できるようにしている点に特徴がある。
【0041】
図15には、具体例3の回路の動作タイムチャートを示す。
(a)〜(h)は回路各部の信号で、(a)は動作クロック12、(b)は割り込み信号20、(c),(d),(e)はプロセッサバス要求信号5,7,9、(f),(g),(h)はプロセッサバス使用許可信号6,8,10を示している。ここで、例えば時刻t1に全てのバスマスタ2,3,4からプロセッサバス要求信号5,7,9が同時に出力されたとする。即ち、時刻t1にこれらの信号が同時に“1”から“0”に切り換わる。この時点では、バスマスタ2に優先権があるため、(f)に示すように1クロック後の時刻t2にプロセッサバス使用許可信号が“1”から“0”に切り換わる。
【0042】
次に(c)に示すように、時刻t3にバスマスタ2がバス権を開放すると、(f)のように時刻t4にプロセッサバス使用許可信号6が“0”から“1”に切り換わる。これと同時に(g)に示すように、プロセッサバス使用許可信号8が“1”から“0”に切り換わってバスマスタ3に対しバス権を与える。その後、時刻t5に割り込み信号が1クロックだけアサートされた。このとき、(c),(d),(e)に示すように、全てのバスマスタ2,3,4が、プロセッサバス要求信号5,7,9を出力しているものとする。ところが、割り込み信号20の入力により予め指定されたバスマスタ2に優先権が移るから、時刻t7に図の(f)に示すようにプロセッサバス使用許可信号6が“1”から“0”に切り換わる。こうして、バスマスタ2に対して強制的にバスの使用許可が与えられる。その後時刻t8にバスマスタ2がバス権を開放すると、再びこれまでの設定順に時刻t9に示すようにバスマスタ4に対しバス権が与えられる。
なお、こうした制御は、図3に示した制御回路の優先順位設定カウンタ35を割り込み信号によってリセットすることにより実現する。
【0043】
図16には、具体例3の調停法説明図を示す。
上記のように、この例では割り込みが発生した場合には常にバスマスタ2に対し優先権が移るように制御される。即ち、図に示すように、いずれのバスマスタ2,3,4が使用権を持っていた状態で割り込みが発生しても常にバスマスタ2に対し使用権が移る。
【0044】
図17には、具体例3の優先順位変化説明図を示す。
図の(a),(b),(c),(d)は、これまで具体例1や具体例2で説明したのと同様の形式のものである。この例では、割り込みが発生すると、常にバスマスタ2に対し優先権が移ることを示している。これは、低消費電力モードの有無に関わりなく一定となっている。ここで、例えば図14に示したバスマスタセレクト信号18やセレクト信号19の内容によって、具体例2と同様にしてバスマスタ2以外のバスマスタ3やバスマスタ4に対し割り込み発生後最優先に優先権を与えるといった制御も可能である。
【0045】
〈具体例3の効果〉
以上説明したように、具体例3によれば、アービトレーションモジュールの制御回路14に割り込み信号を入力し、この割り込み信号が入力したときは直ちに一定のバスマスタに対し優先権を与えることができるので、例えばシステムにおいて重要な割り込みが発生し、その割り込みについての処理をいち早く行いたいような場合に、適切に対処し効率のよい処理を行うことができる。
【0046】
〈具体例4〉
図18には、具体例4のバス使用権調停回路ブロック図を示した。
この回路は、図13に示した具体例3の回路に対し割り込み判定信号(INTSET)21を入力している。その他の回路構成については具体例3の回路と全く同一である。
【0047】
図19には、具体例4のアービトレーションモジュール内部回路を示す。
この図において、具体例3と異なる部分はマスク回路22を設けた点である。このマスク回路22に割り込み信号(NMINT)20と割り込み判定信号21とが入力するように構成されている。
この場合、割り込み判定信号21が“0”の場合には制御回路14に対し割り込みを伝えるために割り込みセレクト信号(INTOUT)23を“0”にする。一方、割り込み判定信号21が“1”の場合にはマスク回路22によって割り込み信号20が遮断され、割り込みセレクト信号23はハイレベルのままとなり、制御回路14には割り込みが通知されない。
【0048】
即ち、割り込みが通知された状態では具体例3と同様の動作をし、割り込みが通知されない状態では具体例2と同様の動作をする。
もちろん、この具体例も必ずしも低消費電力モード信号への移行は必要でない。即ち、割り込み信号を適宜遮断することによって必要に応じて割り込み発生による強制的な優先順位の変更を阻止したり、あるいは割り込みによる優先順位の切換えを許可する。
その他の回路構成及び動作は具体例3に示したものと同様である。
【0049】
図20には、具体例4の割り込み処理動作タイムチャートを示す。
図のように、(a)に動作クロック12、(b)に割り込み判定信号21、(c)に割り込み信号20、(d)に割り込みセレクト信号23を表示し、その動作を示している。この図に示すように、時刻t1に割り込み判定信号が“1”から“0”に切り換えられアサートされると、時刻t2に割り込み信号20が入力し“1”から“0”に切り換わった場合に、割り込みセレクト信号23も同時に“1”から“0”に切り換わる。これによって、制御回路に対し割り込みの通知が行われる。
【0050】
図21には、割り込みマスク動作タイムチャートを示す。
ここには、上記の割り込み信号20がマスクされた場合の動作を示している。(a)〜(d)に示す信号は図20に示したものと同様である。図において、(b)に示す割り込み判定信号は“1”のレベルのままである。従って、(c)に示すように、時刻t1に割り込み信号20が“1”から“0”に切り換わったとしても、(d)に示すように、割り込みセレクト信号23に変化がない。従って、割り込み信号がマスクされる。
【0051】
〈具体例4の効果〉
以上説明したように、具体例4によれば、割り込み信号を任意のタイミングでマスクすることができるため、割り込み信号による強制的な優先順位の切換えと割り込み信号を用いない通常の動作とを自由に選択することができる。
【図面の簡単な説明】
【図1】具体例1のバス使用権調停回路である。
【図2】具体例1のアービトレーションモジュール内部回路である。
【図3】制御回路のブロック図である。
【図4】ラウンドロビン式調停法説明図である。
【図5】具体例1の優先順位変化説明図である。
【図6】優先順位非承継時の動作タイムチャートである。
【図7】優先順位承継時の動作タイムチャートである。
【図8】具体例2のバス使用権調停回路である。
【図9】具体例2のアービトレーションモジュール内部回路である。
【図10】具体例2の回路の動作タイムチャートである。
【図11】具体例2の調停法説明図である。
【図12】具体例2による優先順位変化説明図である。
【図13】具体例3のバス使用権調停回路である。
【図14】具体例3のアービトレーションモジュール内部回路である。
【図15】具体例3の回路の動作タイムチャートである。
【図16】具体例3の調停法説明図である。
【図17】具体例3による優先順位変化説明図である。
【図18】具体例4のバス使用権調停回路である。
【図19】具体例4のアービトレーションモジュール内部回路である。
【図20】具体例4の回路の割り込み処理動作タイムチャートである。
【図21】具体例4の回路の割り込みマスク動作タイムチャートである。
【符号の説明】
1 アービトレーションモジュール
2,3,4 バスマスタ
5,7,9 プロセッサバス要求信号
6,8,10 プロセッサバス使用許可信号
11 プロセッサバス
12 動作クロック
13 低消費電力モード信号
15 PSM優先セレクト信号
Claims (2)
- プロセッサバスを介して接続された複数のバスマスタと、
これらのバスマスタのプロセッサバス使用権を調停するアービトレーションモジュールとを備え、
このアービトレーションモジュールは、
ラウンドロビン式に各バスマスタの優先順位付けを行うとともに、
システムが低消費電力モードに移行して、その低消費電力モードを終了したとき、
低消費電力モードへの移行直前の優先順位付けを承継するか、常に一定のバスマスタに最初に優先権を与えるかを判定する判定回路を設けたことを特徴とするバス使用権調停回路。 - プロセッサバスを介して接続された複数のバスマスタと、
これらのバスマスタのプロセッサバス使用権を調停するアービトレーションモジュールとを備え、
このアービトレーションモジュールは、
システムが低消費電力モードに移行すると、上位の制御部から供給されるバスマスタの選択信号に基づいて選択すべきバスマスタを示すセレクト信号を出力する判定回路と、
前記各バスマスタに対しラウンドロビン式に優先順位を付与すると共に前記セレクト信号が入力されると、低消費電力モードの終了で対応するバスマスタに優先権を付与する制御回路とを含むことを特徴とするバス使用権調停回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17300096A JP3557507B2 (ja) | 1996-06-12 | 1996-06-12 | バス使用権調停回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17300096A JP3557507B2 (ja) | 1996-06-12 | 1996-06-12 | バス使用権調停回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09330291A JPH09330291A (ja) | 1997-12-22 |
JP3557507B2 true JP3557507B2 (ja) | 2004-08-25 |
Family
ID=15952336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17300096A Expired - Fee Related JP3557507B2 (ja) | 1996-06-12 | 1996-06-12 | バス使用権調停回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3557507B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ATE542181T1 (de) | 2004-10-28 | 2012-02-15 | Magima Digital Information Co Ltd | Arbitrierer und arbitrierungsverfahren dafür |
-
1996
- 1996-06-12 JP JP17300096A patent/JP3557507B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09330291A (ja) | 1997-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR900005453B1 (ko) | 공유자원의 로크아웃 동작방법 및 장치 | |
US5083261A (en) | Dynamically alterable interrupt priority circuit | |
US7467245B2 (en) | PCI arbiter | |
US7779190B2 (en) | Arbitration device for arbitrating among a plurality of master devices, arbitration method, and video processing device including the arbitration device | |
KR20040012964A (ko) | 캐시 메모리 버스트 싸이클 동안 버스 중재를 제어하는시스템 및 방법 | |
JP2003521775A (ja) | 電子機器におけるスケジューリング処理を効率的に行う方法 | |
CN107533352B (zh) | 控制在标准状态和静态状态之间的转换 | |
US7035277B1 (en) | Priority-based arbitration system for context switching applications | |
JPH0612504B2 (ja) | マッチ認識特性を持つタイマ・チャンネル | |
EP1820109B1 (en) | Time-based weighted round robin arbiter | |
JPH06161952A (ja) | アクセス要求仲裁装置 | |
JP3557507B2 (ja) | バス使用権調停回路 | |
US6934781B2 (en) | System and method for effectively performing isochronous data transfers | |
CN115695330B (zh) | 嵌入式系统中微程的调度系统、方法、终端及存储介质 | |
JP2008515091A (ja) | バス・アクセス取り消しを伴うデータ処理システム | |
US5193194A (en) | Concurrent arbitration system and method for bus control | |
JP2003085127A (ja) | デュアルバスを有する半導体装置、デュアルバスシステム及びメモリ共有デュアルバスシステム並びにそれを用いた電子機器 | |
US20150067213A1 (en) | Bus access arbiter and method of bus arbitration | |
US5799160A (en) | Circuit and method for controlling bus arbitration | |
JPS6019819B2 (ja) | バス使用権制御方式 | |
JP5708273B2 (ja) | 通信装置、情報処理装置、データ送信方法 | |
JP2000207352A (ja) | メモリアクセス競合制御方法とその回路、並びにデ―タ処理装置 | |
JP5494925B2 (ja) | 半導体集積回路、情報処理装置およびプロセッサ性能保証方法 | |
JP2001084219A (ja) | 可変バスアービトレーション方式 | |
JP2000076183A (ja) | バス調停回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20031222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040308 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040330 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040428 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080528 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090528 Year of fee payment: 5 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090528 Year of fee payment: 5 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |