(57)【要約】【課題】  本発明の係る画像処理装置は、サスペンド処理中のデバイスの取り付け、または取り外しによる割り込み処理の発生を防ぎ、省電力状態に移行すること目的とする。【解決手段】  本発明の画像処理装置は、通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置であって、取り付け、取り外しが可能なデバイスが前記画像処理装置に取り付けられたこと、または前記デバイスが前記画像処理装置から取り外されたことを検知する検知手段と、前記検知手段により前記デバイスの取り付けまたは取り外しが検知されたことに従って、割り込み処理を実行するよう制御する制御手段と、を有し、前記制御手段は、前記検知手段による検知を行わないよう制御してから、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させることを特徴とする。【選択図】  図３
2018103383.tif 000002
【特許請求の範囲】
【請求項１】
通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置であって、
取り付け、取り外しが可能なデバイスが前記画像処理装置に取り付けられたこと、または前記デバイスが前記画像処理装置から取り外されたことを検知する検知手段と、
前記検知手段により前記デバイスの取り付けまたは取り外しが検知されたことに従って、割り込み処理を実行するよう制御する制御手段と、を有し、
前記制御手段は、前記検知手段による検知を行わないよう制御してから、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させることを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記画像処理装置から前記デバイスへの電力供給を停止することで、前記検知手段による検知を行わないよう制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記画像処理装置から前記デバイスへの電力供給が停止される前に前記デバイスが前記画像処理装置に取り付けられていた場合、前記デバイスへの電力の供給が停止したことに従って発生する前記割り込み処理を実行してから、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させる処理を実行することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記制御手段は、前記画像処理装置が前記省電力状態から前記通常状態へ復帰するときに、前記検知手段による検知が行われるよう制御すること特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記画像処理装置は、前記画像処理装置に備えられたデバイスドライバの制御するデバイスのレジスタの値を記憶する記憶手段を、さらに有し、
前記制御手段は、前記省電力状態へ移行する前に、前記デバイスドライバの制御するデバイスのレジスタの値を前記記憶手段に記憶するよう制御し、前記省電力状態から前記通常状態に復帰した後に、前記記憶手段に記憶された値を前記デバイスドライバの制御するデバイスのレジスタに設定するよう制御することを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
前記画像処理装置は、表示部、入力部、読取部、印刷部をさらに備え、
前記通常状態とは、前記記憶手段、前記表示部、前記入力部、前記読取部、前記印刷部に電力が供給されている状態であり、
前記省電力状態とは、前記記憶手段に電力が供給されている状態であり、前記表示部、前記入力部、前記読取部、前記印刷部に電力が供給されていない状態であることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記取り付け、取り外しが可能なデバイスはＵＳＢデバイスであることを特徴とする請求項１乃至請求項６のいずれか一項に記載の画像処理装置。
【請求項８】
通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置であって、
ユーザが取り付け、取り外しできるデバイスを取り付けることのできるインターフェースと、
前記インターフェースを介して、前記デバイスに電力を供給する電力供給手段と、
前記電力供給手段により前記デバイスに供給される電力を制御する電力制御手段と、
前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させる制御手段と、を有し、
前記電力供給手段が前記デバイスへの電力の供給を停止したことに従って、前記画像処理装置の状態を前記省電力状態に移行することを特徴とする画像処理装置。
【請求項９】
通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置の制御方法であって、
ユーザにより取り付け、取り外しが可能なデバイスが前記画像処理装置に取り付けられたこと、または前記デバイスが前記画像処理装置から取り外されたことを検知する検知ステップと、
前記検知ステップにおいて前記デバイスの取り付けまたは取り外しが検知されたことに従って発生する割り込み処理を実行するよう制御する制御ステップと、を有し、
前記制御ステップにおいて、前記検知ステップにおける検知が行われないよう制御してから、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させる制御を行うことを特徴とする画像処理装置の制御方法。
【請求項１０】
通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置の制御方法であって、
ユーザが取り付け、取り外しできるデバイスを取り付けることのできるインターフェースを介して、前記デバイスに電力を供給する電力供給ステップと、
前記電力供給ステップにおいて、前記デバイスに供給される電力を制御する電力制御ステップと、
前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させる制御ステップと、を有し、
前記電力制御ステップにおいて、前記インターフェースを介した前記デバイスへの電力の供給を停止したことに従って、前記制御ステップにおいて、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行する処理を実行することを特徴とする画像処理装置の制御方法。
【請求項１１】
請求項９または１０に記載の画像処理装置の制御方法をコンピュータが実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザによる取り外し可能なデバイスと接続される画像処理装置に関するものである。
【背景技術】
【０００２】
一定時間操作がなされない場合等に、装置の状態を通常状態から消費電力の小さい省電力状態に移行する画像処理装置が知られている。画像処理装置が状態を省電力状態に移行するときには、省電力状態に移行する前に、画像処理装置の各デバイスの設定値をメモリに記憶するサスペンド処理を行う。その後、一部のデバイスへの電力の供給を停止することで省電力状態における消費電力を小さくする。そして、画像処理装置が省電力状態から通常状態に復帰するときに、メモリに記憶した設定値を読み出して各デバイスに設定する。このようにすることで、省電力状態では消費電力を小さくしつつ、省電力状態に移行する前の状態に復帰することができる。
【０００３】
画像処理装置がサスペンド処理を実行しているときに、画像処理装置に接続されたデバイスからサスペンド処理よりも優先度の高い割り込み処理の実行を要求される場合がある。割り込み処理とは、例えば、画像処理装置に接続されたデバイスへの書き込みが完了したときに行われる処理等である。このとき、画像処理装置がサスペンド処理を中断して割り込み処理を実行するため、画像処理装置の状態を省電力状態に移行させることができない。
【０００４】
特許文献１には、サスペンド処理中に、装置に組み込まれているデバイスから割り込み処理が要求された場合、その割り込み処理を実行しないよう制御することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−８６８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
画像処理装置は、ユーザによる取り付け取り外しが可能なＵＳＢデバイス等のデバイスを取り付けて使用することができる。上記のようなデバイスが画像処理装置に取り付けられた場合、画像処理装置は当該デバイスと画像処理装置で通信を開始するための割り込み処理を実行する。一方で、当該デバイスが画像処理装置から取り外されると、前記画像処理装置は当該デバイスとの通信を終了する割り込み処理を実行する。
【０００７】
特許文献１では、取り外し可能なデバイスが画像処理装置に取り付けられたときや、取り外されたときに発生する割り込み処理について考えられていない。
【０００８】
そのため、画像処理装置がサスペンド処理を実行しているときに、ユーザが上記のようなデバイスを取り付けたり、取り外したりすると、画像処理装置はデバイスの取り付け、または取り外しに伴う割り込み処理を優先的に実行する。その結果、サスペンド処理は中断されてしまい、画像処理装置は省電力状態に移行することができない。
【０００９】
そこで、本発明の係る画像処理装置は、サスペンド処理中にユーザがデバイスを取り付け、または取り外ししたことによって発生する割り込み処理の発生を防ぎ、画像処理装置の状態を省電力状態に移行すること目的とする。
【課題を解決するための手段】
【００１０】
本発明は、通常状態と前記通常状態よりも消費電力の小さい省電力状態で動作することのできる画像処理装置であって、取り付け、取り外しが可能なデバイスが前記画像処理装置に取り付けられたこと、または前記デバイスが前記画像処理装置から取り外されたことを検知する検知手段と、前記検知手段により前記デバイスの取り付けまたは取り外しが検知されたことに従って、割り込み処理を実行するよう制御する制御手段と、を有し、前記制御手段は、前記検知手段による検知を行わないよう制御してから、前記画像処理装置の状態を前記通常状態から前記省電力状態に移行させることを特徴とする。
【発明の効果】
【００１１】
本発明は本発明の係る画像処理装置は、サスペンド処理中にユーザがデバイスを取り付け、または取り外ししたことによって発生する割り込み処理の発生を防ぎ、画像処理装置の状態を省電力状態に移行することができる。
【図面の簡単な説明】
【００１２】
【図１】第1に実施形態における、画像処理装置１のハードウェア構成を示す図である。
【図２】第１の実施形態における、ＵＳＢデバイスへの電力供給を制御するハードウェア構成を示す図である。
【図３】第１の実施形態で実行される、画像処理装置を省電力状態へ移行するときの処理を示すフローチャートである。
【図４】第１の実施形態で実行される、画像処理装置を通常状態へ復帰するときの処理を示すフローチャートである。
【図５】第１の実施形態において、画像処理装置が通常状態でＵＳＢデバイスを取り付けたときに行われる処理を示すフローチャートである。
【図６】第１の実施形態において、画像処理装置が通常状態でＵＳＢデバイスが取り外されたときに行われる処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１４】
（第１の実施形態）
図１は、画像処理装置１のハードウェア構成図である。本図をもちいて、画像処理装置１の構成を説明する。
【００１５】
ＣＰＵ１０１は、画像処理装置１を稼働させるためのソフトウェアを動作させる中央処理演算装置である。システムバス１０２は、ＣＰＵ１０１が他のユニットにアクセスしたり、他のユニット同士が情報をやりとりするための通路である。
【００１６】
ハードディスクユニット（以下、ＨＤＤ）１０３は画像処理装置１のソフトウェア及び、画像処理装置１が動作する為に必要なデータベース、またファイルが格納される格納領域として動作する。本実施形態では、当該記憶領域としてＨＤＤを用いることとして説明するが、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ（以下、ＳＳＤ）などの大容量不揮発メモリを用いることとしてもよい。Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（以下、ＲＡＭ）１０４は、画像処理装置１のプログラムが展開される領域を有するメモリである。さらにＲＡＭ１０４は、プログラム動作時の変数や、各ユニットからＤｙｎａｍｉｃ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ（以下ＤＭＡ）で転送されるデータの格納領域として動作する。
【００１７】
ネットワークコントローラ１０５は、画像処理装置１がネットワーク上の他の機器と通信を行うためのコントローラである。ネットワークコントローラインターフェース（ネットワークコントローラＩ／Ｆ）１０６は、ネットワークコントローラ１０５とネットワークを接続するためのインターフェースである。
【００１８】
ＵＳＢホストコントローラ１０７は、画像処理装置１とＵＳＢデバイスとの通信を制御するコントローラであり、ＵＳＢホストＩ／Ｆ１０８はＵＳＢホストコントローラと外部のＵＳＢを接続するためのインターフェースである。ＵＳＢホストコントローラ１０７はＵＳＢデバイス２０６を制御するデバイス制御を行う。図１では、ＵＳＢホストＩ／Ｆ１０６は１つのみ記載してあるが、複数存在することとしてもよい。このＵＳＢホストＩ／Ｆ１０８と不図示のＵＳＢケーブルを使用して画像処理装置１と外部のＵＳＢデバイスとが接続される。ＵＳＢデバイスの形態によっては、ＵＳＢケーブルを使用せず、ＵＳＢデバイスを直接、画像処理装置１に接続することとしてもよい。
【００１９】
表示部１１１は、画像処理装置１の動作状況をユーザ等が確認できるように表示する表示装置であり、表示部コントローラ１１０は表示部１１１の表示制御を行う。
【００２０】
入力部１１３は、ユーザから画像処理装置１への指示を受け付ける入力装置であり、入力部コントローラ１１２は、入力部１１３を制御する。入力部１１３は、たとえば、キーボードやマウスや、テンキー、カーソルキー、タッチパネルや、操作部キーボードといった入力装置である。また、入力部１１３がタッチパネルである場合は、タッチパネルが表示部１１１の表面に重畳されており、タッチパネルと表示部１１１が一体となっていることとする。
【００２１】
リアルタイムクロック（以下、ＲＴＣ）１１４は、画像処理装置１の時計機能、アラーム機能、タイマー機能等を担っている。
【００２２】
不揮発メモリ１１５は、書き換え可能な不揮発な記録媒体である。Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（以下ＳＲＡＭ）や、Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ  （以下ＥＥＰＲＯＭ）等が不揮発メモリとして用いられる。
【００２３】
ＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）１０９は、プログラムの書き換えが可能なロジックデバイスである。ＣＰＬＤ１０９は、ＣＰＵ１０１が基盤回路上の信号線のＬｏｗ（０）／Ｈｉｇｈ（１）状況を読み取ったり、Ｌｏｗ（０）／Ｈｉｇｈ（１）状況の設定を変更可能にするための処理を実行するデバイスである。本実施形態では、ＣＰＬＤ１０９が、画像処理装置１の電力関係のＯＦＦ／ＯＮを制御可能にしている。ＣＰＬＤ１０９の内部には、Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ（以下、ＧＰＩＯ）が存在する。ＣＰＵ１０１がＧＰＩＯのレジスタの設定値を変更することで、画像処理装置内の各ブロックへの電力供給のＯＦＦ／ＯＮを可能としている。
【００２４】
画像処理装置１は、スキャナＩ／Ｆ１１６を介してスキャナ１１７に接続する。スキャナ１１７は読取部として動作する。また画像処理装置１は、システムバス１０２を経由しプリンタＩ／Ｆ１１８を介してプリンタ１１９に接続する。プリンタ１１９は印刷部として動作する。
【００２５】
画像処理装置１内には、電源投入後、常に通電状況を保っている第１のブロックと、状態が省電力状態に移行した際に、通電されなくなる第２のブロックが存在する。ＣＰＬＤ１０９は第１および第２のブロックへの通電状態の制御を行っている。図１の１２４で囲まれたブロックは第１のブロックであり、電源投入後、常に通電しているブロックである。一方、１２１、１２２、１２３は第２のブロックであり、通常状態では通電しており、省電力状態に移行するときに電力供給が停止され通電されなくなるブロックである。汎用ＯＳがシステムのサスペンド処理を終了した後、ＣＰＵ１０１がＣＰＬＤ１０９にサスペンド処理が完了したことを知らせる信号１２０を送信する。ＣＰＬＤ１０９はサスペンド処理が完了したことを知らせる信号１２０を受け取り、第２のブロック１２１、１２２、１２３への電力供給を停止する処理を行う。
【００２６】
図２は、画像処理装置１に接続されるＵＳＢデバイスへの電力供給の制御を実現する回路構成を示した図である。
【００２７】
ＵＳＢデバイス２０６は、４本の信号線を用いてＵＳＢホストコントローラ１０７と通信する。ＶＢＵＳ２０２は、画像処理装置１がＵＳＢデバイス２０６への電力供給を行うための電力線である。Ｄ−２０３とＤ＋２０４は、ＵＳＢデバイス２０６とＵＳＢホストコントローラ１０７との間でデータを流す信号線である。ＧＮＤ２０５は、グランド信号線である。
【００２８】
ＡＮＤ回路２０１は、ＣＰＵ１０１の指示で制御されるＣＰＬＤ１０９のＧＰＩＯの出力と、ＵＳＢホストＩ／Ｆ１０８のＶＢＵＳの出力の論理積をとることで出力を制御する。ＡＮＤ回路２０１の出力が１の場合、画像処理装置１からＵＳＢデバイス２０６への電力供給が行われ、出力が０の場合、電力供給が行われない。本実施形態では、ＣＰＬＤ１０９のＧＰＩＯを１から０にして、ＵＳＢホストＩ／Ｆ１０８の出力に関係なく、ＡＮＤ回路２０１の出力を０にすることを「ＶＢＵＳを切断する」と記載する。一方で、ＣＰＬＤ１０９のＧＰＩＯの出力を０から１にして、ＵＳＢデバイス２０６が画像処理装置１に取り付けられたときにＶＢＵＳ２０２の出力が１になるようにすることを「ＶＢＵＳを接続する」と記載する。
【００２９】
本実施形態では、ＡＮＤ回路２０１をもちいてＵＳＢデバイス２０６のＶＢＵＳの出力を制御する。しかし、他の公知のロジック回路を用いてＵＳＢデバイス２０６のＶＢＵＳ２０２の出力の制御を行ってもよい。たとえば、ハイサイドスイッチとＯＲ回路をもちいて、ＶＢＵＳ２０２の出力を制御してもよい。
【００３０】
ここで、図２を用いて本実施形態において、画像処理装置１が通常状態から省電力状態に移行するときの流れを説明する。
【００３１】
画像処理装置１は、ジョブの終了から所定時間が経過したり、入力部１１３の受付けた最後の入力から所定時間が経過した場合に、画像処理装置１の状態を省電力状態に切り替えることとする。より具体的には、ＲＴＣ１１４が、最後にジョブを実行してからの経過時間や、最後に入力を受付けてからの時間を管理する。ＲＴＣ１１４によって計測された時間が所定時間に達した場合、画像処理装置１の状態を通常状態から省電力状態に移行する。
【００３２】
画像処理装置１が状態を通常状態から省電力状態に切り換えるとき、ＣＰＵ１０１はＣＰＬＤ１０９のＧＰＩＯの出力を１から０に変える。このとき、ＡＮＤ回路２０１の出力はＵＳＢホストＩ／Ｆ１０８の出力に関わらず、０となる。これにより、ＶＢＵＳ２０２への電力供給が停止して、画像処理装置１とＵＳＢデバイス２０６の通信は切断される。
【００３３】
画像処理装置１にＵＳＢデバイスが接続されていない場合、画像処理装置１はＶＢＵＳへの電力供給が停止された後に、ＵＳＢデバイスの取り外しに伴う割り込み処理を行わず、サスペンド処理を実行する。サスペンド処理とは、各デバイスドライバの制御するデバイスの設定値やドライバの状態を示す設定値を不揮発メモリに記憶する等処理である。
【００３４】
ＵＳＢデバイス２０６が接続されていた場合には、画像処理装置１は、ＶＢＵＳ２０２への電力供給を停止した後に、ＶＢＵＳ切断時に行われる割り込み処理を実行する。ＶＢＵＳ切断時に行われる処理とは、ＵＳＢデバイスが取り外されたときに行われる処理である。ＵＳＢデバイスが取り外されたときの処理は図６を用いて後述する。ＶＢＵＳ２０２の切断に伴う割り込み処理の完了後、ＣＰＵ１０１はサスペンド処理を実行する。
【００３５】
本実施形態では、画像処理装置１は、ＶＢＵＳ２０２への電力供給を停止して、画像処理装置１からＵＳＢデバイスが取り外されたときの割り込み処理を実行した後に、省電力状態への移行処理を行う。このようにすることで、サスペンド処理を実行している間にユーザがＵＳＢデバイスを取り付けたり、取り外したりしたとしても、当該ＵＳＢデバイスとの通信の開始や終了のための割り込み処理が発生しないようにすることができる。
【００３６】
はじめに、図５および図６を用いて、画像処理装置１にＵＳＢデバイス２０６が取り付けられたときの割り込み処理とＵＳＢデバイス２０６が取り外されたときの割り込み処理について説明する。
【００３７】
図５は、画像処理装置１にＵＳＢデバイス２０６が取り付けられたときに行われる割り込み処理の流れを示すフローチャートである。本フローチャートに記載の処理を実行するためのプログラムは画像処理装置１のＨＤＤ１０３に記憶されており、ＣＰＵ１０１が当該プログラムを実行することで実現される。
【００３８】
ＣＰＵ１０１は、ＵＳＢデバイスが取り付けられたかを判定する（Ｓ７０１）。ＵＳＢデバイスが画像処理装置１に取り付けられると、ＶＢＵＳ２０２、Ｄ−２０３、Ｄ＋２０４、ＧＮＤ２０５の４本の信号線がつながる。そして、ＶＢＵＳ２０２を介して画像処理装置１からＵＳＢデバイス２０６へ電力が供給される。ＵＳＢデバイス２０６への電力供給がなされ、Ｄ−２０３、Ｄ＋２０４の差動信号が動作することで、ＵＳＢホストコントローラ１０７がＵＳＢデバイス２０６を認識して、ＣＰＵ１０１はＵＳＢデバイスが接続されたと判定する。
【００３９】
ＣＰＵ１０１は、ＵＳＢホストコントローラ１０７からＵＳＢデバイス２０６の取り付けに伴う割り込み処理の要求を受信して、割り込み処理を実行する（Ｓ７０２）。ＣＰＵ１０１はＵＳＢデバイス２０６と通信を行い、ＵＳＢデバイス２０６の仕様や構成を解析するエニュメーション処理を実行する。ここでは、ＣＰＵ１０１がＵＳＢデバイス２０６にＵＳＢデバイスの種類や機能といった仕様を示すディスクリプタを要求する。ＣＰＵ１０１は受信したディスクリプタを解析することで、接続されたＵＳＢデバイス２０６がどのような機能を有するＵＳＢデバイスであるかを知ることができる。ＣＰＵ１０１は、解析して得た情報に基づいて、ＵＳＢデバイスとそのＵＳＢデバイスに対応したデバイスドライバの紐づけを行いＲＡＭ１０４に記憶する。
【００４０】
ＣＰＵ１０１は、接続されたＵＳＢデバイス２０６の有する機能を実現するための処理を実行する（Ｓ７０３）。たとえば、Ｓ７０２において、接続されたＵＳＢデバイスが記憶装置として機能するストレージクラスのデバイスであれば、ストレージクラスドライバを経由して、ＵＳＢデバイス２０６にアクセスできるようにするための処理を行う。この処理を行うことで、ＵＳＢデバイス２０６を画像処理装置１にマウントし、接続されているＵＳＢデバイス内のフォルダやデータにファイルシステム経由でアクセスすることができるようになる。また、Ｓ７０２において接続されたＵＳＢデバイスがＵＳＢカードリーダなどの入力型のＵＳＢデバイスであれば、アプリケーションソフトにカードリーダの接続を通知して、カードリーダからの読み出し、書き込みの処理を行うための処理を実行する。
【００４１】
図６は、画像処理装置１に取り付けられたＵＳＢデバイス２０６を取り外すときの処理の流れを説明するフローチャートである。図６に示すフローチャートに記載される処理を実行するためのプログラムは、画像処理装置１のＨＤＤ１０３等に記憶され、ＣＰＵ１０１が当該プログラムを実行することで実現される。
【００４２】
ＣＰＵ１０１はＵＳＢデバイス２０６が取り外されたかを判定する（Ｓ８０１）。ＵＳＢデバイス２０６が画像処理装置１から取り外されると、ＶＢＵＳ２０２、Ｄ−２０３、Ｄ＋２０４、ＧＮＤ２０５がつながっていない状態となる。上記の信号線が非接続状態となることで、画像処理装置１とＵＳＢデバイス２０６の間で信号のやりとりができなくなる。ＵＳＢホストコントローラ１０７はＵＳＢデバイス２０６が取り外されたことを検知して、ＣＰＵ１０１にＵＳＢデバイスの取り外しを通知する。ＣＰＵ１０１はこの通知を受信し、画像処理装置１からＵＳＢデバイス２０６が取り外されたと判定する。
【００４３】
Ｓ８０１において、ＵＳＢデバイスが取り外されていない場合、ＣＰＵ１０１は引き続きＳ８０１に記載の処理を実行する。
【００４４】
Ｓ８０１において、ＵＳＢデバイスが取り外されたと判定された場合、ＣＰＵ１０１は、ＵＳＢデバイスの取り外しに伴う割り込み処理を実行する（Ｓ８０２）。ここで、ＣＰＵ１０１はＳ７０２において行った、ＵＳＢデバイスとデバイスドライバの紐づけを解除する。ＵＳＢデバイスとＵＳＢデバイスの紐づけが解除されることにより、いずれのアプリケーションもＵＳＢデバイス２０６にアクセスすることができなくなる。
【００４５】
図６では、ＵＳＢデバイス２０６が画像処理装置１から取り外された後の処理について説明をした。画像処理装置１に取り付けられているＵＳＢデバイスがストレージデバイスである場合、ＵＳＢデバイス２０６を画像処理装置１にマウントした状態で取り外してしまうと、画像処理装置１内部のファイルシステムが壊れてしまう可能性がある。そこで、ＵＳＢデバイス２０６を画像処理装置１から取り外す前に、画像処理装置１からＵＳＢデバイス２０６へのアクセスを停止する処理が必要となる。
【００４６】
画像処理装置１からＵＳＢデバイス２０６へのアクセスを停止する処理は、ユーザから当該処理の開始の指示を受付けたことによって開始される。ユーザが表示部１１１に表示される画面と入力部１１３を用いて、画像処理装置１からＵＳＢデバイス２０６へのアクセスを停止するためのアンマウントの指示を入力する。ＣＰＵ１０１は、当該入力を受信して、Ｓ７０２においてマウントしたファイルシステムをアンマウントする。この処理を行うことで、ファイルシステムを壊してしまうことなく、ストレージデバイスを画像処理装置から取り外すことができる。
【００４７】
図３のフローチャートは、画像処理装置１が通常状態から省電力状態に移行する際の処理の流れを示すフローチャートである。図３に係る処理は、ＨＤＤ１０３等に記憶されているプログラムをＣＰＵ１０１が実行することにより実現される。
【００４８】
ＲＴＣ１１４が最後にジョブを終了してからの時間が所定時間経過したこと、または入力部１１３への最後の入力から所定時間が経過したことを検知したことによって、ＣＰＵ１０１は図３に示すフローチャートの処理を開始する。
【００４９】
ＣＰＵ１０１は、画像処理装置１が省電力状態へ移行可能かを判定する（Ｓ３０１）。ここでは、ＣＰＵ１０１が画像処理装置１内で動作するプリンタ１１９を制御するソフトウェアモジュール、スキャナ１１７を制御するソフトウェアモジュールなど各ソフトウェアモジュールに対して、省電力状態に移行可能かを問い合わせる。省電力状態に移行ができない状態とは、当該ソフトウェアモジュールが他の処理を実行中である等の場合である。問い合わせを行ったすべてのモジュールから省電力状態へ移行可能である場合に、画像処理装置１は処理をＳ３０２に進める。省電力状態に移行できないソフトウェアモジュールがある場合、ＣＰＵ１０１は画像処理装置１が省電力状態に移行できないと判定し、図３に示す処理を終了する。
【００５０】
Ｓ３０１において省電力状態に移行可能と判断された場合、ＣＰＵ１０１はＵＳＢホストコントローラを制御するソフトウェアモジュールに、ＵＳＢデバイスへのアクセス停止処理を依頼する（Ｓ３０２）。ＣＰＵ１０１からの信号を受付けて、ＵＳＢホストコントローラを制御するソフトウェアモジュールは、画像処理装置１に接続されているＵＳＢデバイス２０６へのアクセスを停止する処理を実行する。ＵＳＢストレージが画像処理装置１に接続されていた場合、マウントを解除し、ＣＰＵ１０１がＵＳＢストレージへファイルシステム経由でアクセスできないようにする。また、ＵＳＢカードリーダなどのＵＳＢデバイスが接続されている場合には、ＵＳＢカードリーダから情報を読み出したり、書き込む処理を実行するアプリケーションソフトに実行停止を指示する。
【００５１】
Ｓ３０２でＵＳＢデバイスへのアクセス処理を停止さした後、ＣＰＵ１０１は、ＶＢＵＳ２０２を切断する（Ｓ３０３）。ＣＰＵ１０１は、ＣＰＬＤ１０９に含まれるＧＰＩＯのレジスタを操作して、ＣＰＬＤ１０９とＡＮＤ回路２０１をつなぐ信号線の出力を０にする。この時、ＵＳＢホストコントローラ１０７が動作中で出力が１であっても、ＣＰＬＤ１０９から出力される信号が０であるため、ＡＮＤ回路２０１から出力されるＶＢＵＳ２０２の出力は０になる。ＶＢＵＳ２０２の出力が０になると、ＵＳＢデバイス２０６は物理的に画像処理装置１に接続されていても、電気的には切断されたことになる。
【００５２】
ＣＰＵ１０１は、ＶＢＵＳの切断に伴って発生する割り込み処理の発生を検知したかを判定する（Ｓ３０４）。Ｓ３０３において、ＶＢＵＳが切断されたときにＵＳＢデバイス２０６が接続されていた場合、画像処理装置１とＵＳＢデバイス２０６が電気的に切断され、通信を終了するための割り込み処理を要求する割り込み信号が発生する。一方で、Ｓ３０３において、ＶＢＵＳが切断されたときにＵＳＢデバイス２０６が接続されていなかった場合、ＶＢＵＳが切断されても割り込み信号は発生しない。所定時間経過しても割り込み信号の発生を検知しなかった場合、ＣＰＵ１０１は処理を後述のＳ３０７に処理を進める。
【００５３】
Ｓ３０４において割り込み信号の発生が検知された場合、ＣＰＵ１０１はＶＢＵＳの切断に伴う割り込み処理を実行する（Ｓ３０５）。Ｓ３０５においてＣＰＵ１０１の実行する処理は、ＵＳＢデバイスが画像処理装置から取り外されたときに発生する割り込み処理と同様の処理である。
【００５４】
ＣＰＵ１０１は発生した割り込み処理が完了したかを判定する（Ｓ３０６）。割り込み処理が完了していない場合、ＣＰＵ１０１はＳ３０５、Ｓ３０６の処理を繰り返し行う。
【００５５】
割り込み処理を終了した後、ＣＰＵ１０１は、汎用ＯＳのデバイスドライバについてサスペンド処理を行う（Ｓ３０７）。Ｓ３０７では、ＣＰＵ１０１が、動作中のデバイスドライバの扱うハードウェアのレジスタ情報や各デバイスの状態を示す状態変数等を不揮発メモリに記憶する処理を行う。
【００５６】
デバイスドライバのサスペンド処理が完了した後、ＣＰＵ１０１は汎用ＯＳのカーネルについてサスペンド処理を実行する（Ｓ３０８）。Ｓ３０８では、ＣＰＵ１０１が、動作中のカーネルが扱うハードウェアのレジスタ情報やハードウェアの状態を示す状態変数を不揮発メモリに記憶する処理を行う。デバイスドライバとカーネルがサスペンド状態になるとＣＰＵ１０１は、ＣＰＬＤ１０９に対して、サスペンド完了信号を出す。
【００５７】
ＣＰＬＤ１０９は、ＣＰＵ１０１からのサスペンド完了信号を受付けて、第二のブロック１２１、１２２、１２３への電力供給を停止する（Ｓ３０９）。
【００５８】
図４のフローチャートは、画像処理装置１が省電力状態から通常状態へ復帰する際の処理を表すフローチャートである。図４に係る処理は、ＨＤＤ１０３等に記憶されているプログラムをＣＰＵ１０１が実行することにより実現される。
【００５９】
画像処理装置１は、ネットワークを介して接続された外部のＰＣ等の装置からジョブが投入されたり、画像処理装置１に設けられた所定のボタンが押下されたことを検知したことに従って省電力状態から通常状態へと復帰する処理を開始する。すなわち、ジョブの投入や所定のボタンの押下を検知したことに従って、ＣＰＬＤ１０９がＣＰＵ１０１に復帰のための信号を送信する。
【００６０】
図４に記載の処理は、ＣＰＵ１０１がＣＰＬＤ１０９から復帰のための信号を受信したことで開始される。このとき、ＣＰＬＤ１０９は図３のＳ３０８で電力供給を停止させた第二のブロック１２１、１２２、１２３への電力供給を再開する。
【００６１】
ＣＰＵ１０１は、ＣＰＬＤ１０９から復帰のための信号を受けつけると、汎用ＯＳのカーネルおよびデバイスドライバのレジューム処理を行う（Ｓ４０１）。Ｓ４０１において、ＣＰＵ１０１は図３のＳ３０６およびＳ３０７で記憶したハードウェアのレジスタ情報や状態変数を読み出し、各デバイスのレジスタに書きこむ等の処理を行う。
【００６２】
汎用ＯＳのカーネルおよびデバイスドライバのレジューム処理が完了した後、ＣＰＵ１０１はＣＰＬＤ１０９に含まれるＧＰＩＯのレジスタを操作して、ＣＰＬＤ１０９の出力を１にする（Ｓ４０２）。
【００６３】
ＵＳＢデバイス２０６が画像処理装置１に取り付けられている場合、ＡＮＤ回路２０１の出力は１となり、ＵＳＢデバイス２０６へ電力が供給される。ＵＳＢデバイス２０６のＶＢＵＳ２０２に電力が供給されると、ＵＳＢデバイス２０６と画像処理装置１が通信をすることができるようになる。Ｓ４０２において、ＵＳＢデバイス２０６が画像処理装置１に取り付けられていない場合、ＶＢＵＳ２０２はひきつづき０のままである。
【００６４】
ＣＰＵ１０１がＣＰＬＤ１０９のＧＰＩＯ値を１にした後、ＣＰＵ１０１は画像処理装置１にＵＳＢデバイスが接続されているかを判定する（Ｓ４０３）。ここで、ＣＰＵ１０１は、ＵＳＢデバイスが画像処理装置に取り付けられたことによって発生する割り込み信号を検知する。割り込み信号の発生を検知した場合、ＣＰＵ１０１は画像処理装置にＵＳＢデバイスが接続されていると判定する。ＵＳＢデバイスが接続されている場合、ＣＰＵ１０１はＵＳＢデバイスと通信を開始するための割り込み処理を行い、処理をＳ４０４に進める。ＣＰＵ１０１が割り込み信号を検知しなかった場合、ＣＰＵ１０１は画像処理装置にＵＳＢデバイスが接続されていないと判定し、図４の処理を終了する。Ｓ４０３において、ＵＳＢデバイスが画像処理装置に取り付けられているかを判定する処理は上記の処理に限らない。
【００６５】
Ｓ４０３において、ＵＳＢデバイス２０６が画像処理装置１に接続されていると判定された場合、ＣＰＵ１０１はＵＳＢデバイス２０６へのアクセスを再開するための処理を実施する（Ｓ４０４）。ＵＳＢデバイス２０６がＵＳＢストレージであった場合、マウント処理を実行し、ＣＰＵ１０１がファイルシステム経由でＵＳＢストレージにアクセス出来るようにする。また、ＵＳＢカードリーダなど入力型のＵＳＢデバイスが接続されている場合は、アプリケーションソフトにカードリーダの接続を通知し、ＵＳＢカードリーダへの書き込みおよび読み出しの処理を行えるようにする。
【００６６】
Ｓ４０４の処理を実行した後、画像処理装置１は図４のフローチャートに示す処理を終了する。
【００６７】
以上の処理を実施することで、画像処理装置１のサスペンド処理中に、ユーザがＵＳＢデバイス等のデバイスの取り付けまたは、取り外しを行うことで発生する割り込み処理の発生することを防ぐことができる。これにより、画像処理装置は通常状態から省電力状態に移行するよう電力制御することができる。
【００６８】
また、ＶＢＵＳを切断した後に、ＶＢＵＳの切断に伴って発生する、割り込み処理の終了を検知してから、画像処理装置内のデバイスドライバが扱うデバイスのサスペンド処理を実行する。これにより、ＶＢＵＳ切断時の割り込み処理とサスペンド処理が同時に発生し、画像処理装置が省電力状態に移行できなくなってしまうことを防ぐことができる。
【００６９】
（その他の実施形態）
第１の実施形態では、図３のＳ３０４においてＶＢＵＳ切断による割り込み信号が発生しているか否かを判定して、割り込み信号の発生を検知したことに従って、Ｓ３０５、Ｓ３０６の処理を実行することとして説明した。しかし、Ｓ３０４において割り込み処理の検知を行わずに、ＶＢＡＳを切断する前にＵＳＢデバイスが接続されていたかを判定する。
【００７０】
ＣＰＵ１０１はＵＳＢデバイス２０６が画像処理装置１に取り付けを認識し、ＵＳＢデバイスが取り付けられたことをＲＡＭ１０４に記憶する。ＣＰＵ１０１はＲＡＭ１０４に記憶されている情報を参照し、ＶＢＡＵ切断前にＵＳＢデバイスが接続されていれば、Ｓ３０５およびＳ３０６に記載の処理を実行する。ＶＢＡＳ切断前に画像処理装置にＵＳＢデバイスが接続されていない場合、Ｓ３０７以降の処理を実行する。
【００７１】
本発明は、ＵＳＢ以外のＦＩＲＥＷＩＲＥ（登録商標）等のインターフェースにも適用可能である。
【００７２】
また本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのコンピュータプログラム、及び該コンピュータプログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2018103383.tif 000003
【図２】
2018103383.tif 000004
【図３】
2018103383.tif 000005
【図４】
2018103383.tif 000006
【図５】
2018103383.tif 000007
【図６】
2018103383.tif 000008