(57)【要約】【課題】設計対象回路についての故障検出率を省力的かつ効果的に向上させる。【解決手段】回路試験装置１００は、顧客ニーズに応じた機能を備えた設計対象回路の設計データを取得すると、この設計対象回路のうち、試験対象に指定された対象回路１０２がＯＲ回路かＡＮＤ回路かに応じて、故障検出を可能にするための回路試験機構１１０を生成する。また、回路試験装置１００は、生成した回路試験機構１１０によって、対象回路１０２の動作試験を実行する機能も備えている。【選択図】図１
2010054402.tif 000002
【特許請求の範囲】
【請求項１】
設計対象回路の中から試験対象回路を受け付ける受付手段と、
前記受付手段によって受け付けた試験対象回路の前段に接続された論理回路を特定する特定手段と、
前記特定手段によって特定された論理回路と前記試験対象回路との間に前記論理回路からの出力をマスクするマスク回路と、当該マスク回路のマスク処理を制御する制御信号の入力端子と、前記試験対象回路へ入力するテスト信号の入力端子とを含む回路試験機構を生成する生成手段と、
を備えることを特徴とする回路試験装置。
【請求項２】
前記生成手段は、さらに、前記試験対象回路からの出力をクロックサイクルごとに保持するレジスタと、前記レジスタに保持された連続するクロックサイクルの値を比較する比較器を含んだ回路試験機構を生成することを特徴とする請求項１に記載の回路試験装置。
【請求項３】
前記回路試験機構において、前記制御信号によって前記試験対象回路への入力がマスクされた後に、前記テスト信号の入力端子からテスト信号が入力された場合、前記比較器によって連続するクロックサイクルの値が一致するか否かに応じて、前記試験対象回路の故障を検出する検出手段を備えることを特徴とする請求項２に記載の回路試験装置。
【請求項４】
前記試験対象回路がＯＲ回路の場合、
前記マスク回路は、前記論理回路からの出力と、前記制御信号の入力とを受け付けるＡＮＤ回路によって構成されていることを特徴とする請求項１〜３のいずれか一つに記載の回路試験装置。
【請求項５】
前記試験対象回路がＡＮＤ回路の場合、
前記マスク回路は、前記論理回路からの出力と、前記制御信号の入力の反転値を受け付けるＯＲ回路によって構成されていることを特徴とする請求項１〜３のいずれか一つに記載の回路試験装置。
【請求項６】
コンピュータを、
設計対象回路の中から試験対象回路を受け付ける受付手段、
前記受付手段によって受け付けた試験対象回路の前段に接続された論理回路を特定する特定手段、
前記特定手段によって特定された論理回路と前記試験対象回路との間に前記論理回路からの出力をマスクするマスク回路と、当該マスク回路のマスク処理を制御する制御信号の入力端子と、前記試験対象回路へ入力するテスト信号の入力端子とを含む回路試験機構を生成する生成手段、
として機能させることを特徴とする回路試験プログラム。
【請求項７】
コンピュータが、
設計対象回路の中から試験対象回路を受け付ける受付工程と、
前記受付工程によって受け付けた試験対象回路の前段に接続された論理回路を特定する特定工程と、
前記特定工程によって特定された論理回路と前記試験対象回路との間に前記論理回路からの出力をマスクするマスク回路と、当該マスク回路のマスク処理を制御する制御信号の入力端子と、前記試験対象回路へ入力するテスト信号の入力端子とを含む回路試験機構を生成する生成工程と、
を実行することを特徴とする回路試験方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、回路設計工程において設計対象回路の故障検出をおこなうための回路試験装置、回路試験プログラムおよび回路試験方法に関する。
【背景技術】
【０００２】
従来より、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ；特定用途向け集積回路）を設計し、実機に搭載して製品として出荷するまでには多くの工程を必要としている。図７は、従来のＡＳＩＣ設計から出荷までの手順を示すフローチャートである。図７を用いて各工程を説明すると、設計者は、まず、顧客ニーズを受け付け（ステップＳ７０１）、受け付けた顧客ニーズから要求分析をおこなう（ステップＳ７０２）、この要求分析とは、顧客ニーズが何であるかを調査した上で、システムがどのようなサービスを提供するかを定義してシステム運用に関する制約条件を規定した要求仕様を作成する作業である。
【０００３】
さらに、ステップＳ７０２の処理によって、顧客の要求仕様を明確にした後、この要求仕様を実現するために必要となるシステムとしての仕様を策定するためにシステム設計をおこなう（ステップＳ７０３）。そして、動作仕様に基づいて回路の動作処理を決定し、回路記述言語によってアーキテクチャおよび機能の設計をおこなう（ステップＳ７０４）。つぎに、ステップＳ７０４において回路記述言語で表現された論理を論理回路に変換するために論理設計をおこなうことによって（ステップ７０５）、所望のテクノロジのライブラリセルにマッピングをおこなう。
【０００４】
その後、テスト設計処理として、製造段階でのトランジスタ故障を検出できる試験機構を備えた回路を設計し（ステップＳ７０６）、ステップＳ７０５によって設計された論理回路に挿入する。その後、ステップＳ７０６までの工程によって設定された回路（試験機構を備えた回路）のテスト結果に基づいて、ＡＳＩＣデバイスに配置・配線に関するレイアウト設計をおこなう（ステップＳ７０７）。そして、ステップＳ７０７によって設計された７０７にて設計されたＡＳＩＣを製造し、実際の製品によってさらに評価テストをおこなう（ステップＳ７０８）。このテストの結果、良品と判定されると、はじめて製品として出荷される（ステップＳ７０９）。
【０００５】
また、ステップＳ７０８のＡＳＩＣの出荷テストにおいてＡＳＩＣの良否を判定する手法としては、テストパターンによる回路試験の手法が一般的である。これは、ＡＳＩＣの入力信号‘０’，‘１’にある特定のパターンを入力し、期待値と呼ばれる値と出力端子からの‘０’，‘１’パターンを照合した結果、出力値と期待値が一致していれば良品と判断する。
【０００６】
また、このようなテストパターンを用いる場合、特にスキャンチェーンによるスキャンテストと呼ばれる手法が多用されている。図８は、スキャンチェーンによるスキャンテストの手順を示す説明図である。スキャンチェーンによるスキャンテストの場合、設計対象回路８００のように、ＡＳＩＣテスト用に作られるＦＦの接続をシフトレジスタのように数珠つなぎにした状態で上述したようなテストパターンを用いた試験をおこなう。通常の動作では実線矢印にあるようにＦＦのＤ端子からＱ端子に接続されるパスで動作する。このパス上には順序回路が存在している。これに対し、スキャンチェーンとして用意された接続（破線矢印）は、各ＦＦのシグナル入力端子（ＳＩＮ）からシグナル出力端子（ＳＯＵＴ）をシフトレジスタとして接続されている。これらの通常の動作用の接続と、スキャンチェーンの接続とのどちらを有効にするかは、テストモード切替信号によって制御することができる。
【０００７】
すなわち、試験実行時には、ＳＩＮ端子から‘０’，‘１’パターンが入力され、図８の破線矢印に示すように各ＦＦのＳＩＮ／ＳＯＵＴ端子を通り、ＳＯＵＴ端子に出力される。また、他にもＦＦのＤ端子から取り込んだ信号をＦＦのＳＯＵＴ端子に出力し、シフト動作によりＳＯＵＴ端子に出力する手法も用いられている（たとえば、下記特許文献１参照）。
【０００８】
【特許文献１】特開２００４−１８４３１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述のようなＡＳＩＣの出荷時の評価テストにおいて、回路内部の故障を検出できる割合を故障検出率という。これは回路内部にある論理セルの端子総数を「Ａ」とし、この中から故障の検出できる端子数を「Ｂ」とすると「Ｂ／Ａ」％によってあらわすことができる。ＡＳＩＣのテストで正しく良否を判定できるようにするために故障検出率を１００％に近づけること、すなわち、可能な限りすべての端子から故障検出ができるような回路試験が求められる。
【００１０】
しかしながら、従来の回路試験のうち、スキャンテストでは、設計対象回路内のすべての回路に対して網羅的に故障検出をおこなうことはできない。また、スキャンテスト以外に、ＡＴＰＧ（Ａｕｔｏｍａｔｉｃ  Ｔｅｓｔ  Ｐａｔｔｅｒｎ  Ｇｅｎｅｒａｔｏｒ）によって様々なテストパターンを自動的に生成することによって、各回路の故障検出をおこなう手法も提供されているが、ＡＴＰＧによって生成されたテストパターンでは活性化できない回路に関しては、個別に追加パターンを作成し活性化させなければならない。結果として、検証時間、試験時間共に膨大な処理となり処理効率やコスト面で大きな負担となってしまうという問題があった。
【００１１】
この発明は、上述した従来技術による問題点を解消するため、設計対象回路のついての故障検出率を省力的かつ効果的に向上させることのできる回路試験装置、回路試験プログラムおよび回路試験方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、この回路試験装置、回路試験プログラムおよび回路試験方法は、設計対象回路の中から試験対象回路の指定を受け付ける処理と、受け付けた試験対象回路の前段に接続された論理回路を特定する処理と、特定された論理回路と前記試験対象回路との間に前記論理回路からの出力をマスクするマスク回路と、当該マスク回路のマスク処理を制御する制御信号の入力端子と、前記試験対象回路へ入力するテスト信号の入力端子とを含む回路試験機構を生成する処理と、を含むことを要件とする。
【００１３】
この回路試験装置、回路試験プログラムおよび回路試験方法によれば、マスク回路のマスク処理を制御することによって、試験対象回路に対して、前段の論理回路から出力を遮蔽して試験対象回路に影響を与えないようにすることができる。また、前段の論理回路から出力が遮蔽された状態でテスト信号を入力することによって、試験対象回路の動作のみを検証することができる。
【発明の効果】
【００１４】
この回路試験装置、回路試験プログラムおよび回路試験方法によれば、設計対象回路についての故障検出率を省力的かつ効果的に向上させることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１５】
以下に添付図面を参照して、この回路試験装置、回路試験プログラムおよび回路試験方法の好適な実施の形態を詳細に説明する。この回路試験装置、回路試験プログラムおよび回路試験方法では、試験対象となる回路の前段の論理回路からの出力を遮蔽するマスク回路を含んだ回路試験機構を生成して試験対象回路に挿入することによって、効率的な回路試験を容易に実現することができる。
【００１６】
（回路試験の概要）
まず、本実施の形態にかかる回路試験の概要について説明する。図１は、本実施の形態にかかる回路試験の概要を示す説明図である。回路試験装置１００では、顧客ニーズに応じた機能を備えた設計対象回路の設計データ（以下、「設計対象回路データ」という）が生成されると、この設計対象回路データ取得して、設計対象回路のうち、試験対象に指定された対象回路１０２の故障検出を可能にするための回路試験機構１１０を生成する。すなわち、図７に説明したステップＳ７０６のテスト設計の工程において、特にＤＦＴ（Ｄｅｓｉｇｎ  Ｆｏｒ  Ｔｅｓｔａｂｉｌｉｔｙ：テスト容易化設計）に関する処理をおこなう。また、回路試験装置１００は、生成した回路試験機構１１０によって、対象回路１０２の動作試験を実行する機能も備えている。
【００１７】
回路試験機構１１０は、マスク回路１１１と、制御信号入力端子１１２と、テスト信号入力端子１１３とが含まれている。そして、生成された回路試験機構１１０は、対象回路１０２と、この対象回路１０２の前段の論理回路１０１との間に挿入される。回路試験機構１１０のマスク回路１１１は、制御信号入力端子１１２から入力される制御信号に応じて、論理回路１０１からの出力をマスクする。たとえば、制御信号ＯＮの状態であれば、マスク回路１１１は、論理回路１０１からの出力をマスクする。したがって、対象回路１０２には、論理回路１０１からの出力が入力されない。
【００１８】
そして、制御信号ＯＦＦの状態であれば、マスク回路１１１は、論理回路１０１からの出力をマスクしない。したがって、論理回路１０１からの出力は、マスク回路１１１を透過して、そのまま対象回路１０２に入力される。すなわち、回路試験でなく、通常の回路動作を実行させたい場合には、制御信号ＯＦＦの状態にすればよい。
【００１９】
そして、テスト信号入力端子１１３からは、回路試験時に、対象回路１０２の動作を検証するためのテスト信号が入力される。すなわち、回路試験時では、上述した制御信号ＯＮの状態となっているため、対象回路１０２には、論理回路１０１からの出力は、入力されず、テスト信号入力端子１１３から入力されたテスト信号のみが入力される。したがって、制御信号ＯＮの状態において、対象回路１０２の出力を保持することによって、対象回路１０１の故障検出をおこなうことができる。
【００２０】
以下に、図１にて説明した回路試験を実現するための具体的な構成および動作について説明する。
【００２１】
（回路試験装置のハードウェア構成）
まず、回路試験装置１００のハードウェア構成について説明する。図２−１は、回路試験装置１００のハードウェア構成を示すブロック図である。図２−１において、回路試験装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、磁気ディスクドライブ２０４と、磁気ディスク２０５と、光ディスクドライブ２０６と、光ディスク２０７と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０８と、入力デバイス２０９と、出力デバイス２１０と、を備えている。また、各構成部はバス２００によってそれぞれ接続されている。
【００２２】
ここで、ＣＰＵ２０１は、回路試験装置１００の全体の制御を司る。また、ＲＯＭ２０２は、ブートプログラムや、テスト回路設計プログラムなどのプログラムを記憶している。また、回路試験装置１００において、テスト設計処理のみならず、図７にて説明したような、ステップＳ７０５の論理設計やステップＳ７０７のレイアウト設計など、他の工程に関する処理をおこなう場合には、各工程の処理内容に応じたプログラムも記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。磁気ディスクドライブ２０４は、ＣＰＵ２０１の制御にしたがって磁気ディスク２０５に対するデータのリード／ライトを制御する。磁気ディスク２０５は、磁気ディスクドライブ２０４の制御で書き込まれたデータを記憶する。
【００２３】
光ディスクドライブ２０６は、ＣＰＵ２０１の制御にしたがって光ディスク２０７に対するデータのリード／ライトを制御する。光ディスク２０７は、光ディスクドライブ２０６の制御で書き込まれたデータを記憶したり、光ディスク２０７に記憶されたデータをコンピュータに読み取らせたりする。
【００２４】
インターフェース（以下、「Ｉ／Ｆ」と略する）２０８は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１１に接続され、このネットワーク２１１を介して他の装置（たとえば、図７にて説明したステップＳ７０５の論理設計やステップＡ７０７のレイアウト設計をおこなう装置など）に接続される。そして、Ｉ／Ｆ２０８は、ネットワーク２１１と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０８には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２５】
入力デバイス２０９は、設計者から回路試験装置１００への指示を受け付けることができる。入力デバイス２０９の構成例としては、たとえば、キーボード、マウスなどが挙げられる。キーボードであれば、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなうことができる。また、キーボードは、一般的な鍵盤タイプに限らず、タッチパネル式の入力パッドやテンキーなどであってもよい。また、マウスであれば、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなうことができる。他にも、ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２６】
出力デバイス２１０は、回路試験装置１００による処理結果を検証者に対して出力することができる。出力デバイスの構成例としては、ディスプレイやプリンタが挙げられる。ディスプレイであれば、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示することができる。また、プリンタであれば、生成したテスト用ネットリストに関するデータを印刷することができる。
【００２７】
（回路試験装置の機能的構成）
つぎに、回路試験装置１００の機能的構成について説明する。図２−２は、回路試験装置の機能的構成を示すブロック図である。回路試験装置１００は、受付部２２１と、特定部２２２と、生成部２２３と、検出部２２４と、を含む構成である。この制御部となる機能（受付部２２１〜検出部２２４）は、具体的には、たとえば、図２−１に示したＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶されたプログラムをＣＰＵ２０１に実行させることにより、または、Ｉ／Ｆ２０８により、その機能を実現する。
【００２８】
受付部２２１は、設計対象回路データが入力されると、設計対象回路の中から試験対象となる回路（たとえば、図１の対象回路１０２）の指定を受け付ける。試験対象となる回路の指定は、たとえば、設計対象回路の回路試験をおこなう検証者や上位システムから入力デバイス２０９による入力を受け付けることによって実現される。また、本実施の形態では、設計対象回路に含まれるすべての回路を検証対象として指定することができる。したがって、設計対象回路に含まれるすべての回路の故障検出を実現するために、順次試験対象回路に設定してもよいし、従来の手法と併用し、従来の手法では故障検出できなかった回路（たとえば、ＡＴＰＧにて活性化できなかった回路など）のみを試験対象回路に指定してもよい。なお、受け付けた回路の指定指示は、一旦、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００２９】
特定部２２２は、受付部２２１によって受け付けた試験対象回路の前段に接続された論理回路（たとえば、図１の論理回路１０１）を特定する。試験対象回路の前段に接続された論理回路を特定するには、たとえば、受付部２２１に入力された設計対象回路データにおいて、試験対象回路の接続をフィードバックすればよい。特定部２２２によって特定された論理回路の情報は、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００３０】
生成部２２３は、特定部２２２によって特定された論理回路と試験対象回路との間に論理回路からの出力をマスクするマスク回路（たとえば、図１のマスク回路１１１）と、マスク回路のマスク処理を制御する制御信号の入力端子（たとえば、図１の制御信号入力端子１１２）と、試験対象回路へ入力するテスト信号の入力端子（たとえば、図１のテスト信号入力端子１１３）とを含む回路試験機構を生成する。
【００３１】
また、生成部２２３は、上述した構成に加え、さらに、試験対象回路からの出力をクロックサイクルごとに保持するレジスタと、レジスタに保持された連続するクロックサイクルの値を比較する比較器を含んだ回路試験機構を生成してもよい。また、生成部２２３では、生成した回路試験機構を設計対象回路に挿入した回路、すなわち、テスト容易化回路となった設計対象回路の設計データが出力される。この設計データは、図７にて説明したステップＳ７０７の処理に利用される。
【００３２】
また、上述したように、生成部２２３では、対象回路１０２の動作試験を実行することもできる。このような処理をおこなう場合、生成部２２３では、さらに、試験対象回路からの出力を保持するレジスタとレジスタに保持された値を比較する比較器とを備えた回路試験機構を生成する。この比較器の比較結果を後述する検出部２２４に出力することによって、自動的に試験対象回路の動作についての故障検出を実現することができる。
【００３３】
検出部２２４は、制御信号によって試験対象回路への入力がマスクされた後に、テスト入力端子から入力したテスト用信号が入力された場合、回路試験機構の比較器によって連続するクロックサイクルの値が一致するか否かに応じて、試験対象回路の故障を検出する。たとえば、レジスタに所定の値を保持させた後、テスト用信号として所定の値と同一の値を試験対象回路へ入力すると、試験対象回路の動作が正常であれば、レジスタに所定の値と同一の値が保持される。したがって、試験対象回路の動作が正常であれば、比較器では、連続するクロックサイクルの値が一致すると判断される。すなわち、比較器にて、連続するクロックサイクルの値が一致しなければ検出部２２４は、試験対象回路の動作が正常ではないため、故障として検出し、故障データを出力することができる。
【００３４】
以上説明したように、本実施の形態にかかる回路試験装置１００の機能は、試験対象回路に対して回路試験をおこなうための回路試験機構を生成する機能と、生成した回路試験機構を用いて故障検出をおこなう機能との２つに大別される。したがって、以下では、回路試験機構生成と、回路試験とのそれぞれの機能に分けてそれぞれ具体的な手順について説明する。
【００３５】
（回路試験機構生成の手順）
まず、回路試験装置１００における回路試験機構生成の手順について説明する。図３は、回路試験機構の生成手順を示すフローチャートである。図３のフローチャートにおいて、まず、設計対象回路データを取得したか否かを判断する（ステップＳ３０１）。ここで、設計対象回路データを取得するまで待ち（ステップＳ３０１：Ｎｏのループ）、設計対象回路データを取得すると（ステップＳ３０１：Ｙｅｓ）、つぎに、設計対象回路の中から試験対象回路が指定されたか否かを判断する（ステップＳ３０２）。
【００３６】
このステップＳ３０２において、試験対象回路が指定されたか否かは、受付部２２１において、検証者からの指示を受け付けたか否かに応じて判断される。ここでも試験対象回路が指定されるまで待ち（ステップＳ３０２：Ｎｏのループ）、試験対象回路が指定されると（ステップＳ３０２：Ｙｅｓ）、指定された試験対象回路と、その前段の論理回路とを特定する（ステップＳ３０３）。すなわち、このステップＳ３０３では、試験対象回路がどの論理回路からの出力に影響されているかを特定していることになる。そして、ステップＳ３０３によって特定された試験対象回路と、その前段の論理回路との間に回路試験機構を生成し（ステップＳ３０４）、回路試験生成の一連の処理を終了する。
【００３７】
（回路試験の手順）
つぎに、回路試験装置１００における回路試験の手順について説明する。図４−１〜図４−３は、回路試験の手順を示すフローチャートである。図４−１のフローチャートにおいて、まず、テスト信号をＯＦＦ状態に設定する（ステップＳ４１１）。そして試験対象となる対象回路１０２の前段の論理回路１０１からの出力をマスクする処理に移行する。具体的には、マスク用の制御信号入力端子１１２からマスク回路１１１にマスク指示をおこなうための制御信号を入力する（ステップＳ４１２）。
【００３８】
ステップＳ４１２の処理によって対象回路１０２には、前段の論理回路１０１から常に‘０’が入力されていることになる。すなわち、試験対象回路自体の‘０’出力状態となる。そして、対象回路１０２の試験をおこなうが、このとき、対象回路１０２がＯＲ回路であるかＡＮＤ回路であるかで回路試験機構における動作が異なるため、対象回路１０２がＯＲ回路であるかＡＮＤ回路であるかを判断する（ステップＳ４１３）。
【００３９】
まず、対象回路１０２がＡＮＤ回路であった場合の処理について説明する。ステップＳ４１３によって対象回路１０２がＡＮＤ回路であると判断されると（ステップＳ４１３：ＡＮＤ）、つぎに、図４−２のフローチャートにおいて、セット用外部端子からオール０指示を入力する（ステップＳ４２１）。セット用外部端子とは、回路試験機構として生成されたレジスタの値をセットするための専用の入力端子である。外部からは、‘０’または‘１’が入力されるため、レジスタは、‘０’または‘１’にセットされる。そして、ステップＳ４２１の０入力によってレジスタには‘０’が保持される（オール０セット）。
【００４０】
そこで、つぎに比較器によってレジスタの連続して保持されている値がすべて‘０’であるか、すなわちオール０か否かを判断する（ステップＳ４２２）。このステップＳ４２２におけるオール０チェックによってオール０でないと判断された場合（ステップＳ４２２：Ｎｏ）、検出部２２４は、対象回路１０２が１縮退故障を起こしている不良品であると判断し（ステップＳ４２６）、一連の処理を終了する。
【００４１】
一方、ステップＳ４２２において、オール０であると判断された場合（ステップＳ４２２：Ｙｅｓ）、さらに、セット用外部端子からオール１指示を入力する（ステップＳ４２３）。このステップＳ４２３の処理によって今度は、レジスタには‘１’が保持される（オール１セット）。そして、比較器によってレジスタの連続して保持されている値がすべて‘１’であるか、すなわちオール１か否かを判断する（ステップＳ４２４）。
【００４２】
ステップＳ４２４におけるオール１チェックによってオール１でないと判断された場合（ステップＳ４２４：Ｎｏ）、検出部２２４は、対象回路１０２が０縮退故障を起こしている不良品であると判断し（ステップＳ４２６）、一連の処理を終了する。一方、ステップＳ４２４において、オール１であると判断された場合（ステップＳ４２４：Ｙｅｓ）、対象回路１０２は正常に動作する良品であると判断され（ステップＳ４２５）、そのまま一連の処理を終了する。
【００４３】
つぎに、対象回路１０２がＯＲ回路であった場合の処理について説明する。ステップＳ４１３によって対象回路１０２がＯＲ回路であると判断されると（ステップＳ４１３：ＯＲ）、つぎに、図４−３のフローチャートにおいて、セット用外部端子からオール１指示を入力する（ステップＳ４３１）。このステップＳ４３１の入力によって検出器２２４内部のレジスタには‘１’が保持される（オール１セット）。
【００４４】
つぎに比較器によってレジスタの連続して保持されている値がすべて‘１’であるか、すなわちオール１か否かを判断する（ステップＳ４３２）。このステップＳ４３２におけるオール１チェックによってオール１でないと判断された場合（ステップＳ４３２：Ｎｏ）、検出部２２４は、対象回路１０２が０縮退故障を起こしている不良品であると判断し（ステップＳ４３６）、一連の処理を終了する。
【００４５】
一方、ステップＳ４３２において、オール１であると判断された場合（ステップＳ４３２：Ｙｅｓ）、さらに、セット用外部端子からオール０指示を入力する（ステップＳ４３３）。このステップＳ４３３の処理によって今度は、レジスタには‘０’が保持される（オール０セット）。そして、比較器によってレジスタの連続して保持されている値がすべて‘０’であるか、すなわちオール０か否かを判断する（ステップＳ４３４）。
【００４６】
ステップＳ４３４におけるオール０チェックによってオール０でないと判断された場合（ステップＳ４３４：Ｎｏ）、検出部２２４は、対象回路１０２が１縮退故障を起こしている不良品であると判断し（ステップＳ４３６）、一連の処理を終了する。一方、ステップＳ４３４において、オール０であると判断された場合（ステップＳ４３４：Ｙｅｓ）、対象回路１０２は正常に動作する良品であると判断され（ステップＳ４３５）、そのまま一連の処理を終了する。
【００４７】
以上説明したように、回路試験装置１００では、試験対象に指定された対象回路１０２に応じて、最適かつ容易な構成による回路試験機構を生成するとともに、生成した回路試験機構を用いて、効率的に対象回路１０２の故障検出を実現することができる。なお、図４−１〜図４−３にて説明したように、異なる対象回路１０２に対して同様の回路試験をおこなう場合であっても、対象回路１０２がＯＲ回路であるかＡＮＤ回路であるかに応じて処理が異なるため、回路試験機構もそれぞれ回路の種類に応じた構成が求められる。したがって、以下に、回路試験構成として、対象回路１０２がＯＲ回路である場合と、ＡＮＤ回路である場合とについて、それぞれ具体的な構成と動作内容について説明する。
【００４８】
（回路試験構成その１：ＯＲ回路）
まず、回路試験構成その１として、ＯＲ回路をテスト対象回路とする場合の試験構成について説明する。図５は、回路試験機構その１の構成例を示す回路図である。回路５００では、ＯＲ１が対象回路となる。したがって、ＯＲ１の前段の論理回路であるユーザ回路５１０からの出力をマスクするマスク回路としてＡＮＤ１が挿入されている。また、対象回路ＯＲ１の出力は、通常の接続回路（ＧＣＢ：Ｇａｔｅｄ  Ｃｌｏｃｋ  Ｂｕｆｆｅｒ）以外に、回路試験機構の検出器５２０に出力される。
【００４９】
回路試験をおこなう場合には、まず、テスト信号をＯＦＦ状態にする。この設定により対象回路ＯＲ１は、マスク回路ＡＮＤ１からの出力をスルーする状態となる。つぎに、ユーザ回路５１０の出力をマスクするために、マスク用制御信号入力端子より‘０’入力をおこなう。この‘０’入力によってマスク回路ＡＮＤ１の出力は‘０’となり対象回路ＯＲ１の出力も同様に‘０’となる。
【００５０】
そして、セット用外部端子より‘１’入力をおこなう。そして、Ｃｌｏｃｋ端子から１サイクルクロックを入力して‘１’を検出器５２０内部のレジスタ５２１に保持させる。この動作により検出器５２０内部のすべてのレジスタ５２１に‘１’がセットされる。そして、レジスタ５２１に連続して保持（２サイクルクロック分）された値を比較器５０１にて比較する。
【００５１】
ここで、レジスタ５２１に入力された値がオール１の場合、比較器では、‘１’と‘１’とが比較され一致する旨をあらわす値（たとえば‘０’）を出力する。一方、比較器５０１において、入力された値が一致しない場合は、一致しない旨をあらわす値（たとえば‘１’）を出力する。一致しない旨をあらわす値が出力された場合、検出器５２０のレジスタ５２１が０縮退故障していると検出され、回路試験を終了する。そして、故障が検出されなかった場合にはじめて、対象回路ＯＲ１の回路試験に移行する。
【００５２】
まず、セット用外部端子から‘０’入力をおこなう。この‘０’入力によってレジスタ５２１には再び‘０’が入力される。ここでＣｌｏｃｋ端子から１サイクルクロックを入力するとレジスタ５２１には‘０’が保持される。そして、レジスタ５２１に連続して保持（２サイクルクロック分）された値を比較器５０１にて比較する。入力された値がオール０の場合は比較器５０１の出力は、比較された値が一致する旨をあらわす値‘０’となり良品と判断される。一方、比較器５０１において、入力された値が一致しなかった場合は、一致しない旨をあらわす値‘１’が出力される。このとき、対象回路ＯＲ１では、１縮退故障が起こっていると判断され、対象回路ＯＲ１への回路試験は終了する。
【００５３】
（回路試験構成その２：ＡＮＤ回路）
つぎに、回路試験構成その２として、ＡＮＤ回路を試験対象回路とする場合の試験構成について説明する。図６は、回路試験機構その２の構成例を示す回路図である。回路６００では、ＡＮＤ２が対象回路となる。したがって、ＡＮＤ２の前段の論理回路であるユーザ回路６１０からの出力をマスクするマスク回路としてＯＲ３が挿入されている。また、テスト信号はＮＯＴ１によって反転した状態で対象回路ＡＮＤ２に入力される。そして、対象回路ＡＮＤ２の出力は、通常の接続回路（ＦＦ：Ｆｌｉｐ  Ｆｌｏｐ）以外に、回路試験機構の検出器６２０に出力される。
【００５４】
回路試験をおこなう場合には、まず、テスト信号をＯＦＦ状態にする。この設定により対象回路ＡＮＤ２は、マスク回路ＯＲ３からの出力をスルーする状態となる。つぎに、ユーザ回路６１０の出力をマスクするために、マスク用制御信号入力端子より‘１’入力をおこなう。この‘１’入力によってマスク回路ＯＲ３の出力は‘１’となり対象回路ＡＮＤ２の出力も同様に‘１’となる。
【００５５】
そして、セット用外部端子より‘０’入力をおこなう。そして、Ｃｌｏｃｋ端子から１サイクルクロックを入力して‘１’を検出器６２０内部のレジスタ６２１に保持させる。この動作により検出器６２０内部のすべてのレジスタ６２１に‘０’がセットされる。そして、レジスタ６２１に連続して保持（２サイクルクロック分）された値を比較器６０１にて比較する。
【００５６】
ここで、レジスタ６２１に入力された値がオール０の場合、比較器では、‘０’と‘０’とが比較され一致する旨をあらわす値（たとえば‘０’）を出力する。一方、比較器６０１において、入力された値が一致しない場合は、一致しない旨をあらわす値（たとえば‘１’）を出力する。一致しない旨をあらわす値が出力された場合、検出器６２０のレジスタ６２１が１縮退故障していると検出され、回路試験を終了する。そして、故障が検出されなかった場合にはじめて、対象回路ＡＮＤ２の回路試験に移行する。
【００５７】
まず、セット用外部端子から‘１’入力をおこなう。この‘１’入力によってレジスタ６２１には再び‘１’が入力される。ここでＣｌｏｃｋ端子から１サイクルクロックを入力するとレジスタ６２１には‘１’が保持される。そして、レジスタ６２１に連続して保持（２サイクルクロック分）された値を比較器６０１にて比較する。入力された値がオール１の場合は比較器６０１の出力は、比較された値が一致する旨をあらわす値‘０’となり良品と判断される。一方、比較器６０１において、入力された値が一致しなかった場合は、一致しない旨をあらわす値‘１’が出力される。このとき、対象回路ＡＮＤ２では、０縮退故障が起こっていると判断され、対象回路ＡＮＤ２への回路試験は終了する。
【００５８】
このように、図５，６にて説明した手順の動作をおこなうことによって、テスト期間中では、固定値が入力されていた試験対象回路についての故障を検出することができるようになり、故障検出率を向上することができる。
【００５９】
以上説明したように、本実施の形態によれば、故障検出率向上のための回路試験が不可能であった箇所に関しても故障検出ができるようになる。これにより故障検出率を向上させることができる。また、ＡＴＰＧで活性化できない回路を活性化することができる。したがって、従来のように追加パターンを生成して回路試験をおこなう場合と比較して、大幅にテスト時間を短縮することができる。したがって、検証者の処理量の面、コスト面でも大幅に負担を軽減することができる。
【００６０】
なお、本実施の形態で説明した回路試験方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、このプログラムは、インターネットなどのネットワークを介して配布することが可能な媒体であってもよい。
【００６１】
また、本実施の形態で説明した回路試験装置１００は、スタンダードセルやストラクチャードＡＳＩＣやＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述した回路試験装置１００の機能（受付部２２１〜検出部２２４）をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、回路試験装置１００を製造することができる。
【図面の簡単な説明】
【００６２】
【図１】本実施の形態にかかる回路試験の概要を示す説明図である。
【図２−１】回路試験装置のハードウェア構成を示すブロック図である。
【図２−２】回路試験装置の機能的構成を示すブロック図である。
【図３】回路試験機構の生成手順を示すフローチャートである。
【図４−１】回路試験の手順を示すフローチャート（その１）である。
【図４−２】回路試験の手順を示すフローチャート（その２）である。
【図４−３】回路試験の手順を示すフローチャート（その３）である。
【図５】回路試験機構その１の構成例を示す回路図である。
【図６】回路試験機構その２の構成例を示す回路図である。
【図７】従来のＡＳＩＣ設計から出荷までの手順を示すフローチャートである。
【図８】スキャンチェーンによるスキャンテストの手順を示す説明図である。
【符号の説明】
【００６３】
１００  回路試験装置
１０１  論理回路
１０２  対象回路
１１０  回路試験機構
１１１  マスク回路
１１２  制御信号入力端子
１１３  テスト信号入力端子
２２１  受付部
２２２  特定部
２２３  生成部
２２４  検出部
【図１】
2010054402.tif 000003
【図２−１】
2010054402.tif 000004
【図２−２】
2010054402.tif 000005
【図３】
2010054402.tif 000006
【図４−１】
2010054402.tif 000007
【図４−２】
2010054402.tif 000008
【図４−３】
2010054402.tif 000009
【図５】
2010054402.tif 000010
【図６】
2010054402.tif 000011
【図７】
2010054402.tif 000012
【図８】
2010054402.tif 000013