(57)【特許請求の範囲】
【請求項１】
ボード上に、信号伝送路を構成するクロック同期型バスから入力された信号を基にクロック信号に同期して処理を実行する処理手段と、前記バスからのクロック信号が入力されたことを検出するバスクロック検出手段と、前記バスからのクロック信号とは別にクロック信号を生成するクロック生成手段と、リセット信号を生成するリセット生成手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されたときには前記バスからのクロック信号およびリセット信号を前記処理手段に転送し、前記バスクロック検出手段により前記バスからのクロック信号が検出されないときには前記クロック生成手段の生成によるクロック信号および前記リセット生成手段の生成によるリセット信号を前記処理手段に転送する制御手段とを備えたクロック同期型バス用ボード。
【請求項２】
ボード上に、信号伝送路を構成するクロック同期型バスから入力された信号を基にクロック信号に同期して処理を実行する処理手段と、前記バスからのクロック信号が入力されたことを検出するバスクロック検出手段と、前記バスからのクロック信号とは別にクロック信号を生成するクロック生成手段と、リセット信号を生成するリセット生成手段と、自ボードの優先順位を設定する優先順位設定手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されないときには前記優先順位設定手段の設定による自ボードの優先順位に関する信号を前記バスに出力する優先順位出力手段と、前記バス上の優先順位に関する信号と前記優先順位設定手段の設定による自ボードの優先順位とを比較して前記優先順位設定手段の設定による自ボードの優先順位が最高か否かを判定する優先順位判定手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されたときには前記バスからのクロック信号およびリセット信号を前記処理手段に転送し、前記バスクロック検出手段によりクロック信号が検出されないときには前記優先順位判定手段の判定結果が自ボードの優先順位が最高であることを条件に前記クロック生成手段の生成によるクロック信号および前記リセット生成手段の生成によるリセット信号を前記処理手段と前記バスに転送し、かつ前記優先順位判定手段の判定結果が自ボードの優先順位が最高でないことを条件に前記バス上に発生するクロック信号を前記処理手段に転送する制御手段とを備えたクロック同期型バス用ボード。
【請求項３】
ボード上に、信号伝送路を構成するクロック同期型バスから入力された信号を基にクロック信号に同期して処理を実行する処理手段と、前記バスからのクロック信号が入力されたことを検出するバスクロック検出手段と、前記バスからのクロック信号とは別にクロック信号を生成するクロック生成手段と、リセット信号を生成するリセット生成手段と、前記バスの起動時に前記バスクロック検出手段により前記バスからのクロック信号が検出されないときに自ボードの優先順位に関する信号を前記バスに出力するとともに、前記バス上の優先順位に関する信号と前記自ボードの優先順位に関する信号とを比較してマスクとして動作すべきか否かを判定するマスタ動作判定手段と、前記バスの起動時に前記バスクロック検出手段により前記バスからのクロック信号が検出されたときには前記バスからのクロック信号およびリセット信号を前記処理手段に転送し、前記バスクロック検出手段により前記バスからのクロック信号が検出されないときには前記マスタ動作判定手段の判定結果がマスタ動作であることを条件に前記クロック生成手段の生成によるクロック信号および前記リセット生成手段の生成によるリセット信号を前記処理手段と前記バスに転送し、かつ前記マスタ動作判定手段の判定結果がマスタ動作でないことを条件に前記バス上に発生するクロック信号およびリセット信号を前記処理手段に転送する制御手段とを備えたクロック同期型バス用ボード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クロック同期型バス用ボードに係り、特に、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）、ＶＭＥなどで代表される、クロック同期型バスに実装するに好適なクロック同期型バス用ボードに関する。
【０００２】
【従来の技術】
従来、ＩＳＡやＰＣＩ、ＶＭＥなどに代表されるクロック同期型バスには、バスマスタとしてのボードが１つ実装されるとともに、スレーブとしてのボード（スレーブボード）が単一または複数個実装される構成が一般的である。バスマスタはバス上にクロック信号やリセット信号を出力するとともにバス上の他のスレーブボードに対する制御を行うように構成されており、スレーブボードはバス上のクロック信号とリセット信号を基にバスマスタの制御の下で動作可能となっている。
【０００３】
【発明が解決しようとする課題】
上記従来方式では、バス上に１つのバスマスタとしてのボードが実装されていることを前提としており、スレーブボードにＣＰＵなどの制御手段が実装され、且つその制御手段のみでシステムとしての要求に対応することが可能であっても、バスマスタが存在しない場合、バス上に実装されたスレーブボードはバスからクロック信号やリセット信号が供給されず、動作することができない。
【０００４】
また、従来方式では、バスシステムの増強をスレーブボードの追加によって行う場合、スレーブボードの追加に伴う制御内容をバスマスタに追加しなければならないとともに、バスマスタが存在しなくなった場合、バス上の全てのスレーブボードは動作することができなくなる。
【０００５】
本発明の第１の課題は、バスマスタが存在しない場合でも自律動作を行うことができるクロック同期型バス用ボードを提供することにある。
【０００６】
本発明の第２の課題は、バス上にバスマスタが存在しない場合でも、複数のスレーブボードのうちいずれかのスレーブボードがバスマスタとして機能することができるクロック同期型バス用ボードを提供することにある。
【０００７】
【課題を解決するための手段】
前記第１の課題を解決するために、本発明は、信号伝送路を構成するバスから入力された信号を基にクロック信号に同期して処理を実行する処理手段と、前記バスからクロック信号が入力されたことを検出するバスクロック検出手段と、前記バスのクロック信号とは別にクロック信号を生成するクロック生成手段と、リセット信号を生成するリセット生成手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されたときには前記バスからのクロック信号を前記処理手段に転送し、前記バスクロック検出手段によりクロック信号が検出されないときには前記クロック生成手段の生成によるクロック信号を前記処理手段に転送する制御手段とを備え、前記制御手段は、前記クロック信号の転送に関連して前記リセット生成手段の生成によるリセット信号を前記処理手段に転送してなるクロック同期型バス用ボードを構成したものである。
【０００８】
前記した手段によれば、バスからクロック信号が入力されずバスマスタが存在しないことが検出されたときには、クロック生成手段の生成によるクロック信号とリセット生成手段の生成によるリセット信号が処理手段に転送され、転送された信号にしたがって処理が実行されるため、バス上にバスマスタが存在しなくてもスレーブボードとして自律動作することができる。
【０００９】
第２の課題を解決するためには、本発明は、信号伝送路を構成するバスから入力された信号を基にクロック信号に同期して処理を実行する処理手段と、前記バスからクロック信号が入力されたことを検出するバスクロック検出手段と、前記バスのクロック信号とは別にクロック信号を生成するクロック生成手段と、リセット信号を生成するリセット生成手段と、自らの優先順位を設定する優先順位設定手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されないときに前記優先順位設定手段の設定による優先順位に関する信号を前記バスに出力する優先順位出力手段と、前記バス上の優先順位に関する信号と前記優先順位設定手段の設定による優先順位とを比較して前記優先順位設定手段の設定による優先順位が最高か否かを判定する優先順位判定手段と、前記バスの起動時に前記バスクロック検出手段によりクロック信号が検出されたときには前記バスからのクロック信号を前記処理手段に転送し、前記バスクロック検出手段によりクロック信号が検出されないときには前記優先順位判定手段の判定結果が最高であることを条件に前記クロック生成手段の生成によるクロック信号を前記処理手段と前記バスに転送し、かつ前記優先順位判定手段の判定結果が最高でないことを条件としてはその後に前記バス上に発生するクロック信号を前記処理手段に転送する制御手段とを備え、前記制御手段は、前記クロック生成手段の生成によるクロック信号を前記処理手段と前記バスに転送することに関連して前記リセット生成手段の生成によるリセット信号を前記処理手段と前記バスに転送してなるクロック同期型バス用ボードを構成したものである。
【００１０】
前記クロック同期型バス用ボードを構成するに際しては、前記優先順位設定手段と前記優先順位出力手段および前記優先順位判定手段の代わりに、バスの起動時に前記バスクロック検出手段によりクロック信号が検出されないときに自らの優先順位に関する信号を前記バスに出力するとともに、前記バス上の優先順位に関する信号と前記自らの優先順位に関する信号とを比較してマスタとして動作すべきか否かを判定するマスタ動作判定手段を設け、さらに前記制御手段の代わりに、前記バスの起動時に前記バスクロック検出手段によるクロック信号が検出されたときには前記バスからのクロック信号を前記処理手段に転送し、前記バスクロック検出手段によるクロック信号が検出されないときには前記マスタ動作判定手段の判定結果がマスタ動作であることを条件に前記クロック生成手段の生成によるクロック信号を前記処理手段と前記バスに転送し且つ前記マスタ動作判定手段の判定結果がマスタ動作でないことを条件としてはその後に前記バス上に発生するクロック信号を前記処理手段に転送する制御手段を設けることができる。
【００１１】
前記した手段によれば、バス上に複数のボードが実装されてバスが起動されたときに、バスからクロック信号が入力されずバス上にバスマスタが存在しないことが検出されたときには、各スレーブボードからバスに対して自らの優先順位に関する信号が出力され、バス上の優先順位に関する信号と自らの優先順位に関する信号とが比較され、スレーブボードのうち自らの優先順位が最高であると判定され、マスタとして動作すべきであるとの判定結果が得られたときには、マスタとして動作すべきスレーブボードからバスにクロック信号とリセット信号が転送されるとともに、自らの処理手段に対してクロック信号とリセット信号が転送され、自律動作が行われる。一方、マスタとして動作すべきでないとの判定結果を得た他のスレーブボードでは、マスタ動作を行ったスレーブボードからその後に転送されたクロック信号とリセット信号を自らの処理手段に転送することでスレーブボードとして自律動作が実行される。このため、バス上に追加などによって複数のスレーブボードが実装されたときに、バス上にバスマスタが存在しないときでも、いずれか１つのスレーブボードがバスマスタとして動作し、他のスレーブボードはバスマスタとなったスレーブボードからの信号にしたがって動作することが可能になる。
【００１２】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。図１は本発明の第１実施形態を示すクロック同期型バス用ボードのブロック構成図である。図１において、ボード１０１は、例えば、ＩＳＡ、ＰＣＩ、ＶＭＥなどに代表されるクロック同期型バス１０９に実装されており、スレーブボードとして、回路部１０２、制御部１０３、リセット（Ｒｅｓｅｔ）生成部１０４、クロック（ＣＬＫ）生成部１０５、クロック（ＣＬＫ）検出部１１０、ボード内回路１１３、バッファ１１４、１１５を備えて構成されている。
【００１３】
回路部１０２には、制御部１０３、リセット生成部１０４、クロック生成部１０５、クロック検出部１１０、バッファ１１４、１１５が形成されており、バッファ１１４、１５を介してバス１０９に接続されている。すなわち、信号伝送路を構成するバス１０９上のクロック信号１０７がバッファ１１５を介して制御部１０３とクロック検出部１１０に入力されるとともに、バス１０９上のリセット信号１０８がバッファ１１４を介して制御部１０３に入力されるようになっている。
【００１４】
クロック検出部１１０は、バス１０９からバッファ１１５を介してクロック信号１０７が入力されたことを検出するバスクロック検出手段として構成されており、バス１０９からクロック信号１０７が入力されたか否かの検出結果を制御部１０３に出力するようになっている。
【００１５】
制御部１０３には、バス１０９上のクロック信号１０７、リセット信号１０８とは別に、クロック生成部（クロック生成手段）１０５の生成によるクロック信号が入力されているとともに、リセット生成部（リセット生成手段）１０４の生成によるリセット信号が入力されている。この制御部１０３は、クロック検出部１１０により、バス１０９からクロック信号１０７が入力されたことが検出されたとき、すなわち、バス１０９上にバスマスタが存在していることが検出されたときには、クロック信号１０７をクロック信号１１１として、リセット信号１０８をリセット信号１１２としてボード内回路１１３に転送し、一方、バス１０９からクロック信号１０７が入力されないとき、すなわちバス１０９上にバスマスタが存在していないことが検出されたときには、クロック生成部１０５の生成によるクロック信号をクロック信号１１１として、リセット生成部１０４の生成によるリセット信号をリセット信号１１２としてそれぞれボード内回路１１３に転送する制御手段として構成されている。
【００１６】
ボード内回路１１３はインタフェイスを介してバス１０９と接続されており、バス１０９からクロック信号１０７、リセット信号１０８とは異なる信号、例えばアドレス信号やデータに関する信号が入力されるようになっており、クロック信号１１１に同期して各種の演算処理を実行する処理手段としてのＣＰＵや、各種のデータを格納するメモリなどを備えて構成されている。
【００１７】
次に、上記構成によるボード１０１の作用を図２のフローチャートにしたがって説明する。まず、バス１０９に電源が供給されてバス１０９が起動されると（ステップ２０１）、バス１０９上にバスマスタが存在するか、すなわちバスクロックが存在するか否かの判定が制御部１０３によって行われる（ステップ２０２）。この判定は、クロック検出部１１０によってクロック信号１０７が検出されたか否かによって行われる。このときバス１０９上にバスマスタが存在せずバスクロックが発生していないと判定されたときには、クロック生成部１０５の生成によるクロック信号をクロック信号１１１としてボード内回路１１３に転送し（ステップ２０３）、リセット生成部１０４の生成によるリセット信号をリセット信号１１２としてボード内回路１１３に転送し（ステップ２０４）、ボード１０１は自律動作を実行する（ステップ２０５）。
【００１８】
一方、ステップ２０２において、バス１０９上にバスマスタが存在しバスクロックが発生していると判定されたとき、すなわちクロック検出部１１０によってクロック信号１０７が検出されたときには、制御部１０３は、クロック信号１０７をクロック信号１１１としてボード内回路１１３に転送し、その後、クロック信号１１１の転送に関連して、リセット信号１０８をリセット信号１１２としてボード内回路１１３に転送し、ボード１０１はスレーブ動作を実行する（ステップ２０６）。この場合、ボード内回路１１３は、スレーブ動作として、リセット信号１１２によりリセット動作を行ったあと、クロック信号１１１に同期して演算処理を実行することになる。
【００１９】
なお、制御部１０３からボード内回路１１３にクロック信号１１１とリセット信号１１２を転送するときに、制御部１０３からボード内回路１１３に対して、バス１０９上にバスマスタが存在するか否かの情報を提供し、ボード内回路１１３にてその情報を利用し、バス１０９上にマスタボードが実装されている場合と実装されていない場合で処理を変更することとしても良い。
【００２０】
また、制御部１０３からボード内回路１１３にクロック信号１１１を転送することに関連してリセット信号１１２を転送するに際しては、リセット信号１１２によってボード内回路１１３でリセット動作が完了する前に、クロック信号１１１を転送しておくことが望ましい。
【００２１】
また、本実施形態においては、バス１０９上に単一のボード１０１が実装されている場合について述べたが、バス１０９上に複数のボード１０１が実装されている場合でも、各ボード１０１は、バス１０９上にバスマスタとしてのマスタボードが実装されているときにはスレーブボードとして動作し、バス１０９上にマスタボードが実装されていないときには、バス１０９を電源の供給源としてのみ利用して自律動作を行うことになる。
【００２２】
本実施形態によれば、バス１０９上に実装されたボード１０１は、バス１０９にバスマスタが存在する場合はスレーブボードとして動作し、バスマスタが存在しない場合は自律動作を行うため、システム構築時に最適な最小の構成を同一のコンポーネントで構成することが可能になる。
【００２３】
次に、本発明の第２実施形態を図３にしたがって説明する。図３において、ボード３０１は、マスタ動作が可能なスレーブボードとして、回路部３０２とボード内回路３１０を備えており、回路部３０２は、クロック生成部１０５、リセット生成部１０４、クロック検出部１１０、バッファ１１４、１１５、制御部３０３、優先順位出力部３０４、優先順位設定部３０５、優先順位検出部３０６、バッファ３１１、３１２を備えて構成されており、各バッファ１１４、１１５、３１１、３１２はそれぞれクロック同期型バス１０９に接続されているとともに優先順位出力部３０４、優先順位検出部３０６はそれぞれバス１０９に接続されている。
【００２４】
クロック検出部１１０はバス１０９からバッファ１１５を介してクロック信号１０７が入力されたことを検出し、この検出結果を制御部３０３に出力するようになっている。制御部３０３には、クロック検出部１１０の検出結果の他に、バッファ１１５を介してクロック信号１０７が入力されるとともに、バッファ１１４を介してリセット信号１０８が入力されるようになっている。さらに、制御部３０３には、クロック生成部１０５の生成によるクロック信号が入力されているとともにリセット生成部１０４の生成によるリセット信号が入力されている。
【００２５】
制御部３０３は、クロック検出部１１０の検出結果により、バス１０９上にバスマスタが存在していることが検出されたとき、すなわちバス１０９からクロック信号１０７が入力されたことが検出されたときには、バス１０９上のクロック信号１０７をクロック信号１１１としてボード内回路３１０に転送し、このクロック信号１１１の転送に関連して、バス１０９上のリセット信号１０８をリセット信号１１２としてボード内回路３１０に転送する制御手段として構成されている。
【００２６】
また、制御部３０３は、クロック検出部１１０によってクロック信号１０７が検出されず、バス１０９上にバスマスタが存在していないと判定したときには、優先順位出力部３０４に対して優先順位に関する信号の出力を指令するとともに優先順位検出部３０６に対して優先順位に関する信号の検出を指令するようになっている。優先順位出力部３０４には、自らの優先順位を設定する優先順位設定手段としての優先順位設定部３０５から優先順位に関する信号が入力されており、優先順位出力部３０４は、制御部３０３からの指令に応答して、優先順位に関する信号３０７をアドレス信号やデータに関する信号の一部または全ての信号としてバス１０９上に出力する優先順位出力手段として構成されている。優先順位検出部３０６は、バス１０９上に存在する全ての信号３０８を監視し、優先順位に関する信号を検出し、この検出結果を制御部３０３に出力するようになっている。
【００２７】
制御部３０３は、優先順位設定部３０５によって設定された優先順位と優先順位検出部３０６によって検出された優先順位とを比較し、優先順位設定部３０５で設定された優先順位が最高か否かを判定するようになっている。すなわち、優先順位検出部３０６と制御部３０３は優先順位判定手段として構成されている。
【００２８】
さらに、制御部３０３は、優先順位が最高か否かを判定し、この判定結果によりボード３０１がマスタとして動作するか、あるいはスレーブとして動作するか否かの判定結果としてマスタ／スレーブ判定信号３０９をボード内回路３１０に転送するようになっている。すなわち、制御部３０３は、制御手段を構成するとともに、優先順位出力部３０４、優先順位設定部３０５、優先順位検出部３０６とともにマスタとして動作すべきか否かを判定するマスタ動作判定手段として構成されている。
【００２９】
制御部３０３がマスタとして動作するときには、制御部３０３は、クロック生成部１０５の生成によるクロック信号をバッファ３１２を介してバス１０９に出力し、リセット生成部１０４の生成によるリセット信号をバッファ３１１を介してバス１０９に出力するとともに、生成されたクロック信号をクロック信号１１１として、生成されたリセット信号をリセット信号１１２としてそれぞれボード内回路３１０に転送するようになっている。
【００３０】
一方、制御部３０３がスレーブとして動作するときには、制御部３０３は、優先順位出力部３０４から優先順位に関する信号を出力したあと、マスタとして動作する他のボードからクロック信号１０７とリセット信号１０８が転送されるのを待ち、他のボードからバス１０９を介してクロック信号１０７とリセット信号１０８が入力されたときには、クロック信号１０７をクロック信号１１１として、リセット信号１０８をリセット信号１１２としてそれぞれボード内回路３１０に転送するようになっている。
【００３１】
ボード内回路３１０は、制御部３０３からクロック信号１１１、リセット信号１１２、マスタ／スレーブ判定信号３０９を入力し、さらにバス１０９からアドレス信号やデータに関する信号を入力し、入力した信号を基にクロック信号１１１に同期して各種の演算処理を実行する処理手段としてのＣＰＵやデータを格納するメモリなどを備えて構成されている。そして、ボード内回路３１０は、リセット信号１１２に従ってリセット動作を行ったあと、クロック信号１１１に同期して演算処理を実行することになる。
【００３２】
次に、上記構成によるボード３０１がマスタまたはスレーブとして動作するときの作用を図４のフローチャートにしたがって説明する。まず、バス１０９に電源が供給されてバス１０９が起動されると（ステップ４０１）、バス１０９上にバスマスタが存在するか否かの判定が行われる（ステップ４０２）。すなわち、クロック検出部１１０によりクロック信号１０７が検出されたか否かの判定が制御部３０３によって行われ、バス１０９上にバスマスタが存在せずバスクロックが発生していないと判定されたときには、制御部３０３からの指令により、優先順位出力部３０４から優先順位に関する信号がバス１０９に出力され（ステップ４０３）、同時に、優先順位検出部３０６によりバス１０９上の優先順位に関する信号が検出される（ステップ４０４）。
【００３３】
このあと、制御部３０３は、優先順位検出部３０６の検出による優先順位に関する信号と優先順位出力部３０４から出力された優先順位に関する信号とを比較し、自ボード３０１の優先順位が最高か否かの判定を行う（ステップ４０５）。この場合、バス１０９に複数のボードが実装されていた場合、各ボード３０１から優先順位としてランダムな信号が出力されるようになっている。そしてステップ４０５において、自ボード３０１の優先順位が最高であると判定したときには、優先順位に関する信号の出力を停止し（ステップ４０６）、クロック生成部１０５によってクロック信号を生成するとともに、生成されたクロック信号をバス１０９に出力し、生成されたクロック信号をクロック信号１１１としてボード内回路３１０に転送する（ステップ４０７）。さらに、リセット生成部１０４でリセット信号を生成し、生成されたリセット信号をバス１０９に出力するとともにリセット信号１１２としてボード内回路３１０に転送する（ステップ４０８）。さらにボード内回路３１０には、ボード３０１がマスタとして動作すべきことを示すマスタ／スレーブ判定信号３０９が出力され、ボード内回路３１０の処理によりボード３０１はマスタ動作を行うことになる（ステップ４０９）。
【００３４】
一方、ステップ４０２でバスクロックがあると判定されたとき、すなわちバス１０９にバスマスタが実装されていると判定されたときにはクロック信号１０７をクロック信号１１１として、リセット信号１０８をリセット信号１１２としてボード内回路３１０に転送し、ボード３０１はスレーブ動作を実行することになる（ステップ４１０）。
【００３５】
またバス１０９にバスマスタが存在しないときに、ステップ４０５において自ボード３０１の優先順位が最高でないと判定されたときには、スレーブボードのうちマスタとして動作するボードからバス１０９に対してクロック信号とリセット信号が出力されるのを待ち、その後、他のボードからクロック信号とリセット信号がバス１０９に出力されたときには、このクロック信号をクロック信号１１１として、リセット信号をリセット信号１１２としてボード内回路３１０に転送し、ボード３０１はスレーブ動作を実行することになる（ステップ４１０）。
【００３６】
次に、ボード３０１がマスタとして動作するかあるいはスレーブとして動作するかの判定方法を図５にしたがって説明する。まず、バス１０９上にバスマスタが存在していないことを条件に判定が開始され（ステップ５０１）、変数Ｎに０が代入され（ステップ５０２）、処理回数の初期化が行われる。このあと優先順位出力部３０４の出力による優先順位に関する信号と優先順位検出部３０６によって検出された優先順位に関する信号とが制御部３０３で比較され、自ボード３０１が優先順位において最高であるか否かの判定が行われる（ステップ５０３）。このとき自ボード３０１の優先順位が最高と判定されたときには、変数Ｎに１を加え（ステップ５０４）、優先順位に関する信号の出力を停止し（ステップ５０５）、自ボード３０１と同一の優先順位に関する信号がバス１０９上に存在するか否かの判定を行う（ステップ５０６）。このとき自ボード３０１と同一の優先順位に関する信号がバス３０９上に存在しないと判定されたときには、変数Ｎと予め設定され確定しきい値とを比較し（ステップ５０７）、変数Ｎが確定しきい値と同一でないときには、再度同じ処理を行うために、乱数発生器などにより生成される乱数を使用したランダムタイマによるウエイト処理を行い（ステップ５０８）、その後、優先順位に関する信号を再度バス１０９上に出力し（ステップ５０９）、ステップ５０３の処理に戻る。
【００３７】
ステップ５０３からステップ５０６の処理が実行されている過程で、自ボード３０１の優先順位が最高でないと判定されたときには、他のボードから優先順位として最高を示す信号が出力されているか、あるいは他のボードから自ボード３０１と同一の優先順位に関する信号が出力されているとして、自ボード３０１はスレーブとして動作するべきであると判定し（ステップ５１０）、判定を終了する（ステップ５１２）。
【００３８】
一方、ステップ５０３からステップ５０７の処理の過程で、変数Ｎが確定しきい値と同一となったときには、複数回の処理により自ボード３０１の優先順位が最高であるとして、自ボード３０１はマスタとして動作すべきであると判定し（ステップ５１１）、判定処理を終了する（ステップ５１２）。
【００３９】
本実施形態によれば、バス１０９上にバスマスタが存在しなくても、ボード３０１はマスタまたはスレーブとして動作することができるため、バス１０９に複数のボード３０１が実装されていても、バス１０９にバスマスタが存在していないときには、複数のボード３０１の中から単一のボード３０１をマスタとして動作させ、他のボードをスレーブボードとして動作させることができ、各ボード３０１をマスタ／スレーブとして厳密に管理しなくても、必要な個数のボード３０１をバス１０９に実装するだけでシステムを構築することができる。
【００４０】
次に、画像処理による監視システムの機能を段階的に増加させるに際して、本発明に係るバス用ボードを適用しないときのシステムと適用したときのシステムとの関係を図６ないし図１２にしたがって説明する。なお、ここでは、監視システムはカメラからの映像に対して侵入者の有無を画像処理によって導き出すシステムであると定義する。
【００４１】
まず、前提として、第１段階として１個所の監視のみを行う監視システムを構築し、第２段階として監視の結果を保存するためのメモリ（ＨＤＤ）を実装したＣＰＵユニットを増設し、第３段階として３個所の監視を行えるようにシステムを増設する場合を考える。
【００４２】
また、第１段階の設計においては第２段階が、第２段階の設計においては第３段階が行われることが事前に分かっていないものとする。
【００４３】
本発明に係るバス用ボードを監視システムに適用しない場合は、図６に示すように、第１段階では、スタンドアローン型の画像認識ユニット６０１と、監視カメラ６１０をそれぞれ１台ずつ使用してシステムを構築することは最も容易で且つ安価な構築方法となる。
【００４４】
次に、第２段階においては、図７に示すように、既存の第１段階のシステムに、ＨＤＤを実装したＣＰＵユニット７０１を通信手段７０２を介して接続してシステムを構築する。
【００４５】
次に、第３段階においては、図８に示すように、画像認識ユニット６０２、６０３と監視カメラ６１１、６１２をそれぞれ通信手段７０３、７０４を介してＣＰＵユニット７０１に接続してシステムを構築する。この場合、初めから第３段階のシステムを構築するならば、図９に示すように、メモリ（ＨＤＤ）９０２と接続されたＣＰＵボード９０１と、画像処理を行う画像処理ボード９０３、９０４、９０５と監視カメラ６１０、６１１、６１２を使用して構築する方法が最も容易で安価な構築方法となる。しかし、第１段階において、第２段階から第３段階までの増設が分かっていない場合には、図９に示すように、バス１０９を使用する方式を第１段階で選択することは困難である。すなわち、第１段階において、図９に示すようなシステムを構築しようとしても、画像処理ボード９０３、９０４、９０５はスレーブボードであってマスタとしての機能を備えていないため、マスタとなるＣＰＵボード９０１が必要となり、システムの価格の上昇を招くため、図９に示すシステムを選択することは困難である。
【００４６】
これに対して、第１段階として１個所の監視のみを行う監視システムを構築するに際して、図１０に示すように、本発明に係るボード３０１を画像認識ボード１００１として使用すれば、画像認識ボード１００１は、バス１０９上にバスマスタとしてのマスタボードがない場合でも、自動的にマスタボードとして動作するため、ＣＰＵボードやＣＰＵユニットを必要とせず、容易で且つ安価なシステムを構築できる。
【００４７】
次に、第２段階においては、図１１に示すように、バス１０９上にマスタとしてのＣＰＵボード９０１とＨＤＤ９０２を実装した場合、画像認識ボード１００１はスレーブとして動作するため、容易且つ安価にシステムを構築することができる。
【００４８】
次に、第３段階のシステムを構築する場合、図１２に示すように、増設された画像認識ボード１００２、１００３をそれぞれボード３０１で構成し、各画像認識ボード１００２、１００３にそれぞれ監視カメラ６１１、６１２を接続することでシステムを構築することができる。この場合、各画像認識ボード１００１、１００２、１００３はＣＰＵボード９０１がバス１０９上に存在しているときには常にスレーブとして動作し、ＣＰＵボード９０１が故障した場合でも、各ボードはマスタまたはスレーブとして動作するため、増設に伴うシステムも容易且つ安価に構築することができる。
【００４９】
上述したように、前記各実施形態によれば、バスマスタが存在しなくてもスレーブボードとして自律動作できるので、バスシステムとしてのコストを削減することができる。
【００５０】
また、各実施形態によれば、バス規格に対する変更や拡張を行うことなく、スレーブボードとして自律動作できるため、本発明に係るスレーブボードと従来のスレーブボードとが同一のバス上に混在している場合でも、従来のスレーブボードを活用することができる。
【００５１】
また、前記実施形態によれば、ボード３０１が複数個存在している場合、自動的にバスマスタとなったボード３０１が故障しても、バスが再起動されたときには、正常なボード３０１の中から自動的に新しいバスマスタが決定されるため、システムとしての堅牢性を高めることができる。
【００５２】
さらに、本実施形態によれば、ボード３０１を用いて、当初バスマスタが存在していないバスシステムを構築し、後日、システムの処理能力向上などの目的でバスマスタを追加する場合、ボード３０１は追加されたバスマスタを自動的に認識し、追加されたバスマスタにしたがってスレーブ動作を行うため、バスシステム停止時に、バス上にバスマスタを追加しても、バスシステムを起動するだけでシステムを構築することができ、システムの増設（増強）を容易に行うことができる。
【００５３】
また本実施形態によれば、当初バスマスタが存在していないバスシステムにボード３０１を１枚以上実装してシステムを構築し、後日システムの処理能力向上などの目的でボード３０１を増設する場合、バス上に存在する３０１の中からバスマスタとなるボードを１枚自動的に決定することができるため、システムの増強または増設を容易に行うことができる。
【００５４】
【発明の効果】
以上説明したように、本発明によれば、バス上にバスマスタが存在しなくてもスレーブボードとして自律動作することができ、システム構築時に最適な最小の構成を同一のコンポーネントで構成することが可能になる。また、本発明によれば、バス上にバスマスタが存在しない場合でも、複数のスレーブボードのうちいずれかのスレーブボードがバスマスタとして機能することができ、マスタとなったボードが故障しても、バスが再起動されたときには、正常なボードの中から自動的に新しいマスタが決定されるため、システムとしての堅牢性を高めることができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態を示すクロック同期型バス用ボードのブロック構成図である。
【図２】図１に示すボードの作用を説明するためのフローチャートである。
【図３】本発明に係るバス用ボードの第２実施形態を示すブロック構成図である。
【図４】図３に示すボードのマスタ動作とスレーブ動作を説明するためのフローチャートである。
【図５】図３に示すボードのマスタ判定処理とスレーブ判定処理を説明するためのフローチャートである。
【図６】本発明に係るボードを用いずにシステムを構築したときの第１段階におけるシステム構成図である。
【図７】本発明に係るボードを用いずにシステムを構成したときの第２段階におけるシステム構成図である。
【図８】本発明に係るボードを用いずにシステムを構築したときの第３段階におけるシステム構成図である。
【図９】本発明に係るボードを用いずにシステムを構築したときの第３段階における他のシステムの構成図である。
【図１０】本発明に係るボードを利用してシステムを構築したときの第１段階におけるシステム構成図である。
【図１１】本発明に係るボードを利用してシステムを構築したときの第２段階におけるシステム構成図である。
【図１２】本発明に係るボードを利用してシステムを構築したときの第３段階におけるシステム構成図である。
【符号の説明】
１０１、３０１  ボード
１０２、３０２  回路部
１０３、３０３  制御部
１０４  リセット生成部
１０５  クロック生成部
１０７、１１１  クロック信号
１０８、１１２  リセット信号
１０９  クロック同期型バス
１１０  クロック検出部
３０４  優先順位出力部
３０５  優先順位設定部
３０６  優先順位検出部
６１０、６１１、６１２  監視カメラ
９０１  ＣＰＵボード
９０２  ＨＤＤ
１００１、１００２、１００３  画像認識ボード
【図１】
0003906373.tif 000002
【図２】
0003906373.tif 000003
【図３】
0003906373.tif 000004
【図４】
0003906373.tif 000005
【図５】
0003906373.tif 000006
【図６】
0003906373.tif 000007
【図７】
0003906373.tif 000008
【図８】
0003906373.tif 000009
【図９】
0003906373.tif 000010
【図１０】
0003906373.tif 000011
【図１１】
0003906373.tif 000012
【図１２】
0003906373.tif 000013