(57)【要約】【課題】ＡｉｒＧａｐが適切に形成された半導体集積回路を設計する。【解決手段】ＲＴＬ記述の回路情報，ＡｉｒＧａｐ容積値の許容範囲を規定するＡｉｒＧａｐを含む制約設計ルール，ライブラリを入力し（ＳＴ１０１）、回路情報および設計ルールに基づいてネットリストを最適化し（ＳＴ１０２）、ネットリストに記述された各論理セルのＡｉｒＧａｐ容積値の総和を算出する（ＳＴ１０３）。ネットリストにおけるＡｉｒＧａｐ容積値の総和がＡｉｒＧａｐ制約に規定された許容範囲を外れている場合（ＡｉｒＧａｐ制約に違反する場合）には、ネットリストにおけるＡｉｒＧａｐ容積値の総和が許容範囲内に収まるように、ネットリストに記述された論理セルがＡｉｒＧａｐ変更される。【選択図】図１
2008130911.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路設計装置が、空洞部分（ＡｉｒＧａｐ）が形成される半導体集積回路を設計する方法であって、
前記半導体集積回路についての回路データと、前記半導体集積回路の設計に関する設計制約と、前記回路データにおけるＡｉｒＧａｐの生成に関するＡｉｒＧａｐ情報と、ＡｉｒＧａｐ容積値についての許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ情報に基づいて前記回路データにおいて生成されるＡｉｒＧａｐの容積値の総和を算出する算出ステップと、
前記算出ステップにおいて算出されたＡｉｒＧａｐ容積値の総和が前記ＡｉｒＧａｐ容積制約に規定された許容範囲を外れていることを検出する検出ステップと、
前記検出ステップにおいて前記ＡｉｒＧａｐ容積値の総和が前記許容範囲を外れていることが検出されると、前記設計制約を満足し且つ当該ＡｉｒＧａｐ容積値の総和が当該許容範囲内に収まるように、前記回路データを最適化する最適化ステップとを備える
ことを特徴とする半導体集積回路設計方法。
【請求項２】
請求項１において、
前記回路データは、複数の論理セルが記述されたネットリストであり、
前記ＡｉｒＧａｐ情報は、前記ネットリストの生成に使用される論理セルの各々において生成されるＡｉｒＧａｐの容積値が記述されたセル情報を含み、
前記算出ステップでは、前記セル情報に基づいて前記ネットリストに記述された論理セルの各々についてのＡｉｒＧａｐ容積値を求め、当該ＡｉｒＧａｐ容積値の総和を算出し、
前記最適化ステップでは、前記設計制約を満足し且つ当該ＡｉｒＧａｐ容積値の総和が当該許容範囲内に収まるように、前記ネットリストに記述された論理セルの何れかまたは全てを当該論理セルとは異なるＡｉｒＧａｐ容積値を有する論理セルに変更する
ことを特徴とする半導体集積回路設計方法。
【請求項３】
請求項１において、
前記回路データは、複数の論理セルが配置されたレイアウトデータであり、
前記ＡｉｒＧａｐ情報は、前記レイアウトデータの生成に使用される論理セルの各々において生成されるＡｉｒＧａｐの容積値が記述されたセル情報を含み、
前記算出ステップでは、前記セル情報に基づいて前記レイアウトデータに記述された論理セルの各々についてのＡｉｒＧａｐ容積値を求め、当該レイアウトデータの領域を分割して得られる複数の検査領域の各々について当該検査領域におけるＡｉｒＧａｐ容積値の総和を算出し、
前記検出ステップでは、前記複数の検査領域のうち前記算出ステップにおいて算出されたＡｉｒＧａｐ容積値の総和が前記ＡｉｒＧａｐ容積制約に規定された許容範囲を外れている検査領域を検出し、
前記最適化ステップでは、前記設計制約を満足し且つ前記検出ステップにおいて検出された検査領域におけるＡｉｒＧａｐ容積値の総和が前記許容範囲内に収まるように、前記レイアウトデータにおける論理セルの配置を最適化する
ことを特徴とする半導体集積回路設計方法。
【請求項４】
請求項１において、
前記回路データは、複数の論理セルが配置され且つ当該論理セル同士が配線で接続されたレイアウトデータであり、
前記ＡｉｒＧａｐ情報は、前記レイアウトデータの生成に使用される論理セルの各々において生成されるＡｉｒＧａｐの容積値が記述されたセル情報と、前記レイアウトデータにおいてＡｉｒＧａｐが生成される条件（ＡｉｒＧａｐ生成条件）を示す生成条件情報と、前記レイアウトデータにおいてＡｉｒＧａｐの容積値を算出するために用いられる方法（ＡｉｒＧａｐ算出方法）を示す算出方法情報とを含み、
前記算出ステップでは、前記レイアウトデータのうち前記ＡｉｒＧａｐ生成条件が成立する箇所を検出し、前記ＡｉｒＧａｐ算出方法に従って当該検出箇所におけるＡｉｒＧａｐ容積値を求めるとともに、前記セル情報に基づいて当該レイアウトデータに記述された論理セルの各々についてのＡｉｒＧａｐ容積値を求め、当該レイアウトデータの領域を分割して得られる複数の検査領域の各々について当該検査領域におけるＡｉｒＧａｐ容積値の総和を算出し、
前記検出ステップでは、前記複数の検査領域のうち前記算出ステップにおいて算出されたＡｉｒＧａｐ容積値の総和が前記ＡｉｒＧａｐ容積制約に規定された許容範囲を外れている検査領域を検出し、
前記最適化ステップでは、前記設計制約を満足し且つ前記検出ステップにおいて検出された検査領域におけるＡｉｒＧａｐ容積値の総和が前記許容範囲内に収まるように、前記レイアウトデータにおける論理セルの配置および配線接続のうち少なくとも一方を最適化する
ことを特徴とする半導体集積回路設計方法。
【請求項５】
半導体集積回路設計支援装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援する方法であって、
論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、前記回路データにおけるＡｉｒＧａｐ生成箇所を示すＡｉｒＧａｐ生成箇所情報と、前記回路データにおいてＡｉｒＧａｐの生成を禁止する領域を規定するＡｉｒＧａｐ生成禁止制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ生成箇所情報に示されたＡｉｒＧａｐ生成箇所の中から前記ＡｉｒＧａｐ生成禁止制約に規定された領域に位置するＡｉｒＧａｐ生成箇所を検出する検出ステップと、
前記検出ステップにおいて検出されたＡｉｒＧａｐ生成箇所がエラー箇所として示された情報を出力するエラー箇所出力ステップとを備える
ことを特徴とする半導体集積回路設計支援方法。
【請求項６】
請求項５において、
前記ＡｉｒＧａｐ生成箇所情報に示されたＡｉｒＧａｐ生成箇所を表示するＡｉｒＧａｐ表示ステップをさらに備え、
前記エラー箇所出力ステップでは、前記検出ステップにおいて検出されたＡｉｒＧａｐ生成箇所をエラー箇所として表示する
ことを特徴とする半導体集積回路設計支援方法。
【請求項７】
請求項５または請求項６において、
前記入力ステップは、
前記回路データと、前記回路データにおいてＡｉｒＧａｐが生成される条件（ＡｉｒＧａｐ生成条件）を示す生成条件情報と、前記ＡｉｒＧａｐ生成禁止制約とを入力する前段階入力ステップと、
前記回路データのうち前記ＡｉｒＧａｐ生成条件が成立する箇所を検出し、当該検出箇所を示す情報を前記ＡｉｒＧａｐ生成箇所情報とするＡｉｒＧａｐ検出ステップとを含む
ことを特徴とする半導体集積回路設計支援方法。
【請求項８】
半導体集積回路設計支援装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援する方法であって、
論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、前記回路データにおけるＡｉｒＧａｐ生成箇所およびＡｉｒＧａｐ容積値を示すＡｉｒＧａｐ情報と、ＡｉｒＧａｐの容積値の許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ情報に基づいて前記回路データの領域を分割して得られる複数の検査領域の各々について当該検査領域におけるＡｉｒＧａｐ容積値の総和を算出する算出ステップと、
前記複数の検査領域のうち前記算出ステップによって算出されたＡｉｒＧａｐ容積値が前記ＡｉｒＧａｐ容量制約に規定されたＡｉｒＧａｐ容積の許容範囲を外れている検査領域を検出する検出ステップと、
前記検出ステップにおいて検出された検査領域がエラー領域として示されたエラー領域情報を出力するエラー領域出力ステップとを備える
ことを特徴とする半導体集積回路設計支援方法。
【請求項９】
請求項８において、
前記ＡｉｒＧａｐ情報に示されたＡｉｒＧａｐ箇所を表示するＡｉｒＧａｐ表示ステップをさらに備え、
前記エラー領域出力ステップでは、前記検出ステップにおいて検出された検査領域をエラー領域として表示する
ことを特徴とする半導体集積回路設計支援方法。
【請求項１０】
請求項７または請求項８において、
前記入力ステップは、
前記回路データと、前記回路データにおいてＡｉｒＧａｐが生成される条件（ＡｉｒＧａｐ生成条件）を示す生成条件情報と、前記回路データにおいてＡｉｒＧａｐ容積値を算出するために用いられる方法（ＡｉｒＧａｐ算出方法）を示す算出方法情報と、前記ＡｉｒＧａｐ生成禁止制約とを入力する前段階入力ステップと、
前記回路データのうち前記ＡｉｒＧａｐ生成条件が成立する箇所を検出し、前記ＡｉｒＧａｐ算出方法に従って当該検出箇所におけるＡｉｒＧａｐ容積値を求め、当該箇所および当該ＡｉｒＧａｐ容積値を示す情報を前記ＡｉｒＧａｐ生成箇所情報とするＡｉｒＧａｐ検出ステップとを含む
ことを特徴とする半導体集積回路設計支援方法。
【請求項１１】
配線寄生容量算出装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計工程において配線寄生容量を求める方法であって、
前記半導体集積回路についての回路データであり論理セルが配置され且つ当該論理セル同士が配線で接続されたレイアウトデータと、前記回路データにおけるＡｉｒＧａｐの生成箇所を示すＡｉｒＧａｐ情報と、配線間にＡｉｒＧａｐが生成された状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ有り配線構造ファイルと、配線間にＡｉｒＧａｐが生成されていない状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ無し配線構造ファイルとを入力する入力ステップと、
前記レイアウトデータに記述された配線のうちいずれか１つを選択する選択ステップと、
前記選択ステップにおいて選択された配線と前記レイアウトデータ上において当該配線と隣接する配線との間の領域にＡｉｒＧａｐが生成されるか否かを前記ＡｉｒＧａｐ情報に基づいて判断する判断ステップと、
前記判断ステップにおいて前記配線間の領域にＡｉｒＧａｐが生成されると判断されると、前記ＡｉｒＧａｐ有り配線構造ファイルを用いて配線寄生容量を求める一方、前記判断ステップにおいて前記配線間の領域にＡｉｒＧａｐが生成されないと判断されると、前記ＡｉｒＧａｐ無し配線構造ファイルを用いて配線寄生容量を求める配線寄生容量算出ステップとを備える
ことを特徴とする配線寄生容量算出方法。
【請求項１２】
半導体集積回路設計装置に、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路を設計させるプログラムであって、
前記半導体集積回路についての回路データと、前記半導体集積回路の設計に関する制約を規定する設計制約と、前記回路データにおけるＡｉｒＧａｐの生成に関するＡｉｒＧａｐ情報と、ＡｉｒＧａｐ容積値についての許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ情報に基づいて前記回路データにおいて生成されるＡｉｒＧａｐの容積値の総和を算出する算出ステップと、
前記算出ステップにおいて算出されたＡｉｒＧａｐ容積値の総和が前記ＡｉｒＧａｐ容積制約に規定された許容範囲を外れていることを検出する検出ステップと、
前記検出ステップにおいて前記ＡｉｒＧａｐ容積値の総和が前記許容範囲を外れていることが検出されると、前記設計制約を満足し且つ当該ＡｉｒＧａｐ容積値の総和が当該許容範囲内に収まるように、前記回路データを最適化する最適化ステップとを前記半導体集積回路設計装置に実行させる
ことを特徴とする半導体集積回路設計プログラム。
【請求項１３】
半導体集積回路設計支援装置に、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援させるプログラムであって、
論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、前記回路データにおけるＡｉｒＧａｐ生成箇所を示すＡｉｒＧａｐ生成箇所情報と、前記回路データにおいてＡｉｒＧａｐの生成を禁止する領域を規定するＡｉｒＧａｐ生成禁止制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ生成箇所情報に示されたＡｉｒＧａｐ生成箇所の中から前記ＡｉｒＧａｐ生成禁止制約に規定された領域に位置するＡｉｒＧａｐ生成箇所を検出する検出ステップと、
前記検出ステップにおいて検出されたＡｉｒＧａｐ生成箇所がエラー箇所として示された情報を出力するエラー箇所出力ステップとを前記半導体集積回路設計支援装置に実行させる
ことを特徴とする半導体集積回路設計支援プログラム。
【請求項１４】
半導体集積回路設計支援装置に、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援させるプログラムであって、
論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、前記回路データにおけるＡｉｒＧａｐ生成箇所およびＡｉｒＧａｐ容積値を示すＡｉｒＧａｐ情報と、ＡｉｒＧａｐの容積値の許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、
前記ＡｉｒＧａｐ情報に基づいて前記回路データの領域を分割して得られる複数の検査領域の各々について当該検査領域におけるＡｉｒＧａｐ容積値の総和を算出する算出ステップと、
前記複数の検査領域のうち前記算出ステップによって算出されたＡｉｒＧａｐ容積値が前記ＡｉｒＧａｐ容量制約に規定されたＡｉｒＧａｐ容積の許容範囲を外れている検査領域を検出する検出ステップと、
前記検出ステップにおいて検出された検査領域がエラー領域として示されたエラー領域情報を出力するエラー領域出力ステップとを前記半導体集積回路設計支援装置に実行させる
ことを特徴とする半導体集積回路設計支援プログラム。
【請求項１５】
配線寄生容量算出装置に、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計工程において配線寄生容量を算出させるプログラムであって、
前記半導体集積回路についての回路データであり論理セルが配置され且つ当該論理セル同士が配線で接続されたレイアウトデータと、前記回路データにおけるＡｉｒＧａｐの生成箇所を示すＡｉｒＧａｐ情報と、配線間にＡｉｒＧａｐが生成された状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ有り配線構造ファイルと、配線間にＡｉｒＧａｐが生成されていない状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ無し配線構造ファイルとを入力する入力ステップと、
前記レイアウトデータに記述された配線のうちいずれか１つを選択する選択ステップと、
前記選択ステップにおいて選択された配線と前記レイアウトデータ上において当該配線と隣接する配線との間の領域にＡｉｒＧａｐが生成されるか否かを前記ＡｉｒＧａｐ情報に基づいて判断する判断ステップと、
前記判断ステップにおいて前記配線間の領域にＡｉｒＧａｐが生成されると判断されると、前記ＡｉｒＧａｐ有り配線構造ファイルを用いて配線寄生容量を求める一方、前記判断ステップにおいて前記配線間の領域にＡｉｒＧａｐが生成されないと判断されると、前記ＡｉｒＧａｐ無し配線構造ファイルを用いて配線寄生容量を求める配線寄生容量算出ステップとを前記配線寄生容量算出装置に実行させる
ことを特徴とする配線寄生容量算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計工程に関する技術であり、さらに詳しくは、ＡｉｒＧａｐが形成される半導体集積回路の設計，設計支援，配線寄生容量の算出に関する。
【背景技術】
【０００２】
半導体プロセスの微細化に伴い、半導体集積回路において信号配線間の間隔が狭くなり、それに起因した信号配線間の配線寄生容量が大きくなっている。そのため、配線遅延やクロストークノイズの影響が無視できなくなり、設計期間の長期化、性能劣化を起こす要因となっている。
【０００３】
信号配線間の配線寄生容量の削減のため、信号配線間に空洞箇所（ＡｉｒＧａｐ）を形成するＡｉｒＧａｐ製造技術がある。ＡｉｒＧａｐは、配線間の絶縁膜中に空洞を設ける構造である。これにより、従来の絶縁膜に比べ誘電率が低く、信号配線間の配線寄生容量を低減することが可能となる。
【０００４】
ＡｉｒＧａｐの製造方法は、特公平７−１１４２３６号公報（特許文献１）や、特開平７−３２６６７０号公報（特許文献）に開示されている。これらの特許文献には、ＣＶＤ法やスパッタリング法を利用し、半導体集積回路の配線間の絶縁膜中の一部に空洞部分を設ける方法が記載されている。また、ＡｉｒＧａｐの生成箇所や容積は、配線の間隔によって制限されている。つまり、配線間隔が広い配線間には、ＡｉｒＧａｐを生成することができない。また、特許第３４８１１２号公報（特許文献３）には、配線間隔を操作することによって、ＡｉｒＧａｐを生成させる技術も提案されている。
【特許文献１】特公平７−１１４２３６号公報
【特許文献２】特開平７−３２６６７０号公報
【特許文献３】特許第３４８１１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
半導体集積装置における配線間の配線寄生容量を削減するためには、多くのＡｉｒＧａｐが生成されることが望ましい。しかしながら、半導体集積回路内にあまりに多くのＡｉｒＧａｐが存在すると、熱的・機械的応力への耐性が悪化したり、ＡｉｒＧａｐの生成箇所やＡｉｒＧａｐの容積がチップ内で偏っているとチップ内で段差が生じたりするおそれがある。
【０００６】
一方、微細化・大規模化された半導体集積回路を設計する場合、ＡｉｒＧａｐのみでなく、遅延や、面積、製造ルール等の多種の制約が満足されるように設計する必要がある。これらの制約は、半導体集積回路の設計工程全般にわたって考慮されなければならない。よって、ＡｉｒＧａｐに対する制約も半導体集積回路の設計全般の工程において、考慮することが必要となっている。
【０００７】
しかしながら、半導体集積回路の製造工程においてＡｉｒＧａｐを生成する方法が開示されているだけで、論理合成工程やレイアウト工程等、半導体集積回路の設計工程においてＡｉｒＧａｐの形成について考慮された設計手法は開示されていない。
【０００８】
そこで、本発明は、半導体集積回路の設計工程においてＡｉｒＧａｐの形成を制御可能にすることを目的とする。さらに詳しくは、半導体集積回路にＡｉｒＧａｐが適切に形成されるように、半導体集積回路を設計すること、または、半導体集積回路の設計を支援することを目的とする。また、半導体集積回路の設計工程において配線寄生容量を精度良く求めることを目的とする。
【課題を解決するための手段】
【０００９】
この発明の１つの局面に従うと、半導体集積回路設計方法では、半導体集積回路設計装置が、空洞部分（ＡｉｒＧａｐ）が形成される半導体集積回路を設計する。半導体集積回路設計方法は、上記半導体集積回路についての回路データと、上記半導体集積回路の設計に関する設計制約と、上記回路データにおけるＡｉｒＧａｐの生成に関するＡｉｒＧａｐ情報と、ＡｉｒＧａｐ容積値についての許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、上記ＡｉｒＧａｐ情報に基づいて上記回路データにおいて生成されるＡｉｒＧａｐの容積値の総和を算出する算出ステップと、上記算出ステップにおいて算出されたＡｉｒＧａｐ容積値の総和が上記ＡｉｒＧａｐ容積制約に規定された許容範囲を外れていることを検出する検出ステップと、上記検出ステップにおいて上記ＡｉｒＧａｐ容積値の総和が上記許容範囲を外れていることが検出されると、上記設計制約を満足し且つ当該ＡｉｒＧａｐ容積値の総和が当該許容範囲内に収まるように、上記回路データを最適化する最適化ステップとを備える。
【００１０】
上記半導体集積回路設計方法では、半導体集積回路の設計工程においてＡｉｒＧａｐ容積値を制限することができ、ＡｉｒＧａｐが適切に形成された半導体集積回路を設計することができる。
【００１１】
この発明のもう１つの局面に従うと、半導体集積回路設計支援方法では、半導体集積回路設計支援装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援する。半導体集積回路設計支援方法は、論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、上記回路データにおけるＡｉｒＧａｐ生成箇所を示すＡｉｒＧａｐ生成箇所情報と、上記回路データにおいてＡｉｒＧａｐの生成を禁止する領域を規定するＡｉｒＧａｐ生成禁止制約とを入力する入力ステップと、上記ＡｉｒＧａｐ生成箇所情報に示されたＡｉｒＧａｐ生成箇所の中から上記ＡｉｒＧａｐ生成禁止制約に規定された領域に位置するＡｉｒＧａｐ生成箇所を検出する検出ステップと、上記検出ステップにおいて検出されたＡｉｒＧａｐ生成箇所がエラー箇所として示された情報を出力するエラー箇所出力ステップとを備える。
【００１２】
上記半導体集積回路設計支援方法では、半導体集積回路の設計工程においてＡｉｒＧａｐ生成箇所の適否を検査することができ、不適切なＡｉｒＧａｐ生成箇所を把握することができる。
【００１３】
この発明のさらにもう１つの局面に従うと、半導体集積回路設計支援装置では、半導体集積回路設計支援装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計を支援する。半導体集積回路設計支援装置は、論理セルが配置され且つ当該論理セル同士が配線で接続された回路データと、上記回路データにおけるＡｉｒＧａｐ生成箇所およびＡｉｒＧａｐ容積値を示すＡｉｒＧａｐ情報と、ＡｉｒＧａｐの容積値の許容範囲を規定するＡｉｒＧａｐ容積制約とを入力する入力ステップと、上記ＡｉｒＧａｐ情報に基づいて上記回路データの領域を分割して得られる複数の検査領域の各々について当該検査領域におけるＡｉｒＧａｐ容積値の総和を算出する算出ステップと、上記複数の検査領域のうち上記算出ステップによって算出されたＡｉｒＧａｐ容積値が上記ＡｉｒＧａｐ容量制約に規定されたＡｉｒＧａｐ容積の許容範囲を外れている検査領域を検出する検出ステップと、上記検出ステップにおいて検出された検査領域がエラー領域として示されたエラー領域情報を出力するエラー領域出力ステップとを備える。
【００１４】
上記半導体集積回路設計支援方法では、半導体集積回路の設計工程においてＡｉｒＧａｐ容量値の適否を検査することができ、ＡｉｒＧａｐ容積値が適切でない箇所を把握することができる。
【００１５】
この発明のさらにもう１つの局面に従うと、配線寄生容量算出方法では、配線寄生容量算出装置が、空洞部分（ＡｉｒＧａｐ）が形成された半導体集積回路の設計工程において配線寄生容量を求める。配線寄生容量算出方法は、上記半導体集積回路についての回路データであり論理セルが配置され且つ当該論理セル同士が配線で接続されたレイアウトデータと、上記回路データにおけるＡｉｒＧａｐの生成箇所を示すＡｉｒＧａｐ情報と、配線間にＡｉｒＧａｐが生成された状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ有り配線構造ファイルと、配線間にＡｉｒＧａｐが生成されていない状態で配線寄生容量を算出したときの当該配線寄生容量の容量値を示すＡｉｒＧａｐ無し配線構造ファイルとを入力する入力ステップと、上記レイアウトデータに記述された配線のうちいずれか１つを選択する選択ステップと、上記選択ステップにおいて選択された配線と上記レイアウトデータ上において当該配線と隣接する配線との間の領域にＡｉｒＧａｐが生成されるか否かを上記ＡｉｒＧａｐ情報に基づいて判断する判断ステップと、上記判断ステップにおいて上記配線間の領域にＡｉｒＧａｐが生成されると判断されると、上記ＡｉｒＧａｐ有り配線構造ファイルを用いて配線寄生容量を求める一方、上記判断ステップにおいて上記配線間の領域にＡｉｒＧａｐが生成されないと判断されると、上記ＡｉｒＧａｐ無し配線構造ファイルを用いて配線寄生容量を求める配線寄生容量算出ステップとを備える。
【００１６】
上記配線寄生容量算出方法では、ＡｉｒＧａｐの生成の有無に応じて配線寄生容量を求めることができ、半導体集積回路の設計工程において配線寄生容量の容量値を精度良く算出することができる。
【発明の効果】
【００１７】
以上のように、半導体集積回路の設計工程においてＡｉｒＧａｐ容積値を制限することができ、ＡｉｒＧａｐが適切に形成された半導体集積回路を設計することができる。
【００１８】
また、半導体集積回路の設計工程においてＡｉｒＧａｐ生成箇所の適否を検査することができ、不適切なＡｉｒＧａｐ生成箇所を把握することができる。
【００１９】
また、ＡｉｒＧａｐの生成の有無に応じて配線寄生容量を求めることができ、半導体集積回路の設計工程において配線寄生容量の容量値を精度良く算出することができる。
【発明を実施するための最良の形態】
【００２０】
以下、この発明の実施の形態を図面を参照して詳しく説明する。なお、図中同一または相当部分には同一の符号を付しその説明は繰り返さない。
【００２１】
（第１の実施形態）
図１は、この発明の第１の実施形態による半導体集積回路設計方法についてのフローチャートである。この半導体集積回路設計方法では、ＲＴＬ記述の回路情報および設計制約に基づいてネットリストの生成およびネットリストの最適化が実行されるとともに、ネットリストにおけるＡｉｒＧａｐ容積値の最適化が実行される。また、この半導体集積回路設計方法は、例えば、入出力部，ＣＰＵ，データベース，ディスプレイ等を備えた装置（例えば、半導体集積回路設計装置）、あるいは、上記装置を機能させるプログラムによって実現される。なお、後述する他の実施形態についても同様である。
【００２２】
＜入力情報＞
半導体集積回路設計装置は、ＲＴＬ記述の回路情報と、設計ルールと、ライブラリとを入力する。設計ルールには、半導体集積回路についての一般的な制約（遅延制約，消費電力制約等）である設計制約と、ＡｉｒＧａｐ制約とが記述されている。ライブラリには、セル情報が記述されている。
【００２３】
〔ＡｉｒＧａｐ制約〕
ＡｉｒＧａｐ制約は、ＡｉｒＧａｐ容積値の総和の許容範囲を規定する情報である。ＡｉｒＧａｐ制約には、例えば、図２のように、セル面積の総和と、それに対応するＡｉｒＧａｐ容積値の総和の許容範囲（上限値および下限値）とが規定されている。
【００２４】
〔セル情報〕
図３Ａのように、セル情報には、論理セルの各々についてのセル面積と、その論理セル内において生成されるＡｉｒＧａｐの容積とが規定されている。ＡｉｒＧａｐ容積は、例えば、図３Ｂのように、数値（容積値）として定義される。
【００２５】
＜動作＞
次に、図１を参照しつつ、本実施形態による半導体集積回路設計方法について説明する。
【００２６】
〔ステップＳＴ１０１〕
まず、ＲＴＬ記述の回路情報と、設計制約およびＡｉｒＧａｐ制約が記述された設計ルールと、セル情報が記述されたライブラリとを読み込む。
【００２７】
〔ステップＳＴ１０２〕
次に、回路情報に基づいて論理合成を行う。また、設計ルールに記述された設計制約に違反しないように、ネットリストを最適化する。すなわち、設計制約に違反している場合には、その違反が解消されるようにネットリストに記述された論理セルを別の論理セルに変更する。例えば、ネットリストにおける遅延量が遅延制約に規定された遅延量の許容値よりも大きい場合、ネットリストに記述された論理セルのいずれかをその論理セルよりも遅延量が少ない論理セルに変更する。
【００２８】
〔ステップＳＴ１０３〕
次に、ネットリストに記述された論理セルの各々に対して、その論理セルのセル面積をライブラリに記述されたセル情報の中から検出し、検出したセル面積の総和を求める。このようにして、ネットリストにおけるセル面積の総和を算出する。
【００２９】
〔ステップＳＴ１０４〕
次に、ネットリストに記述された論理セルの各々に対して、その論理セルのＡｉｒＧａｐ容積値をライブラリに記述されたセル情報の中から検出し、検出したＡｉｒＧａｐ容積値の総和を算出する。このようにして、ネットリストにおけるＡｉｒＧａｐ容積値の総和を算出する。
【００３０】
〔ステップＳＴ１０５〕
次に、設計ルールに記述されたＡｉｒＧａｐ制約の中からステップＳＴ１０３において算出されたセル面積の総和に対応するＡｉｒＧａｐ容積値の許容範囲を検出する。次に、ステップＳＴ１０４において算出されたＡｉｒＧａｐ容積値の総和が許容範囲内に収まるか否かを判断する。すなわち、ステップＳＴ１０２において最適化されたネットリストがＡｉｒＧａｐ制約に違反しているか否かを判断する。ＡｉｒＧａｐ制約に違反している場合にはステップＳＴ１０６へ進み、ＡｉｒＧａｐ制約に違反していない場合にはステップＳＴ１０７へ進む。
【００３１】
〔ステップＳＴ１０６〕
ＡｉｒＧａｐ制約に違反している場合、ＡｉｒＧａｐ容積値の総和が許容範囲内に収まるように、ネットリストに記述された論理セルのいずれか（もしくは、すべて）を、その論理セルとはＡｉｒＧａｐ容積値が異なる論理セルに変更する。例えば、ＡｉｒＧａｐ容積値の総和が許容範囲の上限値を上回っている場合には、ネットリストに記述された論理セルよりもＡｉｒＧａｐ容積値が小さい論理セルが選択され、ＡｉｒＧａｐ容積値の総和が許容範囲の下限値を下回っている場合には、ネットリストに記述された論理セルよりもＡｉｒＧａｐ容積値が大きい論理セルが選択される。なお、論理セルの変更は、ネットリストが同一論理になる範囲内で行われる。また、このステップにおいて、ステップＳＴ１０２における処理（設計制約に基づくネットリストの最適化）も併せて実行されることが好ましい。次に、論理セルの変更が完了すると、ステップＳＴ１０５へ進む。
【００３２】
〔ステップＳＴ１０７〕
一方、ステップＳＴ１０５においてＡｉｒＧａｐ制約に違反していないと判断された場合、ネットリストを出力する。
【００３３】
＜具体例＞
次に、図４Ａ，図４Ｂを参照しつつ、図１に示した半導体集積回路設計方法について具体的に説明する。
【００３４】
まず、設計制約に基づくネットリストの最適化（ステップＳＴ１０２）の結果、図４Ａのように、論理セルＦＦ１，ＢＵＦ４，ＩＮＶ２，ＦＦ２がネットリストに記述されたとする。
【００３５】
次に、ステップＳＴ１０３，１０４における処理を経て、ネットリストにおけるセル面積の総和とＡｉｒＧａｐ容積値の総和とが算出される。この場合、セル面積の総和は「９」であり、ＡｉｒＧａｐ容積値の総和は「１．１」である。
【００３６】
次に、ステップＳＴ１０５において、ＡｉｒＧａｐ制約の中からセル面積の総和「９」に対応するＡｉｒＧａｐ容積値の総和の許容範囲「０．５〜１．０」が検出される。ここで、ＡｉｒＧａｐ容積値の総和は「１．１」であり許容範囲の上限値「１．０」を上回っているので、ＡｉｒＧａｐ制約に違反していることになる。
【００３７】
そこで、図４Ｂのように、ステップＳＴ１０６において、ＡｉｒＧａｐ容積値の総和を小さくするために、ＡｉｒＧａｐ容積値が「０．５」である論理セルＢＵＦ４は、ＡｉｒＧａｐ容積値が「０．２」である論理セルＢＵＦ２に変更される。これにより、セル面積の総和が「８」となりＡｉｒＧａｐ容積の総和が「０．８」となる。このように、ネットリストに記述される論理セルが変更され、ＡｉｒＧａｐ制約違反が解消される。
【００３８】
＜効果＞
以上のように、半導体集積回路の設計工程においてＡｉｒＧａｐ容積値を制限することができ、ＡｉｒＧａｐが適切に形成された半導体集積回路を設計することができる。
【００３９】
さらに、論理合成工程においてＡｉｒＧａｐ容積制約を設けることにより、レイアウト設計工程の前段階でＡｉｒＧａｐ容積値を検査することができ、論理合成工程でＡｉｒＧａｐ容積値を修正することができるので、設計工程に要する期間を短縮することができる。
【００４０】
（第２の実施形態）
図５は、この発明の第２の実施形態による半導体集積回路設計方法についてのフローチャートを示す。この半導体集積回路設計方法では、ネットリストおよび設計制約に基づいてレイアウトデータの生成とレイアウトデータにおける論理セルの配置の最適化および配線の接続の最適化とが実行されるとともに、レイアウトデータにおけるＡｉｒＧａｐ容積値の最適化が実行される。なお、この半導体集積回路設計方法では、レイアウトデータ上のチップ領域を分割して複数の検査領域を構成し、複数の検査領域の各々についてＡｉｒＧａｐ容積値の適否が検査される。
【００４１】
＜入力情報＞
半導体集積回路設計装置は、論理合成工程を経て生成されたネットリスト，設計ルール，およびライブラリを入力する。
【００４２】
設計ルールには、半導体集積回路についての一般的な制約（遅延制約，消費電力制約等）を規定する設計制約と、ＡｉｒＧａｐ生成条件と、ＡｉｒＧａｐ算出方法と、ＡｉｒＧａｐ制約とが記述されている。また、設計制約とは、タイミング制約や、配線のデザインルールなど、一般の半導体集積回路を設計する際の制約である。ライブラリには、セル情報が記述されている。
【００４３】
〔ＡｉｒＧａｐ生成条件〕
ＡｉｒＧａｐ生成条件は、ＡｉｒＧａｐが生成される条件を定義する情報である。すなわち、ＡｉｒＧａｐ生成条件が成立する箇所には、ＡｉｒＧａｐが生成される。ＡｉｒＧａｐ生成条件では、例えば、図６Ａのように、対向間隔（配線と配線との間の距離）と対向長（対向間隔が同一である区間の長さ）とで、ＡｉｒＧａｐ生成の有無が定義されている。この場合、ＡｉｒＧａｐ生成条件は、半導体集積回路設計装置のＣＰＵによって処理できるように、図６Ｂのように記述されいても良い。
【００４４】
〔ＡｉｒＧａｐ算出方法〕
ＡｉｒＧａｐ算出方法は、ＡｉｒＧａｐの容積値を算出するための定義を示す情報である。ＡｉｒＧａｐ算出方法には、例えば、図７Ａのように、対向間隔と対向長とで、ＡｉｒＧａｐ容積値が定義されている。この場合、ＡｉｒＧａｐ生成条件は、半導体集積回路設計装置のＣＰＵによって処理できるように、図７Ｂのように記述されていても良い。
【００４５】
〔ＡｉｒＧａｐ制約〕
ＡｉｒＧａｐ制約は、ＡｉｒＧａｐ容積値の総和の許容範囲を規定する情報である。ＡｉｒＧａｐ制約には、例えば、図８Ａのように、ＡｉｒＧａｐ制約の違反が検査される検査領域の領域サイズと、その領域サイズに対応するＡｉｒＧａｐ容積値の総和の許容範囲（上限値および下限値）とが規定されている。また、ＡｉｒＧａｐ制約は、図８Ｂのように、検査領域の領域サイズとその領域サイズに対応するＡｉｒＧａｐ容積値の総和の許容範囲との対応関係が、配線レイヤ毎に記述されていても良い。
【００４６】
〔セル情報〕
セル情報には、論理セルの各々についてのＡｉｒＧａｐ容積値が規定されている。セル情報は、例えば、図３Ａ，図３Ｂのように、論理セルの各々についてのＡｉｒＧａｐ容積値が数値として記述されていても良いし、図９のように、論理セル内においてＡｉｒＧａｐが生成される箇所（ＡｉｒＧａｐ生成箇所）とＡｉｒＧａｐ容積値とが物理形状として記述されていても良い。なお、以下の本実施形態の説明では、図３Ａ，図３ＢのようにＡｉｒＧａｐ容積値が数値化されているセル情報を用いて処理する例について説明する。
【００４７】
＜動作＞
次に、図５を参照しつつ、本実施形態による半導体集積回路設計方法について説明する。なお、ここでは、設計ルールのうちＡｉｒＧａｐ生成条件およびＡｉｒＧａｐ算出方法は、テクノロジに記述されているものとする。
【００４８】
〔ステップＳＴ２０１〕
まず、ネットリストと、設計制約およびＡｉｒＧａｐ制約が記述された設計ルールと、セル情報が記述されたライブラリと、ＡｉｒＧａｐ生成条件およびＡｉｒＧａｐ算出方法が記述されたテクノロジとを読み込む。
【００４９】
〔ステップＳＴ２０２〕
次に、ネットリストに基づいて論理セルの配置を決定し、決定した論理セルの配置をレイアウトデータに記述する。
【００５０】
〔ステップＳＴ２０３〕
次に、設計ルールに記述された設計制約に違反しないように、論理セルの配置を最適化する。例えば、タイミングや配線混雑の制約に違反するセルを他の領域に移動する。なお、遅延の最適化では、ＡｉｒＧａｐによる配線容量の削減効果も考慮する。すなわち、配置段階において論理セルの各々の配置位置に基づいて仮想の配線経路を想定し、論理セルの配置が混雑している領域を通過する仮想配線経路の配線寄生容量を小さく見積もる。このように配線寄生容量を見積もる理由は、配置が混雑している領域ではＡｉｒＧａｐが生成される可能性が高いためである。
【００５１】
〔ステップＳＴ２０４〕
次に、レイアウトデータ上に配置された論理セルの各々に対して、その論理セルのＡｉｒＧａｐ容積値をライブラリに記述されたセル情報の中から検出する。次に、検査領域の各々について、ＡｉｒＧａｐ容積値の総和を算出する。
【００５２】
〔ステップＳＴ２０５〕
次に、検査領域の各々について、その検査領域の領域サイズに対応するＡｉｒＧａｐ容積の総和の許容範囲を設計ルールに記述されたＡｉｒＧａｐ制約の中から検出する。次に、ステップＳＴ２０３において算出されたＡｉｒＧａｐ容積値の総和が許容範囲内に収まるか否かを検査領域毎に判断する。すなわち、ＡｉｒＧａｐ制約に違反しているか否かを検査領域毎に検査する。なお、論理セルにおいてのみ使用される配線層が存在する場合、ライブラリに記述されたセル情報を参照すれば、その配線層に関して論理セルの配置結果のみでＡｉｒＧａｐ制約の確認することも可能である。ＡｉｒＧａｐ制約に違反している領域が検出された場合にはステップＳＴ２０６へ進み、ＡｉｒＧａｐ制約に違反している領域が検出されなかった場合にはステップＳＴ２０７へ進む。
【００５３】
〔ステップＳＴ２０６〕
ＡｉｒＧａｐ制約に違反している検査領域が検出された場合、その検査領域におけるＡｉｒＧａｐ制約違反を解消するための制約（違反解消制約）を設計制約に追加する。すなわち、ＡｉｒＧａｐ制約に違反する検査領域におけるＡｉｒＧａｐ容積値の総和をＡｉｒＧａｐ制約に規定された許容範囲内に収めるための制約を追加する。例えば、ＡｉｒＧａｐ容積の総和が上限値を上回る検査領域については、その検査領域における配置密度値を現在値よりも小さくする制約が追加されても良いし、その検査領域に配置された論理セルをＡｉｒＧａｐ容積が小さい論理セルに変更する制約が追加されても良い。一方、ＡｉｒＧａｐ容積の総和が下限値を下回る検査領域については、その検査領域における配置密度値を現在値よりも大きくする制約が追加されても良いし、その検査領域に配置された論理セルをＡｉｒＧａｐ容積が大きい論理セルに変更する制約が追加されても良い。違反解消制約の追加が完了すると、ステップＳＴ２０３へ進む。
【００５４】
〔ステップＳＴ２０７〕
一方、ステップＳＴ２０５においてＡｉｒＧａｐ制約に違反している領域が検出されなかった場合、レイアウトデータ上に配置された論理セル（場合によっては、機能マクロも含む）に対して配線接続を行う。これにより、論理セル間が配線で接続される。
【００５５】
〔ステップＳＴ２０８〕
次に、テクノロジに記述されたＡｉｒＧａｐ算出方法に従って、ＡｉｒＧａｐ生成条件が成立する箇所（ＡｉｒＧａｐ生成箇所）におけるＡｉｒＧａｐ容積値を求める。このようにして、配線間におけるＡｉｒＧａｐ容積値が求められる。次に、配線間におけるＡｉｒＧａｐ容積の総和を検査領域毎に算出する。
【００５６】
〔ステップＳＴ２０９〕
次に、設計ルールに記述された設計制約に違反しないように、論理セル，論理セルの配置位置，配線長，ビア数，および配線経路を変更し、配線接続を最適化する。なお、遅延の最適化では、ＡｉｒＧａｐによる配線寄生容量の削減効果も考慮する。すなわち、配線間にＡｉｒＧａｐが生成される場合、そのＡｉｒＧａｐの容積値に応じて配線の寄生容量を小さく見積もる。また、例えば、遅延の最適化のために配線寄生容量を減少させて遅延量を小さくしたい場合、ＡｉｒＧａｐ容積値が増加するように配線経路を変更しても良い。
【００５７】
〔ステップＳＴ２１０〕
次に、ステップＳＴ２０４と同様に、ライブラリに記述されたセル情報の中から、レイアウトデータ上に配置された論理セルのＡｉｒＧａｐ容積値を検出する。また、ステップＳＴ２０８と同様に、レイアウトデータ上においてテクノロジに記述されたＡｉｒＧａｐ生成条件が成立する箇所を検出し、テクノロジに記述されたＡｉｒＧａｐ算出方法に従って、ＡｉｒＧａｐ生成条件が成立する箇所（ＡｉｒＧａｐ生成箇所）におけるＡｉｒＧａｐ容積値を求める。次に、論理セル内におけるＡｉｒＧａｐ容積値と配線間におけるＡｉｒＧａｐ容積値との総和を検査領域毎に算出する。
【００５８】
〔ステップＳＴ２１１〕
次に、検査領域の各々について、設計ルールに記述されたＡｉｒＧａｐ制約の中から、その検査領域の領域サイズに対応するＡｉｒＧａｐ容積の総和の許容範囲を検出する。次に、ステップＳＴ２１０において算出されたＡｉｒＧａｐ容積値の総和が許容範囲内に収まるか否かを検査領域毎に判断する。すなわち、ＡｉｒＧａｐ制約に違反しているか否かを検査領域毎に検査する。ＡｉｒＧａｐ制約に違反している検査領域が検出された場合にはステップＳＴ２１２へ進み、ＡｉｒＧａｐ制約に違反している検査領域が検出されなかった場合にはステップＳＴ２１３へ進む。
【００５９】
〔ステップＳＴ２１２〕
ＡｉｒＧａｐ制約に違反している検査領域が検出された場合、その検査領域におけるＡｉｒＧａｐ制約違反を解消するための制約（違反解消制約）を設計制約として設計ルールに追加する。すなわち、ＡｉｒＧａｐ制約に違反する検査領域におけるＡｉｒＧａｐ容積値の総和をＡｉｒＧａｐ制約に規定された許容範囲内に収めるための制約を追加する。例えば、ＡｉｒＧａｐ容積の総和が上限値を上回る検査領域については、その検査領域における配線密度値を現在値よりも小さくする制約を追加する。一方、ＡｉｒＧａｐ容積の総和が下限値を下回る検査領域については、その検査領域における配線密度値を現在値よりも大きくする制約を追加する。このように、配線接続についての違反解消制約が追加された場合にはステップＳＴ２０９へ進む。また、ここで、ステップＳＴ２０６と同様に、ＡｉｒＧａｐ制約の違反を解消するために、論理セルの配置についての違反解消制約が追加されても良い。この場合には、ステップＳＴ２０３へ進めば良い。
【００６０】
〔ステップＳＴ２１４〕
一方、ステップＳＴ２０５においてＡｉｒＧａｐ制約に違反している検査領域が検出されなかった場合、レイアウトデータを出力する。
【００６１】
＜具体例＞
次に、図５に示した半導体集積回路設計方法について具体例を挙げて説明する。
【００６２】
〔配置段階におけるＡｉｒＧａｐ制約違反の解消〕
はじめに、図１０Ａ、図１０Ｂを参照しつつ、配置段階におけるＡｉｒＧａｐ制約違反の解消について説明する。
【００６３】
まず、論理セルの配置についての最適化（ステップＳＴ２０３）の結果、図１０Ａのように、レイアウトデータ上の検査領域２０１，２０２の各々に論理セル（ＢＵＦＸ２，ＢＵＦＸ４）が配置されたものとする。
【００６４】
次に、ステップＳＴ２０４において、セル情報（図３Ａ）を参照して、検査領域２０１，２０２の各々についてＡｉｒＧａｐ容積値の総和が算出される。この場合、検査領域２０１におけるＡｉｒＧａｐ容積値の総和は「０．４」であり、検査領域２０２におけるＡｉｒＧａｐ容積値の総和は「２．１」である。
【００６５】
次に、ステップＳＴ２０５において、検査領域２０１，２０２の各々に対するＡｉｒＧａｐ容積値の許容範囲が「１．０〜２．０」であることがＡｉｒＧａｐ制約に規定されているとする。この場合、検査領域２０１におけるＡｉｒＧａｐ容積値の総和「０．４」は許容範囲の下限値「１．０」を下回っていることになり、検査領域２０２におけるＡｉｒＧａｐ容積値の総和「２．１」は許容範囲の上限値「２．０」を上回っていることになる。
【００６６】
そこで、ステップＳＴ２０６において、検査領域２０１における配置密度値を大きくする制約と、検査領域２０２における配置密度値を小さくする制約とが設計ルールに追加される。これにより、ステップＳＴ２０３において、新たなに追加された制約を違反しないように論理セルの配置が変更され、図１０Ｂのように、検査領域２０２に位置する論理セルＢＵＦＸ２，ＢＵＦＸ４が検査領域２０１に移動する。よって、検査領域２０１におけるＡｉｒＧａｐ容積の総和が「１．１」に増加する一方、検査領域２０２におけるＡｉｒＧａｐ容積の総和が「１．４」に減少する。このようにして、各検査領域におけるＡｉｒＧａｐ制約違反が解消される。
【００６７】
〔ＡｉｒＧａｐの考慮した配線接続の最適化〕
次に、図１１Ａ，図１１Ｂを参照しつつ、ＡｉｒＧａｐの考慮した配線接続の最適化について説明する。
【００６８】
まず、配線接続の結果（ＳＴ２０７）、図１１Ａのように、論理セルＣＥＬ＿Ａ，ＣＥＬ＿Ｂの間に配線Ｗ２０１が接続され、論理セルＣＥＬ＿Ｃ，ＣＥＬ＿Ｄの間に配線Ｗ２０２が接続されたとする。
【００６９】
次に、ステップＳＴ２０８において、配線間隔（対向間隔）が「Ｓ１」であり且つ対向長が「Ｌ１」である箇所Ｐ２０１においてＡｉｒＧａｐ生成条件（図６Ａ）が成立し、ＡｉｒＧａｐ算出方法に従って箇所Ｐ２０１におけるＡｉｒＧａｐ容積値が算出される。この場合、箇所Ｐ２０１におけるＡｉｒＧａｐ容積値は「０．１」である。
【００７０】
ここで、領域２０３において見積もられた遅延量が遅延制約に規定された遅延量の許容値を下回っている場合、ステップＳＴ２０９において、配線Ｗ２０１，Ｗ２０２間におけるＡｉｒＧａｐ容積値を増加させるために、図１３Ｂのように、配線Ｗ２０１と配線Ｗ２０２との対向長を「Ｌ１」から「Ｌ２」へ長くする。これにより、箇所Ｐ２０１におけるＡｉｒＧａｐ容量値が「０．２」に増加するので、領域２０３において見積もられる遅延量が小さくなり、遅延制約の違反を解消することができる。
【００７１】
〔配線段階におけるＡｉｒＧａｐ制約の違反解消〕
次に、図１２Ａ，図１２Ｂを参照しつつ、配線段階におけるＡｉｒＧａｐ制約違反の解消について説明する。
【００７２】
まず、配線接続の最適化（ＳＴ２０９）の結果、図１２Ａのように、検査領域２０４，２０５の各々において配線が接続されたとする。
【００７３】
次に、ステップＳＴ２１０において、検査領域２０４，２０５の各々においてＡｒｉＧａｐ容積値の総和が算出される。この場合、検査領域２０４では、４つの論理セルＢＵＦＸ２のＡｉｒＧａｐ容積値の合計は「０．２×４＝０．８」であり、箇所Ｐ２１１におけるＡｉｒＧａｐ容積値は「０．１」であるので、検査領域２０４におけるＡｉｒＧａｐ容積値の総和は「０．９」である。一方、検査領域２０５では、４つの論理セルＢＵＦＸ２のＡｉｒＧａｐ容積値の合計は「０．２×４＝０．８」であり、２つの論理セルＢＵＦＸ４のＡｉｒＧａｐ容積値の合計は「０．５×２＝１．０」であり、箇所Ｐ２２１におけるＡｉｒＧａｐ容積値は「０．２」であり、箇所Ｐ２２２におけるＡｉｒＧａｐ容積値は「０．４」であるので、検査領域２０５におけるＡｉｒＧａｐの総和は「２．４」である。
【００７４】
次に、ステップＳＴ２１１において、検査領域２０４，２０５の各々に対するＡｉｒＧａｐ容積値の許容範囲が「１．０〜２．０」であることがＡｉｒＧａｐ制約に規定されているとする。この場合、検査領域２０４におけるＡｉｒＧａｐ容積値の総和「０．９」は許容範囲の下限値「１．０」を下回っていることになり、検査領域２０５におけるＡｉｒＧａｐ容積値の総和「２．４」は許容範囲の上限値「２．０」を上回っていることになる。
【００７５】
そこで、ステップＳＴ２１２において、検査領域２０４における配置密度値を小さくする制約と、検査領域２０５における配置密度値を大きくする制約とが設計ルールに追加される。これにより、ステップＳＴ２０９において、新たなに追加された制約を違反しないように配線接続が変更され、図１２Ｂのように、検査領域２０４においてダミーメタルＷ２０４が追加され、検査領域２０５において配線Ｗ２０１，Ｗ２０３の配線経路が変更される。したがって、検査領域２０４では、ＡｉｒＧａｐ生成条件が成立する箇所Ｐ２１２（ＡｉｒＧａｐ容積値「０．２」）が新たに発生するので、検査領域２０４におけるＡｉｒＧａｐ容積値の総和は「１．１」に増加する。一方、検査領域２０５では、配線Ｗ２０１と配線Ｗ２０２との間隔が長くなりＡｉｒＧａｐ生成条件が成立する箇所Ｐ２２１（ＡｉｒＧａｐ容積値「０．２」）が消滅し、配線Ｗ２０２と配線Ｗ２０３との対向長が「Ｌ２」に減少し箇所Ｐ２２２におけるＡｉｒＧａｐ容積値が「０．２」に減少するので、検査領域２０５におけるＡｉｒＧａｐ容積値の総和は「２．０」に減少する。このようにして、各検査領域におけるＡｉｒＧａｐ制約違反が解消される。
【００７６】
＜効果＞
以上のように、半導体集積回路の設計工程においてＡｉｒＧａｐ容積値を制限することができ、ＡｉｒＧａｐが適切に形成された半導体集積回路を設計することができる。
【００７７】
さらに、レイアウト設計工程においてＡｉｒＧａｐ容積制約を設けることにより、論理セルの配置の最適化および配線の接続の最適化とともにＡｉｒＧａｐ容積値の最適化も実行することができるので、設計工程に要する期間を短縮することができる。
【００７８】
なお、ステップＳＴ２０６またはステップＳＴ２１２において、ＡｉｒＧａｐ生成条件の成立を禁止する領域（ＡｉｒＧａｐ生成禁止領域）を規定するＡｉｒＧａｐ生成禁止制約を、違反解消制約として設計ルールに追加／削除しても良い。すなわち、ＡｉｒＧａｐ生成禁止制約に規定された領域（ＡｉｒＧａｐ生成禁止領域）内では、ＡｉｒＧａｐ生成条件が成立しないように論理セルの配置の変更等が実行されるので、ＡｉｒＧａｐ生成禁止領域内ではＡｉｒＧａｐが生成されなくなる。このようにして、ＡｉｒＧａｐ容積値を調整することができる。
【００７９】
また、図１３Ａのように、ＡｉｒＧａｐ生成条件に、配線間隔（対向間隔）とＡｉｒＧａｐ生成の有無とが対応付けられていても良い。この場合、ＡｉｒＧａｐ生成条件は、半導体集積回路設計装置のＣＰＵによって処理できるように、図１３Ｂのように、記述されても良い。
【００８０】
（第３の実施形態）
図１４は、この発明の第３の実施形態による配線寄生容量算出方法についてのフローチャートである。この配線寄生容量算出方法では、論理セルが配置され且つ論理セル同士が配線で接続されたレイアウトデータにおいて配線寄生容量の容量値を求める際に、配線間にＡｉｒＧａｐが生成されるか否かに応じて配線寄生容量の算出に用いる配線構造ファイルを変更する。
【００８１】
＜入力情報＞
配線寄生容量算出装置は、レイアウト設計工程を経て生成されたレイアウトデータ，設計ルール，および配線構造ファイルを入力する。設計ルールには、ＡｉｒＧａｐ生成箇所に成り得る条件を定義するＡｉｒＧａｐ生成条件（図６Ａ，図６Ｂ参照）が記述されている。配線構造ファイルには、ＡｉｒＧａｐがある場合の配線構造ファイルと、ＡｉｒＧａｐがない場合の配線構造ファイルとの２種類のファイルが存在する。ＡｉｒＧａｐがある場合の配線構造ファイルとは、配線間にＡｉｒＧａｐが実際に生成された状態のときに算出される配線寄生容量の容量値を求めることができる配線構造ファイルである。
【００８２】
＜動作＞
次に、図１４を参照しつつ、本実施形態による配線寄生容量算出方法について説明する。
【００８３】
〔ステップＳＴ３０１〕
まず、レイアウトデータと、ＡｉｒＧａｐ生成条件が記述された設計ルールと、配線構造ファイルとを読み込む。
【００８４】
〔ステップＳＴ３０２〕
次に、レイアウトデータにおいて設計ルールに記述されたＡｉｒＧａｐ生成条件が成立する箇所を検出し、検出した箇所をＡｉｒＧａｐ生成箇所としてデータベースに保存する。例えば、図１５Ａのように、ＡｉｒＧａｐ生成箇所Ｐ４０１，Ｐ４０２，Ｐ４０３が検出された場合、レイアウトデータ上における長方形状のチップ領域の一角（例えば、レイアウトデータがディスプレイに表示された場合におけるチップ領域の左下の一角）を原点として、ＡｉｒＧａｐ生成箇所の各々の中心座標と、ＡｉｒＧａｐ生成箇所の横の長さおよび横の長さ（配線の対向間隔および対向長）とを求める。すなわち、ＡｉｒＧａｐ生成箇所をＡｉｒＧａｐ生成箇所の中心座標とＡｉｒＧａｐ生成箇所の縦の長さおよび横の長さとで表現した情報（ＡｉｒＧａｐ生成箇所情報）をデータベースに保存する。
【００８５】
〔ステップＳＴ３０３〕
次に、レイアウトデータにおける配線の中から配線寄生容量を求める配線を選択する。
【００８６】
〔ステップＳＴ３０４〕
次に、データベースに保存されたＡｉｒＧａｐ生成箇所情報を用いて、ステップＳＴ３０３において選択された配線とその配線に隣接する配線との間の箇所がＡｉｒＧａｐ生成箇所であるか否かを判断する。この配線間にＡｉｒＧａｐが生成される場合にはステップＳＴ３０５へ進み、この配線間にＡｉｒＧａｐが生成されない場合にはステップＳＴ３０６へ進む。
【００８７】
〔ステップＳＴ３０５〕
ステップＳＴ３０４において配線間にＡｉｒＧａｐが生成されると判断された場合、ＡｉｒＧａｐがある場合の配線構造ファイルを用いて配線寄生容量の容量値を求める。次に、ステップＳＴ３０７へ進む。
【００８８】
〔ステップＳＴ３０６〕
一方、ステップＳＴ３０４において配線間にＡｉｒＧａｐが生成されないと判断された場合、ＡｉｒＧａｐがない場合の配線構造ファイルを用いて配線寄生容量の容量値を求める。次に、ステップＳＴ３０７へ進む。
【００８９】
〔ステップＳＴ３０７〕
次に、レイアウトデータの全ての配線について、配線寄生容量を求める処理を実行した場合には、処理を終了する。一方、配線寄生容量を求める処理が未だになされていない配線間がある場合には、ステップＳＴ３０３へ進む。
【００９０】
＜効果＞
以上のように、ＡｉｒＧａｐの生成の有無に応じて配線寄生容量を求めることができ、半導体集積回路の設計工程において配線寄生容量の容量値を精度良く算出することができる。
【００９１】
なお、１つの配線において、隣接する配線との間にＡｉｒＧａｐが生成される箇所とＡｉｒＧａｐが生成されない箇所とが混在する場合、その配線をセグメント毎に分割して配線寄生容量を算出すれば良い。例えば、ＡｉｒＧａｐが生成されるセグメントについてはＡｉｒＧａｐがある場合の配線構造ファイルを用い、ＡｉｒＧａｐが生成されないセグメントについてはＡｉｒＧａｐがない場合の配線構造ファイルを用いる。
【００９２】
また、ＡｉｒＧａｐ生成禁止制約，ＡｉｒＧａｐ非生成命令，ＡｉｒＧａｐ生成指示命令，ＡｉｒＧａｐ表現情報が設計ルールに記述されていても良い。また、ＡｉｒＧａｐ生成禁止制約，ＡｉｒＧａｐ非生成命令，ＡｉｒＧａｐ生成指示命令，ＡｉｒＧａｐ表現情報は、テクノロジに記述されていても良い。なお、各情報については、後述する。
【００９３】
本実施形態において、ＡｉｒＧａｐ非生成命令またはＡｉｒＧａｐ生成禁止制約が設計ルールに記述されている場合、ステップＳＴ３０２においてＡｉｒＧａｐ非生成命令またはＡｉｒＧａｐ生成禁止制約に規定された領域を配線の探索範囲から外しても良い。この場合、その領域に存在する配線については、ＡｉｒＧａｐがない場合の配線構造ファイルを用いて配線寄生容量を求める。このようにすれば、探索時間を削減することができる。
【００９４】
また、本実施形態において、ＡｉｒＧａｐ生成指示命令またはＡｉｒＧａｐ表現情報が設計ルールに記述されている場合、ステップＳＴ３０２において、ＡｉｒＧａｐ生成指示命令またはＡｉｒＧａｐ表現情報に規定された箇所をＡｉｒＧａｐ生成箇所としてデータベースに保存されているため、ＡｉｒＧａｐ生成箇所の検出のためにＡｉｒＧａｐ生成条件の成否を確認する必要がある領域を削減することができる。このようにすれば、ＡｉｒＧａｐ生成箇所の検出に要する時間を短縮することができる。
【００９５】
また、例えば、本実施形態の前段階の設計工程（例えば、レイアウト設計工程等）においてレイアウトデータにおけるＡｉｒＧａｐ生成箇所が既に求められており、そのＡｉｒＧａｐ生成箇所を示すＡｉｒＧａｐ生成箇所情報がデータベースに既に保存されている場合、ステップＳＴ３０２においてＡｉｒＧａｐ生成箇所を求める必要がないので、ステップＳＴ３０１においてＡｉｒＧａｐ生成条件が入力されなくても良い。
【００９６】
（第４の実施形態）
図２０は、この発明の第４の実施形態による半導体集積回路設計支援方法についてのフローチャートである。この半導体集積回路設計支援方法では、論理セルが配置され且つ配線同士が接続されたマスクデータ（または、レイアウトデータ）におけるＡｉｒＧａｐ生成箇所の適否を検査する。なお、ここでは、マスクデータを例に挙げて説明するが、レイアウトデータについても、当然、適用可能である。
【００９７】
＜入力情報＞
半導体集積回路設計支援装置は、マスク設計工程を経て生成されたマスクデータ，設計ルールを入力する。設計ルールには、ＡｉｒＧａｐ生成条件（図６Ａ参照）と、ＡｉｒＧａｐ生成禁止制約（図１６参照）と、ＡｉｒＧａｐ非生成命令（図１７参照）とが記述されている。
【００９８】
ＡｉｒＧａｐ生成禁止制約は、設計工程においてＡｉｒＧａｐ生成条件の成立を禁止する領域（ＡｉｒＧａｐ生成禁止領域）を規定する情報である。すなわち、ＡｉｒＧａｐ生成禁止制約に規定された領域内では、ＡｉｒＧａｐ生成条件が成立する箇所は、ＡｉｒＧａｐ制約に違反している箇所（エラー箇所）ということになる。
【００９９】
ＡｉｒＧａｐ非生成命令は、設計工程においてＡｉｒＧａｐ生成条件が成立していても製造工程においてＡｉｒＧａｐが生成されない領域（ＡｉｒＧａｐ非生成領域）を規定する情報である。すなわち、ＡｉｒＧａｐ非生成命令に規定された領域内では、ＡｉｒＧａｐ生成条件が成立する箇所であってもＡｉｒＧａｐ生成箇所として検出されない。
【０１００】
＜動作＞
次に、図２０を参照しつつ、本実施形態による半導体集積回路設計支援方法について説明する。
【０１０１】
〔ステップＳＴ４０１〕
まず、マスクデータと、ＡｉｒＧａｐ生成条件，ＡｉｒＧａｐ生成禁止制約およびＡｉｒＧａｐ非生成命令が記述された設計ルールとを読み込む。
【０１０２】
〔ステップＳＴ４０２〕
次に、マスクデータの中から設計ルールに記述されたＡｉｒＧａｐ生成条件が成立する箇所を検出し、検出した箇所をＡｉｒＧａｐ生成箇所として表示する。ＡｉｒＧａｐ生成箇所は、例えば、楕円形状で表示される。なお、ＡｉｒＧａｐ生成条件が成立する箇所でもＡｉｒＧａｐ非生成命令に規定された領域に位置するものであれば、ＡｉｒＧａｐ生成箇所として検出しない。なお、マスクデータ内に、ＡｉｒＧａｐ生成箇所が既に格納されている場合は、このステップを省略できる。
【０１０３】
〔ステップＳＴ４０３〕
次に、ステップＳＴ４０２において検出されたＡｉｒＧａｐ生成箇所のうちＡｉｒＧａｐ生成禁止領域（ＡｉｒＧａｐ生成禁止制約に規定された領域）に位置するＡｉｒＧａｐ生成箇所を検出する。ＡｉｒＧａｐ生成禁止領域の中に位置するＡｉｒＧａｐ生成箇所が検出された場合にはステップＳＴ４０４へ進み、ＡｉｒＧａｐ生成禁止領域の中に位置するＡｉｒＧａｐ生成箇所が検出されなかった場合にはマスク検証処理を終了する。
【０１０４】
〔ステップＳＴ４０４〕
次に、ＡｉｒＧａｐ生成禁止領域に位置するＡｉｒＧａｐ生成箇所をエラー箇所として表示する。例えば、エラー箇所であることが視覚的に把握できるように、エラー箇所の背景色を他の領域とは異なる色に変更しても良いし、エラー箇所を点滅させても良い。
【０１０５】
〔ステップＳＴ４０５〕
次に、エラー箇所がなくなるように、マスクデータを修正する。例えば、エラー箇所においてＡｉｒＧａｐ生成条件が成立しないように、エラー箇所に対応する配線の間隔や配線の長さを変更する。または、エラー箇所がＡｉｒＧａｐ非生成領域に含まれるように、ＡｉｒＧａｐ非生成命令に新たな領域（エラー箇所を含む領域）を追加記述する。なお、ここでは、設計者が半導体集積回路設計支援装置のディスプレイに表示されたエラー箇所を参照して、マスクデータの修正を指示する情報を半導体集積回路設計支援装置に入力し、半導体集積回路設計支援装置のＣＰＵが設計者によって入力された情報に応じて、マスクデータを修正する。マスクデータの修正が完了すると、ステップＳＴ４０２へ進む。
【０１０６】
＜具体例＞
次に、図２１Ａ，図２１Ｂ，図２２Ａ，図２２Ｂを参照しつつ、図２０に示した半導体集積回路設計支援方法について具体的に説明する。
【０１０７】
まず、ステップＳＴ４０２において、図２１Ａのように、ＡｉｒＧａｐ生成箇所Ｐ４０１，Ｐ４０２，Ｐ４０３が検出されたとする。次に、ステップＳＴ４０３において、ＡｉｒＧａｐ生成箇所Ｐ４０１，Ｐ４０２，Ｐ４０３のうちＡｉｒＧａｐ生成禁止制約に規定されたＡｉｒＧａｐ生成禁止領域ＲＦ４００に位置するＡｉｒＧａｐ生成箇所Ｐ４０２が検出される。また、ＡｉｒＧａｐ生成箇所Ｐ４０１のように、ＡｉｒＧａｐ生成禁止領域ＲＦ４００に部分的に重なっているものも検出される。
【０１０８】
次に、ステップＳＴ４０４において、図２１Ｂのように、ＡｉｒＧａｐ生成禁止領域ＲＦ４００に位置するＡｉｒＧａｐ生成箇所Ｐ４０１，Ｐ４０２がエラー箇所として表示される。
【０１０９】
次に、ステップＳＴ４０５において、図２２Ａのように、エラー箇所をなくすために配線Ｗ４０１の長さと配線Ｗ４０３の位置とが変更される。これにより、図２２Ｂのように、配線Ｗ４０１と配線Ｗ４０２との対向長が短くなりＡｉｒＧａｐ生成箇所Ｐ４０１のサイズが縮小し、配線Ｗ４０２と配線Ｗ４０３との対向間隔が広がってＡｉｒＧａｐ生成条件が成立しなくなりＡｉｒＧａｐ生成箇所Ｐ４０２が消滅する。このようにして、ＡｉｒＧａｐ生成禁止領域ＲＦ４００に位置するＡｉｒＧａｐ生成箇所（すなわち、エラー箇所）が排除される。
【０１１０】
＜効果＞
以上のように、半導体集積回路の設計工程においてＡｉｒＧａｐ生成箇所の適否を検査することができ、不適切なＡｉｒＧａｐ生成箇所を把握することができる。これにより、ＡｉｒＧａｐが適切に形成された半導体集積回路の設計を支援することができる。
【０１１１】
また、マスクデータにおいてチップ領域全体に渡ってＡｉｒＧａｐ生成箇所の適否を検査することができる。
【０１１２】
さらに、不適切な箇所に形成されたＡｉｒＧａｐがエラー箇所として表示されることにより、排除すべきＡｉｒＧａｐ生成箇所を視覚的に把握することができ、マスクデータを容易に修正することができる。
【０１１３】
なお、ＡｉｒＧａｐ生成禁止制約の他に、セルＡｉｒＧａｐ生成禁止制約が設計ルールに記述されていても良い。また、ＡｉｒＧａｐ非生成命令の他に、セルＡｉｒＧａｐ非生成命令が設計ルールに記述されていても良い。
【０１１４】
〔セルＡｉｒＧａｐ生成禁止制約〕
セルＡｉｒＧａｐ生成禁止制約は、論理セルの各々についてその論理セル内におけるＡｉｒＧａｐの生成の許否を規定する情報である。セルＡｉｒＧａｐ生成禁止制約には、例えば、図２３Ａのように、論理セルの各々について、その論理セル内におけるＡｉｒＧａｐ生成禁止領域（ＡｉｒＧａｐ生成条件が成立してはならない領域）が物理形状として記述される。また、図２３Ｂのように、ＡｉｒＧａｐの生成の許否を論理セル毎に定義しても良い。
【０１１５】
〔セルＡｉｒＧａｐ非生成命令〕
セルＡｉｒＧａｐ非生成命令は、論理セルの各々についてその論理セル内における製造工程でのＡｉｒＧａｐ生成の要否を規定する情報である。セルＡｉｒＧａｐ非生成命令には、例えば、図２４Ａのように、論理セルの各々について、その論理セル内におけるＡｉｒＧａｐ非生成領域（製造工程においてＡｉｒＧａｐが生成されない領域）が物理形状として記述される。また、図２４Ｂのように、製造工程におけるＡｉｒＧａｐの生成の要否を論理セル毎に定義しても良い。
【０１１６】
本実施形態においてセルＡｉｒＧａｐ生成禁止制約が設計ルールに記述されている場合、ステップＳＴ４０３，ＳＴ４０４において、マスクデータの中からセルＡｉｒＧａｐ生成禁止制約によってＡｉｒＧａｐの生成が禁止された論理セルを検出し、その論理セル内に位置するＡｉｒＧａｐ生成箇所をエラー箇所として表示することも可能である。
【０１１７】
また、本実施形態においてセルＡｉｒＧａｐ非生成命令が設計ルールに記述されている場合、ステップＳＴ４０２において、マスクデータの中からセルＡｉｒＧａｐ非生成命令によって製造工程でＡｉｒＧａｐが生成されてはならないと規定された論理セルを検出し、その論理セル内においてＡｉｒＧａｐ生成条件が成立する箇所があったとしてもその箇所をＡｉｒＧａｐ生成箇所として検出しないことも可能である。
【０１１８】
なお、ステップＳＴ４０２においてＡｉｒＧａｐ生成箇所を表示せず、ステップＳＴ４０４においてＡｉｒＧａｐ生成箇所の表示とともにエラー箇所の表示を実行しても良い。
【０１１９】
また、全てのＡｉｒＧａｐ生成箇所を表示する必要はなく、任意のＡｉｒＧａｐ生成箇所を選択的に表示しても良い。エラー箇所の表示についても同様である。
【０１２０】
さらに、マスクデータ上のチップ領域全体を表示する必要はなく、チップ領域の任意の領域を選択的に表示しても良い。また、任意の領域を拡大表示しても良い。
【０１２１】
（第５の実施形態）
図２５は、この発明の第５の実施形態による半導体集積回路設計支援方法についてのフローチャートを示す。この半導体集積回路設計支援方法では、論理セルが配置され且つ配線同士が接続されたマスクデータ（または、レイアウトデータ）におけるＡｉｒＧａｐ容積値の適否を検査する。なお、この半導体集積回路設計支援方法では、マスクデータとして表現されたチップ領域を分割して複数の検査領域を構成し、複数の検査領域の各々についてＡｉｒＧａｐ容積値の適否が検査される。また、チップ領域を分割しない場合の容積の適否も、可能である。
【０１２２】
＜入力情報＞
半導体集積回路設計支援装置は、マスクデータと、設計ルールとを入力する。設計ルールには、ＡｉｒＧａｐ生成条件（図６Ａ，図６Ｂ）と、ＡｉｒＧａｐ算出方法（図７Ａ，図７Ｂ）と、ＡｉｒＧａｐ生成指示命令（図１８）と、ＡｉｒＧａｐ表現情報（図１９）とが記述されている。
【０１２３】
ＡｉｒＧａｐ生成指示命令は、設計工程におけるＡｉｒＧａｐ生成条件の成否に関わらず製造工程においてＡｉｒＧａｐが生成される箇所を規定する情報である。すなわち、ＡｉｒＧａｐ生成指示命令に規定された箇所は、ＡｉｒＧａｐ生成条件の成否に関わらず、ＡｉｒＧａｐ生成箇所として検出される。
【０１２４】
ＡｉｒＧａｐ表現情報は、ＡｉｒＧａｐ表現情報は、ＡｉｒＧａｐ生成条件が成立する箇所（すなわち、ＡｉｒＧａｐ生成箇所）を示す情報である。
【０１２５】
＜動作＞
次に、図２５を参照しつつ、本実施形態による半導体集積回路設計支援方法について説明する。
【０１２６】
〔ステップＳＴ５０１〕
まず、マスクデータと、ＡｉｒＧａｐ生成条件，ＡｉｒＧａｐ算出方法，ＡｉｒＧａｐ生成指示命令，およびＡｉｒＧａｐ表現情報が記述された設計ルールとを読み込む。
【０１２７】
〔ステップＳＴ５０２〕
次に、マスクデータにおいて設計ルールに記述されたＡｉｒＧａｐ生成条件が成立する箇所を検出し、検出した箇所をＡｉｒＧａｐ生成箇所として表示する。また、ＡｉｒＧａｐ生成指示命令に規定された箇所や、ＡｉｒＧａｐ表現情報に規定された箇所も、ＡｉｒＧａｐ生成箇所として表示する。さらに、設計ルールに記述されたＡｉｒＧａｐ算出方法に従って、ＡｉｒＧａｐ生成箇所の各々についてのＡｉｒＧａｐ容積値を算出し、算出されたＡｉｒＧａｐ容積を対応するＡｉｒＧａｐ生成箇所内に表示する。
【０１２８】
〔ステップＳＴ５０３〕
次に、検査領域毎に、ＡｉｒＧａｐ容積値の総和を算出する。
【０１２９】
〔ステップＳＴ５０４〕
次に、検査領域の各々について、設計ルールに記述されたＡｉｒＧａｐ制約の中から、その検査領域の領域サイズに対応するＡｉｒＧａｐ容積の総和の許容範囲を検出する。次に、ステップＳＴ５０３において算出されたＡｉｒＧａｐ容積値の総和が許容範囲内に収まるか否かを検査領域毎に判断する。すなわち、ＡｉｒＧａｐ制約に違反しているか否かを検査領域毎に検査する。ＡｉｒＧａｐ制約に違反している検査領域が検出された場合にはステップＳＴ５０５へ進み、ＡｉｒＧａｐ制約に違反している検査領域が検出されなかった場合にはマスク検証処理を終了する。
【０１３０】
〔ステップＳＴ５０５〕
次に、ＡｉｒＧａｐ制約に違反している領域をエラー領域として表示する。例えば、エラー領域であることが視覚的に把握できるように、エラー領域の背景色を他の領域とは異なる色に変更する。また、エラー領域においてＡｉｒＧａｐ容積値の総和をどの程度削減または増加させれば良いのかを視覚的に把握でいるようにするために、エラー領域においてＡｉｒＧａｐ容積値の総和が許容範囲の上限値を上回っている量または許容範囲の下限値を下回っている量を違反値として表示しても良い。
【０１３１】
〔ステップＳＴ５０６〕
次に、エラー領域におけるＡｉｒＧａｐ制約違反を解消できるように、マスクデータを修正する。例えば、エラー領域において、配線の間隔や配線の長さを変更する。マスクデータの修正が完了すると、ステップＳＴ５０２へ進む。
【０１３２】
＜具体例＞
次に、図２６Ａ，図２６Ｂを参照しつつ、図２５に示した半導体集積回路設計支援方法について具体的に説明する。
【０１３３】
まず、ステップＳＴ５０２において、図２６Ａのように、ＡｉｒＧａｐ生成箇所Ｐ５０１，Ｐ５０２，Ｐ５０３が検出され、ＡｉｒＧａｐ生成箇所の各々についてＡｉｒＧａｐ容積値が算出される。ここで、ＡｉｒＧａｐ生成箇所Ｐ５０１のＡｉｒＧａｐ容積値が「８」であり、ＡｉｒＧａｐ生成箇所Ｐ５０２のＡｉｒＧａｐ容積値が「２」であり、ＡｉｒＧａｐ生成箇所Ｐ５０３のＡｉｒＧａｐ容積値が「５」であるとする。次に、ステップＳＴ５０３において、ＡｉｒＧａｐ容積値の総和（ここでは、「１５」）が算出される。
【０１３４】
次に、ステップＳＴ５０４において、検査領域５００に対するＡｉｒＧａｐ容積値の総和の許容範囲が「３〜１０」であることがＡｉｒＧａｐ制約に規定されていたとする。この場合、検査領域５００におけるＡｉｒＧａｐ容積値の総和「１５」は許容範囲の上限値「１０」を上回っているので、ステップＳＴ５０５において、検査領域５００がエラー領域として表示されるとともに、検査領域５００における違反値「＋５」が表示される。
【０１３５】
次に、ステップＳＴ５０５において、図２６Ｂのように、エラー箇所におけるＡｉｒＧａｐ制約違反を解消するために配線Ｗ５０１の長さが変更される。これにより、配線Ｗ５０１と配線Ｗ５０２との対向長が短くなりＡｉｒＧａｐ生成箇所Ｐ５０１のＡｉｒＧａｐ容積値が「３」に減少し、検査領域５００におけるＡｉｒＧａｐ容積値の総和が「１０」になる。このようにして、検査領域５００におけるＡｉｒＧａｐ制約違反が解消される。
ＡｉｒＧａｐ生成禁止領域ＲＦ４００に位置するＡｉｒＧａｐ生成箇所（すなわち、エラー箇所）が排除される。
【０１３６】
＜効果＞
以上のように、半導体集積回路の設計工程においてＡｉｒＧａｐ容量値の適否を検査することができ、ＡｉｒＧａｐ容積値が適切でない箇所を把握することができる。これにより、ＡｉｒＧａｐが適切に形成された半導体集積回路の設計を支援することができる。
【０１３７】
また、マスクデータ上のチップ領域全体に渡ってＡｉｒＧａｐ容積値の適否を検査することができる。
【０１３８】
さらに、ＡｉｒＧａｐ容積値が不適切であり検査領域がエラー領域として表示されることにより、修正すべき領域を視覚的に把握することができ、マスクデータを容易に修正することができる。
【０１３９】
（領域や箇所の定義）
図１５Ａのように、レイアウトデータやマスクデータにおける長方形上のチップ領域の一角（例えば、レイアウトデータがディスプレイに表示されたときのチップ領域の左下の一角）を原点とすると、ＡｉｒＧａｐ非生成命令やＡｉｒＧａｐ生成禁止制約によって規定される領域は、領域の左下の座標と右上の座標や、領域の左下の座標と領域の縦の長さおよび横の長さで定義することが可能である。
【０１４０】
また、ＡｉｒＧａｐ生成指示命令やＡｉｒＧａｐ表現情報によって規定される箇所は、箇所の左下の座標と箇所の右上の座標や、箇所の左下の座標と個所の縦の長さおよび横の長さで定義することが可能である。
【０１４１】
さらに、セル情報に規定されるＡｉｒＧａｐ生成箇所は、ＡｉｒＧａｐ生成箇所の中心座標とＡｉｒＧａｐが生成される配線レイヤとで定義することができる。また、ＡｉｒＧａｐの形状は、ＡｉｒＧａｐの縦の長さおよび横の長さで定義したり、近似的に中心座標を中心とする楕円形状として定義したり、ＡｉｒＧａｐの縦の長さ，横の長さ，および高さで３次元的に定義することが可能である。
【０１４２】
また、このように定義された領域や箇所等は、データベースに保存して、異なる設計工程間で共有することができる。このようにすれば、ＡｉｒＧａｐ生成箇所等の算出時間を削減することができ、処理時間の短縮を図ることが可能である。
【０１４３】
（情報の説明）
以下に、各実施形態において利用される「ＡｉｒＧａｐ生成禁止制約」，「ＡｉｒＧａｐ非生成命令」，「ＡｉｒＧａｐ生成指示命令」，「ＡｉｒＧａｐ表現情報」について説明する。
【０１４４】
〔ＡｉｒＧａｐ生成禁止制約〕
ＡｉｒＧａｐ生成禁止制約は、設計工程においてＡｉｒＧａｐ生成条件が成立してはならない領域（ＡｉｒＧａｐ生成禁止領域）を規定する情報である。ＡｉｒＧａｐ生成禁止制約は、例えば、図１６のように、配線レイヤ毎にＡｉｒＧａｐ生成禁止領域を定義しても良いし、全配線レイヤに対して一括でＡｉｒＧａｐ生成禁止領域を定義するものであっても良い。
【０１４５】
〔ＡｉｒＧａｐ非生成命令〕
ＡｉｒＧａｐ非生成命令は、設計工程においてＡｉｒＧａｐ生成条件が成立していても製造工程においてＡｉｒＧａｐが生成されない領域を規定する情報である。ＡｉｒＧａｐ非生成命令は、例えば、図１７のように、配線レイヤ毎にＡｉｒＧａｐが製造上生成されないように制御される領域を定義しても良いし、全配線レイヤに対して一括で製造上ＡｉｒＧａｐが生成されないように制御される領域を定義しても良い。また、図１７とは逆に、ＡｉｒＧａｐが製造上生成されるように制御される領域を定義するものであっても良い。
【０１４６】
〔ＡｉｒＧａｐ生成指示命令〕
ＡｉｒＧａｐ生成指示命令は、設計工程においてＡｉｒＧａｐ生成条件が成立していなくても製造工程においてＡｉｒＧａｐが生成される箇所を規定する情報である。ＡｉｒＧａｐ生成指示命令は、例えば、図１８のように、配線レイヤ毎にＡｉｒＧａｐが生成される箇所を定義しても良いし、全配線レイヤに対して一括でＡｉｒＧａｐが生成される箇所を定義するものであっても良い。すなわち、ＡｉｒＧａｐ生成指示命令に規定された箇所は、ＡｉｒＧａｐ生成条件の成否に関わらず、ＡｉｒＧａｐ生成箇所であると判断される。
【０１４７】
〔ＡｉｒＧａｐ表現情報〕
ＡｉｒＧａｐ表現情報は、ＡｉｒＧａｐ生成条件が成立する箇所（すなわち、ＡｉｒＧａｐ生成箇所）を示す情報であり、例えば、レイアウト設計工程（または、マスク検証工程）においてＡｉｒＧａｐ生成箇所をディスプレイに表示させるために使用される。ＡｉｒＧａｐ表現情報は、例えば、図１９のように、配線レイヤ毎にＡｉｒＧａｐ生成箇所を表現する定義である。
【０１４８】
また、ＡｉｒＧａｐ生成禁止領域やＡｉｒＧａｐ非生成領域は、半導体集積回路における熱的または機械的応力への耐久性等、半導体集積回路の物理特性に基づいて規定されることが好ましく、例えば、熱的または機械的応力への耐久性が比較的弱い領域がＡｉｒＧａｐ生成禁止領域として規定される。同様に、ＡｉｒＧａｐ生成指示命令に規定される箇所は、半導体集積回路における熱的または機械的応力への耐久性や配線遅延，クロストークノイズ等、半導体集積回路の物理特性に基づいて決定されることが好ましい。
【産業上の利用可能性】
【０１４９】
以上のように、本発明は、半導体集積回路の設計方法、半導体集積回路の設計支援方法，配線寄生容量算出方法として有用である。
【図面の簡単な説明】
【０１５０】
【図１】この発明の第１の実施形態による半導体集積回路設計方法についてのフローチャートである。
【図２】ＡｉｒＧａｐ容積制約の一例を示す図である。
【図３】セル情報（セル面積，ＡｉｒＧａｐ容積）の一例を示す図である。
【図４】図１に示した半導体集積回路設計方法におけるＡｉｒＧａｐ容積値の最適化について説明するための図である。
【図５】この発明の第２の実施形態による半導体集積回路設計方法についてのフローチャートである。
【図６】ＡｉｒＧａｐ生成条件の一例を示す図である。
【図７】ＡｉｒＧａｐ算出方法の一例を示す図である。
【図８】ＡｉｒＧａｐ容量制約の一例を示す図である。
【図９】セル情報に記述されるＡｉｒＧａｐ生成箇所の物理形状の一例を示す図である。
【図１０】図５に示した半導体集積回路設計方法の配置段階におけるＡｉｒＧａｐ容量値の最適化について説明するための図である。
【図１１】図５に示した半導体集積回路設計方法においてＡｉｒＧａｐの形成を考慮した配線最適化について説明するための図である。
【図１２】図５に示した半導体集積回路設計方法の配線段階におけるＡｉｒＧａｐ容積値の最適化について説明するための図である。
【図１３】ＡｉｒＧａｐ生成条件の別の一例を示す図である。
【図１４】この発明の第３の実施形態による配線寄生容量算出方法についてのフローチャートである。
【図１５】（Ａ）ディスプレイに表示されたレイアウトデータの一例を示す図である。（Ｂ）ＡｉｒＧａｐ生成箇所情報の一例を示す図である。
【図１６】ＡｉｒＧａｐ生成禁止制約の記述例を示す図である。
【図１７】ＡｉｒＧａｐ非生成命令の記述例を示す図である。
【図１８】ＡｉｒＧａｐ生成指示命令の記述例を示す図である。
【図１９】ＡｉｒＧａｐ表現情報の記述例を示す図である。
【図２０】この発明の第４の実施形態による半導体集積回路設計支援方法についてのフローチャートである。
【図２１】図２０に示した半導体集積回路設計支援方法におけるエラー箇所の表示について説明するための図である。
【図２２】図２０に示した半導体集積回路設計支援方法におけるマスクデータの修正について説明するための図である。
【図２３】セルＡｉｒＧａｐ生成禁止制約の一例を示す図である。
【図２４】セルＡｉｒＧａｐ非生成命令の一例を示す図である。
【図２５】この発明の第５の実施形態による半導体集積回路設計支援方法についてのフローチャートである。
【図２６】図２５に示した半導体集積回路設計支援方法におけるエラー領域の表示およびマスクデータの修正について説明するための図である。
【符号の説明】
【０１５１】
ＦＦ１，ＢＵＦＸ２，ＢＵＦＸ４，ＩＮＶ２    論理セル
ＣＥＬ＿Ａ，ＣＥＬ＿Ｂ，ＣＥＬ＿Ｃ，ＣＥＬ＿Ｄ
２０１，２０２，２０３，２０４，２０５    検査領域
Ｗ２０１，Ｗ２０２，Ｗ２２１，Ｗ２２２，Ｗ２２３    配線
Ｐ２０１，Ｐ２１１，Ｐ２２１，Ｐ２２２，Ｐ２２３    ＡｉｒＧａｐ生成箇所
Ｐ３０１，Ｐ３０２，Ｐ３０３    ＡｉｒＧａｐ生成箇所
Ｗ４０１，Ｗ４０２，Ｗ４０３，Ｗ４０４，Ｗ４０５    配線
ＲＦ４００    ＡｉｒＧａｐ生成禁止領域
Ｐ４０１，Ｐ４０２    ＡｉｒＧａｐ生成箇所（エラー箇所）
Ｐ４０３    ＡｉｒＧａｐ生成箇所
５００    検査領域（エラー領域）
Ｗ５０１，Ｗ５０２，Ｗ５０３，Ｗ５０４，Ｗ５０５    配線
Ｐ５０１，Ｐ５０２，Ｐ５０３    ＡｉｒＧａｐ生成箇所
【図１】
2008130911.tif 000003
【図２】
2008130911.tif 000004
【図３】
2008130911.tif 000005
【図４】
2008130911.tif 000006
【図５】
2008130911.tif 000007
【図６】
2008130911.tif 000008
【図７】
2008130911.tif 000009
【図８】
2008130911.tif 000010
【図９】
2008130911.tif 000011
【図１０】
2008130911.tif 000012
【図１１】
2008130911.tif 000013
【図１２】
2008130911.tif 000014
【図１３】
2008130911.tif 000015
【図１４】
2008130911.tif 000016
【図１５】
2008130911.tif 000017
【図１６】
2008130911.tif 000018
【図１７】
2008130911.tif 000019
【図１８】
2008130911.tif 000020
【図１９】
2008130911.tif 000021
【図２０】
2008130911.tif 000022
【図２１】
2008130911.tif 000023
【図２２】
2008130911.tif 000024
【図２３】
2008130911.tif 000025
【図２４】
2008130911.tif 000026
【図２５】
2008130911.tif 000027
【図２６】
2008130911.tif 000028