(57)【特許請求の範囲】
【請求項１】
伝送路を経由して入力されるパケットに含まれる、タイムスタンプ、ペイロード、および時刻基準参照値を抽出して、前記タイムスタンプで指定されるタイミングよりも先に前記ペイロードを出力するパケットデータ出力手段と、
このパケットデータ出力手段から前記ペイロードが出力された時刻に対応するペイロード出力時刻を検出するペイロード出力時刻検出手段と、
前記タイムスタンプと前記ペイロード出力時刻とに基づいて前記時刻基準参照値を補正して出力する時刻基準参照値補正手段と、
この時刻基準参照値補正手段の出力に基づいて、前記ペイロードの再生に用いるシステムクロックの周波数を制御するシステムクロック周波数制御手段とを備えるクロック再生装置。
【請求項２】
時刻基準参照値補正手段は、元の時刻基準参照値に対して時間的に遅らせるように、当該時刻基準参照値を補正することを特徴とする請求項１に記載のクロック再生装置。
【請求項３】
伝送路を経由して入力されるパケットに含まれる、タイムスタンプとペイロードとを抽出して、前記タイムスタンプで指定されるタイミングよりも先に前記ペイロードを出力するパケットデータ出力手段と、
このパケットデータ出力手段から前記ペイロードが出力された時刻に対応するペイロード出力時刻を検出するペイロード出力時刻検出手段と、
前記タイムスタンプと前記ペイロード出力時刻とに基づいて、前記ペイロードの再生に用いるシステムクロックの個数をカウントして得られるカウント値を補正して出力するカウント値補正手段と、
このカウント値補正手段の出力に基づいて、前記システムクロックの周波数を制御するシステムクロック周波数制御手段とを備えるクロック再生装置。
【請求項４】
カウント値補正手段は、元のカウント値に対して時間的に遅らせるように、当該カウント値を補正することを特徴とする請求項３に記載のクロック再生装置。
【請求項５】
システムクロック周波数制御手段は、時刻基準参照値補正手段、またはカウント値補正手段の出力に基づいて、システムクロックの周波数を一定にすることを特徴とする請求項１ないし４のいずれかに記載のクロック再生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、パケット信号受信装置に設けられて、受信したパケットの復元に必要なクロックを再生するための装置に関する。
【０００２】
【従来の技術】
図４は、例えばIEEE1394、ISO/IEC 13818-1,-2および3 、HD DIGITAL VCR CONFERENCE PART4 Specifications of MPEG DATA Transmission for Consumer-Use Digital Interface に準拠した各装置で構成された従来の信号受信装置の構成を示すブロック図で、高速シリアルバスIEEE1394バス上のMPEG2トランスポートストリームを受信するための装置である。
【０００３】
図において、１は高速転送帯域をもつがジッタを含むIEEE1394バス、２はIEEE1394バス１上を伝送されたパケットを受信するIEEE1394インターフェース、３は受信したパケットのペイロードであるMPEG2トランスポートストリームを再構成するためにバッファリングするためのFIFOメモリ、４は再構成したペイロードを後段に出力するタイミングを示すタイムスタンプを抽出するタイムスタンプ抽出装置、５はローカルの24.576MHz のクロックでカウントアップされるサイクルタイマで、定期的にIEEE1394インターフェース２で検出する絶対時間情報によりサイクルタイマ５が校正される。
【０００４】
６はタイムスタンプ抽出装置４で抽出したタイムスタンプの値と、サイクルタイマ５の値が一致したタイミングをタイムスタンプ抽出装置４に通知する出力タイミング制御装置、７はMPEG2トランスポートストリームデマルチプレクサ（以下、「MPEG2 TS デマルチプレクサ」という）で、27MHz のシステムクロックを再生するためにMPEG2トランスポートストリーム中に含まれているプログラムクロックリファレンス（PCR）を抽出する。
【０００５】
タイムスタンプ抽出装置４は出力タイミング制御装置６からの転送通知を受信すると、再構成されたMPEG2トランスポートストリームをMPEG2 TS デマルチプレクサ７に出力する。８はローカルカウンタで、クロックリカバリされた27MHz のシステムクロックでインクリメントされる。９はVCXO制御装置で、27MHz のシステムクロックを再生するためにPCR とローカルカウンタ８の値の情報をもとにVCXO１０をコントロールし、クロックリカバリを実現する。MPEG2のデータはMPEG2 TS デマルチプレクサ７からさらに後段のMPEG2 A/Vデコーダ１１に転送される。
【０００６】
上記のシステムにおいて、出力タイミング制御装置６で、タイムスタンプで指定されたタイミングになったことを知らせる通知が来るまでタイムスタンプ抽出装置４でペイロードをバッファリングしておくことで、IEEE1394バス上のジッタを吸収することができ、後段の27MHz システムクロックの再生にジッタの影響をあたえることなく、正確にクロック再生がなされる。
【０００７】
【発明が解決しようとする課題】
上記のような従来の処理では、出力タイミング制御装置がMPEG2 トランスポートストリームをMPEG2 TS デマルチプレクサに転送するタイミングを通知する。そのタイミングの検出のために、サイクルタイマの値とタイムスタンプ抽出装置で抽出したタイムスタンプの値を常に比較する処理が必要になる。この処理をソフトウエアで実現する場合、常に比較演算をやり続けなければいけないので、この処理に要する負荷が大きくなり、他のソフトウエア処理のパフォーマンスに大きな影響を及ぼすことになる。
【０００８】
また、比較演算の結果が一致したとき、瞬時にMPEG2 TS デマルチプレクサにデータを転送しなければ27MHzのクロックリカバリに影響を及ぼすので、高速なＣＰＵが必要となる。他方、ハードウエアで出力タイミング制御装置を実現すると、余分な32bitの比較演算回路が必要になる。さらにサイクルタイマの値がタイムスタンプの値と等しくなるまでの期間、タイムスタンプ抽出装置でデータを保持しておかなければならいため、余分なバッファが必要になる。
【０００９】
この発明は、上記のような課題の解決を目的としてなされたもので、ソフトおよびハードウエアいずれで構成しても、簡単な構成で正確なクロック再生を実行できるクロック再生装置を得ることを目的とする。
【００１０】
【課題を解決するための手段】
この発明に係るクロック再生装置は、伝送路を経由して入力されるパケットに含まれる、タイムスタンプ、ペイロード、および時刻基準参照値を抽出して、前記タイムスタンプで指定されるタイミングよりも先に前記ペイロードを出力するパケットデータ出力手段と、このパケットデータ出力手段から前記ペイロードが出力された時刻に対応するペイロード出力時刻を検出するペイロード出力時刻検出手段と、前記タイムスタンプと前記ペイロード出力時刻とに基づいて前記時刻基準参照値を補正して出力する時刻基準参照値補正手段と、この時刻基準参照値補正手段の出力に基づいて、前記ペイロードの再生に用いるシステムクロックの周波数を制御するシステムクロック周波数制御手段とを備えるものである。
【００１１】
また、伝送路を経由して入力されるパケットに含まれる、タイムスタンプとペイロードとを抽出して、前記タイムスタンプで指定されるタイミングよりも先に前記ペイロードを出力するパケットデータ出力手段と、このパケットデータ出力手段から前記ペイロードが出力された時刻に対応するペイロード出力時刻を検出するペイロード出力時刻検出手段と、前記タイムスタンプと前記ペイロード出力時刻とに基づいて、前記ペイロードの再生に用いるシステムクロックの個数をカウントして得られるカウント値を補正して出力するカウント値補正手段と、このカウント値補正手段の出力に基づいて、前記システムクロックの周波数を制御するシステムクロック周波数制御手段とを備えるものである。
【００１３】
【発明の実施の形態】
以下、この発明をその実施の形態を示す図面に基づいて具体的に説明する。
実施の形態１．
通信システムは、送信装置と受信装置を備えていて、送信装置からはMPEG2 トランスポートストリームをリアルタイムに高速で転送するために、IEEE1394バス１を介して伝送する。このために図５に示す形式で信号が送出されるようになっている。IEEE1394バス上をMPEG2トランスポートストリームを送信する際に、まずIEEE1394バス上のジッタを吸収するために受信側でそのパケットを受信側のMPEG2 TS デマルチプレクサにどのタイミングで転送すべきかを指定するソースパケットヘッダ(SPH) と呼ばれるタイムスタンプをMPEG2トランスポートストリームの各パケットの先頭に付加し、ソースパケットを構成する。
【００１４】
さらにIEEE1394バスの帯域を有効に使用するために、このソースパケットを転送レートに応じて複数個に分割し、ヘッダを付加してIEEE1394パケットを構成する。さらにIEEE1394バス上には、１２５μs 毎にサイクルスタートパケットと呼ばれるバス上の絶対時間情報を載せたパケットが送信される。またMPEG2トランスポートストリームは、図６のように１パケット１８８バイトで構成され、受信側で送信側のシステムクロックを正しく再生できMPEG2ストリームを正しく再生できるようにするために、プログラムクロックリファレンス（PCR ）を含んでいる。
【００１５】
図１はこの発明の実施の形態１である受信装置を示すもので、図において、１はMPEG2トランスポートストリームをペイロードとするIEEE1394入力パケット信号である。２はIEEE1394パケット構造からペイロードを抽出するIEEE1394インターフェース、３はペイロードである分割されたMPEG2トランスポートストリームを再構成するためのFIFOメモリ、１２はソースパケットヘッダ除去/ タイムスタンプ抽出装置で、SPH を抽出除去し、後段のMPEG2 TS デマルチプレクサにMPEG2
トランスポートストリームを転送する。
【００１６】
７はMPEG2 TS デマルチプレクサで、PCR を抽出してMPEG2 A/V デコーダ１１へMPEG2ストリームを転送する。５はサイクルタイマで、IEEE1394インターフェース２で検出したサイクルスタートパケットから絶対時間情報により１２５μs 毎に更正されるIEEE1394の絶対時刻を計時する。１３はサイクルタイマ、タイムスタンプ保持装置で、ソースパケットヘッダ除去／タイムスタンプ抽出装置１２で抽出したSPH を保持し、さらにソースパケットヘッダ除去／タイムスタンプ抽出装置１２からMPEG2 TS デマルチプレクサ７にMPEG2トランスポートストリームを転送したときのサイクルタイマ値を保持する。
【００１７】
８はクロック再生された27MHz のシステムクロックでカウントされるクロック再生のためのローカルカウンタ、１０は27MHz のVCXO、９はVCXO１０を制御するVCXO制御装置、１４はPCR 補正／差分計算装置で、サイクルタイマ、タイムスタンプ保持装置１３からの各情報とMPEG2 TS デマルチプレクサ７から抽出したPCRよりPCR を補正し、ローカルカウンタ８のカウンタ値との差分を求めてVCXO制御装置９に転送し、27MHzシステムクロック再生のためのフェーズドロックループ（PLL）を構成する。
【００１８】
ソースパケットヘッダ除去／タイムスタンプ抽出装置１２では、従来技術のようにMPEG2トランスポートストリームをSPHが表す時刻までバッファリングせずに即、MPEG2 TS デマルチプレクサ７に転送する。このためMPEG2 TS デマルチプレクサ７に入力されるMPEG2トランスポートストリームには、1394バスを伝送してきたことによるジッタが除去されず含まれている。このためMPEG2 TS デマルチプレクサ７で抽出されるPCR にもジッタが含まれており、これをそのままリファレンスとしてクロックリカバリに使用すると、誤ったクロックリカバリをしてしまうことになる。
【００１９】
そこで、このジッタを補償する手段が必要となる。MPEG2 TS デマルチプレクサ７には、その前段でジッタ吸収のための時間管理およびバッファリング処理がされずにMPEG2トランスポートストリームが入力される。このため抽出したPCR値は、本来届くべき時刻よりも早めに抽出されることになる。
【００２０】
従来技術では図４のVCXO制御装置９においてローカルカウンタ値と抽出したPCRの値を比較し、その差分値に応じて27MHzVCXO１０が発生する周波数をコントロールする。もし早めに抽出されたPCR をそのまま従来技術と同じ処理をVCXO制御装置９で行うと、PCR 値は、本来検出されるべきタイミングより早めに抽出されているので、ローカルカウンタ値と比べて大きな値になっているはずであるので、ローカルカウンタをインクリメントする27MHz クロック周波数が遅いと判断し、27MHzVCXO１０の出力周波数を上げる制御をしてしまうことになる。
【００２１】
しかし、実際は27MHzのシステムクロック周波数が低かったわけでなく、バッファリングされずに本来到着するタイミングより早めにMPEG2トランスポートストリームがMPEG2 TS デマルチプレクサ７に入力されたのが原因である。この問題を補償するために、どれだけ早く抽出されてしまったかを図１のPCR補正／差分計算装置１４で計算し、その分の値だけPCR 値に加算してPCR値を補正することで対応できる。
【００２２】
この処理をPCR補正／差分計算装置１４が以下のようににPCR補正を行う。
図２において、δは1394バス上の最大遅延時間、ｔi は、１８８バイトのMPEGトランスポートパケットに４バイトのタイムスタンプ(Ｔstmpi=ｔi+δ) を付加し、１９２バイトのソースパケットをIEEE1394バス上に送信する時刻、ｔcyciは受信側で１トランスポートパケットが再構成されMPEGデマルチプレクサに転送した時刻、ｔjiは1394バスによる伝送ジッタとする。
【００２３】
PCR補正／差分計算装置１４で下式に従ってジッタ量に応じたPCR 補正を行う。補正したPCRi値をPCRcoriとし、PCRi値およびPCR補正／差分計算装置１４で補正したPCRcori値を時刻換算した値をそれぞれｔPCRi、ｔPCR＿coriとし、以下の補正を行う。
ｔPCR＿cori＝ｔPCRi＋ｔji          ………………………（１）
ここでｔjiは図２より
ｔjt＝ｔcyci−ｔi                 ………………………（２）
となる。Ｔstmpiは送信時刻ｔiに最大遅延時間δを加えた値なので、
Ｔstmpi＝ｔi＋δ                  ………………………（３）
となる。よって（２）式、（３）式より
ｔjt＝ｔcyci−（Ｔstmpi−δ）     ………………………（４）
となる。
【００２４】
PCR 補正／差分計算装置１４では、時間的に隣り合うPCR 値およびローカルカウンタ値のそれぞれの変化量ΔPCR、ΔLMの値を求め、VCXO制御装置９では、その誤差量に応じた制御電値を発生する。この計算では、PCRの代わりに補正したPCR 値を用いる。そこでΔPCRcoriの時刻換算値、ｔPCR＿coriを（１），（４）を用いて求めると、
0003642180.tif 000002
となる。
【００２５】
よって、PCR 補正／差分計算装置１４では、（５）式のようにMPEG2 TS デマルチプレクサ７からのPCR値からΔPCRの時刻換算値ΔｔPCRを、サイクルタイマ、タイムスタンプ保持装置１３からΔｔcyc、ΔＴstmpを計算し（５）式に代入してΔｔPCR＿coriを求める。
【００２６】
さらにPCR補正／差分計算装置１４でローカルカウンタ値と補正したPCR値との差分を求め、VCXO制御装置９で（６）式に従いVCXOコントロール電圧Ｖctrlを発生する。
Ｖctrl＝Ｇ（ΔｔPCR＿cor−ΔｔLMC i ）    …………  （６）
ここでＧはゲイン、ΔｔLMCはローカルカウンタ値の時刻換算値である。
（６）式に従って発生されるコントロール電圧によって27MHzVCXO１０は正確にシステムクロックを再生することができる。
【００２７】
このような構成となっているからMPEG2 TS デマルチプレクサ７へMPEG2トランスポートストリームを転送するタイミングを監視する必要がなく、従来技術では必要だったSPHの値とサイクルタイマの値を逐次比較する手段が必要ない。このためソフトウエアで構成した場合には、SPHとサイクルタイマ値を常時比較する処理が不要となり、また高速なＣＰＵが不要となる。一方ハードウエアで構成した場合であっても、余分な比較演算回路が不要となり、また余分なバッファも不要となる。
【００２８】
実施の形態２．
図３では図１のPCR補正／差分計算装置１４の代わりにLMC 補正／差分計算装置１５を使用した受信装置である。
図３のソースパケットヘッダ除去／タイムスタンプ抽出装置１２では、従来技術のようにMPEG2トランスポートストリームをSPH が表す時刻までバッファリングせずに即、MPEG2 TS デマルチプレクサ７に転送する。
このためMPEG2 TS デマルチプレクサ７に入力されるMPEG2トランスポートストリームには、1394バスを伝送してきたことによるジッタが除去されず含まれている。このためMPEG2 TS デマルチプレクサ７で抽出されるPCRにもジッタが含まれており、これをそのままリファレンスとしてクロックリカバリに使用すると誤ったクロックリカバリをしてしまうことになる。
【００２９】
そこでこのジッタを補償する手段が必要となる。MPEG2 TS デマルチプレクサ７にはその前段でジッタ吸収のための時間管理およびバッファリング処理がされずにMPEG2 トランスポートストリームが入力される。このため抽出したPCR値は、本来届くべき時刻よりも早めに抽出されることになる。従来技術では図４のVCXO制御装置９においてローカルカウンタ値と抽出したPCR の値を比較し、その差分値に応じて27MHzVCXO１０が発生する周波数をコントロールする。
【００３０】
もし早めに抽出されたPCR をそのまま従来技術と同じ処理をVCXO制御装置９で行うと、PCR値は、本来検出されるべきタイミングより早めに抽出されているので、ローカルカウンタ値と比べて大きな値になっているはずであるので、ローカルカウンタをインクリメントする27MHzクロック周波数が遅いと判断し、27MHzVCXO１０の出力周波数を上げる制御をしてしまうことになる。
【００３１】
しかし、実際は27MHzのシステムクロック周波数が低かったわけでなく、バッファリングされずに本来到着するタイミングより早めにMPEG2トランスポートストリームがMPEG2 TS デマルチプレクサ７に入力されたのが原因である。この問題を補償するために、どれだけ早く抽出されてしまったかを図３のLMC補正／差分計算装置１５で計算し、その分の値だけローカルカウンタ値を減算してローカルカウンタ値を補正することで対応できる。
【００３２】
この処理をLMC補正／差分計算装置１５が以下のようにローカルカウンタ補正を行う。補正した時刻計測カウンタ値の時刻換算した値をｔLMCcori、タイムスタンプ値を時刻換算した値をｔstmpiとし以下の補正を行う。
ｔLMCcori ＝ｔLMCi− ｔji                …………………（７）
となる。（７）式に（４）式を代入すると
ｔLMCcori ＝ｔLMCi−ｔcyci−（Ｔstmp−δ）   ……………（８）
となる。
【００３３】
図３のLMC補正／差分計算装置１５では時間的に隣り合うPCR値およびローカルカウンタ値のそれぞれの変化量ΔPCR 、ΔLMCの値の誤差を求め、VCXO制御装置９では、その誤差量に応じた制御電圧を発生する。この計算では、LMCの代わりに補正したLMC値を用いる。そこでΔｔLMCcoriの時刻換算値、ΔｔLMC＿coriを（８）式を用いて求めると、
0003642180.tif 000003
となる。
【００３４】
よって、ローカルカウンタ値からΔLMCの時刻換算値ΔｔLMCを、図３のサイクルタイマ／タイムスタンプ保持装置１３からΔｔcyc、ΔＴstmpを計算し上式に代入してΔｔLMC＿coriを求める。
【００３５】
さらにLMC補正／差分計算装置１５でローカルカウンタ値と補正したPCR値との差分を求めVCXO制御装置９で（１０）式に従いVCXOコントロール電圧Ｖctrlを発生する。
Ｖctrl＝Ｇ（ΔｔPCR−ΔｔLMC＿cori）     …………  （１０）
ここでＧはゲイン、ΔｔLMCはローカルカウンタ値の時刻換算値である。
（１０）式に従って発生されるコントロール電圧によって27MHzVCXO１０は正確にシステムクロックを再生することができる。
【００３６】
このような構成となっているからMPEG2 TS デマルチプレクサ７へMPEG2トランスポートストリームを転送するタイミングを監視する必要がなく、従来技術では必要だったSPH の値とサイクルタイマの値を逐次比較する手段が必要ない。このためソフトウエアで構成した場合には、SPHとサイクルタイマ値を常時比較する処理が不要となり、また高速なＣＰＵが不要となる。一方ハードウエアで構成した場合であっても、余分な比較演算回路が不要となり、また余分なバッファも不要となる。
【００３７】
【発明の効果】
この発明は、以上説明したように、タイムスタンプとペイロード出力時刻とに基づいて時刻基準参照値を補正することにより、前記タイムスタンプで指定されるタイミングよりも先にペイロードが出力されてもシステムクロックの周波数を正確に制御することができる。
【図面の簡単な説明】
【図１】  この発明の実施の形態１を示すブロック構成図である。
【図２】  実施の形態１のMPEG2 トランスポートパケットの送信受信方法の説明図である。
【図３】  この発明の実施の形態２を示すブロック構成図である。
【図４】  従来の信号受信装置の構成を示すブロック図である。
【図５】  パケット信号受信装置に入力するMPEG2トランスポートストリームをペイロードとするIEEE1394パケットの構成図である。
【図６】  MPEG2トランスポートパケットのフォーマット図である。
【符号の説明】
１  IEEE1394バス、２  IEEE1394インターフェース、３  FIFOメモリ、４  タイムスタンプ抽出装置、５  サイクルタイマ、６  出力タイミング制御装置、７  MPEG2 TS デマルチプレクサ、８  ローカルカウンタ、９  VCXO制御装置、
１０  27MHzVCXO 、１１  MPEG2 A/V デコーダ、１２  ソースパケットヘッダ除去／タイムスタンプ抽出装置、１３  サイクルタイマ、タイムスタンプ保持装置、１４  PCR補正／差分計算装置、１５  LMC補正／差分計算装置。
【図１】
0003642180.tif 000004
【図２】
0003642180.tif 000005
【図３】
0003642180.tif 000006
【図４】
0003642180.tif 000007
【図５】
0003642180.tif 000008
【図６】
0003642180.tif 000009