(57)【要約】【課題】ＬＳＩのテストにおいて微小遅延故障の見逃しを削減すること。【解決手段】本発明によれば、ＴＰＩ（Test Point Insertion）手法に基づく半導体集積回路の設計方法が提供される。その設計方法は、（Ａ）設計回路中の対象ノードに対してテストポイントを挿入するステップと、（Ｂ）そのテストポイントにつながるパス（テストポイントパス）に対して遅延時間を指定するステップと、（Ｃ）そのテストポイントパスの遅延時間が上記指定された遅延時間になるように、設計回路のレイアウトを行なうステップと、を有する。【選択図】図４
2008153489.tif 000002
【特許請求の範囲】
【請求項１】
ＴＰＩ（Test Point Insertion）手法に基づく半導体集積回路の設計方法であって、
（Ａ）設計回路中の対象ノードに対してテストポイントを挿入するステップと、
（Ｂ）前記テストポイントにつながるパスであるテストポイントパスに対して遅延時間を指定するステップと、
（Ｃ）前記テストポイントパスの遅延時間が前記指定された遅延時間になるように、前記設計回路のレイアウトを行なうステップと
を有する
半導体集積回路の設計方法。
【請求項２】
請求項１に記載の半導体集積回路の設計方法であって、
前記（Ｂ）ステップにおいて、前記テストポイントパスの遅延時間は、前記対象ノードを通るパスの遅延時間のうち最大となるように指定される
半導体集積回路の設計方法。
【請求項３】
請求項２に記載の半導体集積回路の設計方法であって、
前記（Ｂ）ステップにおいて、前記テストポイントパス以外で前記対象ノードを通るパスの遅延時間のうち最大のものが、前記テストポイントパスの遅延時間として指定される
半導体集積回路の設計方法。
【請求項４】
請求項２に記載の半導体集積回路の設計方法であって、
前記（Ｂ）ステップにおいて、遅延テスト時のクロック周期が、前記テストポイントパスの遅延時間として指定される
半導体集積回路の設計方法。
【請求項５】
請求項２に記載の半導体集積回路の設計方法であって、
前記（Ｂ）ステップにおいて、遅延テスト時のクロック周期以下のある範囲が、前記テストポイントパスの遅延時間として指定される
半導体集積回路の設計方法。
【請求項６】
請求項１乃至５のいずれかに記載の半導体集積回路の設計方法であって、
前記（Ａ）ステップにおいて、前記テストポイントは、前記設計回路中の複数の対象ノードに対して共通に挿入され、
前記（Ｂ）ステップにおいて、前記複数の対象ノードのそれぞれを通って前記テストポイントにつながる複数のパスのそれぞれに対して、前記遅延時間が別々に指定される
半導体集積回路の設計方法。
【請求項７】
請求項６に記載の半導体集積回路の設計方法であって、
前記（Ａ）ステップにおいて、前記テストポイントは、ＸＯＲゲートを介して前記複数の対象ノードのそれぞれと接続される
半導体集積回路の設計方法。
【請求項８】
請求項１乃至７のいずれかに記載の半導体集積回路の設計方法であって、
前記（Ｂ）ステップにおいて、前記指定された遅延時間を示す遅延指定ファイルが作成され、
前記（Ｃ）ステップにおいて、前記遅延指定ファイルを参照することにより前記設計回路のレイアウトが行われる
半導体集積回路の設計方法。
【請求項９】
コンピュータが読取可能な設計プログラムであって、
請求項１乃至８のいずれかに記載の半導体集積回路の設計方法をコンピュータに実行させる
設計プログラム。
【請求項１０】
ＴＰＩ（Test Point Insertion）手法に基づく半導体集積回路の設計処理をコンピュータに実行させる設計プログラムであって、
前記設計処理は、
（ａ）設計回路中の対象ノードに対してテストポイントを挿入し、前記テストポイントが挿入されたネットリストを作成するステップと、
（ｂ）前記テストポイントにつながるパスの遅延時間を指定するファイルであって、前記ネットリストが示す前記設計回路のレイアウト時に参照される遅延指定ファイルを作成するステップと
を含む
設計プログラム。
【請求項１１】
半導体集積回路のレイアウト処理をコンピュータに実行させるレイアウトプログラムであって、
前記レイアウト処理は、
（Ｘ）テストポイントが挿入されたネットリストを記憶装置から読み込むステップと、
（Ｙ）所定の遅延時間を指定する遅延設計ファイルを記憶装置から読み込むステップと、
（Ｚ）前記ネットリスト中の前記テストポイントを認識し、前記テストポイントにつながるパスの遅延時間が前記遅延設計ファイルで指定された前記所定の遅延時間になるように、レイアウトを行なうステップと
を含む
レイアウトプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計技術に関する。特に、本発明は、テストポイント挿入（Test Point Insertion）法を用いた半導体集積回路の設計技術に関する。
【背景技術】
【０００２】
半導体集積回路の製造後、製品中に遅延故障（delay fault）や縮退故障（stuck-at fault）が発生しているか否かを確認するためにテストを行なう必要がある。そのテスト時のテスタビリティを高めることができるテスト回路を、設計段階で予め組み込んでおく設計技術が知られている。そのような設計技術は、「テスト容易化設計（ＤＦＴ： Design For Testability）」と呼ばれている。
【０００３】
テスト容易化設計の一手法として、「スキャン設計」が知られている（例えば、特許文献１、特許文献２を参照）。スキャン設計によれば、設計回路内のフリップフロップの全て又は一部が、スキャンフリップフロップに置き換えられる。テスト時、それらスキャンフリップフロップはあるスキャンパスを構成することができる。そのスキャンパスを通してテストパタンを入力及び出力することにより、スキャンテストが行なわれる。テストパタンは、ＡＴＰＧ（Automatic Test Pattern Generator）によって自動的に生成される。
【０００４】
テストを更に容易化するための手法として、「テストポイント挿入（ＴＰＩ： Test Point Insertion）」が知られている（例えば、特許文献３、特許文献４を参照）。テストポイント挿入によれば、テスト時の信号の制御性（controllability）や観測性（observability）を向上させるために、設計回路中のあるノードに対してテストポイントが挿入される。
【０００５】
また最近、「微小遅延故障（small delay defect）」が着目されている（非特許文献１参照）。市場からの大規模化、高速化の要求や、製造プロセスにおける配線やゲートの微細化が進むと、設計値からのわずかな逸脱がクリティカルパスに存在すると動作不良が発生する。つまり、回路の高速化、大規模化、微細化に伴い、微小遅延故障に起因する動作不良が増加してきている。テストにおいては、微小遅延故障を見逃すことなく精度良く検出することが重要である。
【０００６】
【特許文献１】特開２００２−２７７５１５号公報
【特許文献２】特開２００６−４５０９号公報
【特許文献３】特開２０００−２５０９４６号公報
【特許文献４】特開２００５−１３５２２６号公報
【非特許文献１】Y. Sato, S. Hamada, T. Maeda, A. Takatori, Y. Nozuyama, and S. Kajihara, "Invisible Delay Quality - SDQM Model Lights Up What Could Not Be Seen", IEEE International Test Conference, Page 47.1, Nov. 2005.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来の設計技術に関して、本願発明者は次の点に着目した。
【０００８】
図１は、本発明の課題を説明するための回路図であり、従来のスキャン設計に基づく設計回路の一例を示している。図１に示された設計回路は、フリップフロップ（スキャンフリップフロップ）ＦＦ１〜ＦＦ４を含んでいる。フリップフロップＦＦ１からフリップフロップＦＦ３へのパスＰ１の遅延時間は６ｎｓである。フリップフロップＦＦ１からフリップフロップＦＦ４へのパスＰ２の遅延時間は８ｎｓである。フリップフロップＦＦ２からフリップフロップＦＦ３へのパスＰ３の遅延時間は３ｎｓである。フリップフロップＦＦ２からフリップフロップＦＦ４へのパスＰ４の遅延時間は５ｎｓである。パスＰ１〜Ｐ４のうち遅延時間が最大であるパス（以下、「最長パス」と参照される）は、パスＰ２である。ここで、図１に示されたノードＴＮにおいて微小遅延故障が発生しているとする。
【０００９】
図２は、遅延テストに用いられるパスと見逃される微小遅延故障の大きさ（tdefect）との対応関係を示している。ここで、システムクロック周期は９ｎｓであるとする。最長パスＰ２の遅延時間は８ｎｓなので、１ｎｓ以下の故障が発生してもシステム動作に影響を与えない。このようにシステム動作に影響を与えない故障は、タイミング冗長故障と呼ばれる。パスＰ１が用いられる場合、遅延故障の大きさが３ｎｓ未満であれば、クロック周期（９ｎｓ）内に信号は伝達される。従って、その遅延故障は遅延テストにおいて検出されず、見逃されてしまう。より詳細には、パスＰ１が用いられる場合、１ｎｓ〜３ｎｓの大きさの遅延故障が見逃されてしまう。同様に、パスＰ４が用いられる場合、１ｎｓ〜４ｎｓの大きさの遅延故障が見逃されてしまう。同様に、パスＰ３が用いられる場合、１ｎｓ〜６ｎｓの大きさの遅延故障が見逃されてしまう。一方、最長パスＰ２が用いられる場合、遅延故障は正常に検出され、見逃しは発生しない。
【００１０】
このように、遅延テストにおいて微小遅延故障を見逃さないためには、なるべく長いパスを用いることが好適である。図１及び図２に示された例では、最長パスＰ２を用いることが好適である。しかしながら、どのパスが遅延テストに用いられるかはＡＴＰＧ次第であり、一般的には比較的短いパスが用いられる傾向がある。よって、微小遅延故障が見逃される可能性が高い。最長パスが選択されるように、ＡＴＰＧを改良することも考えられる。但し、最長パスを用いた故障検出を実現するためには、テストパタンは非常に複雑にならざるを得ない。そのようなテストパタンの生成は困難であり、また、パタン数の増加に伴い、遅延テストに要する時間が増え、テストコストは増大する。
【００１１】
また、図３は、従来のＴＰＩ手法に基づく設計回路の一例を示している。図３において、図１で示された設計回路中のノードＴＮに対してテストポイントＴＰ（観測フリップフロップ）が挿入されている。フリップフロップＦＦ１からテストポイントＴＰへのパスは、以下「テストポイントパスＰＴ」と参照される。テストポイントパスＰＴはノードＴＮを含んでおり、遅延テストにおいてはこのテストポイントパスＰＴが用いられる。
【００１２】
従来のＴＰＩ手法では、テストポイントＴＰは、観測性、制御性を向上させるためだけに挿入される。テストポイントパスＰＴに関してセットアップ制約とホールド制約が満たされていれば十分であり、テストポイントパスＰＴは一般的に短く設計される。従って、ほとんどの場合、テストポイントパスＰＴは最長パスＰ２より短くなる。よって、微小遅延故障が見逃される可能性が高い。
【００１３】
以上に説明されたように、従来の設計技術では、遅延テストにおいて微小遅延故障が見逃される可能性が極めて高かった。それは、従来の設計技術が、微小遅延故障の検出に対応していなかったからである。微小遅延故障が見逃されると、市場での不良発生率が増大してしまう。それは、製品の信頼性の低下につながる。
【課題を解決するための手段】
【００１４】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、［課題を解決するための手段］を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１５】
本発明によれば、ＴＰＩ手法に基づく半導体集積回路の設計方法が提供される。その設計方法は、（Ａ）設計回路中の対象ノード（ＴＮ）に対してテストポイント（ＴＰ）を挿入するステップと、（Ｂ）そのテストポイント（ＴＰ）につながるパスであるテストポイントパス（ＰＴ）に対して遅延時間を指定するステップと、（Ｃ）上記テストポイントパス（ＰＴ）の遅延時間が上記指定された遅延時間になるように、設計回路のレイアウトを行なうステップと、を有する。
【００１６】
このように、本発明によれば、テストポイントパス（ＰＴ）における遅延時間を能動的に指定することが可能である。つまり、テストポイントパス（ＰＴ）における遅延時間を、微小遅延故障の検出に十分な大きさに設定することが可能となる。例えば、テストポイントパス（ＰＴ）の遅延時間は、対象ノード（ＴＮ）を通るパスのうち最長パス（Ｐ２）の遅延時間と同じになるように設定される。あるいは、テストポイントパス（ＰＴ）の遅延時間は、遅延テスト時のクロック周期と同じになるように設定される。これにより、遅延テストにおいて微小遅延故障の見逃しを削減することが可能となる。
【発明の効果】
【００１７】
本発明に係る設計技術によれば、テストポイントパスに対して遅延時間を能動的に指定することが可能である。つまり、テストポイントパスにおける遅延時間を、微小遅延故障の検出に十分な大きさに設定することが可能である。その結果、遅延テストにおける微小遅延故障の見逃しが削減される。従って、市場での不良発生率が低減し、製品の信頼性が向上する。
【発明を実施するための最良の形態】
【００１８】
添付図面を参照して、本発明の実施の形態に係る半導体集積回路の設計技術を説明する。
【００１９】
１．設計フロー
本発明に係る半導体集積回路の設計方法は、基本的にはＴＰＩ手法に基づいている。但し、本発明に係るＴＰＩ手法は、従来方式と異なり、微小遅延故障の検出にも対応している。まず、図４に示されるフローチャートを参照して、本発明に係る半導体集積回路の設計方法を俯瞰する。
【００２０】
ステップＳ１００：
まず、設計回路にテストポイント（制御テストポイント及び／又は観測テストポイント）が挿入される。具体的には、信号の制御や観測が困難なノードがテスタビリティ解析を通して探索され、見つけ出されたノード（以下、「対象ノード」と参照される）に対してテストポイントが挿入される。テストポイントが挿入されるべき位置（対象ノード）の決定方法は、従来の方法と同じである。テストポイントが挿入された対象ノードにおける信号は、外部から制御可能、観測可能である。テストポイントとしては、例えば、スキャンテスト可能なフリップフロップが用いられる。
【００２１】
ステップＳ２００：
次に、テストポイントにつながるパスに対して、所定の遅延時間が指定される。テストポイントにつながるパスとは、制御テストポイントを始点とするパス、あるいは、観測テストポイントを終点とするパスであり、以下「テストポイントパス」と参照される。また、テストポイントパスに対して指定される遅延時間は、以下「ＴＰ遅延」と参照される。
【００２２】
ステップＳ３００：
次に、設計回路のレイアウト処理が行なわれる。ここで、本発明によれば、テストポイントパスの遅延時間が上記指定されたＴＰ遅延となるように、レイアウト処理が行なわれる。従来のＴＰＩ手法では、テストポイントパスＰＴに関しては、セットアップ制約とホールド制約だけが考慮されており、それら制約が満たされていれば十分であった。しかしながら、本発明では、テストポイントパスの遅延時間が指定されており、その指定された遅延時間が実現されるようにテストポイントパスが設計される。結果として、指定されたＴＰ遅延が考慮されたレイアウトデータが作成される。
【００２３】
ステップＳ４００：
作成されたレイアウトデータを基に、設計対象の半導体集積回路が製造される。
【００２４】
ステップＳ５００：
製造された半導体集積回路のテストが実行される。このテストにおいては、上記挿入されたテストポイントが用いられ、縮退故障や遅延故障が存在するか否かが検査される。特に、テストポイントを用いた遅延テストを通して、微小遅延故障が存在するか否かが検査される。この遅延テストにおける微小遅延故障の見逃しを減らすために、本発明によれば、上記「ＴＰ遅延」は次のように設定される。
【００２５】
１−１．第１の例
図５は、本発明に係る設計回路の第１の例を示している。図５に示された設計回路は、図１で示されたものと同様に、フリップフロップ（スキャンフリップフロップ）ＦＦ１〜ＦＦ４を含んでいる。また、図５において、設計回路中の対象ノード（target node）ＴＮに対して、テストポイントＴＰ（観測フリップフロップ）が挿入されている。フリップフロップＦＦ１からテストポイントＴＰへのパスが、テストポイントパスＰＴである。テストポイントパスＰＴ以外で対象ノードＴＮを通るパスのうち遅延時間が最大である最長パスは、フリップフロップＦＦ１からフリップフロップＦＦ４へのパスＰ２（遅延時間：８ｎｓ）である。
【００２６】
ステップＳ２００において、テストポイントパスＰＴに対してＴＰ遅延が指定される。第１の例では、最長パスＰ２の遅延時間がＴＰ遅延として指定される。すなわち、ＴＰ遅延は、遅延テストにおいて用いられることが好ましいパスである最長パスＰ２の遅延時間と同じに設定される。このＴＰ遅延は、対象ノードＴＮを通るパスの遅延時間のうち最大である。そして、ステップＳ３００において、指定されたＴＰ遅延が実現されるように、テストポイントパスＰＴのタイミング設計が行なわれる。そのために、図５に示されるように、いくつかのインバータが遅延素子として挿入される。その結果、遅延時間が８ｎｓであるテストポイントパスＰＴが得られる。
【００２７】
ステップＳ４００で半導体集積回路が製造される。この際、対象ノードＴＮにおいて微小遅延故障が発生したとする。ステップＳ５００において、テストポイントパスＰＴを用いた遅延テストが行なわれる。この時、テストポイントパスＰＴの遅延時間は８ｎｓであるため、微小遅延故障は見逃されることなく、正常に検出される（図２参照）。このように、ＴＰＩ手法に基づいて設計が行われても、遅延テストにおいて微小遅延故障は見逃されない。微小遅延故障の見逃しが減少するため、不良発生率が低減される。
【００２８】
１−２．第２の例
図６は、本発明に係る設計回路の第２の例を示している。第１の例における説明と重複する説明は適宜省略される。第２の例では、遅延テスト時のテストクロック周期（テストタイミング）が、ＴＰ遅延として指定される。本例において、テストクロック周期は９ｎｓであり、ＴＰ遅延も同じ９ｎｓに設定される。このＴＰ遅延は、対象ノードＴＮを通るパスの遅延時間のうち最大である。指定されたＴＰ遅延が実現されるように、図６に示されるように、いくつかのインバータが遅延素子として挿入される。その結果、遅延時間が９ｎｓであるテストポイントパスＰＴが得られる。
【００２９】
遅延テストにおいては、そのテストポイントパスＰＴが用いられる。従って、対象ノードＴＮにおいて微小遅延故障が発生していたとしても、その微小遅延故障は見逃されることなく、正常に検出される。つまり、第１の例と同様の効果が得られる。更に、第２の例によれば、ＴＰ遅延が第１の例の場合より大きい値（最大値）に設定されるため、微小遅延故障の検出精度が更に向上する。
【００３０】
１−３．第３の例
図７は、本発明に係る設計回路の第３の例を示している。既出の例における説明と重複する説明は適宜省略される。第３の例では、複数のテストポイントＴＰ１、ＴＰ２が挿入されている。第１テストポイントＴＰ１（第１観測フリップフロップ）は、第１対象ノードＴＮ１での微小遅延故障を検出するために挿入されている。フリップフロップＦＦ１から第１テストポイントＴＰ１へのパスが、第１テストポイントパスＰＴ１である。一方、第２テストポイントＴＰ２（第２観測フリップフロップ）は、第２対象ノードＴＮ２での微小遅延故障を検出するために挿入されている。フリップフロップＦＦ２から第２テストポイントＴＰ２へのパスが、第２テストポイントパスＰＴ２である。
【００３１】
本例においても、第１テストポイントパスＰＴ１と第２テストポイントパスＰＴ２のそれぞれに対して、所定のＴＰ遅延が指定される。例えば図７に示されるように、第２の例と同様に、それぞれのＴＰ遅延は、遅延テスト時のテストクロック周期と同じになるように設定される。あるいは、第１の例と同様に、それぞれのＴＰ遅延は、最長パスＰ２の遅延時間と同じに設定されてもよい。
【００３２】
本例においても、既出の例と同様の効果が得られる。すなわち、第１対象ノードＴＮ１や第２対象ノードＴＮ２において微小遅延故障が発生していたとしても、その微小遅延故障は見逃されることなく、正常に検出される。また、複数のテストポイントが挿入されるため、より高品質な遅延テストが実現される。更に、図７に示されるように、遅延素子として挿入されるインバータを一部共通化することができる。このことは、面積増大を抑制する観点から望ましい。
【００３３】
１−４．第４の例
図８は、本発明に係る設計回路の第４の例を示している。第４の例では、１つのテストポイントＴＰで、複数の対象ノード（ＴＮＡ，ＴＮＢ，ＴＮＣ・・・）での微小遅延故障を検出することができる。つまり、１つのテストポイントＴＰが、複数の対象ノード（ＴＮＡ，ＴＮＢ，ＴＮＣ・・・）に対して共通に挿入される。そのために、図８に示されるように、１つのテストポイントＴＰ（観測フリップフロップ）が、ＸＯＲゲート（ＸＯＲ１，ＸＯＲ２，ＸＯＲ３）を介して、複数の対象ノード（ＴＮＡ，ＴＮＢ，ＴＮＣ・・・）に接続される。
【００３４】
このようにＸＯＲゲートを用いてテストポイントＴＰを共通化することは、周知の手法である。但し、本例によれば、テストポイントＴＰにつながる複数のテストポイントパスのそれぞれに対して、ＴＰ遅延が別々に指定される。例えば、対象ノードＴＮＡを通るパスのうち最長パスは、パスＰＡであるとする。この時、対象ノードＴＮＡを通るテストポイントパスＰＴＡに関するＴＰ遅延は、最長パスＰＡの遅延時間と同じになるように指定される。また、対象ノードＴＮＣを通るパスのうち最長パスは、パスＰＣであるとする。この時、対象ノードＴＮＣを通るテストポイントパスＰＴＣに関するＴＰ遅延は、最長パスＰＣの遅延時間と同じになるように指定される。テストポイントパスＰＴＡ、ＰＴＣのそれぞれのＴＰ遅延は、必ずしも同じである必要はなく、それぞれ所望の値に設定される。あるいは、第２の例と同様に、それぞれのＴＰ遅延は、遅延テスト時のテストクロック周期と同じになるように設定されてもよい。
【００３５】
本例においても、既出の例と同様の効果が得られる。すなわち、遅延テストにおける微小遅延故障の検出精度が向上する。また、ＸＯＲゲートを用いることによりテストポイントＴＰが共通化されるため、テストポイントＴＰの総数が減少し、回路面積が低減される。更に、所望のＴＰ遅延を実現するために、ＸＯＲゲート自身の遅延時間を利用することができる。つまり、既出の例において遅延素子として挿入されていたインバータの一部あるいは全てが不要となる。これは、所望のＴＰ遅延を実現するための回路構成が単純になることを意味する。言い換えれば、本例におけるＸＯＲゲートは、テストポイントＴＰの共通化に寄与するだけでなく、所望のＴＰ遅延をより簡易な構成で実現することにも寄与する。これは、従来方式では得られなかった、本発明に特有の相乗効果である。
【００３６】
１−５．第５の例
上述の例では観測テストポイントの場合が説明されたが、制御テストポイントの場合も同様である。図９は、制御テストポイントが挿入される場合の一例を示している。図９に示された設計回路は、フリップフロップ（スキャンフリップフロップ）ＦＦ５〜ＦＦ８を含んでいる。また、対象ノードＴＮに対して、テストポイントＴＰ（制御フリップフロップ）が挿入されている。テストポイントＴＰからフリップフロップＦＦ８へのパスが、テストポイントパスＰＴである。そのテストポイントパスＰＴに対して、ＴＰ遅延が指定される。例えば、ＴＰ遅延は、対象ノードＴＮを通る最長パスＰ５の遅延時間と同じになるように設定される。あるいは、ＴＰ遅延は、遅延テスト時のテストクロック周期と同じになるように設定されてもよい。
【００３７】
尚、上述の第１〜第５の例において、テストクロック周期以下のある範囲が、テストポイントパスＰＴに対するＴＰ遅延として指定されてもよい。例えば、ＴＰ遅延を、８ｎｓ〜９ｎｓという範囲に設定することもできる。その場合でも、指定されたＴＰ遅延は、対象ノードＴＮを通るパスの遅延時間のうち最大となる。従って、同様の効果が得られる。
【００３８】
２．設計システム
本発明に係る設計手法を実現するための設計システムとしては、様々な形態が考えられる。
【００３９】
２−１．第１の実施の形態
図１０は、本発明の第１の実施の形態を示すブロック図である。第１の実施の形態では、ＴＰＩツール１０、ＴＰ遅延指定ツール２０、レイアウトツール３０、及び各種データが用いられる。
【００４０】
ＴＰＩツール１０は、テストポイントＴＰの挿入を行なう（ステップＳ１００）。具体的には、ＴＰＩツール１０は、ネットリスト１を読み込み、そのネットリスト１が示す設計回路中でテストポイントＴＰが挿入されるべき位置（対象ノードＴＮ）を決定する。そして、ＴＰＩツール１０は、決定された挿入位置に対してテストポイントＴＰを挿入する。その結果、テストポイントＴＰが挿入されたＴＰＩ済みネットリスト１１が作成される。また、ＴＰＩツール１０は、処理内容を示すＴＰＩ結果ファイル１２を作成する。
【００４１】
図１１は、ＴＰＩ結果ファイル１２の一例を示している。このＴＰＩ結果ファイル１２は、テストポイントのインスタンス名や、テストポイントの挿入箇所を記述している。例えば、図１１中の記述（ａ）は、観測テストポイント（インスタンス名：inst_TP_FF1）が、インスタンスＡＮＤ１の出力に挿入されていることを示している。また、記述（ｂ）は、制御テストポイント（インスタンス名：inst_TP_FF2）が、インスタンスＯＲ２の入力に挿入されていることを示している。
【００４２】
再度図１０を参照して、ＴＰ遅延指定ツール２０は、ＴＰＩ結果ファイル１２とＴＰ遅延設計ファイル３を読み込む。ＴＰ遅延設計ファイル３は、設計戦略が記述されたファイルであり、ユーザによって作成される。特に、ＴＰ遅延設計ファイル３には、ＴＰ遅延の指定に関する情報が記述されている。例えば、ＴＰ遅延をテストクロック周期に指定する旨が記述されている。ＴＰ遅延指定ツール２０は、ＴＰＩ結果ファイル１２とＴＰ遅延設計ファイル３に基づいて、ＴＰ遅延を指定するＴＰ遅延指定ファイル２１を作成する（ステップＳ２００）。このＴＰ遅延指定ファイル２１は、後のレイアウト処理時に参照されるファイルであり、レイアウトツール３０が解釈可能なフォーマットで記述される。
【００４３】
図１２は、ＴＰ遅延指定ファイル２１の一例を示している。このＴＰ遅延指定ファイル２１には、テストポイントパスＰＴに対して遅延制約を与えるコマンドリストが列挙されている。例えば、図１２中のコマンド（ａ）は、図１１で示されたＴＰＩ結果ファイル１２中の記述（ａ）に基づいて作成されている。具体的には、コマンド（ａ）は、観測テストポイント（インスタンス名：inst_TP_FF1）を終点とするテストポイントパスのＴＰ遅延を、１２．５ｎｓ〜１３．０ｎｓの範囲に制約している。一方、コマンド（ｂ）は、図１１中の記述（ｂ）に基づいて作成されている。具体的には、コマンド（ｂ）は、制御テストポイント（インスタンス名：inst_TP_FF2）を始点とするテストポイントパスのＴＰ遅延を、１２．５ｎｓ〜１３．０ｎｓの範囲に制約している。
【００４４】
このように、ＴＰ遅延指定ツール２０は、ＴＰＩ結果ファイル１２とＴＰ遅延設計ファイル３に基づいて、レイアウトツール３０が解釈可能なＴＰ遅延指定ファイル２１を作成する。尚、ＴＰ遅延指定ツール２０の代わりに、ユーザがＴＰ遅延指定ファイル２１を作成してもよい。
【００４５】
再度図１０を参照して、レイアウトツール３０は、ＴＰＩ済みネットリスト１１、ＴＰ遅延指定ファイル２１、及び遅延制約ファイル２を読み込む。遅延制約ファイル２は、通常のユーザ回路部分に関する遅延制約（セットアップ制約やホールド制約）を示すファイルであり、ＴＰ遅延以外の遅延制約を示している。逆に言えば、本実施の形態においては、一般的に用いられる遅延制約ファイル２とは別に、テストポイントＴＰの設計専用のＴＰ遅延指定ファイル２１が作成されていると言える。
【００４６】
レイアウトツール３０は、ＴＰＩ済みネットリスト１１、遅延制約ファイル２、及びＴＰ遅延指定ファイル２１に基づいて、設計回路のレイアウトを行なう（ステップＳ３００）。具体的には、レイアウトツール３０は、遅延制約ファイル２で示される遅延制約が満たされるように、ユーザ回路部分のレイアウト設計及びタイミング設計を行なう。テストポイントパスＰＴに関しては、そこでの遅延時間がＴＰ遅延指定ファイル２１によって指定されるＴＰ遅延になるように、レイアウト設計及びタイミング設計が行なわれる。尚、タイミング設計の優先度は、テストポイントパスＰＴよりもユーザ回路部分の方が高い。このようにして、設計回路のレイアウトを示すレイアウトデータ３１が作成される。
【００４７】
２−２．第２の実施の形態
図１３は、本発明の第２の実施の形態を示すブロック図である。第１の実施の形態と重複する説明は適宜省略される。第２の実施の形態では、レイアウトツール３０は、ＴＰＩ済みネットリスト１１と遅延制約ファイル２に基づいて、一旦レイアウト処理を行なう。その結果、ＴＰ遅延が考慮されていないレイアウトデータ３１−１が一旦作成される。その後、レイアウトツール３０は、レイアウトデータ３１−１とＴＰ遅延指定ファイル２１に基づいて、再度レイアウト処理を行なう。この時、テストポイントパスＰＴだけが、再度レイアウトされる。その結果、ＴＰ遅延が考慮されたレイアウトデータ３１−２が作成される。第２の実施の形態によれば、テストポイント挿入によるユーザ回路部分のレイアウトへの影響は、最小限に抑えられる。
【００４８】
２−３．第３の実施の形態
図１４は、本発明の第３の実施の形態を示すブロック図である。第１の実施の形態と重複する説明は適宜省略される。第３の実施の形態では、微小遅延故障の検出をサポートするＴＰＩツール１０’が提供される。このＴＰＩツール１０’は、第１の実施の形態におけるＴＰＩツール１０及びＴＰ遅延指定ツール２０の両方の機能を有する。すなわち、ＴＰＩツール１０’は、ネットリスト１及びＴＰ遅延設計ファイル３を読み込み、ＴＰＩ済みネットリスト１１及びＴＰ遅延指定ファイル２１を作成する（ステップＳ１００、ステップＳ２００）。後の処理は、第１の実施の形態と同様である。第３の実施の形態によれば、ＴＰ遅延指定ツール２０が不要となり、好適である。
【００４９】
２−４．第４の実施の形態
図１５は、本発明の第４の実施の形態を示すブロック図である。第１の実施の形態と重複する説明は適宜省略される。第４の実施の形態では、微小遅延故障の検出をサポートするレイアウトツール３０’が提供される。このレイアウトツール３０’は、第１の実施の形態におけるＴＰ遅延指定ツール２０及びレイアウトツール３０の両方の機能を有する。すなわち、レイアウトツール３０’は、ＴＰＩ済みネットリスト１１、ＴＰＩ結果ファイル１２、遅延制約ファイル２、及びＴＰ遅延設計ファイル３を読み込み、レイアウトデータ３０を作成する。
【００５０】
このレイアウトツール３０’は、ＴＰＩ済みネットリスト１１及びＴＰＩ結果ファイルを参照して、ＴＰＩ済みネットリスト１１中のテストポイントＴＰを認識することができる。また、レイアウトツール３０’は、ＴＰ遅延設計ファイル３を解釈し、指定されたＴＰ遅延を認識することができる。そして、レイアウトツール３０’は、テストポイントＴＰにつながるパスの遅延時間が指定されたＴＰ遅延になるように、レイアウト設計及びタイミング設計を行なう。第４の実施の形態によれば、ＴＰ遅延指定ツール２０が不要となり、好適である。
【００５１】
尚、上述の実施の形態において、ＴＰＩツール１０あるいはＴＰＩツール１０’は、ネットリスト１の代わりにＲＴＬ（Register Transfer Level）記述を直接読み込んでもよい。その場合、ＴＰＩツール１０あるいはＴＰＩツール１０’は、論理合成機能とＴＰＩ機能を有しており、論理合成処理とテストポイント挿入処理を一気に行なうことによってＴＰＩ済みネットリスト１１を作成する。
【００５２】
２−５．ＣＡＤシステム
図１０〜図１５で示された設計システムは、コンピュータ上に構築され得る。図１６は、コンピュータによって実現されるＬＳＩ設計システム１００（ＣＡＤシステム）の構成を示すブロック図である。このＬＳＩ設計システム１００は、記憶装置１１０、演算処理装置１２０、設計プログラム群１３０、入力装置１４０、出力装置１５０を備えている。
【００５３】
記憶装置１１０としては、ＲＡＭやＨＤＤが例示される。この記憶装置１１０には、上述のネットリスト１、遅延制約ファイル２、ＴＰ遅延設計ファイル３、ＴＰＩ済みネットリスト１１、ＴＰＩ結果ファイル１２、ＴＰ遅延指定ファイル２１、レイアウトデータ３１等が格納される。
【００５４】
設計プログラム群１３０は、コンピュータ読取可能な記録媒体に記録されている。この設計プログラム群１３０は、上述のＴＰＩツール１０（１０’）、ＴＰ遅延指定ツール２０、及びレイアウトツール３０（３０’）等を含んでいる。これらツールは、演算処理装置１２０によって読み込まれ、実行されるソフトウェアである。演算処理装置１２０がこれらソフトウェアを実行することによって、本発明に係る半導体集積回路の設計処理が実現される。演算処理装置１２０は、必要なデータやファイルを記憶装置１１０から読み出し、また、作成されたデータやファイルを記憶装置１１０に格納する。
【００５５】
入力装置１４０としては、キーボードやマウスが例示される。ユーザは、入力装置１４０を用いることによって、ファイルの編集やコマンドの入力を行なうことができる。出力装置１５０としては、ディスプレイが例示される。ユーザは、ディスプレイに表示されるレイアウト等の設計情報を参照することができる。
【００５６】
３．まとめ
本発明によれば、ＴＰＩ手法に基づいた半導体集積回路の設計方法が提供される。従って、テストポイントＴＰを用いることによって、テストを容易に行なうことが可能となる。テストパタンの数も削減される。また、ユーザ回路部分の設計に影響を与えるのはテストポイントＴＰが挿入される部分だけであり、ユーザ回路部分のタイミング設計を大幅に変更する必要はない。
【００５７】
更に、本発明によれば、従来のＴＰＩ手法と異なり、テストポイントパスＰＴに対して任意のＴＰ遅延を能動的に指定することが可能である。つまり、テストポイントパスＰＴにおける遅延時間を、微小遅延故障の検出に十分な大きさに設定することが可能である。その結果、遅延テストにおける微小遅延故障の見逃しが格段に減少する。従って、市場での不良発生率が低減し、製品の信頼性が向上する。このように、本発明によれば、従来のＴＰＩ手法の利点を生かしつつ、微小遅延故障の検出精度を高めることができる。
【図面の簡単な説明】
【００５８】
【図１】図１は、従来のスキャン設計に基づく設計回路の一例を示す回路図である。
【図２】図２は、課題を説明するための概念図である。
【図３】図３は、従来のＴＰＩ手法に基づく設計回路の一例を示す回路図である。
【図４】図４は、本発明に係る半導体集積回路の設計方法を示すフローチャートである。
【図５】図５は、本発明に係る設計回路の第１の例を示す回路図である。
【図６】図６は、本発明に係る設計回路の第２の例を示す回路図である。
【図７】図７は、本発明に係る設計回路の第３の例を示す回路図である。
【図８】図８は、本発明に係る設計回路の第４の例を示す回路図である。
【図９】図９は、本発明に係る設計回路の第５の例を示す回路図である。
【図１０】図１０は、本発明の第１の実施の形態を示すブロック図である。
【図１１】図１１は、ＴＰＩ結果ファイルの一例を示す図である。
【図１２】図１２は、ＴＰ遅延指定ファイルの一例を示す図である。
【図１３】図１３は、本発明の第２の実施の形態を示すブロック図である。
【図１４】図１４は、本発明の第３の実施の形態を示すブロック図である。
【図１５】図１５は、本発明の第４の実施の形態を示すブロック図である。
【図１６】図１６は、本発明の実施の形態に係るＬＳＩ設計システムの構成を示すブロック図である。
【符号の説明】
【００５９】
１    ネットリスト
２    遅延制約ファイル
３    ＴＰ遅延設計ファイル
１０，１０’    ＴＰＩツール
１１    ＴＰＩ済みネットリスト
１２    ＴＰＩ結果ファイル
２０    ＴＰ遅延指定ツール
２１    ＴＰ遅延指定ファイル
３０，３０’    レイアウトツール
３１    レイアウトデータ
１００    ＬＳＩ設計システム
１１０    記憶装置
１２０    演算処理装置
１３０    設計プログラム群
１４０    入力装置
１５０    出力装置
ＴＰ    テストポイント
ＴＮ    対象ノード
ＰＴ    テストポイントパス
【図１】
2008153489.tif 000003
【図２】
2008153489.tif 000004
【図３】
2008153489.tif 000005
【図４】
2008153489.tif 000006
【図５】
2008153489.tif 000007
【図６】
2008153489.tif 000008
【図７】
2008153489.tif 000009
【図８】
2008153489.tif 000010
【図９】
2008153489.tif 000011
【図１０】
2008153489.tif 000012
【図１１】
2008153489.tif 000013
【図１２】
2008153489.tif 000014
【図１３】
2008153489.tif 000015
【図１４】
2008153489.tif 000016
【図１５】
2008153489.tif 000017
【図１６】
2008153489.tif 000018