説明

半導体集積回路のレイアウト検証装置及びレイアウト検証方法

【課題】設計段階でインプラチェックを自動的に行う。
【解決手段】実施形態に係わるレイアウト検証装置は、半導体集積回路のレイアウトから抽出した素子が回路図と一致しているか否かを検証する第1の検証部60と、半導体集積回路のレイアウトが仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証部70とを備える。第1及び第2の検証部60,70のうちの1つ内のフィルター処理部は、被検証素子と、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行し、被検証素子に対してインプラが適切に行われているか否かを判断する。

【発明の詳細な説明】
【技術分野】
【0001】
実施形態は、半導体集積回路のレイアウト検証装置及びレイアウト検証方法に関する。
【背景技術】
【0002】
半導体集積回路の設計においては、まず、仕様情報に基づいて回路図を作成し、この回路図に基づいて半導体集積回路のレイアウト(設計データ)を作成する。この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックが行われる(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−146054号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
実施形態は、インプラを必要とする素子に対してインプラが適切に行われているか否かを設計段階で自動的に検証する技術を提案する。
【課題を解決するための手段】
【0005】
実施形態によれば、半導体集積回路のレイアウト検証装置は、仕様情報に基づいて回路図を設計する設計部と、前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証部と、前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証部とを備え、前記第1及び第2の検証部のうちの1つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有し、前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック部を有する。
【0006】
実施形態によれば、半導体集積回路のレイアウト検証方法は、仕様情報に基づいて回路図を設計する設計工程と、前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証工程と、前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証工程とを備え、前記第1及び第2の検証工程のうちの1つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程を有し、前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック工程を有する。
【図面の簡単な説明】
【0007】
【図1】レイアウト検証装置を示す図。
【図2】第1の実施例を示すフローチャート。
【図3】第1の実施例を示すフローチャート。
【図4】フィルター処理工程を示すフローチャート。
【図5】インプラチェック工程を示すフローチャート。
【図6】PチャネルFETの設計データを示す図。
【図7】PチャネルFETのデバイスを示す図。
【図8】NチャネルFETの設計データを示す図。
【図9】NチャネルFETのデバイスを示す図。
【図10】抵抗素子の設計データを示す図。
【図11】抵抗素子のデバイスを示す図。
【図12】素子抽出工程を示す図。
【図13】マスクデータのNOT処理工程を示す図。
【図14】被検証素子に必要なマスクデータを示す図。
【図15】設計ミス無しでのフィルター処理を示す図。
【図16】設計ミス無しでのフィルター処理を示す図。
【図17】設計ミス無しでのフィルター処理を示す図。
【図18】設計ミス有りでのフィルター処理を示す図。
【図19】設計ミス有りでのフィルター処理を示す図。
【図20】比較検証工程を示す図。
【図21】比較検証工程を示す図。
【図22】レイアウト検証装置を示す図。
【図23】第2の実施例を示すフローチャート。
【図24】フィルター処理工程を示すフローチャート。
【図25】インプラチェック工程を示すフローチャート。
【図26】フィルター処理工程の並列処理を示すフローチャート。
【発明を実施するための最良の形態】
【0008】
レイアウトチェックは、設計データが仕様情報から抽出したデザインルールに違反しているか否かを検証するDRC(Design Rule Check)と、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かを検証するLVS(Layout versus Schematic)とを含む。レイアウトチェックにおいて、エラーが検出されたときは、半導体集積回路のレイアウト(設計データ)の修正を行う。
【0009】
そして、レイアウトチェックをパスするまで、設計データの修正を繰り返す。
【0010】
しかし、このレイアウトチェックでは、設計データから抽出した素子がインプラ(Ion implantation)を必要とする素子であるとき、その素子に正しくインプラを行えるか否かを検証することができない。
【0011】
具体的には、半導体集積回路を形成するためには多くのインプラを必要とするため、インプラのためのマスクデータも多く存在する。設計データから抽出した素子を形成するために必要なマスクデータが正しくても、その素子を形成するために不要なマスクデータに設計ミスがあり、その素子に不要なインプラが行われてしまうことがある。
【0012】
上述のレイアウトチェックでは、LVSにより素子を抽出するとき、その素子を形成するために必要な設計データのみを用いるため、その素子を形成するために不要なマスクデータに設計ミスがあってもこれを検出することはできない。また、DRCでは、設計データがデザインルールを満たしていれば、マスクデータに設計ミスがあってもこれを検出することはできない。
【0013】
従って、誤ったマスクデータに基づいてフォトマスクが製造され、結果として、半導体集積回路の製造時に不要なインプラが行われ、デバイス特性を劣化させる。
【0014】
このような問題は、従来、レイアウトチェック後に半導体集積回路のレイアウト(設計データ)を目視検証することにより解消する。しかし、当然のことながら、インプラを必要とする全ての素子と全てのマスクデータを対象に、不要なインプラが行われているか否かを目視検証するのは、多大な労力と時間を必要とすると共に、人が行うことなのでチェックミスも発生する可能性がある。
【0015】
以下、図面を参照しながら実施形態を説明する。
【0016】
1. 半導体集積回路のレイアウト検証装置
図1は、半導体集積回路のレイアウト検証装置を示している。
【0017】
このレイアウト検証装置20は、仕様情報10に基づいて回路図を設計する設計部30と、回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部40とを有する。半導体集積回路の設計においては、まず、仕様情報10に基づいて回路図を作成し、この回路図に基づいて半導体集積回路のレイアウト(設計データ)を作成する。この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを行う。
【0018】
レイアウトチェックは、レイアウト検証装置20内のレイアウト検証部50において行う。レイアウト検証部50は、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かを検証する第1の検証部(例えば、LVS)60と、設計データが仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証部(例えば、DRC)とを有する。
【0019】
レイアウト検証部50内でのレイアウトチェックにおいて、エラーが検出されたときは、エラー情報がレイアウト検証装置20内のデータ入出力部90から出力される。設計者は、このエラー情報に基づいて、半導体集積回路のレイアウト(設計データ)の修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【0020】
実施形態では、レイアウト検証部50は、インプラを必要とする被検証素子に対して半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有する。フィルター処理部は、第1及び第2の検証部60,70のうちの1つの機能として新たに付加してもよいし、第1及び第2の検証部60,70とは独立に、レイアウト検証部50内に第3の検証部として付加してもよい。
【0021】
フィルター処理部の詳細については後述するが、ここでその特徴を簡単に述べると、フィルター処理部は、被検証素子と、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック部と、アンドロジックを実行する前の被検証素子とアンドロジックを実行した後の被検証素子とのエクスクルーシブオアロジックにより、被検証素子に対して不要なインプラ領域の有無を判断する第2のロジック部とを有する。
【0022】
但し、被検証素子及びマスクデータは、2値(“0”/“1”)で表され、かつ、両者共に同じ値を有する。また、マスクデータは、インプラの対象となる領域(インプラ領域)を表す。
【0023】
マスク製造部100は、マスクデータに基づいてフォトマスクを製造する。また、LSI製造部110は、半導体デバイス上にレジストマスクを形成するため、マスクデータに基づいて製造されたフォトマスクを用いてフォトリソグラフィを行う。デバイス検証部120は、LSI製造部110により製造された半導体デバイスの特性を検証する。
【0024】
ここで、実施形態では、レイアウト検証部50内にフィルター処理部を有しているため、マスクデータの設計ミスにより、被検証素子に不要なインプラが行われてしまうとき/被検証素子に必要なインプラが行われないときは、そのエラーを迅速かつ確実に検出できる。また、フィルター処理部は、このエラーを有する被検証素子の位置を特定することもできる。
【0025】
従って、設計者は、レイアウト検証装置20から出力される検証結果に基づいて、設計ミスを迅速かつ確実に修正することができるため、結果として、設計時間の短縮を図ることができる。
【0026】
2. レイアウト検証装置の動作
図1のレイアウト検証装置の動作(レイアウト検証方法)を説明する。
【0027】
(1) 第1の実施例
まず、設計部30において、仕様情報に基づいて回路図を設計する(設計工程)。次に、レイアウト作成部40において、回路図に基づいて半導体集積回路のレイアウト(設計データ)を作成する(レイアウト作成工程)。
【0028】
この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを図2のフローチャートに従って行う。
【0029】
まず、DRCルール、LVSルール及び設計データに基づいて、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かの第1の検証工程(LVS)を実行する。また、設計データが仕様情報から抽出したデザインルールに違反しているか否かの第2の検証工程(DRC)を実行する(ステップST1)。
【0030】
この後、半導体集積回路のレイアウトの検証を行う(ステップST2)。
【0031】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【0032】
第1の検証工程では、不要なインプラ領域があるか否かについても検証する。
【0033】
即ち、第1の検証工程は、図3のフローチャートに示すように、素子抽出工程により抽出されたインプラを必要とする被検証素子に対して半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程と、フィルター処理工程を経た被検証素子が回路図と一致しているか否かの比較検証を行う比較検証工程(LVS工程)とを有する。従って、レイアウト検証装置は、フィルター処理工程の結果を反映した検証結果を出力する。
【0034】
フィルター処理工程は、図4のフローチャートに示すように、半導体集積回路から抽出した同一の複数の被検証素子(例えば、FETのゲート及びソース/ドレイン、抵抗素子、容量素子並びに整流素子のうちの1つ)に対して並列処理される。また、この並列処理と共に、図26のフローチャートに示すように、半導体集積回路から抽出した異なる複数の被検証素子に対して並列処理を行ってもよい。
【0035】
フィルター処理工程は、具体的には、図5のフローチャートに示すように、被検証素子(素子データ)Ei(i=1,2,…m)と、被検証素子Eiを形成するために必要なマスクデータと、被検証素子Eiを形成するために不要なマスクデータをNOT処理したデータ(被検証素子Eiを形成するために不要なマスクデータの反転データ)とのアンドロジックを実行する第1のロジック工程(ステップST1)を有する。
【0036】
以上の手順に従って半導体集積回路のレイアウトの検証を行ったときに、被検証素子Eiに対して、不要な/必要なインプラ領域の有無を判断することができることを、設計データの変化の様子(イメージ)により説明する。
【0037】
図6は、PチャネルFETのレイアウト(設計データ)の例である。AAは、アクティブエリア、GCは、ゲート、Mpは、マスクデータである。マスクデータMpは、半導体デバイスの製造時に実際にP型不純物のインプラの対象となる領域(インプラ領域)を表している。即ち、図7に示すように、PチャネルFETを形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMpで示されるインプラ領域に対して行われる。
【0038】
図8は、NチャネルFETのレイアウト(設計データ)の例である。AAは、アクティブエリア、GCは、ゲート、Mnは、マスクデータである。マスクデータMnは、半導体デバイスの製造時に実際にN型不純物のインプラの対象となる領域(インプラ領域)を表している。即ち、図9に示すように、NチャネルFETを形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMnで示されるインプラ領域に対して行われる。
【0039】
図10は、抵抗素子(拡散抵抗)のレイアウト(設計データ)の例である。AAは、アクティブエリア、Mrは、マスクデータである。マスクデータMrは、半導体デバイスの製造時に実際にP型不純物又はN型不純物のインプラの対象となる領域(インプラ領域)を表している。即ち、図11に示すように、抵抗素子を形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMrで示されるインプラ領域に対して行われる。図11において、P及びNの添え字(+及び-)は、抵抗素子の抵抗値(+ →低抵抗、- →高抵抗)を表している。
【0040】
図12は、第1の検証工程での素子抽出の例を示している。
【0041】
まず、半導体集積回路(設計データ)からアクティブエリアAA及びゲートGCを抽出し、両者のアンドロジックを実行する。その結果、PチャネルFETのゲート及びNチャネルFETのゲートがそれぞれ抽出される。また、半導体集積回路からアクティブエリアAA及び抵抗素子Rを抽出し、両者のアンドロジックを実行する。その結果、抵抗素子Rが抽出される。同様のロジック手法により、PチャネルFETの拡散層や、NチャネルFETの拡散層なども抽出することができる。
【0042】
図13は、マスクデータのNOT処理を示している。
【0043】
マスクデータM1は、PチャネルFETを形成するために必要なマスクデータMpであり、PチャネルFETに必要なインプラ領域を、例えば、データ“1”で表している。NOT処理後のマスクデータM1は、図示するように、PチャネルFETに必要なインプラ領域以外の領域がデータ“1”となる。
【0044】
マスクデータM2は、NチャネルFETを形成するために必要なマスクデータMnであり、NチャネルFETに必要なインプラ領域を、例えば、データ“1”で表している。NOT処理後のマスクデータM2は、図示するように、NチャネルFETに必要なインプラ領域以外の領域がデータ“1”となる。
【0045】
マスクデータM3は、抵抗素子を形成するために必要なマスクデータMrであり、抵抗素子に必要なインプラ領域を、例えば、データ“1”で表している。NOT処理後のマスクデータM3は、図示するように、抵抗素子に必要なインプラ領域以外の領域がデータ“1”となる。
【0046】
図14は、被検証素子とそれを形成するために必要なマスクデータとの関係の例を示している。
【0047】
例えば、PチャネルFETを形成するために必要なマスクデータは、マスクデータM1(Mp)であり、それ以外のマスクデータM2〜Mjは、PチャネルFETを形成するために不要であると仮定する。また、NチャネルFETを形成するために必要なマスクデータは、マスクデータM2(Mn)であり、それ以外のマスクデータM1, M3〜Mjは、NチャネルFETを形成するために不要であると仮定する。さらに、抵抗素子を形成するために必要なマスクデータは、マスクデータM3(Mr)であり、それ以外のマスクデータM1, M2, M4〜Mjは、抵抗素子を形成するために不要であると仮定する。
【0048】
このような仮定の下で、半導体集積回路から抽出された被検証素子に対してマスクロジックによるフィルター処理を実行する。
【0049】
図15は、設計ミス無しのときのPチャネルFETのフィルター処理を示している。
【0050】
素子データAは、図12の素子抽出工程により抽出された被検証素子である。
【0051】
ここでは、PチャネルFETのゲートGCをフィルター処理の対象としているため、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをNOT処理したデータbM2〜bMjとのアンドロジックを実行する。
【0052】
この場合、同図に示すように、アンドロジックを実行する前のPチャネルFETのゲートGC(素子データA)とアンドロジックを実行した後のPチャネルFETのゲートGC(素子データB)とは、同じ(被検証素子が認識された状態)となる。
【0053】
従って、マスクロジックによるフィルター処理を行った後、続けて、第1の検証工程(LVS)における回路の比較検証(抽出素子と回路図との比較)を行えば、その比較検証において、不要な/必要なインプラ領域の有無を検証することができる。
【0054】
例えば、PチャネルFETのゲートGCに対して、不要なインプラ領域が無いとき/必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC(素子データB)が残るため、第1の検証工程(LVS)における回路の比較検証がOKとなる。
【0055】
これに対し、PチャネルFETのゲートGCに対して、不要なインプラ領域が有るとき/必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC(素子データB)が消えるため、第1の検証工程(LVS)における回路の比較検証がNGとなる。
【0056】
図16は、設計ミス無しのときのNチャネルFETのフィルター処理を示している。
【0057】
素子データAは、図12の素子抽出工程により抽出されたNチャネルFETのゲートGCである。本例では、NチャネルFETのゲートGCを形成するために必要なマスクデータM2と、NチャネルFETのゲートGCを形成するために不要なマスクデータをNOT処理したデータbM1, bM3〜bMjとのアンドロジックを実行する。
【0058】
この場合、同図に示すように、アンドロジックを実行する前のNチャネルFETのゲートGC(素子データA)とアンドロジックを実行した後のNチャネルFETのゲートGC(素子データB)とは、同じ(被検証素子が認識された状態)となる。
【0059】
従って、マスクロジックによるフィルター処理を行った後、続けて、第1の検証工程(LVS)における回路の比較検証(抽出素子と回路図との比較)を行えば、その比較検証において、不要な/必要なインプラ領域の有無を検証することができる。
【0060】
例えば、NチャネルFETのゲートGCに対して、不要なインプラ領域が無いとき/必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にNチャネルFETのゲートGC(素子データB)が残るため、第1の検証工程(LVS)における回路の比較検証がOKとなる。
【0061】
これに対し、NチャネルFETのゲートGCに対して、不要なインプラ領域が有るとき/必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にNチャネルFETのゲートGC(素子データB)が消えるため、第1の検証工程(LVS)における回路の比較検証がNGとなる。
【0062】
図17は、設計ミス無しのときの抵抗素子のフィルター処理を示している。
【0063】
素子データAは、図12の素子抽出工程により抽出された抵抗素子Rである。本例では、抵抗素子Rを形成するために必要なマスクデータM3と、抵抗素子Rを形成するために不要なマスクデータをNOT処理したデータbM1, bM2, bM4〜bMjとのアンドロジックを実行する。
【0064】
この場合、同図に示すように、アンドロジックを実行する前の抵抗素子R(素子データA)とアンドロジックを実行した後の抵抗素子R(素子データB)とは、同じ(被検証素子が認識された状態)となる。
【0065】
従って、マスクロジックによるフィルター処理を行った後、続けて、第1の検証工程(LVS)における回路の比較検証(抽出素子と回路図との比較)を行えば、その比較検証において、不要な/必要なインプラ領域の有無を検証することができる。
【0066】
例えば、抵抗素子Rに対して、不要なインプラ領域が無いとき/必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後に抵抗素子R(素子データB)が残るため、第1の検証工程(LVS)における回路の比較検証がOKとなる。
【0067】
これに対し、抵抗素子Rに対して、不要なインプラ領域が有るとき/必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後に抵抗素子R(素子データB)が消えるため、第1の検証工程(LVS)における回路の比較検証がNGとなる。
【0068】
図18は、設計ミス有りのときのPチャネルFETのフィルター処理を示している。
【0069】
素子データAは、図12の素子抽出工程により抽出された被検証素子である。
【0070】
ここでは、PチャネルFETのゲートGCをフィルター処理の対象としているため、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをNOT処理したデータbM2〜bMjとのアンドロジックを実行する。
【0071】
本例では、PチャネルFETのゲートGCを形成するために不要なマスクデータ、即ち、そのマスクデータをNOT処理したデータbM3に不要なインプラ領域が存在し、この不要なインプラ領域により、PチャネルFETのゲートGCに不要なインプラが行われる場合を説明する。
【0072】
この場合、同図に示すように、上述のアンドロジックを実行すると、PチャネルFETのゲートGCが消える。このため、アンドロジックを実行する前のPチャネルFETのゲートGC(素子データA)とアンドロジックを実行した後のPチャネルFETのゲートGC(素子データB)とは、異なる(被検証素子が認識されない状態)。
【0073】
従って、マスクロジックによるフィルター処理を行った後、続けて、第1の検証工程(LVS)における回路の比較検証(抽出素子と回路図との比較)を行えば、その比較検証において、不要なインプラ領域が有ることを確認できる。
【0074】
即ち、PチャネルFETのゲートGCに対して、不要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC(素子データB)が消えるため、第1の検証工程(LVS)における回路の比較検証がNGとなる。
【0075】
図19は、設計ミス有りのときのPチャネルFETのフィルター処理を示している。
【0076】
実施形態に係わるマスクデータによるフィルター処理によれば、不要なインプラ領域を検出できると共に、必要なインプラ領域が存在しない場合の設計ミスも検出できる。これについて以下説明する。
【0077】
本来ならば、マスクデータM1に、PチャネルFETのゲートGCを形成するために必要なインプラ領域が存在するが(図15を参照)、例えば、設計ミスにより、マスクデータM1に、PチャネルFETのゲートGCを形成するために必要なインプラ領域が存在しない場合を検討する。
【0078】
素子データAは、図12の素子抽出工程により抽出されたPチャネルFETのゲートGCである。本例では、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをNOT処理したデータbM2〜bMjとのアンドロジックを実行する。
【0079】
この場合、PチャネルFETのゲートGCに対応するマスクデータM1は、必要なインプラ領域が存在しないため、データ“0”になる。このため、上述のアンドロジックを実行すると、PチャネルFETのゲートGCが消える。従って、アンドロジックを実行する前のPチャネルFETのゲートGC(素子データA)とアンドロジックを実行した後のPチャネルFETのゲートGC(素子データB)とは、異なる(被検証素子が認識されない状態)。
【0080】
従って、マスクロジックによるフィルター処理を行った後、続けて、第1の検証工程(LVS)における回路の比較検証(抽出素子と回路図との比較)を行えば、その比較検証において、必要なインプラ領域が無いことを確認できる。
【0081】
即ち、PチャネルFETのゲートGCに対して、必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC(素子データB)が消えるため、第1の検証工程(LVS)における回路の比較検証がNGとなる。
【0082】
以上、第1の実施例では、第1の検証部(第1の検証工程)において、マスクデータによるフィルター処理を行うことにより、例えば、そのフィルター処理を行った被検証素子に対して、LVS工程による比較検証を行うことにより、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かと同時に、被検証素子に対して不要な/必要なインプラ領域があるか否かについても検証することができる。
【0083】
また、本例のフィルター処理では、被検証素子の種類によらず、一律に、半導体集積回路の製造に使用する全てのマスクデータを使用するため、第1の検証部における検証前に不要なインプラ領域が存在する/必要なインプラ領域が存在しないマスクデータを特定する必要がない。即ち、半導体集積回路の製造に使用する全てのマスクデータを、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータとに分けるだけで、不要な/必要なインプラ領域があるか否かを検出できる。
【0084】
さらに、第1の検証部における検証後に、不要なインプラ領域が存在する/必要なインプラ領域が存在しない被検証素子が特定されれば、その被検証素子に対して不要なインプラ領域が存在する/必要なインプラ領域が存在しないマスクデータ(設計ミス)を特定することは容易に行えるため、その設計ミスを迅速かつ確実に修正し、設計時間の短縮を図ることができる。
【0085】
尚、第1の実施例では、マスクデータによるフィルター処理工程は、図1の第1の検証部60の1つの機能として新たに付加したが、図1の第2の検証部70の1つの機能として新たに付加してもよい。
【0086】
第2の検証部70における第2の検証工程(DRC)において、不要な/必要なインプラ領域の有無を検証するときは、第1の検証工程(LVS)での回路の比較検証といった工程が存在しないため、図15乃至図19の素子データBについて、さらに以下の比較検証工程を追加することもできる。
【0087】
例えば、図20に示すように、素子データAと素子データBとのエクスクルーシブオアロジック(XOR)を実行する。不要なインプラ領域が無いとき/必要なインプラ領域が有るときは、検証結果として、抽出素子(被検証素子)が消える。この抽出素子が消えた状態が、検証結果OK、即ち、被検証素子に対して不要なインプラ領域が無いこと/必要なインプラ領域が有ることを表している。
【0088】
これに対し、例えば、図21に示すように、不要なインプラ領域が有るとき/必要なインプラ領域が無いときは、素子データAと素子データBとのエクスクルーシブオアロジック(XOR)を実行すると、抽出素子(被検証素子)がそのまま残る。この抽出素子が残った状態が、検証結果NG、即ち、被検証素子に対して不要なインプラ領域が有ること/必要なインプラ領域が無いことを表している。
【0089】
(2) 第2の実施例
第2の実施例では、図22に示すように、マスクデータによるフィルター処理工程は、第1及び第2の検証部60,70とは独立に、レイアウト検証部50内に第3の検証部(フィルター処理部)80として新たに付加する。その他の構成については、第1の実施例と同じであるため、その説明を省略する。
【0090】
まず、設計部30において、仕様情報に基づいて回路図を設計する(設計工程)。次に、レイアウト作成部40において、回路図に基づいて半導体集積回路のレイアウト(設計データ)を作成する(レイアウト作成工程)。
【0091】
この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを図23のフローチャートに従って行う。
【0092】
まず、DRCルール、LVSルール及び設計データに基づいて、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かの第1の検証工程(LVS)を実行する。また、設計データが仕様情報から抽出したデザインルールに違反しているか否かの第2の検証工程(DRC)を実行する(ステップST1)。
【0093】
この後、LVS/DRC検証を行う(ステップST2)。
【0094】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【0095】
第1及び第2の検証工程をパスすると、次に、第3の検証工程が行われる。第3の検証工程では、不要な/必要なインプラ領域があるか否かについての検証が行われる。まず、設計データの読み込みを行い(ステップST3)、マスクデータによるフィルター処理工程を実行する(ステップST4)。
【0096】
この後、半導体集積回路のレイアウトの検証を行う(ステップST5)。
【0097】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【0098】
フィルター処理工程は、図24のフローチャートに示すように、半導体集積回路から抽出した同一の複数の被検証素子(例えば、FETのゲート及びソース/ドレイン、抵抗素子、容量素子並びに整流素子のうちの1つ)に対して並列処理される。また、この並列処理と共に、図26のフローチャートに示すように、半導体集積回路から抽出した異なる複数の被検証素子に対して並列処理を行ってもよい。
【0099】
フィルター処理工程は、具体的には、図25のフローチャートに示すように、被検証素子(素子データ)Ei(i=1,2,…m)と、被検証素子Eiを形成するために必要なマスクデータと、被検証素子Eiを形成するために不要なマスクデータをNOT処理したデータ(被検証素子Eiを形成するために不要なマスクデータの反転データ)とのアンドロジックを実行する第1のロジック工程(ステップST1)と、第1のロジック工程を実行する前の被検証素子Eiと第1のロジック工程を実行した後の被検証素子Eiとのエクスクルーシブオアロジック(XOR)により、被検証素子Eiに対して不要なインプラ領域の有無を判断する第2のロジック工程(ステップST2〜ST3)とを有する。
【0100】
フィルター処理工程については、第1の実施例(図6〜図21)と同じであり、また、既に、第1の実施例で詳細に説明したため、ここではその詳細な説明を省略する。
【0101】
第2の実施例が第1の実施例と異なる点は、エクスクルーシブオアロジック(XOR)を行う工程が追加されている点にある。
【0102】
第1の実施例では、例えば、第1の検証工程(LVS)において回路比較を行うため、このようなエクスクルーシブオアロジックが必要ない。しかし、第2の実施例では、第1及び第2の検証工程とは独立に、第3の検証工程において不要な/必要なインプラ領域の有無を検証するため、このエクスクルーシブオアロジックを設けるのが好ましい。
【0103】
エクスクルーシブオアロジックによる比較検証は、例えば、図20及び図21に示す通りである。
【0104】
まず、図20に示すように、不要なインプラ領域が無いとき/必要なインプラ領域が有るときは、素子データAと素子データBとのエクスクルーシブオアロジックを実行すると、検証結果として、抽出素子(被検証素子)が消える。この抽出素子が消えた状態が、検証結果OK、即ち、被検証素子に対して不要なインプラ領域が無いこと/必要なインプラ領域が有ることを表している。
【0105】
また、図21に示すように、不要なインプラ領域が有るとき/必要なインプラ領域が無いときは、素子データAと素子データBとのエクスクルーシブオアロジックを実行すると、抽出素子(被検証素子)がそのまま残る。この抽出素子が残った状態が、検証結果NG、即ち、被検証素子に対して不要なインプラ領域が有ること/必要なインプラ領域が無いことを表している。
【0106】
このフィルター処理工程により、被検証素子Eiに対して不要な/必要なインプラ領域があるか否かを検出できる。
【0107】
第2の実施例においても、第1の実施例と同じ効果を得ることができる。
【0108】
3. むすび
実施形態によれば、インプラを必要とする素子に対してインプラが適切に行われているか否かを設計段階のレイアウトチェックで自動的に検証することができる。
【0109】
本発明の例は、上述の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で、各構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を構成できる。例えば、上述の実施形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施形態の構成要素を適宜組み合わせてもよい。
【符号の説明】
【0110】
10: 仕様情報、 20: 半導体集積回路のレイアウト検証装置、 30: 設計部、 40: レイアウト作成部、 50: レイアウト検証部、 60: 第1の検証部、 70: 第2の検証部、 80: 第3の検証部、 90: データ入出力部、 100: マスク製造部、 110: LSI製造部、 120: デバイス検証部。

【特許請求の範囲】
【請求項1】
仕様情報に基づいて回路図を設計する設計部と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証部と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証部とを具備し、
前記第1及び第2の検証部のうちの1つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有し、
前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック部を有する
ことを特徴とする半導体集積回路のレイアウト検証装置。
【請求項2】
前記第1の検証部が前記フィルター処理部を有するとき、前記第1の検証部は、前記フィルター処理後の前記被検証素子が前記回路図と一致しているか否かについて比較検証を行うことを特徴とする請求項1に記載の半導体集積回路のレイアウト検証装置。
【請求項3】
前記第2の検証部が前記フィルター処理部を有するとき、前記フィルター処理部は、さらに、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第2のロジック部を有することを特徴とする請求項1に記載の半導体集積回路のレイアウト検証装置。
【請求項4】
仕様情報に基づいて回路図を設計する設計部と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証部と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証部と、
前記半導体集積回路のレイアウトから抽出したインプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部とを具備し、
前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック部と、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第2のロジック部とを有する
ことを特徴とする半導体集積回路のレイアウト検証装置。
【請求項5】
前記フィルター処理部は、前記半導体集積回路から抽出した異なる複数の被検証素子に対して、同時に、前記インプラが適切に行われているか否かを判断することを特徴とする請求項1又は4に記載の半導体集積回路のレイアウト検証装置。
【請求項6】
前記被検証素子は、FETのゲート及びソース/ドレイン、抵抗素子、容量素子並びに整流素子のうちの1つであることを特徴とする請求項1又は4に記載の半導体集積回路のレイアウト検証装置。
【請求項7】
仕様情報に基づいて回路図を設計する設計工程と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証工程と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証工程とを具備し、
前記第1及び第2の検証工程のうちの1つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程を有し、
前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック工程を有する
ことを特徴とする半導体集積回路のレイアウト検証方法。
【請求項8】
仕様情報に基づいて回路図を設計する設計工程と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第1の検証工程と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第2の検証工程と、
前記半導体集積回路のレイアウトから抽出したインプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程とを具備し、
前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第1のロジック工程と、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第2のロジック工程とを有する
ことを特徴とする半導体集積回路のレイアウト検証方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2012−68876(P2012−68876A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−212717(P2010−212717)
【出願日】平成22年9月22日(2010.9.22)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】