(57)【特許請求の範囲】
【請求項１】
信号ペイロードと、受信信号の保全性を示す他のデータとをそれぞれ含むパケットで生起する信号を受信する装置であって、
パケット信号のソースと、
メモリと、
媒体エラーコードのソースと、
前記パケット信号に応答して、前記パケット信号のパケットでのエラーの生起時に制御信号を生成する検出手段と、
パケットペイロードの直前に前記媒体エラーコードソースから媒体エラーコードを前記メモリ内にロードし、前記制御信号の不存在時に現在のパケットのペイロードデータで前記媒体エラーコードをオーバーライトするよう調整されたメモリ管理回路と、
前記メモリに結合され、前記メモリ内に格納されたパケットペイロードを使用する利用手段と
を具備することを特徴とする装置。
【請求項２】
前記メモリは先入れ先出しメモリとして動作し、各前記媒体エラーコードは、関連するペイロードの先頭のメモリアドレス位置に書かれ、前記制御信号の不存在時に、前記媒体エラーコードが、最初に生起するペイロードデータによりオーバーライトされることを特徴とする請求項１に記載の装置。
【請求項３】
前記メモリ管理手段は、
前記パケット信号ソースと前記媒体エラーコードソースとにそれぞれ結合された第１と第２の入力ポートと、前記メモリのデータ入力ポートに結合された出力ポートと、制御入力端子とを有するマルチプレクサと、
アドレス発生回路と、
前記アドレス発生回路に結合され、前記メモリ内に媒体エラーコードをロードするよう要求されるアドレスの数に等しいアドレス期間の数だけアドレス信号を遅延させる遅延手段と、
前記遅延手段に結合され、前記メモリのアドレス入力ポートに遅延アドレス、あるいは非遅延アドレスを通すように構成された他のマルチプレクサと、
（ａ）各パケットペイロードの生起に先立って前記メモリデータ入力ポートに前記媒体エラーコードソースを結合し、各パケットペイロードの生起時に前記メモリデータ入力ポートに前記パケット化信号ソースを結合するよう前記マルチプレクサを制御し、
（ｂ）前記媒体エラーコードをロードするための各パケットペイロードの生起に先立って前記メモリの前記アドレス入力ポートに非遅延アドレスを結合し、パケットペイロードと、ペイロードをロードするためのパケットに関連する制御信号の生起時に前記アドレス入力ポートに非遅延アドレスを結合し続け、前記媒体エラーコードをロードするための各パケットペイロードの生起に先立って前記メモリの前記アドレス入力ポートに非遅延アドレスを前記アドレス期間の数結合し、各パケットの生起時および前記各パケットに関連する制御信号の不存在時に遅延アドレスを前記アドレス入力ポートに前記アドレス期間の数結合し、その後非遅延アドレスを結合して前記媒体エラーコードを前記各パケットのペイロードでオーバーライトするように前記他のマルチプレクサを制御する
制御回路とを具備することを特徴とする請求項１に記載の装置。
【請求項４】
受信信号の保全性を示す前記他のデータは、パケット連続カウントＣＣを含むパケットヘッダデータを含み、該パケット連続カウントＣＣは、連続パケットに対して予め決められた整数だけインクリメントされる値であり、前記検出手段は、各パケットの前記連続カウントＣＣが適切なシーケンスであるか否かを検出し、そうでなければ前記制御信号を生成する回路を具備することを特徴とする請求項３に記載の装置。
【請求項５】
受信信号の保全性を示す前記他のデータは、前記パケットヘッダデータ内にトグルビットをさらに含み、該トグルビットは、予め決められたパケット内で状態を変更し、前記検出手段は、各パケットの前記連続カウントＣＣが適切なシーケンスであるか否かと、連続パケットの前記トグルビットが正しい状態にあるか否かを検出して、そうでなければ前記制御信号を生成する回路を具備することを特徴とする請求項４に記載の装置。
【請求項６】
受信信号の保全性を示す前記他のデータは、パケット連続カウントＣＣを含むパケットヘッダデータを含み、該パケット連続カウントＣＣは、連続パケットに対して予め決められた整数だけインクリメントされる値であり、前記検出手段は、各パケットの前記連続カウントＣＣが適切なシーケンスであるか否かを検出し、そうでなければ前記制御信号を生成する回路を具備することを特徴とする請求項１に記載の装置。
【請求項７】
受信信号の保全性を示す前記他のデータは、前記パケットヘッダデータ内にトグルビットをさらに含み、該トグルビットは、予め決められたパケット内で状態を変更し、前記検出手段は、各パケットの前記連続カウントＣＣが適切なシーケンスであるか否かと、連続パケットの前記トグルビットが正しい状態にあるか否かを検出し、そうでなければ前記制御信号を生成する回路を具備することを特徴とする請求項６に記載の装置。
【請求項８】
各パケットの前記連続カウントＣＣだけが適切なシーケンスでないとき第１のモードで回復動作を始め、各パケットの前記連続カウントＣＣが適切なシーケンスではなく、また、前記トグルビットも前記正しい状態にないとき、第２のモードで回復動作を開始する装置をさらに具備することを特徴とする請求項７に記載の装置。
【請求項９】
信号ペイロードと、前記受信したパケット化データの保全性を決定するのに有用な他のデータとを有するパケットを含むパケット化データを受信して伸張し、各ペイロードがシーケンシャルに格納されるメモリを含み、データ喪失が検出されたときパケットペイロードの前に媒体エラーコードが挿入されるシステムにおいて、前記媒体エラーコードを挿入する方法として、
ＭとＮが整数であり、Ｎが媒体エラーコードを格納するのに必要なアドレス位置の数であるとして、パケットペイロードの生起に先立って前記メモリの一連のメモリアドレス位置Ｍ＋１からＭ＋Ｎに前記媒体エラーコードを格納すること、
ペイロードの生起時に、データ喪失が検出されたとき、前記メモリの他の連続メモリ位置Ｍ＋Ｎ＋１からＭ＋Ｎ＋Ｋに前記パケットペイロードを格納すること、
ペイロードの生起時に、データ喪失が検出されなかったとき、Ｋが各ペイロードを格納するのに必要なメモリアドレス位置の数であるとして、前記メモリの連続するメモリ位置Ｍ＋１からＭ＋Ｋに前記パケットペイロードを格納することにより前記媒体エラーコードをオーバーライトすること、
を特徴とする媒体エラーコードを挿入する方法。
【請求項１０】
圧縮ビデオ信号ペイロードと、パケットの喪失を決定するのに有用な他のデータとを有するパケットを含むパケット化データを受信して伸張し、パケット喪失検出器を含む逆トランスポートプロセッサと、各圧縮ビデオ信号ペイロードがシーケンシャルに格納されるメモリとを含み、パケット喪失が検出されたとき圧縮ビデオ信号ペイロードの前に媒体エラーコードが挿入されるシステムにおいて、前記媒体エラーコードを挿入する方法として、
ＭとＮが整数であり、Ｎが媒体エラーコードを格納するのに必要なアドレス位置の数であるとして、パケットペイロードの生起に先立って前記メモリの一連のメモリアドレス位置Ｍ＋１からＭ＋Ｎに前記媒体エラーコードを格納すること、
圧縮ビデオ信号ペイロードの生起時に、パケット喪失が検出されたとき、前記メモリの他の連続メモリ位置Ｍ＋Ｎ＋１からＭ＋Ｎ＋Ｋに前記圧縮ビデオ信号ペイロードを格納すること、
圧縮ビデオ信号ペイロードの生起時に、データ喪失が検出されなかったとき、Ｋが各圧縮ビデオ信号ペイロードを格納するのに必要なメモリアドレス位置の数であるとして、前記メモリの連続するメモリ位置Ｍ＋１からＭ＋Ｋに前記圧縮ビデオ信号ペイロードを格納することにより前記媒体エラーコードをオーバーライトすること、
を特徴とする媒体エラーコードを挿入する方法。
【請求項１１】
信号ペイロードと、受信信号の保全性を示す他のデータとをそれぞれ含むパケットで生起する信号を受信する装置であって、
パケット化信号を受信する入力ポートと、
メモリと、
媒体エラーコードのソースと、
各パケットペイロードの生起に先立って媒体エラーコードを前記メモリ内に格納するために前記媒体エラーコードのソースを結合し、各パケットペイロードの生起時に、パケットの喪失がないとき、前記メモリ内に各パケットペイロードを格納し、前記メモリ内に格納された前記媒体エラーコードをオーバーライトする目的で、前記入力ポートを前記メモリに結合する多重化手段とを具備することを特徴とする装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ビデオ信号伸張器（ｖｉｄｅｏ  ｓｉｇｎａｌ  ｄｅｃｏｍｐｒｅｓｓｏｒ）を予め決められた状態にリセットするために圧縮ビデオ信号のパケット内に媒体エラー・コードを挿入するための方法と装置に関する。
【０００２】
なお、本明細書の記述は本件出願の優先権の基礎たる米国特許出願第０８／２３２，９３２号（１９９４年４月２２日出願）の明細書の記載に基づくものであって、当該米国特許出願の番号を参照することによって当該米国特許出願の明細書の記載内容が本明細書の一部分を構成するものとする。
【０００３】
【従来の技術】
例えば、米国特許第５，１６８，３５６号で知られているように、圧縮ビデオ信号をパケットで送信することは有利であり、各パケットはエラー補正の対策を含んでいる。送信されたパケット圧縮ビデオ信号を伸張する（ｄｅｃｏｍｐｒｅｓｓ）ように設計されたテレビ受信器が、送信されたパケットのシーケンスの全体を受信できない場合がある。受信信号内にパケットがない場合に、喪失パケットのために信号ストリーム内に媒体エラー・コードを挿入することが、米国特許第５，２８９，２７６号で知られている。その媒体エラー・コードにより、伸張回路は信頼性を持って伸張処理を継続できる予め決められた信号エントリ点でリセットするように伸張回路が条件づけられる。
【０００４】
逆パケット化プロセスを達成するための装置、少なくとも高品位テレビ（ＨＤＴＶ）信号のための装置は、非常に高速で動作し、比較的高いデータ・レートのＨＤＴＶ信号を処理しなければならない。逆パケット化プロセッサを設計する際に、特定パケットが送信中に喪失したことを検出した後、媒体エラー・コードを含むように装置を構成することは非常に困難であることを見いだされた。本発明は、単純な逆パケット化処理と関連する制約に対するいかなるタイミング上の制約を背負い込むことなしに、媒体エラー・コードを挿入する問題を簡単に解決する。
【０００５】
【発明の概要】
本発明は、プロセッサが喪失パケットをチェックしている間に、各パケット・ペイロードの前のシーケンシャルな第一のメモリ・アドレス位置に媒体エラー・コードを書き込むため、各パケットのビデオ・ペイロードをバッファ・メモリ空間に導く形式の逆トランスポート・プロセッサにおける装置である。パケットが喪失したとき、ペイロードはメモリの後続のシーケンシャルなアドレス位置に書き込まれる。パケットの喪失がないときには、シーケンシャルな第一のメモリアドレス位置が望ましくない媒体エラー・コードを削るようにパケット・ペイロードでオーバーライトされる。
【０００６】
【実施例】
図１はボックス状のストリングからなる信号ストリームを示し、そのボックスは複数の異なるテレビ・プログラムあるいは対話型テレビ・プログラムの構成要素である信号パケットを表している。これらのプログラム・コンポーネントは圧縮データから形成され、各イメージに対するビデオデータの量が可変であると想定されている。パケットは固定長である。添字のような文字を持つパケットは単一のプログラム要素を表している。例えば、Ｖｉ、Ａｉ、Ｄｉはビデオ、オーディオ、およびデータのパケットを表し、Ｖ１、 Ａ１、 Ｄ１により指定されるパケットはプログラム１に対するビデオ、オーディオ、およびデータのコンポーネントを表し、Ｖ３、 Ａ３１、 Ａ３２、 Ｄ３はプログラム３のビデオ、オーディオ１、オーディオ２、およびデータのコンポーネントを表している。パケット・ストリングの上側のラインでは、特定のプログラムの各コンポーネントが一緒にグループとして示されている。しかしながら、パケット・ストリングの中央部のパケット列に示されるように、同じプログラムからのパケットはグループ化されなければならないという必要性はない。あるいは、各コンポーネントの生成順に対しての特別な順番も存在しない。
【０００７】
各パケットは、図２に示されるようにプレフィックスとペイロードを含むように構成されている。この例のプレフィックスは５つのフィールドからなる８ビットの２バイトを含み、そのフィールドのうち４つ（Ｐ、ＢＢ、ＣＦ、ＣＳ）は１ビット・フィールドであり、残りの１つ（ＳＣＩＤ）は１２ビットのフィールドである。ＳＣＩＤフィールドは信号コンポーネント識別子である。フィールドＣＦはそのパケットのペイロードがスクランブルされているか否かを示すためのフラグを格納している。フィールドＣＳは、スクランブされたパケットのスクランブルを解除するために、２つのスクランブル解除キーのどちらが利用されるべきかを示すフラグを有している。各パケットのプレフィックスはパケット単位で境界合せされており、こうして各フィールドの位置は容易に識別可能である。
【０００８】
各ペイロード内には、モジュロ１６の連続カウントＣＣを含むヘッダと、特定のプログラム・コンポーネントであるトグル・フラグ・ビットとがある。連続カウントは同じプログラム・コンポーネントのシーケンシャル・パケットの単なる連続番号である。ビデオ・コンポーネント・パケットではトグル・フラグ・ビットは新フレームの始まりである画像（ｐｉｃｔｕｒｅ）層ヘッダの生起時に論理レベルを変更する、あるいはトグルする１ビット信号である。
【０００９】
図３は、デジタル・テレビ受信器のパケット検出器／セレクタを示すブロック図である。信号はアンテナ１０により検出され、同調検波器１１に供給される。検波器１１は受信信号から特定周波数バンドを抽出し、バイナリー形式でベースバンドの圧縮信号を提供する。周波数バンドは従来の方法によりマイクロプロセッサ１９を通してユーザーにより選択される。放送デジタル信号は、例えばリード・ソロモン・フォワード・エラー訂正（ＦＥＣ）符号を用いて符号化されたエラーを含んでいる。ベースバンド信号はＦＥＣデコーダ１２に供給される。ＦＥＣデコーダ１２は受信ビデオを同期させ、図１に示される形式の信号パケット・ストリームを提供する。ＦＥＣ１２は規則正しい間隔で、あるいはメモリ・コントローラ１７からの要求に基づいてパケットを提供する。どちらの場合でも、パケット・フレーミング信号あるいはパケット同期信号はＦＥＣ回路により提供され、それはＦＥＣ１２から各パケット情報が転送されるタイミングを示す。
【００１０】
検波された周波数バンドはパケット形式で時分割多重化された複数のプログラムを含んでもよい。単一のプログラムからのパケットだけが他の回路要素にまで通されることが大事である。この例では、ユーザーはどのパケットが選択されるべきかについての知識を持っていないと仮定している。この情報はプログラム・ガイドに含まれ、それはそれ自身ＳＣＩＤを通してプログラム信号コンポーネントを相互に関連付けるデータだけからなるプログラムである。プログラム・ガイドは各プログラムに対する各プログラムのオーディオ、ビデオ、およびデータの要素のＳＣＩＤのリストである。プログラム・ガイド（図１のパケットＤ４）は固定ＳＣＩＤが割り当てられている。電源が受信器に供給されるとき、マイクロプロセッサ１９は、同様なプログラム可能なＳＣＩＤレジスタ１３のバンク内の１つにプログラム・ガイドと関連するＳＣＩＤをロードするようにプログラムされている。ＦＥＣ１２からの信号の各検出パケットのプレフィックス部のＳＣＩＤフィールドが続いて他のＳＣＩＤレジスタ１４にロードされる。プログラム可能レジスタと受信されたＳＣＩＤレジスタは比較器回路１５の各入力ポートに接続されており、受信ＳＣＩＤはプログラム・ガイドＳＣＩＤと比較される。パケットのＳＣＩＤがプログラム・ガイドＳＣＩＤと一致すれば、比較器１５はマイクロプロセッサにより使用できるようにそのパケットをメモリ１８内の予め決められた位置に格納するようにメモリ・コントローラ１７を制御する。受信ＳＣＩＤがプログラム・ガイドＳＣＩＤと一致しないときは、対応するパケットは単に破棄される。
【００１１】
マイクロプロセッサはインターフェイス２０を介してのユーザーからのプログラミング・コマンドを待ち、インターフェイス２０はキーボードとして示されているが、従来のリモート・コントロールあるいは受信器フロント・パネル・スイッチであってもよい。ユーザーは（アナログＴＶシステムでの業界用語の）チェンネル４に提供されるプログラムを見るよう要求できる。マイクロプロセッサ１９は、チャンネル４のプログラム・コンポーネントの各ＳＣＩＤに対してメモリ１８にロードされたプログラム・ガイドをスキャンするようにプログラムされている。また、対応するコンポーネント信号処理パスと関連するレジスタ・バンク１３内のプログラム可能レジスタのうちの他のものにこれらのＳＣＩＤをロードするようにプログラムされている。
【００１２】
望ましいプログラムのため、オーディオ、ビデオ、あるいはデータのプログラム・コンポーネント・の受信パケットは、それぞれ、各オーディオ信号プロセッサ２３、ビデオ信号プロセッサ２２、あるいは補助データ信号プロセッサ２１（２４）に最終的に供給されなければならない。図３に示すシステム例では、最初に、メモリ１８内の予め決められたメモリ位置に各パケットが送られる。その後、各プロセッサ２１−２４はメモリ１８からコンポーネント・パケットを要求する。信号コンポーネントは圧縮され、伸張装置は連続的な入力データを要求しないということは明らかであろう。メモリを通してコンポーネントを送信することにより、一定量の望ましい信号スロットが提供される。
【００１３】
オーディオ、ビデオおよびデータのパケットは信号プロセッサがコンポーネント・データに容易にアクセスできるように予め決められたメモリ位置にロードされる。適当なパケットが適当なメモリ・エリアにロードされるためには、各ＳＣＩＤ比較器はそれらのメモリ・エリアと関連付けられていなければならない。この関連づけはメモリ・コントローラ１７のハードウェアによりなされてもよいし、あるいはプログラム可能であってもよい。前者の場合には、プログラム可能レジスタの特定のものがオーディオ、ビデオ、およびデータのＳＣＩＤに常に割り当てられるであろう。後者の場合には、オーディオ、ビデオ、およびデータのＳＣＩＤがプログラム可能レジスタのいずれにロードされてもよい。各ＳＣＩＤがプログラム可能レジスタにロードされるときには、適当な関連づけがメモリ・コントローラ１７でプログラムされている必要がある。
【００１４】
定常状態では、プログラムＳＣＩＤがプログラム可能レジスタ１３に格納された後、受信信号パケットのＳＣＩＤがプログラム可能ＳＣＩＤレジスタ内のＳＣＩＤの全てと比較される。格納されているオーディオ、ビデオ、あるいはデータのＳＣＩＤのいずれかとの一致が得られれば、対応するパケット・ペイロードはそれぞれオーディオ、ビデオ、あるいはデータのメモリ・エリアに格納される。
【００１５】
各信号パケットは、ＦＥＣ１２から信号解読器１６を介してメモリ・コントローラ１７に結合されている。パケットが解読されるべきか否かはパケット・プレフィックス中のＣＦフラグにより決定され、解読される方法はＣＳフラグにより決定される。ＳＣＩＤの一致がパケットで得られなかったときは、解読器はデータを通すことが単に禁止されるだけである。他に、ＳＣＩＤの一致がパケットで得られなかったときは、解読器がその最後の設定に従って解読することが許されても良い。また、メモリ・ライト・コントロールが各パケットを破棄するよう禁止されてもよい。
【００１６】
図４は、図３に示されるメモリ・コントローラ１７のための装置の例を示す。各プログラム・コンポーネントはメモリ１８の異なる隣接するブロックに格納される。加えて、マイクロプロセッサ１９あるいはスマートカード（図示せず）により生成されるデータのような他のデータがメモリ１８に格納されてもよい。
【００１７】
アドレスはマルチプレクサ１０５によりメモリ１８に供給され、入力データはマルチプレクサ９９によりメモリ１８に供給される。メモリ管理回路からの出力データは他のマルチプレクサ１０４により信号プロセッサに提供される。マルチプレクサ１０４により提供される出力データはマイクロプロセッサ１９から、メモリ１８から、あるいは直接マルチプレクサ９９から導かれる。プログラム・データは標準的な画像解像度と品質のものであると仮定され、特定のデータ・レートで生起すると仮定される。他方、この受信器により提供されることができる高品位テレビジョン信号ＨＤＴＶはかなり高いデータ・レートで生じる。実際には、ＦＥＣにより提供されるデータの全てはマルチプレクサ９９とメモリＩ／Ｏ回路１０２を介してメモリ１８を通って送られる。但し、マルチプレクサ９９からマルチプレクサ１０４まで直接送られる高いレートのＨＤＴＶ信号を除く。データは解読器１６、スマートカード回路、マイクロプロセッサ１９、および媒体エラー・コードのソース１００からマルチプレクサ９９に提供される。ここで使用される“媒体エラー・コード”は、開始コードのような予め決められたコード・ワードを検出するまで処理を中止し、例えば開始コードに従って処理を回復するように各信号プロセッサ（伸張器）を制御するために、データ・ストリーム内に挿入されるべき特別のコード・ワードを意味する。
【００１８】
メモリ・アドレスは、プログラム・アドレス回路７９−９７、マイクロプロセッサ１９、スマートカード装置（図示せず）から、および他の補助装置からマルチプレクサ１０５に提供される。特定時間での特定アドレスの選択は、ダイレクト・メモリ・アクセスＤＭＡ回路９８により制御される。各信号プロセッサからの“データ必要”信号とＳＣＩＤ制御信号とはＤＭＡ９８に供給され、それに応答してメモリアクセス競合が調停される。ＤＭＡ９８はサービス・ポインタ・コントローラ９３と協同して、各プログラム信号コンポーネントのための適切なリード・アドレスとライト・アドレスを提供する。
【００１９】
種々の信号コンポーネント・メモリ・ブロックに対する各アドレスはプログラム・コンポーネントの４つのグループあるいはサービス・ポインタ・レジスタ８３、８７、８８、および９２により生成される。各信号コンポーネントが格納されるメモリの各ブロックに対する開始ポインタは、各信号コンポーネントに対するレジスタ８７内に含まれる。開始ポインタは固定値であってもよいし、あるいはマイクロプロセッサ１９内の従来のメモリ管理方法により計算されてもよい。
【００２０】
各ブロックに対する最後のアドレス・ポインタはサービス・レジスタ８８のバンク内に格納され、それは各潜在的プログラム・コンポーネントに対して１つである。開始アドレスと同様に、終了アドレスも固定値であってもよいし、マイクロプロセッサ１９により提供される計算値であってもよい。それはより少ないメモリでより用途の広いシステムを提供するので、開始ポインタと終了ポインタに対する計算値を使用することが望ましい。
【００２１】
メモリ・ライト・ポインタあるいはヘッド・ポインタは加算器８０とサービス・ヘッド・レジスタ８３とにより生成される。各潜在的なプログラム・コンポーネントに対してサービス・ヘッド・レジスタが存在する。ライト・ポインタ値あるいはヘッド・ポインタ値はレジスタ８３に格納され、メモリ・ライト・サイクルの間にアドレス・マルチプレクサ１０５に提供される。ヘッド・ポインタはまた加算器８０に結合され、１単位だけインクリメントされ、インクリメントされたポインタは次のライト・サイクルのために適当なレジスタ８３内に格納される。レジスタ８３は、現在サービスされている適切なプログラム・コンポーネントのために、サービス・ポインタ・コントローラ９３により選択される。
【００２２】
この実施例では、開始ポインタと終了ポインタとは１６ビット・ポインタであると仮定している。レジスタ８３は１６ビットのライト・ポインタあるいはヘッド・ポインタを提供する。他方、メモリ１８は１８ビット・アドレスを有する。１８ビット・ライト・アドレスは、開始ポインタのＭＳＢ側の２ビットを１６ビット・ヘッド・ポインタに連結することにより形成され、結合された１８ビット・ライト・アドレスのＭＳＢ位置に開始ポインタからのビットがある。開始ポインタは各レジスタ８７によりサービス・ポインタ・コントローラ９３に提供される。サービス・ポインタ・コントローラは、レジスタ８７に格納されている開始ポインタからより上位側の開始ポインタ・ビットを解読して、１６ビット・ヘッド・ポインタ・バスにこれらのビットを関連付ける。これがバス９６により示され、マルチプレクサ８５を出るヘッド・ポインタ・バスに結合されている。
【００２３】
同様に、メモリ・リード・ポインタあるいはテイル・ポインタは加算器７９とサービス・テイル・レジスタ９２により生成される。各潜在的プログラム・コンポーネントに対してサービス・テイル・レジスタが存在する。リード・ポインタ値あるいはテイル・ポインタ値はレジスタ９２に格納され、メモリ・リード・サイクルの間にアドレス・マルチプレクサ１０５に提供される。テイル・ポインタはまた、加算器７９に結合され、１単位だけインクリメントされ、インクリメントされたポインタは次のリード・サイクルのために適当なレジスタ９２に格納される。レジスタ９２は、現在サービスされている適当なプログラム・コンポーネントのために、サービス・ポインタ・コントローラ９３により選択される。
【００２４】
レジスタ９２は１６ビット・テイル・ポインタを提供する。１８ビット・リード・アドレスは、開始ポインタのＭＳＢ側２ビットを１６ビット・テイル・ポインタに連結することにより形成され、開始ポインタ・ビットは結合された１８ビット・ライト・アドレスのＭＳＢ側ビット位置にある。サービス・ポインタ・コントローラはレジスタ８７内に格納された開始ポインタからより上位側の開始ポインタ・ビットを解読して、これらのビットを１６ビット・テイル・ポインタ・バスに関連付ける。これはバス９４により示され、マルチプレクサ９０を出るテイル・ポインタ・バスと結合されている。
【００２５】
データはメモリ１８の計算されたアドレスに格納される。１バイトのデータの格納後、ヘッド・ポインタは１だけインクリメントされ、このプログラム・コンポーネントに対する終了ポインタと比較される。それらが等しければ、ヘッド・ポインタの最上位側ビットは開始ポインタの低位側の１４ビットで置換され、ゼロがそのアドレスのヘッドポインタ部分の低位側２ビット位置におかれる。この動作はサービス・ポインタ・コントローラ９３からマルチプレクサ８５からのヘッド・ポインタ・バスに向かう矢印９７により示されている。開始ポインタの下位側１４ビットを適用して、ヘッド・ポインタ・ビットをオーバライドすると仮定している。この１回のライト・サイクルの間にアドレス内の低位側開始ポインタ・ビットでヘッド・ポインタ・ビットを置換することにより、メモリは、開始ポインタの上位側２ビットにより指定されるメモリブロックに対してスクロールする。こうして、各パケットの開始時にブロック内のメモリ位置にライト・アドレスを再プログラムすることが回避される。
【００２６】
ヘッド・ポインタが（メモリ１８からデータをリードされるべき場所を示すために使用される）テイル・ポインタと等しければ、信号は、ヘッド・テイル・クラッシュが起きたことを示すために、マイクロプロセッサのインターラプト部に送られる。さらに、このプログラム・チャンネルからメモリ１８への書き込みは、マイクロプロセッサがそのチャンネルを再びイネーブルにするまで禁止される。この場合は非常に希であり、通常の動作では起きない。
【００２７】
データは、各信号プロセッサのリクエスト時にメモリ１８の、加算器７９とレジスタ９２により計算されたアドレスから引き出される。１バイトの格納されたデータの読み出し後、テイル・ポインタは１単位だけインクリメントされ、サービス・ポインタ・コントローラ９３内のこの論理チャンネルのための終了ポインタと比較される。テイル・ポインタと終了ポインタが等しければ、テイル・ポインタの上位側ビットは開始ポインタの低位側１４ビットで置換され、ゼロがそのアドレスのテイル・ポインタ部の低位側２ビット位置におかれる。これはコントローラ９３からでてマルチプレクサ９０からのテイル・ポインタバスに向かう矢印９５により示されている。テイル・ポインタがヘッド・ポインタに等しければ、各メモリ・ブロックは空であると定義され、バイトは、このプログラム・チャンネルに対してＦＥＣからデータがさらに受信されるまで、関連する信号プロセッサには送られない。開始ポインタの低位側１４ビットにより各ライト・アドレスあるいはリード・アドレスのヘッド・ポインタあるいはテイル・ポインタの部分を実際に置換することは、適当にマルチプレクスすることにより、あるいは３状態相互接続を使用することにより達成されてもよい。
【００２８】
上記で利用されるメモリとアドレス決定の結合により、複数の先入れ先出しメモリあるいはＦＩＦＯとして動作するようランダム・アクセス・メモリ１８が制御されていることは、デジタル信号処理の分野の当業者には明らかであろう。
【００２９】
メモリ・リード／ライト・コントロールはサービス・ポインタ・コントローラとダイレクト・メモリ・アクセスＤＭＡ要素９３と９４により達成される。ＤＭＡはリード・サイクルとライト・サイクルをスケジュールするようにプログラムされている。スケジューリングはＦＥＣ１２がメモリに書かれるべきデータを提供しつつあるか否かに依存している。ＦＥＣデータ・ライト動作は、入力信号コンポーネント・データが失われないように優先している。図４に示される装置例では、メモリをアクセスする４つの形式の装置が示されている。これらは、スマートカード（図示せず）、ＦＥＣ１２（より正確には暗号解読器１６）、マイクロプロセッサ１９、およびオーディオ・プロセッサとビデオ・プロセッサのようなアプリケーション装置の１つである。メモリ競合は以下のように扱われる。上にリストされた種々の処理要素からのデータ・リクエストに応答するＤＭＡは、以下のようにメモリ・アクセスを割り当てる。メモリへのアクセスは９５ｎｓのタイム・スロット内で提供され、その間に１バイトのデータがメモリ１８から読み出され、あるいはメモリ１８に書き込まれる。“ＦＥＣ提供データ”と“ＦＥＣ非提供データ”と定義されるアクセス割り当ての２つの主要なモードがある。これらのモードの各々では、最大ＦＥＣデータレートは５Ｍバイト／秒、即ち２００ｎｓで１バイトと想定して、タイム・スロットは以下のように割り当てられ優先順位が付けられる。これらは、
ＦＥＣ提供データでは、
１）ＦＥＣデータ・ライト
２）アプリケーション装置  リード／マイクロプロセッサ  リード／ライト
３）ＦＥＣデータ・ライト
４）マイクロプロセッサ  リード／ライト
ＦＥＣ非提供データでは、
１）スマートカード  リード／ライト
２）アプリケーション装置  リード／マイクロプロセッサ  リード／ライト
３）スマートカード  リード／ライト
４）マイクロプロセッサ  リード／ライト
である。ＦＥＣデータは遅らせることができないので、ＦＥＣ（あるいはより正確には暗号解読器）はデータを提供するとき、各２００ｎｓの間隔でのメモリ・アクセスが保証されなければならない。交互のタイム・スロットはアプリケーション装置およびマイクロプロセッサにより共有される。要求している装置で使用可能なデータがないとき、マイクロプロセッサにアプリケーション・タイム・スロットの使用が提供される。
【００３０】
コントローラ９３はＳＣＩＤ検出器と通信し、メモリ・ライト動作のためにアクセスするのは、開始、ヘッド、および終了ポインタのレジスタのうちのどれかを決定する。コントローラ９３はＤＭＡと通信し、メモリ・リード動作のためにアクセスするのは開始、終了、およびテイルのレジスタのうちのどれかを決定する。ＤＭＡ９８はマルチプレクサ９９、１０４、１０５により対応するアドレスとデータの選択をコントロールする。
【００３１】
前述のように、パケットが失われたときビデオ・コンポーネント信号ストリーム内に媒体エラー・コードを挿入し、特定の信号エントリー点がそのデータ・ストリームで起きるまでビデオ信号伸張器（ｖｉｄｅｏ  ｓｉｇｎａｌ  ｄｅｃｏｍｐｒｅｓｓｏｒ）が伸張を中止するように制御することが有利である。次のエントリ点がどこで、どのビデオ・パケット内で起きるかを予測することは実用的ではない。できるだけ早く次のエントリ点を見つけるためには、パケットが失われたことの検出後、最初のビデオ・パケットの始まりに媒体エラー・コードを含むことが必要である。図４の回路では各ビデオ・パケットの初めに媒体エラー・コードをおき、先行するパケットが失われなかったときには各パケット内の媒体エラー・コードを削除する。媒体エラー・コードが、暗号解読器から到着するビデオ・ペイロードに先立つＭ個のライト・サイクルの間にメモリ１８に書き込むことにより、現在のビデオ・パケット・ペイロードに対して予約された最初のＭ個のメモリ・アドレス位置に挿入される。同時に、マルチプレクサ９９は媒体エラー・コードをソース１００からメモリ１８Ｉ／Ｏに供給するようにＤＭＡ９８により制御される。Ｍは媒体エラー・コードを格納するために必要なメモリ位置の数であり、整数である。メモリが８ビット・バイトを格納し、媒体エラー・コードが３２ビットとすれば、Ｍは４である。
【００３２】
メモリ内に媒体エラー・コードをロードするためのアドレスはマルチプレクサ８２と８５を介して各ビデオ・コンポーネント・サービス・レジスタ８３により提供される。ビデオ・コンポーネント・データがロードされるべきメモリ位置に、媒体エラー・コードをロードするため、ポインタレジスタ８３から提供される最初のＭ個のアドレスは、単にビデオ・ヘッド・ポインタにより通常作成される次のＭ個のシーケンシャルなアドレスである。これらの同じアドレスは、Ｍステージ遅延要素８４に結合され、媒体エラー・コードの最後のバイトがメモリ１８に格納された直後に、Ｍ個のアドレスの最初のものは遅延要素８４の出力で使用可能である。
【００３３】
媒体エラー・コードのメモリへのロードのタイミングは、パケットの喪失の決定と一致する。パケット喪失の決定がなされている間の媒体エラー・コードのロードは信号フロー処理上でなんら付加的なタイミング上の制約を課さない。パケット・エラーあるいは喪失の検出はエラー検出器１０１によりなされ、それは現パケットのＣＣとＨＤのデータに応答する。検出器１０１は現在のパケット中の連続カウントＣＣを調べ、それが１単位だけ前のパケットのＣＣとは異なるかどうかを判定する。加えて、現在のパケット内のトグル・ビットが調べられ、それが前のパケットのトグル・ビットとは状態が異なるかどうかを判定する。これらの条件のどちらかが満足されないとき、パケット・エラーが起きていて、媒体エラー・コードが現在のパケットのためにメモリ内で保持され、ＶＩＤＥＯ伸張器をリセットする。パケット喪失を判定するための好ましい基準は上記条件の両方が満足されないことである。
【００３４】
パケットの喪失が検出されると、現在のパケットのビデオ・コンポーネントはメモリ１８内に格納され、次、即ち（Ｍ＋１）番目のアドレス位置で始まる。これは、適切なレジスタ８３から遅延されていないヘッド・ポインタを通し続けるようにマルチプレクサ８５を制御することにより達成される。他に、パケットの喪失が検出されないときは、現在のパケット内のビデオ・コンポーネントの最初のＭ個のバイトが、媒体エラー・コードが直前に格納されたメモリ位置に格納される。これは、Ｍ回のライト・サイクルの間にマルチプレクサ８５を、遅延要素８４から遅延させられたヘッド・ポインタを通すように、サービス・ポインタ・コントローラが制御することにより達成される。Ｍ回のライト・サイクルの終了時に、サービス・ポインタ・コントローラ９３は、そのマルチプレクサが遅延させられていないヘッド・ポインタを再び通すように制御する。そのマルチプレクサが非遅延ポインタに戻るようにスイッチされるとき、次の非遅延ポインタはＭ＋１番目のアドレスに対応する。
【００３５】
ある受信器の特定の設計に依存して、それが各コンポーネント・トランスポート・パケットが喪失したとき信号コンポーネントのうちの異なるものに媒体エラー・コードを含むようにコンダクティブであってもよいし、あるいはそうでなくともよい。加えて、異なる信号コンポーネント・フォーマットあるいは圧縮プロセスに対して異なる媒体エラー・コードを利用することは有利である。こうして、１以上の媒体エラー・コード源が必要である。必要とされる媒体エラー・コードの数および／あるいは形式にかかわらず、各パケットが媒体エラー・コードを含み、実際に必要とされなければ、媒体エラー・コードをオーバーライトする前述の方法は、コードを挿入するという問題への非常に有利な手法である。
【００３６】
図５は、パケット喪失を検出するための回路の例を示している。しかしながら、ハードウェア要素は、マイクロプロセッサ内にソフトウェア的に実現されても良く、そのマイクロプロセッサはメモリ管理装置を制御するために使用される。図５において、タイミング回路２０１は、ＦＥＣとバイト・クロックにより提供されるパケット・フレーミング・パルスに応答して、現在のパケットの３番目のバイトが暗号解読器から得ることができる期間に、正の方向への遷移を発生する。この正の方向への遷移により３番目のデータバイトは、バイト・レジスタ２０５のうちのＳＣＩＤ検出器制御信号により選択される１つにロードされる。レジスタ２０５内にロードされたバイトは、連続カウント・ビットＣＣとトグル・ビットとをパケットのサービス・ヘッダに含んでいる。レジスタ２０５にロードされたＣＣビットとトグル・ビットとは、比較器２０６Ａと２０６Ｂ内で、それぞれレジスタ２０２のＳＣＩＤ検出器制御信号により選択された適当な１つの内の同様なビットと比較される。比較器２０６Ａと２０６Ｂの出力接続はメモリ・コントローラ１７に接続され、それはこれらの信号の条件に応答してミスマッチングのイベント時にある回復動作を行う。
【００３７】
レジスタ２０２の値は以下のようにして生成される。同じ信号コンポーネントの連続パケットの連続カウントＣＣは、各連続パケットに対して１単位だけインクリメントされ、故に各シーケンシャルＣＣ値は前の値より１単位だけ大きくなる。現在のパケットのＣＣは、加算器２０３の入力に供給され、それは１単位だけインクリメントされ、そのコンポーネントに対する次に予想されるＣＣ値の値に等しくなる。加算器２０３からのインクリメントされた値は、次のペイロードのＣＣを比較する際に使用するために、受信ＳＣＩＤに従ってアドレス指定され、レジスタ２０２内に格納される。
【００３８】
他方、ビデオ・コンポーネントに対するトグル・ビットはフレーム内の全てのパケットに対して同一であり、画像（ｐｉｃｔｕｒｅ）層ヘッダを含むパケット内で状態を変える。各連続トグル・ビットは適当なレジスタ２０２内に変更なしで格納される。
【００３９】
現在のパケットの終了時に、タイミング回路２０１は、現在のパケットからのインクリメントされたＣＣ値と現在のパケットからのトグル・ビットを適当なレジスタ２０２に格納するようにレジスタ２０２を制御するパルスを生成する。ＣＣビット値とトグル・ビット値は同じ信号コンポーネントの次のパケット内で予想されるＣＣビット値とトグル・ビット値に対応する。
【００４０】
メモリ・コントローラはＣＣミスマッチング検出のために比較器２０６Ａの出力を監視する。ＣＣ値のミスマッチが示されると、比較器２０６Ｂの出力はトグル・ミスマッチングのために調べられる。ミスマッチングがＣＣ値とトグル値の両方で起きると、回復動作の最初のモードが開始される。ミスマッチングがＣＣ値でだけ起きたときには、回復動作の第二のモードが開始される。最初のモードはトランスポート・プロセッサに画像層ヘッダを含む次に生起するパケットを検索させる。このパケットは次のフレームのデータの初めにあっても良いし、あるいは冗長画像層ヘッダを含むように特に構成されたパケットであっても良い（米国特許第５，２８９，２７６号の例を参照）。プロセッサは、画像層ヘッダを含む最初のパケットで始めて、メモリ１８にビデオ・コンポーネント・データを通すことを再開する。
【００４１】
第二のモードでは、重要ではないデータの喪失がおきているが、フレーム境界で処理をリセットする必要はないと仮定される。むしろ処理はスライス境界にリセットされる。スライスの定義のためには“動画像と関連オーディオの一般的符号化”（Ｈ．２６２  ＩＳＯ／ＩＥＣ１３８１８−２委員会ドラフト（国際標準化機構））を参照。スライス境界へのリセットは、ＭＰＥＧ開始コードを含む次のパケットが生起するまで、システムにメモリ１８にはビデオ・コンポーネント・データをさらには通させないようにすることにより開始される。
【００４２】
画像層ヘッダあるいは開始コードを含むパケットはプログラム可能マッチングフィルタ０９を介して検出される。フィルタ０９は、ミスマッチングを示す比較器２０６Ａと２０６Ｂの一方あるいは両方に応答して、画像層あるいはスライス層開始コードの一方あるいは他方を含むパケットを検出するようメモリ・コントローラ１７により制御される。
【００４３】
画像層ヘッダーを含む各パケットでは、比較器２０６Ｂは、トグル・ビットがこれらのパケットでは変化するので間違いのミスマッチングを生じる。これは重要ではない。トグル・ビットのこのミスマッチングは、ＣＣがまたミスマッチングするとき役割を果たすだけであり、画像層ヘッダを含むパケットにリセットするようシステムを条件づけることを実行するだけである。そのような行動は、画像層ヘッダーを含むパケットに対してＣＣミスマッチングが存在すれば、間違いのトグル・ビット・ミスマッチングが存在するか否かが要求される。
【図面の簡単な説明】
【図１】時分割多重化パケット・テレビジョン信号を示す図である。
【図２】各信号パケットを示す図である。
【図３】本発明の実施例による多重化要素信号のパケットを選択し処理するための受信器を示すブロック図である。
【図４】図３のメモリ・コントローラのために実現されるメモリ管理回路の例を示すブロック図である。
【図５】パケット喪失検出回路の例を示すブロック図である。
【符号の説明】
９  プログラム可能マッチング・フィルタ
１１  チューナー検出器
１３  プログラム可能ＳＣＩＤレジスタ
１４  受信ＳＣＩＤレジスタ
１５  ＳＣＩＤマッチング検出器
１６  解読器
１７  メモリ・コントローラ
１８  メモリ
２０  ユーザー・インターフェイス
２１  補助１プロセッサ
２２  ビデオ・プロセッサ
２３  オーディオ・プロセッサ
２４  補助２プロセッサ
８３  サービス・ヘッド・ポインタ
８４  遅延
８７  サービス開始ポインタ
８８  サービス終了ポインタ
９２  サービス・テイル・ポインタ
９３  サービス・ポインタ・コントローラ
９８  ＤＭＡコントローラ
１０１  エラー検出器
１０４  信号出力
２０２  バイト・レジスタ
２０５  バイト・レジスタ
２０６Ａ、２０６Ｂ  比較器
【図１】
0003693702.tif 000002
【図２】
0003693702.tif 000003
【図３】
0003693702.tif 000004
【図４】
0003693702.tif 000005
【図５】
0003693702.tif 000006