(57)【要約】【課題】処理するデータに応じた周波数のクロックを、ＣＰＵなどの処理制御部に与えることが可能な技術を開示する。【解決手段】プリンタ１は、ネットワークを介してデータを受信するデータ通信部と、前記データ通信部が受信したデータを格納する受信バッファ４１と、クロックジェネレータ２３と、システム制御部２２と、そのシステム制御部２２が指定した指定クロックに基づき、受信バッファ４１に格納されたデータに関する処理を制御するサブＣＰＵ２１と、受信バッファ４１に格納されているデータ量を検知するＭＡＣ２５と、を備え、システム制御部２２は、検知されたデータ量が多いほど、少ない場合に比べて、周波数が高いクロックを指定する。【選択図】図１
2012234315.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してデータを受信するデータ通信部と、
前記データ通信部が受信したデータを格納する受信メモリと、
周波数が互いに異なる複数のクロックを生成するクロック生成部と、
前記複数のクロックからいずれかを指定するクロック指定部と、
前記クロック指定部が指定した指定クロックに基づき、前記受信メモリに格納されたデータに関する処理を制御する処理制御部と、
前記受信メモリに格納されているデータ量を検知するデータ量検知部と、を備え、
前記クロック指定部は、前記データ量検知部が検知したデータ量が多いほど、少ない場合に比べて、周波数が高いクロックを指定する、データ処理装置。
【請求項２】
請求項１に記載のデータ処理装置であって、
前記データ量検知部により検知されたデータ量と、閾値とを大小比較するデータ比較部を備え、
前記クロック指定部は、前記データ量が前記閾値を超える場合、前記閾値以下である場合に比べて、周波数が高いクロックを指定する、データ処理装置。
【請求項３】
請求項２に記載のデータ処理装置であって、
前記データ比較部は、前記データ量検知部により検知されたデータ量と、前記複数のクロックにそれぞれ対応する複数の閾値とを大小比較し、
前記クロック指定部は、前記データ量が超えた最大の閾値に対応するクロックを指定する、データ処理装置。
【請求項４】
請求項２または請求項３に記載のデータ処理装置であって、
日時、及び、外部機器との接続状況の少なくとも１つの情報を取得する情報取得部を備え、
前記データ比較部は、前記閾値の数、前記閾値の値、及び、前記閾値に対応する周波数の少なくとも１つを、前記情報取得部が取得した情報に応じて変更する、データ処理装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載のデータ処理装置であって、
日時、及び、外部機器との接続状況の少なくとも１つの情報を取得する情報取得部を備え、
前記クロック指定部は、前記複数のクロックの周波数のうち最低周波数の値を、前記情報取得部が取得した情報に応じて変更する、データ処理装置。
【請求項６】
請求項１から請求項５のいずれか一項に記載のデータ処理装置であって、
通常モードと、当該通常モードよりも消費電力が少ない省電力モードとを切り替えるモード切替部と、
前記通常モード時に前記データに関する処理を制御し、前記省電力モード時に前記データに関する処理の制御を停止するメイン制御部と、を備え、
前記処理制御部は、前記メイン制御部よりも消費電力が少なく、少なくとも前記省電力モード時に前記データに関する処理を制御するサブ制御部である、データ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して受信したデータを処理するデータ処理装置に関し、当該データ処理装置が有する処理制御部に与えるクロックの周波数を低くすることで消費電力を抑制する技術に関する。
【背景技術】
【０００２】
従来より、ネットワークを介して受信したパケットの処理を制御するＣＰＵを有し、そのＣＰＵに与えるクロックの周波数を低くすることで消費電力を抑制するプリンタがある（下記特許文献１）。このプリンタは、受信したパケットの種類を判別し、例えば受信頻度が高く、ＣＰＵによる処理が単純で簡単なパケット、又は処理時間の短いパケットであると判別したときには、クロックの周波数を、他のパケットの受信時の周波数よりも低くする。これにより、処理するデータに応じた周波数のクロックをＣＰＵに与えることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１１９６１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来のプリンタでは、パケットの種類を判別するためにパケットの中身を解析する必要があり、例えば解析中に後続のデータが受信できなくなるといった問題が生じる。
【０００５】
本明細書では、受信したデータの解析を要することなく、処理するデータに応じた周波数のクロックを、ＣＰＵなどの処理制御部に与えることが可能な技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書によって開示されるデータ処理装置は、ネットワークを介してデータを受信するデータ通信部と、前記データ通信部が受信したデータを格納する受信メモリと、周波数が互いに異なる複数のクロックを生成するクロック生成部と、前記複数のクロックからいずれかを指定するクロック指定部と、前記クロック指定部が指定した指定クロックに基づき、前記受信メモリに格納されたデータに関する処理を制御する処理制御部と、前記受信メモリに格納されているデータ量を検知するデータ量検知部と、を備え、前記クロック指定部は、前記データ量検知部が検知したデータ量が多いほど、少ない場合に比べて、周波数が高いクロックを指定する。
【０００７】
上記データ処理装置では、前記データ量検知部により検知されたデータ量と、閾値とを大小比較するデータ比較部を備え、前記クロック指定部は、前記データ量が前記閾値を超える場合、前記閾値以下である場合に比べて、周波数が高いクロックを指定してもよい。
【０００８】
上記データ処理装置では、前記データ比較部は、前記データ量検知部により検知されたデータ量と、前記複数のクロックにそれぞれ対応する複数の閾値とを大小比較し、前記クロック指定部は、前記データ量が超えた最大の閾値に対応するクロックを指定してもよい。
【０００９】
上記データ処理装置では、日時、及び、外部機器との接続状況の少なくとも１つの情報を取得する情報取得部を備え、前記データ比較部は、前記閾値の数、前記閾値の値、及び、前記閾値に対応する周波数の少なくとも１つを、前記情報取得部が取得した情報に応じて変更してもよい。
【００１０】
上記データ処理装置では、日時、及び、外部機器との接続状況の少なくとも１つの情報を取得する情報取得部を備え、前記クロック指定部は、前記複数のクロックの周波数のうち最低周波数の値を、前記情報取得部が取得した情報に応じて変更してもよい。
【００１１】
上記データ処理装置であって、通常モードと、当該通常モードよりも消費電力が少ない省電力モードとを切り替えるモード切替部と、前記通常モード時に前記データに関する処理を制御し、前記省電力モード時に前記データに関する処理の制御を停止するメイン制御部と、を備え、前記処理制御部は、前記メイン制御部よりも消費電力が少なく、少なくとも前記省電力モード時に前記データに関する処理を制御するサブ制御部でもよい。
【００１２】
なお、この発明は、データ処理方法、この方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の種々の態様で実現することができる。
【発明の効果】
【００１３】
本発明によれば、処理するデータに応じた周波数のクロックを、ＣＰＵなどの処理制御部に与えることが可能である。
【図面の簡単な説明】
【００１４】
【図１】一実施形態のプリンタ１の概略構成を示すブロック図
【図２】周波数変更処理を示すフローチャート
【図３】対応関係テーブルのデータ構造を示す図
【図４】昼間におけるディープスリープ時の格納データ量及びクロック周波数の変化を示すグラフ
【図５】夜間におけるディープスリープ時の格納データ量及びクロック周波数の変化を示すグラフ
【発明を実施するための形態】
【００１５】
＜実施形態＞
一実施形態について図１〜図５を参照しつつ説明する。
【００１６】
（プリンタの概略構成）
図１は、本実施形態のプリンタ１の概略構成を示すブロック図である。プリンタ１は、データ処理装置の一例であり、有線通信または無線通信により、ネットワークを介して、図示しない外部機器と通信可能である。ネットワークは、イーサネット（登録商標）などのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や、インターネットが好ましい。
【００１７】
プリンタ１は、制御回路２と、図示しない印刷機構を有する画像形成部３とを備える。制御回路２及び画像形成部３は、図示しない電力供給部から電力供給され、制御回路２は、外部機器からの印刷指示に基づき画像形成部３に印刷動作を実行させる。なお、画像形成部３は、電子写真方式及びインクジェット方式のいずれでもよい。
【００１８】
制御回路２は、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１０、ＰＨＹ（Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ）１１、第１メモリ１２、第２メモリ１３、ファクシミリ通信部１４、及び、ＵＳＢ通信部１５を有する。ＰＨＹ１１は、ネットワーク物理層を構成し、ネットワークとの接続する接続部であり、データ通信部の一例である。第１メモリ１２は、例えばＤＤＲ２−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ２  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）など、大記憶容量の揮発性メモリが好ましい。
【００１９】
第２メモリ１３と、ファクシミリ通信部１４と、ＵＳＢ通信部１５とは、それぞれバス２９及び図示しないインターフェース回路を介して接続されている。第２メモリ１３には、例えば、プリンタ１全体の制御処理や後述する周波数変更処理を実行するための各種のプログラムや、日時、接続数、閾値、クロック周波数の対応関係テーブルが記憶されている。第２メモリ１３は、例えばＲＯＭなどの不揮発性メモリが好ましい。ファクシミリ通信部１４は、図示しない電話回線を介して外部のファクシミリ装置と通信可能に接続され、当該ファクシミリ装置からファクシミリデータを受信する。また、ＵＳＢ通信部１５は、ＵＳＢポートを有し、そのＵＳＢポートに接続された外部機器からデータを受信することができる。
【００２０】
ＡＳＩＣ１０は、メインＣＰＵ２０、サブＣＰＵ２１、システム制御部２２、クロックジェネレータ２３、割り込みコントローラ２４、ネットワークコントローラ２５、メモリコントローラ２６、画像処理部２７、リアルタイムクロック２８を有し、これらはバス２９を介して互いにデータ伝送が可能である。また、ＡＳＩＣ１０は、第３メモリ３０を有し、この第３メモリ３０は、上記第１メモリ１２よりも記憶容量が小さく消費電力が少ないメモリであって、例えばＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｍｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が好ましい。
【００２１】
メインＣＰＵ２０は、高周波のクロック信号ＣＬに基づき、各種のデータ処理や演算、制御回路２全体の制御等を行う。メインＣＰＵ２０はメイン制御部の一例である。サブＣＰＵ２１は、メインＣＰＵ２０に比べて、低い周波数の複数のクロック信号ＣＬで動作可能であって、かつ、消費電力が小さい。サブＣＰＵ２１は、処理制御部及びサブ制御部の一例である。サブＣＰＵ２１は、ネットワークコントローラ４０、ファクシミリ通信部１４及びＵＳＢ通信部１５にバス２９を介して問合せし、これらが外部機器と通信可能に接続されているかどうかの接続情報を個別に取得することができる。このとき、サブＣＰＵ２１は、情報取得部として機能する。
【００２２】
システム制御部２２は、クロックジェネレータ２３に、クロック生成の指示、及び、生成すべきクロック周波数の指示を含む指示信号ＳＧ１を出力するハード回路であり、クロック指定部の一例である。クロックジェネレータ２３は、周波数が互いに異なる複数のクロック信号ＣＬを生成するハード回路であり、クロック生成部の一例である。具体的には、クロックジェネレータ２３は、図示しない基準クロック生成回路及び分周回路を有する。分周回路は、システム制御部２２からの指示に応じた分周比が設定され、基準クロック生成回路が生成した基準クロックを、その設定された分周比に応じて分周する。
【００２３】
ネットワークコントローラ２５は、メインＣＰＵ２０及びサブＣＰＵ２１が、ＰＨＹ１１を介して外部機器と通信するための通信制御部であり、ネットワークとの通信を制御するＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）４０を有する。ＭＡＣ４０は、受信バッファ４１及びバッファカウンタ４２を有する。受信バッファ４１は、受信メモリの一例であり、ＰＨＹ１１からの受信データを一時的に格納し、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）のデータ構造を有する揮発性メモリであることが好ましい。受信データには、例えばＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）、ＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）要求、ＰＩＮＧ（Ｐａｃｋｅｔ  ＩＮｔｅｒｎｅｔ  Ｇｒｏｐｅｒ）要求、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、その他所定のプロトコルに関するデータや、第１メモリ１２に格納された画像データの読み出し要求、印刷要求、印刷データが含まれる。
【００２４】
バッファカウンタ４２は、受信バッファ４１に格納されている受信データのデータ量が所定量ずつ増減するごとに、カウント値を増減させる。以下、受信バッファ４１に格納されている受信データのデータ量を、格納データ量という。ＭＡＣ４０は、バッファカウンタ４２のカウント値に基づき、格納データ量を検知し、その検知された格納データ量と、複数の閾値とを比較し、各閾値を超えるごとに割り込み信号ＳＧ２を出力する。ＭＡＣ４０は、データ量検知部及びデータ比較部の一例である。複数の閾値については後で詳説する。
【００２５】
メモリコントローラ２６は、第１メモリ１２及び第３メモリ３０へのデータ書き込みや読み出しを制御したり、バス２９とのプロトコル変換を行ったりするハード回路である。メモリコントローラ２６は、ＰＨＹ１１からの受信データを、主として第３メモリ３０に格納し、また、ＰＨＹ１１が印刷要求を受けたことに基づき、第３メモリ３０から印刷データを読み出して第１メモリ１２に書き込む。また、メモリコントローラ２６は、ファクシミリ通信部１４及びＵＳＢ通信部１５にて受信したデータも第３メモリに書き込む。画像処理部２７は、第１メモリ１２または第３メモリ３０に格納された印刷データを、ビットマップデータに変換するなどの処理を行い、画像形成部３に出力する。これにより、画像形成部３は、印刷データに基づく画像を、図示しないシートに形成する印刷動作を実行する。
【００２６】
割り込みコントローラ２４は、ネットワークコントローラ２５、メモリコントローラ２６、画像処理部２７のいずれかから割り込み信号ＳＧ２を受けると、予め定められた優先順位に従ってメインＣＰＵ２０及びサブＣＰＵ２１に割り込み指示をする。リアルタイムクロック２８は、上記基準クロックに基づき現在日時を計時するハード回路である。リアルタイムクロック２８は、クロックジェネレータ２３からのクロックに基づいて駆動しており、メインＣＰＵ２０及びサブＣＰＵ２１は、リアルタイムクロック２８に問合せすることにより現在日時情報を取得することができる。
【００２７】
（電力モード）
ＡＳＩＣ１０は、互いに消費電力が異なる複数の電力モードを選択的に実行することができる。本実施形態では、複数の電力モードには、通常モード、その通常モードよりも消費電力が少ないスリープモード、そのスリープモードよりもさらに消費電力が少ないディープスリープモードが含まれる。
【００２８】
ＡＳＩＣ１０は、プリンタ１の電源オン時、通常モードを実行し、制御回路２全体及び画像形成部３に電力を供給して通電し動作可能な状態にする。このため、通常モードでは、ＡＳＩＣ１０は、画像形成部３に印刷動作を実行させることができる。また、このとき、クロックジェネレータ２３は、例えば１３３［ＭＨｚ］の高周波クロック信号ＣＬを生成し、ＡＳＩＣ１０の各構成要素に与える。なお、通常モード時に、サブＣＰＵ２１を停止させてもよい。メインＣＰＵ２０は、印刷要求を受信しない状態が第１基準時間だけ継続したことを条件に、通常モードからスリープモードに移行する。
【００２９】
スリープモードでは、ＡＳＩＣ１０は、画像形成部３への電力供給を、通常モードよりも低下或いは停止させる。従って、画像形成部３に印刷動作を実行させることができなくなる。ただし、通常モードに復帰し易くするため、クロックジェネレータ２３は、通常モードと同等以下の周波数のクロック信号ＣＬを生成することが好ましい。ＡＳＩＣ１０は、印刷要求を受信しない状態が第１基準時間よりも長い第２基準時間だけ継続したことを条件に、スリープモードからディープスリープモードに移行する。例えば画像形成部３が定着器を有する電子写真方式である場合には、スリープモードに移行後、定着器をファンなどにより所定温度まで冷却することがあり、その冷却に要する時間が、第１基準時間と第２基準時間との時間差以上であることが好ましい。
【００３０】
ディープスリープモードでは、ＡＳＩＣ１０は、画像形成部３に加えて、メイン制御部２０、第１メモリ１２、画像処理部２７への電力供給を、通常モードよりも低下或いは停止させる。従って、メイン制御部２０による高速処理、第１メモリ１２へのアクセス、及び、画像処理部２７でのデータ処理を実行することができなくなる。しかも、サブＣＰＵ２１は、次述する周波数変更処理を実行することにより、検知された格納データ量に応じて、クロックジェネレータ２３に生成させるクロック信号ＣＬの周波数を増減させる。
【００３１】
なお、ＡＳＩＣ１０は、スリープモード或いはディープスリープモードを実行中に、外部機器から即時印刷を示す印刷指示を受けたとき、予約印刷を受信した後に当該予約印刷で予約された時刻が到来したときや、第３メモリ３０のデータ格納量が所定の上限量に達したときなどに、通常モードに復帰する。
【００３２】
（周波数変更処理）
図２は、周波数変更処理を示すフローチャートであり、図３は、日時、接続数、閾値、クロック周波数の上記対応関係テーブルのデータ構造を示す図である。ディープスリープモードに移行すると、メインＣＰＵ２０は停止し、サブＣＰＵ２１は、第２メモリ１３から圧縮された周波数変更プログラム及び上記対応関係テーブルを読み出して第３メモリ上で解凍した後に第２メモリ１３を停止させ、当該周波数変更プログラムに従って図２に示す周波数変更処理を実行する。
【００３３】
まずサブＣＰＵ２１は、リアルタイムクロック２８から上記現在日時情報を取得し、また、ネットワークコントローラ４０、ファクシミリ通信部１４及びＵＳＢ通信部１５から上記接続情報を取得する（Ｓ１）。そして、サブＣＰＵ２１は、上記対応関係テーブルを参照して、クロック周波数の初期値、換言すれば最低周波数値として、現在日時及び接続情報に対応する値を指定し、クロックジェネレータ２３が生成するクロック信号ＣＬの周波数を、その指定した値に変更させる（Ｓ２）。
【００３４】
夜間は、昼間に比べて、データを受信する頻度が低く、受信するデータ量が少ない場合がある。そこで、対応関係テーブルによれば、クロック周波数の初期値は、昼間の時間帯に比べて夜間の時間帯の方が低い値に設定されている。これにより、夜間ではクロック周波数の初期値を低くして消費電力を抑制することができる。一方、昼間ではクロック周波数の初期値を有る程度高く維持することで、サブＣＰＵ２１によるデータに関する処理を速くして格納データ量を抑制し、且つ、膨大なデータを一度に受信するときにも即座に対応することができる。
【００３５】
また、例えばＰＨＹ１１と、ファクシミリ通信部１４及びＵＳＢ通信部１５とに同時にデータ転送が行われた場合、ＰＨＹ１１だけが外部機器に通信可能に接続されている場合に比べて、データ転送がバス２９で調停されるため、第３メモリ３０へのデータ転送が遅くなる。そうすると、その分だけ、サブＣＰＵ２１が受信バッファ４１に格納されている受信データを、第３メモリを利用して処理することができず、格納データ量が増大する。
【００３６】
そこで、対応関係テーブルによれば、クロック周波数の初期値は、外部機器との接続数が多いほど高い値に設定されている。これにより、前者の場合には、サブＣＰＵ２１による第３メモリ内のデータ処理を速くし格納データ量を抑制し、且つ、膨大なデータを一度に受信するときにも即座に対応することができる。一方、後者の場合には、消費電力を抑制することができる。
【００３７】
次に、サブＣＰＵ２１は、ネットワークコントローラ２５からの上記割り込み信号ＳＧ２の待機状態に入る（Ｓ３：ＮＯ）。サブＣＰＵ２１は、割り込み信号ＳＧ２の入力が無い状態が、規定時間（例えば１０分）以上継続した場合（Ｓ７：ＹＥＳ）、クロックジェネレータ２３が生成するクロック信号ＣＬの周波数を初期値に戻し（Ｓ８）、再びＳ３の処理に戻る。これにより、割り込み信号ＳＧ２の入力が無い状態が規定時間を経ってもクロック信号ＣＬを初期値に戻さない構成に比べて、ＡＳＩＣ１０での消費電力を軽減することができる。サブＣＰＵ２１は、割り込み信号ＳＧ２の入力が、割り込み信号ＳＧ２の入力が無い状態が規定時間未満である場合（Ｓ７：ＹＥＳ）、Ｓ３の処理に戻る。
【００３８】
サブＣＰＵ２１は、割り込み信号ＳＧ２を、割り込みコントローラ２４を介して受信すると（Ｓ３：ＹＥＳ）、当該割り込み信号ＳＧ２に基づき、格納データ量がどの閾値を超えたかを把握し、その超えた閾値のうち最大の閾値を特定する（Ｓ４）。サブＣＰＵ２１は、上記対応関係テーブルを参照して、最大の閾値に対応するクロック周波数を指定する（Ｓ５）。
【００３９】
本実施形態では、上記複数の閾値には、第１閾値、第２閾値、第３閾値が含まれ、第１閾値から第３閾値に向って大きいデータ量に設定されている。対応関係テーブルによれば、大きい閾値ほど、高いクロック周波数に対応付けられている。また、前述したように、夜間は、昼間に比べて、データを受信する頻度が低く、受信するデータ量が少ない場合がある。そこで、対応関係テーブルによれば、夜間の方が昼間に比べて、低い閾値までに設定され、閾値の数も多く、且つ、各閾値に対応するクロック周波数も低い。
【００４０】
図４は昼間におけるディープスリープ時の格納データ量及びクロック周波数の変化を示すグラフであり、図５は夜間におけるディープスリープ時の格納データ量及びクロック周波数の変化を示すグラフである。各図において、実線グラフが格納データ量の変化を示し、一点鎖線グラフがクロック周波数の変化を示す。
【００４１】
図４に示すように、昼間では、最低周波数は１２［ＭＨｚ］に設定されており、格納データ量が第１閾値を超えると、クロック周波数は一気に１３３［ＭＨｚ］に変更される。格納データ量が第１閾値以下になるとクロック周波数は１２［ＭＨｚ］に戻される。このように、昼間では、クロック周波数は、格納データ量に応じて１段階だけ変更される。
【００４２】
図５に示すように、夜間では、最低周波数は８［ＭＨｚ］に設定されており、格納データ量が第１閾値を超えると、クロック周波数は２４［ＭＨｚ］に変更され、格納データ量が第２閾値を超えると、クロック周波数は４８［ＭＨｚ］に変更され、更に格納データ量が第３閾値を超えると、クロック周波数は１３３［ＭＨｚ］に変更される。このように、夜間では、クロック周波数は、格納データ量に応じて多段階に変更される。
【００４３】
サブＣＰＵ２１は、クロック周波数を指定し変更すると（Ｓ５）、プリンタ１の電源がオフされなければ（Ｓ６：ＮＯ）、Ｓ３に戻り、電源がオフされれば（Ｓ６：ＹＥＳ）、本周波数変更処理を終了する。
【００４４】
（本実施形態の効果）
本実施形態によれば、サブＣＰＵ２１は、検知された格納データ量が多いほど、少ない場合に比べて、周波数が高いクロックに基づき受信データに関する処理を制御する。これにより、受信データの解析を要することなく、処理するデータに応じた周波数のクロックを、サブＣＰＵ２１に与えることができる。このため、データ解析に時間がかかることにより格納データ量が受信バッファ４１の格納上限量に達してしまい、受信データを取りこぼすことを抑制することができる。また、格納データ量が多いほど、クロック周波数を高くすることにより、サブＣＰＵ２１が受信バッファ４１からデータを吸い出すスピードが速くなるので、受信データが受信バッファ４１に格納し切れずに取りこぼすことを抑制することができる。
【００４５】
また、格納データ量が閾値を超える場合、閾値以下である場合に比べて、周波数が高いクロックが指定される。即ち、格納データ量が閾値を超えるかどうかに応じてクロックの周波数を段階的に変える。これにより、周波数を格納データ量に応じて連続的に変える場合に比べて、クロックジェネレータ２３の構成を簡略化することができる。
【００４６】
また、格納データ量が閾値を超えるごとに、その閾値を１ランク大きい値に変更することにより、指定クロックの周波数を１段ずつ高くしていく構成でよい。これに対し、本実施形態によれば、検知された格納データ量と、複数のクロックにそれぞれ対応する複数の閾値とが大小比較され、格納データ量が超えた最大の閾値に対応するクロックが指定される。これにより、データ量が急激に増加した場合でも、指定クロックの周波数を複数段分、一気に高くすることができ、格納データ量の増加に応じた適切な周波数のクロックでデータに関する処理を制御することができる。
【００４７】
更に、日時に応じて、閾値の数、閾値の値、及び、閾値に対応する周波数が変更される。これにより、日時や外部機器の接続状態への変化に応じて適切な周波数のクロックを指定することができる。また、日時、及び、外部機器との接続状況の情報に応じて、複数のクロックの周波数のうち最低周波数の値が変更される。これにより、日時や外部機器の接続状態への変化に応じて適切な最低周波数のクロックを指定することができる。
【００４８】
また、ディープスリープ、換言すれば省電力モード時においてメインＣＰＵ２０による制御を停止させつつ、受信したデータの解析を要することなく、処理するデータに応じた周波数のクロックを、サブＣＰＵ２１に与えることができる。
【００４９】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような種々の態様も本発明の技術的範囲に含まれる。特に、各実施形態の構成要素のうち、最上位の発明の構成要素以外の構成要素は、付加的な要素なので適宜省略可能である。
（１）上記実施形態では、印刷機能を有するプリンタ１を例に挙げて説明した。しかし、上記実施形態は、ファクシミリ装置などの画像形成装置や、画像読取装置、或いは、印刷機能、コピー機能、画像読取機能及びファクシミリ機能のうち少なくとも２つを備える複合機にも適用することができる。要するに、受信したデータに関する処理をするデータ処理装置であればよく、受信したデータを所定形式に変換したり、圧縮したり、解凍したり、加工したり、解析したり、不揮発性メモリに記憶したり、表示装置に表示させたりする、いずれの装置にも本実施形態を適用することができる。
【００５０】
（２）上記実施形態では、クロックジェネレータ２３は、基準ブロックの分周比を変更することにより、周波数が互いに異なる複数のクロックを択一的に生成する構成であった。しかし、周波数が互いに異なる複数のクロックを同時に生成し、それら複数のクロックから指定されたクロックを、選択回路を介して出力する構成でもよい。
【００５１】
（３）上記実施形態では、クロック周波数の初期値を、現在日時及び接続情報に応じて変更した。しかし、クロック周波数の初期値を、現在日時及び接続情報のいずれか１つに応じて変更してもよいし、これらに応じて変更しない構成でもよい。
【００５２】
（４）上記実施形態では、昼間、夜間という時間帯に応じて、クロック周波数の初期値を変更した。しかし、その他の時間帯や、平日と休日という曜日に応じて、クロック周波数の初期値を変更してもよい。
【００５３】
（５）上記実施形態では、日時に応じて、閾値の数、閾値の値、閾値に対応するクロック周波数の値を変更した。しかし、日時に応じて、閾値の数、閾値の値、閾値に対応するクロック周波数の値のうち少なくとも１つを変更する構成であればよい。また、外部機器の接続数が少ないほど、閾値の数、閾値の値、閾値に対応するクロック周波数の値のうち少なくとも１つを小さくしてもよい。
【００５４】
（６）上記実施形態では、システム制御部２２、クロックジェネレータ２３、メモリコントローラ２６、画像処理部２７、リアルタイムクロック２８、バッファカウンタ４２等はハード回路で構成した。しかし、これらの少なくとも１つはＣＰＵによって構成してもよい。また、ＡＳＩＣ１０からシステム制御部２２及び割り込みコントローラ２４の少なくとも１つを取り除き、その機能をサブＣＰＵ２１に実行させる構成でもよい。また、メインＣＰＵ２０及びサブＣＰＵ２１の少なくとも１つをＡＳＩＣなどのハード回路で構成してもよい。
【００５５】
（７）上記実施形態では、２つのＣＰＵ２０，２１を備える構成であった。しかし、１つのＣＰＵだけを備え、このＣＰＵが上記周波数変更処理を実行する構成でもよい。
【００５６】
（８）上記実施形態では、受信バッファ４１に格納されているデータ量を直接
検知した。しかし、受信バッファ４１に書き込んだデータ量と、受信バッファ４１から読み出したデータ量とを監視し、前者から後者を減算したデータ残量を格納データ量として検知してもよい。
【符号の説明】
【００５７】
１：プリンタ１  １１：ＰＨＹ  ２０：メインＣＰＵ  ２１：サブＣＰＵ  ２２：システム制御部  ２３：クロックジェネレータ  ４１：受信バッファ  ４０：ＭＡＣ４０
【図１】
2012234315.tif 000003
【図２】
2012234315.tif 000004
【図３】
2012234315.tif 000005
【図４】
2012234315.tif 000006
【図５】
2012234315.tif 000007