(57)【要約】  ＢＩＳＴ用のクロック信号の周波数を可変にすることにより、試験時間の短縮を図った回路装置を提供することを課題とする。  回路装置は、第１周波数のクロックを出力するクロック生成部と、クロック生成部が出力する第１周波数のクロックを入力し、第１周波数のクロックの位相に対し、位相を進角又は遅角させた第１周波数のクロックをそれぞれ出力する複数の位相制御部と、複数の位相制御部がそれぞれ出力する複数の第１周波数のクロックを入力し、複数の第１周波数のクロックのパルスを順次選択して、第２周波数のクロックを出力する選択部と、選択部が出力した第２周波数のクロックに基づいて、テストパターンを生成するパターン生成部と、選択部が出力した第２周波数のクロックとパターン発生部が生成したテストパターンを入力し、第２周波数のクロックに基づき、テストパターンを入力として動作した動作結果を出力する回路部を有する。
2012035651.tif 000002
【特許請求の範囲】
【請求項１】
第１の周波数のクロック信号を出力するクロック生成部と、
前記クロック生成部が出力する第１の周波数のクロック信号を入力し、前記第１の周波数のクロック信号の位相に対し、位相を進角又は遅角させた第１の周波数のクロック信号をそれぞれ出力する複数の位相制御部と、
前記複数の位相制御部がそれぞれ出力する複数の第１の周波数のクロック信号を入力し、前記複数の第１の周波数のクロック信号のパルスを順次選択して、第２の周波数のクロック信号を出力する選択部と、
前記選択部が出力した第２の周波数のクロック信号に基づいて、テストパターンを生成するパターン生成部と、
前記選択部が出力した第２の周波数のクロック信号と前記パターン発生部が生成したテストパターンを入力し、前記第２の周波数のクロック信号に基づき、前記テストパターンを入力として動作した動作結果を出力する回路部を有することを特徴とする回路装置。
【請求項２】
前記回路装置はさらに、
前記パターン生成部が出力する制御信号を入力し、前記制御信号に基づいて前記選択部を制御する制御部を有することを特徴とする請求項１記載の回路装置。
【請求項３】
前記回路装置において、
前記パターン生成部は、
前記回路部に入力するテストパターンを出力した後に前記制御信号を出力することを特徴とする請求項１記載の回路装置。
【請求項４】
前記回路装置はさらに、
前記回路部が出力する動作結果と前記回路部に入力されるテストパターンに対する期待値を入力するとともに、前記動作結果と前記期待値とを比較した比較結果を出力する比較部と、
前記比較部が出力する比較結果を保持する比較結果保持部を有することを特徴とする請求項１記載の回路装置。
【請求項５】
前記回路装置において、
前記比較部は、
前記動作結果と前記期待値との排他的論理和演算を行う排他的論理和演算回路と、
前記排他的論理和演算回路の出力と前記比較結果保持部の出力との論理和演算を行った結果を、前記比較結果保持部に出力する論理和演算回路を有することを特徴とする請求項４記載の回路装置。
【請求項６】
前記回路装置において、
前記比較部はさらに、
前記論理和演算回路からの前記排他的論理和演算回路の出力と前記比較結果保持部の出力との論理和演算を行った結果と前記制御信号の否定演算を行った結果との論理積演算を行った結果を、前記比較結果保持部に出力する論理積演算回路を有することを特徴とする請求項５記載の回路装置。
【請求項７】
前記回路装置において、
前記制御部は、
前記選択部が出力する第２の周波数のクロック信号に基づいて、前記選択部が入力した複数の第１の周波数のクロック信号のパルスを順次選択する選択信号を出力する選択信号生成部と、
前記入力した制御信号と前記クロック生成部が出力する第１の周波数のクロック信号に基づいて、前記複数の位相制御部を制御する位相制御信号をそれぞれ出力する複数の位相制御信号生成部を有することを特徴とする請求項２記載の回路装置。
【請求項８】
第１の周波数のクロック信号を出力するクロック生成回路に接続する周波数変更回路において、
前記クロック生成回路が出力する第１の周波数のクロック信号を入力し、前記第１の周波数のクロック信号の位相に対し、位相を進角又は遅角させた第１の周波数のクロック信号をそれぞれ出力する複数の位相制御部と、
前記複数の位相制御部がそれぞれ出力する複数の第１の周波数のクロック信号を入力し、前記複数の第１の周波数のクロック信号のパルスを順次選択して、第２の周波数のクロック信号を出力する選択部を有することを特徴とする周波数変更回路。
【請求項９】
回路装置の試験方法において、
前記回路装置が有するクロック生成部が、第１の周波数のクロック信号を出力するステップと、
前記回路装置が有する複数の位相制御部が、前記クロック生成部が出力する第１の周波数のクロック信号を入力し、前記第１の周波数のクロック信号の位相に対し、位相を進角又は遅角させた第１の周波数のクロック信号をそれぞれ出力するステップと、
前記回路装置が有する選択部が、前記複数の位相制御部がそれぞれ出力する複数の第１の周波数のクロック信号を入力し、前記複数の第１の周波数のクロック信号のパルスを順次選択して、第２の周波数のクロック信号を出力するステップと、
前記回路装置が有するパターン生成部が、前記選択部が出力した第２の周波数のクロック信号に基づいて、テストパターンを生成するステップと、
前記回路装置が有する回路部が、前記選択部が出力した第２の周波数のクロック信号と前記パターン発生部が生成したテストパターンを入力し、前記第２の周波数のクロック信号に基づき、前記テストパターンを入力として動作した動作結果を出力するステップを有することを特徴とする回路装置の試験方法。
【請求項１０】
第１の周波数のクロック信号を出力するクロック生成回路に接続する周波数変更回路の制御方法において、
前記周波数変更回路が有する複数の位相制御部が、前記クロック生成回路が出力する第１の周波数のクロック信号を入力し、前記第１の周波数のクロック信号の位相に対し、位相を進角又は遅角させた第１の周波数のクロック信号をそれぞれ出力するステップと、
前記周波数変更回路が有する選択部が、前記複数の位相制御部がそれぞれ出力する複数の第１の周波数のクロック信号を入力し、前記複数の第１の周波数のクロック信号のパルスを順次選択して、第２の周波数のクロック信号を出力するステップを有することを特徴とする周波数変更回路の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、回路装置、周波数変更回路、回路装置の試験方法、及び周波数変更回路の制御方法に関する。
【背景技術】
【０００２】
従来より、ＬＳＩの回路の論理に応じた所定のテストパターンを生成するパターン生成回路と、生成したテストパターンを入力して回路を動作させた結果に基づき、ＬＳＩの良否を判定する判定回路とを、ＬＳＩ内部に組み込むＢＩＳＴ（Build In Self Test：組み込み自己試験）技術が知られている。このＢＩＳＴ技術により、半導体工場におけるＬＳＩ出荷工程における試験時間を短縮させるとともに、試験コストを引き下げることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２１２３１０号公報
【特許文献２】特開２００７−０６４６４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来の半導体回路装置のような回路装置は、ＢＩＳＴ用のクロック信号の周波数を変更するための回路を含んでいない。【０００５】
このため、クロック信号の周波数を振った場合のＢＩＳＴによる試験結果を取得するためには、クロック信号を出力するＰＬＬ（Phase Locked Loop：位相同期回路）等の出力周波数を変更する度に、ＰＬＬの周波数設定を変更するとともに、ＰＬＬの出力周波数が安定するのを待ち、被試験回路の初期化を実行してから、ＢＩＳＴを実行する必要があった。【０００６】
そこで、ＢＩＳＴ用のクロック信号の周波数を可変にすることによりＰＬＬの周波数設定値を変更する必要がなくなり、試験時間の短縮を図った回路装置、周波数変更回路、回路装置の試験方法、及び周波数変更回路の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の実施の形態の回路装置は、第１の周波数のクロック信号を出力するクロック生成部と、前記クロック生成部が出力する第１の周波数のクロック信号を入力し、前記第１の周波数のクロック信号の位相に対し、位相を進角又は遅角させた第１の周波数のクロック信号をそれぞれ出力する複数の位相制御部と、前記複数の位相制御部がそれぞれ出力する複数の第１の周波数のクロック信号を入力し、前記複数の第１の周波数のクロック信号のパルスを順次選択して、第２の周波数のクロック信号を出力する選択部と、前記選択部が出力した第２の周波数のクロック信号に基づいて、テストパターンを生成するパターン生成部と、前記選択部が出力した第２の周波数のクロック信号と前記パターン発生部が生成したテストパターンを入力し、前記第２の周波数のクロック信号に基づき、前記テストパターンを入力として動作した動作結果を出力する回路部を有することを特徴とする。
【発明の効果】
【０００８】
ＢＩＳＴ用のクロック信号の周波数を可変にすることによりＰＬＬの周波数設定値を変更する必要がなくなり、試験時間の短縮を図った回路装置、周波数変更回路、回路装置の試験方法、及び周波数変更回路の制御方法を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】比較例の半導体回路装置を示すブロック図である。
【図２】実施の形態１の半導体回路装置１０を示すブロック図である。
【図３】実施の形態１の半導体回路装置１０のサイクルスイープ回路１１を示す図である。
【図４】実施の形態１の半導体回路装置１０におけるクロック信号の周波数を変更する手順を示すタイミングチャートである。
【図５】実施の形態２の半導体回路装置をＬＳＩテスタに接続した状態を示す図である。
【図６】実施の形態２の半導体回路装置２００のサイクルスイープ回路２１１を示す図である。
【図７Ａ】実施の形態２の半導体回路装置２００の位相制御回路２０を示す図である。
【図７Ｂ】実施の形態２の半導体回路装置２００の位相制御回路２０の動作原理を説明するためのタイミングチャートである。
【図８】実施の形態２の半導体回路装置２００のスイープ用シーケンサ４０を示す図である。
【図９Ａ】実施の形態２の半導体回路装置２００のスキャン系制御回路１６が行う処理を示す図である。
【図９Ｂ】実施の形態２の半導体回路装置２００のスイープ用シーケンサ４０が行う処理を示す図である。
【図１０】実施の形態２の半導体回路装置２００の位相選択回路３０でクロック信号ＣＫＢの位相を変化させる際の、Ｎｏｄｅ番号とパラメータｋの値の遷移の様子を表す状態遷移図である。
【図１１Ａ】実施の形態２の半導体回路装置２００の位相選択回路３０において、Ｎｏｄｅ ０からＮｏｄｅ ｎ−１の信号線を順番に選択して、クロック信号ＣＫＢを生成する際のタイミングチャートを示す図である。
【図１１Ｂ】実施の形態２の半導体回路装置２００の位相選択回路３０において、Ｎｏｄｅ ０からＮｏｄｅ ｎ−１の信号線を順番に選択して、クロック信号ＣＫＢを生成する際のタイミングチャートを示す図である。
【図１２】実施の形態２の半導体回路装置２００の試験結果記憶回路１５を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の回路装置、周波数変更回路、回路装置の試験方法、及び周波数変更回路の制御方法を適用した実施の形態について説明する。
【００１１】
実施の形態１、２の半導体回路装置について説明する前に、まず、図１を用いて、比較例の半導体回路装置における問題点について説明する。
【００１２】
図１は、比較例の半導体回路装置を示すブロック図である。
【００１３】
比較例の半導体回路装置１は、ＰＬＬ（Phase Locked Loop：位相同期回路）２、テストパターン発生回路３、被試験回路４、及び試験結果記憶回路５を含む。
【００１４】
半導体回路装置１は、ＬＳＩ（Large Scale Integration circuit：大規模集積回路）であり、例えば、ＳＲＡＭ（Static Random Access Memory）を含む。
【００１５】
図１に示す半導体回路装置１のうち、テストパターン発生回路３及び試験結果記憶回路５は、ＢＩＳＴを実行するために必要な回路であり、被試験回路４はＳＲＡＭである。
【００１６】
ＰＬＬ２は、半導体回路装置１の外部から入力するクロック信号の周波数を逓倍したクロック信号を出力する。ＰＬＬ２は、半導体回路装置１の通常動作（システム動作）時に半導体回路装置１の外部の水晶発振器からクロック信号が入力されると、通常動作（システム動作）用のクロック信号を出力する。また、ＰＬＬ２は、ＢＩＳＴ実行時にＬＳＩテスタからクロック信号が入力されると、ＢＩＳＴ用のクロック信号を出力する。
【００１７】
ＰＬＬ２は、テストパターン発生回路３、被試験回路４、及び試験結果記憶回路５に接続されており、テストパターン発生回路３、被試験回路４、及び試験結果記憶回路５にＢＩＳＴ用のクロック信号をそれぞれ入力する。
【００１８】
ここで、通常動作（システム動作）とは、半導体回路装置１がＳＲＡＭ（Static Random Access Memory）である場合は、半導体回路装置１をＳＲＡＭとして用いる動作をいう。このため、通常動作用のクロック信号は、ＳＲＡＭとしての半導体回路装置１が通常動作（システム動作）を行うのに必要なクロック信号である。
【００１９】
また、ＢＩＳＴ用のクロック信号とは、被試験回路４のＢＩＳＴを実行するのに必要なクロック信号である。
【００２０】
テストパターン発生回路３は、被試験装置４のＢＩＳＴに必要なテストパターンのデータを発生する回路であり、例えば、プログラムレジスタを含むシーケンサを用いることができる。
【００２１】
ここで、テストパターンは、被試験回路４に含まれるすべてのビットセルに書き込むためのデータ（書き込みデータ）、各ビットセルのアドレスを表すデータ（アドレスデータ）、Ｗ／Ｅ（Write/Enable）信号、期待値等を表すデータを含む。テストパターンは、テストパターン発生回路３のプログラムレジスタによって発生される。
【００２２】
テストパターン発生回路３の出力端は、被試験回路４と試験結果記憶回路５に接続されている。
【００２３】
テストパターン発生回路３は、被試験装置４にテストパターンのうちの書き込みデータ、アドレスデータ、及びＷ／Ｅ信号を入力し、試験結果記憶回路５に期待値を入力する。
【００２４】
被試験回路４は、ＢＩＳＴの試験対象となる回路であり、例えば、ＳＲＡＭである。
【００２５】
被試験回路４の出力端は試験結果記憶回路５に接続されている。被試験回路４は、ＢＩＳＴ用のクロック信号とテストパターンとに基づいて動作した結果を表す動作結果を出力する。
【００２６】
試験結果記憶回路５は、被試験回路４の動作結果を期待値と比較することによって得る試験結果（ＢＩＳＴの試験結果）を記憶する回路であり、例えば、レジスタを用いることができる。
【００２７】
ＢＩＳＴの試験結果は、書き込みデータを被試験回路４に書き込んだ後に被試験回路４から読み出したデータと、期待値とを比較し場合の一致／不一致の結果（被試験回路４の良否結果）を表す。
【００２８】
被試験回路４のすべてのビットセルから読み出したデータが、期待値と一致する場合には試験結果は合格（被試験回路４は良品）となり、読み出したデータに期待値と不一致のデータが含まれる場合には試験結果は不合格（被試験回路４は不良品）となる。
【００２９】
半導体回路装置１のＢＩＳＴを行う場合は、半導体回路装置１をＬＳＩテスタに接続し、ＰＬＬ２にＢＩＳＴ用の入力信号を入力する。ＰＬＬはＢＩＳＴ用のクロック信号を出力し、ＢＩＳＴ用のクロック信号は、テストパターン発生回路３、被試験回路４、及び試験結果記憶回路５に入力する。
【００３０】
テストパターン発生回路３は、ＰＬＬ２から入力するＢＩＳＴ用のクロック信号に応じ、試験対象である被試験回路の論理に基づいたテストパターンを出力する。テストパターン発生回路３が出力するテストパターンは、被試験回路４に入力する。
【００３１】
被試験回路４は、ＢＩＳＴ用のクロック信号に基づいてテストパターンに含まれる書き込みデータを書き込む。書き込み処理が終わると、書き込みデータは被試験回路４から読み出され、試験結果記憶回路５が読み出したデータを期待値と比較し、試験結果を表すデータを記憶する。
【００３２】
そして、試験結果記憶回路５に記憶された試験結果は、ＬＳＩテスタによってスキャンアウトされて試験結果記憶回路５の外部に取り出される。
【００３３】
ところで、半導体回路装置１の良否判定を検証する際には、テストパターンを印加する被試験回路４の動作周波数を変化させて、様々な動作条件下での試験結果を検証する必要がある。
【００３４】
このため、一般的に、半導体回路装置１のようなＬＳＩの良否判定を検証する際には、シュムープロット（Shmoo Plot）を作成する。
【００３５】
シュムープロットとは、実物のＬＳＩでの動作マージンを調査するために、ＢＩＳＴのテストパターンを印加する際における被試験回路４の電源電圧と動作周波数といった相関関係のあるパラメータを縦軸及び横軸とし、被試験回路４の電源電圧及び動作周波数を変化させて得る試験結果をマトリクス状にまとめたものである。
【００３６】
シュムープロットは、被試験回路４の電源電圧と動作周波数に加えて半導体回路装置１の温度もパラメータとする場合には、縦軸及び横軸に直交する第３の軸（温度軸）を含むことになる。
【００３７】
このようなシュムープロットを用いれば、ＬＳＩが動作しうる範囲における各パラメータの組み合わせを把握することができる。
【００３８】
しかしながら、比較例の半導体回路装置１のＢＩＳＴでは、１回の試験で、１つのテストパターンによる動作試験（１種類の電源電圧、１種類の動作周波数、１種類の温度についての動作試験）を行っている。被試験回路４の電源電圧、動作周波数、又は温度を変更するには、電源電圧、動作周波数、又は温度を再設定する必要がある。
【００３９】
従って、複数の電源電圧、複数の動作周波数、複数の温度についてＢＩＳＴを実行してシュムープロットを作成するためには、被試験回路４の電源電圧、動作周波数等のパラメータを変更しながら、ＢＩＳＴを繰り返す必要があった。
【００４０】
また、１つのテストパターンによるＢＩＳＴを行う場合は、被試験回路４にテストパターンを印加する時間の他に、被試験回路４の電源をオン／オフするための時間、スキャンイン／スキャンアウトによる被試験回路４の設定／試験結果の読み出しに必要な時間等がかかる。
【００４１】
このため、比較例の半導体回路装置１において、パラメータを変更しながらシュムープロットを作成するには、多大な時間を要するという問題があった。
【００４２】
特に、パラメータの中でも被試験回路４の動作周波数を変更する場合には、ＰＬＬ２が出力するクロック信号の周波数を変更する必要があり、ＰＬＬ２の出力周波数が安定するまでに時間がかかるため、シュムープロットの作成時間の長時間化の大きな要因になっていた。
【００４３】
以上のように、比較例の半導体回路装置１は、被試験回路４の動作周波数を変更しながらシュムープロットを作成するのに多大な時間を要するという問題があった。
【００４４】
このため、以下で説明する実施の形態１、２では、上述の問題点を解決した半導体回路装置を提供することを目的とする。以下、実施の形態１、２の半導体回路装置について説明する。
【００４５】
＜実施の形態１＞
図２は、実施の形態１の半導体回路装置１０を示すブロック図である。
【００４６】
実施の形態１の半導体回路装置１０は、サイクルスイープ回路１１、ＰＬＬ１２、テストパターン発生回路１３、被試験回路１４、及び試験結果記憶回路１５を含む。
【００４７】
図２に示すＰＬＬ１２、被試験回路１４、及び試験結果記憶回路１５は、それぞれ、入力するＢＩＳＴ用のクロック信号が実施の形態１と異なるが、図１に示す比較例の半導体回路装置１のＰＬＬ２、被試験回路４、及び試験結果記憶回路５と基本的に同様である。このため、ＰＬＬ１２、被試験回路１４、及び試験結果記憶回路１５についての説明は、図１に示すＰＬＬ２、被試験回路４、及び試験結果記憶回路５の説明を援用する。
【００４８】
実施の形態１では、回路装置の一例として、半導体回路装置１０がＬＳＩである場合について説明する。半導体回路装置１０がＬＳＩである場合には、高速化、高機能化、製造コストの抑制、信頼性の向上等を図ることができる。
【００４９】
しかしながら、回路装置は、半導体回路装置１０のようなＬＳＩに限らず、サイクルスイープ回路１１、ＰＬＬ１２、テストパターン発生回路１３、又は試験結果記憶回路１５のうちの少なくともいずれか一つは、ディスクリート部品又はＦＰＧ（Field Programmable Gate array）等で実現されてもよい。
【００５０】
実施の形態１の半導体回路装置１０は、サイクルスイープ回路１１でＢＩＳＴ用のクロック信号の周波数を変更しながらＢＩＳＴを実行し、シュムープロットの周波数特性を連続的な一度の処理で取得することを可能にする。
【００５１】
このような処理を可能にするため、テストパターン発生回路１３は、実施の形態１のテストパターン発生回路３に新たな機能を追加したものになっている。この追加機能については後述する。
【００５２】
サイクルスイープ回路１１は、ＰＬＬ１２とテストパターン発生回路１３、被試験回路１４、及び試験結果記憶回路１５との間に配設されている。
【００５３】
サイクルスイープ回路１１は、クロック生成部の一例としてのＰＬＬ１２が出力するＢＩＳＴ用のクロック信号ＣＫＡを入力し、クロック信号ＣＫＡの周波数を変更することのできる回路である。
【００５４】
以下の説明では、サイクルスイープ回路１１は、クロック信号ＣＫＡを入力し、クロック信号ＣＫＡの周波数を変更したクロック信号ＣＫＢを出力することとする。クロック信号ＣＫＢは、クロック信号ＣＫＡの位相を進角又は遅角させることにより、クロック信号ＣＫＡの周波数を変更した信号である。
【００５５】
ここで、クロック信号ＣＫＡを進角又は遅角する度合は、離散的に設定することができる。クロック信号ＣＫＡを進角させた場合は、サイクルスイープ回路１１から出力するクロック信号ＣＫＢの１周期は短くなり、周波数は高くなる。一方、クロック信号ＣＫＡを遅角させた場合は、サイクルスイープ回路１１から出力するクロック信号ＣＫＢの１周期は長くなり、周波数は低くなる。
【００５６】
また、クロック信号ＣＫＡを進角又は遅角する度合として、"０"を設定することもできる。進角又は遅角の度合として"０"を設定した場合、サイクルスイープ回路１１から出力するクロック信号ＣＫＢは、サイクルスイープ回路１１に入力するクロック信号ＣＫＡと同一の周期及び周波数を有することになる。
【００５７】
なお、実施の形態１では、クロック信号ＣＫＡの位相を進角させたクロック信号ＣＫＢを用いる実施形態について説明する。
【００５８】
サイクルスイープ回路１１から出力するクロック信号ＣＫＢは、テストパターン発生回路１３、被試験回路１４、試験結果記憶回路１５に入力する。
【００５９】
テストパターン発生回路１３は、サイクルスイープ回路１１から入力するＢＩＳＴ用のクロック信号ＣＫＢに基づき、ある種類のテストパターンを複数回（ｍ回（ｍは２以上の任意の整数））出力するパターン生成部の一例である。テストパターン発生回路１３が出力するテストパターンは、被試験回路１４に入力される。
【００６０】
ここで、実施の形態１におけるテストパターンは、テストパターン発生回路１３において、周期が徐々に短縮されるクロック信号ＣＫＢとともに発生されるため、連続して生成されるテストパターンは、複数の動作周波数を含むことになる。
【００６１】
また、テストパターン発生回路１３は、比較例のテストパターン発生回路３に対する追加機能として、試験結果記憶回路１５に入力するためのラップ信号を出力する機能を有する。ラップ信号は、テストパターンと同様に、テストパターン発生回路１３の内部のプログラムレジスタによって発生される。
【００６２】
テストパターン発生回路１３は、ｍ回のテストパターンを順番に発生する際に、テストパターンが一巡して切り替わる度に、ラップ信号を出力する。ラップ信号は、テストパターンが一巡して切り替わる度に（１つ１つのテストパターンが終了する度に）テストパターン発生回路１３によって所定期間だけＨレベル（"１"）に立ち上げられ、テストパターンの実行中はＬレベル（"０"）に設定される信号であるが、その詳細については後述する。
【００６３】
被試験回路１４は、ＢＩＳＴ用のクロック信号ＣＫＢに基づいてテストパターンを処理し、処理結果（動作結果）を試験結果記憶回路１５に入力する回路部の一例である。
【００６４】
試験結果記憶回路１５は、被試験回路１４の処理結果（動作結果）を期待値と比較し、試験結果（比較結果）を表すデータを記憶する。試験結果記憶回路１５は、処理結果（動作結果）を期待値と比較する比較部の一例としての機能と、試験結果（比較結果）を保持する比較結果保持部の一例としての機能とを含む。
【００６５】
次に、図３を用いて、サイクルスイープ回路１１について説明する。
【００６６】
図３は、実施の形態１の半導体回路装置１０のサイクルスイープ回路１１を示す図である。
【００６７】
サイクルスイープ回路１１は、クロック入力端１１Ａ、クロック出力端子１１Ｂ、ラップ信号入力端子１１Ｃ、位相制御回路２０１、２０２、・・・、２０ｎ−１、位相選択回路３０、及びスイープ用シーケンサ４０を含む。
【００６８】
クロック入力端１１Ａと位相選択回路３０との間は、信号線が並列なｎ本に分岐している。分岐したｎ本の信号線をそれぞれ、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１と区別する。
【００６９】
クロック出力端子１１Ｂは、図２に示すテストパターン生成回路１３、被試験回路１４、及び試験結果記憶回路１５に接続されており、サイクルスイープ回路１１で周波数が変更されたクロック信号をテストパターン生成回路１３、被試験回路１４、及び試験結果記憶回路１５に入力する。
【００７０】
ラップ信号入力端子１１Ｃは、図２に示すテストパターン発生回路１３に接続されており、テストパターン発生回路１３が出力するラップ信号をサイクルスイープ回路１１に入力する。
【００７１】
位相制御回路２０１、２０２、・・・、２０ｎ−１は、それぞれ、クロック入力端１１Ａと位相選択回路３０との間において、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線に挿入されている。Ｎｏｄｅ ０の信号線には、位相制御回路は挿入されていない。
【００７２】
位相制御回路２０１、２０２、・・・、２０ｎ−１は、それぞれ、スイープ用シーケンサ４０から入力する位相制御信号１〜ｎ−１に基づき、クロック信号ＣＫＡの位相を進角させるために、クロック信号ＣＫＡの１周期を単位時間の（１×ｋ）倍、（２×ｋ）倍、・・・、（（ｎ−１）×ｋ）倍だけ短縮する複数の位相制御部の一例である。
【００７３】
スイープ用シーケンサ４０から入力する位相制御信号１〜ｎ−１は、ｎとｋの値に応じて、位相制御回路２０１、２０２、・・・、２０ｎ−１の各々によるクロック信号ＣＫＡの位相の進角又は遅角を制御する制御信号である。
【００７４】
位相制御信号１〜ｎ−１は、それぞれ、クロック信号ＣＫＡの１周期の短縮の度合として、単位時間の（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍の時間を表す。
【００７５】
ここで、ｎは、２以上の任意の整数であり、位相制御回路２０１、２０２・・・２０ｎ−１の数（ｎ−１）に、Ｎｏｄｅ ０の分の１を加えた固定値である。
【００７６】
また、パラメータｋは、最大値をｍ−１（ｍは２以上の任意の整数（固定値））として、０からｍまで順番に増加するパラメータである。
【００７７】
実施の形態１の半導体回路装置１０は、ｍ個のテストパターン０〜テストパターンｍ−１を順番に用いてＢＩＳＴを実行する。パラメータｋの値は、そのときに用いるテストパターンｋを表す。
【００７８】
なお、テストパターンは、０〜ｍ−１のｍ個であるが、パラメータｋの値が０から順番に増加してｍに達すると、テストパターン０〜テストパターンｍ−１によるＢＩＳＴがすべて終了したことになる。
【００７９】
実施の形態１の半導体回路装置１０では、パラメータｋの値を０から（ｍ−１）まで順番に増やしながら、位相制御回路２０１、２０２・・・２０ｎ−１で順番にクロック信号ＣＫＡの周期を短縮する。また、半導体回路装置１０は、パラメータｋの値がｍに達すると、ＢＩＳＴを終了する。
【００８０】
具体的には、クロック信号ＣＫＡの周期は、位相制御回路２０１、２０２、・・・、２０ｎ−１において、単位時間の（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍の式により、パラメータｋの値を０から（ｍ−１）まで順番に増やしながら、短縮される。
【００８１】
すなわち、パラメータｋが０から最大値（ｍ−１）になるまでに、単位時間の（１×０）倍、（２×０）倍、・・・、（（ｎ−１）×０）倍、（０×１）倍、（１×１）倍、（２×１）倍・・・（（ｎ−１）×１）倍、・・・、（０×（ｍ−１））倍、（１×（ｍ−１））倍、（２×（ｍ−１））倍、・・・、（（ｎ−１）×（ｍ−１））倍という順番で、クロック信号ＣＫＡの周期が繰り返し短縮される。
【００８２】
位相選択回路３０は、スイープ用シーケンサ４０から入力する位相選択信号に基づいて、周期を短縮したクロック信号ＣＫＢを生成する回路である。
【００８３】
位相選択信号は、位相選択回路３０にＮｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の各々の信号線を介して入力するクロック信号ＣＫＡ（Ｎｏｄｅ  ０が選択された場合）又は位相制御回路１〜ｎ−１からのクロック信号（Ｎｏｄｅ  １〜ｎ−１が選択された場合）のＨ（High）レベルのパルスを順番に選択する信号である。
【００８４】
ここで、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の各々の信号線の番号をＮｏｄｅ番号とすると、位相選択信号は、位相選択回路３０が選択する信号線のＮｏｄｅ番号を表す。
【００８５】
Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線から位相選択回路３０に入力するクロック信号ＣＫＡを１周期毎に順番に選択するために、位相選択信号が表すＮｏｄｅ番号は、１周期毎に順番に変化する。
【００８６】
位相選択回路３０は、位相選択信号に基づいて、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の各々の信号線を介して入力するクロック信号ＣＫＡのＨレベルのパルスを１周期毎に１つずつ順番に選択することにより、周期を短縮したクロック信号ＣＫＢを生成する。位相選択回路３０としては、例えば、セレクタを用いればよい。位相選択回路３０は、選択部の一例である。
【００８７】
上述のように、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線には、位相制御回路２０１、２０２、・・・、２０ｎ−１が挿入されており、Ｎｏｄｅ０の信号線には位相制御回路が挿入されていない。
【００８８】
このため、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の信号線を介して位相選択回路３０に入力するクロック信号ＣＫＡのＨレベルのパルスの位相は、単位時間の０倍、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍だけそれぞれ進角する。
【００８９】
上述のように、パラメータｋの値が０から最大値（ｍ−１）になるまで、位相制御回路２０１、２０２・・・２０ｎ−１で順番にクロック信号ＣＫＡのＨレベルのパルスの位相を進角するのに合わせて、位相選択回路３０は、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線を介して入力するクロック信号ＣＫＡのＨレベルのパルスを１つずつ順番に選択する。
【００９０】
これにより、位相選択回路３０が出力するクロック信号ＣＫＢの周期のＨレベルのパルスの位相は、クロック信号ＣＫＡのＨレベルのパルスの位相に対して、１周期毎に順番に、単位時間の０倍、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍ずつ進角される。
【００９１】
すなわち、クロック信号ＣＫＢの周期のＨレベルのパルスの位相は、クロック信号ＣＫＡのＨレベルのパルスの位相に対して、１単位時間の（０×０）倍、（１×０）倍、（２×０）倍・・・（（ｎ−１）×０）倍、（０×１）倍、（１×１）倍、（２×１）倍・・・（（ｎ−１）×１）倍、・・・、（０×（ｍ−１））倍、（１×（ｍ−１））倍、（２×（ｍ−１））倍・・・（（ｎ−１）×（ｍ−１））倍という順番で、パラメータｋの値を０から最大値（ｍ−１）まで増やしながら、繰り返し進角される。
【００９２】
このようなクロック信号ＣＫＢの周期の短縮は、シュムープロットの周波数特性を連続的に一度の処理で取得するために行われる。
【００９３】
スイープ用シーケンサ４０は、位相制御回路２０１、２０２・・・２０ｎ−１の各々に入力する位相制御信号１〜ｎ−１と、位相選択回路３０に入力する位相選択信号とを出力する制御部の一例である。
【００９４】
スイープ用シーケンサ４０には、テストパターン発生回路１３（図２参照）から制御信号の一例であるラップ信号が入力する。
【００９５】
なお、ラップ信号は、上述のように、１つのテストパターンが終了する毎にテストパターン発生回路１３によってＨレベル（"１"）に立ち上げられ、テストパターンの実行中はＬレベル（"０"）に設定される。
【００９６】
スイープ用シーケンサ４０は、ラップ信号が入力する度に、パラメータｋの値を１つずつ増加させる。
【００９７】
スイープ用シーケンサ４０が位相制御信号１〜ｎ−１及び位相選択信号で位相制御回路２０１、２０２・・・２０ｎ−１及び位相選択回路３０を制御する。これにより、位相選択回路３０から出力するクロック信号ＣＫＢのＨレベルのパルスの位相は、クロック信号ＣＫＡのＨレベルのパルスの位相に対して、１周期毎に順番にパラメータｋの値が１ずつ増加しながら、単位時間の（０×ｋ）倍、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍ずつ進角される。
【００９８】
ここで、図４のタイミングチャートを用いて、実施の形態１の半導体回路装置１０においてクロック信号の周波数を変更する手順について説明する。
【００９９】
図４は、実施の形態１の半導体回路装置１０におけるクロック信号の周波数を変更する手順を示すタイミングチャートである。
【０１００】
図４（Ａ）は、ｋ＝１（テストパターン１）を被試験回路１４に印加する場合に、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１と、位相選択回路３０から出力するクロック信号ＣＫＢとの波形を示す。
【０１０１】
図４（Ｂ）は、図４（Ａ）に示すクロック信号ＣＫＢと、テストパターン１を実行するのに必要なすべてのクロック信号ＣＫＢとの関係を示す図である。
【０１０２】
図４（Ｃ）は、図４（Ｂ）に示すテストパターン１を実行するのに必要なすべてのクロック信号ＣＫＢと、テストパターン１以外のテストパターンの各々を実行するのに必要なすべてのクロック信号ＣＫＢと、すべてのテストパターンを実行するのに必要なクロック信号ＣＫＢとの関係、及び、ラップ信号が出力するタイミングを示す図である。
【０１０３】
図４（Ｃ）には、各テストパターンを実行するのに必要なクロック信号ＣＫＢを、テストパターン０〜テストパターンｍ−１と示す。
【０１０４】
図４（Ａ）に示すように、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１は、それぞれ、Ｎｏｄｅ ０の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡに対して、ｔ１（単位時間×１）、ｔ２（単位時間×２）、ｔｎ−１（単位時間×（ｎ−１））だけ進角している。
【０１０５】
Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１の各々の信号線におけるクロック信号ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１の位相は、スイープ用シーケンサ４０が出力する位相制御信号１〜ｎ−１により、位相制御回路２０１、２０２・・・２０ｎ−１の各々で進角される。
【０１０６】
位相選択回路３０は、スイープ用シーケンサ４０から入力する位相選択信号に基づき、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の各々の信号線を経て入力するクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１のＨレベルのパルスを順番に選択することにより、クロック信号ＣＫＢを生成する。
【０１０７】
これにより、クロック信号ＣＫＢは、Ｎｏｄｅ ０のクロック信号ＣＫＡのＨレベルのパルス、Ｎｏｄｅ １のクロック信号ＣＫＡ１のＨレベルのパルス、Ｎｏｄｅ ２のクロック信号ＣＫＡ２のＨレベルのパルス、・・・、Ｎｏｄｅ ｎ−１のクロック信号ＣＫＡｎ−１のＨレベルのパルスを組み合わせたクロック信号になる。
【０１０８】
このため、クロック信号ＣＫＢは、位相が全く進角されていないＮｏｄｅ ０のクロック信号ＣＫＡと比較すると、Ｎｏｄｅ ０からＮｏｄｅ ｎ−１にかけてのｎサイクルの間に、徐々に位相が進角して周波数が高くなることが分かる。
【０１０９】
例えば、ｎが４である場合にはＮｏｄｅ ｎ−１のクロック信号ＣＫＡｎ−１は、Ｎｏｄｅ ３のＣＫＡ３となる。この場合のクロック信号ＣＫＢは、Ｎｏｄｅ ０からＮｏｄｅ ３の４つの信号線から入力するクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、ＣＫＡ３のＨレベルのパルスを順番に組み合わせたクロック信号になり、Ｎｏｄｅ ０からＮｏｄｅ ３にかけての４サイクルの間に、徐々に位相が進角して周波数が高くなる。
【０１１０】
なお、位相選択回路３０は、Ｎｏｄｅ ｎ−１の信号線のクロック信号ＣＫＡｎ−１の次に、再びＮｏｄｅ ０の信号線のクロック信号ＣＫＡを選択することになる。このため、Ｎｏｄｅ ｎ−１のクロック信号ＣＫＡｎ−１のＨレベルのパルスが立ち下がった後からＮｏｄｅ ０のクロック信号ＣＫＡが立ち上がるまでの期間は、Ｎｏｄｅ ０〜Ｎｏｄｅ ２の各クロック信号ＣＫＡが立ち下がってから次のパルスが立ち上がるまでの期間よりも長くなる。  実施の形態１の半導体回路装置１０は、上述のようなｎサイクルのクロック信号ＣＫＢを繰り返して用いることにより、１つのテストパターンによるＢＩＳＴを実行する。
【０１１１】
ここで、１つのテストパターンを実行するために必要なクロック信号ＣＫＢのサイクル数は、ｎに比べて多大なサイクル数になる。
【０１１２】
このため、図４（Ｂ）に示すように、テストパターン１を実行するのに必要なクロック信号ＣＫＢは、ｎサイクルのクロック信号ＣＫＢを複数組含むことになる。
【０１１３】
図４（Ｂ）に示すｎサイクルのクロック信号ＣＫＢは、すべて図４（Ａ）に示すクロック信号ＣＫＢと同様に、Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の各々のクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１のＨレベルのパルスを組み合わせたクロック信号である。
【０１１４】
また、図４（Ｂ）に示すように、ラップ信号は、テストパターンが切り替わる際にテストパターン発生回路１３によってＨレベル（"１"）に立ち上げられるため、各テストパターンを実行するのに必要なクロック信号ＣＫＢが終了するタイミングで出力することになる。テストパターン発生回路１３によってラップ信号がＨレベル（"１"）に立ち上げられると、パラメータｋの値が１つ増加する。
【０１１５】
上述のように、実施の形態１では、ｍ個のテストパターン０〜テストパターンｍ−１を用いて、連続的に一度にテストパターンの動作周波数を変化させることにより、シュムープロットの周波数特性を連続的に一度の処理で取得する。
【０１１６】
このため、シュムープロットの周波数特性を連続した一度の処理で取得するのに必要なすべてのテストパターン０〜テストパターンｍ−１に必要なクロック信号ＣＫＢは、図４（Ｃ）に示すように、テストパターン０〜テストパターンｍ−１の各々を実行するのに必要なクロック信号ＣＫＢが連続したクロック信号となる。
【０１１７】
テストパターン０〜テストパターンｍ−１の各々に含まれるクロック信号ＣＫＢの周期は、位相制御回路２０１、２０２・・・２０ｎ−１において、単位時間の（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍の割合で短縮される。
【０１１８】
テストパターン０の場合は、ｋ＝０であるため、クロック信号ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１の位相はクロック信号ＣＫＡと同一である。このため、クロック信号ＣＫＢは位相が進角されず、クロック信号ＣＫＡと同一位相のクロック信号ＣＫＢが位相選択回路３０から出力される。
【０１１９】
これに対して、パラメータｋの値が１以上に大きくなると、単位時間の（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍の式で短縮される度合いが増加するため、図４（Ａ）に示すｋ＝１の場合のクロック信号ＣＫＢよりも、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１のＨレベルのパルスの立ち上がりの位相が進角したクロック信号ＣＫＢになる。
【０１２０】
以上のように、実施の形態１の半導体回路装置１０によれば、図４（Ａ）〜（Ｃ）に示すように、位相を徐々に進角させることによって周期を短縮（周波数を高く）したクロック信号ＣＫＢを用いてＢＩＳＴを実行することができる。
【０１２１】
クロック信号ＣＫＢの周期は、ｋ＝０の場合からｋ＝ｍ−１の場合にかけて段階的に短縮され、周期が最も短縮される場合では、Ｎｏｄｅ ０のＨレベルのパルスの立ち上がりのタイミングに比べて単位時間×（（ｎ−１）×（ｍ−１））だけ短縮される。
【０１２２】
このため、半導体回路装置１０のシュムープロットの周波数特性をすべて網羅できるように、クロック信号ＣＫＡの周波数、ｍの値、ｎの値、及び単位時間を設定すれば、連続した一度のＢＩＳＴを実行することにより、シュムープロットの周波数特性を取得することができる。
【０１２３】
これにより、半導体回路装置１０のシュムープロットを作成する時間を大幅に短縮することができる。
【０１２４】
ここで、半導体回路装置１０の被試験回路１４が２ｋｗ（kilo word）で、アドレス長をＮのＳＲＡＭとした場合に、アドレス長Ｎ×１２回相当のテストパターンを被試験回路１４に印加する場合を考える。なお、一例として、動作周波数は２ＧＨｚ、すなわち１周期５００ｐｓ（ピコ秒）とする。
【０１２５】
１回のテストパターンによるＢＩＳＴに要する時間は、２ｋｗ（２０４８ワード）×１２×５００ｐｓ（ピコ秒）＝約１２．３μｓ（マイクロ秒）となる。
【０１２６】
例えば、テストパターンの数（ｍ）が１２パターンである場合、実施の形態１の半導体回路装置１０は、１２パターンのテストパターンを連続的に一度の処理で被試験回路１４に印加することができるため、１２パターンのテストパターンによるＢＩＳＴの試験結果を得るのに必要な試験時間は、約１５０μｓとなる。
【０１２７】
これに対して、一例として、比較例の半導体回路装置１のように、シュムープロットの周波数特性を取得するために、周波数を変える度にＰＬＬ１２の出力周波数を変更する場合は、１２回のテストパターンによるＢＩＳＴを実行するのに、約１５ｍｓ（ミリ秒）程度の時間がかかる。
【０１２８】
このため、実施の形態１の半導体回路装置１０によれば、上述の例において、シュムープロットの周波数特性を取得するのに要する時間は、比較例の半導体回路装置１において１回のテストパターンを実行するのに必要な時間の約１／１０となる。
【０１２９】
以上、実施の形態１によれば、ＢＩＳＴ用のクロック信号の周波数を可変にすることにより、ＰＬＬの設定を変更する必要が無くなるため、試験時間の大幅な短縮化を図った半導体回路装置を提供することができる。
【０１３０】
なお、以上では、クロック信号ＣＫＡの位相を進角させたクロック信号ＣＫＢを用いる形態について説明したが、クロック信号ＣＫＡの位相を遅角させたクロック信号ＣＫＢを用いてもよい。この場合は、上述のＢＩＳＴの最後に最も短縮される周波数をクロック信号ＣＫＡの初期の周波数に設定し、かつ、上述のＮｏｄｅ ０の周波数をＮｏｄｅ ｎ−１の周波数と入れ替え、ＢＩＳＴが進行するにつれて、徐々に周期を長くするようにクロック信号ＣＫＢを生成しながらＢＩＳＴを実行すればよい。
【０１３１】
＜実施の形態２＞
実施の形態２は、実施の形態１の半導体回路装置の回路構成をより具体的にした実施形態である。
【０１３２】
図５は、実施の形態２の半導体回路装置をＬＳＩテスタに接続した状態を示す図である。
【０１３３】
実施の形態２の半導体回路装置２００は、サイクルスイープ回路２１１、ＰＬＬ１２、テストパターン発生回路１３、被試験回路１４、試験結果記憶回路１５、及びスキャン系制御回路１６を含む。
【０１３４】
また、半導体回路装置２００は、ＬＳＩテスタ３００を接続するための端子２０１、２０２を有し、端子２０１にはＬＳＩテスタ３００の端子３０１が接続され、端子２０２にはＬＳＩテスタ３００の端子３０２が接続される。
【０１３５】
ＬＳＩテスタ３００は、試験クロック（ＣＫＳ）を出力する試験クロック出力部３０３と、スキャン制御信号を出力するスキャン制御信号出力部３０４とを有する。
【０１３６】
半導体回路装置２００の端子２０１には、ＬＳＩテスタ３００の試験クロック出力部３０３から試験クロック信号（ＣＫＳ）が入力される。端子２０２にはＬＳＩテスタ３００のスキャン制御信号出力部３０４からスキャン制御信号（ＴＣＫ，ＴＭＳ）とスキャン試験用のテストデータ（ＴＤＩ）が入力される。また、端子２０２からスキャン試験の結果を表すデータ（ＴＤＯ）が出力される。
【０１３７】
なお、ＴＣＫはスキャンテスト用のクロック信号、ＴＭＳはスキャン系制御回路１６の状態遷移を制御するための信号である。
【０１３８】
ＰＬＬ１２は、実施の形態１の半導体回路装置１０のＰＬＬ１２と基本的に同様であるが、実施の形態２では、ＬＳＩテスタ３００から試験クロック信号（ＣＫＳ）が入力するようになっている。
【０１３９】
テストパターン発生回路１３は、実施の形態１のテストパターン発生回路１３と基本的に同様であるが、実施の形態２では、ＲＥＡＤ信号を試験結果記憶回路１５に入力するようになっている。なお、ＲＥＡＤ信号は、試験結果記憶回路１５への試験結果の読み込みを制御するための信号であるが、その詳細については後述する。
【０１４０】
被試験回路１４は、実施の形態１の被試験回路１４と基本的に同様であるが、実施の形態２では、ＢＩＳＴを行った後に被試験回路１４内の各ビットセルに存在するデータをＲＥＡＤデータとして試験結果記憶回路１５に入力するようになっている。
【０１４１】
試験結果記憶回路１５は、実施の形態１の半導体回路装置１０の試験結果記憶回路１５と基本的に同様であるが、テストパターン発生回路１３からＲＥＡＤ信号が入力されるとともに、被試験回路１４からＲＥＡＤデータが入力されるようになっている。また、試験結果記憶回路１５は、試験結果をスキャン系制御回路１６に入力する。
【０１４２】
サイクルスイープ回路２１１は、実施の形態１のサイクルスイープ回路１１と基本的に同様であるが、設定制御信号が入力するようになっている。設定制御信号は、スキャン系制御回路１６が出力する。
【０１４３】
スキャン系制御回路１６は、ＬＳＩ１０のスキャンシフトを制御する回路であり、ＬＳＩテスタ３００からＬＳＩ１０にスキャン制御信号が入力されると、サイクルスイープ回路２１１、ＰＬＬ１２、及び試験結果記憶回路１５に設定制御信号を入力する。設定制御信号は、ＢＩＳＴを実行する前に、サイクルスイープ回路２１１、ＰＬＬ１２、テストパターン発生回路１３、及び試験結果記憶回路１５の初期設定を行うための信号である。
【０１４４】
初期設定では、サイクルスイープ回路２１１はパラメータｋを"０"に設定し、ＰＬＬ１２はＬＳＩテスタ３００から入力する試験クロック信号ＣＫＳに基づいてクロック信号ＣＫＡを出力するようになり、テストパターン発生回路１３は内部で保持するテストパターンを初期化し、試験結果記憶回路１５は内部のレジスタの値をリセットする。
【０１４５】
次に、図６を用いて、実施の形態２の半導体回路装置２００のサイクルスイープ回路２１１について説明する。
【０１４６】
図６は、実施の形態２の半導体回路装置２００のサイクルスイープ回路２１１を示す図である。
【０１４７】
以下では、サイクルスイープ回路２１１について、実施の形態１のサイクルスイープ回路１１との相違点を中心に説明を行う。
【０１４８】
図６に示すように、サイクルスイープ回路２１１は、クロック入力端１１Ａ、クロック出力端子１１Ｂ、ラップ信号入力端子１１Ｃ、設定制御信号入力端子１１Ｄ、位相制御回路２０１、２０２、・・・、２０ｎ−１、位相選択回路３０、及びスイープ用シーケンサ４０を含む。
【０１４９】
サイクルスイープ回路２１１の構成要素のうち、設定制御信号入力端子１１Ｄ以外の構成要素は、実施の形態１のサイクルスイープ回路１１と同一である。
【０１５０】
また、サイクルスイープ回路２１１の内部で取り扱う信号については、スイープ用シーケンサ４０に設定制御信号入力端子１１Ｄを介してＬＳＩテスタ３００から設定制御信号が入力される点と、スイープ用シーケンサ４０がステップ数信号と終了信号を出力する点が実施の形態１と異なる。
【０１５１】
設定制御信号は、上述のように、ＢＩＳＴを実行する前に、サイクルスイープ回路２１１、ＰＬＬ１２、及び試験結果記憶回路１５の初期設定を行うための信号である。
【０１５２】
このため、サイクルスイープ回路２１１内のスイープ用シーケンサ４０は、設定制御信号が入力すると、位相制御信号１〜ｎ−１、及び位相選択信号を初期値に設定するとともに、ステップ数信号を予め定められた所定の値（ステップ数と称す）に設定する。
【０１５３】
ステップ数信号のステップ数は、１以上の任意の整数に設定することができる。ステップ数信号は、位相制御信号１〜ｎ−１の各々による周期の短縮度合を整数倍するための信号である。
【０１５４】
すなわち、ステップ数信号は、位相制御回路２０１、２０２、・・・、２０ｎ−１が位相制御信号１〜ｎ−１に基づいて、単位時間のテストパターン０〜テストパターンｍ−１の各々に含まれるクロック信号ＣＫＢの周期を短縮する際に、位相制御信号１〜ｎ−１に対応して、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍の各々にさらに乗じる値を表す。
【０１５５】
実施の形態２では、ステップ数が１である場合について説明するが、ＢＩＳＴを実行する際に上述の式の整数倍で各テストパターンの周期を短縮したい場合には、ステップ数を２以上の任意の整数に設定すればよい。
【０１５６】
例えば、ステップ数が２の場合は、位相制御回路２０１、２０２・・・２０ｎ−１は、それぞれ、クロック信号ＣＫＢの周期を、（１×ｋ）×２倍、（２×ｋ）×２倍・・・（（ｎ−１）×ｋ）×２倍で短縮することになる。
【０１５７】
終了信号は、ＢＩＳＴの終了を表す信号であり、スイープ用シーケンサ４０が内部のカウンタで試験の回数をカウントし、カウント値が所定値に達したときにスイープ用シーケンサ４０から出力される。スイープ用シーケンサ４０が、終了信号を位相選択回路３０に出力すると、位相選択回路３０はクロック信号ＣＫＢの生成を終了し、クロック信号ＣＫＢの出力が停止する。
【０１５８】
これにより、テストパターン発生回路１３、被試験回路１４、及び試験結果記憶回路１５の動作が停止し、ＢＩＳＴが終了する。
【０１５９】
次に、図７Ａ〜Ｃを用いて、位相制御回路２０１、２０２・・・２０ｎ−１の具体的な回路構成について説明する。なお、位相制御回路２０１、２０２・・・２０ｎ−１の回路構成はすべて同様であるため、ここでは位相制御回路２０１、２０２・・・２０ｎ−１を区別することなく、位相制御回路２０と表記して説明する。
【０１６０】
図７Ａは、実施の形態２の半導体回路装置２００の位相制御回路２０を示す図である。
【０１６１】
図７Ｂは、実施の形態２の半導体回路装置２００の位相制御回路２０の動作原理を説明するためのタイミングチャートである。
【０１６２】
図７Ａに示すように、位相制御回路２０は、フェイズインターポレータ２２０と乗算器２３０とを含む。
【０１６３】
フェイズインターポレータ２２０は、ＤＬＬ（Delay Locked Loop）２２１と位相ミキサ２２２とを有する。
【０１６４】
ＤＬＬ２２１は、クロック信号ＣＫＡを入力し、クロック信号ＣＫＡの位相を出力する。実施の形態２では、一例として、ＤＬＬ２２１は、クロック信号ＣＫＡの位相を０°、−９０°、−１８０°、−２７０°変化させた４つのクロック信号を出力する。
【０１６５】
なお、位相が−９０°、−１８０°、−２７０°変化した３つのクロック信号は、それぞれ、０°のクロック信号に対して、位相が９０°、１８０°、２７０°進角した信号である。
【０１６６】
位相ミキサ２２２は、ＤＬＬ２２１が出力する４つのクロック信号を入力し、乗算器２３０から入力する位相信号に基づき、クロック信号ＣＫＡの位相を進角して出力する。
【０１６７】
ここで、位相ミキサ２２２は、１周期の位相量である３６０°を所定の数に分割するための分解能を持ち、３６０°を所定数に分割した位相量を最小単位とする位相差を生成することにより、クロック信号ＣＫＡの位相を最小単位の整数倍に相当する位相差だけ変更して出力できる回路である。
【０１６８】
また、位相信号は、位相ミキサ２２２における位相の変更分を指定するための信号である。
【０１６９】
例えば、位相ミキサ２２２の分解能が６４であるとする。この場合、図７Ｂに示すように、位相ミキサ２２２は、３６０°を６４分割した位相量（１分割分）を最小単位とする位相差を生成することができる。
【０１７０】
例えば、位相ミキサ２２２がＤＬＬ２２１の位相０°の出力と、位相−９０°の出力とを合成して、１６分割して出力できることとする。なお、ＤＬＬ２２１の位相０°の出力は、位相制御回路２０に入力するクロック信号ＣＫＡと同一周期、同一位相のクロック信号である。
【０１７１】
例えば、クロック信号Ａの周波数が２ＧＨｚであるとすると、クロック信号ＣＫＡの１周期は５００ｐｓであり、１６分割した最小単位の時間幅は、５００ｐｓ／６４＝約７．８ｐｓとなる。
【０１７２】
この場合に、位相信号で、最小単位の時間（約７．８ｐｓ：１分割分）を指定すれば、位相ミキサ２２２は、クロック信号ＣＫＡの位相を最小単位の時間（約７．８ｐｓ：１分割分）だけ進角してクロック信号ＣＫＢとして出力することができる。
【０１７３】
乗算器２３０は、位相制御信号とステップ数信号を入力し、位相制御信号とステップ数信号とを乗算して得る位相信号を出力する。
【０１７４】
上述のように、位相制御信号は、クロック信号ＣＫＡの１周期を短縮する時間を表す。
【０１７５】
また、ステップ数信号は、位相制御信号による周期の短縮時間を整数（ステップ数）倍するための信号である。
【０１７６】
このため、位相制御信号にステップ数を乗じて得る位相信号は、位相制御回路２０でクロック信号ＣＫＡの位相が進角される時間を表す。位相信号は、上述のように、位相ミキサ２２２における位相の変更分を指定するための値に設定される信号である。
【０１７７】
図７Ａ及び図７Ｂでは、位相制御回路２０１、２０２・・・２０ｎ−１を区別することなく、位相制御回路２０として示すが、実際には、位相制御回路２０１、２０２・・・２０ｎ−１の各々において、位相信号によってクロック信号ＣＫＡの位相が進角される。
【０１７８】
以上のようにして、フェイズインターポレータ２２０と乗算器２３０とを含む位相制御回路２０は、クロック信号ＣＫＡの周波数を変更して出力する。
【０１７９】
次に、図８を用いてスイープ用シーケンサ４０の回路構成について説明する。
【０１８０】
図８は、実施の形態２の半導体回路装置２００のスイープ用シーケンサ４０を示す図である。
【０１８１】
実施の形態２のスイープ用シーケンサ４０は、位相選択用カウンタ２４１、位相制御用カウンタ２４２、位相変更サイクル数設定レジスタ２４３、パラメータ最大値設定レジスタ２４４、ステップ数設定レジスタ２４５、ＡＮＤ回路２４６、乗算器２４７、２４８、２４９を含む。
【０１８２】
また、実施の形態２のスイープ用シーケンサ４０は、クロック信号入力端子２４０Ａ、２４０Ｂ、ラップ信号入力端子２４０Ｃ、位相選択信号出力端子２４０Ｄ、終了信号出力端子２４０Ｅ、位相制御信号出力端子２４０Ｆ〜２４０Ｉ、ステップ数信号出力端子２４０Ｊ、及び設定制御信号入力端子２４０Ｋを含む。
【０１８３】
クロック信号入力端子２４０Ａ、２４０Ｂは、クロック信号ＣＫＡ、ＣＫＢをスイープ用シーケンサ４０にそれぞれ入力する端子である。
【０１８４】
ラップ信号入力端子２４０Ｃは、ラップ信号がスイープ用シーケンサ４０に入力する端子である。
【０１８５】
位相選択信号出力端子２４０Ｄは、スイープ用シーケンサ４０から位相選択信号を位相選択回路３０に出力する端子である。
【０１８６】
終了信号出力端子２４０Ｅは、スイープ用シーケンサ４０からの終了信号を位相選択回路３０に出力する端子である。
【０１８７】
位相制御信号出力端子２４０Ｆ〜２４０Ｉは、スイープ用シーケンサ４０からの位相制御信号１〜ｎ−１を位相制御回路２０１、２０２・・・２０ｎ−１に出力する端子である。
【０１８８】
ステップ数信号出力端子２４０Ｊは、スイープ用シーケンサ４０からステップ数信号を位相制御回路２０１、２０２・・・２０ｎ−１に出力する端子である。
【０１８９】
設定制御信号入力端子２４０Ｋは、設定制御信号をスイープ用シーケンサ４０に入力する端子である。
【０１９０】
位相選択用カウンタ２４１には、クロック信号入力端子２４０Ｂからクロック信号ＣＫＢが入力され、設定制御信号入力端子２４０Ｋから設定制御信号が入力され、位相変更サイクル数設定レジスタ２４３から位相変更サイクル数信号が入力される。
【０１９１】
位相選択用カウンタ２４１は、位相選択信号が表すＮｏｄｅ番号を保持するカウンタである。位相選択用カウンタ２４１は、ＢＩＳＴを実行する前に、設定制御信号が入力すると、カウンタの値の初期設定を行う。初期設定時における位相選択用カウンタ２４１の値はＮｏｄｅ ０を表す"０"である。
【０１９２】
位相選択用カウンタ２４１は、計数時に計数値が増分されるアップカウンタであり、位相変更サイクル数設定レジスタ２４３から入力する位相変更サイクル数信号が表すサイクル数（ｎ）にカウント値が達するまで繰り返しカウントを行う。
【０１９３】
位相変更サイクル数信号が表すサイクル数（ｎ）は、Ｎｏｄｅ（Ｎｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２、・・・、Ｎｏｄｅ ｎ−１）の数に対応している。
【０１９４】
このため、位相選択用カウンタ２４１は、クロック信号ＣＫＢが入力する度にＮｏｄｅ番号（０〜ｎ−１）を繰り返しカウントし、クロック信号ＣＫＢをカウントする度にカウント値（０〜ｎ−１）を表す位相選択信号を出力する。位相選択用カウンタ２４１は、選択信号生成部の一例である。位相選択信号は、位相選択信号出力端子２４０Ｄを経て位相選択回路３０に入力する。
【０１９５】
位相制御用カウンタ２４２は、設定制御信号入力端子２４０Ｋから設定制御信号が入力し、パラメータ最大値設定レジスタ２４４から振り回数信号が入力する。
【０１９６】
位相制御用カウンタ２４２は、アップカウンタであり、位相制御回路２０１、２０２・・・２０ｎ−１に入力する位相制御信号１〜ｎ−１に含まれるパラメータｋの値をカウントする。
【０１９７】
位相制御用カウンタ２４２は、設定制御信号入力端子２４０Ｋを介してＬＳＩテスタ３００から設定制御信号が入力されると、レジスタの値の初期設定を行う。初期設定時における位相制御用カウンタ２４２の値は"０"である。すなわち、パラメータｋの値は"０"に初期設定される。
【０１９８】
位相制御用カウンタ２４２は、ＡＮＤ回路２４６からＨレベルの信号が入力する度に、パラメータｋの値を１つずつカウントアップする。
【０１９９】
位相制御用カウンタ２４２の出力は、位相制御信号１（１×ｋ）になるとともに、乗算器２４７、２４８、２４９に入力される。
【０２００】
位相制御用カウンタ２４２は、パラメータｋの値がパラメータ最大値設定レジスタ２４４から入力される最大値ｍに達すると、終了信号を出力する。終了信号は、終了信号出力端子２４０Ｅを経て位相選択回路３０に入力する。
【０２０１】
位相変更サイクル数設定レジスタ２４３は、位相選択信号１〜ｎ−１によって選択するＮｏｄｅ ０、Ｎｏｄｅ １、Ｎｏｄｅ ２・・・Ｎｏｄｅ ｎ−１の数（ｎ）をサイクル数として保持し、サイクル数（ｎ）を位相変更サイクル数信号として位相選択用カウンタ２４１に入力する。
【０２０２】
なお、位相変更サイクル数設定レジスタ２４３は、設定制御信号入力端子２４０Ｋから設定制御信号が入力すると、サイクル数をｎに設定する。
【０２０３】
パラメータ最大値設定レジスタ２４４は、パラメータｋの最大値（ｍ）を保持し、位相制御用カウンタ２４２に入力する。
【０２０４】
なお、パラメータ最大値設定レジスタ２４４は、設定制御信号入力端子２４０Ｋから設定制御信号が入力すると、最大値をｍに設定する。
【０２０５】
ステップ数設定レジスタ２４５は、上述したステップ数信号のステップ数を保持する。ステップ数設定レジスタ２４５から出力するステップ数信号は、ステップ数信号出力端子２４０Ｊを経て位相制御回路２０１、２０２・・・２０ｎ−１に入力される。
【０２０６】
ＡＮＤ回路２４６は、クロック信号ＣＫＡとラップ信号の論理積を出力し、ラップ信号がＨレベル（"１"）になると、位相制御用カウンタ２４２にＨレベル（"１"）を入力する。ラップ信号がＨレベル（"１"）になることは、１つのテストパターンが終了することに対応する。
【０２０７】
乗算器２４７、２４８、２４９は、位相制御用カウンタ２４２から出力するパラメータｋを２倍、３倍、（ｎ−１）倍した結果に応じてタイミングを生成し、生成したタイミングに基づき位相制御信号２、３、ｎ−１をそれぞれ出力する。
【０２０８】
なお、位相制御用カウンタ２４２の値（パラメータｋ）はそのまま位相制御信号１になるため、位相制御用カウンタ２４２と位相制御信号出力端子２４０Ｆとの間には、乗算器が挿入されていない。
【０２０９】
位相制御信号１〜ｎ−１は、それぞれ、位相制御信号出力端子２４０Ｆ〜２４０Ｉから出力し、位相制御回路２０１、２０２・・・２０ｎ−１に入力する。
【０２１０】
なお、位相制御用カウンタ２４２、ＡＮＤ回路２４６、及び乗算器２４７、２４８、２４９は、位相制御信号生成部の一例である。
【０２１１】
以上のようなスイープ用シーケンサ４０において、パラメータｋの値が０から（ｍ−１）まで増加すると、位相制御信号１〜ｎ−１の値は、（１×０）、（２×０）、（３×０）・・・（（ｎ−１）×０）、（０×１）、（１×１）、（２×１）、（３×１）・・・（（ｎ−１）×１）、・・・、（０×（ｍ−１））、（１×（ｍ−１））、（２×（ｍ−１））、（３×（ｍ−１））・・・（（ｎ−１）×（ｍ−１））と変化する。
【０２１２】
これらの位相制御信号１〜ｎ−１に基づき、位相選択回路３０で周期の短縮されたクロック信号ＣＫＢが生成される。
【０２１３】
次に、図９Ａと図９Ｂを用いて、実施の形態２の半導体回路装置２００のスキャン系制御回路１６とスイープ用シーケンサ４０がそれぞれ行う処理について説明する。
【０２１４】
図９Ａは、実施の形態２の半導体回路装置２００のスキャン系制御回路１６が行う処理を示す図である。図９Ａに示す処理は、半導体回路装置２００においてＢＩＳＴを実行する際に、スキャン系制御回路１６が実行する処理である。
【０２１５】
スキャン系制御回路１６は、処理を開始すると（ＳＴＡＲＴ）、試験系回路の初期化を行う（ステップＳ１）。具体的には、スキャン系制御回路１６は、設定制御信号をＰＬＬ１２、サイクルスイープ回路２１１、テストパターン発生回路１３、及び試験結果記憶回路１５に入力し、各回路（１２、２１１、１３、１５）の初期設定を行う。
【０２１６】
初期設定では、サイクルスイープ回路２１１はパラメータｋを０に設定し、ＰＬＬ１２はＬＳＩテスタ３００から入力する試験クロック信号ＣＫＳに基づいてクロック信号ＣＫＡを出力するようになり、テストパターン発生回路１３は内部で保持するテストパターンを初期化し、試験結果記憶回路１５は内部のレジスタの値をリセットする。
【０２１７】
次に、スキャン系制御回路１６は、ＰＬＬ１２が出力するクロック信号の周波数をＢＩＳＴ用の周波数に設定する（ステップＳ２）。これにより、ＰＬＬ１２が出力するクロック信号の周波数は、ＢＩＳＴで用いるクロック信号ＣＫＡの周波数に設定される。
【０２１８】
スキャン系制御回路１６は、テストパターン発生回路１３にテストパターンを書き込む（ステップＳ３）。テストパターンは、被試験回路１４に含まれるすべてのビットセルに書き込むための書き込みデータ、各ビットセルのアドレスデータ、Ｗ／Ｅ信号、及び期待値等を表すデータである。
【０２１９】
次いで、スキャン系制御回路１６は、サイクルスイープ回路２１１の初期位相を設定する（ステップＳ４）。初期位相とは、サイクルスイープ回路２１１がクロック信号ＣＫＡの位相を変更する変更分のことであり、ここでは、"０"に設定する。
【０２２０】
スキャン系制御回路１６は、ＰＬＬ１２にクロック信号ＣＫＡの発振を開始させる（ステップＳ５）。これにより、ＰＬＬ１２は、クロック信号ＣＫＡを出力する。
【０２２１】
次に、スキャン系制御回路１６は、ＢＩＳＴの試験時間が経過したか否かを判定する（ステップＳ６）。ここで、ＢＩＳＴの試験時間とは、クロック信号ＣＫＢの位相を変化させながらシュムープロットの周波数特性を取得するために必要な時間を言い、シュムープロットの周波数特性を取得するのに必要な時間に所定の補償時間を追加した時間に設定される。シュムープロットの周波数特性を取得するのに必要は、被試験回路１４のワード数、アドレス長、動作周波数等に基づき、予め求めることができる。
【０２２２】
なお、ステップＳ６の処理は、スキャン系制御回路１６がＢＩＳＴの試験時間が経過したと判定するまで繰り返し実行される。
【０２２３】
スキャン系制御回路１６は、ＢＩＳＴの試験時間が経過したと判定すると（Ｓ６  ＹＥＳ）、試験結果記憶回路１５からＢＩＳＴの試験結果を読み出し、試験結果をＬＳＩテスタ３００に転送する（ステップＳ７）。
【０２２４】
ＢＩＳＴの試験結果は、各テストパターンについて被試験回路１４の動作の良否を表す結果であるため、ＬＳＩテスタ３００でＢＩＳＴの試験結果を確認することができる。
【０２２５】
以上、図９Ａでは、シュムープロットの周波数特性を連続的に一度の処理で取得する際にスキャン系制御回路１６で実行する処理について説明した。
【０２２６】
ところで、被試験回路１４の周波数特性に加えて、被試験回路１４に印加する電源電圧、又は半導体回路装置２００の温度を変更した場合のシュムープロットを取得する場合には、電源電圧又は温度の設定を変更しながら、各電源電圧又は温度の条件において、周波数特性を連続的に一度の処理で取得すればよい。これにより、従来及び比較例の半導体回路装置に比べて、周波数特性と、電源電圧特性又は温度特性とを含むシュムープロットの取得時間を大幅に短縮することができる。
【０２２７】
次に、図９Ｂを用いて、シュムープロットの周波数特性を取得するために、実施の形態２の半導体回路装置２００のスイープ用シーケンサ４０が行う処理について説明する。
【０２２８】
図９Ｂは、実施の形態２の半導体回路装置２００のスイープ用シーケンサ４０が行う処理を示す図である。図９Ｂに示す処理は、半導体回路装置２００においてＢＩＳＴを実行する際に、サイクルスイープ回路２１１がクロック信号ＣＫＢの周波数を変更するために、スイープ用シーケンサ４０が実行する処理である。
【０２２９】
スイープ用シーケンサ４０は、処理を開始すると（ＳＴＡＲＴ）、位相制御信号１〜ｎ−１を１つずつ出力する（ステップＳ１１）。
【０２３０】
ここで、スイープ用シーケンサ４０は、位相選択回路３０にＮｏｄｅ ０の信号線を選択させる場合は、位相制御信号１〜ｎ−１をすべて非選択（Ｌ（Low）レベル）にする。これにより、位相選択回路３０は、Ｎｏｄｅ ０の信号線を選択する。
【０２３１】
また、スイープ用シーケンサ４０は、位相選択回路３０にＮｏｄｅ １〜Ｎｏｄｅ ｎ−１のいずれかの信号線を選択させる場合は、選択する信号線のＮｏｄｅ番号に対応する位相制御信号だけを選択（Ｈレベル）にし、選択しない信号線のＮｏｄｅ番号に対応する位相制御信号をすべて非選択（Ｌレベル）にする。
【０２３２】
スイープ用シーケンサ４０は、位相選択回路３０によるＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線の選択が一巡したか否かを判定する（ステップＳ１２）。ステップＳ１２では、位相制御信号１〜ｎ−１でＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線を１つずつ順番に選択したか否かを判定する。
【０２３３】
このため、スイープ用シーケンサ４０は、ステップＳ１２において、位相選択回路３０によるＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線の選択が一巡していないと判定した場合（Ｓ１２  ＮＯ）は、フローをステップＳ１１にリターンする。これにより、スイープ用シーケンサ４０は、Ｓ１１において、次のＮｏｄｅ番号の信号線を選択するための位相制御信号を出力する。
【０２３４】
ステップＳ１１、Ｓ１２を繰り返し実行することにより、位相選択回路３０はＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線を１つずつ順番に選択する。
【０２３５】
スイープ用シーケンサ４０は、Ｎｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線の選択が一巡したと判定した場合（Ｓ１２  ＹＥＳ）は、ラップ信号がＨレベル（"１"）になったか否かを判定する（ステップＳ１３）。ラップ信号は、テストパターンが切り替わる際にテストパターン発生回路１３によってＨレベル（"１"）に立ち上げられる信号である。
【０２３６】
スイープ用シーケンサ４０は、ステップＳ１３において、Ｈレベル（"１"）のラップ信号が入力されなかったと判定した場合（Ｓ１３  ＮＯ）は、フローをステップＳ１１にリターンする。
【０２３７】
この結果、ステップＳ１１、Ｓ１２がＨレベル（"１"）のラップ信号が入力されるまで繰り返され、位相選択回路３０はＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線を１つずつ順番に選択する。
【０２３８】
位相選択回路３０によるＮｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線の選択は、ステップＳ１３でＨレベル（"１"）のラップ信号が入力されたと判定されるまで繰り返される。
【０２３９】
スイープ用シーケンサ４０は、ステップＳ１３において、Ｈレベル（"１"）のラップ信号が入力されたと判定した場合（Ｓ１３  ＹＥＳ）は、パラメータｋの値を１つ増加する（ステップＳ１４）。
【０２４０】
ステップＳ１４は、パラメータｋの値を１つ増加することにより、クロック信号ＣＫＢの位相を、それまでよりも大きく変化させるＢＩＳＴを行うために準備をするための処理である。
【０２４１】
スイープ用シーケンサ４０は、試験結果を試験結果記憶回路１５に格納する（ステップＳ１５）。ステップＳ１１からステップＳ１３によって、１つのテストパターンについてのＢＩＳＴの試験結果が得られるため、後にＬＳＩテスタ３００で読み出すために、試験結果記憶回路１５に格納することとしたものである。
【０２４２】
スイープ用シーケンサ４０は、パラメータｋの値がｍに到達したか否かを判定する（ステップＳ１６）。ＢＩＳＴには、テストパターン０からテストパターンｍ−１を用いるが、パラメータｋの値がｍに達したときには、テストパターンｍ−１によるＢＩＳＴまで終了しているため、パラメータｋの値がｍに到達したか否かで、すべてのＢＩＳＴの終了を判定することとしたものである。
【０２４３】
スイープ用シーケンサ４０は、ステップＳ１６において、パラメータｋの値がｍに到達していないと判定した場合（Ｓ１６  ＮＯ）は、フローをステップＳ１１にリターンする。これにより、ステップＳ１４において１つ増加されたパラメータｋを用いて、ステップＳ１１〜Ｓ１３の処理が繰り返し実行される。
【０２４４】
スイープ用シーケンサ４０は、ステップＳ１６において、パラメータｋの値がｍに到達したと判定した場合（Ｓ１６  ＹＥＳ）は、フローを終了する。
【０２４５】
これにより、パラメータｋが０からｍ−１のすべての値について、クロック信号ＣＫＢの位相を変化させた場合におけるシュムープロットを取得することができる。
【０２４６】
次に、図１０の状態遷移図を用いて、実施の形態２の半導体回路装置２００の位相選択回路３０でクロック信号ＣＫＢの位相を変化させる際の、Ｎｏｄｅ番号とパラメータｋの値の遷移の様子について説明する。
【０２４７】
図１０は、実施の形態２の半導体回路装置２００の位相選択回路３０でクロック信号ＣＫＢの位相を変化させる際の、Ｎｏｄｅ番号とパラメータｋの値の遷移の様子を表す状態遷移図である。
【０２４８】
図１０において、遷移状態をＳ（Ｎｏｄｅ番号、パラメータｋ）として示す。
【０２４９】
クロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１の周期は、位相制御回路２０１、２０２・・・２０ｎ−１において、単位時間の（０×ｋ）倍、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍という式により、パラメータｋの値を０から（ｍ−１）まで順番に増やしながら、短縮（進角）される。
【０２５０】
上述したように、Ｎｏｄｅ ０には位相制御回路が挿入されておらず、Ｎｏｄｅ １〜Ｎｏｄｅ ｎ−１には、それぞれ、位相制御回路２０１、２０２・・・２０ｎ−１が挿入されている。位相制御回路２０１、２０２・・・２０ｎ−１が出力するクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、・・・、ＣＫＡｎ−１の位相は、単位時間の（０×ｋ）倍、（１×ｋ）倍、（２×ｋ）倍・・・（（ｎ−１）×ｋ）倍で表される分だけ進角される。
【０２５１】
位相選択回路３０は、図１０に示す状態遷移図に従い、Ｎｏｄｅ ０〜Ｎｏｄｅ ｎ−１の信号線を順番に選択するとともに、Ｈレベル（"１"）のラップ信号が入力する度に１つずつ値が増加するパラメータｋを用いて、クロック信号ＣＫＢの位相を進角させる。
【０２５２】
位相選択回路３０は、クロック信号ＣＫＢの生成をＳ（０，０）から開始（ＳＴＡＲＴ）する。
【０２５３】
Ｓ（０，０）は、Ｎｏｄｅ ０、パラメータｋ＝０に相当する。すなわち、位相選択回路３０は、Ｎｏｄｅ ０の信号線を選択し、Ｎｏｄｅ ０の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡのＨレベルのパルスをクロック信号ＣＫＢの最初のパルスにする。すなわち、Ｓ（０，０）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しい。
【０２５４】
次に、位相選択回路３０は、Ｓ（１，０）において、Ｎｏｄｅ １の信号線を選択し、Ｎｏｄｅ １の信号線を経て位相制御回路２０１から位相選択回路３０に入力するクロック信号ＣＫＡ１のＨレベルのパルスをクロック信号ＣＫＢの２番目のパルスにする。
【０２５５】
このとき、Ｎｏｄｅ番号は"１"であるが、パラメータｋが"０"であるため、上述の式によって短縮される時間は"０"となる。このため、Ｓ（１，０）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しい。
【０２５６】
以後、Ｓ（ｎ−１，０）までＮｏｄｅ番号が増加しても、パラメータｋが"０"であるため、上述の式によって短縮される時間は"０"となり、Ｓ（２，０）〜（ｎ−１，０）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しい。
【０２５７】
すなわち、Ｓ（０，０）〜Ｓ（ｎ−１，０）の間は、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しく、クロック信号ＣＫＡに対して位相が進角していないクロック信号ＣＫＢが位相選択回路３０から出力する。
【０２５８】
これは、ＢＩＳＴの最初のテストパターンを用いて、クロック信号ＣＫＡの位相と等しいクロック信号ＣＫＢについて被試験回路１４の動作確認を行うためである。
【０２５９】
Ｓ（ｎ−１，０）において、Ｈレベル（"１"）のラップ信号が入力していない場合は、位相選択回路３０はＳ（０，０）にリターンし、Ｓ（０，０）〜Ｓ（ｎ−１，０）の状態におけるクロック信号ＣＫＢを生成する。
【０２６０】
Ｓ（０，０）〜Ｓ（ｎ−１，０）の状態は、Ｈレベル（"１"）のラップ信号が入力されるまで繰り返される。これは、実施の形態１において、図４（Ｂ）でｎサイクルのクロック信号ＣＫＢが繰り返されている状態に相当する。
【０２６１】
ここで、例えば、ｎが４であり、被試験回路１４が２ｋｗ（kilo word）であり、アドレス長Ｎが１２の場合、ラップ信号がＨレベル（"１"）になるまでには、（２×１０２４×１２）／４＝６１４４回だけＳ（０，０）〜Ｓ（ｎ−１，０）の状態が繰り返されることになる。
【０２６２】
ラップ信号は、実施の形態１において、図４（Ｃ）に示した通り、テストパターン０〜テストパターンｍ−１のそれぞれ終了する度に、Ｈレベル（"１"）に立ち上げられる。
【０２６３】
次に、パラメータｋが"１"になると、位相選択回路３０は、Ｓ（０，１）〜Ｓ（ｎ−１，１）の状態においてクロック信号ＣＫＢを生成する。
【０２６４】
Ｓ（０，１）では、Ｎｏｄｅ ０の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡのＨレベルのパルスをクロック信号ＣＫＢの最初のパルスにする。すなわち、Ｓ（０，１）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しい。
【０２６５】
次に、位相選択回路３０は、Ｓ（１，１）において、Ｎｏｄｅ １の信号線を選択し、Ｎｏｄｅ １の信号線を経て位相制御回路２０１から位相選択回路３０に入力するクロック信号ＣＫＡ１のＨレベルのパルスをクロック信号ＣＫＢのパルスにする。
【０２６６】
このとき、Ｎｏｄｅ番号は"１"であり、パラメータｋは"１"であるため、上述の式によって短縮される時間は単位時間×１となる。このため、Ｓ（１，１）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相よりも、単位時間×１だけ進角する。
【０２６７】
以後、パラメータｋが"１"の状態で、Ｓ（２，１）からＳ（ｎ−１，１）までＮｏｄｅ番号が増加すると、上述の式によって短縮される時間は、順番に、単位時間×２、・・・、単位時間×（ｎ−１）となる。
【０２６８】
すなわち、Ｓ（２，１）からＳ（ｎ−１，１）までは、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相よりも、順番に、単位時間×２、・・・、単位時間×（ｎ−１）だけ進角する。
【０２６９】
Ｓ（ｎ−１，１）において、Ｈレベル（"１"）のラップ信号が入力していない場合は、位相選択回路３０はＳ（０，１）にリターンし、Ｓ（０，１）〜Ｓ（ｎ−１，１）の状態におけるクロック信号ＣＫＢを生成する。
【０２７０】
Ｓ（０，１）〜Ｓ（ｎ−１，１）の状態は、Ｈレベル（"１"）のラップ信号が入力するまで繰り返される。
【０２７１】
以後、パラメータｋの値が"２"から１つずつ順番に増加し、最後のテストパターンの番号に相当する（ｍ−１）になると、位相選択回路３０は、Ｓ（０，ｍ−１）の状態において、Ｎｏｄｅ ０の信号線を経て位相選択回路３０に入力するクロック信号ＣＫＡのＨレベルのパルスをクロック信号ＣＫＢの最初のパルスにする。すなわち、Ｓ（０，ｍ−１）の状態において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相と等しい。
【０２７２】
位相選択回路３０は、Ｓ（１，ｍ−１）の状態において、Ｎｏｄｅ １の信号線を選択し、Ｎｏｄｅ １の信号線を経て位相制御回路２０１から位相選択回路３０に入力するクロック信号ＣＫＡ１のＨレベルのパルスをクロック信号ＣＫＢの最初のパルスにする。
【０２７３】
このとき、Ｎｏｄｅ番号は"１"であり、パラメータｋは"ｍ−１"であるため、上述の一般式によって短縮される時間は単位時間×（ｍ−１）となる。このため、Ｓ（１，ｍ−１）において、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相よりも、単位時間×（ｍ−１）だけ進角する。
【０２７４】
以後、パラメータｋが"ｍ−１"の状態で、Ｓ（２，ｍ−１）の状態からＳ（ｎ−１，ｍ−１）の状態までＮｏｄｅ番号が増加すると、上述の一般式によって短縮される時間は、順番に、単位時間×２×（ｍ−１）、・・・、単位時間×（ｎ−１）×（ｍ−１）となる。
【０２７５】
すなわち、Ｓ（２，ｍ−１）の状態からＳ（ｎ−１，ｍ−１）の状態までは、位相選択回路３０が出力するクロック信号ＣＫＢの位相は、位相選択回路３０に入力するクロック信号ＣＫＡの位相よりも、順番に、単位時間×２×（ｍ−１）、・・・、単位時間×（ｎ−１）×（ｍ−１）だけ進角する。
【０２７６】
Ｓ（ｎ−１，ｍ−１）の状態において、Ｈレベル（"１"）のラップ信号が入力していない場合は、位相選択回路３０はＳ（０，ｍ−１）にリターンし、Ｓ（０，ｍ−１）〜Ｓ（ｎ−１，ｍ−１）の状態におけるクロック信号ＣＫＢを生成する。
【０２７７】
Ｓ（０，ｍ−１）〜Ｓ（ｎ−１，ｍ−１）の状態は、Ｓ（ｎ−１，ｍ−１）の状態においてＨレベル（"１"）のラップ信号が入力するまで繰り返される。
【０２７８】
Ｓ（ｎ−１，ｍ−１）の状態でＨレベル（"１"）のラップ信号が入力すると、パラメータｋの値は、１加算され、ｍになる。これにより、クロック信号ＣＫＢの周波数を変更する処理は終了する（ＥＮＤ）。
【０２７９】
次に、図１１を用いて、実施の形態２の半導体回路装置２００のサイクルスイープ回路２１１に含まれる位相選択回路３０において、Ｎｏｄｅ ０からＮｏｄｅ ｎ−１の信号線を順番に選択して、クロック信号ＣＫＢを生成する際のタイミングチャートについて説明する。
【０２８０】
図１１Ａ、図１１Ｂは、実施の形態２の半導体回路装置２００の位相選択回路３０において、Ｎｏｄｅ ０からＮｏｄｅ ｎ−１の信号線を順番に選択して、クロック信号ＣＫＢを生成する際のタイミングチャートを示す図である。図１１Ａは、パラメータｋが"０"の場合のタイミングチャートを示し、図１１Ｂは、パラメータｋが"１"の場合のタイミングチャートを示す。
【０２８１】
なお、図１１Ａ、図１１Ｂにおいて、説明の便宜上、ｎは"４"に設定してある。このため、Ｎｏｄｅ ｎ−１がＮｏｄｅ ３となる。また、Ｎｏｄｅ １、Ｎｏｄｅ ２、Ｎｏｄｅ ３の信号線には、それぞれ、位相制御回路２０１、位相制御回路２０２、位相制御回路２０３が挿入されていることとして説明する。
【０２８２】
図１１Ａ、図１１Ｂには、ＰＬＬ１２が出力するクロック信号ＣＫＡ、Ｎｏｄｅ ０からＮｏｄｅ ３を経て位相選択回路３０に入力されるクロック信号ＣＫＡ、ＣＫＡ１、ＣＫＡ２、ＣＫＡ３、位相選択回路３０が出力するクロック信号ＣＫＢ、及び位相選択用カウンタ２４１が保持する位相選択信号の値を示す。
【０２８３】
ここで、Ｎｏｄｅ ０からＮｏｄｅ ３を経て位相選択回路３０に入力するクロック信号を、それぞれ、ＣＫＡ（Ｎｏｄｅ ０）、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）と示す。
【０２８４】
位相選択用カウンタ２４１が保持する位相選択信号の値は、上述のように、位相選択信号が表すＮｏｄｅ番号である。位相選択信号が表すＮｏｄｅ番号は、０、１、２、３の順に、クロック信号ＣＫＢの１周期毎に順番に変化する。
【０２８５】
また、図１１Ａは、パラメータｋが"０"の場合のタイミングチャートを示すため、Ｎｏｄｅ １からＮｏｄｅ ３の位相制御回路２０１〜２０３では、クロック信号ＣＫＡ（Ｎｏｄｅ ０）、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）の位相は変化しない。
【０２８６】
このため、ＰＬＬ１２が出力するクロック信号ＣＫＡ、クロック信号ＣＫＡ（Ｎｏｄｅ ０）、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）は、すべて同一の位相を有する。
【０２８７】
時刻ｔ０において、位相選択信号の値は"０"であるため、位相選択回路３０は、矢印Ａ０で示すようにクロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスを選択し、矢印Ｂ０で示すように、クロック信号ＣＫＢとして取り込む。
【０２８８】
このため、クロック信号ＣＫＢの周期０におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスと同一位相のパルスとなる。
【０２８９】
次に、時刻ｔ１において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ１で示すように、位相選択信号の値が"１"になる。
【０２９０】
これにより、位相選択回路３０は、矢印Ａ１で示すようにクロック信号ＣＫＡ１（Ｎｏｄｅ１）のＨレベルのパルスを選択し、矢印Ｂ１で示すように、クロック信号ＣＫＢとして取り込む。
【０２９１】
このため、クロック信号ＣＫＢの周期１におけるＨレベルのパルスは、クロック信号ＣＫＡ１（Ｎｏｄｅ１）のＨレベルのパルスと同一位相のパルスとなる。
【０２９２】
次に、時刻ｔ２において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ２で示すように、位相選択信号の値が"２"になる。
【０２９３】
これにより、位相選択回路３０は、矢印Ａ２で示すようにクロック信号ＣＫＡ２（Ｎｏｄｅ２）のＨレベルのパルスを選択し、矢印Ｂ２で示すように、クロック信号ＣＫＢとして取り込む。
【０２９４】
このため、クロック信号ＣＫＢの周期２におけるＨレベルのパルスは、クロック信号ＣＫＡ２（Ｎｏｄｅ２）のＨレベルのパルスと同一位相のパルスとなる。
【０２９５】
次に、時刻ｔ３において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ３で示すように、位相選択信号の値が"３"になる。
【０２９６】
これにより、位相選択回路３０は、矢印Ａ３で示すようにクロック信号ＣＫＡ３（Ｎｏｄｅ３）のＨレベルのパルスを選択し、矢印Ｂ３で示すように、クロック信号ＣＫＢとして取り込む。
【０２９７】
このため、クロック信号ＣＫＢの周期３におけるＨレベルのパルスは、クロック信号ＣＫＡ３（Ｎｏｄｅ３）のＨレベルのパルスと同一位相のパルスとなる。
【０２９８】
次に、時刻ｔ４において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ４で示すように、位相選択信号の値が"０"になる。
【０２９９】
これにより、位相選択回路３０は、矢印Ａ４で示すようにクロック信号ＣＫＡ４（Ｎｏｄｅ４）のＨレベルのパルスを選択し、矢印Ｂ４で示すように、クロック信号ＣＫＢとして取り込む。
【０３００】
このため、クロック信号ＣＫＢの周期４におけるＨレベルのパルスは、クロック信号ＣＫＡ４（Ｎｏｄｅ４）のＨレベルのパルスと同一位相のパルスとなる。
【０３０１】
以後、位相選択回路３０は、上述の場合と同様に、クロック信号ＣＫＡ（Ｎｏｄｅ ０）、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）のＨレベルのパルスを順番に取り込み、クロック信号ＣＫＢを生成する。
【０３０２】
次に、図１１Ｂを用いて、パラメータｋが"１"の場合のタイミングチャートについて説明する。
【０３０３】
図１１Ｂでは、パラメータｋの値が"１"であるため、クロック信号ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）の位相は、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して、それぞれ、単位時間×１、単位時間×２、単位時間×３だけ進角している。
【０３０４】
時刻ｔ０において、クロック信号ＣＫＢの立ち下がりを受けて、矢印Ｃ００で示すように、位相選択信号の値が"０"になったこととする。また、このとき、テストパターン０によるＢＩＳＴが終了し、パラメータｋの値が"０"から"１"に増加したこととする。
【０３０５】
位相選択信号の値が"０"であるため、位相選択回路３０は、矢印Ａ１０で示すようにクロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスを選択し、矢印Ｂ１０で示すように、クロック信号ＣＫＢとして取り込む。
【０３０６】
このため、クロック信号ＣＫＢの周期０におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスと同一位相のパルスとなる。
【０３０７】
次に、時刻ｔ１において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ１１で示すように、位相選択信号の値が"１"になる。
【０３０８】
これにより、位相選択回路３０は、矢印Ａ１１で示すようにクロック信号ＣＫＡ１（Ｎｏｄｅ１）のＨレベルのパルスを選択し、矢印Ｂ１１で示すように、クロック信号ＣＫＢとして取り込む。
【０３０９】
このため、クロック信号ＣＫＢの周期１におけるＨレベルのパルスは、クロック信号ＣＫＡ１（Ｎｏｄｅ１）のＨレベルのパルスと同一位相のパルスとなる。
【０３１０】
クロック信号ＣＫＡ１（Ｎｏｄｅ１）のＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して、単位時間×１だけ進角しているため、クロック信号ＣＫＢの周期１におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して単位時間×１だけ進角する。
【０３１１】
すなわち、クロック信号ＣＫＢは、周期１において、クロック信号ＣＫＡ（Ｎｏｄｅ０）よりも単位時間×１の分だけ位相が進角する。
【０３１２】
次に、時刻ｔ２において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ２で示すように、位相選択信号の値が"２"になる。
【０３１３】
これにより、位相選択回路３０は、矢印Ａ１２で示すようにクロック信号ＣＫＡ２（Ｎｏｄｅ２）のＨレベルのパルスを選択し、矢印Ｂ１２で示すように、クロック信号ＣＫＢとして取り込む。
【０３１４】
このため、クロック信号ＣＫＢの周期２におけるＨレベルのパルスは、クロック信号ＣＫＡ２（Ｎｏｄｅ２）のＨレベルのパルスと同一位相のパルスとなる。
【０３１５】
クロック信号ＣＫＡ２（Ｎｏｄｅ２）のＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して、単位時間×２だけ進角しているため、クロック信号ＣＫＢの周期２におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して単位時間×２だけ進角する。
【０３１６】
すなわち、クロック信号ＣＫＢは、周期２において、クロック信号ＣＫＡ（Ｎｏｄｅ０）よりも単位時間×２の分だけ位相が進角する。
【０３１７】
次に、時刻ｔ３において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ１３で示すように、位相選択信号の値が"３"になる。
【０３１８】
これにより、位相選択回路３０は、矢印Ａ１３で示すようにクロック信号ＣＫＡ３（Ｎｏｄｅ３）のＨレベルのパルスを選択し、矢印Ｂ１３で示すように、クロック信号ＣＫＢとして取り込む。
【０３１９】
このため、クロック信号ＣＫＢの周期３におけるＨレベルのパルスは、クロック信号ＣＫＡ３（Ｎｏｄｅ３）のＨレベルのパルスと同一位相のパルスとなる。
【０３２０】
クロック信号ＣＫＡ３（Ｎｏｄｅ３）のＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して、単位時間×３だけ進角しているため、クロック信号ＣＫＢの周期３におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して単位時間×３だけ進角する。
【０３２１】
すなわち、クロック信号ＣＫＢは、周期３において、クロック信号ＣＫＡ（Ｎｏｄｅ０）よりも単位時間×３の分だけ位相が進角する。
【０３２２】
次に、時刻ｔ４において、クロック信号ＣＫＢの立ち下がりにより、矢印Ｃ１４で示すように、位相選択信号の値が"０"になる。
【０３２３】
これにより、位相選択回路３０は、矢印Ａ１４で示すようにクロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスを選択し、矢印Ｂ１４で示すように、クロック信号ＣＫＢとして取り込む。
【０３２４】
このため、クロック信号ＣＫＢの周期４におけるＨレベルのパルスは、クロック信号ＣＫＡ（Ｎｏｄｅ０）のＨレベルのパルスと同一位相のパルスとなる。
【０３２５】
以後、位相選択回路３０は、上述の場合と同様に、クロック信号ＣＫＡ（Ｎｏｄｅ ０）、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）のＨレベルのパルスを順番に取り込み、位相が繰り返し進角されるクロック信号ＣＫＢを生成する。
【０３２６】
なお、上述のようにして得られるクロック信号ＣＫＢは、単位時間ずつ進角したＨレベルのパルスを順番に取り込むため、周期１、周期２、周期３は同一周期であり、周期０は、周期１、周期２、周期３よりも単位時間だけ長い周期になる。
【０３２７】
また、パラメータｋの値が２以上になった場合は、クロック信号ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）の位相は、クロック信号ＣＫＡ（Ｎｏｄｅ ０）に対して、それぞれ、単位時間×１×ｋ、単位時間×２×ｋ、単位時間×３×ｋだけ進角する。
【０３２８】
このため、クロック信号ＣＫＡ、ＣＫＡ１（Ｎｏｄｅ １）、ＣＫＡ２（Ｎｏｄｅ ２）、ＣＫＡ３（Ｎｏｄｅ ３）において位相が進角される時間がｋ倍になるだけで、クロック信号ＣＫＢの生成の仕方は、図１１Ｂに示すパラメータｋの値が"１"の場合と同様である。
【０３２９】
以上のようにして、位相選択回路３０は、位相が周期的に進角するクロック信号ＣＫＢを生成する。
【０３３０】
次に、図１２を用いて、試験結果記憶回路１５の回路構成について説明する。
【０３３１】
図１２は、実施の形態２の半導体回路装置２００の試験結果記憶回路１５を示す図である。
【０３３２】
半導体回路装置２００の試験結果記憶回路１５は、ＥＯＲ（排他的論理和）回路２５１、ＯＲ（論理和）回路２５２、ＡＮＤ（論理積）回路２５３、スキャンインチェーン２５４、スキャンアウトチェーン２５５、ＯＲ（論理和）回路２５６、及びｍ個のスキャンＦＦ（Flip Flop：フリップフロップ）２６０１、２６０２、・・・、２６０ｍを含む。
【０３３３】
また、試験結果記憶回路１５は、クロック信号入力端子２７０Ａ、ＲＥＡＤ信号入力端子２７０Ｂ、ラップ信号入力端子２７０Ｃ、ＲＥＡＤデータ入力端子２７０Ｄ、期待値入力端子２７０Ｅ、スキャンイン端子２７０Ｆ、スキャンクロック入力端子２７０Ｇ、及びスキャンアウト端子２７０Ｈを含む。
【０３３４】
ＥＯＲ回路２５１は、ＲＥＡＤデータ入力端子２７０Ｄから入力するＲＥＡＤデータと期待値入力端子２７０Ｅから入力する期待値を比較した排他的論理和を出力する。被試験回路１４が正常に動作している場合は、ＲＥＡＤデータは期待値と同一の値（"０"または"１"）であるため、ＥＯＲ回路２５１の出力は、ＲＥＡＤデータと期待値が一致していれば"０"となり、ＲＥＡＤデータと期待値が一致していなければ"１"となる。
【０３３５】
ＯＲ回路２５２は、一方の入力端子にＥＯＲ回路２５１の出力が入力し、他方の入力端子にスキャンＦＦ２６０１の出力（Ｑ）が入力する。
【０３３６】
ＡＮＤ回路２５３は、一方の入力端子にラップ信号入力端子２７０Ｃからラップ信号が反転して入力し、他方の入力端子にＯＲ回路２５２の出力端子が接続されている。ＡＮＤ回路２５３の出力端子は、スキャンＦＦ２６０１の入力端子（Ｄ）に接続されている。
【０３３７】
ＡＮＤ回路２５３の出力は、ＥＯＲ回路２５１でＲＥＡＤデータと期待値とを比較した試験結果によって値が変わるため、ＢＩＳＴの試験結果を表す。
【０３３８】
また、ＡＮＤ回路２５３の出力は、一方の入力端子に反転入力するラップ信号がＨレベル（"１"）になると、リセットされる。すなわち、ＡＮＤ回路２５３の出力は、テストパターンが切り替わると（ラップ信号が"１"になるので）、"０"にリセットされることになる。
【０３３９】
ＡＮＤ回路２５３の出力は、ＢＩＳＴの試験結果を表す値として、スキャンＦＦ２６０１〜２６０ｍの出力端子（Ｑ）に順番に保持される。
【０３４０】
スキャンインチェーン２５４は、スキャンイン端子２７０ＦとスキャンＦＦ２６０１のスキャンイン端子ＳＩ（Scan In）とを接続するスキャン試験用の信号線である。
【０３４１】
スキャンアウトチェーン２５５は、スキャンＦＦ２６０ｍのスキャンアウト端子ＳＯ（Scan Out）とスキャンアウト端子２７０Ｈとを接続するスキャン試験用の信号線である。
【０３４２】
ＯＲ（論理和）回路２５６は、ＲＥＡＤ信号とラップ信号の論理和を出力する。ＯＲ回路２５６の出力は、スキャンＦＦ２６０１のＩＨ（InHibit）端子に反転入力する。
【０３４３】
スキャンＦＦ２６０１〜２６０ｍは、それぞれ、入力端子Ｄ、出力端子Ｑ、スキャンイン端子ＳＩ（Scan In）、スキャンアウト端子ＳＯ（Scan Out）、ＩＨ（InHibit）端子、クロック入力端子、及びスキャンクロック入力端子ＳＣＫを有する。スキャンＦＦ２６０１〜２６０ｍのＩＨ端子には、それぞれ、否定演算器２８０１〜２８０ｍが接続されている。
【０３４４】
スキャンＦＦ２６０１〜２６０ｍは、図１２に示すように、互いに入力端子Ｄと出力端子Ｑが接続されるとともに、互いにスキャンイン端子ＳＩとスキャンアウト端子ＳＯが接続されることにより、ｍビットのレジスタを実現している。スキャンＦＦ２６０１〜２６０ｍは、それぞれ、ｍ個のテストパターンによるＢＩＳＴの結果を保持するために設けられている。
【０３４５】
スキャンＦＦ２６０１は、入力端子（Ｄ）にＡＮＤ回路２５３の出力端子が接続され、スキャンイン端子ＳＩにスキャンインチェーン２５４が接続され、ＩＨ端子に否定演算器２８０１を介してＯＲ回路２５６の出力端子が接続されている。
【０３４６】
スキャンＦＦ２６０２〜２６０ｍのＩＨ端子には、否定演算器２８０２〜２８０ｍを介して、ラップ信号入力端子２７０Ｃが接続されている。
【０３４７】
スキャンＦＦ２６０ｍのスキャンアウト端子ＳＯには、スキャンアウトチェーン２５５が接続されている。
【０３４８】
なお、スキャンＦＦ２６０１〜２６０ｍのクロック入力端子は、クロック信号入力端子２７０Ａに接続されており、スキャンクロック入力端子ＳＣＫには、スキャンクロック入力端子２７０Ｇが接続されている。
【０３４９】
クロック信号入力端子２７０Ａは、クロック信号ＣＫＢをスキャンＦＦ２６０１〜２６０ｍのクロック入力端子に入力するための端子である。
【０３５０】
ＲＥＡＤ信号入力端子２７０Ｂは、ＲＥＡＤ信号が試験結果記憶回路１５に入力する端子である。
【０３５１】
ラップ信号入力端子２７０Ｃは、ラップ信号が試験結果記憶回路１５に入力する端子である。
【０３５２】
ＲＥＡＤデータ入力端子２７０Ｄは、ＲＥＡＤデータが被試験回路１４から試験結果記憶回路１５のＥＯＲ回路２５１に入力する端子である。
【０３５３】
期待値入力端子２７０Ｅは、期待値がテストパターン発生回路１３から試験結果記憶回路１５のＥＯＲ回路２５１に入力する端子である。
【０３５４】
スキャンイン端子２７０Ｆは、スキャンインチェーン２５４を介して、スキャン系制御回路１６からスキャンイン用のデータをスキャンＦＦ２６０１〜２６０ｍに入力するための端子である。
【０３５５】
スキャンクロック入力端子２７０Ｇは、試験データのスキャンイン／スキャンアウトの際に用いるスキャンクロックＴＣＫをスキャンＦＦ２６０１〜２６０ｍのスキャンクロック入力端子ＳＣＫに入力する端子である。
【０３５６】
スキャンアウト端子２７０Ｈは、スキャンアウトチェーン２５５を介して、被試験回路１４の試験結果をスキャンＦＦ２６０１〜２６０ｍから出力するための端子である。
【０３５７】
図１２に示すような試験結果記憶回路１５において、スキャンＦＦ２６０１〜２６０ｍは、クロック入力端子に入力するクロック信号ＣＫＢに基づいて動作を行う。
【０３５８】
スキャンＦＦ２６０１〜２６０ｍは、データの読み込みの禁止／許可をＩＨ端子への入力に基づいて切り替える。
【０３５９】
ここで、ＲＥＡＤ信号は、スキャンＦＦ２６０１がＢＩＳＴの試験結果を読み込む動作を制御するための信号である。
【０３６０】
ＲＥＡＤ信号が"１"の場合は、スキャンＦＦ２６０１のＩＨ端子に"０"が入力するため、読み込みが許可され、スキャンＦＦ２６０１はＢＩＳＴの試験結果を読み込む。
【０３６１】
一方、ＲＥＡＤ信号が"０"の場合は、スキャンＦＦ２６０１のＩＨ端子に"１"が入力するため、読み込みが禁止される。
【０３６２】
また、ラップ信号は、テストパターンの切り替え時にＨレベル（"１"）になる信号であるため、テストパターンによるＢＩＳＴの実行中は、Ｌレベル（"０"）である。このため、ＢＩＳＴの実行中は、スキャンＦＦ２６０１〜２６０ｍのＩＨ端子に"１"が入力し、スキャンＦＦ２６０１〜２６０ｍは書き込み禁止になる。
【０３６３】
一方、テストパターンの切り替え時にラップ信号がＨレベル（"１"）になると、スキャンＦＦ２６０１〜２６０ｍのＩＨ端子に"０"が入力し、スキャンＦＦ２６０１〜２６０ｍは書き込み許可の状態になる。この書き込み許可の状態で、試験結果はスキャンＦＦ２６０１〜２６０ｍに順次書き込まれる。
【０３６４】
以上のような実施の形態２の試験結果記憶回路１５において、ＲＥＡＤデータと期待値が一致する場合は、ＥＯＲ回路２５１の出力が"０"となる。
【０３６５】
また、ＲＥＡＤデータと期待値とが一致している間は、スキャンＦＦ２６０１の出力は"０"であり、ＯＲ回路２５２の入力は、ともに"０"となるため、ＯＲ回路２５２の出力は"０"である。
【０３６６】
また、ラップ信号はテストパターンが切り替わるタイミングにのみＨレベル（"１"）になるが、テストパターン０〜ｍ−１のいずれかによるＢＩＳＴの実行中は"０"であり、ラップ信号はＡＮＤ回路２５３に反転して入力する。
【０３６７】
このため、ＲＥＡＤデータと期待値とが一致している間で、テストパターン０〜ｍ−１のいずれかによるＢＩＳＴの実行中でラップ信号がＬレベル（"０"）の場合は、ＡＮＤ回路２５３には"１"（ラップ信号の反転値）と"０"（ＯＲ回路２５２の出力）が入力し、ＡＮＤ回路２５３の出力は"０"となる。
【０３６８】
テストパターン０〜ｍ−１が切り替わる度に、ＡＮＤ回路２５３の出力は、ＢＩＳＴの試験結果を表すデータとして、スキャンＦＦ２６０１〜２６０ｍに順番に読み込まれる。
【０３６９】
一方、ＥＯＲ回路２５１において、ＲＥＡＤデータと期待値とが不一致になった場合は、ＥＯＲ回路２５１の出力が"１"となる。
【０３７０】
また、ＢＩＳＴの実行中は、ラップ信号がＬレベル（"０"）であり、ＡＮＤ回路２５３に反転して入力されるため、ＲＥＡＤデータと期待値とが一度不一致になると、ＡＮＤ回路２５３の出力"１"がスキャンＦＦ２６０１の出力端子（Ｑ）に保持される。
【０３７１】
スキャンＦＦ２６０１の出力端子（Ｑ）の値は、ＯＲ回路２５２の片方の入力端子に入力されており、ラップ信号がＨレベル（"１"）にならない限り、スキャンＦＦ２６０１の出力端子（Ｑ）の値はリセットされない。
【０３７２】
このため、ＲＥＡＤデータと期待値とが一度不一致になると、その後、同一のテストパターンの中で、ＲＥＡＤデータと期待値とが一致してＥＯＲ回路２５１の出力が"０"に戻っても、ＯＲ回路２５２の出力は"１"で固定される。
【０３７３】
このため、１つのテストパターンにおいて、一度でもＲＥＡＤデータと期待値との不一致が生じると、スキャンＦＦ２６０１の出力端子（Ｑ）に"１"（不一致有り）として保持される。
【０３７４】
従って、テストパターン０〜テストパターンｍ−１によるＢＩＳＴを連続的に一度の処理で実行して得るｍ個の試験結果をスキャンＦＦ２６０１〜２６０ｍに順番に保持させれば、ＬＳＩテスタ３００で試験結果を読み出すことにより、１種類の電源電圧、１種類の温度についてのシュムープロットの周波数特性を一度に取得することができる。
【０３７５】
スキャンＦＦ２６０１〜２６０ｍが保持するｍ個の試験結果を表すデータ（ＴＤＯ）を試験結果記憶回路１５から読み出す場合は、スキャン系制御回路１６を通じて、ＬＳＩテスタ３００（図５参照）からスキャン制御信号（ＴＣＫ、ＴＭＳ）による制御でスキャン系制御回路がスキャンインチェーン２５４、スキャンアウトチェーン２５５を選択する。
【０３７６】
そして、スキャンクロック（ＴＣＫ）でスキャンＦＦ２６０１〜２６０ｍが保持するデータ（ＴＤＯ）を順番に取り出せば、ＬＳＩテスタ３００でシュムープロットの周波数特性を取得することができる。
【０３７７】
以上のように、実施の形態２の半導体回路装置２００によれば、図１１Ａ、図１１Ｂに示すように、位相を徐々に進角させることによって周期を短縮（周波数を高く）したクロック信号ＧＫＢを用いることにより、様々な周波数についてのＢＩＳＴを連続的に一度の処理で実行することができる。
【０３７８】
クロック信号ＣＫＢの周期は、図１０の状態遷移図に示した通り、ｋ＝０の場合からｋ＝ｍ−１の場合にかけて段階的に短縮され、周期が最も短縮される場合では、Ｎｏｄｅ ０のＨレベルのパルスの立ち上がりのタイミングに比べて単位時間×（（ｎ−１）×（ｍ−１））だけ短縮される。
【０３７９】
このため、半導体回路装置２００のシュムープロットの周波数特性をすべて網羅できるように、クロック信号ＣＫＡの周波数、ｍの値、ｎの値、及び単位時間を設定すれば、連続した一度のＢＩＳＴを実行することにより、シュムープロットの周波数特性を取得することができる。
【０３８０】
これにより、半導体回路装置２００のシュムープロットを作成する時間を大幅に短縮することができる。
【０３８１】
以上、実施の形態２によれば、ＢＩＳＴ用のクロック信号の周波数を可変にすることにより、試験時間の大幅な短縮化を図った半導体回路装置を提供することができる。
【０３８２】
なお、以上では、被試験回路１４がＳＲＡＭである場合について説明したが、被試験回路は、他の種類のＲＡＭであってもよい。
【０３８３】
また、被試験回路１４としてＲＡＭを用いるＲＡＭＢＩＳＴの実施形態について説明したが、半導体回路装置２００は、演算器等に対してオペランド（被演算値）を入力して演算結果と期待値と比較する論理ＢＩＳＴに適用してもよい。
【０３８４】
半導体回路装置２００を論理ＢＩＳＴに適用する場合は、テストパターン発生部は、ＳＲＡＭの代わりに、演算器等の論理回路に対するテストパターンを生成するようにすればよい。
【０３８５】
以上、本発明の例示的な実施の形態の回路装置、周波数変更回路、回路装置の試験方法、及び周波数変更回路の制御方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０３８６】
１０  半導体回路装置
１１  サイクルスイープ回路
１１Ａ  クロック入力端
１１Ｂ  クロック出力端子
１１Ｃ  ラップ信号入力端子
１２  ＰＬＬ
１３  テストパターン発生回路
１４  被試験回路
１５  試験結果記憶回路
２０１、２０２・・・２０ｎ−１  位相制御回路
３０  位相選択回路
４０  スイープ用シーケンサ
２００  半導体回路装置
２０１、２０２  端子
２１１  サイクルスイープ回路
１１Ａ  クロック入力端
１１Ｂ  クロック出力端子
１１Ｃ  ラップ信号入力端子
１１Ｄ  設定制御信号入力端子
１６  スキャン系制御回路
３００  ＬＳＩテスタ
２２０  フェイズインターポレータ
２２１  ＤＬＬ
２２２  位相ミキサ
２３０  乗算器
２４１  位相選択用カウンタ
２４２  位相制御用カウンタ
２４３  位相変更サイクル数設定レジスタ
２４４  パラメータ最大値設定レジスタ
２４５  ステップ数設定レジスタ
２４６  ＡＮＤ回路
２４７、２４８、２４９  乗算器
２４０Ａ、２４０Ｂ  クロック信号入力端子
２４０Ｃ  ラップ信号入力端子
２４０Ｄ  位相選択信号出力端子
２４０Ｅ  終了信号出力端子
２４０Ｆ〜２４０Ｉ  位相制御信号出力端子
２４０Ｊ  ステップ数信号出力端子
２４０Ｋ  設定制御信号入力端子
２５１  ＥＯＲ回路
２５２  ＯＲ回路
２５３  ＡＮＤ回路
２５４  スキャンインチェーン
２５５  スキャンアウトチェーン
２６０１、２６０２、・・・、２６０ｍ  スキャンＦＦ
２７０Ａ  クロック信号入力端子
２７０Ｂ  ＲＥＡＤ信号入力端子
２７０Ｃ  ラップ信号入力端子
２７０Ｄ  ＲＥＡＤデータ入力端子
２７０Ｅ  期待値入力端子
２７０Ｆ  スキャンイン端子
２７０Ｇ  スキャンクロック入力端子
２７０Ｈ  スキャンアウト端子
【図１】
2012035651.tif 000003
【図２】
2012035651.tif 000004
【図３】
2012035651.tif 000005
【図４】
2012035651.tif 000006
【図５】
2012035651.tif 000007
【図６】
2012035651.tif 000008
【図７Ａ】
2012035651.tif 000009
【図７Ｂ】
2012035651.tif 000010
【図８】
2012035651.tif 000011
【図９Ａ】
2012035651.tif 000012
【図９Ｂ】
2012035651.tif 000013
【図１０】
2012035651.tif 000014
【図１１Ａ】
2012035651.tif 000015
【図１１Ｂ】
2012035651.tif 000016
【図１２】
2012035651.tif 000017
【国際調査報告】
2012035651.tif 000018
2012035651.tif 000019
2012035651.tif 000020
2012035651.tif 000021