(57)【特許請求の範囲】
【請求項１】
所定のデータインターフェイスの規格の下で規定されるストリームデータを入力する入力手段と、
上記ストリームデータに挿入されるべきことが規定されており、そのストリームデータについて所要のデータ処理を施すのに必要とされる番組特定情報、選択情報、及び不連続情報を含む付加情報を抽出して取得する付加情報取得手段と、
ハードウェアにより形成され、エラー検出符号が挿入されている上記付加情報のうち番組特定情報、選択情報について、上記エラー検出符号を利用してエラー検出を行うようにされると共に、エラー検出結果に基づいて、比較手段が比較対象として用いる上記今回取得された付加情報のうち番組特定情報、選択情報としての有効／無効を設定するエラー検出手段と、
ハードウェアにより形成され、上記付加情報取得手段により過去に取得されて現在有効とされている付加情報のうち番組特定情報、選択情報と、今回取得され上記エラー検出手段によって有効とされた付加情報のうち番組特定情報、選択情報のデータ構造全体、又はデータ構造内における所定複数の情報の内容についての比較を行い、内容が一致しているか否かについて比較を行う上記比較手段と、
上記比較手段により一致していないとの比較結果が得られた場合に、上記付加情報取得手段により過去に取得されて現在有効とされている付加情報のうち番組特定情報、選択情報を今回取得され上記エラー検出手段によって有効とされた付加情報のうち番組特定情報、選択情報に更新する上記データ処理を施すための制御処理を実行する制御手段に対して通知を行う通知手段と、
を備え、
上記通知手段は、上記付加情報取得手段が、付加情報としてストリームデータが不連続となることを示す上記不連続情報を取得した場合に、ストリームデータの不連続に対応する所定の上記データ処理を施すための制御処理を実行する制御手段に対して通知を行うようにされている
データ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、所定のシリアルデータインターフェイスのもとで規定されるトランスポートストリームデータについて処理を行うためのデータ処理装置に関するものである。
【０００２】
【従来の技術】
近年、デジタル衛星放送の普及が進んでいる。デジタル衛星放送は、例えば既存のアナログ放送と比較してノイズやフェージングに強く、高品質の信号を伝送することが可能である。また、周波数利用効率が向上されており、多チャンネル化も実現されている。
【０００３】
このようなデジタル衛星放送における現状の規格の下では、プログラム（番組）としてのビデオデータ及びオーディオデータは、ＭＰＥＧ(Moving Picture Experts Group)２方式により圧縮符号化される。そして、この圧縮符号化されたプログラムのデータを、番組情報や受信限定情報等をはじめとする各種の付加情報と共に多重化して、いわゆるトランスポートストリーム（以下、ＴＳ(Transport Stream)とも記述する）といわれるストリームデータの形式によって伝送するようにされる。
【０００４】
そして、デジタル衛星放送受信機とデジタルＶＴＲ(video Tape Recorder)やＨＤＤ（ハードディスク）などのデジタルストレージ機器とを接続することによって、デジタル衛星放送受信機で受信したプログラムについて、ＴＳの形式のままデジタルストレージ装置に対して転送して記録できるようにシステムを構成することが提案され、また、実現化されてきている。
このようなシステムとすれば、受信したプログラムのデータを復調することなく、圧縮符号化された状態のまま記録することになるため、記録のための信号処理も効率的なものとなり、また、再生されるプログラムの画質、音質も劣化が無いようにされる。さらには、デジタル衛星放送において特徴となる、各種の付加情報も記録されることになるので、これらの付加情報を再生時に利用すれば、より充実した再生機能を得ることも可能になる。
【０００５】
そして現状においては、上記したデジタル衛星放送受信機とデジタルストレージ機器とを接続するデジタルデータインターフェイスとして、ＩＥＥＥ(Institute of Electrical Engineers)１３９４データインターフェイスを採用したものが知られてきている。
ＩＥＥＥ１３９４データインターフェイスは、例えばＳＣＳＩやＵＳＢなどよりもデータ転送レートが高速であり、周知のように、所要のデータサイズを周期的に送受信することが保証されるIsochronous通信が可能とされる。このため、ＩＥＥＥ１３９４データインターフェイスは、ＡＶ(Audio/Video)などのストリームデータをリアルタイムで転送するのに有利とされている。
【０００６】
なお、実際には、ＩＥＥＥ１３９４バスを介して伝送されるＴＳは、例えば受信された元のＴＳから、少なくとも記録に必要とされる特定のプログラムに関する情報が選択されるようにして抜き出された、パーシャル・トランスポートストリーム（以降、ＰＴＳとも略して記述する）といわれるストリームデータとなる。
【０００７】
そして、例えば上記したようなデジタル衛星放送受信機では、デジタルストレージ機器に記録されたＰＴＳの形式によるプログラムを入力して所要のデータ処理を施して、画像／音声として出力することが可能とされる。
前述のように、ＰＴＳには付加情報が挿入されているのであるが、入力したＰＴＳを再生出力するためにデータ処理を施す場合には、ＰＴＳに挿入されているこれらの付加情報を抽出取得し、この取得した付加情報を例えばコントローラが取り込んで、その情報内容に応じて必要なデータ処理が行われるための制御処理を実行していくことになる。
また、付加情報を取得した際には、例えばコントローラのソフトウェア処理によって、常にその取得した付加情報が更新されているか否かについての判定を行うようにしており、更新されていることが判定されれば、その更新された付加情報を新たに取り込み、この取り込んだ付加情報に基づいてデータ処理を行うようにされる。つまり、データ処理の切り換えを行うものである。例えば付加情報に更新がある場合とは、ＰＴＳのプログラム内容に何らかの変更が生じた場合となるのであるが、上記のようにして付加情報の更新に応じてデータ処理の切り換えを行うようにすることで、ＰＴＳのプログラム内容の変更に対応した適切な画像／音声の再生出力を可能としている。
【０００８】
【発明が解決しようとする課題】
ところで、上記したようなデータ処理の切り換えに関わる動作では、コントローラは、取り込んだ付加情報の内容に対応するデータ処理に加え、付加情報が取得されるごとに、割り込み処理として付加情報の比較処理を行っていることになる。そして、このような処理を全てソフトウェアによって実行していることになる
従って、コントローラにおける処理負担は、相応に重いものとなってしまうことになる。特に、例えば一旦デジタルストレージ機器に記録されたＰＴＳを再生するような場合には、比較的短時間で、ＰＴＳの内容が変化する可能性も高く、これに伴って付加情報が更新される頻度も高いものとなることから、付加情報の比較に要する処理負担はより重いものとなっているという実状があり、処理速度の低下を招きやすいという問題を抱えている。
【０００９】
【課題を解決するための手段】
そこで本発明は上記した課題を考慮して、データ処理装置として次のように構成する。
つまり、所定のデータインターフェイスの規格の下で規定されるストリームデータを入力する入力手段と、上記ストリームデータに挿入されるべきことが規定されており、そのストリームデータについて所要のデータ処理を施すのに必要とされる番組特定情報、選択情報、及び不連続情報を含む付加情報を抽出して取得する付加情報取得手段と、ハードウェアにより形成され、エラー検出符号が挿入されている上記付加情報のうち番組特定情報、選択情報について、上記エラー検出符号を利用してエラー検出を行うようにされると共に、エラー検出結果に基づいて、比較手段が比較対象として用いる上記今回取得された付加情報のうち番組特定情報、選択情報としての有効／無効を設定するエラー検出手段と、ハードウェアにより形成され、上記付加情報取得手段により過去に取得されて現在有効とされている付加情報のうち番組特定情報、選択情報と、今回取得され上記エラー検出手段によって有効とされた付加情報のうち番組特定情報、選択情報のデータ構造全体、又はデータ構造内における所定複数の情報の内容についての比較を行い、内容が一致しているか否かについて比較を行う上記比較手段と、上記比較手段により一致していないとの比較結果が得られた場合に、上記付加情報取得手段により過去に取得されて現在有効とされている付加情報のうち番組特定情報、選択情報を今回取得され上記エラー検出手段によって有効とされた付加情報のうち番組特定情報、選択情報に更新する上記データ処理を施すための制御処理を実行する制御手段に対して通知を行う通知手段と、を備え、上記通知手段は、上記付加情報取得手段が、付加情報としてストリームデータが不連続となることを示す上記不連続情報を取得した場合に、ストリームデータの不連続に対応する所定の上記データ処理を施すための制御処理を実行する制御手段に対して通知を行うようにされていることとする。
【００１０】
上記構成においては、入力されたストリームデータに挿入されている付加情報について、前回取得のものと今回取得のものとを比較するのにあたり、これをハードウェア処理によって行うようにされる。そして、例えば付加情報の内容に応じてデータ処理を実行する制御手段に対して、内容が一致していないことを示す比較結果が得られた場合に通知を行うようにしている。
つまり、本発明においては、前回取得の付加情報と今回取得の付加情報との比較処理をハードウェアによって実行する構成としていることで、例えば、ソフトウェア処理によって上記データ処理を実行する制御手段が付加情報の比較を行う構成とする場合よりも、制御手段の処理負担が軽減されることになる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態としてのデータ処理装置について説明を行っていくこととする。本実施の形態のデータ処理装置としては、デジタル衛星放送を受信復調して映像／音声信号を出力可能とされると共に、ＩＥＥＥ１３９４データインターフェイスによってデジタルストレージデバイスと接続されることで、ストリームデータの記録再生が可能とされるデジタル衛星放送受信機に搭載されている場合を例に挙げることとする。
また、以降の説明は次の順序で行う。
１．デジタル衛星放送受信機
２．付加情報のデータ構造
２−１．トランスポート・パケット・ヘッダ
２−２．ＰＡＴセクション
２−３．ＰＭＴセクション
２−４．ＳＩＴセクション
２−５．ＤＩＴセクション
３．付加情報処理部
４．処理動作
【００１２】
１．デジタル衛星放送受信機
図１は、本実施の形態のデジタル衛星放送受信装置の構成例が示されている。
周知のように、デジタル衛星放送では、通信衛星又は放送衛星からデジタル放送信号が出力されている。パラボラアンテナ１２では、この衛星からの放送信号を受信し、内蔵のＬＮＢ(Low Noize Block Down Converter)によって所定の高周波信号に変換して、デジタル衛星放送受信機１に対して供給する。
【００１３】
デジタル衛星放送受信機１においては、パラボラアンテナ１２にて受信され、所定の周波数に変換された受信信号を、フロントエンド部２により入力する。
フロントエンド部２では、システムコントローラ１０からの伝送諸元等を設定した設定信号に基づいて、この設定信号により決定されるキャリア（受信周波数）を受信して、例えばビタビ復調処理や誤り訂正処理等を施すことで、ＴＳ（Transport Stream）を得るようにされる。
【００１４】
このデジタル衛星放送の規格によるＴＳは、周知のように、例えばＭＰＥＧ２(Moving Picture Experts Group Layer2）方式によって、複数のプログラム（番組）のビデオ信号及びオーディオ信号を圧縮した圧縮データと、各種の付加情報が多重化されている。上記したビデオ信号及びオーディオ信号を圧縮した圧縮データは、ＥＳ（Elementary Stream)として多重化される。また、放送側が挿入する付加情報としては、ＰＡＴ(Program Association Table)、ＰＭＴ(Program Map Table)などのテーブルを格納するＰＳＩ(Program Specific Information：番組特定情報）や、ＳＩ(Service Information:番組配列情報）などが挙げられる。
そして、上記情報の多重化は、ＴＳを１８８バイトのトランスポートストリーム・パケット（ＴＳパケット）により形成するようにして、このＴＳパケットに対して、上記したＥＳ及び各種付加情報を格納することにより行われる。
フロントエンド部２にて得られたＴＳは、デスクランブラ３に対して供給される。
【００１５】
また、フロントエンド部２では、ＴＳからＰＳＩ(Program Specific Information:番組特定情報）のパケットを取得し、その選局情報を更新すると共に、ＴＳにおける各チャンネルのコンポーネントＰＩＤ(Program ID)を得て、例えばシステムコントローラ１０に伝送する。システムコントローラ１０では、取得したＰＩＤを受信信号処理に利用することになる。
【００１６】
デスクランブラ３では、予め用意されたデスクランブルキーデータをシステムコントローラ１０から受け取ると共に、システムコントローラ１０によりＰＩＤが設定される。そして、このデスクランブルキーデータとＰＩＤとに基づいてデスクランブル処理を実行する。
この場合において、デスクランブラ３にてデスクランブル処理が施されたＴＳは、スイッチ部６の端子Ｔ１に対して供給されると共に、分岐してＩＥＥＥ１３９４通信部４に対して供給されるようになっている。また、確認のために述べておくと、デスクランブラ３から出力されるＴＳとしては、複数のプログラムのＥＳが多重化されている可能性があり、また、ＰＳＩをはじめとする付加情報も除去されることなく多重化されているものである。
【００１７】
スイッチ部６は、システムコントローラ１０の制御によって、端子Ｔ３に対して端子Ｔ１又は端子Ｔ２が択一的に接続されるようにして切り換えが行われる。そして、受信した放送信号をデコードしてビデオ／オーディオ信号として出力する際には、端子Ｔ３に対して端子Ｔ１を接続することで、デスクランブラ３から出力されたＴＳをデマルチプレクサ７に対して供給する。
これに対して、ＩＥＥＥ１３９４通信部４にて受信した外部からのＴＳをデコードしてビデオ／オーディオ信号として出力する際には、端子Ｔ３に対して端子Ｔ２を接続することで、ＩＥＥＥ１３９４通信部４にて受信したＴＳをデマルチプレクサ７に対して出力するようにされる。
【００１８】
デマルチプレクサ７は、システムコントローラ１０により設定されたフィルタ条件に従って、デスクランブラ３から供給されたＴＳから必要なＴＳパケットを分離する。これにより、例えばデマルチプレクサ７においては、目的とする１つのプログラムについてのＴＳパケットとして、ＭＰＥＧ２方式により圧縮されたビデオデータのＴＳパケットと、ＭＰＥＧ２方式により圧縮されたオーディオデータのＴＳパケットを得ることになる。そして、このようにして得られた圧縮ビデオデータと圧縮オーディオデータをＭＰＥＧデコーダ８に対して出力する。
【００１９】
なお、デマルチプレクサ７により分離された圧縮ビデオ／オーディオデータの個別パケットは、ＰＥＳ(Packetized Elementary Stream)と呼ばれる形式でそれぞれ、ＭＰＥＧデコーダ８に入力されるようになっている。
また、上記したフィルタ条件の設定は、例えばデマルチプレクサ７において、ＴＳに含まれるＰＡＴ、ＰＭＴなどを抽出して、システムコントローラ１０に転送するようにされる。そして、システムコントローラ１０が、転送されてきたＰＡＴ、ＰＭＴなどに記述されている情報内容に基づいて、デマルチプレクサ７に対してフィルタ条件を設定するようにされる。
【００２０】
ＭＰＥＧデコーダ８においては、圧縮ビデオデータをＭＰＥＧ２フォーマットに従ってデコード（伸長）処理を行うビデオデコーダと、圧縮オーディオデータについて、ＭＰＥＧ２フォーマットに従って、上記ビデオデータ出力に同期させるようにしてデコード処理を行うオーディオデコーダとを備えている。そして、入力された圧縮ビデオデータについては、ビデオデコーダによってデコード処理を施し、また、入力された圧縮オーディオデータについては、オーディオデコーダによってデコード処理を施す。
そして、この場合には、例えばデコードされたビデオデータについて、例えばＮＴＳＣ方式などの所定のテレビジョン方式に対応して適正に画像表示が行われるように所要の信号処理を施して、アナログビデオ信号として出力するようにされる。
また、デコードされたオーディオデータについては、例えばＤ／Ａ変換を行ってアナログ音声信号として出力するようにされる。
【００２１】
ＩＥＥＥ１３９４通信部４は、当該デジタル衛星放送受信機１と外部機器とをＩＥＥＥ１３９４バス１１を介して通信可能とするために設けられる。そして、このための基本構成としては、周知のように、ハードウェア、ファームウェア的には、物理層、リンク層、トランザクション層、及びシリアルバス・マネージメントを備え、この上位にアプリケーションが設けられる構成を採り、これらは、例えば送受信部４ｄとしての機能を実現する。また、この場合には、フィルタ部４ａ、ＤＩＴ挿入処理部４ｂ、ＳＩＴ挿入処理部４ｃとしての機能を有しているものとされる。
【００２２】
この場合のＩＥＥＥ１３９４通信部４は、デジタル衛星放送受信機１にて受信されてデスクランブラ３にてデスクランブル処理が施されたＴＳを入力して、ＩＥＥＥ１３９４バス１１を介して接続された外部機器に対して送信出力可能とされている。
そして、この場合のＩＥＥＥ１３９４通信部４に対しては、外部機器としてデジタルストレージ機器であるところの記憶部５が接続されているものである。記憶部５は、ここではハードディスクドライブとされ、大容量のデータを記憶可能とされている。このようにして、デジタルストレージ機器を外部機器として接続すれば、当該デジタル衛星放送受信機１により受信取得したデータを、ＴＳの形式のままデジタルストレージ機器に記録して保存することができる。また、記憶部５に保存されたＴＳの形式のデータをＩＥＥＥ１３９４バス１１を介して受信取得し、例えばビデオ／オーディオデータとして出力させることが可能となる。
【００２３】
なお、記憶部５としては、例えばデジタルＶＴＲなどをはじめとして、他のデジタルストレージ機器が採用されて構わないものである。また、ここでは記憶部５は、デジタル衛星放送受信機１とは別体とされる外部機器であることとしているが、例えばＩＥＥＥ１３９４データインターフェイスによって接続した上で、デジタル衛星放送受信機１内に内蔵する構成としてもよいものである。
【００２４】
そして、デジタル衛星放送受信機１にて受信取得したデータを記憶部５に対して伝送して記憶させるためのＩＥＥＥ１３９４通信部４の動作としては、次のようになる。
デジタル衛星放送受信機１にて受信され、デスクランブラ３によってスクランブル処理が施されたＴＳには、前述したように、複数のプログラムのデータが多重化され、さらに、各種の付加情報が多重化されている状態にある。
そこで、ＩＥＥＥ１３９４通信部４では、デスクランブラ３から入力されたＴＳを、先ず、フィルタ部５に対して供給するようにしている。フィルタ部５においては、入力されたＴＳから、必要とされるプログラム（コンテンツ）のみのＴＳパケットを分離する。なお、この際においても、先のデマルチプレクサ９の動作として説明したように、例えばＴＳに含まれるＰＡＴ、ＰＭＴなどの付加情報の内容に基づいて、必要なＴＳパケットを抽出するためのフィルタ条件が設定される。
また、ＩＥＥＥ１３９４データインターフェイスにより転送されるＰＴＳに挿入されるＰＳＩは、ＰＡＴ及びＰＭＴに限定されるべきであるとして規定されており、例えばフィルタ部５においては、ＰＡＴ及びＰＭＴのみからなるＰＳＩを再構成することも行うようにされる。なお、ＰＡＴ及びＰＭＴについての詳細は後述する。
【００２５】
ここで、フィルタ部５によって分離されたＴＳパケットによっては、送信用のＴＳが再構築されることになるのであるが、このＴＳは、元のＴＳから必要とされるプログラムに対応する情報のみが部分的に抜き出されたものであることから、「パーシャル・トランスポートストリーム（ＰＴＳ）」といわれる。
なお、ここでの詳しい説明は省略するが、ＰＴＳは、例えばDVB ETS 300 468 Specification for Service information(SI) in DVB systems, ARIB-STD B1/B21、及びARIB TR-B15の規格書において、ＩＥＥＥ１３９４などに代表されるシリアルデータインターフェイスによってＴＳを転送する場合の規定として定められている。また、後述するようにしてＰＴＳに挿入されるべき付加情報であるところのＰＡＴ、ＰＭＴ、ＳＩＴ、及びＤＩＴなどについても規定されている。
【００２６】
そして、ＩＥＥＥ１３９４通信部４では、フィルタ部５が機能することによって得られたＰＴＳに対して、必要に応じて、ＤＩＴ挿入処理部４ｂの機能を利用してＤＩＴを挿入するようにされる。また、ＳＩＴ挿入処理部４ｃの機能を利用してＳＩＴを挿入するようにされる。
なお、上記ＤＩＴ挿入処理部４ｂ及びＳＩＴ挿入処理部４ｃの各機能は、例えばシステムコントローラ１０によるソフトウェア的な処理によって実現されるのであるが、例えば、ハードウェアにより実現する回路部位をＩＥＥＥ１３９４通信部４内に設けてもよいものとされる。
なお、ＤＩＴ及びＳＩＴの詳細については、ＰＡＴ、ＰＭＴと共に後述する。
【００２７】
上記のようにして、必要に応じてＤＩＴ、ＳＩＴが挿入されたＰＴＳは、例えば送受信部４ｄによって、ＩＥＥＥ１３９４データインターフェイスのフォーマットに従ったパケット化が施され、ＩＥＥＥ１３９４バス１１を介して、目的の機器（ノード）に対して送信されることになる。例えばこの場合であれば、記憶部５に送信されることになる。
そして、記憶部５においては、受信したＰＴＳを記憶するようにされる。つまり、デジタル衛星放送受信機１により受信したプログラムのデータを、ＴＳの一形式であるＰＴＳのフォーマットのまま記憶部５に保存しておくことが可能とされる。
【００２８】
また、本実施の形態のデジタル衛星放送受信機１では、ＩＥＥＥ１３９４通信部４を介して受信取得したＰＴＳのデータを、最終的にはＭＰＥＧデコーダ８を介してビデオ／オーディオデータとして出力することができる。つまり、本実施の形態の場合であれば、記憶部５に記憶されているＰＴＳの形式によるプログラムのデータを、ＩＥＥＥ１３９４通信部４を介して受信取得し、このデータをビデオ／オーディオデータとして出力可能とされる。
【００２９】
本実施の形態の場合、記憶部５にて読み出され、ＩＥＥＥ１３９４バス１１を介して伝送されてきたＰＴＳとしてのプログラムのデータは、ＩＥＥＥ１３９４通信部４における送受信部４ｄの機能によって受信されることになる。そして、このようにして受信取得したデータを、付加情報処理部９に対して転送するようにされる。
【００３０】
付加情報処理部９においては、上記のようにして転送されてきたＰＴＳを入力し、以下のような信号処理を実行する。なお、本実施の形態の付加情報処理部９の内部構成及びその動作については後に詳しく説明するので、ここでは、基本的な動作説明にとどめる。
【００３１】
例えばＩＥＥＥ１３９４通信部４を介して受信取得したＰＴＳを適正にビデオ／オーディオとして出力するためには、例えばシステムコントローラ１０がＰＴＳに挿入されている付加情報の内容に応じて、ＰＴＳのデータ処理のための各種制御処理を実行することが必要となる。つまり、デマルチプレクサ７における圧縮ビデオ／オーディオデータ（ＰＥＳ）の抽出などをはじめとする各種データ処理が適正に実行される必要があり、このようなデータ処理は、システムコントローラ１０が付加情報の内容を参照して適宜制御処理を実行することで行われるのである。
【００３２】
付加情報処理部９は、このようにしてシステムコントローラ１０がデータ処理制御を実行するのに必要とされる付加情報を、入力されたＰＴＳから抽出するようにされる。このため、付加情報処理部９では、入力されたＰＴＳをバイパスさせてスイッチ部６の端子Ｔ２として出力する信号経路と、入力されたＰＴＳを分岐して入力する付加情報抽出回路系とを有する。
【００３３】
ＩＥＥＥ１３９４通信部４を介して受信取得したＰＴＳを再生出力する場合には、スイッチ部６は、システムコントローラ１０の制御によって端子Ｔ３が端子Ｔ２に対して接続されるように切り換えが行われる。このため、付加情報処理部９を通過したＰＴＳは、スイッチ部６を介してデマルチプレクサ７に入力され、さらにＭＰＥＧデコーダ８に供給されることになる。
【００３４】
ここで、付加情報処理部９が抽出すべき付加情報としては、ＰＳＩデータであるところのＰＡＴ、ＰＭＴ、及びＴＳからＰＴＳに変換されたときに付加された付加情報であるＳＩＴを抽出する。また、ＳＩＴと同様にＰＴＳへの変換時において必要に応じて挿入されたＤＩＴについても抽出を行う。
【００３５】
なお、上記各付加情報（ＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴ）を抽出するのにあたっては、セクションの構造によって抽出を行うようにされる。つまり、ＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴなどの各付加情報は、周知のように、Transport Stream Packetの構造からみると、ＴＳパケット単位で伝送されるのであるが、この付加情報を格納するＴＳパケットは、ヘッダと、これに続くペイロードであるセクションとから成る構造を有している。そして、付加情報処理部９においては、受信取得したパケットからこのペイロードとしてのセクションの構造を抜き出すようにして、付加情報の抽出を行うようにされる。
【００３６】
このようにして抽出された各付加情報は、例えばシステムコントローラ１０が読み込みを行ってその内容を参照するようにされる。そして、その内容に応じて必要なデータ処理のための制御処理を実行するようにされる。
例えば、ＰＡＴ、ＰＭＴ、ＳＩＴなどの付加情報に基づいては、デマルチプレクサ７におけるフィルタ条件を設定することなどが行われる。また、ＤＩＴは、後述するようにしてＰＴＳにおいて情報内容の不連続性が生じたことを示す情報なのであるが、このＤＩＴが取得されたときには、システムコントローラ１０は、ＰＴＳにおける不連続性の発生に対応した所要のデータ処理を実行するようにされる。
【００３７】
２．付加情報のデータ構造
２−１．トランスポート・パケット・ヘッダ
そして、本実施の形態としては、上記のようにしてＩＥＥＥ１３９４データインターフェイス（ＩＥＥＥ１３９４通信部４）によって入力されたＰＴＳから、付加情報として、ＰＡＴ、ＰＭＴ、ＳＩＴ、及びＤＩＴを抽出して所要の処理を実行する付加情報処理部９としての構成に特徴を有する。
そこで、付加情報処理部９の内部構成を説明するのに先立って、この付加情報処理部９においてＰＴＳから抽出されるべき付加情報であるところの、ＰＡＴ、ＰＭＴ、ＳＩＴ、及びＤＩＴについて説明を行っておくこととする。
【００３８】
ところで、上記各付加情報は、ＰＴＳに挿入されるのにあたって、トランスポート・ストリーム・パケット（ＴＳパケット）としての構造によりパケット化され伝送されることになっている。
ＴＳパケットは１８８バイトの固定サイズであるものとされており、先頭に配置される４バイトのトランスポート・パケット・ヘッダと、残る１８４バイトのペイロードとしてのアダプテーションフィールド又はセクションから成るものとされている。そして、ＴＳパケットが付加情報を伝送する場合には、前述もしたように、トランスポート・パケット・ヘッダに続いてセクションが配置されてＴＳパケットを形成することになる。
【００３９】
そこで先ず、このトランスポート・パケット・ヘッダの構造について、図３を参照して説明しておくこととする。
図３によって示されるように、トランスポート・パケット・ヘッダ(Transport Packet Header)は、先頭位置から順に、
sync_byte(8bit)
transport_error_indicator(1bit)
payload_unit_start_indication(1bit)
transport_priority(1bit)
PID(13bit)
transport_scrambling_control(2bit)
adaptation_field_control(2bit)
continuity_counter(4bit)
の各領域が配置されて形成される。
【００４０】
sync_byte(8bit)には固有の同期パターンとして、例えば、0x47が格納される。
transport_error_indicator(1bit)は、ＴＳのエラーの有無を示すのであるが、通常は‘0'を格納してエラーが無いことを示す。
payload_unit_start_indication(1bit)は、現パケットがテーブル及びＰＥＳの最初のパケットであるか否かを示すものであり、テーブル及びＰＥＳの最初のパケットであれば、‘1’を格納し、それ以外の場合には‘0'を格納する。
transport_priority(1bit)は、現パケットについてのプライオリティ（優先度）を示す情報が格納される。
【００４１】
また、PID(13bit)は、現パケットの種類を識別するためのパケットＩＤが格納される。つまり、PIDによって現パケットが格納するペイロードの種類が識別される。ちなみに、ペイロードがＰＡＴであれば、PID＝0x0000となる。また、ＰＭＴのPIDには、ＰＡＴにより指定された値が格納される。また、ＤＩＴは0X001E、ＳＩＴは0X001Fであるとして規定されている。
【００４２】
transport_scrambling_control(2bit)については、スクランブル処理をほどこさない場合には‘00’を格納し、施す場合には必要に応じて‘00’以外の値が格納される。
【００４３】
adaptation_field_control(2bit)は、トランスポート・パケット・ヘッダに続くペイロードの種別的内容を示す情報である。例えば‘10’が格納されれば、adaptation_field only,no payloadであることを示すようにされる。つまり、現ＴＳパケット・ヘッダに続けては、アダプテーション・フィールドのみが配置され、ペイロードは存在しないＴＳパケットであるということが示される。また、‘01’が格納されれば、no adaptation_field,payload onlyであることを示すようにされる。つまり、アダプテーション・フィールドは無く、セクションがペイロードとして配置されることを示すことになる。
【００４４】
continuity_counter(4bit)は、PIDに格納される値が同じとされるＴＳパケットの連続性を示すカウンターで、最初の値を指定がない限りは0x0とし、それ以降はパケットを挿入するに従って１つづつインクリメントされた値が格納される。そして、0xFの値を取った場合は、0x0にラップアラウンドするものとされている。これはシステム側がパケット挿入を行うごとに、自動カウントアップするべきものとされている。
【００４５】
２−２．ＰＡＴセクション
続いて、ＰＡＴについて説明する。
ＰＡＴは、「Program Association Table」の略称であり、放送側がＰＳＩの１つとして挿入する情報である。ＰＡＴは、キャリアごとに固有となる内容を有しており、各キャリア内のチャンネル情報と、各チャンネルの中身を表すＰＭＴのPIDとを記述している。前述もしたように、ＰＡＴについてはPID＝0x0000として規定されている。
【００４６】
図４は、ＰＡＴとしてのセクションの構造を示している。
この図に示すように、ＰＡＴセクション（program_association_section）としては、先頭のtable_id(8bit)から順次所要のデータ領域（記述子）が配置される。そして、その最後には、エラー検出符号である３２bitのＣＲＣ（CRC_32）が配置される。参考までに各記述子の内容は次のようになる。
【００４７】
table_id(8bit)  ：“0x00”を記述する。
section_syntax_indicator(1bit)  ：‘1’を記述する。
section_length(12bit)  ：ＰＡＴのセクション長を記述する。全セクション長の最大が1024byteのため、この値は最大1021とする。
transport_stream_id(16bit)  ：当該ＰＡＴが含まれるトランスポートストリームのtransport_stream_idを記述する。
version_number(5bit)  ：通常運用時は、内容の更新ごとに１ずつインクリメントした値を記述する。ただし、システム異常が発生した場合は、１以上のインクリメントした値を記述することが可能である。
current_next_indicator(1bit)  ：‘1’を記述する。
section_number(8bit)  ：“0x00”を記述する。
last_section_number(8bit)  ：“0x00”を記述する。
【００４８】
last_section_number(8bit)に続いては、[program_loop]が配置される。なお、この[program_loop]についての最大ループ回数は規定されてはいない。そして、が、[program_loop]においては、
program_number(16bit)
network_PID(8bit)
program_map_PID(8bit)
の各記述子が配置される。各記述子は次のようになる。
program_number(16bit)  ：対象サービスのservice idを記述する。また、program_number=“0x0000”（後続のPIDフィールドでNITのPID[“0x0010”]を記述する）のprogram_loopをＰＡＴ内に必ず一つのみ記述する。
network_PID(8bit)  ：ＮＩＴのPID（“0x0010”）を記述する。
program_map_PID(8bit)  ：ＰＭＴのPIDを記述する。同一のPID値に割り当て可能なプログラム（サービス）の最大数は４とする。
【００４９】
２−３．ＰＭＴセクション
ＰＭＴ(Program Map Table)は、放送側がＰＳＩの１つとして挿入する情報であるという点ではＰＡＴと同様である。ＰＭＴは、チャンネルごとの内容を有しており、例えば各チャンネルを構成するコンポーネント（ビデオ／オーディオ等）と、デスクランブルに必要とされるＥＣＭ(Encryption Control Message)パケットのPIDが記述される。また、ＰＭＴのPIDは、ＰＡＴによって指定されることになっている。
【００５０】
図５は、ＰＭＴセクション(prpgram map section)の構造を示している。
ＰＭＴセクションも、先頭にtable_id(8bit)が配置され、順次所要のデータ領域（記述子）が配置される。そして、最後には、３２bitのＣＲＣ（CRC_32）が配置される。各記述子の内容を以下に記す。
【００５１】
table_id(8bit)  ：“0x02”を記述する。
section_syntax_indicator(1bit)  ：‘1’を記述する。
section_length(12bit)  ：ＰＭＴのセクション長を記述する。全セクション長の最大が1024byteのため、この値は最大1021とする。
program_number(16bit)  ：当該サービスのservice idを記述する。
version_number(5bit)  ：通常運用時は、内容の更新ごとに１ずつインクリメントした値を記述する。ただし、システム異常が発生した場合は、１以上のインクリメントした値を記述することが可能である。
current_next_indicator(1bit)  ：‘1’を記述する。
section_number(8bit)  ：“0x00”を記述する。
last_section_number(8bit)  ：“0x00”を記述する。
PCR_PID  ：対象となるPCR(Program Clock Reference)パケットのPIDを記述する（対象となるPCRパケットは、階層変調伝送時では必ず低階層スロットにて送出することとされている）
program_info_length  ：1st_loopのループ長を記述する。ループ長の最大値はsection_lengthにより制限される。
【００５２】
そして、ループとしては、
[1st (prpgram) loop]
[2nd(ES)_loop]（最大ループ数＝32）
が配置される。そして、１つの[ES_loop]内には、以下の記述子が配置される。
stream_type  ：対象ＥＳ（Elementary Stream)のストリーム形式識別を記述する。
elementary_PID  ：関連するＥＳまたはペイロードを伝送するＴＳパケットのPIDを記述する。
ES_info_length  ：後に続くＥＳ descriptorの長さを記述する。
【００５３】
２−４．ＳＩＴセクション
ＳＩＴ(Selection Information Table：選択情報テーブル）は、ＰＴＳに特有の付加情報とされ、ＰＴＳによって伝送されるサービスとイベントを表す。また、ＳＩＴは、ＳＩ(Service Information)の１つとして扱われるが、ＰＴＳに挿入して伝送するＳＩのテーブルとしては、このＳＩＴとＤＩＴのみとすべきであることが規定されている。また、ＳＩＴのPIDは、0X001Fであるとして規定されている。
【００５４】
図６は、ＳＩＴセクション(selection_information_section)の構造を示している。このＳＩＴもまた、先頭のtable_id(8bit)から、順次所要のデータ領域（記述子）が配置され、最後に３２bitのＣＲＣ（CRC_32）が配置される。
各記述子の内容は以下のようになる。
【００５５】
table_id(8bit)  ：“0x7F”を記述する。
section_syntax_indicator(1bit)  ：‘1’を記述する。
section_length(12bit)  ：ＳＩＴセクション長を記述する。全セクション長が最大4096バイトを越えないために、セクション長は4093バイトを越えてはならない。
version_number(5bit)  ：通常運用時は、内容の更新ごとに１ずつインクリメントした値を記述する。ただし、システム異常が発生した場合は、１以上のインクリメントした値を記述することが可能である。また、current_next_indicatorが“1”の場合は、現在のテーブルのバージョン番号を示すようにされる。current_next_indicatorが“0”の場合は、次のテーブルのバージョン番号を示す。
current_next_indicator(1bit)  ：“1”の場合、テーブルが現在のテーブルであることを示し、“0”の場合は、送られるテーブルはまだ適応されず、次のテーブルとして使用されることを示す。
section_number(8bit)  ：セクションの番号を示すものとして、“0x00”を記述する。
last_section_number(8bit)  ：最終のセクション番号を示すものとして、“0x00”を記述する。
transmission_info_loop_length(12bit)  ：ＰＴＳの伝送パラメータを記述するDescriptorの全バイト数を記述する。
そして、transmission_info_loop内のDescriptorにおいては、以下の記述子が記述される。
service_id(16bit)  ：サービスの識別子を記述する。このservice_idは、トランスポートストリーム内の他のサービスからこのサービスを識別するためのラベルの役割をするものであり、ＰＭＴセクション内のprogram_numberに等しい。
running_status(3bit)  ：ARIB STD-B10に定義に従って、元のストリームのイベントの進行状態を表す数値を記述する。これは、元のストリームの現在のイベントの進行状態を示すものであり、元のストリームに現在のイベントが存在しなければ、状態は非実行中と考えられる。
service_loop_length(12bit)  ：以下に続くＰＴＳに含まれるサービスとイベントのＳＩ関連情報を含むDescriptor_loopの全バイト長を規定する。
【００５６】
２−５．ＤＩＴセクション
ＤＩＴ(Discontinuity Information Table)は、パーシャルＴＳに特有の付加情報（ＳＩテーブル）であり、パーシャルＴＳについて不連続性が発生したことを示すために、その不連続の発生位置（変化点）に挿入することが規定されている。ＤＩＴは、１ＴＳパケットにより伝送されることとなっており、PID＝0X001Eであるとして規定されている。
【００５７】
ＤＩＴセクション（discontinuity_information_section)の構造は図７に示すようになっており、先頭から順に、
table_id(8bit)
section_syntax_indicator(1bit)
reserved(1bit)
reserved(2bit)
section_length(12bit)
transition_flag(1bit)
reserved(7bit)
が配置され、残る領域にstuffing_byte として例えばALL‘１’が格納される。
【００５８】
そして、上記ＤＩＴセクション内においてpointer_field(8bit)には、0x00を格納することとしており、テーブルの最初のデータがpointer_fieldの直後から続くことを示すようにされる。
table_id(8bit)には、ＤＩＴセクションとしてのテーブルであることを示す0x7Eを格納する。
section_syntax_indicator(1bit)に対しては‘0’を格納することで、ＤＩＴセクションとしてのテーブルが、いわゆるShort sectionであることを示すようにされる。
また、section_lengthには0x001を格納し、このフィールドに続いては、table情報が１バイトであることを示すようにされる。
transition_flagは、ＤＩＴを挿入する所定の条件に応じて、‘0’,‘1’の何れかの値がセットされる。
【００５９】
なお、図３〜図７において、identifierとして示されるuimsbf、bslbf、及びrpchofは、それぞれビット列表記方法を示しており、uimsbfは、最上位ビットが先頭である符号無し整数(unsigned integer,most significant bit first)であることを意味する。また、bslbfは、左ビットが先頭であるビット列(bit string,left bit first)であることを示し、rpchofは、多項式係数の剰余で最上位階級が先頭(remainder polynominal coefficients,highest order first)であることを示す。
【００６０】
３．付加情報処理部
続いて、上記各付加情報（ＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴ）についてハードウェア的な処理を行う、付加情報処理部９の内部構成例及びその動作例について、図２を参照して説明する。ここで、本実施の形態の場合、図２に示す付加情報処理部９の構成は、ハードウェアにより形成されている。
ＩＥＥＥ１３９４通信部４から伝送され、付加情報処理部９に入力されたＰＴＳは、図２に示すようにして分岐され、一方はそのままバイパスされるようにしてスイッチ部６に対して出力される。そして、前述したように、スイッチ部６を介してデマルチプレクサ７→ＭＰＥＧデコーダ８を経由して処理されることで、最終的にビデオ／オーディオデータとして出力される。
【００６１】
分岐された他方のＰＴＳは、セクションフィルタ部２１に対して入力される。
前述もしたように、ＰＴＳは１８８バイトのＴＳパケット単位でシリアルに転送されてくる。そして、ＰＴＳに挿入される付加情報（ＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴ）は、それぞれ、１つのＴＳパケットに格納された状態、若しくは複数のＴＳパケットにより分割して格納された状態で転送されてくることになる。
【００６２】
セクションフィルタ部２１では、このようにして入力されるＴＳパケットの各PIDをはじめとする所要の情報を検出することで、ＴＳパケットのペイロードとしてＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴを形成するセクションデータが格納されている場合には、これを抜き出すようにされる。これにより、１つのＴＳパケットにより伝送された１つのセクションデータについては抽出を行ったことになる。また、例えば１つのセクションデータが複数のＴＳパケットにより分割されて伝送されてきている場合には、逐次ＴＳパケットから抜き出したセクションデータの部分を連結するようにして処理を行い、最終的には、１つのセクションとしてのデータ構造を形成するようにされる。このようにして、ＰＡＴ、ＰＭＴ、ＳＩＴ、ＤＩＴの付加情報についての抽出を行う。
【００６３】
そして、このようにして抽出された付加情報が、ＤＩＴ以外のＰＡＴ、ＰＭＴ、ＳＩＴの何れかである場合には、その付加情報をＣＲＣチェック部２２に対して転送する。この場合、ＣＲＣチェック部２２としては、ＰＡＴ、ＰＭＴ、ＳＩＴの各々に対応したＣＲＣチェック回路を備えているものとされ、セクションフィルタ部２１では、抽出された付加情報の種類に対応するＣＲＣチェック回路に転送を行うようにしている。
【００６４】
先に図４〜図６によって説明したように、ＰＡＴ、ＰＭＴ、ＳＩＴには、３２ビットのＣＲＣが付加されているのであるが、ＣＲＣチェック部２２では、入力されたＰＡＴ、ＰＭＴ、ＳＩＴについて、その構造内に挿入されているＣＲＣを利用してエラーチェックを行う。ここで、エラーチェック結果がＮＧであった場合には、その付加情報の内容には信頼性が無いということがいえるので、エラーチェック結果を行ったＰＡＴ、ＰＭＴ、ＳＩＴについては、そのまま破棄するようにされる。これによって、後述する比較器２５において、エラーを有するＰＡＴ、ＰＭＴ、ＳＩＴを比較対象として利用することが無くなるので、比較器２５における比較結果をより信頼性の高いものとすることができる。
【００６５】
そして、エラーチェック結果がＯＫであれば、そのエラーチェックを行ったＰＡＴ、ＰＭＴ、ＳＩＴをＲＡＭ２３に転送する。ＲＡＭ２３では、転送されてきたＰＡＴ、ＰＭＴ、ＳＩＴをそれぞれ所定領域に対して書き込んで保持する。そして、新たにセクションフィルタ部２１にてＰＡＴ、ＰＭＴ、ＳＩＴが取得される都度に、ＣＲＣチェック結果がＮＧでないかぎりは新たに取得されたＰＡＴ、ＰＭＴ、ＳＩＴへの書き換えが行われる。つまり、ＲＡＭ２３には、今回取得されたＰＡＴ、ＰＭＴ、ＳＩＴが常に一時的に保持されている状態にあることになる。
【００６６】
なお、ＰＡＴ、ＰＭＴ、及びＳＩＴのデータ長は、例えば記述子のループ回数によって可変となるのであるが、現状のこれらの付加情報の利用状況からすれば、ＲＡＭ２３における各付加情報の記憶領域としては、ＰＡＴ、ＰＭＴについては１Ｋバイト程度であり、また、ＳＩＴについては４Ｋバイト程度であれば充分であることが分かっている。つまり、ＲＡＭ２３のサイズとしては、計６Ｋバイト程度以上の小容量を有していればよいことになる。また、この点については、次に述べるレジスタ２４についても同様とされる。
【００６７】
レジスタ２４には、ＲＡＭ２３から転送されてきたＰＡＴ、ＰＭＴ、ＳＩＴを保持している。そして、ここに保持されたＰＡＴ、ＰＭＴ、ＳＩＴは、ホストインターフェイス２８からシステムバスを介して接続されるシステムコントローラ１０の要求によって、システムコントローラ１０に対して転送される。つまり、システムコントローラ１０は、レジスタ２４に格納されているＰＡＴ、ＰＭＴ、及びＳＩＴの情報を取り込んで、その内容を参照することでデータ処理のための制御を実行する。
【００６８】
従って、レジスタ２４に保持されるＰＡＴ、ＰＭＴ、ＳＩＴの内容は、常に現在のストリームのデータに対応した最新の内容であることが要求される。つまり、取得したＰＡＴ、ＰＭＴ、ＳＩＴの内容に更新があった場合には、これに応じて、レジスタ２４に保持されるＰＡＴ、ＰＭＴ、ＳＩＴも更新される必要があるが、これは次のようにして行われる。
【００６９】
本実施の形態の付加情報処理部９においては、ハードウェアによる比較器２５が設けられている。この比較器２５は、現在ＲＡＭ２３に書き込みが行われたＰＡＴ、ＰＭＴ、ＳＩＴと、現在レジスタ２４に保持されているＰＡＴ、ＰＭＴ、ＳＩＴとについて、それぞれ、そのデータ内容が一致しているか否かについての比較を行うようにされる。
【００７０】
上記した比較処理の動作はＰＡＴ、ＰＭＴ、ＳＩＴでほぼ同様となるのであるが、ここではＰＡＴの場合を例に挙げて説明する。
ある時点で、セクションフィルタ部２１にてＰＡＴが抽出され、これがＣＲＣチェックを経て、ＲＡＭ２３に書き込まれたとする。すると比較器２５では、このＲＡＭ２３に書き込まれたＰＡＴと、現在レジスタ２４に保持されているＰＡＴの内容が一致しているか否かについて比較を行う。
【００７１】
ところで、ＰＡＴの内容を比較するのにあたっては、データ内容が更新されるごとにインクリメントされるversion_numberのみを参照して比較するようにするのが一般的であるが、本実施の形態では、例えばＰＡＴとしてのセクション構造全体を比較するようにされる。version_numberは、５bitのデータであることから、ＰＡＴの内容に更新があって相違していたとしても、たまたま同じversion_numberとなる可能性を有している。そこで、本実施の形態のようにして、セクションとしての全データ構造を比較するようにすれば、誤りの無い比較結果を得ることが可能になるものである。
【００７２】
また、本発明としては、例えばversion_numberのみを比較対象とすることに依る誤検出の可能性を回避して、或る必要レベル以上の正確な検出結果が得られればよいのであるから、例えば、セクション構造内における所定の複数の記述子についての比較を行うようにしてもよいものとされる。例えば、ＰＡＴの場合であれば、更新に応じて必ず変更がある記述子として、version_numberと、［program_loop］内の記述内容を挙げることができるが、仮に実際の運用上、これらversion_numberと、［program_loop］のみの記述内容を比較しても正確な比較結果が得られるとされる場合には、これらの記述子のみについて比較を行うという構成を採ってもよいものである。この場合には、比較器２５にて比較処理すべきべきビット数が削減されるので、回路構成によっては、比較器２５としての回路規模を縮小することが可能である。
【００７３】
そして、比較器２５における比較結果として、ＰＡＴの内容が一致していた場合であるが、これは即ち、レジスタ２４に現在有効であるとして保持されているＰＡＴの内容と、今回取得してＲＡＭ２３に保持しているＰＡＴとの内容は同一であり、更新はされていないということを意味している。従ってこの場合には、ＲＡＭ２３に保持されているＰＡＴをレジスタ２４に転送して書き込むことは行わないようにして、これまでレジスタ２４に保持されていたＰＡＴをそのまま有効な情報として扱うようにされる。
これに対して、比較器２５によりＰＡＴの内容が一致していないという比較結果が得られた場合であるが、これは、今回取得してＲＡＭ２３に書き込みを行ったＰＡＴについてはその内容が更新されていたことを意味することになる。そこで、この場合には、ＲＡＭ２３に書き込みを行ったＰＡＴをレジスタ２４に対して転送する。これによって、レジスタ２４では新たに更新された内容のＰＡＴを保持することになる。
【００７４】
また、上記のようにして比較器２５において、データ内容が一致していないとの比較結果が得られた場合、比較器２５は、上記したレジスタ２４へのＰＡＴの書き換え動作と並行して、その検出結果に対応した信号をディテクタ２６に対して出力する。ディテクタ２５においては、この信号入力に基づいてＰＡＴが更新されたことを検出すると、割り込み要求信号を発生してコントロールレジスタ２７に対して出力する。
コントロールレジスタ２７では、入力した割り込み要求信号を、ホストインターフェイス２８を介してシステムコントローラ１０に送信するするようにされる。つまり、割り込み要求を通知する。
この割り込み要求を受信したシステムコントローラ１０は、例えば、割り込み処理として、レジスタ２４に格納されているＰＡＴの情報を取り込むようにされる。つまり、新たな内容のＰＡＴを取り込むものである。そして、以降は、この更新されたＰＡＴの内容に応じた適切なデータ処理が行われるように制御処理を実行することになる。
【００７５】
上記したＰＡＴについての処理は、ＰＭＴ及びＳＩＴについても同様に行われる。つまり、ＰＭＴ及びＳＩＴについても、新規に取得されてＲＡＭ２３に対して書き込みが行われるごとに、レジスタ２４にて保持されているＰＭＴ、ＳＩＴとの比較が行われる。また、この際において、ＰＭＴ及びＳＩＴについてもversion_numberのみを比較するのではなく、セクションの構造全体を比較することが比較器２５において行われるようにされる。
そして、データ内容が一致していないという比較結果が得られたのであれば、新たなＰＭＴ、ＳＩＴをレジスタ２４に対して書き込んで保持させ、システムコントローラ１０に対して割り込み要求を通知する。
【００７６】
上記説明は、セクションフィルタ部２１にて抽出された付加情報が、ＰＡＴ、ＰＭＴ、ＳＩＴの何れかとされる場合であるが、続いては、ＤＩＴが抽出された場合について説明する。
ＤＩＴは、前述もしたように、ＰＴＳの内容に不連続性があることを示す付加情報であることから、システムコントローラ１０は、このＤＩＴが検出された場合には、必ず、ＰＡＴ、ＰＭＴ、ＳＩＴなどの新規取得をはじめとする所要のデータ処理を実行する必要がある。従って、ＤＩＴが検出されたことを以て、システムコントローラ１０にその旨を通知する必要がある。そこで本実施の形態の付加情報処理部９では、ＤＩＴが抽出された場合にも、システムコントローラ１０に対して割り込み要求を通知するように構成される。これによって、システムコントローラ１０は、ＤＩＴの検出に対応した適切な処理を実行することが可能になるものである。
【００７７】
ここで、図７にて説明したように、ＤＩＴのセクション構造では、ＣＲＣは挿入されていない。そこで、セクションフィルタ部２１にてＤＩＴを抽出したときには、このＤＩＴをディテクタ２６に対して出力するようにされる。
ディテクタ２６では、入力された信号がＤＩＴであることを検出すると、ＤＩＴの検出に基づいた割り込み要求信号を発生してコントロールレジスタ２７に対して出力する。この場合、コントロールレジスタ２７ではＤＩＴの検出に基づく割り込み要求を、ホストインターフェイス２８を介してシステムコントローラ１０に通知することになる。なお、システムコントローラ１０が割り込み要求に応じて、検出されたＤＩＴを取り込むのにあたっては、例えばデマルチプレクサ７において行うようにされればよい。或いは、図２には示されていないが、セクションフィルタ部２１にて抽出されたＤＩＴを、例えばホストインターフェイス２８を介してシステムコントローラ１０に転送できるように、付加情報処理部９を構成することも考えられる。
【００７８】
ところで、従来においても、例えばＰＴＳから抽出したＰＡＴ、ＰＭＴ、及びＳＩＴなどの付加情報についての比較処理を行ってはいたのであるが、この比較処理は、システムコントローラ（ＣＰＵ）側においてソフトウェア処理によって行われていた。このため、ＰＴＳからＰＡＴ、ＰＭＴ、及びＳＩＴなどのセクションデータが取得されるごとに、ＣＰＵはその比較処理を実行しなければならず、ＣＰＵにおける処理負担が重いものとなっており、例えば充分な処理速度が得られないなどの問題を抱えていた。また、処理負担の軽減のために、例えばセクションの構造内のversion_number（５bit）のみを比較するようにしていたため、前述したような理由による誤検出が生じ得るという問題も有していた。
【００７９】
これに対して本実施の形態では、付加情報処理部９において、付加情報の内容の比較を行う比較器２５をハードウェアにより構成していることで、本実施の形態においてＣＰＵとして機能するシステムコントローラ１０においては、比較処理を実行させる必要を無くしている。そして、システムコントローラ１０が実行すべき処理としては、割り込み要求を受信したときにはじめて、レジスタ２４にアクセスして、新規な付加情報（ＰＡＴ、ＰＭＴ、ＳＩＴ）を取り込むだけでよいこととなる。これにより、システムコントローラ１０における処理負担は著しく軽減されることになる。
また、比較処理がハードウェアによって実行されることで、その処理は高速に行うことができるために、処理速度が問題となることもなくなる。また、処理速度が充分に高速であるから、version_numberのみの比較にとどまらず、セクションの構造全体を比較するように構成しても依然として充分な処理速度を得ることができ、より信頼性の高い比較結果を容易に得ることを可能にもしている。
【００８０】
４．処理動作
続いては、上記した付加情報処理部９の動作と連係したシステムコントローラ１０の処理動作について、図８及び図９を参照して説明する。
この場合においてシステムコントローラ１０が実行する処理ルーチンとしては、先ず図８のステップＳ１０１に示すように、付加情報処理部９に対してＰＡＴの取得を指示するようにしている。システムコントローラ１０は、例えばＰＡＴ取得の指示情報を付加情報処理部９内のホストインターフェイス２８に対して送信する。ホストインターフェイス２８では、このＰＡＴ取得の指示情報をセクションフィルタ部２１に対して出力する。これにより、セクションフィルタ部２１では、入力されたＰＴＳからＰＡＴを取得するように動作する。
【００８１】
セクションフィルタ部２１にてＰＡＴが取得されると、このＰＡＴは、ＣＲＣチェック部２２にてエラー検出が行われる。そこで、システムコントローラ１０は、次のステップＳ１０２において、ＣＲＣエラー検出結果としてエラーが検出されたか否かについて判別を行う。このためには、システムコントローラ１０は、例えばＣＲＣチェック部２２におけるチェック結果情報を、ホストインターフェイス２８を介して取り込むようにされる。
【００８２】
ここで、ステップＳ１０２においてエラー有りとの検出結果が得られていると判別された場合には、ステップＳ１０１に戻ることで、再度、ＰＡＴの取得を指示するようにされる。つまり、本実施の形態では、先ず、ＰＡＴを取得することから処理を開始するものとされる。これは次のような理由による。
【００８３】
ＰＡＴは、トランスポートストリーム内にストリームが含まれる場合には必ず送出するものとされ、かつ、１トランスポートストリームで送出するＰＡＴは１つであると規定されている。従って、ＰＡＴが取得されない以上はストリームが存在しないものとみなされる。このために、先ずはＰＡＴを取得することが必要となる。また、ＰＡＴにはＰＭＴのPIDが記述されているのであるから、ＰＭＴを抽出するためにも、先にＰＡＴを取得しておくことが必要となる。
【００８４】
そして、ステップＳ１０２おいてエラー無しとの検出結果が得られた場合には、ステップＳ１０３に進む。なお、このときにエラー無しとして検出されたＰＡＴは、初回取得のものとなるので、比較器２５による比較処理が行われることなく、ＲＡＭ２３からレジスタ２４に転送されて保持されることになる。
【００８５】
ステップＳ１０３においては、現在データ処理中にあるとされるストリームデータがＰＴＳであるか否かについての判別を行うようにしている。なお、ここでの判別処理は、例えば図１に示す構成であれば、ＩＥＥＥ１３９４通信部４を介して入力したストリームデータであればＰＴＳであると判別し、これ以外の、例えばフロントエンド部２からデスクランブラ３を介して入力されたストリームデータであればＰＴＳではない（ＴＳである）と判別するものとする。
そして、このステップＳ１０３においてＰＴＳではないとの否定の判別結果が得られた場合には、このルーチンを抜け、例えばステップＳ１０１から処理を再開する。これに対して、ＰＴＳであるとの肯定の判別結果が得られた場合には、ステップＳ１０４の処理に進む。
【００８６】
ところで、ステップＳ１０４の処理を実行する段階においては、ＩＥＥＥ１３９４通信部４から転送されてきたＰＴＳが付加情報処理部９に対して出力されている状態にある。そして、付加情報処理部９内のセクション処理部２１では、入力されたＴＳパケットについてのPID検出を行っている。つまり、入力されたＴＳパケットのPIDがＰＡＴ、ＰＭＴ、ＳＩＴの何れかを示すものであることを検出するようにされている。
そこで、ステップＳ１０４においては、このセクション処理部２１におけるPID検出結果を取り込んで、その検出されたPIDがＰＡＴ、ＰＭＴ、ＳＩＴのうちの何れを示すものであるのかを判別するようにしている。
【００８７】
ステップＳ１０４においてPIDがＰＡＴを示すものであることが判別された場合には、ステップＳ１０５に進む。
ステップＳ１０５においてはセクションフィルタ部２１に対してＰＡＴの取得を指示する。そして、次のステップＳ１０６において、取得されたＰＡＴについて、ＣＲＣチェック部２２によりエラー有りの検出結果が得られたか否かについて判別する。ここで、エラー有りの検出結果が得られた場合には、ステップＳ１０３の処理に戻る。そして、処理データがＰＴＳである限りは、ステップＳ１０４に進んで、付加情報の取得処理を再開するようにされる。また、ステップＳ１０６にてエラー有りの検出結果を得た場合には、ＣＲＣチェック部２２におけるハードウェア的な動作として、エラー有りの検出結果が出たＰＡＴについて破棄することを行う。
一方、ステップＳ１０６においてエラー無しの検出結果が得られた場合には、ステップＳ１０７に進む。また、この際には、ＣＲＣチェック部２２にてエラー無しとの検出結果を得たＰＡＴがＲＡＭ２３に転送されて書き込まれる。
【００８８】
ステップＳ１０７においては、データ内容に更新があったか否かについての判別が行われる。これは、図２にて説明したように、比較器２５における比較結果を利用して行われる。
つまり、比較器２５においては、前述もしたように、ＲＡＭ２３に格納された今回取得のＰＡＴと、レジスタ２４に現在の有効データとして格納されているＰＡＴとの内容比較を行うようにされるのであるが、この比較結果として、一致していないとの結果が得られた場合には、システムコントローラ１０に対して割り込み要求が通知されるようになっている。そこで、上記ステップＳ１０７の処理としては、この割り込み要求の受信の有無によって判別を行うようにすればよい。
【００８９】
ステップＳ１０７において、割り込み要求が受信されないとして否定結果を得た場合には、先のステップＳ１０６にて肯定結果が得られた場合と同様にして、ステップＳ１０３の処理に再度戻ることになる。
これに対してステップＳ１０７にて割り込み要求が受信されたとして肯定結果が得られた場合には、ステップＳ１０８に進む。
【００９０】
ステップＳ１０８においては、受信した割り込み要求に応じて、割り込み処理を開始するものとされる。そして、その割り込み処理として、次のステップＳ１０９の処理として示すように、ＰＡＴ対応処理を実行する。
【００９１】
上記ステップＳ１０９によるＰＡＴ対応処理としては、例えば次のような処理を実行する。
このステップＳ１０９の処理に至った段階では、比較器２５において、それまでレジスタ２４に保持されていたＰＡＴと、今回取得されてＲＡＭ２３に保持されているＰＡＴとの内容に不一致があったことが検出されている。つまり、今回取得したＰＡＴの内容が更新されており、そしてレジスタ２４には、この更新されたＰＡＴがＲＡＭ２３から転送されて書き込まれ、保持されている状態にあるものとされる。
そこで、システムコントローラ１０は、このレジスタ２４に保持されているＰＡＴを、ホストインターフェイス２８を介して読み込みを行うようにされる。ＰＡＴは、前述もしたように、ＰＭＴを伝送するＴＳパケットのPIDを指定している。そこで、システムコントローラ１０は、読み込みを行ったＰＡＴの内容に基づいて、以降において抽出指定すべきＰＭＴのPIDについての再設定を行う。
この場合には、ステップＳ１０９としてのＰＡＴ対応処理を終了すると、ステップＳ１０３の処理に戻るようにされている。
【００９２】
また、先のステップＳ１０４において、PIDがＳＩＴを示すものであることが判別された場合には、ステップＳ１１０に進む。
ステップＳ１１０においてはセクションフィルタ部２１に対してＳＩＴの取得を指示する。そして、次のステップＳ１１１において、取得されたＳＩＴについてエラー有りのＣＲＣ検出結果が得られたか否かについて判別する。
ステップＳ１１１において、エラー有りの検出結果が得られたのであれば、ステップＳ１０３の処理に戻る（この際においてもエラー有りと検出されたＳＩＴは破棄される）。
これに対して、ステップＳ１１１においてエラー無しの検出結果が得られた場合には、ステップＳ１１２に進む。この際に、ＣＲＣチェック部２２にてエラー無しとの検出結果を得たＳＩＴはＲＡＭ２３に転送されて書き込まれる。
【００９３】
ステップＳ１１２においては、今回取得したＳＩＴがはじめて取得したものであるか否かについて判別しており、これがはじめて取得したものであるとして肯定の判別結果が得られた場合には、ステップＳ１１３の処理を経ることなくステップＳ１１４に進む。これに対して、今回の取得ははじめてではないとして否定結果が得られた場合にはステップＳ１１３の処理を行う。
【００９４】
ステップＳ１１３では、ＳＩＴのデータ内容に更新があったか否かについての判別が行われる。これもまた、先のステップＳ１０７の場合と同様に、比較器２５における比較結果に応じた割り込み要求の受信の有無によって判別を行うようにされる。
【００９５】
ステップＳ１１３において否定結果を得た場合には、先のステップＳ１０７にて否定結果が得られた場合と同様にして、ステップＳ１０３の処理に再度戻るが、ステップＳ１１３にて割り込み要求が受信されたとして肯定結果が得られた場合には、ステップＳ１１４に進む。
【００９６】
ステップＳ１１４では、受信した割り込み要求に応じて、割り込み処理を開始するものとされ、次のステップＳ１１５において、その割り込み処理としてＳＩＴ対応処理を次のように実行する。
ＳＩＴは、ＰＴＳ特有のＳＩであって、ＰＴＳに含まれているサービス（チャンネル番号、チャンネル名、チャンネル内容等）とイベント（プログラム（番組名）、番組開始時刻、あらすじ、ジャンル）を表す。そして、ステップＳ１１５の処理に至った段階においては、新たな内容に更新されたＳＩＴがレジスタ２４に保持されている状態にある。そこでシステムコントローラ１０は、このレジスタ２４に保持されているＳＩＴの読み込みを行い、この読み込んだＳＩＴを参照して、新規なサービス及びイベントの情報を設定して保持するようにされる。
このステップＳ１１５のＳＩＴ対応処理が終了した場合には、例えばステップＳ１０１の処理から再開するようにされる。
【００９７】
また、PID判別を行っているステップＳ１０４において、PIDがＰＭＴを示すものであることが判別された場合には、ステップＳ１１６に進むことになる。
ステップＳ１１６〜ステップＳ１２１までの処理は、上述したステップＳ１１０〜ステップＳ１１５までの処理に準じている。つまり、ステップＳ１１６〜ステップＳ１２１の処理は、先に説明したステップＳ１１０〜ステップＳ１１５と同様の処理を、ＰＭＴを対象として行うものである。
【００９８】
但し、ＰＭＴのPIDは、ＰＡＴにより指定されるので、ステップＳ１１６におけるＰＭＴ取得指示にあたっては、システムコントローラ１０は、既に取得したＰＡＴの内容に基づいて、セクションフィルタ部２１にてＰＭＴとして抽出すべきPIDを指定するようにされる。
また、ステップＳ１２１におけるＰＭＴ対応処理としては、レジスタ２４に対して新規に保持されたＰＭＴの読み込みを行い、このＰＭＴに記述されているstream_type、elementary_PIDなどに基づいて、ＥＳのストリーム形式、及びＥＳまたはペイロードを伝送するＴＳパケットのPIDなどの情報を更新するようにして設定することを行う。つまり、現在データ処理を行っているとされるＰＴＳについて、プログラムを構成する各符号化信号を伝送するＴＳパケットのPIDの情報が、例えばシステムコントローラ１０内のＲＡＭに保持されるものである。
【００９９】
そして、この場合には、ステップＳ１２２において、デマルチプレクサ７におけるフィルタ条件を設定する。つまり、先のステップＳ１２１のＰＭＴ処理によっては、ＰＴＳのプログラムを構成する各符号化信号を伝送するＴＳパケットのPIDの情報が保持されているので、このPIDを利用して、デマルチプレクサ７において、必要とされる圧縮ビデオ／オーディオデータであるところのＰＥＳが抽出されるようにして、フィルタ条件を設定するようにされる。これにより、以降においては、変更されたＰＭＴの内容に応じて適切にデマルチプレクサ７におけるデータ処理が実行される。
【０１００】
上記図８に示した処理は、付加情報処理部９において、ＰＡＴ、ＰＭＴ又はＳＩＴを取得する場合に対応したシステムコントローラ１０の処理であったが、ＤＩＴの取得に対応したシステムコントローラ１０の処理動作は、例えば図９に示すものとなる。
この場合は、先ずステップＳの処理によってセクションフィルタ部２１に対してＤＩＴの取得を指示する。ここで、前述もしたように、このＤＩＴにはＣＲＣは付加されていない。このため、ＤＩＴが取得されると、エラー検出を行うことなく、その時点で割り込み要求がシステムコントローラ１０に対して送出されることになる。システムコントローラ１０は、ステップＳ２０２において割り込み要求を受信して割り込み処理を開始するものとされる。
【０１０１】
この場合の割り込み処理としては、ステップＳ２０３〜Ｓ２０５の処理が該当する。ステップＳ２０３では、ＤＩＴセクション内に挿入されているtransition_flag(1bit)を参照して、その値が‘0’であるか否かについて判別する。
【０１０２】
ここで、transition_flagは、ＤＩＴの挿入条件に応じて‘0’,‘1’の何れかの値がセットされるように規定されているが、実際の適用にあっては、ＰＣＲの連続性の有無に依存して‘0’,‘1’の何れの値とするのかが決定される。
そして、パーシャルＴＳがＰＣＲを含むすべての内容が変更されるようにして不連続性が生じるとされるＤＩＴ挿入条件ではtransition_flagについて‘0’がセットされることとなっている。これに対して、ＰＣＲについては連続性が保たれたうえで、パーシャルＴＳについて不連続性が生じるとされるＤＩＴ挿入条件では‘1’がセットされることとなっている。
【０１０３】
なお、ＰＣＲ(Program Clock Reference)は、ビデオ／オーディオの同期再生の基準となる時刻情報であり、本実施の形態のデジタル衛星放送受信機１の場合であれば、例えばデマルチプレクサ７においてＴＳから抽出分離して再生するように構成することが可能である。
【０１０４】
そして、ステップＳ２０３においてtransition_flag＝0であるか否かを判別した結果として否定結果が得られた場合にはステップＳ２０４に進むことになる。この場合には、ＰＴＳにおけるＤＩＴの挿入位置の前後においてＰＣＲの連続性が保たれているので、ＰＣＲ連続処理を実行する。つまり、取得されるＰＣＲに基づいて、ＤＩＴの挿入位置の前後にかけて連続的にビデオ／オーディオの同期再生が行われるように、ＭＰＥＧデコーダ８に対する制御を実行する。
これに対して、ステップＳ２０３においてtransition_flag＝1であるとして、ステップＳ２０３にて否定結果が得られた場合には、ＤＩＴの挿入位置の前後で、ＰＣＲが連続性を有していないことになる。そこでこの場合には、ＰＣＲ不連続処理を実行する。つまり、ＤＩＴの挿入位置より後ろにて抽出されたＰＣＲに基づいて、ビデオ／オーディオの再同期が行われるようにしてＭＰＥＧデコーダ９に対する制御を実行する。
【０１０５】
上記ステップＳ２０４又はＳ２０５の処理を終了したとされると、システムコントローラ１０は、ステップＳ２０６に進むことになる。ステップＳ２０６は、例えば先に図８に示したＰＡＴ、ＰＭＴ、ＳＩＴの取得に対応した処理を実行するものとされる。
【０１０６】
なお、本発明としてはこれまで説明した実施の形態としての構成に限定されるものではなく、適宜変更が可能とされる。
例えば上記実施の形態においては、本発明のデータ処理装置をデジタル衛星放送受信機に適用した場合を例に挙げているが、これ以外にも、例えばデジタルデータを記録再生することができるような記録再生装置などにおいて、パーシャルＴＳの形式のデータをＩＥＥＥ１３９４データインターフェイスにより伝送するような場合に適用可能である。また、データ処理装置が処理すべきデータについても、デジタル衛星放送の規格に従ったストリームデータ以外の規格によるデータとされて構わない。また、ＩＥＥＥ１３９４以外のデータインターフェイスフォーマットによりストリームデータを伝送するような場合において、所要の付加情報についての抽出処理を行うような場合に対しても適用が可能とされる。
【０１０７】
【発明の効果】
以上説明したように本発明は、ストリームデータ（ＰＴＳ）から抽出した付加情報（ＰＡＴ、ＰＭＴ、ＳＩＴ）について、例えば更新の有無についての判定のために、過去に取得した付加情報内容と今回取得した付加情報を比較するのにあたり、この比較処理をハードウェアによって行うようにしている。そして、この比較結果として更新があったとされるときには、データ処理を制御する制御手段に対して通知を行うようにされる。
これによって、システムコントローラ（ＣＰＵ）がソフトウェア処理によって比較処理を行う必要はなくなる。そしてＣＰＵは、比較結果に基づいた通知を受信して対応処理を行いさえすればよいことになる。従って、ＣＰＵの処理負担は著しく軽減されることになる。また、比較処理はハードウェアによって高速に実行されるので、処理速度が低下するという問題も解消されることになる。
【０１０８】
また本発明では、例えば従来のようにして、数ビット程度のバージョン情報のみを比較対象とするのではなく、付加情報として有効なデータ構造全体、若しくはその構造内における所定の複数の情報（記述子）の内容について比較するように構成して、より正確な比較結果が得られるようにされる。
例えば、付加情報として有効なデータ構造全体を比較するとすれば、比較的多くのビット数を処理することになるが、本発明では、比較処理がハードウェアによって高速に実行されるのであるから、このように多くのビットを処理するようにしても、充分に高速な処理速度が得られるものである。
【０１０９】
また、本発明としては、今回取得した付加情報について行ったエラー検出結果に基づいて、比較処理の比較対象として有効か無効であるのかを決定するようにしている。これによっては、例えばエラーのある誤った付加情報を比較対象から外すことができるので、より信頼性の高い比較結果が得られることになる。
【０１１０】
さらに本発明においては、付加情報としてストリームデータに不連続性が発生したことを示すＤＩＴ（不連続情報）も抽出取得して、このＤＩＴが取得された場合にもＣＰＵに対して通知を行うようにされる。これにより、ストリームデータの不連続性の検出に対応して行うべき動作に関しても、ＣＰＵの処理負担を軽減することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態としてのデータ処理装置を備えるデジタル衛星放送受信機の構成例を示すブロック図である。
【図２】本実施の形態の付加情報処理部の内部構成例を示すブロック図である。
【図３】ＤＩＴにおけるＴＳパケット・ヘッダの構造を示すテーブル図である。
【図４】ＰＡＴセクションの構造を示すテーブル図である。
【図５】ＰＭＴセクションの構造を示すテーブル図である。
【図６】ＳＩＴセクションの構造を示すテーブル図である。
【図７】ＤＩＴセクションの構造を示すテーブル図である。
【図８】付加情報処理部におけるＰＡＴ、ＰＭＴ、及びＳＩＴの取得に対応したシステムコントローラの処理動作を示すフローチャートである。
【図９】付加情報処理部におけるＤＩＴの取得に対応したシステムコントローラの処理動作を示すフローチャートである。
【符号の説明】
１  デジタル衛星放送受信機、２  フロントエンド部、３  デスクランブラ、４  ＩＥＥＥ１３９４通信部、４ａ  フィルタ部、４ｂ  ＤＩＴ挿入処理部、４ｃ  ＳＩＴ挿入処理部、４ｄ  送受信部、５  記憶部、６  スイッチ部、７  デマルチプレクサ、８  ＭＰＥＧデコーダ、９  付加情報処理部、１０  システムコントローラ、１１  ＩＥＥＥ１３９４バス、１２  パラボラアンテナ、２１  セクション処理部、２２  ＣＲＣチェック部、２３  ＲＡＭ、２４  レジスタ、２５  比較器、２６  ディテクタ、２７  コントロールレジスタ、２８  ホストインターフェイス
【図１】
0004576758.tif 000002
【図２】
0004576758.tif 000003
【図３】
0004576758.tif 000004
【図４】
0004576758.tif 000005
【図５】
0004576758.tif 000006
【図６】
0004576758.tif 000007
【図７】
0004576758.tif 000008
【図８】
0004576758.tif 000009
【図９】
0004576758.tif 000010