(57)【要約】【課題】動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能なテスト回路及び回路テスト方法を提供すること。【解決手段】  本発明におけるテスト回路１００は、テスト対象回路のテストを行ってテスタに対してテスト結果を出力するテスト回路である。テスト回路１００は、第１のクロックジェネレータ１０１と、第２のクロックジェネレータ１０２、テスト対象回路１０３と、テストを行う組み込み自己テスト回路１０４と、テスタ同期回路１０５を備える。自己テスト回路１００は、第１の動作クロックと第２の動作クロックによって決定される回数のテストを繰り返し、自己テスト回路１０４からのテストの判定結果の全てが出力されるように判定結果を選択して出力する。このような構成により、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。【選択図】図１
2005265698.tif 000002
【特許請求の範囲】
【請求項１】
テスト対象回路のテストを行ってテスタに対してテスト結果を出力するテスト回路であって、
テスト対象回路と、
前記テスト対象回路と接続され、テストを行う組み込み自己テスト回路と、
前記テスト対象回路及び前記組み込み自己テスト回路に対して第１の動作クロックを供給する第１のクロックジェネレータと、
前記自己テスト回路からテストの判定結果を入力し、当該テストの判定結果の出力を前記テスタとの同期を取りながら行うテスタ同期回路と、
前記テスタ同期回路に対して、前記第１の動作クロックよりも低い周波数の第２の動作クロックを供給する第２のクロックジェネレータを備え、
前記自己テスト回路は、前記第１の動作クロックと前記第２の動作クロックによって決定される回数のテストを繰り返し、
前記テスタ同期回路は、前記自己テスト回路からのテストの判定結果の全てが出力されるように判定結果を選択して出力するテスト回路。
【請求項２】
前記テスタ同期回路は、オフセット値入力手段を備え、前記オフセット値入力手段により入力されたオフセット値に基づいて判定結果を選択することを特徴とする請求項１に記載のテスト回路。
【請求項３】
テスト対象回路のテストを行って、接続されたテスタに対してテスト結果を出力するテスト回路であって、
テスト対象回路と、
前記テスト対象回路と接続され、テストを行う組み込み自己テスト回路と、
前記テスト対象回路及び前記組み込み自己テスト回路の動作クロックを供給するクロックジェネレータと、
前記クロックジェネレータにより供給される動作クロックをカウントすることにより、前記自己テスト回路からの判定結果の全てが出力されるように判定結果を選択して出力するテスタ同期カウンタを備え、前記組み込み自己テスト回路は、自身の動作クロックと前記テスタの動作クロックによって決定される回数のテストを繰り返すテスト回路。
【請求項４】
前記テスト回路は、前記組み込み自己テスト回路から受信したテスト結果に失敗があったかどうかの情報を保存するレジスタと、
前記組み込み自己テスト回路からテスト結果及び終了信号を入力し、前記終了信号に基づき前記テスト結果及び前記レジスタに保存された情報を選択し、前記テスタ同期回路へ送信するマルチプレクサを備えることを特徴とする請求項１、２、又は３に記載のテスト回路。
【請求項５】
テスト対象回路のテストを行う回路テスト方法であって、
第１のクロックジェネレータが、テスト対象回路及びテスト実行回路に対して第１の動作クロックを供給するステップと、
第２のクロックジェネレータが、テスタ同期回路に対して前記第１の動作クロックよりも低い周波数の第２の動作クロックを供給するステップと、
前記テスト実行回路が、前記テスト対象回路のテストを行い前記テスタ同期回路へ結果を出力するステップと、
前記テスタ同期回路が、前記テスト実行回路から入力したテスト結果を選択して出力するステップを備え、
前記テスト対象回路のテストを行うステップでは、前記第１の動作クロックと前記第２の動作クロックによって決定される回数のテストを繰り返し、
前記テスト結果を選択するステップでは、前記テスト実行回路からのテストの判定結果の全てが出力されるように、判定結果を選択して出力する回路テスト方法。
【請求項６】
前記テストの繰り返し回数及び前記テスタ同期回路において判定結果の選択方法は、次のステップにより決定されることを特徴とする請求項５記載のテスト方法。
（ａ）前記第１の動作クロックの周波数を前記第２の動作クロックの周波数で割った値を初期値としてテスタ観測間隔値を入力するステップ。
（ｂ）０を初期値として付加ダミークロックサイクル数を入力するステップ。
（ｃ）前記テスト対象回路のクロックサイクル数と前記付加ダミークロックサイクル数を足した値が前記テスタ観測間隔値と互いに素であるかを判定するステップ。
（ｄ）前記ステップ（ｃ）における判定結果が互いに素であった場合に、その時点でのテスタ観測間隔値と付加ダミークロックサイクル数を最終的な値として決定し、決定された前記テスタ観測間隔値及び前記付加ダミークロックサイクル数に基づき前記テスト繰り返し回数及び前記テスタ同期回路における判定結果の選択方法を決定するステップ。
（ｅ）前記ステップ（ｃ）における判定結果が互いに素ではなかった場合に、前記付加ダミークロックサイクル数を１増加し、１増加した前記付加ダミークロックサイクル数と前記テスタ観測間隔値の積が前記テスト対象回路のクロックサイクル数より大きいかどうかを判定するステップ。
（ｆ）前記ステップ（ｅ）における判定結果が大きいと判定された場合には、前記テスタ観測間隔値を１増加し前記ステップ（ｂ）に戻り、大きくないと判定された場合には、前記ステップ（ｃ）に戻るステップ。
【請求項７】
前記テスタ同期回路において、入力されたオフセット値に基づいて判定結果を選択することを特徴とする請求項５に回路テスト方法。
【請求項８】
前記テスト実行回路は、組み込み自己テスト回路であり、前記テスト対象回路と、前記テスト実行回路と、前記テスタ同期回路と、前記第１のクロックジェネレータと第２のクロックジェネレータは、１つの半導体チップ上に形成されることを特徴とする請求項５、６または７に記載の回路テスト方法。
【請求項９】
テスト実行回路と、テスタ同期カウンタと、クロックジェネレータによって、テスト対象回路のテストを行う回路テスト方法であって、
前記クロックジェネレータが、前記テスト対象回路及び前記テスト実行回路に対して動作クロックを供給するステップと、
前記テスト実行回路が、前記テスト対象回路のテストを行い前記テスタ同期回路へ結果を出力するステップと、
前記テスタ同期カウンタが、前記テスト実行回路から入力したテスト結果を選択して出力するステップを備え、
前記テスト対象回路のテストを行うステップでは、前記テスト実行回路の動作クロックと出力先のテスタの動作クロックによって決定される回数分テストを繰り返し、
前記テスト結果を選択し出力するステップでは、前記テスト実行回路からのテストの判定結果の全てが出力されるように、判定結果を選択して出力することを特徴とする回路テスト方法。
【請求項１０】
前記テスト実行回路は、組み込み自己テスト回路であり、前記テスト対象回路と、前記テスト実行回路と、前記テスタ同期カウンタと、前記クロックジェネレータは、１つの半導体チップ上に形成されることを特徴とする請求項９に記載の回路テスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テスト回路及び回路テスト方法に関するものであり、より詳細には、クロックサイクルを変更しながらテストを行うテスト回路及び回路テスト方法に関する。
【背景技術】
【０００２】
システムＬＳＩのテスト用回路としては、ＬＳＩにテスト用の回路を直接組み込む、組み込み自己テスト回路がよく知られている。このような構成にすることにより、回路が完成した時点で動作確認を行える等のメリットがあり、様々な手法によるテスト回路が提案されている。
【０００３】
組み込み自己テスト回路における従来例として、例えば、特許文献１が挙げられる。特許文献１では、テスト回路内に不良蓄積部を備えており、組み込み自己テスト回路から出力されたテスト結果情報を不良蓄積部に格納することにより、テスト実行後に必要に応じてテスト結果情報を取得することができるようになっている。
【０００４】
また、特許文献２のような手法も提案されている。特許文献２では、比較結果を蓄積せず、ＯＲを計算して出力する手法であり、テスト失敗という結果情報が出力されるとそのときのクロックサイクルによりどこで失敗したのかを知ることができる。
【特許文献１】特開２００３−３６６９４号公報
【特許文献２】特開２００２−１０７４１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の特許文献１に示す方法では、テスト結果情報を格納するために大容量のメモリが必要になってしまい、チップコストの点で問題があった。また、メモリ容量を小さくすると、情報を格納しきれなくなり、どこでテストの失敗が起こったのかが確定できなくなってしまうという問題点もあった。また、特許文献２に示す方法では、全クロックサイクルを観測するには、テスト回路のクロック周波数がテスタクロック周波数の範囲内に収まっていなければならないという制限があり、テスト回路のクロック周波数が高い場合に、テスタクロック周波数も高くしなくてはならないという問題点があった。
【０００６】
本発明は、このような問題点を解決するためになされたものであり、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能なテスト回路及び回路テスト方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明におけるテスト回路は、テスト対象回路のテストを行ってテスタに対してテスト結果を出力するテスト回路であって、テスト対象回路と、前記テスト対象回路と接続され、テストを行う組み込み自己テスト回路と、前記テスト対象回路及び前記組み込み自己テスト回路に対して第１の動作クロックを供給する第１のクロックジェネレータと、前記自己テスト回路からテストの判定結果を入力し、当該テストの判定結果の出力を前記テスタとの同期を取りながら行うテスタ同期回路と、前記テスタ同期回路に対して、前記第１の動作クロックよりも低い周波数の第２の動作クロックを供給する第２のクロックジェネレータを備え、前記自己テスト回路は、前記第１の動作クロックと前記第２の動作クロックによって決定される回数のテストを繰り返し、前記テスタ同期回路は、前記自己テスト回路からのテストの判定結果の全てが出力されるように判定結果を選択して出力するテスト回路である。このような構成により、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。
【０００８】
前記テスタ同期回路は、オフセット値入力手段を備え、前記オフセット値入力手段により入力されたオフセット値に基づいて判定結果を選択することを特徴としてもよい。こうすることにより、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。
【０００９】
本発明におけるテスト回路は、テスト対象回路のテストを行って、接続されたテスタに対してテスト結果を出力するテスト回路であって、テスト対象回路と、前記テスト対象回路と接続され、テストを行う組み込み自己テスト回路と、前記テスト対象回路及び前記組み込み自己テスト回路の動作クロックを供給するクロックジェネレータと、前記クロックジェネレータにより供給される動作クロックをカウントすることにより、前記自己テスト回路からの判定結果の全てが出力されるように判定結果を選択して出力するテスタ同期カウンタを備え、前記組み込み自己テスト回路は、自身の動作クロックと前記テスタの動作クロックによって決定される回数のテストを繰り返すテスト回路である。このような構成により、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。
【００１０】
前記テスト回路は、前記組み込み自己テスト回路から受信したテスト結果に失敗があったかどうかの情報を保存するレジスタと、前記組み込み自己テスト回路からテスト結果及び終了信号を入力し、前記終了信号に基づき前記テスト結果及び前記レジスタに保存された情報を選択し、前記テスタ同期回路へ送信するマルチプレクサを備えることを特徴としてもよい。こうすることにより、テストが失敗したかどうかの情報は１回のテストで知ることが可能となる。
【００１１】
本発明における回路テスト方法は、テスト対象回路のテストを行う回路テスト方法であって、第１のクロックジェネレータが、テスト対象回路及びテスト実行回路に対して第１の動作クロックを供給するステップと、第２のクロックジェネレータが、テスタ同期回路に対して前記第１の動作クロックよりも低い周波数の第２の動作クロックを供給するステップと、前記テスト実行回路が、前記テスト対象回路のテストを行い前記テスタ同期回路へ結果を出力するステップと、前記テスタ同期回路が、前記テスト実行回路から入力したテスト結果を選択して出力するステップを備え、前記テスト対象回路のテストを行うステップでは、前記第１の動作クロックと前記第２の動作クロックによって決定される回数のテストを繰り返し、前記テスト結果を選択するステップでは、前記テスト実行回路からのテストの判定結果の全てが出力されるように、判定結果を選択して出力する回路テスト方法である。このような構成により、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。
【００１２】
前記テストの繰り返し回数及び前記テスタ同期回路において判定結果の選択方法は、次のステップにより決定されることを特徴としてもよい。
（ａ）前記第１の動作クロックの周波数を前記第２の動作クロックの周波数で割った値を初期値としてテスタ観測間隔値を入力するステップ。
（ｂ）０を初期値として付加ダミークロックサイクル数を入力するステップ。
（ｃ）前記テスト対象回路のクロックサイクル数と前記付加ダミークロックサイクル数を足した値が前記テスタ観測間隔値と互いに素であるかを判定するステップ。
（ｄ）前記ステップ（ｃ）における判定結果が互いに素であった場合に、その時点でのテスタ観測間隔値と付加ダミークロックサイクル数を最終的な値として決定し、決定された前記テスタ観測間隔値及び前記付加ダミークロックサイクル数に基づき前記テスト繰り返し回数及び前記テスタ同期回路における判定結果の選択方法を決定するステップ。
（ｅ）前記ステップ（ｃ）における判定結果が互いに素ではなかった場合に、前記付加ダミークロックサイクル数を１増加し、１増加した前記付加ダミークロックサイクル数と前記テスタ観測間隔値の積が前記テスト対象回路のクロックサイクル数より大きいかどうかを判定するステップ。
（ｆ）前記ステップ（ｅ）における判定結果が大きいと判定された場合には、前記テスタ観測間隔値を１増加し前記ステップ（ｂ）に戻り、大きくないと判定された場合には、前記ステップ（ｃ）に戻るステップ。
【００１３】
前記テスタ同期回路において、入力されたオフセット値に基づいて判定結果を選択することを特徴としてもよい。
【００１４】
前記テスト実行回路は、組み込み自己テスト回路であり、前記テスト対象回路と、前記テスト実行回路と、前記テスタ同期回路と、前記第１のクロックジェネレータと第２のクロックジェネレータは、１つの半導体チップ上に形成されることを特徴としてもよい。
【００１５】
本発明にかかる回路テスト方法は、テスト実行回路と、テスタ同期カウンタと、クロックジェネレータによって、テスト対象回路のテストを行う回路テスト方法であって、前記クロックジェネレータが、前記テスト対象回路及び前記テスト実行回路に対して動作クロックを供給するステップと、前記テスト実行回路が、前記テスト対象回路のテストを行い前記テスタ同期回路へ結果を出力するステップと、前記テスタ同期カウンタが、前記テスト実行回路から入力したテスト結果を選択して出力するステップを備え、前記テスト対象回路のテストを行うステップでは、前記テスト実行回路の動作クロックと出力先のテスタの動作クロックによって決定される回数分テストを繰り返し、前記テスト結果を選択し出力するステップでは、前記テスト実行回路からのテストの判定結果の全てが出力されるように、判定結果を選択して出力することを特徴とする回路テスト方法である。このような構成により、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能である。
【００１６】
前記テスト実行回路は、組み込み自己テスト回路であり、前記テスト対象回路と、前記テスト実行回路と、前記テスタ同期カウンタと、前記クロックジェネレータは、１つの半導体チップ上に形成されることを特徴としてもよい。
【発明の効果】
【００１７】
本発明によれば、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能なテスト回路及び回路テスト方法を提供することが可能となる。
【発明を実施するための最良の形態】
【００１８】
発明の実施の形態１．
図１は、本発明の実施の形態１にかかるテスト回路の回路構成例を示す図である。テスト回路１００は、クロックジェネレータ１０１、クロックジェネレータ１０２、テスト対象回路１０３、組み込み自己テスト回路１０４、テスタ同期回路１０５を備えている。
【００１９】
クロックジェネレータ１０１は、基準クロックに基づき、テスト対象回路１０３及び組み込み自己テスト回路１０４の動作クロックを生成するものである。クロックジェネレータ１０２は、基準クロックに基づき、テスタ同期回路１０５の動作クロックを生成するものである。ここでの基準クロックは、クロックジェネレータ１０１の基準クロックと同一のものでもよいし、異なるものでもよい。また、クロックジェネレータ１０２の生成する基準クロックは、テスタ同期回路１０５に接続されるテスタの動作クロックであり、テスタのクロックはテスト対象回路１０５の動作クロックよりも低速である場合が多い。
【００２０】
テスト対象回路１０３は、組み込み自己テスト回路１０４により、実際にテストを行う対象となる回路であり、クロックジェネレータ１０１により生成されたクロックで動作する。組み込み自己テスト回路１０４は、テスト対象回路１０３のテストを行う回路であり、テスト対象回路１０３と同様に、クロックジェネレータ１０１により生成されたクロックで動作する。テスト結果は、テスタ同期回路１０５に送信される。
【００２１】
テスタ同期回路１０５は、テスト対象回路１０３から受信したテスト結果を出力するものであり、クロックジェネレータ１０２により生成されたクロックで動作する。例えばテスタクロック周波数が、動作クロック周波数の３分の１である場合、テスタ同期回路がテスト結果を送信するのは３回に１回ということになる。
【００２２】
続いて、図２におけるフローチャートを用いて本発明の実施の形態１にかかる、テスタ観測間隔及び付加ダミークロックサイクル数の決定方法について説明する。
【００２３】
Ｐ０を動作クロック周波数／テスタクロック周波数、Ｎ０をテストパタンのクロックサイクル数とする。ｐはテスタ観測間隔、ｄは付加ダミークロックであり、ｐ＝Ｐ０（Ｓ１０１）、ｄ＝０（Ｓ１０２）を初期値として適切なｐ、ｄを探していく。
【００２４】
まず、Ｎ０＋ｄとｐが互いに素であるかどうかを判定する（Ｓ１０３）。ここで、互いに素であればこのときのｐをテスタ観測間隔、ｄを付加ダミークロックとして決定する（Ｓ１０４）。もし、互いに素ではない場合、ｄを１増加させる（Ｓ１０５）。このとき、ｄ×ｐがＮ０より大きければ（Ｓ１０６）、ｐを１増加させ（Ｓ１０７）、ｄを０に戻し、再びＮ０＋ｄとｐが互いに素であるかどうかを判定する。大きくない場合は、ｄを１増加させたままの状態でＮ０＋ｄとｐが互いに素であるかどうかを判定する。この作業をＮ０＋ｄとｐが互いに素になるまで繰り返すことにより、テスタ観測間隔と付加ダミークロックを決定する。
【００２５】
具体的な数値を例に挙げて説明する。クロックサイクルが１２８、動作クロック周波数が３００Ｍｈｚ、テスタクロック周波数が１００Ｍｈｚであり、図３の表に示すようにクロックサイクルが２と７の時に失敗する回路の場合について考える。このとき、Ｐ０＝３００／１００＝３であり、Ｎ０＝１２８である。上記の手順によりｐ＝３、ｄ＝０を初期値とする。このとき、Ｎ０＋ｄ＝１２８であり、１２８と３は互いに素なので、このままテスタ観測間隔が３、付加ダミークロックサイクル数が０として、テスタ観測間隔及び付加ダミークロックサイクル数が決定する。実際にこの値でテストを行うと、図３の表に示すように、観測できるクロックは、０，３，６，・・・，１２３，１２６となる。これを３回繰り返して行うと、図４の表に示すように２回目のテストの最初のクロックは、１２６＋３＝１２９でクロックサイクルが１２８なので、１，４，７，・・・，１２１，１２４，１２７となり、同様に３回目のテストでは、２，５，８，・・・，１１９，１２２，１２５となる。このようにして０から１２８までの全クロックサイクルで動作クロック周波数を落とすことなく回路のテストを行うことが可能となる。
【００２６】
次に、クロックサイクルが１２８、動作クロック周波数が２００Ｍｈｚ、テスタクロック周波数が１００Ｍｈｚの場合について考える。このとき、Ｐ０＝２００／１００＝２であり、Ｎ０＝１２８である。上記の手順によりｐ＝２、ｄ＝０を初期値とする。このとき、Ｎ０＋ｄ＝１２８であり、１２８と２は互いに素ではない。そこでｄを１増加させ１にする。すると、ｄ×ｐ＝２でＮ０より小さいのでこの値でＮ０＋ｄとｐが互いに素であるかどうか判定する。すると、Ｎ０＋ｄ＝１２９でｐ＝２であり、１２９と２は互いに素なので、テスタ観測間隔が２、付加ダミークロックサイクル数が１として、テスタ観測間隔及び付加ダミークロックサイクル数が決定する。実際にこの値でテストを行うと、観測できるクロックは、０，２，４，・・・，１２４，１２６となる。２回目のテストは１，３，５，・・・，１２５，１２７となる。このようにして０から１２８までの全クロックサイクルで動作クロック周波数を落とすことなく回路のテストを行うことが可能となる。
【００２７】
ここで、本発明による方法で、全てのクロックサイクルを観測できることについて説明する。パタン数をＮ，テスタ観測間隔をＰとする。ＮとＰは０より大きい整数である。Ｐ回のテストの繰り返しで全てのクロックサイクルを観測できる条件は、ｉＮ≡ｊＮ（ｍｏｄ  Ｐ）かつＰ＞ｊ＞ｉ＞＝０を満たす整数ｉ，ｊが存在しないことである。上記の条件を満たすｉ，ｊが存在しないことを調べるアルゴリズムはＯ（ｎ２）であるが、上記の式は、両辺から任意の整数Ｃを引いても、Ｐで割った剰余は等しい、つまり法Ｐに対して合同であるから、ｉＮ−Ｃ≡ｊＮ−Ｃ（ｍｏｄ  Ｐ）である。
【００２８】
ここで、Ｃ＝Ｎとすると、ｉＮ−Ｎ≡ｊＮ−Ｎ（ｍｏｄ  Ｐ）となる。つまり、（ｉ−１）Ｎ≡（ｊ−１）Ｎ（ｍｏｄ  Ｐ）である。同様に両辺からＮを引く操作を繰り返すと、０≡（ｊ−Ｎ）（ｍｏｄ  Ｐ）となる。ここで、ｋ＝ｊ−ｉとすると、Ｐ＞（ｊ−ｉ）＞０であるから、０≡ｋＮ（ｍｏｄ  Ｐ）かつＰ＞ｋ＞０である。即ち、Ｐ回のテストの繰り返しで全てのクロックサイクルを観測できる条件は、０≡ｋＮ（ｍｏｄ  Ｐ）かつＰ＞ｋ＞０を満たす整数ｋが存在しないことである。この条件を満たすｋが存在しないということは、Ｎ，２Ｎ，３Ｎ，・・・，（Ｐ−１）ＮのいずれもＰで割り切れないことであり、これを調べるアルゴリズムはＯ（ｎ）である。
【００２９】
なお、Ｎ，２Ｎ，３Ｎ，・・・，（Ｐ−１）ＮはＮの倍数であるから、これらがいずれもＰで割り切れない、即ちＰの倍数でないならば、ＰとＮの最小公倍数はＰＮである。つまり、ＰとＮは互いに素である。この判定はユーグリッド互除法が知られており、ユーグリッド互除法のアルゴリズムはＯ（ｌｏｇ  ｎ）である。即ち、Ｏ（ｌｏｇ  ｎ）のアルゴリズムで、全てのクロックサイクルを観測することが可能である。
【００３０】
発明の実施の形態２．
上述の方法の代わりに、オフセット付きテスタ同期回路を利用することにより、テストを行う例である。図５は、本発明の実施の形態２にかかるテスト回路の回路構成例を示す図である。テスト回路２００は、クロックジェネレータ２０１、クロックジェネレータ２０２、テスト対象回路２０３、組み込み自己テスト回路２０４、オフセット付きテスタ同期回路２０５を備えている。
【００３１】
クロックジェネレータ２０１は、基準クロックに基づき、テスト対象回路２０３及び組み込み自己テスト回路２０４の動作クロックを生成するものである。クロックジェネレータ２０２は、基準クロックに基づき、オフセット付きテスタ同期回路２０５の動作クロックを生成するものである。ここでの基準クロックは、クロックジェネレータ２０１の基準クロックと同一のものでもよいし、異なるものでもよい。また、クロックジェネレータ２０２の生成する基準クロックは、オフセット付きテスタ同期回路２０５に接続されるテスタの動作クロックであり、テスタのクロックはテスト対象回路のクロックよりも低速である場合が多い。
【００３２】
テスト対象回路２０３は、組み込み自己テスト回路２０４により、実際にテストを行う対象となる回路であり、クロックジェネレータ２０１により生成されたクロックで動作する。組み込み自己テスト回路２０４は、テスト対象回路２０３のテストを行う回路であり、テスト対象回路２０３と同様に、クロックジェネレータ２０１により生成されたクロックで動作する。テスト結果は、オフセット付きテスタ同期回路２０５に送信される。
【００３３】
オフセット付きテスタ同期回路２０５は、テスト対象回路２０３から受信したテスト結果を出力するものであり、クロックジェネレータ２０２により生成されたクロックで動作する。例えばテスタクロック周波数が、動作クロック周波数の３分の１である場合、テスタ同期回路がテスト結果を送信するのは３回に１回ということになる。更に、オフセット付きテスタ同期回路２０５はオフセット値を入力する機能を備える。また、オフセット付きテスタ同期回路２０５は、入力されたオフセット値に基づき、動作クロックをずらす機能を備える。
【００３４】
ここでオフセット付きテスタ同期回路２０５の動作について説明する。例えば、動作クロック周波数が３００Ｍｈｚ、テスタクロック周波数が１００Ｍｈｚのように、テスタクロック周波数が動作クロック周波数の３分の１である場合について考える。このとき、オフセット入力値が１の場合、図６の表に示すように、オフセット付きテスタ同期回路２０５は、１，４，７，・・・サイクルの時にテスト結果を出力する。同様に、０，３，６，・・・サイクルのときのテスト結果を出力したい場合はオフセット値を０にし、２，５，８，・・・サイクルのときのテスト結果を出力したい場合は、オフセット値を２にすればよい。
【００３５】
このようにして、テスタクロック周波数が動作クロック周波数より低い場合にも、オフセット値を変えて入力していくことにより、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能となる。
【００３６】
発明の実施の形態３．
上述の方法の代わりに、テスタ同期カウンタを利用することにより、テストを行う例である。図７は、本発明の実施の形態３にかかるテスト回路の構成を示す図である。テスト回路３００は、クロックジェネレータ３０１、テスト対象回路３０２、組み込み自己テスト回路３０３、テスタ同期カウンタ３０４を備えている。
【００３７】
クロックジェネレータ３０１は、基準クロックに基づき、テスト対象回路３０２、組み込み自己テスト回路３０３及びテスタ同期カウンタ３０４の動作クロックを生成するものである。
【００３８】
テスト対象回路３０２は、組み込み自己テスト回路３０３により、実際にテストを行う対象となる回路であり、クロックジェネレータ３０１により生成されたクロックで動作する。組み込み自己テスト回路３０３は、テスト対象回路３０２のテストを行う回路であり、テスト対象回路３０２と同様に、クロックジェネレータ３０１により生成されたクロックで動作する。テスト結果は、テスタ同期カウンタ３０４に送信される。
【００３９】
テスタ同期カウンタ３０４は、内部にテスタ観測間隔をカウントするカウンタを持っており、カウント数に応じて組み込み自己テスト回路３０３から受信するテスト結果を出力する機能を備える。テスタ同期カウンタはクロックジェネレータ３０１により生成されたクロック、つまりテスト対象回路３０２や組み込み自己テスト回路３０３と同じクロックで動作するが、カウント数に応じてテスト結果を送信するため、接続されたテスタが低クロックの場合にも対応することができる。
【００４０】
ここで、テスタ同期カウンタ３０４の動作について説明する。例えば、動作クロック周波数が４００Ｍｈｚ、テスタクロック周波数が１００Ｍｈｚのように、テスタクロック周波数が動作クロック周波数の４分の１である場合について考える。このとき、テスタ同期カウンタ３０４は、内部のカウンタを組み込み自己テスト回路３０３からテスト結果を受信するたびに増加させ、カウント数が４のときに０に戻す。つまりカウンタの変化は０，１，２，３，０，１，２，３，０，・・・となる。ここで、カウンタが０のときに限りテスト結果を接続されたテスタへ送信するようにすることにより、テスタクロック周波数が動作クロック周波数の４分の１である場合に同期を取ることが可能となる。同様にして、カウンタが１のときに送信、２のときに送信、３のときに送信と繰り返すことにより、全ての動作クロックでのテスト結果を出力することが可能となる。
【００４１】
このようにして、テスタクロック周波数が動作クロック周波数より低い場合にも、カウンタを利用することにより、動作クロック周波数を落とさずに全てのクロックサイクルについてのテストを漏らさずに行うことが可能となる。
【００４２】
発明の実施の形態４．
上述の３つの実施例では、どのクロックサイクルで失敗が起こったか、までが分かるというメリットはあるが、テストを複数回行う必要がありテスト時間がかかるものであった。しかし、失敗率の低いテストの場合、失敗したかどうかだけでも早く知ることができればテストの効率も上がる。そこで、失敗したかどうかの判定だけは、１回のテストで分かるようにした例である。
【００４３】
図８は、本発明の実施の形態４にかかるテスト回路の構成を示すブロック図である。テスト回路４００は、クロックジェネレータ４０１、クロックジェネレータ４０２、テスト対象回路４０３、組み込み自己テスト回路４０４、テスタ同期回路４０５を備えており、ここまでの構成については、図１または図５と同様であり説明を省略する。更に、テスト回路４００は、失敗情報保存レジスタ４０６及びマルチプレクサ４０７を備える。
【００４４】
失敗情報保存レジスタ４０６は、組み込み自己テスト回路４０４から受信したテスト結果を保存するためのレジスタであり、クロックジェネレータ４０１、組み込み自己テスト回路４０４及びマルチプレクサ４０７と接続されている。失敗情報保存レジスタ４０６は、組み込み自己テスト回路４０４からテスト結果を受信し、その結果をマルチプレクサ４０７へ送信する。
【００４５】
マルチプレクサ４０７は、分割された信号を一つにまとめて出力する電気回路であり、組み込み自己テスト回路４０４及び失敗情報保存レジスタ４０６と接続されている。マルチプレクサ４０７は、組み込み自己テスト回路４０４からはテスト結果及び、テスト終了信号を受信する。
【００４６】
続いて、本発明における組み込み自己テスト回路４０４、失敗情報保存レジスタ４０６及びマルチプレクサ４０７の動作について説明する。組み込み自己テスト回路４０４は、テスト対象回路４０３のテストを行い、その結果を失敗情報保存レジスタ及びマルチプレクサ４０７へ送信する。失敗情報保存レジスタ４０６は、一度失敗という情報が保存されると以後は失敗という情報が保存されたままになる。失敗情報保存レジスタ４０６及び失敗情報の構成例としては、例えば、成功を０、失敗を１とし、レジスタは現在の値と組み込み自己テスト回路４０４から受信した値のＯＲを計算し、その計算結果を新たなレジスタの値として保存する、等が考えられる。
【００４７】
マルチプレクサ４０７は、組み込み自己テスト回路４０４からテスト結果情報を受信すると共に、テストが終了したかどうかのテスト終了信号を受信する。マルチプレクサ４０７は組み込み自己テスト回路４０４から受信したテスト終了信号が終了していないという信号の場合、テスタ同期回路４０５へ組み込み自己テスト回路４０４から受信したテスト結果情報を送信する。もし、テスト終了信号が終了したという信号の場合、失敗情報保存レジスタ４０６から失敗情報を受信し、その情報をテスタ同期回路４０５へ送信する。判定出力は、例えば、図９の表に示すような結果となり、一度失敗情報保存レジスタから失敗情報が出力されると、以後のクロックサイクルでは毎回失敗情報が出力される。
【００４８】
このようにすることにより、１回のテストでテストが失敗したかどうかの情報を知ることが可能となる。失敗が確認された後、どのクロックサイクルで失敗したかを確認するには、本発明の実施の形態１または２の方法を適用することが可能である。
【００４９】
その他の発明の実施の形態．
上述の例では、テストを行う回路をテスト回路内に組み込む組み込み自己テスト回路で行ったが、これを別途外部接続にしてもよい。
【図面の簡単な説明】
【００５０】
【図１】本発明におけるテスト回路の全体構成を示すブロック図である。
【図２】本発明におけるテスタ観測間隔及び付加ダミークロックサイクル数の決定方法を示すフローチャートである。
【図３】本発明における動作クロックサイクルと、テスト判定出力、テスト回路の結果出力の対応を示す表である。
【図４】本発明における動作クロックサイクルと、テスト判定出力、テスト回路の結果出力の対応を示す表である。
【図５】本発明におけるテスト回路の全体構成を示すブロック図である。
【図６】本発明における動作クロックサイクルと、テスト判定出力、テスト回路の結果出力の対応を示す表である。
【図７】本発明におけるテスト回路の全体構成を示すブロック図である。
【図８】本発明におけるテスト回路の全体構成を示すブロック図である。
【図９】本発明における動作クロックサイクルと、テスト判定出力、テスト回路の結果出力の対応を示す表である。
【符号の説明】
【００５１】
１００  テスト回路
１０１  クロックジェネレータ
１０２  クロックジェネレータ
１０３  テスト対象回路
１０４  組み込み自己テスト回路
１０５  テスタ同期回路
２００  テスト回路
２０１  クロックジェネレータ
２０２  クロックジェネレータ
２０３  テスト対象回路
２０４  組み込み自己テスト回路
２０５  オフセット付きテスタ同期回路
３００  テスト回路
３０１  クロックジェネレータ
３０２  テスト対象回路
３０３  組み込み自己テスト回路
３０４  テスタ同期カウンタ
４００  テスト回路
４０１  クロックジェネレータ
４０２  クロックジェネレータ
４０３  テスト対象回路
４０４  組み込み自己テスト回路
４０５  テスタ同期回路
４０６  失敗情報保存レジスタ
４０７  マルチプレクサ
【図１】
2005265698.tif 000003
【図２】
2005265698.tif 000004
【図３】
2005265698.tif 000005
【図４】
2005265698.tif 000006
【図５】
2005265698.tif 000007
【図６】
2005265698.tif 000008
【図７】
2005265698.tif 000009
【図８】
2005265698.tif 000010
【図９】
2005265698.tif 000011