(57)【要約】【課題】省電力モードから通常電力モードに復帰した後、応答済みの受信パケットに対して再度応答を行うことを防止する。【解決手段】通常電力モードの際、ＣＰＵ２０１は受信パケットに応じて応答処理を実行して応答パケットを生成する。通常電力モードよりも電力供給を低減する省電力モードの際、マイクロプロセッサ３０８は受信パケットに応じて応答処理を実行して応答パケットを生成する。ＣＰＵが省電力モードから通常電力モードに復帰する復帰処理中において、ＭＡＣ３０９は受信パケットをＲｘ  ＦＩＦＯ３０６、ＲＡＭ２０２に転送する。ＣＰＵは、復帰処理中にマイクロプロセッサで受信パケットに対する応答処理が行われると、ＲＡＭに転送された受信パケットのうち当該応答処理に対応する受信パケットを削除する。【選択図】図３
2012156645.tif 000002
【特許請求の範囲】
【請求項１】
外部機器から受信した受信情報に対する応答情報を生成して、前記応答情報を送信する情報処理装置であって、
前記受信情報に対する前記応答情報を生成する第１の生成手段と、
前記第１の生成手段が前記応答情報を生成できない省電力状態にある場合、前記受信情報に対する前記応答情報を生成する第２の生成手段と、
前記第１の生成手段が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記受信情報を前記第１および前記第２の生成手段の双方に転送する転送制御手段とを有し、
前記第１の生成手段は、前記転送制御手段によって前記第１の生成手段に転送された前記受信情報のうち、前記転送制御手段によって前記第２の生成手段に転送された前記受信情報であって前記第２の生成手段によって前記応答情報が生成された前記受信情報に対しては前記応答情報を生成しないことを特徴とする情報処理装置。
【請求項２】
前記第１の生成手段は、前記転送制御手段によって前記第１の生成手段に転送された前記受信情報のうち、前記第２の生成手段によって前記応答情報が生成されていない前記受信情報に対して前記応答情報を生成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１の生成手段は前記受信情報を格納する第１の記憶手段を有し、
前記第２の生成手段は前記受信情報を格納する第２の記憶手段を有し、
前記転送制御手段は、前記第１の生成手段が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記第１および前記第２の記憶手段に前記受信情報を転送することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記転送制御手段は、前記第１の生成手段が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記第１の記憶手段がアクセス可能となるまで前記第２の記憶手段にのみ前記受信情報を転送して格納することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第１の生成手段に対する電力の供給を制御する電力制御手段を有し、
前記第２の生成手段によって応答できない予め規定された復帰要因情報を前記外部機器から受信した際、前記電力制御手段は前記第１の生成手段に電力を供給することを特徴とする請求項１〜４のいずれか１項記載の情報処理装置。
【請求項６】
前記転送制御手段は、前記第１の生成手段が前記応答情報を生成できる状態である場合、前記受信情報を前記第１の生成手段にのみ転送することを特徴とする請求項１〜５のいずれか１項記載の情報処理装置。
【請求項７】
前記転送制御手段は、前記第１の生成手段が前記省電力状態にある場合、前記第２の生成手段にのみ前記受信情報を転送することを特徴とする請求項１〜５のいずれか１項記載の情報処理装置。
【請求項８】
外部機器から受信情報を受信し、前記受信情報を制御装置に転送する通信装置であって、
外部機器から受信情報を受信する受信手段と、
前記制御装置が前記受信情報に対して応答できない省電力状態にある場合、前記受信情報に対して応答する制御手段と、
前記制御装置が前記省電力状態から前記受信情報に対して応答できる状態に移行しているときに、前記受信情報を前記制御装置及び前記制御手段の双方に転送する転送制御手段とを有することを特徴とする通信装置。
【請求項９】
前記制御装置に転送すべき前記受信情報を記憶する第１のＦＩＦＯと、
前記制御手段に転送すべき前記受信情報を記憶する第２のＦＩＦＯとを有し、
前記転送制御手段は、前記制御装置が前記省電力状態から前記受信情報に対して応答できる状態に移行しているときに、前記受信情報を第１のＦＩＦＯと第２のＦＩＦＯの双方に転送することを特徴とする請求項８に記載の通信装置。
【請求項１０】
外部機器から受信した受信情報に対する応答情報を生成して、前記応答情報を送信する情報処理装置の制御方法であって、
前記情報処理装置に備えられた第１の制御部によって、第１のメモリに格納された前記受信情報に対する前記応答情報を生成する第１の生成ステップと、
前記第１の制御部が前記応答情報を生成できない省電力状態にある場合、前記情報処理装置に備えられた第２の制御部によって、第２のメモリに格納された前記受信情報に対する前記応答情報を生成する第２の生成ステップと、
前記第１の制御部が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記情報処理装置に備えられた転送制御部によって、前記受信情報を前記第１および前記第２のメモリの双方に転送する転送制御ステップとを有し、
前記第１の制御部によって、前記第１のメモリに転送された前記受信情報のうち、前記第２のメモリに転送された前記受信情報であって前記第２の制御部によって前記応答情報が生成された前記受信情報を削除する削除ステップを行うことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、通信装置、およびその制御方法に関し、外部機器から受信した情報に対する応答処理に関する。
【背景技術】
【０００２】
情報処理装置において、省電力モードを有するものが知られている。このような情報処理装置として、例えば、情報処理装置がメインＣＰＵとサブＣＰＵとを有し、省電力モードではメインＣＰＵに対する電力の供給を通常よりも低減（又は遮断）した状態にする。そして、省電力モードにおいて、ネットワークに対する応答を行う際、メインＣＰＵに対する電力の供給を通常状態に戻すことなく、サブＣＰＵによってネットワーク応答を実行する（例えば、特許文献１参照）。
【０００３】
特許文献１においては、省電力モードの際には、サブＣＰＵに対するクロックの供給量を最小限にしており、このような状態では、ネットワークを介して受信するパケットの全てに対して応答することは困難である。
【０００４】
このため、特許文献１では、サブＣＰＵにおいて対応できないパケットを、ネットワークを介して受信すると、メインＣＰＵを省電力モードから通常状態（通常電力モード）に復帰させて、その後、メインＣＰＵによってネットワークを介して受信したパケットに対する応答を行っている。
【０００５】
他の例として、情報処理装置がメインＣＰＵとメモリを有し、省電力モードではメインＣＰＵに対する電力の供給を通常よりも低減（又は遮断）した状態にする（例えば特許文献２）。
【０００６】
ところが、一般に、省電力モードが解除された後、通常電力モードが立ち上がるまでに要する時間は長い。省電力モードを解除して、メインＣＰＵに対して電力の供給を開始しても、メインＣＰＵが完全に機能するまでには若干の空白時間がある。言い換えると、メインＣＰＵが省電力モードから通常状態に完全に復帰するまでには空白時間が存在する。
【０００７】
そして、当該空白時間の間にネットワークを介してパケットが情報処理装置に送られると、当該パケットを取りこぼしてしまう事態が発生する。
【０００８】
このような問題に対処するため、特許文献２では、メインＣＰＵが通常電力モードに移行するまでの間、ネットワークを介して受信したパケットをメモリに格納する。これによって、省電力モードから通常電力モードへの復帰中におけるパケットの取りこぼしを防止するようにしている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−１５１５３７号公報
【特許文献２】特開２００８−１８１４３６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献２に記載の手法においては、メインＣＰＵが完全に機能するまでの空白時間の間において、情報処理装置はネットワークを介して受信したバケットに対する応答ができない。
【００１１】
一方、メインＣＰＵとサブＣＰＵを有する情報処理装置において、メインＣＰＵが完全に機能するまでの間、サブＣＰＵがパケットに対する応答をした場合、サブＣＰＵによって応答可能なパケットについては応答処理がなされるものの、サブＣＰＵによって応答できないパケットについては応答処理がなされない。
【００１２】
従って、本発明の目的は、外部機器から受信した受信情報に対する応答処理の取りこぼしを軽減する情報処理装置、通信装置、およびその制御方法を提供ことにある。
【課題を解決するための手段】
【００１３】
上記の目的を達成するため、本発明による情報処理装置は、外部機器から受信した受信情報に対する応答情報を生成して、前記応答情報を送信する情報処理装置であって、前記受信情報に対する前記応答情報を生成する第１の生成手段と、前記第１の生成手段が前記応答情報を生成できない省電力状態にある場合、前記受信情報に対する前記応答情報を生成する第２の生成手段と、前記第１の生成手段が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記受信情報を前記第１および前記第２の生成手段の双方に転送する転送制御手段とを有し、前記第１の生成手段は、前記転送制御手段によって前記第１の生成手段に転送された前記受信情報のうち、前記転送制御手段によって前記第２の生成手段に転送された前記受信情報であって前記第２の生成手段によって前記応答情報が生成された前記受信情報に対しては前記応答情報を生成しないことを特徴とする。
【００１４】
本発明による通信装置は、外部機器から受信情報を受信し、前記受信情報を制御装置に転送する通信装置であって、外部機器から受信情報を受信する受信手段と、前記制御装置が前記受信情報に対して応答できない省電力状態にある場合、前記受信情報に対して応答する制御手段と、前記制御装置が前記省電力状態から前記受信情報に対して応答できる状態に移行しているときに、前記受信情報を前記制御装置及び前記制御手段の双方に転送する転送制御手段とを有することを特徴とする。
【００１５】
本発明による制御方法は、外部機器から受信した受信情報に対する応答情報を生成して、前記応答情報を送信する情報処理装置の制御方法であって、前記情報処理装置に備えられた第１の制御部によって、第１のメモリに格納された前記受信情報に対する前記応答情報を生成する第１の生成ステップと、前記第１の制御部が前記応答情報を生成できない省電力状態にある場合、前記情報処理装置に備えられた第２の制御部によって、第２のメモリに格納された前記受信情報に対する前記応答情報を生成する第２の生成ステップと、前記第１の制御部が前記省電力状態から前記応答情報を生成できる状態に移行しているときに、前記情報処理装置に備えられた転送制御部によって、前記受信情報を前記第１および前記第２のメモリの双方に転送する転送制御ステップとを有し、前記第１の制御部によって、前記第１のメモリに転送された前記受信情報のうち、前記第２のメモリに転送された前記受信情報であって前記第２の制御部によって前記応答情報が生成された前記受信情報を削除する削除ステップを行うことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、外部機器から受信した受信情報に対する応答処理の取りこぼしを軽減することができる。
【図面の簡単な説明】
【００１７】
【図１】図１は本発明の実施の形態による情報処理装置の１つである画像処理装置の一例が用いられたネットワーク構成の一例を示すブロック図である。
【図２】図１に示すメインコントローラの構成を詳細に示すブロック図である。
【図３】図２に示すＬＡＮ  Ｉ／Ｆを詳細に示すブロック図である。
【図４】図２に示すメインコントローラにおいて省電力モードから通常電力モードに復帰する際の受信パケットの制御を説明するための図である。
【図５】図２に示すメインコントローラにおける復帰処理のシーケンスを説明するための図である。
【図６】図２に示すメインコントローラが通常電力モードに復帰する際のＣＰＵの動作を説明するためのフローチャートである。
【図７】図１に示すメインコントローラが省電力モードから通常電力モードに復帰する際のＬＡＮ  Ｉ／Ｆのマイクロプロセッサの動作を説明するためのフローチャートである。
【図８】図２に示すメインコントローラが省電力モードから通常電力モードに復帰する際におけるＭＡＣの処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態による情報処理装置の一例について図面を参照して説明する。
【００１９】
図１は本発明の実施の形態による情報処理装置の１つである画像処理装置の一例が用いられたネットワーク構成の一例を示すブロック図である。なお、以下の説明では、画像処理装置を例に挙げて説明するが、画像処理装置以外の情報処理装置においても同様にして本発明を適用することができる。
【００２０】
図１を参照して、画像処理装置１００は、例えば、画像の入出力と送受信および各種の画像処理とを行う複合機（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）である。図示の画像処理装置１００は、ネットワーク（例えば、ＬＡＮ）１０６を介して、外部機器である複数のパーソナルコンピュータＰＣ１０５と通信可能である。
【００２１】
画像処理装置１００は、画像入力デバイスであるスキャナ１０３、画像出力デバイスであるプリンタ１０４、メインコントローラ１０１、およびユーザインタフェースである操作部１０２を有している。スキャナ１０３、プリンタ１０４、および操作部１０２は、それぞれメインコントローラ１０１に接続され、メインコントローラ１０１からの命令によって制御される。そして、メインコントローラ１０１はＬＡＮ１０６に接続されている。
【００２２】
図２は、図１に示すメインコントローラ１０１の構成を詳細に示すブロック図である。
【００２３】
図１には示されていないが、図２に示す例では、メインコントローラ１０１は、ＬＡＮ１０６に接続されるとともに、公衆回線と接続されている。さらに、メインコントローラ１０１には電源装置２１９が接続されている。メインコントローラ１０１は情報処理装置において制御装置として機能する。
【００２４】
メインコントローラ１０１はＣＰＵ２０１（第１の制御部）を備えている。ＣＰＵ２０１は、システムバス２０７を介して、ＲＡＭ２０２、ＲＯＭ２０３、フラッシュメモリ（Ｆｌａｓｈ）２０４、イメージバスインタフェース（Ｉ／Ｆ）２０５、操作部Ｉ／Ｆ２０６、ＬＡＮ  Ｉ／Ｆ２０８、モデム部２０９、およびハードディスクドライブ（ＨＤＤ）２１７と接続されている。
【００２５】
ＲＡＭ２０２（第１の記憶手段又は第１のメモリ）は、ＣＰＵ２０１の作業領域を提供するためのメモリであり、また、ＲＡＭ２０２は画像データを一時的に記憶するための画像メモリとしても用いられる。
【００２６】
ＲＯＭ２０３はブートＲＯＭであり、ＲＯＭ２０３にはブートプログラムが格納されている。Ｆｌａｓｈ２０４には、システムソフトウェアおよび設定値データなどが格納される。
【００２７】
操作部Ｉ／Ｆ２０６は、操作部１０２との間で入出力を行うためのインタフェースであり、操作部１０２に表示する画像データを操作部１０２に対して出力する。また、操作部Ｉ／Ｆ２０６は、ユーザが操作部１０２によって入力した情報をＣＰＵ２０１に伝送する。
【００２８】
ＬＡＮ  Ｉ／Ｆ２０８はＬＡＮ１０６と接続され、ＬＡＮ１０６に対して情報の入出力を行う。ＬＡＮ  Ｉ／Ｆ２０８は情報処理装置において通信装置として機能する。モデム部２０９は公衆回線と接続され、公衆回線に対して情報の入出力を行う。
【００２９】
イメージバスＩ／Ｆ２０５は、システムバス２０７と画像バス２１０とを接続して、データ構造を変換するためのバスブリッジである。画像バス２１０は画像データを高速で転送するためのバスである。
【００３０】
画像バス２１０には、ＲＩＰ（ラスタイメージプロセッサ）２１１、デバイスＩ／Ｆ２１２、スキャナ画像処部２１３、プリンタ画像処理部２１４、画像回転部２１５、および画像圧縮部２１６が接続されている。
【００３１】
ＲＩＰ２１１は、ＬＡＮ１０６を介して受信したＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ２１２は、スキャナ１０３およびプリンタ１０４とメインコントローラ１０１とを接続して、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２１３は、入力画像データに対する補正、加工、および編集などを行う。
【００３２】
プリンタ画像処理部２１４は、プリント出力画像データに対してプリント補正および解像度変換などを行う。画像回転部２１５は、画像データの回転を行う。画像圧縮部２１６は、多値画像データに対してはＪＰＥＧ圧縮伸長処理を行い、２値画像データに対してはＪＢＩＧ、ＭＭＲ、又はＭＨなどの圧縮伸長処理を行う。
【００３３】
ＨＤＤ２１７は着脱可能なユニットである。ＨＤＤ２１７には、例えば、画像データ、アドレス帳データ、およびジョブログ、そして、頻繁に使用され設定を残したお気に入りおよびショートカットなどのユーザ個人のデータ（プリファレンスデータ）が保持される。なお、システムバス２０７にＨＤＤ２１７が接続されない場合には、上記の各種データはＦｌａｓｈ２０４に保持される。
【００３４】
メインコントローラ１０１は電源制御部２１８（電力切り替え手段）を備えている。電源制御部２１８は、電源装置２１９から電力供給ライン２２０を介して受容したＤＣ電源を電力供給ライン２２１および２２２を介してメインコントローラ１０１の所定の回路要素に供給する。
【００３５】
電源制御部２１８は、ＬＡＮ  Ｉ／Ｆ２０８から制御信号線２２３を介して受信した制御信号およびＣＰＵ２０１から制御信号線２２４を介して受信した制御信号に基づいて制御される。電源制御部２１８は、電力供給ライン２２１および２２２を選択的にオン／オフ（ＯＮ／ＯＦＦ）する。これによって、通常電力モードと省電力モードとの切り替えが行われる。
【００３６】
電力供給ライン２２１は、ＣＰＵ２０１、ＲＯＭ２０３、ＨＤＤ２１７、およびイメージバスＩ／Ｆ２０５に接続される。さらに、電力供給ライン２２１は、ＲＩＰ２１１、デバイスＩ／Ｆ２１２、スキャナ画像処理部２１３、プリンタ画像処理部２１４、画像回転部２１５、および画像圧縮部２１６に接続される。電力供給ライン２２２は、ＲＡＭ２０２、操作部Ｉ／Ｆ２０６、ＬＡＮ  Ｉ／Ｆ２０８、およびモデム部２０９に接続されている。
【００３７】
図１に示す画像処理装置１００は、省電力モード（省電力状態）および通常電力モードを有している。通常電力モードにおいては、電源装置２１９は、電力供給ライン２２０を介して電源制御部２１８に電力を供給する。そして、ＣＰＵ２０１は、電力供給ライン２２１および電力供給ライン２２２の各々がＯＮとなるように電源制御部２１８を制御する。この際、ＣＰＵ２０１およびＬＡＮ  Ｉ／Ｆ２０８の双方に電源装置２１９から電力が供給される。
【００３８】
一方、省電力モード（省電力状態）においては、電源装置２１９は、電力供給ライン２２０を介して電源制御部２１８に電力供給する。そして、ＣＰＵ２０１は、電力供給ライン２２２がＯＦＦとなり、電力供給ライン２２１がＯＮとなるように電源制御部２１８を制御する。この際、ＣＰＵ２０１を含む主要回路要素に対する電力の供給は遮断されるので、画像処理装置１００の消費電力は大幅に低減する。つまり、省電力モードは、少なくとも通常電力モードよりも電力供給を低減するモードである。
【００３９】
さらに、ＬＡＮ  Ｉ／Ｆ２０８は、ＰＣ１０５等から印刷ジョブ等のデータを受信すると、通常電力モードへ復帰すべく、電源制御部２１８を制御する。
【００４０】
なお、省電力モードにおいては、ＣＰＵ２０１に対する電力の供給が遮断されるものとしたが、他の態様であってもよい。例えば、省電力モードにおいては、ＣＰＵ２０１に対する電力の供給を通常電力モードよりも低減させるようにしてもよい。この場合、つまり、省電力モードでは、ＣＰＵ２０１は通常電力モードと比べて実行可能な処理が制限される。制限される処理には、少なくともＬＡＮ  Ｉ／Ｆ２０８がＰＣ１０５等から受信したデータの処理が含まれる。
【００４１】
また、省電力モードの際、ＲＡＭ２０２には、電源装置２１９から電力が供給されている。そして、ＲＡＭ２０２はセルフリフレッシュ動作を行って、システムプログラムをバックアップしている。また、ＲＡＭ２０２はＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送によって、ＣＰＵ２０１を介することなく、ＬＡＮ  Ｉ／Ｆ２０８から直接データの入出力を行うことができる。
【００４２】
図３は、図２に示すＬＡＮ  Ｉ／Ｆ２０８を詳細に示すブロック図である。
【００４３】
図３を参照すると、ＬＡＮ  Ｉ／Ｆ２０８は、Ｉ／Ｆ部３０１を有しており、このＩ／Ｆ部３０１によって、ＬＡＮ  Ｉ／Ｆ２０８はシステムバス２０７に接続される。
【００４４】
通常電力モードにおいて、受信パケット（受信情報）を受信する際には、ＬＡＮ１０６から物理層部（ＰＨＹ）３１０を介してＭＡＣ（メディアアクセス制御部又はネットワークパケット受信部）３０９が受信パケット（受信情報）を受ける。ＭＡＣ３０９は、受信パケットを受信用の先入れ先出しメモリ（Ｒｘ  ＦＩＦＯ）３０４にセットする。そして、Ｒｘ  ＦＩＦＯ３０４にセットされた受信パケットはＩ／Ｆ部３０１を介してＲＡＭ２０２に送られる。
【００４５】
通常電力モードにおいて、送信パケット又は応答パケットを送信する際には、ＣＰＵ２０１からＩ／Ｆ部３０１を介して送信用の先入れ先出しメモリ（Ｔｘ  ＦＩＦＯ）３０５に送信パケットがセットされる。ＭＡＣ３０９は送信パケットをＴｘ  ＦＩＦＯ３０５からＰＨＹ３１０に渡して、当該送信パケットをＬＡＮ１０６に送出する。
【００４６】
省電力モードの場合には、ＬＡＮ１０６からＰＨＹ３１０を介してＭＡＣ３０９が受信パケット（受信情報）を受ける。ＭＡＣ３０９は、当該受信パケットを受信用の先入れ先出しメモリ（Ｒｘ  ＦＩＦＯ）３０６（第２の記憶手段又は第２のメモリ）にセットする。そして、マイクロプロセッサ３０８（第２の制御部）は省電力モードを維持した状態で当該受信パケットに対する応答が可能であるか否かを判断する。
【００４７】
省電力モードを維持した状態で応答可能であると判断すると、マイクロプロセッサ３０８は受信パケットに応じて応答パケット（応答情報）を生成し、当該応答パケットを送信用の先入れ先出しメモリ（Ｔｘ  ＦＩＦＯ）３０７にセットする。Ｔｘ  ＦＩＦＯ３０７にセットされた応答パケット（応答情報）は、ＭＡＣ３０９によってＰＨＹ３１０を介してＬＡＮ１０６に送出される。
【００４８】
一方、省電力モードを維持した状態で応答不可能であると判断すると、マイクロプロセッサ３０８は、電力制御部２１８に対して制御信号線２２３を介して通常電力モードへの変更を通知する。これによって、後述するように、メインコントローラ１０１のハードウェアリソースによって受信パケットの応答が行われる。
【００４９】
ＬＡＮ  Ｉ／Ｆ２０８において、ＲＡＭ３１１（第２の記憶手段又は第２のメモリ）はＬＡＮ  Ｉ／Ｆ２０８における共有メモリ領域である。そして、ＲＡＭ３１１にはデータおよびプログラムが格納されるが、ＲＡＭ３１１はＬＡＮ  Ｉ／Ｆ２０８の構造上その容量は限定されている。
【００５０】
フラッシュメモリ（Ｆｌａｓｈ）３０２は不揮発メモリであり、Ｉ／Ｆ部３０１を介してＣＰＵ２０１と情報の送受が行われる。レジスタ群（Ｒｅｇｉｓｔｅｒｓ）３０３は、ＣＰＵ２０１によるＬＡＮ  Ｉ／Ｆ２０８の制御の際のステータスを反映するためのレジスタ群である。
【００５１】
図４は、図２に示すメインコントローラ１０１において省電力モードから通常電力モードに復帰する際の受信パケットの制御を説明するための図である。なお、ここでは、メインコントローラ１０１における主要な処理のみ説明し、詳細は後述する。
【００５２】
受信パケットが復帰要因パケット（予め規定された復帰要因情報）であると、メインコントローラ１０１は省電力モードから通常電力モードへの復帰処理を行う。復帰要因パケット４０１とは、メインコントローラ１０１が省電力モードの際に、マイクロプロセッサ３０８がその省電力モードを維持した状態では当該パケットに対する応答が不可能と判断したパケットである。
【００５３】
図４において、ＬＡＮ  Ｉ／Ｆ応答不可能パケット４０２は、メインコントローラ１０１が通常電力モードに復帰するまでの間にＭＡＣ３０９が受信するパケットのうち、ＬＡＮ  Ｉ／Ｆ２０８では応答不可能なパケットを示す。また、ＬＡＮ  Ｉ／Ｆ応答可能パケット４０３は、メインコントローラ１０１が通常電力モードに復帰するまでの間にＭＡＣ３０９が受信するパケットのうち、ＬＡＮ  Ｉ／Ｆ２０８が応答可能なパケットを示す。図示の例では、メインコントローラ１０１が通常電力モードに復帰中であっても、ＬＡＮ  Ｉ／Ｆ２０８はＬＡＮ  Ｉ／Ｆ応答可能パケット４０３に対する応答を行うことができる。
【００５４】
図５は、図２に示すメインコントローラ１０１における復帰処理のシーケンスを説明するための図である。また、図６は、図２に示すメインコントローラ１０１が通常電力モードに復帰する際のＣＰＵ２０１及び電力制御部２１８の動作を説明するためのフローチャートである。
【００５５】
まず、図２、図４、図５、および図６を参照して、図２に示すＣＰＵ２０１における復帰処理を説明する。
【００５６】
メインコントローラ１０１が起動された際に、ＣＰＵ２０１は、パケットパターンに対する振る舞い（以下パケット判定条件ともいう）をＲＡＭ２０２上に展開する（ステップＳ６０１）。ここで、パケットパターンに対する振る舞いとは、ＬＡＮ  Ｉ／Ｆ２０８が応答可能なパケットと応答不可能なパケットを判断するためのものである。例えば、パケット判定条件は、パケットのパターンがどうだったらＬＡＮ  Ｉ／Ｆ２０８がそのパケットに対して応答可能であるか、パケットのパターンがどうだったらＬＡＮ  Ｉ／Ｆ２０８がそのパケットに対して応答不可能であるかを示す。ＲＡＭ２０２にパケットパターンに対する振る舞いを展開しておくと、通常電力モードに復帰する際、ＨＤＤ２１７にアクセスするよりも高速にパケットの判定を行うことができる。
【００５７】
続いて、ＣＰＵ２０１は省電力モードへの移行条件（省電力移行条件）が満たされたか否かを判定する（ステップＳ６０２）。省電力移行条件が満たされないと（ステップＳ６０２において、ＮＯ）、ＣＰＵ２０１は省電力移行条件が満たされたか否かを判定し続ける。一方、省電力移行条件が満たされると（ステップＳ６０２において、ＹＥＳ）、ＣＰＵ２０１は電力制御部２１８を制御して省電力モードに移行する（ステップＳ６０３）。このとき、ＣＰＵ２０１は、省電力モードに移行する旨をＬＡＮ  Ｉ／Ｆ２０８に伝える。ＬＡＮ  Ｉ／Ｆ２０８のマイクロプロセッサ３０８は、その旨を聞いて、ＭＡＣ３０９の転送設定を第１の転送設定に切り替える。第１の転送設定は後述する。
【００５８】
そして、電力制御部２１８はＬＡＮ  Ｉ／Ｆ２０８から、後述する復帰信号を受信したか否かを監視する（ステップＳ６０４）。
【００５９】
復帰信号を受信しないと（ステップＳ６０４において、ＮＯ）、電力制御部２１８は復帰信号を受信したか否かを監視し続ける。つまり、ＣＰＵ２０１は省電力モードを継続する。一方、復帰信号を受けると、電力制御部２１８は電力供給ライン２２２を介して電力を供給し、ＣＰＵ２０１は、省電力モードから通常電力モードへの復帰処理を実行する（ステップＳ６０５）。なお、メインコントローラ１０１が省電力モードから通常電力モードに完全に復帰するまでには、復帰処理を開始した後数秒程度必要である。
【００６０】
ＣＰＵ２０１は通常電力モードへの復帰処理が完了したか否かを判定する（ステップＳ６０６）。復帰処理が完了しないと（ステップＳ６０６において、ＮＯ）、ＣＰＵ２０１はその完了を待つ。復帰処理が完了すると（復帰処理の完了後：ステップＳ６０６において、ＹＥＳ）、ＣＰＵ２０１はＬＡＮ  Ｉ／Ｆ２０８に復帰完了通知を送る。さらに、ＣＰＵ２０１はＲＡＭ２０２に展開したパケット判定条件に基づいて、ＬＡＮ  Ｉ／Ｆ２０８によって応答済みとなったパケットを判定して、そのパケットを削除する削除処理を行う（ステップＳ６０７）。つまり、ＣＰＵ２０１は、ＬＡＮ  Ｉ／Ｆ２０８（つまり、マイクロプロセッサ３０８）により応答処理が行われた受信パケット（受信情報）の削除を行う。
【００６１】
なお、図４に示すように、メインコントローラ１０１の復帰処理中においてＬＡＮ  Ｉ／Ｆ２０８が受信パケットを受信すると、ＭＡＣ３０９はＲｘ  ＦＩＦＯ３０４を介して当該受信パケットをＲＡＭ２０２に送るとともに、Ｒｘ  ＦＩＦＯ３０６にも当該パケットを転送する。
【００６２】
続いて、ＣＰＵ２０１はＲＡＭ２０２に格納された未応答の（応答処理が行われていない）受信パケットに対する応答処理を実行する（ステップＳ６０８）。
【００６３】
図７は、図１に示すメインコントローラ１０１が省電力モードから通常電力モードに復帰する際のＬＡＮ  Ｉ／Ｆ２０８のマイクロプロセッサ３０８の動作を説明するためのフローチャートである。
【００６４】
次に、図２〜図５および図７を参照して、復帰処理の際の図２に示すマイクロプロセッサ３０８の動作を説明する。
【００６５】
メインコントローラ１０１が省電力モードに移行すると、ＬＡＮ  Ｉ／Ｆ２０８はその省電力モードを維持した状態で応答可能な受信パケットに対してのみ応答を行う。
【００６６】
マイクロプロセッサ３０８は、ＬＡＮ  Ｉ／Ｆ２０８において復帰要因パケット４０１を受信したか否かを監視する（ステップＳ７０１）。復帰要因パケットを受信しないと（ステップＳ７０１において、ＮＯ）、マイクロプロセッサ３０８は復帰要因パケット４０１を受信したか否かを監視し続ける。復帰要因パケットを受信すると（ステップＳ７０１において、ＹＥＳ）、マイクロプロセッサ３０８は、メインコントローラ１０１の電力制御部２１８に通常電力モードに復帰することを示す復帰信号（ＷＡＫＥ信号）を送る（ステップＳ７０２）。
【００６７】
続いて、マイクロプロセッサ３０８はＣＰＵ２０１から復帰完了通知を受信したか否かを監視する（ステップＳ７０３）。復帰完了通知を受信しないと（ステップＳ７０３において、ＮＯ）、マイクロプロセッサ３０８はメインコントローラのＲＡＭ２０２がアクセス可能であるか否かをチェックする（ステップＳ７０４）。メインコントローラのＲＡＭ２０２はセルフリフレッシュ解除処理を終えると、アクセス可能になる。なお、メインコントローラのＲＡＭ２０２はメインコントローラ１０１が復帰するよりも短時間でアクセス可能になる。
【００６８】
ＲＡＭ２０２に対するアクセスが可能であると（ステップＳ７０４において、ＹＥＳ）、マイクロプロセッサ３０８はＭＡＣ３０９の転送設定を二重転送設定に切り替える（ステップＳ７０５）。この二重転送設定によって、ＭＡＣ３０９は受信パケットをＲｘ  ＦＩＦＯ３０４とＲｘ  ＦＩＦＯ３０６との双方に転送する。
【００６９】
その後、マイクロプロセッサ３０８は受信パケットを受信したか否かを判定する（ステップＳ７０６）。なお、ＲＡＭ２０２に対するアクセスが可能でないと（ステップＳ７０４において、ＮＯ）、マイクロプロセッサ３０８はステップＳ７０６に進む。
【００７０】
メインコントローラ１０１が復帰処理中において、受信パケットを受信しないと（ステップＳ７０６において、ＮＯ）、マイクロプロセッサ３０８はステップＳ７０３に戻って処理を続行する。
【００７１】
一方、受信パケットを受信すると（ステップＳ７０６において、ＹＥＳ）、マイクロプロセッサ３０８は当該受信パケットがＬＡＮ  Ｉ／Ｆ２０８によって応答可能なパケットであるか否かを判定する（ステップＳ７０７）。
【００７２】
応答可能なパケットであると判定した場合（ステップＳ７０７において、ＹＥＳ）、マイクロプロセッサ３０８は受信パケットに対する応答処理を実行する。一方、応答不可能なパケットであると判定した場合（ステップＳ７０７において、ＮＯ）、マイクロプロセッサ３０８はＲＡＭ３１１が容量フル（満杯）であるか否かを判定する（ステップＳ７０９）。
【００７３】
ＲＡＭ３１１の容量は小さく、ＲＡＭ３１１が容量フルであると（ステップＳ７０９において、ＹＥＳ）、マイクロプロセッサ３０８は当該受信パケットを破棄する（ステップＳ７１０）。そして、マイクロプロセッサ３０８はステップＳ７０３に戻って処理を続行する。
【００７４】
ＲＡＭ３１１が容量フルでないと判定した場合（ステップＳ７０９において、ＮＯ）、マイクロプロセッサ３０８は当該受信パケットをＲＡＭ３１１に保存する（ステップＳ７１１）。そして、マイクロプロセッサ３０８はステップＳ７０３に戻って処理を続行する。
【００７５】
ステップＳ７０３において、ＣＰＵ２０１から復帰完了通知を受けると（ステップＳ７０３において、ＹＥＳ）、マイクロプロセッサ３０８は、現時点でＬＡＮ  Ｉ／Ｆ２０８が幾つのパケットを受信したか、つまり、現時点でどのパケットまでを受信したかを示す情報をＣＰＵ２０１に通知する（ステップＳ７１２）。この通知では応答処理したパケットを個別に通知するのではなく、どのバケットまでを受信したかということを通知する。
【００７６】
例えば、１０個のパケットを受信したことを通知した場合、１１個目以降のパケットは、それをＬＡＮ  Ｉ／Ｆ２０８が応答可能であろうとなかろうと、全てＣＰＵ２０１が応答する。１０個目までのパケットについては、ＬＡＮ  Ｉ／Ｆ２０８によって応答可能なものはマイクロプロセッサ３０８が応答し、ＬＡＮ  Ｉ／Ｆ２０８によって応答不可能なものはＣＰＵ２０１が応答する。パケットにＩＤを振ることが可能な場合には、最後に受信したパケットのＩＤをＣＰＵ２０１に通知してもよい。その場合には、そのＩＤより後のパケットはＬＡＮ  Ｉ／Ｆ２０８によって応答可能なものであろうとなかろうと、全てＣＰＵ２０１が応答する。
【００７７】
なお、図４に示す例では、通常電力モードに復帰するまでの間に１０個のパケットを受信しているが、情報処理装置１００が複数のＰＣ１０５など接続され、ネットワークのトラフィックが大きい場合には、通常電力モードに復帰後、ＣＰＵ２０１が復帰中に受信したパケットを判定する方が応答を高速に行うことができる。
【００７８】
続いて、マイクロプロセッサ３０８は、ＲＡＭ３１１に保持された受信パケットをＣＰＵ２０１に送信する（ステップＳ７１３）。そして、マイクロプロセッサ３０８は二重転送設定を解除して、ＭＡＣ３０９が受信パケットをＲＡＭ２０２のみに転送するようにＭＡＣ３０９の転送設定を第３の転送設定に変更する（ステップＳ７１４）。これによって、マイクロプロセッサ３０８は省電力モードにおける処理を終えて、ＭＡＣ３０９は通常電力モードに復帰したメインコントローラ１０１に対して受信パケットの転送を行う。
【００７９】
上述のようにして、ＲＡＭ２０２にアクセスすることができない場合においても、復帰動作中にＲＡＭ３１１に保持された受信バケットを復帰動作完了の後、ＣＰＵ２０１に送信するようにしたので、復帰動作中の受信パケットの取りこぼしを防止することができる。
【００８０】
図８は、図２に示すメインコントローラ１０１が省電力モードから通常電力モードに復帰する際におけるＭＡＣ３０９の処理を説明するためのフローチャートである。
【００８１】
図３および図８を参照して、メインコントローラ１０１が省電力モードに移行した後、ＭＡＣ３０９はパケットを受信したか否かを確認する（ステップＳ８０１）。パケットの受信が確認されないと（ステップＳ８０１において、ＮＯ）、ＭＡＣ３０９はパケットを受信したか否かを確認し続ける。
【００８２】
一方、パケットの受信が確認されると（ステップＳ８０１において、ＹＥＳ）、ＭＡＣ３０９は、マイクロプロセッサ３０８による転送設定に応じて受信パケットの転送先を切り替える。図示の例では、転送設定として、第１〜第３の転送設定がある。第１の転送設定は、受信パケットをＲｘ  ＦＩＦＯ３０６にのみ転送する転送設定である。第２の転送設定は、受信パケットをＲｘ  ＦＩＦＯ３０４（第１のＦＩＦＯ）及びＲｘ  ＦＩＦＯ３０６（第２のＦＩＦＯ）に転送する二重転送設定である。そして、第３の転送設定は、受信パケットをＲｘ  ＦＩＦＯ３０４にのみ転送する転送設定である。
【００８３】
これら第１〜第３の転送設定は、マイクロプロセッサ３０８がＭＡＣ３０９に対して行う。メインコントローラ１０１が省電力モードであると、マイクロプロセッサ３０８はＭＡＣ３０９に対して第１の転送設定を行う。また、メインコントローラ１０１が復帰動作中でかつＲＡＭ２０２に対してアクセス可能であると、マイクロプロセッサ３０８はＭＡＣ３０９に対して第２の転送設定（二重転送設定）を行う。そして、メインコントローラ１０１が通常電力モードであると、マイクロプロセッサ３０８はＭＡＣ３０９に対して第３の転送設定を行う。
【００８４】
ＭＡＣ３０９は、ステップＳ８０２において転送設定が第１〜第３の転送設定のいずれであるか確認する。転送設定が第１の転送設定であると（ステップＳ８０２において、「第１の転送設定」）、ＭＡＣ３０９は、省電力モード中、復帰要因パケットを受信するまでＲｘ  ＦＩＦＯ３０６に対して受信パケットを転送する（ステップＳ８０３）。
【００８５】
ステップＳ８０３における処理では、受信パケットはＲｘ  ＦＩＦＯ３０６にセットされ、マイクロプロセッサ３０８による応答処理の後、応答パケットがＴｘ  ＦＩＦＯ３０７に格納される。
【００８６】
受信パケットの転送の後、ＭＡＣ３０９は応答パケットが存在するか否かについて確認する（ステップＳ８０４）。応答パケットが存在しないと（ステップＳ８０４において、ＮＯ）、ＭＡＣ３０９はステップＳ８０１に戻って処理を続行する。一方、応答パケットが存在すると（ステップＳ８０４において、ＹＥＳ）、ＭＡＣ３０９は応答パケットをＰＨＹ３１０を介してＬＡＮ１０６に送出する（ステップＳ８０５）。そして、ＭＡＣ３０９はステップＳ８０１に戻って処理を続行する。
【００８７】
転送設定が第２の転送設定であると（ステップＳ８０２において、「第２の転送設定」）、復帰処理中でかつＲＡＭ２０２に対するアクセスが可能であるので、ＭＡＣ３０９は、Ｒｘ  ＦＩＦＯ３０４およびＲｘ  ＦＩＦＯ３０６に対して受信パケットを転送する（ステップＳ８０６）。
【００８８】
ステップＳ８０６における処理では、受信パケットはＲｘ  ＦＩＦＯ３０４及びＲｘ  ＦＩＦＯ３０６の双方にセットされる。そして、前述したように、Ｒｘ  ＦＩＦＯ３０４に格納された受信パケットは、Ｉ／Ｆ部３０１を介してＲＡＭ２０２にＤＭＡ転送される。
【００８９】
その後、ＭＡＣ３０９はステップＳ８０４に進んで、応答パケットが存在するか否かに確認する。
【００９０】
転送設定が第３の転送設定であると（ステップＳ８０２において、「第３の転送設定」）、メインコントローラ１０１は通常電力モードであるので、ＭＡＣ３０９は、ＲＡＭ２０２に対して受信パケットを転送する（ステップＳ８０７）。
【００９１】
ステップＳ８０７における処理では、受信パケットがＲｘ  ＦＩＦＯ３０４にセットされ、ＣＰＵ２０１における応答処理の後、Ｔｘ  ＦＩＦＯ３０５に応答パケットが格納される。
【００９２】
その後、ＭＡＣ３０９はステップＳ８０４に進んで、応答パケットが存在するか否かに確認する。
【００９３】
ところで、図７に示すＳ７１０において受信パケットが破棄されても、ステップ８０６で説明したように、ＲＡＭ２０２に受信パケットを転送すれば、メインコントローラ１０１が通常電力モードに復帰した後、ＣＰＵ２０１が図６に示すステップＳ６０８において未応答のパケットに対して応答処理を行うことになる。これによって、復帰動作中の受信パケットの取りこぼしを防止することができる。
【００９４】
上述のようにして、メインコントローラ１０１が復帰処理中においても、受信パケットに対して省電力モードと同様に受信パケットに対する応答を行うことができる。そして、メインコントローラ１０１が復帰処理中に受信した受信パケットにおいて、メインコントローラ１０１が通常電力モードに復帰した後でないと応答できない受信パケットついてはその取りこぼしを防止することができる。
【００９５】
また、メインコントローラ１０１が復帰処理中にＲＡＭ２０２に保持された受信パケットについて、ＬＡＮ  Ｉ／Ｆ２０８に応答処理済であれば削除処理されるので、メインコントローラ１０１が再度受信パケットに対して応答処理を行うこと防止することができる。
【００９６】
上述の説明から明らかなように、図３において、ＣＰＵ２０１およびＲＡＭ２０２が、応答情報を生成する第１の生成手段として機能する。また、マイクロプロセッサ３０８、Ｒｘ  ＦＩＦＯ３０６、およびＲＡＭ３１１が、応答情報を生成する第２の生成手段として機能する。そして、ＭＡＣ３０９、Ｒｘ  ＦＩＦＯ３０４、およびＩ／Ｆ３０１が、受信情報を転送する転送制御手段（転送制御部）として機能する。なお、Ｒｘ  ＦＩＦＯ３０６およびＲＡＭ３１１は、受信情報を格納する第２の記憶手段（第２のメモリ）として機能する。ＰＨＹ３１０は、外部機器から受信情報を受信する受信手段として機能する。
【００９７】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【００９８】
例えば、上記の実施の形態の機能を制御方法として、この制御方法を、情報処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有する制御プログラムを、情報処理装置が備えるコンピュータに実行させるようにしてもよい。
【００９９】
この際、制御方法及び制御プログラムの各々は、少なくとも第１の生成ステップ、第２の生成ステップ、転送制御ステップ、応答処理ステップ、および削除ステップをを有することになる。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【０１００】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１０１】
２０１  ＣＰＵ
２０２  ＲＡＭ
２０７  システムバス
２０８  ＬＡＮインタフェース（ＬＡＮ  Ｉ／Ｆ）
２１８  電源制御部
３０１  インタフェース部（Ｉ／Ｆ部）
３０８  マイクロプロセッサ
３０９  メディアアクセス制御部（ＭＡＣ）
３０４、３０５、３０６、３０７  先入れ先出しメモリ（ＦＩＦＯ）
【図１】
2012156645.tif 000003
【図２】
2012156645.tif 000004
【図３】
2012156645.tif 000005
【図４】
2012156645.tif 000006
【図５】
2012156645.tif 000007
【図６】
2012156645.tif 000008
【図７】
2012156645.tif 000009
【図８】
2012156645.tif 000010