(57)【要約】【課題】シグネチャに基づいて、半導体集積回路の故障解析を容易に行うことができるテストシステム、半導体集積回路及びテスト方法を提供すること【解決手段】本発明の第１の態様にかかるテストシステムは、入力された入力信号に基づいて、出力信号を出力するテスト対象回路と、テスト対象回路から出力された出力信号の値を圧縮したシグネチャを記憶するシグネチャ演算回路１１０、１１１、１１２と、シグネチャ演算回路より出力されたシグネチャを外部からの入力に応じて処理する内蔵ＣＰＵ１２０を備えるものである。【選択図】図１
2010271278.tif 000002
【特許請求の範囲】
【請求項１】
入力された入力信号に基づいて、出力信号を出力するテスト対象回路と、
前記テスト対象回路から出力された出力信号の値を圧縮したシグネチャを記憶するシグネチャ演算回路と、
前記シグネチャ演算回路より出力されたシグネチャを外部からの入力に応じて処理する内蔵ＣＰＵを備えたテストシステム。
【請求項２】
前記内蔵ＣＰＵは、前記外部からの入力に応じた処理として、シグネチャ演算回路より出力されたシグネチャを前記外部に出力する請求項１に記載のテストシステム。
【請求項３】
前記テストシステムは、前記テスト対象回路が正常に動作した場合におけるシグネチャの期待値を格納する記憶部をさらに備え、
前記内蔵ＣＰＵは、前記外部からの入力に応じた処理として、前記シグネチャ演算回路から出力されたシグネチャと、前記記憶部に格納された期待値とを比較することにより、前記テスト対象回路が正常に動作したか否かを判定する請求項１に記載のテストシステム。
【請求項４】
前記内蔵ＣＰＵは、前記外部からの入力に応じた処理として、さらに前記テスト対象回路が正常に動作したか否かを示す情報を前記外部に出力する請求項３に記載のテストシステム。
【請求項５】
前記内蔵ＣＰＵは、ＩＣＥ機能を有し、前記外部からの入力として、情報処理装置からのＩＣＥ機能による入力が行われる請求項１乃至４のいずれかに記載のテストシステム。
【請求項６】
前記情報処理装置は、前記テスト対象回路が正常に動作したか否かを判定する処理を実行させるテストプログラムを前記内蔵ＣＰＵに入力し、
前記内蔵ＣＰＵは、前記情報処理装置から入力されたテストプログラムに従って、前記テスト対象回路が正常に動作したか否かを判定する処理を実行する請求項５に記載のテストシステム。
【請求項７】
前記記憶部は、前記内蔵ＣＰＵに対して前記外部からの入力に応じた処理を実行させるテストプログラムを格納し、
前記内蔵ＣＰＵは、前記記憶部に格納されたテストプログラムに従って、前記外部からの入力に応じた処理を実行する請求項３に記載のテストシステム。
【請求項８】
前記テストシステムは、前記外部からの入力を行うスイッチをさらに備え、
前記内蔵ＣＰＵは、前記外部からの入力として、前記スイッチからの入力が行われる請求項３又は７に記載のテストシステム。
【請求項９】
前記テストシステムは、前記テスト対象回路が正常に動作したか否かを示す情報を出力する外部端子をさらに備え、
前記内蔵ＣＰＵは、前記外部からの入力に応じた処理として、さらに前記テスト対象回路が正常に動作したか否かを示す情報を前記外部端子に対して出力する請求項３乃至８のいずれかに記載のテストシステム。
【請求項１０】
前記シグネチャ演算回路は、前記テスト対象回路から出力される出力信号と同期して動作する回路である請求項１乃至９のいずれかに記載のテストシステム。
【請求項１１】
前記テスト対象回路は、複数備えられ、
前記シグネチャ演算回路は、前記テスト対象回路のそれぞれに対応するように複数備えられ、
前記複数のテスト対象回路は、前段のテスト対象回路からの出力信号が次段のテスト対象回路に入力されるように構成され、最前段のテスト対象回路に前記入力信号が入力されるように構成される請求項１乃至１０のいずれかに記載のテストシステム。
【請求項１２】
入力された入力信号に基づいて、出力信号を出力するテスト対象回路と、
前記テスト対象回路から出力された出力信号の値を圧縮したシグネチャを記憶するシグネチャ演算回路と、
前記シグネチャ演算回路より出力されたシグネチャを外部からの入力に応じて処理する内蔵ＣＰＵを備えた半導体集積回路。
【請求項１３】
テスト対象回路から出力される出力信号の値を圧縮してシグネチャを生成し、生成されたシグネチャに基づいて当該テスト対象回路のテストを実行するテスト方法であって、
外部からの要求を内蔵ＣＰＵに入力し、
入力された要求に応じて、内蔵ＣＰＵが前記シグネチャに基づくテストの一部又は全部の処理を実行するテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テストシステム、半導体集積回路及びテスト方法に関し、特に半導体集積回路の故障を解析する技術に関する。
【背景技術】
【０００２】
特許文献１には、半導体集積回路の故障を検出する技術として、故障シミュレーションの結果得られた未検出故障に基づいて観測ポイントを設定することにより、テスト回路の付加を最小限に抑えつつ、故障検出率の向上を図ることができる技術が開示されている。
また、特許文献１では、各観測ポイントの値をキャプチャする観測用回路を備えており、実施の形態１における変形例として、観測ポイントが異なるクロックに同期して変化する複数のグループに分かれる場合、これらのグループ毎に観測用回路を設けるようにする技術も開示されている。
【０００３】
観測用回路は、その中心的な機能をシグネチャ圧縮レジスタとしての動作によって実現しており、各観測ポイントからキャプチャした値を圧縮したテスト結果であるシグネチャを格納する。そして、テスト終了後に、観測用回路をシリアル動作させて、シグネチャを外部に出力し、正常回路での期待値と比較して故障の有無を判定することができる。
このように、テスト対象となる回路からの出力値を圧縮する回路によってシグネチャを生成し、生成したシグネチャを期待値と比較することにより、故障を検出する技術がＬｏｇｉｃＢＩＳＴ(Built-In Self Test)等のテスト容易化設計(ＤＦＴ: Design For Test)において知られている。
【０００４】
しかし、特許文献１に開示の技術では、シグネチャに基づいて、故障の有無を解析する場合、半導体テスタによってシグネチャと期待値とを比較することが考えられるが、期待値を信号レベル(期待値を２進数で表現するための信号線のそれぞれの電位がハイレベルなのかローレベルなのかといったレベル)で作成して半導体テスタに供給する必要があり、非常に手間がかかってしまうという問題がある。また、この場合、半導体テスタという大がかりな装置が必要となってしまうため、故障解析を容易に行うことができないという問題がある。
【０００５】
また、半導体テスタによらずに、シグネチャに基づいて、故障の有無を解析する場合、作業者が観測用回路をシリアル動作させて、観測用回路に格納されるシグネチャをオシロスコープやロジックアナライザ等の波形観測装置やマルチメータに外部端子を介して出力し、出力されたシグネチャを作業者が期待値と比較する必要があり、故障解析を容易に行うことができないという問題がある。これは、具体的には、オシロスコープ等を用いる場合には、解析を行う作業者が波形として出力されるシグネチャから、比較すべき具体的な数値を抽出する必要があるため、解析作業の円滑な進行を妨げるということである。
【０００６】
なお、特許文献２には、観測レジスタ回路にマスク情報を入力することにより、使用していない機能ブロックからの不定値出力を阻止して、使用している機能ブロックからの観測データのみを正常にシグネチャ圧縮することができ、高い信頼性を確保しつつ容易かつ短時間で集積回路などの故障解析を行うことができる技術が開示されている。
【０００７】
さらに、特許文献３には、故障がない場合に被テスト回路から出力されるテスト応答ビットパターンに基づいて、テスト応答ビットパターンのビット位置を要素とする集合を定義し、定義した集合に基づいてビット故障候補を算出する技術が開示されている。これにより、特別な追加回路を必要とせず、ルックアップテーブルなしに直接的に演算処理により、ビット故障候補を探索することができる。
しかし、特許文献２及び３は、いずれも上述のような問題を解決する技術を具体的に開示したものではない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００２−２６７７１９号公報
【特許文献２】特開２００１−２７３１５９号公報
【特許文献３】特開２００５−２２１４５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
背景技術として説明して説明したように、シグネチャに基づいて、テスト対象回路の故障解析を容易に行うことができないという問題がある。
【課題を解決するための手段】
【００１０】
本発明の第１の態様にかかるテストシステムは、入力された入力信号に基づいて、出力信号を出力するテスト対象回路と、前記テスト対象回路から出力された出力信号の値を圧縮したシグネチャを記憶するシグネチャ演算回路と、前記シグネチャ演算回路より出力されたシグネチャを外部からの入力に応じて処理する内蔵ＣＰＵを備えるものである。
【００１１】
これにより、作業者が外部からＩＣＥ機能によって、内蔵ＣＰＵにシグネチャを外部に出力する処理を実行させることができ、容易にシグネチャを取得して、取得したシグネチャと期待値と比較することができるため、シグネチャに基づいて、テスト対象回路の故障解析を容易に行うことができる。
【００１２】
本発明の第２の態様にかかる半導体集積回路は、入力された入力信号に基づいて、出力信号を出力するテスト対象回路と、前記テスト対象回路から出力された出力信号の値を圧縮したシグネチャを記憶するシグネチャ演算回路と、前記シグネチャ演算回路より出力されたシグネチャを外部からの入力に応じて処理する内蔵ＣＰＵを備えたものである。
【００１３】
これにより、作業者が外部からＩＣＥ機能によって、内蔵ＣＰＵにシグネチャを外部に出力する処理を実行させることができ、容易にシグネチャを取得して、取得したシグネチャと期待値と比較することができるため、シグネチャに基づいて、テスト対象回路の故障解析を容易に行うことができる。
【００１４】
本発明の第３の態様にかかるテスト方法は、テスト対象回路から出力される出力信号の値を圧縮してシグネチャを生成し、生成されたシグネチャに基づいて当該テスト対象回路のテストを実行するテスト方法であって、外部からの要求を内蔵ＣＰＵに入力し、入力された要求に応じて、内蔵ＣＰＵが前記シグネチャに基づくテストの一部又は全部の処理を実行するものである。
【００１５】
これにより、作業者が外部からＩＣＥ機能によって、内蔵ＣＰＵにシグネチャを外部に出力する処理を実行させることができ、容易にシグネチャを取得して、取得したシグネチャと期待値と比較することができるため、シグネチャに基づいて、テスト対象回路の故障解析を容易に行うことができる。
【発明の効果】
【００１６】
上述した各態様により、シグネチャに基づいて、テスト対象回路の故障解析を容易に行うことができるテストシステム、半導体集積回路及びテスト方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態１にかかるテストシステムの構成図である。
【図２】本発明の実施の形態１にかかるシグネチャ演算テスト単位を示す図である。
【図３】本発明の実施の形態１にかかるシグネチャ演算回路の動作を示す図である。
【図４】本発明の実施の形態１にかかるシグネチャ演算回路の構成例を示す図である。
【図５】本発明の実施の形態２にかかるテストシステムの構成図である。
【図６】本発明の実施の形態３にかかるテストシステムの構成図である。
【発明を実施するための形態】
【００１８】
本発明の実施の形態１．
まず、図１を参照して、本発明の実施の形態１にかかるテストシステムについて説明する。図１は、本発明の実施の形態１にかかるテストシステムの構成図である。
【００１９】
テストシステムは、評価ボード１とＰＣ(Personal Computer)２を有する。
評価ボード１は、半導体集積回路１０、データ入力用ＬＳＩ(Large Scale Integration)１１、ＬＣＤ(Liquid Crystal Display)パネル１２及びＩＣＥ(In-Circuit Emulator(登録商標))コネクタ１３を含む。
ＰＣ２は、ＣＰＵ２０、メモリ２１及び記憶装置２２を含む情報処理装置である。
半導体集積回路１０は、フィルタ処理回路１００、回転処理回路１０１、拡大・縮小処理回路１０２、シグネチャ演算回路１１０、１１１、１１２、内蔵ＣＰＵ(Central Processing Unit)１２０及びメモリ１２１を含む。
【００２０】
評価ボード１は、半導体集積回路１０を着脱可能なボードである。評価ボード１に半導体集積回路１０を装着してテストを実行することにより、半導体集積回路１０内の故障を検出することができる。
半導体集積回路１０は、テスト対象となるテスト対象回路を含んだ回路である。なお、本実施の形態１では、画像処理を行う回路をテスト対象となる半導体集積回路１０として適用した場合について例示する。
【００２１】
データ入力用ＬＳＩ１１は、半導体集積回路１０に対して入力するテストパターン信号を発生させるＬＳＩである。なお、本実施の形態１では、半導体集積回路１０が画像処理を行う回路である場合について例示しているため、テストパターン信号として、任意の画像データが入力されることになる。
ＬＣＤパネル１２は、半導体集積回路１０によって処理が行われた出力信号に基づいた画像を表示する。ＬＣＤパネル１２は、ＬＣＤ、有機ＥＬ(Electro Luminescence)やＰＤＰ(Plasma Display Panel)等の表示装置であればどのようなものであってもよい。
ＩＣＥコネクタ１３は、内蔵ＣＰＵ１２０とＰＣ２とを接続するコネクタである。
【００２２】
フィルタ処理回路１００は、データ入力用ＬＳＩ１１から入力された画像データに対して、フィルタリングする画像処理を実行する回路である。
回転処理回路１０１は、フィルタ処理回路１００から入力された画像データに対して、任意の角度、画像を回転させる画像処理を実行する回路である。
拡大・縮小処理回路１０２は、回転処理回路１０１から入力された画像データに対して、任意の倍率で画像を拡大もしくは縮小する画像処理を実行する回路である。
シグネチャ演算回路１１０、１１１、１１２は、各処理回路１００、１０１、１０２からの出力信号値をシグネチャ演算し、疑似乱数化する。これにより、シグネチャ演算回路１１０、１１１、１１２に、乱数演算結果として、各処理回路１００、１０１、１０２からの出力信号値を圧縮したシグネチャが格納される。
【００２３】
内蔵ＣＰＵ１２０は、ＩＣＥ機能を含んだＣＰＵである。ここで、ＩＣＥ機能とは、ＣＰＵを外部の情報処理装置からＣＰＵをデバッグ制御する等の任意の機械語命令を実行させることができる機能である。内蔵ＣＰＵ１２０は、ＰＣ２から出力されるテストプログラム２２１に従って、特定のテストパターン信号を出力させる信号をデータ入力用ＬＳＩ１１に出力する処理や、各処理回路１００、１０１、１０２を制御する処理を実行する。また、内蔵ＣＰＵ１２０は、シグネチャ演算回路１１０、１１１、１１２を制御することができ、シグネチャ演算回路１１０、１１１、１１２に格納されるシグネチャを取得することができる。
メモリ１２１は、内蔵ＣＰＵ１２０が各処理回路１００、１０１、１０２の制御に必要な任意のデータが格納される。メモリ１２１は、例えば、ＲＡＭ(Random Access Memory)である。
【００２４】
ＰＣ２は、ＩＣＥ１３を介して、内蔵ＣＰＵ１２０にテストプログラム２２１を出力し、内蔵ＣＰＵ１２０を動作させるとともに、内蔵ＣＰＵ１２０に対してデバッグ制御を行う。ＰＣ２は、ＣＰＵやメモリ等を含み、デバッガプログラム２２２を実行可能な情報処理装置であれば、ＰＣに限られない。
【００２５】
ＣＰＵ２０は、メモリ２１にロードしたデバッガプログラム２２２に基づいて、内蔵ＣＰＵ１２０のデバッグ制御を行う。
メモリ２１は、ＣＰＵ２０によって記憶装置２２からデバッガプログラム２２２がロードされる。メモリ２１は、例えば、ＲＡＭ(Random Access Memory)である。メモリ２１は、記憶部に相当する。
記憶装置２２は、テストプログラム２２１及びデバッガプログラム２２２を格納する。記憶装置２２は、例えば、不揮発性メモリやＨＤＤ(Hard Disk Drive)等である。
【００２６】
テストプログラム２２１は、内蔵ＣＰＵ１２０に対して、データ入力用ＬＳＩ１１、フィルタ処理回路１００、回転処理回路１０１及び拡大・縮小処理回路１０２を制御する処理を実行させるプログラムである。
デバッガプログラム２２２は、ＣＰＵ２１に対して、内蔵ＣＰＵ１２０のＩＣＥ機能を利用して、内蔵ＣＰＵ１２０をデバッグ制御する処理を実行させるプログラムである。
【００２７】
続いて、図２及び図３を参照して、具体的な例を用いてシグネチャ演算回路１１０について説明する。図２は、フィルタ処理回路１００及びシグネチャ演算回路１１０を含んだシグネチャ演算テスト単位３０を示す図である。
【００２８】
シグネチャ演算回路１１０は、具体的にはクロック信号３２０に応答して擬似乱数値を出力するカウンタである。例えば図２にあるフィルタ処理回路１００の故障の有無を検出するためには、フィルタ処理回路１００が出力する信号３００の遷移を全て観測しておけばいいように思われるが、ある時点における一の信号がハイレベルなのかローレベルなのかをといった特定を行う作業を観測すべきすべての時点に対して行うことは現実的ではない。そこで、シグネチャ演算という技術が用いられる。図２を用いて具体的に説明する。
【００２９】
シグネチャ演算回路１１０は、テストすべき回路であるフィルタ処理回路１００が出力する複数ビットの信号３００を入力する。そして係る信号３００が示す値の遷移と同期したクロック信号３２０に応答して、入力された信号３００の値に対応した擬似乱数値を出力する。なお、図２における信号３１０は信号３００に含まれるイネーブル信号であり、フィルタ処理回路１００が信号３００として値を出力しているときはアクティブの論理となり、フィルタ処理回路１００が値を信号３００として出力しない場合には非アクティブの論理となる。
【００３０】
シグネチャ演算回路１１０は、係るイネーブル信号がアクティブの論理の場合に、クロック信号３２０に応答して信号３００に対応した擬似乱数値を出力する。信号３００の値は、フィルタ処理回路１００のテストすべき一連の動作が終了するまで様々な値に遷移するため、シグネチャ演算回路１１０の出力する擬似乱数値も係る信号３００の遷移に対応して変化していく。そして、テストすべき一連の動作においてフィルタ処理回路１００が出力する最後の信号値が信号３００としてシグネチャ演算回路１１０に入力されると、シグネチャ演算回路１１０は、対応する最後の擬似乱数値（シグネチャ）を出力する。
【００３１】
そして、フィルタ処理回路１００の故障の有無を検出する場合、シグネチャ演算回路１１０が最後に出力した当該擬似乱数値（シグネチャ）と、係る擬似乱数値についての期待値とを比較する。
比較の結果、シグネチャ演算回路１１０が出力した当該擬似乱数値と期待値が一致すれば、フィルタ処理回路１００には故障がないと判断することができる。
しかし、当該擬似乱数値と期待値が不一致だった場合、フィルタ処理回路１００には故障が存在することになる。このように、シグネチャ演算回路１１０は、テストすべき回路の一例であるフィルタ処理回路１００の出力する信号３００の遷移が正しいか否かを、テストすべき一連の動作の最後に出力される信号３００に対応した擬似乱数値で表現している。
【００３２】
つまり、一般的に言えば、シグネチャ演算回路１１０は、テストの対象の一例であるフィルタ処理回路１００が出力する信号３００の値の遷移の結果を圧縮し、シグネチャとして出力していると言える。なお、明らかなように、この手法では、テスト対象となっているフィルタ処理回路１００の動作に故障があるかどうかは判定できるものの、具体的などのタイミングで故障が発生しているかといった詳細な判定はできない。しかし、故障の解析において、どの回路に少なくとも故障が発生しているか否かを特定するかは非常に重要であるため、このシグネチャ演算回路は解析に用いられるようになってきている。なお、本実施の形態では、シグネチャ演算回路１１０は、上記した最後の擬似乱数値を内部の記憶手段に保持しておく。なお、各処理回路１００、１０１、１０２のいずれもがテスト対象回路となる。なお、回転処理回路１０１及びシグネチャ演算回路１１１、拡大・縮小処理回路１０２及びシグネチャ演算回路１１２についても同様であるため、説明を省略する。
【００３３】
本実施の形態１では、図２に示すように、フィルタ処理回路１００の出力段にシグネチャ演算回路１１０が実装される。つまり、シグネチャ演算回路１１０は、クロック信号線３２０によって、フィルタ処理回路１００からの出力信号３００と同期したクロック信号が供給されて動作する。シグネチャ演算回路１１０は、出力信号線３００を介してフィルタ処理回路１００から出力信号に含まれるイネーブル信号がイネーブル信号線３１０を介して供給され、この信号を自身のイネーブル信号として使用する。これにより、図３に示すように、フィルタ処理回路１００の動作中のみシグネチャ演算が行われる。
【００３４】
ここで図３において、Ｅｎａｂｌｅ信号と記載された波形が図２における信号３１０である。また、テスト対象回路出力信号と記載されている波形は、信号３００であり、イネーブル信号がアクティブ論理、具体的にはハイレベルの期間において、信号３００が示す値が時々刻々と変化している様子が描かれている。
【００３５】
また、シグネチャ演算結果と記載されている波形はシグネチャ演算回路１１０が出力する擬似乱数の値である。イネーブル信号３１０がアクティブ論理の期間中に、擬似乱数値が時々刻々と変化していく様子が描かれている。例えば、図３において、最初のイネーブル信号の立ち上がりエッジにおいて擬似乱数値がＸＸＸとなっているが、その後、イネーブル信号が立ち下がる時点においては、シグネチャ演算回路１１０が出力する擬似乱数値はＹＹＹとなっている。
【００３６】
なお、この時点のイネーブル信号の立下りは、フィルタ処理回路１００のテストすべき一連の動作が終了したことを示すものではなく、一時的にフィルタ処理回路１００が信号を出力しなくなっている場合である。これは、例えばフィルタ処理回路１００が出力する信号３００が画像の場合であって、テストすべき一連の動作がフィルタをかけた２枚の画像を順に出力する場合において、１枚目の画像に対応する出力が完了した場合にイネーブル信号がたち下がる。
【００３７】
図３において、再びイネーブル信号がアクティブになってから、再び立ち下がった時点で、擬似乱数値はＺＺＺとなっている。この時点では、フィルタ処理回路１００は信号３００の出力が完了している。したがって、擬似乱数値ＺＺＺは、テストすべき一連の動作においてシグネチャ演算回路１１０が出力する最後の擬似乱数値、すなわちシグネチャであり、このシグネチャＺＺＺと期待値とが比較されることになる。なお、本願では、後述するようにこのＺＺＺはシグネチャ演算回路１１０に保持されており、その後、必要に応じてＣＰＵによって読み出される。
【００３８】
テストによる動作の終了後に、内蔵ＣＰＵ１２０は、バス３３０を介して、シグネチャ演算回路１１０に格納されるシグネチャをリードし、リードしたシグネチャと予めシミュレーションもしくは良品サンプルを動作させて得た期待値とを比較して、シグネチャが期待値と異なっていれば、フィルタ処理回路１００が意図しない動作をしたことによるため、フィルタ処理回路１００が故障していると判定することができる。
【００３９】
続いて、図４を参照して、シグネチャ演算回路１１０、１１１、１１２の構成例について説明する。図４は、シグネチャ演算回路１１０、１１１、１１２の構成例を示す図である。  
【００４０】
シグネチャ演算回路１１０、１１１、１１２は、図４に示すように、イネーブル信号が有効となるイネーブル期間中に疑似乱数演算を行うＬＦＳＲ(Linear Feedback Shift Register)等により構成される。このＬＦＳＲに対して、各処理回路１００、１０１、１０２からの出力信号値を混ぜることにより、疑似乱数値が変化する。テストによる動作の終了後に、イネーブル期間が終了して、確定したシグネチャを内蔵ＣＰＵ１２０から、各フリップフロップの値をパラレルにリードすることができる。
【００４１】
具体的には、「シグネチャ出力」と記載されている信号線は、各フリップフロップの信号をパラレルに伝送する信号であり、２進数で擬似乱数値を表現している。「テスト対象回路出力信号」と記載されている信号線は、図２の例ではフィルタ処理回路１００、回転処理回路１０１、拡大・縮小処理回路１０２が出力する信号である。Ｅｎａｂｌｅ信号は、上述したとおり、対応するテスト対象回路が信号を出力しているときにアクティブとなる信号である。クロック信号も上述したとおりであり、このクロックは対応するテスト対象回路が出力する信号の遷移に同期している。
【００４２】
なお、シグネチャ演算回路１１０、１１１、１１２は、図４に示すように、数十個程度の論理ブロックで構成される非常に小規模な回路である。よって、ＳＣＡＮテストやＬｏｇｉｃＢＩＳＴと並行して回路実装したとしても、回路オーバーヘッドはほとんど無視できる程度の増加で実装することが可能である。
【００４３】
続いて、本実施の形態１にかかるテストシステムの動作について説明する。
まず、半導体集積回路１０のテストを開始する場合、作業者は、マウスやキーボード等の入力装置(図示せず)を介して、ＰＣ２のデバッガプログラム２２２を実行する。
ＣＰＵ２０は、実行されたデバッガプログラム２２２に従って、テストプログラム２２１を内蔵ＣＰＵ１２０に出力する。
内蔵ＣＰＵ１２０は、ＰＣ２から出力されるテストプログラム２２１に従って、特定のテストパターン信号を出力させる信号をデータ入力用ＬＳＩ１１に出力する。
データ入力用ＬＳＩ１１は、内蔵ＣＰＵ１２０から出力された信号に応じたテストパターン信号をフィルタ処理回路１００に出力する。
【００４４】
フィルタ処理回路１００は、データ入力用ＬＳＩ１１から出力されたテストパターン信号に対して、フィルタリングする画像処理を実行する。そして、フィルタ処理回路１００は、画像処理によって生成した信号を回転処理回路１０１及びシグネチャ演算回路１１０に出力する。
回転処理回路１０１は、フィルタ処理回路１００から出力された信号に対して、任意の角度、画像を回転させる画像処理を行う。そして、回転処理回路１０１は、画像処理によって生成した信号を拡大・縮小処理回路１０２及びシグネチャ演算回路１１１に出力する。
拡大・縮小処理回路１０２は、回転処理回路１０１から出力された信号に対して、任意の倍率で画像を拡大もしくは縮小する画像処理を実行する。そして、拡大・縮小処理回路０２は、画像処理によって生成した信号をシグネチャ演算回路１１２及びＬＣＤパネル１２に出力する。
【００４５】
ＬＣＤパネル１２では、拡大・縮小処理回路１０２から出力された信号に基づいた画像を表示する。
また、シグネチャ演算回路１１０、１１１、１１２は、各処理回路１００、１０１、１０２から出力された信号の値を随時取得してシグネチャ演算する。
【００４６】
そして、テストプログラム２２１の実行が完了し、データ入力用ＬＳＩ１１からのテストパターン信号の出力および各処理回路１１０、１１１、１１２における動作が終了した場合、シグネチャ演算回路１１０、１１１、１１２には、無効なイネーブル信号が入力されており、確定したシグネチャが格納された状態となる。
作業者は、入力装置を介して、デバッガプログラム２２２に対して、シグネチャ演算回路１１０、１１１、１１２に格納されたシグネチャをリードする指示を入力する。
【００４７】
ＣＰＵ２０は、作業者からの指示に応じて実行されるデバッガプログラム２２２に従って、内蔵ＣＰＵ１２０にシグネチャリード要求を出力する。
内蔵ＣＰＵ１２０は、ＰＣ２から出力されたシグネチャリード要求に応じて、確定したシグネチャをシグネチャ演算回路１１０、１１１、１１２からリードする。そして、内蔵ＣＰＵ１２０は、リードしたシグネチャをＰＣ２に出力する。
ＣＰＵ２０は、デバッガプログラム２２２に従って、内蔵ＣＰＵ１２０から出力されたシグネチャをＰＣ２の画面に表示する。
【００４８】
これにより、作業者は、表示されたシグネチャと期待値とを比較することができる。ここで、シグネチャと期待値との比較は、予めシミュレーションもしくは良品サンプルを動作させて得た期待値をＰＣ２のメモリ２１や記憶装置２２に格納しておくことによって、これを作業者がＰＣ２の画面に表示して比較できるようにしておく。
比較した値が一致した場合は、このシグネチャが格納されていたシグネチャ演算回路１１０、１１１、１１２の前段の処理回路１００、１０１、１０２が正常に動作できており、故障していないと判定することができる。
【００４９】
なお、ここでメモリ２１や記憶装置２２に期待値を格納するにあたっては、作業者は１０進数の形で、あくまで数値としてＰＣ２に期待値を入力すればよい。そうすれば、ＰＣ２のＣＰＵ２０がメモリ２１に２進数に変換する等を行って、期待値を格納する。したがって、背景技術のように、作業者が２進数で期待値を表現すべく、期待値を伝送する信号線のそれぞれの電位がハイレベルなのかローレベルなのかまでを考慮する必要がなくなる。この点で、故障の解析の容易性が改善される。
【００５０】
また、本実施の形態では、ＰＣ２の画面上で、シグネチャの値と期待値の比較を、数値同士の比較で簡単に行える。したがって、背景技術のように、オシロスコープ等に表示された波形の遷移やタイミングといった情報を追う必要がなくなり（この部分は内蔵ＣＰＵなど、作業者以外が行っていることになる）、作業者は簡単にシグネチャの値と期待値とを比較できる。この点でも解析の容易性が改善される。
【００５１】
比較した値が一致しない場合は、このシグネチャが格納されていたシグネチャ演算回路１１０、１１１、１１２の前段の処理回路１００、１０１、１０２が正常に動作できておらず、故障していると判定することができる。
【００５２】
なお、シグネチャと期待値との比較は、メモリ１２１に期待値を格納しておくようにして、テストプログラム２２１によって、内蔵ＣＰＵ１２０が行うようにしてもよい。この場合は、判定結果を任意のレジスタやメモリ１２１に格納するようにすることで、作業者がデバッガプログラム２２２によって、内蔵ＣＰＵ１２０を介して、判定結果を取得することが可能である。
【００５３】
また、本実施の形態１では、内蔵ＣＰＵ１２０が各処理回路１００、１０１、１０２を制御可能であるため、テストプログラム２２１によって、内蔵ＣＰＵ１２０から各処理回路１００、１０１、１０２のうちの任意の処理回路を動作させないように制御してテストを行うこともできる。例えば、フィルタ処理回路１００を動作させないように制御して、データ入力用ＬＳＩ１１からのテストパターン信号をそのまま回転処理回路１０１に出力するようにして、回転処理回路１０１での動作をより確認しやすくすることができる。
【００５４】
また、デバッガプログラム２２２によって、ＰＣ２から内蔵ＣＰＵ１２０を介して、メモリ１２１にテスト用の画像データを出力して格納し、テストプログラム２２１によって、内蔵ＣＰＵ１２０から各処理回路１００、１０１、１０２のうちの任意の処理回路にメモリ１２１からバス３３０を介して画像データをテストパターン信号としてリードして動作するように制御し、任意の処理回路のみをテストするようにすることもできる。
【００５５】
以上に説明したように、本実施の形態１によれば、内蔵ＣＰＵ１２０が外部のＰＣ２からの入力に応じて、シグネチャ演算回路１１０、１１１、１１２より出力されたシグネチャを処理することができるため、作業者がＰＣ２からＩＣＥ機能によって、内蔵ＣＰＵ１２０にシグネチャをＰＣ２に出力する処理を実行させることができ、容易にシグネチャを取得して、取得したシグネチャと期待値と比較することができる。そのため、大がかりな装置となる半導体テスタを用意して信号レベルで期待値を作成する必要や、作業者がシグネチャ演算回路１１０、１１１、１１２をシリアル動作させてシグネチャをマルチメータや波形観測装置に出力して観測する必要がなくなり、テスト対象回路の故障解析を容易に行うことができる。
【００５６】
また、上述したように、ＰＣ２からのテストプログラム２２１の入力に応じて、内蔵ＣＰＵ１２０に正常に動作したか否かを判定する処理も行わせることによって、作業者がＰＣ２からＩＣＥ機能によって、内蔵ＣＰＵ１２０に判定結果をＰＣ２に出力する処理を実行させることができ、容易に判定結果を取得することができる。そのため、作業者が故障判定を行う必要もなくなり、さらに容易にテスト対象回路の故障解析を行うことができるようになる。
【００５７】
また、本実施の形態１によれば、シグネチャ演算回路１１０、１１１、１１２をテスト対象となる各処理回路１００、１０１、１０２からの出力信号と同期したクロック信号によって動作するようにしているため、各処理回路１００、１０１、１０２内部が複数のクロック信号によって非同期に動作するような非同期回路であっても、容易にテストを行うことができる。
【００５８】
また、本実施の形態１によれば、シグネチャ演算回路１１０、１１１、１１２をテスト対象となる各処理回路１００、１０１、１０２からの出力信号と同期したクロック信号によって動作するようにしているため、実動作と同様の周波数で動作させてテストを実行することができ、実動作に近いテストを行うことができる。
【００５９】
また、本実施の形態１によれば、図４において説明したように、シグネチャ演算回路１１０、１１１、１１２が数十個程度の論理ブロックで構成される非常に小規模な回路であり、回路オーバーヘッドを非常に小さくすることができる。
【００６０】
また、本実施の形態１によれば、各処理回路１００、１０１、１０２を内蔵ＣＰＵ１２０によって制御することができるように構成されているため、故障解析によって故障を検出した場合に、ＩＣＥ機能によってテスト対象となる各処理回路１００、１０１、１０２を個別にテストすることが可能であり、故障箇所の特定を容易に行うことができる。
【００６１】
また、本実施の形態１によれば、大がかりな装置となる半導体テスタが不要となるため、信号レベルで期待値を作成する必要がなくなる他に、信号レベルでのテストパターン信号の作成を行う必要もなくなる。
【００６２】
また、本実施の形態１によれば、図４に示すように、内蔵ＣＰＵ１２０は、シグネチャが格納されているシグネチャ演算回路１１０、１１１、１１２の各フリップフロップの値をパラレルにリードすることができるため、シリアル動作させてシグネチャを取得する場合に比べて、より早く故障判定を行うことができる。
【００６３】
本発明の実施の形態２．
次に、図５を参照して、本発明の実施の形態２にかかるテストシステムについて説明する。図５は、本発明の実施の形態２にかかるテストシステムの構成図である。なお、実施の形態１と同様の構成要素については説明を省略する。
【００６４】
スイッチ１４は、作業者がテストを開始するときに操作する。作業者がスイッチ１４を操作すると、操作に応じた信号が内蔵ＣＰＵ１２２に入力される。内蔵ＣＰＵ１２２は、その信号の入力をトリガとして、テストプログラム１２４の実行を開始する。
内蔵ＣＰＵ１２２は、テストプログラム１２４に従って、実施の形態１と同様の処理を実行する。なお、本実施の形態２における内蔵ＣＰＵ１２２は、ＩＣＥ機能を含んでいなくてもよい。
【００６５】
不揮発性メモリ１２３は、テストプログラム１２４を格納する。不揮発性メモリ１２３は、例えば、作業者が実施したいテストパターンを実行するテストプログラム１２４を格納したフラッシュメモリである。メモリ１２１及び不揮発性メモリ１２３は、記憶部に相当する。
テストプログラム１２４は、実施の形態１におけるテストプログラム２２１と同様であるが、本実施の形態２では、シグネチャ演算回路１１０、１１１、１１２に格納されるシグネチャを取得して、取得したシグネチャと期待値とを比較する処理も行う。
【００６６】
外部端子１２５は、内蔵ＣＰＵ１２２からの故障判定の結果が出力される端子である。内蔵ＣＰＵ１２２は、外部端子１２５に対して、故障を検出しなかった場合はＰａｓｓを示す値を、故障を検出した場合はＦａｉｌを示す値を出力する。なお、Ｐａｓｓ又はＦａｉｌを示す値は、どのような値であってもよく任意の値を設定してよい。
【００６７】
続いて、本実施の形態２にかかるテストシステムの動作について説明する。
まず、半導体集積回路１０のテストを開始する場合、作業者は、スイッチ１４を操作する。
スイッチ１４の操作に応じた信号が内蔵ＣＰＵ１２２に入力されると、内蔵ＣＰＵ１２２は、テストプログラム１２４を実行する。内蔵ＣＰＵ１２２は、必要に応じてテストプログラム１２４にメモリ１２１にロードして実行する。
以降、内蔵ＣＰＵ１２２は、実施の形態１と同様に、データ入力用ＬＳＩ１１からのテストパターン信号の出力および各処理回路１１０、１１１、１１２における動作が終了するまで、テストプログラム１２４を実行する。
【００６８】
そして、シグネチャ演算回路１１０、１１１、１１２に無効なイネーブル信号が入力され、確定したシグネチャが格納された状態となるため、内蔵ＣＰＵ１２２は、確定したシグネチャをシグネチャ演算回路１１０、１１１、１１２からリードする。
内蔵ＣＰＵ１２２は、リードしたシグネチャと期待値とを比較する。ここで、シグネチャと期待値との比較は、予めシミュレーションもしくは良品サンプルを動作させて得た期待値をメモリ１２１や不揮発性メモリ１２３に格納しておくことによって比較できるようにしておく。
【００６９】
比較した値が一致した場合は、このシグネチャが格納されていたシグネチャ演算回路１１０、１１１、１１２の前段の処理回路１００、１０１、１０２が正常に動作できており、故障していないと判定することができる。そのため、内蔵ＣＰＵ１２２は、Ｐａｓｓを示す値を外部端子１２５に対して出力する。
比較した値が一致しない場合は、このシグネチャが格納されていたシグネチャ演算回路１１０、１１１、１１２の前段の処理回路１００、１０１、１０２が正常に動作できておらず、故障していると判定することができる。そのため、内蔵ＣＰＵ１２２は、Ｆａｉｌを示す値を外部端子１２５に対して出力する。
【００７０】
そして、作業者は、波形観測装置やマルチメータによって、外部端子１２５に出力された値を観測することにより、故障判定の結果を知ることができる。
【００７１】
以上に説明したように、本実施の形態２によれば、内蔵ＣＰＵ１２２が外部のスイッチ１４からの入力に応じて、テストを実行し、シグネチャ演算回路１１０、１１１、１１２より出力されたシグネチャに基づいた判定結果を外部端子１２５により外部に出力する処理を行うことができるため、作業者が外部端子１２５から出力される値を参照するだけで、判定結果を取得することができる。そのため、大がかりな装置となる半導体テスタを用意して信号レベルで期待値を作成する必要や、作業者がシグネチャ演算回路１１０、１１１、１１２をシリアル動作させてシグネチャをマルチメータや波形観測装置に出力して観測する必要がなくなり、さらには、作業者が故障判定を行う必要もなくなり、テスト対象回路の故障解析を容易に行うことができる。
【００７２】
本発明の実施の形態３．
次に、図６を参照して、本発明の実施の形態３にかかるテストシステムについて説明する。図６は、本発明の実施の形態３にかかるテストシステムのブロック図である。なお、実施の形態１と同様の構成要素については説明を省略する。
【００７３】
本実施の形態３では、実施の形態１において半導体集積回路１０が有していた内蔵ＣＰＵ１２０及びメモリ１２１を、評価ボード１が内蔵ＣＰＵ１５及びメモリ１６として有している。
なお、本発明の実施の形態３にかかるテストシステムの動作については、内蔵ＣＰＵ１２０及びメモリ１２１における動作を内蔵ＣＰＵ１５及びメモリ１６が行う点以外は、実施の形態１と同様であるため説明を省略する。
【００７４】
以上に説明した本実施の形態３のように、内蔵ＣＰＵ及びメモリは、半導体集積回路１０のみに限られず、評価ボード１に設けるようにすることもできる。
【００７５】
なお、本発明は上述した実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、実施の形態２において、スイッチ及びテストプロプログラムを複数有するようにし、スイッチに対応したテストプログラムを実行できるようにして、複数のテストパターンを実行できるようにしてもよい。
【００７６】
また、テストパターン信号を入力する方法は、本実施の形態に例示したものに限られない。例えば、評価ボード１に、データ入力用ＬＳＩ１１に代えて、テスト用の画像データを格納したメモリを有するようにし、テストプログラム２２１によって、内蔵ＣＰＵ１２０からフィルタ処理回路１００に対して、このメモリから画像データをテストパターン信号としてリードするように制御して、テストを行うようにしてもよい。また、例えば、評価ボード１に、データ入力用ＬＳＩ１１に代えて、ボタンやスイッチ等の任意の入力装置から構成されるテストパターン信号発生装置を有するようにし、作業者からの入力に応じたテストパターン信号をフィルタ処理回路１００に対して入力するようにしてもよい。
【００７７】
また、上述した実施の形態における構成要素を組み合わせて実施してもよい。例えば、実施の形態１において、外部端子１２５を有するようにして、内蔵ＣＰＵ１２０において故障解析を行い、故障解析の結果を外部端子１２５に出力するようにしてもよい。
【００７８】
以上に説明した本発明にかかるテストプログラム及びデバッガプログラムは様々な種類の記憶媒体に格納することが可能であり、通信媒体を介して伝達されることが可能である。ここで、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)、ＤＶＤ(Digital Versatile Disc)、ＢＤ(Blu-ray(登録商標) Disc)、ＲＯＭ(Read Only Memory)カートリッジ、バッテリバックアップ付きＲＡＭ、メモリカートリッジ、フラッシュメモリカートリッジ、不揮発性ＲＡＭカートリッジを含む。また、通信媒体には、電話回線の有線通信媒体、マイクロ波回線の無線通信媒体を含み、インターネットも含まれる。
【００７９】
また、コンピュータが上述の実施の形態の機能を実現するプログラムを実行することにより、上述の実施の形態の機能が実現されるだけではなく、このプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ(Operating System)もしくはアプリケーションソフトと共同して上述の実施の形態の機能が実現される場合も、発明の実施の形態に含まれる。
さらに、このプログラムの処理の全てもしくは一部がコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットにより行われて上述の実施の形態の機能が実現される場合も、発明の実施の形態に含まれる。
【符号の説明】
【００８０】
１    評価ボード
２    ＰＣ
１０    半導体集積回路
１１    データ入力用ＬＳＩ
１２    ＬＣＤパネル
１３    ＩＣＥコネクタ
１４    スイッチ
１５、１２０、１２２    内蔵ＣＰＵ
１６、２１、１２１    メモリ
２０    ＣＰＵ
２２    記憶装置
３０    シグネチャ演算テスト単位
１００    フィルタ処理回路
１０１    回転処理回路
１０２    拡大・縮小処理回路
１１０、１１１、１１２    シグネチャ演算回路
１２３    不揮発性メモリ
１２５    外部端子
２２１    テストプログラム
２２２    デバッガプログラム
３００    出力信号線
３１０    イネーブル信号線
３２０    クロック信号線
３３０    バス
【図１】
2010271278.tif 000003
【図２】
2010271278.tif 000004
【図３】
2010271278.tif 000005
【図４】
2010271278.tif 000006
【図５】
2010271278.tif 000007
【図６】
2010271278.tif 000008