JP4124671B2 - 半導体集積回路設計装置 - Google Patents
半導体集積回路設計装置 Download PDFInfo
- Publication number
- JP4124671B2 JP4124671B2 JP2003046842A JP2003046842A JP4124671B2 JP 4124671 B2 JP4124671 B2 JP 4124671B2 JP 2003046842 A JP2003046842 A JP 2003046842A JP 2003046842 A JP2003046842 A JP 2003046842A JP 4124671 B2 JP4124671 B2 JP 4124671B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- wiring
- maximum value
- integrated circuit
- semiconductor integrated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、半導体集積回路の設計技術に関し、特に配線の容量値及び抵抗値のばらつきを予測する技術に関する。
【0002】
【従来の技術】
図5に示すように、半導体集積回路において、レイアウトされた配線502は他のレイアウトされた配線501及び503の条件によって、配線幅wが変わることが知られている。配線幅wが変化することにより、配線502の抵抗値と容量値が変化する。配線502の抵抗値及び容量値に応じて、配線502の遅延時間が決まる。
【0003】
図1に示すように、配線幅の変化が原因で、最も存在確率が高くなる遅延時間が代表値TYPである。半導体チップの製造条件により、配線遅延時間がもっとも小さくなる場合の遅延時間が最小値MINである。半導体チップの製造条件により、配線遅延時間がもっとも大きくなる遅延時間が最大値MAXである。
【0004】
半導体チップの製造条件にはばらつきがある。従来、最小値MINの遅延時間と最大値MAXの遅延時間は、代表値TYPの遅延時間に対してばらつき係数を掛けて求めていた。この場合、配線の遅延時間のばらつきは特定の条件によって変化するのではなく、一定の割合で変化するものとして扱われていた。
【0005】
また、下記の特許文献1及び2が公開されている。
【0006】
【特許文献1】
特開平7−56976号公報
【特許文献2】
特開2001−265826号公報
【0007】
【発明が解決しようとする課題】
実際の半導体チップ上において、配線の遅延時間のばらつきは配線がレイアウトされた際の条件に依存して異なる。従って、遅延時間の最小値MINと遅延時間の最大値MAX間の差はレイアウトされた際の周囲の配線の条件に応じて異なるものになる。そのため、配線のばらつきを一定として考えた場合、実際にはばらつきが小さい配線では実際のばらつきよりも過剰なばらつきが見積もられる。過剰なばらつきを考慮することで、遅延のタイミングを満足させることがより困難になる。
【0008】
本発明の目的は、配線の容量値及び抵抗値の過剰なばらつきを抑えてばらつきを求める技術を提供することである。
【0009】
【課題を解決するための手段】
本発明の一観点によれば、一の配線がレイアウトされた層の上の層にレイアウトされた配線密度を記憶する記憶手段と、前記配線密度を基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段とを有する半導体集積回路設計装置が提供される。
本発明の他の観点によれば、一の配線がレイアウトされた層の下の層にレイアウトされた配線密度を記憶する記憶手段と、前記配線密度を基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段とを有する半導体集積回路設計装置が提供される。
本発明のさらに他の観点によれば、一の配線を含むレイアウトデータを記憶する記憶手段と、前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、前記一の配線の配線長を基に前記容量値及び抵抗値の最小値及び最大値を補正し、前記容量値及び抵抗値の補正された最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段とを有する半導体集積回路設計装置が提供される。
本発明のさらに他の観点によれば、一の配線を含む層の厚さのレイアウトデータを記憶する記憶手段と、前記一の配線を含む層の厚さのレイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段とを有する半導体集積回路設計装置が提供される。
【0010】
配線及びその周囲のレイアウトデータを考慮し、配線の容量値及び抵抗値の最小値及び最大値を求めるので、過剰なばらつきがない最小値及び最大値を求めることができる。過剰なばらつきがなく、適正なばらつきの容量値及び抵抗値の最小値及び最大値を基に遅延時間を求め、論理検証及び/又はタイミング解析を行うことができるので、半導体集積回路の設計期間を短縮することができる。
【0011】
【発明の実施の形態】
図5は、本発明の実施形態による半導体集積回路の設計レイアウト例を示す。以下、半導体集積回路の検証方法を説明する。まず、配線502の容量値及び抵抗値を見積もる。次に、その配線502の容量値及び抵抗値を基に配線502の遅延時間を見積もる。その遅延時間を基に、半導体集積回路の論理検証及び静的タイミング解析を行う。
【0012】
実際に半導体集積回路を製造すると、周囲のレイアウト(製造条件)等に応じて設計値に対してばらつきが生じる。例えば、配線502は、隣接配線501との間隔d’に応じて左端がΔw’ずれ、隣接配線503との間隔dに応じて右端がΔwずれる。その結果、配線502の幅wは、Δw+Δw’ずれる。すなわち、配線502の幅wは、レイアウトデータに応じて変化する。配線502の幅wに応じて、配線502の容量値及び抵抗値が決まる。配線502の幅wがレイアウトデータに応じて変化するため、配線502の容量値及び抵抗値もレイアウトデータに応じて変化する。
【0013】
図1は、配線の容量値又は抵抗値の統計ばらつき分布例を示す。横軸はねらい値(目標値)からのずれを示し、縦軸は配線の容量値又は抵抗値の存在確率を示す。例えば、図5の配線502の幅wが設計値通りのときには、図1の横軸のねらい値からのずれが0になり、そのときの容量値又は抵抗値の存在確率が示される。
【0014】
代表値TYPは、最も存在確率が高い容量値又は抵抗値であり、例えばそのずれ量はねらい値より少し大きくなる。最小値MINは、容量値又は抵抗値がもっとも小さくなる場合の容量値又は抵抗値であり、例えばそのずれ量はねらい値より少し小さくなる。最大値MAXは、容量値又は抵抗値がもっとも大きくなる場合の容量値又は抵抗値であり、例えばそのずれ量はねらい値よりかなり大きくなる。最小値MIN及び最大値MAXは、ずれ量101だけ離れている。
【0015】
なお、配線の容量値及び抵抗値の最小値MIN、代表値TYP及び最大値MAXを基に、その配線の遅延時間の最小値MIN、代表値TYP及び最大値MAXを演算することができる。配線の遅延時間の最小値MIN、代表値TYP及び最大値MAXの分布も、図1と同様の分布になる。
【0016】
図2は、パラメータ条件を入力し、抵抗値及び容量値の代表値TYPを出力する表200を示す。パラメータ条件として、隣接配線との間隔等のレイアウトデータを入力することにより、配線の抵抗値及び容量値の代表値TYPを表200から読み出すことができる。抵抗値及び容量値の最小値MIN及び最大値MAXは、抵抗値及び容量値の代表値TYPに一定の係数をかけることにより求めることができる。
【0017】
しかし、実際には、最小値MIN及び最大値MAXは、レイアウトデータに応じて変化するものであり、一定の係数をかけることによっては正確な値を求めることができない。すなわち、実際のばらつきは一定ではない。容量値及び抵抗値のばらつきを一定とした場合、実際のばらつきよりも過剰なばらつきが見積もられることがある。過剰なばらつきを考慮することになると、半導体集積回路のタイミング解析を満足させることが困難になる。より正確な容量値及び抵抗値のばらつきを見積もることができれば、タイミング解析も適切に行うことができ、過剰に厳格なタイミング解析を満足させる必要がなくなる。
【0018】
図3は、本実施形態で用いる抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを求めるための表300である。表300は、パラメータ条件を入力し、抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを出力する。すなわち、パラメータ条件として、隣接配線との間隔等のレイアウトデータを入力することにより、配線の抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを予め作成された表300から読み出すことができる。本実施形態では、代表値TYPだけでなく、最小値MIN及び最大値MAXについても、レイアウトデータに応じた値を求める。そして、配線の抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを基に、配線の遅延時間の最小値MIN、代表値TYP及び最大値MAXを演算する。また、表300の代わりに、関数を用いる方法を、以下に示す。
【0019】
図4は、本実施形態で用いる抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを求めるための関数群400である。関数群400は、関数401〜406を有する。関数401は、パラメータ条件(レイアウトデータ)を入力し、抵抗値の最小値MINを演算して出力する。関数402は、パラメータ条件(レイアウトデータ)を入力し、容量値の最小値MINを演算して出力する。関数403は、パラメータ条件(レイアウトデータ)を入力し、抵抗値の代表値TYPを演算して出力する。関数404は、パラメータ条件(レイアウトデータ)を入力し、容量値の代表値TYPを演算して出力する。関数405は、パラメータ条件(レイアウトデータ)を入力し、抵抗値の最大値MAXを演算して出力する。関数406は、パラメータ条件(レイアウトデータ)を入力し、容量値の最大値MAXを演算して出力する。そして、配線の抵抗値及び容量値の最小値MIN、代表値TYP及び最大値MAXを基に、配線の遅延時間の最小値MIN、代表値TYP及び最大値MAXを演算する。
【0020】
図3及び図4のパラメータ条件は、抵抗値及び容量値を求めるための条件数に応じてパラメータの個数を変え、レイアウトデータに応じた抵抗値と容量値を求めることができる。図3の表300及び図4の関数群400は、過去に製造した半導体集積回路のばらつき値をフィードバックし、経験的に作成することができる。
【0021】
図5に示すように、隣接配線501,503までの距離d’,dに応じて配線502の幅wはΔw+Δw’変化する。容量値と抵抗値のばらつきは、隣接した配線501,503までの距離d’,dに依存するため、容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求めるためのパラメータとして隣接した配線501,503までの距離d’,dを使用する。通常、配線は、半導体チップ上へ仮想的に設けられたグリッドの上へレイアウトされる。隣接した配線までの距離は、グリッド毎又は単位長さ毎のパラメータとして表もしくは関数を構成する。何μmの間隔があるかをパラメータとしてもよい。
【0022】
容量値と抵抗値のばらつきは、配線がレイアウトされた層に依存するため、容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求めるためのパラメータとしてレイアウトされた配線の層を使用する。配線は、バルク上へ層状に積み重ねてレイアウトされる。バルクに近い配線層から、第1の配線層、第2の配線層、第3の配線層、第nの配線層と定義する。レイアウトされた層は何番目の層かという情報のパラメータとして表又は関数を構成する。また、配線の層の厚さのレイアウトデータをパラメータとして表又は関数を構成し、配線の容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求める。配線層により厚さが異なるため、層の厚さもパラメータとして使用できる。
【0023】
容量値と抵抗値のばらつきは、配線がレイアウトされた層の上の層にレイアウトされた配線密度の条件に依存するため、容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求めるためのパラメータとして上層の配線密度を使用する。上層の配線密度は、上層にレイアウトされた配線間距離をグリッド毎又は単位長さ毎で表されたパラメータとして表もしくは関数を構成する。
【0024】
容量値と抵抗値のばらつきは、配線がレイアウトされた層の下の層にレイアウトされた配線密度の条件に依存するため、容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求めるためのパラメータとして下層の配線密度を使用する。下層の配線密度は、下層にレイアウトされた配線間距離をグリッド毎又は単位長さ毎で表されたパラメータとして、表もしくは関数を構成する。
【0025】
容量値と抵抗値のばらつきは、配線がレイアウトされた配線幅に依存するため、容量値及び抵抗値の最小値MINと代表値TYPと最大値MAXを求めるためのパラメータとしてレイアウトされた配線幅を使用する。レイアウトされた配線幅は、単位長さで表されたパラメータとして表もしくは関数を構成する。
【0026】
図6は、同一半導体チップ内のばらつきを示す分布である。縦軸は配線の容量値又は抵抗値の存在確率であり、横軸はねらい値からのずれである。半導体チップを複数個製造した際に起こりえる抵抗値と容量値のばらつきとして上記の最小値MINと最大値MAXがある。それに対して、一つの半導体チップの中で同時に起こり得るばらつきとして半導体チップ内ばらつき(On−Chipばらつき)がある。
【0027】
半導体チップ内ばらつきでは、上記の抵抗値と容量値の最小値MINは値MIN−MINと定義される。ある半導体チップに容量値及び抵抗値の値MIN−MINが存在した場合、その半導体チップ内で最も遅延が大きくなる抵抗値と容量値は値MIN−MAXで定義される。
【0028】
また、半導体チップ内ばらつきでは、上記の抵抗値と容量値の最大値MAXは値MAX−MAXと定義される。ある半導体チップに容量値及び抵抗値の値MAX−MAXが存在した場合、最も遅延が小さくなる抵抗値と容量値は値MAX−MINで定義される。
【0029】
すなわち、配線の容量値及び抵抗値の最小値MINをそれぞれ有する半導体チップにおいて、その同一半導体チップ内では、ばらつく配線の容量値及び抵抗値の最小値MIN−MIN及び最大値MIN−MAXが存在する。また、配線の容量値及び抵抗値の最大値MAXをそれぞれ有する半導体チップにおいて、その同一半導体チップ内では、ばらつく配線の容量値及び抵抗値の最小値MAX−MIN及び最大値MAX−MAXが存在する。
【0030】
同一半導体チップ内では、最小値MIN−MINから最大値MIN−MAXまでのばらつき範囲601が生じえる。また、他の同一半導体チップ内では、最小値MAX−MINから最大値MAX−MAXまでのばらつき範囲602が生じえる。同一半導体チップは、同一半導体製造工程により製造されるので、同一半導体チップ内に、ばらつき範囲601とばらつき範囲602の両方が存在することはない。
【0031】
静的タイミング解析については、ばらつき範囲601についてタイミング解析が正常になり、さらにそれとは別にばらつき範囲602についてタイミング解析が正常になればよい。ばらつき範囲601及び602が同時に存在する範囲で、タイミング解析を行う必要はない。
【0032】
図3及び図4では、レイアウトデータに依存して、抵抗値と容量値の最小値MIN、代表値TYP及び最大値MAXを求める手法を示した。同様にして、抵抗値と容量値の値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを求めるための表又は関数を予め定義することで、抵抗値及び容量値の値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを求めることができる。ここで、最小値MINと値MIN−MINは同じであり、最大値MAXと値MAX−MAXは同じである。
【0033】
なお、遅延時間は、容量値及び抵抗値を基に求めることができる。遅延時間の値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXも、図6と同様の分布になる。
【0034】
図7は、本実施形態による半導体集積回路設計方法の処理手順を示すフローチャートである。ステップS702では、記憶手段701からレイアウトデータを読み出し、そのレイアウトデータから配線データを抽出する。次に、ステップS703では、配線データを基に配線を予め定められた範囲で分割する。例えば、所定間隔で任意に分割する。
【0035】
次に、ステップS704では、分割された配線データを中心とする予め定められた範囲を検索して、配線等がレイアウトされた条件を検査する。すなわち、図3の表300又は図4の関数群400の入力となるパラメータ条件を取得する。上記の予め定められた範囲は、上下方向に検査される層数を定めた範囲であり、同層内で最小グリッド範囲を基準とした単位又は単位長さを基準とした単位で定められる。
【0036】
次に、ステップS706では、記憶手段705内の予め定義された表又は関数を基に、レイアウトデータのパラメータ条件毎に考慮して、容量値と抵抗値の最小値MIN、代表値TYP、最大値MAXを導き、さらに、容量値と抵抗値の値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを導く。
【0037】
次に、ステップS707では、分割された配線をマージして、配線毎の容量値と抵抗値の最小値MIN、代表値TYP、最大値MAXを導き、さらに、値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを導く。
【0038】
次に、ステップS708では、配線長などを考慮して、半導体チップ内等のばらつきを補正する。配線長が長くなった場合、配線全体で平均した半導体チップ内ばらつきは抑えられる。そのため、容量値及び抵抗値の値MIN−MAXと値MAX−MINを補正するためのパラメータとして配線長を使用する。配線長は、グリッド又は単位長さで表されたパラメータとして表又は関数を構成し、容量値及び抵抗値の値MIN−MAXと値MAX−MINを補正することができる。例えば、配線長が長いほど、容量値及び抵抗値のばらつきが小さくなる。その後、容量値及び抵抗値の最小値MIN、代表値TYP、最大値MAX、値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを記憶手段709に記録する。以下、この記憶手段709に記録された情報を、容量値及び抵抗値のばらつき値という。
【0039】
記憶手段710には、ゲートパラメータが記憶されている。ゲート(セル)の遅延時間は、ゲートに接続される配線の容量値及び抵抗値に依存する。ゲートパラメータは、ゲート遅延時間を求めるために必要なパラメータである。
【0040】
ステップS711では、記憶手段709内の容量値及び抵抗値のばらつき値と記憶手段710内のゲートパラメータを基に、遅延時間の計算を行う。具体的には、配線遅延時間及びゲート遅延時間の最小値MIN、代表値TYP、最大値MAX、値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを計算し、記憶手段712に記録する。
【0041】
ステップS713では、記憶手段712内の配線遅延時間及びゲート遅延時間の最小値MIN、代表値TYP、最大値MAXを用いて、論理検証を行う。すなわち、遅延時間の最小値MIN、代表値TYP、最大値MAXを基に、半導体集積回路が正常に動作するか否かを検証する。
【0042】
ステップS714では、記憶手段712内の配線遅延時間及びゲート遅延時間の値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを用いて、静的タイミング解析(STA)を行う。すなわち、図6の遅延時間のばらつき範囲601及び602を別々に考慮し、半導体集積回路のタイミング条件を満たすか否かを解析する。
【0043】
上記の論理検証及び静的タイミング解析をパスしない場合は、レイアウト設計を変更し、上記の処理を繰り返す。上記の論理検証及び静的タイミング解析をパスすることにより、半導体集積回路の設計が終了する。
【0044】
図8は、本実施形態による半導体集積回路設計(CAD(computer-aided design)設計)を行うためのコンピュータのハードウエア構成図である。バス801には、中央処理装置(CPU)802、ROM803、RAM804、ネットワークインタフェース805、入力装置806、出力装置807及び外部記憶装置808が接続されている。
【0045】
CPU802は、データの処理及び演算を行うと共に、バス801を介して接続された上記の構成ユニットを制御するものである。ROM803には、予めブートプログラムが記憶されており、このブートプログラムをCPU802が実行することにより、コンピュータが起動する。外部記憶装置808にコンピュータプログラムが記憶されており、そのコンピュータプログラムがRAM804にコピーされ、CPU802により実行される。このコンピュータは、コンピュータプログラム(CADソフトウエア)を実行することにより、集積回路の設計を行うことができる。具体的には、図7のように、容量値及び抵抗値を求め、それを基に遅延時間を求め、論理検証及び静的タイミング解析を行う。
【0046】
外部記憶装置808は、例えばハードディスク記憶装置等であり、電源を切っても記憶内容が消えない。外部記憶装置808は、コンピュータプログラム、レイアウトデータ(設計データ)、表又は関数等を記録媒体に記録したり、記録媒体からコンピュータプログラム及びレイアウトデータ等を読み出すことができる。
【0047】
ネットワークインタフェース805は、ネットワークに対してコンピュータプログラム及びレイアウトデータ等を入出力することができる。入力装置806は、例えばキーボード及びポインティングデバイス(マウス)等であり、各種指定又は入力等を行うことができる。出力装置807は、ディスプレイ及びプリンタ等である。
【0048】
以上のように、配線の容量値と抵抗値のばらつきは配線等がレイアウトされた条件(隣接配線距離、層の厚さ、上下層の配線密度、配線幅等)によって異なる。配線の容量値と抵抗値のばらつきは配線がレイアウトされた条件に関わらず一定として最悪条件で見積もりを行うと、配線によっては過剰な容量値及び抵抗値のばらつきが考慮されることになる。
【0049】
静的タイミング解析では、容量値及び抵抗値のばらつきを踏まえて、半導体チップが要求されるタイミング制約を満足するか否かを検証する。半導体チップがタイミング制約を満足しなかった場合、レイアウトを修正する必要がある。遅延時間に対して過剰なばらつきが含まれていると、半導体チップのタイミング制約を満足させることが難しくなり、半導体集積回路の設計期間が延びる。
【0050】
すなわち、容量値及び抵抗値のばらつきがレイアウトデータに依存しないものとして、レイアウト条件毎に容量値と抵抗値の代表値TYPを求め、代表値TYPに対して一定係数をかけることにより最小値MIN及び最大値MAXを求めると、過剰なばらつきが存在し、半導体集積回路の設計時間が長期化する。
【0051】
本実施形態では、一の配線を含むレイアウトデータを入力(記憶)し、レイアウトデータを基に上記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力ステップ(手段)を有する。論理検証では、少なくとも遅延時間の最小値及び最大値について行えばよく、より好ましくは遅延時間の最小値、代表値及び最大値について行うのがよい。
【0052】
なお、本実施形態は、以下の適用も可能である。
(1)出力ステップは、配線の層の2つ以上、上の層の配線密度のレイアウトデータを基に最小値及び最大値を出力する。
(2)出力ステップは、配線の層の2つ以上、下の層の配線密度のレイアウトデータを基に最小値及び最大値を出力する。
(3)出力ステップは、ダミー配線との間隔を予測したレイアウトデータを基に最小値及び最大値を出力する。配線密度がある領域で低い場合、配線の出来が変化し、歩留りが低下する。そのため、配線密度が低い領域にはどの配線とも繋がらないダミー配線をレイアウトする。
(4)出力ステップは、配線の層の下層のゲート酸化膜のレイアウトデータを基に最小値及び最大値を出力する。
(5)出力ステップは、配線の層の下層の活性領域を分けるためのフィールド酸化膜のレイアウトデータを基に最小値及び最大値を出力する。
(6)出力ステップは、配線の層の下層のウェルのレイアウトデータを基に最小値及び最大値を出力する。
(7)出力ステップは、配線の層の上層の層間絶縁膜のレイアウトデータを基に最小値及び最大値を出力する。
(8)出力ステップは、配線の層の上層の層間絶縁膜の形状のレイアウトデータを基に最小値及び最大値を出力する。層間絶縁膜の形状は、半導体チップの製造工程により異なる。例えば、銅配線では、CMP(Chemical Mechanical Polishing)工程を加えることで、層間絶縁膜を層毎で平らになるように処理する。CMP工程を加えなければ、層間絶縁膜は平らにならずにでこぼこになる。
(9)出力ステップは、配線の層の幅のレイアウトデータを基に配線層間を結ぶビアの最小値及び最大値を出力する。配線間のビアの抵抗値等も、配線層中の配線の場合と同様の、配線幅に対する依存性を示す。
【0053】
本実施形態では、配線及びその周囲のレイアウトデータを考慮し、配線の容量値及び抵抗値のばらつき値を求めるので、過剰なばらつきを排除することができる。過剰なばらつきを考慮する必要がなくなるので、半導体集積回路の設計期間を短縮することができる。
【0054】
なお、上記では、配線の容量値と抵抗値について説明したが、配線のインダクタ等にも適用できる。正確な遅延時間を計算するには、配線の容量値、抵抗値及びインダクタンスを基に遅延時間を計算するのが好ましい。そこで、上記の容量値及び抵抗値と同様に、配線のインダクタンスの最小値MIN、代表値TYP、最大値MAX、値値MIN−MIN、MIN−MAX、MAX−MIN、MAX−MAXを求めることが好ましい。その後、配線の容量値、抵抗値及びインダクタンスを基に遅延時間を計算し、論理検証及び静的タイミング解析を行う。
【0055】
本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0056】
上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0057】
本発明の実施形態は、例えば以下のように種々の適用が可能である。
【0058】
(付記1)一の配線を含むレイアウトデータを入力する入力ステップと、
前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力ステップと
を有する半導体集積回路設計方法。
(付記2)前記出力ステップは、前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値、代表値及び最大値をばらつき統計の予測値として出力する付記1記載の半導体集積回路設計方法。
(付記3)前記出力ステップは、前記一の配線の容量値及び抵抗値の最小値をそれぞれ有する半導体チップにおいて同一半導体チップ内でばらつく前記一の配線の容量値及び抵抗値の最小値及び最大値を出力し、前記一の配線の容量値及び抵抗値の最大値をそれぞれ有する半導体チップにおいて同一半導体チップ内でばらつく前記一の配線の容量値及び抵抗値の最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記4)前記出力ステップは、表を用いて、前記レイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記5)前記出力ステップは、関数を用いて、前記レイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記6)前記出力ステップは、前記配線とその隣接配線との間隔のレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記7)前記出力ステップは、前記配線の層の厚さのレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記8)前記出力ステップは、前記配線の層の上の層の配線密度のレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記9)前記出力ステップは、前記配線の層の下の層の配線密度のレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記10)前記出力ステップは、前記配線の幅のレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記11)さらに、前記一の配線の長さに応じて、前記同一半導体チップ内でばらつく前記一の配線の容量値及び抵抗値の最小値及び/又は最大値を補正する補正ステップを有する付記3記載の半導体集積回路設計方法。
(付記12)前記出力ステップは、前記レイアウトデータを基に前記一の配線の容量値、抵抗値及びインダクタンスの最小値及び最大値をばらつき統計の予測値として出力する付記1記載の半導体集積回路設計方法。
(付記13)さらに、前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算ステップを有する付記1記載の半導体集積回路設計方法。
(付記14)さらに、前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証ステップを有する付記13記載の半導体集積回路設計方法。
(付記15)さらに、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析ステップを有する付記13記載の半導体集積回路設計方法。
(付記16)前記出力ステップは、表を用いて、前記レイアウトデータを基に前記最小値、代表値及び最大値を出力する付記2記載の半導体集積回路設計方法。
(付記17)前記出力ステップは、関数を用いて、前記レイアウトデータを基に前記最小値、代表値及び最大値を出力する付記2記載の半導体集積回路設計方法。
(付記18)さらに、前記容量値及び抵抗値の最小値、代表値及び最大値を基に遅延時間の最小値、代表値及び最大値を演算する演算ステップを有する付記2記載の半導体集積回路設計方法。
(付記19)さらに、前記遅延時間の最小値、代表値及び最大値を基に半導体集積回路の論理検証を行う検証ステップを有する付記18記載の半導体集積回路設計方法。
(付記20)さらに、前記同一半導体チップ内でばらつく前記一の配線の容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算ステップを有する付記3記載の半導体集積回路設計方法。
(付記21)さらに、前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析ステップを有する付記20記載の半導体集積回路設計方法。
(付記22)前記出力ステップは、ダミー配線との間隔を予測したレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記23)前記出力ステップは、前記配線の層の上層の層間絶縁膜の形状のレイアウトデータを基に前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記24)前記出力ステップは、前記配線の層の幅のレイアウトデータを基に配線層間を結ぶビアの前記最小値及び最大値を出力する付記1記載の半導体集積回路設計方法。
(付記25)一の配線を含むレイアウトデータを記憶する記憶手段と、
前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と
を有する半導体集積回路設計装置。
(付記26)一の配線を含むレイアウトデータを入力する入力ステップと、
前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力ステップと
をコンピュータに実行させるためのプログラム。
【0059】
【発明の効果】
以上説明したように、配線及びその周囲のレイアウトデータを考慮し、配線の容量値及び抵抗値の最小値及び最大値を求めるので、過剰なばらつきがない最小値及び最大値を求めることができる。過剰なばらつきがなく、適正なばらつきの容量値及び抵抗値の最小値及び最大値を基に遅延時間を求め、論理検証及び/又はタイミング解析を行うことができるので、半導体集積回路の設計期間を短縮することができる。
【図面の簡単な説明】
【図1】遅延値、容量値及び抵抗値のねらい値からのずれとその存在確率を示す分布図である。
【図2】パラメータから抵抗値と容量値の代表値を求めるための表の一例を示す図である。
【図3】パラメータから抵抗値と容量値の最小値、代表値及び最大値を求めるための表の一例を示す図である。
【図4】パラメータから抵抗値と容量値の最小値、代表値及び最大値を求めるための関数の一例を示す図である。
【図5】隣接配線までの距離に依存して配線幅が変化する配線の一例を示す図である。
【図6】遅延値、容量値、抵抗値のねらい値からのずれとその存在確率を示す分布図である。
【図7】本発明の実施形態による半導体集積回路設計方法の処理手順を示すフローチャートである。
【図8】本実施形態による半導体集積回路設計を行うためのコンピュータのハードウエア構成図である。
【符号の説明】
501〜503 配線
801 バス
802 CPU
803 ROM
804 RAM
805 ネットワークインタフェース
806 入力装置
807 出力装置
808 外部記憶装置
Claims (6)
- 一の配線がレイアウトされた層の上の層にレイアウトされた配線密度を記憶する記憶手段と、
前記配線密度を基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、
前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段と
を有する半導体集積回路設計装置。 - 一の配線がレイアウトされた層の下の層にレイアウトされた配線密度を記憶する記憶手段と、
前記配線密度を基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、
前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段と
を有する半導体集積回路設計装置。 - 一の配線を含むレイアウトデータを記憶する記憶手段と、
前記レイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、
前記一の配線の配線長を基に前記容量値及び抵抗値の最小値及び最大値を補正し、前記容量値及び抵抗値の補正された最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段と
を有する半導体集積回路設計装置。 - 一の配線を含む層の厚さのレイアウトデータを記憶する記憶手段と、
前記一の配線を含む層の厚さのレイアウトデータを基に前記一の配線の容量値及び抵抗値の最小値及び最大値をばらつき統計の予測値として出力する出力手段と、
前記容量値及び抵抗値の最小値及び最大値を基に遅延時間の最小値及び最大値を演算する演算手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の論理検証を行う検証手段と、
前記遅延時間の最小値及び最大値を基に半導体集積回路の静的タイミング解析を行う解析手段と
を有する半導体集積回路設計装置。 - 前記出力手段は、表を用いて、前記一の配線を含む層の厚さのレイアウトデータを基に前記最小値及び最大値を出力する請求項4記載の半導体集積回路設計装置。
- 前記出力手段は、関数を用いて、前記一の配線を含む層の厚さのレイアウトデータを基に前記最小値及び最大値を出力する請求項4記載の半導体集積回路設計装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003046842A JP4124671B2 (ja) | 2003-02-25 | 2003-02-25 | 半導体集積回路設計装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003046842A JP4124671B2 (ja) | 2003-02-25 | 2003-02-25 | 半導体集積回路設計装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004258836A JP2004258836A (ja) | 2004-09-16 |
JP4124671B2 true JP4124671B2 (ja) | 2008-07-23 |
Family
ID=33113245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003046842A Expired - Fee Related JP4124671B2 (ja) | 2003-02-25 | 2003-02-25 | 半導体集積回路設計装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4124671B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4455359B2 (ja) | 2005-01-31 | 2010-04-21 | Necエレクトロニクス株式会社 | 半導体装置設計プログラム |
JP4343892B2 (ja) | 2005-11-08 | 2009-10-14 | 富士通マイクロエレクトロニクス株式会社 | 半導体集積回路のレイアウト解析方法及びレイアウト解析装置 |
US9218445B2 (en) | 2014-01-23 | 2015-12-22 | International Business Machines Corporation | Implementing enhanced physical design quality using historical placement analytics |
-
2003
- 2003-02-25 JP JP2003046842A patent/JP4124671B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004258836A (ja) | 2004-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7835888B2 (en) | Method and apparatus for extracting characteristic of semiconductor integrated circuit | |
US7475377B2 (en) | Semiconductor device design system and method, and software product for the same | |
KR101776385B1 (ko) | 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품 | |
TWI334093B (en) | A method for accounting for process variation in the design of integrated circuits | |
US9767240B2 (en) | Temperature-aware integrated circuit design methods and systems | |
US20070143723A1 (en) | Method of timing verification and layout optimization | |
US8707230B1 (en) | Method and system for semiconductor simulation | |
US10360341B2 (en) | Integrated metal layer aware optimization of integrated circuit designs | |
US9740815B2 (en) | Electromigration-aware integrated circuit design methods and systems | |
JP2003258101A (ja) | 半導体集積回路装置の設計方法、設計装置、及び設計プログラム | |
US20050050502A1 (en) | Method and apparatus for designing semiconductor integrated circuit | |
EP3239865A1 (en) | Method for analyzing ir drop and electromigration of ic | |
US20070022400A1 (en) | Method, program, and apparatus for designing layout of semiconductor integrated circuit | |
US20090228845A1 (en) | Method, design program and design system for semiconductor device | |
JP2010165827A (ja) | 半導体装置の設計方法、及び、設計プログラム | |
JP2008028161A (ja) | 半導体装置の設計方法及び設計システム | |
JP4124671B2 (ja) | 半導体集積回路設計装置 | |
US6470476B2 (en) | Substitution of non-minimum groundrule cells for non-critical minimum groundrule cells to increase yield | |
JP2004259967A (ja) | 半導体集積回路及び半導体集積回路の設計方法 | |
JP4992249B2 (ja) | タイミング解析方法及び装置、プログラム及び記憶媒体 | |
US6604226B2 (en) | Verifying on-chip decoupling capacitance using transistor and capacitor surface area information | |
US8448125B2 (en) | Method and apparatus for checking current density limitation | |
US20090313593A1 (en) | Semiconductor integrated circuit design method and semiconductor integrated circuit design apparatus | |
US10509888B1 (en) | System and method for forming integrated device | |
JP2009301444A (ja) | 素子配置配線装置、半導体集積回路の製造方法、素子配置配線方法、制御プログラム、および記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040726 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070821 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071018 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071211 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080110 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080408 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080502 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110516 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110516 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110516 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110516 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120516 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120516 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130516 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140516 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |