(57)【特許請求の範囲】
【請求項１】
電源電圧が供給される被測定部と、前記被測定部とは独立して電源電圧が供給され、前記被測定部の電源電圧降下量を測定する測定部と、を有した半導体集積回路であって、
前記測定部が、互いに独立したクロック信号が供給される２つのフリップフロップを有し、そして、
前記被測定部が、前記２つのフリップフロップ間のデータラインに接続された遅延用の素子を有している
ことを特徴とする半導体集積回路。
【請求項２】
前記クロック信号を異なる遅延時間で遅延させる複数の遅延回路と、前記複数の遅延回路から１つの遅延回路を選択する選択回路と、を有していることを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記測定部と該測定部に対応する被測定部とを複数組有していることを特徴とする請求項１または２に記載の半導体集積回路。
【請求項４】
請求項１乃至３のうちいずれか一項に記載の半導体集積回路を用いた該半導体集積回路の電源電圧降下量測定方法であって、
前記被測定部が非動作状態のときに前記被測定部に供給する電源電圧を複数の値に変化させて前記遅延素子の第１の遅延値を測定し、
前記被測定部が動作状態のときに前記被測定部に供給する電源電圧を所定の固定値に設定した場合の前記遅延素子の第２の遅延値を測定し、そして、
前記第１の遅延値のうち、前記第２の遅延値に最も近い遅延値に対応する電源電圧の設定値と、前記第２の遅延値を測定したときの電源電圧の設定値との差を電源電圧降下量としてもとめることを特徴とする半導体集積回路の電源電圧降下量測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＬＳＩ（Large Scale Integrated circuit）等における電源電圧降下量を測定する半導体集積回路および半導体集積回路の電源電圧降下量測定方法に関する。
【背景技術】
【０００２】
近年、トランジスタサイズの微細化によって、これまで重要視されていなかった物理現象が顕在化し、半導体集積回路の動作に影響を及ぼす結果となってきている。例えば、クロストーク，エレクトロマイグレーション，ホットキャリア劣化，電源電圧降下（ＩＲ−ＤＲＯＰ）などがその一例である。
【０００３】
このうち、ＩＲ−ＤＲＯＰは、回路中の電源を供給する電源配線の抵抗によって生じる現象であり、これにより、各回路に供給される電圧が元の電源電圧値よりも低めになるため、回路動作が遅くなる。これに対しては、その信号遅延時間を計算する際に、ＩＲ−ＤＲＯＰの要因である電源電圧変動、温度変動及びプロセス変動を考慮する必要があるが、それだけでは、回路中の各素子種別毎の動作電圧の違いによる遅延時間は考慮されたことにはならず、最悪の場合、半導体集積回路が誤動作を引き起こす恐れがある。
【０００４】
そこで、ＩＲ−ＤＲＯＰを考慮した設計をするために、特許文献１に記載の電圧降下計算方法や特許文献２に記載の半導体集積回路の動作解析方法などが提案されている。
【０００５】
特許文献１に記載の電圧降下計算方法は、ＬＳＩ設計時において、回路シミュレーション結果からワースト条件及びベスト条件での電源電圧降下量を見積もっている。特許文献２に記載の半導体集積回路の動作解析方法は、ＬＳＩ設計時において、各インスタンスの電源電圧波形を算出し、電圧降下量を考慮した遅延値を算出している。
【０００６】
また、実デバイス上でのＩＲ−ＤＲＯＰによる不具合の回避に関しては特許文献３に記載の電流制御装置が提案されている。特許文献３に記載の電流制御装置は電源電圧降下を抑える為に、機能ブロック毎に補助電流を印加する機構を備えている。
【特許文献１】特開２００３−２５６４９７号公報
【特許文献２】特開２００５−４２６８号公報
【特許文献３】特開２００６−１８６６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の電圧降下計算方法や特許文献２に記載の半導体集積回路の動作解析方法では、設計時にＩＲ−ＤＲＯＰ量を考慮した遅延値を求め、実動作に近いタイミング解析により不具合回避を行っているが、ＩＲ−ＤＲＯＰ量が設計どおりであったか否かは実際の回路を測定しなければ検証できない。また、特許文献３に記載の電流制御装置は、ＩＲ−ＤＲＯＰ量を直接モニターするのではなく、回路動作状態をモニターすることにより機能ブロックの消費電力増減を持ってＩＲ−ＤＲＯＰの発生を推定しているのであって明確なＩＲ−ＤＲＯＰの観測を行っているわけではない。
【０００８】
さらに、ＩＲ−ＤＲＯＰ量を測定するために、ＬＳＩ内にコンパレータなどのアナログ回路を設けると、測定回路分のスペースが必要となり、レイアウト工程における負担が増大してしまうという問題があった。
【０００９】
よって、本発明は、レイアウト工程における負担を軽減するとともに、ＩＲ−ＤＲＯＰの観測およびＩＲ−ＤＲＯＰ量の測定ができる半導体集積回路および半導体集積回路の電源電圧降下量測定方法を提供することを課題とする。
【課題を解決するための手段】
【００１０】
請求項１に記載の半導体集積回路は、電源電圧が供給される被測定部と、前記被測定部とは独立して電源電圧が供給され、前記被測定部の電源電圧降下量を測定する測定部と、を有した半導体集積回路であって、前記測定部が、互いに独立したクロック信号が供給される２つのフリップフロップを有し、そして、前記被測定部が、前記２つのフリップフロップ間のデータラインに接続された遅延用の素子を有していることを特徴としている。
【００１１】
請求項２に記載の半導体集積回路は、請求項１に記載の半導体集積回路において、前記クロック信号を異なる遅延時間で遅延させる複数の遅延回路と、前記複数の遅延回路から１つの遅延回路を選択する選択回路と、を有していることを特徴としている。
【００１２】
請求項３に記載の半導体集積回路は、請求項１または２に記載の半導体集積回路において、前記測定部と該測定部に対応する被測定部とを複数組有していることを特徴としている。
【００１３】
請求項４に記載の半導体集積回路の電源電圧降下量測定方法は、請求項１乃至３のうちいずれか一項に記載の半導体集積回路を用いた該半導体集積回路の電源電圧降下量測定方法であって、前記被測定部が非動作状態のときに前記被測定部に供給する電源電圧を複数の値に変化させて前記遅延素子の第１の遅延値を測定し、前記被測定部が動作状態のときに前記被測定部に供給する電源電圧を所定の固定値に設定した場合の前記遅延素子の第２の遅延値を測定し、そして、前記第１の遅延値のうち、前記第２の遅延値に最も近い遅延値に対応する電源電圧の設定値と、前記第２の遅延値を測定したときの電源電圧の設定値との差を電源電圧降下量としてもとめることを特徴としている。
【発明の効果】
【００１４】
請求項１に記載の半導体集積回路によれば、互いに異なるクロック信号が供給される２つのフリップフロップで構成された所定の電源電圧が供給される測定部と、２つのフリップフロップ間のデータラインに接続された遅延用の素子で構成された測定部とは異なる電源電圧が供給される被測定部とを有しているので、レイアウト工程時の負担が軽減でき、また、被測定回路の停止状態、動作状態それぞれにおける遅延素子の遅延時間を測定し、動作状態に近い停止状態の電圧値からＩＲ−ＤＲＯＰ量の測定をすることで、ＩＲ−ＤＲＯＰの観測およびＩＲ−ＤＲＯＰ量の算出を行うことが可能となる。
【００１５】
請求項２に記載の半導体集積回路によれば、クロック信号を異なる遅延時間で遅延させる複数の遅延回路と、複数の遅延回路から１つの遅延回路を選択する選択回路とを有しているので、複数の遅延時間でクロック信号を遅延させることができ、例えばＬＳＩテスタ等の測定装置におけるクロック設定の分解能を補助することが可能となる。
【００１６】
請求項３に記載の半導体集積回路によれば、測定部と該測定部に対応する被測定部とを、複数組有しているので、遅延時間の測定箇所が増加し、ＩＲ−ＤＲＯＰ量の測定箇所を増やす事が可能となる。
【００１７】
請求項４に記載の半導体集積回路の電源電圧降下量測定方法によれば、請求項１乃至３に記載の半導体集積回路における被測定回路の停止状態、動作状態それぞれにおける遅延素子の遅延時間を測定し、動作状態に近い停止状態の電圧値からＩＲ−ＤＲＯＰ量の観測および算出を行っているので、明確なＩＲ−ＤＲＯＰの観測および実回路におけるＩＲ−ＤＲＯＰ量の算出が可能となる。
【発明を実施するための最良の形態】
【００１８】
［第１実施形態］
以下、本発明の第１の実施形態を、図１および図３を参照して説明する。図１は、本発明の第１の実施形態にかかる半導体集積回路の回路図である。図２は、図１に示された半導体集積回路の遅延時間測定動作を説明するタイミングチャートである。図３は、図１に示された半導体集積回路を用いてＩＲ−ＤＲＯＰ量を求める動作を示したフローチャートである。
【００１９】
図１に示した半導体集積回路１は、外周部に入出力や電源などの端子を配置するＩ／Ｏ部を設け、その内側に電源ＶＣＣ１が供給される被測定部としての機能ブロック部２と、電源ＶＣＣ１とは独立した電源であるＶＣＣ２が供給される測定部３と、を有している。
【００２０】
機能ブロック部２は、半導体集積回路１がシステムなどに組み込まれた際に動作すべき機能を実現する回路が構築されているとともに、前記回路とは配線接続上は独立した遅延用の素子としてのバッファｂｕｆが設けられている。バッファｂｕｆは、例えばチップ中央など設計上ＩＲ−ＤＲＯＰが大きくなる可能性が高く、ＩＲ−ＤＲＯＰを観測したい場所の近辺に配置する。
【００２１】
測定部３は、２つのフリップフロップＦＦ１、ＦＦ２を有している。フリップフロップＦＦ１はＤ端子にＤＩＮ端子が接続され、クロック端子にクロックＣＫ１が接続されている。また、フリップフロップＦＦ１の出力は機能ブロック部２に配置されたバッファｂｕｆに接続されている。フリップフロップＦＦ２は、Ｄ端子にバッファｂｕｆの出力が接続され、クロック端子にクロックＣＫ２が接続されている。すなわち、バッファｂｕｆは、２つのフリップフロップ間のデータラインに接続されている。また、フリップフロップＦＦ２の出力はＤＯＵＴ端子に接続されている。クロックＣＫ１とＣＫ２は互いに独立したクロック信号であり、異なるタイミングで入力することが可能である。
【００２２】
また、フリップフロップＦＦ１とバッファｂｕｆ、バッファｂｕｆとフリップフロップＦＦ２との接続に関しては、機能ブロック部２の他の回路からのクロストーク対策として、シールド線を平行させて配線している。さらに、フリップフロップＦＦ１とバッファｂｕｆとフリップフロップＦＦ２とから構成される回路は、電源ＶＣＣ１及びＶＣＣ２へ同じ電圧値を供給することで、半導体集積回路１が動作状態または静止状態のどちらにおいても独立して動作することが可能となっている。
【００２３】
次に、上述した構成の半導体集積回路１においてＩＲ−ＤＲＯＰを観測し、さらにＩＲ−ＤＲＯＰ量を算出する方法を図２および図３を参照して説明する。
【００２４】
図２は、ＬＳＩテスタを用いて、上述したフリップフロップＦＦ１、ＦＦ２、バッファｂｕｆから構成される回路へ入力した信号の波形と出力の波形を示している。なお、クロックＣＫ１とＣＫ２はＮＲＺ（Non Return to Zero）波形で印加する。図２のＤＯＵＴ期待値は、ＬＳＩテスタが予め期待値として持つ値であり、マスク（ｍａｓｋ）がされていないピリオドで実際の出力（ＤＯＵＴ）と比較し、一致すればパス、不一致であればフェイルと判定する。
【００２５】
入力端子ＤＩＮは、初期値はＬｏｗレベル（Ｌ）を入力し、ピリオド２でＨｉレベル（Ｈ）に変化させ、以降Ｈを維持する。クロックＣＫ１は、ピリオド１で立ち上がりピリオド２で立ち下げることでフリップフロップＦＦ１を初期化する。クロックＣＫ２は、ピリオド２で立ち上がりピリオド２で立ち下げることでフリップフロップＦＦ２を初期化する。フリップフロップＦＦ２の初期化が正しく行われたか否かはピリオド４でＤＯＵＴ期待値と一致するか否かで確認する。
【００２６】
ピリオド５において、クロックＣＫ１をＴｉｍｉｎｇエッジＢで立ち上げる。すると、フリップフロップＦＦ１が、フリップフロップの遅延時間経過後Ｈを出力する。そして、バッファｂｕｆの遅延時間経過後フリップフロップＦＦ２の入力に到達する。ここで、クロックＣＫ２の入力タイミングであるＴｉｍｉｎｇエッジＡをＴｉｍｉｎｇエッジＢの前後に渡って変化させる、つまり、ＴｉｍｇｉｎｇエッジＡ（クロックＣＫ１とＣＫ２の位相差）を変化させ、バッファｂｕｆの遅延時間経過以降にＴｉｍｉｎｇエッジＡが立ち上がるように設定した場合は、フリップフロップＦＦ２がＨを取り込めるのでピリオド７での期待値と一致するが、バッファｂｕｆの遅延時間経過前の場合は、またＨがフリップフロップＦＦ２まで到達しないので、ピリオド７においてフェイルする。
【００２７】
したがって、ＴｉｍｉｎｇエッジＢを固定してＴｉｍｉｎｇエッジＡを変化させてＬＳＩテスタにおいてシュムプロットを取得すると、ＴｉｍｉｎｇエッジＢの設定値とＴｉｍｉｎｇエッジＡ設定値との差が、フリップフロップＦＦ２の入力セットアップ時間を含む形でバッファｂｕｆの遅延値として測定できる。
【００２８】
シュムプロット（Shmoo plot）とは、ＬＳＩテスタにおいて、テストプログラム実行中の任意の時点において、１つまたは複数のテスト条件、パラメータを変更してテストを繰り返し、そのテスト結果（パス、フェイル）をプロット図として出力し、設計目標や製品規格に対する動作余裕の判断や動作領域の形状により動作異常や設計の問題点等を見出すのに用いられているものである。
【００２９】
そして、上述した測定方法を用いて、図３のフローチャートに沿ってバッファｂｕｆの遅延値を測定し、ＩＲ−ＤＲＯＰ量を求める。まず、ステップＳ１において、半導体集積回路１が静止状態時（機能ブロック部２が非動作時）に電源ＶＣＣ１を変化させ、各電源電圧設定値におけるバッファｂｕｆ遅延値（第１の遅延値）を測定する。つまり、複数の電源電圧ごとに遅延値が測定される。
【００３０】
次に、ステップＳ２において、半導体集積回路１が動作状態時（機能ブロック部２のバッファｂｕｆ以外の回路も動作している時）のバッファｂｕｆ遅延値（第２の遅延値）を測定する。なお、ステップＳ１とステップＳ２の電源ＶＣＣ２の電圧値は固定値である。
【００３１】
次に、ステップＳ３において、ステップＳ２で測定した動作状態時のバッファｂｕｆの遅延値が、ステップＳ１で測定した静止状態時のバッファｂｕｆの遅延値と同じまたは一番近い値となる場合の電源ＶＣＣ１の設定値を求める。
【００３２】
そして、ステップＳ４において、ステップＳ２で設定している電源ＶＣＣ１とステップＳ３で求めた電源ＶＣＣ１の設定値との差がＩＲ−ＤＲＯＰ量となる。
【００３３】
つまり、動作状態時は、ＩＲ−ＤＲＯＰが発生するので、バッファｂｕｆ近辺の電源電圧値は動作状態時の電源ＶＣＣ１の値とは異なる。一方、非動作状態では周辺回路が動作しないのでバッファｂｕｆ近辺でのＩＲ−ＤＲＯＰはほとんど発生しないために、バッファｂｕｆの遅延値に対応する電源ＶＣＣ１の電圧値がバッファｂｕｆ近辺にも供給されている。したがって、動作状態時のバッファｂｕｆの遅延時間を求め、その遅延時間に最も近い非動作状態時の遅延時間に対応する電源ＶＣＣ１の設定値が動作時のバッファｂｕｆ近辺の電源電圧値であるといえる。よって、動作状態時のＶＣＣ１の設定値と、動作状態時のバッファｂｕｆの遅延時間に最も近い非動作状態時の遅延時間に対応する電源ＶＣＣ１の設定値との差がＩＲ−ＤＲＯＰ量となる。
【００３４】
本実施形態によれば、半導体集積回路１は、電源ＶＣＣ１が供給される機能ブロック部２と、機能ブロック部２とは独立した電源ＶＣＣ２が供給されるとともに互いに異なるクロック信号が入力されるフリップフロップＦＦ１、ＦＦ２から構成される測定部３と、フリップフロップＦＦ１の出力とフリップフロップＦＦ２の入力の間に接続され、機能ブロック部２のＩＲ−ＤＲＯＰを測定したい位置に配置された遅延素子としてのバッファｂｕｆとを有する。そして、バッファｂｕｆの遅延値を、機能ブロック部２が動作状態時と非動作状態時に電源ＶＣＣ１を変化させて測定し、動作状態時の電源ＶＣＣ１の設定値と動作状態時の遅延時間に最も近い非動作状態時の遅延時間に対応する電源ＶＣＣ１の設定値との差をＩＲ−ＤＲＯＰ量としているので、具体的なＩＲ−ＤＲＯＰ量を算出することができる。
【００３５】
また、この測定されたＩＲ−ＤＲＯＰ量に閾値を設けることで、製造された半導体集積回路１の良品／不良品の選別条件とすることもできる。
【００３６】
なお、上述した実施形態では遅延素子としてバッファセルを用いていたが、それに限らず、インバータやＡＮＤゲートやＯＲゲートなど多入力素子を用いてもよい。多入力素子の場合は各入力端子全てにフリップフロップＦＦ１の出力を接続すればよい。
【００３７】
［第２実施形態］
次に、本発明の第２の実施形態を、図４を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。
【００３８】
本実施形態は、機能ブロック部２および測定部３は第１の実施形態と同様であるが、測定部３のフリップフロップＦＦ１、ＦＦ２に入力するクロック信号ＣＫ１、ＣＫ２に分解能調整部４、５を挿入したことが異なる。
【００３９】
分解能調整部４は、ＣＫ１をバッファ１段分遅延させる遅延回路としての第１遅延部４ａと、ＣＫ１をバッファ２段分遅延させる遅延回路としての第２遅延部４ｂと、ＣＫ１をバッファ３段分遅延させる遅延回路としての第３遅延部４ｃと、第１遅延部４ａ、第２遅延部４ｂ、第３遅延部４ｃのうちいずれか１つの信号をフリップフロップＦＦ１に出力する選択回路４ｄと、を有している。
【００４０】
分解能調整部５は、ＣＫ２をバッファ１段分遅延させる遅延回路としての第１遅延部５ａと、ＣＫ２をバッファ２段分遅延させる遅延回路としての第２遅延部５ｂと、ＣＫ２をバッファ３段分遅延させる遅延回路としての第３遅延部５ｃと、第１遅延部５ａ、第２遅延部５ｂ、第３遅延部５ｃのうちいずれか１つの信号をフリップフロップＦＦ２に出力する選択回路５ｄと、を有している。
【００４１】
第１の実施形態や本実施形態では、遅延素子としてバッファｂｕｆを用いているが、ＬＳＩテスタを用いたシュムプロットを取得する際に、Ｔｉｍｉｎｇエッジ設定の分解能がバッファｂｕｆの遅延値測定に対して十分でない場合、測定されるバッファｂｕｆの遅延値の精度が悪くなる。
【００４２】
そこで、分解能調整部４、５を挿入し、選択回路の制御信号（ｓｅｌ［１：０］、ｓｅｌ［３：２］）で遅延時間を切り替えることで、バッファセル単位の遅延量の精度でクロック位相調整を行うことができるので、ＬＳＩテスタ等の測定装置におけるクロック設定の分解能を補助することが可能となる。
【００４３】
なお、図４では分解能調整部４、５は第１〜第３遅延部を設けていたが、３つに限らないことは言うまでもない。また、第１〜第３遅延部を構成するセルもバッファに限らず機能ブロック部２に配置する遅延素子と、使用するＬＳＩテスタ等の測定装置の分解能と、に応じて変更してもよい。
【００４４】
［第３実施形態］
次に、本発明の第３の実施形態を、図５を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。
【００４５】
本実施形態は、図５に示すように複数のＩＲ−ＤＲＯＰを測定したい位置にそれぞれ、バッファｂｕｆ１〜ｂｕｆ４を配置し、各バッファに対応して２つのフリップフロップから構成された測定部３を設けている。すなわち、測定部と該測定部に対応する被測定部とを複数組有している。
【００４６】
このようにすることで、遅延時間の測定箇所が増加し、ＩＲ−ＤＲＯＰ量の測定箇所を増やすことができる。
【００４７】
なお、本発明は上記実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
【図面の簡単な説明】
【００４８】
【図１】本発明の第１の実施形態にかかる半導体集積回路の回路図である。
【図２】図１に示された半導体集積回路の遅延時間測定動作を説明するタイミングチャートである。
【図３】図１に示された半導体集積回路を用いてＩＲ−ＤＲＯＰ量を求める動作を示したフローチャートである。
【図４】本発明の第２の実施形態にかかる半導体集積回路の回路図である。
【図５】本発明の第３の実施形態にかかる半導体集積回路の回路図である。
【符号の説明】
【００４９】
１      半導体集積回路
２      機能ブロック部（被測定部）
３      測定部
４      分解能調整部
４ａ    第１遅延部（遅延回路）
４ｂ    第２遅延部（遅延回路）
４ｃ    第３遅延部（遅延回路）
４ｄ    選択回路
５      分解能調整部
５ａ    第１遅延部（遅延回路）
５ｂ    第２遅延部（遅延回路）
５ｃ    第３遅延部（遅延回路）
５ｄ    選択回路
ＦＦ１〜ＦＦ８    フリップフロップ
ｂｕｆ、ｂｕｆ１〜ｂｕｆ４    バッファ（遅延用の素子）
【図１】
0005205881.tif 000002
【図２】
0005205881.tif 000003
【図３】
0005205881.tif 000004
【図４】
0005205881.tif 000005
【図５】
0005205881.tif 000006