(57)【特許請求の範囲】
【請求項１】
レイアウトデータ構造を定義したレイアウトデータ定義ファイルとレイアウトデータとを入力して、レイアウトデータ上での配線およびデバイスを認識する配線・デバイス認識手段、この配線・デバイス認識手段により、物理的位置の検証対象であるデバイスの部分の図形座標（実デバイス座標）を抽出する実座標抽出手段、当該デバイスの座標（仮想デバイス座標）を計算式によって定義したデバイス座標算出式定義ファイルをもとに算出する仮想座標算出手段、上記実座標抽出手段により抽出された実デバイス座標と上記仮想座標算出手段により算出された仮想デバイス座標とを比較するデバイス座標比較手段、および比較の結果が予め定義された許容誤差の範囲を超える場合にエラーとするエラー出力手段を備えたことを特徴とする半導体設計検証装置。
【請求項２】
抽出された実デバイス座標の座標系が、原点移動、座標回転等によって、実際のＬＳＩの座標系と異なる場合、両者の座標系を一致させるような補正を上記実デバイス座標に施す座標系補正手段を備えたことを特徴とする請求項１記載の半導体設計検証装置。
【請求項３】
レイアウトデータのデータベースユニットと実際のＬＳＩのデータベースユニットとが異なる場合、両者のサイズを一致させるような補正を実デバイス座標に施すデータベースユニット補正手段を備えたことを特徴とする請求項１または２記載の半導体設計検証装置。
【請求項４】
スケマティックデータ（論理回路図データ）を入力し、レイアウトデータ上での配線・デバイス接続関係とスケマティックデータの接続関係とを対応づけるＬＶＳ比較手段、および実デバイス座標と仮想デバイス座標との比較の結果が予め定義された許容誤差の範囲内であるデバイス座標に対して、上記ＬＶＳ比較手段により得られるスケマテイックデータ上の接続情報と仮想座標を算出した時の情報とを出力する手段を備えたことを特徴とする請求項１ないし３のいずれかに記載の半導体設計検証装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路のマスクレイアウトパターンデータ（以下レイアウトデータと略す）上のデバイスの物理的位置の検証を行う半導体設計検証装置に関するものである。
【０００２】
【従来の技術】
メモリセルを含む半導体ＬＳＩでは、歩留り向上のために不良箇所を救済するための冗長回路と呼ばれるスペアワード／ビットライン、スペアデコーダを有しており、ＬＴヒューズ（以下ヒューズと略す）を物理的にブロー（切断）することで、不良箇所を含むワード／ビットラインをスペアワード／ビットラインに置き換えている。このとき、ブロー装置に対してブローするヒューズの物理的位置を与える必要があり、その物理的位置として、予め定義されたヒューズ座標算出式により算出した座標を用いている。ブロー装置は、与えられた座標に対してブローを行う。
図２０は、メモリブロック内に発生した不良箇所をワードラインの切り替えで救済する例である。図の例のように、メモリ内のワードラインＷＬ１に不良箇所（＊印）があった場合、そのライン端にあるヒューズＡをブローして物理的に切り離すとともに、切り離したワードラインＷＬ１が選択されるアドレス信号が入った時にはスペアワードラインＷＬｓが選択されるように設定する。これにより、不良箇所が救済される。
一方、図２１はメモリブロック内に発生した不良箇所をワードラインと垂直の方向にメモリを区切っているビットラインの切り替えで救済する例である。
【０００３】
【発明が解決しようとする課題】
上記のような従来の半導体設計検証装置では、レイアウトデータ上のデバイスの物理的位置の検証は不可能であるために、予め定義されたデバイス座標算出式から算出されたデバイス座標とデバイスの実際の物理的位置とが異なる場合には、誤動作が発生してしまう恐れがあった。
【０００４】
この発明は、上述のような課題を解決するためになされたもので、その目的は、デバイスの物理的位置の検証を行える半導体設計検証装置を得るものである。
【０００５】
【課題を解決するための手段】
この発明に係る半導体設計検証装置においては、レイアウトデータ構造を定義したレイアウトデータ定義ファイルとレイアウトデータとを入力して、レイアウトデータ上での配線およびデバイスを認識する配線・デバイス認識手段、この配線・デバイス認識手段により、物理的位置の検証対象であるデバイスの部分の図形座標（実デバイス座標）を抽出する実座標抽出手段、当該デバイスの座標（仮想デバイス座標）を計算式によって定義したデバイス座標算出式定義ファイルをもとに算出する仮想座標算出手段、上記実座標抽出手段により抽出された実デバイス座標と上記仮想座標算出手段により算出された仮想デバイス座標とを比較するデバイス座標比較手段、および比較の結果が予め定義された許容誤差の範囲を超える場合にエラーとするエラー出力手段を備えるものである。
【０００６】
また、抽出された実デバイス座標の座標系が、原点移動、座標回転等によって、実際のＬＳＩの座標系と異なる場合、両者の座標系を一致させるような補正を上記実デバイス座標に施す座標系補正手段を備えるものである。
【０００７】
また、レイアウトデータのデータベースユニットと実際のＬＳＩのデータベースユニットとが異なる場合、両者のサイズを一致させるような補正を実デバイス座標に施すデータベースユニット補正手段を備えるものである。
【０００８】
また、スケマティックデータ（論理回路図データ）を入力し、レイアウトデータ上での配線・デバイス接続関係とスケマティックデータの接続関係とを対応づけるＬＶＳ比較手段、および実デバイス座標と仮想デバイス座標との比較の結果が予め定義された許容誤差の範囲内であるデバイス座標に対して、上記ＬＶＳ比較手段により得られるスケマテイックデータ上の接続情報と仮想座標を算出した時の情報とを出力する手段を備えるものである。
【０００９】
【発明の実施の形態】
実施の形態１．
図１は、この発明の実施の一形態例である半導体設計検証装置を示すブロック図である。なお、本実施の形態例では、物理的位置の検証を行うデバイスをヒューズとして説明する。図において、１はレイアウトデータ２を設計入力するためのレイアウトエディタ、３はレイアウトデータ構造を定義したレイアウトデータ定義ファイル、４はレイアウトデータ定義ファイル３にしたがってレイアウトデータ２上の配線・デバイスを認識する配線・デバイス認識部、５は配線・デバイス認識部４で認識されたヒューズの図形から、レイアウト上でのヒューズの座標である実ヒューズ座標データ６を抽出する実ヒューズ座標抽出部である。
７はヒューズ座標の算出式を定義したヒューズ座標算出式定義ファイルで仮想ヒューズ座標算出式８は、ヒユーズ座標算出式定義ファイル７に定義された算出式、定数、変数等にしたがって、検証対象の仮想ヒューズ座標データ９を算出する。
１１は検証対象のヒューズに対して実ヒューズ座標データ６と仮想ヒューズ座標データ９とを比較し、それらが許容誤差定義ファイル１０に示された許容誤差以内で一致しているか否かを判断するヒューズ座標比較部であり、一致していないヒューズについては、エラー出力部１２にそのエラーデータを出力する。
【００１０】
このように構成された半導体設計検証装置における動作について、図２のフローチャートを参照しながら説明する。
まず、配線・デバイス認識部４は、レイアウトデータ２とレイアウトデータ定義ファイル３とを入力する（Ｓ１）。レイアウトデータ定義ファイルは、図３に示すように、入力レイヤ番号定義部、デバイス／配線論理演算定義部、接続定義部、およびデバイス定義部からなる。入力レイヤ番号定義部では、レイアウトデータ２のレイヤ番号とレイアウトデータ定義ファイル３内で使用されるレイヤ名とを対応づける。デバイス／配線論理演算定義部では、入力レイヤからデバイス／配線レイヤを生成するための論理演算を定義している。接続定義部では、デバイス／配線論理演算定義部で生成された配線レイヤの接続関係を定義している。また、デバイス定義部では、デバイス／配線論理演算定義部で生成されたデバイス／配線レイヤを用いてデバイスの構造（デバイスレイヤ、複数の端子レイヤなど）を定義している。
【００１１】
次に、配線・デバイス認識部４は、入力したレイアウトデータ定義ファイル３にしたがって、レイアウトデータ２上のＭＯＳトランジスタ、ＢＪＴトランジスタ、抵抗、容量、ダイオード、ヒューズなどのデバイスとデバイスを接続する配線および配線の接続とを認識する（Ｓ２）。
そして、実ヒューズ座標抽出部５が認識されたデバイスの中から検証対象のヒューズの図形の各頂点座標を抽出し、その情報から各ヒューズの中心座標（実ヒューズ座標）を算出する（Ｓ３）。例えば図４に示すように、抽出したヒューズの各頂点座標が座標１（Ｘ１，Ｙ１）、座標２（Ｘ２，Ｙ２）、座標３（Ｘ３，Ｙ３）および座標４（Ｘ４，Ｙ４）のとき、その中心座標を、
0003782199.tif 000002
）として求め、実ヒューズ座標とする。
【００１２】
一方、仮想ヒューズ座標算出部８はヒューズ座標算出式定義ファイル７を入力し（Ｓ４）、当該ヒューズの仮想ヒューズ座標を算出する（Ｓ５）。図５はヒューズ座標算出式定義ファイル７の概要であり、ＥＱＵＡＴＩＯＮ  ＴＹＰＥ、Ｘ／Ｙ座標算出式群、定数定義群、および変数定義群で構成される。ＥＱＵＡＴＩＯＮ  ＴＹＰＥにおいて座標算出式の組み合わせ方を制御し、Ｘ／Ｙ座標算出式は複数の定数、変数、論理反転などで表現している。使用する定数、変数は定数定義群および変数定義群において定義されている。ヒューズ座標定義ファイル７の具体例を図６に示す。
次に、ヒューズ座標比較部１１は上記Ｓ３で得られた実ヒューズ座標とＳ５で算出された仮想ヒューズ座標とを比較し、許容誤差定義ファイル１０に定義された許容誤差範囲内でヒューズ座標が一致しているか否かを検証する（Ｓ６）。図７は許容誤差定義ファイル１０の一例を示したもので、ＴＯＬＥＲＡＮＣＥは許容誤差（距離）の最大値、Ｘ−ＴＯＬＥＲＡＮＣＥおよびＹ−ＴＯＬＥＲＡＮＣＥはそれぞれＸ，Ｙ座標方向の許容座標誤差の最大値を示している。
【００１３】
最後に、エラー出力部１２は、上記Ｓ６の処理で比較結果が許容誤差の範囲を超えていたヒューズに対してエラーと判断し、実ヒューズ座標側の不一致についてはレポートファイルに不一致ヒューズ座標をリスト出力する。また、仮想ヒューズ座標側の不一致については、不一致ヒューズ座標、ヒューズ座標算出式、およびヒューズ座標算出式内の変数値などのデータをリスト出力する（Ｓ７）。実ヒューズ座標側の不一致とは、実ヒューズ座標抽出部５により抽出された実ヒューズ座標に対応する仮想ヒューズ座標算出部８により算出される仮想ヒューズ座標が存在しない場合である。逆に、仮想ヒューズ座標側の不一致とは、仮想ヒューズ座標に対応する実ヒューズ座標が存在しない場合である。図８はエラーのレポートファイル例で、図中、Ｘ,Ｙ coordinate un-matched list(TPL EQUATION)と表示された部分が仮想ヒューズ座標側の不一致例で、仮想ヒューズ座標を算出した際のヒューズ座標算出式、変数値、および算出された仮想ヒューズ座標を出力する。また、図中、Ｘ,Ｙ coordinate un-matched list(LAYOUT)と表示された部分が実ヒューズ座標側の不一致例で、レイアウトデータ２から抽出された実ヒューズ座標を出力する。
【００１４】
上記Ｓ１〜Ｓ７の処理を検証対象のすべてのヒューズに対して行い、処理を終了する。
以上のように、レイアウトデータ２から抽出した実ヒューズ座標と、ヒューズ座標算出式から算出した仮想ヒューズ座標とを比較検証することによって、ヒューズの物理的位置の検証が可能となる。これにより、冗長回路を用いてヒューズをブローする際、ヒューズの物理的位置のずれに伴う誤ブローが防止できるようになる。
なお、本実施の形態例では、検証対象としてヒューズをとりあげて説明したが、その物理的位置が処理を左右するようなデバイスすべてに対して、そのレイアウトデータ上の座標の検証に応用できる。
【００１５】
実施の形態２．
なお、上記実施の形態１では、ヒューズ座標算出式が考慮している座標系とレイアウトデータの座標系とが異なっていた場合に、デバイスの位置関係および接続関係が一致していても両者の座標がずれてしまい、エラーとなってしまう恐れがある。
図９は本実施の形態２による半導体設計検証装置を示すブロック図であり、図中１〜１２は図１に示したものと同一または相当部分である。
１３はレイアウトデータ２の座標系と半導体ＬＳＩ上の座標系（ヒューズ座標算出式定義ファイル７で定義されたヒューズ座標算出式が考慮する座標系）とが異なる場合に、それらの違いを定義した座標系補正定義ファイル、１４はレイアウトデータ２から抽出された実ヒューズ座標を座標系補正定義ファイル１３をもとに変換する座標系補正部である。
【００１６】
この実施の形態２による処理の流れを図１０のフローチャートに示す。Ｓ１〜Ｓ３、およびＳ４〜Ｓ７の処理は実施の形態１と全く同一である。ただし、本実施の形態では、Ｓ３の処理で抽出された実ヒューズ座標に対して、座標系補正定義ファイル１３をもとに補正を行い（Ｔ１）、Ｓ６においては、その補正された実ヒューズ座標と仮想ヒューズ座標とを比較するようにする。
図１１は、レイアウトデータの座標系とヒューズ座標算出式に記述されている半導体ＬＳＩの座標系とが、原点移動と回転とのために異なっている例を示したものである。この場合、図１２に示すように、座標系補正定義ファイル１３には、原点移動値としてCHIP-ORIGIN 、回転角としてROTATIONが定義されている。この定義にしたがって、実ヒューズ座標をCHIP-ORIGINだけ移動させ、Ｘ軸、Ｙ軸をROTATIONだけ回転させることにより補正する。
以上により、レイアウトデータ２上の座標系と半導体ＬＳＩの座標系とが異なっている場合にも、デバイスの物理的位置の検証が確実に行える。
【００１７】
実施の形態３．
なお、上記実施の形態１または２においては、ヒューズ座標算出式が考慮しているデータベースユニットとレイアウトデータのデータベースユニットとが異なっていた場合に、デバイスの位置関係および接続関係が一致していても両者の座標がずれてしまい、エラーとなってしまう恐れがある。
図１３は本実施の形態３による半導体設計検証装置を示すブロック図であり、図中１〜１４は図９に示したものと同一または相当部分である。
１５はヒューズ座標算出式定義ファイル７で定義されたヒューズ座標算出式が考慮しているデータベースユニットとレイアウトデータ２のデータベースユニットが異なる場合に、それらの違いを定義したデータベースユニット補正定義ファイル、１６は実ヒューズ座標部５で抽出され座標系補正部１４で補正されたヒューズ座標を、データベースユニット補正定義ファイル１５にしたがって変換するデータベースユニット補正部である。
【００１８】
この実施の形態３による処理の流れを図１４のフローチャートに示す。Ｓ１〜Ｓ３〜Ｔ１、およびＳ４〜Ｓ７の処理は実施の形態１と全く同一である。ただし、本実施の形態では、Ｓ３の処理で抽出されＴ１の処理で座標系を補正された実ヒューズ座標に対して、データベースユニット補正定義ファイル１５をもとに変換を行い（Ｕ１）、Ｓ６においては、その変換された実ヒューズ座標と仮想ヒューズ座標とを比較するようにする。
図１５は、ヒューズ座標算出式に記述されている半導体ＬＳＩ上のデータベースユニットが、レイアウトデータ２のデータベースユニットと比較して一律縮小されている例（実チップのチップサイズ＝6580×11280μ2，レイアウトデータ上でのチップサイズ＝7000×12000μ2）を示したものである。この場合、図１６に示すように、データベスユニット補正定義ファイル１５には、その倍率（縮小率）としてSHRINKが定義されている。この定義にしたがって、実ヒューズ座標を一律SHRINK倍することにより補正する。
以上により、レイアウトデータ２上のデータベースユニットと半導体ＬＳＩのデータベースユニットとが異なっている場合にも、デバイスの物理的位置の検証が確実に行える。
【００１９】
実施の形態４．
なお、上記実施の形態１〜３においては、各デバイスの実座標と仮想座標との比較により物理的位置の検証を行うものを示したが、物理的位置が正しくても論理的に正しくなければ（論理設計上で意識したようにヒューズがブローされなければ）、誤動作が生じる。したがって、上記比較検証の結果、両者が一致したデバイスに対しては、論理的にも正しいか否かを検証する必要がある。
図１７は本実施の形態４による半導体設計検証装置を示すブロック図であり、図中１〜１６は図１３に示したものと同一または相当部分である。
１７はスケマティックデータ１８（論理・回路設計データ）を入力するためのスケマティックエディタ、１９はスケマティックデータ１８と配線・デバイス認識部４からの配線・デバイスの接続関係とを比較検証するＬＶＳ比較部、２０はヒューズ座標比較部１１においてヒューズ座標が一致したヒューズに対して、そのヒューズに対応するスケマティックデータ１８からの情報とヒューズ座標を算出したときの算出式等の情報とをヒューズ情報として出力するヒューズ情報出力部である。
【００２０】
この実施の形態４による処理の流れを図１８のフローチャートに示す。Ｓ１〜Ｓ２、Ｓ３〜Ｔ１〜Ｕ１〜Ｓ４〜Ｓ６およびＳ７の処理は実施の形態３と全く同一である。ただし、本実施の形態では、Ｓ２の処理のあと、スケマティックデータ１８を入力して（Ｖ１）、Ｓ２の処理で認識したレイアウトデータ２上の配線・デバイスとの比較（ＬＶＳ比較）を行い、配線・デバイスの対応をとる（Ｖ２）。
さらに、Ｓ６の処理で実ヒユーズ座標と仮想ヒューズ座標との比較を行った結果、許容誤差の範囲内で一致したヒューズに対して、ヒューズ情報を生成して出力する（Ｖ３）。
出力されるヒューズ情報の一例を図１９に示す。図１９からわかるように、ヒューズ座標比較部１１で許容誤差の範囲内で一致した各ヒューズ座標に対して、inst：スケマティックデータ１８上のヒューズのインスタンス名、Node1，Node2：スケマティックデータ18上のヒューズの端子名、TPL:ヒューズ座標算出式（セット番号、算出式番号）、変数値などが出力される。
以上により、物理的位置が正しいヒューズに対して、論理的にも正しいかを検証するので、物理的位置は正しいが、論理的にヒューズ接続が間違っていた場合に発生する誤ブローを防止することが可能となる。
【００２１】
【発明の効果】
この発明は、以上説明したように構成されているので、以下に示すような効果を奏する。
【００２２】
レイアウトデータから抽出した検証対象のデバイスの実デバイス座標と計算式によって算出された仮想デバイス座標とを比較し、比較の結果が予め定義された許容誤差の範囲を超える場合にエラーとするので、デバイスの物理的位置が検証でき、物理的位置のずれに伴う処理の誤動作を防ぐことができる。
【００２３】
また、実デバイス座標の座標系と実際のＬＳＩの座標系とが異なる場合にも、両者の座標系を一致させるような補正を上記実デバイス座標に施すので、デバイスの物理的位置の検証が行える。
【００２４】
また、レイアウトデータのデータベースユニットと実際のＬＳＩのデータベースユニットとが異なる場合にも、両者のサイズを一致させるような補正を実デバイス座標に施すので、デバイスの物理的位置の検証が行える。
【００２５】
また、実デバイス座標と仮想デバイス座標とが許容誤差の範囲で一致したデバイスに対して、スケマティックデータ上の接続情報と座標算出式の情報とを出力するようにしたので、物理的位置が正しいデバイスが論理的にも正しく動作するかを検証でき、処理の誤動作を完全に防ぐことができる。
【図面の簡単な説明】
【図１】  この発明の実施の形態１による半導体設計検証装置を示すブロック図である。
【図２】  図１の半導体設計検証装置による処理の流れを示すフローチャートである。
【図３】  図１のレイアウトデータ定義ファイル３の例を示す図である。
【図４】  ヒューズ座標を抽出する方法について説明した図である。
【図５】  図１のヒューズ座標算出式定義ファイル７の構造を示す図である。
【図６】  図１のヒューズ座標算出式定義ファイル７の例を示す図である。
【図７】  図１の許容誤差定義ファイル１０の例を示す図である。
【図８】  エラーリポートファイルの例を示す図である。
【図９】  この発明の実施の形態２による半導体設計検証装置を示すブロック図である。
【図１０】  図９の半導体設計検証装置による処理の流れを示すフローチャートである。
【図１１】  この発明の実施の形態２において座標系が異なる例を示す図である。
【図１２】  図９の座標系補正定義ファイル１３の例を示す図である。
【図１３】  この発明の実施の形態３による半導体設計検証装置を示すブロック図である。
【図１４】  図１３の半導体設計検証装置による処理の流れを示すフローチャートである。
【図１５】  この発明の実施の形態３においてデータベースユニットが異なる例を示す図である。
【図１６】  図１３のデータベースユニット補正定義ファイル１５の例を示す図である。
【図１７】  この発明の実施の形態４による半導体設計検証装置を示すブロック図である。
【図１８】  図１７の半導体設計検証装置による処理の流れを示すフローチャートである。
【図１９】  この発明の実施の形態４において出力されたヒューズ情報ファイル例を示す図である。
【図２０】  冗長回路（スペアワードライン）を用いて不良ビットを救済する例を示す図である。
【図２１】  冗長回路（スペアビットライン）を用いて不良ビットを救済する例を示す図である。
【符号の説明】
２  レイアウトデータ、４  配線・デバイス認識部、
５  実ヒューズ座標抽出部、８  仮想ヒューズ座標算出部、
１０  許容誤差定義ファイル、１１  ヒューズ座標比較部、
１２  エラー出力部、１４  座標系補正部、
１６  データベースユニット補正部、１８  スケマティックデータ、
１９  ＬＶＳ比較部、２０  ヒューズ情報出力部。
【図１】
0003782199.tif 000003
【図２】
0003782199.tif 000004
【図３】
0003782199.tif 000005
【図４】
0003782199.tif 000006
【図５】
0003782199.tif 000007
【図６】
0003782199.tif 000008
【図７】
0003782199.tif 000009
【図８】
0003782199.tif 000010
【図９】
0003782199.tif 000011
【図１０】
0003782199.tif 000012
【図１１】
0003782199.tif 000013
【図１２】
0003782199.tif 000014
【図１３】
0003782199.tif 000015
【図１４】
0003782199.tif 000016
【図１５】
0003782199.tif 000017
【図１６】
0003782199.tif 000018
【図１７】
0003782199.tif 000019
【図１８】
0003782199.tif 000020
【図１９】
0003782199.tif 000021
【図２０】
0003782199.tif 000022
【図２１】
0003782199.tif 000023