(57)【特許請求の範囲】
【請求項１】
複数のフリップフロップと複数の組合せ回路とを有する論理回路と、
上記フリップフロップの接続状態を制御する制御信号を出力する制御回路と上記論理回路のテストパタンを発生するパタン発生回路とを有するテスト制御回路とを備えた半導体集積回路装置であって、
上記制御信号が第１電位の状態の場合には、上記複数のフリップフロップの各々は、上記複数の組合せ回路を介することなく他のフリップフロップに接続され、上記テスト発生回路の発生したテストパタンを上記他のフリップフロップに伝達し、
上記制御信号が第２電位の状態の場合には、上記複数のフリップフロップの各々は、上記複数の組合せ回路のいずれかに接続され、格納した上記テストパタンを接続された組合せ回路に出力し、
上記制御回路にはクロック信号源からクロック信号が供給され、
上記パタン発生回路には上記クロック信号源からのクロック信号を第１遅延回路により遅延させたクロック信号が供給されることにより、上記制御回路を駆動するクロック信号の位相は、上記パタン発生回路を駆動するクロック信号の位相よりも進んでいる半導体集積回路装置。
【請求項２】
請求項１において、
上記制御信号が上記第２電位の状態の場合において、上記複数のフリップフロップは、第１のクロック信号に同期して動作する複数の第１フリップフロップと第２のクロック信号に同期して動作する複数の第２フリップフロップとを有し、
上記制御信号は上記複数の第１フリップフロップを制御する第１制御信号と上記複数の第２フリップフロップを制御する第２制御信号とを有し、
上記テスト制御回路は、上記第２フリップフロップのクロック信号を生成する分周器を備え、
上記分周器は上記制御回路を駆動するクロック信号により駆動される半導体集積回路装置。
【請求項３】
請求項１において、
上記制御回路は上記パタン発生回路に上記テストパタンの発生を指示するパタン発生開始信号を発生し、
上記制御回路は第２遅延回路を介して上記パタン発生開始信号を上記パタン発生回路に入力する半導体集積回路装置。
【請求項４】
請求項１において、
上記第１遅延回路の遅延量を可変とした半導体集積回路装置。
【請求項５】
請求項４において、
上記第１遅延回路の遅延量の補正をテストの実行に先立って実行し、上記遅延量の補正が完了したことを示す遅延補正完了信号を出力する出力端子を有する半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は半導体集積回路に係り、特に記憶素子を含んだ論理回路を搭載した半導体集積回路に関する。
【０００２】
【従来の技術】
論理回路の大規模化、高性能化にともないテスタ投資が増加するのを回避するため、ロジックＢＩＳＴ（Ｂｕｉｌｔ−Ｉｎ  Ｓｅｌｆ Ｔｅｓｔ）が広く使用されてきている。ロジックＢＩＳＴは、故障を検出するロジックＢＩＳＴコントローラを半導体集積回路チップ上に搭載することにより、動作周波数の低い低価格なテスタを使用しても通常動作時と同じ動作周波数（「Ａｔ−ｓｐｅｅｄ」という）でテストすることを可能にする。
【０００３】
論理回路に対してロジックＢＩＳＴを実施する工程を図面を参照して説明する。図１１は、従来のロジックＢＩＳＴコントローラを示す回路構成図である。従来技術の構成は、例えば、デザイン  フォー  アットスピード  テスト、  ダイアグノシス  アンド  ミージャーメントの８６頁から８８頁（Ｄｅｓｉｇｎ  ｆｏｒ  Ａｔ−ｓｐｅｅｄ  Ｔｅｓｔ，  Ｄｉａｇｎｏｓｉｓ  ａｎｄ  Ｍｅａｓｕｒｅｍｅｎｔ，  Ｋｌｕｗｅｒ  Ａｃａｄｅｍｉｃ  Ｐｕｂｌｉｓｈｅｒｓ，ｐｐ．８６−８８，１９９９）に記載されている。ロジックＢＩＳＴコントローラＣＮＴＬは、生成したテストパタンをユーザー回路ＣＵＴに順次供給するパタン発生器ＰＧ、ユーザー回路ＣＵＴから回収したテスト結果をもとに故障の有無を識別する故障判定器ＳＡ、生成したパタンの数を数えることによりテストが完了したか否かを認識する計数器ＣＮＴ、クロック信号を分周してユーザー回路に供給する分周器ＤＩＶ、テスト全体の動作を制御する制御信号送受信器ＦＳＭで構成されている。一方、ユーザー回路ＣＵＴは、フリップフロップの前段にマルチプレクサを付加したＭＵＸ付きスキャンＦＦ（以下「スキャンＦＦ」という）と組合せ回路ＣＬで構成されている。各スキャンＦＦは２つの入力端子を持っており、一方は組合せ回路ＣＬに接続され、もう一方は前段のスキャンＦＦの出力端子に接続されている。スキャンＦＦ同士の入出力端子を接続して形成された信号経路をスキャンパスと呼ぶ。スキャンパスは、スキャンイン信号線ＳＩを介して各スキャンＦＦにテストパタンを順次入力し、スキャンアウト信号線ＳＯを介してテスト結果を順次出力するために使用する。スキャンＦＦを形成するＭＵＸの入力選択端子にはスキャンイネーブル信号線ＳＥが接続されている。スキャンイネーブル信号線ＳＥは、スキャンＦＦが組合せ回路ＣＬからの信号か、あるいはスキャンパスからの信号のどちらを取り込むかを切り替え制御するために使用される。また、図１１の構成例では、ユーザー回路ＣＵＴ内にそれぞれ周波数の異なるクロック信号ＣＫ１，ＣＫ２が入力されている。クロック信号ＣＫ１，ＣＫ２として、通常動作時にはシステムクロックＣＫＣ０，ＣＫＣ２が、テスト動作時には２入力ＡＮＤゲートＡＮＤの出力信号ＣＫＣ３，分周器ＤＩＶの出力信号ＣＫＣ４がセレクタＳＥＬ１，ＳＥＬ２により選択されて出力される。このように、ＢＩＳＴ実施時に分周器ＤＩＶよりクロック信号ＣＫ２を供給する主要な理由は、ＢＩＳＴ実施時にはクロック信号ＣＫ１とクロック信号ＣＫ２とが同期した信号を供給する必要があるためである。
【０００４】
ロジックＢＩＳＴコントローラＣＮＴＬに接続されるクロック信号線には、遅延回路ＤＹが挿入されている。ユーザー回路を駆動するクロック信号ＣＫ１，ＣＫ２の遅延は、通常はロジックＢＩＳＴコントローラＣＮＴＬを駆動するクロック信号ＣＫＣ１の遅延に比べて非常に大きい（遅延とは信号が該信号を送信するＦＦの出力端子から、該信号を受信するＦＦの入力端子に到るパスを伝搬するために要する時間をいう）。これは、ユーザー回路の回路規模がロジックＢＩＳＴコントローラの回路規模に比べて非常に大きく、ユーザー回路のクロック系のファンアウト数がロジックＢＩＳＴコントローラのクロック系のファンアウト数よりも大きいからである。このように従来の技術においては、遅延回路ＤＹによりロジックＢＩＳＴコントローラＣＮＴＬとユーザー回路ＣＵＴを駆動するクロック信号間の遅延差（以下スキュー）をなくし、両者は同期して動作するように設計されていた。
【０００５】
図１２は、従来の技術で使用されるロジックＢＩＳＴコントローラの動作を示すタイミングチャートである。ロジックＢＩＳＴでは、（１）ユーザー回路内の各スキャンＦＦにテストパタンを供給する動作（スキャンイン動作Ａ）、（２）各スキャンＦＦから組合せ回路に該テストパタンを伝搬させ、組合せ回路から出力されるテスト結果を各スキャンＦＦに取り込む動作（ロジックテスト動作Ｂ）、（３）各スキャンＦＦから該テスト結果を回収する動作（スキャンアウト動作Ｃ）をテストパタンの数だけ繰り返す。すべてのテストパタンについてテスト動作を実施した後に（４）故障の有無を識別する動作（故障判定動作Ｄ）を行う。
【０００６】
スキャンイン動作およびスキャンアウト動作（併せてスキャン動作という）時には、図１１に示す２入力ＡＮＤゲートＡＮＤによりユーザー回路を駆動するクロック信号ＣＫ１の遷移を部分的に抑止し、動作周波数を低減する（ｓ１４０１）。スキャン動作時には、回路全体の消費電力が通常動作時に比べて数倍程度に上昇するため、過度の電圧降下による故障検出ミスや、発熱によるチップ破壊を引き起こす恐れがある。スキャン動作時におけるクロック信号周波数の低減は、ロジックＢＩＳＴ時におけるユーザー回路の消費電力を低減し、テストを正しく実施するために行う。
【０００７】
ロジックＢＩＳＴコントローラＣＮＴＬおよびユーザー回路ＣＵＴ内を伝搬する信号は、該信号を送信するＦＦを駆動するクロック信号の立ち上りエッジから、該信号を受信するＦＦを駆動するクロック信号の次の立ち上りエッジまでの間に伝搬させる必要がある（セットアップタイム制約）。例えば、スキャンイネーブル信号ＳＥ１は、送信側であるロジックＢＩＳＴコントローラＣＮＴＬを駆動するクロック信号ＣＫＣ１の立ち上りエッジから、受信側であるユーザー回路ＣＵＴを駆動するクロック信号ＣＫ１の次の立ち上りエッジまでの間に伝搬している（ｒ１４０２）。クロック活性化信号Ｅｎも同様に、送信側のクロック信号ＣＫＣ１の立ち上りエッジから、遷移抑止の対象であるクロック信号ＣＫＣ０の次の立ち上りエッジまでの間に伝搬している（ｒ１４０３）。送信側のＦＦがクロック信号ＣＫ２で駆動され、受信側のＦＦがクロック信号ＣＫ１で駆動される場合には、ＣＫ２の立ち上りエッジから、ＣＫ１の次の立ち上りエッジまでの間に信号が伝搬している（ｒ１４０４）。また、ロジックＢＩＳＴコントローラＣＮＴＬ、およびユーザー回路ＣＵＴ内を伝搬する信号は、該信号を受信するＦＦを駆動するクロック信号の１つ前の立ち上りエッジより後に伝搬させる必要がある（ホールドタイム制約）。例えば、送信側のＦＦがクロック信号ＣＫ１で駆動され、受信側のＦＦがクロック信号ＣＫ２で駆動される場合には、ＣＫ２の１つ前の立ち上りエッジより後に信号が伝搬している（ｒ１４０５）。
【０００８】
しかし、論理回路の大規模化、高性能化が進むと、スキャンイネーブル信号の遅延ＤＳＥ１、ＤＳＥ２およびクロック信号の遅延ＤＣＫ１，ＤＣＫ２がクロック周期Ｔに比べ無視できないほど大きくなる。これは、大規模化によりスキャンイネーブル信号ＳＥ１，ＳＥ２、クロック信号ＣＫ１，ＣＫ２が駆動するＦＦの数が増加することに加え、高性能化によりクロック周期Ｔが短くなるからである。これにともない、例えば、ｒ１４０２〜ｒ１４０４において、セットアップ制約を満足することができなくなるため、Ａｔ−ｓｐｅｅｄでロジックＢＩＳＴを実施できなくなり、結果としてテスタ投資が増加してしまう恐れがある。さらに、例えばｒ１４０５におけるホールドタイム制約を満足させるために、ＣＫ１駆動データ信号線上に多数のバッファを挿入すると、チップ面積の増加を引き起こす懸念もある。
【０００９】
この問題を解決するため、プロシーディングス  オブ  イレブンス  インターナショナル  ブイエルエスアイ  テスト  シンポジウムの４頁から９頁（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  １１ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  ＶＬＳＩ  Ｔｅｓｔ  Ｓｙｍｐｏｓｉｕｍ，  ｐｐ．４−９，  １９９３）に記載されるように、論理回路を分割して、分割された論理回路のそれぞれを順番にテストする方法が提案されている。この方法は、スキャンイネーブル信号およびクロック信号が同時に駆動するＦＦの数を低減することにより、遅延を短縮することができる。しかしながら、この方法では、テストに要する時間（テスト時間）が長くなるため、結果としてテストコストが増加してしまう。
【００１０】
【発明が解決しようとする課題】
このように、従来の技術では、大規模、高性能な論理回路に対してロジックＢＩＳＴを実施しようとすると、Ａｔ−ｓｐｅｅｄでテストできなくなるか、あるいはテスト時間が増加してしまうという問題があった。本発明の目的は、スキャンイネーブル信号、およびクロック信号の遅延を短縮することにより、大規模、高性能な論理回路に対してもテスト時間を増加させずにＡｔ−ｓｐｅｅｄでロジックＢＩＳＴを実施することを可能にし、結果としてテストコストを低減することである。
【００１１】
【課題を解決するための手段】
上記課題を解決するため、以下のような構成とする。
【００１２】
複数のフリップフロップと複数の組合せ回路とを有する論理回路と、フリップフロップの接続状態を制御する制御信号を出力する制御回路と論理回路のテストパタンを発生するパタン発生回路とを有するテスト制御回路とを備えた半導体集積回路であって、制御信号が第１電位の状態の場合には、複数のフリップフロップの各々は、複数の組合せ回路を介することなく他のフリップフロップに接続され、テスト発生回路の発生したテストパタンを他のフリップフロップに伝達し、制御信号が第２電位の状態の場合には、複数のフリップフロップの各々は、複数の組合せ回路のいずれかに接続され、格納したテストパタンを接続された組合せ回路に出力し、制御回路を駆動するクロック信号の位相は、パタン発生回路を駆動するクロック信号の位相よりも進んでいるようにする。
【００１３】
位相を調整するためには遅延回路を用いる。この遅延回路を可変とすることにより、動作温度、動作電圧の変化に広く対応できる。可変とした場合には補正完了を示す信号を外部に出力可能とする。
【００１４】
また、かかる半導体集積回路装置は、論理回路とテスト制御回路とを配置し、論理回路及びテスト制御回路に対してクロック配線を行い、論理回路のフリップフロップに供給されるクロック信号の第１遅延とテスト制御回路のパタン発生回路に供給されるクロック信号の第２遅延とを計算し、第１遅延と第２遅延との差を低減するようにパタン発生回路へのクロック信号配線の再配線を行うことにより実現できる。
【００１５】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
（第１の実施の形態）
図１は、第１の実施の形態の第１の構成例に関する半導体集積回路を示す回路構成図である。図１１の従来技術の構成と同じ構成については同じ符号を用いている。この例では、ユーザー回路ＣＵＴには互いに周波数の異なるクロック信号ＣＫ１，ＣＫ２が供給されている。この場合、クロック信号ＣＫ１に同期して動作するフリップフロップにはスキャンイネーブル信号ＳＥ１が、クロック信号ＣＫ２に同期して動作するフリップフロップにはスキャンイネーブル信号ＳＥ２が供給される。このように互いに周波数の異なるｋ種類のクロック信号がユーザー回路ＣＵＴに供給される場合は、クロック信号に対応してスキャンイネーブル信号１〜ｋが供給される。また、スキャンイン信号線はユーザー回路ＣＵＴのフリップフロップをＮに区分し、区分されたフリップフロップを接続しスキャンパスを形成する。Ｎはユーザー回路ＣＵＴの規模に応じて決定すればよい。また、クロック信号ＣＫＣ０，ＣＫＣ２のクロック源は半導体集積回路の外部から供給してもよく、半導体集積回路の内部のクロック信号発生器から供給してもよい。
【００１６】
図１の構成では、従来のロジックＢＩＳＴコントローラＣＮＴＬを２つに分割し、それぞれを遅延の異なるクロック信号により駆動させる。計数器ＣＮＴ、制御信号送受信器ＦＳＭ、分周器ＤＩＶはシステムクロック信号ＣＫＣ０により駆動する。制御信号送受信器ＦＳＭは、スキャンイネーブル信号ＳＥ１，ＳＥ２をユーザー回路ＣＵＴに出力し、分周器ＤＩＶは、スキャン動作時にクロック信号ＣＫＣ４を発生する。これらの信号はファンアウト数が大きく、遅延の大きい信号である。計数器ＣＮＴは、制御信号送受信器ＦＳＭと同期して動作する回路である。これに対して、パタン発生器ＰＧ、故障判定器ＳＡはＣＫＣ０より遅延が大きいクロック信号ＣＫＣ１により駆動する。望ましくは、クロック信号ＣＫＣ１は、ユーザー回路を駆動するクロック信号ＣＫ１と同じ遅延をもたせる。例えば、パタン発生器ＰＧの出力するスキャンイン信号のファンアウト数は１であり、遅延はほとんど生じない。そのため、パタン発生器ＰＧと故障判定器ＳＡはユーザー回路ＣＵＴと同期して動作することが望ましい。遅延回路ＤＹ１は、クロック信号ＣＫＣ０からクロック信号ＣＫＣ１を生成するために使用する。また、パタン発生器ＰＧを駆動するクロック信号ＣＫＣ１の遅延が、制御信号送受信器ＦＳＭを駆動するクロック信号ＣＫＣ０の遅延に比べて大きいため、パタン発生の開始を指示する信号Ｓｔａｒｔがホールドタイム制約を満足させるように遅延回路ＤＹ２を設ける。
【００１７】
図２は、第１の構成例の動作を示すタイミングチャートである。制御信号送受信器ＦＳＭから出力されるスキャンイネーブル信号ＳＥ１の位相はクロック信号ＣＫ１の位相よりも進んでいる。そのため、ファンアウト数の大きさによるこれらの信号の遅延が一部相殺され、結果としてユーザー回路ＣＵＴで受信されるスキャンイネーブル信号ＳＥ１の位相、クロック信号ＣＫ１，ＣＫ２の位相がほぼ等しくなる。図１１の従来技術の構成においては、制御信号送受信器ＦＳＭから出力されるスキャンイネーブル信号ＳＥ１，ＳＥ２及びクロック信号ＣＫＣ４の位相はクロック信号ＣＫ１の位相に合わせていたために、信号経路の遅延が顕在化する恐れがあった。本発明の構成により、信号経路の遅延を隠蔽し、スキャンイネーブル信号とクロック信号にほぼ同じ遅延をもたせることができる。この場合、セットアップタイム制約、およびホールドタイム制約を満足することが容易になり、ひいてはクロック周期を短縮することができる。例えば、スキャンイネーブル信号の遅延ＤＳＥ１、およびクロック信号の遅延ＤＣＫ１、ＤＣＫ２に比べてクロック周期Ｔを短くしても、セットアップタイム制約（ｒ４０１〜ｒ４０３）およびホールドタイム制約（ｒ４０４）を満足することができる。したがって、本発明により大規模、高性能な論理回路に対してもテスト時間を増加させずにＡｔ−ｓｐｅｅｄでロジックＢＩＳＴを実施することを可能にし、結果としてテストコストを低減することができる。
【００１８】
さらに、故障の有無を制御信号送受信器ＦＳＭに認知させる故障判定信号Ｇｏについては、複数クロック周期を使用して転送できるように設計する（ｓ４０６、以下複数クロック周期転送設計という）。故障判定信号Ｇｏについてセットアップタイム制約（ｒ４０５）を満足させるためである。設計段階において制御信号送受信器ＦＳＭが故障判定信号Ｇｏを待つべき周期を決定しておけば、複数クロック周期転送は公知の技術により実現できる。図２の例では２周期後に故障判定信号Ｇｏを受け取るようになっている。
【００１９】
なお、図１のようにユーザー回路ＣＵＴが複数のクロック信号で駆動される場合において、クロック信号ＣＫ１で駆動されるＦＦの数が、クロック信号ＣＫ２で駆動されるＦＦの数に比べて多い場合がある。この場合、クロック信号ＣＫ２の遅延がクロック信号ＣＫ１の遅延に比べて小さく、スキャンイネーブル信号ＳＥ２の遅延がスキャンイネーブル信号ＣＫ１の遅延に比べて小さくなる場合がある。これらの遅延はそれぞれ等しいことが望ましいため、クロック信号ＣＫ２の信号経路及びスキャンイネーブル信号ＳＥ２の信号経路に遅延回路を挿入することで調整する。クロック信号ＣＫ１で駆動されるＦＦの数が、クロック信号ＣＫ２で駆動されるＦＦの数に比べて少ない場合も同様である。
【００２０】
図５は、遅延回路ＤＹ１，ＤＹ２の構成例である。それぞれの遅延回路は、バッファ、あるいはラッチで構成することができる。ラッチを用いた遅延回路は、クロック信号ＣＫＣ０の半周期分遅延させることができるため、遅延時間の大きい遅延回路ＤＹ１として好適なものである。一方、遅延時間の小さい遅延回路、例えばクロック信号ＣＫ１とクロック信号ＣＫ２の間での遅延を調整する遅延回路についてはバッファを用いた遅延回路により構成すればよい。
【００２１】
図３は第１の実施の形態の第２の構成例に関する半導体集積回路を示す回路構成図である。第１の構成例との第１の相違はクロック周期延長回路ＥＸＣＫＣを設けたことである。クロック周期延長回路ＥＸＣＫＣにシステムクロック信号ＣＫＣ００とテスト完了信号Ｄｏｎｅとが入力される。本構成によれば、上述の複数クロック周期転送設計が不要となる。クロック周期延長回路ＥＸＣＫＣの動作を図４のタイミングチャートにより説明する。各テストパタンのテスト動作実施が完了し、テスト完了信号ＤｏｎｅがＨｉｇｈレベルになった後に、システムクロック信号ＣＫＣ０の周期が延長されている（ｓ２０１）。延長後のクロック周期は、故障判定信号Ｇｏのセットアップタイム制約（ｒ２０２）を満足できる程度に長くする。
【００２２】
図６はクロック周期延長回路ＥＸＣＫＣの回路構成例である。遅延回路ＤＹ３、２入力ＮＡＮＤゲートＮＡＮＤ、およびフリップフロップＦＦで構成されるループ回路は、システムクロック信号ＣＫＣ００の入力を受け、遅延回路ＤＹ３で生成される遅延の２倍の周期をもつクロック信号ＣＫＣ５を生成する。周期延長クロック信号ＣＫＣ５は、テスト完了信号ＤｏｎｅがＨｉｇｈレベルになると、セレクタＳＥＬを通過してクロック信号線ＣＫＣ０に出力される。
【００２３】
第２の相違は、ロジックＢＩＳＴコントローラの遅延回路ＤＹ１，ＤＹ２に代えて、補正基準信号Ｆを入力し、補正完了信号（Ｌ１、Ｌ２）を出力する遅延補正回路ＤＹＣ１，ＤＹＣ２を設けたことである。動作電圧または温度を広範囲に変えてロジックＢＩＳＴを実施する場合には、固定の遅延量を与える第１の構成例では信号線形状の違いに起因してクロック信号ＣＫＣ１またはパタン発生開始信号Ｓｔａｒｔの遅延が、クロック信号ＣＫ１，ＣＫ２、スキャンイネーブル信号ＳＥ１，ＳＥ２のいずれかの遅延と大きく異なる恐れがある。このような現象は、デバイスの微細化にともない顕在化する傾向にある。そのため、ＢＩＳＴの実施に先立ち、遅延時間を補正可能とする。このような構成にすると、動作電圧と温度を広範囲に変えてロジックＢＩＳＴを実施する場合にも、動作周波数の向上を図ることが容易になる。
【００２４】
補正基準信号Ｆには、スキャンイネーブル信号ＳＥ１，ＳＥ２、クロック信号ＣＫＣ１，ＣＫ１，ＣＫ２、パタン発生開始信号Ｓｔａｒｔのうち、遅延の最も大きい信号を使用する。あるいはいずれかの信号を基準とするようにあらかじめ設定しておいてもよい。補正時間の調整は以下のようにして行う。
【００２５】
テスタはトリミングモードＴｒｉｍＭｏｄｅをＨｉｇｈレベルに設定する。また、補正参照信号入力端子ＰＩから規則的な信号を入力する。トリミング設定されることにより、スキャンイネーブル信号及びパタン発生開始信号Ｓｔａｒｔの代わりに端子ＰＩからの信号がユーザー回路ＣＵＴに供給される。これらの信号はまれにしか変化しないため、変化の回数を増やし遅延時間の調整を容易にするためである。したがって、クロック信号に関しては端子ＰＩから信号を供給してもよく、本来のシステムクロック端子から信号を供給するようにしてもよい。
【００２６】
図７は、遅延補正回路ＤＹＣ１の回路構成例である。補正入力信号としてＣＫＣ０、補正基準信号としてＦが入力される。リセット信号Ｒｅｓｅｔの入力によりデコーダＤＥＣは可変遅延回路ＶＡＲＤＹの第１段を指定し、ＶＡＲＤＹと遅延回路ＤＹ４とで遅延した信号を補正出力信号ＣＫＣ１として出力する。遅延比較回路ＣＭＰは、補正出力信号ＣＫＣ１と補正基準信号Ｆとを比較し、補正入力信号ＣＫＣ０を遅延させる場合には遅延増加信号ＩｎｃをカウンタＣＮＴＵＰに出力し、カウンタＣＮＴＵＰは可変遅延回路ＶＡＲＤＹの選択位置を変える。なお、１／２分周器ＨＦＤＩＶは、カウンタＣＮＴＵＰの制御タイミングを適正にするために設けられている。補正出力信号ＣＫＣ０と補正基準信号Ｆとが同期すると、補正完了信号Ｌ１が出力される。なお、遅延補正回路ＤＹＣ２も同様の構成であり、補正入力信号として補正参照信号入力端子ＰＩからの信号を用いる点が異なる。
【００２７】
図８は、遅延補正回路ＤＹＣ１の動作を示すタイミングチャートである。これは、補正出力信号の遅延補正が完了する前後の信号波形を示している。補正出力信号の遅延を補正できたか否かの判定は、補正基準信号Ｆの立ち上りエッジｓ１２０１と、Ｆを２入力ＡＮＤゲートＡＮＤに通過させて生成した基準遅延信号Ｆｄの立ち上りエッジｓ１２０２の間に、補正出力信号の立ち上りエッジ（ｓ１２０３、ｓ１２０４）があるか否かを検出することにより行う。すなわち、補正出力信号の遅延ＤＩＮＣが小さい場合には、ｓ１２０３はｓ１２０１より前の時刻に発生するため、遅延増加信号ＩｎｃはＨｉｇｈレベルになる。補正出力信号の遅延ＤＬＯＣＫが大きい場合には、ｓ１２０４はｓ１２０１とｓ１２０２の間の時刻に発生するため、ＩｎｃはＬｏｗレベル、補正完了信号ＬはＨｉｇｈレベルになる。
【００２８】
遅延補正回路ＤＹＣ１の補正完了信号Ｌ１、遅延補正回路ＤＹＣ２の補正完了信号Ｌ２が共に出力されると、補正完了信号が補正完了信号出力端子Ｐｉｎ２から出力される。テスタは補正完了信号を受け、トリミングモードＴｒｉｍＭｏｄｅをＬｏｗレベルに設定する。これにより、カウンタＣＮＴＵＰの値が固定され（図７を参照）、スキャンイネーブル信号やクロック信号ＣＫ２が制御信号送受信器ＦＳＭ、分周器ＤＩＶから出力可能となる。
【００２９】
本実施例では、動作電圧や動作温度を大幅に変化させてもスキャンイネーブル信号やクロック信号の遅延を揃えることができるため、動作周波数の向上を図ることが容易になる。
（第２の実施の形態）
図９は、第２の実施の形態に関する設計フローを示す図である。これは、ロジックＢＩＳＴコントローラに遅延回路（ＤＹ１、ＤＹ２）を挿入するための設計フローの例である。半導体集積回路のレイアウト設計は、実現すべき集積回路の論理機能を示す論理ネットリスト、論理回路の基本機能（インバータ、ＮＡＮＤ等）を実現する要素回路であるセルの情報を格納したセルライブラリ、及び配線特性情報を用いて行う。配線特性情報は例えば配線の単位長さ当たりのシート抵抗、容量の情報であり、配線に伴う遅延の計算に用いられるものである。
【００３０】
フロアプラン／配置工程（ｊ７０１）では、論理ネットリストの論理機能を実現するようにセルを配置する。論理回路の配置が定まると、これらに供給するクロック配線を決定する（ｊ７０２）。クロック配線工程（ｊ７０２）において、スキャンイネーブル信号線ＳＥ１，ＳＥ２、およびクロック信号線ＣＫＣ０〜４、ＣＫ１〜２を配線する。配線したこれらの信号線に対して遅延を計算し（ｊ７０３）、そのうちの最大遅延値を求める。次に、クロック信号ＣＫＣ１、パタン発生開始信号Ｓｔａｒｔの遅延として、上記最大遅延値を指定した信号遅延値指定情報ｄ７０４を作成する。次に、クロック再配線工程ｊ７０５において、クロック信号線ＣＫＣ１、パタン発生開始信号線Ｓｔａｒｔを、信号遅延値指定情報ｄ７０４が示す遅延値になるように配線する。この工程は、従来の技術により容易に実現可能である。具体的には、レイアウトツールのクロック配線機能に、信号名と遅延値を指定して実行するだけでよい。その後、その他の信号線の配線を行う（ｊ７０６）。これにより、レイアウト情報が付加された論理ネットリストが得られる。
【００３１】
なお、スキャンイネーブル信号ＳＥ１及びクロック信号ＣＫ１とスキャンイネーブル信号ＳＥ２及びクロック信号ＣＫ２についても遅延計算ｊ７０３を行い、必要であればクロック再配線ｊ７０５を行い、遅延時間を調整する。さらに図６に示した遅延回路ＤＹ３の値の設定も同様にして行える。
【００３２】
図１０は、図９に示した設計フローを実行する設計装置、および記憶媒体を示す構成図である。本発明のロジックＢＩＳＴコントローラを有する半導体集積回路装置を実現するための設計装置は、メモリＭＥＭ、プロセッサＣＰＵ、外部記憶装置ＨＤ、外部インターフェースＩ／Ｆを有するワークステーションＷＳとして実現できる。
【００３３】
メモリＭＥＭにはセル配置を実行するためのレイアウトプログラム、遅延計算を実行するための遅延計算プログラム、および外部インターフェースＩ／Ｆを制御する外部インターフェース制御プログラムが収められている。また、外部記憶装置ＨＤには論理ネットリスト、セルライブラリ、配線特性情報、信号遅延値指定情報、およびレイアウト情報付加ネットリストを表現する各データが収められている。キーボードＫＢまたはマウスＭＳからの入力により、各プログラムを操作、および実行する。また、各プログラムの実行結果を、ディスプレイＤＰに出力して参照することができる。収められているすべてのプログラム、およびデータは、コンパクトディスクドライバＣＤＤから入出力することができ、コンパクトディスクＣＤの形態で保存、流通することができる。なお、コンパクトディスクは単なる例示であって、磁気記録媒体、光学的記録媒体等限定されるものではない。
【００３４】
【発明の効果】
本発明によれば、大規模、高性能な論理回路に対してもテスト時間を増加させ
ずにＡｔ−ｓｐｅｅｄでロジックＢＩＳＴを実施することを可能にし、結果とし
てテストコストを低減することができる。
【図面の簡単な説明】
【図１】第１の実施形態の第１の構成例の回路構成図である。
【図２】図１の構成例の動作を示すタイミングチャートである。
【図３】第１の実施形態の第２の構成例の回路構成図である。
【図４】図３の構成例の動作を示すタイミングチャートである。
【図５】遅延回路の回路構成図である。
【図６】クロック周期延長回路の回路構成図である。
【図７】遅延補正回路の回路構成図である。
【図８】遅延補正回路の動作を示すタイミングチャートである。
【図９】第２の実施形態に係る設計フローを示す図である。
【図１０】第２の実施形態に係る設計装置、記憶媒体を示す図である。
【図１１】従来のロジックＢＩＳＴコントローラの回路構成図である。
【図１２】従来のロジックＢＩＳＴコントローラの動作を示すタイミングチャートである。
【符号の説明】
ＣＮＴＬ…ロジックＢＩＳＴコントローラ、ＣＮＴ…計数器、ＦＳＭ…制御信号
送受信器、ＤＩＶ…分周器、ＤＹ…遅延回路、ＰＧ…パタン発生器、ＳＡ…故障
判定器、ＣＵＴ…ユーザー回路、ＣＬ…組合せ回路。
【図１】
0004119152.tif 000002
【図２】
0004119152.tif 000003
【図３】
0004119152.tif 000004
【図４】
0004119152.tif 000005
【図５】
0004119152.tif 000006
【図６】
0004119152.tif 000007
【図７】
0004119152.tif 000008
【図８】
0004119152.tif 000009
【図９】
0004119152.tif 000010
【図１０】
0004119152.tif 000011
【図１１】
0004119152.tif 000012
【図１２】
0004119152.tif 000013