(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6498983
(24)【登録日】2019年3月22日
(45)【発行日】2019年4月10日
(54)【発明の名称】半導体集積回路の設計支援装置及び設計支援方法
(51)【国際特許分類】
G06F 17/50 20060101AFI20190401BHJP
H01L 21/82 20060101ALI20190401BHJP
H01L 21/822 20060101ALI20190401BHJP
H01L 27/04 20060101ALI20190401BHJP
【FI】
G06F17/50 658E
G06F17/50 658L
H01L21/82 C
H01L27/04 D
【請求項の数】12
【全頁数】18
(21)【出願番号】特願2015-63763(P2015-63763)
(22)【出願日】2015年3月26日
(65)【公開番号】特開2016-184261(P2016-184261A)
(43)【公開日】2016年10月20日
【審査請求日】2018年2月15日
(73)【特許権者】
【識別番号】591128453
【氏名又は名称】株式会社メガチップス
(74)【代理人】
【識別番号】100103850
【弁理士】
【氏名又は名称】田中 秀▲てつ▼
(74)【代理人】
【識別番号】100109715
【弁理士】
【氏名又は名称】塩谷 英明
(72)【発明者】
【氏名】竹内 華子
【審査官】
田中 幸雄
(56)【参考文献】
【文献】
特開2010−97468(JP,A)
【文献】
特開平7−296019(JP,A)
【文献】
米国特許出願公開第2009/0024976(US,A1)
【文献】
特開平3−204958(JP,A)
【文献】
特開2010−272718(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/50
H01L 21/82
H01L 21/822
H01L 27/04
(57)【特許請求の範囲】
【請求項1】
複数の回路ブロックを備える半導体集積回路の設計支援方法であって、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置することと、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定することと、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付けることと、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線することと、
分割された第1の領域と第2の領域との間を接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線することと、
を含む設計支援方法。
【請求項2】
各前記電圧条件に従って、配置された前記複数の回路ブロックの少なくとも1つを囲むように、前記所定のレイアウト領域を複数の領域に分割することをさらに含む、請求項1記載の設計支援方法。
【請求項3】
前記第2の導体線路を配線することは、前記第1の領域と前記第2の領域との間の第3の領域を介して前記第2の導体線路を配線することを含み、
前記第3の領域に対応する前記電圧条件に従って前記第3の領域に配線される前記第1の導体線路と所定の配線間隔を保って、前記第3の領域に対応する前記電圧条件とは異なる前記電圧条件の前記第2の導体線路を前記第3の領域に配線する、
請求項1記載の設計支援方法。
【請求項4】
前記所定の配線間隔は、前記第1の領域乃至第3の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔以上の広さの間隔である、請求項3記載の設計支援方法。
【請求項5】
前記所定の配線間隔は、前記第1の領域乃至第3の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔の2倍の間隔である、請求項4記載の設計支援方法。
【請求項6】
前記電圧条件に従う前記グリッドを決定することは、前記導体線路が配線される配線層の数に応じた前記グリッドを前記電圧条件に対応付けることを含む、請求項1記載の設計支援方法。
【請求項7】
前記第1の領域と前記半導体集積回路の外部との間を接続する第3の導体線路を、前記第1の領域に対応付けられた前記グリッドに従って配線することをさらに含む、請求項1記載の設計支援方法。
【請求項8】
前記電圧情報ファイルは、前記電圧条件及び前記導体線路が配線される配線層と前記配線間隔条件との関係を示す情報を含む、請求項1記載の設計支援方法。
【請求項9】
前記電圧情報ファイルに従って、各前記電圧条件を決定することをさらに含む、請求項1記載の設計支援方法。
【請求項10】
前記回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、各前記電圧条件を決定することをさらに含む、請求項1記載の設計支援方法。
【請求項11】
複数の回路ブロックを備える半導体集積回路の設計を行うための半導体設計支援装置であって、
プロセッサモジュール及びこれに接続されるメモリモジュールを有する実行装置を備え、
前記実行装置は、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置し、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定し、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付け、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線し、
分割された第1の領域と第2の領域との間を接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線するように構成される、
半導体設計支援装置。
【請求項12】
複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムであって、
前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、
所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、
導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、
各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、
前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線する機能と、
分割された第1の領域と第2の領域との間を第3の領域を介して接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能と、
を実現させる設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路の設計支援装置及び設計支援方法に関する。
【背景技術】
【0002】
半導体集積回路のレイアウト設計には、設計支援プログラムを実装したCADシステムやEDAシステムと呼ばれる半導体設計支援装置が用いられる。半導体設計支援装置を用いたレイアウト設計においては、まず、回路配置情報に従って、半導体集積回路を構成する各回路(回路ブロック)を配置した後に、デザインルールを適用しながら、該回路間を接続する導体線路を配線する。半導体設計支援装置は、回路及び導体線路(信号線や電源線等)の配置及び配線後、該配置及び配線がデザインルールを満たしているか否か検証し、該検証の結果、該配置及び配線がデザインルールを満たしている場合には、レイアウト設計が完了するが、デザインルールを満たしていない場合には、導体線路の配線工程に戻って、導体線路を再配線し、検証することを繰り返す。
【0003】
微細化が進んだ最新の製造プロセスでは、トランジスタの許容電圧の低下とともに、チップ上に、電圧を異にする複数の回路領域が形成される傾向にある。この場合、導体線路の間隔(配線間隔)は、電圧のレベルに応じて定められる必要があり、したがって、分割した回路領域ごとに異なるデザインルールが適用される。
【0004】
下記特許文献1は、デザインレベル(すなわち、回路領域)ごとに異なるデザインルールを適用する半導体集積回路の設計方法を開示している。すなわち、下記特許文献1に開示される半導体集積回路の設計方法では、1つのデザインレベルを複数のデザインレベルに分割し、分割された各デザインレベルに関するデザインルールを該デザインレベルに対応するデザインルールチェックによって検証し、該検証済の複数のデザインレベルを重ねあわせることによって1つのデータレベルを作成し、該データレベルに従って該検証済のデザインレベルに対応する1つのプロセスマスクを作製する。
【0005】
また、下記特許文献2は、配線のネットの電位を特定したネットリストデータを入力し、各ネット間の電位差に対応した配線間隔に基づいて配線レイアウトデータを作成するレイアウト設計方法を開示する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2009−503710号公報
【特許文献2】特開2003−31664号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
製造プロセスの微細化に伴い、導体線路の耐圧や各種のマイグレーション耐性は低下している。現状、使用する電源電圧の種類は少なく、また、電圧に関する回路ブロックは回路領域ごとに集中して配置され、電源アイランドの数も少なくて済むことから、導体線路の配線には、デザインルールとして最も厳しい配線間隔条件(すなわち、最も広い配線間隔)を一律に適用していた。しかしながら、近年、多数の電圧アイランドがチップ上に配置され、より多くの電圧に応じた導体線路の配線間隔を定める必要性が高まった結果、特に、さまざまな電圧の導体線路がチップ上に錯綜することになり、導体線路の配線がますます難しくなっている。また、配線間隔条件を一律に適用する場合、本来であれば、より狭い配線間隔を適用できたにも拘わらず、最も広い配線間隔を適用してしまうため、半導体集積回路のチップ面積の増大やチップコストの増大を招いてしまうという不都合がある。
【0008】
しかるに、上記のような特許文献1や2に開示された半導体集積回路の設計方法では、使用する電圧の種類が増え、それぞれ異なる配線間隔が適用される多数の導体線路が錯綜する状況には十分に対処し切れていない。すなわち、特許文献1に開示された半導体集積回路の設計方法は、デザインレベル間をわたる導体線路の配線方法について何ら考慮しておらず、チップ上における異なる電源電圧の配線の錯綜に対して依然として課題を抱えている。また、特許文献2に開示された半導体集積回路の設計方法は、そもそも導体線路の具体的な配線方法について開示していない。
【0009】
そこで、本発明は、半導体集積回路のレイアウト設計において、さまざまな電圧条件に従って異なる配線間隔で多数の導体線路を配線することにより該導体線路が錯綜する場合であっても、導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【0010】
具体的には、本発明は、半導体集積回路のレイアウト設計において、電圧条件に従う各分割領域内で、配線層ごとに、異なる配線間隔で、導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【0011】
また、本発明は、半導体集積回路のレイアウト設計において、電圧条件に従う分割領域間を接続する、及び/又は分割領域の外部と接続する導体線路を適切に配線することができる半導体設計支援装置及び半導体設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記課題を解決するための本発明は、以下の技術的特徴乃至は発明特定事項を含んで構成される。
【0013】
すなわち、ある観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計支援方法であって、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置することと、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定することと、各前記電圧条件に従って、前記複数の領域のそれぞれと前記グリッドとを対応付けることと、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線することと、分割された第1の領域と第2の領域との間を接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線することとを含む、設計支援方法である。
【0014】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【0015】
ここで、前記設計支援方法は、各前記電圧条件に従って、配置された前記複数の回路ブロックの少なくとも1つを囲むように、前記所定のレイアウト領域を複数の領域に分割することをさらに含んでも良い。
【0016】
また、前記第2の導体線路を配線することは、前記第1の領域と前記第2の領域との間の第3の領域を介して前記第2の導体線路を配線することを含み、前記第3の領域に対応する前記電圧条件に従って前記第3の領域に配線される前記第1の導体線路と所定の配線間隔を保って、前記第3の領域に対応する前記電圧条件とは異なる前記電圧条件の前記第2の導体線路を前記第3の領域に配線しても良い。
【0017】
これにより、半導体設計支援装置は、第1の導体線路に対して所定の配線間隔を保って第2の導体線路を配線するため、第1の導体線路及び第2の導体線路が互いに及ぼす電気的影響を低減することができるようになる。
【0018】
さらに、前記所定の配線間隔は、前記第1の領域乃至第3の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔以上の広さの間隔であっても良い。
【0019】
さらに、また、前記所定の配線間隔は、前記第1の領域乃至第3の領域のそれぞれに対応するグリッドのうち最も広い配線間隔のグリッドに従う配線間隔の2倍の間隔であっても良い。
【0020】
また、前記電圧条件に従う前記グリッドを決定することは、前記導体線路が配線される配線層の数に応じた前記グリッドを前記電圧条件に対応付けることを含んでも良い。
【0021】
これにより、半導体設計支援装置は、配線層の数に応じたグリッドを電圧条件に対応付けるため、配線層に応じた配線間隔で導体線路を配線することができるようになる。
【0022】
また、前記設計支援方法は、前記第1の領域と前記半導体集積回路の外部との間を接続する第3の導体線路を、前記第1の領域に対応付けられた前記グリッドに従って配線することをさらに含んでも良い。
【0023】
これにより、半導体設計支援装置は、半導体集積回路の外部に向かう第3の導体線路を配線することができるようになる。
【0024】
また、前記電圧情報ファイルは、前記電圧条件及び前記導体線路が配線される配線層と前記配線間隔条件との関係を示す情報を含んでも良い。
【0025】
これにより、半導体設計支援装置は、電圧情報ファイルが電圧条件及び配線層と配線間隔条件との関係を示す情報を含むため、電圧条件と配線層の組み合わせに対応する配線間隔条件に従うグリッドを決定することができるようになる。
【0026】
また、前記設計支援方法は、前記電圧情報ファイルに従って、各前記電圧条件を決定することをさらに含んでも良い。
【0027】
これにより、半導体設計支援装置は、電圧情報ファイルに従って、電圧条件を決定することができるようになる。
【0028】
また、前記設計支援方法は、前記回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、各前記電圧条件を決定することをさらに含んでも良い。
【0029】
これにより、半導体設計支援装置は、レイアウト領域に配置される回路ブロックの電気的特性に関する情報を示す回路ブロック情報ファイルに従って、電圧条件を決定することができるようになる。
【0030】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための半導体設計支援装置であって、プロセッサモジュール及びこれに接続されるメモリモジュールを有する実行装置を備え、前記実行装置は、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置し、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定し、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付け、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線し、分割された第1の領域と第2の領域との間を接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線するように構成される半導体設計支援装置である。
【0031】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【0032】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムであって、前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線する機能と、分割された第1の領域と第2の領域との間を第3の領域を介して接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能とを実現させる設計支援プログラムである。
【0033】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【0034】
さらに、別の観点に従う本発明は、複数の回路ブロックを備える半導体集積回路の設計を行うための設計支援プログラムを記憶した記憶媒体であって、前記設計支援プログラムは、半導体設計支援装置のプロセッサモジュールに、所定の回路ブロック配置情報ファイルに従って、所定のレイアウト領域を分割した複数の領域のそれぞれに、前記複数の回路ブロックのそれぞれを配置する機能と、導体線路の電圧条件と配線間隔条件との関係を示す情報を含む電圧情報ファイルに従って、各前記電圧条件に従うグリッドを決定する機能と、各前記電圧条件に従って、前記複数の領域のそれぞれと各前記グリッドとを対応付ける機能と、前記分割された各領域について、該領域に対応付けられた前記グリッドに従って第1の導体線路を配線する機能と、分割された第1の領域と第2の領域との間を第3の領域を介して接続する第2の導体線路を、前記第1の領域及び前記第2の領域のそれぞれに対応付けられた前記グリッドに従って、配線する機能とを実現させる、記憶媒体である。
【0035】
これにより、半導体設計支援装置は、所定のレイアウト領域にわたって電圧条件ごとに配されたグリッドを使用し、各配線層について、電圧条件に応じた各領域内の導体線路の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路を適切に配線することができる。また、半導体設計支援装置は、レイアウト領域にわたって電圧条件ごとに配されたグリッドを使用するため、各配線層について、異なる配線間隔が適用される各領域間にわたる導体線路を適切に配線することができるようになる。
【発明の効果】
【0036】
本発明によれば、半導体設計支援装置は、さまざまな電圧条件による異なる配線間隔の導体線路の錯綜の度合いが高い場合でも、対応する電圧条件に応じた配線間隔で導体線路の配線を決定することができるようになる。
【0037】
また、本発明によれば、半導体設計支援装置は、異なる配線間隔条件が適用される領域間にわたる導体線路の配線を決定することができるようになる。
【0038】
本発明の他の技術的特徴、目的、及び作用効果乃至は利点は、添付した図面を参照して説明される以下の実施形態により明らかにされる。
【図面の簡単な説明】
【0039】
【
図1】本発明の一実施形態に係る半導体設計支援装置を用いてレイアウト設計された半導体集積回路モデルを示す平面模式図である。
【
図2】本発明の一実施形態に係る半導体設計支援装置の概略構成を示す図である。
【
図3】本発明の一実施形態に係る半導体設計支援装置のメモリモジュールの記憶内容の一例を説明するための概念図である。
【
図4】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計処理を説明するためのフローチャートである。
【
図5】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における領域の決定を説明するための概念図である。
【
図6】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における回路ブロックの配置を説明するための概念図である。
【
図7】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計におけるグリッドを説明するための図である。
【
図8】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【
図9】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【
図10】本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
【
図11】本発明の一実施形態に係る半導体設計支援装置による導体線路の配線を説明するための図である。
【発明を実施するための形態】
【0040】
次に、本発明の実施の形態について、図面を参照しつつ説明する。以下の図の記載において、同一又は類似の部分には同一又は類似の符号を付して表している。図は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
【0041】
図1は、本発明の一実施形態に係る半導体設計支援装置を用いてレイアウト設計された半導体集積回路モデルを示す平面模式図である。同図に示すように、半導体集積回路モデル1は、例えば、矩形形状に分割された仮想的な複数の領域10内の所定の位置に配置された仮想的な回路ブロック20と、特定の回路ブロック20同士及び外部に接続する仮想的な導体線路30とを含んでいる。
【0042】
複数の領域10は、本例では、領域10a1、10a2、10b、及び10cからなる。これらの領域10a1、10a2、領域10b、及び10cは、レイアウト設計において、導体線路30に対する所定の電圧条件ごとに分割された領域である。すなわち、領域10a1及び10a2は、導体線路30に対する第1の電圧条件に従って分割された領域であり、第1の電圧条件に対応する回路ブロック20及び導体線路30が配線される。また、領域10bは、導体線路30に対する第2の電圧条件に従って分割された領域であり、第2の電圧条件に対応する回路ブロック20及び導体線路30が配線される。また、領域10cは、導体線路30に対する第3の電圧条件に従って分割された領域であり、第3の電圧条件に対応する回路ブロック20及び導体線路30が配線される。
【0043】
回路ブロック20は、所定の電圧に従って動作する回路であり、例えば、導体線路30を介して入力される信号を処理する。したがって、領域10a1及び10a2に配置された回路ブロック20は、第1の電圧条件に従う電圧で動作し、領域10bに配置された回路ブロック20は、第2の電圧条件に従う電圧で動作し、領域10bに配置された回路ブロック20は、第2の電圧条件に従う電圧で動作する。回路ブロック20は、例えば、特定の機能ごとに構成され、各領域10内の所定の位置に配置される。
【0044】
導体線路30は、所定の電圧の信号を伝送するための配線であり、所定の電圧条件に従って例えば線幅や他の導体線路30との間隔が定められている。本実施形態では、導体線路30は、電源を供給する電源線も含むことができる。導体線路30は、導体線路30間の配線間隔条件を示す後述する仮想的なグリッドGに沿って配線される。導体線路30は、領域10内の回路ブロック20に接続される導体線路32、及び一の領域10の外部へ延伸する導体線路34を含む。すなわち、導体線路32は、その両端を回路ブロック20に接続するものと、一端を回路ブロック20に接続するものとがあり、また、導体線路34は、異なる領域10間をわたるものと、半導体集積回路モデル1の外側に向かうものとがある。導体線路30は、典型的には、回路ブロック20の上方の配線層内に配置され、回路ブロック20とはビア(図示せず)を介して接続される。本例の配線層は、1層であるが、これに限られるものではなく、2層以上であっても良い。導体線路30が配線される層が2層以上である場合、異なる層の間の導体線路30同士の接続は、下層の導体線路30の上面に配線され上層の導体線路30の下面に配線されるビアによって行われる。
【0045】
図2は、本発明の一実施形態に係る半導体設計支援装置の概略構成を示す図である。同図に示すように、本実施形態に係る半導体設計支援装置200は、例えば、プロセッサモジュール210と、メモリモジュール220と、チップセット230と、ストレージデバイス240と、入出力装置250とを含んで構成される。プロセッサモジュール210、メモリモジュール220及びチップセット230は、実行装置260を構成する。
【0046】
プロセッサモジュール210は、例えば、プロセッサコア、マイクロコントローラ、デジタル信号プロセッサ及び/又はこれらの組み合わせを含むが、これらに限られるものではない。ここでは、「プロセッサコア」という用語は、メインプロセッサを意味するプロセッサやCPU、MPU等と同義のものとして扱われる。プロセッサモジュール210は、1次又はそれ以上のレベルのキャッシュ機構を含んでも良い。
【0047】
メモリモジュール220は、典型的には、揮発性メモリ(例えばRAM)、不揮発性メモリ(例えばROMやフラッシュメモリ等)及び/又はこれらの組み合わせからなり、プロセッサモジュール210の1次記憶装置である。メモリモジュール220は、例えば、
図3に示すように、2次記憶装置としてのストレージデバイス240からロードされた、設計支援プログラム221、該設計支援プログラム221の実行に供される各種のファイル222〜226、及び該設計支援プログラム221の実行により得られる設計結果ファイル227の少なくともいくつかを、ファイル全体又はその一部について、記憶する。
【0048】
設計支援プログラム221は、半導体設計支援装置200に、半導体集積回路モデル1のレイアウト設計支援を実現させるプログラムであり、CADプログラムやEDAプログラムが相当する。設計支援プログラム221は、例えば、1つのプログラムモジュールから構成されても良いし、複数のプログラムモジュールから構成されても良い。回路ブロック情報ファイル222は、半導体集積回路モデル1を構成する各回路ブロック20の物理的形状や電気的特性に関する情報を有するファイルである。回路ブロック配置情報ファイル223は、各回路ブロック20の配置に関する情報と、半導体集積回路モデル1を構成するための仮想的な全体領域(レイアウト領域L)における各領域10の位置に関する情報とを有するファイルである。設計支援プログラム221の実行において、回路ブロック情報ファイル222及び回路ブロック配置情報ファイル223が参照され、各回路ブロック20を配置すべき位置が決定される。導体線路情報ファイル224は、回路ブロック20間、及び回路ブロック20と半導体集積回路モデル1の外部との間を接続する導体線路30の電気的特性に関する情報を有するファイルである。設計支援プログラム221の実行において、導体線路情報ファイル224が参照され、導体線路30の配線位置が決定される。
【0049】
テクノロジファイル225は、レイアウト設計を行うために必要なルール(すなわち、デザインルール)に関する情報を有するファイルである。デザインルールに関する情報は、例えば、配線層の数や、導体線路30の配線間隔の最小値、回路ブロック20及び導体線路30の配線に必要なその他のルールなどである。半導体設計支援装置200は、テクノロジファイル225に示されるデザインルールに違反しないように、回路ブロック20及び導体線路30の配線を行う。なお、テクノロジファイル225は、典型的には、1つの電圧条件に対応する1つのデザインルールに関する情報を有する。
【0050】
電圧情報ファイル226は、配線層及び導体線路30に印加される電圧と導体線路30の配線間隔条件との関係を示す情報を有するファイルである。つまり、電圧情報ファイル226は、導体線路30が配線される配線層及び該導体線路30に印加される電圧に基づいて決定される該導体線路30の配線間隔条件を定義している。例えば、第1層目の配線層について、3種類の導体線路30のそれぞれに印加される電圧が電圧E1、E2及びE3(ただし、E1>E2>E3)である場合、導体線路30の配線間隔条件は、それぞれ、d1、d2及びd3となる(ただし、d1>d2>d3)。また、例えば、導体線路30に印加される電圧が電圧E1であり、該導体線路30が配線される層が1層目及び2層目である場合、該導体線路30の配線間隔条件は、それぞれ、d1及びd4となる(例えば、d1>d4)。
【0051】
図2に戻り、チップセット230は、プロセッサモジュール210、メモリモジュール220、ストレージデバイス240及び入出力装置250等を接続するバスとのブリッジや、半導体設計支援装置200を構成するために必要な他のコンポーネントを集積した回路からなる。チップセット230は、例えば、プロセッサモジュール210によって制御される。
【0052】
ストレージデバイス240は、典型的には、ハードディスクドライブ(HDD)や光学式ディスクドライブ、ソリッドステートデバイス(SSD)等からなる2次記憶装置である。入出力装置250は、各種のペリフェラルインターフェースであり、例えば、キーボードや、マウス、ディスプレイ、印刷装置などである。入出力装置250は、例えば、レイアウト設計時に、設計者(ユーザ)に対してインタラクティブな操作環境を提供する。
【0053】
以上のように構成される半導体設計支援装置200は、例えば、ユーザの指示に従い、プロセッサモジュール210の制御の下、設計支援プログラム221を実行し、適宜にインタラクティブな操作を介して、レイアウト設計を行い、半導体集積回路モデル1を作成する。
【0054】
図4は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計処理を説明するためのフローチャートである。かかる処理は、半導体設計支援装置200が、プロセッサモジュール210の制御の下、設計支援プログラム221を実行することにより、遂行される。
【0055】
同図において、半導体設計支援装置200は、まず、ユーザの操作に従い、設計支援プログラム221を実行し、メモリモジュール220上に各種の情報ファイル222〜226を準備する(S401)。例えば、各種の情報ファイル222〜226の少なくともいくつかは、ストレージデバイス240からロードされ、また、他のいくつかは、新たに生成される。
【0056】
次に、半導体設計支援装置200は、回路ブロック配置情報ファイル223に従って、レイアウト領域Lを分割し、複数の領域10を決定する(S402)。本例では、複数の領域10は、矩形状に形成されるが、例えば、他の多角形状に形成されても良い。また、複数の領域10は、その数が例えば最小値になるように、分割される。また、半導体設計支援装置200によって決定される領域10は、後述する電圧条件に対応するように決定される。この場合、領域10は、各電圧条件に対して1つの領域10が決定されても良いし、複数決定されても良い。
【0057】
半導体設計支援装置200は、回路ブロック情報ファイル222、回路ブロック配置情報ファイル223及びテクノロジファイル225に従って、決定した各領域10に、所望の各種の回路ブロック20を配置する(S403)。続いて、半導体設計支援装置200は、電圧情報ファイル226に従って、半導体集積回路モデル1に対する少なくとも2以上の電圧条件を決定する。具体的には、半導体設計支援装置200は、電圧情報ファイル226から、導体線路30に印加される電圧の値を抽出し、該抽出した電圧の値を電圧条件として決定する(S404)。或いは、電圧条件は、回路ブロック情報ファイル222から特定される回路ブロック20の動作電圧の値に基づいて決定されても良い。なお、半導体設計支援装置200は、電圧条件を決定するにあたって、各電圧条件に所定の優先順位を割り当てる。所定の優先順位は、半導体設計支援装置200が導体線路32の配線を行う領域10の優先順位である。半導体設計支援装置200は、例えば、第1の電圧条件に第1の優先順位を割り当て、第2の電圧条件に第2の優先順位を割り当て、第3の電圧条件に第3の優先順位を割り当てる。
【0058】
さらに、半導体設計支援装置200は、各配線層について、決定された電圧条件ごとに、電圧情報ファイル226に従って、グリッドGを決定する(S405)。グリッドGは、対象とする配線層及び所定の電圧条件に基づいて決定される導体線路30の配線間隔で、半導体集積回路モデル1の仮想的なレイアウト領域Lにわたり配された格子状の仮想線であって、導体線路30を配線可能な位置を示す。例えば、ある配線層については、配線間隔d1、d2及びd3の3種類のグリッドG1〜G3が決定される。
【0059】
半導体設計支援装置200は、該決定した各領域10とステップS405の処理で決定した各配線層のグリッドGとを対応付ける(S406)。これにより、各領域10には、該領域10に適合した配線間隔を有するグリッドGが配線層の数分対応付けられる。
【0060】
次に、半導体設計支援装置200は、各領域10について、各領域10に対応する電圧条件に割り当てられた所定の優先順位で、配線層ごとに、テクノロジファイル225に示されるデザインルールを適用し、対応するグリッドGに基づいて、導体線路32の配線を決定する(S407)。具体的には、半導体設計支援装置200は、テクノロジファイル225に示されるデザインルールに従って、例えば下位の配線層から、対応するグリッドGの仮想線に沿うように、領域10内の導体線路30の配線を決定する。なお、半導体設計支援装置200は、全て又はいくつかの領域10について、配線層ごとに、導体線路32の配線を決定しても良い。
【0061】
半導体設計支援装置200はさらに、領域間をわたる導体線路34、及び半導体集積回路モデル1の外部の端子に接続するための導体線路34の配線をそれぞれ決定する(S408)。この場合、半導体設計支援装置200は、導体線路34の始端又は終端の位置を含む領域10に対応するグリッドGに従って該導体線路34を配線する。また、半導体設計支援装置200は、例えば、ある一の領域10の電圧条件と異なる電圧条件の導体線路34を該一の領域10に配線する場合、該一の領域10に既に配線されている導体線路32から所定の配線間隔以上離して、該異なる電圧条件に対応する導体線路34を配線する。所定の配線間隔は、例えば、一の領域10の電圧条件に対応する配線間隔、及び異なる電圧条件に対応する配線間隔のうち広い方の間隔以上の間隔であれば良い。
【0062】
このようにして、本実施形態に係る半導体設計支援装置200は、仮想的なレイアウト領域Lにおいて領域10を決定した後、回路ブロック20を各領域10に配置し、各配線層について電圧条件ごとにグリッドGを決定するとともに、各領域10と各配線層のグリッドGとを対応付ける。半導体設計支援装置200は、さらに、各領域10に対応付けられたグリッドGに従い該領域10内の導体線路32を配線した後、各領域間にわたる導体線路34及び一の領域10の外部へ延伸する導体線路34を配線する。これにより、半導体設計支援装置200は、半導体集積回路モデル1の仮想的なレイアウト領域Lにわたって電圧条件ごとに配されたグリッドGを使用し、各配線層について、電圧条件に応じた各領域10内の導体線路30の配線を決定するため、さまざまな電圧条件に従う異なる配線間隔の導体線路30の錯綜の度合いが高い場合であっても、対応する電圧条件を満たした配線間隔で導体線路30を適切に配線することができる。また、半導体設計支援装置200は、半導体集積回路モデル1の仮想的なレイアウト領域Lにわたって電圧条件ごとに配されたグリッドGを使用するため、各配線層について、異なる配線間隔が適用される各領域10間にわたる導体線路34を適切に配線することができる。
【0063】
なお、本例では、半導体設計支援装置200は、回路ブロック配置情報ファイル223に従って、レイアウト領域Lを分割し、複数の領域10を決定した後に、該決定した領域10に回路ブロック20を配置するが、これに限られるものではない。例えば、半導体設計支援装置200は、回路ブロック20の配置を決定した後に、電圧情報ファイル226に従って電圧条件を決定し、該決定した電圧条件に従って、レイアウト領域Lを分割し、複数の領域10を決定しても良い。
【0064】
次に、上述した半導体設計支援装置200による半導体集積回路モデル1のレイアウト設計の例を、
図5乃至
図11を参照して、説明する。ここでは、説明の簡略のため、導体線路30を配線する配線層は、1層とする。
【0065】
図5は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における領域の決定を説明するための図である。半導体設計支援装置200は、回路ブロック配置情報ファイル223に従って、同図に示すような、第1の領域10a1及び10a2と、第2の領域10bと、及び第3の領域10cとを決定する。なお、第1の領域10a1及び10a2は第1の電圧条件に対応付けられ、第2の領域10bは、第2の電圧条件に対応付けられ、第3の領域10cは、第3の電圧条件に対応付けられる。
【0066】
図6は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における回路ブロックの配置を説明するための概念図である。同図は、複数の回路ブロック20が、回路ブロック配置情報ファイル223に従って、半導体集積回路モデル1の各領域10に配置された様子を示している。
【0067】
図7は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計におけるグリッドを説明するための概念図である。上述したように、半導体設計支援装置200は、電圧情報ファイル226に従って、各電圧条件に対応するグリッドGを決定する。同図(a)は、第1の電圧に関する第1の電圧条件に従ってレイアウト領域L1に間隔d1で構成されたグリッドG1を、実線で示している。また、同図(b)は、第2の電圧に関する第2の電圧条件に従ってレイアウト領域L2に間隔d2で構成されたグリッドを、破線で示している。さらに、同図(c)は、第3の電圧に関する第3の電圧条件に従ってレイアウト領域L3に間隔d3で構成されたグリッドを、1点鎖線で示している。ただし、第1の電圧>第2の電圧>第3の電圧とする。このように、電圧条件に示される電圧が大きい程、グリッドGによって示される格子の間隔は広くなる。
【0068】
図8は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図であり、具体的には、半導体集積回路モデル1の領域10a1における導体線路32の配線を説明している。半導体設計支援装置200は、第1の電圧条件に従う領域10a1に対して、第1の電圧条件に従うグリッドG1を対応付け、テクノロジファイル225のデザインルールを適用しながら、グリッドG1に従って、導体線路32を配線する。すなわち、本例では、グリッドG1が示す仮想線(すなわち、図中の実線)に沿って導体線路32が配線される。なお、グリッドG1は、レイアウト領域Lの全体に形成されるものであるが、同図中、領域10a1の外側部分の仮想線については省略している。
【0069】
図9及び
図10は、本発明の一実施形態に係る半導体設計支援装置によるレイアウト設計における導体線路の配線を説明するための図である。
図9に示すように、半導体設計支援装置200は、領域10a1及び10a2において、
図8で述べたようなグリッドG1に従って、導体線路32の配線を決定する。同様に、半導体設計支援装置200は、
図10に示すように、領域10b及び10cにおいて、グリッドG2及びG3に従って、導体線路32の配線を決定する。
【0070】
図11は、本発明の一実施形態に係る半導体設計支援装置による導体線路の配線を説明するための図である。より具体的には、
図11は、本発明の一実施形態に係る半導体設計支援装置200による導体線路30の配線に関して、領域10間をわたる導体線路34、及び半導体集積回路モデル1の外部の端子に接続するための導体線路34の配線を説明するための図である。
【0071】
半導体設計支援装置200は、各領域10内の導体線路32の配線を決定した後、領域10間をわたる導体線路34、及び半導体集積回路モデル1の外部の端子に接続するための導体線路34の配線を決定する。かかる導体線路34は、該導体線路34に対応する電圧条件とは異なる領域10に配線され得る。例えば、領域10a1と領域10a2とにわたる導体線路34は、その一部が領域10b及び10cに配線され得る。領域10a1と領域10a2とにわたる導体線路34が領域10bに配線される場合、該導体線路34は、第1の電圧条件に対応するグリッドG1における領域10bに対応する部分のグリッドに従ってその配線が決定される。つまり、導体線路34は、領域10bにおいては、同図に示すように、実線で示されるグリッドG1の仮想線に沿って配線される。また、このような導体線路34が領域10bに配線される場合、該導体線路34は、領域10bに既に配線されている導体線路32から所定の配線間隔を保つように配線される。本例では、グリッドG1の格子2つ分(すなわち、グリッドG1に従う配線間隔の2倍)の配線間隔が確保されている。
【0072】
上述したように、半導体設計支援装置200は、領域10間にわたる導体線路34を配線し、また、領域10の外部へ延伸する導体線路34を配線する。これによって、上述した
図1に示すような半導体集積回路モデル1が得られる。半導体設計支援装置200は、得られた半導体集積回路モデル1について検証を行い、デザインルールを満たしている場合には、レイアウト設計を終了し、設計結果ファイル227を例えば入出力装置250を介してユーザに提示し、また、入出力装置250やストレージデバイス240に出力する。
【0073】
以上のように、本実施形態に係る半導体設計支援装置200は、仮想的なレイアウト領域Lにおいて領域10を決定した後、回路ブロック20を各領域10に配置し、各配線層について電圧条件ごとにグリッドGを決定するとともに、各グリッドGと各領域10とを対応付ける。次に、半導体設計支援装置200は、電圧条件ごとに決定された該領域に対応付けられたグリッドGに従って導体線路32を配線した後、導体線路34に対応するグリッドGに従って、電圧条件が異なる各領域間にわたる該導体線路34及び一の領域10の外部へ延伸する導体線路34の配線を行う。これにより、半導体設計支援装置200は、さまざまな電圧条件による異なる配線間隔の導体線路30の錯綜の度合いが高い場合であっても、対応する電圧条件に応じた配線間隔で導体線路30の配線を決定することができる。また、半導体設計支援装置200は、半導体集積回路モデル1の仮想的なレイアウト領域Lにわたって電圧条件ごとに配されたグリッドGを分割した領域10に適用するため、各配線層について、異なる配線間隔が適用される各領域10間にわたる導体線路34の配線を決定することができる。
【0074】
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。
【0075】
例えば、本明細書に開示される方法においては、その結果に矛盾が生じない限り、ステップ、動作又は機能を並行して又は異なる順に実施しても良い。説明されたステップ、動作及び機能は、単なる例として提供されており、ステップ、動作及び機能のうちのいくつかは、発明の要旨を逸脱しない範囲で、省略でき、また、互いに結合させることで一つのものとしてもよく、また、他のステップ、動作又は機能を追加してもよい。
【0076】
また、本明細書では、さまざまな実施形態が開示されているが、一の実施形態における特定のフィーチャ(技術的事項)を適宜改良しながら、他の実施形態に追加し、又は該他の実施形態における特定のフィーチャと置換することができ、そのような形態も本発明の要旨に含まれる。
【産業上の利用可能性】
【0077】
本発明は、半導体集積回路の分野に広く利用することができる。
【符号の説明】
【0078】
1…半導体集積回路モデル
10…領域
20…回路ブロック
30…導体線路
32,34…導体線路
200…半導体設計支援装置
210…プロセッサモジュール
220…メモリモジュール
221…設計支援プログラム
222…回路ブロック情報ファイル
223…回路ブロック配置情報ファイル
224…導体線路情報ファイル
225…テクノロジファイル
226…電圧情報ファイル
227…設計結果ファイル
230…チップセット
240…ストレージデバイス
250…入出力装置
260…実行装置