(57)【特許請求の範囲】
【請求項１】
記録材に画像を形成するための画像形成部と、
外部装置からデータの入力を受け付ける第１の入力部であって、データが入力された場合にデータに基づいて前記画像形成部を制御する第１の入力部と、
前記第１の入力部に給電が行われていない場合に前記外部装置からデータの入力を受け付ける第２の入力部と、
前記第１の入力部を動作させるべく前記第１の入力部に給電を行い、前記第２の入力部の動作を停止させるべく前記第２の入力部に対する給電を停止する第１のモードと、前記第１の入力部の動作を停止させるべく前記第１の入力部に給電を行わず、前記第２の入力部を動作させるべく前記第２の入力部に給電を行う第２のモードとを実行可能であって、前記第２のモードの実行中に前記第２の入力部にデータが入力された場合は前記第２のモードから前記第１のモードに切り替わる電源部と、を有し、
前記第２の入力部は、前記外部装置に対して前記データの再入力を促す信号のみを送信可能であって、少なくとも前記第２のモードから前記第１のモードに移行して前記第２の入力部に対する給電が停止される前に、前記データが入力されたことに応じて前記外部装置に前記信号を送信することを特徴とする画像形成装置。
【請求項２】
前記第１の入力部と前記外部装置を通信可能に接続する第１の接続状態と、前記第２の入力部と前記外部装置を通信可能に接続する第２の接続状態と、を取り得る接続部と、
前記電源部が前記第２のモードから前記第１のモードに切り替わる場合、前記第１の入力部がデータを受け付け可能になったことに応じて前記接続部を前記第２の接続状態から前記第１の接続状態に切り替える切り替え部と、を有すること特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記信号はＮＡＣＫを意味する信号であることを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記第２の入力部は前記第１の入力部よりも消費電力が小さいことを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
第１の入力部は、ＵＳＢデバイスコントローラとして実装され、前記外部装置であるＵＳＢホストからデータが入力された場合に当該データに基づいて前記画像形成部を制御するものであり、
前記第２の入力部は、前記ＵＳＢデバイスコントローラとは別のマイコンデバイスとして実装され、前記第１の入力部に給電が行われていない場合に前記ＵＳＢホストからデータの入力を受け付けるものであり、前記マイコンデバイスは、前記ＵＳＢホストに対してデータの再入力を促す信号を送信することを特徴とする請求項１乃至４のいずれか1項画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録材に画像を形成する画像形成装置に関する。
【背景技術】
【０００２】
従来の多機能画像形成装置（Multifunction Peripheral、以下ＭＦＰと記す）は、電力消費を削減するために一定時間待機状態が続くと一部回路の電源を停止する、またはクロックの供給を止めるなどして電力消費の少ない節電状態に移行する機能を有するものが多い。なお、上記電力消費の少ない節電状態をスリープ状態（省電力モード）と言うこともある。
【０００３】
節電状態にあるＭＦＰは、外部インタフェースに接続された機器から信号が入力されるのを検知すると節電状態から動作状態に復帰し、ユーザからの所定のジョブを実行することが望まれている。外部インタフェースは、具体的にはＦＡＸコントローラ、ＬＡＮコントローラが該当し、所定のジョブはＦＡＸ受信ジョブ、プリントジョブが該当する。
【０００４】
なお、ＭＦＰは、ＦＡＸコントローラに電話回線を介して入力されるＣＩ検知信号をトリガとして動作状態に復帰し、ＣＩ検知信号以降のデータを受け取ることで節電状態中でのジョブ受付を可能としている。
【０００５】
また、ＭＦＰは、節電状態においてもメインＣＰＵ外部に配置されたＬＡＮコントローラに電源を供給し、該ＬＡＮコントローラにて外部からパケットを受信した場合に、動作状態に復帰し、コンピュータ（ＰＣ）からのプリント要求に対応している。
さらに、コピー時は、ユーザが直接、操作部を操作する節電復帰操作によりＭＦＰを動作状態に復帰させ、コピージョブを実行する。
【０００６】
しかし、ＵＳＢデバイス制御は、高機能メインＣＰＵに内蔵されているＵＳＢデバイスコントローラを使用して実行する場合が多い。一般的なＣＰＵの場合、ＵＳＢデバイスコントローラ部とそれ以外の部分の電源を分離して制御する機能がない。そのため、スリープ状態時、メインＣＰＵへの給電を停止すると、内蔵ＵＳＢデバイスコントローラも動作を停止し、ＵＳＢホストから送られてくるパケットに応答することができない。このため、節電中は、ＵＳＢデバイスを介したプリントジョブが実行できないという不具合が生じる。
【０００７】
一方、節電中もＣＰＵへの給電を継続する手段も有効であるが、メインＣＰＵはＵＳＢデバイス以外の制御も行っているため、消費電力が高く、節電効果を著しく低下させる。
このような課題に対して特許文献１では、節電状態においてはＵＳＢデバイスコントローラの電源をＰＣなどのホスト側から給電させる技術が提案されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１８７３９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献１で提案されている技術では、ＵＳＢデバイスコントローラの電源をＰＣなどのホスト側から給電するため、ＭＦＰ本体の消費電力は低下するが、ＰＣを含めた全体の構成においては節電効果が十分とはいえないという課題があった。
【００１０】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、画像形成装置にＵＳＢ接続等される機器を含むシステム全体の消費電力を抑えたまま、ＵＳＢ接続等される機器から送られてくるパケットに応答可能な画像形成装置の待機状態を実現することができる仕組みを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、画像形成装置において、記録材に画像を形成するための画像形成部と、外部装置からデータの入力を受け付ける第１の入力部であって、データが入力された場合にデータに基づいて前記画像形成部を制御する第１の入力部と、前記第１の入力部に給電が行われていない場合に前記外部装置からデータの入力を受け付ける第２の入力部と、前記第１の入力部を動作させるべく前記第１の入力部に給電を行い、前記第２の入力部の動作を停止させるべく前記第２の入力部に対する給電を停止する第１のモードと、前記第１の入力部の動作を停止させるべく前記第１の入力部に給電を行わず、前記第２の入力部を動作させるべく前記第２の入力部に給電を行う第２のモードとを実行可能であって、前記第２のモードの実行中に前記第２の入力部にデータが入力された場合は前記第２のモードから前記第１のモードに切り替わる電源部と、を有し、前記第２の入力部は、前記外部装置に対して前記データの再入力を促す信号のみを送信可能であって、少なくとも前記第２のモードから前記第１のモードに移行して前記第２の入力部に対する給電が停止される前は、前記データが入力されたことに応じて前記外部装置に前記信号を送信することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、画像形成装置に接続される機器を含むシステム全体の消費電力を抑えたまま、機器から送られてくるパケットに応答可能な画像形成装置の待機状態を実現することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施例を示す画像形成装置の構成の一例を示すブロック図である。
【図２】実施例１における制御部１０７の動作を表すフローチャートである。
【図３】実施例１におけるワンチップマイコン１０８の動作を表すフローチャートである。
【図４】図２に示すフローチャートの動作開始時における画像形成装置の状態を示す図である。
【図５】図２のＳ２０５の処理を行った後の画像形成装置の状態を示す図である。
【図６】フレームに含まれるパケットの構成を表す図である。
【図７】図６におけるフレーム開始パケットＳＯＰ６０１の内部構造を表す図である。
【図８】図６におけるトークン・パケット６０２の内部構造を表す図である。
【図９】図６におけるデータ・パケット６０３の内部構造を表す図である。
【図１０】図６におけるハンドシェイク・パケット６０４の内部構造を表す図である。
【図１１】ＳＯＰ６０１、トークン・パケット６０２、データ・パケット６０３及びハンドシェイク・パケット６０４の最終段で転送されるＥＯＰフィールドにおけるＵＳＢバスの状態を説明するための図である。
【図１２】ハンドシェイク・パケットのパケットＩＤフィールド１００２に格納される情報を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明を実施するための形態を説明する。
【実施例１】
【００１５】
図１は、本発明の一実施例を示す画像形成装置の構成の一例を示すブロック図である。
図１において、１１は、本実施例の画像形成装置のコントローラ部を示す。コントローラ部１１は、デジタル複合機などの画像形成装置に備えられ、ＵＳＢホスト１５などの機器（情報処理端末装置）から送られてくる印刷データを展開、又はスキャナ１２で読み取られた画像データに画像処理を施し、プリンタ１３に送信する。プリンタ１３に送信された印刷データは、プリンタ１３から印字出力される。
【００１６】
コントローラ部１１は、電源ユニット１６から電源の供給を受けている一方、電源ユニット１６に対して、電源のオン、オフ制御を行う。
ＵＳＢホスト１５は、ユーザからの指示により印刷データを作成し、ＵＳＢバスを介してコントローラ部１１に印刷データを送信する。スキャナ１２は、原稿を読み取り、コントローラ部１１に読み取った画像データを送信する。プリンタ１３は、コントローラ部１１から印刷データを受信し、インクジェット方式や電子写真方式などの各種印刷方式にて印刷データを記録紙上に印刷する。
【００１７】
操作部１４は、ユーザからのコピー要求、スキャン要求などの要求指示の入力を受け付ける操作パネルである。
電源ユニット１６は、コントローラ部１１に電力を供給する。詳細は後述するが、コントローラ部１１は、３つの電源系統（電源系統Ａ、電源系統Ｂ、電源系統Ｃ）を有しており、電源ユニット１６はそれぞれの系統に対して電力供給を行う。また、電源ユニット１６は、コントローラ部１１から送られてくる制御信号に従って各電源系統に対して電力の供給又は停止を行う。
【００１８】
コントローラ部１１は、ＣＰＵ１０１、ＲＯＭ１０２，ＲＡＭ１０３，１０５、画像処理ＬＳＩ１０４、ＵＳＢデバイスコントローラ１０６、制御部１０７、ワンチップマイコン１０８、ＵＳＢバススイッチ１０９を含んで構成される。
【００１９】
ＣＰＵ１０１は、コントローラ部１１を含む画像形成装置全体の動作を制御し、デジタル複合機においては、高速に大量のデータを処理する必要があるため、大規模高速なＣＰＵが採用される。
【００２０】
また、ＣＰＵ１０１から制御部１０７に対してＣＰＵ状態信号１１０が出力されており、制御部１０７ではＣＰＵの状態を参照することが可能な構成になっている。具体的には、ＣＰＵ状態信号１１０が「１」の場合、ＣＰＵ１０１には電源ユニット１６から電力が供給されていてＣＰＵ１０１が駆動中であることを表す。また、ＣＰＵ状態信号１１０が「０」の場合は、電源ユニット１６から電力が供給されず、ＣＰＵ１０１は停止中（＝スリープ状態）であることを表す。
【００２１】
なお、本実施例では、ＣＰＵ状態信号１１０が「１」である間は、ＣＰＵ１０１が駆動中であると定義する。そのため、電源ユニット１６からの電力の供給が開始されてからＣＰＵ１０１が起動している間は、ＣＰＵ１０１は動作できない状態であるためＣＰＵ状態信号１１０として「０」を出力する。ＣＰＵの起動動作が終了したら（具体的にはＵＳＢデバイスコントローラ１０６から送られる印刷データをＣＰＵ１０１が取得できる状態になってから）ＣＰＵ状態信号１１０として「１」を出力する。
【００２２】
ＲＯＭ１０２は、ＣＰＵ１０１が動作するための各種制御プログラムなどを記憶する。ＲＡＭ１０３は、ＣＰＵ１０１のワークメモリであり、演算に必要なデータを一時的に記憶する。また、ＲＡＭ１０３は、画像データを格納してもよい。
【００２３】
画像処理ＬＳＩ１０４は、ＵＳＢホスト１５から送信される印刷データを展開して画像処理を施し、スキャナ１２からの読み取り画像データに画像処理を施す。画像処理ＬＳＩ１０４は、ＣＰＵ１０１と同様に、デジタル複合機においては、大規模、かつ高速なＬＳＩが使用される。ＲＡＭ１０５は、画像処理ＬＳＩ１０４のワークメモリであり、印刷データ、画像処理の途中経過データを一時的に記憶する。
【００２４】
ＵＳＢデバイスコントローラ１０６は、ＵＳＢホスト１５から印刷データを受信するためのインタフェースであり、ＵＳＢ規格に準じて接続されるＵＳＢホスト１５との通信処理を行う。ＵＳＢデバイスコントローラ１０６は、ＵＳＢホスト１５と接続したときの初期設定を行う。また、ＵＳＢデバイスコントローラ１０６は、ＵＳＢホスト１５との通信時のハンドシェイクや、送られてくるデータの中から印刷データを抽出してＣＰＵ１０１に送る。
【００２５】
制御部１０７は、コントローラ部１１の電源電供給を制御する制御部である。制御部１０７は、電源ユニット１６に対して電源制御信号１１１を出力しており、電源ユニット１６は電源制御信号１１１により各電源系統に対して電力の供給又は停止を行う。
【００２６】
制御部１０７は、例えばプログラマブルロジックデバイス(PLD；Programmable Logic Device)で構成されている。後述する図２に示すフローチャートの処理は、制御部１０７が内部のプログラミング素子に書き込まれたプログラムに基づいて動作することにより実行されるものである。制御部１０７はＡＳＩＣ等であってもよい。なお、制御部１０７は、このような構成に限定されるものではなく、本実施例に示す処理が実現可能なものであれば他の構成でもよい。
【００２７】
電源ユニット１６からコントローラ部１１に対しては、３つの電源系統（電源Ａ、電源Ｂ、電源Ｃ）が供給されている。以下に各電源系統が電力を供給しているブロックを示す。
【００２８】
電源系統Ａは、図1の領域１７に含まれるブロック（ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３及び１０５、画像処理ＬＳＩ１０４及びＵＳＢデバイスコントローラ１０６）に対して電力の供給を行う。
【００２９】
電源系統Ｂは、図1における領域１９に含まれるブロック（制御部１０７及びＵＳＢバススイッチ１０９）に対して電力の供給を行う。
電源系統Ｃは、図１におけるワンチップマイコン１０８に対して電力の供給を行う。
なお、電源ユニット１６から供給される上記３つの電源系統のうち、制御部１０７から出力する電源制御信号１１１によって制御される電源は、電源系統Ａ及び電源系統Ｃである。電源系統Ｂは、本実施例の画像形成装置が動作している間は常に電力を供給する。
【００３０】
なお、制御部１０７は、上述した電源制御信号１１１による電力制御の他にも、ＣＰＵ１０１から出力されるＣＰＵ状態信号１１０を取得し、ＣＰＵ１０１の状態を検出する機能を有する。
【００３１】
また、制御部１０７は、後述するワンチップマイコン１０８に対して、ワンチップマイコン１０８の動作を許可するためのイネーブル信号１１２を出力するとともに、ワンチップマイコン１０８から出力される割込み信号１１３を取得する。
【００３２】
さらに、制御部１０７は、後述するＵＳＢバススイッチ１０９に対して、ＵＳＢバスを切り替えるための切替信号１１４を出力する。
ワンチップマイコン１０８は、例えば、１つのＩＣチップ上にマイクロプロセッサ、ＲＡＭ、ＲＯＭ、各種入出力装置などを搭載した処理装置である。後述する図３に示すフローチャートの処理は、ワンチップマイコン１０８内部のプロセッサが内部のＲＯＭに記録されたプログラミングに基づいて動作することにより実行されるものである。なお、ワンチップマイコン１０８は、このような構成に限定されるものではなく、本実施例に示す処理が実現可能なものであれば、ＰＬＤでもＡＳＩＣでも、ロジック回路でも、その他の構成でもよい。ただし、このワンチップマイコン１０８に相当するモジュールは、ＵＳＢデバイスコントローラ１０６と比較して消費する電力が少ないものとする。
【００３３】
ワンチップマイコン１０８は、ＵＳＢホスト１５からアクセスがあった場合にＵＳＢデバイスコントローラ１０６の代わりに代理応答を行うためのものである。ワンチップマイコン１０８には、制御部１０７からイネーブル信号１１２が入力されている。
【００３４】
制御部１０７からイネーブル信号１１２として「１」が入力されている間にＵＳＢバスから（即ち、ＵＳＢホスト１５から）データが入力されると、ワンチップマイコン１０８は、ＵＳＢバスに対して（即ち、ＵＳＢホスト１５に対して）データの再送を要求するＮＡＣＫパケットを出力する。一方、イネーブル信号１１２として「０」が入力されていると、ワンチップマイコン１０８は、動作を停止するため、ＵＳＢバスからデータが入力されてもＵＳＢバスに対してＮＡＣＫパケットの出力は行われないこととなる。なお、ＮＡＣＫパケットについては後述する。
【００３５】
上述のように、ワンチップマイコン１０８は、ＵＳＢバスからのデータ入力に対して、ＮＡＣＫパケットを出力する機能及び制御部１０７に割込み信号１１３を出力する機能を備えているだけの構成である。そのため、ワンチップマイコン１０８は、ＵＳＢデバイスコントローラ１０６と比較して消費する電力を大幅に少なく実現することが可能である。
【００３６】
ＵＳＢバススイッチ１０９は、Ｙ端子に接続されたＵＳＢバスの接続先を、Ａ端子またはＢ端子のどちらかに切り替える。バスの切り替えはＳＥＬ端子に接続された信号の状態によって行われる。本実施例では、ＳＥＬ端子に「０」が入力された場合はＹ端子とＡ端子を接続してＵＳＢホスト１５とＵＳＢデバイスコントローラ１０６をＵＳＢバスで接続する。また、ＳＥＬ端子に「１」が入力された場合はＹ端子とＢ端子を接続することでＵＳＢホスト１５とワンチップマイコン１０８をＵＳＢバスで接続する。
【００３７】
図１の画像形成装置では、それぞれＳＥＬ端子には制御部１０７から出力する切替信号１１４が、Ｙ端子にはＵＳＢホスト１５のＵＳＢバス、Ａ端子にはＵＳＢデバイスコントローラ１０６、Ｂ端子にはワンチップマイコン１０８が接続されている。なお、Ｙ端子とＵＳＢホスト１５とは、図示しないＵＳＢ端子及びＵＳＢケーブルを介して着脱可能に接続されている。
【００３８】
このような構成により、制御部１０７から切替信号１１４として「０」が出力されるとＵＳＢホスト１５とＵＳＢデバイスコントローラ１０６が接続され、切替信号１１４として「１」が出力されるとＵＳＢホスト１５とワンチップマイコン１０８が接続される。
【００３９】
以下、フローチャート（図２，図３）及びブロック図（図４，図５）を用いて、図１に示した画像形成装置の動作の説明を行う。
図２は、実施例１における制御部１０７の動作を表すフローチャートである。なお、このフローチャートの処理は、例えば制御部１０７が内部のプログラミング素子に書き込まれたプログラムに基づいて動作することにより実現される。
【００４０】
図４は、図２に示すフローチャートの動作開始時における画像形成装置の状態を示す図である。なお、本説明に関係のないスキャナ１２、プリンタ１３及び操作部１４は図４に図示していない。
【００４１】
図４では、コントローラ部１１は電源ユニット１６から電源系統Ａ及び電源系統Ｂの電力が供給されている。この状態では、ＣＰＵ１０１及びＵＳＢデバイスコントローラ１０６が動作中であり、ＵＳＢホスト１５からＵＳＢバスを介して入力されるデータをＵＳＢデバイスコントローラ１０６及びＣＰＵ１０１で取得することが可能である。そのため、ワンチップマイコン１０８は動作する必要が無いため電源系統Ｃの電力は供給されていない。
【００４２】
また、ＵＳＢホスト１５から入力されるデータをＵＳＢデバイスコントローラ１０６に送るため、ＵＳＢバススイッチ１０９は端子Ｙと端子Ａが接続された状態となっている（切替信号１１４からＳＥＬ端子に「０」が入力されている）。
【００４３】
さらに、ＣＰＵ１０１が駆動中であるため、ＣＰＵ１０１からはＣＰＵ状態信号１１０として「１」が出力されている。
図４の状態において、外部からの入力が無く一定時間が経過すると、ＣＰＵ１０１はスリープ状態（省電力モード）に移行するため、ＣＰＵ状態信号１１０を「１」から「０」に変化させる。
【００４４】
図２のフローチャートの処理は、図４の状態（即ち、コントローラ部１１が電源ユニット１６から電源系統Ａ及び電源系統Ｂの電力が供給されている状態）で開始される。
まず、Ｓ２０１において、制御部１０７は、ＣＰＵ状態信号１１０を監視する。そして、ＣＰＵ状態信号１１０の立下り（「１」から「０」への変化）を検出すると（Ｓ２０１でＹｅｓ）、制御部１０７は、Ｓ２０２に処理を進める。
【００４５】
Ｓ２０２では、制御部１０７は、電源制御信号１１１を出力して、電源ユニット１６に対して電源系統Ｃの電力の供給を開始するように制御する。
次に、Ｓ２０３において、制御部１０７は、イネーブル信号１１２に「１」を出力する。ワンチップマイコン１０８は、イネーブル信号１１２から「１」を入力されることにより、ＵＳＢホスト１５からのデータ入力待ち状態となる。
【００４６】
次に、Ｓ２０４において、制御部１０７は、切替信号１１４に「１」を出力することにより、ＵＳＢバススイッチ１０９の接続先をＵＳＢデバイスコントローラ１０６からワンチップマイコン１０８に変更するように制御する。
【００４７】
上記Ｓ２０４の処理によりＵＳＢホスト１５から入力されるデータをワンチップマイコン１０８で取得できるようになると、制御部１０７は、Ｓ２０５において、電源制御信号１１１を出力して電源ユニット１６に対して電源系統Ａの電力の供給を停止するように制御する。
【００４８】
図５は、図２のＳ２０５の処理を行った後の画像形成装置の状態を示す図である。
図５では、コントローラ部１１は電源ユニット１６から電源系統Ｂ及び電源系統Ｃの電力が供給されている。この状態では、ＵＳＢホスト１５からＵＳＢバスを介して入力されるデータをワンチップマイコン１０８で取得する必要があるため、電源系統Ｃの電力が供給されている。一方、ＣＰＵ１０１はスリープ状態であるため、電源系統Ａの電力供給が停止して領域１７に含まれるブロックへの電力が供給されていない。
【００４９】
また、ＵＳＢホスト１５から入力されるデータをワンチップマイコン１０８に送るため、ＵＳＢバススイッチ１０９は端子Ｙと端子Ｂが接続された状態となっている（図２のＳ２０４により切替信号１１４からＳＥＬ端子に「１」が入力されている）。
【００５０】
さらに、ＣＰＵ１０１がスリープ中であるため、ＣＰＵ１０１からはＣＰＵ状態信号１１０として「０」が出力されている。
以下、図２の説明に戻る。
上記Ｓ２０５により電源系統Ａの電力を停止した後、Ｓ２０６において、制御部１０７は、割込み信号１１３を参照し、割込み信号１１３から「１」が入力されるのを待つ。なお、ワンチップマイコン１０８は、ＵＳＢホスト１５からデータ入力があると、ＵＳＢホスト１５にＮＡＣＫパケットを出力し、制御部１０７に割込み信号１１３を出力する。
【００５１】
そして、割込み信号１１３から「１」が入力された（即ち、ワンチップマイコン１０８からＵＳＢホスト１５に対してＮＡＣＫパケットが出力された）と判定した場合（Ｓ２０６でＹｅｓ）、制御部１０７は、ＣＰＵ１０１をスリープ状態から復帰させる。そのため、制御部１０７は、Ｓ２０７において、電源制御信号１１１を出力して電源ユニット１６に対して電源系統Ａの電力の供給を開始するように制御する。
【００５２】
次に、Ｓ２０８において、制御部１０７は、ＣＰＵ状態信号１１０を参照し、ＣＰＵ状態信号１１０から「１」が入力されるのを待つ。
そして、ＣＰＵ状態信号１１０から「１」が入力された（ＣＰＵ１０１がスリープ状態から復帰して駆動状態になった）と判定した場合（Ｓ２０８で３Ｙｅｓ）、制御部１０７は、Ｓ２０９において、ＵＳＢバススイッチ１０９に対して切替信号１１４に「０」を出力する。これにより、ＵＳＢバススイッチ１０９の接続先をワンチップマイコン１０８からＵＳＢデバイスコントローラ１０６に変更する。
【００５３】
上記Ｓ２０９によりＵＳＢホスト１５から入力されるデータをＵＳＢデバイスコントローラ１０６で取得できるようになると、Ｓ２１０において、制御部１０７は、イネーブル信号１１２から「０」を出力してワンチップマイコン１０８の動作を停止させる。
【００５４】
次に、制御部１０７は、割込み信号１１３から「０」が入力されるのを待つ（Ｓ２１１）。そして、割込み信号１１３から「０」が入力された（ワンチップマイコン１０８の動作が停止した）と判定した場合（Ｓ２１１でＹｅｓ）、制御部１０７は、電源制御信号１１１を出力して電源ユニット１６に対して電源系統Ｃの電力の供給を停止するように制御する（Ｓ２１２）。これにより、ワンチップマイコン１０８への電力の供給が停止される。
【００５５】
図３は、実施例１におけるワンチップマイコン１０８の動作を表すフローチャートである。なお、このフローチャートの処理は、ワンチップマイコン１０８内部のプロセッサが内部のＲＯＭに記録されたプログラミングに基づいて動作することにより実行される。
【００５６】
上記図２のＳ２０２によって、電源ユニット１６が電源系統Ｃへの電力供給を開始すると、ワンチップマイコン１０８は動作を開始する。
ワンチップマイコン１０８は動作を開始すると、初期値として割込み信号１１３から「０」を出力した後（Ｓ３０１）、イネーブル信号１１２から１が入力されるのを待つ（Ｓ３０２）。
【００５７】
そして、上記Ｓ３０２において、イネーブル信号１１２から「１」が入力されたと判定した場合（Ｓ３０２でＹｅｓ）、ワンチップマイコン１０８は、ＵＳＢホスト１５からデータが入力されるのを待つ（Ｓ３０３）。
【００５８】
そして、上記Ｓ３０３において、ＵＳＢホスト１５からデータが入力されたことを認識したと判定した場合（Ｓ３０３でＹｅｓ）、ワンチップマイコン１０８は、ＵＳＢバスを介してＵＳＢホスト１５に対して、データの再送を要求するＮＡＣＫパケットを出力する（Ｓ３０４）。
【００５９】
次に、Ｓ３０５において、ワンチップマイコン１０８は、ＣＰＵ１０１をスリープ状態から復帰させるために、制御部１０７に対して、割込み信号１１３から「１」を出力する。
【００６０】
次に、Ｓ３０６において、ワンチップマイコン１０８は、制御部１０７から入力されるイネーブル信号１１２を参照し、イネーブル信号１１２から「０」が入力されているか判定する。
【００６１】
一方、上記Ｓ３０６においてイネーブル信号１１２から「０」が入力されていないと判定した場合（Ｎｏ）、ワンチップマイコン１０８は、再びＵＳＢホスト１５からデータが入力されているか判定する（Ｓ３０８）。
【００６２】
そして、上記Ｓ３０８において、再びＵＳＢホスト１５からデータが入力されていないと判定した場合（Ｎｏ）、Ｓ３０６に処理を戻し、再びイネーブル信号１１２を参照する。
【００６３】
また、上記Ｓ３０８において再びＵＳＢホスト１５からデータが入力されたと判定した場合（Ｙｅｓ）、即ち、イネーブル信号１１２から「０」が入力される前に再びＵＳＢホスト１５からデータが入力された場合、ワンチップマイコン１０８は、ＵＳＢバスを介してＵＳＢホスト１５に対して、ＮＡＣＫパケットを出力し（Ｓ３０９）、その後、Ｓ３０６に処理を戻し、再びイネーブル信号１１２を参照する。
【００６４】
そして、上記Ｓ３０６において、イネーブル信号１１２から「０」が入力されたと判定した場合（Ｙｅｓ）、即ち、再びＵＳＢホスト１５からデータが入力され前にイネーブル信号１１２から「０」が入力され場合、ワンチップマイコン１０８は、割込み信号１１３から「０」を出力して（Ｓ３０７）、動作を停止する。これにより、図３のフローチャートの処理は終了する。
【００６５】
以下に、ワンチップマイコン１０８がＵＳＢホスト１５からのデータ入力を検知して、ＮＡＣＫパケットを出力する方法の一例を、ＵＳＢバスにより転送されるデータフォーマットを用いて具体的に説明する。
【００６６】
ＵＳＢホストとＵＳＢデバイスの間では、フレーム単位でデータの送受信が行われる。
図６は、フレームに含まれるパケットの構成を表す図である。
フレームは、１つのフレーム開始パケット（Start of Packet、以下ＳＯＰと呼ぶ）（６０１）と、１又は複数のトークン・パケット（６０２）、データ・パケット（６０３）、及びハンドシェイク・パケット（６０４）から構成される。
【００６７】
ＳＯＰ６０１は、フレームの開始を知らせるパケットであり、ＵＳＢホストがＵＳＢデバイスにデータの出力を開始する時にフレームの最初に出力する。ＳＯＰ６０１を出力後、ＵＳＢホストは、ＵＳＢデバイスに対して転送方式やデータを出力するデバイスのアドレスを指定するトークン・パケット６０２を出力し、続いてデバイスに送るデータを搭載したデータ・パケット６０３を出力する。
【００６８】
トークン・パケットで指定されたＵＳＢデバイスは、データ・パケットが入力されると、データ・パケットが正常受信できたかどうかを知らせるハンドシェイク・パケットをＵＳＢホストに対して出力する。
【００６９】
以降、ＵＳＢホストとＵＳＢデバイスは、トークン・パケット、データ・パケット及びハンドシェイク・パケットを用いてデータの送受信を行い、送受信するデータがなくなるとフレームを終了する。
【００７０】
ただし、ＵＳＢバスでは、１つのフレームが使用する最長時間が規定されており、ひとつのフレームでデータがすべて送受信できないことがある。その場合、一度フレームを終了した後、ＵＳＢホストからＳＯＰを出力して新たにフレームを生成し、前のフレームで送受信したデータの続きからデータの送受信を続けることができる。
【００７１】
図７は、図６におけるフレーム開始パケットＳＯＰ６０１の内部構造を表す図である。
ＳＯＰは、８ビットのＳＹＮＣフィールド（７０１）、８ビットのパケットＩＤフィールド（７０２）、１１ビットのフレームナンバーフィールド（７０３）、５ビットのＣＲＣ（７０４）、及び２ビットのＥＯＰ（７０５）から構成される。
【００７２】
ＳＹＮＣフィールド７０１は、同期を取るためのフィールドである。ＳＯＰのパケットＩＤフィールド７０２には、このパケットがＳＯＰであることを表すための８ビットの情報「０１０１１０１０」が格納されている。
【００７３】
フレームナンバーフィールド７０３は、各フレームを識別するための番号が格納されている。ＣＲＣ５（Cyclic Redundancy Check）７０４は、伝送誤りを検出するためのフィールドで、５ビットで構成される。ＥＯＰ（End Of Packet）７０５は、パケットの終了を表すフィールドであり、パケットの終了ごとに出力される。
【００７４】
図８は、図６におけるトークン・パケット６０２の内部構造を表す図である。
トークン・パケット６０２は、８ビットのＳＹＮＣフィールド（８０１）、８ビットのパケットＩＤフィールド（８０２）、７ビットのアドレスフィールド（８０３）、４ビットのエンドポイントフィールド（８０４）、５ビットのＣＲＣ（８０５）、及び２ビットのＥＯＰ（８０６）から構成される。
【００７５】
ＳＹＮＣフィールド８０１は、ＳＯＰと同様に同期を取るためのフィールドである。トークン・パケットのパケットＩＤフィールド８０２には、後に続くデータ・パケットのデータがデバイスからホストへ転送する（ＩＮ）データであるか、ホストからデバイスへ転送する（ＯＵＴ）データであるかを表す情報が格納される。具体的には、デバイスからホストへ転送する（ＩＮ）場合は「１００１０１１０」が、ホストからデバイスへ転送する（ＯＵＴ）場合は「０００１１１１０」が格納される。
【００７６】
アドレスフィールド８０３は、データを送受信するデバイスのアドレス情報が格納される。同様に、エンドポイントフィールド８０４はデータを送受信するデバイスのエンドポイント情報が格納される。８０５のＣＲＣ５（Cyclic Redundancy Check）は伝送誤りを検出するためのフィールドで、５ビットで構成される。ＥＯＰ（End Of Packet）８０６はパケットの終了を表すフィールドであり、パケットの終了ごとに出力される。
【００７７】
図９は、図６におけるデータ・パケット６０３の内部構造を表す図である。
データ・パケット６０３は、８ビットのＳＹＮＣフィールド（９０１）、８ビットのパケットＩＤフィールド（９０２）、０〜１０２３ビットのデータフィールド（９０３）、１６のＣＲＣ（９０４）、及び２ビットのＥＯＰ（９０５）から構成される。
【００７８】
ＳＹＮＣフィールド９０１は、ＳＯＰと同様に同期を取るためのフィールドである。データ・パケットのパケットＩＤフィールド９０２には、複数のデータ・パケットを転送する場合に転送の同期を確認するための情報として、そのデータ・パケットが偶数個目（ＤＡＴＡ０）であるか、奇数個目（ＤＡＴＡ１）であるかを表す情報が格納される。具体的には、ＤＡＴＡ０の場合は「００１１１１００」が、ＤＡＴＡ１の場合は「１０１１０１００」が格納される。
【００７９】
データフィールド９０３は、送受信するデータが格納されていて、最大１０２３ビットのデータが格納される。９０４のＣＲＣ１６（Cyclic Redundancy Check）は伝送誤りを検出するためのフィールドで、１６ビットで構成される。ＥＯＰ（End Of Packet）９０５は、パケットの終了を表すフィールドであり、パケットの終了ごとに出力される。
【００８０】
図１０は、図６におけるハンドシェイク・パケット６０４の内部構造を表す図である。
ハンドシェイク・パケット６０４は、８ビットのＳＹＮＣフィールド（１００１）、８ビットのパケットＩＤフィールド（１００２）、及び２ビットのＥＯＰ（１００３）から構成される。
【００８１】
ＳＹＮＣフィールド１００１は、ＳＯＰと同様に同期を取るためのフィールドである。ハンドシェイク・パケットのパケットＩＤフィールド１００２には、データ・パケット６０３に格納されているデータをデバイスが正常に受信できたかどうかを表す情報が格納される（図１２にて詳細に説明する）。ＥＯＰ（End Of Packet）１００３は、パケットの終了を表すフィールドであり、パケットの終了ごとに出力される。
【００８２】
図１２は、ハンドシェイク・パケットのパケットＩＤフィールド１００２に格納される情報を示す図である。
ＡＣＫ（００１０１１０１）は、データ・パケットを正常に受信したことを表し、ホストは引き続きデータの転送を行う。本説明では、ＰＩＤ１００２にＡＣＫ情報が格納されたハンドシェイク・パケットをＡＣＫパケットを呼ぶ。
【００８３】
ＮＡＫ（１０１００１０１）は、データ・パケットを正常に受信できなかった、或いは通信できないことを表し、ＵＳＢホストは、直前のデータ・パケットと同じ内容のデータ・パケットを再度転送する。本説明では、ＰＩＤ１００２にＮＡＣＫ情報が格納されたハンドシェイク・パケットをＮＡＣＫパケットを呼ぶ。なお、ＮＡＣＫとは「Negative Acknowledgment」を示す。
【００８４】
ＳＴＡＬＬ（１１１００００１）は、転送するデバイスがエラー状態にあり、ホストが何らかの方法でファンクションの停止状態を解除しなければデータ転送は再開できないことを表す。
【００８５】
図１１は、ＳＯＰ６０１、トークン・パケット６０２、データ・パケット６０３及びハンドシェイク・パケット６０４の最終段で転送されるＥＯＰフィールドにおけるＵＳＢバスの状態を説明するための図である。
【００８６】
ＵＳＢバスは、二本の信号線Ｄ＋及びＤ−を用いてデータの転送を行う。すなわち、図１１の１１０４のように、信号線Ｄ＋に電圧が印加され（信号線Ｄ＋の電圧がＶＨとなる）、且つ、信号線Ｄ−に電圧が印加されない（信号線Ｄ−の電圧がＶＬとなる）状態の場合、ＵＳＢバスは情報として「１」を表す。
【００８７】
逆に、図１１の１１０３のように、信号線Ｄ＋に電圧が印加されない（信号線Ｄ＋の電圧がＶＬとなる）、且つ、信号線Ｄ−に電圧が印加される（信号線Ｄ−の電圧がＶＨとなる）状態の場合、ＵＳＢバスは情報として「０」を表す。
【００８８】
上記二つの状態を変化させることにより、ＵＳＢバスは情報の転送を行う。例えば、図１１の領域１１０１は、情報として「１１０１１０１」を表す。
このように、ＵＳＢバスは信号線Ｄ＋と信号線Ｄ−が異なる電圧を表すことで、伝達する情報の値を表現している。しかし、ＥＯＰフィールドでは、図１１の領域１１０２に示すように、２ビット分の幅だけ信号線Ｄ＋及び信号線Ｄ−に電圧が印加されない（電圧がＶＬとなる）状態となる。ＵＳＢホスト及びデバイスは、信号線Ｄ＋とＤ−に電圧が印加されない状態になることで、ＥＯＰフィールドを認識する。
【００８９】
以上説明したように、ワンチップマイコン１０８がＵＳＢホスト１５からのデータ入力に対してＮＡＣＫパケットを出力するには、ＥＯＰフィールドを参照することによって実現することができる。すなわち、フレームの開始を表すＳＯＰ６０１、トークン・パケット６０２及びデータ・パケット６０３の３つのＥＯＰ（信号線Ｄ＋とＤ−に電圧が印加されない状態）を検出したところで、ＮＡＣＫパケットの出力を開始すればよい。
【００９０】
このように、ＮＡＣＫパケットとして出力する１８ビットの情報も固定値を出力するだけで実現できる。そのため、本説明ではこれまで１０８をワンチップマイコンと説明したが、上述したワンチップマイコン１０８と同様の機能を実現可能なデバイスであればどのようなデバイスであってもよい。上述したように、例えば論理回路だけで上述のワンチップマイコン１０８の機能を実現する構成であってもよい。ただし、ＵＳＢデバイスオンと１０６より消費電力の小さいものとする。
【００９１】
以上示したように、ＣＰＵ１０１がスリープ状態のときは、ＵＳＢホスト１５から送られてくるパケットに対してＵＳＢバススイッチ１０９を用いてワンチップマイコン１０８に送り、ワンチップマイコン１０８からＵＳＢホスト１５にＮＡＣＫ信号を返すことができる。これにより、ＣＰＵ１０１がスリープ状態においてもＵＳＢホスト１５から送られるパケットに対応することができ、ＣＰＵ１０１をスリープ状態から復帰することができる。また、消費電力がＣＰＵ１０１より少ないワンチップマイコン１０８を用いることにより、ＣＰＵ１０１がスリープ中はＵＳＢホスト１５であるＰＣを含めたシステム全体の構成における節電効果を十分に得ることができる。
【００９２】
即ち、ＵＳＢホスト１５を含むシステム全体の消費電力を抑えたまま、ＵＳＢホスト１５から送られてくるパケットに応答可能な画像形成装置の待機状態を実現することができる。
【００９３】
なお、上記実施例では、ＵＳＢ規格に準じて接続される機器と画像形成装置との通信を例に説明したが、ＵＳＢ規格以外の規格であっても、本発明は適用可能である。例えば、電源を入れたまま着脱可能なホットプラグ（活線挿抜）等に対応した規格であって、送信側から送信されたデータを受信側が正しく受信できなかった等の場合に、受信側が送信側に所定の情報（ＵＳＢ規格でのＮＡＣＫパケットに相当）を返信することにより、送信側がデータを再送信するような規格であれば、本発明を適用可能である。
【００９４】
以上、本発明によれば、画像形成装置に接続（例えばＵＳＢ接続）される機器を含むシステム全体の消費電力を抑えたまま、前記画像形成装置に接続される機器から送られてくるパケットに応答可能な画像形成装置の待機状態を実現することができる。
【００９５】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、１つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【００９６】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体（記録媒体）を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００９７】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００９８】
１０１    ＣＰＵ
１０６    ＵＳＢデバイスコントローラ
１０７    制御部
１０８    ワンチップマイコン
１０９    ＵＳＢバススイッチ
【図１】
0006261156.tif 000002
【図２】
0006261156.tif 000003
【図３】
0006261156.tif 000004
【図４】
0006261156.tif 000005
【図５】
0006261156.tif 000006
【図６】
0006261156.tif 000007
【図７】
0006261156.tif 000008
【図８】
0006261156.tif 000009
【図９】
0006261156.tif 000010
【図１０】
0006261156.tif 000011
【図１１】
0006261156.tif 000012
【図１２】
0006261156.tif 000013