(57)【要約】【課題】複数の制御部を備える情報処理装置であって、一部の制御部が休止状態（省電力状態）となる場合の調停処理を適切に実行し外部装置へのデータ送信を正しく行うことのできる情報処理装置等を提供する。【解決手段】情報処理装置が、第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、前記第１ＣＰＵが第１状態、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生した場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する。【選択図】  図１
2016012339.tif 000002
【特許請求の範囲】
【請求項１】
複数の動作モードを備える情報処理装置であって、
データ記憶部と、第１制御部と、第２制御部と、を有し、
前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、
前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する
ことを特徴とする情報処理装置。
【請求項２】
請求項１において、
第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、
前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、
前記第１ＣＰＵが第１状態、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生した場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する
ことを特徴とする情報処理装置。
【請求項３】
請求項２において、
前記第１ＣＰＵは、
前記発生したイベントが第一種イベントである場合、前記第１メモリから前記第２メモリへデータの送信を行い、
前記発生したイベントが第二種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶し、
前記発生したイベントが第三種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶させ、前記第２ＣＰＵを前記第１状態へ移行させる要求を行う、ことにより
前記調停処理を実行する
ことを特徴とする情報処理装置。
【請求項４】
請求項３において、
前記第１ＣＰＵは、前記発生したイベントが第二種イベントである場合の前記データの記憶を、既に記憶されているデータを更新して行う
ことを特徴とする情報処理装置。
【請求項５】
請求項２において、
前記第１ＣＰＵは、前記第２ＣＰＵと前記第２メモリが前記第１状態に移行中及び前記第２状態に移行中に前記調停処理を実行する
ことを特徴とする情報処理装置。
【請求項６】
請求項２乃至５のいずれか一項において、
前記第２メモリは、前記第１メモリよりも容量及び消費電力が大きい
ことを特徴とする情報処理装置。
【請求項７】
請求項２乃至６のいずれか一項において、
前記第１ＣＰＵは、前記第１メモリに展開された当該第１ＣＰＵ用のオペレーティングシステムとプログラムを実行し、
前記第２ＣＰＵは、前記第２メモリに展開された当該第２ＣＰＵ用のオペレーティングシステムとプログラムを実行する
ことを特徴とする情報処理装置。
【請求項８】
請求項１において、
データ受信回路を有し、
第２制御部は、データ転送回路を含み、
前記動作モードが第１動作モードの場合、前記データ受信回路が受信したデータを、前記第１制御部が前記データ記憶部に転送し、
前記動作モードが第２動作モードの場合、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する
ことを特徴とする情報処理装置。
【請求項９】
請求項８において、
前記データ転送回路は、前記第１制御部を介さずに前記転送を行う
ことを特徴とする情報処理装置。
【請求項１０】
請求項８あるいは９において、
前記第１制御部は、第１ＣＰＵを含み、
前記第１ＣＰＵの前記第２動作モードにおけるクロック周波数は、前記第１動作モードにおけるクロック周波数よりも低い
ことを特徴とする情報処理装置。
【請求項１１】
請求項８乃至１０のいずれか１項において、
前記データ受信回路は、ＦＩＦＯ方式のメモリを備える
ことを特徴とする情報処理装置。
【請求項１２】
請求項８乃至１１のいずれか１項において、
前記第１ＣＰＵの動作を停止する第３動作モードを備える
ことを特徴とする情報処理装置。
【請求項１３】
複数の動作モードを備える印刷装置であって、
印刷部と、データ記憶部と、第１制御部と、第２制御部と、を有し、
前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、
前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する
ことを特徴とする印刷装置。
【請求項１４】
請求項１３において、
第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、
前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、
前記第１ＣＰＵが第１状態、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生した場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する
ことを特徴とする印刷装置。
【請求項１５】
請求項１４において、
前記第１ＣＰＵは、
前記発生したイベントが、印刷処理に係わらない第一種イベントである場合、前記第１メモリから前記第２メモリへデータの送信を行い、
前記発生したイベントが、少なくとも通信に係る情報を送信する第二種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶し、
前記発生したイベントが印刷要求を受信する第三種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶させ、前記第２ＣＰＵを前記第１状態へ移行させる要求を行う、ことにより
前記調停処理を実行する
ことを特徴とする印刷装置。
【請求項１６】
請求項１３において、
データ受信回路を有し、
第２制御部は、データ転送回路を含み、
前記動作モードが第１動作モードで場合、前記データ受信回路が受信したデータを、前記第１制御部が前記データ記憶部に転送し、
前記動作モードが第２動作モードである場合、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する
ことを特徴とする印刷装置。
【請求項１７】
請求項１６において、
前記第１制御部は、第１ＣＰＵを含み、
前記第１ＣＰＵの前記第２動作モードにおけるクロック周波数は、前記第１動作モードにおけるクロック周波数よりも低い
ことを特徴とする印刷装置。
【請求項１８】
複数の動作モードを備える情報処理装置における制御方法であって、
前記情報処理装置は、データ記憶部と、第１制御部と、第２制御部と、が備え、
前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、
前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する
ことを特徴とする制御方法。
【請求項１９】
請求項１８において、
前記情報処理装置は、第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、
前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、
前記第１ＣＰＵが第１状態で、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２動作状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生し場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する
ことを特徴とする制御方法。
【請求項２０】
請求項１８において、
前記情報処理装置は、データ受信回路と、データ記憶部と、データ転送回路と、を備え、
前記動作モードが第１動作モードである場合には、前記データ受信回路が受信したデータを、前記制御部が前記データ記憶部に転送し、
前記動作モードが前記第１動作モードとは異なる第２動作モードである場合には、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の動作モードを備える情報処理装置等に関し、外部装置との通信を適切に行うことのできる情報処理装置等に関する。
【背景技術】
【０００２】
近年、プリンター等の電子機器は、無駄な電力消費を抑えるために省電力モードが備えられる。例えば、プリンターでは、印刷を要求するデータを所定時間、受信しない場合には、動作モードが省エネモードに切り替わるように設計される。省電力モードに入ったプリンターでは、例えば、印刷機構部、制御部の各部位について、適宜、電力供給が停止される。
【０００３】
また、プリンター等の電子機器におけるコントローラーには、通常、１つのＣＰＵが設けられ、そのＣＰＵによって印刷処理、通信処理などの制御が行われていたが、処理の高速化や省電力の目的で２つのＣＰＵを設けることが提案されている。
【０００４】
しかしながら、２つのＣＰＵを設ける構成では、回路が複雑になり、また、上述した各動作モードにおいて２つのＣＰＵによる処理の調整を行う必要があるなどの課題がある。
【０００５】
下記特許文献１には、２つのＣＰＵからのメモリアクセスを調整する技術について提案がなされている。
【０００６】
また、省電力モード中に動作要求を受信した場合には、通常、電子機器は通常の動作モードに復帰する動作を行う。プリンターの場合には、例えば、印刷を要求するデータを受信した際に通常モードに復帰するように設計されているが、復帰するのに時間がかかるなど、省電力モード中におけるデータ受信処理にもいくつかの課題がある。
【０００７】
かかる課題に対して、従来、下記特許文献に記載される提案がなされている。
【０００８】
下記特許文献２には、ホストコンピューターからデータを受信するとメモリの節電状態を解除して受信したデータをＤＭＡ転送でメモリに格納し、その後、ＣＰＵの節電状態を解除すること、などが記載されている。
【０００９】
下記特許文献３には、ＣＰＵが省電力モードに移行する前に、省電力モードから通常転送モードへの移行時における通信制御情報を応答制御部にあらかじめ設定しておき、省電力モードの解除時にＣＰＵの介在無しに、応答制御部がその設定された通信制御情報に基づいてデータ受信を行うようにする、ことなどが記載されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１１−３９７１５号公報
【特許文献２】特開２００３−１２２５３６号公報
【特許文献３】特開２００２−２４４８３４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、２つのＣＰＵを設けた構成において、省電力モード時にその一方が休止状態になった際に、当該ＣＰＵに関わる処理が発生した場合の、他方のＣＰＵによる適切な対応が必要であり、上記特許文献１にはその点について示されていない。特に、省電力モードになったとしても外部装置に対するデータ送信処理を正しく行えることが望まれる。
【００１２】
また、省電力への対応として、プリンター等のコントローラー（情報処理装置）におけるＣＰＵの動作速度（クロック周波数）を複数レベルに変化させる動作モードを採用する機器において、それぞれの動作モードの場合に、データ受信処理をどのように行うかについては、上記特許文献２、３には開示されていない。
【００１３】
省電力モードで、ＣＰＵが低速で動作している場合に、受信したデータをＣＰＵによって転送する処理では、転送が受信に間に合わず、受信回路に設けられたメモリがフル（満杯）となって、送信されたデータを受信できなくなる虞がある。したがって、プリンター等のコントローラー（情報処理装置）においては、上述したＣＰＵの各動作モードで適切な対応が望まれる。
【００１４】
そこで、本発明の目的は、複数の動作モードを備える情報処理装置であって、どの動作モードにおいても外部装置との通信を適切に行うことのできる情報処理装置、等を提供することである。また、複数の制御部を備える場合に、一部の制御部が休止状態（省電力状態）となる場合の調停処理を適切に実行し外部装置へのデータ送信を正しく行うことのできる情報処理装置等を提供することである。更に、制御部が低速モードで動作中に送信されたデータを、確実に受信することのできる情報処理装置等を提供することである。
【課題を解決するための手段】
【００１５】
上記の目的を達成するために、本発明の一つの側面は、複数の動作モードを備える情報処理装置が、データ記憶部と、第１制御部と、第２制御部と、を有し、前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する、ことである。
【００１６】
更に、上記発明において、一つの態様は、第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、前記第１ＣＰＵが第１状態、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生した場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する、ことを特徴とする。
【００１７】
更に、上記発明において、その好ましい態様は、前記第１ＣＰＵは、前記発生したイベントが第一種イベントである場合、前記第１メモリから前記第２メモリへデータの送信を行い、前記発生したイベントが第二種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶し、前記発生したイベントが第三種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶させ、前記第２ＣＰＵを前記第１状態へ移行させる要求を行う、ことにより、前記調停処理を実行する、ことを特徴とする。
【００１８】
更に、上記発明において、その好ましい態様は、前記第１ＣＰＵは、前記発生したイベントが第二種イベントである場合の前記データの記憶を、既に記憶されているデータを更新して行う、ことを特徴とする。
【００１９】
更にまた、上記発明において、その好ましい態様は、前記第１ＣＰＵは、前記第２ＣＰＵと前記第２メモリが前記第１状態に移行中及び前記第２状態に移行中に前記調停処理を実行する、ことを特徴とする。
【００２０】
更に、上記発明において、その好ましい態様は、前記第２メモリは、前記第１メモリよりも容量及び消費電力が大きい、ことを特徴とする。
【００２１】
更に、上記発明において、その好ましい態様は、前記第１ＣＰＵは、前記第１メモリに展開された当該第１ＣＰＵ用のオペレーティングシステムとプログラムを実行し、前記第２ＣＰＵは、前記第２メモリに展開された当該第２ＣＰＵ用のオペレーティングシステムとプログラムを実行する、ことを特徴とする。
【００２２】
更に、上記発明において、別の態様は、データ受信回路を有し、第２制御部は、データ転送回路を含み、前記動作モードが第１動作モードの場合、前記データ受信回路が受信したデータを、前記第１制御部が前記データ記憶部に転送し、前記動作モードが第２動作モードの場合、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する、ことを特徴とする。
【００２３】
更に、上記発明において、その好ましい態様は、前記データ転送回路は、前記第１制御部を介さずに前記転送を行う、ことを特徴とする。
【００２４】
更に、上記発明において、その好ましい態様は、前記第１制御部は、第１ＣＰＵを含み、
前記第１ＣＰＵの前記第２動作モードにおけるクロック周波数は、前記第１動作モードにおけるクロック周波数よりも低い、ことを特徴とする。
【００２５】
更にまた、上記発明において、その好ましい態様は、前記データ受信回路は、ＦＩＦＯ方式のメモリを備える、ことを特徴とする。
【００２６】
更に、上記発明において、その好ましい態様は、前記第１ＣＰＵの動作を停止する第３動作モードを備える、ことを特徴とする。
【００２７】
上記の目的を達成するために、本発明の別の側面は、複数の動作モードを備える印刷装置が、印刷部と、データ記憶部と、第１制御部と、第２制御部と、を有し、前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する、ことである。
【００２８】
更に、上記発明において、その好ましい態様は、第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、前記第１ＣＰＵが第１状態、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生した場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する、ことを特徴とする。
【００２９】
更に、上記発明において、その好ましい態様は、前記第１ＣＰＵは、前記発生したイベントが、印刷処理に係わらない第一種イベントである場合、前記第１メモリから前記第２メモリへデータの送信を行い、前記発生したイベントが、少なくとも通信に係る情報を送信する第二種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶し、前記発生したイベントが印刷要求を受信する第三種イベントである場合、前記第１メモリから前記第２メモリへ送信を行うべきデータを前記第１メモリに記憶させ、前記第２ＣＰＵを前記第１状態へ移行させる要求を行う、ことにより前記調停処理を実行する、ことを特徴とする。
【００３０】
また、上記発明において、別の態様は、データ受信回路を有し、第２制御部は、データ転送回路を含み、前記動作モードが第１動作モードで場合、前記データ受信回路が受信したデータを、前記第１制御部が前記データ記憶部に転送し、前記動作モードが第２動作モードである場合、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する、ことを特徴とする。
【００３１】
更に、上記発明において、その好ましい態様は、前記第１制御部は、第１ＣＰＵを含み、前記第１ＣＰＵの前記第２動作モードにおけるクロック周波数は、前記第１動作モードにおけるクロック周波数よりも低い、ことを特徴とする。
【００３２】
上記の目的を達成するために、本発明の更に別の側面は、複数の動作モードを備える情報処理装置における制御方法において、前記情報処理装置は、データ記憶部と、第１制御部と、第２制御部と、が備え、前記動作モードが第１動作モードの場合、前記第１制御部が前記データ記憶部のデータを処理し、前記動作モードが前記第１動作モードとは異なる第２動作モードの場合、前記第２制御部が前記データ記憶部のデータを処理する、ことを特徴とする。
【００３３】
更に、上記発明において、一つの態様は、前記情報処理装置は、第１ＣＰＵ及び第２ＣＰＵと、前記第１ＣＰＵ及び第２ＣＰＵが搭載される半導体チップの内部に設けられる第１メモリと、前記半導体チップの外部に設けられる第２メモリと、を有し、前記第１制御部は第１ＣＰＵを含み、前記第２制御部は第２ＣＰＵを含み、前記データ記憶部は第１メモリを含み、前記第１ＣＰＵが第１状態で、前記第２ＣＰＵと前記第２メモリが前記第１状態と異なる第２動作状態であるときに、前記第１メモリから前記第２メモリへデータの送信を行うべきイベントが発生し場合、前記第１ＣＰＵが当該発生したイベントの種別に応じた調停処理を実行する、ことを特徴とする。
【００３４】
また、上記発明において、別の態様は、前記情報処理装置は、データ受信回路と、データ記憶部と、データ転送回路と、を備え、前記動作モードが第１動作モードである場合には、前記データ受信回路が受信したデータを、前記制御部が前記データ記憶部に転送し、前記動作モードが前記第１動作モードとは異なる第２動作モードである場合には、前記データ受信回路が受信したデータを、前記データ転送回路が前記データ記憶部に転送する、ことを特徴とする。
【００３５】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【図面の簡単な説明】
【００３６】
【図１】本発明を適用した情報処理装置を備える印刷装置の第１の実施形態例に係る構成図である。
【図２】プリンター１の動作モードを示す図である。
【図３】プリンター１の動作モード切り替え時の処理手順を例示したタイムチャートである。
【図４】プリンター１の調停処理の手順を例示したフローチャートである。
【図５】本発明を適用した印刷装置の第２の実施形態例に係る構成図である。
【図６】プリンター１Ａにおけるデータ転送処理の手順を例示したフローチャートである。
【発明を実施するための形態】
【００３７】
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
【００３８】
［第１の実施形態例］
図１は、本発明を適用した情報処理装置を備える印刷装置の第１の実施形態例に係る構成図である。図１に示すプリンター１及びコントローラー１０が、それぞれ、本実施形態例に係る印刷装置及び情報処理装置である。コントローラー１０は、複数の制御部として第１ＣＰＵ（第１制御部）１０１及び第２ＣＰＵ（第２制御部）１０２と、第１ＣＰＵ及び第２ＣＰＵが搭載されるＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−Ｃｈｉｐ、半導体チップ）１００の内部に設けられるメモリである第１ＲＡＭ（データ記憶部）１０４と、ＳｏＣ１００の外部に設けられるメモリである第２ＲＡＭ１１０とを備える。第２ＣＰＵ１０２と第２ＲＡＭ１１０が省電力状態である際に、第２ＲＡＭ１１０へデータ送信を行うイベントが発生した場合には、第１ＣＰＵ１０１がそのイベントの種別に応じた調停処理を行う。これにより、コントローラー１０の一部の処理系が休止状態であっても、適切な対応を行うことができ、外部装置に対しても正しいデータ送信を行えるようになる。
【００３９】
図１に示す本実施形態例に係るプリンター１は、本発明を適用した情報処理装置の一例であり、外部装置であるホスト装置からネットワークを介して有線または無線で送信される印刷データを受信して印刷を実行する印刷装置である。
【００４０】
ホスト装置は、パーソナルコンピューター等で構成され、図示していないが、プリンター１用のドライバー、ステータスモニター、及び設定ユーティリティーなどを備える。ドライバーは、プリンター１用の印刷データを生成してプリンター１に対して印刷要求を行う機能を有し、ステータスモニターはプリンター１のステータス情報を取得してユーザーに表示する機能を有し、設定ユーティリティーはユーザー操作に基づいて印刷条件等をプリンター１に設定する機能を有する。
【００４１】
プリンター１は、図１に示すように、コントローラー１０、操作パネル２０、及び印刷機構部(印刷部)３０を備える。操作パネル２０は、プリンター１のユーザーインターフェースを構成する部分であり、ディスプレイ等の表示装置及び操作ボタン等の操作装置を備える。また、印刷機構部３０は、コントローラー１０の指示に従って用紙などの印刷媒体に印刷処理を実行する部分である。プリンター１は、複数の動作モードを備えるが、その詳細については後述する。
【００４２】
コントローラー１０は、図１に示すように、ＳｏＣ１００、第２ＲＡＭ１１０、及びＲＯＭ１２０等を備える。
【００４３】
ＳｏＣ１００には、機能ブロック（ＩＰ）として、第１ＣＰＵ１０１、第２ＣＰＵ１０２、割り込みコントローラー１０３ａ、１０３ｂ、第１ＲＡＭ１０４、及びメモリコントローラー１０５等が搭載される。
【００４４】
第１ＣＰＵ１０１は、プリンターコアと呼ばれ、主に印刷処理を制御する。第１ＣＰＵ１０１は、第２ＣＰＵ１０２が省電力状態である際に、第２ＣＰＵ１０２に関わるイベントが発生した時に、適切な調停処理を実行する。なお、本プリンター１では、当該調停処理に特徴があり、その具体的な内容については後述する。
【００４５】
また、第１ＣＰＵ１０１は、ＲＯＭ１２０に格納されており、起動時に第１ＲＡＭ１０４にロードされる第１ＯＳ（オペレーティングシステム）、例えば、ＲＴＯＳ（Ｒｅａｌ−ｔｉｍｅ  ｏｐｅｒａｔｉｎｇ  ｓｙｓｔｅｍ）と、印刷用プログラム、調停用プログラム等に従って動作する。
【００４６】
第２ＣＰＵ１０２は、アプリケーションコアと呼ばれ、主にネットワークの通信処理を制御する。例えば、上述したホスト装置へのステータス情報の送信や、ホスト装置との間の通信状態が確立していることの確認処理等を行う。
【００４７】
また、第２ＣＰＵ１０２は、ＲＯＭ１２０に格納されており、起動時に第２ＲＡＭ１１０にロードされる第２ＯＳ（オペレーティングシステム）、例えば、Ｌｉｎｕｘ（登録商標）と、通信用プログラム等に従って動作する。
【００４８】
割り込みコントローラー１０３ａ、１０３ｂは、それぞれ、動作モードの切り替え時に、第１ＣＰＵ１０１及び第２ＣＰＵ１０２に対して割り込み処理を実行する部分である。
【００４９】
第１ＲＡＭ１０４は、第１ＣＰＵ１０１が使用する、ＳｏＣ１００内部に設けられた内部メモリ（第１メモリ）である。第１ＲＡＭ１０４は、第２ＲＡＭ１１０と比べ、消費電力が小さく、小容量のメモリである。
【００５０】
メモリコントローラー１０５は、第２ＲＡＭ１１０を制御する部分である。
【００５１】
第２ＲＡＭ１１０は、第２ＣＰＵ１０２が使用する、ＳｏＣ１００外部に設けられた外部メモリ（第２メモリ）である。第２ＲＡＭ１１０は、第１ＲＡＭ１０４と比べ、消費電力が大きく、大容量のメモリである。従って、省電力モードでは、第２ＣＰＵ１０２と共に、休止状態又は消費電力を抑えた状態となる。
【００５２】
ＲＯＭ１２０は、上述の通り、第１ＯＳ、第２ＯＳ、その他各プログラムを記憶する不揮発性のメモリである。これらのプログラムは、プリンター１の電源が投入（ＯＮ）された際にＲＯＭ１２０から各ＲＡＭに展開（ロード）される。
【００５３】
次に、プリンター１の動作モードについて説明する。図２は、プリンター１の動作モードについて例示した図である。図２において、「○」は第１状態（稼働状態）を表し、「×」は第２状態（省電力状態）を表す。また、「△」は第３状態（低速稼働状態）を示す。第１状態は、そのＣＰＵが最大の能力で可動できる状態であり、高速稼働の状態である。第２状態は、そのＣＰＵの能力を抑制して稼働する状態であり、非常に低速稼働の状態、または、稼働停止状態である。第３状態は、そのＣＰＵの動作速度が第１状態よりも低く、第２状態よりも動作速度が高い低速稼働状態である。第１状態（稼働状態）、第３状態（低速稼働状態）、第２状態（省電力状態）の順で、ＣＰＵの消費電力は低くなり、省電力効果が高い。
【００５４】
図２に示すように、プリンター１は、通常モード（第１動作モード）、省電力モード（第２動作モード）ネットワークスタンバイモードモード（第３動作モード）、ＷＦＩモード（第４動作モード）の４つの動作モードを備える。通常モードは、第１ＣＰＵ１０１と第２ＣＰＵ１０２の両方が第１状態の動作モードであり、当該動作モードでは、いわゆる印刷装置として通常時の処理（印刷処理、印刷処理に係る通信処理等）を実行する。
【００５５】
ネットワークスタンバイモードは、第１ＣＰＵ１０１が第１状態であり、第２ＣＰＵ１０２が第２状態である動作モードである。第２ＣＰＵ１０２によるネットワークの通信処理は停止し、この通信処理の一部を第１ＣＰＵが行う。ネットワークスタンバイモードでは、所定の限られた処理を実行し、通常モードよりも消費電力が抑えられる。所定の限られた処理は、例えば、印刷処理に係わらない通信処理の一部であり、例えば、ネットワークの通信状態が確立していることの確認処理等である。
【００５６】
省電力モードは、第１ＣＰＵ１０１が第３状態であり、第２ＣＰＵ１０２のが第２状態である動作モードである。省電力モードでは、ネットワークスタンバイモードよりも更に限られた所定の処理、例えば、センサーによる監視処理などを実行する。省電力モードでは、第１ＣＰＵ１０１のクロック周波数は、通常モード及びネットワークスタンバイモードの場合よりも低く設定される。すなわち、第１ＣＰＵ１０１は、通常モード及びネットワークスタンバイモードの場合よりも低速で処理を実行する。
【００５７】
ＷＦＩ（Wait For Interrupt）モードは、第１ＣＰＵ１０１と第２ＣＰＵ１０２の両方が第２状態の動作モードである。ＷＦＩモードは、いわゆるスリープ状態のモードであり、当該動作モードでは基本的に処理は実行せず、第１ＣＰＵ１０１と第２ＣＰＵ１０２は停止する、又は、非常に低速で動作する。
【００５８】
なお、第２ＣＰＵ１０２が第２状態である時には、その処理対象の第２ＲＡＭ１１０も省電力状態となる。
【００５９】
また、これら４つの動作モードの切り替え判断は、予め定められた所定の条件に従って、第１ＣＰＵ１０１によってなされ、切り替えタイミングと判断された際に、第１ＣＰＵ１０１によって動作モードが切り替えられる。動作モードの切り替えの際には、図示していない電源供給系統の各部が制御される。上述した切り替え判断の条件（切り替えのトリガー）は、データ受信、受信したデータの種類、動作要求がなされない経過時間などによって定められる。また、本プリンター１では、通常モード、ネットワークスタンバイモードモード、省電力モード、ＷＦＩモードの順番、又は、その反対の順番で、１段階ずつ切り替えが行われる。例えば、通常モードにおいて、一定時間、ネットワークを介して印刷データを受信しないと、ネットワークスタンバイモードに切り替えられ、更に、一定時間、何の動作要求もなければ、省電力モードに切り替えられ、更に、一定時間、何の動作要求もなければ、ＷＦＩモードに切り替えられる。
【００６０】
以上説明したような構成を備える本プリンター１では、上述の通り、第２ＣＰＵ１０２が第２状態である時及び状態の移行時の調停処理に特徴があり、以下、具体的な処理内容について説明する。かかる第１ＣＰＵ１０１による調停処理は、ネットワークスタンバイモード時及び通常モードとネットワークスタンバイモードの移行時に実行される。まず、第１ＣＰＵ１０１による調停処理が実行される期間について説明する。図３は、動作モード切り替え時の処理手順を例示したタイムチャートである。
【００６１】
プリンター１が通常モードにおいて、通常モードからネットワークスタンバイモードへ移行する条件が成立した場合、第２ＣＰＵ１０２は、第１ＣＰＵ１０１へ待機応答の開始要求を出す（ｔ１）。この移行条件が成立する場合は、例えば、ユーザーのネットワークスタンバイモードへの移行指示を受信した場合や、一定時間処理を実行すべき指示をネットワークを介して受信していない場合などである。当該要求を受けて、第１ＣＰＵ１０１は、待機応答を開始し、第２ＣＰＵ１０２に待機応答を開始する旨（ＯＫ）の返答をする（ｔ２）。この返答を受け、第２ＣＰＵ１０２は、待機応答情報の設定を第１ＣＰＵ１０１に通知する（ｔ３）。当該通知に従って、第１ＣＰＵ１０１は、待機応答情報の設定を行い、設定完了の返答（リプライ）を行う（ｔ４）。この返答を受け、第２ＣＰＵ１０２は、第１ＣＰＵ１０１に対して省電力状態（停止状態又は消費電力を抑えた状態）への移行可否を確認する要求を出す（ｔ５）。当該要求に対して、第１ＣＰＵ１０１から可（ＯＫ）である旨の返答があると（ｔ６）、第２ＣＰＵ１０２は、省電力状態への移行の開始を通知する（ｔ７）。当該通知に対して第１ＣＰＵ１０１から了解の返答を受け（ｔ８）、第２ＣＰＵ１０２は、省電力状態に入る（第２状態に移行する）。
【００６２】
その後、プリンター１は、ネットワークスタンバイモードでの動作が実行され、ネットワークスタンバイモードから通常モードへ復帰する条件が成立した場合、第１ＣＰＵ１０１が、第２ＣＰＵ１０２に対して、省電力状態からの移行（復帰）を要求する。この条件が成立する場合は、例えば、ホスト装置から印刷データを受信した場合などがある。第２ＣＰＵ１０２は、当該要求を受け（t９）、省電力状態から復帰を開始し、第１ＣＰＵ１０１にその旨を返答する（ｔ１０）。そして、第２ＣＰＵ１０２は、第１ＣＰＵ１０１に対して、待機応答を終了する旨の通知を行う（ｔ１１）。当該通知に対して、第１ＣＰＵ１０１は、待機応答を終了させ、その旨の返答をする（ｔ１２）。この返答を受け、第２ＣＰＵ１０２は、第１ＣＰＵ１０１に復帰情報（通常モードに復帰する際に必要な情報）の要求を行う（ｔ１３）。当該要求に対して第１ＣＰＵ１０１は、第２ＣＰＵ１０２に復帰情報を返答し（ｔ１４）、第２ＣＰＵ１０２は復帰情報を取得する。次に、第２ＣＰＵ１０２は、第１ＣＰＵ１０１に未処理パケット（通常モードで処理されるべきデータ）の要求を行う（ｔ１５）。当該要求に対して、第１ＣＰＵ１０１は未処理パケットを返答し（ｔ１６）、第２ＣＰＵ１０２は未処理パケットを取得する。その後、第２ＣＰＵ１０２は、省電力状態からの復帰を完了した旨を通知し（ｔ１７）、当該通知に対して第１ＣＰＵ１０１が了解の返答をする（ｔ１８）。
【００６３】
以上のようにして、プリンター１において、通常モードとネットワークスタンバイモード間の移行がなされるが、図３のＴで示す期間に第１ＣＰＵ１０１が調停処理を実行する。すなわち、通常モードからネットワークスタンバイモードへの移行期間（図３のｔ５−ｔ８）、ネットワークスタンバイモードの期間（図３のｔ８−ｔ９）、及びネットワークスタンバイモードから通常モードへの移行期間（図３のｔ９−ｔ１０）において、第１ＣＰＵ１０１は、第２ＣＰＵ１０２に関わる処理、すなわち、通常モードでは第２ＲＡＭ１１０へデータを送信すべき処理について、適宜、調停処理を実行する。
【００６４】
次に、当該第１ＣＰＵ１０１による調停処理の内容について説明する。図４は、調停処理の手順を例示したフローチャートである。なお、当該処理は上述した調停用プログラムに従って実行される。
【００６５】
まず、第１ＣＰＵ１０１は、プリンター１が通常モードからネットワークスタンバイモードへの移行が開始されるのを待つ。すなわち、第１ＣＰＵ１０１は、図３の省電力移行可否確認（ｔ５）を第２ＣＰＵ１０２から受信するのを待つ（図４のステップＳ１）。第１ＣＰＵ１０１は、当該省電力移行可否確認を受信すると、可である旨の返答（ＯＫ）をし（図４のステップＳ１のＹｅｓ）、調停処理を開始する。
【００６６】
その後、第１ＣＰＵ１０１は、第２ＣＰＵ１０２から省電力状態からの復帰要求に対する応答（図３のｔ１０）を受信するまで、すなわち、調停処理を実行する期間が終了するまで、調停処理が必要なイベントが発生するのを待つ（図４のステップＳ２のＮｏ−ステップＳ１１のＮｏ）。調停処理が必要なイベントとは、第２ＣＰＵ１０２に知らせるべき情報があるイベント、具体的には、第２ＲＡＭ１１０へデータを送信するイベントである。
【００６７】
調停処理が必要なイベントが発生すると、第１ＣＰＵ１０１は、発生したイベントの種別（種類）によって対応の仕方を変える。すなわち、第１ＣＰＵ１０１は、イベント種別に応じた調停処理を実行する。
【００６８】
まず、発生したイベントがＡ種イベント（第一種イベント）であった場合には（図４のステップＳ３の「Ａ種イベント」）、基本的には、第１ＣＰＵ１０１は、第２ＣＰＵ１０２の肩代わりをして自ら処理を実行する。
【００６９】
Ａ種イベントとは、プリンター１の通信状態が確立していることをホスト装置などの外部装置から確認するために応答を要求されるイベント、ホスト装置からのステータス要求に対してステータス情報を応答するイベントなど、印刷処理に係わらない通信処理等のイベントである。
【００７０】
Ａ種イベントが発生した場合、第１ＣＰＵ１０１は、その時点の状態がネットワークスタンバイモードから通常モードへの復帰過程（図３のｔ９−ｔ１０）でなければ（図４のステップＳ４のＮｏ）、上述の通り、自ら処理を実行する。具体的には、要求された情報の送信処理（通信処理）を実行する（図４のステップＳ５）。例えば、ホスト装置に対して要求された情報を送信する。
【００７１】
一方、通常モードへの復帰過程であれば（図４のステップＳ４のＹｅｓ）、通常モードへの復帰後、第２ＣＰＵ１０２が処理できるように、処理（送信）すべきデータを第１ＲＡＭ１０４に保持（記憶）する（図４のステップＳ６）。当該データは、調停処理の期間終了後、第１ＣＰＵ１０１によって第１ＲＡＭ１０４から第２ＲＡＭ１１０へ送信される。
【００７２】
ステップＳ３で、発生したイベントがＢ種イベント（第二種イベント）であった場合には（図４のステップＳ３の「Ｂ種イベント」）、第１ＣＰＵ１０１は、第２ＲＡＭ１１０へ送信すべきデータを第１ＲＡＭ１０４に保持（記憶）する（図４のステップＳ７）。なお、すでに記憶された同項目のデータがある場合には、そのデータを今回発生したデータで更新する。
【００７３】
Ｂ種イベントとは、通信に係るステータス情報など第２ＲＡＭ１１０に記憶される情報をホスト装置に送信するイベント等であり、通常モードへの復帰後に第２ＣＰＵ１０２が処理すればよいイベントである。そして、そのイベントで送信される情報は最新のものだけで良いイベントである。
【００７４】
保持されたデータは、調停処理の期間終了後、第１ＣＰＵ１０１によって第１ＲＡＭ１０４から第２ＲＡＭ１１０へ送信される。
【００７５】
ステップＳ３で、発生したイベントがＣ種イベント（第三種イベント）であった場合には（図４のステップＳ３の「Ｃ種イベント」）、第１ＣＰＵ１０１は、基本的には、処理に必要なデータを保持すると共に、第２ＣＰＵ１０２に処理を実行させるべく通常モードへ復帰させる処理を行う。
【００７６】
Ｃ種イベントとは、ホスト装置から印刷要求を受信した時、プリンター１の操作パネル２０にあるリセットボタンの操作がなされた時、プリンター１の電源を切断する（オフにする）操作がなされた時などのイベントであり、第２ＣＰＵ１０２を通常状態に戻して処理すべきイベントである。
【００７７】
Ｃ種イベントが発生した場合、第１ＣＰＵ１０１は、その時点の状態が省電力モードから通常モードへの復帰過程（図３のｔ９−ｔ１０）でなければ（図４のステップ８のＮｏ）、上述の通り、第２ＣＰＵ１０２に渡すべき（第２ＲＡＭ１１０に送信すべき）データを第１ＲＡＭ１０４に保持（記憶）し、第２ＣＰＵ１０２に対して省電力状態からの復帰を要求する（図４のステップＳ９）。すなわち、第１ＣＰＵ１０１は、図３のｔ９における要求を行う。
【００７８】
一方、その時点の状態がネットワークスタンバイモードから通常モードへの復帰過程であれば（図４のステップ８のＹｅｓ）、第１ＣＰＵ１０１は、第２ＣＰＵ１０２に渡すべき（第２ＲＡＭ１１０に送信すべき）データを第１ＲＡＭ１０４に保持（記憶）する（図４のステップＳ１０）。この場合、第２ＣＰＵ１０２は通常モードへの復帰中であり、上記復帰の要求をする必要がない。
【００７９】
上記保持されたデータ（ステップＳ９、Ｓ１０）は、調停処理の期間終了後、第１ＣＰＵ１０１によって第１ＲＡＭ１０４から第２ＲＡＭ１１０へ送信される。
【００８０】
このようにして、発生したイベントに対する処理が終了すると、第１ＣＰＵ１０１は、第２ＣＰＵの省電力状態からの復帰要求に対する応答（図３のｔ１０）を受信するまで（図４のステップＳ１１のＮｏ）、すなわち、調停処理を実行する期間が終了するまで、ステップＳ２からの処理を繰り返し実行する。
【００８１】
そして、第１ＣＰＵ１０１は、第２ＣＰＵの省電力状態からの復帰要求に対する応答（図３のｔ１０）を受信すると（図４のステップＳ１１のＹｅｓ）、調停処理を終了する。
【００８２】
調停処理の終了後、調停処理中に受信したデータがホスト装置からの印刷要求に係るものである場合には、プリンター１は、通常モードにおいて、受信したデータを処理し、印刷機構部３０による印刷処理を実行する。
【００８３】
以上説明したように、第１の実施形態例に係るプリンター１では、第２ＣＰＵ１０２が省電力状態に移行する期間、省電力状態である期間、及び省電力状態から復帰する期間において、第２ＣＰＵ１０２に係るイベントが発生した際に、第１ＣＰＵ１０１が、発生したイベントの種別に応じた調停処理を行う。従って、第２ＣＰＵ１０２が省電力状態であって第１ＣＰＵ１０１により適正な対応が可能であり、２つのＣＰＵを備える装置においても、片方のＣＰＵを省電力状態とする動作モードを問題なく適用することができ、省エネルギーの効果を享受できる。
【００８４】
特に、直ぐに応答が必要な通信処理については、第１ＣＰＵ１０１が肩代わりして実行し、また、第２ＣＰＵ１０２が通常状態に復帰してからホスト装置に送信するデータも第１ＣＰＵ１０１によって適正に保持されるので、第２ＣＰＵ１０２を省電力状態とする動作モードを適用しても正しい通信を行うことができる。
【００８５】
また、大容量である第２ＲＡＭ１１０を使用する第２ＣＰＵ１０２を省電力状態とすることにより、第２ＲＡＭ１１０も省電力状態とすることができ、大きな省電力効果を得ることができる。
【００８６】
以上のようにして、本プリンター１により、２つのＣＰＵによる高速処理と高省電力効果を備えた印刷装置を実現できる。
【００８７】
なお、第１の実施形態例では、２つのＣＰＵを備えた装置としたが、本発明は３つ以上のＣＰＵを備えた装置に適用することもできる。
【００８８】
［第２の実施形態例］
図５は、本発明を適用した印刷装置の第２の実施形態例に係る構成図である。図５に示すプリンター１Ａが本発明を適用した印刷装置であり、また、そのコントローラー１０Ａが本発明を適用した情報処理装置である。本コントローラー１０Ａでは、プリンター１Ａが受信したデータの受信バッファ１４０Ａ（データ記憶部）への転送を、第１ＣＰＵ１０１Ａ（第１制御部）が高速で動作している際（第１状態）には、第１ＣＰＵ１０１Ａで行い、第１ＣＰＵ１０１Ａが低速で動作している際（第３状態）には、ＤＭＡ回路１０７Ａ（第２制御部、データ転送回路）で行って、プリンター１Ａの各動作モードにおいて確実にデータ受信処理を実行する。
【００８９】
図５に示す第２の実施形態例に係るプリンター１Ａは、本発明を適用した情報処理装置の一例であり、ホスト装置からネットワークを介して送信される印刷データを受信して印刷を実行する印刷装置である。プリンター１Ａは、第１の実施形態例と同じ４つの動作モードを備え、第１ＣＰＵ１０１Ａ及び第１ＣＰＵ１０２Ａの状態も図２に対応する。通常モード（第１動作モード）又はネットワークスタンバイモード（第３動作モード）においては、第１ＣＰＵ１０１Ａは高いクロック周波数で動作し（第１状態）、省電力モード（第２動作モード）では、第１ＣＰＵ１０１Ａは低いクロック周波数で動作する（第３状態）。
【００９０】
ホスト装置は、パーソナルコンピューター等で構成され、図示していないが、プリンター１Ａ用のドライバー、ステータスモニター、及び設定ユーティリティーなどを備える。ドライバーは、プリンター１Ａ用の印刷データを生成してプリンター１Ａに対して印刷要求を行う機能を有し、ステータスモニターはプリンター１Ａのステータス情報を取得してユーザーに表示する機能を有し、設定ユーティリティーはユーザー操作に基づいて印刷条件等をプリンター１Ａに設定する機能を有する。
【００９１】
プリンター１Ａは、図５に示すように、コントローラー１０Ａ、操作パネル２０Ａ、及び印刷機構部３０Ａを備える。
【００９２】
コントローラー１０Ａは、プリンター１Ａの各所の動作を制御する部分であり、図５に示すように、ＳｏＣ１００Ａ、第２ＲＡＭ１１０Ａ、及びＲＯＭ１２０Ａ等を備える。
【００９３】
ＳｏＣ１００には、図５に示すような機能ブロック（ＩＰ）が搭載される。受信Ｉ／Ｆ回路１０６Ａ（データ受信回路）は、ホスト装置から送信されたデータの受信処理を実行する回路であり、ＡＳＩＣ（application specific integrated circuit）で構成される。その内部には、ＦＩＦＯ（First In, First Out）メモリ１３０Ａが備えられ、受信したデータはここに蓄えられる。当該ＦＩＦＯメモリ１３０Ａの容量は比較的小さく、例えば、３２バイトである。
【００９４】
第１ＣＰＵ１０１Ａは、ＲＯＭ１２０Ａに記憶される各制御プログラムに従って処理を実行する制御部である。主に印刷処理に係る制御を実行する。
【００９５】
第２ＣＰＵ１０２Ａは、ＲＯＭ１２０Ａに記憶される各制御プログラムに従って処理を実行する制御部である。主にネットワークの通信処理に係る制御を実行する。
【００９６】
第１ＲＡＭ１０４Ａは、各データを一時的に記憶する記憶部であり、その中に受信バッファ１４０Ａが含まれる。受信バッファ１４０Ａは、受信Ｉ／Ｆ回路１０６Ａで受信されたデータを、そのデータに対する処理が実行されるまで保持するデータバッファである。
【００９７】
ＤＭＡ回路１０７Ａは、第１ＣＰＵ１０１Ａを介さずにＤＭＡ（Direct Memory Access）方式でデータ転送を行う回路である。
【００９８】
印刷制御回路１０８Ａは、プリンター１Ａが受信した印刷データを、印刷機構部３０
Ａ用の印刷実行データとして、印刷機構部３０Ａに転送する回路であり、ＡＳＩＣで構成される。
【００９９】
第２ＲＡＭ１１０Ａは、第２ＣＰＵ１０２Ａ用のＲＡＭである。
【０１００】
ＲＯＭ１２０Ａは、上記各制御プログラム等を格納した記憶部である。
【０１０１】
操作パネル２０Ａは、プリンター１Ａのユーザーインターフェースを構成する部分であり、ディスプレイ等の表示装置及び操作ボタン等の操作装置を備える。
【０１０２】
印刷機構部３０Ａは、コントローラー１０Ａの指示に従って用紙などの印刷媒体に印刷処理を実行する部分である。印刷方式がインクジェット方式である場合には、インクを吐出するノズルを備えたヘッド部、印刷媒体を搬送する搬送部等を備えている。
【０１０３】
以上説明したような構成を備える本プリンター１Ａでは、ホスト装置から印刷を要求するデータ（印刷データ）が送信された際には、その印刷データを受信Ｉ／Ｆ回路１０６Ａを介して受信バッファ１４０Ａに格納する。その後、順次、格納された印刷データを読み出し、第１ＣＰＵ１０１Ａによる処理を実行し、処理後のデータを印刷制御回路１０８Ａに転送する。印刷制御回路１０８Ａは転送されたデータから印刷実行データを生成し、印刷機構部３０Ａに送信する。印刷機構部３０Ａは、送信されたデータに従って印刷媒体に対して印刷処理を実行する。
【０１０４】
また、プリンター１Ａは、ホスト装置からステータス情報の要求コマンドなど、制御コマンドを受信した場合には、同様に、受信バッファ１４０Ａに格納される。そして、格納された印刷データは、第１ＣＰＵ１０１Ａによって適宜処理される。ステータス情報の要求コマンドの場合には、第１ＣＰＵ１０１Ａの処理によって必要な情報が取得され、ステータス情報がホスト装置に送信される。
【０１０５】
このように、ホスト装置からプリンター１Ａに送信されたデータは、まず、受信Ｉ／Ｆ回路１０６Ａによって受信され、ＦＩＦＯメモリ１３０Ａに保持された後、順次、受信バッファ１４０Ａに転送され、その後に処理される。
【０１０６】
また、プリンター１Ａは、前述のように、複数の動作モードを備える。第１ＣＰＵ１０１Ａは、通常モード及びネットワークスタンバイモードでは、省電力モードよりも高速で処理を実行する。なお、各動作モードの切り換えは、第１の実施形態例の場合と同様に実行される。また、その時点の動作モードの情報は第１ＲＡＭ１０４Ａ等に記憶される。
【０１０７】
このような内容で本プリンター１Ａにおける処理が実行されるが、本プリンター１Ａでは、受信Ｉ／Ｆ回路１０６Ａにデータが受信された際のデータ転送処理に特徴があり、以下、その処理内容について説明する。
【０１０８】
図６は、データ転送処理の手順を例示したフローチャートである。受信Ｉ／Ｆ回路１０６Ａは、ホスト装置からデータを受信するのを待つ（図６のステップＳ２１）。データを受信すると（図６のステップＳ２１のＹｅｓ）、受信Ｉ／Ｆ回路１０６Ａは、受信したデータをＦＩＦＯメモリ１３０Ａに記憶し、その時点の動作モードを取得する（図６のステップＳ２２）。具体的には、受信Ｉ／Ｆ回路１０６Ａは、上述した第１ＲＡＭ１０４Ａ等に記憶される、動作モードの情報を取得してその時点の動作モードを把握する。
【０１０９】
その結果、その時点の動作モードが通常モード又はネットワークスタンバイモードであれば（図６のステップＳ２３の「高速」）、受信Ｉ／Ｆ回路１０６Ａは、データを受信したことを第１ＣＰＵ１０１Ａに知らせる。第１ＣＰＵ１０１Ａは、割り込み処理でデータ転送処理を行う（図６のステップＳ２４）。具体的には、第１ＣＰＵ１０１Ａは、ＦＩＦＯメモリ１３０Ａに記憶されるデータを、順番に、１バイトずつ読み出して、受信バッファ１４０Ａに転送し、受信バッファ１４０Ａに記憶させる。
【０１１０】
一方、その時点の動作モードが省電力モードであれば（図６のステップＳ２３の「低速」）、受信Ｉ／Ｆ回路１０６Ａは、ＤＭＡ回路１０７Ａにデータ転送処理を要求し、ＤＭＡ回路１０７Ａはデータ転送処理を実行する（図６のステップＳ２５）。具体的には、ＤＭＡ回路１０７Ａは、ＦＩＦＯメモリ１３０Ａに記憶されるデータを順番に読み出し、読み出したデータを第１ＣＰＵ１０１Ａを介さずに受信バッファ１４０Ａに転送して受信バッファ１４０Ａに記憶させる。なお、ＤＭＡ回路１０７Ａは、省電力モードにおける（クロック周波数の）第１ＣＰＵ１０１Ａによるデータ転送よりも高速でデータ転送処理を行うことができる。
【０１１１】
このように、いずれかの方法によって、受信Ｉ／Ｆ回路１０６Ａで受信されたデータが受信バッファ１４０Ａに転送されて格納される（図６のステップＳ２６）。
【０１１２】
データが受信バッファ１４０Ａに格納された後は、上述のように、格納されたデータに対する処理が順次行われる。
【０１１３】
以上のような処理が、データが受信される度に実行される。なお、上述の通り、何らかのデータを受信した時点で、プリンター１Ａは、ＷＦＩモード（第３動作モード）ではないモードに切り替わっているため、上記ステップＳ２３の時点では、プリンター１Ａは通常モード、ネットワークスタンバイモード、又は、省電力モードで動作している。
【０１１４】
なお、上記の説明では、動作モードは１段階ずつ切り替えられる（シフトされる）としたが、ＷＦＩモードから直接通常モードに切り替えられるようにしてもよい。
【０１１５】
以上説明したように、第２の実施形態例に係るプリンター１Ａのコントローラー１０Ａでは、ホスト装置からデータを受信した際に、受信したデータの受信バッファ１４０Ａへの転送を、動作モードが通常モード又はネットワークスタンバイモードである場合には第１ＣＰＵ１０１Ａによる処理で行い、動作モードが省電力モードである場合にはＤＭＡ回路１０７Ａによる処理で行う。これにより、省電力モード時でも、クロック周波数が低く処理が遅い第１ＣＰＵ１０１Ａによる転送によって転送処理が間に合わなくなってしまう事態、すなわち、ＦＩＦＯメモリ１３０Ａに空き容量がなく次のデータを受信できなくなってしまう事態、になることを防止することができる。なお、通常モード又はネットワークスタンバイモードにおける第１ＣＰＵ１０１Ａの転送処理及び省電力モードにおけるＤＭＡ回路１０７Ａの転送処理は、データ受信に転送が間に合う処理速度となるように設計される。
【０１１６】
したがって、ＣＰＵの処理速度が異なる複数の動作モードを備えるプリンター１Ａにおいて、各動作モードでホスト装置から送信されたデータを消失することなく確実に受信処理することができる。
【０１１７】
なお、本発明はプリンター以外の電子機器に適用することができる。
【０１１８】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【符号の説明】
【０１１９】
１、１Ａ  プリンター、  １０、１０Ａ  コントローラー、  ２０、２０Ａ  操作パネル、  ３０、３０Ａ  印刷機構部、  １００、１００Ａ  ＳｏＣ、  １０１、１０１Ａ  第１ＣＰＵ、  １０２、１０２Ａ  第２ＣＰＵ、  １０３ａ、１０３ｂ  割り込みコントローラー、  １０４、１０４Ａ  第１ＲＡＭ、  １０５  メモリコントローラー、  １０６Ａ  受信Ｉ／Ｆ回路、  １０７Ａ  ＤＭＡ回路、  １０８Ａ  印刷制御回路、  １１０、１１０Ａ  第２ＲＡＭ、  １２０、１２０Ａ  ＲＯＭ、  １３０Ａ  ＦＩＦＯメモリ、  １４０Ａ  受信バッファ
【図１】
2016012339.tif 000003
【図２】
2016012339.tif 000004
【図３】
2016012339.tif 000005
【図４】
2016012339.tif 000006
【図５】
2016012339.tif 000007
【図６】
2016012339.tif 000008