(57)【要約】【課題】デバイスばらつきなどを評価するプログラムや装置などを不要としながら、短時間で高精度なデバイスばらつきを評価する。【解決手段】ペアとなるリングオシレータ９1，１０1から出力される信号Ａ，Ｂをカウンタ１２，１３によってカウントし、いずれかのカウンタがカウントフルとなると、差分演算部１４は、信号Ａが信号Ｂよりも大きいと信号Ｂの反転信号を乗算器１６に出力し、信号Ａが信号Ｂよりも小さいと、信号Ａの反転信号を出力する。乗算器１６は、入力された演算結果を二乗して、加算器１７に出力する。加算器１７は、フリップフロップ１９に格納された値と乗算器１６の演算結果とを加算する。その加算結果は、フリップフロップ１９に格納される。以下、同様の処理を各ペアとなるリングオシレータすべてについて行い、ばらつきデータとして出力する。【選択図】図１
2011151189.tif 000002
【特許請求の範囲】
【請求項１】
ＭＯＳトランジスタのプロセスばらつきを検出する遅延時間評価モジュールを備えた半導体集積回路装置であって、
前記遅延時間評価モジュールは、
テスト信号に基づいて、第１のクロック信号と第２のクロック信号とを１つのペアとした複数の比較用クロック信号を順次生成して出力する測定クロック生成部と、
前記測定クロック生成部から出力されたペアとなった第１、および第２のクロック信号をカウントし、そのカウント値から検出された遅延時間ばらつきの差分をデジタル値に変換するカウンタ部と、
前記カウンタ部から出力されるデジタル値を演算し、ばらつき量として出力するばらつき演算部とを備えたことを特徴とする半導体集積回路装置。
【請求項２】
請求項１記載の半導体集積回路装置において、
前記測定クロック生成部は、
前記第１のクロック信号を生成する第１のリングオシレータと、前記第２のクロック信号を生成する第２のリングオシレータとからなる複数のリングオシレータ部と、
前記複数のリングオシレータ部の動作を制御するコントローラとを備え、
前記カウンタ部は、
前記第１のリングオシレータが生成した第１のクロック信号をカウントする第１のカウンタと、
前記第２のリングオシレータが生成した第２のクロック信号をカウントする第２のカウンタと、
前記第１のカウンタ、または前記第２のカウンタのいずれかのカウント数がフルになった際に、前記第１のカウンタのカウント数と前記第２のカウンタのカウント数との差分をデジタル値に変換して出力する差分演算部とを備え、
前記ばらつき演算部は、
前記差分演算部が演算したデジタル値が出力される毎に、標準偏差を演算する標準偏差演算部を備えたことを特徴とする半導体集積回路装置。
【請求項３】
請求項２記載の半導体集積回路装置において、
前記差分演算部は、
前記第１のカウンタのカウント値と前記第２のカウンタのカウント値とを比較し、第１のカウンタのカウント値が前記第２のカウンタのカウント値よりも大きい場合、前記第２のカウンタのカウント値の反転信号からなるデジタル信号を出力し、前記第１のカウンタのカウント数が前記第２のカウンタのカウント数よりも小さい場合、前記第１のカウンタのカウント値の反転信号からなるデジタル信号を出力することを特徴とする半導体集積回路装置。
【請求項４】
請求項２または３記載の半導体集積回路装置において、
前記標準偏差演算部は、
前記差分演算部から出力されたデジタル値の二乗を演算する乗算器と、
前記乗算器の演算結果と格納演算結果とを加算する加算器と、
前記加算器の演算結果を前記格納演算結果として格納する演算結果格納部とを備えたことを特徴とする半導体集積回路装置。
【請求項５】
請求項２〜４のいずれか１項に記載の半導体集積回路装置において、
前記第１のリングオシレータと前記第２のリングオシレータとからなる複数のリングオシレータ部の数は、６４個であることを特徴とする半導体集積回路装置。
【請求項６】
請求項２〜５のいずれか１項に記載の半導体集積回路装置において、
前記第１、および前記第２のリングオシレータを構成する論理回路の段数は、９段リング構成からなることを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスばらつきの評価技術に関し、特に、任意のタイミングにおける短時間で高精度なプロセスばらつきの評価に有効な技術に関する。
【背景技術】
【０００２】
近年、半導体集積回路装置においては、低消費電力化の要求が非常に強くなっており、この種の半導体集積回路装置における低消費電力化技術として、たとえば、ＤＶＦＳ(Dynamic Voltage Frequency Scaling)が知られている。
【０００３】
このＤＶＦＳは、プロセッサなどの処理能力要求に応じて動作周波数とコア電圧を動的に変更する技術である。しかしながら、ＤＶＦＳ技術を用いた半導体集積回路装置では、低電圧時におけるトランジスタの遅延時間（Ｔｐｄ）ばらつきが問題になることがわかった。
【０００４】
低電圧に対するトランジスタのＴｐｄばらつきは、１／（電源電圧Ｖｄｄ−しきい値電圧Ｖｔｈ）に従って増加するため、低電圧時のＴｐｄばらつきを把握することが重要となる。このＴｐｄばらつきを評価する技術としては、たとえば、単体ＭＯＳ(Metal Oxide Semiconductor)トランジスタからペリグロムなどの単体特性を抽出し、モンテカルロシミュレーションでＴｐｄばらつきを求めるものや、多数のリングオシレータを半導体チップのＴＥＧ(Test Element Group)に搭載し、該リングオシレータのＴｐｄばらつきを直接測定し、そのばらつき量を評価するものなどが知られている。
【０００５】
上記したモンテカルロシミュレーションを用いる技術では、まず、同じトランジスタサイズのＭＯＳを大量に載せたＴＥＧを作成し、そのＩｄｓ（ドレイン−ソース間電流）−Ｖｇｓ(ゲート-ドレイン間電圧)特性を評価する。これにより、Ｉｄｓばらつきやしきい値電圧Ｖｔｈばらつき、ペリグロム係数が測定されるので、このデータをデバイスパラメータに反映し、トランジスタのゲートＴｐｄのモンテカルロシミュレーションを行う。その結果、Ｔｐｄばらつきがシミュレーションから算出される。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上記のようなトランジスタの遅延時間ばらつきの評価技術では、次のような問題点があることが本発明者により見い出された。
【０００７】
すなわち、前述したように、ＭＯＳトランジスタやリングオシレータなどを直接評価してＴｐｄばらつきを評価するため、評価するための専用の装置、治具、ＴＥＧ、評価プログラムなどが必要であり、これらを準備するための時間がかかり、コストも膨大となってしまうという問題がある。
【０００８】
本発明の目的は、デバイスばらつきなどを評価するプログラムや装置などを不要としながら、短時間で高精度なデバイスばらつきを評価することのできる技術を提供することにある。
【０００９】
本発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１１】
本発明は、ＭＯＳトランジスタのプロセスばらつきを検出する遅延時間評価モジュールを備えた半導体集積回路装置であって、前記遅延時間評価モジュールは、テスト信号に基づいて、第１のクロック信号と第２のクロック信号とを１つのペアとした複数の比較用クロック信号を順次生成して出力する測定クロック生成部と、前記測定クロック生成部から出力されたペアとなった第１、および第２のクロック信号をカウントし、そのカウント値から検出された遅延時間ばらつきの差分をデジタル値に変換するカウンタ部と、前記カウンタ部から出力されるデジタル値を演算し、ばらつき量として出力するばらつき演算部とを備えたものである。
【００１２】
また、本願のその他の発明の概要を簡単に示す。
【００１３】
本発明は、前記測定クロック生成部が、前記第１のクロック信号を生成する第１のリングオシレータと、前記第２のクロック信号を生成する第２のリングオシレータとからなる複数のリングオシレータ部と、前記複数のリングオシレータ部の動作を制御するコントローラとを備え、前記カウンタ部が、前記第１のリングオシレータが生成した第１のクロック信号をカウントする第１のカウンタと、前記第２のリングオシレータが生成した第２のクロック信号をカウントする第２のカウンタと、前記第１のカウンタ、または前記第２のカウンタのいずれかのカウント数がフルになった際に、前記第１のカウンタのカウント数と前記第２のカウンタのカウント数との差分をデジタル値に変換して出力する差分演算部とを備え、前記ばらつき演算部が、前記差分演算部が演算したデジタル値が出力される毎に、標準偏差を演算する標準偏差演算部を備えたものである。
【００１４】
また、本発明は、前記差分演算部が、前記第１のカウンタのカウント値と前記第２のカウンタのカウント値とを比較し、第１のカウンタのカウント値が前記第２のカウンタのカウント値よりも大きい場合、前記第２のカウンタのカウント値の反転信号からなるデジタル信号を出力し、前記第１のカウンタのカウント数が前記第２のカウンタのカウント数よりも小さい場合、前記第１のカウンタのカウント値の反転信号からなるデジタル信号を出力するものである。
【００１５】
さらに、本発明は、前記標準偏差演算部が、前記差分演算部から出力されたデジタル値の二乗を演算する乗算器と、前記乗算器の演算結果と格納演算結果とを加算する加算器と、前記加算器の演算結果を前記格納演算結果として格納する演算結果格納部とを備えたものである。
【００１６】
また、本発明は、前記第１のリングオシレータと前記第２のリングオシレータとからなる複数のリングオシレータ部の数が６４個からなるものである。
【００１７】
さらに、本発明は、前記第１、および前記第２のリングオシレータを構成する論理回路の段数が９段リング構成からなるものである。
【発明の効果】
【００１８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１９】
（１）デバイスばらつきを評価するプログラムや専用の装置などを不要としながら、短時間で、高精度なデバイスばらつきの評価を行うことができる。
【００２０】
（２）また、製品となった半導体集積回路装置においても、テスト信号を入力するだけで、任意のタイミングでデバイスばらつきの評価を行うことができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施の形態による遅延時間評価モジュールの構成の一例を示したブロック図である。
【図２】図１の遅延時間評価モジュールに設けられた論理回路部の一例を示す回路図である。
【図３】図１の遅延時間評価モジュールに設けられたコントローラ、ならびにリングオシレータの一例の構成を示す説明図である。
【図４】図１の遅延時間評価モジュールのコントローラ、およびリングオシレータにおける各部のタイミングチャートである。
【図５】図１の遅延時間評価モジュールのカウンタ部における各部のタイミングチャートである。
【図６】図１の遅延時間評価モジュールから出力されるテスト結果とばらつき量との対応の一例を示す説明図である。
【図７】さいころを５回振った平均値を１０００セットとった結果のヒストグラムの一例を示した説明図である。
【図８】さいころを１００回振った平均値を１０００セットとった結果のヒストグラムの一例を示す説明図である。
【図９】リングオシレータのリング段数とばらつき値との関係を示す説明図である。
【図１０】図１の遅延時間評価モジュールを搭載した半導体集積回路装置の一例を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２３】
図１は、本発明の一実施の形態による遅延時間評価モジュールの構成の一例を示したブロック図、図２は、図１の遅延時間評価モジュールに設けられた論理回路部の一例を示す回路図、図３は、図１の遅延時間評価モジュールに設けられたコントローラ、ならびにリングオシレータの一例の構成を示す説明図、図４は、図１の遅延時間評価モジュールのコントローラ、およびリングオシレータにおける各部のタイミングチャート、図５は、図１の遅延時間評価モジュールのカウンタ部における各部のタイミングチャート、図６は、図１の遅延時間評価モジュールから出力されるテスト結果とばらつき量との対応の一例を示す説明図、図７は、さいころを５回振った平均値を１０００セットとった結果のヒストグラムの一例を示した説明図、図８は、さいころを１００回振った平均値を１０００セットとった結果のヒストグラムの一例を示す説明図、図９は、リングオシレータのリング段数とばらつき値との関係を示す説明図、図１０は、図１の遅延時間評価モジュールを搭載した半導体集積回路装置の一例を示すブロック図である。
【００２４】
本実施の形態において、遅延時間評価モジュール１は、ＭＯＳトランジスタ素子などの遅延時間（Ｔｐｄ）ばらつきを評価するモジュールであり、半導体集積回路装置などに備えられている。
【００２５】
遅延時間評価モジュール１は、図１に示すように、リング出力部２、カウンタ部３、ディレイ部４、およびばらつき演算部５から構成されている。測定クロック生成部となるリング出力部２は、ディレイ６、リセット部７、コントローラ８1〜８N、第１のリングオシレータであるリングオシレータ９1〜９N、第２のリングオシレータであるリングオシレータ１０1〜１０N、ならびに論理回路部１１から構成されている。
【００２６】
各々のコントローラ８1〜８Nは、２つ(ペア)のリングオシレータの制御を行う。たとえば、ペアとなるリングオシレータ９1とリングオシレータ１０1とは、コントローラ８1から出力される制御信号ｄｉｎによって制御される。
【００２７】
リングオシレータ９2とリングオシレータ１０2との２つは、コントローラ８2によって制御され、リングオシレータ９3とリングオシレータ１０3との２つは、コントローラ８3によって制御される。残りのリングオシレータ９4〜９N，１０4〜１０Nにおいても、それぞれ２つのペアを構成し、それぞれのペアのリングオシレータがコントローラ８4〜８Nによって制御される。
【００２８】
ここで、コントローラ８1〜８N、リングオシレータ９1〜９N，１０1〜１０Nは、たとえば、６４個からそれぞれなる。よって、リングオシレータのペア数も、６４セットからなる。このリング出力部２は、ペアとなったリングオシレータのクロック信号をそれぞれ出力する。
【００２９】
カウンタ部３は、カウンタ１２，１３、差分演算部１４、および否定論理積回路１５から構成されており、該カウンタ部３は、リング出力部２から出力されたクロック信号をカウントし、そのカウント値から検出された遅延時間ばらつきの差分をデジタル値に変換する。
【００３０】
ディレイ部４は、複数のディレイ信制御号を出力し、リング出力部２、ならびにばらつき演算部５の制御を行う。ばらつき演算部５は、乗算器１６、加算器１７、論理和回路１８、およびフリップフロップ１９，２０から構成されている。このばらつき演算部５は、カウンタ部３において変換されたデジタル値を演算し、ばらつき量として出力する。また、乗算器１６、加算器１７、ならびにフリップフロップ１９によって標準偏差演算部が構成されている。
【００３１】
ディレイ６の入力部には、入力端子ＴＰ＿ＳＴＡＲＴが接続されており、該入力端子ＴＰ＿ＳＴＡＲＴを介してばらつき評価を開始するテスト信号が入力される。ディレイ６の出力部には、コントローラ８1の入力端子ｓｔａｒｔが接続されている。
【００３２】
コントローラ８1の出力端子ｎｅｘｔには、コントローラ８2の入力端子ｓｔａｒｔが接続されており、以下同様に出力端子ｎｅｘｔと入力端子ｓｔａｒｔとがチェーン接続された構成となっている。そして、最後のコントローラ８Nの出力端子ｎｅｘｔには、遅延時間評価モジュール１の評価終了出力端子ＡＣＫＯＵＴが接続されている。
【００３３】
また、コントローラ８1〜８Nのイネーブル端子ｅｎには、入力端子ＴＰ＿ＳＴＡＲＴを介して入力されたテスト信号が入力されるように接続されており、コントローラ８1〜８Nのアクノリッジ端子ａｃｋには、ディレイ部４から出力されるアクノリッジ信号が入力されるように接続されている。
【００３４】
リングオシレータ９1〜９Nから出力されるクロック信号Ａ１〜Ａｎは、論理回路部１１に設けられた論理和回路によって論理和がとられて第１のクロック信号である信号Ａとして第１のカウンタとなるカウンタ１２に出力される。
【００３５】
また、リングオシレータ１０1〜１０Nから出力されるクロック信号Ｂ１〜Ｂｎは、同じく論理回路部１１に設けられた論理和回路によって論理和がとられ、第２のクロック信号である信号Ｂとして第２のカウンタとなるカウンタ１３に出力される。
【００３６】
カウンタ１２は、入力される信号Ａをカウントし、カウンタ１３は、入力される信号Ｂをカウントする。カウンタ１２，１３によってカウントされたカウント値は、差分演算部１４にそれぞれ出力される。
【００３７】
否定論理積回路１５の一方の入力部には、カウンタ１２のカウント値がフルになった際に出力されるカウンタフル信号が入力されるように接続されており、該否定論理積回路１５の他方の入力部には、カウンタ１３のカウント値がフルになった際に出力されるカウンタフル信号が入力されるように接続されている。否定論理積回路１５の出力部には、ディレイ部４の入力部、およびカウンタ１２，１３が接続されている。
【００３８】
ディレイ部４は、否定論理積回路１５から出力された信号に基づいて、アクノリッジ信号、および演算結果格納部となるフリップフロップ１９を制御するクロック信号を生成する。また、カウンタ１２，１３には、否定論理積回路１５から出力された信号が該カウンタ１２，１３のカウント停止信号として入力される。
【００３９】
差分演算部１４の演算結果は、乗算器１６の入力部に入力されるように接続されており、該乗算器１６の出力部には、加算器１７の一方の入力部が接続されている。加算器１７の出力部には、ばらつき測定結果出力端子ＴＰ＿ＱＯＵＴ、およびフリップフロップ１９のデータ端子にそれぞれ接続されている。
【００４０】
また、加算器１７の他方の入力部には、フリップフロップ１９の出力端子が接続されており、該フリップフロップ１９のクロック端子には、ディレイ部４から出力されるクロック信号が入力されるように接続されている。
【００４１】
論理和回路１８の一方の入力部には、差分演算部１４のエラー端子ｅｒｒから出力されるエラー信号が入力されるように接続されており、該論理和回路１８の他方の入力部には、加算器１７から出力されるオーバフロー信号ｏｖｅｒｆｌｏｗが入力されるように接続されている。
【００４２】
フリップフロップ２０のデータ端子には、論理和回路１８の出力部が接続されており、該フリップフロップ２０の出力端子には、エラー信号出力端子ＴＰ＿ＥＲＲＯＵＴが接続されており、該エラー信号出力端子ＴＰ＿ＥＲＲＯＵＴを介して評価エラーを示すエラー信号が出力される。
【００４３】
また、リセット部７は、入力端子ＴＰ＿ＳＴＡＲＴを介して入力されたテスト信号に基づいて、リセット信号を生成し、コントローラ８1〜８N、カウンタ１２，１３、リングオシレータ９1〜９N，１０1〜１０N、ならびにフリップフロップ１９，２０などにリセット信号をそれぞれ供給する。
【００４４】
図２は、論理回路部１１の一例を示す回路図である。
【００４５】
論理回路部１１は、図示するように、論理和部１１ａ、および論理和部１１ｂから構成されている。論理和部１１ａは、複数の論理和回路から構成されており、リングオシレータ９1〜９Nから出力されるクロック信号Ａ１〜Ａｎの論理和をとり、その結果を信号Ａとしてカウンタ１２に出力する。
【００４６】
同様に、論理和部１１ｂも複数の論理和回路から構成されており、リングオシレータ１０1〜１０Nから出力されるクロック信号Ｂ１〜Ｂｎの論理和をとり、その結果を信号Ｂとしてカウンタ１３に出力する。
【００４７】
図３は、コントローラ８1、ならびにリングオシレータ９1，１０1の一例の構成を示す説明図である。
【００４８】
コントローラ８1は、フリップフロップ２１，２２、論理積回路２３〜２５、論理和回路２６、インバータ２７，２８、およびドライバ２９から構成されている。論理積回路２３の一方の入力部、およびフリップフロップ２１のデータ入力端子には、入力端子ｓｔａｒｔがそれぞれ接続されている。
【００４９】
ドライバ２９の出力部には、出力端子ｎｅｘｔが接続されており、該ドライバ２９の入力部には、フリップフロップ２１のデータ出力端子、およびインバータ２８の入力部がそれぞれ接続されている。
【００５０】
インバータ２８の出力部には、論理積回路２３の他方の入力部が接続されており、該論理積回路２３の出力部には、論理積回路２４の一方の入力部、ならびにフリップフロップ２２のリセット端子がそれぞれ接続されている。
【００５１】
論理積回路２４の他方の入力部には、インバータ２７の入力部、およびアクノリッジ端子ａｃｋがそれぞれ接続されている。インバータ２７の出力部には、フリップフロップ２１のクロック端子が接続されている。
【００５２】
論理積回路２４の出力部には、論理和回路２６の一方の入力部が接続されており、該論理和回路２６の他方の入力部には、フリップフロップ２１のリセット端子、およびリセット端子ｒｅｓｅｔがそれぞれ接続されている。
【００５３】
論理和回路２６の出力部には、フリップフロップ２２のリセット端子が接続されており、該フリップフロップ２２のデータ入力端子には、電源電圧ＶＤＤが供給されるように接続されている。
【００５４】
また、フリップフロップ２２のデータ出力端子には、論理積回路２５の他方の入力部が接続されており、該論理積回路２５の一方の入力部には、イネーブル端子ｅｎが接続されている。そして、論理積回路２５から出力される信号が制御信号ｄｉｎとなり、後段のリングオシレータ９1，１０1にそれぞれ出力される。
【００５５】
リングオシレータ９1は、複数の否定論理積回路３０がリング状に接続された構成(たとえば、９段リング構成)からなり、リングオシレータ１０1も同様に、複数の否定論理積回路３０がリング状に接続された構成(９段リング)からなる。
【００５６】
ここでは、コントローラ８1、ならびにリングオシレータ９1，１０1の構成について示したが、コントローラ８2〜８N、リングオシレータ９2〜９N，１０2〜１０Nにおいても、同様の接続構成となっている。
【００５７】
次に、本実施の形態における遅延時間評価モジュール１の動作について、図４、図５のタイミングチャートを用いて説明する。
【００５８】
図４において、上方から下方にかけては、コントローラ８1の入力端子ｓｔａｒｔに入力されるテスト信号、該コントローラ８1の出力端子ｎｅｘｔから出力される信号、コントローラ８1〜８Nのイネーブル端子ｅｎに入力されるテスト信号、コントローラ８1〜８Nのリセット端子ｒｅｓｅｔに入力されるリセット信号、コントローラ８1〜８Nのアクノリッジ端子ａｃｋに入力されるディレイ部４のアクノリッジ信号、コントローラ８1からリングオシレータ９1，１０1にそれぞれ出力される制御信号ｄｉｎ、およびリングオシレータ９1から出力されるクロック信号Ａ１におけるそれぞれの信号タイミングを示している。
【００５９】
また、図５においては上方から下方にかけて、カウンタ１２に入力される信号Ａ、カウンタ１２に入力されるリセット信号、カウンタ１２に入力されるカウンタフル信号、カウンタ１２に入力されるカウント停止信号、およびカウンタ１２のカウント値における信号タイミングをそれぞれ示している。
【００６０】
まず、入力端子ＴＰ＿ＳＴＡＲＴを介してテスト信号がディレイ６とリセット部７とにそれぞれ入力されると、リセット部７は、コントローラ８1〜８N、カウンタ１２，１３、リングオシレータ９1〜９N，１０1〜１０N、ならびにフリップフロップ１９，２０などにリセット信号をそれぞれ出力し、リセット処理を行う。
【００６１】
このとき、コントローラ８1のイネーブル端子ｅｎには、たとえば、’Ｈｉ’のテスト信号が入力され、該コントローラ８1から出力される制御信号ｄｉｎは’Ｌｏ’となる。続いて、ディレイ６は、リセット処理が終了した後、テスト開始を示す信号をコントローラ８1の入力端子ｓｔａｒｔに出力する。
【００６２】
これを受けて、コントローラ８1は、’Ｈｉ’の制御信号ｄｉｎを出力し、リングオシレータ９1，１０1が発振を開始し、該リングオシレータ９1，１０1からは、クロック信号Ａ１，Ｂ１がカウンタ１２，１３それぞれ出力される。
【００６３】
カウンタ１２は、クロック信号Ａ１のカウントを行い、そのカウント値を差分演算部１４に信号Ａとして出力し、カウンタ１３は、クロック信号Ｂ１のカウントを行い、そのカウント値を差分演算部１４に信号Ｂとして出力する。
【００６４】
そして、カウンタ１２、またはカウンタ１３のいずれかがカウントフル(最上位ビットまで到達)となると、カウントフルとなったカウンタ(たとえば、カウンタ１２)は、カウントフル信号を出力する。
【００６５】
カウントフル信号に基づいて、否定論理積回路１５からは、’Ｈｉ’のカウント停止信号が出力され、該カウント停止信号によってカウンタ１２，１３のカウント動作が停止する。このとき、否定論理積回路１５から出力された、’Ｈｉ’信号は、ディレイ部４にも出力される。ディレイ部４は、否定論理積回路１５の、’Ｈｉ’信号が入力されると、’Ｈｉ’信号を出力し、差分演算部１４，およびばらつき演算部５が演算処理に必要な時間が経過した後に、’Ｌｏ’となるアクノリッジ信号を出力する。
【００６６】
差分演算部１４は、入力された信号Ａ(カウンタ１２のカウント値)と信号Ｂ(カウンタ１３のカウント値)とを比較し、信号Ａが信号Ｂよりも大きい際には、信号Ｂの反転信号を演算結果として乗算器１６に出力する。
【００６７】
また、入力された信号Ａが信号Ｂよりも小さい場合には、信号Ａの反転信号を演算結果として乗算器１６に出力する。さらに、信号Ａと信号Ｂとの差(カウント数の差）が、たとえば、１２．５％程度よりも大きい場合には、リングオシレータなどが正常に動作していない可能性があるので、エラー信号を出力する。
【００６８】
このエラー信号が出力された際には、エラー信号出力端子ＴＰ＿ＥＲＲＯＵＴの出力が’Ｈｉ’となり、エラーが発生したことを知らせる。
【００６９】
ばらつき演算部５において、乗算器１６は、入力された演算結果を二乗して、加算器１７に出力する。よって、乗算器１６と加算器１７とによって差分演算部１４から出力された演算結果が二乗和される。この二乗和されたデータは、ディレイ部４から出力されるクロック信号に基づいて、フリップフロップ１９に格納される。
【００７０】
その後、ディレイ部４から出力されているアクノリッジ信号が’Ｌｏ’となると、コントローラ８1の出力端子ｎｅｘｔから、’Ｈｉ’信号がコントローラ８2の入力端子ｓｔａｒｔに入力されると共にリセット部７からリセット信号が出力される。
【００７１】
これにより、カウンタ１２，１３がリセットされ、コントローラ８2は、リングオシレータ９2，１０2を発振させる。以下、同様の処理を繰り返し、すべてのリングオシレータのペア(たとえば、６４ペア）における演算結果を二乗和(標準偏差値)するように処理を行う。
【００７２】
たとえば、リングオシレータ９2の信号Ａとリングオシレータ１０2の信号Ｂとの演算結果は、乗算器１６に二乗され、加算器１７において、乗算器１６に二乗された値にフリップフロップ１９に格納されている前回演算した値が加算された後、再び、フリップフロップ１９に格納される。
【００７３】
そして、すべてのペアとなるリングオシレータ(６４ペア)に対して処理が終了すると、コントローラ８Nから評価終了出力端子ＡＣＫＯＵＴを介してテストが終了したことを知らせる信号が出力されるとともに、テスト結果をばらつき測定結果出力端子ＴＰ＿ＱＯＵＴから出力する。
【００７４】
図６は、遅延時間評価モジュール１のばらつき測定結果出力端子ＴＰ＿ＱＯＵＴから出力されるテスト結果(デジタル値)とばらつき量との対応の一例を示す説明図である。
【００７５】
図６においては、左から右にかけて、ばらつき量σ(偏差)、ばらつき量σ２(分散)，およびテスト結果をそれぞれ示しており、カウンタ分周が１１段、リングオシレータのペア数が６４個、切り捨て下位＝１３ｂｉｔの場合を示している。
【００７６】
たとえば、図６より、テスト結果が、’１０５’の場合には、ばらつき量σは、’４％’であり、テスト結果が、’２３６’の場合には、ばらつき量σは、’６％’となる。
【００７７】
また、本実施の形態では、リングオシレータのペア数を６４個としたが、ペア数を６４個にした意味について説明する。
【００７８】
Ｔｐｄばらつきの測定精度は、リングオシレータの個数に依存する。たとえば、リングオシレータの数が４つの場合、たまたま、ばらつきの小さいサンプルを偶然とってしまう可能性がある。一方、リングオシレータの数を増やすと、偶然とってしまう可能性が確率的に小さくなる。
【００７９】
たとえば、図７に示すさいころを５回振った平均値を１０００セットとった結果のヒストグラムと、図８に示すさいころを１００回振った平均値を１０００セットとった結果のヒストグラムを比較すると、後者の方が期待値である３．５に、より収束する。
【００８０】
ここで、リングオシレータのペアの個数は、例示した「サイコロを振った回数」に相当し、その収束具合は、リングオシレータのペアの個数をNとすると、期待値に対する１セットあたりのばらつき量σは
【００８１】
【数１】
2011151189.tif 000003
【００８２】
で示される。
【００８３】
この場合 N＝６４（リングオシレータのペアの個数）なので、σ＝０．１７８＜０．２であり、これは母集団の値（知りたい値）に対して誤差２０％以下であることを示している。
【００８４】
よって、母集団（真のばらつき値）に対して、２０％程度の誤差でばらつきをもとめようとするにはσ〜√（２／Ｎ−１）＜０．２からＮ＞５１が必要となり、Ｎ＝２nとするとｎ＞６，Ｎ＝６４となる。〔数1〕よりこの誤差を減らすにはリングオシレータのペア数を増やせばよい。
【００８５】
続いて、リングオシレータ９1〜９N，１０1〜１０Nを構成する否定論理積回路３０を９段リング構成とする意味ついて説明する。
【００８６】
リングオシレータにおける否定論理積回路３０のリング段数が少ないと、出力されるクロック信号の周期が早くなりすぎる。一方、否定論理積回路３０のリング段数が多いと、ばらつきの検出が困難となり、測定時間も長くなってしまう。
【００８７】
たとえば、図９に示すように、リング段数が多いと平均化されてしまい、外部から見ると、ばらつきが小さく見えてしまうため、できるだけ小さいリング段数でばらつきを検出したい。
【００８８】
しかし、前述したように、リング段数が少ないと、クロック信号の周期が早くなりすぎたり、異常発振や発振停止などの恐れもある。よって、９段のリング段数は、安定したクロック信号を出力することのできる最少段数として９段リング構成としている。
【００８９】
次に、遅延時間評価モジュール１の原理について説明する。
【００９０】
遅延時間評価モジュール１は、ペアとなる２つのリングオシレータの周期の取得することで、絶対値なしにばらつき量を算出することができる。
【００９１】
ペアのリングオシレータの一方をリングＡ、そのＴｐｄをＴ＋ΔＴＡ、他方のリングオシレータをリングＢ、そのＴｐｄをＴ＋ΔＴＢとそれぞれし、ΔＴ１＜ΔＴ２とする。リングＡがＮ回発振する時間は、Ｎ(Ｔ＋ΔＴＡ)であり、その間に、リングＢは、
【００９２】
【数２】
2011151189.tif 000004
【００９３】
回発振する。カウンタ部３からの出力は、Ｎ−ＮＢなので、
【００９４】
【数３】
2011151189.tif 000005
【００９５】
であり、ばらつき演算部５から出力される値は、
【００９６】
【数４】
2011151189.tif 000006
【００９７】
となる。
【００９８】
上位のビットのみを取りだし、下位ｋビットを切り捨てる場合は、
【００９９】
【数５】
2011151189.tif 000007
【０１００】
である。
【０１０１】
母集団のＴｐｄばらつき値は、一般に√（１／ＭΣ（ΔＴ／Ｔ）２）と表現でき、また、上式との関係は、
【０１０２】
【数６】
2011151189.tif 000008
【０１０３】
となるため、遅延時間評価モジュール１からの出力値とばらつき量との関係は、分周がべき乗であることを考慮して、
【０１０４】
【数７】
2011151189.tif 000009
【０１０５】
と表現される。
【０１０６】
図１０は、遅延時間評価モジュール１を搭載した半導体集積回路装置３１の一例を示すブロック図である。
【０１０７】
半導体集積回路装置３１には、遅延時間評価モジュール１、内部動作電圧となる電源電圧ＶＤＤを生成する電圧レギュレータ３２、ならびに遅延時間評価モジュール１のテスト結果に基づいて、電圧レギュレータ３２が生成する電圧レベルを調整する制御部３３を備えている。
【０１０８】
まず、制御部３３は、遅延時間評価モジュール１にテスト信号を出力する。それに基づき、遅延時間評価モジュール１は、Ｔｐｄばらつき値の測定を開始し、その測定結果を制御部３３に出力する。
【０１０９】
制御部３３は、遅延時間評価モジュール１の測定結果に基づいて、電圧レギュレータ３２が生成する電源電圧ＶＤＤの電圧レベルを調整する。たとえば、測定結果のばらつきが、任意のしきい値によりも小さい場合には、電圧レギュレータ３２が生成する電源電圧ＶＤＤの電圧レベルを下げるように調整し、測定結果のばらつきが、任意のしきい値によりも大きい場合には、電圧レギュレータ３２が生成する電源電圧ＶＤＤの電圧レベルを上げるように調整する。
【０１１０】
この調整を、たとえば、半導体集積回路装置３１に電源が投入される毎に実行することにより、動作環境温度などが変わっても最適な電源電圧ＶＤＤを供給することができる。
【０１１１】
それにより、本実施の形態によれば、遅延時間評価モジュール１にテスト信号を入力するだけで、短時間で精度の高いトランジスタの遅延時間（Ｔｐｄ）ばらつきを評価することができる。
【０１１２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【０１１３】
本発明は、半導体集積回路装置におけるＭＯＳトランジスタのデバイスばらつきの評価技術に適している。
【符号の説明】
【０１１４】
１  遅延時間評価モジュール
２  リング出力部
３  カウンタ部
４  ディレイ部
５  ばらつき演算部
６  ディレイ
７  リセット部
８1〜８N  コントローラ
９1〜９N  リングオシレータ
１０1〜１０N  リングオシレータ
１１  論理回路部
１１ａ  論理和部
１１ｂ  論理和部
１２  カウンタ
１３  カウンタ
１４  差分演算部
１５  否定論理積回路
１６  乗算器
１７  加算器
１８  論理和回路
１９  フリップフロップ
２０  フリップフロップ
２１  フリップフロップ
２２  フリップフロップ
２３  論理積回路
２４  論理積回路
２５  論理積回路
２６  論理和回路
２７  インバータ
２８  インバータ
２９  ドライバ
３０  否定論理積回路
３１  半導体集積回路装置
３２  電圧レギュレータ
３３  制御部
【図１】
2011151189.tif 000010
【図２】
2011151189.tif 000011
【図３】
2011151189.tif 000012
【図４】
2011151189.tif 000013
【図５】
2011151189.tif 000014
【図６】
2011151189.tif 000015
【図７】
2011151189.tif 000016
【図８】
2011151189.tif 000017
【図９】
2011151189.tif 000018
【図１０】
2011151189.tif 000019