(57)【要約】【課題】不確定なジッタ量に対応して誤差の大きい時間情報を的確に除去することができるネットワーク接続機器を提供する。【解決手段】ネットワーク接続機器１Ｂは、ネットワーク接続機器１Ａからのタイムスタンプ（ＰＣＲ）を受信する。タイムスタンプ発生部１３Ｂは、タイムスタンプ（ＳＴＣ）を発生する。ＣＰＵ１１Ｂは、ＰＣＲとＳＴＣとの差分を用いて、ＰＣＲのジッタ量を統計的に演算する。ＣＰＵ１１Ｂは、ジッタ量が所定の値を越えるＰＣＲを除外して、ＳＴＣを補正する補正値を生成する。タイムスタンプ発生部１３Ｂは、補正値に基づいて補正したＳＴＣを発生する。【選択図】      図２
2004289544.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されて使用されるネットワーク接続機器において、
前記ネットワークを介して順次入力される第１のタイムスタンプを取り込む取り込み手段と、
時計として動作するカウンタと、
前記カウンタのカウント値を基にして第２のタイムスタンプを生成する生成手段と、
前記第１のタイムスタンプと前記第２のタイムスタンプとの差分を用いて、前記第１のタイムスタンプのジッタ量を統計的に演算する演算手段と、
順次入力される前記第１のタイムスタンプの内、前記演算手段によって演算したジッタ量が所定の値を越える前記第１のタイムスタンプを除外する除外手段と、
前記除外手段によって除外されなかった前記第１のタイムスタンプと前記第２のタイムスタンプとを用いて、前記生成手段で生成する前記第２のタイムスタンプを補正する補正手段とを備えて構成したことを特徴とするネットワーク接続機器。
【請求項２】
ネットワーク接続機器に用いるタイムスタンプ処理方法において、
前記ネットワークを介して順次入力される第１のタイムスタンプを取り込む取り込みステップと、
時計として動作するカウンタのカウント値を基にして第２のタイムスタンプを生成する生成ステップと、
前記第１のタイムスタンプと前記第２のタイムスタンプとの差分を用いて、前記第１のタイムスタンプのジッタ量を統計的に演算する演算ステップと、
順次入力される前記第１のタイムスタンプの内、前記演算ステップにて演算したジッタ量が所定の値を越える前記第１のタイムスタンプを除外する除外ステップと、
前記除外ステップにて除外されなかった前記第１のタイムスタンプと前記第２のタイムスタンプとを用いて、前記生成ステップで生成する前記第２のタイムスタンプを補正する補正ステップとを含むことを特徴とするタイムスタンプ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークに接続されて使用されるネットワーク接続機器に係り、特に、複数のネットワーク接続機器を同期運転させる際に、ネットワーク上を流れる情報のジッタによる不具合を回避することができるネットワーク接続機器及びこれに用いるタイムスタンプ処理方法に関する。
【０００２】
【従来の技術】
例えば、互いに異なる複数の場所で、テレビ会議システムをネットワークに接続してテレビ会議を行う場合等、ネットワーク接続機器が広く利用されるようになってきている。複数のネットワーク接続機器をネットワークに接続して、長時間、映像データや音声データを送受信する場合には、その複数のネットワーク接続機器間で同期を取る必要がある。複数のネットワーク接続機器間で同期を取らないと、映像が途切れる等の不具合を生じることとなる。
【０００３】
そこで、データを送信するネットワーク接続機器（送信機器）は第１のタイムスタンプを送信し、データを受信するネットワーク接続機器（受信機器）は、受信した第１のタイムスタンプを基にして、受信機器で生成する第２のタイムスタンプの進行速度を調整するようにしている。これにより、送信機器と受信機器とを同期させることができる。
【０００４】
複数のネットワーク接続機器間での同期方法は、一例として特許文献１に記載されている。また、この種のネットワーク接続機器では、ネットワーク上を流れる情報のジッタが、ネットワーク接続機器間での同期に悪影響を及ぼす。ネットワーク接続機器でジッタ除去を行うことは、特許文献２に記載されている。なお、特許文献２には、ジッタ除去の具体的な構成（方法）は記載されていない。
【０００５】
【特許文献１】
特開平９−５５７５４号公報
【特許文献２】
特開２０００−９２１３０号公報
【０００６】
【発明が解決しようとする課題】
ネットワーク上を流れる情報のジッタ量は一定ではなく、ジッタ量は状況に応じて大きく変動する。複数のネットワーク接続機器間で同期を取りながら複数のネットワーク接続機器を動作させる場合、ジッタによる誤差の大きい時間情報を的確に除去しなければ、ネットワーク接続機器の動作に悪影響を与えてしまう。従来のネットワーク接続機器及びタイムスタンプ処理方法では、不確定なジッタ量に対応して誤差の大きい時間情報を的確に除去することができないという問題点があった。
【０００７】
本発明はこのような問題点に鑑みなされたものであり、不確定なジッタ量に対応して誤差の大きい時間情報を的確に除去することができるネットワーク接続機器及びこれに用いるタイムスタンプ処理方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明は、上述した従来の技術の課題を解決するため、
（ａ）ネットワークに接続されて使用されるネットワーク接続機器において、前記ネットワークを介して順次入力される第１のタイムスタンプを取り込む取り込み手段（１５Ｂ）と、時計として動作するカウンタ（１２Ｂ）と、前記カウンタのカウント値を基にして第２のタイムスタンプを生成する生成手段（１３Ｂ）と、前記第１のタイムスタンプと前記第２のタイムスタンプとの差分を用いて、前記第１のタイムスタンプのジッタ量を統計的に演算する演算手段（１１Ｂ）と、順次入力される前記第１のタイムスタンプの内、前記演算手段によって演算したジッタ量が所定の値を越える前記第１のタイムスタンプを除外する除外手段（１１Ｂ）と、前記除外手段によって除外されなかった前記第１のタイムスタンプと前記第２のタイムスタンプとを用いて、前記生成手段で生成する前記第２のタイムスタンプを補正する補正手段（１１Ｂ）とを備えて構成したことを特徴とするネットワーク接続機器を提供し、
（ｂ）ネットワーク接続機器に用いるタイムスタンプ処理方法において、前記ネットワークを介して順次入力される第１のタイムスタンプを取り込む取り込みステップと、時計として動作するカウンタのカウント値を基にして第２のタイムスタンプを生成する生成ステップと、前記第１のタイムスタンプと前記第２のタイムスタンプとの差分を用いて、前記第１のタイムスタンプのジッタ量を統計的に演算する演算ステップと、順次入力される前記第１のタイムスタンプの内、前記演算ステップにて演算したジッタ量が所定の値を越える前記第１のタイムスタンプを除外する除外ステップと、前記除外ステップにて除外されなかった前記第１のタイムスタンプと前記第２のタイムスタンプとを用いて、前記生成ステップで生成する前記第２のタイムスタンプを補正する補正ステップとを含むことを特徴とするタイムスタンプ処理方法を提供するものである。
【０００９】
【発明の実施の形態】
以下、本発明のネットワーク接続機器及びこれに用いるタイムスタンプ処理方法について、添付図面を参照して説明する。図１はネットワーク接続機器の使用例を示すブロック図、図２は本発明のネットワーク接続機器の一実施形態を示すブロック図、図３はネットワーク上を流れるデータを説明するための図、図４は図２中のタイムスタンプ発生部１３Ｂの具体的構成例を示すブロック図、図５は本発明のタイムスタンプ処理方法の一実施形態を説明するためのフローチャート、図６は本発明のタイムスタンプ処理方法を説明するための特性図である。
【００１０】
まず、図１を用いて、ネットワーク接続機器の使用例について説明する。図１において、ネットワーク接続機器１Ａ，１Ｂはネットワーク２に接続されている。ネットワーク接続機器１Ａには、モニタ３Ａ、スピーカ４Ａ、カメラ５Ａ、マイク６Ａが接続されている。ネットワーク接続機器１Ｂには、モニタ３Ｂ、スピーカ４Ｂ、カメラ５Ｂ、マイク６Ｂが接続されている。ネットワーク接続機器１Ａ，１Ｂは一例としてコーデック装置であり、両者は同じ構成である。
【００１１】
ネットワーク接続機器１Ａが送信機器、ネットワーク接続機器１Ｂが受信機器として使用される場合には、カメラ５Ａからの映像データやマイク６Ａからの音声データがネットワーク接続機器１Ａによりネットワーク２へと送信される。その映像データや音声データはネットワーク接続機器１Ｂで受信され、映像データによる映像はモニタ３Ｂに表示され、音声データでによる音声はスピーカ４Ｂで再生される。ネットワーク接続機器１Ｂが送信機器、ネットワーク接続機器１Ａが受信機器として使用される場合には、その逆となる。
【００１２】
ここで、図２を用いて、ネットワーク接続機器１Ａ，１Ｂの具体的構成について説明する。上記のように、ネットワーク接続機器１Ａ，１Ｂは同じ構成であり、いずれも送信機器及び受信機器となり得る。しかしながら、図２では、簡略化のため、ネットワーク接続機器１Ａを送信機器、ネットワーク接続機器１Ｂを受信機器として使用した場合について示し、それぞれ、送信機器としての動作、受信機器として動作について説明することとする。
【００１３】
図２において、ネットワーク接続機器１Ａは、中央処理装置（ＣＰＵ）１１Ａ、時計１２Ａ、タイムスタンプ発生部１３Ａ、デジタル・シグナル・プロセッサ（ＤＳＰ）１４Ａ、データ送信部１５Ａを備える。ＤＳＰ１４Ａは、ＣＰＵ１１Ａの制御により、ＭＰＥＧエンコーダとしての機能を果たしたり、ＭＰＥＧデコーダとしての機能を果たす。ＤＳＰ１４ＡをＭＰＥＧエンコーダとして動作させるか、ＭＰＥＧデコーダとして動作させるかは、ＣＰＵ１１Ａに内蔵するソフトウェア（プログラム）によって切り換えることができる。送信機器としてのネットワーク接続機器１Ａでは、ＤＳＰ１４Ａはエンコーダとして動作する。
【００１４】
時計１２Ａは、一例として、９０ｋＨｚで発振する３２ビットのカウンタよりなる。時計１２Ａからのカウンタ値はＣＰＵ１１Ａに入力される。ＣＰＵ１１Ａは入力されたカウンタ値を基にしてタイムスタンプを生成するよう、タイムスタンプ発生部１３Ａを制御する。送信機器で生成するタイムスタンプをＰＣＲ（Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）と称している。以下、タイムスタンプ発生部１３Ａで発生するタイムスタンプをＰＣＲと呼ぶこととする。
【００１５】
タイムスタンプ発生部１３Ａで発生したＰＣＲはＣＰＵ１１Ａに入力される。ネットワーク接続機器１Ａは、ＰＣＲを基準として動作する。図２では図示を省略したカメラ５Ａやマイク６Ａからのデータは、ＤＳＰ１４ＡによってＭＰＥＧエンコードされ、圧縮データとしてＣＰＵ１１Ａに入力される。ＣＰＵ１１Ａは、ＰＣＲと映像または音声の圧縮データとを合わせて、データ送信部１５Ａに供給する。データ送信部１５Ａはメモリと送信ドライバとを備えており、一旦メモリに記憶されたデータをネットワーク２へと送信する。
【００１６】
一方、ネットワーク接続機器１Ｂは、中央処理装置（ＣＰＵ）１１Ｂ、時計１２Ｂ、タイムスタンプ発生部１３Ｂ、デジタル・シグナル・プロセッサ（ＤＳＰ）１４Ｂ、データ受信部１５Ｂを備える。ＤＳＰ１４Ｂは、ＣＰＵ１１Ｂの制御により、ＭＰＥＧエンコーダとしての機能を果たしたり、ＭＰＥＧデコーダとしての機能を果たす。ＤＳＰ１４ＢをＭＰＥＧエンコーダとして動作させるか、ＭＰＥＧデコーダとして動作させるかは、ＣＰＵ１１Ｂに内蔵するソフトウェア（プログラム）によって切り換えることができる。受信機器としてのネットワーク接続機器１Ｂでは、ＤＳＰ１４Ｂはデコーダとして動作する。
【００１７】
時計１２Ｂは、一例として、９０ｋＨｚで発振する３２ビットのカウンタよりなる。時計１２Ｂからのカウンタ値はＣＰＵ１１Ｂに入力される。ＣＰＵ１１Ｂは入力されたカウンタ値を基にしてタイムスタンプを生成するよう、タイムスタンプ発生部１３Ｂを制御する。受信機器で生成するタイムスタンプをＳＴＣ（Ｓｙｓｔｅｍ  Ｔｉｍｅ  Ｃｌｏｃｋ）と称している。以下、タイムスタンプ発生部１３Ｂで発生するタイムスタンプをＳＴＣと呼ぶこととする。タイムスタンプ発生部１３Ｂで発生したＳＴＣはＣＰＵ１１Ｂに入力される。
【００１８】
データ受信部１５Ｂは受信ドライバとメモリとを備えており、受信された一旦メモリに記憶されたデータは、ＣＰＵ１１Ｂに入力される。ＣＰＵ１１Ｂは、入力されたデータに含まれるＰＣＲと映像または音声の圧縮データとを分離し、圧縮データをＤＳＰ１４Ｂに供給する。ＤＳＰ１４Ｂは入力された圧縮データをＭＰＥＧデコードし、デコードしたデータを図２では図示を省略したモニタ３Ｂやスピーカ４Ｂに供給する。
【００１９】
また、ＣＰＵ１１Ｂは、ＰＣＲを基にして、タイムスタンプ発生部１３Ｂで発生するＳＴＣの進行速度（システムクロックの発振周波数等）を調整するよう、タイムスタンプ発生部１３Ｂを制御する。入力されたＰＣＲを基にして調整しながら生成したＳＴＣは、ＣＰＵ１１Ｂに入力される。ネットワーク接続機器１Ｂは、ＳＴＣを基準として動作する。
【００２０】
図３は、ネットワーク２上を流れるデータを示している。ネットワーク２上を流れるデータは、Ｄ１，Ｄ２，Ｄ３…をデータの１単位としたデータストリームである。それぞれの単位データＤ１，Ｄ２，Ｄ３…は、ＰＣＲを含む複数の情報が集まって形成されたパケット群である。
【００２１】
図３に示すように、単位データの間隔は一定ではなく、データ間隔はばらついている。このように、ネットワーク２上を流れるデータのジッタ量は、一定ではなく、不確定である。図３の例では、単位データＤ１，Ｄ２の間隔はやや狭く、単位データＤ８，Ｄ９の間隔は非常に広くなっている。この間隔の違いをジッタと呼び、このジッタにより時間情報の到達時刻のずれには誤差が生じる。
【００２２】
この誤差が非常に大きい時間情報を除去する手法としては、誤差量の絶対値が所定の値を越えたとき、即ち、極めて間隔が狭い場合や極めて間隔が広い場合のＰＣＲを除外することが考えられる。しかしながら、単純な絶対値でＰＣＲを除外すると、全てのＰＣＲが除外されてしまって、ネットワーク接続機器の同期がとれなくなってしまうこともあり得る。
【００２３】
そこで、本発明では、ＣＰＵ１１Ｂにて、以下の手順によりジッタに起因する誤差の大きい時間情報を除去する。図５に示すように、ステップＳ１にて、ジッタの標準偏差値σを算出する。具体的には、次の計算式による。
ｘ（ｉ）＝ＰＣＲ（ｉ）−ＳＴＣ（ｉ）      …（１）
まず、（１）式で、ネットワーク接続機器１Ａより入力されたＰＣＲと、ネットワーク接続機器１Ｂで発生したＳＴＣとの差分を取る。ｉは時系列順番である。
【００２４】
そして、次の数１にて示す（２）式で、（１）式で得たｘの平均値Ａｖｇｘを計算し、次の数２にて示す（３）式で標準偏差値σを算出する。（２），（３）式中、ｎは所定の総サンプル数、ｉは時系列順番である。
【００２５】
【数１】
2004289544.tif 000003
【００２６】
【数２】
2004289544.tif 000004
【００２７】
このようにして得た標準偏差値σの偏差Δｘを横軸、確率をｙとすると、図６に示すような放物線状の確率分布曲線を示す。ステップＳ２にて、偏差Δｘが±２σを越える差分値ｘ（ｉ）を示すＰＣＲを除外する。±２σ以内の範囲は発生確率が９５．４５％以上の範囲であり、±２σを越える範囲の発生確率は、４．５５％未満である。そして、ステップＳ３にて、総サンプル数ｎから除外するデータを差し引いたサンプル数ｍで、新たに平均値を算出する。この平均値Ａｖｇｘ′は、次の数３にて示す（４）式となる。
【００２８】
【数３】
2004289544.tif 000005
【００２９】
次に、ステップＳ４にて、次の数４にて示す（５）式により、スムージング演算を施して、ＳＴＣの補正値Ｖを生成する。（５）式中、ｋはループゲインであり、１以下の値とする。この（５）式によるスムージング演算により、ジッタの変動に徐々に追従することができ、タイムスタンプ処理動作の急激な変動を回避することができる。
【００３０】
【数４】
2004289544.tif 000006
【００３１】
ＣＰＵ１１Ｂは、以上のようにして生成した補正値Ｖを用いて、タイムスタンプ発生部１３Ｂにより生成するＳＴＣを調整する。図４に示すように、タイムスタンプ発生部１３Ｂは、ＶＣＸＯ制御パルスカウンタ１３１、ＶＣＸＯ（電圧制御水晶発振器）１３２、分周器１３３、ＳＴＣカウンタ１３４とを備える。補正値Ｖは、ＶＣＸＯ制御パルスカウンタ１３１に入力される。ＶＣＸＯ制御パルスカウンタ１３１は、補正値Ｖに応じて、ＶＣＸＯ１３２の発振を制御するための制御パルスを発生する。
【００３２】
ＶＣＸＯ１３２の発振出力は、分周器１３３に入力されて分周される。分周器１３３の分周出力は、ＳＴＣカウンタ１３４に入力される。ＳＴＣカウンタ１３４は、入力された分周器１３３の分周出力をカウントして、ＳＴＣを生成する。ＳＴＣカウンタ１３４は、時計１２Ｂと同一であってもよい。
【００３３】
なお、本実施形態では、統計的な演算方法として、標準偏差値σを用いたが、σの２乗である分散値を用いてもよい。本発明は以上説明した本実施形態に限定されることなく、本発明の要旨を逸脱しない範囲において種々変更可能である。
【００３４】
【発明の効果】
以上詳細に説明したように、本発明のネットワーク接続機器及びこれに用いるタイムスタンプ処理方法によれば、不確定なジッタ量に対応して誤差の大きい時間情報を的確に除去することができる。よって、複数のネットワーク接続機器を的確に同期させることが可能となる。
【図面の簡単な説明】
【図１】ネットワーク接続機器の使用例を示すブロック図である。
【図２】本発明のネットワーク接続機器の一実施形態を示すブロック図である。
【図３】ネットワーク上を流れるデータを説明するための図である。
【図４】図２中のタイムスタンプ発生部１３Ｂの具体的構成例を示すブロック図である。
【図５】本発明のタイムスタンプ処理方法の一実施形態を説明するためのフローチャートである。
【図６】本発明のタイムスタンプ処理方法を説明するための特性図である。
【符号の説明】
１Ａ，１Ｂ  ネットワーク接続機器
２  ネットワーク
１１Ａ，１１Ｂ  中央処理装置（ＣＰＵ）（演算手段，除外手段，補正手段）
１２Ａ，１２Ｂ  時計（カウンタ）
１３Ａ  タイムスタンプ発生部
１３Ｂ  タイムスタンプ発生部（生成手段）
１４Ａ，１４Ｂ  デジタル・シグナル・プロセッサ（ＤＳＰ）
１５Ａ  データ送信部
１５Ｂ  データ受信部（取り込み手段）
【図１】
2004289544.tif 000007
【図２】
2004289544.tif 000008
【図３】
2004289544.tif 000009
【図４】
2004289544.tif 000010
【図５】
2004289544.tif 000011
【図６】
2004289544.tif 000012