JP4711801B2 - 回路設計システム及び回路設計プログラム - Google Patents

回路設計システム及び回路設計プログラム Download PDF

Info

Publication number
JP4711801B2
JP4711801B2 JP2005313953A JP2005313953A JP4711801B2 JP 4711801 B2 JP4711801 B2 JP 4711801B2 JP 2005313953 A JP2005313953 A JP 2005313953A JP 2005313953 A JP2005313953 A JP 2005313953A JP 4711801 B2 JP4711801 B2 JP 4711801B2
Authority
JP
Japan
Prior art keywords
circuit design
circuit
equivalent fault
nodes
equivalent
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
Application number
JP2005313953A
Other languages
English (en)
Other versions
JP2007122422A (ja
Inventor
淳平 野中
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.)
Renesas Electronics Corp
Original Assignee
Renesas 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2005313953A priority Critical patent/JP4711801B2/ja
Priority to US11/588,372 priority patent/US7600203B2/en
Publication of JP2007122422A publication Critical patent/JP2007122422A/ja
Application granted granted Critical
Publication of JP4711801B2 publication Critical patent/JP4711801B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist

Landscapes

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

Description

本発明は、論理回路設計に用いられる回路設計システム及び回路設計プログラムに関する。特に、本発明は、故障解析容易化に用いられる回路設計システム及び回路設計プログラム(CADプログラム)に関する。
一般的な半導体集積回路の製造工程では、生産された集積回路に一定の割合で不良品が含まれるため、テスト工程で不良品が除去され良品のみが出荷される。このときの良品率は「歩留まり」と呼ばれる。歩留まりが低いと、製造原価が上昇して収益が圧迫される。そこで、故障解析(failure analysis)により故障の原因を明らかにし、製造工程を改善することにより歩留まりを向上させる必要がある。
しかしながら、回路の集積度が増大するにつれ、その故障解析は困難になってきている。例えば、電子ビーム装置による電位波形測定(EB測定)は、配線層数が8層前後まで増加している現状では、測定したい配線が露出していない場合が多いため困難である。また、レーザ電圧プローブ測定法(以下、LVP(Laser Voltage Probe)と参照される)は、チップ裏面からのレーザ照射により電位波形を測定する手法であり、配線層数が多くても利用可能である(例えば、特許文献1参照)。しかし、分解能の不足により、90nm世代以降では全てのトランジスタを測定することは不可能である。
また、集積回路内部の電位波形を測定する方法として、次の方法も挙げられる。すなわち、FIB(収束イオンビーム)装置によって配線露出加工が実施された後、EB測定が行われる。ただし、この方法は非常に多くの作業時間を要する。そのため、まず故障診断ソフトウェアにより故障箇所のおおよその目安をつけ、その結果に基づいて測定により故障箇所を特定する必要がある。ここで、故障診断ソフトウェアは、集積回路の回路図とテスト結果をもとに、故障箇所の“推測”を行うソフトウェアである。また、その推測によって抽出される故障箇所は、「故障候補」と呼ばれている。
ここで、所望の回路の構造によっては、上記故障診断ソフトウェアにより推測される「故障候補」の数が非常に多くなる場合がある。どの故障候補が真の故障かを確認するための測定が必要であり、その測定においては、上述の通りFIB装置による配線露出加工が行われる。そのため、故障候補の数が多くなるにつれ測定時間が長くなり、故障解析に要する作業時間は増大してしまう。
これに対し、故障解析を容易にするための論理設計用プログラムが、特許文献2に開示されている。特許文献2に開示された技術によれば、集積回路の設計時、予め指定された観測対象配線が故障解析手段(EB測定,LVP測定など)によって観測可能になるように、設計変更が行われる。この技術に関するより具体的なシステム構成が、図1に示されている。
図1を参照して、まず、回路接続情報(ネットリスト)が、入力手段2001から配置配線手段2003に入力される。配置配線手段2003は、その回路接続情報を参照して、セルの配置及び回路の配線を行う。次に、判断部2005は、入力手段2001を通して観測対象指定データを受け取り、その観測対象指定データで指定される回路領域が所定の故障解析手段によって観測され得るか否かを判断する。その回路領域が観測不可能である場合、置換指示部2007は、その回路領域を観測可能な状態にするための配線置換指示データを生成する。配置配線手段2003は、その配線置換指示データに基づいて新たなレイアウトデータを作成する。つまり、当該回路領域が所定の故障解析手段で観測可能になるように、回路レイアウトが変更される。変更されたレイアウトデータは、集積回路製造装置2009に送られ。その結果、故障解析が容易化された集積回路が製造される。
また、特許文献2には、回路中の故障未検出領域やコントローラビリティ、オブザーバビリティの悪い回路領域に観測ポイントを挿入することが述べられている。但し、観測ポイントが挿入される位置を決定するための具体的な方法は述べられていない。また、オブザーバビリティの悪い回路領域全てに対して観測ポイントが挿入されれば、回路面積や動作速度のオーバヘッドが無視できなくなることも問題である。
これに対し、非特許文献1には、少ない観測ポイントで故障解析の容易性を向上させるための観測ポイント選択方法が説明されている。その方法によれば、まず、ゲートレベルの回路接続情報(ネットリスト)を参照することにより、回路内部の全ノードに観測ポイントが挿入される。次に、外部からの観測では場所を特定することができない故障(等価故障)の数Npが算出される。この時点では、回路内の全ノードが観測可能なので、Npは0である。次に、観測ポイントが除去されてもNpが増大しないノードや、観測ポイントの除去によるNpの増大量が小さいノードから、観測ポイントが除去される。すなわち、Npの増大を最小限に抑えながら観測ポイントが除去される。これにより、少ない観測ポイント数で故障解析容易性が向上することが期待される。
尚、回路設計に関連する技術として、非特許文献2には「フィジカル・シンセシス手法」が述べられている。そのフィジカル・シンセシス手法を示すフローチャートが、図2に示されている。まず、所望の回路の機能設計が行われる(ステップS2101)。次に、論理合成とセル配置が同時並列的に実施される(ステップS2103)。ここで、回路全体の論理合成が一度に行われるのではなく、1個〜数個のセルの論理合成が行われた後、直ちにそれらの配置処理が行われることに留意されたい。その後、クロックツリー合成と配線処理が行われる(ステップS2105)。そして、セル間の距離から信号伝搬に要する遅延時間が算出され、回路やセル配置の最適化が行われる(ステップS2107)。このような手順を繰り返すことにより、回路全体の設計が行われる。
特表2002−522770号公報 特開2001−14370号公報 Irith Pomeranz, Srikanth Venkataraman, and Sudhakar M.Reddy、「Z-DFD: Design-for-Diagnosability based on the concept of z-detection」、International Test Conference 2004 講演予稿集、2004年11月. 寺澤敏弘,東竜也,渡辺吉規,島澤貴美,高橋真史,古山徹、「LSIの微細化に伴うフィジカル・シンセシスの重要性と実施例」、電子情報通信学会技術研究報告 VLD2000-138, ICD2000-214, pp25〜,2001年3月.
本願発明者は、次の点に着目した。非特許文献1によれば、観測ポイントの挿入位置が決定される際、回路のネットリストだけが用いられており、ノード毎の故障発生確率が考慮されていない。そのため、故障発生確率が低いノードに対して観測ポイントが無駄に挿入される可能性がある。
以下に、[発明を実施するための最良の形態]で使用される番号・符号を用いて、[課題を解決するための手段]を説明する。これらの番号・符号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明の第1の観点において、回路設計システムが提供される。その回路設計システムは、記憶部(103)と、故障候補抽出部(109)と、判断部(111)と、観測ポイント挿入部(113)とを備える。記憶部(103)には、回路の接続情報を示すネットリスト(NET)が格納される。故障候補抽出部(109)は、そのネットリスト(NET)から等価故障群G〜G(Iは、1以上の整数)を抽出し、その等価故障群G(iは1以上I以下の整数)を示す故障候補データ(CAN)を生成する。等価故障群とは、いかなる外部入力に対しても同じ挙動を示すために、外部からの測定では場所を特定できない故障群である。等価故障群Gには、複数のノードNi1〜NiJi(Jは等価故障群Gに含まれるノード数)が含まれる。判断部(111)は、複数のノードNi1〜NiJiから、故障解析に用いられる少なくとも1つの観測ポイントが挿入される対象ノードを決定する。観測ポイント挿入部(113)は、その対象ノードに少なくとも1つの観測ポイントを挿入することによって、ネットリスト(NET)を更新する。
本発明によれば、判断部(111)は、ノード数Jに基づいて対象ノードを決定する。例えば、最大のノード数Jを有する等価故障群Gで故障が発生する確率は、全ての等価故障群のうちで最も高い可能性がある。よって、判断部(111)は、最大のノード数Jを有する1つの等価故障群Gから対象ノードを選択してもよい。多数の等価故障ノードを有する等価故障群に観測ポイントを優先的に挿入することによって、全体としての故障候補の数は“効率的に”低減する。すなわち、より少ない観測ポイントの挿入数で、故障解析の容易性を向上させることが可能となる。
より具体的には、判断部(111)は、等価故障群Gに関連するパラメータDとして、次式:D=J・Pで定義される量を算出する。Pは、等価故障群Gに故障が含まれる確率である。パラメータDは、ノード数Jと確率Pに依存している。そして、判断部(111)は、全ての等価故障群G〜Gに対するパラメータDの和Mが小さくなるように、対象ノードを決定する。好適には、最大のパラメータDを有する1つの等価故障群Gから、対象ノードが優先的に選択される。確率Pは、モデルに依存して様々に決定されるが、例えば等価故障群G中の配線長に依存する。最大の配線長を有する1つの等価故障群Gでは、故障発生確率Pが高いと考えられる。そのような等価故障群は、結局、大きなパラメータDを有する等価故障群に相当する。よって、そのような等価故障群Gから、対象ノードが優先的に選択されればよい。
このように、本発明によれば、比較的大きなパラメータDを有する等価故障群Gに、観測ポイントが優先的に挿入される。これにより、故障解析容易性が“効率よく”向上する。つまり、より少ない観測ポイントで、故障解析の容易性が向上する。言い換えれば、観測ポイント挿入位置を最適化することによって、少ない観測ポイント数で故障解析を容易化することが可能となる。
また、本発明に係る回路設計システムによれば、観測ポイントが挿入されるネットリストは、論理合成が全て完了したネットリストに限られない。一部だけ論理合成が行われたネットリストに対しても観測ポイントを挿入することが可能である。よって、本発明に係る回路設計システムは、上記非特許文献2に記載されたフィジカル・シンセシス手法に基づいた回路設計にも適用され得る。比較として、上記非特許文献1に開示された技術によれば、回路内部の全ノードに観測ポイントが一旦挿入された後、観測ポイントが適宜除去されていく。従って、観測ポイントが挿入されるネットリストは、論理合成が全て完了したネットリストに限られる。よって、この従来技術を、論理合成とセル配置が同時に行われるフィジカル・シンセシス手法と併用することはできない。
本発明の第2の観点において、コンピュータによって実行される回路設計プログラム(10)が提供される。その回路設計プログラム(10)が演算処理装置(2)や記憶装置(3)を含むコンピュータ上で実行されることにより、上記回路設計システムが実現される。
本発明に係る回路設計システム及び回路設計プログラムによれば、観測ポイントが挿入される位置が最適化されるため、挿入される観測ポイント数が少なくても、故障解析の容易性が向上する。つまり、より少ない観測ポイントで、効率よく故障解析を容易化することが可能となる。
また、本発明に係る回路設計システム及び回路設計プログラムは、フィジカル・シンセシス設計手法に適用することも可能である。すなわち、フィジカル・シンセシス設計手法の場合であっても、観測ポイントを挿入することにより、故障解析の容易化を実現することが可能となる。
添付図面を参照して、本発明による回路設計システム及び回路設計プログラムを説明する。
1.第1の実施の形態
図3は、第1の実施の形態に係る回路設計システム(故障解析容易化設計システム)の構成を示すブロック図である。この回路設計システムは、回路の接続情報を示すネットリストNETから、その回路のレイアウトを示すレイアウトデータLAYを生成する。この回路設計システムは、例えば、演算処理装置、記憶装置、及び演算処理装置によって実行されるコンピュータプログラム(回路設計プログラム)によって実現され得る。
まず、本実施の形態に係る回路設計システムの概略が説明される。図3に示されるように、回路設計システムは、入力部101、記憶部103、回路配置部105、セル間距離抽出部107、故障候補抽出部109、判断部111、観測ポイント挿入部113、回路配線部115、及び出力部117を備えている。
回路の接続情報を示すネットリストNETは、入力部101により入力され、記憶部103に格納される。回路配置部105は、記憶部103に格納されたネットリストNETを参照し、設計対象の回路に含まれるセル群の配置を行う。そして、回路配置部105は、そのセル群の配置を示す配置データARRを生成する。配置データARRは、記憶部103に格納され、また、セル間距離抽出部107に出力される。セル間距離抽出部107は、受け取った配置データARRが示すセル群の配置を基に、セル間の距離情報を抽出・算出する。そして、セル間距離抽出部107は、得られたセル間距離を示すセル間距離データDISを生成する。そのセル間距離データDISは、判断部111に出力される。
故障候補抽出部109は、ネットリストNETを参照して所望の回路中の「故障候補群」を抽出し、その故障候補群を示す故障候補データCANを生成する。ここで、故障候補とは、外部からの測定では場所を特定できない故障を意味し、故障診断ソフトウェアを用いてもその故障箇所を特定することはできない。場所を特定できない故障の集合である故障候補群は、「等価故障群(equivalent fault class)」と参照される場合もある(後述される)。故障候補抽出109は、ネットリストNETから等価故障群を抽出し、その等価故障群を示す故障候補データCANを生成するとも言える。その故障候補データCANは、判断部111に出力される。
故障候補群の各々は、複数のノードを含んでいる。故障解析に用いられる観測ポイントは、その複数のノードのうち少なくとも1つのノード(以下、「対象ノード」と参照される)に挿入される。その対象ノードを決定するのが、判断部111である。判断部111は、故障候補データCANとセル間距離データDISを受け取る。そして、判断部111は、故障候補データCANで示される等価故障群に含まれる複数のノードのうち、どのノードに少なくとも1つの観測ポイントが挿入されるべきかを判断する。ここで、本実施の形態によれば、判断部111は、セル間距離抽出部107によって生成されたセル間距離データDISを参照しながら、少なくとも1つの対象ノードを選択・決定する。
より詳細には、判断部111は、故障解析容易性評価部119と挿入位置決定部121を含んでいる。故障解析容易性評価部119は、セル間距離データDISが示すセル間距離を参照することにより、等価故障群に含まれる複数のノードの「故障解析容易性」を算出・評価する。挿入位置決定部121は、得られた故障解析容易性に基づいて、複数のノードから対象ノードを選択・決定する。
このようにして、判断部111は、少なくとも1つの対象ノードを決定し、その決定された対象ノードを示す観測ポイント挿入位置データPNTを生成する。その観測ポイント挿入位置データPNTは、観測ポイント挿入部113に出力される。観測ポイント挿入部113は、記憶部103に格納されたネットリストNETを参照し、回路に含まれる対象ノードに少なくとも1つの観測ポイントを挿入する。これにより、観測ポイント挿入部113は、記憶部103に格納されたネットリストNETを更新する。
必要に応じて、上述の処理が繰り返される。必要な観測ポイントの挿入処理が終了すると、回路配線部115は、記憶部103からネットリストNETと配置データARRを読み出す。そして、回路配線部115は、ネットリストNET及び配置データARRに基づいて、回路の配線、すなわち、セル間の配線を決定する。これにより、回路のレイアウトを示すレイアウトデータLAYが作成される。作成されたレイアウトデータLAYは、出力部117から出力される。
図4は、本実施の形態に係る回路設計方法を示すフローチャートである。図4に示されるフローチャート及び図3に示された構成を参照しながら、本実施の形態に係る処理を更に詳しく説明する。
(1)ステップS201:ネットリスト入力
まず、回路の構造が定義されたネットリストNETが入力部101により入力され、記憶部103に格納される。ネットリストNETには、回路を構成する部品と、その部品間の接続情報が記載されている。この回路を構成する部品は、一般的に「セル」と呼ばれている。
(2)ステップS203:等価故障群の抽出
論理回路には、外部からの測定では故障箇所を特定できない部分が存在する。そのことを、図5に示される回路を例に挙げて説明する。図5に示された回路例は、NOR素子301とNAND素子303を含んでいる。各素子の入力・出力につながる端子は、端子305〜313として参照される。各端子305〜313は、“0”又は“1”の値をとりうる。ここで、論理値が“0”又は“1”に固定される故障である「縮退故障(stuck-at fault)」を考える。例えば、端子305と端子307のいずれかの論理値が“1”に縮退した場合(1縮退故障)、出力端子313の論理値は“1”に縮退する。また、端子309と端子311のいずれかの論理値が“0”に縮退した場合(0縮退故障)も、出力端子313の論理値は“1”に縮退する。つまり、いずれの縮退故障が発生しても、出力端子313の論理値は“1”に縮退する。故障診断ソフトウェアは、出力端子313の出力が固定されたことから故障を「検知」することはできるが、上述の2つのパターンのうちどちらかが原因であるかを「特定」することはできない。つまり、外部からの測定では故障箇所を特定することは不可能である。このような場所を特定できない故障の集合が、「等価故障群(equivalent fault class)」である。
故障候補抽出部109は、ステップS201で入力されたネットリストNETで示される回路情報をもとに、その回路に含まれる等価故障群を抽出する。故障候補抽出部109は、抽出された等価故障群を示す故障候補データCANを、判断部111に出力する。等価故障群の各々は、複数の故障候補を含んでいる。等価故障に含まれる故障候補のうち、どれが真の故障かを確認するためには、測定による確認が必要である。そのためには故障候補を“観測可能な状態”にする必要がある。故障解析の現場では、観測のためにFIB加工による配線露出等が行われているが、加工箇所の数が多いと作業量も費用も多くなる。あらかじめ回路中に観測点(観測ポイント)を設け、等価故障の総数を削減することにより、故障診断を容易化することができる。これに関しては、後述される。
(3)ステップS205:セル配置処理
一方、回路配置部105は、ステップS201で入力されたネットリストNETを用いて、回路に含まれるセル群の配置を行う。この処理では、ネットリストに含まれるセル群が、設計図面上のセル配置可能領域に配置される。セル群が配置された結果を示すデータは、配置データARRと参照される。回路配置部105は、配置データARRを作成し、その配置データARRを記憶部103に格納する、また、セル間距離抽出部107に出力する。
(4)ステップS207:セル間距離抽出処理
次に、セル間距離抽出部107は、配置データARRが示すセル群の配置結果に基づいて、セル間の距離を算出し抽出する。具体的には、ネットリストNETにおいて相互に接続されているセル間の距離が算出される。1つのノードに3個以上のセルが接続されている場合、全てのセルを通過する最短パスが決定され、その距離がセル間距離として算出される。この算出において、例えば、Melzakのアルゴリズムのような最小スタイナー木探索手法が利用される。セル間距離抽出部107は、算出されたセル間距離を示すセル距離データDISを、判断部111に出力する。
(5)ステップS209:故障解析容易性の算出・評価
次に、判断部111は、ステップS203で作成された故障候補データCANと、ステップS207で作成されたセル間距離データDISに基づいて、観測ポイントが挿入される対象ノードを決定する。まず、判断部111の故障解析容易性評価部119は、故障候補データCANで示される等価故障群の各々に関して、「故障解析容易性M」と呼ばれるパラメータを算出する。その際、故障解析容易性評価部119は、セル間距離データDISで示されるセル間の距離を参照する。
具体的な算出方法は次の通りである。ネットリストNETに示される回路内に存在する複数の等価故障群の数をIとする。この場合、複数の等価故障群のそれぞれは、G, G…G(Iは1以上の整数)と参照される。各々の等価故障群は、複数の等価故障ノード(以下、単にノードと参照される)を含んでいる。等価故障群G(iは1以上I以下の整数)含まれるノード数がJである時、その等価故障群Gに含まれる複数のノードは、それぞれNi1,Ni2…NiJiと参照される。
また、複数のノードNi1,Ni2…NiJiのそれぞれの配線長は、Li1,Li2…LiJiであるとする。ここでは、まだ回路の配線処理は行われていないので、正確な配線長は不明である。そこで、本実施の形態によれば、ステップS207で算出されたセル間距離が、各ノードの配線長として近似的に用いられる。つまり、判断部111の故障解析容易性評価部119は、上記セル間距離データDISを参照し、それで示されているセル間距離を配線長Lij(iは1以上I以下の整数;jは1以上J以下の整数)として設定する。従って、斜め配線が禁止されているというような半導体集積回路特有の制限がある場合、S207では斜め配線を使わないという前提でセル間距離が算出されるべきである。
ここで、回路に含まれる配線のうち任意の1箇所で「0縮退故障」あるいは「1縮退故障」が発生する場合を想定する。この時、その故障が等価故障群Gに含まれる確率Pは、次の式(1)で表される。
Figure 0004711801
上記式(1)中のLallは、全ての等価故障群Gに含まれる全配線の長さの合計であり、次の式(2)で表される。
Figure 0004711801
上記式(1)の分子は、ある等価故障群Gに関する配線長Lijの和である。判断部111は、その和に依存する量を、等価故障群Gに関する上記確率Pとして算出すると言える。尚、上述のLallの代わりに、回路全体に含まれる全配線の長さの合計が用いられてもよい。
次に、あるチップに関して次の式(3)で表されるパラメータMが算出される。式(3)に現れるパラメータDは、式(4)により定義される。
Figure 0004711801
Figure 0004711801
式(4)に示されるように、ある等価故障群Gに関するパラメータDは、その等価故障群Giに含まれるノード数Jと上述の確率Pから求められる。特に、パラメータDがノード数Jに依存していることに留意されるべきである。また、式(3)に示されるように、パラメータMは、全ての等価故障群G〜Gに対する上記パラメータDの和として定義される。この和は、ある等価故障群Gで縮退故障が発生する場合において、その等価故障群Gに含まれる等価故障ノード数のチップ全体での平均値を表している。式(3)に示されるパラメータMが大きいことは、等価故障ノード数(故障候補)が多数になることを意味している。故障候補が多数になると、故障診断ソフトウェアによる故障解析も困難になる。
逆に、パラメータMが小さくなると、故障解析が容易になる。その意味で、パラメータMは、「故障解析容易性」と参照される場合がある。パラメータDは、等価故障群の各々の故障解析容易性を示し、パラメータMは、全ての等価故障群の故障解析容易性の合計を示しているとも言える。本明細書において、故障解析容易性を向上させることとは、パラメータMを減少させることと等価である。そのパラメータMを減少させるためには、外部から観測可能な観測ポイントが適当な位置に挿入されればよい。なるべく少ない観測ポイント数でパラメータMをなるべく小さくすることができれば、本発明の目的である、少ない観測ポイント挿入数による故障解析容易化が実現できると言える。その処理に関しては、次に説明される。
(6)ステップS211:観測ポイント挿入位置の決定
判断部111の挿入位置決定部121は、少なくとも1つの観測ポイントが挿入される位置(対象ノード)を選択・決定する。ここで、挿入位置決定部121は、上記パラメータMが小さくなるように対象ノードを決定する。観測ポイントの挿入によるパラメータMの減少量や減少率が大きいノードを選択することによって、効率よく等価故障ノード数を減少させることができる。好適には、挿入位置決定部121は、観測ポイントの挿入によるパラメータMの減少率が最大となるように、対象ノードを決定する。
パラメータMを効率よく減少させるための対象ノード決定方法の一例を、図6及び図7を参照して説明する。図6に示される回路例は、入力端子401、5個のインバータ素子403、及び出力端子405を有している。入力端子401から入力される信号は、インバータ素子403を次々と通過して、出力端子405に到達する。また、符号407(A)〜407(E)は、素子間のノードを示しており、観測ポイントが挿入され得る位置を示している。なお、説明を簡略化するため、観測ポイントはインバータ素子403の出力に対して挿入されるとする。観測ポイントが配線の中間に挿入される場合は、ここでは取り扱われない。また、図6において素子間をつなぐ配線に隣接して描かれている数字は、各ノードの配線長を表している。
観測ポイントが挿入されていない状態において、図6に示された回路は、全体として1つの等価故障群を構成している。一方、観測ポイントが挿入されると、真の故障が観測ポイントより入力端子401側にあるか出力端子405側にあるかを、測定により確認できるようになる。すなわち、1つの等価故障群は、観測ポイントが挿入される位置を境に、2つの等価故障群に分割されると言える。1つの等価故障群が観測ポイントによって第1等価故障群と第2等価故障群に分割される場合、それら第1、第2等価故障群のそれぞれに対して上記パラメータDが算出される(式(4)参照)。そして、それら2つのパラメータDを合計することによって、パラメータMが算出される。但し、図6に示された回路はインバータ素子のみで構成されているため、確率Pの算出には上記式(1)の代わりに下記の式(5)が用いられる。
Figure 0004711801
式(1)と式(5)を比較すると、式(5)では定数項1/2が省かれている。これは、インバータ素子のみで構成された回路は、入力論理が0,1いずれの場合でも等価故障群となり得るためである。また、確率Pの算出に用いられるLallは、図6を参照すると“10”である。
図7は、観測ポイントが挿入されることによる上記パラメータM(故障解析容易性)の変化を示している。具体的には、観測ポイントが挿入されていない場合と、ノード407(A)〜407(E)のいずれかに1つの観測ポイントが挿入された場合におけるパラメータMの比較がなされている。図7から明らかなように、観測ポイントがノード407(D)に挿入された場合、パラメータMは最小となる。観測ポイントがノード407(D)に挿入される場合、第1等価故障群に対するパラメータD(=1.6)と、第2等価故障群に対するパラメータD(=1.2)とが最も近くなっていることに留意されるべきである。つまり、ある1つの等価故障群Gに観測ポイントが挿入される場合、分割により得られる第1等価故障群と第2等価故障群に対して算出されるパラメータDiが最も近くなるように、対象ノードが決定されることが好適である。これにより、故障解析容易性を最も効率よく向上させることが可能となる。
また、他の例を、図8及び図9を参照しながら説明する。図8に示される回路例は、等価故障群409と等価故障群411を有している。等価故障群409は、図6と同様の回路構成を有している。等価故障群411は、入力端子401(2)と、3個のインバータ素子403と、出力端子405(2)を有している。また、符号407(F)〜407(H)は、素子間のノードを示しており、観測ポイントが挿入され得る位置を示している。図6と同様に、素子間をつなぐ配線に隣接して描かれている数字は、各ノードの配線長を表している。
本例における上述の図7と同様の比較結果が、図9に示されている。等価故障群409は、観測ポイントの挿入によって、2つの等価故障群409−1、409−2に分割されるとする。また、等価故障群411は、観測ポイントの挿入によって、2つの等価故障群411−1、411−2に分割されるとする。図9から明らかなように、観測ポイントがノード407(D)に挿入された場合、パラメータMは最小となる。
更に、等価故障群411に含まれるノード407(F)〜407(H)のいずれかに観測ポイントが挿入されたとしても、故障解析容易性Mは大きく改善しないことがわかる。これは、等価故障群411に対するパラメータD(=1.14)が、等価故障群409に対するパラメータD(=4.29)より小さいためである。故障解析容易性MはパラメータDの総和として算出されている。そのため、パラメータDがもともと小さい等価故障群411に観測ポイントが挿入されても、パラメータMはあまり小さくならない。逆に、比較的大きなパラメータDを有する等価故障群409に観測ポイントが挿入されると、パラメータMを大きく低減することが可能となる。即ち、故障解析容易性を効率よく向上させるためには、パラメータDが大きい等価故障群に観測ポイントが挿入されるとよい。
好適には、判断部111は、最大のパラメータDを有する1つの等価故障群Gから対象ノードを選択する。ここで、上記式(4)で示された通り、パラメータDはノード数Jと確率Pに依存している。よって、判断部111は、最大のノード数Jを有する1つの等価故障群Gから対象ノードを選択してもよい。多くの等価故障ノードを有する等価故障群に観測ポイントを優先的に挿入することによって、故障解析容易性を効率よく向上させることが可能となる。また、判断部111は、最大の確率P、すなわち最大の配線長を有する1つの等価故障群Gから対象ノードを選択してもよい。セル間の距離が大きい回路領域では、セル間を接続する配線も長くなるため、故障が発生する確率が高くなる。そのような回路領域に観測ポイントを優先的に挿入することによって、故障解析容易性を効率よく向上させることが可能となる。
更に他の例を、図10及び図11を参照しながら説明する。図10に示される回路例は、8入力のNAND素子801を含んでいる。このNAND素子801の入力端子の「0縮退故障」とその出力端子の「1縮退故障」は、等価故障の関係にある。この等価故障群は9つのノードを含むため、その等価故障群に対するパラメータDは大きくなる。
本例における上述の図7と同様の比較結果が、図11に示されている。図11から明らかなように、どのノードに観測ポイントを挿入しても、パラメータMを大きく減少させることはできない。これは、8入力NAND素子の構造に起因しており、観測ポイントがどこに挿入されても、分割された2つの等価故障群に含まれるノード数の比率は1:8にしかならないためである。このような等価故障群には、観測ポイントは挿入しないほうが良い。このように、パラメータDが大きくても観測ポイントの挿入による故障解析容易性の向上効果が小さい場合もあるので、注意が必要である。
以上に説明されたような手法を通して、判断部111は、観測ポイントが挿入される対象ノードを決定する。決定された対象ノードを示す観測ポイント挿入位置データPNTは、観測ポイント挿入部113に出力される。
(7)ステップS213:観測ポイントの挿入
次に、観測ポイント挿入部113は、観測ポイント挿入位置データPNTに応答して、記憶部103に格納されたネットリストNET及び配置データARRを更新する。具体的には、観測ポイント挿入部113は、ネットリストNETを参照し、ステップS211で決定された位置(対象ノード)に実際に観測ポイントを挿入する。これにより、その対象ノードは、外部から観測可能な状態になる。
また、観測ポイント挿入部113は、セル配置を示す配置データARRに対しても、同様に観測ポイントを挿入する。このとき、観測したい回路領域と観測ポイントの間の距離が大きいと、その間を接続する配線の容量がセルの駆動負荷となってしまう。その駆動負荷は回路の遅延時間に影響を与えるので、観測ポイントはなるべく観測したい回路領域の近傍に配置されるべきである。観測したい回路領域の近傍に適当な配置領域がない場合は、周囲の回路素子を移動させることにより配置場所が確保される。
また、クリティカルパス(最大遅延パス)に観測ポイントが挿入されると、遅延の増大によって回路全体の動作速度が低下する場合がある。このことが問題になる場合、観測ポイント挿入部113は、クリティカルパスを避けて観測ポイントを挿入する。
観測ポイントとして、次の参考文献1で説明されているような「EB測定用テストパッド」を用いることが考えられる(参考文献1:久慈憲夫、「EBテストパッドによる多層配線LSIの観測性向上手法」,電子情報通信学会技術研究報告,VOL.103,NO.647(ICD2003),P.23−28,2004年1月)。あるいは、次の参考文献2で説明されているような「LVP測定用素子」が、観測ポイントとして用いられてもよい(参考文献2:野中淳平,和田慎一,「90nmデバイスのLVP測定容易性評価とLVP測定用素子の開発」,電子情報通信学会技術研究報告,VOL.104,NO.628(ICD2004),P.7−12,2005年2月)。
また、可視光、X線、超音波等を使用した観察手法も考えられる。また、回路に含まれるゲート素子のトランジスタが、サイズの大きいトランジスタで置換され、それがLVP測定用素子として用いられてもよい。つまり、LVP測定が可能な程度にサイズが大きいトランジスタが、対象ノードに接続されればよい。90nm世代や65nm世代といった先端的な集積回路においても、トランジスタサイズが大きいゲート素子に対するLVP測定は容易である。
また、対象ノードに該当する配線が、チップ表面まで引き出されてもよい。また、対象ノードが集積回路の入出力端子に、電気的に直接接続されてもよいし、マルチプレクサ等の切り替え回路を経由して接続されてもよい。この場合、回路の外部から当該ノードの電位波形を電気的に測定することが可能となる。
また、SCAN回路に用いられるシフトレジスタを用いることにより、観測ポイントの電位が外部に出力されてもよい。例えば、図12に示される構成によれば、ゲート素子803で構成される回路805の内部電位が、シフトレジスタ回路により集積回路外部に出力されている。ゲート素子803間を接続する配線の電位は、マルチプレクサ807を経由してDフリップフロップ809に印加されている。Dフリップフロップ809にクロックが供給されると、回路805内部の電位がDフリップフロップ809に取り込まれる。次に、マルチプレクサを切り替えてクロックを印加すると、一群のDフリップフロップ809がシフトレジスタとして動作し、Dフリップフロップ809に取り込まれた電位が、出力端子811に順に到達する。出力端子811の電位波形を測定することにより、回路805内部の電位を測定することが可能である。また、上記構成において、出力端子811の手前にデータ圧縮回路が追加されてもよい。その場合、外部に出力されるデータ量が削減され、好適である。
(8)ステップS215
次に、引き続き観測ポイントを挿入する必要があるか否かの判断が行われる。観測ポイントが更に追加される場合、処理はステップS203に戻り、同様の処理が繰り返される。それ以外の場合、処理はステップS217に進む。判断方法としては、様々な方法が考えられる。例えば、算出される故障解析容易性Mが所定の値以下になった時点で、観測ポイントの挿入が終了する。逆に言えば、算出される故障解析容易性Mが所定の値より小さくなるまで、観測ポイントの挿入が繰り返される。この場合、完成した回路のパラメータMの値が一定の値になるため、故障解析容易性が常に同程度になるというメリットがある。
また、挿入される観測ポイントの数とパラメータMは、図13に示されるような関係を有している。図13から、挿入される観測ポイントの数が増えるに従って、パラメータMが減少しにくくなることが分かる。従って、観測ポイントの挿入によるパラメータMの減少率が所定の値より小さくなるまで、観測ポイントの挿入が繰り返されてもよい。この場合、観測ポイント1個あたりの効果が小さくなった時点で、観測ポイントの挿入が打ち切られる。よって、観測ポイント1個あたりの故障解析容易性の向上効果が大きくなるというメリットがある。
また、挿入された観測ポイントの数が所定の値になるまで、観測ポイントの挿入が繰り返されてもよい。また、観測ポイントが占める面積とチップ面積との比率が所定の値に達した時点で、観測ポイントの挿入が終了してもよい。
(9)ステップS217:配線処理
次に、回路配線部115は、観測ポイントが挿入されたネットリストNETと配置データARRを、記憶部103から読み出す。そして、回路配線部115は、それらネットリストNETと配置データARRに基づいて、配線処理を実施する。この配線処理は、セルが配置された設計図面にセル間を接続する配線の形状データを追加するための処理である。セル間の接続は、ネットリストNETに従って行われる。これにより、回路のレイアウトを示すレイアウトデータLAYが作成される。
(10)ステップS219:レイアウトデータ出力
最後に、出力部117から、完成したレイアウトデータLAYが出力される。そのレイアウトデータLAYは、集積回路の製造装置に入力される。その結果、故障解析容易性が向上した集積回路が製造される。なお、観測ポイントとしてEB測定用テストパッドやLVP測定用素子が用いられる場合、パッドの座標とノード名との対応関係を示す情報が、レイアウトデータと共に出力される。
以上に説明されたように、本実施の形態によれば、判断部111は、ノード数Jに基づいて対象ノードを決定する。例えば、最大のノード数Jを有する等価故障群Gで故障が発生する確率は、全ての等価故障群のうちで最も高い可能性がある。よって、判断部111は、最大のノード数Jを有する1つの等価故障群Gから対象ノードを選択することができる。多数の等価故障ノードを有する等価故障群に観測ポイントを優先的に挿入することによって、全体としての故障候補の数は“効率的に”低減する。すなわち、より少ない観測ポイントの挿入数で、故障解析の容易性を向上させることが可能となる。
より具体的には、判断部111は、等価故障群Gに関連するパラメータDを算出する(式(4)参照)。そのパラメータDは、ノード数Jと確率Pに依存している。そして、判断部111は、そのパラメータDからパラメータM(式(3)参照)を算出し、そのパラメータMが小さくなるように対象ノードを決定する。好適には、最大のパラメータDを有する1つの等価故障群Gから、対象ノードが優先的に選択される。確率Pは、モデルに依存して様々に決定されるが、例えば等価故障群G中の配線長に依存する。最大の配線長を有する1つの等価故障群Gでは、故障発生確率Pが高いと考えられる。そのような等価故障群は、結局、大きなパラメータDを有する等価故障群に相当する。よって、そのような等価故障群Gから、対象ノードが優先的に選択されればよい。
このように、本発明によれば、比較的大きなパラメータDを有する等価故障群Gに、観測ポイントが優先的に挿入される。これにより、故障解析容易性が“効率よく”向上する。つまり、より少ない観測ポイントで、故障解析の容易性が向上する。言い換えれば、観測ポイント挿入位置を最適化することによって、少ない観測ポイント数で故障解析を容易化することが可能となる。
2.第2の実施の形態
図14は、第2の実施の形態に係る回路設計システム(故障解析容易化設計システム)の構成を示すブロック図である。本実施の形態に係る回路設計システムは、入力部101、記憶部103、回路配置部105、故障候補抽出部109、判断部111、観測ポイント挿入部113、回路配線部115、及び出力部117を備えている。図14において、第1の実施の形態における構成と同様の構成には同一の符号が付されており、重複する説明は適宜省略される。
第2の実施の形態と第1の実施の形態との間で異なる点は、セル間距離抽出部107が省略されていることである。また、第2の実施の形態において、回路配置部105は、全ての観測ポイントの挿入が終了した後に、セルの配置を行う。
図15は、本実施の形態に係る回路設計方法を示すフローチャートである。図15に示されるフローチャート及び図14に示された構成を参照しながら、本実施の形態に係る処理を更に詳しく説明する。尚、第1の実施の形態における処理と同様の処理に関する説明は、適宜省略される。
まず、ネットリストNETが入力され、記憶部103に格納される(ステップS201)。次に、故障候補抽出部109は、第1の実施の形態と同様に、ネットリストNETから等価故障群Gを抽出し、故障候補データCANを判断部111に出力する(ステップS203)。セルの配置処理(ステップS205)は、後ほど実行される。セル間距離の抽出(ステップS207)は、行われない。次に、故障解析容易性Mの算出(ステップS209)が行われる。本実施の形態によれば、ある等価故障群Gに関する上述の確率Pを計算する際、次の式(6)が用いられる。
Figure 0004711801
上記式(6)中のJallは、全ての等価故障群Gに含まれるノード数Jの合計であり、次の式(7)で表される。
Figure 0004711801
上記式(6)の分子は、ある等価故障群Gのノード数Jである。本実施の形態によれば、判断部111は、そのノード数Jに依存する量を、等価故障群Gに関する上記確率Pとして算出する。これは、第1の実施形態において各ノードの配線長Lijが全て同じであると仮定された場合に相当する。尚、上述のJallの代わりに、回路全体に含まれるノードの総数が用いられてもよい。
続いて、既出の式(4)に基づいてパラメータDが算出され、既出の式(3)に基づいてパラメータM(故障解析容易性)が算出される。その後、判断部111の挿入位置決定部121は、第1の実施の形態と同様の手法で、観測ポイントが挿入される位置(対象ノード)を決定する(ステップS211)。そして、観測ポイント挿入部113も、第1の実施の形態と同様に、ネットリストNETに観測ポイントを挿入し、ネットリストNETを更新する(ステップS213)。
ステップS215を経て、全ての観測ポイントの挿入が完了した後、セルの配置処理が行われる(ステップS205)。この時、回路配置部105は、観測ポイントが挿入されたネットリストNETを用いて、回路に含まれるセル群の配置を行う。続いて、回路配線部115は、配線処理を実施する(ステップS217)。これらステップS205とステップS217を通して、ネットリストNETからレイアウトデータLAYが作成される。完成したレイアウトデータLAYは、出力部117から出力される(ステップS219)。
本実施の形態によれば、第1の実施の形態と同様の効果が得られる。すなわち、より少ない観測ポイント数で故障解析を容易化することが可能となる。更に、追加的な効果として、処理量が低減されるという効果が得られる。それは、パラメータMの算出時にセル間距離に関する情報は使用されず、セル間距離を抽出するための処理が必要ないからである。
また、第1の実施形態では、観測ポイントの挿入時、観測対象領域の近傍に空き領域が無い場合には、セル配置を変更して領域を確保する必要があった。しかしながら、本実施形態ではセル配置処理の前に観測ポイントが挿入されるため、観測ポイントを挿入する度にセル配置を変更する必要が無い。よって、処理が簡単になる。
3.第3の実施の形態
図16は、第3の実施の形態に係る回路設計システム(故障解析容易化設計システム)の構成を示すブロック図である。本実施の形態に係る回路設計システムは、入力部101、記憶部103、故障候補抽出部109、レイアウト部135、判断部111、観測ポイント挿入部113、及び出力部117を備えている。レイアウト部135は、回路配置部105と回路配線部115を含んでいる。また、判断部111は、故障解析容易性評価部119と挿入位置決定部121に加えて、構造抽出部123を有している。図16において、第1の実施の形態における構成と同様の構成には同一の符号が付されており、重複する説明は適宜省略される。
第3の実施の形態と第1の実施の形態との間で異なる点は、セル間距離抽出部107が省略されている点である。その代わり、本実施の形態によれば、判断部111に構造抽出部123が設けられている。この構造抽出部123は、各等価故障群Gに含まれる拡散領域の面積、コンタクトやビアの数、ゲートポリ配線の長さ、メタル配線の長さなどの「構造情報」を抽出する。パラメータM(故障解析容易性)の算出には、セル間距離に関する情報の代わりに、その構造情報が用いられる。また、その構造情報の抽出には、回路のレイアウトを示すレイアウトデータLAYが必要となる。そのため、レイアウト部135(回路配置部105と回路配線部115)は、構造抽出処理の前にレイアウトデータLAYを生成し、そのレイアウトデータLAYを判断部111(構造抽出部123)に出力する。
図17は、本実施の形態に係る回路設計方法を示すフローチャートである。図17に示されるフローチャート及び図16に示された構成を参照しながら、本実施の形態に係る処理を更に詳しく説明する。尚、第1の実施の形態における処理と同様の処理に関する説明は、適宜省略される。
まず、ネットリストNETが入力され、記憶部103に格納される(ステップS201)。次に、故障候補抽出部109は、第1の実施の形態と同様に、ネットリストNETから等価故障群Gを抽出し、故障候補データCANを判断部111に出力する(ステップS203)。また、レイアウト部135は、記憶部103に格納されたネットリストNETを参照して、回路のレイアウトを決定する。具体的には、回路配置部105が回路に含まれるセル群の配置を行い(ステップS205)、続いて、回路配線部115がセル間の配線を決定する(ステップS217)。これにより生成されるレイアウトデータLAYは、記憶部103に格納され、また、判断部111に出力される。
判断部111は、故障候補抽出部109から故障候補データCANを受け取り、レイアウト部135からレイアウトデータLAYを受け取る。そして、まず、判断部111の構造抽出部123が、故障候補データCAN及びレイアウトデータLAYを参照して、セル間接続構造の抽出処理を行う(ステップS221)。以下、ステップS221について詳しく説明する。
まず、複数種の構造X〜X(Kは1以上の整数)ごとの故障発生率R〜Rを示すデータが用意される。複数種の構造X(kは1以上K以下の整数)として、拡散領域、ゲートポリ配線、コンタクト、ビア、メタル配線などが挙げられる。例えば、図18には、8種類の構造に対する故障発生率R〜Rを示すデータが概念的に表されている。このデータは、過去の実績から統計的に求められる。例えば、テストにより不良品と判定されたサンプル数を母数として、不良の原因となった故障が上記各構造のうちどれに含まれるかが調査されればよい。このような故障発生率Rを示すデータは、記憶部103に予め格納されている。
次に、等価故障群Gに構造Xがどれだけ含まれているかを示すパラメータSk,iが算出される。図19には、図18に示された構造に対するパラメータS1,i〜S8,iが示されている。例えば、パラメータS1,iは、等価故障群Gに含まれる拡散層の面積である。パラメータS2,iは、等価故障群Gに含まれるゲートポリ配線の長さである。パラメータS3,iは、等価故障群Gに含まれるコンタクトの個数である。パラメータS4,iは、等価故障群Gに含まれる第1メタル配線の長さの合計である。例えば、等価故障群Gに含まれる各ノードのうち第1メタルで構成されている長さがLi1,Li2…LiJiであるとき、パラメータS4,iは、次の式(8)で表される。
Figure 0004711801
このようにして、構造抽出部123は、図19に示されるようなパラメータSk,iを示す構造データを作成する。次に、判断部111の故障解析容易性評価部119は、上記構造データを参照しながら、故障解析容易性Mの算出を行う(ステップS209)。本実施の形態によれば、ある等価故障群Gに関する確率Pは、上述のパラメータSk,iに基づいて算出される。具体的には、確率Pは、次の式(9)によって算出される。
Figure 0004711801
上記式(9)中のSk,allは、全ての等価故障群Gに対するパラメータSk,iの合計であり、次の式(10)で表される。
Figure 0004711801
上記式(9)の分子には、パラメータSk,iと図18に示された故障発生率Rとの積が現れている。その積が各構造Xに関して求められた後、全ての構造X〜Xに対する積の和が算出されている。本実施の形態によれば、判断部111は、その和に依存する量を、等価故障群Gに関する上記確率Pとして算出している。尚、上述のSk,allの代わりに、集積回路全体に含まれる構造Xの量の合計が用いられてもよい。
続いて、既出の式(4)に基づいてパラメータDが算出され、既出の式(3)に基づいてパラメータM(故障解析容易性)が算出される。その後、判断部111の挿入位置決定部121は、第1の実施の形態と同様の手法で、観測ポイントが挿入される位置(対象ノード)を決定する(ステップS211)。そして、観測ポイント挿入部113も、第1の実施の形態と同様に、ネットリストNETに観測ポイントを挿入し、ネットリストNETを更新する。また、観測ポイント挿入部113は、記憶部103に格納されたレイアウトデータLAYにも観測ポイントを挿入し、レイアウトデータLAYを更新する(ステップS213)。ステップS215を経て、全ての観測ポイントの挿入が完了した後、完成したレイアウトデータLAYは、出力部117から出力される(ステップS219)。
本実施の形態によれば、第1の実施の形態と同様の効果が得られる。すなわち、より少ない観測ポイント数で故障解析を容易化することが可能となる。更に、追加的な効果として、算出される故障解析容易性Mの精度が高くなるという効果が得られる。それは、確率Pが算出される際に、セル間の距離の影響だけでなく、セル間を接続する配線に含まれるビアやコンタクトの数などの影響も考慮されるからである。例えば、セル間の距離が同じであっても、そのセル間の配線が経由するビアの数は多い場合と少ない場合がある。そして、ビアの数の多少によって、故障が発生する確率も変化する。第1の実施形態では、故障解析容易性Mがセル間距離だけで評価されるので、ビアの数による故障発生率の変化を考慮することが出来ない。一方、本実施形態によれば、より故障が発生しやすい、多数のビアが含まれる配線に対して、優先的に観測ポイントを挿入することが可能となる。
4.第4の実施の形態
本発明の第4の実施の形態によれば、1つの対象ノードに複数の観測ポイントが挿入される。第4の実施の形態は、既出の第1〜第3の実施の形態と併用することが可能である。既出の実施の形態と重複する説明は、適宜省略される。
集積回路の中には数mm程度の長い配線長をもつノードも存在する。よって、故障ノードが特定されたとしても、その故障ノードの配線中のどこに故障の原因が存在するかを特定することが困難となる場合も多い。そこで、本実施形態において、観測ポイント挿入部113は、配線長が特に大きい対象ノードには複数の観測ポイントを挿入する。1つの対象ノードに挿入される観測ポイントの数は、例えば、その対象ノードの配線長に応じた数に設定される。あるいは、観測ポイント間の配線長が所定のリミット値を超えないように、観測ポイントが挿入されていってもよい。
図20A〜図20Cは、本実施の形態による観測ポイントの挿入処理(ステップS213)の一例を概念的に示している。まず、セル群(NAND素子901、NOR素子903)が、図20Aに示されるように配置されるとする。そして、NAND素子901の出力が、NOR素子903の入力に接続されるとする。これらセル間に2個の観測ポイント905が挿入されると、図20Bに示される配置が得られる。図20Bに示されるように、観測ポイント905は、なるべく等間隔で配置されることが好ましい。これにより、故障箇所の絞込みがより容易になる。更に、セル間の配線処理が行われると、図20Cに示されるレイアウトが得られる。
本実施の形態によれば、既出の実施の形態と同様の効果が得られる。更に、配線長が長く、配線内で故障箇所を特定することが困難な場合においても、複数の観測ポイントを設けることにより、故障の発見を容易にすることが可能となる。
5.第5の実施形態
図21は、第5の実施の形態に係る回路設計システム(故障解析容易化設計システム)の構成を示すブロック図である。本実施の形態に係る回路設計システムは、入力部101、記憶部103、回路配置部105、セル間距離抽出部107、故障候補抽出部109、判断部111、観測ポイント挿入部113、回路配線部115、出力部117、及び診断木作成部125を備えている。図21において、第1の実施の形態における構成と同様の構成には同一の符号が付されており、重複する説明は適宜省略される。
第5の実施の形態と第1の実施の形態との間で異なる点は、診断木作成部125が更に付け加えられていることである。診断木作成部125は、複数種のテストパタンを用いることによって、回路の「診断木」を作成する。作成された診断木を示す診断木データDIAGは、故障候補抽出部109に供給される。本実施の形態において、故障候補抽出部109は、その診断木データDIAGが示す診断木を参照することによって、ネットリストNETから等価故障群Gを抽出する。
図22は、本実施の形態に係る回路設計方法を示すフローチャートである。図22に示されるフローチャート及び図21に示された構成を参照しながら、本実施の形態に係る処理を更に詳しく説明する。尚、第1の実施の形態における処理と同様の処理に関する説明は、適宜省略される。
まず、ネットリストNETが入力され、記憶部103に格納される(ステップS201)。また、回路のテストパタンが、診断木作成部125に入力される(ステップS223)。次に、診断木作成部125は、ネットリストNETと入力されるテストパタンから回路の診断木を作成する(ステップS225)。「診断木」とは、回路内に存在する全故障候補について、各テストベクトルでの検出・非検出の組み合わせをツリー構造で表現したものである。
図23には、診断木の一例が示されている。図23に示される診断木の根には8個の故障候補a〜hが含まれている。この診断木には、テストベクトルt1によって、3個の故障a〜cが検出されるが、他の故障d〜hは検出されないことが表されている。同様に、テストベクトルt2によって、3個の故障a,b,dのみが検出され、他の故障は検出されないことが表現されている。よって、これらテストパタンt1、t2によって故障箇所が特定されるのは、故障cとdのみであることが分かる。故障a,bのいずれかに真の故障があった場合、故障箇所を特定することはできないので、故障a,bは等価故障となる。また、故障e,f,g,hも同様に等価故障となる。
このような診断木を示す診断木データDIAGが診断木作成部125によって作成される。次に、ステップS203において、故障候補抽出部109は、診断木データDIAGを参照することによって等価故障群G〜Gを抽出する。具体的には、図23に示されたような診断木において、二つ以上の故障が含まれる「葉」が探索される。1つの葉に複数の故障が含まれる場合、外部からの測定では故障箇所を特定することはできない。つまり、それら複数の故障が等価故障群となる。このようにして、故障候補抽出部109は、等価故障群を抽出し、故障候補データCANを生成する。
これ以降の手順は、第1の実施形態における手順と同じである。尚、本実施の形態を、第2〜第4の実施の形態と併用することも可能である。
本実施の形態によれば、既出の実施の形態と同様の効果が得られる。更に、次のような効果が得られる。例えば図5に示されるように、ある等価故障群に含まれる故障ノードは、同じ等価故障群に含まれる別の故障ノードと、1個の素子を隔てて隣接している。結果として、故障ノード群は塊状に配置されている。しかし、遅延の削減等のために冗長回路が使われていると、同じ等価故障群に属する故障ノードでも隣接して配置されない場合がある。回路図から等価故障を抽出する方法では、隣接配置されていない等価故障を見つけることはできず、観測ポイントを挿入することも出来ない。これに対し本実施の形態によれば、診断木を用いることにより、隣接配置されていない等価故障をも見つけることが可能になる。そのような等価故障群に観測ポイントを挿入することで、故障解析をより容易化することが可能になる。
尚、観測ポイント挿入位置の良し悪しはテストパタンにより変化する。故障をより細かく分解できるテストパタンを用いたほうが、故障解析容易性はより向上する。一般的に、選別に用いられるテストパタンに関しては、テスト時間短縮のためにパタン長が圧縮されており、故障分解能はそれほど高くない。パタン長を変えずに故障分解能を向上させる方法が、次の文献に紹介されている(Kohei Miyase and Seiji Kajihara, "XID: Don't Care Identification of Test Patterns for Combinational Circuits", IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 23, NO. 2, 2004)。このような方法でテストパタンの故障分解能を向上させるのも良い方法である。
6.第6の実施形態
本発明の第6の実施の形態において、回路の設計は、フィジカル・シンセシス手法に基づいて行われる。つまり、フィジカル・シンセシス設計においても、回路に観測ポイントを挿入し故障解析を容易化することが可能になる。
図24は、第6の実施の形態に係る回路設計システム(故障解析容易化設計システム)の構成を示すブロック図である。この回路設計システムは、入力部101、記憶部103、回路配置部105、セル間距離抽出部107、故障候補抽出部109、判断部111、観測ポイント挿入部113、回路配線部115、出力部117、論理合成部127、及び遅延見積もり部129を備えている。図24において、第1の実施の形態における構成と同様の構成には同一の符号が付されており、重複する説明は適宜省略される。
この回路設計システムの入力は、回路の論理・機能を示すRTL記述である。RTL記述は、HDL(Hardware Description Language)で記述されている。入力部101により入力されたRTL記述は、論理合成部127に供給される。論理合成部127は、RTL記述を論理合成することによってネットリストNETを作成し、そのネットリストNETを記憶部103に格納する。また、回路配置部105は、論理合成部127による論理合成の直後に、セル群の配置を行う。遅延見積もり部129は、セル間の距離情報から信号伝搬に要する時間を見積もる。見積もられた遅延時間を示す遅延時間データDLYは、論理合成部127にフィードバックされる。そして、その遅延時間データDLYは、論理合成により生成された回路が所望の遅延時間の範囲内で動作するか否かを検証するために用いられる。
図25は、本実施の形態に係る回路設計方法を示すフローチャートである。図25に示されるフローチャート及び図24に示された構成を参照しながら、本実施の形態に係る処理を更に詳しく説明する。尚、第1の実施の形態における処理と同様の処理に関する説明は、適宜省略される。
まず、HDLで記述されたRTL記述(HDLソース)が入力される(ステップS227)。次に、論理合成部127は、そのRTL記述の論理合成を行う(ステップS229)。ここで、一般的にフィジカル・シンセシス手法がそうであるように、回路全体の論理合成は一度に行われない。1個ないし少数の回路素子の論理合成がなされた後、処理は次のステップS205(セル配置処理)に移る。このように、回路の一部のRTL記述を論理合成することによって得られるネットリストは、以下、「部分ネットリストNET」と参照される。論理合成部127は、作成された部分ネットリストNETを回路配置部105に出力し、また、記憶部103に格納する。
次に、回路配置部105は、部分ネットリストNETを参照し、上記一部の回路に含まれるセル群の配置を行う(ステップS205)。これにより、そのセル群の配置を示す配置データARRが生成され、記憶部103に格納される。その後、第1の実施の形態と同様に、セル間距離抽出部107は、配置データARRに基づいてセル間距離を抽出し、セル間距離データDISを生成する(ステップS207)。また、故障候補抽出部109は、部分ネットリストNETを参照して等価故障群Gを抽出し、故障候補データCANを生成する(ステップS203)。
次に、判断部111の故障解析容易性評価部119は、上述の式(1)、(3)、(4)に基づいて確率P、パラメータD、及びパラメータMを算出する(ステップS209)。パラメータDは、等価故障群の各々の故障解析容易性を示し、パラメータMは、全ての等価故障群の故障解析容易性の合計を示している。配線長Lijは、第1の実施の形態と同様に、セル間距離データDISに基づいて概算される。一方、この時点では全ての回路の論理合成が完了していないため、式(1)に現れるLallは確定していない。この長さLallは、例えば、チップサイズ、メタル配線層の数及び配線幅といったパラメータから概算され得る。それらパラメータと長さLallとの間には、概ね一意の関係が存在すると考えられる。チップサイズやメタル配線の層数が大きいとLallは大きくなる。配線幅が狭くなってもLallは大きくなる。そのため、過去に設計完了した製品から上記パラメータとLallとの関係が予め分かっていれば、外挿によりLallを求めることが可能である。あるいは、一度フィジカル・シンセシスを用いない通常の論理合成と配置配線が行われ、その結果からLallが求められてもよい。ただし、最終的な観測ポイントの挿入数は、次のステップS231で調整可能なので、ここで求められるLallの精度は低くても良い。
次に、挿入位置決定部121は、各等価故障群Gに関して観測ポイントを挿入するか否かの判断を行う(ステップS231)。この判断は、上記ステップS209で求められたパラメータDが所定のしきい値を超えているか否かに基づいてなされる。パラメータDがしきい値を超えている場合(ステップS231;Yes)、第1の実施の形態と同様に、挿入位置決定部121は、観測ポイントが挿入される位置を決定し(ステップS211)、観測ポイント挿入部113は、決定された位置に観測ポイントを挿入する(ステップS213)。パラメータDがしきい値を超えていない場合(ステップS231;No)、処理はステップS233に進む。
上述のしきい値も、何らかの方法で事前に概算しておく必要がある。その概算のため、一度フィジカル・シンセシスを用いない通常の論理合成が行われてもよい。その後、第1の実施形態と同様に、セル群の配置が行われ、各等価故障群Gに対するパラメータDが求められる。ここで、仮に挿入される観測ポイントの数がn個であるとする。この時、パラメータDが大きい順にn個の等価故障群が抽出され、n個のパラメータDのうち最小値がしきい値に設定されればよい。また、最適なしきい値は、チップサイズ、メタル配線の層数及び配線幅と一意の関係になると推測されるので、過去に設計完了した製品のデータを用いた外挿により概算されてもよい。ただし、観測ポイントの挿入数は、故障解析容易性のほか、チップ面積や動作速度に与える影響も考慮して決定する必要があるので、しきい値の最適値はある程度試行錯誤して求める必要があると推測される。
次に、遅延見積もり部129は、セル間距離データDISに基づいて信号の遅延時間を見積もり、見積もられた遅延時間を示す遅延時間データDLYを生成する(ステップS233)。この機能は、フィジカル・シンセシス手法で回路設計を行うソフトウェアには標準的に含まれている機能であり、その詳しい説明は省略される。但し、ステップS213で観測ポイントが挿入された場合には、観測ポイント自体の負荷が遅延時間に与える影響も考慮する必要がある。
次に、全てのHDLソースの合成が完了したか否かの判断が行われる(ステップS235)。論理合成がなされていない回路の部分が存在する場合(ステップS235;No)、処理は上述のステップS229に戻る。ここで、上記ステップS233で生成された遅延時間データDLYが、論理合成部127にフィードバックされる。論理合成部127は、論理合成処理時に、遅延時間データDLYで示される遅延時間が所望の範囲に収まるか否か検証する。
全てのHDLソースの合成が完了すると(ステップS235;Yes)、回路配線部115は、ネットリストNET及び配置データARRに基づいて配線処理を行う(ステップS217)。これにより生成されるレイアウトデータLAYが、出力部117から出力される(ステップS219)。
尚、本実施の形態に係る概念は、既出の実施の形態と併用可能である。
このように、本発明に係る回路設計システムは、上記非特許文献2に記載されたフィジカル・シンセシス手法に基づいた回路設計にも適用され得る。比較として、上記非特許文献1に開示された技術によれば、回路内部の全ノードに観測ポイントが一旦挿入された後、観測ポイントが適宜除去されていく。従って、観測ポイントが挿入されるネットリストは、論理合成が全て完了したネットリストに限られる。よって、その従来技術を、論理合成とセル配置が同時に行われるフィジカル・シンセシス手法と併用することはできない。一方、本発明によれば、観測ポイントが挿入されるネットリストは、論理合成が全て完了したネットリストに限られない。一部だけ論理合成が行われたネットリストに対しても観測ポイントを挿入することが可能である。
7.回路設計プログラム
上記実施の形態に係る回路設計システムは、コンピュータ上で実現される。コンピュータ上での回路設計システムは、当業者により適宜構成され得る。図26には、そのシステム構成の一例が示されている。図26に示される回路設計システム1は、演算処理装置2、主記憶装置3、入力装置4、出力装置5、通信装置6、補助記憶装置7を備えている。また、回路設計システム1は、演算処理装置2によって実行されるコンピュータプログラムである回路設計プログラム10を含んでいる。
主記憶装置3としてRAMが例示される。主記憶装置3は上述の記憶部103に対応しており、この主記憶装置3にはネットリストNETやレイアウトデータLAYが格納される。入力装置4としては、キーボードやマウスが例示される。入力装置4は上述の入力部101に対応しており、ユーザは、この入力装置4を用いることによってネットリストNETの入力やデータの編集を行うことができる。出力装置5としては、ディスプレイやプリンタが例示される。出力装置5は上述の出力部117に対応しており、レイアウトデータLAYで示されるレイアウトは、ディスプレイに表示されたり、プリンタから出力されたりする。通信装置6としてはネットワークインターフェースカードが例示される。この通信装置6を介して、別のコンピュータシステムとの間でデータがやりとりされてもよい。補助記憶装置7として、光磁気ディスクや磁気テープが例示される。データ入出力は、この補助記憶装置7に対して行われてもよい。
回路設計プログラム10は、コンピュータが読み取り可能な記録媒体に記録されている。その回路設計プログラム10は、既出の実施の形態で示された回路設計処理をコンピュータに実行させる。
8.まとめ
本発明に係る回路設計システム及び回路設計プログラムによれば、観測ポイントが挿入される位置が最適化される。そのため、挿入される観測ポイント数が少なくても、故障解析の容易性が向上する。つまり、より少ない観測ポイントで、効率よく故障解析を容易化することが可能となる。また、本発明をフィジカル・シンセシス設計手法に適用することも可能である。すなわち、フィジカル・シンセシス設計手法の場合であっても、観測ポイントを挿入することにより、故障解析の容易化を実現することが可能となる。
本発明は、例えば、半導体集積回路のうちCMOS論理回路の故障解析容易性を向上させるために用いられる。また、バイポーラ、NMOS、化合物半導体素子等で構成された論理回路の場合にも、本発明を適用することが可能である。更に、本発明は、半導体集積回路以外にも、配線層の多層化が近年著しいプリント配線板の故障解析容易性を向上させるために用いられてもよい。更に、本発明は、光スイッチ素子を用いた光論理回路など、あらゆる種類の論理回路の故障解析容易化に適用され得る。
図1は、従来の回路設計システムの構成を示すブロック図である。 図2は、一般的なフィジカル・シンセシス設計手法を示すフローチャートである。 図3は、本発明の第1の実施形態に係る回路設計システムの構成を示すブロック図である。 図4は、第1の実施の形態に係る回路設計方法を示すフローチャートである。 図5は、等価故障群を説明するための図である。 図6は、観測ポイントが挿入される位置を決定する方法を説明するための回路図である。 図7は、図6に示された回路に観測ポイントが挿入された際の故障解析容易性の変化を示す表である。 図8は、観測ポイントが挿入される位置を決定する方法を説明するための他の回路図である。 図9は、図8に示された回路に観測ポイントが挿入された際の故障解析容易性の変化を示す表である。 図10は、観測ポイントが挿入される位置を決定する方法を説明するための更に他の回路図である。 図11は、図10に示された回路に観測ポイントが挿入された際の故障解析容易性の変化を示す表である。 図12は、回路内部の電位を外部に出力する方法の一例を説明するための回路図である。 図13は、挿入される観測ポイントの数と故障解析容易性Mとの関係を示すグラフである。 図14は、本発明の第2の実施形態に係る回路設計システムの構成を示すブロック図である。 図15は、第2の実施形態に係る回路設計方法を示すフローチャートである。 図16は、本発明の第3の実施形態に係る回路設計システムの構成を示すブロック図である。 図17は、第3の実施形態に係る回路設計方法を示すフローチャートである。 図18は、集積回路を構成する要素ごとに求められた故障発生確率を示す表である。 図19は、各等価故障群に図18で示された構造がどれだけ含まれているかを示す表である。 図20Aは、本発明の第4の実施形態に係る処理を説明するための回路図である。 図20Bは、第4の実施形態に係る処理を説明するための回路図である。 図20Cは、第4の実施形態に係る処理を説明するための回路図である。 図21は、本発明の第5の実施形態に係る回路設計システムの構成を示すブロック図である。 図22は、第5の実施形態に係る回路設計方法を示すフローチャートである。 図23は、回路の診断木の例を示す模式図である。 図24は、本発明の第6の実施形態に係る回路設計システムの構成を示すブロック図である。 図25は、第6の実施形態に係る回路設計方法を示すフローチャートである。 図26は、本発明に係る回路設計システムの一例を示すブロック図である。
符号の説明
1 回路設計システム
2 演算処理装置
3 主記憶装置
4 入力装置
5 出力装置
6 通信装置
7 補助記憶装置
10 回路設計プログラム
101 入力部
103 記憶部
105 回路配置部
107 セル間距離抽出部
109 故障候補抽出部
111 判断部
113 観測ポイント挿入部
115 回路配線部
117 出力部
119 故障解析容易性評価部
121 挿入位置決定部
123 構造抽出部
125 診断木作成部
127 論理合成部
129 遅延見積もり部
135 レイアウト部
301 NOR素子
303 NAND素子
305,307,309,311,313 ノード
401 入力端子
403 インバータ素子
405 出力端子
407 観測ポイント挿入位置
801 NAND素子
803 ゲート素子
805 回路
807 マルチプレクサ
809 Dフリップフロップ
811 出力端子
901 NAND素子
903 NOR素子
905 観測ポイント
ARR 配置データ
CAN 故障候補データ
DIAG 診断木データ
DIS セル間距離データ
DLY 遅延時間データ
LAY レイアウトデータ
NET ネットリスト
PNT 観測ポイント挿入位置データ

Claims (28)

  1. 回路の接続情報を示すネットリストが格納される記憶部と、
    前記回路中の部分であって外部測定によって検知できるが故障箇所の特定ができない部分である等価故障群G〜G(Iは、1以上の整数)を前記ネットリストから抽出し、前記等価故障群G(iは1以上I以下の整数)を示す故障候補データを生成する故障候補抽出部と、
    前記故障候補データで示される前記等価故障群Gに含まれる複数のノードNi1〜NiJi(Jは等価故障群Gに含まれるノード数)のうち、故障解析に用いられる少なくとも1つの観測ポイントが挿入される対象ノードを決定する判断部と、
    前記対象ノードに前記少なくとも1つの観測ポイントを挿入することによって、前記ネットリストを更新する観測ポイント挿入部と
    を備え、
    前記判断部は、前記ノード数Jに基づいて、前記対象ノードを決定する
    回路設計システム。
  2. 請求項1に記載の回路設計システムであって、
    前記等価故障群Gに故障が含まれる確率がPであるとき、
    前記等価故障群Gに対するパラメータDが、次式:
    =J・P
    で定義され、
    前記判断部は、全ての等価故障群G〜Gに対する前記パラメータDの和Mが小さくなるように、前記対象ノードを決定する
    回路設計システム。
  3. 請求項2に記載の回路設計システムであって、
    前記判断部は、前記観測ポイントの挿入による前記和Mの減少率が最大となるように、前記対象ノードを決定する
    回路設計システム。
  4. 請求項2又は3に記載の回路設計システムであって、
    前記判断部は、最大のパラメータDを有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから、前記対象ノードを選択する
    回路設計システム。
  5. 請求項2又は3に記載の回路設計システムであって、
    前記判断部は、最大のノード数Jを有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから、前記対象ノードを選択する
    回路設計システム。
  6. 請求項2又は3に記載の回路設計システムであって、
    前記判断部は、最大の配線長を有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから、前記対象ノードを選択する
    回路設計システム。
  7. 請求項4乃至6のいずれかに記載の回路設計システムであって、
    前記1つの等価故障群Gは前記観測ポイントによって第1等価故障群Gi−1と第2等価故障群Gi−2に分割され、
    前記判断部は、前記第1等価故障群Gi−1に対する前記パラメータDi−1と前記第2等価故障群Gi−2に対する前記パラメータDi−2が最も近くなるように、前記対象ノードを決定する
    回路設計システム。
  8. 請求項2乃至7のいずれかに記載の回路設計システムであって、
    前記複数のノードNi1〜NiJiのそれぞれの配線長がLi1〜LiJiで表されるとき、
    前記判断部は、前記等価故障群Gの前記配線長Lij(jは1以上J以下の整数)の和に依存する量を、前記確率Pとして算出する
    回路設計システム。
  9. 請求項2乃至7のいずれかに記載の回路設計システムであって、
    前記判断部は、前記等価故障群Gの前記ノード数Jに依存する量を、前記確率Pとして算出する
    回路設計システム。
  10. 請求項2乃至7のいずれかに記載の回路設計システムであって、
    前記ネットリストを参照して前記回路のレイアウトを決定し、前記レイアウトを示すレイアウトデータを生成するレイアウト部を更に備え、
    前記判断部は、前記レイアウトデータ及び前記故障候補データを参照して、前記等価故障群Gに構造X〜X(Kは1以上の整数)のそれぞれがどれだけ含まれているか示すパラメータS1i〜SKiを算出し、前記パラメータSki(kは1以上K以下の整数)に基づいて前記確率Pを算出する
    回路設計システム。
  11. 請求項1乃至10のいずれかに記載の回路設計システムであって、
    前記ネットリスト及びテストパタンを用いることによって、前記回路の診断木を示す診断木データを作成する診断木作成部を更に供え、
    前記故障候補抽出部は、前記診断木データを参照することによって、前記ネットリストから前記等価故障群G〜Gを抽出する
    回路設計システム。
  12. 請求項2乃至7のいずれかに記載の回路設計システムであって、
    前記回路の設計は、フィジカル・シンセシス手法により行われる
    回路設計システム。
  13. 請求項12に記載の回路設計システムであって、
    前記回路の一部のRTL記述を論理合成することによって部分ネットリストを作成し、前記部分ネットリストを前記ネットリストとして前記記憶部に格納する論理合成部と、
    前記部分ネットリストを参照して前記一部の回路に含まれるセル群の配置を行い、前記セル群の配置を示す配置データを生成する配置部と、
    前記配置データに基づいてセル間の距離を抽出し、前記セル間の距離を示す距離データを生成する距離抽出部と
    を更に備え、
    前記複数のノードNi1〜NiJiのそれぞれの配線長がLi1〜LiJiで表されるとき、
    前記判断部は、前記距離データを参照し前記セル間の距離を前記配線長Lij(jは1以上J以下の整数)として設定し、前記等価故障群Gの前記配線長Lijの和に依存する量を前記確率Pとして算出する
    回路設計システム。
  14. 請求項1乃至13のいずれかに記載の回路設計システムであって、
    前記対象ノードは、集積回路外部への出力端子に電気的に接続される
    回路設計システム。
  15. コンピュータが読み取り可能な記録媒体に記録され、実行されたとき、コンピュータに回路設計処理を実行させる回路設計プログラムであって、
    前記回路設計処理は、
    (A)回路の接続情報を示すネットリストを記憶装置から読み出すステップと、
    (B)前記回路中の部分であって外部測定によって検知できるが故障箇所の特定ができない部分である等価故障群G〜G(Iは、1以上の整数)を前記ネットリストから抽出するステップと、
    (C)前記等価故障群G(iは1以上I以下の整数)に含まれる複数のノードNi1〜NiJi(Jは等価故障群Gに含まれるノード数)のうち、故障解析に用いられる少なくとも1つの観測ポイントが挿入される対象ノードを、前記ノード数Jに基づいて決定するステップと、
    (D)前記対象ノードに前記少なくとも1つの観測ポイントを挿入することによって、前記ネットリストを更新するステップと
    を有する
    回路設計プログラム。
  16. 請求項15に記載の回路設計プログラムであって、
    前記等価故障群Gに故障が含まれる確率がPであるとき、
    前記等価故障群Gに対するパラメータDが、次式:
    =J・P
    で定義され、
    前記(C)ステップは、全ての等価故障群G〜Gに対する前記パラメータDの和Mが小さくなるように前記対象ノードを決定するステップを含む
    回路設計プログラム。
  17. 請求項16に記載の回路設計プログラムであって、
    前記(C)ステップは、前記観測ポイントの挿入による前記和Mの減少率が最大となるように前記対象ノードを決定するステップを含む
    回路設計プログラム。
  18. 請求項16又は17に記載の回路設計プログラムであって、
    前記(C)ステップにおいて、前記対象ノードは、最大のパラメータDを有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから選択される
    回路設計プログラム。
  19. 請求項16又は17に記載の回路設計プログラムであって、
    前記(C)ステップにおいて、前記対象ノードは、最大のノード数Jを有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから選択される
    回路設計プログラム。
  20. 請求項16又は17に記載の回路設計プログラムであって、
    前記(C)ステップにおいて、前記対象ノードは、最大の配線長を有する1つの等価故障群Gに含まれる前記複数のノードNi1〜NiJiから選択される
    回路設計プログラム。
  21. 請求項18乃至20のいずれかに記載の回路設計プログラムであって、
    前記1つの等価故障群Gは前記観測ポイントによって第1等価故障群Gi−1と第2等価故障群Gi−2に分割され、
    前記(C)ステップは、前記第1等価故障群Gi−1に対する前記パラメータDi−1と前記第2等価故障群Gi−2に対する前記パラメータDi−2が最も近くなるように、前記対象ノードを決定するステップを含む
    回路設計プログラム。
  22. 請求項16乃至21のいずれかに記載の回路設計プログラムであって、
    前記複数のノードNi1〜NiJiのそれぞれの配線長がLi1〜LiJiで表されるとき、
    前記(C)ステップは、前記等価故障群Gの前記配線長Lij(jは1以上J以下の整数)の和に依存する量を前記確率Pとして算出するステップを含む
    回路設計プログラム。
  23. 請求項16乃至21のいずれかに記載の回路設計プログラムであって、
    前記(C)ステップは、前記等価故障群Gの前記ノード数Jに依存する量を前記確率Pとして算出するステップを含む
    回路設計プログラム。
  24. 請求項16乃至21のいずれかに記載の回路設計プログラムであって、
    前記回路設計処理は、
    (G)前記ネットリストを参照して前記回路のレイアウトを決定するステップ
    を更に有し、
    前記(C)ステップは、
    (C1)前記レイアウトを参照することにより、前記等価故障群Gに構造X〜X(Kは1以上の整数)のそれぞれがどれだけ含まれているか示すパラメータS1i〜SKiを算出するステップと、
    (C2)前記パラメータSki(kは1以上K以下の整数)に基づいて前記確率Pを算出するステップと
    を含む
    回路設計プログラム。
  25. 請求項15乃至24のいずれかに記載の回路設計プログラムであって、
    前記回路設計処理は、
    (H)前記ネットリスト及びテストパタンを用いることによって、前記回路の診断木を作成するステップ
    を更に有し、
    前記(B)ステップは、前記回路の診断木を参照することによって、前記ネットリストから前記等価故障群G〜Gを抽出するステップを含む
    回路設計プログラム。
  26. 請求項16乃至21のいずれかに記載の回路設計プログラムであって、
    前記回路設計処理は、フィジカル・シンセシス手法により行われる
    回路設計プログラム。
  27. 請求項26に記載の回路設計プログラムであって、
    前記回路設計処理は、
    (I)前記回路の一部のRTL記述を論理合成することによって部分ネットリストを作成し、前記部分ネットリストを前記ネットリストとして前記記憶装置に格納するステップと、
    (J)前記部分ネットリストを参照して前記一部の回路に含まれるセル群の配置を行うステップと、
    (K)前記セル群の配置に基づいてセル間の距離を抽出するステップと
    を更に有し、
    前記複数のノードNi1〜NiJiのそれぞれの配線長がLi1〜LiJiで表されるとき、
    前記(C)ステップは、前記セル間の距離を前記配線長Lij(jは1以上J以下の整数)として設定し、前記等価故障群Gの前記配線長Lijの和に依存する量を前記確率Pとして算出するステップを含む
    回路設計プログラム。
  28. 請求項15乃至27のいずれかに記載の回路設計プログラムであって、
    前記回路設計処理は、
    (P)前記ネットリストに基づいて前記回路の配線を決定することにより、前記回路のレイアウトを示すレイアウトデータを生成するステップを更に有し、
    前記(P)ステップにおいて、前記対象ノードが集積回路外部への出力端子に電気的に接続される
    回路設計プログラム。
JP2005313953A 2005-10-28 2005-10-28 回路設計システム及び回路設計プログラム Expired - Fee Related JP4711801B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005313953A JP4711801B2 (ja) 2005-10-28 2005-10-28 回路設計システム及び回路設計プログラム
US11/588,372 US7600203B2 (en) 2005-10-28 2006-10-27 Circuit design system and circuit design program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005313953A JP4711801B2 (ja) 2005-10-28 2005-10-28 回路設計システム及び回路設計プログラム

Publications (2)

Publication Number Publication Date
JP2007122422A JP2007122422A (ja) 2007-05-17
JP4711801B2 true JP4711801B2 (ja) 2011-06-29

Family

ID=38042351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005313953A Expired - Fee Related JP4711801B2 (ja) 2005-10-28 2005-10-28 回路設計システム及び回路設計プログラム

Country Status (2)

Country Link
US (1) US7600203B2 (ja)
JP (1) JP4711801B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170087354A (ko) * 2016-01-20 2017-07-28 삼성전자주식회사 시뮬레이션 시간을 단축할 수 있는 반도체 집적 회로의 신뢰성 불량률 예측 방법 및 그 장치

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2866435B1 (fr) * 2004-02-13 2008-04-04 Inst Nat Polytech Grenoble Procede d'elaboration automatique de fichiers de description hdl de systeme electronique digital integre et systeme digital elecronique integre obtenu
JP2008153489A (ja) * 2006-12-19 2008-07-03 Nec Electronics Corp 半導体集積回路の設計方法及び設計プログラム
US8661380B1 (en) * 2008-02-19 2014-02-25 Altera Corporation Method and apparatus for performing parallel synthesis on a field programmable gate array
JP5129720B2 (ja) 2008-11-05 2013-01-30 ルネサスエレクトロニクス株式会社 故障解析容易化設計を行うための回路設計装置
JP5492429B2 (ja) * 2009-03-05 2014-05-14 ルネサスエレクトロニクス株式会社 回路設計支援装置、回路設計支援方法、プログラム
JP2011112434A (ja) * 2009-11-25 2011-06-09 Renesas Electronics Corp 論理回路用テストポイント挿入方法、論理回路試験装置
US8704577B2 (en) * 2011-05-27 2014-04-22 Drexel University Clock mesh synthesis with gated local trees and activity driven register clustering
JP5644899B1 (ja) 2013-06-14 2014-12-24 日本電気株式会社 回路検証装置、回路検証方法および回路検証プログラム
US9390219B2 (en) * 2014-05-30 2016-07-12 Taiwan Semiconductor Manufacturing Company, Ltd System for and method of semiconductor fault detection
US10303839B2 (en) * 2016-06-07 2019-05-28 Kla-Tencor Corporation Electrically relevant placement of metrology targets using design analysis
EP3385735B1 (en) * 2017-04-04 2019-12-04 Secure-IC SAS Device and method for detecting points of failures
US10353789B1 (en) * 2018-01-31 2019-07-16 Mentor Graphics Corporation Analog fault simulation control with multiple circuit representations
CN108650437A (zh) * 2018-06-07 2018-10-12 华南理工大学 基于its-vlc的像素间干扰消除方法及其系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000002756A (ja) * 1998-06-18 2000-01-07 Hitachi Ltd 論理回路検査点解析装置,解析方法
JP2000250946A (ja) * 1999-02-25 2000-09-14 Toshiba Corp Lsi回路のテスト容易化設計方法および装置ならびにテスト容易化設計処理プログラムを記録したコンピュータ読取り可能な記録媒体
JP2004185550A (ja) * 2002-12-06 2004-07-02 Matsushita Electric Ind Co Ltd 半導体集積回路のテスト容易化設計方法および装置
JP2004220447A (ja) * 2003-01-16 2004-08-05 Toshiba Corp 故障検出率算出装置及び故障検出率算出方法
JP2004227517A (ja) * 2003-01-27 2004-08-12 Matsushita Electric Ind Co Ltd 論理合成装置および論理合成方法
JP2005135226A (ja) * 2003-10-31 2005-05-26 Matsushita Electric Ind Co Ltd 半導体集積回路のテスト回路挿入方法及び装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638380A (en) * 1996-03-14 1997-06-10 Lsi Logic Corp. Protecting proprietary asic design information using boundary scan on selective inputs and outputs
US6072179A (en) * 1998-08-07 2000-06-06 Intel Corporation Method and apparatus using an infrared laser based optical probe for measuring voltages directly from active regions in an integrated circuit
US6311317B1 (en) * 1999-03-31 2001-10-30 Synopsys, Inc. Pre-synthesis test point insertion
JP2001014370A (ja) 1999-06-30 2001-01-19 Toshiba Microelectronics Corp 回路設計装置、回路設計方法および回路設計プログラムを格納したコンピュータ読み取り可能な記録媒体
JP2001337143A (ja) * 2000-05-30 2001-12-07 Nec Corp 論理回路における故障箇所推定システム、及び、故障箇所推定方法、並びに、記録媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000002756A (ja) * 1998-06-18 2000-01-07 Hitachi Ltd 論理回路検査点解析装置,解析方法
JP2000250946A (ja) * 1999-02-25 2000-09-14 Toshiba Corp Lsi回路のテスト容易化設計方法および装置ならびにテスト容易化設計処理プログラムを記録したコンピュータ読取り可能な記録媒体
JP2004185550A (ja) * 2002-12-06 2004-07-02 Matsushita Electric Ind Co Ltd 半導体集積回路のテスト容易化設計方法および装置
JP2004220447A (ja) * 2003-01-16 2004-08-05 Toshiba Corp 故障検出率算出装置及び故障検出率算出方法
JP2004227517A (ja) * 2003-01-27 2004-08-12 Matsushita Electric Ind Co Ltd 論理合成装置および論理合成方法
JP2005135226A (ja) * 2003-10-31 2005-05-26 Matsushita Electric Ind Co Ltd 半導体集積回路のテスト回路挿入方法及び装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170087354A (ko) * 2016-01-20 2017-07-28 삼성전자주식회사 시뮬레이션 시간을 단축할 수 있는 반도체 집적 회로의 신뢰성 불량률 예측 방법 및 그 장치
KR102424369B1 (ko) 2016-01-20 2022-07-22 삼성전자주식회사 시뮬레이션 시간을 단축할 수 있는 반도체 집적 회로의 신뢰성 불량률 예측 방법 및 그 장치

Also Published As

Publication number Publication date
JP2007122422A (ja) 2007-05-17
US7600203B2 (en) 2009-10-06
US20070113127A1 (en) 2007-05-17

Similar Documents

Publication Publication Date Title
JP4711801B2 (ja) 回路設計システム及び回路設計プログラム
US7308660B2 (en) Calculation system of fault coverage and calculation method of the same
US7971176B2 (en) Method for testing integrated circuits
US8082534B2 (en) Apparatus and method for calculating fault coverage, and fault detection method
Keim et al. A rapid yield learning flow based on production integrated layout-aware diagnosis
JP4881332B2 (ja) 半導体集積回路のテスト品質評価装置、および半導体集積回路のテスト品質評価方法
JP6036134B2 (ja) 設計支援装置、設計支援方法、および設計支援プログラム
JP5129720B2 (ja) 故障解析容易化設計を行うための回路設計装置
US8347260B2 (en) Method of designing an integrated circuit based on a combination of manufacturability, test coverage and, optionally, diagnostic coverage
JPH11142482A (ja) タイミング故障診断方法及び装置
JP4936367B2 (ja) 回路設計プログラム及び回路設計システム
US10776558B2 (en) Testing system and testing method
Chaudhuri et al. NodeRank: Observation-point insertion for fault localization in monolithic 3D ICs
Sethuram et al. Zero cost test point insertion technique to reduce test set size and test generation time for structured ASICs
Maynard et al. Measurement and reduction of critical area using Voronoi diagrams
CN114930339A (zh) 利用cad数据与发射显微镜图像相结合的发射位点之间的相关性
Al-Terkawi Hasib et al. Multi-PVT-point analysis and comparison of recent small-delay defect quality metrics
JP2008153489A (ja) 半導体集積回路の設計方法及び設計プログラム
US8413092B2 (en) Circuit design supporting apparatus and circuit design supporting method
JP2012073148A (ja) 故障診断装置、故障診断方法、及び故障診断プログラム
Hariri et al. 3DSDM: A 3 data-source diagnostic method
Pomeranz et al. Forward-Looking Reverse Order Fault Simulation for $ n $-Detection Test Sets
JP2004185550A (ja) 半導体集積回路のテスト容易化設計方法および装置
Meza-Ibarra et al. Identification of logic paths influenced by severe coupling capacitances
Lim et al. Cell-Aware Scan Diagnosis Using Partially Synchronous Set and Reset

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100915

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110322

LAPS Cancellation because of no payment of annual fees