(57)【要約】【課題】送信データのパケット化に基づき発生する周波数変動を抑制するビットレート推定方法及びクロック周波数推定方法と、該ビットレート推定方法及び／又はクロック周波数推定方法を実行するデータ受信装置を提供する。【解決手段】ビットレート推定方法は、一定ビットレートのデータを含むパケットを受信し、受信パケットに含まれるデータをデータバッファに格納するステップと、データバッファに蓄積されているデータ量である蓄積データ量と、データバッファに蓄積されるデータ量の目標値である目標データ量との差である目標偏差量を周期的に算出するステップと、周期的に算出された複数の目標偏差量の移動平均演算を行うステップと、目標偏差量の移動平均値からビットレートを推定するステップとを含んでいる。【選択図】図１
2007150529.tif 000002
【特許請求の範囲】
【請求項１】
所定のパケット送信周期で送信された、一定ビットレートのデータを含むパケットを受信し、パケットに含まれるデータのビットレートを推定する方法であって、
受信パケットに含まれるデータをデータバッファに格納するステップと、
データバッファに蓄積されているデータ量である蓄積データ量と、データバッファに蓄積されるデータ量の目標値である目標データ量との差である目標偏差量を周期的に算出するステップと、
周期的に算出された複数の目標偏差量の移動平均演算を行うステップと、
目標偏差量の移動平均値からビットレートを推定するステップと、
を有することを特徴とするビットレート推定方法。
【請求項２】
移動平均演算の対象区間の長さは、パケット送信周期の整数倍であること、
を特徴とする請求項１に記載のビットレート推定方法。
【請求項３】
請求項１又は２に記載のビットレート推定方法によって推定されたビットレートに基づきクロック周波数を推定することを特徴とするクロック周波数推定方法。
【請求項４】
所定のパケット送信周期で送信された、一定ビットレートのデータを含むパケットを受信し、パケットに含まれるデータのビットレートを推定するデータ受信装置であって、
受信したパケットに含まれるデータを格納するデータバッファと、
データバッファに蓄積されているデータ量である蓄積データ量と、データバッファに蓄積されるデータ量の目標値である目標データ量との差に基づきビットレートを推定するビットレート推定手段と、
推定したビットレートで、データバッファからデータを取り出すデータ取出手段と、
を有することを特徴とするデータ受信装置。
【請求項５】
蓄積データ量は、データバッファに格納したデータ量と、推定したビットレートでの読み出しデータ量との差から計算すること、
を特徴とする請求項４に記載のデータ受信装置。
【請求項６】
ビットレート推定手段は、
蓄積データ量と目標データ量の差である目標偏差量を計算する差計算手段と、
目標偏差量に対し、パケット送信周期の整数倍に渡る区間に対しての移動平均演算を施す移動平均演算手段と、
移動平均演算手段による移動平均演算結果に基づきビットレートの推定値を出力するビットレート演算手段と、
を有することを特徴とする講求項４又は５に記載のデータ受信装置。
【請求項７】
移動平均演算手段は、
複数の目標偏差量を格納する目標偏差量格納手段と、
目標偏差量格納手段に格納されている目標偏差量のうち、最新のものから所定数の目標偏差量の和を計算する和計算手段と、
該目標偏差量の和を、所定数で除する平均計算手段と、
を有することを特徴とする請求項６に記載のデータ受信装置。
【請求項８】
目標偏差量を所定の周期ごとに目標偏差量格納手段に格納すること、
を特徴とする請求項７に記載のデータ受信装置。
【請求項９】
前記所定数と、前記所定の周期の積が、前記パケット送信周期の整数倍であることを特徴とする請求項８に記載のデータ受信装置。
【請求項１０】
推定されたビットレートの推定値に基づいてクロックを生成するクロック生成手段を有することを特徴とする請求項４から９のいずれか１項に記載のデータ受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ送信装置とデータ受信装置とが非同期ネットワークを介して接続しているため、データ送信装置が使用するクロックと同一のクロックを、ネットワークからデータ受信装置へ供給できない場合において、データ送信装置がパケット化して送信する固定ビットレートの信号のビットレート及び同期のためのクロック周波数を、データ受信装置側で推定する技術に関する。
【背景技術】
【０００２】
データ受信装置とデータ送信装置がＩＰ網のような非同期ネットワークを介して接続する通信システムにおいて、データ受信装置が、データ送信装置の使用クロックに同期したクロックを再生するための方法としては、適応クロック法が広く知られている。適応クロック法については、例えば、非特許文献１にその原理が記載されている。
【０００３】
非特許文献１によれば、適応クロック法は、データ送信装置が一定のビットレートでデータを送信する場合、データ受信装置とデータ送信装置が非同期ネットワークを介して接続されていても、データ受信装置側で観測される単位時間当たりの受信データ量の平均値が、データ送信装置での送信ビットレートに確率的に一致することをその原理としている。つまり、データ受信装置は、ある期問に受信したデータ量をその期間で除することによりデータ送信装置での送信ビットレートを推定可能である。データ受信装置はそのビットレートにー致するようにデータ受信装置のクロック周波数を制御して、データ送信装置が使用しているクロックを再生する。クロック周波数とビットレートは固定の定数倍の関係にあるから、ビットレートを推定することにより、クロック周波数を推定することが可能である。
【０００４】
尚、データ送信装置が固定ビットレートの信号をＩＰ網経由で送信する場合、複数個のデータが１つのパケットにまとめられて送信される。したがって、データ受信装置から見れば、データはその平均的なレートで到着するのではなく、バースト的に到着することになる。
【０００５】
データ受信装置がデータ送信装置でのビットレートを推定する方法として、データ受信装置が受信したデータ量と、推定したビットレートに基づき読み出したデータ量との差を、推定するビットレートにフィードバックする方法が知られている（例えば、特許文献１及び非特許文献２〜４参照。）。データはパケット化され、データ受信装置にはバースト的に到着するため、従来技術による方法では、データ量が急激に増加したときに、フィードバック量も急激に変化するという問題がある。フィードバック量が急激に変化するとクロック周波数も急激に変化し、結果としてクロック周波数が不安定になる。長時間の平均を取ればデータ送信装置のビットレートとデータ受信装置が推定するビットレートは一致するが、短期問の観測では、再生したクロックは、パケットが到着するたびに変動することになる。つまり、再生するクロック周波数は、セル又はパケット送信周期に対応するスペクトルの雑音を含んだものとなる。
【０００６】
【特許文献１】特許第３６６０５１７号明細書
【非特許文献１】ＩＴＵ−Ｔ  Ｉ．３６３．１、“Ｂ−ＩＳＤＮ  ＡＴＭ  Ａｄａｐｔａｔｉｏｎ  Ｌａｙｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ：Ｔｙｐｅ  １  ＡＡＬ”
【非特許文献２】山田浩利、田中健太郎、中島宏一、三尾武史、川和田光、“ＡＡＬタイプ１における「適応クロック法」に関する検討”、電子情報通信学会総合大会、Ｂ−８−２３、１９９７年
【非特許文献３】斉藤幸一、深田陽一、前田洋一、“ＰＩＤ制御を適用した適応クロック法の検討”、電子情報通信学会ソサイエティ大会、Ｂ−８−１７、２００４年
【非特許文献４】深田陽一、安田武、小松秀司、斉藤幸一、前田洋一、“比例・積分・微分（ＰＩＤ）制御型適応クロック法の実装と評価”、電子情報通信学会ソサイエティ大会、Ｂ−８−１３、2005年
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来技術によるビットレートの推定方法では、目標偏差量の単なる疑似平均値を用いたり、単なる低周波通過フィルタを挿入したりしていた。これにより、クロック周波数の変動はある程度抑制されるが、パケット送信周期は考慮していないので、必ずしもパケット送信周期が原因の周波数変動を抑制できていなかった。
【０００８】
したがって、本発明は、データ送信装置による送信データのパケット化に基づき発生する周波数変動をも抑制できるビットレート推定方法と、該ビットレート推定方法を実行するデータ受信装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明におけるビットレート推定方法によれば、
所定のパケット送信周期で送信された、一定ビットレートのデータを含むパケットを受信し、パケットに含まれるデータのビットレートを推定する方法であって、受信パケットに含まれるデータをデータバッファに格納するステップと、データバッファに蓄積されているデータ量である蓄積データ量と、データバッファに蓄積されるデータ量の目標値である目標データ量との差である目標偏差量を周期的に算出するステップと、周期的に算出された複数の目標偏差量の移動平均演算を行うステップと、目標偏差量の移動平均値からビットレートを推定するステップとを有することを特徴とする。
【００１０】
本発明のビットレート推定方法における他の実施形態によれば、  
移動平均演算の対象区間の長さは、パケット送信周期の整数倍であることも好ましい。
【００１１】
本発明のクロック周波数推定方法によれば、
前記ビットレート推定方法によって推定されたビットレートに基づきクロック周波数を推定することを特徴とする。
【００１２】
本発明におけるデータ受信装置によれば、
所定のパケット送信周期で送信された、一定ビットレートのデータを含むパケットを受信し、パケットに含まれるデータのビットレートを推定するデータ受信装置であって、受信したパケットに含まれるデータを格納するデータバッファと、データバッファに蓄積されているデータ量である蓄積データ量と、データバッファに蓄積されるデータ量の目標値である目標データ量との差に基づきビットレートを推定するビットレート推定手段と、推定したビットレートで、データバッファからデータを取り出すデータ取出手段とを有することを特徴とする。
【００１３】
本発明のデータ受信装置における他の実施形態によれば、
蓄積データ量は、データバッファに格納したデータ量と、推定したビットレートでの読み出しデータ量との差から計算することも好ましい。
【００１４】
また、本発明のデータ受信装置における他の実施形態によれば、
ビットレート推定手段は、蓄積データ量と目標データ量の差である目標偏差量を計算する差計算手段と、目標偏差量に対し、パケット送信周期の整数倍に渡る区間に対しての移動平均演算を施す移動平均演算手段と、移動平均演算手段による移動平均演算結果に基づきビットレートの推定値を出力するビットレート演算手段とを有することも好ましい。
【００１５】
更に、本発明のデータ受信装置における他の実施形態によれば、
移動平均演算手段は、複数の目標偏差量を格納する目標偏差量格納手段と、目標偏差量格納手段に格納されている目標偏差量のうち、最新のものから所定数の目標偏差量の和を計算する和計算手段と、該目標偏差量の和を、所定数で除する平均計算手段とを有することも好ましい。
【００１６】
更に、本発明のデータ受信装置における他の実施形態によれば、
目標偏差量を所定の周期ごとに目標偏差量格納手段に格納することも好ましい。
【００１７】
更に、本発明のデータ受信装置における他の実施形態によれば、
前記所定数と、前記所定の周期の積が、前記パケット送信周期の整数倍であることも好ましい。
【００１８】
更に、本発明のデータ受信装置における他の実施形態によれば、
推定されたビットレートの推定値に基づいてクロックを生成するクロック生成手段を有することも好ましい。
【発明の効果】
【００１９】
本発明によれば目標偏差量との差に対する、パケット送信周期の整数倍に渡る区間の移動平均演算を用いてビットレートの推定を行うことにより、パケット化によるデータ量の急激な変化に起因するクロック周波数の変動を抑制できる。これによりデータ受信装置において、データ送信装置が使用しているクロックに同期したクロックを安定して生成することができるという効果がある。
【発明を実施するための最良の形態】
【００２０】
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。
【００２１】
図１は、本発明によるデータ受信装置を含む通信システムの構成図である。図１によると、通信システムは、端末装置１０１及び１０３と、データ送信装置１０２と、データ受信装置１００と、通信網１０４から構成される。データ送信装置１０２は、端末装置１０３が出力する一定ビットレートのデータをパケット化して、一定のパケット送信周期で通信網１０４へ送信する。通信網１０４を介して伝送されたパケットはデータ受信装置１００が受信し、データ受信装置は、本発明によるビットレート推定方法によりデータ送信装置１０２が使用したクロックの推定及び再生、より詳細には端末装置１０３が送信したデータのビットレートの推定を行い、推定したビットレートで受信したデータを端末装置１０１に送信する。
【００２２】
図２は、本発明によるデータ受信装置１００の機能構成を示すブロック図である。図２によると、データ受信装置１００は、データバッファ１と、データ取出部２と、ビットレート推定部３と、クロック生成部４とを備えている。
【００２３】
データバッファ１には、通信網１０４より受信したパケットに含まれるデータが蓄積される。ビットレート推定部３は、データバッファ１に蓄積されているデータ量である蓄積データ量と、データバッファ１に蓄積されるべきデータ量の目標値である目標データ量との差に基づきデータ送信装置１０２でのデータ送信ビットレートを推定し、推定した値を推定ビットレートとして出力する。データ取出部２は、推定ビットレートで示された速度でデータバッファ１からデータを取り出す。取り出されたデータは、端末装置１０１に出力される。尚、目標データ量は、装置内部に予め保存されている値である。クロック生成部４は、推定ビットレートをある定数倍するなどしてクロック周波数とし、クロックを生成して出力する。端末装置１０１がクロックを必要とする装置の場合、このクロックを利用することができる。
【００２４】
図３は、本発明によるデータ受信装置１００の他の実施形態における機能構成を示すブロック図である。図３によると、図２に示す構成に加えて蓄積データ量算出部５を備えている。
【００２５】
図２に示す構成においては、ビットレート推定部３がデータバッファ１に蓄積されている蓄積データ量を直接モニタしていたが、本実施形態では、蓄積データ量算出部５が、受信し、データバッファ１に格納したデータ量と、推定ビットレートから計算できるデータ取出部２の取り出しデータ量との差に基づき蓄積データ量の算出を行う。
【００２６】
図２に示す構成では、蓄積データ量の範囲は０以上、データバッファ１の容量以下となるが、本実施形態においては、例えば、データバッファ１にデータがない場合でも、データ取出部２がデータを取り出したように扱うことで、負の値をもつ蓄積データ量を得ることができる。また、データバッファ１がバッファあふれを起こした場合でもバッファあふれを無視することで、データバッファ１の容量を超える値をもつ蓄積データ量を得ることができる。これら実際に取り得ない値を使用した場合は、０以上でデータバッファ１の容量以下の範囲のみを使用する場合に較べ、より大きな制御出力を得ることができ、推定ビットレートをより高速に送信ビットレートに近づけさせることができるという利点がある。
【００２７】
もちろん、蓄積データ量算出部５が、データバッファ１に実際に蓄積されているデータ量を示すように構成することもできる。これは、例えば、データ取出部２が実際にデータを取り出しときのみ蓄積データ量を減算し、また、データバッファ１がバッファあふれを起こした場合には、バッファあふれによる消失データ量だけ、蓄積データ量を減算するようにすればよい。
【００２８】
図４は、ビットレート推定部３の機能構成を示すブロック図である。図４によると、ビットレート推定部３は、差計算部３１と、移動平均演算部３２と、ビットレート演算部３３とを備えている。
【００２９】
差計算部３１は、蓄積データ量と目標データ量とからその差である目標偏差量を計算して出力する。移動平均演算部３２は、目標偏差量に対して移動平均演算を施してその結果を出力する。ビットレート演算部３３は、移動平均に対して所定の演算を施してビットレートを推定し、推定ビットレートを出力する。ビットレートを推定するための演算方法としては、例えば、非特許文献３に記載の比例・積分・微分演算の線形和とする方法などがある。
【００３０】
図５は、移動平均演算部３２の機能構成を示すブロック図である。図５によると、移動平均演算部３２は、目標偏差量格納部３２１と、和計算部３２２と、平均計算部３２３とを備えている。
【００３１】
目標偏差量は、所定の周期ＴＡごとに移動平均演算部３２に入力され、入力された目標偏差量は、目標偏差量格納部３２１に順に格納されていく。和計算部３２２は、最新Ｎ個の目標偏差量の和を計算し、平均計算部３２３は、和計算部３２２が計算した値をＮで除して移動平均値として出力する。ここでＮは、１以上の任意の整数であるＸに対して、以下の式を満足する整数である。
Ｎ＝パケット送信周期×Ｘ／ＴＡ            （１）
【００３２】
尚、目標偏差量格納部３２１は、少なくともＮ個の値を格納できるメモリ又はレジスタ等の記憶部を含み、新しく入力された目標偏差量を、例えば、一番古い目標偏差量を保持している記憶部へ上書きすることにより、あるいは、全体をシフトさせて常に同じ位置に保持することにより、少なくともＮ個の目標偏差量を保持する。
【００３３】
本発明によるデータ受信装置１００は、データバッファ１の蓄積データ量を目標データ量に等しく保つように推定ビットレートを制御する場合において、目標データ量との差に対してパケット送信周期の整数倍に渡る区間の移動平均演算を施すというものである。図６は、本発明によるデータ受信装置１００の動作概要を説明する図である。推定ビットレート速度でデータバッファ１からデータが取り出されるので、受信データ量と推定ビットレートの積分の差が蓄積データ量になる。更に、蓄積データ量と目標データ量の差が目標偏差量であり、目標偏差量に対して移動平均を計算し、これに基づいて推定ビットレートを出力する。
【００３４】
図６における、受信データ量から取出データ量までの伝達関数Ｈ（ｓ）を以下に示す。
Ｈ（ｓ）＝Ｆ（ｓ）・Ｇ（ｓ）／（ｓ＋Ｆ（ｓ）・Ｇ（ｓ））      （２）
ここで、Ｆ（ｓ）は移動平均演算部３２の伝達関数であり、Ｇ（ｓ）はビットレート演算部３３の伝達関数である。ビットレートの推定方法としてＰＩＤ制御を用いた場合、Ｇ（ｓ）は、
Ｇ（ｓ）＝ａ＋ｂｓ＋ｃ／ｓ          （３）
となる。ここで、ａは比例係数、ｂは微分係数、ｃは積分係数である。このときのＨ（ｓ）の周波数特性の利得｜Ｈ（ｊｗ）｜を図７に示す。図７において、ａを１００、ｂを０．００１、ｃを１０とし、式（１）のパケット送信周期を０．００１秒、ＴＡを０．０００１秒、Ｎを１００とした。したがって、移動平均を計算する周期は、０．０１秒である。
【００３５】
パケットが到着する周波数は１ｋＨｚであるが、図７の１ｋＨｚに対応する角周波数、つまり、２π×１ｋＨｚ＝６２８０Ｈｚの点では、利得が極端に小さくなっておりパケットの周期的な到着に由来するクロック周波数への変動を抑制できることがわかる。
【００３６】
また、非同期網におけるパケットの伝送では、パケット到着時問に揺らぎ、つまり、データ受信装置にパケットが正確な周期で到着するのではなく、到着周期に時問的なずれが生じる。これにより、目標偏差量の値が平均値よりも大きくなったり、小さくなったりするが、これらの変動はパケット到着の時に発生する。つまり、パケット到着の時間揺らぎに起因する変動が周期的なものである場合、その周期は、パケット到着問隔の整数倍になる。図７に示す様に、１００Ｈｚの整数倍の個所でも利得が極端に小さくなっており、本発明によるビットレート推定方法では、１００Ｈｚの整数倍の雑音を除去可能である。これは、パケット送信周波数１ｋＨｚの整数倍の雑音を除去可能であることを意味する。
【００３７】
以上説明したように、本発明によればデータ受信装置１００が、目標偏差量との差に対する、パケット送信周期の整数倍に渡る区間の移動平均演算を用いてビットレートの推定を行うことにより、パケット化によるデータ量の急激な変化に起因するクロック周波数の変動を抑制できる。これによりデータ受信装置１００において、データ送信装置１０２が使用しているクロックに同期したクロックを安定して生成することができるという効果がある。
【図面の簡単な説明】
【００３８】
【図１】本発明によるデータ受信装置を含む通信システムの構成図である。
【図２】本発明によるデータ受信装置の機能構成を示すブロック図である。
【図３】本発明によるデータ受信装置の他の実施形態における機能構成を示すブロック図である。
【図４】ビットレート推定部の機能構成を示すブロック図である。
【図５】移動平均演算部の機能構成を示すブロック図である。
【図６】本発明によるデータ受信装置の動作概要を説明する図である。
【図７】本発明によるビットレート推定の伝達関数の周波数特性を示す図である。
【符号の説明】
【００３９】
１  データバッファ
２  データ取出部
３  ビットレート推定部
４  クロック生成部
５  蓄積データ量算出部
３１  差計算部
３２  移動平均演算部
３３  ビットレート演算部
１００  データ受信装置
１０１、１０３  端末装置
１０２  データ送信装置
１０４  通信網
３２１  目標偏差量格納部
３２２  和計算部
３２３  平均計算部
【図１】
2007150529.tif 000003
【図２】
2007150529.tif 000004
【図３】
2007150529.tif 000005
【図４】
2007150529.tif 000006
【図５】
2007150529.tif 000007
【図６】
2007150529.tif 000008
【図７】
2007150529.tif 000009