(57)【要約】【課題】印刷データを待っている待機状態でも、ＣＰＵ、バス制御部及びＩ／Ｏ制御部等の消費電力がほぼ等しく、無駄に電力を消費していた。また、連続印刷等の際にＣＰＵ、バス制御部及びＩ／Ｏ制御部等のＬＳＩが一定以上の温度になった場合、印刷動作を一旦停止する必要があった。【解決手段】印刷処理を行なわない待機時、或いはバス制御部の温度を検出し予め決めた温度以上になった場合、全体の基準クロックの周波数を許容範囲の動作周波数まで徐々に減少させる、或いは擬似的なＤＭＡ読出しを行なわせ、或いはバス制御部の出力バッファの駆動能力を下げる共にＩ／Ｏ制御部に駆動能力を下げたことを通知する。【選択図】      図１
2005018666.tif 000002
【特許請求の範囲】
【請求項１】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部を具備し、印刷処理を行なうプリンタ装置において
印刷処理を行なわない待機時に基準クロックの周波数を時間に対する許容周波数変化の許容範囲で徐々に減少させ、印刷処理開始時に基準クロックの周波数を時間に対する許容周波数変化の許容範囲で許容動作周波数まで徐々に増加させるクロック生成部を設けたことを特徴とするプリンタ装置。
【請求項２】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部を具備し、印刷処理を行なうプリンタ装置において
印刷処理を行なわない待機時に、前記バス制御部で使用しないアドレスを用い、予め決めた期間、及び周期にて擬似的なＤＭＡ読出しを行なうＤＭＡチャネル制御部を設けたことを特徴とするプリンタ装置。
【請求項３】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部と前記バス制御部の温度を検出する温度検出部を具備し、印刷処理を行なうプリンタ装置において
前記温度検出部の検出結果に基づき、基準クロックの周波数を時間に対する許容周波数変化の許容範囲で徐々に減少させ、或いは基準クロックの周波数を時間に対する許容周波数変化の許容範囲で許容動作周波数まで徐々に増加させるクロック生成部を設けたことを特徴とするプリンタ装置。
【請求項４】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部と前記バス制御部の温度を検出する温度検出部を具備し、印刷処理を行なうプリンタ装置において
前記温度検出部の検出結果に基づき、前記バス制御部で使用しないアドレスを用い、予め決めた期間及び周期にて擬似的なＤＭＡ読出しを行なうＤＭＡチャネル制御部を設けたことを特徴とするプリンタ装置。
【請求項５】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部と前記バス制御部の温度を検出する温度検出部を具備し、印刷処理を行なうプリンタ装置において
前記バス制御部の出力バッファは複数の駆動能力を有し、前記温度検出部の検出結果に基づき、前記駆動能力を設定すると共に、前記Ｉ／Ｏ制御部に通知することを特徴としたプリンタ装置。
【請求項６】
温度により遅延量が変わる基本遅延部と
異なる遅延量の遅延素子からなる遅延ラダ−部と
基本延素子の温度による遅延量から遅延値を検出する遅延値検出レジスタ部と遅延値検出レジスタ部の出力に基づき予め決めた温度に相当する遅延値を検出する遅延値検出部を前記バス制御部内に設けたことを特徴とする請求項５記載のプリンタ装置。
【請求項７】
前記温度検出部の検出結果に基づき、前記バス制御部の出力バッファの駆動能力を切替えると共に前記Ｉ／Ｏ制御部に通知することを特徴とした請求項１及び請求項３記載のプリンタ装置。
【請求項８】
前記温度検出部の検出結果に基づき、前記バス制御部の出力バッファの駆動能力を切替えると共に前記Ｉ／Ｏ制御部に通知することを特徴とした請求項２及び請求項４記載のプリンタ装置。
【請求項９】
印刷処理に用いられるコントローラにおいて、
印刷処理を行なわない待機時に基準クロックの周波数を時間に対する許容周波数変化の許容範囲で減少させ、印刷処理開始時に基準クロックの周波数を時間に対する許容周波数変化の許容範囲で許容動作周波数まで増加させるクロック生成部を設けたことを特徴とするコントローラ。
【請求項１０】
印刷処理に用いられるコントローラにおいて、
印刷処理を行なわない待機時に、前記バス制御部で使用しないアドレスを用い、予め決めた期間、及び周期にて擬似的なＤＭＡ読出しを行なうＤＭＡチャネル制御部を設けたことを特徴とするコントローラ。
【請求項１１】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部と周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部と前記バス制御部の温度を検出する温度検出部を具備するコントローラであって、
前記温度検出部の検出結果に基づき、基準クロックの周波数を時間に対する許容周波数変化の許容範囲で減少させ、或いは基準クロックの周波数を時間に対する許容周波数変化の許容範囲で許容動作周波数まで増加させるクロック生成部を設けたことを特徴とするコントローラ。
【請求項１２】
全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部と周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部と前記バス制御部の温度を検出する温度検出部を具備するコントローラであって、
前記温度検出部の検出結果に基づき、前記バス制御部で使用しないアドレスを用い、予め決めた期間及び周期にて擬似的なＤＭＡ読出しを行なうＤＭＡチャネル制御部を設けたことを特徴とするコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、待機時、或いは温度を検出し予め決めた温度以上になった場合に消費電力を低減するプリンタコントローラに関する。
【０００２】
【従来の技術】
図１９に記載したように、従来のプリンタコントローラは、プリンタコントローラ全体を制御する上位制御部１（以下「ＣＰＵ」という）とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのインタフェース（以下「Ｉ／Ｆ」という）制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納する読出し専用のメモリ（以下「ＲＯＭ」という）から構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なメモリ（以下「ＲＡＭ」という）から構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生する発信器６から構成される。（以下ＣＰＵ１、バス制御部２、Ｉ／Ｏ制御部３、ＲＯＭ部４、ＲＡＭ部５、発信器６等を「デバイス」という）
【０００３】
通常、バス制御部２とＩ／Ｏ制御部をＬＳＩにて構成するときは、外部ピンが多なり、またバス制御部２と比較してＩ／Ｏ制御部３には比較的低速な信号が多く存在するため、別々のＬＳＩに分割して構成する。
【０００４】
そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、ＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に発信器６の出力であるシステムクロック１３が接続されている。
【０００５】
印刷動作としては、例えば図示しないセントロＩ／Ｆ等でＩ／Ｏ制御部３に接続された周辺装置から印刷するデータが入力され、入力されたデータを基にＲＯＭ部４のプログラムに従いＣＰＵ１が適宜ＲＡＭ部５を使用し印刷するビットイメージに変換し、バス制御部２を経由し前記Ｉ／Ｏ制御部３に接続された図示しないプリンタユニットにビットイメージを送信することにより、印刷動作を行っている。
【０００６】
この従来のプリンタコントローラではパフォーマンスの向上のため、システムクロックの高速化を行ない、これによりパフォーマンスは向上したが、その反面、ＣＰＵや各種ＬＳＩの消費電力が増加傾向にあり、この対策の一つとして、ＬＳＩの微細化による電源電圧の低下等の対策が取られている。
【０００７】
ここで、プロセス、ゲート数が同一とした場合、ＬＳＩの消費電力の大小を左右する要素としては、１．クロックスピード、２．出力ピンの駆動能力、３．ＬＳＩ内部信号の単位時間あたりの電圧の変化（以下「変化率」という）、４．出力信号の変化率、５．ＲＡＭのビット単位信号の変化率等が上げられ、これらの数値が高いほど、消費電力の多いＬＳＩとなる。以下に簡単に各項目の理由を説明する。
【０００８】
１．クロック周波数について
高速回路を、ＬＳＩ開発の高級言語の一つであるＨＤＬ記述などを用い設計する場合、論理合成や遅延解析を容易にする目的で完全同期回路を目指す場合が多い。このような設計手法を取る場合、ＬＳＩ内部の主要なクロックをクロックツリー構成とし、各フリップフロップ（以下「Ｆ／Ｆ」という）に供給するクロックの遅れのずれ（以下「スキュー」という）を最小限に押さえる工夫がなされている。ＬＳＩ内部のＦ／Ｆの数が増えれば増えるほど、クロックのスキューを少なくするためクロックツリーを形成するためのゲート数は増加することになる。
【０００９】
また、ＬＳＩ内部では、前記主要なクロックがもっとも単位時間当たりの変化率が高い信号であるため、クロックツリー自体の電力消費を左右し、前記主要なクロックが接続されたＦ／Ｆ、及び前記Ｆ／Ｆの出力が入力される各回路の信号の変化率に影響を与え、当然消費電力にも影響を与える。
【００１０】
２．出力ピンの駆動能力について
ＬＳＩの出力ピンには、配線自身のインピーダンスである配線負荷や出力ピンに接続されるさまざまなデバイスの入力負荷が与えられる。これらの負荷条件の元で、回路上規定された遅延時間を満足する最小の駆動能力が選択される。
【００１１】
ここで言う駆動能力とは、ロウレベルを出力する際にはＬＳＩ内部に電流を流し込む能力を言い、ハイレベルを出力する際には電流を流し出す能力を言う。この能力が高いほど出力される信号の立ち上がり・立ち下がり時間は短くなるが消費電力は増える。
【００１２】
３．ＬＳＩ内部の信号の変化率について
内部信号の変化は、内部ゲートの出力がロウレベルからハイレベル、あるいはハイレベルからロウレベルに変化することを意味し、この際、内部ゲートで電流が流れるため内部信号の変化率が高いほど内部ゲートで消費される電力は大きくなる。
【００１３】
４．出力信号の変化率について
ＬＳＩの出力ピンには、出力ピンに接続される負荷容量と、出力ピンに接続される各種デバイスからの漏れ電流分の電荷が流れる。従ってロウレベルからハイレベル、あるいはハイレベルからロウレベルに変化する変化率が大きいほど、出力ピンの電流が多くなり消費電力は増える。
５．ＲＡＭ内部信号の変化率について
ＬＳＩ内部のＲＡＭは、データの書き込み、及び読出しの際に電流が流れ、電力が消費されＲＡＭ内部の信号の変化率が高ければ消費電力は大きくなる。
【００１４】
【特許文献１】
特開２０００−３９９３２号公報
【００１５】
【発明が解決しようとする課題】
プリンタコントローラは、印刷すべきデータを受信した後、印刷するビットイメージに変換し、プリンタユニットへイメージデータを送信することが主な機能であるが、従来のプリンタコントローラでは処理すべきデータが無いときでも電気的に同じ動作をしており、無駄に電力を消費している。すなわち、印刷すべきデータを待っている状態（以下「待機状態」という）においても、ＣＰＵ１やバス制御部２やＩ／Ｏ制御部３のＬＳＩ内部は印刷するデータを処理（以下「データ処理」という）しているときと比較して内部信号の変化率はやや低いが、クロック周波数や出力ピンの信号の変化率はほぼ等しく、消費電力に差がほとんどなく無駄に電力を消費していた。
【００１６】
一方、連続印刷などの場合、バス制御部２等の温度が上昇し動作可能な温度以上になった場合は、温度上昇を低減するために印刷動作を停止する必要があった。
【００１７】
本発明は、印刷すべきデータがない待機時、或いはバス制御部等の温度が一定以上の温度となった場合、最小限必要なコントローラの能力値を確保し、正常な印刷動作を可能とし、かつ消費電力を低減しようとするものである。
【００１８】
【課題を解決するための手段】
本発明は、前述の課題を解決するためにＣＰＵ１とバス制御部２とＩ／Ｏ制御部３とＲＯＭ部４、ＲＡＭ部５からなるプリンタコントローラにおいて以下の構成を採用する。
【００１９】
〈構成１〉全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部を具備し、印刷処理を行なうプリンタ装置において印刷処理を行なわない待機時に、全体の基準クロックの周波数を許容範囲の動作周波数まで徐々に減少させるクロック生成部を設けた。
【００２０】
〈構成２〉全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部を具備し印刷処理を行なうプリンタ装置において、前記バス制御部は上位制御部の命令により内部バスを制御するインタフェース部と内部バスのアドレス、データの入出力を制御する内部バスインタフェース部と時間を計測するタイマー部及びプリンタコントローラに接続される周辺装置とデータの読出し書込み可能なメモリ部間の印刷画像データを送受信するのためのＤＭＡチャネル制御を行なうＤＭＡチャネル制御部から構成され、印刷処理を行わない待機時に、使用しないアドレスを用い予め決めた期間、及び周期にて擬似的なＤＭＡ読出しを行なう構成とした。
【００２１】
〈構成３〉全体を制御する上位制御部と各部にアドレス、データ、及び制御信号を出力するバス制御部とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部とデータの読出し書込み可能なメモリ部を具備し印刷処理を行なうプリンタ装置において、前記バス制御部は上位制御部の命令により内部バスを制御するインタフェース部と内部バスのアドレス、データの入出力を制御する内部バスインタフェース部と時間を計測するタイマー部及びプリンタコントローラに接続される周辺装置とデータの読出し書込み可能なメモリ部間の印刷画像データを送受信するのためのＤＭＡチャネル制御を行なうＤＭＡチャネル制御部から構成され、印刷処理を行なわない待機時に、使用しないアドレスを用い予め決めた期間及び周期にて擬似的なＤＭＡ読出しを行なう構成とした。
【００２２】
〈構成４〉前記バス制御部に組込まれ、温度により遅延量が変わる基本遅延部と異なる遅延量の遅延素子からなる遅延ラダ−部と基本延素子の温度による遅延量から遅延値を検出する遅延値検出レジスタ部を具備し、遅延値検出レジスタ部の出力に基づき予め決めた温度に相当する遅延値を検出する遅延値検出部を設けた。
【００２３】
〈構成５〉前記バス制御部の温度を検出する温度検出部と前記温度検出部の検出結果に基づき、前記バス制御部の出力バッファの駆動能力を切替えると共に前記Ｉ／Ｏ制御部に通知し、さらに全体の基準クロックの周波数を許容範囲の動作周波数まで徐々に減少させるクロック生成部を設けた。
【００２４】
〈構成６〉前記バス制御部の温度を検出する温度検出部と前記温度検出部の検出結果に基づき、前記バス制御部の出力バッファの駆動能力を切替えると共に前記Ｉ／Ｏ制御部に通知し、さらに使用しないアドレスを用い予め決めた期間、及び周期にて擬似的なＤＭＡ読出しを行なう構成とした。
【００２５】
【発明の実施の形態】
以下、本発明実施の形態を図面に従って説明する。なお、各図面に共通する要素には同一符号を付す。
【００２６】
以下、本発明の実施の形態を具体例を用いて詳細に説明する。
【００２７】
《実施形態１》
実施形態１のプリンタコントローラでは、消費電力を低減する手段としてＣＰＵ１等の周波数変化率の許容範囲内でｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に減少することによりシステム全体の周波数を減少するものである。この課題を解決するために以下の構成を採用する。
【００２８】
〈構成〉
図１は、実施形態１のプリンタコントローラの構成図であり、実施形態１のプリンタコントローラはプリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生するクロック生成部１６から構成される。
【００２９】
そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、クロック生成部２０の入力にはバス制御部２からＤバスが接続されており、クロック生成部制御信号２１が接続されており、クロック生成部２０の出力であるシステムクロック２２がＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に接続されている。
【００３０】
図２は、実施形態１のプリンタコントローラのクロック生成部２０の内部回路である。このクロック生成部２０はリニアに周波数を変化させることを可能とするために以下の構成を採用している。
【００３１】
すなわち、クロック生成部２０はデジタルアナログ変換器であるＤ／Ａコンバータ（２０−１）、Ｄ／Ａコンバータ（２０−１）の出力電圧を増幅する増幅器Ａ１（２０−２）及び反転増幅器としての増幅器Ａ２（２０−３）、及び電圧周波数変換を行なうＶＣＯ部（２０−４）から構成される。
【００３２】
そして、Ｄ／Ａコンバータ（２０−１）の入力にはバス制御部２の出力であるＤバス９、及びクロック生成部制御信号２１が接続され、最終段のＶＣＯ部（２０−４）出力がシステムクロック２２として出力されている。
【００３３】
また、前記増幅器Ａ１（２０−２）にはＤ／Ａコンバータ（２０−１）の出力信号から量子化ノイズをカットするフィルタとしてＣ１、Ｒ１が接続され、増幅器Ａ１（２０−２）の出力を一旦分圧し、反転増幅するために増幅器Ａ２（２０−３）にＲ３，Ｒ４、Ｒ５、Ｒｆが接続され、増幅器Ａ２（２０−３）の出力がＶＣＯ部（２０−４）に接続されている。Ｄ／Ａコンバータ（２０−１）には基準電圧であるＶｒｅｆ電圧がＲ２を経由し接続され、また電源電圧ＶＤＤが供給されている。また、図示していないが、増幅器Ａ１（２０−２）、増幅器Ａ２（２０−３）、ＶＣＯ部（２０−４）に正電源としてＶＤＤ、負電源として−ＶＤＤが接続されている。ここで、通常、基準電圧ＶｒｅｆをＤ／Ａコンバータ（２０−１）に接続するＲ２は１ＫΩ程度であり、Ｄ／Ａコンバータ（２０−１）の出力信号から量子化ノイズをカットするフィルタとしてのＣ１、Ｒ１は０．０１μＦ、１ＫΩ程度とし、分圧のためのＲ３、Ｒ４、及び増幅器Ａ２（２０−３）のフィードバック抵抗は１０ＫΩ程度とし、増幅器Ａ２（２０−３）の−端子に接続されたオフセット防止用の抵抗は５ＫΩ程度とするのがよい。
【００３４】
ここでＶＣＯ部（２０−４）は、図３のように横軸の制御電圧Ｖｉｎを入力とし、前記入力電圧に対応した縦軸の周波数変動量のクロックを出力するものである。すなわち、本例では入力電圧が５Ｖの場合は最高周波数ｆＭａｘ（周波数変動量０％）で発振し、２．５Ｖでは２０％低い周波数で発振し、０Ｖの場合は４０％低い周波数で発振する。そして前記発振信号を整形し、クロックを生成する。
【００３５】
一方、ＶＣＯ部（２０−４）の制御電圧Ｖｉｎを生成するＤ／Ａコンバータ（２０−１）はバス制御部２からＤバス、及びクロック生成部制御信号２１が接続され、バス制御部２から出力されるＤバス上の８ビットのデータがクロック生成部制御信号２１によりＤ／Ａコンバータへ書き込まれ、前記書き込まれたデータを図４のデジタル入力として、アナログ出力（Ｖ）を得るものである。図４のＭＳＢは最上位ビットを示し、ＬＳＢは最下位ビットを示す。また、ＶｒｅｆはＲ２を経由しＤ／Ａコンバータ（２０−１）に供給する基準電圧である。
【００３６】
例えば、Ｄ／Ａコンバータ（２０−１）に、“１１１１１１１１“をセットした場合は、Ｖｒｅｆ＊１２７／１２８（Ｖ）が出力され、“１０００００００”をセットした場合は０Ｖが出力され、“００００００００”をセットした場合は、−Ｖｒｅｆ＊１２７／１２８（Ｖ）が出力される。なお、実施形態１のプリンタコントローラのＶＣＯ部（２０−４）が０Ｖから５Ｖの範囲の入力に対応するものであるのでＤ／Ａコンバータ（２０−１）には０Ｖ以下の出力が得られる“１０００００００”より小さいデジタル入力のセットは行なわない。
【００３７】
ここで、ＶＣＯ部（２０−４）のＶｉｎ制御電圧の最大値が５Ｖとする場合、Ｄ／Ａコンバータ（２０−１）の最大デジタル入力である“１１１１１１１１“で５Ｖを出力する必要があるので、Ｖｒｅｆの値は、Ｖｒｅｆ  ＊（１２７／１２８）＝５Ｖ  からＶｒｅｆ＝５Ｖ＊（１２８／１２７）＝５．３９Ｖとする。
【００３８】
〈動作〉
以上のように構成された実施形態１のプリンタコントローラのクロック生成部２０は、以下のように動作する。
【００３９】
通常動作モード時において、Ｄ／Ａコンバータ（２０−１）には“１１１１１１１１“がセットされており、最高周波数ｆＭａｘのシステムクロック２２でプリンタコントローラは動作している。
【００４０】
ＣＰＵ１は図示しないＣＰＵ１内のタイマーを用い、セントロニクスＩ／Ｆ等からの印刷データの受信が一定期間途絶えたことを検出し、印刷データの受信が途絶えたことを検出すると、待機モード移行処理とするようにバス制御部２に通知する。
【００４１】
バス制御部２は、待機モード移行処理の通知を受領し、システムクロック２２であるｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に下げる処理を行なう。待機モード移行処理では、図示しないバス制御部２のタイマーの割り込み処理等により一定間隔Ｔ１毎にＤ／Ａコンバータ（２０−１）の値を１ビット単位ずつ減らしていく。
【００４２】
そして、Ｄ／Ａコンバータ（２０−１）の値を“１０００００００”までをセットすると最低周波数ｆＭｉｎ（本実施例では−４０％、すなわち０．６＊ｆＭａｘ）までｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を下げ、以降は待機モードとし、この最低周波数ｆＭｉｎのままとする。
【００４３】
一方、待機モード中、もしくは待機モード移行処理中に、セントロニクスＩ／Ｆ等から印刷データを受信した場合は、ＣＰＵ１は通常動作モード移行処理に入るようにバス制御部２に通知し、バス制御部２は、図示しないバス制御部２のタイマーの割り込み処理等により一定間隔Ｔ１毎に待機モードにてＤ／Ａコンバータ（２０−１）にセットした値“１０００００００”から１ビット単位ずつ加算し、Ｄ／Ａコンバータ（２０−１）にセットし、通常動作時の周波数までｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に増加させる。
【００４４】
ここで、ｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数変化は、ＣＰＵ１、バス制御部２、Ｉ／Ｏ制御部３の周波数変化率の許容値を満たした条件で徐々に周波数を低下、或いは増加させる必要がある。通常、ｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数の最大周波数２０ＭＨｚの場合、数１００ＫＨｚ／秒程度が周波数変化率の許容値であるので、Ｄ／Ａコンバータ（２０−１）へのセット値では１ビット／秒程度で増加、あるいは減少させる。
【００４５】
〈効果〉
以上のように、実施形態１のプリンタコントローラではセントロニクスＩ／Ｆ等から印刷データが途絶えた場合は、ＣＰＵ１等の周波数変化許容値の範囲内でｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に減少することにより、待機時のコントローラの消費電力を低減することができ、印刷データがセントロニクスＩ／Ｆ等から入力された場合にはＣＰＵ１等の周波数変化許容値の範囲内でｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に増加することにより、通常モードに移行することができる。
【００４６】
（（実施形態２））
実施形態１のプリンタコントローラでは、消費電力を低減する手段としてＣＰＵ１等の周波数変化率の許容範囲内でｓｙｓｔｅｍ＿ｃｌｏｃｋ信号の周波数を徐々に減少することによりシステム全体の周波数を減少する構成としたが消費電力の低減の効果はあるが、比較的高価なＤ／Ａコンバータ（２０−１）、ＶＣＯ部（２０−４）等が必要であり、また回路規模が大きくなると言う欠点があった。そこで、実施形態２のプリンタコントローラは、システムクロックの周波数を減少させるのではなく、前記ＬＳＩ内部、及び外部信号の変化率を低減させることにより、待機時の消費電力を減らそうとするものである。この課題を解決するために以下の構成を採用する。
【００４７】
（構成）
図５は、実施形態２のプリンタコントローラの構成図であり、バス制御部２以外は実施形態１のプリンタコントローラと同様の構成となっている。すなわち実施形態２のプリンタコントローラは、プリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生する発信器６から構成される。そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、クロック生成部２０の入力にはバス制御部２からＤバスが接続されており、クロック生成部制御信号２１が接続されており、クロック生成部２０の出力であるシステムクロック２２がＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に接続されている。
【００４８】
バス制御部２は、ＣＰＵ１と直接接続され内部バス２−２０を制御するＣＰＵＩ／Ｆ部２−１と内部バス２−２０のアドレス、データバスのバッファとして機能する内部バスＩ／Ｆ部２−２と印刷画像を圧縮伸長処理する画像圧縮伸長処理部２−３と前記画像圧縮伸長処理部２−３の印刷画像データの送受信制御を行なうＤＭＡ制御部２−４とＩ／Ｏ制御部３に接続されるプリンタユニットとＲＡＭ部間の印刷画像データ送受信のためのＤＭＡチャネル制御を行なうＤＭＡチャネル制御部２−５とＲＯＭ部を制御するＲＯＭ部制御信号を発生するＲＯＭ制御部２−６とＲＡＭ部を制御するＲＡＭ部制御信号を発生するＲＡＭ制御部２−７とＣＰＵ１からの仮想アドレスを実アドレスに変換する機能を有するメモリマップレジスタ部２−８とバス制御部２内の各部Ｆ／Ｆのクロックのスキューをなくすためのクロックツリーシンセシス部（以下「ＣＴＳ部」という）２−９と割り込みを制御する割り込みコントローラ２０−１０とタイマーから構成されるタイマー部２０−１１から構成される。ここで、内部バス２−２０はアドレス、データ、及びリード／ライド等の制御信号から構成される。（以下バス制御部２内の各部を「モジュール」という）
【００４９】
ＣＰＵＩ／Ｆ部２−１の入力にはＣＰＵ１の出力が接続され、ＣＰＵＩ／Ｆ部２−１の出力が内部バス２−２０に接続されており、ＣＰＵ１からのアドレス、データ、制御信号がＣＰＵＩ／Ｆ部２−１を経由して内部バス２−２０に接続されている。また、内部バスＩ／Ｆ部２−２の入力側には内部バス２−２０が接続されており、出力側にＩ／Ｏ制御部３、ＲＯＭ部４、ＲＡＭ部５が接続されている。また、内部バス２−２０は画像圧縮伸長処理部２−３、ＤＭＡ制御部２−５、ＤＭＡチャネル制御部２−６、ＲＯＭ制御部２−７、ＲＡＭ制御部２−７、レジスタ部２−８、タイマー部２０−１１に接続されている。
【００５０】
さらにＣＴＳ部２−９の入力には発信器６の出力が接続されており、各部のクロックのスキューが最小になるようにＣＴＳ部２−９の出力がＣＰＵＩ／Ｆ部２−１、内部バスＩ／Ｆ部２−２、画像圧縮伸長処理部２−３、ＤＭＡ制御部２−４、ＤＭＡチャネル制御部２−５、ＲＯＭ制御部２−６、ＲＡＭ制御部２−７、レジスタ部２−８、割り込みコントローラ２０−１０に接続されている。
【００５１】
（動作）
以上のように構成された実施形態２のプリンタコントローラは、以下のように動作する。
【００５２】
図６、図７は実施形態２のプリンタコントローラＲＡＭ５へのライトアクセス、及びリードアクセス時のタイムチャートである。ここで図中の各信号は以下の機能を有する。また、各信号の末尾の−ｎは該信号がロウレベルでアクティブとなることを示す。
【００５３】
ｓｙｓｔｅｍ＿ｃｌｏｃｋ信号は発信器６の出力であるシステムクロック１３である。本信号の上部に付した数字はクロックの立ち上げタイミングを示す。ＣＰＵＩ／Ｆ部２−１、内部バスＩ／Ｆ部２−２等の各部のクロックはｓｙｓｔｅｍ＿ｃｌｏｃｋ１３を入力としＣＴＳ部の出力クロックであり、ｓｙｓｔｅｍ＿ｃｌｏｃｋ１３から若干遅れたタイミングとなるが、便宜上、以下の動作の説明ではｓｙｓｔｅｍ＿ｃｌｏｃｋ１３のタイミングとして説明する。
【００５４】
ａｓｔｂ−ｎ信号はＣＰＵＩ／Ｆ部２−１が内部バス２−２０のアドレスバスに有効アドレスを出力したことを示す信号であり、ｄｓｔｂ−ｎ信号はＣＰＵＩ／Ｆ部２−１が内部バス２−２０のデータバスに有効データを出力したことを示す信号である。
【００５５】
ａｄｄｒｅｓｓ信号は内部バス２−２０のアドレスバスのアドレスデータであり、ｄａｔａ信号は内部バス２−２０のデータバスのデータ信号であり、ライトアクセス時はアクセス対象のモジュールへのライトデータであり、リードアクセスの場合はアクセス対象のモジュールからの出力データである。
【００５６】
ｗｒ−ｎ信号はライトアクセス時ロウレベルとなり、前記データバスのデータをアクセス対象のモジュールに書き込む制御信号であり、ｒｄ−ｎ信号はリードアクセス時ロウレベルとなり、アクセス対象のモジュールからのデータを前記データバスに出力させる制御信号である。
【００５７】
ａａｃｋ−ｎ信号信号はアクセス対象のモジュールが、アドレスを受け取ったことをＣＰＵＩ／Ｆ部２−１に通知する信号であり、ｄａｃｋ−ｎ信号信号は、ライトアクセス時はアクセス対象のモジュールがデータを受け取ったことをＣＰＵＩ／Ｆ部２−１に通知する信号でありリード時はアクセス対象のモジュールがデータを出力したことをＣＰＵＩ／Ｆ部２−１に通知する信号である。
【００５８】
ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号はＤＭＡチャネル制御部２−５がＣＰＵ１へバス権の譲渡を要求する信号であり、ＣＰＵＩ／Ｆ部２−１はこの信号を受信すると、ＣＰＵ１からバス権を奪い、ｂｕｓ＿ｇｒａｎｔ−ｎ信号を出力し、ＤＭＡチャネル制御部２−５にバス権を与え、ＤＭＡチャネル制御部２−５はアクセス終了後、前記ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号をインアクティブとすると、バス権が再びＣＰＵ１に戻る。ここでｂｕｓ−ｇｒａｎｔ−ｎ信号はＣＰＵＩ／Ｆ部２−１が、ＤＭＡチャネル制御部２−５に対し、バス権を与える信号である。
【００５９】
図６はＣＰＵ１からのライトアクセスの動作を示すタイムチャートであり、まず、ＣＰＵＩ／Ｆ部２−１は、ＣＰＵ１からの命令によりアクセス対象のアドレスＡ１を内部バス２−２０のアドレスバスに出力し、アドレスバスに有効アドレスを出力したことを示すａｓｔｂ−ｎ信号をロウレベルとし、ライトアクセスであるため、ｗｒ−ｎ信号をロウレベルとする。さらにライトデータＤ１をデータバスに出力し、データバスに有効データを出力したことを示す信号であるｄｓｔｒｂ−ｎ信号をロウレベルとする。（クロック１）
【００６０】
これに応答して、ライトアクセス対象のモジュールは、アドレスを受け取ったことを示す信号であるａａｃｋ−ｎ信号、及びデータを受け取りライトアクセス動作が完了したことを示すｄａｃｋ−ｎ信号をロウレベルとして出力する。（クロック２）
【００６１】
ＣＰＵＩ／Ｆ部２−１は、アクセス対象のモジュールからａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号を受け取るとアクセスを終了して良いと判断し、アクセスを終了させる。（クロック３）
【００６２】
ここで、例えば、デバイスの一つであるＲＡＭ部５へのライトアクセスは、ライトアクセス対象モジュールとしてＲＡＭ制御部２−７が選択され、ＲＡＭ制御部２−７にデータが一旦書き込まれ、その後ＲＡＭ制御２−７がＲＡＭ制御信号１２及び内部バスＩ／Ｆ２−２を経由しＡバス８、Ｄバス９に出力されたアドレス、データによりＲＡＭにデータが書き込まれる。
【００６３】
一方、図７はＣＰＵ１からのリードアクセスの動作を示すタイムチャートであり、まず、ＣＰＵＩ／Ｆ部２−１は、ＣＰＵ１からの命令によりアクセス対象モジュールのアドレスＡ１をアドレスバスに出力し、アドレスバスに有効アドレスを出力したことを示すａｓｔｂ−ｎ信号をロウレベルとし、リードアクセスであるため、ｒｄ−ｎ信号をロウレベルとしアクセス対象モジュールからデータが出力されるのを待つ。（クロック１）
【００６４】
これに応答して、リード対象のモジュールは、アドレスを受け取ったことを示す信号であるａａｃｋ−ｎ信号をロウレベルとして出力すると共にデータＤ１をデータバスに出力する。ここでｄｓｔｒｂ−ｎ信号はリードアクセスのためハイレベルのままである。（クロック２）
【００６５】
ＣＰＵＩ／Ｆ部２−１は、アクセス対象モジュールからａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号を受け取ると、データバスのデータＤ１をリードし、アクセスを終了して良いと判断し、アクセスを終了させる。（クロック３）
【００６６】
図８は、通常時のＤＭＡチャネル制御部２−５によるＤＭＡの動作を示すタイムチャートであり、まず、ＤＭＡ転送要求がＤＭＡ転送要求元モジュールからＤＭＡチャネル制御部２−５に入力されＤＭＡチャネル制御部２−５がＤＭＡ転送要求信号を認識すると内部バス２−２０の調停を行なうＣＰＵＩ／Ｆ部２−１に対しバス権を要求する信号であるｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号をロウレベルとする。（クロック１）
【００６７】
ＣＰＵＩ／Ｆ部２−１は、ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号を認識すると、ＣＰＵ１とバス調停を行ないバス権が確保されると、バスの使用許可信号であるｂｕｓ−ｇｒａｎｔ−ｎ信号をロウレベルとする。（クロック３）
【００６８】
ＤＭＡチャネル制御部２−５は、このｂｕｓ＿ｇｒａｎｔ−ｎ信号を受けると、ＤＭＡ転送要求元デバイスのアドレスをアドレスバスに出力し、有効アドレスを出力したことを示すａｓｔｂ−ｎ信号をロウレベルとすると共に、ｒｄ−ｎ信号をロウレベルとする。（クロック４）
【００６９】
ＤＭＡチャネル制御部２−５は、ＤＭＡ転送要求元モジュールからデータＲＤをリードする。このとき、ＤＭＡ転送要求元モジュールからａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号が出力される。（クロック５）
【００７０】
ＤＭＡチャネル制御部２−５は、前記データＲＤを一旦メモリマップレジスタ部２−８へデータを一時保管する。（クロック６）
【００７１】
次に、ＤＭＡチャネル制御部２−５はＤＭＡ転送先へのライトアクセスを発生させ、ＤＭＡ転送先アドレスをアドレスバスに出力し、ａｓｔｂ−ｎ信号、ｄｓｔｂ−ｎ信号をロウレベルとし、ｗｒ−ｎ信号をロウレベルとし、メモリマップレジスタ部２−８からデータバスへデータを出力する。（クロック７）
【００７２】
ＤＭＡチャネル制御部２−５は、ＤＭＡ転送先からデータを受信した旨のａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号を受信するとライトアクセスが完了したことを認識しアクセスを完了させる。この後、ＤＭＡチャネル制御部２−５は、ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号をハイレベルに戻し、バス権をＣＰＵに返す。（クロック９）
【００７３】
一方、図９はプリンタコントローラの電力消費の低減を行なうための擬似ＤＭＡアクセルの動作を示すタイムチャートである。ここで擬似ＤＭＡアクセスは、実施形態１のプリンタコントローラと同様に、図示しないＣＰＵ１内のタイマーを用い、ＣＰＵ１がセントロニクスＩ／Ｆ等からの印刷データの受信が一定期間途絶えたことを検出し、待機モード移行処理とするようにＤＭＡチャネル制御部２−５に通知し、これをＤＭＡチャネル制御部２−５が受信することにより一定周期で発生させるものである。以下、擬似ＤＭＡアクセスの動作を詳細に説明する。
【００７４】
まず、ＤＭＡ転送要求がＤＭＡ転送要求元モジュールからＤＭＡチャネル制御部２−５に入力されＤＭＡチャネル制御部２−５がＤＭＡ転送要求信号を認識すると内部バス２−２０の調停を行なうＣＰＵＩ／Ｆ部２−１に対しバス権を要求する信号であるｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号をロウレベルとする。（クロック１）
【００７５】
ＣＰＵＩ／Ｆ部２−１は、ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号を認識すると、ＣＰＵ１とバス調停を行ないバス権が確保されると、バスの使用許可信号であるｂｕｓ−ｇｒａｎｔ−ｎ信号をロウレベルとする。（クロック３）
【００７６】
ＤＭＡチャネル制御部２−５は、このｂｕｓ＿ｇｒａｎｔ−ｎ信号を受けると、使用されないアドレス、例えば全ビット１のアドレスをアドレスバスに出力し、ｒｄ−ｎ信号をロウレベルとする。ここで、擬似ＤＭＡアクセスであるので有効アドレスを出力したことを示すａｓｔｂ−ｎ信号、及び有効データを出力したことを示すｄｓｔｂ−ｎ信号はハイレベルのままとする。そして、一定時間バス権を取得するアクセスを発生させるためにＤＭＡチャネル制御部２−５内の図示しないＤＭＡカウンタに例えばｍをロードする。（クロック４）
【００７７】
ＤＭＡチャネル制御部２−５は、以降のクロックごとにＤＭＡチャネル制御部２−５内の前記カウンタ値を−１し、カウンタ値が０となると擬似ＤＭＡを終了し、ｒｄ−ｎ信号をハイレベルとし、ｂｕｓ＿ｒｅｑｕｅｓｔ−ｎ信号をハイレベルに戻し、バス権をＣＰＵに返す。（クロック５〜クロック１０）
【００７８】
待機モード中は、以上の擬似アクセスを予め決めた周期で繰り返し行なう。そしてＣＰＵ１がセントロニクスＩ／Ｆ等からの印刷データの受信を検出したとき、待機モードを解除しＤＭＡチャネル制御部２−５に通知することにより、ＤＭＡチャネル制御部２−５は次のクロックにて前記ＤＭＡカウンタをリセットすると共に、各信号をクロック１０のような初期状態とする。
【００７９】
以上のように擬似ＤＭＡアクセス中は、ｒｄ−ｎ信号以外のａｓｔｂ−ｎ信号、ｄｓｔｂ−ｎ信号、ｗｒ−ｎ信号は擬似ＤＭＡアクセス中ハイレベルとすることにより内部バス２−２０、及びＲＯＭ制御部２−６、ＲＡＭ制御部２−７等の出力を固定し、また、ｒｄ−ｎ信号がロウレベルとすることにより、内部バスＩ／Ｆ部２−２を入力モードとしＤバス９からＩ／Ｏ制御部３、ＲＯＭ部４、ＲＡＭ部５等への余分な電流の流出を押さえる。さらに、使用されない固定アドレスをアドレスデータとして設定しているのでＩ／Ｏ制御部３、ＲＯＭ部４、ＲＡＭ部５等からの無駄な出力電流も発生させない。従って、待機モード中に一定期間、一定周期で、擬似ＤＭＡアクセスを発生させることにより、待機時の消費電力の低減が可能となる。
【００８０】
（効果）
以上のように、実施形態２のプリンタコントローラでは、クロック周波数の制御を行なわず、擬似ＤＭＡアクセスを発生させるだけで消費電力を低減できるので、クロック周波数を制御を行なうためのＤ／ＡコンバータやＶＣＯ素子のような高価な部品を使う必要がなく、回路規模も小さくすることができる。
【００８１】
（（実施形態３））
実施形態３のプリンタコントローラでは、消費電力を低減する手段として、ＬＳＩパッケージの中心位置にサーミスタを備え、予め決めた温度以上になった場合、外部ピンのドライバを低消費電力モードとすると共に、外部ピン接続先へ低消費電力モードを通知することにより、消費電力を減らそうとするものである。この課題を解決するために以下の構成を採用する。
【００８２】
（構成）
図１０は実施形態３のプリンタコントローラの構成図である。実施形態３のプリンタコントローラは実施形態１のプリンタコントローラと同様にプリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生する発信器６とバス制御部２に取り付けられたサーミスタ３０とサーミスタの出力から予め決めた温度以上であることを検出する温度検出部３１から構成される。
【００８３】
そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、クロック生成部２０の入力にはバス制御部２からＤバスが接続されており、クロック生成部制御信号２１が接続されており、クロック生成部２０の出力であるシステムクロック２２がＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に接続されている。そして、サーミスタ３０からの出力が温度検出部３１に接続され、温度センサ３２の出力がバス制御部に接続され、前記予め決めた温度以上になったことを示すＬｉｍｉｔ−ｎ信号３２がバス制御部２に接続され、バス制御部２からｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３をＩ／Ｏ制御部３へ接続する構成となっている。
【００８４】
図１１は温度検出部３１及びその周辺の回路図であり、比較器Ｃ１（３１−１）と抵抗Ｒ１１からＲ１５、コンデンサＣ１０から構成され、５Ｖに接続された抵抗Ｒ１１がサーミスタ３０の片側に接続され、サーミスタのもう１つの片側が０Ｖに接続されている。この接続により、サーミスタの抵抗値をＲｔとすると、サーミスタの抵抗値Ｒｔにより分圧された５Ｖ＊Ｒｔ／（Ｒｔ＋Ｒ１１）がオペアンプＣ１（３１−１）の−端子に入力され、比較器Ｃ１（３１−１）の＋端子には抵抗Ｒ１２、Ｒ１３により分圧された電圧５Ｖ＊Ｒ１３／（Ｒ１２＋Ｒ１３）が入力される。また、ノイズ等によりＬｉｍｉｔ−ｎ信号３２の波形割れを防止するためのヒステリシスとして機能する抵抗Ｒ１４、比較器の出力であるＬｉｍｉｔ−ｎ信号３２の波形割れを防止するための積分回路として抵抗Ｒ１５、コンデンサＣ１０が接続されている。
【００８５】
図１２は実施形態３のプリンタコントローラの入出力バッファ３４の回路図である。この入出力バッファ３４はバス制御部２のＬＳＩ外部ピン３５毎に用意されているものであり、各入出力バッファ３４は出力用バッファＢＦ１（３４−１）、出力用ＢＦ２（３４−２）、入力用バッファＢＦ３、及びスイッチ３４−４から構成される。そして出力用バッファＢＦ１（３４−１）、及びスイッチ３４−４の入力に入出力バッファ３４の入力であるｏｕｔｐｕｔ＿ｄａｔａが接続されており、スイッチ３４−４の出力が出力用ＢＦ２（３４−２）に接続され、スイッチ３４−４の制御としてｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が接続されている。また、ＬＳＩ外部ピン３５からの入力が入力用バッファＢＦ３（３４−３）に接続されており、該出力がｉｎｐｕｔ＿ｄａｔａとして出力されている。
【００８６】
例えば、ｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が０でスイッチ３４−４がオフされると、出力用バッファＢＦ１（３４−１）にのみｏｕｔｐｕｔ＿ｄａｔａが入力され、ｏｕｔｐｕｔ＿ｄａｔａが１のときに出力用バッファＢＦ１（３４−１）内のトランジスタがオンし、ＬＳＩ外部ピン３５に接続された接続先の端子の電圧を０Ｖにするようにドライブする。一方ｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が１の場合はスイッチ３４−４がオンされ、出力用バッファＢＦ１（３４−１）、及び出力用バッファＢＦ２（３４−２）にｏｕｔｐｕｔ＿ｄａｔａが入力され、ｏｕｔｐｕｔ＿ｄａｔａが１のときに出力用バッファＢＦ１（３４−１）、及び出力用バッファＢＦ２（３４−２）内のトランジスタがオンとなり、ＬＳＩ外部ピン３５に接続された接続先の端子の電圧を０Ｖにするようにドライブする。
【００８７】
従ってｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が１の場合は、出力用バッファＢＦ１（３４−１）、及び出力用バッファＢＦ２（３４−２）の両方のトランジスタでドライブするため消費電力は高くなるが、駆動の能力が高くなり高速に駆動することができ、ｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が０の場合は、ｄｒｉｖｅ＿ｃｏｎｔｒｏｌ信号が０の場合は、出力用バッファＢＦ１（３４−１）のみのトランジスタでドライブするため消費電力は低いが、駆動能力が低く、低速な駆動となる。
【００８８】
以上のように、実施形態３の入出力バッファ３４は２段の出力ドライブ能力を有する入出力バッファであり、消費電流は大きいが駆動能力が高い高駆動モードと、駆動電力は低いが、消費電力が少ない低駆動モードを有する入出力バッファから構成される。
【００８９】
（動作）
以上のように構成された実施形態３のプリンタコントローラは、以下のように動作する。図１３は実施形態３のプリンタコントローラのＩ／Ｏ制御部３をアクセスする通常の動作、即ち前記高駆動モードでの動作を示すタイムチャートである。ここで図中の各信号は以下の機能を有する。また、バス制御部２内の各部の説明については図５を引用して説明する。
【００９０】
ｓｙｓｔｅｍ＿ｃｌｏｃｋ信号は発信器６の出力であるシステムクロック１３である。本信号の上部に付した数字はクロックの立ち上げタイミングを示す。バス制御部クロック信号は、バス制御部２内の基準クロックであり、Ｉ／Ｏ制御部クロックはＩ／Ｏ制御部３内の基準クロックである。バス制御部クロック信号、及びＩ／Ｏ制御部クロックはｓｙｓｔｅｍ＿ｃｌｏｃｋ信号から配線遅延等により遅れたクロックとなっている。
【００９１】
ｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３は１のとき、Ｉ／Ｏ制御部３に前記低駆動モードとさせ、０のときはＩ／Ｏ制御部３に低駆動モードとさせる信号であり、ａｄｄｒｅｓｓ信号は、バス制御部２のアドレス出力であるＡバス８のアドレス信号である。
【００９２】
ａｓｔｂ−ｎ信号はバス制御部２内のＣＰＵＩ／Ｆ部２−１が内部バス２−２０のアドレスバスに有効アドレスを出力したことを示す信号であり、バス制御部２の出力であるＩ／Ｏ制御部制御信号１０中の一つの信号であり、ｗｒ−ｎ信号はライトアクセス時ロウレベルとなり、データバスのデータをアクセス対象のモジュールに書き込む制御信号でであり、バス制御部２の出力であるＩ／Ｏ制御部制御信号１０中の一つの信号である。
【００９３】
ｄａｔａ信号はバス制御部３の入出力データであるＤバス９のデータ信号であり、ｄｓｔｂ−ｎ信号はバス制御部２内のＣＰＵＩ／Ｆ部２−１が内部バス２−２０のデータバスに有効データを出力したことを示す信号であり、バス制御部２の出力であるＩ／Ｏ制御部制御信号１０中の一つの信号である。
【００９４】
ａａｃｋ−ｎ信号信号はＩ／Ｏ制御部３が、アドレスを受け取ったことをＣＰＵＩ／Ｆ部２−１に通知する信号であり、ｄａｃｋ−ｎ信号信号は、ライトアクセス時はＩ／Ｏ制御部３がデータを受け取ったことをバス制御部２内のＣＰＵＩ／Ｆ部２−１に通知する信号であり、リードアクセス時はＩ／Ｏ制御部３がデータを出力したことをＣＰＵＩ／Ｆ部２−１に通知する信号である。
【００９５】
Ｉ／Ｏ制御部ａｄｄｒｅｓｓ信号は、Ｉ／Ｏ制御部３内のアドレスであり、前記Ｉ／Ｏ制御部クロックに同期した信号であり、書き込み対象レジスタ信号はＩ／Ｏ制御部３内の書き込み対象に該当するレジスタのデータを示し、前記Ｉ／Ｏ制御部クロックに同期した信号である。
【００９６】
まず、バス制御部２内のＣＰＵＩ／Ｆ部２−１は、ＣＰＵ１からの命令によりアクセス対象のアドレスＡ１を内部バス２−２０のアドレスバスに出力し、アドレスバスに有効アドレスを出力したことを示すａｓｔｂ−ｎ信号をロウレベルとし、ライトアクセスであるため、ｗｒ−ｎ信号をロウレベルとする。さらにライトデータＤ１をデータバスに出力し、データバスに有効データを出力したことを示す信号であるｄｓｔｂ−ｎ信号をロウレベルとする。Ｉ／Ｏ制御部３は、これらの信号が内部バスＩ／Ｆ部２−２を経由し出力され、Ｉ／Ｏ制御部３に入力された信号に基づきアドレスＡ１をＩ／Ｏ制御部のクロックにてラッチしＩ／Ｏ制御部内アドレスとして設定する。（クロック１）
【００９７】
ａｓｔｂ−ｎ信号、ｄｓｔｂ−ｎ信号のロウレベルに応答して、バス制御部２内の内部バスＩ／Ｆ部２−２は、アドレスを受け取ったことを示す信号であるａａｃｋ−ｎ信号、及びデータを受け取りライトアクセス動作が完了したことを示すｄａｃｋ−ｎ信号をロウレベルとして出力する。また、Ｉ／Ｏ制御部３は内部バス２内の内部バス２−２０の前記データＤ１を内部バスＩ／Ｆ部２−２を経由しＩ／Ｏ制御部内の書き込みレジスタに格納する。従って、通常時である高駆動モードでのライトタイミングは図中ライトタイミングａとなる。（クロック２）
【００９８】
ＣＰＵＩ／Ｆ部２−１は、内部バスＩ／Ｆ部２−２からａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号を受け取るとアクセスを終了して良いと判断し、アクセスを終了する。（クロック３）
【００９９】
一方、図１４は実施形態３のプリンタコントローラのＩ／Ｏ制御部３をアクセスする低消費電力の低駆動モードでの動作を示すタイムチャートである。即ち、バス制御部２のＬＳＩ温度がある温度以上になり、温度検出部３１からＬｉｍｉｔ−ｎ信号３２がロウレベルとなり、バス制御部２、及びＩ／Ｏ制御部３が低駆動モードとして動作する場合のタイムチャートである。
【０１００】
まず、バス制御部２がＩ／Ｏ制御部３を低駆動モードとして動作させるためにｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を１とする。バス制御部２内のＣＰＵＩ／Ｆ部２−１は、ＣＰＵ１からの命令によりアクセス対象のアドレスＡ１を内部バス２−２０のアドレスバスに出力し、アドレスバスに有効アドレスを出力したことを示すａｓｔｂ−ｎ信号をロウレベルとし、ライトアクセスであるため、ｗｒ−ｎ信号をロウレベルとする。さらにライトデータＤ１をデータバスに出力し、データバスに有効データを出力したことを示す信号であるｄｓｔｂ−ｎ信号をロウレベルとする。Ｉ／Ｏ制御部３は、これらの信号を内部バスＩ／Ｆ部２−２を経由し出力された信号に基づき、アドレスＡ１をＩ／Ｏ制御部クロックにてラッチしようとするが、低駆動モードであるのでａｄｄｒｅｓｓ信号が遅れ、このタイミングではラッチできないのでこのタイミングではラッチしない。（クロック１）
【０１０１】
Ｉ／Ｏ制御部３は、低駆動モードであるので前記遅れた各信号に基づき、アドレスＡ１を、このタイミングでＩ／Ｏ制御部クロックにてラッチする。（クロック２）
【０１０２】
Ｉ／Ｏ制御部３はａｓｔｂ−ｎ信号、ｄｓｔｂ−ｎ信号のロウレベルに応答して、バス制御部２内の内部バスＩ／Ｆ部２−２を経由し、アドレスを受け取ったことを示す信号であるａａｃｋ−ｎ信号、及びデータを受け取りライトアクセス動作が完了したことを示すｄａｃｋ−ｎ信号をロウレベルとして出力する。また、Ｉ／Ｏ制御部３は前記Ｄバス９のデータＤ１をＩ／Ｏ制御部内の書き込みレジスタに格納する。従って、低駆動モード時のライトタイミングは図中ライトタイミングｂとなる。（クロック３）
【０１０３】
ＣＰＵＩ／Ｆ部２−１は、内部バスＩ／Ｆ部２−２からａａｃｋ−ｎ信号、ｄａｃｋ−ｎ信号を受け取るとアクセスを終了して良いと判断し、アクセスを終了する。（クロック４）
【０１０４】
以上のように、低駆動モードでは消費電力を可能な限り押さえ出力バッファの駆動能力を下げるために、図１４のようにバス制御部２の出力信号が遅れ、その信号を受信するＩ／Ｏ制御部３のライトタイミングが遅れることを予想し、後段のＩ／Ｏ制御部３に低駆動モードであることを示すｌｏｗ−ｄｒｉｖｅ＿ｐ信号を送信し、Ｉ／Ｏ制御部３はｌｏｗ−ｄｒｉｖｅ＿ｐ信号を受信するとライトタイミングを１クロック或いは数クロックずらし、データを受信する。
【０１０５】
以上説明した高駆動モード、低駆動モードの動作により以下の制御を行なう。即ち、前記予め決めた温度以上になったことを示すＬｉｍｉｔ−ｎ信号３２がバス制御部２に通知された場合に、低駆動モードとすると共にバス制御部２からのｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“１”としＩ／Ｏ制御部３に通知することにより、印刷動作のパフォーマンスは低下するが、印刷動作を継続する。そして、一定時間後に予め決めた温度以下となりＬｉｍｉｔ−ｎ信号３２がハイレベルになったことを確認し、通常モードである高駆動モードに戻し、印刷動作を継続する。
【０１０６】
（効果）
以上述べたように実施形態３のプリンタコントローラはバス制御部の出力であるＬＳＩ外部ピン３５毎に設けた入出力バッファの駆動能力を多段とし、低駆動モードの場合に後段のデバイスに低駆動モードであることを通知することにより、低駆動モードによる各信号の遅れを予想しライトタイミングを変えることにより、消費電力が少なく正常なアクセスが可能となる。また、ＬＳＩパッケージにサーミスタ等の温度センサを設け、温度がある一定以上になった場合に、前記低駆動モードとすることにより、印刷動作を停止せずに、消費電力を低減し温度上昇を抑え印刷動作を継続できる。
【０１０７】
なお、本実施例では、温度センサとしてサーミスタを使用しているが、サーミスタ以外の温度センサを用いても同様の効果がある。また、本実施例では検出温度設定を１つとしているが、検出温度を複数とし比較器Ｃ１（３１−１）を複数用意することにより、複数の温度を検出し、各検出結果に応じ、低駆動モードとする期間を制御する、即ち温度が高い場合は低駆動モードの時間を長くし、温度が低い場合は低駆動モードの時間を短くする、或いは低駆動モード、中駆動モード、高駆動モードのように複数のモードとし、温度が高い場合は低駆動モード、温度が中間の場合は中駆動モードとし、温度が低い場合は高駆動モードとするように詳細な制御を行なうことによりさらに印刷動作を妨げず消費電力を低減することができる。
【０１０８】
（（実施形態４））
実施形態３のプリンタコントローラでは、消費電力を低減する手段として、ＬＳＩ内部に予め温度よる遅延素子の遅延を利用した温度検出回路を設け、予め決めた温度以上になった場合、外部ピンのドライバを低消費電力モードとすると共に、外部ピン接続先へ低消費電力モードを通知することにより、消費電力を減らそうとするものである。この課題を解決するために以下の構成を採用する。
【０１０９】
（構成）
図１５は実施形態４のプリンタコントローラの構成図である。実施形態４のプリンタコントローラは後述の温度検出部をバス制御部２内に組込んだ構成となっており、プリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生する発信器６とバス制御部２に組込まれた図示しないクロック遅延検出による温度検出部から構成される。
【０１１０】
そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、クロック生成部２０の入力にはバス制御部２からＤバスが接続されており、クロック生成部制御信号２１が接続されており、クロック生成部２０の出力であるシステムクロック２２がＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に接続されている。そして、前記予め決めた温度以上になったことをクロック遅延検出による温度検出部により検出したことを通知するｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３がバス制御部２からＩ／Ｏ制御部３へ接続されている構成となっている。
【０１１１】
図１６はクロック遅延値検出検出部４０の回路ブロック図であり、システムクロック１３の入力バッファであるＢＦ１（４０−１）と配線遅延をなくすＣＴＳ部４０−２と基本となる遅延を発生させる基本遅延遅延部４０−３と遅延値が段階的に異なる素子ＤＬ＊１、ＤＬ＊２、ＤＬ＊３、ＤＬ＊４、ＤＬ＊５、ＤＬ＊６、ＤＬ＊７、ＤＬ＊８から構成される遅延ラダ−部４０−４とＦ／Ｆから構成される遅延値検出レジスタ４０−５、遅延値検出レジスタ４０−５の出力から遅延値を検出する遅延値検出部４０−６から構成される。
【０１１２】
そして、システムクロック１３であるｓｙｓｔｅｍ＿ｃｌｏｃｋが入力バッファ４０−１に入力され、入力バッファ４０−１出力が配線遅延をなくすＣＴＳ部４０−２に接続され、ＣＴＳ部４０−２の出力が、基本遅延部４０−３の各基本遅延素子に接続されていると共にバス制御部ｓｙｓｔｅｍ＿ｃｌｏｃｋ４０−７として出力されており、各基本遅延素子の出力が遅延ラダ−部４０−４の各ラダ−素子に接続されており、各ラダ−素子の出力が各Ｆ／Ｆに接続され、該各Ｆ／Ｆ出力が遅延値検出部４０−６に接続され、遅延値検出部４０−６の出力が温度検出結果としてｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３として出力されている。
【０１１３】
ここで各遅延素子の遅延値は、ＬＳＩのシミュレーション時に、温度条件を動作保証範囲の低温度から高温度まで温度条件を設定し、遅延値検出レジスタ４０−５のＦ／Ｆ１〜８が全て０またはすべて１にならないように、必ず遅延値検出レジスタ４０−５のＦ／Ｆ１は出力が１となりＦ／Ｆ８は出力が０となるように設定する。
【０１１４】
（動作）
以上のように構成された実施形態４のプリンタコントローラは、以下のように動作する。ここで図１７、図１８は、クロック遅延検出による温度検出部の温度０℃、及び１１５℃でのクロック遅延の変化を示す図である。
【０１１５】
例えば、一般にＬＳＩ等の動作保証温度範囲は−１０℃から１２５℃であり、このような動作保証温度範囲の場合のクロック遅延の検出例として０℃の場合、及び１１５℃の場合を図１７、図１８を用いて説明する。
【０１１６】
０℃の場合は、図１７のように各遅延素子の遅延が少ないためＤＬ１からＤＬ５までの出力信号の立ち上がりは、バス制御部ｓｙｓｔｅｍ＿ｃｌｏｃｋ４０−７の立ち上がりよりも早くなっている。またＤＬ６からＤＬ８は逆に遅くなっている。この場合ＤＬ１からＤＬ８の遅延情報は、遅延値検出レジスタ４０−５に“０００１１１１１”と設定される。
【０１１７】
また、１１５℃の場合は、図１８のように各遅延素子の遅延が大きくなるため、ＤＬ１からＤＬ２までの出力信号の立ち上がりは、バス制御部ｓｙｓｔｅｍ＿ｃｌｏｃｋ４０−７の立ち上がりよりも早いがＤＬ３〜ＤＬ８の出力信号の立ち上がりは遅くなっている。この場合、遅延値検出レジスタ４０−５に“００００００１１”と設定される。
【０１１８】
ＬＳＩシミュレーション時に、以上のように各温度で遅延値検出レジスタ４０−５の値がどのように設定されるかをあらかじめ調べておき、遅延検出部４０−６内に参照テーブルとして保持し、予め設定した温度以上に対応する遅延値検出レジスタ４０−５の出力値となった場合、遅延検出部４０−６からｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３として出力する。或いは、前記参照テーブルをプログラム内に格納しておき、タイマー割り込み処理等でＣＰＵ１が定期的に遅延値検出レジスタ４０−５の内容を直接読み、予め設定した温度に対応する遅延検出レジスタ４０−５の値となったとき、バス制御部２を経由してｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３として出力する。
【０１１９】
実施形態４のプリンタコントローラでは、遅延値検出部４０−６或いは、ＣＰＵ１のプログラムにより、予め設定した温度以上に対応する遅延値検出レジスタ４０−５の出力値となったときに、低駆動モードとすると共にバス制御部２からのｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“１”としＩ／Ｏ制御部３に通知することにより、印刷動作のパフォーマンスは低下するが、印刷動作を継続する。そして、一定時間後に予め決めた温度以下となったことを確認し、通常モードである高駆動モードに戻し、印刷動作を継続する。
【０１２０】
また、実施形態４のプリンタコントローラでは、温度に対応する遅延値検出部４０−６或いは、ＣＰＵ１のプログラムとして、予め設定する温度を２個用意し、例えばバス制御部２のＬＳＩの最大動作温度が１２５℃であるとした場合、１１５℃を検出したときに、低駆動モードに切り替え、１００℃を下回ったら、再び高駆動モードにする制御を行なうこともできる。
【０１２１】
（効果）
以上述べたように実施形態４のプリンタコントローラでは、消費電力を低減する手段として、ＬＳＩ内部に予め温度よる遅延素子の遅延を利用した検出回路を設け、予め決めた温度以上になった場合、外部ピンのドライバを低消費電力モードとすると共に、外部ピン接続先へ低消費電力モードを通知することができる。
【０１２２】
従って、外付けの温度センサ、温度検出部が不用であり、安価で、小型化が可能となり、また、温度センサを外付けにする場合はパッケージ温度を正確に測るためにパッケージの中央に温度センサを取り付ける必要があり市販のフィン（放熱版）が取り付けにくい等の欠点があったが、実施形態４のプリンタコントローラでは温度センサが不用のために前記欠点も解消できる。
【０１２３】
また、実施形態４の説明では８個の遅延素子の組み合わせで説明したが、複数の遅延素子であれば同様の効果を得られることは言うまでもない。
【０１２４】
（（実施形態５））
実施形態５のプリンタコントローラは、消費電力を低減する手段としてＬＳＩ外部、或いは内部に温度検出部を設け、予め決めた温度以上になった場合にシステムクロックを徐々に下げ、かつＬＳＩの外部ピンのドライバを低消費電力モードとすると共に、外部ピン接続先へ低消費電力モードを通知することにより、消費電力を減らそうとするものである。この課題を解決するために以下の構成を採用する。
【０１２５】
（構成）
実施形態５のプリンタコントローラは、図１０の実施形態３のプリンタコントローラ或いは図１５の実施形態４のプリンタコントローラにおいて、システムクロック１３を生成する発信器６を実施形態１のプリンタコントローラのクロック生成部２０とした構成である。
【０１２６】
即ち、プリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生するクロック生成部１６から構成される。そして、温度検出部として図１１のようにバス制御部２に取り付けたサーミスタ３０と温度検出部３１またはバス制御部２のＬＳＩ内部に図１６のクロック遅延検出部を有し、バス制御部２のＬＳＩ入出力バッファとして図１２の入出力バッファを有する構成である。以上の構成により、実施形態５のプリンタコントローラは以下のように動作する。
【０１２７】
（動作）
バス制御部２のＬＳＩパッケージ中央部に設置した図１０サーミスタ及びサーミスタの出力から温度検出を行なう温度検出部３１、或いは図１６のＬＳＩ内部に設置したクロック遅延検出部により予め設定した温度以上になったことを検出すると、バス制御部２は図２クロック生成部２０に徐々にシステムクロック２２の周波数を下げるようにクロック生成部２０のＤ／Ａコンバータ２０−１に図４のＤ／Ａコンバータ設定値と出力電圧、図３制御電圧に応じたＶＣＯ周波数の関係に対応する値を設定してゆく。
【０１２８】
一方、図１２の入出力バッファ３４のｄｒｉｖｅ＿ｃｏｎｔｒｏｌを０としスイッチ３４−４をオフし、バッファＢＦ２（３４−３）を非動作とすることにより低駆動モードとすると共に、ｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“１”としＩ／Ｏ制御部３に通知する。
【０１２９】
その後、バス制御部２等の消費電力が減少するのでバス制御部２等のＬＳＩの温度が低下し予め設定した温度以下となったことを確認すると、バス制御部２は入出力バッファ３４を高駆動モードとしｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“０”としＩ／Ｏ制御部３に通知すると共に、図２クロック生成部２０に徐々にシステムクロック２２の周波数を上げるようにクロック生成部２０のＤ／Ａコンバータ２０−１に図４のＤ／Ａコンバータ設定値と出力電圧、図３制御電圧に応じたＶＣＯ周波数の関係に対応する値を設定してゆく。
【０１３０】
（効果）
以上の説明したように実施形態５のプリンタコントローラは、バス制御部２のＬＳＩ外部、或いは内部に温度検出部を設け、予め決めた温度以上になった場合、バス制御部の入出力バッファの駆動能力を下げることにより、バス制御部の消費電力を減少させ、さらに、システム全体のクロックであるシステムクロックの周波数を低くすることにより、ＣＰＵ１、バス制御部２、Ｉ／Ｏ制御部３等の内部の信号の変化率を低くすることにより、消費電力をさらに低減でき、印刷動作のパフォーマンスが低下する時間を短くすることができる。
【０１３１】
また、温度検出部による上記制御に加えて、セントロニクスＩ／Ｆ等から印刷データが途絶えた待機状態において、システム全体のクロックであるシステムクロックの周波数を徐々に低くすることにより、ＣＰＵ１、バス制御部２、Ｉ／Ｏ制御部３等の無駄な消費電力をも低減できる。
【０１３２】
（（実施形態６））
（構成）
実施形態６のプリンタコントローラは、消費電力を低減する手段として、バス制御部２等のＬＳＩ外部、或いは内部に温度検出部を設け、予め決めた温度以上になった場合、擬似ＤＭＡアクセスを発生させバス制御部内のバスを固定することにより消費電力を減少させ、かつＬＳＩの外部ピンのドライバを低消費電力モードとすることにより、消費電力を減らそうとするものである。この課題を解決するために以下の構成を採用する。
【０１３３】
（構成）
実施形態６のプリンタコントローラは、プリンタコントローラ全体を制御するＣＰＵ１とメモリ等にアドレス、データ、及び制御信号を出力するバス制御部２とプリンタコントローラに接続される周辺装置とのＩ／Ｆ制御を行なうＩ／Ｏ制御部３とＣＰＵ１の制御を行なうためのプログラム等を格納するＲＯＭから構成されるＲＯＭ部４とデータ処理を行なう際のデータの読出し書込み可能なＲＡＭから構成されるＲＡＭ部５とプリンタコントローラ全体の基準クロックであるシステムクロックを発生するクロック生成部１６から構成される。そして、ＣＰＵ１とバス制御部２がＣＰＵＩ／Ｆ７で接続され、バス制御部２の出力としてアドレス信号がＡバス８で、データがＤバス９でバス制御部２とＩ／Ｏ制御部３、ＲＯＭ部４及びＲＡＭ部５と接続され、また、バス制御部２とＩ／Ｏ制御部３がＩ／Ｏ制御部制御信号１０で接続され、バス制御部２とＲＯＭ部４がＲＯＭ制御信号１１で接続され、バス制御部２とＲＡＭ部５がＲＡＭ制御信号１２で接続されている。そして、クロック生成部２０の入力にはバス制御部２からＤバスが接続されており、クロック生成部制御信号２１が接続されており、クロック生成部２０の出力であるシステムクロック２２がＣＰＵ１、バス制御部２、及びＩ／Ｏ制御部３に接続されている。
【０１３４】
バス制御部２は、ＣＰＵ１と直接接続され内部バス２−２０を制御するＣＰＵＩ／Ｆ部２−１と内部バス２−２０のアドレス、データバスのバッファとして機能する内部バスＩ／Ｆ部２−２と印刷画像を圧縮伸長処理する画像圧縮伸長処理部２−３と前記画像圧縮伸長処理部２−３の印刷画像データの送受信制御を行なうＤＭＡ制御部２−４とＩ／Ｏ制御部３に接続されるプリンタユニットとＲＡＭ部間の印刷画像データ送受信のためのＤＭＡチャネル制御を行なうＤＭＡチャネル制御部２−５とＲＯＭ部を制御するＲＯＭ部制御信号を発生するＲＯＭ制御部２−６とＲＡＭ部を制御するＲＡＭ部制御信号を発生するＲＡＭ制御部２−７とＣＰＵ１からの仮想アドレスを実アドレスに変換する機能を有するメモリマップレジスタ部２−８とバス制御部２内の各部Ｆ／Ｆのクロックの遅れが均等になるように配分するためのＣＴＳ部２−９と割り込みを制御する割り込みコントローラ２０−１０とタイマーから構成されるタイマー部２０−１１から構成される。ここで、内部バス２−２０はアドレス、データ、及びリード／ライド等の制御信号から構成される。
【０１３５】
そして、温度検出部として図１１の温度検出部、サーミスタ、或いはＬＳＩ内部に図１６のクロック遅延検出部を有し、ＬＳＩ入出力バッファとして図１２の入出力バッファを有する構成である。以上の構成により、実施形態６のプリンタコントローラは以下のように動作する。
【０１３６】
（動作）
バス制御部２のＬＳＩパッケージ中央部に設置した図１０サーミスタ及びサーミスタの出力から温度検出を行なう温度検出部３１、或いは図１６のＬＳＩ内部に設置したクロック遅延検出部により予め設定した温度以上になったことを検出すると、バス制御部２は図９を用いて実施形態２のプリンタコントローラで説明したように、ＤＭＡチャネル制御部２−５はアドレスを使用しない固定アドレスとして、ＤＭＡチャネル制御部２−５内の図示しないＤＭＡカウンタに所望のカウンタ値をセットし、リードモードとする。前記ＤＭＡカウンタの所望のカウンタ値がクロックごとにカウントダウンし、カウント値が０となると擬似ＤＭＡアクセスを終了し、これを繰り返し行なう。
【０１３７】
一方、バス制御部２は図１２の入出力バッファ３４のｄｒｉｖｅ＿ｃｏｎｔｒｏｌを０としスイッチ３４−４をオフし、バッファＢＦ２（３４−３）を非動作とすることにより低駆動モードとすると共に、ｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“１”としＩ／Ｏ制御部３に通知する。
【０１３８】
その後、バス制御部２等の消費電力が減少するのでバス制御部２等のＬＳＩの温度が低下し予め設定した温度以下となったことを確認すると、前記擬似ＤＭＡアクセスを完了すると共に、バス制御部２は入出力バッファ３４を高駆動モードとしｌｏｗ＿ｄｒｉｖｅ＿ｐ信号３３を“０”としＩ／Ｏ制御部３に通知する。
【０１３９】
（効果）
以上説明したように実施形態６のプリンタコントローラは、バス制御部２のＬＳＩ外部、或いは内部に温度検出部を設け、予め決めた温度以上になった場合、バス制御部の入出力バッファの駆動能力を下げることによりバス制御部の消費電力を減少させ、さらに擬似ＤＭＡアクセスによりバス制御部内のバスを固定することにより消費電力を低減でき、印刷動作のパフォーマンスが低下する時間を短くすることができる。
【０１４０】
また、前記擬似ＤＭＡアクセスと平行して実施形態１で説明した図２のクロック生成部２０により、システムクロックの周波数を徐々に下げることにより、さらに、消費電力を低減させることもできる。
【０１４１】
また、温度検出部による上記制御に加えて、セントロニクスＩ／Ｆ等から印刷データが途絶えた待機状態において、前記擬似ＤＭＡアクセスを行なうことによりバス制御部２内の無駄な消費電力をも低減できる。
【０１４２】
【発明の効果】
以上詳細に説明したように、本発明によれば、印刷処理を行なわない待機時、或いはバス制御部の温度を検出し予め決めた温度以上になった場合、全体の基準クロックの周波数を許容範囲の動作周波数まで徐々に減少させる、或いは擬似的なＤＭＡ読出しを行なわせ、或いはバス制御部の出力バッファの駆動能力を下げる共にＩ／Ｏ制御部に駆動能力を下げたことを通知することにより、正常な印刷動作を行ない、かつ消費電力を低減することができる。
【図面の簡単な説明】
【図１】本発明の実施実施形態１のプリンタコントローラの構成図である。
【図２】本発明の実施実施形態１のクロック生成部の回路図である。
【図３】ＶＣＯ部の制御電圧と発振周波数変化量との関係を示す図である。
【図４】Ｄ／Ａコンバータのバイナリコードと出力電圧の関係を示す図である。
【図５】本発明の実施形態２のプリンタコントローラの構成図である。
【図６】本発明の実施形態２のライトアクセスのタイムチャートである。
【図７】本発明の実施実施形態２のリードアクセスのタイムチャートである。
【図８】本発明の実施形態２の通常動作を示すタイムチャートである。
【図９】本発明の実施形態２の擬似ＤＭＡアクセスのタイムチャートである。
【図１０】本発明の実施形態３のプリンタコントローラの構成図である。
【図１１】本発明の実施形態３の温度検出部及び周辺の回路図である。
【図１２】本発明の実施形態３の入力バッファの回路図である。
【図１３】本発明の実施形態３の高駆動モード時のライトアクセスタイムチャートである。
【図１４】本発明の実施形態３の低駆動モード時のライトアクセスタイムチャートである。
【図１５】本発明の実施形態４のプリンタコントローラの構成図である。
【図１６】本発明の実施形態４のクロック遅延値検出部の回路ブロック図である。
【図１７】クロック遅延値検出部の温度０℃での検出クロックの変化を示す図である。
【図１８】クロック遅延値検出部の温度０℃での検出クロックの変化を示す図である。
【図１９】従来のプリンタコントローラの構成図である。
【符号の説明】
１      ＣＰＵ
２      バス制御部
３      Ｉ／Ｏ制御部
４      ＲＯＭ部
５      ＲＡＭ部
６      発信器
７      ＣＰＵＩ／Ｆバス
８      Ａバス
９      Ｄバス
１０      Ｉ／Ｏ制御部制御信号
１１      ＲＯＭ制御信号
１２      ＲＡＭ制御信号
２０      クロック生成部
２２      システムクロック
３０      サーミスタ
３１      温度検出部
３４      入出力バッファ
４０      クロック遅延検出部
【図１】
2005018666.tif 000003
【図２】
2005018666.tif 000004
【図３】
2005018666.tif 000005
【図４】
2005018666.tif 000006
【図５】
2005018666.tif 000007
【図６】
2005018666.tif 000008
【図７】
2005018666.tif 000009
【図８】
2005018666.tif 000010
【図９】
2005018666.tif 000011
【図１０】
2005018666.tif 000012
【図１１】
2005018666.tif 000013
【図１２】
2005018666.tif 000014
【図１３】
2005018666.tif 000015
【図１４】
2005018666.tif 000016
【図１５】
2005018666.tif 000017
【図１６】
2005018666.tif 000018
【図１７】
2005018666.tif 000019
【図１８】
2005018666.tif 000020
【図１９】
2005018666.tif 000021