JPH1091675A - 半導体集積回路の自動レイアウト装置 - Google Patents
半導体集積回路の自動レイアウト装置Info
- Publication number
- JPH1091675A JPH1091675A JP8265185A JP26518596A JPH1091675A JP H1091675 A JPH1091675 A JP H1091675A JP 8265185 A JP8265185 A JP 8265185A JP 26518596 A JP26518596 A JP 26518596A JP H1091675 A JPH1091675 A JP H1091675A
- Authority
- JP
- Japan
- Prior art keywords
- information
- semiconductor integrated
- wiring
- operation frequency
- integrated circuit
- 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
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【課題】 回路の動作を考慮した最適な配置配線を実行
する。 【解決手段】 半導体集積回路の各構成要素の相互間の
接続関係を示す回路接続情報1を自動配置配線部10に
与えて自動配置配線を行いレイアウト情報2を生成す
る。シミュレータ部20は、回路接続情報1、論理動作
情報4、入力パターン情報5に基づいて、半導体集積回
路の動作シミュレーションを実行し、各論理素子ごとの
動作頻度を示す動作頻度情報6を生成する。優先情報生
成部30は、この動作頻度情報6に基づいて、動作頻度
の高い素子の配線を短くするとか、動作頻度の高い素子
群を離隔して配置するといった動的優先情報7を生成す
る。自動配置配線部10は、各構成要素の幾何学的性質
に基づいて設定した静的優先情報3と、装置内部で生成
した動的優先情報7とを考慮して、効率的な配置配線を
実行する。
する。 【解決手段】 半導体集積回路の各構成要素の相互間の
接続関係を示す回路接続情報1を自動配置配線部10に
与えて自動配置配線を行いレイアウト情報2を生成す
る。シミュレータ部20は、回路接続情報1、論理動作
情報4、入力パターン情報5に基づいて、半導体集積回
路の動作シミュレーションを実行し、各論理素子ごとの
動作頻度を示す動作頻度情報6を生成する。優先情報生
成部30は、この動作頻度情報6に基づいて、動作頻度
の高い素子の配線を短くするとか、動作頻度の高い素子
群を離隔して配置するといった動的優先情報7を生成す
る。自動配置配線部10は、各構成要素の幾何学的性質
に基づいて設定した静的優先情報3と、装置内部で生成
した動的優先情報7とを考慮して、効率的な配置配線を
実行する。
Description
【0001】
【発明の属する技術分野】本発明は自動レイアウト装
置、特に、半導体集積回路を構成する各構成要素につい
ての配置および配線を自動的に行うレイアウト装置に関
する。
置、特に、半導体集積回路を構成する各構成要素につい
ての配置および配線を自動的に行うレイアウト装置に関
する。
【0002】
【従来の技術】半導体集積回路には、膨大な数の論理素
子が配置されており、個々の論理素子に対する配線がな
されている。したがって、半導体集積回路の設計を行う
上では、回路の構成要素となる個々の論理素子を所定位
置に配置し、素子相互間の配線を行う配置配線作業が不
可欠になる。ところが、膨大な数の論理素子に対して、
このような配置配線作業を人手で行うことは到底不可能
であり、実用上は、コンピュータを利用して配置配線作
業を自動的に行う自動レイアウト装置が用いられてい
る。
子が配置されており、個々の論理素子に対する配線がな
されている。したがって、半導体集積回路の設計を行う
上では、回路の構成要素となる個々の論理素子を所定位
置に配置し、素子相互間の配線を行う配置配線作業が不
可欠になる。ところが、膨大な数の論理素子に対して、
このような配置配線作業を人手で行うことは到底不可能
であり、実用上は、コンピュータを利用して配置配線作
業を自動的に行う自動レイアウト装置が用いられてい
る。
【0003】この自動レイアウト装置は、半導体集積回
路の各構成要素の相互間の接続関係を示す回路接続情報
(いわゆるネットリスト)に基づいて、個々の構成要素
の配置を二次元座標上で決定し、各構成要素間に必要な
配線パターンを生成する機能を有する。現在、一般に用
いられている自動レイアウト装置では、配置および配線
を行う上で優先すべき条件を予め優先情報として与えて
おくことにより、できるだけ効率的な配置配線が行われ
るように配慮されている。具体的には、「全構成要素の
占有面積をできるだけ小さくする」というような優先情
報や、「個々の配線の長さをできるだけ短くする」とい
うような優先情報が用意されており、自動レイアウト装
置は、これらの優先情報を考慮しながら、所定のアルゴ
リズムに基づいて配置配線作業を実行することになる。
たとえば、配置配線に関して、A案とB案とが存在する
場合、A案の方がB案に比べて論理素子の占有面積を小
さくできたり、総配線長を短くできたりする場合には、
自動レイアウト装置は、上述の優先情報に基づいて、A
案の方をB案より優先して採用することになる。このよ
うな優先情報を考慮した自動配置配線を実行することに
より、より小型で消費電力の少ない半導体集積回路の設
計が可能になる。
路の各構成要素の相互間の接続関係を示す回路接続情報
(いわゆるネットリスト)に基づいて、個々の構成要素
の配置を二次元座標上で決定し、各構成要素間に必要な
配線パターンを生成する機能を有する。現在、一般に用
いられている自動レイアウト装置では、配置および配線
を行う上で優先すべき条件を予め優先情報として与えて
おくことにより、できるだけ効率的な配置配線が行われ
るように配慮されている。具体的には、「全構成要素の
占有面積をできるだけ小さくする」というような優先情
報や、「個々の配線の長さをできるだけ短くする」とい
うような優先情報が用意されており、自動レイアウト装
置は、これらの優先情報を考慮しながら、所定のアルゴ
リズムに基づいて配置配線作業を実行することになる。
たとえば、配置配線に関して、A案とB案とが存在する
場合、A案の方がB案に比べて論理素子の占有面積を小
さくできたり、総配線長を短くできたりする場合には、
自動レイアウト装置は、上述の優先情報に基づいて、A
案の方をB案より優先して採用することになる。このよ
うな優先情報を考慮した自動配置配線を実行することに
より、より小型で消費電力の少ない半導体集積回路の設
計が可能になる。
【0004】
【発明が解決しようとする課題】従来の自動レイアウト
装置は、上述したように、予め用意された優先情報に基
づいて、最適な自動配置配線を実行する機能を有してい
るが、配慮すべき優先情報としては、個々の論理素子の
形状や寸法、素子相互間の単純な接続関係といった幾何
学的性質に基づいて設定した条件のみに基づくものであ
った。別言すれば、半導体集積回路の実際の動作につい
ては何ら考慮していない「静的優先情報」ともいうべき
優先情報に基づいて配置配線が行われていた。
装置は、上述したように、予め用意された優先情報に基
づいて、最適な自動配置配線を実行する機能を有してい
るが、配慮すべき優先情報としては、個々の論理素子の
形状や寸法、素子相互間の単純な接続関係といった幾何
学的性質に基づいて設定した条件のみに基づくものであ
った。別言すれば、半導体集積回路の実際の動作につい
ては何ら考慮していない「静的優先情報」ともいうべき
優先情報に基づいて配置配線が行われていた。
【0005】しかしながら、現実的には、半導体集積回
路の実用的な設計を行う上では、その回路が実際に動作
している状態をも考慮しなくてはならない。特に、高集
積化や高速動作が求められている回路では、実際に動作
させてみた場合、特定の一部分の回路について特にクリ
ティカルな条件が要求されることが少なくない。従来、
このようなクリティカルな部分については、設計者が直
接指定を行うことにより、自動レイアウト装置に対して
優先情報を提供するという方法を採らざるを得なかっ
た。
路の実用的な設計を行う上では、その回路が実際に動作
している状態をも考慮しなくてはならない。特に、高集
積化や高速動作が求められている回路では、実際に動作
させてみた場合、特定の一部分の回路について特にクリ
ティカルな条件が要求されることが少なくない。従来、
このようなクリティカルな部分については、設計者が直
接指定を行うことにより、自動レイアウト装置に対して
優先情報を提供するという方法を採らざるを得なかっ
た。
【0006】そこで本発明は、回路動作をも考慮した最
適な配置配線を実行することが可能な半導体集積回路の
自動レイアウト装置を提供することを目的とする。
適な配置配線を実行することが可能な半導体集積回路の
自動レイアウト装置を提供することを目的とする。
【0007】
(1) 本発明の第1の態様は、半導体集積回路を構成す
る各構成要素についての配置および配線を自動的に行う
半導体集積回路の自動レイアウト装置において、半導体
集積回路の各構成要素の相互間の接続関係を示す回路接
続情報と、半導体集積回路の論理動作を示す論理動作情
報と、半導体集積回路に対して与える入力信号を示す入
力パターン情報と、に基づいて、半導体集積回路の動作
をシミュレートし、各構成要素の動作頻度を示す動作頻
度情報を生成するシミュレータ部と、各構成要素に対す
る配置および配線を行う上で優先すべき条件を、動作頻
度情報に基づいて設定し、設定した条件を示す動的優先
情報を生成する優先情報生成部と、回路接続情報と動的
優先情報とに基づいて、各構成要素についての配置およ
び配線を自動的に行いレイアウト情報を生成する自動配
置配線部と、を設けるようにしたものである。
る各構成要素についての配置および配線を自動的に行う
半導体集積回路の自動レイアウト装置において、半導体
集積回路の各構成要素の相互間の接続関係を示す回路接
続情報と、半導体集積回路の論理動作を示す論理動作情
報と、半導体集積回路に対して与える入力信号を示す入
力パターン情報と、に基づいて、半導体集積回路の動作
をシミュレートし、各構成要素の動作頻度を示す動作頻
度情報を生成するシミュレータ部と、各構成要素に対す
る配置および配線を行う上で優先すべき条件を、動作頻
度情報に基づいて設定し、設定した条件を示す動的優先
情報を生成する優先情報生成部と、回路接続情報と動的
優先情報とに基づいて、各構成要素についての配置およ
び配線を自動的に行いレイアウト情報を生成する自動配
置配線部と、を設けるようにしたものである。
【0008】(2) 本発明の第2の態様は、上述の第1
の態様に係る半導体集積回路の自動レイアウト装置にお
いて、配置および配線を行う上で優先すべき条件を、各
構成要素の幾何学的性質に基づいて設定し、設定した条
件を示す静的優先情報を自動配置配線部に与えられるよ
うにし、自動配置配線部が、動的優先情報と静的優先情
報との双方に基づいて、各構成要素についての配置およ
び配線を自動的に行うようにしたものである。
の態様に係る半導体集積回路の自動レイアウト装置にお
いて、配置および配線を行う上で優先すべき条件を、各
構成要素の幾何学的性質に基づいて設定し、設定した条
件を示す静的優先情報を自動配置配線部に与えられるよ
うにし、自動配置配線部が、動的優先情報と静的優先情
報との双方に基づいて、各構成要素についての配置およ
び配線を自動的に行うようにしたものである。
【0009】(3) 本発明の第3の態様は、上述の第1
または第2の態様に係る半導体集積回路の自動レイアウ
ト装置において、動的優先情報の示す条件として、動作
頻度の高い出力端の配線が、動作頻度の低い出力端の配
線よりも短くなるような条件を設定するようにしたもの
である。
または第2の態様に係る半導体集積回路の自動レイアウ
ト装置において、動的優先情報の示す条件として、動作
頻度の高い出力端の配線が、動作頻度の低い出力端の配
線よりも短くなるような条件を設定するようにしたもの
である。
【0010】(4) 本発明の第4の態様は、上述の第1
または第2の態様に係る半導体集積回路の自動レイアウ
ト装置において、動的優先情報の示す条件として、動作
頻度の高い素子群同士を、できるだけ空間的に離隔して
配置するような条件を設定するようにしたものである。
または第2の態様に係る半導体集積回路の自動レイアウ
ト装置において、動的優先情報の示す条件として、動作
頻度の高い素子群同士を、できるだけ空間的に離隔して
配置するような条件を設定するようにしたものである。
【0011】(5) 本発明の第5の態様は、上述の第3
または第4の態様に係る半導体集積回路の自動レイアウ
ト装置において、所定のシミュレーション期間内におけ
る総動作回数を各論理素子の動作頻度として条件設定を
行うようにしたものである。
または第4の態様に係る半導体集積回路の自動レイアウ
ト装置において、所定のシミュレーション期間内におけ
る総動作回数を各論理素子の動作頻度として条件設定を
行うようにしたものである。
【0012】(6) 本発明の第6の態様は、上述の第3
または第4の態様に係る半導体集積回路の自動レイアウ
ト装置において、所定のシミュレーション期間内の特定
の着目期間における動作回数を各論理素子の動作頻度と
して条件設定を行うようにしたものである。
または第4の態様に係る半導体集積回路の自動レイアウ
ト装置において、所定のシミュレーション期間内の特定
の着目期間における動作回数を各論理素子の動作頻度と
して条件設定を行うようにしたものである。
【0013】(7) 本発明の第7の態様は、上述の第6
の態様に係る半導体集積回路の自動レイアウト装置にお
いて、同時に動作している論理素子の数が最も多い期間
を着目期間とするようにしたものである。
の態様に係る半導体集積回路の自動レイアウト装置にお
いて、同時に動作している論理素子の数が最も多い期間
を着目期間とするようにしたものである。
【0014】
【発明の実施の形態】以下、本発明を図示する実施形態
に基づいて説明する。図1は、従来の一般的な半導体集
積回路の自動レイアウト装置による自動レイアウト処理
を示すブロック図である。この自動レイアウト装置を構
成する自動配置配線部10は、コンピュータを利用した
装置であり、設計対象となる半導体集積回路の各構成要
素の相互間の接続関係を示す回路接続情報1に基づい
て、個々の構成要素の配置を二次元座標上で決定し、各
構成要素間に必要な配線パターンを決定する機能を有
し、ここで決定された配置配線パターンは、レイアウト
情報2というデジタルデータの形式で出力される。自動
配置配線部10は、個々の構成要素に対する自動配置配
線を行う際に、優先情報3によって与えられる所定の条
件に従うことになる。この優先情報3は、配置および配
線を行う上で優先すべき条件を示す情報であり、実際に
は既に述べたように、「全構成要素の占有面積をできる
だけ小さくする」というような優先情報や、「個々の配
線の長さをできるだけ短くする」というような静的優先
情報が用意されることになる。
に基づいて説明する。図1は、従来の一般的な半導体集
積回路の自動レイアウト装置による自動レイアウト処理
を示すブロック図である。この自動レイアウト装置を構
成する自動配置配線部10は、コンピュータを利用した
装置であり、設計対象となる半導体集積回路の各構成要
素の相互間の接続関係を示す回路接続情報1に基づい
て、個々の構成要素の配置を二次元座標上で決定し、各
構成要素間に必要な配線パターンを決定する機能を有
し、ここで決定された配置配線パターンは、レイアウト
情報2というデジタルデータの形式で出力される。自動
配置配線部10は、個々の構成要素に対する自動配置配
線を行う際に、優先情報3によって与えられる所定の条
件に従うことになる。この優先情報3は、配置および配
線を行う上で優先すべき条件を示す情報であり、実際に
は既に述べたように、「全構成要素の占有面積をできる
だけ小さくする」というような優先情報や、「個々の配
線の長さをできるだけ短くする」というような静的優先
情報が用意されることになる。
【0015】しかしながら、このような静的優先情報で
示される条件のみに基づいて自動配置配線を行った場
合、半導体集積回路の実際の動作を考慮した上での効率
的なレイアウトを実現することはできない。本発明の基
本思想は、実際の回路動作を考慮したいわば「動的優先
情報」ともいうべき条件を考慮して、自動的に配置配線
を実行することができる自動レイアウト装置を実現しよ
うとするものである。
示される条件のみに基づいて自動配置配線を行った場
合、半導体集積回路の実際の動作を考慮した上での効率
的なレイアウトを実現することはできない。本発明の基
本思想は、実際の回路動作を考慮したいわば「動的優先
情報」ともいうべき条件を考慮して、自動的に配置配線
を実行することができる自動レイアウト装置を実現しよ
うとするものである。
【0016】半導体集積回路の基本的な構成要素である
論理素子は、複数のトランジスタから構成されており、
半導体集積回路は、多数のトランジスタから構成されて
いることになる。個々のトランジスタは、それぞれ所定
の配線層で接続されているが、この配線層には寄生容量
Cが存在するため、たとえば1つの論理素子は図2に示
すような等価回路で表現することができる。この等価回
路は、一対のトランジスタT1,T2からなる単純な論
理素子を示し、その出力段のノードNには、配線層の寄
生容量Cが接続されている。いま、ノードNの電圧値を
V、寄生容量Cの静電容量値をCとすると、この論理素
子における消費電力Pは、 P = C・f・V2 で与えられる。ここで、fはこの論理素子の動作周波数
(クロックの周波数ではなく、論理素子の出力状態が遷
移する動作頻度)であり、物理的には全く同じ構造をも
った論理素子であっても、その動作態様によって、消費
電力Pに相違が生じることがわかる。すなわち、出力の
論理状態が“0”から“1”へ、あるいは“1”から
“0”へと頻繁に遷移する論理素子ほど、消費電力Pは
大きくなり、発熱などの影響が大きいことになる。また
動作周波数fが大きくなるため、ノイズの発生も大きく
なる。
論理素子は、複数のトランジスタから構成されており、
半導体集積回路は、多数のトランジスタから構成されて
いることになる。個々のトランジスタは、それぞれ所定
の配線層で接続されているが、この配線層には寄生容量
Cが存在するため、たとえば1つの論理素子は図2に示
すような等価回路で表現することができる。この等価回
路は、一対のトランジスタT1,T2からなる単純な論
理素子を示し、その出力段のノードNには、配線層の寄
生容量Cが接続されている。いま、ノードNの電圧値を
V、寄生容量Cの静電容量値をCとすると、この論理素
子における消費電力Pは、 P = C・f・V2 で与えられる。ここで、fはこの論理素子の動作周波数
(クロックの周波数ではなく、論理素子の出力状態が遷
移する動作頻度)であり、物理的には全く同じ構造をも
った論理素子であっても、その動作態様によって、消費
電力Pに相違が生じることがわかる。すなわち、出力の
論理状態が“0”から“1”へ、あるいは“1”から
“0”へと頻繁に遷移する論理素子ほど、消費電力Pは
大きくなり、発熱などの影響が大きいことになる。また
動作周波数fが大きくなるため、ノイズの発生も大きく
なる。
【0017】本願発明者は、半導体集積回路を構成する
論理素子のこのような動的性質に着目し、各論理素子の
動作頻度を示す動的優先情報を考慮して配置配線処理を
実行すれば、実際の動作に即した効率的な配置配線が可
能なことに気が付いたのである。
論理素子のこのような動的性質に着目し、各論理素子の
動作頻度を示す動的優先情報を考慮して配置配線処理を
実行すれば、実際の動作に即した効率的な配置配線が可
能なことに気が付いたのである。
【0018】図3は、本発明に係る半導体集積回路の自
動レイアウト装置100の基本構成を示すブロック図で
ある。この自動レイアウト装置100は、自動配置配線
部10と、シミュレータ部20と、優先情報生成部30
とによって構成されている。自動配置配線部10は、半
導体集積回路の各構成要素の相互間の接続関係を示す回
路接続情報1に基づいて、自動的に配置配線を行い、そ
の結果をレイアウト情報2として出力する機能を有し、
図1に示す従来の自動レイアウト装置において用いられ
ていた自動配置配線部10をそのまま用いることができ
る。ただし、自動配置配線部10は、配置配線処理を実
行する上で、静的優先情報3と動的優先情報7との双方
を考慮する。ここで、静的優先情報3は、図1に示す従
来の自動レイアウト装置で用いられていた優先情報3と
同一のものであり、配置および配線を行う上で優先すべ
き条件を、各構成要素の幾何学的性質に基づいて設定し
たものである。一方、動的優先情報7は、この半導体集
積回路の各構成要素の動作頻度に基づいて設定された条
件を示す情報であり、次のような方法により、自動レイ
アウト装置100の内部で生成される。
動レイアウト装置100の基本構成を示すブロック図で
ある。この自動レイアウト装置100は、自動配置配線
部10と、シミュレータ部20と、優先情報生成部30
とによって構成されている。自動配置配線部10は、半
導体集積回路の各構成要素の相互間の接続関係を示す回
路接続情報1に基づいて、自動的に配置配線を行い、そ
の結果をレイアウト情報2として出力する機能を有し、
図1に示す従来の自動レイアウト装置において用いられ
ていた自動配置配線部10をそのまま用いることができ
る。ただし、自動配置配線部10は、配置配線処理を実
行する上で、静的優先情報3と動的優先情報7との双方
を考慮する。ここで、静的優先情報3は、図1に示す従
来の自動レイアウト装置で用いられていた優先情報3と
同一のものであり、配置および配線を行う上で優先すべ
き条件を、各構成要素の幾何学的性質に基づいて設定し
たものである。一方、動的優先情報7は、この半導体集
積回路の各構成要素の動作頻度に基づいて設定された条
件を示す情報であり、次のような方法により、自動レイ
アウト装置100の内部で生成される。
【0019】この動的優先情報7を自動レイアウト装置
100の内部で生成できるようにするためには、回路接
続情報1の他に、論理動作情報4と入力パターン情報5
とを用意すればよい。論理動作情報4は、半導体集積回
路の論理動作を示す情報であり、具体的には、半導体集
積回路を構成する各論理素子の動作モデルを記述したデ
ータなどを利用すればよい。一方、入力パターン情報5
は、この半導体集積回路に対して与える入力信号を示す
情報であり、具体的には、個々の入力端子に与える入力
信号の論理値“0”,“1”を時系列で羅列したデータ
を用意しておけばよい。用意する入力信号のパターン
は、任意のパターンでもかまわないが、できればこの半
導体集積回路を実際に動作させるときに与える典型的な
入力信号のパターンを用意するのが好ましい。
100の内部で生成できるようにするためには、回路接
続情報1の他に、論理動作情報4と入力パターン情報5
とを用意すればよい。論理動作情報4は、半導体集積回
路の論理動作を示す情報であり、具体的には、半導体集
積回路を構成する各論理素子の動作モデルを記述したデ
ータなどを利用すればよい。一方、入力パターン情報5
は、この半導体集積回路に対して与える入力信号を示す
情報であり、具体的には、個々の入力端子に与える入力
信号の論理値“0”,“1”を時系列で羅列したデータ
を用意しておけばよい。用意する入力信号のパターン
は、任意のパターンでもかまわないが、できればこの半
導体集積回路を実際に動作させるときに与える典型的な
入力信号のパターンを用意するのが好ましい。
【0020】シミュレータ部20は、回路接続情報1、
論理動作情報4、入力パターン情報5に基づいて、半導
体集積回路の動作をシミュレートし、各構成要素(論理
素子)の動作頻度を示す動作頻度情報6を生成する機能
を有する。すなわち、回路接続情報1で示される個々の
構成要素に、論理動作情報4で示される具体的な論理動
作を定義し、入力パターン情報5で示される具体的な論
理値を与えた場合に、どのような論理動作が行われるか
を実際にシミュレートすることになる。このようなシミ
ュレーションを行う機能をもった装置としては、既に種
々の回路シミュレータが公知であり、シミュレータ部2
0としては、このような公知の回路シミュレータをその
まま利用すればよい。こうして、シミュレータ部20か
ら出力される動作頻度情報6は、所定のシミュレーショ
ン期間内における個々の論理素子の動作頻度(各出力端
ごとの論理レベルの遷移回数)を示す情報になる。
論理動作情報4、入力パターン情報5に基づいて、半導
体集積回路の動作をシミュレートし、各構成要素(論理
素子)の動作頻度を示す動作頻度情報6を生成する機能
を有する。すなわち、回路接続情報1で示される個々の
構成要素に、論理動作情報4で示される具体的な論理動
作を定義し、入力パターン情報5で示される具体的な論
理値を与えた場合に、どのような論理動作が行われるか
を実際にシミュレートすることになる。このようなシミ
ュレーションを行う機能をもった装置としては、既に種
々の回路シミュレータが公知であり、シミュレータ部2
0としては、このような公知の回路シミュレータをその
まま利用すればよい。こうして、シミュレータ部20か
ら出力される動作頻度情報6は、所定のシミュレーショ
ン期間内における個々の論理素子の動作頻度(各出力端
ごとの論理レベルの遷移回数)を示す情報になる。
【0021】優先情報生成部30は、こうして得られた
動作頻度情報6に基づいて、各構成要素に対する配置お
よび配線を行う上で優先すべき条件を設定し、この条件
を動的優先情報7として出力する機能を有する。動作頻
度情報6に基づいて設定される具体的な優先条件につい
ては、後に実施例としていくつかを例示する。結局、優
先情報生成部30によって生成された動的優先情報7
は、半導体集積回路の実際の動作に関連して定められた
配置配線の条件を示すものになる。
動作頻度情報6に基づいて、各構成要素に対する配置お
よび配線を行う上で優先すべき条件を設定し、この条件
を動的優先情報7として出力する機能を有する。動作頻
度情報6に基づいて設定される具体的な優先条件につい
ては、後に実施例としていくつかを例示する。結局、優
先情報生成部30によって生成された動的優先情報7
は、半導体集積回路の実際の動作に関連して定められた
配置配線の条件を示すものになる。
【0022】自動配置配線部10は、従来から利用され
ていた静的優先情報3に加えて、更に、内部で生成した
動的優先情報7を参照して、個々の配置配線の優先度を
決定し、最も優先度の高い配置配線を選択しながら最終
的なレイアウトを決定し、これをレイアウト情報2とし
て出力することになる。したがって、各構成要素の幾何
学的な性質だけではなく、実際の回路動作をも考慮した
最適な配置配線を実行することが可能になる。
ていた静的優先情報3に加えて、更に、内部で生成した
動的優先情報7を参照して、個々の配置配線の優先度を
決定し、最も優先度の高い配置配線を選択しながら最終
的なレイアウトを決定し、これをレイアウト情報2とし
て出力することになる。したがって、各構成要素の幾何
学的な性質だけではなく、実際の回路動作をも考慮した
最適な配置配線を実行することが可能になる。
【0023】
【実施例】続いて、優先情報生成部30で生成される動
的優先情報7によって示される具体的な優先条件のいく
つかを実施例として例示する。
的優先情報7によって示される具体的な優先条件のいく
つかを実施例として例示する。
【0024】(1) 論理素子の出力端の配線長に関する条
件 たとえば、図4に示すように、3つの論理素子A,B,
Cを図のように接続して配置する場合を考える。ここ
で、論理素子Aは2つの出力端を有し、第1の出力端か
ら出力される論理信号は配線abを介して論理素子Bの
入力端に与えられ、第2の出力端から出力される論理信
号は配線acを介して論理素子Cの入力端に与えられ
る。このような回路に対して、典型的な入力信号を与え
ることにより、シミュレータ部20でシミュレーション
を実行した結果、仮に、論理素子Aの第1の出力端(配
線ab)の論理状態(“0”または“1”)は20回反
転し、第2の出力端(配線ac)の論理状態は50回反
転したとしよう。
件 たとえば、図4に示すように、3つの論理素子A,B,
Cを図のように接続して配置する場合を考える。ここ
で、論理素子Aは2つの出力端を有し、第1の出力端か
ら出力される論理信号は配線abを介して論理素子Bの
入力端に与えられ、第2の出力端から出力される論理信
号は配線acを介して論理素子Cの入力端に与えられ
る。このような回路に対して、典型的な入力信号を与え
ることにより、シミュレータ部20でシミュレーション
を実行した結果、仮に、論理素子Aの第1の出力端(配
線ab)の論理状態(“0”または“1”)は20回反
転し、第2の出力端(配線ac)の論理状態は50回反
転したとしよう。
【0025】この場合、配線abの論理反転頻度が20
回、配線acの論理反転頻度が50回という動作頻度情
報6が得られることになるので、優先情報生成部30
は、配線acの長さが配線abの長さよりも短くなるよ
うな優先条件を動的優先情報7として設定すればよい。
図2に示すモデルでの動作周波数fを考えると、配線a
cの方が配線abよりも動作周波数fが大きいことにな
るので、配線長をより短くして寄生容量Cを低減させて
消費電力Pを抑制させるとともに、ノイズの発生を抑え
るような配置を行った方が効率的になるからである。
回、配線acの論理反転頻度が50回という動作頻度情
報6が得られることになるので、優先情報生成部30
は、配線acの長さが配線abの長さよりも短くなるよ
うな優先条件を動的優先情報7として設定すればよい。
図2に示すモデルでの動作周波数fを考えると、配線a
cの方が配線abよりも動作周波数fが大きいことにな
るので、配線長をより短くして寄生容量Cを低減させて
消費電力Pを抑制させるとともに、ノイズの発生を抑え
るような配置を行った方が効率的になるからである。
【0026】(2) 素子群同士の配置に関する条件 半導体集積回路を構成する二次元平面領域には、通常、
複数のブロック領域が定義され、各ブロック領域内にそ
れぞれ所定の処理を実行するための多数の論理素子が配
置される。たとえば、図5に示す例では、平面上に4つ
のブロック領域が定義されており、個々のブロック内
に、それぞれ素子群W,X,Y,Zが配置されている。
各ブロック領域内に配置された多数の素子は、協働して
所定の処理を実行し、処理結果を示す信号は、ブロック
間の配線を介して、隣接した別なブロック領域内の素子
群へと伝達される。
複数のブロック領域が定義され、各ブロック領域内にそ
れぞれ所定の処理を実行するための多数の論理素子が配
置される。たとえば、図5に示す例では、平面上に4つ
のブロック領域が定義されており、個々のブロック内
に、それぞれ素子群W,X,Y,Zが配置されている。
各ブロック領域内に配置された多数の素子は、協働して
所定の処理を実行し、処理結果を示す信号は、ブロック
間の配線を介して、隣接した別なブロック領域内の素子
群へと伝達される。
【0027】このような素子群からなる回路に対して、
典型的な入力信号を与えることにより、シミュレータ部
20でシミュレーションを実行した結果、各素子群ごと
の「のべ動作回数」が得られたものとしよう。たとえ
ば、素子群Wについての「のべ動作回数」は、素子群W
を構成する個々の論理素子について、シミュレーション
期間中の動作頻度(論理出力信号が反転した回数)を記
録しておき、素子群Wに所属する論理素子の動作頻度を
合計することにより求めることができる。ここでは、こ
うして求めた各素子群についての「のべ動作回数」が、
素子群Wでは300回、素子群Xでは500回、素子群
Yでは40回、素子群Zでは80回であったものとしよ
う。
典型的な入力信号を与えることにより、シミュレータ部
20でシミュレーションを実行した結果、各素子群ごと
の「のべ動作回数」が得られたものとしよう。たとえ
ば、素子群Wについての「のべ動作回数」は、素子群W
を構成する個々の論理素子について、シミュレーション
期間中の動作頻度(論理出力信号が反転した回数)を記
録しておき、素子群Wに所属する論理素子の動作頻度を
合計することにより求めることができる。ここでは、こ
うして求めた各素子群についての「のべ動作回数」が、
素子群Wでは300回、素子群Xでは500回、素子群
Yでは40回、素子群Zでは80回であったものとしよ
う。
【0028】この場合、各素子群についての「のべ動作
回数」を示す動作頻度情報6が得られることになるの
で、優先情報生成部30は、動作頻度の高い素子群同士
を、できるだけ空間的に離隔して配置するような優先条
件を動的優先情報7として設定すればよい。図5に示す
具体的な例の場合、最も動作頻度の高かった素子群Xと
2番目に動作頻度の高かった素子群Wとを、空間的に離
して配置するような優先条件が設定されることになる。
仮にこの優先条件のみに基づいて各素子群の配置を行う
とすれば、自動配置配線部10は、たとえば図6に示す
ように、素子群Xと素子群Zとの位置を入れ替え、素子
群Xと素子群Wとが対角位置にくるようにして、両者が
できだけ離れるような配置を行うことになる。素子群X
と素子群Wとは動作頻度が高いために、消費電力も比較
的大きく、ノイズも発生しやすいが、両者をなるべく離
して配置することにより、熱が局所的に集中することを
抑えることができ、ノイズによる相互干渉も低減させる
ことができる。
回数」を示す動作頻度情報6が得られることになるの
で、優先情報生成部30は、動作頻度の高い素子群同士
を、できるだけ空間的に離隔して配置するような優先条
件を動的優先情報7として設定すればよい。図5に示す
具体的な例の場合、最も動作頻度の高かった素子群Xと
2番目に動作頻度の高かった素子群Wとを、空間的に離
して配置するような優先条件が設定されることになる。
仮にこの優先条件のみに基づいて各素子群の配置を行う
とすれば、自動配置配線部10は、たとえば図6に示す
ように、素子群Xと素子群Zとの位置を入れ替え、素子
群Xと素子群Wとが対角位置にくるようにして、両者が
できだけ離れるような配置を行うことになる。素子群X
と素子群Wとは動作頻度が高いために、消費電力も比較
的大きく、ノイズも発生しやすいが、両者をなるべく離
して配置することにより、熱が局所的に集中することを
抑えることができ、ノイズによる相互干渉も低減させる
ことができる。
【0029】(3) 特定の着目期間の動作頻度に関する条
件 これまで述べた実施例(1) ,(2) は、いずれも所定のシ
ミュレーション期間内における総動作回数を各論理素子
の動作頻度として、種々の条件設定を行っていたが、あ
る特定の着目期間についての動作頻度のみに注目した条
件設定を行うことも可能である。たとえば、図4に示す
実施例(1) では、所定のシミュレーション期間内におけ
る配線abの論理反転回数が20回であるのに対し、配
線acの論理反転回数が50回であるという理由によ
り、配線acを配線abより優先的に短くするという条
件設定がなされたわけであるが、特定の着目期間につい
てのみ考慮すれば、逆の条件設定がなされることもあり
うる。
件 これまで述べた実施例(1) ,(2) は、いずれも所定のシ
ミュレーション期間内における総動作回数を各論理素子
の動作頻度として、種々の条件設定を行っていたが、あ
る特定の着目期間についての動作頻度のみに注目した条
件設定を行うことも可能である。たとえば、図4に示す
実施例(1) では、所定のシミュレーション期間内におけ
る配線abの論理反転回数が20回であるのに対し、配
線acの論理反転回数が50回であるという理由によ
り、配線acを配線abより優先的に短くするという条
件設定がなされたわけであるが、特定の着目期間につい
てのみ考慮すれば、逆の条件設定がなされることもあり
うる。
【0030】いま、配線abと配線acとについて、図
7の図表に○印を付したタイミングで論理反転が生じて
いたものとしよう。ここで、全シミュレーション期間の
総合計で比較すれば、配線abは20回、配線acは5
0回の論理反転があったことになるが、第5周期目から
第8周期目までの特定の着目期間についてみると、配線
abは3回、配線acは1回の論理反転があったことに
なり、配線abの動作頻度の方が多くなり、配線abを
配線acより優先的に短くするという条件設定がなされ
ることになる。
7の図表に○印を付したタイミングで論理反転が生じて
いたものとしよう。ここで、全シミュレーション期間の
総合計で比較すれば、配線abは20回、配線acは5
0回の論理反転があったことになるが、第5周期目から
第8周期目までの特定の着目期間についてみると、配線
abは3回、配線acは1回の論理反転があったことに
なり、配線abの動作頻度の方が多くなり、配線abを
配線acより優先的に短くするという条件設定がなされ
ることになる。
【0031】一般に、半導体集積回路の全体の動作を考
慮すると、多数の論理素子が同時に動作する非常にクリ
ティカルな期間と、そうでない期間とが存在することが
多い。このような場合には、この図7に示す例のよう
に、クリティカルな期間になると予想される期間を、着
目期間として設定しておき、この着目期間内の動作頻度
に基づいて動的優先情報7を生成するのが好ましい。
慮すると、多数の論理素子が同時に動作する非常にクリ
ティカルな期間と、そうでない期間とが存在することが
多い。このような場合には、この図7に示す例のよう
に、クリティカルな期間になると予想される期間を、着
目期間として設定しておき、この着目期間内の動作頻度
に基づいて動的優先情報7を生成するのが好ましい。
【0032】図8に示す図表に、上述した実施例(2) に
ついて、このような着目期間を設定した例を示す。この
図表には、各素子群W,X,Y,Zについて、それぞ
れ、各周期ごとに動作した論理素子の数が記されてい
る。全周期についての合計が、既に述べた「のべ動作回
数」になり、この「のべ動作回数」に着目すれば、動作
回数の多い素子群WとXとを離して配置するという条件
設定がなされることになる。ところが、図8に示す例の
場合、第8周期目は、この半導体集積回路に含まれてい
る全論理素子のうち、100個の素子が同時に動作を行
っており、消費電力が最も大きくなるクリティカルな動
作タイミングであることがわかる。そこで、このような
クリティカルな動作タイミングに重点を置いて効率的な
レイアウトを行う上では、この第8周期目を着目期間と
して、この着目期間の動作頻度のみに基づいて動的優先
情報7を生成するのが好ましい。結局、図8に示す例の
場合には、着目期間において最も動作頻度の高い素子群
Xと2番目に動作頻度の高い素子群Yとを離隔して配置
するという条件設定がなされることになる。
ついて、このような着目期間を設定した例を示す。この
図表には、各素子群W,X,Y,Zについて、それぞ
れ、各周期ごとに動作した論理素子の数が記されてい
る。全周期についての合計が、既に述べた「のべ動作回
数」になり、この「のべ動作回数」に着目すれば、動作
回数の多い素子群WとXとを離して配置するという条件
設定がなされることになる。ところが、図8に示す例の
場合、第8周期目は、この半導体集積回路に含まれてい
る全論理素子のうち、100個の素子が同時に動作を行
っており、消費電力が最も大きくなるクリティカルな動
作タイミングであることがわかる。そこで、このような
クリティカルな動作タイミングに重点を置いて効率的な
レイアウトを行う上では、この第8周期目を着目期間と
して、この着目期間の動作頻度のみに基づいて動的優先
情報7を生成するのが好ましい。結局、図8に示す例の
場合には、着目期間において最も動作頻度の高い素子群
Xと2番目に動作頻度の高い素子群Yとを離隔して配置
するという条件設定がなされることになる。
【0033】なお、最も多くの論理素子が同時に動作す
るタイミング(図8の例では、第8周期目)は、動作頻
度情報6に基づいて自動的に認識することができる。し
たがって、このようなタイミングを着目期間として動的
優先情報7を生成する処理は、外部からの指示によらず
に自動的に行うことが可能である。
るタイミング(図8の例では、第8周期目)は、動作頻
度情報6に基づいて自動的に認識することができる。し
たがって、このようなタイミングを着目期間として動的
優先情報7を生成する処理は、外部からの指示によらず
に自動的に行うことが可能である。
【0034】
【発明の効果】以上のとおり本発明に係る半導体集積回
路の自動レイアウト装置によれば、回路シミュレーショ
ンによって得られた動作頻度情報に基づいて動的優先情
報を生成し、この動的優先情報を考慮した配置配線を行
うようにしたため、回路動作をも考慮した最適な配置配
線が可能になる。
路の自動レイアウト装置によれば、回路シミュレーショ
ンによって得られた動作頻度情報に基づいて動的優先情
報を生成し、この動的優先情報を考慮した配置配線を行
うようにしたため、回路動作をも考慮した最適な配置配
線が可能になる。
【図1】従来の一般的な半導体集積回路の自動レイアウ
ト装置による自動レイアウト処理を示すブロック図であ
る。
ト装置による自動レイアウト処理を示すブロック図であ
る。
【図2】一般的な論理素子の等価回路を示す回路図であ
る。
る。
【図3】本発明に係る半導体集積回路の自動レイアウト
装置の基本構成を示すブロック図である。
装置の基本構成を示すブロック図である。
【図4】論理素子の動作頻度に基づいて動的優先情報を
定義する例を示す図である。
定義する例を示す図である。
【図5】素子群の「のべ動作回数」に基づいて動的優先
情報を定義する例を示す図である。
情報を定義する例を示す図である。
【図6】図5に示す素子群の配置を、動的優先情報に基
づいて入れ替えた状態を示す図である。
づいて入れ替えた状態を示す図である。
【図7】図4に示す論理素子の動作頻度の認識を行う上
で設定された着目期間を示す図表である。
で設定された着目期間を示す図表である。
【図8】図5に示す素子群の動作頻度の認識を行う上で
設定された着目期間を示す図表である。
設定された着目期間を示す図表である。
1…回路接続情報 2…レイアウト情報 3…優先情報(静的優先情報) 4…論理動作情報 5…入力パターン情報 6…動作頻度情報 7…動的優先情報 10…自動配置配線部 20…シミュレータ部 30…優先情報生成部 100…自動レイアウト装置 A,B,C…論理素子 ab,bc…配線 T1,T2…トランジスタ W,X,Y,Z…素子群
Claims (7)
- 【請求項1】 半導体集積回路を構成する各構成要素に
ついての配置および配線を自動的に行う自動レイアウト
装置であって、 半導体集積回路の各構成要素の相互間の接続関係を示す
回路接続情報と、前記半導体集積回路の論理動作を示す
論理動作情報と、前記半導体集積回路に対して与える入
力信号を示す入力パターン情報と、に基づいて、前記半
導体集積回路の動作をシミュレートし、各構成要素の動
作頻度を示す動作頻度情報を生成するシミュレータ部
と、 各構成要素に対する配置および配線を行う上で優先すべ
き条件を、前記動作頻度情報に基づいて設定し、設定し
た条件を示す動的優先情報を生成する優先情報生成部
と、 前記回路接続情報と前記動的優先情報とに基づいて、各
構成要素についての配置および配線を自動的に行いレイ
アウト情報を生成する自動配置配線部と、 を備えることを特徴とする半導体集積回路の自動レイア
ウト装置。 - 【請求項2】 請求項1に記載の自動レイアウト装置に
おいて、 配置および配線を行う上で優先すべき条件を、各構成要
素の幾何学的性質に基づいて設定し、設定した条件を示
す静的優先情報を自動配置配線部に与えられるように
し、 自動配置配線部が、動的優先情報と静的優先情報との双
方に基づいて、各構成要素についての配置および配線を
自動的に行うようにしたことを特徴とする半導体集積回
路の自動レイアウト装置。 - 【請求項3】 請求項1または2に記載の自動レイアウ
ト装置において、 動的優先情報の示す条件として、動作頻度の高い出力端
の配線が、動作頻度の低い出力端の配線よりも短くなる
ような条件を設定することを特徴とする半導体集積回路
の自動レイアウト装置。 - 【請求項4】 請求項1または2に記載の自動レイアウ
ト装置において、 動的優先情報の示す条件として、動作頻度の高い素子群
同士を、できるだけ空間的に離隔して配置するような条
件を設定することを特徴とする半導体集積回路の自動レ
イアウト装置。 - 【請求項5】 請求項3または4に記載の自動レイアウ
ト装置において、 所定のシミュレーション期間内における総動作回数を各
論理素子の動作頻度として、条件設定を行うようにした
ことを特徴とする半導体集積回路の自動レイアウト装
置。 - 【請求項6】 請求項3または4に記載の自動レイアウ
ト装置において、 所定のシミュレーション期間内の特定の着目期間におけ
る動作回数を各論理素子の動作頻度として、条件設定を
行うようにしたことを特徴とする半導体集積回路の自動
レイアウト装置。 - 【請求項7】 請求項6に記載の自動レイアウト装置に
おいて、 同時に動作している論理素子の数が最も多い期間を着目
期間とすることを特徴とする半導体集積回路の自動レイ
アウト装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8265185A JPH1091675A (ja) | 1996-09-13 | 1996-09-13 | 半導体集積回路の自動レイアウト装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8265185A JPH1091675A (ja) | 1996-09-13 | 1996-09-13 | 半導体集積回路の自動レイアウト装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1091675A true JPH1091675A (ja) | 1998-04-10 |
Family
ID=17413752
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8265185A Pending JPH1091675A (ja) | 1996-09-13 | 1996-09-13 | 半導体集積回路の自動レイアウト装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1091675A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008250583A (ja) * | 2007-03-30 | 2008-10-16 | Nec Corp | レイアウト設計装置及びレイアウト方法 |
| KR102686721B1 (ko) * | 2023-10-06 | 2024-07-19 | 위더맥스(주) | 폴리 최대 밀도 에러를 방지하기 위한 칩 레이아웃 자동 생성 장치 |
| KR102686722B1 (ko) * | 2023-10-06 | 2024-07-19 | 위더맥스(주) | 메탈 레이어를 이용한 라우트 패턴 최적화 설계 장치 및 방법 |
-
1996
- 1996-09-13 JP JP8265185A patent/JPH1091675A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008250583A (ja) * | 2007-03-30 | 2008-10-16 | Nec Corp | レイアウト設計装置及びレイアウト方法 |
| KR102686721B1 (ko) * | 2023-10-06 | 2024-07-19 | 위더맥스(주) | 폴리 최대 밀도 에러를 방지하기 위한 칩 레이아웃 자동 생성 장치 |
| KR102686722B1 (ko) * | 2023-10-06 | 2024-07-19 | 위더맥스(주) | 메탈 레이어를 이용한 라우트 패턴 최적화 설계 장치 및 방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4160733B2 (ja) | 集積回路内のマクロを横切る配線をマクロ内に設計する方法およびシステム | |
| US7017132B2 (en) | Methodology to optimize hierarchical clock skew by clock delay compensation | |
| JPH0749903A (ja) | 集積回路のシミュレーション方法およびレイアウト方法 | |
| JP2004501439A (ja) | 集積回路をパーティション化して、配置及び配線をするシステム | |
| JP2002222230A (ja) | 不要輻射最適化方法および不要輻射解析方法 | |
| US6425115B1 (en) | Area efficient delay circuits | |
| US4607339A (en) | Differential cascode current switch (DCCS) master slice for high efficiency/custom density physical design | |
| CN113536726A (zh) | 用于最大瞬时峰值功率的矢量生成 | |
| US4608649A (en) | Differential cascode voltage switch (DCVS) master slice for high efficiency/custom density physical design | |
| Gansen et al. | A datapath generator for full-custom macros of iterative logic arrays | |
| US20040003363A1 (en) | Integrated circuit design and manufacture utilizing layers having a predetermined layout | |
| EP1407392A2 (en) | Digital circuits with selection operators | |
| US7117467B2 (en) | Methods for optimizing package and silicon co-design of integrated circuit | |
| US20050240889A1 (en) | Process and apparatus for placing cells in an IC floorplan | |
| JPH1131162A (ja) | 論理回路のシミュレーション装置及び論理検証方法 | |
| JP2003156544A (ja) | 集積回路のテストのための圧縮テストプランの生成、テスト系列生成およびテスト | |
| JP2009276822A (ja) | 半導体デバイス設計支援装置及び半導体デバイス設計支援方法 | |
| JP4248925B2 (ja) | 自動フロアプラン決定方法 | |
| JP2872216B1 (ja) | マクロの設計方法 | |
| JP2003091569A (ja) | 半導体集積回路設計方法、半導体集積回路、電子機器 | |
| Lienig et al. | Methodologies for Physical Design: Models, Styles, Tasks, and Flows | |
| Chen et al. | Timing driven placement of pads and latches | |
| US6985843B2 (en) | Cell modeling in the design of an integrated circuit | |
| JPH04165470A (ja) | Lsiのレイアウト設計方式 | |
| JP3028938B2 (ja) | 半導体集積回路のレイアウト方法 |