(57)【特許請求の範囲】
【請求項１】
第１可変遅延回路と、
デジタル信号を電流量に変換する第１デジタルアナログ変換回路を含み、上記電流量に応じた電圧により上記第１可変遅延回路の遅延量を制御する第１遅延量制御回路と、
上記第１遅延量制御回路の第１テスト回路とを有し、
上記第１デジタルアナログ変換回路は、デジタル信号の値に応じて選択される複数の単位電流源を有し、
上記第１テスト回路は、上記複数の単位電流源の各々について、上記単位電流源に流れる電流値が所定の範囲内であることを判定することにより、上記第１遅延量制御回路の正常／異常を判定するものであり、
第２可変遅延回路と、
デジタル信号を電流量に変換する第２デジタルアナログ変換回路を含み、上記電流量に応じた電圧により上記第２可変遅延回路の遅延量を制御する第２遅延量制御回路と、
上記第２遅延量制御回路の第２テスト回路とを有し、
上記第２デジタルアナログ変換回路は、デジタル信号の値に応じて選択される複数の単位電流源を有し、
上記第２テスト回路は、上記複数の単位電流源の各々について、上記単位電流源に流れる電流値が所定の範囲内であることを判定することにより、上記第２遅延量制御回路の正常／異常を判定するものであり、
上記第１テスト回路は、上記第２デジタルアナログ変換回路の電流量を所定量増加または減少させる電流調整回路を有し、
上記第１デジタルアナログ変換回路に流れる電流量と上記第２デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量増加させた第１電流量及び上記第２デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量減少させた第２電流量とを比較することにより、上記単位電流源に流れる電流値が所定の範囲内であることを判定する半導体集積回路。
【請求項２】
請求項１において、
上記第１遅延量制御回路の判定結果と上記第２遅延量制御回路の判定結果とを統合して出力する半導体集積回路。
【請求項３】
請求項１において、
上記第１テスト回路は、上記第１デジタルアナログ変換回路の電流量を所定量増加または減少させる電流調整回路を有し、
上記第２デジタルアナログ変換回路に流れる電流量と上記第１デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量増加させた第１電流量及び上記第１デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量減少させた第２電流量とを比較することにより、上記単位電流源に流れる電流値が所定の範囲内であることを判定する半導体集積回路。
【請求項４】
請求項１において、
上記第１テスト回路は、デジタル信号を電流量に変換する第３デジタルアナログ変換回路と、上記第３デジタルアナログ変換回路の電流量を所定量増加または減少させる電流調整回路とを有し、
上記第１デジタルアナログ変換回路に流れる電流量と上記第３デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量増加させた第１電流量及び上記第２デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量減少させた第２電流量とを比較することにより、上記単位電流源に流れる電流値が所定の範囲内であることを判定する半導体集積回路。
【請求項５】
請求項１において、
上記第１テスト回路は、デジタル信号を電流量に変換する第３デジタルアナログ変換回路と、上記第１デジタルアナログ変換回路の電流量を所定量増加または減少させる電流調整回路とを有し、
上記第３デジタルアナログ変換回路に流れる電流量と上記第１デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量増加させた第１電流量及び上記第１デジタルアナログ変換回路に流れる電流量を上記電流調整回路により所定量減少させた第２電流量とを比較することにより、上記単位電流源に流れる電流値が所定の範囲内であることを判定する半導体集積回路。
【請求項６】
入力されるデジタル信号に応じて第１電流が流れる第１デジタルアナログ変換回路と、
上記第１デジタルアナログ変換回路に流れる電流値に応じた電圧を発生させる第１電流源と、
上記電圧により制御される被制御回路と、
入力されるデジタル信号に応じて第２電流が流れる第２デジタルアナログ変換回路と、
入力される電流を所定量増加または減少させて第３電流が流れる電流調整回路と、
上記第１電流が上記電流調整回路に入力される場合には上記第２電流と上記第３電流とを比較し、上記第２電流が上記電流調整回路に入力される場合には上記第１電流と上記第３電流とを比較する比較回路とを有する半導体集積回路。
【請求項７】
請求項６において、
上記第２デジタルアナログ変換回路に流れる電流値に応じた電圧を発生させる第２電流源と、
上記第１デジタルアナログ変換回路に流れる電流値に応じた電流を上記第１電流源に流す第１電流経路及び上記第２デジタルアナログ変換回路に流れる電流値に応じた電流を上記第２電流源に流す第２電流経路に設けられる電流スイッチ回路とを有し、
上記電流調整回路は、上記第２電流源で発生される電圧が入力される半導体集積回路。
【請求項８】
請求項７において、
通常動作時は、上記電流スイッチ回路により上記第１電流経路が導通し、上記第２電流経路は非導通とされ、テスト動作時は上記電流スイッチ回路により上記第１電流経路が非導通とされ、上記第２電流経路が導通される半導体集積回路。
【請求項９】
請求項８において、
上記第２電流源を構成するトランジスタのゲート長は、上記第１電流源を構成するトランジスタのゲート長よりも大きい半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に集積される可変遅延回路、遅延制御回路を評価するテスト回路（ＢＩＳＴ回路：Built In Self-Test回路）に関する。
【背景技術】
【０００２】
ＬＳＩテスタにクロック信号を供給するタイミングジェネレータＬＳＩは、可変遅延回路を搭載し、任意のテストタイミングに応じた位相のクロック信号を出力する。出力するクロック信号の精度及び可変遅延範囲を十分に確保するため、タイミングジェネレータ回路は複数の可変遅延回路を備えた複雑なものになっている。また、遅延制御回路についても、遅延量の精度向上や低電力化のため、デジタル−アナログ変換回路（以下、ＤＡＣと表記する）を用いて微小な電流制御を行う場合もある。さらに、集積度の向上により一つのＬＳＩに搭載できる可変遅延回路数も増大している。その結果、１つのタイミングジェネレータＬＳＩに搭載される可変遅延回路は数百のオーダーに達する。
【０００３】
このようなタイミングジェネレータＬＳＩにおいて回路の動作保証を行うため、可変遅延回路によってリングオシレータを構成して、その発振周波数を測定する。特許文献１には、出力クロック信号の位相の校正を目的とするものであるが、信号伝送路の終端に出力される信号を始端側に帰還させ、閉ループ発振回路を構成してタイミング調整に利用している例がある。
【０００４】
また、ＤＡＣのテスト方法を開示するものとしては特許文献２がある。特許文献２ではＤＡＣの電流経路を制御するトランジスタの動作確認は機能テストで行うことを開示するが、出力する電流・電圧は外部テスタに出力してテストすることになっている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１８０５１４号
【特許文献２】特開２００７−１０８０５５号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
遅延回路のテスト時間の大部分は、周波数カウンタによる測定時間である。テストに要する時間は精度、発振周波数によるが、測定時間は1点あたり数msec〜sec程度である。テスト時間は、さらに測定精度、測定しなければならない可変遅延回路の数、遅延量調整パラメータの組合せの数に比例して増大する。これらは、背景として記述したように、増加の一途をたどっている。一方、テスト用ピンを増加させ、テスタとＬＳＩとの入出力を高速化することでテスト時間を短縮することができるが、テストに割り当てられるピン数には限界があり、テストに要する時間の増大を現実的には抑えることができない。
【課題を解決するための手段】
【０００７】
可変遅延回路と、可変遅延回路のテスト回路とを有し、テスト回路は、テスト動作時には可変遅延回路によりリングオシレータを構成して発振させ、リングオシレータが所定の単調増加条件と線形性条件とを満たすか否かにより可変遅延回路の正常／異常を判定する。
【０００８】
さらに、可変遅延回路と、デジタル信号を電流量に変換するデジタルアナログ変換回路を含み、電流量に応じた電圧により可変遅延回路の遅延量を制御する遅延量制御回路と、遅延量制御回路のテスト回路とを有し、遅延量制御回路は、デジタル信号の値に応じて選択される複数の単位電流源を有し、テスト回路は、複数の単位電流源の各々について、単位電流源に流れる電流値が所定の範囲内であることをファンクショナルにデジタル判定することにより、遅延量制御回路の正常／異常を判定する。
【発明の効果】
【０００９】
可変遅延回路、ＤＡＣのアナログ特性のテストに要する時間を短縮する。
【図面の簡単な説明】
【００１０】
【図１】可変遅延回路及びその遅延テスト回路のブロック図である。
【図２】図１を用いたテストのフローチャートである。
【図３】可変遅延回路の線形性評価判定の概略を説明するための図である。
【図４】複数の可変遅延回路に適用される遅延テスト回路のブロック図である。
【図５】遅延制御回路とそのテスト回路のブロック図である。
【図６】単位電流源に流れる電流の発生確率を示す図である。
【図７】ウィンドウコンパレータにおける電流・電圧と判定出力との関係を説明するための図である。
【図８】同一の制御ＤＡＣをレプリカＤＡＣとして利用する構成例である。
【図９】テスト結果を統合して出力する構成例である。
【図１０】電流スイッチを搭載する構成例である。
【図１１】可変遅延回路と遅延量制御回路の回路構成例である。
【発明を実施するための形態】
【実施例１】
【００１１】
実施例１として、可変遅延回路のテスト回路及びテスト方法について説明する。
【００１２】
図1に測定対象となる可変遅延回路１００及びその遅延テスト回路のブロック図を示す。可変遅延回路１００は、入力された信号を遅延量制御回路１５０からの制御信号に応じた遅延量だけ遅延させる。これ以外のブロックが遅延テスト回路であって、ステートマシン２００、テスト切り替え回路３００、周波数測定回路４００、周波数カウンタレジスタ５００、期待値生成回路６００、期待値レジスタ７００、比較回路８００、テスト結果レジスタ９００で構成される。
【００１３】
通常動作時、テスト切り替え回路３００はクロック信号SIGを選択する。遅延量制御回路１５０は遅延量制御信号をうけ、遅延量制御パラメータを調整する。可変遅延回路１００は遅延量制御回路１５０からの遅延量制御パラメータの変化に従って入力されるクロック信号SIGを遅延させ、遅延されたクロック信号SIGOUTを出力する。
【００１４】
テスト全体の流れについては図２を用いて後述し、ここでは各ブロックの機能と動作を説明する。
【００１５】
ステートマシン２００にテスト設定信号が入力される。ステートマシン２００は設定保存レジスタ２１０と設定制御マシン２２０からなる。テスト設定データは設定保存レジスタ２１０に外部よりスキャンインされる。設定制御マシン２２０は設定保存レジスタ２１０から設定データを受け、遅延テスト回路の制御を行なう。
【００１６】
テスト切り替え回路３００は、設定制御マシン２１０の制御を受け、テスト開始時には可変遅延回路１００を経由するループ経路Ｌを選択し、これによりリングオシレータを構成する。
【００１７】
周波数測定回路４００はリングオシレータカウンタ４１０と基準クロックカウンタ４２０とを有する。リングオシレータカウンタ４１０はテスト切り替え回路３００がリングオシレータを構成すると、そのリングオシレータの発振回数をカウントする。一方、基準クロックカウンタ４２０は、基準クロックに対し、その発振回数をカウントする。基準クロックカウンタ４２０のカウント値が設定制御マシン２２０によって与えられた設定値に到達した時にカウントを止め、カウント値を保持する。同時にリングオシレータのカウントを終了させる。
【００１８】
本実施例では、基準クロックカウンタ４２０が所定の設定値に達した時点のリングオシレータカウンタ４１０のカウント値を用いて可変遅延回路１００のテストを実施する。以下、テスト開始後、基準クロックカウンタ４２０がＮ回目の所定の設定値に達した時点（時刻ＰＮと表記する）でのリングオシレータカウンタ４１０のカウンタ値をＣＮと表記する。カウンタレジスタ５００は、基準クロックカウンタ４２０が（Ｎ−１）回目の所定の設定値に達した時点（時刻ＰＮ−１と表記する）でのリングオシレータカウンタ４１０のカウンタ値、すなわちＣＮ−１を保持する。
【００１９】
期待値生成回路６００は、リングオシレータカウンタ４１０のカウント値（ＣＮ）およびカウンタレジスタ５００のカウント値（ＣＮ−１）を利用し、テスト時の期待値を生成する。
【００２０】
期待値レジスタ７００は、単調性期待値レジスタ７１０と、線形性期待値第一レジスタ７３０と、線形性期待値第二レジスタ７２０とから構成される。単調性期待値レジスタ７１０は、カウンタレジスタ５００に保持されたカウント値を読み出して保存する。線形性期待値第一レジスタ７３０は期待値生成回路６００で生成された期待値（ＥＮ＋１、ＬｕＮ＋１、ＬｌＮ＋１）を保存する。線形性期待値第二レジスタ７２０は一時刻前の期待値（ＥＮ、ＬｕＮ、ＬｌＮ）を線形性期待値第一レジスタ７３０から読み出して保存する。
【００２１】
比較回路８００はリングオシレータカウンタ４１０に保持しているカウント値と単調性期待値レジスタ７１０および線形性期待値第二レジスタ７２０に保持された期待値とを比較する。
【００２２】
テスト結果レジスタ９００は比較回路８００での比較結果を保存する。
【００２３】
図２は、図１の回路で実施される遅延時間テストフローの例である。可変遅延回路１００の遅延量の単調増加性および、線形性を確認する。可変遅延回路のテストを単調増加性及び線形性の評価に絞ることで、期待値生成回路と判定回路をＬＳＩ内に内蔵可能にできるものである。
【００２４】
ステップＳ１：外部テスタよりテスト設定データを設定保存用レジスタ２１０に書き込む。設定制御マシン２２０は設定保存用レジスタ２１０から設定データを読み出し、ステップＳ２以下の制御を実行する。
【００２５】
ステップＳ２：テスト切り替え回路３００はループ経路Ｌを選択し、可変遅延回路１００を含むリングオシレータを構成し、発振させる。
【００２６】
ステップＳ３：リングオシレータカウンタ４１０および基準クロックカウンタ４２０のカウントの計測を開始する。基準クロックカウンタ４２０のカウント値が設定制御マシン２２０より与えられた設定値に達したとき、基準クロックカウンタ４２０はカウント停止信号を設定制御マシン２２０に出力する。これを受け、設定制御マシン２２０はリングオシレータカウンタ４１０にカウント停止信号を出力し、リングオシレータカウントを停止する。そのカウント値ＣＮを保持し計測を終了する。
【００２７】
ステップＳ４：リングオシレータカウンタ４１０に保持されたカウント値ＣＮとカウンタレジスタ５００に保持されたカウント値ＣＮ−１を期待値生成回路６００に読み出し、期待値生成回路６００では線形性期待値ＥＮ＋１を生成するとともに、線形性判定範囲を確定する。
【００２８】
図３に線形性評価判定の概略説明図を示す。図３の横軸は時刻、縦軸はリングオシレータカウンタ４１０のカウント値である。ＣＮとＣＮ−１の差分をΔとすると、時刻ＰＮ＋１でのカウンタ値の期待値ＥＮ＋１はＣＮ＋Δで示される。時刻ＰＮ＋１で可変遅延回路１００の出力が線形性を満たしていると認められる線形性判定範囲は、設定制御マシン２２０より与えられた線形性許容範囲Ｒを用いて以下のように与えられる。時刻ＰＮ＋１での線形性判定範囲の上限値をＬｕＮ＋１、下限値をＬｌＮ＋１とすると、
ＬｕＮ＋１＝ＥＮ＋１＋Ｒ
ＬｌＮ＋１＝ＥＮ＋１−Ｒ
となり、この値を線形性期待値第一レジスタ７３０に保存する。
【００２９】
ステップＳ５：カウンタレジスタ５００に保持されているカウント値ＣＮ−１を単調性期待値レジスタ７１０に読込み、単調性評価に使用する期待値とする。
【００３０】
ステップＳ６：単調性期待値レジスタ７１０に保持されるカウント値ＣＮ−１とリングオシレータカウンタ４１０に保持されるカウント値ＣＮとを比較回路８００で比較する。ＣＮ−１＜ＣＮであれば、単調増加していると判定する。比較終了後、テスト結果はテスト結果レジスタ９００に保存される。単調増加と判定されれば次の線形性評価のステップに進み、NGであればその結果を出力して終了する（Ｓ１１）。
【００３１】
ステップＳ７：線形性期待値第二レジスタ７２０に保持される線形性判定範囲の上限値ＬｕＮおよび下限値ＬｌＮとリングオシレータカウンタ４１０に保持されるカウント値ＣＮとを比較回路８００に読み出し、ＬｌＮ＜ＣＮ＜ＬｕＮであれば、規定線形範囲内であると判定する。線形性比較がOKであればパラメータが最終であるか確認を行い、NGであればその結果を出力して終了する（Ｓ１１）。
【００３２】
ステップＳ８：制御パラメータが最終であれば結果を出力して終了し（Ｓ１１）、最終でなければリングオシレータカウンタ４１０のカウント値ＣＮをカウンタレジスタ５００に保存し、線形性期待値第一レジスタ７３０に保存してある期待値（ＥＮ＋１、ＬｕＮ＋１、ＬｌＮ＋１）を線形性期待値第二レジスタ７２０に保存する（Ｓ９）。保存後、時刻パラメータをＮから（Ｎ＋１）として（Ｓ１０）、計測を継続する。
【００３３】
図４は可変遅延回路１００が複数存在する場合の構成例である。図１と共通の機能を有するブロックは同じ符号で表記している。また、図では２つの可変遅延回路が存在し、第１の可変遅延回路１００ａに関連するブロック・信号には符号ａを、第２の可変遅延回路１００ｂに関連するブロック・信号には符号ｂを付して示し、詳細な説明は省略する。このように、複数の可変遅延回路１００に対して、可変遅延回路に対応するにテスト切替回路３１０、周波数測定回路４００等を用意することで複数の可変遅延回路のテストを同時に行なうことができる。これによりテスト時間の短縮が可能となる。
【００３４】
特に、図４の構成では、第１の可変遅延回路１００ａと第２の可変遅延回路１００ｂとの間にインバータ１０００を入れて連結することで、２つの可変遅延回路を使ってリングオシレータを構成することが可能となっている。テスト切り替え回路３１０のセレクタは３つの入力を切り替える。通常動作時は入力in1に入力されるクロック信号SIGを入力する。複数の可変遅延回路を個別にテストする場合は、セレクタは入力in2を選択する。この場合は、それぞれの可変遅延回路は図１の例と同様にテストされる。セレクタが入力in3を選択すると、可変遅延回路１００ａ、インバータ１０００、テスト切り替え回路３１０ｂ、可変遅延回路１００ｂ、テスト切り替え回路３１０ａというループ経路が形成されることで２つの可変遅延回路１００ａ，ｂを用いたリングオシレータが形成される。
【００３５】
可変遅延回路の遅延量が小さい場合、リングオシレータの発振周波数が高くなることでテストが困難になる。図４のように、複数の可変遅延回路でリングオシレータを形成することで、個別の可変遅延回路の遅延量が小さい場合であってもリングオシレータの発振周波数を抑え、テストの精度を高める。さらに、第１の可変遅延回路の遅延量と第２の可変遅延回路の遅延量とを相補に変化させると、連結したリングオシレータの発振周波数が一定となるので、周波数依存性の影響を排除でき、テスト精度をさらに高めることができる。
【実施例２】
【００３６】
実施例２では、遅延量制御回路１５０のテスト回路及びテスト方法について説明する。図５の構成では、ＤＡＣによって遅延量を制御する。制御ＤＡＣ２１００は複数の単位電流源Ｍ１〜Ｍ３を持つ。制御ＤＡＣは制御信号ＤＣ１〜ＤＣ３によりトランジスタＭ４〜Ｍ６の導通／非導通を切り替える。これにより、制御ＤＡＣ制御信号ＤＣに応じて流れる電流ＩＤをミラー回路ＭＲ１により電流−電圧変換し、電流ＩＤに応じた電圧を可変遅延回路１００に印加することによりその遅延量を制御する。なお、制御ＤＡＣ２１００の単位電流源の数はいうまでもなく、３に限られるものではなく、また、電流ＩＤを倍数化するよう、各単位電流源のゲート幅Ｗを調整することもできる。本実施例では、制御ＤＡＣ２１００が全ビット動作していることを制御ＤＡＣの出力電流を利用してテストする。全ビットが正常に動作しているとは、各トランジスタＭ４〜Ｍ６の導通／非導通が正しく行われること、各単位電流源Ｍ１〜Ｍ３に流れる電流が設計値の範囲に収まっていることの両方を満たすことをいう。
【００３７】
このように、遅延制御回路内の可変遅延パラメータ全点のテストを行うのではなく、単位電流源ごとのテストを行うことで、テスト数を可変遅延パラメータ全点数から遅延量制御回路内の単位電流源数までテスト数を削減することができ、テスト時間を短縮できる。また、可変遅延回路の遅延量変化に対しても、単位電流源の電流量の大小関係を直接的にテストできるので測定精度の向上が可能である。
【００３８】
遅延量制御回路１５０のテスト回路には、レプリカＤＡＣ２２００とウィンドウコンパレータ２３００から構成される。
【００３９】
レプリカＤＡＣ２２００も複数の単位電流源Ｍ１１〜Ｍ１３を持つ。レプリカＤＡＣ制御信号ＲＤＣ１〜ＲＤＣ３によりトランジスタＭ１４〜Ｍ１６の導通／非導通を切り替える。制御量ＤＡＣ２１００とレプリカＤＡＣ２２００の各単位電流源には共通の基準電圧がそのゲートに印加されている。なお、レプリカＤＡＣ２２００は制御ＤＡＣ２１００のテストに必要とされる電流ＩＲを流すことができればよく、制御ＤＡＣ２１００とレプリカＤＡＣ２２００とは同じ構成である必要はない。むしろ、レプリカＤＡＣ２２００は同一ＬＳＩ内に搭載されるため、オーバーヘッドを減らすためにもできるだけ小さい規模のＤＡＣとすることが望ましい。
【００４０】
また、ウィンドウコンパレータ２３００は、ウィンドウ幅調整回路２３１０と判定回路（この例ではＯＲ回路）２３２０とを含む。
【００４１】
ウィンドウ幅調整回路２３１０はウィンドウ幅設定信号ＷＳ１、ＷＳ２によって制御される。制御ＤＡＣ２１００の出力電流ＩＤをカレントミラー回路により同等の電流を引き出し、この電流に対しサイズ調整されたトランジスタＭ２１、Ｍ２２により出力電流ＩＷを調整する。
【００４２】
一例を示す。トランジスタＭ２１のゲート幅がｗのときにトランジスタＭ２１のソース・ドレイン経路に電流ＩＤがミラーされるとする。この場合において、トランジスタＭ２１のゲート幅＝０．８ｗ、トランジスタＭ２２のゲート幅＝０．４ｗとする。このとき、トランジスタＭ２１、Ｍ２２の双方を導通させれば出力電流ＩＷ＝１．２ＩＤが得られ、トランジスタＭ２１を導通させ、トランジスタＭ２２を非導通とすれば出力電流ＩＷ＝０．８ＩＤが得られる。
【００４３】
判定回路２３２０は制御ＤＡＣ２１００の出力電流をウィンドウ調整回路２３１０で調整した電流とレプリカＤＡＣ２２００の出力電流との大小関係を判定するものである。
【００４４】
なお、ウィンドウ幅設定信号ＷＳ、制御ＤＡＣ制御信号ＤＣ、レプリカＤＡＣ制御信号ＲＤＣ、テストイネーブルＴＥは外部（テスタ）から入力される。
【００４５】
ウィンドウコンパレータ２３００の判定原理について図６と図７を用いて説明する。制御ＤＡＣ２１００の単位電流源Ｍ１を例に説明する。トランジスタＭ４を導通、トランジスタＭ５，Ｍ６を非導通としたときに単位電流源Ｍ１に電流ＩＤ（実測値）が流れるとする。
【００４６】
このとき、図６に示すように、単位電流源Ｍ１に流れる電流ＩＤは、設計値ＩＤＩを中心としてばらつきが生じるため、
ｂ・ＩＤＩ＜ＩＤ（実測値）＜ａ・ＩＤＩ（ａ＞１、０＜ｂ＜１）・・・（１）
式（１）の範囲であれば、正常動作とみなすものとする。図５の構成では、電流ＩＤ（実測値）が所定の正常範囲に入ることを次のように判定する。
【００４７】
［上限の判定］
図６に示すように、
ｋ１・ＩＤ＜ａ・ＩＤＩ（ａ＞ｋ１＞１）・・・（２）
式（２）であれば上限を満たすものとする。説明を単純にするため、レプリカＤＡＣの出力電流ＩＲ＝ＩＤＩと仮定する。例えば、制御ＤＡＣの単位電流源Ｍ１とレプリカＤＡＣの単位電流源Ｍ１１とを同じサイズのトランジスタとして作製すればこの仮定を満たす。
したがって、式（２）は、
ｋ１・ＩＤ＜ａ・ＩＲ（ａ＞ｋ１＞１）・・・（３）
と置き換えられる。さらにこの式は、
（ｋ１／ａ）・ＩＤ＝Ｋ１・ＩＤ＜ＩＲ（Ｋ１＜１）・・・（４）
と変形される。そのため、ウィンドウ幅調整回路２３１０のパラメータが出力電流ＩＷ＝Ｋ１・ＩＤとなっていれば、
ＩＷ＜ＩＲ・・・（５）
式（５）の関係を満たしているときに、上限を満たすものと判定できる。
【００４８】
［下限の判定］
図６に示すように、
ｂ・ＩＤＩ＜ｋ２・ＩＤ’（１＞ｋ２＞ｂ＞０）・・・（６）
式（６）であれば上限を満たすものとする。同様に、レプリカＤＡＣの出力電流ＩＲ＝ＩＤＩと仮定すると、式（６）は、
ｂ・ＩＲ＜ｋ２・ＩＤ’（１＞ｋ２＞ｂ＞０）・・・（７）
と置き換えられる。さらにこの式は、
ＩＲ＜（ｋ２／ｂ）・ＩＤ’＝Ｋ２・ＩＤ’（Ｋ２＞１）・・・（８）
と変形される。そのため、ウィンドウ幅調整回路２３１０のパラメータが出力電流ＩＷ’＝Ｋ２・ＩＤ’となっていれば、
ＩＲ＜ＩＷ’・・・（９）
式（９）の関係を満たしているときに、下限を満たすものと判定できる。
【００４９】
図７にウィンドウコンパレータ２３００内の電流・電圧関係を示す。上限の判定においては、制御ＤＡＣ２１００の出力電流ＩＤをウィンドウ幅調整回路２３１０にて電流が小さくなるように調整した電流ＩＷとレプリカＤＡＣ２２００の出力電流ＩＲは電流Ｉで平衡状態となる。このときのノードＶＣでの電圧をＶ１とする。また、下限の判定においては、制御ＤＡＣ２１００の出力電流ＩＤ’をウィンドウ幅調整回路２３１０にて電流が大きくなるように調整した電流ＩＷ’とレプリカＤＡＣ２２００の出力電流ＩＲは電流Ｉ’で平衡状態となる。このときのノードＶＣでの電圧をＶ２とする。
【００５０】
判定回路２３００では、レプリカＤＡＣの出力電流ＩＲと、上限対応の電流ＩＷ及び下限対応の電流ＩＷ’とが図７に示す関係にあることを判定する。判定回路２３００のＯＲ回路は、テストイネーブルＴＥがLowとなっていればインバータとして機能し、ノードＶＣに表れる電圧とＯＲ回路の論理しきい値ＶＴＨとを比較する。電流ＩＲ、ＩＷ、ＩＷ’とが図７に示されるような関係にある場合には、
上限判定では、ＶＣ＝Ｖ１＜ＶＴＨとなるため判定結果はLow
下限判定では、ＶＣ＝Ｖ２＞ＶＴＨとなるため判定結果はHigh
となる。上限、下限判定においてそれぞれ上記の判定結果が表れた場合に、制御ＤＡＣ２１００の単位電流源Ｍ１は正常動作すると判定する。これで、単位電流源Ｍ１の判定は完了し、次の単位電流源Ｍ２の判定に移る。このように、制御ＤＡＣのテストをデジタル判定とするため一般的なＬＳＩテストのロジックテストとインターフェースの共通化が可能にできるという効果も有する。
【００５１】
図８は同一ＬＳＩ内に存在する遅延量制御回路の制御ＤＡＣを異なる遅延量制御回路のレプリカＤＡＣとして用いる構成例である。図８の例では、可変遅延回路１００ａ用のレプリカＤＡＣとして可変遅延回路１００ｂ用の制御ＤＡＣ２１００ｂを、可変遅延回路１００ｂ用のレプリカＤＡＣとして可変遅延回路１００ｂ用の制御ＤＡＣ２１００ｃを、可変遅延回路１００ｃ用のレプリカＤＡＣとして可変遅延回路１００ａ用の制御ＤＡＣ２１００ａを用いている。ここで、各制御ＤＡＣ２１００は同一構成を有しているものとする。ウィンドウコンパレータ６１００は、ウィンドウ幅調整回路６１１０、判定回路６１３０の他、スイッチ回路６１３０を含む。ウィンドウ幅調整回路６１１０は、極性は異なるが、図５のウィンドウ幅調整回路と同様に機能する。スイッチ回路６１３０は、テスト動作時（テストイネーブルTEがlow）には導通してウィンドウ幅調整回路６１１０が動作し、通常動作時（テストイネーブルTEがhigh）には非導通となってウィンドウ幅調整回路６１１０が動作しなくなる。
【００５２】
制御ＤＡＣ２１００ａの単位電流源をテストするには、制御ＤＡＣ２１００ａに流れる電流をウィンドウ幅調整回路６１１０ａで上限／下限判定用に調整した電流量と制御ＤＡＣ２１００ｃ（レプリカＤＡＣ）に流れる電流量とで決まるノードＶＣ１の電位を判定回路６１２０ａで判定する。制御ＤＡＣ２１００ｂの単位電流源をテストするには、制御ＤＡＣ２１００ｂに流れる電流をウィンドウ幅調整回路６１１０ｂで上限／下限判定用に調整した電流量と制御ＤＡＣ２１００ａ（レプリカＤＡＣ）に流れる電流量とで決まるノードＶＣ２の電位を判定回路６１２０ｂで判定する。制御ＤＡＣ２１００ｃの単位電流源をテストするには、制御ＤＡＣ２１００ｃに流れる電流をウィンドウ幅調整回路６１１０ｃで上限／下限判定用に調整した電流量と制御ＤＡＣ２１００ｂ（レプリカＤＡＣ）に流れる電流量とで決まるノードＶＣ３の電位を判定回路６１２０ｃで判定する。単位電流源Ｍ６１、Ｍ７１、Ｍ８１をテストする場合を例に説明する。制御信号ＤＣ３＿ａ，ｂ，ｃをhighとすることによりトランジスタＭ６２、Ｍ７２、Ｍ８２を導通させる。他の制御信号ＤＣ１、ＤＣ２はlowとしておくと、各制御ＤＡＣ２１００ａ〜ｃにはそれぞれ単位電流源Ｍ６１、Ｍ７１、Ｍ８１に応じた電流が流れる。このように、各制御ＤＡＣ２１００の各単位電流源をテストする。
【００５３】
このように同一構成の制御ＤＡＣをレプリカＤＡＣに見立てて利用することにより、テスト回路の面積オーバーヘッドの増加を抑止することができる。なお、図８の例では、制御ＤＡＣが３つの例であるがこの数に限定されるものではない。
【００５４】
図９は複数の可変遅延回路の判定結果をまとめて出力し、一括してテスト結果の良否を判定する構成例である。図９では、一つの可変遅延回路１００に対応する遅延量制御回路１５０、そのテスト回路をあわせて一つのテストユニットと称する。
【００５５】
この例では複数のテストユニット４０００のウィンドウコンパレータ２３００からの判定結果が入力されるＡＮＤ回路４４００、ＯＲ回路４５００、セレクタ４６００とＡＮＤ回路４４００出力、ＯＲ回路４５００出力、セレクタ４６００O出力を選択するセレクタ４７００で構成される。
【００５６】
図７に関連して説明したように、単位電流源の上限判定ではウィンドウコンパレータ２３００の出力はLow、単位電流源の下限判定ではウィンドウコンパレータ２３００の出力はHighが正常動作である場合の期待値である。単位電流源の上限判定ではセレクタ４７００はＯＲ回路４５００を選択する。テストユニットからの判定結果に一つでもHigh出力が存在すれば、出力結果がHighとなるため、期待値から外れているテストユニットが存在することが判定できる。一方、単位電流源の下限判定ではセレクタ４７００はＡＮＤ回路４４００を選択する。テストユニットからの判定結果に一つでもLow出力が存在すれば、出力結果がLowとなるため、期待値から外れているテストユニットが存在することが判定できる。
【００５７】
セレクタ４６００は、セレクタ４７００からの統合判定結果が期待値通りに出ていなかったときのデバックモードとして、各テストユニットからの判定結果を個別に出力するときに用いる。
【００５８】
なお、テストユニットの数はいうまでもなく４に限定されるものではなく、また各テストユニットの構成も図５の構成でも、図８の構成でもよい。
【００５９】
図１０はテスト精度を高めるための構成例で、電流スイッチを利用する。ＭＯＳトランジスタは微細化するにつれ製造ばらつきが大きくなるため、その特性にばらつきが出る。このばらつきはＭＯＳトランジスタのゲート長（Ｌｇ）を大きくすることで影響を小さくできる。通常動作時に可変遅延回路１００に制御電圧を供給する電流源５１００を構成するトランジスタＭ３１は可変遅延回路１００のトランジスタにあわせた微細化ＭＯＳトランジスタで構成される。これは、電流比較時の感度を良くするために飽和領域での電流変化が小さいことが望まれるためである。そのため、可変遅延回路１００を構成するＭＯＳトランジスタと同一のゲート長で構成される。なお、図５においては、電源ＮＭＯＳ（レプリカＤＡＣ２２００のトランジスタＭ１１，Ｍ１２，Ｍ１３）と電源ＰＭＯＳ（ウィンドウ幅調整回路２３１０のトランジスタＭ２３，Ｍ２４，Ｍ２５）がこれに相当する。一方、ＭＯＳトランジスタは微細化するにつれ飽和領域での電流変化が大きくなるが、ウィンドウコンパレータ２３００のＭＯＳトランジスタとしては飽和領域での電流変化が小さい方が望ましいため、感度が悪くなってしまうおそれがある。そこで、テスト時には、通常動作に使用される制御ＤＡＣ２１００の出力を受ける電流源５１００のＭＯＳトランジスタＭ３１よりもサイズの大きい、すなわちゲート長（Ｌｇ）の大きい電流源Ｍ３２をテスト時に用いることで特性の良い電源を利用し判定回路の判定精度を向上する。
【００６０】
図１０の構成は、レプリカＤＡＣ２２００の出力電流をウィンドウコンパレータ５２００のウィンドウ幅調整回路５２１０で上限判定と下限判定とで切り替えるようになっている点で図５の構成と異なるが、図６、図７の説明と同じ原理で単位電流源の正常動作を判定することができる。
【００６１】
本構成例ではテストイネーブルＴＥを受ける電流スイッチ回路が設けられている。通常動作時、すなわち、テストイネーブルＴＥがHighの場合には、トランジスタＭ４３、Ｍ４４が導通し、遅延量制御信号ＤＣに応じた遅延制御信号が出力される。その一方、トランジスタＭ４１、Ｍ４２は非導通とされる。
【００６２】
テスト時にはテストイネーブルＴＥがLowとされ、トランジスタＭ４３、Ｍ４４が非導通となり、トランジスタＭ４１、Ｍ４２が導通される。これによりレプリカＤＡＣ２２００のミラー出力電流ＩＲＭをウィンドウ幅調整回路５２１０で切り替えて得られる出力電流ＩＸと制御ＤＡＣ２１００のミラー出力電流ＩＤＭとの大小関係で決まるノードＶＣの電圧を判定回路５２２０で判定し、判定結果を出力する。
【００６３】
以上、発明者によりなされた発明を実施例に基づいて説明したが、本発明はそれに限定されるものではなく、要旨を脱しない範囲において変更可能であることは言うまでもない。図１１に、可変遅延回路１００と遅延量制御回路１５０の回路構成例を示す。遅延量制御回路１５０は、遅延素子６０００と基準電位との間に設けられるＮＭＯＳトランジスタＭ５１、遅延素子６０００と電源電位との間に設けられるＰＭＯＳトランジスタＭ５２のオン抵抗を制御することによって可変遅延回路１００の遅延量を制御する。
【００６４】
また、可変遅延回路を有する場合、ＤＡＣを有する場合のそれぞれのみならず、可変遅延回路とＤＡＣの双方を有する回路に対して適用可能である。また、可変遅延回路の出力がそのまま出力されるとは限らず、第１の可変遅延回路により粗調整したクロック信号を第２の可変遅延回路により微調整して出力するといった様々な形態がありうる。さらに、実施例で説明したテスト回路が適用可能なＤＡＣは遅延量制御回路用途のＤＡＣに限定されないことももちろんである。
【符号の説明】
【００６５】
１００：可変遅延回路、１５０：遅延量制御回路、２００：ステートマシン、４００：周波数測定回路、５００：カウンタレジスタ、６００：期待値生成回路、７００：期待値レジスタ、８００：比較回路、９００：テスト結果レジスタ。
【図１】
0005625086.tif 000002
【図２】
0005625086.tif 000003
【図３】
0005625086.tif 000004
【図４】
0005625086.tif 000005
【図５】
0005625086.tif 000006
【図６】
0005625086.tif 000007
【図７】
0005625086.tif 000008
【図８】
0005625086.tif 000009
【図９】
0005625086.tif 000010
【図１０】
0005625086.tif 000011
【図１１】
0005625086.tif 000012