(57)【特許請求の範囲】
【請求項１】
データを処理する処理手段と前記データを記憶する主記憶手段とを含む第１の装置と、前記第１の装置に接続される少なくとも１つの第２の装置と、を備え、省電力モード時に前記処理手段及び前記第２の装置の電源をオフ状態にする通信装置において、
前記省電力モード時にデータを受信した場合に前記処理手段の電源をオン状態にさせる電源制御手段と、
前記処理手段の電源をオン状態にさせたときに、電源オン状態へ移行させるための起動開始通知を前記第２の装置へ通知する通知手段と、
受信データを一時記憶する副記憶手段と、
前記処理手段の電源をオン状態にさせてから前記処理手段が前記主記憶手段に記憶されたデータを読み出し可能になるまで、前記主記憶手段の残り記憶容量がなくなった場合は、前記副記憶手段に受信データを転送する転送手段と、
を備え、
前記処理手段は、電源オン状態時に前記主記憶手段のメモリチェックを含む立ち上げ処理を行い、前記転送手段は、前記受信データを記憶するために予め設定された前記主記憶手段の記憶領域のメモリチェックが終了した時点で前記副記憶手段に記憶された受信データを前記主記憶手段へ転送する
ことを特徴とする通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、受信装置及び通信装置に係り、より詳しくは、省電力制御が可能な受信装置及び通信装置に関する。
【０００２】
【従来の技術】
近年、プリンタ等の電子機器における省電力化の要望がますます高くなっており、例えばデータ転送が行われない期間はスリープモードへ以降し、データ転送が検知された場合にスリープモードを解除することにより省電力化を図ることができるプリンタが知られている。
【０００３】
例えば、特開平８−３２４０７１号公報には、上位装置との通信機能を除く受信装置本体の各部への電源供給を休止するスリープモードへ遷移させた状態時に上位装置から情報を受信した場合、ＣＰＵやＲＯＭ、ＲＡＭ等を含んで構成された制御部が、前記受信した情報を解析して電源供給を開始すべき情報を受信しているかどうかを判別し、該判別結果に応じて電源供給を再開するか否かを制御する印刷制御装置が提案されている。この印刷制御装置によれば、上位装置からデータを受信する毎に不必要に電源供給を再開させることがなく、電力消費を抑えることができる。
【０００４】
しかしながら、上記従来技術では、制御部において電源供給を開始すべき情報を受信しているかどうかを常に監視しているため、制御部を構成するＣＰＵやＲＯＭ，ＲＡＭ等に常に電源を供給する必要があり、スリープモードでも電力を消費してしまう。近年では、通信制御に関わるＣＰＵや、ＲＯＭ，ＲＡＭ等のメモリの消費電力も無視できない状況となっており、印刷装置本体だけでなく通信制御に関わるＣＰＵやＲＯＭ，ＲＡＭ等の消費電力も抑える必要がある。
【０００５】
また、省エネモード時にデータ受信制御部内の通信Ｉ／Ｆにのみ通電させ、データ受信時にＣＰＵやメモリに起動をかける技術も提案されているが、ＣＰＵやメモリに起動をかけるまでの時間内の受信データを取りこぼしてしまう、という問題があった。
【０００６】
また、特開平８−２０２４６９号公報には、ＣＰＵ及び非同期送受信回路を備えたマイクロコンピュータが記載されている。このマイクロコンピュータでは、省電力制御状態時には、外部から送信されるシリアルデータのスタートビットを検出して非同期送受信回路を起動させ、非同期送受信回路は、全データを受信した後にＣＰＵに割り込みを発生させ、ＣＰＵを起動している。
【０００７】
また、従来では、省電力状態から復帰する場合、非同期送受信回路が復帰情報を受信してＣＰＵへ通知する。これにより、ＣＰＵはブート処理を実行し、ブート処理完了後に省電力状態の外部装置へ復帰情報を送信して復帰させている。
【０００８】
【発明が解決しようとする課題】
しかしながら、上記従来技術では、省電力状態から復帰した後、非同期送受信回路はＣＰＵのブート処理が終了するまでは動作することができず、さらに、外部装置はブート処理終了後、復帰情報を受信するまでは省電力状態から復帰できない、という問題があった。
【０００９】
本発明は、上記問題を解決すべく成されたものであり、省電力状態から通常状態へ復帰する際の受信データの取りこぼしを防ぐことができると共に、速やかに復帰することができる受信装置及び通信装置を提供することを目的とする。
【００１９】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、データを処理する処理手段と前記データを記憶する主記憶手段とを含む第１の装置と、前記第１の装置に接続される少なくとも１つの第２の装置と、を備え、省電力モード時に前記処理手段及び前記第２の装置の電源をオフ状態にする通信装置において、前記省電力モード時にデータを受信した場合に前記処理手段の電源をオン状態にさせる電源制御手段と、前記処理手段の電源をオン状態にさせたときに、電源オン状態へ移行させるための起動開始通知を前記第２の装置へ通知する通知手段と、受信データを一時記憶する副記憶手段と、前記処理手段の電源をオン状態にさせてから前記処理手段が前記主記憶手段に記憶されたデータを読み出し可能になるまで、前記主記憶手段の残り記憶容量がなくなった場合は、前記副記憶手段に受信データを転送する転送手段と、を備え、前記処理手段は、電源オン状態時に前記主記憶手段のメモリチェックを含む立ち上げ処理を行い、前記転送手段は、前記受信データを記憶するために予め設定された前記主記憶手段の記憶領域のメモリチェックが終了した時点で前記副記憶手段に記憶された受信データを前記主記憶手段へ転送することを特徴としている。
【００２０】
通信装置は、データを処理する例えばＣＰＵなどの処理手段と、このデータを処理する例えばＲＡＭなどの主記憶手段とを備えた第１の装置と、第１の装置と接続される第２の装置を備えている。第２の装置は、例えば通信装置が画像形成装置に用いられる場合には画像処理装置や印刷装置などであり、１つでもよいし、複数あってもよい。この通信装置では、省電力モード時には、処理手段及び外部装置を電源オフ状態にして省電力を図る。
【００２１】
このような通信装置において、電源制御手段は、省電力モード時にデータを受信した場合に処理手段の電源をオン状態にさせる。なお、データの内容に関わらず単にデータを受信した場合に電源オン状態にさせてもよいし、予め定めたデータ、例えば電源オン状態にさせることを指示するためのデータを受信したか否かを判断し、一致した場合にのみ電源をオンさせてもよい。
【００２２】
通知手段は、処理手段の電源をオン状態にさせた時に、起動開始通知を第２の装置へ通知する。すなわち、処理手段の立ち上げ処理が終了するまで待ってから起動開始通知を第２の装置へ通知するのではなく、処理手段の電源をオン状態にさせた時に即座に起動開始通知を第２の装置へ通知する。これにより、電源オフ状態から通常状態へ復帰するまでの時間を短縮することができる。
【００２３】
ところで、電源オン状態において、処理手段が主記憶手段のデータを読み出すことが可能になるまでに時間がかかるような場合には、受信データを取りこぼす恐れがある。
【００２４】
そこで、受信データを一時記憶する副記憶手段と、前記処理手段の電源をオン状態にさせてから前記処理手段が前記主記憶手段に記憶されたデータを読み出し可能になるまで、前記主記憶手段の残り記憶容量がなくなった場合は、前記副記憶手段に受信データを転送する転送手段と、を備えている。
【００２５】
処理手段の電源をオン状態にさせてから処理手段が主記憶手段に記憶されたデータを読み出し可能になるまでの間は、主記憶手段の残り記憶容量がなくなった場合は、副記憶手段に受信データを転送する。これにより、受信データの取りこぼしを防ぐことができる。また、前記処理手段は、電源オン状態時に前記主記憶手段のメモリチェックを含む立ち上げ処理を行い、前記転送手段は、前記受信データを記憶するために予め設定された前記主記憶手段の記憶領域のメモリチェックが終了した時点で前記副記憶手段に記憶された受信データを前記主記憶手段へ転送する。
【００２６】
【発明の実施の形態】
［第１実施形態］
以下、図面を参照して本発明の第１実施形態について説明する。図１には、本発明を適用した印刷装置１０の概略ブロック図が示されている。
【００２７】
図１に示すように、印刷装置１０は、ＣＰＵ１２、ブリッジイメージ処理部１４、ＲＡＭ１６、ＲＯＭ１８、設定手段としての電源制御部２０、印刷手段としての印字部２２、各種の通信規格に対応した通信インターフェース（Ｉ／Ｆ）２４、バッファ２６Ａ、物理層Ｉ／Ｆ２６Ｃを備えている。
【００２８】
通信Ｉ／Ｆ２４は、例えば高速なパラレル転送を実現することができるＩＥＥＥ（米国電気電子技術者協会）１２８４規格での通信制御を行う１２８４インターフェース２８、高速なシリアル転送を実現することができるＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）での通信制御を行うＵＳＢインターフェース３０、ＬＡＮ（Ｌｏｃａｌ  Ｅｒｅａ  Ｎｅｔｗｏｒｋ）において高速伝送を実現することができるイーサネット（Ｅｔｈｅｒｎｅｔ）の規格である１００ＢＡＳＥ−Ｔでの通信制御を行う１００ＢＴインターフェース３２、及びＤＭＡ転送を行うためのＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）３４を備えている。
【００２９】
１２８４インターフェース２８は、バッファ２６Ａを介してホストコンピュータ群３６に接続されており、ＵＳＢインターフェース３０は直接ホストコンピュータ群３６に接続されており、１００ＢＴインターフェース３２は、物理層Ｉ／Ｆ２６Ｃを介してホストコンピュータ群３６に接続されている。各々のインターフェースは、ホストコンピュータ群３６と各々の通信規格に従った通信制御を行う。なお、ＣＰＵ１２では、例えば物理層Ｉ／Ｆ２６Ｃのステータスを１００ＢＴインターフェース３２、ＤＭＡＣ３４、ブリッジイメージ処理部１４を介してリードすることにより、イーサネットが接続されているか否かを知ることができる。
【００３０】
また、１２８４インターフェース２８、ＵＳＢインターフェース３０、及び１００ＢＴインターフェース３２は、ＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）３４と各々接続されている。ホストコンピュータ群３６から送信されたデータは、１２８４インターフェース２８、ＵＳＢインターフェース３０、及び１００ＢＴインターフェース３２を介してＤＭＡＣ３４へ出力され、該ＤＭＡＣ３４は、ＤＭＡ転送要求信号３８をブリッジイメージ処理部１４へ出力すると共に、入力されたデータをバス３９上に出力する。バス３９上に出力されたデータは、ブリッジイメージ処理部１４を介してメインメモリであるＲＡＭ１６へＤＭＡ転送される。
【００３１】
また、ＤＭＡＣ３４には、サブメモリ３５が接続されており、入力されたデータをメインメモリであるＲＡＭ１６へ転送するかサブメモリ３５へ転送するかを切り換えることができるようになっている。
【００３２】
ＲＡＭ１６へＤＭＡ転送されたデータは、ＣＰＵ１２によりイメージ処理が施され、ブリッジイメージ処理部１４を介して印字部２２へ出力される。印字部２２は、入力されたデータを記録媒体へ印字する。なお、ブリッジイメージ処理部１４に接続されたＲＯＭ１８には、ＣＰＵ１２で実行されるプログラム等が記憶される。
【００３３】
ところで、印刷装置１０は、ＣＰＵ１２、ブリッジイメージ処理部１４、ＲＡＭ１６、ＲＯＭ１８、印字部２２、及び通信Ｉ／Ｆ２４への電源及びクロックの供給を制御する電源制御部２０を備えている。
【００３４】
図１に示すように、電源制御部２０には、図示しない発振器からクロック４０Ａが供給され（ＣＬＫ  ＩＮ）、供給されたクロック４０ＡをＣＰＵ１２及びブリッジイメージ処理部１４へ供給する（ＣＬＫ  ＯＵＴ）。
【００３５】
また、電源制御部２０には、例えばＣＰＵ１２からはイーサネットが接続されていることを示す接続信号４２が入力され、ＤＭＡＣ３４からはＤＭＡ転送要求信号３８が入力され、１２８４インターフェース２８、ＵＳＢインターフェース３０、１００ＢＴインターフェース３２からは、ホストコンピュータ群３６からのデータを受信したことを示す受信割り込み信号４４Ａ、４４Ｂ、４４Ｃが各々入力される。
【００３６】
次に、第１実施形態の作用について、図２に示すフローチャートを参照して説明する。
【００３７】
印刷装置１０の通常モードにおいて、ＤＭＡＣ３４はホストコンピュータ群３６からデータを受信したか否かを判断し（ステップ１００）、データを受信した場合には、ＤＭＡ転送要求信号３８をブリッジイメージ処理部１４へ出力してメインメモリであるＲＡＭ１６に対してＤＭＡ転送を行う（ステップ１０２）。
【００３８】
一方、電源制御部２０では、ＤＭＡＣ３４からのＤＭＡ転送要求信号３８を監視し（ステップ１０４）、ＤＭＡＣ３４からＤＭＡ転送要求信号３８が所定時間以上出力されていない場合には、ＣＰＵ１２へＤＭＡ転送要求信号３８が所定時間以上出力されていない旨を通知する。これにより、ＣＰＵ１２は、所定の電源オフ処理を行う。その後、ＣＰＵブリッジイメージ処理部１４、ＲＡＭ１６、ＲＯＭ１８、印字部２２への電源供給を停止させ、スリープモードへ移行する。なお、通信Ｉ／Ｆ２４には通常の電源が供給される。また、このとき、ＤＭＡＣ３４は、データ転送先をＲＡＭ１６からサブメモリ３５へ切り換えておく（ステップ１０６）。
【００３９】
そして、スリープモードにおいて、電源制御部２０は、データを受信したか否かを判断する（ステップ１０８）。この判断は、１２８４インターフェース２８、ＵＳＢインターフェース３０、及び１００ＢＴインターフェース３２の何れかから受信割り込み信号が電源制御部２０に入力されたか否かにより判断する。受信されたデータは、ＤＭＡＣ３４によりサブメモリ３５に転送され保持される。
【００４０】
電源制御部２０は、受信割り込み信号を受信すると、ＣＰＵ１２などに通常電源の供給を開始する。これにより、ＣＰＵ１２は所定のブート（ＢＯＯＴ）処理を開始する。
【００４１】
この間にデータを受信した場合には、一旦サブメモリ３５へデータが転送される（ステップ１１０）。
【００４２】
そして、ＣＰＵ１２によるブート処理が終了すると（ステップ１１２）、ＣＰＵ１２はＤＭＡＣ３４にデータ転送を指示する。これにより、ＤＭＡＣ３４はサブメモリ３５内のデータをＲＡＭ１６へ転送する（ステップ１１４）。
【００４３】
この場合、サブメモリ３５からのＲＡＭ１６へのデータ転送と、１２８４インターフェース２８、ＵＳＢインターフェース３０、及び１００ＢＴインターフェース３２からサブメモリ３５へのデータ転送が同時に行われる。
【００４４】
このようにしてサブメモリ３５からＲＡＭ１６へのデータ転送が終了すると（ステップ１１６）、ＤＭＡＣ３４は、データ転送先をサブメモリ３５からメインメモリであるＲＡＭ１６へ切り換える。これにより、受信データは直接ＲＡＭ１６へ転送される。
【００４５】
このように、スリープモード時には通信Ｉ／Ｆ２４にのみ電源を供給し、通常モードへ移行するまでの間に受信したデータはサブメモリ３５へ格納されるため、省エネを図ることができると共に受信データを取りこぼすことがない。
【００４６】
次に、ＤＭＡ転送要求信号３８の監視をタイマで行う場合の形態について図３を参照して説明する。なお、図１における印刷装置１０と同一部分には同一符号を付し、詳細な説明は省略する。なお、図３における印刷装置１０２では、説明の簡単化のため、印字部２２、バッファ２６Ａ、物理層Ｉ／Ｆ２６Ｃ、１２８４インターフェース２８、１００ＢＴインターフェース３２については図示を省略している。
【００４７】
通常モードにおいては、ＣＰＵ１２はＤＭＡＣ３４に起動をかけ、１２８４受信部６８がデータを受信すると、ＦＩＦＯ制御部５６に受信データが格納される。
【００４８】
ＦＩＦＯ制御部５６では、データが格納されると、データ要求信号５４をＲＥＱ制御部５２へ出力する。ＲＥＱ制御部５２は、他のモジュールからの転送要求を調停し、バス要求信号をＣＰＵ１２へ出力してバス３９の獲得を要求する。そして、ＤＭＡＣ３４がバス３９を獲得すると、ＦＩＦＯ制御部５６へＡＣＫ信号６０を出力すると共にタイマ４６へＤＭＡ転送要求信号３８を出力する。これによりカウンタがリセットされる。ＦＩＦＯ制御部５６では、ＡＣＫ信号６０を受けて格納したデータ６１をＤＭＡＣ３４へ出力する。これにより、ＤＭＡＣ３４−ＲＡＭ１６間でＤＭＡ転送が行われる。
【００４９】
タイマ４６は、ＤＭＡ転送要求３８のネゲート期間、すなわちＤＭＡ転送要求信号３８が出力されていない期間をカウントし、このカウント値が予め定めた所定値に達したときにＣＰＵ１２へタイムアウト割り込み信号４８を出力する。
【００５０】
ＣＰＵ１２は、タイマ４６からのタイムアウト割り込み信号４８を受信すると、電源オフに先立って必要な処理を実行する。まず、ＲＥＱ制御部５２に対してデータ転送要求信号を受信した場合にバス要求信号を出力せず、代わりに割り込み要求信号４２Ａを出力するように設定する。次に、ＤＭＡＣ３４に対し、データ転送先をサブメモリ３５に設定する。そして、その他の電源オフ用の処理を行い、電源スイッチ６２に電源オフ通知信号６４をブリッジイメージ処理部１４を介して出力する。
【００５１】
電源スイッチ６２では、この電源オフ通知信号６４を受けて、主電源６６からＣＰＵ１２，ブリッジイメージ処理部１４、ＲＡＭ１６、ＲＯＭ１８などへの電源供給を停止させ、図４に示すように電源停止モードへ移行する。この時、通信Ｉ／Ｆ２４には通常通り電源が供給されている。
【００５２】
この電源停止モードの状態で１２８４受信部６８が外部装置からデータを受信すると、ＦＩＦＯ制御部５６へデータが書き込まれる。ＦＩＦＯ制御部５６では、予め定めた所定数のデータが格納されると、データ要求信号５４をＲＥＱ制御部５２へ出力する。
【００５３】
ＲＥＱ制御部５２では、データ要求信号５４を受けて割り込み要求信号４２Ａを電源スイッチ６２へ出力する。このとき、バス要求信号は出力しない。このとき、ＤＭＡＣ３４はデータ６１をサブメモリ３５へ転送する。
【００５４】
電源スイッチ６２は、ＣＰＵ１２，ブリッジイメージ処理部１４、ＲＡＭ１６、ＲＯＭ１８などへの電源供給を再開させる。そして、ＣＰＵ１２では、電源供給が再開されることによりＢＯＯＴ処理が実行され、図４に示すように通常動作モードへ戻り、復帰信号７０をＲＥＱ制御部２０へ出力する。
【００５５】
ＲＥＱ制御部５２では、この復帰信号７０を受けて、データ要求信号５４をＤＭＡＣ３４へ出力する。これにより、ＤＭＡＣ３４では、サブメモリ３５からＲＡＭ１５へデータ転送させる。そして、サブメモリ３５からＲＡＭ１５へのデータ転送が終了すると、データ転送先をＲＡＭ１６へ切り換え、通常状態へ戻る。
【００５６】
ところで、イーサネットからデータ受信を行うと、１００ＢａｓｅＴの場合には、最大で１００Ｍｂｐｓの速度でデータ転送される。これに対し、電源をオンしてから電源が安定的に供給されるようになり、ＣＰＵのブート処理が終了するまでには、早くて数百ｍｓｅｃ〜数ｓｅｃ程度かかる。このため、ＲＡＭ１６へのＤＭＡ転送ができるようになるまでに時間がかかるため、サブメモリ３５の容量を大きくする必要がある。
【００５７】
そこで、サブメモリ容量を削減するために、ＣＰＵ１２のブート処理を分割してＲＡＭ１６へのＤＭＡ転送を速やかに開始させる場合について説明する。
【００５８】
以下に、ＣＰＵ１２のアドレスマップの一例を示す。
【００５９】
【表１】
0003882452.tif 000002
【００６０】
各セグメントのキャッシュ可、キャッシュ不可領域に対し、システムのコンフィグレーションが設定されている。
【００６１】
通常、ブート時においては、これらの領域のチェック及びメモリテスト（例えば各アドレスごとにｂｉｔライト後ｂｉｔリードする）を実施する。
【００６２】
このアドレスマップにおいては、ＲＡＭ１６は、キャッシュ可能領域のセグメントｋｓｅｇ０に割り当てられており、さらに、ＳＤＲＡＭの実容量である３２Ｍバイトに合わせ、物理アドレスを０ｘ００００００００〜０ｘ０１ＦＦＦＦＦＦに割り振られている。
【００６３】
ブート時には、この全アドレスのライト・リードテストを行うが、本実施形態では、以下に示すように、ＲＡＭ１６の領域を受信データ格納領域と他の処理に使用するワーク領域とに仮想的に分割する。
【００６４】
【表２】
0003882452.tif 000003
【００６５】
ブート時においては、この受信データ格納領域のテストが完了した時点でＤＭＡＣ３４へデータ転送要求を出力する。
【００６６】
ブート時の処理について図５に示すフローチャートを参照して説明する。
【００６７】
図５に示すように、電源がオンし、電源が安定的に供給されると、ＣＰＵ１２は、受信データ格納領域、すなわちアドレス０ｘ００００００００〜０ｘ００３ＦＦＦＦＦまでの領域のメモリチェックを行う（ステップ２００）。
【００６８】
そして、メモリチェックが終了すると（ステップ２０２）、ＤＭＡＣ３４へデータ転送要求の指示を行う（ステップ２０４）。これにより、ＤＭＡＣ３４はサブメモリ３５からＲＡＭ１６の受信データ格納領域にＤＭＡ転送する（ステップ２０６）。また、これと同時にＣＰＵ１２は、その他の領域のメモリチェック、その他のブート処理を行う（ステップ２０８）。
【００６９】
これにより、省エネモードから通常状態のＤＭＡ転送開始までの時間を短縮することができ、サブメモリ容量を削減することができる。
【００７０】
なお、通信Ｉ／Ｆ２４内にデータ圧縮部を設け、受信データを圧縮してサブメモリ３５へ格納するようにしてもよい。
【００７１】
また、サブメモリ３５は、省エネモード時の受信データ格納用に用いるだけでなく、通常モード時にはワークエリアとして使用してもよく、印字部２２への速度調整用バッファとして使用するようにしてもよい。
【００７２】
また、上記では、電源供給を通信Ｉ／Ｆ２４、及びサブメモリ３５と、ＣＰＵ１２、ＲＡＭ１６、ＲＯＭ１８、及び印字部２２で分けた場合について説明したが、ＤＭＡＣ３４，１００ＢＴインターフェース３２、及びサブメモリ３５のみ通電し、１２８４インターフェース２８などの他のインターフェースの電源をオフするようにしてもよい。
【００７３】
また、通信インターフェースとしては、１００ＢＡＳＥ−Ｔ等のイーサネット、ＩＥＥＥ１２８４、ＵＳＢ等を例に説明したが、これに限らず、ＩＥＥＥ１３９４等の他の通信インターフェースを採用した場合においても本発明を適用可能である。
【００７４】
［第２実施形態］
次に、本発明の第２実施形態について説明する。
【００７５】
図６には、本実施形態に係る受信装置８０が示されている。受信装置８０は、ＣＰＵ８１，ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ：非同期送受信回路）８２Ａ、ＵＡＲＴ８２Ｂを備えている。
【００７６】
ＵＡＲＴ８２Ａは、コマンド制御部８３Ａ、データ制御部８４Ａ，制御部８５Ａ，及びバッファ８６Ａで構成されている。データ制御部８４Ａは、ＵＩ８７とシリアルバス８８Ａで接続されると共に、コマンド制御部８３Ａ，バッファ８６Ａと接続されている。バッファ８６Ａは、データ制御部８４Ａ、制御部８５Ａ、及びパラレルバス８９Ａと接続されている。制御部８５ＡはＣＰＵ８１と接続されている。
【００７７】
ＵＡＲＴ８２Ｂは、コマンド制御部８３Ｂ、データ制御部８４Ｂ，制御部８５Ｂ，及びバッファ８６Ｂで構成されている。データ制御部８４Ｂは、例えばＩＰＳ（画像処理システム）やＩＯＴ（印刷部）などの外部装置９０とシリアルバス８８Ｂで接続されると共に、コマンド制御部８３Ｂ，バッファ８６Ｂと接続されている。バッファ８６Ｂは、データ制御部８４Ｂ、制御部８５Ｂ、パラレルバス８９Ａ及びデータ制御部８４Ａと接続されている。制御部８５ＢはＣＰＵ８１と接続されている。また、データ制御部８４Ａとバッファ８６Ｂとは、パラレルバス８９Ｂにより接続されている。
【００７８】
次に、第２実施形態の作用について、図７、８に示すフローチャートを参照して説明する。
【００７９】
図７は、ＵＡＲＴ８２Ａにおいて実行される制御ルーチンのフローチャートが、図８には、ＵＡＲＴ８２Ｂにおいて実行される制御ルーチンのフローチャートがそれぞれ示されている。
【００８０】
スリープモード時には、ＵＩ８７，ＵＡＲＴ８２Ａ，８２Ｂにのみ電源が供給され、ＣＰＵ８１，外部装置９０には電源が供給されない。
【００８１】
この状態において、ＵＩ８７から電源オフ状態から通常状態へ復帰させるためのコマンド（以下、パワーオンコマンドという）がＵＡＲＴ８２Ａに送信されると、ＵＡＲＴ８２Ａでは、データ制御部８４ＡにおいてＵＩ８７から送信されたパワーオンコマンドを受信する（ステップ３００）。
【００８２】
このとき、ＵＩ８７，ＵＡＲＴ８２Ａ，８２Ｂ以外は電源オフの状態のため、パワーオンコマンドはコマンド制御部８３Ａへ転送されるように予め設定されている。
【００８３】
このため、コマンド制御部８３Ａにおいて、受信したパワーオンコマンドと予め設定されたパワーオンコマンドとを比較し（ステップ３０２）、一致した場合には、ＣＰＵ８１を起動させるための割り込み信号９１を制御部８５Ａに送信させる（ステップ３０４）。
【００８４】
また、これと同時に、外部装置９０とシリアルバス８８Ｂにより接続されたＵＡＲＴ８２Ｂに対して、パワーオンコマンドを受信したことを示すパワーオンコマンド受信信号９２を送信する（ステップ３０６）。
【００８５】
また、ＵＡＲＴ８２Ａが電源オフ状態から通常状態へ復帰し、今後受信するデータを格納することができるように、データ制御部８４Ａは、バッファ８６Ａへデータが格納されるように設定を切り換える。
【００８６】
一方、ＵＡＲＴ８２Ｂは、ＵＡＲＴ８２Ａから割り込みがあった場合、すなわちＵＡＲＴ８２Ａからパワーオンコマンド受信信号９２を受信した場合には（図８のステップ４００）、シリアルバス８８Ｂにより接続された外部装置９０の電源をオンするために、予めコマンド制御部８３Ｂ内に格納されているパワーオンコマンドをデータ制御部８４Ｂから外部装置９０へ送信する（ステップ４０２）。これにより、外部装置９０は電源オンし、通常動作状態へ戻るための復帰処理を開始する。
【００８７】
そして、外部装置９０は、復帰処理を終了するとパワーオンコマンドに対する返信コマンドであるＡＣＫ信号をＵＡＲＴ８２Ｂへ送信する。ＵＡＲＴ８２Ｂは、ＡＣＫ信号を受信することにより外部装置９０が正常に通常状態へ復帰したことを知ることができ、この後、シリアルバス８８Ｂを介してデータの送受信を行うことが可能となる。
【００８８】
ＣＰＵ８１は、割り込み信号９１を受信すると、ブート処理を実行し、ブート処理が完了すると（ステップ３１２、ステップ４１０）、通常動作に復帰する。そして、ＣＰＵ８１は、ＵＡＲＴ制御信号９３Ａ，９３ＢをＵＡＲＴ８２Ａ，８２Ｂに送信し、通常状態における送受信の設定を行う（ステップ３１４、ステップ４１２）。これにより、ＵＡＲＴ８２ＡはＵＩ８７と、ＵＡＲＴ８２Ｂは外部装置９０とデータの送受信が可能となり、その後はそれぞれにおいてデータ通信を行うこととなる（ステップ３１６、４１４）。
【００８９】
所定時間通信が実行されない場合には、電源オフモード、すなわちスリープモードへ移行する（ステップ３１８、ステップ４１６）。通常、ＣＰＵ８１は、電源オフ状態から復帰した後のＵＡＲＴ８２Ａ，８２Ｂの動作条件に対応する設定を行った後、電源オフ状態へ移行する。このとき、ＵＡＲＴ８２Ａによる受信に対して優先権が与えられている場合には、ＣＰＵ８１は、ＵＡＲＴ８２Ａのバッファ８６Ａにデータを全て格納しきれなくなった場合に、ＵＡＲＴ８２Ｂのバッファ８６Ｂへデータを格納することができるように所定の設定を行う（ステップ３２２、４２０）。
【００９０】
また、この時、外部装置９０から送信されるパワーオンコマンドに対するＡＣＫ信号を受信した場合にコマンドの正誤を判定することができるように、ＵＡＲＴ８２Ｂが受信するデータが、ＵＡＲＴ８２Ｂのデータ制御部８４Ｂからコマンド制御部８３Ｂへ転送されるように設定する。
【００９１】
次に、ＵＡＲＴ８２Ａの受信を優先した場合の電源オフ状態からの復帰後の動作について説明する。
【００９２】
ＵＩ８７からの受信データは、ＵＡＲＴ８２Ａのデータ制御部８４Ａからバッファ８６Ａへ格納される。受信データ量は、ＵＡＲＴ８２Ａの制御部８５Ａでカウントしており、バッファ８６Ａの容量が満たされた場合、ＵＡＲＴ８２Ｂのバッファ８６Ｂへ格納することとなる。このときは、データ制御部８４Ａからパラレルバス８９Ｂを介してバッファ８６Ｂへ格納される（ステップ３１０、ステップ４０６）。
【００９３】
ＵＡＲＴ８２Ｂは、外部装置９０から送信されるパワーオンコマンドに対するＡＣＫ信号を受信できる設定に変更されているため、コマンド制御部８４ＢにおいてＡＣＫ信号のコマンドに正誤を判定し、一致した場合には、制御部８５Ｂに対して外部装置９０が電源オフ状態から復帰した旨を通知しておく（ステップ４０８）。その後、外部装置９０からのデータは無視する。
【００９４】
そして、ＣＰＵ８１のブート処理終了後（ステップ３１２、４１０）、ＵＡＲＴ８２Ａのステータスを読み出すことにより受信データ量を把握することができ、ＣＰＵ８１は、バッファ８６Ａからデータを読み込み、次にバッファ８６Ｂからデータを読み出す。その後、ＵＡＲＴ８２Ａ、８２Ｂのステータスをそれぞれ読み出し、ＵＡＲＴ８２Ａ，８２Ｂがデータの送受信を行うことができるように通常状態の所定の設定を行う（ステップ３２２、４２０）。
【００９５】
このように、ＵＩ８７からパワーオンコマンドを受信した場合には、即座にＣＰＵを起動させると共に外部装置９０を起動させるため、電源オフ状態から速やかに通常状態へ復帰させることができる。また、ＣＰＵがブート終了するまでにバッファ８６Ａが一杯になった場合には、受信データはバッファ８６Ｂへ転送されるため、ＣＰＵがブート終了するまでに受信したデータを取りこぼすのを防ぐことができる。
【００９６】
【発明の効果】
以上説明したように、請求項１記載の発明によれば、省電力状態から通常状態へ復帰する際に、速やかに復帰することができると共に、省電力状態から通常状態へ復帰する際に、受信データの取りこぼしを防ぐことができる。
【図面の簡単な説明】
【図１】  第１実施形態に係る印刷装置の概略構成図である。
【図２】  第１実施形態に係る印刷装置において実行される制御ルーチンのフローチャートである。
【図３】  印刷装置の他の例を示す概略構成図である。
【図４】  電源停止モード及び通常動作モードの状態遷移図である。
【図５】  ＣＰＵにおいて実行される制御ルーチンのフローチャートである。
【図６】  第２実施形態に係る受信装置の概略構成図である。
【図７】  ＵＡＲＴ８２Ａで実行される制御ルーチンのフローチャートである。
【図８】  ＵＡＲＴ８２Ａで実行される制御ルーチンのフローチャートである。
【符号の説明】
１０    印刷装置
１２    ＣＰＵ
１４    ブリッジイメージ処理部
１６    ＲＡＭ
１８    ＲＯＭ
２０    電源制御部
２２    印字部
２４    通信Ｉ／Ｆ
２６Ａ    バッファ
２６Ｃ    物理層Ｉ／Ｆ
２８    １２８４インターフェース
３０    ＵＳＢインターフェース
３２    １００ＢＴインターフェース
３４    ＤＭＡＣ
３６    ホストコンピュータ群
３９    バス
８１    ＣＰＵ
８２Ａ，８２Ｂ    ＵＡＲＴ
８７    ＵＩ
９０    外部装置
【図１】
0003882452.tif 000004
【図２】
0003882452.tif 000005
【図３】
0003882452.tif 000006
【図４】
0003882452.tif 000007
【図５】
0003882452.tif 000008
【図６】
0003882452.tif 000009
【図７】
0003882452.tif 000010
【図８】
0003882452.tif 000011