(57)【要約】【課題】  モジュールの共有資源アクセスのために要する時間を短縮し、そのモジュールの性能を劣化させることなく共有資源を有効に活用できること。【解決手段】  モジュール２から共有資源３に送る命令セットを受付した際、インタフェース部１１でその命令セットに対応する識別子及びその計数値を取得して記憶し、命令セット及び識別子を組として調停処理部１２で調停制御する。調停処理部１２は、排他を被った命令セットを廃棄し、関連のインタフェース部１１へその識別子のみを返送する。インタフェース部１１は受付けした識別子から計数値及びその関連命令セットを読込みして調停処理部１２へ再送し、排他によるアクセス権取得まで調停制御を繰り返す。その間、モジュール２は、続けて命令セットを送出できるだけでなく、他の処理も可能である。【選択図】      図１
2007241922.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理装置が少なくとも一つの共有資源を利用する際に利用可能な処理装置を選択する調停方法において、前記処理装置からの共有資源利用要求が競合した際に調停制御するものであって、前記処理装置それぞれに対応して、排他を被った共有資源利用要求に対する前記調停制御を、その利用権を取得するまで繰り返すことを特徴とする共有資源利用調停方法。
【請求項２】
請求項１に記載の共有資源利用調停方法において、前記処理装置それぞれに対応して、前記共有資源利用要求があった際にはそのデータを記憶すると共に他の処理装置からの共有資源利用要求との間の調停制御を要求し、その調停制御の結果、排他を被った際には前記調停制御を繰り返して要求することを特徴とする共有資源利用調停方法。
【請求項３】
請求項１に記載の共有資源利用調停方法において、前記共有資源利用要求には、前記共有資源に送る処理用データとその処理用データに対応して生成された識別子及びその計数値とを含み、その利用要求の際には対応する処理用データ、識別子及び計数値を記憶素子に記憶し、その調停制御の際には対応する処理用データと識別子とを前記記憶素子から読込みして用い、調停制御で排他を被った際にはその識別子により前記処理用データを前記記憶素子から読込みして再度調停制御することを特徴とする共有資源利用調停方法。
【請求項４】
複数の処理装置が少なくとも一つの共有資源を利用する際に利用できる処理装置を選択する調停装置において、前記処理装置からの共有資源利用要求が競合した際に調停制御する調停処理部と、前記処理装置それぞれに対応して設けられ、前記調停処理部への共有資源利用要求に対して排他を被ったとの通知を受けた際には、その排他を取得するまでその共有資源利用要求を繰り返すインタフェース部とを備えることを特徴とする共有資源利用調停装置。
【請求項５】
請求項４に記載の共有資源利用調停装置において、前記共有資源利用要求には前記共有資源に送る処理用データとその処理用データに対応して生成された識別子及びその計数値とを含み、前記インタフェース部は、前記調停処理部へ共有資源利用要求の際に、対応する処理用データ、識別子及び計数値を記憶する記憶素子と、対応する処理用データ及び識別子をその計数値により前記記憶素子に書込みする手段と、前記記憶素子に記憶された前記計数値に対応する処理用データ及び識別子を受けた際には、それらを組に結合して前記調停処理部へ送出する結合部と、前記計数値により前記記憶素子から対応する処理用データ及び識別子を前記結合部に読込みし、かつ、共有資源利用要求して前記調停処理部で排他を被った際にはその識別子を受けて前記処理用データを前記記憶素子から読込みする手段と、を備えることを特徴とする共有資源利用調停装置。
【請求項６】
請求項４に記載の共有資源利用調停装置において、前記共有資源利用要求には前記共有資源に送る処理用データとその処理用データに対応して生成された識別子及びその計数値とを含み、前記調停処理部は、前記インタフェース部から発行された共有資源利用要求に伴う調停要求を受付けした際に調停制御し、排他となったデータを選択して出力させると共に、その調停制御結果を前記インタフェース部へ通知する選択制御部と、前記インタフェース部それぞれに対応して設けられ、対応する処理用データ及び識別子を前記共有資源利用要求として前記インタフェース部から受付けした際にはこれを組のまま記憶すると共にその共有資源利用要求の受付けを調停要求として前記選択制御部に送り、排他を被った場合にはその処理用データを廃棄して識別子のみを前記インタフェース部へ返送する受付記憶部と、を備えることを特徴とする共有資源利用調停装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数処理装置が少数の共有資源を利用する場合、複数処理装置の性能を劣化させることなく共有資源を有効に活用できる共有資源利用のための調停方法及びその調停装置に関するものである。このように、本発明は、複数の処理装置に共有資源の利用要求が発生した際の調停制御に関するのであり、その調停制御により共有資源の利用が可能になった後のシステム形成については本発明の範囲外であり、周知の種々な構成が活用されてよい。
【背景技術】
【０００２】
従来の共有資源利用のための調停方法及びその調停装置は、共有資源を利用する処理装置が調停処理部に接続され、複数処理装置で競合した際にその調停処理部により調停制御を受けて一つが選択される。
【０００３】
例えば図１２に示される場合、割込み制御の調停処理部１１０が二つのモジュール１２０−Ａ，１２０−Ｂから一つを選択して一つの共有資源１３０を利用させている。すなわち、モジュール１２０−Ａが共有資源１３０を利用しようとして調停処理部１１０に割込みをかける場合、調停処理部１１０は、残りのモジュール１２０−Ｂにモジュール１２０−Ａからの割込みを通知する。調停処理部１１０は、モジュール１２０−Ｂからその応答を得ることにより、モジュール１２０−Ａの利用を許可する。従って、モジュール１２０−Ａは、モジュール１２０−Ｂの応答を受け取るまで資源の利用ができない。従って、発行するべき次の命令がそれまで待たされる。
【０００４】
このような構成では、共有資源の利用に際し、利用する側の複数処理装置となるモジュールが相互にその状態を認識するため、各処理装置の処理能力の占有、又は、システム全体の性能を劣化させている。
【０００５】
このような問題を解決するため、利用する側の複数処理装置間での通信をなくし、共有資源を占有して利用する技術が、例えば、特開２００３-８５０２６号公報（特許文献１）に記載されている。
【０００６】
要約すれば、図１３に示されるように、調停装置２１０が複数処理装置であるサーバ２２０−Ａ，Ｂ，〜のうちの一つのみにフラグ「オン」を立てて共有資源２３０へのアクセス権を与え、残る装置にはフラグ「オフ」を立てる。図示される調停装置２１０は、サーバ２２０−Ａ，Ｂ，〜それぞれに対応する管理領域２１１−Ａ，Ｂ，〜と、管理領域２１１−Ａ，Ｂ，〜それぞれのフラグを制御する調停処理部２１２とを有する。調停処理部２１２は、サーバ２２０−Ａから共有資源２３０の利用要求を受付けし許可した際に、サーバ２２０−Ａに対応する管理領域２１１−Ａにフラグ「オン」を立て、残りの管理領域２１１−Ｂ，〜に対してはフラグ「オフ」を立てる。そのため、例えばサーバ２２０−Ｂが共有資源２３０を利用するために調停装置２１０に打診した際、管理領域２１１−Ｂのフラグ「オフ」を知ってその利用を待ち合わせる。
【０００７】
なお、この特許文献１では、サーバ２２０−Ａは、共有資源２３０へアクセスしようとする際に、自己対応の管理領域２１１−Ａのフラグ「オン」を確認すると共に、他の管理領域２１１−Ｂ，〜のフラグ「オフ」を確認したのちに共有資源２３０へのアクセスを実行している。従って、調停装置２１０の調停処理が終わるまで、資源の利用ができない。
【０００８】
このように、複数処理装置それぞれで相互間の通信がなくても、利用できる権利であるアクセス権を得る際に調停装置側での調停処理を終えるまで資源の利用ができない。他方、フラグ「オフ」でアクセス権取得待ちの場合でも、アクセス中の処理装置が資源の利用を終えるまで資源の利用ができず、そのまま、他の処理も待ちの状態になってしまう。
【０００９】
更に、上述の構成では、各処理装置による共有資源への利用要求が競合する際、お互いの状態を誤って認識してしまう場合があり、資源が共有できずシステム的に不具合が発生し、不安定要因になってしまうという問題がある。
【００１０】
【特許文献１】特開２００３-８５０２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
解決しようとする課題は、上述した従来の構成では、複数のうちの一つの処理装置が共有資源の利用を要求する際に、他の処理装置のアクセス状態を確認するための時間を必要とする。一方、アクセス中の処理装置がある場合、その処理装置の開放を確認した後でなければ、アクセスができないことである。そのような構成では、今後の通信量増大への対応、及びシステムのリアルタイム性に見合う要求処理性能を満たすことができず、またシステムとして安定した品質を保つことができないという技術的課題がある。
【００１２】
したがって、本発明の目的は、処理装置の共有資源アクセスのために要する時間を短縮し、複数処理装置の性能を劣化させることなく共有資源を有効に活用できることである。その処理装置は例えばモジュールであり、プロセッサである。その処理装置に対する共有資源としては、例えばプロセッサに対するメモリ、周辺装置に対するプロセッサ、などが対象となる。
【課題を解決するための手段】
【００１３】
本発明による調停処理は、一つの処理装置から利用要求を受付けした際に他の処理装置との競合があった場合には、排他を取得した処理装置に共有資源への利用権すなわちアクセス権を付与している。その際、本発明では、利用要求元の処理装置へはその調停結果を通知することなく、排他を被っても、アクセス権が付与するまでその利用要求による調停制御に要求を繰り返すことを基本とする。ここで、調停処理及び共有資源それぞれにおいてソフトウェア構成によるかハードウェア構成によるかは特に規定しない。
【００１４】
上記目的のため、本発明による共有資源利用調停方法は、処理装置からの共有資源利用要求が競合した際に調停制御する方法であって、前記処理装置それぞれに対応して、排他を被った共有資源利用要求に対する前記調停制御を、排他によりそのアクセス権を取得するまで繰り返すことが主要な特徴である。
【００１５】
従って、各処理装置は、共有資源の利用要求をした際には、その調停制御で排他を被ったことが知らされないので共有資源の処理があればその結果待ちとなる。しかし、各処理装置は、それまで、他の処理を実行することができる。
【００１６】
また、複数の処理装置が少なくとも一つの共有資源を利用する際に利用可能な処理装置を選択する場合、例えば、全ての前記処理装置に優先順位を予め付与することにより、前記処理装置からの共有資源利用要求が競合した際にはその優先順位に従って調停制御するとしてもよい。
【００１７】
また、前記処理装置それぞれに対応して、前記共有資源利用要求があった際にはその利用要求データを記憶すると共に他の処理装置からの共有資源利用要求との間の調停制御を要求する。その調停制御の結果、排他を被った際には前記調停制御を繰り返して要求することができる。ここでいう利用要求データには処理用データを含み、処理用データは、処理装置が共有資源に送って処理させるデータであり、例えば命令などである。
【００１８】
また、具体的な共有資源利用要求には、前記共有資源に送る処理用データとその処理用データに対応して生成された識別子及びその計数値とを含む。その利用要求の際には対応する処理用データ、識別子及び計数値を記憶素子に記憶する。その調停制御の際には対応する処理用データと識別子とを前記記憶素子から読込みして用いる。そして、調停制御で排他を被った際にはその識別子により前記処理用データを前記記憶素子から読込みして再度調停制御している。
【００１９】
このような構成のため、各処理装置は、共有資源のみならず調停結果を含めて他の処理装置の状態を知る必要がなく、利用先の共有資源に向けて、連続して処理用データを送ることができる。そして、共有資源からのデータ処理結果のみを受け取ることになる。この結果として、複数処理装置それぞれは、他の処理装置の状態に左右されることなく稼動を継続できるので、各自の性能を十分に発揮することができる。
【００２０】
このため、具体的には、本発明によるシステムは、一方に共有資源を利用する複数の処理装置、他方に少なくとも一つの共有資源それぞれを接続する調停装置を備える。その調停装置は、基本構成として、調停処理部とインタフェース部とを備える。調停処理部は、例えば全ての前記処理装置に優先順位を予め付与し、前記処理装置からの共有資源利用要求が競合した際にはその優先順位に従って調停制御する。インタフェース部は、前記処理装置それぞれに対応して設けられ、前記調停処理部への共有資源利用要求に対して排他を被ったとの通知を受けた際には、その排他を取得するまでその共有資源利用要求を繰り返す。
【００２１】
また、前記共有資源利用要求には前記共有資源に送る処理用データとその処理用データに対応して生成された識別子及びその計数値とを含む。前記インタフェース部は、記憶素子、書込み手段、結合部、及び読込み手段を有する。記憶素子は、前記調停処理部へ共有資源利用要求の際に、対応する処理用データ、識別子及び計数値を記憶する。書込み手段は、対応する処理用データ及び識別子をその計数値により前記記憶素子に書込みする。結合部は、前記記憶素子に記憶された前記計数値に対応する処理用データ及び識別子を受けた際には、それらを組に結合して前記調停処理部へ送出する。読込み手段は、前記計数値により前記記憶素子から対応する処理用データ及び識別子を前記結合部に読込みし、かつ共有資源利用要求して前記調停処理部で排他を被った際にはその識別子を受けて前記処理用データを前記記憶素子から読込みする。
【００２２】
記調停処理部は、選択制御部及び受付記憶部を含む。選択制御部は、前記インタフェース部から発行された共有資源利用要求に伴う調停要求を受付けした際には、例えば、前記優先順位に従って調停制御し、排他となったデータを選択して出力させると共に、その調停制御結果を前記インタフェース部へ通知する。受付記憶部は、前記インタフェース部それぞれに対応して設けられ、対応する処理用データ及び識別子を前記共有資源利用要求として前記インタフェース部から受付けした際にはこれを組のまま記憶すると共にその共有資源利用要求の受付けを調停要求として前記選択制御部に送り、排他を被った場合にはその処理用データを廃棄して識別子のみを前記インタフェース部へ返送する。
【発明の効果】
【００２３】
本発明の共有資源利用のための調停方法及びその調停装置では、調停装置が、一つの処理装置から共有資源の利用要求を処理用データとともに受付けした際に他の処理装置との競合のため共有資源のアクセス権が与えられなかった場合、その再利用要求等の処理を調停装置内部で実施し、その該当する処理装置に通知することがない。その調停装置は、アクセス権が取得できた時点で共有資源へ上記処理用データを転送している。そのため、処理装置では、他の処理装置との競合状態又は再利用要求を意識することなく、連続して利用要求が発行できるだけでなく、他の処理をも実行することができる。すなわち、本発明により、処理装置の処理占有率を高めると共に性能を劣化させることなく共有資源を有効に活用できるという効果を発揮できる。
【発明を実施するための最良の形態】
【００２４】
共有資源アクセスのために要する時間を短縮し、複数処理装置の性能を劣化させることなく共有資源を有効に活用できるという目的を、上記複数の処理装置が、共有資源及び他の処理装置の状態を確認することなく上記共有資源へ処理用データを順次送出できるように、処理装置から共有資源の利用要求があった際にアクセス権の取得ができなかった場合には、その処理装置に通知することなく、アクセス権取得までその調停制御を繰り返すことにより実現した。
【００２５】
以下に、実施例について、図面を参照して説明する。ここでは、処理装置としてモジュール又はペリフェラルが、また、ペリフェラルに対する共有資源にプロセッサが、それぞれ記載されている。図面では紙面の都合もあり、本発明に関係ある構成要素は示されるが、装置に必須の構成要素には省略されているものがある。また、ここで説明するものは実施の態様であり、その機能を満たすものであれば、本発明は、下記に説明された構成または動作に限定されるものではない。
【実施例１】
【００２６】
本発明の実施例１について図１及び図２を併せ参照して説明する。
【００２７】
図１は、本発明による調停システムの実施の一形態を機能ブロックで示す図である。
【００２８】
図において、調停装置１は、一方に複数のモジュール２-1〜２-Nを、他方に一つの共有資源３をそれぞれ接続して、共有資源３の利用を要求する一つをモジュール２-1〜２-Nの中から選択する。アクセス権が取得できたモジュール２と共有資源３との間でデータの授受が必要な場合、図示されていないシステムバスを使用するか否かは、本発明では限定しない。
【００２９】
調停装置１は、インタフェース部１１-1〜１１-N、調停処理部１２、セグメント部１３、及びバッファ部１４を有する。モジュール２は上記処理装置であり、共有資源３の利用要求である上記処理用データは命令セットとして説明する。命令セットとは、例えば共有資源により実行される命令であり、又は共有資源により処理される単なるデータのこともある。
【００３０】
インタフェース部１１-1〜１１-Nは、同数のモジュール２-1〜２-Nそれぞれに対応して備えられる。各インタフェース部１１は、共有資源３の利用要求として、対応するモジュール２から命令セット、識別子、及びその計数値それぞれを受付けして記憶する。同時に、インタフェース部１１は、記憶された命令セット及び識別子を組に形成して調停処理部１２に送り出す。この結果、インタフェース部１１が調停処理部１２から識別子を受付けした場合、その命令セットは他のインタフェース部１１との競合でアクセス権の取得ができなかったので、受付けした識別子に基づき記憶された命令セット及びその識別子を組に形成して調停処理部１２に再度送出する。
【００３１】
インタフェース部１１では、記憶素子の容量一杯まで記憶を続け、満杯以降は最古のデータから上書きにより記憶するものとする。これ以外の処理としては、例えば、所定タイマ時限を越えたデータから消去するものなどがある。このように、本実施例では、要求先の共有資源のアクセス権が取得されなくても、要求元のモジュール２への状況報告はしないことを特徴としている。
【００３２】
調停処理部１２は、インタフェース部１１-1〜１１-Nそれぞれから組に形成された命令セット及び識別子を受付けした際に競合がない場合、その組のデータをセグメント部１３に送り出す。セグメント部１３は、命令セット及び識別子から識別子を削除し、命令セットをバッファ部１４に一時記憶し、共有資源３との間の通信により命令セットが引き渡される。この間に識別子による同類の命令セットが受付けされた場合、この命令セットは優先して連続で送出され、一つにまとめられる。
【００３３】
調停処理部１２での優先順位は、調停処理部１２に付与された番号順に予め固定的に設定されているものとする。この優先順位の設定は本発明技術の範囲外であり、周知のいかなる方法で設定してもよい。インタフェース部１１-1〜１１-N相互間に競合があり一つのインタフェース部１１にアクセス権が取得できた場合、調停処理部１２はそのインタフェース部１１の命令セット及び識別子をセグメント部１３に渡す上記手順を実行する。アクセス権が取得できなかった場合、調停処理部１２は、そのインタフェース部１１の命令セット及び識別子から命令セットを削除し識別子のみをそのインタフェース部１１へ返送する。
【００３４】
調停処理部１２は、ハードウェア主体の構成及びソフトウェアによる制御のいずれでもよい。また、上述したように、調停処理部１２での調停による命令セットの選択制御は、排他制御を予め設定された優先順位に基づくとしたが、周知のいかなる調停方法を活用してもよく、それが本発明の特徴を損なうものではない。
【００３５】
モジュール２は、共有資源３を利用しようとした際、その命令セットに固有に識別子を生成付与すると共にそれらの計数値を、命令セット及びその識別子と対応するインタフェース部１１へ送る。その送られた命令セット等に対するアクセス成功の是非は返送されない。したがって、その結果が必要な場合、結果は、別の構成を経て、別途共有資源３から受け取ることになる。このように、モジュール２は、結果を待ち合わせることなしに、他の処理を実行することができる。共有資源３からの呼出には、例えば割込み処理が活用される。
【００３６】
図２は図１における調停装置１の主要動作手順の実施の一形態をフローチャートで示す図である。
【００３７】
まず、調停装置１は、インタフェース部１１-1でモジュール２-1から命令セット、識別子、及び計数値を受付け（手順Ｓ１）するものとする。受付けデータの記憶素子に余裕あり（手順Ｓ２のＮＯ）の場合、インタフェース部１１-1は、計数値をポインタとして、記憶素子に命令セット及び識別子を書込み（手順Ｓ３）する。次いで、インタフェース部１１-1は、計数値をポインタとして記憶素子から命令セット及び識別子を読込みし、調停処理部１２に引き渡して調停（手順Ｓ４）を受ける。
【００３８】
調停でアクセス権不取得（手順Ｓ５のＮＯ）の場合、調停処理部１２は、読込みした命令セットを廃棄し識別子をインタフェース部１１-1へ返送（手順Ｓ６）する。インタフェース部１１-1は、記憶素子領域でその識別子から計数値を読出し（手順Ｓ７）し、記憶された命令セット及び識別子を読込みし、調停処理部１２に引き渡して調停を受ける上記手順Ｓ４に戻り、手順は繰り返される。
【００３９】
上記手順Ｓ２が「ＹＥＳ」で記憶素子が満杯の場合、インタフェース部１１-1は、記憶領域の最古のデータ領域に新しい計数値でデータを上書きするものとする。したがって、受付けされた命令セット及び識別子それぞれが記憶素子に上書き（手順Ｓ８）され、手順は、計数値をポインタとして上書きされた記憶素子から命令セット及び識別子を読込みし、調停処理部１２に引き渡される上記手順Ｓ４に進む。
【００４０】
また、上記手順Ｓ５が「ＹＥＳ」で、調停結果、アクセス権が取得できた場合、調停処理部１２は受付けした命令セット及び識別子をセグメント部１３に渡し、セグメント部１３がその識別子を削除してその識別子に対応する命令セットをバッファ部１４に一時保留する一方、共有資源３を起動してバッファ部１４の命令セットを共有資源３に送出（手順Ｓ９）する。
【００４１】
このような構成のため、モジュールは共有資源及び他のモジュールの稼動状況を調べることなしで、調停装置に共有資源の利用要求を連続して発行できる。したがって、モジュールで代表した処理装置は、余計な検索処理を不要とするので、本来の性能を十分に発揮することができる。一方、調停装置は同類の命令セットをバッファ部１４に追加することにより一括又は連続した処理が可能であり、効率よく共有資源を活用できる。
【実施例２】
【００４２】
本発明の実施例２について図１及び図３から図６までを併せ参照して説明する。
【００４３】
図３は、図１におけるインタフェース部１１の実施の一形態を機能ブロックで示す図である。
【００４４】
各インタフェース部１１は、書込みカウンタ２１、読込みカウンタ２２、命令セット記憶素子２３、識別子記憶素子２４、計数値記憶素子２５、及び結合部２６を有する。
【００４５】
書込みカウンタ２１は、モジュール２から計数値を受付けし、命令セット記憶素子２３及び識別子記憶素子２４への書込みポインタを生成する。計数値は、受付けする命令セット及び識別子を順番に計数した値である。読込みカウンタ２２は、書込みカウンタ２１から指示を受けて計数を開始し、計数値記憶素子２５から受ける計数値により命令セット及び識別子の読込みポインタを生成する。この読込みポインタによって命令セット及び識別子が、命令セット記憶素子２３及び識別子記憶素子２４それぞれから順次読み込まれ、結合部２６で図４に示されるような組に形成される。
【００４６】
命令セット記憶素子２３は、モジュール２から受付けする命令セットを書込みカウンタ２１の書込みポインタにより記憶する。識別子記憶素子２４は、モジュール２から受付けする識別子を書込みカウンタ２１の書込みポインタにより記憶する。計数値記憶素子２５は、モジュール２から受付けする計数値を識別子と共に順次記憶する。計数値記憶素子２５は、更に、命令セット及び識別子を出力するため計数値を読込みカウンタ２２に通知する一方、調停処理部１２から識別子を受付けする。そこで、計数値記憶素子２５は、調停処理部１２から受付けした識別子に対応する計数値を読込みカウンタ２２へ送って読込みポインタを生成させる。
【００４７】
これら記憶素子２３，２４，２５は、モジュール２から受付けするデータを計数値又は識別子に対応させて記憶しており、最大記憶容量を超えた場合、ポインタ「０」から上書きするものとする。後述する識別子の返送があった場合、それ以前のデータは結合部２６でアクセス権取得により正常処理されているはずなので、その時点でそれより若番のカウンタ値対応のデータを消去することとしてもよい。
【００４８】
結合部２６は、命令セット記憶素子２３及び識別子記憶素子２４それぞれから読込みポインタによって読み込まれた命令セット及び識別子を組に形成して調停処理部１２へ送出する。
【００４９】
図４は、図３に示される結合部２６における組出力の実施の一形態を示す図である。図示される例では、読込みカウンタ２２の計数値ｎ１〜ｎ４に対応して識別子１及び命令セットＡ、識別子２及び命令セットＢから識別子４及び命令セットＤまでのそれぞれが結合部２６から順次送出されている。
【００５０】
図５は、計数値記憶素子２５が調停処理部１２から受ける識別子の実施の一形態を示す図である。図示される例では、図４に示された４組のうち命令セットＡ，Ｂがアクセス権取得により共有資源３へ送出されたが、命令セットＣ，Ｄはアクセス権取得ができなかった場合である。この場合、命令セットＣ，Ｄは破棄され、命令セットＣ，Ｄに対応する識別子３，４それぞれが計数値記憶素子２５に返送される。計数値記憶素子２５は、受付けした識別子３，４に対応する計数値を読込みカウンタ２２へ送り、読込みポインタを生成させる。
【００５１】
次に、図６に図１から図５までを併せ参照して、インタフェース部１１の主要動作手順について説明する。
【００５２】
まず、インタフェース部１１は、モジュール２から命令セット、識別子、及び計数値を受付け（手順Ｓ１１）する。受付けした命令セット、識別子、及び計数値それぞれの命令セット記憶素子２３、識別子記憶素子２４、及び計数記憶素子２５の記憶領域に余裕あり（手順Ｓ１２のＮＯ）の場合、書込みカウンタ２１は、計数値をポインタとして命令セット及び識別子を命令セット記憶素子２３及び識別子記憶素子２４それぞれに書込み（手順Ｓ１３）する。一方、計数値は、識別子と共に計数値記憶素子２４に記憶される。書込みカウンタ２１は、更に、読込みカウンタ２２を駆動して計数を開始（手順Ｓ１４）させる。
【００５３】
読込みカウンタ２２は、計数値記憶素子２４から計数値を順次受付け読込みポインタを生成（手順Ｓ１５）する。その読込みポインタにより、対応する命令セット及び識別子が命令セット記憶素子２３及び識別子記憶素子２４それぞれから結合部２６へ読込み（手順Ｓ１６）される。結合部２６は、読込みされた命令セット及び識別子を組に形成して調停処理部１２へ送付（手順Ｓ１７）して競合に対する調停を受ける。
【００５４】
インタフェース部１１は、調停により排他を被った場合、排他を被った組のうち識別子のみの返送を計数値記憶素子２５で受付け（手順Ｓ１８のＹＥＳ）する。計数値記憶素子２５は、返送受付けした識別子に対応する計数値を読込みカウンタ２２に送出（手順Ｓ１９）する。そして、次の手順は、その計数値に対応する読込みポインタを再度生成する上記手順Ｓ１５に戻り、繰り返される。
【００５５】
上記手順Ｓ１２が「ＹＥＳ」で三つのうち一つでも記憶素子の記憶領域が満杯の場合、受付けした命令セット、識別子、及び計数値それぞれの情報は、最古情報の記憶領域に上書き（手順Ｓ２１）により書込みされる。従って、次の手順は上記手順Ｓ１４に進む。
【００５６】
上記手順Ｓ１８が「ＮＯ」で識別子の返送がない場合、次の命令セットの受付けを待つこと（手順Ｓ２２のＹＥＳ）により、手順は、上記手順Ｓ１２に戻り、繰り返される。
【００５７】
このような構成により、インタフェース部は、正常な処理中では、受け取った命令セットに対する送付先からの応答事項がないので、モジュールからは他の装置の稼動状況に無関係に、命令セットなどにより共有資源の利用を連続して要求することができる。一方、インタフェース部は、記憶素子の容量分の情報保持が可能なので、調停で排他を被った際でも直ちに再試行が可能であり、処理時間を有効に活用できる。
【実施例３】
【００５８】
本発明の実施例３について図７及び図８に図１から図６までを併せ参照して説明する。
【００５９】
図７は、図１における調停処理部１２の実施の一形態を機能ブロックで示す図である。
【００６０】
図示される調停処理部１２は、複数のインタフェース部１１-1〜１１-Nに対応する命令セット受付記憶部３１-1〜３１-Nそれぞれと、命令セット選択制御部３２と、選択部３３とにより構成される。
【００６１】
各命令セット受付記憶部３１は、一方で対応するインタフェース部１１、他方で命令セット選択制御部３２及び選択部３３、それぞれに接続され、インタフェース部１１から図４に示される識別子と組をなした命令セットを順次受付けする。命令セット受付記憶部３１は命令セット選択制御部３２へ命令セットの受付けを順次通知して排他制御を受ける。命令セット受付記憶部３１は、命令セット選択制御部３２から排他通知を受けた際には、対応する命令セットの組を、選択部３３を介してセグメント部１３へ送出できる。命令セット受付記憶部３１は、命令セット選択制御部３２から排他を被ったため被排他通知を受けた際には、対応する命令セットを廃棄し、図５に示されるように識別子のみをインタフェース部１１へ返送する。
【００６２】
命令セット選択制御部３２は、一方で命令セット受付記憶部３１-1〜３１-Nを、他方で選択部３３を、それぞれ接続する。命令セット選択制御部３２は、命令セット受付記憶部３１-1〜３１-Nそれぞれに対して予め優先順位を設定している。命令セット選択制御部３２は、命令セット受付記憶部３１-1〜３１-Nから排他制御の要請を受けた際に競合がなければ、選択部３３を制御して対応する命令セットの組をセグメント部１３へ接続して、対応する命令セット受付記憶部３１へ排他通知を送る。競合があった場合には、所定の優先順位の上位の命令セット受付記憶部３１に対して排他制御され、その命令セット受付記憶部３１から受けた命令セットの組が選択部３３を介してセグメント部１３へ送られる。他方の排他を被った命令セット受付記憶部３１には被排他通知が送付される。
【００６３】
ここでの命令セット選択制御では調停による排他制御を予め設定された優先順位に基づくとしたが、他のいかなる調停方法を活用しても本発明の特徴を損なうものではない。
【００６４】
選択部３３は、高速スイッチであり、一方に命令セット受付記憶部３１-1〜３１-Nを、他方にセグメント部１３を接続する。選択部３３は、命令セット選択制御部３２の制御を受けて命令セット受付記憶部３１-1〜３１-Nのうちの一つをセグメント部１３に接続する通信路を形成する。従って、選択部３３は、高速でバスを時分割制御する構成、又はハードウェアスイッチを用いる構成などがあり、その選択に限定はない。
【００６５】
次に、図８に図１から図７までを併せ参照して、調停処理部１２の主要動作手順について説明する。
【００６６】
まず、命令セット受付記憶部３１は、命令セット及び識別子の組をインタフェース部１１から受付け（手順Ｓ３１）した際には、同類命令セットの処理中を判断（手順Ｓ３２）する。手順Ｓ３２が「ＮＯ」で同類命令セットの処理がない場合、命令セット受付記憶部３１は、受付け情報を記憶し、受付けしたことを命令セット選択制御部３２に通知（手順Ｓ３３）する。
【００６７】
命令セット選択制御部３２は、その通知を受付けした際、他との競合あり（手順Ｓ３４のＹＥＳ）でかつ優先下位（手順Ｓ３５のＮＯ）の場合、その命令セット受付記憶部３１へ被排他通知（手順Ｓ３６）を行う。命令セット受付記憶部３１では、対象の組の命令セットを消去（手順Ｓ３７）し、対応するインタフェース部１１へ識別子のみを返送（手順Ｓ３８）する。
【００６８】
上記手順Ｓ３２が「ＹＥＳ」で、同類命令セットが処理中の場合、命令セット受付記憶部３１は、処理中の命令セット等に受付け情報を連続するように記憶（手順Ｓ４１）し、その命令セットの競合有無を判断する上記手順Ｓ３４へ手順を進める。
【００６９】
次に、受付けの通知を受けた際、上記手順Ｓ３４が「ＮＯ」で、他との競合なしの場合、又は、上記手順Ｓ３５が「ＹＥＳ」で、最優先指定に該当する場合について説明する。その場合、命令セット選択制御部３２は、該当する命令セット受付記憶部３１を排他選択するので、選択部３３を制御して、排他選択した命令セット受付記憶部３１とセグメント部１３との間の通信路を形成（手順Ｓ４２）する。次いで、命令セット選択制御部３２は、その命令セット受付記憶部３１に排他通知（手順Ｓ４３）を行う。排他通知を受けた命令セット受付記憶部３１は、選択部３３を介して対応する組の命令セット及び識別子をセグメント部１３へ送出（手順Ｓ４４）する。
【００７０】
このような調停処理部の構成は一例であり、そのブロック構成、命令セット選択方法には様々な周知の技術を活用することができる。すなわち、調停処理部を上記実施例と組み合わせることにより、本発明の特徴を発揮することができる。
【実施例４】
【００７１】
本発明の実施例４について図９及び図１０に図１及び図３それぞれを併せ参照して説明する。
【００７２】
図９は、図１における調停装置１とは別の一形態を機能ブロックで示す図である。
【００７３】
図示される調停装置１Ａは、複数の処理装置としてペリフェラル２Ａ-1〜２Ａ-Nを接続し、それぞれに対応するインタフェース部１１Ａ-1〜１１Ａ-Nと、調停処理部１２Ａ、セグメント部１３、及びバッファ部１４を有する。
【００７４】
図１０は、図３におけるインタフェース部１１とは別の一形態を機能ブロックで示す図である。
【００７５】
図に示されるインタフェース部１１Ａは、計数値識別子生成部２０、書込みカウンタ２１、読込みカウンタ２２、割込み要求記憶素子２３Ａ、識別子記憶素子２４、計数値記憶素子２５、及び結合部２６Ａを有する。図３と相違する構成要素は、計数値識別子生成部２０、割込み要求記憶素子２３Ａ、及び結合部２６Ａである。
【００７６】
本実施例で、図１及び図３と同一の構成要素は、同一番号符号を付与して、その説明は省略する。
【００７７】
調停装置１Ａは、各ペリフェラル２Ａから割込み命令を受ける。調停装置１Ａのインタフェース部１１Ａは、その割込み命令から計数値及び識別子を生成して、上記実施例と同一の処理動作を実行する。計数値識別子生成部２０が、ペリフェラル２Ａから割込み命令を受けて計数値及び識別子を生成する。計数値識別子生成部２０の出力以降の構成及びその処理は、上記実施例と同様であり、命令セットを割込み要求に読み替えればよい。割込み要求記憶素子２３Ａ及び結合部２６Ａは、上記実施例と比較して命令セットと割込み要求とのデータ量の差のみであり、上記実施例と同一構成でも実現可能である。
【００７８】
その動作手順も、計数値識別子生成部２０の動作が追加されたのみで、それ以降の手順は上記実施例と同様である。
【００７９】
したがって、各ペリフェラルが他の処理装置の稼動状況に影響されず、割込み要求も調停装置で再生できるので、本発明を、リアルタイムに適した割込み制御器単体にも応用することができる。
【実施例５】
【００８０】
本発明の実施例５について図１１に図１から図６までを併せ参照して説明する。
【００８１】
図１１は、Ｎ個のモジュール２-1〜２-NがＭ個の共有資源３-1〜３-Mを利用する場合の調停装置１Ｐの実施の一形態を機能ブロックで示す図である。その他の条件は上述した実施例と同様である。従って、上記実施例と相違する点のみ、以下に説明する。
【００８２】
図示される調停装置１Ｐは、一方にＮ個のモジュール２-1〜２-Nを、他方にＭ個の共有資源３-1〜３-Mを、それぞれ接続する。調停装置１Ｐは、利用要求するモジュール２-1〜２-Nの一つを共有資源３-1〜３-Mのうちの空きの一つを選択して利用させる。調停装置１Ｐは、利用要求するモジュール２-1〜２-Nに競合があった場合、本実施例ではその一つを所定の優先順位に基づいて選択する。
【００８３】
調停装置１Ｐは、インタフェース部１１-1〜１１-N、調停処理部１２Ｐ、セグメント部１３-1〜１３-M、及びバッファ部１４-1〜１４-Mを有する。インタフェース部１１は上記実施例と同一の構成及び機能を有する。調停処理部１２Ｐについては後述する。セグメント部１３及びバッファ部１４も上記実施例と同一の構成及び機能を有する。
【００８４】
調停処理部１２Ｐは、インタフェース部１１から命令セットを受付けした際、共有資源３-1〜３-Mに空きがあれば、他のインタフェース部１１を排他制御して一つの共有資源３を選択し利用させる。複数のインタフェース部１１から命令セットを受付けした際に共有資源３-1〜３-Mに一つしか空きがない場合、調停処理部１２Ｐは、上述の優先選択処理を実行する調停制御によりインタフェース部１１の一つを排他選択する。
【００８５】
このような構成により、複数の共有資源であっても、共有資源の利用を要求する処理装置は、上記実施例と同様の効果を得ることができる。
【産業上の利用可能性】
【００８６】
以上説明したように本発明によれば、複数の処理装置に少なくとも一つの共有資源を利用させる選択接続制御のための調停装置が、共有資源の割当てに関する競合の際に、排他を被った処理装置に対して何の通知もせず、調停装置内部で再利用の要求処理を行うことによって、処理装置が他の処理装置との競合状態又は再利用要求を意識することなく、連続して利用要求が発行できるだけでなく、他の処理をも実行することができる。従って、共有資源割当てを必要とする情報処理装置、通信処理装置、及びそれらのシステムの用途に広く適用可能である。
【図面の簡単な説明】
【００８７】
【図１】本発明による調停システムの実施の一形態を機能ブロックで示した図である。（実施例１）
【図２】図1における調停システムの主要動作手順の実施の一形態をフローチャートで示した図である。（実施例１）
【図３】図1におけるインタフェース部の実施の一形態を機能ブロックで示した図である。（実施例２）
【図４】図３におけるインタフェース部の組出力の一形態を示した図である。（実施例２）
【図５】図３におけるインタフェース部の調停処理部から入力の一形態を示した図である。（実施例２）
【図６】図３におけるインタフェース部の主要動作手順の実施の一形態をフローチャートで示した図である。（実施例２）
【図７】図1における調停処理部の実施の一形態を機能ブロックで示した図である。（実施例３）
【図８】図７における調停処理部の主要動作手順の実施の一形態をフローチャートで示した図である。（実施例３）
【図９】本発明による調停システムの、図1と異なる実施の一形態を機能ブロックで示した図である。（実施例４）
【図１０】図９におけるインタフェース部の実施の一形態を機能ブロックで示した図である。（実施例４）
【図１１】本発明による調停システムの、図1及び図９と異なる実施の一形態を機能ブロックで示した図である。（実施例５）
【図１２】従来の調停システムの一例を機能ブロックで示した図である。
【図１３】図１２と異なる従来の調停システムの一例を機能ブロックで示した図である。
【符号の説明】
【００８８】
１、１Ａ、１Ｐ    調停装置
２、２-1〜２-N    モジュール
２Ａ、２Ａ-1〜２Ａ-N    ペリフェラル
３、３-1〜３-M    共有資源
３Ａ    プロセッサ
１１、１１-1〜１１-N、１１Ａ、１１Ａ-1〜１１Ａ-N    インタフェース部
１２、１２Ａ、１２Ｐ    調停処理部
１３、１３-1〜１３-M    セグメント部
１４、１４-1〜１４-M    バッファ部
２０    計数値識別子生成部
２１    書込みカウンタ
２２    読込みカウンタ
２３    命令セット記憶素子
２３Ａ    割込み要求記憶素子
２４    識別子記憶素子
２５    計数値記憶素子
２６、２６Ａ    結合部
３１、３１-1〜３１-N    命令セット受付記憶部
３２    命令セット選択制御部
３３    選択部
【図１】
2007241922.tif 000003
【図２】
2007241922.tif 000004
【図３】
2007241922.tif 000005
【図４】
2007241922.tif 000006
【図５】
2007241922.tif 000007
【図６】
2007241922.tif 000008
【図７】
2007241922.tif 000009
【図８】
2007241922.tif 000010
【図９】
2007241922.tif 000011
【図１０】
2007241922.tif 000012
【図１１】
2007241922.tif 000013
【図１２】
2007241922.tif 000014
【図１３】
2007241922.tif 000015