JP4515544B2 - 半導体集積回路の配線条件処理方法 - Google Patents
半導体集積回路の配線条件処理方法 Download PDFInfo
- Publication number
- JP4515544B2 JP4515544B2 JP27137098A JP27137098A JP4515544B2 JP 4515544 B2 JP4515544 B2 JP 4515544B2 JP 27137098 A JP27137098 A JP 27137098A JP 27137098 A JP27137098 A JP 27137098A JP 4515544 B2 JP4515544 B2 JP 4515544B2
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- information
- delay value
- delay
- reference value
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、半導体集積回路の配線処理をする際の配線条件を求める半導体集積回路の配線条件処理方法に関する。
【0002】
【従来の技術】
従来、半導体集積回路の配線処理をする際には、半導体集積回路の配線遅延時間(以下、「ディレイ」と称する)が所定のディレイ基準値以下となるように処理する必要があった。そこで、ディレイ基準値を厳守する方法としては、例えば、特開平6-259492号公報に記載されているように、配線終了後、各配線のパスについてパス上の素子のエミッタフォロア電流あるいはカレントスイッチ電流を制御することで、パスのディレイばらつきを抑え、半導体集積回路を高速化する方法が知られている。また、一般に、配線ディレイを短縮する方法として、配線負荷容量の小さな幅広配線を使用するものも知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、特開平6-259492号公報に記載されているような素子のエミッタフォロア電流あるいはカレントスイッチ電流を大きくする方法では、ディレイを短縮するため、回路の消費電力が増加する問題があった。
【0004】
回路の消費電力を少なくするために、従来は、ディレイ制約の厳しいクロック配線等を全て幅広配線とする方法も取られているが、幅広配線の使用量が増加するため、配線チャネルが減少するという問題があった。配線チャネルが減少すると、未配線の発生や、通常配線での並行配線多発や、チップサイズの増加等の悪影響の要因となるものである。
【0005】
本発明の目的は、回路の消費電力を低減でき、しかも、配線チャネルを多くできる配線条件処理方法を提供することにある。
【0006】
【課題を解決するための手段】
(1)上記目的を達成するために、本発明は、半導体集積回路の配線条件処理方法において、半導体集積回路の素子間の結線関係を示す結線情報である論理情報に基づいて、回路基板上における前記各素子の配置を求め、前記各素子の配置を示す配置情報を出力する第1のステップと、前記配置情報から仮配線経路を算出し、該配線経路に基づいて最もディレイの厳しい条件の下で配線ディレイ値を求める第2のステップと、該第2のステップで求められた前記ディレイ値が基準値を超えてない場合には、仮配線経路に基づいて配線条件情報を作成する第3のステップと、前記第2のステップで求められた前記ディレイ値が前記基準値を超えている場合には、幅広配線を予め決めた率だけ使用したと仮定した配線ディレイ値を求める第4のステップと、該第4のステップで求められた前記配線ディレイ値が基準値を超えている場合には、配線負荷容量の小さな配線層を予め決めた率だけ使用したと仮定して配線ディレイ値を求める第5のステップと、該第5のステップで求められた前記配線ディレイ値が基準値を超えている場合には、平行配線を予め決めた率だけ使用したと仮定して配線ディレイ値を求める第6のステップと、該第6のステップで求められた前記配線ディレイ値が基準値を超えている場合には、前記幅広配線の使用率,前記配線負荷容量の小さな配線の使用率及び前記平行配線の使用率のいずれかを変えた組合せを選択して、配線ディレイ値を求める第7のステップと、該第7のステップで求められた前記配線ディレイ値が基準値を超えている場合には、配置変更の指示を追加する第8のステップと、前記第7のステップで求められた前記配線ディレイ値が基準値を超えてない場合には、平行配線の使用率を最低いくらとすれば前記基準値を遵守できるかの割合を算出し、算出した使用率を示す情報を追加して配線条件情報を作成する第9のステップと、前記第4のステップ,前記第5のステップ及び前記第6のステップで前記ディレイ値が前記基準値を超えてない場合には、前記幅広配線の使用率,前記配線負荷容量の小さな配線の使用率及び前記平行配線の使用率を最低いくらとすれば前記基準値を遵守できるかの割合を算出し、算出した使用率を示す情報を追加して配線条件情報を作成する第10のステップと、前記第2のステップ及び前記第7のステップで求めた前記ディレイ値が前記基準値を超えてない場合、及び、前記第10のステップの後に、前記配線条件情報に基づいて、実際の配線経路を求め、配線情報を出力する第11のステップとを備えるようにしたものである。
かかる方法により、幅広配線や配線負荷容量の小さな配線を使用することにより、消費電力を低減でき、幅広配線の使用条件を定めることで、この条件以下の幅広配線を使用することにより、無用な幅広配線の使用を抑止し、平行配線を制限して、ディレイのばらつきを低減でき、配線チャネルを増加し得るものとなる。
【0009】
【発明の実施の形態】
以下、図1〜図17を用いて、本発明の一実施形態による配線条件処理方法を用いる配線システムの構成及び機能について説明する。
最初に、図1を用いて、本実施形態による配線条件処理方法を用いる配線システムの全体構成について説明する。
【0010】
配線システム100は、配置処理部110と、配線条件処理部120と、配線処理部130とから構成されている。配置処理部110は、半導体集積回路の素子間の結線関係の情報である論理情報210に基づいて、回路基板上における各素子の配置を求めて、配置情報220として出力する。論理情報210及び配置情報220の具体例については、図9,図11を用いて後述する。
【0011】
配線条件処理部120は、本実施形態の要部であり、後述する配線処理に先だって、配置情報220から仮想配線経路を求め、この仮想配線経路に基づいて配線ディレイを求め、ディレイ基準値以下とするための配線条件を求めて、配線条件情報230として出力する。配線条件情報230の具体例については、図13を用いて後述する。
配線処理部130は、配線条件情報230に基づいて、実際の配線経路を求め、配線情報240として出力する。
【0012】
次に、図2を用いて、本実施形態による配線システムを動作させる際のハードウエア構成について説明する。
キーボード10は、条件等の設定や入力するのに用いられる。ディスプレイ装置20には、配線条件処理等の実行結果が表示される。ハードディスク30には、本実施形態による配線システムを動作させるプログラムや、入力となる論理情報210、入出力となる配置情報220,配線条件情報230や、出力となる配線情報240を格納する。CPU40は、本実施形態による配線システムを動作させるプログラムを実行する。媒体駆動装置50は、CD−ROM等の記録媒体52に記録されている本実施形態による配線システムを動作させるためのプログラムを読みだし、プログラムを実行するCPU40に接続されたハードディスク30にプログラムをダウンロードする。
【0013】
次に、図3〜図7を用いて、本実施形態による配線条件処理方法を含む配線システムの処理内容について説明する。なお、図3に示す(A・S)は、図4に示す(A・S)に続いており、また、図4に示す(A・E)は、図3に示す(A・E)に戻るというように、図3〜図7において同一符号は処理フローのつながりを示しており、図3〜図4によって一連の処理が行われるものである。
【0014】
図3のステップ310において、配置処理部110は、半導体集積回路の素子間の結線関係の情報である論理情報210に基づいて、回路基板上における各素子の配置を求めて、配置情報220として出力する。
【0015】
ここで、図8及び図9を用いて、本実施形態による配線条件処理方法に用いる論理情報210の一例について説明する。
例えば、図8に示すように、論理積素子and1の端子P3と論理和素子or1の端子P2が接続されるものとし、その信号線をSIG10と呼ばれるものとする。このような素子間の結線関係は、図9に示す論理情報210として記述される。
即ち、図9に示すように、論理情報210の第1行目の「and1 P3=SIG10」は、論理積素子and1の端子P3の信号線名がSIG10であることを示している。また、第2行目の「or1 P2=SIG10」は、論理和素子or1の端子P2の信号線名がSIG10であることを示している。このように記述することによって、図8に示したような素子間の結線関係を定義することができる。なお、論理情報210は、図9に示したものに限らず、他の記述を用いてもよいものである。
【0016】
配置処理部110は、論理情報210に記述されている複数の結線情報に基づいて、複数の素子の最適配置を求める。なお、配置処理部110の配置処理方法については、種々のものが知られており、それらの方法のいずれを用いてもよいものである。
【0017】
次に、図10及び図11を用いて、配置処理部110によって求められた配置情報220の一例について説明する。
例えば、図10に示すように、回路基板が横8ブロック(A,…,H)に分割され、縦8ブロック(1,…,8)に分割されているものとする。そして、配置処理部110による配置処理によって、論理積素子and1は、ブロックA7に配置され、論理和素子or1は、ブロックG1に配置されるように求められたものとすると、その結果の配置情報220は、図11に示すように記述される。
【0018】
即ち、図11に示すように、配置情報220の第1行目の「and1 A7P3=SIG10」は、図9に示した論理情報210に加えて、論理積素子and1がブロックA7に配置されることを示している。また、第2行目の「or1 G1 P2=SIG10」は、図9に示した論理情報210に加えて、論理和素子or1がブロックG1に配置されることを示している。このように記述することによって、図10に示したような素子の配置関係を定義することができる。なお、配置情報220は、図11に示したものに限らず、他の記述を用いてもよいものである。
【0019】
次に、図3のステップ320において、配線条件処理部120は、配置情報200から仮想配線経路を算出し、さらに、この仮想配線経路に基づいて最も厳しい条件の下で、配線ディレイを求める。
仮想配線路の算出には、例えば、スタイナー・ツリー法を用いることができるが、これ以外の方法でもよいものである。仮想配線路の算出は、実際の配線路の算出とは異なり、他の配線等を考慮することなく、素子間の結線情報(配置情報)と素子の配置情報によって求められる。
また、ここで、最もディレイが厳しくなる条件としては、例えば、配線経路の両脇に並行する並行配線が存在するケース、配線の上下の層でクロスする配線が可能な限り存在するケース、使用する配線の配線負荷容量の最も大きい配線を使用した場合のケース等が挙げられる。
【0020】
ここで、図12を用いて、配線条件処理部120によって求められた仮想配線路の一例について説明する。
図12は、図11に示した配置情報220に基づいて、論理積回路and1と論理和回路or1が、長さL1の配線Line1と長さL2の配線Line2によって結線された仮想配線の状態を示している。なお、この例においては、説明を簡単にするため、最も厳しい条件としては、配線Line1,Line2としては、幅が狭い一般配線を用いるものとし、また、同一配線層内に配線するようにすることにより、配線負荷容量の大きな配線を用いるものとしている。
【0021】
ここで、配線Line1の長さL1を、例えば、600格子とし、配線Line2の長さL2を、例えば、600格子とすると、配線長は、1200格子となる。また、幅の狭い一般配線に対するディレイを求めるための係数を1.0とすると、図12に示した配線のディレイ値は、1200D(ディレイ)と求めることができる。
【0022】
次に、図3のステップ330において、配線条件処理部120は、ステップ320で求めたディレイ値が、ディレイ基準値を越えているか否かを判定する。越えている場合には、符号A・Sで続く図4に示すステップ400に進み、越えていない場合には、ステップ340に進む。
【0023】
ここでは、ディレイ基準値を1000Dとして、以下、ステップ400以降の処理について、順次、図4〜図7を用いて説明する。
ステップ410〜440においては、配線の種類を、例えば、幅の狭い一般配線から、一般配線の3倍の幅を有する幅広配線に変更した場合を仮定したディレイ値の計算を実施する。
【0024】
次に、図4のステップ410において、配線条件処理部120は、例えば、幅広配線を、全体配線の90%に使用したと仮定してディレイ値を計算する。ここで、全ての配線を幅広配線とすることは、現実的に不可能なので、例えば、現実的な90%でまず、計算を実施する。
ここで、幅の狭い一般配線に対するディレイを求めるための係数を1.0としたとき、一般配線の3倍の幅を有する幅広配線に対するディレイを求めるための係数を0.5とすると、図12に示した配線のディレイ値は、(1200×10%×1.0)+(1200×90%×0.5)として求めることができ、660D(ディレイ)となる。
【0025】
次に、図4のステップ420において、配線条件処理部120は、ステップ410で求められた値で、基準ディレイ値を越えているか否かを判定する。越えている場合には、幅広配線のみによるディレイ改善では、ディレイ制約を守ることが不可能と判断されるため、図5のステップ500に進んで、次の改善策処理を実行する。また、越えていない場合には、ステップ430に進む。
【0026】
ここでは、基準値を越えていないものとして、ステップ430以降の処理について説明する。
図4のステップ430において、配線条件処理部120は、実際に幅広配線を最低何%使用すれば、基準値を厳守できるかの割合を算出する。図12に示した例において、具体的には、一般配線の配線長をx1とし、幅広配線の配線長をy1とすると、
x1+y1=1200
x1+0.5y1<1000
の連立方程式を満たすx1とy1を求めることにより、x1=800、y1=400となるので、幅広配線の割合は33.3%(=400/1200)となる。
【0027】
次に、図4のステップ440において、配線条件処理部120は、算出した幅広配線の使用率を幅広配線使用率として、パス情報に追加して配線条件情報230を作成する。
【0028】
ここで、図13を用いて、配線条件処理部120によって求められた配線条件情報230の一例について説明する。
図13において、第1行目と第2行目は、図11に示した配置情報220によって作成されたパス情報であり、第3行目は、幅広配線使用率の追加情報である。
第1行目のパス情報「SIG10 and1 A7 P3」からは、配線SIG10は、ブロックA7に配置された論理積素子and1の端子P3に接続されるものであり、また、第2行目のパス情報「or1 G1 P2」からは、配線SIG10は、ブロックG1に配置された論理和素子or1の端子P2に接続されることが記述されている。さらに、第3行目の追加情報は、「1w=66.6% 3w=33.3%」は、幅の狭い一般配線が66.6%であり、3倍幅の幅広配線が33.3%であることが記述されている。なお、配線条件情報230は、図13に示したものに限らず、他の記述を用いてもよいものである。
【0029】
次に、図4のステップ440が終了すると、符号(A・E)から図3の同符号に戻り、ステップ340の処理に進むことになる。
【0030】
次に、図5のステップ500以降の処理について説明する。
ここで、図14を用いて、ステップ510〜540の説明のための配線例について説明する。
【0031】
図14(A)は、論理積回路and2と論理和回路or2が、長さL3の配線Line3,長さL4の配線Line4,長さL5の配線Line5によって結線された仮想配線の状態を示している。なお、この例においては、説明を簡単にするため、最も厳しい条件としては、配線Line3としては、幅が狭い一般配線を用いるものとし、また、同一配線層内に配線するようにすることにより、配線負荷容量の大きな配線を用いるものとしている。
【0032】
従って、図14に示す例では、配線の長さL3,L4,L5をそれぞれ400格子とすると、そのディレイ値1200Dであり、ディレイ基準値(1000D)を越えている場合を示している。
【0033】
図5のステップ510において、配線条件処理部120は、使用する配線層を配線負荷容量の小さな層を90%使用した場合のディレイ値を計算する。
即ち、図14(B)に示すように、一般に配線層は、第1配線層PL1,第2配線層PL2,…のように、多層配線層が用いられる。そして、第1配線層PL1における一般配線に対するディレイを求めるための係数を1.0とすると、第2配線層PL2における一般配線に対するディレイを求めるための係数を、例えば、0.8のように、配線層毎に係数が異なっている。なお、以下の例では、2層の配線層があるものとして説明するが、3層以上の場合についても同様に求めることができるものである。
【0034】
全配線長は、1200格子であるので、その90%である1080格子の長さを第2の配線層を使用し、残りの120格子の長さを第1配線層を使用したとして、ディレイ値を求めると、984D(=120+1080×0.8)となる。
【0035】
なお、これも、ステップ410と同様に、全ての配線を負荷容量の小さな配線層を使用することは不可能なので、例えば、90%を使用したと仮定するようにしている。
【0036】
次に、図5のステップ520において、配線条件処理部120は、求められたディレイ値が、基準ディレイ値(1000D)を越えているか否かを判定する。越えている場合には、配線層の変更によるディレイ改善では、ディレイ制約を守ることが不可能と判断されるため、図6のステップ600に進んで、次の改善策処理を実行する。また、越えていない場合には、ステップ530に進む。
【0037】
ここでは、基準値を越えていないものとして、ステップ530以降の処理について説明する。
図5のステップ530において、配線条件処理部120は、実際にどの配線層を最低何%使用すれば、基準値を厳守できるかを、その割合を算出する。図14に示した例において、具体的には、第1配線層の配線長をx2とし、幅広配線の配線長をy2とすると、
x2+y2=1200
x2+0.8y2<1000
の連立方程式を満たすx2とy2を求めることにより、x2=200、y2=100となるので、幅広配線の割合は84%(=1000/1200)となる。
【0038】
次に、図5のステップ540において、配線条件処理部120は、算出した第2の配線層の使用率を第2の配線層使用率として、パス情報に追加して配線条件情報230を作成する。配線層使用率としては、例えば、図13に示す例に対して、さらに、第4行目の追加情報として、「PL1=16% PL2=84%」が記述されることになる。なお、配線条件情報230は、他の記述を用いてもよいものである。
【0039】
次に、図5のステップ540が終了すると、符号(B・E)から図3の同符号に戻り、ステップ340の処理に進むことになる。
【0040】
次に、図6のステップ600以降の処理について説明する。
ここで、図15を用いて、ステップ610〜640の説明のための配線例について説明する。
【0041】
図3のステップ320において説明した最もディレイが厳しくなる条件の中には、配線経路に並行する並行配線が存在するケースがあるので、その例について説明する。なお、ここでは、配線経路の一方にのみ並行配線があるものとして説明するが、配線経路の両側に並行配線があるものとしてもよいものである。
【0042】
図15は、論理積回路and3と論理和回路or3が、長さL6の配線Line6によって結線された仮想配線の状態を示している。なお、この例においては、説明を簡単にするため、最も厳しい条件としては、配線Line6としては、幅が狭い一般配線を用いるものとし、また、同一配線層内に配線するようにすることにより、配線負荷容量の大きな配線を用いるものとしている。
【0043】
さらに、配線Line6と並行に配線Line16が存在するものとする。並行配線が存在することにより、並行な配線間の容量により、負荷容量が増加することになる。増加する負荷容量の割合は、配線のプロセスによって,即ち、互いに並行な配線間の距離によって相違するものであるが、以下の説明では、配線長10辺りディレイ値が20Dだけ増加するものとする。
【0044】
従って、図14に示す例では、配線Line3の長さL3を500格子とすると、そのディレイ値500Dであり、さらに、並行配線Line13によるディレイ値1000D(=500×2)が追加されるため、全体のディレイ値は1500となり、ディレイ基準値(1000D)を越えている場合を示している。
【0045】
図6のステップ610において、配線条件処理部120は、該当する配線に対して並行配線が全体の90%存在しない場合を想定したディレイ値を計算する。
即ち、図15に示すように、配線Line16の配線長は、500格子としているので、その90%が存在しない場合、即ち、10%が並行配線(配線長:50格子)存在すると並行配線によるディレイ値は、100Dとなり、配線Line6の配線によるディレイ値は500Dであるため、全体のディレイ値は、600Dとなる。
【0046】
なお、これも、ステップ410,510と同様に、全ての配線経路について並行配線が存在しないケースは、現実的でないため、例えば、90%に並行次配線が存在しないことを仮定するようにしている。
【0047】
次に、図6のステップ620において、配線条件処理部120は、求められたディレイ値が、基準ディレイ値(1000D)を越えているか否かを判定する。越えている場合には、並行配線の変更によるディレイ改善では、ディレイ制約を守ることが不可能と判断されるため、図7のステップ700に進んで、次の改善策処理を実行する。また、越えていない場合には、ステップ630に進む。
【0048】
ここでは、基準値を越えていないものとして、ステップ630以降の処理について説明する。
図5のステップ630において、配線条件処理部120は、実際に並行配線がどれだけの比率で存在しなければ基準値を厳守できるかを、その割合を算出する。図15に示した例において、具体的には、配線Line6の配線長をx3とし、並行配線の配線長をy3とすると、
x3+2・y3<1000
として、x3=500であるので、y3=250となるので、存在しなければよい並行広配線の割合は 50%(=(500−250)/500)となる。
【0049】
次に、図6のステップ640において、配線条件処理部120は、算出した並行配線使用制限割合率を、当該配線のパス情報に並行配線使用率として、パス情報に追加して配線条件情報230を作成する。並行配線使用率としては、例えば、図13に示す例に対して、さらに、追加情報として、「PARALLEL=50%」が記述されることになる。なお、配線条件情報230は、他の記述を用いてもよいものである。
【0050】
次に、図6のステップ640が終了すると、符号(C・E)から図3の同符号に戻り、ステップ340の処理に進むことになる。
【0051】
次に、図7のステップ700以降の処理について説明する。
図4〜図6に示した処理は、いづれも、幅広配線や負荷容量の小さな配線層や並行配線の制限を、それぞれ、単独で行っているが、ステップ700以降の処理は、図6のステップ620において、超えていると判断された場合、上記の組み合わせで、制約を守れないかをシミュレーションする。
【0052】
即ち、図7のステップ710において、配線条件処理部120は、その一例として、幅広配線を50%使用して、さらに並行配線が全体90%存在しない場合を想定したディレイ値を計算する。なお、この組合せは、適宜選択できるものであり、例えば、幅広配線を50%使用して、さらに配線容量の小さな配線層が全体90%の場合を想定してもよいものである。
【0053】
次に、ステップ720において、配線条件処理部120は、求められたディレイ値が、基準ディレイ値を越えたか否かを判定する。越えた場合にはステップ750に進み、越えていない場合にはステップ730に進む。
ここで、ディレイ基準値を超えていれば、並行配線と幅広配線の組み合わせによるディレイ改善では、ディレイ制約を守ることが不可能と判断されるため、ステップ750において、配線条件処理部120は、この配線については配置改善の必要があることを意味する配置改善指示フラグを付加して、ステップ340の処理に移る。
【0054】
また、ディレイ基準値を超えないことが判明した場合、ステップ730において、配線条件処理部120は、実際に並行配線がどれだけの比率で存在しなければ基準値を厳守できるかを、その割合を算出する。算出方法は、上述した方法を組み合わせて用いることができる。
【0055】
次に、ステップ740において、配線条件処理部120は、ここで算出した並行配線使用制限割合率を当該配線のパス情報に並行配線使用率として記入して、さらに幅広配線使用率についても50%と記入する。
【0056】
次に、図7のステップ740若しくはステップ750が終了すると、符号(D・E)から図3の同符号に戻り、ステップ340の処理に進むことになる。
ここで、図3のステップ340に戻り、配線条件処理部120は、全てのパス(配線)についてステップ320以降の処理が実施されたか否かを判定し、実施されていない場合には、ステップ320に戻り、上述の処理を繰り返し、実施されている場合には、ステップ350に進む。
【0057】
ステップ350において、配線条件処理部120は、前記処理において、配置改善の必要なパスが存在したか判定する。これは、ステップ750の処理によって追加された配置変更の指示の有無をチェックすることにより行われる。存在した場合には、ステップ310に戻り、そのパスを含むゲートの配置改善処理を実施して、配置が変更されたゲートに含まれる配線について、再度、ステップ320〜350までの処理を実施して、全てのパスがディレイ値を厳守可能とする。
配置改善とディレイ検証が終了すると、ステップ360に進む。
【0058】
なお、以上の説明では、配線制限の組み合わせについては、一例しか詳細に説明しなかったが、並行配線の制約を50%と仮定して幅広配線を調整したり、その他、各要素をそれぞれ可変に調整して、制約を守る組み合わせを見つけだすことも可能である。実際にどの組み合わせを使用するかは、どの要素が、どれだけ制約値に影響をおよぼすか、対象となる半導体のプロセス技術によりそれぞれ異なるので、プロセス技術に応じて適宜選択できるものである。この組み合わせは、対象となる半導体によりそれぞれ、異なるものである。これに柔軟に対処するため、プログラムの処理としては、各項目の優先順位、割合指定などをパラメタにより外部より可能とすることで、容易に対応可能である。
【0059】
図3のステップ360において、配線処理部130は、パス情報に追加された制限情報に基づいて配線処理を行い、求められた配線結果を、配線情報240に出力する。配線処理では、ディレイシミュレーションで算出した各要素(幅広配線使用率,配線層使用率,並行配線使用制限等)に従って、配線制御を実施して配線処理を行う。
【0060】
ここで、図16及び図17を用いて、配線処理の結果の一例について説明する。
例えば、図12に示した配線に対して、図13に「1W=66.6% 3W=33.3%」という幅広配線使用率の制限が配線条件情報として追加されている場合、配線処理部130は、幅広配線が33.3%以下となるように配線する。その結果が、例えば、図16に示すようになったものとする。配線は、(X,Y)座標軸によって表されており、図示の例では、座標(100,700)から座標(100,100)までの600格子分と、座標(100,100)から座標(300,100)までの200格子分は、幅の狭い一般配線とし、座標(300,100)から座標(700,100)までの400格子分を幅広配線とすることにより、幅広配線が33.3%以下となる。なお、幅広配線とする位置は、他の配線との関係によって変わるものとであり、例えば、座標(100,700)から座標(100,300)までの400格子分を幅広配線としたり、中央の配線を幅広配線とすることもありうるものである。
【0061】
ここで、図17を用いて、配線情報240について説明する。
図17に示すように、配線情報240の第1行目の「SIG10 100,700−100,100 1W」は、配線SIG10は、座標(100,700)から座標(100,100)まで一般配線を使用することを示している。また、第2行目の「100,100−300,100 1W」は、配線SIG10は、座標(100,100)から座標(300,100)まで一般配線を使用することを示している。第3行目の「300,100−700,100 3W」は、配線SIG10は、座標(300,100)から座標(700,100)まで幅広配線を使用することを示している。
【0062】
以上のようにして、仮想配線を用いて、配線条件を予め求めた上で、配線処理を行うことにより、実際の配線後において、ディレイ制約違反を起す配線を、極めて少なく押さえることが可能となる。
また、幅広配線の使用量は、最低限の使用量に抑えられるため配線効率が向上するほか、チップサイズをより小さくすることもできる。
さらに、並行配線の制約についても、最低限の制約とすることで、配線有効チャネルが増加して、未配線を防止でき、また、チップサイズをより小さくすることもできる。
【0063】
以上説明したように、本実施形態によれば、同一論理において、ディレイ制約を厳守する半導体集積回路を作成した場合、従来よりも消費電力を低減して回路を作成可能となる。
また、幅広配線を使用した場合の結果を配置結果よりシミュレーションすることで、その効果のある配線のみ適用することが可能となり、無駄な幅広配線の使用を抑止することができる。従って、通常の配線チャネルが増加することになり、未配線の防止でき、並行配線の削減が可能となる。
さらに、並行配線を削減することは、ディレイのばらつきをなくし、さらに高速化化することができる。
また、配置結果によりシミュレーションすることで、配線後に違反となり、再配線を行う事態を回避することができる。
さらに、配線負荷容量の異なる配線層を使用して、その使用割合からディレイ許容値を厳守する割合を計算して、その割合で実際の配線を実施することで、幅広配線を使用しなくても、ディレイ制約を厳守可能な解を見い出すことが可能となり、幅広配線の使用量を削減できる。
また、並行配線が存在しない場合のディレイをシミュレーションすることで、それにより制約が厳守可能な解を見い出すことが可能となり、幅広配線の使用量を削減できる。
さらに、並行配線禁止の条件を配線個別に設定可能とすることで、配線有効チャネルが増加して、一般配線の配線が容易になり、未配線を防止でき、配線処理時間を短縮できる。
【0064】
なお、本発明は上述した各実施形態に限られるものではなく、その趣旨に逸脱しない範囲で種々変形して実施することができる。
【0065】
なお、本発明の実施態様は、以下のとおりである。
1)半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、幅広配線の使用率を示す情報,配線負荷容量の小さな配線層の使用率を示す情報,並行配線の使用率を示す情報の少なくとも2つの情報を組み合わせてパス情報に追加して配線条件情報を作成することを特徴とする半導体集積回路の配線条件処理方法。
【0066】
2)半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、幅広配線の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする半導体集積回路の配線条件処理システム。
【0067】
3)半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、配線負荷容量の小さな配線層の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする半導体集積回路の配線条件処理システム。
【0068】
4)半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、並行配線の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする半導体集積回路の配線条件処理システム。
【0069】
5)半導体集積回路の配線条件処理システムに用いられる記録媒体において、半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、幅広配線の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする記録媒体。
【0070】
6)半導体集積回路の配線条件処理システムに用いられる記録媒体において、半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、配線負荷容量の小さな配線層の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする記録媒体。
【0071】
7)半導体集積回路の配線条件処理システムに用いられる記録媒体において、半導体素子の基板上の配置情報に基づく仮想配線長のディレイ値が基準値を越えている場合、並行配線の使用率を示す情報をパス情報に追加して配線条件情報を作成する配線処理部を備えたことを特徴とする記録媒体。
【0072】
【発明の効果】
本発明によれば、回路の消費電力を低減でき、しかも、配線チャネルを多くできる。
【図面の簡単な説明】
【図1】本発明の一実施形態による配線条件処理方法を用いる配線システムの全体構成を示すブロック図である。
【図2】本発明の一実施形態による配線条件処理方法を用いる配線システムを動作させる際のハードウエア構成のブロック図である。
【図3】本発明の一実施形態による配線条件処理方法を含む配線システムの処理内容を示すフローチャートである。
【図4】本発明の一実施形態による配線条件処理方法を含む配線システムの処理内容を示すフローチャートである。
【図5】本発明の一実施形態による配線条件処理方法を含む配線システムの処理内容を示すフローチャートである。
【図6】本発明の一実施形態による配線条件処理方法を含む配線システムの処理内容を示すフローチャートである。
【図7】本発明の一実施形態による配線条件処理方法を含む配線システムの処理内容を示すフローチャートである。
【図8】本発明の一実施形態による配線条件処理方法に用いる論理情報の元となる素子間の結線関係の一例の説明図である。
【図9】本発明の一実施形態による配線条件処理方法に用いる論理情報の一例の説明図である。
【図10】本発明の一実施形態による配線条件処理方法に用いる配置情報の元となる素子の配置関係の一例の説明図である。
【図11】本発明の一実施形態による配線条件処理方法に用いる配置情報の一例の説明図である。
【図12】本発明の一実施形態による配線条件処理方法によって求められた仮想配線路の一例の説明図である。
【図13】本発明の一実施形態による配線条件処理方法によって得られた配線条件情報の一例の説明図である。
【図14】本発明の一実施形態による配線条件処理方法によって求められた仮想配線路の他の例の説明図である。
【図15】本発明の一実施形態による配線条件処理方法によって求められた仮想配線路の他の例の説明図である。
【図16】本発明の一実施形態による配線処理によって求められた配線の一例の説明図である。
【図17】本発明の一実施形態による配線処理によって求められた配線情報の一例の説明図である。
【符号の説明】
100…配線システム
110…配置処理部
120…配線条件処理部
130…配線処理部
210…論理情報
220…配置情報
230…配線条件情報
240…配線情報
10…キーボード
20…ディスプレイ装置
30…ハードディスク
40…CPU
50…媒体駆動装置
52…記録媒体
Claims (1)
- 半導体集積回路の配線条件処理方法において、
半導体集積回路の素子間の結線関係を示す結線情報である論理情報に基づいて、回路基板上における前記各素子の配置を求め、前記各素子の配置を示す配置情報を出力する第1のステップと、
前記配置情報から仮配線経路を算出し、該配線経路に基づいて最もディレイの厳しい条件の下で配線ディレイ値を求める第2のステップと、
該第2のステップで求められた前記ディレイ値が基準値を超えてない場合には、仮配線経路に基づいて配線条件情報を作成する第3のステップと、
前記第2のステップで求められた前記ディレイ値が前記基準値を超えている場合には、幅広配線を予め決めた率だけ使用したと仮定した配線ディレイ値を求める第4のステップと、
該第4のステップで求められた前記配線ディレイ値が基準値を超えている場合には、配線負荷容量の小さな配線層を予め決めた率だけ使用したと仮定して配線ディレイ値を求める第5のステップと、
該第5のステップで求められた前記配線ディレイ値が基準値を超えている場合には、平行配線を予め決めた率だけ使用したと仮定して配線ディレイ値を求める第6のステップと、
該第6のステップで求められた前記配線ディレイ値が基準値を超えている場合には、前記幅広配線の使用率,前記配線負荷容量の小さな配線の使用率及び前記平行配線の使用率のいずれかを変えた組合せを選択して、配線ディレイ値を求める第7のステップと、
該第7のステップで求められた前記配線ディレイ値が基準値を超えている場合には、配置変更の指示を追加する第8のステップと、
前記第7のステップで求められた前記配線ディレイ値が基準値を超えてない場合には、平行配線の使用率を最低いくらとすれば前記基準値を遵守できるかの割合を算出し、算出した使用率を示す情報を追加して配線条件情報を作成する第9のステップと、
前記第4のステップ,前記第5のステップ及び前記第6のステップで前記ディレイ値が前記基準値を超えてない場合には、前記幅広配線の使用率,前記配線負荷容量の小さな配線の使用率及び前記平行配線の使用率を最低いくらとすれば前記基準値を遵守できるかの割合を算出し、算出した使用率を示す情報を追加して配線条件情報を作成する第10のステップと、
前記第2のステップ及び前記第7のステップで求めた前記ディレイ値が前記基準値を超えてない場合、及び、前記第10のステップの後に、前記配線条件情報に基づいて、実際の配線経路を求め、配線情報を出力する第11のステップとを備えることを特徴とする半導体集積回路の配線条件処理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27137098A JP4515544B2 (ja) | 1998-09-25 | 1998-09-25 | 半導体集積回路の配線条件処理方法 |
US09/405,082 US6401233B1 (en) | 1998-09-25 | 1999-09-27 | Semiconductor integrated circuit wiring condition processing method |
US10/133,574 US6836876B2 (en) | 1998-09-25 | 2002-04-29 | Semiconductor integrated circuit wiring condition processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27137098A JP4515544B2 (ja) | 1998-09-25 | 1998-09-25 | 半導体集積回路の配線条件処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000100956A JP2000100956A (ja) | 2000-04-07 |
JP4515544B2 true JP4515544B2 (ja) | 2010-08-04 |
Family
ID=17499133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27137098A Expired - Fee Related JP4515544B2 (ja) | 1998-09-25 | 1998-09-25 | 半導体集積回路の配線条件処理方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US6401233B1 (ja) |
JP (1) | JP4515544B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3447673B2 (ja) * | 2000-06-29 | 2003-09-16 | Necエレクトロニクス株式会社 | 半導体装置の設計方法及び半導体装置の製造方法 |
US6587999B1 (en) * | 2001-05-15 | 2003-07-01 | Lsi Logic Corporation | Modeling delays for small nets in an integrated circuit design |
US7624367B2 (en) * | 2002-11-18 | 2009-11-24 | Cadence Design Systems, Inc. | Method and system for routing |
JP4311244B2 (ja) * | 2004-03-19 | 2009-08-12 | 株式会社日立製作所 | 配線経路決定方法及びシステム |
US8187535B2 (en) | 2004-06-14 | 2012-05-29 | Parker-Hannifin Corporation | Robotic handling system and method with independently operable detachable tools |
JP2006073955A (ja) * | 2004-09-06 | 2006-03-16 | Fujitsu Ltd | 半導体装置、設計装置、レイアウト設計方法、プログラム及び記録媒体 |
JP2006227762A (ja) * | 2005-02-15 | 2006-08-31 | Nec Electronics Corp | 半導体集積回路の設計方法、および半導体集積回路の設計装置 |
US7487478B2 (en) * | 2006-03-20 | 2009-02-03 | Inventec Corporation | Method for dynamically adjusting parameter values of part heights to verify distances between parts |
WO2009084092A1 (ja) * | 2007-12-27 | 2009-07-09 | Fujitsu Limited | マクロ用レイアウト検証装置及び検証方法 |
JP2009170459A (ja) * | 2008-01-10 | 2009-07-30 | Panasonic Corp | 半導体集積回路装置の設計方法、設計装置および半導体集積回路装置 |
TW201235874A (en) * | 2011-02-24 | 2012-09-01 | Hon Hai Prec Ind Co Ltd | System and method of filtering electronic circuits |
US10684642B2 (en) * | 2018-03-20 | 2020-06-16 | International Business Machines Corporation | Adaptive clock mesh wiring |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03101232A (ja) * | 1989-09-14 | 1991-04-26 | Mitsubishi Electric Corp | 集積回路内の配置配線方法 |
JPH04151853A (ja) * | 1990-10-15 | 1992-05-25 | Hitachi Ltd | 配線方法 |
JPH06243199A (ja) * | 1993-02-19 | 1994-09-02 | Hitachi Ltd | 半導体集積回路及びその素子配置配線方法 |
JPH07325855A (ja) * | 1994-05-31 | 1995-12-12 | Mitsubishi Electric Corp | 自動配置配線装置、自動配置配線方法及びその方法を用いて自動配置配線された半導体集積回路 |
JPH0951037A (ja) * | 1995-08-04 | 1997-02-18 | Hitachi Ltd | 半導体集積回路配線方法及び半導体集積回路 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2863684B2 (ja) * | 1993-03-09 | 1999-03-03 | 株式会社日立製作所 | 半導体集積回路のディレイ最適化システム、および、ディレイ最適化方法 |
JPH10124563A (ja) * | 1996-08-27 | 1998-05-15 | Matsushita Electric Ind Co Ltd | 論理回路の遅延計算方法、その遅延計算装置及び遅延ライブラリの遅延データ計算方法 |
US5896300A (en) * | 1996-08-30 | 1999-04-20 | Avant| Corporation | Methods, apparatus and computer program products for performing post-layout verification of microelectronic circuits by filtering timing error bounds for layout critical nets |
-
1998
- 1998-09-25 JP JP27137098A patent/JP4515544B2/ja not_active Expired - Fee Related
-
1999
- 1999-09-27 US US09/405,082 patent/US6401233B1/en not_active Expired - Lifetime
-
2002
- 2002-04-29 US US10/133,574 patent/US6836876B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03101232A (ja) * | 1989-09-14 | 1991-04-26 | Mitsubishi Electric Corp | 集積回路内の配置配線方法 |
JPH04151853A (ja) * | 1990-10-15 | 1992-05-25 | Hitachi Ltd | 配線方法 |
JPH06243199A (ja) * | 1993-02-19 | 1994-09-02 | Hitachi Ltd | 半導体集積回路及びその素子配置配線方法 |
JPH07325855A (ja) * | 1994-05-31 | 1995-12-12 | Mitsubishi Electric Corp | 自動配置配線装置、自動配置配線方法及びその方法を用いて自動配置配線された半導体集積回路 |
JPH0951037A (ja) * | 1995-08-04 | 1997-02-18 | Hitachi Ltd | 半導体集積回路配線方法及び半導体集積回路 |
Also Published As
Publication number | Publication date |
---|---|
US6401233B1 (en) | 2002-06-04 |
US6836876B2 (en) | 2004-12-28 |
US20020120913A1 (en) | 2002-08-29 |
JP2000100956A (ja) | 2000-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4515544B2 (ja) | 半導体集積回路の配線条件処理方法 | |
JP2800527B2 (ja) | フロアプラン装置 | |
JP4045113B2 (ja) | 半導体集積回路の設計方法、プログラム及び記録媒体 | |
JP4776124B2 (ja) | 半導体集積回路装置、配線生成方法及び配線生成装置 | |
US20030046650A1 (en) | Automatic placement and routing apparatus | |
CN117688894B (zh) | 芯片布局优化方法、装置、计算机设备及存储介质 | |
JP4191986B2 (ja) | 半導体集積回路装置の設計方法及び設計装置 | |
Marquardt | Cluster-based architecture, timing-driven packing and timing-driven placement for FPGAs | |
JP3422645B2 (ja) | 回路素子配置装置 | |
JP4248925B2 (ja) | 自動フロアプラン決定方法 | |
JPH04251961A (ja) | Cadによる回路ブロックの配置設計方式 | |
JPS62219071A (ja) | アニメ−シヨン表示制御処理方式 | |
JP2950250B2 (ja) | 対話型フロアプラン装置 | |
JP2000029919A (ja) | 論理回路改善方法および論理回路改善方式 | |
JP3164503B2 (ja) | 配線パターン作成装置 | |
JPH0423347A (ja) | 半導体集積回路及びその配置配線方法 | |
JPH06310601A (ja) | レイアウト設計方法 | |
JP2001291772A (ja) | 集積回路のための自動レイアウト方法および装置 | |
JPH08288395A (ja) | 配置処理方法及び配置処理装置 | |
JPH06216249A (ja) | Icチップ自動レイアウト設計システム | |
JPH04151853A (ja) | 配線方法 | |
JP3033763B1 (ja) | 半導体集積回路の遅延低減配置処理装置および遅延低減配置処理方法 | |
JPH06131414A (ja) | 回路合成方式 | |
JPH11163149A (ja) | フロアプラン装置、フロアプラン方法、フロアプラン処 理プログラムを記録した記録媒体 | |
JPH05334399A (ja) | 回路配置修正システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050822 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081014 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081016 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090609 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090803 |
|
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: 20100511 |
|
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: 20100513 |
|
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: 20130521 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |