(57)【要約】      （修正有）【課題】表示用のフォーマット変換を省略することによって遅延時間の短縮、消費電力の低減、及びバス帯域の削減を実現することが可能な画像処理装置を得る。【解決手段】メモリ制御部は、デコードブロック生成部３０が生成したデコードブロックの画像データを、コーデック処理部２でのコーデック処理に適合した第１のアドレスフォーマットで第１の記憶領域４Ｂに書き込むとともに、表示処理部での表示処理に適合した第２のアドレスフォーマットで第２の記憶領域４Ａに書き込む。【選択図】図３
2015127737.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶領域及び第２の記憶領域を有する画像記憶部と、
前記画像記憶部に対する画像データの読み出し及び書き込みを制御する第１の制御部と、
デコーダを有するコーデック処理部と、
表示部において画像を表示するための画像データを処理する表示処理部と、
を備え、
前記コーデック処理部は、入力された符号化データを復号することによってデコードブロックを生成するデコードブロック生成部を有し、
前記第１の制御部は、前記デコードブロック生成部が生成したデコードブロックの画像データを、前記コーデック処理部でのコーデック処理に適合した第１のアドレスフォーマットで前記第１の記憶領域に書き込むとともに、前記表示処理部での表示処理に適合した第２のアドレスフォーマットで前記第２の記憶領域に書き込む、画像処理装置。
【請求項２】
前記表示処理部は、前記第２の記憶領域から読み出したデコード画像に基づいて、前記表示部において画像を表示し、
前記表示処理部は、前記デコードブロック生成部から前記第２の記憶領域への所定数のライン分のデコードブロックの書き込みが完了した時点で、前記第２の記憶領域からの画像データの読み出しを開始する、請求項１に記載の画像処理装置。
【請求項３】
前記コーデック処理部の動作を制御する第２の制御部をさらに備え、
前記第２の制御部は、前記表示処理部によって画像データが読み出されている前記第２の記憶領域内の位置と、前記デコードブロック生成部から画像データが書き込まれている前記第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、前記コーデック処理部の動作クロックを停止する、請求項２に記載の画像処理装置。
【請求項４】
前記コーデック処理部の動作を制御する第２の制御部をさらに備え、
前記第２の制御部は、前記表示処理部によって画像データが読み出されている前記第２の記憶領域内の位置と、前記デコードブロック生成部から画像データが書き込まれている前記第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、前記コーデック処理部におけるブロック処理の開始信号を停止する、請求項２に記載の画像処理装置。
【請求項５】
前記コーデック処理部は、前記第２の記憶領域に書き込まれる複数のデコードブロックを保持するデコードブロック保持部をさらに有し、
前記デコードブロック生成部は、画像内で行方向に並ぶＮ個（Ｎは複数）の処理対象ブロックに対応してＮ個のデコードブロックを順に生成し、当該Ｎ個のデコードブロックを行方向に並べて前記デコードブロック保持部に書き込み、
前記デコードブロック保持部は、Ｎ個のデコードブロックに跨がる行単位でのバースト転送によって、自身が保持しているＮ個のデコードブロックを前記第２の記憶領域に書き込み、
前記画像記憶部は、前記第２の記憶領域に保持しているデコード画像を、行単位でのバースト転送によって前記表示処理部に転送する、請求項１〜４のいずれか一つに記載の画像処理装置。
【請求項６】
前記画像記憶部は複数のメモリバンクを有し、
前記デコードブロック保持部は、
保持しているＮ個のデコードブロック内の第１の行に属する画素データを、前記画像記憶部の第１のメモリバンクに書き込み、
第１の行に隣接する第２の行に属する画素データを、前記第１のメモリバンクとは異なる第２のメモリバンクに書き込む、請求項５に記載の画像処理装置。
【請求項７】
前記デコードブロック保持部は、Ｎ＋１個のデコードブロックを保持し、
第１乃至第Ｎのブロック期間において、前記デコードブロック生成部は、第１乃至第Ｎのデコードブロックを前記デコードブロック保持部に順に書き込み、
第Ｎ＋１のブロック期間において、前記デコードブロック生成部は、第Ｎ＋１のデコードブロックを前記デコードブロック保持部に書き込み、前記デコードブロック保持部は、第１乃至第Ｎのデコードブロックを前記第２の記憶領域に書き込む、請求項５又は６に記載の画像処理装置。
【請求項８】
前記デコードブロック生成部が生成したデコードブロックのＹＵＶフォーマットを、当該デコードブロックが前記第２の記憶領域に書き込まれる前に、前記表示部に適合するＹＵＶフォーマットに変換するフォーマット変換部をさらに備える、請求項１〜７のいずれか一つに記載の画像処理装置。
【請求項９】
前記表示処理部は、前記第２の記憶領域から読み出したデコード画像のＹＵＶフォーマットを、前記表示部に適合するＹＵＶフォーマットに変換するフォーマット変換部を有する、請求項１〜７のいずれか一つに記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関する。
【背景技術】
【０００２】
背景技術に係るＨ．２６４のデコーダは、デコード画像を格納する画像記憶部としてのＤＲＡＭと、ＤＲＡＭから読み出した参照画像を保持するＳＲＡＭと、参照画像に基づいて動き探索を行うことにより予測ブロックを生成する動き探索部とを備える。そして、入力された符号化データに対して、エントロピー復号、逆量子化、及び逆ＤＣＴ変換を行うことによって予測誤差が生成され、予測ブロックと予測誤差とに基づいて入力画像を復元することによってデコードブロックが生成される。Ｈ．２６４では矩形のマクロブロック単位でデコードが行われるため、デコードブロックをＤＲＡＭに書き込む際には、矩形領域内の各行間でアドレスが連続するアドレスフォーマット（以下「コーデックフォーマット」と称す）を用いて、ＤＲＡＭへのライトアクセスが行われる。
【０００３】
なお、下記特許文献１には、メモリへのデコード画像の書き込み処理において、メモリのバンクを切り替えながらバースト転送を行うことによって、マクロブロック単位でのライトアクセスに適したメモリアクセス方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５１４７１０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した背景技術に係るデコーダによると、デコードブロックは、コーデックフォーマットを用いてＤＲＡＭに書き込まれる。一方、デコード画像を表示装置に表示する場合には、画像内の水平方向にアドレスが連続するアドレスフォーマット（ラスタフォーマット）を用いた画像データが必要であるため、コーデックフォーマットのデコード画像をそのまま使用することができない。従って、コーデックフォーマットをラスタフォーマットに変換するフォーマット変換回路を実装する必要がある。フォーマット変換回路は、ＤＲＡＭから読み出したコーデックフォーマットのデコード画像を、ラスタフォーマットのデコード画像に変換して、変換後のデコード画像をＤＲＡＭに書き込む。従って、フォーマット変換に伴ってＤＲＡＭへのリードアクセス及びライトアクセスが発生するため、表示の遅延時間が長くなるとともに、ＤＲＡＭの消費電力が増大する。また、上述の通り、ＤＲＡＭへのアクセスを極力回避してバス帯域を削減することも要求されている。
【０００６】
本発明はかかる事情に鑑みて成されたものであり、表示用のフォーマット変換を省略することによって遅延時間の短縮、消費電力の低減、及びバス帯域の削減を実現することが可能な画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の態様に係る画像処理装置は、第１の記憶領域及び第２の記憶領域を有する画像記憶部と、前記画像記憶部に対する画像データの読み出し及び書き込みを制御する第１の制御部と、デコーダを有するコーデック処理部と、表示部において画像を表示するための画像データを処理する表示処理部と、を備え、前記コーデック処理部は、入力された符号化データを復号することによってデコードブロックを生成するデコードブロック生成部を有し、前記第１の制御部は、前記デコードブロック生成部が生成したデコードブロックの画像データを、前記コーデック処理部でのコーデック処理に適合した第１のアドレスフォーマットで前記第１の記憶領域に書き込むとともに、前記表示処理部での表示処理に適合した第２のアドレスフォーマットで前記第２の記憶領域に書き込むことを特徴とするものである。
【０００８】
第１の態様に係る画像処理装置によれば、第１の制御部は、デコードブロック生成部が生成したデコードブロックの画像データを、コーデック処理部でのコーデック処理に適合した第１のアドレスフォーマットで第１の記憶領域に書き込むとともに、表示処理部での表示処理に適合した第２のアドレスフォーマットで第２の記憶領域に書き込む。これにより、表示処理部は、第２の記憶領域から読み出した第２のアドレスフォーマットのデコード画像に基づいて、表示部において画像を表示することができる。従って、画像記憶部から読み出したコーデックフォーマットのデコード画像をラスタフォーマットのデコード画像に変換するフォーマット変換回路の実装を省略することができる。その結果、フォーマット変換回路から画像記憶部へのアクセスが不要となるため、遅延時間の短縮、消費電力の低減、及びバス帯域の削減を実現することが可能となる。
【０００９】
本発明の第２の態様に係る画像処理装置は、第１の態様に係る画像処理装置において特に、前記表示処理部は、前記第２の記憶領域から読み出したデコード画像に基づいて、前記表示部において画像を表示し、前記表示処理部は、前記デコードブロック生成部から前記第２の記憶領域への所定数のライン分のデコードブロックの書き込みが完了した時点で、前記第２の記憶領域からの画像データの読み出しを開始することを特徴とするものである。
【００１０】
第２の態様に係る画像処理装置によれば、表示処理部は、デコードブロック生成部から第２の記憶領域への所定数のライン分のデコードブロックの書き込みが完了した時点で、第２の記憶領域からの画像データの読み出しを開始する。従って、表示処理部が第２の記憶領域から画像データの読み出しを開始する時点では、第２の記憶領域内に十分な画像データが蓄積されているため、表示部において動画像を途切れなく表示することが可能となる。しかも、第２の記憶領域として、１フレーム分の画像データを蓄積可能な領域を画像記憶部内に確保する必要がないため、表示用の第２の記憶領域を設定することに伴う画像記憶部の記憶領域の減少を、最小限に抑制することが可能となる。
【００１１】
本発明の第３の態様に係る画像処理装置は、第２の態様に係る画像処理装置において特に、前記コーデック処理部の動作を制御する第２の制御部をさらに備え、前記第２の制御部は、前記表示処理部によって画像データが読み出されている前記第２の記憶領域内の位置と、前記デコードブロック生成部から画像データが書き込まれている前記第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、前記コーデック処理部の動作クロックを停止することを特徴とするものである。
【００１２】
第３の態様に係る画像処理装置によれば、第２の制御部は、表示処理部によって画像データが読み出されている第２の記憶領域内の位置と、デコードブロック生成部から画像データが書き込まれている第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、コーデック処理部の動作クロックを停止する。従って、画像記憶部に対する読み出し速度が書き込み速度よりも遅い場合であっても、第２の制御部がコーデック処理部の動作クロックを停止することにより、読み出しが未完了の領域に次の画像データが書き込まれる事態を回避することが可能となる。しかも、動作クロックを停止することによって、コーデック処理部における消費電力を低減することが可能となる。
【００１３】
本発明の第４の態様に係る画像処理装置は、第２の態様に係る画像処理装置において特に、前記コーデック処理部の動作を制御する第２の制御部をさらに備え、前記第２の制御部は、前記表示処理部によって画像データが読み出されている前記第２の記憶領域内の位置と、前記デコードブロック生成部から画像データが書き込まれている前記第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、前記コーデック処理部におけるブロック処理の開始信号を停止することを特徴とするものである。
【００１４】
第４の態様に係る画像処理装置によれば、第２の制御部は、表示処理部によって画像データが読み出されている第２の記憶領域内の位置と、デコードブロック生成部から画像データが書き込まれている第２の記憶領域内の位置とのアドレス差が所定のしきい値以下となった場合には、コーデック処理部におけるブロック処理の開始信号を停止する。従って、画像記憶部に対する読み出し速度が書き込み速度よりも遅い場合であっても、第２の制御部がコーデック処理部におけるブロック処理の開始信号を停止することにより、読み出しが未完了の領域に次の画像データが書き込まれる事態を回避することが可能となる。しかも、動作クロックは停止せず、ブロック処理の開始信号を停止することによって、動作再開時のバグの発生を回避することが可能となる。
【００１５】
本発明の第５の態様に係る画像処理装置は、第１〜第４のいずれか一つの態様に係る画像処理装置において特に、前記コーデック処理部は、前記第２の記憶領域に書き込まれる複数のデコードブロックを保持するデコードブロック保持部をさらに有し、前記デコードブロック生成部は、画像内で行方向に並ぶＮ個（Ｎは複数）の処理対象ブロックに対応してＮ個のデコードブロックを順に生成し、当該Ｎ個のデコードブロックを行方向に並べて前記デコードブロック保持部に書き込み、前記デコードブロック保持部は、Ｎ個のデコードブロックに跨がる行単位でのバースト転送によって、自身が保持しているＮ個のデコードブロックを前記第２の記憶領域に書き込み、前記画像記憶部は、前記第２の記憶領域に保持しているデコード画像を、行単位でのバースト転送によって前記表示処理部に転送することを特徴とするものである。
【００１６】
第５の態様に係る画像処理装置によれば、デコードブロック生成部は、順に生成したＮ個のデコードブロックを行方向に並べてデコードブロック保持部に書き込む。また、デコードブロック保持部は、Ｎ個のデコードブロックに跨がる行単位でのバースト転送によって、自身が保持しているＮ個のデコードブロックを第２の記憶領域に書き込む。つまり、デコードブロック保持部へのデコードブロックの格納まではブロック単位での処理を行い、デコードブロック保持部から第２の記憶領域へのデコードブロックの書き込みは、ラスタフォーマットを用いたメモリアクセスによって行う。このように、単純なラスタフォーマットを用いたメモリアクセスを行うことにより、デコードブロックを第２の記憶領域へ簡易に書き込むことが可能となる。しかも、行方向に並ぶ複数Ｎ個のデコードブロックを対象としてラスタフォーマットでのバースト転送を行うため、効率的なバースト転送を行うことが可能となる。また、画像記憶部は、第２の記憶領域に保持しているデコード画像を、行単位でのバースト転送によって表示処理部に転送する。このように、ラスタフォーマットのデコード画像を第２の記憶領域に格納しておくことにより、表示部において画像を表示するために必要なラスタフォーマットの画像データを、画像記憶部から表示処理部に簡易に転送することが可能となる。
【００１７】
本発明の第６の態様に係る画像処理装置は、第５の態様に係る画像処理装置において特に、前記画像記憶部は複数のメモリバンクを有し、前記デコードブロック保持部は、保持しているＮ個のデコードブロック内の第１の行に属する画素データを、前記画像記憶部の第１のメモリバンクに書き込み、第１の行に隣接する第２の行に属する画素データを、前記第１のメモリバンクとは異なる第２のメモリバンクに書き込むことを特徴とするものである。
【００１８】
第６の態様に係る画像処理装置によれば、デコードブロック保持部は、保持しているＮ個のデコードブロック内の第１の行に属する画素データを、画像記憶部の第１のメモリバンクに書き込み、第１の行に隣接する第２の行に属する画素データを、第１のメモリバンクとは異なる第２のメモリバンクに書き込む。このように、隣接する行の画素データを異なるメモリバンクに書き込むことにより、第１の行に属する画素データの書き込みが完了すると同時に、第２の行に属する画素データの書き込みを開始することができる。その結果、同一のメモリバンクに連続してアクセスする際に必要となる待ち時間の発生を回避できるため、書き込みの所要時間を短縮することが可能となる。
【００１９】
本発明の第７の態様に係る画像処理装置は、第５又は第６の態様に係る画像処理装置において特に、前記デコードブロック保持部は、Ｎ＋１個のデコードブロックを保持し、第１乃至第Ｎのブロック期間において、前記デコードブロック生成部は、第１乃至第Ｎのデコードブロックを前記デコードブロック保持部に順に書き込み、第Ｎ＋１のブロック期間において、前記デコードブロック生成部は、第Ｎ＋１のデコードブロックを前記デコードブロック保持部に書き込み、前記デコードブロック保持部は、第１乃至第Ｎのデコードブロックを前記第２の記憶領域に書き込むことを特徴とするものである。
【００２０】
第７の態様に係る画像処理装置によれば、第１乃至第Ｎのブロック期間において、デコードブロック生成部は、第１乃至第Ｎのデコードブロックをデコードブロック保持部に順に書き込む。そして、第Ｎ＋１のブロック期間において、デコードブロック生成部は、第Ｎ＋１のデコードブロックをデコードブロック保持部に書き込み、デコードブロック保持部は、第１乃至第Ｎのデコードブロックを画像記憶部に書き込む。従って、デコードブロック保持部に対するデコードブロックの書き込み及び読み出しを、同時に行うことが可能となる。しかも、デコードブロック保持部に必要な記憶容量は、Ｎ＋１個のデコードブロックを保持できる記憶容量で足りるため、２Ｎ個のデコードブロックを保持するデコードブロック保持部を実装する場合と比較して、必要な記憶容量を削減することが可能となる。
【００２１】
本発明の第８の態様に係る画像処理装置は、第１〜第７のいずれか一つの態様に係る画像処理装置において特に、前記デコードブロック生成部が生成したデコードブロックのＹＵＶフォーマットを、当該デコードブロックが前記第２の記憶領域に書き込まれる前に、前記表示部に適合するＹＵＶフォーマットに変換するフォーマット変換部をさらに備えることを特徴とするものである。
【００２２】
第８の態様に係る画像処理装置によれば、フォーマット変換部は、デコードブロック生成部が生成したデコードブロックのＹＵＶフォーマット（例えばＹＵＶ４２０）を、当該デコードブロックが第２の記憶領域に書き込まれる前に、表示部に適合するＹＵＶフォーマット（例えばＹＵＶ４２２）に変換する。従って、デコードブロック生成部が生成したデコードブロックのＹＵＶフォーマットが、表示部に適合するＹＵＶフォーマットとは異なる場合であっても、ＹＵＶフォーマットを変換することにより、表示部において画像を表示することが可能となる。
【００２３】
本発明の第９の態様に係る画像処理装置は、第１〜第７のいずれか一つの態様に係る画像処理装置において特に、前記表示処理部は、前記第２の記憶領域から読み出したデコード画像のＹＵＶフォーマットを、前記表示部に適合するＹＵＶフォーマットに変換するフォーマット変換部を有することを特徴とするものである。
【００２４】
第９の態様に係る画像処理装置によれば、フォーマット変換部は、第２の記憶領域から読み出したデコード画像のＹＵＶフォーマット（例えばＹＵＶ４２０）を、表示部に適合するＹＵＶフォーマット（例えばＹＵＶ４２２）に変換する。従って、第２の記憶領域が保持しているデコード画像のＹＵＶフォーマットが、表示部に適合するＹＵＶフォーマットとは異なる場合であっても、ＹＵＶフォーマットを変換することにより、表示部において画像を表示することが可能となる。しかも、第２の記憶領域にはフォーマット変換前のデコード画像を格納すれば良いため、第２の記憶領域に必要な記憶容量を削減することが可能となる。
【発明の効果】
【００２５】
本発明によれば、表示用のフォーマット変換を省略することによって遅延時間の短縮、消費電力の低減、及びバス帯域の削減を実現することが可能となる。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施の形態に係る画像処理装置の構成を簡略化して示す図である。
【図２】画像記憶部の記憶空間を示す図である。
【図３】コーデック処理部が有するデコーダの構成を簡略化して示す図である。
【図４】ＳＲＡＭの構成を示す図である。
【図５】図４に対応して、ＳＲＡＭに対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【図６】ＳＲＡＭへのデコードブロックの書き込み処理を示す図である。
【図７】ＳＲＡＭから記憶領域にデコードブロックを転送する処理を示す図である。
【図８】ＳＲＡＭから記憶領域にデコードブロックを転送する処理を示す図である。
【図９】ＳＲＡＭの構成に関する第１の例を示す図である。
【図１０】図９に対応して、ＳＲＡＭに対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【図１１】ＳＲＡＭの構成に関する第２の例を示す図である。
【図１２】図１１に対応して、ＳＲＡＭに対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【図１３】記憶領域から表示処理部に画像データを転送する処理を示す図である。
【図１４】変形例に係る表示処理部の構成を簡略化して示す図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【００２８】
図１は、本発明の実施の形態に係る画像処理装置１の構成を簡略化して示す図である。図１の接続関係で示すように、画像処理装置１は、コーデック処理部２、コーデック制御部３、画像記憶部４、メモリ制御部５、表示処理部６、表示部７、バス８、及びフォーマット変換部９を備えて構成されている。画像記憶部４は、例えばＤＲＡＭによって構成されている。本実施の形態の例において、コーデック処理部２が処理する画像データのＹＵＶフォーマットはＹＵＶ４２０であり、表示処理部６が表示部７での画像の表示処理に使用する画像データのＹＵＶフォーマットはＹＵＶ４２２である。フォーマット変換部９は、コーデック処理部２から転送されたＹＵＶ４２０フォーマットの画像データを、表示部７に適合するＹＵＶ４２２フォーマットの画像データに変換する。
【００２９】
図２は、画像記憶部４の記憶空間を示す図である。画像記憶部４は、表示用の画像データが格納される記憶領域４Ａと、コーデック処理用のデコード画像が記憶される記憶領域４Ｂとを有している。入力画像の画素数が例えば１９２０列×１０８０行である場合には、一例として、１９２０列×６４行分の画像データを格納可能な領域が記憶領域４Ａとして確保され、１フレームに相当する１９２０列×１０８０行分の画像データを格納可能な領域が記憶領域４Ｂとして確保される。
【００３０】
図３は、コーデック処理部２が有するＨ．２６４のデコーダの構成を簡略化して示す図である。図３の接続関係で示すように、コーデック処理部２は、エントロピー復号部２０、逆量子化部２１、逆ＤＣＴ変換部２２、動き補償部２３、デブロッキングフィルタ２４、ＳＲＡＭ２５〜２７、及び動き探索部２８を備えて構成されている。動き補償部２３とデブロッキングフィルタ２４とによって、デコードブロック生成部３０が構成される。
【００３１】
以下、本実施の形態に係る画像処理装置１の動作について説明する。
【００３２】
図３を参照して、復号対象である入力マクロブロックの符号化データＤ１０は、エントロピー復号部２０に入力される。
【００３３】
エントロピー復号部２０は、符号化データＤ１０に対してＣＡＢＡＣ又はＣＡＶＬＣ等を用いてエントロピー復号を行うことにより、復号後の画像データＤ１１を逆量子化部２１に入力する。
【００３４】
逆量子化部２１は、画像データＤ１１に対して逆量子化を行うことにより、逆量子化後の画像データＤ１２を逆ＤＣＴ変換部２２に入力する。
【００３５】
逆ＤＣＴ変換部２２は、画像データＤ１２に対して逆ＤＣＴ変換を行うことにより、入力マクロブロックの予測誤差に相当する逆ＤＣＴ変換後の画像データＤ１３を動き補償部２３に入力する。
【００３６】
また、参照画像の画像データＤ１４が記憶領域４Ｂから読み出されてＳＲＡＭ２７に格納され、ＳＲＡＭ２７は参照画像を保持する。
【００３７】
動き探索部２８は、ＳＲＡＭ２７が保持している参照画像に基づいて動き探索を行うことにより、入力マクロブロックの予測ブロックを生成する。予測ブロックの画像データＤ１５は、動き補償部２３に入力される。
【００３８】
動き補償部２３は、予測誤差の画像データＤ１３と予測ブロックの画像データＤ１５とに基づいて入力マクロブロックを復元することにより、デコードブロックを生成する。デコードブロックは、マクロブロックと同等の１６列×１６行の画素によって構成されている。デコードブロックの画像データＤ１６は、デブロッキングフィルタ２４に入力される。
【００３９】
デブロッキングフィルタ２４は、画像データＤ１６に対して所定のデブロッキングフィルタ処理を行い、その処理後の画像データＤ１７をＳＲＡＭ２５に格納する。つまり、デコードブロック生成部３０は、予測誤差（画像データＤ１３）と予測ブロック（画像データＤ１５）とに基づいてデコードブロックを生成し、生成したデコードブロックの画像データＤ１７をＳＲＡＭ２５に格納する。
【００４０】
図１に示したメモリ制御部５は、ＳＲＡＭ２５に格納されているデコードブロックの画像データＤ１７を、コーデック処理部２でのコーデック処理に適合したアドレスフォーマット（矩形領域内の各行間でアドレスが連続するアドレスフォーマット。以下「コーデックフォーマット」と称す）を用いたメモリアクセスによって、記憶領域４Ｂに書き込む。入力画像に含まれる全てのマクロブロックに関するデコードブロックの画像データＤ１７が記憶領域４Ｂに書き込まれることにより、記憶領域４Ｂはコーデック処理用のデコード画像を保持する。コーデック処理用のデコード画像は、次の入力画像に対する処理において参照画像として使用される。
【００４１】
図４は、ＳＲＡＭ２５の構成を示す図である。また図５は、図４に対応して、ＳＲＡＭ２５に対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【００４２】
図４を参照して、ＳＲＡＭ２５は、それぞれにデコードブロックを１個ずつ格納可能な、合計２個の記憶領域Ｆ１，Ｆ２を有する。
【００４３】
図５を参照して、まず、マクロブロック期間Ｔ１において、デコードブロックＤＢ１が記憶領域Ｆ１に書き込まれる。次に、マクロブロック期間Ｔ２において、デコードブロックＤＢ１がコーデックフォーマットのバースト転送によって記憶領域Ｆ１から読み出されるとともに、デコードブロックＤＢ２が記憶領域Ｆ２に書き込まれる。次に、マクロブロック期間Ｔ３において、デコードブロックＤＢ２がコーデックフォーマットのバースト転送によって記憶領域Ｆ２から読み出されるとともに、デコードブロックＤＢ３が記憶領域Ｆ１に書き込まれる。以降は同様に、記憶領域Ｆ１に対する読み出し及び記憶領域Ｆ２に対する書き込みと、記憶領域Ｆ１に対する書き込み及び記憶領域Ｆ２に対する読み出しとが交互に繰り返される。
【００４４】
また、デコードブロック生成部３０から出力された画像データＤ１７は、フォーマット変換部９に入力される。フォーマット変換部９は、ＹＵＶ４２０フォーマットの画像データＤ１７を、表示部７に適合するＹＵＶ４２２フォーマットの画像データＤ１８に変換し、そのフォーマット変換後の画像データＤ１８をＳＲＡＭ２６に格納する。
【００４５】
図６は、ＳＲＡＭ２６へのデコードブロックの書き込み処理を示す図である。デコードブロック生成部３０は、入力画像内で行方向に並ぶ複数Ｎ個（この例ではＮ＝４）の入力マクロブロックＭＢ１〜ＭＢ４に対応して、４個のデコードブロックＤＢ１〜ＤＢ４を順に生成する。そして、ＹＵＶフォーマットを変換した後、当該４個のデコードブロックＤＢ１〜ＤＢ４を行方向に並べてＳＲＡＭ２６に書き込む。具体的には以下の通りである。
【００４６】
まず、図６の（Ａ）に示すように、第１のマクロブロック期間においてデコードブロック生成部３０は、入力マクロブロックＭＢ１に対応してデコードブロックＤＢ１を生成する。そして、デコードブロックＤＢ１をＳＲＡＭ２６に書き込む。
【００４７】
次に、図６の（Ｂ）に示すように、第２のマクロブロック期間においてデコードブロック生成部３０は、入力マクロブロックＭＢ１に並ぶ入力マクロブロックＭＢ２に対応して、デコードブロックＤＢ２を生成する。そして、デコードブロックＤＢ２をデコードブロックＤＢ１に並べてＳＲＡＭ２６に書き込む。
【００４８】
次に、図６の（Ｃ）に示すように、第３のマクロブロック期間においてデコードブロック生成部３０は、入力マクロブロックＭＢ２に並ぶ入力マクロブロックＭＢ３に対応して、デコードブロックＤＢ３を生成する。そして、デコードブロックＤＢ３をデコードブロックＤＢ２に並べてＳＲＡＭ２６に書き込む。
【００４９】
次に、図６の（Ｄ）に示すように、第４のマクロブロック期間においてデコードブロック生成部３０は、入力マクロブロックＭＢ３に並ぶ入力マクロブロックＭＢ４に対応して、デコードブロックＤＢ４を生成する。そして、デコードブロックＤＢ４をデコードブロックＤＢ３に並べてＳＲＡＭ２６に書き込む。
【００５０】
図７，８は、ＳＲＡＭ２６から記憶領域４Ａにデコードブロックを転送する処理を示す図である。図１に示したメモリ制御部５は、ＳＲＡＭ２６に格納されているデコードブロックの画像データＤ１８を、ラスタフォーマットを用いたメモリアクセスによって記憶領域４Ａに書き込む。つまり、ＳＲＡＭ２６が保持している４個のデコードブロックＤＢ１〜ＤＢ４に跨がる行単位（６４列×１行）でのバースト転送を、列方向に１６回繰り返すことによって、デコードブロックＤＢ１〜ＤＢ４が記憶領域４Ａに書き込まれる。記憶領域４Ａにはデコードブロックが４ブロック単位で順に書き込まれ、本実施の形態の例では、記憶領域４Ａは表示用のデコード画像として最大で１２０×４個のデコードブロックを同時に保持可能である。
【００５１】
また、画像記憶部４は複数（この例では８個）のメモリバンクＢＫ１〜ＢＫ８を有しており、隣接する行の画素データは異なるメモリバンクに書き込まれる。図８を参照して、まず、第０行に属する６４列×１行の画素データＲ０が画像記憶部４のメモリバンクＢＫ１に書き込まれ、次に、第１行に属する画素データＲ１がメモリバンクＢＫ２に書き込まれ、次に、第２行に属する画素データＲ２がメモリバンクＢＫ３に書き込まれる。以下同様に、第３行〜第７行に属する画素データＲ３〜Ｒ７が、それぞれメモリバンクＢＫ４〜ＢＫ８に順に書き込まれる。さらに、第８行〜第１５行に属する画素データＲ８〜Ｒ１５が、それぞれメモリバンクＢＫ１〜ＢＫ８に順に書き込まれる。
【００５２】
また、本実施の形態の例では、デコードブロック生成部３０が生成するデコードブロックのＹＵＶフォーマットはＹＵＶ４２０であるため、偶数行に属する画素データには輝度データのみが含まれ、奇数行に属する画素データには輝度データ及び色差データが含まれる。具体的には、偶数行に関しては１画素あたり１個の輝度データが含まれ、奇数行に関しては１画素あたり１個の輝度データと１個の色差データとが含まれる。つまり、奇数行のデータ量は偶数行のデータ量の２倍となる。従って、奇数行のデータ転送におけるバースト長を、偶数行のバースト転送におけるバースト長の２倍に設定することにより、偶数行に関しては１回のバースト転送によって１行分の輝度データが記憶領域４Ａに書き込まれ、奇数行に関しては１回のバースト転送によって１行分の輝度データ及び色差データが記憶領域４Ａに書き込まれる。なお、上記とは逆に、偶数行に属する画素データには輝度データ及び色差データが含まれ、奇数行に属する画素データには輝度データのみが含まれていてもよい。この場合には、偶数行のデータ転送におけるバースト長を、奇数行のバースト転送におけるバースト長の２倍に設定することにより、奇数行に関しては１回のバースト転送によって１行分の輝度データが画像記憶部４に書き込まれ、偶数行に関しては１回のバースト転送によって１行分の輝度データ及び色差データが画像記憶部４に書き込まれる。
【００５３】
なお、デコードブロック生成部３０が生成するデコードブロックのＹＵＶフォーマットはＹＵＶ４２２であってもよく、この場合には偶数行と奇数行とでデータ量は等しいため、データ転送におけるバースト長は偶数行と奇数行とで共通となる。
【００５４】
図９は、ＳＲＡＭ２６の構成に関する第１の例を示す図である。また図１０は、図９に対応して、ＳＲＡＭ２６に対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【００５５】
図９を参照して、ＳＲＡＭ２６は、それぞれにデコードブロックを１個ずつ格納可能な、合計Ｎ＋１個（この例では５個）の記憶領域Ｘ１〜Ｘ５を有する。
【００５６】
図１０を参照して、まず、マクロブロック期間Ｔ１〜Ｔ４において、デコードブロックＤＢ１〜ＤＢ４が記憶領域Ｘ１〜Ｘ４にそれぞれ書き込まれる。次に、マクロブロック期間Ｔ５において、デコードブロックＤＢ１〜ＤＢ４がラスタフォーマットのバースト転送によって記憶領域Ｘ１〜Ｘ４から読み出されるとともに、デコードブロックＤＢ５が記憶領域Ｘ５に書き込まれる。以降は同様に、マクロブロック期間Ｔ６〜Ｔ８において、デコードブロックＤＢ６〜ＤＢ８が記憶領域Ｘ１〜Ｘ３にそれぞれ書き込まれ、マクロブロック期間Ｔ９において、デコードブロックＤＢ５，ＤＢ６，ＤＢ７，ＤＢ８がラスタフォーマットのバースト転送によって記憶領域Ｘ５，Ｘ１，Ｘ２，Ｘ３から読み出されるとともに、デコードブロックＤＢ９が記憶領域Ｘ４に書き込まれる。
【００５７】
図１１は、ＳＲＡＭ２６の構成に関する第２の例を示す図である。また図１２は、図１１に対応して、ＳＲＡＭ２６に対するデコードブロックの書き込み及び読み出しのタイミングを示す図である。
【００５８】
図１１を参照して、ＳＲＡＭ２６は、それぞれにデコードブロックを１個ずつ格納可能な、合計２Ｎ個（この例では８個）の記憶領域Ｘ１〜Ｘ８を有する。
【００５９】
図１２を参照して、まず、マクロブロック期間Ｔ１〜Ｔ４において、デコードブロックＤＢ１〜ＤＢ４が記憶領域Ｘ１〜Ｘ４にそれぞれ書き込まれる。次に、マクロブロック期間Ｔ５において、デコードブロックＤＢ１〜ＤＢ４がラスタフォーマットのバースト転送によって記憶領域Ｘ１〜Ｘ４から読み出されるとともに、デコードブロックＤＢ５が記憶領域Ｘ５に書き込まれる。以降は同様に、マクロブロック期間Ｔ６〜Ｔ８において、デコードブロックＬＤＢ６〜ＬＤＢ８が記憶領域Ｘ６〜Ｘ８にそれぞれ書き込まれ、マクロブロック期間Ｔ９において、デコードブロックＤＢ５〜ＤＢ８がラスタフォーマットのバースト転送によって記憶領域Ｘ５〜Ｘ８から読み出されるとともに、デコードブロックＤＢ９が記憶領域Ｘ１に書き込まれる。
【００６０】
図１を参照して、表示処理部６は、記憶領域４Ａから表示用のデコード画像を読み出し、当該デコード画像に基づいて表示部７に画像を表示する。本実施の形態の例では、６４行分の画像データを格納可能な領域が記憶領域４Ａとして確保されている。表示処理部６は、デコードブロック生成部３０から記憶領域４Ａへの所定数のライン分（例えば３２行分）のデコードブロックの書き込みが完了した時点で、記憶領域４Ａから表示処理部６への画像データの転送を開始する。
【００６１】
図１３は、記憶領域４Ａから表示処理部６に画像データを転送する処理を示す図である。記憶領域４Ａから表示処理部６への画像データの転送は、画像の左端から右端に跨がる１行単位でのラスタフォーマットを用いたデータ転送によって行われる。
【００６２】
まず、図１３の（Ａ）に示すように、画像の左上角を起点として、記憶領域４Ａが保持している４個のローカルデコードブロックに跨がる行単位でのバースト転送を行うことによって、６４列×１行分の画像データが表示処理部６へ転送される。
【００６３】
次に、図１３の（Ｂ）及び（Ｃ）に示すように、画像の１行目に関して同様のデータ転送を右方向に進めることによって、画像データが６４列×１行分ずつ表示処理部６へ転送される。
【００６４】
１行目に関するデータ転送が完了すると、次に、図１３の（Ｄ）に示すように、画像の２行目の左端から順に同様のデータ転送を右方向に進めることによって、画像データが６４列×１行分ずつ表示処理部６へ転送される。以降は同様のデータ転送が繰り返されることによって、記憶領域４Ａから表示処理部６に１フレーム分の画像データが転送される。
【００６５】
また、図１に示したメモリ制御部５は、デコードブロック生成部３０から画像データが書き込まれている記憶領域４Ａ内の位置を、ライトポインタによって管理するとともに、表示処理部６へのデータ転送のために画像データが読み出されている記憶領域４Ａ内の位置を、リードポインタによって管理している。メモリ制御部５は、リードポインタとライトポインタとのアドレス差が所定のしきい値Ｔｈ（例えば１６ライン分に相当するアドレス差）以下となった場合には、その旨の通知信号をコーデック制御部３に送信する。当該通知信号を受信したコーデック制御部３は、デコードブロック生成部３０から記憶領域４Ａへの画像データの書き込みを一時的に停止する。
【００６６】
停止制御の第１の例として、コーデック制御部３は、コーデック処理部２の動作クロックを停止する。動作クロックは、コーデック処理部２内の各回路を同期制御するための信号である。動作クロックを停止することによってコーデック処理部２内の全ての回路の動作が停止されるため、デコードブロック生成部３０から記憶領域４Ａへの画像データの書き込みも停止される。
【００６７】
停止制御の第２の例として、コーデック制御部３は、コーデック処理部２におけるマクロブロック処理の開始信号（マクロブロックスタート信号）を停止する。マクロブロックスタート信号は、あるマクロブロックに対するデコード処理が完了した時点で、次のマクロブロックに対するデコード処理を開始させるための信号である。マクロブロックスタート信号を停止することによって次のマクロブロックに対するデコード処理の開始が待機されるため、デコードブロック生成部３０から記憶領域４Ａへの画像データの書き込みも停止される。
【００６８】
記憶領域４Ａへの画像データの書き込みが停止している間に記憶領域４Ａから表示処理部６へのデータ転送が進行し、リードポインタとライトポインタとのアドレス差がしきい値Ｔｈを超えた場合には、メモリ制御部５は、その旨の通知信号をコーデック制御部３に送信する。当該通知信号を受信したコーデック制御部３は、デコードブロック生成部３０から記憶領域４Ａへの画像データの書き込みを再開する。
【００６９】
このように本実施の形態に係る画像処理装置１によれば、メモリ制御部５（第１の制御部）は、デコードブロック生成部３０が生成したデコードブロックの画像データを、コーデック処理部２でのコーデック処理に適合した第１のアドレスフォーマット（コーデックフォーマット）で記憶領域４Ｂ（第１の記憶領域）に書き込むとともに、表示処理部６での表示処理に適合した第２のアドレスフォーマット（ラスタフォーマット）で記憶領域４Ａ（第２の記憶領域）に書き込む。これにより、表示処理部６は、記憶領域４Ａから読み出したラスタフォーマットのデコード画像に基づいて、表示部７において画像を表示することができる。従って、画像記憶部４から読み出したコーデックフォーマットのデコード画像をラスタフォーマットのデコード画像に変換するフォーマット変換回路の実装を省略することができる。その結果、フォーマット変換回路から画像記憶部４へのアクセスが不要となるため、遅延時間の短縮、消費電力の低減、及びバス帯域の削減を実現することが可能となる。
【００７０】
また、本実施の形態に係る画像処理装置１によれば、表示処理部６は、デコードブロック生成部３０から記憶領域４Ａへの所定数のライン分のデコードブロックの書き込みが完了した時点で、記憶領域４Ａからの画像データの読み出しを開始する。従って、表示処理部６が記憶領域４Ａから画像データの読み出しを開始する時点では、記憶領域４Ａ内に十分な画像データが蓄積されているため、表示部７において動画像を途切れなく表示することが可能となる。しかも、記憶領域４Ａとして、１フレーム分の画像データを蓄積可能な領域を画像記憶部４内に確保する必要がないため、表示用の記憶領域４Ａを設定することに伴う画像記憶部４の記憶領域の減少を、最小限に抑制することが可能となる。
【００７１】
また、本実施の形態に係る画像処理装置１によれば、コーデック制御部３（第２の制御部）は、表示処理部６によって画像データが読み出されている記憶領域４Ａ内の位置と、デコードブロック生成部３０から画像データが書き込まれている記憶領域４Ａ内の位置とのアドレス差が所定のしきい値Ｔｈ以下となった場合には、コーデック処理部２の動作クロックを停止する。従って、画像記憶部４に対する読み出し速度が書き込み速度よりも遅い場合であっても、コーデック制御部３がコーデック処理部２の動作クロックを停止することにより、読み出しが未完了の領域に次の画像データが書き込まれる事態を回避することが可能となる。しかも、動作クロックを停止することによって、コーデック処理部２における消費電力を低減することが可能となる。
【００７２】
また、本実施の形態に係る画像処理装置１によれば、コーデック制御部３は、表示処理部６によって画像データが読み出されている記憶領域４Ａ内の位置と、デコードブロック生成部３０から画像データが書き込まれている記憶領域４Ａ内の位置とのアドレス差が所定のしきい値Ｔｈ以下となった場合には、コーデック処理部２におけるブロック処理の開始信号を停止する。従って、画像記憶部４に対する読み出し速度が書き込み速度よりも遅い場合であっても、コーデック制御部３がコーデック処理部２におけるブロック処理の開始信号を停止することにより、読み出しが未完了の領域に次の画像データが書き込まれる事態を回避することが可能となる。しかも、動作クロックは停止せず、ブロック処理の開始信号を停止することによって、動作再開時のバグの発生を回避することが可能となる。
【００７３】
また、本実施の形態に係る画像処理装置１によれば、デコードブロック生成部３０は、順に生成したＮ個のデコードブロックを行方向に並べてＳＲＡＭ２６（デコードブロック保持部）に書き込む。また、ＳＲＡＭ２６は、Ｎ個のデコードブロックに跨がる行単位でのバースト転送によって、自身が保持しているＮ個のデコードブロックを記憶領域４Ａに書き込む。つまり、ＳＲＡＭ２６へのデコードブロックの格納まではブロック単位での処理を行い、ＳＲＡＭ２６から記憶領域４Ａへのデコードブロックの書き込みは、ラスタフォーマットを用いたメモリアクセスによって行う。このように、単純なラスタフォーマットを用いたメモリアクセスを行うことにより、デコードブロックを記憶領域４Ａへ簡易に書き込むことが可能となる。しかも、行方向に並ぶ複数Ｎ個のデコードブロックを対象としてラスタフォーマットでのバースト転送を行うため、効率的なバースト転送を行うことが可能となる。また、画像記憶部４は、記憶領域４Ａに保持しているデコード画像を、行単位でのバースト転送によって表示処理部６に転送する。このように、ラスタフォーマットのデコード画像を記憶領域４Ａに格納しておくことにより、表示部７において画像を表示するために必要なラスタフォーマットの画像データを、画像記憶部４から表示処理部６に簡易に転送することが可能となる。
【００７４】
また、本実施の形態に係る画像処理装置１によれば、ＳＲＡＭ２６は、保持しているＮ個のデコードブロック内の第１の行に属する画素データを、画像記憶部４の第１のメモリバンクに書き込み、第１の行に隣接する第２の行に属する画素データを、第１のメモリバンクとは異なる第２のメモリバンクに書き込む。このように、隣接する行の画素データを異なるメモリバンクに書き込むことにより、第１の行に属する画素データの書き込みが完了すると同時に、第２の行に属する画素データの書き込みを開始することができる。その結果、同一のメモリバンクに連続してアクセスする際に必要となる待ち時間の発生を回避できるため、書き込みの所要時間を短縮することが可能となる。
【００７５】
また、図９，１０に示した例によれば、第１乃至第Ｎのブロック期間において、デコードブロック生成部３０は、第１乃至第ＮのデコードブロックをＳＲＡＭ２６に順に書き込む。そして、第Ｎ＋１のブロック期間において、デコードブロック生成部３０は、第Ｎ＋１のデコードブロックをＳＲＡＭ２６に書き込み、ＳＲＡＭ２６は、第１乃至第Ｎのデコードブロックを画像記憶部４に書き込む。従って、ＳＲＡＭ２６に対するデコードブロックの書き込み及び読み出しを、同時に行うことが可能となる。しかも、ＳＲＡＭ２６に必要な記憶容量は、Ｎ＋１個のデコードブロックを保持できる記憶容量で足りるため、２Ｎ個のデコードブロックを保持するＳＲＡＭ２６を実装する図１１，１２に示した例と比較して、必要な記憶容量を削減することが可能となる。
【００７６】
また、本実施の形態に係る画像処理装置１によれば、フォーマット変換部９は、デコードブロック生成部３０が生成したデコードブロックのＹＵＶフォーマット（例えばＹＵＶ４２０）を、当該デコードブロックが記憶領域４Ａに書き込まれる前に、表示部７に適合するＹＵＶフォーマット（例えばＹＵＶ４２２）に変換する。従って、デコードブロック生成部３０が生成したデコードブロックのＹＵＶフォーマットが、表示部７に適合するＹＵＶフォーマットとは異なる場合であっても、ＹＵＶフォーマットを変換することにより、表示部７において画像を表示することが可能となる。
【００７７】
＜変形例１＞
上記実施の形態では、デコーダが生成するデコード画像を表示部７で表示する例について説明したが、エンコーダが生成するローカルデコード画像を表示部７で表示してもよい。
【００７８】
＜変形例２＞
上記実施の形態では、デコードブロック生成部３０が生成したデコードブロックに対して、フォーマット変換部９がＹＵＶ４２０からＹＵＶ４２２へのフォーマット変換を行い、フォーマット変換後のデコードブロックを記憶領域４Ａに書き込む例について説明した。この例とは異なり、フォーマット変換部９によるフォーマット変換を省略し、ＹＵＶ４２０のデコードブロックを記憶領域４Ａに書き込んでもよい。
【００７９】
図１４は、本変形例に係る表示処理部６の構成を簡略化して示す図である。表示処理部６は、ＳＲＡＭ４１及びフォーマット変換部４２を備えて構成されている。記憶領域４Ａから読み出されたデコード画像の画像データＤ３０は、ＳＲＡＭ４１を介してフォーマット変換部４２に入力される。フォーマット変換部４２は、デコード画像のＹＵＶフォーマットをＹＵＶ４２０からＹＵＶ４２２に変換し、その変換後の画像データＤ３１を表示部７に入力する。
【００８０】
本変形例に係る画像処理装置１によれば、フォーマット変換部４２は、記憶領域４Ａから読み出したデコード画像のＹＵＶフォーマット（例えばＹＵＶ４２０）を、表示部７に適合するＹＵＶフォーマット（例えばＹＵＶ４２２）に変換する。従って、記憶領域４Ａが保持しているデコード画像のＹＵＶフォーマットが、表示部７に適合するＹＵＶフォーマットとは異なる場合であっても、ＹＵＶフォーマットを変換することにより、表示部７において画像を表示することが可能となる。しかも、記憶領域４Ａにはフォーマット変換前のデコード画像を格納すれば良いため、記憶領域４Ａに必要な記憶容量を削減することが可能となる。
【符号の説明】
【００８１】
１  画像処理装置
２  コーデック処理部
３  コーデック制御部
４  画像記憶部
４Ａ，４Ｂ  記憶領域
５  メモリ制御部
６  表示処理部
７  表示部
９  フォーマット変換部
２６  ＳＲＡＭ（デコードブロック保持部）
３０  デコードブロック生成部
４２  フォーマット変換部
【図１】
2015127737.tif 000003
【図２】
2015127737.tif 000004
【図３】
2015127737.tif 000005
【図４】
2015127737.tif 000006
【図５】
2015127737.tif 000007
【図６】
2015127737.tif 000008
【図７】
2015127737.tif 000009
【図８】
2015127737.tif 000010
【図９】
2015127737.tif 000011
【図１０】
2015127737.tif 000012
【図１１】
2015127737.tif 000013
【図１２】
2015127737.tif 000014
【図１３】
2015127737.tif 000015
【図１４】
2015127737.tif 000016