JP6441166B2 - 半導体装置 - Google Patents
半導体装置 Download PDFInfo
- Publication number
- JP6441166B2 JP6441166B2 JP2015099812A JP2015099812A JP6441166B2 JP 6441166 B2 JP6441166 B2 JP 6441166B2 JP 2015099812 A JP2015099812 A JP 2015099812A JP 2015099812 A JP2015099812 A JP 2015099812A JP 6441166 B2 JP6441166 B2 JP 6441166B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- semiconductor device
- clock signal
- clock
- register
- 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.)
- Active
Links
- 239000004065 semiconductor Substances 0.000 title claims description 69
- 230000002093 peripheral effect Effects 0.000 claims description 32
- 230000008859 change Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 26
- 230000000630 rising effect Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 8
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 35
- 238000012986 modification Methods 0.000 description 30
- 230000004048 modification Effects 0.000 description 30
- 230000006870 function Effects 0.000 description 15
- 238000013461 design Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/06—Clock generators producing several clock signals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Description
半導体装置の消費電力は、簡単には、動作するクロック周波数に比例する。従来、クロックを1/N(Nは自然数)に分周することで、消費電力を低減する手法が広く使用されている。
なお、本開示に関連する先行技術文献として、例えば日本国特開2011−114630号公報またはこれに対応する米国特許第8645742号がある。
本開示の課題と新規な特長は、本発明書の記述および添付図面か明らかになるであろう。
実施形態に係る半導体装置は源クロック信号を時間的に部分的に許可または禁止することでデータ処理部を含む領域に供給するクロック信号を生成する。
次に、第1の実施形態(実施形態1)に係る半導体装置について図1Aおよび図1Bを用いて説明する。図1Aは実施形態1に係る半導体装置の構成示すブロック図である。図1Bは実施形態1に係る半導体装置のクロック信号の波形を示す図である。
実施形態1に係る半導体装置はクロック発生回路(CPG)とデータ処理部(DPU)とを備える。クロック発生回路(CPG)は、発振器(OSC)と、発信器(OSC)で生成される源クロック信号(CLKO)に基づいてクロック制御信号(CKC)を生成する制御回路(CC)と、源クロック信号(CLKO)をクロック制御信号(CKC)で時間的に部分的許可(イネーブル)または禁止(ディスエーブル)してクロック信号(CLK)を出力する出力回路(OC)と、を備える。クロック発生回路(CPG)はクロック信号(CLK)をデータ処理部に供給する。データ処理部(DPU)は制御回路(CC)に源クロック信号(CLKO)を許可または禁止する割合を設定することが可能である。図1Bの破線は源クロック信号(CLKO)が禁止されたことを示している。なお、クロック信号(CLK)はデータ処理部(DPU)以外の機能ブロックにも供給される。
クロック信号(CLK)の破線部分は源クロック信号(CLKO)の出力が禁止されてクロックパルスが発生せず、クロック信号(CLK)の実線部分は源クロック信号(CLKO)の出力が許可されてクロックパルスが発生する。これにより、クロック信号(CLK)の単位時間当たりのクロックパルス数を変化させることができ、クロック信号(CLK)は源クロック信号(CLKO)の1/N倍以外のクロックパルス数(周波数)になることができる。よって、実施形態に係る半導体装置は所要の性能と消費電力を実現することができる。
次に、第2の実施形態(実施形態2)に係る半導体装置について図1Cを用いて説明する。図1Cは実施形態2に係る半導体装置の構成を示すブロック図である。
実施形態2に係る半導体装置は実施形態1に係る半導体装置にクロック発生回路(CPG)およびデータ処理部(DPU)に接続されるバスと、制御回路(CC)の内容をバス以外から変更可能な変更回路(AC)とを追加した構成である。すなわち、実施形態2に係る半導体装置はクロック発生回路(CPG)とデータ処理部(DPU)とバス(BUS)とを備える。クロック発生回路(CPG)は発振器(OSC)と制御回路(CC)と出力回路(OC)と変更回路(AC)を備える。制御回路(CC)は発振器(OSC)で生成される源クロック信号(CLKO)に基づいてクロック制御信号(CKC)を生成する。出力回路(OC)は源クロック信号(CLKO)をクロック制御信号(CKC)で時間的に部分的許可または禁止してクロック信号(CLK)を出力する。変更回路(AC)はバス(BUS)以外を経由して制御回路(CC)の内容を変更可能なである。データ処理部(DPU)は制御回路(CC)に源クロック信号(CLKO)を許可または禁止する割合を設定することが可能である。図1Eの破線は源クロック信号(CLKO)が禁止されたことを示している。なお、クロック信号(CLK)はデータ処理部(DPU)以外の機能ブロックにも供給される。
変更回路(AC)によって源クロック信号(CLKO)を許可または禁止する割合を変更することが可能であるので、データ処理部(DPU)により制御回路(CC)の内容を変更する必要がなくなる。これによって、制御を容易にしたり自動的に実行したりすることが可能になる。
次に、第3の実施形態(実施形態3)に係る半導体装置について図1Dおよび図1Eを用いて説明する。図1Dは実施形態3に係る半導体装置の構成を示すブロック図である。図1Eは実施形態3に係る半導体装置のクロック信号の波形を示す図である。
実施形態3に係る半導体装置は実施形態1に係る半導体装置の制御回路(CC)と出力回路(OC)とを少なくとも2組備え、第1のクロック信号(CLK1)を第1領域に供給し、第2のクロック信号(CLK2)を第2領域に供給するようにされる。すなわち、実施形態3に係る半導体装置は、第1のクロック信号(CLK1)および第2のクロック信号(CLK2)を生成するクロック発生回路(CPG)と、第1のクロック信号(CLK1)で動作する第1の領域と、第2のクロック信号(CLK2)で動作する第2の領域と、を備える。クロック発生回路(CPG)は発振器(OSC)と第1のクロック制御回路(CC)と第1のクロック出力回路(OC)と第2のクロック制御回路(CC)と第2のクロック出力回路(OC)とを備える。発振器(OSC)は源クロック信号を生成する。第1のクロック制御回路(CC)は第1のデューティを有する第1の制御信号(CKC)を生成する。第1のクロック出力回路(OC)は第1の制御信号(CKC)に基づいて源クロック信号(CLKO)を時間的に部分的許可または禁止して第1のクロック信号(CLK1)を出力することが可能である。第2のクロック制御回路(CC)は第2のデューティを有する第2の制御信号(CKC)を生成する。第2のクロック出力回路(OC)は第2の制御信号(CKC)に基づいて源クロック信号(CLKO)を時間的に部分的許可または禁止して第2のクロック信号(CLK2)を出力することが可能である。
実施形態1と同様に、第1のクロック信号(CLK1)および第2のクロック信号(CLK2)の破線部分は源クロック信号(CLKO)の出力が禁止されてクロックパルスが発生せず、第1のクロック信号(CLK1)および第2のクロック信号(CLK2)の実線部分は源クロック信号(CLKO)の出力が許可されてクロックパルスが発生する。これにより、第1のクロック信号(CLK1)と第2のクロック信号(CLK2)の単位時間当たりのクロックパルス数(周波数)を異ならせることができる。
第1のクロック信号(CLK1)および第2のクロック信号(CLK2)の立ち上がりエッジおよび立下りエッジは源クロック信号(CLKO)の立ち上がりエッジおよび立下りエッジに相当するので、第1領域と第2領域とのインタフェースは、源クロック信号(CLKO)に対する同期設計とすることができる。よって、第1領域と第2領域とインタフェース設計を容易にすることができ、その構成を簡略にすることができる。
半導体装置の一例であるマイクロコンピュータ10は、クロック発生回路(CPG)11と、CPU12と、メモリ13と、周辺回路(IO)14と、を含んで構成され、公知の半導体製造技術により1つの半導体基板上に形成される。CPU12はマイクロコンピュータ10全体の処理を司る。CPU12は実施形態に係る半導体装置のデータ処理部(DPU)の一例である。メモリ13はCPU12の処理プログラムなどの格納用の不揮発性メモリ(ROM)とCPU12の作業領域およびデータの一時記憶用の揮発性メモリ(RAM)とを備える。周辺回路(IO)14はタイマ、SCI(Serial Communication Interface)、A/D(Analog/Digital)変換器、ポート、センサなどを備える。
マイクロコンピュータ10の機能ブロックは、内部バス15によって相互に接続される。CPU12は、内部バス15を介して、メモリ13や周辺回路14に含まれるレジスタをリード/ライトする。周辺回路14は各種の入出力端子を持つ。CPU12およびメモリ13は第1領域とされ、クロック発生回路11から第1領域の動作用のクロック信号(以下、「CLK1」と略する。)が供給される。周辺回路14は第2領域とされ、クロック発生回路11から第2領域の動作用のクロック信号(以下、「CLK2」と略する。)が供給される。第1領域および第2領域はお互いに異なるクロック信号で動作することができる。
図3に示すように、クロック発生回路(CPG)11は、発振器(OSC)110と、制御回路である第1のイネーブル生成部(EN)111−1と、出力回路である第1のクロックゲーティング部(CG)112−1と、制御回路である第2のイネーブル生成部(EN)111−2と、出力回路である第2のクロックゲーティング部(CG)112−2と、を備える。発振器110は源クロック信号(以下、「CLKO」と略する。)を生成する。発振器110はマイクロコンピュータ10に外付けされる水晶振動子等によって源クロック信号を生成し、必要に応じてPLL等の逓倍回路や分周回路などを含むことができる。
第1のイネーブル生成部111−1は、上記の構成のほか、過去の256単位のCKEの数を保持し、これとデューティレジスタ24の内容とを比較し、過去の256単位のCKEの数がデューティレジスタ24に格納された値以下の場合にCKEを活性化し、デューティレジスタ24に格納された値より大きい場合はCKEを非活性化するように構成してもよい。第2のイネーブル生成部111−2も第1のイネーブル生成部111−1と同様にしてもよい。
クロック発生回路11から、各領域ないし各回路にクロック信号を分配する途中で、各回路の論理などによって、従来同様に、クロックゲーティングを行うことができる。例えば、第1領域へのCLK1の供給を停止して第1領域を停止状態にしたり、第1領域の一部の機能ブロック(例えば、CPU)へのCLK1の供給を停止してCPUを停止状態にしたりすることができる。
上述の通り、DR+CNT_INV≧255が成立するとき、比較器23によってCKEがアサートされる。図6に示すように、例えばデューティレジスタ24に設定された値が2(DR=2)の場合は、重み反転回路22の出力の値が253〜255(CNT_INV=253〜255)のときCKEが活性化され、このときのカウンタ21の値は191、127、255(CNT=191、127、255)である。DR=4の場合は、CNT_INV=251〜255のときCKEが活性化され、このときのCNT=223、63、191、127、255である。DR=8の場合は、CNT_INV=247〜255のときCKEが活性化され、このときのCNT=239、31、159、95、223、63、191、127、255である。図7では、横軸にカウンタ21のカウント値(CNT)、縦軸にデューティレジスタ24の設定値(DR)を示す。図7における○印の箇所で、CKEが活性化される。例えば、DR=2に設定すると、CNT=127、191、255のときに、CKEが活性化される。また、DR=63に設定すると、CNTが4の倍数+3のときに、CKEが活性化される。DR=127に設定すると、CNTが奇数のときに、CKEが活性化される。図4に示される構成では、WRC重み反転回路22によりカウンタ21のビットの重みが反転されることによって、○印の箇所が横軸方向で局在化せずに均一に配置される。換言すれば、CKEの活性状態は、周期内での偏りが小さくなるように分配されるように平滑化される。
図8(B)に示すように、第2のイネーブル生成部111−2のデューティレジスタ24の設定値を191(DR=191)にした場合、CLKOの4回の内3回(192/256=75%)で、CLKOがイネーブル(ENABLE)されて、CLK2が生成される。言い換えると、平均してCLKOの4回の内1回(64/256=25%)で、CLKOがマスク(MASK)されて、CLK2が生成されない。CLK2が供給される第2領域は、CLK2の立ち上がりエッジに同期して動作し、出力信号(OUTPUT SIGNAL)はCLK2の立ち上がりエッジで切り換る。
CLK1およびCLKの立ち上がりエッジはCLKOの立ち上がりエッジに相当するから、第1領域と第2領域とのインタフェースは、CLKOに対する同期設計を行えばよいことになる。後述する実施例2における第2領域を複数に分割してインタフェースする場合も同様である。
カウンタ21をリセットなどで初期化して、それぞれの領域のカウンタ21を同期することで、デューティレジスタ24の値が大きい(速い)方のCKEは、デューティレジスタ24の値が小さい(遅い)方のCKEを包含することになるので、遅い方が速い方を待つ必要がなく、インタフェースを容易にすることができる。
実施例1の第1の変形例(変形例1)に係るクロック発生回路について図9を用いて説明する。図9は変形例1に係るクロック発生回路の構成を示すブロック図である。
変形例1に係るクロック発生回路(CPG)11Aは、クロック発生回路11の構成の他に、分周器(DIV)114および分周選択レジスタ(SEL)113を含む。分周器(DIV)114は源クロック(CLKO)を分周して、第2のイネーブル生成部(EN)111−2、第2のクロックゲーティング部(CG)112−2に供給する。また、クロック発生回路11Aは第3領域の動作用のクロック信号(CLK3)を供給する。
第3領域は、図示はしないが、周辺回路14に含まれる機能ブロックの内、信号のハイレベル幅とロウレベル幅が等しい、または、クロック信号の周波数を固定にする必要がある機能ブロックを含む。適切な分周比で、クロック信号のハイレベル幅とロウレベル幅が合った、周波数が一定のクロック信号を供給することができる。
また、第2領域クロック(CLK2)はCLKOに代えて第3領域クロック(CLK3)に基づいて生成される。
実施例1の第2の変形例(変形例2)に係るクロック発生回路について図10を用いて説明する。図10は変形例2に係るクロック発生回路の構成を示すブロック図である。変形例2は実施形態2の実施例でもある。
変形例2に係るクロック発生回路11Bはクロック発生回路11に変更回路115Bが追加され、第1のイネーブル生成部(EN)111−1を制御する。変更回路115Bは比較器(CMP)116と演算器(AU)117とオフセットレジスタ(OSR)118とを備える。比較器116は、特に制限はされないものの、周辺回路14に含まれる、電圧、温度などセンサの出力信号(SENSOR OUTPUT)を入力する。これを基準値(REF)と比較器116で比較する。電圧の場合は、第1領域に供給される電圧が、基準値(REF)より低いことを検出する。温度の場合は、基準値(REF)より高いことを検出する。この検出がなされると、比較器116は演算器117に指示して、デューティレジスタ24の内容から、オフセットレジスタ118の値を減算するようにする。これによって、CLK1のパルス数の生成を低減して消費電流を低減するようにする。これによって、電圧の降下や温度の上昇を回復することができる。また、第1領域に供給される電圧が基準値(REF)より高いこと、温度が基準値(REF)より低いことを検出した場合は、比較器116は演算器117に指示して、デューティレジスタ24の内容に、オフセットレジスタ118の値を加算するようにすることもできる。第2のイネーブル生成部(EN)111−2は第1のイネーブル生成部(EN)111−1と同様に変更回路115Bによって制御されることができる。
センサが検出する対象は、割り込み要求信号や割り込み要求信号の要求数などとしてもよい。例えば、割り込み要求信号の要求数が基準値(REF)より大きければ、比較器116は演算器117に指示して、デューティレジスタ24の内容に、オフセットレジスタ118の値を加算して、CLK1のパルス数の生成を増加して、処理性能を上げるようにする。割り込み要求信号の要求数が基準値(REF)より小さければ、比較器116は演算器117に指示して、デューティレジスタ24の内容から、オフセットレジスタ118の値を減算して、消費電力を低減するようにする。
センサが検出する対象としては、割り込みマスクレベルなどを利用することもできるし、DMAコントローラなどのデータ転送装置を内蔵する場合は、この起動要求信号やバス権要求信号などを利用することもできる。また、センサが検出する対象として、SCIなどの通信状態を利用することもできる。これらを組み合わせて利用することもできる。いずれの場合も、処理能力を向上する場合にはクロック信号のパルス数の生成を増加させ、処理能力がさほど必要でない場合はクロック信号のパルス数の生成を低減して、消費電流を低減するようにできる。これをきめ細かく制御することができる。基準値(REF)は、ハードウェアで固定的に生成してもよいし、ソフトウェアで設定可能にしてもよい。
実施例1の第3の変形例(変形例3)に係るクロック発生回路について図11および図12を用いて説明する。図11は変形例3に係るクロック発生回路の構成を示すブロック図である。図12は変形例3に係るクロック発生回路のタイミングを示すタイミング図である。変形例3は実施形態2の実施例でもある。
変形例3に係るクロック発生回路(CPG)11Cはクロック発生回路11に変更回路115Cが追加され、第1のイネーブル生成部(EN)111−1を制御する。変更回路115Cは演算器(AU)117とライトデータレジスタ(WR)119とを備える。ライトデータレジスタ119へライトしたデータは、直接第1のイネーブル生成部111−1のデューティレジスタ24へ転送されず、ライトデータレジスタ119の内容になるまで、第1のイネーブル生成部111−1のデューティレジスタ24の内容を演算器117でインクリメントする。インクリメントは所要の間隔や所要の幅で行うようにする。これにより供給する第1領域の動作用のクロック信号(CLK1)の変化を小さくし、消費電力の変動を小さくすることができる。
例えば、第1領域が停止状態から動作状態に遷移する場合に、動作状態への遷移直後は、第1のイネーブル生成部111−1のデューティレジスタ24の内容を小さく設定し、前記同様にデューティレジスタ24の内容を演算器117でインクリメントするようにすることができる。第1領域が動作状態から停止状態に遷移する場合には、逆にデクリメントを行ってから停止状態に遷移することができる。第2のイネーブル生成部(EN)111−2は第1のイネーブル生成部(EN)111−1と同様に変更回路115Cによって制御されることができる。
例えば、デューティレジスタ24に$00を設定した状態で、ライトデータレジスタ119へ$FFをライトするものとする。この場合、本例においては、ライトデータレジスタの下位6ビット($3F)はそのまま使用し、上位2ビットを演算器117で01ずつインクリメントするようにし、デューティレジスタ24の内容を$00→$3F→$7F→$BF→$FFと変化させる。この変化は、カウンタ21の下位4ビットが0000のときに発生するようにする。クロックイネーブル信号(CKE)のデューティが25%→50%→75%→100%と、各16クロックの時間を持って変化するので、動作電流の急激な変化を抑制することができる。デューティレジスタ24のインクリメントの値や時間間隔は任意に変更することができる。
実施例2に係るマイクロコンピュータ10Dは実施例1に係るマイクロコンピュータ10と周辺回路(IO)を除いて基本的に同じである。マイクロコンピュータ10DはIOを複数単位備えるとともに、例示した第1の周辺回路(IO−1)14−1は、バスインタフェース部(BIF)141−1と周辺機能部(PF)141−2に分割されている。また、第2の周辺回路(IO−2)14−2も、バスインタフェース部(BIF)142−1と周辺機能部(PF)142−2に分割されている。例えば、第1の周辺回路14−1および第2の周辺回路14−2は、それぞれタイマ、SCIとする。タイマの場合、周辺機能部141−2にはカウンタやコンペアレジスタ、比較器などのタイマの機能を含む。SCIの場合、周辺機能部142−2にはデータレジスタやシフトレジスタなどのシリアルコミュニケーションの機能を含む。
マイクロコンピュータ10Dにおいては、第1のイネーブル生成部(EN)111−1のデューティレジスタ24の設定値を、第2のイネーブル生成部(EN)111−2のデューティレジスタ24の設定値以上として使用する。
第1のバスインタフェース部141−1および第2のバスインタフェース部142−1は第1領域とされ、CPU12と同一のクロック信号(CLK1)で動作するようにする。これにより、バスアクセス時のオーバヘッドなく、効率的なリード/ライトを実現できる。
リードは、第1の周辺機能部141−2および第2の周辺機能部142−2に含まれる内部IOレジスタを、第1のバスインタフェース部141−1および第2のバスインタフェース部142−1で選択して内部バス15に出力すればよい。ライトは、内部バス15で与えられたデータを、第2領域のクロックイネーブルに同期して、第1の周辺機能部141−2および第2の周辺機能部142−2に与えればよい。この場合、ライト動作の完了が遅れるので、この完了より早く、次のライトが要求された場合に、不所望に、次のライトが実行できない、あるいは待たされる可能性がある。これに対し、連続したライトの必要性が高ければ、当該内部IOレジスタは第1のバスインタフェース部141−1および第2のバスインタフェース部142−1に含め、CLK1でライトが完了するようにすれば、連続ライトを可能にすることができる。
第1の周辺機能部141−2および第2の周辺機能部142−2は、その機能や使用方法に応じて、第2のイネーブル生成部111−2のデューティレジスタ24を設定し、クロックイネーブル信号(CKE)を低減して低消費電力を実現できる。第1のバスインタフェース部141−1および第2のバスインタフェース部はCLK1で動作するが、その論理規模は、第1の周辺機能部141−2および第2の周辺機能部142−2に比較して十分に小さく、第2のイネーブル生成部111−2のCKEを低減することによる低消費電力の効果を阻害することはない。さらに、第1のバスインタフェース部141−1および第2のバスインタフェース部142−1のクロック信号を、内部バス15の当該IO選択信号で、さらに、イネーブルするようにしてもよい。この場合、バスアクセスと第1のバスインタフェース部141−1および第2のバスインタフェース部142−1は同一のクロック信号であり、バスアクセスが行われないときに、容易にクロックゲーティングを行うことができ、第1のバスインタフェース部141−1および第2のバスインタフェース部142−1の消費電力を低減できる。1つの周辺回路(IO)に対するバスアクセスの頻度は十分に小さいので、周辺回路(IO)全体を第2領域とするよりも、低消費電力を実現できる。
(1)デューティを設定可能にし、このデューティに従って、クロック信号をイネーブルすることによって、性能・消費電力をきめ細かく設定できる。デューティをカウンタと比較することで応答性をよくすることができる。カウンタの重みを反転して比較することで、クロック信号の偏りをなくすことができ、消費電力の変動を小さくすることができる。クロック信号を複数種類供給することによって、マイクロコンピュータの仕様ないし応用動作に即した、設定を行うことができる。複数のクロック信号を切り替えることに比べて、簡単で小規模な回路で実現でき、切り替えのための制御や回路を容易にすることができる。
(2)性能・消費電力をきめ細かい設定が可能であり、マイクロコンピュータを利用したシステムの電源や熱設計を容易にできる。または、電源や熱設計の制約に応じて、性能・消費電力をきめ細かく設定できる。
(3)電圧や温度を検知する回路によって、デューティを制御可能にする。これにより、不所望の誤動作などに到る前に、消費電力を低減することができる。システム設計時のマージンなどを小さくすることができ、システムを効率化することができる。
(4)上記(1)〜(3)の制御を容易にしたり、自動的に実行したりすることによって、ソフトウェアの開発およびそのためのプログラムなどを不要とすることができる。プログラムを削減することによって、消費電力の削減に寄与することができる。
(5)マイクロコンピュータの消費電力が変化する場合に、段階的にデューティを変更することによって、消費電力の変化を緩和することができ、内部または外部の電源設計を容易にしたり、簡略にしたりすることができる。費用の低減に寄与することができる。
(6)複数種類のクロック信号間のインタフェースは、一般的な同期設計とすることができ、インタフェース設計を容易にでき、その構成を簡略にできる。
源クロックの生成方法は任意に変更することができる。複数の発振器を持ち、これらの発振器から源クロック信号を選択可能にすることもできる。
クロック発生回路が複数のクロック信号を生成する場合、複数のイネーブル生成部のカウンタ(CNT)を共通にし、クロック発生回路はカウンタ(CNT)を1つのみ有するようにしてもよい。
カウンタ(CNT)とデューティレジスタ(DR)のビット数なども任意に変更することができる。イネーブル生成部毎にカウンタ(CNT)とデューティレジスタ(DR)のビット数などを変えてもよい。
電圧、温度などセンサの出力に呼応したデータ転送装置のデータ転送によって、デューティレジスタ(DR)を設定するようにすることもできる。
クロックゲーティングの具体的な回路は変更可能であり、クロックの領域の設定やクロックツリーの構造なども任意にすることができる。
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である、シングルチップマイクロコンピュータに適用した場合について説明したが、それに限定されるものではなく、メモリの一部を、マイクロコンピュータの外部に設けるようにしてもよい。その他の半導体装置、例えば、デジタルシグナルプロセッサ(DSP)を中心にした半導体装置も利用可能であり、本発明は少なくとも、クロックに同期した論理構造を持つ半導体装置に適用することができる。
11・・・クロック発生回路(CPG)
12・・・CPU
13・・・メモリ
14・・・周辺回路(IO)
15・・・内部バス
16・・・変更回路
21・・・カウンタ(CNT)
22・・・重み反転回路(WRC)
23・・・比較器(CMP)
24・・・デューティレジスタ(DR)
25・・・アンドゲート
26・・・ラッチ
110・・・発振器(OSC)
111−1・・・第1のイネーブル生成部(EN)
111−2・・・第2のイネーブル生成部(EN)
112−1・・・第1のクロックゲーティング部(CG)
112−2・・・第2のクロックゲーティング部(CG)
113・・・分周選択レジスタ(SEL)
114・・・分周器(DIV)
115B,115C・・・変更回路
Claims (18)
- クロック信号を生成するクロック発生回路と、
前記クロック信号を受けるデータ処理部と、
を備え、
前記クロック発生回路は、
源クロック信号を生成する発振器と、
前記源クロック信号をイネーブルして前記クロック信号を出力する出力回路、
前記データ処理部によって前記イネーブルの割合が設定される設定回路を有る制御回路と、
前記設定回路の内容を変更する変更回路と、
を備え、
前記変更回路は、
前記データ処理部によって(m+n)ビット長の前記設定回路の目標値が設定されるレジスタと、
前記設定回路の内容をインクリメントまたはデクリメントする演算器と、
を備え、
前記演算器は前記レジスタに設定される目標値の下位nビットを固定して、上位mビットを所定値インクリメントまたはデクリメントするようにし、
前記設定回路の値が前記目標値まで段階的に増加または減少するようにされる半導体装置。 - 請求項1の半導体装置において、
前記クロック発生回路と前記データ処理部とに接続されるバスとを備え、
前記変更回路は前記設定回路の内容を前記バス以外から変更可能である半導体装置。 - 請求項2の半導体装置において、
前記半導体装置の状態を検知する検知回路を備え、
前記変更回路は前記検知回路の検知結果に基づいて前記設定回路の内容の加算または減算を行うようにされる半導体装置。 - 請求項3の半導体装置において、
前記検知回路は電圧を検知する半導体装置。 - 請求項3の半導体装置において、
前記検知回路は温度を検知する半導体装置。 - 請求項3の半導体装置において、
前記変更回路は、
前記検知回路の検知結果と所定の基準値とを比較する比較器と、
前記バスを介して前記データ処理部によって設定されるレジスタと、
前記比較器の比較結果に基づいて、前記設定回路の内容に前記レジスタの内容を加算するまたは前記設定回路の内容から前記レジスタの内容を減算する演算器と、
を備える半導体装置。 - 請求項1の半導体装置において、
前記制御回路は、
前記源クロック信号を計数するカウンタと、
前記カウンタの重みを変更する重み反転回路と、
前記重み反転回路の内容と前記設定回路の内容とを比較する比較器と、
を備え、
前記比較器の比較結果に基づいて前記源クロック信号をイネーブルするイネーブル信号を生成するようにされる半導体装置。 - 請求項7の半導体装置において、
前記出力回路は、
前記源クロック信号の反転信号で前記イネーブル信号をラッチするラッチ回路と、
前記源クロック信号と前記ラッチ回路の出力信号とを入力とする論理ゲートと、
を備える半導体装置。 - 第1および第2のクロック信号を生成するクロック発生回路と、
前記第1のクロック信号で動作する第1の領域と、
前記第2のクロック信号で動作する第2の領域と、
を備え、
前記クロック発生回路は、
源クロック信号を生成する発振器と、
第1のデューティを有する第1の制御信号を生成する第1のクロック制御回路と、
前記第1の制御信号に基づいて前記源クロック信号を時間的に部分的許可または禁止
して前記第1のクロック信号を出力することが可能な第1のクロック出力回路と、
前記第1の制御信号の内容を変更する第1の変更回路と、
第2のデューティを有する第2の制御信号を生成する第2のクロック制御回路と、
前記第2の制御信号に基づいて前記源クロック信号を時間的に部分的許可または禁止して前記第2のクロック信号を出力することが可能な第2のクロック出力回路と、
前記第2の制御信号の内容を変更する第2の変更回路と、
を備え、
前記第1及び第2の変更回路は、
(m+n)ビット長の設定回路の目標値が設定されるレジスタと、
前記設定回路の内容をインクリメントまたはデクリメントする演算器と、
を備え、
前記演算器は前記レジスタに設定される目標値の下位nビットを固定して、上位mビットを所定値インクリメントまたはデクリメントするようにし、
前記第1及び第2の制御信号が前記目標値まで段階的に増加または減少するようにされる半導体装置。 - 請求項9の半導体装置において、前記第1および第2の領域はそれぞれ前記源クロック信号の立ち上がりエッジに同期して動作するようにされる半導体装置。
- 請求項10の半導体装置において、
前記第1の領域はCPUを備え、前記第2の領域は周辺回路を備える半導体装置。 - 請求項10の半導体装置において、
前記第1の領域はCPUと周辺回路のバスインタフェース部とを備え、前記第2の領域は前記周辺回路の周辺機能部を備える半導体装置。 - 請求項10の半導体装置において、
前記第1および第2のクロック制御回路は、それぞれ
前記源クロック信号を計数するカウンタと、
前記カウンタの重みを変更する重み反転回路と、
前記第1および第2の制御信号のデューティを保持するレジスタと、
前記重み反転回路の出力と前記レジスタの内容とを比較する比較器と、
を有し、
前記比較器の比較結果に基づいて前記源クロック信号の出力を許可するイネーブル信号を生成するようにされる半導体装置。 - 請求項13の半導体装置において、
前記重み反転回路の値と前記レジスタの値との合計が前記レジスタに設定可能な最大値以上の場合、前記イネーブル信号をアサートするようにされ、
前記重み反転回路の値と前記レジスタの値との合計が前記レジスタに設定可能な最大値より小さい場合、前記イネーブル信号をネゲートするようにされる半導体装置。 - 請求項14の半導体装置において、
前記第1および第2のクロック出力回路は、それぞれ、
前記源クロック信号の反転信号で前記イネーブル信号をラッチするラッチ回路と、
前記源クロック信号と前記ラッチ回路の出力信号とを入力とする論理ゲートと、
を備える半導体装置。 - 請求項13の半導体装置において、
前記レジスタの内容はCPUによって設定可能とされる半導体装置。 - 請求項13の半導体装置において、
前記クロック発生回路とCPUとに接続されるバスとを備え、
前記クロック発生回路は前記レジスタの内容を前記バス以外から変更可能な変更回路を備える半導体装置。 - 請求項17の半導体装置において、
前記変更回路によって前記レジスタの内容を加算または減算を行うようにされる半導体装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015099812A JP6441166B2 (ja) | 2015-05-15 | 2015-05-15 | 半導体装置 |
US15/079,324 US10359829B2 (en) | 2015-05-15 | 2016-03-24 | Semiconductor device for generating a clock by partially enabling or disabling a source clock signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015099812A JP6441166B2 (ja) | 2015-05-15 | 2015-05-15 | 半導体装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016218545A JP2016218545A (ja) | 2016-12-22 |
JP2016218545A5 JP2016218545A5 (ja) | 2018-01-18 |
JP6441166B2 true JP6441166B2 (ja) | 2018-12-19 |
Family
ID=57276986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015099812A Active JP6441166B2 (ja) | 2015-05-15 | 2015-05-15 | 半導体装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10359829B2 (ja) |
JP (1) | JP6441166B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114512079A (zh) * | 2020-11-16 | 2022-05-17 | 群创光电股份有限公司 | 电子装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6407595B1 (en) * | 2000-04-04 | 2002-06-18 | Silicon Integrated Systems Corp. | Digital clock throttling means |
US20020087904A1 (en) * | 2000-12-28 | 2002-07-04 | Zhong-Ning (George) Cai | Method and apparatus for thermal sensitivity based dynamic power control |
JP2004013820A (ja) * | 2002-06-11 | 2004-01-15 | Matsushita Electric Ind Co Ltd | クロック制御回路 |
JP3862715B2 (ja) * | 2004-06-01 | 2006-12-27 | 株式会社ソニー・コンピュータエンタテインメント | タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム |
GB2450564B (en) * | 2007-06-29 | 2011-03-02 | Imagination Tech Ltd | Clock frequency adjustment for semi-conductor devices |
WO2010010515A1 (en) * | 2008-07-23 | 2010-01-28 | Nxp B.V. | Adjustment of a processor frequency |
US8135976B2 (en) * | 2008-12-17 | 2012-03-13 | Lsi Corporation | Modulated clock, an IC including the modulated clock and a method of providing a modulated clock signal for power control |
GB2466300B (en) * | 2008-12-19 | 2013-05-15 | Advanced Risc Mach Ltd | Control of clock gating |
JP5414479B2 (ja) * | 2009-11-27 | 2014-02-12 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US8671380B2 (en) * | 2011-07-18 | 2014-03-11 | Apple Inc. | Dynamic frequency control using coarse clock gating |
EP3480679A1 (en) * | 2011-09-06 | 2019-05-08 | Telefonaktiebolaget LM Ericsson (publ) | Regulating the activity of a core |
US8638151B2 (en) * | 2011-09-29 | 2014-01-28 | Microchip Technology Incorporated | Variable frequency ratiometric multiphase pulse width modulation generation |
US8769332B2 (en) * | 2012-01-20 | 2014-07-01 | Apple Inc. | Regional clock gating and dithering |
US10275010B2 (en) * | 2014-02-21 | 2019-04-30 | Mediatek Singapore Pte. Ltd. | Fast and Autonomous mechanism for CPU OC protection |
JP6268020B2 (ja) * | 2014-03-26 | 2018-01-24 | ラピスセミコンダクタ株式会社 | クロック生成方法および半導体装置 |
US9582027B2 (en) * | 2014-06-09 | 2017-02-28 | Qualcomm Incorporated | Clock swallowing device for reducing voltage noise |
-
2015
- 2015-05-15 JP JP2015099812A patent/JP6441166B2/ja active Active
-
2016
- 2016-03-24 US US15/079,324 patent/US10359829B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10359829B2 (en) | 2019-07-23 |
JP2016218545A (ja) | 2016-12-22 |
US20160334831A1 (en) | 2016-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3964472B2 (ja) | クロック制御装置 | |
KR100265218B1 (ko) | 마이크로프로세서 2곱하기(2배) 코어 설계 | |
US5805923A (en) | Configurable power management system having a clock stabilization filter that can be enabled or bypassed depending upon whether a crystal or can oscillator is used | |
US8769332B2 (en) | Regional clock gating and dithering | |
US7149909B2 (en) | Power management for an integrated graphics device | |
US5925133A (en) | Integrated processor system adapted for portable personal information devices | |
JP3919246B2 (ja) | マルチプレクサ、集積プロセッサ、および信号マルチプレクサ | |
JP5542180B2 (ja) | 粗クロックゲーティングを用いた動的周波数制御 | |
JP2013122759A (ja) | 機能ブロックを含むSoCのクロック制御方法、それを具現したSoC、及びそれを含む半導体システム | |
JPS62166419A (ja) | 多周波クロック発生装置 | |
US11755096B2 (en) | Method and apparatus for selectable high performance or low power processor system | |
US7290158B2 (en) | Method of controlling data transfer within a semiconductor integrated circuit based on a clock sync control signal | |
US11942953B2 (en) | Droop detection and control of digital frequency-locked loop | |
TWI782457B (zh) | 非整數除頻器以及快閃記憶體控制器 | |
JP6118827B2 (ja) | 高分解能パルス幅変調器 | |
JP6441166B2 (ja) | 半導体装置 | |
US6735707B1 (en) | Hardware architecture for a multi-mode power management system using a constant time reference for operating system support | |
US20170257109A1 (en) | Apparatus for Data Converter with Internal Trigger Circuitry and Associated Methods | |
JP3701100B2 (ja) | クロック生成回路及びクロック生成方法 | |
US20240106438A1 (en) | Droop detection and control of digital frequency-locked loop | |
JP3789448B2 (ja) | システムリソースプリスケーラを搭載したマイクロコントローラ | |
EP4454138A1 (en) | Droop detection and control of digital frequency-locked loop | |
CN117980853A (zh) | 同步的多处理器操作系统计时器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171128 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171128 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180619 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180906 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181121 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6441166 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |