(57)【特許請求の範囲】
【請求項１】
パケット化マルチメディア・データを受信し、このパケット化マルチメディア・データを、イーサネット（登録商標）・ネットワークを介して、送信するサーバ装置であって、
同期情報を含むパケット化マルチメディア・データをシステム・ヘッドエンドから受信するための入力部と、
クロックと、
前記入力部および前記クロックに接続されており、前記同期情報に応じて前記クロックを前記システム・ヘッドエンドに関連するクロックに同期させる制御装置であって、前記パケット化マルチメディア・データの受信に応答して、各々が前記入力部に於けるそれぞれのマルチメディア・データ・パケットの受信時を示す第１のタイム・スタンプを生成し、更に、前記パケット化マルチメディア・データと前記第１のタイム・スタンプとを含むデータ・フレームを生成する、前記制御装置と、
前記イーサネット（登録商標）・ネットワークに接続されており、前記データ・フレームをクライアント・デバイスに送信するための出力部と、
前記制御装置、前記クロックおよび前記出力部に接続されており、各々がそれぞれのデータ・フレームの前記イーサネット（登録商標）・ネットワーク上への送出時を示す第２のタイム・スタンプを物理層で前記それぞれのデータ・フレーム中に配置するタイム・スタンプ付加デバイスと、
を含み、
クライアント・デバイスが、前記第１のタイム・スタンプに応答して、自己に於けるデータ・フロー・レートを制御して、前記パケット化マルチメディア・データの前記サーバ装置の前記入力部に於ける受信レートに対応するようにし、前記第２のタイム・スタンプに応答して、自己に関連するクロックを前記サーバ装置に関連する前記クロックに同期させるように構成された、前記サーバ装置。
【請求項２】
前記イーサネット（登録商標）・ネットワーク上で衝突状態が検出された場合に、前記タイム・スタンプ付加デバイスが、前記データ・フレームの前記イーサネット（登録商標）・ネットワーク上への送出前に、新たな第２のタイム・スタンプを生成して、前記データ・フレームに於いて前の前記第２のタイム・スタンプを前記新たな第２のタイム・スタンプに置き換える、請求項１記載のサーバ装置。
【請求項３】
前記クライアント・デバイスが、各々がそれぞれのデータ・フレームの前記クライアント・デバイスへの到着時を示す第３のタイム・スタンプをそれぞれのデータ・フレームに付加し、更に、前記第２のタイム・スタンプと前記第３のタイム・スタンプとを比較して自己に関連する前記クロックを前記サーバ装置に関連する前記クロックに同期させるように構成された、請求項１記載のサーバ装置。
【請求項４】
前記タイム・スタンプ付加デバイスには、受信制御装置、タイム・スタンプ生成器および巡回冗長検査生成器に接続されており、前記第２のタイム・スタンプを生成して物理層で各データ・フレーム中に配置するマルチプレクサが含まれている、請求項２記載のサーバ装置。
【請求項５】
前記イーサネット（登録商標）・ネットワークには無線ネットワークが含まれている、請求項２記載のサーバ装置。
【請求項６】
前記データ・フレームがＵＤＰフレームに対応する、請求項２記載のサーバ装置。
【請求項７】
イーサネット（登録商標）・ネットワークを介してパケット化マルチメディア・データを送信する方法であって、
サーバ装置に於いて、同期情報を有するパケット化マルチメディア・データをシステム・ヘッドエンドから受信するステップと、
前記同期情報に応じてサーバ・クロックを前記システム・ヘッドエンドに関連するクロックに同期させるステップと、
前記パケット化マルチメディア・データの前記受信に応答して、各々が前記サーバ装置に於けるそれぞれのマルチメディア・データ・パケットの受信時を示す第１のタイム・スタンプを生成するステップと、
前記パケット化マルチメディア・データと前記第１のタイム・スタンプとを含むデータ・フレームを生成するステップと、
各々がそれぞれの前記データ・フレームの前記イーサネット（登録商標）・ネットワーク上への送出時を示す第２のタイム・スタンプを生成して物理層でそれぞれの前記データ・フレーム中に配置する配置ステップと、
前記データ・フレームを前記イーサネット（登録商標）・ネットワーク上に送出して前記データ・フレームをクライアント・デバイスに送信するステップと、
を含み、
前記クライアント・デバイスが、前記第１のタイム・スタンプに応答して、自己に於けるデータ・フロー・レートを制御して、前記パケット化マルチメディア・データの前記サーバ装置に於ける受信レートに対応するようにし、前記第２のタイム・スタンプに応答して、自己に関連するクロックを前記サーバ・クロックに同期させる、前記方法。
【請求項８】
前記イーサネット（登録商標）・ネットワーク上で衝突状態が検出された場合に、前記データ・フレームの前記イーサネット（登録商標）・ネットワーク上への送出の際に新たな第２のタイム・スタンプが生成されて前記データ・フレーム中に配置される、請求項７記載の方法。
【請求項９】
前記配置ステップには、受信制御装置、タイム・スタンプ生成器および巡回冗長検査生成器の各出力を多重化して、前記第２のタイム・スタンプを物理層で配置するステップが含まれる、請求項７記載の方法。
【請求項１０】
前記クライアント・デバイスが、各々がそれぞれの前記データ・フレームの前記クライアント・デバイスへの到着時を示す第３のタイム・スタンプをそれぞれの前記データ・フレームに付加し、更に、前記第２のタイム・スタンプと前記第３のタイム・スタンプとを比較して自己に関連する前記クロックを前記サーバ・クロックに同期させる、請求項７記載の方法。
【請求項１１】
イーサネット（登録商標）・ネットワークを介するデータ・フレームの受信に応じてクライアント・デバイスを制御する方法であって、
サーバ装置に於いて、システム・ヘッドエンドから同期情報を含むパケット化マルチメディア・データを受信し、前記同期情報に応じて前記サーバ装置に関連するクロックを前記システム・ヘッドエンドに関連するクロックに同期させ、前記パケット化マルチメディア・データと、前記サーバ装置に於けるそれぞれのマルチメディア・データ・パケットの受信時を示す第１のタイム・スタンプと、それぞれの前記データ・フレームの前記イーサネット（登録商標）・ネットワーク上への送出時を示す第２のタイム・スタンプとを含む前記データ・フレームを生成するステップと、
前記サーバ装置によって送信された前記データ・フレームを前記クライアント・デバイスに於いて受信するステップと、
前記クライアント・デバイスに於いて、前記データ・フレームの受信の際に、各々が前記イーサネット（登録商標）・ネットワークを介するそれぞれの前記データ・フレームの受信時を示す第３のタイム・スタンプを生成して物理層でそれぞれの前記データ・フレーム中に配置する配置ステップと、
前記第１のタイム・スタンプに応じて、前記パケット化マルチメディア・データの前記クライアント・デバイスのデコーダへの伝送レートを制御して、前記パケット化マルチメディア・データの前記サーバ装置に於ける受信レートに対応させるステップと、
前記第２のタイム・スタンプおよび前記第３のタイム・スタンプに応じて、前記クライアント・デバイスに関連するクロックを前記サーバ装置に関連する前記クロックに同期させるステップと、
を含む前記方法。
【請求項１２】
前記配置ステップには、受信制御装置、タイム・スタンプ生成器および巡回冗長検査生成器の各出力を多重化して、前記第３のタイム・スタンプを生成して物理層で配置するステップが含まれている、請求項１１記載の方法。
【請求項１３】
前記第２のタイム・スタンプと前記第３のタイム・スタンプとを比較し、その比較結果に基づいて、前記クライアント・デバイスに関連する前記クロックの周波数を制御することによって、前記クライアント・デバイスに関連する前記クロックを前記サーバ装置に関連する前記クロックに同期させる、請求項１１記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、非同期通信ネットワークに関し、特に、マルチメディア・データ・パケットからジッタ（ｊｉｔｔｅｒ：変動）を除去するためのシステム・レベルのクロック制御方式を有する非同期マルチメディア・ディジタル・ホーム・ネットワークに関する。
【背景技術】
【０００２】
近年のディジタル通信技術の進歩により、ディジタル・ホーム・ネットワーク（ＤＨＮ：Ｄｉｇｉｔａｌ  Ｈｏｍｅ  Ｎｅｔｗｏｒｋ）の実用性が高まり、これにより家庭内の様々な装置が互いに通信できるようになっている。特に、ブロードバンド・アクセスの可用性の向上により、マルチメディア情報のアクセスおよび分配・配信を集中化して行うブロードバンド・アクセスに接続された単一のゲートウェイ・デバイスに家庭内の様々な装置を接続できることが望まれるようになっている。このような家庭で使用されるディジタル・ホーム・ネットワークでは、ゲートウェイ・デバイスは、マルチメディア・コンテンツにアクセスしてこれをバッファリングし、ネットワークに接続された様々なクライアント・デバイスからの要求に応じてネットワークを介してそのコンテンツを配信する。
【０００３】
イーサネット（登録商標）は、ＬＡＮを実施する際の一般的な選択肢の１つである。イーサネット（登録商標）は、非同期衝突検出ネットワーク（ａｓｙｎｃｈｒｏｎｏｕｓ  ｃｏｌｌｉｓｉｏｎ  ｄｅｔｅｃｔ  ｎｅｔｗｏｒｋ）である。ＨＰＮＡ（Ｈｏｍｅ  Ｐｈｏｎｅｌｉｎｅ  Ｎｅｔｗｏｒｋｉｎｇ  Ａｌｌｉａｎｃｅ）規格もまた非同期衝突検出ネットワークであり、一部の電力線ベースのネットワークも、非同期衝突検出ネットワークであることが多い。しかし、このようなネットワークを使用してマルチメディア・コンテンツを配信するときには、様々な困難が生じる。
【０００４】
図１は、マルチメディア・ネットワークを示すシステム図である。システム１００は、複数の通信ネットワーク１０５から１０７のうちの１つを介してメディア・サーバ１０３に接続された複数のデバイス１０８〜１１３を含んでいる。システム１００では、メディア・サーバ１０３は、衛星アンテナ１０２を介してマルチメディア・コンテンツを受信し、このコンテンツをバッファリングし、ネットワークに接続された様々なデバイスからの要求に応じてこれを分配する。メディア・サーバ１０３は、ケーブルやＤＳＬ（ディジタル加入者回線）など複数の既知のディジタル・メディア・アクセス方法の何れか１つを介してマルチメディア・コンテンツを受信するように接続することもできる。選択したネットワークを介してデータの転送は、一般に、大型バッファを使用することにより、またはクライアント・デバイスにデータを絞り込ませることにより行われる。
【０００５】
この点で、生放送を取ってこの放送を非同期ディジタル・ホーム・ネットワークを介して配信することには幾つかの問題がある。生放送信号では、データは、クライアント・デバイスに送られるが、クライアント・デバイスでは、入来するデータ・ストリームを制御することができない。ネットワークに接続されたクライアント・デバイスが、送られてきた全ての音声データおよびビデオ・データを正しいフレーム・レートで、且つフレームの繰返しやフレーム落ちを生じることなく、確実に復号して表示することができるようにするためには、一般に、そのネットワークに接続されたクライアント・デバイスをネットワーク・ゲートウェイ・デバイスと同期してクロック制御する必要がある。最も広く受け入れられている放送用オーディオ／ビジュアル（Ａｕｄｉｏ／Ｖｉｓｕａｌ：Ａ／Ｖ）ネットワークでクロック同期を行う方法は、放送位置（場所）で抽出したカウンタ・サンプルを、放送時点から受信時点までの遅延を一定にして受信側に送達することに依拠するものである。放送位置のカウンタは、放送位置の基準クロックにより増分される。これらのクロック・サンプルが受信側に到着した瞬間に、電圧制御発振器（ＶＣＸＯ）でクロック制御されたカウンタがサンプリングされる。カウンタの値と放送位置から受信したタイム・スタンプとを比較し、ローカル・カウンタのサインプルと放送位置で抽出したクロック・サンプルの差が時間と共に変化する場合には、ローカル・クロックを放送位置の基準クロックに周波数ロックさせるようにローカル電圧制御発振器（ＶＣＸＯ）に印加される電圧を調節する。
【０００６】
イーサネット（登録商標）ネットワークなどの非同期衝突検出ネットワーク上では、パケットが構成されて送信用バッファ内に置かれた時点からそのパケットがネットワーク接続デバイスに受信される時点までの遅延は、常に一定というわけではない。このようなネットワークでは、１つのネットワーク上で複数のデバイスが衝突することにより、パケットの受信に可変パケットおよび予測不可能な遅延が生じる可能性がある。このような環境では、この可変且つ予測不可能な遅延により、上述の方法を使用してネットワーク接続された受信側のクロックをネットワーク接続された送信側のクロックに周波数ロックさせることができない。この方法を用いて受信側クロックを送信側クロックにロックさせようとすると、受信側クロックに有意なジッタが生じることがある。受信側クロック中のジッタの大きさによりは、ビデオ表示用のＮＴＳＣ方式に準拠したカラー・バーストを生成することができなくなることがある。更に、このジッタは、音声およびビデオの圧縮データ・バッファが必要以上に大きいことを最低でも必要とし、最悪の場合には、これらのバッファのアンダーフローまたはオーバフローを引き起こすことになる。副次的な作用としては、映像が止まったり（フリーズしたり）、音声チャープ（ｃｈｉａｒｐ）が起こる可能性があり、また、カラー（色）バーストの変化により表示色が動的に変化することなどがある。
【０００７】
ＩＥＥＥ１３９４ネットワークなど、幾つかのネットワークは、この問題を解消することができる等時性（ｉｓｏｃｈｒｏｎｏｕｓ：アイソクロナス）機能を提供する。更に、媒体アクセス制御（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｓｉｄｕａｌ  Ｔｉｍｅ  Ｓｔａｍｐ：ＳＲＴＳ）方式など、ＡＴＭ（非同期通信モード）ネットワークがこれらのタイミングの問題に対処するための様々な方法も開発されている。同期用残差タイム・スタンプ方式では、送信側デバイスと受信側デバイスが共に同期のためのネットワーク・クロックにアクセスできるものと仮定している。しかし、これらの方法は、イーサネット（登録商標）ネットワークなどの非同期衝突検出ネットワークにおけるジッタ（変動）の補正に完全には適していないことがある。従って、上記の問題を解決するために、非同期ネットワーク、特に非同期衝突検出ネットワークにおいてクロックを同期させ、データ・フロー（流れ）を制御するシステムおよび方法が必要とされる。
【発明の開示】
【０００８】
本発明は、上述のジッタ問題を解決するものであり、特に、マルチメディア・カウンタを非同期ネットワーク上に分配するシステムおよび方法を提供する。更に具体的には、本発明では、タイム・スタンプ（Ｔｉｍｅ  Ｓｔａｍｐ）を使用して、ソフトウェア処理および非同期ホーム・ネットワーク上での衝突により引き起こされるジッタの影響を最小限に抑えて低減する。タイム・スタンプは、クライアント・デバイスのクロックをサーバ・クロックに同期させるために、またクライアント・デバイスにおけるデータ・フローを制御するために使用される。
【０００９】
１組（セット）のタイム・スタンプをフロー制御のために付加する。ブロードバンド・ネットワークからパケットが到着すると、サーバ内のローカル・カウンタのサンプルがレジスタに保持される。サーバは、このカウンタ・サンプル値を受信したトランスポート・パケットに添付する。ローカル・カウンタは、ヘッドエンドのシステム・クロックに周波数ロックされているシステム・クロックでクロック制御される。パケットにタイム・スタンプが付加されると、サーバは、このパケットを送信用バッファに入れることができる。このタイム・スタンプは、そのデータがブロードバンド接続から受信されてバッファに入れられた瞬間を示すものであり、従って、クライアント・デバイスは、このタイム・スタンプを使用して、データが受信用バッファに入ったのと全く同じ速度で受信用バッファからデータを除去することができる。
【００１０】
別の１組（セット）のタイム・スタンプを使用して、クライアント・デバイスのクロックをヘッドエンドのクロックと同期させる。データ・フレームがネットワークに置かれた瞬間に、システム・クロックに基づくローカル・カウンタをサンプリングする。ローカル・カウンタをサンプリングし、サンプリングしたカウント値がネットワーク上に置かれてからの時間が一定且つ不変となるように、サンプリングしたクロックに基づくタイム・スタンプを、ネットワークの物理層（Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ）でデータ・フレーム中に実時間（リアルタイム）で配置する。衝突が発生した場合には、データを再送信するときにタイム・スタンプを更新する。クライアント・デバイスの物理層で新しいデータ・フレームが受信された瞬間に、クライアントのローカル・クロックに基づくローカル・カウンタをレジスタに保持する。次いで、この「受信時」タイム・スタンプを、受信したデータ・フレームに添付し、クライアントのネットワーク・プロトコルのハードウェアおよびソフトウェアの後続の層に送る。クライアント・データが通信プロトコルを通過すると、このデータはクライアントが使用できる状態になる。
【００１１】
クライアント・デバイスは、サーバのネットワーク・インターフェースの物理層に於いて添付されたタイム・スタンプを、クライアント・デバイスがそのデータを受信したときに添付したタイム・スタンプと共に使用して、クライアントのローカル・システムをサーバのローカル・システム・クロックにロックする。サーバのローカル・システム・クロックはヘッドエンド・システム・クロックに周波数ロックされているので、クライアント・システム・クロックもヘッドエンド・システム・クロックに周波数ロックされていることになる。サーバからのクロック・サンプリングを頻繁に行うと、サーバのシステム・クロックに極めて近いクライアントのシステム・クロックを得ることができる。
【００１２】
その後、ブロードバンド・ネットワークからサーバにデータが到着したときに、データに添付されたタイム・スタンプを使用して、各データ・パケットをクライアントのバッファから読み出し、クライアントの音声／ビデオ・サブシステムに渡す正確な時間を決定することができる。このようにして、パケットがサーバに到着するタイミングは、クライアント・デバイスのＡ／Ｖサブシステムへの入力において正確に整合される。
【発明を実施するための最良の形態】
【００１３】
本発明について、図面を参照して説明する。
【００１４】
図２は、本発明によるタイム・スタンプを利用したディジタル・ホーム・ネットワークを示す図である。放送入力信号は、ヘッドエンド（図示せず）により提供され、放送受信機／マルチメディア・サーバ２０２により受信される。入力ＳＹＳ１、ＳＹＳ２、・・・ＳＹＳｎで示すように、サーバ２０２は、衛星、ケーブル、ＤＳＬ（ディジタル加入者回線）など、複数の放送発信元の１つから入力を受信するように構成することができる。この入力信号はトランスポート・パケットの形態にすることもでき、このトランスポート・パケットは、受信機２０２がそのローカル・システム・クロックをヘッドエンド・システムのクロックに周波数ロックするために使用するシステム・クロック回復（ＳＣＲ：Ｓｙｓｔｅｍ  Ｃｌｏｃｋ  Ｒｅｃｏｖｅｒｙ）情報を含んでいる。システム・クロック回復（ＳＣＲ）は、統合受信機デコーダ（ＩＲＤ：Ｉｎｔｅｇｒａｔｅｄ  Ｒｅｃｅｉｖｅｒ  Ｄｅｃｏｄｅｒ）内でバッファ・レベルを管理し、ビデオ・タイミング信号およびカラー・バースト信号を導出するために使用される。システム２００が適切に動作するためには、ネットワークに入ってから最終的なプレゼンテーションの時点までシステム２００全体でシステム・クロック回復（ＳＣＲ）情報とパケット・タイミングの関係を維持しなければならないことに留意することは重要である。
【００１５】
サーバ２０２が放送ネットワークから受信したデータは、トランスポート・パケット化される。これらのトランスポート・パケットの一部は、ヘッドエンドのシステム・クロックでクロック制御されたヘッドエンドに於けるカウンタのサンプルを伝送する。これらのカウンタ・サンプルとこれらのサンプルを伝送するトランスポート・パケットの到着時間とを使用して、サーバ２０２は、それ自体のローカル・システム・クロックをヘッドエンド・システムのクロックに周波数ロックすることができる。
【００１６】
本発明によれば、クライアント・デバイスへのパケットの正確な到着時間を確実に再現できるようにするために、放送ネットワークから到着する各パケットを、サーバ２０２が受信したときにタイム・スタンプＴ１でスタンピング（ｓｔａｍｐｉｎｇ）する。タイム・スタンプＴ１は、サーバ２０２のローカル・システム・クロックでクロック制御されたローカル・カウンタのサンプルである。タイム・スタンプＴ１およびパケットは一緒にバッファ２０５に記憶され、その後、ディジタル・ホーム・ネットワーク（Ｄｉｇｉｔａｌ  Ｈｏｍｅ  Ｎｅｔｗｏｒｋ：ＤＨＮ）を介して一緒に放送される。
【００１７】
少し遅れて、一群のトランスポート・パケットが、ヘッダ情報と共にまとめられて、ネットワークＤＨＮ上で送信されるデータ・フレームとなる。このデータ・フレームがネットワーク上に置かれる瞬間に、ローカル・システム・クロックで動作するサーバ２０２内のローカル・カウンタがサンプリングされて、カウンタ・サンプル・タイム・スタンプＴ２が生成される。タイム・スタンプＴ２は、カウンタ値がサンプリングされてからネットワークに入るまでの時間が一定且つ不変になるように、送出データ・フレームの最初に作成される。この時間が一定且つ不変であることは重要であり、そのために、カウンタのサンプリングおよびタイム・スタンプの配置は、ネットワーク・インターフェースの物理層ハードウェアで実行される。サーバ２０２からクライアント・デバイス２０４までネットワークを介して伝送する際の伝送遅延は一定且つ不変であるので、Ｔ２をサンプリングしてからタイム・スタンプＴ２を含むパケットがクライアント・デバイス２０４に到着するまでの全体的な伝送遅延波もまた、一定且つ不変である。更に、シンボル時が変化する可能性のあるネットワークでは、伝送時間が一定である限り、本発明は同期をもたらすことができる。
【００１８】
データ・フレームがクライアント・デバイス２０４に到着した瞬間に、クライアント・システム・クロックで動作するクライアント・デバイス２０４のローカル・カウンタがサンプリングされ、タイム・スタンプＴ３が生成される。このカウンタ値を到着したデータ・フレームのタイム・スタンプＴ２と比較して、クライアント・カウンタとサーバ・カウンタの間の差が変化していないことを確実にする。この差が時間と共に変化している場合には、クライアント・デバイスは、その電圧制御発振器（ＶＣＸＯ）の電圧を変化させてローカル・システム・クロックを変化させ、サーバ２０２のシステム・クロックと周波数ロックするようにする。このようにして、タイム・スタンプＴ２およびＴ３を使用して、サーバ２０２とクライアント・デバイス２０４のシステム・クロックを周波数ロックする。タイム・スタンプＴ２およびＴ３は、クライアント・デバイス２０４内で同期のために使用された後で、捨てることができる。この時点で、トランスポート・パケットおよびそれに関連づけられたタイム・スタンプＴ１を含むデータ・フレームを、クライアント・デバイス２０４のバッファ２０３に記憶することができる。
【００１９】
次のステップは、サーバ２０２の入力側に到着するパケットの速度と全く同じ速度で、クライアント・デバイス２０４のバッファからデータを除去するステップである。クライアント・デバイス２０４は、適当な量のネットワーク・ジッタを吸収できるだけのデータを受信用バッファに蓄積すると、受信用バッファからのデータの抽出を開始し、そのデータをクライアント・デバイス２０４内のデコーダに適した形式にする。クライアント・クロックに基づくローカル・カウンタは、最初のトランスポート・パケットと共に記憶されたカウント値で初期化され、メモリから抽出される。カウンタは、サーバ・クロックにロックされたクライアントのシステム・クロックでクロック制御されるので、その後のパケットはそれらの記憶されたタイム・スタンプ値がカウンタ値と一致するときにメモリから抽出することができる。このようにして、クライアント・デバイス２０４の受信用バッファからの除去速度は、データがサーバ２０２で受信された速度に一致する。データ・パケットのフォーマット並びにデータ・フレーム内でのタイム・スタンプＴ１、Ｔ２およびＴ３の配置を図３に示す。この図では、タイム・スタンプＴ１は、パケット化データが受信されたときに生成され、タイム・スタンプＴ２は、フレームがネットワークＤＨＮ上に置かれたときにデータ・フレーム中に置かれ、タイム・スタンプＴ３は、データ・フレームがネットワークＤＨＮから受信されたときに生成される。
【００２０】
イーサネット（登録商標）環境におけるデータ・パケットのフォーマットおよびデータ・フレーム内へのタイム・スタンプの配置について、以下で更に説明する。この実施形態のイーサネット（登録商標）パケットは、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコルを使用しているが、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）などその他の適当なプロトコルまたは「ｒａｗ」イーサネット（登録商標）を使用して、本発明のタイム・スタンプ付加機構を実施することもできることを理解されたい。本発明によれば、ＩＰヘッダは、タイム・スタンプの配置を必要とするデータ・フレームを識別するＩＰオプションを利用する。タイム・スタンプは、データ・フレーム内のＵＤＰヘッダの直後に配置される。送出パケットおよび入来パケットの拡張ＵＤＰヘッダには一意的な位置がある。
【００２１】
クロック同期タイム・スタンプＴ２およびＴ３は、ＵＤＰヘッダより後に配置される。タイム・スタンプＴ２は、３２ビット・タイム・スタンプであり、ＩＰパケットがオプション２５のセットを有するときに適用される。このタイム・スタンプは、物理ネットワーク層でデータ・フレーム内に配置される。この実施形態では、オプション２５を使用してフレーム内にタイム・スタンプが存在することを示すが、特定のＩＰアドレスおよびポート番号を指定するなど、タイム・スタンプを指示するその他の適当な方法を利用することができることを理解されたい。
【００２２】
タイム・スタンプＴ３も３２ビット入来タイム・スタンプであり、オプション２５を有するＩＰパケットが検出されたときに適用される。このタイム・スタンプも、物理ネットワーク層でデータ・フレーム内に配置される。以下の表１は、ＵＤＰデータ・フレーム内のタイム・スタンプＴ２およびＴ３の配置を示している。
【００２３】
【表１】
0004577816.tif 000002
物理層でタイム・スタンプを使用するので、本発明は、２つの独立ノード、この場合はサーバ２０２とクライアント・デバイス２０４を同期させるアルゴリズムを構成することができる。
【００２４】
データ・フロー制御タイム・スタンプＴ１は、放送ネットワークからデータを受信したときに、データ・ストリーム中に配置される。タイム・スタンプＴ１は、ヘッドエンドにおけるシステム・クロックに周波数ロックされたクロックだけ増分されたサーバ２０２のローカル・カウンタを使用して生成される。各トランスポート・パケットがサーバ２０２に到着するときに、そのパケットにタイム・スタンプＴ１を配置することにより、クライアント・デバイス２０４は、サーバ２０２での受信速度と同じビット速度を再現することができる。データ・フロー制御タイム・スタンプＴ１は、ＵＤＰペイロード中に配置される。表２は、本発明の例示的な実施形態で使用されるデータ・フォーマットを示している。このデータは、表１に示すＵＤＰデータ・フレームのデータ部に配置される。
【００２５】
【表２】
0004577816.tif 000003
【００２６】
データ・フレームがタイム・スタンプ付加されると、ＵＤＰチェックサム（ｃｈｅｃｋｓｕｍ）が検査される。このチェックサムがゼロでない場合には、古いチェックサムを新たに作成したチェックサムと交換する。ＵＤＰチェックサムについての決定を行った後で、新しい巡回冗長検査（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ：ＣＲＣ）を計算し、媒体アクセス制御（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ：ＭＡＣ）層中の古い巡回冗長検査値と置き換える。パケット問合せの任意の時点で、データ・フレームが有効なタイム・スタンプ・フレームではないと判定された場合には、データに変更を加えずにこのフレームを通過させる。
【００２７】
タイム・スタンプ値は、外部システム・クロックから生成される。この外部クロック・デバイスは３２ビット・カウンタである。カウンタのスナップショット（ｓｎａｐｓｈｏｔ）は、データ・フレームをネットワーク上に配置するときにとる。入来パケット上で、クライアント・デバイスのカウンタのスナップショットが取られる。これが有効なタイム・スタンプ付きパケットである場合には、このカウンタのスナップショットは、データ・フレームのペイロード部に配置される。３２ビット・カウンタは、外部システム・クロックと同期した自走式ロールオーバ・カウンタである。
【００２８】
以下、ある特定のデータ・フレームがタイム・スタンプを必要としているかどうかを判定し、必要としている場合にはタイム・スタンプ・データをどこに配置するかを決定する探索シーケンスについて説明する。第１のテストは、媒体アクセス制御フレームの妥当性検査である。媒体アクセス制御フレームを妥当性検査するには、巡回冗長検査を計算して比較する必要がある。巡回冗長検査テストで不合格であった場合には、フレームを変更せずに通過させて、無効な巡回冗長検査と共に受信されたデータ・フレームに有効な巡回冗長検査が付加されないようにする。巡回冗長検査テストに合格した場合には、媒体アクセス制御フレーム中のインターネット・プロトコル（ＩＰ）を発見する第２のテストを行う。８０２．３規格のセクション３．２．６「長さ（レングス）／タイプ（型）（Ｌｅｎｇｔｈ／Ｔｙｐｅ）」から、媒体アクセス制御フレーム中の２０個のオクテットが長さ／タイプ・フィールドである。ＩＴＥＦ  ＲＦＣ１７００イーサタイプ・テーブルから、インターネットＩＰ（ＩＰｖ４）は０×８００（１６進数）である。この値が０×８００でない場合には、パケットは通過する。長さ／タイプが０×８００である場合には、ＩＰヘッダのサイズを決定し、それがＵＤＰパケットを含むかどうかを判定する別のテストを実行する。媒体アクセス制御フレームの内容は、ＩＥＥＥ８０２．３のセクション３．１．１に指定されている。
【００２９】
媒体アクセス制御（ＭＡＣ：Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｔｎｒｏｌ）フレームがＩＰパケットを含む場合には、次のテストで、サイズおよびオプション設定を決定する。最初に、サイズを決定するために、ヘッダ長であるＩＰパケットの第２のニブル（ｎｉｂｂｌｅ：４ビット）を検査する。ヘッダ長は、ＩＰヘッダを構成する３２ビット・ワードの数である。オプションがなければ、ＩＰヘッダは通常２０バイトであり、従ってヘッダ長は５である。ＩＰヘッダ・オプションは、ＩＰヘッダの最初から２０桁のオフセットを有する。
【００３０】
パケットが有効なタイム・スタンプ・パケットであるかどうかを判定するプロセスについて次に説明する。このプロセスの任意のステップが失敗に終わった場合には、パケットは変更されずに通過する。最初に、ヘッダ長フィールドを検査して、それが５を超えるかどうかを判定する。５を超えている場合には、ＩＰヘッダの始点から２０バイトの位置にある第１のＩＰオプションを０×９９０４００００と比較して検査する。オプションのフォーマットを以下の表３に示す。
【００３１】
【表３】
0004577816.tif 000004
表４は、ＩＰオプション２５を含むＩＰヘッダを示す。
【００３２】
【表４】
0004577816.tif 000005
ＩＰオプションが上述の指定されたタイム・スタンプ付加オプションを含まない場合には、このシステムは、タイム・スタンプをデータ・フレーム中に配置する。タイム・スタンプは、ＩＰヘッダの直後のＵＤＰペイロード中に、特にペイロード部の最初に配置される。ＵＤＰヘッダの長さは８バイトである。ＵＤＰペイロードの最初の３２ビット・ワードは、送出タイム・スタンプであるタイム・スタンプＴ２のために確保されており、ＵＤＰペイロードのその次の３２ビット・ワードは、入来のタイム・スタンプであるＴ３のために確保されている。表１はＵＤＰデータ・フレームの概略的なフォーマットを示し、表２は、本発明の例示的な実施形態のために選択した具体的なフォーマットを示している。
【００３３】
本発明の重要な態様は、タイム・スタンプおよび巡回冗長検査（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ：ＣＲＣ）が物理層で生成され、データ・フレーム中に配置されることである。これにより、タイム・スタンプおよび巡回冗長検査は、データ・フレームが実際にネットワーク上に配置されるとき、またはネットワークから受信されるとき、データ・フレーム中に配置される。これにより、タイム・スタンプは、データがネットワークに入った時間およびデータがネットワークから受信された時間を正確に反映することができる。
【００３４】
上述の時間サンプリングを実施するシステムの要素を、ディジタル衛星放送（ＤＢＳ）受信機に関して更に詳細に説明する。ただし、ＤＳＬやケーブルなどその他のタイプの放送ネットワークで受信したマルチメディア・データに対して同様の時間サンプリングを実行することができることを理解されたい。
【００３５】
図４に示すように、サーバ２０２は、バスで接続された３つの機能ブロックからなる。衛星信号は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）ディジタル衛星放送（ＤＢＳ）チューナ４０２を通じてサーバ２０２に受信される。ホスト・マイクロプロセッサ・システム４０６は、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２から出た衛星信号からＰＣＩバス・インターフェース４０５を介してトランスポート・パケットを読み取る。次いで、ホスト・マイクロプロセッサ・システム４０６は、このデータを処理し、処理済みのデータを、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）も含めた周知のプロトコルを介してタイム・スタンプ・ボード４０４に送出する。また、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２およびタイム・スタンプ・ボード４０４は、共通のクロックを有する。このクロックは、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２で生成され、タイム・スタンプ・ボード４０４の時間基準として使用される。
【００３６】
動作を説明すると、ホスト・マイクロプロセッサ・システム４０６は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）ディジタル衛星放送（ＤＢＳ）チューナ４０２のＦＩＦＯ（Ｆｉｒｓｔ‐Ｉｎ  Ｆｉｒｓｔ‐Ｏｕｔ：先入れ先出し）メモリからトランスポート・パケットを読み出す。次いでこれらのパケットがネットワーク・プロトコル・ソフトウェアに従って処理され、その後、ネットワーク・フレームがタイム・スタンプ・ボード４０４のイーサネット（登録商標）媒体アクセス制御に書き込まれる。媒体アクセス制御は、イーサネット（登録商標）ネットワークが利用可能になるのを待機し、その後、タイム・スタンプ制御装置を介してイーサネット（登録商標）物理層（ＰＨＹｓｉｃａｌ  ｌａｙｅｒ：ＰＨＹ）にデータを送信する。タイム・スタンプ制御装置がビデオ・ネットワーク・パケットを検出すると、そのパケットにタイム・スタンプが付加される。タイム・スタンプＴ２は、回復されたクロック・ソースによりクロック制御されるタイム・スタンプ制御装置中のカウンタのサンプルである。サーバ２０２では、タイム・スタンプ制御装置のためのクロック・ソースは、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２内の電圧制御発振器（ＶＣＸＯ）である。
【００３７】
図５は、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２を示すブロック図である。ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２は、主に３つの機能を実行する。第１に、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２は、適切な衛星トランスポンダ（中継器）が確実に選択され、同調され、復調されるようにする。これは、衛星チューナ５０２および復調器５０４により実施される。これらの装置は、衛星信号に対して周知の変換を行って、ディジタル・トランスポート・ストリームにする。
【００３８】
第２に、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２は、トランスポート・ストリームのパケットをフィルタリングする。チューナ制御装置５０６は、ホスト・マイクロプロセッサ・システム４０６から要求されたトランスポート・パケットのみをフィルタ除去する論理を含んでいる。その後、トランスポート・パケットはＦＩＦＯバッファ５１２に記憶される。その後、ホスト制御装置５０６は、ＰＣＩバス・インターフェース４０５を介してＦＩＦＯバッファ５１２からパケットを読み出すことができる。ＰＣＩバス・インターフェースの助けとなるように、ＰＣＩブリッジ・チップ５０８を使用する。
【００３９】
第３に、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２は、クロック回復を実行する。チューナ制御装置５０６は、フラッシュ／ＳＲＡＭ５１４からのソフトウェア命令を実行する。電圧制御結晶発振器（ＶＣＸＯ）５１０の周波数を調節するためのソフトウェア制御ループが作成される。電圧制御発振器（ＶＣＸＯ）５１０のクロックによるカウンタは、タイム・スタンプを含むパケットがサービス・プロバイダのヘッドエンドから来るたびにサンプリングされる。チューナ制御装置５０６は、電圧制御発振器（ＶＣＸＯ）５１０中の正規化したエラーとヘッドエンド・クロックとを比較する。このようにして、ローカル・クロックを、ヘッドエンド・クロックと同じ周波数に調節することができる。
【００４０】
更に、電圧制御発振器（ＶＣＸＯ）５１０からの回復したシステム・クロックを使用して、タイム・スタンプＴ１を各トランスポート・パケットに付加することができる。タイム・スタンプＴ１は、パケットがチューナ４０２に受信された瞬間のローカル・カウンタのサンプルに基づいている。
【００４１】
ネットワーク・クライアント２０４の要素を図６に示す。データは、クライアントのタイム・スタンプ・ボード６０２に到着し、到着した瞬間にデータ・フレームにタイム・スタンプＴ３が付加される。パケットは、ＰＣＩバス６０５を介してタイム・スタンプ・ボード６０２に接続されたクライアント制御装置６０８により処理される。トランスポート・パケットがネットワーク・フレームから抽出され、その後、トランスポート・フォーマッタ（ｔｒａｎｓｐｏｒｔ  ｆｏｒｍａｔｔｅｒ）ボード６０４に書き込まれる。トランスポート・フォーマッタ６０４の出力は、デコーダ６０６が使用することもできるシリアル・トランスポート・ストリームである。デコーダ６０６の出力は、テレビジョンその他の表示装置に接続される。図８は、デコーダ６０６の要素を示す。
【００４２】
クライアント制御装置６０８は、クロック回復アルゴリズムを実行する役割を担う。データ・フレームがサーバ２０２を出発する時間Ｔ２を、クライアント２０４に到着する時間Ｔ３と比較する。このようにして、クライアント制御装置６０８は、デコーダの電圧制御発振器（ＶＣＸＯ）８１２がサーバの電圧制御発振器（ＶＣＸＯ）５１０より高速であるか低速であるかを判定する。クライアント制御装置６０８は、低速シリアル（ＲＳ−２３２）接続を介して、デコーダの電圧制御発振器（ＶＣＸＯ）８１２の速度を上げる、または落とすよう指示するコマンド（命令）をデコーダ制御装置８１０に送信する。
【００４３】
クライアント・デバイスのタイム・スタンプ・ボードは、クライアント・デバイス内の回復されたクロック・ソースがＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２の電圧制御発振器（ＶＣＸＯ）５１０ではなくデコーダ６０６のクロックから得られたものであることを除けば、サーバ・デバイスのタイム・スタンプ・ボードと同様である。
【００４４】
トランスポート・フォーマッタ６０４の要素を図７に示す。トランスポート・フォーマッタ６０４は、ＰＣＩバス７０２を介してクライアント制御装置６０８に接続される。ＰＣＩバス・インターフェースは、このＰＣＩバスを、トランスポート・フォーマッタ制御装置７０４に接続された標準的なローカル・バスに変換する。トランスポート・フォーマッタ制御装置７０４は、ＴＴＬ論理レベルでシリアル・トランスポート・ストリームを出力する。高速シリアル変換器７０６の回路は、これらの信号を低電圧差分信号に変換し、これらの信号がデコーダ６０６に送られる。
【００４５】
トランスポート・フォーマッタ制御装置７０４は、２つの動作モードを有する。第１は、ＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２のチューナ制御装置５０６により付加された任意選択のタイム・スタンプに従ってトランスポート・パケットをデコーダ６０６に転送するフロー制御モードである。このようにして、トランスポート・パケットがトランスポート・フォーマッタ６０４から出発する相対的な時間が、トランスポート・パケットがチューナ制御装置５０６に到着する時間と一致する。これにより、デコーダ６０６の入力におけるパケットのタイミングがＰＣＩディジタル衛星放送（ＤＢＳ）チューナ４０２のチューナ５０２および復調器５０４と直接関係があるように見えるという効果がある。
【００４６】
第２の動作モードは、トランスポート・フォーマッタ制御装置７０４から直接デコーダ６０６にデータを流すものである。このモードでは、デコーダ６０６は内部にデータをバッファリングすることを必要とされる。これにより、デコーダ６０６は、第１のモードより多くの記憶容量を有する必要がある。
【００４７】
データは、トランスポート・フォーマッタ６０４から、デコーダ６０６の高速シリアル・インターフェース８０２に到着する。トランスポート・プロセッサ８０４は、入来するトランスポート・パケットを分類し、それらを適切なバッファに入れる（ビデオ、音声、番組ガイド、その他のデータなど）。ビデオ・データおよび音声データは、ビデオ／音声デコーダ８０６で圧縮解除される。その後、圧縮解除されたディジタル・データは、ＮＴＳＣエンコーダ／音声ＤＡＣ８０８を介してアナログＮＴＳＣ信号に変換される。
【００４８】
このタイム・スタンプ付加方法を実施する際に使用するタイム・スタンプ付加ボードについて、次に説明する。サーバ２０２に関連するタイム・スタンプ付加ボードについて上述したが、クライアント２０４に関連するタイム・サンプリング・ボードも同様である。タイム・スタンプ付加ボード４０４は、１０Ｍｂ／ｓおよび１００Ｍｂ／ｓの何れのデータ速度にも対応できるＰＣＩイーサネット（登録商標）ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｅｎｔｅｒ）である。これは、ＵＤＰチェックサムをリセットし、３２ビット・タイム・スタンプをデータ・フレーム中に配置し、指定されたデータ・フレームの巡回冗長検査を計算し直すことができる。外部インターフェースにより、ボード４０４をＰＣのＰＣＩに一体化する、またはＰＣＩアーキテクチャに組み込むことができる。タイム・スタンプ値を生成するために外部クロック・インターフェースを設ける。
【００４９】
図９は、タイム・スタンプ付加ボード４０４を示すブロック図である。タイム・スタンプ付加ボードは、イーサネット（登録商標）ネットワーク９０２に接続された、例えばＲＪ４５などの入力ジャック９０４を含んでいる。入力ジャック９０４は、１０／１００Ｂａｓｅ−ＴＸ  ＰＨＹ変圧器９０６に接続される。変圧器９０６は物理層デバイス９０８に接続され、この物理層デバイス９０８は、１０ＢＡＳＥ−Ｔイーサネット（登録商標）プロトコルおよび１００ＢＡＳＥ−Ｘイーサネット（登録商標）プロトコルの何れにも対応するＰＭＤ（Ｐｈｙｓｉｃａｌ  Ｍｅｄｉｕｍ  Ｄｅｐｅｎｄｅｎｔ）サブレイヤが一体化されたフル機能（ｆｕｌｌ  ｆｅａｔｕｒｅ）物理層デバイスである。物理層デバイス９０８は、物理層デバイス９０８とタイム・スタンプ制御装置９１６の間で電圧レベルを変換するバス・バッファ９１２に接続される。バス・バッファ９１２は、低電圧ＣＭＯＳ８ビットバス・バッファである。これは低電力且つ高速の３．３Ｖのアプリケーションで理想的であり、５Ｖ信号環境と入力および出力の双方についてインターフェースをとることができる。バス・バッファ９１２はタイム・スタンプ制御装置９１６に接続され、タイム・スタンプ制御装置９１６は、ＵＤＰチェックサムのリセット、タイム・スタンプの配置、および新しい巡回冗長検査の再計算を含む、受信方向および送信方向の双方の有効なデータ・フレームのタイム・スタンプ付加機能の大部分を制御し、実行する。
【００５０】
タイム・スタンプ制御装置９１６は、タイム・スタンプ制御装置９１６を動作させるプログラムを記憶およびロードする構成デバイス９１８に接続される。また、タイム・スタンプ制御装置９１６は、１０Ｍｂ／ｓおよび１００Ｍｂ／ｓの両方のデータ速度に対応するＬＡＮ制御装置であるイーサネット（登録商標）媒体アクセス制御ユニット９１４に接続される。イーサネット（登録商標）媒体アクセス制御９１４は、ＰＣＩローカル・バスまたはカードバスに対する直接のインターフェースを提供する。
【００５１】
タイム・スタンプ制御装置９１６は、ＰＨＹおよびＭＡＣに対するＭＩＩ（Ｍｅｄｉａ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｉｎｔｒｅｆａｃｅ）インターフェースを提供する。図１０に示すように、制御装置９１６は、受信機ユニット１００２および送信機ユニット１００４からなる。これら２つのユニットは別々に実装されるが、同じ外部システム・クロックおよびリセット信号を共用する。
【００５２】
図１１に示すように、受信機ユニット１００２は、受信機制御装置１１０２、タイム・スタンプ生成器１１１４、シフト・レジスタ１１１２、ＣＲＣ（巡回冗長検査）検証モジュール１１１０、新ＣＲＣ（巡回冗長検査）計算モジュール１１０６、３：１ＭＵＸ（マルチプレクサ）１１０８、および４：１ＭＵＸ（マルチプレクサ）１１０４を含んでいる。受信機制御装置１１０２は、データ・ストリームの状態を検出して、３：１ＭＵＸおよび４：１ＭＵＸが適切なデータ（受信データ、リセットＵＤＰチェックサム、タイム・スタンプ、新ＣＲＣ）を出力できるようにする。
【００５３】
新ＣＲＣ計算モジュール１１０６は、変更されたデータ・ストリーム（タイム・スタンプおよびリセットＵＤＰチェックサムを有するイーサネット（登録商標）パケット）のＣＲＣチェックサムを計算し、変更されたデータ・ストリームは、この新しいＣＲＣがその中に配置された後で、ＭＡＣに到着する。受信機ユニット１００２と送信機ユニット１００４の違いは、受信機ユニット１００２がＣＲＣ検証モジュール１１１０を含むことである。受信されたパケットのＣＲＣは、このデータが媒体上で破壊されていることがあるので、検証する必要がある。ＣＲＣが正しくない場合、これはデータが実際に破壊されていることを示す。このデータは、新たな正しいＣＲＣを付加せずに、誤ったＣＲＣを備えた状態のままＭＡＣまで通過させる。
【００５４】
制御装置１１０２は、全てのモジュールおよび構成要素の動作を同期させ、制御する。受信クロックおよび外部システム・クロックの２つのクロックを使用する。タイム・スタンプは、外部クロックにより生成され、全てのパケットの最初の受信クロック・ドメインに保持される。データは、ＰＨＹ（物理層）から受信され、適当なデータ（受信データ、リセットＵＤＰチェックサム、タイム・スタンプ、新ＣＲＣ）がＩＥＥＥ８０２．３に従ってＭＡＣ（媒体アクセス制御）に送信される。
【００５５】
データが受信されると、タイム・スタンプＴ３が適当な領域に配置され、新しいＣＲＣが計算されて、ＭＡＣ層の古いＣＲＣ値と置き換えられる。この場合も、本発明の重要な態様は、タイム・スタンプおよびＣＲＣが、データ・フレームをネットワークから受信したときに物理層において生成され、データ・フレーム中に配置されることである。従って、データ・フレームをネットワークから受信した実際の時間を反映するタイム・スタンプおよびＣＲＣが、ＭＡＣ層に移動する際に、迅速且つ効率的にデータ・フレーム中に配置される。パケット伝送の任意の時点で、データ・フレームが有効なタイム・スタンプ・フレームではない、または受信時にエラーがあったと判定された場合には、このデータ・フレームはデータに変更を加えずに通過させる。
【００５６】
図１２に示すように、送信機ユニット１２０２は、送信機制御装置１２０２、タイム・スタンプ生成器１２１０、シフト・レジスタ１２０８、新ＣＲＣ（巡回冗長検査）計算モジュール１２０６、３：１ＭＵＸ（マルチプレクサ）１２１２および４：１ＭＵＸ（マルチプレクサ）１２０４を含んでいる。送信機制御装置１２０２は、各適当なプロセスを行うように全てのモジュールおよび構成要素の動作を制御する。送信クロックおよび外部システム・クロックの２つのクロックを使用する。タイム・スタンプは、外部クロックにより生成され、全てのパケットの最初の受信クロック・ドメインに保持される。この場合も、タイム・スタンプは物理層において生成され、データ・フレーム中に配置される。
【００５７】
好ましい設計を有するものとして本発明について説明したが、本発明は、本開示の趣旨および範囲を逸脱することなく、更に変更することができる。例えば、タイム・スタンプ付加機構は、ＨＰＮＡ（Ｈｏｍｅ  ＰＮＡ）やＰＬＣ（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ）、例えばＩＥＥＥ８０２．１１ｂなどのある種の無線ネットワークなど（ただし、これらに限定されない）、その他の非同期ネットワークにおいて実施することもできる。従って、本願は、本発明の一般的な原理を用いた本発明の任意の変形形態、用途、改変形態をカバーするものである。更に、本願は、本発明が関係し、且つ添付の特許請求の範囲内に含まれる当技術分野における既知または従来の実施の範囲内に収まる本開示からの逸脱もカバーするものである。
【図面の簡単な説明】
【００５８】
【図１】複数のクライアント・デバイスに接続されたメディア・サーバを含む非同期マルチメディア・ネットワークを示す図である。
【図２】本発明によるネットワークの様々な点でデータ中に配置されるタイム・スタンプを含む非同期マルチメディア・ネットワークの要素を示すブロック図である。
【図３】本発明による非同期マルチメディア・ネットワークで利用されるタイム・スタンプを含むデータ・フレームのフォーマットを示す図である。
【図４】衛星信号を受信するようになされた放送用受信機の要素を示すブロック図である。
【図５】図４に示すＰＣＩディジタル衛星放送（ＤＢＳ）チューナの要素を示すブロック図である。
【図６】図２に示すクライアント・デバイスの要素を示すブロック図である。
【図７】図６に示すトランスポート・フォーマッタ・ボードの要素を示すブロック図である。
【図８】図６に示すクライアント・ビデオ・デコーダの要素を示すブロック図である。
【図９】本発明による非同期マルチメディア・メットワークで使用されるタイム・スタンプ・ボードを示すブロック図である。
【図１０】図９のタイム・スタンプ・ボード中のタイム・スタンプ制御装置を示すブロック図である。
【図１１】図１０に示すタイム・スタンプ制御装置中の受信機ユニットを示すブロック図である。
【図１２】図１０に示すタイム・スタンプ制御装置中の送信ユニットを示すブロック図である。
【図１】
0004577816.tif 000006
【図２】
0004577816.tif 000007
【図３】
0004577816.tif 000008
【図４】
0004577816.tif 000009
【図５】
0004577816.tif 000010
【図６】
0004577816.tif 000011
【図７】
0004577816.tif 000012
【図８】
0004577816.tif 000013
【図９】
0004577816.tif 000014
【図１０】
0004577816.tif 000015
【図１１】
0004577816.tif 000016
【図１２】
0004577816.tif 000017