(57)【要約】【課題】ソフトウェアが扱う構造体データを直接アクセスできる構造体データアクセス回路、構造体データアクセスシステム、情報再生装置及び電子機器を提供する。【解決手段】構造体データアクセス回路５００は、外部モジュールから入力されるパラメータに基づいて、構造体データにアクセスするためのメモリアドレスを生成するメモリアドレス生成回路５０２と、外部モジュールからの要求に応じて、前記メモリアドレスに基づいて前記メモリにアクセスするためのインターフェース処理を行うメモリアクセスインターフェース回路５０４とを含む。メモリアドレス生成回路５０２が、メモリアクセスインターフェース回路５０４を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新する。【選択図】図２
2007148860.tif 000002
【特許請求の範囲】
【請求項１】
構造体データをメモリから読み出し、又は構造体データをメモリに書き込むための構造体データアクセス回路であって、
外部モジュールから入力されるパラメータに基づいて、前記構造体データにアクセスするためのメモリアドレスを生成するメモリアドレス生成回路と、
前記外部モジュールからの要求に応じて、前記メモリアドレスに基づいて前記メモリにアクセスするためのインターフェース処理を行うメモリアクセスインターフェース回路とを含み、
前記メモリアドレス生成回路が、
前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新することを特徴とする構造体データアクセス回路。
【請求項２】
請求項１において、
前記パラメータが、
前記構造体データにアクセスするための前記メモリの記憶領域の先頭アドレス、階層化された各階層の要素データが格納されるアドレスを特定するための第１及び第２のオフセット、及び階層数を含み、
前記メモリアドレス生成回路が、
前記階層数が０のときには、前記先頭アドレスに前記第１のオフセットを加算して前記メモリアドレスとして生成し、前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新し、
前記階層数が１のときには、前記先頭アドレスに前記第１のオフセットを加算したメモリアドレスに対応して読み出された読み出しデータと前記第２のオフセットを加算して前記メモリアドレスとして生成し、前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新することを特徴とする構造体データアクセス回路。
【請求項３】
請求項１又は２において、
前記パラメータが、
前記メモリにアクセスするデータのビット幅を含み、
前記メモリアドレス生成回路が、
前記ビット幅に基づいて、前記メモリアドレスの生成及び更新を行うことを特徴とする構造体アクセス回路。
【請求項４】
構造体データをメモリから読み出し、又は構造体データをメモリに書き込むための構造体データアクセスシステムであって、
前記構造体データが格納され、又は前記構造体データが書き込まれるメモリにアクセスするためのインターフェース処理を行うメモリインターフェース回路と、
各モジュールが前記メモリに対し非構造体データのアクセスを行うと共に、前記構造体データのアクセス要求を行う第１〜第Ｎのモジュールと、
前記メモリに対するアクセス要求を調停するアービタと、
前記アービタによって調停された１つのアクセス要求に基づいて前記メモリに対し構造体データのアクセスを行う請求項１乃至３のいずれか記載の構造体データアクセス回路とを含み、
前記アービタが、
前記第１〜第Ｎのモジュールからのアクセス要求と前記構造体データアクセス回路からのアクセス要求とを調停して１つのアクセス要求を選択し、
前記構造体データアクセス回路が、
前記第１〜第Ｎのモジュールによって共用されることを特徴とする構造体データアクセスシステム。
【請求項５】
請求項４において、
所与のプログラムを読み込んでソフトウェア処理する中央演算処理装置を含み、
前記アービタが、
前記第１〜第Ｎのモジュールからのアクセス要求と前記構造体データアクセス回路からのアクセス要求と前記中央演算処理装置から前記メモリに対するアクセス要求とを調停して１つのアクセス要求を選択し、
前記構造体データアクセス回路がアクセスする構造体データと前記中央演算処理装置がアクセスする構造体データとが同じ構造を有することを特徴とする構造体データアクセスシステム。
【請求項６】
映像データ及び音声データの少なくとも１つを再生するための情報再生装置であって、
映像データを生成するための第１のＴＳ（Transport Stream）パケット、音声データを生成するための第２のＴＳパケット、前記第１及び第２のＴＳパケット以外の第３のＴＳパケットを、トランスポートストリームから抽出する分離処理部と、
前記第１のＴＳパケットが格納される第１の記憶領域と、前記第２のＴＳパケットが格納される第２の記憶領域と、前記第３のＴＳパケットが格納される第３の記憶領域とを有するメモリと、
前記第１の記憶領域から読み出された前記第１のＴＳパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
前記第２の記憶領域から読み出された前記第２のＴＳパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記映像デコーダが、
前記映像デコード処理のうちの画面内予測処理を行う第１のモジュールと、
前記映像デコード処理のうちの動き補償処理を行う第２のモジュールと、
前記映像デコード処理のうちのデブロッキングフィルタ処理を行う第３のモジュールと、
前記映像デコード処理のうちのＣＡＶＬＣ（Context-based Adaptive Variable Length Coding）処理を行う第４のモジュールと、
前記第１〜第４のモジュールからの構造体データのアクセス要求を調停するアービタと、
前記アービタによって調停された１つのアクセス要求に基づいて前記メモリに対し構造体データのアクセスを行う請求項１乃至３のいずれか記載の構造体データアクセス回路とを含み、
前記映像デコーダが、前記第１の記憶領域から前記第１のＴＳパケットを、前記音声デコーダとは独立して読み出し、該第１のＴＳパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第２の記憶領域から前記第２のＴＳパケットを、前記映像デコーダとは独立して読み出し、該第２のＴＳパケットに基づいて前記音声デコード処理を行うことを特徴とする情報再生装置。
【請求項７】
請求項６記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含むことを特徴とする電子機器。
【請求項８】
チューナと、
前記チューナからのトランスポートストリームが供給される請求項６記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造体データアクセス回路、構造体データアクセスシステム、情報再生装置及び電子機器に関する。
【背景技術】
【０００２】
ソフトウェア開発において、各要素が変数である１又は複数の変数を組み合わせたものが階層化された構造体（構造体データ）の利用が欠かせない。ソフトウェア処理が扱うデータが複雑になるほど、構造体が利用されることが多くなる。
【０００３】
ところで、ソフトウェア処理の結果をハードウェア回路に引き渡す場合、ソフトウェア処理を実行する中央演算処理装置（Central Processing Unit：ＣＰＵ）が、その処理結果を例えばレジスタに設定し、該レジスタにハードウェア回路がアクセスすることで実現される。しかしながら、ハードウェア回路に引き渡すべきソフトウェア処理の処理結果の種類が多くなったりデータサイズが大きくなったりすればするほど、レジスタ回路の規模が増大し、その分ＣＰＵもまた各レジスタへの書き込む処理が必要となる。
【０００４】
そこで、ＣＰＵが構造体を扱う際に利用するメモリに対し、直接、ハードウェア回路がアクセスすることができれば、レジスタ数を削減でき、且つＣＰＵも各レジスタへの書き込み処理も不要にできる。この点、特許文献１には、複数のモジュールと１つの装置との間で構造体データが転送される構成が開示されている。
【特許文献１】特開平９−２２２９８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、１つの装置にアクセスする複数のモジュールそれぞれが構造体データを用意している。より具体的には、ＣＰＵが使用する構造体データとは別の構造を有するデータとして転送することで、ハードウェア回路に必要な情報を与えている。そのため、ハードウェア回路用のデータを格納するためのメモリと、該メモリにデータを転送する手段が必要となる。従って、ソフトウェアが使う構造体データを、ハードウェア回路が直接そのまま扱うことができることが望ましい。
【０００６】
また、各モジュールに構造体データを扱うインターフェース回路を設けると、構造体データを扱うシステムの規模の増大を招く。
【０００７】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、規模の削減を図り、ソフトウェアが扱う構造体データを直接アクセスできる構造体データアクセス回路、構造体データアクセスシステム、情報再生装置及び電子機器を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明は、
構造体データをメモリから読み出し、又は構造体データをメモリに書き込むための構造体データアクセス回路であって、
外部モジュールから入力されるパラメータに基づいて、前記構造体データにアクセスするためのメモリアドレスを生成するメモリアドレス生成回路と、
前記外部モジュールからの要求に応じて、前記メモリアドレスに基づいて前記メモリにアクセスするためのインターフェース処理を行うメモリアクセスインターフェース回路とを含み、
前記メモリアドレス生成回路が、
前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新する構造体データアクセス回路に関係する。
【０００９】
本発明によれば、ソフトウェアが使う構造体データを、そのままアクセスできるハードウェア回路としての構造体データを提供できるようになる。従って、ソフトウェアで構造体を扱う際に利用するメモリに対し、直接、ハードウェア回路がアクセスできるようになり、これまで必要としていたレジスタ数を不要にし、且つソフトウェアによるレジスタの書き込み処理を不要にできるという効果が得られるようになる。
【００１０】
また構造体データアクセス回路とソフトウェアが扱う構造体データを同じ構造にできるため、ソフトウェアの動作やハードウェアの動作を記述できるシステム記述言語での設計開発を容易化できるようになる。
【００１１】
また本発明に係る構造体データアクセス回路では、
前記パラメータが、
前記構造体データにアクセスするための前記メモリの記憶領域の先頭アドレス、階層化された各階層の要素データが格納されるアドレスを特定するための第１及び第２のオフセット、及び階層数を含み、
前記メモリアドレス生成回路が、
前記階層数が０のときには、前記先頭アドレスに前記第１のオフセットを加算して前記メモリアドレスとして生成し、前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新し、
前記階層数が１のときには、前記先頭アドレスに前記第１のオフセットを加算したメモリアドレスに対応して読み出された読み出しデータと前記第２のオフセットを加算して前記メモリアドレスとして生成し、前記メモリアクセスインターフェース回路を介して前記メモリからデータが読み出される毎に、前記メモリアドレスを更新することができる。
【００１２】
また本発明に係る構造体データアクセス回路では、
前記パラメータが、
前記メモリにアクセスするデータのビット幅を含み、
前記メモリアドレス生成回路が、
前記ビット幅に基づいて、前記メモリアドレスの生成及び更新を行うことができる。
【００１３】
上記のいずれかの発明によれば、パラメータによって種々の構造の構造体データへのアクセスをハードウェア回路としての構造体データアクセス回路が、ソフトウェア処理で扱う構造のままメモリにアクセスできるようになる。
【００１４】
また本発明は、
構造体データをメモリから読み出し、又は構造体データをメモリに書き込むための構造体データアクセスシステムであって、
前記構造体データが格納され、又は前記構造体データが書き込まれるメモリにアクセスするためのインターフェース処理を行うメモリインターフェース回路と、
各モジュールが前記メモリに対し非構造体データのアクセスを行うと共に、前記構造体データのアクセス要求を行う第１〜第Ｎのモジュールと、
前記メモリに対するアクセス要求を調停するアービタと、
前記アービタによって調停された１つのアクセス要求に基づいて前記メモリに対し構造体データのアクセスを行う上記のいずれか記載の構造体データアクセス回路とを含み、
前記アービタが、
前記第１〜第Ｎのモジュールからのアクセス要求と前記構造体データアクセス回路からのアクセス要求とを調停して１つのアクセス要求を選択し、
前記構造体データアクセス回路が、
前記第１〜第Ｎのモジュールによって共用される構造体データアクセスシステムに関係する。
【００１５】
本発明によれば、第１〜第Ｎのモジュールが構造体データアクセス回路を共用できる構成としたので、構造体データアクセスシステムの規模の増大を抑えることができる。
【００１６】
また本発明に係る構造体データアクセスシステムでは、
所与のプログラムを読み込んでソフトウェア処理する中央演算処理装置を含み、
前記アービタが、
前記第１〜第Ｎのモジュールからのアクセス要求と前記構造体データアクセス回路からのアクセス要求と前記中央演算処理装置から前記メモリに対するアクセス要求とを調停して１つのアクセス要求を選択し、
前記構造体データアクセス回路がアクセスする構造体データと前記中央演算処理装置がアクセスする構造体データとが同じ構造を有することができる。
【００１７】
本発明によれば、上記の効果に加えて、構造体データアクセス回路を介して第１〜第Ｎのモジュールがアクセスする構造体データとソフトウェア処理でアクセスする構造体データとを同じ構造にできるため、ソフトウェアの動作やハードウェアの動作を記述できるシステム記述言語での設計開発を容易化できるようになる。
【００１８】
また本発明は、
映像データ及び音声データの少なくとも１つを再生するための情報再生装置であって、
映像データを生成するための第１のＴＳ（Transport Stream）パケット、音声データを生成するための第２のＴＳパケット、前記第１及び第２のＴＳパケット以外の第３のＴＳパケットを、トランスポートストリームから抽出する分離処理部と、
前記第１のＴＳパケットが格納される第１の記憶領域と、前記第２のＴＳパケットが格納される第２の記憶領域と、前記第３のＴＳパケットが格納される第３の記憶領域とを有するメモリと、
前記第１の記憶領域から読み出された前記第１のＴＳパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
前記第２の記憶領域から読み出された前記第２のＴＳパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記映像デコーダが、
前記映像デコード処理のうちの画面内予測処理を行う第１のモジュールと、
前記映像デコード処理のうちの動き補償処理を行う第２のモジュールと、
前記映像デコード処理のうちのデブロッキングフィルタ処理を行う第３のモジュールと、
前記映像デコード処理のうちのＣＡＶＬＣ（Context-based Adaptive Variable Length Coding）処理を行う第４のモジュールと、
前記第１〜第４のモジュールからの構造体データのアクセス要求を調停するアービタと、
前記アービタによって調停された１つのアクセス要求に基づいて前記メモリに対し構造体データのアクセスを行う上記のいずれか記載の構造体データアクセス回路とを含み、
前記映像デコーダが、前記第１の記憶領域から前記第１のＴＳパケットを、前記音声デコーダとは独立して読み出し、該第１のＴＳパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第２の記憶領域から前記第２のＴＳパケットを、前記映像デコーダとは独立して読み出し、該第２のＴＳパケットに基づいて前記音声デコード処理を行う情報再生装置に関係する。
【００１９】
本発明によれば、規模の削減を図り、ソフトウェアが扱う構造体データを直接アクセスできる構造体データアクセス回路が適用された情報再生装置を提供できる。この結果、情報再生装置の回路規模を縮小でき、且つソフトウェアの動作やハードウェアの動作を記述できるシステム記述言語での設計開発を容易化できるようになる。
【００２０】
また本発明は、
上記記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含む電子機器に関係する。
【００２１】
また本発明は、
チューナと、
前記チューナからのトランスポートストリームが供給される上記記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含む電子機器に関係する。
【００２２】
本発明によれば、規模の削減を図り、ソフトウェアが扱う構造体データを直接アクセスできる構造体データアクセス回路を含む電子機器を提供できるようになる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
【００２４】
１．  構造体データアクセスシステム
図１に、本実施形態の構造体データアクセスシステムの構成例のブロック図を示す。
【００２５】
構造体データアクセスシステム４００は、構造体データアクセス回路５００、メモリ５２０を有し、構造体データをメモリ５２０から読み出し、又は構造体データをメモリ５２０に書き込むことができる。
【００２６】
そのため構造体データアクセスシステム４００は、更に、メモリインターフェース（interface：Ｉ／Ｆ）回路５３０、アービタ５４０、５４２、第１〜第Ｎ（Ｎは２以上の整数）のモジュール（機能モジュール）５５０−１〜５５０−Ｎ、ＣＰＵ（中央演算処理装置）５６０を含むことができる。
【００２７】
メモリＩ／Ｆ回路５３０は、メモリ５２０に接続され、アービタ５４０からの書き込み要求に対応したアドレスにより指定されたメモリ５２０の記憶領域に書き込みデータを書き込む処理を行う。またメモリＩ／Ｆ回路５３０は、アービタ５４０からの読み出し要求に対応したアドレスにより指定されたメモリ５２０の記憶領域からデータを読み出す処理を行う。即ち、メモリＩ／Ｆ回路５３０は、広義にはメモリにアクセスするためのインターフェース処理を行う。
【００２８】
アービタ５４０は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎからメモリ５２０に対するアクセス要求と構造体データアクセス回路５００からのアクセス要求とＣＰＵ５６０からのアクセス要求とを調停し、これらのアクセス要求の中から１つのアクセス要求を選択する。例えばアービタ５４０は、予め決められた優先順位に従って１つのアクセス要求を選択しても良いし、読み出し要求を書き込み要求に優先させたり、書き込み要求を読み出し要求に優先させたりして１つのアクセス要求を選択しても良い。なおアービタ５４０は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎからメモリ５２０に対するアクセス要求と構造体データアクセス回路５００からのアクセス要求とＣＰＵ５６０からのアクセス要求のうち、少なくとも２つのアクセス要求を調停できればよい。
【００２９】
アービタ５４０によって１つのアクセス要求が選択されると、該アクセス要求がメモリＩ／Ｆ回路５３０に供給される。メモリＩ／Ｆ回路５３０は、上述のようにアービタ５４０からのアクセス要求に対応した処理を行う。
【００３０】
第１〜第Ｎのモジュール５５０−１〜５５０−Ｎは、それぞれが独立した機能を果たす。第１〜第Ｎのモジュール５５０−１〜５５０−Ｎは、第１〜第Ｎのハードウェア処理を行い、各モジュールがメモリ５２０に対し非構造体データのアクセスを行うと共に、構造体データのアクセス要求を行う。各モジュールは、非構造体データのアクセス要求をアービタ５４０に対して出力し、構造体データのアクセス要求をアクセスパラメータと共に構造体データアクセス回路５００に出力する。
【００３１】
アービタ５４２は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎからのアクセス要求を調停し、選択した１つのアクセス要求と共に該アクセス要求に対応したアクセルパラメータを構造体データアクセス回路５００に出力する。
【００３２】
構造体データアクセス回路５００は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎからの構造体データのアクセス要求の中からアービタ５４２によって調停された１つのアクセス要求を受け付け、該アクセス要求に従ってアービタ５４０に対してメモリ５２０の構造体データのアクセス要求を行う。構造体データアクセス回路５００は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎの各モジュールからのアクセス要求と共に受け付けられるアクセスパラメータに基づいてメモリ５２０の構造体データに対するアクセス要求を行う。従って、構造体データアクセス回路５００は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎによって共用される。
【００３３】
ＣＰＵ５６０は、図示しないプログラムメモリに格納された所与のプログラムを読み出し、該プログラムに対応した処理を実行することでソフトウェア処理を行うことができる。そして、ＣＰＵ５６０は、ソフトウェア処理結果を構造体データとしてメモリ５２０に対して書き込んだり、メモリ５２０から構造体データを読み出したりできる。この際、ＣＰＵ５６０は、アービタ５４０に対してアクセス要求を行う。
【００３４】
従って、アービタ５４０は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎからのアクセス要求と構造体データアクセス回路５００からのアクセス要求とＣＰＵ５６０からメモリ５２０に対するアクセス要求とを調停して１つのアクセス要求を選択することができる。即ち、メモリ５２０に書き込まれたり、メモリ５２０から読み出されたりする構造体データは、構造体データアクセス回路５００を介して第１〜第Ｎのモジュール５５０−１〜５５０−ＮのみならずＣＰＵ５６０によってアクセスされるため、構造体データアクセス回路５００がアクセスする構造体データとＣＰＵ５６０がアクセスする構造体データとが同じ構造を有するということができる。
【００３５】
以上のように第１〜第Ｎのモジュール５５０−１〜５５０−Ｎが構造体データアクセス回路５００を共用できる構成としたので、構造体データアクセスシステム４００の規模の増大を抑えることができる。また構造体データアクセス回路５００を介して第１〜第Ｎのモジュール５５０−１〜５５０−Ｎがアクセスする構造体データとＣＰＵ５６０がアクセスする構造体データとを同じ構造にできるため、ソフトウェアの動作やハードウェアの動作を記述できるシステム記述言語での設計開発を容易化できるようになる。
【００３６】
２．  構造体データアクセス回路
図２に、図１の構造体データアクセス回路５００の構成例のブロック図を示す。
【００３７】
構造体データアクセス回路５００は、メモリアドレス生成回路５０２と、メモリアクセスＩ／Ｆ回路５０４とを含む。
【００３８】
メモリアドレス生成回路５０２は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎのうちアービタ５４２によって調停された１つのモジュール（外部モジュール）から入力されるアクセスパラメータ（パラメータ）に基づいて、構造体データにアクセスするためのメモリアドレス（書き込みアドレス又は読み出しアドレス）を生成する。
【００３９】
メモリアクセスＩ／Ｆ回路５０４は、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎのうちアービタ５４２によって調停された１つのモジュール（外部モジュール）からの要求に応じて、メモリアドレスに基づいてメモリ５２０にアクセスするためのインターフェース処理を行う。そして、メモリアドレス生成回路５０２は、メモリアクセスＩ／Ｆ回路５０４を介してメモリ５２０からデータが読み出される毎に、メモリアドレスを更新するようになっている。
【００４０】
より具体的には、構造体データアクセス回路５００は、タイミング発生回路５０６、パラメータレジスタ５０８、読み出しデータ生成回路５１０、読み出しデータバッファ５１２、書き込みデータバッファ５１４を含む。
【００４１】
タイミング発生回路５０６は、アービタ５４２によって調停された１つのアクセス要求req_strctに基づいて、アクセス承認ack_strctをアクセス要求元に返信すると共に、メモリ５２０にアクセスするタイミングを発生する。パラメータレジスタ５０８には、アービタ５４２によって調停された１つのアクセス要求に対応したアクセスパラメータが設定される。メモリアドレス生成回路５０２は、パラメータレジスタ５０８に設定されたアクセスパラメータに基づいてメモリアドレスを生成する。読み出しデータバッファ５１２には、メモリアクセスＩ／Ｆ回路５０４を介してメモリ５２０から読み出されたデータがバッファリングされる。読み出しデータ生成回路５１０は、パラメータレジスタ５０８に設定されたアクセスパラメータに応じて、読み出しデータバッファ５１２にバッファリングされたデータを組み立てる処理を行い、組み立て処理後のデータを読み出しデータrdata_strctとして出力する。書き込みデータバッファ５１４は、アービタ５４２によって調停された１つのアクセス要求に対応した書き込みデータwdata_strctをバッファリングし、メモリアクセスＩ／Ｆ回路５０４に出力する。
【００４２】
アクセスパラメータは、構造体データにアクセスするためのメモリ５２０の記憶領域の先頭アドレス、階層化された各階層の要素データが格納されるアドレスを特定するための第１及び第２のオフセット、及び階層数を含む。そして、メモリアドレス生成回路５０２は、階層数が０のときには、先頭アドレスに第１のオフセットを加算してメモリアドレスとして生成し、メモリアクセスインターフェース回路を介してメモリからデータが読み出される毎に、メモリアドレスを更新する。またメモリアドレス生成回路５０２は、階層数が１のときには、先頭アドレスに第１のオフセットを加算したメモリアドレスに対応して読み出された読み出しデータと第２のオフセットとを加算してメモリアドレスとして生成し、メモリアクセスインターフェース回路を介してメモリからデータが読み出される毎に、メモリアドレスを更新する。
【００４３】
図３に、アクセスパラメータの説明図を示す。
【００４４】
第１〜第Ｎのモジュール５５０−１〜５５０−Ｎは、構造体データアクセス回路５００により構造体データのアクセスを行う場合、アクセス要求と共に図３に示すアクセスパラメータを構造体データアクセス回路５００に出力する。
【００４５】
先頭アドレスパラメータadr_top[20:0]は、メモリ５２０から構造体データを読み出す領域の先頭アドレス、又はメモリ５２０に構造体データを書き込む領域の先頭アドレスを示す。オフセット値パラメータoffset0[15:0]は、１階層目の要素が記憶される先頭位置のオフセットを示す。オフセット値パラメータoffset1[15:0]は、２階層目の要素が記憶される先頭位置のオフセットを示す。オフセット値パラメータoffset2[15:0]は、３階層目の要素が記憶される先頭位置のオフセットを示す。
【００４６】
メモリアドレス生成回路５０２は、先頭アドレスパラメータadr_top[20:0]、オフセット値パラメータoffset0[15:0]、offset1[15:0]、offset2[15:0]に基づいてメモリアドレスを生成する。
【００４７】
ビット幅パラメータbit_width0[1:0]は、１階層目の要素のビット幅を示す。ビット幅パラメータbit_width0[1:0]が０のとき１階層目のビット幅が８であり、ビット幅パラメータbit_width0[1:0]が１のとき１階層目のビット幅が１６であり、ビット幅パラメータbit_width0[1:0]が２のとき１階層目のビット幅が３２であることを示す。
【００４８】
図４に、本実施形態の構造体データの説明図を示す。
【００４９】
先頭アドレスパラメータadr_top[20:0]は、メモリ５２０の記憶領域のうち例えば構造体データが記憶される領域の先頭アドレスを指定する。この先頭アドレスにオフセット値パラメータoffset0[1:0]で指定されたオフセット値を加算したアドレスに対応した記憶領域の記憶データが、メモリ５２０において２階層目のデータが記憶される領域の先頭アドレスとなる。
【００５０】
２階層目のデータが記憶される領域の先頭アドレスに、オフセット値パラメータoffset1[1:0]で指定されたオフセット値を加算したアドレスに対応した記憶領域の記憶データが、メモリ５２０において３階層目のデータが記憶される領域の先頭アドレスとなる。
【００５１】
３階層目のデータが記憶される領域の先頭アドレスに、オフセット値パラメータoffset2[1:0]で指定されたオフセット値を加算したアドレスに対応した記憶領域の記憶データが、目的とするデータである。
【００５２】
このように構造体データは、階層化された要素データ群であり、各階層の要素はアクセスパラメータに基づいてアクセス可能となっている。
【００５３】
図３に戻って説明を続ける。図３において、メモリアドレス生成回路５０２は、ビット幅パラメータbit_width0[1:0]に基づいてメモリアドレスを更新することができる。また読み出しデータ生成回路５１０は、ビット幅パラメータbit_width0[1:0]に基づいて読み出しデータの組み立て処理を行うことができる。
【００５４】
ビット幅パラメータbit_width1[1:0]は、２階層目の要素のビット幅を示す。ビット幅パラメータbit_width1[1:0]が０のとき２階層目のビット幅が８であり、ビット幅パラメータbit_width1[1:0]が１のとき２階層目のビット幅が１６であり、ビット幅パラメータbit_width1[1:0]が２のとき２階層目のビット幅が３２であることを示す。
【００５５】
メモリアドレス生成回路５０２は、ビット幅パラメータbit_width1[1:0]に基づいてメモリアドレスを更新することができる。また読み出しデータ生成回路５１０は、ビット幅パラメータbit_width1[1:0]に基づいて読み出しデータの組み立て処理を行うことができる。
【００５６】
ビット幅パラメータbit_width2[1:0]は、３階層目の要素のビット幅を示す。ビット幅パラメータbit_width2[1:0]が０のとき３階層目のビット幅が８であり、ビット幅パラメータbit_width2[1:0]が１のとき３階層目のビット幅が１６であり、ビット幅パラメータbit_width2[1:0]が２のとき３階層目のビット幅が３２であることを示す。
【００５７】
メモリアドレス生成回路５０２は、ビット幅パラメータbit_width2[1:0]に基づいてメモリアドレスを更新することができる。また読み出しデータ生成回路５１０は、ビット幅パラメータbit_width2[1:0]に基づいて読み出しデータの組み立て処理を行うことができる。
【００５８】
即ち、メモリアドレス生成回路５０２が、アクセスパラメータの１つであるビット幅に基づいて、メモリアドレスの生成及び更新を行う。
【００５９】
アクセス回数パラメータread_no[1:0]は、メモリ５２０からのアクセス回数を示す。即ち、アクセス回数パラメータread_no[1:0]は、構造体データの階層数を示す。アクセス回数パラメータread_no[1:0]が０のとき階層数が１であり、アクセス回数パラメータread_no[1:0]が１のとき階層数が２であり、アクセス回数パラメータread_no[1:0]が２のとき階層数が３であることを示す。
【００６０】
メモリアドレス生成回路５０２は、アクセス回数パラメータread_no[1:0]に基づいてメモリアドレスを更新することができる。また読み出しデータ生成回路５１０は、アクセス回数パラメータread_no[1:0]に基づいて読み出しデータの組み立て処理を行うことができる。
【００６１】
図５に、図２の構造体データアクセス回路５００の読み出し動作例のフロー図を示す。
【００６２】
まず、構造体データアクセス回路５００は、タイミング発生回路５０６において、アービタ５４２からアクセス要求req_strctが１になるまで待つ（ステップＳ１００：Ｎ）。アクセス要求req_strctが１になると（ステップＳ１００：Ｙ）、メモリアドレス生成回路５０２は、先頭アドレスパラメータadr_top[20:0]にその最下位ビットを揃えてオフセット値パラメータoffset0[15:0]を加算したアドレスを計算し、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０に記憶されるデータを読み出す処理を行う（ステップＳ１０１）。そして、構造体データアクセス回路５００は、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０から読み出したデータを、リードデータrdataに設定する。このとき、メモリ５２０から読み出されたデータは、読み出しデータバッファ５１２にバッファリングされる。
【００６３】
アクセス回数パラメータread_no[1:0]が０ではないとき（ステップＳ１０２：Ｙ）、読み出しデータrdataは構造体データの要素が記憶されるアドレスデータとなる。従って、メモリアドレス生成回路５０２は、リードデータrdataにその最下位ビットを揃えてオフセット値パラメータoffset1[15:0]を加算したアドレスを計算し、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０に記憶されるデータを読み出す処理を行う（ステップＳ１０３）。そして、構造体データアクセス回路５００は、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０から読み出したデータを、リードデータrdataに設定する。このとき、メモリ５２０から読み出されたデータは、読み出しデータバッファ５１２にバッファリングされる。
【００６４】
続いて、アクセス回数パラメータread_no[1:0]が１ではないとき（ステップＳ１０４：Ｙ）、読み出しデータrdataは構造体データの要素が記憶されるアドレスデータとなる。従って、メモリアドレス生成回路５０２は、リードデータrdataにその最下位ビットを揃えてオフセット値パラメータoffset2[15:0]を加算したアドレスを計算し、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０に記憶されるデータを読み出す処理を行う（ステップＳ１０５）。そして、構造体データアクセス回路５００は、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０から読み出したデータを、リードデータrdataに設定する。このとき、メモリ５２０から読み出されたデータは、読み出しデータバッファ５１２にバッファリングされる。
【００６５】
ステップＳ１０２においてアクセス回数パラメータread_no[1:0]が０であるとき（ステップＳ１０２：Ｎ）、ステップＳ１０４においてアクセス回数パラメータread_no[1:0]が１であるとき（ステップＳ１０４：Ｎ）、或いはステップＳ１０５の処理が終了した時点では、リードデータrdataは構造体データの要素データとなる。従って、読み出しデータ生成回路５１０は、読み出しデータバッファ５１２にバッファリングされたリードデータrdataを、ビット幅パラメータbit_width0[1:0]、bit_width1[1:0]、bit_width2[1:0]に合わせて、変換後の読み出しデータを生成する（ステップＳ１０６）。
【００６６】
その後、タイミング発生回路５０６は、アクセス承認ack_strctを１に設定してアクセス要求元にアクセスが完了した旨を通知する（ステップＳ１０７）。続いて、タイミング発生回路５０６は、アクセス要求元がアクセス承認ack_strctを１に設定したことに対応してアクセス要求req_strctを０に戻すまで待つ（ステップＳ１０８：Ｎ）。
【００６７】
ステップＳ１０８においてアクセス要求req_strctが０になったとき（ステップＳ１０８：Ｙ）、アクセス承認ack_strctを０に戻し（ステップＳ１０９）、ステップＳ１００に戻る。
【００６８】
図６に、図２の構造体データアクセス回路５００の書き込み動作例のフロー図を示す。
【００６９】
まず、構造体データアクセス回路５００は、タイミング発生回路５０６において、アービタ５４２からアクセス要求req_strctが１になるまで待つ（ステップＳ２００：Ｎ）。アクセス要求req_strctが１になると（ステップＳ２００：Ｙ）、アクセス回数パラメータread_no[1:0]が０か否かが判別される（ステップＳ２０１）。
【００７０】
アクセス回数パラメータread_no[1:0]が０ではないとき（ステップＳ２０１：Ｙ）、メモリアドレス生成回路５０２は、先頭アドレスパラメータadr_top[20:0]にその最下位ビットを揃えてオフセット値パラメータoffset0[15:0]を加算したアドレスを計算し、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応して、メモリ５２０に記憶されるデータを読み出す処理を行う（ステップＳ２０２）。そして、構造体データアクセス回路５００は、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０から読み出したデータを、リードデータrdataに設定する。このとき、メモリ５２０から読み出されたデータは、読み出しデータバッファ５１２にバッファリングされる。
【００７１】
続いて、アクセス回数パラメータread_no[1:0]が１ではないとき（ステップＳ２０３：Ｙ）、リードデータrdataは構造体データの要素を書き込むアドレスデータとなる。従って、メモリアドレス生成回路５０２は、リードデータrdataにその最下位ビットを揃えてオフセット値パラメータoffset2[15:0]を加算したアドレスを計算し、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０に記憶されるデータを読み出す処理を行う（ステップＳ２０４）。そして、構造体データアクセス回路５００は、メモリアクセスＩ／Ｆ回路５０４が該アドレスに対応してメモリ５２０から読み出したデータを、リードデータrdataに設定する。このとき、メモリ５２０から読み出されたデータは、読み出しデータバッファ５１２にバッファリングされる。
【００７２】
ステップＳ２０１においてアクセス回数パラメータread_no[1:0]が０であるとき（ステップＳ２０１：Ｎ）はadr_topが構造体データの要素データを書き込むべきアドレスデータとなる。ステップＳ２０３においてアクセス回数パラメータread_no[1:0]が１であるとき（ステップＳ１０４：Ｎ）、或いはステップＳ２０４の処理が終了した時点では、リードデータrdataは構造体データの要素データを書き込むべきアドレスデータとなる。従って、アクセス要求req_strctと同様にアクセス要求元が出力した書き込みデータwdata_strctを、ビット幅パラメータbit_width0[1:0]、bit_width1[1:0]、bit_width2[1:0]に合わせて書き込む（ステップＳ２０５）。このとき、書き込みデータwdata_strctは、書き込みデータバッファ５１４にバッファリングされた後に、メモリアクセスＩ／Ｆ回路５０４によってメモリ５２０に書き込まれる。
【００７３】
その後、タイミング発生回路５０６は、アクセス承認ack_strctを１に設定してアクセス要求元にアクセスが完了した旨を通知する（ステップＳ２０６）。続いて、タイミング発生回路５０６は、アクセス要求元がアクセス承認ack_strctを１に設定したことに対応してアクセス要求req_strctを０に戻すまで待つ（ステップＳ２０７：Ｎ）。
【００７４】
ステップＳ２０７においてアクセス要求req_strctが０になったとき（ステップＳ２０７：Ｙ）、アクセス承認ack_strctを０に戻し（ステップＳ２０８）、ステップＳ２００に戻る。
【００７５】
図７に、図２のメモリアクセスＩ／Ｆ回路５０４の動作例のタイミング図を示す。
【００７６】
図７では、構造体データの２階層目のデータの読み出し動作後に、該構造体データの２階層目のデータの書き込み動作が行われる場合の動作例のタイミングが示されている。
【００７７】
図７において、メモリアクセスＩ／Ｆ回路５０４は、メモリ５２０に対してメモリリクエストmreqを出力すると共に、書き込み動作又は読み出し動作を指定するメモリライトwriteを出力する。メモリライトwriteが０（Ｌレベルのとき）読み出し動作を示し、メモリライトwriteが１（Ｈレベル）のとき書き込み動作を示す。またメモリアクセスＩ／Ｆ回路５０４は、メモリアドレスmadrを出力し、メモリ５２０からメモリアクノリッジmackが返されるまでメモリリクエストmreq及びメモリアドレスmadrを保持するようになっている。
【００７８】
例えば、図７に示すように最初にメモリリクエストmreqを１に設定して読み出し動作を行う場合に、メモリアドレスmadrとしてアドレスADRA1を出力する。アドレスADRA1は、先頭アドレスパラメータadr_top[20:0]にオフセット値パラメータoffset0[15:0]を加算したアドレスである。これによって、リードデータrdataとして第１の要素データPD1が出力される。続いて、メモリリクエストmreqを１に設定し、メモリアドレスmadrとしてアドレスADRB1を出力する。アドレスADRB1は、第１の要素データPD1にオフセット値パラメータoffset1[15:0]を加算したアドレスである。これによって、リードデータrdataとして第２の要素データPD2が出力される。
【００７９】
更に、読み出し動作に続いて書き込み動作を行う場合には、メモリリクエストmreqを１に設定し、メモリアドレスmadrとしてアドレスADRA2を出力する。アドレスADRA2は、先頭アドレスパラメータadr_top[20:0]にオフセット値パラメータoffset0[15:0]を加算したアドレスである。これによって、リードデータrdataとして第３の要素データPD3が出力される。続いて、メモリリクエストmreqを１に設定し、メモリアドレスmadrとしてアドレスADRB2を出力する。アドレスADRB2は、第３の要素データPD3にオフセット値パラメータoffset1[15:0]を加算したアドレスである。そして、アドレスADRB2に、ライトデータwdataを書き込む。
【００８０】
このように、構造体データアクセス回路５００が、階層化された要素データの読み出しや書き込みを行うことができるので、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎの各モジュールは、構造体データアクセス回路５００に対してアクセス要求を、アクセスパラメータと共に出力するだけで済む。そして、第１〜第Ｎのモジュール５５０−１〜５５０−Ｎが、構造体データアクセス回路５００を共用するようにしたので、回路規模の増大を抑えることができる。
【００８１】
３．  映像デコーダ
次に、本実施形態における構造体データアクセス回路が適用された映像デコーダについて説明する。
【００８２】
図８に、本実施形態における構造体データアクセス回路が適用された映像デコーダの構成例のブロック図を示す。図８において、図１と同一部分には同一符号を付し、図８では図１におけるアービタ５４０及びメモリＩ／Ｆ回路５３０の図示を省略しているが、図１と同様にアービタ５４０及びメモリＩ／Ｆ回路５３０を含む。
【００８３】
図８の映像デコーダ６００は、Ｈ．２６４／ＡＶＣ（Advanced Video Coding）の規格に従って映像データのデコード処理を行う。図８では、ＣＰＵ５６０が読み込んだプログラムに対応したソフトウェア処理と映像デコーダ６００の処理とで、映像データのデコード処理を実現するようになっている。
【００８４】
映像デコーダ６００は、画面内予測部６０２（第１のモジュール）、動き補償部６０４（第２のモジュール）、デブロッキングフィルタ部６０６（第３のモジュール）、ＣＡＶＬＣ（Context-based Adaptive Variable Length Coding：コンテキスト適応型可変長符号化）部６０８（第４のモジュール）を含む。画面内予測部６０２は、Ｈ．２６４／ＡＶＣの規格に準拠した処理であって、１フレームの画面内で、画素間の相関関係に基づいて次のフレームの画素を予測する画面内予測処理を行う。動き補償部６０４は、Ｈ．２６４／ＡＶＣの規格に準拠した処理であって、動きベクトルに基づいて次のフレームの画像を予測する動き補償処理を行う。デブロッキングフィルタ部６０６は、Ｈ．２６４／ＡＶＣの規格に準拠した処理であって、予測した画像のブロックノイズを除去するデブロッキングフィルタ処理を行う。ＣＡＶＬＣ部６０８は、Ｈ．２６４／ＡＶＣの規格に準拠した処理であって、可変長符号化テーブルを用いて符号化するＣＡＶＬＣ処理を行う。
【００８５】
画面内予測部６０２、動き補償部６０４、デブロッキングフィルタ部６０６、ＣＡＶＬＣ部６０８の各処理の詳細や、各処理間の流れについては、Ｈ．２６４／ＡＶＣの規格に準拠しているため、詳細な説明は省略する。
【００８６】
図８において映像デコーダ６００では、ＣＰＵ５６０がメモリ５２０に書き込んだ非構造体データであるフレームデータのアクセスは、画面内予測部６０２、動き補償部６０４、デブロッキングフィルタ部６０６、ＣＡＶＬＣ部６０８によってそれぞれ独立に行われる。また映像デコーダ６００では、ＣＰＵ５６０が書き込んだ構造体データのアクセスは、画面内予測部６０２、動き補償部６０４、デブロッキングフィルタ部６０６、ＣＡＶＬＣ部６０８からのアクセス要求を受け付けた構造体データアクセス回路５００によって行われる。
【００８７】
また映像デコーダ６００では、画面内予測部６０２、動き補償部６０４、デブロッキングフィルタ部６０６、ＣＡＶＬＣ部６０８によってそれぞれ独立にメモリ５２０に書き込まれたフレームデータは、ＣＰＵ５６０によって読み出される。また映像デコーダ６００では、画面内予測部６０２、動き補償部６０４、デブロッキングフィルタ部６０６、ＣＡＶＬＣ部６０８からのアクセス要求を受け付けた構造体データアクセス回路５００によってメモリ５２０に書き込まれた構造体データは、ＣＰＵ５６０によって読み出される。
【００８８】
このように、ＣＰＵ５６０と映像デコーダ６００は、メモリ５２０を介して同じ構造の構造体データのアクセスが可能になっている。
【００８９】
４．  映像デコーダの適用例
図８の映像デコーダ６００は、地上デジタル放送で受信されたトランスポートストリームから映像データをデコードする携帯端末（情報再生装置）に適用できる。以下、図８と同一部分には同一符号を付し、適宜説明を省略する。
【００９０】
４．１  １セグメント放送の概要
地上アナログ放送に替わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。
【００９１】
図９に、地上デジタル放送のセグメントの概念の説明図を示す。
【００９２】
地上デジタル放送では、予め割り当てられた周波数帯域を１４個のセグメントに分割し、そのうちの１３個のセグメントＳＥＧ１〜ＳＥＧ１３を使って放送が行われる。残り１個のセグメントは、ガードバンドとして用いられる。そして、放送を行うための１３個のセグメントのうちの１個のセグメントＳＥＧｍが、携帯端末向けの放送の周波数帯域に割り当てられる。
【００９３】
１セグメント放送では、それぞれが符号化（圧縮処理）された映像データ、音声データ、その他のデータ（制御データ）が多重化されたトランスポートストリーム（Transport Stream：ＴＳ）が伝送される。より具体的には、ＴＳの各パケットにリードソロモン符号の誤り訂正用符号が付加された後、階層分割され、各階層において畳み込み符号化やキャリア変調が施される。そして、階層合成後に、周波数インターリーブ、時間インターリーブが行われ、受信側に必要なパイロット信号を付加してＯＦＤＭ（Orthogonal Frequency Division Multiplexing）セグメントフレームが形成される。このＯＦＤＭセグメントフレームに対し、逆フーリエ変換演算が施されてＯＦＤＭ信号として伝送される。
【００９４】
図１０に、ＴＳの説明図を示す。
【００９５】
ＴＳは、図１０に示すように複数のＴＳパケット列で構成されている。各ＴＳパケットの長さは、１８８バイトに固定されている。各ＴＳパケットは、４バイトのＴＳヘッダ（TS Header：ＴＳＨ）と呼ばれるヘッダ情報が付加されており、ＴＳパケットの識別子となるＰＩＤ（Packet Identifier）を含む。１セグメント放送の番組は、ＰＩＤにより特定される。
【００９６】
ＴＳパケットは、アダプテーションフィールドを含み、映像データ、音声データ等の同期再生の基準となる時刻情報であるＰＣＲ（Program Clock Reference）やダミーデータが埋め込まれる。ペイロードは、ＰＥＳ（Packetized Elementary Stream）パケットやセクションを生成するためのデータを含む。
【００９７】
図１１に、ＰＥＳパケット及びセクションの説明図を示す。
【００９８】
ＰＥＳパケット及びセクションのそれぞれは、１又は複数のＴＳパケットの各ＴＳパケットのペイロードにより構成される。ＰＥＳパケットは、ＰＥＳヘッダとペイロードとを含み、該ペイロードには、映像データ、音声データ又は字幕データがＥＳ（Elementary Stream）データとして設定される。セクションには、ＰＥＳパケットに設定される映像データ等の番組情報等が設定される。
【００９９】
従って、ＴＳを受信すると、まずセクションに含まれる番組情報を解析し、放送される番組に対応するＰＩＤを特定する必要がある。そして、該ＰＩＤに対応する映像データ、音声データをＴＳから抽出し、抽出後の映像データ、音声データを再生することになる。
【０１００】
４．２  携帯端末
１セグメント放送の受信機能を有する携帯端末では、上記のようなパケットの解析等の処理が必要となる。即ち、このような携帯端末では、高い処理能力が要求される。そのため、携帯端末（広義には電子機器）としての従来の携帯電話機に、１セグメント放送の受信機能を付加する場合には、高い処理能力を有するプロセッサ等を更に追加する必要がある。
【０１０１】
図１２に、本実施形態の比較例におけるマルチメディア処理ＣＰＵを含む携帯電話機の構成例のブロック図を示す。
【０１０２】
この携帯電話機９００では、アンテナ９１０を介して受信された受信信号を復調して電話用ＣＰＵ９２０が着呼処理を行い、電話用ＣＰＵ９２０が発呼処理を行った信号が変調されてアンテナ９１０を介して送信される。電話用ＣＰＵ９２０は、メモリ９２２に格納されたプログラムを読み込んで着呼処理及び発呼処理を行うことができる。
【０１０３】
またアンテナ９３０を介して受信された受信信号から、チューナ９４０を介して希望信号が取り出されると、該希望信号をＯＦＤＭ信号として上記と逆の手順でＴＳが生成される。マルチメディア処理ＣＰＵ９５０は、生成されたＴＳからＴＳパケットを解析してＰＥＳパケット及びセクションを判別し、所望の番組のＴＳパケットから映像データ、音声データのデコード処理を行う。マルチメディア処理ＣＰＵ９５０は、メモリ９５２に格納されたプログラムを読み込んで上記のパケットの解析処理やデコード処理を行うことができる。表示パネル９６０は、デコード処理後の映像データに基づいて表示出力を行い、スピーカ９７０は、デコード処理後の音声データに基づいて音声出力を行う。
【０１０４】
このようにマルチメディア処理ＣＰＵ９５０として、非常に高い処理能力が必要となる。高い処理能力を有するプロセッサは、一般的に、動作周波数が高くなったり、回路規模が大きくなってしまう。
【０１０５】
ところで、１セグメント放送のビットレートを考慮すると、その帯域のほとんどが映像データや音声データの帯域となり、データ放送自体の帯域が狭くなると考えられる。従って、マルチメディア処理ＣＰＵで実現できる処理のうち、映像データや音声データの再生処理のみで済む場合もあるにもかかわらず、マルチメディア処理ＣＰＵを常に動作させる必要があり、消費電力の増大を招く。
【０１０６】
そこで、本実施形態では、映像データのデコード処理を行う映像デコーダと音声データのデコード処理を行う音声デコーダとを独立して設け、それぞれ独立にデコード処理を行わせることで、それぞれの処理能力として低いものを採用できる。更に、映像デコーダ及び音声データの一方の動作を適宜停止させて柔軟に低消費電力化を図ることができる。
【０１０７】
更には、映像デコーダ及び音声デコーダを並列動作させることができるため、各デコーダの処理能力を低くて済み、より低消費電力化及び低コスト化を実現できる。
【０１０８】
図１３に、本実施形態における情報再生装置を含む携帯電話機の構成例のブロック図を示す。なお図１３において、図１２と同一部分には同一符号を付し、適宜説明を省略する。
【０１０９】
携帯電話機１００は、ホストＣＰＵ（広義にはホスト）１１０、ＲＡＭ（Random Access Memory）１２０、ＲＯＭ（Read Only Memory）１３０、表示ドライバ１４０、ＤＡＣ（Digital-to-Analog Converter）１５０、画像処理ＩＣ（Integrated Circuit)（広義には情報再生装置）２００を含むことができる。更に携帯電話機１００は、アンテナ９１０、９３０、チューナ９４０、表示パネル９６０、スピーカ９７０を含む。
【０１１０】
ホストＣＰＵ１１０は、図１２の電話用ＣＰＵ９２０の機能を有すると共に、画像処理ＩＣ２００を制御する機能を有する。ホストＣＰＵ１１０は、ＲＡＭ１２０又はＲＯＭ１３０に格納されたプログラムを読み出し、図１２の電話用ＣＰＵ９２０の処理、画像処理ＩＣ２００を制御する処理を行う。この際、ホストＣＰＵ１１０は、ＲＡＭ１２０をワークエリアとして用いることができる。
【０１１１】
画像処理ＩＣ２００は、チューナ９４０からのＴＳから、映像データを生成するための映像用ＴＳパケット（第１のＴＳパケット）、音声データを生成するための音声用ＴＳパケット（第２のＴＳパケット）を抽出し、図示しない共有メモリにバッファリングする。そして画像処理ＩＣ２００は、互いに独立して動作停止制御が可能な映像デコーダ及び音声デコーダ（図示せず）を含み、映像デコータ及び音声デコーダが、それぞれ映像用ＴＳパケット及び音声用ＴＳパケットをデコードして映像データ及び音声データを生成する。映像データ及び音声データは、同期しながら、それぞれ表示ドライバ１４０及びＤＡＣ１５０に供給される。ホストＣＰＵ１１０は、このような画像処理ＩＣ２００に対し、映像デコード処理及び音声デコード処理の処理開始を指示することができる。なおホストＣＰＵ１１０は、画像処理ＩＣ２００に対し、映像デコード処理及び音声デコード処理の少なくとも１つの処理開始を指示するようにしてもよい。
【０１１２】
表示ドライバ（広義には駆動回路）１４０は、映像データに基づいて表示パネル（広義には電気光学装置）９６０を駆動する。より具体的には、表示パネル９６０は、複数の走査線、複数のデータ線、各画素が各走査線及び各データ線により特定される複数の画素を有し、表示パネル９６０として液晶表示（Liquid Crystal Display）パネルを採用できる。表示ドライバ１４０は、複数の走査線を走査する走査ドライバの機能と、該映像データに基づいて複数のデータ線を駆動するデータドライバの機能とを有する。
【０１１３】
ＤＡＣ１５０は、デジタル信号である音声データをアナログ信号に変換し、スピーカ９７０に供給する。スピーカ９７０は、ＤＡＣ１５０からのアナログ信号に対応した音声出力を行う。
【０１１４】
４．３  情報再生装置
図１４に、本実施形態の情報再生装置としての図１３の画像処理ＩＣ２００の構成例のブロック図を示す。
【０１１５】
画像処理ＩＣ２００は、ＴＳ分離部（分離処理部）２１０と、メモリ（共有メモリ）２２０と、映像デコーダ６００と、音声デコーダ２４０とを含む。また画像処理ＩＣ２００は、更に、表示制御部２５０と、チューナＩ／Ｆ（Interface）２６０と、ホストＩ／Ｆ２７０と、ドライバＩ／Ｆ２８０と、オーディオＩ／Ｆ２９０とを含む。
【０１１６】
ＴＳ分離部２１０は、映像データを生成するための映像用ＴＳパケット（第１のＴＳパケット）、音声データを生成するための音声用ＴＳパケット（第２のＴＳパケット）、映像用ＴＳパケット及び音声用ＴＳパケット以外のパケット（第３のＴＳパケット）を、ＴＳから抽出する。ＴＳ分離部２１０は、ＴＳから一旦抽出された第３のＴＳパケットを解析するホストＣＰＵ１１０の解析結果に基づいて、第１及び第２のＴＳパケットを抽出することができる。
【０１１７】
メモリ２２０は、各記憶領域の先頭アドレス及び終了アドレスが予め決められた複数の記憶領域を有する。そして、ＴＳ分離部２１０により分離された映像用ＴＳパケット、音声用ＴＳパケット、それ以外のＴＳパケットのそれぞれが、各ＴＳパケット専用に設けられた記憶領域に格納される。
【０１１８】
映像デコーダ６００は、メモリ２２０の記憶領域のうち映像用ＴＳパケット専用に設けられた記憶領域から映像用ＴＳパケットを読み出し、該映像用ＴＳパケットに基づいて映像データを生成する映像デコード処理を行う。
【０１１９】
音声デコーダ２４０は、メモリ２２０の記憶領域のうち音声用ＴＳパケット専用に設けられた記憶領域から音声用ＴＳパケットを読み出し、該音声用ＴＳパケットに基づいて音声データを生成する音声デコード処理を行う。
【０１２０】
表示制御部２５０は、メモリ２２０から読み出された映像データにより表される画像の向きを回転させる回転処理や該画像のサイズを縮小又は拡大させるリサイズ処理を行う。回転処理後のデータやリサイズ処理後のデータは、ドライバＩ／Ｆ２８０に供給される。
【０１２１】
チューナＩ／Ｆ２６０は、チューナ９４０とのインターフェース処理を行う。より具体的には、チューナＩ／Ｆ２６０は、チューナ９４０からのＴＳを受信する制御を行う。チューナＩ／Ｆ２６０は、ＴＳ分離部２１０に接続される。
【０１２２】
ホストＩ／Ｆ２７０は、ホストＣＰＵ１１０とのインターフェース処理を行う。より具体的には、ホストＩ／Ｆ２７０は、ホストＣＰＵ１１０との間のデータの送受信の制御を行う。ホストＩ／Ｆ２７０は、ＴＳ分離部２１０、メモリ２２０、表示制御部２５０、オーディオＩ／Ｆ２９０に接続される。
【０１２３】
ドライバＩ／Ｆ２８０は、表示制御部２５０を介してメモリ２２０から所定の周期で映像データを読み出し、該映像データを表示ドライバ１４０に対して供給する。ドライバＩ／Ｆ２８０は、表示ドライバ１４０に対して映像データを送信するためのインターフェース処理を行う。
【０１２４】
オーディオＩ／Ｆ２９０は、メモリ２２０から所定の周期で音声データを読み出し、該音声データをＤＡＣ１５０に対して供給する。オーディオＩ／Ｆ２９０は、ＤＡＣ１５０に対して音声データを送信するためのインターフェース処理を行う。
【０１２５】
このような画像処理ＩＣ２００では、ＴＳ分離部２１０により、チューナ９４０からのＴＳからＴＳパケットが抽出される。ＴＳパケットは、共有メモリとしてのメモリ２２０の予め割り当てられた記憶領域に格納される。そして、映像デコーダ６００及び音声デコーダ２４０が、それぞれメモリ２２０に割り当てられた専用の記憶領域からＴＳパケットを読み出して、映像データ及び音声データを生成し、互いに同期した映像データ及び音声データを表示ドライバ１４０及びＤＡＣ１５０に対して供給することができる。
【０１２６】
図１５に、図１４の画像処理ＩＣ２００の動作説明図を示す。
【０１２７】
図１５において、図１４と同一部分には同一符号を付し、適宜説明を省略する。
【０１２８】
メモリ２２０は、第１〜第８の記憶領域ＡＲ１〜ＡＲ８を有し、各記憶領域が予め割り当てられている。
【０１２９】
第１の記憶領域ＡＲ１には、映像用ＴＳパケット専用の記憶領域として、ＴＳ分離部２１０によって抽出された映像用ＴＳパケット（第１のＴＳパケット）が格納される。第２の記憶領域ＡＲ２には、音声用ＴＳパケット専用の記憶領域として、ＴＳ分離部２１０によって抽出された音声用ＴＳパケット（第２のＴＳパケット）が格納される。第３の記憶領域ＡＲ３には、ＴＳ分離部２１０によって抽出されたＴＳパケットのうち映像用ＴＳパケット及び音声用ＴＳパケットを除くＴＳパケット（第３のＴＳパケット）が格納される。
【０１３０】
第４の記憶領域ＡＲ４には、映像用ＥＳデータ専用の記憶領域として、映像デコーダ６００によって生成された映像用ＥＳデータが格納される。第５の記憶領域ＡＲ５には、音声用ＥＳデータ専用の記憶領域として、音声デコーダ２４０によって生成された音声用ＥＳデータが格納される。
【０１３１】
第６の記憶領域ＡＲ６には、ホストＣＰＵ１１０によって生成されるＴＳが、ＴＳＲＡＷデータとして格納される。ＴＳＲＡＷデータは、チューナ９４０からのＴＳに替わってホストＣＰＵ１１０により設定される。そして、ＴＳ分離部２１０は、ＴＳＲＡＷデータとして設定されたＴＳから、映像用ＴＳパケット、音声用ＴＳパケット、その他のＴＳパケットが抽出されるようになっている。
【０１３２】
第７の記憶領域ＡＲ７には、映像デコーダ６００によるデコード処理後の映像データが格納される。第７の記憶領域ＡＲ７に格納された映像データは、表示制御部２５０によって読み出され、表示パネル９６０による映像出力に供される。第８の記憶領域ＡＲ８には、音声デコーダ２４０によるデコード処理後の音声データが格納される。第８の記憶領域ＡＲ８に格納された音声データは、スピーカ９７０による音声出力に供される。
【０１３３】
映像デコーダ６００は、ヘッダ削除処理部２３２と、映像デコード処理部２３４とを含む。ヘッダ削除処理部２３２は、第１の記憶領域ＡＲ１から映像用ＴＳパケットを読み出し、該映像用ＴＳパケットのＴＳヘッダを解析してＰＥＳパケット（第１のＰＥＳパケット）を生成した後、そのＰＥＳヘッダを削除する処理を行ってそのペイロード部を映像用ＥＳデータとしてメモリ２２０の第４の記憶領域ＡＲ４に格納する。映像デコード処理部２３４は、第４の記憶領域ＡＲ４から映像用ＥＳデータを読み出し、Ｈ．２６４／ＡＶＣ（Advanced Video Coding）の規格に従ったデコード処理（広義には映像デコード処理）を行って生成される映像データを第７の記憶領域ＡＲ７に書き込む。
【０１３４】
音声デコーダ２４０は、ヘッダ削除処理部２４２と、音声デコード処理部２４４とを含む。ヘッダ削除処理部２４２は、第２の記憶領域ＡＲ２から音声用ＴＳパケットを読み出し、該音声用ＴＳパケットのＴＳヘッダを解析してＰＥＳパケット（第２のＰＥＳパケット）を生成した後、そのＰＥＳヘッダを削除する処理を行ってそのペイロード部を音声用ＥＳデータとしてメモリ２２０の第５の記憶領域ＡＲ５に格納する。音声デコード処理部２４４は、第５の記憶領域ＡＲ５から音声用ＥＳデータを読み出し、ＭＰＥＧ−２ＡＡＣ（Advanced Audio Coding）の規格に従ったデコード処理（広義には音声デコード処理）を行って生成される音声データを第８の記憶領域ＡＲ８に書き込む。
【０１３５】
そして、映像デコーダ６００が、第１の記憶領域ＡＲ１から映像用ＴＳパケット（第１のＴＳパケット）を、音声デコーダ２４０とは独立して読み出し、該映像用ＴＳパケットに基づいて上記の映像デコード処理を行う。また音声デコーダ２４０が、第２の記憶領域ＡＲ２から音声用ＴＳパケット（第２のＴＳパケット）を、映像デコーダ６００とは独立して読み出し、該音声用ＴＳパケットに基づいて上記の音声デコード処理を行う。こうすることで、映像と音声とを同期させて出力させる場合には映像デコーダ６００及び音声デコーダ２４０を動作させることができる一方、映像のみを出力させる場合には映像デコーダ６００のみを動作させて音声デコーダ２４０の動作を停止させることができる。また音声のみを出力させる場合には音声デコーダ２４０のみを動作させて映像デコーダ６００の動作を停止させることができる。
【０１３６】
ホストＣＰＵ１１０は、第３の記憶領域ＡＲ３に格納されたその他のＴＳパケット（第３のＴＳパケット）を読み出し、該ＴＳパケットからセクションを生成する。そして該セクションに含まれる各種テーブル情報を解析する。ホストＣＰＵ１１０は、その解析結果をメモリ２２０の所定の記憶領域に設定すると共にＴＳ分離部２１０に対し制御情報として指定する。それ以降、ＴＳ分離部２１０は、チューナ９４０からのＴＳを該制御情報に従ってＴＳパケットを抽出する。一方、ホストＣＰＵ１１０は、映像デコーダ６００及び音声デコーダ２４０に対して、それぞれ別個に起動コマンドを発行することができる。映像デコーダ６００及び音声デコーダ２４０は、それぞれ独立してメモリ２２０にアクセスしてホストＣＰＵ１１０の解析結果を読み出し、該解析結果に対応したデコード処理を行う。
【０１３７】
４．３．１  再生動作
次に、本実施形態における情報再生装置としての画像処理ＩＣ２００において、ＴＳに多重化された映像データ又は音声データを再生する場合の動作について説明する。
【０１３８】
図１６に、ホストＣＰＵ１１０による再生処理の動作例のフロー図を示す。ホストＣＰＵ１１０は、ＲＡＭ１２０又はＲＯＭ１３０に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図１６に示す処理を行うことができるようになっている。
【０１３９】
まずホストＣＰＵ１１０は、放送受信開始処理を行う（ステップＳ１０）。これによって、ＴＳとして受信された複数の番組のうち所望の番組の映像データ又は音声データをＴＳから抽出することができる。そして、ホストＣＰＵ１１０は、画像処理ＩＣ２００の映像デコーダ６００及び音声デコーダ２４０の少なくとも１つを起動させる。
【０１４０】
その後、ホストＣＰＵ１１０は、映像及び音声の再生を行う場合には映像デコーダ６００及び音声デコーダ２４０によりデコード処理を行わせる。或いはホストＣＰＵ１１０は、映像のみの再生を行う場合には音声デコーダ２４０の動作を停止させて映像デコーダ６００によりデコード処理を行わせる。或いはまた、ホストＣＰＵ１１０は、音声のみの再生を行う場合には映像デコーダ６００の動作を停止させて音声デコーダ２４０によりデコード処理を行わせる（ステップＳ１１）。
【０１４１】
次に、ホストＣＰＵ１１０は、放送受信終了処理を行い（ステップＳ１２）、一連の処理を終了する（エンド）。これによって、ホストＣＰＵ１１０は、画像処理ＩＣ２００の各部の動作を停止させる。
【０１４２】
４．３．２  放送受信開始処理
続いて、図１６に示す放送受信開始処理の処理例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
【０１４３】
図１７に、図１６の放送受信開始処理の動作例のフロー図を示す。ホストＣＰＵ１１０は、ＲＡＭ１２０又はＲＯＭ１３０に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図１７に示す処理を行うことができるようになっている。
【０１４４】
まずホストＣＰＵ１１０は、画像処理ＩＣ２００の映像デコーダ６００、音声デコーダ２４０を起動する（ステップＳ２０）。その後、ホストＣＰＵ１１０は、チューナ９４０を初期化すると共に所与の動作情報を設定する（ステップＳ２１）。そしてホストＣＰＵ１１０は、ＤＡＣ１５０に対しても初期化を行って所与の動作情報を設定する（ステップＳ２２）。
【０１４５】
その後ホストＣＰＵ１１０は、ＴＳの受信を監視する（ステップＳ２３：Ｎ）。ＴＳの受信が開始されると、画像処理ＩＣ２００では、ＴＳ分離部２１０が、上述のようにＴＳから映像用ＴＳパケット、音声用ＴＳパケット及びそれ以外のＴＳパケットに分離し、分離されたＴＳパケットは、専用に設けられたメモリ２２０の記憶領域に格納される。例えば画像処理ＩＣ２００のメモリ２２０における第３の記憶領域ＡＲ３にＴＳパケットが格納されたことを条件に発生する割り込み信号により、ホストＣＰＵ１１０はＴＳの受信を検出できる。或いはホストＣＰＵ１１０が、周期的にメモリ２２０の第３の記憶領域ＡＲ３をアクセスすることで、ＴＳパケットの書き込みが行われた否かを判断して、ＴＳの受信を判別できる。
【０１４６】
このようにしてＴＳの受信が検出されたとき（ステップＳ２３：Ｙ）、ホストＣＰＵ１１０は、第３の記憶領域ＡＲ３に記憶されたＴＳパケットを読み出してセクションを生成する。そして、セクションに含まれるＰＳＩ（Program Specific Information：番組特定情報）／ＳＩ（Service Information：番組配列情報）を解析する（ステップＳ２４）。このＰＳＩ／ＳＩは、ＭＰＥＧ−２システム（ISO/IEC 13818-1）にて規定されている。
【０１４７】
ＰＳＩ／ＳＩは、ＮＩＴ（Network Information Table：ネットワーク情報テーブル）やＰＭＴ（Program Map Table：番組対応テーブル）を含む。ＮＩＴは、例えばどの放送局からのＴＳかを特定するためのネットワーク識別子、ＰＭＴを特定するためのサービス識別子、放送の種類を示すサービスタイプ識別子等を含む。ＰＭＴには、例えばＴＳにおいて多重化される映像用ＴＳパケットのＰＩＤと音声用ＴＳパケットのＰＩＤが設定される。
【０１４８】
従って、ホストＣＰＵ１１０は、ＰＳＩ／ＳＩからＰＭＴを特定するためのサービス識別子を抽出し、該サービス識別子に基づき、受信したＴＳの映像用ＴＳパケット及び音声用ＴＳパケットのＰＩＤを特定できる（ステップＳ２５）。そして、携帯端末のユーザに選択させた番組に対応するＰＩＤ、若しくは予め決められた番組に対応するＰＩＤを、ホストＣＰＵ１１０が、映像デコーダ６００及び音声デコーダ２４０に参照できるようにメモリ２２０の所定の記憶領域（例えば第３の記憶領域ＡＲ３）に設定し（ステップＳ２６）、一連の処理を終了する（エンド）。
【０１４９】
こうすることで、映像デコーダ６００及び音声デコーダ２４０は、メモリ２２０に設定されたＰＩＤを参照しながら、映像用ＴＳパケット及び音声用ＴＳパケットに対してデコード処理を行うことができる。
【０１５０】
なおホストＣＰＵ１１０は、例えばＰＭＴを特定するためのサービス識別子に対応する情報を、画像処理ＩＣ２００のＴＳ分離部２１０に設定する。こうすることで、ＴＳ分離部２１０は、所定の時間間隔を置いて周期的に受信されるセクションを判別し、上記のサービス識別子に対応したＰＭＴを解析し、該ＰＭＴにより特定される映像用ＴＳパケット及び音声用ＴＳパケットとそれ以外のＴＳパケットを抽出してメモリ２２０に格納していく。
【０１５１】
図１８に、図１４及び図１５の画像処理ＩＣ２００の放送受信開始処理における動作説明図を示す。図１８において、図１４又は図１５と同一部分には同一符号を付し、適宜説明を省略する。
【０１５２】
なお図１８において、第７の記憶領域ＡＲ７を第４の記憶領域ＡＲ４と共用化し、第８の記憶領域ＡＲ８を第５の記憶領域ＡＲ５と共用化している。また、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴは、第３の記憶領域ＡＲ３内の所定の記憶領域に格納されるものとする。
【０１５３】
まずチューナ９４０からＴＳが入力される（ＳＱ１）とＴＳ分離部２１０は、ＰＳＩ／ＳＩが含まれるＴＳパケットをメモリ２２０に格納する（ＳＱ２）。このとき、ＴＳ分離部２１０は、該ＴＳパケットのＰＳＩ／ＳＩ自体を抽出してメモリ２２０に格納することができる。更にＴＳ分離部２１０は、ＰＳＩ／ＳＩからＮＩＴを抽出してメモリ２２０に格納することができる。
【０１５４】
ホストＣＰＵ１１０は、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴを読み出して（ＳＱ３）、これらを解析し、デコード処理対象の番組に対応するＰＩＤを特定する。そしてホストＣＰＵ１１０は、サービス識別子に対応する情報又はデコード処理対象の番組に対応するＰＩＤを、ＴＳ分離部２１０に設定する（ＳＱ４）。なおホストＣＰＵ１１０は、ＰＩＤを、メモリ２２０の所定の記憶領域にも設定し、映像デコーダ６００及び音声デコーダ２４０のデコード処理の際に参照させる。
【０１５５】
ＴＳ分離部２１０は、設定されたＰＩＤに基づいてＴＳから映像用ＴＳパケット及び音声用ＴＳパケットを抽出し、それぞれ第１及び第２の記憶領域ＡＲ１、ＡＲ２に書き込む（ＳＱ５）。
【０１５６】
その後、ホストＣＰＵ１１０によって起動された映像デコーダ６００及び音声デコーダ２４０は、第１及び第２の記憶領域ＡＲ１、ＡＲ２から映像用ＴＳパケット及び音声用ＴＳパケットを順次読み出して（ＳＱ６）、映像デコード処理及び音声デコード処理を行う。
【０１５７】
４．３．３  放送受信終了処理
次に、図１６に示す放送受信終了処理の動作例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
【０１５８】
図１９に、図１６の放送受信終了処理の処理例のフロー図を示す。ホストＣＰＵ１１０は、ＲＡＭ１２０又はＲＯＭ１３０に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図１９に示す処理を行うことができるようになっている。
【０１５９】
まずホストＣＰＵ１１０は、画像処理ＩＣ２００の映像デコーダ６００、音声デコーダ２４０を停止させる（ステップＳ３０）。これは、例えばホストＣＰＵ１１０から画像処理ＩＣ２００に対し制御コマンドを発行し、画像処理ＩＣ２００が該制御コマンドのデコード結果を用いて映像デコーダ６００、音声デコーダ２４０を停止させることができる。
【０１６０】
その後、ホストＣＰＵ１１０は、同様にＴＳ分離部２１０を停止させる（ステップＳ３１）。そして、ホストＣＰＵ１１０は、チューナ９４０を停止させる（ステップＳ３２）。
【０１６１】
図２０に、図１４及び図１５の画像処理ＩＣ２００の放送受信終了処理における動作説明図を示す。図２０において、図１８と同一部分には同一符号を付し、適宜説明を省略する。
【０１６２】
まずホストＣＰＵ１１０が、表示制御部２５０の動作を停止させる制御を行い、表示ドライバ１４０への映像データの供給を停止させる（ＳＱ１０）。次に、ホストＣＰＵ１１０が、映像デコーダ６００及び音声デコーダ２４０の動作を停止させ（ＳＱ１１）、その後ＴＳ分離部２１０、チューナ９４０の順に動作を停止させていく（ＳＱ１２、ＳＱ１３）。
【０１６３】
４．３．４  再生処理
次に、映像データの再生処理を行う映像デコーダ６００の動作例について説明する。
【０１６４】
図２１に、映像デコーダ６００の動作例のフロー図を示す。
【０１６５】
映像デコーダ６００は、ホストＣＰＵ１１０によって起動されると、例えばメモリ２２０の所定の記憶領域に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図２１に示す処理を行うことができるようになっている。即ち、映像デコーダ６００はＣＰＵ（中央演算処理装置）を含み、画像処理ＩＣ２００（情報再生装置）の初期化処理後に、画像処理ＩＣ２００の外部から、ＣＰＵに映像デコード処理を実現するためのプログラムが読み込まれ、該ＣＰＵが映像デコード処理を実現することができる。なお、映像デコーダ６００の処理の少なくとも一部が、組み合わせ回路や論理回路等のハードウェアによって行われてもよい。
【０１６６】
なお、映像デコーダ６００及び音声デコーダ２４０のうち少なくとも１つが、ＣＰＵを含み、画像処理ＩＣ２００の初期化処理後に、画像処理ＩＣ２００の外部から、ＣＰＵに各デコード処理を実現するためのプログラムが読み込まれるようにしてもよい。
【０１６７】
まず、映像デコーダ６００は、映像用ＴＳバッファとして設けられた第１の記憶領域ＡＲ１がエンプティ状態か否かを判別する（ステップＳ３０）。第１の記憶領域ＡＲ１から読み出されるべき映像用ＴＳパケットがない場合、エンプティ状態となる。
【０１６８】
ステップＳ３０において映像用ＴＳバッファである第１の記憶領域ＡＲ１がエンプティ状態でないと判別されたとき（ステップＳ３０：Ｎ）、映像デコーダ６００は、更に映像用ＥＳバッファとして設けられた第４の記憶領域ＡＲ４がフル状態か否かを判別する（ステップＳ３１）。これ以上映像用ＥＳデータを第４の記憶領域ＡＲ４に格納できない場合、フル状態となる。
【０１６９】
ステップＳ３１において映像用ＥＳバッファである第４の記憶領域ＡＲ４がフル状態でないと判別されたとき（ステップＳ３１：Ｎ）、映像デコーダ６００は、第１の記憶領域ＡＲ１から映像用ＴＳパケットを読み出し、図１７のステップＳ２６においてホストＣＰＵ１１０により特定されたＰＩＤ（指定ＰＩＤ）か否かを検出する（ステップＳ３２）。
【０１７０】
ステップＳ３２において、映像用ＴＳパケットのＰＩＤが指定ＰＩＤであると検出されたとき（ステップＳ３２：Ｙ）、映像デコーダ６００は、ＴＳヘッダ、ＰＥＳヘッダの解析を行い（ステップＳ３３）、映像用ＥＳデータを映像用ＥＳバッファとして設けられた第４の記憶領域ＡＲ４に格納する（ステップＳ３４）。
【０１７１】
その後、映像デコーダ６００は、映像用ＴＳバッファである第１の記憶領域ＡＲ１の読み出しアドレスを特定するための読み出しポインタを更新し（ステップＳ３５）、ステップＳ３０に戻る（リターン）。
【０１７２】
なお、ステップＳ３２において映像用ＴＳパケットのＰＩＤが指定ＰＩＤではないと検出されたとき（ステップＳ３２：Ｎ）、ステップＳ３５に進む。また、ステップＳ３０において映像用ＴＳバッファである第１の記憶領域ＡＲ１がエンプティ状態であると判別されたとき（ステップＳ３０：Ｙ）、又はステップＳ３１において映像用ＥＳバッファである第４の記憶領域ＡＲ４がフル状態であると判別されたとき（ステップＳ３１：Ｙ）、ステップＳ３０に戻る（リターン）。
【０１７３】
こうして第４の記憶領域ＡＲ４に格納された映像用ＥＳデータは、映像デコーダ６００により、Ｈ．２６４／ＡＶＣの規格に従ったデコード処理が行われて、映像データとして第７の記憶領域ＡＲ７（図１５参照）に書き込まれる。
【０１７４】
図２２に、図１４及び図１５の画像処理ＩＣ２００の映像デコーダの動作説明図を示す。図２２において、図１８と同一部分には同一符号を付し、適宜説明を省略する。
【０１７５】
なお図２２において、第７の記憶領域ＡＲ７を第４の記憶領域ＡＲ４と共用化し、第８の記憶領域ＡＲ８を第５の記憶領域ＡＲ５と共用化している。また、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴは、第３の記憶領域ＡＲ３内の所定の記憶領域に格納されるものとする。
【０１７６】
まず図１７に示すようにホストＣＰＵ１１０によりデコード処理対象の番組に対応するＰＩＤがＴＳ分離部２１０に設定される（ＳＱ２０）。チューナ９４０からＴＳが入力されたとき（ＳＱ２１）、ＴＳ分離部２１０は、チューナ９４０からのＴＳから映像用ＴＳパケット、音声用ＴＳパケット及びそれ以外のＴＳパケットをそれぞれ分離する（ＳＱ２２）。ＴＳ分離部２１０によって分離された映像用ＴＳパケットは、第１の記憶領域ＡＲ１に格納される。ＴＳ分離部２１０によって分離された音声用ＴＳパケットは、第２の記憶領域ＡＲ２に格納される。ＴＳ分離部２１０によって分離された映像用ＴＳパケット及び音声用ＴＳパケット以外のＴＳパケットは、ＰＳＩ／ＳＩとして第３の記憶領域ＡＲ３に格納される。この際、ＴＳ分離部２１０は、ＰＳＩ／ＳＩの中のＮＩＴ、ＰＭＴを抽出して第３の記憶領域ＡＲ３に格納する。
【０１７７】
次にホストＣＰＵ１１０によって起動された映像デコーダ６００は、第１の記憶領域ＡＲ１から映像用ＴＳパケットを読み出し（ＳＱ２３）、映像用ＥＳデータを生成し、該映像用ＥＳデータを第４の記憶領域ＡＲ４に格納する（ＳＱ２４）。
【０１７８】
その後、映像デコーダ６００は、第４の記憶領域ＡＲ４から映像用ＥＳデータを読み出して（ＳＱ２５）、Ｈ．２６４／ＡＶＣの規格に従ったデコード処理を行う。図２２では、デコード処理後の映像データが表示制御部２５０に直接供給されている（ＳＱ２６）が、例えばデコード処理後の映像データを、一旦、メモリ２２０の所定の記憶領域に書き戻し、その後、音声データの出力タイミングと同期を取りながら表示制御部２５０に供給することが望ましい。
【０１７９】
こうして表示制御部２５０に供給された映像データに基づいて、表示ドライバ１４０が表示パネルを駆動する（ＳＱ２７）。
【０１８０】
続いて、音声データの再生処理を行う音声デコーダ２４０の動作例について説明する。
【０１８１】
図２３に、音声デコーダ２４０の動作例のフロー図を示す。
【０１８２】
音声デコーダ２４０は、ホストＣＰＵ１１０によって起動されると、例えばメモリ２２０の所定の記憶領域に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図２３に示す処理を行うことができるようになっている。即ち、音声デコーダ２４０はＣＰＵ（中央演算処理装置）を含み、画像処理ＩＣ２００（情報再生装置）の初期化処理後に、画像処理ＩＣ２００の外部から、ＣＰＵに音声デコード処理を実現するためのプログラムが読み込まれ、該ＣＰＵが音声デコード処理を実現することができる。なお、音声デコーダ２４０の処理の少なくとも一部が、組み合わせ回路や論理回路等のハードウェアによって行われてもよい。
【０１８３】
まず、音声デコーダ２４０は、音声用ＴＳバッファとして設けられた第２の記憶領域ＡＲ２がエンプティ状態か否かを判別する（ステップＳ４０）。第２の記憶領域ＡＲ２から読み出されるべき音声用ＴＳパケットがない場合、エンプティ状態となる。
【０１８４】
ステップＳ４０において音声用ＴＳバッファである第２の記憶領域ＡＲ２がエンプティ状態でないと判別されたとき（ステップＳ４０：Ｎ）、音声デコーダ２４０は、更に音声用ＥＳバッファとして設けられた第５の記憶領域ＡＲ５がフル状態か否かを判別する（ステップＳ４１）。これ以上音声用ＥＳデータを第５の記憶領域ＡＲ５に格納できない場合、フル状態となる。
【０１８５】
ステップＳ４１において音声用ＥＳバッファである第５の記憶領域ＡＲ５がフル状態でないと判別されたとき（ステップＳ４１：Ｎ）、音声デコーダ２４０は、第２の記憶領域ＡＲ２から音声用ＴＳパケットを読み出し、図１７のステップＳ２６においてホストＣＰＵ１１０により特定されたＰＩＤ（指定ＰＩＤ）か否かを検出する（ステップＳ４２）。
【０１８６】
ステップＳ４２において、音声用ＴＳパケットのＰＩＤが指定ＰＩＤであると検出されたとき（ステップＳ４２：Ｙ）、音声デコーダ２４０は、ＴＳヘッダ、ＰＥＳヘッダの解析を行い（ステップＳ４３）、音声用ＥＳデータを音声用ＥＳバッファとして設けられた第５の記憶領域ＡＲ５に格納する（ステップＳ３４）。
【０１８７】
その後、音声デコーダ２４０は、音声用ＴＳバッファである第２の記憶領域ＡＲ２の読み出しアドレスを特定するための読み出しポインタを更新し（ステップＳ４５）、ステップＳ４０に戻る（リターン）。
【０１８８】
なお、ステップＳ４２において、音声用ＴＳパケットのＰＩＤが指定ＰＩＤではないと検出されたとき（ステップＳ４２：Ｎ）、ステップＳ４５に進む。また、ステップＳ４０において音声用ＴＳバッファである第２の記憶領域ＡＲ２がエンプティ状態であると判別されたとき（ステップＳ４０：Ｙ）、又はステップＳ４１において音声用ＥＳバッファである第５の記憶領域ＡＲ５がフル状態であると判別されたとき（ステップＳ４１：Ｙ）、ステップＳ４０に戻る（リターン）。
【０１８９】
こうして第５の記憶領域ＡＲ５に格納された音声用ＥＳデータは、音声デコーダ２４０により、ＭＰＥＧ−２ＡＡＣの規格に従ったデコード処理が行われて、音声データとして第８の記憶領域ＡＲ８（図１５参照）に書き込まれる。
【０１９０】
図２４に、図１４及び図１５の画像処理ＩＣ２００の映像デコーダの動作説明図を示す。図２４において、図１８と同一部分には同一符号を付し、適宜説明を省略する。
【０１９１】
なお図２４において、第７の記憶領域ＡＲ７を第４の記憶領域ＡＲ４と共用化し、第８の記憶領域ＡＲ８を第５の記憶領域ＡＲ５と共用化している。また、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴは、第３の記憶領域ＡＲ３内の所定の記憶領域に格納されるものとする。
【０１９２】
まず図１７に示すようにホストＣＰＵ１１０によりデコード処理対象の番組に対応するＰＩＤがＴＳ分離部２１０に設定される（ＳＱ３０）。チューナ９４０からＴＳが入力されたとき（ＳＱ３１）、ＴＳ分離部２１０は、チューナ９４０からのＴＳから映像用ＴＳパケット、音声用ＴＳパケット及びそれ以外のＴＳパケットをそれぞれ分離する（ＳＱ３２）。ＴＳ分離部２１０によって分離された映像用ＴＳパケットは、第１の記憶領域ＡＲ１に格納される。ＴＳ分離部２１０によって分離された音声用ＴＳパケットは、第２の記憶領域ＡＲ２に格納される。ＴＳ分離部２１０によって分離された映像用ＴＳパケット及び音声用ＴＳパケット以外のＴＳパケットは、ＰＳＩ／ＳＩとして第３の記憶領域ＡＲ３に格納される。更にＴＳ分離部２１０は、ＰＳＩ／ＳＩの中のＮＩＴ、ＰＭＴを抽出して第３の記憶領域ＡＲ３の所定の記憶領域に書き込むことができる。
【０１９３】
次にホストＣＰＵ１１０によって起動された音声デコーダ２４０は、第２の記憶領域ＡＲ２から音声用ＴＳパケットを読み出し（ＳＱ３３）、音声用ＥＳデータを生成し、該音声用ＥＳデータを第５の記憶領域ＡＲ５に格納する（ＳＱ３４）。
【０１９４】
その後、音声デコーダ２４０は、第５の記憶領域ＡＲ５から音声用ＥＳデータを読み出して（ＳＱ３５）、ＭＰＥＧ−２ＡＡＣの規格に従ったデコード処理を行う。図２４では、デコード処理後の音声データがＤＡＣ１５０に直接供給されている（ＳＱ３６）が、例えばデコード処理後の音声データを、一旦、メモリ２２０の所定の記憶領域に書き戻し、その後、映像データの出力タイミングと同期を取りながらＤＡＣ１５０に供給することが望ましい。
【０１９５】
以上のような音声デコーダ２４０の動作は、映像デコーダ６００の動作とは独立して行われる。
【０１９６】
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。本実施形態における構造体データアクセス回路は、映像デコーダに適用されるものに限定されるものではない。また本実施形態における映像デコーダは、情報再生装置に適用されるものに限定されるものではない。
【０１９７】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【図面の簡単な説明】
【０１９８】
【図１】本実施形態の構造体データアクセスシステムの構成例のブロック図。
【図２】図１の構造体データアクセス回路の構成例のブロック図。
【図３】アクセスパラメータの説明図。
【図４】構造体データの説明図。
【図５】図２の構造体データアクセス回路の読み出し動作例のフロー図。
【図６】図２の構造体データアクセス回路の書き込み動作例のフロー図。
【図７】図２のメモリアクセスＩ／Ｆ回路の動作例のタイミング図。
【図８】本実施形態における構造体データアクセス回路が適用された映像デコーダの構成例のブロック図。
【図９】地上デジタル放送のセグメントの概念の説明図。
【図１０】ＴＳの説明図。
【図１１】ＰＥＳパケット及びセクションの説明図。
【図１２】本実施形態の比較例におけるマルチメディア処理ＣＰＵを含む携帯電話機の構成例のブロック図。
【図１３】本実施形態の情報再生装置を含む携帯電話機の構成例のブロック図。
【図１４】図１３の画像処理ＩＣの構成例のブロック図
【図１５】図１４の画像処理ＩＣの動作説明図。
【図１６】ホストＣＰＵによる再生処理の動作例のフロー図。
【図１７】図１６の放送受信開始処理の処理例のフロー図。
【図１８】図１４及び図１５の画像処理ＩＣの放送受信開始処理における動作説明図。
【図１９】図１６の放送受信終了処理の処理例のフロー図。
【図２０】図１４及び図１５の画像処理ＩＣの放送受信終了処理における動作説明図。
【図２１】映像デコーダの動作例のフロー図。
【図２２】図１４及び図１５の画像処理ＩＣの映像デコーダの動作説明図。
【図２３】音声デコーダの動作例のフロー図。
【図２４】図１４及び図１５の画像処理ＩＣの映像デコーダの動作説明図。
【符号の説明】
【０１９９】
４００  構造体データアクセスシステム、  ５００  構造体データアクセス回路、
５０２  メモリアドレス生成回路、  ５０４  メモリアクセスＩ／Ｆ回路、
５０６  タイミング発生回路、  ５０８  パラメータレジスタ、
５１０  読み出しデータ生成回路、  ５１２  読み出しデータバッファ、
５１４  書き込みデータバッファ、  ５２０  メモリ、  ５３０  メモリＩ／Ｆ回路、
５４０、５４２  アービタ、  ５５０−１〜５５０−Ｎ  第１〜第Ｎのモジュール、
５６０  ＣＰＵ、  ６００  映像デコーダ、  ６０２  画面内予測部、
６０４  動き補償部、  ６０６  デブロッキングフィルタ部、  ６０８  ＣＡＶＬＣ部
【図１】
2007148860.tif 000003
【図２】
2007148860.tif 000004
【図３】
2007148860.tif 000005
【図４】
2007148860.tif 000006
【図５】
2007148860.tif 000007
【図６】
2007148860.tif 000008
【図７】
2007148860.tif 000009
【図８】
2007148860.tif 000010
【図９】
2007148860.tif 000011
【図１０】
2007148860.tif 000012
【図１１】
2007148860.tif 000013
【図１２】
2007148860.tif 000014
【図１３】
2007148860.tif 000015
【図１４】
2007148860.tif 000016
【図１５】
2007148860.tif 000017
【図１６】
2007148860.tif 000018
【図１７】
2007148860.tif 000019
【図１８】
2007148860.tif 000020
【図１９】
2007148860.tif 000021
【図２０】
2007148860.tif 000022
【図２１】
2007148860.tif 000023
【図２２】
2007148860.tif 000024
【図２３】
2007148860.tif 000025
【図２４】
2007148860.tif 000026