(57)【要約】【課題】  画像データのリアルタイム再配置のためのバッファメモリを効率よく行うことが可能な画像処理装置、マイクロコンピュータ、電子機器を提供すること。【解決手段】  本画像処理装置は、ラインベースの順序で入力された画像データをバッファメモリ１６０に一時記憶し、ブロックインターリーブの順序で出力する画像データ再配置処理部１５０を含む。前記バッファメモリ１６０は、１画像分の入力画像データを記憶するのに必要な容量よりも小さい容量を有する。前記画像データ再配置処理部１５０は、水平方向画素数にもとづいて、前記バッファメモリの処理バンク数を決定又は変更する回路１８０と、決定又は変更された前記処理バンク数に基づいてバッファメモリ１６０に書き込みを行う回路１７２と、前記処理バンク数にもとづいて書き込みを行う回路１７４とを含む。【選択図】        図５
2005182384.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
ラインベース／ブロックインターリーブ形式の順序で入力された画像データをバッファメモリに一時記憶させ、バッファメモリに記憶された画像データを読み出してブロックインターリーブ／ラインベース形式の順序で出力する画像データ再配置処理部を含み、
前記バッファメモリは、１画像分の入力画像データを記憶するのに必要な容量よりも小さい容量を有するように構成され、
前記画像データ再配置処理部は、
ラインベースで入力／出力される際の画像データの水平方向画素数にもとづいて、前記バッファメモリの処理バンク数を決定又は変更する回路と、
入力画像データを、入力形式の順序に従って前記バッファメモリに書き込む書き込み回路と、
変換後の出力形式の順序に従って前記バッファメモリから画像データを読み出す読み出し回路とを含み、
前記書き込み回路は、
所定の書き込みスタートアドレスから入力データの書き込みを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大書き込み範囲を判断し、書き込みアドレスが最大書き込み範囲に達したら、前記所定の書き込みスタートアドレスに戻るように書き込みアドレスを制御する回路を含み、
前記読み出し回路は、
所定の読み出しスタートアドレスから出力データの読み出しを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大読み出し範囲を判断し、読み出しアドレスが最大読み出し範囲に達したら、前記所定の読み出しスタートアドレスに戻るように読み出しアドレスを制御する回路を含むことを特徴とする画像処理装置。
【請求項２】
請求項１において、
入力される画像データのＹＵＶフォーマット情報に基づいて、バッファメモリのＹ成分格納領域とＵＶ成分格納領域の容量配分を決定する回路を含み、
前記書き込み回路は、
前記容量配分に基づき前記所定の書き込みスタートアドレスを決定する回路を含み、
前記読み出し回路は、
前記容量配分に基づき前記所定の読み出しスタートアドレスを決定する回路を含むことを特徴とする画像処理装置。
【請求項３】
請求項１乃至２のいずれかに記載の画像処理装置を含むことを特徴とするマイクロコンピュータ。
【請求項４】
請求項３に記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力手段と、
前記マイクロコンピュータにより処理されたデータを出力するためのＬＣＤ出力手段とを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、マイクロコンピュータ、電子機器及び画像縮小方法に関する。
【背景技術】
【０００２】
液晶表示制御用IC（S1D13712等）に搭載されているJPEG画像圧縮処理部のYUVデータ処理部分では、入力画像データがラインベース（走査線型）であるのに対し、実際のJPEG圧縮処理部の入力信号は仕様上、ブロックインターリーブ（矩形画像でYUVデータを各々を正方形画像単位で別々に扱う）形式となっているため、ラインベースのデータを一時蓄積し、ブロックインターリーブ形式にデータ順序を変更する機能が必要となる。
【０００３】
入力画像データがラインベース（走査線型）で有る場合には例えば図１に示すように、１画面分の画像データをラインベースでライン１０−１、ライン１０−２、・・・の順番で入出力される。ここでＰ１，Ｐ２、・・は１画素であり、Ｐの添え字の順に転送される。
【０００４】
またブロックインターリーブ形式の場合には、例えば図２に示すように、１画面分の画像データをＪＰＥＧ処理ブロック単位（ＭＣＵ：Minimum Coded Unit）にＭＣＵ２０−１、ＭＣＵ２０−２、ＭＣＵ２０−３、・・・の順番で、ＹＵＶデータがＹ→Ｕ→Ｖの順番に、各々が８ｘ８（水平方向画素数ｘ垂直方向画素数）の単位で入出力される。
【０００５】
従って例えばＹＵＶ画像データフォーマット変更モジュールの出力をＪＰＥＧ圧縮処理モジュールに入力する際には、図１のようにラインベースで出力された画像データを図２のようにブロックインターリーブ形式に際配置して、ＪＰＥＧ圧縮処理モジュールに入力することが必要になる。
【０００６】
リアルタイムJPEG圧縮処理を行う場合、このYUV順序変換回路が必要とするデータ蓄積容量は、1画面分のデータを蓄積後に処理するわけではないので、許容する最大画像（の水平方向画素数）を処理可能な最小限のデータ蓄積容量と制限される。
【特許文献１】特開平１０−３４１４５６号
【特許文献２】特開２００１−６９４５０号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
画像撮像素子（カメラ）の出力形式（単位）がラインベース形式であるのに対し、JPEG圧縮処理部はブロックインターリーブ形式を要求する為、水平方向画素数×８（圧縮形式によってはｘ１６）分のデータバンク（１バンク）を蓄積できるバッファメモリが必要となる。蓄積後、データを出力し終えるまで上書き禁止とする為には、さらに同等の容量（１バンク）が必要であるが、このバッファメモリを2バンクで構成すると、水平方向画素数が極めて小さい場合等のライン入力データが１バンク蓄積される時間に対し、出力データの排出が遅くなる傾向になり、データの超過が発生し易い。
【０００８】
またＹＵＶフォーマットには主な構成に４つの種類（YUV4:4:4,YUV4:2:2,YUV4:2:0,YUV4:1:1）があり、各々で１画素当りのデータ量が異なる為、バッファメモリ内のアドレスを連続的に使用すると、読み出し時のアドレス生成が複雑になる。この方法ではバッファメモリへの要求・応答の時間や回数が増加する傾向になる。
【０００９】
本発明は以上のような問題点に鑑みてなされたものであり、その目的とするところは、画像データのリアルタイム再配置のためのバッファメモリを効率よく行うことが可能な画像処理装置、マイクロコンピュータ、電子機器を提供することである。
【課題を解決するための手段】
【００１０】
（１）本発明は、画像処理装置であって、
ラインベース／ブロックインターリーブ形式の順序で入力された画像データをバッファメモリに一時記憶させ、バッファメモリに記憶された画像データを読み出してブロックインターリーブ／ラインベース形式の順序で出力する画像データ再配置処理部を含み、
前記バッファメモリは、１画像分の入力画像データを記憶するのに必要な容量よりも小さい容量を有するように構成され、
前記画像データ再配置処理部は、
ラインベースで入力／出力される際の画像データの水平方向画素数にもとづいて、前記バッファメモリの処理バンク数を決定又は変更する回路と、
入力画像データを、入力形式に従って前記バッファメモリに書き込む書き込み回路と、
変換後の出力形式に従って前記バッファメモリから画像データを読み出す読み出し回路とを含み、
前記書き込み回路は、
所定の書き込みスタートアドレスから入力データの書き込みを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大書き込み範囲を判断し、書き込みアドレスが最大書き込み範囲に達したら、前記所定の書き込みスタートアドレスに戻るように書き込みアドレスを制御する回路を含み、
前記読み出し回路は、
所定の読み出しスタートアドレスから出力データの読み出しを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大読み出し範囲を判断し、読み出しアドレスが最大読み出し範囲に達したら、前記所定の読み出しスタートアドレスに戻るように読み出しアドレスを制御する回路を含むことを特徴とする。
【００１１】
ここにおいてバッファメモリは、入力される画像の水平方向画素数×ＭＣＵの垂直方向画素数×２の容量が必要である。
【００１２】
入力画像データを、入力形式に従って前記バッファメモリに書き込むとは、ラインベースで入力される場合にはラインベースで書き込みを行い、ブロックインターリーブ形式で入力される場合にはブロックインターリーブ形式で書き込みを行うという意味である。
【００１３】
またバンクとは、画像圧縮モジュール（例えばＪＲＥＧモジュールやＭＰＥＧモジュール）の１ＭＣＵの縦方向の画素数×画像データの水平方向の画素数を１単位とする画素グループ（又は当該画素グループに対応したデータの集合）を表す概念である。
【００１４】
本実施の形態では、ラインベースで入力／出力される際の画像データの水平方向画素数にもとづいて、前記バッファメモリの処理バンク数を決定又は変更して、決定又は変更された処理バンク数でバッファメモリへの読み出しや書き込みを行う。
【００１５】
従ってハードウェアとしての限られたバッファメモリ容量に対し、バンク構成を所定の数に限定せずに、水平方向画素数に基づき変更することができるのでバッファメモリをより有効活用出来るようになる。
【００１６】
また入力データ対出力データの比率がデータ超過現象を起こす傾向にある条件を加味し、その一因である水平方向画素数によりバンク構成を変更することで、データ超過現象が発生し難いように構成することもできる。
【００１７】
（２）本発明の画像処理装置は、
入力される画像データのＹＵＶフォーマット情報に基づいて、バッファメモリのＹ成分格納領域とＵＶ成分格納領域の容量配分を決定する回路を含み、
前記書き込み回路は、
前記容量配分に基づき前記所定の書き込みスタートアドレスを決定する回路を含み、
前記読み出し回路は、
前記容量配分に基づき前記所定の読み出しスタートアドレスを決定する回路を含むことを特徴とする。
【００１８】
本発明によれば1画素当りのデータ量がＹＵＶフォーマットに対して変化するUデータ及びVデータを、ＹＵＶフォーマットに対して変化しないYデータと区別し、バッファメモリ内でのアドレス領域を別々にすることで、回路の簡素化を計ることができる。
【００１９】
（３）本発明は、上記のいずれかに記載の画像処理装置を含むことを特徴とするマイクロコンピュータである。
【００２０】
（４）本発明は、上記に記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力手段と、
前記マイクロコンピュータにより処理されたデータを出力するためのＬＣＤ出力手段とを含むことを特徴とする電子機器である。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【００２２】
図３は本実施の形態の画像処理装置の機能ブロック図の一例である。
【００２３】
本実施の形態の画像処理装置は、例えばリサイズモジュール１１０、ＹＵＶモジュール１２０、圧縮／身長モジュール１３０、ＬＣＤコントローラ１４０、画像データ再配置モジュール１５０、バッファメモリ１６０を含む。
【００２４】
リサイズモジュール１１０は、取得した画像データ（例えば撮像手段等で撮影した画像データでも良いし、外部から受信した画像データでも良い）の画像サイズの変更、画像の切り取りを行う。
【００２５】
ＹＵＶモジュール１２０は、ＹＵＶ画像データのフォーマット変更等を行う。
【００２６】
リサイズモジュール１１０やＹＵＶモジュール１２０の入出力やＬＣＤコントローラへの入力は、ラインベース形式の順序の画像データである。
【００２７】
圧縮／伸長モジュール１３０は、画像データの圧縮／伸長を行うもので、例えばＪＰＥＧやＭＰＥＧの圧縮／伸長モジュール等でもよい。圧縮／伸長モジュール１３０への入出力は、ブロックインターリーブ形式の順序の画像データで行われる。
【００２８】
画像データ再配置モジュール１５０は、ラインベース／ブロックインターリーブ形式の順序で入力された画像データをブロックインターリーブ／ラインベース形式の順序にリアルタイムに変換して出力する画像データ再配置処理部として機能し、入力画像データを一時記憶するバッファメモリ１６０を含む。
【００２９】
本画像処理装置では、例えばＹＵＶモジュール１２０からラインベース形式の順序の画像データ１２２が出力されると、画像データ再配置モジュール１５０は当該画像データ１２２を入力してブロックインターリーブ形式の順序の画像データ１３２に並べ替えて、圧縮／伸長モジュール１３０に向け出力する。
【００３０】
また逆に圧縮／伸長モジュール１３０からブロックインターリーブ形式の順序の画像データ１３２’が出力されると、画像データ再配置モジュール１５０は当該画像データ１３２’をラインベース形式の順序の画像データ１２２’に並べ替えて、リサイズモジュール１１０に向け出力する。
【００３１】
図４（Ａ）（Ｂ）は画像データ再配置モジュールの入出力データについて説明するための図である。
【００３２】
図４（Ａ）の１０は、ＹＵＶモジュールの出力として本実施の形態の画像データ再配置モジュールに入力されるデータの順序を示しており、２０は本実施の形態の画像データ再配置モジュールから出力されるデータの順序を示している。このように本実施の形態では１０に示すようなラインベース形式の順序の画像データ１０（例えばＹＵＶモジュールの出力）を入力してリアルタイムにブロックインターリーブ形式の順序の画像データ２０（例えば圧縮／伸長モジュールの入力）に再配置して出力する。
【００３３】
ここでリアルタイムにとは、バッファモジュールへの書き込みとバッファモジュールからの読み出しを平行して同時に行うことでデータの並び替えを行うような場合をいい、１画像分の画像データをバッファメモリに書き込んだ後に読み出しを行うような場合を含まない。
【００３４】
また図４（Ｂ）の２０は、画像圧縮／伸長モジュールの出力として本実施の形態の画像データ再配置モジュールに入力されるデータの順序を示しており、１０は本実施の形態の画像データ再配置モジュールから出力されるデータの順序を示している。このように本実施の形態では２０に示すようなブロックインターリーブ形式の順序の画像データ１０（例えば圧縮／伸長モジュールの出力）を入力してリアルタイムにラインベース形式の順序の画像データ２０（例えばＹＵＶモジュールの入力）に再配置して出力する。
【００３５】
図５は、本実施の形態の画像データ再配置モジュールの機能ブロック図である。
【００３６】
本実施の形態の画像データ再配置モジュール１５０は、バッファメモリ１６０と、Ｒ／Ｗコントロール回路１７０と、処理バンク決定回路１８０と、容量配分決定回路１９０とを含む。
【００３７】
処理バンク決定回路１８０は、ラインベースで入力／出力される際の画像データ１２２，１２２’の入力水平方向画素数情報１８２及び対応可能水平方向画素数設定情報１８４にもとづいて、前記バッファメモリの処理バンク数を決定又は変更する。
【００３８】
Ｒ／Ｗコントロール回路は入力データ１２２、１３２’のバッファメモリ１６０への書き込み、出力データ１２２’、１３２のバッファメモリ１６０からの読み出しを制御する回路であり、入力画像データ１２２，１３２’を、入力形式に従って前記バッファメモリに書き込む書き込み回路１７２と、変換後の出力形式（出力データ１２２’、１３２）の出力形式に従って前記バッファメモリ１６０から画像データを読み出す読み出し回路１７４とを含む。
【００３９】
バッファメモリ１６０は、１画像分の入力画像データを記憶するのに必要な容量よりも小さい容量を有するように構成され、最低限入力される画像の水平方向画素数×ＭＣＵの垂直方向画素数×２の容量が必要である。
【００４０】
書き込み回路１７２は、バッファメモリ１６０の所定の書き込みスタートアドレスから入力データの書き込みを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大書き込み範囲を判断し、書き込みアドレスが最大書き込み範囲に達したら、前記所定の書き込みスタートアドレスに戻るように書き込みアドレスを制御する回路を含む。
【００４１】
また読み出し回路１７４は、バッファメモリ１６０の所定の読み出しスタートアドレスから出力データの読み出しを開始し、決定又は変更された前記処理バンク数に基づいてバッファメモリの最大読み出し範囲を判断し、読み出しアドレスが最大読み出し範囲に達したら、前記所定の読み出しスタートアドレスに戻るように書き込みアドレスを制御する回路を含む。
【００４２】
また容量配分決定回路１９０は、入力される画像データ１２２，１３２’のＹＵＶフォーマット情報１９２に基づいて、バッファメモリ１６０のＹ成分格納領域とＵＶ成分格納領域の容量配分（スタートアドレスを変える）を決定する回路を含む。
【００４３】
また書き込み回路１７２は、前記容量配分に基づき前記所定の書き込みスタートアドレスを決定する回路を含む。
【００４４】
また読み出し回路１７４は、前記容量配分に基づき前記所定の読み出しスタートアドレスを決定する回路を含む。
【００４５】
図６は本実施の形態の処理バンクについて説明するための図である。
【００４６】
２０に示すように画像データをブロックインターリーブ形式のデータの順序で出力するためには、ＭＣＵ２０−１、２０−２、・・・を構成する垂直方向の画素数が８画素（ＹＵＶ４２０では１６画素）であるため、ラインベースで８ライン分（ＹＵＶ４２０では１６ライン分）のデータが必要となる。従ってラインベースで入力された画像データ１０がバッファメモリ１６０に８ライン分（バンク１（２００−１）分）貯まってから、次の８ライン分の入力データ（バンク２（２００−２））が書き込まれている最中に、バンク１（２００−１）のデータをＭＣＵ２０−１、２０−２、・・・の順に読み出して外部に出力する。
【００４７】
このように本実施の形態ではバンク２（２００−２）に書き込みが行われている間にバンク１（２００−１）の読みだしが平行して行われる為の最低限度である、２バンク分の画像データ容量でバッファメモリを構成することができる。
【００４８】
また入力データを一時記憶するためのバッファメモリの容量は、ユーザーの設定や設計によって予め決められている。このため入力画像データの水平方向画素数によって確保できるバンク数が異なってくる。
【００４９】
バッファメモリを効率よく使用するためには、無駄な不使用領域を作らずにバッファメモリに可能なかぎりの入力データを記憶させることが好ましい。
【００５０】
本実施の形態では入力画像データの水平方向画素数（及び対応可能水平方向画素数設定）に応じて処理バンク数を変更することによってそれを実現している。
【００５１】
図７は、本実施の形態の処理バンクの決定例について説明するための図である。
【００５２】
２５０は、実際に画像データ再配置モジュールに入力／出力される画像データの１画像の入力水平方向画素数である。これは例えば図５の水平方向画素数として圧縮／伸長モジュールやＹＵＶモジュールやその他の設定レジスタから取得することができる。
【００５３】
２６０は、対応可能水平方向画素数で、システムが予定している最大水平方向処理サイズ意味している。これは例えば図５の対応可能水平方向画素数として設定レジスタ等から取得することができる。
【００５４】
２７０は処理バンク数で、画像データ再配置モジュールの処理バンク決定回路が決定する。
【００５５】
この処理バンク数に基づいてバッファメモリの最大書き込み範囲が判断される。すなわち入力データは、先頭位置（所定の書き込みスタートアドレス）から決定された処理バンク数分だけ書き込まれると、再び先頭位置（所定の書き込みスタートアドレス）に戻り、また決定された処理バンク数分だけ書き込まれる処理が繰り返される事になる。
【００５６】
またこの処理バンク数に基づいてバッファメモリの最大読み出し範囲が判断される。すなわち出力データは、先頭位置（所定の読み出しスタートアドレス）から決定された処理バンク数分だけ読み出されると、再び先頭位置（所定の読み出しスタートアドレス）に戻り、また決定された処理バンク数分だけ読み出される処理が繰り返される事になる。
【００５７】
なお対応可能水平方向画素数２６０が予めシステムで固定されている場合には、対応可能水平方向画素数２５０のみに基づき処理バンク数２７０を決定するようにしても良い。
【００５８】
図８は、本実施の形態において、対応可能水平方向画素数により必要となるバッファメモリの容量について示した図である。
【００５９】
１バンクのデータ数２８０は、YUV4:4:4,YUV4:2:2,YUV4:2:0,YUV4:1:1の全てに対応した場合のデータ数である。そしてバッファメモリの必要容量２９０は、最低でも「書込みバンク」と「読出しバンク」が必要な為、２バンク分のデータを格納できる容量になる。
【００６０】
図９は、本実施の形態の処理バンクと他の構成との比較例について説明するための図である。
【００６１】
３１０は初期設定Ｇ０等で定義されたバッファメモリの全容量を示している。３２０に示すように条件Ｇ１（仕様上の最大水平方向画素数設定時）の際は２バンク（バンク０（３２２）、バンク１（３２４））構成で処理を行う。
【００６２】
３３０と３４０は、それぞれ同一の条件Ｇ２とＧ３（いずれも実際の入力水平方向画素数Ｘが極小画素数の場合）における他の例におけるバッファメモリの使用法と本実施の形態におけるバッファメモリの使用法を示している。
【００６３】
他の例３３０では、バッファメモリを「書込み中バンク」（バンク０（３３２））と「読出し中バンク」（バンク１（３３４））の常時２バンク構成としてバッファメモリを使用する。
【００６４】
しかし本実施の形態では、３４０に示すようにバッファメモリを可能な限り使用し（バンク０（３４１）〜バンク７（３４８））、「書込み中バンク」、「書込み済・読出し可能バンク」、「読出し中バンク」の３種類の構成となる。
【００６５】
図１０（Ａ）（Ｂ）は、本実施の形態における入力される画像データのＹＵＶフォーマット情報とバッファメモリのＹ成分格納領域とＵＶ成分格納領域の容量配分について説明するための図である。
【００６６】
図１０（Ａ）の４１０は、ＹＵＶ画像データのフォーマットがＹＵＶ４４４の場合ブロックインターリーブ形式にする際の処理単位画素数は（水平方向×垂直方向）で８×８で、ＹＵＶ成分別の１画素当たりのデータ量がＹ：Ｕ：Ｖで１：１：１で、１画素当たりのデータ量が３バイト相当であることを示している。
【００６７】
また４２０は、ＹＵＶ画像データのフォーマットがＹＵＶ４２２の場合ブロックインターリーブ形式にする際の処理単位画素数は（水平方向×垂直方向）で１６×８で、ＹＵＶ成分別の１画素当たりのデータ量がＹ：Ｕ：Ｖで１：０．５：０．５で、１画素当たりのデータ量が２バイト相当であることを示している。
【００６８】
また４３０は、ＹＵＶ画像データのフォーマットがＹＵＶ４２０の場合ブロックインターリーブ形式にする際の処理単位画素数は（水平方向×垂直方向）で１６×１６で、ＹＵＶ成分別の１画素当たりのデータ量がＹ：Ｕ：Ｖで１：０．２５：０．２５で、１画素当たりのデータ量が１．５バイト相当であることを示している。
【００６９】
また４４０は、ＹＵＶ画像データのフォーマットがＹＵＶ４１１の場合ブロックインターリーブ形式にする際の処理単位画素数は（水平方向×垂直方向）で３２×８で、ＹＵＶ成分別の１画素当たりのデータ量がＹ：Ｕ：Ｖで１：０．２５：０．２５で、１画素当たりのデータ量が１．５バイト相当であることを示している。
【００７０】
図１０（Ｂ）の４５０は、ＹＵＶ４４４の場合のバッファメモリのＹ成分格納領域４５２とＵＶ成分格納領域４５４の容量配分について示している。同図に示すように、本実施の形態では、入力される画像データのＹＵＶフォーマット情報がＹＵＶ４４４であることを示している場合には、バッファメモリのＹ成分格納領域４５２とＵＶ成分格納領域４５４の容量配分を１：２と決定する。
【００７１】
４６０は、ＹＵＶ４２２の場合のバッファメモリのＹ成分格納領域４６２とＵＶ成分格納領域４６４の容量配分について示している。同図に示すように、本実施の形態では、入力される画像データのＹＵＶフォーマット情報がＹＵＶ４２２であることを示している場合には、バッファメモリのＹ成分格納領域４６２とＵＶ成分格納領域４６４の容量配分を１：１と決定する。
【００７２】
４７０は、ＹＵＶ４２０の場合のバッファメモリのＹ成分格納領域４７２とＵＶ成分格納領域４７４の容量配分について示している。同図に示すように、本実施の形態では、入力される画像データのＹＵＶフォーマット情報がＹＵＶ４２０であることを示している場合には、バッファメモリのＹ成分格納領域４７２とＵＶ成分格納領域４７４の容量配分を２：１と決定する。
【００７３】
４８０は、ＹＵＶ４１１の場合のバッファメモリのＹ成分格納領域４８２とＵＶ成分格納領域４８４の容量配分について示している。同図に示すように、本実施の形態では、入力される画像データのＹＵＶフォーマット情報がＹＵＶ４１１であることを示している場合には、バッファメモリのＹ成分格納領域４８２とＵＶ成分格納領域４８４の容量配分を２：１と決定する。
【００７４】
図１１（Ａ）（Ｂ）は、本実施の形態の処理の流れについてと入力データの有効タイミングについて説明するための図である。
【００７５】
ここで図１１（Ａ）中のブロック矢印はデータの流れを示す。またブロック矢印内の数字はデータのビット幅を示す。またデータは８ビット（１バイト）を１データとする。  JPEG圧縮処理は８ライン（YUV4:2:0の場合のみ１６ライン）毎に処理可能である。
【００７６】
以下の文章でＡ〜Ｇは下記を意味する。
【００７７】
Ａ：撮像素子・信号処理回路５００
Ｂ：YUVデータバス幅変換回路５１０
Ｃ：YUVデータ分別・書込みアドレス発生器５２０
Ｄ：書込み読出し制御部５４０
Ｅ：読出しアドレス発生器５５０
Ｆ：JPEG圧縮処理部５６０
Ｇ：バッファメモリ（共有）５３０
ここにおいてＡとＢがＹＵＶモジュール（図３の１２０参照）に対応し、Ｃ，Ｄ，Ｅ、Ｇが画像データ再配置モジュール（図３の１５０参照）に対応し、Ｆが画像圧縮／伸長モジュール（図３の１３０参照）に対応する。
【００７８】
また水平方向画素数ｘJPEG圧縮処理可能なライン数のデータを１バンクと呼ぶことにする
まずＡから１バイトまたは２バイトずつのYUVデータがラインベースで出力される
次にＢはYUV4:4:4相当のデータ量を出力する。
【００７９】
次にＣはY・U・Vデータが各々４バイト蓄積される毎にGに書き込む（３２ビットメモリアクセス）が、Y・U・Vデータが同時に４バイト蓄積された場合の書込み優先順序はY、U、Vの順になる。
【００８０】
Ｃで蓄積されるデータは、Yは毎データ、U及びVはJPEG圧縮処理形式により、以下のように異なる。いずれもYのデータに対する数値である。
【００８１】
YUV4:4:4  毎データ
YUV4:2:2  ２データにつき１データ
YUV4:1:1  ４データにつき１データ
【００８２】
次にＣはYデータとUデータ及びVデータを領域を区別してGに書き込む。ここでUデータ及びVデータは同じ領域の偶数アドレスと奇数アドレスに分けて書き込む。
【００８３】
次にＣはＧに１バンクのデータを書込む毎にＤに書込み完了を通知する。
【００８４】
次にＤはＣからの書込み完了通知を受けて、書込み完了バンク数をカウントする。
【００８５】
次にＥはYUVの各データをGから読出し、１バンクのデータを読出し完了毎にＤに通知する。
【００８６】
次にＤはＥからの読出し完了通知を受けて、読出し完了バンク数をカウントする。
【００８７】
次にＤは書込み完了バンク数が読出し完了バンク数を超えている場合にのみＥに読出しを許可する。
【００８８】
次にＤは対応可能水平方向画素数および入力水平方向画素数を各々設定値として持つ。
【００８９】
次にＧは仕様（処理可能な水平方向画素数）を満たす容量を持つ。
【００９０】
次にＤはＧの容量と水平方向画素数により書込み可能バンク数を随時決定する  
次にＤは書込み完了バンク数が読出し完了バンク数を超えている値が書込み可能バンク数を超える場合はエラーを発生する。
【００９１】
次にＤはＧの容量に対し、処理可能バンク数を決定する。処理可能バンク数は入力画像データの水平方向画素数を２進数で表した際の桁数に応じて決定される。
【００９２】
次にＥはＦに対して、ラインベースではなくブロックインターリーブでのデータ転送を行う。
【００９３】
次にＥからＦへのデータ転送はMCU単位で行う。
【００９４】
図１１（Ｂ）は毎データ有効であるＹデータに対し、Ｕデータ及びＶデータの有効であるタイミングを表している。
【００９５】
図１２はMCU内でのブロックデータ転送順序について説明するための図である。
【００９６】
MCUはYデータ、Uデータ及びVデータで構成されており、ＹＵＶフォーマットによって異なる。図の８×８のブロックは６４バイトのデータである。各ブロックはY→U→Vの順に転送される。Yデータのブロックが複数の場合（YUV4:4:4以外）は図の矢印の順に転送される。Yデータのブロックに対しUデータ（及びVデータ）のブロックの大きさが大きくなっているのは、入力画像範囲に対してのデータ量が少ないことを示す。
【００９７】
図１３は、ブロック内でのデータ転送順序について説明するための図である。８×８のブロック内での６４バイトのデータ転送順序は同図に示す番号順となっている。
【００９８】
２．マイクロコンピュータ
図１４は、本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
【００９９】
本マイクロコンピュータ７００は、ＣＰＵ５１０、キャッシュメモリ５２０、ＬＣＤコントローラ５３０、リセット回路５４０、プログラマブルタイマ５５０、リアルタイムクロック（ＲＴＣ）５６０、ＤＲＡＭコントローラ兼バスＩ／Ｆ５７０、割り込みコントローラ５８０、シリアルインターフェース５９０、バスコントローラ６００、Ａ／Ｄ変換器６１０、Ｄ／Ａ変換器６２０、入力ポート６３０、出力ポート６４０、Ｉ／Ｏポート６５０、クロック発生装置５６０、プリスケーラ５７０、ＭＭＵ７３０，画像デ処理回路７４０及びそれらを接続する汎用バス６８０、専用バス７３０等、各種ピン６９０等を含む。
【０１００】
ＲＡＭ７２０は主記憶及びビデオメモリとして機能するＤＲＡＭを含む。また前記共有ＲＡＭとして機能するＤＲＡＭ又はＳＲＡＭを含む。
【０１０１】
画像処理回路７４０は、例えば図３又は図５で説明した構成を有する。
【０１０２】
３．電子機器
図１５に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、マイクロコンピュータ（またはＡＳＩＣ）８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【０１０３】
ここで、入力部８２０は、種々のデータを入力するためのものである。マイクロコンピュータ８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、マイクロコンピュータ８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。  音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【０１０４】
図１６（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【０１０５】
図１６（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【０１０６】
図１６（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【０１０７】
本実施の形態のマイクロコンピュータを図１６（Ａ）〜図１６（Ｃ）の電子機器に組みこむことにより、メモリ容量が少なくて低コストの電子機器を提供することができる。
【０１０８】
なお、本実施形態を利用できる電子機器としては、図１１（Ａ）、（Ｂ）、（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のＬＣＤを使用する種々の電子機器を考えることができる。
【０１０９】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【図面の簡単な説明】
【０１１０】
【図１】入力画像データがラインベース（走査線型）である場合を示した図である。
【図２】入力画像データがブロックインターリーブ形式である場合を示した図である。
【図３】本実施の形態の画像処理装置の機能ブロック図の一例である。
【図４】図４（Ａ）（Ｂ）は画像データ再配置モジュールの入出力データについて説明するための図である。
【図５】本実施の形態の画像データ再配置モジュールの機能ブロック図である。
【図６】本実施の形態の処理バンクについて説明するための図である。
【図７】本実施の形態の処理バンクの決定例について説明するための図である。
【図８】本実施の形態において、対応可能水平方向画素数により必要となるバッファメモリの容量について示した図である。
【図９】本実施の形態の処理バンクと他の構成との比較例について説明するための図である。
【図１０】図１０（Ａ）（Ｂ）は、本実施の形態における入力される画像データのＹＵＶフォーマット情報とバッファメモリのＹ成分格納領域とＵＶ成分格納領域の容量配分について説明するための図である。
【図１１】図１１（Ａ）（Ｂ）は、本実施の形態の処理の流れについてと入力データの有効タイミングについて説明するための図である。
【図１２】MCU内でのブロックデータ転送順序について説明するための図である。
【図１３】ブロック内でのデータ転送順序について説明するための図である。
【図１４】本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
【図１５】マイクロコンピュータを含む電子機器のブロック図の一例を示す。
【図１６】図１６（Ａ）（Ｂ）（Ｃ）は、種々の電子機器の外観図の例である。
【符号の説明】
【０１１１】
１１０  リサイズモジュール、１２０  ＹＵＶモジュール、１３０  画像圧縮モジュール、１４０  ＬＣＤコントローラ、１５０  画像データ再配置モジュール、１６０  バッファメモリ、１７０  Ｒ／Ｗコントロール回路、１７２  書き込み回路、１７４  読み出し回路、１８０  処理バンク決定回路、１８２  入力画像水平方向画素数、１８４  対応可能水平方向画像設定情報、１９０  容量配分決定回路、１９２  ＹＵＶフォーマット情報、２００−１、２００−２  バンク、  ５１０  ＣＰＵ、５３０  ＬＣＤコントローラ、５４０  リセット回路、５５０  プログラマブルタイマ、５６０  リアルタイムクロック（ＲＴＣ）、５７０  ＤＲＡＭコントローラ兼バスＩ／Ｆ、５８０  割り込みコントローラ、５９０  シリアルインターフェース、６００  バスコントローラ、６１０  Ａ／Ｄ変換器、６２０  Ｄ／Ａ変換器、６３０  入力ポート、６４０  出力ポート、６５０  Ｉ／Ｏポート、６６０  クロック発生装置（ＰＬＬ）、６７０  プリスケーラ、６８０  汎用バス、６９０  各種ピン、７００  マイクロコンピュータ、７１０  ＲＯＭ、７２０  ＲＡＭ、７３０  ＭＭＵ、８００  電子機器、８５０    ＬＣＤ
【図１】
2005182384.tif 000003
【図２】
2005182384.tif 000004
【図３】
2005182384.tif 000005
【図４】
2005182384.tif 000006
【図５】
2005182384.tif 000007
【図６】
2005182384.tif 000008
【図７】
2005182384.tif 000009
【図８】
2005182384.tif 000010
【図９】
2005182384.tif 000011
【図１０】
2005182384.tif 000012
【図１１】
2005182384.tif 000013
【図１２】
2005182384.tif 000014
【図１３】
2005182384.tif 000015
【図１４】
2005182384.tif 000016
【図１５】
2005182384.tif 000017
【図１６】
2005182384.tif 000018