(57)【特許請求の範囲】
【請求項１】
主信号に制御信号を多重化して送信する第１の伝送部と、前記第１の伝送部から受信した制御信号に対する応答信号を主信号に多重化して前記第１の伝送部に送信する第２の伝送部とを有してなる通信装置において、
前記第２の伝送部は、
前記第１の伝送部から受信した制御信号を主信号から分離して出力する分離部と、
前記分離部から出力された制御信号に対する応答を行い、該応答結果を前記応答信号として出力する複数のデバイスと、
前記複数のデバイスごとに、当該デバイスにおける前記制御信号に対する応答時間の予測値を示す予測応答時間を格納するテーブルと、
前記分離部から出力された制御信号に基づいて前記複数のデバイスの中から制御対象のデバイスを特定するデバイス特定部と、
前記デバイス特定部にて特定された制御対象のデバイスにおける前記予測応答時間を前記テーブルから取得するテーブル管理部と、
前記第１の伝送部に送信する主信号を一時的に格納し出力するＦＩＦＯ部と、
前記テーブル管理部にて取得された予測応答時間が経過した時点で前記ＦＩＦＯ部から主信号が出力されないように前記ＦＩＦＯ部に格納された主信号の出力順序を入れ替える制御部と、
前記ＦＩＦＯ部から出力された主信号に制御対象のデバイスから出力された応答信号を多重化して前記第１の伝送部に送信する多重化部とを有する通信装置。
【請求項２】
請求項１に記載の通信装置において、
前記デバイスにおける前記制御信号に対する応答時間が、当該デバイスのどのアドレス領域を使用して応答を行ったかに応じて異なる場合、
前記テーブルは、前記デバイスの応答時間が異なるアドレス領域ごとに、当該アドレス領域を使用して応答を行う場合における前記予測応答時間を格納し、
前記デバイス特定部は、前記制御信号に基づいて制御対象のデバイスとともに当該制御対象のデバイスのアドレス領域も特定し、
前記テーブル管理部は、前記デバイス特定部にて特定された制御対象のデバイスのアドレス領域を使用して応答を行う場合における前記予測応答時間を取得する通信装置。
【請求項３】
請求項１または２に記載の通信装置において、
前記テーブルは、前記予測応答時間が予め格納され、
前記テーブル管理部は、前記デバイスにおける前記制御信号に対する実際の応答時間を計測し、前記テーブルに予め格納された予測応答時間の内容を実際の応答時間に更新する通信装置。
【請求項４】
請求項１から３のいずれか１項に記載の通信装置において、
前記第１の伝送部と前記第２の伝送部との組を複数組有し、
前記第１の伝送部は、複数の物理回線を収容し、前記複数の物理回線から受信した主信号を前記第２の伝送部に送信するとともに、前記第２の伝送部から受信した主信号を前記複数の物理回線に送信する物理回線収容部であり、
前記第２の伝送部は、前記第１の伝送部から受信した主信号を他の第２の伝送部または前記第１の伝送部に送信する交換処理を行うとともに、他の第２の伝送部から受信した主信号を前記第１の伝送部に送信するプロトコル処理部である通信装置。
【請求項５】
第１の伝送部から主信号に多重化された制御信号を受信した場合に、当該制御信号に対する応答信号を主信号に多重化して前記第１の伝送部に送信する第２の伝送部における信号伝送方法であって、
前記第２の伝送部内の複数のデバイスごとに、当該デバイスにおける前記制御信号に対する応答時間の予測値を示す予測応答時間をテーブルに格納する予測応答時間格納ステップと、
前記第１の伝送部に送信する主信号をＦＩＦＯ部に一時的に格納する主信号格納ステップと、
前記第１の伝送部から受信した制御信号を主信号から分離する分離ステップと、
前記制御信号に基づいて前記第２の伝送部内の複数のデバイスの中から制御対象のデバイスを特定する特定ステップと、
前記特定された制御対象のデバイスにおける前記予測応答時間を前記テーブルから取得する取得ステップと、
前記予測応答時間が経過した時点で前記ＦＩＦＯ部から主信号が出力されないように前記ＦＩＦＯ部に格納された主信号の出力順序を入れ替える入替ステップと、
前記特定された制御対象のデバイスにて前記制御信号に対する応答を行い、該応答結果を前記応答信号として出力する応答ステップと、
前記ＦＩＦＯ部から出力された主信号に制御対象のデバイスから出力された応答信号を多重化して前記第１の伝送部に送信する多重ステップとを有する信号伝送方法。
【請求項６】
請求項５に記載の信号伝送方法において、
前記デバイスにおける前記制御信号に対する応答時間が、当該デバイスのどのアドレス領域を使用して応答を行ったかに応じて異なる場合、
前記予測応答時間格納ステップでは、前記デバイスの応答時間が異なるアドレス領域ごとに、当該アドレス領域を使用して応答を行う場合における前記予測応答時間を前記テーブルに格納し、
前記特定ステップでは、前記制御信号に基づいて制御対象のデバイスとともに当該制御対象のデバイスのアドレス領域も特定し、
前記取得ステップでは、前記特定された制御対象のデバイスのアドレス領域を使用して応答を行う場合における前記予測応答時間を取得する信号伝送方法。
【請求項７】
請求項５または６に記載の信号伝送方法において、
前記予測応答時間格納ステップは、
前記テーブルに前記予測応答時間を予め格納するステップと、
前記デバイスにおける前記制御信号に対する実際の応答時間を計測し、前記テーブルに予め格納された予測応答時間の内容を実際の応答時間に更新するステップとを含む信号伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主信号と制御信号とを同一の伝送路上に多重して伝送するとともに、主信号と制御信号に対する応答信号とを同一の伝送路上に多重して伝送する通信装置および信号伝送方法に関する。
【背景技術】
【０００２】
従来、通信装置の中には、主信号と制御信号とを同一の伝送路上に多重して伝送するとともに、主信号と制御信号に対する応答信号とを同一の伝送路上に多重して伝送するものがある。このような伝送方式は、インバンド通信と称され、特許文献１などに開示されている。以下、この種の通信装置の従来構成について説明する。
【０００３】
図６は、従来の通信装置の一構成例を示す図である。
【０００４】
図６を参照すると、本従来例の通信装置は、物理回線収容部７０と、プロトコル処理部２０とを有している。ここで、物理回線収容部７０とプロトコル処理部２０とを分離している理由は、種々雑多な物理回線条件に本通信装置を適用させる場合に物理回線収容部７０のみを変更する構成をとることにより、本通信装置のコストを低減するためである。
【０００５】
また、図６には図示していないが、本従来例の通信装置には、物理回線収容部とプロトコル処理部との組が並列に複数組設けられており、プロトコル処理部は他の組のプロトコル収容部の１つ以上と接続可能に構成されている。図６では、プロトコル処理部２０は、他の組のプロトコル処理部である他プロトコル処理部６０と接続されている。
【０００６】
物理回線収容部７０は、複数の物理回線４０を収容し、複数の物理回線４０を介して受信した主信号をプロトコル処理部２０に送信し、プロトコル処理部２０は、物理回線収容部７０から受信した主信号を適切な送信先に送信する交換処理を行う。また、プロトコル処理部２０は、他プロトコル処理部６０から送信先が物理回線収容部７０となっている主信号を受信すると、その主信号を物理回線収容部７０に送信することも行う。
【０００７】
その他、プロトコル処理部２０は、物理回線収容部７０内のデバイスを制御するための制御信号を主信号に多重して物理回線収容部７０に送信し、物理回線収容部７０は、制御信号に対する応答を行った後、その応答結果を示す応答信号を主信号に多重してプロトコル処理部２０に送信する。
【０００８】
物理回線収容部７０は、多重／分離部７１と、ＴＲＣＶ（Ｔｒａｎｓｃｅｉｖｅｒ）部１２と、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）部１３と、温度センサ１４と、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１５とを有している。
【０００９】
プロトコル処理部２０は、多重／分離部２１と、ＮＰ（Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｏｒ）部２２と、ＦＡＰ（Ｆａｂｒｉｃ  Ａｃｃｅｓｓ  Ｐｒｏｃｅｓｓｏｒ）部２３と、温度センサ２４と、ＥＥＰＲＯＭ２５と、Ｐｒｏｃ（Ｐｒｏｃｅｓｓｏｒ）部２６とを有している。
【００１０】
まず、主信号の受信処理を行う場合の各構成要素の動作について説明する。
【００１１】
ＴＲＣＶ部１２は、物理回線４０を介して主信号として受信したデータに対して物理条件変換を実行し、そのデータを伝送路１６ｃを介してＭＡＣ部１３に出力する。ここで、物理条件変換とは、物理回線４０を介して受信したデータは物理回線４０の物理回線条件に適合した形式になっているため、受信したデータを通信装置内部で処理可能な電気信号に変更すべく、光電変換や周波数変換などを行うことである。
【００１２】
ＭＡＣ部１３は、ＴＲＣＶ部１２から出力されたデータのチェックと整形を実行する。これにより主信号はデータパケットに変換され、以降、主信号はデータパケットとして伝送される。ここで、チェックとは、データに含まれるＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋｉｎｇ）コードやパリティコードなどを演算し、その演算結果を照合することによりデータの正常性を判断することである。また、整形とは、物理回線４０の物理回線条件によって決定されるデータ以外の信号を削除する処理や、物理回線４０がＡＴＭセルなどのセル伝送媒体の場合にはセルバッファリングおよびパケット化処理を行うことである。上記で変換されたデータパケットは、ＭＡＣ部１３から伝送路１６ａを介して多重／分離部７１に出力される。
【００１３】
多重／分離部７１は、ＭＡＣ部１３から出力されたデータパケットに、ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、またはＥＥＰＲＯＭ１５のいずれかから出力された後述の応答信号（制御信号に対する応答結果を示す命令列）を多重化し、伝送路３０ａを介してプロトコル処理部２０に送信する。
【００１４】
ここで、データパケットと応答信号とを多重化する理由は、伝送路３０ａのインタフェースの本数を削減するためである。また、後述のようにプロトコル処理部２０にてデータパケットと制御信号とを多重化する理由は、伝送路３０ｂのインタフェースの本数を削減するためである。インタフェースの本数の削減は、本通信装置のコスト低減に寄与する。
【００１５】
多重／分離部２１は、多重／分離部７１から受信したデータパケットと応答信号とを分離し、このうちデータパケットを伝送路２７ａを介してＮＰ部２２に出力する。
【００１６】
ＮＰ部２２は、本通信装置の主機能であるデータ交換機能を備える。具体的には、多重／分離部２１から出力されたデータパケットを解析することによりあて先ポート番号を決定し、決定したあて先ポートポート番号をデータパケット中に保存し、そのデータパケットを伝送路２７ｃを介してＦＡＰ部２３に出力する。
【００１７】
ＦＡＰ部２３は、他プロトコル処理部６０と伝送路５０ａ，５０ｂを介して接続されており、他プロトコル処理部６０との間でデータ交換を行う。具体的には、ＮＰ部２２から出力されたデータパケット中のあて先ポート番号のポートが他プロトコル処理部６０に存在する場合は、そのデータパケットを伝送路５０ａを介して他プロトコル処理部６０に送信する。一方、ＮＰ部２２から出力されたデータパケットのあて先ポート番号のポートが自己が収容されている物理回線収容部７０内に存在する場合は、そのデータパケットを伝送路５０ａに送信することなく、伝送路２７ｄを介してＮＰ部２２に出力する。
【００１８】
次に、主信号の送信処理を行う場合の各構成要素の動作について説明する。
【００１９】
ＦＡＰ部２３は、他プロトコル処理部６０から伝送路５０ｂを介してデータパケットを受信すると、伝送路別の帯域制御および回線使用率の調整などを必要に応じて実行した後、そのデータパケットを伝送路２７ｄを介してＮＰ部２２に出力する。その他、上述したように、ＮＰ部２２から出力されたデータパケットを、伝送路５０ａに送信することなく、伝送路２７ｄを介してＮＰ部２２に出力する場合もある。
【００２０】
ＮＰ部２２は、ＦＡＰ部２３から出力されたデータパケットを伝送路２７ｂを介して多重／分離部２１に出力する。
【００２１】
多重／分離部２１は、ＮＰ部２２から出力されたデータパケットに、Ｐｒｏｃ部２６から出力された後述の制御信号（物理回線収容部７０内のデバイスを制御するための命令列）を多重化し、伝送路３０ｂを介して物理回線収容部７０に送信する。
【００２２】
多重／分離部７１は、多重／分離部２１から受信したデータパケットと制御信号とを分離し、このうちデータパケットを伝送路１６ｂを介してＭＡＣ部１３に出力する。
【００２３】
ＭＡＣ部１３は、多重／分離部７１から出力されたデータパケットの整形を実行し、これにより得られたデータを伝送路１６ｄを介してＴＲＣＶ部１２に出力する。ここで、整形とは、物理回線４０の物理回線条件によって決定されるデータ以外の信号を挿入する処理や、物理回線４０がＡＴＭセルなどのセル伝送媒体の場合にはパケットバッファリングおよびセル化処理を行うことである。
【００２４】
ＴＲＣＶ部１２は、ＭＡＣ部１３から出力されたデータに対して、物理回線４０の物理回線条件に合致するように物理条件変換を実行し、そのデータを物理回線４０に送信する。
【００２５】
次に、制御信号の処理を行う場合の各構成要素の動作について説明する。
【００２６】
Ｐｒｏｃ部２６は、物理回線収容部７０内の全てのデバイス（ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、およびＥＥＰＲＯＭ１５）の制御を行うとともに、プロトコル処理部２０内の全てのデバイス（ＮＰ部２２、ＦＡＰ部２３、温度センサ２４、およびＥＥＰＲＯＭ２５）の制御を行う。
【００２７】
Ｐｒｏｃ部２６は、プロトコル処理部２０内のＮＰ部２２およびＦＡＰ部２３の制御を行う場合、制御バス２８ａを介してＮＰ部２２およびＦＡＰ部２３を制御する。制御バス２８ａは、通常、ＰＣＩバスなどの既知の規格に準拠した標準インタフェースで実現される。
【００２８】
また、Ｐｒｏｃ部２６は、プロトコル処理部２０内の温度センサ２４およびＥＥＰＲＯＭ２５の制御を行う場合、多重／分離部２１を制御する。多重／分離部２１は、Ｐｒｏｃ部２６の管理に使用される雑多デバイスである温度センサ２４およびＥＥＰＲＯＭ２５を制御バス２８ｂに収容している。制御バス２８ｂは、通常、低速シリアル伝送インタフェースなどで実現されるローカルバスである。
【００２９】
一方、Ｐｒｏｃ部２６は、物理回線収容部７０内のデバイス（ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、およびＥＥＰＲＯＭ１５）の制御を行う場合、制御信号を発生し、その制御信号を制御バス２８ａを介して多重／分離部２１に出力する。
【００３０】
多重／分離部２１は、Ｐｒｏｃ部２６から出力された制御信号を伝送路３０ｂを介して物理回線収容部７０に送信する。ここで、上述したように、伝送路３０ｂにはデータパケットが送信されているため、多重／分離部２１は、データパケットを送信しない時間を利用して制御信号を多重化し、伝送路３０ｂに送信する。
【００３１】
多重／分離部７１は、多重／分離部２１から受信したデータパケットと制御信号とを分離する。
【００３２】
多重／分離部７１は、制御信号に含まれるアドレス情報を基に内部のアドレスデコーダ（不図示）を検索し、制御信号が制御対象とするデバイス（ＭＡＣ部１３、ＴＲＣＶ部１２、温度センサ１４、またはＥＥＰＲＯＭ１５）を特定し、その制御対象のデバイスに接続されているバス（制御バス１７ａまたは１７ｂ）を介して、特定した制御対象のデバイスを制御する。
【００３３】
これを受けて、制御対象のデバイスは、制御信号に対する応答を行い、その応答結果（アクセス完了通知およびリードアクセス時のリード値）を示す応答信号を多重／分離部７１に出力する。
【００３４】
多重／分離部７１は、制御対象のデバイスから出力された応答信号を伝送路３０ａを介してプロトコル処理部２０に送信する。ここで、上述したように、伝送路３０ａにはデータパケットが送信されているため、多重／分離部７１は、データパケットを送信しない時間を利用して応答信号を多重化し、伝送路３０ａに送信する。
【００３５】
多重／分離部２１にて受信された応答信号は、制御バス２８ａを介してＰｒｏｃ部２６に出力され、それにより、一連の制御信号の処理が終了する。
【特許文献１】特開２００１−６１１８２号公報
【発明の開示】
【発明が解決しようとする課題】
【００３６】
上述したように図６に示した従来の通信装置においては、物理回線収容部７０とプロトコル処理部２０との間で制御信号または応答信号を送信する場合、データパケットの送信を妨げないために、データパケットが送信されていない時間を利用して制御信号または応答信号の送信を行っている。
【００３７】
したがって、制御信号または応答信号の送信は、データパケットの送信が完了するまで待たなければならず、特に、データパケットのパケット長が長い場合には送信待ち時間が長くなる。
【００３８】
そのため、プロトコル処理部２０における制御信号の送信処理または物理回線収容部７０における制御信号の応答処理の時間が長くなり、制御信号の全体の処理時間が長くなってしまうという課題がある。
【００３９】
ここで、物理回線収容部７０における制御信号の応答処理時間が長くなることについて図７を参照して説明する。
【００４０】
図７は、図６に示した多重／分離部７１にて制御信号の応答処理を行う場合の動作の一例を説明する図である。
【００４１】
図７を参照すると、図中上部のＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）部７１０は、多重／分離部７１の内部に設けられたＦＩＦＯ部である。ＦＩＦＯ部７１０は、ＭＡＣ部１３に隣接して設けられ、ＭＡＣ部１３から出力されたデータパケット７１１〜７１５を一時的に格納し出力する。データパケット７１１〜７１５に付された数値は、論理チャネル番号を示している。ここで、論理チャネル番号とは、複数の物理回線４０ごとに一意に割り当てられた識別番号であり、データパケット７１１〜７１５の送信元の判定に使用される。データパケット７１１〜７１５の図中横方向の長さは、パケット長に応じた長さになっており、データパケット７１１のパケット長が最短で、データパケット７１５のパケット長が最長であることを示している。また、ＦＩＦＯ部７１０において、図中右方向がデータパケットの先頭を表しており、ＭＡＣ部１３から出力されたデータパケットは先頭方向から順次格納される。また、ＦＩＦＯ部７１０の先頭のデータパケットから順番に応答信号と多重化された上で逐次プロトコル処理部２０へ送信される。
【００４２】
また、図中下部の時系列７２０は、ＦＩＦＯ部７１０に格納されたデータパケット７１１〜７１５の送信状況を時系列で表したものであり、図中右方向から左方向に向けて時間が経過することを示している。すなわち、論理チャネル番号が０のデータパケット７１１を送信した後に、論理チャネル番号が１のデータパケット７１２を送信し、以降、データパケット７１３，７１４，７１５を順次送信することを示している。
【００４３】
ここで、多重／分離部７１は、プロトコル処理部２０から制御信号であるｃｍｄ７２１を受信した場合、ｃｍｄ７２１に基づき制御対象のデバイスを制御する。これを受けて、制御対象のデバイスからはｃｍｄ７２１に対する応答処理であるｄｅｖ処理７２２の完了後、その応答結果を示す応答信号であるａｃｋ７２３が出力される。
【００４４】
しかし、ｄｅｖ処理７２２が完了した時点では、論理チャネル番号が２のデータパケット７１３が送信中である。そのため、多重／分離部７１は、データパケット７１３の送信が完了するまで、ａｃｋ７２３の送信を待たなければならず、そのためにａｃｋ７２３の送信待ち時間７２４が発生する。
【００４５】
すなわち、送信待ち時間７２４は送信中のデータパケットのパケット長に応じたランダムな時間となり、パケット長によっては送信待ち時間７２４が増大し、制御信号に対する応答時間が増大してしまう。
【００４６】
そこで、本発明の目的は、特に制御信号に対する応答処理時間を削減することにより、制御信号の全体の処理時間を削減することができる通信装置および信号伝送方法を提供することにある。
【課題を解決するための手段】
【００４７】
上記目的を達成するために本発明は、
主信号に制御信号を多重化して送信する第１の伝送部と、前記第１の伝送部から受信した制御信号に対する応答信号を主信号に多重化して前記第１の伝送部に送信する第２の伝送部とを有してなる通信装置において、
前記第２の伝送部は、
前記第１の伝送部から受信した制御信号を主信号から分離して出力する分離部と、
前記分離部から出力された制御信号に対する応答を行い、該応答結果を前記応答信号として出力する複数のデバイスと、
前記複数のデバイスごとに、当該デバイスにおける前記制御信号に対する応答時間の予測値を示す予測応答時間を格納するテーブルと、
前記分離部から出力された制御信号に基づいて前記複数のデバイスの中から制御対象のデバイスを特定するデバイス特定部と、
前記デバイス特定部にて特定された制御対象のデバイスにおける前記予測応答時間を前記テーブルから取得するテーブル管理部と、
前記第１の伝送部に送信する主信号を一時的に格納し出力するＦＩＦＯ部と、
前記テーブル管理部にて取得された予測応答時間が経過した時点で前記ＦＩＦＯ部から主信号が出力されないように前記ＦＩＦＯ部に格納された主信号の出力順序を入れ替える制御部と、
前記ＦＩＦＯ部から出力された主信号に制御対象のデバイスから出力された応答信号を多重化して前記第１の伝送部に送信する多重化部とを有することを特徴とする。
【００４８】
この構成によれば、予測応答時間が経過し、制御対象のデバイスから応答信号が出力された時点では、ＦＩＦＯ部から主信号が出力されていないため、主信号の送信が行われていない状態である。そのため、制御対象のデバイスから出力された応答信号を、主信号の送信が完了するのを待つことなく、すぐに送信することができるため、応答信号の送信待ち時間を最小にすることができる。
【００４９】
なお、前記デバイスにおける前記制御信号に対する応答時間が、当該デバイスのどのアドレス領域を使用して応答を行ったかに応じて異なる場合、
前記テーブルは、前記デバイスの応答時間が異なるアドレス領域ごとに、当該アドレス領域を使用して応答を行う場合における前記予測応答時間を格納し、
前記デバイス特定部は、前記制御信号に基づいて制御対象のデバイスとともに当該制御対象のデバイスのアドレス領域も特定し、
前記テーブル管理部は、前記デバイス特定部にて特定された制御対象のデバイスのアドレス領域を使用して応答を行う場合における前記予測応答時間を取得するのが好ましい。
【００５０】
この構成によれば、デバイスに応答時間が異なるアドレス領域が存在する場合にも、応答時間が異なるアドレス領域ごとの予測応答時間を取得することができる。
【００５１】
また、前記テーブルは、前記予測応答時間が予め格納され、
前記テーブル管理部は、前記デバイスにおける前記制御信号に対する実際の応答時間を計測し、前記テーブルに予め格納された予測応答時間の内容を実際の応答時間に更新するのが好ましい。
【００５２】
この構成によれば、テーブルの予測応答時間を実際の応答時間に更新することで、予測応答時間の精度を高めることができる。
【００５３】
また、前記第１の伝送部と前記第２の伝送部との組を複数組有し、
前記第１の伝送部は、複数の物理回線を収容し、前記複数の物理回線から受信した主信号を前記第２の伝送部に送信するとともに、前記第２の伝送部から受信した主信号を前記複数の物理回線に送信する物理回線収容部であり、
前記第２の伝送部は、前記第１の伝送部から受信した主信号を他の第２の伝送部または前記第１の伝送部に送信する交換処理を行うとともに、他の第２の伝送部から受信した主信号を前記第１の伝送部に送信するプロトコル処理部であるのが好ましい。
【発明の効果】
【００５４】
以上説明したように本発明によれば、制御部は、制御対象のデバイスに対する制御信号が受信されると、制御対象のデバイスにおける制御信号に対する応答時間の予測値を示す予測応答時間が経過した時点でＦＩＦＯ部から主信号が出力されないように制御を行う構成としている。
【００５５】
したがって、予測応答時間が経過し、制御対象のデバイスから応答信号が出力された時点では、ＦＩＦＯ部から主信号が出力されていないため、主信号の送信が行われていない状態である。よって、制御対象のデバイスから出力された応答信号を、主信号の送信が完了するのを待つことなく、すぐに送信することができるため、応答信号の送信待ち時間を最小にすることができ、それにより、制御信号の処理時間を全体として削減することができるという効果が得られる。
【発明を実施するための最良の形態】
【００５６】
以下に、本発明を実施するための最良の形態について図面を参照して説明する。
【００５７】
図１は、本発明の一実施形態の通信装置の構成を示す図である。
【００５８】
図１を参照すると、本実施形態の通信装置は、図６に示した従来構成と比較して、物理回線収容部７０の代わりに、物理回線収容部１０を設けた点が異なる。物理回線収容部１０が物理回線収容部７０と異なる点は、多重／分離部７１の代わりに多重／分離部１１を設けた点にある。これ以外の構成要素は図６に示した従来構成と同様であるため、同一の符号を付し、詳細な説明を省略する。なお、プロトコル処理部２０が第１の伝送部を構成し、物理回線収容部１０が第２の伝送部を構成する。
【００５９】
本発明の特徴部分となる多重／分離部１１は、図６に示した多重／分離部７１と同一の機能を備える他、プロトコル処理部２０に応答信号を送信する際に、ＦＩＦＯ部１１１（図２参照）に格納されたデータパケットの出力順序を論理チャネル単位で入れ替え、それにより、応答信号の送信待ち時間を最小にする機能を備える。
【００６０】
以下、本発明の特徴部分となる多重／分離部１１について詳細に説明する。
【００６１】
図２は、図１に示した多重／分離部１１の一構成例を示す図である。
【００６２】
図２を参照すると、多重／分離部１１は、ＦＩＦＯ部１１１と、ＦＩＦＯ制御部１１２と、多重化部１１３と、物理条件変換部１１４と、分離部１１５と、デバイス特定部であるアドレスデコード部１１６と、バスマスター部１１７と、応答時間予測テーブル１１８と、テーブル管理部１１９とを有している。
【００６３】
ＦＩＦＯ部１１１は、ＭＡＣ部１３から出力されたデータパケットを一時的に格納し出力する。ここで、ＦＩＦＯ部１１１にてデータパケットを一時的に格納するのは、データパケットの速度揺らぎを吸収するためと、論理チャネル単位でのデータパケットの出力順序の入れ替えを実行するためである。
【００６４】
なお、ＦＩＦＯ部１１１は、後述のようにＦＩＦＯ制御部１１２から順序入替信号が出力された場合は、その順序入替信号に基づいてデータパケットの出力順序を入れ替えた上で多重化部１１３へデータパケットを出力するが、ＦＩＦＯ制御部１１２から順序入替信号が出力されない場合は、先頭のデータパケットから順番に多重化部１１３へデータパケットを出力する。
【００６５】
多重化部１１３は、ＦＩＦＯ部１１１から出力されたデータパケットに、後述するバスマスター部１１７から出力された応答信号（制御信号に対する応答結果を示す命令列）を多重化し、物理条件変換部１１４に出力する。なお、多重化部１１３は、ＦＩＦＯ部１１１から出力されたデータパケットを優先して送信し、バスマスター部１１７から出力された応答信号についてはデータパケットの送信完了後に送信するものとする。
【００６６】
物理条件変換部１１４は、伝送媒体の本数を節約するためまたはパッケージ間通信に最適な信号種別とするためにデータパケットと応答信号の物理条件を変換するインタフェースであり、多重化部１１３から出力されたデータパケットと応答信号を伝送路３０ａを介してプロトコル処理部２０へ送信するとともに、プロトコル処理部２０から伝送路３０ｂを介してデータパケットと制御信号（物理回線収容部１０内のデバイスを制御するための命令列）を受信し、分離部１１５へ出力する。
【００６７】
分離部１１５は、物理条件変換部１１４から出力されたデータパケットと制御信号とを分離し、データパケットをＭＡＣ部１３へ出力し、制御信号をアドレスデコード部１１６に出力する。
【００６８】
アドレスデコード部１１６は、分離部１１５から出力された制御信号に含まれるアドレス情報を基にして後述するアドレスデコードテーブルを検索することにより、物理回線収容部１０内のデバイスの中から制御信号が制御対象とするデバイスとそのアドレス領域を特定し、制御対象とするデバイスとそのアドレス領域の情報をテーブル管理部１１９およびバスマスター部１１７へ出力する。ここで出力する情報は、制御対象のデバイスの識別子であるデバイス識別子、そのデバイスのアドレス領域の識別子であるサブデバイス識別子、デバイス内アドレス空間情報、制御データ（ライト値）などである。なお、デバイス識別子、サブデバイス識別子、デバイス内アドレス空間情報は、後述の図４および図５の説明箇所で詳細に述べる。
【００６９】
バスマスター部１１７は、アドレスデコード部１１６から出力された情報に基づいて、高速な制御バス１７ａまたは低速な制御バス１７ｂのいずれかを駆動し、制御対象のデバイス（ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、またはＥＥＰＲＯＭ１５）を制御する。
【００７０】
また、バスマスター部１１７は、制御対象のデバイスから出力された、制御信号に対する応答結果（アクセス完了通知およびリードアクセス時のリード値）を示す応答信号が入力される。この応答信号は、制御対象のデバイスのアドレス領域ごとに異なるタイミングでバスマスター部１１７に入力されることになる。
【００７１】
ここで、応答信号は、多重化部１１３にてデータパケットを送信する合間に多重化され、物理条件変換部１１４から伝送路３０ａを介してプロトコル処理部２０に送信される。
【００７２】
テーブル管理部１１９は、アドレスデコード部１１６から出力された情報を基にして応答時間予測テーブル１１８を検索し、制御対象のデバイスのアドレス領域を使用した場合の制御信号に対する応答時間の予測値を示す予測応答時間を取得し、その予測応答時間をＦＩＦＯ制御部１１２に出力する。ここで、応答時間とは、多重／分離部１１から制御対象のデバイスに制御信号を出力してから、制御対象のデバイスからの応答信号が多重／分離部１１に返却されるまでの時間を示している。なお、応答時間予測テーブル１１８は、デバイスのアドレス領域ごとに予測応答時間を格納するテーブルであるが、その内容は後述の図５の説明箇所で詳細に述べる。
【００７３】
ＦＩＦＯ制御部１１２は、ＦＩＦＯ部１１１に格納されているデータパケットの論理チャネル番号とパケット長とを常時監視し、不図示の内部テーブルに保持する。また、テーブル管理部１１９から出力された予測応答時間が経過した直後のタイミングで応答信号を送信するためのタイムスロットを確保する。仮に、予測応答時間が経過した時点でＦＩＦＯ部１１１からデータパケットが出力されていると、後段の多重化部１１３ではデータパケットを優先して送信するため、予測応答時間の経過後に制御対象のデバイスから応答信号が返却されたとしても、その応答信号を送信するのはデータパケットの送信完了後となり、結局、送信待ち時間が発生してしまう。そのため、予測応答時間が経過した時点でＦＩＦＯ部１１１からデータパケットが出力されないようにして、タイムスロットにデータパケットが重畳することを防止するために、タイムスロットに到達するまでの時間を、内部テーブルに保持された各論理チャネルのデータパケットのパケット長と比較する。ここで、パケット長の比較をするのは、各論理チャネルの先頭のデータパケットのみである。比較の結果、タイムスロットに到達するまでの時間よりもパケット長が短いデータパケットがある場合は、そのデータパケットを先に出力することとしてデータパケットの出力順序を論理チャネル単位で入れ替えることに決定する。そして、データパケットの出力順序を入れ替えることを示す順序入替信号をＦＩＦＯ部１１１へ出力する。
【００７４】
ＦＩＦＯ部１１１は、ＦＩＦＯ制御部１１２から出力された順序入替信号に基づいて論理チャネル単位でデータパケットの出力順序を入れ替えた上で、多重化部１１３にデータパケットを出力する。
【００７５】
これにより、制御対象のデバイスから多重／分離部１１に返却された応答信号は、その直後に多重化部１１３にてデータパケットに多重化され、物理条件変換部１１４からプロトコル処理部２０へ送信されるため、応答信号の送信待ち時間を最小にすることができる。
【００７６】
図３は、図２に示した多重／分離部１１にて制御信号の応答処理を行う場合の動作の一例を説明する図である。
【００７７】
図３を参照すると、図中上部には多重／分離部１１内のＦＩＦＯ部１１１が示され、図中下部には時系列３２０が示されている。なお、ＦＩＦＯ部１１１の動作やＦＩＦＯ部１１１に格納されたデータパケットの内容、時系列３２０の時間方向などは、図７に示したものと同様であるため、説明を省略する。
【００７８】
ここで、プロトコル処理部２０からの制御信号であるｃｍｄ３２１が物理条件変換部１１４にて受信された場合、分離部１１５は、ｃｍｄ３２１をデータパケットから分離し、アドレスデコード部１１６は、ｃｍｄ３２１が制御対象とするデバイスとそのデバイスのアドレス領域を特定し、バスマスター部１１７は、ｃｍｄ３２１に基づき制御対象のデバイスを制御する。これを受けて、制御対象のデバイスからはｃｍｄ３２１に対する応答処理であるｄｅｖ処理３２２の完了後、その応答結果を示す応答信号であるａｃｋ３２３がバスマスター部１１７に返却される。
【００７９】
一方、テーブル管理部１１９は、制御対象のデバイスのアドレス領域を使用した場合の予測応答時間を応答時間予測テーブル１１８から取得し、ＦＩＦＯ制御部１１２は、予測応答時間が経過した直後にａｃｋ３２３をプロトコル処理部２０に送信するためのタイムスロット３２４を確保する。
【００８０】
ここで、ＦＩＦＯ部１１１に格納されたデータパケット３１１〜３１５を先頭から順番に出力すると、予測応答時間が経過した時点では論理チャネル番号が２のデータパケット３１３が出力されているため、そのデータパケット３１３がタイムスロット３２４に重畳してしまうことになる。そのため、ＦＩＦＯ制御部１１２は、予測応答時間が経過した時点でＦＩＦＯ部１１１からデータパケットが出力されないように、論理チャネル番号が３のデータパケット３１４を先に出力することに決定する。すなわち、論理チャネル番号が２のデータパケット３１３と論理チャネル番号が３のデータパケット３１４の出力順序を入れ替えることを決定する。なお、データパケット３１４を出力した直後にデータパケット３１３を出力すると、多重化部１１３ではａｃｋ３２３よりもデータパケット３１３を優先して送信してしまうため、データパケット３１４を送信してから間をおいてデータパケット３１３を出力するよう出力タイミングを制御することも行う。
【００８１】
よって、多重化部１１３は、データパケット３１１，３１２を送信した後、データパケット３１４、ａｃｋ３２３、データパケット３１３の順番で送信を行うことになる。
【００８２】
これにより、ａｃｋ３２３は、多重／分離部１１に到着した直後のタイミングで、多重化部１１３から物理条件変換部１１４を介してプロトコル処理部２０へ送信されるため、ａｃｋ３２３の送信待ち時間を最小にすることができる。
【００８３】
ここで、アドレスデコード部１１６と応答時間予測テーブル１１８について詳細に説明する。
【００８４】
図４は、図２に示したアドレスデコード部１１６の一構成例を説明する図である。
【００８５】
図４を参照すると、図中右部にはアドレスデコード部１１６内に設けられたアドレスデコードテーブル４１０が示され、図中左部には物理回線収容部１０内の４個のデバイス（ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、およびＥＥＰＲＯＭ１５）のそれぞれのアドレス空間４２０が示されている。
【００８６】
本通信装置では、４個のデバイスには、それぞれ異なるアドレス空間が割り当てられている。図中のｄｅｖ（ＣＳ）は、各デバイスを識別するデバイス識別子を示している。
【００８７】
そのため、アドレスデコードテーブル４１０は、４個のデバイスのアドレス空間にそれぞれ対応する４個のアクセスウィンドウが、アドレス空間のＬｏｗ側からＨｉｇｈ側に向けて重複することなく設定されている。ここで、アクセスウィンドウとは、対応するデバイスが制御対象となることを示すアドレス空間のことであり、通常は、対応するデバイスのアドレス空間と同一のアドレス値が設定されている。なお、各アクセスウィンドウのサイズおよび先頭アドレスは、ユーザにより予め設定されるものである。
【００８８】
また、４個のデバイスは、制御信号に対する応答時に、応答時間が異なるアドレス領域（サブブロック）が存在する場合がある。図中のｓｕｂＣＳは、各アドレス領域を識別するサブデバイス識別子を示している。
【００８９】
そのため、アドレスデコードテーブル４１０は、アクセスウィンドウが、対応するデバイスの応答時間が異なるアドレス領域にそれぞれ対応するサブデバイス識別子領域（スペース）に分割されている。サブデバイス識別子領域は、通常は、対応するアドレス領域と同一のアドレス値が設定されている。なお、各サブデバイス識別子領域のサイズおよび先頭アドレスは、ユーザにより予め設定されるものである。ただし、デバイス内部で応答時間が一定の場合はアクセスウィンドウを分割する必要はなく、デバイス内部で応答時間が異なるアドレス領域が存在する場合にのみアクセスウィンドウを分割すれば良い。
【００９０】
アドレスデコード部１１６は、上述のように、プロトコル処理部２０内のＰｒｏｃ部２６にて発生した制御信号に含まれるアドレス情報を基にして上記のアドレスデコードテーブル４１０を検索することにより、制御対象のデバイスとそのデバイスのアドレス領域を特定することができる。
【００９１】
図５は、図２に示した応答時間予測テーブル１１８の一構成例を説明する図である。
【００９２】
図５を参照すると、応答時間予測テーブル１１８は、デバイス識別子５１０およびサブデバイス識別子５２０に応じて、予測応答時間５３０が一意に決定されるテーブルである。
【００９３】
デバイス識別子５１０は、物理回線収容部１０内の４個のデバイス（ＴＲＣＶ部１２、ＭＡＣ部１３、温度センサ１４、およびＥＥＰＲＯＭ１５）を識別する識別子である。
【００９４】
サブデバイス識別子５２０は、４個のデバイスのそれぞれの内部のアドレス領域を識別する識別子である。
【００９５】
予測応答時間５３０は、制御信号に対する応答時に、デバイス識別子５１０で表されるデバイスにおいて、サブデバイス識別子５２０で表されるアドレス領域を使用して応答を行う場合の応答時間の予測値である。
【００９６】
テーブル管理部１１９は、制御対象のデバイスのデバイス識別子の情報とそのデバイスのアドレス領域のサブデバイス識別子の情報がアドレスデコード部１１６から出力されると、そのデバイス識別子とサブデバイス識別子に基づき応答時間予測テーブル１１８から予測応答時間を取得する。
【００９７】
図５において、デバイス識別子５１０が“０ｘ００”のデバイスにおいて、サブデバイス識別子５２０が“０ｘ００”のアドレス領域を使用する場合の予測応答時間５３０は“０ｘ００１０ｃｌｏｃｋ”であり、また、デバイス識別子５１０が“０ｘ００”のデバイスにおいて、サブデバイス識別子５２０が“０ｘ０１”のアドレス領域を使用する場合の予測応答時間５３０は“０ｘ００１５ｃｌｏｃｋ”である。なお、図中の数値は、本通信装置の動作クロック数の倍数を表している。
【００９８】
ここで、予測応答時間５３０は、本通信装置の動作クロック等に応じてユーザにより予め設定されるものであるが、テーブル管理部１１９が実際の応答時間を自動計測し、予測応答時間５３０の内容を実際の応答時間に更新することもできる。
【００９９】
例えば、デバイス識別子５１０が“０ｘ００”のデバイスにおいて、サブデバイス識別子５２０が“０ｘ００”のアドレス領域を使用する場合の予測応答時間５３０は“０ｘ００１０ｃｌｏｃｋ”であるが、実際の応答時間が“０ｘ０００５ｃｌｏｃｋ”であった場合、応答時間予測テーブル１１８の予測応答時間５３０の内容を更新し、“０ｘ０００５ｃｌｏｃｋ”を次回の予測応答時間として使用する。
【０１００】
これにより、応答時間予測テーブル１１８の予測応答時間５３０の精度を高めることができるだけでなく、ユーザが予め予測応答時間５３０を設定していない場合に、応答時間予測テーブル１１８を自律生成させて実際の使用環境に適合させることができる。また、本通信装置の試験時などに、ユーザが応答時間予測テーブル１１８を自律生成させた後、その応答時間予測テーブル１１８を収集し、本通信装置の本格運用時に、収集した内容を応答時間予測テーブル１１８に設定することにより、本格運用時における応答時間予測テーブル１１８の自律生成によるタイムラグを減少させることができる。
【図面の簡単な説明】
【０１０１】
【図１】本発明の一実施形態の通信装置の構成を示す図である。
【図２】図１に示した多重／分離部の一構成例を示す図である。
【図３】図２に示した多重／分離部にて制御信号の応答処理を行う場合の動作の一例を説明する図である。
【図４】図２に示したアドレスデコード部の一構成例を説明する図である。
【図５】図２に示した応答時間予測テーブルの一構成例を説明する図である。
【図６】従来の通信装置の一構成例を示す図である。
【図７】図６に示した多重／分離部にて制御信号の応答処理を行う場合の動作の一例を説明する図である。
【符号の説明】
【０１０２】
１０    物理回線収容部
１１    多重／分離部
１２    ＴＲＣＶ部
１３    ＭＡＣ部
１４    温度センサ
１５    ＥＥＰＲＯＭ
２０    プロトコル処理部
２１    多重／分離部
２２    ＮＰ部
２３    ＦＡＰ部
２４    温度センサ
２５    ＥＥＰＲＯＭ
２６    Ｐｒｏｃ部
【図１】
0004681467.tif 000002
【図２】
0004681467.tif 000003
【図３】
0004681467.tif 000004
【図４】
0004681467.tif 000005
【図５】
0004681467.tif 000006
【図６】
0004681467.tif 000007
【図７】
0004681467.tif 000008