(57)【要約】【課題】領域毎に通常状態と低消費電力状態との切り替えが行われる複数の領域を有する記憶領域に符号化された画像データを格納する際、動的に１つの領域を通常状態に切り替えることを可能にした画像処理装置を提供する。【解決手段】領域毎に通常状態と低消費電力状態との切り替えが行われ、格納した画像データを低消費電力状態においても保持する複数の領域を有するデータ格納部に符号化された画像データを格納する際、ＳＲＡＭ制御部が、複数の領域の内から符号化された画像データを格納する１つの領域を選定し、その１つの領域を低消費電力状態から通常状態へ切り替えて符号化された画像データを格納し、格納後にその領域を通常状態から低消費電力状態へ切り替える。【選択図】図２
2020006605.tif 000002
【特許請求の範囲】
【請求項１】
符号化された画像データを格納し、領域毎に通常状態と低消費電力状態との切り替えが行われ、格納した前記画像データを前記低消費電力状態においても保持する複数の領域を有する格納手段と、
前記複数の領域の内から前記符号化された画像データを格納する１つの領域を選定し、前記選定した１つの領域を前記低消費電力状態から前記通常状態へ切り替えて前記符号化された画像データを該領域に格納し、格納後に前記選定した１つの領域を前記通常状態から前記低消費電力状態へ切り替える制御手段とを有することを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記領域の空き容量を算出し、算出した前記領域の空き容量と、前記格納手段に格納する前記符号化された画像データの符号量とに基づいて、前記符号化された画像データを格納する１つの領域を選定することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記制御手段は、前記格納手段に格納する前記符号化された画像データの符号量が、前記複数の領域の内の第１の領域の空き容量以下である場合には前記第１の領域を選定し、前記第１の領域の空き容量より大きい場合には前記複数の領域の内から前記第１の領域とは異なる第２の領域を選定することを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記制御手段は、所定の数の前記符号化された画像データを互いに異なる組み合わせで組み合わせたときの各組み合わせについての符号量の合計を算出し、算出した前記符号量の合計が前記選定した１つの領域の空き容量以下である組み合わせの内から前記符号量の合計が最大となる組み合わせで前記符号化された画像データを前記選定した１つの領域に格納することを特徴とする請求項２記載の画像処理装置。
【請求項５】
前記制御手段は、算出した前記符号量の合計が前記選定した１つの領域の空き容量以下である組み合わせがない場合、前記所定の数から１を減じた数の組み合わせで符号量の合計の算出を行うことを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記通常状態と前記低消費電力状態との切り替えが行われる前記領域毎に、前記格納手段における前記領域の情報を管理する管理手段を有することを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
前記管理手段は、前記領域毎に当該領域の開始アドレス及び終了アドレスを保持することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記制御手段は、符号化処理に係るタイル毎に前記符号化された画像データを格納して各タイルの書き込みアドレスを保持し、前記格納手段に格納した前記符号化された画像データを読み出す際に、前記保持した書き込みアドレスに従って、前記複数の領域の内の１つの領域を前記低消費電力状態から前記通常状態へ切り替えて前記符号化された画像データを読み出し、読み出し後に前記１つの領域を前記通常状態から前記低消費電力状態へ切り替えることを特徴とする請求項１〜７の何れか１項に記載の画像処理装置。
【請求項９】
前記制御手段は、前記格納手段の領域を前記通常状態から前記低消費電力状態へ切り替えるとき、前記領域に対して供給されるクロック信号を停止させ、所定の時間が経過した後に、前記領域のアクセスに係る回路への電源供給を遮断させることを特徴とする請求項１〜８の何れか１項に記載の画像処理装置。
【請求項１０】
前記画像データを符号化するとともに符号化した前記画像データの符号量を算出し、符号化した前記画像データ及び前記符号量を前記制御手段に供給する符号化手段を有することを特徴とする請求項１〜９の何れか１項に記載の画像処理装置。
【請求項１１】
符号化された画像データを格納し、領域毎に通常状態と低消費電力状態との切り替えが行われ、格納した前記画像データを前記低消費電力状態においても保持する複数の領域を有する格納手段を有する画像処理装置の制御方法であって、
前記複数の領域の内から前記符号化された画像データを格納する１つの領域を選定する工程と、
前記選定した１つの領域を前記低消費電力状態から前記通常状態へ切り替えて前記符号化された画像データを該領域に格納し、格納後に前記選定した１つの領域を前記通常状態から前記低消費電力状態へ切り替える工程とを有することを特徴とする画像処理装置の制御方法。
【請求項１２】
符号化された画像データを格納し、領域毎に通常状態と低消費電力状態との切り替えが行われ、格納した前記画像データを前記低消費電力状態においても保持する複数の領域を有する格納手段を有する画像処理装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記複数の領域の内から前記符号化された画像データを格納する１つの領域を選定するステップと、
前記選定した１つの領域を前記低消費電力状態から前記通常状態へ切り替えて前記符号化された画像データを該領域に格納し、格納後に前記選定した１つの領域を前記通常状態から前記低消費電力状態へ切り替えるステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ＲＡＭ（Random Access Memory）において、メモリアレイに記憶された記憶情報を保持しながら周辺回路への電源供給を遮断し、低消費電力状態にして消費電力を低減するレジュームスタンバイモードと呼ばれる技術がある。以下、レジュームスタンバイモードを「ＲＳモード」とも称する。レジュームスタンバイモードを有するＳＲＡＭ（Static RAM）は、大容量化が進むメモリや、メモリを有する半導体集積回路での消費電力を削減する技術として期待されている。
【０００３】
ＲＳモードを有するＳＲＡＭは、低消費電力状態であるＲＳモードから通常状態である通常モードに同時に復帰させる領域が大きくなると、復帰時の突入電流が増大し、低電圧動作における動作保証が困難になるという問題がある。この問題を解決するために、ＲＳモードを有するＳＲＡＭを特定の容量以下のグループ単位に分割して、各グループをデイジーチェーン接続する技術が提案されている（特許文献１参照）。デイジーチェーン接続して各グループに対するＲＳモードから通常モードに復帰させるタイミングを遅延させることで、複数のグループが同時に通常モードに復帰することを防ぎ、突入電流におけるピーク電流を低減させている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２５８４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、領域毎に通常状態と低消費電力状態との切り替えが行われる複数の領域を有する記憶領域に符号化された画像データを格納する際、動的に１つの領域を通常状態に切り替えることを可能にした画像処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、符号化された画像データを格納し、領域毎に通常状態と低消費電力状態との切り替えが行われ、格納した前記画像データを前記低消費電力状態においても保持する複数の領域を有する格納手段と、前記複数の領域の内から前記符号化された画像データを格納する１つの領域を選定し、前記選定した１つの領域を前記低消費電力状態から前記通常状態へ切り替えて前記符号化された画像データを該領域に格納し、格納後に前記選定した１つの領域を前記通常状態から前記低消費電力状態へ切り替える制御手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、符号化された画像データを格納する際、１つの領域が通常状態に切り替わるように制御し、同時に複数の領域が通常状態で動作しないように制御でき、低消費電力状態の領域が増加し消費電力を低減させることができる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態における画像処理装置の構成例を示す図である。
【図２】第１の実施形態における出力バッファ制御部の構成例を示す図である。
【図３】第１の実施形態におけるＳＲＡＭの構成例を示す図である。
【図４】第１の実施形態におけるモード切り替え制御の例を示すタイミングチャートである。
【図５】第１の実施形態におけるアドレス制御を説明するフローチャートである。
【図６】第１の実施形態におけるＳＲＡＭグループ管理テーブルの例を示す図である。
【図７】第１の実施形態における符号データの格納例を説明する図である。
【図８】第２の実施形態におけるアドレス制御を説明するフローチャートである。
【図９】第２の実施形態における格納タイル選定処理を説明するフローチャートである。
【図１０】第２の実施形態における符号データの格納例を説明する図である。
【図１１】格納される画像データとＳＲＡＭグループのアドレス領域の関係の一例を説明する図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態を図面に基づいて説明する。
【００１０】
本実施形態における画像処理装置では、画像データの格納手段（記憶領域）としてレジュームスタンバイモード（ＲＳモード）を有するＲＡＭを使用する。以下の例では、ＲＳモードを有するＳＲＡＭ（レジュームＳＲＡＭ）を使用することとし、特定の容量以下のグループ単位に分割して、グループ単位（以下、「ＳＲＡＭグループ」とも称する。）で動作モードの切り替え制御を行う。すなわち、ＳＲＡＭグループである特定の容量以下の領域毎に、低消費電力状態であるＲＳモードと通常状態である通常モードとの切り替えを行うことになる。
【００１１】
まず、画像データの格納手段（記憶領域）としてレジュームＳＲＡＭを使用する場合に、一般的に想定される動作モードの制御について、図１１を参照して説明する。図１１は、レジュームＳＲＡＭを画像データの格納手段として使用する場合に、格納される画像データとＳＲＡＭグループのアドレス領域の関係の一例を説明する図である。
【００１２】
画像データ等の比較的大きな容量が必要なデータの格納手段としてレジュームＳＲＡＭを使用する場合、１つのＳＲＡＭグループの容量を超える場合が殆どであるため、複数のＳＲＡＭグループを使用することになる。図１１（ａ）において、ＳＲＡＭグループのアドレス領域１１０１〜１１０４は、レジュームＳＲＡＭのアドレス領域について、突入電流を抑制する特定の容量以下の単位で分割した各ＳＲＡＭグループに対応するアドレス領域である。ＳＲＡＭグループのアドレス領域は、図１１（ａ）に示すように先頭アドレスから連続してアドレス配置されている。図１１（ｂ）は、レジュームＳＲＡＭに格納する画像データ１１１０について、レジュームＳＲＡＭに格納する際に必要となるアドレス領域の大きさを示す模式図である。
【００１３】
図１１（ａ）に示したようなグループ単位にアドレス領域が分割されたレジュームＳＲＡＭに対して、図１１（ｂ）に示した大きさの画像データを格納する際のアドレス配置を図１１（ｃ）に示す。図１１（ｃ）に示すように、画像データ１１１０を格納するために必要となるアドレス領域は、ＳＲＡＭグループのアドレス領域１１０１〜１１０４の各々よりも大きい。そのため、画像データ１１１０を格納するには、ＳＲＡＭグループのアドレス領域１１０１〜１１０３の３つのＳＲＡＭグループが必要になる。
【００１４】
このように複数のＳＲＡＭグループに跨がるアドレス領域についてデータを格納する場合、極力消費電力を抑制するために、アクセスされないＳＲＡＭグループは低消費電力状態であるＲＳモードとなるように制御することが考えられる。例えば、レジュームＳＲＡＭへ画像データを格納する際に、図１１（ｃ）に示すアドレス領域１１２０についてアクセスしている時の、ＳＲＡＭグループのアドレス領域１１０１〜１１０４の動作モードを図１１（ｄ）に示す。アクセスしているアドレス領域１１２０を含むＳＲＡＭグループのアドレス領域１１０２のみが通常モードで動作し、それ以外のＳＲＡＭグループのアドレス領域１１０１、１１０３、１１０４はＲＳモードで動作するように制御される。
【００１５】
ここで、格納する画像データが、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式により符号化されたデータ（以下、符号データ）のように処理結果によってサイズが変わる場合には、以下のような問題がある。例えば、ＪＰＥＧ方式では、画像を固定サイズ（８×８画素）のブロックに分割して、そのブロック単位（ＭＣＵ：Ｍｉｎｉｍｕｍ  Ｃｏｄｅｄ  Ｕｎｉｔ）で処理を行う。
【００１６】
図１１（ｅ）に、システムのデータ転送効率に合わせて、例えば４×４ＭＣＵ単位のブロック（以下、「タイル」とも称す。）毎に、符号データをレジュームＳＲＡＭに格納する例を示す。レジュームＳＲＡＭへ符号データを格納する際は、格納に要する容量が少なくなるように、先頭アドレスから順に各タイルの符号データを詰めて格納するのが一般的である。
【００１７】
しかしながら、符号データのサイズは元画像の特徴により変わるため、各タイルの符号データの格納に必要なアドレス領域は、符号化処理が完了するまで不明である。一方、ＳＲＡＭグループのアドレス領域は、突入電流を抑制する特定の容量以下となるよう予め決定されているものであり、符号データのサイズに合わせて途中で変更することができない。その結果、先頭アドレスから順に各タイルの符号データを格納すると、複数のＳＲＡＭグループに跨がるアドレス領域に格納されるタイル（図１１（ｅ）に示した例では、タイル２、タイルＮ、タイルＭ）が存在することになる。
【００１８】
例えば、図１１（ｅ）に示したタイル２の符号データをレジュームＳＲＡＭに格納する際には、グループ境界１１３０を跨ぐため、ＳＲＡＭグループのアドレス領域１１０２、１１０３の２つの領域について同時に通常モードで動作させる必要がある。つまり、１タイル分の符号データの格納に対して、複数のＳＲＡＭグループのアドレス領域について通常モードで動作させることになり、グループ境界を跨がないタイルと比較して余計に消費電力を費やしてしまう。
【００１９】
そこで、以下に説明する各実施形態では、符号化された画像データを格納する際に、１つのアドレス領域だけを通常状態である通常モードにし、他のアドレス領域は低消費電力状態であるＲＳモードにするように制御する。つまり、符号化された画像データを格納する際に、動的に１つのアドレス領域（ＳＲＡＭグループ）を通常モードで動作させるように制御する。
【００２０】
（第１の実施形態）
本発明の第１の実施形態について説明する。
＜画像処理装置１００＞
図１は、第１の実施形態における画像処理装置１００の構成例を示すブロック図である。なお、本実施形態では、ＪＰＥＧ等の可変長符号化方式の符号化処理を行う場合を例に説明する。画像処理装置１００は、入力ＤＭＡＣ部１０１、入力バッファ制御部１０２、色空間変換部１０３、サブサンプリング部１０４、ＤＣＴ変換部１０５、量子化部１０６、符号化部１０７、出力バッファ制御部１０８、及び出力ＤＭＡＣ部１０９を有する。画像処理装置１００は、例えば図示しないＤＤＲ  ＳＤＲＡＭやハードディスク等の外部の記憶装置より画像データを読み出し、データ処理後の画像データを再度記憶装置へ書き込むハードウェア構成の画像処理装置である。
【００２１】
入力ＤＭＡＣ部１０１は、外部の記憶装置に格納されている元画像データを読み出して、画像処理装置１００へ画像データを入力するためのダイレクトメモリアクセスコントローラ（ＤＭＡＣ）である。なお、本実施形態において、外部の記憶装置とのインターフェースは、例えば主に高性能なシステムのメインバスにて採用されるＡＲＭ社策定のＡｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ（ＡＸＩ）とする。
【００２２】
また、外部の記憶装置に格納されている元画像のデータフォーマットは、ＲＧＢ色空間で表現される、ＲＧＢの各要素についてそれぞれ１画素あたり８ビットの階調で表現されるデータであるとする。画像データの処理単位は、同じようにメモリを介して画像処理を行う他の画像処理モジュールでの処理単位に合わせて、特定の固定サイズ（本実施形態では、例えば３２×３２画素）のブロック（以下、「タイル」とも称す。）単位で処理を行うものとする。
【００２３】
入力ＤＭＡＣ部１０１は、例えばＡＸＩのバス幅が６４ビットであり、バースト長が１６である場合、１回のバス転送あたり１タイル分の画像データを転送する。そして、入力ＤＭＡＣ部１０１は、このバス転送を、後段の入力バッファ制御部１０２のバッファの空き状況を参照して、入力バッファ制御部１０２へ転送可能なタイル数分実行する。
【００２４】
入力バッファ制御部１０２は、入力ＤＭＡＣ部１０１を介して取得した画像データを内部のバッファへ格納する際、及びバッファに格納された画像データを後段の色空間変換部１０３へ出力する際の制御を行う。バッファは、例えばＳＲＡＭ等で構成される。入力バッファ制御部１０２のバッファに格納可能なデータ容量は、画像処理装置１００に要求される速度性能等により予め決められた容量で構成されている。本実施形態では、複数のタイル分に相当する画像データが格納可能な容量とする。
【００２５】
色空間変換部１０３は、ＲＧＢ形式で表現される画像データを、ＹＣｒＣｂ形式、すなわち輝度、赤方向の色相、及び青方向の色相の３要素の画像データに変換する。ＲＧＢ形式からＹＣｒＣｂ形式への変換は、例えば下記に示すような一般的な変換公式に従って行われる。
Ｙ  ＝  ０．２９９Ｒ  ＋０．５８７Ｇ  ＋０．１１４Ｂ  −１２８
Ｃｒ＝−０．１６８７Ｒ−０．３３１３Ｇ＋０．５Ｂ      ＋１２８
Ｃｂ＝  ０．５Ｒ      −０．４１８７Ｇ＋０．０８１３Ｂ＋１２８
【００２６】
サブサンプリング部１０４は、色相の細かな違いは人間が見落としやすいという性質を利用して、圧縮データ削減のために色相情報を間引き処理する。サブサンプリング形式は、４：１：１、４：２：２、４：４：４の３つのサブサンプリング形式を備えており、画像コントラストに合わせて選択可能である。例えば、４：１：１のサブサンプリングでは、４ブロック（１ブロック＝８画素×８画素）の輝度情報に対して、色相情報は赤方向及び青方向ともに１ブロックずつ対応させて、これを一単位（以下、「ＭＣＵ」とも称す。）として処理する。
【００２７】
具体的には、縦横４ブロック（１６×１６画素）の輝度情報に対して、色相情報は縦横ともに１画素毎にデータを取得（間引き）して１ブロック（８×８画素）のデータに見立てて対応付ける。つまり、一単位（ＭＣＵ）について、４つの輝度情報ブロック（左上、右上、左下、右下）、赤方向の色相情報ブロック（縦横とも１画素おきの間引きデータ）、青方向の色相情報ブロック（縦横とも１画素の間引きデータ）の順に６ブロックに分割する。
【００２８】
ＤＣＴ変換部１０５は、サブサンプリング部１０４により６ブロック（１ブロック＝８×８画素）に分割された画像データの各画素の輝度情報及び色相情報について離散コサイン変換（ＤＣＴ変換）を行い、周波数分解する。ＤＣＴ変換部１０５でのＤＣＴ変換により、８×８画素＝６４画素のデータは、６４段階の周波数成分に分解される。周波数が高い成分ほど細かな画素値の変化を表しているが、この高周波成分は実際には、一般の人には識別できない細かい情報であるため、次の量子化部１０６において大抵削除される。
【００２９】
ＤＣＴ変換されたデータも８×８個のブロック状のデータで表現され、左上隅のデータを直流成分（ＤＣ成分）とし、残りの６３個のデータを交流成分（ＡＣ成分）として取り扱う。このブロックにおいて、横方向では右に進むほど、水平方向の空間周波数が高い成分を表し、縦方向では下に進むほど、垂直方向の空間周波数が高い成分を表わすよう構成される。
【００３０】
量子化部１０６は、ＤＣＴ変換部１０５によりＤＣＴ変換された画像データを量子化する処理、すなわち整数で除算した後に端数を切り捨てる処理を行う。量子化処理での除算値は、８×８画素の画素毎に予め量子化テーブルとして定義されている。
【００３１】
符号化部１０７は、量子化部１０６により量子化された画像データに対してエントロピー符号化（圧縮）処理を行う。ＪＰＥＧ方式のアルゴリズムでのエントロピー符号化（圧縮）にはハフマン符号が使用される。ハフマン符号は、頻度の高いデータに短いビット数の符号を割り当てることで全体のビット数を減らすことにより圧縮する符号である。ハフマン符号は、直流成分用と交流成分用との２種類用意されている。
【００３２】
直流成分は、データ値のビット数を調べて、不要なビットを削除し、削除後のビット数をハフマン符号で表現して、データ値の前に付与する（「ハフマン符号」「データ」の形式）。交流成分は、８×８画素のブロック状に配列されているデータのうち、左上隅の直流成分を除く６３個の交流成分を一列に並び替えて、前に連続しているゼロデータの個数を数える。そして、ゼロでないデータについて、直流成分と同様に、ビット数を調べて、不要なビットを削除する。交流成分のハフマン符号は、前に続いているゼロデータの個数と、ゼロでないデータのビット数とを組み合わせたもので表現される（ゼロランレングス方式）。
【００３３】
ＭＣＵ単位で生成された符号データは、一旦内部のバッファに格納される。そして、縦横４×４ＭＣＵ分の符号データがバッファに格納されると、１タイル分の符号化された画像データ（以下、「符号データ」とも称する。）として後段の出力バッファ制御部１０８へ供給される。
【００３４】
また、符号化部１０７は、８×８個のブロック単位で、ブロック内のデータについてハフマン符号に変換した後、ブロック内の全ハフマン符号のビット数の合計値を算出して、処理ブロックの符号量（以下、「ＭＣＵ符号量」とも称す。）を求める。算出されたＭＣＵ符号量は、一旦内部のレジスタに保持される。符号化部１０７は、ＭＣＵ符号量の算出を縦横４×４ＭＣＵ分繰り返し、その合計値を算出することにより１タイル分の符号量を得る。そして、算出した１タイル分の符号量値は、ハフマン符号に符号化された画像データ（符号データ）とともに、後段の出力バッファ制御部１０８へ供給される。
【００３５】
出力バッファ制御部１０８は、符号化部１０７より出力される符号データを内部のバッファへ格納する際、及びバッファに格納された符号データを後段の出力ＤＡＭＣ部１０９へ出力する際の制御を行う。出力バッファ制御部１０８のバッファに格納可能なデータ容量は、画像処理装置１００に要求される速度性能等により予め決められた容量で構成されている。本実施形態では、複数のタイル分に相当する画像データが格納可能な容量とする。ここで、出力バッファ制御部１０８が有するバッファは、アクセス中以外の消費電力について低消費電力状態に移行可能なレジュームスタンバイモード（ＲＳモード）を有するＳＲＡＭで構成されている。出力バッファ制御部１０８は、符号データの格納に係る低消費電力制御を実現する。
【００３６】
出力ＤＭＡＣ部１０９は、出力バッファ制御部１０８内のバッファに格納されている符号データを読み出して、外部の記憶装置へ符号データを出力するためのダイレクトメモリアクセスコントローラ（ＤＭＡＣ）である。出力ＤＭＡＣ部１０９は、入力ＤＭＡＣ部１０１と同様に、外部の記憶装置とはＡＸＩにて接続されている。出力ＤＭＡＣ部１０９は、ＡＸＩのバス幅が６４ビットであり、バースト長が１６である場合、１回のバス転送あたり１タイル分の画像データを転送する。出力ＤＭＡＣ部１０９は、前段の出力バッファ制御部１０８のバッファにおける符号データの格納状況を参照して、１タイル以上の符号データが格納された場合に、図示しないバス調停部に対してバス転送要求を発行する。そして、出力ＤＭＡＣ部１０９は、バス調停部からのバス転送許可を待って、外部の記憶装置へ符号データを出力する。
【００３７】
＜出力バッファ制御部１０８＞
図２は、図１に示した出力バッファ制御部１０８の構成例を示すブロック図である。図２を参照して、第１の実施形態におけるＳＲＡＭの低消費電力状態（ＲＳモード）への移行、及び通常状態（通常モード）への復帰に係る制御とクロック信号の制御を行う構成について説明する。出力バッファ制御部１０８は、ＳＲＡＭ制御部２０１、クロックゲーティングセル（ＣＧ）２０３−ｍ、データ格納部２０５、及びＳＲＡＭグループ管理部２０７を有する。なお、ｍは添え字であり、本実施形態ではｍ＝１〜４の整数である（以下においても同様）。
【００３８】
ＳＲＡＭ制御部２０１は、データ格納部２０５が有するＳＲＡＭ２０６−ｍへのアクセス制御、及び動作モード制御を行う。動作モード制御では、ＳＲＡＭ制御部２０１は、レジュームスタンバイ信号（ＲＳ信号）ＲＳｍ及びクロック信号ＭＣＬＫｍに係る制御を行い、アドレス領域について低消費電力状態（ＲＳモード）及び通常状態（通常モード）の切り替えを行う。
【００３９】
ＳＲＡＭ制御部２０１は、内部に図示しないカウンタ回路を有し、モード移行時における、ＲＳ信号ＲＳｍ及びクロック信号ＭＣＬＫｍを制御するためのタイミングをカウントする。通常モードからＲＳモードへ移行させる際には、ＣＧ２０３−ｍのクロックゲートイネーブル信号ＣＧ＿ＥＮｍに“１”を設定してから、対応するＲＳ信号ＲＳｍに“１”を設定するまでのサイクル数をカウントする。また、ＲＳモードから通常モードへ移行させる際には、ＲＳ信号ｍに“０”を設定してから、対応するクロックゲートイネーブル信号ＣＧ＿ＥＮｍに“０"を設定するまでのサイクル数をカウントする。
【００４０】
なお、クロックゲートイネーブル信号ＣＧ＿ＥＮｍは、クロック発振させる場合に“０”が設定され、クロック停止させる場合に“１”が設定されるものとする。また、ＲＳ信号ＲＳｍは、ＲＳモード（低消費電力状態）にする場合に“１”が設定され、通常モード（通常状態）にする場合に“０”が設定されるものとする。このクロックゲートイネーブル信号ＣＧ＿ＥＮｍ及びＲＳ信号ＲＳｍを設定するタイミングは、画像処理中において対応するＳＲＡＭ２０６−ｍに対して画像データの書き込みや読み出しを行うタイミングに合わせて制御される。
【００４１】
また、ＳＲＡＭ制御部２０１は、符号化部１０７からの符号データが入力データ信号ＤＩＮにより供給されるともに符号量が信号ＣＯＤＥ＿ＬＥＮにより供給される。ＳＲＡＭ制御部２０１は、符号データを出力データ信号ＤＯＵＴにより出力ＤＭＡＣ部１０９に供給する。
【００４２】
ＣＧ２０３−ｍは、出力バッファ制御部１０８の動作クロックであるクロック信号ＣＬＫに基づくＳＲＡＭ２０６−ｍの動作クロック信号ＭＣＬＫｍの発振及び停止を制御する。ＣＧ２０３−ｍによるクロック信号ＭＣＬＫｍの発振及び停止は、クロックゲートイネーブル信号ＣＧ＿ＥＮｍによって制御される。
【００４３】
データ格納部２０５は、ＳＲＡＭ２０６−ｍを有し、画像データを格納する。ＳＲＡＭ２０６−ｍは、レジュームスタンバイモード（ＲＳモード）を有するＳＲＡＭであり、それぞれＳＲＡＭ制御部２０１と接続されている。ＳＲＡＭ２０６−ｍの詳細については後述する。
【００４４】
ＳＲＡＭグループ管理部２０７は、ＳＲＡＭのアドレス領域について、突入電流を抑制する特定の容量以下の単位で分割した各グループ（ＳＲＡＭグループ）のアドレス領域を管理する。ＳＲＡＭグループ管理部２０７は、ＳＲＡＭ制御部２０１からＳＲＡＭグループのＩＤ情報を信号Ｇ＿ＩＤにより受信し、対応するＳＲＡＭグループの開始アドレスを信号ＧＳＴ＿ＡＤ、終了アドレスを信号ＧＥＤ＿ＡＤによりＳＲＡＭ制御部２０１へ送信する。
【００４５】
本実施形態では、一例として、ＳＲＡＭ２０６−ｍについて、それぞれ１つのＳＲＡＭが１つのＳＲＡＭグループとなるものとする。つまり、ＳＲＡＭグループ管理部２０７は、ＳＲＡＭ２０６−ｍの各々のＳＲＡＭを１つのＳＲＡＭグループとして管理する。なお、本実施形態では、ＳＲＡＭグループは、１つのＳＲＡＭで構成されるものとしたが、これに限定されるものではなく、例えば複数のＳＲＡＭで構成されるようにしてもよい。
【００４６】
なお、以下の説明において、ＣＧ２０３−ｍ、ＳＲＡＭ２０６−ｍ、クロックゲートイネーブル信号ＣＧ＿ＥＮｍ、クロック信号ＭＣＬＫｍ、及びＲＳ信号ＲＳｍの各々は、区別する場合には添え字を付し、特に区別しない場合には添え字を省略して記す。
【００４７】
＜ＳＲＡＭ２０６＞
次に、ＳＲＡＭ２０６（２０６−１〜２０６−４）について説明する。図３は、ＳＲＡＭ２０６の構成例を示すブロック図である。ＳＲＡＭ２０６に入力される入力信号は、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、アドレス信号ＡＤＤＲ、入力データ信号ＭＤＩＮ、クロック信号ＭＣＬＫ、及びレジュームスタンバイ信号（ＲＳ信号）ＲＳである。また、ＳＲＡＭ２０６から出力される出力信号は、出力データ信号ＭＤＯＵＴである。
【００４８】
制御部３０１は、チップセレクト信号ＣＳやライトイネーブル信号ＷＥに基づいてメモリ動作のタイミング信号を生成するタイミング制御回路を有する。また、制御部３０１は、ＲＳ信号ＲＳに基づいてワードドライバ部３０２及びカラム部３０３への電源供給を遮断する回路を有する。なお、制御部３０１において、動作モード制御に係る部分以外の部分についても、ＲＳ信号ＲＳが“１”である場合に電源供給を遮断することが可能である。
【００４９】
ワードドライバ部３０２は、アドレス信号ＡＤＤＲをデコードしてメモリアレイ部３０４のロウアドレスのどの領域を活性させるかを決定するブロックである。また、カラム部３０３は、アドレス信号ＡＤＤＲをデコードしてメモリアレイ部３０４のカラムアドレスのどの領域を活性させるかを決定するブロックである。ワードドライバ部３０２及びカラム部３０３は、制御部３０１によってＲＳモード時に電源供給が遮断される。
【００５０】
メモリアレイ部３０４は、スタティック型のメモリセルがマトリクス状に配置され、ワードドライバ部３０２とカラム部３０３で決定されるメモリセルにデータを保持する。メモリアレイ部３０４は、ＲＳモード時にも通電された（電源供給される）ブロックであり、ＲＳモード時であってもデータを保持することが可能となっている。
【００５１】
＜ＳＲＡＭの動作モード切り替え＞
次に、ＳＲＡＭのＲＳモード（低消費電力状態）及び通常モード（通常状態）のモード切り替え制御について説明する。図４は、第１の実施形態におけるＳＲＡＭのモード切り替え制御の例を示すタイミングチャートである。
【００５２】
始めにＳＲＡＭのＲＳモードへの移行シーケンスについて説明する。画像処理装置１００の動作クロック信号ＣＬＫは、図示していないクロック生成モジュールから生成される信号であり、画像処理装置１００の電源が投入されている期間は常に発振している。
【００５３】
時刻ｔ４０において、ＳＲＡＭ制御部２０１は、ＣＰＵ１１０もしくはＳＲＡＭ制御部２０１自身により制御され、クロックゲートイネーブル信号ＣＧ＿ＥＮをクロック停止状態を示す“１”に設定する。クロックゲートイネーブル信号ＣＧ＿ＥＮを“０”から“１”にするタイミングは、対応するＳＲＡＭ２０６について、ＳＲＡＭ制御部２０１がアクセスを終了したタイミング、もしくはソフトウェアが未使用と判断したタイミングである。クロックゲートイネーブル信号ＣＧ＿ＥＮが“１”となったことで、時刻ｔ４１において、ＣＧ２０３は、クロック信号ＭＣＬＫを停止する。これにより、ＳＲＡＭ２０６へのクロック供給が停止される。
【００５４】
次に、ＳＲＡＭ制御部２０１は、時刻ｔ４１においてクロック信号ＭＣＬＫが停止されてから所定の（ｔ＿ｉｎ）時間が経過した後の時刻ｔ４２において、ＲＳ信号ＲＳを“１”に設定する。これにより、ＲＳモードへ移行する際に、ＳＲＡＭ２０６に入力されるクロック信号が停止されているので、ＲＳモード移行時の電源揺れを抑えることによってデータ保持を保障することが可能となる。ここでレジスタ設定により（ｔ＿ｉｎ）時間は調整可能である。
【００５５】
次にＳＲＡＭの通常モードへの移行シーケンスについて説明する。時刻ｔ４３において、ＳＲＡＭ制御部２０１は、ＣＰＵ１０１もしくはＳＲＡＭ制御部２０１自身により制御され、ＲＳ信号ＲＳを“０”に設定する。ＲＳ信号ＲＳを“１”から“０”にするタイミングは、対応するＳＲＡＭ２０６について、ＳＲＡＭ制御部２０１がアクセスを開始するタイミング、もしくはソフトウェアが使用開始と判断したタイミングである。
【００５６】
次に、ＳＲＡＭ制御部２０１は、時刻ｔ４４から所定の（ｔ＿ｏｕｔ）時間が経過した後の時刻ｔ４５において、クロックゲートイネーブル信号ＣＧ＿ＥＮ信号を“０”に設定する。ここでレジスタ設定により（ｔ＿ｏｕｔ）時間は調整可能である。なお、時刻ｔ４４は、時刻ｔ４３でＲＳ信号ＲＳが“０”となってから、最初のクロック信号ＣＬＫの立ち上がりエッジタイミングである。そして、クロックゲートイネーブル信号ＣＧ＿ＥＮが“０”となったことで、時刻ｔ４６において、ＣＧ２０３は、クロック信号ＭＣＬＫを発振させて通常モードへの移行を完了する。
【００５７】
＜データ格納部に対するアクセスに係るアドレス制御＞
次に、本実施形態において出力バッファ制御部１０８が有するデータ格納部２０５にアクセスする際のアドレス制御について説明する。図５（ａ）及び図５（ｂ）は、画像処理装置１００においてＳＲＡＭ２０６−ｍを使用して符号化処理を行う際のアドレス制御の例を示すフローチャートである。以下では、例えば画像サイズが用紙サイズでＡ４サイズ相当、データ階調が８ビット、色数がＲＧＢの画像データに対して符号化処理する場合を例に説明する。また、一例として、タイル０、タイル１、タイル２の符号量は、それぞれ１１００、２７００、１８００バイトであるとする。
【００５８】
始めに、ステップＳ５０１にて、ＳＲＡＭ制御部２０１は、全てのＳＲＡＭグループを低消費電力状態（ＲＳモード）に設定する。すなわち、ＳＲＡＭ制御部２０１は、ＲＳ信号ＲＳ１〜ＲＳ４及びクロック信号ＭＣＬＫ１〜ＭＣＬＫ４に係る制御を行うことにより、ＳＲＡＭ２０６−１〜２０６−４のすべてを低消費電力状態（ＲＳモード）に設定する。画像処理装置１００において、４つのＳＲＡＭグループに対応するＳＲＡＭ２０６−１〜２０６−４は、ＳＲＡＭへのアクセスがないときは極力消費電力を抑えるために、初期状態ではＲＳモードに設定する。
【００５９】
次に、ステップＳ５０２にて、ＳＲＡＭ制御部２０１は、全てのＳＲＡＭグループの内から使用候補のＳＲＡＭグループを選定する。このステップＳ５０２からステップＳ５１２までの処理は、画像処理装置１００での処理単位であるタイル毎に行われる。最初のタイル（タイル０）の符号データを格納する際は、ＳＲＡＭ２０６−１〜２０６−４への符号データの格納は一度も行われていない状態である。したがって、ＳＲＡＭ制御部２０１は、最初のタイル（タイル０）の符号データを格納する際は、使用するＳＲＡＭグループとして最初のＳＲＡＭグループであるＳＲＡＭ２０６−１を選定する。
【００６０】
ステップＳ５０３にて、ＳＲＡＭ制御部２０１は、使用候補のＳＲＡＭグループについての空き容量を算出する。ＳＲＡＭ制御部２０１は、ＳＲＡＭグループ管理部２０７から取得する使用候補のＳＲＡＭグループのアドレス領域の情報、及びそのＳＲＡＭグループにおいてデータ格納済みのアドレス領域の情報に基づいて、使用候補のＳＲＡＭグループの空き容量を求める。
【００６１】
ここで、ＳＲＡＭグループ管理部２０７は、ＳＲＡＭグループ毎のアドレス領域（開始アドレス及び終了アドレス）が登録されているＳＲＡＭグループ管理テーブルを有している。図６にＳＲＡＭグループ管理テーブルの一例を示す。図６に示す例では、ＳＲＡＭ２０６−１〜２０６−４がそれぞれ対応するＳＲＡＭグループ１〜４の４つのＳＲＡＭグループのアドレス情報が登録されている。ＳＲＡＭグループ１のアドレス情報として、開始アドレス“０”及び終了アドレス“３９９９”が登録されている。ＳＲＡＭグループ２のアドレス情報として、開始アドレス“４０００”及び終了アドレス“７９９９”が登録されている。同様に、ＳＲＡＭグループ３のアドレス情報として、開始アドレス“８０００”及び終了アドレス“１１９９９”が登録され、ＳＲＡＭグループ４のアドレス情報として、開始アドレス“１２０００”及び終了アドレス“１５９９９”が登録されている。
【００６２】
ＳＲＡＭグループ管理部２０７は、ＳＲＡＭ制御部２０１が選定した使用候補のＳＲＡＭグループの情報を信号Ｇ＿ＩＤによって取得し、対応するＳＲＡＭグループのアドレス情報をＳＲＡＭグループ管理テーブルより取得する。例えば、使用候補のＳＲＡＭグループがＳＲＡＭグループ１である場合、ＳＲＡＭグループ管理部２０７は、ＳＲＡＭグループ１のアドレス情報として、開始アドレス“０”及び終了アドレス“３９９９”を取得する。ＳＲＡＭグループ管理部２０７は、アドレス情報として取得した開始アドレス及び終了アドレスを信号ＧＳＴ＿ＡＤ、ＧＥＤ＿ＡＤによりＳＲＡＭ制御部２０１に通知する。
【００６３】
そして、ＳＲＡＭ制御部２０１は、取得したアドレス情報よりＳＲＡＭグループの容量を算出する。例えば、図６に示したＳＲＡＭグループ管理テーブルの例では、ＳＲＡＭグループ１の容量として、終了アドレス３９９９−開始アドレス０＋１＝４０００バイトを算出する。次に、ＳＲＡＭ制御部２０１は、使用候補のＳＲＡＭグループの符号データの格納アドレス領域の情報を基に、ＳＲＡＭグループの空き容量を算出する。符号データの格納アドレス領域の情報は、ＳＲＡＭグループにおいてすでに符号データが格納されている領域を示す情報である。例えば、タイル０の符号データを格納する際には、まだＳＲＡＭ２０６−１へは符号データが格納されていないため、ＳＲＡＭグループ１の空き容量として、ＳＲＡＭグループ１の容量４０００−格納アドレス領域０＝４０００バイトを算出する。
【００６４】
ステップＳ５０４にて、ＳＲＡＭ制御部２０１は、１タイル分の符号量を取得する。１タイル分の符号量は、前述したとおり、符号化部１０７にて画像データを符号化処理する際に算出され、符号データとともに信号ＣＯＤＥ＿ＬＥＮによって符号化部１０７から供給される。
【００６５】
ステップＳ５０５にて、ＳＲＡＭ制御部２０１は、１タイル分の符号量が使用候補のＳＲＡＭグループの空き容量以下であるか否かを判断する。格納するタイルの符号量が使用候補のＳＲＡＭグループの空き容量以下であるとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、ステップＳ５０６へ進む。一方、格納するタイルの符号量が使用候補のＳＲＡＭグループの空き容量以下ではないとＳＲＡＭ制御部２０１が判断した場合には（Ｎｏ）、ステップＳ５０７へ進む。
【００６６】
例えば、タイル０の符号データを処理する場合、タイル０の符号量は１１００バイトであり、使用候補のＳＲＡＭグループ１の空き容量である４０００バイトよりも小さいので、ステップＳ５０６へ進む。ステップＳ５０６にて、ＳＲＡＭ制御部２０１は、使用候補のＳＲＡＭグループを、符号データを格納するＳＲＡＭグループとして選定する。例えば、タイル０の符号データを処理する場合、ＳＲＡＭ制御部２０１は、使用候補のＳＲＡＭグループであるＳＲＡＭ２０６−１を、符号データを格納するＳＲＡＭグループとして選定する。
【００６７】
ステップＳ５０８にて、ＳＲＡＭ制御部２０１は、符号データの書き込み先頭アドレスを算出する。ＳＲＡＭ制御部２０１は、図示しないライト先頭アドレスレジスタと、ＳＲＡＭ２０６へデータを書き込む際のライトアドレス値を生成するライトアドレスカウンタとを有する。選定されたＳＲＡＭグループに対して最初のタイルの符号データを格納する際は、ＳＲＡＭ制御部２０１は、選定されたＳＲＡＭグループの開始アドレスをＳＲＡＭグループ管理部２０７から取得し、そのアドレス値を書き込み先頭アドレスとする。例えば、タイル０の符号データを格納する際は、ＳＲＡＭグループ管理テーブルにおいてＳＲＡＭグループ１の開始アドレスとして登録されているアドレス情報“０”を取得して、これを書き込み先頭アドレスとする。
【００６８】
ＳＲＡＭグループ管理部２０７から取得した開始アドレスは、書き込み先頭アドレスとして、ライト先頭アドレスレジスタに格納される。ライトアドレスカウンタは、ＳＲＡＭ２０６に符号データを書き込む際の、カウンタの初期値もしくはロード値からのＳＲＡＭ２０６のアドレス数をカウントする。ライトアドレスカウンタのカウント値は、ＳＲＡＭ２０６のアドレス信号ＡＤＤＲとして、ＳＲＡＭ２０６へ供給される。ライトアドレスカウンタは、１タイル分のアドレス数をカウントすると、ライト先頭アドレスレジスタが保持するレジスタ値を、ライトアドレスカウンタのカウント値に更新する。更新されたライト先頭アドレスレジスタのレジスタ値は、次のタイルの符号データを格納する際の、書き込み先頭アドレスとして使用される。ステップＳ５０８において算出された各タイルの書き込み先頭アドレスは、後述するタイルの読み出し先頭アドレスとして使用されるため、算出した各タイルの書き込み先頭アドレスは、算出したタイルの順番でリスト化して図示しないレジスタ等に保持される。
【００６９】
ステップＳ５０９にて、ＳＲＡＭ制御部２０１は、符号データを格納するＳＲＡＭグループとして選定されたＳＲＡＭグループを通常状態（通常モード）に設定する。ＳＲＡＭ制御部２０１は、ＲＳ信号ＲＳｍ及びクロック信号ＭＣＬＫｍを制御することにより、対応するＳＲＡＭ２０６−ｍを低消費電力状態（ＲＳモード）から通常状態（通常モード）へ移行させる。例えば、タイル０の符号データを処理する場合には、選定されたＳＲＡＭグループ１であるＳＲＡＭ２０６−１をＲＳモードから通常モードへ移行して、アクセス可能な状態とする。
【００７０】
ステップＳ５１０にて、ＳＲＡＭ制御部２０１は、ステップＳ５０８において算出された書き込み先頭アドレスから、ＳＲＡＭ２０６に対して１タイル分の符号データの書き込みを行う。符号化部１０７より供給される１タイル分（縦横３２×３２個）の符号データは、ＳＲＡＭ制御部２０１にて、先頭（左上隅）の符号データより順番にバイト単位に分割され、ＳＲＡＭ２０６の入力データ信号ＤＩＮとして入力される。
【００７１】
１タイル分の符号データの書き込みは、次のように行われる。バイト単位に分割された先頭の符号データを入力データ信号ＭＤＩＮとしてＳＲＡＭ２０６へ入力すると同時のタイミングで、チップセレクト信号ＣＳ及びライトイネーブル信号ＷＥをイネーブル状態となるように入力する。そして、アドレス信号ＡＤＤＲとして、算出された書き込み先頭アドレス値を入力する。
【００７２】
チップセレクト信号ＣＳ及びライトイネーブル信号ＷＥは、クロック信号ＭＣＬＫのクロックサイクル基準で、１タイル分の符号データを書き込むクロックサイクル数の期間に亘ってイネーブル状態となるよう生成される。その間、アドレス信号ＡＤＤＲには、クロック信号ＭＣＬＫ基準でカウントされるライトアドレスカウンタのカウント値が入力され、入力データ信号ＭＤＩＮには、バイト単位に分割された１タイル分の符号データが入力される。１タイル分の符号データの書き込みが終了すると、チップセレクト信号ＣＳ及びライトイネーブル信号ＷＥは、ディセーブル状態となるよう生成される。
【００７３】
ステップＳ５１１にて、ＳＲＡＭ制御部２０１は、符号データを格納するＳＲＡＭグループとして選定されたＳＲＡＭグループを低消費電力状態（ＲＳモード）に設定する。ＳＲＡＭ制御部２０１は、ＲＳ信号ＲＳｍ及びクロック信号ＭＣＬＫｍを制御することにより、対応するＳＲＡＭ２０６−ｍを通常状態（通常モード）から低消費電力状態（ＲＳモード）へ移行させる。例えば、タイル０の符号データを処理する場合には、選定されたＳＲＡＭグループ１であるＳＲＡＭ２０６−１を通常モードからＲＳモードへ移行して、ＳＲＡＭ２０６−１を再び低消費電力状態に戻す。
【００７４】
このように本実施形態では、符号データを格納するＳＲＡＭグループとして選定されたＳＲＡＭグループを低消費電力状態（ＲＳモード）から通常状態（通常モード）へ切り替えて１タイル分の符号データをＳＲＡＭ２０６に格納する。そして、１タイル分の符号データの格納後に符号データを格納するＳＲＡＭグループとして選定されたＳＲＡＭグループを通常状態（通常モード）から低消費電力状態（ＲＳモード）へ切り替える。
【００７５】
次に、ステップＳ５１２にて、ＳＲＡＭ制御部２０１は、入力バッファ制御部１０２内のバッファに格納されている全てのタイルについての処理が終了したか否かを判断する。全てのタイルの処理が終了したとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、ステップＳ５１３へ進む。一方、全てのタイルの処理が終了していない、すなわち処理していないタイルがあるとＳＲＡＭ制御部２０１が判断した場合には（Ｎｏ）、ステップＳ５０２に戻り、次のタイルについての処理をステップＳ５０２から行う。
【００７６】
例えば、タイル０に続いて、次のタイル１の符号化データを処理する場合、格納するタイルの符号量（１１００バイト）が、使用候補のＳＲＡＭグループとして選定されるＳＲＡＭグループ１の空き容量（４０００−１１００＝２９００バイト）より小さい。この場合には、ステップＳ５０５での処理において、格納するタイルの符号量が使用候補のＳＲＡＭグループの空き容量以下であるとＳＲＡＭ制御部２０１が判断するので、前述したステップＳ５０２〜Ｓ５１１の処理を繰り返す。
【００７７】
さらに、タイル１に続いて、次のタイル２の符号化データを処理する場合、格納するタイルの符号量（１８００バイト）が、初めに選定される使用候補のＳＲＡＭグループ１の空き容量（４０００−１１００−２７００＝２００バイト）より大きい。この場合には、ステップＳ５０５での処理において、格納するタイルの符号量が使用候補のＳＲＡＭグループの空き容量以下ではないとＳＲＡＭ制御部２０１が判断するので、ステップＳ５０７へ進む。
【００７８】
ステップＳ５０７にて、ＳＲＡＭ制御部２０１は、すでに選定されているＳＲＡＭグループの次のＳＲＡＭグループを、符号データを格納するＳＲＡＭグループとして選定する。例えば、タイル２の符号データを処理する場合、使用候補として選定されているＳＲＡＭグループ１（ＳＲＡＭ２０６−１）の次のＳＲＡＭグループ２（ＳＲＡＭ２０６−２）を、符号データを格納するＳＲＡＭグループとして選定する。このとき、タイル２が、選定されたＳＲＡＭグループについて最初のタイルとなる。そのため、ステップＳ５０８において、ＳＲＡＭ制御部２０１は、ＳＲＡＭグループ２の開始アドレスとして登録されているアドレス情報“４０００”をＳＲＡＭグループ管理部２０７から取得し、そのアドレス値を書き込み先頭アドレスとする。
【００７９】
以上のようにして、各タイルの符号データを格納する処理を行い、全てのタイルについて処理が終了し、ステップＳ５１２において、全てのタイルの処理が終了したとＳＲＡＭ制御部２０１が判断すると（Ｙｅｓ）、ステップＳ５１３へ進む。
【００８０】
ステップＳ５１３にて、ＳＲＡＭ制御部２０１は、符号データの読み出し先頭アドレスを算出する。全てのタイルについて、ＳＲＡＭ２０６への符号データの格納が終了すると、出力ＤＭＡＣ部１０９により、ＳＲＡＭ２０６に格納された各タイルの符号データの読み出しを行う。ＳＲＡＭ２０６から符号データを読み出すタイルの順番は、格納する順番と同じとなるように制御する。ＳＲＡＭ制御部２０１は、ステップＳ５０８において格納する順番にリスト化されてレジスタに保持されている各タイルの書き込み先頭アドレスを取得して、この値をタイルの読み出し先頭アドレスとして使用する。
【００８１】
また、ＳＲＡＭ制御部２０１は、ＳＲＡＭ２０６よりデータを読み出す際のリードアドレス値を生成する、図示しないリードアドレスカウンタを有する。リードアドレスカウンタは、ＳＲＡＭ２０６から符号データを読み出す際の、カウンタの初期値もしくはロード値からのＳＲＡＭ２０６のアドレス数をカウントする。リードアドレスカウンタのカウント値は、ＳＲＡＭ２０６のアドレス信号ＡＤＤＲとして、ＳＲＡＭ２０６へ供給される。このステップＳ５１３での処理で算出した各タイルの読み出し先頭アドレスは、リードアドレスカウンタのロード値としてロードされる。
【００８２】
ステップＳ５１４にて、ＳＲＡＭ制御部２０１は、算出した読み出し先頭アドレスに対応するＳＲＡＭグループを、符号データを読み出すＳＲＡＭグループとして選定する。ＳＲＡＭ制御部２０１は、ＳＲＡＭグループ管理部２０７から各ＳＲＡＭグループの開始アドレス及び終了アドレスを取得する。そして、ＳＲＡＭ制御部２０１は、取得した各ＳＲＡＭグループの開始アドレス及び終了アドレスに基づいて、算出した読み出し先頭アドレスが、どのＳＲＡＭグループのアドレス領域に該当するかを判断し、対応するＳＲＡＭグループを選定する。
【００８３】
例えば、タイル０、タイル１、タイル２の場合には、読み出し先頭アドレスとして、それぞれ“０”、“１１００”、“４０００”が算出されている。ＳＲＡＭグループ管理部２０７より取得するＳＲＡＭグループのアドレス領域が図６に示した例である場合、タイル０とタイル１ではＳＲＡＭグループ１（ＳＲＡＭ２０６−１）が、符号データを読み出すＳＲＡＭグループとして選定される。また、タイル２ではＳＲＡＭグループ２（ＳＲＡＭ２０６−２）が、符号データを読み出すＳＲＡＭグループとして選定される。
【００８４】
ステップＳ５１５にて、ＳＲＡＭ制御部２０１は、符号データを読み出すＳＲＡＭグループとして選定されたＳＲＡＭグループを通常状態（通常モード）に設定する。ＳＲＡＭ制御部２０１は、ＲＳ信号ＲＳｍ及びクロック信号ＭＣＬＫｍを制御することにより、対応するＳＲＡＭ２０６−ｍを低消費電力状態（ＲＳモード）から通常状態（通常モード）へ移行させる。例えば、タイル０の符号データを処理する場合には、選定されたＳＲＡＭグループ１であるＳＲＡＭ２０６−１をＲＳモードから通常モードへ移行して、アクセス可能な状態とする。
【００８５】
ステップＳ５１６にて、ＳＲＡＭ制御部２０１は、算出された読み出し先頭アドレスから、ＳＲＡＭ２０６に対して１タイル分の符号データの読み出しを行う。ＳＲＡＭ制御部２０１は、符号データの読み出しを行う際には、チップセレクト信号ＣＳをイネーブル状態、及びライトイネーブル信号ＷＥをディセーブル状態（以下、「リードイネーブル状態」とも称す。）となるように入力する。そして、アドレス信号ＡＤＤＲとして、算出された読み出し先頭アドレス値を入力する。
【００８６】
チップセレクト信号ＣＳ及びライトイネーブル信号ＷＥは、クロック信号ＭＣＬＫのクロックサイクル基準で、１タイル分の符号データを読み出すクロックサイクル数の期間に亘ってリードイネーブル状態となるよう生成される。その間、アドレス信号ＡＤＤＲには、クロック信号ＭＣＬＫ基準でカウントされるリードアドレスカウンタのカウント値が出力され、出力データ信号ＭＤＯＵＴには、バイト単位で格納されている１タイル分の符号データが出力される。１タイル分の符号データの読み出しが終了すると、チップセレクト信号ＣＳはディセーブル状態となるよう生成される。
【００８７】
ステップＳ５１７にて、ＳＲＡＭ制御部２０１は、符号データを読み出すＳＲＡＭグループとして選定されたＳＲＡＭグループを低消費電力状態（ＲＳモード）に設定する。ＳＲＡＭ制御部２０１は、ＲＳ信号ＲＳｍ及びクロック信号ＭＣＬＫｍを制御することにより、対応するＳＲＡＭ２０６−ｍを通常状態（通常モード）から低消費電力状態（ＲＳモード）へ移行させる。例えば、タイル０の符号データを処理する場合には、選定されたＳＲＡＭグループ１であるＳＲＡＭ２０６−１を通常モードからＲＳモードへ移行して、ＳＲＡＭ２０６−１を再び低消費電力状態に戻す。
【００８８】
このように本実施形態では、符号データを読み出すＳＲＡＭグループとして選定されたＳＲＡＭグループを低消費電力状態（ＲＳモード）から通常状態（通常モード）へ切り替えて１タイル分の符号データをＳＲＡＭ２０６から読み出す。そして、１タイル分の符号データの読み出し後に符号データを読み出すＳＲＡＭグループとして選定されたＳＲＡＭグループを通常状態（通常モード）から低消費電力状態（ＲＳモード）へ切り替える。
【００８９】
次に、ステップＳ５１８にて、ＳＲＡＭ制御部２０１は、ＳＲＡＭ２０６に格納されている全てのタイルについての処理が終了したか否かを判断する。全てのタイルの処理が終了したとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、処理を終了する。一方、全てのタイルの処理が終了していない、すなわち処理していないタイルがあるとＳＲＡＭ制御部２０１が判断した場合には（Ｎｏ）、ステップＳ５１４に戻り、次のタイルについての処理をステップＳ５１４から繰り返す。
【００９０】
第１の実施形態によれば、符号化された画像データ（符号データ）を格納する際、各タイルの符号データがＳＲＡＭグループの境界を跨がないアドレス領域に格納されるようにアドレス制御を行う。例えば、図７に示すように、タイル０及びタイル１の符号データが、ＳＲＡＭグループ１のアドレス領域７１１に格納される。続いてタイル２の符号データを格納する際、タイル１に連続して隣接するように格納すると、タイル２の符号データは、ＳＲＡＭグループ１のアドレス領域７１１とＳＲＡＭグループ２のアドレス領域７１２との境界を跨いで格納されることになる。この場合、本実施形態では、書き込みアドレスについてアドレス制御を行うことで、図７に示すように、タイル２の符号データがＳＲＡＭグループ２のアドレス領域７１２の最初のアドレス領域より格納される。同様に、タイルＮの符号データがＳＲＡＭグループ３のアドレス領域７１３の最初のアドレス領域より格納され、タイルＭの符号データがＳＲＡＭグループ４のアドレス領域７１４の最初のアドレス領域より格納されるようアドレス制御される。
【００９１】
このように本実施形態では、各タイルの符号データは、複数のＳＲＡＭグループのアドレス領域を跨がないアドレス領域に格納するようにアドレス制御されて格納される。これにより、符号データに係るアクセスを行う際に、１つのＳＲＡＭグループのアドレス領域だけを通常状態である通常モードにし、他のＳＲＡＭグループのアドレス領域は低消費電力状態であるＲＳモードにすることが可能となる。つまり、符号データに係るアクセスを行う際に、動的に１つのＳＲＡＭグループのアドレス領域だけを通常モードで動作させるように制御することができる。よって、同時に複数のＳＲＡＭグループが通常モードで動作しないようにアドレス制御するため、ＲＳモードで動作するＳＲＡＭグループの数が増加し、消費電力を低減させることができる。
【００９２】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
前述した第１の実施形態では、先頭タイルより順番に、タイル単位で符号量を算出して、格納するＳＲＡＭグループを決定する場合のアドレス制御について説明した。しかし、第１の実施形態におけるアドレス制御では、先頭タイルより順番に格納するアドレスを割り当てるよう制御するため、画像によっては符号データが格納されないアドレス領域が大きくなり、結果として必要なメモリ容量が増加してしまう。
【００９３】
そこで、以下に説明する第２の実施形態では、ＳＲＡＭに格納する各タイルの符号量を予め算出して、ＳＲＡＭグループのアドレス領域において、なるべく多くのアドレス領域に符号データが格納されるようアドレス制御を行う。なお、第１の実施形態と第２の実施形態とは、データ格納部に対するアクセスに係るアドレス制御が異なる。以下では、第２の実施形態における画像処理装置でのデータ格納部に対するアクセスに係るアドレス制御について説明し、その他は同様であるので説明を省略する。
【００９４】
＜データ格納部に対するアクセスに係るアドレス制御＞
図８（ａ）及び図８（ｂ）は、第２の実施形態における画像処理装置１００においてＳＲＡＭ２０６−ｍを使用して符号化処理を行う際のアドレス制御の例を示すフローチャートである。以下でも、第１の実施形態と同様に、例えば画像サイズが用紙サイズでＡ４サイズ相当、データ階調が８ビット、色数がＲＧＢの画像データに対して符号化処理する場合を例に説明する。
【００９５】
図８（ａ）及び図８（ｂ）に示す第２の実施形態におけるアドレス制御処理は、図５（ａ）及び図５（ｂ）に示した第１の実施形態におけるアドレス制御処理とほぼ同様であるので、以下では異なる点を中心に説明する。ステップＳ８０１の処理は、第１の実施形態におけるステップＳ５０１の処理と同様である。
【００９６】
次に、ステップＳ８０２にて、ＳＲＡＭ制御部２０１は、入力バッファ制御部１０２内のバッファに格納された全てのタイルについての符号量を取得する。本実施形態では、入力バッファ制御部１０２のバッファの容量は、説明の簡略化のため、４タイル分に相当する画像データが格納可能な容量で予め構成されている場合を例に説明する。このステップＳ８０２を含むステップＳ８０２からステップＳ８１７までの処理は、入力バッファ制御部１０２のバッファに格納可能なタイル数（本例では４タイル）毎に行われる。
【００９７】
ステップＳ８０２では、入力ＤＭＡＣ部１０１より取得した４タイル分の画像データが、入力バッファ制御部１０２のバッファに格納されると、色空間変換部１０３から符号化部１０７までの一連の処理を通して、４つのタイルについての符号量が算出される。算出された各タイルの符号量は、信号ＣＯＤＥ＿ＬＥＮによって符号化部１０７からＳＲＡＭ制御部２０１に供給される。以下では、タイル０、タイル１、タイル２、タイル３の符号量として、それぞれ１１００、２７００、１８００、１３００バイトが算出された場合を例に説明する。
【００９８】
ステップＳ８０３にて、ＳＲＡＭ制御部２０１は、符号データの格納に使用するＳＲＡＭグループを選定する。最初の４タイル（タイル０〜３）の符号データを格納する際は、ＳＲＡＭ２０６−１〜２０６−４への符号データの格納は一度も行われていない状態である。したがって、ＳＲＡＭ制御部２０１は、最初の４タイル（タイル０〜３）の符号データを格納する際は、使用するＳＲＡＭグループとして最初のＳＲＡＭグループであるＳＲＡＭ２０６−１を選定する。
【００９９】
ステップＳ８０４にて、ＳＲＡＭ制御部２０１は、使用するＳＲＡＭグループについての空き容量を算出する。ＳＲＡＭ制御部２０１は、使用するＳＲＡＭグループのアドレス領域の情報をＳＲＡＭグループ管理部２０７から取得して、使用するＳＲＡＭグループの空き容量を求める。ＳＲＡＭ制御部２０１は、使用候補のＳＲＡＭグループがＳＲＡＭグループ１であるので、図６に示したＳＲＡＭグループ管理テーブルの例では、ＳＲＡＭグループ１のアドレス情報として、開始アドレス“０”及び終了アドレス“３９９９”を取得する。タイル０〜３の符号データを格納する際には、まだＳＲＡＭ２０６−１へは符号データが格納されていないため、ＳＲＡＭグループ１の空き容量として、ＳＲＡＭグループ１の容量４０００−格納アドレス領域０＝４０００バイトを算出する。
【０１００】
次に、ステップＳ８０５にて、ＳＲＡＭ制御部２０１は、選定されたＳＲＡＭグループに格納するタイルを選定し、選定したタイルの格納順序を決定する格納タイル選定処理を行う。このステップＳ８０５での格納タイル選定処理の詳細については後述する。
【０１０１】
ステップＳ８０６にて、ＳＲＡＭ制御部２０１は、ステップＳ８０５での格納タイル選定処理により選定されたタイルの符号データの書き込み先頭アドレスを算出する。このステップＳ８０６では、選定されたタイルの書き込み先頭アドレスの算出について、ステップＳ８０５において決定された格納順序に従って、第１の実施形態におけるステップＳ５０８と同様の処理を行う。書き込み先頭アドレスを算出する処理の詳細については、第１の実施形態におけるステップＳ５０８での処理と同様であるので説明は省略する。また、ステップＳ８０７〜Ｓ８１６の処理は、第１の実施形態におけるステップＳ５０９〜Ｓ５１８の処理と同様であるので説明は省略する。ただし、ステップＳ８１６において、ＳＲＡＭ２０６に格納されている全てのタイルについての処理が終了したとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、ステップＳ８１７へ進む。
【０１０２】
ステップＳ８１７にて、ＳＲＡＭ制御部２０１は、符号化処理対象の画像全体についての処理が終了したか否かを判断する。画像全体についての処理が終了したとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、処理を終了する。一方、画像全体についての処理が終了していないとＳＲＡＭ制御部２０１が判断した場合には（Ｎｏ）、ステップＳ８０２に戻り、残りの画像データについての処理をステップＳ８０２から行う。
【０１０３】
＜格納タイル選定処理＞
図８に示したステップＳ８０５での格納タイル選定処理について説明する。格納タイル選定処理では、ＳＲＡＭ制御部２０１は、選定されたＳＲＡＭグループに格納するタイルを選定して、選定したタイルの格納順序を決定する。図９は、第２の実施形態における格納タイル選定処理の例を示すフローチャートである。
【０１０４】
始めに、ステップＳ９０１にて、ＳＲＡＭ制御部２０１は、符号量の合計（以下、「符号量合計」とも称す。）を算出する際のタイル数（以下、「算出タイル数」とも称す。）を決定する。第２の実施形態では、選定されたＳＲＡＭグループのアドレス領域において、なるべく大きな領域を使用するようにタイルを選定するが、タイルの選定の際に、格納するタイルの組み合わせについて符号量合計を算出する。格納するタイルの組み合わせの数は非常に多いので、算出の回数を削減するために算出タイル数を初めに決定する。１回目は、タイルの組み合わせの数が一番少ない（組み合わせ数＝１）、入力バッファ制御部１０２のバッファに格納可能なタイル数が算出タイル数として決定される。この例では、入力バッファ制御部１０２のバッファに格納可能なタイル数は“４”であるため、算出タイル数として“４”が決定される。
【０１０５】
次に、ステップＳ９０２にて、ＳＲＡＭ制御部２０１は、決定した算出タイル数でのタイルの組み合わせの全てに対し、格納するタイルについての符号量合計を算出する。例えば、入力バッファ制御部１０２のバッファに格納される最初のタイルは、タイル０、タイル１、タイル２、及びタイル３の４つのタイルである。この４つのタイルが格納されている場合、算出タイル数＝４でのタイルの組み合わせは、「タイル０、タイル１、タイル２、タイル３」の１通りである。よって、ＳＲＡＭ制御部２０１は、「タイル０、タイル１、タイル２、タイル３」の組み合わせでの符号量合計として、１１００＋２７００＋１８００＋１３００＝６９００バイトを算出する。
【０１０６】
ステップＳ９０３にて、ＳＲＡＭ制御部２０１は、ステップＳ９０２にて符号量合計を算出したタイルの組み合わせの内で、符号量合計が最小となるタイルの組み合わせを選定する。算出タイル数＝４である場合には１通りの組み合わせだけであるので、ＳＲＡＭ制御部２０１は、「タイル０、タイル１、タイル２、タイル３」の組み合わせを、符号量合計が最小となるタイルの組み合わせとして選定する。
【０１０７】
ステップＳ９０４にて、ＳＲＡＭ制御部２０１は、ステップＳ９０３において選定した符号量合計が最小となるタイルの組み合わせでの符号量合計が、使用するＳＲＡＭグループの空き容量以下であるか否かを判断する。言い換えれば、ＳＲＡＭ制御部２０１は、算出タイル数でのタイルの組み合わせの内に、使用するＳＲＡＭグループに符号データを格納できるタイルの組み合わせが存在するか否かを判断する。
【０１０８】
符号量合計が最小となるタイルの組み合わせでの符号量合計が、使用するＳＲＡＭグループの空き容量以下であるとＳＲＡＭ制御部２０１が判断した場合には（Ｙｅｓ）、ステップＳ９０５へ進む。一方、符号量合計が最小となるタイルの組み合わせでの符号量合計が、使用するＳＲＡＭグループの空き容量より大きいとＳＲＡＭ制御部２０１が判断した場合には（Ｎｏ）、ステップＳ９０１へ進む。この例では、ステップＳ８０４において算出した使用するＳＲＡＭグループの空き容量＝４０００バイトに対して、算出タイル数＝４である場合の最小の符号量合計は６９００バイトである。よって、最小の符号量合計が使用するＳＲＡＭグループの空き容量よりも大きいので、ステップＳ９０１へ進む。
【０１０９】
２回目以降（ステップＳ９０４から戻った場合）のステップＳ９０１での処理では、ＳＲＡＭ制御部２０１は、前回の処理における算出タイル数から１を引いたタイル数を算出タイル数として決定する。よって、この例では、２回目の算出タイル数は、前回の算出タイル数４から１を減じた３となる。
【０１１０】
２回目のステップＳ９０２の処理では、ＳＲＡＭ制御部２０１は、算出タイル数が３の場合でのタイルの組み合わせの全てについて、格納するタイルについての符号量合計を算出する。算出タイル数＝３でのタイルの組み合わせは、「タイル０、タイル１、タイル２」、「タイル０、タイル１、タイル３」、「タイル０、タイル２、タイル３」、「タイル１、タイル２、タイル３」の４通りである。よって、各組み合わせでの符号量合計は、それぞれ、５６００、５１００、４２００、５８００バイトとなる。
【０１１１】
２回目のステップＳ９０３の処理では、ＳＲＡＭ制御部２０１は、前述した４通りの組み合わせの内で、符号量合計が最小となるタイルの組み合わせを選定する。４通りの組み合わせの内では、４２００バイトが最小の符号量合計となるので、ＳＲＡＭ制御部２０１は、「タイル０、タイル２、タイル３」の組み合わせを選定する。２回目のステップＳ９０４の処理では、使用するＳＲＡＭグループ１の空き容量＝４０００バイトに対して、算出タイル数＝３の場合の最小の符号量合計は、４２００バイトである。よって、符号量合計の最小が、使用するＳＲＡＭグループの空き容量よりも大きいので、ステップＳ９０１へ進む。
【０１１２】
３回目のステップＳ９０１の処理では、算出タイル数は、前回の算出タイル数３から１を減じた２となる。３回目のステップＳ９０２の処理では、ＳＲＡＭ制御部２０１は、算出タイル数が２の場合でのタイルの組み合わせの全てについて、格納するタイルについての符号量合計を算出する。算出タイル数＝２でタイルの組み合わせは、「タイル０、タイル１」、「タイル０、タイル２」、「タイル０、タイル３」、「タイル１、タイル２」、「タイル１、タイル３」、「タイル２、タイル３」の６通りである。よって、各組み合わせの符号量合計は、それぞれ、３８００、２９００、２４００、４５００、４０００、３１００バイトとなる。
【０１１３】
３回目のステップＳ９０３の処理では、ＳＲＡＭ制御部２０１は、前述した６通りの組み合わせの内で、符号量合計が最小となるタイルの組み合わせを選定する。６通りの組み合わせの内では、２４００バイトが最小の符号量合計となるので、ＳＲＡＭ制御部２０１は、「タイル０、タイル３」の組み合わせを選定する。３回目のステップＳ９０４の処理では、使用するＳＲＡＭグループ１の空き容量＝４０００バイトに対して、算出タイル数＝２の場合の最小の符号量合計は、２４００バイトである。よって、符号量合計の最小が、使用するＳＲＡＭグループの空き容量以下であるので、ステップＳ９０５へ進む。
【０１１４】
ステップＳ９０５にて、ＳＲＡＭ制御部２０１は、符号量合計が使用するＳＲＡＭグループの空き容量以下で、且つ最大となるタイルの組み合わせを、格納するタイルとして選定する。前述した６通りの組み合わせの中で、ＳＲＡＭグループの空き容量以下で、且つ最大となる符号量合計は、４０００バイトである。符号量合計が４０００バイトとなる組み合わせは「タイル１、タイル３」であるため、ＳＲＡＭ制御部２０１は、タイル１とタイル３をＳＲＡＭグループ１に格納するタイルとして選定する。ここで、本実施形態において、選定されたタイルの格納順序は、選定されたタイルの組み合わせの中より、入力バッファ制御部１０２のバッファに格納されたタイミングが早い順序となるよう制御するものとする。よって、タイルの格納順序は、タイル１、タイル３となる。そして、ステップＳ９０５での処理が終了すると、図８に示したステップＳ８０６へ進む。
【０１１５】
なお、タイルの格納順序は、これに限定されるものでなく、任意である。また、本実施形態では、使用するＳＲＡＭグループに符号データを格納できるタイルの組み合わせが存在するか否かを判断するために、ステップＳ９０３において符号量合計が最小となるタイルの組み合わせを選定している。しかし、使用するＳＲＡＭグループに符号データを格納できるタイルの組み合わせが存在するか否かが判断できればよいので、ステップＳ９０３では符号量合計の最小値を単に取得するようにしても良い。
【０１１６】
第２の実施形態によれば、符号化された画像データ（符号データ）を格納する際、タイルの符号データがＳＲＡＭグループの境界を跨がないアドレス領域に格納され、かつなるべく多くのアドレス領域に符号データが格納されるようアドレス制御を行う。例えば、図１０に示すように、タイル１及びタイル３の符号データが、ＳＲＡＭグループ１のアドレス領域７１１に格納され、タイル０及びタイル２の符号データが、ＳＲＡＭグループ２のアドレス領域７１２に格納される。
【０１１７】
ここで、タイル１とタイル３の符号量合計のバイト数は、ＳＲＡＭグループ１のアドレス領域７１１のバイト数と同じ４０００バイトであるため、ＳＲＡＭグループ１のアドレス領域７１１の空き容量は０バイトとなる。それに対して、図７に示したように、第１の実施形態においてＳＲＡＭグループ１のアドレス領域７１１に格納したタイル０とタイル１の符号量合計のバイト数は、１１００＋２７００＝３８００バイトである。したがって、図７に示した例では、ＳＲＡＭグループ１のアドレス領域７１１の空き容量は２００バイトとなる。
【０１１８】
つまり、第２の実施形態におけるアドレス制御の方が、第１の実施形態におけるアドレス制御より、ＳＲＡＭグループ１のアドレス領域７１１の空き容量が小さくなるように制御される。よって、第２の実施形態によれば、第１の実施形態と同様の効果が得られるとともに、ＳＲＡＭグループのアドレス領域について、なるべく多くのアドレス領域に格納するよう制御でき、符号データの格納に要するメモリ容量の低減を図ることができる。
【０１１９】
なお、前述した各実施形態では、レジュームスタンバイモード（ＲＳモード）を有するＳＲＡＭを使用する例を示したが、これに限定されるものではなく、ＲＳモードを有する他のメモリも適用可能である。
【０１２０】
（本発明の他の実施形態）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１２１】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１２２】
１００：画像処理装置  １０１：入力ＤＭＡＣ部  １０２：入力バッファ制御部  １０３：色空間変換部  １０４：サブサンプリング部  １０５：ＤＣＴ変換部  １０６：量子化部  １０７：符号化部  １０８：出力バッファ制御部  １０９：出力ＤＭＡＣ部  ２０１：ＳＲＡＭ制御部  ２０３：クロックゲーティングセル  ２０５：データ格納部  ２０６：ＳＲＡＭ  ２０７：ＳＲＡＭグループ管理部
【図１】
2020006605.tif 000003
【図２】
2020006605.tif 000004
【図３】
2020006605.tif 000005
【図４】
2020006605.tif 000006
【図５】
2020006605.tif 000007
【図６】
2020006605.tif 000008
【図７】
2020006605.tif 000009
【図８】
2020006605.tif 000010
【図９】
2020006605.tif 000011
【図１０】
2020006605.tif 000012
【図１１】
2020006605.tif 000013