JP2003208454A - 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム - Google Patents
半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラムInfo
- Publication number
- JP2003208454A JP2003208454A JP2002008219A JP2002008219A JP2003208454A JP 2003208454 A JP2003208454 A JP 2003208454A JP 2002008219 A JP2002008219 A JP 2002008219A JP 2002008219 A JP2002008219 A JP 2002008219A JP 2003208454 A JP2003208454 A JP 2003208454A
- Authority
- JP
- Japan
- Prior art keywords
- hierarchical
- wiring
- hierarchical block
- block
- blocks
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【課題】 設計者の経験とスキルに依存することなく、
トップ階層の配線領域の偏りをなくす。 【解決手段】 自動配置配線装置10は、それぞれの高
さが等しくなるようにその形状を決定する階層ブロック
形状決定手段13と、各階層ブロックを配置するための
ROWをトップ階層に作成するROW作成手段14と、
ROW作成手段14で作成されたROWに各階層ブロッ
クを自動配置する階層ブロック自動配置手段15と、各
階層ブロックの外部端子位置を決定する外部端子位置決
定手段16と、外部端子間を前記トップ階層で配線する
トップ階層配線手段17と、各階層ブロック内について
の配置配線する階層ブロック配置配線手段18と、トッ
プ階層及び階層ブロックの配置配線結果をマージする配
置配線結果マージ手段20とを備えたものである。
トップ階層の配線領域の偏りをなくす。 【解決手段】 自動配置配線装置10は、それぞれの高
さが等しくなるようにその形状を決定する階層ブロック
形状決定手段13と、各階層ブロックを配置するための
ROWをトップ階層に作成するROW作成手段14と、
ROW作成手段14で作成されたROWに各階層ブロッ
クを自動配置する階層ブロック自動配置手段15と、各
階層ブロックの外部端子位置を決定する外部端子位置決
定手段16と、外部端子間を前記トップ階層で配線する
トップ階層配線手段17と、各階層ブロック内について
の配置配線する階層ブロック配置配線手段18と、トッ
プ階層及び階層ブロックの配置配線結果をマージする配
置配線結果マージ手段20とを備えたものである。
Description
【0001】
【発明の属する技術分野】本発明は、半導体集積回路に
おけるレイアウト設計の自動配置配線方法及び装置並び
に自動配置配線プログラムに関する。
おけるレイアウト設計の自動配置配線方法及び装置並び
に自動配置配線プログラムに関する。
【0002】
【従来の技術】半導体集積回路のレイアウト設計方式と
しては、ゲートアレイ方式やスタンダードセル方式があ
る。これらは、予めライブラリとして用意されているA
ND、NOR等の論理セル又はそれらを組み合わせた複
合セルをアレイ状にLSI半導体基板上に配置した後、
所望の回路接続に従いセル上の端子間を配線することに
より、LSI半導体装置を作るものである。
しては、ゲートアレイ方式やスタンダードセル方式があ
る。これらは、予めライブラリとして用意されているA
ND、NOR等の論理セル又はそれらを組み合わせた複
合セルをアレイ状にLSI半導体基板上に配置した後、
所望の回路接続に従いセル上の端子間を配線することに
より、LSI半導体装置を作るものである。
【0003】ここで、近年はシステム・オン・シリコン
時代と言われるように、1つの半導体集積回路にシステ
ムを塔載する程に、半導体集積回路の大規模化が進んで
いる。そのため、レイアウト設計においても、従来の回
路全体を一度にレイアウトするフラットレイアウト手法
では設計TAT(turn around time)が膨大なものとな
る。このため、現在ではゲートアレイ方式やスタンダー
ドセル方式でレイアウト設計を行う際に、論理階層を複
数の階層ブロックに分割し、各階層ブロックを個別にレ
イアウトした後に、トップ階層でこれら階層ブロック間
を配線する階層レイアウト手法が採られることが多い。
ここで、階層的に複数の階層ブロックを組み上げてレイ
アウト設計を行ったLSI半導体装置をビルディングブ
ロック方式LSIと呼んでいる。
時代と言われるように、1つの半導体集積回路にシステ
ムを塔載する程に、半導体集積回路の大規模化が進んで
いる。そのため、レイアウト設計においても、従来の回
路全体を一度にレイアウトするフラットレイアウト手法
では設計TAT(turn around time)が膨大なものとな
る。このため、現在ではゲートアレイ方式やスタンダー
ドセル方式でレイアウト設計を行う際に、論理階層を複
数の階層ブロックに分割し、各階層ブロックを個別にレ
イアウトした後に、トップ階層でこれら階層ブロック間
を配線する階層レイアウト手法が採られることが多い。
ここで、階層的に複数の階層ブロックを組み上げてレイ
アウト設計を行ったLSI半導体装置をビルディングブ
ロック方式LSIと呼んでいる。
【0004】(従来例1)
【0005】図10は、従来のビルディングブロック方
式による半導体集積回路のレイアウト装置のビルディン
グブロックレイアウトを示すフロー図である。まず、回
路入力ステップ101によりレイアウト装置に半導体集
積回路を入力し、階層ブロック作成ステップ152によ
り半導体集積回路を機能単位に分割し機能ブロック毎に
階層ブロックを作成する。この時作成される階層ブロッ
クは半導体集積回路を機能単位に分割しているため、大
きさ及び形状はまちまちの状態である。次に、フロアプ
ラン(階層ブロックの配置)ステップ153により分割
した階層ブロックを、階層ブロック間の接続関係を考慮
しながらトップ階層上に人手で配置(フロアプラン)
し、トップ階層配線ステップ154により各ブロック間
の配線を行う。また、各階層ブロック内は階層ブロック
の配置配線ステップ108により階層ブロックごとにコ
ンカレント配置配線を行う。最終的に面積・タイミング
判定ステップ109によりトップ階層及び各階層ブロッ
クのレイアウト結果の面積及びタイミングを判定し、問
題のない場合、配置配線結果マージステップ110によ
りトップ階層及び各階層ブロックのレイアウト結果をマ
ージ(結合)し、フラットのレイアウト結果を作成す
る。以上により、レイアウトにおいて多くの処理時間を
要する配置処理を小規模な階層別に独立して行うことで
処理時間の大幅な減少を実現している。
式による半導体集積回路のレイアウト装置のビルディン
グブロックレイアウトを示すフロー図である。まず、回
路入力ステップ101によりレイアウト装置に半導体集
積回路を入力し、階層ブロック作成ステップ152によ
り半導体集積回路を機能単位に分割し機能ブロック毎に
階層ブロックを作成する。この時作成される階層ブロッ
クは半導体集積回路を機能単位に分割しているため、大
きさ及び形状はまちまちの状態である。次に、フロアプ
ラン(階層ブロックの配置)ステップ153により分割
した階層ブロックを、階層ブロック間の接続関係を考慮
しながらトップ階層上に人手で配置(フロアプラン)
し、トップ階層配線ステップ154により各ブロック間
の配線を行う。また、各階層ブロック内は階層ブロック
の配置配線ステップ108により階層ブロックごとにコ
ンカレント配置配線を行う。最終的に面積・タイミング
判定ステップ109によりトップ階層及び各階層ブロッ
クのレイアウト結果の面積及びタイミングを判定し、問
題のない場合、配置配線結果マージステップ110によ
りトップ階層及び各階層ブロックのレイアウト結果をマ
ージ(結合)し、フラットのレイアウト結果を作成す
る。以上により、レイアウトにおいて多くの処理時間を
要する配置処理を小規模な階層別に独立して行うことで
処理時間の大幅な減少を実現している。
【0006】ただし、階層レイアウト手法を適用した場
合、一般的に半導体集積回路の面積は大きくなる方向に
あることに注意する必要がある。これは、階層ブロック
の形状がまちまちであるため各階層ブロック間の配線領
域(チャネル)の形状が複雑になり、更に、トップ階層
で階層ブロック間の配線を行うために階層ブロックに外
部端子を位置を固定して作成するため、トップ階層上で
の階層ブロックの配置位置に依存して配線が一部に偏る
ので、一部の配線領域(チャネル)に対し配線の混雑が
生じて配線領域(チャネル)自体の面積が増加するため
である。また、階層ブロックの数に比例して配線領域
(チャネル)の数も増加するため、各配線領域(チャネ
ル)の配線の混雑も生じ易くなる点にも注意する必要が
ある。
合、一般的に半導体集積回路の面積は大きくなる方向に
あることに注意する必要がある。これは、階層ブロック
の形状がまちまちであるため各階層ブロック間の配線領
域(チャネル)の形状が複雑になり、更に、トップ階層
で階層ブロック間の配線を行うために階層ブロックに外
部端子を位置を固定して作成するため、トップ階層上で
の階層ブロックの配置位置に依存して配線が一部に偏る
ので、一部の配線領域(チャネル)に対し配線の混雑が
生じて配線領域(チャネル)自体の面積が増加するため
である。また、階層ブロックの数に比例して配線領域
(チャネル)の数も増加するため、各配線領域(チャネ
ル)の配線の混雑も生じ易くなる点にも注意する必要が
ある。
【0007】更に、階層レイアウト手法を適用した場合
の半導体集積回路の面積増加を解決するための従来技術
として、以下に示す2種類がある。
の半導体集積回路の面積増加を解決するための従来技術
として、以下に示す2種類がある。
【0008】(従来例2:特開平10−189748号
公報)
公報)
【0009】図11は、回路規模が大きくてもトップ階
層での階層ブロック間の配線を行う際の配線の偏りによ
る配線領域(チャネル)を増加させず、かつ、レイアウ
ト処理時間を低減する方法のフローを示す図である。ま
ず、回路入力ステップ101によりレイアウト装置に半
導体集積回路を入力し、次に階層フロアプランステップ
162内の「サブブロック作成」によりレイアウト階層
情報を記述したファイルの読み込み、又は、設計者がイ
ンタラクティブに回路の分割指示・マージの指示を与え
てレイアウト階層(階層ブロック)を構築する。次に、
階層フロアプランステップ162内の「サブブロックの
位置」によりトップ階層内での階層ブロックの位置を記
述したファイルを読み込み、階層ブロックの配置を行
う。次に、階層フロアプランステップ162内の「RO
W数」により各階層ブロックのROW数を記述したファ
イルの読み込み、又は、設計者がインタラクティブにR
OW数を指定し、各階層ブロック内にセルを配置するた
めのROWを作成する。次に、階層フロアプランステッ
プ162内の「端子位置」により階層ブロックの端子位
置を記述したファイルの読み込み、又は、設計者がイン
タラクティブに端子位置を決定する、又は、階層ブロッ
ク間の接続関係から自動的に端子位置を決定する。次
に、セル配置ステップ163により各階層ブロック内の
セルをコンカレントに配置する。次に、配置結果読み込
み・展開ステップ164により、セル配置ステップ16
3で階層内のセルの配置位置が決定した各階層ブロック
内のセルの配置位置をトップ階層に展開、つまり、フラ
ットな状態にする。この後、配線ステップ165、及び
コンパクションステップ166によりこのフラットに展
開された配置結果に対して自動配線とコンパクションを
行う。
層での階層ブロック間の配線を行う際の配線の偏りによ
る配線領域(チャネル)を増加させず、かつ、レイアウ
ト処理時間を低減する方法のフローを示す図である。ま
ず、回路入力ステップ101によりレイアウト装置に半
導体集積回路を入力し、次に階層フロアプランステップ
162内の「サブブロック作成」によりレイアウト階層
情報を記述したファイルの読み込み、又は、設計者がイ
ンタラクティブに回路の分割指示・マージの指示を与え
てレイアウト階層(階層ブロック)を構築する。次に、
階層フロアプランステップ162内の「サブブロックの
位置」によりトップ階層内での階層ブロックの位置を記
述したファイルを読み込み、階層ブロックの配置を行
う。次に、階層フロアプランステップ162内の「RO
W数」により各階層ブロックのROW数を記述したファ
イルの読み込み、又は、設計者がインタラクティブにR
OW数を指定し、各階層ブロック内にセルを配置するた
めのROWを作成する。次に、階層フロアプランステッ
プ162内の「端子位置」により階層ブロックの端子位
置を記述したファイルの読み込み、又は、設計者がイン
タラクティブに端子位置を決定する、又は、階層ブロッ
ク間の接続関係から自動的に端子位置を決定する。次
に、セル配置ステップ163により各階層ブロック内の
セルをコンカレントに配置する。次に、配置結果読み込
み・展開ステップ164により、セル配置ステップ16
3で階層内のセルの配置位置が決定した各階層ブロック
内のセルの配置位置をトップ階層に展開、つまり、フラ
ットな状態にする。この後、配線ステップ165、及び
コンパクションステップ166によりこのフラットに展
開された配置結果に対して自動配線とコンパクションを
行う。
【0010】以上により、レイアウトにおいて多くの処
理時間を要する配置処理を小規模な階層別に独立して行
うことで処理時間の大幅な減少を実現し、更に、配線自
体をフラットで行うため、一部の配線領域(チャネル)
に対して配線が偏ることにより配線の混雑が発生し配線
領域(チャネル)の面積が増加することを、抑えること
ができる。
理時間を要する配置処理を小規模な階層別に独立して行
うことで処理時間の大幅な減少を実現し、更に、配線自
体をフラットで行うため、一部の配線領域(チャネル)
に対して配線が偏ることにより配線の混雑が発生し配線
領域(チャネル)の面積が増加することを、抑えること
ができる。
【0011】(従来例3:特開平9−199598号公
報)
報)
【0012】図12は、半導体集積回路全体を均一かつ
高密度な配線、つまり、一部の配線領域(チャネル)に
配線が偏ることによる配線の混雑を低減し、かつ、短時
間でレイアウトを行う方法を示す図である。まず、半導
体基板10の上にハードマクロブロック12を配置し、
空き領域を13a、13b、13cの3つの領域に分割
する。次に、作成した13a、13b、13cの各領域
にセルを配置するためのROWを発生した後、各領域内
のセルを配置する。次に、配置されたセルの内、外部端
子231につながるセル232を配置位置の変更可能な
仮配置扱いとし、それ以外のセルを配置固定セルとす
る。次に各領域内の配線を行う。ここで、仮配置セル2
32は配置が固定されていないため、配線パターンは作
成されない。次に、各領域の配置・配線結果をトップ階
層に展開、つまり、フラットな状態にする。この後、各
領域内で仮配置として扱ったセルをトップ階層で配置
し、配置が固定となった時点で配線を行う。
高密度な配線、つまり、一部の配線領域(チャネル)に
配線が偏ることによる配線の混雑を低減し、かつ、短時
間でレイアウトを行う方法を示す図である。まず、半導
体基板10の上にハードマクロブロック12を配置し、
空き領域を13a、13b、13cの3つの領域に分割
する。次に、作成した13a、13b、13cの各領域
にセルを配置するためのROWを発生した後、各領域内
のセルを配置する。次に、配置されたセルの内、外部端
子231につながるセル232を配置位置の変更可能な
仮配置扱いとし、それ以外のセルを配置固定セルとす
る。次に各領域内の配線を行う。ここで、仮配置セル2
32は配置が固定されていないため、配線パターンは作
成されない。次に、各領域の配置・配線結果をトップ階
層に展開、つまり、フラットな状態にする。この後、各
領域内で仮配置として扱ったセルをトップ階層で配置
し、配置が固定となった時点で配線を行う。
【0013】以上により、階層ブロック内の配置・配線
情報を用いてトップ階層の配置・配線の最適化を行うこ
とができ、トップ階層での偏った配線の混雑を低減する
ことが可能となる。また、トップ階層では、階層ブロッ
ク内で仮配置としたセルに対する配置・配線のみ行うた
め、扱う対象が少なく、大規模な半導体集積回路のレイ
アウトを行うことも可能となる。
情報を用いてトップ階層の配置・配線の最適化を行うこ
とができ、トップ階層での偏った配線の混雑を低減する
ことが可能となる。また、トップ階層では、階層ブロッ
ク内で仮配置としたセルに対する配置・配線のみ行うた
め、扱う対象が少なく、大規模な半導体集積回路のレイ
アウトを行うことも可能となる。
【0014】
【発明が解決しようとする課題】従来技術の説明で述べ
た通り、近年はシステム・オン・シリコン時代と言われ
るように1つの半導体集積回路にシステムを塔載する程
に半導体集積回路の大規模化が進み、レイアウト設計で
も従来の回路全体を一度にレイアウトするフラットレイ
アウト手法では設計TATが膨大なものとなる。このた
め、現在ではゲートアレイ方式やスタンダードセル方式
でレイアウト設計を行う際に、論理階層を複数の階層ブ
ロックに分割し、各階層ブロックを個別にレイアウトし
た後に、トップ階層でこれら階層ブロック間を配線する
階層レイアウト手法がとられることが多い。
た通り、近年はシステム・オン・シリコン時代と言われ
るように1つの半導体集積回路にシステムを塔載する程
に半導体集積回路の大規模化が進み、レイアウト設計で
も従来の回路全体を一度にレイアウトするフラットレイ
アウト手法では設計TATが膨大なものとなる。このた
め、現在ではゲートアレイ方式やスタンダードセル方式
でレイアウト設計を行う際に、論理階層を複数の階層ブ
ロックに分割し、各階層ブロックを個別にレイアウトし
た後に、トップ階層でこれら階層ブロック間を配線する
階層レイアウト手法がとられることが多い。
【0015】しかし、階層レイアウト手法を適用する場
合、図13に示すように、多様な形状の階層ブロック1
81を如何にトップ階層に配置するかにより、トップ階
層で階層ブロック間を配線する際の配線領域(チャネ
ル)の配線の偏り、つまり配線の混雑度182が変わ
り、半導体集積回路の面積が増加することになる。この
ため、一部の配線領域(チャネル)に配線が偏った場合
には再度、階層ブロックの作成を検討し、更に階層ブロ
ックの配置(フロアプラン)を検討し直す必要が生じ、
TATが増加してしまうことになる。なお、現状では多
様な形状の階層ブロックを自動的に配置する方式に関す
る研究が行われているが、これは複雑なパズル問題を解
くのと同様であり、未だ決定的な解又は手法を得るには
至っていない。
合、図13に示すように、多様な形状の階層ブロック1
81を如何にトップ階層に配置するかにより、トップ階
層で階層ブロック間を配線する際の配線領域(チャネ
ル)の配線の偏り、つまり配線の混雑度182が変わ
り、半導体集積回路の面積が増加することになる。この
ため、一部の配線領域(チャネル)に配線が偏った場合
には再度、階層ブロックの作成を検討し、更に階層ブロ
ックの配置(フロアプラン)を検討し直す必要が生じ、
TATが増加してしまうことになる。なお、現状では多
様な形状の階層ブロックを自動的に配置する方式に関す
る研究が行われているが、これは複雑なパズル問題を解
くのと同様であり、未だ決定的な解又は手法を得るには
至っていない。
【0016】このため、大規模化が進む半導体集積回路
に対して階層レイアウト手法によりTATの短縮を行
い、かつ、階層レイアウトで問題となるトップ階層の配
線領域(チャネル)の偏りを生じさせない手法が重要と
なる。しかしながら、前記従来の各レイアウト設計の自
動配置配線方法は、以下に説明するようにそれぞれに問
題点を有していた。
に対して階層レイアウト手法によりTATの短縮を行
い、かつ、階層レイアウトで問題となるトップ階層の配
線領域(チャネル)の偏りを生じさせない手法が重要と
なる。しかしながら、前記従来の各レイアウト設計の自
動配置配線方法は、以下に説明するようにそれぞれに問
題点を有していた。
【0017】まず、従来例1のビルディングブロック方
式の場合は、多様な形状の階層ブロックを如何にトップ
階層に配置するかにより、トップ階層で階層ブロック間
を配線する際の配線領域(チャネル)の配線の偏り、つ
まり配線の混雑度が変わり、半導体集積回路の面積が増
加することになる。つまり、階層ブロックのトップ階層
への配置位置の善し悪しにより階層ブロック間の配線領
域に対する配線の混雑度に偏りが生じ、面積が増加して
しまうという問題点がある。このため、最終的なレイア
ウトの結果は、階層ブロックをトップ階層に配置する際
の設計者の経験とスキルに依存することになる。また、
一部の配線領域(チャネル)に配線が偏った場合には、
再度、階層ブロックの作成を検討し、階層ブロックの配
置(フロアプラン)を検討し直す必要が生じ、TATが
増加してしまうという問題点がある。更に、一部の配線
領域(チャネル)に配線が集中することにより、配線経
路が迂回してしまいタイミングの収束性が困難となる問
題点がある。
式の場合は、多様な形状の階層ブロックを如何にトップ
階層に配置するかにより、トップ階層で階層ブロック間
を配線する際の配線領域(チャネル)の配線の偏り、つ
まり配線の混雑度が変わり、半導体集積回路の面積が増
加することになる。つまり、階層ブロックのトップ階層
への配置位置の善し悪しにより階層ブロック間の配線領
域に対する配線の混雑度に偏りが生じ、面積が増加して
しまうという問題点がある。このため、最終的なレイア
ウトの結果は、階層ブロックをトップ階層に配置する際
の設計者の経験とスキルに依存することになる。また、
一部の配線領域(チャネル)に配線が偏った場合には、
再度、階層ブロックの作成を検討し、階層ブロックの配
置(フロアプラン)を検討し直す必要が生じ、TATが
増加してしまうという問題点がある。更に、一部の配線
領域(チャネル)に配線が集中することにより、配線経
路が迂回してしまいタイミングの収束性が困難となる問
題点がある。
【0018】次に、従来例2の場合は、様々な形状の階
層ブロックをトップ階層で扱う必要があるため、最終的
な配線をフラットで行ったとしても、それ以前の階層ブ
ロックのトップ階層への配置位置の善し悪しにより階層
ブロック間の配線領域に対する配線の混雑度に偏りが生
じ、面積が増加してしまうという問題点がある。このた
め、最終的なレイアウトの結果は、階層ブロックをトッ
プ階層に配置する際の設計者の経験とスキルに依存する
ことになる。また、一部の配線領域(チャネル)に配線
が偏った場合には、再度、階層ブロックの作成を検討
し、階層ブロックの配置(フロアプラン)を検討し直す
必要が生じ、TATが増加してしまうという問題点があ
る。また、実際に配線をフラットで一度行うことによる
配線の混雑度を解析するなどの方法もあるが、これは直
接レイアウトTATの増加につながることになる。更
に、この手法では最終的な配線をフラットで行うため、
大規模な半導体集積回路の場合、自動配線ツール自体の
扱えるデータ規模の制限を越えてしまうという問題点、
配線処理の実行時間が膨大になるという問題点、及び、
階層ブロックごとのタイミングの収束ができないという
問題点がある。
層ブロックをトップ階層で扱う必要があるため、最終的
な配線をフラットで行ったとしても、それ以前の階層ブ
ロックのトップ階層への配置位置の善し悪しにより階層
ブロック間の配線領域に対する配線の混雑度に偏りが生
じ、面積が増加してしまうという問題点がある。このた
め、最終的なレイアウトの結果は、階層ブロックをトッ
プ階層に配置する際の設計者の経験とスキルに依存する
ことになる。また、一部の配線領域(チャネル)に配線
が偏った場合には、再度、階層ブロックの作成を検討
し、階層ブロックの配置(フロアプラン)を検討し直す
必要が生じ、TATが増加してしまうという問題点があ
る。また、実際に配線をフラットで一度行うことによる
配線の混雑度を解析するなどの方法もあるが、これは直
接レイアウトTATの増加につながることになる。更
に、この手法では最終的な配線をフラットで行うため、
大規模な半導体集積回路の場合、自動配線ツール自体の
扱えるデータ規模の制限を越えてしまうという問題点、
配線処理の実行時間が膨大になるという問題点、及び、
階層ブロックごとのタイミングの収束ができないという
問題点がある。
【0019】次に、従来例3の場合は、従来例1、2と
同様に様々な形状の階層ブロックをトップ階層で扱う必
要があるため、最終的な配線をフラットで行ったとして
も、それ以前の階層ブロックのトップ階層への配置位置
の善し悪しにより階層ブロック間の配線領域に対する配
線の混雑度に偏りが生じ、面積が増加してしまうという
問題点がある。このため、最終的なレイアウトの結果
は、階層ブロックをトップ階層に配置する際の設計者の
経験とスキルに依存することになる。また、一部の配線
領域(チャネル)に配線が偏った場合には、再度、階層
ブロックの作成を検討し、階層ブロックの配置(フロア
プラン)を検討し直す必要が生じ、TATが増加してし
まうという問題点がある。更に、一部の配線領域(チャ
ネル)に配線が集中することにより、配線経路が迂回し
てしまいタイミングの収束性が困難となる問題点があ
る。
同様に様々な形状の階層ブロックをトップ階層で扱う必
要があるため、最終的な配線をフラットで行ったとして
も、それ以前の階層ブロックのトップ階層への配置位置
の善し悪しにより階層ブロック間の配線領域に対する配
線の混雑度に偏りが生じ、面積が増加してしまうという
問題点がある。このため、最終的なレイアウトの結果
は、階層ブロックをトップ階層に配置する際の設計者の
経験とスキルに依存することになる。また、一部の配線
領域(チャネル)に配線が偏った場合には、再度、階層
ブロックの作成を検討し、階層ブロックの配置(フロア
プラン)を検討し直す必要が生じ、TATが増加してし
まうという問題点がある。更に、一部の配線領域(チャ
ネル)に配線が集中することにより、配線経路が迂回し
てしまいタイミングの収束性が困難となる問題点があ
る。
【0020】
【発明の目的】そこで、本発明の目的は、設計者の経験
とスキルに依存することなくトップ階層の配線領域の偏
りをなくすことで半導体集積回路の面積を縮小し、半導
体集積回路の動作速度を減少させることなく、レイアウ
ト処理時間を低減する、半導体集積回路におけるレイア
ウト設計の自動配置配線方法及び装置並びに自動配置配
線プログラムを提供することにある。
とスキルに依存することなくトップ階層の配線領域の偏
りをなくすことで半導体集積回路の面積を縮小し、半導
体集積回路の動作速度を減少させることなく、レイアウ
ト処理時間を低減する、半導体集積回路におけるレイア
ウト設計の自動配置配線方法及び装置並びに自動配置配
線プログラムを提供することにある。
【0021】
【課題を解決するための手段】本発明に係る自動配置配
線方法は、半導体集積回路を複数の階層ブロックに分割
し、これらの各階層ブロックの形状を高さが同じになる
ように決定し、これらの階層ブロックと同じ高さのRO
Wをトップ階層に作成し、このトップ階層と前記各階層
ブロックとをそれぞれ独立にレイアウトする、というも
のである(請求項1)。ここでいう「高さ」とは平面形
状についての特定の一方向の長さのことであり、「幅」
とは「高さ」に直交する方向の長さのことである。例え
ば、平面形状が矩形である場合、その高さは特定方向の
一辺の長さであり、その幅は高さ方向に直交する方向の
一辺の長さである。
線方法は、半導体集積回路を複数の階層ブロックに分割
し、これらの各階層ブロックの形状を高さが同じになる
ように決定し、これらの階層ブロックと同じ高さのRO
Wをトップ階層に作成し、このトップ階層と前記各階層
ブロックとをそれぞれ独立にレイアウトする、というも
のである(請求項1)。ここでいう「高さ」とは平面形
状についての特定の一方向の長さのことであり、「幅」
とは「高さ」に直交する方向の長さのことである。例え
ば、平面形状が矩形である場合、その高さは特定方向の
一辺の長さであり、その幅は高さ方向に直交する方向の
一辺の長さである。
【0022】前記階層ブロックの有する外部端子数が均
一となるように前記各階層ブロックを構築する、として
もよい(請求項2)。前記階層ブロックの有する論理回
路数が均一となるように前記各階層ブロックを構築す
る、としてもよい(請求項3)。前記トップ階層に作成
したROWに前記階層ブロックを自動配置する、として
もよい(請求項4)。前記階層ブロックを自動配置後に
各階層ブロック間の接続関係に基づき階層ブロックの外
部端子位置を決定する、としてもよい(請求項5)。
一となるように前記各階層ブロックを構築する、として
もよい(請求項2)。前記階層ブロックの有する論理回
路数が均一となるように前記各階層ブロックを構築す
る、としてもよい(請求項3)。前記トップ階層に作成
したROWに前記階層ブロックを自動配置する、として
もよい(請求項4)。前記階層ブロックを自動配置後に
各階層ブロック間の接続関係に基づき階層ブロックの外
部端子位置を決定する、としてもよい(請求項5)。
【0023】本発明に係る自動配置配線装置は、半導体
集積回路のデータを入力する回路入力手段と、この回路
入力手段で入力した半導体集積回路のデータを分割して
複数の階層ブロックを作成する階層ブロック作成手段
と、この階層ブロック作成手段で作成された各階層ブロ
ックについて、それぞれの高さが等しくなるようにその
形状を決定する階層ブロック形状決定手段と、この階層
ブロック形状決定手段で形状が決定された各階層ブロッ
クを配置するためのROWを、トップ階層に作成するR
OW作成手段と、このROW作成手段で作成されたRO
Wに、前記階層ブロック形状決定手段で形状が決定され
た各階層ブロックを自動配置する階層ブロック自動配置
手段と、この階層ブロック自動配置手段で自動配置され
た各階層ブロック間の接続関係に基づき、当該階層ブロ
ックの外部端子位置を決定する外部端子位置決定手段
と、この外部端子位置決定手段で外部端子位置が決定さ
れた各階層ブロックについて、それらの外部端子間を前
記トップ階層で配線するトップ階層配線手段と、前記外
部端子位置決定手段で外部端子位置が決定された各階層
ブロック内について配置配線する階層ブロック配置配線
手段と、前記トップ階層配線手段で配線されたトップ階
層及び前記階層ブロック配置配線手段で配置配線された
階層ブロックについて、面積及びタイミングを判定する
面積・タイミング判定手段と、この面積・タイミング判
定手段で合格と判定された前記トップ階層及び前記階層
ブロックの配置配線結果をマージし、フラットなレイア
ウト結果を作成する配置配線結果マージ手段と、を備え
たものである(請求項6)。
集積回路のデータを入力する回路入力手段と、この回路
入力手段で入力した半導体集積回路のデータを分割して
複数の階層ブロックを作成する階層ブロック作成手段
と、この階層ブロック作成手段で作成された各階層ブロ
ックについて、それぞれの高さが等しくなるようにその
形状を決定する階層ブロック形状決定手段と、この階層
ブロック形状決定手段で形状が決定された各階層ブロッ
クを配置するためのROWを、トップ階層に作成するR
OW作成手段と、このROW作成手段で作成されたRO
Wに、前記階層ブロック形状決定手段で形状が決定され
た各階層ブロックを自動配置する階層ブロック自動配置
手段と、この階層ブロック自動配置手段で自動配置され
た各階層ブロック間の接続関係に基づき、当該階層ブロ
ックの外部端子位置を決定する外部端子位置決定手段
と、この外部端子位置決定手段で外部端子位置が決定さ
れた各階層ブロックについて、それらの外部端子間を前
記トップ階層で配線するトップ階層配線手段と、前記外
部端子位置決定手段で外部端子位置が決定された各階層
ブロック内について配置配線する階層ブロック配置配線
手段と、前記トップ階層配線手段で配線されたトップ階
層及び前記階層ブロック配置配線手段で配置配線された
階層ブロックについて、面積及びタイミングを判定する
面積・タイミング判定手段と、この面積・タイミング判
定手段で合格と判定された前記トップ階層及び前記階層
ブロックの配置配線結果をマージし、フラットなレイア
ウト結果を作成する配置配線結果マージ手段と、を備え
たものである(請求項6)。
【0024】このように、本発明に係る自動配置配線装
置は本発明に係る自動配置配線方法を使用するものであ
る。また、本発明に係る自動配置配線プログラムは、本
発明に係る自動配置配線装置の各手段としてコンピュー
タを機能させるためのものである(請求項7)。
置は本発明に係る自動配置配線方法を使用するものであ
る。また、本発明に係る自動配置配線プログラムは、本
発明に係る自動配置配線装置の各手段としてコンピュー
タを機能させるためのものである(請求項7)。
【0025】換言すると、本発明は、回路規模の大規模
化に対し、分割設計により設計工数及びTATを低減
し、トップ階層及び階層ブロックの各小さな領域内で配
置配線を行うことにより半導体集積回路の面積縮小とタ
イミング収束とを容易にすることのできる構成、及び、
様々な形状の階層ブロックの配置(フロアプラン)の善
し悪しに依存する一部の配線領域(チャネル)への配線
の偏りに対し、トップ階層に階層ブロックを配置するた
めのROWを作成し階層ブロックを自動配置することに
よりフロアプランに依存しない最適な配線領域(チャネ
ル)の作成を可能とし、半導体集積回路の面積を縮小す
ることのできる構成を提供するものである。
化に対し、分割設計により設計工数及びTATを低減
し、トップ階層及び階層ブロックの各小さな領域内で配
置配線を行うことにより半導体集積回路の面積縮小とタ
イミング収束とを容易にすることのできる構成、及び、
様々な形状の階層ブロックの配置(フロアプラン)の善
し悪しに依存する一部の配線領域(チャネル)への配線
の偏りに対し、トップ階層に階層ブロックを配置するた
めのROWを作成し階層ブロックを自動配置することに
よりフロアプランに依存しない最適な配線領域(チャネ
ル)の作成を可能とし、半導体集積回路の面積を縮小す
ることのできる構成を提供するものである。
【0026】
【発明の実施の形態】以下、図面を用いて、本発明に係
る自動配置配線装置の実施形態を説明する。なお、本発
明に係る自動配置配線方法は本発明に係る自動配置配線
装置に使用されるものであり、本発明に係る自動配置配
線プログラムは本発明に係る自動配置配線装置の各手段
としてコンピュータを機能させるためのものであるの
で、これらの実施形態についても併せて説明するものと
する。
る自動配置配線装置の実施形態を説明する。なお、本発
明に係る自動配置配線方法は本発明に係る自動配置配線
装置に使用されるものであり、本発明に係る自動配置配
線プログラムは本発明に係る自動配置配線装置の各手段
としてコンピュータを機能させるためのものであるの
で、これらの実施形態についても併せて説明するものと
する。
【0027】図1は、本発明に係る自動配置配線装置の
第一実施形態を示すブロック図である。以下、この図面
に基づき説明する。
第一実施形態を示すブロック図である。以下、この図面
に基づき説明する。
【0028】本実施形態の自動配置配線装置10は、半
導体集積回路のデータを入力する回路入力手段11と、
回路入力手段11で入力した半導体集積回路のデータを
分割して複数の階層ブロックを作成する階層ブロック作
成手段12と、階層ブロック作成手段12で作成された
各階層ブロックについて、それぞれの高さが等しくなる
ようにその形状を決定する階層ブロック形状決定手段1
3と、階層ブロック形状決定手段13で形状が決定され
た各階層ブロックを配置するためのROWを、トップ階
層に作成するROW作成手段14と、ROW作成手段1
4で作成されたROWに、階層ブロック形状決定手段1
3で形状が決定された各階層ブロックを自動配置する階
層ブロック自動配置手段15と、階層ブロック自動配置
手段15で自動配置された各階層ブロック間の接続関係
に基づき、当該階層ブロックの外部端子位置を決定する
外部端子位置決定手段16と、外部端子位置決定手段1
6で外部端子位置が決定された各階層ブロックについ
て、それらの外部端子間を前記トップ階層で配線するト
ップ階層配線手段17と、外部端子位置決定手段16で
外部端子位置が決定された各階層ブロック内について配
置配線する階層ブロック配置配線手段18と、トップ階
層配線手段17で配線されたトップ階層及び階層ブロッ
ク配置配線手段18で配置配線された階層ブロックにつ
いて、面積及びタイミングを判定する面積・タイミング
判定手段19と、面積・タイミング判定手段19で合格
と判定されたトップ階層及び階層ブロックの配置配線結
果をマージし、フラットなレイアウト結果を作成する配
置配線結果マージ手段20とを備えたものである。
導体集積回路のデータを入力する回路入力手段11と、
回路入力手段11で入力した半導体集積回路のデータを
分割して複数の階層ブロックを作成する階層ブロック作
成手段12と、階層ブロック作成手段12で作成された
各階層ブロックについて、それぞれの高さが等しくなる
ようにその形状を決定する階層ブロック形状決定手段1
3と、階層ブロック形状決定手段13で形状が決定され
た各階層ブロックを配置するためのROWを、トップ階
層に作成するROW作成手段14と、ROW作成手段1
4で作成されたROWに、階層ブロック形状決定手段1
3で形状が決定された各階層ブロックを自動配置する階
層ブロック自動配置手段15と、階層ブロック自動配置
手段15で自動配置された各階層ブロック間の接続関係
に基づき、当該階層ブロックの外部端子位置を決定する
外部端子位置決定手段16と、外部端子位置決定手段1
6で外部端子位置が決定された各階層ブロックについ
て、それらの外部端子間を前記トップ階層で配線するト
ップ階層配線手段17と、外部端子位置決定手段16で
外部端子位置が決定された各階層ブロック内について配
置配線する階層ブロック配置配線手段18と、トップ階
層配線手段17で配線されたトップ階層及び階層ブロッ
ク配置配線手段18で配置配線された階層ブロックにつ
いて、面積及びタイミングを判定する面積・タイミング
判定手段19と、面積・タイミング判定手段19で合格
と判定されたトップ階層及び階層ブロックの配置配線結
果をマージし、フラットなレイアウト結果を作成する配
置配線結果マージ手段20とを備えたものである。
【0029】図2は、図1の自動配置配線装置の動作を
示すフローチャートである。以下、図1及び図2に基づ
き説明する。
示すフローチャートである。以下、図1及び図2に基づ
き説明する。
【0030】図2において、自動配置配線装置10に半
導体集積回路を入力した後(ステップ101)、階層ブ
ロックの外部端子数又は階層ブロック内の論理回路数が
均一になるように半導体集積回路を複数の階層ブロック
に分割し(ステップ102)、各階層ブロックの高さが
同じになるように階層ブロックのサイズを決定する(ス
テップ103)。続いて、階層ブロックを配置するため
のROWを、トップ階層に作成する(ステップ10
4)。これにより、トップ階層では、この分割された階
層ブロックを通常のスタンダードセルと同様に扱い自動
配置することが可能となる。その後、通常通りトップ階
層の配線を行う(ステップ107)。また、各階層ブロ
ックは、トップ階層と独立にコンカレントに配置配線す
る(ステップ108)。
導体集積回路を入力した後(ステップ101)、階層ブ
ロックの外部端子数又は階層ブロック内の論理回路数が
均一になるように半導体集積回路を複数の階層ブロック
に分割し(ステップ102)、各階層ブロックの高さが
同じになるように階層ブロックのサイズを決定する(ス
テップ103)。続いて、階層ブロックを配置するため
のROWを、トップ階層に作成する(ステップ10
4)。これにより、トップ階層では、この分割された階
層ブロックを通常のスタンダードセルと同様に扱い自動
配置することが可能となる。その後、通常通りトップ階
層の配線を行う(ステップ107)。また、各階層ブロ
ックは、トップ階層と独立にコンカレントに配置配線す
る(ステップ108)。
【0031】なお、高さが揃うように各階層ブロックを
構成する手法は、ゲートアレイやスタンダードセルなど
で用いられている。しかし、それらは予めそのようなセ
ルをライブラリとして用意しているのに対し、本実施形
態ではユーザロジック等をそのような条件で分割する階
層設計の手法に関する点で異なる。
構成する手法は、ゲートアレイやスタンダードセルなど
で用いられている。しかし、それらは予めそのようなセ
ルをライブラリとして用意しているのに対し、本実施形
態ではユーザロジック等をそのような条件で分割する階
層設計の手法に関する点で異なる。
【0032】このようにして、本実施形態によれば、大
規模な半導体集積回路であっても複数の階層ブロックに
分割し独立してレイアウト処理を行うため、大規模な半
導体集積回路をレイアウトすることが可能となり、か
つ、レイアウト処理TATの実行時間を低減することが
できる。
規模な半導体集積回路であっても複数の階層ブロックに
分割し独立してレイアウト処理を行うため、大規模な半
導体集積回路をレイアウトすることが可能となり、か
つ、レイアウト処理TATの実行時間を低減することが
できる。
【0033】また、階層ブロック単位に独立して配置配
線を行うことにより、半導体集積回路全体ではなく階層
ブロックという部分的な範囲でのタイミングの最適化を
図ることができ、タイミングの収束性の向上及び階層ブ
ロックの面積を縮小を実現することができる。
線を行うことにより、半導体集積回路全体ではなく階層
ブロックという部分的な範囲でのタイミングの最適化を
図ることができ、タイミングの収束性の向上及び階層ブ
ロックの面積を縮小を実現することができる。
【0034】更に、分割した各階層ブロックの形状を高
さが同じになるようにすることにより、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱うことが
できるので、従来手法である自動配置配線によりレイア
ウトすることができる。また、各階層ブロックの外部端
子数を均一になるように階層ブロックを作成しているた
め、トップ階層での配線に使用する領域(チャネル)を
ほぼ均一に求めることができ、これにより配線領域(チ
ャネル)の見積もりが容易になる。
さが同じになるようにすることにより、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱うことが
できるので、従来手法である自動配置配線によりレイア
ウトすることができる。また、各階層ブロックの外部端
子数を均一になるように階層ブロックを作成しているた
め、トップ階層での配線に使用する領域(チャネル)を
ほぼ均一に求めることができ、これにより配線領域(チ
ャネル)の見積もりが容易になる。
【0035】このことにより、トップ階層での配線領域
(チャネル)の過不足が生じ難く、特に、配線領域の不
足による配線の迂回を無くすことが可能となり、かつ、
従来の設計者の経験とスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏りをなくし、半導体集積回路の面積を縮小する
ことが可能となる。
(チャネル)の過不足が生じ難く、特に、配線領域の不
足による配線の迂回を無くすことが可能となり、かつ、
従来の設計者の経験とスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏りをなくし、半導体集積回路の面積を縮小する
ことが可能となる。
【0036】より具体的に説明する。本実施形態の自動
配置配線装置10は、回路入力手段11と、階層ブロッ
クの外部端子数又は階層ブロック内の論理回路数が均一
となるように複数のレイアウト対象となる階層ブロック
を作成する階層ブロック作成手段12と、前記階層ブロ
ックを高さが等しくなるように形状を決定する階層ブロ
ック形状決定手段13と、前記高さの等しい階層ブロッ
クを配置するためのROWをトップ階層に作成するRO
W作成手段14と、前記作成したROWに前記階層ブロ
ックを自動配置する階層ブロック自動配置手段15と、
階層ブロック配置後に階層ブロック間の接続関係を元に
階層ブロックの外部端子位置を決定する外部端子位置決
定手段16と、トップ階層で前記階層ブロックの外部端
子間を配線するトップ階層配線手段17と、前記複数の
階層ブロックごとに階層ブロック内の配置配線する階層
ブロック配置配線手段18と、前記トップ階層の配線結
果及び階層ブロックの配置配線結果について面積及びタ
イミングを判定する面積・タイミング判定手段19と、
前記トップ階層の配線結果及び階層ブロックの配置配線
結果をマージし、フラットなレイアウト結果を作成する
配置配線結果マージ手段20と、を具備することを特徴
とする。
配置配線装置10は、回路入力手段11と、階層ブロッ
クの外部端子数又は階層ブロック内の論理回路数が均一
となるように複数のレイアウト対象となる階層ブロック
を作成する階層ブロック作成手段12と、前記階層ブロ
ックを高さが等しくなるように形状を決定する階層ブロ
ック形状決定手段13と、前記高さの等しい階層ブロッ
クを配置するためのROWをトップ階層に作成するRO
W作成手段14と、前記作成したROWに前記階層ブロ
ックを自動配置する階層ブロック自動配置手段15と、
階層ブロック配置後に階層ブロック間の接続関係を元に
階層ブロックの外部端子位置を決定する外部端子位置決
定手段16と、トップ階層で前記階層ブロックの外部端
子間を配線するトップ階層配線手段17と、前記複数の
階層ブロックごとに階層ブロック内の配置配線する階層
ブロック配置配線手段18と、前記トップ階層の配線結
果及び階層ブロックの配置配線結果について面積及びタ
イミングを判定する面積・タイミング判定手段19と、
前記トップ階層の配線結果及び階層ブロックの配置配線
結果をマージし、フラットなレイアウト結果を作成する
配置配線結果マージ手段20と、を具備することを特徴
とする。
【0037】以下、図1乃至図6を参照して、本実施形
態の自動配置配線装置10の全体の動作について詳細に
説明する。
態の自動配置配線装置10の全体の動作について詳細に
説明する。
【0038】図1に示す各手段は、次の機能を有する。
回路入力手段11は、半導体集積回路の論理回路を入力
する。階層ブロック作成手段12は、論理回路の接続関
係を元に各階層ブロックの外部端子数が均一となるよう
に論理回路を分割し、複数のレイアウト対象となる階層
ブロックを構築する。階層ブロック形状決定手段13
は、階層ブロック作成手段12で作成された階層ブロッ
クの形状を、各階層ブロックの高さが等しくなるように
決定する。ROW作成手段14は、階層ブロック作成手
段12で作成された階層ブロックの高さと同じ高さで、
トップ階層上に階層ブロックを配置するためのROWを
作成し、これらのROWの間にトップ階層の配線を行う
ための配線領域(チャネル)を作成する。階層ブロック
自動配置手段15は、ROW作成手段14で作成したR
OWに階層ブロックを自動配置する。外部端子位置決定
手段16は、階層ブロック自動配置手段15で配置され
た各階層ブロックの配置位置と、各階層ブロック間の接
続関係とを元に、トップ階層の配線長が短くなる位置に
階層ブロックの外部端子位置を決定する。トップ階層配
線手段17は、外部端子位置決定手段16で決定された
階層ブロックの外部端子間を配線する。階層ブロック配
置配線手段18は、階層ブロック内の配置配線を各階層
ブロックごとに処理する。面積・タイミング判定手段1
9は、前記トップ階層の配線結果及び階層ブロックの配
置配線結果について面積及びタイミングを判定する。配
置配線結果マージ手段20は、前記配置配線が完了した
トップ階層及び階層ブロックのレイアウト結果をマージ
し、フラットのレイアウト結果を作成する。
回路入力手段11は、半導体集積回路の論理回路を入力
する。階層ブロック作成手段12は、論理回路の接続関
係を元に各階層ブロックの外部端子数が均一となるよう
に論理回路を分割し、複数のレイアウト対象となる階層
ブロックを構築する。階層ブロック形状決定手段13
は、階層ブロック作成手段12で作成された階層ブロッ
クの形状を、各階層ブロックの高さが等しくなるように
決定する。ROW作成手段14は、階層ブロック作成手
段12で作成された階層ブロックの高さと同じ高さで、
トップ階層上に階層ブロックを配置するためのROWを
作成し、これらのROWの間にトップ階層の配線を行う
ための配線領域(チャネル)を作成する。階層ブロック
自動配置手段15は、ROW作成手段14で作成したR
OWに階層ブロックを自動配置する。外部端子位置決定
手段16は、階層ブロック自動配置手段15で配置され
た各階層ブロックの配置位置と、各階層ブロック間の接
続関係とを元に、トップ階層の配線長が短くなる位置に
階層ブロックの外部端子位置を決定する。トップ階層配
線手段17は、外部端子位置決定手段16で決定された
階層ブロックの外部端子間を配線する。階層ブロック配
置配線手段18は、階層ブロック内の配置配線を各階層
ブロックごとに処理する。面積・タイミング判定手段1
9は、前記トップ階層の配線結果及び階層ブロックの配
置配線結果について面積及びタイミングを判定する。配
置配線結果マージ手段20は、前記配置配線が完了した
トップ階層及び階層ブロックのレイアウト結果をマージ
し、フラットのレイアウト結果を作成する。
【0039】次に、図1に示す各手段について、更に詳
しく説明する。
しく説明する。
【0040】まず、回路入力手段11は、半導体集積回
路の構成を示すネットリストを入力する。つまり、図3
[1]に示すような半導体集積回路の構成を示すネット
リストを入力する。図3[1]において、この半導体集
積回路の構成を示すネットリストは、トップ階層の下に
A〜Lの論理階層201が存在することを示している。
路の構成を示すネットリストを入力する。つまり、図3
[1]に示すような半導体集積回路の構成を示すネット
リストを入力する。図3[1]において、この半導体集
積回路の構成を示すネットリストは、トップ階層の下に
A〜Lの論理階層201が存在することを示している。
【0041】続いて、階層ブロック作成手段12は、前
記半導体集積回路の構成を示すネットリストの論理階層
を各論理階層の接続関係を元に、複数のレイアウト対象
となる階層ブロックに分割する。なお、分割の際には各
階層ブロックの外部端子数が均一となるように論理回路
を分割する。外部端子が均一となるように分割する理由
としては、階層ブロックの外部端子数を等しくすること
により、トップ階層で階層ブロック間を接続する配線本
数が各配線領域でほぼ同一となるため、トップ階層で配
線に必要とする領域(チャネル)を均一にすることが可
能となるためである。
記半導体集積回路の構成を示すネットリストの論理階層
を各論理階層の接続関係を元に、複数のレイアウト対象
となる階層ブロックに分割する。なお、分割の際には各
階層ブロックの外部端子数が均一となるように論理回路
を分割する。外部端子が均一となるように分割する理由
としては、階層ブロックの外部端子数を等しくすること
により、トップ階層で階層ブロック間を接続する配線本
数が各配線領域でほぼ同一となるため、トップ階層で配
線に必要とする領域(チャネル)を均一にすることが可
能となるためである。
【0042】なお、各階層ブロックの外部端子数を均一
にした後の階層ブロックのサイズは次処理の階層ブロッ
ク形状決定手段13により各階層ブロック内に含まれる
論理回路数を考慮して決定されるため、階層ブロックの
外部端子数に依存して、各階層ブロック内のセル使用率
が増減することはなく、また、各階層ブロック内のセル
使用率が増減することによる半導体集積回路の面積の増
加もない。
にした後の階層ブロックのサイズは次処理の階層ブロッ
ク形状決定手段13により各階層ブロック内に含まれる
論理回路数を考慮して決定されるため、階層ブロックの
外部端子数に依存して、各階層ブロック内のセル使用率
が増減することはなく、また、各階層ブロック内のセル
使用率が増減することによる半導体集積回路の面積の増
加もない。
【0043】レイアウト設計者が階層ブロックに持たせ
る外部端子数を指定することにより、図3[1]に示す
論理回路の各論理階層201の外部端子数を指定された
外部端子数になるように組み合わせを自動的に検討する
ことは容易である。したがって、この自動的な検討結果
に基づき階層ブロックを作成することで、外部端子数が
均一となるように階層ブロックを分割する方法は実現で
きる。
る外部端子数を指定することにより、図3[1]に示す
論理回路の各論理階層201の外部端子数を指定された
外部端子数になるように組み合わせを自動的に検討する
ことは容易である。したがって、この自動的な検討結果
に基づき階層ブロックを作成することで、外部端子数が
均一となるように階層ブロックを分割する方法は実現で
きる。
【0044】図3[2]は外部端子数が均一になるよう
に論理階層を分割した例を示す図であり、各階層ブロッ
ク301内の論理回路数は均一ではないため、まちまち
の大きさとなっている。なお、図3[2]のは図3
[1]のA,Bの論理階層を含む階層ブロック、図3
[2]のは図3[1]のCの論理階層を二つに分割し
その片方を含む階層ブロックを作成した例であり、同様
にからまでの計8個の階層ブロックに分割した例を
示している。これにより、大規模な半導体集積回路であ
っても複数の階層ブロックに分割し独立してレイアウト
処理を行うため、大規模な半導体集積回路をレイアウト
することが可能となり、かつ、レイアウト処理の実行時
間を低減することができる。
に論理階層を分割した例を示す図であり、各階層ブロッ
ク301内の論理回路数は均一ではないため、まちまち
の大きさとなっている。なお、図3[2]のは図3
[1]のA,Bの論理階層を含む階層ブロック、図3
[2]のは図3[1]のCの論理階層を二つに分割し
その片方を含む階層ブロックを作成した例であり、同様
にからまでの計8個の階層ブロックに分割した例を
示している。これにより、大規模な半導体集積回路であ
っても複数の階層ブロックに分割し独立してレイアウト
処理を行うため、大規模な半導体集積回路をレイアウト
することが可能となり、かつ、レイアウト処理の実行時
間を低減することができる。
【0045】続いて、階層ブロック形状決定手段13
は、前記階層ブロックの高さが等しくなるように各階層
ブロックの形状を決定する。階層ブロックの高さは、半
導体集積回路のサイズと、階層ブロック作成手段12に
より作成された各階層ブロックのサイズを元にレイアウ
ト設計者が指定する。これにより、高さが決定すると、
各階層ブロックの幅は各階層ブロック内に含まれる論理
回路の面積の合計を高さで割ることにより簡単に算出す
ることができる。
は、前記階層ブロックの高さが等しくなるように各階層
ブロックの形状を決定する。階層ブロックの高さは、半
導体集積回路のサイズと、階層ブロック作成手段12に
より作成された各階層ブロックのサイズを元にレイアウ
ト設計者が指定する。これにより、高さが決定すると、
各階層ブロックの幅は各階層ブロック内に含まれる論理
回路の面積の合計を高さで割ることにより簡単に算出す
ることができる。
【0046】図3[2]は各階層ブロックの高さを均一
にした例である。階層ブロックの高さを均一とすること
により、階層ブロックを、次手段以降の説明の通り、通
常のスタンダードセル方式の配置と同様に扱い配置配線
することができる。そのため、従来の設計者の経験及び
スキルに依存した階層ブロックのトップ階層への配置に
よる配線領域(チャネル)の配線混雑の偏り、をなくす
ことで半導体集積回路の面積を縮小することが可能とな
る。
にした例である。階層ブロックの高さを均一とすること
により、階層ブロックを、次手段以降の説明の通り、通
常のスタンダードセル方式の配置と同様に扱い配置配線
することができる。そのため、従来の設計者の経験及び
スキルに依存した階層ブロックのトップ階層への配置に
よる配線領域(チャネル)の配線混雑の偏り、をなくす
ことで半導体集積回路の面積を縮小することが可能とな
る。
【0047】続いて、ROW作成手段14は、前記階層
ブロックを配置するためのROWを、トップ階層上に作
成する。このとき、ROWの高さは、階層ブロック形状
決定手段13により決定した階層ブロックと同じ高さに
する。また、各階層ブロックの外部端子数は均一となっ
ていることにより、ROW間の配線領域(チャネル)を
使用する配線本数はほぼ均一となるため、各ROW間の
配線領域(チャネル)は均一に作成すればよい。これに
より、次手段に記述する階層ブロック配置を、通常のス
タンダードセル方式と同様の手段で自動配置することを
可能とする。
ブロックを配置するためのROWを、トップ階層上に作
成する。このとき、ROWの高さは、階層ブロック形状
決定手段13により決定した階層ブロックと同じ高さに
する。また、各階層ブロックの外部端子数は均一となっ
ていることにより、ROW間の配線領域(チャネル)を
使用する配線本数はほぼ均一となるため、各ROW間の
配線領域(チャネル)は均一に作成すればよい。これに
より、次手段に記述する階層ブロック配置を、通常のス
タンダードセル方式と同様の手段で自動配置することを
可能とする。
【0048】なお、階層ブロック作成手段12により階
層ブロックの外部端子数を多く持つ階層ブロックを作成
した場合には、階層ブロックの数は少なくなり、これに
比例して階層ブロックを配置するためのROW及び配線
領域(チャネル)数も少なくなる。一方、階層ブロック
作成手段12により階層ブロックの外部端子数を少なく
持つ階層ブロックを作成した場合には、階層ブロックの
数は多くなり、これに比例して階層ブロックを配置する
ためのROW及び配線領域(チャネル)数も多くなる。
層ブロックの外部端子数を多く持つ階層ブロックを作成
した場合には、階層ブロックの数は少なくなり、これに
比例して階層ブロックを配置するためのROW及び配線
領域(チャネル)数も少なくなる。一方、階層ブロック
作成手段12により階層ブロックの外部端子数を少なく
持つ階層ブロックを作成した場合には、階層ブロックの
数は多くなり、これに比例して階層ブロックを配置する
ためのROW及び配線領域(チャネル)数も多くなる。
【0049】ここで着目する点は、分割された階層ブロ
ックの数に比例して、配線領域(チャネル)数は増減す
るが、この配線領域(チャネル)の数自体は、各階層ブ
ロック間を接続すべき各階層ブロックの外部端子数にも
比例しているため、半導体集積回路の全体のレイアウト
としては階層ブロック数と配線領域(チャネル)はバラ
ンスがとれていることである。図4[1]はトップ階層
に階層ブロックと同じ高さのROW401を作成した例
を示す図であり、各ROW401の間には、トップ階層
で階層ブロックの外部端子間を配線するための配線領域
(チャネル)402を作成している。
ックの数に比例して、配線領域(チャネル)数は増減す
るが、この配線領域(チャネル)の数自体は、各階層ブ
ロック間を接続すべき各階層ブロックの外部端子数にも
比例しているため、半導体集積回路の全体のレイアウト
としては階層ブロック数と配線領域(チャネル)はバラ
ンスがとれていることである。図4[1]はトップ階層
に階層ブロックと同じ高さのROW401を作成した例
を示す図であり、各ROW401の間には、トップ階層
で階層ブロックの外部端子間を配線するための配線領域
(チャネル)402を作成している。
【0050】続いて、階層ブロック自動配置手段15
は、ROW作成手段14で作成したトップ階層上のRO
Wに、各階層ブロックを配置する。このとき、トップ階
層には階層ブロックを配置するためのROWが存在する
ため、階層ブロック自体の配置手法は通常のスタンダー
ドセルの配置を同様に行うことが可能である。例えば、
シミュレーテッド・アニーリング法、最小カット手法、
数理計算法などの従来手法を用いることができる。図4
[2]はトップ階層のROW上に階層ブロックを配置し
た例であり、各階層ブロックは接続強度を考慮して配置
されていることを示す。
は、ROW作成手段14で作成したトップ階層上のRO
Wに、各階層ブロックを配置する。このとき、トップ階
層には階層ブロックを配置するためのROWが存在する
ため、階層ブロック自体の配置手法は通常のスタンダー
ドセルの配置を同様に行うことが可能である。例えば、
シミュレーテッド・アニーリング法、最小カット手法、
数理計算法などの従来手法を用いることができる。図4
[2]はトップ階層のROW上に階層ブロックを配置し
た例であり、各階層ブロックは接続強度を考慮して配置
されていることを示す。
【0051】続いて、外部端子位置決定手段16は、各
階層ブロックの外部端子位置を決定する。このとき、各
階層ブロックの配置位置は階層ブロック自動配置手段1
5で既に決定しているため、各階層ブロックの外部端子
がどの方向の階層ブロックの外部端子と接続するかは容
易に求めることが可能である。したがって、階層ブロッ
クの外部端子同士の接続関係と階層ブロックの配置位置
とを元に、トップ階層の配線長が短くなるよう、各階層
ブロックの外部端子位置を決定する。図5[1]は各階
層ブロックの外部端子位置を決定した結果を示す例であ
る。
階層ブロックの外部端子位置を決定する。このとき、各
階層ブロックの配置位置は階層ブロック自動配置手段1
5で既に決定しているため、各階層ブロックの外部端子
がどの方向の階層ブロックの外部端子と接続するかは容
易に求めることが可能である。したがって、階層ブロッ
クの外部端子同士の接続関係と階層ブロックの配置位置
とを元に、トップ階層の配線長が短くなるよう、各階層
ブロックの外部端子位置を決定する。図5[1]は各階
層ブロックの外部端子位置を決定した結果を示す例であ
る。
【0052】続いて、トップ階層配線手段17は、外部
端子位置決定手段16で決定された階層ブロックの外部
端子間を配線する。配線手法としては、迷路法、チャネ
ル配線法などの従来手法を用いることができる。図5
[2]はトップ階層の配線結果を示している。
端子位置決定手段16で決定された階層ブロックの外部
端子間を配線する。配線手法としては、迷路法、チャネ
ル配線法などの従来手法を用いることができる。図5
[2]はトップ階層の配線結果を示している。
【0053】続いて、階層ブロック配置配線手段18
は、階層ブロック内の配置配線を行う。このとき、各階
層ブロックは各々独立に扱うことができるため、各階層
ブロックの配置配線を平行に処理することが可能であ
る。なお、配置配線の手法についてはトップ階層と同様
に従来手法を用いることでよい。また、各階層ブロック
単位にレイアウトを行うため、階層ブロック内でのタイ
ミング収束を図ることも併せて可能となる。
は、階層ブロック内の配置配線を行う。このとき、各階
層ブロックは各々独立に扱うことができるため、各階層
ブロックの配置配線を平行に処理することが可能であ
る。なお、配置配線の手法についてはトップ階層と同様
に従来手法を用いることでよい。また、各階層ブロック
単位にレイアウトを行うため、階層ブロック内でのタイ
ミング収束を図ることも併せて可能となる。
【0054】図6[1]は階層ブロック内の配置配線結
果の例を示している。これにより、階層ブロック単位に
独立して配置配線を行うことにより、半導体集積回路全
体ではなく階層ブロックという部分的な範囲でのタイミ
ングの最適化を行うことができ、タイミングの収束性を
向上することができ、また、階層ブロック自体の面積を
縮小することができる。
果の例を示している。これにより、階層ブロック単位に
独立して配置配線を行うことにより、半導体集積回路全
体ではなく階層ブロックという部分的な範囲でのタイミ
ングの最適化を行うことができ、タイミングの収束性を
向上することができ、また、階層ブロック自体の面積を
縮小することができる。
【0055】最後に、面積・タイミング判定手段19で
問題のない場合、配置配線結果マージ手段20は、配置
配線が完了したトップ階層及び階層ブロックのレイアウ
ト結果をマージし、フラットのレイアウト結果を作成す
る。図6[2]は各階層のレイアウト結果をマージした
結果の例を示している。
問題のない場合、配置配線結果マージ手段20は、配置
配線が完了したトップ階層及び階層ブロックのレイアウ
ト結果をマージし、フラットのレイアウト結果を作成す
る。図6[2]は各階層のレイアウト結果をマージした
結果の例を示している。
【0056】このように、本実施形態によると、大規模
な半導体集積回路であっても複数の階層ブロックに分割
し独立してレイアウト処理を行うため、大規模な半導体
集積回路をレイアウトすることが可能となり、かつ、レ
イアウト処理の実行時間を低減することができる。ま
た、階層ブロック単位に独立して配置配線を行うことに
より、半導体集積回路全体ではなく階層ブロックという
部分的な範囲でのタイミングの最適化を行うことがで
き、タイミングの収束性を向上することができ、また、
階層ブロックの面積を小さくすることができる。さら
に、分割した各階層ブロックの形状を高さが同じになる
ようにすることにより、階層ブロックを通常のスタンダ
ードセル方式の配置と同様に扱い配置配線することがで
き、従来の設計者の経験とスキルに依存した階層ブロッ
クのトップ階層への配置による配線領域(チャネル)の
配線混雑の偏り、をなくすことで半導体集積回路の面積
を縮小することが可能となる。
な半導体集積回路であっても複数の階層ブロックに分割
し独立してレイアウト処理を行うため、大規模な半導体
集積回路をレイアウトすることが可能となり、かつ、レ
イアウト処理の実行時間を低減することができる。ま
た、階層ブロック単位に独立して配置配線を行うことに
より、半導体集積回路全体ではなく階層ブロックという
部分的な範囲でのタイミングの最適化を行うことがで
き、タイミングの収束性を向上することができ、また、
階層ブロックの面積を小さくすることができる。さら
に、分割した各階層ブロックの形状を高さが同じになる
ようにすることにより、階層ブロックを通常のスタンダ
ードセル方式の配置と同様に扱い配置配線することがで
き、従来の設計者の経験とスキルに依存した階層ブロッ
クのトップ階層への配置による配線領域(チャネル)の
配線混雑の偏り、をなくすことで半導体集積回路の面積
を縮小することが可能となる。
【0057】図7及び図8は、本発明に係る自動配置配
線装置の第二実施形態を示す説明図である。本実施形態
の自動配置配線装置を構成する各手段は、一部の機能を
除き、図1に示す第一実施形態と同じである。以下、図
1、図7及び図8に基づき説明する。
線装置の第二実施形態を示す説明図である。本実施形態
の自動配置配線装置を構成する各手段は、一部の機能を
除き、図1に示す第一実施形態と同じである。以下、図
1、図7及び図8に基づき説明する。
【0058】本実施形態では、論理回路数が均一となる
ように論理回路を分割し、複数のレイアウト対象となる
階層ブロックを構築することを特徴にしている。図7
[1]に示すように、論理回路をレイアウト対象の階層
ブロックに分割する際に、第一実施形態では階層ブロッ
ク作成手段11が外部端子数が均一になるように分割し
たのに対し、本実施形態では各階層ブロック内の論理回
路数が均一になるように分割している。そのため、各階
層ブロックの大きさは、階層ブロック内に含まれる論理
回路が均一であるため、各々同じ大きさとなっている。
ように論理回路を分割し、複数のレイアウト対象となる
階層ブロックを構築することを特徴にしている。図7
[1]に示すように、論理回路をレイアウト対象の階層
ブロックに分割する際に、第一実施形態では階層ブロッ
ク作成手段11が外部端子数が均一になるように分割し
たのに対し、本実施形態では各階層ブロック内の論理回
路数が均一になるように分割している。そのため、各階
層ブロックの大きさは、階層ブロック内に含まれる論理
回路が均一であるため、各々同じ大きさとなっている。
【0059】図7[2]は同一大きさの階層ブロックを
トップ階層上に配置した例を示す図であり、階層ブロッ
クの大きさが同じであるため、階層ブロックの外部端子
間を配線するための配線領域(チャネル)が水平方向だ
けでなく、垂直方向にも発生できることを示している。
図8はトップ階層で各階層ブロックの外部端子間を配線
した結果を示す図である。
トップ階層上に配置した例を示す図であり、階層ブロッ
クの大きさが同じであるため、階層ブロックの外部端子
間を配線するための配線領域(チャネル)が水平方向だ
けでなく、垂直方向にも発生できることを示している。
図8はトップ階層で各階層ブロックの外部端子間を配線
した結果を示す図である。
【0060】まず、第一実施形態と同様に、回路入力手
段11は、半導体集積回路の構成を示すネットリストを
入力する。続いて、階層ブロック作成手段12は、半導
体集積回路の構成を示すネットリストの論理階層を、各
論理階層の接続関係を元に、複数のレイアウト対象とな
る階層ブロックに分割する。特に本実施形態では、第一
実施形態で分割の際には外部端子数が均一となるように
論理階層を分割したのに対し、論理回路数が均一となる
ように論理回路を分割する。この理由としては、各階層
ブロック内の論理回路数が均一であるため、各階層ブロ
ックの大きさを揃えることが可能となり、トップ階層上
の配線領域(チャネル)を水平方向だけでなく、垂直方
向にも作成することができるためである。
段11は、半導体集積回路の構成を示すネットリストを
入力する。続いて、階層ブロック作成手段12は、半導
体集積回路の構成を示すネットリストの論理階層を、各
論理階層の接続関係を元に、複数のレイアウト対象とな
る階層ブロックに分割する。特に本実施形態では、第一
実施形態で分割の際には外部端子数が均一となるように
論理階層を分割したのに対し、論理回路数が均一となる
ように論理回路を分割する。この理由としては、各階層
ブロック内の論理回路数が均一であるため、各階層ブロ
ックの大きさを揃えることが可能となり、トップ階層上
の配線領域(チャネル)を水平方向だけでなく、垂直方
向にも作成することができるためである。
【0061】論理回路数が均一となるように階層ブロッ
クを分割する方法としては、レイアウト設計者が階層ブ
ロックに持たせる論理回路数を指定することにより、図
3[1]に示す論理回路の各論理階層の論理回路数を指
定された論理回路数になるように組み合わせを自動的に
検討することは容易であり、この自動的な検討結果に基
づき階層ブロックを作成することで実現する。図7
[1]は論理回路数が均一になるように論理階層を分割
した例を示す図であり、各階層ブロック内の論理回路数
が均一であるため、各々が同じ大きさの階層ブロックと
なっている。なお、図7[1]のは図3[1]のA及
びBの論理階層を含む階層ブロック、図7[1]のは
図3[1]のCの論理階層を含む階層ブロックを作成し
た例であり、同様にからまでの計8個の階層ブロッ
クに分割した例を示している。
クを分割する方法としては、レイアウト設計者が階層ブ
ロックに持たせる論理回路数を指定することにより、図
3[1]に示す論理回路の各論理階層の論理回路数を指
定された論理回路数になるように組み合わせを自動的に
検討することは容易であり、この自動的な検討結果に基
づき階層ブロックを作成することで実現する。図7
[1]は論理回路数が均一になるように論理階層を分割
した例を示す図であり、各階層ブロック内の論理回路数
が均一であるため、各々が同じ大きさの階層ブロックと
なっている。なお、図7[1]のは図3[1]のA及
びBの論理階層を含む階層ブロック、図7[1]のは
図3[1]のCの論理階層を含む階層ブロックを作成し
た例であり、同様にからまでの計8個の階層ブロッ
クに分割した例を示している。
【0062】続いて、階層ブロック形状決定手段13
は、階層ブロック作成手段12で作成された階層ブロッ
クの高さが等しくなるように、各階層ブロックの形状を
決定する。このとき、各階層ブロック内に含まれる論理
回路数が均一であるため、階層ブロックの高さが等しく
なるように各階層ブロックの形状を決定すると、同時に
幅も等しくなる、つまり、全階層ブロックが同じ形状と
なる。図7[1]では各階層ブロックの高さを均一に
し、併せて幅も同じとした例である。
は、階層ブロック作成手段12で作成された階層ブロッ
クの高さが等しくなるように、各階層ブロックの形状を
決定する。このとき、各階層ブロック内に含まれる論理
回路数が均一であるため、階層ブロックの高さが等しく
なるように各階層ブロックの形状を決定すると、同時に
幅も等しくなる、つまり、全階層ブロックが同じ形状と
なる。図7[1]では各階層ブロックの高さを均一に
し、併せて幅も同じとした例である。
【0063】続いて、ROW作成手段14は、階層ブロ
ック形状決定手段13で形状が決定された階層ブロック
を配置するためのROWをトップ階層上に作成する。こ
のとき、各階層ブロックの幅も同じであるため、水平方
向だけでなく、垂直方向に対してもトップ階層で階層ブ
ロックの外部端子間を配線するための配線領域(チャネ
ル)を作成することが可能となる。
ック形状決定手段13で形状が決定された階層ブロック
を配置するためのROWをトップ階層上に作成する。こ
のとき、各階層ブロックの幅も同じであるため、水平方
向だけでなく、垂直方向に対してもトップ階層で階層ブ
ロックの外部端子間を配線するための配線領域(チャネ
ル)を作成することが可能となる。
【0064】続いて、階層ブロック自動配置手段15
は、ROW作成手段14で作成したトップ階層上のRO
Wに、各階層ブロックを配置する。このときに使用する
配置手法は、第一実施形態と同様に従来手法を用いる。
図7[2]はトップ階層のROW上に階層ブロック11
1を配置した例であり、各階層ブロック111は接続強
度を考慮して配置されており、配線領域(チャネル)1
12は水平方向と垂直方向の両方向に作成されている。
続いて、外部端子位置決定手段16は、各階層ブロック
の外部端子位置を決定する。
は、ROW作成手段14で作成したトップ階層上のRO
Wに、各階層ブロックを配置する。このときに使用する
配置手法は、第一実施形態と同様に従来手法を用いる。
図7[2]はトップ階層のROW上に階層ブロック11
1を配置した例であり、各階層ブロック111は接続強
度を考慮して配置されており、配線領域(チャネル)1
12は水平方向と垂直方向の両方向に作成されている。
続いて、外部端子位置決定手段16は、各階層ブロック
の外部端子位置を決定する。
【0065】続いて、トップ階層配線手段17は、外部
端子位置決定手段16で決定された階層ブロックの外部
端子間を配線する。配線手法としては、第一実施形態と
同様に従来手法を用いる。図8はトップ階層の配線結果
を示している。続いて、階層ブロック配置配線手段18
は、階層ブロック内の配置及び配線を行う。このとき、
各階層ブロックについて各々独立に扱うことができるた
め、各階層ブロックの配置配線を平行に処理することが
可能である。なお、配置配線手法についてはトップ階層
と同様に従来手法を用いる。最後に、面積・タイミング
判定手段19で問題のない場合、配置配線結果マージ手
段20は、配置配線が完了したトップ階層及び階層ブロ
ックのレイアウト結果をマージし、フラットのレイアウ
ト結果を作成する。
端子位置決定手段16で決定された階層ブロックの外部
端子間を配線する。配線手法としては、第一実施形態と
同様に従来手法を用いる。図8はトップ階層の配線結果
を示している。続いて、階層ブロック配置配線手段18
は、階層ブロック内の配置及び配線を行う。このとき、
各階層ブロックについて各々独立に扱うことができるた
め、各階層ブロックの配置配線を平行に処理することが
可能である。なお、配置配線手法についてはトップ階層
と同様に従来手法を用いる。最後に、面積・タイミング
判定手段19で問題のない場合、配置配線結果マージ手
段20は、配置配線が完了したトップ階層及び階層ブロ
ックのレイアウト結果をマージし、フラットのレイアウ
ト結果を作成する。
【0066】このように、本実施形態によれば、分割し
た各階層ブロックの形状を高さ及び幅が同じになるよう
にすることにより、水平方向だけでなく、垂直方向の配
線領域(チャネル)を作成することが可能となり、特に
縦方向の配線に対する配線経路を短くすることが可能と
なる。そのため、階層ブロックを通常のスタンダードセ
ル方式の配置と同様に扱い配置配線することができ、従
来の設計者の経験及びスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏り、をなくすことが可能となる。
た各階層ブロックの形状を高さ及び幅が同じになるよう
にすることにより、水平方向だけでなく、垂直方向の配
線領域(チャネル)を作成することが可能となり、特に
縦方向の配線に対する配線経路を短くすることが可能と
なる。そのため、階層ブロックを通常のスタンダードセ
ル方式の配置と同様に扱い配置配線することができ、従
来の設計者の経験及びスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏り、をなくすことが可能となる。
【0067】図9[1]は、本発明に係る自動配置配線
装置の第三実施形態を示す説明図である。本実施形態の
自動配置配線装置を構成する各手段は、一部の機能を除
き、図1に示す第一実施形態と同じである。以下、図1
及び図9[1]に基づき説明する。
装置の第三実施形態を示す説明図である。本実施形態の
自動配置配線装置を構成する各手段は、一部の機能を除
き、図1に示す第一実施形態と同じである。以下、図1
及び図9[1]に基づき説明する。
【0068】本実施形態は、スタンダードセル方式の階
層ブロックに対して適用したものである。まず、第一実
施形態と同様に、回路入力手段11は半導体集積回路の
構成を示すネットリストを入力する。続いて、階層ブロ
ック作成手段12は、半導体集積回路の構成を示すネッ
トリストの論理階層を、各論理階層の接続関係を元に、
複数のレイアウト対象となる階層ブロックに分割する。
続いて、階層ブロック形状決定手段13は、階層ブロッ
クの高さが等しくなるように各階層ブロックの形状を決
定する。
層ブロックに対して適用したものである。まず、第一実
施形態と同様に、回路入力手段11は半導体集積回路の
構成を示すネットリストを入力する。続いて、階層ブロ
ック作成手段12は、半導体集積回路の構成を示すネッ
トリストの論理階層を、各論理階層の接続関係を元に、
複数のレイアウト対象となる階層ブロックに分割する。
続いて、階層ブロック形状決定手段13は、階層ブロッ
クの高さが等しくなるように各階層ブロックの形状を決
定する。
【0069】続いて、ROW作成手段14は、前記階層
ブロックを配置するたのROWをトップ階層上に作成す
る。続いて、階層ブロック自動配置手段15は、作成し
たトップ階層上のROWに各階層ブロックを配置する。
このとき使用する配置手法は、第一実施形態と同様に従
来手法を用いる。続いて、外部端子位置決定手段16
は、各階層ブロックの外部端子位置を決定する。続い
て、トップ階層配線手段17により、前記で決定された
階層ブロックの外部端子間を配線する。配線手法として
は、実施例1と同様に従来手法を用いる。図8はトップ
階層の配線結果を示している。
ブロックを配置するたのROWをトップ階層上に作成す
る。続いて、階層ブロック自動配置手段15は、作成し
たトップ階層上のROWに各階層ブロックを配置する。
このとき使用する配置手法は、第一実施形態と同様に従
来手法を用いる。続いて、外部端子位置決定手段16
は、各階層ブロックの外部端子位置を決定する。続い
て、トップ階層配線手段17により、前記で決定された
階層ブロックの外部端子間を配線する。配線手法として
は、実施例1と同様に従来手法を用いる。図8はトップ
階層の配線結果を示している。
【0070】続いて、階層ブロック配置配線手段18
は、階層ブロック内の配置及び配線を行う。なお、本実
施形態では、階層ブロック内はスタンダードセル方式に
よりレイアウトするため、階層ブロック内の配置前に階
層ブロック内にセルを配置するためのROWとチャネル
を作成する。このROWとチャネルの作成は、従来のス
タンダードセル方式のレイアウトと同手法でよい。図9
[1]は階層ブロック内をスタンダードセル方式を用い
てレイアウトした例を示す図である。また、各階層ブロ
ックは第一実施形態と同様に各々独立に扱うことができ
るため、各階層ブロックの配置配線を平行に処理するこ
とが可能である。なお、配置配線の手法についてはトッ
プ階層と同様に従来手法を用いることができる。最後
に、面積・タイミング判定手段19で問題のない場合、
配置配線結果マージ手段20は、配置配線が完了したト
ップ階層と階層ブロックのレイアウト結果をマージし、
フラットのレイアウト結果を作成する。
は、階層ブロック内の配置及び配線を行う。なお、本実
施形態では、階層ブロック内はスタンダードセル方式に
よりレイアウトするため、階層ブロック内の配置前に階
層ブロック内にセルを配置するためのROWとチャネル
を作成する。このROWとチャネルの作成は、従来のス
タンダードセル方式のレイアウトと同手法でよい。図9
[1]は階層ブロック内をスタンダードセル方式を用い
てレイアウトした例を示す図である。また、各階層ブロ
ックは第一実施形態と同様に各々独立に扱うことができ
るため、各階層ブロックの配置配線を平行に処理するこ
とが可能である。なお、配置配線の手法についてはトッ
プ階層と同様に従来手法を用いることができる。最後
に、面積・タイミング判定手段19で問題のない場合、
配置配線結果マージ手段20は、配置配線が完了したト
ップ階層と階層ブロックのレイアウト結果をマージし、
フラットのレイアウト結果を作成する。
【0071】このように、本実施形態によれば、大規模
な半導体集積回路であっても複数の階層ブロックに分割
し、階層ブロック単位に独立して従来手法と同じスタン
ダードセル方式による配置配線を行うことにより、半導
体集積回路全体ではなく階層ブロックという部分的な範
囲でのタイミングの最適化を行うことができ、タイミン
グの収束性を向上することができ、また、階層ブロック
の面積を小さくすることができる。更に、階層ブロック
を通常のスタンダードセル方式の配置と同様に扱い配置
配線することができるので、従来の設計者の経験とスキ
ルに依存した階層ブロックのトップ階層への配置による
配線領域(チャネル)の配線混雑の偏り、をなくすこと
が可能となる。
な半導体集積回路であっても複数の階層ブロックに分割
し、階層ブロック単位に独立して従来手法と同じスタン
ダードセル方式による配置配線を行うことにより、半導
体集積回路全体ではなく階層ブロックという部分的な範
囲でのタイミングの最適化を行うことができ、タイミン
グの収束性を向上することができ、また、階層ブロック
の面積を小さくすることができる。更に、階層ブロック
を通常のスタンダードセル方式の配置と同様に扱い配置
配線することができるので、従来の設計者の経験とスキ
ルに依存した階層ブロックのトップ階層への配置による
配線領域(チャネル)の配線混雑の偏り、をなくすこと
が可能となる。
【0072】図9[2]は、本発明に係る自動配置配線
装置の第四実施形態を示す説明図である。本実施形態の
自動配置配線装置を構成する各手段は、一部の機能を除
き、図1に示す第一実施形態と同じである。以下、図1
及び図9[2]に基づき説明する。
装置の第四実施形態を示す説明図である。本実施形態の
自動配置配線装置を構成する各手段は、一部の機能を除
き、図1に示す第一実施形態と同じである。以下、図1
及び図9[2]に基づき説明する。
【0073】本実施形態は、ゲートアレイ方式の階層ブ
ロックに対して適用したものである。まず、第一実施形
態と同様に、回路入力手段11は、半導体集積回路の構
成を示すネットリストを入力する。続いて、階層ブロッ
ク作成手段12は、半導体集積回路の構成を示すネット
リストの論理階層を、各論理階層の接続関係を元に、複
数のレイアウト対象となる階層ブロックに分割する。続
いて、階層ブロック形状決定手段13は、階層ブロック
の高さが等しくなるように各階層ブロックの形状を決定
する。
ロックに対して適用したものである。まず、第一実施形
態と同様に、回路入力手段11は、半導体集積回路の構
成を示すネットリストを入力する。続いて、階層ブロッ
ク作成手段12は、半導体集積回路の構成を示すネット
リストの論理階層を、各論理階層の接続関係を元に、複
数のレイアウト対象となる階層ブロックに分割する。続
いて、階層ブロック形状決定手段13は、階層ブロック
の高さが等しくなるように各階層ブロックの形状を決定
する。
【0074】続いて、ROW作成手段14は、前記階層
ブロックを配置するたのROWをトップ階層上に作成す
る。続いて、階層ブロック自動配置手段15は、作成し
たトップ階層上のROWに各階層ブロックを配置する。
このとき使用する配置手法は第一実施形態と同様に従来
手法を用いることができる。続いて、外部端子位置決定
手段16は、各階層ブロックの外部端子位置を決定す
る。続いて、トップ階層配線手段17は、前述の通りに
決定された階層ブロックの外部端子間を配線する。配線
手法としては、第一実施形態と同様に従来手法を用いる
ことができる。図8はトップ階層の配線結果を示してい
る。
ブロックを配置するたのROWをトップ階層上に作成す
る。続いて、階層ブロック自動配置手段15は、作成し
たトップ階層上のROWに各階層ブロックを配置する。
このとき使用する配置手法は第一実施形態と同様に従来
手法を用いることができる。続いて、外部端子位置決定
手段16は、各階層ブロックの外部端子位置を決定す
る。続いて、トップ階層配線手段17は、前述の通りに
決定された階層ブロックの外部端子間を配線する。配線
手法としては、第一実施形態と同様に従来手法を用いる
ことができる。図8はトップ階層の配線結果を示してい
る。
【0075】続いて、階層ブロック配置配線手段18
は、階層ブロック内の配置及び配線を行う。なお、本実
施形態では、階層ブロック内はゲートアレイ方式により
レイアウトするため、階層ブロック内の配置前に階層ブ
ロック内にセルを配置するためのROWを作成する。こ
のROWの作成は、従来のゲートアレイ方式のレイアウ
トと同手法を用いることができる。図9[2]は階層ブ
ロック内をゲートアレイ方式を用いてレイアウトした例
を示す図である。また、各階層ブロックは第一実施形態
と同様に各々独立に扱うことができるため、各階層ブロ
ックの配置配線を平行に処理することが可能である。な
お、配置配線の手法についてはトップ階層と同様に従来
手法を用いることができる。最後に、面積・タイミング
判定手段19で問題のない場合、配置配線結果マージ手
段20は、配置配線が完了したトップ階層と階層ブロッ
クのレイアウト結果をマージし、フラットのレイアウト
結果を作成する。
は、階層ブロック内の配置及び配線を行う。なお、本実
施形態では、階層ブロック内はゲートアレイ方式により
レイアウトするため、階層ブロック内の配置前に階層ブ
ロック内にセルを配置するためのROWを作成する。こ
のROWの作成は、従来のゲートアレイ方式のレイアウ
トと同手法を用いることができる。図9[2]は階層ブ
ロック内をゲートアレイ方式を用いてレイアウトした例
を示す図である。また、各階層ブロックは第一実施形態
と同様に各々独立に扱うことができるため、各階層ブロ
ックの配置配線を平行に処理することが可能である。な
お、配置配線の手法についてはトップ階層と同様に従来
手法を用いることができる。最後に、面積・タイミング
判定手段19で問題のない場合、配置配線結果マージ手
段20は、配置配線が完了したトップ階層と階層ブロッ
クのレイアウト結果をマージし、フラットのレイアウト
結果を作成する。
【0076】このように、本実施形態によれば、大規模
な半導体集積回路であっても複数の階層ブロックに分割
し、階層ブロック単位に独立して従来手法と同じスゲー
トアレイ方式による配置配線を行うことにより、半導体
集積回路全体ではなく階層ブロックという部分的な範囲
でのタイミングの最適化を行うことができ、タイミング
の収束性を向上することができ、また、階層ブロックの
面積を小さくすることができる。更に、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱い配置配
線することができ、従来の設計者の経験とスキルに依存
した階層ブロックのトップ階層への配置による配線領域
(チャネル)の配線混雑の偏り、をなくすことが可能と
なる。
な半導体集積回路であっても複数の階層ブロックに分割
し、階層ブロック単位に独立して従来手法と同じスゲー
トアレイ方式による配置配線を行うことにより、半導体
集積回路全体ではなく階層ブロックという部分的な範囲
でのタイミングの最適化を行うことができ、タイミング
の収束性を向上することができ、また、階層ブロックの
面積を小さくすることができる。更に、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱い配置配
線することができ、従来の設計者の経験とスキルに依存
した階層ブロックのトップ階層への配置による配線領域
(チャネル)の配線混雑の偏り、をなくすことが可能と
なる。
【0077】
【発明の効果】本発明によれば、大規模な半導体集積回
路であっても複数の階層ブロックに分割し独立してレイ
アウト処理を行うため、大規模な半導体集積回路をレイ
アウトすることが可能となり、かつ、レイアウト処理T
ATの実行時間を低減することができる。
路であっても複数の階層ブロックに分割し独立してレイ
アウト処理を行うため、大規模な半導体集積回路をレイ
アウトすることが可能となり、かつ、レイアウト処理T
ATの実行時間を低減することができる。
【0078】また、階層ブロック単位に独立して配置配
線を行うことにより、半導体集積回路全体ではなく階層
ブロックという部分的な範囲でのタイミングの最適化を
図ることができ、タイミングの収束性の向上及び階層ブ
ロックの面積を縮小を実現することができる。
線を行うことにより、半導体集積回路全体ではなく階層
ブロックという部分的な範囲でのタイミングの最適化を
図ることができ、タイミングの収束性の向上及び階層ブ
ロックの面積を縮小を実現することができる。
【0079】更に、分割した各階層ブロックの形状を高
さが同じになるようにすることにより、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱うことが
できるので、従来手法である自動配置配線によりレイア
ウトすることができる。また、各階層ブロックの外部端
子数を均一になるように階層ブロックを作成しているた
め、トップ階層での配線に使用する領域(チャネル)を
ほぼ均一に求めることができ、これにより配線領域(チ
ャネル)の見積もりが容易になる。
さが同じになるようにすることにより、階層ブロックを
通常のスタンダードセル方式の配置と同様に扱うことが
できるので、従来手法である自動配置配線によりレイア
ウトすることができる。また、各階層ブロックの外部端
子数を均一になるように階層ブロックを作成しているた
め、トップ階層での配線に使用する領域(チャネル)を
ほぼ均一に求めることができ、これにより配線領域(チ
ャネル)の見積もりが容易になる。
【0080】このことにより、トップ階層での配線領域
(チャネル)の過不足が生じ難く、特に、配線領域の不
足による配線の迂回を無くすことが可能となり、かつ、
従来の設計者の経験とスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏りをなくし、半導体集積回路の面積を縮小する
ことが可能となる。
(チャネル)の過不足が生じ難く、特に、配線領域の不
足による配線の迂回を無くすことが可能となり、かつ、
従来の設計者の経験とスキルに依存した階層ブロックの
トップ階層への配置による配線領域(チャネル)の配線
混雑の偏りをなくし、半導体集積回路の面積を縮小する
ことが可能となる。
【0081】換言すると、本発明によれば次の効果を奏
する。
する。
【0082】第1の効果は、レイアウト処理のTATを
低減することができることである。その理由は、大規模
な半導体集積回路であっても複数の階層ブロックに分割
し、各階層ブロックの高さを揃え、トップ階層にROW
を作成することにより、階層ブロックを通常のスタンダ
ードセル方式と同様に自動配置配線するため、及び、分
割した階層ブロックは各々独立に並列して配置配線する
ためである。
低減することができることである。その理由は、大規模
な半導体集積回路であっても複数の階層ブロックに分割
し、各階層ブロックの高さを揃え、トップ階層にROW
を作成することにより、階層ブロックを通常のスタンダ
ードセル方式と同様に自動配置配線するため、及び、分
割した階層ブロックは各々独立に並列して配置配線する
ためである。
【0083】第2の効果は、半導体集積回路の面積を縮
小することができることである。その理由は、階層ブロ
ックを作成する際に、各階層ブロックの外部端子数を均
一にし、かつ、階層ブロックの高さを揃えることによ
り、各配線領域(チャネル)を使用して配線すべき階層
ブロックの外部端子の接続関係を均一にすることで、ト
ップ階層の配線領域(チャネル)の見積もりを容易し、
階層ブロックを通常のスタンダードセル方式と同様に自
動配置配線し、トップ階層での配線領域(チャネル)の
過不足が生じ難く配線領域の不足による配線の迂回を無
くすことで、従来の設計者の経験とスキルに依存した階
層ブロックのトップ階層への配置による配線領域(チャ
ネル)の配線混雑の偏り、をなくすことができるためで
ある。また、その他の理由は、階層ブロックを作成する
際に、各階層ブロック内に含まれる論理回路数を均一に
し、かつ、階層ブロックの高さを揃えることにより各階
層ブロックの高さと幅を揃え、階層ブロック間の配線領
域(チャネル)を水平方向だけでなく垂直方向にも作成
することで、トップ階層の配線経路を最短にし、トップ
階層での配線領域(チャネル)の過不足が生じ難く配線
領域の不足による配線の迂回を無くすことで、従来の設
計者の経験とスキルに依存した階層ブロックのトップ階
層への配置による配線領域(チャネル)の配線混雑の偏
り、をなくすことができるためである。
小することができることである。その理由は、階層ブロ
ックを作成する際に、各階層ブロックの外部端子数を均
一にし、かつ、階層ブロックの高さを揃えることによ
り、各配線領域(チャネル)を使用して配線すべき階層
ブロックの外部端子の接続関係を均一にすることで、ト
ップ階層の配線領域(チャネル)の見積もりを容易し、
階層ブロックを通常のスタンダードセル方式と同様に自
動配置配線し、トップ階層での配線領域(チャネル)の
過不足が生じ難く配線領域の不足による配線の迂回を無
くすことで、従来の設計者の経験とスキルに依存した階
層ブロックのトップ階層への配置による配線領域(チャ
ネル)の配線混雑の偏り、をなくすことができるためで
ある。また、その他の理由は、階層ブロックを作成する
際に、各階層ブロック内に含まれる論理回路数を均一に
し、かつ、階層ブロックの高さを揃えることにより各階
層ブロックの高さと幅を揃え、階層ブロック間の配線領
域(チャネル)を水平方向だけでなく垂直方向にも作成
することで、トップ階層の配線経路を最短にし、トップ
階層での配線領域(チャネル)の過不足が生じ難く配線
領域の不足による配線の迂回を無くすことで、従来の設
計者の経験とスキルに依存した階層ブロックのトップ階
層への配置による配線領域(チャネル)の配線混雑の偏
り、をなくすことができるためである。
【0084】第3の効果は、従来の設計者の経験とスキ
ルに依存した階層ブロックのトップ階層への配置による
配線領域(チャネル)の配線混雑の偏り、をなくすこと
ができることである。その理由は、階層ブロックを作成
する際に、各階層ブロックの外部端子数を均一にし、か
つ、階層ブロックの高さを揃えることにより、トップ階
層の配線領域(チャネル)の見積もりを容易にし、階層
ブロックを通常のスタンダードセル方式と同様に自動配
置配線することで、トップ階層での配線領域(チャネ
ル)の過不足が生じ難く配線領域の不足による配線の迂
回を無くすことができるためである。また、その他の理
由は、階層ブロックを作成する際に、各階層ブロック内
に含まれる論理回路数を均一にし、かつ、階層ブロック
の高さを揃えることにより各階層ブロックの高さと幅を
揃え、階層ブロック間の配線領域(チャネル)を水平方
向だけでなく垂直方向にも作成することで、トップ階層
の配線経路を最短にし、トップ階層での配線領域(チャ
ネル)の過不足が生じ難く配線領域の不足による配線の
迂回を無くすことができるためである。
ルに依存した階層ブロックのトップ階層への配置による
配線領域(チャネル)の配線混雑の偏り、をなくすこと
ができることである。その理由は、階層ブロックを作成
する際に、各階層ブロックの外部端子数を均一にし、か
つ、階層ブロックの高さを揃えることにより、トップ階
層の配線領域(チャネル)の見積もりを容易にし、階層
ブロックを通常のスタンダードセル方式と同様に自動配
置配線することで、トップ階層での配線領域(チャネ
ル)の過不足が生じ難く配線領域の不足による配線の迂
回を無くすことができるためである。また、その他の理
由は、階層ブロックを作成する際に、各階層ブロック内
に含まれる論理回路数を均一にし、かつ、階層ブロック
の高さを揃えることにより各階層ブロックの高さと幅を
揃え、階層ブロック間の配線領域(チャネル)を水平方
向だけでなく垂直方向にも作成することで、トップ階層
の配線経路を最短にし、トップ階層での配線領域(チャ
ネル)の過不足が生じ難く配線領域の不足による配線の
迂回を無くすことができるためである。
【0085】第4の効果は、トップ階層の配線領域(チ
ャネル)の見積もりを容易にすることができることであ
る。その理由は、階層ブロックを作成する際に、各階層
ブロックの外部端子数を均一になるように階層ブロック
を作成し、かつ、階層ブロックの形状を高さが同じにな
るようにすることにより、トップ階層での配線に使用す
る領域(チャネル)がほぼ均一に求めることができるた
めである。
ャネル)の見積もりを容易にすることができることであ
る。その理由は、階層ブロックを作成する際に、各階層
ブロックの外部端子数を均一になるように階層ブロック
を作成し、かつ、階層ブロックの形状を高さが同じにな
るようにすることにより、トップ階層での配線に使用す
る領域(チャネル)がほぼ均一に求めることができるた
めである。
【0086】第5の効果は、階層ブロックのタイミング
の収束性を向上することができることである。その理由
は、階層ブロック単位に独立して配置配線を行うことに
より、半導体集積回路全体ではなく階層ブロックという
部分的な範囲でのタイミングの最適化を行うことができ
るためである。
の収束性を向上することができることである。その理由
は、階層ブロック単位に独立して配置配線を行うことに
より、半導体集積回路全体ではなく階層ブロックという
部分的な範囲でのタイミングの最適化を行うことができ
るためである。
【0087】第6の効果は、階層ブロックの面積を縮小
することができることである。その理由は、階層ブロッ
ク単位に独立して配置配線を行うことにより、半導体集
積回路全体ではなく階層ブロックという部分的な範囲で
のレイアウト最適化を行うことができるためである。
することができることである。その理由は、階層ブロッ
ク単位に独立して配置配線を行うことにより、半導体集
積回路全体ではなく階層ブロックという部分的な範囲で
のレイアウト最適化を行うことができるためである。
【0088】第7の効果は、大規模な半導体集積回路を
レイアウトすることができることである。その理由は、
大規模な半導体集積回路であっても複数の階層ブロック
に分割し、分割した階層ブロック内を従来のスタンダー
ドセル方式や、ゲートアレイ方式の手法により、独立し
てコンカレントにレイアウト処理を行うためである。
レイアウトすることができることである。その理由は、
大規模な半導体集積回路であっても複数の階層ブロック
に分割し、分割した階層ブロック内を従来のスタンダー
ドセル方式や、ゲートアレイ方式の手法により、独立し
てコンカレントにレイアウト処理を行うためである。
【図1】本発明に係る自動配置配線装置の第一実施形態
を示すブロック図である。
を示すブロック図である。
【図2】第一実施形態による階層レイアウト方法のフロ
ーを示す図。
ーを示す図。
【図3】図3[1]は半導体集積回路の構成を示すネッ
トリストである。図3[2]は階層ブロックを示す図で
ある。
トリストである。図3[2]は階層ブロックを示す図で
ある。
【図4】図4[1]はトップ階層にROWを作成した図
である。図4[2]はトップ階層に階層ブロックを配置
した図である。
である。図4[2]はトップ階層に階層ブロックを配置
した図である。
【図5】図5[1]は階層ブロックの外部端子位置を決
定した図である。図5[2]はトップ階層の配線結果を
示す図である。
定した図である。図5[2]はトップ階層の配線結果を
示す図である。
【図6】図6[1]は階層ブロック内の配置配線結果を
示す図である。図6[2]はトップ階層及び各階層ブロ
ックのレイアウト情報のマージ結果を示す図である。
示す図である。図6[2]はトップ階層及び各階層ブロ
ックのレイアウト情報のマージ結果を示す図である。
【図7】図7[1]は階層ブロックを示す図である。図
7[2]はトップ階層に階層ブロックを配置した図であ
る。
7[2]はトップ階層に階層ブロックを配置した図であ
る。
【図8】トップ階層の配線結果を示す図である。
【図9】図9[1]は本発明をスタンダードセル方式の
階層ブロックで実施した例を示す図である。図9[2]
は本発明をゲートアレイ方式の階層ブロックで実施した
例を示す図である。
階層ブロックで実施した例を示す図である。図9[2]
は本発明をゲートアレイ方式の階層ブロックで実施した
例を示す図である。
【図10】従来技術のビルディングブロック方式による
半導体集積回路のレイアウト設計を示すフロー図であ
る。
半導体集積回路のレイアウト設計を示すフロー図であ
る。
【図11】従来技術(特開平10-189748号公報)を示す図
である。
である。
【図12】従来技術(特開平9-199598号公報)を示す図
である。
である。
【図13】従来技術のビルディングブロック方式を使用
した場合の配線の偏りを示す図である。
した場合の配線の偏りを示す図である。
11 回路入力手段
12 階層ブロック作成手段
13 階層ブロック形状決定手段
14 ROW作成手段
15 階層ブロック自動配置手段
16 外部端子位置決定手段
17 トップ階層配線手段
18 階層ブロック配置配線手段
19 面積・タイミング判定手段
20 配置配線結果マージ手段
201 論理階層
301 階層ブロック
401 ROW
402 配線領域(チャネル)
501 階層ブロック
502 配線領域(チャネル)
503 階層ブロック間の接続関係
504 ハードマクロ
601 外部端子
701 トップ階層の配線
101 階層ブロック
111 階層ブロック
112 配線領域(チャネル)
113 階層ブロック間の接続関係
114 ハードマクロ
121 トップ階層の配線
131 スタンダードセル列
141 ゲートアレイ列
─────────────────────────────────────────────────────
フロントページの続き
Fターム(参考) 5B046 AA08 BA05 BA06 JA01
5F064 AA03 AA04 AA06 DD02 DD04
DD07 DD18 DD25 EE02 EE08
EE14 EE15 EE16 HH06 HH10
Claims (7)
- 【請求項1】 半導体集積回路を複数の階層ブロックに
分割し、これらの各階層ブロックの形状を高さが同じに
なるように決定し、これらの階層ブロックと同じ高さの
ROWをトップ階層に作成し、このトップ階層と前記各
階層ブロックとをそれぞれ独立にレイアウトする、 半導体集積回路におけるレイアウト設計の自動配置配線
方法。 - 【請求項2】 前記階層ブロックの有する外部端子数が
均一となるように前記各階層ブロックを構築する、 請求項1記載の半導体集積回路におけるレイアウト設計
の自動配置配線方法。 - 【請求項3】 前記階層ブロックの有する論理回路数が
均一となるように前記各階層ブロックを構築する、 請求項1記載の半導体集積回路におけるレイアウト設計
の自動配置配線方法。 - 【請求項4】 前記トップ階層に作成したROWに前記
階層ブロックを自動配置する、 請求項1乃至3のいずれかに記載の半導体集積回路にお
けるレイアウト設計の自動配置配線方法。 - 【請求項5】 前記階層ブロックを自動配置後に各階層
ブロック間の接続関係に基づき階層ブロックの外部端子
位置を決定する、 請求項4記載の半導体集積回路におけるレイアウト設計
の自動配置配線方法。 - 【請求項6】 半導体集積回路のデータを入力する回路
入力手段と、 この回路入力手段で入力した半導体集積回路のデータを
分割して複数の階層ブロックを作成する階層ブロック作
成手段と、 この階層ブロック作成手段で作成された各階層ブロック
について、それぞれの高さが等しくなるようにその形状
を決定する階層ブロック形状決定手段と、 この階層ブロック形状決定手段で形状が決定された各階
層ブロックを配置するためのROWを、トップ階層に作
成するROW作成手段と、 このROW作成手段で作成されたROWに、前記階層ブ
ロック形状決定手段で形状が決定された各階層ブロック
を自動配置する階層ブロック自動配置手段と、 この階層ブロック自動配置手段で自動配置された各階層
ブロック間の接続関係に基づき、当該階層ブロックの外
部端子位置を決定する外部端子位置決定手段と、 この外部端子位置決定手段で外部端子位置が決定された
各階層ブロックについて、それらの外部端子間を前記ト
ップ階層で配線するトップ階層配線手段と、 前記外部端子位置決定手段で外部端子位置が決定された
各階層ブロック内について配置配線する階層ブロック配
置配線手段と、 前記トップ階層配線手段で配線されたトップ階層及び前
記階層ブロック配置配線手段で配置配線された階層ブロ
ックについて、面積及びタイミングを判定する面積・タ
イミング判定手段と、 この面積・タイミング判定手段で合格と判定された前記
トップ階層及び前記階層ブロックの配置配線結果をマー
ジし、フラットなレイアウト結果を作成する配置配線結
果マージ手段と、 を備えた半導体集積回路におけるレイアウト設計の自動
配置配線装置。 - 【請求項7】 半導体集積回路のデータを入力する回路
入力手段と、 この回路入力手段で入力した半導体集積回路のデータを
分割して複数の階層ブロックを作成する階層ブロック作
成手段、 この階層ブロック作成手段で作成された各階層ブロック
について、それぞれの高さが等しくなるようにその形状
を決定する階層ブロック形状決定手段と、 この階層ブロック形状決定手段で形状が決定された各階
層ブロックを配置するためのROWを、トップ階層に作
成するROW作成手段、 このROW作成手段で作成されたROWに、前記階層ブ
ロック形状決定手段で形状が決定された各階層ブロック
を自動配置する階層ブロック自動配置手段、 この階層ブロック自動配置手段で自動配置された各階層
ブロック間の接続関係に基づき、当該階層ブロックの外
部端子位置を決定する外部端子位置決定手段、 この外部端子位置決定手段で外部端子位置が決定された
各階層ブロックについて、それらの外部端子間を前記ト
ップ階層で配線するトップ階層配線手段、 前記外部端子位置決定手段で外部端子位置が決定された
各階層ブロック内について配置配線する階層ブロック配
置配線手段、 前記トップ階層配線手段で配線されたトップ階層及び前
記階層ブロック配置配線手段で配置配線された階層ブロ
ックについて、面積及びタイミングを判定する面積・タ
イミング判定手段、 及び、この面積・タイミング判定手段で合格と判定され
た前記トップ階層及び前記階層ブロックの配置配線結果
をマージし、フラットなレイアウト結果を作成する配置
配線結果マージ手段、 としてコンピュータを機能させるための、半導体集積回
路におけるレイアウト設計の自動配置配線プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002008219A JP2003208454A (ja) | 2002-01-17 | 2002-01-17 | 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム |
US10/346,801 US20030135837A1 (en) | 2002-01-17 | 2003-01-16 | Method and apparatus for automatic arrangement and wiring for a semiconductor integrated circuit design and wiring program therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002008219A JP2003208454A (ja) | 2002-01-17 | 2002-01-17 | 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003208454A true JP2003208454A (ja) | 2003-07-25 |
Family
ID=19191399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002008219A Pending JP2003208454A (ja) | 2002-01-17 | 2002-01-17 | 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20030135837A1 (ja) |
JP (1) | JP2003208454A (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5029070B2 (ja) * | 2007-03-02 | 2012-09-19 | 日本電気株式会社 | 集積回路のレイアウト設計支援装置、方法、及びプログラム |
JP2009015491A (ja) * | 2007-07-03 | 2009-01-22 | Nec Electronics Corp | 半導体集積回路のレイアウト設計方法 |
US8555232B2 (en) * | 2011-02-28 | 2013-10-08 | Apple Inc. | Wire routing using virtual landing pads |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4612618A (en) * | 1983-06-10 | 1986-09-16 | Rca Corporation | Hierarchical, computerized design of integrated circuits |
EP0387812A3 (en) * | 1989-03-14 | 1992-08-05 | Fujitsu Limited | Bipolar integrated circuit having a unit block structure |
JPH09106407A (ja) * | 1995-10-12 | 1997-04-22 | Toshiba Corp | 設計支援装置 |
JP2001024153A (ja) * | 1999-07-06 | 2001-01-26 | Mitsubishi Electric Corp | 集積回路装置におけるセルの配置方法 |
-
2002
- 2002-01-17 JP JP2002008219A patent/JP2003208454A/ja active Pending
-
2003
- 2003-01-16 US US10/346,801 patent/US20030135837A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20030135837A1 (en) | 2003-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8020121B2 (en) | Layout method and layout apparatus for semiconductor integrated circuit | |
US6378115B1 (en) | LSI manufacturing method and recording medium for storing layout software | |
JP3564295B2 (ja) | セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体 | |
US6915500B1 (en) | Method and arrangement for layout and manufacture of nonmanhattan semiconductor integrated circuit using simulated Euclidean wiring | |
JP3390393B2 (ja) | 自動配置配線システムの配線方法および自動配置配線システムの配線方法を記録した記録媒体 | |
US7219326B2 (en) | Physical realization of dynamic logic using parameterized tile partitioning | |
JPH05109890A (ja) | 回路配列組込み方法 | |
JPH10335472A (ja) | レイアウト設計方法およびレイアウト設計装置 | |
JP2006323643A (ja) | 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法 | |
US9213793B1 (en) | Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks | |
JP4676123B2 (ja) | H形木構造クロックレイアウトのシステムと方法 | |
US8250514B1 (en) | Localized routing direction | |
TW202123056A (zh) | 使用帶有金屬線的胞元的電路設計 | |
JP2003208454A (ja) | 半導体集積回路におけるレイアウト設計の自動配置配線方法及び装置並びに自動配置配線プログラム | |
JP2004220132A (ja) | 配線図形検証方法、プログラム及び装置 | |
JPH10173058A (ja) | 配置配線方法 | |
JP7139552B2 (ja) | 半導体集積回路の配線設計装置及び半導体集積回路の配線設計用プログラム | |
JP2004104039A (ja) | 集積回路の自動配置配線設計方法、その自動配置配線設計装置、その自動配置配線設計システム、制御プログラムおよび可読記録媒体 | |
JP3433025B2 (ja) | モジュール配置方法 | |
JP2921454B2 (ja) | 集積回路の配線方法 | |
JP3005530B1 (ja) | 自動配置配線方法 | |
JP3705737B2 (ja) | 半導体集積回路のレイアウト方法 | |
US6584605B1 (en) | Method for forming a relative placement of components of an integrated circuit using a structural similarity group | |
WO1998055950A1 (en) | Integrated circuit layout synthesis tool | |
JP2001351984A (ja) | ダミーパターンのレイアウト決定方法、それを用いた半導体装置およびその製造方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051227 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20060221 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060822 |