(57)【要約】【課題】エンタイトルメント・データが直ちにプログラム・マテリアルを受信するための権利を否定するように階層化されたシステムを提供する。【解決手段】本装置は、条件付きアクセス・ペイロード・ヘッダと残りの権利付与データのペイロードを含むペイロードを有する信号パケットを選択するパケット・トランスポート・プロセッサを含む。各ペイロード・ヘッダは、受信機が権利付与データを処理することを可能または不能にするように符号化されるバイトのグループを含む。加入者固有の条件付きアクセス・コード・ワードで予めプログラムされたフィルタは、加入者固有の条件付きアクセス・コード・ワードと一致させるために条件付きアクセス・ヘッダのそれぞれのバイトのグルーピングを検査する。一致が生じる場合、プロセッサは権利付与データを処理する。権利付与は伝送信号の暗号解読部のための暗号解読キーを生成するために利用される。【選択図】図３
2010166630.tif 000002
【特許請求の範囲】
【請求項１】
パケット化トランスポート・ストリームを処理するシステムであって、
複数のトランスポート・パケットからなるパケット化トランスポート・ストリームのパケット化トランスポート・ストリーム源と、
前記トランスポート・パケットを受信する手段と、
前記受信した前記トランスポート・パケットに含まれるパケット識別子を識別し、一連のトランスポート・パケットを選択する手段であって、選択された一連のトランスポート・パケットにおける各トランスポート・パケットは、選択されたパケット識別子に対応するパケット識別子を含む、該手段と、
前記選択された各トランスポート・パケットの中で、前記トランスポート・パケットの順番を表す計数情報を提供する計数部を調べる手段であって、前記計数部は、所定のビット数をもつフィールドからなり、前記一連のトランスポート・パケット内の連続するトランスポート・パケットの順番で増分し、かつ、前記所定のビット数で表される最大値を経てゼロに戻り、所望の一連のトランスポート・パケットが、前記選択された一連のトランスポート・パケットに付随する計数部の前記順番にしたがって受信されているかどうかを判定し、さらに、前記選択された各トランスポート・パケットの中で、前記トランスポート・パケットに存在するエラーの情報を提供する１ビットのトグル部を調べ、前記１ビットのトグル部の状態に応じて前記トランスポート・パケットにエラーが存在するかどうかを判定する、該手段と、
前記選択された一連のトランスポート・パケットを処理して出力信号を生成する手段と、
を含む、前記システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット・ビデオ信号からプログラム・コンポーネント・データのパケットを処理するためのシステム、特に、エンタイトルメント(entitlement)情報のために、加入者が条件付きアクセスをするパケット・ペイロード(payload)を検出する回路に関するものである。
【背景技術】
【０００２】
この検出する回路は、例えば、米国特許第５，１６８，３５６号および米国特許第５，２８９，２７６号から公知であり、エラー保護／訂正の対策(measure)をもたらすそれぞれのパケットと共にパケットで圧縮ビデオ信号を伝送することは有利なことである。前述の特許に開示されたシステムは、それぞれの伝送チャネルから、複数のプログラム・コンポーネントを持つとはいえ単一のテレビジョン・プログラムを伝送し、処理する。これらのシステムは、再生のためにビデオ・コンポーネントを条件付けるようにさらに処理するために、それぞれのプログラムのビデオ信号・コンポーネントを抽出するように、逆トランスポート(inverse  transport)・プロセッサを利用する。
【０００３】
それは、例えば、伝送されたテレビジョン信号の受け取りは、信号を暗号化することによって特定の加入者に限定されるという、英国のウイルトシヤー州、クリックレード、ピッツフィールド１７(Wilts，Cricklade，17  Pittfield)のスフィスト・テレビジョン出版物(Swift  Television  Publications)、サテライト・ブック(SATELLITE  BOOK)、「衛星テレビ理論と実践の完全ガイド(A  COMPLETE  GUIDE  TO  SATELLITE  TV  THEORY  AND  PRACTICE)」から公知である。この限定は、異なるエンタイトルメント・データ(entitlement  data)を周期的に伝送することによって、放送局の意向で変えることができる。このエンタイトルメント・データは、それぞれの受信機の中にあるスマート・カードによって処理され、関連プログラム・マテリアルを再生する権利が与えられたこれらの受信機内だけの暗号化デバイス又は解読デバイスによる使用のために、暗号キー又は解読キーを生成する。前述のタイプのパケット・ビデオ・システムでは、エンタイトルメント・データは、スマート・カード回路が容易にアクセス可能なデータを含む特定のパケット内に含まれる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
北アメリカ向けのダイレクト放送衛星システムのような広域放送システムは、多数の加入者（受信契約者）を有する。この数は、非常に大きいため、特定の受信者のエンタイトルメント・データを急に変えることを不可能である。例えば、放送局は、スポーツ試合の切符が売り切れていない場合、スポーツ・スタジアムがあるエリアのテレビ放送を停止しなければならないとする。この情報は、試合の直前まで入手できないかもしれない。もちろん、放送局は、ローカル区域のテレビ放送を停止することの決定を行う直前まで待つことを望む。
【０００５】
そこで、本発明は、エンタイトルメント・データが直ちにプログラム・マテリアルを受信するための権利を否定するように階層化(layered)されたシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、階層化されたエンタイトルメント・データ(layered  entitlement  data)の送受信のためのシステム／方法である。受信機の実施例は、条件付きアクセス・ペイロード・ヘッダと、残りのエンタイトルメント・データのペイロードとを含むペイロードを有するパケットを選択するパケット・トランスポート・プロセッサを含む。それぞれのペイロード・ヘッダは、各受信機に対してエンタイトルメント・データを処理することを許可又は許可しないように符号化されている、バイトのグループを含んでいる。加入者の特定の条件付きアクセス・コード・ワードで予めプログラム化された条件付きアクセス・フィルタ(conditional  access  filter)は、加入者の特定（固有）の条件付きアクセス・コード・ワードと照合するために条件付きアクセス・ヘッダのそれぞれのバイトのグルーピングを検査する。一致が生じる場合だけ、プロセッサはエンタイトルメント・データを処理することが許可される。
【図面の簡単な説明】
【０００７】
【図１】時分割多重化パケット・テレビジョン信号の図式表現である。
【図２】それぞれの信号パケットの図式表現である。
【図３】本発明を実施する多重化コンポーネント信号(multiplexed  component  signals)のパケットの選択および処理のための受信機を示すブロック図である。
【図４】条件付きアクセス・フィルタ／開始コード検出器のブロック図である。
【図５】条件付きアクセス・フィルタの動作を示すフローチャートである。
【図６】他の条件付きアクセス・フィルタのブロック図である。
【図７】図３に示した要素１７のために実施できる典型的なメモリ管理回路のブロック図である。
【図８】サービス・チャネル・データのためのメモリ・アドレス構成を示す図式表現である。
【図９】メモリ・アドレス制御の動作を示すフローチャートである。
【発明を実施するための形態】
【０００８】
図１は、複数の異なるテレビジョンまたはインタアクティブ・テレビジョン・プログラムのコンポーネントを含む信号パケットを表す一連のボックスからなる、パケット信号ストリームを示している。これらのプログラム・コンポーネントは圧縮データで形成されていると仮定され、それぞれの画像のビデオ量は可変である。パケットは一定長である。同じ添字を有する文字のパケットは単一プログラムのコンポーネントを表している。例えば、Ｖi、Ａi、Ｄiは、ビデオ、オーディオおよびデータ・パケットを表し、Ｖ1、Ａ1、Ｄ1と呼ばれているパケットは、プログラム１のためのビデオ、オーディオおよびデータ・コンポーネントを表し、Ｖ3、Ａ31、Ａ32、Ｄ3は、プログラム３のビデオ、オーディオ１、オーディオ２およびデータ・コンポーネントを表している。データ・パケット(data  packets)Ｄiは、例えば、受信機内の所定の動作を開始するための制御データを含むことができる。あるいは、それらは、例えば、受信機内に置かれまたは受信機に関連したマイクロプロセッサによって実行されるアプリケーションを形成する実行可能なコードを含むことができる。
【０００９】
パケットのストリングの上部の行では、特定のプログラムのそれぞれのコンポーネントが一緒にグループ化して示されている。しかしながら、パケットの全ストリングにより示されているように、同一のプログラムからのパケットはグループ化する必要性がない。それぞれのコンポーネントの発生のシーケンスに対するいかなる特定の順序もまたない。
【００１０】
それぞれのパケットは、図２に示されるようなプレフィックスおよびペイロードを含むように配置されている。本例のプレフィックスは、４つ（Ｐ，ＢＢ，ＣＦ，ＣＳ）が１ビットフィールドで、１つ（ＳＣＩＤ）が１２ビットフィールドである５つのフィールドを含む、２つの８ビット・バイトを含む。ＳＣＩＤフィールドは信号コンポーネント識別子(signal  component  identifier)である。フィールドＣＦは、パケットのペイロードが暗号化されるかどうかを指示するためのフラグを含み、フィールドＣＳは、選択可能な２つの暗号解読キーのどれが暗号化パケットを暗号解読するために利用されるべきかを示すフラグを含んでいる。あらゆるパケットのプレフィックスはパケット整列され、したがってそれぞれのフィールドのロケーションは容易に識別できる。
【００１１】
それぞれのペイロードの中には、プログラム・コンポーネントに特有である連続計数(continuity  count)ＣＣ（モジュロ１６）、およびＴＯＧＧＬＥフラグビットを含むヘッダがある。連続計数は、単に、同一プログラム・コンポーネントのシーケンシャル・パケットの連続番号である。ＴＯＧＧＬＥフラグビットは、論理値レベルを変えるか、または、ＭＰＥＧ圧縮ビデオ・コンポーネントのうちの画像層開始コードの発生に基づいてトグルする１ビット信号である。
【００１２】
図３は、逆トランスポート(inverse  transport)・プロセッサの要素を含むディジタル・テレビジョン信号受信機の一部をブロック形式で示している。信号は、アンテナ１０によって検出され、受信信号の特定の帯域を抽出し、２進形式のベースバンド圧縮信号を供給するチューナ検出器１１に供給される。周波数帯域は、従来方法によってマイクロプロセッサ１９を通してユーザによって選択される。通常、放送ディジタル信号は、例えばリード・ソロモン・フォーワード・誤り訂正（ＦＥＣ）符号により誤り符号化されている。かくして、ベースバンド信号は、ＦＥＣデコーダ１２に供給される。ＦＥＣデコーダ１２は、受信ビデオを同期化し、図１に示された形式を有する信号パケットの誤り訂正済みストリームを供給する。ＦＥＣ１２は、規則的な間隔で、あるいは、例えばメモリ・コントローラ１７の要求に応じてパケットを供給する。どちらの場合も、パケット・フレーミングまたは同期信号がＦＥＣ回路から供給される。これは、それぞれのパケット情報がＦＥＣ１２からの転送される回数を示す。
【００１３】
検出周波数帯域は、パケット形式の複数の時分割多重化プログラムを含むことができる。有用であるために、単一プログラムからのパケットだけは他の回路要素に送られるべきである。本例では、ユーザはどのパケットを選択したらいいかを知らないものと仮定する。この情報は、プログラム・ガイドに含まれる。プログラム・ガイドは、それ自体、ＳＣＩＤによってプログラム信号・コンポーネントに関連したデータからなるプログラムであり、例えば、加入者のエンタイトルメントに関連している情報を含むことができる。このプログラム・ガイドは、それぞれのプログラムのオーディオ、ビデオ、データ等のコンポーネントのためのＳＣＩＤの各プログラムに対するリストである。プログラム・ガイド（図１のパケットＤ4）は、固定ＳＣＩＤに割り当てられる。電力が受信機に供給されると、マイクロプロセッサ１９は、プログラム・ガイドに関連したＳＣＩＤを、類似したプログラマブルＳＣＩＤレジスタ１３のバンクの１つにロードするようにプログラムされる。ＦＥＣ１２からの信号のそれぞれの検出パケットのプレフィックス部のＳＣＩＤフィールドは、他のＳＣＩＤレジスタ１４に連続的にロードされる。プログラマブル・レジスタおよび受信ＳＣＩＤレジスタは、比較器１５のそれぞれの入力ポートに結合され、受信ＳＣＩＤはプログラム・ガイドＳＣＩＤと比較される。パケットのためのＳＣＩＤがプログラム・ガイドＳＣＩＤに一致するならば、比較器１５は、マイクロプロセッサによる使用のためにメモリ１８内の所定のロケーションにそのパケットを経路選択するようにメモリ・コントローラ１７を条件付ける。受信ＳＣＩＤがプログラム・ガイドＳＣＩＤに一致しないならば、対応するパケットは単にダンプされる。
【００１４】
コンピュータ・キーボードとして示されているが、従来の遠隔制御装置、または受信機フロントパネル・スイッチであってもよいインターフェース２０を介して、マイクロプロセッサは、ユーザからのプログラミング・コマンドを待機する。ユーザは、チャンネル４（アナログテレビシステムの用語）に供給されたプログラムを見る要求を出すことができる。マイクロプロセッサ１９は、チャンネル４のプログラム・コンポーネントのそれぞれのＳＣＩＤのためにメモリ１８にロードされたプログラム・ガイドを走査し、対応するコンポーネント信号処理経路に関連するレジスタ・バンク１３のプログラマブル・レジスタの中のそれぞれの他のレジスタにこれらのＳＣＩＤをロードするようにプログラムされる。
【００１５】
所望のプログラムのためのオーディオ、ビデオ、またはデータプログラムの受信パケットは、最終的に、それぞれのオーディオ・プロセッサ２３、ビデオ・プロセッサ２２、または補助データ・プロセッサ２１、（２４）信号プロセッサのそれぞれに経路選択されなければならない。データは、比較的定速度で受信されるが、信号プロセッサは、公称的には、バースト状の入力データを必要とする（例えば、それぞれの伸長形式による）。図３に示した典型的なシステムは、最初に、それぞれのパケットを共通メモリ１８内の所定メモリ・ロケーションに経路選択する。その後、それぞれのプロセッサ２１〜２４はメモリ１８からのコンポーネント・パケットを要求する。共通メモリを通してコンポーネントの経路選択をすることによって、所望の信号データ速度バッファリングまたはスロットリングの対策が実現できる。
【００１６】
オーディオ・パケット、ビデオ・パケットおよびデータ・パケットは、それぞれの所定のメモリ・ロケーションにロードされ、コンポーネント・データへのバッファ・アクセスに便利な信号プロセッサを使用可能にする。それぞれのコンポーネント・パケットのペイロードは適当なメモリ領域にロードされるように、それぞれのＳＣＩＤ比較器はこれらのメモリ領域に関連している。この関連(association)は、メモリ・コントローラ１７において実配線されるか、または、この関連はプログラマブルであってもよい。前者の場合、プログラマブル・レジスタ１３の中の特定のレジスタは、常にオーディオ、ビデオおよびデータＳＣＩＤにそれぞれ割り当てられる。後者の場合、オーディオ、ビデオおよびデータＳＣＩＤはプログラマブル・レジスタ１３のいずれかにロードされることができる。そして、それぞれのＳＣＩＤがプログラマブル・レジスタにロードされるとき、適当な関連はメモリ・コントローラ１７においてプログラムされる。
【００１７】
定常状態では、プログラムＳＣＩＤがプログラマブル・レジスタ１３に記憶された後、受信信号パケットのＳＣＩＤは、プログラマブルＳＣＩＤレジスタ内のＳＣＩＤの全てと比較される。一致が、記憶されたオーディオ、ビデオ、またはデータＳＣＩＤのいずれかとなされるならば、対応するパケット・ペイロードは、オーディオ、ビデオまたはデータ・メモリ領域またはメモリ・ブロックにそれぞれ記憶される。
【００１８】
それぞれの信号パケットは、信号暗号解読器１６を介してＦＥＣ１２からメモリ・コントローラ１７に結合される。信号ペイロードだけが暗号化され、パケット・ヘッダは、変更されない暗号解読器によって通過される。パケットが暗号解読されるべきか否かは、パケット・プレフィックスのＣＦフラグによって決定され、いかにパケットが暗号解読されるべきか（２つの代替の暗号解読キーのうちの１つ）はＣＳフラグによって決定される。それぞれのパケットに対していかなるＳＣＩＤ一致もないならば、暗号解読器は単にいかなるデータの通過も不能にする。
【００１９】
暗号解読器(decryptor)は、スマート・カード装置３１によって提供される暗号解読キー(decryption  keys)によってプログラムされる。このスマート・カードは、プログラム・ガイドの特定のパケットに含まれたエンタイトルメント情報に応答して、適当な暗号解読キーを生成する。本例のシステムは、２つのレベルの暗号(encryption)またはプログラム・アクセス、すなわちエンタイトルメント・制御メッセージＥＣＭおよびエンタイトルメント・管理メッセージＥＭＭを取り入れる。プログラムエンタイトルメント・制御および管理情報は、プログラム・ガイドを含むパケット・ストリームに含まれる特定のＳＣＩＤと共に識別できるパケットで規則的に伝送される。これらのパケットの中に含まれるＥＣＭ情報は、スマート・カードで使用されて、暗号解読器(decryptor)によって使用される暗号解読キー(decryption  keys)を生成する。これらのパケットの中に含まれるＥＭＭ情報は、加入者固有のスマート・カードで使用されて、加入者がエンタイトルメントされるプログラム・マテリアルを決定する。これらのパケット内のＥＭＭエンタイトルメント情報は、地理的に特有に、またグループ特有に、あるいは加入者特有にされることができる。例えば、本システムは、スマート・カードから課金情報(billing  information)をプログラム・プロバイダ、例えば、衛星放送局に知らせるためのモデム（図示せず）を含む。スマート・カードは、例えば、受信機ロケーションのエリア・コードおよび電話交換局と共にプログラムされることができる。ＥＭＭは、スマート・カードで処理されるとき、特定のエリア・コードにおける特定のプログラムの受信の権利があるかまたはこのプログラムの受信を否定するデータを含んでいる。
【００２０】
プログラム・プロバイダは、例えば、見る度に支払う(pay-per-view)プログラムに関する限り、非常に短いリード・タイム(lead  time)である加入者に権利を付与する能力を要求する。特定の加入者の識別は、特定のプログラムの放送直前まで不能になることがある。このような短いリード・タイムの場合、加入者に基づいてＥＭＭをプログラムすることができないこともある。他の符号化層は条件付きアクセス・コードを含むことによってエンタイトルメント情報に直ちに加えられ、それぞれのパケット内のＥＭＭおよびＥＣＭデータの受信を許可／禁止し、それによって、いくつかのプログラムに対してほぼ瞬間の許可／禁止を可能にする。
【００２１】
ＥＭＭおよびＥＣＭエンタイトルメント・データを含むパケット・ペイロードは、特別に符号化された４つの３２ビットのグループに配置された１２８ビットのペイロード・ヘッダを含んでいる。各グループは条件付きアクセス・コードで符号化され、各条件付きアクセス・コードは異なって符号化されることができる。各加入者は特定の条件付きアクセス・コードに割り当てられる。照合フィルタ(matched  filter)、すなわちＥコード・デコーダ３０は、１２８ビットヘッダ内の加入者固有のビット・パターンを検出するように構成されている。一致が検出されるならば、デコーダはメモリ・コントローラ１７およびスマート・カード３１と通信し、エンタイトルメント・ペイロードの残りがスマート・カードに利用されるようにする（メモリ１８を介して）。一致が検出されないならば、ペイロードは特定の受信機によって受容されない。照合フィルタ３０がプログラマブルされるならば、条件付きアクセス・コードは、周期的に変えることができる。これらのコードはスマート・カードによって周期的に供給されることができる。視聴者のエンタイトルメントに関連したスマート・カードの動作に関するより特定の詳細に関しては、サテライト・ブック(SATELLITE  BOOK)、「衛星テレビ理論と実践の完全ガイド(A  COMPLETE  GUIDE  TO  SATELLITE  TV  THEORY  AND  PRACTICE)」の第２５節に述べられている。
【００２２】
照合フィルタ、すなわちＥコード・デコーダは、特定のＭＰＥＧビデオ・ヘッダを検出するという第２の機能を実行するように構成されている。これらのヘッダは３２ビット開始コードである（そのことがエンタイトルメント・ペイロードのヘッダが３２ビット・グループで符号化される理由である）。ビデオ・データが消失されるならば、ＭＰＥＧビデオ・デコーダは特定のデータ・エントリ・ポイントでビデオ・データの伸長だけを再開始できる。これらのエントリ・ポイントは、ＭＰＥＧ開始コードと一致する。デコーダは、ビデオ・パケットの消失後にメモリへのビデオ・データの流れを禁止し、次のＭＰＥＧ開始コードがデコーダ３０によって検出された後だけメモリへのビデオ・ペイロードの書き込みを再開するように、メモリ・コントローラ１７と通信するように構成されている。
【００２３】
図４は、条件付きアクセス情報またはＭＰＥＧ開始コードを含むパケットを検出するための典型的な装置（図３のデコーダ３０）を示している。デコーダ３０がエンタイトルメント・ペイロードまたはＭＰＥＧ開始コードを検出するように条件付けられるかどうかは、現在受信されているＳＣＩＤの機能による。図４では、暗号解読器(decryptor)１６から供給されたデータは８ビット・バイトであり、パケット整列されていると仮定される。すなわち、エンタイトルメント・ペイロードの第１バイトまたはＭＰＥＧ開始コードの第１バイトは、パケット・ペイロードの始め等の特定のバイト位置に正確に位置合わせされている。その理由は、特定のヘッダ又は開始コード・ワードを検出するためであり、ビット／バイト・ストリームにおけるそれらの位置は精密に知られているからである。暗号解読器１６からのデータは、比較器２５４のそれぞれの第１の入力接続部に結合された８ビット並列出力ポートを有する８ビットレジスタ２５０に供給される。この比較器２５４は、例えば、アンド・ゲートおよびラッチに結合されたそれぞれの出力接続部を有する８つの２入力型排他的ノア（ＸＮＯＲ）回路のバンクで構成することができる。このラッチは、各バイト間隔でアンド・ゲートの結果をラッチするように構成されているデータラッチであってもよい。
【００２４】
３２ビットＭＰＥＧ開始コードは、８ビット・レジスタ・バンク２６５内に４バイトとして記憶される。条件付きアクセス・コードは１６の８ビット・レジスタ・バンク２５７内に８ビット・バイトとして記憶される。レジスタ・バンク２５１および２６５のロードは、マイクロプロセッサ１９および／またはスマート・カードによって制御される。開始コード・レジスタ２６５は、４：１のマルチプレクサ２６６に結合され、条件付きアクセス・コード・レジスタは１６：１のマルチプレクサ２５７に結合されている。マルチプレクサ２５７，２６６の出力ポートは、２：１のマルチプレクサ２４９に結合されている。マルチプレクサ２４９のそれぞれの出力接続部は比較器２５４のそれぞれの対応する第２の入力端子に結合されている。（マルチプレクサ２４９，２５７および２６６の入出力接続部は８ビットバスであることに注目）。レジスタ２５０のそれぞれの出力接続部に示されたそれぞれの値が対応してマルチプレクサ２４９のそれぞれの出力接続部に示された出力値と同じであるならば、真の信号は対応するデータバイトのための比較器２５４によって発生される。
【００２５】
開始コードを検出するために、マルチプレクサ２６６は、カウンタ２５８によって走査され、暗号解読器１６からの最初の４つのペイロード・データ・バイトの発生と同期して４つの異なるレジスタ２６５を比較器にシーケンシャルに結合する。一方、条件付きアクセス・コードを検出するために、マルチプレクサ２５７は、カウンタ２５８によって走査され、レジスタ２６５のうちの異なる一つを比較器２５４にシーケンシャルに結合する。
【００２６】
比較器の出力は、累算・テスト回路２５５に供給されている。回路２５５は、所定数のバイト一致条件のいずれかが発生したかどうかを決定し、発生したならば、検査中の特定ペイロードの残りの部分のエンタイトルメント・データのための書き込みイネーブル信号を発生する。本システムでは、エンタイトルメント・ペイロード・ヘッダは、４つの３２ビット条件付きコードに配列された１２８ビットを含む。異なった加入者の条件付きアクセス・フィルタ３０は、１２８ビットのバイトの異なった組み合わせを探すように構成される。例えば、ある加入者装置は条件付きアクセス・コードのうちの最初の４バイトに一致するように構成することができる。他の加入者装置は、条件付きアクセス・コードの第２番目の４バイトに一致するように構成する、などが可能である。これらの典型的な状況のいずれにおいて、回路２５５は、適当な４つの連続的なバイトに対する一致が発生されたどうかを決定する。
【００２７】
加入者固有の条件付きアクセス・コードに対してバンク内の１６のレジスタの使用は回路構造を多少簡単にする。各加入者は４バイトの条件付きアクセス・コードを有しているので、このコードを１６のレジスタ・セット内に４回ロードすることができる。したがって、送信機では、放送局は、送信される条件付きアクセス・コードのうちの４バイトの４つのグループに対する相対ロケーションにかかわる必要がない。代替装置は、加入者固有の条件付きアクセス・コードを保持するように単一グループの４つのレジスタのみを組み込むことができ、これらのレジスタを１２８ビットのエンタイトルメント・ペイロード・ヘッダによってモジュロ４を反復して走査することができる。
【００２８】
このことは、好ましくないことには他のサービスのシステム帯域を制限し、あまりにも多くの時間がかかるだけであるので、あらゆる機能に対する２32の可能なエンタイトルメント・コードのそれぞれを送信することは実用的でない。グルーピングがそれぞれの４バイトの条件付きアクセス・コードの中の３バイトで規定されるこの制限は、いくつかの論理値グルーピングにより条件付きアクセス・コードを配列することによって多少解決することができる。このように、グループの全ての加入者は、４バイトの条件付きコードの中の１バイトを無視するためにそれぞれのグループの受信機を条件付けることによってアドレス指定することができる。本例では、各４バイト・アクセス・コードは２５６の加入者を表す。フィルタ条件付けは、例えば、最初の４バイト位置の全ての０を送信し、この条件を検出するように条件付きアクセス・フィルタを構成することによって行われる。この条件が満たされるならば、条件付きアクセス・フィルタは、それぞれの４バイトのグループの３バイトだけの一致を検出するように電気的に再構成される。
【００２９】
第３の変更例は、全ての加入者の条件付きアクセスを許可するために提供される。これは、オール０（またはオール１）でエンタイトルメント・ペイロードを符号化することによって行われる。したがって、条件付きアクセス・フィルタは、オール・ゼロ検出器（要素２６１〜２６３）も含むように構成される。
【００３０】
データのそれぞれの受信バイトのビットは８ビット・オア・ゲート２６３のそれぞれの端子に結合される。このビットの中のいずれかのビットが論理値１であるならば、オア・ゲート２６３は論理値１を出力する。オア・ゲート２６３の出力は、Ｄ形ラッチ２６１のデータ入力端子およびＱ出力端子にそれぞれ結合された出力および第２の入力を有する２入力オア・ゲート２６２の一方の入力に結合されている。Ｄ形ラッチは入力データバイトの受信と同期してタイミング回路２５９によってクロックされる。ラッチがリセットされた後、発生するデータバイトのいずれのいかなるビットも論理値１であるならば、ラッチ２６１は、次のリセットパルスまでそのＱ出力で論理値１を示す。ラッチ２６１のＱ出力は、ラッチが１出力レベルを示すときは常に、０出力レベルを示すインバータに結合されている。このように、その後、１２８ビット（１６バイト）のヘッダがレジスタ２５０を通過されるならば、インバータの出力はハイで、１２８ビットは０となる。ラッチは、各新しいペイロードの受信よりも前にリセットされる。エンタイトルメント・ペイロード・ヘッダの通過後、インバータからのハイ出力レベルの検出に応答して、回路２５５はデータ書き込みイネーブル信号を発生する。
【００３１】
図５は、条件付きアクセス・フィルタ３０の動作を示すフローチャートである。この処理は関連したＳＣＩＤの検出によって開始される。一旦適当なＳＣＩＤが検出されると、ペイロードはフィルタ３０に供給される｛３００｝。比較｛３０２｝が、ヘッダの最初の４バイトと加入者固有の条件付きアクセス・コードとの間で行われる。一致が生じるならば、エンタイトルメント・データ書き込みイネーブルが発生される｛３１０｝。一致が生じないならば、最初の４バイトがオール０に対して検査される｛３０６｝。オール０が検出されないならば、ヘッダの第２番目の４バイトは加入者固有の条件付きアクセス・コードと比較される｛３０８｝。これらが一致するならば｛３１２｝、書き込みイネーブルが発生される｛３１０｝。一致しないならば、第３番目の４バイト・セットは加入者固有の条件付きアクセス・コードと比較される｛３１４｝。これが一致するならば｛３１６｝、書き込みイネーブルが発生される｛３１０｝。一致しないならば、第４番目の４バイト・セットが加入者固有の条件付きアクセス・コードと比較される｛３１７｝。これらが一致するならば｛３１８｝、書き込みイネーブルは発生される｛３１０｝。一致しないならば、ヘッダの最後の１２バイトが、オール０に対して検査される｛３２０｝。オール０が最後の１２バイトで検出されるならば、書き込みイネーブルが発生され｛３１０｝、検出されないならば、処理は次のパケットを待つ｛３００｝。代替装置では、ステップ｛３２０｝で、本システムはヘッダの全１６バイトのオール０を探すようにプログラムすることができる。ある種の他の固定パターンが、全て１または例えば、０と１とが交互に現れるパターンのような全て０以外を利用してもよいことを理解すべきである。
【００３２】
ステップ｛３０６｝で、最初の４バイトが全て０であるならば、ヘッダの第２番目の４バイトのうちの３つが加入者固有の条件付きアクセス・コードと比較される｛３５４｝。図４の装置では、このことは、唯一の４バイトのグループに対する３つの一致を探すように要素２５５を構成することによって達成される。４バイトのうちの３つが一致するならば｛３２６｝、書き込みイネーブルが発生され｛３２２｝、一致しないならば、４ヘッダ・バイトのうちの第３のセットのうちの３つが加入者固有の条件付きアクセス・コードと比較される｛３３０｝。４バイトのうちの３つが一致するならば｛３３２｝、書き込みイネーブル信号が発生され｛３２２｝、一致しないならば、最後の４バイトのうちの３つが加入者固有の条件付きアクセス・コードと比較される｛３３６｝。これらが一致するならば、書き込みイネーブル信号が発生され｛３２２｝、一致しないならばオール０条件が検査される｛３２０｝。
【００３３】
４バイトのそれぞれのグループのうちの２つだけが一致される場合、他の検出レベルはステップ｛３２４〜３４０｝と同様に組み入れることができることに注目すべきである。このことは、例えば、最初の８バイトを全て０に、または、最初の４バイトを全て１に配列することによって条件付けることができる。この場合、条件付けアクセス・コードによって使用可能にされるそれぞれのグループはずっと大きくなる。
【００３４】
メモリにエンタイトルメント・ペイロードを記憶することに関しては、本システムは、条件付きアクセス・コードを受信し、検査するとき、ペイロード・ヘッダをメモリに書き込む。条件付きアクセス・コードが検出されるならば、検出される書き込みイネーブルは、メモリ制御がペイロードの書き込みを継続することを可能にするだけである。反対に、条件付きアクセス・コードがペイロードの最初の１６バイトで検出されない場合、ペイロードの残りはメモリに書き込まれなく、条件付きアクセス・ペイロードに対するメモリ・アドレスはペイロード条件付きアクセス・ヘッダの中の１６バイトを上書きするためにリセットされる。
【００３５】
図６は、１度に３２ビット（４バイト）と同じぐらい多数と比較する他の条件付きアクセス・フィルタである。これは、開始コードのバイト位置を予め知らないで開始コードの検出を可能にする。開始コードは、８ビットレジスタに記憶される（８ビットのμＰＣバスが使用されるために８ビットレジスタが使用される）。レジスタの出力ポートはマルチプレクサ２９８の第１の入力セットに結合されている。加入者固有の条件付きアクセス・コードは、マルチプレクサ２９８のための第２の入力セットに結合されたそれぞれの出力ポートを有する第２のレジスタ・バンク２９９に記憶される。マルチプレクサ２９８は、比較器２７０〜２７３のそれぞれの第１の８ビット入力ポートに接続された出力セットを有する。
【００３６】
レジスタ２６５または２９９が比較器に結合されるかどうかは、μＰＣに応答する累算・テスト回路２９７によって制御される。
【００３７】
暗号解読器１６からの入力バイトは並列／直列レジスタ２４７〜２７７に結合される。それぞれのレジスタ２７４〜２７７は、比較器２７０〜２７３の第２の８ビット入力ポートにそれぞれ結合された並列出力ポートを有する。本システムは、入力信号の４つの連続バイトがレジスタ２４７〜２７７に現時点でロードされるようにタイミングをとる(timed）。比較器の出力端子は、それぞれのオア・ゲート２７８〜２８１を介して累算・テスト回路２９７に結合されている。オア回路の第２の入力端子は、累算・テスト回路２９７のそれぞれの制御出力接続部に結合されている。
【００３８】
図４の装置のように、図６の装置は、最初の４バイトおよび１６バイト全てでオール０を検出するオール・ゼロ検出器を含んでいる。
【００３９】
４バイトの条件付きアクセス・コードを検出するために、連続する唯一の４バイトのグループがレジスタ２４７〜２７７にロードされ、レジスタ２９９に含まれる加入者固有のアクセス・コードと対照してテストされる。４つの比較器の全てが一致を検出するならば、アンド・ゲート２８３は一致を示す論理値１を発生する。比較器の中の１つが一致を検出することができないならば、アンド・ゲートは論理値０を発生する。４者択３の入力バイト条件付きアクセス・コード・セットを検出するために、累算・テスト回路２９７は、オア・ゲートに結合された制御線の中の１つに論理値１を供給する。これは、このオア・ゲートの出力を強制的に論理値１にさせ、当然有効的に関連した比較器からの一致となる。したがって、条件付きアクセス・コード検出は、４バイト検出の場合のように、連続する唯一の４バイトのグループで実行される。
【００４０】
開始コードを検出するために、オア・ゲートの全ての制御線は論理値０に保持されている。入力バイトはカスケード接続のレジスタ２４７〜２７７にシーケンシャルに供給され、レジスタ２６５に記憶された開始コードとの一致に対するテストは各々の連続する包括的な４入力バイト・セットで行われる。
【００４１】
図７は、図３に示されたメモリ・コントローラ１７のための典型的な装置を示している。各プログラム・コンポーネントはメモリ１８の異なる隣接ブロックに記憶される。
【００４２】
さらに、マイクロプロセッサ１９またはスマート・カード（図示せず）によって発生されたデータのような他のデータはメモリ１８に記憶されることができる。
【００４３】
アドレスは、マルチプレクサ１０５によって供給され、入力データはマルチプレクサ９９によってメモリ１８に供給される。メモリ管理回路からの出力データは、他のマルチプレクサ１０４によって信号プロセッサに供給される。マルチプレクサ１０４に供給された出力データは、マイクロプロセッサ１９、メモリ１８からまたはマルチプレクサ９９から直接得られる。プログラム・データは、標準の画像解像度および画質のものであり、特定のデータ速度で生じるものと仮定される。一方、本受信機で供給することができる高画質テレビジョン信号ＨＤＴＶは、非常に高速なデータ速度で生じる。実際には、ＦＥＣで供給された全てのデータは、マルチプレクサ９９からマルチプレクサ１０４に直接経路選択することができるより高速のＨＤＴＶ信号を除いては、マルチプレクサ９９およびメモリＩ／Ｏ回路１０２を介してメモリ１８を通って経路選択される。データは、暗号解読器１６と、スマート・カード回路と、マイクロプロセッサ１９と、メディア・エラー・コード源１００とからマルチプレクサ９９に供給される。ここで使用されるような用語”メディア・エラー・コード”は、開始コードのような所定のコード・ワードの検出まで処理を中断し、次に例えば開始コードにより処理を再開するようにそれぞれの信号プロセッサ（伸長器）を条件付けるようにデータ・ストリームに挿入される特別のコード・ワードを意味する。
【００４４】
メモリ・アドレスは、プログラムアドレス指定回路７９〜９７から、マイクロプロセッサ１９から、スマート・カード装置３１からおよび補助パケット・アドレス・カウンタ７８からマルチプレクサ１０５に供給される。いかなる特定の時限でも特定のアドレスの選択は直接メモリ・アクセスＤＭＡ回路９８によって制御される。比較器１５からのＳＣＩＤ制御信号およびそれぞれの信号プロセッサからの”必要データ(data  needed)”信号は、ＤＭＡ９８に供給され、それに応答して、メモリ・アクセス競合(memory  access  contention)が調停される。ＤＭＡ９８は、それぞれのプログラム信号・コンポーネントに対する適当な読み出しまたは書き込みアドレスを供給するようにサービス・ポインタ・コントローラ９３と協働する。
【００４５】
いろいろな信号コンポーネントのメモリ・ブロックに対するそれぞれのアドレスは、４つのプログラム・コンポーネントのグループ、すなわちサービス・ポインタ・レジスタ８３，８７，８８および９２によって発生される。それぞれの信号コンポーネントが記憶されるそれぞれのメモリのブロックに対する開始ポインタはそれぞれの信号コンポーネントのためのレジスタ８７に含まれている。開始ポインタは、固定値であってもよいし、またはマイクロプロセッサ１９において従来のメモリ管理法で計算されてもよい。
【００４６】
それぞれのブロックの最後のアドレスに対するポインタは、各潜在的プログラムに対して１つサービス・レジスタ・バンク８８に記憶されている。開始アドレスと同様に、終了、すなわち最後のアドレスは固定値であってもよいし、またはマイクロプロセッサ１９によって供給された値で計算されてもよい。開始ポインタおよび終了ポインタに対して計算値を使用することは、より少ないメモリを有するより用途の広いシステムを提供するので、好ましいことである。
【００４７】
メモリ書き込みポインタ、すなわちヘッド・ポインタは、加算器８０およびサービス・ヘッド・レジスタ８３によって発生される。各潜在的プログラム・コンポーネントに対してサービス・ヘッド・レジスタがある。書き込みポインタ値、すなわち、ヘッド・ポインタ値はレジスタ８３に記憶され、メモリ書き込みサイクル中、アドレス・マルチプレクサ１０５に供給される。１単位だけ増分されるヘッド・ポインタは、加算器８０にも結合され、増分されたポインタは、次の書き込みサイクルの間、適当なレジスタ８３に記憶されている。現在サービスされている適当なプログラム・コンポーネントに対するレジスタ８３がサービス・ポインタ・コントローラ９３によって選択される。
【００４８】
本例では、開始ポインタおよび終了ポインタは１６ビット・ポインタであると仮定される。レジスタ８３は、１６ビットの書き込みポインタ、すなわちヘッド・ポインタである。１６ビット・ポインタは、レジスタ８７および８８に開始ポインタおよび終了ポインタをロードするための１６ビット・バスまたは８ビット・バスの使用を容易にするために選択されている。一方、メモリ１８は１８ビット・アドレスを有する。１８ビットの書き込みアドレスは、結合された１８ビットの書き込みアドレスの最上位のビット位置に開始ポインタ・ビットを有する１６ビットのヘッド・ポインタに開始ポインタの最上位の２ビットを連結することによって形成される。開始ポインタは、それぞれのレジスタ８７によってサービス・ポインタ・コントローラ９３に供給される。サービス・ポインタ・コントローラは、レジスタ８７に記憶された開始ポインタからより上位の(more  significant)開始ポインタ・ビットを解析(parse)し、これらのビットを１６ビットのヘッド・ポインタ・バスに関連付ける。このことは、マルチプレクサ８５を出るヘッド・ポインタ・バスと結合されていることが示されるバス９６によって、かつ、図８の太い矢印によって示されている。
【００４９】
図８では、ボックスの最上部、中間および最下部の行は、開始ポインタ、アドレスおよびヘッドまたはテール・ポインタのビットをそれぞれ表している。より高位に番号付けられているボックスはより上位のビット位置(more  significant  bit  position)を表している。矢印は、それぞれのアドレスのビットが開始ポインタまたはヘッド／テール・ポインタのどのビット位置から得られるかを示している。本展開(derivation)において、太い矢印は定常動作を表している。
【００５０】
同様に、メモリ読み出しポインタまたはテール・ポインタは、加算器７９およびサービス・テール・レジスタ９２によって発生される。各潜在的なプログラム・コンポーネントに対してサービス・テール・レジスタがある。読み出しまたはテール・ポインタ値はレジスタ９２に記憶され、メモリ読み出しサイクル中にアドレス・マルチプレクサ１０５に供給される。１単位だけ増分されるテール・ポインタは、加算器７９にも結合され、増分されたポインタは次の読み出しサイクルの間、適当なレジスタ９２に記憶される。レジスタ９２は、現在サービスされている適当なプログラム・コンポーネントのためのサービス・ポインタ・コントローラ９３によって選択される。
【００５１】
レジスタ９２は１６ビットのテール・ポインタを供給する。１８ビットの読み出しアドレスは、結合された１８ビットの書き込みアドレスの最上位のビット位置に開始ポインタ・ビットを有する１６ビットのテール・ポインタに開始ポインタの最上位の２ビットを連結することによって形成される。サービス・ポインタ・コントローラは、レジスタ８７に記憶された開始ポインタからより上位の開始ポインタ・ビットを解析し、これらのビットを１６ビットのヘッド・ポインタ・バスに関連付ける。このことは、マルチプレクサ９０を出るテール・ポインタ・バスと結合されているバス９４によって示されている。
【００５２】
データは計算されたアドレスでメモリ１８に記憶されている。１バイトのデータを記憶した後、ヘッド・ポインタは、１だけ増分され、このプログラム・コンポーネントのための終了ポインタと比較され、これらが等しいならば、ヘッド・ポインタのもっと有意なビットが開始ポインタの下位１４ビットと取り換えられ、０がアドレスのヘッド・ポインタ部の下位２ビット位置に置かれる。このことは、開始ポインタとアドレスとの間のハッチされた矢印に関して図８に示されている。この動作は、サービス・ポインタ・コントローラ９３からマルチプレクサ８５からのヘッド・ポインタ・バスを指示する矢印９７によって示される。下位１４の開始ポインタ・ビットを供給することによって、ヘッド・ポインタ・ビットを無効にする(override)と仮定する。この１書き込みサイクルの間、ヘッド・ポインタ・ビットをアドレスの下位開始ポインタ・ビットと取り換えることによって、メモリは、上位の２開始ポインタ・ビットで指定されたメモリ・ブロックを通してスクロールし、したがって、ブロック内の独自のメモリ・ロケーションのための各パケットの開始での書き込みアドレスの再プログラミングを不要にする。
【００５３】
ヘッド・ポインタが常にテール・ポインタ（メモリ１８からデータをどこに読み出すかを指示するために使用される）に等しいならば、ヘッド・テール・クラッシュが発生したことを示す信号がマイクロプロセッサの割り込み部に送られる。このプログラム・チャネルからメモリ１８にさらに書き込むことは、マイクロプロセッサがチャネルを再使用可能にするまで、不能にされる。この場合は非常にまれであり、通常動作中、発生すべきでない。
【００５４】
データは、加算器７９およびレジスタ９２によって計算されたアドレスに従って、それぞれの信号プロセッサの要求でメモリ１８から検索される。１バイトの記憶データを読み出した後、テール・ポインタは、１単位だけ増分され、サービス・ポインタ・コントローラ９３においてこの論理チャネルのためのエンド・ポインタと比較される。テール・ポインタおよびエンド・ポインタが等しいならば、テール・ポインタのより上位のビットは下位の１４ビットの開始ポインタと取り換えられ、０がアドレスのテール・ポインタ部の下位の２ビット位置に置かれる。これは、コントローラ９３から出て、マルチプレクサ９０からのテール・ポインタ・バスを指示する矢印９５によって示されている。いま、テール・ポインタがヘッド・ポインタに等しいならば、それぞれのメモリ・ブロックは空として規定される。そして、より多くのデータがこのプログラム・チャネルのためにＦＥＣから受信されるまで、これ以上のバイトは関連する信号プロセッサに送られない。それぞれの書き込みアドレスまたは読み出しアドレスのヘッド・ポインタ部またはテール・ポインタ部をスタート・ポインタの下位１４ビットで実際に置き換えることは、適当な多重化または３状態の相互接続の使用によって達成される。
【００５５】
メモリ読み出し／書き込み制御は、サービス・ポインタ・コントローラおよび直接メモリ・アクセスＤＭＡ、要素９３および９４によって実行される。ＤＭＡは読み出しサイクルおよび書き込みサイクルをスケジュールするようにプログラムされる。スケジューリングは、ＦＥＣ１２がメモリに書き込まれるデータを供給しているか否かによる。いかなる入力信号・コンポーネント・データが消失されないようにＦＥＣデータ書き込み動作が優先する。図７に示された典型的な装置では、メモリをアクセスできる４つの種類の装置がある。これらは、スマート・カード、ＦＥＣ（より正確には、暗号解読器１６）、マイクロプロセッサ１９およびオーディオ・プロセッサおよびビデオ・プロセッサのようなアプリケーション・デバイスである。メモリ競合(memory  contention)は下記のように処理される。上記の様々な処理要素からのデータ要求に応答して、ＤＭＡは、それぞれのプログラム・コンポーネントに対するメモリのブロックを割り当てる。メモリへのアクセスは、その間に１バイトのデータがメモリ１８から読み出されるかまたはメモリ１８に書き込まれる９５ｎＳタイム・スロットで実現できる。“ＦＥＣがデータを供給していること”または”ＦＥＣがデータを供給していないこと”のそれぞれで規定される２つの主要なアクセス割り当て(access  allocation)モードがある。これらのモードの各々に関して、最大５Ｍバイト／秒のＦＥＣデータ速度、すなわち各２００ｎＳに対して１バイトと仮定すると、タイム・スロットは下記のように割り当てられ、優先順位が付けられる。これらは、ＦＥＣがデータを供給している場合
１）ＥＥＣデータ書き込み；
２）アプリケーション・デバイス読み出し／マイクロプロセッサ読み出し／書き込み；
３）ＦＥＣデータ書き込み；
４）マイクロプロセッサ読み出し／書き込み；
および
ＦＥＣがデータ供給していない場合
１）スマート・カード読み出し／書き込み；
２）アプリケーション・デバイス置読み出し／マイクロプロセッサ読み出し／書き込み；
３）スマート・カード読み出し／書き込み；
４）マイクロプロセッサ読み出し／書き込み。
である。
【００５６】
ＦＥＣデータ書き込みは延期することができないために、ＦＥＣ（すなわち、より正確には暗号解読器）は、データを提供している場合、各２００ｎＳ期間中メモリ・アクセスを保証しなければならない。交互のタイム・スロットがアプリケーション・デバイスおよびマイクロプロセッサによって共有される。要求デバイス(requesting  device)に対して供給可能であるいかなるデータもないとき、マイクロプロセッサはアプリケーション・タイム・スロットの使用を実現する。
【００５７】
コントローラ９３は、ＳＣＩＤ検出器と通信して、メモリ書き込み動作の間、それぞれの開始ポインタ・レジスタ、ヘッド・ポインタ・レジスタおよび終了ポインタ・レジスタのどれにアクセスするかを決定する。コントローラ９３は、ＤＭＡと通信して、メモリ読み出し動作の間、それぞれの開始レジスタ、終了レジスタおよびテールレジスタのどれにアクセスするかを決定する。ＤＭＡ９８は、マルチプレクサ９９、１０４および１０５によって対応するアドレスおよびデータの選択を制御する。
【００５８】
図９は、ＤＭＡ９８のメモリ・アクセス処理の典型的なフローチャートを示す。ＤＭＡは、ＳＣＩＤの検出によって受信パケットの検出または非検出に応答する｛２００｝。メモリに書き込まれる暗号解読器１６からのデータの存在を示すＳＣＩＤが検出されたならば、暗号解読器からの１バイトのプログラム・データはバッファ・メモリ１８に書き込まれる｛２０１｝。書き込まれるメモリのブロックは、現ＳＣＩＤに応答するプロセッサ９３によって決定される。次に、スマート・カードおよびμＰＣを含むプログラム・コンポーネント・プロセッサのいずれかがデータまたはメモリ１８への読み出し／書き込み（Ｒ／Ｗ）アクセスを要求しているか否かを決定する｛２０２｝。いかなるデータ要求もＤＭＡで行われていないならば、処理はステップに戻る｛２００｝。データＲ／Ｗ要求が行われていたならば、ＤＭＡは要求の優先順位を決定する｛２０３｝。これは、従来の割り込みルーチンによってまたは、その代わりに、データを要求するこれらのプログラム・プロセッサの任意の順序のシーケンシャル１バイト・サービスによって達成される。例えば、任意のアクセス優先順位はビデオ、オーディオＩ、オーディオII、スマート・カード、およびμＰＣであると仮定する。ビデオ、オーディオIIおよびμＰＣだけがメモリ・アクセスを要求していることも仮定する。現ステップの動作中｛２０３｝、１バイトのビデオがメモリから読み出される。次のステップ動作中｛２０３｝、１バイトのオーディオIIがメモリから読み出され、次のその後のステップの発生中｛２０３｝、１バイトのμＰＣデータはメモリ１８に書き込まれ、またはメモリ１８から読み出される等である。スマート・カードおよびμＰＣアクセスのためのアドレスは、スマート・カードおよびμＰＣのそれぞれによって提供されるが、ビデオ、オーディオおよびプログラム・ガイドのためのアドレスはアドレス・ポインタ装置（８０〜９３）から供給されることに注目すべきである。
【００５９】
一旦優先アクセスが確立されると｛２０３｝、必要なプログラム・プロセッサは、メモリ１８に書き込まれるかまたはメモリ１８から読み出される１バイトのデータによってサービスされる｛２０４｝。次に、暗号解読器１６からの１バイトのデータはメモリに書き込まれる｛２０５｝。μＰＣがアクセスを要求しているかどうかを決定するための検査｛２０６｝が行われる。μＰＣがアクセスを要求しているならば、１バイトのデータによってサービスされる｛２０７｝。μＰＣがアクセスを要求していないならば、処理は、プログラム・プロセッサのいずれかアクセスを要求するかどうかを決定するためにステップ｛２０２｝にジャンプする。このように、入力データ(incoming  data)は常に他のメモリ・アクセス期間(memory  access  period)へのアクセスが保証され、介在するメモリ・アクセス期間はプログラム・プロセッサの間で広げられる。
【００６０】
暗号解読器１６からデータが現在得られないならば、すなわち、ＳＣＩＤは現在検出されないならば、処理｛２０８〜２１６｝が後に続く。最初に、スマート・カードは、メモリ・アクセスを要求しているか否かを決定するために検査される｛２０８｝。要求しているならば、１バイトのメモリ・アクセスが与えられ｛２０９｝、そうでないときには、プログラム・プロセッサのいずれかがメモリ・アクセスを要求しているか否かを決定するために検査が行われる｛２１０｝。データＲ／Ｗ要求が行われたならば、ＤＭＡは、要求の優先順位を決定する｛２１１｝。適当なプロセッサは、１バイトのメモリ読み出しまたは書き込みアクセスによってサービスされる｛２１２｝。データＲ／Ｗ要求がプログラム・プロセッサによって行われないならば、処理は、スマート・カードがメモリ・アクセスを要求しているか否かを決定するためにテストが実行されるステップ｛２１３｝にジャンプする。要求しているならば、スマート・カードは１バイトのメモリ・アクセスによってサービスされ｛２１６｝、そうでないと、処理はステップ｛２００｝にジャンプする。
【００６１】
この好ましい例では、”ＦＥＣがデータを供給していない”モードでは、スマート・カードは全ての他のプログラム・プロセッサよりも２対１のアクセス優先順位(access  precedence)が与えられる。この優先権は、ＤＭＡ装置内のプログラマブル・ステートマシンにプログラムされ、μＰＣによって変更される。前述のように、本システムはインタアクティブ・サービスを提供することを意図され、μＰＣ１９は、インタアクティブ・データに応答して、少なくとも一部はインタアクティブ動作を実行する。この役割では、μＰＣ１９は、アプリケーション・ストレージおよび作業メモリの両方に対してメモリ１８を使用する。これらの例では、システム・オペレータは、μＰＣ１９により大きな周波数のメモリ・アクセスを与えるためにメモリ・アクセス優先順位を変えることができる。メモリ・アクセス優先順位の再プログラミングを、インタアクティブ・アプリケーション命令のサブセットとして含むことができる。
【００６２】
パケットが消失された場合、メディア・エラー・コードをビデオ・コンポーネント信号ストリームに挿入し、特定の信号エントリ・ポイントがデータ・ストリームで発生されるまで、伸長を中断するようにビデオ信号伸長器を条件付けることは有利なことである。どこで、どのビデオ・パケットで次のエントリ・ポイントが発生できるかを予測することは実際的でない。できるだけ高速に次のエントリ・ポイントを探すために、パケットが消失されたことを検出した後の最初のビデオ・パケットの始めでメディア・エラー・コードを含むことが必要である。図７の回路は、各ビデオ・パケットの始めにメディア・エラー・コードを置き、次に、直前のパケットのいかなる消失もない場合、それぞれのパケットのメディア・エラー・コードを削除する。メディア・エラー・コードは、暗号解読器から受信するビデオ・ペイロードより先にＭ書き込みサイクルの間、メモリ１８に書き込むことにより、現ビデオ・パケット・ペイロードのために備えてある第１のＭ個のメモリ・アドレス・ロケーションに挿入される。同時に、マルチプレクサ９９は、発生源１００からのメディア・エラー・コードをメモリ１８のＩ／Ｏに与えるようにＤＭＡ９８によって条件付けられる。Ｍは、単に、メディア・エラー・コードを記憶するのに必要な整数のメモリ・ロケーションである。メモリは８ビット・バイトを記憶するものであり、メディア・エラー・コードは３２ビットであると仮定すると、Ｍは４に等しい。
【００６３】
メモリにメディア・エラー・コードをロードするためのアドレスは、マルチプレクサ８２およびマルチプレクサ８５を介して、それぞれのビデオ・コンポーネントサービス・レジスタ８３によって供給される。ビデオ・コンポーネント・データでロードされるメモリ・ロケーションにメディア・エラー・コードをロードするためのポインタ・レジスタ８３から供給された第１のＭ個のアドレスは単に、通常ビデオ・ヘッド・ポインタによって発生される次のＭ個のシーケンシャル・アドレスであることが理解される。これらの同一アドレスはＭ段の遅延素子８４に結合されるので、メディア・エラー・コードの最後のバイトがメモリ１８に記憶された直後、第１のＭ個のアドレスは遅延素子８４の出力として得られる。
【００６４】
メディア・エラー・コードをメモリにロードするためのタイミングは消失パケットの決定と一致する。パケット・エラーまたは消失検出は、現パケットのＣＣおよびＨＤデータに応答するエラー検出器１０１によって実行される。
【００６５】
パケット消失が検出されたならば、現パケットのビデオ・コンポーネントは、次のアドレス・ロケーション、すなわち（Ｍ＋１）番目のアドレス・ロケーションで始まるメモリ１８に記憶される。これは、適当なレジスタ８３から遅延されないヘッド・ポインタを送り続けるようにマルチプレクサ８５を条件付けることによって達成される。一方、パケット消失が検出されないならば、現パケットにおけるビデオ・コンポーネントの第１のＭバイトは、メディア・エラー・コードが直前に記憶されたメモリ・ロケーションに記憶される。
【００６６】
パケット・エラーまたは消失検出は、現パケットのＣＣおよびＨＤデータに応答するエラー検出器１０１によって実行される。検出器１０１は、現パケットの連続カウント(continuity  count)ＣＣが前のパケットのＣＣと１単位(unit)だけ異なるか否かを決定するために、現パケットの連続カウントＣＣを検査する。さらに、現パケットのＴＯＧＧＬＥ（トグル）ビットが検査され、それがそれぞれのビデオ・フレームに対して適切な状態を示しているか否かを決定する。ＣＣ値が不正確であるならば、ＴＯＧＧＬＥビットの状態が検査される。ＣＣおよびＴＯＧＧＬＥビットの一方または両方がエラーであるか否かに応じて、第１または第２のエラー修復(error  remediation)モードがそれぞれ実行される。誤っているＣＣおよびＴＯＧＧＬＥビットの両方によって開始される第２のモードにおいて、本システムは画像層ヘッダ(picture  layer  header)を含むパケットにリセットされるように条件付けられる。ＣＣだけが誤っている第１のモードでは、本システムはスライス層ヘッダ(slice  layer  header)を含むパケットにリセットされるように条件付けられる。（スライス層は、フレーム内の圧縮データのサブセットである。）第１および第２のモードの両方では、メモリに書き込まれたメディア・エラー・コードは、訂正動作(remedial  action)を実行するよう伸長器(decompressor)に報知するために、それぞれのペイロードに保持される。
【００６７】
ＳＣＩＤ検出器、暗号解読器、アドレス指定回路、条件付きアクセス・フィルタ、およびスマート・カード・インターフェスは全て単一の集積回路上に含まれるようにシステムを分割することは特に有効であることが分かった。これは、臨界的なタイミング制約をもたらす外部経路の数を制限する。
【符号の説明】
【００６８】
１０  チューナ検出器
１２  ＦＥＣ
１３  プログラマブルＳＣＩＤレジスタ
１５  ＳＣＩＤ一致検出
１６  暗号解読器
３０  Ｅコード・デコーダ
３１  スマート・カード
【図１】
2010166630.tif 000003
【図２】
2010166630.tif 000004
【図３】
2010166630.tif 000005
【図４】
2010166630.tif 000006
【図５】
2010166630.tif 000007
【図６】
2010166630.tif 000008
【図７】
2010166630.tif 000009
【図８】
2010166630.tif 000010
【図９】
2010166630.tif 000011
【手続補正書】
【提出日】平成22年5月21日(2010.5.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のトランスポート・パケットからなるパケット化トランスポート・ストリームを生成するステップであって、当該パケット化トランスポート・ストリームは、そのパケット化トランスポート・ストリーム内にプログラムとパケット識別子との関係を示すデータを含み、当該パケット識別子は、選択されたプログラムと関連するトランスポート・パケットを識別するためであり、そして、前記パケット識別子は、当該パケット識別子に応じて選択されたプログラムと関連する一連のトランスポート・パケットを識別して獲得するために前記パケット化トランスポート・ストリームの受信機による解析を可能とする、前記ステップと、
前記パケット化トランスポート・ストリームを送信するステップと、
を含む方法。