(57)【特許請求の範囲】
【請求項１】
複数の回路ブロックを備える半導体集積回路の設計支援方法であって、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置することと、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定することと、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付けることと、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線することと、
分割された第１の領域と第２の領域との間を接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線することと、
を含む設計支援方法。
【請求項２】
各前記電圧条件に従って、配置された前記複数の回路ブロックの少なくとも１つを囲むように、前記所定のレイアウト領域を複数の領域に分割することをさらに含む、請求項１記載の設計支援方法。
【請求項３】
前記第２の導体線路を配線することは、前記第１の領域と前記第２の領域との間の第３の領域を介して前記第２の導体線路を配線することを含み、
前記第３の領域に対応する前記電圧条件に従って前記第３の領域に配線される前記第１の導体線路と所定の配線間隔を保って、前記第３の領域に対応する前記電圧条件とは異なる前記電圧条件の前記第２の導体線路を前記第３の領域に配線する、
請求項１記載の設計支援方法。
【請求項４】
前記所定の配線間隔は、前記第１の領域乃至第３の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔以上の広さの間隔である、請求項３記載の設計支援方法。
【請求項５】
前記所定の配線間隔は、前記第１の領域乃至第３の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔の２倍の間隔である、請求項４記載の設計支援方法。
【請求項６】
前記電圧条件に従う前記グリッドを決定することは、前記導体線路が配線される配線層の数に応じた前記グリッドを前記電圧条件に対応付けることを含む、請求項１記載の設計支援方法。
【請求項７】
前記第１の領域と前記半導体集積回路の外部との間を接続する第３の導体線路を、前記第１の領域に対応付けられた前記グリッドに従って配線することをさらに含む、請求項１記載の設計支援方法。
【請求項８】
前記電圧情報ファイルは、前記電圧条件及び前記導体線路が配線される配線層と前記配線間隔条件との関係を示す情報を含む、請求項１記載の設計支援方法。
【請求項９】
前記電圧情報ファイルに従って、各前記電圧条件を決定することをさらに含む、請求項１記載の設計支援方法。
【請求項１０】
前記回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、各前記電圧条件を決定することをさらに含む、請求項１記載の設計支援方法。
【請求項１１】
複数の回路ブロックを備える半導体集積回路の設計を行うための半導体設計支援装置であって、
プロセッサモジュール及びこれに接続されるメモリモジュールを有する実行装置を備え、
前記実行装置は、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置し、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定し、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付け、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線し、
分割された第１の領域と第２の領域との間を接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線するように構成される、
半導体設計支援装置。
【請求項１２】
複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムであって、
前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線する機能と、
分割された第１の領域と第２の領域との間を第３の領域を介して接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能と、
を実現させる設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計支援装置及び設計支援方法に関する。
【背景技術】
【０００２】
半導体集積回路のレイアウト設計には、設計支援プログラムを実装したＣＡＤシステムやＥＤＡシステムと呼ばれる半導体設計支援装置が用いられる。半導体設計支援装置を用いたレイアウト設計においては、まず、回路配置情報に従って、半導体集積回路を構成する各回路（回路ブロック）を配置した後に、デザインルールを適用しながら、該回路間を接続する導体線路を配線する。半導体設計支援装置は、回路及び導体線路（信号線や電源線等）の配置及び配線後、該配置及び配線がデザインルールを満たしているか否か検証し、該検証の結果、該配置及び配線がデザインルールを満たしている場合には、レイアウト設計が完了するが、デザインルールを満たしていない場合には、導体線路の配線工程に戻って、導体線路を再配線し、検証することを繰り返す。
【０００３】
微細化が進んだ最新の製造プロセスでは、トランジスタの許容電圧の低下とともに、チップ上に、電圧を異にする複数の回路領域が形成される傾向にある。この場合、導体線路の間隔（配線間隔）は、電圧のレベルに応じて定められる必要があり、したがって、分割した回路領域ごとに異なるデザインルールが適用される。
【０００４】
下記特許文献１は、デザインレベル（すなわち、回路領域）ごとに異なるデザインルールを適用する半導体集積回路の設計方法を開示している。すなわち、下記特許文献１に開示される半導体集積回路の設計方法では、１つのデザインレベルを複数のデザインレベルに分割し、分割された各デザインレベルに関するデザインルールを該デザインレベルに対応するデザインルールチェックによって検証し、該検証済の複数のデザインレベルを重ねあわせることによって１つのデータレベルを作成し、該データレベルに従って該検証済のデザインレベルに対応する１つのプロセスマスクを作製する。
【０００５】
また、下記特許文献２は、配線のネットの電位を特定したネットリストデータを入力し、各ネット間の電位差に対応した配線間隔に基づいて配線レイアウトデータを作成するレイアウト設計方法を開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−５０３７１０号公報
【特許文献２】特開２００３−３１６６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
製造プロセスの微細化に伴い、導体線路の耐圧や各種のマイグレーション耐性は低下している。現状、使用する電源電圧の種類は少なく、また、電圧に関する回路ブロックは回路領域ごとに集中して配置され、電源アイランドの数も少なくて済むことから、導体線路の配線には、デザインルールとして最も厳しい配線間隔条件（すなわち、最も広い配線間隔）を一律に適用していた。しかしながら、近年、多数の電圧アイランドがチップ上に配置され、より多くの電圧に応じた導体線路の配線間隔を定める必要性が高まった結果、特に、さまざまな電圧の導体線路がチップ上に錯綜することになり、導体線路の配線がますます難しくなっている。また、配線間隔条件を一律に適用する場合、本来であれば、より狭い配線間隔を適用できたにも拘わらず、最も広い配線間隔を適用してしまうため、半導体集積回路のチップ面積の増大やチップコストの増大を招いてしまうという不都合がある。
【０００８】
しかるに、上記のような特許文献１や２に開示された半導体集積回路の設計方法では、使用する電圧の種類が増え、それぞれ異なる配線間隔が適用される多数の導体線路が錯綜する状況には十分に対処し切れていない。すなわち、特許文献１に開示された半導体集積回路の設計方法は、デザインレベル間をわたる導体線路の配線方法について何ら考慮しておらず、チップ上における異なる電源電圧の配線の錯綜に対して依然として課題を抱えている。また、特許文献２に開示された半導体集積回路の設計方法は、そもそも導体線路の具体的な配線方法について開示していない。
【０００９】
そこで、本発明は、半導体集積回路のレイアウト設計において、さまざまな電圧条件に従って異なる配線間隔で多数の導体線路を配線することにより該導体線路が錯綜する場合であっても、導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【００１０】
具体的には、本発明は、半導体集積回路のレイアウト設計において、電圧条件に従う各分割領域内で、配線層ごとに、異なる配線間隔で、導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【００１１】
また、本発明は、半導体集積回路のレイアウト設計において、電圧条件に従う分割領域間を接続する、及び／又は分割領域の外部と接続する導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するための本発明は、以下の技術的特徴乃至は発明特定事項を含んで構成される。
【００１３】
すなわち、ある観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計支援方法であって、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置することと、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定することと、各前記電圧条件に従って、前記複数の領域のそれぞれと前記グリッドとを対応付けることと、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線することと、分割された第１の領域と第２の領域との間を接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線することとを含む、設計支援方法である。
【００１４】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【００１５】
ここで、前記設計支援方法は、各前記電圧条件に従って、配置された前記複数の回路ブロックの少なくとも１つを囲むように、前記所定のレイアウト領域を複数の領域に分割することをさらに含んでも良い。
【００１６】
また、前記第２の導体線路を配線することは、前記第１の領域と前記第２の領域との間の第３の領域を介して前記第２の導体線路を配線することを含み、前記第３の領域に対応する前記電圧条件に従って前記第３の領域に配線される前記第１の導体線路と所定の配線間隔を保って、前記第３の領域に対応する前記電圧条件とは異なる前記電圧条件の前記第２の導体線路を前記第３の領域に配線しても良い。
【００１７】
これにより、半導体設計支援装置は、第１の導体線路に対して所定の配線間隔を保って第２の導体線路を配線するため、第１の導体線路及び第２の導体線路が互いに及ぼす電気的影響を低減することができるようになる。
【００１８】
さらに、前記所定の配線間隔は、前記第１の領域乃至第３の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔以上の広さの間隔であっても良い。
【００１９】
さらに、また、前記所定の配線間隔は、前記第１の領域乃至第３の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔の２倍の間隔であっても良い。
【００２０】
また、前記電圧条件に従う前記グリッドを決定することは、前記導体線路が配線される配線層の数に応じた前記グリッドを前記電圧条件に対応付けることを含んでも良い。
【００２１】
これにより、半導体設計支援装置は、配線層の数に応じたグリッドを電圧条件に対応付けるため、配線層に応じた配線間隔で導体線路を配線することができるようになる。
【００２２】
また、前記設計支援方法は、前記第１の領域と前記半導体集積回路の外部との間を接続する第３の導体線路を、前記第１の領域に対応付けられた前記グリッドに従って配線することをさらに含んでも良い。
【００２３】
これにより、半導体設計支援装置は、半導体集積回路の外部に向かう第３の導体線路を配線することができるようになる。
【００２４】
また、前記電圧情報ファイルは、前記電圧条件及び前記導体線路が配線される配線層と前記配線間隔条件との関係を示す情報を含んでも良い。
【００２５】
これにより、半導体設計支援装置は、電圧情報ファイルが電圧条件及び配線層と配線間隔条件との関係を示す情報を含むため、電圧条件と配線層の組み合わせに対応する配線間隔条件に従うグリッドを決定することができるようになる。
【００２６】
また、前記設計支援方法は、前記電圧情報ファイルに従って、各前記電圧条件を決定することをさらに含んでも良い。
【００２７】
これにより、半導体設計支援装置は、電圧情報ファイルに従って、電圧条件を決定することができるようになる。
【００２８】
また、前記設計支援方法は、前記回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、各前記電圧条件を決定することをさらに含んでも良い。
【００２９】
これにより、半導体設計支援装置は、レイアウト領域に配置される回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、電圧条件を決定することができるようになる。
【００３０】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための半導体設計支援装置であって、プロセッサモジュール及びこれに接続されるメモリモジュールを有する実行装置を備え、前記実行装置は、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置し、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定し、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付け、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線し、分割された第１の領域と第２の領域との間を接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線するように構成される半導体設計支援装置である。
【００３１】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【００３２】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムであって、前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線する機能と、分割された第１の領域と第２の領域との間を第３の領域を介して接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能とを実現させる設計支援プログラムである。
【００３３】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【００３４】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムを記憶した記憶媒体であって、前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第１の導体線路を配線する機能と、分割された第１の領域と第２の領域との間を第３の領域を介して接続する第２の導体線路を、前記第１の領域及び前記第２の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能とを実現させる、記憶媒体である。
【００３５】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【発明の効果】
【００３６】
本発明によれば、半導体設計支援装置は、さまざまな電圧条件による異なる配線間隔の導体線路の錯綜の度合いが高い場合でも、対応する電圧条件に応じた配線間隔で導体線路の配線を決定することができるようになる。
【００３７】
また、本発明によれば、半導体設計支援装置は、異なる配線間隔条件が適用される領域間にわたる導体線路の配線を決定することができるようになる。
【００３８】
本発明の他の技術的特徴、目的、及び作用効果乃至は利点は、添付した図面を参照して説明される以下の実施形態により明らかにされる。
【図面の簡単な説明】
【００３９】
【図１】本発明の一実施形態に係る半導体設計支援装置を用いてレイアウト設計された半導体集積回路モデルを示す平面模式図である。
【図２】本発明の一実施形態に係る半導体設計支援装置の概略構成を示す図である。
【図３】本発明の一実施形態に係る半導体設計支援装置のメモリモジュールの記憶内容の一例を説明するための概念図である。
【図４】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計処理を説明するためのフローチャートである。
【図５】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における領域の決定を説明するための概念図である。
【図６】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における回路ブロックの配置を説明するための概念図である。
【図７】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計におけるグリッドを説明するための図である。
【図８】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【図９】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【図１０】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【図１１】本発明の一実施形態に係る半導体設計支援装置による導体線路の配線を説明するための図である。
【発明を実施するための形態】
【００４０】
次に、本発明の実施の形態について、図面を参照しつつ説明する。以下の図の記載において、同一又は類似の部分には同一又は類似の符号を付して表している。図は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
【００４１】
図１は、本発明の一実施形態に係る半導体設計支援装置を用いてレイアウト設計された半導体集積回路モデルを示す平面模式図である。同図に示すように、半導体集積回路モデル１は、例えば、矩形形状に分割された仮想的な複数の領域１０内の所定の位置に配置された仮想的な回路ブロック２０と、特定の回路ブロック２０同士及び外部に接続する仮想的な導体線路３０とを含んでいる。
【００４２】
複数の領域１０は、本例では、領域１０ａ１、１０ａ２、１０ｂ、及び１０ｃからなる。これらの領域１０ａ１、１０ａ２、領域１０ｂ、及び１０ｃは、レイアウト設計において、導体線路３０に対する所定の電圧条件ごとに分割された領域である。すなわち、領域１０ａ１及び１０ａ２は、導体線路３０に対する第１の電圧条件に従って分割された領域であり、第１の電圧条件に対応する回路ブロック２０及び導体線路３０が配線される。また、領域１０ｂは、導体線路３０に対する第２の電圧条件に従って分割された領域であり、第２の電圧条件に対応する回路ブロック２０及び導体線路３０が配線される。また、領域１０ｃは、導体線路３０に対する第３の電圧条件に従って分割された領域であり、第３の電圧条件に対応する回路ブロック２０及び導体線路３０が配線される。
【００４３】
回路ブロック２０は、所定の電圧に従って動作する回路であり、例えば、導体線路３０を介して入力される信号を処理する。したがって、領域１０ａ１及び１０ａ２に配置された回路ブロック２０は、第１の電圧条件に従う電圧で動作し、領域１０ｂに配置された回路ブロック２０は、第２の電圧条件に従う電圧で動作し、領域１０ｂに配置された回路ブロック２０は、第２の電圧条件に従う電圧で動作する。回路ブロック２０は、例えば、特定の機能ごとに構成され、各領域１０内の所定の位置に配置される。
【００４４】
導体線路３０は、所定の電圧の信号を伝送するための配線であり、所定の電圧条件に従って例えば線幅や他の導体線路３０との間隔が定められている。本実施形態では、導体線路３０は、電源を供給する電源線も含むことができる。導体線路３０は、導体線路３０間の配線間隔条件を示す後述する仮想的なグリッドＧに沿って配線される。導体線路３０は、領域１０内の回路ブロック２０に接続される導体線路３２、及び一の領域１０の外部へ延伸する導体線路３４を含む。すなわち、導体線路３２は、その両端を回路ブロック２０に接続するものと、一端を回路ブロック２０に接続するものとがあり、また、導体線路３４は、異なる領域１０間をわたるものと、半導体集積回路モデル１の外側に向かうものとがある。導体線路３０は、典型的には、回路ブロック２０の上方の配線層内に配置され、回路ブロック２０とはビア（図示せず）を介して接続される。本例の配線層は、１層であるが、これに限られるものではなく、２層以上であっても良い。導体線路３０が配線される層が２層以上である場合、異なる層の間の導体線路３０同士の接続は、下層の導体線路３０の上面に配線され上層の導体線路３０の下面に配線されるビアによって行われる。
【００４５】
図２は、本発明の一実施形態に係る半導体設計支援装置の概略構成を示す図である。同図に示すように、本実施形態に係る半導体設計支援装置２００は、例えば、プロセッサモジュール２１０と、メモリモジュール２２０と、チップセット２３０と、ストレージデバイス２４０と、入出力装置２５０とを含んで構成される。プロセッサモジュール２１０、メモリモジュール２２０及びチップセット２３０は、実行装置２６０を構成する。
【００４６】
プロセッサモジュール２１０は、例えば、プロセッサコア、マイクロコントローラ、デジタル信号プロセッサ及び／又はこれらの組み合わせを含むが、これらに限られるものではない。ここでは、「プロセッサコア」という用語は、メインプロセッサを意味するプロセッサやＣＰＵ、ＭＰＵ等と同義のものとして扱われる。プロセッサモジュール２１０は、１次又はそれ以上のレベルのキャッシュ機構を含んでも良い。
【００４７】
メモリモジュール２２０は、典型的には、揮発性メモリ（例えばＲＡＭ）、不揮発性メモリ（例えばＲＯＭやフラッシュメモリ等）及び／又はこれらの組み合わせからなり、プロセッサモジュール２１０の１次記憶装置である。メモリモジュール２２０は、例えば、図３に示すように、２次記憶装置としてのストレージデバイス２４０からロードされた、設計支援プログラム２２１、該設計支援プログラム２２１の実行に供される各種のファイル２２２〜２２６、及び該設計支援プログラム２２１の実行により得られる設計結果ファイル２２７の少なくともいくつかを、ファイル全体又はその一部について、記憶する。
【００４８】
設計支援プログラム２２１は、半導体設計支援装置２００に、半導体集積回路モデル１のレイアウト設計支援を実現させるプログラムであり、ＣＡＤプログラムやＥＤＡプログラムが相当する。設計支援プログラム２２１は、例えば、１つのプログラムモジュールから構成されても良いし、複数のプログラムモジュールから構成されても良い。回路ブロック情報ファイル２２２は、半導体集積回路モデル１を構成する各回路ブロック２０の物理的形状や電気的特性に関する情報を有するファイルである。回路ブロック配置情報ファイル２２３は、各回路ブロック２０の配置に関する情報と、半導体集積回路モデル１を構成するための仮想的な全体領域（レイアウト領域Ｌ）における各領域１０の位置に関する情報とを有するファイルである。設計支援プログラム２２１の実行において、回路ブロック情報ファイル２２２及び回路ブロック配置情報ファイル２２３が参照され、各回路ブロック２０を配置すべき位置が決定される。導体線路情報ファイル２２４は、回路ブロック２０間、及び回路ブロック２０と半導体集積回路モデル１の外部との間を接続する導体線路３０の電気的特性に関する情報を有するファイルである。設計支援プログラム２２１の実行において、導体線路情報ファイル２２４が参照され、導体線路３０の配線位置が決定される。
【００４９】
テクノロジファイル２２５は、レイアウト設計を行うために必要なルール（すなわち、デザインルール）に関する情報を有するファイルである。デザインルールに関する情報は、例えば、配線層の数や、導体線路３０の配線間隔の最小値、回路ブロック２０及び導体線路３０の配線に必要なその他のルールなどである。半導体設計支援装置２００は、テクノロジファイル２２５に示されるデザインルールに違反しないように、回路ブロック２０及び導体線路３０の配線を行う。なお、テクノロジファイル２２５は、典型的には、１つの電圧条件に対応する１つのデザインルールに関する情報を有する。
【００５０】
電圧情報ファイル２２６は、配線層及び導体線路３０に印加される電圧と導体線路３０の配線間隔条件との関係を示す情報を有するファイルである。つまり、電圧情報ファイル２２６は、導体線路３０が配線される配線層及び該導体線路３０に印加される電圧に基づいて決定される該導体線路３０の配線間隔条件を定義している。例えば、第１層目の配線層について、３種類の導体線路３０のそれぞれに印加される電圧が電圧Ｅ１、Ｅ２及びＥ３（ただし、Ｅ１＞Ｅ２＞Ｅ３）である場合、導体線路３０の配線間隔条件は、それぞれ、ｄ１、ｄ２及びｄ３となる（ただし、ｄ１＞ｄ２＞ｄ３）。また、例えば、導体線路３０に印加される電圧が電圧Ｅ１であり、該導体線路３０が配線される層が１層目及び２層目である場合、該導体線路３０の配線間隔条件は、それぞれ、ｄ１及びｄ４となる（例えば、ｄ１＞ｄ４）。
【００５１】
図２に戻り、チップセット２３０は、プロセッサモジュール２１０、メモリモジュール２２０、ストレージデバイス２４０及び入出力装置２５０等を接続するバスとのブリッジや、半導体設計支援装置２００を構成するために必要な他のコンポーネントを集積した回路からなる。チップセット２３０は、例えば、プロセッサモジュール２１０によって制御される。
【００５２】
ストレージデバイス２４０は、典型的には、ハードディスクドライブ（ＨＤＤ）や光学式ディスクドライブ、ソリッドステートデバイス（ＳＳＤ）等からなる２次記憶装置である。入出力装置２５０は、各種のペリフェラルインターフェースであり、例えば、キーボードや、マウス、ディスプレイ、印刷装置などである。入出力装置２５０は、例えば、レイアウト設計時に、設計者（ユーザ）に対してインタラクティブな操作環境を提供する。
【００５３】
以上のように構成される半導体設計支援装置２００は、例えば、ユーザの指示に従い、プロセッサモジュール２１０の制御の下、設計支援プログラム２２１を実行し、適宜にインタラクティブな操作を介して、レイアウト設計を行い、半導体集積回路モデル１を作成する。
【００５４】
図４は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計処理を説明するためのフローチャートである。かかる処理は、半導体設計支援装置２００が、プロセッサモジュール２１０の制御の下、設計支援プログラム２２１を実行することにより、遂行される。
【００５５】
同図において、半導体設計支援装置２００は、まず、ユーザの操作に従い、設計支援プログラム２２１を実行し、メモリモジュール２２０上に各種の情報ファイル２２２〜２２６を準備する（Ｓ４０１）。例えば、各種の情報ファイル２２２〜２２６の少なくともいくつかは、ストレージデバイス２４０からロードされ、また、他のいくつかは、新たに生成される。
【００５６】
次に、半導体設計支援装置２００は、回路ブロック配置情報ファイル２２３に従って、レイアウト領域Ｌを分割し、複数の領域１０を決定する（Ｓ４０２）。本例では、複数の領域１０は、矩形状に形成されるが、例えば、他の多角形状に形成されても良い。また、複数の領域１０は、その数が例えば最小値になるように、分割される。また、半導体設計支援装置２００によって決定される領域１０は、後述する電圧条件に対応するように決定される。この場合、領域１０は、各電圧条件に対して１つの領域１０が決定されても良いし、複数決定されても良い。
【００５７】
半導体設計支援装置２００は、回路ブロック情報ファイル２２２、回路ブロック配置情報ファイル２２３及びテクノロジファイル２２５に従って、決定した各領域１０に、所望の各種の回路ブロック２０を配置する（Ｓ４０３）。続いて、半導体設計支援装置２００は、電圧情報ファイル２２６に従って、半導体集積回路モデル１に対する少なくとも２以上の電圧条件を決定する。具体的には、半導体設計支援装置２００は、電圧情報ファイル２２６から、導体線路３０に印加される電圧の値を抽出し、該抽出した電圧の値を電圧条件として決定する（Ｓ４０４）。或いは、電圧条件は、回路ブロック情報ファイル２２２から特定される回路ブロック２０の動作電圧の値に基づいて決定されても良い。なお、半導体設計支援装置２００は、電圧条件を決定するにあたって、各電圧条件に所定の優先順位を割り当てる。所定の優先順位は、半導体設計支援装置２００が導体線路３２の配線を行う領域１０の優先順位である。半導体設計支援装置２００は、例えば、第１の電圧条件に第１の優先順位を割り当て、第２の電圧条件に第２の優先順位を割り当て、第３の電圧条件に第３の優先順位を割り当てる。
【００５８】
さらに、半導体設計支援装置２００は、各配線層について、決定された電圧条件ごとに、電圧情報ファイル２２６に従って、グリッドＧを決定する（Ｓ４０５）。グリッドＧは、対象とする配線層及び所定の電圧条件に基づいて決定される導体線路３０の配線間隔で、半導体集積回路モデル１の仮想的なレイアウト領域Ｌにわたり配された格子状の仮想線であって、導体線路３０を配線可能な位置を示す。例えば、ある配線層については、配線間隔ｄ１、ｄ２及びｄ３の３種類のグリッドＧ１〜Ｇ３が決定される。
【００５９】
半導体設計支援装置２００は、該決定した各領域１０とステップＳ４０５の処理で決定した各配線層のグリッドＧとを対応付ける（Ｓ４０６）。これにより、各領域１０には、該領域１０に適合した配線間隔を有するグリッドＧが配線層の数分対応付けられる。
【００６０】
次に、半導体設計支援装置２００は、各領域１０について、各領域１０に対応する電圧条件に割り当てられた所定の優先順位で、配線層ごとに、テクノロジファイル２２５に示されるデザインルールを適用し、対応するグリッドＧに基づいて、導体線路３２の配線を決定する（Ｓ４０７）。具体的には、半導体設計支援装置２００は、テクノロジファイル２２５に示されるデザインルールに従って、例えば下位の配線層から、対応するグリッドＧの仮想線に沿うように、領域１０内の導体線路３０の配線を決定する。なお、半導体設計支援装置２００は、全て又はいくつかの領域１０について、配線層ごとに、導体線路３２の配線を決定しても良い。
【００６１】
半導体設計支援装置２００はさらに、領域間をわたる導体線路３４、及び半導体集積回路モデル１の外部の端子に接続するための導体線路３４の配線をそれぞれ決定する（Ｓ４０８）。この場合、半導体設計支援装置２００は、導体線路３４の始端又は終端の位置を含む領域１０に対応するグリッドＧに従って該導体線路３４を配線する。また、半導体設計支援装置２００は、例えば、ある一の領域１０の電圧条件と異なる電圧条件の導体線路３４を該一の領域１０に配線する場合、該一の領域１０に既に配線されている導体線路３２から所定の配線間隔以上離して、該異なる電圧条件に対応する導体線路３４を配線する。所定の配線間隔は、例えば、一の領域１０の電圧条件に対応する配線間隔、及び異なる電圧条件に対応する配線間隔のうち広い方の間隔以上の間隔であれば良い。
【００６２】
このようにして、本実施形態に係る半導体設計支援装置２００は、仮想的なレイアウト領域Ｌにおいて領域１０を決定した後、回路ブロック２０を各領域１０に配置し、各配線層について電圧条件ごとにグリッドＧを決定するとともに、各領域１０と各配線層のグリッドＧとを対応付ける。半導体設計支援装置２００は、さらに、各領域１０に対応付けられたグリッドＧに従い該領域１０内の導体線路３２を配線した後、各領域間にわたる導体線路３４及び一の領域１０の外部へ延伸する導体線路３４を配線する。これにより、半導体設計支援装置２００は、半導体集積回路モデル１の仮想的なレイアウト領域Ｌにわたって電圧条件ごとに配されたグリッドＧを使用し、各配線層について、電圧条件に応じた各領域１０内の導体線路３０の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路３０の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路３０を適切に配線することができる。また、半導体設計支援装置２００は、半導体集積回路モデル１の仮想的なレイアウト領域Ｌにわたって電圧条件ごとに配されたグリッドＧを使用するため、各配線層について、異なる配線間隔が適用される各領域１０間にわたる導体線路３４を適切に配線することができる。
【００６３】
なお、本例では、半導体設計支援装置２００は、回路ブロック配置情報ファイル２２３に従って、レイアウト領域Ｌを分割し、複数の領域１０を決定した後に、該決定した領域１０に回路ブロック２０を配置するが、これに限られるものではない。例えば、半導体設計支援装置２００は、回路ブロック２０の配置を決定した後に、電圧情報ファイル２２６に従って電圧条件を決定し、該決定した電圧条件に従って、レイアウト領域Ｌを分割し、複数の領域１０を決定しても良い。
【００６４】
次に、上述した半導体設計支援装置２００による半導体集積回路モデル１のレイアウト設計の例を、図５乃至図１１を参照して、説明する。ここでは、説明の簡略のため、導体線路３０を配線する配線層は、１層とする。
【００６５】
図５は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における領域の決定を説明するための図である。半導体設計支援装置２００は、回路ブロック配置情報ファイル２２３に従って、同図に示すような、第１の領域１０ａ１及び１０ａ２と、第２の領域１０ｂと、及び第３の領域１０ｃとを決定する。なお、第１の領域１０ａ１及び１０ａ２は第１の電圧条件に対応付けられ、第２の領域１０ｂは、第２の電圧条件に対応付けられ、第３の領域１０ｃは、第３の電圧条件に対応付けられる。
【００６６】
図６は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における回路ブロックの配置を説明するための概念図である。同図は、複数の回路ブロック２０が、回路ブロック配置情報ファイル２２３に従って、半導体集積回路モデル１の各領域１０に配置された様子を示している。
【００６７】
図７は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計におけるグリッドを説明するための概念図である。上述したように、半導体設計支援装置２００は、電圧情報ファイル２２６に従って、各電圧条件に対応するグリッドＧを決定する。同図（ａ）は、第１の電圧に関する第１の電圧条件に従ってレイアウト領域Ｌ１に間隔ｄ１で構成されたグリッドＧ１を、実線で示している。また、同図（ｂ）は、第２の電圧に関する第２の電圧条件に従ってレイアウト領域Ｌ２に間隔ｄ２で構成されたグリッドを、破線で示している。さらに、同図（ｃ）は、第３の電圧に関する第３の電圧条件に従ってレイアウト領域Ｌ３に間隔ｄ３で構成されたグリッドを、１点鎖線で示している。ただし、第１の電圧＞第２の電圧＞第３の電圧とする。このように、電圧条件に示される電圧が大きい程、グリッドＧによって示される格子の間隔は広くなる。
【００６８】
図８は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図であり、具体的には、半導体集積回路モデル１の領域１０ａ１における導体線路３２の配線を説明している。半導体設計支援装置２００は、第１の電圧条件に従う領域１０ａ１に対して、第１の電圧条件に従うグリッドＧ１を対応付け、テクノロジファイル２２５のデザインルールを適用しながら、グリッドＧ１に従って、導体線路３２を配線する。すなわち、本例では、グリッドＧ１が示す仮想線（すなわち、図中の実線）に沿って導体線路３２が配線される。なお、グリッドＧ１は、レイアウト領域Ｌの全体に形成されるものであるが、同図中、領域１０ａ１の外側部分の仮想線については省略している。
【００６９】
図９及び図１０は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。図９に示すように、半導体設計支援装置２００は、領域１０ａ１及び１０ａ２において、図８で述べたようなグリッドＧ１に従って、導体線路３２の配線を決定する。同様に、半導体設計支援装置２００は、図１０に示すように、領域１０ｂ及び１０ｃにおいて、グリッドＧ２及びＧ３に従って、導体線路３２の配線を決定する。
【００７０】
図１１は、本発明の一実施形態に係る半導体設計支援装置による導体線路の配線を説明するための図である。より具体的には、図１１は、本発明の一実施形態に係る半導体設計支援装置２００による導体線路３０の配線に関して、領域１０間をわたる導体線路３４、及び半導体集積回路モデル１の外部の端子に接続するための導体線路３４の配線を説明するための図である。
【００７１】
半導体設計支援装置２００は、各領域１０内の導体線路３２の配線を決定した後、領域１０間をわたる導体線路３４、及び半導体集積回路モデル１の外部の端子に接続するための導体線路３４の配線を決定する。かかる導体線路３４は、該導体線路３４に対応する電圧条件とは異なる領域１０に配線され得る。例えば、領域１０ａ１と領域１０ａ２とにわたる導体線路３４は、その一部が領域１０ｂ及び１０ｃに配線され得る。領域１０ａ１と領域１０ａ２とにわたる導体線路３４が領域１０ｂに配線される場合、該導体線路３４は、第１の電圧条件に対応するグリッドＧ１における領域１０ｂに対応する部分のグリッドに従ってその配線が決定される。つまり、導体線路３４は、領域１０ｂにおいては、同図に示すように、実線で示されるグリッドＧ１の仮想線に沿って配線される。また、このような導体線路３４が領域１０ｂに配線される場合、該導体線路３４は、領域１０ｂに既に配線されている導体線路３２から所定の配線間隔を保つように配線される。本例では、グリッドＧ１の格子２つ分（すなわち、グリッドＧ１に従う配線間隔の２倍）の配線間隔が確保されている。
【００７２】
上述したように、半導体設計支援装置２００は、領域１０間にわたる導体線路３４を配線し、また、領域１０の外部へ延伸する導体線路３４を配線する。これによって、上述した図１に示すような半導体集積回路モデル１が得られる。半導体設計支援装置２００は、得られた半導体集積回路モデル１について検証を行い、デザインルールを満たしている場合には、レイアウト設計を終了し、設計結果ファイル２２７を例えば入出力装置２５０を介してユーザに提示し、また、入出力装置２５０やストレージデバイス２４０に出力する。
【００７３】
以上のように、本実施形態に係る半導体設計支援装置２００は、仮想的なレイアウト領域Ｌにおいて領域１０を決定した後、回路ブロック２０を各領域１０に配置し、各配線層について電圧条件ごとにグリッドＧを決定するとともに、各グリッドＧと各領域１０とを対応付ける。次に、半導体設計支援装置２００は、電圧条件ごとに決定された該領域に対応付けられたグリッドＧに従って導体線路３２を配線した後、導体線路３４に対応するグリッドＧに従って、電圧条件が異なる各領域間にわたる該導体線路３４及び一の領域１０の外部へ延伸する導体線路３４の配線を行う。これにより、半導体設計支援装置２００は、さまざまな電圧条件による異なる配線間隔の導体線路３０の錯綜の度合いが高い場合であっても、対応する電圧条件に応じた配線間隔で導体線路３０の配線を決定することができる。また、半導体設計支援装置２００は、半導体集積回路モデル１の仮想的なレイアウト領域Ｌにわたって電圧条件ごとに配されたグリッドＧを分割した領域１０に適用するため、各配線層について、異なる配線間隔が適用される各領域１０間にわたる導体線路３４の配線を決定することができる。
【００７４】
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。
【００７５】
例えば、本明細書に開示される方法においては、その結果に矛盾が生じない限り、ステップ、動作又は機能を並行して又は異なる順に実施しても良い。説明されたステップ、動作及び機能は、単なる例として提供されており、ステップ、動作及び機能のうちのいくつかは、発明の要旨を逸脱しない範囲で、省略でき、また、互いに結合させることで一つのものとしてもよく、また、他のステップ、動作又は機能を追加してもよい。
【００７６】
また、本明細書では、さまざまな実施形態が開示されているが、一の実施形態における特定のフィーチャ（技術的事項）を適宜改良しながら、他の実施形態に追加し、又は該他の実施形態における特定のフィーチャと置換することができ、そのような形態も本発明の要旨に含まれる。
【産業上の利用可能性】
【００７７】
本発明は、半導体集積回路の分野に広く利用することができる。
【符号の説明】
【００７８】
１…半導体集積回路モデル
１０…領域
２０…回路ブロック
３０…導体線路
３２，３４…導体線路
２００…半導体設計支援装置
２１０…プロセッサモジュール
２２０…メモリモジュール
２２１…設計支援プログラム
２２２…回路ブロック情報ファイル
２２３…回路ブロック配置情報ファイル
２２４…導体線路情報ファイル
２２５…テクノロジファイル
２２６…電圧情報ファイル
２２７…設計結果ファイル
２３０…チップセット
２４０…ストレージデバイス
２５０…入出力装置
２６０…実行装置
【図１】
0006498983.tif 000002
【図２】
0006498983.tif 000003
【図３】
0006498983.tif 000004
【図４】
0006498983.tif 000005
【図５】
0006498983.tif 000006
【図６】
0006498983.tif 000007
【図７】
0006498983.tif 000008
【図８】
0006498983.tif 000009
【図９】
0006498983.tif 000010
【図１０】
0006498983.tif 000011
【図１１】
0006498983.tif 000012