(57)【特許請求の範囲】
【請求項１】
通信装置であって、
記憶している情報を保持する記憶保持処理を、外部から指示を受けることにより実行する通常リフレッシュ状態と、前記記憶保持処理を、前記外部から指示を受け付けることなく実行するセルフリフレッシュ状態のうちいずれかの状態で動作する所定のメモリと、
電力を供給する電源と、
前記所定のメモリにアクセスすることで、ネットワークを介して受信する情報及び前記所定のメモリが記憶する情報に基づく処理を実行する第１プロセッサーと、前記所定のメモリにアクセスすることで、前記第１プロセッサーが実行する処理と異なり、且つ前記所定のメモリが記憶する情報に基づく処理を実行する第２プロセッサーと、を含む複数のプロセッサーと、を有し、
前記第１プロセッサー及び前記第２プロセッサーは、前記電源から電力の供給を受け付け、前記所定のメモリにアクセスすることで処理を実行する第１の状態と、前記電源から電力の供給を受け付けるが前記所定のメモリにアクセスせずいずれの処理も実行しない第２の状態と、前記電源から電力の供給を受け付けない第３の状態と、を含む複数の状態のうちいずれかであり、
前記通信装置がネットワークに接続している場合、前記第１プロセッサーは、前記第３の状態とならず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態であり、前記第２プロセッサーは、前記第３の状態とならず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態であり、
前記通信装置がネットワークに接続していない場合、前記第１プロセッサーは、前記複数の状態のうちいずれかの状態であり、前記第２プロセッサーは、前記複数の状態のうちいずれかの状態であり、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作し、
前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作し、
前記所定のメモリが前記通常リフレッシュ状態で動作している場合の前記通信装置の消費電力は、前記所定のメモリが前記セルフリフレッシュ状態で動作している場合の前記通信装置の消費電力より大きいことを特徴とする通信装置。
【請求項２】
前記第１プロセッサーが実行する処理は、ネットワーク上に流れるパケットの処理、ネットワークを介してデータを受信する処理のうち少なくとも１つであることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記第２プロセッサーが実行する処理は、ジョブの処理、前記通信装置の設定を行う処理、前記通信装置が備える表示手段に情報を表示させる処理のうち少なくとも１つであることを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記複数のプロセッサーのうち少なくとも１つは、前記通信装置の備える記録剤によって、前記通信装置の備える記録媒体上に画像を印刷する印刷手段を制御することを特徴とする請求項１乃至３のいずれか１項に記載の通信装置。
【請求項５】
前記複数のプロセッサーにクロックを供給するクロック生成部をさらに有し、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記第１プロセッサー及び前記第２プロセッサーに第１の周波数のクロックが供給され、前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記第１プロセッサー及び前記第２プロセッサーに前記第１の周波数より低い第２の周波数のクロックが供給されることを特徴とする請求項１乃至４のいずれか１項に記載の通信装置。
【請求項６】
前記複数のプロセッサーは、さらに、前記所定のメモリにアクセスすることで、前記通信装置が有する表示部に表示させる画面を制御する処理を実行する第３プロセッサーを含み、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー、前記第２プロセッサー及び前記第３プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作し、前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサー及び前記第３プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作することを特徴とする請求項１乃至５のいずれか１項に記載の通信装置。
【請求項７】
前記所定のメモリの物理層を制御し、前記電源から電力の供給を受け付けるＰＨＹをさらに有し、
前記ＰＨＹは、前記電源から電力の供給を受け付けるＯＮ状態と、前記電源から電力の供給を受け付けないＯＦＦ状態のうちいずれかであり、
前記通信装置がネットワークに接続している場合、前記ＰＨＹは、前記ＯＦＦ状態とならず、前記ＯＮ状態であり、前記通信装置がネットワークに接続していない場合、前記ＰＨＹは、前記ＯＮ状態及び前記ＯＦＦ状態のうちいずれかの状態である、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記ＰＨＹは、前記ＯＮ状態であり、前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記ＰＨＹは、前記ＯＦＦ状態であることを特徴とする請求項１乃至６のいずれか１項に記載の通信装置。
【請求項８】
前記通信装置は、ネットワークとの接続が有効な有効状態と、ネットワークとの接続が無効な無効状態のうちいずれかの状態で動作し、
前記第１プロセッサーは、処理の要求を受け付けておらず、且つ前記通信装置が前記有効状態で動作していることに基づいて、前記第１の状態から前記第２の状態に遷移し、処理の要求を受け付けておらず、且つ前記通信装置が前記無効状態で動作していることに基づいて、前記第１の状態から前記第３の状態に遷移することを特徴とする請求項１乃至７のいずれか１項に記載の通信装置。
【請求項９】
前記所定のメモリはＤｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙであることを特徴とする請求項１乃至８のいずれか１項に記載の通信装置。
【請求項１０】
記憶している情報を保持する記憶保持処理を、外部から指示を受けることにより実行する通常リフレッシュ状態と、前記記憶保持処理を、前記外部から指示を受け付けることなく実行するセルフリフレッシュ状態のうちいずれかの状態で動作する所定のメモリと、
電力を供給する電源と、
前記所定のメモリにアクセスすることで、ネットワークを介して受信する情報及び前記所定のメモリが記憶する情報に基づく処理を実行する第１プロセッサーと、前記所定のメモリにアクセスすることで、前記第１プロセッサーが実行する処理と異なり、且つ前記所定のメモリが記憶する情報に基づく処理を実行する第２プロセッサーと、を含む複数のプロセッサーと、を有し、
前記第１プロセッサー及び前記第２プロセッサーは、前記電源から電力の供給を受け付け、前記所定のメモリにアクセスすることで処理を実行する第１の状態と、前記電源から電力の供給を受け付けるが前記所定のメモリにアクセスせずいずれの処理も実行しない第２の状態と、前記電源から電力の供給を受け付けない第３の状態と、を含む複数の状態のうちいずれかである通信装置の制御方法であって、
前記通信装置がネットワークに接続している場合、前記第１プロセッサーを、前記第３の状態にせず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態にし、前記第２プロセッサーを、前記第３の状態にせず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態にするよう制御する第１制御ステップと、
前記通信装置がネットワークに接続していない場合、前記第１プロセッサーを、前記複数の状態のうちいずれかの状態にし、前記第２プロセッサーを、前記複数の状態のうちいずれかの状態にするよう制御する第２制御ステップと、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリを前記セルフリフレッシュ状態で動作するよう制御する第３制御ステップと、
前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリを前記セルフリフレッシュ状態で動作するよう制御する第４制御ステップと、を有し、
前記所定のメモリが前記通常リフレッシュ状態で動作している場合の前記通信装置の消費電力は、前記所定のメモリが前記セルフリフレッシュ状態で動作している場合の前記通信装置の消費電力より大きいことを特徴とする制御方法。
【請求項１１】
記憶している情報を保持する記憶保持処理を、外部から指示を受けることにより実行する通常リフレッシュ状態と、前記記憶保持処理を、前記外部から指示を受け付けることなく実行するセルフリフレッシュ状態のうちいずれかの状態で動作する所定のメモリと、
電力を供給する電源と、
前記所定のメモリにアクセスすることで、ネットワークを介して受信する情報及び前記所定のメモリが記憶する情報に基づく処理を実行する第１プロセッサーと、前記所定のメモリにアクセスすることで、前記第１プロセッサーが実行する処理と異なり、且つ前記所定のメモリが記憶する情報に基づく処理を実行する第２プロセッサーと、を含む複数のプロセッサーと、を有し、
前記第１プロセッサー及び前記第２プロセッサーは、前記電源から電力の供給を受け付け、前記所定のメモリにアクセスすることで処理を実行する第１の状態と、前記電源から電力の供給を受け付けるが前記所定のメモリにアクセスせずいずれの処理も実行しない第２の状態と、前記電源から電力の供給を受け付けない第３の状態と、を含む複数の状態のうちいずれかである通信装置のコンピュータに、
前記通信装置がネットワークに接続している場合、前記第１プロセッサーを、前記第３の状態にせず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態にし、前記第２プロセッサーを、前記第３の状態にせず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態にするよう制御する第１制御ステップと、
前記通信装置がネットワークに接続していない場合、前記第１プロセッサーを、前記複数の状態のうちいずれかの状態にし、前記第２プロセッサーを、前記複数の状態のうちいずれかの状態にするよう制御する第２制御ステップと、
前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリを前記セルフリフレッシュ状態で動作するよう制御する第３制御ステップと、
前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリを前記セルフリフレッシュ状態で動作するよう制御する第４制御ステップと、を実行させ、
前記所定のメモリが前記通常リフレッシュ状態で動作している場合の前記通信装置の消費電力は、前記所定のメモリが前記セルフリフレッシュ状態で動作している場合の前記通信装置の消費電力より大きいことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、制御方法及びプログラムに関する。
【背景技術】
【０００２】
近年、有線ネットワークまたは無線ネットワークによる接続によりＰＣ、デジタルカメラ、タブレット、スマートホン等の外部装置と通信する通信装置が知られている。ネットワークと接続している通信装置が備えるＣＰＵは、ネットワーク上のパケットの処理等のネットワーク制御を実行する必要がある。通信装置は、ＣＰＵの処理速度をあげるために、高速にアクセスが可能な揮発性メモリに、ＣＰＵが動作するためのプログラムを記憶させている。揮発性メモリの代表的なものとしてＤＲＡＭがある。ＤＲＡＭは、記憶しているデータを保持するために、リフレッシュ処理の実行が必要である。なお、ＤＲＡＭは、外部からのアクセスを受けずにＤＲＡＭ自身でリフレッシュ処理を行う状態であるセルフリフレッシュ状態に遷移することで、消費電力を低減することができる。
【０００３】
しかしながら、ＤＲＡＭがセルフリフレッシュ状態である場合、ＣＰＵは、ＤＲＡＭに記憶されたプログラムを用いることができない。そのため、ＤＲＡＭがセルフリフレッシュ状態であると、ＣＰＵは、通信装置がネットワークと接続している場合でも、ネットワーク制御を実行できないという課題がある。
【０００４】
そこで、特許文献１には、第１の省エネ状態に遷移している通信装置がネットワークに接続している場合は、ＤＲＡＭがセルフリフレッシュ状態となる第２の省エネ状態に通信装置が遷移することを抑制する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−１３４６２８
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、通信装置がネットワークに接続している、又はネットワークとの接続が有効に設定されておりネットワークと接続する可能性がある状況においても、ＤＲＡＭをセルフリフレッシュ状態に遷移させ、消費電力の削減を図ることが可能な場合がある。例えば、通信装置がネットワークと接続している又はネットワークとの接続が有効に設定されているが、ネットワーク制御は行われていない場合等、ＤＲＡＭにアクセスが行われていない場合は、ＤＲＡＭはセルフリフレッシュ状態となっても良い。特許文献１の技術では、ＤＲＡＭの状態をセルフリフレッシュ状態に遷移させない制御に関して、ＤＲＡＭに対するアクセスの有無を考慮していない。そのため、特許文献１の技術では、ＤＲＡＭの状態がセルフリフレッシュ状態に遷移しても良い場合であっても、セルフリフレッシュ状態への遷移が抑制されてしまうという課題がある。
【０００７】
そこで、本発明の目的は、ネットワークと接続している又はネットワークとの接続が有効に設定されている場合でも、記憶手段の状態を遷移させる処理を適切に行うことができる通信装置を提供することにある。
【課題を解決するための手段】
【０００８】
そこで、上記目的を達成するために、本発明の通信装置は、記憶している情報を保持する記憶保持処理を、外部から指示を受けることにより実行する通常リフレッシュ状態と、前記記憶保持処理を、前記外部から指示を受け付けることなく実行するセルフリフレッシュ状態のうちいずれかの状態で動作する所定のメモリと、電力を供給する電源と、前記所定のメモリにアクセスすることで、ネットワークを介して受信する情報及び前記所定のメモリが記憶する情報に基づく処理を実行する第１プロセッサーと、前記所定のメモリにアクセスすることで、前記第１プロセッサーが実行する処理と異なり、且つ前記所定のメモリが記憶する情報に基づく処理を実行する第２プロセッサーと、を含む複数のプロセッサーと、を有し、前記第１プロセッサー及び前記第２プロセッサーは、前記電源から電力の供給を受け付け、前記所定のメモリにアクセスすることで処理を実行する第１の状態と、前記電源から電力の供給を受け付けるが前記所定のメモリにアクセスせずいずれの処理も実行しない第２の状態と、前記電源から電力の供給を受け付けない第３の状態と、を含む複数の状態のうちいずれかであり、前記通信装置がネットワークに接続している場合、前記第１プロセッサーは、前記第３の状態とならず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態であり、前記第２プロセッサーは、前記第３の状態とならず、前記第１の状態及び前記第２の状態を含む複数の状態のうちいずれかの状態であり、前記通信装置がネットワークに接続していない場合、前記第１プロセッサーは、前記複数の状態のうちいずれかの状態であり、前記第２プロセッサーは、前記複数の状態のうちいずれかの状態であり、前記通信装置がネットワークと接続している場合は、前記第１プロセッサー及び前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作し、前記通信装置がネットワークと接続していない場合は、前記第１プロセッサーが第３の状態であり、且つ前記第２プロセッサーが前記第２の状態である状態で、前記所定のメモリが前記セルフリフレッシュ状態で動作し、前記所定のメモリが前記通常リフレッシュ状態で動作している場合の前記通信装置の消費電力は、前記所定のメモリが前記セルフリフレッシュ状態で動作している場合の前記通信装置の消費電力より大きいことを特徴とする。
【０００９】
また、本発明の第２の通信装置は、
通常電力モードと、前記通常電力モードより消費電力の小さい第１の省電力モードとを含む群の中のいずれかのモードに遷移可能な通信装置であって、
ネットワークと接続する接続手段と、
記憶している情報を保持する記憶保持処理を実行し、外部から前記記憶保持処理のための指示を受けることにより前記記憶保持処理を実行する第１の状態と、前記第１の状態より消費電力が小さく、外部から前記記憶保持処理のための指示を受け付けずに前記記憶保持処理を実行する第２の状態とを含む群の中のいずれかの状態である記憶手段と、
前記記憶手段にアクセスし、所定の処理を実行する第１処理手段と、
前記第１処理手段が実行する処理に関する入力を受け付ける受付手段と、
前記設定手段がネットワークと接続しており、且つ前記受付手段が前記入力を一定時間受け付なかったことにより、前記通信装置のモードが前記通常電力モードから前記第１の省電力モードに遷移している状態で、前記第１処理手段から前記記憶手段にアクセスがない場合、前記記憶手段を前記第２の状態に遷移させる遷移手段を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ネットワークと接続している又はネットワークとの接続が有効に設定されている場合でも、記憶手段の状態を遷移させる処理を適切に行うことができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態を適用する通信装置を例示する斜視図
【図２】本実施形態を適用する通信装置の概略構成を示すブロック図
【図３】本実施形態を適用する通信装置のモードの遷移を示した図
【図４】各モードにおける、ＭＦＰ１００が備える各構成の状態を示す図
【図５】各モードへの遷移条件を示す図
【図６】ネットワークとの接続が有効に設定されている場合に、本実施形態を適用する通信装置のメインＣＰＵが実行する処理を示すフローチャート
【図７】本実施形態を適用する通信装置のサブＣＰＵが実行する処理を示すフローチャート
【図８】ネットワークとの接続が無効に設定されている場合に、本実施形態を適用する通信装置のメインＣＰＵが実行する処理を示すフローチャート
【図９】キーに対する入力があった場合に、本実施形態を適用する通信装置が実行する処理を示すフローチャート
【図１０】本実施形態を適用する通信装置の内部処理状態の経時変化を例示する図
【図１１】本実施形態を適用する通信装置のネットワークとの接続の設定を行うためのＵＩを例示する図
【図１２】本実施形態を適用する通信装置が備えるＤＲＡＭコントローラが、ＤＲＡＭをセルフリフレッシュ状態に遷移させる処理を示すフローチャート
【発明を実施するための形態】
【００１２】
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本願発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本願発明の範囲に入ることが理解されるべきである。
【００１３】
（第１実施形態）
まず、本実施形態を適用する通信装置について説明する。通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、ネットワークと接続可能な装置であれば種々の装置を適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートホン、パーソナルコンピューター（以下、ＰＣという。）、タブレット端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ等にも適用可能である。その他、複写機能、ＦＡＸ機能、印刷機能を備える複合機にも適用可能である。
【００１４】
図１は、本実施形態を適用する通信装置を例示する斜視図である。ＭＦＰ１００は、本実施形態を適用する通信装置である。
【００１５】
カードリーダー部１０１は、ＳＤカードやコンパクトフラッシュ（登録商標）などのメモリカードを読み取るためのものである。
【００１６】
表示部１０２は、ＬＥＤ（発光ダイオード）やＬＣＤ（液晶ディスプレイ）などから構成される。なお、表示部１０２は、ＬＣＤがない構成としても良い。表示部１０２は、例えば、メモリカードに記憶される画像データのプレビュー表示や、ＭＦＰ１００がエラーになった場合の復帰手段の表示をすることが可能である。
【００１７】
操作部１０３は、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキーによって構成される。操作部１０３上のキーに対してユーザから操作があった場合、ＭＦＰ１００は、当該操作に応じて、ＭＦＰ１００の各種機能の起動や各種設定を行うことができる。なお、情報の表示と操作の受付を同一部材で行うことで、表示部１０２と操作部１０３を同一のものとしても良い。
【００１８】
用紙積載部１０４は、画像形成のための記録媒体を積載する。なお、記録媒体とは、ＭＦＰ１００によって画像が形成されるものであって、例えば、紙、ＯＨＰシート、ラベル等である。本実施形態においては、記録媒体として記録紙を例示している。
【００１９】
排紙トレイ１０５は、画像形成後の記録媒体を保持する。
【００２０】
ＵＳＢ接続部１０６は、ＵＳＢインターフェースの接続制御を行うものであり、ＵＳＢ接続規格に従って、プロトコル制御を行う。
【００２１】
ＭＦＰ１００は、ＵＳＢ接続部１０６を介してＰＣ、タブレット端末、デジタルカメラ等の外部装置と通信し、印刷ジョブやスキャンジョブ等のジョブを受信することで、当該ジョブに応じた処理を実行可能である。
【００２２】
図２は、ＭＦＰ１００の概略構成を示すブロック図である。ＭＦＰ１００において、データ処理部２０１は、システム制御部であり、ＭＦＰ１００の全体を制御する。また、本実施形態では、ＭＦＰ１００は、メインＣＰＵであるＣＰＵ２０２、サブＣＰＵであるＣＰＵ２１０、ＣＰＵ２１４の３つのＣＰＵを備えているものとする。ＣＰＵ２０２は、データ処理部全体を制御する。ＣＰＵ２０２は、例えば、外部装置から受信したジョブの処理や、操作部１０３上のキーに対する入力に応じた処理、ＭＦＰ１００の状態の情報を送信する処理や、ＭＦＰ１００にメモリカードが挿入されているか否かの情報を送信する処理等を行う。操作部１０３上のキーに対する入力に応じた処理は、例えば、ＭＦＰ１００の設定を行う処理や、表示部１０２に情報を表示する処理である。その他にも、ＣＰＵ２０２は、例えば、後述の入出力制御部２１３を介して後述の電源制御装置２２８にアクセスし、ＭＦＰ１００が備える各構成への電源供給の制御を行う。ＣＰＵ２１０は、後述のネットワーク制御部２１１を制御することでネットワーク制御を実行する。ネットワーク制御とは、例えば、ネットワーク上のパケットデータの処理や、ネットワークを介して接続した外部装置からジョブ等のデータを受信する処理等である。ＣＰＵ２１４は、後述の表示部２１５を制御し、表示部２１５に表示させる画面の制御等を行う。また、ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４は、ＳＲＡＭ２０４又はＤＲＡＭ２０８にアクセスすることで、ＳＲＡＭ２０４又はＤＲＡＭ２０８に記憶されているプログラムに応じた処理を実行する。なお、ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４は、利用するプログラムを切り替えることが可能である。
【００２３】
ＣＬＯＣＫ生成部２０３は、ＭＦＰ１００全体のクロックを供給する。ＣＬＯＣＫ生成部２０３が生成するクロックの周波数は、ＣＰＵ２０２によってコントロールされる。ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４は、リフレッシュ（記憶保持）処理が不要な記憶部材であり、プログラム制御変数等を記憶する。また、ＭＦＰ１００の設定情報やＭＦＰ１００の管理データ等を記憶するメモリエリアもＳＲＡＭ２０４に設けられている。ＲＯＭ２０５は、ＣＰＵ２０２が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム（以下、ＯＳという。）プログラム等の固定データを記憶する。本実施形態では、組み込みＯＳは、リアルタイムＯＳであるものとし、ＲＯＭ２０５に記憶されている各制御プログラムは、リアルタイムＯＳの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。なお、割り込み処理とは、割り込み要求が生じた場合に、当該割り込み要求の優先度に応じて実行される処理である。各ＣＰＵは、データを受信した場合や操作部２１８を介してユーザからキーの入力を受け付けた場合には、入出力制御部２１３を介して割り込み要求を検出し、当該割り込み要求に応じた割り込み処理をリアルタイムで実行することが可能である。また、各ＣＰＵは、リアルタイムＯＳによって、これらの割り込み処理以外に、優先度に従って複数の処理を並行に実行することも可能である。また、各ＣＰＵは、外部から動作要求がなく、印刷機能や読み取り機能等、ＭＦＰ１００の各種機能が動作していない状態では、アイドルタスクを実行している。アイドルタスクが動作している状態をアイドル状態とし、各ＣＰＵは、アイドル状態では、割り込み要求待ちをしている。アイドルタスクは、処理の優先度が一番低いため、アイドル状態であるＣＰＵは、各種割り込み要求を受信した場合には、当該割り込み要求に応じた処理を即座に実行する。また、割り込み要求の種類は複数存在し、ユーザは、それぞれの割り込み要求に応じた割り込みを有効にするか無効にするかの設定を個別に行うことが可能である。この設定を行うことで、ユーザは、後述する遷移条件を設定することができる。
【００２４】
ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０８は、ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４が動作するためのプログラムを記憶する。また、ＤＲＡＭ２０８は、リフレッシュ処理が必要な記憶部材である。リフレッシュ処理とは、記憶した情報を保持するための処理であり、ＤＲＡＭ２０８に対しては、リフレッシュ処理として情報の記憶に用いられている電荷を補充する処理が行われる。なお、リフレッシュ処理は、所定の時間（以下、リフレッシュ時間という。）の間隔で定期的に行われる。また、ＤＲＡＭ２０８には、通常リフレッシュ状態と、セルフリフレッシュ状態の２種類の状態がある。通常リフレッシュ状態であるＤＲＡＭ２０８は、ＤＲＡＭコントローラ２０６からリフレッシュ処理のためのアクセスを受けた場合に、リフレッシュ処理を実行する。なお、ＤＲＡＭコントローラ２０６は、不図示のタイマーからリフレッシュ時間が経過した場合に発されるトリガーを受信した場合、ＤＲＡＭ  ＰＨＹ２０７を介してＤＲＡＭ２０８に対しリフレッシュ処理のためのアクセスをする。一方、セルフリフレッシュ状態であるＤＲＡＭ２０８は、ＤＲＡＭ２０８内部のリフレッシュ回路を利用し、外部からのアクセスなしにＤＲＡＭ２０８自身で所定の時間毎に自動でリフレッシュ処理を行う。ＤＲＡＭ２０８がセルフリフレッシュ状態となることで、ＤＲＡＭ２０８外部のリフレッシュ回路を利用する必要が無くなるため、ＭＦＰ１００は、消費電力を削減することができる。ＤＲＡＭ２０８には、ＤＲＡＭ２０８の物理層を制御するＤＲＡＭ  ＰＨＹ２０７が接続されている。また、ＤＲＡＭ  ＰＨＹ２０７には、ＤＲＡＭ２０８の上位層を制御するＤＲＡＭコントローラ２０６が接続されている。なお、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ  ＰＨＹ２０７を介さず、ＤＲＡＭ２０８に直接接続されていても良い。ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４はＤＲＡＭコントローラ２０６及びＤＲＡＭ  ＰＨＹ２０７を経由してＤＲＡＭ２０８にアクセスする。
【００２５】
ＵＳＢ制御部２０９は、ＵＳＢ接続部１０６を介して接続された外部装置とＵＳＢ通信をするため制御部である。なお、ＵＳＢ制御部２０９は、ＭＦＰ１００が後述の省電力モードである状態で、ＵＳＢ接続部１０６を介して接続している外部装置からデータを受信した場合は、外部装置に対してＣＰＵ２０２を介さずに自動でＮＡＫ応答することが可能である。なお、ＮＡＫ応答とは、ＵＳＢ接続部１０６を介して接続している外部装置からデータの送信があった場合に、ＭＦＰ１００が当該データを受信できない状態であることを通知し、受信可能な状態になるまでデータの送信を待ってもらうための応答である。
【００２６】
入出力制御部２１３は、接続している各部からの信号を制御し、各ＣＰＵに対して信号を通知する。
【００２７】
システムバス２１２は、ＭＦＰ１００の備える各構成を相互に接続させるためのものである。
【００２８】
印刷部２２０は、ネットワーク等を介して接続する外部装置から受信した印刷ジョブに基づいて、インク等の記録剤を用いて紙等の記録媒体上に画像を形成し、印刷結果を出力する。読み取り部２１９は、ネットワーク等を介して接続する外部装置から受信したスキャンジョブ等に基づいて、原稿台にセットされた原稿を読み取る。操作部２１８は、操作部２１８上に配置された各種キーを介してユーザの入力を受け付ける。表示部２１５は、液晶ディスプレイであるＬＣＤ２１７と、表示する情報を転送しＬＣＤ２１７が表示する内容を制御する表示制御部２１６とで構成される。なお、表示部２１５は表示部１０２に、操作部２１８は操作部１０３にそれぞれ対応している。
【００２９】
ネットワーク制御部２１１は、ネットワークに接続し、インターネットプロバイダへの接続や、ネットワークを介して接続した外部装置との間でのデータや画像情報等の通信を行う。なお、通信ネットワークへの接続に関しては、ＨＴＴＰなど公知の方法を使用するものとし、説明を省略する。なお、本実施形態において、ネットワーク制御部２１１は、ネットワークとの接続において、無線接続でダイレクトに接続しても良いし、有線ネットワーク上に設置したアクセスポイントを介して接続しても良い。また、ネットワークとの接続は、例えば、有線ＬＡＮ又はＷｉｒｅｌｅｓｓ  ＬＡＮによって行われる。また、接続のための通信方式としては、例えば、Ｗｉ−Ｆｉ（ＷｉｒｅｌｅｓｓＦｉｄｅｌｉｔｙ）やＢｌｕｅｔｏｏｔｈ（登録商標）や、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ；ＩＳＯ／ＩＥＣ  ＩＳ  １８０９２）等が挙げられる。なお、ネットワーク制御部２１１は、ネットワーク上に流れるパケットを、ＣＰＵ２１０を介在せずに処理可能なパケットとＣＰＵ２１０が処理するパケットとに分類することが可能である。そして、ネットワーク制御部２１１は、ＣＰＵ２１０を介在せずに処理可能なパケットを処理する。なお、この処理は、ＣＰＵ２１０がスリープ状態であっても実行することが可能である。これに対してＣＰＵ２１０が処理するパケットは、ネットワーク制御部２１１からＣＰＵ２１０に対して当該パケットを処理するための割り込み要求が発生させられた場合に、ＣＰＵ２１０によって処理される。
【００３０】
また、本実施形態において、ＭＦＰ１００は、ネットワークとの接続を有効にするか無効にするかを設定可能である。ネットワークとの接続の設定は、例えば、表示部１０２に表示に図１１に示すようなネットワークの設定を行うためのＵＩを表示し、ユーザの操作を受け付けることで行われる。ＭＦＰ１００は、操作部１０３上のキーに対する入力により、図１１における「無線ＬＡＮを有効」、「ダイレクト接続を有効」及び「有線ＬＡＮを有効」が選択された場合、ネットワークとの接続を有効に設定する。ネットワークとの接続を有効に設定するための具体的な処理について説明する。例えば、「無線ＬＡＮを有効」が選択された場合は、ＭＦＰ１００は、ＭＦＰ１００の周辺の、無線ＬＡＮ通信が可能な外部装置を検出し、その一覧を表示部１０２に表示する。その後、ＭＦＰ１００は、所望の外部装置の選択をユーザから受け付けることで、選択された外部装置とネットワーク制御部２１１を介して無線ＬＡＮ接続が可能となる。また、例えば、「ダイレクト接続を有効」が選択された場合は、ＭＦＰ１００は、ネットワーク制御部２１１が備える不図示のアクセスポイントを有効にする。その後、外部装置によって、当該アクセスポイントが検出されることで、ＭＦＰ１００は、当該外部装置と当該アクセスポイントを介した接続が可能になる。また、例えば、「有線ＬＡＮを有効」が選択された場合は、ＭＦＰ１００は、ネットワーク制御部２１１が備える不図示の有線ＬＡＮ接続部に接続された有線ＬＡＮを介して、外部装置と有線ＬＡＮ接続が可能となる。以上のようにして、ネットワークとの接続が有効に設定された場合、ＭＦＰ１００は、ネットワーク制御部２１１を介して、外部装置とネットワーク通信が可能となる。一方、操作部１０３上のキーに対するユーザの入力により、「ＬＡＮを無効」が選択された場合、ＭＦＰ１００は、ネットワークとの接続を無効に設定する。ネットワークとの接続を無効に設定するための具体的な処理について説明する。例えば、「ＬＡＮを無効」が選択された場、ＭＦＰ１００は、上記によるネットワークとの接続をすべて解除して、ネットワークとの接続ができない状態になる。ネットワーク制御部２１１は、ネットワークとの接続の設定に応じて、ネットワークとの接続を制御する。なお、本実施形態においては、ＭＦＰ１００のネットワークとの接続の設定は、ユーザが任意に行うことが可能な構成とする。ネットワークの設定は、有効か無効かの設定を図１１のようなＵＩを介して入力させる構成としても良いし、着荷時にあらかじめ所定の設定が行われている構成としても良い。
【００３１】
また、ＭＦＰ１００は、ＵＳＢやネットワークを介して接続している外部装置から印刷ジョブや読み取りジョブ等のジョブを受信することで、当該ジョブに応じた処理を実行可能である。具体的には、ＭＦＰ１００は、印刷ジョブを受信した場合、当該印刷ジョブに含まれる画像データに対し、図示しない画像処理制御部を介して、スムージング処理や記録濃度補正処理、色補正等の各種画像処理を施すことにより、高精細な画像データに変換する。その後、ＭＦＰ１００は、変換した画像データ及び印刷ジョブに基づき、印刷部２２０によって記録紙上に画像を印刷する。また、ＭＦＰ１００は、読み取りジョブを受信した場合、読み取り部２１９によって原稿台にセットされた原稿を読み取る。その後、ＭＦＰ１００は、読み取った画像を電気的な画像データに変換し、図示しない画像処理制御部を介して、２値化処理や中間調処理等の各種画像処理を施し、高精細な画像データを出力する。なお、ＭＦＰ１００は、読み取り部２１９が読み取った画像データを外部の通信装置に送信し、保存することも可能である。
【００３２】
電源制御装置２２８は、データ処理制御部２０１、印刷部２２０、読み取り部２１９、表示部２１５、ネットワーク制御部２１１等の、ＭＦＰ１００が備える各構成に対して電源を供給する。
【００３３】
図３は、ＭＦＰ１００のモードの遷移を示した図である。本実施形態におけるモードとは、ＭＦＰ１００の電源状態によって定まるモードであり、ＭＦＰ１００は、後述の遷移条件が満たされた場合、当該遷移条件に応じたモードに遷移する。各モードにおけるＭＦＰ１００が備える各構成の状態及び各モードへの遷移条件を図４及び図５を用いて説明する。
【００３４】
まず、ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４は、通常状態、スリープ状態及びＯＦＦ状態のうちいずれかの電力状態で動作する。通常状態は、通常動作するのに必要なクロック及び電力が供給されており、ＤＲＡＭ２０８又はＳＲＡＭ２０４にアクセスすることでＤＲＡＭ２０８又はＳＲＡＭ２０４に記憶されているプログラムに応じた処理を実行可能な状態である。スリープ状態は、クロック及び電力は供給されているが、ＤＲＡＭ２０８又はＳＲＡＭ２０４等へのアクセスが停止され、処理を停止している状態である。ＯＦＦ状態は、電力の供給が停止されている状態である。
【００３５】
ＤＲＡＭ２０８は、前述したように、通常リフレッシュ状態又はセルフリフレッシュ状態で動作する。
【００３６】
ＤＲＡＭ  ＰＨＹ２０７は、ＯＮ状態又はＯＦＦ状態で動作する。ＯＮ状態は、クロック及び電力が供給されており、ＤＲＡＭ  ＰＨＹ２０７の機能を実行可能な状態である。ＯＦＦ状態は、クロック及び電力の供給が停止されている状態である。ＤＲＡＭ  ＰＨＹ２０７はＯＦＦ状態となると、ＣＰＵ２０２、ＣＰＵ２１０及びＣＰＵ２１４がＤＲＡＭにアクセスできなくなる一方で、消費電力を大きく削減することができる。これは、ＤＲＡＭ  ＰＨＹ２０７に供給されているクロックは他のクロックに比べて数倍高い周波数を持っているが、ＤＲＡＭ  ＰＨＹ２０７がＯＦＦ状態になることで、ＤＲＡＭ  ＰＨＹ２０７へのクロックの供給を停止することができるからである。
【００３７】
ネットワーク制御部２１１は、動作状態又はＯＦＦ状態で動作する。動作状態は、電力が供給されている状態である。動作状態であるネットワーク制御部２１１は、ネットワークが有効に設定されている場合には、当該設定に応じたネットワーク制御を実行できる。ＯＦＦ状態は、電力が供給されていない状態である。ネットワーク制御部２１１がＯＦＦ状態である場合、ネットワーク制御を実行できないため、結果として、ＭＦＰ１００は、ネットワークと接続することはできない。
【００３８】
表示部２１５は、動作状態又はＯＦＦ状態で動作する。動作状態は、電力が供給されている状態である。表示部２１５は、動作状態である場合、ＣＰＵ２１４の制御によって、画面に情報を表示することができる。ＯＦＦ状態は、電力が供給されていない状態である。表示部２１５は、ＯＦＦ状態である場合、画面に情報を表示することができない。
【００３９】
ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態には、通常状態と通常状態より周波数が低い２つの状態（以下、低状態１及び低状態２という。）、周波数が最低限の状態（以下、最低状態という。）がある。なお、図４中においては、通常状態、低状態１、低状態２及び最低状態を、それぞれ通常、低１、低２、最低と記す。また、それぞれの状態におけるクロックの周波数の高低の関係は、最低状態＜低状態１＜低状態２＜通常状態となる。クロックの周波数が最低の状態である最低状態は、少なくともＣＰＵ２０２が操作部１０３上の電源キーの押下を検出可能なクロックを供給できる状態である。
【００４０】
ＯＦＦモード３０１はＭＦＰ１００の各部へ電力の供給が停止されているモードである。なお、このとき、ＭＦＰ１００の各部へ電力の供給が停止されている状態は、厳密な意味で、全く電力が供給されない状態ではなく、少なくともＣＰＵ２０２が操作部１０３上の電源キーの押下を検出可能な状態である。具体的には、例えば、ＣＰＵ２０２、ＣＬＯＣＫ生成部２０３、ＳＲＡＭ２０４、ＲＯＭ２０５、システムバス２１２、入出力制御部２１３のみに電力が供給され、その他の部分については電力が供給されない状態である。ＭＦＰ１００がＯＦＦモード３０１である場合、ＣＰＵ２０２は、ＡＣコンセントが差し込まれている状態で、操作部１０３上の電源キーが押下されるのを待つ。
【００４１】
通常電力モード３０２は、ＭＦＰ１００の備える各構成に電力が供給されているモードであり、印刷機能や読み取り機能等の全てのＭＦＰ１００の機能が実行可能なモードである。
【００４２】
遷移条件３１０は、操作部１０３上の電源キーが押下されることである。ＭＦＰ１００がＯＦＦモード３０１である状態で遷移条件３１０が満たされると、ＭＦＰ１００は、通常電力モード３０２に遷移する。通常電力モード３０２に遷移する場合、ＭＦＰ１００は、ソフトパワーＯＮ処理を実行する。ソフトパワーＯＮ処理は、ＭＦＰ１００の各構成に電力を供給し、ＭＦＰ１００の各機能を実行可能にする処理である。ソフトパワーＯＮ処理が実行されることで、ＭＦＰ１００は、ＯＦＦモード３０１から通常電力モード３０２に遷移する。
【００４３】
遷移条件３１１は、操作部１０３上の電源キーが押下されることである。ＭＦＰ１００が通常電力モード３０２である状態で遷移条件３１１が満たされると、ＭＦＰ１００は、ＯＦＦモード３０１に遷移する。ＭＦＰ１００は、ＯＦＦモード３０１に遷移する場合、ソフトパワーＯＦＦ処理を実行する。ソフトパワーＯＦＦ処理は、ＭＦＰ１００の各構成への電力の供給を停止する処理である。なお、このとき、ＭＦＰ１００は、全ての電力の供給を停止するのではなく、少なくともＣＰＵ２０２が操作部１０３上の電源キーの押下を検出可能な程度に、電力の供給を停止する。ソフトパワーＯＦＦ処理が実行されることで、ＭＦＰ１００は、通常電力モード３０２からＯＦＦモード３０１に遷移する。
【００４４】
第１の省電力モード３０３は、第１−１の省電力モード３０４、第１−２の省電力モード３０７、第１−３の省電力モード３０６、第１−４の省電力モード３０５の四種類の電力モードから構成される。なお、第１の省電力モード３０３に属するそれぞれのモードの省電力効果の大小の関係は、第１−１の省電力モード＜第１−４の省電力モード≦第１−３の省電力モード＜第１−２の省電力モードとなる。第２の省電力モード３２７は、第２−１の省電力モード３０８と第２−２の省電力モード３０９の二種類の電力モードから構成される。なお、第２の省電力モード３２７に属するそれぞれのモードの省電力効果の大小の関係は、第２−２の省電力モード＜第２−１の省電力モードとなる。また、第１の省電力モード３０３及び第２の省電力モード３２７に属するモードは、通常電力モード３０２より消費電力の小さいモードであるため、以下、省電力モードという。このように、ＭＦＰ１００は、複数種類の省電力モードに遷移可能であることで、使用環境に応じて消費電力を削減することができる。
【００４５】
また、本実施形態においては、通常電力モード３０２から、第１の省電力モード３０３及び第２の省電力モード３２７のうちいずれの省電力モード群に遷移するかは、ネットワークとの接続が有効に設定されているか否かの条件によって決まる。第１の省電力モード３０３は、ネットワークとの接続が有効に設定されている場合に遷移可能なモードであり、第２の省電力モード３２７はネットワークとの接続が無効に設定されている場合に遷移可能なモードである。ＭＦＰ１００は、通常電力モード３０２から第１の省電力モード３０３に遷移する場合、まず、省電力モード３０４に遷移する。省電力モード３０４では、ＣＰＵ２０２及びＣＰＵ２１０は動作状態が維持されるが、これは、ＭＦＰ１００がネットワークと接続している場合、省電力モードに遷移しても一部のネットワーク制御は継続して行われなければならないためである。しかしながら、ＭＦＰ１００がネットワークと接続している状況であっても、ＣＰＵ２０２及びＣＰＵ２１０が動作する必要がない状況もある。本実施形態においては、ＭＦＰ１００は、そのような状況には、省電力モード３０５乃至省電力モード３０７のいずれかのモードに遷移することで、より大きな省電力効果を実現することができる。一方、ＭＦＰ１００は、通常電力モード３０２から省電力モード３２７に遷移する場合、まず、省電力モード３０８に遷移する。省電力モード３０８では、ＣＰＵ２０２のみスリープ状態にし、その他の各構成のほとんどをＯＦＦ状態にすることができる。これは、ＭＦＰ１００がネットワークと接続していない場合、ネットワーク制御は行われないため、ＣＰＵ２１０等の、ネットワーク制御を行う構成は動作しなくても良いためである。なお、本実施形態では、通常電力モード３０２からいずれの省電力モードに遷移するかは、ネットワークとの接続の設定状況を参照しているが、設定状況でなく、実際にネットワークと接続しているか否かといった、ネットワークとの接続状況を参照しても良い。この場合、例えば、有線ＬＡＮによる接続が有効に設定されている場合は、ネットワーク制御部２１１が備える不図示の有線ＬＡＮ接続部に有線ＬＡＮが接続されているか否かを参照する。また、無線ＬＡＮやダイレクト接続等の無線による接続が有効に設定されている場合は、ネットワーク制御部２１１が当該設定に応じて外部装置と無線接続しているか否かを参照する。また、このとき、第１の省電力モード３０３は、ネットワークとの接続されている場合に遷移可能なモードであり、第２の省電力モード３２７はネットワークとの接続されている場合に遷移可能なモードである。
第１の省電力モード３０３及び第２の省電力モード３２７に属する各省電力モード及び各省電力モードに遷移するための遷移条件について詳しく説明する。
【００４６】
省電力モード３０４は、通常電力モード３０２における各部の状態と比較し、ＣＰＵ２１４がスリープ状態、表示部２１５がＯＦＦ状態、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態が低状態２となっているモードである。省電力モード３０４においては、ネットワーク制御を行うために、当該制御を担うＣＰＵ２０２及びＣＰＵ２１０は動作したままである。遷移条件３１３は、いずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０４である状態で遷移条件３１３が満たされると、ＭＦＰ１００は、通常電力モード３０２に遷移する。このような形態とすることで、ＭＦＰ１００は、省電力モード３０４に遷移していても、割り込み要求が発生した場合には通常電力モード３０２に復帰することができ、割り込み要求に応じた割り込み処理を実行可能となる。
【００４７】
省電力モード３０５は、省電力モード３０４における各部の状態と比較して、さらに、ＣＰＵ２１０がスリープ状態となっているモードである。
【００４８】
遷移条件３１４は、一定時間ＣＰＵ２１０がアイドル状態であることである。ネットワークの設定が有効な場合であっても、ネットワーク制御部２１１が外部装置と接続しなかった場合等、ＣＰＵ２１０がネットワーク制御を行わない状況があり得る。そのため、ＭＦＰ１００が省電力モード３０４である状態で遷移条件３１４が満たされると、ＭＦＰ１００は、省電力モード３０５に遷移する。このような形態とすることで、ＭＦＰ１００は、ＣＰＵ２１０によってネットワーク制御が行われず、ＣＰＵ２１０が動作しない状況下において、より消費電力を削減することができるモードに遷移することができる。
【００４９】
遷移条件３１５は、ＣＰＵ２１０に対する割り込み要求が発生したこと、又はいずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０５である状態で遷移条件３１５が満たされると、ＭＦＰ１００は、省電力モード３０４に遷移する。なお、発生した割り込み要求が、ＣＰＵ２１０に対する省電力モードで実行可能な処理のための割り込み要求である場合は、ＭＦＰ１００は、割り込み処理の実行後も省電力モード３０４を維持する。省電力モードで実行可能な処理とは、省電力モードにおいて動作している構成だけで実行可能な処理であり、ＣＰＵ２１０が実行するものとしては、例えば、ネットワーク上に流れるパケットの処理等が挙げられる。そのため、ＣＰＵ２１０に対する省電力モードで実行可能な処理のための割り込み要求は、例えば、ＭＦＰ１００が、ネットワークを介して接続している外部装置と通信を行っている場合等に発生する。一方、発生した割り込み要求が、いずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求である場合、ＭＦＰ１００は、省電力モード３０４に遷移後、さらに、通常電力モード３０２に遷移し、割り込み処理を実行する。このような形態とすることで、ＭＦＰ１００は、省電力モード３０５に遷移していても、割り込み要求が発生した場合には、省電力モード３０４又は通常電力モード３０２に復帰することができ、割り込み要求に応じた割り込み処理を実行可能となる。
【００５０】
省電力モード３０６は、省電力モード３０４における各部の状態と比較し、ＣＰＵ２０２がスリープ状態となっているモードである。
【００５１】
遷移条件３１６は、一定時間ＣＰＵ２０２がアイドル状態であることである。ネットワークの設定が有効な場合であっても、ジョブの受信やＭＦＰ１００の状態の情報の送信要求等が行われなかった場合等、ＣＰＵ２０２が処理を行わない状況があり得る。ＭＦＰ１００が省電力モード３０４である状態で遷移条件３１６が満たされると、ＭＦＰ１００は、省電力モード３０６に遷移する。このような形態とすることで、ＭＦＰ１００は、ＣＰＵ２０２が動作しない状況下において、より消費電力を削減することができるモードに遷移することができる。
【００５２】
遷移条件３１７は、ＣＰＵ２０２に対する割り込み要求が発生したこと、又はいずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０６である状態で遷移条件３１７が満たされると、ＭＦＰ１００は、省電力モード３０４に遷移する。なお、発生した割り込み要求が、ＣＰＵ２０２に対する省電力モードで実行可能な処理のための割り込み要求である場合は、ＭＦＰ１００は、割り込み処理の実行後も省電力モード３０４を維持する。ＣＰＵ２１０が実行する省電力モードで実行可能な処理としては、例えば、ＭＦＰ１００の状態の情報を送信する処理や、ＭＦＰ１００にメモリカードが挿入されているか否かの情報を送信する処理が挙げられる。そのため、ＣＰＵ２０２に対する省電力モードで実行可能な処理のための割り込み要求は、例えば、ネットワークを介して接続している外部装置に、ＭＦＰ１００のステータスを通知するための画面が表示されている場合等に発生する。一方、発生した割り込み要求が、いずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求である場合、ＭＦＰ１００は、省電力モード３０５に遷移後、さらに、通常電力モード３０２に遷移し、割り込み処理を実行する。このような形態とすることで、ＭＦＰ１００は、省電力モード３０６に遷移していても、ＣＰＵ２０２に対する割り込み要求が発生した場合には省電力モード３０４又は通常電力モード３０２に復帰することができ、割り込み要求に応じた割り込み処理を実行可能となる。
【００５３】
省電力モード３０７は、省電力モード３０４における各部の状態と比較し、ＣＰＵ２０２及びＣＰＵ２１０がスリープ状態であり、ＤＲＡＭがセルフリフレッシュ状態となっているモードである。省電力モード３０７では、ＤＲＡＭ２０８をセルフリフレッシュ状態とするため、各ＣＰＵをスリープ状態にするだけの場合と比較して、より消費電力を削減することができる。
【００５４】
遷移条件３１８は、ＤＲＡＭ２０８に対してアクセスがないことである。ＭＦＰ１００が省電力モード３０５である状態で遷移条件３１８が満たされると、ＭＦＰ１００は、省電力モード３０７に遷移する。このような形態とすることで、ＭＦＰ１００は、ＤＲＡＭ２０８に対してアクセスが行われず、各ＣＰＵが動作しない状況下において、より消費電力を削減することができるモードに遷移することができる。
【００５５】
遷移条件３１９は、ＣＰＵ２０２に対する割り込み要求が発生したこと、又はいずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０７である状態で遷移条件３１９が満たされると、ＭＦＰ１００は、省電力モード３０５に遷移する。なお、発生した割り込み要求が、ＣＰＵ２０２に対する省電力モードで実行可能な処理のための割り込み要求である場合は、ＭＦＰ１００は、割り込み処理の実行後も省電力モード３０５を維持する。一方、発生した割り込み要求が、いずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求である場合、ＭＦＰ１００は、省電力モード３０５に遷移後、省電力モード３０４を経由して通常電力モード３０２に遷移し、割り込み処理を行う。このような形態とすることで、ＭＦＰ１００は、省電力モード３０７に遷移していても、ＣＰＵ２０２に対する割り込み要求が発生した場合には省電力モード３０５又は通常電力モード３０２に復帰することができ、割り込み要求に応じた割り込み処理を実行可能となる。
【００５６】
遷移条件３２０は、ＤＲＡＭ２０８に対してアクセスがないことである。ＭＦＰ１００が省電力モード３０６である状態で遷移条件３２０が満たされると、ＭＦＰ１００は、省電力モード３０７に遷移する。このような形態とすることで、ＭＦＰ１００は、ＤＲＡＭ２０８に対してアクセスが行われず、各ＣＰＵが動作しない状況下において、より消費電力を削減することができるモードに遷移することができる。
【００５７】
遷移条件３２１は、ＣＰＵ２１０に対する割り込み要求が発生したこと、又はいずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０７である状態で遷移条件３２１が満たされると、ＭＦＰ１００は、省電力モード３０６に遷移する。なお、発生した割り込み要求が、ＣＰＵ２１０に対する省電力モードで実行可能な処理のための割り込み要求である場合は、ＭＦＰ１００は、割り込み処理の実行後も省電力モード３０６を維持する。一方、発生した割り込み要求が、いずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求である場合、ＭＦＰ１００は、省電力モード３０６に遷移後、省電力モード３０４を経由して通常電力モード３０２に遷移し、割り込み処理を行う。このような形態とすることで、ＭＦＰ１００は、省電力モード３０７に遷移していても、ＣＰＵ２１０に対する割り込み要求が発生した場合には省電力モード３０６に復帰することができ、割り込み要求に応じた割り込み処理を実行可能となる。
【００５８】
なお、省電力モード３０７においていずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生した場合、通常電力モード３０２への遷移は、省電力モード３０５を経由しても省電力モード３０６を経由しても良い。しかし、ＵＳＢ通信によって通常電力モード３０２で行う処理のための割り込み要求が発生した場合は、ＣＰＵ２０２が動作する必要があるため、省電力モード３０５を経由して通常電力モード３０２への遷移が行われる。また、ネットワーク通信によって通常電力モード３０２で行う処理のための割り込み要求が発生した場合は、ＣＰＵ２１０が動作する必要があるため、省電力モード３０６を経由して通常電力モード３０２への遷移が行われる。
【００５９】
省電力モード３０８は、通常電力モード３０２における各部の状態と比較し、ＣＰＵ２０２及びＣＰＵ２１４がスリープ状態、ＣＰＵ２１０、表示部２１５、ネットワーク制御部２１１及びＤＲＡＭ  ＰＨＹ２０７がＯＦＦ状態になっているモードである。さらに、省電力モード３０８では、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態が低状態１に、ＤＲＡＭ２０８がセルフリフレッシュ状態になっている。省電力モード３０８においては、ネットワーク制御を行う必要が無いために、ＭＦＰ１００の各部のほとんどの動作を停止させることができ、大きな省電力効果が得られる。なお、ＤＲＡＭ  ＰＨＹ２０７がＯＦＦ状態となっている場合、消費電力を削減できる一方で、ＤＲＡＭ２０８へのアクセスができず、さらに、ＤＲＡＭ２０８へのアクセスが可能な状態への復帰に時間がかかる。第１の省電力モード３０３において、ＤＲＡＭ  ＰＨＹ２０７がＯＦＦ状態にならないのは、ネットワークの設定が有効である状況ではＤＲＡＭ２０８へのアクセスが頻繁に行われるためであり、復帰時間によるスループットへの影響を生じさせないためである。一方、省電力モード３２７においては、ＤＲＡＭ  ＰＨＹ２０７がＯＦＦ状態になるが、これは、ネットワークの設定が無効である状況下では、ＤＲＡＭ２０８へのアクセスは頻繁には行われないため、復帰時間が許容されるためである。
【００６０】
遷移条件３２２は、ネットワークの設定が無効で、かついずれのＣＰＵに対しても通常電力モード３０２で行う処理のための割り込み要求が一定時間発生していないことである。ＭＦＰ１００が通常電力モード３０２である状態で遷移条件３２２が満たされると、ＭＦＰ１００は、省電力モード３０８に遷移する。このような形態とすることで、ＭＦＰ１００は、ＭＦＰ１００の機能が利用されない状況下において、消費電力を削減することができるモードに遷移することができる。
【００６１】
遷移条件３２３は、いずれかのＣＰＵに対してデータ受信による割り込み要求以外の割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０８である状態で遷移条件３２３が満たされると、ＭＦＰ１００は、通常電力モード３０２に遷移する。このような形態とすることで、ＭＦＰ１００は、省電力モード３０８に遷移していても、操作部１０３上のキーに対する入力等による割り込み要求があった場合には、通常電力モード３０２に復帰し、割り込み要求に応じた割り込み処理を実行することができる。なお、遷移条件３２３にデータ受信による割り込み要求が発生したことが含まれないのは、データ受信による割り込み要求の一部は、省電力モードで実行可能な処理のための割り込み要求であるからである。
【００６２】
省電力モード３０９は、省電力モード３０８における各部の状態と比較し、ＣＰＵ２０２が動作状態、ＤＲＡＭ２０８が通常リフレッシュ状態、ＤＲＡＭ  ＰＨＹ２０７がＯＮ状態となっているモードである。また、省電力モード３０９は、消費電力を削減しつつ、外部装置から受信するデータ（ジョブ以外のデータ）の処理を行うためのモードである。
【００６３】
遷移条件３２４は、データ受信による割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０８である状態で遷移条件３２４が満たされると、ＭＦＰ１００は、省電力モード３０９に遷移する。なお、発生した割り込み要求が、省電力モードで実行可能な処理である場合は、ＭＦＰ１００は、割り込み処理の実行後も省電力モード３０９を維持する。一方、発生した割り込み要求が、いずれかのＣＰＵに対する通常電力モード３０２で行う処理のための割り込み要求である場合、ＭＦＰ１００は、省電力モード３０９に遷移後、通常電力モード３０２に遷移し、割り込み処理を行う。このような形態とすることで、ＭＦＰ１００は、省電力モード３０８に遷移していても、外部装置からＭＦＰ１００がデータを受信した場合には、当該データの処理を実行可能となる。なお、本実施形態において、省電力モード３０８にて発生したデータ受信による割り込み要求が、通常電力モード３０２で行う処理のための割り込み要求である場合、直接通常電力モード３０２に遷移していない。これは、省電力モード３０８においてはＣＰＵ２０２が動作していないため、ＭＦＰ１００は、受信したデータの内容を判断できず、ＣＰＵ２０２に対する割り込み要求が通常電力モード３０２で行う処理のための割り込み要求か否かは判断できないためである。
【００６４】
遷移条件３２５は、いずれのＣＰＵに対しても通常電力モード３０２で行う処理のための割り込み要求が一定時間発生していないことである。ＭＦＰ１００が省電力モード３０９である状態で遷移条件３２５が発生すると、ＭＦＰ１００は、省電力モード３０８に遷移する。このような形態とすることで、ＭＦＰ１００は、受信したデータの処理が終了した後に、再びＭＦＰ１００の機能が利用されなくなった状況下において、再び省電力モード３０９に遷移することができ、消費電力を削減することができる。
【００６５】
遷移条件３２６は、いずれかのＣＰＵに対して通常電力モード３０２で行う処理のための割り込み要求が発生したことである。ＭＦＰ１００が省電力モード３０９である状態で遷移条件３２６が発生すると、ＭＦＰ１００は、通常電力モード３０２に遷移する。このような形態とすることで、ＭＦＰ１００は、省電力モード３０９に遷移していても、省電力モード３０９では処理できない割り込み処理を行う必要が発生した場合には、通常電力モード３０２に復帰し、当該処理を実行することができる。
【００６６】
なお、各遷移条件の内容は、任意に設定可能であり、上述した内容に限らない。遷移条件の設定は、例えば、いずれの種類の割り込み要求が発生したことを遷移条件とするかの設定や、モードが遷移するまでの時間の設定がある。モードが遷移するまでの設定時間は、例えば、５分や３０分、６０分等の値が設定される。遷移条件の設定は、表示部２１５上に表示される、遷移条件の設定を行うための画面を介してユーザから入力を受け付けることで行われても良いし、遠隔利用機能によってＭＦＰ１００と接続している外部の通信装置上で行われても良い。また、設定画面上にユーザの所望の設定を直接入力させる構成としても良いし、設定画面上にあらかじめ用意された複数の設定の例を表示し、そのいずれかをユーザに選択させる構成としても良い。あるいは、着荷時にあらかじめ所定の設定が行われている構成としても良い。
【００６７】
また、ＤＲＡＭ２０８には、上述の遷移条件が満たされてからの経過時間の情報が記憶されている。なお、経過時間は、ＭＦＰ１００の備える不図示のタイマーによってカウントされるが、経過時間を加算していく方法でカウントされても良いし、自動電源オフ機能の設定時間の値から経過時間を減算していく方法でカウントされても良い。または、不図示のＴＣＵ（Ｔｉｍｅｒ  Ｃｏｕｎｔｅｒ  Ｕｎｉｔ）が、ＣＰＵ２０２によって設定された周波数でパルスを発生させ、タイマーが当該パルスを受け取った回数と、パルスの周波数を参照することで、経過時間をカウントしても良い。モードの遷移は、例えば、各ＣＰＵが、経過時間と遷移条件の設定時間とを比較した結果、モードを遷移させると判断した場合に実行される。また、経過時間は、上述の遷移条件が満たされた場合にリセットされ、リセットされた時間から再度時間がカウントされる。なお、遷移条件の設定時間には、それぞれの遷移条件において一律同じ設定時間が利用されても良いし、それぞれの遷移条件に個別に設定された設定時間が利用されても良い。本実施形態においては、タイマーは、ＣＰＵ２０２の状態が遷移するための経過時間を（Ｔ１）、ＣＰＵ２１０の状態が遷移するための経過時間を（Ｔ２）としてそれぞれ別にカウントするものとする。
【００６８】
図９は、操作部１０３上のキーに対する入力があった場合にＭＦＰ１００が実行する処理を示すフローチャートである。なお、当該フローチャートの示す処理は、ＣＰＵ２０２、が、ＲＯＭ２０５又は不図示のＨＤＤに記憶されている制御プログラムをＳＲＡＭ２０４又はＤＲＡＭ２０８にロードし、その制御プログラムを実行することにより実現されるものとする。また、当該フローチャートの示す処理は、表示部１０２上に、図１１に示すようなネットワークの設定を行うためのＵＩが表示された状態で行われるものとする。
【００６９】
まず、Ｓ９０１では、ＣＰＵ２０２は、ユーザから操作部１０３上のキーに対する入力があることを検知する。
【００７０】
続いて、Ｓ９０２では、ＣＰＵ２０２は、Ｓ９０１における入力の内容を参照し、ネットワークとの接続の設定を行うか否かを判定する。このとき、ＣＰＵ２０２は、例えば、操作部１０３上のキーに対する入力により、図１１における「無線ＬＡＮを有効」、「ダイレクト接続を有効」、「有線ＬＡＮを有効」及び「ＬＡＮを無効」が選択された場合、ネットワークとの接続の設定を行うと判定する。また、ＣＰＵ２０２は、例えば、不図示の終了キー等に対する入力が行われた場合、ネットワークの設定を行わないと判定する。ＣＰＵは、ネットワークとの接続の設定を行うと判定した場合、Ｓ９０３の処理を行い、ネットワークとの接続の設定を行わないと判定した場合、Ｓ９０６の処理を行い、Ｓ９０１における入力に応じた処理を行う。
【００７１】
Ｓ９０３では、ＣＰＵ２０２は、Ｓ９０１における入力の内容を参照し、ネットワークとの接続を有効に設定するか否かを判定する。このとき、ＣＰＵ２０２は、例えば、操作部１０３上のキーに対する入力により、図１１における「無線ＬＡＮを有効」、「ダイレクト接続を有効」及び「有線ＬＡＮを有効」が選択された場合、ネットワークとの接続を有効に設定すると判定する。また、ＣＰＵ２０２は、操作部１０３上のキーに対する入力により、図１１における「ＬＡＮを無効」が選択された場合、ネットワークとの接続を有効に設定しないと判定する。ＣＰＵ２０２は、ネットワークとの接続を有効に設定すると判定した場合、Ｓ９０４の処理を行い、ネットワークとの接続を有効に設定しないと判定した場合、Ｓ９０５の処理を行う。
【００７２】
Ｓ９０４では、ＣＰＵ２０２は、ネットワークとの接続を有効に設定し、Ｓ９０１における入力の内容に応じて、前述したような、ネットワークと接続するための処理を実行する。
【００７３】
Ｓ９０５では、ＣＰＵ２０２は、ネットワークとの接続を無効に設定し、前述したように、ＭＦＰ１００をネットワークと接続できない状態にする。
【００７４】
このような形態とすることで、ＭＦＰ１００は、ネットワークとの接続の設定を、ユーザの操作に応じて実行することができる。
【００７５】
図８は、ネットワークとの接続が無効に設定されている又はネットワークと接続していない場合にＣＰＵ２０２が実行する処理を示すフローチャートである。なお、当該フローチャートの示す処理は、ＣＰＵ２０２が、ＲＯＭ２０５又は不図示のＨＤＤに記憶されている制御プログラムをＳＲＡＭ２０４又はＤＲＡＭ２０８にロードし、その制御プログラムを実行することにより実現されるものとする。なお、当該フローチャートの示す処理は、ネットワークとの接続が無効に設定されている又はネットワークと接続していない状態、且つＭＦＰ１００が通常電力モード３０２である状態で開始されるものとする。
【００７６】
まず、Ｓ８０２では、ＣＰＵ２０２は、ＣＰＵ２０２に対する通常電力モード３０２で行う処理のための割り込み要求が発生したか否かを判定する。ＣＰＵ２０２は、通常電力モード３０２で行う処理のための割り込み要求が発生したと判定した場合、Ｓ８０３の処理を行い、通常電力モード３０２で行う処理のための割り込み要求が発生していないと判定した場合、Ｓ８０６の処理を行う。
【００７７】
Ｓ８０３では、ＣＰＵ２０２は、ＣＰＵ２０２に対する通常電力モード３０２で行う処理のための割り込み要求に応じた処理を実行する。このとき、ＣＰＵ２０２は、タイマーがカウントしている経過時間（Ｔ１）をリセットする。その後、ＣＰＵ２０２は、Ｓ８０４の処理を行う。
【００７８】
Ｓ８０４では、ＣＰＵ２０２は、ネットワークとの接続が有効に設定されているか否かを判定する。ネットワークの設定は、図９のフローチャートの説明において示した方法で行われる。ＣＰＵ２０２は、ネットワークとの接続が有効に設定されていると判定した場合、Ｓ８０５の処理に進み、後述する、ネットワークとの接続が有効に設定されている場合にＣＰＵ２０２が実行する処理を実行する。一方、ネットワークとの接続が有効に設定されていないと判定した場合、Ｓ８０２の処理に戻る。なお、Ｓ８０４では、ＣＰＵ２０２は、ＭＦＰ１００がネットワークと接続しているか否かを判定しても良い。ＣＰＵ２０２は、ネットワークと接続していると判定した場合、Ｓ８０５の処理を実行し、ネットワークと接続していないと判定した場合、Ｓ８０２の処理に戻る。
【００７９】
Ｓ８０６では、ＣＰＵ２０２は、遷移条件３２２が満たされたか否かを判定する。このとき、ＣＰＵ２０２は、例えば、タイマーがカウントしている経過時間（Ｔ１）が、遷移条件３２２の設定時間を超えたか否かを判定する。なお、タイマーが減算方式で経過時間（Ｔ１）をカウントしている場合は、ＣＰＵ２０２は、経過時間（Ｔ１）が０になったか否かを判定しても良い。また、タイマーがＴＣＵの発するパルスの回数をカウントしている場合は、ＣＰＵ２０２は、遷移条件３２２の設定時間に相当する回数のパルスを受信したか否かをカウントしても良い。ＣＰＵ２０２は、遷移条件３２２が満たされたと判定した場合、Ｓ８０７の処理を行い、遷移条件３２２が満たされていないと判定した場合、再びＳ８０２の処理を行う。
【００８０】
Ｓ８０７では、ＣＰＵ２０２は、ＭＦＰ１００を、通常電力モード３０２から省電力モード３０８に遷移させる処理を行う。具体的には、ＣＰＵ２０２は、例えば、ＣＰＵ２１０、ネットワーク制御部２１１及び表示部２１５をＯＦＦ状態に遷移させ、ＣＰＵ２１４をスリープ状態に遷移させる。
【００８１】
Ｓ８０８では、ＣＰＵ２０２は、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態を低状態１に遷移させる。
【００８２】
Ｓ８０９では、ＣＰＵ２０２は、ＵＳＢ制御部２０９に対して、ＮＡＫ応答を行うように指示する。
【００８３】
Ｓ８１０では、ＣＰＵ２０２は、自身が動作するために利用するプログラムを、ＤＲＡＭ２０８に記憶されているプログラムから、ＳＲＡＭ２０４に記憶されているプログラムに切り替える。
【００８４】
Ｓ８１１では、ＣＰＵ２０２は、ＤＲＡＭコントローラ２０６に対して、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移可能とするコマンドを発行する。ＤＲＡＭコントローラ２０６は、ＣＰＵ２０２から、当該コマンドを受信することにより、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることができるようになる。なお、ＤＲＡＭコントローラ２０６がＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させる処理については後述する。
【００８５】
Ｓ８１２では、ＣＰＵ２０２は、ＤＲＡＭ  ＰＨＹ２０７をＯＦＦ状態に遷移させる。
【００８６】
Ｓ８１３では、ＣＰＵ２０２は、動作状態からスリープ状態に遷移する。このとき、ＭＦＰ１００は、省電力モード３０８への遷移が完了する。
【００８７】
Ｓ８１４では、ＣＰＵ２０２は、割り込み要求が発生したか否かを判定する。ＣＰＵ２０２は、割り込み要求が発生したと判定した場合、Ｓ８１５の処理を行い、割り込み要求が発生していないと判定した場合、再びＳ８１４の処理を行う。
【００８８】
Ｓ８１５では、ＣＰＵ２０２は、スリープ状態から動作状態に遷移する。
【００８９】
Ｓ８１６では、ＣＰＵ２０２は、ＤＲＡＭ  ＰＨＹ２０７をＯＮ状態に遷移させる。
【００９０】
Ｓ８１７では、ＣＰＵ２０２は、ＤＲＡＭコントローラ２０６に対して、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移不可能とするコマンドを発行する。ＤＲＡＭコントローラ２０６は、ＣＰＵ２０２から、当該コマンドを受信することにより、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることができなくなる。
【００９１】
Ｓ８１８では、ＣＰＵ２０２は、自身が動作するために利用するプログラムを、ＳＲＡＭ２０４に記憶されているプログラムから、ＤＲＡＭ２０８に記憶されているプログラムに切り替える。
【００９２】
Ｓ８１９では、ＣＰＵ２０２は、ＵＳＢ制御部２０９に対して、ＡＣＫ応答を行うように指示する。
【００９３】
Ｓ８２０では、ＣＰＵ２０２は、発生した割り込み要求が、データ受信による割り込み要求であるか否かを判定する。この判定は、ＣＰＵ２０２が、通常電力モード３０２に遷移して、発生した割り込み要求に応じた処理を行うか、省電力モード３０９に遷移して、発生した割り込み要求に応じた処理を行うかを判断するために行われる。ＣＰＵ２０２は、データ受信による割り込み要求でないと判定した場合、Ｓ８２１の処理を行い、データ受信による割り込み要求であると判定した場合、Ｓ８２３の処理を行う。
【００９４】
Ｓ８２１では、ＣＰＵ２０２は、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態を通常状態に遷移させる。
【００９５】
Ｓ８２２では、ＣＰＵ２０２は、ＭＦＰ１００を、省電力モード３０８から通常電力モード３０２に遷移させる処理を行う。具体的には、ＣＰＵ２０２は、例えば、ＣＰＵ２１０、ＣＰＵ２１４、ネットワーク制御部２１１及び表示部２１５を動作状態に遷移させる。その後、ＣＰＵ２０２は、Ｓ８０３の処理を行い、発生した割り込み要求に応じた割り込み処理を実行する。
【００９６】
Ｓ８２３では、ＣＰＵ２０２は、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態を低状態２に遷移させる。このとき、ＭＦＰ１００は、省電力モード３０８から省電力モード３０９に遷移することとなる。
【００９７】
Ｓ８２４では、ＣＰＵ２０２は、Ｓ８２０にてデータ受信による割り込み要求であると判定した割り込み要求が、ジョブの受信による割り込み要求であるか否かを判定する。ジョブの受信による割り込み要求は、通常電力モード３０２で行う処理のための割り込み要求である。そのため、ＣＰＵ２０２は、ジョブの受信による割り込み要求であると判定した場合は、Ｓ８２１以降の処理を行い、ＭＦＰ１００を通常電力モードに遷移させる。一方、ＣＰＵ２０２は、ジョブの受信による割り込み要求であると判定した場合は、Ｓ８２５の処理を行う。なお、Ｓ８２４の判定が、ＭＦＰ１００が省電力モード３０９に遷移した後に行われるのは、ＣＰＵ２０２は、ＭＦＰ１００が実際にデータを受信してからしか、データ受信による割り込み要求の発生原因が分からないからである。
【００９８】
Ｓ８２５では、ＣＰＵ２０２は、発生した割り込み要求に応じた割り込み処理を実行する。このとき、ＣＰＵ２０２は、タイマーがカウントしている経過時間（Ｔ１）をリセットする。なお、Ｓ８２５で行われる処理は、ジョブの受信による割り込み要求でない、データ受信による割り込み要求に応じた処理であり、省電力モードで実行可能な処理である。
【００９９】
Ｓ８２６では、ＣＰＵ２０２は、Ｓ８１４と同様、割り込み要求が発生したか否かを判定する。割り込み要求が発生したと判定した場合、Ｓ８２７の処理を行い、割り込み要求が発生していないと判定した場合、Ｓ８２９の処理を行う。
【０１００】
Ｓ８２７では、ＣＰＵ２０２は、Ｓ８２０と同様、発生した割り込み要求が、データ受信による割り込み要求であるか否かを判定する。この判定は、ＣＰＵ２０２が、ＭＦＰ１００を省電力モード３０９に維持したまま、発生した割り込み要求に応じた処理を行うか、ＭＦＰ１００を通常電力モード３０２に遷移させて、発生した割り込み要求に応じた処理を行うかを判断するために行われる。ＣＰＵ２０２は、データ受信による割り込み要求であると判定した場合、Ｓ８２８の処理を行い、データ受信による割り込み要求でないと判定した場合、Ｓ８２１の処理を行う。
【０１０１】
Ｓ８２８では、ＣＰＵ２０２は、Ｓ８２４と同様、Ｓ８２７にてデータ受信による割り込み要求であると判定した割り込み要求が、ジョブの受信による割り込み要求であるか否かを判定する。ＣＰＵ２０２は、ジョブの受信による割り込み要求であると判定した場合は、Ｓ８２１以降の処理を行い、ＭＦＰ１００を通常電力モードに遷移させる。一方、ＣＰＵ２０２は、ジョブの受信による割り込み要求でないと判定した場合は、再びＳ８２５の処理を行う。
【０１０２】
Ｓ８２９では、ＣＰＵ２０２は、Ｓ８０６と同様、遷移条件３２５が満たされたか否かを判定する。ＣＰＵ２０２は、遷移条件３２５が満たされたと判定した場合、Ｓ８０８の処理を再び行い、ＭＦＰ１００を、省電力モード３０８に再び遷移させる。一方、ＣＰＵ２０２は、遷移条件３２５が満たされていないと判定した場合、再びＳ８２６の処理を行う。
【０１０３】
このような形態とすることで、ＭＦＰ１００は、ネットワークが無効に設定されている場合は、ネットワーク制御が必要ないため、消費電力の削減効果が高い省電力モードに遷移することができる。また、ＭＦＰ１００は、それぞれの遷移条件に応じて、モードを切り替えることで、モードの遷移を適切な場合に行うことができる。
【０１０４】
図６は、ネットワークが有効に設定されている又はネットワークと接続している場合にＣＰＵ２０２が実行する処理を示すフローチャートである。なお、当該フローチャートの示す処理は、ＣＰＵ２０２が、ＲＯＭ２０５又は不図示のＨＤＤに記憶されている制御プログラムをＳＲＡＭ２０４又はＤＲＡＭ２０８にロードし、その制御プログラムを実行することにより実現されるものとする。なお、当該フローチャートの示す処理は、ネットワークが有効に設定されている又はネットワークと接続している状態、かつＭＦＰ１００が通常電力モード３０２である状態で開始されるものとする。
【０１０５】
まず、Ｓ６０２では、ＣＰＵ２０２は、ＣＰＵ２０２に対する通常電力モード３０２で行う処理のための割り込み要求が発生したか否かを判定する。ＣＰＵ２０２は、通常電力モード３０２で行う処理のための割り込み要求が発生したと判定した場合、Ｓ６０３の処理を行い、通常電力モード３０２で行う処理のための割り込み要求が発生していないと判定した場合、Ｓ６０６の処理を行う。
【０１０６】
Ｓ６０３では、ＣＰＵ２０２は、ＣＰＵ２０２に対する通常電力モード３０２で行う処理のための割り込み要求に応じた処理を実行する。このとき、ＣＰＵ２０２は、タイマーがカウントしている経過時間（Ｔ１）をリセットする。その後、ＣＰＵ２０２は、Ｓ６０４の処理を行う。
【０１０７】
Ｓ６０４では、ＣＰＵ２０２は、ネットワークが有効に設定されているか否かを判定する。ネットワークの設定は、図９のフローチャートの説明において示した方法で行われる。ＣＰＵ２０２は、ネットワークが有効に設定されていると判定した場合、Ｓ６０２の処理に戻る。一方、ネットワークが有効に設定されていないと判定した場合、Ｓ６０５の処理に進み、前述した、ネットワークが無効に設定されている場合にＣＰＵ２０２が実行する処理を実行する。なお、Ｓ８０４では、ＣＰＵ２０２は、ＭＦＰ１００がネットワークと接続しているか否かを判定しても良い。ＣＰＵ２０２は、ネットワークと接続していると判定した場合、Ｓ６０２の処理に戻り、ネットワークと接続していないと判定した場合、Ｓ６０５の処理を実行する。
【０１０８】
Ｓ６０６では、ＣＰＵ２０２は、遷移条件３１２が満たされたか否かを判定する。このとき、ＣＰＵ２０２は、例えば、タイマーがカウントしている経過時間（Ｔ１）が、遷移条件３１２の設定時間を超えたか否かを判定する。なお、タイマーが減算方式で経過時間（Ｔ１）をカウントしている場合は、ＣＰＵ２０２は、経過時間（Ｔ１）が０になったか否かを判定しても良い。また、タイマーがＴＣＵの発するパルスの回数をカウントしている場合は、ＣＰＵ２０２は、遷移条件３１２の設定時間に相当する回数のパルスを受信したか否かをカウントしても良い。ＣＰＵ２０２は、遷移条件３１２が満たされたと判定した場合、Ｓ６０７の処理を行い、遷移条件３１２が満たされていないと判定した場合、再びＳ６０２の処理を行う。
【０１０９】
Ｓ６０７では、ＣＰＵ２０２は、ＭＦＰ１００を、通常電力モード３０２から省電力モード３０４に遷移させる処理を行う。具体的には、ＣＰＵ２０２は、例えば、ＣＰＵ２１４をスリープ状態、表示部２１５をＯＦＦ状態、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態を低状態２に遷移させる。
【０１１０】
Ｓ６０８では、ＣＰＵ２０２は、ＵＳＢ制御部２０９に対して、ＮＡＫ応答を行うように指示する。
【０１１１】
Ｓ６０９では、ＣＰＵ２０２は、ＤＲＡＭコントローラ２０６に対して、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移可能とするコマンドを発行する。
【０１１２】
Ｓ６１０では、ＣＰＵ２０２は、ＣＰＵ２１０に対し、省電力モード３０４に遷移したことを通知するための割り込み要求を発行する。ＣＰＵ２１０は、ＣＰＵ２０２から、当該割り込み要求を受信することにより、スリープ状態に遷移することができるようになる。なお、ＣＰＵ２１０が実行する処理については後述する。
【０１１３】
Ｓ６１１では、ＣＰＵ２０２は、割り込み要求が発生したか否を判定する。ＣＰＵ２０２は、割り込み要求が発生したと判定した場合、Ｓ６１２の処理を行い、割り込み要求が発生していないと判定した場合、Ｓ６１８の処理を行う。
【０１１４】
Ｓ６１２では、ＣＰＵ２０２は、Ｓ６１１で判定した割り込み要求が、通常電力モード３０２で行う処理のための割り込み要求であるか否かを判定する。ＣＰＵ２０２は、通常電力モード３０２で行う処理のための割り込み要求であると判定した場合、Ｓ６１３の処理を行い、通常電力モード３０２で行う処理のための割り込み要求でないと判定した場合、Ｓ６１７の処理を行う。
【０１１５】
Ｓ６１３では、ＣＰＵ２０２は、ＣＰＵ２１０に対し、通常電力モード３０２に遷移したことを通知するための割り込み要求を発行する。ＣＰＵ２１０は、ＣＰＵ２０２から、当該割り込み要求を受信することにより、スリープ状態に遷移することができなくなる。また、ＣＰＵ２１０は、すでにスリープ状態である場合、ＣＰＵ２０２から、当該割り込み要求を受信することにより、通常状態に遷移する。
【０１１６】
Ｓ６１４では、ＣＰＵ２０２は、ＤＲＡＭコントローラ２０６に対して、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移不可能とするコマンドを発行する。ＤＲＡＭコントローラ２０６は、ＣＰＵ２０２から、当該コマンドを受信することにより、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることができなくなる。
【０１１７】
Ｓ６１５では、ＣＰＵ２０２は、ＵＳＢ制御部２０９に対して、ＡＣＫ応答を行うように指示する。
【０１１８】
Ｓ６１６では、ＣＰＵ２０２は、ＭＦＰ１００を、通常電力モード３０２に遷移させる処理を行う。具体的には、ＣＰＵ２０２は、例えば、ＣＰＵ２１４及び表示部２１５を動作状態、ＣＬＯＣＫ生成部２０３が出力するクロックの周波数の状態を通常状態に遷移させる。その後、ＣＰＵ２０２は、Ｓ６０３の処理を行う。
【０１１９】
Ｓ６１７では、ＣＰＵ２０２は、発生した割り込み要求に応じた処理を実行する。このとき、ＣＰＵ２０２は、タイマーがカウントしている経過時間（Ｔ１）をリセットする。その後、ＣＰＵ２０２は、再びＳ６１１の処理を行う。
【０１２０】
Ｓ６１８では、ＣＰＵ２０２は、Ｓ６０６と同様、遷移条件３１６が満たされたか否かを判定する。ＣＰＵ２０２は、遷移条件３１６が満たされたと判定した場合、Ｓ６１９の処理を行い、遷移条件３１６が満たされていないと判定した場合、再びＳ６１１の処理を行う。
【０１２１】
Ｓ６１９では、ＣＰＵ２０２は、動作状態からスリープ状態に遷移する。このとき、ＭＦＰ１００は、ＣＰＵ２１０がスリープ状態になっていなければ、省電力モード３０６に遷移し、ＣＰＵ２１０がスリープ状態になっていれば、省電力モード３０７に遷移することとなる。
【０１２２】
Ｓ６２０では、ＣＰＵ２０２は、Ｓ６１１と同様、割り込み要求が発生したか否を判定する。ＣＰＵ２０２は、割り込み要求が発生したと判定した場合、Ｓ６２１の処理を行い、割り込み要求が発生していないと判定した場合、再びＳ６２０の処理を行う。
【０１２３】
Ｓ６２１では、ＣＰＵ２０２は、スリープ状態から動作状態に遷移する。ＣＰＵ２０２は、動作状態に復帰することで、Ｓ６２０で判定した割り込み要求の内容を判別することが可能となる。このとき、ＭＦＰ１００は、ＣＰＵ２１０がスリープ状態になっていなければ、省電力モード３０４に遷移し、ＣＰＵ２１０がスリープ状態になっていれば、省電力モード３０５に遷移することとなる。
【０１２４】
Ｓ６２２では、ＣＰＵ２０２は、発生した割り込み要求が、通常電力モード３０２で行う処理のための割り込み要求であるか否かを判定する。ＣＰＵ２０２は、通常電力モード３０２で行う処理のための割り込み要求であると判定した場合、Ｓ６１３の処理を行い、通常電力モード３０２で行う処理のための割り込み要求でないと判定した場合、Ｓ６１７の処理を行う。
【０１２５】
このような構成とすることで、ＣＰＵ２０２は、ネットワークが有効な設定である状況下においても、適切なタイミングでスリープ状態に遷移し、消費電力を削減することができる。また、ＭＦＰ１００は、ネットワークが有効な設定である状況下においても、各ＣＰＵの処理状況に応じた適切な省電力モードに遷移し、消費電力を削減することができる。
【０１２６】
図７は、ネットワークが有効に設定されている場合にＣＰＵ２１０が実行する処理を示すフローチャートである。なお、当該フローチャートの示す処理は、ＣＰＵ２０２が、ＲＯＭ２０５又は不図示のＨＤＤに記憶されている制御プログラムをＳＲＡＭ２０４又はＤＲＡＭ２０８にロードし、ＣＰＵ２１０がその制御プログラムを実行することにより実現されるものとする。なお、当該フローチャートの示す処理は、ネットワークが有効に設定されている状態、かつＭＦＰ１００が通常電力モード３０２である状態で開始されるものとする。
【０１２７】
まず、Ｓ７０２では、ＣＰＵ２１０は、ＣＰＵ２１０に対する割り込み要求が発生したか否かを判定する。ＣＰＵ２１０は、割り込み要求が発生したと判定した場合、Ｓ７０７の処理を行い、割り込み要求が発生していないと判定した場合、Ｓ７０３の処理を行う。
【０１２８】
Ｓ７０７では、ＣＰＵ２１０は、ＣＰＵ２１０に対する割り込み要求に応じた割り込み処理を実行する。このとき、ＣＰＵ２０２は、タイマーがカウントしている経過時間（Ｔ２）をリセットする。その後、ＣＰＵ２０２は、Ｓ７０８の処理を行う。
【０１２９】
Ｓ７０８では、ＣＰＵ２１０は、Ｓ７０２で判定した割り込み要求が、ＣＰＵ２０２が実行する処理にかかわる割り込み要求であるか否かを判定する。ＣＰＵ２０２が実行する処理とは、例えば、受信したジョブの処理や、ＭＦＰ１００の状態の情報を送信する処理等である。ＣＰＵ２１０は、ＣＰＵ２０２が実行する処理にかかわる割り込み要求であると判定した場合、Ｓ７０９の処理を行い、ＣＰＵ２０２が実行する処理にかかわる割り込み要求でないと判定した場合、再びＳ７０２の処理を行う。
【０１３０】
Ｓ７０９では、ＣＰＵ２１０は、ＣＰＵ２０２が実行する処理にかかわる割り込み要求があったことを通知するための割り込み要求を、ＣＰＵ２０２に対して送信する。その後、ＣＰＵ２１０は、再びＳ７０２の処理を行う。
【０１３１】
Ｓ７０３では、ＣＰＵ２１０は、遷移条件３１４が満たされたか否かを判定する。このとき、ＣＰＵ２０２は、例えば、タイマーがカウントしている経過時間（Ｔ２）が、遷移条件３１４の設定時間を超えたか否かを判定する。なお、タイマーが減算方式で経過時間（Ｔ２）をカウントしている場合は、ＣＰＵ２０２は、経過時間（Ｔ２）が０になったか否かを判定しても良い。また、タイマーがＴＣＵの発するパルスの回数をカウントしている場合は、ＣＰＵ２０２は、遷移条件３１４の設定時間に相当する回数のパルスを受信したか否かをカウントしても良い。ＣＰＵ２１０は、遷移条件３１４が満たされたと判定した場合、Ｓ７０４の処理を行い、遷移条件３１４が満たされていないと判定した場合、再びＳ７０２の処理を行う。
【０１３２】
Ｓ７０４では、ＣＰＵ２１０は、スリープ状態に遷移可能であるか否かを判定する。ＣＰＵ２１０は、ＣＰＵ２０２から省電力モード３０４に遷移したことを通知するための割り込み要求を受けた場合、スリープ状態に遷移可能となる。スリープ状態に遷移可能であるか否かは、例えば、フラグ等によって管理される。なお、ＣＰＵ２１０は、ＣＰＵ２０２から省電力モード３０４に遷移したことを通知するための割り込み要求を受けた場合でも、その後通常電力モード３０２に遷移したことを通知するための割り込み要求を受けた場合、スリープ状態に遷移不可能となる。ＣＰＵ２１０は、スリープ状態に遷移可能であると判定した場合、Ｓ７０５の処理を行い、スリープ状態に遷移可能でないと判定した場合、再びＳ７０２の処理を行う。
【０１３３】
Ｓ７０５では、ＣＰＵ２１０は、動作状態からスリープ状態に遷移する。このとき、ＭＦＰ１００は、ＣＰＵ２０２がスリープ状態になっていなければ、省電力モード３０５に遷移し、ＣＰＵ２１０がスリープ状態になっていれば、省電力モード３０７に遷移することとなる。
【０１３４】
Ｓ７０６では、ＣＰＵ２１０は、Ｓ７０２と同様、ＣＰＵ２１０に対する割り込み要求が発生したか否かを判定する。ＣＰＵ２１０は、割り込み要求が発生したと判定した場合、Ｓ７１０の処理を行い、割り込み要求が発生していないと判定した場合、再びＳ７０６の処理を行う。
【０１３５】
Ｓ７１０では、ＣＰＵ２１０は、スリープ状態から動作状態に遷移する。このとき、ＭＦＰ１００は、ＣＰＵ２０２がスリープ状態になっていなければ、省電力モード３０４に遷移し、ＣＰＵ２０２がスリープ状態になっていれば、省電力モード３０６に遷移することとなる。その後、ＣＰＵ２１０は、Ｓ７０７の処理を行い、割り込み要求に応じた割り込み処理を実行する。
【０１３６】
このような構成とすることで、ＣＰＵ２１０は、ネットワークが有効な設定であり、ネットワーク制御を行う可能性が高い状況下においても、適切なタイミングでスリープ状態に遷移し、消費電力を削減することができる。また、ＭＦＰ１００は、ネットワークが有効な設定であり、ネットワーク制御を行う可能性が高い状況下においても、各ＣＰＵの処理状況に応じた適切な省電力モードに遷移し、消費電力を削減することができる。
【０１３７】
図１２は、ＤＲＡＭコントローラ２０６がＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させる処理を示すフローチャートである。なお、当該フローチャートの示す処理は、ＤＲＡＭコントローラ２０６が、ワイヤードロジックによってプログラムを利用せずに実行するものとする。
【０１３８】
まず、Ｓ１２０２では、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることが可能であるか否かを判定する。ＤＲＡＭコントローラ２０６は、ＣＰＵ２０２からＤＲＡＭ２０８をセルフリフレッシュ状態に遷移可能とするコマンドを受けた場合、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることができる。ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることが可能であるか否かは、例えば、フラグ等によって管理される。なお、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移不可能とするコマンドを受けた場合、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることができなくなる。ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることが可能であると判定した場合、Ｓ１２０３の処理を行う。一方、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させることが可能でないと判定した場合、再びＳ１２０２の処理を行う。
【０１３９】
Ｓ１２０３では、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８が通常リフレッシュ状態であるか否かを判定する。ＤＲＡＭ２０８が通常リフレッシュ状態でない場合は、ＤＲＡＭはすでにセルフリフレッシュ状態であるため、その後の処理を行う必要がない。そのため、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８が通常リフレッシュ状態であると判定した場合、Ｓ１２０４の処理を行い、ＤＲＡＭ２０８が通常リフレッシュ状態でないと判定した場合、再びＳ１２０２の処理を行う。
【０１４０】
Ｓ１２０４では、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無いか否かを判定する。ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無いか否かの判定は、例えば、ＤＲＡＭコントローラ２０６が備えるコマンドキューに、コマンドがキューイングされているか否かを判定することによって行われる。ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスがあると、当該アクセスに応じたコマンドがＤＲＡＭコントローラ２０６が備えるコマンドキューにキューイングされる。そのため、ＤＲＡＭコントローラ２０６が備えるコマンドキューにキューイングされているコマンドがなくなった場合は、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無くなったということが分かる。ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無いと判定した場合、Ｓ１２０５の処理を行い、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスがあると判定した場合、再びＳ１２０２の処理を行う。
【０１４１】
Ｓ１２０５では、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させる。このとき、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させるためのコマンドをＤＲＡＭ２０８に対し送信する。なお、ＤＲＡＭコントローラ２０６は、Ｓ１２０５の処理の前に、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無くなってから、所定の時間が経過したか否かを判定する処理を行っても良い。その場合、ＤＲＡＭコントローラ２０６は、所定の時間が経過したと判定した場合、Ｓ１２０５の処理を行い、所定の時間が経過していないと判定した場合、再びＳ１２０２の処理を行う。
【０１４２】
Ｓ１２０６では、ＤＲＡＭコントローラ２０６は、Ｓ１２０４と同様、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無いか否かを判定する。ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスが無いと判定した場合、再びＳ１２０６の処理を行い、ＤＲＡＭ２０８に対して各ＣＰＵからのアクセスがあると判定した場合、Ｓ１２０７の処理を行う。
【０１４３】
Ｓ１２０７では、ＤＲＡＭコントローラ２０６は、ＤＲＡＭ２０８を通常リフレッシュ状態に遷移させる。
【０１４４】
このように本実施形態では、ＤＲＡＭ２０８内に記憶されたプログラムを用いる全てのＣＰＵがスリープ状態となり、ＤＲＡＭ２０８に対してアクセスが無い場合には、ＤＲＡＭ２０８はセルフリフレッシュ状態に遷移する。このような形態とすることで、ＭＦＰ１００は、各ＣＰＵの動作を抑制せずに、適切なタイミングで消費電力を削減することができる。
【０１４５】
図１０は、ＭＦＰ１００の内部処理状態の経時変化を例示する図であり、ネットワークが有効に設定されており、且つＭＦＰ１００が第１の省電力モード３０３に遷移している場合のＣＰＵ２０２、ＣＰＵ２１０及びＤＲＡＭ２０８の状態の経時変化を示している。図１０において、ＭＦＰ１００は、第１の省電力モード３０３に遷移しているため、ＣＰＵ２１４は、常にスリープ状態であるものとする。
【０１４６】
期間１００１はＣＰＵ２０２が動作状態である期間を示し、期間１００２はＣＰＵ２０２がスリープ状態である期間を示している。期間１００３はＣＰＵ２１０が動作状態である期間を示し、期間１００４はＣＰＵ２１０がスリープ状態である期間を示している。期間１００５は、ＤＲＡＭ２０８がセルフリフレッシュ状態である期間を示し、期間１００６は、ＤＲＡＭ２０８が通常リフレッシュ状態である期間を示している。また、期間Ａは、ＣＰＵ２０２及びＣＰＵ２１０がスリープ状態である期間を示し、期間Ｂは、ＣＰＵ２０２が動作状態であり、ＣＰＵ２１０がスリープ状態である期間を示している。また、期間Ｃは、ＣＰＵ２０２がスリープ状態であり、ＣＰＵ２１０が動作状態である期間を示し、期間Ｄは、ＣＰＵ２０２及びＣＰＵ２１０が動作状態である期間を示している。
【０１４７】
ネットワークが有効に設定されており、ＭＦＰ１００がネットワークと接続している状況下においては、ＣＰＵ２１０は、ネットワーク上に流れるパケットを処理する必要があるため、ＤＲＡＭ２０８に頻繁にアクセスする。そのため、本実施形態では、いずれかのＣＰＵが動作状態である期間（期間Ｂ、期間Ｃ及び期間Ｄ）においては、ＤＲＡＭ２０８は、セルフリフレッシュ状態に遷移しない。一方、ネットワークが有効に設定されている状況においても、各ＣＰＵがスリープ状態になり、ＤＲＡＭ２０８へのアクセスが行われなくなるタイミングがある。そこで、本実施形態では、ＭＦＰ１００が備える各ＣＰＵが全てスリープ状態である期間（期間Ａ）においては、ＤＲＡＭ２０８は、ネットワークが有効に設定されている場合でも、セルフリフレッシュ状態に遷移する。このような形態とすることで、本実施形態のＭＦＰ１００は、複数のＣＰＵを搭載し、ネットワーク制御のためのプログラムをＤＲＡＭ２０８に記憶している場合においても、ＤＲＡＭ２０８の消費電力を削減することができる。なお、例えば、各ＣＰＵがキャッシュメモリを有しており、各ＣＰＵがキャッシュメモリ内に記憶されたプログラムを用いて処理を行っている場合がある。この場合、各ＣＰＵは、スリープ状態ではないが、ＤＲＡＭ２０８へのアクセスを行わないため、ＤＲＡＭ２０８は、各ＣＰＵがスリープ状態か否かにかかわらず、自身へのアクセスが行われなくなった時点で、セルフリフレッシュ状態に遷移しても良い。
【０１４８】
（その他の実施形態）
上述の実施形態では、ＭＦＰ１００は、３つのＣＰＵを備えているが、ＭＦＰ１００が備えるＣＰＵの数はこれに限定されない。なお、いずれの数のＣＰＵが備わっていても、ＭＦＰ１００は、少なくとも、ＤＲＡＭ２０８が記憶するプログラムを用いる全てのＣＰＵからＤＲＡＭ２０８に対してアクセスがない場合に、ＤＲＡＭ２０８をセルフリフレッシュ状態に遷移させる。
【０１４９】
上述の実施形態では、第１の省電力モード３０３には、４つの省電力モードが属しており、第２の省電力モード３２７には、２つの省電力モードが属しているが、それぞれの省電力モード群に属する省電力モードの数はこれに限定されない。本発明においては、第１の省電力モード３０３に少なくとも２以上の省電力モードが属していればよい。すなわち、例えば、省電力モード３０４と省電力モード３０６の中間に他の省電力モードが存在しても良いし、省電力モード３０５及び３０６が無くても良い。なお、いずれの場合においても、ＭＦＰ１００は、省電力モード３０７には、少なくとも、ＤＲＡＭ２０８が記憶するプログラムを用いる全てのＣＰＵからＤＲＡＭ２０８に対してアクセスがない場合に遷移する。
【０１５０】
上述の実施形態の効果を実現できれば、上述の実施形態のフローチャートの処理の順番を入れ替えても良いし、その全ての処理を実行しなくても良いし、処理の内容を変更しても良い。
【０１５１】
上述の実施形態は、上述の実施形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを実行する処理でも実現可能である。また、上述の実施形態は、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１５２】
１００  ＭＦＰ
２０２  ＣＰＵ
２１０  ＣＰＵ
２１４  ＣＰＵ
２０８  ＤＲＡＭ
【図１】
0006444264.tif 000002
【図２】
0006444264.tif 000003
【図３】
0006444264.tif 000004
【図４】
0006444264.tif 000005
【図５】
0006444264.tif 000006
【図６】
0006444264.tif 000007
【図７】
0006444264.tif 000008
【図８】
0006444264.tif 000009
【図９】
0006444264.tif 000010
【図１０】
0006444264.tif 000011
【図１１】
0006444264.tif 000012
【図１２】
0006444264.tif 000013