JP2010097468A - 配線方法、自動配線装置、及びプログラム - Google Patents

配線方法、自動配線装置、及びプログラム Download PDF

Info

Publication number
JP2010097468A
JP2010097468A JP2008268489A JP2008268489A JP2010097468A JP 2010097468 A JP2010097468 A JP 2010097468A JP 2008268489 A JP2008268489 A JP 2008268489A JP 2008268489 A JP2008268489 A JP 2008268489A JP 2010097468 A JP2010097468 A JP 2010097468A
Authority
JP
Japan
Prior art keywords
wiring
area
rule
cell
divided
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.)
Granted
Application number
JP2008268489A
Other languages
English (en)
Other versions
JP5309878B2 (ja
Inventor
Ikuo Otsuka
育生 大塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008268489A priority Critical patent/JP5309878B2/ja
Priority to US12/579,730 priority patent/US8762910B2/en
Publication of JP2010097468A publication Critical patent/JP2010097468A/ja
Application granted granted Critical
Publication of JP5309878B2 publication Critical patent/JP5309878B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】配線上の単位となる小領域の数の増大を抑えつつ、配線領域を単一の配線ルールが適用される小領域への分割を行い、自動配線を実施するための技術を提供する。
【解決手段】最初に生成された1次Gセル(第1分割領域)1203は、内部にある特殊ルール領域1202の頂点により2次Gセルに分割する(S11〜15)。同じ配線ルールが適用される2次Gセルは、横方向のマージ、続く縦方向のマージにより1つにする(S16〜18)。それにより、単一の配線ルールが適用されるようにしつつ、2次Gセルの数を抑える。マージ終了後の2次Gセルが第2分割領域に相当する。
【選択図】図17

Description

本発明は、配線領域データが示す配線領域に、異なる配線ルールが適用される部分領域を示す配線ルール領域データが複数、存在する場合に配線を行う技術に関する。
半導体集積回路(LSI)や大規模のプリント基板(Printed Circuit Board)では、自動配線により配線経路を決定するのが普通である。近年、半導体集積回路を構成するセルの数、及びプリント基板に搭載する部品の数は共に非常に多くなる傾向にある。このことから、半導体集積回路や大規模なプリント基板の自動配線では、殆どの場合、その自動配線を行う前に、配線を配置する配線領域を一定のルールに従って複数の小領域(ここでは「Gセル(G−cell)」と呼ぶ)に分割することが行われるようになっている(特許文献1)。そのようにGセルに分割することにより、各ネットの配線経路は経由させるGセル、及びその順序を決定する形で設定される。
各Gセルで可能な配線量は有限である。このことから各Gセルでは、自身が収容可能な配線量を示すデータが配線リソースとして計算される。そのリソースとして計算されるデータは、例えば本数、或いはグリッド(GRID)点数である。各Gセルには、そのリソースを越えない範囲内で配線経路が割り当てられる。
周知のようにグリッド点は、配線の基本単位となる点のことである。その点は、直交する2つの方向上、所定のピッチ間隔で配置される線の交点に相当する。配線経路は、2つの方向の何れかに平行に隣り合うグリッド点間の組み合わせとして決定される。リソースとして計算される本数は、例えば方向毎に計算した、配線経路として割当可能なGセル全体に渡る直線(配線トラック)の数である。
特許第3063828号公報 特開昭63−237544号公報 特許第3017214号公報 特開2007−26170号公報
Gセルに分割しての自動配線では、各配線経路が経由するGセルを決定した後、Gセル毎に内部の配線経路を決定する形となる。このため、割り当てられた配線経路を収納可能なだけの配線リソースが存在しないGセルでは、全ての配線経路を決定することができない。このことから、各Gセルのリソースを正確に見積もることが重要となっている。
今日、例えばプリント基板では、高密度、且つ多端子の部品(例えばBGA:Ball Grid Array)の搭載や、クロストーク対策等により、配線ルール、つまり線幅、対物との間隔的余裕であるクリアランス、配線間、或いは配線−ピン間の最小間隔等がプリント配線板平面内の場所に依存して異ならせるケースが増えている。
配線領域内に適用される配線ルールが異なる部分領域が複数、存在する場合、内部に配線ルールが異なる領域が複数、存在するGセルが生じるのが普通である。配線リソースは、適用される配線ルールを用いて計算される。このため、配線ルールの混在はリソースの管理を複雑化させる。その複雑化は、リソースを割り当てる形で行われる自動配線を煩雑化させる。このことが、自動配線をより面倒なものとする。
図29は、Gセルに配線ルールが混在することで生じる問題を説明する図である。図29(a)は配線ルールが混在するGセル例を示し、図29(b)はリソースの管理上、生じる問題点を示している。ここで図29を参照して、Gセルに配線ルールが混在することで生じる問題について具体的に説明する。
図29(a)において、2901はGセル、2902は配線ルールが他と異なる部分領域である。図29(b)の2903は、配線が禁止された部分領域(配線禁止領域)である。ここでは混乱を避けるため、配線ルールは部分領域2902に適用されるもの、配線禁止領域2903に適用されるもの(配線を禁止するという配線ルール)、及びそれら以外の部分に適用されるもの、の3種類のみを想定する。
部分領域2902内に縦横に引いた線は、配線を配置可能な場所を示しており、縦横の線が交わる交点がグリッド点である。部分領域2902以外の部分でも同様に、縦横の線が交わる交点はグリッド点である。縦横に引いた線の間隔は、部分領域2902はそれ以外の部分の1/2と狭くなっている。このことから、部分領域2902に適用される配線ルールは「挟ピッチ領域ルール」、部分領域2902及び配線禁止領域2903以外の部分に適用される配線ルールは「標準ルール」とそれぞれ呼ぶことにする。また図29において、横方向はH方向、縦方向はV方向と呼ぶことにする。
部分領域2902は、例えば多数のピンを備えたBGA等の部品が搭載される領域であり、狭ピッチ領域ルールは、そのような部品を搭載する領域内での配線を可能とするために設定されている。部分領域2902中、搭載された際の部品のピンは2904を付した点で表している。配線禁止領域2903は、例えば予め定めた配線、或いは部品等が配置されることにより確保されたものである。
部分領域2902、及び配線禁止領域2903が存在することにより、VHの各方向上の配線トラック(Gセル2901全体に渡る直線)数は、着目する配線ルールによって変化する。図29(b)中に「○」で示すように、例えばH方向では、挟ピッチ領域ルールを採用すれば配線トラック数は5となり、標準ルールを採用すれば配線トラック数は2となる。同様にV方向では、挟ピッチ領域ルールを採用すれば配線トラック数は3となり、標準ルールを採用すれば配線トラック数は1となる。
このように、配線リソースとして計算される配線トラック数は着目する配線ルールによって変化する。その配線トラック数の相違は、計算される配線リソースが配線ルールによって異なるということの他に、適用される配線ルールが異なる領域間を通る配線は各配線ルールにより制限されることを意味する。その結果、例えば標準ルールと挟ピッチ領域ルールが混在するGセル2901では、図29(b)に示すように、グリッド点間のピッチが異なるため、標準ルールを採用すると部分領域2902の境界を通る配線に使用できないグリッド点が部分領域2902内に生じる。
部分領域2902内で使用できないグリッド点は、狭ピッチ領域ルールを部分領域2902以外に適用することで使用可能となる。しかし、違反となるバイオレーションは、配線ルールによって異なる。このことから、本来、適用すべき配線ルール以外の配線ルールを適用した領域では、不適切な配線を行ってしまう可能性がある。そのような可能性があることもあり、小領域への分割は、単一の配線ルールのみが適用されるように行うことが重要と考えられる。
単一の配線ルールのみを適用させる小領域への分割は、例えば配線ルールが適用される部分領域毎の小領域への分割、或いはより小さい小領域への分割により行うことが可能である。しかし、それらは何れも、大きさがより小さい小領域を多数、発生させるか、その
可能性がある。例えば図29(b)に示す例では、部分領域毎の小領域への分割を行う場合、部分領域2902の周辺に標準ルールが適用される、より小さいGセルを多数、発生させる。配線上の単位となる小領域の数が多くなるほど、自動配線に必要な計算時間は指数関数的に増大するから、これは望ましくない。単一の配線ルールのみが適用されるようにする小領域への分割では、このことも考慮すべきと考えられる。
本発明は、配線上の単位となる小領域の数の増大を抑えつつ、配線領域を単一の配線ルールが適用される小領域への分割を行い、自動配線を実施するための技術を提供することを目的とする。
本発明を適用した1システムでは、配線領域データが示す配線領域を分割して複数の第1分割領域を生成し、配線ルールが適用される部分領域を示す配線ルール領域データが複数、配線領域に存在する場合に、生成した第1分割領域に基づいて、単一の配線ルール領域データが適用される第2分割領域を生成する。
このようにして第1分割領域、更には第2分割領域を生成することにより、最終的に残った第1分割領域および第2分割領域は共に単一の配線ルールが適用される。このため、配線ルールの混在による不適切な配線リソースの見積りや、不適切な配線を行ってしまう可能性が回避される。
第2分割領域は、生成済みの第1分割領域を基に、その第1分割領域を用いて生成する。つまり、第1分割領域を操作する形で生成する。このため、単一の配線ルールが適用されるように配線領域を分割することを考慮しなくとも済む。また、最終的に得られる第1分割領域および第2分割領域の総数も抑えられる。配線領域を分割して複数の第1分割領域を生成し、配線ルールが適用される部分領域を示す配線ルール領域データが複数、配線領域に存在する場合に、生成した第1分割領域に基づいて、単一の配線ルール領域データが適用される第2分割領域を生成する。
このようにして第1分割領域、更には第2分割領域を生成することにより、最終的に残った第1分割領域および第2分割領域は共に単一の配線ルールが適用される。このため、配線ルールの混在による不適切な配線リソースの見積りや、不適切な配線を行ってしまう可能性が回避される。これらの結果、設計者にとって作業が煩雑になるのは回避され、自動配線に要する計算時間が長くなるのは抑制される。
本発明を適用した場合には、配線上の単位となる小領域の数の増大を抑えつつ、配線領域を単一の配線ルールが適用される小領域への分割を行い、自動配線を実施することができる。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図1は、本実施形態による自動配線装置のシステム構成を示す図、図2は、その自動配線装置の構築方法を示す図である。
この自動配線装置は、図1に示すように、コンピュータ10と、そのコンピュータ10がアクセス可能なハードディスク装置、フラッシュメモリ、媒体駆動装置(例えば光ディスク装置)、或いは不図示の通信ネットワークを介して接続された外部装置(例えばデータベース(DB)サーバ)であるデータ記憶装置20と、を備えた構成となっている。この自動配線装置は、図2に示すように、例えば後述する機能を搭載したコンピュータプロ
グラム31を記録した記録媒体30から媒体読取装置40を介して読み出してコンピュータ10が実行することにより実現される。このプログラム(以降「自動配線プログラム」と呼ぶ)31は、通信ネットワーク、或いはハードディスク装置等の記憶装置により配布しても良い。
自動配線装置は、レイアウト設計によりセルの配置が決定したチップ、或いは部品の配置が決定したプリント基板を対象に自動配線を行う。自動配線を行う方法は、対象によって大きく異ならないことから、ここでは便宜的に、対象としてはプリント基板のみを想定する。
自動配線装置を構成するコンピュータ10は、特には図示しないが、例えば一つ以上のCPU、半導体メモリ、外部記憶装置、媒体読取装置40にアクセスするためのインターフェース、データ記憶装置20にアクセスするためのインターフェース、及び通信ネットワークを介した通信を行う通信制御装置を備えたものである。記録媒体30、或いは外部記憶装置に記録された自動配線プログラム31は、最終的に半導体メモリに読み出され、CPUにより実行される。その自動配線プログラム31をCPUが実行することにより、自動配線装置が実現される。図1中に表記のGセル(G−cell)生成部11、Gセルリソース計算部12、経路決定部15、及び部品付属領域リソース計算部16は、CPUが自動配線プログラム31を実行することにより実現される構成要素である。
図28は、本発明が適用可能なコンピュータシステムを示す斜視図である。ここで図28を参照して、この自動配線装置を実現可能なコンピュータシステムについて具体的に説明する。
図28に示すコンピュータシステム100は、CPUや半導体メモリ、媒体駆動装置106及び外部記憶装置等を内蔵した本体部101、本体部101からの指示により画像を表示するディスプレイ102、コンピュータシステム100に種々の情報を入力するためのキーボード103、ディスプレイ102の表示画面102a上の任意の位置を指定するマウス104、及び通信ネットワークを介して外部のデータベース等にアクセスし、他のコンピュータシステムに記憶されているプログラム等をダウンロード可能な通信装置105を有する。通信装置105は、例えばネットワーク通信カード、或いはモデムなどである。ディスク110等の可搬型記録媒体から媒体駆動装置106により読み出されるか、或いは通信装置105を使って他のコンピュータシステムの記録媒体120からダウンロードされる、コンピュータシステム100に少なくともCAD機能を実現させるプログラム(CADソフトウェア)は、例えばコンピュータシステム100に入力されてコンパイルされる。自動配線プログラム31は、そのプログラムの一つ、或いはそのプログラムを構成する一部として入力される。
コンパイルされたプログラムは、本体部101に搭載されたCPUによって実行される。そのプログラムの実行によって、半導体集積回路やプリント基板の設計を支援する設計支援機能を有する設計支援システムとしてコンピュータシステム100は動作する。プログラムは、例えばディスク110等のコンピュータ読み取り可能な記録媒体に格納されていても良い。コンピュータ読み取り可能な記録媒体は、ディスク110、ICカードメモリ、フロッピー(登録商標)ディスク等の磁気ディスク、光磁気ディスク、CD−ROM等の可搬型記録媒体に限定されるものではなく、通信装置105や他の通信装置を介して接続されるコンピュータシステムでアクセス可能な各種記録媒体を含む。自動配線プログラム31を含むプログラムは、コンパイル後のものであっても良い。
図2に示す構築方法を図28に示すコンピュータシステム100に適用する場合、ディスク100は自動配線プログラム31が格納されている記録媒体30に、媒体読取装置4
0は媒体駆動装置106にそれぞれ相当する。コンピュータ10は、例えばコンピュータシステム100が相当する。データ記録装置20は、例えば本体部101に搭載された外部記憶装置が相当する。これらの対応関係は一例であり、システム構成によって対応関係は変化する。
図1の説明に戻る。
Gセル生成部11は、データ記憶装置20からデータ群D10を入力し、配線領域をGセルに分割する。その分割結果はGセル情報としてGセルリソース計算部12に出力する。
データ群D10には、配線領域情報D11、Gセル生成ルール情報D12、部品配置情報D13、部品情報D14、ピン情報D15、配線禁止情報D16、配線ルール情報D17、特殊ルール領域情報D18、ネット情報D19、及び線分情報D20が含まれている。各情報D11〜D19、及びGセル情報は、それぞれ以下のようなものである。図3〜図14を参照して具体的に説明する。
配線領域情報D11は、自動配線の対象となる範囲を示すものである。その形状は矩形としていることから、その範囲は対向する2つの頂点で管理している。2つの頂点の座標は一方を開始座標、他方を終了座標としている。座標はXY座標を採用している。
Gセル生成ルール情報D12は、配線領域をGセルに分割するルールを定義したものである。そのルールは、XY軸上のGセルの幅を少なくとも含むものである。
部品配置情報D13は、配線領域に配置される部品毎に、その位置を示すものである。
図3は、配線禁止領域情報D16のデータ構成を説明する図である。この配線禁止領域情報D16は、配線領域情報D11が示す配線領域内で配線を禁止する配線禁止領域の範囲を配線禁止領域毎に表したものである。各配線禁止領域には識別用のIDが割り当てられている。このことから配線禁止領域情報D16は、ID、開始座標、終了座標、及び層の各項目のデータを備えた構成となっている。
配線禁止領域は、矩形形状としている。このことから開始座標、及び終了座標は、XY平面上、対向する2つの頂点の座標としている。それにより例えば配線禁止領域IDが0の配線禁止領域では、その範囲はXY座標値が共に0〜20の部分であることを表している。配線禁止領域以外の領域の範囲も矩形形状とすることにより、その範囲は開始座標、及び終了座標で表している。ここではX軸に平行な方向をH方向、Y軸に平行な方向をV方向と呼ぶことにする。
図12は、配線領域内に設定された部分領域の例を示す図である。
配線領域内には、配線禁止領域の他に、通常の配線ルール(以降「標準ルール」)とは異なる配線ルール(以降「特殊ルール」と総称)が適用される部分領域が設定可能となっている。図12中に表記の1201は配線禁止領域、1202は特殊ルールが適用される部分領域(以降「特殊ルール領域」)である。図12中、左下に位置する配線禁止領域1201は、第1層の場合、配線禁止領域IDが0の配線禁止領域に相当する。
図4は、特殊ルール領域情報D18のデータ構成を説明する図である。この領域情報D18は、特殊ルールが適用される領域の範囲、その領域に配置される部品、及び配線リソースを管理するためのものである。そのために、特殊ルール領域の識別用のID(特殊ルール領域ID)、適用される配線ルール(特殊ルール)を示すID(配線ルールID)、開始座標、終了座標、層、配置される部品のID(部品ID)、空き配線トラック数、及び空きグリッド数の各項目のデータを備えた構成となっている。図4中の「nil」は、未定義であることを表している。これは他の図でも同じである。
図5は、ピン情報D15のデータ構成を説明する図である。このピン情報D15は、部品等のピン毎に、そのピンの形状や位置等の詳細を示すものである。図5に示すように、ピン識別用のID(ピンID)、ピンの中心座標、ピンの形、ピンが存在する層、X方向の寸法、Y方向の寸法、及び未結線か否かを示す孤立情報、の各項目のデータを備えた構成となっている。ピンの形は、形毎に割り当てた数値で表すようになっており、例えば円には0、矩形には1がそれぞれ割り当てられている。層は、ピンが存在する範囲を2つの数値で表すようになっている。それにより例えば「(1,6)」は、第1層から第6層までピンが存在していることを示している。孤立情報では、孤立(未結線)は1、結線は0でそれぞれ表すようになっている。半導体部品と接続、つまり導通するピンが導通部に相当する。
図6は、配線ルール情報D17のデータ構成を説明する図である。この配線ルール情報D17は、配線ルール毎に、配線が満たすべき条件を定義したものである。図6に示すように、配線ルールID、適用される層、配線幅、満たすべき最小の間隙(クリアランス)の各項目のデータを備えた構成となっている。間隙は、隣り合う物の組み合わせ毎に定義している。図6には、その組み合わせとして、ピンと配線、配線と配線の2つを示している。
図14は、部分領域に適用される配線ルールの相違を説明する図である。図14に示す部分領域1202a及び1202bの詳細で縦横に延びる線は、配線経路として選択可能な部分を示している。このことから、縦横の線が交差する交点がグリッド点に相当する。部分領域1202a及び1202bでそれぞれ示すW1及びW0は、配線(ワイヤ)幅と配線間の間隙を加算したピッチを表している。
図7は、ネット情報D19のデータ構成を説明する図である。このネット情報D19は、自動配線の対象となる配線識別用のネットID、適用すべき配線ルールID、通してはいけない領域の配線ルールID、配線が結ぶピンの間を示すピンID、配線を構成する部分である線分を示す線分ID、線分IDが示す線分のなかで違反、或いは未配線となっているものの数を示す違反・未配線数、の各項目のデータを備えた構成となっている。通してはいけない領域の配線ルールは以降「許容外配線ルール」と呼ぶことにする。
図6に示すように、例えば配線ルールIDが0と1の配線ルールでは、間隙(クリアランス)が異なっている。このため、IDが0の配線ルールを適用させた配線は、IDが1の配線ルールを適用される領域を通すとバイオレーション(違反)となる可能性がある。このようなことから許容外配線ルールを定義している。許容外配線ルールの定義は、最終的に各Gセルには単一の配線ルールのみを適用させることにより可能となっている。
図13は、配線を決定する2つのGセル間に存在する特殊ルール領域により決定される配線経路の例を示す図である。2つのGセルはGセル1203S及び1203Tであり、その間には部分領域1202が存在している。Gセル1203S及び1203Tを接続する配線経路は図13中、点線で表している。1203に付した「S」は配線経路の始点、1203に付した「T」は配線経路の終点を表している。このことから、単にGセルを指す場合には符号として「1203」を用いる。
部分領域1202に許容外配線ルールが適用されていない場合、図13(a)に示すように、Gセル1203S及び1203T間の配線経路は部分領域1202を通るように決定されるのが普通である。しかし、部分領域1202に許容外配線ルールが適用されている場合には、図13(b)に示すように、Gセル1203S及び1203T間の配線経路
は部分領域1202を避ける形で決定される。
図8は、線分情報D20のデータ構成を説明する図である。ピン間を接続する配線は、複数層を通ることがある。そのような配線は、層毎に配線経路が決定される。この線分情報D20は、配線経路をそのような層別に分けた部分(線分)で管理するための情報である。図8に示すように、線分識別用の線分ID、対応する配線経路のネットID、層、線分の始点、及び線分の終点の各項目のデータを備えた構成となっている。
図9は、部品情報D14のデータ構成を説明する図である。この部品情報D14は、部品毎に配線に係わる情報をまとめたものである。図9に示すように、部品ID、HVの各方向上のピン数、HVの各方向上に並ぶピンの間隔、及びHVの各方向上のピンサイズの各項目のデータを備えた構成となっている。
図10は、Gセル情報D1のデータ構成を説明する図である。このGセル情報D14は、Gセル1203毎に、その範囲や配線に係わる情報をまとめたものである。図10に示すように、Gセル1203識別用のID、領域を示す開始座標、及び終了座標、層、特殊ルール領域ID、配線リソースとして見積もったH方向、及びV方向の配線トラック数、配線リソースとして見積もったグリッド数、消費済みリソースグリッド数、ラベル伝搬元のGセルID、ラベル値、当該Gセル1203が配線経路を探索するうえでソース(S)及びターゲット(T)の何れであるかを示すフラグ(flag)、当該Gセル1203の4辺毎の消費済み配線トラック数(グリッド数)を備えた構成となっている。
消費済みリソースグリッド数、消費済み配線トラック数、ラベル伝搬元のGセルID、ラベル値、及びフラグは、経路決定部15によって更新される。
図11は、各情報D1、及びD14〜D20間の関係を説明する図である。図11に示すように、各情報D1、及びD14〜D20には、配線禁止情報D16を除き、他の情報を参照可能とする項目データが存在する。このため図11に示すように、或る情報から他の情報を順次、参照することができるようになっている。
Gセル生成部11は、Gセル生成ルール情報D12を参照し、配線領域1200をGセルに分割する。しかし、その分割では、配線領域1200に特殊ルール領域が存在する場合、配線ルールが混在するGセル1203が生成される可能性がある。このことから、配線ルールが混在するGセル1203は、配線ルールが適用される領域の境界により複数の小領域に分割し、予め定めた条件を満たす、同じ配線ルールが適用される小領域をマージするようにしている。そのようにして、単一の配線ルールが適用されるように配線領域1200を小領域に分割しつつ、小領域の数が増大するのを抑えるようにしている。ここでは原義的に、Gセル生成ルール情報D12が示す生成ルールに従って生成するGセルを「1次Gセル」、その1次Gセルを分割することで生成するGセルの1部分を「2次Gセル」とそれぞれ呼ぶことにする。
このGセル生成部11を実現させるために実行される処理について、図15〜図17、図21及び図22を参照して詳細に説明する。
図21は、Gセル生成部11を実現させるGセル生成処理のフローチャートである。図21を参照して、そのGセル生成処理について詳細に説明する。
先ず、ステップS1では、Gセル生成ルール情報D12が示すGセル生成ルールに従い、配線領域1200に1次Gセルの境界線を発生し、その境界線で区切られる矩形を1次Gセルとする。それにより、1次セルはGセル生成ルールが示すX、Y方向の標準寸法(幅)の矩形として生成される。
ステップS1に続くステップS2では、1次セルのなかで特殊ルール領域に包含されるものの配線ルールIDとして、その特殊ルール領域に適用される特殊ルールの配線ルールIDを採用(転写)する。その後、ステップS3に移行する。
図15は、1次セルの生成方法、及び1次セルのなかで単一の特殊ルールが適用される1次セルを説明する図である。
図15において、縦横に引いた線は境界線を示している。それにより、図15(a)に示すように1次Gセル1203が生成される。
特殊ルール領域1202内には、図15(b)に示すように、全てが包含される1次Gセル1203が存在する。その1次Gセル1203は、単一の特殊ルールが適用されるGセル1203として扱われ、2次Gセルへの分割対象から除外される。
1次Gセル1203を包含する特殊ルール領域1202、及び他の特殊ルール領域1202では、1次Gセル1203に配線ルールを混在させる形となっている。このことからステップS3では、そのように配線ルールが混在する1次Gセル1203を2次Gセルに分割し、マージすべき2次Gセルをマージするマージ処理を実行する。その実行後は、ステップS4に移行して、2次Gセルに分割していない1次Gセル1203、2次Gセル、及びマージした2次GセルをGセル情報D1に登録する。その登録を行った後、このGセル生成処理を終了する。
図16は、2次Gセルへの分割方法、及び2次Gセルのマージ方法を説明する図である。図16(a)は、その分割方法、図16(b)はそのマージ方法を示している。
図16(a)に示すように、2次Gセルへの分割は、特殊ルール領域1202の頂点のなかで1次Gセルの頂点と座標が一致していないものを抽出し、抽出した頂点を通る縦横の線をステップS1で生成した境界線と接するまで引くことで行う。図15から追加された線は、抽出した頂点により生成されたものである。図16(a)では、特殊ルール領域1202の頂点は点で示している。抽出した頂点を通る縦横の線のなかで境界線と一致するものは無視される。
抽出した頂点を通る縦横の線により、1次Gセル1203cは4つの2次Gセルに分割される。その1次Gセル1203cでは、先ず、横(H)方向上で隣り合い、且つ同じ配線ルールが適用されるという条件を満たす2次Gセルをマージして一つにする。このマージにより図16(b)に示すように、1次Gセル1203cには2つの2次Gセルが存在することになる。
次に、縦(V)方向上で隣り合い、且つ同じ配線ルールが適用されるという条件を満たす2次Gセルをマージして一つにする。このとき、1次Gセル1203cに存在する2つの2次Gセルは適用される配線ルールが異なっている。このため、2つの2次Gセルのマージは行われない。
図22は、上記ステップS3として実行されるマージ処理のフローチャートである。ここで図22及び図17を参照して、そのマージ処理について更に詳細に説明する。その図17は、マージ処理の主要なステップで実行される処理内容を説明する図である。対応するステップの処理は符号で示してある。
先ず、ステップS11では、1次Gセル1203のなかで未処理のものを1つ選択する。続くステップS12では、選択した1次Gセル1203内に存在する、特殊ルール領域の頂点を抽出してその座標を記憶する。このとき、上記したように、1次Gセル1203の頂点と座標が一致するものは抽出の対象から除外する。その後はステップS13に移行する。
ステップS13では、選択した1次Gセル1203内に抽出すべき特殊ルール領域の頂点があったか否か判定する。抽出すべき頂点が存在しなかった場合、判定はNOとなって上記ステップS11に戻る。抽出すべき頂点が存在した場合、判定はYESとなってステップS14に移行する。
ステップS14では、抽出した頂点を通る縦横の線(2次分割線)を発生させる。次に移行するステップS15では、1次Gセル1203の境界線(辺)と2次分割線によりその1次Gセル1203を複数の2次Gセルに分割する。その次に移行するステップS16では、2次Gセルのなかで特殊ルール領域に包含されるものにそのIDを転写(設定)する。その転写により、各2次Gセルに適用される特殊ルールを判別可能とさせる。図17に示す例では、特殊ルール領域IDが転写された2次Gセルは1〜9の数字で示している。その転写を行った後はステップS17に移行する。
ステップS17では、横(H)方向上で隣り合い、且つ特殊ルール領域IDが同じという条件を満たす2次Gセルをマージして一つにする。次のステップS18では、縦(V)方向上で隣り合い、且つ特殊ルール領域IDが同じという条件を満たす2次Gセルをマージして一つにする。
そのマージにより、図17に示す例では、2次Gセルは1〜9の数字で示す計9つとなっている。このことから、2次Gセルのマージにより、Gセルの増加を大幅に抑制していることがわかる。
マージは、図17に示すように、同じ幅の2次Gセルで行う。その幅は、1次Gセル1203、特殊ルール領域1202の形状が共に矩形であることから、特殊ルール領域1202内の2次Gセルでは縦横ともに一致する。この結果、隣接する2次Gセルは1つにマージされることとなる。
ステップS18の処理を実行することにより、配線ルールが混在する1つの1次Gセル1203への操作が終了し、その操作によって最終的に得られた2次Gセルは全て1つのGセル1203としてGセル情報D1に登録される。
1つの1次Gセル1203の操作が終了しても、他に操作すべき1次Gセルが存在している可能性がある。このことから図22には特には図示していないが、ステップS18の処理を終了した後、未処理の1次Gセル1203が存在するか否かの判定を行うことにより、未処理の1次Gセル1203が存在していればステップS11に戻り、未処理の1次Gセルが存在していなければ、ここでマージ処理を終了するようになっている。このようなことから図22に示すマージ処理は、配線ルールが混在する1つの1次Gセルに対して実行される処理に着目したものとなっている。
Gセル生成部11を実現させるために、上述した処理がコンピュータ10で実行される。その実行結果はGセルリソース計算部12に渡される。
Gセルリソース計算部12は、Gセルリソース計算部A13、及びGセルリソース計算部B14を備えた構成である。Gセルリソース計算部B14は部品との関係から特殊ルールが適用されているGセル1203を対象に配線リソースを計算し、Gセルリソース計算部A13はそのような関係を考慮せずに配線ルールが適用されているGセル1203を対象に配線リソースを計算する。Gセルリソース計算部A13、及びGセルリソース計算部B14はそれぞれ、以下の処理を実行することで実現される。図23及び図24を参照して、詳細に説明する。
部品との関係から特殊ルールが適用されたか否かは、例えば特殊ルール領域情報D18に、部品IDとして0以外の値が格納されているか否かにより判定するようにしている。これは、0以外の値は何らかの部品が搭載されることを示しており、その部品の搭載によって特殊ルールが適用された可能性が考えられるからである。
図23は、Gセルリソース計算部A13を実現するために実行されるGセルリソース計算A処理のフローチャートである。始めに図23を参照して、その計算A処理について詳細に説明する。その図23には、1つのGセル1203の配線リソースを計算するために実行する処理を抜粋して示している。
先ず、ステップS21では、未処理の1つのGセル1203を選択し、選択したGセル1203に適用された配線ルールのIDから、配線ルール情報D17を参照して配線幅と間隙(配線間と配線:ピン間の少なくとも2つが存在)を取得する。次のステップS22では、配線幅と配線間間隙から配線1本当たりの占有幅を計算し、その占有幅でGセル1203内の配線トラック(縦横の線)とグリッド点を生成する。その生成後はステップS23に移行して、グリッド点のうち、Gセル1203内に存在するピン、或いは配線禁止領域が占有する範囲内にないものの数を計算してGセル情報D1に記録する。ステップS24にはその後に移行する。
ステップS24では、横(H)方向の配線トラックのうち、Gセル1203内に存在するピン、或いは配線禁止領域が占有する範囲と交差しないものの数を計算してGセル情報D1に記録する。続くステップS25では、縦(V)方向の配線トラックのうち、Gセル1203内に存在するピン、或いは配線禁止領域が占有する範囲と交差しないものの数を計算してGセル情報D1に記録する。その記録により、1Gセル1203への処理が終了し、他に未処理のGセル1203が存在していれば、ステップS21に戻る。他に未処理のGセル1203が存在していなければ、ここでGセルリソース計算A処理を終了する。
図14に示す特殊ルール領域1202a及び1202bをそれぞれ標準ルールが適用されるGセル1203と見なす場合、特殊ルール領域1202aでは、ピン、及び配線禁止領域が存在していないことから、縦横(HV)方向共に、配線トラック数は3と計算され、グリッド数は9と計算されることになる。特殊ルール領域1202bでは、ピン、及び配線禁止領域が存在していないことから、縦横方向共に、配線トラック数は4と計算され、グリッド数は16と計算されることになる。
Gセルリソース計算部B14は、部品との関係から特殊ルールが適用されるGセル1203を対象に配線リソースを計算する。その計算は、部品付属領域のリソース計算部16から渡される、特殊ルール領域1202の配線リソースを用いて行う。このことからGセルリソース計算部B14の実現のために実行される処理を説明する前に、このリソース計算部16を実現させるために実行される部品付属領域のリソース計算処理について、図27に示すそのフローチャートを参照して詳細に説明する。その図27には、1つの特殊ルール領域1202の配線リソースを計算するために実行する処理を抜粋して示している。リソース計算部16は、部品情報D14、ピン情報D15、配線ルール情報D17及び特殊ルール領域情報D18を含むデータ群D30を参照して、配線リソースの計算を行う。
先ず、ステップS71では、特殊ルール領域情報D18を参照し、部品情報D14を参照しているもの、つまり部品IDとして0以外の値が格納されている特殊ルール領域1202を一つ選択する。続くステップS72では、部品IDが割り当てられた部品のピン間隔(ピン間距離)、ピンサイズ、及び配線ルールIDが割り当てられた配線ルールにより、ピン間の配線通過可能な本数を計算する。その後はステップS73に移行する。
ステップS73では、特殊ルール領域1202内のH方向、V方向で配線を収容可能な配線トラック数を計算し、その計算結果を空き配線トラック数として特殊ルール領域情報D18に格納する。次のステップS74では、特殊ルール領域1202内で未使用のグリッド点の数を計算し、その計算結果を特殊ルール領域情報D18に格納する。その格納により、1特殊ルール領域1202への処理が終了し、他に未処理の特殊ルール領域1202が存在していれば、ステップS71に戻る。他に未処理の特殊ルール領域1202が存在していなければ、ここで部品付属領域のリソース計算処理を終了する。このようなことから、部品付属領域のリソース計算部16の計算結果は、特殊ルール領域情報D18としてGセルリソース計算部B14に渡される。
図24は、Gセルリソース計算部B14を実現するために実行されるGセルリソース計算B処理のフローチャートである。次に図24を参照して、その計算B処理について詳細に説明する。その図24には、1つの特殊ルール領域1202に包含されるGセル1203の配線リソースを計算するために実行する処理を抜粋して示している。
先ず、ステップS31では、特殊ルール領域情報D18を参照して、未処理の特殊ルール領域1202を1つ選択し、選択した特殊ルール領域1202で配線リソースとして格納されているH方向の空き配線トラック数、V方向の空き配線トラック数、空きグリッド数、更には開始座標、及び終了座標(図中「H方向寸法、V方向寸法」と表記)を取得し、開始座標、及び終了座標が示す特殊ルール領域1202内に包含されるGセル1203を特定する。その後はステップS32に移行する。
ステップS32では、特殊ルール領域1202の配線トラック数を、特定した各Gセル1203のH方向、及びV方向の寸法に応じて比例配分し、その結果をGセル情報D1に格納する。次のステップS33では、特殊ルール領域1202の空きグリッド数を、特定した各Gセル1203の面積に応じて比例配分し、その結果をGセル情報D1に格納する。その格納により、1特殊ルール領域1202への処理が終了し、他に未処理の対象となる特殊ルール領域1202が存在していれば、ステップS31に戻る。他に未処理の対象となる特殊ルール領域1202が存在していなければ、ここでGセルリソース計算B処理を終了する。
図18は、特殊ルール領域1202の配線リソースの各Gセル1203への配分方法を説明する図である。図18において、H方向、及びV方向に延びる線は配線トラックを示し、1801を付した丸はピンを示している。図18の上側に示すような特殊ルール領域1202では、H方向、V方向ともに、空き配線トラック数は4、空きグリッド数は40と計算される。
この特殊ルール領域1202に4つのGセルGc1〜4が包含され、各GセルGc1〜4のH方向上の寸法(幅)は、図中、点線で示す線で分割される矩形の数で表現すると、GセルGc1及びGc3では11、GセルGc2及びGc4では5となる。同様にV方向の寸法は、GセルGc1及びGc2では11、GセルGc3及びGc4では5となる。GセルGc1〜4の各面積は、それらH方向、及びV方向の寸法を乗算して得られるものとなる。
このことから、比例配分されるH方向の配線トラック数は、GセルGc1及びGc2では3、GセルGc3及びGc4では1となる。V方向の配線トラック数は、GセルGc1及びGc3では3、GセルGc2及びGc4では1となる。グリッド数は、GセルGc1では22、GセルGc2では6、GセルGc3では10、GセルGc4では2となる。消費される配線リソースは、H方向の1本の配線トラックに配置された配線では、GセルG
c1及びGc3は3グリッド、GセルGc2及びGc4は1グリッドとなる。V方向の1本の配線トラックに配置された配線では、GセルGc1及びGc2は3グリッド、GセルGc3及びGc4は1グリッドとなる。H方向から入ってV方向、或いはV方向から入ってH方向にぬける配線では、GセルGc1は6グリッド、GセルGc2及びGc3は4グリッド、GセルGc4は2グリッドとなる。この消費グリッド数は、ピン1801の存在を考慮して計算したものである。
このようにして、Gセルリソース計算部12により、各Gセル1203の配線リソースが計算され、その計算結果がGセル情報D1に格納される。経路決定部15は、その配線リソースの範囲内に、ネット情報D19に登録された配線の経路をGセル1203単位で決定する。
ところで、ピン等の配線の障害物が存在する領域では、配線トラックと障害物との間の位置関係によって、配線リソースが変化する場合がある。このことについて、図19を参照して具体的に説明する。その図19は、配線トラックと障害物であるピンとの間の位置関係によって変化する配線リソースを説明する図である。
図19(a)は、ピン1801と配線トラックの位置関係が最適なケースを示し、図19(b)はその位置関係が最適でないケースを示している。図19(a)及び(b)において、縦と横の線は配線トラックを示している。ピン1801の断面形状は矩形である。
図19(a)に示す最適なケースでは、グリッド数は12となるのに対し、図19(b)に示す最適でないケースではグリッド数は7となる。H方向、及びV方向の空き配線トラック数は、図19(a)に示す最適なケースでは共に2となるのに対し、図19(b)に示す最適でないケースでは共に1となる。このように位置関係によって配線リソースが変化することから本実施形態では、ピン(障害物)1801間の間隔、ピンサイズ、及び配線ルールを参照して、その位置関係を調整することにより、配線リソースが最大となるようにしている。
図20は、障害物間に通すことが可能な配線の最大数の算出方法を説明する図である。障害物としてはピン2001を想定している。
隣り合うピン2001間のピン間隔をD、ピン2001の半径をr、ピン2001と配線間の間隙(クリアランス)をCp、配線幅を2w、配線間の間隙(クリアランス)をClとすると、ピン2001間で配線用に残された距離Lは
L=D−2(r+Cp)
により算出される。このとき、L≧2wの関係が成立していれば配線は少なくとも1つ配置することができ、(L−2w)/(2w+Cl)≧1の関係が成立すれば配線は2つ以上、配置することができる。このことから、最大、配置可能な配線数tは
t=1+floor((L−2w)/(2w+Cl))
により算出される。floorは、()内の数値で最大となる整数値を求める演算子を表している。
部品(BGA等)のピン配列がh×vと想定した場合、その部品が配置される領域で見積もられる空き配線トラック数は、H方向のものをTh、V方向のものをTvとすると
Th=t(h−1)
Tv=t(v−1)
により求めることができる。空きグリッド数Gは
G=(Th+h)(Tv+v)−hv
により求めることができる。
コンピュータ10は、この経路決定部15を実現するために図25及び図26にフローチャートを示す処理を実行する。図25及び図26を参照して、経路決定部15を実現するために実行される処理について詳細に説明する。
図25は、経路決定部15を実現させる経路決定処理のフローチャートである。始めに図25を参照して、その経路決定処理について詳細に説明する。図25には、1つの配線の経路を決定するために実行する処理を抜粋して示している。
Gセル1203単位での配線経路の決定では、配線経路を順次、決定していくことになる。このため、最初から他の配線経路を考慮した決定を行うことはできない。このことから、配線経路の決定を繰り返し行い、前に行った決定を次の決定に反映させることにより、最終的に適切な配線経路を決定するようになっている。
先ず、ステップS41では、ネット情報D19に登録されている順序に従って、配線対象とする配線(ネット)を1つ選択する。次のステップS42では、現在対象にしている配線は今回以前に持つ決定結果(既存経路)を持つなら一旦、棄却し、その棄却に合わせて、その既存経路に含まれるGセル1203のGセル情報D1中の消費済みリソースグリッド数、及びピン情報D15中のその既存経路によって接続されるピンの孤立情報を更新する。その後、ステップS43に移行する。既存経路を持っていなければ、このような更新を行うことなく、ステップS43に移行する。
ステップS43では、棄却した既存経路の代わりとする配線経路を探索する概略経路探索処理を実行する。続くステップS44では、その探索によって得られた結果を、ネット情報D19、線分情報D20に格納する。その次のステップS45では、探索結果である配線経路に含まれるGセル1203のGセル情報D1中の消費済みリソースグリッド数を更新する。その更新を行った後はステップS46に移行する。
ステップS46では、ネット情報D19に登録された配線の経路を一通り決定したか否か判定する。他に経路を決定すべき配線が残っている場合、判定はNOとなって上記ステップS41に戻り、次に対象とする配線を1つ選択する。他に経路を決定すべき配線が残っていない場合には、判定はYESとなってステップS47に移行する。
ステップS47では、一通り配線経路を決定した回数である再配線回数の記録をインクリメントする。次のステップS48では、インクリメント後の再配線回数が所定値に達したか否か判定する。その再配線回数が所定値と一致した場合、判定はYESとなり、ここで経路決定処理を終了する。再配線回数が所定値未満であった場合には、判定はNOとなり、ステップS49で次に対象とする配線をネット情報D19の先頭に登録されているものとした後、上記ステップS42に移行する。
図26は、上記ステップS43として実行される概略経路探索処理のフローチャートである。次に図26を参照して、概略経路探索処理について詳細に説明する。この概略経路探索処理は、上述したように、図25のステップS41で選択した配線の経路を探索により決定するために実行される。
先ず、ステップS61では、上記ステップS41で選択した配線が結ぶピンのなかの一つが配置されるGセル1203をソース(S)、それ以外のピンが配置されるGセル1203、及びそれ以外のピンが配置されるGセル1203までの仮決定した配線経路(図中「同ネット仮決定経路」と表記)が通るGセル1203をターゲット(T)とする。SとしたGセル1203のラベル値は初期値の0とし、TとしたGセル1203のラベル値は初期値として設定可能な最大値(図中「∞」と表記)とする。SとしたGセル1203はそのIDを例えば半導体メモリ上に確保した作業領域であるラベルフロントに登録する。これらのことを行った後、ステップS62に移行する。ここでは、配線が結ぶピンが配置されたGセル1203と配線経路が通るGセル1203とを区別するために、そのピンが配置されたGセル1203のTは「最終T」と呼ぶことにする。S或いはTの設定、ラベル値の設定はGセル情報D1を対象に行う。
ステップS62では、ラベルフロントに登録したSのGセル1203毎に、そのGセル1203から一つずつGセル1203を伝搬させていくことにより最終TのGセル1203に至る経路の探索を行う。
その探索では、伝搬元となるGセル1203の伝搬先とするGセル1203にラベリング、つまり伝搬先Gセル1203のラベル値の更新を必要に応じて行う。これは以下のような理由からである。
SとするGセル1203から最終TとするGセル1203までの配線経路として考えられるものが複数、存在するのが普通である。探索は、SとするGセル1203から最終TとするGセル1203まで1つずつGセル1203を伝搬させていくことにより、考えられる配線経路の全てを対象にする形で行う。ラベリングは、伝搬元Gセル1203のラベル値に所定値を加算した値を伝搬先Gセル1203のラベル値とする形で行う。このため、前に伝搬していることがある伝搬先Gセル1203では既に最大値以外のラベル値が設定されている。ラベル値はその値が大きくなるほど、配線経路が長くなることを示している。配線経路はより短いほうが望ましい。このようなことから、伝搬先Gセル1203に既に更新されたラベル値がラベリングによる値より小さければ、その伝搬先Gセル1203までの経路としてより短い経路が探し出せていることになる。より長くなる経路を探索する必要はない。伝搬先Gセル1203のラベル値の更新を必要に応じて行うのはこのようなことからである。それにより、不要な探索はそれが判明した時点で終了するようにしている。その結果、Gセル情報D1のラベル値としては最小値が格納され、伝搬元GセルIDとしては最小値のラベル値が得られたGセル1203のIDが格納される。
伝搬先Gセル1203に必要な配線リソースが残っていない場合がある。その場合、ラベリングでは、その伝搬先Gセル1203を通る配線経路を抽出しないように、予め定めた値(ペナルティ値)を加算するようにしている。
また、ネット情報D19には、配線を通してはいけない許容外配線ルールが必要に応じて格納されている。このことから伝搬は、対象としている配線にとって配線ルール上、通してはいけないことになっているGセル1203を除外して行う。それにより、図13に示すような配線経路の決定が実現される。
伝搬先Gセル1203が最終TとするGセル1203であった場合、既にラベル値が更新されていればそのラベル値を今回のラベリングによるラベル値と比較し、ラベリングによるラベル値のほうが小さことを条件に、ラベリングによるラベル値を保存することにより更新する。ラベル値が未更新であれば、ラベリングによるラベル値を保存し、最終TのGセル1203をラベルフロントに登録する。
ステップS62では、上述したようなことを行い、最終TとするGセル1203毎に、SとするGセル1203から最終TとするGセル1203までの経路のなかでラベル値が最小となる経路を抽出する。その抽出を行った後にステップS63に移行する。
ステップS63では、最終TとするGセル1203毎に、そのGセル1203から伝搬元Gセル1203を順次バックトレースして、最小レベル値で到達した経路線分を作成し
、それを仮決定経路(概略経路)として概略経路情報D40に追加する。ラベリングによる探索で使用した伝搬元情報とラベル値は初期化し、仮決定経路を作成したピンのピン情報D15中の孤立情報を更新して0にする。そのようなことを行った後、ステップS64に移行する。ここで伝搬元情報とラベル値は、探索した経路毎に有する、その経路を通るGセル1203のID群、及び各Gセル1203のラベル値のことである。概略経路情報D40に追加(登録)される仮決定経路は、バックトレースによって得られたGセル1203のIDの順序を含む組み合わせである。この仮決定経路の他に、その仮決定経路により接続されるピンのID等も併せて概略経路情報D40に登録される。
ステップS64では、図25のステップS41で選択した配線が結ぶピンのなかで仮決定経路が作成されていないピンがあるか否か判定する。ラベルフロントに登録したSのGセル1203、或いは最終TとするGセル1203のなかで仮決定経路がないものが存在する場合、判定はYESとなって上記ステップS61に戻り、決定すべき仮決定経路を探索するための初期設定を行う。それらのなかで仮決定経路がないものが存在しない場合には、判定はNOとなり、ここで概略経路探索処理を終了する。
なお、本実施形態では、2次Gセルを含むGセルは全て矩形とすることにより、隣接するGセル間の対応関係の特定を容易としているが、矩形以外の形状としても良い。このこともあり、単一の配線ルールが適用される領域の生成方法自体は特に限定されるものではない。また、自動配線装置は、専用の装置として説明しているが、自動レイアウト処理を実行する自動レイアウト装置等に搭載させる形で実現させても良い。
本実施形態による自動配線装置のシステム構成を示す図である。 本実施形態による自動配線装置の構築方法を示す図である。 配線禁止領域情報D16のデータ構成を説明する図である。 特殊ルール領域情報D18のデータ構成を説明する図である。 ピン情報D15のデータ構成を説明する図である。 配線ルール情報D17のデータ構成を説明する図である。 ネット情報D19のデータ構成を説明する図である。 線分情報D20のデータ構成を説明する図である。 部品情報D14のデータ構成を説明する図である。 Gセル情報D1のデータ構成を説明する図である。 各情報D1、及びD14〜D20間の関係を説明する図である。 配線領域内に設定された部分領域の例を示す図である。 配線を決定する2つのGセル間に存在する特殊ルール領域により決定される配線経路の例を示す図である。 部分領域に適用される配線ルールの相違を説明する図である。 1次セルの生成方法、及び1次セルのなかで単一の特殊ルールが適用される1次セルを説明する図である。 2次Gセルへの分割方法、及び2次Gセルのマージ方法を説明する図である。 マージ処理の主要なステップで実行される処理内容を説明する図である。 特殊ルール領域1202の配線リソースの各Gセル1203への配分方法を説明する図である。 配線トラックと障害物であるピンとの間の位置関係によって変化する配線リソースを説明する図である。 障害物間に通すことが可能な配線の最大数の算出方法を説明する図である。 Gセル生成処理のフローチャートである。 マージ処理のフローチャートである。 Gセルリソース計算A処理のフローチャートである。 Gセルリソース計算B処理のフローチャートである。 経路決定処理のフローチャートである。 概略経路探索処理のフローチャートである。 部品付属領域のリソース計算処理のフローチャートである。 本発明が適用可能なコンピュータシステムを示す斜視図である。 Gセルに配線ルールが混在することで生じる問題を説明する図である。
符号の説明
10 コンピュータ
11 Gセル生成部
12 Gセルリソース計算部
13 Gセルリソース計算部A
14 Gセルリソース計算部B
15 経路決定部
16 部品付属領域のリソース計算部
20 データ記憶装置
30 記録媒体
31 コンピュータプログラム
40 媒体読取装置
1200 配線領域
1202 特殊ルール領域
1203 Gセル
D11 配線領域情報
D12 Gセル生成ルール情報
D13 部品配置情報
D14 部品情報
D15 ピン情報
D16 配線禁止情報
D17 配線ルール情報
D18 特殊ルール領域情報
D19 ネット情報
D20 線分情報

Claims (10)

  1. 配線領域データが示す配線領域を分割して複数の第1分割領域を生成する第1生成ステップと、
    配線ルールが適用される部分領域を示す配線ルール領域データが複数、前記配線領域に存在する場合に、前記第1分割領域に基づいて、単一の前記配線ルール領域データが適用される第2分割領域を生成する第2生成ステップとをコンピュータに実行させることを特徴とする配線方法。
  2. 各配線ルール領域データが示す部分領域は矩形であり、
    前記第2生成ステップでは、前記配線ルール領域データの示す部分領域の頂点の位置を基に前記第2分割領域を生成することを特徴とする請求項1記載の配線方法。
  3. 前記第2生成ステップでは、前記配線ルール領域データの示す部分領域の頂点の位置を基に、前記頂点が存在する前記第1分割領域を複数の第3分割領域に分割し、同一の配線ルールが適用される前記配線ルール領域データの示す部分領域と重なり、且つ前記第1分割領域内で隣接する複数の前記第3分割領域を結合して前記第2分割領域を生成することを特徴とする請求項2記載の配線方法。
  4. 前記配線ルールが示す配線幅および配線との最小限必要な間隔を基に、前記第1分割領域、及び前記第2分割領域で収容可能な配線量を示す配線リソースを算出する算出ステップを更に前記コンピュータに実行させることを特徴とする請求項1乃至3いずれか一項に記載の配線方法。
  5. 前記配線ルールが示す前記間隔は、前記配線の間で最小限必要な第1間隔および半導体部品と導通する導通部と前記配線の間で最小限必要な第2間隔を含み、
    前記算出ステップでは、前記第1分割領域、及び前記第2分割領域のなかで前記半導体部品と導通する前記導通部を複数、有する分割領域は、前記配線ルールが示す配線幅、前記第1間隔および前記第2間隔、並びに前記導通部間の距離を基に、最大となる前記配線リソースを算出することを特徴とする請求項4記載の配線方法。
  6. 前記第1分割領域および前記第2分割領域のなかに存在するソース分割領域とターゲット分割領域を結ぶ配線の経路を生成するときに、
    前記配線に適用すべきでない前記配線ルールと、前記第1分割領域および前記第2分割領域にそれぞれ適用される前記配線ルールを基に、前記経路を生成することを特徴とする請求項1乃至5いずれか一項に記載の配線方法。
  7. 配線領域データが示す配線領域を分割して複数の第1分割領域を生成する第1生成手段と、
    配線ルールが適用される部分領域を示す配線ルール領域データが複数、前記配線領域に存在する場合に、前記第1分割領域に基づいて、単一の前記配線ルール領域データが適用される第2分割領域を生成する第2生成手段とを具備することを特徴とする自動配線装置。
  8. 前記配線ルールが示す配線幅および配線との最小限必要な間隔を基に、前記第1分割領域、及び前記第2分割領域で収容可能な配線量を示す配線リソースを算出する算出手段を更に具備することを特徴とする請求項7記載の自動配線装置。
  9. 配線領域データが示す配線領域に存在する配線の経路を自動的に生成する自動配線装置として用いられるコンピュータに、
    配線領域データが示す配線領域を分割して複数の第1分割領域を生成する第1生成機能と、
    配線ルールが適用される部分領域を示す配線ルール領域データが複数、前記配線領域に存在する場合に、前記第1分割領域に基づいて、単一の前記配線ルール領域データが適用される第2分割領域を生成する第2生成機能とを実現させるためのプログラム。
  10. 前記配線ルールが示す配線幅および配線との最小限必要な間隔を基に、前記第1分割領域、及び前記第2分割領域で収容可能な配線量を示す配線リソースを算出する算出機能を更に実現させることを特徴とする請求項9記載のプログラム。
JP2008268489A 2008-10-17 2008-10-17 配線方法、自動配線装置、及びプログラム Expired - Fee Related JP5309878B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008268489A JP5309878B2 (ja) 2008-10-17 2008-10-17 配線方法、自動配線装置、及びプログラム
US12/579,730 US8762910B2 (en) 2008-10-17 2009-10-15 Wiring design method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008268489A JP5309878B2 (ja) 2008-10-17 2008-10-17 配線方法、自動配線装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2010097468A true JP2010097468A (ja) 2010-04-30
JP5309878B2 JP5309878B2 (ja) 2013-10-09

Family

ID=42109625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008268489A Expired - Fee Related JP5309878B2 (ja) 2008-10-17 2008-10-17 配線方法、自動配線装置、及びプログラム

Country Status (2)

Country Link
US (1) US8762910B2 (ja)
JP (1) JP5309878B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016184261A (ja) * 2015-03-26 2016-10-20 株式会社メガチップス 半導体集積回路の設計支援装置及び設計支援方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045861A (ja) * 2011-08-24 2013-03-04 Renesas Electronics Corp 半導体レイアウト設定装置、半導体レイアウト設定方法、及び半導体レイアウト設定プログラム
US9117052B1 (en) 2012-04-12 2015-08-25 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for interactively implementing physical electronic designs with track patterns
US9003349B1 (en) 2013-06-28 2015-04-07 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for implementing a physical electronic design with area-bounded tracks
US9251299B1 (en) 2013-06-28 2016-02-02 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for associating track patterns with rules for electronic designs
US8984465B1 (en) 2013-06-28 2015-03-17 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for automatically assigning track patterns to regions for physical implementation of an electronic design
US8584077B1 (en) * 2012-07-30 2013-11-12 Agilent Technologies, Inc. User-controllable connectivity engine for electronic design automation tools
US9104830B1 (en) 2013-06-28 2015-08-11 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for assigning track patterns to regions of an electronic design
US9213793B1 (en) 2012-08-31 2015-12-15 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks
US9712375B2 (en) 2012-12-12 2017-07-18 Microsoft Technology Licensing, Llc Workload deployment with infrastructure management agent provisioning
US9165103B1 (en) * 2013-06-28 2015-10-20 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for tessellating and labeling routing space for routing electronic designs
KR102494048B1 (ko) * 2016-01-11 2023-02-01 삼성전자주식회사 반도체 장치의 핀 간 라우팅 설계 방법 및 그것을 적용한 설계 시스템
US10235490B1 (en) * 2017-05-08 2019-03-19 Cadence Design Systems, Inc. Methods and systems for centering of pins during instance abutment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63304375A (ja) * 1987-06-04 1988-12-12 Fujitsu Ltd 自動配線方法
JPH03180978A (ja) * 1989-12-11 1991-08-06 Nec Corp 迷路法によるプリント基板の配線処理方式
JPH10270563A (ja) * 1997-03-27 1998-10-09 Nec Corp 集積回路の自動概略配線方法
WO2000038228A1 (fr) * 1998-12-22 2000-06-29 Fujitsu Limited Appareil et procede de cablage brute et support d'enregistrement conservant un programme de cablage brute
JP2006294707A (ja) * 2005-04-06 2006-10-26 Matsushita Electric Ind Co Ltd 半導体集積回路の配線方法および半導体集積回路

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63237544A (ja) 1987-03-26 1988-10-04 Hitachi Ltd 概略配線経路決定方法
JP3017214B1 (ja) 1999-02-05 2000-03-06 日本電気通信システム株式会社 配線条件自動生成装置及び配線条件自動生成方法
US6507941B1 (en) * 1999-04-28 2003-01-14 Magma Design Automation, Inc. Subgrid detailed routing
US20060281221A1 (en) * 2005-06-09 2006-12-14 Sharad Mehrotra Enhanced routing grid system and method
JP2007026170A (ja) 2005-07-19 2007-02-01 Matsushita Electric Ind Co Ltd 半導体集積回路の自動レイアウト方法、自動レイアウトプログラム、および自動レイアウト装置
US8065652B1 (en) * 2007-08-13 2011-11-22 Cadence Design Systems, Inc. Method and system for determining hard and preferred rules in global routing of electronic designs

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63304375A (ja) * 1987-06-04 1988-12-12 Fujitsu Ltd 自動配線方法
JPH03180978A (ja) * 1989-12-11 1991-08-06 Nec Corp 迷路法によるプリント基板の配線処理方式
JPH10270563A (ja) * 1997-03-27 1998-10-09 Nec Corp 集積回路の自動概略配線方法
WO2000038228A1 (fr) * 1998-12-22 2000-06-29 Fujitsu Limited Appareil et procede de cablage brute et support d'enregistrement conservant un programme de cablage brute
JP2006294707A (ja) * 2005-04-06 2006-10-26 Matsushita Electric Ind Co Ltd 半導体集積回路の配線方法および半導体集積回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016184261A (ja) * 2015-03-26 2016-10-20 株式会社メガチップス 半導体集積回路の設計支援装置及び設計支援方法

Also Published As

Publication number Publication date
JP5309878B2 (ja) 2013-10-09
US8762910B2 (en) 2014-06-24
US20100100862A1 (en) 2010-04-22

Similar Documents

Publication Publication Date Title
JP5309878B2 (ja) 配線方法、自動配線装置、及びプログラム
Westra et al. Probabilistic congestion prediction
US8745556B2 (en) Layout method and system for multi-patterning integrated circuits
US10049175B1 (en) Methods, systems, and articles of manufacture for interactively implementing physical electronic designs with track patterns
Ding et al. Pin accessibility-driven detailed placement refinement
US20020170020A1 (en) Method and system of modifying integrated circuit power rails
US7197738B1 (en) Method and apparatus for routing
US9003349B1 (en) Methods, systems, and articles of manufacture for implementing a physical electronic design with area-bounded tracks
US8065649B2 (en) Method and apparatus for routing
US9213793B1 (en) Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks
JP5731837B2 (ja) 設計支援装置およびその情報処理方法
US8856717B2 (en) Shielded pattern generation for a circuit design board
US10089433B2 (en) Method for triple-patterning friendly placement
US8015529B1 (en) Methods and apparatus for diagonal route shielding
US7519934B2 (en) System, method and program for designing a semiconductor integrated circuit using intersection ratios with standard cells
US7174529B1 (en) Acute angle avoidance during routing
US20230306177A1 (en) Using topological and geometric routers to produce curvilinear routes
US20230282635A1 (en) Integrated circuit with non-preferred direction curvilinear wiring
US6496968B1 (en) Hierarchical wiring method for a semiconductor integrated circuit
Chen et al. Multilevel full-chip gridless routing with applications to optical-proximity correction
Tabrizi et al. A detailed routing-aware detailed placement technique
JP5380969B2 (ja) レイアウト設計方法、及び装置
JP5900540B2 (ja) レイアウト設計方法及びレイアウト設計支援プログラム
JP7306134B2 (ja) 回路設計方法、プログラム、及び情報処理装置
Taniguchi et al. Two-layer Bottleneck Channel Track Assignment for Analog VLSI

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130617

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees