(57)【特許請求の範囲】
【請求項１】
複数のデータフレームを、コンピュータとビデオクライアントとの間で接続された高速のシリアルインタフェースを通じて相互に通信している前記コンピュータと前記ビデオクライアントとの間で、複数のチャンネルを介して順次に伝送するための装置であって、
入力信号を受け取るように構成された回路と、
前記データフレームを生成するように構成された回路と、
各前記データフレームに関して、フレームヘッダを提供するように構成された回路と、
各前記データフレームに関して、前記フレームヘッダの後に続くビデオデータを提供するように構成された回路と、
各前記データフレームに関して、前記ビデオデータの後に続くオーディオデータを提供するように構成された回路と、
各データフレームを複数の部分に分割すると共に、前記フレームヘッダ及び前記複数の部分の内の少なくとも１つを、前記複数のチャンネルの内の対応する１つを介して送信するように構成された回路と
を備えることを特徴とする装置。
【請求項２】
各前記データフレームに関して、前記ビデオデータと前記オーディオデータとの間に与えられるオーディオヘッダを提供するように構成された回路を更に備える
ことを特徴とする請求項１に記載の装置。
【請求項３】
前記フレームヘッダが、フレームカウント同期化ビットを有する
ことを特徴とする請求項１に記載の装置。
【請求項４】
各前記データフレームに関して、垂直帰線消去部分を提供するように構成された回路を更に備える
ことを特徴とする請求項３に記載の装置。
【請求項５】
前記フレームカウント同期化ビットが、前記垂直帰線消去部分と同期化される
ことを特徴とする請求項４に記載の装置。
【請求項６】
各前記データフレームに関して、オーディオサイクルカウント値を備えるオーディオヘッダを提供するように構成された回路を更に備える
ことを特徴とする請求項１に記載の装置。
【請求項７】
前記オーディオデータが、前記ビデオデータに対してサンプリングされる
ことを特徴とする請求項１に記載の装置。
【請求項８】
前記オーディオデータが、フレーム当たりのオーディオサンプルカウント値を含む
ことを特徴とする請求項１に記載の装置。
【請求項９】
前記オーディオサンプルのカウント値が、サンプル当たりのバイト数を示す
ことを特徴とする請求項８に記載の装置。
【請求項１０】
前記オーディオサンプルカウント値が、“ＡＮＳＩ／ＳＭＰＴＥ  ２７２Ｍ”の仕様に従って変化する
ことを特徴とする請求項８に記載の装置。
【請求項１１】
前記フレームヘッダが、ビデオデータのサンプル当たりのビット数を示すフォーマットフラグを含む
ことを特徴とする請求項１に記載の装置。
【請求項１２】
前記フレームヘッダが、ＳＭＰＴＥタイムコードを含む
ことを特徴とする請求項１に記載の装置。
【請求項１３】
前記フレームヘッダが、増加フレームカウンタを含む
ことを特徴とする請求項１に記載の装置。
【請求項１４】
前記フレームヘッダが、“ＡＮＳＩ／ＳＭＰＴＥ  ２７２Ｍ”の仕様によって指定されたオーディオ抑揚における位置を示す前記オーディオサイクルカウント値を含む
ことを特徴とする請求項１に記載の装置。
【請求項１５】
前記フレームヘッダが、オーディオチャンネルカウント値を含む
ことを特徴とする請求項１に記載の装置。
【請求項１６】
前記フレームヘッダが、ブロックサイズバイトカウント値を含む
ことを特徴とする請求項１に記載の装置。
【請求項１７】
前記ブロックサイズバイトカウント値が、前記オーディオデータにいくつのオーディオのバイトが含まれるかを示す
ことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記フレームヘッダが、オーディオフォーマットフラグを含む
ことを特徴とする請求項１に記載の装置。
【請求項１９】
前記フレームヘッダが、ビデオフォーマットフラグを含む
ことを特徴とする請求項１に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、広くネットワークを介した通信における装置に関するものである。具体的には、本発明は、ビデオデータのブロック、及びビデオデータのブロックに続くオーディオデータのブロックを従えているヘッダの存在によって特徴付けられるフレームにおいてデータを伝送することに関するものである。
【背景技術】
【０００２】
“バス”は、１つの装置が、１つ以上の他の装置に情報を伝送することを可能にする、２つ以上の電気装置を相互接続する信号線の集まりである。コンピュータ、及びコンピュータ関連の製品に使用される、多くの異なる種類のバスがある。２〜３の例を挙げると、例は、ペリフェラルコンポーネントインターコネクト（ＰＣＩ：Peripheral Component Interconnect）バス、インダストリスタンダードアーキテクチャ（ＩＳＡ：Industry Standard Architecture）バス、及びユニバーサルシリアルバス（ＵＳＢ：Universal Serial Bus）を含む。バスの動作は、一般的に、どのようにデータがバスを介して伝送されるべきか、どのようにデータを求める要求が承諾されるか等、バスの電気的特性のような様々な関係を指定する標準によって定義される。データを伝送する、データを要求する等のような活動を実行するためにバスを使用することは、一般的に“サイクル”を実行する（running a "cycle"）と呼ばれる。バスプロトコルを標準化することは、バスに接続された装置間の効果的な通信を、たとえそのような装置が異なる製造業者によって作られるとしても、保証するのに役立つ。特定のバス上で使用される装置を作って、売ることを望むあらゆる会社は、装置が接続することになるバスに特有のインタフェースを備えた、その装置を提供する。装置を特定のバス標準に関して設計することは、装置が、同じバスに接続された他の全ての装置と、たとえそのような他の装置が異なる製造業者によって作られるとしても、適切に通信することができることを保証する。従って、例えば、ＰＣＩバス上での動作のために設計された内部ファックス／モデム（すなわち、パーソナルコンピュータに内蔵される）は、たとえＰＣＩバス上の各装置が異なる製造業者によって作られるとしても、ＰＣＩバス上の他の装置にデータを送信すると共に、他の装置からデータを受信することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３２０３４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、様々な種類の家電装置にバスインタフェースを内臓することを推し進めるマーケットがあり、それは、そのような装置が対応するバスインタフェースによって他の装置に接続されることを可能にする。例えば、デジタルカメラ、デジタルビデオテープレコーダ、デジタルビデオディスク（“ＤＶＤ”）、プリンタは、“ＩＥＥＥ  １３９４”バスインタフェースによって利用可能になっている。ＩＥＥＥ（“米国電気電子技術者協会”：Institute of Electrical and Electronics Engineers）１３９４バスは、例えば、カメラによって獲得された画像がプリンタに出力されるか、もしくは、コンピュータに電子的に記憶され得るように、デジタルカメラが、プリンタ、またはコンピュータと接続されることを可能にする。更に、デジタルテレビは、“ＩＥＥＥ１３９４”バス経由で、コンピュータ、またはコンピュータネットワークと接続され得る。
【０００５】
しかしながら、多くの装置は、全く“ＩＥＥＥ１３９４”インタフェースを備えることなく存在する。そのような装置は、上述のように他の装置と接続されることができないので、これは、問題を提示する。他の方法では“ＩＥＥＥ１３９４”バスに接続されることができない装置に接続性を提供するために、この問題を克服する心からの必要性がある。
【課題を解決するための手段】
【０００６】
本発明は、コンピュータとビデオクライアントとの間のデータフレームの伝送のためのデータストリームフォーマットを提供することによって、上で論じられた問題を解決する。コンピュータ、及びビデオクライアントは、コンピュータとビデオクライアントとの間で接続されたインタフェースを通じて相互に通信している。データストリームは、各データフレームに関して、フレームヘッダ、フレームヘッダの後に続くビデオデータ、及びビデオデータの後に続くオーディオデータを有する、順次に伝送されたデータフレームを含む。一実施例において、データフレームは、同様に、ビデオデータとオーディオデータとの間に与えられるオーディオヘッダを含む。垂直帰線消去部分と同期化されるフレームカウント同期化ビットが含まれ得る。一実施例において、オーディオヘッダは、オーディオサイクルカウント値を含む。一実施例において、オーディオデータは、ビデオデータに対してサンプリングされる。一実施例において、オーディオデータは、フレーム当たりのオーディオサンプルカウント値を含む。一実施例において、オーディオサンプルカウント値は、サンプル当たりのバイト数を示すと共に、オーディオサンプルカウント値は、“ＡＮＳＩ／ＳＭＰＴＥ  ２７２Ｍ”の仕様に従って変化し得る。フレームヘッダは、同様に、ビデオデータのサンプル当たりのビット数を示すフォーマットフラグを含むことができる。一実施例において、フレームヘッダは、ＳＭＰＴＥタイムコード、及び増加フレームカウンタ、及び“ＡＮＳＩ／ＳＭＰＴＥ  ２７２Ｍ”の仕様によって指定されたオーディオ抑揚における位置を示すオーディオサイクルカウント値を含む。一実施例において、フレームヘッダは、オーディオチャンネルカウント値、及びオーディオデータにいくつのオーディオのバイトが含まれるかを示すブロックサイズバイトカウント値を含む。オーディオフォーマットフラグ、及びビデオフォーマットフラグは、同様に、フレームヘッダに含まれることができる。
【０００７】
別の特徴において、本発明は、ヘッダをデータの“ＳＤＴＩ”準拠のフレームに付与する処理と、ヘッダ及び“ＳＤＴＩ”準拠のフレームを、“ＩＥＥＥ  １３９４ｂ”準拠のインタフェースを介して、ビデオクライアントとコンピュータとの間で伝送する処理とを有するデータ伝送の方法を提供する。一実施例において、“ＳＤＴＩ”準拠のフレームは、第１の部分と第２の部分とに分割されると共に、第１のチャンネルを介して、ヘッダ及び第１の部分を伝送し、第２のチャンネルを介して、ヘッダ及び第２の部分を伝送する。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施例に関連して使用される主要な構成要素をブロック図形式で説明する図である。
【図２】本発明の実施例に基づくフレームのフォーマットを説明する図である。
【図３Ａ】最初のデータパケットのフォーマットを説明する図である。
【図３Ｂ】次のデータパケットのフォーマットを説明する図である。
【図４Ａ】本発明の実施例に基づくデータパケットの中のビデオデータの構成を説明する図である。
【図４Ｂ】本発明の実施例に基づくデータパケットの中のビデオデータの構成を説明する図である。
【図５Ａ】本発明の実施例に基づくデータパケットの中のオーディオデータの構成を説明する図である。
【図５Ｂ】本発明の実施例に基づくデータパケットの中のオーディオデータの構成を説明する図である。
【図６】本発明の実施例に基づくフレームに含まれるヘッダの要素を説明する図である。
【図７】本発明の実施例に基づくフレームに含まれるヘッダの要素を説明する図である。
【図８】本発明の実施例に基づくフレームを構成するために結合するパケットの集まりを説明する図である。
【図９Ａ】“ＳＤＴＩ”フレームの変形が本発明の実施例に基づいて使用される、本発明の代替実施例を説明する図である。
【図９Ｂ】“ＳＤＴＩ”フレームの変形が本発明の実施例に基づいて使用される、本発明の代替実施例を説明する図である。
【図９Ｃ】“ＳＤＴＩ”フレームの変形が本発明の実施例に基づいて使用される、本発明の代替実施例を説明する図である。
【図９Ｄ】“ＳＤＴＩ”フレームの変形が本発明の実施例に基づいて使用される、本発明の代替実施例を説明する図である。
【図９Ｅ】送信器が複数のチャンネルの全域で“ＳＤＴＩ”ストリームを分割する、代替実施例を説明する図である。
【図１０】本発明の実施例に基づいてコンピュータとハードウェアインタフェースとの間で外部クロックを提供するために実行される動作をフローチャート形式で説明する図である。
【図１１】本発明の実施例に基づくインタフェース装置のためのレジスタメモリマップを説明する図である。
【図１２】本発明のインタフェース装置の中に含まれるＡ／Ｖグローバルレジスタの構成を説明する図である。
【図１３】本発明のインタフェース装置の中に含まれるグローバル状態レジスタの構成を説明する図である。
【図１４】本発明のインタフェース装置に含まれる等時間間隔制御レジスタを説明する図である。
【図１５】本発明のインタフェース装置に含まれるフロー制御レジスタの構成を説明する図である。
【図１６】本発明のインタフェース装置に含まれる等時間間隔チャンネルレジスタの構成を説明する図である。
【発明を実施するための形態】
【０００９】
本発明の多くの他の特徴、及び利点は、添付図面を参照して考察されたとき、以下の詳細な説明を読むことによって認識されることになる。
【００１０】
図１に対して注意を向けると、バス１０４によりインタフェース１０６に接続されたコンピュータ１００と、クライアント１０２との間でオーディオデータ、及びビデオデータを伝送するために接続された構成要素がブロック図形式で示される。好ましい実施例におけるコンピュータ１００は、ビデオデータ、及びオーディオデータの処理が可能である計算装置であると共に、利用者に認識できる形式でそれを表示する。そのような装置は、デスクトップコンピュータ、ラップトップコンピュータ、及びパームトップコンピュータを含む。ここに参照されるクライアント１０２は、ビデオ消費者、またはビデオ制作者であると共に、デジタルカメラのような装置、及びリニアアクセスデバイス、及びランダムアクセスデバイスのようなビデオ記憶装置を含む。ここで参照されるバス１０４は、バス１０４を介して通信する装置によって順守されるシリアルプロトコルと同様に、コンピュータ１００とインタフェース１０６との間の物理的接続を含む。好ましい実施例において、バス１０４は、ファイヤーワイヤー（登録商標）として知られている“ＩＥＥＥ  １３９４”シリアルバスプロトコルを利用する。インタフェース１０６は、クライアント１０２からのアナログ入力及びデジタル入力の両方を受信すると共に、コンピュータ１００上で実行されたオーディオ／ビデオプレーヤーによって使用され得る走査線（scanned line）に入力を変換する。代替実施例において、インタフェース１０６は、クライアント１０２からのデジタル圧縮／非圧縮信号を受信すると共に、信号全体、またはその信号のサブセットを伝送する。一実施例において、インタフェース１０６は、入力をフレーム１０８に分割し、バス１０４を介してそれらをコンピュータ１００に入力する。
【００１１】
フレーム１０８のフォーマットは、図２において説明される。フレーム１０８は、フレームヘッダ１１０、ビデオブロック１１２、オーディオブロック１１４、及び任意にオーディオヘッダ１１６を含む。オーディオブロック１１４におけるオーディオデータは、ビデオブロック１１２におけるビデオデータに対してサンプリングされる。フレーム当たりのオーディオサンプルカウント値は、参照することによってその全体がここに組み込まれる“ＡＮＳＩ／ＳＭＰＴＥ  ２７２Ｍ”の仕様において定義された数に従って変化する。オーディオサンプルカウント値の抑揚は、ＮＴＳＣフレーム率（２９．９７ｆｐｓ）を横断して、１秒当たりのサンプルの整数値を分割するために必要である。同様に、フレーム１０８のサイズは、ＰＡＬまたはＮＴＳＣ、及び、８ビットまたは１０ビットのビデオデータのような様々なビデオフォーマット、そして、４８［ＫＨｚ］及び９６［ＫＨｚ］の１６ビット及び２４ビット等のようなオーディオフォーマットに対応するために、異なり得る。同様に、圧縮データのフレームサイズは、圧縮形式に対応するために異なり得る。一実施例において、ビデオブロック１１２及びオーディオブロック、または圧縮ブロックは、フレーム１０８の分析を簡単にすると共に、ダイレクトメモリアクセスプログラムのようなアプリケーションによる少ないオーバーヘッド処理を必要とするために、所定のサイズのブロックである。ビデオブロック１１２、もしくはオーディオブロック１１４の全てがデータで完全に満たされていない場合には、ブロック１１２、１１４の残っている部分は、ゼロで満たされることができる。一実施例において、ビデオブロック１１２、及びオーディオブロック１１４に含まれるデータは圧縮されず、コンピュータ１００上で動作する復元プログラムによって必要とされる処理のオーバーヘッドと同様に、インタフェース１０６に関する処理のオーバーヘッドを更に減少する。
【００１２】
クライアント１０２から受信された入力を変換すると共に、それを走査線に変換し、そしてそれをフレーム１０８に編成すると、インタフェース１０６は、コンピュータ１００との同期化を行うために、各垂直帰線消去期間においてフレームを送信する。コンピュータ１００は、受信されたフレームの周波数から垂直帰線消去期間を取得すると共に、それ自身をインタフェース１０６から受信される入力フレーム１０８のオーディオデータ、及びビデオデータと同期させ得る。この方法において、フレームが受信されるとき、各フレームに関する同期化を行う必要性がないので、処理資源は温存され、従って、コンピュータ１００上でのオーディオ表示、及びビデオ表示の更に高品質の性能を供給する。
【００１３】
図３Ａ、及び図３Ｂは、最初のデータパケットのフォーマットと、次のデータパケットのフォーマットをそれぞれ説明する。
【００１４】
図４Ａ、及び図４Ｂは、データパケットの中のビデオデータの構成を説明する。図５Ａ、及び図５Ｂは、データパケットの中のオーディオデータの構成を説明する。
【００１５】
図６は、フレームヘッダ１１０の内容を説明する。含まれるのは、サンプル当たりのビットがいくつであるかを示すフォーマットフラグ１３０、ＳＭＰＴＥタイムコード１３２、増加フレームカウンタ１３４、オーディオサイクルカウント値１３６、オーディオサンプルカウント値１３８、チャンネルカウント値１４０、ブロックサイズバイトカウント値１４２、オーディオフォーマットフラグ１４４、及びビデオフォーマットフラグ１４６である。オーディオサンプルカウント値１３８は、抑揚と一致しているサンプルの数を示す。オーディオサイクルカウント値１３６における値は、抑揚の中での位置を示す。フレームの抑揚は、サイクルパターンを形成する。
【００１６】
代替実施例において、フレームヘッダ１１０のいくつかの内容は、任意のオーディオヘッダ１１６へ移動され得るか、もしくは複写され得る。フレームヘッダ１１０の代替の内容は、図７において示され、バイトカウント、データ長、及びフレームビットを表す。
【００１７】
図８において説明されたように、フレーム１０８は、所定のサイズの複数のパケット１５０から構成されている。各パケットに使用されるのは１３９４の等時間間隔パケットヘッダである。本発明に基づくデータ伝送は、フレームの始まりを発見するために、同期化ビットを利用する。フレーム１０８における第１のパケットは、同期化ビットによって示されている。これは、データのストリームが、コンピュータ１００によって、それが受信されるときに識別されることを可能にし、更に、コンピュータ１００がインタフェース１０６から受信されたフレームのフローに同期化することを可能にすることによって、処理のオーバーヘッドを減少させる。
【００１８】
本発明の代替実施例においては、図９Ａから図９Ｅまでで説明されたように、シリアルディジタルインタフェース（ＳＤＩ）標準を順守するフレームが利用され得る。これらの実施例において、バス１０４は、ＳＤＩ標準によって規定されるデータ転送率制限に対応するために、“ＩＥＥＥ  １３９４Ｂ”シリアルバスプロトコルを順守する。上述のように、インタフェース１０６は、走査線を生成することによって、受信された入力からフレームを形成し、オーディオデータ及びビデオデータのインタレースの解除、パケット化、固定サイズＳＤＴＩフレームの生成を実行する。コンピュータ１００、インタフェース１０６、クライアント１０２、または他の装置上の利用可能な処理資源に応じて、様々な修正がＳＤＴＩフレームに対して実行され得る。上述のように、バス１０４を介して送信されるＳＤＴＩフレームの伝送は、受信された信号の垂直帰線消去期間に同期化される。
【００１９】
図９Ａにおいて示されたように、ＳＤＴＩフレーム１６０は、一般的に、垂直帰線消去部分１６２、及び水平帰線１６４という２つの成分を備えている。代りに、別の実施例（ＦＩＧ．９Ｂ）において、ＳＤＩフレームヘッダ１６６、同期化ビット及びフレームカウント値を有するヘッダが、更なる同期化、及び伝送、またはバスリセットの発生において失われたデータから回復することのような障害検出目的のために、ＳＤＴＩフレーム１６０に加えられる。この実施例において、フレームカウント同期化ビットは、ＳＤＴＩフレームヘッダ１６６に含まれると共に、ＳＤＴＩフレームヘッダ１６６は、垂直帰線消去部分１６２と同期化される。例えば、インタフェース１０６が圧縮データを読むことができないアプリケーション、またはインタフェース１０６に対する過度のアップグレードが必要とされるであろうアプリケーションにおいて、ＳＤＴＩフレーム１６０は、ＳＤＴＩストリームに関する処理がソフトウェアによって非リアルタイムで実行されるコンピュータ１００に送信され得る。代りに、図９Ｃで示されたように、ＳＤＴＩフレーム１６０は、更に処理のオーバーヘッドを減少させるために、水平帰線１６４なしで構成され得る。図９Ｄで示されたように、水平帰線なしで構成されるが、しかしヘッダ１６６を備えるＳＤＴＩフレームが、一実施例において同様に利用され得る。更にもう一つの実施例において、図９Ｅで示されたように、ＳＤＴＩフレームは、複数のチャンネルの間で分割されると共に、同様にＳＤＴＩフレームヘッダ１６６を含み得る。この実施例において、送信器は、ＳＤＴＩストリームを半分に分割し、チャンネルＡを横断して送信される半分のラインと、チャンネルＢを横断して送信されるもう一方の半分のラインとにする。各部分的フレームに関して付加されるヘッダは、フレームデータを再結合するのを支援するために使用され得る。
【００２０】
本発明の別の特徴において、外部クロックが、コンピュータ１００、インタフェース１０６、及びクライアント１０２の間のデータ伝送を同期化するために利用され得る。一実施例において、クライアント１０２は、インタフェース１０６上のクロック１８２に同期化すると共に、インタフェース１０６上のバッファ１８４のオーバフローを妨げるために使用され得る高品質の基準クロック１８０（図１）を備える。この実施例において、クライアント１０２上の基準クロック１８０の値は、データがコンピュータ１０２からインタフェース１０６に送信される周波数から、インタフェース１０６上で取得される。フロー制御を行うために、サイクルは、フレームの伝送の間で省略される。省略されたサイクルは、フレーム伝送のデータ転送率を減速するために、フレームの伝送の間の時間量を増加する。図１０に注意を向けると、参照符号２００において、コンピュータは、バッファ１８４のサイズを読み取るために、インターフェイス１６０を調査する。典型的な目的のためにバッファが“より大きい”及び“より小さい”というような用語で言及される一方、固定サイズバッファの場合に、“より大きい”及び“より小さい”はバッファの充足を言及することが理解されるべきである。参照符号２０２において、コンピュータ１００は、その次に複数のフレームをインタフェース１０６に送信する。参照符号２０４で、コンピュータ１００は、バッファ１８４のサイズを決定するために、再度インタフェース１０６を調査をする。もしバッファ１８４が、そのサイズにおいて、そのサイズの最後の調査から増大した場合（参照符号２０６での判定）、制御は参照符号２０８に進み、コンピュータ１００は、インタフェース１０６に送信しているフレーム間の遅延を増加する。一実施例において、送信されたフレーム間の遅延は、１２５［ミリセカンド］である。別の実施例において、わずかな遅延は、複数のフレームに対する遅延を調整することによって達成される。例えば、もし１２５［マイクロセカンド］の２．５倍のフレーム間の遅延が必要とされる場合、（１２５［マイクロセカンド］の）２サイクル及び３サイクルのフレーム遅延が交互に散在させられる。制御は、次に、参照符号２０２に戻ると共に、フレームは、フレーム間の追加の遅延によって、インターフェイス１０６に送信される。しかしながら、参照符号２０６の判定に戻って、もしバッファ１８４がそのサイズの最後の調査以来のサイズで増大しなかった場合、制御は、参照符号２１０の判定に遷移する。参照符号２１０の判定で、もしバッファ２０６のサイズが減った場合、制御は参照符号２１２に遷移し、コンピュータ１００からインタフェース１０６に対して送信されるフレーム間の遅延が減少する。一実施例において、この減少量は、同様に１２５［Ｍｓ］である。制御は、その次に参照符号２０２に遷移し、フレームは、コンピュータ１００からインタフェース１０６に対して、フレーム間の遅延を減少して送信される。参照符号２１０の判定に戻って、もしバッファ１８４のサイズがバッファ１８４のサイズの最後の調査以来減少しなかった場合、フレーム間の遅延の調整は必要ないと共に、制御は参照符号２０２に遷移する。
【００２１】
インタフェース１０６は、バス１０４を横断する通信を可能にするためのシリアルユニット３００を備える。表１において示されたように、シリアルユニット３００は、ユニットディレクトリ３０２を含む。
【００２２】
【表１】
0005537588.tif 000002
【００２３】
“Unit_Spec_ID”の値は、シリアルユニット３００の構造の定義に関与する構成を指定する。“Unit_SW_Version”の値は、“Unit_Spec_ID”の値と組み合わせて、ユニットのソフトウェアインタフェースを指定する。“Unit_Register_location”の値は、対象装置のシリアルユニットレジスタの初期アドレス空間におけるオフセットを指定する。“Unit_Signals_Supported”の値は、表２において示されたように、どちらのＲＳ−２３２信号がサポートされるかを指定する。もしこの入力がシリアルユニットディレクトリ３０２から省略される場合、これらの信号の内のいずれもがサポートされない。
【００２４】
【表２】
0005537588.tif 000003
【００２５】
シリアルユニット３００に同様に含まれるのは、シリアルユニット３００に含まれるレジスタを参照するシリアルユニットレジスタマップ３０４である。シリアルユニットレジスタマップ３０４の構成は、表３において示される。
【００２６】
【表３】
0005537588.tif 000004
【００２７】
シリアルユニットレジスタマップ３０４は、“Login”レジスタを参照する。シリアルユニット３００と通信しようと試みる装置は、ここではイニシエーター（initiator）と呼ばれる。例えば、イニシエーターは、コンピュータ１００であり得るか、または高速のシリアルバスによってネットワークに接続され、インタフェース１０６と通信する他のノードであり得る。イニシエーターは、シリアルユニット３００にログインするために、そのシリアルレジスタマップのベースの６４ビットアドレスを“Login”レジスタに書き込む。もし別のイニシエーターが既にログインされている場合、シリアルユニット３００は、衝突エラー応答メッセージを返す。アドレスの高い方の３２ビットは、“Login”アドレスに書き込まれ、アドレスの低い方の３２ビットは“Login+4”アドレスに書き込まれる。シリアルユニットレジスタマップは、同様に“Logout”レジスタを参照する。イニシエーターは、シリアルユニットからログアウトするために、あらゆる値をこのレジスタに書き込む。全てのバスリセットの後で、イニシエーターは、“Reconnect”レジスタに（恐らくは変えられた）イニシエーターのノードＩＤ（nodeID）を書かなければならない。もしバスリセットの後で、イニシエーターが１秒以内にそうすることができない場合、それは自動的にログアウトされる。１６ビットノードＩＤ（16-bit nodeID）は、このレジスタの下端の１６ビットに書かれると共に、上端の１６ビットには、ゼロが書かれるべきである。“TxFIFOSize”レジスタの読取りは、シリアルユニットの送信ＦＩＦＯのサイズをバイト単位で返す。“RxFIFOSize”レジスタの読取りは、シリアルユニット３００の受信ＦＩＦＯのサイズをバイト単位で返す。“Status”レジスタの読取りは、“CTS/DSR/RI/CAR”の現在の状態を返す（もしサポートされていれば）。“Status”レジスタは、表４において示されたように構成される。
【００２８】
【表４】
0005537588.tif 000005
【００２９】
“Control”レジスタへの書き込みは、“DTR”及び“RTS”の状態を設定する（もしサポートされていれば）。“Control”レジスタの構成は、表５において示される。
【００３０】
【表５】
0005537588.tif 000006
【００３１】
“FlushTxFIFO”レジスタに対するあらゆる値の書き込みは、シリアルユニット３００に、その中にある現在のあらゆるバイトを破棄する送信ＦＩＦＯのフラッシュ（flush）を実行させる。“FlushRxFIFO”レジスタに対するあらゆる値の書き込みは、シリアルユニット３００に、その中にある現在のあらゆるバイトを破棄する受信ＦＩＦＯのフラッシュ（flush）を実行させる。“Send Break”レジスタに対するあらゆる値の書き込みは、シリアルユニット３００に、そのシリアルポートに対する、送信ＦＩＦＯ（TxFIFO）の現在の内容を送信した後の休止状態（break condition）を設定させる。“Set Baud Rate”レジスタに対する書き込みは、シリアルユニット３００のシリアルポートのボーレートを設定する。“Set Baud Rate”レジスタは、表６において示されたように構成される。
【００３２】
【表６】
0005537588.tif 000007
【００３３】
“Set Char Size”レジスタは、送信及び受信される文字コードのビットサイズを設定する。“Set Char Size”レジスタの構成は、表７において示される。７ビット文字コードは、最上位のビットとしてパッドビット（pad bit）を追加することによって８ビットに水増しされる。
【００３４】
【表７】
0005537588.tif 000008
【００３５】
“Set Stop Size”レジスタは、ストップビットの数を示す。“Set Stop Size”レジスタは、表８において示されたように構成される。
【００３６】
【表８】
0005537588.tif 000009
【００３７】
“Set Parity”レジスタは、シリアルポートのパリティを設定する。“Set Parity”レジスタの構成は、表９において示される。
【００３８】
【表９】
0005537588.tif 000010
【００３９】
“Set Flow Control”レジスタは、シリアルポートによって使用されるフロー制御の種類を設定する。“Set Flow Control”レジスタの構成は、表１０において示される。
【００４０】
【表１０】
0005537588.tif 000011
【００４１】
“Send Data”レジスタは、イニシエーターが、送信ＦＩＦＯに文字コードを書くために、ブロック書き込み要求をこのレジスタに対して送信するときに使用される。ブロック書き込みは、“TxFIFOSize”レジスタで指定された送信ＦＩＦＯサイズより大きくてはいけない。全部のブロック書き込みのために送信ＦＩＦＯに十分な空間がない場合、その場合に、衝突エラー応答メッセージが返されると共に、文字コードはＦＩＦＯに複写されない。
【００４２】
同様に、シリアルユニット３００に含まれるものには、表１１において示されたように構成される、複数のレジスタを有するイニシエーターレジスタマップがある。
【００４３】
【表１１】
0005537588.tif 000012
【００４４】
シリアルユニット３００が、そのシリアルポートに関する休止状態を検出するとき、それは、“Break”レジスタに任意の値を書き込む。シリアルユニット３００が、そのシリアルポートに関するフレームエラー（framing error）を検出するとき、それは、“Framing Error”レジスタに受信文字コードを書き込む。シリアルユニット３００が、そのシリアルポートに関するパリティエラーを検出するとき、それは、“Parity Error”レジスタに受信文字コードを書き込む。シリアルユニット３００の受信ＦＩＦＯがオーバフローするとき、シリアルユニット３００は、“RxFIFO overflow”レジスタに任意の値を書き込む。シリアルユニット３００が、“CTS/DSR/RI/CAR”の内のいくつかの状態において変更を検出するとき、それは、新しいシリアルポートの信号状態を示す“Status change”レジスタに書く。“Status change”レジスタの構成は、表１２において示される。
【００４５】
【表１２】
0005537588.tif 000013
【００４６】
シリアルユニット３００がそのシリアルポートから文字コードを受信するとき、それは、受信された文字コードを、ブロック書き込み処理を備える“Received Data”レジスタに書き込む。それは、決して“RxFIFOSize”レジスタによって指定された受信ＦＩＦＯサイズより多くのバイトを書かない。もしイニシエーターが、送信された全ての文字コードを受信することができない場合、それは、衝突エラー応答メッセージに応答すると共に、送信された文字コードのうちの何も受信しない。
【００４７】
図１１は、本発明の実施例に基づくインタフェース装置のためのレジスタメモリマップを説明する。図１２は、本発明のインタフェースの中に含まれるＡ／Ｖグローバルレジスタの構成を説明する。図１３は、本発明のインタフェース装置の中に含まれるグローバル状態レジスタの構成を説明する。図１４は、本発明のインタフェース装置に含まれる等時間間隔制御レジスタを説明する。図１５は、本発明のインタフェース装置に含まれるフロー制御レジスタの構成を説明する。図１６は、本発明のインタフェース装置に含まれる等時間間隔チャンネルレジスタの構成を説明する。
【００４８】
本発明の別の実施例において、合成された垂直帰線消去信号は、インタフェース１０６上の垂直帰線消去レジスタを調査をすることによって取得される。垂直帰線消去信号は、コンピュータ１００上で動作するプログラムに対してコードを呼び出す。一実施例において、コンピュータ１００上で動作するプログラムに対して、呼び出されたコードと組み合わせて、または呼び出されたコードの代りに、タイミング情報が同様に提供されることができる。本発明の一実施例において、インタフェース１０６は、フレームにおける現在の進捗状況を示すカウンタを有するレジスタを備え、そこから次の垂直帰線が推定され得るか、もしくは他の場合は垂直帰線が取得され得る。フレーム伝送に基づいて境界を取得することによって、フレームの中にあり、垂直帰線消去期間の発生に同期化される他のデータが、配置されると共に、サンプリング動作のためのようにアクセスされ得る。その上、本発明の一実施例は、垂直帰線消去期間と同時に発生するが、しかし、垂直帰線消去に関する情報を含まないデータを配置するためにフレーム境界を取得する。一実施例において、本発明は、様々な処理アプリケーションにおいて読まれ得ると共に使用され得るフレームの中に含まれるタイムコードのような、ビデオ帰線消去期間の発生の後の一定期間有効なデータを取得するために使用される。一実施例において、コンピュータ１００は、その場合に、割込みをこの推定された時間に発生するように予定し、従ってフレームを送信し得る。
【符号の説明】
【００４９】
１００    コンピュータ
１０２    クライアント
１０４    バス
１０６    インタフェース
１０８    フレーム
１１０    フレームヘッダ
１１２    ビデオブロック
１１４    オーディオブロック
１１６    オーディオヘッダ
１３０    フォーマットフラグ
１３２    ＳＭＰＴＥタイムコード
１３４    増加フレームカウンタ
１３６    オーディオサイクルカウント値
１３８    オーディオサンプルカウント値
１４０    チャンネルカウント値
１４２    ブロックサイズバイトカウント値
１４４    オーディオフォーマットフラグ
１４６    ビデオフォーマットフラグ
１５０    複数のパケット
１６０    ＳＤＴＩフレーム
１６２    垂直帰線消去部分
１６４    水平帰線
１６６    ＳＤＩフレームヘッダ
１８０    基準クロック
１８２    クロック
１８４    バッファ
３００    シリアルユニット
３０２    ユニットディレクトリ
３０４    シリアルユニットレジスタマップ
【図１】
0005537588.tif 000014
【図２】
0005537588.tif 000015
【図３Ａ】
0005537588.tif 000016
【図３Ｂ】
0005537588.tif 000017
【図４Ａ】
0005537588.tif 000018
【図４Ｂ】
0005537588.tif 000019
【図５Ａ】
0005537588.tif 000020
【図５Ｂ】
0005537588.tif 000021
【図６】
0005537588.tif 000022
【図７】
0005537588.tif 000023
【図８】
0005537588.tif 000024
【図９Ａ】
0005537588.tif 000025
【図９Ｂ】
0005537588.tif 000026
【図９Ｃ】
0005537588.tif 000027
【図９Ｄ】
0005537588.tif 000028
【図９Ｅ】
0005537588.tif 000029
【図１０】
0005537588.tif 000030
【図１１】
0005537588.tif 000031
【図１２】
0005537588.tif 000032
【図１３】
0005537588.tif 000033
【図１４】
0005537588.tif 000034
【図１５】
0005537588.tif 000035
【図１６】
0005537588.tif 000036