(57)【要約】【課題】 通過時間が変動するネットワークでストリームデータを配信し、送信側からタイムスタンプ情報を含むパケットを送信し、送信側と受信側のシステムクロックを同期させる必要がある場合に、受信側でのパケット受信タイミングのばらつきによるジッタの影響を低減するクロック同期方式およびデータ伝送システムを提供すること。【解決手段】受信装置１３はＲＴＰパケットからＲＴＰタイムスタンプ値を取り出し、タイムスタンプ比較回路１３２に与え、タイムスタンプ比較回路１３２はタイムスタンプ回路１３３のタイムスタンプ値との比較結果をマイクロコントローラ１３５に入力する。マイクロコントローラ１３５は比較結果の平滑化を含む演算を行い、それに基づきＰＬＬ１３７を制御することによりパケット受信タイミングのばらつきによるジッタの影響を低減した。【選択図】  図１
2006174001.tif 000002
【特許請求の範囲】
【請求項１】
送信装置と必要なら複数の受信機器とネットワークからなり、送信装置がタイムスタンプデータを含むデジタルデータをパケットとしてネットワークに送信し、前記パケットを受信した前記受信装置が、内部で用いている内部タイムスタンプと前記パケット内の前記タイムスタンプデータを比較し、その比較結果に基づき、前記受信装置内で前記デジタルデータの処理を行うクロックの周波数を制御するデータ伝送において、前記タイムスタンプデータあるいは前記比較結果を加工し前記クロックへの制御を行う手段と必要であれば前記比較結果の前記クロックへの制御を前記パケット単位に止める手段とを有し、複数個の前記パケット間での前記ネットワークを通過する通過時間の差により発生する前記受信装置内での前記クロックのジッタが所定の値の範囲に収まるように制御する事を特徴とするクロック同期方式。
【請求項２】
前記内部タイムスタンプと前記パケット内の前記タイムスタンプデータの比較をプログラム制御可能なマイクロプロセッサ、またはマイクロプロセッサ相当の手段により行うことを特徴とする請求項１に記載のクロック同期方式。
【請求項３】
前記パケットは、IETFリアルタイム伝送プロトコル（RTP）にしたがって前記送信装置から前記ネットワークに伝送されるものであることを特徴とする請求項１に記載のクロック同期方式。
【請求項４】
前記デジタルデータは、音声データや動画像データなどの時系列デジタルデータであり、前記送信装置においてデジタルデータのエンコード処理を行う一方、該デジタルデータを前記送信装置から前記受信装置へ通信した後、受信装置において請求項１〜３の何れかに記載のクロック同期方式に基づくデジタルデータのデコード処理を行うことを特徴とするデータ伝送システム。
【請求項５】
前記比較結果を加工し前記クロックへの制御を行う手段として、前記比較結果の累積値を基に制御を行う事により、前記受信装置内で前記デジタルデータの処理を行うクロックの周波数の急な変動避ける事を特徴とする請求項１〜３の何れかに記載のクロック同期方式。
【請求項６】
前記比較結果の累積値を基に次のパケットのタイムスタンプ値を予測し、次に受信したパケットのタイムスタンプ値または前記累積値が所定の値の範囲に入っていない場合に、例外的な状態が発生した事を検出する事を特徴とする請求項５に記載のクロック同期方式。
【請求項７】
前記比較結果の累積値を基に次のパケットのタイムスタンプ値を予測し、次に受信したパケットのタイムスタンプ値または前記累積値が所定の値の範囲に入っていない場合に、前記比較結果の前記クロックへの制御を止める事を特徴とする請求項１〜３の何れかに記載のクロック同期方式。
【請求項８】
前記比較結果を加工し前記クロックへの制御を行う手段として、前記比較結果の平均値を基に制御を行う事により、前記受信装置内で前記デジタルデータの処理を行うクロックの周波数の急な変動避ける事を特徴とする請求項１〜３の何れかに記載のクロック同期方式。
【請求項９】
前記比較結果の平均値を基に次のパケットのタイムスタンプ値を予測し、次に受信したパケットのタイムスタンプ値または前記平均値が所定の値の範囲に入っていない場合に、例外的な状態が発生した事を検出する事を特徴とする請求項８に記載のクロック同期方式。
【請求項１０】
前記比較結果の平均値を基に次のパケットのタイムスタンプ値を予測し、次に受信したパケットのタイムスタンプ値または前記平均値が所定の値の範囲に入っていない場合に、前記比較結果の前記クロックへの制御を止める事を特徴とする請求項１〜３の何れかに記載のクロック同期方式。
【請求項１１】
前記クロックへの制御の時間間隔を基に前記クロックへの制御を前記パケット単位に止める手段を有効とする請求項１〜３の何れかに記載のクロック同期方式。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＩＰ（Internet Protocol）ネットワーク、ＭＰＬＳ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）ネットワーク等のネットワークの通過時間が変動するネットワークを通して、送信側と受信側のクロックの同期が必要なリアルタイムのデジタルデータをパケットとして伝送するシステムに適用して有用な技術に関し、例えば音声データや動画像データなどの時系列デジタルデータを複数の端末装置間で処理するシステムに適用して特に有用な技術に関する。
【背景技術】
【０００２】
画像配信等の用途で、ＭＡＮあるいはＷＡＮのネットワークを経由してストリームデータを配信するには専用線を用いる方法と、インターネット網を用いる方法が有る。ストリームデータのトラフィックが少なく、リアルタイム性が必要でない場合には通常ＴＣＰ／ＩＰプロトコルとインターネット網の組合せが一般的であり、非圧縮のハイビジョン画像等の大容量データを送信する場合、あるいはリアルタイム性が必要な場合には専用線を用いる傾向にある。これはインターネット網を用いた場合の運用コストの安さを重視するか、専用線を用いた場合の回線品質の高さを重視するかの選択であると考えられる。
【０００３】
すなわち、イーサネットとルータをベースにしたインターネット網では、基本的にはベストエフォートネットワークをベースにしている事と、ルータ、スイッチ等のパケット単位のバッファリングを行う機器を用いている事により、機器内バッファ満杯によるパケットロス等の信頼性の問題があり、大容量、リアルタイムのデータ転送での使用は避けられる傾向に有る。
【０００４】
この問題を解決するために、様々な改良が加えられてきている。ルータでのＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）サポート、ＭＰＬＳによるスイッチングのサポートはパケットロスの可能性を低め、優先順位の高いデータに対しての帯域確保を行い、網全体を通してのジッタの評価を可能とした。これにより、従来はＩＰネットワークを通して送る事に適さなかった電話等の音声データアプリケーション（ＶｏＩＰ）でのインターネット網利用が可能となっている。
【０００５】
一方、リアルタイムの画像配信を行うには、送信側のエンコーダで用いるクロックの周波数と受信側のデコーダで用いるクロックの周波数が同期している必要が有る。この同期が必要なシステムとして、例えばカメラで撮影した映像をＭＰＥＧ（Motion Picture Experts Group）のエンコーダでエンコードしてネットワークに転送し、受信した機器がデコードしてモニタに表示するシステムがある。このようなシステムにおいて、送信側のエンコーダと受信側のデコーダの動作クロック周波数が僅かにずれていると、受信側のデータバッファのオーバーフロー又はアンダーフローが生じて連続的なデータ転送、並びに動画再生が行えなくなり、例えば、データが詰まって１画面分の表示が飛んでしまう画面落ちや、データが途切れて１フレーム期間分の再生が止まってしまうフレーム抜けと云った支障が生じる。
【０００６】
この問題に対する対策として特にＩＥＥＥ（米国電気電子技術者協会）１３９４規格のインタフェースを用いている伝送されるデータに関する技術としてしては、特許公開２０００−３５８０１７が開示されている。本特許では、ＩＥＥＥ１３９４規格のインタフェースでのサイクルスタート信号を基準信号として用いている。
【０００７】
別の技術として、ＩＰネットワークでの同期化に関する技術として特許公開２０００−９２１３０に開示されている技術が有る。この技術では２段のバッファを用いて同期化を行い、受信側の第１段のバッファでジッタの吸収を行い、受信したパケットを第１段のバッファから第２段のバッファに対して転送する。ＲＴＰパケットのタイムスタンプ値は第１段のバッファから第２段のバッファに対する転送のタイミングを導くために用いられている。受信側のクロックの周波数を制御するのは、第２段のバッファでの蓄積位置を基に制御される。すなわち、第２段のバッファの蓄積位置が増加方向に進めば、受信側のクロックの周波数を増やし、第２段のバッファの蓄積位置が減少方向に進めば、受信側のクロックの周波数を減らす。
【特許文献１】特開２０００−３５８０１７号公報
【特許文献２】特開２０００−９２１３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上記の特許公開２０００−３５８０１７開示の技術は受信側でのジッタが比較的小さいＩＥＥＥ１３９４規格のインタフェースには適用できても、受信側でのジッタがＩＥＥＥ１３９４規格のインタフェースに比べて大きいＩＰネットワークを経由するデータ伝送システムに適用することはできない。また、特許公開２０００−９２１３０開示の技術は、ネットワークが安定稼動している環境では有効であるが、不安定なネットワークの環境では以下の問題を引き起こす。
【０００９】
（１）バッファの蓄積位置を基にクロックの周波数制御を行っているため、ネットワークでのインターミッテドなパケットロスが発生した場合、誤動作する可能性が有る。
【００１０】
（２）パケットの受信を妨げるような重大なネットワークの障害発生時には、バッファが空となるが、その影響が受信側のクロック回路にまで及ぶ可能性が有る。
【００１１】
（３）パケットの受信側の処理の基準であるクロックを制御しているため、上記のインターミッテドな障害、あるいは重大な障害からの回復手順が極めて複雑なものとなる。
【００１２】
この発明の目的は、上記課題を解決するため、ジッタが比較的大きいネットワークを通して受信したパケット内のタイムスタンプデータを基に受信装置内でデジタルデータの処理を行うクロックを送信装置のクロックに同期させるクロック同期方式を提供することにある。
【課題を解決するための手段】
【００１３】
上記目的を達成するため本発明では、送信装置がタイムスタンプデータを含むデジタルデータをパケットとしてネットワークに送信する。受信装置はデータ処理用のクロックを制御するＰＬＬ（Phase Locked Loop）回路を持つ。パケットを受信した受信装置はデータ処理用のクロックにより更新している内部タイムスタンプとパケット内のタイムスタンプデータを比較する。比較した結果は、送信側と受信側の基本的なクロック周波数の差に加えネットワーク内でのパケットの通過時間によるばらつきにも影響された値となる。言い換えれば、この比較結果はパケットのネットワーク内の通過時間差によるジッタを含んでいる。受信装置ではジッタを低減、平滑化するために比較結果に所定の演算を加え、結果として比較結果が０となる方向へ動くようにＰＬＬ回路の基準クロック入力を制御する。
【００１４】
比較結果に関する演算は累積値の計算、または平均値の計算、あるいは２乗平均等のアルゴリズムを用いる。演算した結果のＰＬＬ回路の基準クロック入力に対する制御を行うか否かはパケット毎に制御可能とする。これは、ＰＬＬ回路に対する制御の頻度を制御する事により、更なるジッタの低減を可能とするためと、ネットワークの構成変更、あるいは障害等でパケットの連続性が乱れることによる誤動作の可能性を排除するためである。
【００１５】
上記により、ジッタが比較的大きいネットワークを通して受信したパケットから受信装置がパケット内のタイムスタンプデータを基にジッタの影響を低減し、受信装置内のクロックを送信装置のクロックに同期させる事ができる。また、ネットワークの構成変更、あるいは障害等でパケットの連続性が乱れた場合には、その影響を受信装置のクロックに与える事無く、障害の復旧、あるいは初期化の動作を行う事が可能となる。本発明では更に必要と有れば、比較回路に関する演算、およびＰＬＬ回路の基準クロック入力への制御を行うプログラム制御可能なマイクロプロセッサあるいは相当品を受信装置内に含める。これにより、ネットワークの状況、装置の存在する環境に合わせたプログラムを走らせる事により最適なチューニングが可能になるうえ、可用性の向上を図ることが出来る。
【発明の効果】
【００１６】
本発明に従うと、ネットワークの通過時間の変化によりジッタが比較的大きいネットワークを通して受信したパケットから受信装置がパケット内のタイムスタンプデータを基にジッタの影響を低減し、受信装置内のクロックを送信装置のクロックに同期させる事ができる。また、ネットワークの構成変更、あるいは障害等でパケットの連続性が乱れた場合には、その影響を受信装置のクロックに与える事無く、障害の復旧、あるいは初期化の動作に行う事が可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施例を図面を参照して詳細に説明する。
【実施例１】
【００１８】
図１はデータ伝送システム全体の構成を示す。送信装置１１はカメラ１０より入力される動画像をＭＰＥＧ圧縮し、ＭＰＬＳネットワーク１２に送信する装置である。送信装置１１と受信装置１３はデータ転送のプロトコルとしてリアルタイム伝送プロトコルすなわちＲＴＰ（Real-Time Transport Protocol）を用いる。なお、ＲＴＰのより詳細な記述は、以下の参考文献を参照するものとして、本説明においては、具体的な記載を省略する。
【００１９】
“RTP: A Transport Protocol for Real-Time Applications”, H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson; RFC 1889, January 1996.
【００２０】
ＭＰＥＧエンコーダ１１１はカメラ１０より入力される動画像をＭＰＥＧ−２に圧縮する。ＭＰＥＧエンコーダ１１１のクロックにはクロック回路１１２が発生する２７ＭＨｚのクロック、すなわちシステムクロックＥＳＣＬＫが用いられる。
【００２１】
タイムスタンプ回路１１３はＭＰＥＧエンコーダ１１１と同じシステムクロックＥＳＣＬＫで更新される３２ビットのカウンタである。タイムスタンプ回路１１３の値はＲＴＰパケット生成回路１１４に入力される。
【００２２】
ＲＴＰパケット生成回路１１４は、ＲＴＰ、ＵＤＰ（User Datagram Protocol）、ＭＡＣ（Media Access Control）のプロトコル処理をする回路で、タイムスタンプ回路１１３からの値とＭＰＥＧエンコーダ１１１のＭＰＥＧデータからＲＴＰパケットを生成し、ＭＰＬＳネットワーク１２に送信する。
【００２３】
受信装置１３はＭＰＬＳネットワーク１２からのパケットを受信してＭＰＥＧデータを復号化してビデオモニタ１４に出力する装置である。
【００２４】
ＭＰＬＳネットワーク１２から受信したＲＴＰパケットはＲＴＰパケット処理回路１３１に入力される。ＲＴＰパケット処理回路１３１は、ＲＴＰ、ＵＤＰ、ＭＡＣのプロトコル処理をする回路で、ＲＴＰパケットの正常性を確認した後、ＲＴＰパケットからＲＴＰタイムスタンプ値を取り出し、タイムスタンプ比較回路１３２に与えるとともに、ＭＰＥＧデータをＭＰＥＧデコーダ１３４に送出する。
【００２５】
タイムスタンプ回路１３３はＭＰＥＧデコーダ１３４と同じクロック、すなわちシステムクロックＤＳＣＬＫで更新される３２ビットのカウンタである。タイムスタンプ回路１３３はストリームデータの最初のＲＴＰパケットを受信した時に該ＲＴＰパケットのＲＴＰタイムスタンプ値に初期化される。
【００２６】
タイムスタンプ比較回路１３２はタイムスタンプ回路１３３から与えられるタイムスタンプ値からＲＴＰパケット処理回路１３１からのＲＴＰタイムスタンプ値を引算しその結果を比較結果値としてマイクロコントローラ１３５に入力する。
【００２７】
マイクロコントローラ１３５はプログラムメモリ１３５ａを内蔵したマイクロプロセッサで、タイムスタンプ比較回路１３２の比較結果値を入力とし、ＲＥＦクロック生成回路１３６に対して基準クロック信号φｒｅｆの周波数の増加指示を行う出力信号ＲＦＦＵＰと減少指示を行う出力信号ＲＥＦＤＷＮを与える。マイクロコントローラ１３５が内含するプログラムは後述するアルゴリズムにより、ＲＴＰタイムスタンプ比較回路１３２から入力した比較結果値の平滑化を行い、ＲＥＦＵＰまたはＲＥＦＤＷＮをアサートするように動作する。
【００２８】
ＰＬＬ回路１３７は、周波数位相同期発信回路１３７ａと分周回路１３７ｂを備え、ＲＥＦクロック生成回路１３６から出力される約８ｋＨｚの基準クロック信号φｒｅｆに基づき、該基準クロック信号φｒｅｆと同調するように２７ＭＨｚのシステムクロックＤＳＣＬＫを生成してＭＰＥＧデコーダ１３４、およびにタイムスタンプ回路１３３に出力する。
【００２９】
具体的には、上記周波数位相同期発信回路１３７ａにより、基準クロック信号φｒｅｆを所定倍率（例えば３３７５）に逓倍して２７ＭＨｚのクロックを生成する一方、分周回路１３７ｂがそれを同倍率（例えば３３７５）で分周して周波数位相同期発信回路１３７ａに戻す。周波数位相同期発信回路１３７ａは、ＲＥＦクロック生成回路１３６からの基準クロック信号φｒｅｆと分周回路１３７ｂからの信号とで周波数比較および位相比較を行い両者の周波数が一致するように自身の発振を制御する。この制御により、基準クロック信号φｒｅｆの周期に揺らぎが生じたり、基準クロック信号φｒｅｆと受信装置のシステムクロックＤＳＣＬＫに固有の周波数ずれが生じていた場合に、基準クロック信号φｒｅｆへのシステムクロックＤＳＣＬＫの同調が図られる。
【００３０】
図２は、実施例のＲＥＦクロック生成回路１３６の詳細な構成例を示すブロック図である。
【００３１】
ＲＥＦクロック生成回路１３６は、約２７ＭＨｚのシステムクロックＤＳＣＬＫを分周（例えば３３７５分周）して８ｋＨｚの基準クロック信号φｒｅｆを生成する基準クロック生成カウンタ１３６ａとその分周値を与える分周レジスタ１３６ｂ、および分周レジスタ１３６ｂのインクリメント、デクリメントを行うための加減算回路１３６ｃにより構成される。
【００３２】
マイクロコントローラ１３５からＲＥＦＵＰ信号をアサートされた時、加減算回路１３６ｃは分周レジスタ１３６ｂからの入力値を「−１」して、システムクロックＤＳＣＬＫの１サイクル分だけ出力する。マイクロコントローラ１３５からＲＥＦＤＷＮ信号をアサートされた時、加減算回路１３６ｃは分周レジスタ１３６ｂからの入力値を「＋１」して、システムクロックＤＳＣＬＫの１サイクル分だけ出力する。上記以外のケースでは加減算回路１３６ｃは分周レジスタ１３６ｂからの入力値をそのまま出力する。分周レジスタ１３６ｂは常に加減算回路１３６ｃの出力をシステムクロックＤＳＣＬＫを用いてサンプリングしている。すなわち結果として、マイクロコントローラ１３５がＲＥＦＵＰ信号をアサートした時には、ＲＥＦクロック生成回路１３６の出力である基準クロック信号φｒｅｆの周波数は（現在の周波数÷分周レジスタ１３６ｂの現在の値）だけ高くなり、マイクロコントローラ１３５がＲＥＦＤＷＮ信号をアサートした時には、ＲＥＦクロック生成回路１３６の出力である基準クロック信号φｒｅｆの周波数は（現在の周波数÷分周レジスタ１３６ｂの現在の値）だけ低くなる。
【００３３】
つまりこの回路により、マイクロコントローラ１３５から基準クロック信号φｒｅｆの周波数を制御する事が可能になり、更に周波数位相同期発信回路１３７ａが基準クロック信号φｒｅｆの周波数にシステムクロックＤＳＣＬＫの周波数を同調させるように動く事により、結果としてマイクロコントローラ１３５からシステムクロックＤＳＣＬＫの制御を行う事が可能となる。
【００３４】
図３はマイクロコントーラ１３５が内含するプログラムメモリ１３５ａ内のプログラムのフローチャートの一例である。本例のプログラムの前提条件は下記である。
【００３５】
（前提条件）
【００３６】
（１）読み込んだタイムスタンプ比較回路１３２の主力値を変数ａとする。
【００３７】
（２）変数aの累積値をｂとする。
【００３８】
（３）ＲＥＦクロック生成回路１３６の制御を行い得る最短のインターバルをtとする。
【００３９】
（４）瞬間的に大きなジッタが発生した判断して、ＲＥＦクロック生成回路１３６への制御を行わないｂの絶対値に関する敷居値をｃとする。
【００４０】
（５）｜ｂ｜＞ｃである事によりＲＥＦクロック生成回路１３６への制御を連続して行わない回数の上限をｅ、回数のカウントのための変数をｙとする。
【００４１】
（６）ネットワーク障害、構成変更等が発生したと判断するｂに関する敷居値をｄとする。当然の事ながら｜ｄ｜＞｜ｃ｜の関係が成立する。
【００４２】
図３のフローチャートに従いプログラムの動きを、以下説明する。
【００４３】
（動作１）新規に読み込んだaを加えたｂの絶対値がｄより大きい場合、ネットワーク障害、構成変更等が発生したと判断し、障害の復旧、あるいは初期化の動作を行う別のプログラムに制御を移す（ステップ１＝＞ステップ２＝＞ステップ３＝＞ステップ３１）。
【００４４】
（動作２）新規に読み込んだaを加えたｂの絶対値がｃより大きく、回数カウントの変数ｙがｅを超えていない場合、瞬間的に大きなジッタがまだ収束していないと判断し変数ｙを「＋１」して終了する（ステップ１＝＞ステップ２＝＞ステップ３＝＞ステップ４＝＞ステップ４１＝＞ステップ４２＝＞ステップ４３）。
【００４５】
（動作３）新規に読み込んだaを加えたｂの絶対値がｃより大きく、回数カウントの変数ｙがｅより大きい場合、ＲＥＦクロック生成回路１３６への制御が必要と判断して（動作４）に進む（ステップ１＝＞ステップ２＝＞ステップ３＝＞ステップ４＝＞ステップ４１＝＞ステップ４１１＝＞ステップ５）。
【００４６】
（動作４）上記（動作１）、（動作２）いずれでもない場合、前回ＲＥＦクロック生成回路１３６への制御を行ってからt以上の時間が経過しているかにより動作が異なる。ｔ以上の時間が経過していない場合には、ＲＥＦクロック生成回路１３６への制御を行うには早急すぎる（前回制御を行ってからの経過時間が不十分）と判断して、処理を終了する（ステップ１＝＞ステップ２＝＞ステップ３＝＞ステップ４＝＞ステップ５＝＞ステップ６、または（動作３）＝＞ステップ５＝＞ステップ６）。前回ＲＥＦクロック生成回路１３６への制御を行ってからt以上の時間が経過している場合には（動作５）の処理を行う。
【００４７】
（動作５）ｂの値が正の値の場合はＲＥＦＤＷＮ信号をアサートする（（動作４）＝＞ステップ５１＝＞ステップ５１１）。ｂの値が負の値の場合にはＲＥＦＵＰ信号をアサートする（（動作４）＝＞ステップ５１＝＞ステップ５１２）。ｂの値が０の場合は処理を終了する。
【００４８】
以上、説明したよう図３例のフローチャートのプログラムは、タイムスタンプ比較回路１３２の比較値を基に、瞬間的な大きなジッタを避けるための平滑化を行い、タイムスタンプ比較回路１３２の比較値の蓄積が０になる方向になるようにＲＥＦクロック生成回路１３６を制御している。また、同時にネットワーク障害、構成変更等の発生を検出して、障害の復旧、あるいは初期化の動作へ制御を移す事も行う。
【００４９】
次に図１のカメラ１０より入力される動画像がネットワーク１２を経由してビデオモニタ１４に出力されるまでの一連の動きについて説明する。
【００５０】
カメラ１０より入力された動画像はＭＰＥＧエンコーダ１１１によりシステムクロックＥＳＣＬＫを用いてＭＰＥＧ圧縮されＲＴＰパケット生成回路１１４に入力される。
【００５１】
ＲＴＰパケット生成回路１１４ではＭＰＥＧ圧縮されたデータをＲＴＰペイロードとしたＲＴＰパケットを生成する。該ＲＴＰパケットのＲＴＰヘッダー内のタイムスタンプフィールドにはシステムクロックＥＳＣＬＫにより更新されるタイムスタンプ回路１１３の値が入る。図４はＲＴＰパケットのフォーマットを示している。
【００５２】
ＲＴＰパケットはＲＴＰパケット生成回路１１４によりＵＤＰプロトコル、ＭＡＣプロトコルの処理を行われＭＰＬＳネットワーク１２に送信される。
【００５３】
ＭＰＬＳネットワーク１２を通過したＲＴＰパケットは受信装置１３で受信される。
【００５４】
受信装置１３内のＲＴＰパケット処理回路１３１はＲＴＰ、ＵＤＰ、ＭＡＣのプロトコル処理を行い、ＲＴＰペイロード上のＭＰＥＧ圧縮されたデータをＭＰＥＧデコーダ１３４に送る、同時にＲＴＰタイムスタンプ値をタイムスタンプ比較回路１３２に与える。
【００５５】
ＭＰＥＧデコーダ１３４はＲＴＰパケット処理回路１３１から渡されたデータを展開しビデオモニタ１４に送る。
【００５６】
ＲＴＰタイムスタンプ値を受け取ったタイムスタンプ比較回路１３２は、タイムスタンプ回路１３３のタイムスタンプ値からＲＴＰタイムスタンプを引き算し結果をマイクロコントローラ１３５に与える。
【００５７】
マイクロコントローラは前記のプログラムに従い、ＲＥＦクロック生成回路１３６が発生する基準クロック信号φｒｅｆの周波数の制御を行う事によりＰＬＬ１３７が出力するシステムクロックＤＳＣＬＫの周波数を送信装置１１のシステムクロックＥＳＣＬＫに同調させる。
【００５８】
図５は、受信したＲＴＰパケットとタイムスタンプ比較回路の出力値、マイクロコントローラ１３５のプログラムの各定数、変数と受信装置１３および送信装置１１のシステムクロックの関係の一例である。
【００５９】
ＲＴＰパケット１を受信した時、プログラムは前述の動作５に従いＲＥＦＤＷＮ信号をアサートする。この結果として、基準クロック信号φｒｅｆの周波数が下がりシステムクロックＤＳＣＬＫの周波数もゆっくり低下する事となる。
【００６０】
ＲＴＰパケット２を受信した時、前回ＲＥＦＤＷＮ信号をアサートしてからｔ以上の時間が経過しているにもかかわらず、変数ｂがｃの敷居値を越えたため、プログラムは瞬間的に大きなジッタが発生した判断し、前述の動作２に従いＲＥＦクロック生成回路１３６への指示を出さない。
【００６１】
ＲＴＰパケット３を受信した時には、変数ｂがｃの敷居値を下回ったため、再度動作５に従いＲＥＦＤＷＮ信号をアサートする。
【００６２】
その後、ＲＴＰパケット４を受信するが、ＲＴＰパケット３受信によりＲＥＦＤＷＮ信号をアサートしてからｔ以上の時間が経過していないので、プログラムは再度ＲＥＦＤＷＮ信号を出すにはタイミングが早すぎると判断し、前述の動作４に従いＲＥＦクロック生成回路１３６への指示を出さない。
【００６３】
以上により、図５のケースでは、本実施例の構成によりＲＴＰパケット２の瞬間的に大きなジッタを排除し、ＲＴＰパケット４による性急な基準クロック信号φｒｅｆの制御を避けながら、ゆっくりと受信装置のシステムクロックＤＳＣＬＫの周波数を低下させ送信装置のシステムクロックに同調させる事となる。
【００６４】
以上のように、上記実施例のクロック同期方式およびデータ伝送システムによれば、ＲＴＰタイムスタンプ値と受信装置のタイムスタンプ値の比較結果により直接ＰＬＬを制御するのではなく、累積値の演算、および処理を行う敷居値を設ける事により、ネットワークの通過時間の差に起因する瞬間的なジッタの影響を排除する事ができる。
【００６５】
更にＰＬＬの制御の最低間隔を設ける事により、急激な制御を避けゆるやかに同期を取り更なるジッタの低減を可能としている。
【００６６】
また、受信したＲＴＰパケットのタイムスタンプ情報のみを基に制御を行っている事から、特許公開２０００−９２１３０開示の従来技術でのパケットロス発生時の誤動作の問題を回避する事が出来る。
【００６７】
更にネットワークの構成変更、あるいは障害等をＲＴＰタイムスタンプ情報を基に検出し、受信装置がすみやかに対応する処理を行う事を可能としている。
【００６８】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００６９】
例えば、デジタルデータに係る信号処理として、ＭＰＥＧ圧縮やＭＰＥＧ展開を例示したが、他の様々な形式のデコードおよびエンコード処理も含まれることは云うまでもなく、更に、データの読出し書込み転送処理、その他、加工処理など種々の信号処理も含まれる。
【００７０】
また、上記実施例では、ＭＰＬＳネットワークを介した通信を行っているが、本発明はネットワークの種類に依らない。本発明を通常のＩＰネットワーク、あるいは専用線を介したネットワークに適用する事はもちろん可能である。
【００７１】
また、上記実施例では、ＲＴＰプロトコルを用いた通信を行っているが、タイムスタンプ情報をパケット内に含める事が可能な他のプロトコルを用いる事も可能である。
【００７２】
上記実施例では、マイクロコントローラのプログラムで累積値の計算を行っているが、平均値の計算、あるいは２乗平均等の平滑化アルゴリズムを適用することも可能である。
【００７３】
また、上記実施例でマイクロコントローラとプログラムにより実現している機能は、論理回路によって実現可能な事はいうまでもない。
【００７４】
また、上記実施例での送信装置、受信装置は同様な機能を持つＬＳＩ、ボードに置き換え可能な事は明らかである。
【産業上の利用可能性】
【００７５】
本発明は、動画像のデータ転送システムに限られず、例えば、デジタルデータの読出しや書込みを行う端末装置間で通信を行うシステムや、ファクトリオートメーション（ＦＡ）システム等のデジタルデータに係る種々の信号処理を行う端末装置間で通信を行うシステムに適用しても有用である。
【図面の簡単な説明】
【００７６】
【図１】データ伝送システム全体の構成。
【図２】ＲＥＦクロック生成回路１３６の詳細な構成例。
【図３】プログラムメモリ１３５ａ内のプログラムのフローチャートの一例。
【図４】ＲＴＰパケットのフォーマット。
【図５】受信したＲＴＰパケットとシステムクロックの関係の一例。
【符号の説明】
【００７７】
１０・・・カメラ
１１・・・送信装置
１２・・・ＭＰＬＳネットワーク
１３・・・受信装置
１４・・・ビデオモニタ
１１１・・・ＭＰＥＧエンコーダ
１１２・・・クロック回路
１１３・・・タイムスタンプ回路
１１４・・・ＲＴＰパケット生成回路
１３１・・・ＲＴＰパケット処理回路
１３２・・・タイムスタンプ比較回路
１３３・・・タイムスタンプ回路
１３４・・・ＭＰＥＧデコーダ
１３５・・・マイクロコントローラ
１３５ａ・・・プログラムメモリ
１３６・・・ＲＥＦクロック生成回路
１３６ａ・・・基準クロック生成カウンタ
１３６ｂ・・・分周レジスタ
１３６ｃ・・・加減算回路
１３７・・・ＰＬＬ回路
１３７ａ・・・周波数位相同期発信回路
１３７ｂ・・・分周回路
【図１】
2006174001.tif 000003
【図２】
2006174001.tif 000004
【図３】
2006174001.tif 000005
【図４】
2006174001.tif 000006
【図５】
2006174001.tif 000007