JP3630601B2 - IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method - Google Patents
IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method Download PDFInfo
- Publication number
- JP3630601B2 JP3630601B2 JP36580499A JP36580499A JP3630601B2 JP 3630601 B2 JP3630601 B2 JP 3630601B2 JP 36580499 A JP36580499 A JP 36580499A JP 36580499 A JP36580499 A JP 36580499A JP 3630601 B2 JP3630601 B2 JP 3630601B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- difference
- count value
- synchronization timing
- frequency difference
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、インターネット・プロトコル・ネットワーク(以下「IPネットワーク」という。)に接続される端末装置(以下「IP端末装置」という。)並びに当該IP端末装置に適用して好適な周波数誤差範囲推定方法、周波数差推定方法及び推定所要時間算出方法に関する。
【0002】
【従来の技術】
現在、IPネットワークを介した音声データの実時間伝送サービス、いわゆるインターネット電話サービスが運用されている。本サービスの接続形態には、IPネットワークに接続されたパソコン同士の通信、IPネットワークを経由する電話機同士の通信など、さまざまな接続形態が考えられる。
【0003】
ところで、かかる通信に使用されるIP端末装置においては、送信側と受信側との間で、各装置に搭載される水晶発振子その他の部品の精度に起因して伝送クロック速度に誤差が生じるおそれがある。しかし、従来装置では、当該誤差が考慮されていない。このため、実際にクロック速度の誤差に起因したデータの余りや不足が生じると、受信側のIP端末装置が余り分に相当する音声データを廃棄又は不足分に相当する代替データを挿入する処理を行う。
【0004】
ところが、かかる処理が実行されると、本来のデータと、廃棄後又は挿入後のデータ(実際に音声として再生される波形)との間で、内容の同一性が損なわれてしまい、音声品質が低下するおそれがある。また、かかる処理後のデータをモデムにより復調すると、本来の波形とは全く異なったアナログ波形に復調されるおそれがあり、モデムを介在させる通信が実現不可能となる問題がある。
【0005】
そこで、従来装置にあっては、マスタ端末(クロックの基準となる端末)となる送信側のIP端末装置から一定周期で同期パケットを送信させて、スレーブ端末(マスタのクロックに合わせ込む端末)となる受信側のIP端末装置で受信させ、その受信の度にクロックが遅れているか進んでいるかを判定させてマスタ端末のクロックにスレーブ端末のクロックを徐々に合わせ込む手法の適用が考えられている。
【0006】
【発明が解決しようとする課題】
しかし、上述の方法には、クロック同期の調整を開始した時点での周波数のずれの大きさに応じて合わせ込みが完了するまでに要する時間にばらつきが生じるのを避け得ない欠点がある。すなわち、クロックの合わせ込みが完了するまでに要する時間にばらつきのために、調整開始から完了までに要する時間を一意に決定できない欠点がある。このため、IP端末装置としての仕様(例えば、装置立ち上げ後どれだけの時間が経てば同期が確立しているはずであるので、これこれの動作が可能である等。)を明確にできないという問題があった。
【0007】
【課題を解決するための手段】
(A)かかる課題を解決するため、第1の発明においては、他のIP端末装置が一定間隔で送信した同期タイミングパケットを受信して内部で発生されたクロックを送信側のクロックに同期させる同期機能を備えるIP端末装置において、(1) 内部クロックを発生するクロック生成手段と、(2) クロック生成手段の生成した内部クロックをカウントするクロックカウンタと、(3) 通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分を基に送信側のクロックとクロック生成手段の発生しているクロックの周波数差を推定し、その推定結果に応じてクロック生成手段を移相制御する制御手段とを備え、制御手段は、同期タイミングパケットが受信されて新たなカウント値の差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分が予め定めた誤差範囲内となったか否かを判定し、2つの傾斜角の差分が予め定めた誤差範囲内となったとき、当該2つの傾斜角の平均値を推定対象である送信側のクロックと上記クロック生成手段の発生しているクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定するようにする。
【0008】
このように、第1の発明においては、クロックの周波数差を推定してクロックの同期制御を行うため、相対的な位相関係(周波数が高いか低いか)のみに基づいて同期制御を行う場合に比して同期制御に要する時間の推定を可能とできる。
【0011】
(B)また、第2の発明においては、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する場合における周波数誤差の範囲を推定する方法において、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分の半分を推定対象である周波数差に含まれている周波数誤差の範囲と推定するようにする。
【0012】
(C)また、第3の発明においては、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する周波数差推定方法において、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出し、その2つの傾斜角の平均値を推定対象である送信側のクロックと受信装置内のクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定するようにする。
【0013】
(D)また、第4の発明においては、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する周波数差推定方法であって、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出し、その2つの傾斜角の平均値を推定対象である送信側のクロックと受信装置内のクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定する周波数差推定方法の場合において、上記周波数差の推定に必要な所要時間の算出方法において、受信装置内のクロックを基準に設定された同期タイミングパケットの受信予定間隔をT1、クロックの周波数差が推定されるまでに必要な受信予定間隔の個数をn、クロックの周波数差の目標誤差をW、ネットワーク上に現れるゆらぎの上限をYとするとき、同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差の推定に必要な所要時間T1×nを、T1×n=Y/Wに基づいて算出するようにする。
【0014】
【発明の実施の形態】
(A)第1の実施形態
(A−1)構成の説明
【0015】
【発明の実施の形態】
(A)第1の実施形態
(A−1)システムの形態
図1に、第1の実施形態に係るネットワークシステムの基本形態を示す。図1は、IPネットワーク1を介して2台のIP端末装置2及び3が接続された状態を表している。なおここでは説明を簡単にするために2台のIP端末装置のみをIPネットワークに接続しているが、勿論、3台以上のIP端末装置が接続される場合にも適用し得る。
【0016】
図1は、伝送クロックの同期機能に関し、マスタとして機能する同期マスタモジュール4をIP端末装置2に搭載し、スレーブとして機能する同期スレーブモジュール5をIP端末装置3に搭載した状態を表している。ここでは、マスタとして動作するIP端末装置とスレーブとして動作するIP端末装置の関係を固定する。
【0017】
勿論、IP端末装置2及び3の双方に、同期マスタモジュール4及び同期スレーブモジュール5の両方を搭載することも可能であるが、ここでは図1に示す構成について説明する。
【0018】
なお、同期マスタモジュール4及び同期スレーブモジュール5の両方を各IP端末装置に搭載する場合にいずれがマスタとして動作し、いずれがスレーブとして動作するかは取り決めによる。例えば、発呼側がマスタ、着呼側がスレーブとして動作しても良く、発呼側がスレーブ、着呼側がマスタとして動作しても良い。その他の取り決めも考えられる。
【0019】
(A−2)各部の構成
続いて、各モジュールの内部構成を説明する。
【0020】
図2に、同期マスタモジュール4の機能ブロック構成を示す。同期マスタモジュール4は、クロック生成器4A、割り込み発生器4B、コントローラ4C及びIPユニット4Dから構成されている。
【0021】
クロック生成器4Aは、水晶発振子などから構成される基準クロック生成手段である。割り込み発生器4Bは、クロック生成器4Aの発生した基準クロックをカウントし、一定個数に付き一回の割合で割り込み信号を発生する。この割り込み信号は、送信先となるIP端末装置3の動作状態に関係無く、一定間隔T1ごと常に生成される。
【0022】
コントローラ4Cは、割り込み信号を受けるたび、同期制御用データを出力する。IPユニット4Dは、IPネットワークを終端する手段であり、一定間隔T1ごとに入力される同期制御用データをパケット化し、同期タイミングパケットとして出力する。なお、当該IPユニット4Dは、他のデータパケットの送受にも用いられる。
【0023】
図3は、同期スレーブモジュール5の機能ブロック構成を示す。同期スレーブモジュール5は、IPユニット5A、コントローラ5B、クロックカウンタ5C、伝送クロック生成器5Dから構成されている。
【0024】
IPユニット5Aは、マスタ側のIPユニット4Dと同じくIPネットワークを終端する手段である。IPユニット5Aは、同期タイミングパケットが受信されると、これを同期制御用データとしてコントローラ5Bに出力する。
【0025】
コントローラ5Bは、同期制御用データが受信されるたびクロックカウンタ5Cのカウント値Xnを読み出して保存し、それらの値からマスタ側のクロック周波数と自身(スレーブ側)のクロック周波数との差を推定する手段である。また、コントローラ5Bは、周波数差の推定に許容する目的誤差Wの値を基に、当該推定に要する最長時間を求める手段としても機能する。さらに、コントローラ5Bは、前述の推定に要する最長時間の経過後、推定されたクロック周波数の差を打ち消すように伝送クロック生成器5Dの制御を行う。なお、当該コントローラ5Bによる制御動作の詳細は後述する。
【0026】
クロックカウンタ5Cは、伝送クロック生成器5Dが発生する基準クロックに基づいてカウントアップ動作を行う巡回型のカウンタである。ここで、クロックカウンタ5Cのカウント値の最大値(例えば、39999)は、0からその値をカウントアップするのに要する時間(一定間隔T2)が、同期タイミングパケットの送出間隔(一定間隔T1)と同じになるように設定されている。
【0027】
従って、同期マスタモジュール4のクロック生成器4Aの動作クロックの精度と、同期スレーブモジュール5内の伝送クロック生成器5Dの動作クロックの精度に全く誤差がない場合には、クロックカウンタ5Cが0から最大値(例えば、39999)までカウントアップするのに要する一定間隔T2は一定間隔T1と一致し、前述のコントローラ5Bが読み出すカウント値は常に同じ値になる。
【0028】
伝送クロック生成器5Dは、マスタ側のクロック生成器4Aと同様、水晶発振子などから構成される基準クロック生成手段である。そのクロック速度の設計値は、マスタ側のクロック生成器4Aと同じになっている。なお、伝送クロック生成器5Dは、コントローラ5Bからの制御に従って、発生するクロック速度を変更し得るよう構成されている。
【0029】
(A−3)同期処理動作
続いて、以上の構成を有する同期モジュール4及び5を搭載するIP端末装置2及び3間において行われる、伝送クロックの同期処理動作の内容を具体的に説明を行う。
【0030】
まず、伝送クロックの同期機能に関しマスタ側となるIP端末装置2は、スレーブ側となるIP端末装置3の動作状態とは無関係に一定間隔T1ごと同期タイミングパケットを送出する。もっとも、この同期タイミングパケットは常に送出されている必要はなく(送出されていても良いが)、スレーブ側と通信が行われている間のみ送出されていれば本願発明の目的を達成することができる。
【0031】
なお言うまでもなく、ここでの一定間隔T1は、IP端末装置2に搭載された同期マスタモジュール4のクロック生成器4Aが出力するクロック速度に応じて定まる。
【0032】
一方、伝送クロックの同期機能に関しスレーブ側となるIP端末装置3は、同期スレーブモジュール5のコントローラ5Bにおいて同期タイミングパケットの到着を監視しており、同期タイミングパケットの到着を確認するたび、その時点でのクロックカウンタ5Cのカウント値Xnの読み出しを行う。
【0033】
以後、通信を開始したIP端末装置3が最初に読み込んだカウント値をX0とし、2番目以降に読み込んだカウント値をXn(n=1、2…)とする。図4は、この対応関係を表している。なお、図4では時間軸を横軸にとり、全くゆらぎがない場合(一定の遅延は合っても良い)における同期タイミングパケットの伝送を実線で、ゆらぎがある場合における同期タイミングパケットの伝送を破線で表している。
【0034】
なお、カウント値X0については、当該の通信が終了されるか同期スレーブモジュール5の動作が停止するまでの間、コントローラ5B内のレジスタ等の記憶手段に保持され、途中で変更されることはない。
【0035】
コントローラ5Bの動作の説明に戻る。コントローラ5Bは、前述の通り、同期タイミングパケットの到着を確認するとクロックカウンタ5Cにその都度アクセスし、その時点におけるカウント値の読み出しを行う。
【0036】
ここで、クロックカウンタ5Cは、図5(A)に示すように、自装置内にある伝送クロック生成器5Dから供給される伝送クロックに基づいて0から所定値(例えば、39999)までカウントアップする動作を行っており、当該巡回的なカウントアップ動作により一定間隔T2の同期タイミングを得ている。
【0037】
従って、マスタ側とスレーブ側のクロック周波数が等しく(一定間隔T1とT2が等しく)、しかも、IPネットワーク1上にゆらぎが全くない場合(一定の遅延は合っても良い)には、図5(B)に示すように、読み出されるカウント値は常に同じ値になる。
【0038】
しかし、IPネットワーク1上にゆらぎが全く無くても(一定の遅延は合っても良い)、マスタ側とスレーブ側のクロック周波数に違いがあると(一定間隔T1とT2が相違すると)、図5(C)に示すように、読み出されるカウント値に周波数差に比例したずれが現れることになる。
【0039】
その一方で、かかる規則的なカウント値のずれが認められる場合には、その規則性を確認することにより、容易にクロック周波数のずれを特定することができる。
【0040】
ところが実際には、IPネットワーク1上における伝送にはゆらぎがあり、図5(D)に示すように、その影響によって読み出されるカウント値はクロック周波数のずれに応じて定まる本来の規則性(図中複数の巡回周期にわたって斜めに描いた直線)とは全く無関係なものとなる。このため、読み出されるカウント値の差分を単に監視するだけで、クロック周波数のずれに応じた本来の規則性を求めることは容易ではない。
【0041】
そこで、コントローラ5Bは、以下の手法によって一見無秩序に見えるカウント値の系列の中からクロック周波数のずれを推定する。この推定に際し、コントローラ5Bは、IPネットワーク1上におけるゆらぎの上限値をY(単位はX0、Xnと同じ。)とする。ここで、ゆらぎが無い場合にXn−X0(n=1、2、…)が採る値をZ(n)とすると、揺らぎがある場合におけるXn−X0の値は、Z(n)−Y≦Xn−X0≦Z(n)+Yのいずれかの値となる。
【0042】
このゆらぎがある場合のXn−X0をΔXnとすると、時間とΔXとの関係は図6のようになる。ここで、図中の黒丸は、各読み出しタイミングでのカウント値Xnの初期値X0に対する相対値ΔXnを表している。また、初期カウント値X0を始点とする直線LAはゆらぎが無い場合にカウント値が本来とるべき値の系列を結んだものである。また、初期カウント値Yを始点とする直線LBはゆらぎがある場合にカウント値がとり得る最大許容値の系列を結んだものである。また、初期カウント値−Yを始点とする直線LCはゆらぎがある場合にカウント値がとり得る最小許容値の系列を結んだものである。
【0043】
なお、通信中に生じ得るゆらぎの範囲はYであるので、各通信においてカウント値の現れる範囲は直線LBとLCで挟まれる全範囲ではなく、図中斜線で表される直線LD及びLEで挟まれる範囲に限られることになる。
【0044】
このため、図7に示すように、最大許容値の初期値を与える(0,Y)と各差分値ΔX(n)とを結ぶ線分LFの傾きは常に直線LBの傾き(すなわち、直線LAの傾き)よりも小さくなる関係が認められ、また、最小許容値の初期値を与える(0,−Y)と各差分値ΔX(n)とを結ぶ線分LGの傾きは直線LCの傾き(すなわち、直線LAの傾き)よりも大きくなる関係が認められる。
【0045】
そこで、本実施形態におけるコントローラ5Bは、新たな差分値ΔX(n)が算出されるたび、最大許容値の初期値を与える(0,Y)と各差分値ΔX(n)とを結ぶ線分LFのうちでその傾きがより大きくなるものの選択を行うと共に、最小許容値の初期値を与える(0,−Y)と各差分値ΔX(n)とを結ぶ線分LGのうちでその傾きがより小さくなるものの選択を行い、真に求めたい直線LAの傾きが存在し得る範囲を狭める処理を実施する。
【0046】
すなわち、コントローラ5Bは、図8→図9→図10→図11→図12→図7に示すように、2種類の線分LFとLGの傾きの差を狭めて真に求めたい直線LAの傾きが存在し得る範囲を狭める処理を実施する。
【0047】
やがて、線分LFの傾きとLGの傾きの差分が縮小して当該差分が予め定めた誤差の範囲内になると、コントローラ5Bは、両線分の傾きの平均をクロック周波数の差分に相当する傾きであると推定を行う。当然に、この推定値の精度は、予め定める誤差範囲を狭めることで高めることができる。
【0048】
実際には以上の処理は、以下に示す計算動作により実施される。すなわち、コントローラ5Bは、同期タイミングパケットの受信が通知されるたび、次の(1)式及び(2)式で与えられる2種類の傾きK1及びK2をそれぞれ計算し、その都度、前者については過去の計算によって得られた傾きより小さいものを、後者については過去の計算によって得られた傾きよりも大きいものの選択を行う。
【0049】
K1={(Xn−X0)+Y}/(T1×n) …(1)
K2={(Xn−X0)−Y}/(T1×n) …(2)
ここで、nは、1、2…の整数値である。また、(1)式で表される傾きK1は図7〜図12の線分LGの傾きに、(2)式で表される傾きK2は図7〜図12の線分LFの傾きにそれぞれ相当する。
【0050】
例えば、それまで保持されていた傾きK1の値が50で、新たに計算された傾きK1の値が40である場合、コントローラ5Bは、傾きK1の値として新たに計算された40という値を選択する。一方、それまで保持されていた傾きK2の値が20で、新たに計算された傾きK2の値が10である場合、コントローラ5Bは、傾きK2の値として値20をそのまま保持する。
【0051】
かかる一連の計算処理を繰り返すことで傾きK1とK2の差分は徐々に小さくなり(図8→図9→図10→図11→図12→図7のように)、時間的な制約を設けなければやがて2つの傾きはほぼ一致する状態になる。
【0052】
しかしながら、現実には限られた時間内にクロック周波数の差分を求め、その差分値に基づいてマスタ側の伝送クロックとスレーブ側の伝送クロックとの間に存在する差分を解消する必要がある。そこで、コントローラ5Bは、傾きK1及びK2の値が更新されるたびに現在の誤差範囲を次式により求め、その値が予め定めた範囲以下になっているか判定する。
【0053】
誤差範囲=±(K1−K2)/2 …(3)
(3)式で求めた値が予め定めた範囲内にない場合、コントローラ5Bは、新たな傾きK1、K2の算出と更新とを継続し、傾きK1、K2が更新されるたび同様の判定処理を実行する。一方、(3)式で求めた値が予め定めた範囲内にある場合、コントローラ5Bは、次式で与えられる傾きK1とK2の平均値を求めようとするクロック周波数の差分に相当する傾きであると推定し、当該推定値に応じた(すなわち、当該推定値に応じた周波数誤差を打ち消すような)制御信号を伝送クロック生成器5Dに出力する。
【0054】
推定値=(K1+K2)/2 …(4)
かくして、伝送クロック生成器5Dで生成されるクロック周波数は、確実にマスタ側のクロック周波数に制御される。
【0055】
ところで以上の説明は、クロック周波数誤差の推定開始から推定終了までの間に、同期タイミングパケットの受信のたびクロックカウンタ5Cから読み出されるカウント値にいずれも桁上がり(オーバーフロー)がない場合に支障無く成り立つものの、傾きK1及びK2を算出するのに用いる、すなわち(1)式及び(2)式におけるXn又はX0のいずれか一方に桁上がりがある場合には、(Xn−X0)の値が本来の差分を表さないため、正確なクロック周波数誤差を求めることができなくなる。例えば、クロックカウンタ5Cが0〜39999の場合、39999の次は0からカウントアップが継続されるため、傾きの正負や差分が全く異なった値になってしまう。
【0056】
そこで、本実施形態におけるコントローラ5Bは、図13に示す判定処理に従ってカウント値の桁上がりを補正し、常に正確な傾きK1及びK2を計算できるようにする。なお言うまでも無く、判定の順序は図13の場合に限るものでない。
【0057】
まず、コントローラ5Bは、同期タイミングパケットの受信の確認の後、新たなカウント値Xnが読み出されると、Xn−X0が”20000”より大きいか否かを判定する(ステップSP1)。
【0058】
このステップSP1で、肯定結果が得られた場合(負数がないために桁上がりの結果、Xnが非常に大きな値になって読み出された場合)、コントローラ5Bは、カウント値Xnを本来の負数に戻すべく”40000”を減算して補正値を得、その値からカウント値の初期値X0を減算することで、真の差分値を得る(ステップSP2)。例えば、Xnが”39998”でX0が”5”の場合、Xn−X0の補正値は、次式のようになる。
【0059】
(39998−40000)−5=−2−5=−7 …(5)
これに対して、ステップSP1で否定結果が得られた場合、コントローラ5Bは、さらにXn−X0が”−20000”より小さいか否かを判定する(ステップSP3)。
【0060】
ステップSP3で肯定結果が得られた場合(カウント値の最大値を超えたために、Xnが非常に小さい値になって読み出された場合)、コントローラ5Bは、カウント値の初期値X0をカウント値Xnに対する相対的な真値に戻すべく”40000”を減算して補正値を得、その値からカウント値のXnから減算することで、真の差分値を得る(ステップSP4)。例えば、Xnが”3”でX0が”39990”の場合、Xn−X0の補正値は、次式のようになる。
【0061】
3−(39990−40000)=3−(−10)=13 …(6)
そして、コントローラ5Bは、ステップSP3でも否定結果が得られた場合、前述の説明の通り、何らの補正を行わない条件下でカウント値の差分(Xn−X0)を計算する(ステップSP5)。
【0062】
このように、本実施形態におけるコントローラ5Bは、カウント値の桁上がりにも的確に対処し得るように構成されている。
【0063】
以上のように、本実施形態におけるコントローラ5Bは、上述の手法によって所定の精度でクロック周波数の差を特定し、その情報に基づいてクロック周波数を制御可能であるが、クロック周波数の差を特定するのにどの程度の時間を必要とするかが分からなければ依然として装置としての仕様を決定できない。
【0064】
そこで、本実施形態においては、上述の手法によるクロック周波数の差の特定方法によると、誤差範囲が予め定めた範囲内に収束するのに要する時間の最長値が、各同期タイミングパケットに全くゆらぎが無い場合(図6で全ての点が直線LAの上にある場合)に当ることに着目して当該時間の算出を実行する。
【0065】
すなわち、予め定める誤差範囲の目標値をWとするとき、傾きK1及びK2から算出される誤差範囲(K1−K2)/2が目標値Wと一致するまでの時間T1×nを次式のように決定する。
【0066】
T1×n=Y/W …(7)
(A−4)第1の実施形態の効果
以上のように、上述のIP端末装置3(特に、同期スレーブモジュール5としてコントローラ5Bを有するもの)を用いることにより、(K1+K2)/2±Wで与えられる傾きに相当する周波数の精度で、マスタ側のクロックとスレーブ側のクロックとの周波数のずれを最悪T1×n時間後には確定することができる。
【0067】
かくして、T1×n時間後には誤差範囲を明確にしたクロック周波数の設定が可能となり、動作保証の範囲を明確にしたネットワークシステム及びIP端末装置の設計が可能となる。
【0068】
(B)第2の実施形態
(B−1)システムの形態
図14に、第2の実施形態に係るネットワークシステムの基本形態を示す。14は、ブロードキャストドメインを構成するIPネットワーク1を介して接続された一台のIP端末装置2と複数台のIP端末装置3間において伝送クロック速度の違いを調整する場合のシステム形態について表したものである。ただし、図14には、図1と対応する部分に同一符号を付して示している。
【0069】
第2の実施形態と第1の実施形態との違いは、第1の実施形態が相手先となるスレーブ側のIP端末装置3を特定して同期タイミングパケットを送信したのに対し、この第2の実施形態では、当該同期タイミングパケットをブロードキャストパケットとしてドメイン内に存する全てのIP端末装置に同報する点が異なる。
【0070】
すなわち、本実施形態の場合、同期マスタモジュール4を搭載するIP端末装置2は、同期スレーブモジュール5を搭載する全てのIP端末装置3に対し、同期タイミングパケットを一定間隔T1ごとにブロードキャストする点が異なる。
【0071】
なお、同期スレーブモジュール5を搭載する各IP端末装置3における同期確立動作は第1の実施形態で説明した動作と同じであり、スレーブ側となるIP端末装置のそれぞれが、自装置の伝送クロック速度をマスタ側の伝送クロック速度に同期させる動作を実行されることになる。
【0072】
(B−2)効果
かくして、第2の実施形態によれば、以下の効果が得られることになる。すなわち、同一ブロードキャストドメイン内に位置する全ての同期スレーブモジュール5は、そのいずれについても、同一ブロードキャストドメイン内に位置する同期マスタモジュール4との同期が確保される。従って、各同期スレーブモジュール5相互間についても、同期マスタモジュール4との同期を前提として、伝送クロックの同期が確保されることになる。
【0073】
よって、同期スレーブモジュール5を搭載するIP端末装置3間における通信においても、データの廃棄や代替データの挿入が一切不要となり、長時間に亘り(時間制限無く)、通信を行うことが可能となる。すなわち、同一のブロードキャストドメイン内に位置する全てのIP端末装置(同期スレーブモジュール5を搭載するものに限らず、同期マスタモジュール4を搭載するものも含む)間で、モデム通信が可能となり、回線交換と同等の品質の通話を可能とできる。
【0074】
また、このように同一のブロードキャストドメイン内に位置する全てのIP端末装置(同期スレーブモジュール5を搭載するものに限らず、同期マスタモジュール4を搭載するものも含む)間において伝送クロック速度の同期が確保されるため、1つの同期マスタモジュール又は同期スレーブモジュールを搭載するだけで(すなわち、各チャネルごとに各モジュールを搭載しなくても)、複数チャネルの同時通話を実現できる。
【0075】
(C)他の実施形態
上述の実施形態においては、特に実時間性の高い音声データを伝送する場合を前提に説明したが、伝送される情報としてはこれに限るものでなく、いわゆるテレビ電話や放送系の映像データのように実時間性が要求される他の情報を伝送する場合にも適用し得る。
【0076】
【発明の効果】
以上のように、第1の発明によれば、他のIP端末装置が一定間隔で送信した同期タイミングパケットを受信して内部で発生されたクロックを送信側のクロックに同期させる同期機能を備えるIP端末装置に、(1) 内部クロックを発生するクロック生成手段と、(2) クロック生成手段の生成した内部クロックをカウントするクロックカウンタと、(3) 通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分を基に送信側のクロックとクロック生成手段の発生しているクロックの周波数差を推定し、その推定結果に応じてクロック生成手段を移相制御する制御手段とを備え、制御手段が同期タイミングパケットが受信されて新たなカウント値の差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分が予め定めた誤差範囲内となったか否かを判定し、2つの傾斜角の差分が予め定めた誤差範囲内となったとき、当該2つの傾斜角の平均値を推定対象である送信側のクロックとクロック生成手段の発生しているクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定することにより、相対的な位相関係(周波数が高いか低いか)のみに基づいて同期制御を行う場合に比して同期制御に要する時間の推定を可能とできる。
【0078】
また、第2の発明によれば、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する場合における周波数誤差の範囲を推定する方法において、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分の半分を推定対象である周波数差に含まれている周波数誤差の範囲と推定することにより、周波数誤差を高精度で推定できる。
【0079】
また、第3の発明によれば、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する周波数差推定方法において、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出し、その2つの傾斜角の平均値を推定対象である送信側のクロックと受信装置内のクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定することにより、周波数差を高精度で推定できる。
【0080】
また、第4の発明によれば、一定間隔ごと送信される同期タイミングパケットの受信タイミングを、受信装置内のクロックにて動作するクロックカウンタのカウント値として検出し、そのカウント値の情報を基に同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差を推定する周波数差推定方法であって、通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出し、その2つの傾斜角の平均値を推定対象である送信側のクロックと受信装置内のクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定する周波数差推定方法の場合において、上記周波数差の推定に必要な所要時間の算出方法において、受信装置内のクロックを基準に設定された同期タイミングパケットの受信予定間隔をT1、クロックの周波数差が推定されるまでに必要な受信予定間隔の個数をn、クロックの周波数差の目標誤差をW、ネットワーク上に現れるゆらぎの上限をYとするとき、同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差の推定に必要な所要時間T1×nを、T1×n=Y/Wに基づいて算出するようにする。このように、第5の発明によれば、クロックの周波数差の推定に必要な所要時間を予め確定できるため、装置の仕様を容易に設定できる。
【図面の簡単な説明】
【図1】第1の実施形態に係るネットワークシステムの全体構成を示す図である。
【図2】同期マスタモジュールの機能ブロック構成を示す図である。
【図3】同期スレーブモジュールの機能ブロック構成を示す図である。
【図4】同期タイミングパケットの伝送ゆらぎとの関係を示す図である。
【図5】カウント値とクロック周波数差との関係及び伝送ゆらぎとの関係を示す図である。
【図6】クロック周波数の差分に起因したカウント値の出現範囲と伝送ゆらぎに起因したカウント値の出現範囲との関係を説明する図である。
【図7】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その1)。
【図8】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その2)。
【図9】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その3)。
【図10】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その4)。
【図11】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その5)。
【図12】クロック周波数の差分に応じた傾きの推定原理を説明する図である(その6)。
【図13】カウント値の桁上がりを考慮したカウント値の差分算出処理手順を示すフローチャートである。
【図14】第2の実施形態に係るネットワークシステムの全体構成を示す図である。
【符号の説明】
1…IPネットワーク、2、3…IP端末装置、4…同期マスタモジュール、4A…クロック生成器、4B…割り込み発生器、4C…コントローラ、4D…IPユニット、5…同期スレーブモジュール、5A…IPユニット、5B…コントローラ、5C…クロックカウンタ、5D…伝送クロック生成器。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a terminal device (hereinafter referred to as “IP terminal device”) connected to an Internet protocol network (hereinafter referred to as “IP network”) and a frequency error range estimation method suitable for application to the IP terminal device. The present invention relates to a frequency difference estimation method and an estimated required time calculation method.
[0002]
[Prior art]
Currently, a real-time transmission service of voice data via an IP network, a so-called Internet telephone service is in operation. Various connection forms such as communication between personal computers connected to the IP network and communication between telephones via the IP network are conceivable as connection forms of this service.
[0003]
By the way, in an IP terminal device used for such communication, an error may occur in the transmission clock speed due to the accuracy of the crystal oscillator and other components mounted on each device between the transmission side and the reception side. There is. However, this error is not taken into consideration in the conventional apparatus. For this reason, when a surplus or deficiency of data due to an error in the clock speed actually occurs, the receiving side IP terminal apparatus performs processing for discarding the voice data corresponding to the surplus or inserting alternative data corresponding to the deficiency. Do.
[0004]
However, when such processing is executed, the identity of the content is lost between the original data and the data after discarding or insertion (the waveform that is actually reproduced as sound), and the sound quality is reduced. May decrease. Further, when the data after such processing is demodulated by the modem, there is a risk that the data will be demodulated into an analog waveform that is completely different from the original waveform, and there is a problem that communication through the modem cannot be realized.
[0005]
Therefore, in the conventional apparatus, a synchronization packet is transmitted at a fixed period from a transmission-side IP terminal apparatus serving as a master terminal (terminal serving as a clock reference), and a slave terminal (terminal synchronized with the master clock) is used. It is conceivable to apply the method of gradually adjusting the clock of the slave terminal to the clock of the master terminal by making it receive at the receiving IP terminal device, and determining whether the clock is delayed or advanced at each reception. .
[0006]
[Problems to be solved by the invention]
However, the above-described method has a drawback that it is inevitable that the time required for the adjustment to be completed varies depending on the magnitude of the frequency deviation at the start of the clock synchronization adjustment. That is, there is a drawback that the time required from the start of adjustment to completion cannot be uniquely determined due to variations in the time required to complete clock alignment. For this reason, there is a problem that it is not possible to clarify the specifications as an IP terminal device (for example, how long after the device is started up, synchronization should have been established, and so on). was there.
[0007]
[Means for Solving the Problems]
(A) In order to solve such a problem, in the first invention, the synchronization that receives the synchronization timing packet transmitted by another IP terminal device at a constant interval and synchronizes the internally generated clock with the clock on the transmission side. In an IP terminal device having a function, (1) a clock generating means for generating an internal clock, (2) a clock counter for counting the internal clock generated by the clock generating means, and (3) first received after communication is started Based on the difference between the count value of the clock counter at the time of reception of the synchronization timing packet and the count value of the clock counter at the time of reception of the synchronization timing packet received thereafter, the clock on the transmission side and the clock generated by the clock generation means A control means for estimating a frequency difference between the clock generation means and a phase shift control of the clock generation means according to the estimation result; Provided, The control means, each time a synchronization timing packet is received and a new count value difference is calculated, a linear inclination angle that gives an upper limit range of appearance ranges for the difference in count value calculated at each time point And calculating whether the difference between the two inclination angles is within a predetermined error range and calculating the difference between the two inclination angles is within a predetermined error range. The average value of the two inclination angles is regarded as a straight inclination angle corresponding to the frequency difference between the clock on the transmission side to be estimated and the clock generated by the clock generation means, and the clock is calculated based on the inclination angle. To estimate the frequency difference of To.
[0008]
Thus, in the first aspect of the invention, since the clock frequency difference is estimated and the clock synchronization control is performed, the synchronization control is performed based only on the relative phase relationship (whether the frequency is high or low). In comparison, the time required for synchronous control can be estimated.
[0011]
( B ) Also, 2 In this invention, the reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the transmission of the synchronization timing packet is performed based on the information of the count value. In the method of estimating the frequency error range when estimating the frequency difference between the side clock and the clock in the receiving device, the count value of the clock counter at the time of reception of the first synchronization timing packet received after the start of communication and thereafter Each time the difference from the count value of the clock counter at the time of receiving the synchronization timing packet received is calculated, the slope of the straight line that gives the upper limit range of the appearance range for the difference in the count value calculated at each time point Calculate the angle and the inclination angle of the straight line that gives the lower limit range. It contains half of the difference between the tilt angle of the frequency difference is an estimated target so as to estimate the range of the frequency error is.
[0012]
( C ) Also, 3 In this invention, the reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the transmission of the synchronization timing packet is performed based on the information of the count value. In the frequency difference estimation method for estimating the frequency difference between the side clock and the clock in the receiver, the count value of the clock counter at the time of receiving the synchronization timing packet first received after the start of communication and the synchronization timing received thereafter Whenever the difference from the count value of the clock counter at the time of packet reception is calculated, the slope of the straight line and the lower limit range that gives the upper limit range of the appearance range for the difference in the count value calculated at each time point are given. Calculate the inclination angle of the straight line and estimate the average value of the two inclination angles Clock and on the transmission side is In the receiver The frequency difference of the clock is estimated from the inclination angle by regarding the inclination angle of the straight line corresponding to the frequency difference of the clock.
[0013]
( D ) Also, 4 In the invention of The reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the clock and reception side of the synchronization timing packet are received based on the information of the count value A frequency difference estimation method for estimating a frequency difference with a clock in an apparatus, wherein a count value of a clock counter at the time of reception of a synchronization timing packet first received after the start of communication and reception of a synchronization timing packet received thereafter Each time the difference from the count value of the clock counter at the time is calculated, the slope of the straight line that gives the upper limit range of the appearance range and the slope of the straight line that gives the lower limit range for the difference in the count value calculated at each point in time And the average value of the two inclination angles is calculated on the transmitting side In the case considered click and inclination angle of the straight line corresponding to the frequency difference between the clock within the receiver of the frequency difference estimation method for estimating the frequency difference between the clock from the inclined angle, the In the method for calculating the time required for estimating the frequency difference, T1 is the scheduled reception interval of the synchronization timing packet set with reference to the clock in the receiving apparatus, and the scheduled reception interval required until the clock frequency difference is estimated The frequency of the clock on the transmission side of the synchronization timing packet and the clock in the receiving device, where n is the number of N, the target error of the clock frequency difference is W, and the upper limit of the fluctuation appearing on the network is Y difference The required time T1 × n required for estimating T1 × n = Y It is calculated based on / W.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
(A) First embodiment
(A-1) Description of configuration
[0015]
DETAILED DESCRIPTION OF THE INVENTION
(A) First embodiment
(A-1) System configuration
FIG. 1 shows a basic form of a network system according to the first embodiment. FIG. 1 shows a state in which two
[0016]
FIG. 1 shows a state in which a synchronization master module 4 that functions as a master is mounted on the
[0017]
Of course, both the synchronization master module 4 and the
[0018]
Note that when both the synchronization master module 4 and the
[0019]
(A-2) Configuration of each part
Next, the internal configuration of each module will be described.
[0020]
FIG. 2 shows a functional block configuration of the synchronization master module 4. The synchronization master module 4 includes a
[0021]
The
[0022]
Each time the
[0023]
FIG. 3 shows a functional block configuration of the
[0024]
The
[0025]
The
[0026]
The clock counter 5C is a cyclic counter that performs a count-up operation based on the reference clock generated by the transmission clock generator 5D. Here, the maximum value (for example, 39999) of the count value of the clock counter 5C is the time required to count up the value from 0 (constant interval T2) is the synchronization timing packet transmission interval (constant interval T1). It is set to be the same.
[0027]
Therefore, when there is no error between the accuracy of the operation clock of the
[0028]
The transmission clock generator 5D is on the master side No ku Similar to the
[0029]
(A-3) Synchronous processing operation
Next, the content of the transmission clock synchronization processing operation performed between the
[0030]
First, regarding the synchronization function of the transmission clock, the
[0031]
Needless to say, the constant interval T1 here is determined according to the clock speed output from the
[0032]
On the other hand, the
[0033]
Hereinafter, the count value read first by the
[0034]
The count value X0 is held in the storage means such as a register in the
[0035]
Returning to the description of the operation of the
[0036]
Here, as shown in FIG. 5A, the clock counter 5C counts up from 0 to a predetermined value (for example, 39999) based on the transmission clock supplied from the transmission clock generator 5D in its own device. The operation is performed, and the synchronization timing at a constant interval T2 is obtained by the cyclic count-up operation.
[0037]
Therefore, when the clock frequencies of the master side and the slave side are equal (constant intervals T1 and T2 are equal) and there is no fluctuation on the IP network 1 (constant delay may be acceptable), FIG. As shown in B), the read count value is always the same value.
[0038]
However, even if there is no fluctuation on the IP network 1 (a constant delay may be acceptable), if there is a difference in clock frequency between the master side and the slave side (if the constant intervals T1 and T2 are different), FIG. As shown in (C), a deviation proportional to the frequency difference appears in the read count value.
[0039]
On the other hand, when such a regular deviation in the count value is recognized, the deviation in the clock frequency can be easily specified by confirming the regularity.
[0040]
Actually, however, there is fluctuation in the transmission on the
[0041]
Therefore, the
[0042]
When Xn−X0 in the case of this fluctuation is ΔXn, the relationship between time and ΔX is as shown in FIG. Here, the black circles in the figure represent the relative value ΔXn of the count value Xn with respect to the initial value X0 at each read timing. The straight line LA starting from the initial count value X0 connects the series of values that the count value should originally take when there is no fluctuation. The straight line LB starting from the initial count value Y connects a series of maximum allowable values that the count value can take when there is fluctuation. The straight line LC starting from the initial count value -Y connects a series of minimum allowable values that the count value can take when there is fluctuation.
[0043]
Since the range of fluctuations that can occur during communication is Y, the range in which the count value appears in each communication is not the entire range sandwiched between the straight lines LB and LC, but is sandwiched between the straight lines LD and LE represented by diagonal lines in the figure. It will be limited to the range.
[0044]
Therefore, as shown in FIG. 7, the slope of the line segment LF connecting (0, Y) that gives the initial value of the maximum allowable value and each difference value ΔX (n) is always the slope of the straight line LB (that is, the straight line LA). The slope of the line segment LG connecting (0, -Y) that gives the initial value of the minimum allowable value and each difference value ΔX (n) is the slope of the straight line LC ( That is, a relationship larger than the slope of the straight line LA) is recognized.
[0045]
Therefore, the
[0046]
That is, as shown in FIG. 8 → FIG. 9 → FIG. 10 → FIG. 11 → FIG. 12 → FIG. 7, the
[0047]
Eventually, when the difference between the slope of the line segment LF and the slope of the LG is reduced and the difference falls within a predetermined error range, the
[0048]
Actually, the above processing is performed by the following calculation operation. That is, every time the reception of the synchronization timing packet is notified, the
[0049]
K1 = {(Xn−X0) + Y} / (T1 × n) ... (1)
K2 = {(Xn−X0) −Y} / (T1 × n) ... (2)
Here, n is an integer value of 1, 2,. Further, the slope K1 represented by the equation (1) is the slope of the line segment LG in FIGS. 7 to 12, and the slope K2 represented by the formula (2) is the slope of the line segment LF in FIGS. Equivalent to.
[0050]
For example, when the value of the slope K1 held so far is 50 and the value of the newly calculated slope K1 is 40, the
[0051]
By repeating such a series of calculation processes, the difference between the slopes K1 and K2 is gradually reduced (as shown in FIG. 8 → FIG. 9 → FIG. 10 → FIG. 11 → FIG. 12 → FIG. 7). Eventually, the two slopes will almost coincide.
[0052]
However, in reality, it is necessary to obtain a difference in clock frequency within a limited time, and to eliminate the difference existing between the transmission clock on the master side and the transmission clock on the slave side based on the difference value. Therefore, every time the values of the gradients K1 and K2 are updated, the
[0053]
Error range = ± (K1-K2) / 2 (3)
When the value obtained by the expression (3) is not within the predetermined range, the
[0054]
Estimated value = (K1 + K2) / 2 (4)
Thus, the clock frequency generated by the transmission clock generator 5D is reliably controlled to the master side clock frequency.
[0055]
By the way, the above explanation is satisfied without any trouble when there is no carry (overflow) in the count value read from the clock counter 5C every time the synchronization timing packet is received between the start of the estimation of the clock frequency error and the end of the estimation. However, when the slopes K1 and K2 are used for calculation, that is, when there is a carry in either Xn or X0 in the equations (1) and (2), the value of (Xn−X0) is the original value. Since the difference is not expressed, an accurate clock frequency error cannot be obtained. For example, when the clock counter 5C is 0 to 39999, the count is continued from 0 after 39999, so that the sign of the slope and the difference become completely different values.
[0056]
Therefore, the
[0057]
First, after confirming the reception of the synchronization timing packet, when the new count value Xn is read, the
[0058]
If a positive result is obtained in this step SP1 (when there is no negative number and Xn is read as a result of a carry as a result of a carry), the
[0059]
(39998-40000) -5 = -2-5 = -7 (5)
On the other hand, if a negative result is obtained in step SP1, the
[0060]
When an affirmative result is obtained in step SP3 (when the maximum value of the count value is exceeded and Xn is read as a very small value), the
[0061]
3- (39990-40000) = 3-(-10) = 13 (6)
If a negative result is obtained in step SP3, the
[0062]
As described above, the
[0063]
As described above, the
[0064]
Therefore, in the present embodiment, according to the method for specifying the clock frequency difference by the above-described method, the maximum time required for the error range to converge within a predetermined range is completely fluctuated in each synchronization timing packet. The calculation of the time is executed focusing on the fact that there is no case (when all the points are on the straight line LA in FIG. 6).
[0065]
That is, when the target value of the predetermined error range is W, the time T1 × n until the error range (K1−K2) / 2 calculated from the slopes K1 and K2 matches the target value W is expressed by the following equation: To decide.
[0066]
T1 × n = Y / W (7)
(A-4) Effects of the first embodiment
As described above, by using the above-described IP terminal device 3 (particularly, the one having the
[0067]
Thus, after T1 × n hours, it is possible to set the clock frequency with a clear error range, and to design a network system and an IP terminal device with a clear operation guarantee range.
[0068]
(B) Second embodiment
(B-1) System configuration
FIG. 14 shows a basic form of a network system according to the second embodiment. 14 shows a system configuration in a case where a difference in transmission clock speed is adjusted between one
[0069]
The difference between the second embodiment and the first embodiment is that the first embodiment specifies a slave-side
[0070]
That is, in the case of this embodiment, the
[0071]
Note that the synchronization establishment operation in each
[0072]
(B-2) Effect
Thus, according to the second embodiment, the following effects can be obtained. That is, all the
[0073]
Therefore, even in the communication between the
[0074]
In addition, the transmission clock speed is synchronized between all IP terminal devices (not only those equipped with the
[0075]
(C) Other embodiments
The above embodiment has been described on the assumption that audio data with particularly high real-time characteristics is transmitted. However, the information to be transmitted is not limited to this, and so-called videophone or broadcast-type video data is used. The present invention can also be applied to transmission of other information that requires real-time performance.
[0076]
【The invention's effect】
As described above, according to the first invention, an IP having a synchronization function for receiving a synchronization timing packet transmitted by another IP terminal device at a constant interval and synchronizing an internally generated clock with a clock on the transmission side. The terminal device includes (1) a clock generation means for generating an internal clock, (2) a clock counter for counting the internal clock generated by the clock generation means, and (3) a synchronization timing packet received first after the start of communication. Based on the difference between the count value of the clock counter at the time of reception and the count value of the clock counter at the time of reception of the synchronization timing packet received thereafter, the frequency difference between the clock on the transmission side and the clock generated by the clock generation means is calculated. And control means for performing phase shift control of the clock generation means according to the estimation result When the control means receives the synchronization timing packet and calculates a new count value difference, the linear inclination angle that gives the upper limit range of the appearance range for the count value difference calculated at each time point And calculating whether the difference between the two inclination angles is within a predetermined error range and calculating the difference between the two inclination angles is within a predetermined error range. The average value of the two inclination angles is regarded as a straight inclination angle corresponding to the frequency difference between the clock on the transmission side to be estimated and the clock generated by the clock generation means, and the clock frequency is calculated from the inclination angle. Estimate frequency difference Accordingly, it is possible to estimate the time required for the synchronization control as compared with the case where the synchronization control is performed based only on the relative phase relationship (whether the frequency is high or low).
[0078]
The second 2 According to the invention, the reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the synchronization timing packet In the method of estimating the frequency error range when estimating the frequency difference between the clock on the transmitting side and the clock in the receiving device, the count value of the clock counter at the time of reception of the first synchronization timing packet received after the start of communication Each time the difference from the count value of the clock counter at the time of receiving the synchronous timing packet received thereafter is calculated, a straight line that gives the upper limit range of the appearance range for the difference in the count value at each time point calculated so far Calculate the inclination angle and the inclination angle of the straight line that gives the lower limit range. By estimating a range of the frequency error contained half the difference between the tilt angle to the frequency difference is an estimated target can estimate the frequency error in high precision.
[0079]
The second 3 According to the invention, the reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the synchronization timing packet In a frequency difference estimation method for estimating a frequency difference between a clock on a transmission side and a clock in a receiving device, a count value of a clock counter at the time of receiving a synchronization timing packet first received after communication start and a synchronization received thereafter Each time the difference from the count value of the clock counter at the time of receiving the timing packet is calculated, the slope angle and the lower limit range of the straight line that gives the upper limit range of the appearance range for the difference of the count value at each time point calculated so far Calculate the inclination angle of the given straight line and estimate the average value of the two inclination angles And a transmission-side clock In the receiver The frequency difference can be estimated with high accuracy by estimating the frequency difference of the clock from the inclination angle by regarding the inclination angle of the straight line corresponding to the frequency difference of the clock.
[0080]
The second 4 According to the invention of The reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the clock and reception side of the synchronization timing packet are received based on the information of the count value A frequency difference estimation method for estimating a frequency difference with a clock in an apparatus, wherein a count value of a clock counter at the time of reception of a synchronization timing packet first received after the start of communication and reception of a synchronization timing packet received thereafter Each time the difference from the count value of the clock counter at the time is calculated, the slope of the straight line that gives the upper limit range of the appearance range and the slope of the straight line that gives the lower limit range for the difference in the count value calculated at each point in time And the average value of the two inclination angles is calculated on the transmitting side In the case considered click and inclination angle of the straight line corresponding to the frequency difference between the clock within the receiver of the frequency difference estimation method for estimating the frequency difference between the clock from the inclined angle, the In the method for calculating the time required for estimating the frequency difference, T1 is the scheduled reception interval of the synchronization timing packet set with reference to the clock in the receiving apparatus, and the scheduled reception interval required until the clock frequency difference is estimated The frequency of the clock on the transmission side of the synchronization timing packet and the clock in the receiving device, where n is the number of N, the target error of the clock frequency difference is W, and the upper limit of the fluctuation appearing on the network is Y difference The required time T1 × n required for estimating T1 × n = Y It is calculated based on / W. Thus, according to the fifth aspect of the invention, the required time required for estimating the clock frequency difference can be determined in advance, so that the specifications of the apparatus can be easily set.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an overall configuration of a network system according to a first embodiment.
FIG. 2 is a diagram showing a functional block configuration of a synchronization master module.
FIG. 3 is a diagram showing a functional block configuration of a synchronous slave module.
FIG. 4 is a diagram illustrating a relationship with transmission fluctuation of a synchronization timing packet.
FIG. 5 is a diagram illustrating a relationship between a count value and a clock frequency difference and a relationship between transmission fluctuations;
FIG. 6 is a diagram for explaining a relationship between a count value appearance range caused by clock frequency difference and a count value appearance range caused by transmission fluctuation;
FIG. 7 is a diagram for explaining the principle of inclination estimation according to the difference in clock frequency (part 1);
FIG. 8 is a diagram for explaining the principle of inclination estimation according to the difference in clock frequency (part 2);
FIG. 9 is a view for explaining the principle of inclination estimation according to the difference in clock frequency (part 3);
FIG. 10 is a diagram for explaining the principle of inclination estimation according to the difference in clock frequency (part 4);
FIG. 11 is a diagram for explaining an inclination estimation principle according to a difference in clock frequency (part 5);
FIG. 12 is a diagram for explaining the principle of inclination estimation according to the difference in clock frequency (No. 6);
FIG. 13 is a flowchart illustrating a count value difference calculation processing procedure in consideration of carry of the count value.
FIG. 14 is a diagram showing an overall configuration of a network system according to a second embodiment.
[Explanation of symbols]
DESCRIPTION OF
Claims (4)
内部クロックを発生するクロック生成手段と、
上記クロック生成手段の生成した内部クロックをカウントするクロックカウンタと、
通信開始後に最初に受信された同期タイミングパケットの受信時における上記クロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時における上記クロックカウンタのカウント値との差分を基に送信側のクロックと上記クロック生成手段の発生しているクロックの周波数差を推定し、その推定結果に応じて上記クロック生成手段を移相制御する制御手段とを備え、
上記制御手段は、同期タイミングパケットが受信されて新たなカウント値の差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分が予め定めた誤差範囲内となったか否かを判定し、2つの傾斜角の差分が予め定めた誤差範囲内となったとき、当該2つの傾斜角の平均値を推定対象である送信側のクロックと上記クロック生成手段の発生しているクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定する
ことを特徴とするIP端末装置。In an IP terminal device having a synchronization function for receiving a synchronization timing packet transmitted by another IP terminal device at regular intervals and synchronizing a clock generated internally with a clock on the transmission side,
Clock generation means for generating an internal clock;
A clock counter for counting the internal clock generated by the clock generating means;
The clock on the transmission side based on the difference between the count value of the clock counter at the time of receiving the synchronization timing packet first received after the start of communication and the count value of the clock counter at the time of receiving the synchronization timing packet received thereafter And a control means for estimating the frequency difference between the clocks generated by the clock generation means and controlling the phase of the clock generation means according to the estimation result ,
The control means, when a synchronization timing packet is received and a new count value difference is calculated, a linear inclination angle that gives an upper limit range of appearance ranges for the count value difference calculated at each time point And the inclination angle of the straight line that gives the lower limit range to determine whether the difference between the two inclination angles is within a predetermined error range, and the difference between the two inclination angles is within the predetermined error range Then, the average value of the two inclination angles is regarded as a linear inclination angle corresponding to the frequency difference between the clock on the transmitting side to be estimated and the clock generated by the clock generation means. An IP terminal apparatus characterized by estimating a frequency difference between clocks .
通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出して当該2つの傾斜角の差分の半分を推定対象である周波数差に含まれている周波数誤差の範囲と推定する
ことを特徴とする周波数誤差範囲推定方法。The reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the clock and reception side of the synchronization timing packet are received based on the information of the count value In the method of estimating the frequency error range when estimating the frequency difference with the clock in the device,
Every time the difference between the count value of the clock counter at the time of reception of the first synchronization timing packet received after the start of communication and the count value of the clock counter at the time of reception of the synchronization timing packet received thereafter is calculated, Calculate the inclination angle of the straight line that gives the upper limit range of the appearance range and the inclination angle of the straight line that gives the lower limit range for the difference between the calculated count values at each time point, and estimate the half of the difference between the two inclination angles. A frequency error range estimation method characterized by estimating a frequency error range included in a certain frequency difference.
通信開始後に最初に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値とその後に受信された同期タイミングパケットの受信時におけるクロックカウンタのカウント値との差分が算出されるたび、現時点までに算出された各時点のカウント値の差分についての出現範囲の上限範囲を与える直線の傾斜角と下限範囲を与える直線の傾斜角とを算出し、その2つの傾斜角の平均値を推定対象である送信側のクロックと受信装置内のクロックの周波数差に対応する直線の傾斜角とみなして当該傾斜角よりクロックの周波数差を推定する
ことを特徴とする周波数差推定方法。The reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the clock and reception side of the synchronization timing packet are received based on the information of the count value In the frequency difference estimation method for estimating the frequency difference with the clock in the device,
Every time the difference between the count value of the clock counter at the time of reception of the first synchronization timing packet received after the start of communication and the count value of the clock counter at the time of reception of the synchronization timing packet received thereafter is calculated, The straight line inclination angle that gives the upper limit range of the appearance range and the straight line inclination angle that gives the lower limit range for the difference between the calculated count values at each time point are calculated, and the average value of the two inclination angles is an estimation target A frequency difference estimation method characterized in that a frequency difference of a clock is estimated from the inclination angle by regarding the inclination angle of a straight line corresponding to the frequency difference between the clock on the transmission side and the clock in the reception apparatus .
受信装置内のクロックを基準に設定された同期タイミングパケットの受信予定間隔をT1、クロックの周波数差が推定されるまでに必要な上記受信予定間隔の個数をn、クロックの周波数差の目標誤差をW、ネットワーク上に現れるゆらぎの上限をYとするとき、同期タイミングパケットの送信側のクロックと受信装置内のクロックとの周波数差の推定に必要な所要時間T1×nを、次式に基づいて算出することを特徴とする推定所要時間算出方法。
T1×n=Y/W The reception timing of the synchronization timing packet transmitted at regular intervals is detected as the count value of the clock counter that operates with the clock in the receiving device, and the clock and reception side of the synchronization timing packet are received based on the information of the count value A frequency difference estimation method for estimating a frequency difference with a clock in an apparatus, wherein a count value of a clock counter at the time of reception of a synchronization timing packet first received after the start of communication and reception of a synchronization timing packet received thereafter Each time the difference from the count value of the clock counter at the time is calculated, the slope of the straight line that gives the upper limit range of the appearance range and the slope of the straight line that gives the lower limit range for the difference in the count value calculated at each point in time calculating the angular, click on the transmission side is the estimated target average value of the two tilt angles In the case of the frequency difference estimation method is regarded click and inclination angle of the straight line corresponding to the frequency difference between the clock in the receiving apparatus estimates the frequency difference between the clock from the inclined angle, the required time necessary for the estimation of the frequency difference In the calculation method of
T1 is the scheduled reception interval of the synchronization timing packet set based on the clock in the receiver, n is the number of the scheduled reception intervals required until the clock frequency difference is estimated, and the target error of the clock frequency difference is W, where Y is the upper limit of fluctuation appearing on the network, the required time T1 × n required for estimating the frequency difference between the clock on the transmission side of the synchronization timing packet and the clock in the receiving device is based on the following equation: An estimated required time calculation method characterized by calculating.
T1 × n = Y / W
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP36580499A JP3630601B2 (en) | 1999-12-24 | 1999-12-24 | IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP36580499A JP3630601B2 (en) | 1999-12-24 | 1999-12-24 | IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001186180A JP2001186180A (en) | 2001-07-06 |
JP3630601B2 true JP3630601B2 (en) | 2005-03-16 |
Family
ID=18485163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP36580499A Expired - Lifetime JP3630601B2 (en) | 1999-12-24 | 1999-12-24 | IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3630601B2 (en) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2385684A (en) | 2002-02-22 | 2003-08-27 | Sony Uk Ltd | Frequency synchronisation of clocks |
US7200158B2 (en) * | 2002-06-24 | 2007-04-03 | Honeywell International | Clock synchronizing method over fault-tolerant Ethernet |
KR100720216B1 (en) | 2003-02-20 | 2007-05-21 | 자링크 세미컨덕터, 인크 | Method providing distribution means for reference clocks across packetized networks |
GB2400255A (en) * | 2003-03-31 | 2004-10-06 | Sony Uk Ltd | Video synchronisation |
JP4156451B2 (en) * | 2003-06-19 | 2008-09-24 | 三菱電機株式会社 | Synchronization method and communication apparatus |
JP4441852B2 (en) * | 2003-10-17 | 2010-03-31 | ソニー株式会社 | Information processing system, information processing apparatus, information processing method, computer program, and recording medium |
JP3950847B2 (en) * | 2003-12-16 | 2007-08-01 | 埼玉日本電気株式会社 | Clock synchronization system and clock synchronization method |
JP4484757B2 (en) * | 2004-12-09 | 2010-06-16 | 株式会社日立製作所 | Information processing device |
JP4408086B2 (en) * | 2005-02-07 | 2010-02-03 | 日本電信電話株式会社 | Clock synchronization method and clock synchronization circuit |
JP4597826B2 (en) * | 2005-09-16 | 2010-12-15 | ティーオーエー株式会社 | COMMUNICATION DEVICE, ITS COMMUNICATION METHOD, COMMUNICATION PROGRAM, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING THE COMMUNICATION PROGRAM |
JP4058067B2 (en) * | 2005-09-28 | 2008-03-05 | 株式会社日立コミュニケーションテクノロジー | Communications system |
JP4923583B2 (en) * | 2006-01-20 | 2012-04-25 | 横河電機株式会社 | Clock synchronization system in asynchronous networks |
JP4651646B2 (en) * | 2007-06-12 | 2011-03-16 | 株式会社日立製作所 | Master communication device and subordinate communication device |
JP2009141743A (en) * | 2007-12-07 | 2009-06-25 | Hitachi Ulsi Systems Co Ltd | Communication system |
JP5534548B2 (en) * | 2009-03-10 | 2014-07-02 | 日本電気株式会社 | Receiving side node for clock synchronization, method and program thereof |
JP2011023788A (en) * | 2009-07-13 | 2011-02-03 | Hitachi Ulsi Systems Co Ltd | Network synchronization method and synchronization circuit |
EP2282427B1 (en) * | 2009-07-31 | 2015-03-04 | Alcatel Lucent | Method for synchronizing a client clock frequency with a server clock frequency |
JP5549513B2 (en) * | 2010-10-01 | 2014-07-16 | 富士通株式会社 | Transmission system, slave transmission device, and clock synchronization method |
JP4914933B2 (en) * | 2010-11-05 | 2012-04-11 | 株式会社日立製作所 | Communication system and slave device |
JP5518805B2 (en) * | 2011-07-27 | 2014-06-11 | 日本電信電話株式会社 | Time synchronization method and time synchronization apparatus |
JP6057384B2 (en) * | 2014-03-10 | 2017-01-11 | Necプラットフォームズ株式会社 | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, TRANSMISSION INTERVAL CONTROL METHOD, AND PROGRAM |
JP6893071B2 (en) * | 2018-09-25 | 2021-06-23 | 株式会社タムラ製作所 | Information communication system |
JP6893070B2 (en) * | 2018-09-25 | 2021-06-23 | 株式会社タムラ製作所 | Information communication system |
WO2021131583A1 (en) * | 2019-12-25 | 2021-07-01 | ソニーセミコンダクタソリューションズ株式会社 | Synchronization device and synchronization method |
US20230048782A1 (en) * | 2019-12-25 | 2023-02-16 | Sony Semiconductor Solutions Corporation | Synchronization device and synchronization method |
CN113507338A (en) * | 2021-07-22 | 2021-10-15 | 深圳市灰度科技有限公司 | Time synchronization method and device, computer equipment and storage medium |
-
1999
- 1999-12-24 JP JP36580499A patent/JP3630601B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2001186180A (en) | 2001-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3630601B2 (en) | IP terminal device, frequency error range estimation method, frequency difference estimation method, and estimated required time calculation method | |
CA2384688C (en) | Method and arrangement for synchronization of base stations in a mobile communications network | |
US7916758B2 (en) | Method and system for precise-clock synchronization, and device for precise-clock frequency/time synchronization | |
US7602815B2 (en) | Using network time protocol in voice over packet transmission | |
JP4326140B2 (en) | Timing recovery method for media access control device of cable modem | |
US7936794B2 (en) | Clock management between two end points | |
EP0699369B1 (en) | Apparatus and methods for improving timing recovery of a system clock | |
JP5497051B2 (en) | Improved method, system and apparatus for signal synchronization | |
US7440474B1 (en) | Method and apparatus for synchronizing clocks on packet-switched networks | |
JP3442761B2 (en) | Synchronization device for communication system components coupled via a communication network | |
US8731036B2 (en) | Packet filter-based clock synchronization system, apparatus, and method, and program thereof | |
US20040186877A1 (en) | Method and device for multimedia streaming | |
CA2360009A1 (en) | Methods, systems and computer program products for synchronizing clocks of nodes on a computer network | |
CN102577194A (en) | Measurement and adjustment of real-time values according to residence time in networking equipment without access to real time | |
JP2002152304A (en) | Adaptive synchronization method and system | |
JPH10135988A (en) | Synchronous transmission method for fixed bit rate in atm network and receiver station for atm network | |
US7103072B1 (en) | System and method for synchronization of devices across a packet network | |
WO2005002100A1 (en) | High accuracy network clock synchronization | |
JP2000174821A (en) | Method for controlling frequency via asynchronous transfer network, system therefor and mobile telephone network including the system | |
US7424080B1 (en) | Method and system for providing jitter-free transmissions for demodulated data stream | |
JP2003504945A (en) | Information transmission method in telecommunications system | |
CN114520703B (en) | Clock drift compensation method and circuit for time synchronization between industrial network devices | |
JP3534625B2 (en) | IP terminal device | |
JP2002344433A (en) | Clock recovery method and clock recovery device | |
CN114337890B (en) | Multi-terminal broadcasting synchronization system and method based on PTP network synchronization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040707 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3630601 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111224 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111224 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121224 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131224 Year of fee payment: 9 |
|
EXPY | Cancellation because of completion of term |