(57)【要約】【課題】小規模で低コストであり、より高速な半導体集積回路の検査をより高精度に行うことが可能な検査装置及び検査方法を提供する。【解決手段】クロック信号ＣＬＫ及びデータ信号ＤＡＴＡ＿ＯＵＴを半導体集積回路（ＡＳＩＣ２）に取り込ませてフィードバック信号ＦＢ＿ＯＵＴとして出力させて検査を行う検査装置１は、データ信号ＤＡＴＡ＿ＯＵＴを、所定の遅延量だけ遅延させてＡＳＩＣ２に出力する遅延処理部８と、フィードバック信号ＦＢ＿ＯＵＴに基づいて、遅延処理部８における遅延量を設定するとともに、フィードバック信号ＦＢ＿ＯＵＴが所定の条件を満たすときの遅延量を取得する遅延制御部９と、遅延制御部９により取得された遅延量に基づいて、ＡＳＩＣ２のセットアップタイム及びホールドタイムを算出するセットアップタイム・ホールドタイム算出部１０と、を有する。【選択図】図１
2011017650.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号及び当該クロック信号に同期したデータ信号を半導体集積回路に入力させ、前記半導体集積回路において、前記クロック信号に基づいて取り込まれた前記データ信号をフィードバック信号として出力させ、当該フィードバック信号に基づいて前記半導体集積回路の検査を行う検査装置であって、
前記データ信号を、所定の遅延量だけ遅延させて前記半導体集積回路に出力する遅延処理部と、
前記フィードバック信号に基づいて、前記遅延処理部における前記所定の遅延量を設定するとともに、前記フィードバック信号が所定の条件を満たすときの前記遅延量を取得する遅延制御部と、
前記遅延制御部により取得された前記遅延量に基づいて、前記半導体集積回路のセットアップタイム及びホールドタイムを算出するセットアップタイム・ホールドタイム算出部と、を有する検査装置。
【請求項２】
前記遅延制御部は、前記半導体集積回路により前記データ信号の立ち上がりが取り込まれたときの前記遅延量、および、前記データ信号の立ち下がりが取り込まれたときの前記遅延量を取得し、
前記セットアップタイム・ホールドタイム算出部は、前記遅延量に基づいて算出された前記半導体集積回路における前記データ信号の立ち上がり側及び立ち下がり側の安定期間から、前記セットアップタイム及びホールドタイムを算出するように構成された請求項１に記載の検査装置。
【請求項３】
前記セットアップタイム・ホールドタイム算出部は、
前記データ信号の立ち上がりが取り込まれたときの前記遅延量をｄｅｌａｙ＿ｓｔａｒｔとし、前記データ信号の立ち下がりが取り込まれたときの前記遅延量をｄｅｌａｙ＿ｅｎｄとし、前記データ信号のデータ幅をＴｄａｔａｗとし、前記半導体集積回路における前記データ信号の立ち上がり側の安定期間をＴｓｕ、前記データ信号の立ち下がり側の安定期間をＴｓｈとしたとき、前記セットアップタイム及び前記ホールドタイムを、次式
基準データ取込位置  ＝  （ｄｅｌａｙ＿ｅｎｄ−ｄｅｌａｙ＿ｓｔａｒｔ）／２
＋ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｕ  ＝  基準データ取込位置−ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｈ  ＝  ｄｅｌａｙ＿ｅｎｄ−基準データ取込位置
セットアップタイム  ＝  Ｔｄａｔａｗ／２−Ｔｓｕ
ホールドタイム      ＝  Ｔｄａｔａｗ／２−Ｔｓｈ
により算出するように構成された請求項２に記載の検査装置。
【請求項４】
クロック信号及び当該クロック信号に同期したデータ信号を半導体集積回路に入力させ、前記半導体集積回路において、前記クロック信号に基づいて取り込まれた前記データ信号をフィードバック信号として出力させ、当該フィードバック信号に基づいて前記半導体集積回路の検査を行う検査方法であって、
前記データ信号を所定の遅延量ずつ遅延させて、前記フィードバック信号が所定の条件を満たすときの前記遅延量を取得するステップと、
取得された前記遅延量に基づいて、前記半導体集積回路のセットアップタイム及びホールドタイムを算出するステップと、を有する検査方法。
【請求項５】
前記遅延量を取得するステップは、前記半導体集積回路により前記データ信号の立ち上がりが取り込まれたときの前記遅延量、および、前記データ信号の立ち下がりが取り込まれたときの前記遅延量を取得し、
前記セットアップタイム及びホールドタイムを算出するステップは、前記遅延量に基づいて算出された前記半導体集積回路における前記データ信号の立ち上がり側及び立ち下がり側の安定期間から、前記セットアップタイム及びホールドタイムを算出するように構成された請求項４に記載の検査方法。
【請求項６】
前記セットアップタイム及びホールドタイムを算出するステップは、
前記データ信号の立ち上がりが取り込まれたときの前記遅延量をｄｅｌａｙ＿ｓｔａｒｔとし、前記データ信号の立ち下がりが取り込まれたときの前記遅延量をｄｅｌａｙ＿ｅｎｄとし、前記データ信号のデータ幅をＴｄａｔａｗとし、前記半導体集積回路における前記データ信号の立ち上がり側の安定期間をＴｓｕ、前記データ信号の立ち下がり側の安定期間をＴｓｈとしたとき、前記セットアップタイム及び前記ホールドタイムを、次式
基準データ取込位置  ＝  （ｄｅｌａｙ＿ｅｎｄ−ｄｅｌａｙ＿ｓｔａｒｔ）／２
＋ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｕ  ＝  基準データ取込位置−ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｈ  ＝  ｄｅｌａｙ＿ｅｎｄ−基準データ取込位置
セットアップタイム  ＝  Ｔｄａｔａｗ／２−Ｔｓｕ
ホールドタイム      ＝  Ｔｄａｔａｗ／２−Ｔｓｈ
により算出するように構成された請求項５に記載の検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の検査装置及び検査方法に関する。
【背景技術】
【０００２】
従来、半導体集積回路の検査は、ＬＳＩテスタ等の検査装置を用いて電気的に行われる。このＬＳＩテスタは、タイミング発生器を有するとともに、記憶部（パターンメモリ）内に、予めデータ列のパターン情報（検査ビット列）が記憶されている。そして、このタイミング発生器によって各チャネルに対応する所望の周期、遅延量、及び、パルス幅を持つ信号を生成し、この信号によりパターンメモリから所望の検査ビット列を読み出して、検査対象の半導体集積回路に送出する。その結果、この半導体集積回路から出力される信号（検査応答ビット列）を、予め記憶部に記憶された期待値と比較して良・不良の判定を行うなど、複雑な制御で半導体集積回路の検査を行っている。
【０００３】
また、近年の半導体集積回路の高性能化、高密度化により、半導体集積回路の集積度が増大しているが、従来の複雑なシステム構成のＬＳＩテスタでは、このような大規模な半導体集積回路の検査のために、検査ビット列や期待値などの記憶容量を大きくせざるを得ず、検査装置の大規模化や高コスト化を招いていた。また、検査工程の増大により検査時間も増大し、特に高速化への対応が困難であった。そのため、システム構成の複雑さを軽減する検査装置が提案されている（例えば、特許文献１参照）。この特許文献１に記載の検査装置は、タイミング発生器からのクロック信号の周期をもとに遅延量を求め、この遅延量に応じたデータ列を発生するよう構成されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０１−１９５３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１のデータ発生装置においても、パターンメモリなどの記憶領域や制御システムが必要であり、検査装置の小規模化や低コスト化の大きな向上が図れず、特にＡＳＩＣ（Application Specific Integrated Circuit）のような高速な半導体集積回路には対応しきれなという課題があった。
【０００６】
本発明はこのような課題に鑑みてなされたものであり、小規模で低コストであり、より高速な半導体集積回路の検査をより高精度に行うことが可能な半導体集積回路の検査装置及び検査方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記課題を解決するために、本発明に係る検査装置は、クロック信号及び当該クロック信号に同期したデータ信号を半導体集積回路に入力させ、この半導体集積回路において、クロック信号に基づいて取り込まれたデータ信号をフィードバック信号として出力させ、当該フィードバック信号に基づいて半導体集積回路の検査を行う検査装置であって、データ信号を、所定の遅延量だけ遅延させて半導体集積回路に出力する遅延処理部と、フィードバック信号に基づいて、遅延処理部における所定の遅延量を設定するとともに、フィードバック信号が所定の条件を満たすときの遅延量を取得する遅延制御部と、遅延制御部により取得された遅延量に基づいて、半導体集積回路のセットアップタイム及びホールドタイムを算出するセットアップタイム・ホールドタイム算出部と、を有する。
【０００８】
このような検査装置において、遅延制御部は、半導体集積回路によりデータ信号の立ち上がりが取り込まれたときの遅延量、および、データ信号の立ち下がりが取り込まれたときの遅延量を取得し、セットアップタイム・ホールドタイム算出部は、これらの遅延量に基づいて算出された半導体集積回路におけるデータ信号の立ち上がり側及び立ち下がり側の安定期間から、セットアップタイム及びホールドタイムを算出するように構成することが好ましい。
【０００９】
このとき、セットアップタイム・ホールドタイム算出部は、データ信号の立ち上がりが取り込まれたときの遅延量をｄｅｌａｙ＿ｓｔａｒｔとし、データ信号の立ち下がりが取り込まれたときの遅延量をｄｅｌａｙ＿ｅｎｄとし、データ信号のデータ幅をＴｄａｔａｗとし、半導体集積回路におけるデータ信号の立ち上がり側の安定期間をＴｓｕ、データ信号の立ち下がり側の安定期間をＴｓｈとしたとき、セットアップタイム及びホールドタイムを、次式
基準データ取込位置  ＝  （ｄｅｌａｙ＿ｅｎｄ−ｄｅｌａｙ＿ｓｔａｒｔ）／２
＋ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｕ  ＝  基準データ取込位置−ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｈ  ＝  ｄｅｌａｙ＿ｅｎｄ−基準データ取込位置
セットアップタイム  ＝  Ｔｄａｔａｗ／２−Ｔｓｕ
ホールドタイム      ＝  Ｔｄａｔａｗ／２−Ｔｓｈ
により算出するように構成することが好ましい。
【００１０】
また、本発明に係る検査方法は、クロック信号及び当該クロック信号に同期したデータ信号を半導体集積回路に入力させ、この半導体集積回路において、クロック信号に基づいて取り込まれたデータ信号をフィードバック信号として出力させ、当該フィードバック信号に基づいて半導体集積回路の検査を行う検査方法であって、データ信号を所定の遅延量ずつ遅延させて、フィードバック信号が所定の条件を満たすときの遅延量を取得するステップと、取得された遅延量に基づいて、半導体集積回路のセットアップタイム及びホールドタイムを算出するステップと、を有する。
【００１１】
このような検査方法において、遅延量を取得するステップは、半導体集積回路によりデータ信号の立ち上がりが取り込まれたときの遅延量、および、データ信号の立ち下がりが取り込まれたときの遅延量を取得し、セットアップタイム及びホールドタイムを算出するステップは、これらの遅延量に基づいて算出された半導体集積回路におけるデータ信号の立ち上がり側及び立ち下がり側の安定期間から、セットアップタイム及びホールドタイムを算出するように構成されることが好ましい。
【００１２】
このとき、セットアップタイム及びホールドタイムを算出するステップは、データ信号の立ち上がりが取り込まれたときの遅延量をｄｅｌａｙ＿ｓｔａｒｔとし、データ信号の立ち下がりが取り込まれたときの遅延量をｄｅｌａｙ＿ｅｎｄとし、データ信号のデータ幅をＴｄａｔａｗとし、半導体集積回路におけるデータ信号の立ち上がり側の安定期間をＴｓｕ、データ信号の立ち下がり側の安定期間をＴｓｈとしたとき、セットアップタイム及びホールドタイムを、次式
基準データ取込位置  ＝  （ｄｅｌａｙ＿ｅｎｄ−ｄｅｌａｙ＿ｓｔａｒｔ）／２
＋ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｕ  ＝  基準データ取込位置−ｄｅｌａｙ＿ｓｔａｒｔ
Ｔｓｈ  ＝  ｄｅｌａｙ＿ｅｎｄ−基準データ取込位置
セットアップタイム  ＝  Ｔｄａｔａｗ／２−Ｔｓｕ
ホールドタイム      ＝  Ｔｄａｔａｗ／２−Ｔｓｈ
により算出するように構成されることが好ましい。
【発明の効果】
【００１３】
本発明に係る検査装置及び検査方法を以上のように構成すると、小規模で低コストな検査装置及び検査方法が提供でき、より高速な半導体集積回路の検査をより高精度に行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係るＡＳＩＣ検査装置の構成を示すブロック図である。
【図２】上記ＡＳＩＣ検査装置における遅延処理部の構成を示すブロック図である。
【図３】上記ＡＳＩＣ検査装置で実行される検査処理を示すフローチャートである。
【図４】上記検査処理のうち、遅延制御部で実行される基準データ取込位置算出処理を示すフローチャートである。
【図５】データ取込時のタイミングチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の好ましい実施形態について図面を参照して説明する。まず、図１を用いて本実施の形態に係る半導体集積回路の検査装置を、半導体集積回路の一例であるＡＳＩＣの検査に適用した場合について説明する。この図１は、ＡＳＩＣ検査装置１の信号処理回路３から信号線２２，２３を介して検査対象ＡＳＩＣ２にテスト用のクロック信号ＣＬＫ＿０及びデータ信号ＤＡＴＡ＿ＯＵＴ／ｎを出力し、ＡＳＩＣ２内でこのデータ信号ＤＡＴＡ＿ＯＵＴ／ｎをラッチさせ、ラッチ後のデータ信号をフィードバック信号ＦＢ＿ＯＵＴ／ｎとしてＡＳＩＣ２から出力させて、信号線２４を介してＡＳＩＣ検査装置１に供給するように構成した場合を示している。なお、ＡＳＩＣ２は、データ信号が入力されるチャネルを複数有し、それぞれのチャネルに信号線２３が接続されるが、この図１においては、１つの信号線２３だけを示し、その本数（又は、入力チャネルの番号）を「ｎ」として表すこととする。同様に、フィードバック信号もデータ信号が入力されるチャネルの数に対応して出力されるが、ここでは１つの信号線２４だけを示している。
【００１６】
ＡＳＩＣ検査装置１の信号処理回路３は、ＡＳＩＣ２でラッチされたデータ信号（フィードバック信号ＦＢ＿ＯＵＴ／ｎ）を基に、当該ＡＳＩＣ２のセットアップタイム特性及びホールドタイム特性を測定し、これらの特性に基づいてＡＳＩＣ２の性能の合否判定を行う回路である。この信号処理回路３は、ＡＳＩＣ２との間のデータの送受信を行うデータ転送部４と、クロック信号ＣＬＫ及びデータ信号ＤＡＴＡ／ｎを発信する信号発信部５と、各種演算結果などを記憶する記憶部６と、を有している。さらに、データ転送部４は、信号発信部５から出力されたデータ信号ＤＡＴＡ／ｎをクロック信号ＣＬＫに同期させて出力する出力部７と、この出力部７から出力されたデータ信号ＤＡＴＡ／ｎを所定の時間だけ遅延させて遅延されたデータ信号ＤＡＴＡ＿ＯＵＴ／ｎとして出力する遅延処理部８と、ＡＳＩＣ２からのフィードバック信号ＦＢ＿ＯＵＴ／ｎに基づいて遅延処理部８を制御するために遅延量を設定する遅延制御部９と、この遅延制御部９で設定された遅延量に基づいてＡＳＩＣ２のセットアップタイム及びホールドタイムを算出するセットアップタイム・ホールドタイム算出部１０と、を有している。なお、信号発信部５から出力されたクロック信号ＣＬＫは、信号線１４を介してデータ転送部４の出力部７及び遅延制御部９に入力され、また、信号線２２に、ＡＳＩＣ２に供給するためのクロック信号ＣＬＫ＿０として出力される。また、データ信号ＤＡＴＡ／ｎは信号線１５を介してデータ転送部４の出力部７及び遅延制御部９に入力される。また、この信号処理回路３において、記憶部６、遅延処理部８及びセットアップタイム・ホールドタイム算出部１０はそれぞれ遅延制御部９と接続されている。
【００１７】
一方、検査対象ＡＳＩＣ２は、信号線２２から入力されるクロック信号ＣＬＫ＿０を基に、信号線２３から入力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎをラッチする入力系フリップフロップ回路（以下、「入力系ＦＦ部」と呼ぶ）３１と、この入力系ＦＦ部３１でラッチされたデータ信号をフィードバック信号ＦＢ＿ＯＵＴ／ｎとして信号線２４に出力する出力部３２と、を有している。なお、入力系ＦＦ部３１及び出力部３２も、データ信号ＤＡＴＡ＿ＯＵＴ／ｎが入力されるチャネルの数だけ設けられているが、図１では、１つだけ示している。また、この図１においては、データ信号の流れを実線で示し、制御信号の流れを破線で示している。
【００１８】
ここで、データ転送部４（出力部７，遅延処理部８、遅延制御部９及びセットアップタイム・ホールドタイム算出部１０）は、図示はしないが、ｎ個のデータ信号ＤＡＴＡ／ｎの各々に対して１組ずつ配置されている。各々のデータ転送部４において、出力部７及び遅延処理部８は、信号線１６を介して直列に接続されており、それぞれの遅延処理部８はデータ信号線２３のいずれかと接続されている。同様に、出力部３２と遅延制御部９とは、いずれかの信号線２４を介して接続されている。さらに、遅延制御部９と各々の遅延処理部８とは信号線２０で接続され、遅延制御部９とセットアップタイム・ホールドタイム算出部１０とは信号線２１で接続されている。なお、各々のデータ転送部４の構成は、共通するため、以降の説明では、１つのデータ転送部４について説明する。
【００１９】
遅延処理部８は、信号線２３から出力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの、クロック信号ＣＬＫ（ＣＬＫ＿０）に対する遅延量を制御する回路である。図２に示すように、この遅延処理部８は、複数段直列に接続された複数の遅延素子（インバータ等）１２と、各々の遅延素子１２の出力に接続された複数のパス１３と、これらのパス１３のいずれかを選択するセレクタ１１と、を有している。遅延素子１２の最初の段（図２における遅延１）の入力端には、出力部７からの信号線１６が接続され、この信号線１６を介してデータ信号ＤＡＴＡ／ｎが遅延処理部８に入力される。また、この遅延処理部８は、遅延制御部９から信号線２０を介して送信される遅延切換信号１〜ｍに応じて、セレクタ１１により、遅延切換信号１〜ｍに対応するパス１３が選択され、選択されたパス１３を通過する信号ＤＡＴＡ＿ＯＵＴ／ｎがこのセレクタ１１に接続された信号線２３に出力されるように構成されている。この図２の構成から明らかなように、遅延処理部７において信号線１６を介して入力されたデータ信号ＤＡＴＡ／ｎが遅延される量は、遅延素子１２の数により決定されるため、遅延切換信号１〜ｍは、実際には遅延素子１２の段数として表される。
【００２０】
なお、１つの遅延素子１２の遅延時間はデータ転送周期の１／１０程度以下（データ転送周期が１ＧＨｚの場合、１つの遅延素子１２の遅延時間は１００ピコ秒以下）とすることが好ましい。また、遅延素子１２の個数は遅延素子１２全体でデータ転送周期の少なくとも１．５倍（データ転送周期が１ＧＨｚで遅延素子１２の遅延時間が１００ピコ秒の場合１５個）とすることが好ましく、データ転送周期の数倍とすればマージン（余裕）が確保される。このように、遅延処理部８により、出力部７から出力されるデータ信号ＤＡＴＡ／ｎを、クロック信号ＣＬＫ（ＣＬＫ＿０）に対して所望の遅延量だけ遅延させることができる。
【００２１】
遅延制御部９は、遅延処理部８を制御するプロセッサである。この遅延制御部９は、ＡＳＩＣ２の出力部３２から信号線２４を介して入力されるフィードバック信号ＦＢ＿ＯＵＴ／ｎに基づいて、遅延処理部８に遅延量（遅延段数）を設定するものであり、また、フィードバック信号ＦＢ＿ＯＵＴ／ｎが所定の条件（例えば、遅延時間を変化させたときの取り込んだデータがテストパターンと同じとなる条件）を満たすときの遅延量を取得し、この遅延量により、後述する基準データ取込位置を算出する。さらに、セットアップタイム・ホールドアップタイム算出部１０は、遅延制御部９から信号線２１を介して入力される基準データ取込位置等に基づいて、検査対象ＡＳＩＣ２のセットアップタイム及びホールドタイムを算出し、当該検査対象ＡＳＩＣ２の性能の合否を判定する。なお、記憶部６は、レジスタなどの記憶媒体で構成される。この記憶部６には、遅延制御部９によって設定される遅延処理部８の遅延量（遅延段数）や基準データ取込位置、及び、セットアップタイム・ホールドタイム算出部１０によって算出されるセットアップタイムやホールドタイム、その他のデータが記憶される。
【００２２】
検査対象ＡＳＩＣ２の入力系ＦＦ部３１は、クロック信号線２２から入力されるクロック信号ＣＬＫ＿０の立ち上がり又は立ち下がり又は立ち下がり及び立ち上がりの両方のタイミングに同期して、データ信号線２３から入力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎを取り込む。具体的には、クロック信号ＣＬＫ＿０の立ち上がり若しくは立ち下がり又は立ち下がり及び立ち上がりの両方の時に入力されているデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの値（「１」又は「０」）を保持して出力するものである。なお、入力系ＦＦ部３１から出力される値は信号線３３を介して出力部３２に入力され、この出力部３２から上述の信号線２４を介してフィードバック信号ＦＢ＿ＯＵＴ／ｎとして遅延制御部９に出力される。
【００２３】
それでは、以上のような構成のＡＳＩＣ検査装置１によるＡＳＩＣ２の検査方法について図３〜図５を用いて説明する。図３に示すように、データ転送部４では、まず遅延制御部９により遅延処理部８の遅延量を変化させてデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの立ち上がり及び立ち下がり時のデータ取込位置（ｄｅｌａｙ＿ｓｔａｒｔ、ｄｅｌａｙ＿ｅｎｄ）を検出し、これらのデータ取込位置から基準データ取込位置を算出する（ステップＳ１００）。この処理について、図４を用いて詳細に説明する。
【００２４】
図４に示す基準データ取込位置算出処理Ｓ１００では、信号発信部５から発信されるクロック信号ＣＬＫ及びデータ信号ＤＡＴＡ／ｎと検査対象ＡＳＩＣ２から出力されるフィードバック信号ＦＢ＿ＯＵＴ／ｎとを用いて、遅延制御部９が遅延処理部８での遅延量を変化させる。この場合のデータ信号ＤＡＴＡ／ｎ及びフィードバック信号ＦＢ＿ＯＵＴ／ｎは、クロック信号ＣＬＫ（ＣＬＫ＿０）と同期して「０」又は「１」の値を取る２値のデータ列で構成される。
【００２５】
最初に、遅延制御部９は、遅延処理部８の遅延量を初期化する（例えば、遅延段数を０にする）とともに、信号発信部５にテスト用のデータ信号ＤＡＴＡ／ｎの出力開始を指示する（ステップＳ１０１）。これにより、遅延処理部８から、クロック信号ＣＬＫ＿０に同期したデータ信号ＤＡＴＡ＿ＯＵＴ／ｎが、信号線２３に出力される。そして、信号線２３に出力されたデータ信号ＤＡＴＡ＿ＯＵＴ／ｎは、検査対象ＡＳＩＣ２の入力系ＦＦ部３１に取り込まれ、前述のようにクロック信号ＣＬＫ＿０を用いてラッチされた後、このラッチデータが出力部３２からフィードバック信号（ＦＢ＿ＯＵＴ／ｎ）として出力される。そして、このフィードバック信号ＦＢ＿ＯＵＴ／ｎは、信号線２４を介してＡＳＩＣ検査装置１の遅延制御部９に入力される。
【００２６】
次に、遅延制御部９は、クロック信号ＣＬＫの立ち上がりにおいて、この遅延制御部９に入力されたフィードバック信号ＦＢ＿ＯＵＴ／ｎが「０」であるか否かを判定する（ステップＳ１０２）。そして、遅延制御部９は、フィードバック信号ＦＢ＿ＯＵＴ／ｎが「０」でない場合には、遅延量（遅延段数）を１増加させ、その遅延量を遅延切換信号ｍとして遅延処理部８に出力して遅延素子１２の段数を１増加させる（ステップＳ１０３）。これにより、信号線２３から出力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの位相を、１段分の遅延素子１２による遅延量だけ遅らせることができる。その後に遅延制御部９は、ステップＳ１０２に戻って上述の動作を繰り返す。なお、ステップＳ１０２のＮＯ側からステップＳ１０３までのループは、データ信号ＤＡＴＡ＿ＯＵＴ／ｎにおける信号波形の立ち上がり位置を探索するために、ＡＳＩＣ２の入力系ＦＦ部３１におけるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの取込位置を「０」値のところまで一旦シフトさせる動作に相当する。
【００２７】
一方、遅延制御部９は、ステップＳ１０２において、フィードバック信号ＦＢ＿ＯＵＴ／ｎが「０」であると判定した場合には、クロック信号ＣＬＫの立ち上がりにおいて、この遅延制御部９に入力されたフィードバック信号ＦＢ＿ＯＵＴ／ｎが「１」であるか否かを判定する（ステップＳ１０４）。遅延制御部９は、フィードバック信号が「１」でない場合には、遅延量（遅延段数）を１増加させ、その遅延量を遅延切換信号ｍとして遅延処理部８に出力して遅延素子１２の段数を１増加させる（ステップＳ１０５）。これにより、信号線２３から出力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの位相を遅らせることができる。その後に遅延制御部９は、ステップＳ１０４に戻って上述の動作を繰り返す。なお、ステップＳ１０４のＮ０側からステップＳ１０５までのループは、データ信号ＤＡＴＡ＿ＯＵＴ／ｎにおける信号波形の立ち上がり位置まで、入力系ＦＦ部３１におけるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの取込位置をシフトさせる動作に相当する。
【００２８】
そして、遅延制御部９は、ステップＳ１０４において、フィードバック信号が「１」であると判定した場合には、現在の遅延量を「ｄｅｌａｙ＿ｓｔａｒｔ」として記憶部６に一時的に記憶させる（ステップＳ１０６）。なお、このステップＳ１０６で記憶された遅延量「ｄｅｌａｙ＿ｓｔａｒｔ」は、データ信号ＤＡＴＡ＿ＯＵＴ／ｎでの信号波形の立ち上がり位置に対応する。
【００２９】
さらに、遅延制御部９は、クロック信号の立ち上がりにおいて、ＡＳＩＣ２でラッチされてこの遅延制御部９に入力されたフィードバック信号ＦＢ＿ＯＵＴ／ｎが「０」であるか否かを判定する（ステップＳ１０７）。遅延制御部９は、フィードバック信号が「０」でない場合には、遅延量（遅延段数）を１増加させ、その遅延量を遅延切換信号ｍとして遅延処理部７に出力して遅延素子１２の段数を１増加させる（ステップＳ１０８）。これにより、信号線２３から出力されるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの位相を遅らせることができる。その後に遅延制御部９は、ステップＳ１０７に戻って上述の動作を繰り返す。なお、ステップＳ１０７のＮ０側からステップＳ１０８までのループは、データ信号ＤＡＴＡ＿ＯＵＴ／ｎにおける信号波形の立ち下がり位置まで入力系ＦＦ部３１におけるデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの取込位置をシフトさせる動作に相当する。
【００３０】
そして、遅延制御部９は、ステップＳ１０７において、フィードバック信号が「０」であると判定した場合には、現在の遅延量を「ｄｅｌａｙ＿ｅｎｄ」として記憶部６に一時的に記憶させる（ステップＳ１０９)。なお、このステップＳ１０９で記憶された遅延量「ｄｅｌａｙ＿ｅｎｄ」は、データ信号ＤＡＴＡ＿ＯＵＴ／ｎにおける信号波形の立ち下がり位置に対応する。
【００３１】
最後に、遅延制御部９は、ステップＳ１０６で取得した遅延量「ｄｅｌａｙ＿ｓｔａｒｔ」と、ステップＳ１０９で取得した遅延量「ｄｅｌａｙ＿ｅｎｄ」とを用いて、データ通信における遅延処理部８の基準データ取込位置を決定する（ステップＳ１１０）。具体的には、遅延制御部９は、次式（１）によってデータ信号の基準データ取込位置を演算して決定する。
【００３２】
基準データ取込位置＝（ｄｅｌａｙ＿ｅｎｄ−ｄｅｌａｙ＿ｓｔａｒｔ）／２
＋ｄｅｌａｙ＿ｓｔａｒｔ                            （１）
【００３３】
このステップＳ１１０で求めた基準データ取込位置は、データ信号ＤＡＴＡ＿ＯＵＴ／ｎの信号波形の立ち上がり位置と立ち下がり位置との中間に位置することとなる（図５参照）。そのため、ＡＳＩＣ２により、この基準データ取込位置でデータ信号ＤＡＴＡ＿ＯＵＴ／ｎの取り込みを行うと、安定してデータが取り込めるため、データ転送時の符号誤りを低減させることができる。
【００３４】
次に、図３に戻り、セットアップタイム及びホールドタイムの算出方法について説明する。この処理は、セットアップタイム・ホールドタイム算出部１０により行われる。まず、上記基準データ取込位置算出処理（ステップＳ１００）で取得した遅延量「ｄｅｌａｙ＿ｓｔａｒｔ」及び「ｄｅｌａｙ＿ｅｎｄ」と、これらの値から算出された基準データ取込位置を用いて、次式（２）及び（３）によって、Ｔｓｕ（ｎ）及びＴｓｈ（ｎ）を算出する（ステップＳ２００）。なお、この式（２）及び（３）中、ｎはデータ信号が入力されるチャネルの番号を示す。また、Ｔｓｕ（ｎ）はデータ信号の立ち上がり側の安定期間を示し、Ｔｓｈ（ｎ）は立ち下がり側の安定期間を示す。ここで、「安定期間」とは、図５に示すように、データ信号ＤＡＴＡ＿ＯＵＴ／ｎが「１」であるか「０」であるかを安定して取り込める期間のことを示している。
【００３５】
Ｔｓｕ（ｎ）  ＝  基準データ取込位置−ｄｅｌａｙ＿ｓｔａｒｔ          （２）
Ｔｓｈ（ｎ）  ＝  ｄｅｌａｙ＿ｅｎｄ−基準データ取込位置              （３）
【００３６】
そして、セットアップタイプ・ホールドタイム算出部１０は、上記式（２）及び（３）により求められたＴｓｕ（ｎ）、Ｔｓｈ（ｎ）及びデータ幅Ｔｄａｔａｗ（ｎ）を用いて、次式（４）及び（５）によってセットアップタイム及びホールドタイムを算出する。なお、データ幅Ｔｄａｔａｗ（ｎ）は、データ信号ＤＡＴＡ＿ＯＵＴ／ｎのデータレートを示し、既知の値である。また、データ信号ＤＡＴＡ＿ＯＵＴ／ｎと、Ｔｓｕ（ｎ）、Ｔｓｈ（ｎ）、Ｔｄａｔａｗ（ｎ）、セットアップタイム及びホールドタイムとの関係は、図５に示した通りである。
【００３７】
セットアップタイム（ｎ）  ＝  Ｔｄａｔａｗ（ｎ）／２−Ｔｓｕ（ｎ）      （４）
ホールドタイム（ｎ）      ＝  Ｔｄａｔａｗ（ｎ）／２−Ｔｓｈ（ｎ）      （５）
【００３８】
最後に、セットアップタイム・ホールドタイム算出部１０は、上記式（４）及び（５）によって算出されたセットアップタイム及びホールドタイムを記憶部６に記憶させる。このように算出されたセットアップタイムとホールドタイムにより、検査対象ＡＳＩＣ２のセットアップタイム特性、ホールドタイム特性がわかる。これらの特性を予め設定した基準値と比較することで、当該検査対象ＡＳＩＣ２の性能の合否判定を行うことができる。なお、上述のように、データ転送部４は、検査対象ＡＳＩＣ２にデータ信号ＤＡＴＡ＿ＯＵＴ／ｎが入力されるチャネルの数だけ用意されており、上記セットアップタイム及びホールドタイムは、それぞれのチャネル毎に算出される。
【００３９】
なお、上述の基準データ取込位置算出処理Ｓ１００において、フィードバック信号ＦＢ＿ＯＵＴ／ｎが「０」であるか、若しくは「１」であるかを判定する処理（ステップＳ１０２，Ｓ１０４，Ｓ１０７）においては、ジッタ等によるデータ信号の変動を考慮して、複数回取得して連続して「０」若しくは「１」であるときに、「０」若しくは「１」であると判定するように構成しても良い。このように構成することにより、セットアップタイム及びホールドタイムをより正確に算出することができる。
【００４０】
以上のように、本実施形態に係る検査装置１を用いた検査方法では、ＡＳＩＣのような高速な半導体集積回路であっても、性能の合否判定を容易に行うことができる。また、パターンメモリなどの記憶領域や特別な制御システムを必要とせず、小型で低コストな検査装置１を得ることができる。
【符号の説明】
【００４１】
１  検査装置    ８  遅延処理部    ９  遅延制御部
１０  セットアップタイム・ホールドタイム算出部
【図１】
2011017650.tif 000003
【図２】
2011017650.tif 000004
【図３】
2011017650.tif 000005
【図４】
2011017650.tif 000006
【図５】
2011017650.tif 000007