JP2008118549A - Receiving apparatus and clock synchronization method - Google Patents

Receiving apparatus and clock synchronization method Download PDF

Info

Publication number
JP2008118549A
JP2008118549A JP2006301876A JP2006301876A JP2008118549A JP 2008118549 A JP2008118549 A JP 2008118549A JP 2006301876 A JP2006301876 A JP 2006301876A JP 2006301876 A JP2006301876 A JP 2006301876A JP 2008118549 A JP2008118549 A JP 2008118549A
Authority
JP
Japan
Prior art keywords
time
time count
packet
frequency difference
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.)
Granted
Application number
JP2006301876A
Other languages
Japanese (ja)
Other versions
JP4874058B2 (en
Inventor
Yusuke Yamada
雄介 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2006301876A priority Critical patent/JP4874058B2/en
Publication of JP2008118549A publication Critical patent/JP2008118549A/en
Application granted granted Critical
Publication of JP4874058B2 publication Critical patent/JP4874058B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform clock control in dejittering, while satisfying a predetermined drift rate and to shorten the time until a clock-controlled variable in dejittering is approximately converged and the clock control can be performed, while satisfying the predetermined drift rate. <P>SOLUTION: A receiving unit 31 includes a time count generating section 46 for generating time count information; a communication I/F section 41 for receiving a packet from a transmitter; a time count differential calculating section 43 for calculating the time count differential, on the basis of first time count information contained in the packet from the transmitter and second time count information which has been generated by the time count generating section 46, when the communication I/F section 41 received the packet; a data filter 44 for removing an abnormal value of the time count differential; and a frequency difference estimating section 45 for calculating the frequency difference of an oscillator from the transmitter, from the information of the time count differential passed through the data filter. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、受信装置およびクロック同期方法に関する。特に、ジッターを引き起こすネットワークを経由して送受信する端末間で高速にクロック同期を実現するための技術に関する。   The present invention relates to a receiving apparatus and a clock synchronization method. In particular, the present invention relates to a technique for realizing high-speed clock synchronization between terminals that transmit and receive via a network that causes jitter.

MPEG2−TS(Motion Picture Experts Group 2 - Transport Stream)による映像伝送システムでは、受信機は送信機と同じ速度で処理しないと破綻が起こることが知られている。   In a video transmission system based on MPEG2-TS (Motion Picture Experts Group 2-Transport Stream), it is known that a failure occurs unless the receiver processes at the same speed as the transmitter.

また、MPEG2−TSによる映像伝送は、(1)送信機は自分のペースで映像を送りつける、(2)受信機側からのフィードバックはない、(3)送信機側は今撮ったばかりの映像を伝送できる、(4)送信機は複数の受信機宛てに映像送信できる、という性質を持つ。   Also, video transmission by MPEG2-TS is as follows: (1) Transmitter sends video at its own pace, (2) No feedback from receiver, (3) Transmitter takes video just taken (4) The transmitter has the property that it can transmit video to a plurality of receivers.

このため、(1)送信機側はクロックの情報を受信機に送信し、(2)受信機側はPLL(Phase Locked Loop)を組み、送信機側と同期したクロックを再生する、ことが必要である。   For this reason, it is necessary that (1) the transmitter side transmits clock information to the receiver, and (2) the receiver side incorporates a PLL (Phase Locked Loop) to regenerate the clock synchronized with the transmitter side. It is.

図16は、MPEG2−TSによる映像伝送システムの典型例を示したブロック図である。   FIG. 16 is a block diagram showing a typical example of a video transmission system based on MPEG2-TS.

図16を参照して、MPEG2−TSによる映像伝送システムについて説明する。図16に示すように、送信機1200は、入力された映像ソースから、映像データをMPEG2エンコーダ1202によってエンコードすると同時に、発振器1204によってクロック情報を付与する。送信バッファ1206に蓄積されたMPEG2−TSパケットは、受信機1210に送信される。受信機1210は、送信機1200からのMPEG2−TSパケットを受信バッファ1212に蓄積する。そして、MPEG2−TSパケットからクロック情報を取り出し、PLL1214を用いてMPEG2エンコーダ1202と同期したクロックを再生する。また、MPEG2デコーダ1216によって、再生クロックを用いて映像データをデコードする。   A video transmission system based on MPEG2-TS will be described with reference to FIG. As shown in FIG. 16, the transmitter 1200 encodes video data from the input video source by the MPEG2 encoder 1202 and simultaneously gives clock information by the oscillator 1204. The MPEG2-TS packet stored in the transmission buffer 1206 is transmitted to the receiver 1210. The receiver 1210 stores the MPEG2-TS packet from the transmitter 1200 in the reception buffer 1212. Then, clock information is extracted from the MPEG2-TS packet, and a clock synchronized with the MPEG2 encoder 1202 is reproduced using the PLL 1214. In addition, the MPEG2 decoder 1216 decodes the video data using the reproduction clock.

このように、デコーダはPLLを使って、エンコーダのクロックに同期したカウンタSTC(System Time Clock)を生成する。なお、MPEGエンコーダからのクロック情報PCR(Program Clock Reference)は少なくとも0.1秒に1回の割合でMPEG2−TSパケットの中に埋め込まれる。   Thus, the decoder uses the PLL to generate a counter STC (System Time Clock) synchronized with the encoder clock. Note that the clock information PCR (Program Clock Reference) from the MPEG encoder is embedded in the MPEG2-TS packet at a rate of at least once every 0.1 second.

図17は、一般的なPLLの構成を示したブロック図である。
図17を参照して、MPEG2デコーダにおいて、非特許文献1の(D.0.3)節で示されるような、一般的に使われるPLLの構成について説明する。PLLでは、最初にPCRを含むTSパケットを受信すると内部カウンタ1302にPCR値をロードする。そして、後続のPCRを含むTSパケットを受信するたびに、受信した時点の内部カウンタ1302から与えられるSTC値とPCR値の差分を、減算器1304によって求める。続いて、差分をローパスフィルタ1306にかけて制御電圧に変換し、これにより電圧制御発振器1308の周波数が変化する。それに伴い内部カウンタ1302の出力が調整され、エンコーダのクロックと同期したSTC値が生成される。
FIG. 17 is a block diagram showing a configuration of a general PLL.
With reference to FIG. 17, a configuration of a commonly used PLL as shown in section (D.0.3) of Non-Patent Document 1 in the MPEG2 decoder will be described. In the PLL, when a TS packet including PCR is first received, the PCR value is loaded into the internal counter 1302. Each time a TS packet including a subsequent PCR is received, a subtractor 1304 obtains the difference between the STC value and the PCR value given from the internal counter 1302 at the time of reception. Subsequently, the difference is applied to the low-pass filter 1306 to be converted into a control voltage, whereby the frequency of the voltage-controlled oscillator 1308 is changed. Accordingly, the output of the internal counter 1302 is adjusted, and an STC value synchronized with the encoder clock is generated.

上記のようにしてPLLは動作するが、このような動作を安定させるためには、各MPEG2−TSパケットは、ジッターが極力出ないように(送信機から出力されたときの相互間隔が保たれるように)MPEGデコーダまで配送されなければならない。   Although the PLL operates as described above, in order to stabilize such an operation, each MPEG2-TS packet is kept free from jitter as much as possible (the mutual interval when output from the transmitter is maintained). To the MPEG decoder).

非特許文献1の(D.0.9)節と非特許文献2には、ジッターを引き起こすネットワークを経由して映像ストリームを受信した場合のジッター吸収方法が記載されている。   Section (D.0.9) of Non-Patent Document 1 and Non-Patent Document 2 describe a jitter absorption method when a video stream is received via a network that causes jitter.

非特許文献2では次の3つの方法(a)〜(c)が記載されている。ここで、ジッターを吸収するための機能(デジッタリング)は、MPEGデコーダとは別に存在してもよいし、MPEGデコーダ自身に統合されていてもよい。   Non-Patent Document 2 describes the following three methods (a) to (c). Here, the function for absorbing jitter (dejittering) may exist separately from the MPEG decoder, or may be integrated into the MPEG decoder itself.

(a)CBR(Constant Bit Rate:固定ビットレート)の場合、バッファとPLLを使う方法。   (A) In the case of CBR (Constant Bit Rate), a method using a buffer and a PLL.

方法(a)によれば、受信機側のPLLが、受信機側バッファの使用量に応じて、受信機側バッファの使用量がおよそ半分となるように、受信機側の出力レートを調整する。   According to the method (a), the PLL on the receiver side adjusts the output rate on the receiver side so that the usage amount of the receiver side buffer is approximately halved according to the usage amount of the receiver side buffer. .

(b)タイムスタンプを使う方法。
図18は、非特許文献2に記載されている映像伝送システムの概略を示す図である。
(B) A method using a time stamp.
FIG. 18 is a diagram showing an outline of the video transmission system described in Non-Patent Document 2.

図18を参照して、方法(b)について説明する。送信機1400では、クロック1402は、サンプル値CR(Clock Reference)をエンコーダ1404が生成する各パケットに付与する。   The method (b) will be described with reference to FIG. In transmitter 1400, clock 1402 assigns sample value CR (Clock Reference) to each packet generated by encoder 1404.

受信機1410では、受信したパケットに含まれるサンプル値CRから、PLL1414を使ってTCd(delayed TC)を復元する。「TCd」とは、送信機1400側のクロック1402が生成するカウンタ値に固定時間を加えたものである。   The receiver 1410 restores TCd (delayed TC) using the PLL 1414 from the sample value CR included in the received packet. “TCd” is obtained by adding a fixed time to the counter value generated by the clock 1402 on the transmitter 1400 side.

受信機1410は、送信機1400からの映像データを一時的にデジッタリングバッファ1416に蓄えて再生する。先頭のパケットは、TCdがパケットに含まれるCRと等しくなったとの制御部1418の判断に応じて、デジッタリングバッファ1416から出力される。後続のMPEG2パケットは、パケットに含まれるCRがTCdと等しくなったときにデジッタリングバッファから出力される。   The receiver 1410 temporarily stores the video data from the transmitter 1400 in the dejittering buffer 1416 and reproduces it. The leading packet is output from the de-jittering buffer 1416 in response to the determination by the control unit 1418 that TCd is equal to the CR included in the packet. The subsequent MPEG2 packet is output from the de-jittering buffer when the CR included in the packet becomes equal to TCd.

デジッタリングバッファのサイズは、パケットの伝送遅延が平均的な遅延時間に遅延ゆらぎ±J/2[秒](ただし、送受信機は最大J[秒]の遅延ゆらぎ補償をするように設計されているとする。)加えた伝送遅延に耐えられる設計にする。パケットが平均的な遅延時間で到着した場合、デジッタリングバッファの占有量は中間の位置になる。パケットが平均的な遅延時間に比べJ/2[秒]遅れて到着した場合、デジッタリングバッファは空になる。パケットが平均的な遅延時間に比べJ/2[秒]早く到着した場合、デジッタリングバッファは満杯になる。   The size of the de-jittering buffer is designed such that the packet transmission delay is delayed by an average delay time ± J / 2 [seconds] (however, the transmitter / receiver is designed to compensate for delay fluctuations of maximum J [seconds]). Designed to withstand the added transmission delay. If the packet arrives with an average delay time, the de-jittering buffer occupies an intermediate position. When a packet arrives with a delay of J / 2 [seconds] compared to the average delay time, the de-jittering buffer becomes empty. If the packet arrives J / 2 [seconds] earlier than the average delay time, the de-jittering buffer is full.

(c)共通クロックが利用可能な場合、共通クロックを使う方法。
方法(c)によれば、送受信機間において共通のネットワーククロックが入手可能で、システムクロックの周波数をそれにロックできる場合にはバッファを使ってジッターを吸収することができる。
(C) A method of using a common clock when a common clock is available.
According to the method (c), when a common network clock is available between the transmitter and the receiver and the frequency of the system clock can be locked thereto, the jitter can be absorbed by using a buffer.

また、非特許文献1の(D.0.9)節には、上記方法(a)をVBR(Variable Bit Rate:可変ビットレート)の場合にも適用できるように改良した方法も記載されている。これを方法(a’)とする。   Further, section (D.0.9) of Non-Patent Document 1 also describes a method in which the above method (a) is improved so that it can be applied to the case of VBR (Variable Bit Rate). . This is the method (a ′).

方法(a’)では、受信機側バッファの使用量ではなく、データがバッファに入力される時刻をPCRやSCRを使って測定し、データがバッファから出力される時刻を制御する。データがバッファに入力されてから出力されるまでの期間が一定となるように、図17と同様なPLLを構成して調整する。   In the method (a ′), the time at which data is input to the buffer is measured using PCR or SCR, not the usage amount of the receiver buffer, and the time at which the data is output from the buffer is controlled. A PLL similar to that in FIG. 17 is configured and adjusted so that the period from when data is input to the buffer until it is output is constant.

また、特許文献1には、データ供給装置とデータ処理装置の同期を行なうようにする方法が記載されている。この方法によれば、データ供給装置から送信されるデータの送信時刻と、データ処理装置で受信されるデータの受信時刻との間で生じる差分値を順次検出する。そして、所定の時間ごとにその差分値の極大値および極小値を検出し、その極大値および極小値それぞれの増減に応じてデータ処理装置の処理速度を制御して、同期をとる。   Patent Document 1 describes a method of synchronizing a data supply device and a data processing device. According to this method, the difference value generated between the transmission time of data transmitted from the data supply device and the reception time of data received by the data processing device is sequentially detected. Then, the local maximum value and the local minimum value of the difference value are detected every predetermined time, and the processing speed of the data processing device is controlled in accordance with the increase / decrease of the local maximum value and the local minimum value to achieve synchronization.

また、特許文献2には、カウンタ値を補正する方法が記載されている。この方法によれば、受信クロック情報の受信タイミングの揺らぎを取り除くよう送信元カウンタ値を補正するカウンタ補正手段を備える。これにより、受信した複数のカウンタ値との差分の二乗和が最小となるカウンタ値の時間変化を示す直線を求め、新たに受信したカウンタ値をその直線上に位置するようにカウンタ値を補正する。   Patent Document 2 describes a method of correcting a counter value. According to this method, the counter correction means for correcting the transmission source counter value so as to remove the fluctuation of the reception timing of the reception clock information is provided. As a result, a straight line indicating the time change of the counter value that minimizes the sum of squares of the differences from the received counter values is obtained, and the counter value is corrected so that the newly received counter value is positioned on the straight line. .

また、特許文献3には、方法(a’)に類似した方法が記載されている。この方法によれば、受信機に蓄積されるデータ量を監視し、蓄積データ量が上側の閾値より大きくなったとき、受信クロックの周波数を高い周波数に設定する。また、データ蓄積量が下側の基準値より小さくなったとき、受信クロック周波数を低い周波数に設定する。   Patent Document 3 describes a method similar to the method (a ′). According to this method, the amount of data stored in the receiver is monitored, and when the amount of stored data exceeds the upper threshold, the frequency of the reception clock is set to a high frequency. Further, when the data storage amount becomes smaller than the lower reference value, the reception clock frequency is set to a low frequency.

また、特許文献4には、特許文献3に類似した方法が記載されている。この方法によれば、デコーダへのデータ出力速度をハイとローとの2段階で切り替えるのではなく、切り替えのタイミングにおいてデータ出力速度をゆるやかに変化させる。   Patent Document 4 describes a method similar to Patent Document 3. According to this method, the data output speed to the decoder is not switched in two steps of high and low, but the data output speed is gradually changed at the switching timing.

図19は、特許文献3や特許文献4における、データ蓄積量(バッファ時間量)とクロック制御量との関係を示した図である。   FIG. 19 is a diagram showing the relationship between the data accumulation amount (buffer time amount) and the clock control amount in Patent Literature 3 and Patent Literature 4.

図19に示すように、データ蓄積量(バッファ時間量)が上限のしきい値を超えればクロック制御量を高く設定し、下限しきい値を下回ればクロック制御量を低く設定することによって、受信機側は内部バッファのオーバーランやアンダーランを引き起こすことなく再生をし続けることができる。   As shown in FIG. 19, when the data accumulation amount (buffer time amount) exceeds the upper threshold value, the clock control amount is set high, and when it falls below the lower threshold value, the clock control amount is set low. The machine can continue to play without causing internal buffer overrun or underrun.

また、特許文献5には、伝送遅延ゆらぎが発生するネットワーク環境において、相対的ゆらぎ時間を平滑化し、時間経過に対する単調増加あるいは単調減少の様子を監視することにより、送受信間のクロックのずれを解消する方向に制御する手法が提案されている。
特開平2003−218842号公報 特開平2000−174742号公報 特開平2002−165148号公報 特開平2006−42273号公報 特開平2003−258894号公報 ISO/IEC13818−1:2000(E)AnnexD ISO/IEC13818−1:2000(E)AnnexJ ITU−T Recommendation J.133(07/2002) AppendixI
Also, Patent Document 5 eliminates the clock shift between transmission and reception by smoothing the relative fluctuation time in a network environment where transmission delay fluctuation occurs and monitoring the monotonic increase or decrease with time. There has been proposed a method of controlling in such a direction.
JP 2003-218842 A JP 2000-174742 A Japanese Patent Laid-Open No. 2002-165148 Japanese Patent Laid-Open No. 2006-42273 JP-A-2003-258894 ISO / IEC13818-1: 2000 (E) AnnexD ISO / IEC13818-1: 2000 (E) AnnexJ ITU-T Recommendation J.M. 133 (07/2002) Appendix I

非特許文献1の(D.0.3)節に記載されている方法は、デジタル放送などのMPEGデコーダにおいて一般的に使われている方法であるが、映像データがジッターを引き起こすネットワークを経由して伝送されると、PLLが正常に動作せず映像が表示されないという問題がある。   The method described in section (D.0.3) of Non-Patent Document 1 is a method generally used in MPEG decoders such as digital broadcasting. However, the video data passes through a network that causes jitter. If transmitted, the PLL does not operate normally and there is a problem that the video is not displayed.

図17において、PLLでは、減算器1304によって内部カウンタのSTC値とPCR値の差分を計算している。MPEGデコーダは、差分の値がある程度の範囲内(数10μs程度)に収まり続けていなければ、安定したSTC値を生成できていないと判断し、その期間中の映像表示を中止する場合がある。   In FIG. 17, in the PLL, a subtracter 1304 calculates the difference between the STC value of the internal counter and the PCR value. If the difference value is not kept within a certain range (several tens of μs), the MPEG decoder determines that a stable STC value has not been generated, and may stop displaying video during that period.

たとえば、ジッターを引き起こすネットワークを経由して映像データが伝送される場合、差分の値がある程度の範囲内に収まり続けることができないので、MPEGデコーダのPLL単体では、安定したSTC値を生成させることができない。   For example, when video data is transmitted via a network that causes jitter, the difference value cannot be kept within a certain range. Therefore, the PLL alone of the MPEG decoder can generate a stable STC value. Can not.

したがって、ジッターを引き起こすネットワークを経由して映像データが伝送される場合は、非特許文献1の(D.0.3)節に記載されているPLLとは別にジッターを吸収するための機能が必要であると考えられている。   Therefore, when video data is transmitted via a network that causes jitter, a function for absorbing jitter is necessary in addition to the PLL described in (D.0.3) of Non-Patent Document 1. It is considered to be.

また、非特許文献2に記載されている3つの方法(a)〜(c)であるが、方法(a)は映像データがCBRの場合しか適用できないという問題がある。汎用性を考えるとVBRにも適用できるようにすべきである。   In addition, the three methods (a) to (c) described in Non-Patent Document 2 have a problem that the method (a) can be applied only when the video data is CBR. Considering versatility, it should be applicable to VBR.

方法(b)はVBRにも適用できるようにしたものである。パケットにタイムスタンプを付与するという点は本発明と同じである。しかし、PLLを使ってTCdを復元する場合、パケット伝送遅延時間の平均値は大きくても問題ないが、そのばらつきが大きいとPLLが同期するまでに時間がかかり過ぎるという問題がある。   The method (b) can be applied to VBR. The point of giving a time stamp to the packet is the same as the present invention. However, when the TCd is restored using the PLL, there is no problem even if the average value of the packet transmission delay time is large. However, if the variation is large, there is a problem that it takes too much time for the PLL to synchronize.

本発明に係る映像伝送システムは、映像データが無線ネットワーク、有線ネットワークまたはインターネットなどの一般的なIP(Internet Protocol)ネットワークを経由して伝送されることを想定している。このため、そのような環境では少なくとも数100ms程度のジッターが発生しうる。   The video transmission system according to the present invention assumes that video data is transmitted via a general IP (Internet Protocol) network such as a wireless network, a wired network, or the Internet. For this reason, in such an environment, jitter of at least about several hundreds of milliseconds can occur.

一方、ジッターを吸収するための機能(以下、「デジッタリング」と呼ぶ。)として方法(b)を使い、その後段に非特許文献1の(D.0.3)節に記載のPLLを使うとすると、方法(b)でジッターを吸収する目標精度としては、数10μs程度とすることが必要である。   On the other hand, when the method (b) is used as a function for absorbing jitter (hereinafter referred to as “dejittering”), and the PLL described in the section (D.0.3) of Non-Patent Document 1 is used at the subsequent stage, Then, the target accuracy for absorbing jitter by the method (b) needs to be about several tens of μs.

本発明で想定しているようなジッターを引き起こすネットワーク環境では、PLLで十分な精度にまで抑え込むことは難しく、もし抑え込むことができたとしても、同期するまでの引き込み時間が非常に長くなるため、結果としてその期間は映像が表示されないという問題がある。   In a network environment that causes jitter as assumed in the present invention, it is difficult to suppress to a sufficient accuracy with a PLL, and even if it can be suppressed, the pull-in time until synchronization becomes very long. As a result, there is a problem that no video is displayed during that period.

方法(c)はエンド−エンド間で共通クロックが存在することを前提にしたものである。この方法は、一部の閉じた環境では共通クロックが使える場合もあるが、一般的なIPネットワーク上ではそのような共通クロックは存在しないので、汎用性に欠けるという問題がある。   Method (c) is based on the premise that a common clock exists between end-to-end. Although this method may use a common clock in some closed environments, such a common clock does not exist on a general IP network, so that there is a problem that it is not versatile.

方法(a’)も方法(b)と同じ問題を抱えている。すなわち、本発明で想定しているジッターの量は大きいので、PLLで十分な精度にまで抑え込むことは難しく、もし抑え込むことができたとしても、同期するまでの引き込み時間が非常に長くなる場合がある。   Method (a ') also has the same problem as method (b). That is, since the amount of jitter assumed in the present invention is large, it is difficult to suppress the PLL to a sufficient accuracy, and even if it can be suppressed, the pull-in time until synchronization may become very long. is there.

また、デジッタリング制御において考慮すべき問題として、(1)MPEGデコーダのVCXO(Voltage Controlled Crystal Oscillator)問題と、(2)MPEG規格上の問題がある。   Problems to be considered in dejittering control include (1) a VCXO (Voltage Controlled Crystal Oscillator) problem of the MPEG decoder and (2) problems in the MPEG standard.

(1)MPEGデコーダのVCXO問題とは、デジッタリング制御において、クロック制御量をあまりに大きく設定している(たとえば、±200ppmで制御する)と、MPEGデコーダのVCXOで周波数調整可能な範囲を外れてしまい、映像が表示されないという問題である。なお、VCXOは、通常PLLの中に含まれる。たとえば、図17における電圧制御発振器1308に相当する。   (1) The VCXO problem of the MPEG decoder is that if the clock control amount is set too large (for example, controlled at ± 200 ppm) in de-jittering control, the frequency adjustment range of the MPEG decoder VCXO is out of range. The problem is that the video is not displayed. The VCXO is usually included in the PLL. For example, it corresponds to the voltage controlled oscillator 1308 in FIG.

具体例を挙げて説明する。たとえば、図16で示すようなMPEG映像伝送システムにおいて、受信機1210のPLLに含まれるVCXOの周波数可変範囲が公称周波数を中心に±75ppmとして、送信機1200の発振器1204の精度が±100ppmとする。この場合、ネットワークによる影響がまったくなかったとしても、VCXOで制御可能な範囲を超える可能性があるため、デコーダはエンコーダのクロックに追従できず、映像が表示されない可能性がある。映像が表示されるかどうかは、発振器の部品の精度に依存する。ネットワークによる影響を考えると、送信機の発振器の精度、受信機の発振器の精度を考慮しなければならない。   A specific example will be described. For example, in the MPEG video transmission system as shown in FIG. 16, the frequency variable range of the VCXO included in the PLL of the receiver 1210 is ± 75 ppm around the nominal frequency, and the accuracy of the oscillator 1204 of the transmitter 1200 is ± 100 ppm. . In this case, even if there is no influence by the network, there is a possibility that it exceeds the range controllable by the VCXO, so that the decoder cannot follow the clock of the encoder and there is a possibility that the video is not displayed. Whether an image is displayed depends on the accuracy of the oscillator components. Considering the effects of the network, the accuracy of the transmitter's oscillator and the accuracy of the receiver's oscillator must be considered.

図20は、映像が表示されるための条件を説明するための図である。
図20を参照して、どのような条件で映像が表示されるかについて説明する。図20において、MPEG2エンコーダ1600の発振器1601の精度を±E[ppm]、送信機1602の発振器1603の精度を±T[ppm]、受信機1606の発振器1607の精度を±R[ppm]、MPEG2デコーダ1608のPLLに含まれるVCXO1609の公称周波数の精度を±P[ppm]、周波数調整可能範囲を±W[ppm]とする。ただし、E,T,R,P,W>0である。
FIG. 20 is a diagram for explaining conditions for displaying an image.
With reference to FIG. 20, it will be described under what conditions video is displayed. In FIG. 20, the accuracy of the oscillator 1601 of the MPEG2 encoder 1600 is ± E [ppm], the accuracy of the oscillator 1603 of the transmitter 1602 is ± T [ppm], the accuracy of the oscillator 1607 of the receiver 1606 is ± R [ppm], MPEG2 The accuracy of the nominal frequency of the VCXO 1609 included in the PLL of the decoder 1608 is ± P [ppm], and the frequency adjustable range is ± W [ppm]. However, E, T, R, P, W> 0.

MPEG2エンコーダ1600から送信機1602、ネットワーク1604、受信機1606を経てMPEG2デコーダ1608にデータが入力される時点で、MPEG2エンコーダ1600で付与されたクロック情報PCRには最悪で±{E+T+R}[ppm]のクロック精度の誤差が含まれる可能性がある。映像が表示されるためには、この値がVCXO1609の周波数可変範囲に収まっていなければならない。よって、次の式(1)の条件が必要である。   At the time when data is input from the MPEG2 encoder 1600 to the MPEG2 decoder 1608 via the transmitter 1602, the network 1604, and the receiver 1606, the clock information PCR given by the MPEG2 encoder 1600 has the worst ± {E + T + R} [ppm]. Clock accuracy error may be included. This value must be within the frequency variable range of the VCXO 1609 in order for the video to be displayed. Therefore, the condition of the following formula (1) is necessary.

E+T+R<W−P…式(1)
具体的な数値をひとつ挙げると、E=30,T=R=50,P=15,W=150というのがありえる。この場合、式(1)を満たすため、最初から映像が表示されると考えられる。ところが、デジッタリング制御において、クロック制御量の振幅が大きくなると、式(1)を満たせなくなる可能性がある。したがって、デジッタリング制御を行なっているときでも、式(1)を満たすためには、クロック制御量の振幅をあまりに大きく設定するのは問題である。
E + T + R <WP-Formula (1)
One specific value is E = 30, T = R = 50, P = 15, W = 150. In this case, since the expression (1) is satisfied, it is considered that the video is displayed from the beginning. However, in the de-jittering control, if the amplitude of the clock control amount becomes large, the expression (1) may not be satisfied. Therefore, even when dejittering control is performed, it is problematic to set the amplitude of the clock control amount too large in order to satisfy the expression (1).

次に(2)MPEG規格上の問題について説明する。
非特許文献3(4.3)〜(4.6)節には、PCR限界(公称周波数27MHzからのどれくらいの狂いが許されるか)について記載されている。
Next, (2) problems in the MPEG standard will be described.
Non-Patent Document 3 (4.3) to (4.6) describes the PCR limit (how much deviation from the nominal frequency of 27 MHz is allowed).

具体的には、PCR周波数オフセット、PCRドリフトレート、PCRオーバーオールジッター、PCRアキュラシーについて記載されている。特に、PCR周波数オフセットとPCRドリフトレートの限界は次のようになっている(以下、「PCR条件」と呼ぶ)。   Specifically, it describes PCR frequency offset, PCR drift rate, PCR overall jitter, and PCR accuracy. In particular, the limits of the PCR frequency offset and the PCR drift rate are as follows (hereinafter referred to as “PCR conditions”).

(PCR周波数オフセットの限界)=±810Hzまたは±30ppm
(PCRドリフトレートの限界)=±75mHz/秒または±10ppm/時間
なお、非特許文献3では、PCRアキュラシーは可変ビットレートの場合は意味をなさないと記述されている。PCRオーバーオールジッターはネットワーク遅延がゼロであれば±500nsという基準が示されているが、ネットワーク遅延が存在するときの明確な基準は示されていない。ISO/IEC13818−9には、±25usという基準が示されているが、十分な精度を持つタイムスタンプを各パケットに付与すれば、この基準は守ることができるため特に問題にはならないと考えられる。
(Limit of PCR frequency offset) = ± 810 Hz or ± 30 ppm
(Limit of PCR drift rate) = ± 75 mHz / second or ± 10 ppm / hour In Non-Patent Document 3, it is described that PCR accuracy does not make sense in the case of a variable bit rate. The PCR overall jitter has a standard of ± 500 ns when the network delay is zero, but no clear standard when a network delay exists. In ISO / IEC13818-9, a standard of ± 25 us is shown. However, if a time stamp having sufficient accuracy is given to each packet, this standard can be observed, so it is not considered to be a problem. .

PCR条件は、MPEGデコーダ側から見た要求であるため、デジッタリングにおけるクロック制御も含めて守るべき条件であると考えられる。ただし、PCR条件を守れないからといって、即座に実際上の問題(たとえば、映像が表示されない、あるいは、映像の品質が悪くなるなど)が発生するわけではない。しかし、MPEGデコーダのチップにも依存する事であるが、PCR条件を大きく逸脱すると実際上の問題が発生すると考えられる。   Since the PCR condition is a request seen from the MPEG decoder side, it is considered that the condition should be observed including clock control in dejittering. However, the fact that PCR conditions cannot be observed does not immediately cause a practical problem (for example, video is not displayed or video quality is deteriorated). However, although it depends on the chip of the MPEG decoder, it is considered that a practical problem occurs if the PCR conditions are greatly deviated.

方法(b)や方法(a’)では、PLLでどの程度のクロック制御がなされるか予測できず、PCR条件を満足して伝送することは不可能であると考えられる。   In the method (b) and the method (a ′), it is impossible to predict how much clock control is performed by the PLL, and it is considered impossible to satisfy the PCR condition and transmit.

また、特許文献1に記載の方法は、所定の時間ごとにデータ処理速度を変化させている。1回に変化させるクロック制御量は自由に決められるので、設計次第でPCR条件を満足することは可能であると考えられる。   In the method described in Patent Document 1, the data processing speed is changed every predetermined time. Since the amount of clock control to be changed at a time can be freely determined, it is considered possible to satisfy the PCR conditions depending on the design.

図21は、クロック制御量の時間変化を示す図である。
図21に示すように、はじめはクロック制御量のステップを大きく、次第にステップを小さくさせている。最初からクロック制御量のステップが小さいままだと、クロック制御量がほぼ収束する状態になるまで時間がかかるため、最初からクロック制御量のステップを大きく設定し、徐々に小さくしている。
FIG. 21 is a diagram showing a time change of the clock control amount.
As shown in FIG. 21, first, the step of the clock control amount is increased, and the step is gradually decreased. If the step of the clock control amount remains small from the beginning, it takes time until the clock control amount almost converges. Therefore, the step of the clock control amount is set large from the beginning and gradually decreased.

このような方法を実施したとしても、特許文献1では所定の時間ごとにデータ処理速度を速くさせるか遅くさせるかを決定しており、所定の時間を何度か繰り返さないと、デジッタリングにおけるクロック制御量がほぼ収束する状態にまでもっていくことができない。(所定の時間としては少なくとも数秒間は必要で、繰り返し数としては少なくとも数十回は必要である。クロック制御量がほぼ収束する状態になるまで数分はかかる。)したがって、デジッタリング制御量がほぼ収束するようになるまでには時間がかかるという問題がある。   Even if such a method is implemented, Patent Document 1 determines whether to increase or decrease the data processing speed every predetermined time. If the predetermined time is not repeated several times, clock control in dejittering is performed. It cannot be brought to a state where the quantity almost converges. (The predetermined time is at least several seconds and the number of repetitions is at least several tens of times. It takes several minutes until the clock control amount is almost converged.) Therefore, the dejittering control amount is almost equal. There is a problem that it takes time to converge.

また、特許文献2では、最小二乗法を用いてPCR値を補正するという方法が開示されているが、パケット伝送遅延時間のばらつきが大きいと最小二乗法で求める傾きが正確にならないという問題がある。   Further, Patent Document 2 discloses a method of correcting the PCR value using the least square method, but there is a problem that the slope obtained by the least square method is not accurate when the packet transmission delay time varies greatly. .

また、特許文献3、特許文献4の方法では、基本的にデジッタリングにおけるクロック制御量は遅くするか早くするかの2段階しかなく、しかも送信機と受信機のクロック発振周波数精度のばらつきを上回るだけ大きく振幅させて制御しなければならない。たとえば、送信機と受信機のクロック発振周波数精度がともに±100ppmだとすると、デジッタリングにおけるクロック制御量は±200ppm以上のレンジで変化させなければならない。特許文献3、特許文献4の方法では、クロック制御量の振幅が大き過ぎるため、MPEGデコーダのVCXO問題をクリアできないと考えられる。また、クロック制御量の変化が速過ぎるのでPCR条件(PCRドリフトレート)を守ることはできないと考えられる。   Further, in the methods of Patent Document 3 and Patent Document 4, the clock control amount in de-jittering basically has only two stages, that is, slow or fast, and only exceeds the variation in clock oscillation frequency accuracy between the transmitter and the receiver. It must be controlled with a large amplitude. For example, if the clock oscillation frequency accuracy of the transmitter and the receiver is both ± 100 ppm, the clock control amount in dejittering must be changed in a range of ± 200 ppm or more. In the methods of Patent Document 3 and Patent Document 4, it is considered that the VCXO problem of the MPEG decoder cannot be cleared because the amplitude of the clock control amount is too large. In addition, it is considered that the PCR condition (PCR drift rate) cannot be maintained because the clock control amount changes too quickly.

また、特許文献5では、すべてのデータを平滑化フィルタの対象としているため、パケット伝送遅延時間のばらつきが大きいと、平滑化フィルタが収束せず、クロックの周波数差が正確に求まらないという問題がある。   Further, in Patent Document 5, since all data is subjected to a smoothing filter, if the variation in packet transmission delay time is large, the smoothing filter does not converge and the clock frequency difference cannot be accurately obtained. There's a problem.

本発明は、上記のような問題を解決するためになされたものであって、その目的は、デジッタリングにおけるクロック制御において、所定のドリフトレートを満足しながら制御し、かつ、デジッタリングのクロック制御量がほぼ収束して所定のドリフトレートを満足しながら制御できるまでの時間を短くすることである。   The present invention has been made in order to solve the above-described problems, and an object of the present invention is to control while satisfying a predetermined drift rate in clock control in dejittering, and to provide a clock control amount for dejittering. This is to shorten the time until control can be performed while substantially converging and satisfying a predetermined drift rate.

本発明の1つの局面に従うと、ネットワークに接続された送信装置とデータ通信するための受信装置であって、受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、送信装置からのパケットを受信するための受信手段と、送信装置からのパケットに含まれる第2の時刻カウント情報と、受信手段がパケットを受信した時点で時刻カウント生成手段によって生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するための時刻カウント差分算出手段と、時刻カウント差分の異常値を取り除くためのデータフィルタと、データフィルタを通過した時刻カウント差分の情報から、送信装置側の基準クロックとの周波数差を算出するための周波数差推定手段とを備える。   According to one aspect of the present invention, a reception device for data communication with a transmission device connected to a network, wherein a time count generation for generating first time count information as a reference clock on the reception device side Means, receiving means for receiving a packet from the transmitting apparatus, second time count information included in the packet from the transmitting apparatus, and generated by the time count generating means when the receiving means receives the packet Time count difference calculating means for calculating a time count difference based on the first time count information, a data filter for removing an abnormal value of the time count difference, and information on the time count difference that has passed through the data filter And a frequency difference estimating means for calculating a frequency difference from the reference clock on the transmitting apparatus side.

好ましくは、周波数差推定手段は、算出した周波数差に基づいてクロック制御量を決定し、周波数差推定手段からのクロック制御量にしたがって、時刻カウント生成部が生成する第1の時刻カウント情報の進み方を制御するための時刻カウント制御手段をさらに備える。   Preferably, the frequency difference estimator determines a clock control amount based on the calculated frequency difference, and advances the first time count information generated by the time count generator according to the clock control amount from the frequency difference estimator. Time count control means for controlling the direction.

好ましくは、データフィルタは、第1の時刻カウント情報と、第2の時刻カウント情報を擬似的に早くした第3の時刻カウント情報とに基づいて修正時刻カウント差分を算出し、算出時までの最小の修正時刻カウント差分より大きくなるような修正時刻カウント差分に対応する時刻カウント差分を異常値として取り除く。   Preferably, the data filter calculates a corrected time count difference based on the first time count information and the third time count information obtained by simulatingly speeding up the second time count information, and calculates the minimum time until the calculation time. The time count difference corresponding to the correction time count difference that is larger than the correction time count difference is removed as an abnormal value.

好ましくは、データフィルタは、第2の時刻カウント情報と、第1の時刻カウント情報を擬似的に遅くした第4の時刻カウント情報とに基づいて修正時刻カウント差分を算出し、算出時までの最小の修正時刻カウント差分より大きくなるような修正時刻カウント差分に対応する時刻カウント差分を異常値として取り除く。   Preferably, the data filter calculates a corrected time count difference based on the second time count information and the fourth time count information obtained by artificially delaying the first time count information, and minimizes the time until the calculation time. The time count difference corresponding to the correction time count difference that is larger than the correction time count difference is removed as an abnormal value.

好ましくは、データフィルタは、所定の時間間隔ごとの極小値を求め、極小値以外の時刻カウント差分を異常値として取り除く。   Preferably, the data filter obtains a minimum value for each predetermined time interval, and removes a time count difference other than the minimum value as an abnormal value.

好ましくは、周波数差推定手段は、受信手段がパケットの受信を開始した時点からの時間と時刻カウント差分との関係を回帰分析によって直線で近似し、周波数差を算出する。   Preferably, the frequency difference estimation means calculates a frequency difference by approximating the relationship between the time from the time when the reception means starts receiving the packet and the time count difference with a straight line by regression analysis.

好ましくは、前記周波数差推定手段が算出した周波数差の精度を判定するための精度判定手段をさらに備える。   Preferably, the apparatus further includes an accuracy determining unit for determining the accuracy of the frequency difference calculated by the frequency difference estimating unit.

好ましくは、精度判定手段は、受信手段がパケットの受信を開始した時点から所定時間経過したことに応じて、周波数差の精度が所定の精度であると判断する。   Preferably, the accuracy determination unit determines that the accuracy of the frequency difference is a predetermined accuracy in response to a lapse of a predetermined time from the time when the reception unit starts receiving the packet.

好ましくは、精度判定手段は、受信手段がパケットの受信を開始した時点から所定数のパケットを受信したことに応じて、周波数差の精度が所定の精度であると判断する。   Preferably, the accuracy determining unit determines that the accuracy of the frequency difference is a predetermined accuracy in response to receiving a predetermined number of packets from the time when the receiving unit starts receiving the packets.

好ましくは、精度判定手段は、データフィルタを通過した時刻カウント差分の数が所定数に達したことに応じて、周波数差の精度が所定の精度であると判断する。   Preferably, the accuracy determining means determines that the accuracy of the frequency difference is a predetermined accuracy in response to the number of time count differences that have passed through the data filter reaching a predetermined number.

好ましくは、精度判定手段は、所定のタイミング以前に算出された周波数差の最大値と最小値の差が所定範囲内にあることに応じて、周波数差の精度が所定の精度であると判断する。   Preferably, the accuracy determination unit determines that the accuracy of the frequency difference is a predetermined accuracy in response to the difference between the maximum value and the minimum value of the frequency difference calculated before the predetermined timing being within a predetermined range. .

好ましくは、精度判定手段は、時刻カウント差分の情報と近似された直線とから計算される残差二乗和が所定範囲内にあることに応じて、周波数差の精度が所定の精度であると判断する。   Preferably, the accuracy determination means determines that the accuracy of the frequency difference is a predetermined accuracy in response to the residual sum of squares calculated from the time count difference information and the approximated straight line being within a predetermined range. To do.

好ましくは、所定のドリフトレートの条件を満たすようにクロック制御量を決定するための定常状態クロック制御量決定手段と、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量または前記定常状態クロック制御量決定手段からのクロック制御量のいずれか一方を選択的に与えるための選択手段とをさらに備え、前記選択手段は、前記精度判定手段が前記周波数差の精度が所定の精度であると判断したことに応じて、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量に代わって、前記定常状態クロック制御量決定手段からのクロック制御量を与える。   Preferably, a steady state clock control amount determining means for determining a clock control amount so as to satisfy a predetermined drift rate condition, and the time count control means, the clock control amount from the frequency difference estimating means or the Selecting means for selectively giving any one of the clock control amounts from the steady state clock control amount determining means, wherein the selecting means is configured such that the accuracy determining means has the accuracy of the frequency difference at a predetermined accuracy. In response to the determination that there is a clock control amount from the steady state clock control amount determination unit, the time count control unit is given in place of the clock control amount from the frequency difference estimation unit.

好ましくは、定常状態クロック制御量決定手段は、所定の期間において、時刻カウント差分の極小値を検出するための時刻カウント差分極小値検出手段と、検出された極小値の変化に基づいて、基準クロックの進み方を所定のドリフトレートの範囲内になるようにクロック制御量を決定するための時刻カウント遅速判定手段とを含む。   Preferably, the steady state clock control amount determining means includes a time clock difference minimum value detecting means for detecting a minimum value of the time count difference and a reference clock based on a change in the detected minimum value in a predetermined period. And a time count delay determination means for determining a clock control amount so that the progress of the clock is within a predetermined drift rate range.

好ましくは、受信したパケットを蓄積するためのバッファと、送信装置からのパケットに含まれる、バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第1のバッファ時間量と、パケットが受信装置のバッファに蓄積された時点の第2のバッファ時間量とを合計した第3のバッファ時間量を算出するためのバッファ時間量算出手段とをさらに備え、定常状態クロック制御量決定手段は、所定の期間において、第3のバッファ時間量の極大値を検出するためのバッファ時間量極大値検出手段と、検出された極大値の変化に基づいて、基準クロックの進み方を所定のドリフトレートの範囲内になるようにクロック制御量を決定するための時刻カウント遅速判定手段とを含む。   Preferably, a buffer for accumulating the received packet, a first buffer time amount indicating a time range of time count information of the packet accumulated in the buffer included in the packet from the transmitting device, and the packet receiving device A buffer time amount calculating means for calculating a third buffer time amount that is the sum of the second buffer time amounts at the time of being stored in the buffer, and the steady state clock control amount determining means is In the period, the buffer time amount maximum value detecting means for detecting the maximum value of the third buffer time amount, and how to advance the reference clock within a predetermined drift rate range based on the detected change in the maximum value And a time count delay determination means for determining the clock control amount.

好ましくは、パケットを蓄積するためのバッファをさらに備え、定常状態クロック制御量決定手段は、所定の期間において、バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第4のバッファ時間量の極大値を検出するためのバッファ時間量極大値検出手段と、検出された極大値の変化に基づいて、基準クロックの進み方を所定のドリフトレートの範囲内になるようにクロック制御量を決定するための時刻カウント遅速判定手段とを含む。   Preferably, the apparatus further includes a buffer for accumulating packets, and the steady state clock control amount determination unit is configured to set a fourth buffer time amount indicating a time range of the time count information of the packets accumulated in the buffer during a predetermined period. Based on the buffer time amount maximum value detecting means for detecting the maximum value and a change in the detected maximum value, the clock control amount is determined so that the reference clock advances within a predetermined drift rate range. Time count delay determination means.

本発明の他の局面に従うと、ネットワークに接続された送信装置とデータ通信するための受信装置であって、受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、送信装置からのパケットを受信するための受信手段と、送信装置からのパケットに含まれる第2の時刻カウント情報と、受信手段がパケットを受信した時点で時刻カウント生成手段によって生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するための時刻カウント差分算出手段と、時刻カウント差分の情報から、送信装置側の基準クロックとの周波数差を算出し、クロック制御量を決定するための周波数差推定手段と、周波数差推定手段が算出した周波数差の精度を判定するための精度判定手段とを備える。   According to another aspect of the present invention, a reception device for data communication with a transmission device connected to a network, wherein a time count generation for generating first time count information as a reference clock on the reception device side Means, receiving means for receiving a packet from the transmitting apparatus, second time count information included in the packet from the transmitting apparatus, and generated by the time count generating means when the receiving means receives the packet Based on the first time count information, the time count difference calculating means for calculating the time count difference, and the frequency difference from the reference clock on the transmitting device side is calculated from the information on the time count difference, and the clock control amount A frequency difference estimating means for determining the frequency difference, and an accuracy determining means for determining the accuracy of the frequency difference calculated by the frequency difference estimating means. That.

好ましくは、前記周波数差推定手段は、前記算出した周波数差に基づいてクロック制御量を決定し、前記周波数差推定手段からのクロック制御量にしたがって、前記時刻カウント生成部が生成する前記第1の時刻カウント情報の進み方を制御するための時刻カウント制御手段をさらに備える。   Preferably, the frequency difference estimation unit determines a clock control amount based on the calculated frequency difference, and the time count generation unit generates the first control value according to the clock control amount from the frequency difference estimation unit. Time count control means for controlling how the time count information advances is further provided.

好ましくは、所定のドリフトレートの条件を満たすようにクロック制御量を決定するための定常状態クロック制御量決定手段と、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量または前記定常状態クロック制御量決定手段からのクロック制御量のいずれか一方を選択的に与えるための選択手段とを備え、前記選択手段は、前記精度判定手段が前記周波数差の精度が所定の精度であると判断したことに応じて、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量に代わって、前記定常状態クロック制御量決定手段からのクロック制御量を与える。   Preferably, a steady state clock control amount determining means for determining a clock control amount so as to satisfy a predetermined drift rate condition, and the time count control means, the clock control amount from the frequency difference estimating means or the Selecting means for selectively giving any one of the clock control amounts from the steady state clock control amount determining means, wherein the accuracy determining means is such that the accuracy of the frequency difference is a predetermined accuracy. In response to the determination, a clock control amount from the steady state clock control amount determination unit is given to the time count control unit instead of the clock control amount from the frequency difference estimation unit.

本発明のさらに他の局面に従うと、ネットワークに接続された送信装置とデータ通信するための受信装置であって、送信装置からのパケットを受信するための受信手段と、受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、基準クロックの制御状態を検出するための検出手段と、検出された制御状態を送信装置に通知するための送信手段とを備える。   According to still another aspect of the present invention, a receiving device for data communication with a transmitting device connected to a network, a receiving means for receiving a packet from the transmitting device, and a reference clock on the receiving device side A time count generating means for generating the first time count information, a detecting means for detecting the control state of the reference clock, and a transmitting means for notifying the transmitting apparatus of the detected control state. .

好ましくは、精度判定手段が周波数差の精度が所定の精度であると判断したことを送信装置に通知するための送信手段をさらに備える。   Preferably, the apparatus further includes a transmission unit for notifying the transmission device that the accuracy determination unit has determined that the accuracy of the frequency difference is a predetermined accuracy.

好ましくは、受信装置に対する電源の入力状態を検出するための電源入力検出手段をさらに備え、選択手段は、電源入力検出手段が電源の入力もしくはリセットを検出したことに応じて、時刻カウント制御手段に対して周波数差推定手段からのクロック制御量を与える。   Preferably, the apparatus further includes power input detection means for detecting a power input state with respect to the receiving device, and the selection means is provided to the time count control means in response to detection of power input or reset by the power input detection means. On the other hand, a clock control amount from the frequency difference estimation means is given.

好ましくは、選択手段は、受信手段が送信装置からのパケットを所定時間受信していないとの判断に応じて、時刻カウント制御手段に対して周波数差推定手段からのクロック制御量を与える。   Preferably, the selection unit gives the clock control amount from the frequency difference estimation unit to the time count control unit in response to the determination that the reception unit has not received the packet from the transmission device for a predetermined time.

好ましくは、送信装置は、受信装置に対しダミーパケットを送信し、周波数差推定手段は、ダミーパケットの時刻カウント差分に基づいて周波数差を推定する。   Preferably, the transmission device transmits a dummy packet to the reception device, and the frequency difference estimation means estimates the frequency difference based on the time count difference of the dummy packet.

本発明のさらに他の局面に従うと、ネットワークに接続された送信装置とデータ通信するための受信装置であって、受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、送信装置からのパケットを受信するための受信手段と、受信したパケットを蓄積するためのバッファと、送信装置からのパケットに含まれる、バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第1のバッファ時間量と、パケットが受信装置のバッファに蓄積された時点の第2のバッファ時間量とを合計した第3のバッファ時間量を算出するためのバッファ時間量算出手段と、第3のバッファ時間量の異常値を取り除くためのデータフィルタと、データフィルタを通過した第3のバッファ時間量の情報から、送信装置側の基準クロックとの周波数差を算出するための周波数差推定手段とを備える。   According to still another aspect of the present invention, a reception device for data communication with a transmission device connected to a network, and a time count for generating first time count information as a reference clock on the reception device side Generation means, receiving means for receiving packets from the transmitting apparatus, buffer for storing received packets, and time count information of packets stored in the buffer included in the packets from the transmitting apparatus Buffer time amount calculating means for calculating a third buffer time amount that is the sum of the first buffer time amount indicating the range and the second buffer time amount at the time when the packet is accumulated in the buffer of the receiving device; A data filter for removing an abnormal value of the third buffer time amount, and information on the third buffer time amount that has passed through the data filter. , And a frequency difference estimating means for calculating the frequency difference between the reference clock of the transmitting apparatus side.

本発明のさらに他の局面に従うと、ネットワークに接続された送信装置とデータ通信するためのクロック同期方法であって、受信装置側の基準クロックとして、第1の時刻カウント情報を生成するステップと、送信装置からのパケットを受信するステップと、送信装置からのパケットに含まれる第2の時刻カウント情報と、受信するステップでパケットを受信した時点で生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するステップと、時刻カウント差分の異常値を取り除くステップと、異常値が取り除かれた時刻カウント差分の情報から、送信装置側の基準クロックとの周波数差を算出するステップとを備える。   According to still another aspect of the present invention, there is provided a clock synchronization method for data communication with a transmission device connected to a network, the step of generating first time count information as a reference clock on the reception device side; Based on the step of receiving a packet from the transmission device, the second time count information included in the packet from the transmission device, and the first time count information generated when the packet is received in the reception step A step of calculating a time count difference, a step of removing an abnormal value of the time count difference, and a step of calculating a frequency difference from the reference clock on the transmitting device side from the information of the time count difference from which the abnormal value has been removed. Prepare.

本発明によれば、デジッタリングにおけるクロック制御において、所定のドリフトレートを満足しながら制御し、かつ、デジッタリングのクロック制御量がほぼ収束して所定のドリフトレートを満足しながら制御できるまでの時間を短くできる。   According to the present invention, in clock control in de-jittering, control is performed while satisfying a predetermined drift rate, and the time until control can be performed while satisfying the predetermined drift rate after the de-jittering clock control amount is almost converged is shortened. it can.

以下、図面を参照しつつ本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについては詳細な説明は繰り返さない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same parts are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated.

以下の説明で明らかとなるように、本発明によれば、デジッタリングにおけるクロック制御において、所定のドリフトレートを満足しながら制御し、かつ、デジッタリングのクロック制御量がほぼ収束して所定のドリフトレートを満足しながら制御できるまでの時間を短くする。   As will be apparent from the following description, according to the present invention, in clock control in dejittering, control is performed while satisfying a predetermined drift rate, and the clock control amount of dejittering is substantially converged to achieve a predetermined drift rate. Shorten the time until control can be achieved with satisfaction.

図1は、デジッタリングのクロック制御量の時間経過を示した図である。
図1において、縦軸はクロック制御量、横軸は時間を表わす。図1に示すように、本発明に係る受信装置は、具体的には、最初の数秒間で±10ppm程度の範囲に収め、それ以降は所定のドリフトレートを満足しながら制御を行なう。なお、以下の説明では、最初の数秒間で一気に合わせこむ制御状態(T1)にあることを「過渡状態」と呼び、その後のクロック制御量の変化がゆるやかな同期制御の状態(T2)にあることを「定常状態」と呼ぶ。
FIG. 1 is a diagram showing a time course of a clock control amount of dejittering.
In FIG. 1, the vertical axis represents the clock control amount, and the horizontal axis represents time. As shown in FIG. 1, the receiving apparatus according to the present invention specifically falls within a range of about ± 10 ppm in the first few seconds, and thereafter performs control while satisfying a predetermined drift rate. In the following description, the control state (T1) that fits at once in the first few seconds is called “transient state”, and the subsequent change in the clock control amount is in the state of synchronous control (T2). This is called “steady state”.

[実施の形態1]
図2は、本実施の形態に係るネットワーク映像伝送システムを示す図である。
[Embodiment 1]
FIG. 2 is a diagram showing a network video transmission system according to the present embodiment.

図2を参照して、ネットワーク映像伝送システム100について説明する。映像伝送システム100は、送信機10と、ネットワーク20と、受信機30とから構成される。送信機10と受信機30とは、ネットワーク20を介して、データを送受信することができる。   The network video transmission system 100 will be described with reference to FIG. The video transmission system 100 includes a transmitter 10, a network 20, and a receiver 30. The transmitter 10 and the receiver 30 can transmit and receive data via the network 20.

送信機10は、MPEGエンコーダ11と、送信部12と、発振器13,14とを備える。また、受信機30は、受信部31と、MPEGデコーダ32と、発振器33と、可変周波数発振器34とを備える。なお、受信部31にはデジッタリング制御部(図示しない)も含まれる。   The transmitter 10 includes an MPEG encoder 11, a transmission unit 12, and oscillators 13 and 14. The receiver 30 includes a receiving unit 31, an MPEG decoder 32, an oscillator 33, and a variable frequency oscillator 34. The receiving unit 31 also includes a dejittering control unit (not shown).

送信機10において、チューナーやDVDプレーヤなどの映像ソースから映像データが入力される。MPEGエンコーダ11は、映像データをMPEG2パケットに符号化し、送信部12に渡す。送信部12は、MPEG2パケットに発振器13に基づく時刻カウント情報を付与してパケット化し、ネットワーク20を経由して、受信機30へ送信する。   In the transmitter 10, video data is input from a video source such as a tuner or a DVD player. The MPEG encoder 11 encodes the video data into an MPEG2 packet and passes it to the transmission unit 12. The transmission unit 12 adds time count information based on the oscillator 13 to the MPEG2 packet to form a packet, and transmits the packet to the receiver 30 via the network 20.

受信機30において、受信部31によって受信されたパケットは、デジッタリング制御部によってジッターが吸収されて(つまり、パケット間の間隔が復元されて)、MPEGデコーダ32に送られる。デジッタリング制御部は、パケットに含まれる時刻カウント情報と、発振器33に基づく時刻カウント情報とを比較して、ジッターを吸収する。MPEGデコーダ32は、MPEG2パケットを復号化し、テレビなどの映像シンクに映像データを出力する。   In the receiver 30, the packet received by the receiving unit 31 is transmitted to the MPEG decoder 32 after the jitter is absorbed by the de-jittering control unit (that is, the interval between the packets is restored). The de-jittering control unit compares the time count information included in the packet with the time count information based on the oscillator 33 and absorbs jitter. The MPEG decoder 32 decodes the MPEG2 packet and outputs the video data to a video sink such as a television.

本実施の形態におけるネットワーク20は、IEEE802.11などの無線LANネットワークを想定している。しかし、それ以外にも、Ethernet(登録商標)や電力線通信などの有線LANネットワーク、または、インターネットなど複数の中継器を経由する一般的なIP(Internet Protocol)ネットワークであってもよい。   The network 20 in the present embodiment is assumed to be a wireless LAN network such as IEEE802.11. However, other than that, it may be a wired LAN network such as Ethernet (registered trademark) or power line communication, or a general IP (Internet Protocol) network via a plurality of repeaters such as the Internet.

図3は、パケットのフォーマットの一例を示す図である。
図3を参照して、送信部12によって送信されるパケットのフォーマットについて説明する。なお、本実施の形態では、パケット伝送プロトコルをUDP(User Datagram Protocol)とし、図3に示されているのはUDPのペイロード部であるとする。ただし、パケット伝送プロトコルは、UDPに限らずTCP(Transmission Control Protocol)であってもよいし、それら以外のものであってもよい。
FIG. 3 is a diagram illustrating an example of a packet format.
With reference to FIG. 3, the format of the packet transmitted by the transmission unit 12 will be described. In this embodiment, it is assumed that the packet transmission protocol is UDP (User Datagram Protocol) and that the payload portion of UDP is shown in FIG. However, the packet transmission protocol is not limited to UDP, but may be TCP (Transmission Control Protocol), or may be other than those.

パケットのフォーマットとしては、単に1個のMPEG2パケットに1個の時刻カウント情報を付与したものであってもよいが、本実施の形態では、Ethernet(登録商標)等での伝送に適したサイズとなるように、MPEG2パケットを7個まとめて伝送することとする。   The packet format may be simply a single MPEG2 packet with one piece of time count information. In the present embodiment, the packet has a size suitable for transmission via Ethernet (registered trademark) or the like. Thus, it is assumed that seven MPEG2 packets are transmitted together.

TS−dataフィールド200−0〜6には、MPEG2−TSのデータを付与する。また、TS−dataフィールドは188バイトである。   MPEG2-TS data is assigned to the TS-data fields 200-0 to 200-6. The TS-data field is 188 bytes.

TTSフィールド210−0〜6には、各MPEG2−TSがエンコーダから入力された時点の発振器13に基づく時刻カウント情報を付与する。また、TTSフィールドは4バイトである。   Time count information based on the oscillator 13 at the time when each MPEG2-TS is input from the encoder is assigned to the TTS fields 210-0 to 210-6. The TTS field is 4 bytes.

SEQフィールド220には、パケットのシーケンス番号を付与する。送信側は、パケットのシーケンス番号を1ずつ増やしていく。受信側は、シーケンス番号の連続性を見ることによって、パケットロスト、同一パケットの再受信、あるいはパケット受信順序の逆転をチェックすることができる。本実施の形態では、パケットロストなどのエラー処理は記載しない。なお、図3においては、SEQフィールドに4バイト割り当てられているが、SEQフィールドは省略してもよい。   A sequence number of the packet is given to the SEQ field 220. The transmission side increments the packet sequence number by one. The reception side can check packet lost, re-reception of the same packet, or reversal of the packet reception order by looking at the sequence number continuity. In this embodiment, error processing such as packet loss is not described. In FIG. 3, 4 bytes are allocated to the SEQ field, but the SEQ field may be omitted.

TXQフィールド230には、送信側の発振器13に基づく時刻カウント情報を付与する。実際にパケットを送信しようとする時点の時刻カウント情報を付与する。なお、図3においては、TXQフィールドに4バイト割り当てられているが、TXQフィールドも省略してもよい。この場合、パケットを送信しようとする時点の時刻カウント情報は、最も新しい時刻カウント情報であるTTSで代用することもできる。しかし、エンコーダからMPEG2パケットが入力された時点と、パケットを送信しようとする時点には通常タイムラグがあるので、分けておく方が望ましい。 In the TXQ field 230, time count information based on the oscillator 13 on the transmission side is given. Time count information at the time of actually trying to transmit a packet is given. In FIG. 3, 4 bytes are allocated to the TXQ field, but the TXQ field may be omitted. In this case, the time count information at the time when the packet is to be transmitted can be replaced with TTS 6 which is the latest time count information. However, there is a normal time lag between the time when the MPEG2 packet is input from the encoder and the time when the packet is to be transmitted.

また、図2には図示されていないが、送信部12は、通常、送信用バッファを持っているのが一般的である。送信用バッファに、送信前のパケットを蓄えることができるようにしておく。送信用バッファを持つことで、ネットワーク20にバースト的な伝送障害が起こっても障害の耐性を得ることができる。   Although not shown in FIG. 2, the transmission unit 12 generally has a transmission buffer. A packet before transmission can be stored in the transmission buffer. By having a transmission buffer, it is possible to obtain tolerance of failure even when a bursty transmission failure occurs in the network 20.

また、送信機10と受信機30における時刻カウント情報のカウントアップ周波数は共通にしておく。ここでは、時刻カウント情報のカウントアップ周波数を1MHzとする。つまり、1μ秒に1ずつカウントアップされる。   Further, the count-up frequency of the time count information in the transmitter 10 and the receiver 30 is made common. Here, the count-up frequency of the time count information is 1 MHz. That is, the count is incremented by 1 every 1 μsec.

図4は、本実施の形態に係る受信機30の状態遷移を示す図である。
図4を参照して、受信機30の制御状態について説明する。受信機30は、大まかに分けて過渡状態300と定常状態310の2つの状態をとる。過渡状態時と定常状態時の動作は、図1に記載されているクロック制御量の動きと対応付けられる。また、受信機30に対し電源オンまたはリセットした後は、過渡状態となる。
FIG. 4 is a diagram illustrating state transition of the receiver 30 according to the present embodiment.
The control state of the receiver 30 will be described with reference to FIG. The receiver 30 is roughly divided into two states, a transient state 300 and a steady state 310. The operations in the transient state and the steady state are associated with the movement of the clock control amount described in FIG. In addition, after the receiver 30 is turned on or reset, it enters a transient state.

受信機30は、過渡状態のとき、高速デジッタリング制御を行なう。送信機10と受信機30の発振器の周波数差が十分な精度で推定されれば、高速デジッタリング制御を終了して定常状態に移行する。   The receiver 30 performs high-speed dejittering control in a transient state. If the frequency difference between the oscillators of the transmitter 10 and the receiver 30 is estimated with sufficient accuracy, the high-speed de-jittering control is terminated and the steady state is entered.

一方、受信機30は、定常状態のとき、所定のドリフトレートを守ったデジッタリング制御を行なう。受信機30がパケットを受信しなくなって、一定期間を経過すると過渡状態に移行する。   On the other hand, the receiver 30 performs dejittering control while maintaining a predetermined drift rate in a steady state. When the receiver 30 does not receive a packet and a certain period of time elapses, a transition is made to a transient state.

まず、受信機30が過渡状態のときの動作について説明する。
図5は、受信部31の詳細な構成を示した図である。
First, an operation when the receiver 30 is in a transient state will be described.
FIG. 5 is a diagram illustrating a detailed configuration of the reception unit 31.

図5に示すように、受信部31は、パケットを送受信するための通信インタフェース(以下、「I/F」)部41と、デジッタリングバッファ42と、時刻カウント差分算出部43と、データフィルタ44と、周波数差推定部45と、時刻カウント生成部46と、時刻カウント差分極小値検出部47と、時刻カウント遅速判定部48と、精度判定部49と、選択部50とを備える。   As shown in FIG. 5, the reception unit 31 includes a communication interface (hereinafter “I / F”) unit 41 for transmitting and receiving packets, a de-jittering buffer 42, a time count difference calculation unit 43, and a data filter. 44, a frequency difference estimation unit 45, a time count generation unit 46, a time count difference minimum value detection unit 47, a time count slow speed determination unit 48, an accuracy determination unit 49, and a selection unit 50.

通信I/F部41によって受信されたパケットは、パケット長などがチェックされ、図3で示したようなMPEGパケットであれば、デジッタリングバッファ42に蓄えられる。   The packet received by the communication I / F unit 41 is checked for packet length and the like, and if it is an MPEG packet as shown in FIG.

デジッタリングバッファ42に蓄えられたパケットは、パケットに含まれる時刻カウント情報と時刻カウント生成部46によって生成される時刻カウント情報に基づき、タイミングが調整されてMPEGデコーダに出力される。   The packet stored in the de-jittering buffer 42 is adjusted in timing based on the time count information included in the packet and the time count information generated by the time count generation unit 46 and is output to the MPEG decoder.

以下に、図5を参照して、デジッタリングバッファ42からMPEGデコーダにパケットが出力されるタイミングについて説明する。まず、あらかじめ受信機側で最初のパケットを受信してからそのパケットをMPEGデコーダに出力するまでどれだけの時間を待つかというパラメータを設定しておく。これを初期再生遅延時間とする。初期再生遅延時間はネットワークで生じる伝送遅延ゆらぎを吸収できるだけの時間を設定することが望ましい。   Hereinafter, the timing at which a packet is output from the de-jittering buffer 42 to the MPEG decoder will be described with reference to FIG. First, a parameter is set in advance as to how long to wait after receiving the first packet on the receiver side before outputting the packet to the MPEG decoder. This is the initial reproduction delay time. The initial reproduction delay time is desirably set to a time that can absorb the transmission delay fluctuation generated in the network.

最初のパケットを出力するタイミングは、以下の条件(A)もしくは条件(B)のうち早い方とする。   The timing for outputting the first packet is the earlier of the following conditions (A) or (B).

条件(A)受信機側で1パケット目を受信してから初期再生遅延時間が経過したとき
条件(B)受信機側バッファに蓄えられているバッファ時間量が初期再生遅延時間を超えたとき(ただし、バッファ時間量とは、受信機側バッファに蓄えられている最新のパケットと最古のパケットとに付与されている時刻カウント情報の差である。各パケットには、エンコーダから入力された時点の送信機側の時刻カウント情報が付与されている。)
ここで、受信機側は、1パケット目を出力した時点で、遅延時間(delayed_time)を次の式(2)のように設定する。
Condition (A) When the initial playback delay time has elapsed since the first packet was received at the receiver side Condition (B) When the buffer time amount stored in the receiver side buffer exceeded the initial playback delay time ( However, the amount of buffer time is the difference between the time count information given to the latest packet and the oldest packet stored in the receiver side buffer. (The time count information on the transmitter side is given.)
Here, the receiver side sets the delay time (delayed_time) as shown in the following equation (2) when the first packet is output.

「遅延時間(delayed_time)」=「1パケット目を出力した時点の時刻カウント情報」−「1パケット目に含まれる時刻カウント情報」…式(2)
また、2パケット目以降を出力するタイミングは、現在の時刻カウント情報(current_time)が次の式(3)の条件を満たすと出力する。
“Delay time (delayed_time)” = “Time count information when the first packet is output” − “Time count information included in the first packet” (2)
The timing for outputting the second and subsequent packets is output when the current time count information (current_time) satisfies the condition of the following expression (3).

「現在の時刻カウント情報(current_time)」≧「2パケット目以降に含まれる時刻カウント情報」+「遅延時間(delayed_time)」…式(3)
送受信を開始する時点で、送信機が送信バッファにある程度のパケットを蓄えていると、送受信が始まると一時的に多量のパケットが送受信されるので、条件(B)が先に満たされることになる。そうでなければ、条件(A)が先に満たされることが多い。
“Current time count information (current_time)” ≧ “time count information included in second and subsequent packets” + “delayed time (delayed_time)” Equation (3)
If the transmitter stores a certain amount of packets in the transmission buffer at the start of transmission / reception, a large amount of packets are temporarily transmitted / received when transmission / reception starts, so the condition (B) is satisfied first. . Otherwise, the condition (A) is often satisfied first.

式(3)の条件がすでに満たされていれば、ただちにパケットを出力する。
ただし、時刻カウント情報の大小比較には注意が必要である。時刻カウント情報は、符号無し32ビット整数であり、0〜2^32−1を巡回する数値だからである。
If the condition of Expression (3) is already satisfied, the packet is output immediately.
However, care must be taken when comparing the time count information. This is because the time count information is an unsigned 32-bit integer and is a numerical value that cycles through 0 to 2 ^ 32.

図6は、時刻カウント情報などの巡回する数値の大小比較を説明するための図である。
図6(a)に示すように、時刻カウント情報の大小比較は、単純な比較ではなく、右回りに行くほど大きいと判断されるように比較しなければならない。具体的には、図6(b)に示すようなコードで大小比較を行なうとよい。以下の説明でも、時刻カウント情報(時刻カウント差分)の大小比較は、図6(b)に示すようなコードを使うものとする。
FIG. 6 is a diagram for explaining the comparison of the numerical values that circulate such as time count information.
As shown in FIG. 6A, the magnitude comparison of the time count information is not a simple comparison, but must be compared so that it is determined to be larger as it goes clockwise. Specifically, the size comparison may be performed using a code as shown in FIG. Also in the following description, it is assumed that a code as shown in FIG. 6B is used to compare the time count information (time count difference).

図5に戻って、通信I/F部41でパケットを受信し始めてからしばらくはパケット伝送遅延時間が安定しないことがある。パケット伝送遅延時間が安定しないと、後続の周波数差推定部45において精度良く周波数差を求めることができない。このようなときは、所定の時間(たとえば0.5秒)、受信したパケットを無視するようにしてもよい。もしくは、パケットを受信し始めてから所定のパケット数(たとえば150パケット)を受信するまで無視するようにする。もしくは、パケットを受信し始めてからパケット伝送遅延時間が安定するまで、無視するようにしてもよい。ここで、「パケット伝送遅延時間が安定する」とは、たとえば、パケット伝送遅延時間の直近N回の標準偏差を計算し、所定の値以下ならば安定したと判断する。   Returning to FIG. 5, the packet transmission delay time may not be stable for a while after the communication I / F unit 41 starts to receive a packet. If the packet transmission delay time is not stable, the subsequent frequency difference estimator 45 cannot accurately obtain the frequency difference. In such a case, the received packet may be ignored for a predetermined time (for example, 0.5 seconds). Alternatively, it is ignored until a predetermined number of packets (for example, 150 packets) is received after the reception of the packets is started. Alternatively, it may be ignored until the packet transmission delay time is stabilized after the start of packet reception. Here, “packet transmission delay time is stable” means, for example, that the standard deviation of the N most recent packet transmission delay times is calculated, and if it is equal to or less than a predetermined value, it is determined that the packet transmission delay time is stable.

時刻カウント生成部46は、発振器33とクロック制御量に基づいて時刻カウント情報を生成する。クロック制御量とは、時刻カウント情報の進み具合を調整するパラメータである。   The time count generation unit 46 generates time count information based on the oscillator 33 and the clock control amount. The clock control amount is a parameter that adjusts the progress of the time count information.

カウントアップ周波数が1MHzと仮定し、クロック制御量をX[ppm]に設定すると、時刻カウント情報は1秒間に100万+X回カウントアップされる。   Assuming that the count-up frequency is 1 MHz and the clock control amount is set to X [ppm], the time count information is counted up 1 million + X times per second.

ここで、クロック制御量をプラスに設定すると、時刻カウント情報は早く進む。また、クロック制御量をマイナスに設定すると、時刻カウント情報はゆっくり進む。   Here, when the clock control amount is set to plus, the time count information advances faster. Further, when the clock control amount is set to minus, the time count information advances slowly.

時刻カウント情報は、発振器33のクロックを分周してカウントアップする。たとえば、発振器33の発振周波数を33MHz、クロック制御量をX[ppm]とすると、分周値を次式(4)の右辺のように設定するとよい。   The time count information is counted up by dividing the clock of the oscillator 33. For example, when the oscillation frequency of the oscillator 33 is 33 MHz and the clock control amount is X [ppm], the frequency division value may be set as the right side of the following equation (4).

1/33×(1+X×10^(−6))≒30303/(999999−X)…式(4)
なお、分周値は有理数で表現している。分周値がn/dというのは、発振器33のクロックサイクルd回に、時刻カウント情報がnの割合でカウントアップすることを意味する。
1/33 × (1 + X × 10 ^ (− 6)) ≈30303 / (999999−X) (4)
Note that the frequency division value is expressed as a rational number. The frequency division value of n / d means that the time count information is counted up at a rate of n every d clock cycles of the oscillator 33.

このように、時刻カウント生成部46は、クロック制御量を引数として時刻カウント情報の進み具合が調整され、時刻カウント情報を生成する。   As described above, the time count generation unit 46 adjusts the progress of the time count information using the clock control amount as an argument, and generates time count information.

選択部50は、精度判定部49からの制御信号に従って、周波数差推定部45からのクロック制御量または時刻カウント遅速判定部48からのクロック制御量のいずれか一方を選択的に時刻カウント生成部46に与える。   The selection unit 50 selectively selects either the clock control amount from the frequency difference estimation unit 45 or the clock control amount from the time count delay determination unit 48 according to the control signal from the accuracy determination unit 49. To give.

精度判定部49は、選択部50に対し、過渡状態においては、周波数差推定部45からのクロック制御量を与え、定常状態においては、時刻カウント遅速判定部48からのクロック制御量を与えるように制御信号を送る。過渡状態から定常状態および定常状態から過渡状態への移行については後述する。   The accuracy determination unit 49 gives the selection unit 50 the clock control amount from the frequency difference estimation unit 45 in the transient state and the clock control amount from the time count delay determination unit 48 in the steady state. Send a control signal. The transition from the transient state to the steady state and from the steady state to the transient state will be described later.

時刻カウント差分算出部43は、パケットに含まれる時刻カウント情報とそのパケットが受信された時点の時刻カウント生成部46によって生成された時刻カウント情報との差分を検出する。時刻カウント差分(deliver_time)は次の式(5)で求められる。   The time count difference calculation unit 43 detects a difference between the time count information included in the packet and the time count information generated by the time count generation unit 46 at the time when the packet is received. The time count difference (deliver_time) is obtained by the following equation (5).

「時刻カウント差分(deliver_time)」=「受信機が受信した時点の時刻カウント情報(received_time)」−「送信機が送信しようとする時点の時刻カウント情報(transmit_time)」…式(5)
パケット伝送時間が前後のパケットと比べて著しく長くなると、そのときの時刻カウント差分が前後のパケットと比べて大きくなる。データフィルタ44は、このような場合のデータを無効なデータとして除去する。このようなデータフィルタを設ける理由は、パケット伝送時間のばらつきが大きいためである。
“Time count difference (deliver_time)” = “Time count information when received by receiver (received_time)” − “Time count information when transmitter transmits (transmit_time)” (5)
When the packet transmission time is significantly longer than the preceding and succeeding packets, the time count difference at that time becomes larger than the preceding and succeeding packets. The data filter 44 removes such data as invalid data. The reason for providing such a data filter is that the packet transmission time varies greatly.

図7は、無線伝送におけるパケット伝送時間のヒストグラムの一例を示す図である。
図7において、横軸はパケット伝送時間を、縦軸は頻度を表わす。図7に示すように、一見すると正規分布のようであるが、パケット伝送時間は+∞方向に長い尾を引いていることがわかる。無線伝送においては、パケット伝送時間が100msを超えることもあり、パケット伝送時間に上限を仮定することはふさわしくない。これは、無線伝送に限らず多くのネットワーク環境においてもいえることである。
FIG. 7 is a diagram illustrating an example of a histogram of packet transmission times in wireless transmission.
In FIG. 7, the horizontal axis represents packet transmission time, and the vertical axis represents frequency. As shown in FIG. 7, at first glance, it looks like a normal distribution, but it can be seen that the packet transmission time has a long tail in the + ∞ direction. In wireless transmission, the packet transmission time may exceed 100 ms, and it is not appropriate to assume an upper limit for the packet transmission time. This is true not only in wireless transmission but also in many network environments.

時刻カウント差分に異常値があると、周波数差を推定するところで誤差が大きくなってしまう。本発明の目的は、短時間で高精度に周波数差を推定することであるので、データフィルタを設けている。   If there is an abnormal value in the time count difference, the error becomes large when the frequency difference is estimated. Since the object of the present invention is to estimate the frequency difference with high accuracy in a short time, a data filter is provided.

図5に戻って、周波数差推定部45は、送信機の発振器13と受信機の発振器33との間で生じる発振周波数の差を推定する。データフィルタ44によって除去された時刻カウント差分を基に推定する。   Returning to FIG. 5, the frequency difference estimator 45 estimates the difference in oscillation frequency generated between the oscillator 13 of the transmitter and the oscillator 33 of the receiver. Estimation is performed based on the time count difference removed by the data filter 44.

また、周波数差推定部45は、時刻カウント生成部46に対してクロック制御量を出力する。周波数差を推定しない段階のデフォルトのクロック制御量は、0[ppm]に設定しておく。時刻カウント生成部46は、クロック制御量によって、時刻カウント情報の進み方を早くしたり遅くしたり調整する。   Further, the frequency difference estimation unit 45 outputs a clock control amount to the time count generation unit 46. The default clock control amount at the stage where the frequency difference is not estimated is set to 0 [ppm]. The time count generation unit 46 adjusts how the time count information advances faster or slower depending on the clock control amount.

図8は、時刻カウント差分算出部43によって得られた時刻カウント差分のプロット図である。   FIG. 8 is a plot diagram of the time count difference obtained by the time count difference calculation unit 43.

図8を参照して、時刻カウント差分について説明する。なお、図8において、横軸は、データ受信を開始してからの経過時間[μs]である。縦軸は、時刻カウント差分[μs]である。   The time count difference will be described with reference to FIG. In FIG. 8, the horizontal axis represents the elapsed time [μs] from the start of data reception. The vertical axis represents the time count difference [μs].

送信側の時刻カウント情報と受信側の時刻カウント情報は、それぞれ独立してカウントアップされる。送信側と受信側それぞれが電源オンやリセットされた時点でゼロからカウントアップされ始める。送信側と受信側で電源オンやリセットされるタイミングが毎回異なるため、時刻カウント情報の差分の値そのものに意味はない。しかし、時刻カウント情報の差分の経過には意味がある。   The time count information on the transmission side and the time count information on the reception side are counted up independently. When the transmitting side and the receiving side are each turned on or reset, they start counting up from zero. Since the timing at which the power is turned on and reset is different between the transmission side and the reception side every time, the difference value itself of the time count information is meaningless. However, the progress of the time count information difference is meaningful.

図8に示すように、時間の経過とともに時刻カウント差分が増える傾向にあることが分かる。これは、送信機の発振器13と受信機の発振器33との間で生じる発振周波数の差に起因する。   As shown in FIG. 8, it can be seen that the time count difference tends to increase with the passage of time. This is due to the difference in oscillation frequency that occurs between the oscillator 13 of the transmitter and the oscillator 33 of the receiver.

時間の経過とともに増えていくか、減っていくかは、送信機の発振器13と受信機の発振器33との関係による。すなわち、受信機の発振器33の進み方が送信機の発振器13よりも速ければ、時間の経過とともに増えていき、受信機の発振器33の進み方が送信機の発振器13よりも遅ければ、時間の経過とともに減っていく。   Whether it increases or decreases with the passage of time depends on the relationship between the oscillator 13 of the transmitter and the oscillator 33 of the receiver. That is, if the progress of the oscillator 33 of the receiver is faster than the oscillator 13 of the transmitter, it increases with time, and if the progress of the oscillator 33 of the receiver is slower than the oscillator 13 of the transmitter, the time is increased. Decreases with progress.

図9は、データフィルタによって無効なデータが除去された後の時刻カウント差分のプロット図である。   FIG. 9 is a plot of the time count difference after invalid data is removed by the data filter.

図9に示すように、データフィルタ44は、図8に示すようなプロット図から無効なデータを除去する。   As shown in FIG. 9, the data filter 44 removes invalid data from the plot diagram as shown in FIG.

図10は、無効なデータを検出する処理についてのフローチャートである。
図10を参照して、データフィルタ44が無効なデータを検出する処理について説明する。データフィルタ44は、パケットを受信するごとに、パケットに含まれる、送信機が送信しようとする時点の時刻カウント情報(transmit_time)と、受信機が受信した時点の時刻カウント情報(received_time)とを引数として、無効なデータを検出するルーチンを呼び出す。
FIG. 10 is a flowchart of processing for detecting invalid data.
With reference to FIG. 10, a process in which the data filter 44 detects invalid data will be described. Each time the data filter 44 receives a packet, the packet receives time count information (transmit_time) at the time of transmission by the transmitter and time count information (received_time) at the time of reception by the receiver. As a routine to detect invalid data.

まず、ステップS900において、データフィルタ44は、受信したパケットが先頭パケットであるかどうか判定する。   First, in step S900, the data filter 44 determines whether the received packet is the top packet.

先頭パケットであれば(ステップS900において、YES)、ステップS902において、データフィルタ44は、静的変数(first_transmit_time、min_deliver_time2)の初期設定を行なう。具体的には、送信機が先頭パケットを送信しようとする時刻の時刻カウント情報(first_transmit_time)をゼロに設定する。ここで、「先頭パケット」とは、電源投入後やリセット後に最初に受信したパケットをいう。また、修正された時刻カウント差分の最小値(min_deliver_time2)を+∞に設定する。なお、「修正された時刻カウント差分」についてはステップS906で詳しく説明する。   If it is the first packet (YES in step S900), in step S902, the data filter 44 initializes static variables (first_transmit_time, min_deliver_time2). Specifically, the time count information (first_transmit_time) of the time at which the transmitter tries to transmit the first packet is set to zero. Here, the “first packet” means a packet received first after power-on or reset. Further, the corrected minimum value (min_deliver_time2) of the time count difference is set to + ∞. The “corrected time count difference” will be described in detail in step S906.

続いて、ステップS904にて、送信機が先頭パケットを送信しようとする時刻の時刻カウント情報(first_transmit_time)に、受信したパケットに含まれる、送信機が送信しようとする時点の時刻カウント情報(transmit_time)を代入する。   Subsequently, in step S904, the time count information (transmit_time) at the time when the transmitter tries to transmit included in the received packet in the time count information (first_transmit_time) at the time when the transmitter tries to transmit the first packet. Is assigned.

一方、先頭パケットでなければ(ステップS900において、NO)、ステップS906にて、修正された時刻カウント差分(deliver_time2)を計算する。ここで行なわれる時刻カウント差分の修正計算は、以下で説明するようなデータ判定のために行なわれる。なお、計算は次の式(6)にしたがって行なう。   On the other hand, if it is not the top packet (NO in step S900), the corrected time count difference (deliver_time2) is calculated in step S906. The correction calculation of the time count difference performed here is performed for data determination as described below. The calculation is performed according to the following equation (6).

(deliver_time2)=(received_time)−(transmit_time2)…式(6)
ここで、(transmit_time2)は、送信機の時刻カウント情報を擬似的に+200[ppm]早くさせたものである。具体的な計算式は次の式(7)のようになる。
(Deliver_time2) = (received_time) − (transmit_time2) (6)
Here, (transmit_time2) is obtained by artificially increasing the time count information of the transmitter by +200 [ppm] earlier. A specific calculation formula is as shown in the following formula (7).

(transmit_time2)=((transmit_time)−(fisrt_transmit_time))×(1+200e-6)+(fisrt_transmit_time)…式(7)
ここでは、送信機の時刻カウント情報を擬似的に+200[ppm]早くさせているが、これは、送信機側と受信機側の発振器で想定される周波数誤差を合計したものを上回るだけの量を設定する。ここでは、送信機側と受信機側の発振器の精度をそれぞれ100[ppm]未満と想定する。このように設定すれば、受信機側の時刻カウント情報の進み方が送信機側の時刻カウント情報の進み方より遅くなる。
(Transmit_time2) = ((transmit_time)-(fisrt_transmit_time)) * (1 + 200e-6) + (fisrt_transmit_time) (7)
Here, the time count information of the transmitter is artificially increased by +200 [ppm] earlier, but this is an amount that exceeds the sum of the frequency errors assumed by the oscillators on the transmitter side and the receiver side. Set. Here, it is assumed that the accuracy of the oscillators on the transmitter side and the receiver side is less than 100 ppm. With this setting, the time count information on the receiver side advances more slowly than the time count information on the transmitter side.

また、受信機側の時刻カウント情報を擬似的に遅くさせる方法をとってもよい。このように設定すれば、送信機側の時刻カウント情報の進み方が受信機側の時刻カウント情報の進み方より早くなる。   Further, a method of artificially delaying the time count information on the receiver side may be taken. With this setting, the time count information on the transmitter side advances faster than the time count information on the receiver side.

したがって、いずれの方法をとっても、修正された時刻カウント差分は、時間経過とともに減少していくと推定される。擬似的に早くさせる量は、システムで使用する発振器の精度に合わせて変更してもよい。   Accordingly, it is estimated that the corrected time count difference decreases with the passage of time regardless of which method is used. You may change the quantity made to be pseudo-fast according to the precision of the oscillator used in a system.

図11は、図8で示したデータに対し、修正された時刻カウント差分(deliver_time2)をプロットした図である。   FIG. 11 is a diagram in which the corrected time count difference (deliver_time2) is plotted with respect to the data shown in FIG.

図11に示すように、擬似的に送信機の時刻カウント情報を早めて送信機の時刻カウント情報を修正し、修正された時刻カウント差分時間(deliver_time2)を計算すると、時間経過とともに減少していくことが分かる。   As shown in FIG. 11, when the time count information of the transmitter is corrected by advancing the time count information of the transmitter in a pseudo manner and the corrected time count difference time (deliver_time2) is calculated, it decreases with the passage of time. I understand that.

図10に戻って、ステップS908にて、ステップS906において計算した、修正された時刻カウント差分時間(deliver_time2)が、現時点における、修正された時刻カウント差分の最小値(min_deliver_time2)より小さいかどうかを判定する。   Returning to FIG. 10, in step S908, it is determined whether or not the corrected time count difference time (deliver_time2) calculated in step S906 is smaller than the minimum value (min_deliver_time2) of the corrected time count difference at the present time. To do.

最小値以下であれば(ステップS908にて、YES)、ステップS910にて、修正された時刻カウント差分の最小値(min_deliver_time2)に、ステップS906で計算した、修正された時刻カウント差分時間(deliver_time2)を代入する。   If it is equal to or smaller than the minimum value (YES in step S908), the corrected time count difference time (deliver_time2) calculated in step S906 is set to the minimum value (min_deliver_time2) of the corrected time count difference in step S910. Is assigned.

次いで、ステップS912にて、受信したパケットは有効なデータであると判定して、処理を終了する。   Next, in step S912, it is determined that the received packet is valid data, and the process ends.

一方、最小値より大きければ(ステップS908にて、NO)、ステップS914にて無効なデータであると判定して、処理を終了する。   On the other hand, if it is larger than the minimum value (NO in step S908), it is determined in step S914 that the data is invalid, and the process ends.

データフィルタは、以上のような方法により実現できるが、データフィルタの実現方法としては、上述した方法だけでなく次のような方法もある。   The data filter can be realized by the method as described above. As a method for realizing the data filter, there is the following method in addition to the above-described method.

受信機側で、所定の時間(たとえば100ms)ごとに区切り、もしくは、一定数のパケット数受信(たとえば50パケット)ごとに区切り、それぞれの期間で時刻カウント差分の極小を求める。時刻カウント差分が極小となった場合のみ有効なデータであると判定し、それ以外は無効なデータであると判定する。   On the receiver side, it is divided every predetermined time (for example, 100 ms) or divided every predetermined number of packets (for example, 50 packets), and the minimum of the time count difference is obtained in each period. It is determined that the data is valid only when the time count difference is minimal, and it is determined that the data is invalid otherwise.

あるいは、受信機側で、時刻カウント差分(deliver_time)の過去N回のうち小さい方からM個を取り出して、そのM個の平均をとる(これを「移動下側平均」と呼ぶ)。パケットを受信したとき、時刻カウント差分(deliver_time)が、移動下側平均±X(Xは所定の値)の範囲の中に含まれるとき、有効なデータであると判定し、それ以外は無効なデータであると判定する。   Alternatively, on the receiver side, M is extracted from the smaller of the past N times of the time count difference (deliver_time), and the M is averaged (this is referred to as “moving lower average”). When a packet is received, if the time count difference (deliver_time) is within the range of the moving lower average ± X (X is a predetermined value), it is determined to be valid data, otherwise it is invalid Judged as data.

図5に戻って、周波数差推定部45は、データフィルタ44によって有効であると判定されたデータに基づいて周波数差を算出する。   Returning to FIG. 5, the frequency difference estimation unit 45 calculates the frequency difference based on the data determined to be valid by the data filter 44.

図12は、周波数差を算出する処理についてのフローチャートである。
図12を参照して、周波数差推定部45が、送受信機の周波数差を算出する処理について説明する。周波数差推定部45は、パケットを受信するごとに、パケットに含まれる、送信機が送信しようとする時点の時刻カウント情報(transmit_time)と、受信機が受信した時点の時刻カウント情報(received_time)とを引数として、周波数差を算出するルーチンを呼び出す。なお、ここでは、周波数差を算出する方法として、最小二乗法を用いる。
FIG. 12 is a flowchart of the process for calculating the frequency difference.
With reference to FIG. 12, the frequency difference estimation part 45 demonstrates the process which calculates the frequency difference of a transmitter / receiver. Each time the packet is received, the frequency difference estimation unit 45 includes time count information (transmit_time) at the time of transmission by the transmitter, and time count information (received_time) at the time of reception by the receiver. Is used as a parameter to call a routine that calculates the frequency difference. Here, the least square method is used as a method of calculating the frequency difference.

図13は、最小二乗法を説明するための図である。
ここで、図13を参照して最小二乗法について説明する。なお、図13では、横軸をx、縦軸をyとする。
FIG. 13 is a diagram for explaining the least square method.
Here, the least square method will be described with reference to FIG. In FIG. 13, the horizontal axis is x, and the vertical axis is y.

最小二乗法は、n個の点(x,y)(i=1,…,n)を最もよく近似する直線y=ax+b(これを「回帰直線」と呼ぶ)を求めるのに用いられる。つまり、最小二乗法は、次式(8)で表わされる、各点(xi,yi)と回帰直線y=ax+bとの間の差(これを残差と呼ぶ)の二乗和が最小になるように各係数(この場合はa,b)を求める方法である。 The least square method is used to obtain a straight line y = ax + b (this is called a “regression line”) that best approximates n points (x i , y i ) (i = 1,..., N). . That is, in the least square method, the sum of squares of the difference (referred to as a residual) between each point (xi, yi) and the regression line y = ax + b expressed by the following equation (8) is minimized. In this method, each coefficient (in this case, a and b) is obtained.

Figure 2008118549
Figure 2008118549

ただし、式(8)中のA,B,C,D,Eは、次式(9)で表わされる。   However, A, B, C, D, and E in the equation (8) are expressed by the following equation (9).

Figure 2008118549
Figure 2008118549

各係数を求めるには、具体的には、式(8)で表わされる残差二乗和Sを各係数で偏微分しゼロを代入して得られる次の式(10)、式(11)を計算する。   In order to obtain each coefficient, specifically, the following equations (10) and (11) obtained by partial differentiation of the residual sum of squares S represented by equation (8) and substituting zero are obtained. calculate.

Figure 2008118549
Figure 2008118549

図12に戻って、以下、周波数差を算出する処理についてフローチャートに従って詳細に説明する。なお、周波数差推定部45は、パケットを受信するたびに以下の処理を行なうものとする。   Returning to FIG. 12, the process of calculating the frequency difference will be described in detail below according to the flowchart. Note that the frequency difference estimation unit 45 performs the following processing every time a packet is received.

まず、ステップS1100において、時刻カウント差分算出部43は、式(5)に従って、時刻カウント差分(deliver_time)を計算する。   First, in step S1100, the time count difference calculation unit 43 calculates a time count difference (deliver_time) according to Equation (5).

そして、ステップS1102において、周波数差推定部45は、受信したパケットが先頭パケットであるかどうか判定する。   In step S1102, the frequency difference estimation unit 45 determines whether or not the received packet is the head packet.

先頭パケットであれば(ステップS1102において、YES)、ステップS1104において、周波数差推定部45は、静的変数(first_transmit_time,first_deliver_time,SX,SY,SXX,SXY,SYY,CNT)の初期設定を行なう。具体的には、各変数の値をゼロにする。なお、ここでは、先頭パケットの時刻カウント差分を「first_deliver_time」とする。また、SXは式(8)における変数Eに対応する。同様に、SYは変数Cに、SXXは変数Bに、SXYは変数Dに、SYYは変数Aに、CNTはnに対応する。   If it is the first packet (YES in step S1102), in step S1104, the frequency difference estimation unit 45 performs initial setting of static variables (first_transmit_time, first_deliver_time, SX, SY, SXX, SXY, SYY, CNT). Specifically, the value of each variable is set to zero. Here, the time count difference of the first packet is “first_deliver_time”. SX corresponds to variable E in equation (8). Similarly, SY corresponds to variable C, SXX corresponds to variable B, SXY corresponds to variable D, SYY corresponds to variable A, and CNT corresponds to n.

次いで、ステップS1106にて、送信機が先頭パケットを送信しようとする時刻の時刻カウント情報(first_transmit_time)に受信したパケットに含まれる、送信機が送信しようとする時点の時刻カウント情報(transmit_time)を代入する。また、先頭パケットの時刻カウント差分(first_deliver_time)に受信したパケットの時刻カウント差分(deliver_time)を代入する。   Next, in step S1106, the time count information (transmit_time) at the time the transmitter tries to transmit is included in the received time count information (first_transmit_time) at the time when the transmitter tries to transmit the first packet. To do. Also, the time count difference (deliver_time) of the received packet is substituted for the time count difference (first_deliver_time) of the first packet.

一方、先頭パケットでなければ(ステップS1102において、NO)、ステップS1108にて、精度判定部49は、周波数差推定部45が推定した周波数差の精度が所定の精度であるか(精度が十分であるか)どうか判定する。この判定方法は後述する。   On the other hand, if it is not the leading packet (NO in step S1102), in step S1108, accuracy determination unit 49 determines whether the accuracy of the frequency difference estimated by frequency difference estimation unit 45 is a predetermined accuracy (the accuracy is sufficient). It is determined whether there is. This determination method will be described later.

周波数差の推定が十分であれば(ステップS1108において、YES)、ステップS1110にて、周波数推定部45は、周波数差の計算を行ない、処理を終了する。なお、周波数差(A)は、式(10)に対応する計算を行なう。具体的には、次式(12)の計算を行なう。   If the estimation of the frequency difference is sufficient (YES in step S1108), in step S1110, frequency estimation unit 45 calculates the frequency difference and ends the process. The frequency difference (A) is calculated corresponding to the equation (10). Specifically, the following equation (12) is calculated.

周波数差(A)=(CNT×SXY−SY×SX)/(CNT×SXX−SX×SX)…式(12)
一方、周波数差の推定が十分でなければ(ステップS1108において、NO)、ステップS1112にて、周波数差推定部45は、ステップS1102で求めた時刻カウント差分(deliver_time)が有効なデータであるかどうか判定する。
Frequency difference (A) = (CNT × SXY−SY × SX) / (CNT × SXX−SX × SX) (12)
On the other hand, if the estimation of the frequency difference is not sufficient (NO in step S1108), in step S1112, the frequency difference estimation unit 45 determines whether the time count difference (deliver_time) obtained in step S1102 is valid data. judge.

有効なデータであるかどうかは、データフィルタ44が、図10で示したフローチャートもしくは前述した方法にしたがって判定した結果を用いる。   Whether or not the data is valid is determined by the data filter 44 according to the flowchart shown in FIG.

有効なデータであれば(ステップS1112において、NO)、ステップS1114にて、周波数差推定部45は、最小二乗法のための準備計算を行ない、処理を終了する。なお、準備計算とは式(9)に対応する計算のことである。具体的には、「(transmit_time)−(first_transmit_time)」をXとし、「(deliver_time)−(first_deliver_time)」をYとする。また、SXにSX+Xを、SYにSY+Yを、SXXにSXX+X×Xを、SYYにSYY+Y×Yを、CNTにCNT+1を代入する。   If the data is valid (NO in step S1112), in step S1114, the frequency difference estimation unit 45 performs a preparatory calculation for the least squares method and ends the process. Note that the preparation calculation is a calculation corresponding to the equation (9). Specifically, “(transmit_time) − (first_transmit_time)” is X, and “(deliver_time) − (first_deliver_time)” is Y. Also, SX + X is assigned to SX, SY + Y is assigned to SY, SXX + X × X is assigned to SXX, SYY + Y × Y is assigned to SYY, and CNT + 1 is assigned to CNT.

一方、有効なデータでなければ(ステップS1112において、NO)、処理を終了する。   On the other hand, if the data is not valid (NO in step S1112), the process ends.

以上のようにして、周波数差を算出する処理が行なわれる。さらに、周波数差推定部45は、ステップS1110で算出した周波数差をもとに、クロック制御量を決定する。   As described above, the processing for calculating the frequency difference is performed. Further, the frequency difference estimation unit 45 determines the clock control amount based on the frequency difference calculated in step S1110.

時刻カウント生成部46は、クロック制御量を引数に時刻カウント情報の進み具合を調整する。いったんステップS1110で周波数差の計算が行なわれた後は、周波数差を算出する処理はもはや行なわれない。過渡状態が終了し、定常状態に移行する。   The time count generation unit 46 adjusts the progress of the time count information using the clock control amount as an argument. Once the frequency difference is calculated in step S1110, the process for calculating the frequency difference is no longer performed. The transient state ends and transitions to a steady state.

次に、ステップS1108において、精度判定部49が、推定した周波数差の精度が所定の精度であるか(推定が十分であるか)どうかの判定する方法について説明する。   Next, a method will be described in which, in step S1108, the accuracy determination unit 49 determines whether the accuracy of the estimated frequency difference is a predetermined accuracy (the estimation is sufficient).

第1の方法は、先頭パケットを受信してから所定の時間(たとえば5秒)を経過すれば、周波数差の推定が十分になったと判定する。   The first method determines that the estimation of the frequency difference is sufficient when a predetermined time (for example, 5 seconds) elapses after the first packet is received.

第2の方法は、先頭パケットを受信してから所定のパケット数(たとえば1500パケット)を受信すれば、周波数差の推定が十分になったと判定する。   In the second method, if a predetermined number of packets (for example, 1500 packets) is received after receiving the head packet, it is determined that the estimation of the frequency difference is sufficient.

第3の方法は、有効なデータの差分の個数(ステップS1114におけるCNTに相当)が所定の個数(たとえば50個)集まれば、周波数差の推定が十分になったと判定する。   In the third method, if a predetermined number (for example, 50) of effective data differences (corresponding to CNT in step S1114) is collected, it is determined that the estimation of the frequency difference is sufficient.

第4の方法は、所定の時間を経過するごとに、もしくは所定のパケット数を受信するごとに、式(10)を用いて係数aを求めて、その計算結果の過去N回の最大と最小との差が所定の値(たとえば10[ppm])を下回っていると判断されれば、周波数差の推定が十分になったと判定する。   In the fourth method, every time a predetermined time elapses or every time a predetermined number of packets are received, the coefficient a is obtained using the equation (10), and the past N maximum and minimum of the calculation result are obtained. Is determined to be less than a predetermined value (for example, 10 [ppm]), it is determined that the estimation of the frequency difference is sufficient.

第5の方法は、パケットを受信して、有効なデータが得られるごとに、式(8)で示される残差二乗和Sを計算して、その計算結果が所定の値以下になっていると判断されれば、周波数差の推定が十分になったと判定する。これは、各データがより良く回帰直線にあてはまる場合は、残差二乗和Sの値が小さくなることに着目したものである。残差二乗和Sの値が小さければ、図13における各点(x,y)が回帰直線により近いところに位置するため、その傾きも正しく推定できていると考えられる。第5の方法では、データの個数を一定に保つことが必要なので、有効なデータを、受信したときの直前のN個だけ用意して計算するようにする。 In the fifth method, every time valid data is obtained by receiving a packet, the residual sum of squares S shown in Expression (8) is calculated, and the calculation result is equal to or less than a predetermined value. If it is determined, it is determined that the estimation of the frequency difference is sufficient. This is because the value of the residual sum of squares S becomes smaller when each data is better fitted to the regression line. If the value of the residual sum of squares S is small, each point (x i , y i ) in FIG. 13 is located closer to the regression line, so that the slope can be estimated correctly. In the fifth method, since it is necessary to keep the number of data constant, only N pieces of valid data immediately before reception are prepared and calculated.

あるいは、データの個数を一定に保つときに、最も古いデータを削除するのではなく、データがN個たまった時点での回帰直線を仮に求め、その回帰直線から最も離れた点となるデータを削除していき、N個だけのデータを残すようにしてもよい。   Alternatively, when the number of data is kept constant, the oldest data is not deleted, but a regression line at the time when N pieces of data are obtained is temporarily calculated, and the data that is the farthest point from the regression line is deleted. Then, only N pieces of data may be left.

その他、回帰直線のあてはまり具合を表す指標として、相関係数や決定係数(アール・スクエア)などを用いてもよい。   In addition, a correlation coefficient, a determination coefficient (R-square), or the like may be used as an index indicating the degree of fit of the regression line.

精度判定部49は、以上のようにして周波数差の精度が十分であると判定すれば、精度が十分である周波数差から決定されたクロック制御量を時刻カウント生成部46に与えた後に、時刻カウント遅速判定部48からのクロック制御量を与えるように、選択部50に対して制御信号を送る。   If it is determined that the accuracy of the frequency difference is sufficient as described above, the accuracy determination unit 49 gives the clock control amount determined from the frequency difference with sufficient accuracy to the time count generation unit 46, and then the time A control signal is sent to the selection unit 50 so as to give the clock control amount from the count slow speed determination unit 48.

なお、ステップS1110で処理を終了するときに、精度判定部49は通信I/F部41を介して、周波数差の推定が十分になったことを、送信機側に通知してもよい。これによって、送信機側は、受信機側が過渡状態にあるときはより伝送遅延時間のばらつきの少ない方法で伝送し、受信機側が定常状態にあるときは伝送効率の良い方法で伝送する、といった動作をすることが可能となる。   When the process is terminated in step S1110, the accuracy determination unit 49 may notify the transmitter side that the estimation of the frequency difference is sufficient via the communication I / F unit 41. As a result, the transmitter side performs transmission with a method with less variation in transmission delay time when the receiver side is in a transient state, and transmits with a method with good transmission efficiency when the receiver side is in a steady state. It becomes possible to do.

送信機側が、より伝送遅延時間のばらつきの少ない方法で伝送すると、受信機による周波数差の推定が正しく計算しやすくなるという利点がある。   If the transmitter side performs transmission by a method with less variation in transmission delay time, there is an advantage that it is easy to correctly calculate the estimation of the frequency difference by the receiver.

図14は、送信部12の詳細な構成の例を示した図である。
図14を参照して、上記のように受信機側の通知によって伝送方法を変えることができるような送信部12の構成について説明する。
FIG. 14 is a diagram illustrating an example of a detailed configuration of the transmission unit 12.
With reference to FIG. 14, the structure of the transmission part 12 which can change a transmission method by the notification by the side of a receiver as mentioned above is demonstrated.

送信部12は、パケット生成部51と、送信バッファ部52と、送信時刻付与部53と、通信I/F部54と、伝送方法選択部55と、時刻カウント生成部56とから構成される。   The transmission unit 12 includes a packet generation unit 51, a transmission buffer unit 52, a transmission time addition unit 53, a communication I / F unit 54, a transmission method selection unit 55, and a time count generation unit 56.

パケット生成部51は、MPEGエンコーダから入力されたMPEGパケットに、時刻カウント生成部56に基づく時刻カウント情報を付与して、パケットを生成する。   The packet generation unit 51 adds time count information based on the time count generation unit 56 to the MPEG packet input from the MPEG encoder, and generates a packet.

送信バッファ部52は、パケットを一時的に蓄える。
送信時刻付与部53は、送信バッファ部52からパケットを取り出し、通信I/F部54へパケットを送る。この際、パケットに送信時刻情報を付与する。
The transmission buffer unit 52 temporarily stores packets.
The transmission time giving unit 53 takes out the packet from the transmission buffer unit 52 and sends the packet to the communication I / F unit 54. At this time, transmission time information is added to the packet.

通信I/F部54は、パケットを受信機側に送信する。
伝送方法選択部55は、パケットをどのような方法で伝送するかを選択する。たとえば、伝送遅延時間のばらつきの少ない方法で伝送する、または、伝送効率の良い方法で伝送する、を選択する。伝送方法選択部55は、送信機10だけの判断で選択を決定してもよいし、受信機30からのパケットを受信することによって決定してもよい。
The communication I / F unit 54 transmits the packet to the receiver side.
The transmission method selection unit 55 selects a method for transmitting a packet. For example, it is selected to transmit by a method with little variation in transmission delay time or to transmit by a method with good transmission efficiency. The transmission method selection unit 55 may determine the selection based on the determination of only the transmitter 10 or may be determined by receiving a packet from the receiver 30.

時刻カウント生成部56は、発振器13に基づいて時刻カウント情報を生成する。
以上の手順で、送信機10と受信機30の発振器の周波数差が短時間で精度良く求められる。ここまでで、過渡状態の期間は終了する。
The time count generation unit 56 generates time count information based on the oscillator 13.
With the above procedure, the frequency difference between the oscillators of the transmitter 10 and the receiver 30 can be accurately obtained in a short time. At this point, the transient period ends.

過渡状態の期間が終了した後は、定常状態におけるデジッタリング制御を行なう。
定常状態でのデジッタリング制御は、クロック制御量の変化をなるべくゆるやかにすることを目標にする。望ましくは、非特許文献3に記載されているPCRドリフトレートを満足するまでゆるやかに制御させる。民生機器であれば、必ずしもPCRドリフトレートを満足することは必要ないが、目標とするドリフトレートをあらかじめ決定しておく。なお、必ずしもPCRドリフトレートを満足する必要がないというのは、民生機器で一般的に使用される水晶発振器部品の温度変化による発振周波数変化の方が、非特許文献3に記載されているPCRドリフトレートよりも大きいことが一つの理由である。
After the period of the transient state ends, dejittering control in the steady state is performed.
The de-jittering control in the steady state is aimed at making the change of the clock control amount as gentle as possible. Desirably, it is controlled gently until the PCR drift rate described in Non-Patent Document 3 is satisfied. If it is a consumer device, it is not always necessary to satisfy the PCR drift rate, but the target drift rate is determined in advance. Note that it is not always necessary to satisfy the PCR drift rate because the change in the oscillation frequency due to the temperature change of a crystal oscillator component generally used in consumer devices is the PCR drift described in Non-Patent Document 3. One reason is that it is greater than the rate.

定常状態でのデジッタリング制御は、「パケット相対伝送時間」が一定になるように制御する方法と、「送受信機のバッファ時間量の合計」が一定になるように制御する方法と、「受信機のバッファ時間量」が一定になるように制御する方法がある。以下、図5を参照して各方法について述べる。   The de-jittering control in the steady state includes a method of controlling the “packet relative transmission time” to be constant, a method of controlling the “total amount of buffer time of the transceiver” to be constant, There is a method of controlling so that the “buffer time amount” becomes constant. Hereinafter, each method will be described with reference to FIG.

[パケット相対伝送時間が一定になるように制御する方法]
ここでいう「パケット相対伝送時間」とは、前述した時刻カウント差分((deliver_time)=(received_time)−(transmit_time))と同値である。送信機の時刻カウント情報はパケットのペイロードに含まれているものとする。
[Method to control packet relative transmission time to be constant]
The “packet relative transmission time” here is the same value as the above-mentioned time count difference ((deliver_time) = (received_time) − (transmit_time)). It is assumed that the time count information of the transmitter is included in the packet payload.

まず、時刻カウント差分算出部43は、パケット相対伝送時間を求める。
そして、時刻カウント差分極小値検出部47は、所定の期間ごとに「パケット相対伝送時間」の極小値を求める。たとえば、6秒間ごとに極小値を求める。過渡状態において、データフィルタ44が、時刻カウント差分が所定の時間で極小となったものを有効とする判定方法について上述したが、定常状態において、時刻カウント差分極小値検出部47では、極小値を求める「所定の期間」の範囲が「所定の時間」よりも長い。これは、定常状態では、ゆるやかな同期制御を行なうためである。
First, the time count difference calculation unit 43 obtains a packet relative transmission time.
Then, the time count difference minimum value detection unit 47 obtains a minimum value of “packet relative transmission time” for each predetermined period. For example, the minimum value is obtained every 6 seconds. The determination method in which the data filter 44 is effective when the time count difference becomes minimum at a predetermined time in the transient state has been described above. However, in the steady state, the time count difference minimum value detection unit 47 determines the minimum value. The range of the “predetermined period” to be obtained is longer than the “predetermined time”. This is to perform a gentle synchronization control in a steady state.

「パケット相対伝送時間」の極小値は、受信機側のクロックの進み方が送信機側と比べて速ければ、増える方向に向かう。受信機側のクロックの進み方が送信機側と比べて遅ければ、減る方向に向かう。   The minimum value of the “packet relative transmission time” increases in the direction in which the clock on the receiver side advances faster than the transmitter side. If the way of the clock on the receiver side is slower than that on the transmitter side, it will go in a decreasing direction.

時刻カウント遅速判定部48は、「パケット相対伝送時間」の極小値の変化をみて、受信機側のクロックの進み方が遅いか速いかを判定する。「パケット相対伝送時間」の極小値の{増/減}に応じて、受信機側のクロックの進み方を所定のドリフトレートの範囲内で{遅くする/速くする}。どれだけクロック制御量を変化させるかはあらかじめ決めておく。たとえば、6秒間ごとに±1/9[ppm]ずつ変化させる。   The time count slow speed determination unit 48 determines whether the clock progress on the receiver side is slow or fast by looking at the change in the minimum value of the “packet relative transmission time”. In accordance with {increase / decrease} in the minimum value of the “packet relative transmission time”, the receiver advances the clock in the range of a predetermined drift rate. It is determined in advance how much the clock control amount is changed. For example, it is changed by ± 1/9 [ppm] every 6 seconds.

所定の時間ごとに、どれだけクロック制御量を変化させるかはパラメータで調整可能なように設計しておくのがよい。また、時刻カウント遅速判定部48は、「パケット相対伝送時間」の極小値の変化において、所定の値以下の差(たとえば10μ秒程度)は有意な差とはみなさず、受信機側のクロックの進み方をそのままに維持してもよい。   It is preferable that the amount of change in the clock control amount at a predetermined time is designed so that it can be adjusted by a parameter. In addition, the time count slow speed determination unit 48 does not regard a difference of a predetermined value or less (for example, about 10 μsec) as a significant difference in the change in the minimum value of the “packet relative transmission time”, and the clock of the receiver side You may keep the way you go.

[送受信機のバッファ時間量の合計が一定になるように制御する方法]
また、バッファ時間量を観察することでも、受信機側のクロックの進み方が遅いか速いかを判定できる。
[Method of controlling the total buffer time of the transceiver to be constant]
Also, by observing the amount of buffer time, it is possible to determine whether the clock on the receiver side is slow or fast.

受信機は、パケットを受信するごとに、送受信機のバッファ時間量の合計を求める。なお、これは時刻カウント差分算出部43に相当する部分において行なわれる。   Each time a receiver receives a packet, it calculates the total amount of buffer time of the transceiver. This is performed in a portion corresponding to the time count difference calculation unit 43.

送信機のバッファ時間量の情報は、パケットのペイロードに含まれているものとする。これは図13における送信時刻付与部53に相当する部分において行なわれる。   Information on the buffer time amount of the transmitter is assumed to be included in the payload of the packet. This is performed in a portion corresponding to the transmission time giving unit 53 in FIG.

図5に戻って、受信機のバッファ時間量は、パケットを受信したときにデジッタリングバッファ42に蓄えられているパケットの時間量を取得する。   Returning to FIG. 5, the buffer time amount of the receiver acquires the time amount of the packet stored in the de-jittering buffer 42 when the packet is received.

受信機のバッファ時間量は、パケット伝送時間が大きくなれば減ることになる。なぜなら、送信機側のバッファ時間量は、パケットに含まれている情報として変化しないが、パケット伝送時間が大きくなると、受信機側でパケットを遅れて受信することになる。その間に受信機側のデジッタリングバッファからパケットが出力され続けることになるので、バッファ時間量は減ることになる。よって、バッファ時間量については極大値を見ることが重要である。   The buffer time amount of the receiver decreases as the packet transmission time increases. This is because the amount of buffer time on the transmitter side does not change as information included in the packet, but when the packet transmission time increases, the receiver side receives the packet with a delay. During this time, packets continue to be output from the de-jittering buffer on the receiver side, so the amount of buffer time is reduced. Therefore, it is important to look at the maximum value for the buffer time amount.

受信機は、所定の時間ごとに「送受信機のバッファ時間量の合計」の極大値を求める。なお、これは時刻カウント差分極小値検出部47に相当する部分において行なわれる。   The receiver obtains the maximum value of “the total amount of buffer time of the transceiver” every predetermined time. This is performed in a portion corresponding to the time count difference minimum value detection unit 47.

「送受信機のバッファ時間量の合計」の極大値は、受信機側のクロックの進み方が送信機側と比べて速ければ、減る方向に向かう。受信機側のクロックの進み方が送信機側と比べて遅ければ、増える方向に向かう。「送受信機のバッファ時間量の合計」の極大値の変化をみて、受信機側のクロックの進み方が遅いか速いかを判定する。なお、これは時刻カウント遅速判定部48に相当する部分において行なわれる。   The maximum value of the “total amount of buffer time of the transmitter / receiver” tends to decrease if the clock progress on the receiver side is faster than that on the transmitter side. If the way of the clock on the receiver side is slower than that on the transmitter side, the direction is increased. The change in the maximum value of the “total amount of buffer time of the transceiver” is determined to determine whether the clock advance on the receiver side is slow or fast. This is performed in a portion corresponding to the time count delay determination unit 48.

極大値の{増/減}に応じて、受信機側のクロックの進み方を所定のドリフトレートの範囲内で{速くする/遅くする}。   In accordance with {increase / decrease} in the maximum value, the clock advance on the receiver side is {increased / decreased} within a predetermined drift rate range.

[受信機のバッファ時間量が一定になるように制御する方法]
また、送信機のバッファ時間量の情報が得られない場合、受信機のバッファ時間量だけで判断してもよい。
[Method to control the buffer time of the receiver to be constant]
Further, when information on the buffer time amount of the transmitter cannot be obtained, the determination may be made based only on the buffer time amount of the receiver.

ネットワーク20にバースト的な伝送障害が起こらない限り、送信機のバッファ時間量はゼロもしくはゼロに近い値となると考えられる。所定の時間の間に、1パケットでもこのような状態になれば、送信機のバッファ時間量の情報が得られない場合でも、受信機のバッファ時間量だけで判断することができる。   Unless there is a bursty transmission failure in the network 20, the buffer time amount of the transmitter is considered to be zero or close to zero. If even one packet is in such a state during a predetermined time, even if information on the buffer time amount of the transmitter cannot be obtained, it can be determined only by the buffer time amount of the receiver.

受信機は、所定の時間ごとに「受信機のバッファ時間量」の極大値を求める。「受信機のバッファ時間量」の極大値の変化をみて、受信機側のクロックの進み方が遅いか速いかを判定する。極大値の{増/減}に応じて、受信機側のクロックの進み方を所定のドリフトレートの範囲内で{速くする/遅くする}。   The receiver obtains a maximum value of “the amount of buffer time of the receiver” every predetermined time. The change in the maximum value of the “receiver buffer time amount” is observed to determine whether the clock on the receiver side is slow or fast. In accordance with {increase / decrease} in the maximum value, the clock advance on the receiver side is {increased / decreased} within a predetermined drift rate range.

これらのいずれかの方法を用いることで、目標とするドリフトレートを守って、デジッタリング制御を継続することができる。   By using any of these methods, the de-jittering control can be continued while keeping the target drift rate.

以上で、定常状態でのデジッタリング制御の方法について述べた。
また、定常状態時から過渡状態に移行することもありえる。パケットの受信が途絶えて、デジッタリングバッファ42が空になり、一定時間経過すれば、ストリーム伝送が終了したとみなして、過渡状態に移行する。
The method of de-jittering control in the steady state has been described above.
In addition, a transition from a steady state to a transient state may occur. When the reception of the packet is interrupted and the de-jittering buffer 42 is emptied and a predetermined time elapses, it is considered that the stream transmission has been completed, and a transition is made.

また、電源オンもしくはリセットされても、定常状態から過渡状態に移行する。
定常状態から過渡状態に移行した際、選択部50は、周波数差推定部45からのクロック制御量を時刻カウント生成部46に与えるようにする。
Even if the power is turned on or reset, the steady state transitions to the transient state.
When shifting from the steady state to the transient state, the selection unit 50 gives the clock count from the frequency difference estimation unit 45 to the time count generation unit 46.

なお、過渡状態に移行したときに、受信機から送信機にパケットを送信するような送信手段を備えてもよい。これによって、送信機側は伝送遅延時間のばらつきの少ない方法で伝送することができる。パケットを送信することで、受信機側から送信機の伝送方法を明示的に指示することができる。   In addition, you may provide the transmission means which transmits a packet from a receiver to a transmitter when it transfers to a transient state. As a result, the transmitter side can perform transmission using a method with little variation in transmission delay time. By transmitting the packet, the transmission method of the transmitter can be explicitly instructed from the receiver side.

また、本発明における映像伝送システムでは、部品のクロック精度によっては、過渡状態時に正常に映像が表示されるかどうかは保障されない。上述したMPEGデコーダのVCXO問題があるため、セットによって正常に映像が表示される場合とされない場合がある。よって、過渡状態時に、送信機ではダミーパケットを送信し、受信機では受信したダミーパケットを破棄するようにしてもよい。このように制御することで、セットの個体差による動作の違いをなくすことができる。   In the video transmission system according to the present invention, whether or not video is normally displayed in a transient state is not guaranteed depending on the clock accuracy of the parts. Due to the above-described MPEGX VCXO problem, video may or may not be displayed normally depending on the set. Therefore, in a transient state, the transmitter may transmit a dummy packet, and the receiver may discard the received dummy packet. By controlling in this way, it is possible to eliminate differences in operation due to individual differences in the set.

また、ダミーパケットの構成は、図3で示したパケットフォーマットにとらわれず、送信時刻情報のみのパケットとしてもよい。パケットの長さを短く設定できるため、パケット伝送時間のばらつきが少なくなることも期待できる。   Further, the configuration of the dummy packet is not limited to the packet format shown in FIG. 3 and may be a packet of only transmission time information. Since the packet length can be set short, it can be expected that variations in packet transmission time will be reduced.

図15は、データフィルタ44がある場合とない場合のシミュレーション結果を示す図である。   FIG. 15 is a diagram illustrating simulation results with and without the data filter 44.

図15を参照して、データフィルタがある場合とない場合との収束結果の違いについて説明する。図15において、横軸は、シミュレーションの経過時間[秒]である。縦軸は、最小二乗法を用いて推測した周波数差と、真値との誤差の絶対値[ppm]である。0ppmに近いほど正しく推定できていることを示す。   With reference to FIG. 15, the difference of the convergence result with and without the data filter will be described. In FIG. 15, the horizontal axis represents the simulation elapsed time [seconds]. The vertical axis represents the absolute value [ppm] of the error between the frequency difference estimated using the least square method and the true value. The closer to 0 ppm, the better the estimation.

また、図15では、シミュレーションを2000回行なって、収束の精度の悪い10回を除いて、その次に悪い回の値を示している。したがって、図15の結果は99.5%の確率で期待できる。なお、グラフ140は、データフィルタ44がない場合を示し、グラフ142は、データフィルタ44がある場合を示している。   Further, in FIG. 15, the simulation is performed 2000 times, and the next worst value is shown except for 10 times with poor convergence accuracy. Therefore, the result of FIG. 15 can be expected with a probability of 99.5%. The graph 140 shows the case where the data filter 44 is not provided, and the graph 142 shows the case where the data filter 44 is provided.

ここで、シミュレーションの条件を詳しく説明すると、パケット伝送遅延時間のばらつきとして、パレート分布を用いた。最短のパケット伝送遅延時間は50μ秒で、99.7%が10ms以内に収まるようにパラメータを設定している。   Here, the simulation conditions will be described in detail. A Pareto distribution is used as a variation in the packet transmission delay time. The shortest packet transmission delay time is 50 μsec, and the parameters are set so that 99.7% is within 10 ms.

図15に示すように、データフィルタ44がない場合は、10秒以上経過しても数ppmまでしか収束していない。一方、データフィルタ44がある場合は、5秒間で約±1ppmまで収束していることがわかる。   As shown in FIG. 15, when there is no data filter 44, it converges only to several ppm even after 10 seconds or more. On the other hand, it can be seen that when the data filter 44 is present, it converges to about ± 1 ppm in 5 seconds.

図15のシミュレーション結果は、データフィルタ44があることによって、デジッタリングにおけるクロック制御量がほぼ収束する(所定のドリフトレートを満足しながら制御できる)までの時間を短く設定できることを示している。   The simulation result of FIG. 15 shows that the time until the amount of clock control in dejittering almost converges (can be controlled while satisfying a predetermined drift rate) can be set short by the presence of the data filter 44.

以上で説明したように、本実施の形態に係る映像伝送システムによれば、デジッタリングにおけるクロック制御において、所定のドリフトレートを満足しながら制御し、かつ、デジッタリングのクロック制御量がほぼ収束して所定のドリフトレートを満足しながら制御できるまでの時間を短くすることができる。   As described above, according to the video transmission system according to the present embodiment, in clock control in dejittering, control is performed while satisfying a predetermined drift rate, and the clock control amount for dejittering is almost converged and predetermined. It is possible to shorten the time until control can be performed while satisfying the drift rate.

[実施の形態2]
実施の形態1における過渡状態時の高速デジッタリング制御では、送信機と受信機との間で生じる発振周波数の差を求めるために、送信機側と受信機側の時刻カウント差分を求めていた。本実施の形態では、実施の形態1での方法とは異なる、送信機と受信機に蓄えられているパケットのバッファ時間量の合計を見るという方法について示す。
[Embodiment 2]
In the high-speed de-jittering control in the transient state in the first embodiment, the time count difference between the transmitter side and the receiver side is obtained in order to obtain the difference in oscillation frequency generated between the transmitter and the receiver. In the present embodiment, a method of looking at the total buffer time amount of packets stored in the transmitter and the receiver, which is different from the method in the first embodiment, will be described.

バッファ時間量の合計の時間経過は、ちょうど図8で示したグラフを上下反転したような形となる。時刻カウント差分の時間経過と同様の(上下反転した)傾きが得られるので、送信機と受信機との間で生じる発振周波数の差を求めることができる。   The total elapsed time of the buffer time amount has a form as if the graph shown in FIG. Since the same (upside down) inclination as the time lapse of the time count difference is obtained, the difference in oscillation frequency generated between the transmitter and the receiver can be obtained.

実施の形態2は、実施の形態1における「時刻カウント差分」ではなく「送受信機のバッファ時間量の合計」で発振周波数差を求めるように変更したものである。   The second embodiment is a modification in which the oscillation frequency difference is obtained not by the “time count difference” in the first embodiment but by the “total amount of buffer time of the transceiver”.

本実施の形態では、図5に示す時刻カウント差分算出部43において、送信機と受信機に蓄えられているパケットのバッファ時間量の合計を計算するように変更する。バッファ時間量の合計は次式(13)で求められる。   In the present embodiment, the time count difference calculation unit 43 shown in FIG. 5 is changed so as to calculate the total buffer time amount of packets stored in the transmitter and the receiver. The total buffer time amount is obtained by the following equation (13).

「バッファ時間量の合計(buf_amount)」=「送信機に蓄えられるバッファ時間量(tx_queue)」+「受信機に蓄えられるバッファ時間量(rx_queue)」…式(13)
なお、送信機に蓄えられるバッファ時間量(tx_queue)はパケットから得られる。図3で示したTXQフィールド230を、パケットを送信しようとする時点の送信機に蓄えられているバッファ時間量に変更する。
“Total buffer time amount (buf_amount)” = “Buffer time amount stored in transmitter (tx_queue)” + “Buffer time amount stored in receiver (rx_queue)” (13)
Note that the buffer time amount (tx_queue) stored in the transmitter is obtained from the packet. The TXQ field 230 shown in FIG. 3 is changed to the buffer time amount stored in the transmitter at the time of attempting to transmit the packet.

送信機に蓄えられるバッファ時間量は、送信用バッファに蓄えられているパケットのうち、最新パケットの時刻カウント情報と最古パケットの時刻カウント情報との差を、次式(14)に従って求めることで得られる。   The amount of buffer time stored in the transmitter is obtained by calculating the difference between the time count information of the latest packet and the time count information of the oldest packet among the packets stored in the transmission buffer according to the following equation (14). can get.

「送信機に蓄えられるバッファ時間量(tx_queue)」=「最新パケットの時刻カウント情報(tx_newest_tts)」−「最古パケットの時刻カウント情報(tx_oldest_tts)」…式(14)
受信機に蓄えられているバッファ時間量は、デジッタリングバッファ42に蓄えられているパケットのうち、最新パケットの時刻カウント情報と最古パケットの時刻カウント情報との差を、次式(15)に従って求めることで得られる。
“Amount of buffer time stored in transmitter (tx_queue)” = “time count information of latest packet (tx_newest_tts)” − “time count information of oldest packet (tx_oldest_tts)” (14)
The amount of buffer time stored in the receiver is the difference between the time count information of the latest packet and the time count information of the oldest packet among the packets stored in the de-jittering buffer 42. It is obtained by asking according to.

「受信機に蓄えられるバッファ時間量(rx_queue)」=「最新パケットの時刻カウント情報(rx_newest_tts)」−「最古パケットの時刻カウント情報(rx_oldest_tts)」…式(15)
データフィルタ44において、「バッファ時間量の合計(buf_amount)」の異常値を除去するように変更する。データフィルタ44のアルゴリズムは、符号の反転を考慮する(例:最小値を更新→最大値を更新と変更する)だけで、実施の形態1で提示した方法がそのまま使える。周波数差推定部45も符号の反転を考慮するだけで、実施の形態1で提示した方法がそのまま使える。以後の処理は、実施の形態1と同様である。
“Amount of buffer time stored in receiver (rx_queue)” = “time count information of latest packet (rx_newest_tts)” − “time count information of oldest packet (rx_oldest_tts)” (15)
The data filter 44 is changed so as to remove the abnormal value of “total amount of buffer time (buf_amount)”. The algorithm of the data filter 44 can use the method presented in the first embodiment as it is only by considering the inversion of the sign (eg, updating the minimum value → changing the maximum value to update). The frequency difference estimator 45 can also use the method presented in the first embodiment as it is only by considering the inversion of the sign. The subsequent processing is the same as in the first embodiment.

以下に、バッファ時間量の合計の時間経過グラフは、時刻カウント差分の時間経過グラフをちょうど上下反転したものである理由を示す。   In the following, the total time lapse graph of the buffer time amount shows the reason why the time lapse graph of the time count difference is just upside down.

「送信機に蓄えられるバッファ時間量(tx_queue)」を求める式(15)に対し、次式(16)のようにして求められる「エンコーダから入力されて送信するまでのタイムラグ(time_to_send)」を加えてもよい。   “Time lag from input to encoder (time_to_send)” obtained from the following equation (16) is added to equation (15) to obtain “buffer time amount (tx_queue) stored in transmitter” May be.

「エンコーダから入力されて送信するまでのタイムラグ(time_to_send)」=「送信機が送信しようとする時点の時刻カウント情報(transmit_time)」−「最新パケットの時刻カウント情報(tx_newest_tts)」…式(16)
なお、送信機に蓄えられるバッファ時間量(tx_queue)に対して式(16)を加えるというのは、以下の考え方に基づいている。
“Time lag from input from encoder to transmission (time_to_send)” = “time count information at time when transmitter tries to transmit (transmit_time)” − “time count information of latest packet (tx_newest_tts)” (16)
Note that adding equation (16) to the buffer time amount (tx_queue) stored in the transmitter is based on the following concept.

送信機がパケットを、エンコーダからパケットが入力された直後に送信する場合と、しばらく経過してから送信する場合では、バッファ時間量の意味合いが実質的に異なるという考え方がある。   There is an idea that the meaning of the amount of buffer time is substantially different between a case where the transmitter transmits a packet immediately after the packet is input from the encoder and a case where the packet is transmitted after a while.

たとえば、エンコーダから150μ秒間隔でパケットが入力されているとして、直前のパケットが50μ秒前に入力されていたとする。すると、100μ秒後には次のパケットが入力されるはずなので、その時点で送信機に蓄えられるバッファ時間量は150μ秒増えることになる。100μ秒後にバッファ時間量を150μ秒増やすのではなく、現時点でバッファ時間量を50μ秒分増やしておく、という考え方である。   For example, assuming that packets are input from the encoder at intervals of 150 μs, the previous packet is input 50 μs ago. Then, since the next packet should be input after 100 μs, the amount of buffer time stored in the transmitter at that time increases by 150 μs. The idea is that instead of increasing the buffer time amount by 150 μs after 100 μs, the buffer time amount is increased by 50 μs at the present time.

エンコーダから一定間隔(例:150μ秒)でパケットが入力されているとき、式(18)の値はわずか(例:0μ秒〜150μ秒)である。   When packets are input from the encoder at a constant interval (for example, 150 μsec), the value of Expression (18) is very small (for example, 0 μsec to 150 μsec).

また、受信機に蓄えられるバッファ時間量(rx_queue)を求める式(15)に、次式(17)のようにして求められる「最古パケットが出力されるまでの時間(time_to_output)」を加えてもよい。   Further, by adding the “time until the oldest packet is output (time_to_output)” obtained by the following equation (17) to the equation (15) for obtaining the buffer time amount (rx_queue) stored in the receiver Also good.

「最古パケットが出力されるまでの時間(time_to_output)」=「最古パケットが出力される予定の時刻(expected_sph)」−「受信機がパケットを受信した時点の時刻カウント情報(received_time)」…式(17)
最古パケットが出力される予定の時刻は次式(18)で計算できる。
“Time until the oldest packet is output (time_to_output)” = “Time when the oldest packet is scheduled to be output (expected_sph)” − “Time count information when the receiver receives the packet (received_time)” Formula (17)
The time when the oldest packet is scheduled to be output can be calculated by the following equation (18).

最古パケットが出力される予定の時刻(expected_sph)=「最古パケットの時刻カウント情報(rx_oldest_tts)」+「遅延時間(delayed_time)」…式(18)
受信機に蓄えられるバッファ時間量(rx_queue)に、式(17)を加えるというのは、以下の考え方に基づいている。
Time when the earliest packet is scheduled to be output (expected_sph) = “time count information of the oldest packet (rx_oldest_tts)” + “delay time (delayed_time)” (18)
Adding equation (17) to the amount of buffer time (rx_queue) stored in the receiver is based on the following concept.

受信機がパケットを、最古パケットを出力した直後に受信した場合と、しばらく経過してから受信した場合とでは、バッファ時間量の意味合いが実質的に異なるという考え方がある。   There is an idea that the meaning of the amount of buffer time is substantially different between when the receiver receives a packet immediately after outputting the oldest packet and when the receiver receives the packet after a while.

たとえば、エンコーダから150μ秒間隔でパケットが入力されているとして、受信機がパケットを受信した時点で、最古パケットを50μ秒に出力する予定になっていたとする。すると、50μ秒を経過しても、受信機に蓄えられるバッファ量に何ら変わりはないので、その分の50μ秒分を受信機に蓄えられるバッファ時間量(rx_queue)に加える、という考え方である。   For example, assuming that packets are input from the encoder at intervals of 150 μs, the oldest packet is scheduled to be output in 50 μs when the receiver receives the packets. Then, even if 50 μs elapses, the buffer amount stored in the receiver does not change at all, so the idea is to add 50 μs of that amount to the buffer time amount (rx_queue) stored in the receiver.

エンコーダから一定間隔(例:150μ秒)でパケットが入力されているとき、式(8)の値はわずか(例:0μ秒〜150μ秒)である。   When packets are input from the encoder at regular intervals (eg, 150 μsec), the value of Equation (8) is very small (eg, 0 μsec to 150 μsec).

また、送信機における最古パケットとは、いままさに送信しようとしているパケットのことである。また、受信機における最新パケットとは、いま受信したばかりのパケットのことである。よって、送信機における「最古パケットの時刻カウント情報(tx_oldest_tts)」と受信機における「最新パケットの時刻カウント情報(rx_newest_tts)」は等しい。   The oldest packet in the transmitter is a packet that is about to be transmitted. The latest packet in the receiver is a packet just received. Therefore, “the oldest packet time count information (tx_oldest_tts)” at the transmitter is equal to “the latest packet time count information (rx_newest_tts)” at the receiver.

以上をまとめると、バッファ時間量の合計は次式(19)によっても求めることができる。   In summary, the total buffer time amount can also be obtained by the following equation (19).

「バッファ時間量の合計(buf_amount)」=「送信機が送信しようとする時点の時刻カウント情報(transmit_time)」−「受信機がパケットを受信した時点の時刻カウント情報(received_time)」+「遅延時間(delayed_time)」…式(19)
遅延時間(delayed_time)は固定の時間であるので、これを除くと、バッファ時間量の合計は、結局のところ時刻カウント差分(deliver_time)を符号反転したものに過ぎない。以上より、バッファ時間量の合計の時間経過グラフは、時刻カウント差分の時間経過グラフをちょうど上下反転したものであることがわかる。実施の形態2は、実施の形態1を「時刻カウント差分」から「送受信機のバッファ時間量の合計」に変更したものであり、時刻カウント差分算出部43、データフィルタ44、周波数差推定部45を変更したものである。
“Total amount of buffer time (buf_amount)” = “Time count information when the transmitter tries to transmit (transmit_time)” − “Time count information when the receiver receives the packet (received_time)” + “Delay time (Delayed_time) "... Formula (19)
Since the delay time (delayed_time) is a fixed time, except for this, the total buffer time amount is merely a sign-inverted time count difference (deliver_time). From the above, it can be seen that the total time lapse graph of the buffer time amount is obtained by vertically inverting the time lapse graph of the time count difference. In the second embodiment, the first embodiment is changed from “time count difference” to “total amount of buffer time of transceiver”, and a time count difference calculation unit 43, a data filter 44, and a frequency difference estimation unit 45 are used. Is a change.

[実施の形態3]
また、実施の形態2の過渡状態時の高速デジッタリング制御を「受信機のバッファ時間量」だけで制御することもできる。
[Embodiment 3]
Further, the high-speed de-jittering control in the transient state of the second embodiment can be controlled only by “the buffer time amount of the receiver”.

本実施の形態に係る伝送装置では、パケットに送信機のバッファ時間量の情報が含まれない場合でも、実施可能である。送信機のバッファ時間量をゼロとみなし、それ以外は実施の形態2と同様である。   The transmission apparatus according to the present embodiment can be implemented even when the packet does not include information on the buffer time amount of the transmitter. The buffer time amount of the transmitter is regarded as zero, and the rest is the same as in the second embodiment.

本発明は、MPEG2−TSの映像伝送システムに限らず、ストリーミングメディア(ビデオ、オーディオ、音声など)のネットワーク伝送全般において適用できる。具体的なサービスとしては、VoIP、テレフォニー、遠隔会議、ストリーミングビデオ、Webキャスト、VoD(ビデオオンデマンド)、IP放送などが挙げられる。   The present invention is not limited to the MPEG2-TS video transmission system, and can be applied to all network transmissions of streaming media (video, audio, audio, etc.). Specific services include VoIP, telephony, remote conference, streaming video, Webcast, VoD (video on demand), IP broadcasting, and the like.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

デジッタリングのクロック制御量の時間経過を示した図である。It is the figure which showed the time passage of the clock control amount of dejittering. 本実施の形態に係るネットワーク映像伝送システムを示す図である。It is a figure which shows the network video transmission system which concerns on this Embodiment. パケットのフォーマットの一例を示す図である。It is a figure which shows an example of the format of a packet. 本実施の形態に係る受信機30の状態遷移を示す図である。It is a figure which shows the state transition of the receiver 30 which concerns on this Embodiment. 受信部31の詳細な構成を示した図である。3 is a diagram illustrating a detailed configuration of a reception unit 31. FIG. 時刻カウント情報などの巡回する数値の大小比較を説明するための図である。It is a figure for demonstrating magnitude comparison of the numerical value to circulate, such as time count information. 無線伝送におけるパケット伝送時間のヒストグラムの一例を示す図である。It is a figure which shows an example of the histogram of the packet transmission time in radio | wireless transmission. 時刻カウント差分算出部43によって得られた時刻カウント差分のプロット図である。FIG. 7 is a plot diagram of time count differences obtained by a time count difference calculation unit 43. データフィルタによって無効なデータが除去された後の時刻カウント差分のプロット図である。It is a plot figure of the time count difference after invalid data are removed by the data filter. 無効なデータを検出する処理についてのフローチャートである。It is a flowchart about the process which detects invalid data. 図8で示したデータに対し、修正された時刻カウント差分(deliver_time2)をプロットした図である。It is the figure which plotted the time count difference (deliver_time2) corrected with respect to the data shown in FIG. 周波数差を算出する処理についてのフローチャートである。It is a flowchart about the process which calculates a frequency difference. 最小二乗法を説明するための図である。It is a figure for demonstrating the least squares method. 送信部12の詳細な構成の例を示した図である。4 is a diagram illustrating an example of a detailed configuration of a transmission unit 12. FIG. データフィルタ44がある場合とない場合のシミュレーション結果を示す図である。It is a figure which shows the simulation result with and without the data filter 44. MPEG2−TSによる映像伝送システムの典型例を示したブロック図である。It is the block diagram which showed the typical example of the video transmission system by MPEG2-TS. 一般的なPLLの構成を示したブロック図である。It is the block diagram which showed the structure of the general PLL. 非特許文献2に記載されている映像伝送システムの概略を示す図である。It is a figure which shows the outline of the video transmission system described in the nonpatent literature 2. FIG. 特許文献3や特許文献4における、データ蓄積量(バッファ時間量)とクロック制御量との関係を示した図である。It is the figure which showed the relationship between the data storage amount (buffer time amount) and the clock control amount in patent document 3 or patent document 4. 映像が表示されるための条件を説明するための図である。It is a figure for demonstrating the conditions for an image | video to be displayed. クロック制御量の時間変化を示す図である。It is a figure which shows the time change of a clock control amount.

符号の説明Explanation of symbols

10 送信機、11 MPEGエンコーダ、12 送信部、13 発振器、14 発振器、20 ネットワーク、30 受信機、31 受信部、32 MPEGデコーダ、33 発振器、34 可変周波数発振器、41 通信I/F部、42 デジッタリングバッファ、43 時刻カウント差分算出部、44 データフィルタ、45 周波数差推定部、46 時刻カウント生成部、47 時刻カウント差分極小値検出部、48 時刻カウント遅速判定部、49 精度判定部、50 選択部、51 パケット生成部、52 送信バッファ部、53 送信時刻付与部、54 通信I/F部、55 伝送方法選択部、56 時刻カウント生成部、100 ネットワーク映像伝送システム、1200 送信機、1202 MPEG2エンコーダ、1204 発振器、1206 送信バッファ、1210 受信機、1212 受信バッファ、1214 PLL、1216 MPEG2デコーダ、1302 内部カウンタ、1304 減算器、1306 ローパスフィルタ、1308 電圧制御発振器、1400 送信機、1402 クロック、1404 エンコーダ、1410 受信機、1412 デコーダ、1414 PLL、1416 デジッタリングバッファ、1418 制御部、1600 MPEG2エンコーダ、1601 発振器、1602 送信機、1603 発振器、1604 ネットワーク、1606 受信機、1607 発振器、1608 MPEG2デコーダ、1609 VCXO。   10 transmitter, 11 MPEG encoder, 12 transmitter, 13 oscillator, 14 oscillator, 20 network, 30 receiver, 31 receiver, 32 MPEG decoder, 33 oscillator, 34 variable frequency oscillator, 41 communication I / F unit, 42 Jittering buffer, 43 Time count difference calculation unit, 44 Data filter, 45 Frequency difference estimation unit, 46 Time count generation unit, 47 Time count difference minimum value detection unit, 48 Time count slow speed determination unit, 49 Accuracy determination unit, 50 selection Section, 51 packet generation section, 52 transmission buffer section, 53 transmission time assignment section, 54 communication I / F section, 55 transmission method selection section, 56 time count generation section, 100 network video transmission system, 1200 transmitter, 1202 MPEG2 encoder 1204 oscillator, 120 Transmit buffer, 1210 receiver, 1212 receive buffer, 1214 PLL, 1216 MPEG2 decoder, 1302 internal counter, 1304 subtractor, 1306 low pass filter, 1308 voltage controlled oscillator, 1400 transmitter, 1402 clock, 1404 encoder, 1410 receiver, 1412 Decoder, 1414 PLL, 1416 de-jittering buffer, 1418 controller, 1600 MPEG2 encoder, 1601 oscillator, 1602 transmitter, 1603 oscillator, 1604 network, 1606 receiver, 1607 oscillator, 1608 MPEG2 decoder, 1609 VCXO.

Claims (26)

ネットワークに接続された送信装置とデータ通信するための受信装置であって、
前記受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、
前記送信装置からのパケットを受信するための受信手段と、
前記送信装置からの前記パケットに含まれる第2の時刻カウント情報と、前記受信手段が前記パケットを受信した時点で前記時刻カウント生成手段によって生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するための時刻カウント差分算出手段と、
前記時刻カウント差分の異常値を取り除くためのデータフィルタと、
前記データフィルタを通過した前記時刻カウント差分の情報から、前記送信装置側の基準クロックとの周波数差を算出するための周波数差推定手段とを備える、受信装置。
A receiving device for data communication with a transmitting device connected to a network,
A time count generation means for generating first time count information as a reference clock on the receiving device side;
Receiving means for receiving a packet from the transmitting device;
Based on the second time count information included in the packet from the transmission device and the first time count information generated by the time count generation means when the reception means receives the packet, the time A time count difference calculating means for calculating the count difference;
A data filter for removing an abnormal value of the time count difference;
A receiving apparatus comprising: frequency difference estimating means for calculating a frequency difference from a reference clock on the transmitting apparatus side from information on the time count difference that has passed through the data filter.
前記周波数差推定手段は、前記算出した周波数差に基づいてクロック制御量を決定し、
前記周波数差推定手段からのクロック制御量にしたがって、前記時刻カウント生成部が生成する前記第1の時刻カウント情報の進み方を制御するための時刻カウント制御手段をさらに備える、請求項1記載の受信装置。
The frequency difference estimation means determines a clock control amount based on the calculated frequency difference,
2. The reception according to claim 1, further comprising time count control means for controlling how the first time count information generated by the time count generation unit proceeds according to a clock control amount from the frequency difference estimation means. apparatus.
前記データフィルタは、前記第1の時刻カウント情報と、前記第2の時刻カウント情報を擬似的に早くした第3の時刻カウント情報とに基づいて修正時刻カウント差分を算出し、前記算出時までの最小の前記修正時刻カウント差分より大きくなるような前記修正時刻カウント差分に対応する前記時刻カウント差分を異常値として取り除く、請求項1または2に記載の受信装置。   The data filter calculates a corrected time count difference based on the first time count information and the third time count information obtained by simulatingly speeding up the second time count information. The receiving apparatus according to claim 1, wherein the time count difference corresponding to the correction time count difference that is larger than the minimum correction time count difference is removed as an abnormal value. 前記データフィルタは、前記第2の時刻カウント情報と、前記第1の時刻カウント情報を擬似的に遅くした第4の時刻カウント情報とに基づいて修正時刻カウント差分を算出し、前記算出時までの最小の前記修正時刻カウント差分より大きくなるような前記修正時刻カウント差分に対応する前記時刻カウント差分を異常値として取り除く、請求項1または2に記載の受信装置。   The data filter calculates a corrected time count difference based on the second time count information and fourth time count information obtained by artificially delaying the first time count information. The receiving apparatus according to claim 1, wherein the time count difference corresponding to the correction time count difference that is larger than the minimum correction time count difference is removed as an abnormal value. 前記データフィルタは、所定の時間間隔ごとの極小値を求め、前記極小値以外の前記時刻カウント差分を異常値として取り除く、請求項1または2に記載の受信装置。   The receiving apparatus according to claim 1, wherein the data filter obtains a minimum value for each predetermined time interval and removes the time count difference other than the minimum value as an abnormal value. 前記周波数差推定手段は、前記受信手段が前記パケットの受信を開始した時点からの時間と前記時刻カウント差分との関係を回帰分析によって直線で近似し、前記周波数差を算出する、請求項1から5のいずれか1項に記載の受信装置。   The frequency difference estimation means calculates the frequency difference by approximating the relationship between the time from the time when the reception means starts receiving the packet and the time count difference by a regression analysis by a straight line, and calculating the frequency difference. The receiving device according to claim 1. 前記周波数差推定手段が算出した周波数差の精度を判定するための精度判定手段をさらに備える、請求項1または2に記載の受信装置。   The receiving apparatus according to claim 1, further comprising an accuracy determination unit for determining the accuracy of the frequency difference calculated by the frequency difference estimation unit. 前記精度判定手段は、前記受信手段が前記パケットの受信を開始した時点から所定時間経過したことに応じて、前記周波数差の精度が前記所定の精度であると判断する、請求項7記載の受信装置。   The reception according to claim 7, wherein the accuracy determination unit determines that the accuracy of the frequency difference is the predetermined accuracy in response to elapse of a predetermined time from the time when the reception unit starts receiving the packet. apparatus. 前記精度判定手段は、前記受信手段が前記パケットの受信を開始した時点から所定数の前記パケットを受信したことに応じて、前記周波数差の精度が前記所定の精度であると判断する、請求項7記載の受信装置。   The accuracy determining unit determines that the accuracy of the frequency difference is the predetermined accuracy in response to receiving a predetermined number of the packets from the time when the receiving unit starts receiving the packets. 7. The receiving device according to 7. 前記精度判定手段は、前記データフィルタを通過した時刻カウント差分の数が所定数に達したことに応じて、前記周波数差の精度が前記所定の精度であると判断する、請求項7記載の受信装置。   The reception according to claim 7, wherein the accuracy determination unit determines that the accuracy of the frequency difference is the predetermined accuracy in response to a predetermined number of time count differences having passed through the data filter. apparatus. 前記精度判定手段は、所定のタイミング以前に算出された前記周波数差の最大値と最小値の差が所定範囲内にあることに応じて、前記周波数差の精度が前記所定の精度であると判断する、請求項7記載の受信装置。   The accuracy determining means determines that the accuracy of the frequency difference is the predetermined accuracy when the difference between the maximum value and the minimum value of the frequency difference calculated before a predetermined timing is within a predetermined range. The receiving device according to claim 7. 前記精度判定手段は、前記時刻カウント差分の情報と近似された前記直線とから計算される残差二乗和が所定範囲内にあることに応じて、前記周波数差の精度が前記所定の精度であると判断する、請求項7記載の受信装置。   The accuracy determination means is configured such that the accuracy of the frequency difference is the predetermined accuracy when a residual sum of squares calculated from the information of the time count difference and the approximated straight line is within a predetermined range. The receiving device according to claim 7, wherein the receiving device is determined. 所定のドリフトレートの条件を満たすようにクロック制御量を決定するための定常状態クロック制御量決定手段と、
前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量または前記定常状態クロック制御量決定手段からのクロック制御量のいずれか一方を選択的に与えるための選択手段とをさらに備え、
前記選択手段は、前記精度判定手段が前記周波数差の精度が所定の精度であると判断したことに応じて、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量に代わって、前記定常状態クロック制御量決定手段からのクロック制御量を与える、請求項7記載の受信装置。
A steady state clock control amount determining means for determining a clock control amount so as to satisfy a predetermined drift rate condition;
A selection means for selectively giving either the clock control amount from the frequency difference estimation means or the clock control amount from the steady state clock control amount determination means to the time count control means;
In response to the determination by the accuracy determining unit that the accuracy of the frequency difference is a predetermined accuracy, the selecting unit is configured to replace the clock control amount from the frequency difference estimating unit with respect to the time count control unit. The receiving apparatus according to claim 7, wherein a clock control amount from said steady state clock control amount determination means is provided.
前記定常状態クロック制御量決定手段は、
所定の期間において、前記時刻カウント差分の極小値を検出するための時刻カウント差分極小値検出手段と、
検出された前記極小値の変化に基づいて、前記基準クロックの進み方を所定のドリフトレートの範囲内になるように前記クロック制御量を決定するための時刻カウント遅速判定手段とを含む、請求項13記載の受信装置。
The steady state clock control amount determination means includes:
A time count difference minimum value detecting means for detecting a minimum value of the time count difference in a predetermined period;
And a time count delay determination means for determining the clock control amount so that the advance of the reference clock is within a predetermined drift rate range based on the detected change in the minimum value. 13. The receiving device according to 13.
受信した前記パケットを蓄積するためのバッファと、
前記送信装置からのパケットに含まれる、前記バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第1のバッファ時間量と、前記パケットが前記受信装置のバッファに蓄積された時点の第2のバッファ時間量とを合計した第3のバッファ時間量を算出するためのバッファ時間量算出手段とをさらに備え、
前記定常状態クロック制御量決定手段は、
所定の期間において、前記第3のバッファ時間量の極大値を検出するためのバッファ時間量極大値検出手段と、
検出された前記極大値の変化に基づいて、前記基準クロックの進み方を所定のドリフトレートの範囲内になるように前記クロック制御量を決定するための時刻カウント遅速判定手段とを含む、請求項13記載の受信装置。
A buffer for accumulating the received packets;
A first buffer time amount indicating a time range of time count information of packets accumulated in the buffer included in a packet from the transmission device; and a second time when the packet is accumulated in the buffer of the reception device. Buffer time amount calculating means for calculating a third buffer time amount obtained by summing the buffer time amounts of
The steady state clock control amount determination means includes:
A buffer time amount maximum value detecting means for detecting a maximum value of the third buffer time amount in a predetermined period;
And a time count delay determination means for determining the clock control amount based on the detected change in the maximum value so that the advance of the reference clock is within a predetermined drift rate. 13. The receiving device according to 13.
前記パケットを蓄積するためのバッファをさらに備え、
前記定常状態クロック制御量決定手段は、
所定の期間において、前記バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第4のバッファ時間量の極大値を検出するためのバッファ時間量極大値検出手段と、
検出された前記極大値の変化に基づいて、前記基準クロックの進み方を所定のドリフトレートの範囲内になるように前記クロック制御量を決定するための時刻カウント遅速判定手段とを含む、請求項13記載の受信装置。
A buffer for storing the packet;
The steady state clock control amount determination means includes:
A buffer time amount maximum value detecting means for detecting a maximum value of a fourth buffer time amount indicating a time range of time count information of packets accumulated in the buffer in a predetermined period;
And a time count delay determination means for determining the clock control amount based on the detected change in the maximum value so that the advance of the reference clock is within a predetermined drift rate. 13. The receiving device according to 13.
ネットワークに接続された送信装置とデータ通信するための受信装置であって、
前記受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、
前記送信装置からのパケットを受信するための受信手段と、
前記送信装置からの前記パケットに含まれる第2の時刻カウント情報と、前記受信手段が前記パケットを受信した時点で前記時刻カウント生成手段によって生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するための時刻カウント差分算出手段と、
前記時刻カウント差分の情報から、前記送信装置側の基準クロックとの周波数差を算出し、クロック制御量を決定するための周波数差推定手段と、
前記周波数差推定手段が算出した周波数差の精度を判定するための精度判定手段とを備える、受信装置。
A receiving device for data communication with a transmitting device connected to a network,
A time count generation means for generating first time count information as a reference clock on the receiving device side;
Receiving means for receiving a packet from the transmitting device;
Based on the second time count information included in the packet from the transmission device and the first time count information generated by the time count generation means when the reception means receives the packet, the time A time count difference calculating means for calculating the count difference;
From the information of the time count difference, a frequency difference estimation unit for calculating a frequency difference with a reference clock on the transmission device side and determining a clock control amount;
A receiving apparatus comprising: accuracy determining means for determining the accuracy of the frequency difference calculated by the frequency difference estimating means.
前記周波数差推定手段は、前記算出した周波数差に基づいてクロック制御量を決定し、
前記周波数差推定手段からのクロック制御量にしたがって、前記時刻カウント生成部が生成する前記第1の時刻カウント情報の進み方を制御するための時刻カウント制御手段をさらに備える、請求項17記載の受信装置。
The frequency difference estimation means determines a clock control amount based on the calculated frequency difference,
18. The reception according to claim 17, further comprising time count control means for controlling how the first time count information generated by the time count generation unit proceeds according to a clock control amount from the frequency difference estimation means. apparatus.
所定のドリフトレートの条件を満たすようにクロック制御量を決定するための定常状態クロック制御量決定手段と、
前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量または前記定常状態クロック制御量決定手段からのクロック制御量のいずれか一方を選択的に与えるための選択手段とを備え、
前記選択手段は、前記精度判定手段が前記周波数差の精度が所定の精度であると判断したことに応じて、前記時刻カウント制御手段に対し、前記周波数差推定手段からのクロック制御量に代わって、前記定常状態クロック制御量決定手段からのクロック制御量を与える、請求項18に記載の受信装置。
A steady state clock control amount determining means for determining a clock control amount so as to satisfy a predetermined drift rate condition;
A selection means for selectively giving either the clock control amount from the frequency difference estimation means or the clock control amount from the steady state clock control amount determination means to the time count control means;
In response to the determination by the accuracy determining unit that the accuracy of the frequency difference is a predetermined accuracy, the selecting unit is configured to replace the clock control amount from the frequency difference estimating unit with respect to the time count control unit. 19. The receiving apparatus according to claim 18, wherein a clock control amount from said steady state clock control amount determination means is provided.
ネットワークに接続された送信装置とデータ通信するための受信装置であって、
前記送信装置からのパケットを受信するための受信手段と、
前記受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、
前記基準クロックの制御状態を検出するための検出手段と、
検出された前記制御状態を前記送信装置に通知するための送信手段とを備える、受信装置。
A receiving device for data communication with a transmitting device connected to a network,
Receiving means for receiving a packet from the transmitting device;
A time count generation means for generating first time count information as a reference clock on the receiving device side;
Detecting means for detecting a control state of the reference clock;
A receiving device comprising: a transmitting means for notifying the transmitting device of the detected control state.
前記精度判定手段が前記周波数差の精度が前記所定の精度であると判断したことを前記送信装置に通知するための送信手段をさらに備える、請求項7または17に記載の受信装置。   The receiving device according to claim 7 or 17, further comprising transmitting means for notifying the transmitting device that the accuracy determining unit determines that the accuracy of the frequency difference is the predetermined accuracy. 前記受信装置に対する電源の入力状態を検出するための電源入力検出手段をさらに備え、
前記選択手段は、前記電源入力検出手段が前記電源の入力もしくはリセットを検出したことに応じて、前記時刻カウント制御手段に対して前記周波数差推定手段からのクロック制御量を与える、請求項13または19に記載の受信装置。
A power input detecting means for detecting an input state of power to the receiving device;
The selection means gives a clock control amount from the frequency difference estimation means to the time count control means in response to the power input detection means detecting the input or reset of the power supply. 19. The receiving device according to 19.
前記選択手段は、前記受信手段が前記送信装置からの前記パケットを所定時間受信していないとの判断に応じて、前記時刻カウント制御手段に対して前記周波数差推定手段からのクロック制御量を与える、請求項13または19に記載の受信装置。   The selection unit gives a clock control amount from the frequency difference estimation unit to the time count control unit in response to a determination that the reception unit has not received the packet from the transmission device for a predetermined time. The receiving device according to claim 13 or 19. 前記送信装置は、前記受信装置に対しダミーパケットを送信し、
前記周波数差推定手段は、前記ダミーパケットの時刻カウント差分に基づいて前記周波数差を推定する、請求項1から23のいずれか1項に記載の受信装置。
The transmitting device transmits a dummy packet to the receiving device;
The receiving apparatus according to any one of claims 1 to 23, wherein the frequency difference estimation unit estimates the frequency difference based on a time count difference of the dummy packet.
ネットワークに接続された送信装置とデータ通信するための受信装置であって、
前記受信装置側の基準クロックとして、第1の時刻カウント情報を生成するための時刻カウント生成手段と、
前記送信装置からのパケットを受信するための受信手段と、
受信した前記パケットを蓄積するためのバッファと、
前記送信装置からのパケットに含まれる、前記バッファに蓄積されたパケットの時刻カウント情報の時刻範囲を示す第1のバッファ時間量と、前記パケットが前記受信装置のバッファに蓄積された時点の第2のバッファ時間量とを合計した第3のバッファ時間量を算出するためのバッファ時間量算出手段と、
前記第3のバッファ時間量の異常値を取り除くためのデータフィルタと、
前記データフィルタを通過した前記第3のバッファ時間量の情報から、前記送信装置側の基準クロックとの周波数差を算出するための周波数差推定手段とを備える、受信装置。
A receiving device for data communication with a transmitting device connected to a network,
A time count generation means for generating first time count information as a reference clock on the receiving device side;
Receiving means for receiving a packet from the transmitting device;
A buffer for accumulating the received packets;
A first buffer time amount indicating a time range of time count information of packets accumulated in the buffer included in a packet from the transmission device; and a second time when the packet is accumulated in the buffer of the reception device. A buffer time amount calculating means for calculating a third buffer time amount that is the sum of the buffer time amounts of
A data filter for removing an abnormal value of the third buffer time amount;
A receiving apparatus comprising: frequency difference estimating means for calculating a frequency difference from a reference clock on the transmitting apparatus side from information on the third buffer time amount that has passed through the data filter.
ネットワークに接続された送信装置とデータ通信するためのクロック同期方法であって、
前記受信装置側の基準クロックとして、第1の時刻カウント情報を生成するステップと、
前記送信装置からのパケットを受信するステップと、
前記送信装置からの前記パケットに含まれる第2の時刻カウント情報と、前記受信するステップで前記パケットを受信した時点で生成された第1の時刻カウント情報とに基づいて、時刻カウント差分を算出するステップと、
前記時刻カウント差分の異常値を取り除くステップと、
前記異常値が取り除かれた前記時刻カウント差分の情報から、前記送信装置側の基準クロックとの周波数差を算出するステップとを備える、クロック同期方法。
A clock synchronization method for data communication with a transmission device connected to a network,
Generating first time count information as a reference clock on the receiver side;
Receiving a packet from the transmitting device;
A time count difference is calculated based on second time count information included in the packet from the transmission device and first time count information generated when the packet is received in the receiving step. Steps,
Removing an abnormal value of the time count difference;
Calculating a frequency difference with a reference clock on the transmission device side from information on the time count difference from which the abnormal value has been removed.
JP2006301876A 2006-11-07 2006-11-07 Receiver and clock synchronization method Expired - Fee Related JP4874058B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006301876A JP4874058B2 (en) 2006-11-07 2006-11-07 Receiver and clock synchronization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006301876A JP4874058B2 (en) 2006-11-07 2006-11-07 Receiver and clock synchronization method

Publications (2)

Publication Number Publication Date
JP2008118549A true JP2008118549A (en) 2008-05-22
JP4874058B2 JP4874058B2 (en) 2012-02-08

Family

ID=39504094

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006301876A Expired - Fee Related JP4874058B2 (en) 2006-11-07 2006-11-07 Receiver and clock synchronization method

Country Status (1)

Country Link
JP (1) JP4874058B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011016165A1 (en) * 2009-08-05 2011-02-10 パナソニック株式会社 Switch control device, integrated circuit for switch control, switch control method, and control program
JP2011120146A (en) * 2009-12-07 2011-06-16 Mitsubishi Electric Corp Media receiving device
FR3032585A1 (en) * 2015-02-10 2016-08-12 Devialet METHOD FOR SYNCHRONIZATION AND RESTITUTION OF MULTIMEDIA FLOW
CN109005002A (en) * 2017-05-31 2018-12-14 罗伯特·博世有限公司 Sensing data processing unit, sensing system and the method for determining reduced parameter in the scope of the sensing system
CN114116579A (en) * 2020-08-25 2022-03-01 横河电机株式会社 Information processing apparatus, information processing system, and information processing method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004179807A (en) * 2002-11-26 2004-06-24 Mitsubishi Electric Corp Clock reproducing apparatus, data communication device, and clock reproducing method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004179807A (en) * 2002-11-26 2004-06-24 Mitsubishi Electric Corp Clock reproducing apparatus, data communication device, and clock reproducing method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011016165A1 (en) * 2009-08-05 2011-02-10 パナソニック株式会社 Switch control device, integrated circuit for switch control, switch control method, and control program
JP2011120146A (en) * 2009-12-07 2011-06-16 Mitsubishi Electric Corp Media receiving device
FR3032585A1 (en) * 2015-02-10 2016-08-12 Devialet METHOD FOR SYNCHRONIZATION AND RESTITUTION OF MULTIMEDIA FLOW
WO2016128440A1 (en) * 2015-02-10 2016-08-18 Devialet Method for synchronising and rendering multimedia streams
US10134442B2 (en) 2015-02-10 2018-11-20 Devialet Method for synchronising and rendering multimedia streams
CN109005002A (en) * 2017-05-31 2018-12-14 罗伯特·博世有限公司 Sensing data processing unit, sensing system and the method for determining reduced parameter in the scope of the sensing system
JP2019012519A (en) * 2017-05-31 2019-01-24 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh Sensor data processing device
US11493948B2 (en) 2017-05-31 2022-11-08 Robert Bosch Gmbh Sensor-data processing device
CN114116579A (en) * 2020-08-25 2022-03-01 横河电机株式会社 Information processing apparatus, information processing system, and information processing method

Also Published As

Publication number Publication date
JP4874058B2 (en) 2012-02-08

Similar Documents

Publication Publication Date Title
US7664145B2 (en) Jitter correcting apparatus capable of ensuring synchronism between transmitter apparatus and receiver apparatus
US8954496B2 (en) Multi-screen display system
JP4694969B2 (en) Data receiver
US20030231589A1 (en) Method for transporting media, transmitter and receiver therefor
US7940805B2 (en) Receiving device, clock synchronizing method, and computer program
JP4874058B2 (en) Receiver and clock synchronization method
WO2005088888A1 (en) Data reception device and data reception method
KR20140104969A (en) Apparatus and method for synchronized transmission of multimedia content over an asynchronous network
JP2008118543A (en) Receiving device and data reproduction method
US6704329B2 (en) Minimizing the effect of jitter upon the quality of service operation of networked gateway devices
JP2003249922A (en) Data receiver, method for processing received data and computer program
JP4742836B2 (en) Receiver
JP3906712B2 (en) Data stream processing device
JP4092705B2 (en) Stream transmitting apparatus, receiving apparatus, and transmission / reception method
JP5391964B2 (en) Clock synchronization method and packet communication system
WO2011158640A1 (en) Output rate control device and output rate control method
JP2009239375A (en) Ip transmission video data receiver and ip transmission video data reception method used therefor
JP2006174001A (en) Clock synchronization scheme in data transmission and data transmission system
JP2007295491A (en) Streaming data receiving apparatus and jitter elimination circuit
JP3736396B2 (en) Stream transmitting apparatus and receiving apparatus
JP2007274536A (en) Receiver and transmission/reception method
Baba et al. Buffer-based low-delay playout control methods for IPTV terminals
JP2017028385A (en) Receiving device and system
JP4212404B2 (en) System clock control apparatus and system clock control method for stream receiver
JPH08307863A (en) Transmission reception synchronization method for video coding information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110705

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110901

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: 20111115

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111122

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees