"パケット化トランスポートストリームを処理する方法であって、複数のトランスポートパケットからなるパケット化トランスポートストリームを受信するステップと、前記パケット化トランスポートストリーム内の、プログラムとパケット識別子との関係を示すデータに基づいて、選択されたビデオプログラムと関連するトランスポートパケットを識別するための前記パケット識別子を割り出すステップと、前記パケット識別子との一致検出器をプログラムするステップと、前記プログラムされた一致検出器を用いて前記パケット化トランスポートストリームを解析し、前記パケット識別子に応じて、所望の一連のトランスポートパケットを特定して取得するステップと、前記取得した一連のトランスポートパケットの各々のパケットの中で、前記トランスポートパケットのエラー情報を提供する1ビットのトグル部を検出するステップと、前記1ビットのトグル部の状態に応じて前記トランスポートパケットに特定のタイプのエラーが存在するかどうかを判定するステップと、前記選択されたビデオプログラムに関連付けられたトランスポートパケットのビデオ信号処理手段への経路を設定するステップと、を含む、前記方法。北アメリカ向けのダイレクト放送衛星システムのような広域放送システムは、多数の加入者受信契約者を有する。この数は、非常に大きいため、特定の受信者のエンタイトルメントデータを急に変えることを不可能である。例えば、放送局は、スポーツ試合の切符が売り切れていない場合、スポーツスタジアムがあるエリアのテレビ放送を停止しなければならないとする。この情報は、試合の直前まで入手できないかもしれない。もちろん、放送局は、ローカル区域のテレビ放送を停止することの決定を行う直前まで待つことを望む。そこで、本発明は、エンタイトルメントデータが直ちにプログラムマテリアルを受信するための権利を否定するように階層化されたシステムを提供することを目的とする。本発明は、階層化されたエンタイトルメントデータの送受信のためのシステム/方法である。受信機の実施例は、条件付きアクセスペイロードヘッダと、残りのエンタイトルメントデータのペイロードとを含むペイロードを有するパケットを選択するパケットトランスポートプロセッサを含む。それぞれのペイロードヘッダは、各受信機に対してエンタイトルメントデータを処理することを許可又は許可しないように符号化されている、バイトのグループを含んでいる。加入者の特定の条件付きアクセスコードワードで予めプログラム化された条件付きアクセスフィルタは、加入者の特定固有の条件付きアクセスコードワードと照合するために条件付きアクセスヘッダのそれぞれのバイトのグルーピングを検査する。一致が生じる場合だけ、プロセッサはエンタイトルメントデータを処理することが許可される。図1は、複数の異なるテレビジョンまたはインタアクティブテレビジョンプログラムのコンポーネントを含む信号パケットを表す一連のボックスからなる、パケット信号ストリームを示している。これらのプログラムコンポーネントは圧縮データで形成されていると仮定され、それぞれの画像のビデオ量は可変である。パケットは一定長である。同じ添字を有する文字のパケットは単一プログラムのコンポーネントを表している。例えば、Vi、Ai、Diは、ビデオ、オーディオおよびデータパケットを表し、V1、A1、D1と呼ばれているパケットは、プログラム1のためのビデオ、オーディオおよびデータコンポーネントを表し、V3、A31、A32、D3は、プログラム3のビデオ、オーディオ1、オーディオ2およびデータコンポーネントを表している。データパケットDiは、例えば、受信機内の所定の動作を開始するための制御データを含むことができる。あるいは、それらは、例えば、受信機内に置かれまたは受信機に関連したマイクロプロセッサによって実行されるアプリケーションを形成する実行可能なコードを含むことができる。パケットのストリングの上部の行では、特定のプログラムのそれぞれのコンポーネントが一緒にグループ化して示されている。しかしながら、パケットの全ストリングにより示されているように、同一のプログラムからのパケットはグループ化する必要性がない。それぞれのコンポーネントの発生のシーケンスに対するいかなる特定の順序もまたない。それぞれのパケットは、図2に示されるようなプレフィックスおよびペイロードを含むように配置されている。本例のプレフィックスは、4つP,BB,CF,CSが1ビットフィールドで、1つSCIDが12ビットフィールドである5つのフィールドを含む、2つの8ビットバイトを含む。SCIDフィールドは信号コンポーネント識別子である。フィールドCFは、パケットのペイロードが暗号化されるかどうかを指示するためのフラグを含み、フィールドCSは、選択可能な2つの暗号解読キーのどれが暗号化パケットを暗号解読するために利用されるべきかを示すフラグを含んでいる。あらゆるパケットのプレフィックスはパケット整列され、したがってそれぞれのフィールドのロケーションは容易に識別できる。それぞれのペイロードの中には、プログラムコンポーネントに特有である連続計数CCモジュロ16、およびTOGGLEフラグビットを含むヘッダがある。連続計数は、単に、同一プログラムコンポーネントのシーケンシャルパケットの連続番号である。TOGGLEフラグビットは、論理値レベルを変えるか、または、MPEG圧縮ビデオコンポーネントのうちの画像層開始コードの発生に基づいてトグルする1ビット信号である。図3は、逆トランスポートプロセッサの要素を含むディジタルテレビジョン信号受信機の一部をブロック形式で示している。信号は、アンテナ10によって検出され、受信信号の特定の帯域を抽出し、2進形式のベースバンド圧縮信号を供給するチューナ検出器11に供給される。周波数帯域は、従来方法によってマイクロプロセッサ19を通してユーザによって選択される。通常、放送ディジタル信号は、例えばリードソロモンフォーワード誤り訂正FEC符号により誤り符号化されている。かくして、ベースバンド信号は、FECデコーダ12に供給される。FECデコーダ12は、受信ビデオを同期化し、図1に示された形式を有する信号パケットの誤り訂正済みストリームを供給する。FEC12は、規則的な間隔で、あるいは、例えばメモリコントローラ17の要求に応じてパケットを供給する。どちらの場合も、パケットフレーミングまたは同期信号がFEC回路から供給される。これは、それぞれのパケット情報がFEC12からの転送される回数を示す。検出周波数帯域は、パケット形式の複数の時分割多重化プログラムを含むことができる。有用であるために、単一プログラムからのパケットだけは他の回路要素に送られるべきである。本例では、ユーザはどのパケットを選択したらいいかを知らないものと仮定する。この情報は、プログラムガイドに含まれる。プログラムガイドは、それ自体、SCIDによってプログラム信号コンポーネントに関連したデータからなるプログラムであり、例えば、加入者のエンタイトルメントに関連している情報を含むことができる。このプログラムガイドは、それぞれのプログラムのオーディオ、ビデオ、データ等のコンポーネントのためのSCIDの各プログラムに対するリストである。プログラムガイド図1のパケットD4は、固定SCIDに割り当てられる。電力が受信機に供給されると、マイクロプロセッサ19は、プログラムガイドに関連したSCIDを、類似したプログラマブルSCIDレジスタ13のバンクの1つにロードするようにプログラムされる。FEC12からの信号のそれぞれの検出パケットのプレフィックス部のSCIDフィールドは、他のSCIDレジスタ14に連続的にロードされる。プログラマブルレジスタおよび受信SCIDレジスタは、比較器15のそれぞれの入力ポートに結合され、受信SCIDはプログラムガイドSCIDと比較される。パケットのためのSCIDがプログラムガイドSCIDに一致するならば、比較器15は、マイクロプロセッサによる使用のためにメモリ18内の所定のロケーションにそのパケットを経路選択するようにメモリコントローラ17を条件付ける。受信SCIDがプログラムガイドSCIDに一致しないならば、対応するパケットは単にダンプされる。コンピュータキーボードとして示されているが、従来の遠隔制御装置、または受信機フロントパネルスイッチであってもよいインターフェース20を介して、マイクロプロセッサは、ユーザからのプログラミングコマンドを待機する。ユーザは、チャンネル4アナログテレビシステムの用語に供給されたプログラムを見る要求を出すことができる。マイクロプロセッサ19は、チャンネル4のプログラムコンポーネントのそれぞれのSCIDのためにメモリ18にロードされたプログラムガイドを走査し、対応するコンポーネント信号処理経路に関連するレジスタバンク13のプログラマブルレジスタの中のそれぞれの他のレジスタにこれらのSCIDをロードするようにプログラムされる。所望のプログラムのためのオーディオ、ビデオ、またはデータプログラムの受信パケットは、最終的に、それぞれのオーディオプロセッサ23、ビデオプロセッサ22、または補助データプロセッサ21、24信号プロセッサのそれぞれに経路選択されなければならない。データは、比較的定速度で受信されるが、信号プロセッサは、公称的には、バースト状の入力データを必要とする例えば、それぞれの伸長形式による。図3に示した典型的なシステムは、最初に、それぞれのパケットを共通メモリ18内の所定メモリロケーションに経路選択する。その後、それぞれのプロセッサ21~24はメモリ18からのコンポーネントパケットを要求する。共通メモリを通してコンポーネントの経路選択をすることによって、所望の信号データ速度バッファリングまたはスロットリングの対策が実現できる。オーディオパケット、ビデオパケットおよびデータパケットは、それぞれの所定のメモリロケーションにロードされ、コンポーネントデータへのバッファアクセスに便利な信号プロセッサを使用可能にする。それぞれのコンポーネントパケットのペイロードは適当なメモリ領域にロードされるように、それぞれのSCID比較器はこれらのメモリ領域に関連している。この関連は、メモリコントローラ17において実配線されるか、または、この関連はプログラマブルであってもよい。前者の場合、プログラマブルレジスタ13の中の特定のレジスタは、常にオーディオ、ビデオおよびデータSCIDにそれぞれ割り当てられる。後者の場合、オーディオ、ビデオおよびデータSCIDはプログラマブルレジスタ13のいずれかにロードされることができる。そして、それぞれのSCIDがプログラマブルレジスタにロードされるとき、適当な関連はメモリコントローラ17においてプログラムされる。定常状態では、プログラムSCIDがプログラマブルレジスタ13に記憶された後、受信信号パケットのSCIDは、プログラマブルSCIDレジスタ内のSCIDの全てと比較される。一致が、記憶されたオーディオ、ビデオ、またはデータSCIDのいずれかとなされるならば、対応するパケットペイロードは、オーディオ、ビデオまたはデータメモリ領域またはメモリブロックにそれぞれ記憶される。それぞれの信号パケットは、信号暗号解読器16を介してFEC12からメモリコントローラ17に結合される。信号ペイロードだけが暗号化され、パケットヘッダは、変更されない暗号解読器によって通過される。パケットが暗号解読されるべきか否かは、パケットプレフィックスのCFフラグによって決定され、いかにパケットが暗号解読されるべきか2つの代替の暗号解読キーのうちの1つはCSフラグによって決定される。それぞれのパケットに対していかなるSCID一致もないならば、暗号解読器は単にいかなるデータの通過も不能にする。暗号解読器は、スマートカード装置31によって提供される暗号解読キーによってプログラムされる。このスマートカードは、プログラムガイドの特定のパケットに含まれたエンタイトルメント情報に応答して、適当な暗号解読キーを生成する。本例のシステムは、2つのレベルの暗号またはプログラムアクセス、すなわちエンタイトルメント制御メッセージECMおよびエンタイトルメント管理メッセージEMMを取り入れる。プログラムエンタイトルメント制御および管理情報は、プログラムガイドを含むパケットストリームに含まれる特定のSCIDと共に識別できるパケットで規則的に伝送される。これらのパケットの中に含まれるECM情報は、スマートカードで使用されて、暗号解読器によって使用される暗号解読キーを生成する。これらのパケットの中に含まれるEMM情報は、加入者固有のスマートカードで使用されて、加入者がエンタイトルメントされるプログラムマテリアルを決定する。これらのパケット内のEMMエンタイトルメント情報は、地理的に特有に、またグループ特有に、あるいは加入者特有にされることができる。例えば、本システムは、スマートカードから課金情報をプログラムプロバイダ、例えば、衛星放送局に知らせるためのモデム図示せずを含む。スマートカードは、例えば、受信機ロケーションのエリアコードおよび電話交換局と共にプログラムされることができる。EMMは、スマートカードで処理されるとき、特定のエリアコードにおける特定のプログラムの受信の権利があるかまたはこのプログラムの受信を否定するデータを含んでいる。プログラムプロバイダは、例えば、見る度に支払うプログラムに関する限り、非常に短いリードタイムである加入者に権利を付与する能力を要求する。特定の加入者の識別は、特定のプログラムの放送直前まで不能になることがある。このような短いリードタイムの場合、加入者に基づいてEMMをプログラムすることができないこともある。他の符号化層は条件付きアクセスコードを含むことによってエンタイトルメント情報に直ちに加えられ、それぞれのパケット内のEMMおよびECMデータの受信を許可/禁止し、それによって、いくつかのプログラムに対してほぼ瞬間の許可/禁止を可能にする。EMMおよびECMエンタイトルメントデータを含むパケットペイロードは、特別に符号化された4つの32ビットのグループに配置された128ビットのペイロードヘッダを含んでいる。各グループは条件付きアクセスコードで符号化され、各条件付きアクセスコードは異なって符号化されることができる。各加入者は特定の条件付きアクセスコードに割り当てられる。照合フィルタ、すなわちEコードデコーダ30は、128ビットヘッダ内の加入者固有のビットパターンを検出するように構成されている。一致が検出されるならば、デコーダはメモリコントローラ17およびスマートカード31と通信し、エンタイトルメントペイロードの残りがスマートカードに利用されるようにするメモリ18を介して。一致が検出されないならば、ペイロードは特定の受信機によって受容されない。照合フィルタ30がプログラマブルされるならば、条件付きアクセスコードは、周期的に変えることができる。これらのコードはスマートカードによって周期的に供給されることができる。視聴者のエンタイトルメントに関連したスマートカードの動作に関するより特定の詳細に関しては、サテライトブック、衛星テレビ理論と実践の完全ガイドの第25節に述べられている。照合フィルタ、すなわちEコードデコーダは、特定のMPEGビデオヘッダを検出するという第2の機能を実行するように構成されている。これらのヘッダは32ビット開始コードであるそのことがエンタイトルメントペイロードのヘッダが32ビットグループで符号化される理由である。ビデオデータが消失されるならば、MPEGビデオデコーダは特定のデータエントリポイントでビデオデータの伸長だけを再開始できる。これらのエントリポイントは、MPEG開始コードと一致する。デコーダは、ビデオパケットの消失後にメモリへのビデオデータの流れを禁止し、次のMPEG開始コードがデコーダ30によって検出された後だけメモリへのビデオペイロードの書き込みを再開するように、メモリコントローラ17と通信するように構成されている。図4は、条件付きアクセス情報またはMPEG開始コードを含むパケットを検出するための典型的な装置図3のデコーダ30を示している。デコーダ30がエンタイトルメントペイロードまたはMPEG開始コードを検出するように条件付けられるかどうかは、現在受信されているSCIDの機能による。図4では、暗号解読器16から供給されたデータは8ビットバイトであり、パケット整列されていると仮定される。すなわち、エンタイトルメントペイロードの第1バイトまたはMPEG開始コードの第1バイトは、パケットペイロードの始め等の特定のバイト位置に正確に位置合わせされている。その理由は、特定のヘッダ又は開始コードワードを検出するためであり、ビット/バイトストリームにおけるそれらの位置は精密に知られているからである。暗号解読器16からのデータは、比較器254のそれぞれの第1の入力接続部に結合された8ビット並列出力ポートを有する8ビットレジスタ250に供給される。この比較器254は、例えば、アンドゲートおよびラッチに結合されたそれぞれの出力接続部を有する8つの2入力型排他的ノアXNOR回路のバンクで構成することができる。このラッチは、各バイト間隔でアンドゲートの結果をラッチするように構成されているデータラッチであってもよい。32ビットMPEG開始コードは、8ビットレジスタバンク265内に4バイトとして記憶される。条件付きアクセスコードは16の8ビットレジスタバンク257内に8ビットバイトとして記憶される。レジスタバンク251および265のロードは、マイクロプロセッサ19および/またはスマートカードによって制御される。開始コードレジスタ265は、4:1のマルチプレクサ266に結合され、条件付きアクセスコードレジスタは16:1のマルチプレクサ257に結合されている。マルチプレクサ257,266の出力ポートは、2:1のマルチプレクサ249に結合されている。マルチプレクサ249のそれぞれの出力接続部は比較器254のそれぞれの対応する第2の入力端子に結合されている。マルチプレクサ249,257および266の入出力接続部は8ビットバスであることに注目。レジスタ250のそれぞれの出力接続部に示されたそれぞれの値が対応してマルチプレクサ249のそれぞれの出力接続部に示された出力値と同じであるならば、真の信号は対応するデータバイトのための比較器254によって発生される。開始コードを検出するために、マルチプレクサ266は、カウンタ258によって走査され、暗号解読器16からの最初の4つのペイロードデータバイトの発生と同期して4つの異なるレジスタ265を比較器にシーケンシャルに結合する。一方、条件付きアクセスコードを検出するために、マルチプレクサ257は、カウンタ258によって走査され、レジスタ265のうちの異なる一つを比較器254にシーケンシャルに結合する。比較器の出力は、累算テスト回路255に供給されている。回路255は、所定数のバイト一致条件のいずれかが発生したかどうかを決定し、発生したならば、検査中の特定ペイロードの残りの部分のエンタイトルメントデータのための書き込みイネーブル信号を発生する。本システムでは、エンタイトルメントペイロードヘッダは、4つの32ビット条件付きコードに配列された128ビットを含む。異なった加入者の条件付きアクセスフィルタ30は、128ビットのバイトの異なった組み合わせを探すように構成される。例えば、ある加入者装置は条件付きアクセスコードのうちの最初の4バイトに一致するように構成することができる。他の加入者装置は、条件付きアクセスコードの第2番目の4バイトに一致するように構成する、などが可能である。これらの典型的な状況のいずれにおいて、回路255は、適当な4つの連続的なバイトに対する一致が発生されたどうかを決定する。加入者固有の条件付きアクセスコードに対してバンク内の16のレジスタの使用は回路構造を多少簡単にする。各加入者は4バイトの条件付きアクセスコードを有しているので、このコードを16のレジスタセット内に4回ロードすることができる。したがって、送信機では、放送局は、送信される条件付きアクセスコードのうちの4バイトの4つのグループに対する相対ロケーションにかかわる必要がない。代替装置は、加入者固有の条件付きアクセスコードを保持するように単一グループの4つのレジスタのみを組み込むことができ、これらのレジスタを128ビットのエンタイトルメントペイロードヘッダによってモジュロ4を反復して走査することができる。このことは、好ましくないことには他のサービスのシステム帯域を制限し、あまりにも多くの時間がかかるだけであるので、あらゆる機能に対する232の可能なエンタイトルメントコードのそれぞれを送信することは実用的でない。グルーピングがそれぞれの4バイトの条件付きアクセスコードの中の3バイトで規定されるこの制限は、いくつかの論理値グルーピングにより条件付きアクセスコードを配列することによって多少解決することができる。このように、グループの全ての加入者は、4バイトの条件付きコードの中の1バイトを無視するためにそれぞれのグループの受信機を条件付けることによってアドレス指定することができる。本例では、各4バイトアクセスコードは256の加入者を表す。フィルタ条件付けは、例えば、最初の4バイト位置の全ての0を送信し、この条件を検出するように条件付きアクセスフィルタを構成することによって行われる。この条件が満たされるならば、条件付きアクセスフィルタは、それぞれの4バイトのグループの3バイトだけの一致を検出するように電気的に再構成される。第3の変更例は、全ての加入者の条件付きアクセスを許可するために提供される。これは、オール0またはオール1でエンタイトルメントペイロードを符号化することによって行われる。したがって、条件付きアクセスフィルタは、オールゼロ検出器要素261~263も含むように構成される。データのそれぞれの受信バイトのビットは8ビットオアゲート263のそれぞれの端子に結合される。このビットの中のいずれかのビットが論理値1であるならば、オアゲート263は論理値1を出力する。オアゲート263の出力は、D形ラッチ261のデータ入力端子およびQ出力端子にそれぞれ結合された出力および第2の入力を有する2入力オアゲート262の一方の入力に結合されている。D形ラッチは入力データバイトの受信と同期してタイミング回路259によってクロックされる。ラッチがリセットされた後、発生するデータバイトのいずれのいかなるビットも論理値1であるならば、ラッチ261は、次のリセットパルスまでそのQ出力で論理値1を示す。ラッチ261のQ出力は、ラッチが1出力レベルを示すときは常に、0出力レベルを示すインバータに結合されている。このように、その後、128ビット16バイトのヘッダがレジスタ250を通過されるならば、インバータの出力はハイで、128ビットは0となる。ラッチは、各新しいペイロードの受信よりも前にリセットされる。エンタイトルメントペイロードヘッダの通過後、インバータからのハイ出力レベルの検出に応答して、回路255はデータ書き込みイネーブル信号を発生する。図5は、条件付きアクセスフィルタ30の動作を示すフローチャートである。この処理は関連したSCIDの検出によって開始される。一旦適当なSCIDが検出されると、ペイロードはフィルタ30に供給される{300}。比較{302}が、ヘッダの最初の4バイトと加入者固有の条件付きアクセスコードとの間で行われる。一致が生じるならば、エンタイトルメントデータ書き込みイネーブルが発生される{310}。一致が生じないならば、最初の4バイトがオール0に対して検査される{306}。オール0が検出されないならば、ヘッダの第2番目の4バイトは加入者固有の条件付きアクセスコードと比較される{308}。これらが一致するならば{312}、書き込みイネーブルが発生される{310}。一致しないならば、第3番目の4バイトセットは加入者固有の条件付きアクセスコードと比較される{314}。これが一致するならば{316}、書き込みイネーブルが発生される{310}。一致しないならば、第4番目の4バイトセットが加入者固有の条件付きアクセスコードと比較される{317}。これらが一致するならば{318}、書き込みイネーブルは発生される{310}。一致しないならば、ヘッダの最後の12バイトが、オール0に対して検査される{320}。オール0が最後の12バイトで検出されるならば、書き込みイネーブルが発生され{310}、検出されないならば、処理は次のパケットを待つ{300}。代替装置では、ステップ{320}で、本システムはヘッダの全16バイトのオール0を探すようにプログラムすることができる。ある種の他の固定パターンが、全て1または例えば、0と1とが交互に現れるパターンのような全て0以外を利用してもよいことを理解すべきである。ステップ{306}で、最初の4バイトが全て0であるならば、ヘッダの第2番目の4バイトのうちの3つが加入者固有の条件付きアクセスコードと比較される{354}。図4の装置では、このことは、唯一の4バイトのグループに対する3つの一致を探すように要素255を構成することによって達成される。4バイトのうちの3つが一致するならば{326}、書き込みイネーブルが発生され{322}、一致しないならば、4ヘッダバイトのうちの第3のセットのうちの3つが加入者固有の条件付きアクセスコードと比較される{330}。4バイトのうちの3つが一致するならば{332}、書き込みイネーブル信号が発生され{322}、一致しないならば、最後の4バイトのうちの3つが加入者固有の条件付きアクセスコードと比較される{336}。これらが一致するならば、書き込みイネーブル信号が発生され{322}、一致しないならばオール0条件が検査される{320}。4バイトのそれぞれのグループのうちの2つだけが一致される場合、他の検出レベルはステップ{324~340}と同様に組み入れることができることに注目すべきである。このことは、例えば、最初の8バイトを全て0に、または、最初の4バイトを全て1に配列することによって条件付けることができる。この場合、条件付けアクセスコードによって使用可能にされるそれぞれのグループはずっと大きくなる。メモリにエンタイトルメントペイロードを記憶することに関しては、本システムは、条件付きアクセスコードを受信し、検査するとき、ペイロードヘッダをメモリに書き込む。条件付きアクセスコードが検出されるならば、検出される書き込みイネーブルは、メモリ制御がペイロードの書き込みを継続することを可能にするだけである。反対に、条件付きアクセスコードがペイロードの最初の16バイトで検出されない場合、ペイロードの残りはメモリに書き込まれなく、条件付きアクセスペイロードに対するメモリアドレスはペイロード条件付きアクセスヘッダの中の16バイトを上書きするためにリセットされる。図6は、1度に32ビット4バイトと同じぐらい多数と比較する他の条件付きアクセスフィルタである。これは、開始コードのバイト位置を予め知らないで開始コードの検出を可能にする。開始コードは、8ビットレジスタに記憶される8ビットのμPCバスが使用されるために8ビットレジスタが使用される。レジスタの出力ポートはマルチプレクサ298の第1の入力セットに結合されている。加入者固有の条件付きアクセスコードは、マルチプレクサ298のための第2の入力セットに結合されたそれぞれの出力ポートを有する第2のレジスタバンク299に記憶される。マルチプレクサ298は、比較器270~273のそれぞれの第1の8ビット入力ポートに接続された出力セットを有する。レジスタ265または299が比較器に結合されるかどうかは、μPCに応答する累算テスト回路297によって制御される。暗号解読器16からの入力バイトは並列/直列レジスタ247~277に結合される。それぞれのレジスタ274~277は、比較器270~273の第2の8ビット入力ポートにそれぞれ結合された並列出力ポートを有する。本システムは、入力信号の4つの連続バイトがレジスタ247~277に現時点でロードされるようにタイミングをとる信号は、DMA98に供給され、それに応答して、メモリアクセス競合が調停される。DMA98は、それぞれのプログラム信号コンポーネントに対する適当な読み出しまたは書き込みアドレスを供給するようにサービスポインタコントローラ93と協働する。いろいろな信号コンポーネントのメモリブロックに対するそれぞれのアドレスは、4つのプログラムコンポーネントのグループ、すなわちサービスポインタレジスタ83,87,88および92によって発生される。それぞれの信号コンポーネントが記憶されるそれぞれのメモリのブロックに対する開始ポインタはそれぞれの信号コンポーネントのためのレジスタ87に含まれている。開始ポインタは、固定値であってもよいし、またはマイクロプロセッサ19において従来のメモリ管理法で計算されてもよい。それぞれのブロックの最後のアドレスに対するポインタは、各潜在的プログラムに対して1つサービスレジスタバンク88に記憶されている。開始アドレスと同様に、終了、すなわち最後のアドレスは固定値であってもよいし、またはマイクロプロセッサ19によって供給された値で計算されてもよい。開始ポインタおよび終了ポインタに対して計算値を使用することは、より少ないメモリを有するより用途の広いシステムを提供するので、好ましいことである。メモリ書き込みポインタ、すなわちヘッドポインタは、加算器80およびサービスヘッドレジスタ83によって発生される。各潜在的プログラムコンポーネントに対してサービスヘッドレジスタがある。書き込みポインタ値、すなわち、ヘッドポインタ値はレジスタ83に記憶され、メモリ書き込みサイクル中、アドレスマルチプレクサ105に供給される。1単位だけ増分されるヘッドポインタは、加算器80にも結合され、増分されたポインタは、次の書き込みサイクルの間、適当なレジスタ83に記憶されている。現在サービスされている適当なプログラムコンポーネントに対するレジスタ83がサービスポインタコントローラ93によって選択される。本例では、開始ポインタおよび終了ポインタは16ビットポインタであると仮定される。レジスタ83は、16ビットの書き込みポインタ、すなわちヘッドポインタである。16ビットポインタは、レジスタ87および88に開始ポインタおよび終了ポインタをロードするための16ビットバスまたは8ビットバスの使用を容易にするために選択されている。一方、メモリ18は18ビットアドレスを有する。18ビットの書き込みアドレスは、結合された18ビットの書き込みアドレスの最上位のビット位置に開始ポインタビットを有する16ビットのヘッドポインタに開始ポインタの最上位の2ビットを連結することによって形成される。開始ポインタは、それぞれのレジスタ87によってサービスポインタコントローラ93に供給される。サービスポインタコントローラは、レジスタ87に記憶された開始ポインタからより上位の開始ポインタビットを解析し、これらのビットを16ビットのヘッドポインタバスに関連付ける。このことは、マルチプレクサ85を出るヘッドポインタバスと結合されていることが示されるバス96によって、かつ、図8の太い矢印によって示されている。図8では、ボックスの最上部、中間および最下部の行は、開始ポインタ、アドレスおよびヘッドまたはテールポインタのビットをそれぞれ表している。より高位に番号付けられているボックスはより上位のビット位置を表している。矢印は、それぞれのアドレスのビットが開始ポインタまたはヘッド/テールポインタのどのビット位置から得られるかを示している。本展開において、太い矢印は定常動作を表している。同様に、メモリ読み出しポインタまたはテールポインタは、加算器79およびサービステールレジスタ92によって発生される。各潜在的なプログラムコンポーネントに対してサービステールレジスタがある。読み出しまたはテールポインタ値はレジスタ92に記憶され、メモリ読み出しサイクル中にアドレスマルチプレクサ105に供給される。1単位だけ増分されるテールポインタは、加算器79にも結合され、増分されたポインタは次の読み出しサイクルの間、適当なレジスタ92に記憶される。レジスタ92は、現在サービスされている適当なプログラムコンポーネントのためのサービスポインタコントローラ93によって選択される。レジスタ92は16ビットのテールポインタを供給する。18ビットの読み出しアドレスは、結合された18ビットの書き込みアドレスの最上位のビット位置に開始ポインタビットを有する16ビットのテールポインタに開始ポインタの最上位の2ビットを連結することによって形成される。サービスポインタコントローラは、レジスタ87に記憶された開始ポインタからより上位の開始ポインタビットを解析し、これらのビットを16ビットのヘッドポインタバスに関連付ける。このことは、マルチプレクサ90を出るテールポインタバスと結合されているバス94によって示されている。データは計算されたアドレスでメモリ18に記憶されている。1バイトのデータを記憶した後、ヘッドポインタは、1だけ増分され、このプログラムコンポーネントのための終了ポインタと比較され、これらが等しいならば、ヘッドポインタのもっと有意なビットが開始ポインタの下位14ビットと取り換えられ、0がアドレスのヘッドポインタ部の下位2ビット位置に置かれる。このことは、開始ポインタとアドレスとの間のハッチされた矢印に関して図8に示されている。この動作は、サービスポインタコントローラ93からマルチプレクサ85からのヘッドポインタバスを指示する矢印97によって示される。下位14の開始ポインタビットを供給することによって、ヘッドポインタビットを無効にすると仮定する。この1書き込みサイクルの間、ヘッドポインタビットをアドレスの下位開始ポインタビットと取り換えることによって、メモリは、上位の2開始ポインタビットで指定されたメモリブロックを通してスクロールし、したがって、ブロック内の独自のメモリロケーションのための各パケットの開始での書き込みアドレスの再プログラミングを不要にする。ヘッドポインタが常にテールポインタメモリ18からデータをどこに読み出すかを指示するために使用されるに等しいならば、ヘッドテールクラッシュが発生したことを示す信号がマイクロプロセッサの割り込み部に送られる。このプログラムチャネルからメモリ18にさらに書き込むことは、マイクロプロセッサがチャネルを再使用可能にするまで、不能にされる。この場合は非常にまれであり、通常動作中、発生すべきでない。データは、加算器79およびレジスタ92によって計算されたアドレスに従って、それぞれの信号プロセッサの要求でメモリ18から検索される。1バイトの記憶データを読み出した後、テールポインタは、1単位だけ増分され、サービスポインタコントローラ93においてこの論理チャネルのためのエンドポインタと比較される。テールポインタおよびエンドポインタが等しいならば、テールポインタのより上位のビットは下位の14ビットの開始ポインタと取り換えられ、0がアドレスのテールポインタ部の下位の2ビット位置に置かれる。これは、コントローラ93から出て、マルチプレクサ90からのテールポインタバスを指示する矢印95によって示されている。いま、テールポインタがヘッドポインタに等しいならば、それぞれのメモリブロックは空として規定される。そして、より多くのデータがこのプログラムチャネルのためにFECから受信されるまで、これ以上のバイトは関連する信号プロセッサに送られない。それぞれの書き込みアドレスまたは読み出しアドレスのヘッドポインタ部またはテールポインタ部をスタートポインタの下位14ビットで実際に置き換えることは、適当な多重化または3状態の相互接続の使用によって達成される。メモリ読み出し/書き込み制御は、サービスポインタコントローラおよび直接メモリアクセスDMA、要素93および94によって実行される。DMAは読み出しサイクルおよび書き込みサイクルをスケジュールするようにプログラムされる。スケジューリングは、FEC12がメモリに書き込まれるデータを供給しているか否かによる。いかなる入力信号コンポーネントデータが消失されないようにFECデータ書き込み動作が優先する。図7に示された典型的な装置では、メモリをアクセスできる4つの種類の装置がある。これらは、スマートカード、FECより正確には、暗号解読器16、マイクロプロセッサ19およびオーディオプロセッサおよびビデオプロセッサのようなアプリケーションデバイスである。メモリ競合は下記のように処理される。上記の様々な処理要素からのデータ要求に応答して、DMAは、それぞれのプログラムコンポーネントに対するメモリのブロックを割り当てる。メモリへのアクセスは、その間に1バイトのデータがメモリ18から読み出されるかまたはメモリ18に書き込まれる95nSタイムスロットで実現できる。FECがデータを供給していることまたはFECがデータを供給していないことのそれぞれで規定される2つの主要なアクセス割り当てモードがある。これらのモードの各々に関して、最大5Mバイト/秒のFECデータ速度、すなわち各200nSに対して1バイトと仮定すると、タイムスロットは下記のように割り当てられ、優先順位が付けられる。これらは、FECがデータを供給している場合1EECデータ書き込み;2アプリケーションデバイス読み出し/マイクロプロセッサ読み出し/書き込み;3FECデータ書き込み;4マイクロプロセッサ読み出し/書き込み;およびFECがデータ供給していない場合1スマートカード読み出し/書き込み;2アプリケーションデバイス置読み出し/マイクロプロセッサ読み出し/書き込み;3スマートカード読み出し/書き込み;4マイクロプロセッサ読み出し/書き込み。である。FECデータ書き込みは延期することができないために、FECすなわち、より正確には暗号解読器は、データを提供している場合、各200nS期間中メモリアクセスを保証しなければならない。交互のタイムスロットがアプリケーションデバイスおよびマイクロプロセッサによって共有される。要求デバイスに対して供給可能であるいかなるデータもないとき、マイクロプロセッサはアプリケーションタイムスロットの使用を実現する。コントローラ93は、SCID検出器と通信して、メモリ書き込み動作の間、それぞれの開始ポインタレジスタ、ヘッドポインタレジスタおよび終了ポインタレジスタのどれにアクセスするかを決定する。コントローラ93は、DMAと通信して、メモリ読み出し動作の間、それぞれの開始レジスタ、終了レジスタおよびテールレジスタのどれにアクセスするかを決定する。DMA98は、マルチプレクサ99、104および105によって対応するアドレスおよびデータの選択を制御する。図9は、DMA98のメモリアクセス処理の典型的なフローチャートを示す。DMAは、SCIDの検出によって受信パケットの検出または非検出に応答する{200}。メモリに書き込まれる暗号解読器16からのデータの存在を示すSCIDが検出されたならば、暗号解読器からの1バイトのプログラムデータはバッファメモリ18に書き込まれる{201}。書き込まれるメモリのブロックは、現SCIDに応答するプロセッサ93によって決定される。次に、スマートカードおよびμPCを含むプログラムコンポーネントプロセッサのいずれかがデータまたはメモリ18への読み出し/書き込みR/Wアクセスを要求しているか否かを決定する{202}。いかなるデータ要求もDMAで行われていないならば、処理はステップに戻る{200}。データR/W要求が行われていたならば、DMAは要求の優先順位を決定する{203}。これは、従来の割り込みルーチンによってまたは、その代わりに、データを要求するこれらのプログラムプロセッサの任意の順序のシーケンシャル1バイトサービスによって達成される。例えば、任意のアクセス優先順位はビデオ、オーディオI、オーディオII、スマートカード、およびμPCであると仮定する。ビデオ、オーディオIIおよびμPCだけがメモリアクセスを要求していることも仮定する。現ステップの動作中{203}、1バイトのビデオがメモリから読み出される。次のステップ動作中{203}、1バイトのオーディオIIがメモリから読み出され、次のその後のステップの発生中{203}、1バイトのμPCデータはメモリ18に書き込まれ、またはメモリ18から読み出される等である。スマートカードおよびμPCアクセスのためのアドレスは、スマートカードおよびμPCのそれぞれによって提供されるが、ビデオ、オーディオおよびプログラムガイドのためのアドレスはアドレスポインタ装置80~93から供給されることに注目すべきである。一旦優先アクセスが確立されると{203}、必要なプログラムプロセッサは、メモリ18に書き込まれるかまたはメモリ18から読み出される1バイトのデータによってサービスされる{204}。次に、暗号解読器16からの1バイトのデータはメモリに書き込まれる{205}。μPCがアクセスを要求しているかどうかを決定するための検査{206}が行われる。μPCがアクセスを要求しているならば、1バイトのデータによってサービスされる{207}。μPCがアクセスを要求していないならば、処理は、プログラムプロセッサのいずれかアクセスを要求するかどうかを決定するためにステップ{202}にジャンプする。このように、入力データは常に他のメモリアクセス期間へのアクセスが保証され、介在するメモリアクセス期間はプログラムプロセッサの間で広げられる。暗号解読器16からデータが現在得られないならば、すなわち、SCIDは現在検出されないならば、処理{208~216}が後に続く。最初に、スマートカードは、メモリアクセスを要求しているか否かを決定するために検査される{208}。要求しているならば、1バイトのメモリアクセスが与えられ{209}、そうでないときには、プログラムプロセッサのいずれかがメモリアクセスを要求しているか否かを決定するために検査が行われる{210}。データR/W要求が行われたならば、DMAは、要求の優先順位を決定する{211}。適当なプロセッサは、1バイトのメモリ読み出しまたは書き込みアクセスによってサービスされる{212}。データR/W要求がプログラムプロセッサによって行われないならば、処理は、スマートカードがメモリアクセスを要求しているか否かを決定するためにテストが実行されるステップ{213}にジャンプする。要求しているならば、スマートカードは1バイトのメモリアクセスによってサービスされ{216}、そうでないと、処理はステップ{200}にジャンプする。この好ましい例では、FECがデータを供給していないモードでは、スマートカードは全ての他のプログラムプロセッサよりも2対1のアクセス優先順位が与えられる。この優先権は、DMA装置内のプログラマブルステートマシンにプログラムされ、μPCによって変更される。前述のように、本システムはインタアクティブサービスを提供することを意図され、μPC19は、インタアクティブデータに応答して、少なくとも一部はインタアクティブ動作を実行する。この役割では、μPC19は、アプリケーションストレージおよび作業メモリの両方に対してメモリ18を使用する。これらの例では、システムオペレータは、μPC19により大きな周波数のメモリアクセスを与えるためにメモリアクセス優先順位を変えることができる。メモリアクセス優先順位の再プログラミングを、インタアクティブアプリケーション命令のサブセットとして含むことができる。パケットが消失された場合、メディアエラーコードをビデオコンポーネント信号ストリームに挿入し、特定の信号エントリポイントがデータストリームで発生されるまで、伸長を中断するようにビデオ信号伸長器を条件付けることは有利なことである。どこで、どのビデオパケットで次のエントリポイントが発生できるかを予測することは実際的でない。できるだけ高速に次のエントリポイントを探すために、パケットが消失されたことを検出した後の最初のビデオパケットの始めでメディアエラーコードを含むことが必要である。図7の回路は、各ビデオパケットの始めにメディアエラーコードを置き、次に、直前のパケットのいかなる消失もない場合、それぞれのパケットのメディアエラーコードを削除する。メディアエラーコードは、暗号解読器から受信するビデオペイロードより先にM書き込みサイクルの間、メモリ18に書き込むことにより、現ビデオパケットペイロードのために備えてある第1のM個のメモリアドレスロケーションに挿入される。同時に、マルチプレクサ99は、発生源100からのメディアエラーコードをメモリ18のI/Oに与えるようにDMA98によって条件付けられる。Mは、単に、メディアエラーコードを記憶するのに必要な整数のメモリロケーションである。メモリは8ビットバイトを記憶するものであり、メディアエラーコードは32ビットであると仮定すると、Mは4に等しい。メモリにメディアエラーコードをロードするためのアドレスは、マルチプレクサ82およびマルチプレクサ85を介して、それぞれのビデオコンポーネントサービスレジスタ83によって供給される。ビデオコンポーネントデータでロードされるメモリロケーションにメディアエラーコードをロードするためのポインタレジスタ83から供給された第1のM個のアドレスは単に、通常ビデオヘッドポインタによって発生される次のM個のシーケンシャルアドレスであることが理解される。これらの同一アドレスはM段の遅延素子84に結合されるので、メディアエラーコードの最後のバイトがメモリ18に記憶された直後、第1のM個のアドレスは遅延素子84の出力として得られる。メディアエラーコードをメモリにロードするためのタイミングは消失パケットの決定と一致する。パケットエラーまたは消失検出は、現パケットのCCおよびHDデータに応答するエラー検出器101によって実行される。パケット消失が検出されたならば、現パケットのビデオコンポーネントは、次のアドレスロケーション、すなわちM1番目のアドレスロケーションで始まるメモリ18に記憶される。これは、適当なレジスタ83から遅延されないヘッドポインタを送り続けるようにマルチプレクサ85を条件付けることによって達成される。一方、パケット消失が検出されないならば、現パケットにおけるビデオコンポーネントの第1のMバイトは、メディアエラーコードが直前に記憶されたメモリロケーションに記憶される。パケットエラーまたは消失検出は、現パケットのCCおよびHDデータに応答するエラー検出器101によって実行される。検出器101は、現パケットの連続カウントCCが前のパケットのCCと1単位だけ異なるか否かを決定するために、現パケットの連続カウントCCを検査する。さらに、現パケットのTOGGLEトグルビットが検査され、それがそれぞれのビデオフレームに対して適切な状態を示しているか否かを決定する。CC値が不正確であるならば、TOGGLEビットの状態が検査される。CCおよびTOGGLEビットの一方または両方がエラーであるか否かに応じて、第1または第2のエラー修復モードがそれぞれ実行される。誤っているCCおよびTOGGLEビットの両方によって開始される第2のモードにおいて、本システムは画像層ヘッダを含むパケットにリセットされるように条件付けられる。CCだけが誤っている第1のモードでは、本システムはスライス層ヘッダを含むパケットにリセットされるように条件付けられる。スライス層は、フレーム内の圧縮データのサブセットである。第1および第2のモードの両方では、メモリに書き込まれたメディアエラーコードは、訂正動作を実行するよう伸長器に報知するために、それぞれのペイロードに保持される。SCID検出器、暗号解読器、アドレス指定回路、条件付きアクセスフィルタ、およびスマートカードインターフェスは全て単一の集積回路上に含まれるようにシステムを分割することは特に有効であることが分かった。これは、臨界的なタイミング制約をもたらす外部経路の数を制限する。"