(57)【特許請求の範囲】
【請求項１】
複数のデータブロックがパケット化されて入力されたパケット列から、各上記データブロックを取り出すデータブロック取り出し手段と、
取り出された上記各データブロックを構成するデータを順次蓄積する蓄積手段と、
上記各データブロックを構成する最後の上記データの蓄積が行われるごとに、上記蓄積手段における、上記最後のデータの蓄積位置に対応する境界ポインタを更新して保持する蓄積制御手段と、
を備え、
上記蓄積制御手段は、
さらに、各上記データの蓄積が行われるごとに、上記蓄積手段における、上記各データの蓄積位置に対応する書き込みポインタを更新して保持するとともに、
蓄積される上記データが、上記各データブロックを構成する最後の上記データである場合に、上記境界ポインタを上記書き込みポインタに対応する値に更新し、
上記各データブロックが蓄積される際に不正なデータブロックであることが検出された場合に、上記書き込みポインタを上記境界ポインタに対応する値に更新し、
上記書き込みポインタを上記境界ポインタに対応する値に更新した後、上記不正なデータブロックの直前の上記データブロックに続けて、上記不正なデータブロックが検出されたことを示す情報を上記蓄積手段に蓄積させるように構成されていることを特徴とするパケットデータ蓄積装置。
【請求項２】
請求項１のパケットデータ蓄積装置であって、
上記蓄積制御手段は、上記蓄積手段における、上記各データブロックを構成する上記データの前後の少なくとも何れか一方に、上記各データブロックの先頭または末尾を示す情報を蓄積させるように構成されたことを特徴とするパケットデータ蓄積装置。
【請求項３】
請求項１および請求項２のうち何れか１項のパケットデータ蓄積装置であって、
上記蓄積制御手段は、それぞれ上記各データブロックの種類に対応した上記境界ポインタを保持するとともに、上記蓄積手段を上記各データブロックの種類に応じた領域に区分し、上記各データブロックを構成するデータをそれぞれのデータブロックの種類に応じた上記領域に蓄積させるように構成されたことを特徴とするパケットデータ蓄積装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケット化されて入力されたデータを蓄積するパケットデータ蓄積装置に関し、特に、映像や音声等の複数の種類のデータが多重されて送信されたパケットを受信して所望の種類のデータを選択的に蓄積した後に再生装置等に出力する受信装置などに関するものである。
【０００２】
【従来の技術】
近年、ディジタルデータによって映像データや音声データ、その他のデータが伝送されるディジタル放送等が普及しつつある。この種のデータ伝送においては、例えばＭＰＥＧシステム規格が適用され、それぞれ複数のＰＥＳパケットまたはテーブルデータ等の、データブロックから成る映像データ（Ｖｉｄｅｏ）や音声データ（Ａｕｄｉｏ）、ＳＩデータ等からトランスポートストリームパケット（ＴＳパケット）が生成され、生成されたＴＳパケットが多重化されて、トランスポートストリームとして伝送される。
【０００３】
伝送されたトランスポートストリームを受信する受信装置では、例えば特開平７−２９７８５５号公報に記載されているように、受信したトランスポートストリームのＴＳパケットから、元のＰＥＳパケット等のデータブロックを生成し、一旦バッファに蓄積した後に読み出して、映像表示装置等に出力したり装置の動作を制御するために用いたりするようになっている。
【０００４】
ここで、バッファに蓄積されたデータの読み出しは、データブロック区切りで行われる必要がある。そこで、従来のパケットデータ蓄積装置では、読み出しの際に、まずデータブロックの先頭部分を読み出して得られるデータブロックのサイズと、データブロックの先頭が蓄積されている領域のアドレスとを加算して、データブロックの末尾が蓄積されている領域のアドレスを算出した後に、そのアドレスまでの読み出しを行うようになっている。
【０００５】
また、別の装置としては、データブロックの蓄積時に、別途、各データブロックが蓄積される領域のアドレス等を受信履歴などとして保存し、読み出し時に各データブロックごとの受信履歴を解析することにより、データブロック区切りで読み出し得るようにした装置も知られている。
【０００６】
また、従来のパケットデータ蓄積装置においては、データブロックにデータエラーがあった場合には、そのまま、エラーがない場合と同様に蓄積され、読み出しの際に、エラー処理を行って、そのデータブロックを破棄するようになっている。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記従来のパケットデータ蓄積装置では、データブロック区切りで読み出しを行うために上記のような演算処理等を行う必要があるうえ、データブロックの末尾までの蓄積が完了していない場合の読み出しを防止するためには、算出されたデータブロックの末尾の位置と、実際に蓄積されたデータの末尾の位置とを比較しながら読み出しを制御する必要があるために、読み出し処理が複雑なものとなり、装置の構成も複雑になるという問題点を有していた。
【０００８】
また、受信履歴を保存するように構成された装置においても、やはり、読み出し時に受信履歴の解析を行う必要があるとともに、書き込み時にも受信履歴を生成する処理を行う必要があるうえ、受信履歴を保存するための記憶容量を必要とするという問題も生じる。
【０００９】
さらに、データエラーがある場合にも、読み出し時に、読み出し処理やその後のデコード処理等を行っている途中でエラー処理を行う必要があるために、やはり処理や装置の複雑化を招くうえ、エラーのあるデータブロックも一旦蓄積することになるので、記憶容量が無駄に使用されるという問題点も有していた。
【００１０】
前記の問題に鑑み、本発明は、データブロック区切りでの読み出しやデータエラーに対する処理を容易に行い得るようにして、処理や装置の構成の簡素化を図ることができるとともに、必要な記憶容量の低減も可能にすることを課題とする。
【００１３】
前記の課題を解決するために、請求項１の発明が講じた解決手段は、
複数のデータブロックがパケット化されて入力されたパケット列から、各上記データブロックを取り出すデータブロック取り出し手段と、
取り出された上記各データブロックを構成するデータを順次蓄積する蓄積手段と、
上記各データブロックを構成する最後の上記データの蓄積が行われるごとに、上記蓄積手段における、上記最後のデータの蓄積位置に対応する境界ポインタを更新して保持する蓄積制御手段と、
を備え、
上記蓄積制御手段は、
さらに、各上記データの蓄積が行われるごとに、上記蓄積手段における、上記各データの蓄積位置に対応する書き込みポインタを更新して保持するとともに、
蓄積される上記データが、上記各データブロックを構成する最後の上記データである場合に、上記境界ポインタを上記書き込みポインタに対応する値に更新し、
上記各データブロックが蓄積される際に不正なデータブロックであることが検出された場合に、上記書き込みポインタを上記境界ポインタに対応する値に更新し、
上記書き込みポインタを上記境界ポインタに対応する値に更新した後、上記不正なデータブロックの直前の上記データブロックに続けて、上記不正なデータブロックが検出されたことを示す情報を上記蓄積手段に蓄積させるように構成されていることを特徴とする。
【００１４】
請求項１の発明によると、蓄積手段における境界ポインタに応じた位置までの読み出しを行えば、蓄積手段に蓄積された最後のデータブロックの最後のデータまでを読み出すことになるので、データブロック区切りでの読み出しを容易に行うことができる。また、蓄積が完了していないデータブロックが読み出されることも確実に防止される。ここで、蓄積手段における上記境界ポインタによって示される位置は、例えば最後に蓄積されたデータブロックの最後のデータの位置でもよいし、その次の位置、すなわち、次にデータが蓄積される位置などでもよく、上記最後のデータの位置と一定の対応関係のある位置であればよい。
しかも、境界ポインタを上記のような書き込みポインタに対応する値にすることによって、容易に境界ポインタの更新を行うことができる。ここで、上記境界ポインタと書き込みポインタとの対応関係は、一致する関係であれば、代入処理によって最も簡単に更新することができるが、これに限らず、それぞれのポインタが用いられる処理に適した一定の対応関係を有するように更新されるようになっていればよい。例えば境界ポインタの値が書き込みポインタをデクリメントした値になるようにすることにより、書き込みポインタによって、次にデータを書き込む位置を示す一方、境界ポインタによって、読み出し得る最後のデータの位置を示すようにすることができる。
また、上記のように書き込みポインタが更新された後、次のデータブロックは、上記不正なデータブロックが蓄積されていた領域に重ね書きされることになるので、不正なデータブロックを容易に破棄されたものとすることができる。
また、上記不正なデータブロックが検出されたことを示す情報によって、読み出しの際に、不正なデータブロックの破棄が行われたことを容易に検知することができる。
【００１９】
また、請求項２の発明は、
請求項１のパケットデータ蓄積装置であって、
上記蓄積制御手段は、上記蓄積手段における、上記各データブロックを構成する上記データの前後の少なくとも何れか一方に、上記各データブロックの先頭または末尾を示す情報を蓄積させるように構成されたことを特徴とする。
【００２０】
請求項２の発明によると、各データブロックの先頭または末尾を示す情報を検出しながら読み出しを行うことにより、データブロック単位での読み出しを容易に行うことができる。
【００２１】
また、請求項３の発明は、
請求項１および請求項２のうち何れか１項のパケットデータ蓄積装置であって、
上記蓄積制御手段は、それぞれ上記各データブロックの種類に対応した上記境界ポインタを保持するとともに、上記蓄積手段を上記各データブロックの種類に応じた領域に区分し、上記各データブロックを構成するデータをそれぞれのデータブロックの種類に応じた上記領域に蓄積させるように構成されたことを特徴とする。
【００２２】
請求項３の発明によると、複数種類のデータブロックについて、それぞれ並行して、上記のような書き込みや読み出し処理を行わせることができる。
【００２３】
【発明の実施の形態】
以下、本発明の実施の形態に係るパケットデータ蓄積装置の例として、ＭＰＥＧシステム規格に準拠したディジタル放送を受信し、受信されたパケットを一旦蓄積して表示装置などに出力するディジタル放送受信機について説明する。
【００２４】
まず、この受信機で受信されるトランスポートストリームパケット（ＴＳパケット）について説明する。
【００２５】
ディジタル放送では、例えば図１（ａ）〜（ｃ）に示すように、映像データや、音声データ、その他のサービス情報（ＳＩデータ）が、固定長（１８８バイト）のＴＳパケットによって構成されたトランスポートストリームとして伝送される。上記ＴＳパケットは、パケットヘッダ（ＰＨ）と伝送すべきデータ（ペイロード等）とから成り、パケットヘッダには、伝送すべきデータの種類を示す識別番号（ＰＩＤ）が含まれている。具体的には、例えば図１（ａ）に示す映像データ（Ｖｉｄｅｏ）や音声データ（Ａｕｄｉｏ）のように複数のＰＥＳパケット、すなわち、映像データの場合はＰ２ａ、Ｐ２ｂ…、音声データの場合はＰ１ａ、Ｐ１ｂ…などのデータブロックから成るデータや、２種類のＳＩデータ（ＳＩ−１、ＳＩ−２）のように複数のテーブルデータ、すなわちＴ１ａ、Ｔ１ｂ…やＴ２ａ、Ｔ２ｂ…などのデータブロックから成るデータは、図１（ｂ）に示すようにそれぞれ固定長のＴＳパケットに分割、結合された後、図１（ｃ）に示すように複数種類のＴＳパケットが時分割で多重化されて、トランスポートストリームとして伝送される。ここで、上記データブロックは、ＴＳパケット化される際には適宜分割または結合されるが、後述するように受信後の処理においては、各データブロック単位で取り扱われる。
【００２６】
次に、上記のようなトランスポートストリームを受信し、所定の映像データ等を取り出して一旦蓄積した後に表示装置などに出力するディジタル放送受信機の構成について説明する。
【００２７】
図２は、ディジタル放送受信機２００の構成を示すブロック図である。同図に示すように、ディジタル放送受信機２００は、放送を選局するチューナー２０１と、ディジタル復調と誤り訂正とを行うディジタル復調回路２０２と、ディジタル復調回路２０２から入力されたトランスポートストリームから所望の映像データ等を抽出するデマルチプレクサ２１４と、デマルチプレクサ２１４から出力された映像データ等をデコードして図示しない表示装置等に出力するオーディオビデオデコード回路２１２と、デコードされる際に映像データ等を一旦蓄積するＡＶメモリ２１５と、デマルチプレクサ２１４によって抽出された映像データ等を一旦蓄積するとともに受信機の動作を制御するためのデータ等を保持するメモリ２１１と、受信機全体の動作の制御等を行うＣＰＵ２１３とを備えている。
【００２８】
上記デマルチプレクサ２１４は、ＰＩＤ抽出回路２０３、ＰＩＤテーブル２０４、ＰＩＤ比較回路２０５、パケット選別回路２０６、フォーマット解析回路２０７、データ蓄積制御回路２０８、セクションデータ選別回路２０９およびセクションテーブル２１０を備えて構成されている。
【００２９】
ＰＩＤ抽出回路２０３は、ディジタル復調回路２０２から出力されたトランスポートストリームの各ＴＳパケットからＰＩＤを取り出すようになっている。
【００３０】
ＰＩＤテーブル２０４は、あらかじめ、受信すべきデータを示すＰＩＤの値がエントリ番号と対応させてＣＰＵ２１３により設定されている。
【００３１】
ＰＩＤ比較回路２０５は、ＰＩＤ抽出回路２０３により取り出されたＰＩＤと、ＰＩＤテーブル２０４に登録されているＰＩＤとを比較して、一致するＰＩＤがＰＩＤテーブル２０４に登録されているかを検査し、比較結果（一致検出信号）をパケット選別回路２０６に出力するとともに、ＰＩＤが一致した場合に、そのＰＩＤに対応した一致ＰＩＤエントリ番号をデータ蓄積制御回路２０８に出力するようになっている。
【００３２】
パケット選別回路２０６は、ＰＩＤ比較回路２０５によるＰＩＤの比較結果が「一致」であった場合に、ＰＩＤ抽出回路２０３から入力されたＴＳパケットをフォーマット解析回路２０７に出力するようになっている。また、ＰＩＤの比較結果が「不一致」であったに場合は、ＰＩＤ抽出回路２０３から入力されたＴＳパケットは出力されずに破棄される。
【００３３】
フォーマット解析回路２０７は、パケット選別回路２０６から出力されたＴＳパケットが映像データや音声データについてのものである場合には、ＰＥＳパケットを取り出してデータ蓄積制御回路２０８に出力する一方、ＳＩデータについてのものである場合には、テーブルデータを取り出してセクションデータ選別回路２０９に出力するようになっている。
【００３４】
セクションデータ選別回路２０９は、フォーマット解析回路２０７から出力されたテーブルデータの先頭１６バイトが、セクションテーブル２１０にあらかじめ設定されている受信すべきデータの候補（テーブルデータの先頭１６バイトと比較して、受信するかどうかを判定するための複数のデータ列）と一致するかどうかを検査し、一致する場合に、そのテーブルデータをデータ蓄積制御回路２０８に出力するようになっている。
【００３５】
データ蓄積制御回路２０８は、上記フォーマット解析回路２０７から出力されたＰＥＳパケット、およびセクションデータ選別回路２０９から出力されたテーブルデータをメモリ２１１に一旦蓄積させた後、所定のタイミングで、１以上のデータブロック単位で読み出してオーディオビデオデコード回路２１２に出力するようになている。より詳しくは、図３に示すように、ＴＳパケットのＰＩＤによって示されるデータの種類に応じてメモリ２１１の記憶領域を区分けし、ＰＩＤ比較回路２０５から出力される一致ＰＩＤエントリ番号に応じた蓄積領域に、ＰＥＳパケットまたはテーブルデータを書き込むようになっている。
【００３６】
上記ＰＥＳパケット等のデータの書き込みや読み出しは、データ蓄積制御回路２０８の内部（またはメモリ２１１等）に各データの種類ごとに保持される書き込みポインタ（ＷＰ）、読出しポインタ（ＲＰ）、蓄積領域の開始位置を示す蓄積領域開始ポインタ（ＳＰ）、蓄積領域の終了位置を示す蓄積領域終了ポインタ（ＥＰ）、および全てのデータの蓄積が完了したデータブロックの終端位置に応じた境界ポインタ（ＢＰ）に基づいて行われるようになっている。すなわち、各データの種類に応じたメモリ２１１の蓄積領域における、書き込み、読み出しポインタ（ＷＰ、ＲＰ）に応じた位置に対して書き込み、読み出しが行われるとともにこれらのポインタがインクリメントされ、また、これらのポインタが蓄積領域終了ポインタ（ＥＰ）に等しくなると蓄積領域開始ポインタ（ＳＰ）と同じ値に更新されて、上記蓄積領域がリングバッファとして用いられるようになっている。なお、上記書き込み、読み出しポインタ（ＷＰ、ＲＰ）のインクリメントはデータの書き込み、読み出しの前後何れに行うようにしてもよいが、ここでは書き込み、読み出しの後に行われる（すなわち、書き込み、読み出しポインタ（ＷＰ、ＲＰ）は、次に書き込み、または読み出しをすべき位置を示す）として説明する。また、上記読み出しの際には、境界ポインタ（ＢＰ）が参照されることにより、蓄積が完了していないデータブロックのデータが読み出されることが防止されるようになっている。
【００３７】
以下、図１（ｃ）に示すようなトランスポートストリームが受信されたときのメモリ２１１へのデータの書き込み、読み出し制御と各ポインタとの関係について、ＳＩデータＳＩ−１が蓄積される場合の例を、図４に基づいて、より具体的に説明する。
【００３８】
まず、初期状態として、書き込みポインタ（ＷＰ）、読み出しポインタ（ＲＰ）、および境界ポインタ（ＢＰ）が何れも蓄積領域開始ポインタ（ＳＰ）と等しい状態で受信が開始されるとする。図１（ｃ）に示すトランスポートストリームが受信されて、各ＴＳパケットが順次ＰＩＤ抽出回路２０３に入力されると、２つ目のＴＳパケット（ＳＩデータＳＩ−１におけるテーブルデータＴ１ａの一部である部分テーブルデータＴ１ａ−１を含むＴＳパケット）がＰＩＤ抽出回路２０３に入力されたとき、ＰＩＤ抽出回路２０３は上記ＴＳパケットのパケットヘッダに含まれる識別番号（ＰＩＤ）“ＳＩ−１”を抽出してＰＩＤ比較回路２０５に出力する。ＰＩＤ比較回路２０５は、上記ＰＩＤ“ＳＩ−１”と、ＰＩＤテーブル２０４にあらかじめ設定されている各ＰＩＤとを比較して、ＰＩＤテーブル２０４のエントリ０に設定されているＰＩＤ“ＳＩ−１”と一致することを検出すると、一致検出信号をパケット選別回路２０６に出力するとともに、一致エントリ番号０をデータ蓄積制御回路２０８に出力する。
【００３９】
パケット選別回路２０６は、上記一致検出信号に基づいて、ＰＩＤ抽出回路２０３から入力されたＴＳパケットをフォーマット解析回路２０７に出力し、フォーマット解析回路２０７は、入力されたＴＳパケットから部分テーブルデータＴ１ａ−１を抽出して、セクションデータ選別回路２０９に出力する。セクションデータ選別回路２０９は、セクションテーブル２１０の設定内容に基づいて、上記部分テーブルデータＴ１ａ−１が受信すべきデータの候補と一致するかどうかを検査して、一致すると判定すると、その部分テーブルデータＴ１ａ−１をデータ蓄積制御回路２０８に出力する。
【００４０】
そこで、データ蓄積制御回路２０８は、前記ＰＩＤ比較回路２０５から出力された一致エントリ番号０によって示されるメモリ２１１のＳＩ−１蓄積領域に上記部分テーブルデータＴ１ａ−１を蓄積する。より詳しくは、図４（ａ）に示すように、テーブルデータの先頭を示す先頭情報（ＳＬ）および部分テーブルデータＴ１ａ−１を構成する各データを、書き込みポインタ（ＲＰ）によって示される位置に順次書き込みながら、書き込みポインタ（ＲＰ）をインクリメントする。この時点では、テーブルデータＴ１ａ−１の書き込みは完了していないので、境界ポインタ（ＢＰ）は更新されず蓄積領域開始ポインタ（ＳＰ）と等しいままになる。
【００４１】
次に、図１（ｃ）に示すトランスポートストリームの８つ目のＴＳパケット（ＳＩデータＳＩ−１におけるテーブルデータＴ１ａの残りである部分テーブルデータＴ１ａ−２を含むＴＳパケット）がＰＩＤ抽出回路２０３に入力されると、部分テーブルデータＴ１ａ−２が、上記と同様にして、図４（ｂ）に示すようにメモリ２１１に書き込まれる。そして、部分テーブルデータＴ１ａ−２の最後のデータが書き込まれると、テーブルデータＴ１ａを構成する全てのデータが蓄積されたことになるので、さらにテーブルデータの末尾を示す末尾情報（ＥＬ）が書き込まれることにより、データ蓄積領域内に完結したテーブルデータＴ１ａが蓄積されることになる。そこで、境界ポインタ（ＢＰ）が、上記末尾情報（ＥＬ）が書き込まれた後にインクリメントされた書き込みポインタ（ＷＰ）と同じ値に更新される。これにより、１つの完結したデータブロックであるテーブルデータＴ１ａがデータ蓄積領域に書き込まれたことが示され、境界ポインタ（ＢＰ）によって示される位置の１つ手前の位置を読み出す位置の上限とすることで、テーブルデータ（データブロック）区切りでの読み出しが容易に可能となる。
【００４２】
以下、同様にして、トランスポートストリームの１２番目のＴＳパケットに基づいて、図４（ｃ）に示すように先頭情報（ＳＬ）および部分テーブルデータＴ１ｂ−１がメモリ２１１に蓄積され、さらに、１８番目のＴＳパケットに基づいて、図４（ｄ）に示すように部分テーブルデータＴ１ｂ−２、および末尾情報（ＥＬ）が蓄積されるとともに、境界ポインタ（ＢＰ）が、上記末尾情報（ＥＬ）が書き込まれた位置の次の位置を示す値に更新される。また、さらにその後のテーブルデータＴ１ｃについての蓄積も、同図に示すように同様に行われる。
【００４３】
また、上記のようにしてメモリ２１１に蓄積されたデータが例えばソフトウェア（ＣＰＵ２１３等）によって読み出される際には、読み出しポインタ（ＲＰ）によって示される位置から、境界ポインタ（ＢＰ）によって示される位置よりも前の何れかの末尾情報（ＥＬ）が蓄積されている位置までのデータが、順次インクリメントされる読み出しポインタ（ＲＰ）に基づいて読み出される。すなわち、上記のように境界ポインタ（ＢＰ）が設定されるとともに、末尾情報（ＥＬ）が各テーブルデータに続いて蓄積されることにより、読み出されたデータの内容を解釈したりすることなく、読み出しポインタ（ＲＰ）と境界ポインタ（ＢＰ）との比較と、読み出されたデータが末尾情報（ＥＬ）であるかどうかのチェックとを行うだけで、テーブルデータ単位での読み出しを容易に行うことができる。しかも、先頭情報（ＳＬ）や末尾情報（ＥＬ）としては例えば１〜２バイト程度のデータを用いることができるので、先頭や末尾のアドレス（通常、１アドレスあたり４バイト程度必要）を別途、受信履歴などとして保存して管理するのに比べて、全体の蓄積データ量を少なく抑えることができるうえ、受信履歴等を検索、参照したりする操作も必要としない。なお、上記のようにテーブルデータ単位で読み出すのではなく、境界ポインタ（ＢＰ）の位置までのテーブルデータについてまとめて読み出す場合には、上記読み出されたデータが末尾情報（ＥＬ）であるかどうかのチェックを行うことなく、上記読み出しポインタ（ＲＰ）と境界ポインタ（ＢＰ）との比較を行うだけでよい。また、常にそのようなまとめての読み出しを行うような場合には、先頭情報（ＳＬ）や末尾情報（ＥＬ）の書き込みも必ずしも行わなくてもよい。また、テーブルデータ単位で読み出し得るようにする場合でも、先頭情報（ＳＬ）または末尾情報（ＥＬ）の何れか一方だけを書き込むだけでもよい。
【００４４】
次に、受信時にエラーが発生して不正なデータが蓄積される際の動作として、例えば図５（ａ）に示すように、ＳＩデータＳＩ−１におけるテーブルデータＴ１ｃが蓄積されているときにエラーが発生（検出）された場合を例に挙げて説明する。ここで、上記エラーが発生した場合というのは、例えばデータ中に埋め込まれているエラー検出コードに基づいてデータエラーが検出された場合や、トランスポートストリームの伝送が途切れたことにより受信中のデータブロックの一部分についての処理が適切に行えない場合などのことである。
【００４５】
上記のように例えばテーブルデータＴ１ｃが蓄積されているときにエラーが発生すると、データ蓄積制御回路２０８によって、図５（ｂ）に示すように、書き込みポインタ（ＷＰ）が境界ポインタ（ＢＰ）と同じ値に更新される（戻される）。ここで、上記境界ポインタ（ＢＰ）の値は、書き込みが完了したテーブルデータＴ１ｂに続く末尾情報（ＥＬ）の次の位置、すなわち、上記エラーが発生したテーブルデータＴ１ｃの先頭情報（ＳＬ）が書き込まれている位置を示しているので、書き込みポインタ（ＷＰ）が同じ値に更新されることにより、続くテーブルデータＴ１ｄによってテーブルデータＴ１ｃが上書きされることになる。すなわち、不正なテーブルデータＴ１ｃは破棄されたことになり、無駄な蓄積が生じない。また、読み出しの際に、テーブルデータが欠落していることの処理は通常必要になるが、不正なテーブルデータを読み出すこと自体に対する対処などはする必要がなくなり、ソフトウェアによる処理の簡素化などを図ることができる。
【００４６】
また、本実施の形態のディジタル放送受信機２００では、読み出しの際に上記テーブルデータＴ１ｃの欠落に対する処理を容易にするために、エラーログが蓄積されるようになっている。すなわち、図５（ｃ）に示すように、テーブルデータＴ１ｃに続く末尾情報（ＥＬ）に続けて、エラーの発生を示すエラー情報（ＥｒｒＬｏｇ）が書き込まれ、書き込みポインタ（ＷＰ）および境界ポインタ（ＢＰ）は、ともに上記エラー情報（ＥｒｒｏｒＬｏｇ）が書き込まれた次の領域を示す値に更新される。そこで、次の先頭情報（ＳＬ）およびテーブルデータＴ１ｄは、上記エラー情報に続けて蓄積される。
【００４７】
上記のようなエラー情報（ＥｒｒｏｒＬｏｇ）は必ずしも必須のものではないが、これを設けることにより、読み出しの際のソフトウェアによる処理等において、テーブルデータと併せて読み出され、解釈されることによって、エラーが発生したことやそれに伴うデータの破棄が行われたことの検出を容易に行うことができる。
【００４８】
なお、上記ではデータブロックとしてのテーブルデータから成るＳＩデータについての蓄積の例を説明したが、ＰＥＳパケットから成る映像データ（Ｖｉｄｅｏ）や音声データ（Ａｕｄｉｏ）などの場合でも同様であり、それぞれのデータの種類に応じて区分されたメモリ２１１の各記憶領域に対して、それぞれ独立した各ポインタを用い、並行して上記のような蓄積を行わせることができる。
【００４９】
また、上記の例ではデータ蓄積制御回路２０８がメモリ２１１に対する書き込みを行い、ソフトウェア（ＣＰＵ２１３）が読み出しを行う例を示したが、これに限らず、例えばＰＥＳパケットをデータ蓄積制御回路２０８が読み出す場合でも、同様の動作により同じ効果が得られる。また、データ蓄積制御回路２０８等の動作もソフトウェアによって行われるようにしてもよい。
【００５０】
【発明の効果】
以上のように本発明によると、蓄積が完了したデータブロックの終端位置に応じた値の境界ポインタを保持させることにより、蓄積が完了したデータブロックだけを容易に読み出すことができる。また、受信中にデータエラーが発生した場合に、書き込みポインタを上記境界ポインタと同じ値に更新することにより、エラーが発生したデータの破棄を容易に行うことができる。
【図面の簡単な説明】
【図１】トランスポートストリームの例を示す説明図である。
【図２】本発明の実施の形態に係るパケットデータ蓄積装置であるディジタル放送受信機の構成を示すブロック図である。
【図３】同、要部の具体的な構成を示すブロック図である。
【図４】同、受信されたテーブルデータがメモリに蓄積される状態を示す説明図でる。
【図５】同、データエラーがある場合のメモリの蓄積状態を示す説明図でる。
【符号の説明】
２００      ディジタル放送受信機
２０１      チューナー
２０２      ディジタル復調回路
２０３      ＰＩＤ抽出回路
２０４      ＰＩＤテーブル
２０５      ＰＩＤ比較回路
２０６      パケット選別回路
２０７      フォーマット解析回路
２０８      データ蓄積制御回路
２０９      セクションデータ選別回路
２１０      セクションテーブル
２１１      メモリ
２１２      オーディオビデオデコード回路
２１３      ＣＰＵ
２１４      デマルチプレクサ
２１５      ＡＶメモリ
【図１】
0004005370.tif 000002
【図２】
0004005370.tif 000003
【図３】
0004005370.tif 000004
【図４】
0004005370.tif 000005
【図５】
0004005370.tif 000006