(57)【要約】【課題】デコーダの処理負荷を低減させることが可能なデスクランブラ、デスクランブル方法、及び制御プログラムを提供する。【解決手段】デスクランブラ２０ａを構成する判定部２３は、受信機で受信されたＴＳパケット１００に対するデスクランブルが可能であるか否かを、少なくとも前記受信機におけるデスクランブル鍵Ｋｓの取得状況ＡＳに基づき判定する。判定部２３は、デスクランブル可能と判定したパケットをデスクランブル実行部２２に与え、デスクランブル不可と判定したパケットを廃棄する。デスクランブル実行部２２は、デスクランブル鍵Ｋｓを用いて、ＴＳパケット１００をデスクランブルする。【選択図】図１
2010130054.tif 000002
【特許請求の範囲】
【請求項１】
スクランブルされたパケットを受信する受信機に搭載されるデスクランブラであって、
デスクランブル鍵を用いて、前記スクランブルされたパケットをデスクランブルするデスクランブル実行部と、
前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブル鍵の取得状況に基づき判定すると共に、デスクランブル可能と判定した第１のパケットを前記デスクランブル実行部に与え、デスクランブル不可と判定した第２のパケットを廃棄する判定部と、
を備えたデスクランブラ。
【請求項２】
請求項１において、
前記判定部は、前記取得状況が前記デスクランブル鍵の正常取得を示す値であった場合にデスクランブル可能と判定し、前記取得状況が前記デスクランブル鍵の正常取得を示す値でなかった場合にデスクランブル不可と判定することを特徴とするデスクランブラ。
【請求項３】
請求項１又は２において、
前記受信機において、前記デスクランブル鍵を含む制御パケットが受信され、
前記取得状況は、前記制御パケットの受信若しくは受信誤りの有無、及び前記制御パケットから前記デスクランブル鍵を抽出するために必要なＩＣ（Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）カードの前記受信機への装着有無の少なくとも一方であることを特徴とするデスクランブラ。
【請求項４】
請求項１において、
前記受信機において、排他的に更新される第１及び第２のデスクランブル鍵を含む制御パケットと前記スクランブルされたパケットとが順次繰り返し受信され、
前記スクランブルされたパケットは、前記第１又は第２のデスクランブル鍵の使用を示す制御情報を含み、
前記判定部は、前記第１及び第２のデスクランブル鍵が正常取得された時点から、前記制御情報が前記第１のデスクランブル鍵の使用を示す値と前記第２のデスクランブル鍵の使用を示す値との間で相互に変化したことを２回検出するまでの期間は、前記第１又は第２のデスクランブル鍵の取得状況に関わらずデスクランブル可能と判定することを特徴とするデスクランブラ。
【請求項５】
請求項４において、
前記判定部は、前記第１又は第２のデスクランブル鍵が新たに取得される度に、前記制御情報の変化の検出回数を初期化することを特徴とするデスクランブラ。
【請求項６】
請求項４又は５において、
前記スクランブルされたパケットの種別毎に、前記第１及び第２のデスクランブル鍵が異なり、
前記判定部が、前記種別毎に前記制御情報の変化を検出することを特徴とするデスクランブラ。
【請求項７】
請求項１〜６のいずれか一項において、
前記スクランブルされたパケットに、当該パケットに含まれるデータが、当該データと他のスクランブルされたパケットに含まれるデータとを結合して得られるデータ列の先頭データであるか否かを示す識別情報が付加され、
前記判定部は、前記第２のパケットの廃棄を行った後、前記デスクランブル実行部の後段に設置された他の回路に対して、前記識別情報が前記先頭データであることを示すデスクランブルされたパケットが入力されるまで、前記デスクランブル実行部から入力されるデスクランブルされたパケットを廃棄するよう指示することを特徴とするデスクランブラ。
【請求項８】
請求項１〜６のいずれか一項において、
前記スクランブルされたパケットに、当該パケットに含まれるデータが、当該データと他のスクランブルされたパケットに含まれるデータとを結合して得られるデータ列の先頭データであるか否かを示す識別情報が付加され、
前記判定部は、前記識別情報が前記先頭データであることを示すスクランブルされたパケットが受信されるまで、前記第２のパケットの廃棄を行った後に受信されるスクランブルされた第３のパケットを廃棄することを特徴とするデスクランブラ。
【請求項９】
スクランブルされたパケットを受信する受信機におけるデスクランブル方法であって、
前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブルに必要なデスクランブル鍵の取得状況に基づき判定し、
デスクランブル可能と判定した第１のパケットを、前記デスクランブル鍵を用いてデスクランブルし、
デスクランブル不可と判定した第２のパケットを廃棄する、
デスクランブル方法
【請求項１０】
請求項９において、
前記取得状況が前記デスクランブル鍵の正常取得を示す値であった場合にデスクランブル可能と判定し、前記取得状況が前記デスクランブル鍵の正常取得を示す値でなかった場合にデスクランブル不可と判定することを特徴とするデスクランブル方法。
【請求項１１】
請求項９又は１０において、
前記受信機において、前記デスクランブル鍵を含む制御パケットが受信される場合、
前記取得状況として、前記制御パケットの受信若しくは受信誤りの有無、及び前記制御パケットから前記デスクランブル鍵を抽出するために必要なＩＣ（Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）カードの前記受信機への装着有無の少なくとも一方を用いることを特徴とするデスクランブル方法。
【請求項１２】
請求項９において、
前記受信機において、排他的に更新される第１及び第２のデスクランブル鍵を含む制御パケットと前記スクランブルされたパケットとが順次繰り返し受信され、前記スクランブルされたパケットに、前記第１又は第２のデスクランブル鍵の使用を示す制御情報が含まれる場合、
前記第１及び第２のデスクランブル鍵が正常取得された時点から、前記制御情報が前記第１のデスクランブル鍵の使用を示す値と前記第２のデスクランブル鍵の使用を示す値との間で相互に変化したことを２回検出するまでの期間は、前記第１又は第２のデスクランブル鍵の取得状況に関わらずデスクランブル可能と判定することを特徴とするデスクランブル方法。
【請求項１３】
請求項１２において、
前記第１又は第２のデスクランブル鍵が新たに取得される度に、前記制御情報の変化の検出回数を初期化することを特徴とするデスクランブル方法。
【請求項１４】
請求項１２又は１３において、
前記スクランブルされたパケットの種別毎に、前記第１及び第２のデスクランブル鍵が異なる場合、
前記種別毎に前記制御情報の変化を検出することを特徴とするデスクランブル方法。
【請求項１５】
請求項９〜１４のいずれか一項において、
前記スクランブルされたパケットに、当該パケットに含まれるデータが、当該データと他のスクランブルされたパケットに含まれるデータとを結合して得られるデータ列の先頭データであるか否かを示す識別情報が付加される場合、
前記識別情報が前記先頭データであることを示すスクランブルされたパケットが受信されるまで、前記第２のパケットの廃棄を行った後に受信されるスクランブルされた第３のパケットを廃棄することを特徴とするデスクランブル方法。
【請求項１６】
スクランブルされたパケットを受信する受信機に、
前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブルに必要なデスクランブル鍵の取得状況に基づき判定する処理と、
デスクランブル可能と判定したパケットを、前記デスクランブル鍵を用いてデスクランブルする処理と、
デスクランブル不可と判定したパケットを廃棄する処理と、
を実行させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デスクランブラ、デスクランブル方法、及び制御プログラムに関し、特にデジタル放送等で伝送されるスクランブル(暗号化)されたパケットを、デスクランブル(復号化)するデスクランブラ、デスクランブル方法、及び制御プログラムに関する。
【背景技術】
【０００２】
デジタル放送においては、ＭＰＥＧ(Ｍｏｖｉｎｇ Ｐｉｃｔｕｒｅ Ｅｘｐｅｒｔ Ｇｒｏｕｐ)−２で標準化されたＴＳ(Ｔｒａｎｓｐｏｒｔ Ｓｔｒｅａｍ)と呼ばれる伝送規格が使用されている。このＴＳは、図７に示すように、データを１８８バイト単位のＴＳパケット１００に分割して伝送する規格である。
【０００３】
より具体的には、ＴＳパケット１００は、ＴＳヘッダ１１０と、ペイロード１２０とから構成される。ここで、ＴＳヘッダ１１０は、８ビットの同期バイト１１１、１ビットのＴＥＩ(Ｔｒａｎｓｐｏｒｔ Ｅｒｒｏｒ Ｉｎｄｉｃａｔｏｒ)１１２、１ビットのＰＵＳＩ(Ｐａｙｌｏａｄ Ｕｎｉｔ Ｓｔａｒｔ Ｉｎｄｉｃａｔｏｒ)１１３、１ビットのＴＰＩ(Ｔｒａｎｓｐｏｒｔ Ｐｒｉｏｒｉｔｙ)１１４、１３ビットのＰＩＤ(Ｐａｃｋｅｔ Ｉｄｅｎｔｉｆｉｅｒ)１１５、２ビットのＴＳＣ(Ｔｒａｎｓｐｏｒｔ Ｓｃｒａｍｂｌｅ Ｃｏｎｔｒｏｌ)１１６、２ビットのＡＦＣ(Ａｄａｐｔａｔｉｏｎ Ｆｉｅｌｄ Ｃｏｎｔｒｏｌ)１１７、及び４ビットのＣＣ(Ｃｏｎｔｉｎｕｉｔｙ Ｃｏｕｎｔｅｒ)１１８から成る４バイトの固定長フィールドと、可変長のＡＤＦ(Ａｄａｐｔａｔｉｏｎ Ｆｉｅｌｄ)１１９とを含む。
【０００４】
また、同期バイト１１１は、ＴＳパケット１００の先頭を示す。ＴＥＩ１１２は、ＴＳパケット１００における誤りの有無を示す。ＰＵＳＩ１１３は、ペイロード１２０が、他のＴＳパケットに含まれるペイロードと結合して得られるデータ列(すなわち、ＰＥＳ(Ｐａｃｋｅｔｉｚｅｄ Ｅｌｅｍｅｎｔａｒｙ Ｓｔｒｅａｍ)やセクションデータ等)の先頭データを含むか否かを示す。ＴＰＩ１１４は、ＴＳパケット１００の優先度を示す。ＰＩＤ１１５は、ＴＳパケット１００の種別を示す。ＴＳＣ１１６は、ペイロード１２０に対するスクランブルの有無を示す。ＡＦＣ１１７は、ＡＤＦ１１９の有無を示す。ＣＣ１１８は、同一ＰＩＤが付されたＴＳパケットの連続性を示す。さらに、ＡＤＦ１１９は、ペイロード１２０のデコードに際して必要となる時刻情報や、ＴＳパケット１００のパケット長を調整するためのスタッフィングバイト等を含む。
【０００５】
一方、ペイロード１２０には、図８に示すように、Ｖｉｄｅｏエレメンタリデータ１２４やＡｕｄｉｏエレメンタリデータ１２５等の他、ＰＡＴ(Ｐｒｏｇｒａｍ Ａｓｓｏｃｉａｔｉｏｎ Ｔａｂｌｅ)１２１、ＰＭＴ(Ｐｒｏｇｒａｍ Ｍａｐ Ｔａｂｌｅ)１２２、ＥＣＭ(Ｅｎｔｉｔｌｅｍｅｎｔ Ｃｏｎｔｒｏｌ Ｍｅｓｓａｇｅ)１２３等のセッションデータが設定される。ＰＡＴ１２１は、大略、ＴＳ中にどのような番組が存在するかを示し、番組番号とＰＭＴ１２２に付されたＰＩＤとを対応付ける。ＰＭＴ１２２は、大略、番組番号と番組要素とを関連付けるものであり、ＥＣＭ１２３、Ｖｉｄｅｏエレメンタリデータ１２４、及びＡｕｄｉｏエレメンタリデータ１２５のＰＩＤを指定する。ＥＣＭ１２３は、Ｖｉｄｅｏエレメンタリデータ１２４及びＡｕｄｉｏエレメンタリデータ１２５に対するデスクランブルに際して必要となるデスクランブル鍵(但し、スクランブルされている)を含む。なお、Ｖｉｄｅｏエレメンタリデータ１２４及びＡｕｄｉｏエレメンタリデータ１２５はスクランブルされている一方、ＰＡＴ１２１及びＰＭＴ１２２はスクランブルされていない。
【０００６】
図９に、上記のＴＳパケット１００を受信する受信機の一般的な構成例を示す。この受信機１は、チューナ部１０と、デスクランブラ２０と、ＤＥＭＵＸ部３０と、デコーダ４０と、制御部５０と、カードＩ／Ｆ６０とを備えている。
【０００７】
チューナ部１０は、制御部５０からのチャンネル選択指示ＩＮＳ１に則した放送信号２を受信して復調すると共に、ＴＳパケット１００を抽出する。ここで、制御部５０は、チャンネル選択指示ＩＮＳ１として、ユーザ(図示せず)により選択されたチャンネル(周波数帯域)を指示する。
【０００８】
デスクランブラ２０は、チューナ部１０から出力されたＴＳパケット１００中のＴＳＣ１１６を参照し、ＴＳＣ１１６が"スクランブル無し"を示す場合、ＴＳパケット１００をそのまま出力する。一方、ＴＳＣ１１６が"スクランブル有り"を示す場合には、デスクランブラ２０は、制御部５０から通知されたデスクランブル鍵Ｋｓを用いて、ＴＳパケット１００中のペイロード１２０に対するデスクランブルを施し、デスクランブルされたＴＳパケット１００ｄを出力する。ここで、制御部５０は、デスクランブル鍵Ｋｓを、カードＩ／Ｆ６０に対してコマンドを与えることにより取得する。より具体的には、制御部５０は、ＥＣＭ１２３を含むＴＳパケット１００を受信すると、カードＩ／Ｆ６０に対してＥＣＭ受信コマンドＣＭＤを与える。このコマンドＣＭＤを受けたカードＩ／Ｆ６０は、まず受信機１に挿入されたＢ−ＣＡＳ(ＢＳ Ｃｏｎｄｉｔｉｏｎａｌ Ａｃｃｅｓｓ Ｓｙｓｔｅｍｓ)カード等のＩＣカード３からワーク鍵Ｋｗを取得する。そして、カードＩ／Ｆ６０は、取得したワーク鍵Ｋｗを用いて、ＥＣＭ１２３に対するデスクランブルを施し、以てデスクランブル鍵Ｋｓを抽出する。そして、カードＩ／Ｆ６０は、抽出したデスクランブル鍵Ｋｓを、コマンドＣＭＤへの応答として制御部５０に返信する。
【０００９】
ＤＥＭＵＸ部３０は、デスクランブラ２０から出力された、ＴＳパケット１００及びデスクランブルされたＴＳパケット１００ｄの内から、制御部５０からの番組選択指示ＩＮＳ２に則したパケットを抽出する。ここで、制御部５０は、ＰＡＴ１２１及びＰＭＴ１２２を参照し、番組選択指示ＩＮＳ２として、ユーザにより選択された番組に対応する番組要素のＰＩＤを指示する。また、ＤＥＭＵＸ部３０は、抽出したＴＳパケット１００(ＰＡＴ１２１、ＰＭＴ１２２、及びＥＣＭ１２３)を制御部５０へ転送する一方、デスクランブルされたＴＳパケット１００ｄ(Ｖｉｄｅｏエレメンタリデータ１２４及びＡｕｄｉｏエレメンタリデータ１２５)をデコーダ４０へ転送する。
【００１０】
デコーダ４０は、Ｖｉｄｅｏエレメンタリデータ１２４及びＡｕｄｉｏエレメンタリデータ１２５をそれぞれデコードし、後段のモニタやレコーダ(共に図示せず)等へ出力する。
【００１１】
図１０に、デコーダ４０におけるＶｉｄｅｏエレメンタリデータ１２４に対する一般的なデコード処理例を示す。まずデコーダ４０は、入力されたＶｉｄｅｏエレメンタリデータ１２４中からスタートコード(図示せず)を検索するための範囲(以下、スタートコード検索範囲)を、データ１２４の先頭の所定数バイトに設定する(ステップＳ１０１)。そして、デコーダ４０は、スタートコード検索範囲内でスタートコードを検索する(ステップＳ１０２)。この結果、スタートコードを検出すると(ステップＳ１０３)、デコーダ４０は、Ｖｉｄｅｏエレメンタリデータ１２４に対するデコード処理を実行し(ステップＳ１０４)、これにより得たＶｉｄｅｏデータをモニタ画面上に表示する(ステップＳ１０５)。一方、上記のステップＳ１０３でスタートコードを検出できなかった場合、デコーダ４０は、タイムアウト(例えば、Ｖｉｄｅｏエレメンタリデータ１２４のデータ長に相当する検索時間が経過しているか否か)を確認する(ステップＳ１０６)。この結果、タイムアウトしていなければ、デコーダ４０は、スタートコード検索範囲を次の所定数バイトに再設定し(ステップＳ１０７)、上記のステップＳ１０２に戻ってスタートコードの検索を継続する。一方、タイムアウトしていれば、デコーダ４０は、モニタ画面に前回表示したＶｉｄｅｏデータを再表示する(ステップＳ１０８)。なお、Ａｕｄｉｏエレメンタリデータ１２５に対するデコード処理においては、上記のステップＳ１０１〜Ｓ１０４、Ｓ１０６、及びＳ１０７が同様に実行され、上記のステップＳ１０５及びＳ１０８に代えて音声出力が実行される。
【００１２】
なお、参考技術として、特許文献１には、上記のステップＳ１０４と同等のデコード処理の実行と並行して、現在デコード対象のデータ中に、次にデコード対象となるデータのスタートコードが含まれていないか(すなわち、現在デコード対象のデータにデータ長の誤りがないか)確認し、当該スタートコードが検出された場合にデコード処理を中断するデコーダが記載されている。
【特許文献１】特開２００４−２３５８２０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記の受信機には、デスクランブラ２０がＴＳパケットのデスクランブルに失敗した場合に、デコーダの処理負荷が増大してしまうという課題があった。
【００１４】
より具体的には、正常にデスクランブルされなかったＴＳパケットが入力された場合、デコーダでは、エレメンタリデータ中のスタートコードを検出できず、図１０に示したステップＳ１０２、Ｓ１０３、Ｓ１０６、及びＳ１０７の処理が何度も繰り返し実行されることとなる。この場合、後続のＴＳパケットがデコード処理待ちとなるため、受信機全体の処理遅延に繋がる。
【００１５】
また、近年では、図１１に示すように、デスクランブルされたＴＳパケット１００ｄを、パーソナルコンピュータ(以下、ＰＣ)４内のソフトウェアデコーダ４０ａにてデコードするシステムも普及しつつある。ＰＣ４に正常にデスクランブルされなかったＴＳパケットが入力された場合、ＣＰＵ(Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ、図示せず)の処理負荷(すなわち、ＣＰＵ使用率)が増大し、ＯＳ(Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ)及び他のアプリケーションにおける動作遅延やフリーズ等を引き起こす恐れもある。
【課題を解決するための手段】
【００１６】
本発明の一態様に係るデスクランブラは、スクランブルされたパケットを受信する受信機に搭載され、デスクランブル鍵を用いて、前記スクランブルされたパケットをデスクランブルするデスクランブル実行部と、前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブル鍵の取得状況に基づき判定すると共に、デスクランブル可能と判定した第１のパケットを前記デスクランブル実行部に与え、デスクランブル不可と判定した第２のパケットを廃棄する判定部とを備える。
【００１７】
また、本発明の一態様に係るデスクランブル方法は、スクランブルされたパケットを受信する受信機におけるデスクランブル方法を提供する。このデスクランブル方法は、前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブルに必要なデスクランブル鍵の取得状況に基づき判定し、デスクランブル可能と判定した第１のパケットを、前記デスクランブル鍵を用いてデスクランブルし、デスクランブル不可と判定した第２のパケットを廃棄する。
【００１８】
さらに、本発明の一態様に係る制御プログラムは、スクランブルされたパケットを受信する受信機に、前記スクランブルされたパケットに対するデスクランブルが可能であるか否かを、少なくとも前記受信機における前記デスクランブルに必要なデスクランブル鍵の取得状況に基づき判定する処理と、デスクランブル可能と判定したパケットを、前記デスクランブル鍵を用いてデスクランブルする処理と、デスクランブル不可と判定したパケットを廃棄する処理とを実行させる。
【００１９】
すなわち、本発明では、正常にデスクランブルされたパケットのみをデコーダに与えることができ、以てデコーダの処理負荷を低減させることができる。
【発明の効果】
【００２０】
本発明によれば、デコーダの処理負荷を低減させることができ、以て受信機(或いはＰＣ)の処理性能及び信頼性を向上させることが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に係るデスクランブラの実施の形態１〜３を、図１〜図６を参照して説明する。なお、各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
【００２２】
[実施の形態１]
図１に示す本実施の形態に係るデスクランブラ２０ａは、図９及び図１１にそれぞれ示した受信機１及び１ａにデスクランブラ２０に代えて搭載することができる。このデスクランブラ２０ａは、制御部５０により取得されたデスクランブル鍵Ｋｓを記憶するデスクランブル鍵記憶部２１と、このデスクランブル鍵記憶部２１に記憶されたデスクランブル鍵Ｋｓを用いてＴＳパケット１００をデスクランブルするデスクランブル実行部２２と、制御部５０にデスクランブル鍵Ｋｓの取得状況(以下、デスクランブル鍵取得状況と呼称する)ＡＳを問合せると共に、このデスクランブル鍵取得状況ＡＳに基づき、ＴＳパケット１００に対するデスクランブルが可能であるか否かを判定する判定部２３とを備えている。
【００２３】
また、判定部２３は、デスクランブル不可と判定したＴＳパケット１００を廃棄する。一方、判定部２３は、デスクランブル可能と判定したＴＳパケット１００をデスクランブル実行部２２に与える。この時、判定部２３は、デスクランブル鍵記憶部２１に対してデスクランブル鍵出力指示ＩＮＳ３を与える。この指示ＩＮＳ３を受けたデスクランブル鍵記憶部２１は、デスクランブル実行部２２にデスクランブル鍵Ｋｓを供給する。
【００２４】
動作においては、図２に示すように、まず判定部２３は、入力されたＴＳパケット１００中のＴＳＣ１１６を参照し、ＴＳパケット１００がスクランブルされているか否かを判定する(ステップＳ１)。
【００２５】
この結果、ＴＳパケット１００がスクランブルされていると判定した場合、判定部２３は、制御部５０に問合せたデスクランブル鍵取得状況ＡＳに基づき、デスクランブル鍵記憶部２１に記憶されるデスクランブル鍵Ｋｓが正常に取得されたものであるか否かを判定する(ステップＳ２)。
【００２６】
ここで、上記のデスクランブル鍵取得状況ＡＳには、例えば、受信機１又は１ａにおける、ＥＣＭ１２３(図９参照)の受信若しくは受信誤りの有無、及びＩＣカード３の装着有無の少なくとも一方が設定されるものとする。判定部２３は、デスクランブル鍵取得状況ＡＳが例えばＩＣカード３の"装着有り"を示す場合、デスクランブル鍵Ｋｓが正常に取得されたものであると判定し、デスクランブル鍵取得状況ＡＳがＩＣカード３の"装着無し"を示す場合には、デスクランブル鍵Ｋｓが正常に取得されたものでないと判定する。同様に、判定部２３は、デスクランブル鍵取得状況ＡＳがＥＣＭ１２３の"受信有り"又は"受信誤り無し"を示す場合、デスクランブル鍵Ｋｓが正常に取得されたものであると判定し、デスクランブル鍵取得状況ＡＳがＥＣＭ１２３の"受信無し"又は"受信誤り有り"を示す場合には、デスクランブル鍵Ｋｓが正常に取得されたものでないと判定する。なお、デスクランブル鍵取得状況ＡＳには、上記ＥＣＭ１２３の受信状況及びＩＣカード３の装着状況に限らず、受信機においてデスクランブル鍵Ｋｓが正常に取得可能か否かを示す情報(例えば、受信機がデジタル放送を視聴するための正当な契約情報を有しているか否か)が設定されていれば良い。
【００２７】
この結果、デスクランブル鍵Ｋｓが正常に取得されたものであると判定した場合、判定部２３は、ＴＳパケット１００をデスクランブル実行部２２に与える。また同時に、判定部２３は、デスクランブル鍵記憶部２１に対してデスクランブル鍵出力指示ＩＮＳ３を与え、以てデスクランブル実行部２２にデスクランブル鍵Ｋｓを供給する。デスクランブル実行部２２は、デスクランブル鍵Ｋｓを用いて、ＴＳパケット１００に対するデスクランブルを施し(ステップＳ３)、以て正常にデスクランブルされたＴＳパケット１００ｄを出力する(ステップＳ４)。このパケット１００ｄは、図９又は図１１に示したＤＥＭＵＸ部３０を経由して、デコーダ４０又はソフトウェアデコーダ４０ａに与えられることとなる。
【００２８】
一方、デスクランブル鍵Ｋｓが正常に取得されたものでないと判定した場合、判定部２３は、ＴＳパケット１００を廃棄する(ステップＳ５)。なお、上記のステップＳ１でＴＳパケット１００がスクランブルされていないと判定した場合、判定部２３は、上記のステップＳ４に進んで、ＴＳパケット１００をそのままＤＥＭＵＸ部３０に対して出力する。
【００２９】
このように、デスクランブラ２０ａは、正常にデスクランブルされたＴＳパケット１００ｄのみをデコーダ４０及びソフトウェアデコーダ４０ａに与えるため、デコーダ４０及びソフトウェアデコーダ４０ａの処理負荷を大幅に低減させることができる。より具体的には、デコーダ４０及びソフトウェアデコーダ４０ａは、エレメンタリデータ中からスタートコードを検出できるため、図１０に示したステップＳ１０２、Ｓ１０３、Ｓ１０６、及びＳ１０７の処理を繰り返し実行する必要が無い。従って、受信機での処理遅延の発生、及びＰＣでのＯＳ及び他のアプリケーションにおける動作遅延やフリーズ等の発生を防止することができる。
【００３０】
[実施の形態２]
本実施の形態に係るデスクランブラは、図１に示したデスクランブラ２０ａと同様の構成とすることができる。但し、判定部２３の動作が、上記の実施の形態１とは異なる。より具体的には、判定部２３は、図３に示すデスクランブル鍵の更新規則性を利用し、図２に示したステップＳ１〜Ｓ５の処理に加えて、図４に示すステップＳ６〜Ｓ９の処理を実行する。
【００３１】
まず、日本国のデジタル放送においては、１つのＥＣＭに２つのデスクランブル鍵(奇数鍵及び偶数鍵)が含まれ、後続のＴＳパケット中のＴＳＣによっていずれのデスクランブル鍵を使用すべきかが示される。
【００３２】
図３は、ＥＣＭとＴＳＣの関係を、時間軸に沿って示したものである。今、図示の如く、最初のＥＣＭ１２３＿１に、デスクランブル鍵として奇数鍵Ｋｓ＿ｏｄｄ１及び偶数鍵Ｋｓ＿ｅｖｅｎ１が含まれ、このＥＣＭ１２３＿１に後続するＴＳペットのＴＳヘッダ１１０中のＴＳＣが"１１ｂ(奇数)"に設定されているとする。この場合、デスクランブラ２０ａは、奇数鍵Ｋｓ＿ｏｄｄ１を用いて、Ｖｉｄｅｏエレメンタリデータ１２４＿１、Ａｕｄｉｏエレメンタリデータ１２５＿１、…をそれぞれデスクランブルする。
【００３３】
また、奇数鍵及び偶数鍵は排他的に更新され、例えば、次のＥＣＭ１２３＿１１には、更新された奇数鍵Ｋｓ＿ｏｄｄ２と更新されない偶数鍵Ｋｓ＿ｅｖｅｎ１とが含まれる。この場合、ＥＣＭ１２３＿１１に後続するＴＳペットのＴＳヘッダ１１０中のＴＳＣは、"１０ｂ(偶数)"に設定される。従って、デスクランブラ２０ａは、偶数鍵Ｋｓ＿ｅｖｅｎ１を用いて、Ｖｉｄｅｏエレメンタリデータ１２４＿１１、Ａｕｄｉｏエレメンタリデータ１２５＿１１、…をそれぞれデスクランブルする。
【００３４】
また、次のＥＣＭ１２３＿２１には、更新されない奇数鍵Ｋｓ＿ｏｄｄ２と更新された偶数鍵Ｋｓ＿ｅｖｅｎ２とが含まれる。この場合、ＥＣＭ１２３＿２１に後続するＴＳペットのＴＳヘッダ１１０中のＴＳＣは、"１１ｂ(奇数)"に設定される。従って、デスクランブラ２０ａは、奇数鍵Ｋｓ＿ｏｄｄ２を用いて、Ｖｉｄｅｏエレメンタリデータ１２４＿２１、Ａｕｄｉｏエレメンタリデータ１２５＿２１、…をそれぞれデスクランブルする。
【００３５】
以降、同様にして、奇数鍵及び偶数鍵が交互に更新され、この更新に対応してＴＳＣが変化する。
【００３６】
すなわち、奇数鍵及び偶数鍵が正常に取得された時点からＴＳＣが２回変化するまでの期間は、デスクランブラ２０ａは、新たな奇数鍵又は偶数鍵が取得されなくてもＴＳパケットに対するデスクランブルを行うことが可能である。図示の奇数鍵Ｋｓ＿ｏｄｄ１及び偶数鍵Ｋｓ＿ｅｖｅｎ１が正常に取得された場合を例に取ると、デスクランブラ２０ａは、ＥＣＭ１２３＿１１に含まれる奇数鍵Ｋｓ＿ｏｄｄ２及び偶数鍵Ｋｓ＿ｅｖｅｎ１が取得されない場合であっても、取得済みの偶数鍵Ｋｓ＿ｅｖｅｎ１を用いて、Ｖｉｄｅｏエレメンタリデータ１２４＿１１、Ａｕｄｉｏエレメンタリデータ１２５＿１１、…をそれぞれデスクランブルすることが可能である。
【００３７】
従って、デスクランブラ２０ａ内の判定部２３は、図４のステップＳ６〜Ｓ９に示す如くＴＳＣの変化回数を監視することにより、ＴＳパケット１００に対するデスクランブルが可能であるか否かを判定する。
【００３８】
より具体的には、上記のステップＳ２で奇数鍵Ｋｓ＿ｏｄｄ１及び偶数鍵Ｋｓ＿ｅｖｅｎ１が正常に取得されたと判定した場合、まず判定部２３は、ＴＳＣの変化回数を計数するためのカウンタ(以下、ＴＳＣ変化カウンタと呼称する)ＣＮＴを"２"に初期化する(ステップＳ６)。
【００３９】
そして、判定部２３は、ＴＳＣ１１６が変化したか否かを判定する(ステップＳ７)。ＴＳＣ変化カウンタＣＮＴの初期化直後においては、判定部２３は、ＴＳＣ１１６の変化を検出せず、ステップＳ９に進んで、カウンタＣＮＴが"０"より大きいか否かを判定する。今、カウンタＣＮＴ＝"２"であるため、判定部２３は、ＴＳパケット１００に対するデスクランブルが可能であると判断して、上記のステップＳ３に進み、以てデスクランブル実行部２２にＴＳパケット１００に対するデスクランブル処理を実行させる。より具体的には、判定部２３は、ＴＳパケット１００をデスクランブル実行部２２へ出力する。また同時に、判定部２３は、ＴＳＣ１１６が"１１ｂ(奇数)"に設定されているため、デスクランブル鍵記憶部２１に対して、奇数鍵の出力を指示するデスクランブル鍵出力指示ＩＮＳ３を与える。
【００４０】
これにより、デスクランブル実行部２２では、奇数鍵Ｋｓ＿ｏｄｄ１を用いたデスクランブル処理が実行され、以てＶｉｄｅｏエレメンタリデータ１２４＿１、Ａｕｄｉｏエレメンタリデータ１２５＿１、…が正常にデスクランブルされることとなる。
【００４１】
この後、上記のステップＳ２でＥＣＭ１２３＿１１に含まれる奇数鍵Ｋｓ＿ｏｄｄ２及び偶数鍵Ｋｓ＿ｅｖｅｎ１が正常に取得されなかった判定したとすると、判定部２３は、上記のステップＳ７に進んで、Ｖｉｄｅｏエレメンタリデータ１２４＿１１を含むＴＳパケット１００中のＴＳＣ１１６が変化したか否かを判定する。今、ＴＳＣ１１６が"１１ｂ(奇数)"から"１０ｂ(偶数)"に変化したため、判定部２３は、ＴＳＣ変化カウンタＣＮＴを"１"だけデクリメントする(ステップＳ８)。
【００４２】
そして、判定部２３は、再びステップＳ９に進んで、ＴＳＣ変化カウンタＣＮＴが"０"より大きいか否かを判定する。今、カウンタＣＮＴ＝"１"であるため、判定部２３は、ＴＳパケット１００に対するデスクランブルが可能であると判断して、デスクランブル実行部２２にＴＳパケット１００に対するデスクランブル処理を実行させる。この時、ＴＳＣ１１６が"１０ｂ(偶数)"に設定されているため、デスクランブル鍵記憶部２１に対して、偶数鍵の出力を指示するデスクランブル鍵出力指示ＩＮＳ３を与える。
【００４３】
これにより、デスクランブル実行部２２では、偶数鍵Ｋｓ＿ｅｖｅｎ１を用いたデスクランブル処理が実行され、以てＶｉｄｅｏエレメンタリデータ１２４＿１１、Ａｕｄｉｏエレメンタリデータ１２５＿１１、…が正常にデスクランブルされることとなる。
【００４４】
この後、上記のステップＳ２でＥＣＭ１２３＿２１に含まれる奇数鍵Ｋｓ＿ｏｄｄ２及び偶数鍵Ｋｓ＿ｅｖｅｎ２が正常に取得されなかった判定したとすると、判定部２３は、上記のステップＳ７に進んで、Ｖｉｄｅｏエレメンタリデータ１２４＿２１を含むＴＳパケット１００中のＴＳＣ１１６が変化したか否かを判定する。今、ＴＳＣ１１６が"１０ｂ(偶数)"から"１１ｂ(奇数)"に変化したため、判定部２３は、上記のステップＳ８に進んで、ＴＳＣ変化カウンタＣＮＴを"１"だけデクリメントする。
【００４５】
そして、判定部２３は、再びステップＳ９に進んで、ＴＳＣ変化カウンタＣＮＴが"０"より大きいか否かを判定する。今、カウンタＣＮＴ＝"０"であるため(すなわち、ＴＳＣ１１６が２回変化しても、新たなデスクランブル鍵が取得できなかったため)、判定部２３は、ＴＳパケット１００に対するデスクランブルが不可能であると判断し、上記のステップＳ５に進んでＴＳパケット１００を廃棄する。なお、受信機の起動時、判定部２３は、ＴＳＣ変化カウンタＣＮＴを"０"に設定する。このため、受信機においてデスクランブル鍵(奇数鍵及び偶数鍵)が最初に正常取得されるまでの期間は、判定部２３は、上記のステップＳ９でカウンタＣＮＴ≦"０"が成立すると判定し、上記のステップＳ５に進んでＴＳパケット１００を廃棄する。
【００４６】
このように、本実施の形態に係るデスクランブラは、上記の実施の形態１と同様、正常にデスクランブルされたＴＳパケットのみをデコーダに与えることができる。
【００４７】
また、デスクランブル鍵が正常に取得された時点からＴＳＣが２回変化するまでの期間は、新たなデスクランブル鍵が取得できない場合であっても、正常にデスクランブルされたＴＳパケットをデコーダに与えることができる。このため、例えＩＣカードの装着有無の誤検出や、一時的な電波状況の劣化等によるＥＣＭの取りこぼしが発生しても、デスクランブルされたＴＳパケットをデコーダに送り続けることが可能である。さらに、デスクランブル鍵が正常に取得される度にＴＳＣ変化カウンタを初期化するため、上記の期間を順次延長することができる。
【００４８】
また、ＶｉｄｅｏエレメンタリデータとＡｕｄｉｏエレメンタリデータとで互いに異なるデスクランブル鍵が指定される場合には、図４に示した各処理をＰＩＤ毎に実行すれば良い。
【００４９】
[実施の形態３]
図５に示す本実施の形態に係るデスクランブラ２０ｂは、判定部２３がＤＥＭＵＸ部３０に対してパケット廃棄指示ＩＮＳ４を与えるようにした点が、上記の実施の形態１及び２と異なる。
【００５０】
動作においては、判定部２３は、上記の実施の形態１又は２と同様にしてＴＳパケット１００を廃棄した後、ＤＥＭＵＸ部３０に対してパケット廃棄指示ＩＮＳ４を与え、以てデスクランブル実行部２２から入力されるデスクランブルされたＴＳパケット１００ｄを、ＰＵＳＩ１１３(図７参照)が"１(先頭データ)"を示すデスクランブルされたＴＳパケット１００ｄが入力されるまで廃棄するよう指示する。
【００５１】
この指示ＩＮＳ４を受けたＤＥＭＵＸ部３０は、図６に示す如く動作する。すなわち、ＤＥＭＵＸ部３０は、デスクランブルされたＴＳパケット１００ｄが入力される度に、ＴＳパケット１００ｄ中のＰＳＵＩが"１"であるか否かを判定する(ステップＳ２１)。ＰＳＵＩ＝"１"が成立しない場合、ＤＥＭＵＸ部３０は、ＴＳパケット１００ｄを廃棄する(ステップＳ２２)。一方、ＰＳＵＩ＝"１"が成立した場合、ＤＥＭＵＸ部３０は、図９に示したデコーダ４０又は図１１に示したソフトウェアデコーダ４０ａへのＴＳパケット１００ｄの出力を再開する(ステップＳ２３)。
【００５２】
これにより、デコーダ４０及びソフトウェアデコーダ４０ａでは、有効なＴＳパケット(ペイロードを結合した結果、元のデータ列が得られるＴＳパケット)に対してのみデコード処理が実行されることとなる。従って、デスクランブラ２０ｂは、デコーダ４０及びソフトウェアデコーダ４０ａの処理負荷を、図１に示したデスクランブラ２０ａと比較してさらに低減させることができる。
【００５３】
なお、図示を省略するが、判定部２３自身がＤＥＭＵＸ部３０と同様にしてＴＳパケット１００中のＰＳＵＩを監視することにより、デスクランブル実行部２２へのＴＳパケット１００の出力を制御しても良い。この場合、デスクランブル実行部２２の処理負荷も低減させることができる。
【００５４】
なお、上記の実施の形態によって本発明は限定されるものではなく、特許請求の範囲の記載に基づき、当業者によって種々の変更が可能なことは明らかである。例えば、図２及び図４に示した各処理を、ＴＳパケットを受信する受信機に実行させるための制御プログラムとして提供することもできる。
【図面の簡単な説明】
【００５５】
【図１】本発明に係るデスクランブラの実施の形態１及び２に共通の構成例を示したブロック図である。
【図２】本発明に係るデスクランブラの実施の形態１の動作例を示したフローチャート図である。
【図３】本発明に係るデスクランブラの実施の形態２で利用するデスクランブル鍵の更新規則性を示した図である。
【図４】本発明に係るデスクランブラの実施の形態２の動作例を示したフローチャート図である。
【図５】本発明に係るデスクランブラの実施の形態３の構成例を示したブロック図である。
【図６】本発明に係るデスクランブラの実施の形態３の動作例を示したフローチャート図である。
【図７】ＴＳパケットのフォーマット例を示した図である。
【図８】ＴＳパケットにおけるペイロードの設定例を示した図である。
【図９】ＴＳパケットを受信する一般的な受信機の一の構成例を示したブロック図である。
【図１０】ＴＳパケットを受信する一般的な受信機におけるデコーダのデコード処理例を示したフローチャート図である。
【図１１】ＴＳパケットを受信する一般的な受信機の他の構成例を示したブロック図である。
【符号の説明】
【００５６】
１, １ａ  受信機
２  放送信号
３  ＩＣカード
４  ＰＣ
１０  チューナ部
２０, ２０ａ, ２０ｂ  デスクランブラ
２１  デスクランブル鍵記憶部
２２  デスクランブル実行部
２３  判定部
３０  ＤＥＭＵＸ部
４０  デコーダ
４０ａ  ソフトウェアデコーダ
５０  制御部
６０  カードＩ／Ｆ
１００  ＴＳパケット
１００ｄ  デスクランブルされたＴＳパケット
１１０  ＴＳヘッダ
１１１  同期バイト
１１２  ＴＥＩ
１１３  ＰＵＳＩ
１１４  ＴＰＩ
１１５  ＰＩＤ
１１６  ＴＳＣ
１１７  ＡＦＣ
１１８  ＣＣ
１１９  ＡＤＦ
１２０  ペイロード
１２１  ＰＡＴ
１２２  ＰＭＴ
１２３  ＥＣＭ
１２４  Ｖｉｄｅｏエレメンタリデータ
１２５  Ａｕｄｉｏエレメンタリデータ
ＡＳ  デスクランブル鍵取得状況
ＣＭＤ  ＥＣＭ受信コマンド
ＣＮＴ  ＴＳＣ変化カウンタ
ＩＮＳ１  チャンネル選択指示
ＩＮＳ２  番組選択指示
ＩＮＳ３  デスクランブル鍵出力指示
ＩＮＳ４  パケット廃棄指示
Ｋｓ  デスクランブル鍵
Ｋｓ＿ｏｄｄ  奇数鍵
Ｋｓ＿ｅｖｅｎ  偶数鍵
Ｋｗ  ワーク鍵
【図１】
2010130054.tif 000003
【図２】
2010130054.tif 000004
【図３】
2010130054.tif 000005
【図４】
2010130054.tif 000006
【図５】
2010130054.tif 000007
【図６】
2010130054.tif 000008
【図７】
2010130054.tif 000009
【図８】
2010130054.tif 000010
【図９】
2010130054.tif 000011
【図１０】
2010130054.tif 000012
【図１１】
2010130054.tif 000013