(57)【要約】【課題】設計段階でインプラチェックを自動的に行う。【解決手段】実施形態に係わるレイアウト検証装置は、半導体集積回路のレイアウトから抽出した素子が回路図と一致しているか否かを検証する第１の検証部６０と、半導体集積回路のレイアウトが仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証部７０とを備える。第１及び第２の検証部６０，７０のうちの１つ内のフィルター処理部は、被検証素子と、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行し、被検証素子に対してインプラが適切に行われているか否かを判断する。【選択図】図１
2012068876.tif 000002
【特許請求の範囲】
【請求項１】
仕様情報に基づいて回路図を設計する設計部と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証部と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証部とを具備し、
前記第１及び第２の検証部のうちの１つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有し、
前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック部を有する
ことを特徴とする半導体集積回路のレイアウト検証装置。
【請求項２】
前記第１の検証部が前記フィルター処理部を有するとき、前記第１の検証部は、前記フィルター処理後の前記被検証素子が前記回路図と一致しているか否かについて比較検証を行うことを特徴とする請求項１に記載の半導体集積回路のレイアウト検証装置。
【請求項３】
前記第２の検証部が前記フィルター処理部を有するとき、前記フィルター処理部は、さらに、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第２のロジック部を有することを特徴とする請求項１に記載の半導体集積回路のレイアウト検証装置。
【請求項４】
仕様情報に基づいて回路図を設計する設計部と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証部と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証部と、
前記半導体集積回路のレイアウトから抽出したインプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部とを具備し、
前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック部と、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第２のロジック部とを有する
ことを特徴とする半導体集積回路のレイアウト検証装置。
【請求項５】
前記フィルター処理部は、前記半導体集積回路から抽出した異なる複数の被検証素子に対して、同時に、前記インプラが適切に行われているか否かを判断することを特徴とする請求項１又は４に記載の半導体集積回路のレイアウト検証装置。
【請求項６】
前記被検証素子は、FETのゲート及びソース／ドレイン、抵抗素子、容量素子並びに整流素子のうちの１つであることを特徴とする請求項１又は４に記載の半導体集積回路のレイアウト検証装置。
【請求項７】
仕様情報に基づいて回路図を設計する設計工程と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証工程と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証工程とを具備し、
前記第１及び第２の検証工程のうちの１つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程を有し、
前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック工程を有する
ことを特徴とする半導体集積回路のレイアウト検証方法。
【請求項８】
仕様情報に基づいて回路図を設計する設計工程と、
前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、
前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証工程と、
前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証工程と、
前記半導体集積回路のレイアウトから抽出したインプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程とを具備し、
前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック工程と、前記アンドロジックを実行する前の前記被検証素子と前記アンドロジックを実行した後の前記被検証素子とのエクスクルーシブオアロジックを実行する第２のロジック工程とを有する
ことを特徴とする半導体集積回路のレイアウト検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、半導体集積回路のレイアウト検証装置及びレイアウト検証方法に関する。
【背景技術】
【０００２】
半導体集積回路の設計においては、まず、仕様情報に基づいて回路図を作成し、この回路図に基づいて半導体集積回路のレイアウト（設計データ）を作成する。この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックが行われる（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１４６０５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実施形態は、インプラを必要とする素子に対してインプラが適切に行われているか否かを設計段階で自動的に検証する技術を提案する。
【課題を解決するための手段】
【０００５】
実施形態によれば、半導体集積回路のレイアウト検証装置は、仕様情報に基づいて回路図を設計する設計部と、前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部と、前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証部と、前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証部とを備え、前記第１及び第２の検証部のうちの１つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有し、前記フィルター処理部は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック部を有する。
【０００６】
実施形態によれば、半導体集積回路のレイアウト検証方法は、仕様情報に基づいて回路図を設計する設計工程と、前記回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成工程と、前記半導体集積回路のレイアウトから抽出した素子が前記回路図と一致しているか否かを検証する第１の検証工程と、前記半導体集積回路のレイアウトが前記仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証工程とを備え、前記第１及び第２の検証工程のうちの１つは、インプラを必要とする被検証素子に対して前記半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程を有し、前記フィルター処理工程は、前記被検証素子と、前記被検証素子を形成するために必要なマスクデータと、前記被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック工程を有する。
【図面の簡単な説明】
【０００７】
【図１】レイアウト検証装置を示す図。
【図２】第１の実施例を示すフローチャート。
【図３】第１の実施例を示すフローチャート。
【図４】フィルター処理工程を示すフローチャート。
【図５】インプラチェック工程を示すフローチャート。
【図６】PチャネルFETの設計データを示す図。
【図７】PチャネルFETのデバイスを示す図。
【図８】NチャネルFETの設計データを示す図。
【図９】NチャネルFETのデバイスを示す図。
【図１０】抵抗素子の設計データを示す図。
【図１１】抵抗素子のデバイスを示す図。
【図１２】素子抽出工程を示す図。
【図１３】マスクデータのＮＯＴ処理工程を示す図。
【図１４】被検証素子に必要なマスクデータを示す図。
【図１５】設計ミス無しでのフィルター処理を示す図。
【図１６】設計ミス無しでのフィルター処理を示す図。
【図１７】設計ミス無しでのフィルター処理を示す図。
【図１８】設計ミス有りでのフィルター処理を示す図。
【図１９】設計ミス有りでのフィルター処理を示す図。
【図２０】比較検証工程を示す図。
【図２１】比較検証工程を示す図。
【図２２】レイアウト検証装置を示す図。
【図２３】第２の実施例を示すフローチャート。
【図２４】フィルター処理工程を示すフローチャート。
【図２５】インプラチェック工程を示すフローチャート。
【図２６】フィルター処理工程の並列処理を示すフローチャート。
【発明を実施するための最良の形態】
【０００８】
レイアウトチェックは、設計データが仕様情報から抽出したデザインルールに違反しているか否かを検証するDRC（Design Rule Check）と、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かを検証するLVS（Layout versus Schematic）とを含む。レイアウトチェックにおいて、エラーが検出されたときは、半導体集積回路のレイアウト（設計データ）の修正を行う。
【０００９】
そして、レイアウトチェックをパスするまで、設計データの修正を繰り返す。
【００１０】
しかし、このレイアウトチェックでは、設計データから抽出した素子がインプラ(Ion implantation)を必要とする素子であるとき、その素子に正しくインプラを行えるか否かを検証することができない。
【００１１】
具体的には、半導体集積回路を形成するためには多くのインプラを必要とするため、インプラのためのマスクデータも多く存在する。設計データから抽出した素子を形成するために必要なマスクデータが正しくても、その素子を形成するために不要なマスクデータに設計ミスがあり、その素子に不要なインプラが行われてしまうことがある。
【００１２】
上述のレイアウトチェックでは、LVSにより素子を抽出するとき、その素子を形成するために必要な設計データのみを用いるため、その素子を形成するために不要なマスクデータに設計ミスがあってもこれを検出することはできない。また、DRCでは、設計データがデザインルールを満たしていれば、マスクデータに設計ミスがあってもこれを検出することはできない。
【００１３】
従って、誤ったマスクデータに基づいてフォトマスクが製造され、結果として、半導体集積回路の製造時に不要なインプラが行われ、デバイス特性を劣化させる。
【００１４】
このような問題は、従来、レイアウトチェック後に半導体集積回路のレイアウト（設計データ）を目視検証することにより解消する。しかし、当然のことながら、インプラを必要とする全ての素子と全てのマスクデータを対象に、不要なインプラが行われているか否かを目視検証するのは、多大な労力と時間を必要とすると共に、人が行うことなのでチェックミスも発生する可能性がある。
【００１５】
以下、図面を参照しながら実施形態を説明する。
【００１６】
１．  半導体集積回路のレイアウト検証装置  
図１は、半導体集積回路のレイアウト検証装置を示している。
【００１７】
このレイアウト検証装置２０は、仕様情報１０に基づいて回路図を設計する設計部３０と、回路図に基づいて半導体集積回路のレイアウトを作成するレイアウト作成部４０とを有する。半導体集積回路の設計においては、まず、仕様情報１０に基づいて回路図を作成し、この回路図に基づいて半導体集積回路のレイアウト（設計データ）を作成する。この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを行う。
【００１８】
レイアウトチェックは、レイアウト検証装置２０内のレイアウト検証部５０において行う。レイアウト検証部５０は、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かを検証する第１の検証部（例えば、LVS）６０と、設計データが仕様情報から抽出したデザインルールに違反しているか否かを検証する第２の検証部（例えば、DRC）とを有する。
【００１９】
レイアウト検証部５０内でのレイアウトチェックにおいて、エラーが検出されたときは、エラー情報がレイアウト検証装置２０内のデータ入出力部９０から出力される。設計者は、このエラー情報に基づいて、半導体集積回路のレイアウト（設計データ）の修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【００２０】
実施形態では、レイアウト検証部５０は、インプラを必要とする被検証素子に対して半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理部を有する。フィルター処理部は、第１及び第２の検証部６０，７０のうちの１つの機能として新たに付加してもよいし、第１及び第２の検証部６０，７０とは独立に、レイアウト検証部５０内に第３の検証部として付加してもよい。
【００２１】
フィルター処理部の詳細については後述するが、ここでその特徴を簡単に述べると、フィルター処理部は、被検証素子と、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータの反転データとのアンドロジックを実行する第１のロジック部と、アンドロジックを実行する前の被検証素子とアンドロジックを実行した後の被検証素子とのエクスクルーシブオアロジックにより、被検証素子に対して不要なインプラ領域の有無を判断する第２のロジック部とを有する。
【００２２】
但し、被検証素子及びマスクデータは、２値（“０”／“１”）で表され、かつ、両者共に同じ値を有する。また、マスクデータは、インプラの対象となる領域（インプラ領域）を表す。
【００２３】
マスク製造部１００は、マスクデータに基づいてフォトマスクを製造する。また、ＬＳＩ製造部１１０は、半導体デバイス上にレジストマスクを形成するため、マスクデータに基づいて製造されたフォトマスクを用いてフォトリソグラフィを行う。デバイス検証部１２０は、ＬＳＩ製造部１１０により製造された半導体デバイスの特性を検証する。
【００２４】
ここで、実施形態では、レイアウト検証部５０内にフィルター処理部を有しているため、マスクデータの設計ミスにより、被検証素子に不要なインプラが行われてしまうとき／被検証素子に必要なインプラが行われないときは、そのエラーを迅速かつ確実に検出できる。また、フィルター処理部は、このエラーを有する被検証素子の位置を特定することもできる。
【００２５】
従って、設計者は、レイアウト検証装置２０から出力される検証結果に基づいて、設計ミスを迅速かつ確実に修正することができるため、結果として、設計時間の短縮を図ることができる。
【００２６】
２．  レイアウト検証装置の動作  
図１のレイアウト検証装置の動作（レイアウト検証方法）を説明する。
【００２７】
(1)   第１の実施例  
まず、設計部３０において、仕様情報に基づいて回路図を設計する（設計工程）。次に、レイアウト作成部４０において、回路図に基づいて半導体集積回路のレイアウト（設計データ）を作成する（レイアウト作成工程）。
【００２８】
この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを図２のフローチャートに従って行う。
【００２９】
まず、DRCルール、LVSルール及び設計データに基づいて、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かの第１の検証工程（LVS）を実行する。また、設計データが仕様情報から抽出したデザインルールに違反しているか否かの第２の検証工程（DRC）を実行する（ステップＳＴ１）。
【００３０】
この後、半導体集積回路のレイアウトの検証を行う（ステップＳＴ２）。
【００３１】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【００３２】
第１の検証工程では、不要なインプラ領域があるか否かについても検証する。
【００３３】
即ち、第１の検証工程は、図３のフローチャートに示すように、素子抽出工程により抽出されたインプラを必要とする被検証素子に対して半導体集積回路に使用するマスクデータによるフィルター処理を行うフィルター処理工程と、フィルター処理工程を経た被検証素子が回路図と一致しているか否かの比較検証を行う比較検証工程（LVS工程）とを有する。従って、レイアウト検証装置は、フィルター処理工程の結果を反映した検証結果を出力する。
【００３４】
フィルター処理工程は、図４のフローチャートに示すように、半導体集積回路から抽出した同一の複数の被検証素子（例えば、FETのゲート及びソース／ドレイン、抵抗素子、容量素子並びに整流素子のうちの１つ）に対して並列処理される。また、この並列処理と共に、図２６のフローチャートに示すように、半導体集積回路から抽出した異なる複数の被検証素子に対して並列処理を行ってもよい。
【００３５】
フィルター処理工程は、具体的には、図５のフローチャートに示すように、被検証素子（素子データ）Ｅｉ（ｉ＝１，２，…ｍ）と、被検証素子Ｅｉを形成するために必要なマスクデータと、被検証素子Ｅｉを形成するために不要なマスクデータをＮＯＴ処理したデータ（被検証素子Ｅｉを形成するために不要なマスクデータの反転データ）とのアンドロジックを実行する第１のロジック工程（ステップＳＴ１）を有する。
【００３６】
以上の手順に従って半導体集積回路のレイアウトの検証を行ったときに、被検証素子Ｅｉに対して、不要な／必要なインプラ領域の有無を判断することができることを、設計データの変化の様子（イメージ）により説明する。
【００３７】
図６は、PチャネルFETのレイアウト（設計データ）の例である。AAは、アクティブエリア、GCは、ゲート、Mpは、マスクデータである。マスクデータMpは、半導体デバイスの製造時に実際にP型不純物のインプラの対象となる領域（インプラ領域）を表している。即ち、図７に示すように、PチャネルFETを形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMpで示されるインプラ領域に対して行われる。
【００３８】
図８は、NチャネルFETのレイアウト（設計データ）の例である。AAは、アクティブエリア、GCは、ゲート、Mnは、マスクデータである。マスクデータMnは、半導体デバイスの製造時に実際にN型不純物のインプラの対象となる領域（インプラ領域）を表している。即ち、図９に示すように、NチャネルFETを形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMnで示されるインプラ領域に対して行われる。
【００３９】
図１０は、抵抗素子（拡散抵抗）のレイアウト（設計データ）の例である。AAは、アクティブエリア、Mrは、マスクデータである。マスクデータMrは、半導体デバイスの製造時に実際にP型不純物又はN型不純物のインプラの対象となる領域（インプラ領域）を表している。即ち、図１１に示すように、抵抗素子を形成するためのインプラは、レジストマスクRMをマスクに、マスクデータMrで示されるインプラ領域に対して行われる。図１１において、P及びNの添え字（+及び-）は、抵抗素子の抵抗値（+ →低抵抗、- →高抵抗）を表している。
【００４０】
図１２は、第１の検証工程での素子抽出の例を示している。
【００４１】
まず、半導体集積回路（設計データ）からアクティブエリアAA及びゲートGCを抽出し、両者のアンドロジックを実行する。その結果、PチャネルFETのゲート及びNチャネルFETのゲートがそれぞれ抽出される。また、半導体集積回路からアクティブエリアAA及び抵抗素子Rを抽出し、両者のアンドロジックを実行する。その結果、抵抗素子Rが抽出される。同様のロジック手法により、PチャネルFETの拡散層や、NチャネルFETの拡散層なども抽出することができる。
【００４２】
図１３は、マスクデータのＮＯＴ処理を示している。
【００４３】
マスクデータM1は、PチャネルFETを形成するために必要なマスクデータMpであり、PチャネルFETに必要なインプラ領域を、例えば、データ“１”で表している。ＮＯＴ処理後のマスクデータM1は、図示するように、PチャネルFETに必要なインプラ領域以外の領域がデータ“１”となる。
【００４４】
マスクデータM2は、NチャネルFETを形成するために必要なマスクデータMnであり、NチャネルFETに必要なインプラ領域を、例えば、データ“１”で表している。ＮＯＴ処理後のマスクデータM2は、図示するように、NチャネルFETに必要なインプラ領域以外の領域がデータ“１”となる。
【００４５】
マスクデータM3は、抵抗素子を形成するために必要なマスクデータMrであり、抵抗素子に必要なインプラ領域を、例えば、データ“１”で表している。ＮＯＴ処理後のマスクデータM3は、図示するように、抵抗素子に必要なインプラ領域以外の領域がデータ“１”となる。
【００４６】
図１４は、被検証素子とそれを形成するために必要なマスクデータとの関係の例を示している。
【００４７】
例えば、PチャネルFETを形成するために必要なマスクデータは、マスクデータM1(Mp)であり、それ以外のマスクデータM2〜Mjは、PチャネルFETを形成するために不要であると仮定する。また、NチャネルFETを形成するために必要なマスクデータは、マスクデータM2(Mn)であり、それ以外のマスクデータM1, M3〜Mjは、NチャネルFETを形成するために不要であると仮定する。さらに、抵抗素子を形成するために必要なマスクデータは、マスクデータM3(Mr)であり、それ以外のマスクデータM1, M2, M4〜Mjは、抵抗素子を形成するために不要であると仮定する。
【００４８】
このような仮定の下で、半導体集積回路から抽出された被検証素子に対してマスクロジックによるフィルター処理を実行する。
【００４９】
図１５は、設計ミス無しのときのPチャネルFETのフィルター処理を示している。
【００５０】
素子データAは、図１２の素子抽出工程により抽出された被検証素子である。
【００５１】
ここでは、PチャネルFETのゲートGCをフィルター処理の対象としているため、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをＮＯＴ処理したデータbM2〜bMjとのアンドロジックを実行する。
【００５２】
この場合、同図に示すように、アンドロジックを実行する前のPチャネルFETのゲートGC（素子データA）とアンドロジックを実行した後のPチャネルFETのゲートGC（素子データB）とは、同じ（被検証素子が認識された状態）となる。
【００５３】
従って、マスクロジックによるフィルター処理を行った後、続けて、第１の検証工程（LVS）における回路の比較検証（抽出素子と回路図との比較）を行えば、その比較検証において、不要な／必要なインプラ領域の有無を検証することができる。
【００５４】
例えば、PチャネルFETのゲートGCに対して、不要なインプラ領域が無いとき／必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC（素子データB）が残るため、第１の検証工程（LVS）における回路の比較検証がOKとなる。
【００５５】
これに対し、PチャネルFETのゲートGCに対して、不要なインプラ領域が有るとき／必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC（素子データB）が消えるため、第１の検証工程（LVS）における回路の比較検証がNGとなる。
【００５６】
図１６は、設計ミス無しのときのNチャネルFETのフィルター処理を示している。
【００５７】
素子データAは、図１２の素子抽出工程により抽出されたNチャネルFETのゲートGCである。本例では、NチャネルFETのゲートGCを形成するために必要なマスクデータM2と、NチャネルFETのゲートGCを形成するために不要なマスクデータをＮＯＴ処理したデータbM1, bM3〜bMjとのアンドロジックを実行する。
【００５８】
この場合、同図に示すように、アンドロジックを実行する前のNチャネルFETのゲートGC（素子データA）とアンドロジックを実行した後のNチャネルFETのゲートGC（素子データB）とは、同じ（被検証素子が認識された状態）となる。
【００５９】
従って、マスクロジックによるフィルター処理を行った後、続けて、第１の検証工程（LVS）における回路の比較検証（抽出素子と回路図との比較）を行えば、その比較検証において、不要な／必要なインプラ領域の有無を検証することができる。
【００６０】
例えば、NチャネルFETのゲートGCに対して、不要なインプラ領域が無いとき／必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にNチャネルFETのゲートGC（素子データB）が残るため、第１の検証工程（LVS）における回路の比較検証がOKとなる。
【００６１】
これに対し、NチャネルFETのゲートGCに対して、不要なインプラ領域が有るとき／必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にNチャネルFETのゲートGC（素子データB）が消えるため、第１の検証工程（LVS）における回路の比較検証がNGとなる。
【００６２】
図１７は、設計ミス無しのときの抵抗素子のフィルター処理を示している。
【００６３】
素子データAは、図１２の素子抽出工程により抽出された抵抗素子Rである。本例では、抵抗素子Rを形成するために必要なマスクデータM3と、抵抗素子Rを形成するために不要なマスクデータをＮＯＴ処理したデータbM1, bM2, bM4〜bMjとのアンドロジックを実行する。
【００６４】
この場合、同図に示すように、アンドロジックを実行する前の抵抗素子R（素子データA）とアンドロジックを実行した後の抵抗素子R（素子データB）とは、同じ（被検証素子が認識された状態）となる。
【００６５】
従って、マスクロジックによるフィルター処理を行った後、続けて、第１の検証工程（LVS）における回路の比較検証（抽出素子と回路図との比較）を行えば、その比較検証において、不要な／必要なインプラ領域の有無を検証することができる。
【００６６】
例えば、抵抗素子Rに対して、不要なインプラ領域が無いとき／必要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後に抵抗素子R（素子データB）が残るため、第１の検証工程（LVS）における回路の比較検証がOKとなる。
【００６７】
これに対し、抵抗素子Rに対して、不要なインプラ領域が有るとき／必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後に抵抗素子R（素子データB）が消えるため、第１の検証工程（LVS）における回路の比較検証がNGとなる。
【００６８】
図１８は、設計ミス有りのときのPチャネルFETのフィルター処理を示している。
【００６９】
素子データAは、図１２の素子抽出工程により抽出された被検証素子である。
【００７０】
ここでは、PチャネルFETのゲートGCをフィルター処理の対象としているため、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをＮＯＴ処理したデータbM2〜bMjとのアンドロジックを実行する。
【００７１】
本例では、PチャネルFETのゲートGCを形成するために不要なマスクデータ、即ち、そのマスクデータをＮＯＴ処理したデータbM3に不要なインプラ領域が存在し、この不要なインプラ領域により、PチャネルFETのゲートGCに不要なインプラが行われる場合を説明する。
【００７２】
この場合、同図に示すように、上述のアンドロジックを実行すると、PチャネルFETのゲートGCが消える。このため、アンドロジックを実行する前のPチャネルFETのゲートGC（素子データA）とアンドロジックを実行した後のPチャネルFETのゲートGC（素子データB）とは、異なる（被検証素子が認識されない状態）。
【００７３】
従って、マスクロジックによるフィルター処理を行った後、続けて、第１の検証工程（LVS）における回路の比較検証（抽出素子と回路図との比較）を行えば、その比較検証において、不要なインプラ領域が有ることを確認できる。
【００７４】
即ち、PチャネルFETのゲートGCに対して、不要なインプラ領域が有るときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC（素子データB）が消えるため、第１の検証工程（LVS）における回路の比較検証がNGとなる。
【００７５】
図１９は、設計ミス有りのときのPチャネルFETのフィルター処理を示している。
【００７６】
実施形態に係わるマスクデータによるフィルター処理によれば、不要なインプラ領域を検出できると共に、必要なインプラ領域が存在しない場合の設計ミスも検出できる。これについて以下説明する。
【００７７】
本来ならば、マスクデータM1に、PチャネルFETのゲートGCを形成するために必要なインプラ領域が存在するが（図１５を参照）、例えば、設計ミスにより、マスクデータM1に、PチャネルFETのゲートGCを形成するために必要なインプラ領域が存在しない場合を検討する。
【００７８】
素子データAは、図１２の素子抽出工程により抽出されたPチャネルFETのゲートGCである。本例では、PチャネルFETのゲートGCを形成するために必要なマスクデータM1と、PチャネルFETのゲートGCを形成するために不要なマスクデータをＮＯＴ処理したデータbM2〜bMjとのアンドロジックを実行する。
【００７９】
この場合、PチャネルFETのゲートGCに対応するマスクデータM1は、必要なインプラ領域が存在しないため、データ“０”になる。このため、上述のアンドロジックを実行すると、PチャネルFETのゲートGCが消える。従って、アンドロジックを実行する前のPチャネルFETのゲートGC（素子データA）とアンドロジックを実行した後のPチャネルFETのゲートGC（素子データB）とは、異なる（被検証素子が認識されない状態）。
【００８０】
従って、マスクロジックによるフィルター処理を行った後、続けて、第１の検証工程（LVS）における回路の比較検証（抽出素子と回路図との比較）を行えば、その比較検証において、必要なインプラ領域が無いことを確認できる。
【００８１】
即ち、PチャネルFETのゲートGCに対して、必要なインプラ領域が無いときは、マスクロジックによるフィルター処理を行った後にPチャネルFETのゲートGC（素子データB）が消えるため、第１の検証工程（LVS）における回路の比較検証がNGとなる。
【００８２】
以上、第１の実施例では、第１の検証部（第１の検証工程）において、マスクデータによるフィルター処理を行うことにより、例えば、そのフィルター処理を行った被検証素子に対して、LVS工程による比較検証を行うことにより、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かと同時に、被検証素子に対して不要な／必要なインプラ領域があるか否かについても検証することができる。
【００８３】
また、本例のフィルター処理では、被検証素子の種類によらず、一律に、半導体集積回路の製造に使用する全てのマスクデータを使用するため、第１の検証部における検証前に不要なインプラ領域が存在する／必要なインプラ領域が存在しないマスクデータを特定する必要がない。即ち、半導体集積回路の製造に使用する全てのマスクデータを、被検証素子を形成するために必要なマスクデータと、被検証素子を形成するために不要なマスクデータとに分けるだけで、不要な／必要なインプラ領域があるか否かを検出できる。
【００８４】
さらに、第１の検証部における検証後に、不要なインプラ領域が存在する／必要なインプラ領域が存在しない被検証素子が特定されれば、その被検証素子に対して不要なインプラ領域が存在する／必要なインプラ領域が存在しないマスクデータ（設計ミス）を特定することは容易に行えるため、その設計ミスを迅速かつ確実に修正し、設計時間の短縮を図ることができる。
【００８５】
尚、第１の実施例では、マスクデータによるフィルター処理工程は、図１の第１の検証部６０の１つの機能として新たに付加したが、図１の第２の検証部７０の１つの機能として新たに付加してもよい。
【００８６】
第２の検証部７０における第２の検証工程（DRC）において、不要な／必要なインプラ領域の有無を検証するときは、第１の検証工程（LVS）での回路の比較検証といった工程が存在しないため、図１５乃至図１９の素子データBについて、さらに以下の比較検証工程を追加することもできる。
【００８７】
例えば、図２０に示すように、素子データAと素子データBとのエクスクルーシブオアロジック（ＸＯＲ）を実行する。不要なインプラ領域が無いとき／必要なインプラ領域が有るときは、検証結果として、抽出素子（被検証素子）が消える。この抽出素子が消えた状態が、検証結果OK、即ち、被検証素子に対して不要なインプラ領域が無いこと／必要なインプラ領域が有ることを表している。
【００８８】
これに対し、例えば、図２１に示すように、不要なインプラ領域が有るとき／必要なインプラ領域が無いときは、素子データAと素子データBとのエクスクルーシブオアロジック（ＸＯＲ）を実行すると、抽出素子（被検証素子）がそのまま残る。この抽出素子が残った状態が、検証結果NG、即ち、被検証素子に対して不要なインプラ領域が有ること／必要なインプラ領域が無いことを表している。
【００８９】
(2)   第２の実施例  
第２の実施例では、図２２に示すように、マスクデータによるフィルター処理工程は、第１及び第２の検証部６０，７０とは独立に、レイアウト検証部５０内に第３の検証部（フィルター処理部）８０として新たに付加する。その他の構成については、第１の実施例と同じであるため、その説明を省略する。
【００９０】
まず、設計部３０において、仕様情報に基づいて回路図を設計する（設計工程）。次に、レイアウト作成部４０において、回路図に基づいて半導体集積回路のレイアウト（設計データ）を作成する（レイアウト作成工程）。
【００９１】
この後、半導体集積回路のレイアウトが正しく設計されたか否かを検証するレイアウトチェックを図２３のフローチャートに従って行う。
【００９２】
まず、DRCルール、LVSルール及び設計データに基づいて、設計データから抽出した素子及び素子間の接続が回路図と一致しているか否かの第１の検証工程（LVS）を実行する。また、設計データが仕様情報から抽出したデザインルールに違反しているか否かの第２の検証工程（DRC）を実行する（ステップＳＴ１）。
【００９３】
この後、LVS/DRC検証を行う（ステップＳＴ２）。
【００９４】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【００９５】
第１及び第２の検証工程をパスすると、次に、第３の検証工程が行われる。第３の検証工程では、不要な／必要なインプラ領域があるか否かについての検証が行われる。まず、設計データの読み込みを行い（ステップＳＴ３）、マスクデータによるフィルター処理工程を実行する（ステップＳＴ４）。
【００９６】
この後、半導体集積回路のレイアウトの検証を行う（ステップＳＴ５）。
【００９７】
この検証においてエラーが検出されたときは、設計者は、このエラー情報に基づいてレイアウトの修正を行う。そして、レイアウトチェックをパスするまで、設計データの修正とレイアウトチェックとを繰り返す。
【００９８】
フィルター処理工程は、図２４のフローチャートに示すように、半導体集積回路から抽出した同一の複数の被検証素子（例えば、FETのゲート及びソース／ドレイン、抵抗素子、容量素子並びに整流素子のうちの１つ）に対して並列処理される。また、この並列処理と共に、図２６のフローチャートに示すように、半導体集積回路から抽出した異なる複数の被検証素子に対して並列処理を行ってもよい。
【００９９】
フィルター処理工程は、具体的には、図２５のフローチャートに示すように、被検証素子（素子データ）Ｅｉ（ｉ＝１，２，…ｍ）と、被検証素子Ｅｉを形成するために必要なマスクデータと、被検証素子Ｅｉを形成するために不要なマスクデータをＮＯＴ処理したデータ（被検証素子Ｅｉを形成するために不要なマスクデータの反転データ）とのアンドロジックを実行する第１のロジック工程（ステップＳＴ１）と、第１のロジック工程を実行する前の被検証素子Ｅｉと第１のロジック工程を実行した後の被検証素子Ｅｉとのエクスクルーシブオアロジック（ＸＯＲ）により、被検証素子Ｅｉに対して不要なインプラ領域の有無を判断する第２のロジック工程（ステップＳＴ２〜ＳＴ３）とを有する。
【０１００】
フィルター処理工程については、第１の実施例（図６〜図２１）と同じであり、また、既に、第１の実施例で詳細に説明したため、ここではその詳細な説明を省略する。
【０１０１】
第２の実施例が第１の実施例と異なる点は、エクスクルーシブオアロジック（ＸＯＲ）を行う工程が追加されている点にある。
【０１０２】
第１の実施例では、例えば、第１の検証工程（LVS）において回路比較を行うため、このようなエクスクルーシブオアロジックが必要ない。しかし、第２の実施例では、第１及び第２の検証工程とは独立に、第３の検証工程において不要な／必要なインプラ領域の有無を検証するため、このエクスクルーシブオアロジックを設けるのが好ましい。
【０１０３】
エクスクルーシブオアロジックによる比較検証は、例えば、図２０及び図２１に示す通りである。
【０１０４】
まず、図２０に示すように、不要なインプラ領域が無いとき／必要なインプラ領域が有るときは、素子データAと素子データBとのエクスクルーシブオアロジックを実行すると、検証結果として、抽出素子（被検証素子）が消える。この抽出素子が消えた状態が、検証結果OK、即ち、被検証素子に対して不要なインプラ領域が無いこと／必要なインプラ領域が有ることを表している。
【０１０５】
また、図２１に示すように、不要なインプラ領域が有るとき／必要なインプラ領域が無いときは、素子データAと素子データBとのエクスクルーシブオアロジックを実行すると、抽出素子（被検証素子）がそのまま残る。この抽出素子が残った状態が、検証結果NG、即ち、被検証素子に対して不要なインプラ領域が有ること／必要なインプラ領域が無いことを表している。
【０１０６】
このフィルター処理工程により、被検証素子Ｅｉに対して不要な／必要なインプラ領域があるか否かを検出できる。
【０１０７】
第２の実施例においても、第１の実施例と同じ効果を得ることができる。
【０１０８】
３．  むすび  
実施形態によれば、インプラを必要とする素子に対してインプラが適切に行われているか否かを設計段階のレイアウトチェックで自動的に検証することができる。
【０１０９】
本発明の例は、上述の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で、各構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を構成できる。例えば、上述の実施形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施形態の構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１１０】
１０：  仕様情報、  ２０：  半導体集積回路のレイアウト検証装置、  ３０：  設計部、  ４０：  レイアウト作成部、  ５０：  レイアウト検証部、  ６０：  第１の検証部、  ７０：  第２の検証部、  ８０：  第３の検証部、  ９０：  データ入出力部、  １００：  マスク製造部、  １１０：  ＬＳＩ製造部、  １２０：  デバイス検証部。
【図１】
2012068876.tif 000003
【図２】
2012068876.tif 000004
【図３】
2012068876.tif 000005
【図４】
2012068876.tif 000006
【図５】
2012068876.tif 000007
【図６】
2012068876.tif 000008
【図７】
2012068876.tif 000009
【図８】
2012068876.tif 000010
【図９】
2012068876.tif 000011
【図１０】
2012068876.tif 000012
【図１１】
2012068876.tif 000013
【図１２】
2012068876.tif 000014
【図１３】
2012068876.tif 000015
【図１４】
2012068876.tif 000016
【図１５】
2012068876.tif 000017
【図１６】
2012068876.tif 000018
【図１７】
2012068876.tif 000019
【図１８】
2012068876.tif 000020
【図１９】
2012068876.tif 000021
【図２０】
2012068876.tif 000022
【図２１】
2012068876.tif 000023
【図２２】
2012068876.tif 000024
【図２３】
2012068876.tif 000025
【図２４】
2012068876.tif 000026
【図２５】
2012068876.tif 000027
【図２６】
2012068876.tif 000028