(57)【要約】【課題】転送装置通過時間を含む通過時間メッセージを生成することができるネットワーク転送装置を提供する。【解決手段】第１と第２サブネットの間でパケットを転送する転送手段と、前記パケットおよび関連のメッセージを見る第１アクセス手段と、前記第１アクセス手段に着信するタイミングデータパケットを検出し第１認識信号を生成する第１タイミングパケット検出器と、前記パケットおよび関連のメッセージを見る第２アクセス手段と、前記第２アクセス手段から発信される前記タイミングデータパケットを検出し第２認識信号を生成する第２タイミングパケット検出器と、前記第１および第２認識信号にしたがって前記タイミングデータパケットのローカル着信時間およびローカル発信時間を記録する転送装置時間サーバと、ローカル着信時間とローカル発信時間から転送装置通過時間を計算し、前記通過時間を含む通過時間メッセージを生成する計算手段とからなる。【選択図】図１１
2006101539.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークの第１および第２のサブネットの間でパケットおよび関連のメッセージを転送するネットワーク転送装置であって、
転送装置クロックと、
前記第１および第２のサブネットの間でローカル送信時間および関連のメッセージを有するパケットを転送するための、前記第１および第２のサブネットの間に接続された転送手段と、
ローカル送信時間が対応する関連のメッセージ内に含まれている前記パケットおよび関連のメッセージを見るための、前記第１のサブネットに接続された第１の転送ローカル媒体アクセス手段と、
前記第１の転送ローカル媒体アクセス手段に接続し、前記パケットの着信および発信を検出し、前記第１の転送ローカル媒体アクセス手段に着信するタイミングデータパケットを検出して第１の認識信号を生成する第１のタイミングパケット検出器と、
前記第２のサブネットに接続し、前記パケットおよび関連のメッセージを見るための第２の転送ローカル媒体アクセス手段と、
前記第２の転送ローカル媒体アクセス手段に接続し、前記パケットの着信および発信を検出し、前記第２の転送ローカル媒体アクセス手段から発信される前記タイミングデータパケットを検出して第２の認識信号を生成する第２のタイミングパケット検出器と、
前記転送装置クロックと前記第１および第２のタイミングパケット検出器とに接続し、前記第１および第２の認識信号にしたがって前記タイミングデータパケットのローカル着信時間およびローカル発信時間を記録する転送装置時間サーバと、
前記転送装置時間サーバに接続し、ローカル着信時間およびローカル発信時間から転送装置通過時間を計算し、前記通過時間を含む通過時間メッセージを生成する計算手段とからなるネットワーク転送装置。
【請求項２】
ネットワークの第１および第２のサブネットの間でパケットおよび関連のメッセージを転送するネットワーク転送装置であって、
転送装置クロックと、
前記第１および第２のサブネットの間に接続し、前記第１および第２のサブネットの間でパケットを転送するための転送手段と、
前記第１のサブネットに接続し、ローカル送信時間を有する前記パケットおよび関連のメッセージを見るための第１の転送ローカル媒体アクセス手段と、
前記第１の転送ローカル媒体アクセス手段に接続し、ローカル送信時間が対応する関連のメッセージ内に含まれている前記パケットの発信を検出し、前記第１の転送ローカル媒体アクセス手段から発信される第１の転送タイミングデータパケットを検出して第１の転送認識信号を生成する第１の転送装置タイミングパケット検出器と、
前記第２のサブネットに接続し、前記パケットおよび関連のメッセージを見るための第２の転送ローカル媒体アクセス手段と、
前記第２の転送ローカル媒体アクセス手段に接続し、前記パケットの発信を検出し、前記第２の転送ローカル媒体アクセス手段から発信される第２の転送タイミングデータパケットを検出して第２の転送認識信号を生成する第２の転送装置タイミングパケット検出器と、
前記転送装置クロックに接続し、パケットと関連のメッセージを生成し、前記第１および第２の転送認識信号を受け取り、前記第１の転送タイミングデータパケットのローカル発信時間と前記第２の転送タイミングデータパケットのローカル発信時間とを記録する転送装置時間サーバと、
前記転送装置時間サーバに接続し、前記第１の転送タイミングデータパケットの前記ローカル発信時間を含む第１の転送同期メッセージと前記第２の転送タイミングデータパケットの前記ローカル発信時間を含む第２の転送同期メッセージとを生成する計算手段とからなるネットワーク転送装置。
【請求項３】
前記第２のノードからの前記第２のタイミングデータパケットおよび前記第２の時間同期メッセージを受け取り、前記第１のノードからの前記第１のタイミングデータパケットおよび前記第１の時間同期メッセージを受け取る前記転送装置と、
前記第１のノードと前記転送装置の間の第１のサブネット伝播遅延と前記第２のノードと前記転送装置の間の第２のサブネット伝播遅延とを判定する前記転送装置の前記計算手段とを有する請求項２に記載のネットワーク転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はリアルタイムアプリケーションのための疎結合された分散型システムに関する。かかるシステムはシリアル通信のための通信媒体と多数のノードからなる。各ノードは事象認識装置を有し、またローカルリアルタイムクロックを有するものが多い。本発明はより詳細には事象認識装置を用いてノード間で送出されるメッセージの時間遅延と時間変動を補償する方法に関する。
【背景技術】
【０００２】
多くの測定および制御アプリケーションにおいて、システムのいくつかの分散した位置（ノード）における事象の正確な時間制御が必要とされる。たとえば、発電所、機体試験施設、大型の工業処理施設といった大規模システムの測定と制御においては、システムの重要な部分でさまざまな測定が行なわれ、これがシステムの制御に用いられる。かかるシステムが正常に動作するためには、測定が行なわれた時間を正確に知ること、また既知の時間に制御を行なうことが必要である。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
それぞれのノードがローカルクロックを有する分散型システムにおいて正確な時間の提供には二つの側面がある。一つは、共鳴であり、これは各ノードのローカルクロックを同じ速度にすることでる。もう一つは同期であり、これはある瞬間の各ローカルクロックからの時間値が同じになるようにすることである。同期が不正確になる場合、共鳴が維持できないこと、および各クロックのローカルな時間値のセットあるいはリセットが不正確であるといった原因がある。ローカルクロックの同期が失われる原因としては、各クロックを駆動する発振器の基本周波数の相違やドリフトがある。
【０００４】
同期と共鳴を必要とするシステムでは、それぞれのローカルクロックは特定の事象のローカルな時間を認識し、各ノードがメッセージをやりとりしてかかる時間を報告する。ノード間の好適な通信プロトコルとして、イーサネット等のパケット型シリアルプロトコル、IEEE 802.5等のトークンリング、あるいはLonTalk（TM Echelon）等がある。それぞれのノードでは、かかるプロトコルはそのノードのプロトコルスタックとオペレーティングシステムによって実行される。メッセージの交換によるクロック同期の精度はそれぞれのノードのプロトコルスタックとオペレーティングシステムによって発生する時間変動によって制約される。さらに、ノード間でのメッセージの待ち時間すなわち伝播遅延の問題がある。時間変動や遅延の発生原因としてはローカルなプロトコルスタックおよびオペレーティングシステムの他にも、ゲートウェイ、ブリッジ、ルータ等の他のネットワーク構成要素や物理的通信媒体が考えられる。
【０００５】
ノード間の時間変動や待ち時間を管理する方法の一つに、さまざまなノード間で専用の校正されたトリガ線を用いてクロック、測定、あるいは制御を同期させるという方法がある。専用の校正されたトリガ線は非常に高い精度を可能にするものであるが、ノード数が増えた場合システムはすぐに管理不能になり、またコストも高くなってしまう。IEEE 488等の制御バスあるいはイーサネット等のシリアルプロトコルを用いて中央コントローラから各ノードにコマンドを送ることによって所望の事象を制御する方法もある。標準プロトコルを用いることによってシステムは管理しやすくなるが、時間的精度は低下する。
【０００６】
米国特許第4,866,606 号にコペッツ（Kopetz）が開示する方法は、それぞれのノードに専用の時間出力を有する専用の同期ユニットを追加するというものである。それぞれの同期ユニットはローカルクロックに接続される。それぞれのローカルクロックはそのノードの通信ユニットを介して分散型ネットワーク内の各ノードと通信して大域的な同期時間信号を供給する。送信側のローカル時間を含むメッセージが同期ユニットによってネットワーク上に同報される。かかるメッセージから、受信側ではそのローカルクロックに適用すべき補正率を計算する。図１２にこのシステムを示す。しかし、図１２に示すように、この技術はオペレーションシステムの影響を除去することはできるが、通信システムのプロトコルの時間変動や待ち時間を除去することはできない。マイクロプロセッサで同期ユニットを構成する場合、そのマイクロプロセッサのオペレーティングシステムあるいは割り込み動作によってマイクロプロセッサ自体の時間変動が生じる場合がある。また、このシステムでは同期ユニット自体の未知の待ち時間が発生する。コペッツが説明しているように、同期ユニットが受信されたメッセージをすべて処理しなければならず、これによって時間変動の問題はより管理しにくいものになる。
【０００７】
英国特許第2,254,455A号にホスグッド（Hosgood ）が開示する方法では、専用の“時間バス”が追加される。図１３に示すように、それぞれのノードは時間発生器、時間バス、および２つのスナップショットレジスタＳＳＲを有する。この時間バス上でローカル時刻が連続的に出力される。この方法はオペレーティングシステムの時間変動や遅延を除去することはできるが、プロトコルスタックの時間変動および遅延の問題を解決することはできない。送信側ノードが送信側ノードの通信モジュールにメッセージを出すローカル時間はわかっているが、ノードとタイミングバスの間の通信パスの伝播遅延と関係する各ノードのプロトコルスタックの時間変動が異なる可能性があるため、受信側ノードではメッセージが実際にいつ送出されたかがわからない。コペッツの場合と同様に、同期ユニットは受信したメッセージのすべてを処理し、そのために時間変動の管理の困難さが増してしまう。
【０００８】
従来の問題点を解決するには、分散型システムの各ノードが、通信システムの時間変動と待ち時間が最小限になるような効率的で低コストな方法で自己のローカルクロックの共鳴と同期を維持することが有効である。さらに、システム全体に共鳴および同期の能力があることが有効である。
【課題を解決するための手段】
【０００９】
（１）  ネットワークの第１および第２のサブネットの間でパケットおよび関連のメッセージを転送するネットワーク転送装置であって、転送装置クロックと、前記第１および第２のサブネットの間でローカル送信時間および関連のメッセージを有するパケットを転送するための、前記第１および第２のサブネットの間に接続された転送手段と、ローカル送信時間が対応する関連のメッセージ内に含まれている前記パケットおよび関連のメッセージを見るための、前記第１のサブネットに接続された第１の転送ローカル媒体アクセス手段と、前記第１の転送ローカル媒体アクセス手段に接続し、前記パケットの着信および発信を検出し、前記第１の転送ローカル媒体アクセス手段に着信するタイミングデータパケットを検出して第１の認識信号を生成する第１のタイミングパケット検出器と、前記第２のサブネットに接続し、前記パケットおよび関連のメッセージを見るための第２の転送ローカル媒体アクセス手段と、前記第２の転送ローカル媒体アクセス手段に接続し、前記パケットの着信および発信を検出し、前記第２の転送ローカル媒体アクセス手段から発信される前記タイミングデータパケットを検出して第２の認識信号を生成する第２のタイミングパケット検出器と、前記転送装置クロックと前記第１および第２のタイミングパケット検出器とに接続し、前記第１および第２の認識信号にしたがって前記タイミングデータパケットのローカル着信時間およびローカル発信時間を記録する転送装置時間サーバと、前記転送装置時間サーバに接続し、ローカル着信時間およびローカル発信時間から転送装置通過時間を計算し、前記通過時間を含む通過時間メッセージを生成する計算手段とからなる。
【００１０】
（２）  ネットワークの第１および第２のサブネットの間でパケットおよび関連のメッセージを転送するネットワーク転送装置であって、転送装置クロックと、前記第１および第２のサブネットの間に接続し、前記第１および第２のサブネットの間でパケットを転送するための転送手段と、前記第１のサブネットに接続し、ローカル送信時間を有する前記パケットおよび関連のメッセージを見るための第１の転送ローカル媒体アクセス手段と、前記第１の転送ローカル媒体アクセス手段に接続し、ローカル送信時間が対応する関連のメッセージ内に含まれている前記パケットの発信を検出し、前記第１の転送ローカル媒体アクセス手段から発信される第１の転送タイミングデータパケットを検出して第１の転送認識信号を生成する第１の転送装置タイミングパケット検出器と、前記第２のサブネットに接続し、前記パケットおよび関連のメッセージを見るための第２の転送ローカル媒体アクセス手段と、前記第２の転送ローカル媒体アクセス手段に接続し、前記パケットの発信を検出し、前記第２の転送ローカル媒体アクセス手段から発信される第２の転送タイミングデータパケットを検出して第２の転送認識信号を生成する第２の転送装置タイミングパケット検出器と、前記転送装置クロックに接続し、パケットと関連のメッセージを生成し、前記第１および第２の転送認識信号を受け取り、前記第１の転送タイミングデータパケットのローカル発信時間と前記第２の転送タイミングデータパケットのローカル発信時間とを記録する転送装置時間サーバと、前記転送装置時間サーバに接続し、前記第１の転送タイミングデータパケットの前記ローカル発信時間を含む第１の転送同期メッセージと前記第２の転送タイミングデータパケットの前記ローカル発信時間を含む第２の転送同期メッセージとを生成する計算手段とからなる。
【００１１】
（３）  上記（２）に記載のネットワーク転送装置において、前記第２のノードからの前記第２のタイミングデータパケットおよび前記第２の時間同期メッセージを受け取り、前記第１のノードからの前記第１のタイミングデータパケットおよび前記第１の時間同期メッセージを受け取る前記転送装置と、前記第１のノードと前記転送装置の間の第１のサブネット伝播遅延と前記第２のノードと前記転送装置の間の第２のサブネット伝播遅延とを判定する前記転送装置の前記計算手段とを有する。
【発明の効果】
【００１２】
以上説明した本発明によれば、転送装置通過時間を含む通過時間メッセージを生成することができる。
【発明を実施するための最良の形態】
【００１３】
疎分散ネットワーク内の任意のノードはクロック同期あるいはクロック共鳴処理を開始することができる。それぞれのノードはタイミングパケット検出器（ＴＰＤ）、時間サービスブロック（ＴＳＢ）、およびローカル媒体アクセスブロック（ＬＭＡ）を有する。ＴＰＤとＴＳＢはタイミングパケットの予定時間あるいは応答時間に対するタイミングパケットの送信あるいは受信のローカル時間を認識する。ＴＰＤは各ノードを出入りするタイミングパケットを検出する。タイミングパケットはコントローラ通信プロトコルに用いられるメッセージのクラス内で指定された具体的なパケットタイプである。検出されたタイミングパケットは受信したノードが同期あるいは事象の実行を行なうのに用いることができる。
【００１４】
あるノードが同期を開始すると、このノードは第１のタイミングパケットを送信し、それに続いてこの第１のタイミングパケットのローカルな送信時間を含む同期メッセージが送信される。受信側のノード（同期すべきノード）は同期メッセージに含まれたローカル送信時間をこの第１のタイミングパケットに対する自己のローカル受信時間と比較する。この結果を用いて分散型ネットワーク内のクロックを同期すなわち共鳴させることができる。
【００１５】
図１は事象のタイミングが重要であるノードのネットワークを示す。第１のノード２は通信媒体４によって第２のノード２’に接続されている。さらに第３のノード２”は通信媒体４に接続されている。それぞれのノードはネットワーク内でのタイミングパケットおよび同期メッセージの送出と応答の両方を行なうことができる。ノードは同じである必要はないが、それぞれのノードがタイミングパケット検出器（ＴＰＤ）を有する。それぞれのＴＰＤは着信タイミングパケットと発信に対して同様に動作する。
【００１６】
図２は図１に示すノード２の機能ブロック図を示す。タイミングパケット検出器（ＴＰＤ）６がローカル媒体アクセスブロック（ＬＭＡ）８と時間サービスブロック（ＴＳＢ）１０に接続されている。ＬＭＡ８はＴＳＢ１０と通信媒体４に接続されている。ＴＳＢ１０とＬＭＡ８はそれぞれ基本ノード機能ブロック１２に接続されている。基本ノード機能ブロック１２は本発明によって提供されるタイミングサービスを利用するアプリケーション機能である。
【００１７】
図３は図２に示すローカル媒体アクセスブロック（ＬＭＡ）８の機能ブロック図を示す。送信器１４が通信媒体４、ビットクロック・データ回復ブロック１６、およびデータ符号化ブロック１８に接続されている。ビットクロック・データ回復ブロック１６は送信器１４、プロトコルスタック２０、およびＴＰＤ６に接続されている。データ符号化ブロック１８はプロトコルスタック２０と送信器１４に接続されている。プロトコルスタック２０はＴＳＢ１０と基本ノード機能ブロック１２に接続されている。ビットクロック・データ回復ブロック１６とプロトコルスタック２０はさらにＴＰＤ６に接続されている。
【００１８】
送信器１４は通信媒体４への物理的アクセスを提供する。ビットクロック・データ回復ブロック１６は送信器１４から生信号を受け取り、ビットクロック信号と着信データビットストリームと同期したデータビットストリームを回復する。この回復処理の時間変動は通常このシステムの時間変動の主要な発生源である。
【００１９】
データ符号化ブロック１８はプロトコルスタック２０から発信パケットを受け取り、これらのパケットを選択されたプロトコルにしたがって変形する。変形されたパケットは送信器１４に受け取られる。ＴＰＤ６は発信パケットと回復された着信パケットをモニタする。
【００２０】
図４は図２に示す時間サービスブロック（ＴＳＢ）の機能ブロック図を示す。ローカルクロック２２が時間制御回路２４、ＴＳＢメモリ２６、およびＴＰＤ６に接続されている。ＴＳＢメモリ２６はさらに時間制御回路２４およびオプションのプロセッサ２８に接続されている。時間制御回路２４はＴＰＤ６とオプションのプロセッサ２８に接続されている。時間制御回路２４は基本ノード機能ブロック１２とＬＭＡ８に直接あるいはオプションのプロセッサ２８を介して接続されている。
【００２１】
ローカルクロック２２は時間を表わし、同期および共鳴させることができる。ローカルクロック２２はＴＰＤ６からの適当な事象信号を受け取ったときこのクロックの値をＴＳＢメモリ２６に送る回路を有する。ローカルクロック２２は時間制御回路２４（あるいは時間制御回路２４とオプションのプロセッサ２８）によって生成された同期機能および共鳴機能のための補正データおよび信号を受け取る。これらの補正データおよび信号を用いてクロックの同期あるいは共鳴が行なわれ、事象信号を用いてローカルクロックで測定されたＴＰＤ事象時間が記録される。
【００２２】
ＴＳＢメモリ２６はローカルクロック２２から受け取った時間の捕捉値を記憶する。時間制御回路２４あるいはオプションのプロセッサ２８はこの値を用いてクロックの調整に必要な補正要素の計算を行なうことができる。また、時間制御回路２４はＬＭＡ８を介してさまざまな補正要素の計算を行なったりＴＳＢ１０全体の制御を行なうためのさまざまなタイミングパケットやメッセージを受け取る。時間制御回路２４は他の構成や検出のためのオプションのパターンマッチング指定（識別子等）をＴＰＤ６に送ることもある。時間制御回路２４はこの識別子を用いてローカル検出時間をＬＭＡ８から受け取った同期メッセージと関係付けることができる。
【００２３】
ＴＳＢ１０に基本ノード機能を支援する機能を追加することもできる。かかる追加機能には、時間、事象検出のための追加メモリ、および基本ノード機能に関係する事象信号の生成等がある。
【００２４】
図５は図２に示すタイミングパケット検出器（ＴＰＤ）６の機能ブロック図を示す。ＴＰＤ制御回路３０はオプションのメモリ３２、パターンメモリ３４、パターンマッチング回路３６、パターンアドレス発生器３８、およびフレーム始点検出器４０に接続されている。ＴＰＤ制御回路３０はＴＳＢ１０に接続されている。パターンマッチング回路３６はオプションのメモリ３２、パターンメモリ３４、およびＬＭＡ８に接続されている。パターンアドレス発生器３８はパターンメモリ３４とＬＭＡ８に接続されている。フレーム始点検出器４０はＬＭＡ８に接続されている。
【００２５】
フレーム始点検出器４０は着信データストリームをモニタし、フレーム始点条件が検出されたときこれを知らせる信号をＴＰＤ制御回路３０に送る。シリアル通信プロトコルでは、データパケットはビットクロック・データ回復ブロック１６がデータクロックとデータストリームを生成するのに用いられるトレーニングビットパターンまたはプリアンブルと呼ばれるパターンを含む。プリアンブルの最後は特殊なパターンでマーキングされ、このパターンはフレーム始点検出器４０によって検出され、次のビットがパケットヘッダの最初のビットであることを示す。トレーニングビットパターンとフレーム始点マークの仕様は通信プロトコルによって異なる。フレーム始点検出器４０はイーサネット等の特定のプロトコルに対応して構成することもでき、またＴＰＤ制御回路３０を介してＴＳＢ１０から受け取られる構成に基づいて現在使用されているプロトコルに適応するように構成することができる。
【００２６】
また、データクロックストリームはパターンアドレス発生器３８によって受け取られ、パターンアドレス発生器３８はパターンメモリ３４を駆動するためのアドレスを生成する。このアドレスはフレーム始点条件が検出された後の最初のビットから始まる着信データストリームのビットカウント値を反映したものである。パターンアドレス発生器３８は、新しいフレームの始点を示すフレーム始点検出器信号に応じてＴＰＤ制御回路３０によってイネーブルされる。
【００２７】
パターンメモリ３４はパターンマッチング回路３６が所望のタイミングパケットの存在を認識および検出するのに用いられるビットパターンを含む。パターンマッチング回路３６は、これらのパターンをパターンアドレス発生器３８から受け取ったアドレスに基づいてＬＭＡ８からの対応するデータビットとともに用いる。通常、このパターンデータのストリームはパケットヘッダあるいはユーザーデータ内のビットパターンを表わすビットとチェックすべきビットと無視すべきビットを示すマスクパターンを含む。これらのパターンによってパターンマッチング回路３６はあるパケットをタイミングパケットとして同定および検出することができる。通常、この同定はパケットヘッダ中のアドレスビットに基づいて行なうことができるが、この技術はユーザーデータビットが含まれている場合にも機能する。たとえば、イーサネットプロトコルを用いる場合、同報通信アドレスをタイミングパケットに割り当てることができ、またこのアドレスはパケットヘッダの最初の６つのバイト内のアドレスとして現われる。このアドレスはシステム内で独自のものであり、したがってパターンマッチング回路はタイミングパケットを他から区別することができる。
【００２８】
パターンメモリ３４内のデータはＴＰＤ制御回路３０を介してＴＳＢ１０から得られる。このデータはプロトコルとアプリケーションに依存するものである。アドレスの中にはすべてのノードにタイミングパケットとして永久的に確保されるものもある。この場合、かかるパターンとオプションの制御パターンをパターンメモリ３４に永久的格納することができる。パターンデータ自体に加えて、パターンメモリ３４内にはＴＰＤ制御回路３０を支援する追加のビットストリームを格納することもできる。たとえば、チェックすべきパターンの最後のビットを示してマッチングが処理されたかどうかを判定するためのビットを含むデータパターンを格納することができる。同様に、捕捉しオプションのメモリ３２を格納すべき識別子ビット等のビットのパターンを指定するパターンを格納することもできる。オプションのメモリ３２はこの格納されたデータをＴＰＤ制御回路３０を介してＴＳＢ１０に送る。
【００２９】
パターンマッチング回路３６はＬＭＡ８からの着信データストリームとパターンメモリ３４からのパターンデータを受け取る。パターンマッチング回路３６がイネーブルされると、この回路は直進データストリームをパターンメモリ３４からのデータに照らしてビットごとにチェックする。一致しない場合にはこれが記録され、マッチング終了状態になると、現在のパケットがタイミングパケットであるかどうかを示す信号が生成され、ＴＰＤ制御回路３０に送られ、ＴＳＢ１０に転送される。この信号の受信時間はパケットの検出時間を表わす。マッチング終了状態はパターンメモリ３４によって供給されるビットパターンあるいはパターンアドレス発生器３８から得られるＴＰＤ制御回路３０からの制御信号によって示すことができる。このマッチング終了状態のタイミングは既知かつ一定であり、パケット中の対象となるビットを定めるマスクパターンによって決まり、またある特定のアプリケーションについてシステム全体にわたって同じである。パターンマッチング回路３６には他の制御を行なうためのオプションのマッチング・ビット処理回路を含めることもできる。この処理はパターンマッチング回路論理の個々のゲートのピコ秒のオーダーの時間変動以外には時間変動がなく、このゲートの時間変動はＬＭＡのビットクロック回復部分による時間変動より小さい。
【００３０】
ＴＰＤ６、ＴＳＢ１０、およびＬＭＡ８の一部の機能はすべて単一の集積回路で提供することができる。
【００３１】
図６はＴＰＤのタイミング図である。線Ａはデータストリームである。線Ｂは回復されたビットクロックストリームである。線Ｃはフレーム始点を示す制御ビットである。線Ｄはパターンメモリアドレスである。線Ｅは目標データストリームである。線Ｆはマスクストリームである。線Ｇはマッチング終了状態を示す。線Ｈは認識信号である。
【００３２】
この機能は着信データストリームの幅が１ビットであるものとして説明した。新しいシリアルプロトコルの中には、数ビットの幅のシリアルデータストリームを有するものもある。ここの説明する技術はかかるストリームにも適用できることは明らかである。すなわち、パターンメモリ３４内のパターンとパターンマッチング回路３６のパターンの幅は着信データストリームの幅に一致するように増大される。
【００３３】
図７はタイミングパケット検出器を事象トリガ発生器として用いるときのタイミング図である。それぞれのノードは通信媒体に接続されている。ノードＡはタイミングパケットを送出し、このタイミングパケットはタイミング図１２に示すようにネットワーク上で後に他のノードによって検出される。それぞれのノードのＴＰＤはこのタイミングパケットを認識および検出し、たとえばリレーの閉成といった目的に用いられる認識信号を生成する。これらのパルスは伝播遅延によって互いに時間がずれている。後述するように、この伝播遅延を測定すれば、これらのパルスをそれぞれのノードのＴＳＢによって図示する量だけ遅延してタイミング図”２”に示すような同時パルスを得ることができる。
【００３４】
図８はタイミングパケット検出器を２つのノードの間の伝播遅延すなわち待ち時間の測定に用いる場合のタイミング図を示す。ノードＡはタイミングパケット“ａ”を送出する。ノードＡのＴＰＤはこのタイミングパケット“ａ”を１００ナノ秒のローカル時間に検出し、ノードＢのＴＰＤは８０ナノ秒のローカル時間に検出する。次のノードＢはタイミングパケット“ｂ”を送出する。ノードＢのＴＰＤはこのタイミングパケット“ｂ”を２００ナノ秒のローカル時間に検出し、ノードＡのＴＰＤは３００ナノ秒のローカル時間に検出する。遅延は対称をなすと考えることができる。これはそれぞれのノードと媒体において両方のパケットが等しい遅延を受けるためである。２つのノードが、それぞれが測定された時間を含む同期メッセージの第２の集合をやりとりした後、それぞれのノードはノードＡからノードＢへのみかけの伝播遅延は−２０ナノ秒であり、ノードＢからノードＡへのみかけの伝播遅延は１００ナノ秒である。これらの平均が実際の遅延４０ナノ秒となる。また、実験時にノードＢのローカルクロックはノードＡのクロックから６０ナノ秒遅れていることがわかる。
【００３５】
図９はタイミングパケット検出器が２つのノードのローカルクロックを調整してそれらを同期および共鳴させるのに用いられる場合のタイミング図を示す。この例では、ノードＡはクロック開始同期である。それぞれのノードのＴＰＤによるさまざまなパケットの検出時間については後述する。たとえば、２つのノードの間の伝播遅延は図８に示すように４０ナノ秒であると判定されたものと仮定する。
ノードＡはタイミングパケット“ａ１”を送出し、このパケットはＴＰＤ Ａによって時間ｔａ１＝０に検出される。
タイミングパケット“ａ１”はＴＰＤ Ｂによって時間ｔｂ１＝１４０ナノ秒に検出される。
ノードＡは情報ｔａ１＝０を含む同期メッセージ“ｓ１”を送出する。
ノードＢは“ｓ１”を受け取り、１４０ナノ秒のみかけの時間差を計算する。ノードＢは４０ナノ秒の既知の伝播遅延によってこの値を補正してノードＢのクロックをノードＡのクロックより１００ナノ秒だけ進ませる。
ノードＡがタイミングパケット“ａ２”を送出し、このパケットが時間ｔａ２＝１秒にＴＰＤ Ａによって検出される。
タイミングパケット“ａ２”が時間ｔｂ２＝１秒＋２４０ナノ秒にＴＰＤ Ｂによって検出される。
ノードＡが情報ｔａ２＝１秒を含む同期メッセージ“ｓ２”を送出する。
ノードＢが“ｓ２”を受け取り、２４０ナノ秒のみかけの時間差を計算する。ノードＢは４０ナノ秒の既知の伝播遅延によってこの値を補正してノードＢのクロックをノードＡのクロックより２００ナノ秒だけ進ませる。
ノードＢがそのローカルクロックを２００ナノ秒だけリセットしてノードＡのクロックに同期させる。ノードＢは“ａ１”と“ａ２”の間、すなわちノードＡのクロックの１秒の間隔を計算し、ノードＢのクロックが１００ナノ秒進んでいることを計算する。そして、ノードＢはそのローカルクロックの速度を１００ナノ秒／秒だけ低下させる。
【００３６】
この基本的な方法を周期的に実行することによって、２つのノードのクロックを一致させることができる。これらのクロックを駆動する発振器の基本的な安定度が適切であれば、一連の測定値を適当に平均することによって時間変動の影響をさらに小さくすることができることは明らかである。同様に、かかる測定をすべてのノードでさまざまなアルゴリズムを用いて実行することによって、大域的なクロック同期を得ることができる。
【００３７】
本発明をノード間のマスタ／スレーブアルゴリズムを用いて説明したが、このタイミングプロトコルは、それぞれのノードがタイミングパケットと同期メッセージの送受信を行なえるようにすることによって分散型アルゴリズムにも適用することができる。これによって、それぞれのノードは分散型アルゴリズムに必要な計算と動作を実行することができる。
【００３８】
図１０と図１１はネットワーク内の時間変動や遅延を解決するためのタイミングパケット検出器の使用の態様を示す。図１０ではＴＰＤは転送装置の外部に設けられ、図１１ではＴＰＤは転送装置内に設けられる。通信ネットワークＡおよびＢの２つのサブネットにはこれら２つのサブネットの間の通信パスを提供する転送装置が設けられる。また、この転送装置の両側に対応する通信媒体と通信するＬＭＡとＴＰＤが設けられている。２つのＴＰＤおよびＬＭＡは共通のＴＳＢと対話する。
【００３９】
図１０および図１１に示す構成要素を用いてこの転送装置をその間に有するノードのクロック同期を達成するには２つの方法がある。第１の方法は、２つのサブネットＡおよびＢ中のすべてのノードについて、“転送装置に対応するＴＳＢのクロック”をマスタークロックとし、同期すべきノードを前述したようにこのマスタークロックに同期・共鳴させることである。
【００４０】
第２の方法は転送装置のＴＰＤとＴＳＢにタイミングパケットが転送装置内を転送中である時間を記録させ、このパケット単位の追加遅延をそのタイミングパケットを受け取るノードに報告させて、それを受け取ったノードがこの追加遅延を補正することができるようにする方法である。
【００４１】
いずれの場合にも、転送装置のＡ側とＢ側の通信プロトコルと媒体は異なったものでよく、この場合も精度は失われない。これは、２つのＴＰＤの検出処理における遅延は同じであり、プロトコルと検出および認識のパターンに基づいて計算することができるためである。さらに、前述した技術を用いて、転送装置のクロックを第２のサブネット中のノードのマスタークロックとして機能させながら同時に第１のサブネット中のノードに同期させることができる。
【産業上の利用可能性】
【００４２】
本発明は、転送装置通過時間を含む通過時間メッセージを生成することができるといった効果を有し、ネットワークの第１および第２のサブネットの間でパケットおよび関連のメッセージを転送するネットワーク転送装置等への適用が可能である。
【図面の簡単な説明】
【００４３】
【図１】クロックの分散型同期および共鳴を有するネットワークを示す。
【図２】図１に示すノード２の機能ブロック図を示す。
【図３】図２に示すＬＭＡの機能ブロック図を示す。
【図４】図２に示すＴＳＢの機能ブロック図を示す。
【図５】図２に示すＴＰＤの機能ブロック図を示す。
【図６】ＴＰＤの動作の代表的なタイミング図を示す。
【図７】タイミングパケット検出器を事象トリガ機構として使用する場合を示す。
【図８】伝播時間の測定にＴＰＤを使用する場合を示す。
【図９】ローカルクロックの調整にＴＰＤを使用する場合を示す。
【図１０】ネットワーク内の時間変動および遅延を解決するためのＴＰＤの使用を示す。
【図１１】ネットワーク内の時間変動および遅延を解決するためのＴＰＤの使用を示す。
【図１２】従来の同期ユニットを有する分散型システムを示す。
【図１３】従来の専用タイミングバスを有する分散型システムを示す。
【符号の説明】
【００４４】
２  第１のノード
２’  第２のノード
２”  第３のノード
４  通信媒体
６  タイミングパケット検出器（ＴＰＤ）
８  ローカル媒体アクセス（ＬＭＡ）
１０  時間サービス（ＴＳＢ）
１２  基本ノード機能
１４  送信器
１６  ビットクロック・データ回復
１８  データ符号化
２０  プロトコルスタック
２２  ローカルクロック
２４  時間制御回路
２６  ＴＳＢメモリ
２８  プロセッサ
３０  ＴＰＤ制御回路
３２  メモリ
３４  パターンメモリ
３６  パターンマッチング回路
３８  パターンアドレス発生器
４０  フレーム始点検出器
【図１】
2006101539.tif 000003
【図２】
2006101539.tif 000004
【図３】
2006101539.tif 000005
【図４】
2006101539.tif 000006
【図５】
2006101539.tif 000007
【図６】
2006101539.tif 000008
【図７】
2006101539.tif 000009
【図８】
2006101539.tif 000010
【図９】
2006101539.tif 000011
【図１０】
2006101539.tif 000012
【図１１】
2006101539.tif 000013
【図１２】
2006101539.tif 000014
【図１３】
2006101539.tif 000015