JP2008293088A - 半導体集積回路及びその設計方法 - Google Patents

半導体集積回路及びその設計方法 Download PDF

Info

Publication number
JP2008293088A
JP2008293088A JP2007135358A JP2007135358A JP2008293088A JP 2008293088 A JP2008293088 A JP 2008293088A JP 2007135358 A JP2007135358 A JP 2007135358A JP 2007135358 A JP2007135358 A JP 2007135358A JP 2008293088 A JP2008293088 A JP 2008293088A
Authority
JP
Japan
Prior art keywords
integrated circuit
test point
semiconductor integrated
delay time
path
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.)
Withdrawn
Application number
JP2007135358A
Other languages
English (en)
Inventor
Toshiyuki Maeda
敏行 前田
Toshiharu Asaka
俊治 淺香
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2007135358A priority Critical patent/JP2008293088A/ja
Priority to US12/153,596 priority patent/US8056036B2/en
Publication of JP2008293088A publication Critical patent/JP2008293088A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318583Design for test

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

【課題】遅延テストにおける微小遅延故障の見逃しを削減すること。
【解決手段】本発明によれば、TPI手法に基づく半導体集積回路の設計方法が提供される。その設計方法は、(A)設計回路に含まれる複数のノードから、テストポイントが挿入される対象ノードを選択するステップと、(B)その対象ノードに対してテストポイントを挿入するステップと、(C)そのテストポイントにつながるパスであるテストポイントパスに対して遅延時間を指定するステップと、(D)テストポイントパスの遅延時間が指定された遅延時間になるように、設計回路のレイアウトを行なうステップと、を有する。上記(A)ステップは、(A1)複数のノード毎に、ファンイン側とファンアウト側のパスの遅延時間を算出するステップと、(A2)算出された遅延時間に基づいて対象ノードを選択するステップと、を含む。
【選択図】図9

Description

本発明は、半導体集積回路の設計技術に関する。特に、本発明は、テストポイント挿入(Test Point Insertion)法を用いた半導体集積回路の設計技術に関する。
半導体集積回路の製造後、製品中に遅延故障(delay fault)や縮退故障(stuck-at fault)が発生しているか否かを確認するためにテストを行なう必要がある。そのテスト時のテスタビリティを高めることができるテスト回路を、設計段階で予め組み込んでおく設計技術が知られている。そのような設計技術は、「テスト容易化設計(DFT: Design For Testability)」と呼ばれている。
テスト容易化設計の一手法として、「スキャン設計」が知られている(例えば、非特許文献1を参照)。スキャン設計によれば、設計回路内のフリップフロップの全て又は一部が、スキャンフリップフロップに置き換えられる。テスト時、それらスキャンフリップフロップはあるスキャンパスを構成することができる。そのスキャンパスを通してテストパタンを入力及び出力することにより、スキャンテストが行なわれる。テストパタンは、ATPG(Automatic Test Pattern Generator)によって自動的に生成される。
テストを更に容易化するための手法として、「テストポイント挿入(TPI: Test Point Insertion)」が知られている(例えば、特許文献1、特許文献2、特許文献3を参照)。テストポイント挿入によれば、テスト時の信号の制御性(controllability)や観測性(observability)を向上させるために、設計回路中のあるノードに対してテストポイントが挿入される。
また最近、「微小遅延故障(small delay defect)」が着目されている(非特許文献2参照)。市場からの大規模化、高速化の要求や、製造プロセスにおける配線やゲートの微細化が進むと、設計値からのわずかな逸脱がクリティカルパスに存在すると動作不良が発生する。つまり、回路の高速化、大規模化、微細化に伴い、微小遅延故障に起因する動作不良が増加してきている。テストにおいては、微小遅延故障を見逃すことなく精度良く検出することが重要である。
特開平6−331709号公報 特開平9−189748号公報 特開2006−84427号公報 S. Kajihara et al., "A Framework of High-quality Transition Fault ATPG for Scan Circuits", IEEE International Test Conference, Paper 2.1, Oct. 2006. Y. Sato et al., "Invisible Delay Quality - SDQM Model Lights Up What Could Not Be Seen", IEEE International Test Conference, Page 47.1, Nov. 2005.
従来の設計技術に関して、本願発明者は次の点に着目した。
図1は、本発明の課題を説明するための回路図であり、従来のスキャン設計に基づく設計回路の一例を示している。図1に示された設計回路は、フリップフロップ(スキャンフリップフロップ)FF1〜FF4を含んでいる。フリップフロップFF1からフリップフロップFF3へのパスP1の遅延時間は6nsである。フリップフロップFF1からフリップフロップFF4へのパスP2の遅延時間は8nsである。フリップフロップFF2からフリップフロップFF3へのパスP3の遅延時間は3nsである。フリップフロップFF2からフリップフロップFF4へのパスP4の遅延時間は5nsである。パスP1〜P4のうち遅延時間が最大であるパス(以下、「最長パス」と参照される)は、パスP2である。ここで、図1に示されたノードTNにおいて微小遅延故障が発生しているとする。
図2は、遅延テストに用いられるパスと見逃される微小遅延故障の大きさ(tdefect)との対応関係を示している。ここで、システムクロック周期は9nsであるとする。最長パスP2の遅延時間は8nsなので、1ns以下の故障が発生してもシステム動作に影響を与えない。このようにシステム動作に影響を与えない故障は、タイミング冗長故障と呼ばれる。パスP1が用いられる場合、遅延故障の大きさが3ns未満であれば、クロック周期(9ns)内に信号は伝達される。従って、その遅延故障は遅延テストにおいて検出されず、見逃されてしまう。より詳細には、パスP1が用いられる場合、1ns〜3nsの大きさの遅延故障が見逃されてしまう。同様に、パスP4が用いられる場合、1ns〜4nsの大きさの遅延故障が見逃されてしまう。同様に、パスP3が用いられる場合、1ns〜6nsの大きさの遅延故障が見逃されてしまう。一方、最長パスP2が用いられる場合、遅延故障は正常に検出され、見逃しは発生しない。
このように、遅延テストにおいて微小遅延故障を見逃さないためには、なるべく長いパスを用いることが好適である。図1及び図2に示された例では、最長パスP2を用いることが好適である。しかしながら、どのパスが遅延テストに用いられるかはATPG次第であり、一般的には比較的短いパスが用いられる傾向がある。よって、微小遅延故障が見逃される可能性が高い。最長パスが選択されるように、ATPGを改良することも考えられる。但し、最長パスを用いた故障検出を実現するためには、ATPGが最長パスを探索しながらテストパタンを生成する必要があるため、テストパタンの生成時間が長くならざるを得ない。また、最長パスをテストするための信号値の制約は、一般的なATPGより多くなり、結果として、パタン数が増加する。このことは、遅延テストに要する時間とテストコストの増大を招く。
また、図3は、従来のTPI手法に基づく設計回路の一例を示している。図3において、図1で示された設計回路中のノードTNに対してテストポイントTP(観測フリップフロップ)が挿入されている。フリップフロップFF1からテストポイントTPへのパスは、以下「テストポイントパスPT」と参照される。テストポイントパスPTはノードTNを含んでおり、遅延テストにおいてはこのテストポイントパスPTが用いられる。
テストポイントパスPTに関しては、セットアップ制約とホールド制約が満たされていれば十分であり、テストポイントパスPTは一般的に短く設計される。従って、ほとんどの場合、テストポイントパスPTは最長パスP2より短くなる。よって、微小遅延故障が見逃される可能性が高い。
以上に説明されたように、従来のパスの遅延値を考慮しないテストポイント挿入技術では、遅延テストにおいて微小遅延故障が見逃される可能性が極めて高かった。それは、従来の設計技術が、微小遅延故障の検出に対応していなかったからである。微小遅延故障が見逃されると、市場での不良発生率が増大してしまう。それは、製品の信頼性の低下につながる。
本発明によれば、TPI手法に基づく半導体集積回路の設計方法が提供される。その設計方法は、(A)設計回路に含まれる複数のノードから、テストポイントが挿入される対象ノードを選択するステップと、(B)その対象ノードに対してテストポイントを挿入するステップと、(C)そのテストポイントにつながるパスであるテストポイントパスに対して遅延時間を指定するステップと、(D)テストポイントパスの遅延時間が指定された遅延時間になるように、設計回路のレイアウトを行なうステップと、を有する。
このように、本発明によれば、テストポイントパスにおける遅延時間を能動的に指定することが可能である。つまり、テストポイントパスにおける遅延時間を、微小遅延故障の検出に十分な大きさに設定することが可能となる。例えば、テストポイントパスの遅延時間は、対象ノードを通るパスのうち最長パスの遅延時間と同じになるように設定される。これにより、遅延テストにおいて微小遅延故障の見逃しを削減することが可能となる。
更に、上記(A)ステップは、(A1)複数のノード毎に、ファンイン側とファンアウト側のパスの遅延時間を算出するステップと、(A2)算出された遅延時間に基づいて、複数のノードから対象ノードを選択するステップと、を含む。この遅延時間に基づいて、微小遅延故障が見逃されやすいノードを検出することができる。従って、微小遅延故障が見逃されやすいノードを優先的に対象ノードとして選択することが可能となる。これにより、十分な品質を確保しつつ、挿入されるテストポイント数を削減することが可能となる。すなわち、無駄なテストポイントを排除し、効率的なテストポイント挿入を実現することが可能となる。その結果、テストポイントによるオーバーヘッドが削減され、チップ面積やコストの増大が抑制される。
本発明によれば、遅延テストにおける微小遅延故障の見逃しが削減される。従って、市場での不良発生率が低減し、製品の信頼性が向上する。更に、挿入されるテストポイント数を削減することが可能となる。その結果、テストポイントによるオーバーヘッドが削減され、チップ面積やコストの増大が抑制される。
添付図面を参照して、本発明の実施の形態に係る半導体集積回路の設計技術を説明する。
1.設計フロー
本実施の形態に係る半導体集積回路の設計方法は、基本的にはTPI手法に基づいている。但し、本実施の形態に係るTPI手法は、従来方式と異なり、微小遅延故障の検出にも対応している。まず、図4に示されるフローチャートを参照して、本実施の形態に係る半導体集積回路の設計方法を俯瞰する。
ステップS100:
まず、設計回路にテストポイント(制御テストポイント及び/又は観測テストポイント)が挿入される。テストポイントが挿入されるべき位置(以下、「対象ノード」と参照される)の決定方法は、後の第3節において詳しく説明される。テストポイントが挿入された対象ノードにおける信号は、外部から制御可能、観測可能である。テストポイントとしては、例えば、スキャンテスト可能なフリップフロップが用いられる。
ステップS200:
次に、テストポイントにつながるパスに対して、所定の遅延時間が指定される。テストポイントにつながるパスとは、制御テストポイントを始点とするパス、あるいは、観測テストポイントを終点とするパスであり、以下「テストポイントパス」と参照される。また、テストポイントパスに対して指定される遅延時間は、以下「TP遅延」と参照される。
ステップS300:
次に、設計回路のレイアウト処理が行なわれる。ここで、本実施の形態によれば、テストポイントパスの遅延時間が上記指定されたTP遅延となるように、レイアウト処理が行なわれる。従来のTPI手法では、テストポイントパスに関しては、セットアップ制約とホールド制約だけが考慮されており、それら制約が満たされていれば十分であった。しかしながら、本実施の形態では、テストポイントパスの遅延時間が指定されており、その指定された遅延時間が実現されるようにテストポイントパスが設計される。結果として、指定されたTP遅延が考慮されたレイアウトデータが作成される。
ステップS400:
作成されたレイアウトデータを基に、設計対象の半導体集積回路が製造される。
ステップS500:
製造された半導体集積回路のテストが実行される。このテストにおいては、上記挿入されたテストポイントが用いられ、縮退故障や遅延故障が存在するか否かが検査される。特に、テストポイントを用いた遅延テストを通して、微小遅延故障が存在するか否かが検査される。この遅延テストにおける微小遅延故障の見逃しを減らすために、本実施の形態によれば、上記「TP遅延」は次のように設定される。
2.微小遅延故障対応テストポイント
2−1.第1の例
図5は、本実施の形態に係る設計回路の第1の例を示している。図5に示された設計回路は、図1で示されたものと同様に、フリップフロップ(スキャンフリップフロップ)FF1〜FF4を含んでいる。また、図5において、設計回路中の対象ノード(target node)TNに対して、テストポイントTP(観測フリップフロップ)が挿入されている。フリップフロップFF1からテストポイントTPへのパスが、テストポイントパスPTである。テストポイントパスPT以外で対象ノードTNを通るパスのうち遅延時間が最大である最長パスは、フリップフロップFF1からフリップフロップFF4へのパスP2(遅延時間:8ns)である。
ステップS200において、テストポイントパスPTに対してTP遅延が指定される。第1の例では、最長パスP2の遅延時間がTP遅延として指定される。すなわち、TP遅延は、遅延テストにおいて用いられることが好ましいパスである最長パスP2の遅延時間と同じに設定される。このTP遅延は、対象ノードTNを通るパスの遅延時間のうち最大である。そして、ステップS300において、指定されたTP遅延が実現されるように、テストポイントパスPTのタイミング設計が行なわれる。そのために、図5に示されるように、いくつかのインバータが遅延素子として挿入される。その結果、遅延時間が8nsであるテストポイントパスPTが得られる。
ステップS400で半導体集積回路が製造される。この際、対象ノードTNにおいて微小遅延故障が発生したとする。ステップS500において、テストポイントパスPTを用いた遅延テストが行なわれる。この時、テストポイントパスPTの遅延時間は8nsであるため、微小遅延故障は見逃されることなく、正常に検出される(図2参照)。このように、TPI手法に基づいて設計が行われても、遅延テストにおいて微小遅延故障は見逃されない。微小遅延故障の見逃しが減少するため、不良発生率が低減される。
2−2.第2の例
図6は、本実施の形態に係る設計回路の第2の例を示している。第1の例における説明と重複する説明は適宜省略される。第2の例では、遅延テスト時のテストクロック周期(テストタイミング)が、TP遅延として指定される。本例において、テストクロック周期は9nsであり、TP遅延も同じ9nsに設定される。このTP遅延は、対象ノードTNを通るパスの遅延時間のうち最大である。指定されたTP遅延が実現されるように、図6に示されるように、いくつかのインバータが遅延素子として挿入される。その結果、遅延時間が9nsであるテストポイントパスPTが得られる。
遅延テストにおいては、そのテストポイントパスPTが用いられる。従って、対象ノードTNにおいて微小遅延故障が発生していたとしても、その微小遅延故障は見逃されることなく、正常に検出される。つまり、第1の例と同様の効果が得られる。更に、第2の例によれば、TP遅延が第1の例の場合より大きい値に設定されるため、微小遅延故障の検出精度が更に向上する。
尚、テストクロック周期以下のある範囲が、テストポイントパスPTに対するTP遅延として指定されてもよい。例えば、TP遅延を、8ns〜9nsという範囲に設定することもできる。その場合でも、指定されたTP遅延は、対象ノードTNを通るパスの遅延時間のうち最大となる。従って、同様の効果が得られる。
2−3.第3の例
上述の例では観測テストポイントの場合が説明されたが、制御テストポイントの場合も同様である。図7は、制御テストポイントが挿入される場合の一例を示している。図7に示された設計回路は、フリップフロップ(スキャンフリップフロップ)FF5〜FF8を含んでいる。また、対象ノードTNに対して、テストポイントTP(制御フリップフロップ)が挿入されている。テストポイントTPからフリップフロップFF8へのパスが、テストポイントパスPTである。そのテストポイントパスPTに対して、TP遅延が指定される。例えば、TP遅延は、対象ノードTNを通る最長パスP5の遅延時間と同じになるように設定される。あるいは、TP遅延は、遅延テスト時のテストクロック周期と同じになるように設定されてもよい。
3.テストポイント挿入箇所の決定方法
次に、本実施の形態に係る微小遅延故障対応のテストポイントTPの挿入箇所の決定方法を詳しく説明する。つまり、図4中のステップS100における対象ノードTNの決定方法を説明する。
挿入されるテストポイントTPの数が増えるにつれて、故障検出率が向上する一方で、チップ面積は増大してしまう。つまり、テストポイントTPの数が膨大になると、それによるオーバーヘッドが巨大となり、チップ面積やコストがいたずらに増大してしまう。従って、十分な品質を確保しつつ、挿入されるテストポイントTPの数をなるべく削減することが望ましい。すなわち、テストポイントTPを“効率的”に挿入することが望ましい。以下に説明されるのは、それを実現するための方法である。
図8は、ある設計回路を示している。この設計回路は、フリップフロップFF11〜FF18を含んでいる。このうちフリップフロップFF11〜FF14はノードNAのファンイン側に存在し、フリップフロップFF15〜FF18はノードNAのファンアウト側に存在する。ファンイン側のフリップフロップFF11〜FF14からノードNAへのパスは、それぞれパスP11〜P14である。一方、ノードNAからファンアウト側のフリップフロップFF15〜18へのパスは、それぞれパスP15〜P18である。これらパスP15〜P18の遅延時間はそれぞれ異なっており、パスP15がファンアウト側の最短パスであり、パスP18がファンアウト側の最長パスであるとする。
ノードNAのファンインコーンに属している遅延故障を検出することを考える。テストポイントTPが挿入されない場合、ファンアウト側ではパスP15〜P18のいずれかが用いられる。どのパスが用いられるかはATPG次第である。最長パスP18が用いられる場合、微小遅延故障が検出される可能性は高い。しかしながら、それ以外の場合、微小遅延故障が見逃される可能性が高くなる。特に、最短パスP15が用いられる場合、微小遅延故障が見逃される可能性が極めて高くなる。
このノードNAに、図8に示されるように観測テストポイントTPが挿入されるとする。ノードNAから観測テストポイントTPへのパスは、パスP20である。パスP20の遅延時間は、例えばファンアウト側の最長パスP18の遅延時間と同じに設定される。ノードNAのファンインコーンに属する遅延故障が検出される際、ファンアウト側ではこのパスP20が用いられる。その結果、微小遅延故障が検出される可能性が高くなる。つまり、テストポイントTPの挿入により、微小遅延故障の検出率が改善する。その改善の度合いは、最短パスP15の遅延時間が小さいほど大きくなる。
ノードNA以外のノードに関しても同様に、微小遅延故障が見逃されやすいパスが存在する。そのノードにテストポイントTPを挿入することによって、微小遅延故障の検出率は改善する。その改善の度合いは、微小遅延故障が見逃されやすいノードほど大きくなる。
以上のことから、十分な品質を確保しつつ、挿入されるテストポイントTPの数をなるべく削減するためには、微小遅延故障が見逃される可能性がより高いノードから優先的にテストポイントTPを挿入すればよいと考えられる。そこで、本実施の形態によれば、各ノードに対して「優先度パラメータ」が定義される。優先度パラメータとは、“微小遅延故障が見逃される度合い”や“テストポイント挿入による検出率の改善の度合い”を表す。本実施の形態によれば、この優先度パラメータが大きいノードが、優先的に、対象ノードTNとして選択される。それにより、少ないテストポイントTPで、微小遅延故障の検出率を効率的に向上させることができる。
優先度パラメータは、ノード毎に、ファンイン側とファンアウト側のそれぞれに対して算出される。この優先度パラメータの算出において、ファンイン側とファンアウト側のパスの遅延時間が用いられる。以下、優先度パラメータの様々な例を示す。以下の説明において、最長パスの遅延時間はTMAXで表され、最短パスの遅延時間はTMINで表される。また、テストクロック周期はTCLKで表される。
(優先度パラメータの第1の例)
第1の例では、優先度パラメータは、「最長パスの遅延時間TMAX」と「最短パスの遅延時間TMIN」との差TMAX−TMINである。この差TMAX−TMINが大きいほど、微小遅延故障が見逃される危険性が高く、且つ、テストポイント挿入による効果が大きくなる。
(優先度パラメータの第2の例)
第2の例では、優先度パラメータは、「テストクロック周期TCLK」と「最短パスの遅延時間TMIN」との差TCLK−TMINである。この差TCLK−TMINが大きいほど、微小遅延故障が見逃される危険性が高く、且つ、テストポイント挿入による効果が大きくなる。
(優先度パラメータの第3の例)
第3の例では、優先度パラメータは、最短パスの遅延時間TMINの逆数1/TMINである。この逆数1/TMINが大きいほど、遅延時間TMINは小さい。すなわち、逆数1/TMINが大きいほど、微小遅延故障が見逃される危険性が高く、且つ、テストポイント挿入による効果が大きくなる。
(優先度パラメータの第4の例)
第4の例では、テストポイントTPによって遅延検証が行われ得る故障の数(仮定故障数)が考慮される。例えば図8において、観測テストポイントTPにより、ノードNAのファンインコーンに属する故障が検証され得る。故障は各素子の入力と出力において定義されるため、図8に示されるように、仮定故障数は13である。この仮定故障数が多いほど、1つのテストポイントTPの挿入の影響は大きくなる。従って、上述の第1〜第3の例のいずれかで算出された値に仮定故障数を掛けることにより、検出率の改善の度合いはより正確になる。本例に係る優先度パラメータは、上述のいずれかの例で算出された値(TMAX−TMIN,TCLK−TMIN,1/TMIN)と仮定故障数との積である。
(優先度パラメータの第5の例)
第5の例では、優先度パラメータは、テストポイント挿入によるSDQL(Statistical Delay Quality Level)の改善度である。SDQLとは、テストするパスの遅延時間を考慮した、遅延テストの品質を表す指標である(非特許文献1、非特許文献2を参照)。あるノードにテストポイントTPが挿入されたと仮定して、そのノードに関するSDQLの改善度を優先度パラメータとする。具体的には、まずテストポイントTPの挿入前の回路に関して、各ノードに仮定している遅延故障が検出された場合の、SDQLのワースト値、すなわち、最短パスを使ってテストされた場合のSDQLの値が求められる。次に、あるノードにテストポイントTPが挿入され、そのノードの故障がテストポイントTPを含むパスで検出されたと仮定して、そのノードに関するSDQLの改善度が算出される。
図9は、上述のテストポイント挿入処理(ステップS100)を要約的に示すフローチャートである。まず、ノード(テストポイント挿入可能箇所)毎に、ファンイン側とファンアウト側のパスの遅延時間が算出される(ステップS110)。次に、算出された遅延時間に基づいて、上述の「優先度パラメータ」が算出される(ステップS120)。優先度パラメータは、ノード毎に、ファンイン側とファンアウト側のそれぞれに対して算出される。
次に、優先度パラメータが大きいノードが、優先的に、テストポイントTPが挿入される対象ノードTNとして選択される(ステップS130)。具体的には、各ノードの優先度パラメータが比較され、優先度パラメータが大きいノードから順番に対象ノードTNとして選択される。例えば、ファンアウト側の優先度パラメータだけを比較することにより、観測テストポイントが挿入される対象ノードTNが選択される。一方、ファンイン側の優先度パラメータだけを比較することにより、制御テストポイントが挿入される対象ノードTNが選択される。あるいは、ファンイン側とファンアウト側の優先度パラメータをまとめて比較することにより、制御テストポイントあるいは観測テストポイントが挿入される対象ノードTNが選択されてもよい。
次に、選択された対象ノードTNに対して、テストポイントTPが挿入される(ステップS140)。ファンイン側の優先度パラメータに基づいて対象ノードTNが選択された場合、制御テストポイントが挿入される。一方、ファンアウト側の優先度パラメータに基づいて対象ノードTNが選択された場合、観測テストポイントが挿入される。
挿入されたテストポイントTPの数が所定値に達していない場合、あるいは、品質が所定の目標値に達していない場合(ステップS150;No)、処理は、ステップS130に戻る。そして、優先度パラメータが次に大きいノードが、対象ノードTNとして選択される。挿入されたテストポイントTPの数が所定値に達した場合、あるいは、品質が所定の目標値に達した場合(ステップS150;Yes)、処理は終了する。尚、ここでの“品質”の例として、SDQLの改善度が挙げられる。
以上に説明された手法により、十分な品質を確保しつつ、挿入されるテストポイント数を削減することが可能となる。すなわち、無駄なテストポイントを排除し、効率的なテストポイント挿入を実現することが可能となる。その結果、テストポイントによるオーバーヘッドが削減され、チップ面積やコストの増大が抑制される。
4.設計システム、プログラム
本実施の形態に係る設計処理は、コンピュータシステムで実現される。図10は、コンピュータによって実現されるLSI設計システム10の構成例を示すブロック図である。このLSI設計システム10は、演算処理装置20、記憶装置30、入力装置40、出力装置50、及び設計プログラム群60を備えている。記憶装置30としては、RAMやHDDが例示される。入力装置40としては、キーボードやマウスが例示される。出力装置50としては、ディスプレイが例示される。
記憶装置30には、ネットリスト31、TPI済みネットリスト32、TP遅延指定ファイル33、遅延制約ファイル34、レイアウトデータ35等が格納される。
設計プログラム群60は、コンピュータ読取可能な記録媒体に記録されている。この設計プログラム群60は、TPIツール61及びレイアウトツール62を含んでいる。これらツールは、演算処理装置20によって読み込まれ実行されるソフトウェアである。演算処理装置20がこれらソフトウェアを実行することによって、本実施の形態に係る半導体集積回路の設計処理が実現される。演算処理装置20は、必要なデータやファイルを記憶装置30から読み出し、また、作成されたデータやファイルを記憶装置30に格納する。
TPIツール61は、テストポイントTPの挿入を行なう(ステップS100)。具体的には、TPIツール61は、ネットリスト31を読み込み、そのネットリスト31が示す設計回路中のノードから、上述の手法で対象ノードTNを選択する。そして、TPIツール61は、選択された対象ノードTNに対してテストポイントTPを挿入する。その結果、テストポイントTPが挿入されたTPI済みネットリスト32が作成される。
TP遅延指定ファイル33には、TP遅延の指定に関する情報が記述されている。例えば、TP遅延をテストクロック周期に指定する旨が記述されている。このTP遅延指定ファイル33は、設計戦略に基づいて作成され、レイアウトツール62が解釈可能なフォーマットで記述される(ステップS200)。遅延制約ファイル34は、通常のユーザ回路部分に関する遅延制約(セットアップ制約やホールド制約)を示すファイルであり、TP遅延以外の遅延制約を示している。
レイアウトツール62は、TPI済みネットリスト32、TP遅延指定ファイル33、及び遅延制約ファイル34を読み込み、読み込んだデータに基づいて設計回路のレイアウトを行なう(ステップS300)。具体的には、レイアウトツール62は、遅延制約ファイル34で示される遅延制約が満たされるように、ユーザ回路部分のレイアウト設計及びタイミング設計を行なう。テストポイントパスPTに関しては、そこでの遅延時間がTP遅延指定ファイル33によって指定されるTP遅延になるように、レイアウト設計及びタイミング設計が行なわれる。尚、タイミング設計の優先度は、テストポイントパスPTよりもユーザ回路部分の方が高い。このようにして、設計回路のレイアウトを示すレイアウトデータ35が作成される。
5.まとめ
本実施の形態によれば、TPI手法に基づいた半導体集積回路の設計方法が提供される。従って、テストポイントTPを用いることによって、テストを容易に行なうことが可能となる。テストパタンの数も削減される。また、ユーザ回路部分の設計に影響を与えるのはテストポイントTPが挿入される部分だけであり、ユーザ回路部分のタイミング設計を大幅に変更する必要はない。
また、本実施の形態によれば、従来のTPI手法と異なり、テストポイントパスPTに対して任意のTP遅延を能動的に指定することが可能である。つまり、テストポイントパスPTにおける遅延時間を、微小遅延故障の検出に十分な大きさに設定することが可能である。その結果、遅延テストにおける微小遅延故障の見逃しが格段に減少する。従って、市場での不良発生率が低減し、製品の信頼性が向上する。このように、本実施の形態によれば、従来のTPI手法の利点を生かしつつ、微小遅延故障の検出精度を高めることができる。更に、微小遅延故障の検出が容易になることにより、ATPGのテスト生成時間が短縮される。また、テストパタン数も減少し、テスト時間も削減される。
更に、本実施の形態によれば、十分な品質を確保しつつ、挿入されるテストポイント数を削減することが可能となる。すなわち、無駄なテストポイントTPを排除し、効率的なテストポイント挿入を実現することが可能となる。その結果、テストポイントTPによるオーバーヘッドが削減され、チップ面積やコストの増大が抑制される。
図1は、従来のスキャン設計に基づく設計回路の一例を示す回路図である。 図2は、課題を説明するための概念図である。 図3は、従来のTPI手法に基づく設計回路の一例を示す回路図である。 図4は、本発明の実施の形態に係る半導体集積回路の設計方法を示すフローチャートである。 図5は、本発明の実施の形態に係る設計回路の第1の例を示す回路図である。 図6は、本発明の実施の形態に係る設計回路の第2の例を示す回路図である。 図7は、本発明の実施の形態に係る設計回路の第3の例を示す回路図である。 図8は、本発明の実施の形態におけるテストポイントの挿入箇所の決定方法を説明するための回路図である。 図9は、本発明の実施の形態におけるテストポイントの挿入方法を示すフローチャートである。 図10は、本発明の実施の形態に係るLSI設計システムの構成を示すブロック図である。
符号の説明
10 LSI設計システム
20 演算処理装置
30 記憶装置
31 ネットリスト
32 TPI済みネットリスト
33 TP遅延指定ファイル
34 遅延制約ファイル
35 レイアウトデータ
40 入力装置
50 出力装置
60 設計プログラム群
61 TPIツール
62 レイアウトツール
TP テストポイント
TN 対象ノード
PT テストポイントパス

Claims (12)

  1. TPI(Test Point Insertion)手法に基づく半導体集積回路の設計方法であって、
    (A)設計回路に含まれる複数のノードから、テストポイントが挿入される対象ノードを選択するステップと、
    (B)前記対象ノードに対して前記テストポイントを挿入するステップと、
    (C)前記テストポイントにつながるパスであるテストポイントパスに対して遅延時間を指定するステップと、
    (D)前記テストポイントパスの遅延時間が前記指定された遅延時間になるように、前記設計回路のレイアウトを行なうステップと
    を有し、
    前記(A)ステップは、
    (A1)前記複数のノード毎に、ファンイン側とファンアウト側のパスの遅延時間を算出するステップと、
    (A2)前記算出された遅延時間に基づいて、前記複数のノードから前記対象ノードを選択するステップと
    を含む
    半導体集積回路の設計方法。
  2. 請求項1に記載の半導体集積回路の設計方法であって、
    前記(A2)ステップは、
    (a)前記複数のノード毎に、前記算出された遅延時間の最小値に基づく優先度パラメータを算出するステップと、
    (b)前記優先度パラメータが大きいノードを優先的に、前記対象ノードとして選択するステップと
    を含む
    半導体集積回路の設計方法。
  3. 請求項2に記載の半導体集積回路の設計方法であって、
    前記優先度パラメータは、前記算出された遅延時間の最大値と最小値との差である
    半導体集積回路の設計方法。
  4. 請求項2に記載の半導体集積回路の設計方法であって、
    前記優先度パラメータは、テストクロック周期と前記算出された遅延時間の最小値との差である
    半導体集積回路の設計方法。
  5. 請求項2に記載の半導体集積回路の設計方法であって、
    前記優先度パラメータは、前記算出された遅延時間の最小値の逆数である
    半導体集積回路の設計方法。
  6. 請求項2に記載の半導体集積回路の設計方法であって、
    前記優先度パラメータは、前記算出された遅延時間の最大値と最小値との差と、前記テストポイントよって遅延検証が行われ得る故障の数との積である
    半導体集積回路の設計方法。
  7. 請求項1に記載の半導体集積回路の設計方法であって、
    前記(A2)ステップは、
    (a)前記複数のノード毎に、遅延時間が最も小さいパスを用いてテストされた場合のSDQL(Statistical Delay Quality Level)を算出するステップと、
    (b)前記複数のノード毎に、前記テストポイントが挿入されたと仮定した場合の前記SDQLの改善度を、優先度パラメータとして算出するステップと、
    (c)前記優先度パラメータが大きいノードを優先的に、前記対象ノードとして選択するステップと
    を含む
    半導体集積回路の設計方法。
  8. 請求項1乃至7のいずれかに記載の半導体集積回路の設計方法であって、
    前記(C)ステップにおいて、前記テストポイントパスの遅延時間は、前記対象ノードを通るパスの遅延時間のうち最大となるように指定される
    半導体集積回路の設計方法。
  9. 請求項8に記載の半導体集積回路の設計方法であって、
    前記(C)ステップにおいて、前記テストポイントパス以外で前記対象ノードを通るパスの遅延時間のうち最大のものが、前記テストポイントパスの遅延時間として指定される
    半導体集積回路の設計方法。
  10. 請求項1乃至9のいずれかに記載の半導体集積回路の設計方法をコンピュータに実行させる半導体集積回路の設計プログラム。
  11. テストポイント挿入可能な箇所のうち、ファンイン側あるいはファンアウト側のパスの遅延時間の最大値と最小値との差が大きい箇所から優先的にテストポイントが挿入されていることを特徴とする半導体集積回路。
  12. テストポイント挿入可能な箇所のうち、ファンイン側あるいはファンアウト側のパスの遅延時間の最大値と最小値との差と仮定故障数との積が大きい箇所から優先的にテストポイントが挿入されていることを特徴とする半導体集積回路。
JP2007135358A 2007-05-22 2007-05-22 半導体集積回路及びその設計方法 Withdrawn JP2008293088A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007135358A JP2008293088A (ja) 2007-05-22 2007-05-22 半導体集積回路及びその設計方法
US12/153,596 US8056036B2 (en) 2007-05-22 2008-05-21 Semiconductor integrated circuit and method of designing thereof based on TPI

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007135358A JP2008293088A (ja) 2007-05-22 2007-05-22 半導体集積回路及びその設計方法

Publications (1)

Publication Number Publication Date
JP2008293088A true JP2008293088A (ja) 2008-12-04

Family

ID=40073580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007135358A Withdrawn JP2008293088A (ja) 2007-05-22 2007-05-22 半導体集積回路及びその設計方法

Country Status (2)

Country Link
US (1) US8056036B2 (ja)
JP (1) JP2008293088A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8164345B2 (en) * 2008-05-16 2012-04-24 Rutgers, The State University Of New Jersey Spectral and information theoretic method of test point, partial-scan, and full-scan flip-flop insertion to improve integrated circuit testability
US8515695B2 (en) * 2009-04-09 2013-08-20 Lsi Corporation Method and an apparatus for evaluating small delay defect coverage of a test pattern set on an IC
JP5397083B2 (ja) * 2009-08-17 2014-01-22 富士通株式会社 回路設計支援方法、回路設計支援装置および回路設計支援プログラム
JP2011112434A (ja) * 2009-11-25 2011-06-09 Renesas Electronics Corp 論理回路用テストポイント挿入方法、論理回路試験装置
CN105631077B (zh) 2014-11-07 2020-05-15 恩智浦美国有限公司 具有增大的故障覆盖率的集成电路

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450414A (en) 1993-05-17 1995-09-12 At&T Corp. Partial-scan built-in self-testing circuit having improved testability
JPH09189748A (ja) 1995-10-19 1997-07-22 Lucent Technol Inc 回路内の複数の信号受信ノードの1つにテストポイントを追加する方法
US6282506B1 (en) * 1996-02-20 2001-08-28 Matsushita Electric Industrial Co., Ltd. Method of designing semiconductor integrated circuit
US5819072A (en) * 1996-06-27 1998-10-06 Unisys Corporation Method of using a four-state simulator for testing integrated circuit designs having variable timing constraints
KR100499818B1 (ko) * 1997-01-06 2005-11-22 가부시끼가이샤 히다치 세이사꾸쇼 반도체집적회로검사점의해석방법,해석장치
WO1999045667A1 (en) * 1998-03-03 1999-09-10 Rutgers University Method and apparatus for combined stuck-at fault and partial-scanned delay-fault built-in self test
US6256759B1 (en) * 1998-06-15 2001-07-03 Agere Systems Inc. Hybrid algorithm for test point selection for scan-based BIST
US6636995B1 (en) * 2000-07-13 2003-10-21 International Business Machines Corporation Method of automatic latch insertion for testing application specific integrated circuits
JP2002083000A (ja) * 2000-09-06 2002-03-22 Fujitsu Ltd 論理回路設計方法及び論理回路
CN1182577C (zh) * 2002-11-08 2004-12-29 清华大学 降低非扫描可测试性设计管脚开销的方法
JP2006084427A (ja) 2004-09-17 2006-03-30 Matsushita Electric Ind Co Ltd テストポイント挿入方法
US8051352B2 (en) * 2006-04-27 2011-11-01 Mentor Graphics Corporation Timing-aware test generation and fault simulation

Also Published As

Publication number Publication date
US8056036B2 (en) 2011-11-08
US20080295050A1 (en) 2008-11-27

Similar Documents

Publication Publication Date Title
JP3833982B2 (ja) テストパターン選択装置、テストパターン選択方法、及びテストパターン選択プログラム
JP2007122422A (ja) 回路設計システム及び回路設計プログラム
JP5032395B2 (ja) テスト条件の生成方法およびテスト条件生成装置
JP2005172549A (ja) 半導体集積回路の検証方法及びテストパターンの作成方法
JP2008293088A (ja) 半導体集積回路及びその設計方法
US8898602B2 (en) Apparatus for design assist and method for selecting signal line onto which test point for test controlling is to be inserted in circuit to be designed
US10977400B2 (en) Deterministic test pattern generation for designs with timing exceptions
US8347260B2 (en) Method of designing an integrated circuit based on a combination of manufacturability, test coverage and, optionally, diagnostic coverage
US8352818B2 (en) Method for generating test patterns for small delay defects
US8413102B2 (en) Vectorless IVD analysis prior to tapeout to prevent scan test failure due to voltage drop
JP5040758B2 (ja) シミュレーション装置、シミュレーション方法及びプログラム
JP2011028465A (ja) テストポイント挿入方法
JP2005257654A (ja) 回路の品質判定方法および品質判定装置、並びに、回路の品質判定プログラムおよび該プログラムを記録した媒体
US6748352B1 (en) Method and apparatus for scan design using a formal verification-based process
US8468409B2 (en) Speed-path debug using at-speed scan test patterns
JP2008153489A (ja) 半導体集積回路の設計方法及び設計プログラム
JP2010249662A (ja) ディレイ故障診断プログラム
JP2005308471A (ja) パスディレイテスト方法
US8438518B2 (en) Apparatus for designing semiconductor integrated circuit, method of designing semiconductor integrated circuit, and program for designing semiconductor integrated circuit
JP2008527322A (ja) 回路配置並びにその検査および/または診断方法
JP2011060117A (ja) 半導体集積回路設計支援装置および半導体集積回路の設計方法
JP4067112B2 (ja) 半導体集積回路の検証方法及びテストパターンの作成方法
JP4721275B2 (ja) テストパタン生成システム、及びテストパタン生成方法
JP4144540B2 (ja) スキャンパス処理方法、スキャンパス処理プログラム、および記録媒体
JP2013015494A (ja) 半導体集積回路,および,半導体集積回路の検査方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100803