(57)【特許請求の範囲】
【請求項１】
通信制御部と、前記通信制御部を制御する中央制御部と、前記通信制御部および前記中央制御部を接続するインターフェイス部とを有し、
前記インターフェイス部は、前記通信制御部のコマンドエリアおよび前記中央制御部のコマンドエリアを共有するメモリを備え、
前記通信制御部もしくは前記中央制御部のいずれかのコマンドを発行した側は、当該コマンドに対するレスポンスを受信すると、前記メモリのコマンド発行側のコマンドエリアをクリアし、
前記通信制御部もしくは前記中央制御部のいずれかの前記発行したコマンドを受信した側は、当該コマンドに対するレスポンスを発行するとともに、前記コマンド発行側コマンドエリアのクリアを監視し、前記コマンドエリアがクリアされたことを検出すると、コマンド発行可能な状態とすることを特徴とする通信装置のインターフェイス制御方法。
【請求項２】
前記通信制御部と前記中央制御部には予め優先順位が定められており、前記通信制御部および前記中央制御部から同時にコマンド発行が生じると、
優先順位の高い制御部は、優先順位の低い制御部からのコマンドを無視し、前記発行したコマンドに対するレスポンスを受信すると、前記メモリのコマンド発行側のコマンドエリアをクリアし、
前記優先順位の高い制御部からのコマンドを受信した優先順位の低い制御部は、当該コマンドに対するレスポンスを発行するとともに、前記優先順位の高い制御部側コマンドエリアのクリアを監視し、前記コマンドエリアがクリアされたことを検出すると、コマンド発行可能な状態とすることを特徴とする請求項１記載の通信装置のインターフェイス制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信装置の複数の制御部間におけるインターフェイス制御方法に関する。
【０００２】
【従来の技術】
従来、複数の制御部間のインターフェイスに共有メモリを使用し、コマンド／レスポンス形式によって制御情報の受け渡しを行う制御方法において、レスポンス受信側の受信処理完了を待たずに次のコマンドを発行した場合、レスポンス受信側でレスポンスがコマンド受信により受け取れなくなったり、レスポンス受信処理中に次のコマンドを受信しなければならないため、複雑な受信処理を必要とした。
【０００３】
このような各制御部からのコマンドの二重発行を防止する方法としては、コマンドに対するレスポンスの発行後、レスポンス発行側でレスポンス受信側がレスポンスを受信するのに十分な時間を固定的に持つという方法が第１の方法として採用されていた。
【０００４】
また、中央制御部から各通信制御部へ、または各通信制御部から中央制御部へのコマンドの同時発行が発生した場合の回避手段としては、共有メモリに対しハード的にアクセス権を制御する仕組みを持ち、そのアクセス権を得た制御部だけが共有メモリへのコマンドの書き込みと発行を可能とし、コマンドの同時発行を発行以前に防止する方法が第２の方法として採用されていた。
【０００５】
また、両制御部において、受信したコマンドに対しての処理と、自身が送信したコマンドの処理をソフト的にマルチで動作し、コマンドの同時発行後に回避する方法が第３の方法として採用されていた。
【０００６】
【発明が解決しようとする課題】
しかしながら、第１の方法のようにレスポンス発行側がレスポンス受信側でレスポンス受信処理が完了したかどうかの確認がとれないため、レポンス受信側でレスポンス受信処理中に次のコマンドを受信するといったコマンドの二重発行を防止するために固定的な時間を必要とする場合、レスポンス発行側が次のコマンドを発行するまで必ず一定間隔の待ち時間が生じることになり、高速のインターフェイスを実現できないといった不都合があった。
【０００７】
また、第２の方法のように共有メモリにハード的なアクセス権の制御を持たせる場合、ハード的な仕組みが複雑になり、開発量が増大するばかりでなく、製品原価が高くなるといった不都合があった。
【０００８】
また、第３の方法のように受信したコマンドに対しての処理と、自身が発行したコマンドの処理とをソフト的にマルチで動作し実現しようとする場合、インターフェイスを要する全ての制御部において、マルチで動作する複雑な仕組みが必要となり、ソフトの開発規模が増大するばかりでなく、コマンドの同時発行後に回避処理を行うため、コマンドの同時発行が発生した場合、マルチで動作する複雑な回避処理が実行されることになり、処理時間が増大してしまうといった不都合があった。
【０００９】
本発明は、このような従来の課題を解決するためになされたもので、その第１の目的は、レスポンス発行後におけるレスポンス受信側の認識待ち時間をなくして高速のインターフェイスとすることであり、かつレスポンス発行側でレスポンス受信側が正常に受信されたか否かの確認がとれるようにすることでコマンドの二重発行を防止することにある。
【００１０】
また、その第２の目的は、ハード的にアクセス権を持たせるなどのハード的制御の仕組みをなくし、ハード的な開発規模の縮小と製品原価の低減を図ることにある。
【００１１】
また、その第３の目的は、ソフト的にマルチで動作するための複雑な仕組みをなくし、ソフトの開発規模の縮小と制御部間インターフェイスでの時間短縮を図ることにある。
【００１２】
【課題を解決するための手段】
本発明による請求項１記載の発明は、通信制御部と、通信制御部を制御する中央制御部と、通信制御部および中央制御部を接続するインターフェイス部とを有し、インターフェイス部は、通信制御部のコマンドエリアおよび中央制御部のコマンドエリアを共有するメモリを備え、通信制御部もしくは中央制御部のいずれかのコマンドを発行した側は、当該コマンドに対するレスポンスを受信すると、メモリのコマンド発行側のコマンドエリアをクリアし、通信制御部もしくは中央制御部のいずれかの発行したコマンドを受信した側は、当該コマンドに対するレスポンスを発行するとともに、コマンド発行側コマンドエリアのクリアを監視し、コマンドエリアがクリアされたことを検出すると、コマンド発行可能な状態とするものである。
【００１３】
本発明によれば、共有メモリの各エリアを各制御部が監視することで、レスポンス発行側は自身の発行したレスポンスがレスポンス受信側で正常に認識されたことを検出することができ、レスポンス発行時におけるレスポンス受信側の待ち時間をなくし、高速のインターフェイスを実現するだけでなく、コマンドの二重発行を防止することが可能になる。
【００１４】
本発明による請求項２に記載の発明は、通信制御部と前記中央制御部には予め優先順位が定められており、通信制御部および中央制御部から同時にコマンド発行が生じると、優先順位の高い制御部は、優先順位の低い制御部からのコマンドを無視し、発行したコマンドに対するレスポンスを受信すると、メモリのコマンド発行側のコマンドエリアをクリアし、優先順位の高い制御部からのコマンドを受信した優先順位の低い制御部は、当該コマンドに対するレスポンスを発行するとともに、優先順位の高い制御部側コマンドエリアのクリアを監視し、コマンドエリアがクリアされたことを検出すると、コマンド発行可能な状態とするものである。
【００１５】
本発明によれば、各制御部間のコマンドの同時発行を回避するために予め優先順位を定め、例えば通信制御部のコマンド発行時の優先順位を高くした場合は、中央制御部は通信制御部のコマンドが優先であるため、自制御部が発行したコマンドの後回し処理を実行し、通信制御部から受信したコマンドに対する処理を実行した後に通信制御部にレスポンスを発行する。一方、コマンドを受信した通信制御部は中央制御部に対してコマンド発行中であるため中央制御部からのコマンドを無視し、自身が発行したコマンドのレスポンス受信待ち状態となる。レスポンスを受信すると通信制御部は再びコマンド発行可能な初期状態に戻る。レスポンスを発行した中央制御部も後回しにした通信制御部に対するコマンドの再発行が可能な状態となる。
【００１６】
【発明の実施の形態】
図１は、本発明による通信装置のインターフェイス制御方法が適用される通信装置の概略構成のブロック図である。同図において、中央制御部１はメインプログラム動作エリアとして機能するＳＩＭＭ（シングルインライン・メモリモジュール）１１、メインプログラム格納エリアとして機能するＥＥＰＲＯＭ（電気的消去型書き換え可能ＲＯＭ）１２、バックアップ用エリアとして機能するＲＡＭ１３、初期診断プログラムエリアとして機能するＲＯＭ１４、中央制御部１を制御するＣＰＵ（中央処理装置）１５、ＦＰＧＡ（フィールドプログラマブル・ゲートアレイ）１６およびＳＣＵ（シリアルインターフェイス制御装置）１７がバスを介して互いに接続されており、さらにＣＬＫ（クロック供給装置）１８がＣＰＵ１５に接続されている。そして、ＣＰＵ１５が外部のバスラインに接続されている。
【００１７】
また、通信制御部２はインターフェイス用共有メモリとして機能するＤＰＲＡＭ（デュアルポートＲＡＭ）２１、ＦＰＧＡ（フィールドプログラマブル・ゲートアレイ）２２、通信制御部２を制御するＣＰＵ（中央処理装置）２３、メインプログラム格納エリアとして機能するＥＰＲＯＭ（紫外線消去型書き換え可能ＲＯＭ）２４、メインプログラム動作エリアとして機能するＳＲＡＭ（スタティックＲＡＭ）２５がバスを介して互いに接続されており、さらにＳＹＮＣ（セル送受信制御装置）２６およびＣＬＫ（クロック供給装置）２７がＣＰＵ２３に接続されている。そして、インターフェイス用共有メモリとしてのＤＰＲＡＭ２１が外部のバスラインに接続されている。
【００１８】
図２は、中央制御部１と通信制御部２の制御情報の受け渡しを行うインターフェイス用共有メモリ２１の記憶エリアを示す図で、中央制御部１から通信制御部２へのコマンドを発行する中央制御部コマンドエリア２１ａ、中央制御部１から通信制御部２へのレスポンスを発行する中央制御部レスポンスエリア２１ｂ、通信制御部２から中央制御部１へのコマンドを発行する通信制御部コマンドエリア２１ｃ、通信制御部２から中央制御部１へのレスポンスを発行する通信制御部レスポンスエリア２１ｄとに分割され、中央制御部１の制御情報と通信制御部２の制御情報とを区別することができるようになっている。
【００１９】
図３は、中央制御部１と通信制御部２のインターフェイスにてコマンドの二重発行を防止する処理手順を示すフローチャートである。図中、先端を塗り潰した実線矢印は処理の流れを示し、塗り潰していない実線矢印は割込みを示し、破線矢印は共有メモリの監視を示す。
【００２０】
同図において、まず中央制御部１と通信制御部２との制御情報の受け渡しを行うインターフェイス用共有メモリ２１は、初期状態ではクリアされた状態にある（ステップＳ１１）。
【００２１】
中央制御部１は通信制御部２に対しコマンドエリア１に制御情報の書き込みコマンド▲１▼「×××要求」を発行し（ステップＳ１２）、通信制御部２からのレスポンス待ちになる（ステップＳ１３）。
【００２２】
初期状態で中央制御部１からのコマンドを受信した通信制御部２は（ステップＳ１４）、その制御情報の処理を実行し、中央制御部１に対してレスポンス▲２▼「×××完了」の発行を行い（ステップＳ１５）、中央制御部１のコマンドエリア１のクリアを監視するクリア待ちとなる（ステップＳ１６）。
【００２３】
通信制御部２からのレスポンス▲２▼を受信した中央制御部１は（ステップＳ１７）、コマンドエリア１をクリアし（ステップＳ１８）、通信制御部２に対してレスポンス▲２▼を正常に受信したことを認識させる。
【００２４】
中央制御部１のコマンドエリア１のクリアを監視していた通信制御部２は、コマンドエリア１がクリアされたことを検出すると、レスポンスエリア２をクリアする（ステップＳ１９）。これにより、このコマンドに関する処理が全て完了したことになり、中央制御部１および通信制御部２はともに次のコマンドが発行可能である初期状態（ステップＳ１１）へと戻る。
【００２５】
図４は、中央制御部１と通信制御部２のインターフェイスにてコマンドの同時発行時の処理手順を示すフローチャートである。同図において、中央制御部１と通信制御部２との制御情報の受け渡しを行うインターフェイス用共有メモリ（ＤＰＲＡＭ）２１は、初期状態ではクリアされている（ステップＳ２１）。
【００２６】
中央制御部１は通信制御部２に対しコマンドエリア１に制御情報の書き込みコマンド▲１▼「×××要求」を発行し（ステップＳ２２）、通信制御部２からのレスポンス待ちになる（ステップＳ２３）。
【００２７】
通信制御部２は中央制御部１に対しコマンドエリア２に制御情報の書き込みコマンド▲２▼「×××要求」を発行し（ステップＳ２４）、通信制御部２からのレスポンス待ちになる（ステップＳ２５）。この時点で中央制御部１および通信制御部２間でコマンドの同時発行が発生したことになる。
【００２８】
レスポン待ち状態で通信制御部２からのコマンドを受信した中央制御部１は（ステップＳ２６）、通信制御部２からのコマンドを優先し、通信制御部２に対して発行したコマンド▲１▼の処理を後回しする（ステップＳ２７）。
【００２９】
中央制御部１は受信したコマンド▲２▼に対する制御情報の処理を実行後（ステップＳ２８）、通信制御部２に対してレスポンス▲３▼「×××応答」の発行を行い（ステップＳ２９）、通信制御部２のコマンドエリア２のクリアを監視するクリア待ちとなる（ステップＳ３０）。
【００３０】
中央制御部１からコマンド▲１▼を受信した通信制御部２は（ステップＳ３１）、中央制御部１からのレスポンス待ち状態であるのでコマンド▲１▼を無視し（ステップＳ３２）、再びレスポンス待ちとなる（ステップＳ３３）。
【００３１】
中央制御部１からレスポンス▲３▼を受信した通信制御部２は（ステップＳ３４）、発行したコマンドエリアをクリアし、中央制御部１に対しレスポンスを正常に受信したことを認識させる（ステップＳ３５）。
【００３２】
通信制御部２のコマンドエリア２のクリアを監視していた中央制御部１は、コマンドエリア２がクリアされたことを検出すると、レスポンス▲３▼を発行したレスポンスエリア１をクリアする（ステップＳ３６）。
【００３３】
次いで、中央制御部１は通信制御部２に対してコマンド発行の後回し処理を行ったかどうかの判定を行い（ステップＳ３７）、コマンド発行の後回し処理を行っていたならば、同一のコマンド▲１▼をリトライ処理として通信制御部２に発行し（ステップＳ３８）、通信制御部２からのレスポンス待ちとなる（ステップＳ３９）。
【００３４】
すでに共有エリアが初期状態になっている通信制御部２は、中央制御部１からのコマンド▲１▼を受信すると（ステップＳ４０）、ステップＳ２９〜Ｓ３６までの処理を行う。コマンド発行中でなかった場合は、次のコマンドが発行可能である初期状態（ステップＳ２１）へ戻るという処理を繰り返し行う。
【００３５】
なお、前述の実施の形態では、通信処理部２に対してコマンド発行の優先を持たせるようにしたが、中央制御部１に対してコマンドの発行の優先を待たせるようにしてもよい。この場合は、同様の処理を中央制御部１と通信制御部２とで逆転させることにより実現可能である。
【００３６】
【発明の効果】
本発明によれば、共有メモリの各エリアを各制御部が監視することで、レスポンス発行側は自身の発行したレスポンスがレスポンス受信側で正常に認識されたことを検出することができ、レスポンス発行時におけるレスポンス受信側の認識待ち時間をなくし、高速のインターフェイスとすることだけでなく、コマンドの二重発行を防止することが可能になる。
【００３７】
また、本発明によれば、制御部間にコマンド発行時の優先順位を定め、各制御部間からコマンドが同時に発行した時は、優先順位の低い制御部が優先順位の高い制御部からのコマンドを処理してレスポンスを発行し、優先順位の高い制御部は優先順位の低い制御部からのコマンドを無視するようにしているので、各制御部間のコマンドの同時発行を回避することができる。
【００３８】
また、本発明によれば、ハード的制御の仕組みとソフト的にマルチで動作するための複雑な仕組みとをなくすことができ、ソフトウェアの開発規模の縮小と制御部間インターフェイスでの時間短縮を図ることができる。
【図面の簡単な説明】
【図１】本発明が適用される通信装置のブロック図である。
【図２】インターフェイス用共有メモリの記憶エリアを示す図である。
【図３】中央制御部と通信制御部のインターフェイスにてコマンドの二重発行を防止する処理手順を示すフローチャートである。
【図４】中央制御部と通信制御部のインターフェイスにてコマンドの同時発行が生じた場合の回避手順を示すフローチャートである。
【符号の説明】
１  中央制御部
２  通信制御部
２１  インターフェイス用共有メモリ（ＤＰＲＡＭ）
２１ａ  中央制御部コマンドエリア（コマンドエリア１）
２１ｂ  中央制御部レスポンスエリア（レスポンスエリア１）
２１ｃ  通信制御部コマンドエリア（コマンドエリア２）
２１ｄ  通信制御部レスポンスエリア（レスポンスエリア２）
【図１】
0003816180.tif 000002
【図２】
0003816180.tif 000003
【図３】
0003816180.tif 000004
【図４】
0003816180.tif 000005