JP2004128436A - 半導体集積回路及び半導体集積回路の設計方法 - Google Patents
半導体集積回路及び半導体集積回路の設計方法 Download PDFInfo
- Publication number
- JP2004128436A JP2004128436A JP2002352452A JP2002352452A JP2004128436A JP 2004128436 A JP2004128436 A JP 2004128436A JP 2002352452 A JP2002352452 A JP 2002352452A JP 2002352452 A JP2002352452 A JP 2002352452A JP 2004128436 A JP2004128436 A JP 2004128436A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- integrated circuit
- connection
- interval
- 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.)
- Pending
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
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2924/00—Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
- H01L2924/0001—Technical content checked by a classifier
- H01L2924/0002—Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00
Abstract
【課題】様々な要求事項を満足する設計を効率的に行うことのできる半導体集積回路及びその設計方法を提供する。
【解決手段】グリッド設定部40において様々なグリッド間隔を設定した後、これら各グリッド間隔に従って配置の終了した機能セル間の仮の結線を概略配線部22にて行う。これら各グリッド間隔毎に、仮の結線の行われた集積回路の配線混雑度に基づき、配線混雑度解析部30にて詳細配線部24による結線の完了に要する時間がそれぞれ予測される。また、同各グリッド間隔毎に、クロストークノイズ解析部32では、仮の結線の行われた集積回路のクロストークノイズを解析し、これに基づき詳細配線部24による結線の完了された集積回路に生じるクロストークノイズがそれぞれ予測される。そして、グリッド設定部40では、これらの予測に基づき、最終的なグリッド間隔を決定する。
【選択図】 図1
【解決手段】グリッド設定部40において様々なグリッド間隔を設定した後、これら各グリッド間隔に従って配置の終了した機能セル間の仮の結線を概略配線部22にて行う。これら各グリッド間隔毎に、仮の結線の行われた集積回路の配線混雑度に基づき、配線混雑度解析部30にて詳細配線部24による結線の完了に要する時間がそれぞれ予測される。また、同各グリッド間隔毎に、クロストークノイズ解析部32では、仮の結線の行われた集積回路のクロストークノイズを解析し、これに基づき詳細配線部24による結線の完了された集積回路に生じるクロストークノイズがそれぞれ予測される。そして、グリッド設定部40では、これらの予測に基づき、最終的なグリッド間隔を決定する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路及びその設計方法に関する。
【0002】
【従来の技術】
近年、集積回路、特に半導体集積回路にあっては、その微細加工技術の進展により、半導体集積回路内の配線幅や隣接する配線間の間隔は縮小される傾向にある。これに対し、同半導体集積回路内の配線の膜厚については、配線抵抗の増加抑制やエレクトロマイグレーション等に起因する断線の防止を図る必要があることから、上記配線幅や隣接する配線間の間隔ほどには縮小が図られない。このため、集積回路の微細化につれて、絶縁層を介して配線と基板との間に形成される静電容量(カップリング容量)よりも、絶縁物を介して隣接する配線間に形成される静電容量(カップリング容量)の影響が大きなものとなりつつある。
【0003】
この隣接配線間に形成される静電容量の影響としては、一方の配線の電位変化が他方の配線の電位を変化させるクロストークノイズがある。そしてこのクロストークノイズの影響が大きくなると半導体集積回路が誤動作を起こす可能性が増大する。すなわち、グリッチ(ひげ)と呼ばれるノイズの発生によって順序回路の出力論理信号が論理反転を引き起こしたり、信号伝播速度の変化である遅延変動が生じることに起因して実際の動作速度が所望の動作速度からずれたものとなったりする。
【0004】
ところで、このクロストークノイズは、狭い配線間隔で長距離に渡って隣接している同層配線のうち、それを駆動するドライバの駆動能力が小さかったり、あるいは電荷保持能力が弱い配線について特に生じやすい。よって、半導体集積回路の配置や結線を実施するときには、問題箇所を抽出して対策することが不可欠となる。
【0005】
そこで従来は、セルの配置及びセル間等の結線を所定間隔のグリッドを用いて行う汎用の自動配置配線ツールにおいても、こうしたクロストークノイズの対策として、
(1)設計者側でクロストークノイズの上限値を設定する。
(2)カップリング容量及び配線の抵抗を自動抽出する。
(3)全配線についてクロストークノイズを算出する。
(4)上記算出されたノイズが上記設定された上限値を超える場合に違反と判定する。
(5)違反と判定された箇所の両側の配線をグリッド所定間隔の2倍若しくはそれ以上に引き離す。
といった手順による設計手法がよく用いられている。
【0006】
ちなみに、クロストークノイズ対策としてはこの他にも、上記(5)の工程に代えて、
(6)配線の電位保持能力を上げるために、ドライバの駆動能力を上げたり中継バッファを挿入したりする(特許文献1)。
あるいは
(7)クロストークノイズによる遅延変動を相殺できるように、中継インバータを挿入して、一方の配線の電位変化と他方の配線の電位変化とが同相及び逆相を繰り返すようにする(特許文献2)。
といった手法が用いられることもある。
【0007】
なお、こうした従来の技術としては、この他にも下記特許文献3がある。
【0008】
【特許文献1】
特開平10−27194号
【特許文献2】
特開2001−148426号
【特許文献3】
特開2002−16141
【0009】
【発明が解決しようとする課題】
ところで、上記自動配置配線ツールを用いた設計手法における上記(1)〜(5)の工程では、クロストークノイズ対策は、自動配置配線ツールにて結線の完了された後に行われることとなる。したがって、この後、上記(5)の工程において、クロストークノイズが上限値を超える箇所について設計変更を行うと、これに伴いクロストークノイズが上限値を超えない箇所の配線についてもその配置、結線態様の変更を余儀なくされることも多い。このため、結果としてクロストークノイズ対策に多大な時間を要することとなっていた。
【0010】
一方、設定されたクロストークノイズの上限値に基づく上記(6)〜(7)のクロストークノイズ対策は通常、熟練者によって行われている。ただし、たとえ熟練者とはいえ、違反と判定される箇所毎に適切な対策を施すことは容易ではなく、そのために費やす時間も膨大なものとなっている。
【0011】
なお、上記クロストークノイズ以外にも、特に近年における微細化された半導体集積回路では、隣接する配線間のカップリング容量の充放電で消費される電力の増大が大きな問題となりつつある。そして、こうしたカップリング容量の影響に対する対策等にあっては、設計時間の長期化が懸念されるこうした実情も概ね共通したものとなっている。
【0012】
本発明は上記実情に鑑みてなされたものであり、その目的は、様々な要求事項を満足する設計を効率的に行うことのできる半導体集積回路及びその設計方法を提供することにある。
【0013】
【課題を解決するための手段】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項1記載の発明は、同一配線層内の所定の領域において、互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が、所定の最小間隔の整数倍であって、且つ製造工程における最小加工精度の整数倍とならない間隔に設定されてなることをその要旨とする。
【0014】
上記構成では、所定の最小間隔が製造工程における最小加工精度の整数倍とならない間隔に設定されているために、最小加工精度の整数倍に設定した場合と比較して、結線にかかる自由度を好適に確保することができる。
【0015】
例えば、集積回路の設計に際して回路の結線の完了の可能性とクロストークノイズ対策との両立に際しても、その線幅に対する中心線の間隔の設定にかかる自由度が増加し、これら2つの要求事項を両立させることができる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0016】
更に、上記構成によれば、上記所定の最小間隔を最小加工精度の整数倍に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、消費電力等、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0017】
また、上記構成では、当該集積回路の所定の領域においては、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0018】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0019】
請求項2記載の発明は、機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、当該集積回路の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなることをその要旨とする。
【0020】
半導体集積回路に要求されるクロストークノイズの上限値は、機能ブロック毎に異なることがある。例えば、高速動作を所望する機能ブロックは、集積回路内の他の機能ブロックと比較してクロストークノイズの上限値を低く設定することが望ましい。
【0021】
この点、上記構成では、配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているとともに、この所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなるために、集積回路の設計に際して結線の完了の可能性とクロストークノイズ対策との両立を図ることができる。すなわち、クロストークノイズの上限値を低く設定することが要求される機能ブロックについては、所定の最小間隔を他より大きくすることで、この要求を満たすことができる。また、それ以外の機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に行うこともできる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0022】
更に、上記構成によれば、上記所定の最小間隔を一律に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0023】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。この点、上記構成では、配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているとともに、この所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなるために、集積回路の設計に際して回路の結線の完了の可能性と消費電力についての要求事項とを両立させることができる。
【0024】
また、上記構成では、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0025】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0026】
請求項3記載の発明は、多層配線構造を有するとともに機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、当該集積回路の所定の配線層の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が、少なくとも2つの機能ブロック間で互いに異ならしめられてなることをその要旨とする。
【0027】
半導体集積回路の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによるクロストークノイズの低減効果は、層毎に異なることが多い。
【0028】
また、半導体集積回路に要求されるクロストークノイズの上限値は、機能ブロック毎に異なることがある。例えば、高速動作を所望する機能ブロックは、集積回路内の他の機能ブロックと比較してクロストークノイズの上限値を低く設定することが望ましい。
【0029】
この点、上記構成では、所定の配線層の機能ブロック内についての互いに平行に設けられている配線は、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されており、且つ、前記所定の間隔が、少なくとも2つの機能ブロック間で互いに異ならしめられている。このため、上記構成によれば、集積回路の設計に際して回路の結線の完了の可能性とクロストークノイズ対策とを両立させることができる。すなわち、所定の配線層において、クロストークノイズの上限値を低く設定することが要求される機能ブロックについては所定の最小間隔を他より大きくすることで、クロストークノイズ対策を的確に行うことができる。また、所定の配線層においてクロストークノイズの上限値についての要求が厳しくない機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に行うこともできる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0030】
更に、上記構成によれば、上記所定の最小間隔を一律に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0031】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。この点、上記構成では、上記所定の最小間隔が所定の配線層の機能ブロック間で互いに異ならしめられているために、集積回路の設計に際して回路の結線の完了の可能性と消費電力についての要求事項とを両立させることができるようになる。
【0032】
また、上記構成では、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0033】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0034】
請求項4記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールを用いて結線する半導体集積回路の設計方法において、前記結線に際し、複数の配線の線幅に対する中心線の間隔を、当該半導体集積回路の製造工程における最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることをその要旨とする。
【0035】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0036】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0037】
更に、上記設計方法によれば、上記間隔を最小加工精度の整数倍のみに設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0038】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。これに対し、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、消費電力についての要求事項を満足しつつも配線リソースの低減を好適に抑制することができる。
【0039】
請求項5記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する多層配線構造を有する半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、及びb.前記設定された配線間隔にて前記結線を行う工程、及びc.前記各配線間のクロストークノイズのピーク値を算出する工程、の各工程を備え、クロストークノイズのピーク値が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記配線間隔を各配線層毎に適宜変更して前記b及びcの工程を繰り返すことをその要旨とする。
【0040】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによるクロストークノイズの低減効果は、層毎に異なることが多い。
【0041】
この点、上記設計方法では、クロストークノイズのピーク値が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、配線間隔を各配線層毎に適宜変更して上記b及びcの工程を繰り返す。このため、集積回路の設計に際して結線の完了の可能性とクロストークノイズ対策との両立を図ることができる。すなわち、クロストークノイズの低減効果の大きな層について所定の最小間隔を他より大きくすることで、クロストークノイズ対策を的確に行うことができる。また、クロストークノイズ低減効果の顕著でない層については、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0042】
請求項6記載の発明は、請求項5記載の発明において、前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされることをその要旨とする。
【0043】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0044】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0045】
請求項7記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、それらの配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、それらの各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、を備えることをその要旨とする。
【0046】
上記設計方法では、先ず仮の配線を行いこの仮の結線から予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて当該集積回路内に形成される配線間隔を決定する。このため、所望する結線完了時間及び所望するクロストークノイズの制限を満たすようにして結線を行うことができるようになる。このため、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0047】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0048】
請求項8記載の発明は、請求項7記載の発明において、当該半導体集積回路は、スタンダードセルを用いて設計されるものであって、且つ、前記仮の結線を行う工程の後の工程として、前記配線間隔を最終的に決定する工程に先立ち、前記様々に設定された配線間隔のそれぞれについて、それらの配線の混雑度に基づき結線の完了が可能か否かを判定する工程を更に備え、可能でないと判定されるものがあるときには、半導体集積回路の総面積にしめる機能セルの面積の割合を低減させた後、前記仮の結線を行う工程から前記各工程を再実行することをその要旨とする。
【0049】
スタンダードセル方式を用いて半導体集積回路を設計する際には、半導体集積回路の総面積にしめる機能セルの面積の割合であるセル使用率が大きいほど、配線の混雑度が大きく結線の完了が困難となりやすい。
【0050】
この点、上記設計方法では、配線の混雑度に基づき結線の完了が可能か否かを判定する工程を更に備え、可能でないと判定されるものがあるときには、半導体集積回路の総面積にしめる機能セルの面積の割合を低減させることで、結線を確実に完了させることができるようになる。
【0051】
なお、セル使用率は、その初期値としては、面積縮小の観点から極力大きな値に設定することが望ましい。
請求項9記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、その配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、その各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、を備えることをその要旨とする。
【0052】
上記設計方法では、先ず仮の配線を行いこの仮の結線から予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて、仮の結線における配線間隔の設定態様が当該集積回路内の結線を完了する際に適切であるか否かを評価する。このため、仮の結線における配線間隔の設定態様が、所望する結線完了時間及び所望するクロストークノイズの制限を満たすか否かを早期に把握することができるようになる。このため、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0053】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0054】
請求項10記載の発明は、請求項7〜9のいずれかに記載の発明において、前記配線の混雑度に基づいた結線完了時間の予測は、仮の結線の行われた配線の混雑度と結線完了時間との関係を定めたデータベースに基づき行われ、前記結線完了時に生じるクロストークノイズの予測は、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めたデータベースに基づき行われることをその要旨とする。
【0055】
上記設計方法では、配線の混雑度に基づいた結線完了時間の予測や結線完了時に生じるクロストークノイズの予測を的確に行うことができる。なお、仮の結線の行われた集積回路の配線の混雑度と結線完了時間との関係を定めたデータベースは、当該半導体集積回路の設計に際しての制約となるパラメータ毎に分類されたデータを有することが望ましい。また、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めたデータベースも、当該半導体集積回路の設計に際しての制約となるパラメータ毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積などがある。
【0056】
請求項11記載の発明は、機能単位でモジュール化された複数の機能ブロック及び多層配線構造の少なくとも一方を有する集積回路の各箇所であって、且つ配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、及びb.前記設定された配線間隔にて前記結線を行う工程、及びc.前記結線の行われた集積回路の消費電力を算出する工程、の各工程を備え、前記消費電力が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記機能ブロック及び配線層の少なくとも一方毎に前記配線間隔を適宜変更して前記b及びcの工程を繰り返すことをその要旨とする。
【0057】
半導体基板の総面積を一定とした場合、消費電力を低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによる消費電力の低減効果は、層毎に異なることが多い。また、機能ブロックを有する半導体集積回路においては、配線間隔を広げることによる消費電力の低減効果は、機能ブロック毎に異なることが多い。
【0058】
この点、上記設計方法では、消費電力が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、機能ブロック及び配線層の少なくとも一方毎に配線間隔を適宜変更して上記b及びcの工程を繰り返す。このため、集積回路の設計に際して結線の完了の可能性と消費電力の低減との両立を図ることができる。
【0059】
すなわち、例えば、消費電力の低減効果の大きな層について配線間隔を他より大きくすることで、消費電力を的確に低減することができる。一方、消費電力の低減効果の顕著でない層については、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。
【0060】
また、例えば、消費電力の低減効果の大きな機能ブロックについて配線間隔を他より大きくすることで、消費電力を的確に低減することができる。一方、消費電力の低減効果の顕著でない機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。
【0061】
したがって、上記設計方法によれば、消費電力の低減を効率的に行うことができるようになる。
請求項12記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、を備えることをその要旨とする。
【0062】
一般に、配線の混雑度は、結線完了時間と相関がある。
この点、上記設計方法では、先ず仮の結線を行いこの仮の結線の行われた集積回路の消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線混雑度とに基づいて当該集積回路内に形成される配線間隔を決定する。このため、所望する結線完了時間及び消費電力の制限を満たすようにして結線を行うことができるようになる。したがって、上記設計方法によれば、消費電力についての要求事項を満たす集積回路の設計を効率的に行うことができるようになる。
【0063】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0064】
請求項13記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、を備えることをその要旨とする。
【0065】
上述のように、配線の混雑度は、結線完了時間と相関がある。
この点、上記設計方法では、先ず仮の結線を行いこの仮の結線の行われた集積回路についての消費電力と配線の混雑度とに基づいて、仮の結線における配線間隔の設定態様が当該集積回路内の結線を完了する際に適切であるか否かを評価する。このため、仮の結線における配線間隔の設定態様が、所望する結線完了時間及び所望する消費電力の条件を満たすか否かを早期に把握することができるようになる。したがって、上記設計方法によれば、消費電力についての要求事項を満たす集積回路の設計を効率的に行うことができるようになる。
【0066】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0067】
請求項14記載の発明は、請求項7〜13のいずれかに記載の発明において、前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされることをその要旨とする。
【0068】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0069】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0070】
更に、上記設計方法によれば、上記中心線の間隔を最小加工精度の整数倍のみに設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0071】
例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。これに対し、結線に際して、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、消費電力についての要求事項を満足しつつも配線リソースの低減を好適に抑制することができる。
【0072】
【発明の実施の形態】
(第1の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第1の実施形態について、図面を参照しつつ説明する。
【0073】
図1は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、この支援装置はスタンダードセル方式の設計を支援する装置として構成されている。
【0074】
はじめに、同支援装置を構成する各部の機能について説明する。
ライブラリ10は、半導体集積回路を構成すべき各種機能セルのセル情報や、それら機能セルの遅延情報、セットアップ及びホールドタイムに関する制約情報等、それら機能セルの性能情報が格納される部分である。ここで、各種機能セルは、論理演算素子(論理積、論理和、排他的論理和、排他的論理積、否定等)やフリップフロップ、RAM等のメモリ、A/D等のアナログ素子等又はそれらを用いて形成される回路である。更に、ライブラリ10は、上記各機能セルの面積情報等、同機能セルのレイアウトに関する情報が格納される部分でもある。このライブラリ10は、ハードディスク装置等の記憶装置によって構成されている。
【0075】
また、設計仕様格納部12は、例えばハードウェア記述言語(HDL)で記述された半導体集積回路の機能及び構造に関する情報が格納される部分である。詳しくは、この設計仕様格納部12は、ゲートレベルの回路情報、すなわち、上記ライブラリ10で定義されるセルのうち、使用されるセルの種類や数並びにこれらの結線情報が格納される部分である。この設計仕様格納部12も、ハードディスク装置等の記憶装置によって構成されている。
【0076】
更に、プロセスパラメータ14は、指定されたデザインルール(製造工程における最小加工精度に関する規定、素子サイズや最小配線間隔等を規定するルール)に応じた素子特性や、材質毎の配線特性等に関する情報が格納される部分である。このプロセスパラメータ14も、ハードディスク装置等の記憶装置によって構成されている。
【0077】
また、セル使用率設定部16は、設計対象となる半導体集積回路の総面積に対する機能セルの占める面積の割合であるセル使用率についてのデータを格納する部分であり、これについてもハードディスク装置等の記憶装置によって構成されている。
【0078】
これに対し、自動配置部20と、自動配線ツールとしての概略配線部22及び詳細配線部24とは、レイアウト設計を行う部分である。すなわち、自動配置部20は、上記機能セルの自動配置を行う部分であり、概略配線部22及び詳細配線部24は、それら配置された機能セル間の結線を行う部分である。これら上記機能セルの自動配置、及びそれら配置された機能セル間の結線は、上記機能セルに対応する上記ライブラリ10の有するレイアウトデータを用いて行なわれる。
【0079】
ちなみに、上記詳細配線部24は、これら機能セル間の結線を完了する処理を行う部分である。これに対し、上記概略配線部22は、詳細配線部24における結線を完了する処理より演算負荷の小さな処理にて上記機能セル間の仮の結線を行う部分である。なお、上記自動配置部20や概略配線部22、詳細配線部24は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに結線実行手順に関するプログラムが記録された記憶装置によって構成されている。
【0080】
この概略配線部22や詳細配線部24で生成された回路のネットリストは、配線混雑度解析部30や、クロストークノイズ解析部32に供給される。このネットリストは、階層構造を保持しており、各機能セルから構成される機能ブロック内のネットリストと機能ブロック間のネットリストとからなる。
【0081】
ここで、配線混雑度解析部30は、配線混雑度上限値格納部34に格納された配線混雑度のデータと上記ネットリストとに基づき、配線混雑度を解析する部分である。ここで、配線混雑度上限値格納部34の格納する上限値は、詳細配線工程において全てのセル間の結線を完了することができると予測される配線混雑度の上限値である。
【0082】
一方、クロストークノイズ解析部32では、クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値と上記ネットリストとプロセスパラメータ14とに基づき、クロストークノイズの解析を行う部分である。ここで、クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値は、当該半導体集積回路にとってのクロストークノイズの上限値である。詳しくは、例えば順序回路の出力論理信号が論理反転を引き起こしたり、信号の伝搬速度の変化によって当該集積回路の所望とする動作周波数に対する実際の動作周波数のずれが許容範囲を超えたりすることのないような値とされる。
【0083】
なお、上記配線混雑度解析部30やクロストークノイズ解析部32は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに実行手順に関するプログラムが記録された記憶装置によって構成されている。また、上記配線混雑度上限値格納部34やクロストークノイズ上限値格納部36は、ハードディスク装置等の記憶装置によって構成されている。
【0084】
また、グリッド設定部40は、自動配置部20において機能セルの配置態様を規定する配置用グリッドや、概略配線部22、詳細配線部24において配線の配置態様を規定する配線用グリッドを設定する部分である。また、グリッド設定部40では、データベース42、44を参照して、半導体集積回路に適用される最終的な配線用グリッド間隔を決定する。ここで、データベース42は、概略配線部22によって仮の結線の行われた集積回路について配線混雑度解析部30によって解析された配線混雑度と、詳細配線部24での結線の完了に要する時間(結線完了時間)との相関関係を示すデータを保持する。一方、データベース44は、概略配線部22によって仮の結線の行われた集積回路についてのクロストークノイズ解析部32での解析結果と、詳細配線部24にて結線の完了された半導体集積回路に生じるクロストークノイズとの相関関係を示すデータを保持する。このグリッド設定部40は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに実行手順に関するプログラムが記録された記憶装置によって構成されている。
【0085】
その他、入力部50は、タッチペンやキーボード、マウス等の入力装置からなって、レイアウト設計のための各種情報や命令を入力する部分である。また、フロア表示部52は、上記入力情報やレイアウト図等を可視表示する部分である。一方、制御部54は、このフロア表示部52をはじめ、上述した自動配置部20、概略配線部22、詳細配線部24、配線混雑度解析部30、クロストークノイズ解析部32、グリッド設定部40等の動作を統轄する部分である。
【0086】
上記構成を有する設計支援装置を用いて、半導体集積回路の設計が行われる。特に、本実施形態では、結線完了時間とクロストークノイズとの双方の要求を満たす配線間隔を設定しつつ半導体集積回路の設計を行う。
【0087】
ここで、こうした設計支援装置を用いて行われる本実施形態にかかる配線間隔の決定及び同配線間隔に基づく結線にかかる処理手順について図2を用いて説明する。
【0088】
この一連の手順においては、まずステップ100において、上記設計仕様格納部12に格納されたゲートレベルの回路情報が自動配置部20に入力される。そして、自動配置部20では、このゲートレベルの回路情報に基づき、また、上記セル使用率設定部16によって設定されたセル使用率に基づき機能セルの自動配置が行われる。なお、このステップ100においては、セル使用率は、当該半導体集積回路の面積縮小の観点から、経験的に許容されると考えられる極力大きな値に設定することが望ましい。
【0089】
こうして機能セルの配置が終了すると、ステップ110、120において、この配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に仮の結線を行う。これは、配線間隔と結線完了時間及びクロストークノイズとに相関関係があることを考慮し、所望とする結線完了時間とクロストークノイズの許容範囲にて最終的な結線を行うべく、適切な配線間隔を決定するために行う処理である。
【0090】
図3に、配線間隔を規定するグリッドの間隔と結線完了時間との関係を例示する。同図3に示すように、配線用グリッドの間隔を広げるにつれて、配線を行えるスペースである配線リソースが減少することにより結線完了時間は増大する。また、多層配線構造を有する半導体集積回路においては、配線用グリッドの間隔を広げる配線層数が多ければ多いほど、配線リソースの減少により結線完了時間は増大する。
【0091】
一方、図4に、配線間隔を規定するグリッドの間隔とクロストークノイズとの関係を例示する。同図4に示すように、配線用グリッドの間隔を広げるにつれて、配線間のカップリング容量が削減できるために、クロストークノイズを低減することができる。また、多層配線構造を有する半導体集積回路においては、配線用グリッドの間隔を広げる配線層数が多ければ多いほど、配線間のカップリング容量が削減できるために、クロストークノイズをいっそう低減することができる。
【0092】
このように配線間隔と結線完了時間及びクロストークノイズとに相関関係があるため、配線間隔を様々に設定して仮の結線を行うことで、適切な配線間隔を把握することができる。そして、配線間隔を適切な間隔に決定した後、最終的な結線を行うことで、所望とする結線完了時間にて効率的にクロストークノイズ対策を行いつつ結線を完了することができる。以下、この処理について、説明する。
【0093】
まず、ステップ110において、様々な配線パターンによる配線用グリッドを設定する。本実施形態では、この配線用グリッドは、図5(a)に示すように、配線Wの線幅(2δ)に対する中心線を規定するものである。また、本実施形態では半導体集積回路を多層配線構造を有して構成する場合を想定しているため、同図5(b)に示すように、破線で示されるグリッドは、各層においては所定の間隔毎に平行に設定され、また、隣接する層間では互いに直交するように設定されている。
【0094】
この各配線用グリッド間の間隔は、本実施形態では、各層毎に各別の値に設定可能とする。詳しくは、このグリッド間隔Δは、図5(c)に示すように、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義される。ここで、最小単位αは、当該半導体集積回路の製造工程での最小加工精度(リソグラフィ技術の最小加工精度等)に基づいて設定される。すなわち、同最小加工精度によってグリッド間隔Δとして許容できる下限に設定される。このように配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることが可能となる。そしてこれにより、クロストークノイズを低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図る。
【0095】
また、本実施形態では、上記最小単位αよりも小さい上記単位kαは、その整数倍が上記最小単位αとなるように設定する。これにより、各配線層毎にグリッド間隔が異なる場合であれ、各配線層の配線のコンタクトを簡易に行うことができるようになる。
【0096】
なお、上記自動配置部20においてセルの配置を規定する配置用グリッドは、例えば最小単位αの配線用グリッドの互いに直交する格子点を用いて定義すればよい。この場合、上述したように最小単位αよりも小さい上記単位kαの整数倍が上記最小単位αとなるように設定することで、各機能セル間の配置と配線用グリッドとを簡易に整合させることができ、ひいては、結線にかかる処理を簡易に行うことができる。
【0097】
図6に、上記配線パターンのうち配線間隔を広げる配線層の設定にかかるパターンを例示する。同図6に示すように、本実施形態では、グリッド間隔Δとして、最小単位αを基準として、それよりもグリッド幅を拡大する配線層を指定するようにする。すなわち、配線層設定パターン1は、第5層目の配線層のグリッド間隔を拡大するよう指定しており、また、配線層設定パターン2は、第5層目の配線層及び第4層目の配線層のグリッド間隔を拡大するよう指定している。
【0098】
なお、この配線層設定パターンについては、上層の配線層ほど優先的にグリッド間隔を広げるパターンを含んで構成することが望ましい。すなわち、通常、上層の配線層ほど、互いに平行して配線が設けられる距離が長くなりやすいことに起因して、上層の配線層ほど互いに平行して設けられる配線のカップリング容量が大きくなりやすい。このため、上層の配線層ほど配線間隔を拡大することによるクロストークノイズの低減効果が大きくなる。
【0099】
そして、ステップ120では、上記各配線層設定パターンの各パターンについてグリッド幅を様々に設定した各配線パターン毎に、概略配線部22によって同配線パターンに従った各機能セルの仮の結線を行う。この仮の結線は、当該配線パターンでの最終的な結線態様を見積もるために行う処理である。ここでは、上記配線パターンによって指定されたグリッド間隔に基づいて結線ポイント間を最短で結線する等の簡易な結線処理を行えばよい。そして、この際、複数の配線に同一のグリッドが共通して用いられる箇所である配線同士がショートする箇所や、未結線箇所を許容するものとする。
【0100】
ステップ130では、各配線パターンによって指定されたグリッド間隔の設定に従った仮の結線の行われた集積回路のそれぞれについて、配線混雑度が上記配線混雑度解析部30にて解析される。ここで、配線混雑度は、仮の結線の行われた集積回路についてのショートの数や未結線の箇所の数にて定量的に定義されるようにする。
【0101】
そして、ステップ140では、上記配線混雑度上限値格納部34に設定されたデータに基づき、上記ステップ100において設定したセル使用率の妥当性が判定される。すなわち、ここでは、上記ステップ130にて解析された配線混雑度が、詳細配線部24によって全てのセル間の結線を完了することができると予測される配線混雑度の上限値以下であるか否かを判断する。なお、上記上限値は、半導体集積回路の設計に際しての制約となるパラメータの値毎に各別に設定されることが望ましい。ちなみに、ここでのパラメータは、半導体集積回路の製造時に制約となる最小加工精度等である。
【0102】
そして、上限値を超えていると判断されると、セル使用率が妥当ではないとの判定の下、ステップ150にてセル使用率が再設定される。すなわち、半導体集積回路の総面積に対する機能セルの占める面積であるセル使用率を低減させてセル使用率が再設定される。これは、セル使用率と結線完了時間との間に図7に模式的に示すような関係があることによる。すなわち、セル使用率が大きいほど結線完了時間は増大し、セル使用率が大きすぎると結線の完了自体が不可能となる。このため、配線混雑度が結線を完了することが可能な上限値を超えているときには、セル使用率を低減させることで、結線の完了を可能とすることができる。
【0103】
そして、ステップ150にてセル使用率の再設定がなされた場合には、この再設定のなされたセル使用率にてステップ100の処理からステップ140の処理を再実行する。
【0104】
そして、ステップ140にてセル使用率が妥当と判定されると、ステップ160、170に移行する。これらステップ160、170の各処理は、クロストークノイズの解析を行うための処理であり、これらの処理は上記クロストークノイズ解析部32において行われる。
【0105】
すなわち、ステップ160において、隣接する配線間のカップリング容量や配線及び基板間のカップリング容量、配線抵抗を抽出する。ここでは、自動配置部20や概略配線部22によってレイアウトの行われた半導体集積回路のデータに加えて、上記プロセスパラメータ14の有するデータを用いて、各配線パターンに従って仮の結線のなされた集積回路毎に、上記カップリング容量及び配線抵抗の抽出を行う。なお、互いにショートした配線についてのカップリング容量の算出は、例えば最小のグリッド間隔(最小単位α)によって規定される最小の配線間隔を想定して行うなどすればよい。
【0106】
こうしてカップリング容量や配線抵抗の抽出がなされると、ステップ170において、各配線パターンに従って仮の結線のなされた集積回路毎に、各配線でのクロストークノイズが算出される。すなわち、クロストークノイズの解析の対象となる配線について、図8に示す基板とのカップリング容量C0や、これと隣接配線とのカップリング容量Cmをそれぞれピックアップする。更に、クロストークノイズの解析の対象となる配線について、図8に示す配線抵抗R1、R2、隣接配線を駆動するドライバD1の駆動能力、対象となる配線を駆動するドライバD2の駆動能力、及び各ドライバを駆動するタイミング等をそれぞれピックアップする。そして、これらから対象となる配線に生じるクロストークノイズを、電圧値又は当該半導体集積回路のシステム電圧に対するノイズ電圧の割合として算出する。
【0107】
こうしてクロストークノイズ解析がなされると、ステップ180、190に移行する。これらステップ180、190は、ステップ130における配線混雑度の解析結果及びステップ170におけるクロストークノイズの解析結果に基づき、最適な配線パターンを抽出する処理であり、これらの処理は、上記グリッド設定部40にて行われる。
【0108】
ここでは、まず上記ステップ130における配線混雑度の解析結果と上記データベース42とに基づいて、詳細配線部24における結線の完了に要する時間を各配線パターン毎にそれぞれ予測する。図9に、上記データベース42の有するデータを模式的に示す。同図9に示すように、仮の結線の行われた集積回路の配線混雑度が大きいほど、結線完了時間は増大する。このデータベース42は、当該半導体集積回路の設計に際しての制約となるパラメータの値毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積、セル使用率などがある。なお、こうしたデータベース42は、例えば、予めサンプルデータを用いて、仮の結線の行われた集積回路の配線混雑度と結線完了時間との相関関係を求めることで取得することができる。
【0109】
また、上記ステップ170におけるクロストークノイズの解析結果と上記データベース44とに基づいて、詳細配線部24による結線完了時の集積回路に生じるクロストークノイズを、各配線パターン毎にそれぞれ予測する。ここでは、まず図10に示すように、上記ステップ170におけるクロストークノイズの解析結果から、上記クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値を超えるクロストークノイズ違反となるネットの割合を算出する。そして、このクロストークノイズ違反となるネットの割合と上記データベース44とから、結線完了時のクロストークノイズ違反ネット割合を予測する。このデータベース44も、当該半導体集積回路の設計に際しての制約となるパラメータの値毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積、セル使用率などがある。なお、このデータベース44も、例えば、予めサンプルデータを用いて、仮の結線の行われた集積回路のクロストークノイズと結線完了時のクロストークノイズとの相関関係を求めることで取得することができる。
【0110】
次に、各配線パターンと上記予測された結線完了時間及び結線完了時の集積回路に生じるクロストークノイズ違反となるネットの割合との関係を示すテーブルデータを生成する。図11に、このテーブルデータを例示する。このテーブルデータには、先の図6に示した各配線層設定パターンに従ってグリッド間隔を拡大していった各配線パターンについて、結線完了時間とクロストークノイズ違反ネット割合とが設定される。
【0111】
こうしてテーブルデータを作成すると、ステップ190において最適な配線パターンを抽出する。ここでは、先の図1に示した入力部50を介して当該支援装置に入力される結線完了時間とクロストークノイズ対策との優先度合い(優先条件)に基づいて、最適な配線パターンが抽出される。なお、この優先度合いの入力に際しては、クロストークノイズのピーク値の許容される値や、結線完了時間についての許容される値を合わせて入力するようにしてもよい。これにより、クロストークノイズ対策を優先した場合には、許容される結線完了時間を満たす範囲で、もっともクロストークノイズを低減できる配線パターンが抽出される。また、結線完了時間を優先した場合には、クロストークノイズの許容値を満たす範囲で、もっとも結線時間が短い配線パターンが抽出される。
【0112】
この結線完了時間とクロストークノイズ対策との優先度合いは、例えばコスト関数を用いて定量化するようにすればよい。ここでコスト関数は、結線時間に所定の重み付けをすることで定量化される結線時間についてのコストと、クロストークノイズ違反ネット割合に所定の重み付けをすることで定量化されるクロストークノイズ対策についてのコストとの和や積等として定義される。そして、コスト関数が最小となるものを抽出するようにすれば、指定された優先度合いに応じた配線パターンを抽出することができる。
【0113】
すなわち、例えば、クロストークノイズに対する重み付けを結線時間に対する重み付けよりも大きくすることで、クロストークノイズの低減を結線時間よりも優先させていることを定量的に表記することができる。そして、この場合、クロストークノイズ違反ネット割合の増大はコスト関数の値を大きく増大させることとなるため、コスト関数を最小とするものとはなり得ない。このため、クロストークノイズ違反ネット割合を極力低減した配線パターンが指定された優先度合いに応じた最適な配線パターンとして抽出されることとなる。
【0114】
こうして最適な配線パターンが抽出されると、ステップ200において上記詳細配線部24による最終的な結線が行われる。
なお、この最終的な結線が行われる際には、この処理時間とステップ130にて解析された該当する配線パターンの配線混雑度との相関関係を上記データベース42に加えるなどしてもよい。同様に、最終的な結線が行われた後に、クロストークノイズ解析をして、ステップ170における該当する配線パターンのクロストークノイズの解析結果との相関関係を上記データベース44に加えるなどしてもよい。これらにより、データベース42、44の有するデータを絶えず更新することができ、その精度を向上させることができる。
【0115】
以上説明した本実施形態によれば、以下の効果が得られるようになる。
(1)配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることができる。そしてこれにより、クロストークノイズを低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図ることができるようになる。
【0116】
(2)グリッド間隔を、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義するとともに、上記単位kαを、その整数倍が上記最小単位αとなるように設定した。これにより、各配線層毎にグリッド間隔が異なる場合であれ、各配線層の配線のコンタクトを簡易に行うことができるようになる。
【0117】
(3)各配線層毎に各別にグリッド間隔を設定可能とした。これにより、クロストークノイズの低減を効率的に行うことができる。
(4)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、詳細配線部24における結線の完了に要する時間を予測した。これにより、結線の完了前に結線完了時間を予測することができ、結線を完了させる適切な配線間隔を早期に取得することができる。
【0118】
(5)仮の結線の行われた半導体集積回路についての配線混雑度と詳細配線部24による結線完了時間との相関関係を示すデータを有するデータベース42を備えることで、仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、結線完了時間を好適に予測することができるようになる。
【0119】
(6)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果に基づき、詳細配線部24による結線完了時に生じるクロストークノイズを予測した。これにより、結線の完了前に完了時のクロストークノイズを予測することができ、クロストークノイズを許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0120】
(7)仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果と詳細配線部24による結線完了時に生じるクロストークノイズとの相関関係を示すデータを有するデータベース44を備えた。これにより、仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果に基づき、結線完了時に生じるクロストークノイズを好適に予測することができるようになる。
【0121】
(8)配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に上記各予測を行うための仮の結線を行った。これにより、結線完了時間及びクロストークノイズについての要求を満足させつつ結線を行うことのできる配線間隔を抽出することができるようになる。
【0122】
(9)配線の混雑度に基づき結線の完了が可能か否かを判定し、可能でないと判定されるものがあるときには、セル使用率を低減させることで、結線を確実に完了させることができるようになる。
【0123】
(第2の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第2の実施形態について、先の第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0124】
図12は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、同図12において、先の図1と同一の要素については、便宜上同一の符号を付した。また、図13に、この設計支援装置を用いて行われる本実施形態にかかる機能セル間の結線にかかる処理手順を示す。
【0125】
この一連の手順においては、まずステップ300において、先の図2のステップ100同様、自動配置部20において、このゲートレベルの回路情報に基づき、また、上記セル使用率設定部16によって設定されたセル使用率に基づき機能セルの自動配置が行われる。なお、このステップ300においても、セル使用率は、当該半導体集積回路の面積縮小の観点から、経験的に許容されると考えられる極力大きな値に設定することが望ましい。
【0126】
こうして機能セルの配置が終了すると、ステップ310において、この配置の終了した各機能セルを結線する際の配線間隔を、グリッドの間隔Δの最小単位αに設定する。なお、この処理は、先の図12に示すグリッド設定部74によって行われる。続くステップ320では、このグリッド間隔Δを用いて配線ツールとしての図12に示す自動配線部70によって機能セル間の結線を行う。
【0127】
一方、ステップ330においては、結線を完了させることができるか否かが判断される。ここでは、例えば所定時間が経過しても結線が完了されないときに結線の完了が不可能と判断するようにすればよい。そして、ステップ330において結線を完了することができないと判断されると、先の図2のステップ150同様、ステップ335においてセル使用率を低減し、ステップ300〜ステップ330の処理を繰り返す。
【0128】
そして、ステップ330において、結線が完了したと判断されると、ステップ340において、隣接する配線間のカップリング容量や配線及び基板間のカップリング容量、配線抵抗を抽出する。ここでは、自動配置部20や自動配線部70によってレイアウトの行われた半導体集積回路のデータに加えて、上記プロセスパラメータ14の有するデータを用いて、上記カップリング容量及び配線抵抗の抽出を行う。なお、これは、先の図12に示すクロストークノイズ解析部72によって行われる処理である。
【0129】
こうしてカップリング容量や配線抵抗の抽出がなされると、ステップ350において、各配線でのクロストークノイズが算出される。これは、先の図12に示したクロストークノイズ解析部72によって行われる処理であり、この処理は、先の図8に示したものと同様の手法にて行えばよい。
【0130】
そして、クロストークノイズ解析が行われると、上記クロストークノイズ解析部72では、クロストークノイズが許容範囲にあるか否かを判断する(ステップ360)。この許容範囲は、例えば順序回路の出力論理信号が論理反転を引き起こしたり、信号の伝搬速度の変化によって当該集積回路の所望とする動作周波数に対する実際の動作周波数のずれが許容範囲を超えたりすることのない範囲とすればよい。
【0131】
そして、ステップ360において、クロストークノイズが許容範囲にないと判断されると、ステップ370において所定の配線層のグリッドの間隔Δを拡大する。ここで拡大されるグリッドの間隔Δは、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義される。ここで、最小単位αは、先の第1の実施形態と同様、当該半導体集積回路の製造工程での最小加工精度(リソグラフィ技術の最小加工精度等)に基づいて設定される。また、本実施形態においても、上記最小単位αよりも小さい上記単位kαは、その整数倍が上記最小単位αとなるように設定する。
【0132】
なお、ここで所定の配線層とは、全ての配線層であってもよい。また、グリッド間隔Δを拡大する所定の配線層として、上層の配線層を優先的に選択することが望ましい。これは上述したように、上層の配線層ほど、互いに平行して設けられる距離が長くなりやすいことに起因して、上層の配線層ほど互いに平行して設けられる配線のカップリング容量が大きくなりやすいことによる。このため、上層の配線層の配線間隔を拡大することで、クロストークノイズの効果的な低減を図ることが可能となる。
【0133】
こうしてステップ370において所定のグリッド間隔を拡大すると、ステップ320〜ステップ360の処理を繰り返す。こうしてステップ360によってクロストークノイズが許容範囲となるとこの処理を終了する。
【0134】
以上説明した本実施形態によっても、先の第1の実施形態の上記(1)〜(3)及び(9)に準じた効果を得ることができる。
(第3の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第3の実施形態について、先の第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0135】
図14は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、同図14において、先の図1と同一の要素については、便宜上同一の符号を付した。
【0136】
上記第1の実施形態では、結線完了時間とクロストークノイズとの双方の要求事項を満たす配線間隔を設定しつつ半導体集積回路の設計を行った。これに対し、本実施形態では、結線完了時間と消費電力との双方の要求事項を満たす配線間隔を設定しつつ半導体集積回路の設計を行う。このため、図1に示す設計支援装置には、クロストークノイズ解析部32に代えて、消費電力検証部80が備えられている。また、本実施形態では、仮の結線の行われた集積回路の配線混雑度を結線完了時間を把握するパラメータとして直接使用する。すなわち、先の図9に示したように、仮の結線の行われた集積回路の配線混雑度と結線完了時間との間には相関関係があるために、配線混雑度を直接用いて結線完了時間についての条件を指定するようにする。
【0137】
ここで、こうした設計支援装置を用いて行われる本実施形態にかかる配線間隔の決定及び同配線間隔に基づく結線にかかる処理手順について図15を用いて説明する。
【0138】
この一連の処理においては、まずステップ400〜420において、先の図2のステップ100〜120と同様の処理によって、機能セルの自動配置と、様々な配線パターンの設定と、各配線パターンに従った仮の結線にかかる処理とを行う。
【0139】
次に、ステップ430において、上記各配線パターンによって指定されたグリッド間隔の設定に従った仮の結線の行われた集積回路の中から、結線を完了させることのできるパターンを抽出する。この抽出は、仮の結線の行われた集積回路から取得される情報に基づいて行われる。
【0140】
詳しくは、まず、先の図2のステップ130の処理と同様の処理によって、上記仮の結線の行われた集積回路のそれぞれについての配線混雑度が解析される。次に、この解析された配線混雑度が先の図14に示す配線混雑度上限値格納部34に格納された上限値以下であるものについてこれを結線を完了させることのできるパターンとして抽出する。
【0141】
次に、ステップ440では、上記抽出された結線を完了させることのできるパターンのそれぞれについて、上記消費電力検証部80にて当該集積回路の消費電力が算出される。ここで、当該集積回路の消費電力は、各配線毎の消費電力の総和として算出すればよい。そして、この各配線毎の消費電力は、各配線毎の充放電態様に基づいて算出することができる。こうした充放電態様にかかるパラメータとしては、当該配線と他の配線とのカップリング容量Cや、当該配線の駆動電圧V、当該配線の敷設箇所における動作周波数f、当該配線での信号の遷移確率βがある。ちなみに、本実施形態では、各配線毎の消費電力を、量「βCVf2」に比例する量として算出する。
【0142】
なお、上記遷移確率βは、例えば、当該集積回路についての回路情報に基づき取得するようにすればよい。すなわち、所定のテストパターンを用いて当該集積回路を動作させたときの各配線の信号の遷移確率βを、当該集積回路の回路情報に基づき取得する。この遷移確率βは、例えば単位クロック当たりの信号の遷移回数として定義するなどすればよい。
【0143】
次に、ステップ450では、上記態様にて算出された消費電力に基づき、消費電力低減率が基準値以上のパターンを抽出する。ここで、「消費電力低減率」とは、予め設定された消費電力に対する低減率として定義される。この予め設定された消費電力は、例えば、当該半導体集積回路の以前に製造された集積回路のうちの類似品の消費電力としてよく、またステップ440において算出された消費電力のうちの最大値としてもよい。
【0144】
ちなみに、上記ステップ410において、グリッド間隔が拡大されたパターンほど、消費電力低減率が基準値以上のパターンとして抽出されやすい。これは、図16に示すように、グリッド間隔を拡大するほど消費電力が改善されるという性質があるためである。ちなみに、同図16には、グリッド間隔が所定値であるときを基準値(図中、「1」)として、グリッド間隔を拡大したときの消費電力の改善割合を示している。グリッド間隔(配線間隔)が拡大するほど、これら配線間のカップリング容量が低下するため、図16に示されるように消費電力が改善されるようになる。
【0145】
そして、ステップ460では、上記ステップ450において抽出された消費電力低減率が基準値以上であるパターンの中から、最適な配線パターンを抽出する処理を行う。ここでも、先の図2のステップ190同様、上記入力部50を介して当該支援装置に入力される結線完了時間の指標としての配線混雑度と消費電力との優先度合い(優先条件)に基づいて、最適な配線パターンが抽出される。この優先度合いも、先の図2のステップ190同様、例えばコスト関数を用いて定量化することができる。
【0146】
このように、本実施形態では、仮の結線の行われた集積回路の消費電力に基づいて、当該配線パターンによって結線の完了した集積回路についての消費電力を評価するようにしている。これにより、結線の完了前に完了時の消費電力を評価することができ、消費電力を許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0147】
こうして、最適な配線パターンが抽出されると、ステップ470では、先の図2のステップ200と同様の処理によって、最終的な結線が行われる。
以上説明した本実施形態によれば、先の第1の実施形態の上記(2)の効果等に加えて、更に以下の効果が得られるようになる。
【0148】
(10)配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることができる。そしてこれにより、消費電力を低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図ることができるようになる。
【0149】
(11)各配線層毎に各別にグリッド間隔を設定可能とした。これにより、消費電力の低減を効率的に行うことができる。
(12)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、詳細配線部24における結線の完了に要する時間を把握した。これにより、結線の完了前に結線完了時間を把握することができ、結線を完了させる適切な配線間隔を早期に取得することができる。
【0150】
(13)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての消費電力を算出した。これにより、結線の完了前に完了時の消費電力を評価することができ、消費電力を許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0151】
(14)配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に上記各予測を行うための仮の結線を行った。これにより、結線完了時間及び消費電力についての要求を満足させつつ結線を行うことのできる配線間隔を抽出することができるようになる。
【0152】
ここで、上記1〜3の各実施形態にかかる設計に基づいて製造された半導体集積回路を、図17に例示する。
同図17(a)は、上記半導体集積回路の上面図である。同図17(a)に例示するように、当該半導体集積回路500は、論理回路の形成されている論理回路部510とアナログ回路の形成されているアナログ回路部520との2つの領域を備えている。そして、論理回路部510が上記各実施形態に示した設計に基づいて製造された領域である。
【0153】
図17(b)に、この論理回路部510の第n層目の配線層の配線を、また、図17(c)に、同論理回路部510の第(n+1)層目の配線層の配線を例示する。
【0154】
図17(b)に例示するように、第n層目の配線層において実質的に平行に設けられている配線(La1〜La4)は、その線幅に対する中心線の間隔が所定の最小間隔paの整数倍に設定されている。すなわち、配線La1及び配線La2間、配線La3及び配線La4間の間隔はいずれも「pa」であり、これは最小間隔paの「1」倍である。また、配線La2及び配線La3間の間隔は「2pa」であり、これは最小間隔「pa」の「2」倍である。
【0155】
一方、図17(c)に例示するように、第(n+1)層目の配線層において実質的に平行に設けられている配線(Lb1〜Lb3)は、その線幅に対する中心線の間隔が所定の最小間隔pb(>pa)の整数倍に設定されている。すなわち、配線Lb1及び配線Lb2間の間隔は「pb」であり、これは最小間隔paの「1」倍である。また、配線La2及び配線La3間の間隔は「2pb」であり、これは最小間隔「pb」の「2」倍である。
【0156】
そして、これら第n層目の上記最小間隔paと第(n+1)層目の上記最小間隔pbとは、互いに異なっている。これは、上記各実施形態において、グリッド間隔Δを各配線層毎に各別に設定可能としたことによる。これに対し、当該集積回路の全ての配線層の配線の線幅に対する中心線の間隔を一律に設定する場合には、第n層目と第(n+1)層目の配線層で上記間隔は等しくなる。
【0157】
更に、これら第n層目の上記最小間隔paと第(n+1)層目の上記最小間隔pbとは、その一方が他方の整数倍とならない設定も可能となる。これは、グリッド間隔Δを、最小単位αと、同最小単位αよりも小さい単位kαの整数倍との和「α+nkα(n=0,1,2,…)」としたことによる。これに対し、例えば、グリッド間隔Δを最小単位αの整数倍とした場合には、上記最小間隔paと最小間隔pbとは、必ずその一方が他方の整数倍となる。
【0158】
もっとも、多層配線構造を有する半導体集積回路の製造工程における最小加工精度は、用いる材料や層間絶縁膜の平坦性の差に起因して、全ての配線層で同一となるとは限らない。例えば5層の配線層を有する半導体集積回路における各配線層の最小加工精度は、第1層目の配線層で一番小さく、第2層目〜第4層目の配線層においては共通であり、第5層目の配線層で一番大きいといった場合があり得る。しかしながら、こうした場合においても、図17に示す半導体集積回路によれば、例えば第(n+1)層についての上記最小間隔pbが、最小加工精度の整数倍とならない間隔に設定可能であるため、配線間隔の設定についての自由度の高い半導体集積回路となっている。このため、様々な要求事項を満足する設計を効率的に行うことのできる半導体集積回路となっている。
【0159】
なお、例えば第(n+1)層についての上記最小間隔pbが最小加工精度の整数倍とならない間隔である場合、この間隔は、アナログ回路部520内の第(n+1)層目の配線層の配線について上記線幅に対する中心線の間隔の最小値が最小加工精度とされているなら、その整数倍とも相違する。
【0160】
なお、上記各実施形態は、以下のように変更して実施してもよい。
・データベース42については、サンプルデータを用いて、仮の結線の行われた集積回路の配線混雑度と結線完了時間との相関関係を求めることで取得したもの等に限らない。例えば、配線混雑度と結線完了時間との相関関係を適宜の関係式にて予測算出することで取得してもよい。
【0161】
・更に、結線完了時間の予測は、データベース42を用いて行う代わりに、配線混雑度と結線完了時間との相関関係を適宜の関係式にて予測算出する手段を用いて行ってもよい。
【0162】
・データベース44については、サンプルデータを用いて、仮の結線の行われた集積回路のクロストークノイズと結線完了時に生じるクロストークノイズとの相関関係を求めることで取得したもの等に限らない。例えば、仮の結線時のクロストークノイズと結線完了時のクロストークノイズとの相関関係を適宜の関係式にて予測算出することで取得してもよい。
【0163】
・更に、結線完了時のクロストークノイズの予測は、データベース44を用いて行う代わりに、仮の結線時のクロストークノイズと結線完了時のクロストークノイズとの相関関係を適宜の関係式にて予測算出する手段を用いて行ってもよい。
【0164】
・クロストークノイズの解析態様や、同クロストークノイズの上限値の設定態様などは上記各実施形態で例示したものに限らない。
・上記第1の実施形態において、セル使用率の再設定処理を行わなくても、予め適切なセル使用率を設定して配置を行うことで、上記(1)〜(8)の効果を得ることはできる。
【0165】
・上記第1の実施形態において、最適な配線パターン(グリッド間隔)の抽出は、同実施形態で例示したものに限らない。例えば配線パターン(グリッド間隔)を1つ設定してこれに基づいて仮の結線を行った後、同仮の結線の行われた集積回路の配線混雑度やクロストークノイズから、結線完了時間や結線完了時のクロストークノイズを予測するようにしてもよい。これによっても、当該配線パターンの設定態様が結線を完了させる最終的なものとして適切であるか否かを判断するなどすることで、また、こうした一連の処理を配線間隔を設定し直して繰り返すことで、最適な配線間隔の設定態様を早期に取得することができる。なおこの場合には、配線間隔(グリッド間隔)を最小に設定してこれが結線を完了させる最終的なものとして適切であるか否かを判断し、適切でないと判断される度に、配線間隔(グリッド間隔)を段階的に拡大しつつ、その結線を完了させる最終的なものとして適切性を判断する処理を繰り返すようにしてもよい。
【0166】
・上記第1の実施形態において、仮の結線の行われた集積回路の配線混雑度から結線完了時間を予測する処理をしなくても、仮の結線の行われた集積回路のクロストークノイズに基づき結線完了時のクロストークノイズを予測することは有効である。すなわちこの予測により、結線を完了させるに際し、クロストークノイズを許容範囲に抑えることのできる配線間隔(グリッド間隔)を取得することはできる。
【0167】
・上記第1の実施形態において、仮の結線の行われた集積回路のクロストークノイズに基づき結線完了時のクロストークノイズを予測する処理をしなくても、仮の結線の行われた集積回路の配線混雑度から結線完了時間を予測することは有効である。すなわちこの予測により、結線を完了させるに際し、結線完了時間を所望する時間内とすることのできる配線間隔(グリッド間隔)を取得することはできる。
【0168】
・各配線パターンの設定態様は、上記第1の実施形態に例示したものに限らない。例えば、グリッド間隔を拡大する配線層が複数ある場合、それら各配線層におけるグリッド間隔の拡大量を異ならしめてもよい。
【0169】
・上記第2の実施形態において、所定の配線層のグリッド間隔を段階的に拡大していく代わりに、クロストークノイズが許容範囲にないと判断されるたびに各配線層毎に配線間隔を適宜変更して結線を繰り返すようにしてもよい。
【0170】
・上記第2の実施形態において、セル使用率の再設定処理を行わなくても、予め適切なセル使用率を設定して配置を行うことで、上記(1)〜(3)の効果を得ることはできる。
【0171】
・上記第3の実施形態において、最適な配線パターン(グリッド間隔)の抽出は、同実施形態で例示したものに限らない。例えば配線パターン(グリッド間隔)を1つ設定してこれに基づいて仮の結線を行った後、同仮の結線の行われた集積回路の配線混雑度や消費電力を算出するようにしてもよい。そしてこの算出された配線混雑度や消費電力に基づいて当該配線パターンの設定態様が結線を完了させる最終的なものとして適切であるか否かを判断するなどすることで、また、こうした一連の処理を配線間隔を設定し直して繰り返すことで、最適な配線間隔の設定態様を早期に取得することができる。なおこの場合には、配線間隔(グリッド間隔)を最小に設定してこれが結線を完了させる最終的なものとして適切であるか否かを判断し、適切でないと判断される度に、配線間隔(グリッド間隔)を段階的に拡大しつつ、その結線を完了させる最終的なものとして適切性を判断する処理を繰り返すようにしてもよい。
【0172】
・上記第3の実施形態において、仮の結線の行われた集積回路の配線混雑度から結線完了時間を簡易的に把握する処理をしなくても、仮の結線の行われた集積回路の消費電力に基づき結線完了時の消費電力を予測することは有効である。すなわちこの予測により、結線を完了させるに際し、消費電力を許容範囲に抑えることのできる配線間隔(グリッド間隔)を取得することはできる。
【0173】
・上記第3の実施形態において、上記第2の実施形態と同様、仮の結線を行わず、所定のグリッド間隔にて結線を行った後、結線の行われた集積回路の消費電力を評価し、これが許容範囲にない場合には、所定の配線層のグリッド間隔を段階的に拡大していくようにしてもよい。また、段階的に拡大する代わりに、消費電力が許容範囲にないと判断されるたびに各配線層毎に配線間隔を適宜変更して結線を繰り返すようにしてもよい。
【0174】
・上記第3の実施形態に例示したコストは、必ずしも重み付けとして定量化するものに限らず、例えば結線時間Tのコストを、Tのn乗等として定量化してもよい。
【0175】
・消費電力の算出は、上記第3の実施形態で例示したものに限らない。例えば、クロストークノイズ解析を行って同ノイズが大きいほど無駄な電力消費が増大することを考慮するようにしてもよい。
【0176】
・仮の結線の行われた集積回路から取得する情報としては、上記配線混雑度や、クロストークノイズ、消費電力に限らない。要は、当該集積回路に対する要求事項を評価するための適宜の情報であればよい。
【0177】
・更に、設計対象となる集積回路に対する要求事項としても、クロストークノイズ、消費電力等、カップリングノイズに起因する現象に対するものや、配線混雑度に限らない。例えば動作タイミングの精度等でもよい。また、クロストークノイズと消費電力等、複数の要求事項を満たすようにして集積回路を設計するようにしてもよい。
【0178】
・グリッドの間隔を各配線層で異ならしめる代わりに、図18に例示するように、機能単位でモジュール化された機能ブロック毎に異ならしめるようにしてもよい。図19に、こうした態様の設計に基づいて製造された半導体集積回路を例示する。
【0179】
同図19(a)は、この半導体集積回路の上面図である。同図19(a)に例示するように、当該半導体集積回路600は、論理回路の形成されている論理回路部610とDRAM等のメモリの形成されているメモリ回路部620との2つの領域を備えている。上記論理回路部610は、機能ブロックB1〜B4を有して構成されている。そして、この論理回路部610が、上記各実施形態に示した設計に基づいて製造された領域である。
【0180】
図19(b)に、この論理回路部610の機能ブロックB1の配線を、また、図19(c)に、同論理回路部610の機能ブロックB3の配線を例示する。
図19(b)に例示するように、機能ブロックB1において実質的に平行に設けられている配線(Lc1〜Lc5)は、その線幅に対する中心線の間隔が所定の最小間隔pcの整数倍に設定されている。すなわち、配線Lc1及び配線Lc2間、配線Lc3及び配線Lc4間、配線Lc4及び配線Lc5間の間隔はいずれも「pc」であり、これは最小間隔pcの「1」倍である。また、配線Lc2及び配線Lc3間の間隔は「2pc」であり、これは最小間隔「pc」の「2」倍である。
【0181】
一方、図19(c)に例示するように、機能ブロックB4において実質的に平行に設けられている配線(Ld1〜Ld4)は、その線幅に対する中心線の間隔が所定の最小間隔pdの整数倍に設定されている。すなわち、配線Ld2及び配線Ld3間、配線Ld3及び配線Ld4間の間隔はいずれも「pd」であり、これは最小間隔pdの「1」倍である。また、配線Ld1及び配線Ld2間の間隔は「2pd」であり、これは最小間隔「pd」の「2」倍である。
【0182】
そして、これら機能ブロックB1の上記最小間隔pcと機能ブロックB4の上記最小間隔pdとは、互いに異なっている。更に、これら機能ブロックB1の上記最小間隔pcと機能ブロックB4の上記最小間隔pdとは、その一方が他方の整数倍とならない設定も可能となる。
【0183】
なお、こうした機能ブロック間での配線間隔の各別の設定は、高速動作の要求される機能ブロックほどクロストークノイズの上限値を低く設定することが望ましいことなどから、高速動作の要求される機能ブロックほど配線間隔を拡大するようにすることが望ましい。
【0184】
・更に、グリッドの間隔を、各配線層及び機能ブロック間で異ならしめるようにしてもよい。図20に、こうした態様の設計に基づいて製造された半導体集積回路を例示する。
【0185】
同図20(a)は、この半導体集積回路の上面図である。同図20(a)に例示するように、当該半導体集積回路700は、論理回路の形成されている論理回路部710と入出力回路(I/O)の形成されているインターフェース部720との2つの領域を備えている。上記論理回路部710は、機能ブロックC1〜C6を有して構成されている。そして、この論理回路部710が、上記各実施形態に示した設計に基づいて製造された領域である。
【0186】
図20(b)及び図20(c)に、第n層目の配線層における機能ブロックC3及び機能ブロックC4の配線をそれぞれ例示する。また、図20(d)及び図20(e)に、第(n+1)層目の配線層における機能ブロックC3及び機能ブロックC4の配線をそれぞれ例示する。
【0187】
図20(b)及び図20(d)にそれぞれ例示する機能ブロックC3の第n層目及び第(n+1)層目の配線層において実質的に平行に設けられている配線(Le1〜Le4、Lg1〜Lg4)は、その線幅に対する中心線の間隔が所定の最小間隔peの整数倍に設定されている。更に、図20(c)に例示する機能ブロックC4の第n層目の配線層において実質的に平行に設けられている配線(Lf1〜Lf4)も、その線幅に対する中心線の間隔が上記最小間隔peの整数倍に設定されている。
【0188】
一方、図20(e)に例示するように、機能ブロックC4の第(n+1)層目において平行に実質的に設けられている配線(Lh1〜Lh3)は、その線幅に対する中心線の間隔が所定の最小間隔phの整数倍に設定されている。
【0189】
そして、上記最小間隔peと上記最小間隔phとは、互いに異なっている。更に、上記最小間隔peと上記最小間隔phとは、その一方が他方の整数倍とならない設定も可能となる。
【0190】
・グリッドの間隔の設定は、上記各実施形態に例示したものに限らない。例えば、上記単位kαの整数倍が上記最小単位αとならなくても、この単位kαを最小単位よりも小さな値とすることで、結線についての自由度を高めることはできる。
【0191】
・グリッドは、必ずしも配線の線幅に対する中心線を規定するものでなくてもよい。
・上記第1の実施形態及びその変形例において、自動配線ツールとしては、必ずしも上記概略配線部22や詳細配線部24を備えるものに限らない。上記第1の実施形態の概略配線部22のような特別な処理を行う機能を有していなくても、自動配線ツールがトライアンドエラーを繰り返しつつ結線を行う演算ツールであるなら、例えばトライアンドエラーの初期の段階を仮の結線処理と定義すればよい。
【0192】
・自動配線ツールでは、必ずしもグリッドを用いて配線を行わなくてもよい。この場合であっても、配線間隔を、複数の配線の線幅に対する中心線の間隔が、所定の最小単位の整数倍の間隔、及び該最小単位以上であって且つ同最小単位の整数倍とならない間隔となるように設定可能とすること等は有効である。
【0193】
・半導体集積回路の設計手法としては、例えばゲートアレイ等、スタンダードセル方式以外の方式を用いてもよい。この際、いかなる設計手法を用いるにせよ、
a.各配線層の各機能ブロックによって構成される各構成単位内において、又は各配線層において、又は各機能ブロック内において、互いに平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定する。
b.少なくとも2つの構成単位間で、又は少なくとも2つの配線層間で、又は少なくとも2つの機能ブロック間で、上記所定の間隔を互いに異ならしめる。
という構成によって半導体集積回路を構成することで、同集積回路の設計に際して配線リソースの確保とクロストークノイズ対策との両立を図ることができる等、同集積回路に対する要求事項を満足させることができる。
【0194】
その他、上記各実施形態及びその変形例から把握できる技術思想としては、以下のようなものがある。
(1)多層配線構造を有する半導体集積回路の所定の配線層において、その線幅に対する中心線の間隔が所定の最小単位の整数倍となるようにして複数の配線が互いに平行に設けられている所定の領域を有し、且つ、前記所定の最小単位が、前記所定の領域以外の領域に形成されている配線の線幅に対する中心線の間隔の最小値の整数倍とならないことを特徴とする半導体集積回路。
【0195】
(2)請求項2記載の半導体集積回路において、前記所定の最小間隔が異ならしめられてなる2つの機能ブロックについて、それらのうちの一方の最小間隔が他方の最小間隔の整数倍とならないことを特徴とする半導体集積回路。
【0196】
(3)請求項3記載の半導体集積回路において、前記所定の最小間隔が異ならしめられてなる2つの機能ブロックについて、それらのうちの一方の最小間隔が他方の最小間隔の整数倍とならないことを特徴とする半導体集積回路。
【0197】
(4)請求項1〜3又は上記(1)〜(3)のいずれかに記載の半導体集積回路において、前記配線は、半導体基板を覆う層間絶縁膜の上方に形成されるものであることを特徴とする半導体集積回路。
【0198】
(5)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、それらの配線の混雑度に基づいて前記結線を完了するのに要する時間である結線完了時間を各別に予測する工程と、この予測された結線完了時間に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0199】
(6)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、その配線の混雑度に基づいて前記結線を完了するのに要する時間である結線完了時間を予測する工程と、この予測された結線完了時間に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0200】
(7)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを各別に予測する工程と、この予測されたクロストークノイズに基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0201】
(8)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測する工程と、この予測されたクロストークノイズに基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0202】
(9)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路のそれぞれについての消費電力を各別に算出する工程と、前記算出された消費電力に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0203】
(10)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路についての消費電力を算出する工程と、前記算出された消費電力に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0204】
(11)請求項4記載の半導体集積回路の設計方法において、前記結線は、当該半導体集積回路に対する所定の要求事項を満たすとの条件の下で行われることを特徴とする半導体集積回路の設計方法。
【0205】
(12)上記(11)記載の半導体集積回路の設計方法において、前記所定の要求事項は、複数の異なる要求事項からなることを特徴とする半導体集積回路の設計方法。
【0206】
(13)上記(12)記載の半導体集積回路の設計方法において、前記複数の要求事項は、クロストークノイズのピーク値が所定の上限値以下となるとの要求事項、及び消費電力が所定の上限値以下となるとの要求事項を含むことを特徴とする半導体集積回路の設計方法。
【0207】
(14)上記(11)又は(12)記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路から取得される情報に基づき、前記要求事項を満たすか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0208】
(15)上記(14)記載の半導体集積回路の設計方法において、前記仮の結線の行われた集積回路から取得される情報に基づき、前記複数の要求事項を構成する各要求事項についてのコストを定量化して算出すると共に、これら各コストに基づき定義されるコスト関数を用いて最終的な配線間隔についての条件を決定する工程を更に備えることを特徴とする半導体集積回路の設計方法。
【0209】
(16)上記(13)記載の半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、並びにb.前記設定された配線間隔にて前記結線を行う工程、並びにc.当該集積回路の消費電力及び前記各配線間のクロストークノイズのピーク値を算出する工程、の各工程を備え、前記算出された消費電力の値とピーク値とがそれぞれ前記各上限値以下となるとの条件下、当該集積回路内の結線が完了されるまで、前記配線間隔を適宜変更して前記b及びcの工程を繰り返すことを特徴とする半導体集積回路の設計方法。
【0210】
(17)上記(13)記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズのピーク値を各別に予測する工程と、前記各条件の設定毎に仮の結線の行われた集積回路のそれぞれについての消費電力を各別に算出する工程と、前記予測されたクロストークノイズのピーク値及び前記算出された消費電力に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0211】
(18)上記(13)記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズのピーク値を予測する工程と、前記仮の結線の行われた集積回路の消費電力を算出する工程と、前記予測されたクロストークノイズのピーク値及び前記算出された消費電力に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0212】
(19)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は多層配線構造を有する集積回路として製造されるものであるとともに、前記結線を行う際の配線間隔は、各配線層間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0213】
(20)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであるとともに、前記結線を行う際の配線間隔は、前記機能ブロック間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0214】
(21)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該集積回路は、多層配線構造を有し、且つ機能単位でモジュール化された複数の機能ブロックを有するものであって、前記結線を行う際の配線間隔は、各機能ブロック内の各配線層によって構成される各構成単位間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0215】
(22)請求項5又は6記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであるとともに、前記配線間隔は、更に、機能単位でモジュール化された各機能ブロック毎に各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0216】
(23)請求項10記載の半導体集積回路の設計方法において、前記結線の完了された後、該結線を完了させるに先立ち行われる前記仮の結線の行われた半導体集積回路の配線混雑度と、前記結線を完了させる工程にて要した時間である実際の結線時間との相関関係を示すデータを、前記配線の混雑度と結線完了時間との関係を定めた前記データベースに付け加えることを特徴とする半導体集積回路の設計方法。
【0217】
(24)請求項10又は上記(23)記載の半導体集積回路の設計方法において、前記結線を完了された後、該結線を完了させるに先立ち行われる前記仮の結線の行われた半導体集積回路の各配線間に生じるクロストークノイズの解析結果と、前記結線の完了された集積回路の各配線間に生じるクロストークノイズとの相関関係を示すデータを、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めた前記データベースに付け加えることを特徴とする半導体集積回路の設計方法。
【0218】
(25)請求項7〜14又は(23)又は(24)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は、多層配線構造を有するものとして製造されるものであって、且つ当該設計方法は、前記配線間隔を配線層毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【0219】
(26)請求項7〜14又は(23)又は(24)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであって、当該設計方法は、前記配線間隔を機能ブロック毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【0220】
(27)請求項7〜11又は(23)〜(24)のいずれかに記載の半導体集積回路の設計方法において、当該集積回路は、多層配線構造を有し、且つ機能単位でモジュール化された複数の機能ブロックを有するものであって、且つ当該設計方法は、前記配線間隔を各機能ブロック内の各配線層によって構成される各構成単位毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【図面の簡単な説明】
【図1】第1の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図2】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図3】グリッド間隔と結線完了時間との関係を示す図。
【図4】グリッド間隔とクロストークノイズがその上限値を超えるネット数との関係を示す図。
【図5】上記実施形態にかかるグリッドの設定態様を示す図。
【図6】同実施形態にかかるグリッドの設定態様を示す図。
【図7】セル使用率と結線完了時間との関係を模式的に示す図。
【図8】上記実施形態にかかるクロストークノイズの解析手法を説明する図。
【図9】同実施形態における配線混雑度と結線完了時間との関係を定めるデータを模式的に示す図。
【図10】同実施形態においてクロストークノイズの分布を例示する図。
【図11】同実施形態において各配線パターンと結線完了時間及びクロストークノイズとの関係を示すテーブルデータを示す図。
【図12】第2の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図13】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図14】第3の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図15】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図16】配線グリッド間隔と電力改善割合との関係を示す図。
【図17】上記各実施形態の設計に基づき製造された半導体集積回路の構成を示す図。
【図18】上記各実施形態の変形例においてグリッド間隔の設定態様を模式的に示す図。
【図19】上記変形例の設計に基づき製造された半導体集積回路の構成を示す図。
【図20】別の変形例の設計に基づき製造された半導体集積回路の構成を示す図。
【符号の説明】
10…ライブラリ、12…設計仕様格納部、14…プロセスパラメータ、16…セル使用率設定部、20…自動配置部、22…概略配線部、24…詳細配線部、30…配線混雑度解析部、32…クロストークノイズ解析部、34…配線混雑度上限値格納部、36…クロストークノイズ上限値格納部、40…グリッド設定部、42,44…データベース、50…入力部、52…フロア表示部、54…制御部、70…自動配線部、72…クロストークノイズ解析部、74…グリッド設定部。
【発明の属する技術分野】
本発明は、半導体集積回路及びその設計方法に関する。
【0002】
【従来の技術】
近年、集積回路、特に半導体集積回路にあっては、その微細加工技術の進展により、半導体集積回路内の配線幅や隣接する配線間の間隔は縮小される傾向にある。これに対し、同半導体集積回路内の配線の膜厚については、配線抵抗の増加抑制やエレクトロマイグレーション等に起因する断線の防止を図る必要があることから、上記配線幅や隣接する配線間の間隔ほどには縮小が図られない。このため、集積回路の微細化につれて、絶縁層を介して配線と基板との間に形成される静電容量(カップリング容量)よりも、絶縁物を介して隣接する配線間に形成される静電容量(カップリング容量)の影響が大きなものとなりつつある。
【0003】
この隣接配線間に形成される静電容量の影響としては、一方の配線の電位変化が他方の配線の電位を変化させるクロストークノイズがある。そしてこのクロストークノイズの影響が大きくなると半導体集積回路が誤動作を起こす可能性が増大する。すなわち、グリッチ(ひげ)と呼ばれるノイズの発生によって順序回路の出力論理信号が論理反転を引き起こしたり、信号伝播速度の変化である遅延変動が生じることに起因して実際の動作速度が所望の動作速度からずれたものとなったりする。
【0004】
ところで、このクロストークノイズは、狭い配線間隔で長距離に渡って隣接している同層配線のうち、それを駆動するドライバの駆動能力が小さかったり、あるいは電荷保持能力が弱い配線について特に生じやすい。よって、半導体集積回路の配置や結線を実施するときには、問題箇所を抽出して対策することが不可欠となる。
【0005】
そこで従来は、セルの配置及びセル間等の結線を所定間隔のグリッドを用いて行う汎用の自動配置配線ツールにおいても、こうしたクロストークノイズの対策として、
(1)設計者側でクロストークノイズの上限値を設定する。
(2)カップリング容量及び配線の抵抗を自動抽出する。
(3)全配線についてクロストークノイズを算出する。
(4)上記算出されたノイズが上記設定された上限値を超える場合に違反と判定する。
(5)違反と判定された箇所の両側の配線をグリッド所定間隔の2倍若しくはそれ以上に引き離す。
といった手順による設計手法がよく用いられている。
【0006】
ちなみに、クロストークノイズ対策としてはこの他にも、上記(5)の工程に代えて、
(6)配線の電位保持能力を上げるために、ドライバの駆動能力を上げたり中継バッファを挿入したりする(特許文献1)。
あるいは
(7)クロストークノイズによる遅延変動を相殺できるように、中継インバータを挿入して、一方の配線の電位変化と他方の配線の電位変化とが同相及び逆相を繰り返すようにする(特許文献2)。
といった手法が用いられることもある。
【0007】
なお、こうした従来の技術としては、この他にも下記特許文献3がある。
【0008】
【特許文献1】
特開平10−27194号
【特許文献2】
特開2001−148426号
【特許文献3】
特開2002−16141
【0009】
【発明が解決しようとする課題】
ところで、上記自動配置配線ツールを用いた設計手法における上記(1)〜(5)の工程では、クロストークノイズ対策は、自動配置配線ツールにて結線の完了された後に行われることとなる。したがって、この後、上記(5)の工程において、クロストークノイズが上限値を超える箇所について設計変更を行うと、これに伴いクロストークノイズが上限値を超えない箇所の配線についてもその配置、結線態様の変更を余儀なくされることも多い。このため、結果としてクロストークノイズ対策に多大な時間を要することとなっていた。
【0010】
一方、設定されたクロストークノイズの上限値に基づく上記(6)〜(7)のクロストークノイズ対策は通常、熟練者によって行われている。ただし、たとえ熟練者とはいえ、違反と判定される箇所毎に適切な対策を施すことは容易ではなく、そのために費やす時間も膨大なものとなっている。
【0011】
なお、上記クロストークノイズ以外にも、特に近年における微細化された半導体集積回路では、隣接する配線間のカップリング容量の充放電で消費される電力の増大が大きな問題となりつつある。そして、こうしたカップリング容量の影響に対する対策等にあっては、設計時間の長期化が懸念されるこうした実情も概ね共通したものとなっている。
【0012】
本発明は上記実情に鑑みてなされたものであり、その目的は、様々な要求事項を満足する設計を効率的に行うことのできる半導体集積回路及びその設計方法を提供することにある。
【0013】
【課題を解決するための手段】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項1記載の発明は、同一配線層内の所定の領域において、互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が、所定の最小間隔の整数倍であって、且つ製造工程における最小加工精度の整数倍とならない間隔に設定されてなることをその要旨とする。
【0014】
上記構成では、所定の最小間隔が製造工程における最小加工精度の整数倍とならない間隔に設定されているために、最小加工精度の整数倍に設定した場合と比較して、結線にかかる自由度を好適に確保することができる。
【0015】
例えば、集積回路の設計に際して回路の結線の完了の可能性とクロストークノイズ対策との両立に際しても、その線幅に対する中心線の間隔の設定にかかる自由度が増加し、これら2つの要求事項を両立させることができる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0016】
更に、上記構成によれば、上記所定の最小間隔を最小加工精度の整数倍に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、消費電力等、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0017】
また、上記構成では、当該集積回路の所定の領域においては、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0018】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0019】
請求項2記載の発明は、機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、当該集積回路の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなることをその要旨とする。
【0020】
半導体集積回路に要求されるクロストークノイズの上限値は、機能ブロック毎に異なることがある。例えば、高速動作を所望する機能ブロックは、集積回路内の他の機能ブロックと比較してクロストークノイズの上限値を低く設定することが望ましい。
【0021】
この点、上記構成では、配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているとともに、この所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなるために、集積回路の設計に際して結線の完了の可能性とクロストークノイズ対策との両立を図ることができる。すなわち、クロストークノイズの上限値を低く設定することが要求される機能ブロックについては、所定の最小間隔を他より大きくすることで、この要求を満たすことができる。また、それ以外の機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に行うこともできる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0022】
更に、上記構成によれば、上記所定の最小間隔を一律に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0023】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。この点、上記構成では、配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているとともに、この所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなるために、集積回路の設計に際して回路の結線の完了の可能性と消費電力についての要求事項とを両立させることができる。
【0024】
また、上記構成では、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0025】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0026】
請求項3記載の発明は、多層配線構造を有するとともに機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、当該集積回路の所定の配線層の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が、少なくとも2つの機能ブロック間で互いに異ならしめられてなることをその要旨とする。
【0027】
半導体集積回路の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによるクロストークノイズの低減効果は、層毎に異なることが多い。
【0028】
また、半導体集積回路に要求されるクロストークノイズの上限値は、機能ブロック毎に異なることがある。例えば、高速動作を所望する機能ブロックは、集積回路内の他の機能ブロックと比較してクロストークノイズの上限値を低く設定することが望ましい。
【0029】
この点、上記構成では、所定の配線層の機能ブロック内についての互いに平行に設けられている配線は、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されており、且つ、前記所定の間隔が、少なくとも2つの機能ブロック間で互いに異ならしめられている。このため、上記構成によれば、集積回路の設計に際して回路の結線の完了の可能性とクロストークノイズ対策とを両立させることができる。すなわち、所定の配線層において、クロストークノイズの上限値を低く設定することが要求される機能ブロックについては所定の最小間隔を他より大きくすることで、クロストークノイズ対策を的確に行うことができる。また、所定の配線層においてクロストークノイズの上限値についての要求が厳しくない機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に行うこともできる。したがって、上記構成によれば、クロストークノイズ対策を効率的に行うことができる。
【0030】
更に、上記構成によれば、上記所定の最小間隔を一律に設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0031】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。この点、上記構成では、上記所定の最小間隔が所定の配線層の機能ブロック間で互いに異ならしめられているために、集積回路の設計に際して回路の結線の完了の可能性と消費電力についての要求事項とを両立させることができるようになる。
【0032】
また、上記構成では、各層の配線の線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されているために、当該集積回路の設計時における結線を規則的なパターンに従って簡易に行うこともできる。したがって、特に上記所定の領域の結線を自動配線ツールにて行う場合においては、同ツールのプログラミングの簡易化や、同ツールによる結線時の処理の簡易化を図ることもできる。
【0033】
なお、この所定の領域には、集積回路のうち論理回路が形成されることが望ましい。これに対し、集積回路のうち上記所定の領域以外の領域には、メモリやアナログ回路、I/O(入力/出力)回路等が形成されることが望ましい。
【0034】
請求項4記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールを用いて結線する半導体集積回路の設計方法において、前記結線に際し、複数の配線の線幅に対する中心線の間隔を、当該半導体集積回路の製造工程における最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることをその要旨とする。
【0035】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0036】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0037】
更に、上記設計方法によれば、上記間隔を最小加工精度の整数倍のみに設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0038】
すなわち例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。これに対し、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、消費電力についての要求事項を満足しつつも配線リソースの低減を好適に抑制することができる。
【0039】
請求項5記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する多層配線構造を有する半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、及びb.前記設定された配線間隔にて前記結線を行う工程、及びc.前記各配線間のクロストークノイズのピーク値を算出する工程、の各工程を備え、クロストークノイズのピーク値が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記配線間隔を各配線層毎に適宜変更して前記b及びcの工程を繰り返すことをその要旨とする。
【0040】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによるクロストークノイズの低減効果は、層毎に異なることが多い。
【0041】
この点、上記設計方法では、クロストークノイズのピーク値が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、配線間隔を各配線層毎に適宜変更して上記b及びcの工程を繰り返す。このため、集積回路の設計に際して結線の完了の可能性とクロストークノイズ対策との両立を図ることができる。すなわち、クロストークノイズの低減効果の大きな層について所定の最小間隔を他より大きくすることで、クロストークノイズ対策を的確に行うことができる。また、クロストークノイズ低減効果の顕著でない層については、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0042】
請求項6記載の発明は、請求項5記載の発明において、前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされることをその要旨とする。
【0043】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0044】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0045】
請求項7記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、それらの配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、それらの各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、を備えることをその要旨とする。
【0046】
上記設計方法では、先ず仮の配線を行いこの仮の結線から予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて当該集積回路内に形成される配線間隔を決定する。このため、所望する結線完了時間及び所望するクロストークノイズの制限を満たすようにして結線を行うことができるようになる。このため、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0047】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0048】
請求項8記載の発明は、請求項7記載の発明において、当該半導体集積回路は、スタンダードセルを用いて設計されるものであって、且つ、前記仮の結線を行う工程の後の工程として、前記配線間隔を最終的に決定する工程に先立ち、前記様々に設定された配線間隔のそれぞれについて、それらの配線の混雑度に基づき結線の完了が可能か否かを判定する工程を更に備え、可能でないと判定されるものがあるときには、半導体集積回路の総面積にしめる機能セルの面積の割合を低減させた後、前記仮の結線を行う工程から前記各工程を再実行することをその要旨とする。
【0049】
スタンダードセル方式を用いて半導体集積回路を設計する際には、半導体集積回路の総面積にしめる機能セルの面積の割合であるセル使用率が大きいほど、配線の混雑度が大きく結線の完了が困難となりやすい。
【0050】
この点、上記設計方法では、配線の混雑度に基づき結線の完了が可能か否かを判定する工程を更に備え、可能でないと判定されるものがあるときには、半導体集積回路の総面積にしめる機能セルの面積の割合を低減させることで、結線を確実に完了させることができるようになる。
【0051】
なお、セル使用率は、その初期値としては、面積縮小の観点から極力大きな値に設定することが望ましい。
請求項9記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、その配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、その各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、を備えることをその要旨とする。
【0052】
上記設計方法では、先ず仮の配線を行いこの仮の結線から予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて、仮の結線における配線間隔の設定態様が当該集積回路内の結線を完了する際に適切であるか否かを評価する。このため、仮の結線における配線間隔の設定態様が、所望する結線完了時間及び所望するクロストークノイズの制限を満たすか否かを早期に把握することができるようになる。このため、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0053】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0054】
請求項10記載の発明は、請求項7〜9のいずれかに記載の発明において、前記配線の混雑度に基づいた結線完了時間の予測は、仮の結線の行われた配線の混雑度と結線完了時間との関係を定めたデータベースに基づき行われ、前記結線完了時に生じるクロストークノイズの予測は、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めたデータベースに基づき行われることをその要旨とする。
【0055】
上記設計方法では、配線の混雑度に基づいた結線完了時間の予測や結線完了時に生じるクロストークノイズの予測を的確に行うことができる。なお、仮の結線の行われた集積回路の配線の混雑度と結線完了時間との関係を定めたデータベースは、当該半導体集積回路の設計に際しての制約となるパラメータ毎に分類されたデータを有することが望ましい。また、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めたデータベースも、当該半導体集積回路の設計に際しての制約となるパラメータ毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積などがある。
【0056】
請求項11記載の発明は、機能単位でモジュール化された複数の機能ブロック及び多層配線構造の少なくとも一方を有する集積回路の各箇所であって、且つ配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、及びb.前記設定された配線間隔にて前記結線を行う工程、及びc.前記結線の行われた集積回路の消費電力を算出する工程、の各工程を備え、前記消費電力が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記機能ブロック及び配線層の少なくとも一方毎に前記配線間隔を適宜変更して前記b及びcの工程を繰り返すことをその要旨とする。
【0057】
半導体基板の総面積を一定とした場合、消費電力を低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となることが多い。一方、多層配線構造を有する半導体集積回路においては、配線間隔を広げることによる消費電力の低減効果は、層毎に異なることが多い。また、機能ブロックを有する半導体集積回路においては、配線間隔を広げることによる消費電力の低減効果は、機能ブロック毎に異なることが多い。
【0058】
この点、上記設計方法では、消費電力が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、機能ブロック及び配線層の少なくとも一方毎に配線間隔を適宜変更して上記b及びcの工程を繰り返す。このため、集積回路の設計に際して結線の完了の可能性と消費電力の低減との両立を図ることができる。
【0059】
すなわち、例えば、消費電力の低減効果の大きな層について配線間隔を他より大きくすることで、消費電力を的確に低減することができる。一方、消費電力の低減効果の顕著でない層については、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。
【0060】
また、例えば、消費電力の低減効果の大きな機能ブロックについて配線間隔を他より大きくすることで、消費電力を的確に低減することができる。一方、消費電力の低減効果の顕著でない機能ブロックについては、極力配線間隔を縮小することで、限られた半導体集積回路の総面積において集積回路の結線を比較的短時間且つ確実に完了することもできる。
【0061】
したがって、上記設計方法によれば、消費電力の低減を効率的に行うことができるようになる。
請求項12記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、を備えることをその要旨とする。
【0062】
一般に、配線の混雑度は、結線完了時間と相関がある。
この点、上記設計方法では、先ず仮の結線を行いこの仮の結線の行われた集積回路の消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線混雑度とに基づいて当該集積回路内に形成される配線間隔を決定する。このため、所望する結線完了時間及び消費電力の制限を満たすようにして結線を行うことができるようになる。したがって、上記設計方法によれば、消費電力についての要求事項を満たす集積回路の設計を効率的に行うことができるようになる。
【0063】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0064】
請求項13記載の発明は、配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、を備えることをその要旨とする。
【0065】
上述のように、配線の混雑度は、結線完了時間と相関がある。
この点、上記設計方法では、先ず仮の結線を行いこの仮の結線の行われた集積回路についての消費電力と配線の混雑度とに基づいて、仮の結線における配線間隔の設定態様が当該集積回路内の結線を完了する際に適切であるか否かを評価する。このため、仮の結線における配線間隔の設定態様が、所望する結線完了時間及び所望する消費電力の条件を満たすか否かを早期に把握することができるようになる。したがって、上記設計方法によれば、消費電力についての要求事項を満たす集積回路の設計を効率的に行うことができるようになる。
【0066】
なお、仮の結線では、配線のショートを許容するようにしてもよい。そして、仮の結線を行った時点でのショートの数や未結線箇所の数を、配線の混雑度を示すパラメータとしてもよい。
【0067】
請求項14記載の発明は、請求項7〜13のいずれかに記載の発明において、前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされることをその要旨とする。
【0068】
半導体基板の総面積を一定とした場合、クロストークノイズを低減すべく、配線間隔を広げると集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。このため、複数の配線の線幅に対する中心線の間隔の所定の最小単位を、例えば当該半導体集積回路の製造工程における最小加工精度に基づいて設定した場合、クロストークノイズを低減すべく上記間隔を最小単位の整数倍にて拡大していくと、集積回路の全ての結線を行うことが困難となりやすい。
【0069】
この点、上記設計方法では、結線に際し、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、クロストークノイズの低減を図りつつも配線リソースの低減を好適に抑制することができる。したがって、上記設計方法によれば、クロストークノイズ対策を効率的に行うことができるようになる。
【0070】
更に、上記設計方法によれば、上記中心線の間隔を最小加工精度の整数倍のみに設定する場合と比較して、クロストークノイズに対する要求事項に限らず、様々な要求事項を満足するような設計を効率的に行うことができるようになる。
【0071】
例えば、半導体基板の総面積を一定とした場合、配線で消費される電力を低減すべく配線間隔を広げる場合にも、集積回路の全ての結線を行うことが困難となる(配線リソースが低減する)ことが多い。これに対し、結線に際して、複数の配線の線幅に対する中心線の間隔を、最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とすることで、消費電力についての要求事項を満足しつつも配線リソースの低減を好適に抑制することができる。
【0072】
【発明の実施の形態】
(第1の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第1の実施形態について、図面を参照しつつ説明する。
【0073】
図1は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、この支援装置はスタンダードセル方式の設計を支援する装置として構成されている。
【0074】
はじめに、同支援装置を構成する各部の機能について説明する。
ライブラリ10は、半導体集積回路を構成すべき各種機能セルのセル情報や、それら機能セルの遅延情報、セットアップ及びホールドタイムに関する制約情報等、それら機能セルの性能情報が格納される部分である。ここで、各種機能セルは、論理演算素子(論理積、論理和、排他的論理和、排他的論理積、否定等)やフリップフロップ、RAM等のメモリ、A/D等のアナログ素子等又はそれらを用いて形成される回路である。更に、ライブラリ10は、上記各機能セルの面積情報等、同機能セルのレイアウトに関する情報が格納される部分でもある。このライブラリ10は、ハードディスク装置等の記憶装置によって構成されている。
【0075】
また、設計仕様格納部12は、例えばハードウェア記述言語(HDL)で記述された半導体集積回路の機能及び構造に関する情報が格納される部分である。詳しくは、この設計仕様格納部12は、ゲートレベルの回路情報、すなわち、上記ライブラリ10で定義されるセルのうち、使用されるセルの種類や数並びにこれらの結線情報が格納される部分である。この設計仕様格納部12も、ハードディスク装置等の記憶装置によって構成されている。
【0076】
更に、プロセスパラメータ14は、指定されたデザインルール(製造工程における最小加工精度に関する規定、素子サイズや最小配線間隔等を規定するルール)に応じた素子特性や、材質毎の配線特性等に関する情報が格納される部分である。このプロセスパラメータ14も、ハードディスク装置等の記憶装置によって構成されている。
【0077】
また、セル使用率設定部16は、設計対象となる半導体集積回路の総面積に対する機能セルの占める面積の割合であるセル使用率についてのデータを格納する部分であり、これについてもハードディスク装置等の記憶装置によって構成されている。
【0078】
これに対し、自動配置部20と、自動配線ツールとしての概略配線部22及び詳細配線部24とは、レイアウト設計を行う部分である。すなわち、自動配置部20は、上記機能セルの自動配置を行う部分であり、概略配線部22及び詳細配線部24は、それら配置された機能セル間の結線を行う部分である。これら上記機能セルの自動配置、及びそれら配置された機能セル間の結線は、上記機能セルに対応する上記ライブラリ10の有するレイアウトデータを用いて行なわれる。
【0079】
ちなみに、上記詳細配線部24は、これら機能セル間の結線を完了する処理を行う部分である。これに対し、上記概略配線部22は、詳細配線部24における結線を完了する処理より演算負荷の小さな処理にて上記機能セル間の仮の結線を行う部分である。なお、上記自動配置部20や概略配線部22、詳細配線部24は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに結線実行手順に関するプログラムが記録された記憶装置によって構成されている。
【0080】
この概略配線部22や詳細配線部24で生成された回路のネットリストは、配線混雑度解析部30や、クロストークノイズ解析部32に供給される。このネットリストは、階層構造を保持しており、各機能セルから構成される機能ブロック内のネットリストと機能ブロック間のネットリストとからなる。
【0081】
ここで、配線混雑度解析部30は、配線混雑度上限値格納部34に格納された配線混雑度のデータと上記ネットリストとに基づき、配線混雑度を解析する部分である。ここで、配線混雑度上限値格納部34の格納する上限値は、詳細配線工程において全てのセル間の結線を完了することができると予測される配線混雑度の上限値である。
【0082】
一方、クロストークノイズ解析部32では、クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値と上記ネットリストとプロセスパラメータ14とに基づき、クロストークノイズの解析を行う部分である。ここで、クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値は、当該半導体集積回路にとってのクロストークノイズの上限値である。詳しくは、例えば順序回路の出力論理信号が論理反転を引き起こしたり、信号の伝搬速度の変化によって当該集積回路の所望とする動作周波数に対する実際の動作周波数のずれが許容範囲を超えたりすることのないような値とされる。
【0083】
なお、上記配線混雑度解析部30やクロストークノイズ解析部32は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに実行手順に関するプログラムが記録された記憶装置によって構成されている。また、上記配線混雑度上限値格納部34やクロストークノイズ上限値格納部36は、ハードディスク装置等の記憶装置によって構成されている。
【0084】
また、グリッド設定部40は、自動配置部20において機能セルの配置態様を規定する配置用グリッドや、概略配線部22、詳細配線部24において配線の配置態様を規定する配線用グリッドを設定する部分である。また、グリッド設定部40では、データベース42、44を参照して、半導体集積回路に適用される最終的な配線用グリッド間隔を決定する。ここで、データベース42は、概略配線部22によって仮の結線の行われた集積回路について配線混雑度解析部30によって解析された配線混雑度と、詳細配線部24での結線の完了に要する時間(結線完了時間)との相関関係を示すデータを保持する。一方、データベース44は、概略配線部22によって仮の結線の行われた集積回路についてのクロストークノイズ解析部32での解析結果と、詳細配線部24にて結線の完了された半導体集積回路に生じるクロストークノイズとの相関関係を示すデータを保持する。このグリッド設定部40は、ハードディスク装置、あるいはROMやRAM等の半導体メモリに実行手順に関するプログラムが記録された記憶装置によって構成されている。
【0085】
その他、入力部50は、タッチペンやキーボード、マウス等の入力装置からなって、レイアウト設計のための各種情報や命令を入力する部分である。また、フロア表示部52は、上記入力情報やレイアウト図等を可視表示する部分である。一方、制御部54は、このフロア表示部52をはじめ、上述した自動配置部20、概略配線部22、詳細配線部24、配線混雑度解析部30、クロストークノイズ解析部32、グリッド設定部40等の動作を統轄する部分である。
【0086】
上記構成を有する設計支援装置を用いて、半導体集積回路の設計が行われる。特に、本実施形態では、結線完了時間とクロストークノイズとの双方の要求を満たす配線間隔を設定しつつ半導体集積回路の設計を行う。
【0087】
ここで、こうした設計支援装置を用いて行われる本実施形態にかかる配線間隔の決定及び同配線間隔に基づく結線にかかる処理手順について図2を用いて説明する。
【0088】
この一連の手順においては、まずステップ100において、上記設計仕様格納部12に格納されたゲートレベルの回路情報が自動配置部20に入力される。そして、自動配置部20では、このゲートレベルの回路情報に基づき、また、上記セル使用率設定部16によって設定されたセル使用率に基づき機能セルの自動配置が行われる。なお、このステップ100においては、セル使用率は、当該半導体集積回路の面積縮小の観点から、経験的に許容されると考えられる極力大きな値に設定することが望ましい。
【0089】
こうして機能セルの配置が終了すると、ステップ110、120において、この配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に仮の結線を行う。これは、配線間隔と結線完了時間及びクロストークノイズとに相関関係があることを考慮し、所望とする結線完了時間とクロストークノイズの許容範囲にて最終的な結線を行うべく、適切な配線間隔を決定するために行う処理である。
【0090】
図3に、配線間隔を規定するグリッドの間隔と結線完了時間との関係を例示する。同図3に示すように、配線用グリッドの間隔を広げるにつれて、配線を行えるスペースである配線リソースが減少することにより結線完了時間は増大する。また、多層配線構造を有する半導体集積回路においては、配線用グリッドの間隔を広げる配線層数が多ければ多いほど、配線リソースの減少により結線完了時間は増大する。
【0091】
一方、図4に、配線間隔を規定するグリッドの間隔とクロストークノイズとの関係を例示する。同図4に示すように、配線用グリッドの間隔を広げるにつれて、配線間のカップリング容量が削減できるために、クロストークノイズを低減することができる。また、多層配線構造を有する半導体集積回路においては、配線用グリッドの間隔を広げる配線層数が多ければ多いほど、配線間のカップリング容量が削減できるために、クロストークノイズをいっそう低減することができる。
【0092】
このように配線間隔と結線完了時間及びクロストークノイズとに相関関係があるため、配線間隔を様々に設定して仮の結線を行うことで、適切な配線間隔を把握することができる。そして、配線間隔を適切な間隔に決定した後、最終的な結線を行うことで、所望とする結線完了時間にて効率的にクロストークノイズ対策を行いつつ結線を完了することができる。以下、この処理について、説明する。
【0093】
まず、ステップ110において、様々な配線パターンによる配線用グリッドを設定する。本実施形態では、この配線用グリッドは、図5(a)に示すように、配線Wの線幅(2δ)に対する中心線を規定するものである。また、本実施形態では半導体集積回路を多層配線構造を有して構成する場合を想定しているため、同図5(b)に示すように、破線で示されるグリッドは、各層においては所定の間隔毎に平行に設定され、また、隣接する層間では互いに直交するように設定されている。
【0094】
この各配線用グリッド間の間隔は、本実施形態では、各層毎に各別の値に設定可能とする。詳しくは、このグリッド間隔Δは、図5(c)に示すように、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義される。ここで、最小単位αは、当該半導体集積回路の製造工程での最小加工精度(リソグラフィ技術の最小加工精度等)に基づいて設定される。すなわち、同最小加工精度によってグリッド間隔Δとして許容できる下限に設定される。このように配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることが可能となる。そしてこれにより、クロストークノイズを低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図る。
【0095】
また、本実施形態では、上記最小単位αよりも小さい上記単位kαは、その整数倍が上記最小単位αとなるように設定する。これにより、各配線層毎にグリッド間隔が異なる場合であれ、各配線層の配線のコンタクトを簡易に行うことができるようになる。
【0096】
なお、上記自動配置部20においてセルの配置を規定する配置用グリッドは、例えば最小単位αの配線用グリッドの互いに直交する格子点を用いて定義すればよい。この場合、上述したように最小単位αよりも小さい上記単位kαの整数倍が上記最小単位αとなるように設定することで、各機能セル間の配置と配線用グリッドとを簡易に整合させることができ、ひいては、結線にかかる処理を簡易に行うことができる。
【0097】
図6に、上記配線パターンのうち配線間隔を広げる配線層の設定にかかるパターンを例示する。同図6に示すように、本実施形態では、グリッド間隔Δとして、最小単位αを基準として、それよりもグリッド幅を拡大する配線層を指定するようにする。すなわち、配線層設定パターン1は、第5層目の配線層のグリッド間隔を拡大するよう指定しており、また、配線層設定パターン2は、第5層目の配線層及び第4層目の配線層のグリッド間隔を拡大するよう指定している。
【0098】
なお、この配線層設定パターンについては、上層の配線層ほど優先的にグリッド間隔を広げるパターンを含んで構成することが望ましい。すなわち、通常、上層の配線層ほど、互いに平行して配線が設けられる距離が長くなりやすいことに起因して、上層の配線層ほど互いに平行して設けられる配線のカップリング容量が大きくなりやすい。このため、上層の配線層ほど配線間隔を拡大することによるクロストークノイズの低減効果が大きくなる。
【0099】
そして、ステップ120では、上記各配線層設定パターンの各パターンについてグリッド幅を様々に設定した各配線パターン毎に、概略配線部22によって同配線パターンに従った各機能セルの仮の結線を行う。この仮の結線は、当該配線パターンでの最終的な結線態様を見積もるために行う処理である。ここでは、上記配線パターンによって指定されたグリッド間隔に基づいて結線ポイント間を最短で結線する等の簡易な結線処理を行えばよい。そして、この際、複数の配線に同一のグリッドが共通して用いられる箇所である配線同士がショートする箇所や、未結線箇所を許容するものとする。
【0100】
ステップ130では、各配線パターンによって指定されたグリッド間隔の設定に従った仮の結線の行われた集積回路のそれぞれについて、配線混雑度が上記配線混雑度解析部30にて解析される。ここで、配線混雑度は、仮の結線の行われた集積回路についてのショートの数や未結線の箇所の数にて定量的に定義されるようにする。
【0101】
そして、ステップ140では、上記配線混雑度上限値格納部34に設定されたデータに基づき、上記ステップ100において設定したセル使用率の妥当性が判定される。すなわち、ここでは、上記ステップ130にて解析された配線混雑度が、詳細配線部24によって全てのセル間の結線を完了することができると予測される配線混雑度の上限値以下であるか否かを判断する。なお、上記上限値は、半導体集積回路の設計に際しての制約となるパラメータの値毎に各別に設定されることが望ましい。ちなみに、ここでのパラメータは、半導体集積回路の製造時に制約となる最小加工精度等である。
【0102】
そして、上限値を超えていると判断されると、セル使用率が妥当ではないとの判定の下、ステップ150にてセル使用率が再設定される。すなわち、半導体集積回路の総面積に対する機能セルの占める面積であるセル使用率を低減させてセル使用率が再設定される。これは、セル使用率と結線完了時間との間に図7に模式的に示すような関係があることによる。すなわち、セル使用率が大きいほど結線完了時間は増大し、セル使用率が大きすぎると結線の完了自体が不可能となる。このため、配線混雑度が結線を完了することが可能な上限値を超えているときには、セル使用率を低減させることで、結線の完了を可能とすることができる。
【0103】
そして、ステップ150にてセル使用率の再設定がなされた場合には、この再設定のなされたセル使用率にてステップ100の処理からステップ140の処理を再実行する。
【0104】
そして、ステップ140にてセル使用率が妥当と判定されると、ステップ160、170に移行する。これらステップ160、170の各処理は、クロストークノイズの解析を行うための処理であり、これらの処理は上記クロストークノイズ解析部32において行われる。
【0105】
すなわち、ステップ160において、隣接する配線間のカップリング容量や配線及び基板間のカップリング容量、配線抵抗を抽出する。ここでは、自動配置部20や概略配線部22によってレイアウトの行われた半導体集積回路のデータに加えて、上記プロセスパラメータ14の有するデータを用いて、各配線パターンに従って仮の結線のなされた集積回路毎に、上記カップリング容量及び配線抵抗の抽出を行う。なお、互いにショートした配線についてのカップリング容量の算出は、例えば最小のグリッド間隔(最小単位α)によって規定される最小の配線間隔を想定して行うなどすればよい。
【0106】
こうしてカップリング容量や配線抵抗の抽出がなされると、ステップ170において、各配線パターンに従って仮の結線のなされた集積回路毎に、各配線でのクロストークノイズが算出される。すなわち、クロストークノイズの解析の対象となる配線について、図8に示す基板とのカップリング容量C0や、これと隣接配線とのカップリング容量Cmをそれぞれピックアップする。更に、クロストークノイズの解析の対象となる配線について、図8に示す配線抵抗R1、R2、隣接配線を駆動するドライバD1の駆動能力、対象となる配線を駆動するドライバD2の駆動能力、及び各ドライバを駆動するタイミング等をそれぞれピックアップする。そして、これらから対象となる配線に生じるクロストークノイズを、電圧値又は当該半導体集積回路のシステム電圧に対するノイズ電圧の割合として算出する。
【0107】
こうしてクロストークノイズ解析がなされると、ステップ180、190に移行する。これらステップ180、190は、ステップ130における配線混雑度の解析結果及びステップ170におけるクロストークノイズの解析結果に基づき、最適な配線パターンを抽出する処理であり、これらの処理は、上記グリッド設定部40にて行われる。
【0108】
ここでは、まず上記ステップ130における配線混雑度の解析結果と上記データベース42とに基づいて、詳細配線部24における結線の完了に要する時間を各配線パターン毎にそれぞれ予測する。図9に、上記データベース42の有するデータを模式的に示す。同図9に示すように、仮の結線の行われた集積回路の配線混雑度が大きいほど、結線完了時間は増大する。このデータベース42は、当該半導体集積回路の設計に際しての制約となるパラメータの値毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積、セル使用率などがある。なお、こうしたデータベース42は、例えば、予めサンプルデータを用いて、仮の結線の行われた集積回路の配線混雑度と結線完了時間との相関関係を求めることで取得することができる。
【0109】
また、上記ステップ170におけるクロストークノイズの解析結果と上記データベース44とに基づいて、詳細配線部24による結線完了時の集積回路に生じるクロストークノイズを、各配線パターン毎にそれぞれ予測する。ここでは、まず図10に示すように、上記ステップ170におけるクロストークノイズの解析結果から、上記クロストークノイズ上限値格納部36に格納されたクロストークノイズの上限値を超えるクロストークノイズ違反となるネットの割合を算出する。そして、このクロストークノイズ違反となるネットの割合と上記データベース44とから、結線完了時のクロストークノイズ違反ネット割合を予測する。このデータベース44も、当該半導体集積回路の設計に際しての制約となるパラメータの値毎に分類されたデータを有することが望ましい。ちなみに、上記当該半導体集積回路の設計に際しての制約となるパラメータとしては、半導体集積回路の製造時に制約となる最小加工精度や、半導体基板の総面積、セル使用率などがある。なお、このデータベース44も、例えば、予めサンプルデータを用いて、仮の結線の行われた集積回路のクロストークノイズと結線完了時のクロストークノイズとの相関関係を求めることで取得することができる。
【0110】
次に、各配線パターンと上記予測された結線完了時間及び結線完了時の集積回路に生じるクロストークノイズ違反となるネットの割合との関係を示すテーブルデータを生成する。図11に、このテーブルデータを例示する。このテーブルデータには、先の図6に示した各配線層設定パターンに従ってグリッド間隔を拡大していった各配線パターンについて、結線完了時間とクロストークノイズ違反ネット割合とが設定される。
【0111】
こうしてテーブルデータを作成すると、ステップ190において最適な配線パターンを抽出する。ここでは、先の図1に示した入力部50を介して当該支援装置に入力される結線完了時間とクロストークノイズ対策との優先度合い(優先条件)に基づいて、最適な配線パターンが抽出される。なお、この優先度合いの入力に際しては、クロストークノイズのピーク値の許容される値や、結線完了時間についての許容される値を合わせて入力するようにしてもよい。これにより、クロストークノイズ対策を優先した場合には、許容される結線完了時間を満たす範囲で、もっともクロストークノイズを低減できる配線パターンが抽出される。また、結線完了時間を優先した場合には、クロストークノイズの許容値を満たす範囲で、もっとも結線時間が短い配線パターンが抽出される。
【0112】
この結線完了時間とクロストークノイズ対策との優先度合いは、例えばコスト関数を用いて定量化するようにすればよい。ここでコスト関数は、結線時間に所定の重み付けをすることで定量化される結線時間についてのコストと、クロストークノイズ違反ネット割合に所定の重み付けをすることで定量化されるクロストークノイズ対策についてのコストとの和や積等として定義される。そして、コスト関数が最小となるものを抽出するようにすれば、指定された優先度合いに応じた配線パターンを抽出することができる。
【0113】
すなわち、例えば、クロストークノイズに対する重み付けを結線時間に対する重み付けよりも大きくすることで、クロストークノイズの低減を結線時間よりも優先させていることを定量的に表記することができる。そして、この場合、クロストークノイズ違反ネット割合の増大はコスト関数の値を大きく増大させることとなるため、コスト関数を最小とするものとはなり得ない。このため、クロストークノイズ違反ネット割合を極力低減した配線パターンが指定された優先度合いに応じた最適な配線パターンとして抽出されることとなる。
【0114】
こうして最適な配線パターンが抽出されると、ステップ200において上記詳細配線部24による最終的な結線が行われる。
なお、この最終的な結線が行われる際には、この処理時間とステップ130にて解析された該当する配線パターンの配線混雑度との相関関係を上記データベース42に加えるなどしてもよい。同様に、最終的な結線が行われた後に、クロストークノイズ解析をして、ステップ170における該当する配線パターンのクロストークノイズの解析結果との相関関係を上記データベース44に加えるなどしてもよい。これらにより、データベース42、44の有するデータを絶えず更新することができ、その精度を向上させることができる。
【0115】
以上説明した本実施形態によれば、以下の効果が得られるようになる。
(1)配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることができる。そしてこれにより、クロストークノイズを低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図ることができるようになる。
【0116】
(2)グリッド間隔を、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義するとともに、上記単位kαを、その整数倍が上記最小単位αとなるように設定した。これにより、各配線層毎にグリッド間隔が異なる場合であれ、各配線層の配線のコンタクトを簡易に行うことができるようになる。
【0117】
(3)各配線層毎に各別にグリッド間隔を設定可能とした。これにより、クロストークノイズの低減を効率的に行うことができる。
(4)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、詳細配線部24における結線の完了に要する時間を予測した。これにより、結線の完了前に結線完了時間を予測することができ、結線を完了させる適切な配線間隔を早期に取得することができる。
【0118】
(5)仮の結線の行われた半導体集積回路についての配線混雑度と詳細配線部24による結線完了時間との相関関係を示すデータを有するデータベース42を備えることで、仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、結線完了時間を好適に予測することができるようになる。
【0119】
(6)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果に基づき、詳細配線部24による結線完了時に生じるクロストークノイズを予測した。これにより、結線の完了前に完了時のクロストークノイズを予測することができ、クロストークノイズを許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0120】
(7)仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果と詳細配線部24による結線完了時に生じるクロストークノイズとの相関関係を示すデータを有するデータベース44を備えた。これにより、仮の結線の行われた半導体集積回路についてのクロストークノイズの解析結果に基づき、結線完了時に生じるクロストークノイズを好適に予測することができるようになる。
【0121】
(8)配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に上記各予測を行うための仮の結線を行った。これにより、結線完了時間及びクロストークノイズについての要求を満足させつつ結線を行うことのできる配線間隔を抽出することができるようになる。
【0122】
(9)配線の混雑度に基づき結線の完了が可能か否かを判定し、可能でないと判定されるものがあるときには、セル使用率を低減させることで、結線を確実に完了させることができるようになる。
【0123】
(第2の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第2の実施形態について、先の第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0124】
図12は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、同図12において、先の図1と同一の要素については、便宜上同一の符号を付した。また、図13に、この設計支援装置を用いて行われる本実施形態にかかる機能セル間の結線にかかる処理手順を示す。
【0125】
この一連の手順においては、まずステップ300において、先の図2のステップ100同様、自動配置部20において、このゲートレベルの回路情報に基づき、また、上記セル使用率設定部16によって設定されたセル使用率に基づき機能セルの自動配置が行われる。なお、このステップ300においても、セル使用率は、当該半導体集積回路の面積縮小の観点から、経験的に許容されると考えられる極力大きな値に設定することが望ましい。
【0126】
こうして機能セルの配置が終了すると、ステップ310において、この配置の終了した各機能セルを結線する際の配線間隔を、グリッドの間隔Δの最小単位αに設定する。なお、この処理は、先の図12に示すグリッド設定部74によって行われる。続くステップ320では、このグリッド間隔Δを用いて配線ツールとしての図12に示す自動配線部70によって機能セル間の結線を行う。
【0127】
一方、ステップ330においては、結線を完了させることができるか否かが判断される。ここでは、例えば所定時間が経過しても結線が完了されないときに結線の完了が不可能と判断するようにすればよい。そして、ステップ330において結線を完了することができないと判断されると、先の図2のステップ150同様、ステップ335においてセル使用率を低減し、ステップ300〜ステップ330の処理を繰り返す。
【0128】
そして、ステップ330において、結線が完了したと判断されると、ステップ340において、隣接する配線間のカップリング容量や配線及び基板間のカップリング容量、配線抵抗を抽出する。ここでは、自動配置部20や自動配線部70によってレイアウトの行われた半導体集積回路のデータに加えて、上記プロセスパラメータ14の有するデータを用いて、上記カップリング容量及び配線抵抗の抽出を行う。なお、これは、先の図12に示すクロストークノイズ解析部72によって行われる処理である。
【0129】
こうしてカップリング容量や配線抵抗の抽出がなされると、ステップ350において、各配線でのクロストークノイズが算出される。これは、先の図12に示したクロストークノイズ解析部72によって行われる処理であり、この処理は、先の図8に示したものと同様の手法にて行えばよい。
【0130】
そして、クロストークノイズ解析が行われると、上記クロストークノイズ解析部72では、クロストークノイズが許容範囲にあるか否かを判断する(ステップ360)。この許容範囲は、例えば順序回路の出力論理信号が論理反転を引き起こしたり、信号の伝搬速度の変化によって当該集積回路の所望とする動作周波数に対する実際の動作周波数のずれが許容範囲を超えたりすることのない範囲とすればよい。
【0131】
そして、ステップ360において、クロストークノイズが許容範囲にないと判断されると、ステップ370において所定の配線層のグリッドの間隔Δを拡大する。ここで拡大されるグリッドの間隔Δは、その最小単位αと、同最小単位αよりも小さい単位kα(k<1)の所定の整数倍との和「α+nkα(n=0,1,2…)」として定義される。ここで、最小単位αは、先の第1の実施形態と同様、当該半導体集積回路の製造工程での最小加工精度(リソグラフィ技術の最小加工精度等)に基づいて設定される。また、本実施形態においても、上記最小単位αよりも小さい上記単位kαは、その整数倍が上記最小単位αとなるように設定する。
【0132】
なお、ここで所定の配線層とは、全ての配線層であってもよい。また、グリッド間隔Δを拡大する所定の配線層として、上層の配線層を優先的に選択することが望ましい。これは上述したように、上層の配線層ほど、互いに平行して設けられる距離が長くなりやすいことに起因して、上層の配線層ほど互いに平行して設けられる配線のカップリング容量が大きくなりやすいことによる。このため、上層の配線層の配線間隔を拡大することで、クロストークノイズの効果的な低減を図ることが可能となる。
【0133】
こうしてステップ370において所定のグリッド間隔を拡大すると、ステップ320〜ステップ360の処理を繰り返す。こうしてステップ360によってクロストークノイズが許容範囲となるとこの処理を終了する。
【0134】
以上説明した本実施形態によっても、先の第1の実施形態の上記(1)〜(3)及び(9)に準じた効果を得ることができる。
(第3の実施形態)
以下、本発明にかかる半導体集積回路及びその設計方法をスタンダードセル方式の半導体集積回路及びその設計方法に適用した第3の実施形態について、先の第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0135】
図14は、本実施形態にかかる設計支援装置の構成を示すブロック図である。なお、同図14において、先の図1と同一の要素については、便宜上同一の符号を付した。
【0136】
上記第1の実施形態では、結線完了時間とクロストークノイズとの双方の要求事項を満たす配線間隔を設定しつつ半導体集積回路の設計を行った。これに対し、本実施形態では、結線完了時間と消費電力との双方の要求事項を満たす配線間隔を設定しつつ半導体集積回路の設計を行う。このため、図1に示す設計支援装置には、クロストークノイズ解析部32に代えて、消費電力検証部80が備えられている。また、本実施形態では、仮の結線の行われた集積回路の配線混雑度を結線完了時間を把握するパラメータとして直接使用する。すなわち、先の図9に示したように、仮の結線の行われた集積回路の配線混雑度と結線完了時間との間には相関関係があるために、配線混雑度を直接用いて結線完了時間についての条件を指定するようにする。
【0137】
ここで、こうした設計支援装置を用いて行われる本実施形態にかかる配線間隔の決定及び同配線間隔に基づく結線にかかる処理手順について図15を用いて説明する。
【0138】
この一連の処理においては、まずステップ400〜420において、先の図2のステップ100〜120と同様の処理によって、機能セルの自動配置と、様々な配線パターンの設定と、各配線パターンに従った仮の結線にかかる処理とを行う。
【0139】
次に、ステップ430において、上記各配線パターンによって指定されたグリッド間隔の設定に従った仮の結線の行われた集積回路の中から、結線を完了させることのできるパターンを抽出する。この抽出は、仮の結線の行われた集積回路から取得される情報に基づいて行われる。
【0140】
詳しくは、まず、先の図2のステップ130の処理と同様の処理によって、上記仮の結線の行われた集積回路のそれぞれについての配線混雑度が解析される。次に、この解析された配線混雑度が先の図14に示す配線混雑度上限値格納部34に格納された上限値以下であるものについてこれを結線を完了させることのできるパターンとして抽出する。
【0141】
次に、ステップ440では、上記抽出された結線を完了させることのできるパターンのそれぞれについて、上記消費電力検証部80にて当該集積回路の消費電力が算出される。ここで、当該集積回路の消費電力は、各配線毎の消費電力の総和として算出すればよい。そして、この各配線毎の消費電力は、各配線毎の充放電態様に基づいて算出することができる。こうした充放電態様にかかるパラメータとしては、当該配線と他の配線とのカップリング容量Cや、当該配線の駆動電圧V、当該配線の敷設箇所における動作周波数f、当該配線での信号の遷移確率βがある。ちなみに、本実施形態では、各配線毎の消費電力を、量「βCVf2」に比例する量として算出する。
【0142】
なお、上記遷移確率βは、例えば、当該集積回路についての回路情報に基づき取得するようにすればよい。すなわち、所定のテストパターンを用いて当該集積回路を動作させたときの各配線の信号の遷移確率βを、当該集積回路の回路情報に基づき取得する。この遷移確率βは、例えば単位クロック当たりの信号の遷移回数として定義するなどすればよい。
【0143】
次に、ステップ450では、上記態様にて算出された消費電力に基づき、消費電力低減率が基準値以上のパターンを抽出する。ここで、「消費電力低減率」とは、予め設定された消費電力に対する低減率として定義される。この予め設定された消費電力は、例えば、当該半導体集積回路の以前に製造された集積回路のうちの類似品の消費電力としてよく、またステップ440において算出された消費電力のうちの最大値としてもよい。
【0144】
ちなみに、上記ステップ410において、グリッド間隔が拡大されたパターンほど、消費電力低減率が基準値以上のパターンとして抽出されやすい。これは、図16に示すように、グリッド間隔を拡大するほど消費電力が改善されるという性質があるためである。ちなみに、同図16には、グリッド間隔が所定値であるときを基準値(図中、「1」)として、グリッド間隔を拡大したときの消費電力の改善割合を示している。グリッド間隔(配線間隔)が拡大するほど、これら配線間のカップリング容量が低下するため、図16に示されるように消費電力が改善されるようになる。
【0145】
そして、ステップ460では、上記ステップ450において抽出された消費電力低減率が基準値以上であるパターンの中から、最適な配線パターンを抽出する処理を行う。ここでも、先の図2のステップ190同様、上記入力部50を介して当該支援装置に入力される結線完了時間の指標としての配線混雑度と消費電力との優先度合い(優先条件)に基づいて、最適な配線パターンが抽出される。この優先度合いも、先の図2のステップ190同様、例えばコスト関数を用いて定量化することができる。
【0146】
このように、本実施形態では、仮の結線の行われた集積回路の消費電力に基づいて、当該配線パターンによって結線の完了した集積回路についての消費電力を評価するようにしている。これにより、結線の完了前に完了時の消費電力を評価することができ、消費電力を許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0147】
こうして、最適な配線パターンが抽出されると、ステップ470では、先の図2のステップ200と同様の処理によって、最終的な結線が行われる。
以上説明した本実施形態によれば、先の第1の実施形態の上記(2)の効果等に加えて、更に以下の効果が得られるようになる。
【0148】
(10)配線用グリッド間隔、すなわち、配線の線幅に対する中心線の間隔を最小単位αの整数倍、又は同最小単位αの整数倍にならない間隔に設定可能とすることで、結線にかかる自由度を高めることができる。そしてこれにより、消費電力を低減すべく配線間隔を広げることと、配線リソースを確保するための配線間隔の拡大の抑制を図ることとの両立を図ることができるようになる。
【0149】
(11)各配線層毎に各別にグリッド間隔を設定可能とした。これにより、消費電力の低減を効率的に行うことができる。
(12)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての配線混雑度の解析結果に基づき、詳細配線部24における結線の完了に要する時間を把握した。これにより、結線の完了前に結線完了時間を把握することができ、結線を完了させる適切な配線間隔を早期に取得することができる。
【0150】
(13)配置の終了した各機能セルに対し仮の結線を行った。そして、この仮の結線の行われた半導体集積回路についての消費電力を算出した。これにより、結線の完了前に完了時の消費電力を評価することができ、消費電力を許容範囲に抑えることのできる配線間隔を早期に取得することができる。
【0151】
(14)配置の終了した各機能セルを結線する際の配線間隔を様々に設定して、これら各配線間隔毎に上記各予測を行うための仮の結線を行った。これにより、結線完了時間及び消費電力についての要求を満足させつつ結線を行うことのできる配線間隔を抽出することができるようになる。
【0152】
ここで、上記1〜3の各実施形態にかかる設計に基づいて製造された半導体集積回路を、図17に例示する。
同図17(a)は、上記半導体集積回路の上面図である。同図17(a)に例示するように、当該半導体集積回路500は、論理回路の形成されている論理回路部510とアナログ回路の形成されているアナログ回路部520との2つの領域を備えている。そして、論理回路部510が上記各実施形態に示した設計に基づいて製造された領域である。
【0153】
図17(b)に、この論理回路部510の第n層目の配線層の配線を、また、図17(c)に、同論理回路部510の第(n+1)層目の配線層の配線を例示する。
【0154】
図17(b)に例示するように、第n層目の配線層において実質的に平行に設けられている配線(La1〜La4)は、その線幅に対する中心線の間隔が所定の最小間隔paの整数倍に設定されている。すなわち、配線La1及び配線La2間、配線La3及び配線La4間の間隔はいずれも「pa」であり、これは最小間隔paの「1」倍である。また、配線La2及び配線La3間の間隔は「2pa」であり、これは最小間隔「pa」の「2」倍である。
【0155】
一方、図17(c)に例示するように、第(n+1)層目の配線層において実質的に平行に設けられている配線(Lb1〜Lb3)は、その線幅に対する中心線の間隔が所定の最小間隔pb(>pa)の整数倍に設定されている。すなわち、配線Lb1及び配線Lb2間の間隔は「pb」であり、これは最小間隔paの「1」倍である。また、配線La2及び配線La3間の間隔は「2pb」であり、これは最小間隔「pb」の「2」倍である。
【0156】
そして、これら第n層目の上記最小間隔paと第(n+1)層目の上記最小間隔pbとは、互いに異なっている。これは、上記各実施形態において、グリッド間隔Δを各配線層毎に各別に設定可能としたことによる。これに対し、当該集積回路の全ての配線層の配線の線幅に対する中心線の間隔を一律に設定する場合には、第n層目と第(n+1)層目の配線層で上記間隔は等しくなる。
【0157】
更に、これら第n層目の上記最小間隔paと第(n+1)層目の上記最小間隔pbとは、その一方が他方の整数倍とならない設定も可能となる。これは、グリッド間隔Δを、最小単位αと、同最小単位αよりも小さい単位kαの整数倍との和「α+nkα(n=0,1,2,…)」としたことによる。これに対し、例えば、グリッド間隔Δを最小単位αの整数倍とした場合には、上記最小間隔paと最小間隔pbとは、必ずその一方が他方の整数倍となる。
【0158】
もっとも、多層配線構造を有する半導体集積回路の製造工程における最小加工精度は、用いる材料や層間絶縁膜の平坦性の差に起因して、全ての配線層で同一となるとは限らない。例えば5層の配線層を有する半導体集積回路における各配線層の最小加工精度は、第1層目の配線層で一番小さく、第2層目〜第4層目の配線層においては共通であり、第5層目の配線層で一番大きいといった場合があり得る。しかしながら、こうした場合においても、図17に示す半導体集積回路によれば、例えば第(n+1)層についての上記最小間隔pbが、最小加工精度の整数倍とならない間隔に設定可能であるため、配線間隔の設定についての自由度の高い半導体集積回路となっている。このため、様々な要求事項を満足する設計を効率的に行うことのできる半導体集積回路となっている。
【0159】
なお、例えば第(n+1)層についての上記最小間隔pbが最小加工精度の整数倍とならない間隔である場合、この間隔は、アナログ回路部520内の第(n+1)層目の配線層の配線について上記線幅に対する中心線の間隔の最小値が最小加工精度とされているなら、その整数倍とも相違する。
【0160】
なお、上記各実施形態は、以下のように変更して実施してもよい。
・データベース42については、サンプルデータを用いて、仮の結線の行われた集積回路の配線混雑度と結線完了時間との相関関係を求めることで取得したもの等に限らない。例えば、配線混雑度と結線完了時間との相関関係を適宜の関係式にて予測算出することで取得してもよい。
【0161】
・更に、結線完了時間の予測は、データベース42を用いて行う代わりに、配線混雑度と結線完了時間との相関関係を適宜の関係式にて予測算出する手段を用いて行ってもよい。
【0162】
・データベース44については、サンプルデータを用いて、仮の結線の行われた集積回路のクロストークノイズと結線完了時に生じるクロストークノイズとの相関関係を求めることで取得したもの等に限らない。例えば、仮の結線時のクロストークノイズと結線完了時のクロストークノイズとの相関関係を適宜の関係式にて予測算出することで取得してもよい。
【0163】
・更に、結線完了時のクロストークノイズの予測は、データベース44を用いて行う代わりに、仮の結線時のクロストークノイズと結線完了時のクロストークノイズとの相関関係を適宜の関係式にて予測算出する手段を用いて行ってもよい。
【0164】
・クロストークノイズの解析態様や、同クロストークノイズの上限値の設定態様などは上記各実施形態で例示したものに限らない。
・上記第1の実施形態において、セル使用率の再設定処理を行わなくても、予め適切なセル使用率を設定して配置を行うことで、上記(1)〜(8)の効果を得ることはできる。
【0165】
・上記第1の実施形態において、最適な配線パターン(グリッド間隔)の抽出は、同実施形態で例示したものに限らない。例えば配線パターン(グリッド間隔)を1つ設定してこれに基づいて仮の結線を行った後、同仮の結線の行われた集積回路の配線混雑度やクロストークノイズから、結線完了時間や結線完了時のクロストークノイズを予測するようにしてもよい。これによっても、当該配線パターンの設定態様が結線を完了させる最終的なものとして適切であるか否かを判断するなどすることで、また、こうした一連の処理を配線間隔を設定し直して繰り返すことで、最適な配線間隔の設定態様を早期に取得することができる。なおこの場合には、配線間隔(グリッド間隔)を最小に設定してこれが結線を完了させる最終的なものとして適切であるか否かを判断し、適切でないと判断される度に、配線間隔(グリッド間隔)を段階的に拡大しつつ、その結線を完了させる最終的なものとして適切性を判断する処理を繰り返すようにしてもよい。
【0166】
・上記第1の実施形態において、仮の結線の行われた集積回路の配線混雑度から結線完了時間を予測する処理をしなくても、仮の結線の行われた集積回路のクロストークノイズに基づき結線完了時のクロストークノイズを予測することは有効である。すなわちこの予測により、結線を完了させるに際し、クロストークノイズを許容範囲に抑えることのできる配線間隔(グリッド間隔)を取得することはできる。
【0167】
・上記第1の実施形態において、仮の結線の行われた集積回路のクロストークノイズに基づき結線完了時のクロストークノイズを予測する処理をしなくても、仮の結線の行われた集積回路の配線混雑度から結線完了時間を予測することは有効である。すなわちこの予測により、結線を完了させるに際し、結線完了時間を所望する時間内とすることのできる配線間隔(グリッド間隔)を取得することはできる。
【0168】
・各配線パターンの設定態様は、上記第1の実施形態に例示したものに限らない。例えば、グリッド間隔を拡大する配線層が複数ある場合、それら各配線層におけるグリッド間隔の拡大量を異ならしめてもよい。
【0169】
・上記第2の実施形態において、所定の配線層のグリッド間隔を段階的に拡大していく代わりに、クロストークノイズが許容範囲にないと判断されるたびに各配線層毎に配線間隔を適宜変更して結線を繰り返すようにしてもよい。
【0170】
・上記第2の実施形態において、セル使用率の再設定処理を行わなくても、予め適切なセル使用率を設定して配置を行うことで、上記(1)〜(3)の効果を得ることはできる。
【0171】
・上記第3の実施形態において、最適な配線パターン(グリッド間隔)の抽出は、同実施形態で例示したものに限らない。例えば配線パターン(グリッド間隔)を1つ設定してこれに基づいて仮の結線を行った後、同仮の結線の行われた集積回路の配線混雑度や消費電力を算出するようにしてもよい。そしてこの算出された配線混雑度や消費電力に基づいて当該配線パターンの設定態様が結線を完了させる最終的なものとして適切であるか否かを判断するなどすることで、また、こうした一連の処理を配線間隔を設定し直して繰り返すことで、最適な配線間隔の設定態様を早期に取得することができる。なおこの場合には、配線間隔(グリッド間隔)を最小に設定してこれが結線を完了させる最終的なものとして適切であるか否かを判断し、適切でないと判断される度に、配線間隔(グリッド間隔)を段階的に拡大しつつ、その結線を完了させる最終的なものとして適切性を判断する処理を繰り返すようにしてもよい。
【0172】
・上記第3の実施形態において、仮の結線の行われた集積回路の配線混雑度から結線完了時間を簡易的に把握する処理をしなくても、仮の結線の行われた集積回路の消費電力に基づき結線完了時の消費電力を予測することは有効である。すなわちこの予測により、結線を完了させるに際し、消費電力を許容範囲に抑えることのできる配線間隔(グリッド間隔)を取得することはできる。
【0173】
・上記第3の実施形態において、上記第2の実施形態と同様、仮の結線を行わず、所定のグリッド間隔にて結線を行った後、結線の行われた集積回路の消費電力を評価し、これが許容範囲にない場合には、所定の配線層のグリッド間隔を段階的に拡大していくようにしてもよい。また、段階的に拡大する代わりに、消費電力が許容範囲にないと判断されるたびに各配線層毎に配線間隔を適宜変更して結線を繰り返すようにしてもよい。
【0174】
・上記第3の実施形態に例示したコストは、必ずしも重み付けとして定量化するものに限らず、例えば結線時間Tのコストを、Tのn乗等として定量化してもよい。
【0175】
・消費電力の算出は、上記第3の実施形態で例示したものに限らない。例えば、クロストークノイズ解析を行って同ノイズが大きいほど無駄な電力消費が増大することを考慮するようにしてもよい。
【0176】
・仮の結線の行われた集積回路から取得する情報としては、上記配線混雑度や、クロストークノイズ、消費電力に限らない。要は、当該集積回路に対する要求事項を評価するための適宜の情報であればよい。
【0177】
・更に、設計対象となる集積回路に対する要求事項としても、クロストークノイズ、消費電力等、カップリングノイズに起因する現象に対するものや、配線混雑度に限らない。例えば動作タイミングの精度等でもよい。また、クロストークノイズと消費電力等、複数の要求事項を満たすようにして集積回路を設計するようにしてもよい。
【0178】
・グリッドの間隔を各配線層で異ならしめる代わりに、図18に例示するように、機能単位でモジュール化された機能ブロック毎に異ならしめるようにしてもよい。図19に、こうした態様の設計に基づいて製造された半導体集積回路を例示する。
【0179】
同図19(a)は、この半導体集積回路の上面図である。同図19(a)に例示するように、当該半導体集積回路600は、論理回路の形成されている論理回路部610とDRAM等のメモリの形成されているメモリ回路部620との2つの領域を備えている。上記論理回路部610は、機能ブロックB1〜B4を有して構成されている。そして、この論理回路部610が、上記各実施形態に示した設計に基づいて製造された領域である。
【0180】
図19(b)に、この論理回路部610の機能ブロックB1の配線を、また、図19(c)に、同論理回路部610の機能ブロックB3の配線を例示する。
図19(b)に例示するように、機能ブロックB1において実質的に平行に設けられている配線(Lc1〜Lc5)は、その線幅に対する中心線の間隔が所定の最小間隔pcの整数倍に設定されている。すなわち、配線Lc1及び配線Lc2間、配線Lc3及び配線Lc4間、配線Lc4及び配線Lc5間の間隔はいずれも「pc」であり、これは最小間隔pcの「1」倍である。また、配線Lc2及び配線Lc3間の間隔は「2pc」であり、これは最小間隔「pc」の「2」倍である。
【0181】
一方、図19(c)に例示するように、機能ブロックB4において実質的に平行に設けられている配線(Ld1〜Ld4)は、その線幅に対する中心線の間隔が所定の最小間隔pdの整数倍に設定されている。すなわち、配線Ld2及び配線Ld3間、配線Ld3及び配線Ld4間の間隔はいずれも「pd」であり、これは最小間隔pdの「1」倍である。また、配線Ld1及び配線Ld2間の間隔は「2pd」であり、これは最小間隔「pd」の「2」倍である。
【0182】
そして、これら機能ブロックB1の上記最小間隔pcと機能ブロックB4の上記最小間隔pdとは、互いに異なっている。更に、これら機能ブロックB1の上記最小間隔pcと機能ブロックB4の上記最小間隔pdとは、その一方が他方の整数倍とならない設定も可能となる。
【0183】
なお、こうした機能ブロック間での配線間隔の各別の設定は、高速動作の要求される機能ブロックほどクロストークノイズの上限値を低く設定することが望ましいことなどから、高速動作の要求される機能ブロックほど配線間隔を拡大するようにすることが望ましい。
【0184】
・更に、グリッドの間隔を、各配線層及び機能ブロック間で異ならしめるようにしてもよい。図20に、こうした態様の設計に基づいて製造された半導体集積回路を例示する。
【0185】
同図20(a)は、この半導体集積回路の上面図である。同図20(a)に例示するように、当該半導体集積回路700は、論理回路の形成されている論理回路部710と入出力回路(I/O)の形成されているインターフェース部720との2つの領域を備えている。上記論理回路部710は、機能ブロックC1〜C6を有して構成されている。そして、この論理回路部710が、上記各実施形態に示した設計に基づいて製造された領域である。
【0186】
図20(b)及び図20(c)に、第n層目の配線層における機能ブロックC3及び機能ブロックC4の配線をそれぞれ例示する。また、図20(d)及び図20(e)に、第(n+1)層目の配線層における機能ブロックC3及び機能ブロックC4の配線をそれぞれ例示する。
【0187】
図20(b)及び図20(d)にそれぞれ例示する機能ブロックC3の第n層目及び第(n+1)層目の配線層において実質的に平行に設けられている配線(Le1〜Le4、Lg1〜Lg4)は、その線幅に対する中心線の間隔が所定の最小間隔peの整数倍に設定されている。更に、図20(c)に例示する機能ブロックC4の第n層目の配線層において実質的に平行に設けられている配線(Lf1〜Lf4)も、その線幅に対する中心線の間隔が上記最小間隔peの整数倍に設定されている。
【0188】
一方、図20(e)に例示するように、機能ブロックC4の第(n+1)層目において平行に実質的に設けられている配線(Lh1〜Lh3)は、その線幅に対する中心線の間隔が所定の最小間隔phの整数倍に設定されている。
【0189】
そして、上記最小間隔peと上記最小間隔phとは、互いに異なっている。更に、上記最小間隔peと上記最小間隔phとは、その一方が他方の整数倍とならない設定も可能となる。
【0190】
・グリッドの間隔の設定は、上記各実施形態に例示したものに限らない。例えば、上記単位kαの整数倍が上記最小単位αとならなくても、この単位kαを最小単位よりも小さな値とすることで、結線についての自由度を高めることはできる。
【0191】
・グリッドは、必ずしも配線の線幅に対する中心線を規定するものでなくてもよい。
・上記第1の実施形態及びその変形例において、自動配線ツールとしては、必ずしも上記概略配線部22や詳細配線部24を備えるものに限らない。上記第1の実施形態の概略配線部22のような特別な処理を行う機能を有していなくても、自動配線ツールがトライアンドエラーを繰り返しつつ結線を行う演算ツールであるなら、例えばトライアンドエラーの初期の段階を仮の結線処理と定義すればよい。
【0192】
・自動配線ツールでは、必ずしもグリッドを用いて配線を行わなくてもよい。この場合であっても、配線間隔を、複数の配線の線幅に対する中心線の間隔が、所定の最小単位の整数倍の間隔、及び該最小単位以上であって且つ同最小単位の整数倍とならない間隔となるように設定可能とすること等は有効である。
【0193】
・半導体集積回路の設計手法としては、例えばゲートアレイ等、スタンダードセル方式以外の方式を用いてもよい。この際、いかなる設計手法を用いるにせよ、
a.各配線層の各機能ブロックによって構成される各構成単位内において、又は各配線層において、又は各機能ブロック内において、互いに平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定する。
b.少なくとも2つの構成単位間で、又は少なくとも2つの配線層間で、又は少なくとも2つの機能ブロック間で、上記所定の間隔を互いに異ならしめる。
という構成によって半導体集積回路を構成することで、同集積回路の設計に際して配線リソースの確保とクロストークノイズ対策との両立を図ることができる等、同集積回路に対する要求事項を満足させることができる。
【0194】
その他、上記各実施形態及びその変形例から把握できる技術思想としては、以下のようなものがある。
(1)多層配線構造を有する半導体集積回路の所定の配線層において、その線幅に対する中心線の間隔が所定の最小単位の整数倍となるようにして複数の配線が互いに平行に設けられている所定の領域を有し、且つ、前記所定の最小単位が、前記所定の領域以外の領域に形成されている配線の線幅に対する中心線の間隔の最小値の整数倍とならないことを特徴とする半導体集積回路。
【0195】
(2)請求項2記載の半導体集積回路において、前記所定の最小間隔が異ならしめられてなる2つの機能ブロックについて、それらのうちの一方の最小間隔が他方の最小間隔の整数倍とならないことを特徴とする半導体集積回路。
【0196】
(3)請求項3記載の半導体集積回路において、前記所定の最小間隔が異ならしめられてなる2つの機能ブロックについて、それらのうちの一方の最小間隔が他方の最小間隔の整数倍とならないことを特徴とする半導体集積回路。
【0197】
(4)請求項1〜3又は上記(1)〜(3)のいずれかに記載の半導体集積回路において、前記配線は、半導体基板を覆う層間絶縁膜の上方に形成されるものであることを特徴とする半導体集積回路。
【0198】
(5)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、それらの配線の混雑度に基づいて前記結線を完了するのに要する時間である結線完了時間を各別に予測する工程と、この予測された結線完了時間に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0199】
(6)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、その配線の混雑度に基づいて前記結線を完了するのに要する時間である結線完了時間を予測する工程と、この予測された結線完了時間に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0200】
(7)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを各別に予測する工程と、この予測されたクロストークノイズに基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0201】
(8)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測する工程と、この予測されたクロストークノイズに基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0202】
(9)請求項4記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路のそれぞれについての消費電力を各別に算出する工程と、前記算出された消費電力に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0203】
(10)請求項4記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路についての消費電力を算出する工程と、前記算出された消費電力に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0204】
(11)請求項4記載の半導体集積回路の設計方法において、前記結線は、当該半導体集積回路に対する所定の要求事項を満たすとの条件の下で行われることを特徴とする半導体集積回路の設計方法。
【0205】
(12)上記(11)記載の半導体集積回路の設計方法において、前記所定の要求事項は、複数の異なる要求事項からなることを特徴とする半導体集積回路の設計方法。
【0206】
(13)上記(12)記載の半導体集積回路の設計方法において、前記複数の要求事項は、クロストークノイズのピーク値が所定の上限値以下となるとの要求事項、及び消費電力が所定の上限値以下となるとの要求事項を含むことを特徴とする半導体集積回路の設計方法。
【0207】
(14)上記(11)又は(12)記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路から取得される情報に基づき、前記要求事項を満たすか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0208】
(15)上記(14)記載の半導体集積回路の設計方法において、前記仮の結線の行われた集積回路から取得される情報に基づき、前記複数の要求事項を構成する各要求事項についてのコストを定量化して算出すると共に、これら各コストに基づき定義されるコスト関数を用いて最終的な配線間隔についての条件を決定する工程を更に備えることを特徴とする半導体集積回路の設計方法。
【0209】
(16)上記(13)記載の半導体集積回路の設計方法において、a.前記結線にかかる配線間隔を設定する工程、並びにb.前記設定された配線間隔にて前記結線を行う工程、並びにc.当該集積回路の消費電力及び前記各配線間のクロストークノイズのピーク値を算出する工程、の各工程を備え、前記算出された消費電力の値とピーク値とがそれぞれ前記各上限値以下となるとの条件下、当該集積回路内の結線が完了されるまで、前記配線間隔を適宜変更して前記b及びcの工程を繰り返すことを特徴とする半導体集積回路の設計方法。
【0210】
(17)上記(13)記載の半導体集積回路の設計方法において、前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、前記各条件の設定毎に仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズのピーク値を各別に予測する工程と、前記各条件の設定毎に仮の結線の行われた集積回路のそれぞれについての消費電力を各別に算出する工程と、前記予測されたクロストークノイズのピーク値及び前記算出された消費電力に基づき前記結線にかかる最終的な配線間隔についての条件を決定する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0211】
(18)上記(13)記載の半導体集積回路の設計方法において、前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、前記仮の結線の行われた集積回路について、各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズのピーク値を予測する工程と、前記仮の結線の行われた集積回路の消費電力を算出する工程と、前記予測されたクロストークノイズのピーク値及び前記算出された消費電力に基づき前記仮の結線における配線間隔の設定態様が前記結線の完了に用いられるものとして適切であるか否かを評価する工程とを備えることを特徴とする半導体集積回路の設計方法。
【0212】
(19)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は多層配線構造を有する集積回路として製造されるものであるとともに、前記結線を行う際の配線間隔は、各配線層間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0213】
(20)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであるとともに、前記結線を行う際の配線間隔は、前記機能ブロック間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0214】
(21)請求項4又は上記(5)〜(18)のいずれかに記載の半導体集積回路の設計方法において、当該集積回路は、多層配線構造を有し、且つ機能単位でモジュール化された複数の機能ブロックを有するものであって、前記結線を行う際の配線間隔は、各機能ブロック内の各配線層によって構成される各構成単位間で各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0215】
(22)請求項5又は6記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであるとともに、前記配線間隔は、更に、機能単位でモジュール化された各機能ブロック毎に各別に設定可能とされることを特徴とする半導体集積回路の設計方法。
【0216】
(23)請求項10記載の半導体集積回路の設計方法において、前記結線の完了された後、該結線を完了させるに先立ち行われる前記仮の結線の行われた半導体集積回路の配線混雑度と、前記結線を完了させる工程にて要した時間である実際の結線時間との相関関係を示すデータを、前記配線の混雑度と結線完了時間との関係を定めた前記データベースに付け加えることを特徴とする半導体集積回路の設計方法。
【0217】
(24)請求項10又は上記(23)記載の半導体集積回路の設計方法において、前記結線を完了された後、該結線を完了させるに先立ち行われる前記仮の結線の行われた半導体集積回路の各配線間に生じるクロストークノイズの解析結果と、前記結線の完了された集積回路の各配線間に生じるクロストークノイズとの相関関係を示すデータを、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めた前記データベースに付け加えることを特徴とする半導体集積回路の設計方法。
【0218】
(25)請求項7〜14又は(23)又は(24)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は、多層配線構造を有するものとして製造されるものであって、且つ当該設計方法は、前記配線間隔を配線層毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【0219】
(26)請求項7〜14又は(23)又は(24)のいずれかに記載の半導体集積回路の設計方法において、当該半導体集積回路は機能単位でモジュール化された複数の機能ブロックを有するものであって、当該設計方法は、前記配線間隔を機能ブロック毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【0220】
(27)請求項7〜11又は(23)〜(24)のいずれかに記載の半導体集積回路の設計方法において、当該集積回路は、多層配線構造を有し、且つ機能単位でモジュール化された複数の機能ブロックを有するものであって、且つ当該設計方法は、前記配線間隔を各機能ブロック内の各配線層によって構成される各構成単位毎に各別に設定可能とするものであることを特徴とする半導体集積回路の設計方法。
【図面の簡単な説明】
【図1】第1の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図2】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図3】グリッド間隔と結線完了時間との関係を示す図。
【図4】グリッド間隔とクロストークノイズがその上限値を超えるネット数との関係を示す図。
【図5】上記実施形態にかかるグリッドの設定態様を示す図。
【図6】同実施形態にかかるグリッドの設定態様を示す図。
【図7】セル使用率と結線完了時間との関係を模式的に示す図。
【図8】上記実施形態にかかるクロストークノイズの解析手法を説明する図。
【図9】同実施形態における配線混雑度と結線完了時間との関係を定めるデータを模式的に示す図。
【図10】同実施形態においてクロストークノイズの分布を例示する図。
【図11】同実施形態において各配線パターンと結線完了時間及びクロストークノイズとの関係を示すテーブルデータを示す図。
【図12】第2の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図13】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図14】第3の実施形態にかかる集積回路の設計支援装置の全体構成を示すブロック図。
【図15】同実施形態における自動配置及び自動配線の処理手順を示すフローチャート。
【図16】配線グリッド間隔と電力改善割合との関係を示す図。
【図17】上記各実施形態の設計に基づき製造された半導体集積回路の構成を示す図。
【図18】上記各実施形態の変形例においてグリッド間隔の設定態様を模式的に示す図。
【図19】上記変形例の設計に基づき製造された半導体集積回路の構成を示す図。
【図20】別の変形例の設計に基づき製造された半導体集積回路の構成を示す図。
【符号の説明】
10…ライブラリ、12…設計仕様格納部、14…プロセスパラメータ、16…セル使用率設定部、20…自動配置部、22…概略配線部、24…詳細配線部、30…配線混雑度解析部、32…クロストークノイズ解析部、34…配線混雑度上限値格納部、36…クロストークノイズ上限値格納部、40…グリッド設定部、42,44…データベース、50…入力部、52…フロア表示部、54…制御部、70…自動配線部、72…クロストークノイズ解析部、74…グリッド設定部。
Claims (14)
- 同一配線層内の所定の領域において、互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が、所定の最小間隔の整数倍であって、且つ製造工程における最小加工精度の整数倍とならない間隔に設定されてなる
ことを特徴とする半導体集積回路。 - 機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、
当該集積回路の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が少なくとも2つの機能ブロック間で互いに異ならしめられてなる
ことを特徴とする半導体集積回路。 - 多層配線構造を有するとともに機能単位でモジュール化された複数の機能ブロックを有する半導体集積回路にあって、
当該集積回路の所定の配線層の所定の領域において、前記機能ブロック内の結線に用いられ互いに実質的に平行に設けられている配線について、それら線幅に対する中心線の間隔が所定の最小間隔の整数倍に設定されていると共に、前記所定の最小間隔が、少なくとも2つの機能ブロック間で互いに異ならしめられてなる
ことを特徴とする半導体集積回路。 - 配置の終了した集積回路の各箇所を自動配線ツールを用いて結線する半導体集積回路の設計方法において、
前記結線に際し、複数の配線の線幅に対する中心線の間隔を、当該半導体集積回路の製造工程における最小加工精度の整数倍、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔に設定可能とする
ことを特徴とする半導体集積回路の設計方法。 - 配置の終了した集積回路の各箇所を自動配線ツールにて結線する多層配線構造を有する半導体集積回路の設計方法において、
a.前記結線にかかる配線間隔を設定する工程、及び
b.前記設定された配線間隔にて前記結線を行う工程、及び
c.前記各配線間のクロストークノイズのピーク値を算出する工程、
の各工程を備え、クロストークノイズのピーク値が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記配線間隔を各配線層毎に適宜変更して前記b及びcの工程を繰り返す
ことを特徴とする半導体集積回路の設計方法。 - 前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされる
請求項5記載の半導体集積回路の設計方法。 - 配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、
前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、
前記各条件の設定毎に仮の結線の行われた集積回路について、それらの配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、それらの各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、
を備えることを特徴とする半導体集積回路の設計方法。 - 請求項7記載の半導体集積回路の設計方法において、
当該半導体集積回路は、スタンダードセルを用いて設計されるものであって、且つ、
前記仮の結線を行う工程の後の工程として、前記配線間隔を最終的に決定する工程に先立ち、前記様々に設定された配線間隔のそれぞれについて、それらの配線の混雑度に基づき結線の完了が可能か否かを判定する工程を更に備え、可能でないと判定されるものがあるときには、半導体集積回路の総面積にしめる機能セルの面積の割合を低減させた後、前記仮の結線を行う工程から前記各工程を再実行する
ことを特徴とする半導体集積回路の設計方法。 - 配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、
前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、
前記仮の結線の行われた集積回路について、その配線の混雑度に基づいて結線を完了するのに要する時間である結線完了時間を予測するとともに、その各配線間に生じるクロストークノイズの解析結果に基づいて当該集積回路の結線完了時に生じるクロストークノイズを予測し、これら予測される結線完了時間と結線完了時に生じるクロストークノイズとに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、
を備えることを特徴とする半導体集積回路の設計方法。 - 前記配線の混雑度に基づいた結線完了時間の予測は、仮の結線の行われた配線の混雑度と結線完了時間との関係を定めたデータベースに基づき行われ、前記結線完了時に生じるクロストークノイズの予測は、仮の結線の行われた集積回路の各配線間に生じるクロストークノイズの解析結果と結線完了時に生じるクロストークノイズとの関係を定めたデータベースに基づき行われる
請求項7〜9のいずれかに記載の半導体集積回路の設計方法。 - 機能単位でモジュール化された複数の機能ブロック及び多層配線構造の少なくとも一方を有する集積回路の各箇所であって、且つ配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、
a.前記結線にかかる配線間隔を設定する工程、及び
b.前記設定された配線間隔にて前記結線を行う工程、及び
c.前記結線の行われた集積回路の消費電力を算出する工程、
の各工程を備え、前記消費電力が所定の上限値以下となるとの条件の下、当該集積回路内の全ての結線が完了されるまで、前記機能ブロック及び配線層の少なくとも一方毎に前記配線間隔を適宜変更して前記b及びcの工程を繰り返す
ことを特徴とする半導体集積回路の設計方法。 - 配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、
前記自動配線ツールにて結線する際の配線間隔についての条件を様々に設定して、これら各条件の設定毎に前記結線を完了する処理よりも小さな演算量にて仮の結線をそれぞれ行う工程と、
前記各条件の設定毎に仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記結線にかかる最終的な配線間隔についての条件を決定する工程と、
を備えることを特徴とする半導体集積回路の設計方法。 - 配置の終了した集積回路の各箇所を自動配線ツールにて結線する半導体集積回路の設計方法において、
前記結線を完了する処理よりも小さな演算量にて仮の結線を行う工程と、
前記仮の結線の行われた集積回路についての消費電力と配線の混雑度とを算出するとともに、該算出する消費電力と配線の混雑度とに基づいて前記仮の結線における配線間隔の設定態様が前記結線を完了するものとして適切であるか否かを評価する工程と、
を備えることを特徴とする半導体集積回路の設計方法。 - 前記配線間隔は、複数の配線の線幅に対する中心線の間隔が、当該半導体集積回路の製造工程における最小加工精度の整数倍の間隔、及び該最小加工精度以上であって且つ同最小加工精度の整数倍とならない間隔となるように設定可能とされる
請求項7〜13のいずれかに記載の半導体集積回路の設計方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002352452A JP2004128436A (ja) | 2002-08-08 | 2002-12-04 | 半導体集積回路及び半導体集積回路の設計方法 |
US10/635,505 US20040041281A1 (en) | 2002-08-08 | 2003-08-07 | Semiconductor integrated circuit and method for designing semiconductor integrated circuit |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002230987 | 2002-08-08 | ||
JP2002352452A JP2004128436A (ja) | 2002-08-08 | 2002-12-04 | 半導体集積回路及び半導体集積回路の設計方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004128436A true JP2004128436A (ja) | 2004-04-22 |
Family
ID=31980470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002352452A Pending JP2004128436A (ja) | 2002-08-08 | 2002-12-04 | 半導体集積回路及び半導体集積回路の設計方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040041281A1 (ja) |
JP (1) | JP2004128436A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006165376A (ja) * | 2004-12-09 | 2006-06-22 | Fujitsu Ltd | 電子装置及びその設計方法 |
JP2007272288A (ja) * | 2006-03-30 | 2007-10-18 | Fujitsu Ltd | 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置 |
CN112883682A (zh) * | 2021-03-15 | 2021-06-01 | 北京华大九天科技股份有限公司 | 集成电路的总体布线方法及设备和存储介质 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005150152A (ja) * | 2003-11-11 | 2005-06-09 | Seiko Epson Corp | 半導体装置及びpll回路 |
US7152217B1 (en) * | 2004-04-20 | 2006-12-19 | Xilinx, Inc. | Alleviating timing based congestion within circuit designs |
JP4314162B2 (ja) * | 2004-06-17 | 2009-08-12 | 富士通株式会社 | ノイズチェック方法および装置並びにノイズチェックプログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体 |
US20070044046A1 (en) * | 2005-08-22 | 2007-02-22 | Faour Fouad A | Method for providing a current sink model for an asic |
JP2008021001A (ja) * | 2006-07-11 | 2008-01-31 | Matsushita Electric Ind Co Ltd | パターン修正装置、パターン最適化装置及び集積回路設計装置 |
KR101003116B1 (ko) | 2008-08-08 | 2010-12-21 | 주식회사 하이닉스반도체 | 패드를 제어하는 반도체 메모리 장치 및 그 장치가 장착된 멀티칩 패키지 |
US20110061898A1 (en) * | 2009-09-15 | 2011-03-17 | International Business Machines Corporation | Reducing cross-talk in high speed ceramic packages using selectively-widened mesh |
US8893073B2 (en) | 2012-12-27 | 2014-11-18 | Synopsys, Inc. | Displaying a congestion indicator for a channel in a circuit design layout |
US8938702B1 (en) | 2013-12-19 | 2015-01-20 | International Business Machines Corporation | Timing driven routing for noise reduction in integrated circuit design |
-
2002
- 2002-12-04 JP JP2002352452A patent/JP2004128436A/ja active Pending
-
2003
- 2003-08-07 US US10/635,505 patent/US20040041281A1/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006165376A (ja) * | 2004-12-09 | 2006-06-22 | Fujitsu Ltd | 電子装置及びその設計方法 |
JP2007272288A (ja) * | 2006-03-30 | 2007-10-18 | Fujitsu Ltd | 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置 |
JP4649356B2 (ja) * | 2006-03-30 | 2011-03-09 | 富士通株式会社 | 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置 |
CN112883682A (zh) * | 2021-03-15 | 2021-06-01 | 北京华大九天科技股份有限公司 | 集成电路的总体布线方法及设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20040041281A1 (en) | 2004-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4719265B2 (ja) | 確率的相互接続構造設計のためのシステムおよび方法 | |
US6477695B1 (en) | Methods for designing standard cell transistor structures | |
US6598206B2 (en) | Method and system of modifying integrated circuit power rails | |
US7325218B2 (en) | Wiring method, program, and apparatus | |
JP3615191B2 (ja) | 半導体集積回路装置の設計方法、設計装置、及び設計プログラム | |
JP4761859B2 (ja) | 半導体集積回路のレイアウト設計方法 | |
JP2006512767A (ja) | 歩留まり改善 | |
US7872355B2 (en) | Semiconductor integrated circuit and method of designing semiconductor integrated circuit | |
US20050273739A1 (en) | Pattern analysis method, pattern analysis apparatus, yield calculation method and yield calculation apparatus | |
TWI719090B (zh) | 用於修改界定電路組件之標準單元布局之電腦實施系統及方法 | |
US8219959B2 (en) | Generating integrated circuit floorplan layouts | |
JP2004128436A (ja) | 半導体集積回路及び半導体集積回路の設計方法 | |
JP2006323643A (ja) | 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法 | |
US11030383B2 (en) | Integrated device and method of forming the same | |
JP2006301961A (ja) | 半導体集積回路の自動フロアプラン手法 | |
US8187924B2 (en) | Method, design program and design support device for semiconductor integrated circuit, and semiconductor integrated circuit | |
US6698000B2 (en) | Semiconductor process parameter determining method, semiconductor process parameter determining system, and semiconductor process parameter determining program | |
US20180068907A1 (en) | Integrated circuit designing system and a method of manufacturing an integrated circuit | |
Ran et al. | Via-configurable routing architectures and fast design mappability estimation for regular fabrics | |
JP2007258215A (ja) | セル配置プログラム、セル配置装置、及びセル配置方法 | |
JP2008310527A (ja) | 半導体集積回路のレイアウト設計装置及びレイアウト設計方法 | |
JP2004104039A (ja) | 集積回路の自動配置配線設計方法、その自動配置配線設計装置、その自動配置配線設計システム、制御プログラムおよび可読記録媒体 | |
JP4059668B2 (ja) | 集積回路の設計方法及び集積回路の設計支援装置 | |
JP4522685B2 (ja) | 電源配線の設計方法 | |
US20090313593A1 (en) | Semiconductor integrated circuit design method and semiconductor integrated circuit design apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050523 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050607 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051101 |