(57)【要約】【課題】  簡素な構成で、メモリに格納されたデータのアクセスを高速化できるデータアクセス回路、デコード装置、情報再生装置及び電子機器を提供する。【解決手段】  データアクセス回路１０は、メモリから読み出されたデータが格納されるＭ（Ｍ≧ｎ＋ｍ、Ｍは正の整数）ビットバッファと、Ｍビットバッファのポインタを管理するポインタ管理部とを含む。外部モジュールからの読み出し要求があり、Ｍビットバッファに格納されるデータの残量がｎビットより少ないとき、メモリからＭビットバッファにデータを補充する制御を行い、前記データの残量がｍビット多くなるようにポインタを更新する。前記読み出し要求があり、Ｍビットバッファに格納されるデータがｎビット以上のとき、Ｍビットバッファから外部モジュールに対して出力する制御を行う共に、前記データの残量がｎビット少なくなるようにポインタを更新する。【選択図】      図１
2007304797.tif 000002
【特許請求の範囲】
【請求項１】
外部モジュールからの要求に応じて、メモリからｍ（ｍは２以上の整数）ビット単位でデータを読み出してｎ（ｎは２以上の整数）ビットのデータを出力するためのデータアクセス回路であって、
前記メモリから読み出されたデータが格納されるＭ（Ｍ≧ｎ＋ｍ、Ｍは正の整数）ビットバッファと、
前記Ｍビットバッファから読み出されるデータの記憶位置を特定するためのポインタを管理するポインタ管理部とを含み、
外部モジュールからの読み出し要求があった場合に、前記Ｍビットバッファに格納されるデータの残量が前記ポインタに基づいてｎビットより少ないと判別されたとき、前記メモリからデータを読み出して前記Ｍビットバッファにデータを補充する制御を行うと共に、前記データの残量がｍビット多くなるように前記ポインタを更新し、
前記読み出し要求があった場合に、前記Ｍビットバッファに格納されるデータが前記ポインタに基づいてｎビット以上と判別されたとき、前記Ｍビットバッファからデータを読み出して該データを前記外部モジュールに対して出力する制御を行う共に、前記データの残量がｎビット少なくなるように前記ポインタを更新することを特徴とするデータアクセス回路。
【請求項２】
請求項１において、
前記ポインタ管理部が、
外部モジュールからの返却要求があったときに、要求された返却ビット数分だけ前記データの残量が多くなるように前記ポインタを更新することを特徴とするデータアクセス回路。
【請求項３】
請求項１又は２において、
所与の禁止コードと区別するために通常コードに所与のダミーコードが挿入又は付加されて前記メモリに格納される場合に、前記メモリから読み出されるデータに前記ダミーコードの有無を検出するためのコードエミュレーション処理部を含み、
前記ダミーコードを検出したとき、前記コードエミュレーション処理部が、前記ダミーコードを削除したデータを前記Ｍビットバッファに出力し、前記ポインタ管理部が、前記ダミーコードのビット数分だけ前記Ｍビットバッファのデータの残量が多くなるように前記ポインタを更新することを特徴とするデータアクセス回路。
【請求項４】
請求項３において、
前記コードエミュレーション処理部によって前記ダミーコードが検出されたことを条件にセットされる検出フラグを含むことを特徴とするデータアクセス回路。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記ポインタの値にかかわらず前記Ｍビットバッファに格納されるデータと、前記ポインタとが読み出し可能及び書き込み可能に構成されていることを特徴とするデータアクセス回路。
【請求項６】
ストリームデータをデコードするためのデコード装置であって、
エントロピー符号化方式により符号化されたストリームデータが格納されるストリームバッファからストリームデータを読み出すための請求項１乃至５のいずれか記載のデータアクセス回路と、
前記データアクセス回路に対して読み出し要求又は返却要求を行って、前記ストリームバッファから読み出されたデータを復号化する復号化処理部とを含むことを特徴とするデコード装置。
【請求項７】
請求項６において、
前記復号化処理部が、
前記ストリームバッファから読み出されたデータを復号した後に逆量子化が行われたデータを逆離散コサイン変換し、該逆離散コサイン変換後のデータに対して動き予測又は動き補償を行った画像データを生成することを特徴とするデコード装置。
【請求項８】
請求項６又は７において、
前記復号化処理部が、
エントロピー符号化方式により符号化されたストリームデータを復号化するエントロピー復号化部を含み、
前記エントロピー復号化部が、
前記データアクセス回路に対して読み出し要求又は返却要求を行うことを特徴とするデコード装置。
【請求項９】
映像データ及び音声データの少なくとも１つを再生するための情報再生装置であって、
映像データを生成するための第１のＴＳ（Transport Stream）パケット、音声データを生成するための第２のＴＳパケット、前記第１及び第２のＴＳパケット以外の第３のＴＳパケットを、トランスポートストリームから抽出する分離処理部と、
前記第１のＴＳパケットが格納される第１の記憶領域と、前記第２のＴＳパケットが格納される第２の記憶領域と、前記第３のＴＳパケットが格納される第３の記憶領域とを有するメモリと、
前記第１の記憶領域から読み出された前記第１のＴＳパケットに基づいて前記映像データを生成する映像デコード処理を行う請求項６乃至８のいずれか記載のデコード装置と、
前記第２の記憶領域から読み出された前記第２のＴＳパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記デコード装置が、前記第１の記憶領域から前記第１のＴＳパケットを、前記音声デコーダとは独立して読み出し、該第１のＴＳパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第２の記憶領域から前記第２のＴＳパケットを、前記映像デコーダとは独立して読み出し、該第２のＴＳパケットに基づいて前記音声デコード処理を行うことを特徴とする情報再生装置。
【請求項１０】
請求項９において、
前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることを特徴とする情報再生装置。
【請求項１１】
請求項９又は１０記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含むことを特徴とする電子機器。
【請求項１２】
チューナと、
前記チューナからのトランスポートストリームが供給される請求項９又は１０記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データアクセス回路、デコード装置、情報再生装置及び電子機器に関する。
【背景技術】
【０００２】
動画像の画像データに対する汎用的な符号化方式として、ＭＰＥＧ−４（Moving Picture Experts Group Phase 4）やＨ．２６４／ＡＶＣ（Advanced Video Coding）が規格化されている。特に、Ｈ．２６４／ＡＶＣは、動き補償の画像の処理単位を細かくしたり、参照フレーム数の数を増加させたり、エントロピー符号化の工夫、デブロッキングフィルタの採用等によって、ＭＰＥＧ−４等の従来の符号化方式に比べて高い圧縮符号化効率を達成している。しかも、Ｈ．２６４／ＡＶＣは、地上デジタル放送における動画像の画像データの圧縮符号化方式として定められるに至り、Ｈ．２６４／ＡＶＣがより一層重要になってきている。
【０００３】
この地上デジタル放送は、これまでの地上アナログ放送に代わって行われる放送であり、この放送の中に、携帯端末向けサービスとして、いわゆる「１セグメント放送」がある。「１セグメント放送」では、ＱＰＳＫ（Quadrature Phase Shift Keying）変調方式で変調されたデジタル変調波をＯＦＤＭ（Orthogonal Frequency Division Multiplexing）変調方式で多重化することで、携帯端末の移動時でも安定した放送受信が可能となる。このようにバッテリ駆動の携帯電話機において、Ｈ．２６４／ＡＶＣの処理を実現することが求められ、高い処理能力を有するプロセッサを用意し、メモリに格納されるストリームデータのアクセスを高速化する必要がある。
【０００４】
例えば特許文献１には、主記憶装置とＭＰＥＧのデータ処理を行うプロセッサとの間にキャッシュ装置が設けられる構成が開示されている。これにより、主記憶装置から再読み出しを行うことなく、オーバヘッドを低減させてデータアクセスの高速化を図る。
【特許文献１】特開２００５−１０２１４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示された技術では、ＭＰＥＧのデータ処理におけるマクロブロック単位の処理や参照画素データを用いた処理に着目しており、複雑な構成及び制御が必要なキャッシュ装置を用いる必要がある。
【０００６】
また、ストリームデータの可変長復号を行う場合、復号処理を開始して初めて必要なビット数が判明する。そのため、キャッシュ装置を用いた場合であっても、可変長復号の処理中にストリームデータをバッファリングしておく必要があり、構成が複雑化してしまうという問題がある。
【０００７】
本発明は、以上のような技術的課題に鑑みてなされたものであり、第１の目的は、簡素な構成で、メモリに格納されたデータのアクセスを高速化できるデータアクセス回路、デコード装置、情報再生装置及び電子機器を提供することにある。
【０００８】
本発明の第２の目的は、簡素な構成で、例えば可変長復号に好適なデータアクセス回路、デコード装置、情報再生装置及び電子機器を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために本発明は、
外部モジュールからの要求に応じて、メモリからｍ（ｍは２以上の整数）ビット単位でデータを読み出してｎ（ｎは２以上の整数）ビットのデータを出力するためのデータアクセス回路であって、
前記メモリから読み出されたデータが格納されるＭ（Ｍ≧ｎ＋ｍ、Ｍは正の整数）ビットバッファと、
前記Ｍビットバッファから読み出されるデータの記憶位置を特定するためのポインタを管理するポインタ管理部とを含み、
外部モジュールからの読み出し要求があった場合に、前記Ｍビットバッファに格納されるデータの残量が前記ポインタに基づいてｎビットより少ないと判別されたとき、前記メモリからデータを読み出して前記Ｍビットバッファにデータを補充する制御を行うと共に、前記データの残量がｍビット多くなるように前記ポインタを更新し、
前記読み出し要求があった場合に、前記Ｍビットバッファに格納されるデータが前記ポインタに基づいてｎビット以上と判別されたとき、前記Ｍビットバッファからデータを読み出して該データを前記外部モジュールに対して出力する制御を行う共に、前記データの残量がｎビット少なくなるように前記ポインタを更新するデータアクセス回路に関係する。
【００１０】
本発明によれば、外部モジュールが読み出すデータが既にＭビットバッファに格納されている場合、該外部モジュールは直ぐに所望のデータを取得でき、メモリに格納されたデータのアクセスを高速化できるようになる。
【００１１】
また本発明に係るデータアクセス回路では、
前記ポインタ管理部が、
外部モジュールからの返却要求があったときに、要求された返却ビット数分だけ前記データの残量が多くなるように前記ポインタを更新することができる。
【００１２】
本発明によれば、上記効果に加えて、処理を開始して初めて必要なビット数が判明するようなストリームデータの可変長復号を行う場合であっても、処理中にストリームデータをバッファリングしておく必要がない上に、データアクセス回路が何度もメモリにアクセスする必要がなく、可変長復号処理に好適なデータアクセス回路を提供できるようになる。
【００１３】
また本発明に係るデータアクセス回路では、
所与の禁止コードと区別するために通常コードに所与のダミーコードが挿入又は付加されて前記メモリに格納される場合に、前記メモリから読み出されるデータに前記ダミーコードの有無を検出するためのコードエミュレーション処理部を含み、
前記ダミーコードを検出したとき、前記コードエミュレーション処理部が、前記ダミーコードを削除したデータを前記Ｍビットバッファに出力し、前記ポインタ管理部が、前記ダミーコードのビット数分だけ前記Ｍビットバッファのデータの残量が多くなるように前記ポインタを更新することができる。
【００１４】
また本発明に係るデータアクセス回路では、
前記コードエミュレーション処理部によって前記ダミーコードが検出されたことを条件にセットされる検出フラグを含むことができる。
【００１５】
上記のいずれかの発明によれば、ストリームデータを制御するためのスタートコードのような禁止コードが含まれる場合であっても、処理中にストリームデータをバッファリングしておく必要がない上に、データアクセス回路が何度もメモリにアクセスする必要がなく、メモリに対するデータアクセスを高速化することができる。
【００１６】
また本発明に係るデータアクセス回路では、
前記ポインタの値にかかわらず前記Ｍビットバッファに格納されるデータと、前記ポインタとが読み出し可能に構成されていてもよい。
【００１７】
本発明によれば、メモリへのデータアクセスの途中に、外部モジュールにおいて別の処理が開始された場合であっても、データアクセス回路の状態を退避させることができる。この場合、外部モジュールで別の処理が終了すると、退避させたデータアクセス回路の状態を元に戻すことができる。この結果、外部モジュールにおいて優先度が異なる処理を行う場合であっても、データアクセス回路によりデータアクセスを高速化できる。
【００１８】
また本発明は、
ストリームデータをデコードするためのデコード装置であって、
エントロピー符号化方式により符号化されたストリームデータが格納されるストリームバッファからストリームデータを読み出すための上記のいずれか記載のデータアクセス回路と、
前記データアクセス回路に対して読み出し要求又は返却要求を行って、前記ストリームバッファから読み出されたデータを復号化する復号化処理部とを含むデコード装置に関係する。
【００１９】
また本発明に係るデコード装置では、
前記復号化処理部が、
前記ストリームバッファから読み出されたデータを復号した後に逆量子化が行われたデータを逆離散コサイン変換し、該逆離散コサイン変換後のデータに対して動き予測又は動き補償を行った画像データを生成することができる。
【００２０】
また本発明に係るデコード装置では、
前記復号化処理部が、
エントロピー符号化方式により符号化されたストリームデータを復号化するエントロピー復号化部を含み、
前記エントロピー復号化部が、
前記データアクセス回路に対して読み出し要求又は返却要求を行うことができる。
【００２１】
上記のいずれかの発明によれば、簡素な構成で、メモリに格納されたデータのアクセスを高速化し、可変長復号に好適なデコード装置を提供できる。
【００２２】
また本発明は、
映像データ及び音声データの少なくとも１つを再生するための情報再生装置であって、
映像データを生成するための第１のＴＳ（Transport Stream）パケット、音声データを生成するための第２のＴＳパケット、前記第１及び第２のＴＳパケット以外の第３のＴＳパケットを、トランスポートストリームから抽出する分離処理部と、
前記第１のＴＳパケットが格納される第１の記憶領域と、前記第２のＴＳパケットが格納される第２の記憶領域と、前記第３のＴＳパケットが格納される第３の記憶領域とを有するメモリと、
前記第１の記憶領域から読み出された前記第１のＴＳパケットに基づいて前記映像データを生成する映像デコード処理を行う上記のいずれか記載のデコード装置と、
前記第２の記憶領域から読み出された前記第２のＴＳパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記デコード装置が、前記第１の記憶領域から前記第１のＴＳパケットを、前記音声デコーダとは独立して読み出し、該第１のＴＳパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第２の記憶領域から前記第２のＴＳパケットを、前記映像デコーダとは独立して読み出し、該第２のＴＳパケットに基づいて前記音声デコード処理を行う情報再生装置に関係する。
【００２３】
本発明によれば、上記の効果に加えて、処理能力の低い処理回路を用いて低消費電力で、処理負荷の重いデコード処理を実現する情報再生装置を提供できる。
【００２４】
また本発明に係る情報再生装置では、
前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることができる。
【００２５】
本発明によれば、情報再生装置のより一層の低消費電力化を実現できる。
【００２６】
また本発明は、
上記記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含む電子機器に関係する。
【００２７】
また本発明は、
チューナと、
前記チューナからのトランスポートストリームが供給される上記記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも１つの処理開始を指示するホストとを含む電子機器に関係する。
【００２８】
上記のいずれかの発明によれば、上記の効果に加えて、処理負荷の重い１セグメント放送の再生処理を低消費電力で実現できる電子機器を提供できる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
【００３０】
１．  データアクセス回路
図１に、本実施形態におけるデータアクセス回路の構成例のブロック図を示す。
【００３１】
本実施形態におけるデータアクセス回路１０は、データアクセス回路１０の外部に設けられた外部モジュールとしてのデータ処理回路８０からの要求に応じて、メモリ９０からｍ（ｍは２以上の整数）ビット単位でデータを読み出してｎ（ｎは２以上の整数）ビットのデータを出力する。即ち、データ処理回路８０は、メモリ９０からデータを読み出す際に、データアクセス回路１０に対して読み出し要求を行って、データアクセス回路１０がメモリ９０にアクセスする。ここで、データ処理回路８０は、メモリ９０から読み出されるデータの加工（例えば可変長復号）処理を行うことができる。
【００３２】
データアクセス回路１０は、データ処理回路８０（外部モジュール）からの要求に起因してメモリ９０から読み出されるデータが格納されるＭ（Ｍは正の整数）ビットバッファ２０と、Ｍビットバッファ２０から読み出されるデータの記憶位置を特定するためのポインタＲＰを管理するバッファポインタ管理部（広義にはポインタ管理部）３０とを含む。
【００３３】
そして、メモリ９０に格納されたデータの読み出し要求がデータ処理回路８０からあった場合に、Ｍビットバッファ２０に格納されるデータの残量がポインタＲＰに基づいてｎ（ｎは２以上の整数）ビットより少ないと判別されたとき、データアクセス回路１０は、メモリ９０からデータを読み出してＭビットバッファ２０にデータを補充する制御を行うと共に、Ｍビットバッファ２０に格納されるデータの残量がｍ（ｍは２以上の整数、但し、Ｍ≧ｎ＋ｍ）ビット多くなるようにポインタＲＰを更新する。
【００３４】
また、メモリ９０に格納されたデータの読み出し要求がデータ処理回路８０からあった場合に、Ｍビットバッファ２０に格納されるデータがポインタＲＰに基づいてｎビット以上と判別されたとき、Ｍビットバッファ２０からデータを読み出して該データをデータ処理回路８０に対して出力する制御を行う共に、Ｍビットバッファ２０に格納されるデータの残量がｎビット少なくなるようにポインタＲＰを更新する。
【００３５】
図２に、バッファポインタ管理部３０によって管理されるポインタＲＰの説明図を示す。
【００３６】
Ｍビットバッファ２０には、メモリ９０から読み出されたｍビットのデータが図２において右詰めで格納される。そのため、Ｍビットバッファ２０からデータが読み出されると、所与のタイミングで、残りのデータがＭビットバッファ２０内で右方向にシフトされる。このとき、ポインタＲＰは、Ｍビットバッファ２０から読み出されるデータの記憶位置に関連付けられている。より具体的には、ポインタＲＰは、Ｍビットバッファ２０内のデータの残量に関連付けられている。例えば、Ｍビットバッファ２０に格納されるデータの残量が１ビットの場合にはポインタＲＰの値が１、該残量がｎビットの場合にはポインタＲＰの値がｎとなる。
【００３７】
図１において、データアクセス回路１０は、更にメモリアクセス制御部４０を含む。
【００３８】
図３に、メモリアクセス制御部４０の構成例のブロック図を示す。
【００３９】
メモリアクセス制御部４０は、リクエスト処理部４２と、読み出しアドレス生成部４４とを含む。リクエスト処理部４２は、データ処理回路８０からのｇｅｔリクエストを受け付ける。ｇｅｔリクエストは、データ処理回路８０からの読み出し要求と、データ処理回路８０が要求するデータのビット数とを含む。リクエスト処理部４２は、ｇｅｔリクエストに基づいて、メモリ９０に対して読み出し要求Ｒｒｅｑを出力する。
【００４０】
読み出しアドレス生成部４４は、ｇｅｔリクエストの種類及びバッファポインタ管理部３０で管理されるポインタＲＰに基づいて、メモリ９０の読み出しアドレスＲＡＤを生成する。読み出しアドレスＲＡＤは、読み出し要求Ｒｒｅｑと共に、メモリ９０に対して出力される。
【００４１】
こうしてメモリ９０からデータが読み出されると、バッファポインタ管理部３０は、Ｍビットバッファ２０に格納されるデータの残量がｍビット多くなるようにポインタＲＰを更新する。
【００４２】
図１において、データアクセス回路１０は、更にデータ出力制御部５０を含むことができる。
【００４３】
データ出力制御部５０は、データ処理回路８０に対して読み出し承認Ａｃｋを出力すると共に、バッファポインタ管理部３０で管理されるポインタＲＰに基づいて、Ｍビットバッファ２０から読み出されたｎビットのデータをデータ処理回路８０に対して出力する。このとき、バッファポインタ管理部３０は、Ｍビットバッファ２０内のデータの残量がｎビット少なくなるようにポインタＲＰを更新する。
【００４４】
またデータアクセス回路１０は、更に返却リクエスト制御部６０を含むことができる。返却リクエスト制御部６０には、データ処理回路８０からｕｎｇｅｔリクエストが入力される。ｕｎｇｅｔリクエストは、データ処理回路８０からのデータ返却要求と、データ処理回路８０が返却を要求するデータの返却ビット数とを含む。バッファポインタ管理部３０は、返却リクエスト制御部６０からのｕｎｇｅｔリクエストで指定された返却ビット数分だけ、Ｍビットバッファ２０のデータの残量が多くなるようにポインタＲＰを更新する。即ち、バッファポインタ管理部３０は、外部モジュールとしてのデータ処理回路８０からの返却要求があったときに、要求された返却ビット数分だけデータの残量が多くなるようにポインタＲＰを更新する。
【００４５】
このように、本実施形態では、メモリ９０からデータ補充の際とｕｎｇｅｔリクエストの際に、データアクセス回路１０が管理するＭビットバッファ２０のデータ残量を示すポインタＲＰが、データ残量が多くなるように更新される。
【００４６】
図１では、データ処理回路８０がｇｅｔリクエスト及びｕｎｇｅｔリクエストをデータアクセス回路１０に対して出力するものとして説明したが、これに限定されるものではない。ｇｅｔリクエストを出力するモジュールとｕｎｇｅｔリクエストモジュールを出力するモジュールとを、異ならせてもよい。
【００４７】
図４に、本実施形態におけるデータアクセス回路１０の動作例のフロー図を示す。
【００４８】
まず、データアクセス回路１０では、メモリアクセス制御部４０においてｇｅｔリクエストの有無が監視される（ステップＳ１０）。
【００４９】
ステップＳ１０において、データ処理回路８０からのｇｅｔリクエストが検出されたとき（ステップＳ１０：Ｙ）、バッファポインタ管理部３０では、ポインタＲＰの判別処理が行われる（ステップＳ１１）。
【００５０】
ステップＳ１１において、ポインタＲＰがｎより小さいとき（ステップＳ１１：Ｙ）、即ち、ポインタＲＰに基づいてＭビットバッファ２０のデータ残量がｎビットより少ないと判別されたとき、メモリアクセス制御部４０は、メモリ９０に対して読み出しアドレスＲＡＤ及び読み出し要求Ｒｒｅｑを出力する（ステップＳ１２）。その後、メモリ９０から読み出された読み出しデータＲＤがＭビットバッファ２０内に格納され（ステップＳ１３）、バッファポインタ管理部３０が、Ｍビットバッファ２０のデータ残量がｍビットだけ多くなるようにポインタＲＰを更新する（ステップＳ１４）。その後、ステップＳ１１に戻る。
【００５１】
ステップＳ１１において、ポインタＲＰがｎ以上のとき（ステップＳ１１：Ｎ）、即ち、ポインタＲＰに基づいてＭビットバッファ２０のデータ残量がｎビット以上と判別されたとき、データ出力制御部５０は、データ処理回路８０に対して読み出し承認Ａｃｋを出力すると共に、Ｍビットバッファ２０からｎビットのデータを読み出し、該データを読み出しデータとしてデータ処理回路８０に対して出力する（ステップＳ１５）。その後、バッファポインタ管理部３０が、Ｍビットバッファ２０のデータ残量がｎビットだけ少なくなるようにポインタＲＰを更新し（ステップＳ１６）、次のｇｅｔリクエストの監視が行われる（リターン）。
【００５２】
一方、ステップＳ１０において、ｇｅｔリクエストが検出されないとき（ステップＳ１０：Ｎ）、データアクセス回路１０では、返却リクエスト制御部６０においてｕｎｇｅｔリクエストの有無が監視される（ステップＳ１７）。
【００５３】
ステップＳ１７において、データ処理回路８０からのｕｎｇｅｔリクエストが検出されたとき（ステップＳ１７：Ｙ）、バッファポインタ管理部３０では、返却ビット数分だけＭビットバッファ２０のデータ残量が多くなるようにポインタＲＰを更新し（ステップＳ１８）、次のｇｅｔリクエストの監視が行われる（リターン）。
【００５４】
またステップＳ１７において、データ処理回路８０からのｕｎｇｅｔリクエストが検出されなかったとき（ステップＳ１７：Ｎ）、次のｇｅｔリクエストの監視が行われる（リターン）。
【００５５】
以上のように、データ処理回路８０が読み出すデータが既にＭビットバッファ２０に格納されている場合、データ処理回路８０は直ぐに所望のデータを取得でき、メモリ９０に格納されたデータのアクセスを高速化できるようになる。また、処理を開始して初めて必要なビット数が判明するようなストリームデータの可変長復号を行う場合であっても、処理中にストリームデータをバッファリングしておく必要がない上に、データアクセス回路１０が何度もメモリ９０にアクセスする必要がなく、可変長復号処理に好適なデータアクセス回路を提供できるようになる。
【００５６】
なお図１において、データアクセス回路１０では、ポインタの値にかかわらず、Ｍビットバッファ２０に格納されるデータと、バッファポインタ管理部３０で管理されるポインタとが読み出し可能及び書き込み可能に構成されていることが望ましい。こうすることで、メモリ９０へのデータアクセスの途中に、データ処理回路８０において別の処理が開始された場合であっても、データアクセス回路１０の状態を退避させることができる。この場合、データ処理回路８０で別の処理が終了すると、退避させたデータアクセス回路１０の状態を元に戻すことができる。この結果、データ処理回路８０において優先度が異なる処理を行う場合であっても、データアクセス回路１０によりデータアクセスを高速化できる。
【００５７】
更にデータアクセス回路１０は、スタートコードエミュレーション処理部（広義には、コードエミュレーション処理部）７０を含むことができる。スタートコードエミュレーション処理部７０は、スタートコードを検出する処理を行うと共に、スタートコードと通常のコードとを区別するために行われたエミュレーションの対策処理を行う。
【００５８】
図５に、スタートコードに対して行われるエミュレーションの説明図を示す。
【００５９】
スタートコードは、ビットストリームであるストリームデータの同期コードである。ストリームデータ内では、通常のコンテンツコードの他に、各種の制御コードが埋め込まれる。そこで、ストリームデータに含まれるコンテンツコードとスタートコードとを区別するために、通常コードであるコンテンツコードに対してエミュレーション処理が行われ、エミュレーション処理後のコードがストリームデータ内に設定されて伝送されるようになっている。
【００６０】
例えば、スタートコードとして「０００００１」が規定されているものとする。ストリームデータが「０００００１」の場合、該コードがコンテンツコードの「０００００１」なのか、スタートコードなのか判別することができない。そこで、ストリームデータを生成する側で、コンテンツコードにダミーコードを付加又は挿入し、ストリームデータを受信する側で、スタートコードとコンテンツコードとの区別を容易化している。
【００６１】
上記の場合、ストリームデータを生成する側で、スタートコードをストリームデータ内に設定する場合に、スタートコードに「０３」を挿入して「０００００３０１」とする。従って、ストリームデータを受信する側では、「０００００３０１」を検出したときには、スタートコード「０００００１」であることを認識しなければならない。このような認識を行うための処理が、スタートコードエミュレーション処理部７０において行われる。
【００６２】
図６に、図１のスタートコードエミュレーション処理部７０の動作例のフロー図を示す。
【００６３】
スタートコードエミュレーション処理部７０では、メモリ９０から読み出しデータＲＤの有無を検出する（ステップＳ２０）。ステップＳ２０において、読み出しデータＲＤが検出されたとき（ステップＳ２０：Ｙ）、メモリ９０からの読み出しデータＲＤをＭビットバッファ２０に格納する（ステップＳ２１）。そして、スタートコードエミュレーション処理部７０は、バッファポインタ管理部３０に対してポインタＲＰの更新指示を行い（ステップＳ２２）、スタートコードの検出処理を行う（ステップＳ２３）。
【００６４】
スタートコードエミュレーション処理部７０は、読み出しデータＲＤに「０００００３」が含まれるか否かを検出する（ステップＳ２４）。読み出しデータＲＤに「０００００３」が含まれていることが検出されたとき（ステップＳ２４：Ｙ）、読み出しデータＲＤから「０３」を削除し（ステップＳ２５）、スタートコードエミュレーション処理部７０の処理開始時に初期化される検出フラグ７２をセットする（ステップＳ２６）。そして、スタートコードエミュレーション処理部７０は、バッファポインタ管理部３０に対してポインタＲＰの更新指示を行い（ステップＳ２７）、次の読み出しデータの監視を行う（リターン）。
【００６５】
ステップＳ２０において、読み出しデータＲＤが検出されないとき（ステップＳ２０：Ｎ）、又はステップＳ２４において、読み出しデータＲＤに「０００００３」が含まれないと検出されたとき（ステップＳ２４：Ｎ）、ステップＳ２０に戻る（リターン）。
【００６６】
以上のように、スタートコードエミュレーション処理部７０は、スタートコード（所与の禁止コード）と区別するために通常コードに「０３」（所与のダミーコード）が挿入又は付加されてメモリ９０に格納される場合に、メモリ９０から読み出されるデータに「０３」の有無を検出する処理を行うことができる。そして、「０３」を含む「０００００３」を検出したとき、スタートコードエミュレーション処理部７０が、「０３」を削除したデータをＭビットバッファ２０に出力し、バッファポインタ管理部３０が、「０３」のビット数分だけＭビットバッファ２０内のデータの残量が多くなるようにポインタＲＰを更新することができる。
【００６７】
また、データアクセス回路１０は、スタートコードエミュレーション処理部７０によって「０３」が検出されたことを条件にセットされる検出フラグ７２を含むということができる。
【００６８】
なお、ステップＳ２５において、「０３」を削除する処理として、一旦、Ｍビットバッファ２０に格納されたデータのうち「０３」を削除した後に、バッファポインタ管理部３０においてポインタＲＰを１減らしてもよいし、Ｍビットバッファ２０に格納する際に「０３」を削除し、バッファポインタ管理部３０において（ｍ−１）ビットだけデータ残量が多くなるようにポインタＲＰを更新するようにしてもよい。
【００６９】
図７に、本実施形態におけるスタートコードエミュレーション処理部７０の動作結果の一例の説明図を示す。
【００７０】
上述のように検出フラグ７２がセットされて「１」の状態で、Ｍビットバッファ２０に格納されるデータが「０００００１」のとき、通常コードとして判別することができる。これに対して、検出フラグ７２がセットされておらず「０」の状態で、Ｍビットバッファ２０に格納されるデータが「０００００１」のとき、スタートコードとして判別することができる。
【００７１】
以上説明したように、ストリームデータを制御するためのスタートコードが含まれる場合であっても、処理中にストリームデータをバッファリングしておく必要がない上に、データアクセス回路１０が何度もメモリ９０にアクセスする必要がなく、メモリ９０に対するデータアクセスを高速化することができる。
【００７２】
２．  デコード装置
次に、本実施形態におけるデータアクセス回路１０が適用されるデコード装置について説明する。
【００７３】
図８に、本実施形態におけるデコード装置の構成例のブロック図を示す。
【００７４】
本実施形態におけるデコード装置５００は、エンコードされたストリームデータのデコード処理を行う。ここでストリームデータは、エントロピー符号化方式により符号化されたデータである。
【００７５】
本実施形態では、画像の水平方向の所与の画素数、垂直方向の所与のライン数を単位とする１マクロブロック（Macro Block：ＭＢ)分のデータブロック単位のデータに対して行われるＨ．２６４／ＡＶＣ規格の一連のデコード処理を実現するようになっている。より具体的には、デコード装置５００は、Ｈ．２６４／ＡＶＣ規格に従って、エントロピー符号化方式により符号化されたストリームデータを復号し、その後に逆量子化されたデータを生成する。
【００７６】
そのため、デコード装置５００は、コンテキスト適応型可変長符号化（Context-Adaptive Variable Length Coding：以下、ＣＡＶＬＣと略す。）部５１０と、逆量子化部５２０と、パラメータ解析部５３０と、逆離散コサイン変換（Discrete Cosine Transform：以下、ＤＣＴ）部５４０と、加算部５４２と、デブロックフィルタ５５０と、出力画像バッファ５６０と、動き補償部５７０と、動き予測部５８０とを含む。パラメータ解析部５３０は、イントラ用パラメータ解析部５３２と、インタ用パラメータ解析部５３４とを含む。動き予測部５８０は、画面内予測部５８２と、重み付き予測部５８４とを含む。
【００７７】
図９に、図８のＣＡＶＬＣ部５１０の構成例のブロック図を示す。
【００７８】
ＣＡＶＬＣ部５１０は、ＣＡＶＬＣ処理部５１２と、データアクセス回路５１４とを含む。ＣＡＶＬＣ処理部５１２は、図１のデータ処理回路８０として機能する。データアクセス回路５１４は、図１のデータアクセス回路１０として機能する。
【００７９】
ＣＡＶＬＣ処理部５１２は、データアクセス回路５１４を介して、図示しないストリームバッファから読み出したストリームに対して、エントロピー符号化されたデータを復号する。
【００８０】
図８及び図９において、ＣＡＶＬＣ部５１０のＣＡＶＬＣ処理部５１２と、逆量子化部５２０と、パラメータ解析部５３０と、逆ＤＣＴ演算部５４０と、加算部５４２と、デブロックフィルタ５５０と、出力画像バッファ５６０と、動き補償部５７０と、動き予測部５８０とを、復号化処理部ということができる。従って、復号化処理部は、ストリームバッファから読み出されたデータを復号した後に逆量子化が行われたデータを逆離散コサイン変換し、該逆離散コサイン変換後のデータに対して動き予測又は動き補償を行った画像データを生成するということができる。また、復号化処理部は、エントロピー符号化方式により符号化されたストリームデータを復号化するエントロピー復号化部としてのＣＡＶＬＣ部５１０を含婿とができる。この場合、ＣＡＶＬＣ部５１０が、データアクセス回路に対して読み出し要求又は返却要求を行う。
【００８１】
図８及び図９の各部は、図示しない制御回路によって制御が行われるようになっている。
【００８２】
図１０に、図８のデコード装置５００の処理の流れの概要のフロー図を示す。
【００８３】
デコード装置５００では、まず、ＩＤＲ（Instantaneous Decoding Refresh）ブロックの先頭が検出される（ステップＳ１００）。ＩＤＲブロックは、ランダムアクセス機能を実現するために、過去のピクチャを参照することなく復号するためのブロックである。
【００８４】
次に、デコード装置５００では、ストリームデータから所定のデータ単位を読み出してデコード処理に必要なパラメータ解析を行って、画像データを生成するためのビットデータの抽出や、動き予測等に必要なパラメータ（動きベクトル情報）等を求める（ステップＳ１０１）。
【００８５】
その後、ＣＡＶＬＣ部５１０がＣＡＶＬＣ処理を行って、エントロピー符号化方式で符号化されたストリームデータを復号する処理を行う（ステップＳ１０２）。
【００８６】
そして、逆量子化部５２０によって逆量子化されたデータに対して、逆ＤＣＴ演算部５４０が、逆ＤＣＴ演算を行って動き予測又は動き補償を行った画像データを生成する（ステップＳ１０３）。
【００８７】
ステップＳ１０３において生成された画像データは、デブロックフィルタ５５０によってブロックノイズを低減させる処理が行われて出力画像の画像データとして出力される（ステップＳ１０４）。
【００８８】
そして、画像を分割した最終ＭＢであるか否かが判別され（ステップＳ１０５）、最終ＭＢであると判別されたとき（ステップＳ１０５：Ｙ）、一連の処理を終了し、最終ＭＢではないと判別されたとき（ステップＳ１０５：Ｎ）、ステップＳ１０１に戻る。
【００８９】
２．１  ＣＡＶＬＣ処理
デコード装置５００では、ストリームデータからパラメータを抽出するヘッダ解析処理、エントロピー符号化方式により符号化されたストリームデータから抽出されたデータを復号するＣＡＶＬＣ処理、逆量子化処理が行われる。
【００９０】
図１１に、パラメータ解析部５３０によるヘッダ解析処理の一例のフロー図を示す。
【００９１】
パラメータ解析部５３０が、ストリームバッファからストリームデータを読み出す場合に、例えばストリームバッファに格納されたストリームデータから所定ビット数のデータを読み出す（ステップＳ１１０）。パラメータ解析部５３０のイントラ用パラメータ解析部５３２は、ステップＳ１１０で読み出したデータがイントラ用パラメータであるか否かを判別し、インタ用パラメータ解析部５３４は、ステップＳ１１０で読み出したデータがインタ用パラメータであるか否かを判別する（ステップＳ１１１）。その結果、イントラ用パラメータ又はインタ用パラメータであると判別されたとき（ステップＳ１１１：Ｙ）、イントラ用パラメータ又はインタ用パラメータを求める（ステップＳ１１２）。
【００９２】
ステップＳ１１１において、イントラ用パラメータ又はインタ用パラメータではないと判別されたとき（ステップＳ１１１：Ｎ）、或いはイントラ用パラメータ又はインタ用パラメータを求めると、次のパラメータのビット位置を求める（ステップＳ１１３）。これは、パラメータの種類やデータサイズ等が規定され、ストリームデータを前の方から順番に解析する必要があることを意味する。
【００９３】
こうして、次のビット位置が特定されると、ヘッダ解析が終了のとき（ステップＳ１１４：Ｙ）、一連の処理を終了し、ヘッダ解析を継続するとき（ステップＳ１１４：Ｎ）、ステップＳ１１０に戻って、ストリームデータから次の所定ビット数のデータを読み出す。
【００９４】
例えば図１０のＩＤＲブロックの先頭の検出処理や、該検出処理後のパラメータ解析処理では、上述のようにストリームデータをアクセスしながら各処理が行われる。
【００９５】
以上のようなヘッダ解析が行われると、デコード処理対象の画像データのビット位置が特定でき、ＣＡＶＬＣ部５１０における復号化処理が開始される。
【００９６】
図１２に、ＣＡＶＬＣ部５１０の処理の一例のフロー図を示す。
【００９７】
ＣＡＶＣＬ部５１０は、例えばストリームバッファに格納されたストリームデータから所定ビット数のデータを読み出す（ステップＳ１２０）。このとき、後述するように、図９のデータアクセス回路５１４が、ストリームバッファにアクセスする。
【００９８】
そして、ＣＡＶＬＣ部５１０は、ステップＳ１２０で読み出したデータがＣＡＶＬＣデータであるか否かを判別する（ステップＳ１２１）。ここで、ＣＡＶＬＣデータは、ＣＡＶＬＣにより符号化されたデータである。
【００９９】
ＣＡＶＬＣデータであると判別されたとき（ステップＳ１２１：Ｙ）、図１１のヘッダ解析によって得られたパラメータを用いてＣＡＶＬＣ演算を行い（ステップＳ１２２）、一連の処理を終了する（エンド）。
【０１００】
なおステップＳ１２１において、ＣＡＶＬＣデータではないと判別されたとき（ステップＳ１２１：Ｎ）、一連の処理を終了する（エンド）。
【０１０１】
図１３（Ａ）、図１３（Ｂ）、図１３（Ｃ）に、ＣＡＶＬＣ演算の説明図を示す。
【０１０２】
図１３（Ａ）は、画像の水平方向に４画素、画像の垂直方向に４ライン分のデータブロックの量子化されたＤＣＴ係数値ＥＤ１１、ＥＤ１２、ＥＤ１３、・・・、ＥＤ４４を示している。ストリームデータの符号化側では、図１３（Ａ）に示す順序でデータが一次元化され、一旦、図１３（Ｂ）に示すようなデータ列が生成される。その後、図１３（Ｂ）に示すデータ列をエントロピー符号化方式により符号化することでストリームデータが生成される。
【０１０３】
より具体的には、図１３（Ｃ）に示すパラメータ値を順番に格納していくことで符号化される。図１３（Ｃ）において、TotalCoeffは、図１３（Ｂ）のデータ列の「非０係数の個数」を示す。TrailingOnesは、図１３（Ｂ）のデータ列の「最後に連続する絶対値１の係数の個数」を示す。Trailing_ones_sign_flagは、図１３（Ｂ）のデータ列の「最後に連続する絶対値１の係数の符号」を示す。levelは、図１３（Ｂ）のデータ列の「量子化されたＤＣＴ係数値」を示す。total_zerosは、図１３（Ｂ）の「最後の非０係数以前の０係数の個数」を示す。run_beforeは、図１３（Ｂ）の「係数値の前の０の連続個数」を示す。
【０１０４】
ところで、上述のようにＣＡＶＬＣ部５１０で復号されたデータは、更にゴロム（Golomb）符号により符号化されている。従って、ＣＡＶＬＣ部５１０は、更にゴロム符号化されたデータを復号することができるようになっている。
【０１０５】
図１４（Ａ）、図１４（Ｂ）、図１４（Ｃ）に、ゴロム符号の説明図を示す。
【０１０６】
ゴロム符号は、ＣＡＶＬＣと同様にＨ．２６４／ＡＶＣ規格において採用された符号化方式である。ゴロム符号は、図１４（Ａ）に示すように、セパレータＳＰＲである「１」を境界に、プリフィックス（Ｐｒｅｆｉｘ）部ＰＸ、サフィックス（Ｓｕｆｆｉｘ）部ＳＸを含む。プリフィックス部ＰＸは「０」が所定の個数だけ連続し、サフィックス部ＳＸは、符号化対象のデータに応じてプリフィックス部ＰＸと同数の「０」又は「１」が入る。ここで、図１４（Ａ）に示すゴロム符号は、図１４（Ｂ）に示すテーブルに従って符号番号に割り当てられる。更に、図１４（Ｂ）に示す符号番号は、図１４（Ｃ）に示すテーブルに従ってシンタックス要素値に割り当てられる。
【０１０７】
そして、ＣＡＶＬＣ部５１０は、図１３（Ｃ）のようにパラメータ化された数値を解析して、図１３（Ｂ）に示すデータ列に変換する。そして、ＣＡＶＬＣ部５１０は、図１３（Ａ）に示すように、量子化されたＤＣＴ係数値群を生成することができる。このとき、ＣＡＶＬＣ部５１０は、復号されたデータに対し、図１４（Ｃ）に示すテーブル、図１４（Ｂ）に示すテーブルに従って割り出されたゴロム符号を元に、復号化する。
【０１０８】
図１５に、図９のＣＡＶＬＣ部５１０の動作例のフロー図を示す。
【０１０９】
まず、ＣＡＶＬＣ処理部５１２は、当該ＭＢの近傍のＭＢの情報に基づいて、上述のテーブルを選択する。即ち、ＣＡＶＬＣ処理部５１２は、画像の垂直方向に当該ＭＢに対して上側に位置するＭＢと、該画像の水平方向に当該ＭＢに対して左側に位置するＭＢとの間で、各ＭＢの有効な係数の平均値を用いて、復号のためのテーブルを選択する。
【０１１０】
続いて、ＣＡＶＬＣ処理部５１２は、データアクセス回路５１４に対して所定の要求ビット数を付加したｇｅｔリクエストを発行し（ステップＳ１３１）、当該ＭＢの有効係数を取得する（ステップＳ１３２）。データアクセス回路５１４では、ｇｅｔリクエストを受け付けると、上述のように、内部のＭビットバッファに所与のビット数が存在していなければ、図示しないストリームバッファにアクセスしてビットデータを補充する制御を行う。こうして、所与のビット数のデータが得られると、ＣＡＶＣＬ処理部５１２は、当該ＭＢの係数のうち「非０係数」があるか否かを判別する一方、データアクセス回路５１４により、不要なビットについてはｕｎｇｅｔリクエストにより返却する（ステップＳ１３３）。
【０１１１】
ＣＡＶＬＣ処理部５１２は、再び、データアクセス回路５１４に対して所定の要求ビット数を付加したｇｅｔリクエストを発行し（ステップＳ１３４）、ステップＳ１３０で選択したテーブルを用いて上述のように有効係数を復元する（ステップＳ１３５）一方、データアクセス回路５１４により、不要なビットについてはｕｎｇｅｔリクエストにより返却する（ステップＳ１３６）。
【０１１２】
ＣＡＶＬＣ処理部５１２は、更に再び、データアクセス回路５１４に対して所定の要求ビット数を付加したｇｅｔリクエストを発行し（ステップＳ１３７）、「０係数」の個数を検出する（ステップＳ１３８）一方、データアクセス回路５１４により、不要なビットについてはｕｎｇｅｔリクエストにより返却する（ステップＳ１３９）。
【０１１３】
次に、ＣＡＶＬＣ処理部５１２は、データアクセス回路５１４に対して所定の要求ビット数を付加したｇｅｔリクエストを発行し（ステップＳ１４０）、「０係数」の連続個数を検出する（ステップＳ１４１）一方、データアクセス回路５１４により、不要なビットについてはｕｎｇｅｔリクエストにより返却する（ステップＳ１４２）。
【０１１４】
最後に、ＣＡＶＬＣ処理部５１２は、データアクセス回路５１４に対して所定の要求ビット数を付加したｇｅｔリクエストを発行し（ステップＳ１４３）、検出された各種のデータを図１３（Ａ）に示すジグザグスキャンの方向に基づいて並び替えることでエントロピー符号化された係数を復元してＭＢ単位のデータを生成し（ステップＳ１４４）、一連の処理を終了する（エンド）。
【０１１５】
以上のようにエントロピー符号化方式により符号化されたストリームデータが復号されると、復号後のデータが逆量子化部５２０に入力される。
【０１１６】
２．２  逆量子化処理
図１６に、逆量子化部５２０の処理の説明図を示す。
【０１１７】
上述のＤＣＴ係数値は、量子化ステップで除算した結果を整数値に丸めた値である。そのため、逆量子化部５２０は、上述の復号の結果として得られたＤＣＴ係数値に対し、量子化ステップを乗算することで、逆ＤＣＴ演算部５４０に供給されるデータを生成する。
【０１１８】
このとき、図１６に示すような特性に従って量子化ステップを求めることが望ましい。図１６では、量子化パラメータを横軸に、量子化ステップを縦軸に示した場合に、量子化パラメータと量子化ステップとが非線形性を有する。より具体的には、ＤＣＴ係数値として量子化パラメータが与えられると、図１６に示す特性に従って量子化ステップを求める。更に具体的には、量子化パラメータと量子化ステップの対数が比例するように、量子化ステップを導出する。
【０１１９】
そして、この量子化ステップと量子化パラメータとを用いて、逆ＤＣＴ演算部５４０に供給されるデータを生成する。
【０１２０】
２．３  画像データの生成処理
図８において、逆ＤＣＴ演算部５４０は、逆量子化部５２０からのデータに対して、Ｈ．２６４／ＡＶＣ規格で規定された公知の逆ＤＣＴ演算を行う。このとき、パラメータ解析部５３０では、既に当該ＭＢのデータに対して、イントラ用パラメータ又はインタ用パラメータの解析が終了している。そこで、動き予測部５８０に対して、パラメータ解析部５３０の解析結果に応じて、画面内予測を行うかフレーム間予測を行うかが指定される。
【０１２１】
画面内予測を行う場合には、動き予測部５８０の画面内予測部５８２が、加算部５４２の出力結果に基づいて、当該フレーム内において公知の画面内予測処理を行う。
【０１２２】
一方、動き補償部５７０は、出力画像バッファ５６０に格納された複数の参照フレームの中からインタ用パラメータ解析部５３４で解析されたフレームの参照フレームを用いて、Ｈ．２６４／ＡＶＣ規格で規定された公知の動き補償処理を行う。そして、パラメータ解析部５３０の解析結果に基づいてフレーム間予測を行う場合には、動き予測部５８０の重み付き予測部５８４が、Ｈ．２６４／ＡＶＣ規格で規定された公知の重み付き予測を行う。
【０１２３】
こうして動き予測又は動き補償が行われたデータは、加算部５４２において、逆ＤＣＴ演算後のデータと加算される。
【０１２４】
デブロックフィルタ５５０は、ＭＢ単位で、動き予測又は動き補償を行った画像データのブロックノイズを低減させる処理（デブロックフィルタ処理）を行う。そして、デブロックフィルタ処理が完了すると、出力画像の画像データとして出力される一方、出力画像バッファ５６０にバッファリングされる。出力画像バッファ５６０の画像データは、次の画像の画像データを生成するための動き補償処理及び動き予測処理に供される。
【０１２５】
デブロックフィルタ５５０は、ブロック境界及びマクロブロック境界のうち少なくとも一方のブロックノイズを低減させる処理行うことができる。この処理は、Ｈ．２６４／ＡＶＣ規格で規定された公知のデブロックフィルタ処理を採用できる。このようなデブロックフィルタ処理により、ブロックノイズが多い参照画像を用いて復号化処理されることがなくなり、ブロックノイズの伝搬を減らして、復号画像の高画質化に寄与できるようになる。
【０１２６】
３．  情報再生装置
次に、本実施形態におけるデコード装置が適用される情報再生装置について説明する。本実施形態における情報再生装置は、地上デジタル放送の再生を可能とし、Ｈ．２６４／ＡＶＣ規格で符号化された映像データを復号することができる。
【０１２７】
３．１  １セグメント放送の概要
地上アナログ放送に代わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。
【０１２８】
図１７に、地上デジタル放送のセグメントの概念の説明図を示す。
【０１２９】
地上デジタル放送では、予め割り当てられた周波数帯域を１４個のセグメントに分割し、そのうちの１３個のセグメントＳＥＧ１〜ＳＥＧ１３を使って放送が行われる。残り１個のセグメントは、ガードバンドとして用いられる。そして、放送を行うための１３個のセグメントのうちの１個のセグメントＳＥＧｍが、携帯端末向けの放送の周波数帯域に割り当てられる。
【０１３０】
１セグメント放送では、それぞれが符号化（圧縮処理）された映像データ、音声データ、その他のデータ（制御データ）が多重化されたトランスポートストリーム（Transport Stream：ＴＳ）が伝送される。より具体的には、ＴＳの各パケットにリードソロモン符号の誤り訂正用符号が付加された後、階層分割され、各階層において畳み込み符号化やキャリア変調が施される。そして、階層合成後に、周波数インターリーブ、時間インターリーブが行われ、受信側に必要なパイロット信号を付加してＯＦＤＭセグメントフレームが形成される。このＯＦＤＭセグメントフレームに対し、逆フーリエ変換演算が施されてＯＦＤＭ信号として伝送される。
【０１３１】
図１８に、ＴＳの説明図を示す。
【０１３２】
ＴＳは、図１８に示すように複数のＴＳパケット列で構成されている。各ＴＳパケットの長さは、１８８バイトに固定されている。各ＴＳパケットは、４バイトのＴＳヘッダ（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：番組対応テーブル）を含む。ＮＩＴは、例えばどの放送局からのＴＳかを特定するためのネットワーク識別子、ＰＭＴを特定するためのサービス識別子、放送の種類を示すサービスタイプ識別子等を含む。ＰＭＴには、例えばＴＳにおいて多重化される映像用ＴＳパケットのＰＩＤと音声用ＴＳパケットのＰＩＤが設定される。
【０１８７】
従って、ホストＣＰＵ１１０は、ＰＳＩ／ＳＩからＰＭＴを特定するためのサービス識別子を抽出し、該サービス識別子に基づき、受信したＴＳの映像用ＴＳパケット及び音声用ＴＳパケットのＰＩＤを特定できる（ステップＳ１６５）。そして、携帯端末のユーザに選択させた番組に対応するＰＩＤ、若しくは予め決められた番組に対応するＰＩＤを、ホストＣＰＵ１１０が、映像デコーダ２３０及び音声デコーダ２４０に参照できるようにメモリ２２０の所定の記憶領域（例えば第３の記憶領域ＡＲ３）に設定し（ステップＳ１６６）、一連の処理を終了する（エンド）。
【０１８８】
こうすることで、映像デコーダ２３０及び音声デコーダ２４０は、メモリ２２０に設定されたＰＩＤを参照しながら、映像用ＴＳパケット及び音声用ＴＳパケットに対してデコード処理を行うことができる。
【０１８９】
なおホストＣＰＵ１１０は、例えばＰＭＴを特定するためのサービス識別子に対応する情報を、画像処理ＩＣ２００のＴＳ分離部２１０に設定する。こうすることで、ＴＳ分離部２１０は、所定の時間間隔を置いて周期的に受信されるセクションを判別し、上記のサービス識別子に対応したＰＭＴを解析し、該ＰＭＴにより特定される映像用ＴＳパケット及び音声用ＴＳパケットとそれ以外のＴＳパケットを抽出してメモリ２２０に格納していく。
【０１９０】
図２６に、図２２及び図２３の画像処理ＩＣ２００の放送受信開始処理における動作説明図を示す。図２６において、図２２又は図２３と同一部分には同一符号を付し、適宜説明を省略する。
【０１９１】
なお図２６において、第７の記憶領域ＡＲ７を第４の記憶領域ＡＲ４と共用化し、第８の記憶領域ＡＲ８を第５の記憶領域ＡＲ５と共用化している。また、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴは、第３の記憶領域ＡＲ３内の所定の記憶領域に格納されるものとする。
【０１９２】
まずチューナ９４０からＴＳが入力される（ＳＱ１）とＴＳ分離部２１０は、ＰＳＩ／ＳＩが含まれるＴＳパケットをメモリ２２０に格納する（ＳＱ２）。このとき、ＴＳ分離部２１０は、該ＴＳパケットのＰＳＩ／ＳＩ自体を抽出してメモリ２２０に格納することができる。更にＴＳ分離部２１０は、ＰＳＩ／ＳＩからＮＩＴを抽出してメモリ２２０に格納することができる。
【０１９３】
ホストＣＰＵ１１０は、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴを読み出して（ＳＱ３）、これらを解析し、デコード処理対象の番組に対応するＰＩＤを特定する。そしてホストＣＰＵ１１０は、サービス識別子に対応する情報又はデコード処理対象の番組に対応するＰＩＤを、ＴＳ分離部２１０に設定する（ＳＱ４）。なおホストＣＰＵ１１０は、ＰＩＤを、メモリ２２０の所定の記憶領域にも設定し、映像デコーダ２３０及び音声デコーダ２４０のデコード処理の際に参照させる。
【０１９４】
ＴＳ分離部２１０は、設定されたＰＩＤに基づいてＴＳから映像用ＴＳパケット及び音声用ＴＳパケットを抽出し、それぞれ第１及び第２の記憶領域ＡＲ１、ＡＲ２に書き込む（ＳＱ５）。
【０１９５】
その後、ホストＣＰＵ１１０によって起動された映像デコーダ２３０及び音声デコーダ２４０は、第１及び第２の記憶領域ＡＲ１、ＡＲ２から映像用ＴＳパケット及び音声用ＴＳパケットを順次読み出して（ＳＱ６）、映像デコード処理及び音声デコード処理を行う。
【０１９６】
３．３．１．２  放送受信終了処理
次に、図２４に示す放送受信終了処理の動作例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
【０１９７】
図２７に、図２４の放送受信終了処理の処理例のフロー図を示す。ホストＣＰＵ１１０は、ＲＡＭ１２０又はＲＯＭ１３０に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図２７に示す処理を行うことができるようになっている。
【０１９８】
まずホストＣＰＵ１１０は、画像処理ＩＣ２００の映像デコーダ２３０、音声デコーダ２４０を停止させる（ステップＳ１７０）。これは、例えばホストＣＰＵ１１０から画像処理ＩＣ２００に対し制御コマンドを発行し、画像処理ＩＣ２００が該制御コマンドのデコード結果を用いて映像デコーダ２３０、音声デコーダ２４０を停止させることができる。
【０１９９】
その後、ホストＣＰＵ１１０は、同様にＴＳ分離部２１０を停止させる（ステップＳ１７１）。そして、ホストＣＰＵ１１０は、チューナ９４０を停止させる（ステップＳ１７２）。
【０２００】
図２８に、図２２及び図２３の画像処理ＩＣ２００の放送受信終了処理における動作説明図を示す。図２８において、図２６と同一部分には同一符号を付し、適宜説明を省略する。
【０２０１】
まずホストＣＰＵ１１０が、表示制御部２５０の動作を停止させる制御を行い、表示ドライバ１４０への映像データの供給を停止させる（ＳＱ１０）。次に、ホストＣＰＵ１１０が、映像デコーダ２３０及び音声デコーダ２４０の動作を停止させ（ＳＱ１１）、その後ＴＳ分離部２１０、チューナ９４０の順に動作を停止させていく（ＳＱ１２、ＳＱ１３）。
【０２０２】
３．３．１．３  再生処理
次に、映像データの再生処理を行う映像デコーダ２３０の動作例について説明する。
【０２０３】
図２９に、映像デコーダ２３０の動作例のフロー図を示す。
【０２０４】
映像デコーダ２３０は、ホストＣＰＵ１１０によって起動されると、例えばメモリ２２０の所定の記憶領域に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図２９に示す処理を行うことができるようになっている。
【０２０５】
まず、映像デコーダ２３０は、映像用ＴＳバッファとして設けられた第１の記憶領域ＡＲ１がエンプティ状態か否かを判別する（ステップＳ１８０）。第１の記憶領域ＡＲ１から読み出されるべき映像用ＴＳパケットがない場合、エンプティ状態となる。
【０２０６】
ステップＳ１８０において映像用ＴＳバッファである第１の記憶領域ＡＲ１がエンプティ状態でないと判別されたとき（ステップＳ１８０：Ｎ）、映像デコーダ２３０は、更に映像用ＥＳバッファとして設けられた第４の記憶領域ＡＲ４がフル状態か否かを判別する（ステップＳ１８１）。これ以上映像用ＥＳデータを第４の記憶領域ＡＲ４に格納できない場合、フル状態となる。
【０２０７】
ステップＳ１８１において映像用ＥＳバッファである第４の記憶領域ＡＲ４がフル状態でないと判別されたとき（ステップＳ１８１：Ｎ）、映像デコーダ２３０は、第１の記憶領域ＡＲ１から映像用ＴＳパケットを読み出し、図２５のステップＳ１６６においてホストＣＰＵ１１０により特定されたＰＩＤ（指定ＰＩＤ）か否かを検出する（ステップＳ１８２）。
【０２０８】
ステップＳ１８２において、映像用ＴＳパケットのＰＩＤが指定ＰＩＤであると検出されたとき（ステップＳ１８２：Ｙ）、映像デコーダ２３０は、ＴＳヘッダ、ＰＥＳヘッダの解析を行い（ステップＳ１８３）、映像用ＥＳデータを映像用ＥＳバッファとして設けられた第４の記憶領域ＡＲ４に格納する（ステップＳ１８４）。
【０２０９】
その後、映像デコーダ２３０は、映像用ＴＳバッファである第１の記憶領域ＡＲ１の読み出しアドレスを特定するための読み出しポインタを更新し（ステップＳ１８５）、ステップＳ１８０に戻る（リターン）。
【０２１０】
なお、ステップＳ１８２において映像用ＴＳパケットのＰＩＤが指定ＰＩＤではないと検出されたとき（ステップＳ１８２：Ｎ）、ステップＳ１８５に進む。また、ステップＳ１８０において映像用ＴＳバッファである第１の記憶領域ＡＲ１がエンプティ状態であると判別されたとき（ステップＳ１８０：Ｙ）、又はステップＳ１８１において映像用ＥＳバッファである第４の記憶領域ＡＲ４がフル状態であると判別されたとき（ステップＳ１８１：Ｙ）、ステップＳ１８０に戻る（リターン）。
【０２１１】
こうして第４の記憶領域ＡＲ４に格納された映像用ＥＳデータは、映像デコーダ２３０により、上述したようなＨ．２６４／ＡＶＣの規格に従ったデコード処理が行われて、映像データとして第７の記憶領域ＡＲ７（図２３参照）に書き込まれる。
【０２１２】
図３０に、図２２及び図２３の画像処理ＩＣ２００の映像デコーダの動作説明図を示す。図３０において、図２６と同一部分には同一符号を付し、適宜説明を省略する。
【０２１３】
なお図３０において、第７の記憶領域ＡＲ７を第４の記憶領域ＡＲ４と共用化し、第８の記憶領域ＡＲ８を第５の記憶領域ＡＲ５と共用化している。また、ＰＳＩ／ＳＩ、ＮＩＴ、ＰＭＴは、第３の記憶領域ＡＲ３内の所定の記憶領域に格納されるものとする。
【０２１４】
まず図３０に示すようにホストＣＰＵ１１０によりデコード処理対象の番組に対応するＰＩＤがＴＳ分離部２１０に設定される（ＳＱ２０）。チューナ９４０からＴＳが入力されたとき（ＳＱ２１）、ＴＳ分離部２１０は、チューナ９４０からのＴＳから映像用ＴＳパケット、音声用ＴＳパケット及びそれ以外のＴＳパケットをそれぞれ分離する（ＳＱ２２）。ＴＳ分離部２１０によって分離された映像用ＴＳパケットは、第１の記憶領域ＡＲ１に格納される。ＴＳ分離部２１０によって分離された音声用ＴＳパケットは、第２の記憶領域ＡＲ２に格納される。ＴＳ分離部２１０によって分離された映像用ＴＳパケット及び音声用ＴＳパケット以外のＴＳパケットは、ＰＳＩ／ＳＩとして第３の記憶領域ＡＲ３に格納される。この際、ＴＳ分離部２１０は、ＰＳＩ／ＳＩの中のＮＩＴ、ＰＭＴを抽出して第３の記憶領域ＡＲ３に格納する。
【０２１５】
次にホストＣＰＵ１１０によって起動された映像デコーダ２３０は、第１の記憶領域ＡＲ１から映像用ＴＳパケットを読み出し（ＳＱ２３）、映像用ＥＳデータを生成し、該映像用ＥＳデータを第４の記憶領域ＡＲ４に格納する（ＳＱ２４）。
【０２１６】
その後、映像デコーダ２３０は、第４の記憶領域ＡＲ４から映像用ＥＳデータを読み出して（ＳＱ２５）、Ｈ．２６４／ＡＶＣの規格に従ったデコード処理を行う。ここで、上述したように、本実施形態における並列動作が行われる。図３０では、デコード処理後の映像データが表示制御部２５０に直接供給されている（ＳＱ２６）が、例えばデコード処理後の映像データを、一旦、メモリ２２０の所定の記憶領域に書き戻し、その後、音声データの出力タイミングと同期を取りながら表示制御部２５０に供給することが望ましい。
【０２１７】
こうして表示制御部２５０に供給された映像データに基づいて、表示ドライバ１４０が表示パネルを駆動する（ＳＱ２７）。
【０２１８】
なお音声データの再生処理を行う音声デコーダ２４０についても、同様に、音声用ＴＳバッファとして設けられた第２の記憶領域ＡＲ２から音声用ＴＳパケットを読み出し、ＴＳヘッダ、ＰＥＳヘッダの解析を行って、音声用ＥＳデータを音声用ＥＳバッファとして設けられた第５の記憶領域ＡＲ５に格納する。
【０２１９】
こうして第５の記憶領域ＡＲ５に格納された音声用ＥＳデータは、音声デコーダ２４０により、ＭＰＥＧ−２ＡＡＣの規格に従ったデコード処理が行われて、音声データとして第８の記憶領域ＡＲ８（図２３参照）に書き込まれる。
【０２２０】
以上のような音声デコーダ２４０の動作は、映像デコーダ２３０の動作とは独立して行われる。
【０２２１】
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。なお上記の実施形態又はその変形例では、地上デジタル放送に適用可能な例について説明したが、本発明は地上デジタル放送に適用可能なものに限定されるものではない。
【０２２２】
なお、本実施形態におけるデコード装置は、Ｈ．２６４／ＡＶＣに準拠したデコード処理に適用した場合について説明したが、これに限定されるものではなく、他の規格や、Ｈ．２６４／ＡＶＣ規格を発展させた規格に準拠したデコード処理に適用できることは言うまでもない。
【０２２３】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【図面の簡単な説明】
【０２２４】
【図１】本実施形態におけるデータアクセス回路の構成例のブロック図。
【図２】バッファポインタ管理部によって管理されるポインタの説明図。
【図３】メモリアクセス制御部の構成例のブロック図。
【図４】本実施形態におけるデータアクセス回路の動作例のフロー図。
【図５】スタートコードに対して行われるエミュレーションの説明図。
【図６】図１のスタートコードエミュレーション処理部の動作例のフロー図。
【図７】本実施形態におけるスタートコードエミュレーション処理部の動作結果の一例の説明図。
【図８】本実施形態におけるデコード装置の構成例のブロック図。
【図９】図８のＣＡＶＬＣ部の構成例のブロック図。
【図１０】図８のデコード装置の処理の流れの概要のフロー図。
【図１１】パラメータ解析部によるヘッダ解析処理の一例のフロー図。
【図１２】ＣＡＶＬＣ部の処理の一例のフロー図。
【図１３】図１３（Ａ）、図１３（Ｂ）、図１３（Ｃ）はＣＡＶＬＣ演算の説明図。
【図１４】図１４（Ａ）、図１４（Ｂ）、図１４（Ｃ）はゴロム符号の説明図。
【図１５】図９のＣＡＶＬＣ部の動作例のフロー図。
【図１６】逆量子化部の処理の説明図。
【図１７】地上デジタル放送のセグメントの概念の説明図。
【図１８】ＴＳの説明図。
【図１９】ＰＥＳパケット及びセクションの説明図。
【図２０】本実施形態の比較例におけるマルチメディア処理ＣＰＵを含む携帯電話機の構成例のブロック図。
【図２１】本実施形態における情報再生装置を含む携帯電話機の構成例のブロック図。
【図２２】本実施形態の画像処理ＩＣの構成例のブロック図。
【図２３】図２２の画像処理ＩＣの動作説明図。
【図２４】ホストＣＰＵによる再生処理の動作例のフロー図。
【図２５】図２４の放送受信開始処理の動作例のフロー図。
【図２６】画像処理ＩＣの放送受信開始処理における動作説明図。
【図２７】図２４の放送受信終了処理の処理例のフロー図。
【図２８】画像処理ＩＣの放送受信終了処理における動作説明図。
【図２９】映像デコーダの動作例のフロー図。
【図３０】画像処理ＩＣの映像デコーダの動作説明図。
【符号の説明】
【０２２５】
１０  データアクセス回路、  ２０  Ｍビットバッファ、
３０  バッファポインタ管理部、  ４０  メモリアクセス制御部、
４２  リクエスト処理部、  ４４  読み出しアドレス生成部、
５０  データ出力制御部、  ６０  返却リクエスト制御部、
７０  スタートコードエミュレーション処理部、  ７２  検出フラグ、
８０  データ処理回路、  ９０、２２０  メモリ、  １００  携帯電話機、
１１０  ホストＣＰＵ、  １２０  ＲＡＭ、  １３０  ＲＯＭ、
１４０  表示ドライバ、  １５０  ＤＡＣ、  ２００  画像処理ＩＣ、
２１０  ＴＳ分離部、  ２３０  映像デコーダ、  ２４０  音声デコーダ、
２５０  表示制御部、  ２６０  チューナＩ／Ｆ、  ２７０  ホストＩ／Ｆ、
２８０  ドライバＩ／Ｆ、  ２９０  オーディオＩ／Ｆ、  ５００  デコード装置、
５１０  ＣＡＶＬＣ部、  ５２０  逆量子化部、  ５３０  パラメータ解析部、
５３２  イントラ用パラメータ解析部、  ５３４  インタ用パラメータ解析部、
５４０  逆ＤＣＴ演算部、  ５４２  加算器、  ５５０  デブロックフィルタ、
５６０  出力画像バッファ、  ５７０  動き補償部、  ５８０  動き予測部、
５８２  画面内予測部、  ５８４  重み付き予測部、  ９１０、９３０  アンテナ、
９４０  チューナ、  ９６０  表示パネル、  ９７０  スピーカ
【図１】
2007304797.tif 000003
【図２】
2007304797.tif 000004
【図３】
2007304797.tif 000005
【図４】
2007304797.tif 000006
【図５】
2007304797.tif 000007
【図６】
2007304797.tif 000008
【図７】
2007304797.tif 000009
【図８】
2007304797.tif 000010
【図９】
2007304797.tif 000011
【図１０】
2007304797.tif 000012
【図１１】
2007304797.tif 000013
【図１２】
2007304797.tif 000014
【図１３】
2007304797.tif 000015
【図１４】
2007304797.tif 000016
【図１５】
2007304797.tif 000017
【図１６】
2007304797.tif 000018
【図１７】
2007304797.tif 000019
【図１８】
2007304797.tif 000020
【図１９】
2007304797.tif 000021
【図２０】
2007304797.tif 000022
【図２１】
2007304797.tif 000023
【図２２】
2007304797.tif 000024
【図２３】
2007304797.tif 000025
【図２４】
2007304797.tif 000026
【図２５】
2007304797.tif 000027
【図２６】
2007304797.tif 000028
【図２７】
2007304797.tif 000029
【図２８】
2007304797.tif 000030
【図２９】
2007304797.tif 000031
【図３０】
2007304797.tif 000032