(57)【要約】【課題】正常な動作を維持しつつ十分な低消費電力化を図る。【解決手段】  実施形態の半導体装置は、所定のソースクロックで動作する回路中の所定のデータパス内に設けられタイミング余裕度に応じた出力を発生するパスモニタ回路と、前記パスモニタ回路の出力に基づいて前記回路で用いる電源電圧を設定する電源電圧制御回路と、前記パスモニタ回路の出力により得られる前記電源電圧が所定の閾値よりも低下したことの検出結果に基づいて、前記ソースクロックを分周したクロックを前記回路に供給するクロック生成回路と、を具備する。【選択図】図１
2020155975.tif 000002
【特許請求の範囲】
【請求項１】
所定のソースクロックで動作する回路中の所定のデータパス内に設けられタイミング余裕度に応じた出力を発生するパスモニタ回路と、
前記パスモニタ回路の出力に基づいて前記回路で用いる電源電圧を設定する電源電圧制御回路と、
前記パスモニタ回路の出力により得られる前記電源電圧が所定の閾値よりも低下したことの検出結果に基づいて、前記ソースクロックを分周したクロックを前記回路に供給するクロック生成回路と、
を具備する半導体装置。
【請求項２】
前記パスモニタ回路は、カナリアフリップフロップを含む
請求項１に記載の半導体装置。
【請求項３】
前記カナリアフリップフロップに発生する疑似タイミングエラーに基づいて、前記電源電圧が所定の閾値よりも低下したことを示す検出結果を得ると、前記クロック生成回路に前記ソースクロックを分周させるクロック制御部
を更に具備する請求項２に記載の半導体装置。
【請求項４】
前記カナリアフリップフロップは、遅延量の調整機能を有している
請求項２に記載の半導体装置。
【請求項５】
前記カナリアフリップフロップ遅延量を調整することで、前記パスモニタ回路を最もタイミング余裕度が小さいワーストパスに設けたことと等価にするパスモニタ制御部
を更に具備する請求項４に記載の半導体装置。
【請求項６】
前記電源電圧制御回路は、遅延量の調整機能を有する前記カナリアフリップフロップに疑似タイミングエラーが発生するときの出力電圧に基づいて前記電源電圧を設定する
請求項５に記載の半導体装置。
【請求項７】
前記クロック生成回路は、パルスマスク型分周器によって構成される
請求項１に記載の半導体装置。
【請求項８】
前記カナリアフリップフロップに発生する疑似タイミングエラーに基づいて、前記電源電圧が所定の閾値よりも低下したことを示す検出結果を得ると、前記クロック生成回路に前記ソースクロックのパルスマスク制御を有効にするクロック制御部
を更に具備する請求項７に記載の半導体装置。
【請求項９】
前記パルスマスク型分周器は、前記パルスマスク制御の指示が発生した次のサイクルで前記ソースクロックをパルスマスクする
請求項８に記載の半導体装置。
【請求項１０】
前記クロック制御部は、前記クロック生成回路に前記ソースクロックを分周させる制御を行った所定時間後に前記ソースクロックの分周制御を解除する
請求項３に記載の半導体装置。
【請求項１１】
前記パスモニタ回路中の前記カナリアフリップフロップについては、ソースクロックを用いて動作させ、
前記クロック制御部は、前記クロック生成回路に前記ソースクロックを分周させる制御を行った後、前記カナリアフリップフロップに発生する疑似タイミングエラーが解消された後、前記ソースクロックの分周制御を解除する
請求項３に記載の半導体装置。
【請求項１２】
前記パスモニタ回路中に、ソースクロックで動作するエラー解除用の前記カナリアフリップフロップを更に設け、
前記クロック制御部は、前記クロック生成回路に前記ソースクロックを分周させる制御を行った後、前記エラー解除用のカナリアフリップフロップに発生する疑似タイミングエラーが解消された後、前記ソースクロックの分周制御を解除する
請求項３に記載の半導体装置。
【請求項１３】
所定のソースクロックで動作する回路中の所定のデータパス内に設けられたタイミング余裕度に応じた出力を発生するパスモニタ回路の出力に基づいて前記回路で用いる電源電圧を設定し、
前記パスモニタ回路の出力により得られる前記電源電圧が所定の閾値よりも低下したことの検出結果に基づいて、前記ソースクロックを分周したクロックを前記回路に供給する
半導体装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体装置及び半導体装置の制御方法に関する。
【背景技術】
【０００２】
半導体装置への低消費電力化要求を受けて電源電圧を制御する手法の検討が進んでいる。半導体装置の電源電圧は半導体装置の動作速度に影響を与えるので、トランジスタの特性を考慮しながら低電圧化が図られる。しかし、製造プロセスの微細化に伴い、トランジスタのばらつき要因は増えており、トランジスタの特性は大きく変動する。
【０００３】
そこで、製造ばらつきや温度変動等を考慮し、対象回路が正常に動作する範囲内で電源電圧を下げて消費電力削減を図るＡＶＳ(Adaptive Voltage Scaling)という手法が採用される。しかしながら、電流のドループ等により急激な電源電圧の低下が生じた場合等に対応できず、十分に消費電力を低下させることができない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−３００６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
実施形態は、正常な動作を維持しつつ十分な低消費電力化を図ることができる半導体装置及び半導体装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
実施形態の半導体装置は、所定のソースクロックで動作する回路中の所定のデータパス内に設けられタイミング余裕度に応じた出力を発生するパスモニタ回路と、前記パスモニタ回路の出力に基づいて前記回路で用いる電源電圧を設定する電源電圧制御回路と、前記パスモニタ回路の出力により得られる前記電源電圧が所定の閾値よりも低下したことの検出結果に基づいて、前記ソースクロックを分周したクロックを前記回路に供給するクロック生成回路と、を具備する。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１の実施の形態に係る半導体装置を示すブロック図。
【図２】図１中の監視対象パス９ａ及びパスモニタ回路９ｂの具体的な構成の一例を示す回路図。
【図３】図１の一部を抽出してクロック生成回路４及びボルテージ・ドメインＶＤの構成例を示すブロック図。
【図４】図１の一部を抽出してタイミングエラーの回避に係る回路構成を示すブロック図。
【図５】第１の実施の形態の動作を説明するためのフローチャート。
【図６】第１の実施の形態の動作を説明するためのタイミングチャート。
【図７】本発明の第２の実施の形態を示すブロック図。
【図８】第２の実施の形態の動作を説明するためのフローチャート。
【図９】第２の実施の形態の動作を説明するためのタイミングチャート。
【図１０】本発明の第３の実施の形態を示すブロック図。
【図１１】第３の実施の形態の動作を説明するためのタイミングチャート。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
【０００９】
（第１の実施の形態）
図１は本発明の第１の実施の形態に係る半導体装置を示すブロック図である。本実施の形態は、遅延調整機能付きのカナリアフリップフロップ（ＦＦ）を用いてタイミング余裕度を求めて電源電圧を決定すると共に、パルスマスク型分周器を用いて誤動作を回避することにより、正常な動作を維持しつつ十分な低消費電力化を図ることを可能にするものである。
【００１０】
（従来のＡＶＳの課題）
ＡＶＳでは、半導体装置の製造ばらつきに応じた電圧制御（ＡＶＳ制御）を行う。半導体装置は、ウェハ毎、チップ毎、チップ内において素子にばらつきがあり、ある規定の電源電圧を印加した場合に、通常の想定された速度で動作するトランジスタ以外に、想定された速度よりも高速に動作するトランジスタ（以下、高速トランジスタという）と、想定された速度よりも低速に動作するトランジスタ（以下、低速トランジスタという）とが存在する。
【００１１】
低消費電力化の観点からは、トランジスタを低電圧駆動した方が好ましい。高速トランジスタについては、低電圧駆動した場合でも、想定した速度を得ることができる。ＡＶＳでは、このようなばらつきを考慮して電源電圧を制御する。なお、低速トランジスタについては、低電圧駆動をした場合に、誤動作を引き起こす可能性があるため、電源電圧を下げ低消費電力化を図る制御はできない。
【００１２】
ＡＶＳでは、回路のばらつきや劣化影響等のチップの特性を表すＰＳＲＯ（performance screen ring oscillator）を採用して、タイミング余裕度を求める。なお、タイミング余裕度は、半導体装置内の各部の動作時間と設計により予め定められた制約時間との間の時間的な余裕の度合いを示す。ＡＶＳでは、タイミングの余裕度を最小限にして、正常な動作が可能な限界の電圧まで電源電圧を低下させる制御を行うことで、十分な低消費電力化の効果を得る。なお、ＡＶＳでは、ＰＳＲＯにより求めたタイミング余裕度に応じて、一時的に電源電圧を変化させることで、実使用時におけるエラーについても回避する。
【００１３】
しかしながら、ＰＳＲＯによるタイミング余裕度の計測には、所定の周波数測定期間が必要である。このため、ノイズ等の何らかの要因により急激な電圧変動が発生した場合には、タイミング余裕度を計測して電圧制御を行う前にタイミングエラーが発生する虞がある。従って、ＡＶＳでは、タイミングエラーを確実に回避するためには、タイミング余裕度の計測に必要な時間に相当する電圧マージンを電源電圧制御時に追加する必要があり、十分に消費電力を低下させることができない。
【００１４】
（構成）
図１において、半導体装置１には、複数のボルテージ・ドメインＶＤ１，ＶＤ２，…ＶＤｎ（ｎは自然数）（以下、これらを区別する必要がない場合にはボルテージ・ドメインＶＤという）が設けられている。ボルテージ・ドメインＶＤは、同一の電源電圧で動作する区画を示しており、ボルテージ・ドメインＶＤ内には、図示しないフリップフロップ（以下、ＦＦという）を含む複数の素子が構成される。ボルテージ・ドメインＶＤに供給する電圧は、ＡＶＳ管理システム３によって制御される。
【００１５】
半導体装置１にはＣＰＵ２が設けられている。ＣＰＵ２は半導体装置１の各部を制御するものであり、バス７を介してＡＶＳ管理システム３に接続される。ＡＶＳ管理システム３は、シーケンサ３ａ、パスモニタ制御部３ｂ、パルスマスク制御部３ｃ及びレジスタ３ｄにより構成されており、バススレーブインターフェースを実装する。
【００１６】
シーケンサ３ａは、例えば、プログラマブルハードウェアシーケンサ等により構成されており、電力制御シーケンスを実行する。例えば、シーケンサ３ａは、図示しない外部メモリからプログラムをダウンロードして電力制御シーケンスを実行するものであってもよい。
【００１７】
パスモニタ制御部３ｂは、シーケンサ３ａに制御されて、後述する監視対象パス９ａ中のパスモニタ回路９ｂに対して遅延量制御信号を供給すると共に、パスモニタ回路９ｂからのエラーフラグを受信する。パルスマスク制御部３ｃは、パスモニタ回路９ｂからエラーフラグを受信すると共に、受信したエラーフラグに基づいて、分周制御信号であるパルスマスク制御信号をクロック生成回路４に出力する。レジスタ３ｄは、パスモニタ制御部３ｂ及びパルスマスク制御部３ｃによる設定値を記憶する。
【００１８】
シーケンサ３ａは、電力制御シーケンスに従って電圧制御信号を発生して、この電圧制御信号をＩ／Ｏ６を介して電力管理ＩＣ８に出力する。Ｉ／Ｏ６としては、ＧＰＩＯ（General-purpose input/output）、Ｉ２Ｃ（Inter-Integrated Circuit）、ＳＰＩ（Serial Peripheral Interface）等を採用することができる。
【００１９】
電力管理ＩＣ８は、Ｉ／Ｏ６を介してＣＰＵ２により制御される。電力管理ＩＣ８は、図示しないバッテリ等から電力が供給され、ＡＶＳ管理システム３からの電圧制御信号に従って、所定の電源電圧を発生するようになっている。この電源電圧が半導体装置１に供給される。また、半導体装置１にはレギュレータ５が設けられており、レギュレータ５は、ＡＶＳ管理システム３に制御されて、電力管理ＩＣ８から供給された電源電圧に基づいて所定の電圧の電源電圧を発生することができるようになっている。なお、レギュレータ５としては、ＬＤＯ（Low Dropout）レギュレータやＤＣ／ＤＣコンバータ等を採用してもよい。
【００２０】
半導体装置１にはクロック生成回路４が設けられている。本実施の形態においては、クロック生成回路４として後述するパルスマスク型分周器４ａを採用する。クロック生成回路４は、半導体装置１の各ボルテージ・ドメインＶＤを含む各部において用いるクロックを生成するようになっている。
【００２１】
（タイミング余裕度の計測）
本実施の形態においては、急激な電源電圧の変動を想定しない通常時の使用状態（以下、通常使用状態という）において消費電力を低減するために、通常使用状態におけるタイミング余裕度を求める。先ず、公知のＳＴＡ（static analysis（静的タイミング解析））を採用して、ボルテージ・ドメインＶＤ内の各ＦＦ間の複数のデータパスにおいて、制約条件を満足するか否かのタイミングチェックを行う。ＳＴＡは、設計段階においてタイミングチェックを行うものであり、本実施の形態においては、最もタイミング余裕度が小さいと考えられるワーストパスの候補を抽出する。
【００２２】
本実施の形態においては、ＳＴＡによる検証の結果、ワーストパスの候補として抽出されたデータパスを監視対象パス９ａに設定し、当該監視対象パス９ａに遅延調整機能付きのカナリアＦＦによるパスモニタ回路９ｂを設ける。なお、ワーストパスの候補の抽出には、ＳＴＡ以外の手法を採用してもよい。
【００２３】
図２は図１中の監視対象パス９ａ及びパスモニタ回路９ｂの具体的な構成の一例を示す回路図である。監視対象パス９ａは、ＦＦ１２及び図示しないデータパス１３の外に、パスモニタ回路９ｂを構成する遅延調整機能付きのカナリアＦＦ１１及びＥＸＯＲ回路１４を含んでいる。なお、ＯＲ回路１５は、複数のパスモニタ回路９ｂからの後述するエラーフラグをまとめてＡＶＳ管理システム３に出力するためのものであり、必要に応じてボルテージ・ドメインＶＤ内に設けられる。各パスモニタ回路９ｂがエラーフラグを直接ＡＶＳ管理システム３に出力する場合には、ＯＲ回路１５は不要である。
【００２４】
遅延調整機能付きのカナリアＦＦ１１は、ＦＦ１１ａ，１１ｂ及び遅延回路１１ｃにより構成される。ＦＦ１２，１１ａ，１１ｂには共通のクロック（後述するマスククロック）が供給される。これらのＦＦ１２，１１ａ，１１ｂはクロックタイミングで入力を取り込んで出力する。ＦＦ１２の出力は、データパス１３を経由して、遅延調整機能付きのカナリアＦＦ１１のＦＦ１１ａに入力されると共に、遅延回路１１ｃを介してＦＦ１１ｂに入力される。ＦＦ１１ａの出力が本来使用されるシステムパスに供給される。即ち、通常のシステムパスは、ＦＦ１２、データパス１３及びＦＦ１１ａにより構成され、遅延回路１１ｃ及びＦＦ１１ｂは、システムパスのタイミングエラーを検出するためのレプリカパスを構成する。遅延回路１１ｃは、ＡＶＳ管理システム３のパスモニタ制御部３ｂからの遅延量制御信号によって遅延量が制御されるようになっている。
【００２５】
ＥＸＯＲ回路１４は、ＦＦ１１ａ，１１ｂの出力の排他的論理和を求めてエラーフラグとして出力する。ＦＦ１１ａ，１１ｂにおいてタイミングエラーが発生していない場合には、ＦＦ１１ａ，１１ｂの出力は同一論理となる。従って、この場合には、ＥＸＯＲ回路１４の出力は“０”となる。ＦＦ１１ｂにはＦＦ１１ａに入力される信号が遅延回路１１ｃによって遅延されて入力される。この結果、ＦＦ１１ｂにおけるタイミング余裕は遅延量の分だけ小さくなり、タイミングエラーが発生しそうになる状況下では、ＦＦ１１ａにおいてタイミングエラーが発生する前に必ずＦＦ１１ｂにおいてタイミングエラーが発生する。ＦＦ１１ｂのみにタイミングエラーが発生すると、ＦＦ１１ａ，１１ｂの出力の論理は相互に異なることになり、ＥＸＯＲ回路１４の出力は“１”となる。
【００２６】
なお、ＦＦ１１ｂにおいてタイミングエラーが発生したとしても、本来のデータを伝送するＦＦ１１ａにタイミングエラーが発生している訳ではないので、以下、ＦＦ１１ｂに発生するタイミングエラーを疑似タイミングエラーというものとする。
【００２７】
即ち、ＥＸＯＲ回路１４の出力(パスモニタ回路９ｂの出力)は、疑似タイミングエラーの発生により、ＦＦ１１ａにタイミングエラーが発生する前に“１”となる。ＥＸＯＲ回路１４の出力はＯＲ回路１５に供給される。ＯＲ回路１５には、各パスモニタ回路９ｂのＥＸＯＲ回路１４の出力が与えられる。ＯＲ回路１５は、いずれかのパスモニタ回路９ｂから“１”が出力されると、“１”のエラーフラグ、即ち、疑似タイミングエラーが発生したことを示すエラーフラグを出力する。つまり、ＯＲ回路１５は、いずれかの監視対象パス９ａにおいてタイミングエラーが発生しそうになる前に、疑似タイミングエラーの発生を示すエラーフラグを出力する。各ボルテージ・ドメインＶＤのパスモニタ回路９ｂからのエラーフラグは、直接又はＯＲ回路１５を介してパスモニタ制御部３ｂ及びパルスマスク制御部３ｃに供給される。
【００２８】
疑似タイミングエラーの発生を示す“１”のエラーフラグの発生タイミングは、遅延回路１１ｃの遅延量によって変化する。遅延回路１１ｃの遅延量が０の場合には、ＦＦ１１ｂの疑似タイミングエラーの発生と同時にＦＦ１１ａにおいてもタイミングエラーが発生する。遅延回路１１ｃの遅延量が大きくなると、ＦＦ１１ａにおいてタイミングエラーが発生するタイミングよりも遅延量の分だけ疑似タイミングエラーが発生するタイミングが早くなる。従って、“１”のエラーフラグを発生させるパスモニタ回路９ｂ中の遅延回路１１ｃの遅延量により、ＦＦ１１ａにおけるタイミング余裕度を求めることができる。
【００２９】
半導体装置１の全てのデータパスに遅延調整機能付きのカナリアＦＦ１１によるパスモニタ回路９ｂを設けた場合には、上述したＳＴＡによるワーストパスの候補抽出を行うことなく、タイミング余裕度を求めることができる。しかしながら、遅延調整機能付きのカナリアＦＦ１１は、レプリカパスを実装するので、ＦＦの個数が倍となり、ボルテージ・ドメインＶＤのサイズが増大する。
【００３０】
そこで、本実施の形態においては、ボルテージ・ドメインＶＤの面積の増大を抑制するために、上述したように、最もタイミング余裕度が小さいと考えられるワーストパスの候補をＳＴＡにより複数抽出し、このワーストパスの候補を監視対象パス９ａとして監視対象パス９ａのみに遅延調整機能付きのカナリアＦＦ１１を含むパスモニタ９ｂを実装するようになっている。
【００３１】
また、ＳＴＡにより抽出したワーストパスの候補は設計段階で求めたものであり、実チップにおけるワーストパスとは異なることが考えられる。そこで、本実施の形態においては、チップ製造後に電源電圧を低下させながら評価を行い、監視対象パス９ａ以外のパスにおいてタイミングエラーが発生するか否かを判定する。そして、監視対象パス９ａ以外のパスにおいてタイミングエラーが発生した場合には、パスモニタ制御部３ｂは、遅延量制御信号を出力して、監視対象パス９ａ中の遅延調整機能付きのカナリアＦＦ１１の遅延回路１１ｃの遅延量を大きくし、必ず監視対象パス９ａにおいて最初に疑似タイミングエラーを発生させる。
【００３２】
このように、パスモニタ制御部３ｂにより遅延回路１１ｃの遅延量を調整することによって、監視対象パス９ａを等価的にワーストパスとみなしてタイミング余裕度を求めることが可能となる。ＡＶＳ管理システム３は、パスモニタ制御部３ｂにより遅延回路１１ｃの遅延量を動的に調整して、疑似タイミングエラーが必ず監視対象パス９ａにおいて最初に発生するように設定した後、電圧制御信号により各ボルテージ・ドメインＶＤに供給する電源電圧を低下させる。ＡＶＳ管理システム３は、電源電圧を徐々に低下させながら疑似タイミングエラーの発生を監視し、疑似タイミングエラーが発生する直前の電圧を求める。ＡＶＳ管理システム３は、この電圧をタイミングエラーが発生せず、且つ消費電力を最も低減できる電圧（以下、最適電源電圧という）として設定する。なお、ＡＶＳ管理システム３は、最適電源電圧を疑似タイミングエラーが発生しない最低の電圧であるものと説明したが、不確定要素や電圧変動を考慮して所定のマージンを設定し、遅延回路の遅延量を決定してもよい。即ち、最適電源電圧は、通常使用状態においてタイミングエラーの回避を保証できる最低の電圧に設定する。
【００３３】
また、監視対象パス９ａは、ボルテージ・ドメインＶＤ内のばらつきを考慮して、各ボルテージ・ドメインＶＤ内に複数設ける例を示したが、ボルテージ・ドメインＶＤ内に１つの監視対象パス９ａのみを設けるようになっていてもよい。なお、ＡＶＳ管理システム３による電圧制御（ＡＶＳ制御）は、ボルテージ・ドメインＶＤ毎に行われ、最適電源電圧もボルテージ・ドメインＶＤ毎に設定される。
【００３４】
（タイミングエラーの回避）
上述したように、遅延調整機能付きのカナリアＦＦ１１によるパスモニタ回路９ｂは、タイミング余裕度を検出し最適電源電圧を求めるために用いられる。更に、本実施の形態においては、パスモニタ回路９ｂはタイミングエラー回避のためにも用いられる。遅延調整機能付きのカナリアＦＦ１１によるパスモニタ回路９ｂは、タイミングエラーが生じるであろう電圧低下を、実際にタイミングエラーが発生する前に、疑似タイミングエラーにより高速に検出することができる。しかし、電力管理ＩＣ８やレギュレータ５による電圧制御では、電源電圧を増加させるまでに比較的長い時間を用し、電源電圧が十分に上昇する前にタイミングエラーが発生してしまう虞がある。
【００３５】
そこで、本実施の形態においては、クロック生成回路４を分周器により構成し、疑似タイミングエラーを発生させる電圧低下（以下、異常電圧低下ともいう）を検出すると、クロック周波数を低下させることでエラーを回避するようになっている。特に、クロック生成回路４をパルスマスク型分周器４ａにより構成した場合には、異常電圧低下の検出後の次のサイクルからクロック周波数を低下させることができ、確実なタイミングエラーの回避が可能である。即ち、クロック生成回路４は、最適電源電圧での通常使用状態において、パスモニタ回路９ｂから疑似タイミングエラーを示すエラーフラグが発生すると、クロック生成回路４を制御してクロック周波数を低下させる。
【００３６】
図３は図１の一部を抽出してクロック生成回路４及びボルテージ・ドメインＶＤの構成例を示すブロック図である。図３の例は、複数のボルテージ・ドメインＶＤのうちの１つのボルテージ・ドメインＶＤのみを示しており、クロック生成回路４からは、ボルテージ・ドメインＶＤ毎に各ボルテージ・ドメインＶＤに対応したクロック（マスククロック）が供給される。
【００３７】
ＡＶＳ管理システム３は、電力管理ＩＣ８に電圧制御信号を与えて、発生させる電圧を制御する。電力管理ＩＣ８は、電源電圧ＶＤＤＣを発生して半導体装置１に与える。また、電力管理ＩＣ８は、電圧制御信号に基づいて、各ボルテージ・ドメインＶＤ用に設定された電源電圧ＶＤＤＣ＿ＡＶＳを発生して、各ボルテージ・ドメインＶＤに供給する。
【００３８】
図３の例では、クロック生成回路４は、ＰＬＬ２１、分周器２２及びパルスマスクディバイダ２３により構成される。ＰＬＬ２１は、入力されたクロックに同期したクロックを分周器２２に出力する。分周器２２はＰＬＬ２１の出力を分周してソースクロックを出力する。このソースクロックがパルスマスクディバイダ２３及びＡＶＳ管理システム３に供給される。
【００３９】
上述したように、ＡＶＳ管理システム３は、パスモニタ回路９ｂにより検出したタイミング余裕度に基づいて、電源電圧ＶＤＤＣ＿ＡＶＳとして最適電源電圧を発生させるように電力管理ＩＣ８を制御する。最適電源電圧での通常使用状態において、パスモニタ回路９ｂは、タイミングエラー回避のための異常電圧低下を監視する。即ち、パスモニタ回路９ｂは、異常電圧低下が発生すると、疑似タイミングエラーの発生を示すエラーフラグを出力し、直接又はＯＲ回路１５を介してＡＶＳ管理システム３のパルスマスク制御部３ｃに供給する。
【００４０】
クロック制御部としてのパルスマスク制御部３ｃは、パルスマスクディバイダ２３にパルスマスク制御信号を供給してクロックの発生を制御する。異常電圧低下が発生すると、パルスマスクディバイダ２３は、パルスマスク制御信号に基づいて、ソースクロックを所定周期でマスクすることによりソースクロックを分周する。なお、分周周期が予め規定されている場合には、パルスマスク制御信号としてパルスマスクイネーブル信号をパルスマスクディバイダ２３に供給するようにしてもよい。パルスマスクディバイダ２３は、パルスマスク制御信号が入力された次のサイクルからソースクロックを分周して得たマスククロックを発生する。なお、パルスマスク制御部３ｃからのパルスマスク制御信号によってパルスマスクが指示されていない場合（パルスマスクイネーブル信号が非アクティブの場合）には、マスククロックはソースクロックと同一クロックとなる。
【００４１】
図４は図１の一部を抽出してタイミングエラーの回避に係る回路構成を示すブロック図である。
【００４２】
パスモニタ制御部３ｂは、遅延量制御信号を遅延回路１１ｃに与えて、遅延回路１１ｃの遅延量を決定する。上述したように、遅延回路１１ｃの遅延量は、監視対象パス９ａをワーストパスとみなす値に設定される。この状態で、ＡＶＳ管理システム３により、通常使用状態においてタイミングエラーを回避できる最低の電源電圧である最適電源電圧が設定される。
【００４３】
最適電源電圧での通常使用状態において、異常電圧低下が発生すると、パスモニタ回路９ｂは、疑似タイミングエラーの発生を示すエラーフラグを出力してパルスマスク制御部３ｃに供給する。パルスマスク制御部３ｃは、エラーフラグが入力されると、パルスマスクイネーブル信号（パルスマスク制御信号）をパルスマスクディバイダ２３に出力する。
【００４４】
図４の例では、パルスマスクディバイダ２３は、ラッチ回路２３ａ及びＡＮＤ回路２３ｂにより構成されている。ラッチ回路２３ａはソースクロックのタイミングでパルスマスクイネーブル信号をラッチしてＡＮＤ回路２３ｂに出力する。ＡＮＤ回路２３ｂは、ソースクロックも与えられており、パルスマスクイネーブル信号のハイレベル期間にのみソースクロックを出力する。即ち、パルスマスクディバイダ２３により、ソースクロックが所定周期でマスクされることになり、ソースクロックは分周される。即ち、パルスマスクディバイダ２３は、ソースクロックの１クロックでパルスマスクイネーブル信号をラッチすることで分周を開始し、短時間にクロック周波数を低下させることができる。
【００４５】
なお、図４の監視対象パス９ａは、図４のボルテージ・ドメインＶＤ内に構成されたものであり、マスククロックによって、タイミングエラーの発生は回避される。
【００４６】
次に、このように構成された実施の形態の動作について図５及び図６を参照して説明する。図５は実施の形態の動作を説明するためのフローチャートであり、図６は実施の形態の動作を説明するためのタイミングチャートである。なお、図５のAVＳ制御シーケンスは一例であり、他の制御手順を採用してもよい。
【００４７】
本実施の形態においては、半導体装置１の製造段階において、例えばＳＴＡにより抽出したワーストパスの候補を監視対象パス９ａに設定し、監視対象パス９ａにパスモニタ回路９ｂが構成されているものとする。ＣＰＵ２は、図５のステップＳ１において、ＡＶＳ管理システム３に対してＡＶＳ制御を開始させる。これにより、ＡＶＳ管理システム３のシーケンサ３ａが動作を開始、初期設定が行われる（ステップＳ２）。
【００４８】
この初期設定では、パスモニタ回路９ｂ内の遅延回路１１ｃの遅延量の設定が行われる。ＡＶＳ管理システム３のパスモニタ制御部３ｂは、半導体装置１内のボルテージ・ドメインＶＤ毎に、各データパスにおいて発生するタイミングエラーのうちパスモニタ回路９ｂにおいて最も早く疑似タイミングエラーが発生するように、遅延回路１１ｃの遅延量の設定を行う。また、ＡＶＳ管理システム３は、パルスマスク数についての設定を行う。これらの設定値はレジスタ３ｄに格納される。
【００４９】
次に、ＡＶＳ管理システム３は、ステップＳ３〜Ｓ５において、最適電源電圧を設定する。即ち、ＡＶＳ管理システム３は、電圧制御信号を発生して、電力管理ＩＣ８により各ボルテージ・ドメインＶＤに供給する電源電圧ＶＤＤＣ＿ＡＶＳを所定値に設定する。この状態で、パスモニタ制御部３ｂは、疑似タイミングエラーの発生を示すエラーフラグが発生するか否かを判定する（ステップＳ３）。なお、この判定は、ボルテージ・ドメインＶＤ毎に行われる。
【００５０】
エラーフラグが発生しない場合には、シーケンサ３ａは、ステップＳ４において、電源電圧ＶＤＤＣ＿ＡＶＳを１段階下げるように制御する。この状態で、パスモニタ制御部３ｂは、疑似タイミングエラーの発生を示すエラーフラグが発生するか否かを判定する（ステップＳ３）。以後、同様の動作が繰り返され、エラーフラグが発生するまで電源電圧ＶＤＤＣ＿ＡＶＳが１段階ずつ低下される。
【００５１】
疑似タイミングエラーの発生を示すエラーフラグが発生すると、シーケンサ３ａは、電源電圧ＶＤＤＣ＿ＡＶＳを疑似タイミングエラーが発生していない１段階前の状態に戻し、この電圧を最適電源電圧とする（ステップＳ５）。この最適電源電圧は、ボルテージ・ドメインＶＤ毎に設定される。以後、ＡＶＳ管理システム３は、通常使用状態においてこの最適電源電圧により各ボルテージ・ドメインＶＤを駆動する。
【００５２】
遅延調整機能付きのカナリアＦＦ１１を用いたパスモニタ回路９ｂを採用し遅延量を調整することによって、ボルテージ・ドメインＶＤ毎のタイミング余裕度を求めて、これに応じて最適電源電圧を設定している。遅延調整機能付きのカナリアＦＦ１１の遅延量の調整により、通常使用状態においてタイミングエラーを回避できる最低の電源電圧に設定可能であり、装置の低消費電力化の実現が可能である。
【００５３】
この最適電源電圧による通常使用状態において、急激な電圧低下が発生する可能性がある。そこで、この場合においてもタイミングエラーを回避するために、遅延調整機能付きのカナリアＦＦ１１を用いたパスモニタ回路９ｂからの疑似タイミングエラーの発生を監視する。
【００５４】
ＡＶＳ管理システム３は、ステップＳ５において、エラー監視設定を行う。なお、ＡＶＳ管理システム３は、必要に応じて、パスモニタ回路９ｂの遅延回路１１ｃの遅延量を調整してもよい。ＡＶＳ管理システム３は、クロック生成回路４を構成するパルスマスクディバイダ２３のパルスマスク機能を有効にする。パルスマスク制御部３ｃは、ステップＳ６において、各パスモニタ回路９ｂからのエラーフラグを監視する。
【００５５】
いま、ここで、最適電源電圧である電源電圧ＶＤＤＣ＿ＡＶＳが何らかの理由により急激に低下するものとする。図６のＶＤＤＣ＿ＡＶＳはこの状態を示している。図６のソースクロックは、クロック生成回路４の分周器２２から出力されるソースクロックを示しており、通常使用状態においては、パルスマスクディバイダ２３はパルスマスク動作しておらず、パルスマスクディバイダ２３からのマスククロックはソースクロックと同一クロックである。
【００５６】
電源電圧ＶＤＤＣ＿ＡＶＳが低下すると、ボルテージ・ドメインＶＤの各部の動作速度が低下し、ＦＦのタイミング余裕度は低下する。この場合でも、各ボルテージ・ドメインＶＤにおいて、ワーストパスとみなされる監視対象パス９ａのパスモニタ回路９ｂにおいて最初に疑似タイミングエラーが発生する。図６の丸印はこのタイミングを示しており、電源電圧ＶＤＤＣ＿ＡＶＳが所定の電圧値（図６の丸印）まで低下すると、ボルテージ・ドメインＶＤ内のいずれかのパスモニタ回路９ｂによって疑似タイミングエラーの発生を示すエラーフラグが発生する。
【００５７】
そうすると、ステップＳ６から処理がステップＳ７に移行してクロックパルスマスク制御が行われる。即ち、パルスマスク制御部３ｃは、図６に示すように、エラーフラグの発生によってハイレベルのパルスマスクイネーブル信号を発生する。このパルスマスクイネーブル信号は、クロック生成回路４のパルスマスクディバイダ２３のラッチ回路２３ａに供給され、この結果、次のソースクロックの入力タイミングで、ソースクロックがマスクされて、図６のマスククロックがＡＮＤ回路２３ｂから出力される。
【００５８】
このマスククロックがエラーフラグを発生したパスモニタ回路９ｂが属するボルテージ・ドメインＶＤに供給される。図６に示すように、マスククロックはソースクロックに比べて周波数が低下しており、このマスククロックが供給されたボルテージ・ドメインＶＤにおいては、タイミング余裕度が大きくなり、その結果タイミングエラーが回避される。
【００５９】
なお、図６の例は、クロックのパルスを２サイクルに１回マスクしたものである。マスクパターンはこれに限らない。なお、通常、クロック周期が２倍になるとタイミングエラーは発生しないので、クロックパルスを２サイクルに１回マスクすることで、タイミングエラーの回避が可能であると考えられる。
【００６０】
こうして、パスモニタ回路９ｂにおいて疑似タイミングエラーが解消され、エラーフラグは疑似タイミングエラーが発生していないことを示すローレベルに変化する。ボルテージ・ドメインＶＤ内の全てのＦＦは、タイミングエラーが発生することはない。なお、疑似タイミングエラーについても発生しなくなる。
【００６１】
パルスマスク制御部３ｃは、ステップＳ８において、電源電圧が最適電源電圧に復帰するまで所定時間待機した後、図６に示すように、パルスマスクイネーブル信号を非アクティブとする（ステップＳ９）。この結果、マスククロックは、ソースクックと同じクロックに戻る。ＡＶＳ管理システム３は、ステップＳ９からステップＳ６に処理を戻してエラーフラグの監視を続ける。なお、この時点でまだ電源電圧が図６の丸印の電圧値よりも低い場合には、再び疑似タイミングエラーが発生するので、ステップＳ７〜Ｓ９の処理が繰り返されて、タイミングエラーの発生が回避される。
【００６２】
クロックパルスのマスクによってタイミングエラーを回避しており、最適電源電圧の設定を変更している訳ではないので、電源電圧が最適電源電圧に戻ることによって、直ちに最適電源電圧による通常使用状態での動作に復帰することができる。従って、従来技術のように電源電圧に所定のマージンを加えることで誤動作を回避する制御に比べて、十分に低い電圧で長時間動作させることができ、消費電力のより大きな低減効果を得ることができる。
【００６３】
ＡＶＳ管理システム３は、ＣＰＵ２からＡＶＳ制御の終了指示を受けると、処理を終了する。
【００６４】
このように本実施の形態においては、タイミング余裕度の計測のために遅延調整機能付きカナリアＦＦを用いたパスモニタを採用する。そして、求めたタイミング余裕に応じて、エラーを回避しつつ消費電力を十分に低減できる最適電源電圧を決定する。これにより、十分な消費電力の低減が可能である。また、タイミングエラーが発生しそうになる異常電圧低下を遅延調整機能付きのカナリアＦＦを利用して検出しており、タイミングエラーの発生前に異常電圧低下を検出可能である。更に、異常電圧低下を検出すると、クロックを分周することでタイミングエラーの発生を防止しており、異常電圧低下によりタイミングエラーが発生する前に確実にタイミングエラーの発生を阻止することができる。従って、タイミングエラーの回避のために、最適電源電圧にマージンを加える必要がなく、十分に低い最適電源電圧の設定が可能であり、消費電力の十分な低減が可能である。
【００６５】
（第２の実施の形態)
図７は本発明の第２の実施の形態を示すブロック図である。図７において図４と同一の構成要素には同一符号を付して説明を省略する。第１の実施の形態においては、ソースクロックをマスクしてマスククロックを生成する期間（パルスマスク期間)は、図５のステップＳ８における所定時間であった。このため、パルスマスク期間の設定によっては、パルスマスク期間の終了後においても異常電圧低下が生じている場合や最適電源電圧に復帰してもパルスマスク期間が終了していないことがあった。そこで、本実施の形態は異常電圧低下が解消されて、最適電源電圧に復帰することによってパルスマスク期間を終了させるものである。
【００６６】
本実施の形態は、図７に示すように、パスモニタ回路９ｂ中の遅延調整機能付きのカナリアＦＦ１１を構成するＦＦ１１ｂにマスククロックではなくソースクロックを与える点が第１の実施の形態と異なるのみである。ＦＦ１１ｂは、ソースクロックのタイミングで遅延回路１１ｃの出力を取り込んでＥＸＯＲ回路１４に出力する。
【００６７】
次に、このように構成された実施の形態の動作について図８及び図９を参照して説明する。図８は実施の形態の動作を説明するためのフローチャートであり、図９は動作を説明するためのタイミングチャートである。なお、図８のAV制御シーケンスは一例であり、他の制御手順を採用してもよい。
【００６８】
図８に示すように、ステップＳ１〜Ｓ７の手順は図５の第１の実施の形態と同様である。即ち、最適電源電圧である電源電圧ＶＤＤＣ＿ＡＶＳが何らかの理由により急激に低下すると、ワーストパスとみなされる監視対象パス９ａのパスモニタ回路９ｂにおいて最初に疑似タイミングエラーが発生する。図９の丸印はこのタイミングを示しており、電源電圧ＶＤＤＣ＿ＡＶＳが所定の電圧値（図９の丸印）まで低下すると、ボルテージ・ドメインＶＤ内のいずれかのパスモニタ回路９ｂによって疑似タイミングエラーの発生を示すエラーフラグが発生する。これにより、ステップＳ７においてクロックパルスマスク制御が行われ、パルスマスク制御部３ｃは、ハイレベルのパルスマスクイネーブル信号を発生する。こうして、図９のマスククロックがパルスマスクディバイダ２３から出力されて、エラーフラグを発生したパスモニタ回路９ｂが属するボルテージ・ドメインＶＤに供給される。
【００６９】
本実施の形態においては、遅延調整機能付きのカナリアＦＦ１１を構成するＦＦ１１ｂは、マスククロックでなくソースクロックで動作する。従って、ＦＦ１１ｂでは、異常電圧低下が終了して図９の丸印より高い最適電源電圧に復帰するまで疑似タイミングエラーが発生したままとなる。従って、ソースクロックを分周したマスククロックが発生した後においても、疑似タイミングエラーの発生を示すエラーフラグが出力され続ける。
【００７０】
パスモニタ制御部３ｂは、ステップＳ１１において、エラーが解消したか否かを判定しており、疑似タイミングエラーが解消された後、パルスマスクイネーブルを非アクティブにする（ステップＳ９）。なお、遅延調整機能付きのカナリアＦＦ１１を構成するＦＦ１１ｂ以外の素子にはソースクロックを分周したマスククロックが供給されることから、ボルテージ・ドメインＶＤにおいてタイミングエラーが発生することはない。
【００７１】
ボルテージ・ドメインＶＤに供給される電源電圧が通常使用状態における最適電源電圧に復帰すると、疑似タイミングエラーは解消されて、マスククロックは元のソースクロックと同一となる。
【００７２】
このように本実施の形態においても、第１の実施の形態と同様の効果を得ることができる。また、遅延調整機能付きのカナリアＦＦを構成する疑似タイミングエラー検出用のＦＦにソースクロックを供給しており、疑似タイミングエラーの解消を確認した後に、元のソースクロックに戻す制御が可能となる。
【００７３】
（第３の実施の形態)
図１０は本発明の第３の実施の形態を示すブロック図である。図１０において図４と同一の構成には同一符号を付して説明を省略する。本実施の形態は、第２の実施の形態と同様に、異常電圧低下が解消されて、最適電源電圧に復帰後にパルスマスク期間を終了させるものである。
【００７４】
本実施の形態は、図１０に示すように、エラー解消確認カナリアＦＦ１１Ｒ及びＥＸＯＲ回路１４Ｒを付加した点が第１の実施の形態と異なるのみである。ＦＦ１１Ｒにはソースクロックを与え、ＦＦ１１Ｒは、ソースクロックのタイミングで遅延回路１１ｃの出力を取り込んでＥＸＯＲ回路１４Ｒに出力する。ＥＸＯＲ回路１４Ｒは、ＦＦ１１ａ，１１Ｒの出力の排他的論理和を求めてエラーが解消したか否かを示すリゾルブフラグを発生してパルスマスク制御部３ｃに出力するようになっている。
【００７５】
本実施の形態においては、パルスマスク制御部３ｃは、リゾルブフラグによってパルスマスク期間を終了させるようになっている。
【００７６】
次に、このように構成された実施の形態の動作について図１１を参照して説明する。図１１は動作を説明するためのタイミングチャートである。本実施の形態においても図８のフローチャートが実行される。
【００７７】
即ち、本実施の形態は、エラーからの復帰の手順が第２の実施の形態と異なるのみである。遅延調整機能付きのカナリアＦＦ１１を構成するＦＦ１１ｂにはマスククロックが供給されており、図１１に示すように、ソースクロックを分周したマスククロックが発生することによって、疑似タイミングエラーは解消される。一方、エラー解消確認カナリアＦＦ１１Ｒには、ソースクロックが供給される。従って、ソースクロックを分周したマスククロックが発生したとしても、異常電圧低下が生じている期間においては、ＦＦ１１Ｒに疑似タイミングエラーが発生し、ＥＸＯＲ回路１４Ｒからのリゾルブフラグは、図１１に示すように、疑似タイミングエラーが発生していることを示すハイレベルとなっている。
【００７８】
ＥＸＯＲ回路１４Ｒからのリゾルブフラグは、図１１に示すように、異常電圧低下が終了して図１１の丸印より高い最適電源電圧に復帰するまで疑似タイミングエラーの発生を示すハイレベルのままである。このため、各ボルテージ・ドメインＶＤに供給される電源電圧が通常使用状態における最適電源電圧に復帰するまで、パルスマスク期間は継続され、ボルテージ・ドメインＶＤ内の全てのＦＦにおいて、タイミングエラーは発生しない。
【００７９】
電源電圧が通常使用状態における最適電源電圧に復帰すると、ＦＦ１１Ｒの疑似タイミングエラーは解消され、リゾルブフラグはローレベルとなる。これにより、パルスマスク制御部３ｃは、パルスマスク期間を終了させ、マスククロックをソースクロックと同一のクロックに戻す。
【００８０】
このように本実施の形態においても、第２の実施の形態と同様の効果を得ることができる。
【００８１】
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【００８２】
１…半導体装置、２…ＣＰＵ、３…ＡＶＳ管理システム、３ａ…シーケンサ、３ｂ…パスモニタ制御部、３ｃ…パルスマスク制御部、３ｄ…レジスタ、４…クロック生成回路、４ａ…パルスマスク型分周器、５…レギュレータ、６…Ｉ／Ｏ、７…バス、８…電力管理ＩＣ、９ａ…監視対象パス、９ｂ…パスモニタ回路、１１…遅延調整機能付きのカナリアＦＦ、１１ａ…ＦＦ、１１ｂ…ＦＦ、１１ｃ…遅延回路、１２…ＦＦ、１４…ＥＸＯＲ回路、２１…ＰＬＬ、２２…分周器、２３…パルスマスクディバイダ、ＶＤ…ボルテージ・ドメイン。
【図１】
2020155975.tif 000003
【図２】
2020155975.tif 000004
【図３】
2020155975.tif 000005
【図４】
2020155975.tif 000006
【図５】
2020155975.tif 000007
【図６】
2020155975.tif 000008
【図７】
2020155975.tif 000009
【図８】
2020155975.tif 000010
【図９】
2020155975.tif 000011
【図１０】
2020155975.tif 000012
【図１１】
2020155975.tif 000013