IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝デバイス&ストレージ株式会社の特許一覧

<>
  • 特許-半導体装置及び半導体装置の制御方法 図1
  • 特許-半導体装置及び半導体装置の制御方法 図2
  • 特許-半導体装置及び半導体装置の制御方法 図3
  • 特許-半導体装置及び半導体装置の制御方法 図4
  • 特許-半導体装置及び半導体装置の制御方法 図5
  • 特許-半導体装置及び半導体装置の制御方法 図6
  • 特許-半導体装置及び半導体装置の制御方法 図7
  • 特許-半導体装置及び半導体装置の制御方法 図8
  • 特許-半導体装置及び半導体装置の制御方法 図9
  • 特許-半導体装置及び半導体装置の制御方法 図10
  • 特許-半導体装置及び半導体装置の制御方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-08
(45)【発行日】2023-12-18
(54)【発明の名称】半導体装置及び半導体装置の制御方法
(51)【国際特許分類】
   H03K 19/00 20060101AFI20231211BHJP
   H03K 21/00 20060101ALI20231211BHJP
   G06F 1/324 20190101ALI20231211BHJP
   G06F 1/3206 20190101ALI20231211BHJP
【FI】
H03K19/00 210
H03K21/00 Z
H03K19/00 108
G06F1/324
G06F1/3206
【請求項の数】 8
(21)【出願番号】P 2019053650
(22)【出願日】2019-03-20
(65)【公開番号】P2020155975
(43)【公開日】2020-09-24
【審査請求日】2021-09-08
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】317011920
【氏名又は名称】東芝デバイス&ストレージ株式会社
(74)【代理人】
【識別番号】110002907
【氏名又は名称】弁理士法人イトーシン国際特許事務所
(72)【発明者】
【氏名】神谷 智史
(72)【発明者】
【氏名】徳江 達也
【審査官】志津木 康
(56)【参考文献】
【文献】米国特許出願公開第2016/0349316(US,A1)
【文献】特開2008-311767(JP,A)
【文献】特開2005-214732(JP,A)
【文献】特開2009-200739(JP,A)
【文献】特開2017-028085(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F1/26-1/3296
H03K19/00-19/096
H03K21/00-21/40
(57)【特許請求の範囲】
【請求項1】
カナリアフリップフロップを含み、所定のソースクロックで動作する回路中の所定のデータパス内に設けられタイミング余裕度に応じた出力である疑似タイミングエラーを発生するパスモニタ回路と、
前記パスモニタ回路からの前記疑似タイミングエラーに基づいて前記回路で用いる通常使用状態の電源電圧を設定する電源電圧制御回路と、
パルスマスク型分周器を含み、パルスマスク制御信号が入力されると前記パルスマスク制御信号が入力された次のサイクルから前記ソースクロックを分周したクロックを前記回路に供給可能なクロック生成回路と、
前記ソースクロックが供給され、前記カナリアフリップフロップからの前記疑似タイミングエラーを受信すると、前記クロック生成回路に前記パルスマスク制御信号を与えて前記ソースクロックを分周させるクロック制御部と、
を具備する半導体装置。
【請求項2】
前記カナリアフリップフロップは、遅延量を動的に調整する機能を有している
請求項1に記載の半導体装置。
【請求項3】
前記カナリアフリップフロップの遅延量を調整することで、前記パスモニタ回路を最もタイミング余裕度が小さいワーストパスに設けたことと等価にするパスモニタ制御部
を更に具備する請求項2に記載の半導体装置。
【請求項4】
前記電源電圧制御回路は、遅延量の調整機能を有する前記カナリアフリップフロップに疑似タイミングエラーが発生するときの出力電圧に基づいて前記電源電圧を設定する
請求項1に記載の半導体装置。
【請求項5】
前記クロック制御部は、前記クロック生成回路に前記ソースクロックのパルスマスク制御を有効にする
請求項1に記載の半導体装置。
【請求項6】
前記パルスマスク型分周器は、前記パルスマスク制御の指示が発生した次のサイクルで前記ソースクロックをパルスマスクする
請求項1に記載の半導体装置。
【請求項7】
前記クロック制御部は、前記クロック生成回路に前記ソースクロックを分周させる制御を行った所定時間後に前記ソースクロックの分周制御を解除する
請求項1に記載の半導体装置。
【請求項8】
前記パスモニタ回路中の前記カナリアフリップフロップについては、ソースクロックを用いて動作させ、
前記クロック制御部は、前記クロック生成回路に前記ソースクロックを分周させる制御を行った後、前記カナリアフリップフロップに発生する疑似タイミングエラーが解消された後、前記ソースクロックの分周制御を解除する
請求項1に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、半導体装置及び半導体装置の制御方法に関する。
【背景技術】
【0002】
半導体装置への低消費電力化要求を受けて電源電圧を制御する手法の検討が進んでいる。半導体装置の電源電圧は半導体装置の動作速度に影響を与えるので、トランジスタの特性を考慮しながら低電圧化が図られる。しかし、製造プロセスの微細化に伴い、トランジスタのばらつき要因は増えており、トランジスタの特性は大きく変動する。
【0003】
そこで、製造ばらつきや温度変動等を考慮し、対象回路が正常に動作する範囲内で電源電圧を下げて消費電力削減を図るAVS(Adaptive Voltage Scaling)という手法が採用される。しかしながら、電流のドループ等により急激な電源電圧の低下が生じた場合等に対応できず、十分に消費電力を低下させることができない。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2011-30066号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
実施形態は、正常な動作を維持しつつ十分な低消費電力化を図ることができる半導体装置及び半導体装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
実施形態の半導体装置は、カナリアフリップフロップを含み、所定のソースクロックで動作する回路中の所定のデータパス内に設けられタイミング余裕度に応じた出力である疑似タイミングエラーを発生するパスモニタ回路と、前記パスモニタ回路からの前記疑似タイミングエラーに基づいて前記回路で用いる通常使用状態の電源電圧を設定する電源電圧制御回路と、パルスマスク型分周器を含み、パルスマスク制御信号が入力されると前記パルスマスク制御信号が入力された次のサイクルから前記ソースクロックを分周したクロックを前記回路に供給可能なクロック生成回路と、前記ソースクロックが供給され、前記カナリアフリップフロップからの前記疑似タイミングエラーを受信すると、前記クロック生成回路に前記パルスマスク制御信号を与えて前記ソースクロックを分周させるクロック制御部と、を具備する。
【図面の簡単な説明】
【0007】
図1】本発明の第1の実施の形態に係る半導体装置を示すブロック図。
図2図1中の監視対象パス9a及びパスモニタ回路9bの具体的な構成の一例を示す回路図。
図3図1の一部を抽出してクロック生成回路4及びボルテージ・ドメインVDの構成例を示すブロック図。
図4図1の一部を抽出してタイミングエラーの回避に係る回路構成を示すブロック図。
図5】第1の実施の形態の動作を説明するためのフローチャート。
図6】第1の実施の形態の動作を説明するためのタイミングチャート。
図7】本発明の第2の実施の形態を示すブロック図。
図8】第2の実施の形態の動作を説明するためのフローチャート。
図9】第2の実施の形態の動作を説明するためのタイミングチャート。
図10】本発明の第3の実施の形態を示すブロック図。
図11】第3の実施の形態の動作を説明するためのタイミングチャート。
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
【0009】
(第1の実施の形態)
図1は本発明の第1の実施の形態に係る半導体装置を示すブロック図である。本実施の形態は、遅延調整機能付きのカナリアフリップフロップ(FF)を用いてタイミング余裕度を求めて電源電圧を決定すると共に、パルスマスク型分周器を用いて誤動作を回避することにより、正常な動作を維持しつつ十分な低消費電力化を図ることを可能にするものである。
【0010】
(従来のAVSの課題)
AVSでは、半導体装置の製造ばらつきに応じた電圧制御(AVS制御)を行う。半導体装置は、ウェハ毎、チップ毎、チップ内において素子にばらつきがあり、ある規定の電源電圧を印加した場合に、通常の想定された速度で動作するトランジスタ以外に、想定された速度よりも高速に動作するトランジスタ(以下、高速トランジスタという)と、想定された速度よりも低速に動作するトランジスタ(以下、低速トランジスタという)とが存在する。
【0011】
低消費電力化の観点からは、トランジスタを低電圧駆動した方が好ましい。高速トランジスタについては、低電圧駆動した場合でも、想定した速度を得ることができる。AVSでは、このようなばらつきを考慮して電源電圧を制御する。なお、低速トランジスタについては、低電圧駆動をした場合に、誤動作を引き起こす可能性があるため、電源電圧を下げ低消費電力化を図る制御はできない。
【0012】
AVSでは、回路のばらつきや劣化影響等のチップの特性を表すPSRO(performance screen ring oscillator)を採用して、タイミング余裕度を求める。なお、タイミング余裕度は、半導体装置内の各部の動作時間と設計により予め定められた制約時間との間の時間的な余裕の度合いを示す。AVSでは、タイミングの余裕度を最小限にして、正常な動作が可能な限界の電圧まで電源電圧を低下させる制御を行うことで、十分な低消費電力化の効果を得る。なお、AVSでは、PSROにより求めたタイミング余裕度に応じて、一時的に電源電圧を変化させることで、実使用時におけるエラーについても回避する。
【0013】
しかしながら、PSROによるタイミング余裕度の計測には、所定の周波数測定期間が必要である。このため、ノイズ等の何らかの要因により急激な電圧変動が発生した場合には、タイミング余裕度を計測して電圧制御を行う前にタイミングエラーが発生する虞がある。従って、AVSでは、タイミングエラーを確実に回避するためには、タイミング余裕度の計測に必要な時間に相当する電圧マージンを電源電圧制御時に追加する必要があり、十分に消費電力を低下させることができない。
【0014】
(構成)
図1において、半導体装置1には、複数のボルテージ・ドメインVD1,VD2,…VDn(nは自然数)(以下、これらを区別する必要がない場合にはボルテージ・ドメインVDという)が設けられている。ボルテージ・ドメインVDは、同一の電源電圧で動作する区画を示しており、ボルテージ・ドメインVD内には、図示しないフリップフロップ(以下、FFという)を含む複数の素子が構成される。ボルテージ・ドメインVDに供給する電圧は、AVS管理システム3によって制御される。
【0015】
半導体装置1にはCPU2が設けられている。CPU2は半導体装置1の各部を制御するものであり、バス7を介してAVS管理システム3に接続される。AVS管理システム3は、シーケンサ3a、パスモニタ制御部3b、パルスマスク制御部3c及びレジスタ3dにより構成されており、バススレーブインターフェースを実装する。
【0016】
シーケンサ3aは、例えば、プログラマブルハードウェアシーケンサ等により構成されており、電力制御シーケンスを実行する。例えば、シーケンサ3aは、図示しない外部メモリからプログラムをダウンロードして電力制御シーケンスを実行するものであってもよい。
【0017】
パスモニタ制御部3bは、シーケンサ3aに制御されて、後述する監視対象パス9a中のパスモニタ回路9bに対して遅延量制御信号を供給すると共に、パスモニタ回路9bからのエラーフラグを受信する。パルスマスク制御部3cは、パスモニタ回路9bからエラーフラグを受信すると共に、受信したエラーフラグに基づいて、分周制御信号であるパルスマスク制御信号をクロック生成回路4に出力する。レジスタ3dは、パスモニタ制御部3b及びパルスマスク制御部3cによる設定値を記憶する。
【0018】
シーケンサ3aは、電力制御シーケンスに従って電圧制御信号を発生して、この電圧制御信号をI/O6を介して電力管理IC8に出力する。I/O6としては、GPIO(General-purpose input/output)、I2C(Inter-Integrated Circuit)、SPI(Serial Peripheral Interface)等を採用することができる。
【0019】
電力管理IC8は、I/O6を介してCPU2により制御される。電力管理IC8は、図示しないバッテリ等から電力が供給され、AVS管理システム3からの電圧制御信号に従って、所定の電源電圧を発生するようになっている。この電源電圧が半導体装置1に供給される。また、半導体装置1にはレギュレータ5が設けられており、レギュレータ5は、AVS管理システム3に制御されて、電力管理IC8から供給された電源電圧に基づいて所定の電圧の電源電圧を発生することができるようになっている。なお、レギュレータ5としては、LDO(Low Dropout)レギュレータやDC/DCコンバータ等を採用してもよい。
【0020】
半導体装置1にはクロック生成回路4が設けられている。本実施の形態においては、クロック生成回路4として後述するパルスマスク型分周器4aを採用する。クロック生成回路4は、半導体装置1の各ボルテージ・ドメインVDを含む各部において用いるクロックを生成するようになっている。
【0021】
(タイミング余裕度の計測)
本実施の形態においては、急激な電源電圧の変動を想定しない通常時の使用状態(以下、通常使用状態という)において消費電力を低減するために、通常使用状態におけるタイミング余裕度を求める。先ず、公知のSTA(static analysis(静的タイミング解析))を採用して、ボルテージ・ドメインVD内の各FF間の複数のデータパスにおいて、制約条件を満足するか否かのタイミングチェックを行う。STAは、設計段階においてタイミングチェックを行うものであり、本実施の形態においては、最もタイミング余裕度が小さいと考えられるワーストパスの候補を抽出する。
【0022】
本実施の形態においては、STAによる検証の結果、ワーストパスの候補として抽出されたデータパスを監視対象パス9aに設定し、当該監視対象パス9aに遅延調整機能付きのカナリアFFによるパスモニタ回路9bを設ける。なお、ワーストパスの候補の抽出には、STA以外の手法を採用してもよい。
【0023】
図2図1中の監視対象パス9a及びパスモニタ回路9bの具体的な構成の一例を示す回路図である。監視対象パス9aは、FF12及び図示しないデータパス13の外に、パスモニタ回路9bを構成する遅延調整機能付きのカナリアFF11及びEXOR回路14を含んでいる。なお、OR回路15は、複数のパスモニタ回路9bからの後述するエラーフラグをまとめてAVS管理システム3に出力するためのものであり、必要に応じてボルテージ・ドメインVD内に設けられる。各パスモニタ回路9bがエラーフラグを直接AVS管理システム3に出力する場合には、OR回路15は不要である。
【0024】
遅延調整機能付きのカナリアFF11は、FF11a,11b及び遅延回路11cにより構成される。FF12,11a,11bには共通のクロック(後述するマスククロック)が供給される。これらのFF12,11a,11bはクロックタイミングで入力を取り込んで出力する。FF12の出力は、データパス13を経由して、遅延調整機能付きのカナリアFF11のFF11aに入力されると共に、遅延回路11cを介してFF11bに入力される。FF11aの出力が本来使用されるシステムパスに供給される。即ち、通常のシステムパスは、FF12、データパス13及びFF11aにより構成され、遅延回路11c及びFF11bは、システムパスのタイミングエラーを検出するためのレプリカパスを構成する。遅延回路11cは、AVS管理システム3のパスモニタ制御部3bからの遅延量制御信号によって遅延量が制御されるようになっている。
【0025】
EXOR回路14は、FF11a,11bの出力の排他的論理和を求めてエラーフラグとして出力する。FF11a,11bにおいてタイミングエラーが発生していない場合には、FF11a,11bの出力は同一論理となる。従って、この場合には、EXOR回路14の出力は“0”となる。FF11bにはFF11aに入力される信号が遅延回路11cによって遅延されて入力される。この結果、FF11bにおけるタイミング余裕は遅延量の分だけ小さくなり、タイミングエラーが発生しそうになる状況下では、FF11aにおいてタイミングエラーが発生する前に必ずFF11bにおいてタイミングエラーが発生する。FF11bのみにタイミングエラーが発生すると、FF11a,11bの出力の論理は相互に異なることになり、EXOR回路14の出力は“1”となる。
【0026】
なお、FF11bにおいてタイミングエラーが発生したとしても、本来のデータを伝送するFF11aにタイミングエラーが発生している訳ではないので、以下、FF11bに発生するタイミングエラーを疑似タイミングエラーというものとする。
【0027】
即ち、EXOR回路14の出力(パスモニタ回路9bの出力)は、疑似タイミングエラーの発生により、FF11aにタイミングエラーが発生する前に“1”となる。EXOR回路14の出力はOR回路15に供給される。OR回路15には、各パスモニタ回路9bのEXOR回路14の出力が与えられる。OR回路15は、いずれかのパスモニタ回路9bから“1”が出力されると、“1”のエラーフラグ、即ち、疑似タイミングエラーが発生したことを示すエラーフラグを出力する。つまり、OR回路15は、いずれかの監視対象パス9aにおいてタイミングエラーが発生しそうになる前に、疑似タイミングエラーの発生を示すエラーフラグを出力する。各ボルテージ・ドメインVDのパスモニタ回路9bからのエラーフラグは、直接又はOR回路15を介してパスモニタ制御部3b及びパルスマスク制御部3cに供給される。
【0028】
疑似タイミングエラーの発生を示す“1”のエラーフラグの発生タイミングは、遅延回路11cの遅延量によって変化する。遅延回路11cの遅延量が0の場合には、FF11bの疑似タイミングエラーの発生と同時にFF11aにおいてもタイミングエラーが発生する。遅延回路11cの遅延量が大きくなると、FF11aにおいてタイミングエラーが発生するタイミングよりも遅延量の分だけ疑似タイミングエラーが発生するタイミングが早くなる。従って、“1”のエラーフラグを発生させるパスモニタ回路9b中の遅延回路11cの遅延量により、FF11aにおけるタイミング余裕度を求めることができる。
【0029】
半導体装置1の全てのデータパスに遅延調整機能付きのカナリアFF11によるパスモニタ回路9bを設けた場合には、上述したSTAによるワーストパスの候補抽出を行うことなく、タイミング余裕度を求めることができる。しかしながら、遅延調整機能付きのカナリアFF11は、レプリカパスを実装するので、FFの個数が倍となり、ボルテージ・ドメインVDのサイズが増大する。
【0030】
そこで、本実施の形態においては、ボルテージ・ドメインVDの面積の増大を抑制するために、上述したように、最もタイミング余裕度が小さいと考えられるワーストパスの候補をSTAにより複数抽出し、このワーストパスの候補を監視対象パス9aとして監視対象パス9aのみに遅延調整機能付きのカナリアFF11を含むパスモニタ9bを実装するようになっている。
【0031】
また、STAにより抽出したワーストパスの候補は設計段階で求めたものであり、実チップにおけるワーストパスとは異なることが考えられる。そこで、本実施の形態においては、チップ製造後に電源電圧を低下させながら評価を行い、監視対象パス9a以外のパスにおいてタイミングエラーが発生するか否かを判定する。そして、監視対象パス9a以外のパスにおいてタイミングエラーが発生した場合には、パスモニタ制御部3bは、遅延量制御信号を出力して、監視対象パス9a中の遅延調整機能付きのカナリアFF11の遅延回路11cの遅延量を大きくし、必ず監視対象パス9aにおいて最初に疑似タイミングエラーを発生させる。
【0032】
このように、パスモニタ制御部3bにより遅延回路11cの遅延量を調整することによって、監視対象パス9aを等価的にワーストパスとみなしてタイミング余裕度を求めることが可能となる。AVS管理システム3は、パスモニタ制御部3bにより遅延回路11cの遅延量を動的に調整して、疑似タイミングエラーが必ず監視対象パス9aにおいて最初に発生するように設定した後、電圧制御信号により各ボルテージ・ドメインVDに供給する電源電圧を低下させる。AVS管理システム3は、電源電圧を徐々に低下させながら疑似タイミングエラーの発生を監視し、疑似タイミングエラーが発生する直前の電圧を求める。AVS管理システム3は、この電圧をタイミングエラーが発生せず、且つ消費電力を最も低減できる電圧(以下、最適電源電圧という)として設定する。なお、AVS管理システム3は、最適電源電圧を疑似タイミングエラーが発生しない最低の電圧であるものと説明したが、不確定要素や電圧変動を考慮して所定のマージンを設定し、遅延回路の遅延量を決定してもよい。即ち、最適電源電圧は、通常使用状態においてタイミングエラーの回避を保証できる最低の電圧に設定する。
【0033】
また、監視対象パス9aは、ボルテージ・ドメインVD内のばらつきを考慮して、各ボルテージ・ドメインVD内に複数設ける例を示したが、ボルテージ・ドメインVD内に1つの監視対象パス9aのみを設けるようになっていてもよい。なお、AVS管理システム3による電圧制御(AVS制御)は、ボルテージ・ドメインVD毎に行われ、最適電源電圧もボルテージ・ドメインVD毎に設定される。
【0034】
(タイミングエラーの回避)
上述したように、遅延調整機能付きのカナリアFF11によるパスモニタ回路9bは、タイミング余裕度を検出し最適電源電圧を求めるために用いられる。更に、本実施の形態においては、パスモニタ回路9bはタイミングエラー回避のためにも用いられる。遅延調整機能付きのカナリアFF11によるパスモニタ回路9bは、タイミングエラーが生じるであろう電圧低下を、実際にタイミングエラーが発生する前に、疑似タイミングエラーにより高速に検出することができる。しかし、電力管理IC8やレギュレータ5による電圧制御では、電源電圧を増加させるまでに比較的長い時間を用し、電源電圧が十分に上昇する前にタイミングエラーが発生してしまう虞がある。
【0035】
そこで、本実施の形態においては、クロック生成回路4を分周器により構成し、疑似タイミングエラーを発生させる電圧低下(以下、異常電圧低下ともいう)を検出すると、クロック周波数を低下させることでエラーを回避するようになっている。特に、クロック生成回路4をパルスマスク型分周器4aにより構成した場合には、異常電圧低下の検出後の次のサイクルからクロック周波数を低下させることができ、確実なタイミングエラーの回避が可能である。即ち、クロック生成回路4は、最適電源電圧での通常使用状態において、パスモニタ回路9bから疑似タイミングエラーを示すエラーフラグが発生すると、クロック生成回路4を制御してクロック周波数を低下させる。
【0036】
図3図1の一部を抽出してクロック生成回路4及びボルテージ・ドメインVDの構成例を示すブロック図である。図3の例は、複数のボルテージ・ドメインVDのうちの1つのボルテージ・ドメインVDのみを示しており、クロック生成回路4からは、ボルテージ・ドメインVD毎に各ボルテージ・ドメインVDに対応したクロック(マスククロック)が供給される。
【0037】
AVS管理システム3は、電力管理IC8に電圧制御信号を与えて、発生させる電圧を制御する。電力管理IC8は、電源電圧VDDCを発生して半導体装置1に与える。また、電力管理IC8は、電圧制御信号に基づいて、各ボルテージ・ドメインVD用に設定された電源電圧VDDC_AVSを発生して、各ボルテージ・ドメインVDに供給する。
【0038】
図3の例では、クロック生成回路4は、PLL21、分周器22及びパルスマスクディバイダ23により構成される。PLL21は、入力されたクロックに同期したクロックを分周器22に出力する。分周器22はPLL21の出力を分周してソースクロックを出力する。このソースクロックがパルスマスクディバイダ23及びAVS管理システム3に供給される。
【0039】
上述したように、AVS管理システム3は、パスモニタ回路9bにより検出したタイミング余裕度に基づいて、電源電圧VDDC_AVSとして最適電源電圧を発生させるように電力管理IC8を制御する。最適電源電圧での通常使用状態において、パスモニタ回路9bは、タイミングエラー回避のための異常電圧低下を監視する。即ち、パスモニタ回路9bは、異常電圧低下が発生すると、疑似タイミングエラーの発生を示すエラーフラグを出力し、直接又はOR回路15を介してAVS管理システム3のパルスマスク制御部3cに供給する。
【0040】
クロック制御部としてのパルスマスク制御部3cは、パルスマスクディバイダ23にパルスマスク制御信号を供給してクロックの発生を制御する。異常電圧低下が発生すると、パルスマスクディバイダ23は、パルスマスク制御信号に基づいて、ソースクロックを所定周期でマスクすることによりソースクロックを分周する。なお、分周周期が予め規定されている場合には、パルスマスク制御信号としてパルスマスクイネーブル信号をパルスマスクディバイダ23に供給するようにしてもよい。パルスマスクディバイダ23は、パルスマスク制御信号が入力された次のサイクルからソースクロックを分周して得たマスククロックを発生する。なお、パルスマスク制御部3cからのパルスマスク制御信号によってパルスマスクが指示されていない場合(パルスマスクイネーブル信号が非アクティブの場合)には、マスククロックはソースクロックと同一クロックとなる。
【0041】
図4図1の一部を抽出してタイミングエラーの回避に係る回路構成を示すブロック図である。
【0042】
パスモニタ制御部3bは、遅延量制御信号を遅延回路11cに与えて、遅延回路11cの遅延量を決定する。上述したように、遅延回路11cの遅延量は、監視対象パス9aをワーストパスとみなす値に設定される。この状態で、AVS管理システム3により、通常使用状態においてタイミングエラーを回避できる最低の電源電圧である最適電源電圧が設定される。
【0043】
最適電源電圧での通常使用状態において、異常電圧低下が発生すると、パスモニタ回路9bは、疑似タイミングエラーの発生を示すエラーフラグを出力してパルスマスク制御部3cに供給する。パルスマスク制御部3cは、エラーフラグが入力されると、パルスマスクイネーブル信号(パルスマスク制御信号)をパルスマスクディバイダ23に出力する。
【0044】
図4の例では、パルスマスクディバイダ23は、ラッチ回路23a及びAND回路23bにより構成されている。ラッチ回路23aはソースクロックのタイミングでパルスマスクイネーブル信号をラッチしてAND回路23bに出力する。AND回路23bは、ソースクロックも与えられており、パルスマスクイネーブル信号のハイレベル期間にのみソースクロックを出力する。即ち、パルスマスクディバイダ23により、ソースクロックが所定周期でマスクされることになり、ソースクロックは分周される。即ち、パルスマスクディバイダ23は、ソースクロックの1クロックでパルスマスクイネーブル信号をラッチすることで分周を開始し、短時間にクロック周波数を低下させることができる。
【0045】
なお、図4の監視対象パス9aは、図4のボルテージ・ドメインVD内に構成されたものであり、マスククロックによって、タイミングエラーの発生は回避される。
【0046】
次に、このように構成された実施の形態の動作について図5及び図6を参照して説明する。図5は実施の形態の動作を説明するためのフローチャートであり、図6は実施の形態の動作を説明するためのタイミングチャートである。なお、図5のAVS制御シーケンスは一例であり、他の制御手順を採用してもよい。
【0047】
本実施の形態においては、半導体装置1の製造段階において、例えばSTAにより抽出したワーストパスの候補を監視対象パス9aに設定し、監視対象パス9aにパスモニタ回路9bが構成されているものとする。CPU2は、図5のステップS1において、AVS管理システム3に対してAVS制御を開始させる。これにより、AVS管理システム3のシーケンサ3aが動作を開始、初期設定が行われる(ステップS2)。
【0048】
この初期設定では、パスモニタ回路9b内の遅延回路11cの遅延量の設定が行われる。AVS管理システム3のパスモニタ制御部3bは、半導体装置1内のボルテージ・ドメインVD毎に、各データパスにおいて発生するタイミングエラーのうちパスモニタ回路9bにおいて最も早く疑似タイミングエラーが発生するように、遅延回路11cの遅延量の設定を行う。また、AVS管理システム3は、パルスマスク数についての設定を行う。これらの設定値はレジスタ3dに格納される。
【0049】
次に、AVS管理システム3は、ステップS3~S5において、最適電源電圧を設定する。即ち、AVS管理システム3は、電圧制御信号を発生して、電力管理IC8により各ボルテージ・ドメインVDに供給する電源電圧VDDC_AVSを所定値に設定する。この状態で、パスモニタ制御部3bは、疑似タイミングエラーの発生を示すエラーフラグが発生するか否かを判定する(ステップS3)。なお、この判定は、ボルテージ・ドメインVD毎に行われる。
【0050】
エラーフラグが発生しない場合には、シーケンサ3aは、ステップS4において、電源電圧VDDC_AVSを1段階下げるように制御する。この状態で、パスモニタ制御部3bは、疑似タイミングエラーの発生を示すエラーフラグが発生するか否かを判定する(ステップS3)。以後、同様の動作が繰り返され、エラーフラグが発生するまで電源電圧VDDC_AVSが1段階ずつ低下される。
【0051】
疑似タイミングエラーの発生を示すエラーフラグが発生すると、シーケンサ3aは、電源電圧VDDC_AVSを疑似タイミングエラーが発生していない1段階前の状態に戻し、この電圧を最適電源電圧とする(ステップS5)。この最適電源電圧は、ボルテージ・ドメインVD毎に設定される。以後、AVS管理システム3は、通常使用状態においてこの最適電源電圧により各ボルテージ・ドメインVDを駆動する。
【0052】
遅延調整機能付きのカナリアFF11を用いたパスモニタ回路9bを採用し遅延量を調整することによって、ボルテージ・ドメインVD毎のタイミング余裕度を求めて、これに応じて最適電源電圧を設定している。遅延調整機能付きのカナリアFF11の遅延量の調整により、通常使用状態においてタイミングエラーを回避できる最低の電源電圧に設定可能であり、装置の低消費電力化の実現が可能である。
【0053】
この最適電源電圧による通常使用状態において、急激な電圧低下が発生する可能性がある。そこで、この場合においてもタイミングエラーを回避するために、遅延調整機能付きのカナリアFF11を用いたパスモニタ回路9bからの疑似タイミングエラーの発生を監視する。
【0054】
AVS管理システム3は、ステップS5において、エラー監視設定を行う。なお、AVS管理システム3は、必要に応じて、パスモニタ回路9bの遅延回路11cの遅延量を調整してもよい。AVS管理システム3は、クロック生成回路4を構成するパルスマスクディバイダ23のパルスマスク機能を有効にする。パルスマスク制御部3cは、ステップS6において、各パスモニタ回路9bからのエラーフラグを監視する。
【0055】
いま、ここで、最適電源電圧である電源電圧VDDC_AVSが何らかの理由により急激に低下するものとする。図6のVDDC_AVSはこの状態を示している。図6のソースクロックは、クロック生成回路4の分周器22から出力されるソースクロックを示しており、通常使用状態においては、パルスマスクディバイダ23はパルスマスク動作しておらず、パルスマスクディバイダ23からのマスククロックはソースクロックと同一クロックである。
【0056】
電源電圧VDDC_AVSが低下すると、ボルテージ・ドメインVDの各部の動作速度が低下し、FFのタイミング余裕度は低下する。この場合でも、各ボルテージ・ドメインVDにおいて、ワーストパスとみなされる監視対象パス9aのパスモニタ回路9bにおいて最初に疑似タイミングエラーが発生する。図6の丸印はこのタイミングを示しており、電源電圧VDDC_AVSが所定の電圧値(図6の丸印)まで低下すると、ボルテージ・ドメインVD内のいずれかのパスモニタ回路9bによって疑似タイミングエラーの発生を示すエラーフラグが発生する。
【0057】
そうすると、ステップS6から処理がステップS7に移行してクロックパルスマスク制御が行われる。即ち、パルスマスク制御部3cは、図6に示すように、エラーフラグの発生によってハイレベルのパルスマスクイネーブル信号を発生する。このパルスマスクイネーブル信号は、クロック生成回路4のパルスマスクディバイダ23のラッチ回路23aに供給され、この結果、次のソースクロックの入力タイミングで、ソースクロックがマスクされて、図6のマスククロックがAND回路23bから出力される。
【0058】
このマスククロックがエラーフラグを発生したパスモニタ回路9bが属するボルテージ・ドメインVDに供給される。図6に示すように、マスククロックはソースクロックに比べて周波数が低下しており、このマスククロックが供給されたボルテージ・ドメインVDにおいては、タイミング余裕度が大きくなり、その結果タイミングエラーが回避される。
【0059】
なお、図6の例は、クロックのパルスを2サイクルに1回マスクしたものである。マスクパターンはこれに限らない。なお、通常、クロック周期が2倍になるとタイミングエラーは発生しないので、クロックパルスを2サイクルに1回マスクすることで、タイミングエラーの回避が可能であると考えられる。
【0060】
こうして、パスモニタ回路9bにおいて疑似タイミングエラーが解消され、エラーフラグは疑似タイミングエラーが発生していないことを示すローレベルに変化する。ボルテージ・ドメインVD内の全てのFFは、タイミングエラーが発生することはない。なお、疑似タイミングエラーについても発生しなくなる。
【0061】
パルスマスク制御部3cは、ステップS8において、電源電圧が最適電源電圧に復帰するまで所定時間待機した後、図6に示すように、パルスマスクイネーブル信号を非アクティブとする(ステップS9)。この結果、マスククロックは、ソースクックと同じクロックに戻る。AVS管理システム3は、ステップS9からステップS6に処理を戻してエラーフラグの監視を続ける。なお、この時点でまだ電源電圧が図6の丸印の電圧値よりも低い場合には、再び疑似タイミングエラーが発生するので、ステップS7~S9の処理が繰り返されて、タイミングエラーの発生が回避される。
【0062】
クロックパルスのマスクによってタイミングエラーを回避しており、最適電源電圧の設定を変更している訳ではないので、電源電圧が最適電源電圧に戻ることによって、直ちに最適電源電圧による通常使用状態での動作に復帰することができる。従って、従来技術のように電源電圧に所定のマージンを加えることで誤動作を回避する制御に比べて、十分に低い電圧で長時間動作させることができ、消費電力のより大きな低減効果を得ることができる。
【0063】
AVS管理システム3は、CPU2からAVS制御の終了指示を受けると、処理を終了する。
【0064】
このように本実施の形態においては、タイミング余裕度の計測のために遅延調整機能付きカナリアFFを用いたパスモニタを採用する。そして、求めたタイミング余裕に応じて、エラーを回避しつつ消費電力を十分に低減できる最適電源電圧を決定する。これにより、十分な消費電力の低減が可能である。また、タイミングエラーが発生しそうになる異常電圧低下を遅延調整機能付きのカナリアFFを利用して検出しており、タイミングエラーの発生前に異常電圧低下を検出可能である。更に、異常電圧低下を検出すると、クロックを分周することでタイミングエラーの発生を防止しており、異常電圧低下によりタイミングエラーが発生する前に確実にタイミングエラーの発生を阻止することができる。従って、タイミングエラーの回避のために、最適電源電圧にマージンを加える必要がなく、十分に低い最適電源電圧の設定が可能であり、消費電力の十分な低減が可能である。
【0065】
(第2の実施の形態)
図7は本発明の第2の実施の形態を示すブロック図である。図7において図4と同一の構成要素には同一符号を付して説明を省略する。第1の実施の形態においては、ソースクロックをマスクしてマスククロックを生成する期間(パルスマスク期間)は、図5のステップS8における所定時間であった。このため、パルスマスク期間の設定によっては、パルスマスク期間の終了後においても異常電圧低下が生じている場合や最適電源電圧に復帰してもパルスマスク期間が終了していないことがあった。そこで、本実施の形態は異常電圧低下が解消されて、最適電源電圧に復帰することによってパルスマスク期間を終了させるものである。
【0066】
本実施の形態は、図7に示すように、パスモニタ回路9b中の遅延調整機能付きのカナリアFF11を構成するFF11bにマスククロックではなくソースクロックを与える点が第1の実施の形態と異なるのみである。FF11bは、ソースクロックのタイミングで遅延回路11cの出力を取り込んでEXOR回路14に出力する。
【0067】
次に、このように構成された実施の形態の動作について図8及び図9を参照して説明する。図8は実施の形態の動作を説明するためのフローチャートであり、図9は動作を説明するためのタイミングチャートである。なお、図8のAV制御シーケンスは一例であり、他の制御手順を採用してもよい。
【0068】
図8に示すように、ステップS1~S7の手順は図5の第1の実施の形態と同様である。即ち、最適電源電圧である電源電圧VDDC_AVSが何らかの理由により急激に低下すると、ワーストパスとみなされる監視対象パス9aのパスモニタ回路9bにおいて最初に疑似タイミングエラーが発生する。図9の丸印はこのタイミングを示しており、電源電圧VDDC_AVSが所定の電圧値(図9の丸印)まで低下すると、ボルテージ・ドメインVD内のいずれかのパスモニタ回路9bによって疑似タイミングエラーの発生を示すエラーフラグが発生する。これにより、ステップS7においてクロックパルスマスク制御が行われ、パルスマスク制御部3cは、ハイレベルのパルスマスクイネーブル信号を発生する。こうして、図9のマスククロックがパルスマスクディバイダ23から出力されて、エラーフラグを発生したパスモニタ回路9bが属するボルテージ・ドメインVDに供給される。
【0069】
本実施の形態においては、遅延調整機能付きのカナリアFF11を構成するFF11bは、マスククロックでなくソースクロックで動作する。従って、FF11bでは、異常電圧低下が終了して図9の丸印より高い最適電源電圧に復帰するまで疑似タイミングエラーが発生したままとなる。従って、ソースクロックを分周したマスククロックが発生した後においても、疑似タイミングエラーの発生を示すエラーフラグが出力され続ける。
【0070】
パスモニタ制御部3bは、ステップS11において、エラーが解消したか否かを判定しており、疑似タイミングエラーが解消された後、パルスマスクイネーブルを非アクティブにする(ステップS9)。なお、遅延調整機能付きのカナリアFF11を構成するFF11b以外の素子にはソースクロックを分周したマスククロックが供給されることから、ボルテージ・ドメインVDにおいてタイミングエラーが発生することはない。
【0071】
ボルテージ・ドメインVDに供給される電源電圧が通常使用状態における最適電源電圧に復帰すると、疑似タイミングエラーは解消されて、マスククロックは元のソースクロックと同一となる。
【0072】
このように本実施の形態においても、第1の実施の形態と同様の効果を得ることができる。また、遅延調整機能付きのカナリアFFを構成する疑似タイミングエラー検出用のFFにソースクロックを供給しており、疑似タイミングエラーの解消を確認した後に、元のソースクロックに戻す制御が可能となる。
【0073】
(第3の実施の形態)
図10は本発明の第3の実施の形態を示すブロック図である。図10において図4と同一の構成には同一符号を付して説明を省略する。本実施の形態は、第2の実施の形態と同様に、異常電圧低下が解消されて、最適電源電圧に復帰後にパルスマスク期間を終了させるものである。
【0074】
本実施の形態は、図10に示すように、エラー解消確認カナリアFF11R及びEXOR回路14Rを付加した点が第1の実施の形態と異なるのみである。FF11Rにはソースクロックを与え、FF11Rは、ソースクロックのタイミングで遅延回路11cの出力を取り込んでEXOR回路14Rに出力する。EXOR回路14Rは、FF11a,11Rの出力の排他的論理和を求めてエラーが解消したか否かを示すリゾルブフラグを発生してパルスマスク制御部3cに出力するようになっている。
【0075】
本実施の形態においては、パルスマスク制御部3cは、リゾルブフラグによってパルスマスク期間を終了させるようになっている。
【0076】
次に、このように構成された実施の形態の動作について図11を参照して説明する。図11は動作を説明するためのタイミングチャートである。本実施の形態においても図8のフローチャートが実行される。
【0077】
即ち、本実施の形態は、エラーからの復帰の手順が第2の実施の形態と異なるのみである。遅延調整機能付きのカナリアFF11を構成するFF11bにはマスククロックが供給されており、図11に示すように、ソースクロックを分周したマスククロックが発生することによって、疑似タイミングエラーは解消される。一方、エラー解消確認カナリアFF11Rには、ソースクロックが供給される。従って、ソースクロックを分周したマスククロックが発生したとしても、異常電圧低下が生じている期間においては、FF11Rに疑似タイミングエラーが発生し、EXOR回路14Rからのリゾルブフラグは、図11に示すように、疑似タイミングエラーが発生していることを示すハイレベルとなっている。
【0078】
EXOR回路14Rからのリゾルブフラグは、図11に示すように、異常電圧低下が終了して図11の丸印より高い最適電源電圧に復帰するまで疑似タイミングエラーの発生を示すハイレベルのままである。このため、各ボルテージ・ドメインVDに供給される電源電圧が通常使用状態における最適電源電圧に復帰するまで、パルスマスク期間は継続され、ボルテージ・ドメインVD内の全てのFFにおいて、タイミングエラーは発生しない。
【0079】
電源電圧が通常使用状態における最適電源電圧に復帰すると、FF11Rの疑似タイミングエラーは解消され、リゾルブフラグはローレベルとなる。これにより、パルスマスク制御部3cは、パルスマスク期間を終了させ、マスククロックをソースクロックと同一のクロックに戻す。
【0080】
このように本実施の形態においても、第2の実施の形態と同様の効果を得ることができる。
【0081】
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【0082】
1…半導体装置、2…CPU、3…AVS管理システム、3a…シーケンサ、3b…パスモニタ制御部、3c…パルスマスク制御部、3d…レジスタ、4…クロック生成回路、4a…パルスマスク型分周器、5…レギュレータ、6…I/O、7…バス、8…電力管理IC、9a…監視対象パス、9b…パスモニタ回路、11…遅延調整機能付きのカナリアFF、11a…FF、11b…FF、11c…遅延回路、12…FF、14…EXOR回路、21…PLL、22…分周器、23…パルスマスクディバイダ、VD…ボルテージ・ドメイン。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11