JPH08234864A - 半導体集積回路 - Google Patents

半導体集積回路

Info

Publication number
JPH08234864A
JPH08234864A JP7286599A JP28659995A JPH08234864A JP H08234864 A JPH08234864 A JP H08234864A JP 7286599 A JP7286599 A JP 7286599A JP 28659995 A JP28659995 A JP 28659995A JP H08234864 A JPH08234864 A JP H08234864A
Authority
JP
Japan
Prior art keywords
clock signal
signal
circuit
functional block
bus
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.)
Granted
Application number
JP7286599A
Other languages
English (en)
Other versions
JP3505018B2 (ja
Inventor
Naomiki Mitsuishi
直幹 三ッ石
Kenichi Ishibashi
謙一 石橋
Koichi Hashimura
浩一 橋村
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP28659995A priority Critical patent/JP3505018B2/ja
Priority to TW084111253A priority patent/TW308657B/zh
Priority to KR1019950041172A priority patent/KR100363983B1/ko
Priority to US08/561,728 priority patent/US5774702A/en
Publication of JPH08234864A publication Critical patent/JPH08234864A/ja
Application granted granted Critical
Publication of JP3505018B2 publication Critical patent/JP3505018B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Abstract

(57)【要約】 【課題】 システムクロック信号に関し半導体集積回路
の低消費電力化を実現する。 【解決手段】 発振器(12)の出力に基づいて形成さ
れた周波数一定のシステムクロック信号(φS)を周辺
機能ブロックに共通に供給し、発振器(12)の出力に
基づいて形成され、その周波数が可変で、且つその周波
数が前記クロック信号(φS)以下とされたシステムク
ロック信号(φB)をクロック制御回路(13)で形成
しCPU(1)などのバスマスタモジュールに供給す
る。クロック信号(φS)が供給される機能ブロックの
データバス(PDB)とクロック信号(φB)が供給さ
れる機能ブロックのデータバス(IDB)とを分離させ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、クロック信号に同
期動作される複数個の機能ブロックを備えた半導体集積
回路に係り、低消費電力を必要とするシングルチップマ
イクロコンピュータに利用して、特に有効な技術に関す
るものである。
【0002】
【従来の技術】平成6年3月に株式会社日立製作所から
発行された『H8/3048シリーズハードウェアマニ
ュアル』のP607乃至P632に記載されているよう
に、シングルチップマイクロコンピュータの各機能ブロ
ックは、システムクロック信号φを基準として動作す
る。かかるシステムクロック信号φは、シングルチップ
マイクロコンピュータに設けられたところの外部クロッ
ク入力端子(EXTAL)に入力される外部クロック、
又は、マイクロコンピュータに設けられたところの発振
端子(EXTAL、XTAL)に接続される水晶又はセ
ラミックなどの振動子によって生成される原発振から生
成される。また、マイクロコンピュータ内の各機能ブロ
ックに固有のクロック信号を供給する例が特開平3−2
86213号に記載されている。また、特開平5−81
447号公報には、CPU(中央処理装置)とその周辺
回路を含むマイクロコンピュータにおいて夫々の周辺回
路に、クロック信号の分周器とクロック選択手段を配置
した技術が開示されている。特開平3−58207には
発振回路の出力を分周回路で分周し、分周されたクロッ
ク信号から一つを選択してシステムクロック信号とする
技術が開示されている。
【0003】
【発明が解決しようとする課題】本発明者はシングルチ
ップマイクロコンピュータのような半導体集積回路のシ
ステムクロック信号について以下の検討を行った。
【0004】システムクロック信号φとしては、原発振
と同等の周波数とするか、或いは所謂ギア機能すなわち
原発振を分周して得た周波数とするかを選択することが
できる。そのようなシステムクロック信号はCPU(中
央処理装置)やその周辺回路などに共通に供給される。
上記ギア機能においては、シングルチップマイクロコン
ピュータの低消費電力化の観点から、CPUの処理すべ
き内容に応じて、システムクロック信号の周波数を切り
換えることが望ましい。また、システムクロック信号と
して、原発振を定常的に2分周したものを選択すると考
えた場合と、原発振の発振周波数を予め1/2とし、そ
れをシステムクロック信号とした(当該原発振と同一の
周波数)場合とを比べると、原発振器の動作周波数は、
前者が後者に対して2倍になり、原発振器での消費電流
は前者が後者の2倍になる。
【0005】一方、CPUの処理すべき内容に応じて、
動作中にシステムクロック信号の周波数を切り換える場
合には、次の問題点が生じてしまう。例えばシステムク
ロックφがシリアルコミュニケーションインタフェース
(SCI)の基準クロックとして使用されていると、シ
ステムクロック信号の分周比が1/2にされた場合、S
CIの送受信のビットレート若しくはボーレートが1/
2になってしまい、特に、調歩同期式通信の場合などに
は通信できなくなってしまう。このため、システムクロ
ック信号の周波数を切り換える際には、切り換え後のシ
ステムクロック信号に対応するように、SCIのビット
レート若しくはボーレートの設定を変更しなければなら
ない。したがってそのようなシステムクロック信号周波
数の切換えはSCIの動作停止中に行わなければならな
い。
【0006】同様に、一般のタイマなどでも、システム
クロック信号がクロックソースとして使用されている場
合、システムクロック信号の周波数を半分にすると、そ
の周期が2倍になってしまうので、タイマに対しても設
定を変更してやらなければ絶対的な計時時間が相違され
ることになってしまう。SCIやタイマ以外の殆どの周
辺回路若しくは周辺機能に対しても同様の再設定処理を
行わなければならず、それに要するソフトウェアの負担
は無視し得るほど少なくはない。
【0007】更に、システムクロック信号の分周比を1
/2から1/1に変更してシステムクロック信号の周波
数を高くする場合も事情は同じである。特に、高速への
変更は、CPUに対しての処理として高速処理が発生し
た場合であるが、かかる場合に、周辺機能のほとんど
に、上記設定変更を行うのでは、時間的な無駄が大き
く、高速処理が必要な状況に対応できなくなってしま
う。
【0008】一方、マイクロコンピュータの各機能ブロ
ックに、固有のクロック信号を供給する上述の特開平3
−286213号では、各機能ブロックに供給されるク
ロック信号の分周比を独立に設定できるようになってい
る。したがって、一つの機能ブロックに対するクロック
信号の分周比の変更が、他の機能ブロックに影響を与え
ることはなくなり、ソフトウェアの負担も少なくなる。
【0009】しかしながら、各機能ブロックに独立した
クロック信号を供給する場合、必然的に、クロック配線
の長さの合計、言い換えるならば、容量が大きくなって
しまう。消費電流は、信号線の容量(C),電圧
(V),周波数(f)の積の総和、即ち、ΣC・V・f
と表現されるから、かかるクロック配線で消費される消
費電流もこれに比例して大きくなってしまう。クロック
信号は、マイクロコンピュータ内部で最も周波数(f)
の高い信号であり、斯る消費電流は無視できない。少な
くとも、低消費電力化を図るためには得策ではない。
【0010】また、各機能ブロックが任意の分周比で動
作している場合、相互間のインタフェースで、一方のク
ロック信号の立ち上がり変化点が、他方のクロック信号
のどの相になっているか不明であり、信号のセットアッ
プ時間やホールド時間の確保が困難になってしまい、必
然的に非同期的なインタフェースとならざるを得ない。
かかる非同期的なインタフェースでは、論理設計が複雑
であり、また、斯るインタフェースに必要な論理規模も
大きくなってしまう。
【0011】更に、クロック信号の切り換えを専らソフ
トウェアによって行うと、所定のイベント例えばリセッ
トや所定の割り込み要求などが発生して、CPUの高速
処理を必要とする場合に、斯るイベントを割込として認
識し、割込例外処理を実施し、割込処理ルーチンの中
で、システムクロック信号の分周比を切り換えた後に、
所望の処理をすることになってしまう。これでは、前記
イベントが発生してから、所望の処理をするまでの時間
が長くなってしまい、都合が悪い。
【0012】本発明の目的はシステムクロック信号に関
し低消費電力化を実現できる半導体集積回路を提供する
ことにある。
【0013】本発明の別の目的はソフトウェアの負担を
小さくしてCPU等の内蔵機能ブロックの動作速度を可
変にできる半導体集積回路を提供することにある。
【0014】本発明の更に別の目的は、所定のイベント
が発生したときに所望の処理をするまでの時間を短縮で
きる半導体集積回路を提供することにある。
【0015】本発明のその他の目的は、供給されるシス
テムクロック信号の周波数が相違される機能ブロック間
でのインタフェースを容易化できる半導体集積回路を提
供することにある。
【0016】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0017】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0018】〔1〕半導体集積回路は、発振器(12)
からの出力に基づいて形成された周波数一定の第2のシ
ステムクロック信号(φS)を複数個の機能ブロックに
共通に供給するための第2のクロック信号配線(L2)
と、上記発振器(12)からの出力に対して分周比が選
択可能にされ、周波数が上記第2のシステムクロック信
号以下とされた第1のシステムクロック信号(φB)を
形成するクロック制御回路(13)と、上記クロック制
御回路(13)で形成される第1のシステムクロック信
号を所定の機能ブロックに供給するための第1のクロッ
ク信号配線(L1)と、を備える。
【0019】〔2〕上記第1のクロック信号配線を介し
て第1のシステムクロック信号が供給される機能ブロッ
クは、バスマスタ(1,2)とされる。マイクロコンピ
ュータ等のデータプロセッサにおいて、バスマスタとし
て動作するCPUは一般的に命令及びデータフェッチの
ためのバスサイクルを頻繁に起動する。半導体集積回路
を低消費電力化するにはそれらバスマスタには分周比が
可変のシステムクロック信号を供給することが得策だか
らである。
【0020】〔3〕上記第2のクロック信号配線を介し
て第2のシステムクロック信号が供給される機能ブロッ
クは、バススレーブ(7,8,9,10)とされる。バ
スマスタのシステムクロック信号の周波数を変更して
も、シリアルコミュニケーションインタフェースのビッ
トレート若しくはボーレート、そしてタイマの計時周期
などを一定に保つようにして、それら周辺機能ブロック
の設定変更を要しないようにするためである。
【0021】上記した手段によれば、周辺回路若しくは
バススレーブのような機能ブロックへ供給される第2の
システムクロック信号(周辺クロック信号とも記す)と
は独立に、バスマスタのような機能ブロックへ供給され
る第1のシステムクロック信号(バスマスタクロック信
号とも記す)の分周比を可変にすることにより、CPU
などの動作状態に応じて、上記バスマスタクロック信号
の分周比を大きくして、低消費電力化を実現することが
できる。
【0022】また、上記周辺クロック信号は固定にでき
るので、上記バスマスタクロック信号を変更しても、シ
リアルコミュニケーションインタフェースのビットレー
ト乃至ボーレートや、タイマの周期などは一定に保たれ
るため、CPUなどへのシステムクロック信号の周波数
変更によってそれらの周辺機能ブロックの設定を変更し
たりすることを要しない。
【0023】そして、上記周辺クロック信号などのクロ
ック信号を複数の機能ブロックに共通なクロック信号と
することは、各機能ブロックに独立のクロック信号を供
給するよりも、クロック配線の配線容量を小さくし、消
費電力を小さくさせる。
【0024】〔4〕上記クロック制御回路(13)に
は、第1のクロック信号(φB)の分周比を選択するた
めの情報が上記バスマスタによって設定可能にされたレ
ジスタ手段(132)を備えることができる。CPUな
どのバスマスタによって分周比の選択が任意に行えるよ
うにするためである。
【0025】〔5〕上記第1のクロック信号配線を介し
て第1のシステムクロック信号(φB)が供給されバス
マスタとして動作する機能ブロックが接続される第1の
内部データバス(IDB)と、上記第2のクロック信号
配線を介して第2のシステムクロック信号(φS)が供
給され、バススレーブとして動作する機能ブロックが接
続される第2の内部データバス(PDB)とに、データ
バスは分離される。第1の内部データバスに接続された
バスマスタによって第2の内部データバスに接続された
ところのバススレーブがアクセスされる場合、そのアク
セスに応じて上記第1の内部データバスを第2の内部デ
ータバスに接続するバスコントローラ(3)が備えられ
る。第2の内部データバスには、接続された機能ブロッ
クの出力が全て高インピーダンス状態のときに当該バス
の状態を保持し、上記接続された機能ブロックがリード
またはライトされるときには、それに従ってバスの状態
が変わるのを許容するホールド回路(HD1,HD2)
が設けられる。CPU等のバスマスタのように頻繁にバ
スサイクルを起動する機能ブロックを、バススレーブと
は別のデータバスに接続することにより、頻繁にアクセ
スされるデータバスの負荷が小さくされる。アクセスに
利用される頻度が相対的に低いデータバスについては、
そこにおけるデータをホールド回路によって保持するこ
とにより、当該データバス上での充放電回数を減らして
低消費電力を図る。このように、周辺機能ブロックはバ
スマスタに比較して動作頻度が低いので、所定の信号が
入力された時のみ動作させるようにし、また、必要に応
じてその動作が禁止可能にされることにより、半導体集
積回路は一層低消費電力化される。このとき、動作禁止
状態の周辺機能ブロックにおいて内部状態を保持するこ
とにより、動作許可後に直ちに動作を再開できる。
【0026】〔6〕上記第1のシステムクロック信号
(φB)が供給される機能ブロックは当該第1のシステ
ムクロック信号から第1のノーオーバラップの2相クロ
ック信号(φ1B,φ2B)を形成するノーオーバラッ
プ生成回路を供え、第2のシステムクロック信号(φ
S)が供給される機能ブロックは当該第2のシステムク
ロック信号から第2のノーオーバラップの2相クロック
信号(φ1S,φ2S)を形成するノーオーバラップ生
成回路(700)を供え、第1のノーオーバラップ2相
クロック信号(φ1B,φ2B)は第2のノーオーバラ
ップ2相クロック信号(φ1S,φ2S)と部分的に位
相が一致され(例えば図23におけるφ1Sとφ2Bの
立ち上がりタイミング)、第2のシステムクロック信号
が供給される機能ブロック(例えば図19のバススレー
ブ)は第2のノーオーバラップ2相クロック信号におい
て上記位相が一致するタイミング(例えば図23のステ
ート3におけるφ1Sの立ち上がり)に同期して、第1
のシステムクロック信号が供給される機能ブロック(例
えば図19のバスマスタ)へ供給すべき信号を変化させ
る。このインタフェース仕様に従えば、システムクロッ
ク信号が相違される機能ブロック間で、データが出力さ
れてからそれを入力し、ラッチするまでに第2のシステ
ムクロック信号(φS)の1周期以上の期間を確保でき
る。これにより、システムクロック信号の周波数が相違
される機能ブロック間でのインタフェースを容易化す
る、換言すればインタフェースのためのタイミング設計
を容易化する。このように、バスマスタクロック信号
を、周辺クロック信号より、常に、同等か遅くし、バス
マスタと周辺機能ブロック間のインタフェース信号を、
バスマスタクロック信号と周辺クロック信号の例えば共
通の変化点に同期させることにより、バスマスタと周辺
機能ブロック間のインタフェースを、容易な同期インタ
フェースとすることを可能にする。ひいては、半導体集
積回路の論理規模を縮小し、製造費用の低減及び低消費
電力化に貢献する。
【0027】〔7〕上記第1のシステムクロック信号
(φB)が供給される機能ブロックは当該第1のシステ
ムクロック信号から第1のノーオーバラップの2相のク
ロック信号(φ1B,φ2B)を形成するノーオーバラ
ップ生成回路を供え、第2のシステムクロック信号(φ
S)が供給される機能ブロックは当該第2のシステムク
ロック信号から第2のノーオーバラップの2相のクロッ
ク信号(φ1S,φ2S)を形成するノーオーバラップ
生成回路(700)を供える。上記第1のノーオーバラ
ップの2相のクロック信号の第1相目のクロック信号
(例えば図20のφ1B)のローレベル期間は第2のノ
ーオーバラップの2相のクロック信号の第1相目のクロ
ック信号(例えば図20のφ1S)のローレベル期間と
一致され、第1のノーオーバラップ2相クロック信号の
第2相目のクロック信号(例えば図20のφ2B)のハ
イレベル期間は第2のノーオーバラップの2相のクロッ
ク信号の第2相目のクロック信号(例えば図20のφ2
S)のハイレベル期間と一致される。各機能ブロックの
出力と入力とは第1相目又は第2相目の何れのクロック
信号に同期させても、システムクロック信号が相違され
る機能ブロック間で、データが出力されてからそれを入
力し、ラッチするまでは第2のシステムクロック信号
(φS)の1周期以上の期間を確保できる。これが、シ
ステムクロック信号の周波数の相違される機能ブロック
間でのインタフェースを容易化する、換言すればインタ
フェースのためのタイミング設計を容易化する。
【0028】〔8〕上記第1のシステムクロック信号
(φB)と第2のシステムクロック信号(φS)とを選
択的に外部に出力する出力回路(例えば図26、図27
のIOP60,IOP61)と、上記出力回路からの出
力が非選択状態にされているとき、当該出力回路のクロ
ック入力配線(1310,1311)を所定レベルに強
制する論理回路(1300,1301,1307)とが
設けられている。システムクロック信号の外部出力を要
しない場合には上記クロック入力配線における充放電が
抑止されて低消費電力に寄与する。
【0029】
〔9〕機能ブロック毎に個別的に内部クロ
ック信号等の生成を抑止するという別の観点による本発
明に係る半導体集積回路は、発振器(12)からの出力
に基づいて形成されるシステムクロック信号(φS)を
受け該システムクロック信号に同期する複数相の内部ク
ロック信号(φ1S,φ2S)を形成し、形成された内
部クロック信号に従って動作する複数個の機能ブロック
(7,8,9,10)と、上記機能ブロック単位で内部
クロック信号の形成を禁止させる情報を書き換え可能に
保持するためのレジスタ手段(133)とを供え、上記
機能ブロックは、上記レジスタ手段からの対応情報によ
って内部クロック信号の形成が禁止されるときに当該内
部クロック信号の変化を一定の状態に停止させて内部状
態を保持させる第1の内部クロック制御手段(700)
を備える。利用しない内蔵の機能ブロック内では内部ク
ロック信号の変化が停止され、クロック信号の無駄な変
化による充放電電流による電力消費を抑える。内部クロ
ック信号停止状態において内部状態を保持させること
は、動作再開が選択されたときに内部回路を改めて設定
する手間を省く。
【0030】〔10〕上記機能ブロックは更に、自分自
身の動作が選択されることによって上記複数相の内部ク
ロック信号(φ1S,φ2S)から内部タイミング信号
(φ1−PWM,φ2−PWM)を形成し、自分自身の
動作が非選択とされることによって内部タイミング信号
の変化を一定の状態に停止させて内部状態を保持させる
第2の内部クロック制御手段(710)を備える。動作
の非選択状態において内部タイミング信号(φ1−PW
M,φ2−PWM)を受ける回路での電力消費が抑止さ
れる。動作非選択状態において内部タイミング信号の変
化が停止されたときに内部状態を保持させることは、動
作再開のときに内部回路を改めて設定し直す手間を省
く。
【0031】〔11〕上記内部タイミング信号はノーオ
ーバラップの2相のタイミング信号(φ1−PWM,φ
2−PWM)であり、当該タイミング信号を受けて動作
される回路は、その第1相目のタイミング信号を受けて
ダイナミックに動作されるダイナミック回路(23)
と、該ダイナミック回路に直列的に接続され第2相目の
タイミング信号を受けてスタティックに動作されるスタ
ティック回路(21)とを含んで構成される。前記ノー
オーバラップの2相のタイミング信号(φ1−PWM,
φ2−PWM)のうちデューティ比の大きな相のタイミ
ング信号はダイナミック回路に、デューティ比の小さい
相のタイミング信号はスタティック回路に供給すること
により、ダイナミック回路の出力負荷容量による情報保
持時間が有限であっても当該ダイナミック回路によって
情報を保持すべき期間を短くして、システムクロック信
号の周波数を低減可能な範囲を広げることができる。さ
らに双方をスタティックラッチ回路で構成する場合に比
べて回路の物理的規模を縮小できる。
【0032】〔12〕イベント検出に基づいてシステム
クロック信号の周波数を強制的に変更するという別の観
点による本発明に係る半導体集積回路は、単数又は複数
個の第1の機能ブロック(1,2)と、第1の機能ブロ
ックに対して例外的処理を要求すべき内外の事象(イベ
ント)の発生を検出して対応する第1の機能ブロックに
例外的処理を要求する信号を出力するイベント検出回路
(4)と、第1の機能ブロックに対して例外的処理を要
求すべき事象を発生させる単数又は複数の第2の機能ブ
ロック(7,8,9,10)と、上記第1の機能ブロッ
ク及びイベント検出回路に供給される第1のシステムク
ロック信号(φB)の周波数を可変に選択可能にすると
共に、上記イベント検出回路(4)による所定のイベン
トの検出に基づいて周波数の選択状態を所定の状態に強
制させる選択制御手段(131,132)と、を有す
る。所定のイベントが発生したとき、設定されているシ
ステムクロック信号周波数が低くても、選択制御手段が
システムクロック信号周波数の選択状態を所定の状態例
えば最高周波数選択状態に強制することができ、これに
よって、所定のイベントが発生したときに所望の処理を
するまでの時間が短縮される。
【0033】〔13〕上記選択手段は、周波数選択のた
めの制御情報を書き換え可能に保持する第1のレジスタ
手段(132)と、この第1のレジスタ手段が保持する
制御情報に従って第1のシステムクロック信号の周波数
を選択するセレクタ(131)とを有し、第1のレジス
タ手段は、第1の状態(=”0”)において特定周波数
(φOSC)の選択を指示すると共に上記イベント検出
回路による所定のイベントの検出に基づいて上記第1の
状態に強制される第1の記憶領域(MSME)と、当該
第1の記憶領域における第2の状態(MSME=”
1”)において有意とされる周波数選択のための情報を
格納する第2の記憶領域(CKS1,CKS0)とを備
えて成る。所定のイベントが発生したとき、第1の記憶
領域(MSME)を第1の状態(=”0”)に強制すれ
ばよいから、システムクロック信号を特定周波数に強制
する処理が簡単になる。
【0034】〔14〕上記第1の機能ブロックは中央処
理装置(1)であり、上記イベント検出回路から上記例
外的処理を要求する信号が与えられた中央処理装置は、
当該例外的処理からの復帰に際して第1の記憶領域を第
2の状態(MSME=”1”)に設定することができ
る。したがって、中央処理装置は要求された例外的処理
を行った後、その要求があったときの処理又はその次の
処理に復帰すべき場合であっても、第2の記憶領域(C
KS1,CKS2)の値それ自体を退避及び復帰させる
ことを要しない。
【0035】〔15〕上記第1の機能ブロックはデータ
トランスファコントローラ(2)であり、上記イベント
検出回路から上記例外的処理を要求する信号が与えられ
たデータトランスファコントローラは、当該例外的処理
の終了を指示する信号(1325)を出力し、上記論理
手段は当該終了を指示する信号の活性状態によって第1
の記憶領域を第2の状態(MSME=”1”)に設定す
ることができる。これにより、システムクロック信号を
元に戻すのに中央処理装置若しくはソフトウェアに負担
をかけない。
【0036】〔16〕上記第2の機能ブロック(7,
8,9,10)は、それに供給される周波数が一定の第
2のシステムクロック信号(φS)から内部クロック信
号(φ1S,φ2S)を形成し、それによって動作さ
れ、第2の機能ブロック単位に上記内部クロック信号の
形成を禁止させるための情報を書き換え可能に保持する
第2のレジスタ手段(133)を設け、上記イベント検
出回路による所定のイベントの検出(例えばリセット)
に基づいて、上記第2のレジスタ手段は、内部クロック
信号の形成を禁止する状態に初期化されるものである。
リセット等の所定イベントの発生時における初期的な状
態での電力消費を低減させるためである。
【0037】〔17〕システムクロック信号の周波数を
強制的に変更するために割り込みベクタなどのベクタと
対の制御情報を利用するという更に別の観点による発明
は、中央処理装置(1)と、中央処理装置に対して例外
的処理を要求するための信号を出力するイベント検出回
路(4)と、中央処理装置の周辺回路(7,8,9,1
0)と、上記中央処理装置及びイベント検出回路に供給
される第1のシステムクロック信号(φB)の周波数を
選択可能に指示する第1のレジスタ手段(132)と、
第2のシステムクロック信号(φS)を受けて動作され
る上記周辺回路単位にその内部クロック信号の形成を禁
止させるための情報を書き換え可能に保持する第2のレ
ジスタ手段(133)とを供え、上記中央処理装置はイ
ベント検出回路から例外的処理が要求されたとき、第1
及び第2のレジスタ手段に設定すべき制御情報を、当該
要求に応ずるベクタと対を成す領域(図30のアドレス
0,4,8,12)から取得するものである。イベント
の種類に応じて低消費電力設定を細かく行えるようにす
るためである。
【0038】〔18〕上記中央処理装置(1)は、イベ
ント検出回路(4)から例外的処理の要求があったと
き、第1及び第2のレジスタ手段に、当該要求に応ずる
ベクタと対を成す領域から取得した制御情報を設定する
前に、当該例外的処理からの復帰のために第1及び第2
のレジスタ手段の値を退避させる。要求された例外的処
理の終了後に、イベント発生直前の状態に復帰しなけれ
ばならない場合に対処するためである。
【0039】〔19〕プリスケーラで生成可能な低分周
比のプリスケーラクロック信号はプリスケーラから供給
せずに、機能ブロック内の分周器で個別的に生成させる
というその他の観点による発明は、発振器(12)から
の出力に基づいてシステムクロック信号を形成するクロ
ック制御回路(13)と、クロック制御回路からのシス
テムクロック信号を受けて動作される複数個の機能ブロ
ックとを備えて成る半導体集積回路において、システム
クロック信号(φS)とは別に相対的に分周比の小さな
クロック信号(図6のφS/2)を必要とする機能ブロ
ックには機能ブロック毎にシステムクロック信号を分周
する分周器(720)を設け、相対的に分周比の大きな
クロック信号(φ/8,φ/16)を必要とする複数個
の機能ブロックに対しては共通に当該クロック信号を生
成して供給するプリスケーラ(14)を設けて構成され
る。低分周比のクロック信号も直接複数の機能ブロック
に供給する場合には、低分周比故に当該クロック信号伝
達系における電力消費が大きくなってしまうからであ
る。
【0040】
【発明の実施の形態】
《シングルチップマイクロコンピュータの機能ブロッ
ク》 図1には本発明に係る半導体集積回路の一実施例
であるシングルチップマイクロコンピュータのブロック
図が示される。このシングルチップマイクロコンピュー
タは、中央処理装置(CPU)1、データトランスファ
コントローラ(DTC)2、バスコントローラ(BS
C)3、割り込みコントローラ4、リード・オンリ・メ
モリ(ROM)5、ランダム・アクセス・メモリ(RA
M)6、タイマ7、ウオッチドッグタイマ(WDT)
8、シリアルコミュニケーションインタフェース(SC
I)9、アナログ/ディジタル(A/D)変換器10、
第1乃至第11入出力ポートIOP1〜IOP11、ク
ロック発振器(CPG)12、クロック制御回路13、
及びプリスケーラ14の機能ブロック(回路モジュール
とも称する)を供え、これらの機能ブロックは、特に制
限されないが、公知のCMOS半導体集積回路の製造技
術により単結晶シリコンのような1個の半導体基板上に
形成される。上記タイマは一例としてPWM(Pulse Wi
dth Modulation)タイマを含み、タイマ7において特に
PWMタイマを指すときは便宜上PWMタイマ7と記
す。
【0041】上記シングルチップマイクロコンピュータ
には、複数の外部端子が設けられている。外部端子のう
ち、電源端子には、グランドレベル(Vss)、電源電
圧レベル(Vcc)、アナログ用グランドレベル(AV
ss)、アナログ用電源電圧レベル(AVcc)が供給
されている。外部端子には、上記電源端子以外に、専用
制御端子が設けられており、これらの端子として、リセ
ット(RES)、スタンバイ(STBY)、モード制御
(MD0〜MD2)、クロック入力(EXTAL、XT
AL)、マスク不可能な割り込み(NMI)の各端子が
ある。
【0042】《シングルチップマイクロコンピュータの
内部バス構成》 図1に示される上記各機能ブロック
は、内部バスによって相互に接続される。内部バスはア
ドレスバス及びデータバスの他にリード信号、ライト信
号、さらにはバスサイズ信号などを含むコントロールバ
スから成る。内部のアドレスバスにはIABとPABが
存在する。内部のデータバスとしてはIDBとPDBが
存在する。これらのIAB、PAB及びIDB、PDB
のバスは、バスコントローラ3によって、互いにインタ
フェースされている。
【0043】内部データバスIDB,内部アドレスバス
IABは、バスマスタとして動作することができるCP
U1またはDTC2の何れかが選択的にバス権を有し
て、使用される。何れにバス権を与えるかは、バスコン
トローラ3の制御によって決まる。バスコントローラ3
は、内部アドレスバスIABに出力された情報を解読し
て、何れの機能ブロックが選択されたかを判定する機能
ブロック選択回路MSを含む。機能ブロック選択回路M
Sは、アドレス信号によって選択されるべき機能ブロッ
クを識別し、識別された機能ブロックに対応するモジュ
ール選択信号(図示せず)を活性化する。この機能ブロ
ック選択回路MSにて解読された情報に従って、IAB
とPABとの間及びIDBとPDBとの間が接続される
か、接続されないかが決定(選択)される。すなわち、
そのときのアクセス対象が内部バスIAB,IDBに結
合された回路モジュールである場合にはバスコントロー
ラ3は内部バスPAB,PDBをIAB,IDBに接続
しない。一方、アクセス対象が内部バスPAB,PDB
に結合された回路モジュールである場合にはバスコント
ローラ3は内部バスPAB,PDBをIAB,IDBに
接続する。本明細書において、バスマスタとは、バスへ
のアドレスの出力(形成)が可能であり、データの入出
力も可能であるモジュールを意味し、バススレーブと
は、バスへのアドレスの出力(形成)が不可能であり、
アドレスの入力と、データの入出力又はデータの出力が
可能なモジュールを意味する。
【0044】内部バスIAB、IDBはCPU1、DT
C2、ROM5、RAM6、バスコントローラ3に接続
される。更に、内部アドレスバスIABは図示しない外
部アドレスバスと接続可能にするために、入出力ポート
IOP1〜IOP3に接続され、内部データバスIDB
は図示しない外部データバスと接続可能にするために、
入出力ポートIOP4、IOP5に接続される。内部バ
スPAB、PDBはバスコントローラ3、タイマ7、ウ
オッチドッグタイマ8、SCI9、A/D変換器10、
割込コントローラ4、及び入出力ポートIOP1〜IO
P11に接続される。内部バスPAB、PDBが入出力
ポートIOP1〜IOP11を介して外部アクセスに利
用されるときのバスインタフェース制御はバスコントロ
ーラ3が行う。
【0045】上記内部バスをIAB,IDBとPAB,
PDBとの2系統化するに当たっては、バスアクセスを
伴った利用頻度の多い回路モジュールには相対的に負荷
の小さなバスを共有させることを考慮してある。また、
CPU1によるバスアクセスの内では、命令フェッチの
回数がデータアクセスの回数に比較して多くされる。ま
た、CPU1の処理性能を向上させるためには、処理す
る内容に応じて命令をフェッチしていかなければなら
ず、単位時間当たりの命令フェッチの頻度が高くされ
る。この点を考慮して本実施例ではバスマスタモジュー
ルとして動作されるCPU1,DTC2と、CPU1の
作業領域とされるRAM6やプログラムなどを格納した
ROM5などとをその他の回路モジュールと切り放して
相対的に負荷の小さな内部バスIAB,IDBに接続し
てある。
【0046】CPU1によるバスアクセスの内では、命
令フェッチの回数がデータアクセスの回数に比較して多
くされる。また、CPU1の処理性能を向上させるため
には、処理する内容に応じて命令をフェッチしていかな
ければならず、単位時間当たりの命令フェッチの頻度が
高くされる。CPU1の命令は内蔵ROM5または図示
しない外部メモリに置く場合が大部分である。したがっ
てプログラムメモリが外部メモリである場合にも入出力
ポートIOP1〜IOP5を介して内部バスIAB,I
DBを利用すればよく、命令フェッチと無関係な回路モ
ジュールが多数接続されていて負荷が比較的大きくされ
た内部バスPAB、PDBを使用しないで済む。
【0047】内部バスPAB,PDBは、それが使用さ
れていないとき、そのバスにおける以前の値を保持する
ようにされている。例えば、内部バスPDBの各信号線
にはスタティックラッチ回路が結合され、内部バスPD
Bが使用されてない場合にはこれに出力端子が接続され
る回路モジュールの当該出力端子は高出力インピーダン
ス状態とされ、上記スタティックラッチ回路によって前
の値が保持される。CMOS回路を用いれば、この場
合、信号状態が変化しないため、これらPDBの消費電
流をほぼ0とすることができる。PAB、PDBは、図
1に示されるように、接続される対象が多く、配線容量
が大きいため、これらに発生する信号変化の頻度を減少
させることによって、換言すれば相対的に利用頻度の低
い回路モジュールが接続されていることによって、低消
費電力化に貢献することができる。即ち、バスアクセス
を伴った利用頻度の多い回路モジュールには相対的に負
荷の小さなバスIAB,IDBが共有される。
【0048】《シングルチップマイクロコンピュータの
クロック供給系統》 本実施例のシングルチップマイク
ロコンピュータはクロック発振器12及びクロック制御
回路13によって生成されるシステムクロック信号に同
期して動作される。各機能ブロックはそのようなシステ
ムクロック信号に基づいて形成された、互いにノーオー
バラップの2相クロック信号にて動作される。本実施例
に従えば、システムクロック信号はφBとφSに大別さ
れる。便宜上システムクロック信号φSとφBを総称し
て単にシステムクロック信号φとも記す。同様にφSに
基づいて形成されるノーオーバラップ2相のクロック信
号φ1S,φ2S、そしてφBに基づいて形成されるノ
ーオーバラップの2相クロック信号φ1B,φ2Bに対
してもそれらを総称して単にφ1,φ2と記すことがあ
る。また、クロック発振器12から出力されるクロック
信号はφOSCとして図示される。
【0049】上記システムクロック信号φBは、バスマ
スタクロックとして、例えばCPU1、DTC2、バス
コントローラ3、割込コントローラ4、更に、外部バス
のインタフェース用に、入出力ポートIOP1〜IOP
5に供給される。システムクロック信号φBを各回路モ
ジュールへ供給するためのクロック信号配線は、L1と
して図示されている。クロック信号φBはクロック制御
回路13において、クロック信号φOSCを分周するこ
とにより形成される。本実施例においては、この分周比
が選択可能にされている。クロック信号φBの分周比が
大きくされれば、これに比例して、システムクロック信
号φBを受ける回路モジュールの部分の動作周波数は低
くなり、消費電流も低減される。かかる部分は、原則的
には常に動作状態である。例えば、割込コントローラ4
は常に割込要求の発生を監視しなければならず、割込要
求が発生すれば、所定の状態遷移を発生したり、CPU
1やDTC2に処理を要求したりしなければならないた
めである。したがってそのような回路部分において、そ
の動作周波数をクロック信号φBで制御できることはシ
ングルチップマイクロコンピュータ全体における消費電
力を必要に応じて低減することを実現する。
【0050】他方のシステムクロック信号φSは、周辺
クロックとして、例えばタイマ7、ウオッチドッグタイ
マ8、SCI9、A/D変換器10、入出力ポートIO
P1〜IOP11に供給される。システムクロック信号
φSを各回路モジュールへ供給するためのクロック信号
配線はL2として図示されている。
【0051】図1からも明らかなようにクロック信号
は、ROM5,RAM6を除く各機能ブロックに供給さ
れ、全体としてのクロック信号配線長は相当長くされ
る。図1に示されるように、クロック信号φBが供給さ
れる機能ブロックと、クロック信号φSが供給される機
能ブロックとは、それぞれある程度局在化されている。
これによって、クロック信号のための総配線長を抑制す
ることができる。少なくとも、全ての機能ブロックに夫
々独立のクロック信号を供給する場合よりも全体の配線
長を短くすることができる。クロック信号の総配線長を
抑制することにより、当該配線に寄生する容量成分を抑
制できる。クロック信号は信号変化の周波数が大きいた
めに、クロック信号配線の容量を抑制することにより
(配線長を短くすることにより)、消費電力を抑制する
ことが可能になる。
【0052】システムクロック信号φBの周波数は例え
ば後述するようにソフトウェアによる分周比の設定次第
で変更することができる。これに対して、システムクロ
ック信号φSの周波数は固定とされる。また、クロック
制御回路13は、DTC2、タイマ7、ウオッチドッグ
タイマ8、SCI9、A/D変換器10に対して、クロ
ック制御信号を供給する。かかるクロック制御信号は、
上記機能ブロック内におけるクロック信号の動作(クロ
ック信号の変化)を許可/停止するものである。かかる
クロック制御については、例えば、特開昭60ー195
631号公報などに記載されている。しかしながら、か
かる例にはクロックの動作が停止された期間中の、機能
ブロックの動作については考えられていない。本発明者
らの検討によれば、機能ブロックのクロックが停止され
た期間中は、内部状態を保持すべきである。そのような
機能ブロックはシステムクロック信号φSに基づいて形
成されたノーオーバラップの2相クロック信号φ1,φ
2に同期動作されるようになっており、その詳細は図3
の(A)〜(C)に基づいて後述するが、φ1に同期し
た順序回路をダイナミック回路で構成し、φ2に同期し
た順序回路をスタティック回路で構成する。
【0053】《シングルチップマイクロコンピュータに
おけるモジュールストップ》 シングルチップマイクロ
コンピュータにおけるモジュールストップの内容につい
てその詳細は後述するが、概略的には以下の通りであ
る。クロック制御回路13から、DTC2、タイマ7、
ウオッチドッグタイマ8、SCI9、A/D変換器10
に対して、クロック停止信号すなわちモジュールストッ
プ信号(図1においては夫々に与えられるモジュールス
トップ信号をMSTPと総称して図示してある)が与え
られる。かかるモジュールストップ信号MSTPは、ク
ロック制御回路13から、各機能ブロックに対してそれ
固有の信号として与えられる。複数チャネルから成るS
CIのような場合にはチャネル毎にモジュールストップ
信号MSTPを割り当てることも可能である。かかる機
能ブロック単位のクロック停止については、平成6年3
月(株)日立製作所発行『H8/3048シリーズ ハ
ードウェアマニュアル』P607乃至P632、及び特
開昭60−195631号公報などに記載されている。
なお、ウオッチドッグタイマ8は、ウオッチドッグタイ
マとして機能しているとき、モジュールストップ信号は
無効とされる。これは、ウオッチドッグタイマ8は、シ
ステムを監視する機能上、誤って、停止されてしまうの
を防止するためである。その詳細については後述する。
前記平成6年3月(株)日立製作所発行『H8/304
8シリーズ ハードウェアマニュアル』P607乃至P
632では、クロック停止時には、機能ブロックがリセ
ット状態になってしまい、内部レジスタの再設定などが
必要である、とされる。例えば、調歩同期式SCIで
は、動作再開時に、1フレーム分のプリアンブルを出力
したりして、直ちに動作を行うことができない。PWM
タイマ7では、クロック選択やデューティの設定などが
必要になってしまう。これに対して、本実施例では、ク
ロック停止時に、機能ブロックが内部状態を保持するよ
うにされる。
【0054】《クロック同期型内蔵メモリの採用》 図
2は図1のシングルチップマイクロコンピュータの変形
例を示すブロック図である。図2に示されるシングルチ
ップマイクロコンピュータは、図1に対してROM5及
びRAM6がクロック信号に同期動作される回路形式と
され、例えばそれらにはCPU1に供給されるのと同様
のクロック信号φBが供給される。このように内蔵メモ
リROM5,RAM6をバスマスタCPU1,DTC2
のクロックに同期させて動作させることにより、高速な
動作を行うことができる。クロックに同期動作されるR
AM6としてはクロックド・スタティックRAMなどを
挙げることができる。クロックに同期動作されるROM
5としてはマスクROM、EEPROM、及びフラッシ
ュメモリなどを挙げることができる。
【0055】《各機能ブロックの内部回路》 図3の
(A)には各機能ブロックを構成する論理回路の代表的
なブロック例が示されている。夫々の論理回路は基本的
には、組合回路20と、その出力を入力としてクロック
信号φ2に同期して動作する順序回路21と、順序回路
21の出力を入力とする組合回路22と、組み合わせ回
路22の出力を入力としてクロック信号φ1に同期して
動作される順序回路23とを代表とした回路を基本単位
として含む。また、必要に応じて、順序回路23から組
み合わせ回路20へ信号が循環的に伝達されるように構
成してもよい。図示されていないが、外部からの入力信
号はいずれかの回路に入力され、外部への出力信号はい
ずれかの回路から出力される。
【0056】図3の(B)には代表的に示された上記順
序回路21,23をCMOSダイナミック回路で構成す
る例が示される。例えば順序回路21はCMOSクロッ
クドインバータ210とCMOSインバータ211との
直列回路で構成され、順序回路23はCMOSクロック
ドインバータ230とCMOSインバータ231との直
列回路で構成される。順序回路21においてクロックド
インバータ210はクロック信号φ2のハイレベルによ
って出力動作可能にされ、順序回路23においてクロッ
クドインバータ230はクロック信号φ1のハイレベル
によって出力動作可能にされる。Pチャンネル型MOS
トランジスタ212は動作待機時にローレベルにされる
信号SIGによってオン状態とされ、インバータ211
の入力を電源電圧に強制して内部を、前の値の保持状態
にする。この信号SIGとしては、図9で述べる発振器
停止信号135に類似した信号を使うことができる。
【0057】図3の(B)に示される回路形式において
情報伝達はクロックドインバータ210,230の出力
負荷容量に対する充電及び放電によってダイナミックに
行われる。このように2相のノーオーバラップクロック
信号(ノーオーバラップクロック信号は、ノンオーバラ
ップクロック信号とも称する)φ1,φ2とダイナミッ
ク回路を用いることによって、トランジスタ数を縮小で
き、半導体集積回路の物理的規模を縮小できる。しかし
ながら、これは負荷容量に蓄えた電荷でデータの保持を
行っているので、負荷容量からの漏洩電流が存在するた
めに、データの保持は有限の時間しか行うことができな
い。例えば、漏洩電流を一定とすれば、ハイレベルを保
持した状態では、データはV−it/Cと表現できる。
Cは容量、Vは電源電圧、iは漏洩電流、tは経過時間
である。時間経過に従って、出力端子の電圧は低下す
る。このような電圧を入力しているCMOS回路のしき
い値電圧をVthとすれば、C(V−Vth)/i以下
の時間しかデータを保持することができない。したがっ
てこの時間内にデータを更新する必要がある。換言すれ
ばクロックドインバータ210,230のようなスイッ
チ素子のスイッチング周波数をi/C(V−Vth)以
下にすることはできない。これにより、クロック停止時
などのように内部動作の停止時には、スイッチング周波
数を十分高くできず、データを保持することができなく
なる。
【0058】そのようなクロック停止状態でも、データ
を保持しようとすれば、夫々の順序回路21,23にダ
イナミック回路を用いず、スタティック回路を用いるこ
とが考えられる。スタティック回路はダイナミック回路
に比べて、トランジスタ数が増加し、半導体集積回路の
物理的規模を増加させる。トランジスタ数が増加すれ
ば、配線も増加し、配線数及びトランジスタ数に比例し
て、消費電流も増加する。
【0059】図3の(C)には本実施例のシングルチッ
プマイクロコンピュータに用いられているCMOSダイ
ナミック回路の一例が示される。同図においてクロック
信号φ1に同期した順序回路23はダイナミック回路、
クロック信号φ2に同期した順序回路21はスタティッ
ク回路で構成されている。当該スタティック回路はイン
バータ211にクロックドインバータ213が逆並列接
続で追加され、クロックドインバータ210とは逆相で
出力動作可能にされる。なお、順序回路23における出
力段のインバータ231は論理極性を合わせるために付
加されており必要に応じて削除してもよい。図3の
(C)の例に従えば、クロック停止時、及び動作待機時
には、クロック信号φ1がハイレベル、φ2がロウレベ
ルとされ、順序回路21はその直前の入力データをラッ
チして後段の組み合わせ回路22へ供給し、順序回路2
3の状態を前の値の保持状態へ制御する。なお、動作待
機時とは、クロックは停止されていないが、所定のイベ
ントが発生していない場合に、以前の状態を保持して動
作を停止している状態を意味する。前記所定のイベント
としては、例えば、PWMタイマ7の場合、CPU1な
どのバスマスタによるリード/ライトや、後述するカウ
ントアップクロックの発生などがある。
【0060】図3の(C)において順序回路23を構成
するダイナミック回路は6個のMOSトランジスタによ
り、同じく図3の(C)において順序回路21を構成す
るスタティック回路は10個のMOSトランジスタによ
り構成される。図3の(B)においては順序回路23を
構成するダイナミック回路は6個のMOSトランジスタ
により、同じく図3の(B)において順序回路21を構
成するダイナミック回路は7個のMOSトランジスタに
より構成される。また、全部をスタティック回路にすれ
ば、何れの順序回路21,23も10個のMOSトラン
ジスタにて構成される。したがって、この部分を比較す
れば、図3の(C)の構成における16トランジスタに
対し、全部をダイナミック回路とすれば13トランジス
タ、全部をスタティック回路にすれば20トランジスタ
であり、図3の(C)の構成は、双方をダイナミック回
路とする場合に比べて約1.23倍、双方をスタティッ
ク回路とする場合に比べて約0.8倍のトランジスタ数
で済む。
【0061】また、図3の(C)に示されるように、順
序回路としてスタティック回路とダイナミック回路を交
互に配置し、ノーオーバラップの2相クロック信号φ
1,φ2のデューティ比(本明細書では、デューティ比
=ハイレベルの期間/1周期である)を50%からずら
し、デューティ比の大きい方をダイナミック回路のクロ
ック信号とする。換言すれば、ダイナミック回路に含ま
れる上記クロックドインバータ230の高出力インピー
ダンス期間を、スタティック回路に含まれる上記クロッ
クドインバータ210の高出力インピーダンス期間より
も短くする。これにより、例えばシステムクロック信号
φBの周波数を低減可能な範囲を広げることができるよ
うになる。例えば図20に示される50%よりも大きな
デューティ比のクロック信号φ1Bをダイナミック回路
のクロックφ1に、50%よりも小さなデューティ比の
クロック信号φ2Bをスタティック回路のクロックφ2
に採用する。
【0062】《プリスケーラクロック》 システムクロ
ック信号の他に、いわゆるプリスケーラクロック信号を
所定の機能ブロックに供給することがある。すなわち、
システムクロック信号を必要に応じて分周する場合に当
該分周器を個々の機能ブロックに配置する場合に比べ、
プリスケーラを用いる場合には各種分周比のクロック信
号を集中的に形成して必要な分周比のクロックを必要な
機能ブロックに振り分けるので、各機能ブロックの分周
器を共通化でき、チップ全体における論理規模の縮小を
図ることができる。
【0063】しかしながら、本発明者らの検討によれ
ば、プリスケーラクロック信号は、各機能ブロックが共
通に利用する性質上、クロック配線長が長く、配線容量
が大きくなる。更に、低分周比のプリスケーラクロック
は信号変化頻度が高い。このため、消費電流も大きくな
る。これを考慮した本実施例においては、低分周比のプ
リスケーラクロック信号に応じた比較的周波数の高いク
ロック信号は、機能ブロックに対して共通のプリスケー
ラが担わず各機能ブロックが、個々の分周回路を用いて
個別に生成するようにされる。
【0064】図4にはプリスケーラ14の一例がブロッ
ク図で示されている。同図には代表的に下位4桁分の構
成が示され、各桁を構成するラッチ回路は140〜14
3として例示され、その回路構成は代表的に詳細が示さ
れたラッチ回路140の構成と同じである。ラッチ回路
140は、2入力ノアゲート1401,1402にて成
るスタティックラッチを主体に構成され、その出力段に
は端子CSにて出力制御されるクロックドインバータ1
403が配置され、当該スタティックラッチの入力段に
は端子CMの論理値によって開閉機能を行う2入力アン
ドゲート1404,1405が配置される。入力端子T
は2入力型の排他的論理和ゲート1406の一方の入力
端子に結合され、他方の入力端子にはクロックドインバ
ータ1403の出力が帰還される。上記アンドゲート1
404には排他的論理和ゲート1406の出力が、上記
アンドゲート1405には排他的論理和ゲート1406
の出力がインバータ1407にて反転されて夫々供給さ
れる。最下位のラッチ回路140の入力端子Tには論理
値”1”が供給され、下位側のカウントアップクロック
φ/4UP,φ/8UP,φ/16UP,…が上位の入
力端子Tに与えられて縦列形態に接続されている。
【0065】各桁のラッチ回路140,141,14
2,143,…は、端子CMが論理値”1”(特に制限
されないが本実施例ではハイレベル)のときに保持した
データを更新する。端子Tが論理値”0”(特に制限さ
れないが本実施例ではローレベル)であればデータ保
持、端子Tが論理値”1”であればデータ反転とされ
る。即ち、端子CMと端子CSは同時に論理値1にされ
ない。換言すればφ1,φ2はノーオーバラップ2相の
クロック信号とされる。端子CSのハイレベルにおいて
クロックドインバータ1403は出力動作可能にされ、
端子CSのローレベルにおいて高出力インピーダンス状
態にされる。端子CMの論理値”1”においてアンドゲ
ート1404,1405の他方の入力が、当該アンドゲ
ート1404,1405の出力に反映されてラッチデー
タの更新が行われる。このとき、端子Tがローレベルな
らばそれまでラッチされていたデータがそのまま保持さ
れ、端子Tがハイレベルならばそれまでラッチされてい
たデータは反転される。端子CMのローレベルにおいて
1404,1405の出力は双方ともにローレベルに強
制されて2個のノアゲート1401,1402から成る
スタティックラッチはそれまでの状態をスタティックに
保持する。
【0066】上記ノーオーバラップ2相のクロック信号
φ1,φ2は上記クロック信号φOSCから生成され
る。その生成回路144は図4に示されるように相互に
一方の出力が他方の入力に遅延回路1441,1442
を介して帰還される一対のアンドゲート1443,14
44を主体とし、クロック信号φ1,φ2の停止時にφ
1をハイレベルに強制する出力制御用のオアゲート14
45、φ2をローレベルに強制する出力制御用のアンド
ゲート1446を備えて成る。アンドゲート1444は
φOSC及び遅延回路1441を介する帰還信号の夫々
の反転信号に対して論理積を採る。アンドゲート144
3は遅延回路1442を介する帰還信号の反転信号とφ
OSCとの論理積を採る。アンドゲート1446はプリ
スケーラモジュールストップ信号MSTPPSCの反転
信号とアンドゲート1444の出力とに対して論理積を
採る。プリスケーラモジュールストップ信号MSTPP
SCについてはその詳細を後述するが、その論理値”
0”によってクロック信号φ1,φ2の出力を許容し、
論理値”1”によって当該クロック信号φ1,φ2の出
力を禁止する。クロック信号φ1,φ2の出力禁止状態
においてφ1はハイレベル、φ2はローレベルに固定さ
れる。したがって、このとき各種プリスケーラクロック
信号の変化も抑止される。
【0067】図4に示されるプリスケーラ14は前記ク
ロック信号φOSCをカウントアップする。例えば、平
成5年3月(株)日立製作所発行『H8/3003 ハ
ードウェアマニュアル』p555に記載されるようなプ
リスケーラは、分周クロックφ/2、φ/4、φ/8…
などを順次生成している。本実施例のプリスケーラ14
は更に、それぞれの桁のカウントアップクロックφ/2
UP、φ/4UP、φ/8UP…も生成する。当該桁に
おけるカウントアップ信号(桁上げ信号)は、当該桁よ
りも下位側の全ての桁上げ信号と当該桁におけるラッチ
回路の出力とに対する論理積信号として得られる。
【0068】本実施例においてプリスケーラ14にて生
成されるクロック信号(プリスケーラクロック信号)は
所定の機能ブロック、例えばタイマ7、SCI9、A/
D変換器10などに供給される。この場合に、そのよう
な機能ブロックに供給されるプリスケーラクロック信号
はφ/8以上の分周比のプリスケーラクロック信号とさ
れる。φ/2、φ/4及びφ/2UP、φ/4UPなど
のような相対的に分周比の小さな(周波数の高い)クロ
ック信号はプリスケーラ14から外部の機能ブロックに
は出力されない。分周比の低いクロック信号もプリスケ
ーラ14から一括して各機能ブロックに供給する場合に
は相当に長いクロック配線上で高い周波数に同期して充
放電が高速に行われるため消費電力が大きくなり、しか
も各機能ブロックがそのような高い周波数のクロック信
号をシステムクロック信号φSとは別に利用するとは限
らず、そのような電力消費が無駄になることも大いに予
想される。したがって、φ/2のように比較的周波数の
高いクロック信号はシステムクロック信号φSを機能ブ
ロック内部で分周して利用する。これによって電力消費
を低減することができる。
【0069】図5の(A)〜(I)にはプリスケーラ1
4の動作タイミングチャートが示されている。プリスケ
ーラクロック信号はクロック信号φ1に同期したタイミ
ングで変化される。夫々の桁のカウントアップクロック
は自分よりも下位の桁のラッチ回路出力が全ビット論理
値”1”になると論理値”1”にされ、その後のφ1に
同期して、その桁が変化される。即ち、各桁の出力Qの
1周期に1回上位桁へのカウントアップクロックが発生
する。例えば、φ/8とφ/16UPは同一の周期を持
つ信号であり、φ/16UPのハイレベル期間はクロッ
ク信号φ/2のハイレベル期間に一致される。
【0070】《モジュールストップ》 図6にはPWM
タイマ7のブロック図が示される。PWMタイマ7は、
ノーオーバラップ生成回路700、クロック制御回路7
10、分周器720、リードライト制御回路730、カ
ウンタクロック制御回路740、出力制御750、バス
インタフェース760、制御レジスタ(TCR)77
1、カウンタ(TCNT)772、デューティレジスタ
(DTR)773、比較器(CMP)774から構成さ
れる。
【0071】ノーオーバラップ生成回路700は、クロ
ック信号φSを入力し、互いにノーオーバラップの関係
にあり、φSと同相のクロック信号φ1Sと、クロック
信号φ1Sに対して逆相のクロック信号φ2Sとを夫々
生成する。このノーオーバラップ生成回路700の一例
は図7の(A)に示されるように相互に一方の出力が他
方の入力に遅延回路701,702を介して帰還される
一対のアンドゲート703,704を主体とし、クロッ
ク信号φ1S,φ2Sを停止すべきときに当該クロック
信号φ1Sをハイレベルに強制する出力制御用のオアゲ
ート705、クロック信号φ2Sをローレベルに強制す
る出力制御用のアンドゲート706を備えて成る。アン
ドゲート704はクロック信号φS及び遅延回路701
を介する帰還信号の夫々の反転信号に対して論理積を採
る。アンドゲート703はクロック信号φSと遅延回路
702を介する帰還信号の反転信号との論理積を採る。
アンドゲート706は一方の入力に供給されるタイマモ
ジュールストップ信号MSTPPWMの反転信号とアン
ドゲート704の出力とに対して論理積を採る。タイマ
モジュールストップ信号MSTPPWMについてはその
詳細を後述するが、その論理値”0”によってクロック
信号φ1S,φ2Sの出力を許容し、論理値”1”によ
って当該クロック信号φ1S,φ2Sの出力を禁止す
る。即ちタイマモジュールストップ信号MSTPPWM
が論理値”1”のとき、φ1Sがハイレベル、φ2Sが
ローレベルの状態に固定される。このようにタイマモジ
ュールストップ信号MSTPPWMはPWMタイマ7を
動作させる必要のないときにクロック信号φ1S,φ2
Sを所定の論理値を以て停止させるための制御信号とさ
れる。
【0072】ノーオーバラップ生成回路700で生成さ
れたクロック信号φ1S,φ2Sは分周器720、クロ
ック制御回路710、及びカウンタクロック制御回路7
40に限って供給される。
【0073】分周器720は、クロック信号φ1S及び
φ2Sを入力して、クロック信号φS/2を生成する。
この論理構成は、図4で説明したプリスケーラ14にお
ける最下位の論理構成を以て実現することができる。ク
ロック信号φSに対して分周比の比較的小さなクロック
信号φS/2については機能ブロック内の分周器で生成
する。これはプリスケーラの項目で説明した通り低消費
電力化を図るための考慮である。
【0074】カウンタクロック制御回路740はプリス
ケーラクロックとしてφ/16UP、φ/64UP、及
びφ/256UPを入力し、併せて前記分周器720で
生成したクロック信号φS/2を入力する。これらの入
力クロック信号から所望の入力クロック信号が選択さ
れ、選択された入力クロック信号がカウントアップに使
われる。すなわち、制御レジスタ(TCR)771のC
K1、CK0ビットによって、選択されるべき入力クロ
ック信号を指定し、この指定により、カウンタクロック
制御回路740で、入力クロック信号の選択が行われ、
選択されたクロック信号の周期に同期してカウントアッ
プクロック信号741が生成される。このカウントアッ
プクロック信号741の生成は、上記制御レジスタ(T
CR)内のOE(アウトプット・イネーブル)ビット
が”1”のときに許可され、”0”のときに禁止され
る。カウンタ(TCNT)772は当該カウントアップ
クロック信号741に同期してカウントアップ動作を行
う。
【0075】クロック制御回路710は、クロック信号
φ1S及びφ2S、CPU1の出力するアドレス信号に
よって生成されたPWMタイマ選択信号MSPWM#
(記号#はそれが付された信号がローイネーブル、即ち
負論理の信号であることを意味する)、及びカウンタク
ロック制御回路740から出力されるカウントアップク
ロック信号741を入力して、クロック信号φ1−PW
M、φ2−PWMをTCR771,TCNT772,C
MP774,DTR773,バスインタフェース76
0,出力制御回路750に供給する。クロック信号φ1
−PWM,φ2−PWMは、CPU1がPWMタイマ7
をリード/ライトしたとき、または、カウントアップク
ロック信号が発生したときに有効になる。そのほかの場
合は、φ1−PWMがハイレベル、φ2−PWMがロウ
レベルの状態に固定される。
【0076】リードライト制御回路730は、バスコン
トローラ3を介して、CPU1の出力する内部アドレ
ス、リード信号RD、ライト信号WR、そしてPWMタ
イマ選択信号MSPWM#を入力して、各レジスタとバ
スインタフェースを制御して、各レジスタと例えばCP
U1との間のデータの入出力を制御する。
【0077】出力制御回路750は、CMP774の出
力するコンペアマッチ信号780と、TCNT772の
出力するオーバフロー信号781、及びTCR771か
らのOEビットを入力して、PWM信号を出力する。O
Eビットが論理値”1”にセットされると、PWM信号
は所定の、入出力ポートと兼用の端子から外部に出力さ
れる。PWM信号は、コンペアマッチ時(コンペアマッ
チ信号780が論理値”1”)には論理値”1”を出力
し、オーバフロー時(オーバフロー信号781が論理
値”1”)には論理値”0”を出力する。
【0078】バスインタフェース760は、リードライ
ト制御回路730の制御によって、内部データバスPD
BとPWMタイマ7の内部のモジュールデータバスとの
間での情報の入出力を行う。
【0079】TCR771は、OEビットとCK1〜C
K0を有し、リードライト制御回路730の制御に従っ
てデータが入出力される。OEビットが”1”にセット
されると、PWMタイマ7は動作する。CK1〜CK0
ビットは前述の通り、カウントクロック周期を選択する
ためのビットとされる。TCNT772は、リードライ
ト制御回路730の制御に従ってデータを入出力する。
また、カウンタクロック制御回路740の出力するカウ
ントクロック信号741によってカウントアップ動作を
行う。カウントアップ動作によって、オーバフローが発
生した場合、TCNT772は、オーバフロー信号78
1を活性状態とする。DTR773は、リードライト制
御回路730の制御に従ってデータを入出力する。CM
P774は、TCNT772及びDTR773の出力を
入力して比較し、その結果が一致したときにコンペアマ
ッチ信号780を活性状態とする。
【0080】図7の(B)にはクロック制御回路710
の一例が示されている。クロック制御回路710は、2
個の論理和回路711,712、1個の論理積回路71
3で構成される。タイマ選択信号MSPWM#の反転信
号とカウントアップクロック信号741とが論理和回路
711に入力される。論理和回路711の出力の反転信
号とクロック信号φ1Sとが論理和回路712に入力さ
れ、この出力がクロック信号φ1−PWMとされる。ま
た、論理和回路711の出力とクロック信号φ2Sが論
理積回路713に入力され、この出力がクロック信号φ
2−PWMとされる。クロック信号φ1−PWM,φ2
−PWMは、CPU1がPWMタイマ7をリード/ライ
トするためにタイマ選択信号MSPWM#を活性状態に
したとき、または、カウントアップクロック信号741
が発生したときに有効になる。そのほかの場合は、クロ
ック信号φ1−PWMがハイレベル、クロック信号φ2
−PWMがロウレベルの状態に固定される。つまり、所
定のイベント(CPU1のリード/ライト、及び、カウ
ントアップクロック信号の発生)が生じたときのみ、各
部に供給されるべきクロックφ1−PWM、φ2−PW
Mがクロック変化を行う。従ってクロック信号φ1−P
WM、φ2−PWMを受けて、それに同期して動作され
る回路、即ちノーオーバラップ生成回路700,クロッ
ク制御回路710,分周器720,カウンタクロック制
御回路740以外の機能ブロックは、上記所定のイベン
トが発生したときのみ動作される。そのほかの状態では
信号の変化が抑止され、消費電流が抑止される。
【0081】ノーオーバラップ生成回路700は、上述
のように図7の(A)のような構成にされ、モジュール
ストップ信号MSTPPWMのハイレベルによってφ1
Sがハイレベル、φ2Sがローレベルに固定される。図
7の(B)からも明らかなようにノーオーバラップ生成
回路700における上記モジュールストップ状態におい
てはクロック信号φ1−PWM,φ2−PWMも夫々所
定のレベルに固定される。このようにPWMタイマ7を
全く利用しない場合にはモジュールストップ信号MST
PPWMにて内部のクロック信号φ1S,φ2S,φ1
−PWM,φ2−PWMの変化を抑止し、PWMタイマ
7を利用する場合にも上記所定のイベントが発生するま
で内部のクロック信号φ1−PWM,φ2−PWMの変
化を抑止することによって、低消費電力を図ることがで
きる。
【0082】上述のノーオーバラップ生成回路700及
びクロック制御回路710による内部クロック信号の変
化を選択的に抑止する構成はその他の回路モジュール例
えばWDT8,SCI9,A/D10にも同様に適用さ
れている。高分周比のプリスケーラクロック信号の供給
と内部分周器による低分周比のクロック生成に関しても
同様である。
【0083】図7の(C)にはWDT8に採用されるノ
ーオーバラップ生成回路の例が示される。図7の(A)
に示したノーオーバラップ生成回路700に対して論理
積回路707が追加されている。論理積回路707の一
方の入力にはWDT8に割り当てられたモジュールスト
ップ信号MSTPWDTが供給され、他方の入力にはウ
オッチドッグタイマモードを指定するWDTMビットの
反転信号供給される。WDT8はインターバルタイマと
しても利用可能にされ、それをウオッチドッグタイマと
して利用する場合にはWDTMビットが論理値”1”に
される。所定のレジスタにWDTMビットが設けられ、
このビットを例えばCPU1によって論理値”1”にし
て、ウオッチドッグタイマモードを指定すれば、換言す
れば、一旦、ウオッチドッグタイマモードが指定される
と、モジュールストップ信号MSTPWDTによるモジ
ュールストップの指示は無視される。これにより、WD
T8を利用したシステム監視の機能が誤って解除される
事態を防止でき、システムの信頼性向上に寄与する。
【0084】図8には図6のPWMタイマの動作タイミ
ングチャートが示されている。CPU1はステートS3
からPWMタイマ7のTCR771をライトする。かか
るライト動作は3ステートを要し、先ずステートS3に
おいてモジュール選択信号MSPWM#がロウレベルと
される。モジュール選択信号MSPWM#がロウレベル
にされると、図7の(B)に示される論理和回路711
の出力がハイレベルとなって、クロック信号φ1−PW
M、φ2−PWMがφ1S、φ2Sに同期して変化を開
始する。なお、MSPWM#はφ1Sに同期している。
ライト動作の3ステート目(ステートS5の開始タイミ
ング)でOEビットが”1”にセットされる。また、C
K1〜CK0が設定され、この設定されたCK1〜CK
0により、例えばクロック信号φS/2が選択される。
【0085】OEビットが”1”にセットされた状態
で、分周器720の生成するクロック信号φS/2がカ
ウントアップクロック信号741とされ、このカウント
アップクロック信号がハイレベルの期間において、クロ
ック信号φ1−PWM、φ2−PWMがクロック信号φ
1S、φ2Sに従って変化され、PWMタイマ7はカウ
ントアップ動作を行う。ステートS6〜ステートS12
の期間は、φ1−PWM,φ2−PWMの周期は、クロ
ック信号φ1S,φ2Sをそのまま使用する場合に比較
して、1/2にされる。これに従って、ノーオーバラッ
プ生成回路700,クロック制御回路710,分周器7
20,カウンタクロック制御回路740以外の回路ブロ
ックの動作頻度も1/2になり、かかる部分の消費電流
も1/2にすることができる。例えば、かかる部分の論
理規模と、ノーオーバラップ生成回路700,クロック
制御回路710,分周器720,カウンタクロック制御
回路740の論理規模との比が、8:2であるとすれ
ば、PWMタイマ7全体の消費電流も6/10にするこ
とができる。カウントアップクロックにφ/16UPを
選択すると、これはφS/8の周波数に等しいから、前
記部分の消費電流は1/8とされ、PWMタイマ7全体
の消費電流を3/10にすることができる。
【0086】また、ステートS13〜ステートS15に
おけるCPU1のライト動作によって、OEビットが”
0”にクリアされると、論理和回路711の出力がロウ
レベルにされ、これによってφ1−PWMはハイレベ
ル、φ2−PWMはロウレベルに固定される。PWMタ
イマ7のタイマ動作中(ステートS3〜ステートS5、
ステートS7、ステートS9、ステートS11、ステー
トS13〜ステートS15)は、φ1−PWM、φ2−
PWMのパルス幅が同等であり、動作の中断中は、直流
的に、φ1−PWMがハイレベル、φ2−PWMがロウ
レベルとされている。この動作の中断状態において内部
状態は保持されている。すなわち、PWMタイマ7のノ
ーオーバラップ生成回路700,クロック制御回路71
0,分周器720,カウンタクロック制御回路740以
外の回路ブロックにおける順序回路は、図3の(C)で
示したような順序回路が使われ、クロック信号φ2がク
ロック信号φ2−PWMとされ、クロック信号φ1がク
ロック信号φ1−PWMとされるからである。
【0087】同様に、モジュールストップモードでは、
モジュールストップ信号MSTPPWMが活性状態にな
り、φ1Sがハイレベル、φ2Sがロウレベルの状態で
停止し、更に、φ1−PWMがハイレベル、φ2−PW
Mがロウレベルの状態で停止する。この状態においてP
WMタイマ7自体の状態は、前記同様に、保持される。
例えば、TCR771の内容や、DTR773,TCN
T772の内容は保持される。モジュールストップ解除
後に、TCR771の再設定などを行う必要はない。モ
ジュールストップ状態では、CPU1によるリード/ラ
イトも行えない。φ1S及びφ2Sが停止するので、P
WMタイマ7全体の信号変化が抑止され、その間におけ
る消費電流は実質的に0とされる。なお、図7の(A)
に示されるタイマモジュールストップ信号MSTPPW
Mの供給ラインに、論理積回路の出力を接続し、当該論
理積回路にタイマモジュールストップ信号MSTPPW
Mとタイマモジュール選択信号MSPWM#を供給する
ようにしてやれば、モジュールストップ状態を設定して
いても、PWMタイマ7はCPU1からリード/ライト
可能にされる。
【0088】《クロック制御回路》 図9には図1に示
されるシングルチップマイクロコンピュータのクロック
発振器12及びクロック制御回路13のブロック図が示
されている。クロック制御回路13は、分周器130、
セレクタ131、クロック制御レジスタ132、モジュ
ールストップ制御レジスタ133、スタンバイ制御回路
134で構成される。モジュールストップ制御レジスタ
133は選択可能な機能ブロックに対応して、所定のビ
ット数分設けられている。すなわち、選択可能な機能ブ
ロックに、それぞれ対応したビットが、モジュールスト
ップ制御レジスタ133に設けられている。発振器12
には、EXTAL、XTAL端子を介して水晶振動子が
接続され、又はEXTAL端子から外部クロックが供給
される。水晶振動子を利用する場合、この水晶振動子と
回路12とによって、発振回路が構成されるとみなすこ
とができる。発振回路12は、特に制限されないが、水
晶振動子の固有振動数、又は外部クロックの周波数と同
一の周波数のクロック信号φOSCを生成する。発振器
12はスタンバイ制御回路134から発振器停止信号1
35が与えられ、スタンバイ状態において発振器停止信
号135が活性状態にされることによって発振器12は
停止され、クロック信号φOSCは例えばハイレベルに
固定されてその変化が停止される。なお、発振器12は
デューティ補正回路を内蔵してもよい。また、発振器1
2は分周器を内蔵して、水晶振動子又は外部クロックを
2分周したクロック信号をφOSCとして出力してもよ
い。これらについては、例えば、平成5年3月(株)日
立製作所発行『H8/3003ハードウェアマニュア
ル』P553乃至P560に記載されている。
【0089】分周器130は、クロック信号φOSCを
入力して、例えば順次2分周を行い、クロック信号φO
SC/2、φOSC/4、φOSC/8を生成する。セ
レクタ131は、クロック信号φOSC、φOSC/
2、φOSC/4、φOSC/8を入力して、クロック
制御レジスタ132のMSMEビット,CKS1,CK
S0ビットで選択されたクロック信号を、システムクロ
ック信号φBとして出力し、シングルチップマイクロコ
ンピュータにおける上記CPU1などに供給する。或は
φOSC/2、φOSC/4、φOSC/8の代りにカ
ウントアップクロックφOSC/4UP、φOSC/8
UP、φOSC/16UPを入力するようにしてもよ
い。セレクタ131によって選択内容を変更する場合、
特に、変更前と変更後でクロック信号の位相を合わせる
ようなことは行わない。例えばクロック信号φS(セレ
クタ131内部で生成できる場合にはφ1S)の立ち上
がりに同期して変更することによって、遷移時の最小パ
ルス幅が、クロック信号φS(φOSC)のパルス幅以
上になる。低消費電力状態として、クロック信号を停止
する場合にはφOSCがハイレベルとされ、クロック信
号φB及びφSもハイレベルとされる。図10の(A)
にはMSMEビット、CKS1ビット、CKS0ビット
の論理値によるクロック信号の選択態様の一例が示され
る。CKS1,CKS0はMSME=”1”のとき有意
とされ、MSME=”0”のときはCKS1,CKS0
に拘わらずφS=φOSCとされる。
【0090】図10の(B)には、上記MSMEビッ
ト、CKS1ビット、CKS0ビットによって制御され
るセレクタの一実施例が示される。同図において、AG
101は、CKS1ビット、CKS0ビット及びMSM
Eビットを受け、これらのビットが”1”のとき、”
1”を出力するアンドゲート(論理積回路)であり、A
G102は、CKS0ビットの反転信号、CKS1ビッ
ト及びMSMEビットを受け、CKS0=”0”、CK
S1=”1”、MSME=”1”のとき、”1”を出力
するアンドゲートであり、AG103は、CKS1ビッ
トの反転信号、CKS0ビット及びMSMEビットを受
け、CKS1=”0”、CKS0=”1”、MSME
=”1”のとき、”1”を出力するアンドゲートであ
る。AG104は、CKS0ビットの反転信号、CKS
1の反転信号を受け、CKS0=”0”、CKS1=”
0”のとき、”1”を出力するアンドゲートであり、N
G101は、上記AG104の出力とMSMEビットの
反転信号を受け、AG104の出力が”1”又はMSM
E=”0”のとき、”1”を出力するオアゲート(論理
和回路)である。そのため、オアゲートNG101は、
MSMEビットが”0”のとき、又はCKS0ビットと
CKS1ビットが共に”0”のときに、”1”を出力す
る。
【0091】AG105は、上記オアゲートNG101
の出力とクロック信号φOSCを受けるアンドゲートで
あり、AG106は、上記アンドゲートAG103の出
力と分周されたクロック信号φOSC/2とを受けるア
ンドゲートであり、AG107は、上記アンドゲートA
G102の出力と分周されたクロック信号φOSC/4
を受けるアンドゲートであり、AG108は、上記アン
ドゲートAG101の出力と分周されたクロック信号φ
OSC/8を受けるアンドゲートである。これらのアン
ドゲートAG105〜AG108の出力は、オアゲート
NG102に供給され、該オアゲートNG102から上
記システムクロック信号φBが出力される。このよう
に、セレクタを構成することにより、オアゲートNG1
02からは、図10の(A)に示されている各ビットの
組み合わせに従った周波数を有するシステムクロック信
号φBが出力される。
【0092】クロック制御レジスタ132及びモジュー
ルストップ制御レジスタ133は、内部データバスPD
Bに接続され、CPU1からリード/ライト可能とされ
る。クロック制御レジスタ132は、MSMEビット、
CKS1、CKS0ビットを、セレクタ131に出力す
ると共に、SSBYビットをスタンバイ制御回路134
に出力する。モジュールストップ制御レジスタ133
は、モジュールストップ信号MSTPを各機能ブロック
に供給する。スタンバイ制御回路134は、例えば、フ
リップフロップで構成され、制御レジスタ132のSS
BYビットが論理値”1”の状態で、CPU1がスリー
プ命令を実行する(スリープ命令実行信号が活性状態)
と、かかるフリップフロップがセット状態にされる。こ
のフリップフロップのセット状態により、発振器停止信
号135が活性状態になり、発振器12の発振動作が停
止されてシングルチップマイクロコンピュータはスタン
バイ状態となる。また、スタンバイ状態で外部割り込み
要求やリセットが発生すると、例えば、割り込みコント
ローラ4の制御によって、スタンバイ解除信号136が
活性状態になり、前記フリップフロップはリセット状態
にされる。このリセット状態によって、発振器停止信号
135が非活性状態になり、発振器12の発振動作が再
開されてスタンバイ状態が解除される。スタンバイ状態
解除時に、発振安定時間を設けるようにするとよいが、
解除の詳細な手順や構成は本発明に直接の関係がないの
で、その詳細な説明は省略する。尚、CPU1がスリー
プ命令を実行するとCPU1内部の動作クロックは停止
される。SSBYビットが論理値”0”にされていると
きにCPU1がスリープ命令を実行したときはクロック
発振器12の発振動作は停止されない。CPU1がスリ
ープ命令を実行して当該CPU1にセットされた状態
(CPU1のスリープ状態)は割り込みやリセットによ
って解除可能にされる。
【0093】図11の(A),(B)にはモジュールス
トップモードを制御するモジュールストップ制御レジス
タ133のレジスタ構成と中速モードを制御するクロッ
ク制御レジスタ132のレジスタ構成例が示されてい
る。図12の(A)〜(C)、図13の(A)〜
(B)、及び図14の(A)〜(C)にはそれらレジス
タの各ビットの詳細が示されている。
【0094】モジュールストップ制御レジスタ133
は、CPU1によってリード/ライト可能な8ビットの
レジスタで、ビットMSTP7〜MSTP3を有し、M
STP7はデータトランスファコントローラ(DTC)
2、MSTP6はタイマ7、MSTP5はウオッチドッ
グタイマ(WDT)8、MSTP4はシリアルコミュニ
ケーションインタフェース(SCI)9、MSTP3は
A/D変換器10に対応する。図12の(A)〜(C)
及び図13の(A)〜(B)に示されているように、こ
れらにより、機能ブロック単位で、別々にモジュールス
トップ状態を指定することができる。PWMタイマ7の
ための上記モジュールストップ信号MSTPPWMは、
ビットMSTP6が論理値”1”にセットされることに
よって活性状態にされる。ビットMSTP5に設定され
た論理値”1”は図7の(C)に基づいて説明した通
り、実質的にウオッチドッグタイマモードでないときに
有効とされる。電源投入後或いはリセット後におけるこ
れらのビットの初期値は、特に制限されないが、論理
値”1”であり、リセット後は、モジュールストップ状
態とされる。動作開始直後の消費電流を低減するように
している。例えば、モジュールストップ状態の機能ブロ
ックと、動作状態の機能ブロックの論理規模の比に応じ
て、消費電流が低減される。例えば、斯る比率を4:6
とすると、消費電流は6/10に低減できる。
【0095】プリスケーラ14は、プリスケーラクロッ
ク信号の供給対象であるタイマ7、WDT8、SCI
9、A/D変換器10が全てモジュールストップ状態と
された時、即ち、MSTP6〜MSTP3ビットが全
て”1”にセットされ、且つWDT8がウオッチドッグ
タイマモードでないときに、プリスケーラモジュールス
トップ信号MSTPPSCが活性状態になって、停止状
態とされる。図9に従えばプリスケーラ14のためのモ
ジュールストップ信号MSTPPSCはビットMSTP
6〜MSTP3に対応するモジュールストップ信号とウ
オッチドッグタイマモード信号WDTMの反転信号との
論理積を採る論理積回路137によって形成される。な
お、モジュールストップ制御レジスタ133のビット2
〜ビット0はリザーブビットであり、リードすると”
0”が読み出され、ライトは無効とされる。
【0096】クロック制御レジスタ132は、図11の
(A)に示されるようにSSBY、MSME、CKS
1、CKS0の4ビットを有する。図14の(A)に示
されるように、SSBYビットはスタンバイ状態への遷
移を制御する。SSBYビットが論理値”1”にセット
された状態で、CPU1がスリープ命令を実行すると、
クロック発振器12の発振動作が停止されて、シングル
チップマイクロコンピュータはスタンバイ状態に遷移
し、SSBYビットが論理値”0”にクリアされた状態
で、CPU1がスリープ命令を実行すると、CPU1内
部のクロック信号が停止されてCPU1は所謂スリープ
状態に遷移する。このようなスタンバイ状態では、シン
グルチップマイクロコンピュータ全体が停止するが、ス
リープ状態では、CPU1のみが停止する。
【0097】図14の(B)及び図14の(C)に示さ
れているように、ビットMSMEは中速モードの許可ビ
ットであり、このビットが論理値”1”にセットされて
いるときにのみ、ビットCKS1、CKS0によるクロ
ック信号の指定が有効になる。斯るビットMSME、C
KS1、CKS0がセレクタに供給されることにより、
φOSC、φOSC/2、φOSC/4、φOSC/8
から、マイクロコンピュータのシステムクロック信号φ
Bが選択される。なお、システムクロック信号φBの1
周期の時間を1ステートと呼ぶ。クロック信号φBとし
てクロック信号φOSC以外のクロックが選択された状
態を中速モードと呼ぶ。なお、ビット6乃至ビット3は
リザーブビットであり、リードすると”0”が読み出さ
れ、ライトは無効である。
【0098】図15には本実施例のシングルチップマイ
クロコンピュータにおけるシステムクロック信号に着目
した概略的な動作フローチャートが示されている。リセ
ット直後、シングルチップマイクロコンピュータは、モ
ジュールストップ状態とされ、CPU1などのバスマス
タは高速モード(φB=φOSC)で動作を開始する。
そして中速モードかの判定が行われ(ST1)、高速動
作が必要でなければクロック制御レジスタに所望の値を
ライトして、中速モードに遷移する(ST2)。動作を
必要とする機能ブロックに対応しては、モジュールスト
ップ制御レジスタに所望の値をライトして、所要の機能
ブロックに対するモジュールストップ状態を解除をする
(ST3)。その後、各機能ブロックの設定を行う(S
T4)。例えば、各機能ブロックの制御レジスタなどに
所望の値を初期的にライトすることによって行う。そし
てCPU1により所望の処理が行われるが(ST5)、
その際に高速処理が必要でなければ中速モードに遷移可
能にするために、クロック信号φBを変化させるべきか
を判定して(ST6)、その結果に従ってクロック制御
レジスタが設定される(ST7)。特定の機能ブロック
を動作させる必要がなくなったり、特定の機能ブロック
の動作が新たに必要になったときに対処するために動作
させるべき回路モジュール(機能ブロック)に変更が有
るかの判定が行われ(ST8)、変更すべきときにはモ
ジュールストップ制御レジスタに所望の値をライトし
て、モジュールストップ状態を変更する(ST9)。そ
してスタンバイ状態にすべきか否かを判定し(ST1
0)、マイクロコンピュータ全体の動作を中断する必要
があれば、SSBYビットを”1”にセットして、スリ
ープ命令を実行し(ST11)、スタンバイ状態に遷移
する(ST12)。外部割り込みが発生すると、スタン
バイ状態から復帰して動作を再開する(ST13)。上
述のようにスタンバイ状態においてモジュールの内部状
態は保持されているので、スタンバイ状態の解除後は各
機能ブロックの設定例えば各機能ブロックの制御レジス
タなどへのライトを行う必要はない。上記の各ステップ
におけるレジスタの設定はプログラムによって行う。例
えば、レジスタを指定し、それにデータをライトする命
令を、CPU1によって実行することにより、レジスタ
への設定が行われる。
【0099】《割込み要求等に伴うφBの切換え》 本
発明者らの検討によれば、低消費電力化のためのクロッ
クの切り換えをソフトウェアで行うと、所定のイベント
例えばCPU1への割り込みが発生してCPU1を高速
処理させる必要がある場合、かかるイベントを割込とし
て認識し、割込例外処理を実施し、その割込処理ルーチ
ンの中で、システムクロックの分周比を切り換えた後
に、所望の処理をすることになってしまう。これでは、
前記イベントが発生してから、所望の処理をするまでの
動作速度を速めることができず、割り込みに対する応答
時間が長くなってしまい、都合が悪い。本実施例では、
割込要求や転送要求などの所定のイベントが発生する
と、制御ビットMSMEが自動的に論理値”0”にクリ
アされ、CPU1やDTC2をクロック信号φBの最高
周波数であるφOSCに同期動作させる高速モードに遷
移できるようになっている。割込み例外処理からのリタ
ーン時に、ビットMSMEは論理値”1”にセットされ
る。ソフトウェアでビットMSMEを論理値”1”にセ
ットすると、設定済の制御ビットCKS0,CKS1に
従った動作モードになる。DTC起動要求(DTC転送
要求)が発生すると、同様に制御ビットMSMEビット
が、自動的に論理値”0”にクリアされ、CPU1及び
DTC2は高速モードに遷移する。DTCデータ転送が
終了すると、MSMEビットが、自動的に論理値”1”
にセットされ、設定済の制御ビットCKS0,CKS1
に従った動作モードになる。DTC2に外部からの転送
リクエスト端子があれば、外部からの転送要求があった
場合も同様にすることができる。
【0100】図16にはMSMEビットの概略ブロック
図が示される。MSMEビットは、例えばセット・リセ
ット型のフリップフロップ1320を主体として構成さ
れる。フリップフロップ1320のデータ入力端子Dは
内部データバスPDBの所定の信号線に接続され、クロ
ック入力端子Cは、論理積回路1321の出力、即ちC
PU1のバス権を示す信号とライト信号とアドレスデコ
ード信号との論理積信号とされる。なお、上記アドレス
デコード信号は、アドレスバスIABの内容を解読して
得られる信号であり、クロック制御レジスタ132のア
ドレスが与えられたことを示す信号である。出力端子Q
は、クロック制御回路13のセレクタ131に与えられ
ると共に、クロックドバッファ1322を介してデータ
バスに出力される。クロックドバッファ1322は上記
デコード信号とリード信号を入力とする2入力の論理積
回路1323のハイレベル出力によって出力動作可能に
され、それ以外の状態においては高出力インピーダンス
状態にされる。リセット入力端子Rには、リセット信号
とDTC転送要求信号とCPU割り込み信号との論理和
信号が論理和回路1324から与えられる。セット入力
端子Sには、DTC転送終了信号1325が与えられ
る。DTC転送終了信号1325は、DTC2から出力
され、例えばデータ転送終了時にDTC2が活性化す
る。上記リセット信号としては、外部からのリセット信
号RES又はウオッチドッグタイマWDT8の出力信号
が使われる。また、上記DTC転送要求信号は、割込み
コントローラ4から供給され、上記CPU割込み信号
も、割込みコントローラ4から供給される。
【0101】上記CPU割り込み信号及びDTC転送要
求信号はイベント発生信号とされる。DTC2が割り込
みコントローラ4からのDTC転送要求以外に外部から
の転送要求の入力端子を持つ場合には、当該外部からの
転送要求信号と割り込みコントローラからの転送要求信
号との論理和信号がDTC転送要求信号として上記論理
和回路1324に供給される。なお、CPU1のマスク
情報を参照して、CPU1のマスクレベル以下の割り込
み要求が発生しても、イベントとして認識されない。割
り込みマスクについては、例えば、平成5年3月(株)
日立製作所発行『H8/3003 ハードウェアマニュ
アル』P89乃至P115に記載されている。
【0102】図17には割り込み要求発生時における動
作タイミングの一例が示される。ビットCKS1が”
0”にクリアされ、ビットCKS0が”1”にセットさ
れ、ビットMSMEが”1”にセットされた状態で、φ
B=φOSC/2で動作している状態(中速モードの状
態)において、ステートS5で、割り込み要求信号が発
生すると、MSMEビットが”0”にクリアされ、φB
=φOSCとなり、CPU1及びDTC2などは高速モ
ードにされる。CPU1が、割り込み例外処理を行い、
高速モードで処理すべき処理を終了すると、CPU1は
その動作プログラムに従ってMSMEビットをソフトウ
ェアで”1”にセットする。例えばステートS15でM
SMEビットが”1”にセットされ、φB=φOSC/
2とされ、その後CPU1はリターン命令を実行して、
元の処理に遷移される。
【0103】図18にはDTC起動要求発生時における
動作タイミングの一例が示される。図17と同様に、ま
ず、CPU1は、中速モード(ビットCKS1が”0”
にクリアされ、ビットCKS0が”1”にセットされ、
ビットMSMEが”1”にセットされた状態で、φB=
φOSC/2とされている)で動作している。このとき
DTCの起動要因となっているDTC転送要求が発生す
ると、ビットMSMEが”0”にクリアされ、φB=φ
OSCとされてCPU1及びDTC2などが動作され
る。DTCが起動されると、例えば起動要因となった割
り込み要因がクリアされ、データ転送が行われる。必要
なデータ転送が終了すると、DTC2からのDTC転送
終了信号1325が活性状態になり、これによってMS
MEビットが”1”にセットされ、CPU1などの機能
ブロックの動作速度は元の速度に戻される。
【0104】《インタフェース信号》 図19にはバス
マスタとバススレーブとのインタフェースの一例が概略
的に示されてい。同図にはインタフェース信号I/F1
とI/F2が代表的に示されている。図20にはバスマ
スタクロックとバススレーブクロックの一例のタイミン
グが示されている。本実施例に従えばバスマスタは、ク
ロック信号φBに同期動作されるCPU1及びDTC2
であり、バススレーブはクロック信号φSに同期動作さ
れるWDT8やSCI9などの機能ブロックを意味す
る。
【0105】クロック信号φBは、上記セレクタ131
による選択状態に応じてクロック信号φSよりも常に周
期が長いか同等にされ、クロック信号φBの立ち下がり
エッジはφSの立ち上がりエッジに同期している。φ1
S,φ2SはφSから生成されたノーオーバラップの2
相クロック信号であり、φ1B,φ2BはφBから生成
されたノーオーバラップの2相クロック信号である。図
20においてクロック信号φBのデューティは50%以
上にされている。クロック信号φBは、例えばクロック
信号φSに相当するクロック信号φOSCをデューティ
50%で2分周した信号と4分周した信号との論理和に
よって形成することができる。或はカウントアップ信号
φOSC/8UPの反転としてもよい。特に図20の例
では、クロック信号φ1Bのローレベル期間はクロック
信号φ1Sのローレベル期間に一致され、クロック信号
φ2Bのハイレベル期間はクロック信号φ2Sのハイレ
ベル期間に一致されている。換言すれば、クロック信号
φ1Bのローレベルのパルス幅はクロック信号φ1Sの
それと等しく、クロック信号φ2Bのハイレベルのパル
ス幅はφ2Sのそれと等しくされている。
【0106】図19の例ではバスマスタの出力信号はク
ロック信号φ1Bのハイレベルへの変化に同期して、出
力され、バスマスタへの入力信号は、クロック信号2B
のハイレベルからローレベルへの変化に同期してラッチ
される。バススレーブへの入力信号は、クロック信号φ
2Sのハイレベルからローレベルへの変化に同期してラ
ッチされ、バススレーブの出力信号はクロック信号φ1
Sのハイレベルへの変化に同期して、出力される。図2
0を参照すると、バスマスタは、クロック信号φB及び
φ1Bのハイレベル期間に同期して出力し、バススレー
ブは、φS及びφ1Sのハイレベル期間に同期して、出
力する。また、バスマスタは、クロック信号φBがロー
レベルでφ2Bがハイレベルの期間に、入力する(ラッ
チは、クロック信号φ2Bのハイレベルからローレベル
への変化に同期して行われる)。バススレーブは、φS
がローレベルでφ2Sがハイレベルの期間に、入力する
(ラッチはクロック信号φ2Sのハイレベルからローレ
ベルへの変化に同期して行われる)。例えば、図20に
おいて、インタフェース信号I/F1はバスマスタから
バススレーブへのインタフェース信号とされる。インタ
フェース信号I/F1は、ステートS9のφ1Bのハイ
レベルへの変化に同期してバスマスタから出力され、ス
テートS9のφ2Sのハイレベルからローレベルへの変
化に同期してバススレーブにラッチされる。また、イン
タフェース信号I/F2はバススレーブから、バスマス
タへのインタフェース信号とされる。インタフェース信
号I/F2は、ステートS3のφ1Sのハイレベルへの
変化に同期してバススレーブから出力され、ステートS
4のφ2Bのハイレベルからローレベルへの変化に同期
してバスマスタにラッチされる。したがって、信号の出
力開始から取り込みまで、必ず、クロック信号φSの1
ステート以上の期間を確保できる。これにより、タイミ
ング設計は、中速モードを考慮しない場合、即ちφB=
φOSCとした場合と同様にすることができる。
【0107】図21及び図22には入出力制御のための
同期クロック信号を図19及び図20と逆にした場合が
示される。図21の例ではバスマスタの出力はクロック
信号φ2Bのハイレベルへの変化に同期され、バスマス
タへの入力はクロック信号1Bのハイレベルからローレ
ベルへの変化に同期してラッチされる。バススレーブへ
の入力はクロック信号φ1Sのハイレベルからローレベ
ルへの変化に同期してラッチされ、バススレーブの出力
はクロック信号φ2Sのハイレベルへの変化に同期され
る。図22を参照すると、バスマスタの出力はクロック
信号φBのローレベル及びφ2Bのハイレベル期間に、
バススレーブの出力はφSのローレベル及びφ2Sのハ
イレベル期間に同期して行われる。バスマスタの入力は
クロック信号φB及びφ1Bがハイレベルの期間に行わ
れる(ラッチはクロック信号φ1Bのハイレベルからロ
ーレベルへの変化に同期して行われる)、バススレーブ
の入力はφS及びφ1Sがハイレベルの期間に行われる
(ラッチはクロック信号φ1Sのハイレベルからローレ
ベルへの変化に同期して行われる)。例えば、図22に
おいて、インタフェース信号I/F1はバスマスタから
バススレーブへのインタフェース信号とされる。インタ
フェース信号I/F1は、ステートS4のφ2Bのハイ
レベルへの変化に同期してバスマスタから出力され、ス
テートS5のφ1Sのハイレベルからローレベルへの変
化に同期してバススレーブにラッチされる。また、イン
タフェース信号I/F2はバススレーブから、バスマス
タへのインタフェース信号とされる。インタフェース信
号I/F2は、ステートS7のφ2Sのハイレベルへの
変化に同期してバススレーブから出力され、ステートS
12のφ1Bのハイレベルからローレベルへの変化に同
期してバスマスタにラッチされる。したがって、信号の
出力開始から取り込みまで、必ず、クロック信号φSの
1ステート以上の期間を確保できる。これにより、タイ
ミング設計は、中速モードを考慮しない場合、即ちφB
=φOSCとした場合と同様にすることができる。
【0108】図20及び図22に示されるように、バス
マスタの動作クロック(φ1B,φ2B)は、バススレ
ーブの動作クロック(φ1S,φ2S)に比べ周波数が
低いため、バスマスタからバススレーブへのインタフェ
ース信号は、必ず、当該バスマスタの出力ステートと同
じステートでバススレーブが認識できる。そのため、バ
スマスタのステート単位で、インタフェース信号は任意
のパルス幅とすることができる。かかるインタフェース
信号には、リード信号・ライト信号などのバスアクセス
信号、或いは割込要因クリア信号などを割り当てること
ができる。
【0109】図20及び図22に示されるように、バス
スレーブの動作クロックはバスマスタの動作クロックに
比べ周波数が高いため、バススレーブからバスマスタへ
のインタフェース信号は、バススレーブの出力後、バス
マスタに認識されるタイミング(当該バススレーブのス
テート)を一定にすることはできない。したがって、こ
れらのインタフェース信号は、所謂ハンドシェーク信号
とするのが良い。かかるインタフェース信号には、割込
要求信号信号、或いはDTC起動要求信号などを割り当
てることができる。例えば、割込要求信号は、一旦、要
因フラグが”1”にセットされ、活性状態になると、こ
れを保持する。CPUが割込要求信号を認識して、割込
要因フラグを”0”にクリアすると、割込要求信号が非
活性状態になるようにされる。また、これらのインタフ
ェース信号は1ステートで認識されるようにはしない。
1ステート期間のみで使用する場合には、入力側でエッ
ジ検出を行うようにする。尚、そのときの出力期間を、
選択可能なシステムクロック信号φBの最長の周期即ち
クロック信号φOSC/8の周期以上の期間とすれば、
ハンドシェークは一切要しない。
【0110】バスマスタ間、或いはバススレーブ間の要
求信号は任意のタイミングとすることができる。
【0111】図23にはバスマスタクロックとバススレ
ーブクロックの別の動作タイミングが示される。図20
及び図22とは相違して、クロック信号φBは中速モー
ドでもデューティ50%とされる。クロック信号φBは
φSよりも常に周期が同等か長く、クロック信号φBの
立ち上がりエッジはφSの立ち上がりエッジに同期して
いる。各機能ブロック間のインタフェース信号の入出力
タイミングは図19と同様であり、詳しくは次の通りで
ある。すなわち、バスマスタ(バススレーブ)は、φB
とφ1Bのハイレベル期間(φSとφ1Sのハイレベル
期間)に同期して出力が許容される(出力信号変化が許
容される)。信号入力に関してバスマスタ(バススレー
ブ)は、φBがローレベルでφ2Bがハイレベルの期間
(φSがローレベルでφ2Sがハイレベルの期間)に入
力が許容される。バスマスタの入力ラッチタイミングは
クロック信号φ2Bのハイレベルからローレベルへの変
化に同期され、バススレーブの入力ラッチタイミングは
クロック信号φ2Sのハイレベルからローレベルへの変
化に同期される。例えば、図において、インタフェース
信号I/F1はバスマスタから、バススレーブへのイン
タフェース信号とされる。インタフェース信号I/F1
は、ステートS9のφ1Bに同期してバスマスタから出
力され、ステートS9のφ2Sのハイレベルからローレ
ベルへの変化に同期してバススレーブにラッチされる。
また、インタフェース信号I/F2はバススレーブか
ら、バスマスタへのインタフェース信号とされる。イン
タフェース信号I/F2は、ステートS3のφ1Sに同
期してバススレーブから出力され、ステートS4のφ2
Bのハイレベルからローレベルへの変化に同期してバス
マスタにラッチされる。従って、信号の出力開始から取
り込みまで、必ず、クロック信号φSの1ステート以上
の期間を確保できる。これにより、タイミング設計は、
中速モードを考慮しない場合、即ちφB=φOSCとし
た場合と同様にすることができる。
【0112】図23のタイミングにおいて着目すべき点
は、クロック信号φ2Bの立ち上がりがクロック信号φ
1Sの立ち上がりタイミングに一致され、この点におい
てクロック信号φ2Bとφ1Sとは部分的に位相が一致
されている。この位相が一致したタイミングにおいて、
バススレーブからバスマスタへの信号出力が行われるよ
うになっている。
【0113】このとき、図23のクロック信号を用いた
インタフェース制御タイミングを図21のように逆にし
た場合には、φBとφSとの位相によって、信号の出力
開始から取り込みまでの時間が確保できない場合があ
り、信号が正しく伝達できない場合がある。例えば、バ
ススレーブが図23のステートS6におけるφ2Sの立
ち上がりに同期して信号を出力したとき、バスマスタは
ステートS7におけるφ1Bの立ち下がりに同期して入
力データをラッチすることが許容され、信号出力からそ
の信号の入力ラッチまでの間にクロック信号φSの1/
2周期しか確保することができない。これは、信号が1
本だけの場合には問題にならなくても、信号が複数存在
するバスのような場合、複数の信号の内、旧い信号が伝
達されるものと、新しい信号が伝達されるものが混在す
ることが発生し、これらの組み合わせによって意味をな
す場合に無意味なデータとなってしまったり、誤動作の
原因となったりする場合がある。
【0114】図19のようなインタフェース仕様で図2
3のようなクロック信号波形を利用する場合には、図2
3に示されるように、バスマスタの動作クロックがバス
スレーブの動作クロックに比べて周波数が低いため、バ
スマスタから、バススレーブへのインタフェース信号
は、必ず、バスマスタの出力と同じステートでバススレ
ーブに認識される。そのため、ステート単位で、インタ
フェース信号は、任意のパルス幅とすることができる。
かかるインタフェース信号には、リード信号・ライト信
号などのバスアクセス信号、或いは割込要因クリア信号
などを割り当てることができる。
【0115】バススレーブの動作クロックがバスマスタ
の動作クロックに比べ周波数が高いため、図23におい
てバススレーブから、バスマスタへのインタフェース信
号は、バススレーブの出力後、バスマスタに認識される
タイミング(当該バススレーブのステート)を一定にす
ることはできない。したがってそれらのインタフェース
信号は、所謂ハンドシェーク信号とすることが良い。か
かるインタフェース信号には、割込要求信号信号、或い
はDTC起動要求信号などを割り当てることができる。
尚、そのときの出力期間を、選択可能なシステムクロッ
ク信号φBの最長の周期即ちクロック信号φOSC/8
の周期以上の期間とすれば、ハンドシェークは一切要し
ない。
【0116】ここで図20及び図22のクロック信号波
形について更に説明を加える。図20、図22より明ら
かなようにφ2Bのハイレベル期間はφ1Sのローレベ
ル期間に含まれる。従ってφ1Sの立ち上がりに同期す
るバススレーブの出力からφ2Bの立ち下がりに同期す
るバスマスタの入力信号ラッチ動作までには実質的にφ
Sの1ステート分の余裕時間を少なくとも確保すること
ができる。またφ2Sのハイレベル期間はφ1Bのロー
レベル期間に含まれる。従ってφ1Bの立ち上がりに同
期するバスマスタの出力からφ2Sの立ち下がりに同期
するバススレーブの入力信号ラッチ動作までには実質的
にφSの1ステート分の余裕時間を少なくとも確保する
ことができる。これらのことは、図19,図21の双方
のインタフェース仕様に対して成立する。これに対し、
図23のようにクロック信号φ2Bのハイレベルへの立
ち上がり変化とφ1Sのハイレベルへの立ち上がり変化
との位相が一致している関係のクロック信号φ1S,φ
2S,φ1B,φ2Bなどを用いる場合には、当該位相
一致のタイミングをバススレーブからバスマスタへの信
号出力タイミングとして利用するバスインタフェース仕
様(例えば図19のインタフェース仕様)においての
み、信号の出力から当該信号の入力ラッチまでにφSの
1ステート分の余裕時間を確保することができる。
【0117】《実際のバスインタフェースタイミング
例》 図24及び図25には実際のバスインタフェース
タイミングの一例が示される。各図のタイミングは、図
20及び図22に示されるクロック信号を利用した場合
のもので、上述のようにそのインタフェース仕様は図1
9、図21の何れも全く同様に利用できるため、信号の
種類に応じて最適な何れか一方のインタフェース仕様が
採用されている例である。各図において、バスマスタか
らは、アドレス(PAB経由)、機能ブロック信号(M
S#)、リード信号RD#、ライト信号WR#が与えら
れる。図24においてステートS5から、バスマスタの
リード動作が行われる。すなわち、ステートS5からス
テートS16まで、アドレスバス及び機能ブロック選択
信号(MS#)が有効になる。バスマスタの第1ステー
ト(ステートS5からS8)のφ2Bに同期して、リー
ド信号RD#が活性状態(ローレベル)になる。バスス
レーブはこのリード信号RD#の活性状態への遷移を検
出して、レジスタリード信号及びバスインタフェースラ
ッチ信号を当該バススレーブ内部で活性状態にする。例
えば図6において、レジスタ771またはタイマカウン
タ772などが、レジスタリード信号により指定され、
指定されたレジスタ,カウンタからモジュールデータバ
スを介して、バスインタフェース760に、データが転
送され、ラッチされる。レジスタリード信号などのバス
スレーブ内の制御信号は例えば図6のリードライト制御
回路730の出力制御信号に含まれる。そしてステート
S9における次のφ2Sに同期して、前記ラッチされた
データがデータバスに出力される。リード信号RD#が
非活性状態とされた後、ステートS16の次のステート
におけるφ1Sの変化に同期して、データバスがハイイ
ンピーダンス状態にされる。リード信号RD#はバスマ
スタの第3ステート(ステートS13からS16)のφ
2Bの立ち上がりに同期して非活性状態にされる。バス
マスタはこのクロック信号φ2Bの立ち下がりに同期し
てデータバスの内容をラッチする。
【0118】図25においてはステートS5から、バス
マスタのライト動作が行われる。ステートS5からステ
ートS16まで、アドレスバス及び機能ブロック選択信
号(MS#)が有効になる。バスマスタの第1ステート
(ステートS5からS8)におけるφ2Bの立ち上がり
に同期して、ライトデータがデータバスに出力される。
バスマスタの第2ステート(ステートS9からS12)
のφ1Bの立ち上がりに同期して、ライト信号WR#が
活性状態(ローレベル)になる。バススレーブはこのラ
イト信号WR#の活性状態への遷移を検出して、バスイ
ンタフェースラッチ信号及びレジスタライト信号を活性
状態にする。ライトデータがバスインタフェースにラッ
チされ、バスインタフェースから、モジュールデータバ
スを介して、指定されたレジスタまたはタイマカウンタ
などに、データが転送され、ライトされる。かかる信号
は例えば図6のリードライト制御回路730の出力する
制御信号に含まれる。バスマスタの第3ステート(ステ
ートS13からS16)におけるφ2Bの立ち上がりに
同期して、ライト信号が非活性状態になる。
【0119】《クロック信号φの外部出力》 図26に
示されるようにシングルチップマイクロコンピュータ
は、外部にシステムクロック信号φS,φBを出力する
ことができる。すなわち、システムクロック信号φS
を、他の半導体集積回路装置などの基準クロックにする
場合と、システムクロック信号φBをもとにして外部バ
スに同期した制御信号を生成する場合とがある。本発明
においては、他の半導体集積回路装置などの基準クロッ
クにするためにシステムクロック信号φSを、また、外
部バスに同期した制御信号を生成するためにシステムク
ロック信号φBを出力可能にする。そのための出力端子
TφS,TφBは所定の入出力ポートIOPにそれぞれ
独立に設けられる。例えば、クロック信号φSの出力は
入出力ポートIOP60に、クロック信号φBの出力は
入出力ポートIOP61に割り当てられている。入出力
ポートIOP60,IOP61はその他の入出力機能に
兼用され、図1に示される入出力ポートIOP6に含ま
れる。
【0120】このとき、クロック信号φS及びφBはク
ロック制御回路13で生成され、外部には上述の入出力
ポートIOP60,IOP61を介して出力される。ク
ロック信号φS及びφBは、半導体集積回路内では実質
的に最高速の部類の信号である。また、クロック制御回
路13と入出力ポートIOP60,IOP61との間の
配線1310,1311は機能ブロック間に延在され、
比較的大きな容量成分を持つ。したがってそのようなク
ロック信号の外部出力に際してはその比較的大きな容量
成分と高いクロック周波数により消費電流も大きくな
る。
【0121】これらφS又はφBの外部出力は、必要な
動作であるので、電流を消費するのは止むを得ない。し
かしながら、シングルチップマイクロコンピュータなど
では、外部にクロックを出力する必要がない場合も多
い。クロック出力を停止することは、例えば、特願昭6
0−184207号に記載されているように、低消費電
力化のほか、カップリングノイズの低減、不要輻射の低
減に効果がある。これに対応するため、本実施例では、
クロック信号φSまたはφBを外部に出力しない場合に
は、クロック制御回路13と入出力ポートIOP60,
IOP61と間の信号を例えば論理値”0”のレベルに
固定し、クロック配線1310,1311上で信号変化
が発生しないようにして、消費電流を低減するようにな
っている。例えば図26に概略的に示されるように、ク
ロック制御回路13にて生成されたクロック信号φSの
外部出力用に論理積回路1300とクロックドライバ1
302の直列回路が設けられ、クロックドライバ130
2の出力がクロック配線を介して入出力ポートIOP6
0に接続される。同様にクロック制御回路13にて生成
されたクロック信号φBの外部出力用に論理積回路13
01とクロックドライバ1303の直列回路が設けら
れ、クロックドライバ1303の出力がクロック配線を
介して入出力ポートIOP61に接続される。入出力ポ
ートIOP60,IOP61に対する出力の許可は対応
する入出力ポートIOP6の図示しないデータディレク
ションレジスタの対応するビットDDR60,DDR6
1を用いることができる。ビットDDR60,DDR6
1を論理値”1”にセットすればIOP60,IOP6
1は出力許可状態とされる。これはφSとφBに対して
独立に制御可能である。このとき、上記論理積回路13
00の他方の入力には出力許可ビットDDR60の反転
信号が供給され、論理積回路1301の他方の入力には
出力許可ビットDDR61の反転信号が供給される。し
たがって、IOP60,IOP61にクロック信号φ
S,φBの出力が許可されていない状態においては論理
積回路1300,1301の出力がローレベルに固定さ
れる。これによって、外部にクロック信号φS,φBを
出力しないときにはクロックドライバ1302,130
3以降のクロック配線での消費電力を低減でき、その
上、カップリングノイズや不要輻射(不所望な電波の発
生)を低減することができる。
【0122】図27にはクロック信号φS又はφBの何
れか一方を選択的に外部出力可能にした場合の変形例が
示される。このときクロック制御レジスタ132には図
28の(A)及び(B)に示されるPHISビットが備
えられる。図28の(B)に示されるように、PHIS
ビットが論理値”1”のときはクロック信号φSを、論
理値”0”のときはクロック信号φBを外部に出力する
ことを指示するものとされる。出力すべきクロック信号
の選択は論理積回路1304,1305と論理和回路1
306から成るセレクタによって行われる。このセレク
タで選択されたクロック信号の外部出力の許可は上記入
出力ポートIOP60に対する出力許可ビットDDR6
0にて行われ、当該出力許可ビットは図26の場合と同
様に反転されて論理積回路1307に供給され、出力許
可ビットDDR60によってクロック信号が出力許可さ
れる場合にだけセレクタの出力クロック信号が論理積回
路1307及びクロックドライバ1308からクロック
配線を介して入出ポートIOP61に与えられるように
なっている。クロック信号の外部端子Tφへの出力が禁
止されているときは、上記同様論理積回路1307の出
力が論理値”0”に固定され、その結果クロックドライ
バ1308以降のクロック配線での消費電力の低減など
を実現することができる。
【0123】《内部バスの多分割》 図29にはシング
ルチップマイクロコンピュータの内部バスのその他の分
割例が示されている。図29は特にシングルチップマイ
クロコンピュータの内部バスに着目したブロック図であ
る。バッファBUFは入出力ポートIOP1〜IOP5
に含まれ、外部アドレスバス及び外部データバスとイン
タフェースされるバッファ回路である。
【0124】図1に示される内部アドレスバスPAB及
び内部データバスPDBは、図29においてそれぞれ、
内部アドレスバスPAB1及び内部データバスPDB1
と、内部アドレスバスPAB2及び内部データバスPD
B2に分割されており、内部バスPAB1及びPDB1
には入出力ポートIOP1〜IOP6、WDT8、スタ
ティックラッチ回路HD1が結合され、内部バスPAB
2及びPDB2にはIOP7〜11、タイマ7、SCI
9、A/D変換器10、及びスタティックラッチ回路H
D2が接続される。
【0125】内部バスPAB1とPAB2、そして内部
バスPDB1とPDB2は、夫々配線長即ち配線容量が
同等になるようにされ、且つ、それら全体の配線容量が
図1の場合における内部バスPABとPDBの配線容量
よりも大きくならないように、回路ブロックの実際のレ
イアウトに即して、分割された内部バスと回路モジュー
ルとの割り当てが決定されている。論理的には、入出力
ポートIOP、タイマ7、WDT8、SCI9、A/D
変換器10は、分割された何れのバスに接続すべきかの
制約はない。
【0126】前記バスコントローラ3に含まれるモジュ
ールセレクトの判定によって、PAB1とPDB1、P
AB2とPDB2の何れかが活性状態になるようにされ
る。また、ROM5又はRAM6がアクセスされる場合
には、PAB1とPDB1、PAB2とPDB2の何れ
もが、非活性状態にされる。非活性状態の場合、内部ア
ドレスバスPAB1とPAB2は直前の値を保持するよ
うにされる。また、バスコントローラ3及びWDT8な
どの機能ブロックの出力がハイインピーダンスとされた
とき、内部データバスPDB1とPDB2の前の値は、
スタティックラッチ回路HD1及びHD2によって保持
される。スタティックラッチ回路HD1及びHD2は、
例えば各信号線毎に逆並列接続された2個のインバータ
回路が設けられて構成され、PDB1,PDB2の状態
を保持するようにされ、他の機能ブロックがデータを出
力した場合には、斯る出力データによるバスの駆動を優
先されることができるような比較的小さな駆動能力を有
するようにされる。即ち、スタティックラッチ回路HD
1,HD2を構成するインバータ回路の出力電流は、P
DB1,PDB2の漏洩電流より大きく、機能ブロック
の出力電流より、十分に小さくされている。尚、図1の
内部バスPDBやPABの分割数は3以上とすること可
能である。内部アドレスバスPABの本数が少なけれ
ば、内部アドレスバスPABは共通にして、内部データ
バスPDBのみ分割するようにしてもよい。
【0127】《低消費電力情報のベクタ化》 割り込み
要求などに対する処理の高速化のためにクロック信号φ
Bの周波数を強制的に高くする手段として、図9及び図
10の(A)などで説明したクロック制御レジスタ13
2のMSMEビットを利用するほかに、割り込み処理
(リセットのような例外処理も含む)の開始時に、ベク
タとして低消費電力情報を取り込むようにしてもよい。
CPU1のアドレス空間の一部には、各々割込みに対応
した複数のベクタが予め書き込まれている。割込みの要
求が発生すると、CPU1は、その割込みに対応したベ
クタを取り込み、取り込んだベクタに保持されている割
込みに関する情報に従った処理を行う。すなわち、割込
みの要求が発生すると、CPU1は、その割込みに対応
したベクタを指すアドレスを出力し、そのアドレスによ
って示されているベクタ領域から上記割込みに関する情
報を取り込む。本実施例においては、この情報として、
当該割込みによって実行されるべきプログラム(ハンド
ラプログラム)のスタートアドレスと低消費電力情報と
がある。割込みの要求に応答して、上記スタートアドレ
スは、ハンドラプログラムの実行のために、CPU1内
のプログラムカウンタ(図示せず)にセットされ、上記
低消費電力情報は、後で述べるように、モジュールスト
ップ制御レジスタ133及びクロック制御レジスタ13
2にセットされる。また、割込み要求に対する処理が終
了した後、元のプログラムに復帰するために、後で述べ
るように、ステータスレジスタの内容と、復帰するアド
レスとが、割込み要求に応答する際、CPU1内のスタ
ックポインタ(図示せず)で指定されるCPU1のアド
レス空間内のアドレス領域(スタック領域)へ書き込ま
れる。後の説明から理解されるように、本実施例におい
ては、上記ステータスレジスタの内容、復帰アドレスの
他に、上記モジュールストップ制御レジスタ133及び
クロック制御レジスタ132の内容も、上記スタックポ
インタで指定されるスタック領域へ書き込まれる(スタ
ックされる)。例えば割り込みベクタは割り込みによっ
て実行すべきハンドラのスタートアドレスと共に低消費
電力情報として中速モードの設定やモジュールストップ
の設定を行うための制御情報を保有する。この場合、ク
ロック制御レジスタ132の初期値はリセットベクタの
低消費電力情報によって決定することができ、これを中
速モードにするようにしておくとよい。そのようにすれ
ば、リセット後の低消費電力状態を、直ちに設定できる
ので、ソフトウェアの負担を軽減し、また、中速モード
からのスタートが可能になるなど、消費電流を低減する
ことができる。
【0128】図30の(A)〜(C)には低消費電力状
態を指定するベクタ配列とその場合のスタックの例が示
される。この例に従えば低消費電力情報は、図30の
(B)に示されるように8ビットとされる。すなわち、
低消費電力情報は、モジュールストップ制御レジスタ1
33のビット7〜2(MSTP7〜MSTP2)に対応
する6ビット(低消費電力情報のビット7〜2)と、ク
ロック制御レジスタ132のビット0及びビット1(C
KS0,CKS1)に対応する2ビット(低消費電力情
報のビット1、0)とを含む。図30の(A)に示され
るベクタにおいて、スタートアドレスはアドレス空間が
16MBであるならば24ビットとされる。図30の
(C)に示されるように、スタック領域には、復帰アド
レスと復帰先において利用される低消費電力情報の他
に、CPU1の内部状態を保持するステータスレジスタ
に対する16ビット分の記憶領域が含まれる。上記ステ
ータスレジスタには、演算の結果を示すコンディション
コードや、割り込みマスクビットなどが含まれる。尚、
以下の説明において、モジュールストップ制御レジスタ
133のビット7〜2(MSTP7〜MSTP2)と、
クロック制御レジスタ132のビット0及びビット1
(CKS0,CKS1)とを併せて低消費電力状態制御
レジスタと称する。
【0129】図31には、例外処理時及びリターン時の
動作タイミングが示されている。特に制限はされないも
のの、ROM5及びRAM6は1ステートでリード/ラ
イト可能とされる。命令及びベクタはROM5に、スタ
ック領域はRAM6に配置されるものとする。例外処理
時には、その時点のプログラムカウンタ(PC)の値及
び低消費電力状態制御レジスタ(クロック制御レジスタ
132のCK0,CK1とモジュールストップ制御レジ
スタ133のMSTP2〜MSTP7)の情報、及び図
示しない上記ステータスレジスタの内容がスタック領域
に待避される(ステートS1〜S5)。すなわち、上記
低消費電力状態制御レジスタの内容を読み出すために専
用のリード信号RD−LPCR#が活性状態にされる
(ステートS2〜S4)と共に、ライト信号WR#も活
性状態にされ、上記制御レジスタの内容がスタック領域
に書き込まれる。スタックの動作に続いて、ROM5か
らベクタとして、低消費電力状態制御レジスタ及びPC
の内容がリードされる(S6〜S9)。ROM5からリ
ードされた低消費電力状態制御レジスタはCPUに取り
込まれず、低消費電力状態制御レジスタに書き込まれる
(S6〜S8)。このための専用のライト信号WR−L
PCR#が活性状態にされる。これによってステートS
7から、低消費電力制御レジスタの内容が変更され、中
速モードの設定や、モジュールストップの設定が変更に
なる。ベクタとしてのスタートアドレスはCPU内部の
図示しないプログラムカウンタに取り込まれ、斯るスタ
ートアドレスからCPU1は命令の実行を開始する(S
11〜S13)。
【0130】リターン時には、RAM6内のスタック領
域から、ステータスレジスタ、低消費電力状態制御レジ
スタ、PCの内容がリードされる(S14〜S18)。
スタック領域からリードされた低消費電力状態制御レジ
スタの内容は、CPU1に取り込まれず、低消費電力状
態制御レジスタに書き込まれる。復帰アドレスは、CP
U1の内部に取り込まれ、かかるアドレスからCPU1
は命令の実行を開始する。ステータスレジスタはCPU
1の内部に格納される。S16から、低消費電力制御レ
ジスタの内容が復帰される。中速モードの設定や、モジ
ュールストップの設定が復帰され、S6以前の状態と同
様になる。S6以前、S16以後を中速モード、S7〜
S15を高速モードに設定しておけば、図17と同様の
動作を、ソフトウェアの負荷なく、実現できる。割込毎
に、低消費電力状態を設定できるので、高速処理が必要
でない割込要求に対しては、適当な動作速度にして、消
費電力を無駄にすることがない。また、モジュールスト
ップによって、機能ブロックの内部状態を保持しつつ、
停止できるので、例えば、DTC2をモジュールストッ
プとすれば、DTC2がバスを使用することによってC
PU1の動作を中断したりすることを防ぐことができ、
高速な割込処理ルーチンの実行が必要な場合などに有効
である。
【0131】図32には低消費電力制御レジスタの1ビ
ットの構成が代表的に示される。上述のようにクロック
制御レジスタ132のビット1,0及びモジュールスト
ップ制御レジスタ133のビット7〜2が低消費電力制
御レジスタを構成する。図32の構成は図16に対し
て、2個の論理和回路1325,1326が追加され、
クロック入力端子Cには、論理和回路1325を介し
て、前記専用ライト信号WR−LPCRが与えられ、ア
ドレスに拘わらずデータバスの内容が入力される。ま
た、クロックドバッファ1322のリード信号にも、論
理和回路1326を介して、前記専用リード信号RD−
LPCRが与えられ、アドレスに関わらずレジスタの内
容がデータバスに出力する。これらの、専用ライト信号
WR−LPCR及び専用リード信号RD−LPCRは、
例えばCPU1によって形成され、クロック制御レジス
タ132のビット1,0、及びモジュールストップ制御
レジスタ133のビット7〜2に共通の信号とされる。
尚、図32においてRD,WR,RD−LPCR,WR
−LPCRの各信号は、理解を容易化するために正論理
の信号として図示されている。
【0132】《サブクロック発振器の例》 図33には
クロック発振器及びクロック制御回路の別の例が示され
る。この例は図9に対して、第2の発振器12A、分周
器130A、セレクタ131A、及びノーオーバラップ
生成回路138が追加されている。第2の発振器12A
のEXTALL、XTALLには、例えば、32.76
8kHzのような水晶発振子を接続する。2組の発振器
を持つシングルチップマイクロコンピュータとして、例
えば、前記平成4年9月(株)日立製作所発行『H8/
3834 HD6473834 HD6433834
ハードウェアマニュアル』に記載のものがある。第2の
分周器130Aは前記同様に8分周を行い、分周された
クロック信号φOSC/2,φOSC/4,φOSC/
8はクロック制御レジスタ132からの制御ビットにて
セレクタ131Aが選択する。これによって選択された
クロック信号に基づいてノーオーバラップ生成回路13
8はノーオーバラップの2相のクロッククロック信号φ
1L、φ2Lを生成し、所要の機能ブロック、例えば、
CPU1及びタイマ7に供給する。かかるノーオーバラ
ップ生成回路138は、低い動作周波数かつ低電圧動作
に適合するように、前記各機能ブロックに内蔵されるも
のと相違される。低周波数のため、2相クロック信号φ
L1,φL2をCPU1,タイマ7などに供給しても、
消費電力のための不利益は生じない。
【0133】特に制限されないが、ノーオーバラップの
2相のクロッククロック信号φ1L、φ2Lはシングル
チップマイクロコンピュータを時計処理に利用する場合
に用いるものとされる。クロック制御レジスタ132は
ウオッチモードビットWMを有し、これが論理値”1”
にされることによってシングルチップマイクロコンピュ
ータは時計処理に必要な最低の動作周波数で動作され
る。時計処理は例えばシングルチップマイクロコンピュ
ータの制御対象に時計が含まれているような場合に1秒
毎のような一定時間毎に時計表示を更新するような処理
であり、ノーオーバラップ2相のクロッククロック信号
φ1L、φ2Lによって計時動作されるタイマによる一
定時間毎のタイマ割り込みによってCPU1に時計処理
を実行させる。
【0134】図34には図33のクロック制御回路13
からのその他の機能ブロックへの上記クロック信号φ1
L、φ2Lの供給態様を専ら示すシングルチップマイク
ロコンピュータの概略ブロック図が示される。このブロ
ック図は例えば上記時計処理を考慮するものである。図
34のシングルチップマイクロコンピュータにおいて
は、図33のクロック制御回路13の他、CPU1、バ
スコントローラ3、割り込みコントローラ4、入出力ポ
ートIOP1〜IOP11、及びタイマ7が代表的に示
される。各回路ブロックに示されるNOVは、入力クロ
ック信号からノーオーバラップの2相のクロック信号を
形成するノーオーバラップ生成回路である。図1で説明
した内部バスIAB,IDBに結合されるCPU1、バ
スコントローラ3及び割り込みコントローラ4のノーオ
ーバラップ生成回路NOVには上記クロック信号φBが
供給され、図1で説明した内部バスPAB,PDBに結
合されるタイマ7及びIOP1〜IOP11のノーオー
バラップ生成回路NOVには上記クロック信号φSが供
給される。更に、各機能ブロック1,3,4,7,IO
P1〜IOP11には上記ノーオーバラップの2相のク
ロック信号φL1,φL2が供給され、夫々の機能ブロ
ックにおいてノーオーバラップ生成回路NOVから出力
される2相クロック信号又は2相クロック信号φL1,
φL2の何れを内部同期クロック信号として利用するか
を選択するためのセレクタSELが設けられている。タ
イマ7は、CPU1などによって設定される内部制御レ
ジスタの制御ビットなどに従ってセレクタの選択が行わ
れる。タイマ7が複数のチャネルから構成されるような
場合、チャネル毎にかかる制御レジスタとセレクタSE
Lを有するようにすればよい。CPU1、バスコントロ
ーラ3、割り込みコントローラ4、及び入出力ポートI
OP1〜IOP11のセレクタSELは、クロック制御
回路13から出力されるウオッチモードビットWMにて
選択状態が決定される。
【0135】ウオッチモードビットが論理値”1”にさ
れると、タイマ7において所定のチャネル以外はモジュ
ールストップ状態とされる。タイマ7における当該所定
のチャネルは制御ビットにてセレクタSELでクロック
信号φL1,φL2を選択し、クロック信号φL1,φ
L2を利用して例えば時計処理を間欠的に行うための計
時動作を行って一定時間毎にタイマ割り込み信号を出力
する。CPU1、バスコントローラ3、割込コントロー
ラ4及びIOP1〜IOP11においては論理値”1”
のウオッチモードビットWMにてセレクタでクロック信
号φL1,φL2が選択され、これによってそれら機能
ブロックは時計用の低周波数のクロック信号φL1,φ
L2に同期動作される。タイマ7は一定時間毎に時計用
処理のための割り込み信号を発生し、CPU1はそれに
応答して間欠的に時計処理を行う。ウオッチモードビッ
トWMが活性状態にされているとき、第1の発振器12
は発振動作が停止される。ウオッチモードはCPU1が
ウオッチモードビットWMを論理値”0”にすることに
よって解除される。
【0136】上記実施例によれば以下の効果を得るもの
である。〔1〕システムクロック信号をφSとφBと
し、クロック信号配線の総配線容量をさほど大きくせず
に、システムクロック信号φBの分周比を可変にして、
機能ブロックの絶対的な基準クロックを確保しつつ、シ
ステムクロック信号φBを可変にしてバスマスタの消費
電力を低減し、ひいては半導体集積回路全体の消費電力
を低減することができる。消費電力を低減することによ
り、不要輻射(不所望な電波の発生)を低減することが
できる。
【0137】〔2〕SCIやタイマなどの周辺回路には
周波数一定のシステムクロック信号φSが供給されるの
で、CPU等へのシステムクロック信号φBの周波数が
変更されても、SCIのビットレート若しくはボーレー
ト、そしてタイマの計時周期などを一定に保つことがで
き、CPUなどの動作周波数を変更してもそれら周辺機
能ブロックの設定変更を要しない。
【0138】〔3〕上記クロック制御回路13には、シ
ステムクロック信号クφBの分周比を選択するための情
報が上記バスマスタによって設定可能にされたレジスタ
手段132を備えるから、CPUなどのバスマスタによ
って分周比の選択を任意に行うことができる。
【0139】〔4〕データバスは、システムクロック信
号φBが供給されCPUなどの機能ブロックが接続され
る内部データバスIDBと、システムクロック信号φS
が供給されバススレーブとして動作される機能ブロック
が接続される内部データバスPDBとに分離される。C
PU等のバスマスタのように頻繁にバスサイクルを起動
する機能ブロックを、バススレーブとは別のデータバス
に接続することにより、頻繁にアクセスされるデータバ
スの負荷が小さくされ、低消費電力に寄与する。また、
高速化にも寄与することができる。アクセスに利用され
る頻度が相対的に低いデータバスの前の値をホールド回
路HD1,HD2によって保持することにより、当該デ
ータバス上での充放電回数を減らして低消費電力に寄与
することができる。
【0140】〔5〕1相クロック信号としてのシステム
クロック信号φS,φBを機能ブロックに供給し、各機
能ブロック内部で、2相クロック信号を生成することに
より、クロック信号配線の総配線容量を低減して、消費
電力を低減することができる。
【0141】〔6〕プリスケーラクロック信号を用いる
場合、低分周比のプリスケーラクロック信号は各機能ブ
ロック毎に内部で生成し、分周比の大きなプリスケーラ
クロック信号は共通に生成することによって、論理規模
をさほど増大させず、信号変化周波数の大きな信号を機
能ブロック間信号としないことによって、消費電力を低
減することができる。
【0142】〔7〕バススレーブからバスマスタへの機
能ブロック間信号を例えば図20及び図23で説明した
ようにφ1Sに同期して行うことにより、インタフェー
スを容易にすることができる。
【0143】〔8〕機能ブロックの内部状態を保持可能
にすることにし、かつ、常時クロックを供給する部分を
限定することによって、動作中であっても、信号変化を
局限し、消費電力を低減できる。また、クロックを停止
しても、内部状態を保持することによって、ソフトウェ
アによる再設定の負担を省くことができる。
【0144】
〔9〕データバスをはじめとする、内部バ
スを分割して、容量を分割し、非活性状態のバスに対し
ては信号変化を抑止することによって、1回の動作で変
化する信号が充放電すべき容量を低減して、消費電力を
低減できる。
【0145】〔10〕割込や、外部端子の信号変化の情
報を検出する、割込コントローラのようなイベント検出
回路を設け、イベントが発生したときに、自動的にφB
の分周比を変更したり、モジュールストップの状態を変
更したりすることにより、イベントが発生してから、所
望の処理を行うまでの時間を短縮でき、これによって、
処理性能を向上できる。変更にあたって、変更前の情報
を、例えばスタック領域などに待避し、新しい情報を例
えば、ベクタとともにロードすることによって、任意の
設定を行うことができるようになる。
【0146】〔11〕クロック信号φSとφBに相当す
るクロック信号を外部に出力可能とし、かつ、ソフトウ
ェアでその出力を禁止可能とすることによって、クロッ
ク信号φSを外部半導体集積回路の基準クロックとした
り、クロック信号φBをバス制御回路の制御信号とした
り、することができる。また、必要なければ出力を禁止
して、消費電力の低減、カップリングノイズの低減、不
要輻射の低減を図ることができる。
【0147】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
【0148】例えば、クロック信号を非対称にする場合
は、上記実施例に限定されない。動作が不必要な任意の
場合に一方がハイレベル、他方をロウレベルとして停止
することができる。例えばCPUがウェイト状態とされ
るような場合に適用することができる。全てのタイミン
グ回路をスタティック型にすれば、クロック信号を非対
称にすることはなく、中速モードの場合のφBも、デュ
ーティ比50%のクロック信号とすることもできる。
【0149】クロック制御レジスタは、CPUからリー
ド/ライト可能なほか、外部端子の設定によって変更可
能としてもよい。例えば、所定の端子の入力によって、
クロック制御レジスタの初期設定値を変更可能としても
よい。所定の端子がロウレベルの状態でリセットすると
高速クロックで動作し、その後CPUの設定で低速動作
可能とする、また、所定の端子がハイレベルの状態でリ
セットすると低速クロックで動作し、その後CPUの設
定で高速動作可能とする、ようにすることができる。
【0150】バスタイミングの詳細については、種々変
更可能である。IAB・IDBとPAB・PDBのタイ
ミングを同一としたが、これがずれていてもよい。イベ
ントには、例えば、外部バス解放などを含めることがで
きる。外部にバスを解放した場合、自動的にバスマスタ
が中速モードになったり、或いはDTCをモジュールス
トップ状態にすることもできる。ベクタとして与えられ
る低消費電力情報も8ビットに限定されない。任意のビ
ット数とすることができる。専用のリード信号、専用の
ライト信号を複数組持ってもよい。
【0151】低消費電力制御レジスタの構成についても
種々変更可能である。ダイナミック回路、スタティック
回路の具体的な回路構成も種々変更が可能である。例え
ば、スタティック回路はフリップフロップで構成するこ
とができる。また、クロックは2相のノーオーバラップ
に限定されない。3相以上、或いはオーバーラップクロ
ックとすることができる。一部の相のクロックを長く、
その他の相のクロックを短くすればよい。
【0152】データ転送装置として、DTCを内蔵した
場合について説明したが、これは、DMAコントローラ
(DMAC)であってもよい。実施例中のDTCは、D
MACと読み変えてもよい。これらがCPUと独立した
機能ブロックである必要はなく、CPUの一部として実
現されてもよい。この場合、マイクロDMA、或いはマ
クロサービス、或いはインテリジェントI/Oサービス
などの呼称が用いられる場合がある。シングルチップマ
イクロコンピュータのその他の機能ブロックについても
何等制約されない。機能ブロックの数や、モジュールス
トップの指定方法なども任意にすることができる。
【0153】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるシング
ルチップマイクロコンピュータに適用した場合について
説明したが、それに限定されるものではなく、その他の
半導体集積回路にも適用可能であり、本発明は少なくと
も、クロックに同期して動作するシステムを構成する半
導体集積回路に適用することができる。
【0154】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0155】〔1〕周波数一定の第2のシステムクロッ
ク信号(φS)を複数個の機能ブロックに共通に供給
し、分周比が選択可能にされ周波数が上記第2のシステ
ムクロック信号以下とされた第1のシステムクロック信
号(φB)を所定の機能ブロックに供給することによ
り、第1のシステムクロック信号(φB)が供給される
機能ブロックの状態に応じてその動作周波数を変えて低
消費電力を図ることができる。このとき、当該第1のシ
ステムクロック信号の周波数を変更しても第2のシステ
ムクロック信号(φS)を受けて動作される複数個の機
能ブロックの動作速度は変化されないので、そのような
第1のシステムクロック信号の周波数変更による電力消
費の制御に際して第2のシステムクロック信号(φS)
を受けて動作される複数個の機能ブロックに対しては動
作条件を再設定したりするための処理を一切要しない。
【0156】〔2〕上記第1のクロック信号配線を介し
て第1のシステムクロック信号が供給される機能ブロッ
クをバスマスタとすることにより、当該バスマスタには
分周比可変のシステムクロック信号が供給されることに
なる。マイクロコンピュータ等のデータプロセッサにお
いてバスマスタとしてのCPUは一般的に命令及びデー
タフェッチのためのバスサイクルを頻繁に起動するか
ら、低消費電力化に効果的である。
【0157】〔3〕上記第2のクロック信号配線を介し
て第2のシステムクロック信号が供給される機能ブロッ
クをバススレーブとすることにより、バスマスタのシス
テムクロック信号の周波数を変更しても、シリアルコミ
ュニケーションインタフェースのビットレート若しくは
ボーレート、そしてタイマの計時周期などを一定に保つ
ようにでき、それら周辺機能ブロックの設定変更を要し
ないようにすることができる。
【0158】〔4〕第1のクロック信号(φB)の分周
比を選択するための情報が上記バスマスタによって設定
可能にされたレジスタ手段(132)を採用することに
より、CPUなどのバスマスタによって分周比の選択を
任意に行うことができる。
【0159】〔5〕CPU等のバスマスタのように頻繁
にバスサイクルを起動する機能ブロックを、バススレー
ブとは別のデータバスに接続することにより、頻繁にア
クセスされるデータバスの負荷が小さくされるから、こ
の点においても低消費電力を達成する。アクセスに利用
される頻度が相対的に低いデータバスの前の値をホール
ド回路によって保持(前値保持)することによっても、
当該データバス上での充放電回数を減らして低消費電力
に寄与する。
【0160】〔6〕第1及び第2の夫々のシステムクロ
ック信号に基づいて生成されたノーオーバラップの2相
クロック信号を部分的に位相が一致するようにし、当該
位相が一致するタイミングに同期して、第2のシステム
クロック信号に同期動作される機能ブロックから、第1
のシステムクロック信号に同期動作される機能ブロック
(相対的に動作速度が遅くされ得る機能ブロック)へ供
給すべき信号を変化させることにより、システムクロッ
ク信号周波数の相違される機能ブロック間でのインタフ
ェースを容易化、換言すればインタフェースのためのタ
イミング設計を容易化することができる。
【0161】〔7〕第1及び第2の夫々のシステムクロ
ック信号に基づいて生成された夫々のノーオーバラップ
の2相クロック信号の第1相目クロック信号同士はロー
レベル期間が一致される位相を有し、第2相目クロック
信号同士はハイレベル期間が一致される位相を有するこ
とにより、各機能ブロックの出力と入力とは第1相目又
は第2相目の何れのクロック信号に同期させても、シス
テムクロック信号が相違される機能ブロック間で、デー
タ出力からそれを入力してラッチするまでは第2のシス
テムクロック信号(φS)の1周期以上の期間を確保で
き、これによってシステムクロック信号周波数の相違さ
れる機能ブロック間でのインタフェースを容易化、換言
すればインタフェースのためのタイミング設計を容易化
することができる。
【0162】〔8〕第1のシステムクロック信号(φ
B)と第2のシステムクロック信号(φS)とを選択的
に外部に出力する出力回路からの出力が非選択状態にさ
れるとき、当該出力回路のクロック入力配線を所定レベ
ルに強制することにより、システムクロック信号の外部
出力を要しない場合には上記クロック入力配線における
充放電を抑止して、低消費電力に寄与することができ
る。
【0163】
〔9〕機能ブロック毎に個別的に内部クロ
ック信号等の生成を抑止することにより、利用しない内
蔵機能ブロック内では内部クロック信号の変化が停止さ
れ、クロック信号の無駄な変化による充放電電流による
電力消費を抑えることができる。このとき、内部クロッ
ク信号停止状態において内部状態を保持させることによ
り、動作再開が選択されたときに内部回路を改めて設定
する手間を省くことができる。
【0164】〔10〕自分自身の動作が非選択とされる
ことによって内部タイミング信号の発生を抑止すること
によって低消費電力を実現できる。内部タイミング信号
の変化が停止されたときに内部状態を保持させることに
より、動作再開のときに内部回路を改めて設定し直す手
間を省くことができる。
【0165】〔11〕ノーオーバラップの2相の内部タ
イミング信号を受けて動作される回路を、その第1相目
のタイミング信号を受けてダイナミックに動作されるダ
イナミック回路と、該ダイナミック回路に直列的に接続
され第2相目のタイミング信号を受けてスタティックに
動作されるスタティック回路とを含んで構成することに
より、ノーオーバラップの2相のタイミング信号うちデ
ューティの大きな相のタイミング信号をダイナミック回
路に、デューティの小さい相のタイミング信号をスタテ
ィック回路に供給すれば、ダイナミック回路の出力負荷
容量による情報保持時間が有限であっても当該ダイナミ
ック回路が情報を保持すべき期間を短くして、第1のシ
ステムクロック信号の周波数を低減可能な範囲を広げる
ことができる。さらに双方をスタティックラッチ回路で
構成する場合に比べて回路の物理的規模を縮小できる。
【0166】〔12〕イベント検出に基づいて第1のシ
ステムクロック信号の周波数を強制することにより、所
定のイベントが発生したとき、設定されているシステム
クロック信号周波数が低くても、システムクロック信号
周波数の選択状態を所定の状態例えば最高周波数選択状
態に強制することができ、これによって、所定のイベン
トが発生したときそれに応答する所望の処理をするまで
の時間を短縮することができる。
【0167】〔13〕イベント発生によって所定の記憶
領域(MSME)が所定の値に書き換えられることによ
ってシステムクロック信号周波数を強制することによ
り、システムクロック信号を特定周波数に強制する処理
を簡単化できる。
【0168】〔14〕イベント発生によって中央処理装
置に要求された例外的処理から復帰するときに中央処理
装置が上記記憶領域(MSME)を所定の値に戻すこと
により、周波数を選択的に指定する情報の記憶領域(C
KS1,CKS2)の値それ自体を退避及び復帰させる
ことをも要しない。
【0169】〔15〕周波数が強制されたシステムクロ
ック信号を受ける機能ブロックが中央処理装置以外のデ
ータトランスファコントローラであるときに、イベント
の発生によって例外的処理が要求されたデータトランス
ファコントローラは当該例外的処理の終了を指示する信
号を出力し、それによって上記記憶領域(MSME)を
所定の値に戻すことにより、中央処理装置若しくはソフ
トウェアに負担をかけずにシステムクロック信号を元に
戻すことができる。
【0170】〔16〕機能ブロック単位に内部クロック
信号の形成を禁止させるための情報を書き換え可能に保
持するレジスタ手段(133)を設け、リセットなどの
所定のイベント発生に基づいて、そのレジスタ手段を内
部クロック信号の形成を禁止する状態に初期化すること
により、リセット等の所定イベント発生時における初期
的な状態における電力消費を低減させることができる。
【0171】〔17〕システムクロック信号の周波数強
制に割り込みベクタなどのベクタと対の制御情報を利用
することにより、イベントの種類に応じて低消費電力設
定を細かく行うことができる。
【0172】〔18〕上記割り込みベクタなどのベクタ
と対の制御情報を利用する場合に、イベント発生時には
当該ベクタと対の制御情報によって現在の低消費電力制
御のための情報が消失されないように退避させることに
より、イベント発生によって要求された例外的処理の終
了後に、電力制御状態もイベント発生直前の状態に復帰
させることができる。
【0173】〔19〕プリスケーラで生成可能な低分周
比のプリスケーラクロック信号はプリスケーラから供給
せずに、機能ブロック内の分周器で個別的に生成させる
ことにより、低分周比のクロック信号もプリスケーラか
ら直接複数の機能ブロックに供給する場合に比べて低消
費電力化を図ることができる。
【図面の簡単な説明】
【図1】本発明に係る半導体集積回路の一実施例である
シングルチップマイクロコンピュータのブロック図であ
る。
【図2】図1のシングルチップマイクロコンピュータの
変形例を示すブロック図である。
【図3】各機能ブロックの代表的な論理回路の構成例を
(A)によって示し、順序回路をCMOSダイナミック
回路で構成する例を(B)によって示し、本実施例のシ
ングルチップマイクロコンピュータに用いられているC
MOSダイナミック回路の一例を(C)によって示す説
明図である。
【図4】プリスケーラの一例を示すブロック図である。
【図5】プリスケーラの一例の動作タイミングを(A)
〜(I)によって示す説明図である。
【図6】PWMタイマの一例を示すブロック図である。
【図7】ノーオーバラップ生成回路の一例を(A)によ
って示し、クロック制御回路の一例を(B)によって示
し、WDTに採用されるノーオーバラップ生成回路の一
例を(C)によって示す論理回路図である。
【図8】図6のPWMタイマの一例の動作タイミングチ
ャートである。
【図9】図1に示されるシングルチップマイクロコンピ
ュータのクロック発振器及びクロック制御回路の一例を
示すブロック図である。
【図10】MSMEビット、CKS1ビット、CKS0
ビットの論理値によるクロック信号の選択態様の一例を
(A)によって示し、セレクタの論理を(B)によって
示す説明図である。
【図11】モジュールストップモードを制御するモジュ
ールストップ制御レジスタのレジスタ構成と中速モード
を制御するクロック制御レジスタのレジスタ構成例を
(A)及び(B)によって示す説明図である。
【図12】モジュールストップ制御レジスタにおけるM
STP7〜MSTP5を(A)〜(C)によって示す説
明図である。
【図13】モジュールストップ制御レジスタにおけるM
STP4〜MSTP3を(A)及び(B)によって示す
説明図である。
【図14】クロック制御レジスタを(A)〜(C)によ
って示す説明図である。
【図15】本実施例のシングルチップマイクロコンピュ
ータにおけるシステムクロック信号に着目した概略的な
動作フローチャートである。
【図16】MSMEビットの概略的な一例を示すブロッ
ク図である。
【図17】割り込み要求発生時における一例の動作タイ
ミングチャートである。
【図18】DTC起動要求発生時における一例の動作タ
イミングチャートである。
【図19】バスマスタとバススレーブとの間における第
1のインタフェース仕様の概略説明図である。
【図20】図19に従ったバスマスタクロックとバスス
レーブクロックの一例のタイミングチャートである。
【図21】バスマスタとバススレーブとの間における第
2のインタフェース仕様の概略説明図である。
【図22】図21に従ったバスマスタクロックとバスス
レーブクロックの一例のタイミングチャートである。
【図23】バスマスタクロックとバススレーブクロック
の別の動作タイミングチャートである。
【図24】バススレーブに対するリード動作におけるバ
スインタフェースの一例のタイミングチャートである。
【図25】バススレーブに対するライト動作におけるバ
スインタフェースの一例のタイミングチャートである。
【図26】クロック信号φS及びφBを選択的に外部出
力可能にする構成の一例説明図である。
【図27】クロック信号φS又はφBの何れか一方を選
択的に外部出力可能にする構成の一例説明図である。
【図28】図27の構成に必要とされるPHISビット
を(A)及び(B)によって示す説明図である。
【図29】シングルチップマイクロコンピュータの内部
バスのその他の分割例を示す概略ブロック図である。
【図30】低消費電力状態を指定するベクタ配列とその
場合のスタックの一例説明図である。
【図31】低消費電力情報をベクタに配置する実施例に
おける例外処理時及びリターン時の一例の動作タイミン
グチャートである。
【図32】低消費電力制御レジスタの1ビット分の構成
を代表的に示す一例ブロック図である。
【図33】クロック発振器及びクロック制御回路の別の
例を示すブロック図である。
【図34】図33のクロック制御回路からのその他の機
能ブロックへのクロック信号φ1L、φ2Lの供給態様
を専ら示すシングルチップマイクロコンピュータの概略
ブロック図である。
【符号の説明】
1 中央処理装置(CPU) 2 データトランスファコントローラ(DTC) 3 バスコントローラ 4 割り込みコントローラ 5 ROM 6 RAM 7 タイマ(PWMタイマ) 700 ノーオーバラップ生成回路 710 クロック制御回路 720 分周器 8 ウオッチドッグタイマ(WDT) 9 シリアルコミュニケーションインタフェース(SC
I)) 10 アナログ/ディジタル(A/D)変換器 12 クロック発振器 13 クロック制御回路 130 分周器 131 セレクタ 132 クロック制御レジスタ 1325 DTC転送終了信号 133 モジュールストップ制御レジスタ 1300,1301,1307 アンドゲート 1310,1311 システムクロック信号の外部出力
用配線 14 プリスケーラ IOP60,IOP61 入出力ポート IDB,IAB 内部バス PDB,PAB 内部バス φOSC クロック信号 φS,φB システムクロック信号 L1,L2 クロック信号配線 φ1S,φ2S ノーオーバラップ2相のクロック信号 φ1B,φ2B ノーオーバラップ2相のクロック信号 φ1−PWM,φ2−PWM ノーオーバラップ2相の
タイミング信号 MSTP モジュールストップ信号 MSTPPSC プリスケーラモジュールストップ信号

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】 供給されるシステムクロック信号に従っ
    て動作する第1の機能ブロックと、 供給されるシステムクロック信号に従って、それぞれ動
    作する複数の第2の機能ブロックと、 所定のクロック信号に基づいて形成され第2の周波数を
    有する第2のシステムクロック信号を、上記複数の第2
    の機能ブロックへ共通に供給する第2のクロック信号配
    線と、 その分周比が可変のクロック形成回路を含み、上記所定
    のクロック信号を分周することにより第1のシステムク
    ロック信号を形成するクロック制御回路と、 上記第1のシステムクロック信号を上記第1の機能ブロ
    ックへ供給する第1のクロック信号配線と、を含んで成
    るものであることを特徴とする半導体集積回路。
  2. 【請求項2】 上記第1の機能ブロックと上記第2の機
    能ブロックとに結合されたバスを有し、上記第1の機能
    ブロックは、バスマスタとして動作するものであること
    を特徴とする請求項1記載の半導体集積回路。
  3. 【請求項3】 上記第2の機能ブロックは、バススレー
    ブとして動作されるものであることを特徴とする請求項
    2記載の半導体集積回路。
  4. 【請求項4】 上記クロック制御回路は、上記分周比を
    定めるための情報を保持するレジスタ手段を有し、上記
    レジスタ手段への情報は上記第1の機能ブロックによっ
    て設定されるものであることを特徴とする請求項3記載
    の半導体集積回路。
  5. 【請求項5】 上記バスは、上記第1の機能ブロックが
    接続された第1の内部データバスと、上記第2の機能ブ
    ロックが接続された第2の内部データバスとを有し、 更に、上記バスマスタによる上記バススレーブに対する
    アクセスに応じて、上記第1の内部データバスを上記第
    2の内部データバスへ接続するバスコントローラを含ん
    で成るものであることを特徴とする請求項3記載の半導
    体集積回路。
  6. 【請求項6】 上記第2の内部データバスに接続され、
    上記第2の機能ブロックの出力が高インピーダンス状態
    のとき、上記第2の内部データバスの状態を保持し、上
    記第2の機能ブロックがリード又はライト動作を行うと
    き、上記第2の内部データバスがリードされるべきデー
    タ又はライトされるべきデータに従って変化するのを許
    容するホールド回路を含むものであることを特徴とする
    請求項5記載の半導体集積回路。
  7. 【請求項7】 上記第1の機能ブロックは、上記第1の
    システムクロック信号から互いにノーオーバラップの第
    1の2相クロック信号を形成するノーオーバラップ信号
    形成回路を有し、 上記第2の機能ブロックは、上記第2のシステムクロッ
    ク信号から互いにノーオーバラップの第2の2相クロッ
    ク信号を形成するノーオーバラップ信号形成回路を有
    し、 上記第1の2相クロック信号と上記第2の2相クロック
    信号とは、部分的に位相が一致し、該位相が一致するタ
    イミングに同期して、上記第2の機能ブロックは第1の
    機能ブロックに供給すべき信号を変化させるものである
    ことを特徴とする請求項3記載の半導体集積回路。
  8. 【請求項8】 上記第1の機能ブロックは、上記第1の
    システムクロック信号から互いにノーオーバラップの第
    1の2相クロック信号を形成するノーオーバラップ信号
    形成回路を有し、 上記第2の機能ブロックは、上記第2のシステムクロッ
    ク信号から互いにノーオーバラップの第2の2相クロッ
    ク信号を形成するノーオーバラップ信号形成回路を有
    し、 上記第1の2相クロック信号の内の一方のクロック信号
    のローレベル期間が、上記第2の2相クロック信号の内
    の一方のクロック信号のローレベル期間と一致し、上記
    第2の2相クロック信号の内の他方のクロック信号のハ
    イレベル期間が、上記第2の2相クロック信号の内の他
    方のクロック信号のハイレベル期間と一致するものであ
    ることを特徴とする請求項3記載の半導体集積回路。
  9. 【請求項9】 外部端子と、 上記外部端子とクロック信号配線との間に結合され、ク
    ロック信号配線上のクロック信号を、選択的に上記外部
    端子へ出力する出力回路と、 上記システムクロック信号を受け、上記出力回路が外部
    端子へ上記システムクロック信号を出力するとき、上記
    クロック信号配線へシステムクロック信号を供給し、上
    記出力回路が外部端子へ上記システムクロック信号を出
    力しないとき、上記クロック信号配線を所定の電位へ固
    定する論理回路と、を含んで成るものであることを特徴
    とする請求項3記載の半導体集積回路。
  10. 【請求項10】 所定のクロック信号を受け、複数相の
    内部クロック信号を形成するクロック形成回路を含み、
    形成された内部クロック信号に従って動作する複数の機
    能ブロックと、 上記複数の機能ブロックに対して共通に設けられ、各機
    能ブロックに各々対応した制御情報を保持するレジスタ
    手段とを含み、 上記クロック形成回路は、対応する制御情報に従って、
    選択的に上記内部クロック信号の形成を禁止して一定状
    態の信号を出力する制御回路を含んで成るものであるこ
    とを特徴とする半導体集積回路。
  11. 【請求項11】 上記機能ブロックは、更に、その機能
    ブロックに対する動作の選択に呼応して、上記複数相の
    内部クロック信号から、内部タイミング信号を形成する
    回路を有し、該回路は、その機能ブロックに対する動作
    の非選択に応答して、上記内部タイミング信号を一定の
    状態に制限する制御回路を含んで成るものであることを
    特徴とする請求項10記載の半導体集積回路。
  12. 【請求項12】 上記内部タイミング信号は、互いにノ
    ーオーバラップの2相のタイミング信号であり、 上記機能ブロックは、上記2相のタイミング信号の内の
    一方のタイミング信号によってダイナミックに動作する
    ダイナミック回路と、上記ダイナミック回路と直列接続
    され、上記2相のタイミング信号の内の他方のタイミン
    グ信号によってスタティックに動作するスタティック回
    路と、を含んで成るものであることを特徴とする請求項
    11記載の半導体集積回路。
  13. 【請求項13】 第1のシステムクロック信号に同期し
    て、例外処理とその他の処理とを実行する第1の機能ブ
    ロックと、 イベントの発生を検出し、上記第1の機能ブロックに対
    して、例外処理の実行を要求する要求信号を出力するイ
    ベント検出回路と、 上記イベントを発生する第2の機能ブロックと、 上記第1のシステムクロック信号の周波数を変更する制
    御回路であって、上記要求信号に応答して、上記第1の
    システムクロック信号を所定の周波数に変更する制御回
    路と、を含んで成るものであることを特徴とする半導体
    集積回路。
  14. 【請求項14】 上記制御回路は、第1の記憶領域と第
    2の記憶領域とを有する第1のレジスタ手段と、 上記所定の周波数を含む、互いに異なる周波数の複数の
    クロック信号を受け、上記第1のレジスタ手段の第1の
    記憶領域が第1の状態にされているとき、上記所定の周
    波数のクロック信号を、上記第1のシステムクロック信
    号として出力し、上記第1のレジスタ手段の第1の記憶
    領域が第2の状態にされているとき、上記第2の記憶領
    域に保持されている情報に従って、上記複数のクロック
    信号の内の一つを、上記第1のシステムクロック信号と
    して出力するセレクタと、を含んで成るものであること
    を特徴とする請求項13記載の半導体集積回路。
  15. 【請求項15】 上記第1の機能ブロックは、上記例外
    処理からの復帰に際して、上記第1のレジスタ手段の第
    1の記憶領域を上記第2の状態に設定可能にする中央処
    理装置を含んで成るものであることを特徴とする請求項
    14記載の半導体集積回路。
  16. 【請求項16】 上記第1の機能ブロックは、上記例外
    処理の終了に応答して、終了信号を出力するデータトラ
    ンスファコントローラであり、上記終了信号によって、
    上記第1のレジスタ手段の第1の記憶領域が第2の状態
    に設定されるものであることを特徴とする請求項14記
    載の半導体集積回路。
  17. 【請求項17】 上記第2の機能ブロックは、該第2の
    機能ブロックを動作させるための内部クロック信号を、
    所定の周波数を有する第2のシステムクロック信号から
    形成するクロック形成回路を有し、 上記半導体集積回路は、上記クロック形成回路による内
    部クロック信号の形成を制御するための制御情報を保持
    する第2のレジスタ手段を有し、該第2のレジスタ手段
    は、上記イベント検出回路からの検出出力に応答して、
    上記クロック形成回路による内部クロック信号の形成を
    禁止する情報がセットされるものであることを特徴とす
    る請求項14記載の半導体集積回路。
  18. 【請求項18】 上記イベント検出回路は、上記第1の
    システムクロック信号に従って、動作するものであるこ
    とを特徴とする請求項14記載の半導体集積回路。
  19. 【請求項19】 例外処理の要求に応答するために、そ
    の例外処理に対応するベクタ領域から情報を取り込み、
    第1のシステムクロック信号に従って動作する中央処理
    装置と、 イベントの発生を検出し、上記中央処理装置へ例外処理
    の要求を出力するイベント検出回路と、 上記第1のシステムクロック信号の周波数を指定する情
    報を保持する第1のレジスタ手段と、 第2のシステムクロック信号を受け、内部クロック信号
    を形成するクロック信号形成回路を有し、それによって
    形成された内部クロック信号に従って動作する周辺回路
    と、 上記周辺回路のクロック信号形成回路による内部クロッ
    ク信号の形成を制御する情報を保持する第2のレジスタ
    手段とを含み、 例外処理の要求時に、上記第1のレジスタ手段及び第2
    のレジスタ手段にセットされるべき情報は、上記ベクタ
    領域と対を成す領域に保持され、例外処理が要求された
    とき、上記ベクタ領域と対を成す領域から上記情報が、
    上記第1のレジスタ手段及び第2のレジスタ手段へセッ
    トされるものであることを特徴とする半導体集積回路。
  20. 【請求項20】 上記中央処理装置は、上記ベクタ領域
    と対を成す領域から上記情報を、上記第1のレジスタ手
    段及び第2のレジスタ手段へセットする前に、上記第1
    のレジスタ手段及び第2のレジスタ手段に保持されてい
    る情報を、スタック領域へ退避するものであることを特
    徴とする請求項19記載の半導体集積回路。
  21. 【請求項21】 上記イベント検出回路は、上記第1の
    システムクロック信号に従って、動作するものであるこ
    とを特徴とする請求項19記載の半導体集積回路。
  22. 【請求項22】 システムクロック信号に従って動作す
    る複数の機能ブロックを有する半導体集積回路であっ
    て、 クロック信号を形成するクロック信号形成回路と、 上記クロック信号を、第1の分周比よりも大きな分周比
    で分周し、形成された第1のクロック信号を、クロック
    信号配線を介して、上記複数の機能ブロックのうちの複
    数の機能ブロックへ供給する共通プリスケーラとを含
    み、 上記複数の機能ブロックのうちの所定の機能ブロック
    は、それに供給される上記システムクロック信号を、上
    記第1の分周比よりも小さな分周比で、分周する分周回
    路を含んで成るものであることを特徴とする半導体集積
    回路。
JP28659995A 1994-11-22 1995-10-06 半導体集積回路 Expired - Fee Related JP3505018B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP28659995A JP3505018B2 (ja) 1994-11-22 1995-10-06 半導体集積回路
TW084111253A TW308657B (ja) 1994-11-22 1995-10-24
KR1019950041172A KR100363983B1 (ko) 1994-11-22 1995-11-14 반도체집적회로
US08/561,728 US5774702A (en) 1994-11-22 1995-11-22 Integrated circuit having function blocks operating in response to clock signals

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP6-312430 1994-11-22
JP31243094 1994-11-22
JP28659995A JP3505018B2 (ja) 1994-11-22 1995-10-06 半導体集積回路

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003205675A Division JP2004094930A (ja) 1994-11-22 2003-08-04 半導体集積回路

Publications (2)

Publication Number Publication Date
JPH08234864A true JPH08234864A (ja) 1996-09-13
JP3505018B2 JP3505018B2 (ja) 2004-03-08

Family

ID=26556380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28659995A Expired - Fee Related JP3505018B2 (ja) 1994-11-22 1995-10-06 半導体集積回路

Country Status (4)

Country Link
US (1) US5774702A (ja)
JP (1) JP3505018B2 (ja)
KR (1) KR100363983B1 (ja)
TW (1) TW308657B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005011166A (ja) * 2003-06-20 2005-01-13 Renesas Technology Corp 情報処理装置
JP2007102673A (ja) * 2005-10-07 2007-04-19 Renesas Technology Corp 半導体集積回路装置および消費電力管理装置
KR100826496B1 (ko) * 2007-02-06 2008-05-02 삼성전자주식회사 반도체 집적 회로 장치 및 그 동작 방법
JP2009187585A (ja) * 2009-05-25 2009-08-20 Renesas Technology Corp スタンバイモードからの復帰処理方法

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974259A (en) * 1996-09-18 1999-10-26 International Business Machines Corporation Data processing system and method of operation having input/output drivers with reduced power consumption and noise levels
JP3406790B2 (ja) 1996-11-25 2003-05-12 株式会社東芝 データ転送システム及びデータ転送方法
US5918058A (en) * 1997-02-20 1999-06-29 Arm Limited Routing of clock signals in a data processing circuit with a power saving mode of operation
JPH1139868A (ja) * 1997-07-18 1999-02-12 Matsushita Electric Ind Co Ltd 半導体集積回路システム、半導体集積回路、及び半導体集積回路システムの駆動方法
US6208542B1 (en) * 1998-06-30 2001-03-27 Sandisk Corporation Techniques for storing digital data in an analog or multilevel memory
JP2000066759A (ja) * 1998-08-17 2000-03-03 Oki Electric Ind Co Ltd クロック制御回路
JP3625688B2 (ja) * 1999-04-30 2005-03-02 富士通株式会社 メモリデバイス
JP2001147821A (ja) * 1999-09-10 2001-05-29 Toshiba Corp プロセッサ
JP2002041452A (ja) * 2000-07-27 2002-02-08 Hitachi Ltd マイクロプロセッサ、半導体モジュール及びデータ処理システム
TW484306B (en) * 2000-10-20 2002-04-21 Acer Peripherals Inc Digital image converting device for converting screen signals
US6792582B1 (en) * 2000-11-15 2004-09-14 International Business Machines Corporation Concurrent logical and physical construction of voltage islands for mixed supply voltage designs
JP3880310B2 (ja) * 2000-12-01 2007-02-14 シャープ株式会社 半導体集積回路
US6680631B2 (en) * 2001-03-27 2004-01-20 Intel Corporation Setting the speed of clocked circuitry
JPWO2003009533A1 (ja) * 2001-07-11 2004-11-11 富士通株式会社 インタフェース装置及びその制御方法
US6667704B1 (en) * 2001-08-15 2003-12-23 Cirrus Logic, Inc. Data conversion circuits and methods with input clock signal frequency detection and master mode output clock signal generation
JP3696194B2 (ja) * 2002-10-10 2005-09-14 株式会社東芝 半導体集積回路
JP4335561B2 (ja) * 2003-03-28 2009-09-30 Necエレクトロニクス株式会社 半導体集積回路装置
JP3963158B2 (ja) * 2003-08-19 2007-08-22 ソニー株式会社 半導体回路装置及びそのテスト方法
FI20040418A (fi) * 2004-03-18 2005-09-19 Nokia Corp Digitaalijärjestelmän kellokontrolli
KR100591524B1 (ko) * 2004-05-14 2006-06-19 삼성전자주식회사 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법
US7605723B2 (en) * 2004-12-14 2009-10-20 Cirrus Logic, Inc. Circuits and methods for implementing mode selection in multiple-mode integrated circuits
KR100649882B1 (ko) * 2005-07-19 2006-11-27 삼성전자주식회사 비정상 조건 검출회로, 집적회로 카드, 및 cpu 작동방법
JP2009211870A (ja) * 2008-03-03 2009-09-17 Ushio Inc 紫外線照射用光源
CN101452337A (zh) * 2008-12-18 2009-06-10 北京中星微电子有限公司 一种外接设备的控制方法和装置
DE102011076838A1 (de) * 2011-05-31 2012-12-06 Endress + Hauser Flowtec Ag Meßgerät-Elektronik für ein Meßgerät-Gerät sowie damit gebildetes Meßgerät-Gerät
US20130097568A1 (en) * 2011-10-14 2013-04-18 William W. Yang Global clock handler object for hdl environment
GB2513529A (en) * 2012-11-15 2014-11-05 Ibm System and method of low latency data tranfer between clock domains operated in various synchronization modes
US9086688B2 (en) * 2013-07-09 2015-07-21 Fisher-Rosemount Systems, Inc. State machine function block with user-definable actions on a transition between states
US10732689B2 (en) * 2013-07-09 2020-08-04 Texas Instruments Incorporated Controlling the number of powered vector lanes via a register field
KR102488584B1 (ko) * 2018-07-13 2023-01-17 에스케이하이닉스 주식회사 다양한 주파수의 클럭 신호들을 수신하는 반도체 장치 및 이를 포함하는 시스템

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5266346A (en) * 1975-11-29 1977-06-01 Tokyo Electric Co Ltd Synch. clock control of microcomputer system
US4835728A (en) * 1986-08-13 1989-05-30 Amdahl Corporation Deterministic clock control apparatus for a data processing system
US5163146A (en) * 1988-10-14 1992-11-10 International Business Machines Corporation System responsive to interrupt levels for changing and restoring clock speed by changing and restoring a register value
US5115503A (en) * 1989-01-12 1992-05-19 Dell U.S.A. Corporation System for adapting its clock frequency to that of an associated bus only when it requires usage thereof
JPH0358207A (ja) * 1989-07-27 1991-03-13 Nec Corp マイクロコンピュータ
JP2762670B2 (ja) * 1990-03-30 1998-06-04 松下電器産業株式会社 データ処理装置
JP3089646B2 (ja) * 1990-05-17 2000-09-18 日本電気株式会社 Pwm出力回路
KR930001417B1 (ko) * 1990-08-10 1993-02-27 금성일렉트론 주식회사 반도체 소자의 노이즈 방지방법
US5560017A (en) * 1990-11-09 1996-09-24 Wang Laboratories, Inc. System with clock frequency controller responsive to interrupt independent of software routine and software loop repeatedly executing instruction to slow down system clock
JPH0581447A (ja) * 1991-09-24 1993-04-02 Nec Corp マイクロコンピユータ
GB2260631B (en) * 1991-10-17 1995-06-28 Intel Corp Microprocessor 2X core design
DE69327612T2 (de) * 1992-05-08 2000-08-31 Nat Semiconductor Corp Schaltung und Verfahren zur Generierung eines stabilen Taktsignals mit Frequenzvervielfachung
JP3291569B2 (ja) * 1993-08-30 2002-06-10 三菱電機株式会社 マイクロコンピュータ
JPH07141053A (ja) * 1993-11-17 1995-06-02 Nec Niigata Ltd クロック発生回路
US5479648A (en) * 1994-08-30 1995-12-26 Stratus Computer, Inc. Method and apparatus for switching clock signals in a fault-tolerant computer system
US5586308A (en) * 1994-10-19 1996-12-17 Advanced Micro Devices, Inc. Clock control unit responsive to a power management state for clocking multiple clocked circuits connected thereto

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005011166A (ja) * 2003-06-20 2005-01-13 Renesas Technology Corp 情報処理装置
US8122233B2 (en) 2003-06-20 2012-02-21 Renesas Electronics Corporation Information processing device
US8484448B2 (en) 2003-06-20 2013-07-09 Renesas Electronics Corporation Information processing device
JP2007102673A (ja) * 2005-10-07 2007-04-19 Renesas Technology Corp 半導体集積回路装置および消費電力管理装置
KR100826496B1 (ko) * 2007-02-06 2008-05-02 삼성전자주식회사 반도체 집적 회로 장치 및 그 동작 방법
US7953999B2 (en) 2007-02-06 2011-05-31 Samsung Electronics Co., Ltd. Semiconductor integrated circuit device and method of operating the same
JP2009187585A (ja) * 2009-05-25 2009-08-20 Renesas Technology Corp スタンバイモードからの復帰処理方法

Also Published As

Publication number Publication date
US5774702A (en) 1998-06-30
KR100363983B1 (ko) 2003-02-11
TW308657B (ja) 1997-06-21
KR960018830A (ko) 1996-06-17
JP3505018B2 (ja) 2004-03-08

Similar Documents

Publication Publication Date Title
JP3505018B2 (ja) 半導体集積回路
US20190361837A1 (en) System on chip including clock management unit and method of operating the system on chip
US9785211B2 (en) Independent power collapse methodology
US11429546B2 (en) Addressing read and write registers in an event slot of a communications interface with a single address by a host system and individually addressable by a state machine
JP6643568B2 (ja) 不揮発制御によるrfモジュール初期化システム及び方法
KR102467172B1 (ko) 반도체 장치
US11275708B2 (en) System on chip including clock management unit and method of operating the system on chip
US20220327093A1 (en) Circuit Architecture Mapping Signals to Functions for State Machine Execution
US20030079152A1 (en) Microprocessor with multiple low power modes and emulation apparatus for said microprocessor
JP3665030B2 (ja) バス制御方法及び情報処理装置
US10571993B2 (en) Micro controller unit
US6381705B1 (en) Method and device for reducing current consumption of a microcontroller
US7219248B2 (en) Semiconductor integrated circuit operable to control power supply voltage
US5734927A (en) System having registers for receiving data, registers for transmitting data, both at a different clock rate, and control circuitry for shifting the different clock rates
JPS63126018A (ja) 半導体集積回路
JP2002041495A (ja) マイクロコンピュータ
JP2004094930A (ja) 半導体集積回路
JP2003196149A (ja) メモリ制御装置
JPH0215357A (ja) データ処理装置
JP2001014259A (ja) データ処理装置
CN114647613A (zh) 处理系统、相关集成电路和方法
JP2005004591A (ja) 半導体集積回路
JPH0651979A (ja) 周辺装置制御用マイクロプロセッサ
JP2001306493A (ja) データ転送制御装置及びマイクロコンピュータ
JP2006065444A (ja) 半導体集積回路及びデータプロセッサ

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031212

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

Free format text: PAYMENT UNTIL: 20071219

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081219

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081219

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091219

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees