(57)【要約】      （修正有）【課題】回路設計者が自らの回路デザインのために特定のデザインルールを免除する。【解決手段】集積回路パターンの新規のレイアウトを含む最初のレイアウトパターンを受け取り、パターン適合手段110は、レイアウトパターンを処理し、そして、デザイン適用除外情報に適合する集積回路パターンの特定のパターンを指定する。パターン適合手段110は、マークされ免除されたパターンを有する第２のレイアウトパターンを生成する。デザインルールチェッカー115は続いてマークされたレイアウトパターンを処理し、特定のデザインルールのセットに照らして、第２レイアウトパターンのマークされたパターンを除いた全てについて検証する。デザインルールチェッカー115は、特定のデザインルールのセットに照らして検証されているレイアウトのマークされないパターンのみを有する第３のレイアウトパターンを生成する。【選択図】図１
2010108484.tif 000002
【特許請求の範囲】
【請求項１】
データセットのデザインルール検査の方法であって、
複数のデザイン適用除外情報に照らして、前記データセット内で複数のパターンを比較することと、
複数の有効パターンとして、前記複数のデザイン適用除外情報に由来する特定のデザイン適用除外情報に適合する前記複数のパターンを指定することと、
デザインルールチェッカーを通して前記データセットを実行することと、を備えることを特徴とする方法。
【請求項２】
前記複数のパターンの比較がパターン適合手段によって実行され、前記データセットが、前記複数のパターンを備える新規のレイアウトを定めることを特徴とする請求項１に記載の方法。
【請求項３】
デザイン適用除外情報マクロブロックが前記データセットの領域に合致する前記複数のデザイン適用除外情報を備え、前記領域がそのように指定されていることを特徴とする請求項１に記載の方法。
【請求項４】
パターン適合手段が前記複数のデザイン適用除外情報に照らして前記複数のパターンを比較する前に、デザインルールチェッカーが複数のデザインルールに照らして前記データセットを検証することを特徴とする請求項１に記載の方法。
【請求項５】
前記複数のデザインルールがデザインルール格納部に保存されることを特徴とする請求項４に記載の方法。
【請求項６】
前記デザインルールチェッカーが前記複数のデザインルールからのデザインルールの違反を発見及び認識するところのパターンにのみ照らして、前記パターン適合手段は前記複数のデザイン適用除外情報を比較することを特徴とする請求項４に記載の方法。
【請求項７】
前記デザインルールチェッカーによって前記複数の有効パターン上に認識された違反を取り除くこと、を更に備えることを特徴とする請求項６に記載の方法。
【請求項８】
前記デザインルールチェッカーが複数のデザインルールに照らして前記データセットを検証する前に、前記パターン適合手段が前記複数のデザイン適用除外情報に照らして前記複数のパターンを比較することを特徴とする請求項１に記載の方法。
【請求項９】
前記複数のデザインルールがデザインルール格納部に保存されることを特徴とする請求項８に記載の方法。
【請求項１０】
前記データセットを検証するとき、前記デザインルールチェッカーが前記複数の有効パターンを無視することを特徴とする請求項８に記載の方法。
【請求項１１】
前記複数のデザイン適用除外情報がデザイン適用除外情報パターン格納部に保存されていることを特徴とする請求項１に記載の方法。
【請求項１２】
前記データセットがＧＤＳＩＩファイルフォーマット又はＯＡＳＩＳファイルフォーマットで保存されることを特徴とする請求項１に記載の方法。
【請求項１３】
コンピュータで使用可能な媒体に組み込まれると共に、該方法の操作をプロセッサに実行させるように構成された命令を有するコンピュータプログラムによって実行されることを特徴とする請求項１に記載の方法。
【請求項１４】
半導体デバイスの層のためのデータファイルを生成するためのコンピュータ支援デザイン装置であって、
プロセッサと、
前記プロセッサに接続されたメモリと、
そこに組み込まれた命令を有する、コンピュータで読み取り可能な媒体と、を備えており、
前記命令は、デザインルール検査の間、
複数のデザイン適用除外情報に照らして前記データセット内で複数のパターンを比較する操作と、
複数の有効パターンとして、前記複数のデザイン適用除外情報に由来する特定のデザイン適用除外情報に適合する前記複数のパターンを指定する操作と、
デザインルールチェッカーを通して前記データセットを実行する操作と、を前記プロセッサに実行させるように構成されていることを特徴とするコンピュータ支援デザイン装置。
【請求項１５】
前記複数のパターンを比較することがパターン適合手段によって実行され、前記データセットが前記複数のパターンを備える新規のレイアウトを定めることを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項１６】
デザイン適用除外情報マクロブロックが、前記データセットの領域に適合する前記複数のデザイン適用除外情報を備えており、前記領域はそのように指定されていることを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項１７】
前記パターン適合手段が前記複数のデザイン適用除外情報に照らして前記複数のパターンを比較する前に、デザインルールチェッカーが複数のデザインルールに照らして前記データセットを検証することを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項１８】
前記デザインルールチェッカーが前記複数のデザインルールからデザインルールの違反をその中に発見及び認識するパターンのみに照らして、前記パターン適合手段が前記複数のデザイン適用除外情報を比較することを特徴とする請求項１７に記載のコンピュータ支援デザイン装置。
【請求項１９】
前記プロセッサがさらに、前記デザインルールチェッカーによって前記複数の有効パターン上に認識された違反を取り除く操作を実行することを特徴とする請求項１８に記載のコンピュータ支援デザイン装置。
【請求項２０】
前記デザインルールチェッカーが複数のデザインルールに照らして前記データセットを検証する前に、前記パターン適合手段が前記複数のデザイン適用除外情報に照らして前記複数のパターンを比較することを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項２１】
前記データセットを検証するとき、前記デザインルールチェッカーが前記複数の有効パターンを無視することを特徴とする請求項２０に記載のコンピュータ支援デザイン装置。
【請求項２２】
前記複数のデザイン適用除外情報がデザイン適用除外情報パターン格納部に保存されることを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項２３】
前記データセットはＧＤＳＩＩファイルフォーマット又はＯＡＳＩＳファイルフォーマットで保存されることを特徴とする請求項１４に記載のコンピュータ支援デザイン装置。
【請求項２４】
デザイン適用除外情報を作成するための方法であって、
標準セルのライブラリを構成することと、
前記標準セルのライブラリの製造可能性を評価することと、ここで、製造可能であると判定された前記標準セルのライブラリの領域が製造可能な標準セルのライブラリとして定められることと、
前記製造可能な標準セルのライブラリについてデザインルール検査を行い、複数のデザインルール検査エラーを生じさせることと、
前記製造可能な標準セルのライブラリにとっての複数のデザイン適用除外情報として、前記複数のデザインルール検査エラーを捉えることと、を備えることを特徴とする方法。
【請求項２５】
複数のデザイン適用除外情報が、既知のデータセットの領域内で複数のパターンに照らして適用されるデザイン適用除外情報マクロブロックにグループ化されることを特徴とする請求項２４に記載の方法。
【請求項２６】
コンピュータで使用可能な媒体に組み込まれた命令を有するコンピュータプログラム製品であって、
前記命令は、
複数のデザイン適用除外情報に照らしてデータセット内で複数のパターンを比較する操作と、
複数の有効パターンとして、前記複数のデザイン適用除外情報に由来する特定のデザイン適用除外情報に適合する前記複数のパターンを指定する操作と、
デザインルールチェッカーを通して前記データセットを実行する操作と、をプロセッサに実行させるように構成されていることを特徴とするコンピュータプログラム製品。
【請求項２７】
コンピュータで使用可能な媒体に組み込まれた命令を有するコンピュータプログラム製品であって、
前記命令は、
標準セルのライブラリを構成する操作と、
前記標準セルのライブラリの製造可能性を評価する操作と、ここで、製造可能であると判定された前記標準セルのライブラリの領域が製造可能な標準セルのライブラリとして定められることと、
前記製造可能な標準セルのライブラリについてデザインルール検査を行い、複数のデザインルール検査エラーを生じさせる操作と、
前記製造可能な標準セルのライブラリにとっての複数のデザイン適用除外情報として、前記複数のデザインルール検査エラーを捉える操作と、をプロセッサに実行させるように構成されていることを特徴とするコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、デザイン（設計、構成）ツールに関するものであり、特にいくつかの態様は、集積回路のレイアウトデザインの分野におけるデザインルールの検査のためのシステム及び方法に関する。
【背景技術】
【０００２】
集積回路、即ちＩＣは一般的に、デバイスの複数の層をパターニングし、半導体ウェハのような基板上に相互連結することによって作成される。一般的にそのプロセスは、回路の様々な構成要素を対話的に位置決め及び接続することを設計者に可能とする電子デザインオートメーション（ＥＤＡ）ツールを用いた、集積回路のデザイン（設計）ではじまる。次にこのデザインは電子デザインオートメーションツールによって回路レイアウト内に生成される。回路レイアウトは、またレイアウトとして単純に知られているが、回路の構成要素、相互連結部及び様々な層の物理的位置及び寸法を含む。回路の構成要素、相互連結部、及び、様々な層は集積回路の特徴を形成する。
【０００３】
集積回路のデザインは、集積回路の構成要素を編成するデバイスを構成する特徴を集合的に形成する一連の層において、半導体基板に回路レイアウトを転写することによって最終的に製造される。しかしながら、レイアウトが作成される前に、レイアウトの検証プロセスが行われねばならない。
【０００４】
集積回路のレイアウトの検証段階では、デザインルールとして知られる特別な技術的制約にレイアウトが従うことを確保する複数のデザインルールに照らして、レイアウトは検査される。これらのデザインルールは、これに限定されないが、選ばれた集積回路の製造手順の特定限界及び集積回路の製造産業において共通する実行方法を含む。さらに、回路設計者は、彼らの回路デザインのための自らの特別なデザインを創り出す選択枝を有する。このようなデザインルールの例は、これに限定されないが、幅についてのルール、最小エリアについてのルール、囲みについてのルール、空間についてのルール、対称についてのルール、及び、整列についてのルールを含む。
【０００５】
典型的に、デザイン検証プロセスは検証ツールによって行われ、それは、レイアウトを処理し、レイアウトが特定のデザインルールのセットを遵守していることを検証する。１つのそのような検証ツールは、デザインルールチェッカー（ＤＲＣ、デザインルール検査手段）と呼ばれる。しばしば、デザインルールチェッカーは、“Ｃａｄｅｎｃｅ  Ａｓｓｕｒａ（登録商標）  ＤＲＣ”のような独立したソフトウェアプログラムとして実行されるか、または、“Ｃａｄｅｎｃｅ  Ｖｉｒｔｕｏｓｏ（登録商標）“のような電子デザインオートメーションツールの一部として実行される。デザインルールチェッカーは、特定のデザインルールのセットに違反するかについて、レイアウトを検査する。回路レイアウトをデジタルで表すファイルの構造において、デザインルールチェッカーによってレイアウトは通常受け取られる。レイアウトファイルのための最新のフォーマットは、これに限定されないが、ＧＤＳＩＩ及びＯＡＳＩＳを含む。デザインルールチェッカーが特定のデザインルールに違反するレイアウト内の回路的特徴を観察したとき、デザインルールチェッカーによって違反が警告される。警告された違反がどのように設計者に注目されるかについての例は、これに限定されないが、結果として生じるレイアウトファイル出力において直接的に違反をマーキングすること、または、電子デザインオートメーションツール内で違反についての映像による注意喚起をすることが含まれる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
最近では、デザインルールチェッカーは典型的に一様に分別せずにレイアウトファイルを検証する。言い換えると、デザインルールチェッカーが違反のためにレイアウトを検査するとき、偏ることなく、デザインルールの特定のセットに照らしてレイアウトの全ての回路的特徴を検査する。このとき、回路設計者が意図的に違反を存在させているときでさえ、デザインルールチェッカーは、特定のデザインルールに違反するとしてレイアウト中の特定の構造をマーキングする結果となる。例えば、良いレイアウトの構造であると知られているレイアウト構造がデザインルールに違反する場合には、特にあてはまる。回路設計者が自らの回路デザインのために特定のデザインルールを免除すること（ｗａｉｖｅ）（適用しないこと）を望んでいる事実がある。
【課題を解決するための手段】
【０００７】
発明の様々な実施形態によれば、パターンマッチングにおいて強化されたデザインルールの検査のためのシステムと方法が提供され、デザインルールチェッカーは、検証の間、デザインルールに違反するレイアウトの特定のパターンを無視する。
【０００８】
一実施形態には、デザイン適用除外情報（デザインルールの適用除外に関する情報、デザインウェーバー）（ｗａｉｖｅｒ）のパターンのセットに対するレイアウトパターンのパターンを比較する方法、デザイン適用除外情報に適合する集積回路パターンの特定のパターンを指定する方法、デザインルールチェッカーを通してレイアウトを実行する方法、及び、有効なパターンとしてデザインされたパターンを取り扱う方法が含まれる。いくつかの実施形態には、パターン適合手段（パターンマッチャー）がデザイン適用除外情報のセットに照らしてパターンを比較する前に、デザインルールチェッカーが、デザインルールのセットに照らしてレイアウトパターンを検証する。これらの実施形態では、パターン適合手段が、レイアウトパターン内のパターンのみに照らしてデザイン適用除外情報のセットを比較し、レイアウトパターン内ではデザインルールチェッカーがデザインルールのセットからデザインルールの違反を発見及び認識（位置付け）する。その後に、パターン領域がデザイン適用除外情報に適合したとき、パターン領域におけるこの違反が取り除かれる。
【０００９】
他の実施形態では、デザインルールチェッカーがデザインルールのセットに照らしてレイアウトパターンを検証する前に、パターン適合手段がデザイン適用除外情報のセットに照らしてレイアウトパターンのパターンを比較する。このような実施形態では、パターン領域がセットからデザイン適用除外情報に適合するように指定されるとき、デザインルールチェッカーが、検証の間、指定されたパターン領域を無視する。
【００１０】
他の実施形態では、既知レイアウト領域における複数のパターンに適合するデザイン適用除外情報のマクロブロックとして、複数のデザイン適用除外情報がグループ化されて適用される。
【００１１】
別の実施形態では、デザイン適用除外情報のセットがデザイン適用除外情報パターン格納部に保存される。さらに別の実施形態では、デザインルールのセットがデザインルール格納部に保存される。
【００１２】
さらなる実施形態では、最初のレイアウトパターンがＧＤＳＩＩファイルフォーマットである。別の実施形態では、最初のレイアウトパターンがＯＡＳＩＳファイルフォーマットである。
【００１３】
他の実施形態では、本発明の方法が、コンピュータで使用可能な媒体（メディア）に記録されたコンピュータで読み取り可能なプログラムコードを有するコンピュータプログラム製品として実行される。
【００１４】
別の実施形態では、本発明の方法が、コンピュータ支援デザイン装置（コンピュータを利用したデザイン装置）の一部として実行される。
【００１５】
他の実施形態では、標準セルのライブラリを構成し、ライブラリの製造可能性を評価し、手順評価から製造可能であるか判断されるライブラリの領域上のデザインルールの検査を実行し、結果的にデザイン適用除外情報として生じる全てのデザインルール検査違反を捉えることによって、デザイン適用除外情報を作成する。このような実施形態では、既知のレイアウト領域における複数のパターンに適合するデザイン適用除外情報のマクロブロック内へ複数のデザイン適用除外情報がグループ化され得る。
【００１６】
発明の他の特徴及び形態は、以下の詳細な記載、それと併せて添付図面から明らかになるだろう。それらは発明の実施形態に従う特徴を記述している。発明の概要は発明の技術的範囲を限定することを目的とせず、そしてそれは、ここに添付された特許請求の範囲によってのみ定められる。
【図面の簡単な説明】
【００１７】
【図１】デザイン適用除外情報パターンマッチングを有する改良されたデザインルール検査のためのシステムを示すブロック図。
【図２】デザイン適用除外情報パターンマッチングを有する改良されたデザインルール検査のための方法を示すフローチャート。
【図３】デザイン適用除外情報パターンマッチングを有する改良されたデザインルール検査のための方法を示すフローチャート。
【図４】デザイン適用除外情報パターンを作成するための方法を示すフローチャート。
【図５ａ】デザインルール検査のための方法によって処理される前のレイアウトを表す描写図。
【図５ｂ】図５ａのレイアウトがパターンマッチングによってデザイン適用除外情報のために処理及び攻勢された後のレイアウトを表す描写図。
【図６ａ】図５ｂにおけるパターンマッチングによって図５ａ上に使用された多数の層のデザイン適用除外情報を表す描写図。
【図６ｂ】処理中にデザインルールチェッカーによって無視された図５ｂのレイアウトの領域を表す描写図。
【図７】ここで記述されたシステム及び方法と併せて使用され得るコンピュータシステムを表す略図。
【発明を実施するための形態】
【００１８】
本発明は、集積回路についての様々な実施形態に関するものであり、レイアウトデザインのためのシステム及び方法に関するものである。特にいくつかの実施形態は、パターンマッチング（パターン適合）での集積回路のレイアウトのデザインルール検査に関し、添付した図に例示され、参照番号が全体を通して各要素を参照する。
【００１９】
一実施形態において、発明のシステム及び方法に従って、デザインルールに照らして、集積回路が構成（設計）及び検証される。例えば、本発明の一実施形態は、集積回路レイアウトを検証するように電子デザインオートメーション（ＥＤＡ）と併せて使用可能なプロセス（工程）である。本例における検証は、レイアウトが構成されるか、あるいは、一度デザインが完了するように行われる。いくつかの実施形態において、ツールは、パターン適合手段及びデザインルールチェッカーを通して実行するように構成されて、レイアウト上の構成が特別なデザインルールに違反しているという事実にかかわらず、この特別な構成が良いパターンとして事前に条件付けされた場合、デザインルールチェッカーはこの違反を無視する。
【００２０】
いくつかの実施形態では、デザインウェーバー（デザイン適用除外情報）のセットがデザインウェーバーマクロブロックにグループ化されることができ、そこでは、デザインウェーバーマクロブロック（または簡単にはマクロブロックとして知られる）は、レイアウトの既知領域における複数のパターンに適用される。既知領域がレイアウトにおいて見つかった場合、及び、変化していないと知られている場合に限り、マクロブロックにおいて見つけられたパターンとパターン違反は既知である。従って、デザインウェーバーを領域内の各パターンに適用するよりむしろ、一度マクロブロックがレイアウト内に発見されると、全体の領域が適用免除だとみなされ、即ち、例えばデザインウェーバーのセットを通してデザインルールチェッカーによって無視される。
【００２１】
図１は、デザインウェーバーパターンマッチングを有する改良されたデザインルール検査のためのシステムを表すブロック図１００である。例示のシステムは、回路レイアウト１０５と、パターン適合手段モジュール（要素）１１０、デザインルールチェッカーモジュール１１５、デザインウェーバーパターン格納部１２０、デザインルール格納部１２５、及び、最終検査された回路レイアウト１３０を備える。典型的には、回路レイアウト１０５又は最終検査された回路レイアウト１３０のような回路レイアウトはファイルの形態をとる。回路レイアウトファイルフォーマットは例えば、これに限定されないが、ＧＤＳＩＩ及びＯＡＳＩＳである。
【００２２】
パターン適合手段モジュール１１０は、回路レイアウト１０５を受け入れ、回路レイアウト１０５に適用可能なデザインウェーバーパターンを検索し、デザインウェーバーパターン格納部１２０から適用可能なデザインウェーバーパターンを獲得し、デザインウェーバーパターンに合致する新規の回路レイアウトの領域を指定し、及び、マークされた（印し付けられた）領域を有する回路レイアウトを生成する役割を担う。通常、パターン適合手段モジュール１１０は、回路レイアウト１０５に結合可能なマークされた適合領域を有するオーバーレイ（重ね合わせ）ファイルを生成する。デザインウェーバーパターン格納部１２０の実行例は、パターン適合における一定の不正確さを認容するメタ情報に沿ったパターンのデータベースである。任意に、デザインウェーバーパターン１２０がパターンに関連付けられたコンテクスト（背景、文脈）特有のデザインルールを含むこともできる。
【００２３】
次に、デザインルールチェッカーモジュール１１５は、パターン適合手段１１０からのオーバーレイファイルに結合された回路レイアウト１０５を受け入れる。オーバーレイファイルは、適合するウェーバーパターンのために指定された回路レイアウト内の領域を含む。適用可能なデザインルールを満たす回路レイアウト１０５の指定されていない領域（オーバーレイファイル内に指定されていない領域）であるかどうかを検査することにより、デザインルール検査は続行する。適用可能なデザインルールは、デザインルール格納部１２５からのデザインルールチェッカーモジュール１１５によって得られる。デザインルールチェッカーモジュール１１５がデザインルール違反を発見した場合、それを報告し、当該違反をマークして、デザインルールチェッカーモジュール１１５によって最終的に生成される、最終的に検査されたレイアウト１３０を生成する。デザインルールチェッカーの例には、これに限定されないが、ＣＡＤＥＮＣＥ  ＡＳＳＵＲＡデザインルールチェッカー及びＣＡＤＥＮＣＥ  ＤＲＡＣＵＬＡが含まれる。技術分野においてよく知られているが、典型的なデザインルールチェッカーは、回路レイアウトが一連のデザインルールを満たす回路レイアウトであるかどうかを決定する。デザインルールチェッカーモジュール１１５は、そのようなデザインルールチェッカーの実行例である。
【００２４】
他の実施形態（図示せず）では、回路レイアウト１０５及びパターン適合手段モジュール１１０によって作成されたオーバーレイファイルは、１つのファイルに結合されずに、デザインルールチェッカーモジュール１１５に別々に与えられる。
【００２５】
別の実施形態（図示せず）では、パターン適合手段モジュール１１０からの適合領域は、メモリに保存されて、新規の結果は、（前に識別された実施形態において生成された）オーバーレイファイルを生成せずにデザインルールチェッカーモジュール１１５によって直接的に使用される。
【００２６】
別の実施形態（図示せず）では、パターン適合手段モジュール１１０がデザインウェーバーパターン格納部１２０から適用可能なデザインウェーバーパターンを獲得する前に、デザインルールチェッカーモジュール１１５は、回路レイアウト１０５を検査及び検証し、そして、デザインウェーバーパターンに適合する回路レイアウト１０５のパターンを指定する。このような実施形態では、パターン適合手段モジュール１１０は、適用可能なデザインウェーバーパターンを、パターンに適用のみする。このパターンにおいては、デザインルールチェッカーモジュール１１５がデザインルール格納部１２５からデザインルールの違反を発見する。デザインルール違反を有するパターン領域が、デザインウェーバーパターン格納部１２０からのデザインウェーバーに適合する場合、この違反はパターン領域から免除及び取り除かれる。しかしながら、いくつかの又は全ての違反が免除されていない場合は、パターン適合手段１１０によって欠点のあるレイアウトが生成される。この実施形態によって使用される方法の例は、図２に関してさらに論じられる。
【００２７】
図２は、デザインウェーバーパターンマッチングを有する改良されたデザインルール検査のための例示の方法２００を表すフローチャートである。方法２００は、操作２０５でデザインルールチェッカーモジュール１１５によって処理される回路レイアウト１０５から開始する。操作２０５でデザインルールチェッカーモジュール１１５によって違反が発見されない場合、デザインルールチェッカーモジュール１１５は、操作２３０で欠点のない検査されたレイアウト１３０を報告する。しかしながら、１つ以上の違反が、操作２０５でデザインルールチェッカーモジュール１１５によって発見された場合、マークされたデザインルール違反内のパターンを有するレイアウトを含むファイルを作成するように、操作２０８でデザインルールチェッカーモジュール１１５が、回路レイアウト１０５に組み込まれた、マークされた適合領域を有するオーバーレイファイルを生成する。パターン適合手段モジュール１１０は、操作２１０でこのファイルを受け取り、複数のデザインウェーバーに対するデザイン違反としてマークされたパターンを検査する。違反したパターンのうち、デザインウェーバーと適合するパターンは、操作２１５でパターン適合手段モジュール１１０によって取り除かれる。全ての違反が、パターン適合手段モジュール１１０によって免除された場合、パターン適合手段は、操作２３０で欠点のないレイアウト１３０を報告する。しかしながら、操作２１５でいくつかの違反が残っていた場合は、パターン適合手段は、操作２２０で欠点のあるレイアウト２２５を報告する。
【００２８】
図３は、デザインウェーバーパターンマッチングを有するデザインルール検査のための別の例示の方法３００を示すフローチャートである。この方法３００は、図１に示されるもののように、様々な実施形態によって使用される。ここでは、デザインルールチェッカーモジュール１１５がファイルを受け取る前に、レイアウトファイル上でパターン適合手段モジュール１１０が実行される。新規の回路レイアウト１０５は、操作３１０でパターン適合手段モジュール１１０によって処理される。操作３１５で、パターン適合手段モジュール１１０は、デザインウェーバーパターン格納部１２０に保存されたデザインウェーバーに適合するパターンについて回路レイアウト１０５を検査する。回路レイアウト１０５が方法３００のような方法によって処理される前の回路レイアウト１０５の例を図５ａに示す。
【００２９】
デザインウェーバーは、デザインルールの違反として警告されるレイアウトにおけるパターンだけでなく、良好なまたは有効なレイアウト構成としてあらかじめ条件付けされたパターンでもある。このようなデザインウェーバーが利用される例は、これに限定されないが、設計者がパターン適合手段に、彼らがデザインルールチェッカーに検査させたくないレイアウトの領域をマスクさせたい場合を含む。このようなデザインウェーバーの利益の１つは、設計者が、標準的なデザインルールによって可能となるよりも、より積極的に集積回路デザインをすることができ、そして、典型的には増加した回路デザインの密度及び回路性能を提供する。
【００３０】
操作３２０において、パターン適合手段はマークされたデザインウェーバーに適合するレイアウトの領域を有するオーバーレイ−レイアウトファイルを生成する。いくつかの例では、矩形（囲み）が、回路パターンがデザインウェーバーに適合したところのレイアウトの領域上にマーカー（印）として使用される。図５ｂは、図５ａにおけるレイアウトがデザインウェーバーで処理及び指定された後に、パターン適合手段モジュール１１０によって生成された例示のレイアウトを示す。要素５０１は、図５ｂにおける適合した領域を指定する。図５ｂの例において、図６ａは、パターン適合手段モジュール１１０によってマーク領域５０１に用いられる多層デザインウェーバーを示す。
【００３１】
パターンマッチング技術は、回路レイアウト内のパターンと指定されたパターンと適合するように、様々な異なる手順を使用する。パターンマッチングにおいて不正確さを特定するために２つの方法が利用される。最初の方法は、画像相関であり、他方、第２の方法はエッジ（境界、縁）の登録である。さらに、デザインウェーバーパターン格納部１２０は、パターンに関するコンテクスト（背景）特有のデザインルールを含み、（ａ）パターン適合手段が領域のコンテクストを識別し、及び（ｂ）コンテクストが、コンテクスト特有のデザインルールチェッカールールに合格した場合に限り、パターン適合手段モジュール１１０は、任意にデザインウェーバーを領域に許可することができる。
【００３２】
操作３２５では、デザインルール格納部１２５から得られた特定のデザインルールのセットに照らして、パターン適合手段モジュール１１０からのオーバーレイファイルを使用して、識別された回路レイアウト１０５内の領域をデザインルールチェッカーモジュール１１５が検査する。レイアウトを処理している間、デザインルールモジュール１１５は、操作３２０でのパターン適合手段モジュール１１０によってマークされたレイアウトの領域を無視するように構成される。前述したが、これらレイアウトのマークされた領域は、レイアウトの検証の間、デザインルールチェッカーによって無視されるべき領域である。図６ｂは、処理の間、デザインルールチェッカーによって無視された、図５ｂのレイアウトの領域を示す。要素６０１はこれらの無視された領域を指定する。
【００３３】
方法３００は、観察した全てのデザインルール違反を報告するデザインルールチェッカーモジュール１１５を有する操作３３０で結論を出す。デザインルールチェッカーモジュール１１５がこれらの違反を報告するフォーマットの例には、これに限定されないが、全ての違反のテキスト報告を生成すること、及び、レイアウト上にマークされたデザインルール違反とともに、または分離した別ファイルとして、最終検査されたレイアウト１３０を生成することが含まれる。
【００３４】
図４は、デザインウェーバーを作成するための例示の方法を示すフローチャートである。方法４００は、操作４０５での標準セルのライブラリの構成とともに開始する。特定の回路構成（例えば、ＡＮＤゲート、ＯＲゲート、ラッチ）のレイアウトを含む各セルとともに、標準セルのライブラリは特定のレイアウトにおいて用いられる。これら標準セルは、必ずしも（とても制限された）標準デザインルールに従うことはないが、しかしながら、良好な又は有効パターンから構成されている。従って、標準セルが良好な又は有効パターンから構成されているかどうかを決定するために、各セルの製造可能性が操作４１５で評価される。
【００３５】
製造可能性評価は、シミュレーションによって、又は、シリコン上のセルに実際にプリントしてその結果を評価することによって、遂行される。標準セルは、様々なコンテクストに配置される。任意に（例えば、他の標準セルの任意のコンテクストに標準セルを置く）、系統的に（即ち、標準セルのコンテクストの全ての起こり得る置換を系統的に行う）、又は、配置及び経路のツールが標準セルを実在のような組み合わせに置くことを可能とすることによって、配置がされ得る。この結果として、製造可能であるとみなされる標準セルのライブラリのサブセット（小集団）になる。このサブセット（製造可能な標準セルのライブラリ）は、標準デザインルールを有する操作４２５でのデザインルール検査を通される。デザインルール検査に起因する全てのエラーは、デザインウェーバーとして操作４３０で捕獲される。それらは、通常、図１に示されたデザインウェーバーパターン格納部１２０のような、ウェーバーデータベースに置かれる。結果として違反となるパターンが全体の標準セル、標準セルの一部、又は、多重の標準セル間の相互作用領域を備え得ることについて留意すべきである。
【００３６】
用語ツールが、列挙された機能を実行するように構成されている全ての装置を参照するのに使用され得る。例えば、ツールは、１以上のモジュールの集合を含み、及び、ハードウェア、ソフトウェア、それらの組み合わせを備える。だから、例えば、ツールは、１以上のソフトウェアモジュール、ハードウェアモジュール、ソフトウェア／ハードウェアモジュールまたはそれらの組み合わせか順列の集合である。別例として、ツールは、ソフトウェアが動作する又はハードウェアが実行される、コンピュータデバイスまたは他の電気機器である。
【００３７】
ここに記述された操作に従って使用された処理の構成要素またはモジュールが、全体として又はソフトウェアを使用する一部において実行されるところで、一実施形態において、これに関して記載された機能を実行することを可能とする演算又は処理モジュールで動作するように、これらのソフトウェア要素が実行され得る。ひとつのこのような例示の演算モジュールは図７に示される。様々な実施形態が、例示の演算モジュール７００に関して記述されている。当該記述を読んだ後に、他の演算モジュールやアーキテクチャを用いて発明を実施することが当業者にとって明らかになる。
【００３８】
図７に関して、演算モジュール７００は、例えば、デスクトップ、ラップトップ及びノートブックコンピュータ；大型汎用コンピュータ、スーパーコンピュータ、ワークステーション又はサーバー；又は、所定の利用または環境のために所望される又は適当であるような他の種類の特殊用途または汎用の演算デバイス、において見られる演算または処理機能を表す。演算モジュール７００はまた、所定のデバイスに組み込まれるか、または、他の所定のデバイスに利用可能な演算機能を表す。演算モジュール７００は例えば、プロセッサ７０４のように一以上のプロセッサまたは処理装置を含む。プロセッサ７０４は、例えば、マイクロプロセッサ、コントローラ、または他の制御論理のような汎用又は特殊用途の処理エンジンを使用して実行される。
【００３９】
演算モジュール７００はまた、メインメモリ７０８と称される１以上のメモリモジュールを含む。例えば、ランダムアクセスメモリ（ＲＡＭ）又は他の動的メモリが、情報を保存し、及び、プロセッサ７０４により実行されるように命令（指示）するために用いられる。メインメモリ７０８はまた、プロセッサ７０４による命令の実行の間、一時的な変数または他の中間情報を保存することにのみ用いられる。演算モジュール７００は同様に、読み取り専用メモリ（ＲＯＭ）又はプロセッサ７０４のための静的情報及び命令を保存するためのバス７０２に結合される他の静的ストレージ（記憶）装置を含む。
【００４０】
演算モジュール７００はまた、情報ストレージ機構７１０の１以上の様々な構造を有し、例えばメディアドライブ７１２及びストレージユニットインターフェース７２０を含む。メディアドライブ７１２は、固定された又は取り外し可能なストレージ媒体７１４を支持するためのドライブ又は他の機構を含む。例えば、ハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、磁気テープドライブ、光学ディスクドライブ、ＣＤ若しくはＤＶＤ（ＲまたはＲＷ）ドライブ、又は、他の取り外し可能な若しくは固定されたメディアドライブである。従って、ストレージ媒体７１４は、例えば、ハードディスク、フロッピー（登録商標）ディスク、磁気テープ、カートリッジ、光学ディスク、ＣＤ若しくはＤＶＤ、又は、メディアドライブ７１２によって読み取り、書き込み、若しくは、アクセス可能な他の固定された若しくは取り外し可能な媒体を含む。これらが例示するとおり、ストレージ媒体７１４は、コンピュータで使用可能な、その中に保存された特定のコンピュータソフトウェア又はデータを有するストレージ媒体を含む。
【００４１】
別の実施形態では、情報ストレージ機構７１０は、コンピュータプログラム又は他の命令若しくはデータをコンピュータモジュール７００にロード可能とするための他の同様の手段を含む。このような手段は、例えば、固定又は取り外し可能なストレージユニット７２２及びインターフェイス７２０を含む。このようなストレージユニット７２２及びインターフェイス７２０の例は、プログラムカートリッジ及びカートリッジインターフェイス、取り外し可能なメモリ（例えば、フラッシュメモリ又は他の取り外し可能なメモリモジュール）及びメモリスロット、ＰＣＭＣＩＡスロット及びカード、並びに、ストレージユニット７２２から演算モジュール７００にソフトウェア及びデータが転送可能な他の固定又は取り外し可能なストレージユニット７２２及びインターフェイス７２０を含む。
【００４２】
演算モジュール７００はまた通信インターフェイス７２４を含む。通信インターフェイス７２４は、演算モジュール７００と外部デバイスとの間にソフトウェア及びデータが転送可能になるように使用される。通信インターフェイス７２４の例は、モデム若しくはソフトモデム、ネットワークインターフェイス（イーサネット（登録商標）、ネットワークインターフェイスカード、ウィー媒体、８０２．ＸＸ又は他のインターフェイス）、通信ポート（例えば、ＵＳＢポート、ＩＲポート、ＲＳ２３２ポート、ブルートゥースインターフェイス又は他のポート）、又は、他の通信インターフェイスを含む。通信インターフェイス７２４により転送されたソフトウェア及びデータは典型的には、電子信号、電磁気信号、光学信号、他の所定の通信インターフェイス７２４によって交換可能な信号で送られる。これらの信号は、チャネル（伝送路）７２８によって通信インターフェイス７２４に提供される。当該チャネル７２８は信号を運び、有線又は無線媒体を使用して実行される。チャネルのいくつかの例には、電話線、セルラー方式のリンク、ＲＦリンク、光学リンク、ネットワークインターフェイス、ローカル若しくは広域ネットワーク、及び、他の有線又は無線通信チャネルが含まれる。
【００４３】
本明細書では、「コンピュータプログラム媒体」及び「コンピュータで使用可能な媒体」は、例えば、メモリ７０８、ストレージユニット７２０、媒体７１４及びチャネル７２８上の信号のような媒体に一般的に参照されて用いられる。これらの媒体及びコンピュータプログラム媒体又はコンピュータで使用可能な媒体の他の様々な形態は、１以上の命令の１以上のシークエンス（順序、手続）を実行のための処理デバイスへ運ぶことに関わる。実行されたとき、このような命令は、演算モジュール７００がここで述べられた本発明の特徴又は機能を実行することを可能とする。
【００４４】
本発明の様々な実施形態が上述されたが、それらは、例示にすぎず、限定するものではないことが理解されよう。本発明の技術的範囲は、上述した例示の実施形態のいずれによっても限定されるべきでない。本明細書は、当業者にとって明らかな又は周知となるだろう技術に参照されるところ、このような技術は、現在または未来における当業者に明らかな又は周知であるものを網羅する。さらに発明は、図示例の構造又は構成に限定されることはないが、所望の特徴は、様々な代替的な構造及び構成を使用して実行可能である。当該明細書を読んだ当業者にとって明らかになり、図示の実施形態及びそれらの代替の形態は、図示の例を限定することなく実行可能である。当業者はまた、本発明の所望の特徴を実行するために、どのように代替的な機能、論理的又は物理的な分割及び構成が利用されるかについて理解しよう。
【００４５】
本明細書において使用された用語及びフレーズ及びこれらの変形は、明示的に別段の定めをした場合を除き、制限とは反対に、制約ないものとして解釈すべきである。「ａｎｄ（及び）」に従い接続された項目のグループは、グループにおいてすべての項目が存在することを要求するとして解釈されるべきでなく、むしろ、明示的に別段の定めをした場合を除き、「ａｎｄ／ｏｒ（及び／又は）」として解釈すべきである。同様に、「ｏｒ（又は、若しくは）」に従い接続された項目のグループは、そのグループ内に相互に排他することを要求するとして解釈すべきでなく、むしろ、明示的に別段の定めをした場合を除き、「ａｎｄ／ｏｒ（及び／又は）」として解釈すべきである。
【００４６】
さらに、発明の項目、要素又は構成要素は単数形で記載又は請求されるが、単数形であることが明示されて限定される場合を除いて、複数形も技術的範囲にあると意図される。時には、「１以上」「少なくとも」「限定されないが」又は他の同様のフレーズのような広義の言葉及びフレーズは、このような広義のフレーズが不在のような場合には狭義の場合が意図又は要求されることを意味するとして解釈されるべきでない。
【００４７】
用語「モジュール」の使用は、モジュールの部分として明細書または請求の範囲に記載された構成要素又は機能がすべて共通のパッケージとして構成されていることを示唆していない。実際、モジュールの様々な構成要素のどれか又は全ては、制御論理又は他の構成要素であれ、ひとつのパッケージに又は別々に保持された状態に組み合わせ可能であり、さらに、複数のグループ若しくはパッケージに、又は、複数の場所にわたって分配可能である。
【図１】
2010108484.tif 000003
【図２】
2010108484.tif 000004
【図３】
2010108484.tif 000005
【図４】
2010108484.tif 000006
【図５ａ】
2010108484.tif 000007
【図５ｂ】
2010108484.tif 000008
【図６ａ】
2010108484.tif 000009
【図６ｂ】
2010108484.tif 000010
【図７】
2010108484.tif 000011
【外国語明細書】
2010108484.tif 000012
2010108484.tif 000013
2010108484.tif 000014
2010108484.tif 000015
2010108484.tif 000016
2010108484.tif 000017
2010108484.tif 000018
2010108484.tif 000019
2010108484.tif 000020
2010108484.tif 000021
2010108484.tif 000022
2010108484.tif 000023
2010108484.tif 000024
2010108484.tif 000025
2010108484.tif 000026
2010108484.tif 000027
2010108484.tif 000028
2010108484.tif 000029
2010108484.tif 000030
2010108484.tif 000031
2010108484.tif 000032
2010108484.tif 000033
2010108484.tif 000034
2010108484.tif 000035
2010108484.tif 000036
2010108484.tif 000037
【図１】
2010108484.tif 000038
【図２】
2010108484.tif 000039
【図３】
2010108484.tif 000040
【図４】
2010108484.tif 000041
【図５ａ】
2010108484.tif 000042
【図５ｂ】
2010108484.tif 000043
【図６ａ】
2010108484.tif 000044
【図６ｂ】
2010108484.tif 000045
【図７】
2010108484.tif 000046