JP4402641B2 - クロック供給装置及びその制御方法 - Google Patents

クロック供給装置及びその制御方法 Download PDF

Info

Publication number
JP4402641B2
JP4402641B2 JP2005340952A JP2005340952A JP4402641B2 JP 4402641 B2 JP4402641 B2 JP 4402641B2 JP 2005340952 A JP2005340952 A JP 2005340952A JP 2005340952 A JP2005340952 A JP 2005340952A JP 4402641 B2 JP4402641 B2 JP 4402641B2
Authority
JP
Japan
Prior art keywords
frequency
clock
circuit block
clock signal
supply
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005340952A
Other languages
English (en)
Other versions
JP2007148681A (ja
Inventor
直人 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005340952A priority Critical patent/JP4402641B2/ja
Priority to US11/559,115 priority patent/US7689855B2/en
Publication of JP2007148681A publication Critical patent/JP2007148681A/ja
Application granted granted Critical
Publication of JP4402641B2 publication Critical patent/JP4402641B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Description

本発明は、クロック供給回路、制御方法、情報処理装置、プログラム、及び媒体に関し、特に、半導体集積回路等の回路ブロックにクロック信号を供給するのに好適なクロック供給回路、制御方法、情報処理装置、プログラム、及び媒体に関する。
近年、ASIC(Application Specified IC)等の半導体集積回路は、その大規模化に伴い、一般に、クロック同期回路として設計されている。また、最近は、LSIチップの低電力化、低消費電力化の要求が高くなり、回路ブロックに対するクロック信号の供給を適宜停止させることにより、消費電力を低減するゲーテッドクロック回路が実現されている(特許文献1参照)。
すなわち、従来のASICは、ASIC内部の回路ブロックを個別に駆動制御する全てのフリップフロップに常にフリーランでクロック信号が入力されていた。このため、待機モード時等、駆動しない回路ブロックが存在する場合にも、常に全ての回路ブロックのフリップフロップがON/OFF動作(トグル動作)し、無駄に電力が消費されていた。
しかしながら、前述のように、最近のASICは、大規模化、クロック信号の高周波数化による高速駆動化が進んだため、ASIC全体の消費電力が大きくなり、消費電力の削減が要望されている。
また、このようなASICを画像処理用に用いたデジタル複写機や、スキャナ機能、プリンタ機能、FAX機能等の複数の機能を備えた複合機、或いは携帯電話等の情報処理装置においては、待機モードに入っている時間が長く、また、待機モードにおいても各種の待機状態が存在する。例えば、複合機では、FAX機能がONでプリンタ機能とスキャナ機能がOFFの状態、FAX機能とプリンタ機能がONでスキャナ機能がOFFの状態等の各種の待機状態が存在している。
上記のゲーテッドクロック回路は、このような待機状態における消費電力を削減するのに非常に有効である。すなわち、ゲーテッドクロック回路は、上記のように機能がOFF状態の回路ブロック内のフリップフロップに対するクロック信号の供給を停止することにより当該フリップフロップのトグル動作を停止することで、消費電力を削減することができる。従って、ゲーテッドクロック回路を有するASICを上記のように待機時間が長い情報処理装置に搭載した場合は、特に、消費電力を大幅に削減することが可能となる。
特開平10−308450号公報
しかしながら、このような機能ブロックを複数有しているASICにおいて、ゲーテッドクロック方式により動作を停止させる場合は、各機能ブロックに入力しているシステムクロックで動作するフリップフロップのトグル動作(オンオフ動作)も急峻に停止される。その結果、動作を停止する機能ブロックの消費電流も急峻に増大するために機能ブロックへ供給しているバイアス電圧が低下してしまう。この低下したバイアス電圧がASICの定格電圧を下回る場合は、ASICの誤動作や機能停止(ロック状態)を招いてしまう。
また、ゲーテッドクロック方式により動作を開始させる場合は、各機能ブロックに入力しているシステムクロックで動作するフリップフロップのトグル動作(オンオフ動作)も急峻に開始される。その結果、動作を開始する機能ブロックの消費電流も急峻に減少するために機能ブロックへ供給しているバイアス電圧が増大してしまう。この増大したバイアス電圧がASICの定格電圧をオーバシュートした場合は、ASICの誤動作等を招いてしまう。
このような不具合を解消するために、一般に、ASICに供給する電源ラインとグランドラインの間にキャパシタを挿入することにより、電源ラインの電圧が急峻に変動するのを緩和する手法が用いられている。
しかし、最近のASICでは、クロック信号の超高速化、またASICの回路規模の増大化が進んでいるので、上記のゲーテッドクロックの手法を実施しても電流変動レベルが益々大きくなり、このゲーテッドクロックの手法を実施することは困難になってきている。
また、ASICに電源を供給する電源回路についても、電流変動に対する応答性について更なる改善が求められ、コストアップの要因になっている。
本発明は、このような背景の下になされたもので、回路ブロックへのクロック信号の供給状態を切替える際の回路ブロックの電流変動を少なくすることができるクロック供給装置及びその制御方法を提供することを目的とする。
上記目的を達成するため、本発明は、複数の回路ブロックを備えるクロック供給装置であって、前記複数の回路ブロックへ電圧を供給する電圧供給手段と、クロック信号を生成し、該生成されたクロック信号を前記複数の回路ブロックに含まれる特定の回路ブロックへ供給するクロック生成手段と、前記クロック生成手段が生成するクロック信号の周波数を制御する制御手段と、前記クロック生成手段が生成するクロック信号を前記特定の回路ブロックに供給するか否かの供給状態を切替える切替手段とを有し、前記制御手段は、前記切替手段が前記供給状態を切替える際に、前記クロック信号の周波数を、第1周波数から前記特定の回路ブロックの消費電力量に応じた第2周波数へ一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とする。
本発明によれば、複数の回路ブロックを備えるクロック供給装置及びその制御方法において、複数の回路ブロックに含まれる特定の回路ブロックへのクロック信号の供給状態を切替える際に、複数の回路ブロックに含まれる他の回路ブロックにおける電流変動を少なくすることができる
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。
[第1の実施の形態]
図1は、本発明の実施の形態に係るクロック供給回路を適用した画像処理装置の概略構成を示すブロック図である。図1において、コントローラユニット2000は、スキャナ2070やプリンタ2095と接続され、LAN2011や公衆回線(WAN)2051等の通信ネットワークにも接続されている。コントローラユニット2000は、上記の各デバイスに接続されることにより、画像情報やデバイス情報の入出力、PDL(ページ記述言語)データのイメージ展開を行う。
コントローラユニット2000は、大別して、システム制御部2150、プリンタ用画像処理部2115、スキャナ用画像処理部2114を有している。これらシステム制御部2150、画像処理部2149、プリンタ用画像処理部2115、スキャナ用画像処理部2112等は、共通の電源から電力が供給され、ゲーテッドクロック方式で供給されるクロック信号に基づいて駆動されるものである。このゲーテッドクロック方式によるクロック信号の供給制御については、後で詳細に説明する。
まず、システム制御部2150の構成を説明する。システム制御部2150のCPU2001は、本画像処理装置の全体を制御するプロセッサであり、第1、第2の実施の形態においては2つのCPUが用いられている。これら2つのCPUは、共通のCPUバス2126に接続され、更に、バススイッチとして機能するシステムバスブリッジ2007に接続されている。システムバスブリッジ2007は、CPUバス2126、RAMコントローラ2124、ROMコントローラ2125、IOバス12127、サブバススイッチ2128、IOバス2(2129)、画像リングインタフェース1(2147)、及び画像リングインタフェース2(2148)と接続されている。
サブバススイッチ2128は、第2のバススイッチであり、画像DMA1(2130)、画像DMA2(2132)、フォント伸張部3134、ソート回路2135、及びビットマップトレース部2136と接続され、上記の画像DMAから出力されるメモリアクセス要求を調停しながら、システムバスブリッジとの接続を行う。
RAM2002は、RAMコントローラ2124によって制御され、CPU2001によりワークメモリとして利用される。またRAM2001は、画像データを一時記憶するための画像メモリとしても利用される。ROM2003は、ROMコントローラ2125により制御され、システムのブートプログラム等が格納されている。なお、ROM2003には、後述する図4〜5、図9〜11に示した処理を行なうためのアプリケーションプログラムも格納されている。
画像DMA1(2130)は、レジスタアクセスリング2137を介して設定された情報に基づいて画像圧縮部2131を制御することにより、RAM2002上に一時記憶されている非圧縮データの読出し処理、読出した非圧縮データの圧縮処理、圧縮データの書き戻し(格納)処理を行う。画像圧縮部2131は、例えばJPEG(Joint Photographic Experts Group)方式により圧縮処理を行なう。
画像DMA2(2132)は、レジスタアクセスリング2137を介して設定された情報に基づいて画像伸張部2133を制御することにより、RAM2002上に一時記憶されている圧縮データの読出し処理、読出した圧縮データの伸張処理、伸張、伸張データの書き戻しを行う。画像伸張部2133は、JPEG方式により圧縮処理を行なう。
フォント伸張部2134は、LANインタフェース2010等のネットワークを介して外部より転送されるPDLデータに含まれるフォントコードに基づいて、ROM2003又はRAM2002に格納されている圧縮フォントデータを伸張する。フォント伸張部2134は、例えばFBE方式によりフォントを伸張する。ソート回路2135は、PDLデータを展開する段階で生成されるディスプレイリストのオブジェクトの順番を並び替える回路である。ビットマップトレース回路2136は、ビットマップデータの中からエッジ情報を抽出する回路である。
IOバス1(2127)には、標準バスであるUSBバスのコントローラ、USBインタフェース2138、汎用シリアルポート2139、インタラプトコントローラ2140、及びGPIOインタフェース2141が接続されている。IOバス2(2129)には、汎用バスインタフェース1及び2(2142)と、LANコントローラ2110と接続されている。
操作部I/F2006は、操作部(UI)2012のインタフェースであり、操作部2012に表示すべき画像データを操作部2012に対して出力する。また、操作部2012からユーザが入力した情報を、CPU2001に伝える機能を有している。
汎用バスインタフェース2142は、2つの同一構成のバスインタフェースによって構成されており、標準IOバスをサポートするバスブリッジとして機能する。標準IOバスは、PCIバス2143で構成されている。外部記憶装置2004は、システムソフトウェア、画像データ等を格納するハードディスクドライブであり、ディスクコントローラ2144を介して、PCIバス2143に接続されている。LANコントローラ2110は、MAC回路2145、PHY/PMD回路2146を介してLAN2011に接続され、このLAN2011を介して情報を入出力する。Modem2050は、公衆回線2051を介して情報を入出力する。
画像リングインタフェース1(2147)及び画像リングインタフェース2(2148)は、DMAコントローラとして機能する。すなわち、画像リングインタフェース1(2147)及び画像リングインタフェース2(2148)は、システムバスブリッジ2007と画像リング2008とに接続され、タイル化後に圧縮されたデータをRAM2002とタイル画像処理部2149との間でDMA転送する。なお、画像リング2008は、一対の単方向接続経路の組み合わせにより構成され(画像リング1及び画像リング2)、画像データを高速に転送する。
次に、画像処理部2149の構成を説明する。上記の画像リング2008は、画像処理部2149内の画像リングインタフェース3(2101)及びタイル画像インタフェース4(2102)に接続されている。画像リングインタフェース3(2101)及びタイル画像インタフェース4(2102)は、タイル伸張部2103、コマンド処理部2104、ステータス処理部2105、及びタイル圧縮部2106と接続されている。なお、タイル伸張部2103は2つ、タイル圧縮部は3つ存在する。
また、タイル伸張部2103は、タイルバス2107にも接続され、画像リング2008より入力された圧縮後の画像データを伸張し、伸張した画像データをタイルバス2107へ転送する。タイル伸張部2103は、JPEG及びパックビッツ方式により伸張処理を行なう。
タイル圧縮部2106は、画像リングインタフェース3及び4(2101,2102)、及びタイルバス2107に接続され、このタイルバス2107から入力された圧縮前の画像データを圧縮し、圧縮した画像データを画像リング008へ転送する。タイル圧縮部2106は、タイル伸張部2106と同様の圧縮・伸張方式、すなわちJPEG及びパックビッツ方式で圧縮処理を行なう。
コマンド処理部2104は、画像リングインタフェース3及び4(2101,2102)、及びレジスタ設定バス2109に接続され、CPU2001から発行されたレジスタ設定要求を、レジスタ設定バス2109に接続される当該要求に係るブロックへ書き込む。また、コマンド処理部2104は、CPU2001から発行されたレジスタ読み出し要求に基づいて、レジスタ設定バス2109を介して、当該要求に係るレジスタから情報を読み出し、読み出した情報を画像リングインタフェース4(2102)に転送する。
ステータス処理部2105は、画像処理部2149内の情報を監視し、必要に応じて、CPU2001に対してインタラプトを発行するためのインタラプトパケットを生成する。生成されたインタラプトパケットは、画像リングインタフェース4(2102)に出力される。
タイルバス2107には、上述したブロックに加え、レンダリング部インタフェース2110、画像入力インタフェース2112、画像出力インタフェース2113、多値化部2119、2値化部2118、色空間変換部2117、画像回転部2030、及び解像度変換部2116が接続されている。
レンダリング部2060は、PDLコード、或いは中間ディスプレイリストをビットマップイメージに展開し、一般的なビデオ信号2111として出力する。レンダリング部インタフェース2110は、レンダリング部2060により生成されたビットマップイメージを入力するインタフェースである。
レンダリング部インタフェース2110は、タイルバス2107、メモリバス2108、及びレジスタ設定バス2109に接続する機能を有する。レンダリング部インタフェース2110は、レジスタ設定バス2109を介して設定された所定の方法に従って、入力されたラスタ画像をタイル画像へ変換すると共にクロックを同期化し、そのタイル画像をタイルバス2107に出力する。
画像入力インタフェース2112は、レジスタ設定バス2109を介して設定された所定の方法に従って、後述するスキャナ用画像処理部2114によって補正画像処理されたラスタイメージデータをタイル画像に変換すると共にクロックを同期し、そのタイル画像をタイルバス2107に出力する。
画像出力インタフェース2113は、タイルバス2107から入力されたタイル画像データをラスタ画像に変換すると共にクロックレートを変更し、そのラスタ画像をプリンタ用画像処理部2115に出力する。
画像回転部2030は、画像データを回転処理する。また、解像度変換部2116は、画像の解像度を変更する。色空間変換部2117は、カラー及びグレースケール画像の色空間を変換する。2値化部2118は、多値(カラー、グレースケール)画像を2値化する。また、多値化部2119は、2値画像を多値データに変換する。
外部バスインタフェース部2120は、画像リングインタフェース1乃至4(2147,2148,2101,2102)、コマンド処理部2104、及びレジスタ設定バス2109を介して、CPU2001により発行された書き込み要求、読み出し要求を外部バス2121に出力する。本実施の形態において、外部バス2121は、プリンタ用画像処理部2115と、スキャナ用画像処理部2114とに接続されている。
メモリ制御部2122は、メモリバス2108に接続されており、プリンタ用画像処理部2115及びスキャナ用画像処理部2114の要求に従って、画像メモリ1及び画像メモリ2(2123)に対して、画像データを書き込み又は読み出し、必要に応じてリフレッシュ等の動作を行う。
スキャナ用画像処理部2114は、スキャナ2070により読み取られた画像データに対してガンマ補正等の画像処理を施す。プリンタ用画像処理部2115は、プリンタ2070により印刷する画像データを印刷用のデータに画像処理する。
なお、コントローラユニット2000内のシステム制御部2150、画像処理部2149、プリンタ用画像処理部2115、スキャナ用画像処理部2112等は、全て1チップのASICとして集積化しても、或いは独立したASICとして集積化してもよい。
また、システム制御部2150、画像処理部2149、プリンタ用画像処理部2115、スキャナ用画像処理部2112等は、前述したように、共通の電源から電力が供給され、ゲーテッドクロック方式で供給されるクロック信号に基づいて駆動される。
次に、第1の形態に特有なゲーテッドクロック方式によるクロック信号の供給制御を説明する。
図2に示したように、コントローラユニット2000は、図1に示したデバイスの他に、クロックジェネレータ3000、ゲーテッドクロックセレクタ部3001、DC/DC回路3002等を有している。クロックジェネレータ3000は、可変周波数発振器として構成され、CPU2001から周波数制御信号Scにより指定された周波数のシステムクロックCsysを生成し、クロックライン11を介してシステム制御部2150、画像処理部2149に供給する。
ただし、画像処理部2149へのシステムクロックCsysの入力は、ANDゲート13を介して行なわれる。すなわち、主電源が投入されている場合は、システムクロックCsysは、システム制御部2150には常時供給される。一方、画像処理部2149には、ゲーテッドクロックセレクタ部3001からのクロックイネーブル信号Cenが信号ライン12を介してANDゲート13に出力されている期間だけ、システムクロックCsysが供給される。この場合、ANDゲート13は、クロックイネーブル信号Cenの入力によりゲートON状態となり、一方の入力信号であるシステムクロックCsysがクロックライン14を介して画像処理部2149に供給される。
システム御部2150は、クロック信号(システムクロックCsys)を増幅するバッファ18,19,20と、後述のフリップフロップ21等を有しており、これらデバイスはツリー状に接続されている。画像処理部2149も、システム制御部2150と同様に、クロック信号を増幅するバッファ22,23と、後述のフリップフロップ24等を有しており、これらデバイスがツリー状に接続されている。
上記のフリップフロップ21,24は、入力されたシステムクロックCsysに基づいて、例えば、前述の画像DMA1(2130)、ビットマップトレース回路2136等のデバイス(回路)に対するデータやコマンドの入出力タイミングを個別に制御するものである。
DC/DC回路3002は、入力された電源Vinを電圧レベルの異なる各種の電源に変換する。なお、図2では、1つの電源ライン15だけを示しているが、実際にはコントローラユニット2000には多数の電源ラインが存在し、DC/DC回路3002は、これら各電源ラインに各種の電圧レベルの電源を供給している。図2においては、DC/DC回路3002は、所定の電圧レベルの電源Vddを電源ライン15を介してシステム制御部2150、画像処理部2149、プリンタ用画像処理部2115、スキャナ用画像処理部2114等に供給している。
なお、DC/DC回路3002から電源供給を受ける回路ブロックでの消費電流の急峻な変動に伴って電源ライン15の電圧が急峻に変動するのを緩和するために、電源ライン15とグランドライン(不図示)との間にはコンデンサ(不図示)が適所に挿入されている。
次に、第1の実施の形態に係るクロックジェネレータ3000の構成を図3に基づいて説明する。クロックジェネレータ3000は、発振回路3005、掃引回路3004、波形整形回路3006、及び掃引動作規定回路3003を有し、CPU2001により指定された周波数のシステムクロックCsysを連続的に発生する。
発振回路3005は、例えばブリッジ型CR発振回路により実現される。掃引回路3004は、発振回路3005の発振周波数を変化(掃引)させる。この場合、掃引回路3004は、発振回路3005の回路定数の1つであるキャパシタンスを所定の速度で連続的に変化させることにより発振周波数を連続的に変化させる。
この掃引回路3004の掃引動作は、掃引動作規定回路3003により規定される。すなわち、掃引動作規定回路3003は、CPU2001から与えられた周波数制御信号Scに基づいて、発振回路3005における発振周波数の掃引方向と掃引速度を決定し、その掃引方向と掃引速度を掃引回路3004に指示する。そして、掃引回路3004は、指定に係る掃引方向(低周波方向又は高周波方向)に指定に係る掃引速度で、発振回路3005の発振周波数を掃引する。
波形整形回路3006は、発振回路3005から発振された発振信号をシステムクロックCsysに適したパルス波形に整形する回路であり、フリップフロップ又はシュミットトリガ回路等により実現することができる。波形整形回路3006は、波形整形後のパルス信号をシステムクロックCsysとして出力する。
前述のように、システム制御部2150には、常時、システムクロックCsysが供給されている。従って、システム制御部2150は、省エネルギーを図るべくコントローラユニット2000が待機モードに入った場合にも動作可能となっている。システム制御部2150は、待機モード時には、例えばLANや公衆回線を介してプリントジョブが送信されてきたか否か、操作部(UI)2012により待機モードを解除すべき操作がなされたか否か等を検知する。
一方、画像処理部2149は、待機モード時にはシステムクロックCsysが入力されず、スリープ状態となっている。すなわち、待機モード時には、ゲーテッドクロックセレクタ部3001は、クロックイネーブル信号Cenをディセーブル状態にし、画像処理部2149へのシステムクロックCsysの供給を停止している。そして、ゲーテッドクロックセレクタ部3001は、CPU2001から待機モード解除信号Sgが入力されることにより、クロックイネーブル信号Cenをイネーブル状態にして、画像処理部2149へのシステムクロックCsysの供給を再開する。
次に、第1の実施の形態に特有なシステムクロックCsysの周波数制御を説明する。まず、待機モードを解除する場合の上記の周波数制御を、図4のフローチャートに基づいて説明する。
システム制御部2150のCPU2001は、待機モード時において、画像処理部2149をウェイクアップさせるべきジョブが発生する、すなわち、画像処理部2149にシステムクロックCsysを供給すべき条件が発生するのを監視している(ステップS1)。そして、CPU2001は、画像処理部2149にシステムクロックCsysを供給すべき条件が発生すると、クロックジュネレータ3000に対して、システムクロックCsysを基準周波数fstdより低い低周波数flにするように指示する周波数制御信号Scを出力する(ステップS2)。
この基準周波数fstdより低い低周波数flは、画像処理部2149にシステムクロックCsysを供給開始又は供給停止する際に、DC/DC回路3002の出力電圧レベルVddの変動がシステム制御部2150、画像処理部2149が動作可能な定格電圧レベルの範囲内で収まるように予め設定されたものである(第2の実施の形態も同趣旨)。
すなわち、画像処理部2149にシステムクロックCsysを供給開始又は供給停止する際には、システムクロックCsysの周波数を一時的に低周波数にすることにより、システムクロックCsysで動作する上記のフリップフロップ21,24等のトグル動作が急峻に停止或いは開始されるのを抑制する。これにより、システム制御部2150、画像処理部2149の消費電流が急峻に増大或いは減少することが回避され、DC/DC回路3002の出力電圧レベルVddの低下或いは上昇が可及的に抑制される。
従って、低周波数flの値は、システム制御部2150、画像処理部2149の回路規模、すなわち定格の消費電力量に基づいて決定する必要がある。この決定に際しては、システムクロックCsysの周波数を一時的に低減した場合のDC/DC回路3002の出力電圧レベルVddの低下或いは上昇の抑制効果と、動作速度の低減とのバランスを考慮するのが望ましい。
次に、CPU2001は、クロックジュネレータ3000から出力されるシステムクロックCsysの周波数が、指示に係る低周波数flに到達したか否かを判別する(ステップS3)。そして、CPU2001は、システムクロックCsysの周波数が指示に係る低周波数flに到達した時点で、ゲーテッドクロックセレクタ部3001に待機モード解除信号Sgを出力する(ステップS4)。この場合、ゲーテッドクロックセレクタ部3001は、クロックイネーブル信号Cenをイネーブル状態にすることにより(図6参照)ANDゲート13をオープンさせ、システムクロックCsysが画像処理部2149に入力されるようにする(ステップS4)。
次に、CPU2001は、クロックジュネレータ3000に対して、システムクロックCsysを上記の低周波数flから基準周波数fstdに戻すように指示する周波数制御信号Scを出力する(ステップS5)。そして、CPU2001は、クロックジュネレータ3000から出力されるシステムクロックCsysの周波数が指示に係る基準周波数fstdに戻ったことを確認して(ステップS6、図6参照)、待機モードを解除する場合のシステムクロックCsysの周波数制御を終了する。
上記のように、画像処理部2149にシステムクロックCsysを供給し始める際には、その周波数は一時的に低周波flに掃引された後、直ちに元の基準周波数fstdに戻される。従って、回路ブロックにクロック信号を供給開始する場合の電流変動を可及的に抑制するに当たり、システム制御部2150、画像処理部2149の動作速度が低下するのを可及的に抑制することができる。
次に、画像処理部2149へのシステムクロックCsysの供給を停止(遮断)する場合のシステムクロックCsysの周波数制御を、図5のフローチャートに基づいて説明する。
CPU2001は、画像処理部2149の動作/非動作状況を所定のタイマなどにより検知している。そして、CPU2001は、ユーザにより予め設定された待機モード移行時間以上の長期間に亘って、画像処理部2149が非動作状態であった場合は、画像処理部2149へのシステムクロックCsysの供給遮断が発生したものとして(ステップS21)、ステップS22〜S26の処理を行なう。
なお、ステップS22〜S26の処理は、ステップS24を除いて図4のステップS2〜S6の処理と全く同様なので、ここでは、ステップS24だけを説明する。CPU001は、ステップS24では、システムクロックCsysの周波数が指示に係る低周波数flに到達した時点で(ステップS23)、ゲーテッドクロックセレクタ部3001に待機モード設定信号を出力する。この場合、ゲーテッドクロックセレクタ部3001は、クロックイネーブル信号Cenをディセーブル状態にすることにより(図6参照)ANDゲート13をクローズさせ、画像処理部2149へのシステムクロックCsysの供給を停止(遮断)するように制御する。
図6は、図4、及び図5の処理内容を示すタイミングチャートである。図6に示したように、第1の実施の形態では、システムクロックCsysの周波数を掃引する際には、当該周波数を徐々に連続的に変化させている。従って、この点からも、当該周波数の変動に伴うシステム制御部2150、画像処理部2149の消費電流の変動に起因するDC/DC回路3002の出力電圧Vddの変動を可及的に抑制することが可能となる。
[第2の実施の形態]
次に、本発明の第2の実施の形態を、図7〜図12に基づいて説明する。図7は、システムコントローラ2000内の第2の実施の形態におけるシステムクロックCsysの周波数制御に係る構成を示している。図7に示したように、第2の実施の形態では、ANDゲート36,37を設け、プリンタ用画像処理部2115、スキャナ用画像処理部2114にもシステムクロックCsysを供給可能にしている点で第1の実施の形態と大きく相違している。
すなわち、第2の実施の形態では、第1の実施形態と同様に、主電源が投入されている場合には、クロックジェネレータ4000からのシステムクロックCsysは、システム制御部2150には、常にクロックライン31を介して供給されている。また、第1の実施の形態と同様に、画像処理部2149にも、クロックジェネレータ4000からのシステムクロックCsysをクロックライン31、ANDゲート35、及びクロックライン34を介して供給可能となっている。なお、ANDゲート35の一方の入力端子には、ゲーテッドクロックセレクタ部4001からのイネーブル信号Cen1が信号ライン38を介して入力される。
また、第2の実施の形態において追加したANDゲート36、37の入力端子にも、ANDゲート35と同様に、ゲーテッドクロックセレクタ部4001からのイネーブル信号Cen3,Cen2が、それぞれ信号ライン39,40を介して入力される。なお、ANDゲート36、37の他方の入力端子には、共に上記のクロックライン31が接続されている。
ANDゲート36、37の出力信号であるシステムクロックCsysは、それぞれクロックライン32,33を介して、プリンタ用画像処理部2115、スキャナ用画像処理部2114に供給される。なお、図示省略したが、プリンタ用画像処理部2115、スキャナ用画像処理部2114は、システム制御部2150、画像処理部2149と同様に上記のツリー構造のバッファ、フリップフロップ等を有していることは言うまでもない(第1の実施の形態も同様)。第2の実施の形態における他の構成要素は、図2に示した第1の実施の形態と同様なので、ここでは、その説明を省略する。
次に、第2の実施の形態におけるクロックジェネレータ4000の構成を、図8に基づいて説明する。
図8において、発振回路72は、所定の周波数のクロック信号を生成するものであり、一般的には、水晶発振器等を使用する。分周比設定部71は、発振回路72からのクロック信号の周波数を分周する分周回路73と、後述するPLL(Phase Locked Loop)回路70の出力信号の周波数を分周する分周回路74の分周比を設定する。PLL回路70は、位相比較器75、ループフィルタ76、及びVCO(Voltage Controlled Oscillator)77を有している。
位相比較器75は、分周回路73からの出力信号と分周回路74からの出力信号の位相差(誤差)を検出し、その誤差に比例した誤差電圧信号を出力する。ループフィルタ76は、ローパスフィルタにより構成され、位相比較器75から出力される交流成分を含んだ直流の誤差電圧信号を平滑化する。VCO77は、可変周波数発振器であり、ループフィルタ76から出力された誤差電圧信号に基づいて、当該誤差(位相差)を低減する方向に発振周波数を制御して発振する。
このPLL回路70の発振周波数を任意に変更するために、分周比設定部71が設けられている。この分周比設定部71は、CPU2001からの指示により分周回路73,74の分周比を設定することにより、発振回路72から出力されたクロック信号の周波数finを任意の分周比で分周してPLL回路70から出力させることができる。例えば、分周回路74に分周比「1/N」設定し、分周回路73に分周比「1/M」を設定することにより、PLL回路70から出力されるクロック信号の周波数foutは、入力周波数FinのN/M倍になる。なお、この出力周波数foutが上記システムクロックCsysの周波数となることは言うまでもない。
次に、第2の実施の形態に特有なシステムクロックCsysの周波数制御を説明する。まず、スリープ状態の複数の回路ブロックのうちの、2つの回路ブロックを同時にウェイクアップさせるべく待機モードを解除する場合のシステムクロックCsysの周波数制御を説明する。ここでは、画像処理部2149、プリンタ用画像処理部2115、及びスキャナ用画像処理部2114がスリープ状態にあるものとして説明する。
図9のフローチャートにおいて、システム制御部2150のCPU2001は、待機モード時において、スリープ状態の回路ブロックをウェイクアップさせるべきジョブが発生する、すなわち、スリープ状態の回路ブロックにシステムクロックCsysを供給すべき条件が発生するのを監視している(ステップS31)。
ここで、例えば、スキャナ2070により読み取った原稿情報を電子データとして加工して送信するセンドジョブが発生したものとする。このセンドジョブを実行する場合は、現在スリープ中の画像処理部2149とスキャナ用画像処理部2114を使用する必要がある。そこで、CPU2001は、ステップS31にて、センドジョブの発生を検出した場合は、クロックジュネレータ4000に対して、システムクロックCsysを基準周波数fstdより低い低周波数fmにするように指示する周波数制御信号Scを順次出力する(ステップS32)。
なお、第2の実施の形態に係る周波数制御信号Scには、前述の分周比設定部71に設定すべき目標の低周波数fmを実現するための分周比「N/M」の情報が含まれている。この目標の低周波数fmを実現するための分周比「N/M」は、当該目標の低周波数fmに対応する分周比「N/M」を段階的に実現するために細分化されて、CPU2001からクロックジュネレータ4000に順次出力される。
具体的には、図12に示したように、CPU2001は、所定時間Δt毎に徐々に低い周波数fl1,fl2,fmに対応する「N/M」の分周比を1つずつ、分周比設定部71に設定していく(ステップS32)。例えば、基準周波数fstd=1.5GHzの場合において、目標の低周波数fm=600MHzまで周波数を低減していく場合には、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「4/5」,「3/5」,「2/5」を設定していく。これにより、システムクロックCsysの周波数は、fstd=1.5GHz→fl1=1.2GHz→fl2(fh)=900MHz→fl3(fm)=600MHzと段階的に低減していく。
上記の目標の低周波数fmの意義は、基本的には第1の実施の形態で説明した通りである。ただし、第2の実施の形態における目標の低周波数fmは、同時にウェイクアップさせる回路ブロックの回路規模、すなわち、合計の定格の消費電力量に基づいて決定されたものである点で、第1の実施の形態に係る低周波数flと異なっている。
この場合、第2の実施の形態において同時にウェイクアップさせる画像処理部2149とスキャナ用画像処理部2114の合計の定格の消費電力量は、当然ながら、第1の実施の形態においてウェイクアップさせる画像処理部2149の定格の消費電力量よりも多くなっている。従って、第2の実施の形態に係る目標の低周波数fmは、第1の実施の形態に係る低周波数flよりも低い周波数となっている。
次に、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が、指示に係る低周波数fmに到達したか否かを判別する(ステップS33)。その結果、低周波数fmに到達していなければ、CPU2001は、ステップS32に戻り、次の段階の低周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が指示に係る低周波数fmに到達した場合には(図12参照)、CPU2001は、ゲーテッドクロックセレクタ部4001に待機モード解除信号Sgを出力する(ステップS34)。
この待機モード解除信号Sgには、ウェイクアップさせるべき回路ブロックの情報、ここでは、画像処理部2149とスキャナ用画像処理部2114の識別情報が含まれている。
従って、ゲーテッドクロックセレクタ部4001は、クロックイネーブル信号Cen1,Cen2をイネーブル状態にすることにより(図12参照)、ANDゲート35,37をオープンさせ、システムクロックCsysが画像処理部2149とスキャナ用画像処理部2114に入力されるようにする(ステップS34)。
次に、CPU2001は、クロックジュネレータ4000に対して、システムクロックCsysを上記の低周波数fmから基準周波数fstdに戻すように指示する周波数制御信号Scを順次出力する(ステップS35)。
この周波数制御信号Scにも、ステップS32の場合と同様に、分周比設定部71に設定すべき分周比「N/M」の情報が含まれている。また、上記の分周比「N/M」としては、基準周波数fstdに対応する「N/M」の分周比を段階的に実現するために細分化された分周比が分周比設定部71に順次出力される(図12参照)。この細分化された分周比は、ステップS32の場合と逆の順序で設定されていく。例えば、上記の例では、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「3/5」,「4/5」,「5/5」を順次設定していく。これにより、システムクロックCsysの周波数は、fl3(fm)=600MHz→fl2(fh)=900MHz→fl1=1.2GHz→fstd=1.5GHzと段階的に高くなっていく。
そして、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が指示に係る基準周波数fstdに戻ったか否かを判別する(ステップS36)。その結果、基準周波数fstdに戻っていなければ、CPU2001は、ステップS35に戻り、次の段階の高周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が基準周波数fstdに戻った場合には(図12参照)、CPU2001は、2つの回路ブロックを同時にウェイクアップさせる場合のシステムクロックCsysの周波数制御を終了する。
上記のように、複数の回路ブロックに同時にシステムクロックCsysを供給し始める際にも、第1の実施の形態と同様に、システムクロックCsysの周波数は、一時的に低周波に掃引された後、直ちに元の基準周波数fstdに戻される。従って、複数の回路ブロックへのクロック信号の供給開始を同時に行う場合の当該回路ブロックの電流変動、すなわち、DC/DC回路3002の出力電圧の変動を可及的に抑制することができる。更には、システム制御部2150、及びウェイクアップに係る回路ブロックの動作速度が低下することを可及的に抑制することができる(後述の図10,11の場合も同趣旨)。
次に、スリープ状態の複数の回路ブロックのうちの、1つの回路ブロックをウェイクアップさせるべく待機モードを解除する場合のシステムクロックCsysの周波数制御を、図10のフローチャートに基づいて説明する。
システム制御部2150のCPU2001は、待機モード時において、スリープ状態の回路ブロックをウェイクアップさせるべきジョブが発生する、すなわち、スリープ状態の回路ブロックにシステムクロックCsysを供給すべき条件が発生するのを監視している(ステップS41)。
ここで、例えば、第1の実施の形態のセンドジョブに係る処理が終了した後、待機モードが解除される前に、プリントジョブが発生したものとする。このプリントジョブを実行する場合は、現在スリープ中のプリンタ用画像処理部2115を使用する必要がある。そこで、CPU2001は、ステップS41にて、プリントジョブの発生を検出した場合は、クロックジュネレータ4000に対して、システムクロックCsysを基準周波数fstdより低い低周波数fhにするように指示する周波数制御信号Scを順次出力する(ステップS42)。
この周波数制御信号Scには、前述のように、分周比設定部71に設定すべき目標の低周波数fhを実現するための分周比「N/M」の情報が含まれている。この目標の低周波数fhを実現するための分周比「N/M」は、当該目標の低周波数fhに対応する分周比「N/M」を段階的に実現するために細分化されて、CPU2001からクロックジュネレータ4000に順次出力される。
具体的には、例えば、基準周波数fstd=1.5GHzの場合において、目標の低周波数fh=900MHzまで周波数を低減していく場合には、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「4/5」、「3/5」を順次設定していく。これにより、システムクロックCsysの周波数は、fstd=1.5GHz→fl1=1.2GHz→fl2(fh)=900MHzと段階的に低減していく。
上記の低周波数fhの意義は、基本的には第1の実施の形態で説明した通りである。ただし、この場合の低周波数fhは、同時にウェイクアップさせる回路ブロックの規模(すなわち、合計の定格の消費電力量)に基づいて決定されたものである。
すなわち、前述のセンドジョブを実行する場合には、画像処理部2149とスキャナ用画像処理部2114を同時にウェイクアップさせる必要があったのに対し、今回のプリントジョブを実行する場合には、新たにプリンタ用画像処理部2115だけをウェイクアップさせればよい。
ここで、今回ウェイクアップさせるプリンタ用画像処理部2115の定格の消費電力量は、前回、同時にウェイクアップさせた画像処理部2149とスキャナ用画像処理部2114の合計の定格の消費電力量よりも少ないものとする。この場合には、DC/DC回路3002の出力電圧の変動は、プリンタ用画像処理部2115だけをウェイクアップさせる場合の方が、画像処理部2149とスキャナ用画像処理部2114を同時にウェイクアップさせる場合よりも小さくなる。
そこで、今回、新たにプリンタ用画像処理部2115だけをウェイクアップさせる場合の目標の低周波数fhは、画像処理部2149とスキャナ用画像処理部2114を同時にウェイクアップさせる場合の目標の低周波数fmよりも高い周波数としている(図12参照)。
このように、ウェイクアップさせる回路ブロックの消費電力量の大小に応じて、システムクロックCsysの周波数を一時的に低減する際の目標の周波数の値を変更することにより、システムクロックCsysに基づいて常に動作しているシステム制御部2150等の処理速度を必要以上に落とすことなく、ウェイクアップ時のDC/DC回路3002の出力電圧の変動を抑制することが可能となる。
次に、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が、指示に係る低周波数fhに到達したか否かを判別する(ステップS43)。その結果、低周波数fhに到達していなければ、CPU2001は、ステップS42に戻り、次の段階の低周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が指示に係る低周波数fhに到達した場合には(図12参照)、CPU2001は、ゲーテッドクロックセレクタ部4001に待機モード解除信号Sgを出力する(ステップS44)。
この待機モード解除信号Sgには、ウェイクアップさせるべき回路ブロックの情報、ここでは、プリンタ用画像処理部2115の識別情報が含まれている。従って、ゲーテッドクロックセレクタ部4001は、クロックイネーブル信号Cen3をイネーブル状態にする(ステップS44、図12参照)。これにより、ANDゲート36がオープンされ、システムクロックCsysがプリンタ用画像処理部2115に入力されることとなる。
次に、CPU2001は、クロックジュネレータ4000に対して、システムクロックCsysを上記の低周波数fhから基準周波数fstdに戻すように指示する周波数制御信号Scを順次出力する(ステップS45)。
この周波数制御信号Scにも、ステップS42の場合と同様に、分周比設定部71に設定すべき分周比「N/M」の情報が含まれている。また、上記の分周比「N/M」としては、基準周波数fstdに対応する「N/M」の分周比を段階的に実現するために細分化された分周比が分周比設定部71に順次出力される(図12参照)。この細分化された分周比は、ステップS42の場合と逆の順序で設定されていく。例えば、上記の例では、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「4/5」、「5/5」を順次設定していく。これにより、システムクロックCsysの周波数は、fl1(fh)=900MHz→fl1=1.2GHz→fstd=1.5CHzと段階的に高くなっていく。
そして、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が指示に係る基準周波数fstdに戻ったか否かを判別する(ステップS46)。その結果、基準周波数fstdに戻っていなければ、CPU2001は、ステップS45に戻り、次の段階の高周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が基準周波数fstdに戻った場合には(図12参照)、CPU2001は、1つの回路ブロックをウェイクアップさせる場合のシステムクロックCsysの周波数制御を終了する。
次に、ウェイクアップ状態の3つの回路ブロックの全てをスリープさせるべく待機モードを設定する場合の周波数制御を、図11のフローチャートに基づいて説明する。
システム制御部2150のCPU2001は、待機モードが解除された状態では、ジョブの発生状況を監視し、ウェイクアップ状態の回路ブロックをスリープさせるべきか否かを所定のタイマなどに基づいて判別している(ステップS51)。
ここで、例えば、上記のプリントジョブが終了した場合において、予め設定された所定の時間以上の時間に亘って非動作状態となっていた回路ブロックが存在したものとする。なお、上記の非動作状態の回路ブロックの判定処理、すなわちスリープさせるべきか否かの判定処理は、回路ブロック毎に個別に行なっても、或いは、複数の回路ブロック全体を1つの回路ブロックと見做して行ってもよい。
ここでは、ステップS51において、画像処理部2149、スキャナ用画像処理部2114、プリンタ用画像処理部2115の3つの回路ブロックをスリープさせるべきだと判別されたものとする。この場合は、CPU2001は、クロックジュネレータ4000に対して、システムクロックCsysを基準周波数fstdより低い低周波数fnにするように指示する周波数制御信号Scを順次出力する(ステップS52)。
この周波数制御信号Scには、前述のように、分周比設定部71に設定すべき目標の低周波数fnを実現するための分周比「N/M」の情報が含まれている。この目標の低周波数fnを実現するための分周比「N/M」は、当該目標の低周波数fnに対応する分周比「N/M」を段階的に実現するために細分化されて、CPU2001からクロックジュネレータ4000に順次出力される。
具体的には、例えば、基準周波数fstd=1.5GHzの場合において、目標の低周波数fn=300MHzまで周波数を落としていく場合には、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「4/5」,「3/5」,「2/5」,「1/5」を順次設定していく。これにより、システムクロックCsysの周波数は、fstd=1.5GHz→fl1=1.2GHz→fl2(fh)=900MHz→fl3(fm)=600MHz→fn=300MHz→と段階的に周波数を低減していく。
上記の低周波数fnの意義は、基本的には第1の実施の形態で説明した通りである。ただし、この場合の低周波数fnは、同時にスリープさせる回路ブロックの規模(すなわち、合計の定格の消費電力量)に基づいて決定されたものである。
すなわち、前述のセンドジョブを実行する場合には、画像処理部2149とスキャナ用画像処理部2114の2つを同時にウェイクアップさせる必要があったのに対し、今回のスリープ処理を行なう場合には、画像処理部2149とスキャナ用画像処理部2114とプリンタ用画像処理部2115の3つを同時にスリープさせる必要がある。
この場合は、これまでの説明から推測できるように、同時にスリープさせる画像処理部2149とスキャナ用画像処理部2114とプリンタ用画像処理部2115の合計の定格の消費電力量は、同時にウェイクアップさせる画像処理部2149とスキャナ用画像処理部2114の合計の定格の消費電力量よりも多くなっている。
そこで、今回のように3つの回路ブロックを同時にスリープさせる場合の目標の低周波数fnは、2つ回路ブロックを同時にウェイクアップさせる場合の目標の低周波数fmよりも低い周波数としている(図12参照)。
次に、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が、指示に係る低周波数fnに到達したか否かを判別する(ステップS53)。その結果、低周波数fnに到達していなければ、CPU2001は、ステップS52に戻り、次の段階の低周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が指示に係る低周波数fnに到達した場合には(図12参照)、CPU2001は、ゲーテッドクロックセレクタ部4001に待機モード設定信号を出力する(ステップS54)。
この待機モード設定信号には、スリープさせるべき回路ブロックの情報、ここでは、画像処理部2149、スキャナ用画像処理部2114、及びプリンタ用画像処理部2115の識別情報が含まれている。従って、ゲーテッドクロックセレクタ部4001は、クロックイネーブル信号Cen1〜3をディセーブル状態にする(ステップS54、図12参照)。これにより、ANDゲート35〜37がクローズし、画像処理部2149、スキャナ用画像処理部2114、及びプリンタ用画像処理部2115へのシステムクロックCsysの供給が停止されることとなる。
次に、CPU2001は、クロックジュネレータ4000に対して、システムクロックCsysを上記の低周波数fnから基準周波数fstdに戻すように指示する周波数制御信号Scを順次出力する(ステップS55)。
この周波数制御信号Scにも、ステップS52の場合と同様に、分周比設定部71に設定すべき分周比「N/M」の情報が含まれている。また、上記の分周比「N/M」としては、基準周波数fstdに対応する「N/M」の分周比を段階的に実現するために細分化された分周比が分周比設定部71に順次出力される(図12参照)。この細分化された分周比は、ステップS52の場合と逆の順序で設定されていく。例えば、上記の例では、CPU2001は、Δt時間経過する毎に分周比設定部71にそれぞれN/M=「2/5」、「3/5」「4/5」、「5/5」を設定していく。これにより、システムクロックCsysの周波数は、fn=300MHz→fl3(fm)=600MHz→fl2(h)=900MHz→fl1=1.2GHz→fstd=1.5CHzと段階的に高くなっていく。
そして、CPU2001は、クロックジュネレータ4000から出力されるシステムクロックCsysの周波数が指示に係る基準周波数fstdに戻ったか否かを判別する(ステップS56)。その結果、基準周波数fstdに戻っていなければ、CPU2001は、ステップS55に戻り、次の段階の高周波数に係る分周比「N/M」を含む周波数制御信号Scをクロックジュネレータ4000に出力する。
一方、システムクロックCsysの周波数が基準周波数fstdに戻った場合には(図12参照)、CPU2001は、3つの回路ブロックを同時にスリープさせる場合のシステムクロックCsysの周波数制御を終了する。
図12に示したように、第2の実施の形態では、システムクロックCsysの周波数を所定時間毎に段階的に変更している。従って、この点からも、当該周波数の変動に伴うシステム制御部2150、画像処理部2149等の回路ブロックの消費電流の変動に起因するDC/DC回路3002の出力電圧Vddの変動を可及的に抑制することが可能となる。
また、第1の実施の形態のクロックジェネレータでは、発振回路のキャパシタンスを変化させることによりアナログ的に発振周波数を変更していたのに対し、第2の実施の形態のクロックジェネレータでは、PLL回路を用いてデジタル的に発振周波数を変更している。従って、第2の実施の形態では、第2の実施の形態よりも、高分解能で且つ広いレンジでシステムクロックCsysの周波数を変化させることが可能となる。
[他の実施の形態]
上記の第1,第2の実施の形態では、システムクロックCsysに基づいて常に動作しているシステム制御部2150等の処理速度を必要以上に落とすことなく、システムクロックCsysを供給開始或いは供給停止する際のDC/DC回路3002の出力電圧の変動を抑制するように、システムクロックCsysの周波数の低減率を決定していた。
しかしながら、この場合でも、システムクロックCsysの周波数が低下することにより、システム制御部2150等の処理速度がある程度低下することは否めない。
そこで、この処理速度の低下を補うために、低下させたシステムクロックCsysの周波数を基準周波数fstdに戻す際に、一旦、基準周波数fstdをオーバーさせて低下した処理速度分の遅れを取り戻した後に、基準周波数fstdに戻すようにすることも可能である。
また、上記の第1,第2の実施の形態の機能を画像処理装置以外の例えば携帯電話機等の情報処理装置に適用することも可能である。さらに、情報処理装置以外の例えばロボットの制御、自動車のエンジン制御、サスペンション制御、ブレーキ制御、エアバッグ制御等、更には航空機、電車、船舶等の自動車以外の移動体の各種制御等に、上記の第1,第2の実施の形態の機能を適用することも可能である。
また、本発明は、上述した各実施の形態の装置に限定されず、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
また、本発明の目的は、前述した各実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した各実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した各実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した各実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の実施の形態に係るクロック供給回路を適用した画像処理装置の概略構成を示すブロック図である。 第1の実施の形態に係るゲーテッドクロック方式によるクロック信号の供給制御系を示すブロック図である。 第1の実施の形態に係るクロックジェネレータの概略構成を示すブロック図である。 第1の実施の形態に係るクロック信号の供給開始時の当該クロック信号の周波数制御を示すフローチャートである。 第1の実施の形態に係るクロック信号の供給停止時の当該クロック信号の周波数制御を示すフローチャートである。 図4、図5の周波数制御を示すタイムチャートである。 第2の実施形態に係るゲーテッドクロック方式によるクロック信号の供給制御系を示すブロック図である。 第2の実施の形態に係るクロックジェネレータの概略構成を示すブロック図である。 第2の実施の形態に係る2つの回路ブロックに同時にクロック信号を供給開始する場合の当該クロック信号の周波数制御を示すフローチャートである。 第2の実施の形態に係る1つの回路ブロックにクロック信号を供給開始する場合の当該クロック信号の周波数制御を示すフローチャートである。 第2の実施の形態に係る3つの回路ブロックに対して同時にクロック信号の供給を停止する場合の当該クロック信号の周波数制御を示すフローチャートである。 図9〜図11の周波数制御を示すタイムチャートである。
符号の説明
3000,4000…クロックジェネレータ、3001,4001…ゲーテッドクロックセレクタ部、3002…DC/DC回路、2000…コントローラユニット、2150…システム制御部、2149…画像処理部、2114…スキャナ用画像処理部、2115…プリンタ用画像処理部、2001…CPU、2002…ROM、2003…RAM

Claims (12)

  1. 複数の回路ブロックを備えるクロック供給装置であって、
    前記複数の回路ブロックへ電圧を供給する電圧供給手段と、
    クロック信号を生成し、該生成されたクロック信号を前記複数の回路ブロックに含まれる特定の回路ブロックへ供給するクロック生成手段と、
    前記クロック生成手段が生成するクロック信号の周波数を制御する制御手段と、
    前記クロック生成手段が生成するクロック信号を前記特定の回路ブロックに供給するか否かの供給状態を切替える切替手段とを有し、
    前記制御手段は、前記切替手段が前記供給状態を切替える際に、前記クロック信号の周波数を、第1周波数から前記特定の回路ブロックの消費電力量に応じた第2周波数へ一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とするクロック供給装置。
  2. 前記クロック供給装置は、複数の前記特定の回路ブロックを有し、
    記制御手段は、前記切替手段が複数の前記特定の回路ブロックへの前記供給状態を同時に切替える場合に、複数の前記特定の回路ブロックの消費電力量に応じた前記第2周波数前記クロック信号の周波数を一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とする請求項に記載のクロック供給装置。
  3. 記制御手段は、前記切替手段が複数の前記特定の回路ブロックへの前記供給状態を同時に切替える場合に、複数の前記特定の回路ブロックの数に応じた前記第2周波数前記クロック信号の周波数を一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とする請求項に記載のクロック供給装置。
  4. 前記制御手段は、前記クロック信号の周波数を前記第1周波数から前記第2周波数へ一時的に低下させる場合に、段階的に周波数を低下させていくことを特徴とする請求項1乃至の何れかに記載のクロック供給装置。
  5. 前記制御手段は、所定時間毎に新たな目標周波数を設定していくことにより、前記第2周波数に向けて段階的に周波数を低下させていくことを特徴とする請求項に記載のクロック供給装置。
  6. 前記クロック生成手段は、前記複数の回路ブロックに含まれ、前記特定の回路ブロックとは異なる他の回路ブロックへ前記クロック信号を常に供給することを特徴とする請求項1乃至5の何れか1項に記載のクロック供給装置。
  7. 複数の回路ブロックへ電圧を供給する電圧供給部と、クロック信号を生成して該生成されたクロック信号を前記複数の回路ブロックに含まれる特定の回路ブロックへ供給するクロック生成部を有するクロック供給装置の制御方法であって、
    前記クロック生成部が生成するクロック信号を前記特定の回路ブロックに供給するか否かの供給状態を切替える切替工程と、
    前記切替工程が前記供給状態を切替える際に、前記クロック信号の周波数を、第1周波数から前記特定の回路ブロックの消費電力量に応じた第2周波数へ一時的に低下させた後に前記第1周波数へ戻すよう前記クロック生成部を制御する制御工程と、
    を有することを特徴とするクロック供給装置の制御方法。
  8. 前記クロック供給装置は、複数の前記特定の回路ブロックを有し、
    記制御工程は、前記切替工程複数の前記特定の回路ブロックへの前記供給状態を同時に切替える場合に、複数の前記特定の回路ブロックの消費電力量に応じた前記第2周波数前記クロック信号の周波数を一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とする請求項に記載のクロック供給装置の制御方法。
  9. 記制御工程は、前記切替工程が複数の前記特定の回路ブロックへの前記供給状態を同時に切替える場合に、複数の前記特定の回路ブロックの数に応じた前記第2周波数前記クロック信号の周波数を一時的に低下させた後に前記第1周波数へ戻すよう制御することを特徴とする請求項に記載のクロック供給装置の制御方法。
  10. 前記制御工程は、前記クロック信号の周波数を前記第1周波数から前記第2周波数へ一時的に低下させる場合に、段階的に周波数を低下させていくことを特徴とする請求項乃至の何れかに記載のクロック供給装置の制御方法。
  11. 前記制御工程は、所定時間毎に新たな目標周波数を設定していくことにより、前記第2周波数に向けて段階的に周波数を低下させていくことを特徴とする請求項10に記載のクロック供給装置の制御方法。
  12. 前記クロック生成部は、前記複数の回路ブロックに含まれ、前記特定の回路ブロックとは異なる他の回路ブロックへ前記クロック信号を常に供給することを特徴とする請求項7乃至11の何れか1項に記載のクロック供給装置の制御方法。
JP2005340952A 2005-11-25 2005-11-25 クロック供給装置及びその制御方法 Expired - Fee Related JP4402641B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005340952A JP4402641B2 (ja) 2005-11-25 2005-11-25 クロック供給装置及びその制御方法
US11/559,115 US7689855B2 (en) 2005-11-25 2006-11-13 Clock supplying apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005340952A JP4402641B2 (ja) 2005-11-25 2005-11-25 クロック供給装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2007148681A JP2007148681A (ja) 2007-06-14
JP4402641B2 true JP4402641B2 (ja) 2010-01-20

Family

ID=38120661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005340952A Expired - Fee Related JP4402641B2 (ja) 2005-11-25 2005-11-25 クロック供給装置及びその制御方法

Country Status (2)

Country Link
US (1) US7689855B2 (ja)
JP (1) JP4402641B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8078892B2 (en) 2007-11-01 2011-12-13 Ricoh Company, Limited Information-processing apparatus, packet processing method, and computer program product for communicating with an external network device and switching between a normal power mode and a power saving mode
FR2932047B1 (fr) * 2008-05-29 2010-08-13 Airbus France Systeme informatique de maintenance d'un aeronef a terminal distant
JP2011165247A (ja) * 2010-02-08 2011-08-25 Seiko Epson Corp 電子機器
WO2012153377A1 (ja) * 2011-05-06 2012-11-15 富士通株式会社 半導体集積回路およびその制御方法
KR101851614B1 (ko) * 2011-12-12 2018-06-12 삼성전자주식회사 기능블럭을 포함하는 SoC의 클락 제어 방법, 이를 구현한 SoC 및 이를 포함하는 반도체 시스템
JP2014096655A (ja) * 2012-11-08 2014-05-22 Sony Corp 情報処理装置、撮像装置および情報処理方法
CN110221650B (zh) * 2019-06-18 2021-04-09 中国人民解放军国防科技大学 一种适用于高性能网络处理器芯片的时钟发生器
JP7297607B2 (ja) * 2019-09-04 2023-06-26 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
JP7309543B2 (ja) * 2019-09-12 2023-07-18 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08202468A (ja) 1995-01-27 1996-08-09 Hitachi Ltd マルチプロセッサシステム
US5822596A (en) * 1995-11-06 1998-10-13 International Business Machines Corporation Controlling power up using clock gating
JPH10254587A (ja) 1997-03-14 1998-09-25 Toshiba Corp コンピュータシステム
JP3178371B2 (ja) 1997-05-06 2001-06-18 日本電気株式会社 半導体集積回路の設計方法
TW569088B (en) * 2002-09-13 2004-01-01 Htc Corp Method of changing CPU frequency
KR101136036B1 (ko) * 2003-12-24 2012-04-18 삼성전자주식회사 유휴 모드에서의 전력 소모가 감소된 프로세서 시스템 및그 방법
US7430264B2 (en) * 2004-11-04 2008-09-30 International Business Machines Corporation Method to reduce transient current swings during mode transitions of high frequency/high power chips

Also Published As

Publication number Publication date
US7689855B2 (en) 2010-03-30
JP2007148681A (ja) 2007-06-14
US20070121771A1 (en) 2007-05-31

Similar Documents

Publication Publication Date Title
JP4402641B2 (ja) クロック供給装置及びその制御方法
US8612794B2 (en) Clock signal generating device and electronic device
US7739533B2 (en) Systems and methods for operational power management
JP3360665B2 (ja) 省電力モードを有する電子印刷装置および制御方法
US20130318382A1 (en) Power management apparatus, image forming apparatus and power management method
TWI470410B (zh) 電子系統及其電源管理方法
JP3070527B2 (ja) 無線携帯端末
CN107068177B (zh) 控制存储器的控制设备及其控制方法
GB2479256A (en) Method to reduce system idle power through system VR output adjustments during SOix states.
US9395807B2 (en) Power management apparatus, image forming apparatus and power management method
JP2005031729A (ja) ディスク制御装置、ディスク装置、ディスク制御方法、ディスク制御プログラム
US20090083559A1 (en) Electronic device and method of controlling power thereof
JP4358041B2 (ja) 制御装置、情報処理装置、制御方法、省電力制御プログラムおよび記録媒体
CN111541825B (zh) 电子装置及其控制方法
JP2006099569A (ja) メモリインタフェース回路及びクロック制御方法
JP3266110B2 (ja) ビデオコントローラ及びその消費電力制御回路
CN109660689B (zh) 图像形成设备、图像形成设备的控制方法和存储介质
JP2002086844A (ja) 画像形成装置
JP2002229666A (ja) 画像形成制御装置
JP2012250394A (ja) 画像形成装置及びその電力制御方法、並びにプログラム
CN1332287C (zh) 电源管理的频率电压装置及频率电压控制的方法
JP6661585B2 (ja) 情報処理装置
JP2019165373A (ja) 画像形成装置及びプログラム
KR100706224B1 (ko) 컴퓨터 시스템의 웨이크 업 방법
JP2021138081A (ja) 画像形成装置、画像形成装置の制御方法、プログラム、及び画像形成システム

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091027

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091029

R150 Certificate of patent or registration of utility model

Ref document number: 4402641

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121106

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131106

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees