JP2002099348A - クロック制御方法およびクロック制御装置 - Google Patents

クロック制御方法およびクロック制御装置

Info

Publication number
JP2002099348A
JP2002099348A JP2000286719A JP2000286719A JP2002099348A JP 2002099348 A JP2002099348 A JP 2002099348A JP 2000286719 A JP2000286719 A JP 2000286719A JP 2000286719 A JP2000286719 A JP 2000286719A JP 2002099348 A JP2002099348 A JP 2002099348A
Authority
JP
Japan
Prior art keywords
clock
instruction
clock control
control method
processor
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.)
Pending
Application number
JP2000286719A
Other languages
English (en)
Inventor
Shinichi Marui
信一 丸井
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2000286719A priority Critical patent/JP2002099348A/ja
Publication of JP2002099348A publication Critical patent/JP2002099348A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Power Sources (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 従来のクロック低速化手法では、プロセッサ
外部からの割り込み要求が必要であり,端子数の増加を
招いていた。 【解決手段】 特定命令を実行する際に,それらの命令
が実行されることをハードウェアで自動的に検知し、そ
の検知した情報を基にして,原クロック150が入力さ
れる分周器160の動作を開始させ、原クロック150
を分周したクロックをプロセッサの動作クロック170
とすることで,プロセッサ全体を低速動作させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、主にプロセッサの
クロックを制御するクロック制御方法およびその装置に
関するものである。
【0002】
【従来の技術】近年,携帯電話に代表される移動体端末
の普及が著しい。これまでの音声データ通信に加え,次
世代の移動体通信では動画像や音楽データまでもが扱わ
れる。データ処理を行うプロセッサの高性能化への要求
は増大する一方だが,端末の小型化に伴い,チップサイ
ズの小型化,同時にバッテリ駆動であることから、プロ
セッサの低消費電力化への要求も非常に高くなってきて
いる。
【0003】チップサイズの小型化については、プロセ
スルールの進歩により集積度をあげることで対応してい
るが,チップ内部の小型化に比較して,端子本数の増加
によるチップサイズ増大という側面も見え始めている。
【0004】低消費電力化への方策の一つとしては動作
周波数を下げるというものがある。しかしながら、上記
の高性能化とは相反する要求であり,処理性能を損なわ
ないように低速動作させる技術が開発されている。
【0005】例えば,特開平11−110063号公報
に記載の内容は、内部資源へのアクセス信号情報をプロ
セッサ外部に取り出し,そのアクセス頻度によりプロセ
ッサの処理負荷を判断し,処理負荷が軽い場合は外部よ
りクロックの供給を停止するというものである。
【0006】また、ある処理が終了すると、次の処理要
求(割り込み)があるまでクロックを止めるなどをして
低消費電力化を図るのが一般的である。
【0007】しかしながら,この方法ではいずれもプロ
セッサ外部とのやりとりのための端子が増え,ひいては
チップサイズの増大につながるという問題点を有してい
た。
【0008】本発明はかかる点に鑑み,高速動作が不要
な命令実行時には同等の低速動作命令に置き換えること
で、プロセッサの低消費電力化を実現するクロック制御
方法およびクロック制御装置を提供することを目的とし
ている。
【0009】
【課題を解決するための手段】上記目的を達成するため
に、本発明のクロック制御方法は,特定命令を実行する
際に、それらの命令が実行されることをハードウェアで
自動的に検知し、その検知した情報を基にして、原クロ
ックが入力される分周器の動作を開始させ、原クロック
を分周したクロックをプロセッサの動作クロックとする
ことで、プロセッサ全体を低速動作させるステップを包
含している。
【0010】前記特定命令は、プログラム時に明示的に
プログラマによって挿入されてもよく、プログラム作成
後にNOP(No Operation)命令の固定回
数繰り返しを検出し,それらのNOP命令を自動的に前
記特定命令に置き換えるコンバートプログラムによって
挿入されてもよい。
【0011】前記コンバートプログラムは,コンバート
前のプログラムの実行時間と前記特定命令挿入後のプロ
グラムの実行時間を等しく保ってもよい。
【0012】前記コンバートプログラムは,プロセッサ
のパイプラインの段数がNである場合に,NOP命令が
M回(M>=N)以上繰り返された時に(M−N+1)
個のNOP命令を前記特定命令への置換対象としてもよ
い。
【0013】前記分周器の分周比は,前記特定命令のデ
コード結果により可変であってもよく、前記特定命令に
よらず予め定められた値となってもよい。
【0014】また,上記目的を達成するために本発明の
クロック制御装置は、命令コードを入力し、低速動作指
示信号と分周比指示信号を出力する命令デコーダと、原
クロックと前記低速動作指示信号を入力とし、動作クロ
ックを出力する分周器を備えている。
【0015】
【発明の実施の形態】以下、本発明の一実施形態に係る
クロック制御方法について図面を参照しながら説明す
る。図1は、本発明の一実施形態に係るクロック制御方
法を示すものである。プログラム作成後からプロセッサ
内部での実行方法を示す。
【0016】(命令の置き換え)ここでは次のような命
令列を置換対象とする。処理時間がある程度精度良く予
測できている場合は,固定数回のNOP(No Ope
ration)命令を繰り返すことにより時間を稼ぐこ
とが多い。それらのNOP命令を対象とする。
【0017】また,用意されている低速動作命令は、N
OP4のみ(周波数が1/4となり4サイクルかけて1
つのNOPを実行する)であるとする。
【0018】オリジナルプログラム10は低速動作を考
慮せずに組まれたプログラムである。オリジナルプログ
ラム10をコンバータ30により,変換後プログラム2
0へ変換する。コンバータの動きは次のようになる。
【0019】・固定数回のNOP(No Operat
ion)命令を検出する。
【0020】・NOPの4命令分を一つのNOP4命令
に置換する。
【0021】または ・固定数回のループ,リピート命令中のNOP命令を検
出する。
【0022】・NOP命令4つをNOP4命令に置換し
た場合の繰り返し数に置き換える。
【0023】「REPEAT 8 NOP」はNOPを
8回繰り返すと言う命令である。
【0024】この置換により実行時間は変わらず,かつ
NOP命令であるから処理性能も全く損なわない。
【0025】4命令で過不足なく置換できない場合は,
最大限置き換えた後は自動的にNOP命令を挿入する。
図2では10回のNOP繰り返しなので8回分は低速動
作命令NOP4を2回繰り返すことで実現させ,残りの
2回分は低速動作させず,そのままのNOP命令を2回
繰り返す。
【0026】以上では,NOPが繰り返される分を低速
動作対象としたが,厳密には、プロセッサはパイプライ
ン動作をするので,その分の考慮がないと性能の劣化に
つながる可能性がある。
【0027】すなわち,一部のパイプラインステージが
NOPを実行していても、他のステージがNOP以外の
命令を実行しているとすれば,その命令の一部も低速動
作してしまうからである。
【0028】図3はパイプライン段数が5段のプロセッ
サで4つのNOP命令が続いた場合を示している。この
場合では全てのパイプラインステージがNOP命令を実
行している場合はない。最大でも4段分のパイプライン
ステージがNOPになるだけである(○で囲んだ部
分)。
【0029】図中時間Aではパイプラインステージの
5,4,3,2まではNOP命令でつまっているが、パ
イプラインステージ1はNOP以外の命令である。従っ
て5命令以上NOPが続けば,(NOPの連続回数−
4)のNOP命令が置換できることになる。図4では8
つのNOPが連続しているので、最初から4つのNOP
が対象となる。
【0030】本実施形態では、低速動作命令がNOP4
だけとしたが,NOP2,NOP8等,それぞれ低速動
作の度合いが違うものがあっても上記の方法は同じであ
る。コンバート時にできるだけ低速度合いの大きいもの
から順に置換していくようにすればよい。また,コンバ
ータに頼らずに,プログラム時に考慮しながらコーディ
ングしてもよい。
【0031】(内部の動作−分周比が1/4固定の場
合)上記の変換後のプログラム20を実行する例を説明
する。
【0032】低速動作命令としてNOP4とNOP8が
用意されているとする。
【0033】命令コード110は前記変換プログラムを
機械語に変換したものである。
【0034】デコーダ120は命令コード110をデコ
ードし,命令コード110が低速動作命令(NOP4,
NOP8)であれば低速動作指示信号130をアクティ
ブにする。また、低速動作命令がNOP4であれば、分
周比指示信号140を「0」に,低速動作命令がNOP
8であれば分周比指示信号140を「1」にする。
【0035】分周器160は、端子からのクロックもし
くはPLL出力の何も加工していないクロック(原クロ
ック150)と低速動作指示信号130,分周比指示信
号140を入力として,低速動作指示信号130が
「0」の場合,原クロック150をそのまま動作クロッ
ク170として出力する。
【0036】また、低速動作指示信号130が「1」か
つ分周比指示信号140が「0」の場合,原クロック1
50を1/4分周し,そのまま動作クロック170とし
て出力する。
【0037】また,低速動作指示信号130が「1」か
つ分周比指示信号140が「1」の場合,原クロック1
50を1/8分周し,動作クロック170として出力す
る。
【0038】(分周器の動作)図5に示す装置により、
原クロック150にマスク信号136により制御を施
し、低速クロック(動作クロック170)を生成する。
ここで、内部低速動作指示信号135は図6に示す装置
により生成される。
【0039】図6により、内部動作指示信号135を内
部的に複数サイクル出力する動作を説明する。ただし,
内部動作指示信号135の出力方法はこの方法に限らな
い。ここでは1つの低速動作命令が実行され,デコーダ
120から1サイクルの低速動作指示信号130が出力
されたとする。
【0040】内部動作指示信号135はアクティブ・ロ
ーとする。230は分周比設定レジスタであり,前もっ
て設定しておく。220はダウンカウンタであり,カウ
ンタ値が「0」である時に,0検出信号221をアクテ
ィブにする。
【0041】ダウンカウントはイネーブル信号222が
アクティブの時のみ行ない,そのタイミングは原クロッ
ク150の立上りエッジである。また、セレクト信号が
アクティブの場合は,ウェイト数設定レジスタの値を同
タイミングでロードする。
【0042】210はフリップフロップであり,連続ウ
ェイト指示信号を,原クロック150の立ち下がりエッ
ジで,記憶保持する。
【0043】以上の構成を持つ回路を用い、以下の手順
で内部低速動作指示信号135(0検出信号221)を
出力する。ここでは、分周比設定レジスタ230には
「3」が設定されているとする。
【0044】・リセット直後 原クロック150は発振している。
【0045】フリップフロップ210は「0」に初期化
される。
【0046】・低速動作指示信号130がアクティブに
なる。
【0047】・ダウンカウンタ220に分周比設定レジ
スタ230の値をロードする。
【0048】・ダウンカウンタ220に0以外の値がロ
ードされたことで,0検出信号221(内部低速動作指
示信号135)がノンアクティブになる。
【0049】以降,ダウンカウンタ220のイネーブル
信号222はアクティブ状態を保持する。
【0050】・ダウンカウンタ220はダウンカウント
を続け,0検出信号221(内部低速動作指示信号13
5)がアクティブになると,イネーブル信号222がノ
ンアクティブになる。
【0051】すなわち,低速動作命令NOP4が1つ実
行され、デコーダ120により,低速動作指示信号13
0が1サイクルアクティブになれば,周波数設定レジス
タ230の値+1サイクルの内部低速動作指示信号13
5が生成される。
【0052】図7に分周比設定レジスタの値が「3」の
場合のタイミングチャートを示す。これがNOP4を実
行した場合のタイミングチャートとなる。
【0053】(内部の動作−分周比が1/4,1/8可
変の場合)図8では図6の場合に比べて第1の分周比設
定レジスタ801と第2の分周比設定レジスタ802を
備えている。
【0054】また、切り替え手段803は、分周比指示
信号140が「0」の場合は第1の分周比設定レジスタ
801の出力を選択し、分周比指示信号140が「1」
の場合は第2の分周比設定レジスタ802の出力を選択
する。
【0055】第1の分周比設定レジスタ801には
「3」を設定し、第2の分周比設定レジスタ802には
「7」を設定しておく。
【0056】従って、低速動作指示信号130がデコー
ダ120より出力された時に、分周比指示信号140が
「1」の場合は周波数が1/8の低速動作を行い、分周
比指示信号140が「0」の場合は周波数が1/4の低
速動作を行うことが可能となる。
【0057】尚、本実施形態では、分周比が1/4、1
/8の場合のみを示したが、他の分周比でも同様であ
る。また、分周比指示信号140を多ビット構成とし、
更に複数の分周比から分周比を選択することも可能であ
る。
【0058】更に、分周比指示信号140(多ビット)
をデコードする回路を設け、ダイナミックにダウンカウ
ンタ220に値をロードさせることも、本回路を基にす
れば容易に実現できる。
【0059】
【発明の効果】以上のように本発明によれば、時間を稼
ぐだけのNOP命令列を、実行時間を変えずに低速動作
命令に置き換えることができ,端子数増加によるチップ
サイズの増大を防ぎつつ,低消費電力化が可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態によるクロック制御方法を
示す図
【図2】コンバート方法の一例を示す図
【図3】4連続NOP命令時のパイプラインの状態を示
す図
【図4】8連続NOP命令時のパイプラインの状態を示
す図
【図5】クロック制御の原理を示す図
【図6】低速動作指示信号をトリガとして内部低速動作
指示信号を出力する構成を示した図
【図7】内部低速動作信号により周波数が1/4に低減
されることを示す図
【図8】分周比が可変の場合の一例を示す図
【符号の説明】
10 オリジナルプログラム 20 変換後プログラム 30 コンバータ 110 命令コード 120 命令デコーダ 130 低速動作指示信号 136 マスク信号 135 内部低速動作指示信号 140 分周比指示信号 150 原クロック 160 分周器 170 動作クロック 205 リセット信号 210 フリップフロップ 211 フリップフロップ出力 220 ダウンカウンタ 221 0検出信号 222 ダウンカウンタイネーブル信号 230 分周比設定レジスタ 801 第1の分周比設定レジスタ 802 第2の分周比設定レジスタ 803 切り替え手段

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】プロセッサのクロック制御の方法であっ
    て、特定命令を実行する際に,それらの命令が実行され
    ることをハードウェアで自動的に検知し,その検知した
    情報を基にして,原クロックが入力される分周器の動作
    を開始させ,原クロックを分周したクロックをプロセッ
    サの動作クロックとすることで,プロセッサ全体を低速
    動作させるクロック制御方法。
  2. 【請求項2】前記特定命令はプログラム時に明示的にプ
    ログラマによって挿入される請求項1記載のクロック制
    御方法。
  3. 【請求項3】前記特定命令は,プログラム作成後にNO
    P(No Operation)命令の固定回数繰り返
    しを検出し,それらのNOP命令を自動的に前記特定命
    令に置き換えるコンバートプログラムによって挿入され
    る請求項1記載のクロック制御方法。
  4. 【請求項4】前記コンバートプログラムは,コンバート
    前のプログラムの実行時間と前記特定命令挿入後のプロ
    グラムの実行時間を等しく保つ請求項1記載のクロック
    制御方法。
  5. 【請求項5】前記コンバートプログラムは,プロセッサ
    のパイプラインの段数がNである場合に,NOP命令が
    M回(M>=N)以上繰り返された時に(M−N+1)
    個のNOP命令を前記特定命令への置換対象とする請求
    項1記載のクロック制御方法。
  6. 【請求項6】前記分周器の分周比は,前記特定命令のデ
    コード結果により可変である請求項1記載のクロック制
    御方法。
  7. 【請求項7】前記分周器の分周比は,前記特定命令によ
    らず予め定められた値となる請求項1記載のクロック制
    御方法。
  8. 【請求項8】プロセッサのクロック制御装置であって、
    命令コードを入力し,低速動作指示信号と分周比指示信
    号を出力する命令デコーダと,原クロックと前記低速動
    作指示信号を入力とし,動作クロックを出力する分周器
    を備えたことを特徴とするクロック制御装置。
JP2000286719A 2000-09-21 2000-09-21 クロック制御方法およびクロック制御装置 Pending JP2002099348A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000286719A JP2002099348A (ja) 2000-09-21 2000-09-21 クロック制御方法およびクロック制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000286719A JP2002099348A (ja) 2000-09-21 2000-09-21 クロック制御方法およびクロック制御装置

Publications (1)

Publication Number Publication Date
JP2002099348A true JP2002099348A (ja) 2002-04-05

Family

ID=18770597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000286719A Pending JP2002099348A (ja) 2000-09-21 2000-09-21 クロック制御方法およびクロック制御装置

Country Status (1)

Country Link
JP (1) JP2002099348A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005149297A (ja) * 2003-11-18 2005-06-09 Renesas Technology Corp プロセッサおよびそのアセンブラ
JP2012018626A (ja) * 2010-07-09 2012-01-26 Toshiba Corp メモリ制御装置、メモリ装置および停止制御方法
JP2020126303A (ja) * 2019-02-01 2020-08-20 富士通株式会社 情報処理装置、情報処理プログラム、及び情報処理方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005149297A (ja) * 2003-11-18 2005-06-09 Renesas Technology Corp プロセッサおよびそのアセンブラ
JP2012018626A (ja) * 2010-07-09 2012-01-26 Toshiba Corp メモリ制御装置、メモリ装置および停止制御方法
US8359425B2 (en) 2010-07-09 2013-01-22 Kabushiki Kaisha Toshiba Memory control device, memory device, and shutdown control method
JP2020126303A (ja) * 2019-02-01 2020-08-20 富士通株式会社 情報処理装置、情報処理プログラム、及び情報処理方法
JP7208448B2 (ja) 2019-02-01 2023-01-19 富士通株式会社 情報処理装置、情報処理プログラム、及び情報処理方法

Similar Documents

Publication Publication Date Title
JP4484925B2 (ja) Simdデバイスにおける制御フロー管理のための方法及び装置
JPH0922318A (ja) プロセッサ及びその制御方法
JP2000076066A (ja) 信号処理回路
JP4129345B2 (ja) 電力削減のための複数の等価機能ユニットの制御
US6684342B1 (en) Apparatus and method of dynamic and deterministic changes in clock frequency for lower power consumption while maintaining fast interrupt handling
JP2002099348A (ja) クロック制御方法およびクロック制御装置
US7194601B2 (en) Low-power decode circuitry and method for a processor having multiple decoders
JPH03204718A (ja) 情報処理装置
US7536533B2 (en) MCU based motor controller with pre-load register and DMA controller
JP2002268877A (ja) クロック制御方法及び当該クロック制御方法を用いた情報処理装置
US7197653B2 (en) Microcontroller for fetching and decoding a frequency control signal together with an operation code
JP2000284962A (ja) マイクロコンピュータ
US6704853B1 (en) Digital signal processing apparatus and method for controlling the same
JPS63113634A (ja) プログラムカウンタ相対アドレス計算方式
JP2011048619A (ja) プロセッサ
JP3716923B2 (ja) クロック数可変プロセッサ
JP3531856B2 (ja) プログラム制御方法及びプログラム制御装置
JP2002366349A (ja) プログラム制御方法およびその装置
JP2002300035A (ja) A/dインタフェース回路
US20030093651A1 (en) Instruction sets and compilers
JPH01180045A (ja) 中央処理装置
US6459298B1 (en) Structure of controlled pipeline logic
CN116627497A (zh) 指令处理方法、处理器及存储介质
JP2003029965A (ja) マイクロプロセッサ
JP2001166987A (ja) メモリウェイト制御回路

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041012

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050308