図面 (/)

技術 テストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体

出願人 株式会社東芝
発明者 野津山泰幸
出願日 2000年3月27日 (20年8ヶ月経過) 出願番号 2000-087690
公開日 2001年10月5日 (19年2ヶ月経過) 公開番号 2001-273160
状態 特許登録済
技術分野 電子回路の試験 電子回路の試験 デジタル計算機の試験診断
主要キーワード 故障検出情報 選別情報 選別ステップ CPU時間 品質テスト テストパラメータ 故障数 検出故障
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2001年10月5日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (5)

課題

故障検出率を殆ど下げることなく、テストパターンのサイズを大幅に削減する。

解決手段

予め選別と非選別に区別されたテストパターンの集合の内、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、故障検出率および検出・未検出故障リストを抽出する故障検出情報抽出部13と、未検出故障リスト内の故障の一部を無作為抽出する無作為抽出処理部14と、検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別部15,16,17とを具備する。

概要

背景

通常、製造されたLSIの各チップに対しては、開発時の機能検証に使用した複数の検証パターンを適宜流用編集したテストパターンを用いてLSIが不良品ではないことを出荷前に確認する(良品だけを選別する)出荷テスト品質テスト)が行われる。このような出荷テストにおいては、使用したテストパターンによってLSIチップ内の故障をできるだけ確実に検出できることが要求される。このため、故障シミュレーションを主な手段とする故障検出情報抽出処理により求められ、その値が経験的にも製品品質との強い相関が認められている故障検出率が、テストパターンが故障を確実に検出できるかどうかの判断基準として用いられている。なお、ここでいう「故障検出率」とは、例えば、組合せ論理ゲート(簡単な素子も含む)、それをベースとするフリップフロップ等の基本セルおよび基本セル間の接続(配線)によって記述される、ゲートレベルのLSI内部の任意の1個の接続ノードの値が0又は1に固定されたと仮定する単一縮退故障(全部で2×接続ノード数)を故障モデルとして、その検証パターンでどの程度故障を検出することができるかを示す値である。

ところで、この故障検出率は、直接的には、検証パターンを用いた故障シミュレーションによって求めることができるのであるが、一般に検証パターンを用いた故障シミュレーションには非常に多くのCPUリソースが必要とされる上に、近年のLSIの大規模化、複雑化に伴って検証パターンのサイズ(ステップ数)が急激に増大し、さらに、LSIテスタに格納できるテストパターンのサイズを制限することが現実的なコストで出荷テストを実施するために必要不可欠となってきているために、検証パターンをそのままテストパターンに流用することは困難となり、いまや、テストパターンとして利用する検証パターンを大幅に削減することが必須の条件となってきている。

このような背景から、従来、LSIの開発者又は機能検証者が、全検証パターンの中から検証パターンの内容を考慮しつつ、故障検出率が高くなりそうな検証パターンを選び出したり、全検証パターンを用いて低い率で無作為抽出した故障に対するパターン毎の故障検出率を調べ、これが高くなる検証パターンを選択する、といった手法が用いられていたが、効率が悪く、確実性も乏しいという問題があった。これらに対し、最近、より効率的且つ確実な方法として、LSIのRTL(Register Transfer Level)記述に対して、一般に多数本の個別検証パターンで構成される検証パターンがどの程度の機能検証カバレジ(コードカレジ)を達成しているのかを解析する機能検証カバレジ評価装置や、さらには、各検証パターン毎に得られる結果を利用して、全ての検証パターンと同じ機能検証カバレジを達成する最小本数の検証パターンセットを選別する機能検証パターン選別装置が市販されるようになってきているが、その選別結果を出荷テストパターンの選別に活用することも行われるようになってきた。

ここで、図4を参照して、このような機能検証カバレジ評価装置および機能検証パターン選別装置を用いたテストパターン選別処理について簡単に説明する。

従来までのテストパターン選別処理においては、始めに、対象とするLSI又はLSI内の機能ブロックのRTLネット50と検証パターン(通常多数の検証パターンの集合)51をテストパターン選別装置40に入力すると、RTLコードカバレジ評価ツール41が検証パターン毎の機能検証カバレジを抽出、出力する。その後、検証パターン選別ツール42が、選別の対象としたい機能検証項目についてのカバレジが高い検証パターンから順に選別を行い、テストパターンの集合の中から、全てのテストパターンと同等の機能検証カバレジを達成する最小本数のテストパターンを選別する。そして、最後に、選別された検証パターン52と、対象とするLSIのRTLネット50に対応するゲートレベルのネット53、ネット53で用いている基本セルのライブラリ54およびネット53に対して仮定される故障検証情報抽出前の未検出故障リスト55(通常は故障シミュレータが自動的に作成)を故障シミュレータ43に入力して故障検出情報抽出(故障シミュレーション)を実施すると、その検証パターン(の集合)でどの程度故障を検出することができるかを示す故障検出率および(未検出)故障リスト56が出力される。この場合、個々の検証パターンを用いた故障シミュレーションは、その前までの検証パターンを用いた故障シミュレーションの結果の(未検出)故障リストに対して実行されるため、以下では特に区別して、「累積的な」故障シミュレーション(故障検出情報抽出処理)と呼ぶ。

このようなテストパターン選別処理によれば、全検証パターンと比較して大幅に小さい検証パターンの集合にも係らず、全検証パターンを用いた場合に期待される故障検出率に比較的近い故障検出率を得ることができるので、ゲートレベル以下のLSIに対する故障検出情報の抽出に要するCPU時間や出荷テスト時におけるテストパターン長を大幅に削減することが可能となる。

概要

故障検出率を殆ど下げることなく、テストパターンのサイズを大幅に削減する。

予め選別と非選別に区別されたテストパターンの集合の内、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、故障検出率および検出・未検出故障リストを抽出する故障検出情報抽出部13と、未検出故障リスト内の故障の一部を無作為抽出する無作為抽出処理部14と、検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別部15,16,17とを具備する。

目的

本発明は、上記の技術的課題を鑑みてなされたものであり、その目的は、従来に比べ大幅に有効性の高いテストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体を提供することにある。

効果

実績

技術文献被引用数
3件
牽制数
2件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

予め選別と非選別に区別されたテストパターン集合の内、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、故障検出率および検出・未検出故障リストを抽出する故障検出情報抽出部と、未検出故障リスト内の故障の一部を無作為抽出する無作為抽出処理部と、検出・未検出故障リストを参照して、前記選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別部とを具備することを特徴とするテストパターン選別装置

請求項2

テストパターン毎に機能検証カバレジを抽出する機能検証カバレジ評価部と、抽出された機能検証カバレジを参照して、複数のテストパターンの中から機能検証カバレジが高いテストパターンを選択し、全てのテストパターンと同等の機能検証カバレジを達成する最小本数のテストパターンを選別するテストパターン選別部とを具備し、当該機能検証カバレジ評価部とテストパターン選別部とを用いてテストパターンの集合を選別と非選別に区別することを特徴とする請求項1に記載のテストパターン選別装置。

請求項3

前記選別部は、検出・未検出故障リストを参照して、前記非選別のテストパターン毎に、未検出故障をいくつ検出したかを示す追加検出故障数を算出する追加検出故障数抽出部と、前記追加検出故障数とテストパターン長を入力とした所定の評価式にしたがって、非選別のテストパターン毎の評価値を計算し、当該非選別のテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する評価値計算・選別部とを備えることを特徴とする請求項1又は請求項2に記載のテストパターン選別装置。

請求項4

前記選別されたテストパターンの中で所定の故障検出の向上率に満たないテストパターンを前記非選別の検証パターンに加え、所定の故障検出の向上率に満たないテストパターンにより追加検出された故障を未検出故障リスト内に戻す低寄与パターン抽出部を具備することを特徴とする請求項1又は請求項2又は請求項3に記載のテストパターン選別装置。

請求項5

前記評価値計算・選別部は、故障検出率の向上への寄与が大きいテストパターンを一回の処理で複数選別することを特徴とする請求項3に記載のテストパターン選別装置。

請求項6

前記故障検出向上への寄与の低いテストパターンの次に実行するテストパターンと共に累積的な故障シミュレーションのために用いる未検出故障リストとして、故障検出率向上への寄与の低いテストパターンの一つ前のテストパターンを用いた累積的な故障シミュレーションの結果の未検出故障リストを用いることを特徴とする請求項4に記載のテストパターン選別装置。

請求項7

テストパターンを選別する第一のテストパターン選別ステップと、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、第一の未検出故障リストを抽出する第一の故障検出情報抽出ステップと、前記第一の未検出故障リスト内の未検出故障の一部を無作為抽出し、第二の未検出故障リストを生成する無作為抽出処理ステップと、第二の未検出故障リストと第一のテストパターン選別ステップにおいて選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、選別されなかったテストパターン毎の検出・未検出故障リストを生成する第二の故障検出情報抽出ステップと、前記第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する第二のテストパターン選別ステップとを有することを特徴とするテストパターン選別方法

請求項8

前記第一のテストパターン選別ステップは、テストパターン毎に機能検証カバレジを抽出する機能検証カバレジ評価ステップと、抽出された機能検証カバレジを参照して、複数のテストパターンの中から機能検証カバレジが高いテストパターンを選択し、全てのテストパターンと同等の機能検証カバレジを達成する最小本数のテストパターンを選別する選別ステップから成ることを特徴とする請求項7に記載のテストパターン選別方法。

請求項9

前記第二のテストパターン選別ステップは、前記第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、第一のテストパターン選別ステップにおいて選別されなかったテストパターン毎に、第二の未検出故障リスト内の未検出故障をいくつ検出したかを示す追加検出故障数を算出する追加検出故障数抽出ステップと、前記追加検出故障数とテストパターン長を入力とした所定の評価式にしたがって選別されなかったテストパターン毎の評価値を計算する評価値計算ステップと、計算された評価値にしたがって、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別ステップとを有することを特徴とする請求項7又は請求項8に記載のテストパターン選別方法。

請求項10

前記故障検出率の向上への寄与が大きいテストパターンと第一の未検出故障リストを用いて累積的な故障シミュレーションを実行する第三の故障検出情報抽出ステップを有することを特徴とする請求項7、請求項8又は請求項9に記載のテストパターン選別方法。

請求項11

前記第一のテストパターン選別ステップにより選別されたテストパターンの中で所定の故障検出の向上率に満たないテストパターンを前記第一のテストパターン選別ステップにより選別されなかったテストパターンに加え、所定の故障検出の向上率に満たないテストパターンにより追加検出された故障を未検出故障リスト内に戻す低寄与パターン抽出ステップを有することを特徴とする請求項7、請求項8、請求項9又は請求項10に記載のテストパターン選別方法。

請求項12

前記所定の故障検出率の向上の見られないテストパターンの次に実行するテストパターンと共に累積的な故障シミュレーションのために用いる未検出故障リストとして、所定の故障検出率の向上の見られないテストパターンの一つ前のテストパターンを用いた累積的な故障シミュレーションの結果の未検出故障リストを用いることを特徴とする請求項11に記載のテストパターン選別方法。

請求項13

前記第二のテストパターン選別ステップにおいて、一回の処理で複数のテストパターンを選別することを特徴とする請求項7、請求項8、請求項9、請求項10、請求項11又は請求項12に記載のテストパターン選別方法。

請求項14

テストパターンを選別する第一のテストパターン選別処理と、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、第一の未検出故障リストを抽出する第一の故障検出情報抽出処理と、前記第一の未検出故障リスト内の未検出故障の一部を無作為抽出し、第二の未検出故障リストを生成する無作為抽出処理と、第二の未検出故障リストと第一のテストパターン選別ステップにおいて選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、選別されなかったテストパターン毎の検出・未検出故障リストを生成する第二の故障検出情報抽出処理と、前記第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する第二のテストパターン選別処理とを含み、これらの処理をコンピュータに実行させることを特徴とするテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体

請求項15

前記第一のテストパターン選別処理は、テストパターン毎に機能検証カバレジを抽出する機能検証カバレジ評価処理と、抽出された機能検証カバレジを参照して、複数のテストパターンの中から機能検証カバレジが高いテストパターンを選択し、全てのテストパターンと同等の機能検証カバレジを達成する最小本数のテストパターンを選別する選別処理を含み、これらの処理をコンピュータに実行させることを特徴とする請求項14に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項16

前記第一のテストパターン選別処理又は前記故障検出情報抽出処理を実行するプログラムは別のコンピュータ読取り可能な記録媒体に格納され、これらの処理の実行管理を行うプログラムを含むことを特徴とする請求項14又は請求項15に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項17

前記第二のテストパターン選別処理は、前記第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、第一のテストパターン選別ステップにおいて選別されなかったテストパターン毎に、第二の未検出故障リスト内の未検出故障をいくつ検出したかを示す追加検出故障数を算出する追加検出故障数抽出処理と、前記追加検出故障数とテストパターン長を入力とした所定の評価式にしたがって選別されなかったテストパターン毎の評価値を計算する評価値計算ステップと、計算された評価値にしたがって、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別処理とを含み、これらの処理をコンピュータに実行させることを特徴とする請求項14、請求項15又は請求項16に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項18

前記故障検出率の向上への寄与が大きいテストパターンと第一の未検出故障リストを用いて累積的な故障シミュレーションを実行する第三の故障検出情報抽出処理を含み、この処理をコンピュータに実行させることを特徴とする請求項14、請求項15、請求項16又は請求項17に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項19

前記第一のテストパターン選別処理により選別されたテストパターンの中で所定の故障検出の向上率に満たないテストパターンを前記第一のテストパターン選別処理により選別されなかったテストパターンに加え、所定の故障検出の向上率に満たないテストパターンにより追加検出された故障を未検出故障リスト内に戻す低寄与パターン抽出ステップを有することを特徴とする請求項14、請求項15、請求項16、請求項17又は請求項18に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項20

前記所定の故障検出率の向上の見られないテストパターンの次に実行するテストパターンと共に累積的な故障シミュレーションのために用いる未検出故障リストとして、所定の故障検出率の向上の見られないテストパターンの一つ前のテストパターンを用いた累積的な故障シミュレーションの結果の未検出故障リストを用いることを特徴とする請求項19に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

請求項21

前記第二のテストパターン選別処理において、一回の処理で複数のテストパターンを選別することを特徴とする請求項14、請求項15、請求項16、請求項17、請求項18、請求項19又は請求項20に記載のテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体。

技術分野

0001

本発明は、LSIやLSI内部の機能ブロックに対する複数の検証パターンの中から故障シミュレーションを用いて得られる故障検出情報に基づいてテストパターンを選択するテストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体に関し、特に、全検証パターンで期待できる値とほぼ同じ故障検出率を全検証パターンより大幅に少ない検証パターンで達成することを可能にする技術に係る。

背景技術

0002

通常、製造されたLSIの各チップに対しては、開発時の機能検証に使用した複数の検証パターンを適宜流用編集したテストパターンを用いてLSIが不良品ではないことを出荷前に確認する(良品だけを選別する)出荷テスト品質テスト)が行われる。このような出荷テストにおいては、使用したテストパターンによってLSIチップ内の故障をできるだけ確実に検出できることが要求される。このため、故障シミュレーションを主な手段とする故障検出情報抽出処理により求められ、その値が経験的にも製品品質との強い相関が認められている故障検出率が、テストパターンが故障を確実に検出できるかどうかの判断基準として用いられている。なお、ここでいう「故障検出率」とは、例えば、組合せ論理ゲート(簡単な素子も含む)、それをベースとするフリップフロップ等の基本セルおよび基本セル間の接続(配線)によって記述される、ゲートレベルのLSI内部の任意の1個の接続ノードの値が0又は1に固定されたと仮定する単一縮退故障(全部で2×接続ノード数)を故障モデルとして、その検証パターンでどの程度故障を検出することができるかを示す値である。

0003

ところで、この故障検出率は、直接的には、検証パターンを用いた故障シミュレーションによって求めることができるのであるが、一般に検証パターンを用いた故障シミュレーションには非常に多くのCPUリソースが必要とされる上に、近年のLSIの大規模化、複雑化に伴って検証パターンのサイズ(ステップ数)が急激に増大し、さらに、LSIテスタに格納できるテストパターンのサイズを制限することが現実的なコストで出荷テストを実施するために必要不可欠となってきているために、検証パターンをそのままテストパターンに流用することは困難となり、いまや、テストパターンとして利用する検証パターンを大幅に削減することが必須の条件となってきている。

0004

このような背景から、従来、LSIの開発者又は機能検証者が、全検証パターンの中から検証パターンの内容を考慮しつつ、故障検出率が高くなりそうな検証パターンを選び出したり、全検証パターンを用いて低い率で無作為抽出した故障に対するパターン毎の故障検出率を調べ、これが高くなる検証パターンを選択する、といった手法が用いられていたが、効率が悪く、確実性も乏しいという問題があった。これらに対し、最近、より効率的且つ確実な方法として、LSIのRTL(Register Transfer Level)記述に対して、一般に多数本の個別検証パターンで構成される検証パターンがどの程度の機能検証カバレジ(コードカレジ)を達成しているのかを解析する機能検証カバレジ評価装置や、さらには、各検証パターン毎に得られる結果を利用して、全ての検証パターンと同じ機能検証カバレジを達成する最小本数の検証パターンセットを選別する機能検証パターン選別装置が市販されるようになってきているが、その選別結果を出荷テストパターンの選別に活用することも行われるようになってきた。

0005

ここで、図4を参照して、このような機能検証カバレジ評価装置および機能検証パターン選別装置を用いたテストパターン選別処理について簡単に説明する。

0006

従来までのテストパターン選別処理においては、始めに、対象とするLSI又はLSI内の機能ブロックのRTLネット50と検証パターン(通常多数の検証パターンの集合)51をテストパターン選別装置40に入力すると、RTLコードカバレジ評価ツール41が検証パターン毎の機能検証カバレジを抽出、出力する。その後、検証パターン選別ツール42が、選別の対象としたい機能検証項目についてのカバレジが高い検証パターンから順に選別を行い、テストパターンの集合の中から、全てのテストパターンと同等の機能検証カバレジを達成する最小本数のテストパターンを選別する。そして、最後に、選別された検証パターン52と、対象とするLSIのRTLネット50に対応するゲートレベルのネット53、ネット53で用いている基本セルのライブラリ54およびネット53に対して仮定される故障検証情報抽出前の未検出故障リスト55(通常は故障シミュレータが自動的に作成)を故障シミュレータ43に入力して故障検出情報抽出(故障シミュレーション)を実施すると、その検証パターン(の集合)でどの程度故障を検出することができるかを示す故障検出率および(未検出)故障リスト56が出力される。この場合、個々の検証パターンを用いた故障シミュレーションは、その前までの検証パターンを用いた故障シミュレーションの結果の(未検出)故障リストに対して実行されるため、以下では特に区別して、「累積的な」故障シミュレーション(故障検出情報抽出処理)と呼ぶ。

0007

このようなテストパターン選別処理によれば、全検証パターンと比較して大幅に小さい検証パターンの集合にも係らず、全検証パターンを用いた場合に期待される故障検出率に比較的近い故障検出率を得ることができるので、ゲートレベル以下のLSIに対する故障検出情報の抽出に要するCPU時間や出荷テスト時におけるテストパターン長を大幅に削減することが可能となる。

発明が解決しようとする課題

0008

しかしながら、このような従来までのテストパターン選別処理には以下に示すような解決すべき技術的課題がある。

0009

すなわち、従来までのテストパターン選別処理により抽出される機能検証カバレジは、厳密な意味では、対象とするLSIのRTL記述ベルの機能検証項目を活性化したということであり、ゲートレベルの記述の記述において如何に確実に出荷テストができるかという尺度であるテスト容易性(testability)の内、テスト制御性(controllability)のカバレジに対しては良い指標となるのであるが、テスト観測性(observability)については確実に反映しているという訳ではなく、検証パターンを大幅に削減することができても、全検証パターンと同程度の故障検出率を確保したい場合には、第1次の解としては有効なものの、全検証パターンで本来得られるであろう故障検出率よりも幾分(数%程度)低くなってしまう。

0010

一般に、未検出故障率の調査と検証パターンの作成は、技術者リソースを多く必要とする困難な作業であるため、多少の故障検出率の低下も極めて大きな問題であり、このため、全検証パターンとほぼ同等の故障検出率を少ないテストパターンで確実に達成できる、有効性の高いテストパターン選別技術が待望されている。

0011

本発明は、上記の技術的課題を鑑みてなされたものであり、その目的は、従来に比べ大幅に有効性の高いテストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体を提供することにある。

課題を解決するための手段

0012

上記の技術的課題に関して、発明者は、以下の特徴を有する技術的思想を発案するに至った。

0013

本発明の第1の特徴は、予め選別と非選別に区別されたテストパターンの集合の内、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、故障検出率および検出・未検出故障リストを抽出する故障検出情報抽出部と、未検出故障リスト内の故障の一部を無作為抽出する無作為抽出処理部と、検出・未検出故障リストを参照して、前記選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別部とを具備するテストパターン選別装置であることにある。

0014

これにより、全検証パターンより大幅に少ない検証パターン(テストパターン)で、全検証パターンで得られる値とほぼ同等の故障検出率を達成できる。

0015

本発明の第2の特徴は、テストパターンを選別する第一のテストパターン選別ステップと、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、第一の未検出故障リストを抽出する第一の故障検出情報抽出ステップと、第一の未検出故障リスト内の未検出故障の一部を無作為抽出し、第二の未検出故障リストを生成する無作為抽出処理ステップと、第二の未検出故障リストと第一のテストパターン選別ステップにおいて選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、選別されなかったテストパターン毎の検出・未検出故障リストを生成する第二の故障検出情報抽出ステップと、第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する第二のテストパターン選別ステップとを有するテストパターン選別方法であることにある。

0016

これにより、全検証パターンより大幅に少ない検証パターン(テストパターン)で、全検証パターンで得られる値とほぼ同等の故障検出率を達成できる。

0017

本発明の第3の特徴は、テストパターンを選別する第一のテストパターン選別処理と、選別されたテストパターンを用いて累積的な故障シミュレーションを実行し、第一の未検出故障リストを抽出する第一の故障検出情報抽出処理と、前記第一の未検出故障リスト内の未検出故障の一部を無作為抽出し、第二の未検出故障リストを生成する無作為抽出処理と、第二の未検出故障リストと第一のテストパターン選別ステップにおいて選別されなかった任意のテストパターンを用いて故障シミュレーションを実行し、選別されなかったテストパターン毎の検出・未検出故障リストを生成する第二の故障検出情報抽出処理と、前記第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する第二のテストパターン選別処理とを含み、これらの処理をコンピュータに実行させるテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体であることにある。

0018

ただし、機能検証カバレジ評価処理、第一の検証パターン選別処理、無作為抽出処理又は故障検出情報抽出処理については、それぞれの目的に沿った処理の主要部分は別のプログラムとして別のコンピュータ読取り可能な記録媒体に格納されており、テストパターン選別プログラムはそれらの処理の実行制御(必要なデータの入出力、各プログラムの起動等)を受け持つという場合もある。

0019

これにより、全検証パターンより大幅に少ないテストパターンで、全テストパターンで得られる値とほぼ同等の故障検出率を達成できる。

0020

ここで、記録媒体とは、例えば、半導体メモリ磁気ディスク光ディスク光磁気ディスク磁気テープなどのプログラムを記録することができるようなコンピュータ読み取り可能な媒体などが含まれる。

0021

なお、機能検証カバレジ評価処理と第一のテストパターン選別処理については、従来のように、人手で故障検出率向上に寄与の高そうなテストパターンを適当な手段により予め選別しておくという方法で代替することもできる。この場合、効率はあまり良くないが、第一の故障検出情報抽出の結果を見て、故障検出率がテストパターン選別装置の処理能力から見て低すぎる場合は、さらにテストパターンを追加して故障検出率を若干向上させてから無作為抽出以後の処理に入るようにする必要が出てくる可能性がある。

0022

また、第二のテストパターン選別処理は、第二の未検出故障リストと選別されなかったテストパターン毎の検出・未検出故障リストを参照して、第一の検証パターン選別処理において選別されなかったテストパターン毎に、第二の未検出故障リスト内の未検出故障をいくつ検出したかを示す追加検出故障数を算出する追加検出故障数抽出処理と、追加検出故障数とテストパターン長を入力とした所定の評価式にしたがって選別されなかったテストパターン毎の評価値を計算する評価値計算処理と、計算された評価値にしたがって、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する選別処理とから成ることが望ましい。

0023

また、故障検出率の向上への寄与が大きいテストパターンと第一の未検出故障リストを用いて最終確認の意味での累積的な故障シミュレーション(故障検出情報抽出処理)を実行しても良い。

0024

この構成によれば、無作為抽出処理により評価されなかった未検出故障についても、ベストパターンによる検出・未検出が明確となるので、対象とするLSIの未検出故障の解析および追加テストパターンの作成を容易にすることができる。

0025

さらに、第一の故障検出情報抽出処理において、テストパターン選別処理により選別されたテストパターンの中で所定の故障検出の向上率に満たないテストパターンをテストパターン選別部により選別されなかった検証パターンに加え、所定の故障検出の向上率に満たないテストパターンにより検出された故障を未検出故障リスト内に戻しても良い。または、未検出故障のリストについては、あるテストパターンを用いた累積的な故障シミュレーションの結果、所定の故障検出率の向上が見られなかった場合は、そのテストパターンの一つ前のテストパターンでの実行の結果の未検出故障リストを次の検証パターンと共に用いて累積的な故障シミュレーションを行うようにしても良い。

0026

この構成によれば、RTLのレベルでは機能検証カバレジ向上に寄与があっても、ゲートレベルにおいては故障検出率向上への寄与が小さいテストパターンが削除される可能性が生じることとなり、一層小さいテストパターンサイズで全テストパターンとほぼ同様の故障検出率を得ることができる。

0027

さらに又、第二のテストパターン選別処理において、一回の処理で複数のテストパターンを選別するようにしても良い。

0028

この構成によれば、若干選択されるテストパターンが増加するデメリットもあるが、計算量の多い追加検出故障数算出処理実行回数を大幅に削減することができるので、全テストパターンとほぼ同等の故障検出率をより効率的に達成するテストパターン選別が可能になる。

発明を実施するための最良の形態

0029

以下、図1乃至図4を参照して、本発明の実施形態に係るテストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体について詳しく説明する。なお、以下の説明においては、検証パターンは、製品品質のテストに用いるという意味で、テストパターンと呼ぶことにする。

0030

(テストパターン選別装置)図1は、本発明の実施形態に係るテストパターン選別装置の構成を示すブロック図である。

0031

本発明の実施形態に係るテストパターン選別装置10は、図1に示すように、各テストパターンの機能検証カバレジを抽出する機能検証カバレジ評価部11、機能検証カバレジ評価部11が抽出した機能検証カバレジ情報と選別の対象とする機能検証項目(説明は後述)とを用いて、複数のテストパターンの中から、全てのテストパターンを用いた場合と同等の機能検証カバレジを達成する最小本数のテストパターンを選別する検証パターン選別部12、テストパターンを用いて累積的な故障シミュレーション(故障検出情報抽出)又は単なる故障シミュレーション処理を実行し、故障検出率と未検出故障リストを出力する故障検出情報抽出部13、故障シミュレーションの結果得られる未検出故障リストの中から未検出故障の一部を無作為抽出して新たな未検出故障リストを作成する無作為抽出部14、無作為抽出された未検出故障に対して、検証パターン選別部12の選別から外れた任意のテストパターンを用いて、故障検出情報抽出部13において故障シミュレーションを実行し、出力された故障検出率と未検出故障リストを用いて、選別から外れたテストパターン毎の追加検出故障数を算出する追加検出故障数算出部15、追加検出故障数と検証パターン長を入力とした所定の評価式にしたがって選別されなかった検証パターン毎の評価値を計算し、選別されなかったテストパターンの中で故障検出率の向上への寄与が大きいテストパターンを選別する評価値計算・選別部16を備える。

0032

なお、テストパターン選別装置10は、装置10に係る各種制御情報や対象とするLSIについてテストパターン選別で必要とする種々の情報を入力する入力部20、装置10の抽出結果やエラー情報等の情報を出力する出力部21に接続されている。なお、入力部20としてはキーボードマウスポインタおよびライトペン等、また、出力部21としては、プリンタディスプレイ装置等を用いると良い。

0033

(テストパターン選別方法)図2は、本発明の実施形態に係るテストパターン選別方法を示すフローチャート図である。

0034

本発明の実施形態に係るテストパターン選別方法は以下のステップを実行する。

0035

(1)機能検証カバレジ評価部11が、対象とするLSI又はLSI内部の機能ブロックのRTLネットとテストパターンの集合とを用いて、集合内のテストパターン毎に機能検証カバレジを抽出する(機能検証カバレジ評価ステップ、S201)。

0036

(2)検証パターン選別部12が、機能検証カバレジ情報と選別の対象とする機能検証項目とを用いて、テストパターンの集合の中から、全てのテストパターンを用いた場合と同等の機能検証カバレジを達成する最小本数のテストパターンを選別する(検証パターン選別ステップ、S202)。

0037

ここで、「機能検証項目」としては、LSI又はLSI内の機能動作を記述したRTL記述内に存在する、実行可能なステートメントを実行した割合を示すステートメント・カバレジ、分岐真偽を実行した割合を示すブランチ・カバレジ、分岐条件論理式をどの程度活性化したかを示すコンディション・カバレジ、RTL記述上のwire(接続線)がどの程度0、1の値になったかを示すトグル・カバレジといったものがある。

0038

(3)故障検出情報抽出部13が、選別されたテストパターン、対象とするLSIのRTLネットに対応するゲートレベルのネット、ゲートレベルのネットにおいて用いている基本セルのライブラリおよびゲートレベルのネットに対して仮定される累積的な故障シミュレーション実施前の未検出故障リスト(通常は故障シミュレータが自動的に作成)とを用いて、故障検出率および未検出故障リストを出力する(故障検出情報抽出ステップ、S203)。

0039

ここで、未検出故障リストには、未検出故障と共に、故障シミュレーションの結果確実に検出された故障も含まれ、ポテンシャル検出(potentially detected)故障という、例えば、正常な場合には0又は1の確定出力であるものが、その故障が存在する結果、不定値xとなる、といった範疇の故障や、特定のテストパターンでの故障解析において、CPU時間の無意味な増加を招く恐れがあるために、計算を中断したハイパーアクティブ(hyperactive)故障、冗長な故障も含まれるが、本発明のテストパターン選別装置およびその方法においては、故障リスト内の「未検出故障」が重要であり、基本的には、完全な未検出(およびハイパーアクティブ)だけを言うものとするが、ポテンシャル検出までを含んでも良い。なお、ポテンシャル検出故障については、ポテンシャル検出が所定の回数を超えた場合に、ほぼ確実に検出された見なすプロバブル検出(probably detected)に分類し、プロバブル検出は「検出」、ポテンシャル検出は「未検出」として扱うこともある。

0040

(4)無作為抽出部14が、故障検出情報抽出部13が出力した未検出故障リスト内の未検出故障を無作為抽出(random sampling)し、新たな未検出故障リストを生成する(無作為抽出処理ステップ、S204)。

0041

ここで、無作為抽出処理は、故障検出情報抽出処理(故障シミュレーション)の実行に必要なCPU時間を減少させることを目的としている。一般に、故障検出情報抽出処理の実行時間は、無作為抽出の割合にほぼ比例するが、無作為抽出の割合を低くすると、故障検出情報抽出の信頼性は低下する。ところが、本発明のテストパターン選別装置およびその方法においては、検証パターン選別部12を用いて選別した、故障検出率も全テストパターンによるものに相当近くなると考えられるテストパターンセットを用いて予め故障検出情報抽出を実行するようにしているので、無作為抽出の割合をある程度低くしても、故障検出率の結果に大きな食い違いが出る恐れを小さくすることができるのである。

0042

(5)故障検出情報抽出部13が、無作為抽出部14が生成した未検出故障リスト、対象となるLSIのゲートレベルのネット、ネットが使用するライブラリ、検証パターン選別部12によって選別されなかったテストパターンの任意の1本を用いて、故障シミュレーションを実行し、全てのテストパターン毎の故障リスト(検出、未検出の双方の故障を含む)を生成する(故障検出情報抽出ステップ、S205)。

0043

(6)追加検出故障数算出部15が、選別されなかったテストパターン、各テストパターン毎の故障リストを用いて、未検出故障リスト内の未検出故障をどの程度検出したかを比較算出する(追加検出故障数抽出ステップ、S206)。

0044

ここで、追加検出故障数抽出ステップの最初の実行時は、未検出故障リストは無作為抽出部14が抽出したものと同じである。

0045

(7)比較算出の結果、追加検出故障数が0であるテストパターンがあるか否かを判別し(追加検出故障数判別ステップ、S207)、追加検出故障数が0であるテストパターンは以後の処理から除外し(パターン除外処理ステップ、S208)、追加検出故障数が1以上であるものについては、(評価値計算ステップ、S209)以後の処理を実行する。なお、(7)については、(8)の処理において一括実施することもできる。

0046

(8)評価値計算・選別部16が、テストパターン毎の追加検出故障数と選別情報とを参照して、以下に示す所定の評価式にしたがって各テストパターンの評価値を計算し(評価値計算ステップ、S209)、評価値が最大となるテストパターンをベストパターンとして選択する(ベストパターン選別ステップ、S210)。

0047

ここで、「評価式」とは、追加故障検出数テストパラメータ変数とした、例えば以下のような形態のものが考えられる。

0048

〜評価式〜
r×(追加故障検出数)+(1−r)/(テストパターン長(ステップ数))
ここで、「r」は追加故障検出数とテストパターンサイズの重み付けを調整するためのパラメータであり、0<r<1の範囲で設定する。rの値が大きいと、追加検出故障数の大きいテストパターンが選択されるが、テストパターン長が長いものも選択される可能性が高くなる。一方、rの値を小さくすると、パターン長の短いテストパターンが優先的に選択されるが、選択したテストパターンの本数に比して追加検出される故障数が速やかに増加しないために、所定の故障検出率に到達するまでに計算量の多い追加検出故障数算出処理を多くの回数実行させる必要があり、CPU時間が増加するというデメリットが生じる。したがって、実際の処理では、妥当な値をユーザ側で選別情報において設定する必要がある。

0049

なお、ここでいう「選別情報」とは、rの値や評価値が上位いくつまで(ないしは上位いくつの値以上等)のテストパターンをベストパターンとして選択するか等の、ユーザ側で設定する選別処理に必要な情報を意味する。

0050

また、上記評価式において、追加故障検出数の代わりに、追加検出故障数を追加検出故障数抽出ステップで得られた最大の追加故障検出数で除した「規格化さらた」追加故障検出数、テストパターン長の代わりに、テストパターン長を(9)の評価値の対象となっているテストパターンの中での最大のテストパターン長で除した「規格化された」テストパターン長を用いることもできる。こうすると、「r」をより一般的な意味で用いることができ、見通しが良くなるという利点がある。

0051

(9)ベストパターンの選別処理を継続するか否かを判別し(選別継続判別ステップ、S211)、継続する場合には(故障リスト抽出ステップ、S212)へ、一方、継続しない場合には(故障検出情報抽出ステップ、S213)へ移行する。

0052

(10)評価値計算・選別部16が、未検出故障リストとベストパターンの故障リストとを比較し、未検出故障リストに対して具体的にどの故障が検出され、また、どの故障か未検出のままであるのかを求め、それぞれ故障検出リストおよび未検出故障リストに格納する(故障リスト抽出ステップ、S212)。このステップは、コンピュータシステムメモリに十分な余裕があれば、追加検出故障数算出ステップで副次的に得られる故障リストを一旦記憶しておき、ベストパターンに対応するものを引き出すだけ、という形でも実現できる。これにより、新規の未検出故障リストおよびテストパターンの集合から追加検出故障数が0のテストパターンとベストパターンを除いたテストパターンの集合が得られるが、次には、これらのそれぞれ、未検出故障リストおよびテストパターンの集合として、再び(追加検出故障数抽出ステップ、S206)に移行する。

0053

(11)故障検出情報抽出部13が、故障検出情報抽出ステップS203において生成された未検出故障リストに対して、ベストパターンを用いて累積的な故障シミュレーション処理を実行する(故障検出情報抽出ステップ、S213)。なお、この(故障検出情報抽出ステップ、S213)は省略しても良いが、この処理ステップによれば、無作為抽出処理により評価されなかった未検出故障についても、ベストパターンによる検出・未検出が明確となるので、対象とするLSIの未検出故障の解析および追加テストパターンの作成を容易にすることができる。

0054

このように、本発明の実施形態に係るテストパターン選別装置およびその方法によれば、故障検出率の向上への寄与が大きいテストパターンが効率的に選別され、最終的に、検証パターン選別部12において選別されなかったテストパターンよりも実質的に小さいサイズのテストパターンで全検証パターンによるものとほぼ同等の故障検出率を達成することができる。

0055

なお、本発明の実施形態に係るテストパターン選別方法においては、パターン選別を終了するまでの条件を予め設定しても良い。この際、全てのテストパターンにおいて追加検出故障数が0となれば処理は勿論終了するが、それまでに相当数のテストパターンが選択されてしまう可能性があるので、それよりも、例えば、全てのテストパターンでの追加検出故障数の和が、対象とするLSIにおいて故障検出率を所定の値(例えば、0.1%)未満しか向上できる目処がなくなった場合に処理を終了するようにすることが望ましい。

0056

また、本発明の実施形態に係るテストパターン選別方法においては、説明の都合上、故障リストの抽出処理と追加検出故障数抽出処理とを分けているが、これらの処理内容は類似しているので、追加検出故障数の計算時に、各テストパターンによる検出故障の抽出、すなわち、未検出故障リストから除外すべき故障の抽出処理を並行して実施し、既に得られた追加検出故障数よりも大きい追加検出故障数のテストパターンが見つかる度に、未検出故障リストと検出故障リスト上書きするようにするか、前述のように、全てないし大部分の結果をコンピュータシステムのメモリ内に一旦保存するようにしても良い。

0057

(応用例1)一般に、検証パターン選別部12により選別されたテストパターンを用いて累積的な故障検出情報抽出を実施すると、対象とするLSIの故障検出率向上への寄与が相対的に小さいものがあることがわかる。そこで、本発明の実施形態に係るテストパターン選別装置およびその方法の応用例1として、所定の故障検出率向上率を予め設定し(例えば、0.01〜0.02%)、設定した向上率に満たないテストパターンを低寄与のテストパターンリストとして記録し、これらのテストパターンにより追加検出された故障を低寄与のテストパターンの追加検出故障リストとして、次のテストパターンで使用する故障リストに対しては未検出故障となるように処理する低寄与パターン抽出部17を設けることが望ましい。なお、この応用例1においては、低寄与のテストパターンリストが選別されなかったテストパターンに加えられ、以後は、同様の処理が施される。

0058

なお、低寄与パターンに関する未検出故障リストの扱いについては、前述のように、その低寄与パターンの一つ前のテストパターンでの累積的な故障シミュレーション実行結果としての未検出故障リストを次のテストパターンで累積的な故障シミュレーションに用いるようにしても良い。

0059

この応用例1によれば、RTLのレベルでは機能検証カバレジ向上に寄与があっても、ゲートレベルにおいては故障検出率向上への寄与が小さいテストパターンが削除される可能性が生じることとなり、一層小さいテストパターンサイズで全テストパターンとほぼ同様の故障検出率を得ることができる。

0060

(応用例2)本発明の実施形態に係るテストパターン選別装置およびその方法は、ベストパターンを選択する構成となっているが、応用例として、以下の式を満たすテストパターンをベストなテストパターンのグループとして扱い、これらテストパターンを連続的に故障リスト抽出処理ステップに入力し、これらテストパターンを加えた未検出故障リストを生成するようにしても良い。

0061

(式)評価値≧a×(最高の評価値−可能な最低の評価値(0))
(0<a<1)
この処理過程の中で、追加検出故障数が0のテストパターンがあった場合には、勿論、そのパターンはベストなテストパターンのグループから除外できるものとする。さらには、処理を評価値の高いテストパターンから順に実行していくようにして、連続的実行の結果、評価値がベストな値よりある比率以下になったテストパターンは除外するようにしても良い。

0062

この応用例2によれば、選択されるテストパターンが若干増加することもあるが、計算量の多い追加検出故障数算出処理の実行回数を大幅に削減することができるので、全検証パターンとほぼ同等の故障検出率をより効率的に達成し、より有効性の高いテストパターン選別処理が可能になる。

0063

なお、本発明の実施形態に係るテストパターン選別装置は、例えば、図3に示す構成のような概観を有する。つまり、本発明の実施形態に係わるテストパターン選別装置は、コンピュータシステム30内にテストパターン選別装置10の各要素を内蔵することにより構成される。コンピュータシステム30は、フロッピー登録商標ディスクドライブ32および光ディスクドライブ34を備えている。そして、フロッピーディスクドライブ32に対してはフロッピーディスク33、光ディスクドライブ34に対しては光ディスク36を挿入し、所定の読み出し操作を行うことにより、これらの記録媒体に格納されたテストパターン選別プログラムをシステム内にインストールすることができる。また、所定のドライブ装置を接続することにより、例えば、メモリ装置役割を担うROM37や、磁気テープ装置の役割を担うカートリッジ38を用いて、インストールやデータの読み書きを実行することもできる。さらに、ユーザはキーボード35を介してテストパターン選別処理に係る各種データを入力することができ、各種の計算結果等をディスプレイ31を介して知ることが可能である。

0064

また、本発明の実施形態に係るテストパターン選別方法は、プログラム化しコンピュータ読み取り可能な記録媒体に保存しても良い。そして、テストパターン選別を行う際は、この記録媒体をコンピュータシステムに読み込ませ、コンピュータシステム内のメモリ等の記憶部にプログラムを格納し、テストパターン選別プログラムを演算装置で実行することにより、本発明のテストパターン選別方法を実現することができる。ここで、記録媒体とは、例えば、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのプログラムを記録することができるようなコンピュータ読み取り可能な媒体などが含まれる。この場合、前述のように、機能検証カバレジ評価プログラム、検証パターン選別プログラム、故障シミュレーションプログラムは別の記憶媒体によりコンピュータシステムに読み込まれることもある。

0065

このように、本発明はここでは記載していない様々実施の形態等を包含するということは十分に理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲に係わる発明特定事項によってのみ限定されるものでなければならない。

発明の効果

0066

以上述べてきたように、本発明のテストパターン選別装置、テストパターン選別解析方法、テストパターン選別解析プログラムを格納したコンピュータ読取り可能な記録媒体によれば、従来までのテストパターン選別処理において選別されなかった検証パターンの中で故障検出率を向上できるものを選別することができるので、最小に近い検証パターンの追加で全検証パターンで得られる値とほぼ同じ故障検出率を達成し、有効性の高いテストパターン選別処理を実現することができる。

図面の簡単な説明

0067

図1本発明の実施形態に係るテストパターン選別装置の構成を示すブロック図である。
図2本発明の実施形態に係るテストパターン選別方法を示すフローチャート図である。
図3本発明の実施形態に係るテストパターン選別装置の構成を示す概観図である。
図4従来までのテストパターン選別処理を説明するための模式図である。

--

0068

10テストパターン選別装置
11機能検証カバレジ評価部
12検証パターン選別部
13故障検出情報抽出部
14無作為抽出部
15 追加検出故障数算出部
16評価値計算・選別部
17 低寄与パターン抽出部
20 入力部
21 出力部
30コンピュータシステム
31ディスプレイ
32フロッピードライブ
33フロッピーディスク
34光ディスクドライブ
35キーボード
36光ディスク
37 ROM
38 カートリッジ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ