(57)【要約】【課題】  簡易な構成で画像の回転処理を行い、迅速にＤＲＡＭ（ＳＤＲＡＭ）に格納する。【解決手段】  画像データを回転処理しシンクロナスＤＲＡＭ（ＳＤＲＡＭ）に格納する際に、前記画像データが１行目のデータであるか、偶数行のデータであるか、１行目を除く奇数行のデータであるかに応じたコンペア回路１２０の一致判定結果をもとに、その一致判定結果が同一であるデータについて次の２ＲＯＷ分、または１ＲＯＷ分を先書きする画像データの投機処理を行うことで、データ転送効率を低下させているＳＤＲＡＭのＲＯＷアドレスへのアクセス負荷を軽減し、回転処理を伴う画像データの書き込みや読み出し処理を高速化する。【選択図】図１
2006109308.tif 000002
【特許請求の範囲】
【請求項１】
入力画像データを回転させて画像用ＤＲＡＭ内に格納する画像回転処理部と、
連続して入力される入力画像データの奇数列と偶数列に応じた列データを一時的に格納する列データ格納用ＲＡＭと、
前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較する比較回路とを備え、
前記画像回転処理部は、前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行う書き込み制御手段を有する、
ことを特徴とする画像処理装置。
【請求項２】
前記書き込み制御手段は、前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが１行目のデータであるか、偶数行のデータであるか、または前記１行目を除く奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行うことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記書き込み制御手段は、前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが１行目のデータであると、前記１行目の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された１行目の列データと次の１行の列データとに対する前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて前記次の１行分を先書きする画像データの投機処理を行うことを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記書き込み制御手段は、前記入力画像データの列データが１行目を除く偶数行のデータであると、前記偶数行の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された当該偶数行の列データと次の行の奇数行の列データとに対する前記比較回路の偶数行比較結果、および前記当該偶数行の列データと、その偶数行より１つ前の奇数行の列データとに対する前記比較回路の奇数行比較結果をもとに、前記偶数行の列データのうちの前記奇数行比較結果が不一致となったデータを通常処理により前記画像用ＤＲＡＭに書き込むとともに、前記不一致となったデータのうちで前記偶数行比較結果が一致となったデータについて所定行数分を先書きする画像データの投機処理を行うことを特徴とする請求項２記載の画像処理装置。
【請求項５】
前記書き込み制御手段は、前記入力画像データの列データが１行目を除く奇数行のデータであると、前記奇数行の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された当該奇数行の列データと次の行の偶数行の列データとに対する前記比較回路の奇数行比較結果、および前記当該奇数行の列データと、その奇数行より１つ前の偶数行の列データとに対する前記比較回路の偶数行比較結果をもとに、前記奇数行の列データのうちの前記偶数行比較結果が不一致となったデータを通常処理により前記画像用ＤＲＡＭに書き込むとともに、前記不一致となったデータのうちで前記奇数行比較結果が一致となったデータについて所定行数分を先書きする画像データの投機処理を行うことを特徴とする請求項２記載の画像処理装置。
【請求項６】
入力画像データを回転させて画像用ＤＲＡＭ内に格納する画像回転処理部を有する画像処理装置の制御方法であって、
連続して入力される入力画像データの奇数列と偶数列に応じた列データを一時的に格納する列データ格納用ＲＡＭと、前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較する比較回路とを設け、
前記画像回転処理部は、前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し前記画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行うことを特徴とする画像処理装置の制御方法。
【請求項７】
前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが１行目のデータであるか、偶数行のデータであるか、または前記１行目を除く奇数行のデータであるかを判定する判定ステップと、前記判定ステップの判定結果に応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行う投機処理ステップとを備えたことを特徴とする請求項６記載の画像処理装置の制御方法。
【請求項８】
前記判定ステップにおいて、前記入力画像データの列データが１行目のデータであると判定されると、前記投機処理ステップでは、前記１行目の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された１行目の列データと次の１行の列データとに対する前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて前記次の１行分を先書きする画像データの投機処理を行うことを特徴とする請求項７記載の画像処理装置の制御方法。
【請求項９】
前記判定ステップにおいて、前記入力画像データの列データが１行目を除く偶数行のデータであると判定されると、前記投機処理ステップでは、前記偶数行の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された当該偶数行の列データと次の行の奇数行の列データとに対する前記比較回路の偶数行比較結果、および前記当該偶数行の列データと、その偶数行より１つ前の奇数行の列データとに対する前記比較回路の奇数行比較結果をもとに、前記偶数行の列データのうちの前記奇数行比較結果が不一致となったデータを通常処理により前記画像用ＤＲＡＭに書き込むとともに、前記不一致となったデータのうちで前記偶数行比較結果が一致となったデータについて所定行数分を先書きする画像データの投機処理を行うことを特徴とする請求項７記載の画像処理装置の制御方法。
【請求項１０】
前記判定ステップにおいて、前記入力画像データの列データが１行目を除く奇数行のデータであると判定されると、前記投機処理ステップでは、前記奇数行の列データを回転させて前記画像用ＤＲＡＭ内に格納する際に、前記列データ格納用ＲＡＭにそれぞれ格納された当該奇数行の列データと次の行の偶数行の列データとに対する前記比較回路の奇数行比較結果、および前記当該奇数行の列データと、その奇数行より１つ前の偶数行の列データとに対する前記比較回路の偶数行比較結果をもとに、前記奇数行の列データのうちの前記偶数行比較結果が不一致となったデータを通常処理により前記画像用ＤＲＡＭに書き込むとともに、前記不一致となったデータのうちで前記奇数行比較結果が一致となったデータについて所定行数分を先書きする画像データの投機処理を行うことを特徴とする請求項７記載の画像処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種映像機器に設けられて画像データ処理、メモリ制御、回転処理等の画像処理を行う画像処理装置及びその制御方法に関し、特に画像データを回転処理してＤＲＡＭ（ＳＤＲＡＭを含む）に格納するのに好適な画像処理装置及びその制御方法に関する。
【背景技術】
【０００２】
従来より、カラー画像を扱う映像機器としては、デジタルカメラ装置、ＴＶ受像装置、ＶＴＲ装置、ＤＶＤ装置等、各種のものが提供されており、画像の蓄積や一時格納用の画像メモリとしてＤＲＡＭ（ダイナミックランダムアクセスメモリ）やＳＤＲＡＭ（シンクロナスＤＲＡＭ）を用いたものが知られている（例えば、特許文献１〜３参照）。
このＤＲＡＭによる画像メモリを用いたシステムにおいては、ＤＲＡＭコントローラによってＤＲＡＭのアドレスを指定して各種コマンドを制御することにより、画像データの書き込みや読み出しを行うが、ＤＲＡＭのメモリ空間は、縦方向のＲＯＷアドレスと横方向のカラムアドレスによって規定され、各アドレスを１つ１つ指定して画像データの書き込みや読み出しを行う通常処理モードと、例えばＲＯＷアドレスを固定した状態でカラムアドレスを更新して行くことにより、カラム毎に画像データの書き込みや読み出しを行うバースト処理モードとを利用できる。すなわち、このバースト処理モードでは通常処理モードよりも少ない動作サイクルで画像データの書き込みや読み出しを行うことができ、動作の迅速化を図ることが可能である。
【０００３】
一方、デジタルカメラ装置等の映像機器においては、カメラ撮影等によって入力した画像データを出力画像のフレーム等に対応させるために回転処理を行なって画像メモリに格納する機能が搭載されている場合がある。
例えば、カメラ装置を約９０°傾けて撮影し、その画像をディスプレイに出力するような場合、画像メモリを用いて９０°の画像回転処理を行い、保存することにより、この画像をディスプレイに出力したり、サムネイル画像（検索参照用画像）を作成する場合に、被写体が正対した画像を容易に得ることが可能である。なお、この画像回転処理としては、メモリ制御の容易性等の観点から、通常は９０°あるいは２７０°の回転処理が用いられることが多い。
しかし、このような画像回転処理を行う場合、カラムアドレスとＲＯＷアドレスの関係が逆転することから、上述したバースト処理モードを利用できず、ＤＲＡＭへの書き込み時間や読み出し時間が長くなり、特に画像データ量が大きいような場合には、適正なシステム動作を確保する上での障害となってしまう場合もある。
【０００４】
以下、このような従来の画像処理装置における具体的な動作例を図面を用いて説明する。
図８は、従来の画像処理装置においてカラー画像を画像メモリ（ＳＤＲＡＭ）に書き込む場合の構成を示すブロック図である。
図示のように、入力画像データ３１０は、ＹＵＶフォーマットに基づく輝度データ（Ｙ00、Ｙ01、Ｙ02、……）と色差データ（Ｃ00、Ｃ01、Ｃ02、……）によって構成され、これをメモリコントローラ３１２によって回転処理し、アドレスやコマンドの制御を行い、画像メモリ（ＳＤＲＡＭ）３１４に格納する。
図９及び図１０は従来の画像処理装置で扱うカラー画像データのフォーマットとＳＤＲＡＭへの格納時におけるアドレス変換例を示す説明図である。
ＹＵＶフォーマットの画像データは、詳しくは図示のように、輝度データ（Ｙ00、Ｙ01、Ｙ02、……）と２種類の色差データ（Ｃｂ00、Ｃｂ01、Ｃｂ02、……、Ｃｒ00、Ｃｒ01、Ｃｒ02、……、）より構成されている。
そして、このような画像データを画像メモリ（ＳＤＲＡＭ）に書き込む場合、回転しない動作（以下、ノーマル処理という）においては、図９に示すように、まず、輝度データ（Ｙ00、Ｙ01、Ｙ02、……）をＳＤＲＡＭの各アドレスに１つおきに書き込んで行く。そして、色差データ（Ｃｂ00、Ｃｂ01、Ｃｂ02、……）を奇数番目の輝度データ（Ｙ00、Ｙ02、……）に続く空き領域に書き込んで行き、次に色差データ（Ｃｒ00、Ｃｒ01、Ｃｒ02、……）を偶数番目の輝度データ（Ｙ01、Ｙ03、……）に続く空き領域に書き込んで行く。なお、図中の１Ｈ、２Ｈ、……、は、画像フレームの水平ラインを表している。
また、１８０°回転（反転）する場合も同様の処理となる。
【０００５】
また、同様の画像データを９０°回転して画像メモリに格納する場合には、図１０に示すように、まず、輝度データ（Ｙ00、Ｙ01、Ｙ02、……）を１つずつアドレス変換してＳＤＲＡＭの各列に一列おきに書き込んで行く。なお、この場合、ＳＤＲＡＭの奥の領域から手前の領域に順番に書き込んで行く。そして、色差データ（Ｃｂ00、Ｃｂ01、Ｃｂ02、……）を１つずつアドレス変換してＳＤＲＡＭの奥から奇数番目の列の輝度データ（Ｙ00、Ｙ02、……）に続く空き領域の列に書き込んで行き、次に色差データ（Ｃｒ00、Ｃｒ01、Ｃｒ02、……）を１つずつアドレス変換して偶数番目の輝度データ（Ｙ01、Ｙ03、……）に続く空き領域の列に書き込んで行く。
また、２７０°回転する場合も同様の処理となる。
【０００６】
図１１は、図９に示すアドレス変換時のＳＤＲＡＭの動作サイクルを示すフローチャートである。
この場合、上述したバースト処理モードを用いることができる。まず、アイドル状態（ステップＳ１）からＲＯＷアドレスの指定（ＡＣＴ）を行い（ステップＳ２）、必要な待機（ＲＡＳ）の後（ステップＳ３）、カラムアドレスを更新しながら、各アドレス毎に１バイトデータの書き込み（ＷＲＩＴＥ）を行う（ステップＳ４、Ｓ５）。そして、１カラム分の書き込みが終了すると、終了処理（ＰＲＥＣＨＡＧＥ）を行い（ステップＳ６）、ステップＳ１に戻って次のデータの書き込み処理を行う。
したがって、バースト処理を用いると、１カラム内の各アドレスについて、１サイクル毎にバイトデータの書き込みを行うことが可能となる。
【０００７】
次に、図１２は図１０に示すアドレス変換時のＳＤＲＡＭの動作サイクルを示すフローチャートである。
この場合、回転処理を行うために、バースト処理モードを用いることはできない。まず、アイドル状態（ステップＳ１１）からＲＯＷアドレスの指定（ＡＣＴ）を行い（ステップＳ１２）、必要な待機（ＲＡＳ）の後（ステップＳ１３）、カラムアドレスを指定して１バイトデータの書き込み（ＷＲＩＴＥ）を行う（ステップＳ１４）。そして、１アドレスの書き込みが終了すると、終了処理（ＰＲＥＣＨＡＧＥ）を行い（ステップＳ１５）、ステップＳ１１に戻って次のデータの書き込み処理を行う。
したがって、バースト処理を用いない場合には、１アドレスの書き込み（すなわち、１バイトデータの書き込み）毎に６サイクルを要することになり、図１１に示すバースト処理時に比べて大幅に書き込み効率が低下し、処理時間が長くなるものである。
【特許文献１】特開２０００−１７５１４８号公報
【特許文献２】特開平１１−２７５４９９号公報
【特許文献３】特開平１１−７５１４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のように従来の画像処理装置でＤＲＡＭ（ＳＤＲＡＭ）に画像データを格納する場合、その画像データを９０°あるいは２７０°回転して格納する動作においては、バースト処理を行うことができず、処理時間が長くなるという問題がある。
特に、システム全体の動作速度に対し扱う画像データ量が大きい場合には、画像データを回転してメモリに格納する処理がシステム全体の動作の障害となる。
このため、例えば映像機器の設計時において、画像処理装置で扱う画像データの容量を制限したり、高速の素子を用いるために装置の価格上昇を招く等、機能面やコスト面で種々の困難を招くことになる。
そこで本発明の目的は、上述のような実情に鑑み、画像データを回転処理しシンクロナスＤＲＡＭ（ＳＤＲＡＭ）に格納する際に、画像データの投機処理を行うことで、より高速に格納できる画像処理装置及びその制御方法を提供することにある。
【課題を解決するための手段】
【０００９】
上述の目的を達成するため、本発明にかかる画像処理装置は、入力画像データを回転させて画像用ＤＲＡＭ内に格納する画像回転処理部と、連続して入力される入力画像データの奇数列と偶数列に応じた列データを一時的に格納する列データ格納用ＲＡＭと、前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較する比較回路とを備え、前記画像回転処理部は、前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行う書き込み制御手段を有することを特徴とする。
【００１０】
また、本発明の画像処理装置の制御方法は、入力画像データを回転させて画像用ＤＲＡＭ内に格納する画像回転処理部を有する画像処理装置の制御方法であって、連続して入力される入力画像データの奇数列と偶数列に応じた列データを一時的に格納する列データ格納用ＲＡＭと、前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較する比較回路とを設け、前記画像回転処理部が前記列データ格納用ＲＡＭに格納される入力画像データを回転処理し前記画像用ＤＲＡＭに格納する際に、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行うことを特徴とする。
【発明の効果】
【００１１】
本発明にかかる画像処理装置及びその制御方法によれば、入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、連続して入力される前記入力画像データの奇数列と偶数列に応じた列データを一時的に列データ格納用ＲＡＭへ格納し、前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較回路により比較し、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を行うため、奇数列データと偶数列データの両方について画像回転のためのアドレス変換を行なって画像用ＤＲＡＭに書き込む場合に比べ、実質的に動作サイクル数を削減でき、簡易な構成で画像の回転処理を行ない、迅速にＤＲＡＭ（ＳＤＲＡＭ）に格納することができる効果がある。また、画像データの変更を行わないため、画像の劣化等がまったく起こらないという利点がある。
【発明を実施するための最良の形態】
【００１２】
本実施の形態による画像処理装置及びその制御方法は、入力画像データを回転処理し画像用ＤＲＡＭに格納する際に、連続して入力される前記入力画像データの奇数列と偶数列に応じた列データを一時的に列データ格納用ＲＡＭへ格納する。そして、前記列データ格納用ＲＡＭにそれぞれ格納された列データを比較回路により比較しその比較結果を得る。さらに、前記入力画像データの列データが偶数行のデータであるか、または奇数行のデータであるかに応じた前記比較回路の比較結果をもとに、その比較結果が同一であるデータについて次の所定行数分を先書きする画像データの投機処理を画像回転処理部が行うことで、奇数列データと偶数列データの両方について画像回転のためのアドレス変換を行なって画像用ＤＲＡＭに書き込む場合に比べ、実質的に動作サイクル数を削減し、簡易な構成で画像の回転処理を行うことを可能にし、迅速なＤＲＡＭ（ＳＤＲＡＭ）への格納を実現する。
【実施例１】
【００１３】
図１は、本発明の実施例１による画像処理装置の全体構成を示すブロック図である。
図２は図１に示す画像処理装置の画像回転処理部の構成を示すブロック図である。
また、図３および図４は図１に示す画像処理装置の画像回転処理の動作例を示すフローチャートである。図５は図１に示す画像処理装置で画像回転処理を行う際の画像データの具体例を示す説明図である。また、図６は図１に示す画像処理装置において図５に示す画像回転処理を実現するための動作を示すフローチャートである。
【００１４】
まず、図１を用いてこの実施例１の画像処理装置の構成について説明する。
この画像処理装置は、例えばＪＰＥＧ圧縮されたＹＵＶフォーマットの画像データを入力して伸長し、画像回転等の処理を行なってＳＤＲＡＭ（画像用ＤＲＡＭ）１００内に格納するものであり、ＪＰＥＧデコーダ１１０、コンペア回路（比較回路）１２０、ＳＲＡＭ回路１３０、インタフェース設定レジスタ１４０、回転制御用アドレス変換回路１５０、ステートマシン１６０、出力データ制御回路１７０、及びＳＤＲＡＭ制御回路１８０を有する。
このうち、コンペア回路１２０及びＳＲＡＭ回路１３０が画像データの回転処理等を行う画像処理ブロックを構成している。また、インタフェース設定レジスタ１４０、回転制御用アドレス変換回路１５０、ステートマシン１６０、出力データ制御回路１７０、及びＳＤＲＡＭ制御回路１８０がＳＤＲＡＭ１００の制御を行うためのメモリコントローラ２００を構成している。
【００１５】
ＪＰＥＧデコーダ１１０は、例えば各種半導体メモリ素子や磁気ディスク、光ディスク等の記録媒体、あるいはネットワーク等から所定のインタフェースを介して入力されるＪＰＥＧ圧縮データを入力してデコードし、ＹＵＶフォーマットの生画像データを生成するものである。
コンペア回路１２０は、ＪＰＥＧデコーダ１１０から得られる画像データの奇数列データと偶数列データとの比較を行うものである。
ＳＲＡＭ（スタティックＲＡＭ）回路１３０は、ＪＰＥＧデコーダ１１０から得られる画像データの奇数列データと偶数列データをそれぞれ格納する２つのＳＲＡＭ領域Ａ、Ｂを有し、コンペア回路１２０を用いて画像データを回転処理してＳＤＲＡＭ１００に書き込む際のワークエリアとして利用される。なお、２つのＳＲＡＭ領域Ａ、Ｂには、それぞれ画像データの１ライン分の輝度データの格納領域と色差データの格納領域を有しているものとする。
【００１６】
インタフェース設定レジスタ１４０は、このシステムを制御するプログラムによって規定されているＳＤＲＡＭ１００の制御用パラメータ、例えばメモリサイズやその他の仕様等のパラメータの設定を外部入力によって行うためのものである。
回転制御用アドレス変換回路１５０は、画像データを回転してＳＤＲＡＭ１００に格納するためのアドレス変換を行うものである。
出力データ制御回路１７０は、ＳＤＲＡＭ１００に画像データを出力する回路であり、ＳＤＲＡＭ制御回路１８０は、ＳＤＲＡＭ１００にアドレスやコマンドを出力する回路である。
ステートマシン１６０は、コマンド制御やタイミング制御を行い、出力データ制御回路１７０及びＳＤＲＡＭ制御回路１８０を制御し、ＳＤＲＡＭ１００に対する画像データの書き込み、読み出しを制御するものである。
【００１７】
次に、図２を用いてこの実施例１における画像回転処理の概要について説明する。
図示されているように、ＪＰＥＧデコーダ１１０からの入力画像データは、ＯＤＤ列データがＳＲＡＭ回路１３０の列データ格納部（列データ格納用ＲＡＭ）１３０Ａに入力され、ＥＶＥＮ列データは列データ格納部（列データ格納用ＲＡＭ）１３０Ｂに入力される。
そして、列データ格納部１３０Ａに格納されたＯＤＤ列データと、列データ格納部１３０Ｂに格納されたＥＶＥＮ列データはコンペア回路１２０においてデータ一致判定され、その判定結果が判定信号としてメモリコントローラ２００へ出力される。また、コンペア回路１２０では、図５のフローチャートに示すステップＳ２、ステップＳ３、ステップＳ４、ステップＳ６、ステップＳ８、ステップＳ９、ステップＳ１１、ステップＳ１３およびステップＳ１５の各判定処理がハードウェアにより実行される。
また、メモリコントローラ（画像回転処理部、書込み制御手段）２００においては、図５のフローチャートに示すステップＳ５、ステップＳ７、ステップＳ１０、ステップＳ１２、ステップＳ１４およびステップＳ１６の書き込み処理と投機処理がハードウェアにより実行される。
図３および図４は、ＳＲＡＭ回路１３０を含むＳＲＡＭブロックと、メモリコントローラ２００を含むＳＤＲＡＭインタフェースブロックとにおける画像回転処理の動作を示すフローチャートである。
図３に示す画像回転処理は、ＯＤＤ列データとＥＶＥＮ列データとのデータ一致判定と、そのデータ一致判定に伴う投機処理についての動作を示している。
まず、ＳＲＡＭブロック側でＪＰＥＧデコーダ１１０から出力されたＯＤＤ列データをＳＲＡＭ回路１３０の列データ格納部１３０Ａに格納し（ステップＳ１０１）、この格納したＯＤＤ列データをＳＤＲＡＭブロック側に出力する（ステップＳ１０２）。
ＳＤＲＡＭインタフェースブロックでは、この出力されたＯＤＤ列データをアドレス変換して回転処理し、ＯＤＤ列データとそのコピーデータの２列分を投機処理によってＳＤＲＡＭ１００に書き込む（ステップＳ１０３）。
【００１８】
次に、ＳＲＡＭブロック側でＪＰＥＧデコーダ１１０から出力されたＥＶＥＮ列データ（ＥＶＥＮ０、ＥＶＥＮ１、ＥＶＥＮ２、ＥＶＥＮ３、……）をコンペア回路１２０に入力し、先に格納されているＯＤＤ列データとの比較判定（コンペアチェック）を行い（ステップＳ１０４）、ＯＤＤ列データと非同一でコンペアが取れないＥＶＥＮ列データを列データ格納部１３０Ｂに格納していき、これをＳＤＲＡＭブロック側に出力する（ステップＳ１０５）。
ＳＤＲＡＭブロック側では、この出力されたＥＶＥＮ列データを１データずつアドレス変換して回転処理し、ＳＤＲＡＭ１００に先に書き込まれているＯＤＤ列データのコピーデータに上書き処理によって書き込んで行く（ステップＳ１０６）。
【００１９】
図４に示す画像回転処理は、ＥＶＥＮ列データとＯＤＤ列データとのデータ一致判定と、そのデータ一致判定に伴う投機処理についての動作を示している。
まず、ＳＲＡＭブロック側でＪＰＥＧデコーダ１１０から出力されたＥＶＥＮ列データをＳＲＡＭ回路１３０の列データ格納部１３０Ａに格納し（ステップＳ２０１）、この格納したＥＶＥＮ列データをＳＤＲＡＭブロック側に出力する（ステップＳ２０２）。
ＳＤＲＡＭインタフェースブロックでは、この出力されたＥＶＥＮ列データをアドレス変換して回転処理し、ＥＶＥＮ列データとそのコピーデータの２列分を投機処理によってＳＤＲＡＭ１００に書き込む（ステップＳ２０３）。
【００２０】
次に、ＳＲＡＭブロック側でＪＰＥＧデコーダ１１０から出力されたＯＤＤ列データ（ＯＤＤ０、ＯＤＤ１、ＯＤＤ２、ＯＤＤ３、……）をコンペア回路１２０に入力し、先に格納されているＥＶＥＮ列データとの比較判定（コンペアチェック）を行い（ステップＳ２０４）、ＥＶＥＮ列データと非同一でコンペアが取れないＯＤＤ列データを列データ格納部１３０Ｂに格納していき、これをＳＤＲＡＭブロック側に出力する（ステップＳ２０５）。
ＳＤＲＡＭ側ブロックでは、この出力されたＯＤＤ列データを１データずつアドレス変換して回転処理し、ＳＤＲＡＭ１００に先に書き込まれているＥＶＥＮ列データのコピーデータに上書き処理によって書き込んで行く（ステップＳ２０６）。
【００２１】
メモリコントローラ２００は、上述したインタフェース設定レジスタ１４０、回転制御用アドレス変換回路１５０、ステートマシン１６０、出力データ制御回路１７０、及びＳＤＲＡＭ制御回路１８０によって、ＳＲＡＭ回路１３０の列データ格納部１３０Ａ及び列データ格納部１３０Ｂに格納された画像データをＳＤＲＡＭ１００に書き込むための制御と投機処理を行う。
【００２２】
次に、この実施例１における画像回転処理の動作の具体例について説明する。
なお、以下の説明では、６４０×４８０ドットのＹＣ画像データを９０°回転させてＳＤＲＡＭ１００のメモリ領域にデータＷＲＩＴＥする状況を想定する。
まず、この画像回転処理の動作の概要を説明すると、インタフェース設定レジスタ１４０の回転設定レジスタに９０°回転と画像サイズレジスタに６４０×４８０ドットと設定する。そして、ＪＰＥＧデコーダ１１０から画像データをＳＲＡＭ回路１３０の列データ格納部１３０Ａと列データ格納部１３０Ｂとへ入力する。
入力される画像データは、画像の水平方向の１Ｈ分毎にデータがまとめて入力される。この１Ｈ分のデータが４８０回入力され画像データの入力が終了する。このため、はじめにＳＲＡＭ回路１３０に格納されるデータは画像の１列目（ＯＤＤ＿１）のデータ（６４０Ｂｙｔｅ）になる。この時データを列データ格納部１３０Ａに、次に転送されてくる２列目（ＥＶＥＮ＿１）のデータを列データ格納部１３０Ｂに格納する。この２列目のデータを格納する際に、列データ格納部１３０Ａに格納された１列目の画像データ１Ｈ分を順次、出力データ制御回路１７０に出力していく。
このデータ転送を繰り返し、データをＪＰＥＧデコーダ１１０からＳＤＲＡＭ１００へデータ転送する。このデータ転送だけである場合、バースト転送できない角度の画像回転での転送は、一つのデータを転送するたびに６サイクルのＤｅｌａｙが入ってしまうので効率が非常に悪い。
このため、ＳＲＡＭ１３０にデータを格納する際に、上下の列のデータのコンペアチェック（データ一致判定）を行い、その判定でパスしたデータをＷＲＩＴＥする際に、投機処理として、バースト転送で先に、データの一致しているデータ（コンペア回路１２０のデータ一致判定結果が“一致”とされたデータ）をＷＲＩＴＥする予定のアドレスへ同じデータをＷＲＩＴＥ、すなわち先書きする投機処理を行う。
この投機処理をする際に、データ一致判定で一致している場合、ＲＯＷが奇数列なら２つ、偶数列なら３つ、データの投機処理を行う。そして、２列目で、コンペアチェックで不一致になった部分のデータのみを通常処理で、ＳＤＲＡＭ１００にＷＲＩＴＥする。
この処理で、ＲＯＷアドレスのアクセスによるＤｅｌａｙを軽減することが出来る。これを画像データの最終ラインの４８０Ｈラインまで繰り返し行う。
【００２３】
次に、この画像回転処理の具体的な動作例について図５に示す説明図と、図６に示すフローチャートとを用いて説明する。
図５（１）は列データ格納部１３０Ａに格納されたＲＯＷ１のデータ（ＯＤＤ＿１）、および、列データ格納部１３０Ｂに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）の２ＲＯＷ分のデータ（または、その格納エリア）１，２，３，４と、これらＲＯＷ１のデータ（ＯＤＤ＿１）、ＲＯＷ２のデータ（ＥＶＥＮ＿１）のデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例と、このデータ一致判定結果をもとに行われる画像回転処理の具体例を示している。
このときのデータ一致判定結果は、データ１については一致、データ２については不一致、データ３については一致、データ４については不一致との判定結果が得られている。
なお、図５の左側の図が前記２ＲＯＷ分のデータ１，２，３，４と、これらデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例を示し、右側の図が前記データ一致判定結果をもとに行われる画像回転処理の具体例を示している。
【００２４】
また、図５（２）は、列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）、および、列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）の２ＲＯＷ分のデータ１，２，３，４と、これらＲＯＷ２のデータ（ＥＶＥＮ＿１）、ＲＯＷ３のデータ（ＯＤＤ＿２）のデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例と、データ一致判定結果をもとに行われる画像回転処理の具体例を示している。
このときのＲＯＷ２のデータ（ＥＶＥＮ＿１）とＲＯＷ３のデータ（ＯＤＤ＿２）とのデータ一致判定結果は、データ２については一致、データ４については不一致との判定結果が得られている。
【００２５】
また、図５（３）は、列データ格納部１３０Ａに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）、および、列データ格納部１３０Ｂに格納されたＲＯＷ４のデータ（ＥＶＥＮ＿２）の２ＲＯＷ分のデータ１，２，３，４と、これらＲＯＷ３のデータ（ＯＤＤ＿２）、ＲＯＷ４のデータ（ＥＶＥＮ＿２）のデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例と、データ一致判定結果をもとに行われる画像回転処理の具体例を示している。
このときのＲＯＷ３のデータ（ＯＤＤ＿２）とＲＯＷ４のデータ（ＥＶＥＮ＿２）とのデータ一致判定結果は、データ１とデータ２については不一致、データ３とデータ４については一致との判定結果が得られている。
【００２６】
また、図５（４）は、列データ格納部１３０Ａに格納されたＲＯＷ４のデータ（ＥＶＥＮ＿２）、および、列データ格納部１３０Ｂに格納されたＲＯＷ５のデータ（ＯＤＤ＿３）の２ＲＯＷ分のデータ１，２，３，４と、これらＲＯＷ４のデータ（ＥＶＥＮ＿２）、ＲＯＷ５のデータ（ＯＤＤ＿３）のデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例と、データ一致判定結果をもとに行われる画像回転処理の具体例を示している。
このときのＲＯＷ４のデータ（ＥＶＥＮ＿２）とＲＯＷ５のデータ（ＯＤＤ＿３）とのデータ一致判定結果は、データ１については一致、データ２については不一致との判定結果が得られている。
【００２７】
また、図５（５）は、列データ格納部１３０Ａに格納されたＲＯＷ５のデータ（ＯＤＤ＿３）、および、列データ格納部１３０Ｂに格納されたＲＯＷ６のデータ（ＥＶＥＮ＿３）の２ＲＯＷ分のデータ１，２，３，４と、これらＲＯＷ５のデータ（ＯＤＤ＿３）、ＲＯＷ６のデータ（ＥＶＥＮ＿３）のデータ１，２，３，４についてのコンペア回路１２０によるデータ一致判定結果の一例と、データ一致判定結果をもとに行われる画像回転処理の具体例を示している。
このときのＲＯＷ５のデータ（ＯＤＤ＿３）とＲＯＷ６のデータ（ＥＶＥＮ＿３）とのデータ一致判定結果は、データ１については不一致、データ２については一致、データ３およびデータ４については不一致との判定結果が得られている。
【００２８】
次に、図６のフローチャートに示す手順により図５に示す画像回転処理が実現する過程を順を追って説明する。
先ず、ステップＳ１のＩＤＬＥ状態からデータがきているか否か、すなわち、ＪＰＥＧデコーダ１１０から列データ格納部１３０Ａおよび列データ格納部１３０Ｂへ画像データ１Ｈ分のＲＯＷデータが出力され格納されたか否かを判定し（ステップＳ２）、この結果、列データ格納部１３０Ａと列データ格納部１３０ＢへＲＯＷデータが格納されていると判定すると、次に、列データ格納部１３０Ａへ格納されているデータはＲＯＷ１のデータ（ＯＤＤ＿１）であるか否か、すなわち１行目のデータであるか否かを判定する（ステップＳ３）。
この判定の結果、画像データの１Ｈ分の１行目のデータが列データ格納部１３０Ａへ格納されていると判定されると、列データ格納部１３０Ａへ格納されているＲＯＷ１のデータ（ＯＤＤ＿１）と、列データ格納部１３０Ｂへ格納されているＲＯＷ２のデータ（ＥＶＥＮ＿１）との１Ｈ分のデータ一致判定をコンペア回路１２０において行い、この結果得られたデータ一致判定結果を保持する（ステップＳ４）。
このデータ一致判定結果は、図５（１）に示すように、データ１については一致、データ２については不一致、データ３については一致、データ４については不一致である。次に、列データ格納部１３０Ａへ格納されているＲＯＷ１のデータ（ＯＤＤ＿１）をメモリコントローラ２００へ出力し、メモリコントローラ２００によりアドレス変換してＳＤＲＡＭ１００へ９０°回転した状態で書き込む（ステップＳ５）。
このとき、コンペア回路１２０は、前記データ一致判定結果をもとにＲＯＷ１のデータ（ＯＤＤ＿１）とＲＯＷ２のデータ（ＥＶＥＮ＿１）とのデータ１，２，３，４について一致、不一致を判定し（ステップＳ６）、一致したデータについて、９０°回転したＲＯＷ２のデータ（ＥＶＥＮ＿１）の書き込むべきアドレスへＲＯＷ１のデータ（ＯＤＤ＿１）を投機処理により書き込む（ステップＳ７）。
図５（１）の右側に示す９０°回転したＲＯＷ２のデータ（ＥＶＥＮ＿１）については、ＲＯＷ１のデータ（ＯＤＤ＿１）とＲＯＷ２のデータ（ＥＶＥＮ＿１）はデータ１，３について一致しているため、一致したデータ１，３については、ＲＯＷ２のデータ（ＥＶＥＮ＿１）の書き込むべきアドレスへＲＯＷ１のデータ（ＯＤＤ＿１）におけるデータ１，３をそのまま投機処理により書き込む。
ステップＳ６において不一致であったデータについては、前記投機処理による書き込みは行わず、ステップＳ１のＡＩＤＬ状態へ戻る。すなわち、図５（１）の右側に示す９０°回転したＲＯＷ２のデータ（ＥＶＥＮ＿１）に示すように、不一致であったデータ２，４については、前記投機処理による書き込みは行なっていない。
【００２９】
そして、ステップＳ１に続いてステップＳ２、ステップＳ３の処理へ進む。このとき、図５（２）に示すように、列データ格納部１３０ＡにはＲＯＷ２のデータ（ＥＶＥＮ＿１）が格納され、列データ格納部１３０ＢにはＲＯＷ３のデータ（ＯＤＤ＿２）が格納されており、ＲＯＷ２とＲＯＷ３の２ＲＯＷ分のデータ１，２，３，４がそれぞれ格納される。
ステップＳ３では、列データ格納部１３０Ａへ格納されているデータは１行目のデータであるか否かを判定する。列データ格納部１３０ＡにはＲＯＷ２のデータ（ＥＶＥＮ＿１）が格納されているため、１行目のデータは列データ格納部１３０Ａへ格納されていないと判定され、次のステップＳ８へ進む。
【００３０】
ステップＳ８では偶数行であるか否かを判定する。このとき、列データ格納部１３０ＡにはＲＯＷ２のデータ（ＥＶＥＮ＿１）が格納されているため「偶数行判定」となり、ステップＳ９へ進む。ステップＳ９では、図５（１）に示すデータ一致判定結果が不一致となっているデータについてのみ、すなわち，奇数行判定で不一致となっているデータについてのみ、列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）と列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）との一致判定をコンペア回路１２０が行う。
図５（２）では、図５（１）に示すデータ一致判定結果が不一致となっているデータ２，４についてのみ、列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）と列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）との一致判定をコンペア回路１２０が行なっており、この一致判定結果は、データ２については一致、データ４については不一致となっている。
【００３１】
続くステップＳ１０では、図５（１）に示すデータ一致判定結果が不一致となっているデータについてのみ、すなわち，奇数行判定で不一致となっているデータ２，４についてのみ、通常動作による書き込みを行う。図５（２）の右側の図において、９０°回転したＲＯＷ２のデータ（ＥＶＥＮ＿１）のデータ２，４が前記奇数行判定で不一致であったデータであり、前記通常動作によりＳＤＲＡＭ１００へ書き込まれたデータである。
【００３２】
次のステップＳ１１では偶数行判定、すなわち、図５（２）における列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）と列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）との一致判定を、前記ステップＳ１０の前記奇数行判定で不一致であったデータ２，４について確認する。前記ステップＳ１０の前記奇数行判定で不一致であったデータ２については、この偶数行判定では一致、データ４については不一致である。
このため、この偶数行判定で“一致”であったデータ２については、次のステップＳ１２において次の２ＲＯＷ分についてＷＲＩＴＥする投機処理を行う。図５（２）の右側の図では、次の２ＲＯＷ分、すなわちＲＯＷ３とＲＯＷ４について、前記通常動作によりＳＤＲＡＭ１００へ書き込まれたデータ２が投機処理により書き込まれている。また、この偶数行判定で“不一致”であったデータ４については、ステップＳ１１からステップＳ１へ戻り、投機処理は行なわない。
【００３３】
図５（３）では、列データ格納部１３０ＡにＲＯＷ３のデータ（ＯＤＤ＿２）、列データ格納部１３０ＢにはＲＯＷ４のデータ（ＥＶＥＮ＿２）が格納される。図６のフローチャートでは、ステップＳ１からステップＳ２、さらにステップＳ３からステップＳ８へ進む。図５（３）は奇数行判定であることから、ステップＳ８からステップＳ１３へ進む。ステップＳ１３では、ＲＯＷ３のデータ（ＯＤＤ＿２）とＲＯＷ４のデータ（ＥＶＥＮ＿２）における全てのデータ１，２，３，４についての一致判定をコンペア回路１２０が行う。
続くステップＳ１４では、図５（２）でコンペア回路１２０が列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）と列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）に対し行なった偶数行判定の一致判定結果が“不一致”であったデータ１，３，４について前記通常動作により９０°回転させてＳＤＲＡＭ１００へ書き込む。図５（３）における右側の図において、９０°回転データのＲＯＷ３のデータ１，３，４が、この通常動作により書き込まれたデータである。
【００３４】
ステップＳ１５では、この奇数行判定で行なった一致判定で“一致”、“不一致”であったデータを判定する。この場合、“一致”と判定されたデータはデータ３，４、“不一致” と判定されたデータはデータ１，２である。
そして、“一致”と判定されたデータ３，４については、次のステップＳ１６の処理へ進む。ステップＳ１６は先書きを行う投機処理のステップであり、ステップＳ１６では、図５（２）の偶数行判定の一致判定結果が“不一致”、かつ、この奇数行判定で行なった一致判定結果が“一致”するデータ３，４について、次の１ＲＯＷ分、すなわち次のＲＯＷ４のデータ（ＥＶＥＮ＿２）におけるデータ３，４が書き込まれるべきエリアに前記データ３，４を先書きする投機処理を行う。
ステップＳ１５において“不一致” と判定されたデータ１，２については、ステップＳ１へ戻り、投機処理は行なわない。
【００３５】
図５（４）では、列データ格納部１３０ＡにＲＯＷ４のデータ（ＥＶＥＮ＿２）、列データ格納部１３０ＢにはＲＯＷ５のデータ（ＯＤＤ＿３）が格納される。図６のフローチャートでは、ステップＳ１からステップＳ２、さらにステップＳ３からステップＳ８へ進む。図５（４）は偶数行判定であることから、ステップＳ８からステップＳ９へ進む。
ステップＳ９では、図５（３）に示すデータ一致判定結果が不一致となっているデータについてのみ、すなわち，奇数行判定で不一致となっているデータについてのみ、列データ格納部１３０Ａに格納されたＲＯＷ２のデータ（ＥＶＥＮ＿１）と列データ格納部１３０Ｂに格納されたＲＯＷ３のデータ（ＯＤＤ＿２）との一致判定をコンペア回路１２０が行う。
図５（４）では、図５（３）に示すデータ一致判定結果が不一致となっているデータ１，２についてのみ、列データ格納部１３０Ａに格納されたＲＯＷ４のデータ（ＥＶＥＮ＿２）と列データ格納部１３０Ｂに格納されたＲＯＷ５のデータ（ＯＤＤ＿３）との一致判定をコンペア回路１２０が行なっており、この一致判定結果は、データ１については一致、データ２については不一致となっている。
【００３６】
続くステップＳ１０では、図５（３）に示すデータ一致判定結果が不一致となっているデータについてのみ、すなわち，奇数行判定で不一致となっているデータ１，２についてのみ、通常動作による書き込みを行う。図５（４）の右側の図において、９０°回転したＲＯＷ４のデータ（ＥＶＥＮ＿２）のデータ１，２が前記奇数行判定で不一致であったデータであり、前記通常動作によりＳＤＲＡＭ１００へ書き込まれたデータである。
【００３７】
次のステップＳ１１では偶数行判定、すなわち、図５（４）における列データ格納部１３０Ａに格納されたＲＯＷ４のデータ（ＥＶＥＮ＿２）と列データ格納部１３０Ｂに格納されたＲＯＷ５のデータ（ＯＤＤ＿３）との一致判定を、前記ステップＳ１０の前記奇数行判定で不一致であったデータ１，２について確認する。前記ステップＳ１０の前記奇数行判定で不一致であったデータ１については、この偶数行判定では一致、データ２については不一致である。
このため、この偶数行判定で“一致”であったデータ１については、次のステップＳ１２において次の２ＲＯＷ分についてＷＲＩＴＥする投機処理を行う。図５（４）の右側の図では、次の２ＲＯＷ分、すなわちＲＯＷ５とＲＯＷ６について、前記通常動作によりＳＤＲＡＭ１００へ書き込まれたデータ１が投機処理により書き込まれている。また、この偶数行判定で“不一致”であったデータ２については、ステップＳ１１からステップＳ１へ戻り、投機処理は行なわない。
【００３８】
図５（５）では、列データ格納部１３０ＡにＲＯＷ５のデータ（ＯＤＤ＿３）、列データ格納部１３０ＢにはＲＯＷ６のデータ（ＥＶＥＮ＿３）が格納される。図６のフローチャートでは、ステップＳ１からステップＳ２、さらにステップＳ３からステップＳ８へ進む。図５（５）は奇数行判定であることから、ステップＳ８からステップＳ１３へ進む。
ステップＳ１３では、ＲＯＷ５のデータ（ＯＤＤ＿３）とＲＯＷ６のデータ（ＥＶＥＮ＿３）の全てのデータ１，２，３，４についての一致判定をコンペア回路１２０が行う。
続くステップＳ１４では、図５（４）でコンペア回路１２０が列データ格納部１３０Ａに格納されたＲＯＷ５のデータ（ＯＤＤ＿３）と列データ格納部１３０Ｂに格納されたＲＯＷ６のデータ（ＥＶＥＮ＿３）に対し行なった偶数行判定の一致判定結果が“不一致”であったデータ２，３，４について前記通常動作により９０°回転させてＳＤＲＡＭ１００へ書き込む。図５（５）における右側の図において、９０°回転データのＲＯＷ５のデータ２，３，４が、この通常動作により書き込まれたデータである。
【００３９】
ステップＳ１５では、この奇数行判定で行なった一致判定で“一致”、“不一致”であったデータを判定する。この場合、“一致”と判定されたデータはデータ２、“不一致” と判定されたデータはデータ１，３，４である。
そして、“一致”と判定されたデータ２については、次のステップＳ１６の処理へ進む。ステップＳ１６は先書きを行う投機処理のステップであり、ステップＳ１６では、図５（４）の偶数行判定の一致判定結果が“不一致”、かつ、この奇数行判定で行なった一致判定結果が“一致”するデータ２について、次の１ＲＯＷ分、すなわち次のＲＯＷ６のデータ（ＥＶＥＮ＿３）におけるデータ２が書き込まれるべきエリアに前記データ２を先書きする投機処理を行う。
ステップＳ１５において“不一致” と判定されたデータ３，４については、ステップＳ１へ戻り、投機処理は行なわない。
【００４０】
以上のように、ＲＯＷ１のデータ（ＯＤＤ＿１）については、通常動作により９０°回転させてＳＤＲＡＭ１００へ書き込む。このとき、列データ格納部に格納されたＲＯＷ１のデータ（ＯＤＤ＿１）とＲＯＷ２のデータ（ＥＶＥＮ＿１）の一致判定結果をもとに、“一致”と判定されたデータについては次のＲＯＷ２の分のデータも投機処理により先書きすることで９０°回転させたデータとしてＳＤＲＡＭ１００へ書き込む。
そして、これ以降の偶数行のＲＯＷデータについては、前回の一致判定結果と今回の一致判定結果とをもとに、今回の一致判定結果が“一致”と判定されたデータについて２ＲＯＷ分（都合、３つ）の先書き、投機処理を行うことで９０°回転させたデータとしてＳＤＲＡＭ１００へ書き込む。
また、奇数行のＲＯＷデータについては、前回の一致判定結果と今回の一致判定結果とをもとに、今回の一致判定結果が“一致”と判定されたデータについて１ＲＯＷ分（都合、２つ）の先書き、投機処理を行うことで９０°回転させたデータとしてＳＤＲＡＭ１００へ書き込む。
【００４１】
以上のように、この実施例１によれば、画像データを回転処理しシンクロナスＤＲＡＭ（ＳＤＲＡＭ）に格納する際に、前記画像データが１行目のデータであるか、偶数行のデータであるか、１行目を除く奇数行のデータであるかに応じたコンペア回路１２０の一致判定結果をもとに、その一致判定結果が同一であるデータについて次の２ＲＯＷ分、または１ＲＯＷ分が先書きされる画像データの投機処理を行うことが可能になり、より高速に格納できる画像処理装置及びその制御方法を提供できる効果がある。
【実施例２】
【００４２】
次に、図７を参照して本実施例の画像処理装置が搭載される映像機器の一例としてのデジタルカメラ装置の概要について説明する。図７は前記実施例１で説明した画像処理装置が搭載される映像機器の一例としてデジタルカメラ装置の概要を示すブロック図である。
図示のように、このデジタルカメラ装置は、対物レンズ２、ＣＣＤ撮像部３、ＣＤＳ／ＡＧＣ部４、Ａ／Ｄ変換部５、信号処理部６、メモリコントローラ７、表示用メモリ部９、ビデオエンコーダ１０、ＬＣＤ表示部１１、ＣＰＵ１２、ＤＲＡＭ１３、データ圧縮部１４、データ伸長部１５、ストレージャ１６等を有している。
このデジタルカメラ装置では、被写体の画像を対物レンズ２を通してＣＣＤ撮像部３で撮像し、その撮像画像データをＣＤＳ／ＡＧＣ部４を通してノイズ除去、ゲイン調整を行なった後、Ａ／Ｄ変換部５でデジタルデータに変換し、信号処理部６で色調整等の信号処理を行なった後、メモリコントローラ７、表示用メモリ部９及びビデオエンコーダ１０を通してＬＣＤ表示部１１に表示する。
また、信号処理部６で信号処理した画像データを、ＤＲＡＭ１３及びデータ圧縮部１４を用いて例えばＪＰＥＧ圧縮し、ストレージャ１６に蓄積しておき、この蓄積した画像データをストレージャ１６から呼び出して、ＤＲＡＭ１３及びデータ伸長部１５を用いて伸長し、この画像をメモリコントローラ７、表示用メモリ部９及びビデオエンコーダ１０を通してＬＣＤ表示部１１に表示する。なお、ＣＰＵ１２は、このようなデジタルカメラ装置の全体の制御を司る。
このようなデジタルカメラ装置において、例えば、ストレージャ１６に格納したＪＰＥＧ画像データを回転してＬＣＤ表示部１１に表示するような場合に、上述した実施例１の画像処理装置の機能を信号処理部６及びメモリコントローラ７に設け、上述した投機処理と上書き処理によって回転画像を表示用メモリ部９に書き込み、ビデオエンコーダ１０を通してＬＣＤ表示部１１に表示することが可能である。
【００４３】
なお、本発明の画像処理装置は、以上のようなデジタルカメラ装置に限らず、例えばＶＴＲ装置やＤＶＤ装置等の各種の映像機器に広く応用できるものである。
また、上述した実施例では、ＪＰＥＧ圧縮されたＹＵＶフォーマット化された画像データを扱う装置の例で説明したが、他の方式による画像データを扱う装置においても同様に適用できるものである。
また、画像用メモリとしてＳＤＲＡＭを採用した例で説明したが、ＤＲＡＭを用いても同様に実施できるものである。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施例１による画像処理装置の全体構成を示すブロック図である。
【図２】本発明の実施例１による画像処理装置における画像回転処理部の構成を示すブロック図である。
【図３】本発明の実施例１による画像処理装置の画像回転処理の動作例を示すフローチャートである。
【図４】本発明の実施例１による画像処理装置の画像回転処理の動作例を示すフローチャートである。
【図５】本発明の実施例１による画像処理装置で画像回転処理を行う際の画像データの具体例を示す説明図である。
【図６】本発明の実施例１による画像処理装置において図５に示す画像回転処理を実現するための動作を示すフローチャートである。
【図７】本発明の実施例１で説明した画像処理装置が搭載される映像機器の一例としてデジタルカメラ装置の概要を示すブロック図である。
【図８】従来の画像処理装置においてカラー画像を画像メモリ（ＳＤＲＡＭ）に書き込む場合の構成を示すブロック図である。
【図９】従来の画像処理装置で扱うカラー画像データのフォーマットとＳＤＲＡＭへの格納時におけるアドレス変換例を示す説明図である。
【図１０】従来の画像処理装置で扱うカラー画像データのフォーマットとＳＤＲＡＭへの格納時におけるアドレス変換例を示す説明図である。
【図１１】従来の画像処理装置におけるアドレス変換時のＳＤＲＡＭの動作サイクルを示すフローチャートである。
【図１２】従来の画像処理装置におけるアドレス変換時のＳＤＲＡＭの動作サイクルを示すフローチャートである。
【符号の説明】
【００４５】
１００……ＳＤＲＡＭ（画像用ＤＲＡＭ）、１２０……コンペア回路（比較回路）、１３０Ａ，１３０Ｂ……列データ格納部（列データ格納用ＲＡＭ）、２００……メモリコントローラ（画像回転処理部、書込み制御手段）。
【図１】
2006109308.tif 000003
【図２】
2006109308.tif 000004
【図３】
2006109308.tif 000005
【図４】
2006109308.tif 000006
【図５】
2006109308.tif 000007
【図６】
2006109308.tif 000008
【図７】
2006109308.tif 000009
【図８】
2006109308.tif 000010
【図９】
2006109308.tif 000011
【図１０】
2006109308.tif 000012
【図１１】
2006109308.tif 000013
【図１２】
2006109308.tif 000014