(57)【要約】【課題】バスマスタとなる装置にバス接続された処理装置の処理能力を、簡易に低減させる。【解決手段】処理装置と、前記処理装置のバスマスタとなるバス制御装置とを備えた電子機器のコントローラであって、前記バス制御装置は、前記処理装置の状態に基づくモードを判定するモード判定手段と、所定のモードにおいて、前記処理装置に対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備えることを特徴とする電子機器のコントローラ。【選択図】図１
2007199841.tif 000002
【特許請求の範囲】
【請求項１】
処理装置と、前記処理装置のバスマスタとなるバス制御装置とを備えた電子機器のコントローラであって、
前記バス制御装置は、
前記処理装置の状態に基づくモードを判定するモード判定手段と、
所定のモードにおいて、前記処理装置に対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備えることを特徴とする電子機器のコントローラ。
【請求項２】
処理装置のバスマスタとなるバス制御装置であって、
前記処理装置の状態に基づくモードを判定するモード判定手段と、
所定のモードにおいて、前記処理装置に対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備えることを特徴とするバス制御装置。
【請求項３】
請求項２に記載のバス制御装置であって、
前記判定するモードは、前記処理装置の温度に関するモードであり、所定のモードは、前記温度が高くなったことを示すモードであることを特徴とするバス制御装置。
【請求項４】
請求項２に記載のバス制御装置であって、
前記アクノリッジ信号は、アドレスアクノリッジ信号およびデータアクノリッジ信号の少なくとも一方を含むことを特徴とするバス制御装置。
【請求項５】
ＣＰＵと、前記ＣＰＵのバスマスタとなるメモリ制御装置とを備え、印刷エンジンに画像データを出力するプリンタコントローラであって、
前記メモリ制御装置は、
前記ＣＰＵの温度状態に応じたモードを判定するモード判定手段と、
ＣＰＵの温度状態が高いことを示すモードにおいて、前記ＣＰＵに対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備えることを特徴とするプリンタコントローラ。
【請求項６】
請求項５に記載のプリンタコントローラであって、
前記ウェイト時間は、少なくとも、前記ＣＰＵが、前記印刷エンジンが要求する画像データを生成可能な時間内であることを特徴とするプリンタコントローラ。
【請求項７】
請求項５に記載のプリンタコントローラを搭載したプリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置間のバス制御に係り、特に、バスマスタ側の装置がスレーブ側の装置の動作率を低下させる技術に関する。
【背景技術】
【０００２】
ＣＰＵとメモリ制御装置とを備える電子機器のコントローラにおいて、ＣＰＵとメモリ制御装置との間のバス制御をメモリ制御装置側が行なう構成がある。
【０００３】
このような構成では、メモリ制御装置がＣＰＵのバスマスタとして機能するため、例えば、メモリ制御装置に接続されたメモリからのデータ読み込みをＣＰＵが要求する場合には、ＣＰＵがメモリ制御装置に対して、リクエスト信号と共に、読み込み指示であることを示すコマンド信号と読み込みアドレス信号とを出力する。
【０００４】
メモリ制御装置は、アドレス信号を正常に受け取ると、アドレスアクノリッジ信号をＣＰＵに返す。次いで、メモリ制御装置が読み込み対象のデータをメモリから取得すると、データをＣＰＵに出力すると共に、データアクノリッジ信号を出力してＣＰＵにデータが揃ったことを通知する。これにより、ＣＰＵは、要求したデータをメモリから読み込むことができる。
【０００５】
また、メモリ制御装置に接続されたメモリへのデータ書き込みをＣＰＵが要求する場合には、ＣＰＵがメモリ制御装置に対して、リクエスト信号と共に、書き込み指示であることを示すコマンド信号と書き込みアドレス信号とを出力する。
【０００６】
そして、メモリ制御装置は、アドレス信号を正常に受け取ると、アドレスアクノリッジ信号を返す。アドレスアクノリッジ信号を返されたＣＰＵは、書き込むデータ信号を出力する。
【０００７】
メモリ制御装置は、データ信号を正常に受け取ると、データアクノリッジ信号を返して、メモリアクセスを行なう。これにより、ＣＰＵは、要求したデータをメモリに書き込むことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来、メモリ制御装置は、アドレス信号を正常に受け取ると、即座にアドレスアクノリッジ信号をＣＰＵに返し、データ信号を正常に受け取ったり、出力するデータが準備できると、即座にデータアクノリッジ信号をＣＰＵに返すようにしている。
【０００９】
このような制御を行なうことで、ＣＰＵを待たせる時間を少なくしてＣＰＵの動作率を上げ、ＣＰＵの処理能力を最大限に発揮できるようにしている。
【００１０】
ところが、ＣＰＵ等の処理装置の処理能力を低減させたい場合もある。例えば、何らかの原因で処理装置の温度が異常に上昇した場合、省電力を図りたい場合等である。
【００１１】
このような場合に、処理装置のクロックを遅くすることも考えられるが、そのための制御および構成が煩雑になる。
【００１２】
本発明は、バスマスタとなる装置にバス接続された処理装置の処理能力を、簡易に低減させることを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため本発明の第１の態様である電子機器のコントローラは、
処理装置と、前記処理装置のバスマスタとなるバス制御装置とを備えた電子機器のコントローラであって、
前記バス制御装置は、
前記処理装置の状態に基づくモードを判定するモード判定手段と、
所定のモードにおいて、前記処理装置に対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備える。
【００１４】
アクノリッジ信号が返されるまで、処理装置は待ち状態になるため、動作率が低減することになる。
【００１５】
上記課題を解決するため本発明の第２の態様であるバス制御装置は、
処理装置のバスマスタとなるバス制御装置であって、
前記処理装置の状態に基づくモードを判定するモード判定手段と、
所定のモードにおいて、前記処理装置に対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備えることを特徴とする。
【００１６】
本体態様においても、アクノリッジ信号が返されるまで、処理装置は待ち状態になるため、動作率が低減することになる。
【００１７】
ここで、前記判定するモードは、前記処理装置の温度に関するモードであり、所定のモードは、前記温度が高くなったことを示すモードとすることができる。
【００１８】
処理装置の温度が上昇した場合に、アクノリッジ信号にウェイト時間を挿入することで動作率が低減し、処理装置の発熱が抑えられることになる。
【００１９】
前記アクノリッジ信号は、アドレスアクノリッジ信号およびデータアクノリッジ信号の少なくとも一方を含むことができる。
【００２０】
上記課題を解決するため本発明の第２の態様であるプリンタコントローラは、
ＣＰＵと、前記ＣＰＵのバスマスタとなるメモリ制御装置とを備え、印刷エンジンに画像データを出力するプリンタコントローラであって、
前記メモリ制御装置は、
前記ＣＰＵの温度状態に応じたモードを判定するモード判定手段と、
ＣＰＵの温度状態が高いことを示すモードにおいて、前記ＣＰＵに対するアクノリッジ信号にウェイト時間を挿入して出力する動作率制御手段とを備える。
【００２１】
この場合、印刷処理が中断しないように、前記ウェイト時間は、少なくとも、前記ＣＰＵが、前記印刷エンジンが要求する画像データを生成可能な時間内とする。
【発明を実施するための最良の形態】
【００２２】
本発明の実施の形態について図面を参照して説明する。本実施形態では、本発明を印刷装置に搭載されるコントローラに備えられたメモリ制御装置に適用した例を説明する。本実施例では、メモリ制御装置にはＣＰＵとメモリとが接続されており、メモリ制御装置とＣＰＵとの間のバス制御について、メモリ制御装置が制御を行なう。すなわち、メモリ制御装置がバスマスタとして機能し、ＣＰＵがスレーブとして機能する。
【００２３】
ただし、本発明はこのようなメモリ制御装置に限られず、他の装置とのバスを制御する装置に広く適用することができる。
【００２４】
図１は、印刷装置に搭載されるコントローラ１０の構成の概要を示すブロック図である。
【００２５】
本図に示すようにコントローラ１０は、ＣＰＵ１００、メモリ制御装置１１０、ＩＯ制御装置１２０、ＲＡＭ１３０、ＲＯＭ１４０、画像処理装置１６０を備えている。
【００２６】
ＣＰＵ１００は、印刷装置における各種処理を制御する演算装置である。ＣＰＵ１００とバス接続するメモリ制御装置１１０は、接続されているＲＡＭ１３０に対するアクセス処理、画像処理装置１６０に画像データを供給する処理等を行なう装置である。
【００２７】
ＲＡＭ１３０は、プログラム、データ等を一時的に記憶するメモリモジュールであり、ＲＯＭ１４０は、プログラム等を不揮発的に記憶するメモリモジュールである。
【００２８】
画像処理装置１６０は、供給された画像データに色変換等の画像処理を施すことによりビデオデータを生成して図示しない印刷エンジンに供給する。
【００２９】
ＩＯ制御装置１２０は、バスによって接続されているＲＯＭ１４０に対するアクセス処理やホストコンピュータ等に接続するための外部Ｉ／Ｆに対する制御処理等を行なう装置である。
【００３０】
本実施例において、ＣＰＵ１００とメモリ制御装置１１０との間のバスは、ＴＳ（ＲＥＱＵＥＳＴ）信号線、ＣＭＤ信号線、ＡＤＤＲ信号線、ＡＡＣＫＸ信号線、ＤＡＴＡ信号線、ＤＡＴＡＡＣＫＸ信号線を含んでいる。
【００３１】
ＴＳ信号線は、ＣＰＵ１００からメモリ制御装置１１０へ送られるリクエスト開始信号であり、この信号によりＣＰＵ１００とメモリ制御装置１１０との間のバスサイクルがスタートする。
【００３２】
ＣＭＤ信号線は、ＣＰＵ１００からのリクエストの処理内容を示す。ここで処理内容は簡単のため、ＲＡＭ１３０からのデータ読み込み（Ｒｅａｄ）あるいはＲＡＭ１３０へのデータ書き込み（Ｗｒｉｔｅ）のいずれかであるものとする。もちろんこれらに限られるものではない。
【００３３】
ＡＤＤＲ信号線は、ＣＰＵ１００からメモリ制御装置１１０へ送られ、データ読み込みアドレスあるいはデータ書き込みアドレスを示す。
【００３４】
ＡＡＣＫＸ信号線は、メモリ制御装置１１０がアドレスを正常に受け付けたことを示す。
【００３５】
ＤＡＴＡ信号線は、ＲＡＭ１３０に書き込むデータ（データ書き込み時）あるいはＲＡＭ１３０から読み込まれたデータ（データ読み取り時）を示す。
【００３６】
ＤＡＴＡＡＣＫＸは、メモリ制御装置１１０がデータを正常に受け付けたこと（データ書き込み時）、あるいは読み取り対象のデータの準備ができたこと（データ読み取り時）を示す。
【００３７】
また、本実施例において、メモリ制御装置１１０は、ＣＰＵ１００の動作率を制御するＣＰＵ動作率制御部１１１を備えている。ＣＰＵ動作率制御部１１１は、ＣＰＵ１００の動作率について、動作率通常モードと動作率低減モードとに切り替える。ここで、動作率通常モードは、従来どおり、ＣＰＵ１００の処理能力を十分発揮させるためのモードであり、動作率低減モードは、ＣＰＵ１００の動作率をあえて低減させることで、ＣＰＵ１００の熱上昇を抑えたり、消費電力を低下させるモードである。
【００３８】
より具体的には、動作率通常モードでは、メモリ制御装置１１０は、従来どおり、ＡＡＣＫＸ信号あるいはＤＡＴＡＡＣＫＸ信号を、ＣＰＵ１００に送信できる状態になると即座に出力するモードである。一方、動作率低減モードは、ＡＡＣＫＸ信号あるいはＤＡＴＡＡＣＫＸ信号を、送信できる状態になってもすぐにはＣＰＵ１００に返さずに、ウェイト期間を挿入することで、ＣＰＵ１００を待機させるモードである。すなわち、ＣＰＵ１００を待機させることで、ＣＰＵ１００の動作率を低下させ、温度上昇を抑えたり、消費電力を低下させるようにする。
【００３９】
本実施例において、動作率通常モードから動作率低減モードへのモードの切り替えは、ＣＰＵ１００本体もしくは付近の熱情報を取得し、その温度が閾値を超えている場合に行なうようにする。この判定を行なうために、メモリ制御装置１１０は、モード判定部１１２を備えている。なお、ＣＰＵ１００本体もしくは付近の熱情報は、ソフトウェア的あるいはハードウェア的に取得することができる。
【００４０】
つぎに、本実施形態におけるＣＰＵ動作率制御部１１１のモード切り替え処理について、図２のフロー図を参照して説明する。なお、モードの切り替え時には、例えば、ＣＰＵ動作率制御部１１１内にモード設定レジスタを設け、その内容を書き換えるようにする。
【００４１】
印刷装置の稼働中において、デフォルトの状態は動作率通常モードである。これによりＣＰＵ１００の性能を十分に発揮させることができる。この間、モード判定部１１２は、ＣＰＵ１００の温度が、あらかじめ定められた第１基準値を超えたかどうかを判定する（Ｓ１０１）。なお、上述のようにＣＰＵ１００の温度は直接的あるいは間接的に計測して取得することができる。
【００４２】
そして、何らかの原因でＣＰＵ１００の温度が第１基準値を超えると（Ｓ１０１：Ｙ）、ＣＰＵ動作率制御部１１１は、動作率低減モードに切り替わる（Ｓ１０２）。前述のように、このモードはＣＰＵ１００の動作率を低下させるモードであり、これによりＣＰＵ１００の熱上昇を抑えたり、消費電力を低減させることができる。
【００４３】
動作率を低減させた結果、ＣＰＵ１００の温度が、あらかじめ定められた第２基準値を下回った場合（Ｓ１０３：Ｙ）には、ＣＰＵ動作率制御部１１１は、動作率通常モードに切り替わる（Ｓ１０４）。これによりＣＰＵ１００の性能を十分に発揮させることができるようになる。
【００４４】
なお、第１基準値と第２基準値とは実験的に最適な値を定めることができ、モードの頻繁な切り替わりを防ぐためにヒステリシス特性を持たせることが望ましい。
【００４５】
つぎに、動作率通常モードおよび動作率低減モードにおけるＣＰＵ動作率制御部１１１の処理について図３〜図５のタイミング図を参照して説明する。なお、動作率低減モードでは、アドレス制御信号であるＡＡＣＫＸにウェイトを入れる場合と、データ制御信号線であるＤＡＣＫＸにウェイトを入れる場合とが可能である。もちろん、両者を併用することも可能である。
【００４６】
図３は、動作率通常モードにおけるＣＰＵ動作率制御部１１１の処理を示すタイミング図である。
【００４７】
本図の例では、ＣＰＵ１００からメモリ制御装置１１０に対して、アドレス（ＡＤＲ０）の読み込み命令と、アドレス（ＡＤＲ１）の読み込み命令と、アドレス（ＡＤＲ２）へのデータ（Ｄ２）の書き込み命令と、アドレス（ＡＤＲ３）へのデータ（Ｄ３）の書き込み命令とが連続して行なわれる場合を示している。
【００４８】
まず、ｔ１でＣＰＵ１００が、ＴＳ信号を出力するとともに、ＣＭＤ信号で読み込み（Ｒｅａｄ）命令を示し、ＡＤＤＲ信号でＡＤＲ０を指示する。
【００４９】
ＣＰＵ動作率制御部１１１は、ＡＤＲ０の指示を正常に受信すると、即座にＡＡＣＫＸ信号をＣＰＵ１００に送信する（ｔ２）。
【００５０】
すると、ＣＰＵ１００は、次の読み込み命令を指示するために、ｔ３において、ＴＳ信号を出力するとともに、ＣＭＤ信号で読み込み（Ｒｅａｄ）命令を示し、ＡＤＤＲ信号でＡＤＲ１を指示する。この指示に対しても、ＣＰＵ動作率制御部１１１は、即座にＡＡＣＫＸ信号をＣＰＵ１００に送信する（ｔ４）。
【００５１】
一方、ＣＰＵ動作率制御部１１１は、ＡＤＲ０が示すデータを取得すると、即座にＤＡＴＡＡＣＫＸ信号を出力するとともに、ＤＡＴＡ信号に取得したデータ「Ｄ００」「Ｄ０１」「Ｄ０２」「Ｄ０３」を順次出力する（ｔ４〜）。
【００５２】
同様に、ＡＤＲ１が示すデータを取得すると、即座に、ＤＡＴＡＡＣＫＸ信号を出力するとともに、ＤＡＴＡ信号に取得したデータ「Ｄ１」を出力する（ｔ６）。
【００５３】
ＣＰＵ１００は、ｔ４でＡＤＲ１の指示を正常に受信したことを示すＡＡＣＫＸ信号を受信すると、ＴＳ信号を出力するとともに、ＣＭＤ信号で書き込み（Ｗｒｉｔｅ）命令を示し、ＡＤＤＲ信号でＡＤＲ２を指示する（ｔ５）。
【００５４】
そして、ｔ６でＤ１の読み取りを終えると、ｔ７で書き込みデータであるＤ２を出力する。
【００５５】
ＣＰＵ動作率制御部１１１は、Ｄ２を正常に受信すると、即座にＤＡＴＡＡＣＫＸ信号を返す（ｔ８）。このＤＡＴＡＡＣＫＸ信号を受けて、ＣＰＵ１００は、次の書き込みデータであるＤ３を出力し、ＣＰＵ動作率制御部１１１は、Ｄ３を正常に受信すると、即座にＤＡＴＡＡＣＫＸ信号を返す（ｔ９）。
【００５６】
このように、動作率通常モードでは、ＣＰＵ動作率制御部１１１は、ＣＰＵ１００からのアドレス信号、あるいは、データ信号を正常に受け付けると即座にＡＣＫ信号を返すことで、ＣＰＵ１００の性能を十分活かすようにしている。
【００５７】
図４は、動作率低減モードにおけるＣＰＵ動作率制御部１１１の処理を示すタイミング図である。本図は、アドレス制御信号であるＡＡＣＫＸにウェイトを入れた場合の例を示している。
【００５８】
本図でも図３と同様に、ＣＰＵ１００からメモリ制御装置１１０に対して、アドレス（ＡＤＲ０）の読み込み命令と、アドレス（ＡＤＲ１）の読み込み命令と、アドレス（ＡＤＲ２）へのデータ（Ｄ２）の書き込み命令と、アドレス（ＡＤＲ３）へのデータ（Ｄ３）の書き込み命令とが連続して行なわれる場合を示している。
【００５９】
ここでは、動作率通常モードとの差を中心に説明する。
【００６０】
動作率通常モードでは、図３のｔ２において、ＣＰＵ動作率制御部１１１は、ＡＤＲ０の指示を正常に受信すると、即座にＡＡＣＫ信号をＣＰＵ１００に送信するようにしていた。
【００６１】
しかしながら、ＡＡＣＫＸにウェイトを入れる動作率低減モードでは、ＡＤＲ０の指示を正常に受信した時点から所定のウェイト期間を挿入して、ＡＡＣＫ信号を出力するようにしている（図４のｔ２）。
【００６２】
同様に、ＣＰＵ動作率制御部１１１は、ＡＤＲ１、ＡＤＲ２、ＡＤＲ３を正常に受信した場合も、即座にＡＡＣＫ信号を出力せずに、所定のウェイト期間を挿入して、ＡＡＣＫ信号を出力するようにする（ｔ３、ｔ４、ｔ５）。
【００６３】
ＡＡＣＫ信号が返されるまで、ＣＰＵ１００は待ち状態になるため、動作率が低減することになる。これにより、発熱が抑えられ、ＣＰＵ１００の温度が低下していくことになる。
【００６４】
なお、所定のウェイト期間は、電子機器の特性に応じて定めることができる。例えば、本実施例のように電子機器として印刷装置を用いた場合には、ＣＰＵ１００が、少なくとも印刷エンジンが要求する画像データの生成に間に合うようなウェイト期間とすることができる。また、ＣＰＵ１００の温度、温度上昇率等に応じてウェイト期間を動的に変化させるようにしてもよい。
【００６５】
また、ウェイト期間は、例えば、ＣＰＵ動作率制御部１１１にカウンタを設けておき、所定のウェイト期間に対応するクロック数をカウント（本図のＷａｉｔ＿ｃｎｔ）することで計測することができる。
【００６６】
図５は、動作率低減モードにおけるＣＰＵ動作率制御部１１１の処理を示すタイミング図である。本図は、データ制御信号であるＤＡＴＡＡＣＫＸにウェイトを入れた場合の例を示している。
【００６７】
本図でも図３と同様に、ＣＰＵ１００からメモリ制御装置１１０に対して、アドレス（ＡＤＲ０）の読み込み命令と、アドレス（ＡＤＲ１）の読み込み命令と、アドレス（ＡＤＲ２）へのデータ（Ｄ２）の書き込み命令と、アドレス（ＡＤＲ３）へのデータ（Ｄ３）の書き込み命令とが連続して行なわれる場合を示している。
【００６８】
ここでも、動作率通常モードとの差を中心に説明する。
【００６９】
動作率通常モードでは、図３のｔ６において、ＣＰＵ動作率制御部１１１は、ＡＤＲ１が示すデータを取得すると、即座に、ＤＡＴＡＡＣＫ信号を出力するとともに、ＤＡＴＡ信号に取得したデータ「Ｄ１」を出力するようにしていた。
【００７０】
しかしながら、ＤＡＴＡＡＣＫＸにウェイトを入れる動作率低減モードでは、前回のＤＡＴＡＡＣＫ信号の終了（図５のｔ１）から所定のウェイト期間を確保して、ＤＡＴＡＡＣＫＸ信号を出力するようにしている（図５のｔ２）。
【００７１】
同様に、ＣＰＵ動作率制御部１１１は、データＤ２、データＤ３の出力準備ができた場合も、即座にＤＡＴＡＡＣＫＸ信号を出力せずに、所定のウェイト期間を確保して、ＤＡＴＡＡＣＫ信号を出力するようにする（ｔ３、ｔ４）。
【００７２】
ＤＡＴＡＡＣＫＸ信号が返されるまで、ＣＰＵ１００は待ち状態になるため、動作率が低減することになる。これにより、発熱が抑えられ、ＣＰＵ１００の温度が低下していくことになる。
【００７３】
なお、本図の場合でも、所定のウェイト期間は、電子機器の特性に応じて定めることができる。また、ＣＰＵ１００の温度、温度上昇率等に応じてウェイト期間を動的に変化させるようにしてもよい。
【００７４】
さらに、ウェイト期間は、例えば、ＣＰＵ動作率制御部１１１にカウンタを設けておき、所定のウェイト期間に対応するクロック数をカウント（本図のＷａｉｔ＿ｃｎｔ）することで計測することができる。
【図面の簡単な説明】
【００７５】
【図１】印刷装置に搭載されるコントローラの構成の概要を示すブロック図。
【図２】ＣＰＵ動作率制御部のモード切り替え処理について説明するフロー図。
【図３】動作率通常モードにおけるＣＰＵ動作率制御部の処理を示すタイミング図。
【図４】動作率低減モードにおけるＣＰＵ動作率制御部の処理を示すタイミング図。
【図５】動作率低減モードにおけるＣＰＵ動作率制御部の処理を示すタイミング図。
【符号の説明】
【００７６】
１０…コントローラ、１００…ＣＰＵ、１１０…メモリ制御装置、１１１…動作率制御部、１１２…モード判定部、１２０…ＩＯ制御装置、１３０…ＲＡＭ、１４０…ＲＯＭ、１６０…画像処理装置
【図１】
2007199841.tif 000003
【図２】
2007199841.tif 000004
【図３】
2007199841.tif 000005
【図４】
2007199841.tif 000006
【図５】
2007199841.tif 000007