JPH0793358B2 - ブロック配置処理方式 - Google Patents
ブロック配置処理方式Info
- Publication number
- JPH0793358B2 JPH0793358B2 JP62281324A JP28132487A JPH0793358B2 JP H0793358 B2 JPH0793358 B2 JP H0793358B2 JP 62281324 A JP62281324 A JP 62281324A JP 28132487 A JP28132487 A JP 28132487A JP H0793358 B2 JPH0793358 B2 JP H0793358B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- placement
- substrate
- power supply
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はプリント配線板や大規模集積(LSI)回路基板
などの基板上に配置単位となる複数のブロックを自動的
に配置設計するためのブロック配置処理方式に関する。
などの基板上に配置単位となる複数のブロックを自動的
に配置設計するためのブロック配置処理方式に関する。
従来、この種のブロック配置処理方式では、基板上にm
行n列(ただし、m≧2,2≧2)のセルから構成された
配置単位となるブロックを配置する方式が採用されてい
る。初期配置および改良配置を用いる従来の一般的な処
理方式は、1984年4月に発行されたVLSIデザインの第35
頁−第43頁所載の論文「オートマティック・プレイスメ
ント・アンド・ルーティング・オブ・ゲート・アレイ
ズ」(文献A)を参照できる。この文献では基板上には
m×n個のセルが並んでおり、どこにでも置くことがで
きると想定されている。しかしながら実際は、この基板
上には通常のブロックが配置できる部分の他に、上下方
向あるいは左右方向に基板を貫通して電源ラインおよび
グランドラインが何個所か存在するので、これらの領域
上には通常のブロックを配置することができない。つま
り、電源ラインおよびグランドライン間距離を超える幅
(または高さ)をもつブロック(例えばハードマクロ)
を配置することができない。そこで、従来は予め電源ラ
インおよびグランドラインの場所を調べておく。そして
ブロックが配置されたときに、ちょうど電源ラインおよ
びグランドラインにあたる場所をまたぐ形で伸長させた
伸長ブロックを別個に作成し配置している。
行n列(ただし、m≧2,2≧2)のセルから構成された
配置単位となるブロックを配置する方式が採用されてい
る。初期配置および改良配置を用いる従来の一般的な処
理方式は、1984年4月に発行されたVLSIデザインの第35
頁−第43頁所載の論文「オートマティック・プレイスメ
ント・アンド・ルーティング・オブ・ゲート・アレイ
ズ」(文献A)を参照できる。この文献では基板上には
m×n個のセルが並んでおり、どこにでも置くことがで
きると想定されている。しかしながら実際は、この基板
上には通常のブロックが配置できる部分の他に、上下方
向あるいは左右方向に基板を貫通して電源ラインおよび
グランドラインが何個所か存在するので、これらの領域
上には通常のブロックを配置することができない。つま
り、電源ラインおよびグランドライン間距離を超える幅
(または高さ)をもつブロック(例えばハードマクロ)
を配置することができない。そこで、従来は予め電源ラ
インおよびグランドラインの場所を調べておく。そして
ブロックが配置されたときに、ちょうど電源ラインおよ
びグランドラインにあたる場所をまたぐ形で伸長させた
伸長ブロックを別個に作成し配置している。
この方法では下地に電源ラインおよびグランドラインの
場所が設定されているため、伸長ブロックを準備する
際、予めブロックの配置位置を決定しておき、そこに置
いた時のブロック内の電源ラインおよびグランドライン
の位置を計算しなければならない。
場所が設定されているため、伸長ブロックを準備する
際、予めブロックの配置位置を決定しておき、そこに置
いた時のブロック内の電源ラインおよびグランドライン
の位置を計算しなければならない。
従って、電源ラインおよびグランドラインのブロック内
位置が異なってくるため、同一機能を有する伸長ブロッ
クを多種類準備する必要がある。
位置が異なってくるため、同一機能を有する伸長ブロッ
クを多種類準備する必要がある。
さらに、配置改良時には、これら伸長ブロックを使用し
たブロックは、電源ラインおよびグランドラインが固定
されているため、他の位置に移動できる可能性はほとん
どなくなり、配置改良による効果を期待できないという
欠点がある。
たブロックは、電源ラインおよびグランドラインが固定
されているため、他の位置に移動できる可能性はほとん
どなくなり、配置改良による効果を期待できないという
欠点がある。
本発明のブロック間配置処理方式は、ブロック配置不可
領域を有する基板上にブロックを配置するためのブロッ
ク配置処理方式において、前記基板からブロック配置不
可領域を除去し、前記基板の除去されなかった領域を互
いに接続することにより仮基板を設定する仮基板設定手
段と、この仮基板上にブロックを配置するブロック配置
手段と、この配置手段により前記ブロックが配置された
前記仮基板に前記ブロック配置不可領域を挿入するとと
もに、前記ブロックのうち前記ブロック配置不可領域に
またがるものを分断するブロック配置不可領域挿入手段
と、このブロック配置不可領域挿入手段により分断され
た前記ブロック間を接続するための内部配線を設計する
配線設計手段とを含む。
領域を有する基板上にブロックを配置するためのブロッ
ク配置処理方式において、前記基板からブロック配置不
可領域を除去し、前記基板の除去されなかった領域を互
いに接続することにより仮基板を設定する仮基板設定手
段と、この仮基板上にブロックを配置するブロック配置
手段と、この配置手段により前記ブロックが配置された
前記仮基板に前記ブロック配置不可領域を挿入するとと
もに、前記ブロックのうち前記ブロック配置不可領域に
またがるものを分断するブロック配置不可領域挿入手段
と、このブロック配置不可領域挿入手段により分断され
た前記ブロック間を接続するための内部配線を設計する
配線設計手段とを含む。
次に本発明の一実施例について図面を参照して詳細に説
明する。
明する。
第1A図から第1E図を参照すると、本発明の一実施例は、
第1A図に示す電源ライン31などのブロック配置不可領域
を基板32から除いた大きさの第1B図に示す仮基板33を設
計する第1手段と、この第1B図に示す仮基板33上にブロ
ックタイプBT1のブロック34をブロックAおよびBとし
て、またブロックタイプBT2のブロック35をブロックC
として初期配置し、改良配置し、第1C図に示す配置結果
ブロック36を仮配置した仮配置基板37を設計する第2手
段と、この仮配置基板37に電源ライン31を元の位置に挿
入し第1D図に示すブロックAおよびBの伸長されたブロ
ック38を含む配置基板39を設計する第3手段と、この配
置基板39上の伸長されたブロック38に第1E図に示すブロ
ック内配線40を行なう第4手段とを含む。
第1A図に示す電源ライン31などのブロック配置不可領域
を基板32から除いた大きさの第1B図に示す仮基板33を設
計する第1手段と、この第1B図に示す仮基板33上にブロ
ックタイプBT1のブロック34をブロックAおよびBとし
て、またブロックタイプBT2のブロック35をブロックC
として初期配置し、改良配置し、第1C図に示す配置結果
ブロック36を仮配置した仮配置基板37を設計する第2手
段と、この仮配置基板37に電源ライン31を元の位置に挿
入し第1D図に示すブロックAおよびBの伸長されたブロ
ック38を含む配置基板39を設計する第3手段と、この配
置基板39上の伸長されたブロック38に第1E図に示すブロ
ック内配線40を行なう第4手段とを含む。
次に本発明の一実施例がコンピュータプログラムにより
どのように動作するかを第1A図から第1E図、および第2A
図および第2B図を参照して詳細に説明する。
どのように動作するかを第1A図から第1E図、および第2A
図および第2B図を参照して詳細に説明する。
第1A図および第2A図を参照すると、オリジナル下地構造
ファイル17から基板32の下地サイズX=12,Y=7および
電源セル列の情報が入力される(第2A図のステップ
1)。次にこの基板32における電源またはグランドライ
ン31のセル列が認識される(ステップ2)。この実施例
ではX=4,9という値が認識され、第1のテーブル18に
その値(X4,X9)が格納される。そして基板32から電源
ライン31のセル列が削除され、仮基板33である仮下地が
生成されるとともに、削除された電源ライン31の基板32
上の位置を示す値が仮下地構造ファイル17に格納される
(ステップ3)。すなわちX=12から2列のセル列を削
除することによりX=10となる。Y=7はそのままであ
る。従って、仮下地構造ファイル19には仮基板33の下地
サイズとして値(X=10,Y=7)が格納される。また、
削除された電源ライン31の基板32上の位置は基板32上の
第4列目と第9列目となる。この値を仮基板33に変換す
ると第3行目の右および第7行目の右となる。従って、
元のセル列として値“X,3の右",および“X,7の右”が仮
下地構造ファイル19に格納される。
ファイル17から基板32の下地サイズX=12,Y=7および
電源セル列の情報が入力される(第2A図のステップ
1)。次にこの基板32における電源またはグランドライ
ン31のセル列が認識される(ステップ2)。この実施例
ではX=4,9という値が認識され、第1のテーブル18に
その値(X4,X9)が格納される。そして基板32から電源
ライン31のセル列が削除され、仮基板33である仮下地が
生成されるとともに、削除された電源ライン31の基板32
上の位置を示す値が仮下地構造ファイル17に格納される
(ステップ3)。すなわちX=12から2列のセル列を削
除することによりX=10となる。Y=7はそのままであ
る。従って、仮下地構造ファイル19には仮基板33の下地
サイズとして値(X=10,Y=7)が格納される。また、
削除された電源ライン31の基板32上の位置は基板32上の
第4列目と第9列目となる。この値を仮基板33に変換す
ると第3行目の右および第7行目の右となる。従って、
元のセル列として値“X,3の右",および“X,7の右”が仮
下地構造ファイル19に格納される。
ここまでの処理が本発明の一実施例の第1手段に相当す
る。次に一実施例の第2手段について説明する。
る。次に一実施例の第2手段について説明する。
第1B図,第1C図および第2A図を参照すると、まず初期配
置(ステップ4)において、配置すべきブロック名A,B
およびCが論理接続情報ファイル20にアクセスされ、こ
のファイル20から対応するブロックタイプBT1,BT1およ
びBT2が読出される。次に読出されたブロックタイプBT
1,およびBT2が仮下地構造ファイル19にアクセスされ、
このファイル19からそれぞれのブロックタイプBT1およ
びBT2に対応するセルサイズ“X=6,Y=2"および“X=
2,Y=1"が読出され初期配置される(ステップ4)。次
に改良配置がなされる(ステップ5)。この詳細な技術
は上述の文献Aを参照できる。第1C図に示された例で
は、ブロック名A,BおよびCの配置位置は、その左下隅
の座標で代表させるため、それぞれ(3,5),(4,2),
(9,5)となりまた、各ブロックが仮配置基板37上で占
有するエリアをX座標に関する“from"“to"で表現する
と3〜8,4〜9,9〜10となる。
置(ステップ4)において、配置すべきブロック名A,B
およびCが論理接続情報ファイル20にアクセスされ、こ
のファイル20から対応するブロックタイプBT1,BT1およ
びBT2が読出される。次に読出されたブロックタイプBT
1,およびBT2が仮下地構造ファイル19にアクセスされ、
このファイル19からそれぞれのブロックタイプBT1およ
びBT2に対応するセルサイズ“X=6,Y=2"および“X=
2,Y=1"が読出され初期配置される(ステップ4)。次
に改良配置がなされる(ステップ5)。この詳細な技術
は上述の文献Aを参照できる。第1C図に示された例で
は、ブロック名A,BおよびCの配置位置は、その左下隅
の座標で代表させるため、それぞれ(3,5),(4,2),
(9,5)となりまた、各ブロックが仮配置基板37上で占
有するエリアをX座標に関する“from"“to"で表現する
と3〜8,4〜9,9〜10となる。
これで本発明の一実施例における第2手段の動作を終了
する。次に一実施例の第3手段の動作について説明す
る。
する。次に一実施例の第3手段の動作について説明す
る。
第1C図,第1D図および第2B図を参照すると、まず第1の
テーブル18から電源セル列のうち、第1回目として座標
値X=4が入力される(ステップ6)。次にこの座標値
X=4の入力により第2のテーブル21の値を変える必要
があるか否かが判定される(ステップ7)。まず、第2
のテーブル21の配置結果項目には、第1C図に示す仮配置
基板37上の配置結果ブロック36の左下隅の座標値が格納
されている。この座標値のうちX=4以上の値、すなわ
ちブロック名BおよびCの配置結果項目のXには+1さ
れる必要がある。
テーブル18から電源セル列のうち、第1回目として座標
値X=4が入力される(ステップ6)。次にこの座標値
X=4の入力により第2のテーブル21の値を変える必要
があるか否かが判定される(ステップ7)。まず、第2
のテーブル21の配置結果項目には、第1C図に示す仮配置
基板37上の配置結果ブロック36の左下隅の座標値が格納
されている。この座標値のうちX=4以上の値、すなわ
ちブロック名BおよびCの配置結果項目のXには+1さ
れる必要がある。
また、第2のテーブル21の配置結果項目には、第1C図に
示す仮配置基板37上の配置結果ブロック36のX座標上の
左端の値と右端の値とが格納される。例えば、第1C図に
示すブロック名Aのブロックの左端のX座標は“3"であ
り、右端のX座標は“8"である。これらX座標の値は、
電源セル列の座標値X=4の入力により変化する。すな
わちブロック名Aのブロックの右端のX座標は"9"に変
化する。従って、ステップ7の判定ではYESとなり、ス
テップ8に進む。ステップ8では、第2のテーブル21の
内容に電源セル列の座標値X=4が挿入される。上述の
説明から明らかなように、第2のテーブル21′の配置結
果項目のX座標値のうち、ブロック名Bに対応する項目
には値“5"が、ブロック名Cに対応する項目には値“1
0"が新しい値としてそれぞれ格納される。第2のテーブ
ル21′の占有エリア項目の値の変化は以下の通りであ
る。ブロック名Aの右端(X to)には値“9"が、ブロッ
ク名Bの左端(X from)には値“5"が、ブロック名Bの
右端(X to)には値“10"が、ブロック名Cの左端(X f
rom)には値“10"が、ブロック名Cの右端(X to)には
値“11"がそれぞれ格納される。このように第2のテー
ブル21の値に変化が生ずる。この後、第1のテーブル18
を参照して、入力すべき電源セル列の座標が残っている
か否かが判定される(ステップ9)。この時点でテーブ
ル18には、X=9の座標が残っている。従ってステップ
9の判定はYESとなり、ステップ6に戻る。ステップ6
では座標値X=9を入力し、ステップ7で第2のテーブ
ル21の座標値を変える必要があるか否かが判定される。
第1C図の配置結果ブロック36から明らかなように、ブロ
ック名AおよびBの右端の値は、この座標値X=9の入
力に応答して変化させる必要がある。またブロック名C
は配置結果項目のX座標,占有エリアの“X from"およ
び“X to"項目の座標値を変化させる必要がある。従っ
て、ステップ7での判定結果はYESとなり、ステップ8
に進む。ステップ8では、座標値X=4の挿入された第
2のテーブル21′の内容に電源セル列の座標値X=9が
挿入される。この挿入により、第2のテーブル21″の配
置結果項目のX座標のうち、ブロック名Cに対応する項
目には値“11"が新しい値として格納される。第2のテ
ーブル21″の占有エリア項目の値の変化は以下の通りで
ある。ブロック名Aの右端(X to)には値“10"が、ブ
ロック名Bの右端(X to)には値“11"が、ブロック名
Cの左端(X from)には値“11"が、右端(X to)には
値“12"がそれぞれ格納される。
示す仮配置基板37上の配置結果ブロック36のX座標上の
左端の値と右端の値とが格納される。例えば、第1C図に
示すブロック名Aのブロックの左端のX座標は“3"であ
り、右端のX座標は“8"である。これらX座標の値は、
電源セル列の座標値X=4の入力により変化する。すな
わちブロック名Aのブロックの右端のX座標は"9"に変
化する。従って、ステップ7の判定ではYESとなり、ス
テップ8に進む。ステップ8では、第2のテーブル21の
内容に電源セル列の座標値X=4が挿入される。上述の
説明から明らかなように、第2のテーブル21′の配置結
果項目のX座標値のうち、ブロック名Bに対応する項目
には値“5"が、ブロック名Cに対応する項目には値“1
0"が新しい値としてそれぞれ格納される。第2のテーブ
ル21′の占有エリア項目の値の変化は以下の通りであ
る。ブロック名Aの右端(X to)には値“9"が、ブロッ
ク名Bの左端(X from)には値“5"が、ブロック名Bの
右端(X to)には値“10"が、ブロック名Cの左端(X f
rom)には値“10"が、ブロック名Cの右端(X to)には
値“11"がそれぞれ格納される。このように第2のテー
ブル21の値に変化が生ずる。この後、第1のテーブル18
を参照して、入力すべき電源セル列の座標が残っている
か否かが判定される(ステップ9)。この時点でテーブ
ル18には、X=9の座標が残っている。従ってステップ
9の判定はYESとなり、ステップ6に戻る。ステップ6
では座標値X=9を入力し、ステップ7で第2のテーブ
ル21の座標値を変える必要があるか否かが判定される。
第1C図の配置結果ブロック36から明らかなように、ブロ
ック名AおよびBの右端の値は、この座標値X=9の入
力に応答して変化させる必要がある。またブロック名C
は配置結果項目のX座標,占有エリアの“X from"およ
び“X to"項目の座標値を変化させる必要がある。従っ
て、ステップ7での判定結果はYESとなり、ステップ8
に進む。ステップ8では、座標値X=4の挿入された第
2のテーブル21′の内容に電源セル列の座標値X=9が
挿入される。この挿入により、第2のテーブル21″の配
置結果項目のX座標のうち、ブロック名Cに対応する項
目には値“11"が新しい値として格納される。第2のテ
ーブル21″の占有エリア項目の値の変化は以下の通りで
ある。ブロック名Aの右端(X to)には値“10"が、ブ
ロック名Bの右端(X to)には値“11"が、ブロック名
Cの左端(X from)には値“11"が、右端(X to)には
値“12"がそれぞれ格納される。
このように第2のテーブル21′の値に変化が生ずる。
次に、ステップ9で第1のテーブル18が参照され、入力
すべき電源セル列の座標値が残っているか否かが判定さ
れる。第1のテーブル18には座標値が残っていないため
NOと判定され、ステップ10に進む。以下のステップは、
本発明の一実施例の第4のステップに相当し、電源セル
列上に設置すべき接続パターンの選択が行なわれる。上
述のステップ9までにおいて求められた全ブロックの配
置結果について以下の処理が繰返される。まず、ステッ
プ10で第2のテーブル21″からブロック名Aのブロック
が取出される。次にステップ11で第2のテーブル21″の
占有エリア項目内のブロック名Aに対応する欄に電源セ
ル列が存在する否かが判定される。この欄には占有エリ
アが“3"から“10"まであることが示され、一方、第1
のテーブル18の値X=4,および9から、この占有エリア
X=3からX=10までの間での電源セル列の存在が判定
される。次にステップ12で第1E図に示す電源ライン31の
ブロック内での相対位置計算が行なわれる。すなわち、
電源セル列がブロックAの左端から何セル列目に位置す
るかが以下の計算式で求められる。
すべき電源セル列の座標値が残っているか否かが判定さ
れる。第1のテーブル18には座標値が残っていないため
NOと判定され、ステップ10に進む。以下のステップは、
本発明の一実施例の第4のステップに相当し、電源セル
列上に設置すべき接続パターンの選択が行なわれる。上
述のステップ9までにおいて求められた全ブロックの配
置結果について以下の処理が繰返される。まず、ステッ
プ10で第2のテーブル21″からブロック名Aのブロック
が取出される。次にステップ11で第2のテーブル21″の
占有エリア項目内のブロック名Aに対応する欄に電源セ
ル列が存在する否かが判定される。この欄には占有エリ
アが“3"から“10"まであることが示され、一方、第1
のテーブル18の値X=4,および9から、この占有エリア
X=3からX=10までの間での電源セル列の存在が判定
される。次にステップ12で第1E図に示す電源ライン31の
ブロック内での相対位置計算が行なわれる。すなわち、
電源セル列がブロックAの左端から何セル列目に位置す
るかが以下の計算式で求められる。
電源セル列の座標位置−セル占有エリアX from項目の座
標−挿入された電源セル列の数 従って、まず座標位置X=4の電源セル列は4−3=1
により、ブロックAの左端からの相対位置として1セル
目と2セル目との間にあることが計算される。また、座
標位置X=9の電源セル列は9−3−1=5により、ブ
ロックAの左端からの相対位置として5セル目と6セル
目との間にあることが計算される。この結果はX=1,5
としてワークエリア23に格納されてもよい。このX=1
はX=1の右側の座標位置に電源セル列が存在し、X=
5はX=5の右側の座標位置に電源セル列が存在するこ
とを示している。
標−挿入された電源セル列の数 従って、まず座標位置X=4の電源セル列は4−3=1
により、ブロックAの左端からの相対位置として1セル
目と2セル目との間にあることが計算される。また、座
標位置X=9の電源セル列は9−3−1=5により、ブ
ロックAの左端からの相対位置として5セル目と6セル
目との間にあることが計算される。この結果はX=1,5
としてワークエリア23に格納されてもよい。このX=1
はX=1の右側の座標位置に電源セル列が存在し、X=
5はX=5の右側の座標位置に電源セル列が存在するこ
とを示している。
第2図Cを参照すると、オリジナル下地情報ファイル22
には、ブロックタイプBT1およびBT2のそれぞれに対し、
ブロックの左端からのそれぞれの相対位置に電源セル列
が位置していた場合、どのような配線パターンを付加す
ればよいかが定義されている。本発明の一実施例におけ
るブロックタイプ“BT1"ではテーブル220で示されるよ
うに、セルサイズ“X=6,Y=2"であり、接続パターン
テーブル221へのリンクとして接続パターンテーブル221
の“1"から“5"までが該当する情報である。さらに、接
続パターンテーブル221を参照すると、相対XY座標が
“X=1"のとき、接続パターン“pat A"が付加される必
要があることを示し、相対XYが座標が“X=2"のとき接
続パターン“pat B"が付加される必要があることを示し
ている。また、ブロックタイプ“BT2"では、セルサイズ
が“X=2,Y=1"であり、接続パターンテーブル221への
リンクとしては接続パターンテーブル“6"のみが該当す
る情報である。したがって、接続パターンテーブル221
のシークエンス6が参照され、相対XY座標の“X=1"の
ケースで接続パターン“pat F"の付加の必要性が示され
ている。
には、ブロックタイプBT1およびBT2のそれぞれに対し、
ブロックの左端からのそれぞれの相対位置に電源セル列
が位置していた場合、どのような配線パターンを付加す
ればよいかが定義されている。本発明の一実施例におけ
るブロックタイプ“BT1"ではテーブル220で示されるよ
うに、セルサイズ“X=6,Y=2"であり、接続パターン
テーブル221へのリンクとして接続パターンテーブル221
の“1"から“5"までが該当する情報である。さらに、接
続パターンテーブル221を参照すると、相対XY座標が
“X=1"のとき、接続パターン“pat A"が付加される必
要があることを示し、相対XYが座標が“X=2"のとき接
続パターン“pat B"が付加される必要があることを示し
ている。また、ブロックタイプ“BT2"では、セルサイズ
が“X=2,Y=1"であり、接続パターンテーブル221への
リンクとしては接続パターンテーブル“6"のみが該当す
る情報である。したがって、接続パターンテーブル221
のシークエンス6が参照され、相対XY座標の“X=1"の
ケースで接続パターン“pat F"の付加の必要性が示され
ている。
ステップ13では、接続パターンの選択および出力がなさ
れる。すなわち、第2A図に示す論理接続情報ファイル20
または第2のテーブル21から明らかなように、ブロック
名Aのブロックタイプは“BT1"である。従って電源セル
列のX座標“X=4"に対しステップ12での計算結果であ
るブロック内での相対位置は“X=1"であり、接続パタ
ーンテーブル221内の相対XY座標“X=1"から接続パタ
ーン“pat A"が選択され、出力される。
れる。すなわち、第2A図に示す論理接続情報ファイル20
または第2のテーブル21から明らかなように、ブロック
名Aのブロックタイプは“BT1"である。従って電源セル
列のX座標“X=4"に対しステップ12での計算結果であ
るブロック内での相対位置は“X=1"であり、接続パタ
ーンテーブル221内の相対XY座標“X=1"から接続パタ
ーン“pat A"が選択され、出力される。
ステップ14では、第2のテーブル21″に示される配置結
果“X=3,Y=5"が出力されるとともに、ブロック名A
のブロック内配線情報が分割して出力される。すなわ
ち、電源セル列はブロック内相対位置ではX=1の右、
およびX=5の右であったので、ブロックタイプ“BT1"
のブロック内配線はX=1の右、およびX=5の右の相
対位置で3分割され出力される。
果“X=3,Y=5"が出力されるとともに、ブロック名A
のブロック内配線情報が分割して出力される。すなわ
ち、電源セル列はブロック内相対位置ではX=1の右、
およびX=5の右であったので、ブロックタイプ“BT1"
のブロック内配線はX=1の右、およびX=5の右の相
対位置で3分割され出力される。
ステップ16では、未出力のブロックがあるか否かが判定
され、あると判定された場合はステップ10以下の処理が
実行され、ないと判定された場合は処理を終了する。
され、あると判定された場合はステップ10以下の処理が
実行され、ないと判定された場合は処理を終了する。
本発明の一実施例ではブロック名BおよびCがあると判
定されるため次にブロック名Bが処理される。ステップ
10では、第2のテーブル21″からブロック名Bのブロッ
クが取出される。ステップ11では、このブロック名Bの
占有エリアX座標の“5"から“11"において、第1のテ
ーブル18から電源セル列“X=9"があると判定される。
ステップ12では9−5=4が、ブロック内での電源ライ
ンの相対位置として求められる。ステップ13では、この
ようにして求められた相対XY座標“X=4"から接続パタ
ーン“pat D"が選択出力される。ステップ14では、第2
のテーブル21″から配置結果“X=5,Y=2"が出力さ
れ、さらにブロック内相対座標“X=4"の位置で分割さ
れたブロック内配置情報が出力される。ステップ16では
ブロック名Cが未出力のフロックとして存在することが
判定される。
定されるため次にブロック名Bが処理される。ステップ
10では、第2のテーブル21″からブロック名Bのブロッ
クが取出される。ステップ11では、このブロック名Bの
占有エリアX座標の“5"から“11"において、第1のテ
ーブル18から電源セル列“X=9"があると判定される。
ステップ12では9−5=4が、ブロック内での電源ライ
ンの相対位置として求められる。ステップ13では、この
ようにして求められた相対XY座標“X=4"から接続パタ
ーン“pat D"が選択出力される。ステップ14では、第2
のテーブル21″から配置結果“X=5,Y=2"が出力さ
れ、さらにブロック内相対座標“X=4"の位置で分割さ
れたブロック内配置情報が出力される。ステップ16では
ブロック名Cが未出力のフロックとして存在することが
判定される。
次にブロック名Cの処理が行なわれる。ステップ10で第
2のテーブル21″からブロック名Cのブロックが取出さ
れる。次に、ステップ11で電源ライン31が占有エリア内
にあるか否かが判定され、ないと判定される。従って、
ステップ15で第2のテーブル21″から配置結果“X=1
1,Y=5"が出力され、さらに“BT2"のブロック内配線情
報が分割されずに出力される。ステップ16では、未出力
のブロックがないと判定されるため、処理は終了する。
2のテーブル21″からブロック名Cのブロックが取出さ
れる。次に、ステップ11で電源ライン31が占有エリア内
にあるか否かが判定され、ないと判定される。従って、
ステップ15で第2のテーブル21″から配置結果“X=1
1,Y=5"が出力され、さらに“BT2"のブロック内配線情
報が分割されずに出力される。ステップ16では、未出力
のブロックがないと判定されるため、処理は終了する。
なお、上述の説明では電源ライン31が基板の縦方向に貫
通する場合について説明したが、電源ライン31が横方向
に貫通する場合、あるいは両方向に貫通する場合も本発
明を適用できる。
通する場合について説明したが、電源ライン31が横方向
に貫通する場合、あるいは両方向に貫通する場合も本発
明を適用できる。
また、本発明は電源ライン31を設ける場合に限定され
ず、グランドライン、配置禁止領域などブロックを配置
できない部分を有する基板についても適用できる。この
ようにして設計された基板は、プリント配線板,セラミ
ック配線板,集積回路に対する一般の製造技術に用いて
製造される。この製造技術は1980年C.MeadおよびL.Conw
ayによりAddison−Wesley社から発行された刊行物「Int
roduction to VLSI Systems」のpp38−45を参照でき
る。
ず、グランドライン、配置禁止領域などブロックを配置
できない部分を有する基板についても適用できる。この
ようにして設計された基板は、プリント配線板,セラミ
ック配線板,集積回路に対する一般の製造技術に用いて
製造される。この製造技術は1980年C.MeadおよびL.Conw
ayによりAddison−Wesley社から発行された刊行物「Int
roduction to VLSI Systems」のpp38−45を参照でき
る。
以上詳細に説明したように、この発明に係るブロック配
置処理方式によれば、電源ライン,グランドラインなど
のブロックを配置できない領域の場所,幅を考慮し、配
置不可領域をまたぐ形でブロックのセル境界で分離した
のち、電源ライン・グランドラインなどを設けるように
したので、1種類の普通ブロックで作成することがで
き、設計および製造工数が低減できるうえ、その管理も
非常に簡単になるなどの効果がある。
置処理方式によれば、電源ライン,グランドラインなど
のブロックを配置できない領域の場所,幅を考慮し、配
置不可領域をまたぐ形でブロックのセル境界で分離した
のち、電源ライン・グランドラインなどを設けるように
したので、1種類の普通ブロックで作成することがで
き、設計および製造工数が低減できるうえ、その管理も
非常に簡単になるなどの効果がある。
第1A図−第1E図および第2A図−第2C図は本発明の一実施
例を示す図である。 図において、17,22……オリジナル下地構造ファイル、1
8……第1のテーブル、19……仮下地構造ファイル、20
……論理接続情報ファイル、21,21′,21″……第2のテ
ーブル、31……電源ライン、32……基板、33……仮基
板、34,35……ブロック、36……配置結果ブロック、37
……仮配置基板、38……伸長されたブロック、39……配
置基板、40……追加されたブロック内配線。
例を示す図である。 図において、17,22……オリジナル下地構造ファイル、1
8……第1のテーブル、19……仮下地構造ファイル、20
……論理接続情報ファイル、21,21′,21″……第2のテ
ーブル、31……電源ライン、32……基板、33……仮基
板、34,35……ブロック、36……配置結果ブロック、37
……仮配置基板、38……伸長されたブロック、39……配
置基板、40……追加されたブロック内配線。
Claims (1)
- 【請求項1】ブロック配置不可領域を有する基板上にブ
ロックを配置するためのブロック配置処理方式におい
て、 前記基板からブロック配置不可領域を除去し、前記基板
の除去されなかった領域を互いに接続することにより仮
基板を設定する仮基板設定手段と、 この仮基板上にブロックを配置するブロック配置手段
と、 この配置手段により前記ブロックが配置された前記仮基
板に前記ブロック配置不可領域を挿入するとともに、前
記ブロックのうち前記ブロック配置不可領域にまたがる
ものを分断するブロック配置不可領域挿入手段と、 このブロック配置不可領域挿入手段により分断された前
記ブロック間を接続するための内部配線を設計する配線
設計手段とを含むことを特徴とするブロック配置処理方
式。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61-265479 | 1986-11-10 | ||
| JP26547986 | 1986-11-10 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS63245940A JPS63245940A (ja) | 1988-10-13 |
| JPH0793358B2 true JPH0793358B2 (ja) | 1995-10-09 |
Family
ID=17417745
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62281324A Expired - Lifetime JPH0793358B2 (ja) | 1986-11-10 | 1987-11-06 | ブロック配置処理方式 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4964057A (ja) |
| JP (1) | JPH0793358B2 (ja) |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5159682A (en) * | 1988-10-28 | 1992-10-27 | Matsushita Electric Industrial Co., Ltd. | System for optimizing a physical organization of elements of an integrated circuit chip through the convergence of a redundancy function |
| US5224057A (en) * | 1989-02-28 | 1993-06-29 | Kabushiki Kaisha Toshiba | Arrangement method for logic cells in semiconductor IC device |
| US5109479A (en) * | 1989-09-07 | 1992-04-28 | Amp-Akzo Corporation | Method of designing three dimensional electrical circuits |
| JPH03166713A (ja) * | 1989-11-27 | 1991-07-18 | Mitsubishi Electric Corp | 電子ビーム露光方法 |
| JPH0456341A (ja) * | 1990-06-26 | 1992-02-24 | Matsushita Electric Ind Co Ltd | 半導体集積回路のレイアウト方法 |
| US5485396A (en) * | 1991-06-28 | 1996-01-16 | Vlsi Technology, Inc. | Symbolic routing guidance for wire networks in VLSI circuits |
| US5493687A (en) | 1991-07-08 | 1996-02-20 | Seiko Epson Corporation | RISC microprocessor architecture implementing multiple typed register sets |
| US5539911A (en) | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| JP3220250B2 (ja) * | 1992-01-09 | 2001-10-22 | 株式会社東芝 | セル自動配置方法 |
| DE69311330T2 (de) | 1992-03-31 | 1997-09-25 | Seiko Epson Corp., Tokio/Tokyo | Befehlsablauffolgeplanung von einem risc-superskalarprozessor |
| US5371684A (en) * | 1992-03-31 | 1994-12-06 | Seiko Epson Corporation | Semiconductor floor plan for a register renaming circuit |
| EP0638183B1 (en) | 1992-05-01 | 1997-03-05 | Seiko Epson Corporation | A system and method for retiring instructions in a superscalar microprocessor |
| US5347465A (en) * | 1992-05-12 | 1994-09-13 | International Business Machines Corporation | Method of integrated circuit chips design |
| US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
| WO1994016384A1 (en) | 1992-12-31 | 1994-07-21 | Seiko Epson Corporation | System and method for register renaming |
| US5859781A (en) * | 1994-09-13 | 1999-01-12 | Lsi Logic Corporation | Method and apparatus for computing minimum wirelength position (MWP) for cell in cell placement for integrated circuit chip |
| US5953236A (en) * | 1995-10-31 | 1999-09-14 | Vlsi Technology, Inc. | Method and apparatus for implementing engineering change orders in integrated circuit designs |
| US5808900A (en) * | 1996-04-30 | 1998-09-15 | Lsi Logic Corporation | Memory having direct strap connection to power supply |
| JP4004105B2 (ja) * | 1997-07-24 | 2007-11-07 | 富士通株式会社 | 電源回路図の設計システム |
| JP2000067102A (ja) * | 1998-08-18 | 2000-03-03 | Hitachi Ltd | 半導体集積回路の階層配線方法 |
| US6574780B2 (en) | 1999-10-29 | 2003-06-03 | International Business Machines Corporation | Method and system for electronically modeling and estimating characteristics of a multi-layer integrated circuit chip carrier |
| US6536028B1 (en) | 2000-03-14 | 2003-03-18 | Ammocore Technologies, Inc. | Standard block architecture for integrated circuit design |
| US6467074B1 (en) | 2000-03-21 | 2002-10-15 | Ammocore Technology, Inc. | Integrated circuit architecture with standard blocks |
| DE10159699A1 (de) * | 2001-12-05 | 2003-06-26 | Infineon Technologies Ag | Verfahren zur Herstellung einer integrierten Halbleiterschaltung |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR1502554A (ja) * | 1965-12-01 | 1968-02-07 | ||
| US3681782A (en) * | 1970-12-02 | 1972-08-01 | Honeywell Inf Systems | Machine process for positioning interconnected components to minimize interconnecting line length |
| US4593363A (en) * | 1983-08-12 | 1986-06-03 | International Business Machines Corporation | Simultaneous placement and wiring for VLSI chips |
| US4630219A (en) * | 1983-11-23 | 1986-12-16 | International Business Machines Corporation | Element placement method |
| JPS60114968A (ja) * | 1983-11-28 | 1985-06-21 | Hitachi Ltd | 推論システム |
| US4686629A (en) * | 1984-05-10 | 1987-08-11 | Rca Corporation | Logic cell placement method in computer-aided-customization of universal arrays and resulting integrated circuit |
| US4754408A (en) * | 1985-11-21 | 1988-06-28 | International Business Machines Corporation | Progressive insertion placement of elements on an integrated circuit |
-
1987
- 1987-11-06 JP JP62281324A patent/JPH0793358B2/ja not_active Expired - Lifetime
-
1989
- 1989-07-27 US US07/386,002 patent/US4964057A/en not_active Expired - Fee Related
Non-Patent Citations (1)
| Title |
|---|
| 電子材料Vol.25No.7(1986)P.48−52 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS63245940A (ja) | 1988-10-13 |
| US4964057A (en) | 1990-10-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0793358B2 (ja) | ブロック配置処理方式 | |
| US5072402A (en) | Routing system and method for integrated circuits | |
| JP2626153B2 (ja) | レイアウトのコンパクション方法 | |
| US6609242B1 (en) | Automated creation of power distribution grids for tiled cell arrays in integrated circuit designs | |
| JPH05102305A (ja) | 半導体集積回路の自動レイアウト方法 | |
| JPH05109890A (ja) | 回路配列組込み方法 | |
| US5341310A (en) | Wiring layout design method and system for integrated circuits | |
| US5551014A (en) | Method and apparatus for designing integrated circuits according to master slice approach | |
| JPH08212241A (ja) | 半導体集積回路用マスクパターンまたはウエハ上への直接描画パターンの設計方法,及びそれらのデザインルール確認方法 | |
| US5206815A (en) | Method for arranging modules in an integrated circuit | |
| JPH0143345B2 (ja) | ||
| US5818722A (en) | Method of placing and extracting modules | |
| JP2001351984A (ja) | ダミーパターンのレイアウト決定方法、それを用いた半導体装置およびその製造方法 | |
| Tien et al. | GALA-an automatic layout system for high density CMOS gate arrays | |
| JP2535823B2 (ja) | 階層的パタ―ンレイアウト方法 | |
| JPH05250441A (ja) | 配線設計方法 | |
| JP2004148475A (ja) | 配置構造の複雑さを制御可能な素材の配置及び切出し方法。 | |
| Maurer | Automatic routing of integrated circuit connections: a tutorial | |
| EP0273261A2 (en) | A method of routing connections among blocks on a carrier | |
| JPH02132561A (ja) | 自動配線方式 | |
| JPH07122648A (ja) | 配線経路処理方法 | |
| Cadman | Design of printed circuit board layouts using graph theoretic methods | |
| JP2003345847A (ja) | 半導体装置の回路設計支援装置およびレイアウト変更方法 | |
| JPH033349A (ja) | 半導体集積回路の自動配線方法 | |
| JPH06325129A (ja) | レイアウトパターン設計装置 |