JP5522380B2 - 半導体集積回路の診断テストパターン数最適化プログラム - Google Patents
半導体集積回路の診断テストパターン数最適化プログラム Download PDFInfo
- Publication number
- JP5522380B2 JP5522380B2 JP2010053274A JP2010053274A JP5522380B2 JP 5522380 B2 JP5522380 B2 JP 5522380B2 JP 2010053274 A JP2010053274 A JP 2010053274A JP 2010053274 A JP2010053274 A JP 2010053274A JP 5522380 B2 JP5522380 B2 JP 5522380B2
- Authority
- JP
- Japan
- Prior art keywords
- diagnostic test
- test patterns
- test
- diagnostic
- test group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Tests Of Electronic Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Description
S601の機能設計では、実現する機能の設計および、機能を実装するための機能分割をする。分割した機能モジュールごとにS602において論理設計し、RTL(Register Transfer Level)論理602を作成する。
S602の論理設計において作成したRTL論理602を入力し、S603において論理検証をする。
S603の論理検証では、論理動作を確認する。S603の論理検証において動作確認したRTL論理602を入力し、S604において論理合成をする。
S604の論理合成では、ゲートレベル論理603を作成する。S604の論理合成において作成したゲートレベル論理603を入力し、S605においてTPI(Test-Point-Insertion、TPI技術については後述する)をする。
S605のTPIでは、TPI後のゲートレベル論理604を作成する。S605のTPIにおいて作成したTPI後のゲートレベル論理604を入力し、S606においてBIST論理生成をする。
S606のBIST論理生成では、BIST論理付きのゲートレベル論理605を作成する。S606のBIST論理生成において作成したBIST論理付きのゲートレベル論理605を入力し、S607においてレイアウト設計をする。
S607のレイアウト設計では、配置配線後に発生した信号波形のスルーレート違反に対して、ゲートの高駆動力化や、負荷分散をして調整する。S607のレイアウト設計において作成した信号波形のスルーレート調整後ゲートレベル論理606を入力し、S608においてタイミング検証をする。
S608のタイミング検証では、目標動作周波数を達成することを確認する。S607のレイアウト設計において作成した信号波形のスルーレート調整後ゲートレベル論理606を入力し、S609において診断テストパターン生成処理をする。
S609の診断テストパターン生成処理では、診断テストパターン607を生成する。S609の診断テストパターン生成処理において作成した診断テストパターン607および、信号波形スルーレート調整後ゲートレベル論理606を入力し、S610において故障シミュレーションをする。
S610の故障シミュレーションでは、故障検出数・故障検出率608を作成する。S611の故障検出数の確認において、作成した故障検出数・故障検出率608を確認する。
S612のLSI製造工程においてLSIを製造した後、診断テストパターン607を入力し、S613においてLSI診断をする。
図2のBIST回路の構成図に示すごとく、例えば、クロック信号線207であるCK1が接続されるフリップフロップ群をテストグループ1と呼び、クロック信号線207であるCK2が接続されるフリップフロップ群をテストグループ2と呼ぶ。
次に、診断テストパターン数を、テスタのメモリの制約範囲内という条件の下で、テストグループごとのパス数比に応じて自動配分する。診断テストパターン数の総数は、パターン数が多いとLSIテスト時間が長くなり製造コストが高くなるため、少ないパターン数で目標とする故障検出率が得られるようにテスタのメモリの制約範囲内という条件の下で、LSIの回路規模から見積り、1回に発生させられる診断テストパターンの数は、乱数発生器の回路構成から決められる。
診断テストパターン数の総数を、1回に発生させられる診断テストパターンの数で割った値が診断テストパターンの発生回数であり、これをテストグループごとのパス数比で自動配分する。この時、検出できる故障数は、診断テストパターンとして最初に発生される擬似乱数では多数の故障を検出するが、2回目、3回目・・・n回目と擬似乱数を発生させる回数が増加するにつれ、新たに検出される故障数は徐々に減少し、最終的に0又はそれに近い値となる。
図1は、本発明を実施するための装置の構成図の例である。装置は、コンピュータネットワーク上で接続される複数のサーバコンピュータ101と、複数のクライアントコンピュータ102とから構成されている。本発明の診断テストパターン数の最適化プログラムは、通常ハードディスクとして存在するサーバコンピュータ101の補助記憶装置に記憶されている。
本発明を実施するには、クライアントコンピュータ102を構成する入力装置の一つであるキーボードによりコマンドを入力し、サーバコンピュータ101の補助記憶装置上に存在する診断テストパターン生成プログラムおよび、検出故障数確認プログラムの実行を指示する。そしてサーバコンピュータ101の補助記憶装置にあったプログラムが主記憶装置にロードされて、制御装置により実行される。実行後は、故障の検出のし易さに応じて再配分した診断テストパターン数と故障シミュレーション結果を、例えばクライアントコンピュータ102を構成する出力装置ディスプレイ等で確認できる。
S301でTPI回路を挿入し、S302でBIST論理を生成し、S303でレイアウト設計を実施し、S304で診断テストパターン生成処理を実施し、そしてS305で故障シミュレーションを実施する。S306の故障検出率の確認では、S305の結果として得られる故障検出数・故障検出率302の確認から故障検出率が目標以上かを判定し、目標以上であれば終了し、目標未満の場合はS307において、前記故障検出数・故障検出率302の確認および故障検出数のmax基準値とmin基準値303の確認から故障検出数が0又はmin基準値以下のテストグループ、及び故障検出数がmax基準値以上のテストグループが存在するかを判定し、存在しない場合はS301へ戻りTPI回路の挿入から再実行し、存在する場合はS308において、故障検出数・故障検出率302の確認および故障検出数のmax基準値とmin基準値303の確認から診断テストパターン数の再配分を行い、前記S304に戻って、S308の処理の結果で得られるテストパターン配分指示301により診断テストパターン生成処理を実施する。
S401においてカウンターi、カウンターjを0にセットし、S403において故障検出数が0又は所定のmin基準値以下かどうかを判定し、0又は所定のmin基準値以下の場合は、S404においてテストパターン削除用データベースのi番目にテストグループ名を記憶した上で、S405においてカウンターiに+1を加え、故障検出数が未確認のテストグループがなくなるまでS403からのステップを繰り返すべく前記S402に戻る。
S403において、故障検出数が所定のmin基準値を超えている場合は、S406において各テストグループにおけるテストパターン発生時の故障検出数がmax基準値以上かどうかを判定し、max基準値以上の場合は、S407においてテストパターン追加用データベースのj番目にテストグループ名と基準超過分の故障検出数(故障検出数−max基準値)を記憶した上で、S408においてカウンターjに1を加え、故障検出数が未確認のテストグループがなくなるまでS403からのステップを繰り返すべく前記S402に戻る。
S406において、故障検出数が所定のmax基準値より少ない場合は、故障検出数が未確認のテストグループがなくなるまでS403からのステップを繰り返すべく前記S402に戻る。
故障検出数が未確認のテストグループがなくなった場合には、S409においてカウンターjが0を超える場合に、S410において、前記S407のテストパターン追加用データベースに基準値超過分の故障検出数が少ないグループから順に、テストパターン数を下記式で配分する。
配分するテストパターン数=i×基準値超過分の故障検出数÷基準値超過分の総故障検出数(小数点以下は切り捨て)
ただし、
基準値超過分の故障検出数が最も多いテストグループに配分するパターン数=i−配分済パターン数
とする。
S411において、カウンターjから1を減算して、テストパターンを配分するテストグループがなくなるまでS410からのステップを繰り返すべく、前記S409に戻る。そして、テストパターンを配分するテストグループがなくなったところで、S412においてカウンターiが0を超える場合に、S413において、テストパターン削除用データベースのi番目に記憶したグループのパターン割り当て分を削除して、S414において、カウンターiから1を減算して、カウンターiが0になるまで、S413からのステップを繰り返して、終了する。
また、割り当てられた診断テストパターン発生回数の最後で発生した擬似乱数で新たに検出される故障数が任意の基準値以上であった場合、別のテストグループから振り分ける。例えば、max基準値を100と設定し、診断テストパターンの発生回数が50回であった場合、50回診断テストパターンを発生させた時点で新規に検出される故障数が100件以上であれば、そのテストグループは、更に診断テストパターンを発生させることで故障を検出する可能性があると判断し、他のテストグループからの振り分け対象とする。
102 クライアントコンピュータ
201 フリップフロップ
202 被テスト回路
203 乱数発生器
204 圧縮器
205 制御回路
206 BIST論理
207 クロック信号線
208、209 接続線
505 検出故障数累計
804 検出故障数累計
Claims (1)
- 組込み自己試験法によるテスト機構を備えた半導体集積回路の故障を診断する診断テストにおける診断テストパターン数を最適化するプログラムであって、
前記半導体集積回路におけるクロックの種別ごとにグループ化したテストグループに割り当てられた診断テストパターン数の内で診断テストパターンとして発生した擬似乱数の各々で新たに検出される故障数が0又は所定の基準値以下であるかを判定するステップと、
前記テストグループに割り当てられた診断テストパターン数の内で診断テストパターンとして最後に発生した擬似乱数で新たに検出される故障数が任意の基準値以上であるかを判定するステップと、
前記診断テストパターンとして発生した擬似乱数の各々で新たに検出される故障数が0又は所定の基準値以下となるテストグループに割り当てられた診断テストパターン数を削減するステップと、
新たに検出される故障数が0又は所定の基準値以下となっていて削減したテストグループに割り当てられた診断テストパターン数を、テストグループに割り当てられた診断テストパターン数で新たに検出される故障数が所定の基準値以上となっているテストグループに追加するステップと、
前記診断テストパターン数の再割り当て後の故障検出率が目標とする故障検出率を満足しているかを判定するステップとをコンピュータに実行させることを特徴とする診断テストパターン数最適化プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010053274A JP5522380B2 (ja) | 2010-03-10 | 2010-03-10 | 半導体集積回路の診断テストパターン数最適化プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010053274A JP5522380B2 (ja) | 2010-03-10 | 2010-03-10 | 半導体集積回路の診断テストパターン数最適化プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011185847A JP2011185847A (ja) | 2011-09-22 |
JP5522380B2 true JP5522380B2 (ja) | 2014-06-18 |
Family
ID=44792306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010053274A Expired - Fee Related JP5522380B2 (ja) | 2010-03-10 | 2010-03-10 | 半導体集積回路の診断テストパターン数最適化プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5522380B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3732708B2 (ja) * | 2000-03-27 | 2006-01-11 | 株式会社東芝 | テストパターン選別装置、テストパターン選別方法およびテストパターン選別プログラムを格納したコンピュータ読取り可能な記録媒体 |
JP4228061B2 (ja) * | 2000-12-07 | 2009-02-25 | 富士通マイクロエレクトロニクス株式会社 | 集積回路の試験装置および試験方法 |
JP3833982B2 (ja) * | 2002-10-03 | 2006-10-18 | 株式会社東芝 | テストパターン選択装置、テストパターン選択方法、及びテストパターン選択プログラム |
-
2010
- 2010-03-10 JP JP2010053274A patent/JP5522380B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011185847A (ja) | 2011-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8707227B2 (en) | Method and apparatus for synthesis of multimode x-tolerant compressor | |
US3783254A (en) | Level sensitive logic system | |
US10345369B2 (en) | Augmented power-aware decompressor | |
EP3945448A1 (en) | Methods and systems for fault injection testing of an integrated circuit hardware design | |
US8407638B2 (en) | Methods and apparatus for boolean equivalency checking in the presence of voting logic | |
Mukherjee et al. | Time and area optimized testing of automotive ICs | |
US20120112763A1 (en) | Method for Detecting Small Delay Defects | |
US20060080576A1 (en) | Test point insertion method | |
JP5522380B2 (ja) | 半導体集積回路の診断テストパターン数最適化プログラム | |
US8468409B2 (en) | Speed-path debug using at-speed scan test patterns | |
US7500165B2 (en) | Systems and methods for controlling clock signals during scan testing integrated circuits | |
WO2006025412A1 (ja) | 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置 | |
JP5181638B2 (ja) | 半導体集積回路設計方法 | |
JP5408052B2 (ja) | 集積回路、シミュレーション装置、及びシミュレーション方法 | |
US8438518B2 (en) | Apparatus for designing semiconductor integrated circuit, method of designing semiconductor integrated circuit, and program for designing semiconductor integrated circuit | |
Choudhary et al. | Trace signal selection methods for post silicon debugging | |
JP7069608B2 (ja) | 半導体設計支援装置、半導体設計支援方法及びプログラム | |
US9964591B2 (en) | Implementing decreased scan data interdependence in on product multiple input signature register (OPMISR) through PRPG control rotation | |
Huang et al. | Using embedded infrastructure IP for SOC post-silicon verification | |
Venkataramani et al. | Test-time reduction in ATE using asynchronous clocking | |
Savanur et al. | A Fault Model to Detect Design Errors in Combinational Circuits | |
Seshadri et al. | Accelerating diagnostic fault simulation using z-diagnosis and concurrent equivalence identification | |
Bohl et al. | On-chip I/sub DDQ/testing in the AE11 fail-stop controller | |
Bakalis et al. | On accumulator-based bit-serial test response compaction schemes | |
Murugesan et al. | Satisfiability based test generation for stuck-at fault coverage in RTL circuits using VHDL |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130307 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131001 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140325 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5522380 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |