(57)【要約】    【課題】      ラインメモリを必要とせず、かつ高速にラスタ形式からブロックインターリーブ形式に変換できるようにすること。    【解決手段】  ラスタ形式の画像データをフレームメモリ１０３へ色別に格納し、そこから第１のブロックサイズのデータを読み出してブロックメモリ１０６〜１０８に色別に記憶する。ブロックメモリ１０６〜１０８から色成分順に第２のブロックサイズ単位でデータを読み出し、サブサンプリング書き込み制御部１１０がサブサンプリングモードに従って間引き処理を行う。間引き処理された画像データを色成分毎に順次パーシャルライト型バッファメモリ１１１，１１２に記憶する。そこからブロック符号化のインターリーブ形式に従った色成分順にブロック単位でデータを読み出し、ブロック符号エンコーダ１１８に入力して符号化する。  【選択図】      図１
2006203705.tif 000002
【特許請求の範囲】
【請求項１】
画像データをブロック単位に符号化する画像符号化装置において、ラスタ形式の画像データが色別に格納されている第１の記憶手段と、前記第１の記憶手段から第１のブロックサイズのデータを読み出しデータ転送する第１のデータ転送手段と、前記第１のデータ転送手段により転送された画像データを色別に記憶する第２の記憶手段と、前記色別の第２の記憶手段から所定の色成分順に第２のブロックサイズ単位でデータを読み出し転送する第２のデータ転送手段と、前記第２のデータ転送手段により転送された画像データを所定のサブサンプリングモードに従って間引き処理を行うサブサンプリング手段と、前記サブサンプリング手段により間引き処理された画像データを色成分毎に順次記憶する第３の記憶手段と、前記第３の記憶手段からブロック符号化のインターリーブ形式に従った色成分順にブロック単位でデータを読み出すバッファメモリ読み出し手段と、前記バッファメモリ読み出し手段によりインターリーブ形式で読み出されたブロックデータを符号化するブロック符号化手段と、符号化された符号データを格納する第４の記憶手段と、前記ブロック符号化手段で生成された符号データを前記第４の記憶手段に転送する第３のデータ転送手段と、を備えた画像符号化装置。
【請求項２】
前記第１のデータ転送手段として、イメージバスに接続され第１のブロックサイズの矩形転送が可能なＤＭＡコントローラを用い、前記第１の記憶手段をイメージバスに接続された汎用ワークメモリ上に構成する請求項１記載の画像符号化装置。
【請求項３】
前記第３のデータ転送手段として、バスに接続されたＤＭＡコントローラを用い、イメージバスに接続された汎用ワークメモリ上の第１の記憶手段とは異なる領域に第４の記憶手段を構成する請求項２記載の画像符号化装置。
【請求項４】
サブサンプリングモードに応じて第２のブロックサイズと整数値Ｓを決定し、第１のブロックサイズは第２のブロックサイズを水平方向にＳ倍したサイズをさらに整数倍したサイズで、かつ第２の記憶手段の容量を超えない最大のサイズとする請求項１記載の画像符号化装置。
【請求項５】
前記サブサンプリング手段は、サブサンプリングモードで決まるタイミングで水平方向に加算平均処理しサンプリングを行う水平方向サンプリング手段と、前記水平方向サンプリングされた画像データを入力しサブサンプリングモードに応じてシフトするデータ経路を切り替えるシフトレジスタ手段と、前記シフトレジスタ手段のレジスタ出力を前記第３の記憶手段に書き込み制御するメモリ書き込み制御手段と、を有する請求項１記載の画像符号化装置。
【請求項６】
前記サブサンプリング手段は、サブサンプリングモードで決まるタイミングで水平方向に加算平均処理しサンプリングを行う水平方向サンプリング手段と、前記水平方向サンプリングされた画像データと１ライン前に前記水平方向サンプリングされた画像データから垂直方向に加算平均処理しサンプリングを行う垂直方向サンプリング手段と、サブサンプリングモードに応じたタイミングで前記水平方向サンプリングされた画像データと前記垂直方向サンプリングされた画像データを切り替えて入力し、サブサンプリングモードで決まるタイミングでシフトするデータ経路を切り替えるシフトレジスタ手段と、前記シフトレジスタ手段のレジスタ出力を前記第３の記憶手段に書き込み制御するメモリ書き込み制御手段と、を有し、前記シフトレジスタ手段の出力を前記１ライン前の水平方向にサンプリングされた画像データとする請求項１記載の画像符号化装置。
【請求項７】
前記第３の記憶手段において、データビット毎に書き込み制御が可能なパーシャルライト型メモリ手段を用いて、サブサンプリングモードで決まるタイミングでデータビット毎の書き込み制御する請求項３又は請求項４に記載の画像符号化装置。
【請求項８】
前記第３の記憶手段のデータビット幅を前記ブロック符号化処理のブロックサイズの画素数に相当するビット数とし、前記ブロックサイズの画素数に相当するビット数を１ワードとして前記第３の記憶手段から読み出し、前記１ワード単位に前記ブロック符号化処理で直交変換を行う直交変換手段にデータ入力する請求項１記載の画像符号化装置。
【請求項９】
前記ブロック符号化手段は、離散的コサイン変換を行う第１の１次元ＤＣＴ演算部と、前記第１の１次元ＤＣＴ演算部の出力をレジスタに保持し垂直方向にシフトするデータシフト部と、前記データシフト部の出力データに離散的コサイン変換を行う第２の１次元ＤＣＴ演算部とからなる直交変換部を有し、前記第３の記憶手段のデータビット幅を前記第１の１次元ＤＣＴ演算部と第２の１次元ＤＣＴ演算部の入力データ数と等しくする請求項８記載の画像符号化装置。
【請求項１０】
入力ブロックサイズが同一で符号化方式が異なる複数の符号化手段と、前記複数の符号化手段から一つの符号化手段を選択する制御手段と、前記第３の記憶手段から前記制御手段により選択された符号化手段のブロック符号化のインターリーブ入力形式に従った色成分順でブロック単位にデータを読み出すバッファメモリ読み出し手段とを有する請求項１記載の画像符号化装置。
【請求項１１】
請求項１記載の画像符号化装置を有する事を特徴とするディジタル複合装置。
【請求項１２】
請求項１０記載の画像符号化装置を有し、使用者の機能選択状態に応じて、前記複数の符号化手段から一つの符号化手段を選択する特徴とするディジタル複合装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラスタ形式の画像データをサブサンプリングしブロック単位に符号化する画像符号化装置に関する。
【背景技術】
【０００２】
従来、カラー画像データをＪＰＥＧ等でブロック単位に符号化する場合、画像データは一端フレームメモリに色毎にラスタ形式で格納され、次ラインメモリを使用しブロック符号化処理に適合したブロックインターリーブ形式にデータ順序を変更するものがあった（例えば、特許文献１参照）。
【特許文献１】特開平６−１９７３７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来の技術においては、以下のような問題が生ずる。
【０００４】
即ち、ラスタ形式の画像データをＮ×Ｎ画素のブロック形式に変換するには、Ｎライン×色数分のラインメモリを必要とし、回路規模が大きくなると言う問題があった。
【０００５】
また、フレームメモリからＮ×Ｎ画素の矩形範囲を水平方向にＮ画素シフトしながら連続的に読み出す必要があり、上記の様な特殊な読み出しアドレスが発生できるフレームメモリコントローラが必要となると言う問題があった。
【０００６】
画像処理プロセッサでは、フレームメモリをワークメモリ領域の一部に指定する為、前記の様な特殊な制御を行うフレームメモリコントローラを設ける事ができず、ＣＰＵのソフトウェアによりフレームメモリの読み出しとラインメモリ書き込みを行うこととなり、データ転送に時間がかかり、高速化できないという問題もあった。
【０００７】
Ｎ×Ｎ画素からなる矩形領域の転送が可能な、ＤＭＡコントローラを使用する方法も考えられるが、その場合でもＮ×Ｎ画素の転送が終わるたびに、ＣＰＵのソフトウェアによりＤＭＡコントローラのソースアドレス等の設定を変える必要があり、ＤＭＡコントローラの高速転送機能を生かす事ができず、高速化できなかった。
【０００８】
また、ＪＰＥＧデータの一般的なデータ形式であるＪＦＩＦ（ＪＰＥＧ  Ｆｉｌｅ      ｉｎｔｅｒｃｈｅｎｇｅ  Ｆｏｒｍａｔ）で決められているＹＣｂＣｒ表色系を用いて、色差成分であるＣｂ、Ｃｒデータについて間引き行う場合は、フレームメモリへ書き込む前に間引きを行うか、またはブロック形式に変換する前にフレームメモリ上で間引き変換を行う必要があった。その為、煩雑な処理が発生し、高速化できないという問題もあった。
【０００９】
さらに、ブロック符号化の最小符号化ユニット（ＭＣＵ）の色成分順がＪＰＥＧエンコーダと異なる、より高速で高画質な別方式のブロック符号エンコーダに切り替えて符号化する為には、フレームメモリからの読み出し転送順序も変更する必要があり簡単には対応できず、またブロック符号エンコーダの高速処理に見合った高速データ入力ができなかった。
【００１０】
本発明は、かかる問題点に鑑みて為されたものであり、ラインメモリを必要とせず、かつ高速にラスタ形式からブロックインターリーブ形式に変換する事が可能な画像符号化装置を提供する事を目的とする。
【００１１】
また、サブサンプリングモードで指定された間引き処理を、ラスタ形式からブロックインターリーブ形式への変換途中で高速に行う事が可能な画像符号化装置を提供する事を目的とする。
【００１２】
また、ブロック符号エンコーダの入力データ形式に応じて最小符号化ユニット（ＭＣＵ）の色成分順が簡単に変更可能であり、かつブロック符号エンコーダに高速にデータを入力する事が可能な画像符号化装置を提供する事を目的とする。
【課題を解決するための手段】
【００１３】
本発明は、ラスタ形式の画像データが色別に格納されている第１の記憶手段と、前記第１の記憶手段から第１のブロックサイズのデータを読み出しデータ転送する第１のデータ転送手段と、前記第１のデータ転送手段により転送された画像データを色別に記憶する第２の記憶手段と、前記色別の第２の記憶手段から所定の色成分順に第２のブロックサイズ単位でデータを読み出し転送する第２のデータ転送手段と、前記第２のデータ転送手段により転送された画像データを所定のサブサンプリングモードに従って間引処理を行うサブサンプリング手段と、前記サブサンプリング手段により間引き処理された画像データを色成分毎に順次記憶する第３の記憶手段と、前記第３の記憶手段からブロック符号化のインターリーブ形式に従った色成分順にブロック単位でデータを読み出すバッファメモリ読み出し手段と、前記バッファメモリ読み出し手段によりインターリーブ形式で読み出されたブロックデータを符号化するブロック符号化手段と、符号化された符号データを格納する第４の記憶手段と、前記ブロック符号化手段で生成された符号データを前記第４の記憶手段に転送する第３のデータ転送手段を有するものである。
【発明の効果】
【００１４】
本発明に係る画像符号化装置によれば、ラインメモリを必要とせず、かつ高速にラスタ形式からブロックインターリーブ形式に変換する事が可能である。
【００１５】
また、サブサンプリングモードで指定された間引き処理を、ラスタ形式からブロックインターリーブ形式への変換途中で高速に行う事が可能である。
【００１６】
また、ブロック符号エンコーダの入力データ形式に応じて最小符号化ユニット（ＭＣＵ）の色成分順が簡単に変更可能であり、かつブロック符号エンコーダに高速にデータを入力する事ができる。
【発明を実施するための最良の形態】
【００１７】
本発明の第１の態様に係る画像符号化装置は、画像データをブロック単位に符号化する画像符号化装置において、ラスタ形式の画像データが色別に格納されている第１の記憶手段と、前記第１の記憶手段から第１のブロックサイズのデータを読み出しデータ転送する第１のデータ転送手段と、前記第１のデータ転送手段により転送された画像データを色別に記憶する第２の記憶手段と、前記色別の第２の記憶手段から所定の色成分順に第２のブロックサイズ単位でデータを読み出し転送する第２のデータ転送手段と、前記第２のデータ転送手段により転送された画像データを所定のサブサンプリングモードに従って間引処理を行うサブサンプリング手段と、前記サブサンプリング手段により間引き処理された画像データを色成分毎に順次記憶する第３の記憶手段と、前記第３の記憶手段からブロック符号化のインターリーブ形式に従った色成分順にブロック単位でデータを読み出すバッファメモリ読み出し手段と、前記バッファメモリ読み出し手段によりインターリーブ形式で読み出されたブロックデータを符号化するブロック符号化手段と、符号化された符号データを格納する第４の記憶手段と、前記ブロック符号化手段で生成された符号データを前記第４の記憶手段に転送する第３のデータ転送手段を有する事を特徴とするものである。
【００１８】
これによれば、第２の記憶手段は、色成分別に第１のブロックサイズの容量が有れば良く、また第３の記憶手段は、ブロック符号化のインターリーブ形式に従った最小符号化ユニット（ＭＣＵ）分の容量が有れば良く、必要とするメモリ容量を大幅に削減することができる。
【００１９】
本発明の第２の態様に係る画像符号化装置は、前記第１の態様の画像符号化装置において、第１のデータ転送手段としてイメージバスに接続され第１のブロックサイズの矩形転送が可能なＤＭＡコントローラを用い、イメージバスに接続された汎用ワークメモリ上に第１の記憶手段を構成するものである。
【００２０】
これによれば、第１のブロックサイズの単位でハードウェア転送でき、第１のブロックサイズを大きくするに従い、ＤＭＡコントローラを設定するＣＰＵソフトウェアの回数を少なくすることができる為、高速処理することができる。
【００２１】
本発明の第３の態様に係る画像符号化装置は、第２の態様の画像符号化装置において、
第３のデータ転送手段としてイメージバスに接続したＤＭＡコントローラを用い、イメージバスに接続された汎用ワークメモリ上の第１の記憶手段とは異なる領域に第４の記憶手段を構成するものである。
【００２２】
これによれば、汎用のワークメモリ上にフレームメモリとコードメモリが構成でき、システムの形態に応じて、フレームメモリとコードメモリサイズを任意に設定でき、メモリを効率的に使用する事ができる。
【００２３】
本発明の第４の態様に係る画像符号化装置は、第１の態様の画像符号化装置において、
サブサンプリングモードに応じて第２のブロックサイズと整数値Ｓを決定し、第１のブロックサイズは第２のブロックサイズを水平方向にＳ倍したサイズをさらに整数倍したサイズで、かつ第２の記憶手段の容量を超えない最大のサイズとするものである。
【００２４】
この条件によれば、第１のブロックサイズは、ブロック符号化の処理単位である最小符号化ユニット（ＭＣＵ）の整数倍となり、第２の記憶手段へ第１のブロックサイズの書き込みが終了した時点で、第２の記憶手段上に１ＭＣＵの整数倍のデータが揃う為、第１のデータ転送と第２のデータ転送を効率的に制御でき、また第２の記憶手段のメモリ容量を最大限有効に使う事ができるため、少ないメモリ容量でより高速処理することができる。
【００２５】
本発明の第５の態様に係る画像符号化装置は、第１の態様の画像符号化装置のサブサンプリング手段において、サブサンプリングモードで決まるタイミングで水平方向に加算平均処理しサンプリングを行う水平方向サンプリング手段と、前記水平方向サンプリングされた画像データを入力しサブサンプリングモードに応じてシフトするデータ経路を切り替えるシフトレジスタ手段と、前記シフトレジスタ手段のレジスタ出力を前記第３の記憶手段に書き込み制御するメモリ書き込み制御手段とを有するものである。
【００２６】
これによれば、第２の記憶手段から第３の記憶手段へのデータ転送の間に水平方向サンプリングが行われる為、水平方向サンプリングが設定された場合でも事前にフレームメモリ上で間引き変換する必要が無くなり、高速処理することができる。また、サンプリングは単純に間引くのでは無く、対象画素を加算平均処理するのでモアレ発生などの画質劣化を押さえる事が可能である。
【００２７】
本発明の第６の態様に係る画像符号化装置は、第１の態様の画像符号化装置のサブサンプリング手段において、サブサンプリングモードで決まるタイミングで水平方向に加算平均処理しサンプリングを行う水平方向サンプリング手段と、前記水平方向サンプリングされた画像データと１ライン前に前記水平方向サンプリングされた画像データから垂直方向に加算平均処理しサンプリングを行う垂直方向サンプリング手段と、サブサンプリングモードに応じたタイミングで前記水平方向サンプリングされた画像データと前記垂直方向サンプリングされた画像データを切り替えて入力し、サブサンプリングモードで決まるタイミングでシフトするデータ経路を切り替えるシフトレジスタ手段と、前記シフトレジスタ手段のレジスタ出力を前記第３の記憶手段に書き込み制御するメモリ書き込み制御手段を有し、前記シフトレジスタ手段の出力を前記１ライン前の水平方向にサンプリングされた画像データとするものである。
【００２８】
これによれば、第２の記憶手段から第３の記憶手段へのデータ転送の間に水平方向と垂直方向のサンプリングが行われる為、水平方向と垂直方向サンプリングが設定された場合でも、事前にフレームメモリ上で間引き変換する必要が無くなり、高速処理することができる。
【００２９】
また、サンプリングは単純に間引くのでは無く、対象画素を加算平均処理するのでモアレ発生などの画質劣化を押さえる事が可能である。
【００３０】
本発明の第７の態様に係る画像符号化装置は、前記第３又は第４の態様の画像符号化装置の第３の記憶手段において、データビット毎に書き込み制御が可能なパーシャルライト型メモリ手段を用いて、サブサンプリングモードで決まるタイミングでデータビット毎の書き込み制御するものである。
【００３１】
これによれば、第３の記憶手段を、データの読み出しとビットの入れ替え再書き込み（リードモディファイライト）する事無く、サブサンプリングによって生成した画像データを第３の記憶手段の１ワードの中の特定ビット位置に書き込む事が可能になり、読み出しが不要な分、処理時間を短縮する事が可能である。
【００３２】
本発明の第８の態様に係る画像符号化装置は、第１の態様の画像符号化装置の第３の記憶手段のデータビット幅を前記ブロック符号化処理のブロックサイズの画素数に相当するビット数とし、前記ブロックサイズの画素数に相当するビット数を１ワードとして前記第３の記憶手段から読み出し、前記１ワード単位に前記ブロック符号化処理で直交変換を行う直交変換手段にデータ入力するものである。
【００３３】
これによれば、第３の記憶手段データビット幅とブロック符号化処理の入力ブロックサイズの１辺のデータ数が等しい為、データの並び変えが不要で第３の記憶手段からブロック符号化処理へのデータ入力を高速に行う事ができる。
【００３４】
本発明の第９の態様に係る画像符号化装置は、前記第８の態様の画像符号化装置のブロック符号化手段おいて、離散的コサイン変換を行う第１の１次元ＤＣＴ演算部と、前記第１の１次元ＤＣＴ演算部の出力をレジスタに保持し垂直方向にシフトするデータシフト部と、前記データシフト部の出力データに離散的コサイン変換を行う第２の１次元ＤＣＴ演算部からなる直交変換部を有し、前記第３の記憶手段のデータビット幅を前記第１の１次元ＤＣＴ演算部と第２の１次元ＤＣＴ演算部の入力データ数と等しくするものである。
【００３５】
これによれば、第３の記憶手段からデータ構成を変更することなく、ブロック符号化部内の直交変換部を構成する１次元ＤＣＴ演算部へ直接データ入力が可能で、また１次元ＤＣＴを用いた直交変換処理に同期してデータ入力が可能で、高速の画像符号化処理を実現できる。
【００３６】
本発明の第１０の態様に係る画像符号化装置は、前記第１の態様の画像符号化装置において、入力ブロックサイズが同一で符号化方式が異なる複数の符号化手段と、前記複数の符号化手段から一つの符号化手段を選択する制御手段と、前記第３の記憶手段から前記制御手段により選択された符号化手段のブロック符号化のインターリーブ入力形式に従った色成分順でブロック単位にデータを読み出すバッファメモリ読み出し手段を有するものである。
【００３７】
これによれば第３の記憶手段の読み出し順序の変更のみで、色成分順の異なるインターリーブ入力形式の符号化手段を目的に応じて切り替えて符号化処理するこが可能である。
【００３８】
本発明の第１１の態様に係るディジタル複合装置は、本発明の第１の態様の画像符号化装置を用いた事を特徴とするものである。
【００３９】
これによれば、使用メモリ量が少なく高速処理可能な画像符号化装置を用いる事により、回路規模が小さく、高速コピー、高速読み取りが可能なディジタル複写機およびディジタル複合機が実現できるものである。
【００４０】
本発明の第１２の態様に係るディジタル複合装置は、前記第１０の態様の画像符号化装置を有し、使用者の機能選択状態に応じて、画像符号化装置の複数の符号化手段から一つの符号化手段を選択するものである。
【００４１】
このように本画像処理装置を用いたディジタル複合機では、使用者の機能設定に応じて画像符号化装置の符号化処理を選択しより効率的な画像データ処理を実現する事ができる。
【００４２】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００４３】
図１は、本発明の一実施の形態に係る画像符合化装置の構成を示すブロック図である。画像符号化装置１００は、外部ホストイメージバス１２８から画像データを入力しフレームメモリ１０３へ書き込み、またコードメモリ１０４上の符号データを外部ホストイメージバス１２８へ出力するデータ入出力制御部１０１を備えている。
【００４４】
また、外部ホストＣＰＵバス１２９及び制御バス１２５のデータの入出力を制御する外部バス制御部１２６、外部ホストＣＰＵバス１２９からの読み書きが可能で符号化処理開始ビットと符号化機能パラメータとしてサブサンプリングモードと符号化エンコーダ選択の指定ビットを有する制御レジスタ１２７を設けている。
【００４５】
また、各制御ブロックと各エンコーダ、各ＤＭＡコントローラと制御バス１２５で接続され、前記制御レジスタ１２７のビット設定に応じて機能設定を行うローカル制御ＣＰＵ１２４を設けている。
【００４６】
また、イメージバス１１９から読み書きする汎用ワークメモリ１０２、前記汎用ワークメモリ１０２上に構成されラスタ形式の画像データが色別に格納されているフレームメモリ１０３、前記汎用ワークメモリ上に構成され符号データが格納されるコードメモリ１０４を設けている。
【００４７】
また、各色成分用の同一容量のブロックメモリとして、Ｙ色成分用としてブロックメモリＡ１０６、Ｃｂ色成分用としてブロックメモリＢ１０７、Ｃｒ色成分用としてブロックメモリＣ１０８を設けている。
【００４８】
また、前記ローカル制御ＣＰＵ１２４は、前記制御レジスタ１２７上のサブサンプリングモードの設定により、ブロックサイズＮ×Ｎ画素と整数値Ｓを次に様に決める。
【００４９】
サブサンプリング指定４：４：４の時  Ｎ＝８、Ｓ＝１
サブサンプリング指定４：２：２の時  Ｎ＝８、Ｓ＝２
サブサンプリング指定４：１：１の時  Ｎ＝８、Ｓ＝４
サブサンプリング指定４：２：０の時  Ｎ＝１６、Ｓ＝１
さらに前記のＮ値、Ｓ値と任意の整数ＫからＬ値を次の様に決める。
【００５０】
Ｌ＝Ｎ×Ｓ×Ｋ
この時、任意の整数Ｋは、Ｎ画素×Ｌ画素で決まるデータ量が前記一色のブロックメモリの容量を超えない最大の値とする。
【００５１】
また、ローカル制御ＣＰＵ１２４により設定された垂直方向Ｎ画素×水平方向Ｌ画素の矩形領域の２次元データを色成分毎にフレームメモリ１０３から読み出し、データ転送するＤＭＡコントローラＡ１２０、前記ＤＭＡコントローラＡ１２０によりデータ転送される、垂直方向Ｎ画素×水平方向Ｌ画素の矩形領域の画像データを、色成分毎に異なる前記ブロックメモリの連続したアドレスに順次書き込むブロックメモリ書き込み制御部１０５を設けている。
【００５２】
また、前記ブロックメモリＡ１０６と前記ブロックメモリＢ１０７およびブロックメモリＣ１０８からＹ、Ｃｂ、Ｃｒの色成分順にローカル制御ＣＰＵ１２４により設定された垂直方向Ｎ画素×水平方向Ｎ画素のブロックサイズ単位にデータを読み出すブロックメモリ読み出し制御部１０９を設けている。
【００５３】
また、ブロック符号化の処理単位である最小符号化ユニット（ＭＣＵ）単位の画像データの容量を有するパーシャルライト型バッファメモリＡ１１１、パーシャルライト型バッファメモリＢ１１２を設けている。
【００５４】
また、前記ブロックメモリ読み出し制御部１０９のデータを転送するＤＭＡコントローラＢ１２１、前記ＤＭＡコントローラＢから転送されたデータからサブサンプリングモードに応じてＣｂ色成分とＣｒ色成分に間引き処理を行い、またＹ色成分には間引き処理を行わずに、前記パーシャルライト型バッファメモリＡ１１１とパーシャルライト型バッファメモリＢ１１２を最小符号化ユニット（ＭＣＵ）単位毎で交互に切り替え、色別に指定領域に順次データを書き込むサブサンプリング書き込み制御部１１０を設けている。
【００５５】
また、前記パーシャルライト型バッファメモリＡ１１１とパーシャルライト型バッファメモリＢ１１２上に生成された最小符号化ユニット（ＭＣＵ）単位の画像データからローカル制御ＣＰＵ１２４が選択した出力先エンコーダに応じて、８×８画素を１ブロックとして次の順序でデータを読み出すバッファメモリ読み出し制御部１１３を設けている。バッファメモリ読み出し制御部１１３では、
ＪＰＥＧエンコーダ１１４の場合は
サブサンプリング指定４：４：４の時  Ｙ、Ｃｂ、Ｃｒ
サブサンプリング指定４：２：２の時  Ｙ１、Ｙ２、Ｃｂ、Ｃｒ
サブサンプリング指定４：１：１の時  Ｙ１、Ｙ２、Ｙ３、Ｙ４、Ｃｂ、Ｃｒ
サブサンプリング指定４：２：０の時  Ｙ１、Ｙ２、Ｙ３、Ｙ４、Ｃｂ、Ｃｒ
ブロック符号エンコーダ１１８の場合は
サブサンプリング指定４：４：４の時  Ｃｂ、Ｃｒ、Ｙ
サブサンプリング指定４：２：２の時  Ｃｂ、Ｃｒ、Ｙ１、Ｙ２
サブサンプリング指定４：１：１の時  Ｃｂ、Ｃｒ、Ｙ１、Ｙ２、Ｙ３、Ｙ４
サブサンプリング指定４：２：０の時  Ｃｂ、Ｃｒ、Ｙ１、Ｙ２、Ｙ３、Ｙ４
の順序でデータを読み出す。
【００５６】
また、ローカル制御ＣＰＵ１２４がエンコーダとしてＪＰＥＧエンコーダ１１４を選択した場合は、前記バッファメモリ読み出し制御部１１３から最小符号化ユニット（ＭＣＵ）単位で順次画像データが転送され、最小符号化ユニット（ＭＣＵ）単位に符号化を行い、符号データを出力するＪＰＥＧエンコーダ１１４を設けている。
【００５７】
また、ローカル制御ＣＰＵ１２４がエンコーダとしてブロック符号エンコーダ１１８を選択した場合は、前記バッファメモリ読み出し制御部１１３から水平方向８画素を１ワードとして、最小符号化ユニット（ＭＣＵ）単位で順次画像データが転送され、８画素１ワード単位にデータ入力し直交変換する８×８画素直交変換部１１５、前記直交変換部出力データをＣＰＵにより設定されたテーブル値で量子化する量子化部１１６、前記量子化されたデータを符号化し符号データを出力する符号化部１１７、前記８×８画素直交変換部１１５と前記量子化部１１６と前記符号化部１１７とからなるブロック符号エンコーダ１１８を設けている。
【００５８】
また、ローカル制御ＣＰＵ１２４により選択されたＪＰＥＧエンコーダ１１４またはブロック符号エンコーダ１１８のどちらか一方の符号データを前記コードメモリ１０４へ転送するＤＭＡコントローラＣ１２２、前記ＤＭＡコントローラＡ１２０、ＤＭＡコントローラＢ１２１、ＤＭＡコントローラＣ１２２のイメージバスアクセスの競合を調停するバスアビター１２３を設けている。
【００５９】
このようにフレームメモリ１０３とコードメモリ１０４以外に必要とするメモリ量は、フレームメモリ１０３から転送されるＮ画素×Ｌ画素のデータ容量を満足するブロックメモリ１０４が３個、ブロック符号化のインターリーブ形式に従った最小符号化ユニット（ＭＣＵ）分のデータ容量のバッファメモリが２個あれば良く、この為必要メモリ容量を削減することができる。
【００６０】
このように、ブロックメモリ１０６〜１０８を設けて、フレームメモリ１０３とブロックメモリ書き込み制御部１０５間のデータ転送に矩形転送が可能なＤＭＡコントローラ１２０〜１２２を用い、またＪＰＥＧエンコーダ１１４とコードメモリ１０４間のデータ転送、またはブロック符号エンコーダ１１８とコードメモリ１０４間のデータ転送にもＤＭＡコントローラ１２０〜１２２を用いる事により、汎用ワークメモリ１０２上のフレームメモリ１０３とコードメモリ１０４が構成でき、システムの形態に応じて、フレームメモリ１０３とコードメモリ１０４のサイズを任意に設定でき、メモリを効率的に使用する事ができる。
【００６１】
図２に４つのサブサンプリングモード毎に最小符号化ユニット（ＭＣＵ）を構成したサブサンプリング出力画像のブロック構成と、それに対応したサブサンプリング入力画像のブロック構成の関係を示す。
【００６２】
サブサンプリングモードが４：４：４の場合は、間引きが発生せず１ＭＣＵのデータを生成するには各色について１ブロックのデータをサブサンプリング書き込み制御部１１０へ入力すればよい。
【００６３】
また、サブサンプリングモードが４：２：２の場合は、Ｃｂ、Ｃｒが水平方向に１／２に間引かれる為に１ＭＣＵのデータを生成するには各色について水平方向に２ブロックのデータをサブサンプリング書き込み制御部１１０へ入力する必要がある。
【００６４】
また、サブサンプリングモードが４：１：１の場合は、Ｃｂ、Ｃｒが水平方向に１／４に間引かれる為に１ＭＣＵのデータを生成するには各色について水平方向に４ブロックのデータをサブサンプリング書き込み制御部１１０へ入力する必要がある。
【００６５】
また、サブサンプリングモードが４：２：０の場合はＣｂ、Ｃｒが水平方向に１／２、垂直方向に１／２に間引かれる為に１ＭＣＵのデータを生成するには各色について水平方向に２ブロック×垂直方向２ブロックの合計４ブロックのデータをサブサンプリング書き込み制御部１１０へ入力する必要がある。
【００６６】
図３はサブサンプリングモードが４：４：４、４：２：２、４：１：１の場合の垂直方向３２画素×水平方向１０２４画素のＹＣｂＣｒ３色のカラーデータがフレームメモリ１０３に格納されている例を示したものである。この例ではブロックメモリ１０６〜１０８の容量を４０９６Ｂｙｔｅとして、１回に垂直方向８画素×水平方向５１２画素の矩形領域に付いてＤＭＡ転送を行うものであり、矩形領域をＹ［１］，Ｙ［２］・・・，Ｃｂ［１］，Ｃｂ［２］・・・，Ｃｒ［１］，Ｃｂ［２］・・・として示した。
【００６７】
また、１矩形領域内は８×８画素を１ブロックとして各色１〜６４までのブロックで構成されている。
【００６８】
サブサンプリングモードで決まるＮ値、Ｓ値と任意の整数Ｋの条件において、Ｌ＝５１２とすれば何れのサブサンプリングモードでもＬ＝Ｎ×Ｓ×Ｋが成り立ち、効率的な転送が可能である。
【００６９】
図４はサブサンプリングモードが４：２：０の場合の垂直方向３２画素×水平方向１０２４画素のＹＣｂＣｒ３色のカラーデータがフレームメモリに格納されている例を示したものである。この例では、ブロックメモリの容量を４０９６Ｂｙｔｅとして、１回に垂直方向１６画素×水平方向２５６画素の矩形領域に付いてＤＭＡ転送を行うものであり、矩形領域をＹ［１］，Ｙ［２］・・・，Ｃｂ［１］，Ｃｂ［２］・・・，Ｃｒ［１］，Ｃｂ［２］・・・として示した。
【００７０】
また、１矩形領域内は１６×１６画素を１ブロックとして各色１〜１６までのブロックで構成されている。
【００７１】
サブサンプリングモードで決まるＮ値、Ｓ値と任意の整数Ｋの条件において、Ｌ＝２５６とすれば何れのサブサンプリングモードでもＬ＝Ｎ×Ｓ×Ｋが成り立ち、効率的な転送が可能である。
【００７２】
図５、図６はサブサンプリングモードが４：４：４の場合の動作を示すタイミング図である。時間軸は図５から図６にかけて連続しているものとする。フレームメモリ上に図３に示した構成の画像データが格納された時点で、ローカル制御ＣＰＵ１２４はＤＭＡコントローラＡを起動し、フレームメモリ１０３のＹ領域から垂直方向８画素×水平方向５１２画素の矩形領域を読み出し、ブロックメモリ書き込み制御部１０５へ２次元転送し（ＦＭ（Ｙ）−＞ＢＭ）、ブロックメモリ書き込み制御部１０５から信号ＢＷＤ１にそのブロックデータＹ［１］を出力しブロックメモリＡに書き込み、次に同様の制御で信号ＢＷＤ２にＣｂ［１］を出力しブロックメモリＢに、また信号ＢＷＤ３にＣｒ［１］を出力しブロックメモリＣに書き込む。
【００７３】
次にローカル制御ＣＰＵ１２４はＤＭＡコントローラＢにブロックメモリ読み出し制御部１０９からサブサンプリング書き込み制御部１１０へＹ［１］，Ｃｂ［１］，Ｃｒ［１］の全データ量である８×５１２×３＝１２２８８バイトの転送を設定しデータ転送を起動する（ＢＭＯ−＞ＳＢＩ）。
【００７４】
ブロックメモリ読み出し制御部１０９は、ＤＭＡコントローラＢからの読み出し要求に従って、最初にブロックメモリＡより信号ＢＲＤ１へＹ１の８×８画素領域のデータを読み出し、次にブロックメモリＢより信号ＢＲＤ２へＣｂ１の８×８画素領域のデータを読み出し、次にブロックメモリＣより信号ＢＲＤ３へＣｒ１の８×８画素領域のデータを読み出し、順次この順序で読み出しを繰り返し、合成したブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を信号ＢＭＯＤへ出力する。
【００７５】
サブサンプリング書き込み制御部１１０は、ＤＭＡコントローラＢからの書き込み要求に従って、ブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を受け取りサブサンプリングモードが４：４：４の場合は間引き処理は行わずに、最初のＭＣＵを構成するＹ１，Ｃｂ１，Ｃｒ１を信号ＳＷＤ１［６３：０］へ出力し、パーシャルライト型バッファメモリＡへ書き込み、次のＭＣＵを構成するＹ２，Ｃｂ２，Ｃｒ２を信号ＳＷＤ２［６３：０］へ出力し、パーシャルライト型バッファメモリＢへ書き込み、このＭＣＵ単位の書き込み処理を交互に繰り返す。
【００７６】
次にバッファメモリ読み出し制御部１１３は符号化処理としてＪＰＥＧエンコーダ１１４を使用する場合は、パーシャルライト型バッファメモリＡへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ１により検知し、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＹ１，Ｃｂ１，Ｃｒ１順に読みだし、またパーシャルライト型バッファメモリＢへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ２により検知し、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＹ２，Ｃｂ２，Ｃｒ２順に読みだし、ＪＰＥＧエンコーダ１１４の入力データ幅に変換して信号ＪＥＩＤ［１５：０］へ出力する。
【００７７】
ＪＰＥＧエンコーダ１１４で符号データに変換し符号データを信号ＪＥＯＤ［３１：０］へ出力する。
【００７８】
ローカル制御ＣＰＵ１２４はＤＭＡコントローラＣにコードメモリ容量分のデータ転送数を設定し、事前に起動しておき、ＪＰＥＧエンコーダ出力のデータ転送要求に応じてコードメモリへデータ転送を行う。
【００７９】
または、符号化処理としてブロック符号エンコーダ１１８を使用する場合は、同様のタイミングで、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＣｂ１，Ｃｒ１，Ｙ１の順に読みだし、また同様のタイミングで、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＣｂ２，Ｃｒ２，Ｙ２の順に読みだし、８バイトデータ幅そのままに信号ＢＥＩＤ［６３：０］へ出力する。
【００８０】
ブロック符号エンコーダ１１８で符号データに変換し符号データを信号ＢＥＯＤ［３１：０］へ出力する。
【００８１】
ローカル制御ＣＰＵ１２４はＤＭＡコントローラＣにコードメモリ容量分のデータ転送数を設定し、事前に起動しておき、ブロック符号エンコーダ出力のデータ転送要求に応じてコードメモリへデータ転送を行う。
【００８２】
このように、サブサンプリングモードに応じて第２のブロックサイズと第１のブロックサイズとを決定すれば、垂直方向Ｎ画素×水平方向Ｌ画素当たりのＤＭＡコントローラの設定・起動回数は、ＤＭＡコントローラＡが３回、ＤＭＡコントローラＢが１回で処理可能であり、またＤＭＡコントローラＣはコードメモリ容量当たり１回の設定・起動と成るため、第１のブロックサイズを大きくなれば、１ページ当たりのローカル制御ＣＰＵ１２４がＤＭＡコントローラをアクセスする回数を大幅に減らす事ができ、処理時間を大幅に短縮できるものである。
【００８３】
図７、図８はサブサンプリングモードが４：２：２の場合の動作を示すタイミング図である。時間軸は図７から図８にかけて連続しているものとする。フレームメモリ上に図３に示した構成の画像データが格納された時点で、ローカル制御ＣＰＵ１２４はＤＭＡコントローラＡを起動し、フレームメモリ１０３のＹ領域から垂直方向８画素×水平方向５１２画素の矩形領域を読み出し、ブロックメモリ書き込み制御部１０５へ２次元転送し（ＦＭ（Ｙ）−＞ＢＭ）、ブロックメモリ書き込み制御部１０５から信号ＢＷＤ１にそのブロックデータＹ［１］を出力しブロックメモリＡに書き込み、次に同様の制御で信号ＢＷＤ２にＣｂ［１］を出力しブロックメモリＢに、また信号ＢＷＤ３にＣｒ［１］を出力しブロックメモリＣに書き込む。
【００８４】
次にローカル制御ＣＰＵ１２４はＤＭＡコントローラＢにブロックメモリ読み出し制御部１０９からサブサンプリング書き込み制御部１１０へＹ［１］，Ｃｂ［１］，Ｃｒ［１］の全データ量である８×５１２×３＝１２２８８バイトの転送を設定しデータ転送を起動する（ＢＭＯ−＞ＳＢＩ）。
【００８５】
ブロックメモリ読み出し制御部１０９は、ＤＭＡコントローラＢからの読み出し要求に従って、最初にブロックメモリＡより信号ＢＲＤ１へＹ１の８×８画素領域のデータを読み出し、次にブロックメモリＢより信号ＢＲＤ２へＣｂ１の８×８画素領域のデータを読み出し、次にブロックメモリＣより信号ＢＲＤ３へＣｒ１の８×８画素領域のデータを読み出し、順次この順序で読み出しを繰り返し、合成したブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を信号ＢＭＯＤへ出力する。ここまでの動作タイミングはサブサンプリングモードが４：４：４の場合と同一である。
【００８６】
サブサンプリング書き込み制御部１１０は、ＤＭＡコントローラＢからの書き込み要求に従って、ブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を受け取りＹには間引き処理を行わずに、またＣｂ，Ｃｒには間引き処理を行う。間引き処理詳細につては、図９〜図２３で説明する。
【００８７】
最初のＭＣＵを構成するＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２を信号ＳＷＤ１［６３：０］へ出力し、パーシャルライト型バッファメモリＡへ書き込む。
【００８８】
この時、パーシャルライト型バッファメモリのライトイネーブル信号ＳＷＥ１Ｘ［６３：０］を制御して、Ｃｂ１，Ｃｒ１はライトデータ幅８バイトの上位４バイト、Ｃｂ２，Ｃｒ２は下位４バイトに書き込み、このＭＣＵ単位の書き込み処理を交互に繰り返す。
【００８９】
次のＭＣＵを構成するＹ３，Ｃｂ３，Ｃｒ３，Ｙ４，Ｃｂ４，Ｃｒ４を信号ＳＷＤ２［６３：０］へ出力し、パーシャルライト型バッファメモリＢへ書き込む。
【００９０】
この時、パーシャルライト型バッファメモリのライトイネーブル信号ＳＷＥ２Ｘ［６３：０］を制御して、Ｃｂ３，Ｃｒ３はライトデータ幅８バイトの上位４バイト、Ｃｂ４，Ｃｒ４は下位４バイトに書き込む。
【００９１】
このようにパーシャルライト型バッファメモリは、書き込みデータの１ビット毎にライトイネーブル制御信号を持っており、指定ビットのみを書き換え、その他のビットを保持したままにする事が可能である。通常メモリを使用した場合はデータの読み出しとビットの入れ替え再書き込み（リードモディファイライト）が必要となるが、パーシャルライト型バッファメモリを用いる事で読み出しサイクルが不要になる為、処理に時間が短縮できる。
【００９２】
次にバッファメモリ読み出し制御部１１３は符号化処理としてＪＰＥＧエンコーダ１１４を使用する場合は、パーシャルライト型バッファメモリＡへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ１により検知し、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＹ１，Ｙ２，Ｃｂ１，Ｃｒ１順に読み出し、またパーシャルライト型バッファメモリＢへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ２により検知し、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＹ３，Ｙ４，Ｃｂ２，Ｃｒ２順に読みだし、ＪＰＥＧエンコーダ１１４の入力データ幅に変換して信号ＪＥＩＤ［１５：０］へ出力する。
【００９３】
または、符号化処理としてブロック符号エンコーダ１１８を使用する場合は、同様のタイミングで、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＣｂ１，Ｃｒ１，Ｙ１，Ｙ２の順に読みだし、また同様のタイミングで、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＣｂ２，Ｃｒ２，Ｙ３，Ｙ４の順に読みだし、８バイトデータ幅そのままに信号ＢＥＩＤ［６３：０］へ出力する。
【００９４】
このように、パーシャルライト型バッファメモリのデータビット幅とブロック符号化処理の入力ブロックサイズの１辺のデータ数を等しくする事で、データの並び変えが不要でパーシャルライト型バッファメモリからブロック符号化処理へのデータ入力を高速に行う事ができる。
【００９５】
図９、図１０はサブサンプリングモードが４：２：０の場合の動作を示すタイミング図である。時間軸は図９から図１０にかけて連続しているものとする。フレームメモリ上に図４に示した構成の画像データが格納された時点で、ローカル制御ＣＰＵ１２４はＤＭＡコントローラＡを起動し、フレームメモリのＹ領域から垂直方向１６画素×水平方向２５６画素の矩形領域を読み出し、ブロックメモリ書き込み制御部１０５へ２次元転送し（ＦＭ（Ｙ）−＞ＢＭ）、ブロックメモリ書き込み制御部１０５から信号ＢＷＤ１にそのブロックデータＹ［１］を出力しブロックメモリＡに書き込み、次に同様の制御で信号ＢＷＤ２にＣｂ［１］を出力しブロックメモリＢに、また信号ＢＷＤ３にＣｒ［１］を出力しブロックメモリＣに書き込む。
【００９６】
次にローカル制御ＣＰＵ１２４はＤＭＡコントローラＢにブロックメモリ読み出し制御部１０９からサブサンプリング書き込み制御部１１０へＹ［１］，Ｃｂ［１］，Ｃｒ［１］の全データ量である８×５１２×３＝１２２８８バイトの転送を設定しデータ転送を起動する（ＢＭＯ−＞ＳＢＩ）。
【００９７】
ブロックメモリ読み出し制御部１０９は、ＤＭＡコントローラＢからの読み出し要求に従って、最初にブロックメモリＡより信号ＢＲＤ１へＹ１の１６×１６画素領域のデータを読み出し、次にブロックメモリＢより信号ＢＲＤ２へＣｂ１の１６×１６画素領域のデータを読み出し、次にブロックメモリＣより信号ＢＲＤ３へＣｒ１の１６×１６画素領域のデータを読み出し、順次この順序で読み出しを繰り返し、合成したブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を信号ＢＭＯＤへ出力する。
【００９８】
サブサンプリング書き込み制御部１１０は、ＤＭＡコントローラＢからの書き込み要求に従って、ブロックデータＹ１，Ｃｂ１，Ｃｒ１，Ｙ２，Ｃｂ２，Ｃｒ２，・・・・・を受け取りＹには間引き処理を行わずに、またＣｂ，Ｃｒに水平方向に１／２、垂直方向に１／２の間引き処理を行う。間引き処理詳細につては、図９〜図２３で説明する。
【００９９】
最初のＭＣＵを構成するＹ１，Ｃｂ１，Ｃｒ１信号をＳＷＤ１［６３：０］へ出力し、パーシャルライト型バッファメモリＡへ書き込む。
【０１００】
この時、１６×１６画素で構成されるＹ１は、４分割され１ブロックを８×８画素とする４ブロック（Ｙ１−１，Ｙ１−２、Ｙ１−３、Ｙ１−４）領域に分割されて書き込まれる。
【０１０１】
次のＭＣＵを構成するＹ２，Ｃｂ２，Ｃｒ２信号をＳＷＤ２［６３：０］へ出力し、パーシャルライト型バッファメモリＢへ書き込む。
【０１０２】
この時も同様に、１６×１６画素で構成されるＹ２は、書き込みアドレスの制御によって４分割され１ブロックを８×８画素とする４ブロック（Ｙ２−１，Ｙ２−２、Ｙ２−３、Ｙ２−４）領域に分割されて書き込まれる。
【０１０３】
次にバッファメモリ読み出し制御部１１３は符号化処理としてＪＰＥＧエンコーダ１１４を使用する場合は、パーシャルライト型バッファメモリＡへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ１により検知し、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＹ１−１，Ｙ１−２，Ｙ１−３，Ｙ１−４，Ｃｂ１，Ｃｒ１順に読みだし、またパーシャルライト型バッファメモリＢへ書き込みが終了した事をサブサンプリング書き込み制御部１１０からの信号ＷＤＯＮ２により検知し、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＹ２−１，Ｙ２−２，Ｙ２−３，Ｙ２−４，Ｃｂ２，Ｃｒ２順に読みだし、ＪＰＥＧエンコーダ１１４の入力データ幅に変換して信号ＪＥＩＤ［１５：０］へ出力する。
【０１０４】
または、符号化処理としてブロック符号エンコーダ１１８を使用する場合は、同様のタイミングで、パーシャルライト型バッファメモリＡより信号ＳＲＤ１へＣｂ１，Ｃｒ１，Ｙ１−１，Ｙ１−２，Ｙ１−３，Ｙ１−４の順に読みだし、また同様のタイミングで、パーシャルライト型バッファメモリＢより信号ＳＲＤ２へＣｂ２，Ｃｒ２，Ｙ２−１，Ｙ２−２，Ｙ２−３，Ｙ２−４の順に読みだし、８バイトデータ幅そのままに信号ＢＥＩＤ［６３：０］へ出力する。
【０１０５】
このように、バッファメモリ読み出し制御部１１３で制御されるバッファメモリ読み出し順序の変更のみで、色成分順の異なるインターリーブ入力形式の符号化手段を本画像符号化装置の使用目的に応じて切り替えて符号化処理するこが可能である。
【０１０６】
図１１は図１に示すサブサンプリング書き込み制御部１１０の構成を示すブロック図である。イメージバス１１９のバス制御信号ＢＵＳ＿ＣＮＴより入力データ有効信号ＤＥＮを生成するバス制御部８０６と、符号化スタート信号ＥＮＣ＿ＳＴとサブサンプリングモード設定信号ＳＳＭＤを入力し、データワード数をカウントし、カウント信号ＤＡを生成するデータカウンタ８０５を設けている。
【０１０７】
また、前記サブサンプリングモード設定信号とカウント信号ＤＡから、データ選択信号ＰＸＣＮＴとＶ２ＳＬＡを生成するデータ制御部８０７と、同じく前記サブサンプリングモード設定信号とカウント信号ＤＡからバッファメモリＡ，バッファメモリＢ共通の書き込みアドレス信号ＳＷＡとバッファメモリＡ用のライトイネーブル信号ＳＷＥ１Ｘ［６３：０］とバッファメモリＢ用のライトイネーブル信号ＳＷＥ２Ｘ［６３：０］を生成するメモリ制御部８０８を設けている。
【０１０８】
また、１ワード４画素であり４バイトからなる画像データ信号は、データ入力端子ＳＢＩＤ［３１：０］から水平方向サンプリング部８０１へ入力し、水平方向サンプリング部８０１では、第１バイトと第２バイトの加算値Ｈ２＿１ＳＤと加算平均値Ｈ２＿１Ｄを演算し、また第３バイトと第４バイトの加算値Ｈ２＿２ＳＤと加算平均値Ｈ２＿２Ｄを演算し、また第１から第４バイトまでの加算平均値Ｈ１＿１Ｄを演算する。水平方向サンプリングデータである前記加算値Ｈ２＿１ＳＤとＨ２＿２ＳＤ、および１ライン前の水平方向サンプリングデータであるシフトレジスタ出力のＳ２Ｄ７ＤとＳ２Ｄ８Ｄを垂直方向サンプリング部８０２へ入力し、前記垂直方向サンプリング部８０２では垂直方向に隣り合うＨ２＿１ＳＤとＳ２Ｄ７Ｄから加算平均値Ｈ２Ｖ２＿１Ｄ、垂直方向に隣り合うＨ２＿２ＳＤとＳ２Ｄ８Ｄから加算平均値Ｈ２Ｖ２＿２Ｄを求める。
【０１０９】
また９ビットのＤ−ＦＦ８個により構成され、９ビットを１ワードとして８ワードのデータを入力し有効データ入力時に１クロックシフトして出力するシフトレジスタ部８０４を設けている。
【０１１０】
前記シフトレジスタ部出力の８ワード信号から各ワード毎に下位８ビットを取り出した合計６４ビットの信号を書き込みデータ信号ＳＷＤ［６３：０］とし、バッファメモリＡ，バッファメモリＢの共通の書き込みデータ信号とする。
【０１１１】
前記シフトレジスタ出力の下位７ワードと、データ入力ＳＢＩＤ［３１：０］を４画素の信号に分解したデータであるＨ４＿１Ｄ,Ｈ４＿２Ｄ,Ｈ４＿３Ｄ,Ｈ４＿４Ｄと、前記水平方向サンプリング部８０１で生成したデータであるＨ２＿１Ｄ，Ｈ２＿２Ｄ，Ｈ１＿１Ｄ，Ｈ２＿１ＳＤ，Ｈ２＿２ＳＤと、前記垂直方向サンプリング部８０２で生成したＨ２Ｖ２＿１Ｄ，Ｈ２Ｖ２＿２Ｄとをデータ選択部８０３へ入力し、データ選択部８０３は選択信号ＰＸＣＮＴ［１：０］とＶ２ＳＬＳの制御により、前記入力データから前記シフトレジスタ部８０４へ入力する８バイトのデータを選択する。
【０１１２】
前記データ選択部８０３と前記シフトレジスタ部８０４を組み合わせる事により、サブサンプリングモードと入力色に対応したデータ入力タイミングに応じて、シフトするデータ経路が切り替わるシフトレジスタが構成される。
【０１１３】
図１２、図１３はサブサンプリングモードが４：４：４の場合の図１１のサブサンプリング書き込み制御部１１０の動作を示すタイミング図である。時間軸は図１２から図１３にかけて連続しているものとする。タイミング図中において、データ信号の枠内の数字はその画素の位置を表す。
【０１１４】
サブサンプリングモードが４：４：４の場合は、バッファメモリ上に１ＭＣＵの画像としてＹ,Ｃｂ，Ｃｒを形成する必要があり、１ブロックサイズ８×８画素とする１組のＹ,Ｃｂ，Ｃｒデータが入力される。
【０１１５】
符号化スタート信号ＥＮＣ＿ＳＴの立ち上がり後、データ入力ＳＢＩＤに有効データが入力するとデータ有効信号ＤＥＮがＨｉｇｈアクティブ状態となり、データカウンタは１ＭＣＵを形成する入力データ数である４８ワード周期でカウントしカウンタ値ＤＡを生成する。データ制御部８０７はサブサンプリングモードが４：４：４場合はデータ選択信号ＰＸＣＮＴを０ｘ０に固定する。
【０１１６】
図１４に、ＰＸＣＮＴを０ｘ０に固定した時に形成されるデータ経路及びシフトレジスタの構成を示す。
【０１１７】
データ選択部８０３の選択器ＭＰＸ１から８は各入力端子Ｙ０を選択するため、データ入力ＳＢＩＤ［３１：０］を４画素の信号に分解したデータであるＨ４＿１Ｄ,Ｈ４＿２Ｄ,Ｈ４＿３Ｄ,Ｈ４＿４Ｄがシフトレジスタの下位４ワードのＳ１＿１Ｄ，Ｓ１＿２Ｄ，Ｓ１＿３Ｄ，Ｓ１＿４Ｄに入力し，下位４ワードの１クロックシフトした４ワード出力Ｓ２Ｄ１Ｄ，Ｓ２Ｄ２Ｄ，Ｓ２Ｄ３Ｄ，Ｓ２Ｄ４Ｄ，がシフトレジスタの上位４ワードＳ１＿５Ｄ，Ｓ１＿６Ｄ，Ｓ１＿７Ｄ，Ｓ１＿８Ｄに入力する構成となり、４ワード入力２クロックシフトのシフトレジスタが１系統できる構成となる。
【０１１８】
図１２，図１３に示すＳＷＤ［３１：０］のデータがＳＷＤ［６４：３２］のデータにシフトし、Ｗで示したタイミングで書き込みデータが揃うため、メモリ制御部８０８は前記Ｗでしめしたタイミングでライトイネーブル信号ＳＷＥ１Ｘ［６３：０］の全ビットをＬｏｗ書き込み有効としバッファメモリＡ上のＹ，Ｃｂ，Ｃｒのそれぞれの領域に書き込む。
【０１１９】
以上の様にバッファメモリＡとバッファメモリＢに１ＭＣＵ分の書き込み処理を交互に行い、バッファメモリＡの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ１をＨｉｇｈアクティブに、またバッファメモリＢの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ２をＨｉｇｈアクティブにする。
【０１２０】
図１５〜図１８はサブサンプリングモードが４：２：２の場合のサブサンプリング書き込み制御部１１０（図１１）の動作を示すタイミング図である。なお、時間軸は図１５から図１６に掛けて連続し、図１７から図１８に掛けて連続するものとする。タイミング図中において、データ信号の枠内の数字はその画素の位置を、また＋記号は２つの画素を加算平均したデータで有る事を表している。
【０１２１】
サブサンプリングモードが４：２：２の場合は、バッファメモリ上に１ＭＣＵの画像としてＹ１，Ｙ２,Ｃｂ，Ｃｒを形成する必要があり、１ブロックサイズ８×８画素とする水平方向に隣接する２組のＹ，Ｃｂ，Ｃｒデータが入力される。
【０１２２】
符号化スタート信号ＥＣＢＣＳＴの立ち上がり後、データ入力ＳＢＩＤに有効データが入力するとデータ有効信号ＤＥＮがアクティブ状態となり、データカウンタは１ＭＣＵを形成する入力データ数である９６ワード周期でカウントしカウンタ値ＤＡを生成する。
【０１２３】
データ制御部８０７はサブサンプリングモードが４：２：２場合はデータ選択信号ＰＸＣＮＴを入力データ色がＹの時は０ｘ０とし、Ｃｂ,Ｃｒの時は０ｘ２とする。
【０１２４】
データ選択信号ＰＸＣＮＴを０ｘ０とした場合のデータ経路及びシフトレジスタの構成は前記の第１１図に示す構成となり、ＳＷＤ［３１：０］のデータがＳＷＤ［６４：３２］のデータにシフトし、Ｗで示したタイミングで書き込みデータが揃うため、メモリ制御部８０８は前記Ｗで示したタイミングでライトイネーブル信号ＳＷＥ１Ｘ［６３：０］の全ビットをＬｏｗ書き込み有効とし、バッファメモリＡに８ワード書き込む。
【０１２５】
図１９にデータ選択信号ＰＸＣＮＴを０ｘ２とした時に形成されるデータ経路及びシフトレジスタの構成を示す。
【０１２６】
データ選択部８０３の選択器ＭＰＸ１から８は各入力端子Ｙ２を選択するため、データ入力ＳＢＩＤ［３１：０］を水平方向サンプリング部８０１で第１バイトと第２バイトの加算平均したＨ２＿１Ｄと、第３バイトと第４バイトの加算平均したＨ２＿２Ｄとに変換し、Ｈ２＿１Ｄはシフトレジスタの第１ワードＳ１＿１Ｄと第５ワードＳ１＿５Ｄに，またＨ２＿２Ｄは第２ワードＳ１＿２Ｄと第６ワードＳ１＿６Ｄに入力し、第１ワードと第２ワードを１クロックシフトした出力データＳ２Ｄ１ＤとＳ２Ｄ２Ｄをシフトレジスタの第３ワードＳ１＿３Ｄ、第４ワードＳ１＿４Ｄに入力し、第５ワードＳ１＿５Ｄと第６ワードＳ１＿６Ｄを１クロックシフトした出力データＳ２Ｄ５ＤとＳ２Ｄ６Ｄをシフトレジスタの第７ワードＳ１＿７Ｄ、第８ワードＳ１＿８Ｄに入力し、２ワード入力２クロックシフトのシフトレジスタが２系統できる構成となる。
【０１２７】
図１５〜図１８でデータ選択信号ＰＸＣＮＴを０ｘ２とするタイミングでは、ＳＷＤ［４７：３２］のデータがＳＷＤ［６３：４８］のデータにシフトし、またＳＷＤ［１５：０］のデータがＳＷＤ［３１：１６］のデータにシフトし、Ｗで示したタイミングで書き込みデータが揃う。この２組のシフトレジスタの入力は同一データであるため、ＳＷＤ［６３：３２］とＳＷＤ［３１：０］は同一データ値となるが、Ｃｂ１、Ｃｒ１データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［６３：３２］をＬｏｗ書き込み有効とし、ＳＷＥ１Ｘ［３１：０］はＨｉｇｈ書き込み無効とし、またＣｂ２、Ｃｒ２データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［３１：０］をＬｏｗ書き込み有効（Ｌｏｗアクティブ）とし、ＳＷＥ１Ｘ［６３：３２］はＨｉｇｈ書き込み無効とする。
【０１２８】
水平方向に１／２間引かれたＣｂ１、Ｃｒ１データは間引き処理後に合成される８×８画素ブロックデータの左側４画素に配置されるように書き込みデータ８バイト中の上位４バイトに書き込むものとし、また水平方向に１／２間引かれたＣｂ２、Ｃｒ２データは合成される８×８画素ブロックデータの右側４画素に配置されるように書き込みデータ８バイト中の下位４バイトに書き込むものとし、バッファメモリのＣｂ、Ｃｒ領域に書き込まれる。
【０１２９】
以上の様にバッファメモリＡとバッファメモリＢに１ＭＣＵの書き込み処理を交互に行い、バッファメモリＡの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ１をＨｉｇｈアクティブに、またバッファメモリＢの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ２をＨｉｇｈアクティブにする。
【０１３０】
図２０〜図２３はサブサンプリングモードが４：１：１の場合のサブサンプリング書き込み制御部１１０（図１１）の動作を示すタイミング図である。なお、時間軸は図２０から図２１に掛けて連続し、図２２から図２３に掛けて連続するものとする。
【０１３１】
サブサンプリングモードが４：１：１の場合は、バッファメモリ上に１ＭＣＵの画像としてＹ１，Ｙ２，Ｙ３，Ｙ４，Ｃｂ，Ｃｒを形成する必要があり、１ブロックサイズ８×８画素とし、水平方向に隣接する４組のＹ，Ｃｂ，Ｃｒデータが入力される。
【０１３２】
符号化スタート信号ＥＣＢＣＳＴの立ち上がり後、データ入力ＳＢＩＤに有効データが入力するとデータ有効信号ＤＥＮがアクティブ状態となり、データカウンタは１ＭＣＵを形成する入力データ数である１９２ワード周期でカウントしカウンタ値ＤＡを生成する。
【０１３３】
データ制御部８０７はサブサンプリングモードが４：１：１場合は、データ選択信号ＰＸＣＮＴを入力データ色がＹの時は０ｘ０とし、Ｃｂ,Ｃｒの時は０ｘ３とする。
【０１３４】
データ選択信号ＰＸＣＮＴを０ｘ０とした場合のデータ経路及びシフトレジスタの構成は前記の図１４に示す構成となり、ＳＷＤ［３１：０］の４バイトデータがＳＷＤ［６４：３２］の４バイトデータにシフトし、Ｗで示したタイミングで書き込みデータが揃うため、メモリ制御部８０８は前記Ｗで示したタイミングでライトイネーブル信号ＳＷＥ１Ｘ［６３：０］の全ビットをＬｏｗ書き込み有効としバッファメモリＡに８ワード書き込む。
【０１３５】
図２４にデータ選択信号ＰＸＣＮＴを０ｘ３とした時に形成されるデータ経路及びシフトレジスタの構成を示す。データ選択部８０３の選択器ＭＰＸ１から８は各入力端子Ｙ３を選択するため、データ入力ＳＢＩＤ［３１：０］を水平方向サンプリング部８０１で第１バイトと第２バイト、第３バイト、第４バイトの加算平均したＨ１＿１Ｄに変換し、Ｈ１＿１Ｄはシフトレジスタの第１ワードＳ１＿１Ｄと第３ワードＳ１＿３Ｄと第５ワードＳ１＿５Ｄと第７ワードＳ１＿７Ｄに入力し、第１ワードを１クロックシフトしたデータＳ２Ｄ１Ｄをシフトレジスタの第２ワードＳ１＿２Ｄに入力し、第３ワードを１クロックシフトしたデータＳ２Ｄ３Ｄをシフトレジスタの第４ワードＳ１＿４Ｄに入力し、第５ワードを１クロックシフトしたデータＳ２Ｄ５Ｄをシフトレジスタの第６ワードＳ１＿６Ｄに入力し、第７ワードを１クロックシフトしたデータＳ２Ｄ７Ｄをシフトレジスタの第８ワードＳ１＿８Ｄに入力し、１ワード入力２クロックシフトのシフトレジスタが４系統できる構成となる。
【０１３６】
図２０〜図２３でデータ選択信号ＰＸＣＮＴを０ｘ３とするタイミングでは、ＳＷＤ［５５：４８］の１バイトデータがＳＷＤ［６３：５６］の１バイトデータにシフトし、ＳＷＤ［３９：３２］の１バイトデータがＳＷＤ［４７：４０］の１バイトデータにシフトし、ＳＷＤ［２３：１６］の１バイトデータがＳＷＤ［３１：２４］の１バイトデータにシフトし、ＳＷＤ［７：０］の１バイトデータがＳＷＤ［１５：８］の１バイトデータにシフトし、Ｗで示したタイミングで書き込みデータが揃う。この４組のシフトレジスタの入力は同一データであるため、ＳＷＤ［６３：４８］とＳＷＤ［４７：３２］、ＳＷＤ［３１：１６］とＳＷＤ［１５：０］は同一データ値となるが、Ｃｂ１、Ｃｒ１データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［６３：４８］をＬｏｗ書き込み有効とし、その他のＳＷＥ１ＸのビットはＨｉｇｈ書き込み無効とし、またＣｂ２、Ｃｒ２データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［４７：３２］をＬｏｗ書き込み有効とし、その他のＳＷＥ１ＸビットはＨｉｇｈ書き込み無効とし、またＣｂ３、Ｃｒ３データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［３１：１６］をＬｏｗ書き込み有効とし、その他のＳＷＥ１ＸビットはＨｉｇｈ書き込み無効とし、またＣｂ４、Ｃｒ４データに対しては、ライトイネーブル信号ＳＷＥ１Ｘ［１５：０］をＬｏｗ書き込み有効とし、その他のＳＷＥ１ＸビットはＨｉｇｈ書き込み無効とする。
【０１３７】
水平方向に１／４間引かれたＣｂ１、Ｃｒ１データは間引き処理後に合成される８×８画素ブロックデータの左側から第１、第２画素に配置されるように書き込みデータ８バイト中の第８バイトと第７バイトに書き込むものとし、また水平方向に１／４間引かれたＣｂ２、Ｃｒ２データは間引き処理後に合成される８×８画素ブロックデータの左側から第３、第４画素に配置されるように書き込みデータ８バイト中の第６バイトと第５バイトに書き込むものとし、また水平方向に１／４間引かれたＣｂ３、Ｃｒ３データは間引き処理後に合成される８×８画素ブロックデータの左側から第５、第６画素に配置されるように書き込みデータ８バイト中の第４バイトと第３バイトに書き込むものとし、また水平方向に１／４間引かれたＣｂ４、Ｃｒ４データは間引き処理後に合成される８×８画素ブロックデータの左側から第７、第８画素に配置されるように書き込みデータ８バイト中の第２バイトと第１バイトに書き込むものとし、バッファメモリのＣｂ、Ｃｒ領域に書き込まれる。
【０１３８】
以上の様にバッファメモリＡとバッファメモリＢに１ＭＣＵの書き込み処理を交互に行い、バッファメモリＡの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ１をＨｉｇｈアクティブに、またバッファメモリＢの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ２をＨｉｇｈアクティブにする。
【０１３９】
図２５、図２６はサブサンプリングモードが４：２：０の場合のサブサンプリング書き込み制御部１１０（図１１）の動作を示すタイミング図である。時間軸は図２５から図２６に掛けて連続するものとする。タイミング図中において、データ信号の枠内の数字はその画素の位置を、また＋記号は２つの画素を加算したデータで有る事を表している。
【０１４０】
サブサンプリングモードが４：２：０の場合は、バッファメモリ上に１ＭＣＵの画像としてＹ１，Ｙ２，Ｙ３，Ｙ４，Ｃｂ，Ｃｒを形成する必要があり、１ブロックサイズ１６×１６画素とし、１組のＹ，Ｃｂ，Ｃｒデータが入力される。
【０１４１】
符号化スタート信号ＥＣＢＣＳＴの立ち上がり後、データ入力ＳＢＩＤに有効データが入力するとデータ有効信号ＤＥＮがアクティブ状態となり、データカウンタは１ＭＣＵを形成する入力データ数である１９２ワード周期でカウントしカウンタ値ＤＡを生成する。
データ制御部８０７はサブサンプリングモードが４：１：１場合はデータ選択信号ＰＸＣＮＴを入力データ色がＹの時は０ｘ０とし、Ｃｂ,Ｃｒの時は０ｘ１とする。
【０１４２】
データ選択信号ＰＸＣＮＴを０ｘ０とした場合のデータ経路及びシフトレジスタの構成は前記の図１４に示す構成となり、ＳＷＤ［３１：０］の４バイトデータがＳＷＤ［６４：３２］の４バイトデータにシフトし、Ｗで示したタイミングで書き込みデータが揃うため、メモリ制御部８０８は前記Ｗで示したタイミングでライトイネーブル信号ＳＷＥ１Ｘ［６３：０］の全ビットをＬｏｗ書き込み有効とし、バッファメモリＡのＹ領域に書き込む。この時メモリ制御部８０８では、入力ブロックサイズ１６×１６画素の画像がバッファメモリ上でブロックサイズ８×８画素の４つのＹ領域に分離されるように、バッファメモリの書き込みアドレスを発生する。
【０１４３】
図２７に入力しデータ選択信号ＰＸＣＮＴを０ｘ１とし、Ｖ２ＳＬＡをＬｏｗとした時に形成されるデータ経路及びシフトレジスタの構成を示す。
【０１４４】
データ選択部８０３の選択器ＭＰＸ９とＭＰＸ１０は各入力端子Ｙ０を選択する、また選択器ＭＰＸ１から８は各入力端子Ｙ１を選択するため、データ入力ＳＢＩＤ［３１：０］を水平方向サンプリング部８０１で第１バイトと第２バイトを加算したＨ２＿１ＳＤと、第３バイト、第４バイトを加算したＨ２＿２ＳＤとに変換する。
【０１４５】
Ｈ２＿１ＳＤはシフトレジスタの第１ワードＳ１＿１Ｄに入力し、第１ワードを１クロックシフトしたデータＳ２Ｄ１Ｄをシフトレジスタの第３ワードＳ１＿３Ｄに入力し、第３ワードを１クロックシフトしたデータＳ２Ｄ３Ｄをシフトレジスタの第５ワードＳ１＿５Ｄに入力し、第５ワードを１クロックシフトしたデータＳ２Ｄ５Ｄをシフトレジスタの第７ワードＳ１＿７Ｄに入力する。
【０１４６】
またＨ２＿２ＳＤはシフトレジスタの第２ワードＳ１＿２Ｄに入力し、第２ワードを１クロックシフトしたデータＳ２Ｄ２Ｄをシフトレジスタの第４ワードＳ１＿４Ｄに入力し、第４ワードを１クロックシフトしたデータＳ２Ｄ４Ｄをシフトレジスタの第６ワードＳ１＿６Ｄに入力し、第６ワードを１クロックシフトしたデータＳ２Ｄ６Ｄをシフトレジスタの第８ワードＳ１＿８Ｄに入力する。２ワード入力４クロックシフトのシフトレジスタが１系統できる構成となる。
【０１４７】
また前記Ｈ２＿１ＳＤとＨ２＿２ＳＤは２バイトの加算値である為、９ビットのデータ幅を持つので、サブサンプリングモードが４：２：０で使用するデータ選択部８０３とシフトレジスタのデータ経路のデータ幅は９ビットとしている。
【０１４８】
図２８にデータ選択信号ＰＸＣＮＴを０ｘ１とし、Ｖ２ＳＬＡをＨｉｇｈとした時に形成されるデータ経路及びシフトレジスタの構成を示す。
【０１４９】
データ選択部８０３の選択器ＭＰＸ９とＭＰＸ１０は各入力端子のＹ１を選択する、また選択器ＭＰＸ１から８は各入力端子Ｙ１を選択するため、データ入力ＳＢＩＤ［３１：０］を水平方向サンプリング部８０１で第１バイトと第２バイトを加算したＨ２＿１ＳＤと、第３バイト、第４バイトを加算したＨ２＿２ＳＤに変換し垂直方向サンプリング部８０２に入力する。一方、シフトレジスタの第７ワード出力Ｓ２Ｄ７Ｄは垂直方向サンプリング部８０２に入力されて、前記Ｈ２＿１ＳＤと加算し１／４処理されＨ２Ｖ２＿１Ｄへ変換される。
【０１５０】
同様にシフトレジスタの第８ワード出力Ｓ２Ｄ８Ｄは垂直方向サンプリング部８０２に入力されて、前記Ｈ２＿２ＳＤと加算し１／４処理されＨ２Ｖ２＿２Ｄへ変換される。
【０１５１】
前記Ｈ２Ｖ２＿１Ｄはシフトレジスタの第１ワードＳ１＿１Ｄに入力し、第１ワードを１クロックシフトしたデータＳ２Ｄ１Ｄをシフトレジスタの第３ワードＳ１＿３Ｄに入力し、第３ワードを１クロックシフトしたデータＳ２Ｄ３Ｄをシフトレジスタの第５ワードＳ１＿５Ｄに入力し、第５ワードを１クロックシフトしたデータＳ２Ｄ５Ｄをシフトレジスタの第７ワードＳ１＿７Ｄに入力し、第７ワードを１クロックシフトしたデータＳ２Ｄ７Ｄとする。
【０１５２】
また前記Ｈ２Ｖ２＿２ＳＤはシフトレジスタの第２ワードＳ１＿２Ｄに入力し、第２ワードを１クロックシフトしたデータＳ２Ｄ２Ｄをシフトレジスタの第４ワードＳ１＿４Ｄに入力し、第４ワードを１クロックシフトしたデータＳ２Ｄ４Ｄをシフトレジスタの第６ワードＳ１＿６Ｄに入力し、第６ワードを１クロックシフトしたデータＳ２Ｄ６Ｄをシフトレジスタの第８ワードＳ１＿８Ｄに入力し、第８ワードを１クロックシフトしたデータＳ２Ｄ８Ｄとする。
【０１５３】
図２５、図２６のＣｂ１、Ｃｒ１が入力するタイミングではＰＸＣＮＴを０ｘ１とし、最初の４ワードの入力時にＶ２ＳＬＡをＬｏｗとし次の４ワードの入力時にＶ２ＳＬＡをＨｉｇｈとし８ワード周期で繰り返す。
【０１５４】
Ｖ２ＳＬＡがＬｏｗの期間中は、水平方向サンプリング部出力の水平方向２画素の加算値Ｈ２＿１ＳＤとＨ２＿２ＳＤがシフトレジスタでシフトさる。
【０１５５】
その次のＶ２ＳＬＡがＨｉｇｈの期間中は、前記Ｖ２ＳＬＡがＬｏｗの期間中にシフトレジスタに入力した水平方向２画素の加算データがシフトレジスタの第８ワード出力Ｓ２Ｄ８Ｄと第７ワード出力Ｓ２Ｄ７Ｄより垂直方向サンプリング部８０２へ入力し、また新たに入力したデータの水平方向２画素の加算値Ｈ２＿１ＳＤとＨ２＿２ＳＤも垂直方向サンプリング部８０２へ入力し、垂直方向サンプリング部８０２でＳ２Ｄ８ＤとＨ２＿２ＳＤを加算し１／４演算しＨ２Ｖ２＿２Ｄとし、Ｓ２Ｄ７ＤとＨ２＿１ＳＤを加算し１／４演算しＨ２Ｖ２＿１Ｄに変換する。
【０１５６】
この一連の処理により、水平方向２画素×垂直方向２画素の全４画素の加算平均値を求めている。
【０１５７】
前記４画素の加算平均値データはＶ２ＳＬＡがＨｉｇｈの期間中に順次シフトされて、Ｗで示したタイミングで書き込みデータが揃うため、メモリ制御部８０８は前記Ｗで示したタイミングでライトイネーブル信号ＳＷＥ１Ｘ［６３：０］の全ビットをＬｏｗ書き込み有効としバッファメモリＡ上のＣｂ、Ｃｒのそれぞれの領域に書き込む。
【０１５８】
以上の様にバッファメモリＡとバッファメモリＢに１ＭＣＵの書き込み処理を交互に行い、バッファメモリＡの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ１をＨｉｇｈアクティブに、またバッファメモリＢの書き込み終了時にバッファ書き込み終了信号ＷＤＯＮ２をＨｉｇｈアクティブにする。
【０１５９】
この様にサブサンプリングモードで決まるタイミングで水平方向にサンプリングを行う水平方向サンプリング部８０１と、前記水平方向サンプリングされた画像データと１ライン前の前記水平方向サンプリングされた画像データから垂直方向にサンプリングを行う垂直方向サンプリング部８０２と、サブサンプリングモードに応じたタイミングで前記水平方向サンプリングされた画像データと前記垂直方向サンプリングされた画像データを切り替えて入力し、サブサンプリングモードで決まるタイミングでデータ経路を切り替えるシフトレジスタ部８０４とを用いる事により、バッファメモリに書き込む前に水平方向と垂直方向のサンプリングデータを生成する事が可能となる。
【０１６０】
その為、サブサンプリングモードの設定で水平方向と垂直方向サンプリングが設定された場合でも、事前にフレームメモリ上で間引き変換する必要が無くなり、高速処理することができる。
【０１６１】
また、サンプリングは単純に間引くのでは無く、対象画素を加算平均処理するのでモアレ発生などの画質劣化を押さえる事が可能である。
【０１６２】
図２９に図１に示す８×８画素直交変換部１１５のブロック構成を示す。
【０１６３】
バッファメモリ読み出し制御部１１３（図１）から出力された８画素の６４ｂｉｔデータＢＥＩＤ［６３：０］を直接入力し、８画素のデータを８点のＤＣＴ係数に変換する第１の１次元−ＤＣＴ（離散的コサイン変換）部２１０１を設けている。
【０１６４】
また、前記１次元−ＤＣＴ部２１０１の出力をシフトしながらデータ保持する８個のＤＦＦレジスタ２１０４〜２１１１と、前記ＤＦＦレジスタの出力をＬＯＡＤ信号のタイミングでパラレル入力しシリアル変換して順次シフト出力する８個のパラレル入力シリアル出力型シフトレジスタ２１１２〜２１１９からなるデータシフト部２１０２を設けている。
【０１６５】
また、前記パラレル入力シリアル出力型シフトレジスタ２１１２〜２１１９から出力された８点のデータから８点のＤＣＴ係数に変換する第２の１次元−ＤＣＴ（離散的コサイン変換）部２１０３と前記パラレル入力シリアル出力型シフトレジスタ２１１２〜２１１９のＬＯＡＤタイミングを制御するタイミング制御部２１２０を設けている。
【０１６６】
図３０に図１に示す８×８画素直交変換部１１５のタイミング図を示す。バッファメモリ読み出し制御部１１３から出力された８画素の６４ｂｉｔデータＢＥＩＤ［６３：０］は、第１の１次元−ＤＣＴ部２１０１でＦ０＿０からＦ０＿７信号に８点のＤＣＴ係数に変換され、変換されたＤＣＴ係数はＤＦＦレジスタ２１０４〜２１１１を順次シフトし、ＢＥＩＤ［６３：０］に８ワードのデータが入力し終わったタイミングで、８個のＤＦＦレジスタ２１０４〜２１１１の出力に前記８ワードの入力データに対応した８ワードＤＣＴ系数が揃う、そのタイミングでタイミング制御部２１２０はＬＯＡＤ信号をＨｉｇｈアクティブとし、そのＬＯＡＤ信号のタイミング応じてパラレル入力シリアル出力型シフトレジスタ２１１２〜２１１９は前記８ワードＤＣＴ系数を取り込み、また次のクロックから取り込んだデータを順次シフトしながらＤＶ０〜７信号へ出力する。
【０１６７】
ＤＶ０〜７信号のデータは、第２の１次元−ＤＣＴ部２１０３でＦＶＨ０＿０からＦＶＨ０＿７信号の８点の２次元ＤＣＴ係数データに変換され、順次８ワードの２次元ＤＣＴ係数データを出力する。
【０１６８】
このように１次元−ＤＣＴ（離散的コサイン変換）を水平方向と垂直にかける事により、効率の良い２次元のＤＣＴ変換が可能で有る事は、一般に知られている事で、本例では最小８クロック周期で８×８画素の２次元ＤＣＴ変換を実現した。
【０１６９】
しかし、いくら高速の２次元のＤＣＴ変換が実現できても、２次元のＤＣＴ変換部へのデータ入力が高速に処理できなければ、画像符号化装置全体の処理を高速に行う事はできない。
【０１７０】
本実施の形態では、バッファメモリのビット幅をブロック符号化部内の直交変換部を構成する１次元ＤＣＴ演算部の入力データビット数と同一にすることで、バッファメモリからデータ構成を変更することなく、ブロック符号化部内の直交変換部を構成する１次元ＤＣＴ演算部へ直接データ入力する事が可能で、また１次元ＤＣＴを用いた直交変換処理に同期してデータを入力する事が可能となり、高速の画像符号化処理を実現できる。
【０１７１】
また、バッファメモリのビット幅をブロック符号化部内の直交変換部を構成する１次元ＤＣＴ演算部の入力データビット数と同一とした為、サブサンプリングによって生成した画像データをバッファメモリ１ワードの中の特定ビット位置に書き込む必要が生じ、通常メモリを用いた場合は、データの読み出しとビットの入れ替え再書き込み（リードモディファイライト）が発生し、書き込み速度が落ちてしまうと言う弊害が発生した。
【０１７２】
しかし、前述の様に部分書き込みが可能なパーシャルライト型バッファメモリを用いて書き込む特定ビット位置に応じてライトイネーブル信号を制御することにより、リードモディファイライトする事無く、最小時間でバッファメモリへの書き込みを可能とした。これによって、高速の画像符号化処理を実現できる。
【０１７３】
図３１に上述した本画像符号化装置を用いたディジタル複合機のブロック図を示す。
【０１７４】
使用者がディジタル複合機の機能と動作開始を設定する為のパネル部２３０２と、前記パネル部の設定により各機能モジュールの機能を設定し動作を制御するホストＣＰＵ２３０１とを設ける。
【０１７５】
また、画像データを読み取るイメージスキャナ部２３０３と、前記イメージスキャナ部２３０３で読み取った画像データを符号化する本画像符号化装置を用いた画像符号化部２３０７と前記画像符号化部２３０７で符号化した符号データを格納するデータ記憶部２３０８を設ける。
【０１７６】
また、符号データを復号化する画像復号化部２３０４と、ネットワークからデータを入出力する為のネットワークインターフェース部２３０５と、画像を印字する為のプリンタ部２３０６とを設けている。
【０１７７】
前記パネル部２３０２の設定が、ネットワークスキャナモードとなっていた場合は、ホストＣＰＵ２３０１は画像符号化装置の符号化手段としてＪＰＥＧエンコーダ１１４を選択し画像符号化装置でＪＰＥＧ符号化を行い、一旦、データ記憶部２３０８に前記符号化したＪＰＥＧ符号データを格納した後、前記ネットワークインターフェース部２３０５を経由してネットワークへ出力する。
【０１７８】
このように、ネットワーク経由で外部に符号データを出力する場合は、ＪＦＩＦ（ＪＰＥＧ  Ｆｉｌｅ  ｉｎｔｅｒｃｈｅｎｇｅ  Ｆｏｒｍａｔ）で決められている標準規格のＪＰＥＧエンコーダ１１４を使用する。
【０１７９】
一方、前記パネル部２３０２の設定が、コピーモードとなっていた場合は、ホストＣＰＵ２３０１は画像符号化装置の符号化手段としてブロック符号エンコーダ１１８を選択し、画像符号化装置でブロック符号エンコードを行い、一旦、データ記憶部２３０８に前記符号化した符号データを格納した後、前記格納した符号データをホストＣＰＵ２３０１からの制御により、前記画像復号化部２３０４へ送り画像データに復元し、前記画像データを前記プリンタ部２３０６へ送りプリントする。
【０１８０】
このようにコピー処理する場合の符号化処理は、標準化された符号処理を用いる必要はなく、例えば符号化部に算術符号処理を用いて圧縮率を高め、また高速の直交変換部を用いて高速処理を実現した独自モードのブロック符号エンコーダ１１８を使用する事ができる。
【０１８１】
このように本画像処理装置を用いたディジタル複合機では、回路規模が小さく高速な処理を実現し、さらに目的に応じて符号化処理を切り替え、より高速で圧縮効率の良い画像データ処理を実現する事ができる。
【産業上の利用可能性】
【０１８２】
ラインメモリを必要とせず、かつ高速にラスタ形式からブロックインターリーブ形式に変換する事を可能とし、またサブサンプリングモードで指定された間引き処理を、ラスタ形式からブロックインターリーブ形式への変換途中で高速に行う事が可能で、最小符号化ユニット（ＭＣＵ）の色成分順が簡単に変更可能であり、ブロック符号エンコーダ１１８に高速でブロックデータを入力がすることができ、必要メモリサイズが少なくＬＳＩ化に適し、画像符号化処理速度を高めることができる点で有用である。
【図面の簡単な説明】
【０１８３】
【図１】本発明の一実施の形態に係る画像符合化装置の構成を示すブロック図
【図２】４つのサブサンプリングモードと最小符号化ユニット（ＭＣＵ）を構成するブロックデータの関係を示す図
【図３】サブサンプリングモードが４：４：４、４：２：２、４：１：１の場合のフレームメモリに格納されている画像データと第１のブロックサイズの例を示した図
【図４】サブサンプリングモードが４：２：０の場合のフレームメモリに格納されている画像データと第１のブロックサイズの例を示した図
【図５】サブサンプリングモードが４：４：４の場合の前半部のタイミング図
【図６】サブサンプリングモードが４：４：４の場合の後半部のタイミング図
【図７】サブサンプリングモードが４：２：２の場合の前半部のタイミング図
【図８】サブサンプリングモードが４：２：２の場合の後半部のタイミング図
【図９】サブサンプリングモードが４：２：０の場合の前半部のタイミング図
【図１０】サブサンプリングモードが４：２：０の場合の後半部のタイミング図
【図１１】図１に示すサブサンプリング書き込み制御部の構成を示すブロック図
【図１２】サブサンプリングモードが４：４：４の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図１３】サブサンプリングモードが４：４：４の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図１４】データ選択信号ＰＸＣＮＴを０ｘ０とした時に形成されるサブサンプリング書き込み制御部のデータ経路図
【図１５】サブサンプリングモードが４：２：２の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図１６】サブサンプリングモードが４：２：２の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図１７】サブサンプリングモードが４：２：２の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図１８】サブサンプリングモードが４：２：２の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図１９】データ選択信号ＰＸＣＮＴを０ｘ２とした時に形成される、サブサンプリング書き込み制御部のデータ経路図
【図２０】サブサンプリングモードが４：１：１の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図２１】サブサンプリングモードが４：１：１の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図２２】サブサンプリングモードが４：１：１の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図２３】サブサンプリングモードが４：１：１の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図２４】データ選択信号ＰＸＣＮＴを０ｘ３とした時に形成される、サブサンプリング書き込み制御部のデータ経路図
【図２５】サブサンプリングモードが４：２：０の場合のサブサンプリング書き込み制御部の前半部のタイミング図
【図２６】サブサンプリングモードが４：２：０の場合のサブサンプリング書き込み制御部の後半部のタイミング図
【図２７】データ選択信号ＰＸＣＮＴを０ｘ１とし、Ｖ２ＳＬＡをＬｏｗとした時に形成されるサブサンプリング書き込み制御部のデータ経路図
【図２８】データ選択信号ＰＸＣＮＴを０ｘ１とし、Ｖ２ＳＬＡをＨｉｇｈとした時に形成されるサブサンプリング書き込み制御部のデータ経路図
【図２９】図１に示す８×８画素直交変換部のブロック構成図
【図３０】図１に示す８×８画素直交変換部のタイミング図
【図３１】本画像符号化装置を用いたディジタル複合機の構成を示すブロック図
【符号の説明】
【０１８４】
１００  画像符合化装置
１０１  データ入出力制御部
１０２  汎用ワークメモリ
１０３  フレームメモリ
１０４  コードメモリ
１０５  ブロックメモリ書き込み制御部
１０６  ブロックメモリＡ
１０７  ブロックメモリＢ
１０８  ブロックメモリＣ
１０９  ブロックメモリ読み出し制御部
１１０  サブサンプリング書き込み制御部
１１１  パーシャルライト型バッファメモリＡ
１１２  パーシャルライト型バッファメモリＢ
１１３  バッファメモリ読み出し制御部
１１４  ＪＰＥＧエンコーダ
１１８  ブロック符号エンコーダ
１１９  イメージバス
１２０  ＤＭＡコントローラＡ
１２１  ＤＭＡコントローラＢ
１２２  ＤＭＡコントローラＣ
１２４  ローカル制御ＣＰＵ
１２５  制御バス
１２６  外部バス制御部
８０１  水平方向サンプリング部
８０２  垂直方向サンプリング部
８０３  データ選択部
８０４  シフトレジスタ部
８０７  データ制御部
８０８  メモリ制御部
【図１】
2006203705.tif 000003
【図２】
2006203705.tif 000004
【図３】
2006203705.tif 000005
【図４】
2006203705.tif 000006
【図５】
2006203705.tif 000007
【図６】
2006203705.tif 000008
【図７】
2006203705.tif 000009
【図８】
2006203705.tif 000010
【図９】
2006203705.tif 000011
【図１０】
2006203705.tif 000012
【図１１】
2006203705.tif 000013
【図１２】
2006203705.tif 000014
【図１３】
2006203705.tif 000015
【図１４】
2006203705.tif 000016
【図１５】
2006203705.tif 000017
【図１６】
2006203705.tif 000018
【図１７】
2006203705.tif 000019
【図１８】
2006203705.tif 000020
【図１９】
2006203705.tif 000021
【図２０】
2006203705.tif 000022
【図２１】
2006203705.tif 000023
【図２２】
2006203705.tif 000024
【図２３】
2006203705.tif 000025
【図２４】
2006203705.tif 000026
【図２５】
2006203705.tif 000027
【図２６】
2006203705.tif 000028
【図２７】
2006203705.tif 000029
【図２８】
2006203705.tif 000030
【図２９】
2006203705.tif 000031
【図３０】
2006203705.tif 000032
【図３１】
2006203705.tif 000033