(57)【要約】【課題】メモリにアクセスがあるタイミングのみ、メモリを通常動作状態にすることで、メモリの消費電力を最適に低減させる。【解決手段】本発明の画像処理装置は、消費電力の異なる複数の動作電力モードで動作可能なメモリと、メモリの動作電力モードを制御する制御手段とを有する機能モジュールと、少なくとも機能モジュールを含む複数のモジュールにより共用される共用メモリと、複数のモジュールと、共用メモリとを接続するバスと、バスを調停するバス調停手段とを備え、制御手段は、機能モジュールが共用メモリにアクセスする際に、機能モジュールとバス調停手段との通信を監視し、バスの使用可否に基づいて、メモリの動作電力モードを制御することを特徴とする。【選択図】図２
2019091175.tif 000002
【特許請求の範囲】
【請求項１】
消費電力の異なる複数の動作電力モードで動作可能なメモリと、前記メモリの動作電力モードを制御する制御手段とを有する機能モジュールと、
少なくとも前記機能モジュールを含む複数のモジュールにより共用される共用メモリと、
前記複数のモジュールと、前記共用メモリとを接続するバスと、
前記バスを調停するバス調停手段と
を備え、
前記制御手段は、前記機能モジュールが前記共用メモリにアクセスする際に、前記機能モジュールと前記バス調停手段との通信を監視し、前記バスの使用可否に基づいて、前記メモリの動作電力モードを制御することを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記バスの使用が可能であると判定した場合に、前記メモリの動作電力モードを低消費電力モードから通常モードに遷移させるように制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記機能モジュールは、
前記共用メモリからデータの読み込みを制御する読み込み制御手段と、
前記共用メモリへのデータの書き込みを制御する書き込み制御手段と
をさらに有し、
前記制御手段は、前記読み込み制御手段と前記バス調停手段との通信及び前記書き込み制御手段と前記バス調停手段との通信を監視し、前記読み込み制御手段又は前記書き込み制御手段が前記バス調停手段からのバスの使用を許可する信号を受信したことを検知することで、前記バスの使用が可能であると判定することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記機能モジュールは前記機能モジュールの所定の機能を実行する論理回路をさらに備え、
前記制御手段は前記論理回路の動作状態を判定する動作状態判定手段をさらに有し、
前記制御手段は、前記動作状態判定手段により前記論理回路が動作していないと判定されると、前記メモリの動作電力モードを前記通常モードから前記低消費電力モードに遷移させるように制御することを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記動作状態判定手段は、前記読み込み制御手段により読み込まれたデータの全てが前記書き込み制御手段により前記共用メモリに書き込まれたと判定した場合、又は前記機能モジュールがビジー状態に遷移したと判定した場合に、前記論理回路が動作していないと判定することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記論理回路は、画像処理を実行する画像処理回路であることを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記動作状態判定手段は、前記バスの使用が可能であると判定した場合に、前記論理回路の動作が開始されると判定することを特徴とする請求項４から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記機能モジュールのメモリにおける動作電力モードの遷移を、前記バスに接続された複数の機能モジュール間で制御する外部制御手段をさらに備え、
前記外部制御手段は、前記機能モジュールの１つから前記メモリの動作電力モードの遷移開始要求を受けると、前記バスに接続された複数の機能モジュールのうち、前記メモリの動作電力モードが遷移中である機能モジュールがないことを条件に、前記メモリの動作電力モードの遷移を許可するように制御することを特徴とする請求項２から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記機能モジュールのメモリにおける動作電力モードの遷移を、前記バスに接続された複数の機能モジュール間で制御する外部制御手段をさらに備え、
前記外部制御手段は、
同時に前記動作電力モードの遷移が可能なメモリサイズを保持する保持手段を有し、
前記機能モジュールの１つから前記メモリの動作電力モードの遷移開始要求を受けると、前記メモリサイズを超えないことを条件に、前記遷移開始要求をした機能モジュールのメモリの動作電力モードの遷移を許可するように制御することを特徴とする請求項２から７のいずれか１項に記載の情報処理装置。
【請求項１０】
前記読み込み制御手段は、前記メモリが前記通常モードに遷移したことを確認した後に、前記共用メモリに、データが受けられる状態になったことを示す信号を送信することを特徴とする請求項２から９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記機能モジュールにおいて、前記メモリが複数、実装されている場合に、前記制御手段と前記複数のメモリの各々とが、デイジーチェーン接続されていることを特徴とする請求項１から１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記デイジーチェーン接続されたメモリとメモリの間に、遅延素子が挿入されることを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
消費電力の異なる複数の動作電力モードで動作可能なメモリと、前記メモリの動作電力モードを制御する制御手段とを有する機能モジュールと、少なくとも前記機能モジュールを含む複数のモジュールにより共用される共用メモリと、前記複数のモジュールと、前記共用メモリとを接続するバスと、前記バスを調停するバス調停手段とを備えた情報処理装置の制御方法であって、
前記制御手段により、前記機能モジュールが前記共用メモリにアクセスする際に、前記機能モジュールと前記バス調停手段との通信を監視し、前記バスの使用可否に基づいて、前記メモリの動作電力モードを制御するステップを含むことを特徴とする情報処理装置の制御方法。
【請求項１４】
コンピュータを、請求項１から１２のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、消費電力を低減するために、メモリモジュールの電力を制御する情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、半導体集積回路の微細化が進んでおり、より多くの論理回路とメモリが１つのチップに集積されるようになってきている。また、これに関係して、チップ内のメモリ（例えば、ＳＲＡＭ（Static Random Access Memory））の容量が増大し、動作中のチップ全体の消費電力のうち、ＳＲＡＭの消費電力の占める割合が増加する傾向にある。そのため、ＳＲＡＭの消費電力を可能な限り低減させることが求められている。
【０００３】
但し、従来開発されてきたチップ内電源分離による電源遮断を、上述のチップに、同様に適用すると、電源遮断時にデータを保持し続けることができず、電源を遮断することができなかった。また、仮に電源を遮断した場合、電源を遮断してから復帰させた後に、ＳＲＡＭに格納されていたデータを再び、ＳＲＡＭに復元するために、多くの時間を要してしまうという課題があった。
【０００４】
そこで、このような課題に対応するため、ＳＲＡＭに格納されたデータを保持した状態で、ＳＲＡＭを低消費電力モードに遷移させる装置（即ち、ＳＲＡＭの消費電力を低減させる装置）が開示されている（特許文献１）。この特許文献１の装置では、ＳＲＡＭに動作電力モードを切り替えるための制御信号を入力するための入力ノードを具備させ、その制御信号に従って、低消費電力状態又は通常動作状態（以下、通常モード）に動作電力モードを切り替えている。なお、このような装置において、動作電力モードを切り替えるための制御信号は、一般にＣＰＵから制御されるように構成される。
【０００５】
また、上述のチップはデジタル複合機等の画像処理装置に搭載される場合があり、チップにはスキャンやプリント等の各種画像処理回路が具備され、さらに、その画像処理回路の各々はシステムバスに接続される。この画像処理回路では、内部に実装されるＳＲＡＭに各種画像処理係数用のテーブルや中間画像保持用のバッファを構成させ、アクセス可能な共用メモリからシステムバスを介してＳＲＡＭに画像データを読み込むことで、画像処理を実行している。
【０００６】
即ち、画像処理回路内部に実装されるＳＲＡＭにおいては、画像処理回路に画像データが入力されてからアクセス（ライト又はリード）が開始され、画像処理回路が画像データの出力を完了するとアクセスが停止される。そのため、画像処理回路において画像データを入出力している間だけ、ＳＲＡＭを通常モードで動作させることができれば、ＳＲＡＭの消費電力を最適に低減させることができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−１６４８２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
但し、システムバスを複数の画像処理回路で共有する場合、システムバスを使用することができる画像処理回路を、調停回路等により時分割で切り替える必要がある。そのため、場合によっては、画像処理回路が画像データを要求するタイミングと、実際に画像データが共用メモリから読み出され画像処理回路に供給されるタイミングにタイムラグ（時間差）が発生する。
【０００９】
ここで、ＳＲＡＭの消費電力を考慮すると、画像データが共用メモリから読み出される直前まで低消費電力状態にしておき、画像データを共用メモリから読み出すときに通常モードにすることが好ましい。しかしながら、従来の技術では、画像処理回路に画像データが供給されるタイミングを検知することができなかった。そのため、データが供給されるタイミングに合わせてＳＲＡＭの電力状態を制御することができず、適切な電力制御を行うことができなかった。即ち、ＳＲＡＭの消費電力を最適に低減させることができなかった。加えて、上述の特許文献１のような装置、即ち、動作電力モードを切り替えるための制御信号をＣＰＵにより制御する装置では、画像処理回路が動作しない期間に合わせたＳＲＡＭの電力制御を行うことができなかった。
【００１０】
本発明は、前記従来の問題に鑑みてなされたものであって、メモリにアクセスがあるタイミングのみ、メモリを通常動作状態にすることで、メモリの消費電力を最適に低減させることを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明の画像処理装置は、消費電力の異なる複数の動作電力モードで動作可能なメモリと、前記メモリの動作電力モードを制御する制御手段とを有する機能モジュールと、少なくとも前記機能モジュールを含む複数のモジュールにより共用される共用メモリと、前記複数のモジュールと、前記共用メモリとを接続するバスと、前記バスを調停するバス調停手段とを備え、前記制御手段は、前記機能モジュールが前記共用メモリにアクセスする際に、前記機能モジュールと前記バス調停手段との通信を監視し、前記バスの使用可否に基づいて、前記メモリの動作電力モードを制御することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、メモリにアクセスがあるタイミングのみ、メモリを通常動作状態にすることで、メモリの消費電力を最適に低減させることができる。
【図面の簡単な説明】
【００１３】
【図１】画像処理装置のブロック図である。
【図２】画像処理装置の画像処理部のブロック図である
【図３】ＳＲＡＭのブロック図である。
【図４】ＲＳ制御部の内部構成を示すブロック図である。
【図５】画像処理装置が１ページの画像を処理する場合の画像処理部の内部処理ステータスと、ＳＲＡＭの動作電力モードとの関係を示す図である。
【図６】図５のタイミングＡでの制御を説明するタイミングチャートである。
【図７】図５のタイミングＢでの制御を説明するタイミングチャートである。
【図８】図５のタイミングＣでの制御を説明するタイミングチャートである。
【図９】図５のタイミングＤでの制御を説明するタイミングチャートである。
【図１０】バス使用権判定部における制御の手順を示すフローチャートである。
【図１１】内部処理状態判定部における制御の手順を示すフローチャートである。
【図１２】画像処理装置のブロック図である。
【図１３】ＲＳ制御部の内部構成を示すブロック図である。
【図１４】内部処理状態判定部における制御の手順を示すフローチャートである。
【図１５】ＳＲＡＭ電力状態制御部における制御の手順を示すフローチャートである。
【発明を実施するための形態】
【００１４】
［第１実施形態］
以下、本発明の好適な実施の形態に関して、添付図面を参照しながら、詳細に説明する。なお、以下の実施形態は、本発明を限定するものではなく、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。また、以下では、本実施形態に係る画像処理装置を備えるものとして、スキャン、プリンタ、コピー等の複数の機能を有するＭＦＰ（Multi Function Printer）を例に説明する。
【００１５】
図１は、本実施形態に係る画像処理装置１００のブロック図である。ＣＰＵ１０１（Central Processing Unit）は、画像処理装置１００の制御部である。ＣＰＵ１０１は、画像処理部における設定、スキャナ部１０８から入力される画像データやプリンタ部１０６に出力する画像データの制御等を行う。また、ＣＰＵ１０１は、後述のＤＲＡＭ１１２に展開されたＯＳ（Operating System）やアプリケーションプログラムを実行する。
【００１６】
画像処理部（画像処理部Ａ１０２、画像処理部Ｂ１０３、画像処理部Ｃ１０４）は、各種画像処理を実行する回路を備え、ＣＰＵ１０１により設定、制御され、各種画像処理を実行する。画像処理部は、例えば、画像データの回転、変倍、色処理、トリミング、マスキング、２値変換、多値変換、白紙判定等の各種画像処理を個別に、又は組み合わせて実行する。
【００１７】
例えば、スキャナ部１０８によりスキャンされ、スキャナＩＦ部１０７により画像処理装置１００に読み込まれた画像データに対して、画像処理部は、補正、加工、編集等の画像処理を実行する。また、画像処理部は、プリンタ部１０６によりプリント出力（印刷）する上で、プリンタ部１０６に応じた画像処理、画像補正等の画像処理を実行する。
【００１８】
なお、画像処理部は、通常、ＭＦＰの有する機能毎に実装される。即ち、例えば、画像処理部Ａ１０２はスキャナ用画像処理部として、画像処理部Ｂ１０３はプリント用画像処理部として、また、画像処理部Ｃ１０４はその他の画像処理を実行する画像処理部として実装される。
【００１９】
プリンタＩＦ部１０５は画像出力デバイスであるプリンタ部１０６と接続するためのインタフェースであり、スキャナＩＦ部１０７は画像入力デバイスであるスキャナ部１０８と接続するためのインタフェースである。画像処理装置１００は、これらのデバイスを制御することで、画像データの読み取り処理やプリント出力処理を実行する。
【００２０】
ＲＯＭＩＦ部１０９は、ブートＲＯＭ（Read Only Memory）１１０にアクセスするためのインタフェースである。画像処理装置１００の電源が投入されると、ＣＰＵ１０１は、ＲＯＭＩＦ部１０９によりブートＲＯＭ１１０にアクセスすることで、ブートＲＯＭ１１０のブートプログラムを実行する。
【００２１】
ＤＲＡＭ ＩＦ部１１１は、ＤＲＡＭ（Dynamic Random Access Memory）１１２にアクセスするためのインタフェースである。ＤＲＡＭ ＩＦ部１１１は、共用メモリであるＤＲＡＭ１１２の設定や制御を行うためのレジスタを備えている。なお、このレジスタには、ＣＰＵ１０１からアクセスすることができる。
【００２２】
ネットワークＩＦ部１１３は、例えばＬＡＮ（Local Area Network）カード等で実現され、不図示のＬＡＮ等のネットワークに接続して外部装置との間でデバイス情報や画像データの入出力を行うインタフェースである。操作部ＩＦ部１１４は、ユーザにより操作部１１５において操作された操作指示の受付、及び操作結果の表示の制御等を行うインタフェースである。
【００２３】
バス調停部１１６は、システムバス１１７を介して行われるマスタとスレーブの通信を管理する。なお、バス調停部１１６は、バスブリッジとして実装されたり、ＤＲＡＭ ＩＦ部１１１に内蔵されたりもするが、本実施形態では、システムバスに接続される１モジュールとして取り扱い、図面（例えば、図１、図２等）に図示する。
【００２４】
バス調停部１１６は、複数のマスタがアクセスを要求している場合に、例えば、ラウンドロビン等の調停に関する所定のアルゴリズムに従って、時分割でバスを使用するマスタとスレーブの接続関係を切り替える。
【００２５】
ここで、例えば、ＤＲＡＭ１１２に対して、画像処理部Ａ１０２、画像処理部Ｂ１０３、画像処理部Ｃ１０４の順に、アクセス要求が発行されるとする。この場合、バス調停部１１６は、所定のアルゴリズムに従って、先ず、画像処理部Ａ１０２にバスの使用が可能であることを通知し、画像処理部Ａ１０２をマスタ、ＤＲＡＭ１１２をスレーブとして接続する。画像処理部Ａ１０２のアクセス処理が完了すると、バス調停部１１６は、所定のアルゴリズムに従って、次に、画像処理部Ｂ１０３にバスの使用が可能であることを通知し、画像処理部Ｂ１０３をマスタ、ＤＲＡＭ１１２をスレーブとして接続する。そして、画像処理部Ｂ１０３のアクセス処理が完了すると、バス調停部１１６は、所定のアルゴリズムに従って、画像処理部Ｃ１０４にバスの使用が可能であることを通知し、画像処理部Ｃ１０４をマスタ、ＤＲＡＭ１１２をスレーブとして接続する。
【００２６】
なお、画像処理部Ｃ１０４とＤＲＡＭ１１２との通信中において、画像処理部Ａ１０２及び画像処理部Ｂ１０３は、ＤＲＡＭ１１２に対して、新たなアクセス要求を発行することができる。また、その場合、バス調停部１１６は、画像処理部Ｃ１０４とＤＲＡＭ１１２の通信が終了すると、所定のアルゴリズムに従って、次に、例えば、画像処理部Ａ１０２をマスタ、ＤＲＡＭ１１２をスレーブとして通信を許可することを決定する（即ち、接続する）。このように、バス調停部１１６により、マスタとスレーブの関係が時分割で制御されることで、複数の機能モジュールが、１つのバスを共有できるように設計される。
【００２７】
なお、画像処理装置１００において、各モジュールは、システムバス１１７により通信可能なように接続される。また、本実施形態では、システムバス１１７として、一般的に用いられるＡＸＩ（Advanced eXtensible Interface）バスを例に説明する。
【００２８】
次に、図２を用いて、画像処理部に実装されるＳＲＡＭに関するＲＳモードへの遷移や通常モードへの復帰を制御する構成について、詳細に説明する。図２は、本実施形態に係る画像処理装置１００の画像処理部（画像処理部Ａ１０２）のブロック図である。なお、ＲＳ（Resume Standby）モードとは低消費電力モードのことであり、また、本実施形態において、特に断りがない限り、ＳＲＡＭに関するＲＳモードと通常モードを纏めて、「動作電力モード」という。
【００２９】
画像処理部Ａ１０２は、図２に示されるように、ＲｅａｄＤＭＡＣ２００、画像処理回路Ａ２０１、ＷｒｉｔｅＤＭＡＣ２０２、ＲＳ制御部２１０を備える。なお、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０とｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１は、システムバス１１７として構成される。
【００３０】
ＲｅａｄＤＭＡＣ２００は、画像処理部Ａ１０２において画像処理の適用対象とする画像データを、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０とＤＲＡＭ ＩＦ部１１１を介することにより、ＤＲＡＭ１１２から読み込む。即ち、ＲｅａｄＤＭＡＣ２００は、ｒｅａｄ ａｄｄｒｅｓｓ ｂｕｓの信号に基づいて、バス調停部１１６により調停された結果、バスの使用権を取得すると、データ転送開始のリクエストをｒｅａｄ ｄａｔａ ｂｕｓを介して送信し、画像データを取得する。なお、バス調停部１１６は、上述のように所定のプロトコルを用いることにより調停する。その他、ｒｅａｄ ａｄｄｒｅｓｓ ｂｕｓとｒｅａｄ ｄａｔａ ｂｕｓを纏めてｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０として図示する。また、ｒｅａｄ ａｄｄｒｅｓｓ ｂｕｓは、ａｒｖａｌｉｄ２１３、ａｒｒｅａｄｙ２１４、ａｒａｄｄｒ（不図示）を含む。
【００３１】
また、システムバス（ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０）における通信は、例えば、１回のバス使用権を取得する毎に、１６回分のデータを連続して転送するバースト転送により、所定の纏まった単位で行われる。そのため、ＲｅａｄＤＭＡＣ２００は、少なくとも１度に転送されるデータを保持するために、一時画像バッファとしてＳＲＡＭ２０３を実装している。
【００３２】
画像処理回路Ａ２０１は、画像処理パイプラインを構成する。なお、本実施形態では、図２に示されるように、画像処理を実行するモジュールを１つの画像処理回路Ａ２０１で構成させているが、複数の画像処理回路で構成させることもできる。また、画像処理回路Ａ２０１は、その回路内部に、画像処理に用いる画像処理係数のテーブルを保持するため、また、一時画像バッファとして用いるため、ＳＲＡＭ２０４を備える。
【００３３】
ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１とＤＲＡＭ ＩＦ部１１１を介して、ＤＲＡＭ１１２に画像処理部Ａ１０２で実行された画像処理の結果を書き込む。即ち、ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒｉｔｅ ａｄｄｒｅｓｓ ｂｕｓの信号に基づいて、バス調停部１１６が調停した結果、バスの使用権を取得すると、データ転送開始のリクエストをｗｒｉｔｅ ｄａｔａ ｂｕｓを介して送信し、画像データを転送する。なお、ここでの画像データは、画像処理が実行された画像データであり、また、バス調停部１１６は、上述のように所定のプロトコルを用いることにより調停する。その他、ｗｒｉｔｅ ａｄｄｒｅｓｓ ｂｕｓとｗｒｉｔｅ ｄａｔａ ｂｕｓを纏めてｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１として図示する。また、ｗｒｉｔｅ ａｄｄｒｅｓｓ ｂｕｓは、ａｗｖａｌｉｄ２１６、ａｗｒｅａｄｙ２１７、ａｗｒａｄｄｒ（不図示）を含む。
【００３４】
また、システムバス（ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１）における通信は、画像データの読み込みにおける通信と同様に、バースト転送により、所定の纏まった単位で行われる。そのため、ＷｒｉｔｅＤＭＡＣ２０２は、少なくとも１度に転送するデータを保持するために、一時画像バッファとしてＳＲＡＭ２０５を実装している。
【００３５】
ＲＳ制御部２１０は、Ｐ_ＲＳ_ｉｎ２０６として出力するＲＳ信号を制御することで、画像処理部Ａ１０２に実装されるＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）の電力状態を制御する。ＲＳ制御部２１０は、システムバス１１７の使用権の有無と、画像処理部Ａ１０２を構成する各回路の動作状態に基づいて、ＲＳ信号（Ｐ_ＲＳ_ｉｎ ２０６）の制御タイミングを決定する。
【００３６】
なお、ＲＳ信号は、Ｐ_ＲＳ_ｉｎ２０６として出力されると、Ｐ_ＲＳ_ａ２０７、Ｐ_ＲＳ_ｂ２０８とデイジーチェーン接続された信号線により伝送され、さらにＰ_ＲＳ_ｏｕｔ２０９として出力され、ＲＳ制御部２１０に入力される。即ち、ＲＳ制御部２１０と各ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）は、１つのＲＳ信号によりリング状に接続される。そして、このようにリング状に構成させることにより、ＲＳ信号を各ＳＲＡＭに入力するタイミングをＳＲＡＭ間で遅延させ、複数のＳＲＡＭの電源（電力）が同時に立ち上がることによるラッシュカレントのピークを抑えることができる。なお、ＲＳ制御部２１０の内部構成、また、ＲＳ制御部２１０におけるＲＳ信号の制御については、図４を用いて後述する。
【００３７】
その他、ＲｅａｄＤＭＡＣ２００と画像処理回路Ａ２０１とＷｒｉｔｅＤＭＡＣ２０２は、内部画像バスで接続される。内部画像バスは、有効データを示すｖａｌｉｄ信号と、画像データを転送するｄａｔａ信号と、画像データの転送先のモジュールがデータを受けれるか否かを示すｂｕｓｙ信号とで構成される。
【００３８】
なお、図２では、ｖａｌｉｄ信号とｄａｔａ信号を纏めて一つのバス（Ｉｍｄａｔａ_ｉｎ、Ｉｍｄａｔａ_ｏｕｔ）として図示し、ｂｕｓｙ信号（Ｉｍｂｕｓ_ｂｕｓｙ_ａ２２０、Ｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２）のみ独立して示している。ｂｕｓｙ信号がアサートされると、ｂｕｓｙ信号の受信側のモジュールは、データの転送ができなくなる。即ち、場合によっては、画像処理部Ａ１０２において画像処理を実行することができなくなる。
【００３９】
例えば、ＷｒｉｔｅＤＭＡＣ２０２がバスの使用権を取得できない状態で、一時バッファとして備えられるＳＲＡＭ２０５がフル状態になると、ＷｒｉｔｅＤＭＡＣ２０２はｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２をアサートする。そして、画像処理回路Ａ２０１は、アサートされたｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２を受信すると、ＷｒｉｔｅＤＭＡＣ２０２へのデータの転送が可能な状態にあっても、データの転送を中断する。なお、画像処理回路Ａ２０１は、この場合（即ち、アサートされたｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２を受信した場合）において、直ちに画像処理を停止し、ｉｍｂｕｓ_ｂｕｓｙ_ａ２２０をアサートするように制御することができる。また、この場合において、画像処理回路Ａ２０１は、画像処理を可能な限り実行し、これ以上、実行することができなくなったタイミングで、ｉｍｂｕｓ_ｂｕｓｙ_ａ２２０をアサートするように制御することもできる。
【００４０】
加えて、図２では、画像処理部Ａ１０２を構成する画像処理回路（ＲｅａｄＤＭＡＣ２００、画像処理回路Ａ２０１、ＷｒｉｔｅＤＭＡＣ２０２）の各々において、ＳＲＡＭ（ＳＲＡＭ２０３、２０４、２０５）を実装させる構成として説明した。しかしながら、ＲｅａｄＤＭＡＣ２００、画像処理回路Ａ２０１、ＷｒｉｔｅＤＭＡＣ２０２を含むパイプラインの構成要素のうちの少なくとも一つにＳＲＡＭが実装されていれば、本発明を適用することができる。
【００４１】
次に、図３を用いて、ＳＲＡＭ（ＳＲＡＭ２０３）の構成について説明する。図３は、ＳＲＡＭのブロック図である。図３に示されるように、ＳＲＡＭにおいて、入力信号としてＣＳ（Chip Select）２６１、ＷＥ（Write Enable）２６２、ａｄｄｒ２６３、ｄａｔａ_ｉｎ２６４、ＡＭ_ＣＬＫ２６６、及びＰ_ＲＳ_ｉｎ２０６が入力される。また、出力信号としてｄａｔａ_ｏｕｔ２６５、及びＰ_ＲＳ_ａ２０７が出力される。
【００４２】
制御部２５１は、ＣＳ２６１やＷＥ２６２からメモリ動作のタイミング信号を生成するタイミング制御回路を備える。また、制御部２５１は、ワードドライバ部２５２とカラム部２５３の電源をＰ_ＲＳ_ｉｎ２０６に従って制御し、Ｐ_ＲＳ_ｉｎ２０６がアサートされている場合に、ワードドライバ部２５２とカラム部２５３の電力を遮断する回路を備える。さらに、制御部２５１のＲＳ制御以外の部分についても、Ｐ_ＲＳ_ｉｎ２０６がアサートされている場合に、電源を遮断することが可能である。上述したように、Ｐ_ＲＳ_ｉｎ２０６は、制御部２５１やバッファセル（遅延素子）で遅延させてＰ_ＲＳ_ａ２０７として出力される。
【００４３】
ワードドライバ部２５２はａｄｄｒ信号をデコードして、メモリアレイ部２５４のどこの列（ロウ）を活性化させるかを決定するブロックである。ワードドライバ部２５２は、ＲＳモードにおいて、制御部２５１により電力が遮断される。また、カラム部２５３はａｄｄｒ２６３をデコードして、メモリアレイ部２５４のどこの行（カラム）を活性化させるかを決定するブロックである。カラム部２５３は、ＲＳモードにおいて、制御部２５１により電力が遮断される。なお、本実施形態では、ＲＳモードへの移行時に、ワードドライバ部２５２やカラム部２５３の電力遮断とクロック信号の発振とが重ならないようにすることで、メモリアレイ部２５４における電圧揺れを抑えている。
【００４４】
メモリアレイ部２５４は、スタティック型のメモリセルがマトリクス状に配置され、ワードドライバ部２５２とカラム部２５３で決定されるメモリセルにデータを保持する。なお、メモリアレイ部２５４は、ＲＳモードにおいても、通電された状態が維持される。そのため、メモリアレイ部２５４は、ＲＳモードにおいても、データを保持することができる。
【００４５】
図４は、ＲＳ制御部２１０の内部構成を示すブロック図である。ＲＳ制御部２１０は、図４に示されるように、内部処理状態判定部３００とバス使用権判定部３０１を備える。以下、ＲＳ制御部２１０を構成する各ブロック（内部処理状態判定部３００及びバス使用権判定部３０１）に関して、詳細に説明する。
【００４６】
内部処理状態判定部３００は、ＲｅａｄＤＭＡＣ２００、画像処理回路Ａ２０１、ＷｒｉｔｅＤＭＡＣ２０２の動作状態（内部処理ステータス）を判定する動作状態判定手段である。内部処理状態判定部３００は、入力される種々の信号と、自身で管理するステータス情報に基づいて、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）を制御することで、ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）の動作電力モードを制御する。
【００４７】
なお、内部処理状態判定部３００は、動作電力モードを制御する上で、画像処理部Ａ１０２がどのような処理状態にあるか、画像処理部Ａ１０２の内部処理ステータスを管理（判定）する。ここで、画像処理部Ａ１０２は、内部処理ステータスとして、少なくとも（１）データが無い状態、（２）処理状態、（３）ビジー状態を有しており、内部処理状態判定部３００は、（１）乃至（３）のいずれかの内部処理ステータスで判定する。
【００４８】
以下、内部処理状態判定部３００におけるＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）の制御、即ち、ＳＲＡＭを通常モードに復帰させる制御とＳＲＡＭをＲＳモードに遷移させる制御について説明する。
【００４９】
先ず、ＳＲＡＭを通常モードに復帰させる制御について説明する。内部処理状態判定部３００は、バス使用権判定部３０１からｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２を受信すると、画像処理部Ａ１０２の内部処理ステータスに応じて、ＳＲＡＭを通常モードに復帰させるように制御する。具体的には、内部処理状態判定部３００は、（１）データが無い状態で、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２を受信すると、画像処理を開始するため、ＲＳ信号をデアサートし、ＳＲＡＭを通常モードに遷移させる。
【００５０】
また、内部処理状態判定部３００は、バス使用権判定部３０１からｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３を受信すると、内部処理ステータスに応じて、ＳＲＡＭを通常モードに復帰させるように制御する。具体的には、内部処理状態判定部３００は、（３）ビジー状態でｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３を受信すると、データの書き込みを開始するため、ＲＳ信号をデアサートし、ＳＲＡＭを通常モードに遷移させる。
【００５１】
次に、ＳＲＡＭをＲＳモードに遷移させる制御について、（３）ビジー状態においてＲＳモードに遷移させる制御と、ＤＲＡＭ１１２に対する画像データの書き込み処理が終了した場合においてＲＳモードに遷移させる制御を例に取り、順に説明する。
【００５２】
内部処理状態判定部３００は、ｂｕｓｙ信号がアサートされている場合、（３）ビジー状態であり、画像処理が行われていないと判定する。なお、ここでのｂｕｓｙ信号とは、ｉｍｂｕｓ_ｂｕｓｙ_ａ２２０とｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２であり、いずれのｂｕｓｙ信号もアサートされている状態は、全ての画像処理回路において処理を実行することができない状態を示す。即ち、画像処理が実行されていない状態を示す。
【００５３】
この場合、内部処理状態判定部３００は、画像処理部Ａ１０２の内部処理ステータスに応じて、ＳＲＡＭをＲＳモードに遷移させるように制御する。具体的には、内部処理状態判定部３００は、（３）ビジー状態であり、画像処理が実行されていない状態と判定すると、Ｐ_ＲＳ_ｉｎ２０６をアサートし、ＳＲＡＭをＲＳモードに遷移させる。
【００５４】
続いて、ＤＲＡＭ１１２に対する画像データの書き込み処理が終了した場合に、ＳＲＡＭをＲＳモードに遷移させる制御について説明する。内部処理状態判定部３００は、画像処理回路Ａ２０１からＷｒｉｔｅＤＭＡＣ２０２に接続される画像バスＩｍｄａｔａ_ｏｕｔのｖａｌｉｄ信号であるＩｍｇ_ｖａｌｉｄ_ｏｕｔ２２３を参照する。そして、ＲｅａｄＤＭＡＣ２００により読み込まれた画像データの全てが、ＷｒｉｔｅＤＭＡＣ２０２に入力されたか否かを判定する。
【００５５】
なお、判定にあたり、内部処理状態判定部３００は、ＲｅａｄＤＭＡＣ２００により読み込まれた画像データが、ＷｒｉｔｅＤＭＡＣ２０２に入力されるときに、どの程度のデータ数になるかをリファレンスデータとして保持可能なように構成される。リファレンスデータは、設計時において固定値として設定することもできるが、画像サイズの変更処理等でデータ数が変動することを考慮し、内部処理状態判定部３００に所定のレジスタを実装することで、可変値として設定することもできる。
【００５６】
この場合、内部処理状態判定部３００は、ＷｒｉｔｅＤＭＡＣ２０２に入力されるデータの数をカウントし、そのカウントした値（カウント値）とリファレンスデータを比較する。そして、内部処理状態判定部３００は、カウント値がリファレンスデータと同一の値になると（一致すると）、ＲｅａｄＤＭＡＣ２００により読み込まれたデータの全てがＷｒｉｔｅＤＭＡＣ２０２に入力されたと判定する。
【００５７】
さらに、内部処理状態判定部３００は、その後において、ＷｒｉｔｅＤＭＡＣ２０２から送信されるｄｍａｃ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ２２４により、ＳＲＡＭ２０５の状態を判定する。即ち、ＳＲＡＭ２０５に画像データが格納されていないか否かを判定する。そして、内部処理状態判定部３００は、ＳＲＡＭ２０５に画像データが格納されておらず、画像処理が行われないと判定すると、Ｐ_ＲＳ_ｉｎ２０６をアサートして、ＳＲＡＭをＲＳモードに遷移させる。
【００５８】
なお、内部処理状態判定部３００は、ＲｅａｄＤＭＡＣ２００により読み込まれた画像データの全てがＷｒｉｔｅＤＭＡＣ２０２に入力されたと判定しても、新規にＲｅａｄＤＭＡＣ２００がバス使用権を取得した場合に、画像処理が継続されると判定する。
【００５９】
そして、このように判定すると、内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をアサートしないように制御する。即ち、ＳＲＡＭをＲＳモードに遷移させないように制御する。
【００６０】
また、この場合、内部処理状態判定部３００は、新規に画像データが追加されることをデータとして保持する。具体的には、リファレンスデータに新規に追加される画像データの数を加算してもよい。或いは、カウント値がリファレンスデータと同一の値になった後、新規にカウントを開始し、読み込んだ回数分、繰り返しカウントすると、ＲｅａｄＤＭＡＣ２００により読み込まれたデータの全てが、ＷｒｉｔｅＤＭＡＣ２０２に入力されたと判定してもよい。
【００６１】
その他、補足として、内部処理状態判定部３００は、ＲｅａｄＤＭＡＣ２００がバスの使用権を取得できたか否かを、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされることで判定することができる。そのため、内部処理状態判定部３００は、カウント値とリファレンスデータが同一の値になる以前に、ＲｅａｄＤＭＡＣ２００がバスの使用権を取得できたか否かを判定することができる。
【００６２】
ここで、バス使用権判定部３０１における判定処理について説明を補足する。バス使用権判定部３０１は、上述のように、システムバス（ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１）を参照し、ＲｅａｄＤＭＡＣ２００又はＷｒｉｔｅＤＭＡＣ２０２にバス使用権が割り当てられたことを判定する。即ち、バスの使用可否を判定する。
【００６３】
また、本実施形態では、システムバスとしてＡＸＩバスを用いるが、ここで、ＡＸＩバスのバスプロトコルで、バス使用権がどのように割り当てられるのかについて、その概要を説明する。なお、Ｒｅａｄ用のバスプロトコルとＷｒｉｔｅ用のバスプロトコルは、アクセス要求開始からデータ転送開始までは同様であることから、ここではＲｅａｄ用のプロトコルで説明する。
【００６４】
ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０のｒｅａｄ ａｄｄｒｅｓｓ ｂｕｓは、上述のように、ａｒｖａｌｉｄ２１３、ａｒｒｅａｄｙ２１４、及びａｒａｄｄｒを含む。ＡＸＩバスプロトコルにおいて、マスタ（ＲｅａｄＤＭＡＣ２００）は、スレーブ（ＤＲＡＭ１１２）に対して、ａｒｖａｌｉｄ２１３と併せて、アクセスするスレーブのアドレス情報をａｒａｄｄｒで送信する。バス調停部１１６は、その情報を受信し、アクセス権を割り当てることが可能であれば、該当するマスタ（ＲｅａｄＤＭＡＣ２００）のａｒｒｅａｄｙ２１４をアサートする。
【００６５】
バス使用権判定部３０１は、ｒｅａｄ ａｄｄｒｅｓｓ ｂｕｓを構成するａｒｖａｌｉｄ２１３とａｒｒｅａｄｙ２１４を参照（監視）し、両方の信号のアサート状態を検知する。そして、バス使用権判定部３０１は、両方の信号がアサート状態にあることを検知すると、ＲｅａｄＤＭＡＣ２００にバス使用権が割り当てられたと判定する。
【００６６】
即ち、スレーブへのアドレス転送が完了し、バス使用権判定部３０１がａｒｖａｌｉｄ２１３とａｒｒｅａｄｙ２１４の両方の信号に関してアサートされていることを検知すると、ＲｅａｄＤＭＡＣ２００においてデータ転送開始のリクエストが発行可能になる。
【００６７】
なお、Ｗｒｉｔｅについても同様に、バス使用権判定部３０１は、ｗｒｉｔｅ ａｄｄｒｅｓｓ ｂｕｓを構成するａｗｖａｌｉｄ２１６とａｗｒｅａｄｙ２１７を参照（監視）し、両方の信号のアサート状態を検知する。そして、バス使用権判定部３０１は、両方の信号がアサート状態にあることを検知すると、ＷｒｉｔｅＤＭＡＣ２０２にバス使用権が割り当てられたと判定する。
【００６８】
そして、バス使用権判定部３０１は、バス使用権が割り当てられたと判定すると、Ｒｅａｄの場合は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２をアサートする。また、Ｗｒｉｔｅの場合は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３をアサートする。これにより、内部処理状態判定部３００にバスの使用権が割り当てられたことが通知され、内部処理状態判定部３００は、画像処理部Ａ１０２において、画像データのＲｅａｄ及び画像処理、又はＷｒｉｔｅが開始されると判定する。
【００６９】
また、図４では、内部処理状態判定部３００がＲＳ信号を制御する仕様として説明したが、ＲＳ信号を制御する部分のみ分離し、内部処理状態判定部３００が処理中と判定しているときのみ、ＲＳ信号をデアサートするように構成させてもよい。
【００７０】
次に、図５を用いて、画像処理装置１００が１ページの画像を処理する場合の画像処理部Ａ１０２の内部処理ステータスと、ＳＲＡＭの動作電力モードとの関係を説明する。図５において、横軸は時間を示している。また、図５（ａ）は１ページ分の画像処理期間を、図５（ｂ）は１ページ分の画像処理期間の一部分の期間における画像処理部Ａ１０２の内部処理ステータスを示す。さらに、図５（ｃ）は、図５（ｂ）の画像処理部Ａ１０２の内部処理ステータスに対応するＳＲＡＭの動作電力モードを示す。
【００７１】
ここで、図５（ａ）及び図５（ｂ）に示されるように、１ページ分の画像処理を実行する上で、画像処理部Ａ１０２は、常に動作（処理）しているわけではない。実際、図５（ｂ）を局所的にみると、ＤＲＡＭ１１２と通信を繰り返しながら、その都度、画像処理を実行している。
【００７２】
これは、ＲｅａｄＤＭＡＣ２００において一度に読み込めるデータ量が制限されているからであり、そのため、画像処理部Ａ１０２は、画像データを部分的にＲｅａｄし、そのＲｅａｄした画像データに対する画像処理を実行し、さらに、それをＷｒｉｔｅする。そして、この一連の動作を繰り返し実行することで、１ページ分の画像データに対する画像処理を実行する。
【００７３】
但し、図２において上述したように、本実施形態において、システムバスを時分割で共有させることから、ＲｅａｄＤＭＡＣ２００やＷｒｉｔｅＤＭＡＣ２０２がバスアクセスを要求してから、データを転送するまでに待ち時間が発生する。
【００７４】
例えば、図５のタイミングＡ以前のような、ＲｅａｄＤＭＡＣ２００が画像処理の対象とする画像データをＤＲＡＭ１１２から読み出せず、画像処理部Ａ１０２のＳＲＡＭに画像データが無いために、画像処理が動作していない状態がある。また、タイミングＢからタイミングＣに示されるビジー状態のような、ＷｒｉｔｅＤＭＡＣ２０２がＤＲＡＭ１１２にデータを書き込めないために、画像処理部Ａ１０２内部にデータが溜まることになり、画像処理を進められない（動作できない）状態がある。さらに、画像処理部Ａ１０２は、画像処理部Ａ１０２に読み込んだ画像データの全てを処理し、ＤＲＡＭ１１２に書き出すと、タイミングＤに示されるような、処理中からデータ無しの状態、即ち、画像処理を動作できない状態になる。
【００７５】
このように、画像処理部Ａ１０２は、（１）データが無い状態、（２）処理状態、（３）ビジー状態の３つの内部処理ステータスを遷移させつつ、処理を実行する。また、その動作状態は、図４において上述したように、内部処理状態判定部３００により判定される。なお、図５のタイミングＡについては図６、タイミングＢについては図７、タイミングＣについては図８、タイミングＤについては図９を用いて後述する。
【００７６】
次に、図５（ｂ）と図５（ｃ）に関して、簡単に内容を補足する。画像処理部Ａ１０２において、内部処理ステータスが処理中（処理状態）以外の状態では、画像処理回路が動作していないことから、ＳＲＡＭへのアクセスが発生しない。そのため、画像処理部Ａ１０２が処理中以外の状態にある場合、画像処理部Ａ１０２は、図５（ｃ）に示されるように、ＳＲＡＭの動作電力モードをＲＳモードに遷移させることで、省電力化を図ることとしている。
【００７７】
なお、ＳＲＡＭの動作電力モードをＲＳモードから復帰させる場合、電力の供給やクロックの動作周波数を上昇させ、ＳＲＡＭが使用可能な状態になるまでに、通常、所定の遅延時間が発生する。そのため、図５（ｃ）に示されるように、ＲＳモードからの復帰、即ち、ＲＳモードと通常モードの間に、遷移時間を設定（挿入）している。
【００７８】
続いて、図６、図７、図８、図９のタイミングチャートを用いて、図５に示す各タイミング（タイミングＡ−Ｄ）で、画像処理部Ａ１０２において実行される制御を、各タイミングの順序に従って説明する。なお、図６、図７、図８、図９のタイミングチャートでは、その一例として、上述したバースト転送により、８回分のデータを連続して転送する場合について説明するが、連続して転送するデータの回数分は、８回分に限定されることはない。また、図６、図７、図８、図９のタイミングチャートの各々において、その最下段に、ＳＲＡＭの動作電力モードを図示しており、これにより、ＳＲＡＭの動作電力モードの遷移状況の把握を容易にしている。
【００７９】
図６は、図５のタイミングＡで、画像処理部Ａ１０２において実行される制御を示す図である。より詳細には、ＳＲＡＭの動作モードがＲＳモードである場合に、ＲｅａｄＤＭＡＣ２００がＤＲＡＭ１１２から画像データを取得し、画像処理を開始するために、ＳＲＡＭの動作電力モードを通常モードに復帰（遷移）させる場合のタイミングチャートである。なお、図６に示す各信号の一部に関して、その仕様（詳細）を図２において説明していることから、ここでは、その重複している内容（信号）に関して、説明を省略する。
【００８０】
以下、図６において、所定の時間（タイミング（ｔ０、ｔ１、ｔ２、ｔ３、ｔ４、ｔ５、ｔ６））に従って説明する。時間ｔ０において、ＲｅａｄＤＭＡＣ２００は、所望のデータが格納されているアドレスをアドレス情報としてａｒａｄｄｒにアサートすると同時に、ａｒｖａｌｉｄ２１３をアサートする。これにより、ＲｅａｄＤＭＡＣ２００は、バス使用権のリクエストを行う。なお、このタイミングでは、ＳＲＡＭの動作電力モードはＲＳモードである。また、ＲｅａｄＤＭＡＣ２００によりａｒａｄｄｒにアサートされるアドレス情報は、ＣＰＵ１０１により予め設定されたスタートアドレスに基づいて、ＲｅａｄＤＭＡＣ２００により決定され、ＤＲＡＭ１１２へのアクセスが終了するまで自動で更新される。
【００８１】
時間ｔ１は、画像処理部Ａ１０２にバス使用権が割り当てられる場合の最短時間として示される。但し、時間ｔ１では、ａｒｒｅａｄｙ２１４がアサートされておらず、システムバスが他のモジュールにより使用されていることから、バス使用権は割り当てられていない状態である。そのため、ＲｅａｄＤＭＡＣ２００は、読み出し動作を行うことができず、ＳＲＡＭの動作電力モードに関して、ＲＳモードが維持される。
【００８２】
その後、時間ｔ２において、バス使用権判定部３０１は、ａｒｖａｌｉｄ２１３とａｒｒｅａｄｙ２１４が同時にアサートされていることを検知する。バス使用権判定部３０１は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２をアサートすることで、内部処理状態判定部３００に、Ｒｅａｄに関するバス使用権が割り当てられたことを通知する。なお、この時間ｔ２において、ＳＲＡＭの動作電力モードは、未だＲＳモードが維持された状態である。
【００８３】
時間ｔ２でアサートされたｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２を受けると、時間ｔ３において、内部処理状態判定部３００で保持するレジスタ（不図示）において、処理中（処理状態）に変更する。さらに、内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をデアサートする。ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）はデアサートされると、直ちにＳＲＡＭ２０３に入力され、ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）において、動作電力モードの遷移が開始される。
【００８４】
なお、上述のように、ＳＲＡＭの動作電力モードを遷移（復帰）させるにあたり、電力の供給やクロックの動作周波数を上昇させた場合、それらの状態変化が回路動作に及ぼす影響が小さくなるまで、所定時間、経過させる必要がある。即ち、ＳＲＡＭが使用可能な状態になるまで、所定の遅延時間が発生する。また、この遅延時間（即ち、ＳＲＡＭが使用可能な状態になるまでの時間）は、ＳＲＡＭの設計仕様により異なるが、本実施形態では、その遅延時間を３０ｎｓｅｃとして説明する。
【００８５】
そして、遅延時間が経過すると、時間ｔ４において、デアサートしたＲＳ信号が、Ｐ_ＲＳ_ｉｎ２０６、Ｐ_ＲＳ_ａ２０７、Ｐ_ＲＳ_Ｂ２０８、Ｐ_ＲＳ_ｏｕｔ２０９と伝達され、所定のレイテンシを持って戻ってくることを検知する。
【００８６】
なお、本実施形態において、ＲＳ制御部２１０にＲＳ信号が入力されるタイミングで、デイジーチェーンを構成する全てのＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）が通常モードになっているように構成される。即ち、タイミングｔ４において、ＳＲＡＭは、ＲＳモードから通常モードに遷移されるように構成される。
【００８７】
また、内部処理状態判定部３００は、デアサートした信号を受信すると、ｒｄ_ｓｔａｒｔ２１１により、ＲｅａｄＤＭＡＣ２００にｒｒｅａｄｙ信号の出力が可能であることを通知し、データの読み出しが開始されるように制御する。
【００８８】
時間ｔ５において、ＲｅａｄＤＭＡＣ２００は、ｒｄ_ｓｔａｒｔ２１１信号による通知を受けて、ｒｒｅａｄｙ信号を出力する。ここで、ｒｒｅａｄｙ信号は、マスタがデータを受けられる状態になったことを示す信号であり、この信号をスレーブが受けると、有効データの出力を開始する。なお、ｒｒｅａｄｙ信号は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０を構成するｒｅａｄ ｄａｔａ ｂｕｓ信号の一つである。
【００８９】
そして、時間ｔ６より、ＲｅａｄＤＭＡＣ２００は、ＤＲＡＭ１１２からＤＲＡＭ ＩＦ部１１１とｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０を介して転送される有効データ（画像データ）を受信する。ＲｅａｄＤＭＡＣ２００は、ｒｖａｌｉｄ信号がアサートされている間に、ｒｄａｔａ信号にアサートされるデータを画像データとして取り込む。ＲｅａｄＤＭＡＣ２００は、画像データを取り込むとｒｌａｓｔ信号を参照し、その後に、ｒｌａｓｔ信号がバースト転送の最後のデータと共にアサートされると、画像データの受信を終了する。即ち、ＲｅａｄＤＭＡＣ２００は、ｒｒｅａｄｙ信号をデアサートする。なお、ｒｖａｌｉｄ信号、ｒｄａｔａ信号、ｒｌａｓｔ信号は、ｒｒｅａｄｙ信号と同様に、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ２３０を構成するｒｅａｄ ｄａｔａ ｂｕｓ信号の一つである。
【００９０】
以上のように、ＲＳ制御部２１０（内部処理状態判定部３００）は、ＲｅａｄＤＭＡＣ２００がＤＲＡＭ１１２からデータを取得する場合に、システムバスの使用状況に基づいてＲＳ信号を制御することで、ＳＲＡＭの動作電力モードを制御することができる。したがって、例えば、バスの使用権が割り当てられず、バスアクセスまでの待ち時間が発生した場合でも、データの転送を依頼する直前までＳＲＡＭをＲＳモードに制御し、バスの使用権が割り当てられると、通常モードに遷移させるように制御することもできる。
【００９１】
図７は、図５のタイミングＢで、画像処理部Ａ１０２において実行される制御を示す図である。より詳細には、ＷｒｉｔｅＤＭＡＣ２０２にバス使用権が割り当てられず、ＳＲＡＭ２０５がフル状態となり、さらに、パイプラインを構成する全てのモジュールがビジー状態となった場合に、ＳＲＡＭをＲＳモードに遷移させる場合のタイミングチャートである。
【００９２】
以下、図７において、所定の時間（タイミング（ｔ０、ｔ１、ｔ２、ｔ３））に従って説明する。時間ｔ０において、ＷｒｉｔｅＤＭＡＣ２０２は、ａｗａｄｄｒに所望のデータを格納するためのアドレス情報をアサートすると同時に、ａｗｖａｌｉｄ２１６をアサートする。これにより、ＷｒｉｔｅＤＭＡＣ２０２は、バス使用権のリクエストを行う。
【００９３】
但し、時間ｔ１において、ａｗｒｅａｄｙ２１７がアサートされず、バス使用権が割り当てられていない。また、時間ｔ０から時間ｔ１の間では、ＷｒｉｔｅＤＭＡＣ２０２に画像処理回路Ａ２０１から画像データが供給され続けている。即ち、ＷｒｉｔｅＤＭＡＣ２０２は、ＳＲＡＭ２０５に画像処理回路Ａ２０１から供給されたデータを書き込み続け、また、それらをＤＲＡＭ１１２に出力できない状態となっている。
【００９４】
そして、ＤＲＡＭ１１２にデータを書き込むことができないことにより、ＳＲＡＭ２０５がフル状態となると、ＷｒｉｔｅＤＭＡＣ２０２は、ｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２をアサートし、これ以上データを受け入れることができないことを通知する。即ち、ビジー状態であることを通知する。
【００９５】
時間ｔ２において、ｉｍｂｕｓ_ｂｕｓｙ_ａ２２０及びｉｍｂｕｓ_ｂｕｓｙ_ｗｄ２２２より、内部処理状態判定部３００は、ＲｅａｄＤＭＡＣ２００、画像処理回路Ａ２０１、及びＷｒｉｔｅＤＭＡＣ２０２の全てがビジー状態となったことを検知する。内部処理状態判定部３００は、全てのモジュールがビジー状態となったことを検知すると、内部処理ステータスを処理中（処理状態）からビジー状態に遷移させる。
【００９６】
これは、ＷｒｉｔｅＤＭＡＣ２０２がＤＲＡＭ１１２にデータを書き込めず、データがパイプラインに詰まった状態となり、ＤＲＡＭ１１２への書き込みが開始されない限り、画像処理を進めることができない状態を示す。また、時間ｔ２において、内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をアサートし、ＲＳモードへの遷移を開始するように制御する。
【００９７】
その後、時間ｔ３において、内部処理状態判定部３００は、時間ｔ２でアサートしたＲＳ信号がＰ_ＲＳ_ｏｕｔ２０９まで到達したことを検知する。なお、アサートされたＲＳ信号がＰ_ＲＳ_ｏｕｔ２０９まで到達すると、ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）の動作電力モードは、全てＲＳモードとなっている。
【００９８】
以上のように、ＲＳ制御部２１０は、ＷｒｉｔｅＤＭＡＣ２０２にバスの使用権が割り当てられず、ＳＲＡＭ２０５がフル状態となり、その後パイプラインを構成する全てのモジュールがビジー状態になると、ＳＲＡＭをＲＳモードに遷移させることができる。
【００９９】
図８は、図５のタイミングＣで、画像処理部Ａ１０２において実行される制御を示す図である。より詳細には、ＳＲＡＭの動作電力モードがＲＳモードである場合に、ＷｒｉｔｅＤＭＡＣ２０２がＤＲＡＭ１１２にデータの書き込みを開始するために、ＳＲＡＭの動作電力モードを通常モードに復帰（遷移）させる場合のタイミングチャートである。ＷｒｉｔｅＤＭＡＣ２０２がデータの書き込みを開始する場合、ＳＲＡＭの動作モードがＲＳモードであるとき、画像処理部Ａ１０２のパイプライン全体はビジー状態にあるので、内部処理ステータスもビジー状態となっている。
【０１００】
以下、図８において、所定の時間（タイミング（ｔ０、ｔ１、ｔ２、ｔ３、ｔ４、ｔ５））に従って説明する。時間ｔ０において、ＷｒｉｔｅＤＭＡＣ２０２にはバスの使用権が割り当てられておらず、ａｗｖａｌｉｄ２１６はアサートされた状態になっている。なお、内部処理状態判定部の内部処理ステータスはビジー状態となっており、また、ＳＲＡＭの動作電力モードはＲＳモードとなっている。
【０１０１】
そして、時間ｔ１において、バス使用権判定部３０１は、ａｗｖａｌｉｄ２１６とａｗｒｅａｄｙ２１７が同時にアサートされていることを検知すると、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３をアサートする。これにより、バス使用権判定部３０１は、内部処理状態判定部３００にバス使用権が割り当てられたことを通知する。
【０１０２】
時間ｔ１でアサートされたｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３を受けると、時間ｔ２において、内部処理状態判定部３００で保持するレジスタ（不図示）において、処理中（処理状態）に変更する。さらに、内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をデアサートする。ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）はデアサートされると、直ちにＳＲＡＭ２０３に入力され、ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）において、動作電力モードの遷移が開始される。なお、上述のように、ＳＲＡＭの動作電力モードを遷移（復帰）させるにあたり、所定の遅延時間が発生し、ここでは、その遅延時間を３０ｎｓｅｃとして説明する。
【０１０３】
そして、遅延時間が経過すると、時間ｔ３において、デアサートしたＲＳ信号が、Ｐ_ＲＳ_ｉｎ２０６、Ｐ_ＲＳ_ａ２０７、Ｐ_ＲＳ_Ｂ２０８、Ｐ_ＲＳ_ｏｕｔ２０９と伝達され、所定のレイテンシを持って戻ってくることを検知する。
【０１０４】
なお、本実施形態において、ＲＳ制御部２１０にＲＳ信号が入力されるタイミングで、デイジーチェーンを構成する全てのＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）が通常モードになっているように構成される。即ち、タイミングｔ３において、ＳＲＡＭは、ＲＳモードから通常モードに遷移されるように構成される。
【０１０５】
また、内部処理状態判定部３００は、デアサートした信号を受信すると、ｗｒ_ｓｔａｒｔ２１２により、ＷｒｉｔｅＤＭＡＣ２０２にｗｒｅａｄｙ信号の出力が可能であることを通知し、データの書き込みが開始されるように制御する。
【０１０６】
時間ｔ４において、ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒ_ｓｔａｒｔ２１２信号による通知を受けて、ｗｖａｌｉｄ信号を出力する。ここで、ｗｖａｌｉｄ信号は、マスタがデータを出力できる状態になったことを示す信号であり、この信号の出力に合わせて、データをｗｄａｔａにアサートする。なお、ｗｖａｌｉｄ信号は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ２３１を構成するｗｒｉｔｅ ｄａｔａ ｂｕｓ信号の一つである。
【０１０７】
さらに、時間ｔ５において、ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒｅａｄｙ信号を受信し、１つ目のデータの転送を完了すると、次に転送（送信）するデータをｗｄａｔａにアサートする。そして、バースト転送の最後のデータと同時に、ｗｌａｓｔ信号をアサートすることで、データ転送を終了する。
【０１０８】
以上のように、ＲＳ制御部２１０（内部処理状態判定部３００）は、ＷｒｉｔｅＤＭＡＣ２０２がＤＲＡＭ１１２にデータを書き込む場合に、システムバスの使用状況に基づいてＲＳ信号を制御することで、ＳＲＡＭの動作電力モードを制御することができる。
【０１０９】
図９は、図５のタイミングＤで、画像処理部Ａ１０２において実行される制御を示す図である。より詳細には、ＲｅａｄＤＭＡＣ２００により読み込まれたデータの全てが処理され、さらに、ＷｒｉｔｅＤＭＡＣ２０２によりＤＲＡＭ１１２への出力が完了した場合に、ＳＲＡＭをＲＳモードに遷移させる場合のタイミングチャートである。即ち、画像処理部Ａ１０２の内部において、処理の対象とするデータが無くなった場合に、ＳＲＡＭをＲＳモードに遷移させる場合のタイミングチャートである。
【０１１０】
以下、図９において、所定の時間（タイミング（ｔ０、ｔ１、ｔ２、ｔ３、ｔ４、ｔ５））に従って説明する。時間ｔ０において、ＷｒｉｔｅＤＭＡＣ２０２は、ＤＲＡＭ１１２にデータを出力するために、ａｗｖａｌｉｄ２１６をアサートし、また、データの書き込む場所（即ち、ＤＲＡＭ１１２のアドレス）をａｗａｄｄｒにアサートする。なお、ここで、内部処理状態判定部３００の内部処理ステータスは処理中となっており、また、ＳＲＡＭの動作電力モードは通常モードとなっている。
【０１１１】
時間ｔ１において、バス使用権判定部３０１は、ａｗｖａｌｉｄ２１６とａｗｒｅａｄｙ２１７が同時にアサートされていることを検知する。また、時間ｔ１において、ＷｒｉｔｅＤＭＡＣ２０２は、直ちに書き込み要求を開始するため、ｗｖａｌｉｄをアサートすると共に、ＤＲＡＭ１１２に書き込むデータをｗｄａｔａにアサートする。
【０１１２】
その後、時間ｔ２において、ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒｅａｄｙを受信すると、転送した有効データ（画像データ）が書き込まれたことを認識（検知）し、次の有効データをｗｄａｔａにアサートする。ＷｒｉｔｅＤＭＡＣ２０２は、このように、画像データのアサートを、書き込み終了タイミングとなる時間ｔ３まで継続して実行する。
【０１１３】
そして、時間ｔ３になると、ＷｒｉｔｅＤＭＡＣ２０２は、最後の画像データをｗｄａｔａにアサートすると共に、最後の画像データであることを示すｗｌａｓｔ信号をアサートする。スレーブ（ＤＲＡＭ１１２）は、画像データと併せて、ｗｌａｓｔ信号を受信すると、画像処理部Ａ１０２からのバースト転送が終了したものと認識（検知）する。
【０１１４】
最後の画像データの転送が完了すると（即ち、時間ｔ４において）、ＷｒｉｔｅＤＭＡＣ２０２は、ｗｒｉｔｅ ｄａｔａ ｂｕｓの各々の信号をデアサートする。このように、ｗｒｅａｄｙとｗｖａｌｉｄとｗｌａｓｔが同時にアサート状態にある場合に、最後の画像データが転送されたと判定する。
【０１１５】
また、内部処理状態判定部３００は、時間ｔ３においてアサートされたｄｍａｃ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ２２４を検知すると、時間ｔ４においてＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をアサートする。これにより、ＳＲＡＭの動作電力モードに関して、ＲＳモードへの遷移が開始される。
【０１１６】
その後、時間ｔ５において、内部処理状態判定部３００は、時間ｔ４でアサートしたＲＳ信号がＰ_ＲＳ_ｏｕｔ２０９まで到達したことを検知する。なお、アサートされたＲＳ信号がＰ_ＲＳ_ｏｕｔ２０９まで到達すると、ＳＲＡＭ（ＳＲＡＭ２０３、ＳＲＡＭ２０４、ＳＲＡＭ２０５）の動作電力モードは、全てＲＳモードとなっている。
【０１１７】
以上のように、ＲＳ制御部２１０は、ＲｅａｄＤＭＡＣ２００により読み込まれたデータの全てが処理され、さらに、ＷｒｉｔｅＤＭＡＣ２０２により出力が完了すると、ＳＲＡＭをＲＳモードに遷移させることができる。
【０１１８】
図１０は、バス使用権判定部３０１における制御の手順を示すフローチャートである。バス使用権判定部３０１は、ａｒｖａｌｉｄ２１３とａｒｒｅａｄｙ２１４がアサート状態となっているか否かを判定する（Ｓ９０１）。
【０１１９】
そして、上述の図６の時間ｔ２の状態に示されるように、アサート状態となっていると判定すると（Ｓ９０１ Ｙｅｓ）、バス使用権判定部３０１は、処理をステップＳ９０３に移行する。また、アサート状態となっていないと判定すると（Ｓ９０１ Ｎｏ）、バス使用権判定部３０１は、処理をステップＳ９０２に移行する。
【０１２０】
ステップＳ９０２において、バス使用権判定部３０１は、ａｗｖａｌｉｄ２１６とａｗｒｅａｄｙ２１７がアサート状態となっているか否かを判定する。そして、上述の図８、図９の時間ｔ１の状態で示されるように、アサート状態となっていると判定すると（Ｓ９０２ Ｙｅｓ）、バス使用権判定部３０１は、処理をステップＳ９０４に移行する。また、アサート状態となっていないと判定すると（Ｓ９０２ Ｎｏ）、バス使用権判定部３０１は、処理をステップＳ９０１に返す。
【０１２１】
ステップＳ９０３において、バス使用権判定部３０１は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２をアサートし、内部処理状態判定部３００にｒｅａｄに関するバス使用権が割り当てられたことを通知する。なお、このステップＳ９０３における処理は、上述の図６の時間ｔ２において実行される処理である。
【０１２２】
また、ステップＳ９０４において、バス使用権判定部３０１は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３をアサートし、内部処理状態判定部３００にｗｒｉｔｅに関するバス使用権が割り当てられたことを通知する。なお、このステップＳ９０４における処理は、上述の図８の時間ｔ１において実行される処理である。
【０１２３】
図１１は、内部処理状態判定部３００における制御の手順を示すフローチャートである。内部処理状態判定部３００は、その内部で管理する内部処理ステータスに関して、（１）データが無い状態を示しているか否かを判定する（Ｓ１００１）。そして、内部処理状態判定部３００は、（１）データが無い状態であると判定すると処理をステップＳ１００２に移行し、（１）データが無い状態ではないと判定すると処理をステップＳ１００４に移行する。なお、ここで、（１）データが無い状態とは、上述の図６のｔ３までの状態として示される。
【０１２４】
ステップＳ１００２において、内部処理状態判定部３００は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２を確認する。そして、ステップＳ１００３において、内部処理状態判定部３００は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされていると判定すると（Ｓ１００３ Ｙｅｓ）、処理をステップＳ１００７に移行させる。また、内部処理状態判定部３００は、アサートされていないと判定すると（Ｓ１００３ Ｎｏ）、処理をステップＳ１００２に返す。なお、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされている場合は、上述の図６の時間ｔ３の状態として示され、アサートされていない場合は、上述の図６の時間ｔ３までの状態として示される。
【０１２５】
また、ステップＳ１００４において、内部処理状態判定部３００は、内部処理ステータスが（３）ビジー状態であるか否かを判定する。なお、（３）ビジー状態とは、上述のように、画像処理部Ａ１０２を構成する全てのモジュールがビジー状態であることを示す。内部処理状態判定部３００は、（３）ビジー状態であると判定すると（Ｓ１００４ Ｙｅｓ）、処理をステップＳ１００５に移行させる。また、内部処理状態判定部３００は、（３）ビジー状態ではないと判定すると（Ｓ１００４ Ｎｏ）、（２）処理状態と判定し、処理をステップＳ１０１３に移行させる。なお、ここでの処理は、上述の図７の時間ｔ２の状態として示される。
【０１２６】
ステップＳ１００５において、内部処理状態判定部３００は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３を確認する。そして、ステップＳ１００６において、内部処理状態判定部３００は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３アサートされていると判定すると（Ｓ１００６ Ｙｅｓ）、処理をステップＳ１００７に移行させる。また、内部処理状態判定部３００は、アサートされていないと判定すると（Ｓ１００６ Ｎｏ）、処理をステップＳ１００５に返す。なお、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３がアサートされている場合は、上述の図８の時間ｔ２の状態として示される。
【０１２７】
ステップＳ１００７において、内部処理状態判定部３００は、内部処理ステータスを（２）処理状態（処理中）に変更する。なお、ここでの処理は、例えば、上述の図６の時間ｔ３において実行される。次に、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２、又はｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３がアサートされたことを受けて、ＲＳ信号をデアサートする（Ｓ１００８）。即ち、内部処理状態判定部３００は、Ｐ_ＲＳ_ｉｎ２０６をデアサートする。また、ここでの処理は、上述の図６の時間ｔ３、また、上述の図８の時間ｔ２で実行される。
【０１２８】
次に、内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｏｕｔ２０９）のデアサートを検知（受信）する（Ｓ１００９）。なお、ここでの処理は、上述の図６の時間ｔ４で実行される。
【０１２９】
内部処理状態判定部３００は、Ｐ_ＲＳ_ｏｕｔ２０９のデアサートを検知すると、ステップＳ１０１０の処理を実行する。即ち、内部処理状態判定部３００は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２、又はｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３のいずれによりＲＳ信号がデアサートされたのか判定する。
【０１３０】
内部処理状態判定部３００は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２により、ＲＳ信号がデアサートされたと判定すると、処理をステップＳ１０１１に移行させる。また、内部処理状態判定部３００は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３によりＲＳ信号がデアサートされたと判定すると、処理をステップＳ１０１２に移行させる。
【０１３１】
内部処理状態判定部３００は、ステップＳ１００９におけるＲＳ信号（Ｐ_ＲＳ_ｏｕｔ２０９）のデアサートを受けて、ＲｅａｄＤＭＡＣ２００にｒｒｅａｄｙの出力を許可するために、ｒｄ_ｓｔａｒｔ２１１をアサートする（Ｓ１０１１）。なお、この処理は、上述の図６の時間ｔ４において実行され、また、この処理が実行されると、内部処理状態判定部３００は、処理をステップＳ１０１３に移行させる。
【０１３２】
また、内部処理状態判定部３００は、ステップＳ１００９におけるＲＳ信号（Ｐ_ＲＳ_ｏｕｔ２０９）のデアサートを受けて、ＷｒｉｔｅＤＭＡＣ２０２にｗｖａｌｉｄの出力を許可するために、ｗｒ_ｓｔａｒｔ２１２をアサートする（Ｓ１０１２）。なお、この処理は、上述の図８の時間ｔ３において実行され、また、この処理が実行されると、内部処理状態判定部３００は、処理をステップＳ１０１３に移行させる。
【０１３３】
ステップＳ１０１３では、内部処理ステータスが（２）処理状態であることから、内部処理状態判定部３００は、全てのデータがＷｒｉｔｅＤＭＡＣ２０２に格納されたか否かを判定する。なお、ステップＳ１００１、ステップＳ１００４において判定された結果として、又は、ステップＳ１０１１、若しくはステップＳ１０１２を実行した結果として、実行される。また、ステップＳ１０１３では、図４において上述した判定方法により判定する。
【０１３４】
内部処理状態判定部３００は、全てのデータがＷｒｉｔｅＤＭＡＣ２０２に格納されたと判定すると（Ｓ１０１３ Ｙｅｓ）、処理をステップＳ１０１４に移行させる。また、内部処理状態判定部３００は、全てのデータがＷｒｉｔｅＤＭＡＣ２０２に格納されていないと判定すると（Ｓ１０１３ Ｎｏ）、処理をステップＳ１０１６に移行させる。なお、この処理は、上述の図９の時間ｔ３以前に実行させる。
【０１３５】
次に、内部処理状態判定部３００は、ＷｒｉｔｅＤＭＡＣ２０２に格納されたデータが全て出力されたか否かを判定する（Ｓ１０１４）。内部処理状態判定部３００は、データが全て出力されたと判定すると（Ｓ１０１４ Ｙｅｓ）、処理をステップＳ１０１５に移行させる。また、内部処理状態判定部３００は、データが全て出力されていないと判定すると（Ｓ１０１４ Ｎｏ）、処理をステップＳ１０１４に返し、ステップＳ１０１４における処理を繰り返し、実行する。なお、この処理（より正確には、ＷｒｉｔｅＤＭＡＣ２０２に格納されたデータが全て出力されたと判定される処理）は、上述の図９の時間ｔ４で示される。
【０１３６】
そして、内部処理状態判定部３００は、データが全て出力されたと判定すると、バス使用権判定部３０１により、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされているか否かを判定する（Ｓ１０１５）。内部処理状態判定部３００は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされていると判定すると、新規にデータが読み込まれ、（２）処理状態を継続させるため、処理をステップＳ１０１３に返す。また、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされていないと判定すると、処理をステップＳ１０１７に移行する。
【０１３７】
ステップＳ１０１７において、内部処理状態判定部３００は、全てのデータがＷｒｉｔｅＤＭＡＣ２０２に格納され、さらに出力されたという検知結果を受けて、内部処理ステータスを（１）データが無い状態に変更する。なお、この処理は、上述の図９の時間ｔ４で実行される。
【０１３８】
また、上述のステップＳ１０１３において、全てのデータがＷｒｉｔｅＤＭＡＣ２０２に格納されていないと判定すると（Ｓ１０１３ Ｎｏ）、内部処理状態判定部３００は、ｂｕｓｙ信号の全てがアサートされているか否かを判定する（Ｓ１０１６）。即ち、内部処理状態判定部３００は、画像処理が実行できない状態になっているか否かを判定する。
【０１３９】
内部処理状態判定部３００は、ｂｕｓｙ信号の全てがアサートされていると判定すると（Ｓ１０１６ Ｙｅｓ）、即ち、画像処理を実行できないと判定すると、処理をステップＳ１０１８に移行する。また、ｂｕｓｙ信号の全てがアサートされていないと判定すると（Ｓ１０１６ Ｎｏ）、即ち、画像処理を実行できると判定すると、処理をステップＳ１０１３に返す。なお、画像処理を実行できない状態になっているという判定は、例えば、上述の図７の時間ｔ２で実行される。
【０１４０】
内部処理状態判定部３００は、ｂｕｓｙ信号の全てがアサートされていることを受けて、内部処理ステータスを（３）ビジー状態に変更する（Ｓ１０１８）。なお、この処理は、上述の図７の時間ｔ２で実行される。
【０１４１】
そして、ステップＳ１０１７、又はステップＳ１０１８を実行すると、即ち、内部処理ステータスが（１）データが無い状態、又は（３）ビジー状態に変更されると、内部処理状態判定部３００は、ＲＳ信号をデアサートする（Ｓ１０１９）。これにより、内部処理状態判定部３００は、画像処理部Ａ１０２のＳＲＡＭをＲＳモードに遷移させる。なお、この処理は、上述の図７の時間ｔ２、図９の時間ｔ４で実行される。
【０１４２】
内部処理状態判定部３００は、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）をデアサートすると、ＲＳ信号（Ｐ_ＲＳ_ｏｕｔ２０９）のデアサートを検知する（Ｓ１０２０）。なお、この処理は、上述の図７の時間ｔ３、図９の時間ｔ５で実行される。また、このステップＳ１０２０における処理で、図１１に示す処理は終了する。
【０１４３】
以上のように、システムバスの使用状況を判定し、バスアクセスの直前に、ＳＲＡＭの動作電力モードを低消費電力モードであるＲＳモードから通常モードに遷移（復帰）させるように制御することができる。また、画像処理中において、画像処理回路の停止期間（即ち、画像処理回路が動作せず、ＳＲＡＭへのアクセスが発生しない期間）を判定し、その停止期間に動作電力モードをＲＳモードに遷移させるように制御することができる。このように動作させることで、より低消費電力な画像処理装置を実現することができる。
【０１４４】
［第２実施形態］
第１実施形態では、画像処理部の内部に、内部処理状態判定部３００とバス使用権判定部３０１を実装し、バスのアクセス時に通常モードに復帰させ、かつ必要なタイミングでＲＳモードに遷移させることで、低消費電力で画像処理を実行できることを示した。
【０１４５】
そこで、第２実施形態では、ＳＲＡＭを備える機能モジュールに関して、全体として動作電力モードの遷移を制御することで、動作電力モードの遷移時に発生する電源の揺らぎや、ラッシュカレントの影響を受けないようにする。
【０１４６】
図１２は、第２実施形態に係る画像処理装置１００のブロック図である。第２実施形態に係る画像処理装置１００は、第１実施形態とは異なり、ＳＲＡＭ電力状態制御部１１００、及びＳＲＡＭ電力状態制御部１１００と画像処理装置１００を構成する各機能モジュールとを接続するＳＲＡＭ制御バス１１０１をさらに備える。
【０１４７】
ＳＲＡＭ電力状態制御部１１００は、ＳＲＡＭ制御バス１１０１を介して、ＳＲＡＭを備えた各機能モジュールから、ＳＲＡＭの動作電力モードを遷移させるためのリクエスト（即ち、遷移開始要求）を受けられるように構成される。ＳＲＡＭ電力状態制御部１１００は、そのリクエストを受けると、動作電力モードが遷移中のＳＲＡＭの有無を確認（判定）し、動作電力モードの遷移が発生していない場合に、動作電力モードの遷移の許可をその該当する機能モジュールに発行する。即ち、ＳＲＡＭ電力状態制御部１１００は、ある機能モジュールからリクエストを受けると、その機能モジュール（ＳＲＡＭ）における動作電力モードの遷移を、複数の機能モジュール間で調整することで、外部より制御する外部制御手段として機能する。
【０１４８】
なお、図１２において、画像処理部Ａ１０２、画像処理部Ｂ１０３、画像処理部Ｃ１０４は、その内部に画像処理用のＳＲＡＭを、また、プリンタＩＦ部１０５、スキャナＩＦ部１０７、操作部ＩＦ部１１４も、一時バッファ用のＳＲＡＭを備える。また、ＳＲＡＭを備える各機能モジュールは、ＳＲＡＭ電力状態制御部１１００とＳＲＡＭ制御バス１１０１（後述のｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ｒｅｑ、及びｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ａｃｋ）で接続される。
【０１４９】
次に、図１３を用いて、ＳＲＡＭ制御バス１１０１を構成する信号について説明する。図１３は、ＲＳ制御部２１０の内部構成を示すブロック図であり、ここでは、図４との差分について説明する。
【０１５０】
上述のように、ＳＲＡＭ電力状態制御部１１００は、画像処理部に備えられるＳＲＡＭを制御することができるように、ＳＲＡＭ制御バス１１０１により、画像処理部の内部処理状態判定部と接続される。即ち、ＳＲＡＭ電力状態制御部１１００は、ＳＲＡＭ制御バス１１０１を構成するｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００と、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ａｃｋ１２０１により、内部処理状態判定部Ａ１２０４と接続される。また、ＳＲＡＭ電力状態制御部１１００は、ＳＲＡＭ制御バス１１０１を構成するｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ｒｅｑ１２０２と、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ａｃｋ１２０３により、内部処理状態判定部Ｂ１２０５と接続される。
【０１５１】
このように、第２実施形態では、第１実施形態の内部処理状態判定部３００にＳＲＡＭ制御バス１１０１（ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ｒｅｑ、及びｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ａｃｋ）を付加し、ＳＲＡＭの動作電力モードを制御する。具体的な制御として、先ず、内部処理状態判定部は、ＲＳ信号を制御する前に、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ｒｅｑを介して、ＳＲＡＭ電力状態制御部１１００に、動作電力モードを遷移させる上で、その許可を取得するためのリクエストを送信する。次に、内部処理状態判定部は、ＳＲＡＭ電力状態制御部１１００から、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ ａｃｋを介して、動作電力モードの遷移させる上での許可を取得すると、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）を制御する。
【０１５２】
図１４は、内部処理状態判定部Ａ１２０４における制御の手順を示すフローチャートである。なお、内部処理状態判定部Ａ１２０４に関して、第１実施形態の内部処理状態判定部３００にＳＲＡＭ制御バス１１０１が付加されること以外、同様であることから、図１４では、図１１のフローチャートに、本実施形態に関連する処理を追加した。
【０１５３】
具体的には、図１１のフローチャートにおいて、内部ステータス情報を変更し、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）を制御する直前に、ＳＲＡＭ電力状態制御部１１００にリクエストを送信する制御が処理として追加されている。即ち、図１４において、ステップＳ１００４、Ｓ１０１７、Ｓ１０１８の前に、処理Ｂ（図１４（ｂ））を実行している。また、図１４に示す処理は、内部処理状態判定部Ｂ１２０５においても同様である。
【０１５４】
続いて、処理Ｂについて説明する。内部処理状態判定部Ａ１２０４は、ｒｅａｄ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０２がアサートされていると判定すると、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００をアサートする（Ｓ１３０１）。即ち、内部処理状態判定部Ａ１２０４は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００をアサートすることで、ＳＲＡＭ電力状態制御部１１００に、動作電力モードを遷移させる上で、その許可を取得するためのリクエストを送信する。なお、内部処理状態判定部Ａ１２０４は、ｗｒｉｔｅ ｓｙｓｔｅｍ ｂｕｓ ｃｏｎｄｉｔｉｏｎ ｓｉｇｎａｌ３０３がアサートされていると判定した場合も、同様に、ＳＲＡＭ電力状態制御部１１００にリクエストを送信する。
【０１５５】
内部処理状態判定部Ａ１２０４は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００をアサートすると、ＳＲＡＭ電力状態制御部１１００によりｓｒａｍ ｓｔａｔ ｃｈａｎｇｅＡ ａｃｋ１２０１がアサートされたか否かを判定する（Ｓ１３０２）。内部処理状態判定部Ａ１２０４は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅＡ ａｃｋ１２０１がアサートされていれば、処理Ｂを終了させ、次の処理に移行し、アサートされていなければ、ステップＳ１３０２をアサートされるまで繰り返し実行する。なお、処理Ｂを終了すると、内部処理ステータスの変更と、各々の状態に応じて、ＲＳ信号（Ｐ_ＲＳ_ｉｎ２０６）の制御が実行され、ＳＲＡＭの動作電力モードの遷移が実行される。
【０１５６】
次に、図１５のフローチャートを用いて、ＳＲＡＭ電力状態制御部１１００における制御の手順を説明する。ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００がアサートされているか否かを判定する（Ｓ１４０１）。ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００がアサートされている場合、処理をステップＳ１４０２に移行させ、また、アサートされていない場合、処理をステップＳ１４０４に移行させる。
【０１５７】
ステップＳ１４０２において、ＳＲＡＭ電力状態制御部１１００は、動作電力モードの変更をリクエストした画像処理部Ａ１０２以外の機能モジュールで、動作電力モードの遷移が行われているか否かを判定する。このように判定することで、同時に、動作電力モードを遷移するＳＲＡＭの量を制御することが可能となり、ラッシュカレント等による回路の誤動作を防止することができる。
【０１５８】
なお、ステップＳ１４０２において、動作電力モードの遷移が行われているＳＲＡＭがある場合、そのＳＲＡＭの動作電力モードの遷移が終了するまで、動作電力モードの遷移が行われている機能モジュール（ＳＲＡＭ）があるか否か判定する。そして、ＳＲＡＭ電力状態制御部１１００は、動作電力モードの遷移が行われているＳＲＡＭがないと判定すると（Ｓ１４０２ Ｎｏ）、処理をステップＳ１４０３に移行させる。
【０１５９】
ステップＳ１４０３において、ＳＲＡＭ電力状態制御部１１００は、リクエストを送信した画像処理部Ａ１０２に対して、動作電力モードの遷移が可能と判定し、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅＡ ａｃｋ１２０１をアサートする。
【０１６０】
ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅＡ ａｃｋ１２０１がアサートされると、ＳＲＡＭの動作電力モードの遷移を開始し、その後、動作電力モードの遷移が終了するか否かを判定する（Ｓ１４０７）。なお、各機能モジュールのＳＲＡＭに関して、動作電力モードの遷移が終了するまでに必要とされる時間は、各機能モジュールに搭載されるＳＲＡＭのサイズによって異なるため、設計時において予め設定することができる。また、ＳＲＡＭ電力状態制御部１１００は、ＳＲＡＭの動作電力モードの遷移が終了するまで、ステップＳ１４０７の処理を繰り返し実行する。
【０１６１】
また、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ａ ｒｅｑ１２００がアサートされていないと、ステップＳ１４０４において、ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ｒｅｑ１２０２がアサートされたか否かを判定する。ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ｒｅｑ１２０２がアサートされている場合、処理をステップＳ１４０５に移行させ、また、アサートされていなければ、図１５に示す処理を終了させる。
【０１６２】
ステップＳ１４０５において、ＳＲＡＭ電力状態制御部１１００は、ステップＳ１４０２と同様に、動作電力モードの遷移をリクエストした画像処理部Ｂ１０３以外の機能モジュールで、動作電力モードの遷移が行われているか否かを判定する。
【０１６３】
なお、ステップＳ１４０５において、動作電力モードの遷移が行われているＳＲＡＭがある場合、そのＳＲＡＭの動作電力モードの遷移が終了するまで、動作電力モードの遷移が行われている機能モジュール（ＳＲＡＭ）があるか否か判定する。そして、ＳＲＡＭ電力状態制御部１１００は、動作電力モードの遷移が行われているＳＲＡＭがないと判定すると（Ｓ１４０５ Ｎｏ）、処理をステップＳ１４０６に移行させる。
【０１６４】
ステップＳ１４０６において、ＳＲＡＭ電力状態制御部１１００は、リクエストを送信した画像処理部Ｂ１０３に対して、動作電力モードの遷移が可能と判定し、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ａｃｋ１２０３をアサートする。
【０１６５】
ＳＲＡＭ電力状態制御部１１００は、ｓｒａｍ ｓｔａｔ ｃｈａｎｇｅ Ｂ ａｃｋ１２０３がアサートされると、ＳＲＡＭの動作電力モードの遷移を開始し、その後、動作電力モードの遷移が終了するか否かを判定する（Ｓ１４０７）。ＳＲＡＭ電力状態制御部１１００は、ＳＲＡＭの動作電力モードの遷移が終了するまで、ステップＳ１４０７の処理を繰り返し実行し、ＳＲＡＭの動作電力モードの遷移が終了すると、図１５に示す処理を終了する。
【０１６６】
以上のように、画像処理装置１００全体の動作電力モードを参照しながらＲＳ信号を制御することで、動作電力モードの遷移時に発生する電源の揺らぎや、ラッシュカレントの影響を受けずに、ＳＲＡＭの動作電力モードを適切に制御することができる。
【０１６７】
なお、本実施形態では、動作モードが遷移することのみをトリガーとして制御する仕様として示したが、動作モードが通常モードへの遷移なのか、ＲＳモードへの遷移なのかを判定した上で、制御する仕様としてもよい。また、動作電力モードの遷移対象とする機能モジュールを、画像処理装置１００全体で１つになるように制御したが、電源の揺らぎや、ラッシュカレントの影響が発生しない範囲で、２つ以上の機能モジュールを遷移させるように制御してもよい。例えば、動作電力モードを遷移させることが可能なＳＲＡＭの数（即ち、メモリサイズ）を予め保持しておき、そのメモリサイズを超えないことを条件に、ＳＲＡＭの動作電力モードの遷移を許可するように制御してもよい。
【０１６８】
［その他の実施形態］
なお、本発明の目的は、以下の処理を実行することによっても達成することができる。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。また、この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１６９】
その他、上述の実施形態では、情報処理装置が画像処理装置である場合を、その一例として説明した。しかしながら、消費電力の異なる複数の動作電力モードで動作可能なメモリを有する機能モジュール、共用メモリ、及びバス調停部がバスに接続される構成を備えた装置であれば、同様に制御することで、本発明を適用することができる。
【符号の説明】
【０１７０】
１０２  画像処理部Ａ
１１２  ＤＲＡＭ
１１６  バス調停部
１１７  システムバス
２０３  ＳＲＡＭ
２１０  ＲＳ制御部
【図１】
2019091175.tif 000003
【図２】
2019091175.tif 000004
【図３】
2019091175.tif 000005
【図４】
2019091175.tif 000006
【図５】
2019091175.tif 000007
【図６】
2019091175.tif 000008
【図７】
2019091175.tif 000009
【図８】
2019091175.tif 000010
【図９】
2019091175.tif 000011
【図１０】
2019091175.tif 000012
【図１１】
2019091175.tif 000013
【図１２】
2019091175.tif 000014
【図１３】
2019091175.tif 000015
【図１４】
2019091175.tif 000016
【図１５】
2019091175.tif 000017