JPH0561940A - ブロツクの配置処理方式 - Google Patents
ブロツクの配置処理方式Info
- Publication number
- JPH0561940A JPH0561940A JP3225472A JP22547291A JPH0561940A JP H0561940 A JPH0561940 A JP H0561940A JP 3225472 A JP3225472 A JP 3225472A JP 22547291 A JP22547291 A JP 22547291A JP H0561940 A JPH0561940 A JP H0561940A
- Authority
- JP
- Japan
- Prior art keywords
- clock
- net
- virtual
- blocks
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【目的】複数のクロックネット間でのクロックスキュウ
を低減し回路制約を満足する配置結果を自動的に得る。 【構成】クロックネット検出手段103と、クロックネ
ットにつながるブロックのうちロード側のブロック間だ
けに新たに仮想ネットを発生する仮想ネット発生手段1
04と、仮想ネットに重みを与える重み設定手段105
と、発生された複数の仮想ネットの重心をその属するク
ロックドライバから等距離の位置に分散させて固定する
仮想ネット重心固定手段106と、重みを反映して個々
のブロックを配置するブロック配置手段107とを有す
ることを特徴とするブロックの配置処理方式。 【効果】今後の回路の高速化に伴うクロック周期の短縮
に不可欠なクロックスキュウの低減に効果がある。
を低減し回路制約を満足する配置結果を自動的に得る。 【構成】クロックネット検出手段103と、クロックネ
ットにつながるブロックのうちロード側のブロック間だ
けに新たに仮想ネットを発生する仮想ネット発生手段1
04と、仮想ネットに重みを与える重み設定手段105
と、発生された複数の仮想ネットの重心をその属するク
ロックドライバから等距離の位置に分散させて固定する
仮想ネット重心固定手段106と、重みを反映して個々
のブロックを配置するブロック配置手段107とを有す
ることを特徴とするブロックの配置処理方式。 【効果】今後の回路の高速化に伴うクロック周期の短縮
に不可欠なクロックスキュウの低減に効果がある。
Description
【0001】
【産業上の利用分野】本発明の、LSI、PWB等のブ
ロックを配置するブロックの配置処理方式に関する。
ロックを配置するブロックの配置処理方式に関する。
【0002】
【従来の技術】従来、この種の配置処理方式において
は、配置単位となるブロック間の接続関係を表わす論理
接続情報に基づいて配置処理を行なっていた。クロック
スキュウの低減を目的として特定のブロックを近接して
配置したい場合にも、それらブロック間のネットに重み
を与えて同一ネット内のブロックを近接させることは行
なわれていた。(参考文献:「論理装置のCAD情報処
理学会」昭和56年3月20日発行)従来の技術を、一
般的な論理接続関係例を示す図2により、具体的に説明
する。
は、配置単位となるブロック間の接続関係を表わす論理
接続情報に基づいて配置処理を行なっていた。クロック
スキュウの低減を目的として特定のブロックを近接して
配置したい場合にも、それらブロック間のネットに重み
を与えて同一ネット内のブロックを近接させることは行
なわれていた。(参考文献:「論理装置のCAD情報処
理学会」昭和56年3月20日発行)従来の技術を、一
般的な論理接続関係例を示す図2により、具体的に説明
する。
【0003】図2において、ブロック201をクロック
ドライバとする。ネット218〜221がスキュウの制
限の厳しいクロックネットであり、ブロック201のソ
ース側端子(クロック端子)N04からブロック202
〜205の各ロード側端子(クロック入力端子)H02
〜H05までの配線、ソース側端子N03からブロック
206〜209の各ロード側端子H06〜H09までの
配線、ソース側端子N02からブロック210〜213
の各ロード側端子H10〜H13までの配線、ソース側
端子N01からブロック214〜217の各ロード端子
H14〜H17までの配線についてそれらの配線長の差
を小さくする必要がある場合を例に説明する。
ドライバとする。ネット218〜221がスキュウの制
限の厳しいクロックネットであり、ブロック201のソ
ース側端子(クロック端子)N04からブロック202
〜205の各ロード側端子(クロック入力端子)H02
〜H05までの配線、ソース側端子N03からブロック
206〜209の各ロード側端子H06〜H09までの
配線、ソース側端子N02からブロック210〜213
の各ロード側端子H10〜H13までの配線、ソース側
端子N01からブロック214〜217の各ロード端子
H14〜H17までの配線についてそれらの配線長の差
を小さくする必要がある場合を例に説明する。
【0004】従来は、クロックネット内のブロックを近
接して配置させるためのそのネット218〜221に重
みを与えてその重みを反映した配置処理を行なう。する
と、例えば図7に示すような同一ネット内ブロックが近
接して配置された配置結果が得られ、配線処理により配
線経路222、223、224、225が得られる。こ
こでは簡単のため、ロード側ブロックの物理的な大きさ
が同じてあるものとする。
接して配置させるためのそのネット218〜221に重
みを与えてその重みを反映した配置処理を行なう。する
と、例えば図7に示すような同一ネット内ブロックが近
接して配置された配置結果が得られ、配線処理により配
線経路222、223、224、225が得られる。こ
こでは簡単のため、ロード側ブロックの物理的な大きさ
が同じてあるものとする。
【0005】この配置結果では、確かに重みによって同
一ネット内のブロックが寄っているが、クロックスキュ
ウを考えた場合、クロックドライバ201のソース側端
子N02からブロック211のロード側端子H11に致
る最短のパスと、ソース側端子N02からブロック21
3のロード側端子H13に致る最長のパスとの差は大き
く、満足のゆくものではない。
一ネット内のブロックが寄っているが、クロックスキュ
ウを考えた場合、クロックドライバ201のソース側端
子N02からブロック211のロード側端子H11に致
る最短のパスと、ソース側端子N02からブロック21
3のロード側端子H13に致る最長のパスとの差は大き
く、満足のゆくものではない。
【0006】
【発明が解決しようとする課題】上述した従来のブロッ
クの配置処理方式では、論理接続情報のみに従って配置
を行なうため、スキュウに制約のあるクロックネットに
ついてのクロックスキュウを低減する操作が困難である
という欠点がある。
クの配置処理方式では、論理接続情報のみに従って配置
を行なうため、スキュウに制約のあるクロックネットに
ついてのクロックスキュウを低減する操作が困難である
という欠点がある。
【0007】さらに、クロックスキュウ低減を目的とし
てネット単位に重みを与えてブロックを近接させる方法
も、多数のクロック端子を持つクロックドライバにおい
ては、重みによってネット内のブロックは引き寄せられ
るが、複数のクロックネットの重みによってクロックド
ライバ周辺に引き寄せられるブロックの数が多すぎる
と、物理的なブロックの大きさに制約を受けるためにソ
ース−ロード間の線長のばらつきを抑えて配置すること
ができなくなり、クロックスキュウの回路制約を満たす
配置結果が必ずしも得られないという欠点がある。
てネット単位に重みを与えてブロックを近接させる方法
も、多数のクロック端子を持つクロックドライバにおい
ては、重みによってネット内のブロックは引き寄せられ
るが、複数のクロックネットの重みによってクロックド
ライバ周辺に引き寄せられるブロックの数が多すぎる
と、物理的なブロックの大きさに制約を受けるためにソ
ース−ロード間の線長のばらつきを抑えて配置すること
ができなくなり、クロックスキュウの回路制約を満たす
配置結果が必ずしも得られないという欠点がある。
【0008】
【課題を解決するための手段】本発明の方式は、LS
I、PWB等の上に配置単位となるブロックを配置する
ブロックの配置処理方式において、ブロック間の接続情
報や、ブロック形状、属性、配置領域等の物理情報を入
力する入力手段と、クロックドライバの名称の指定ある
いはネット名の指定等によって指定された、スキュウを
小さくする必要のあるクロック系のクロックネット接続
を検出するクロックネット検出手段と、前記クロックネ
ット検出手段によって検出されたクロックネットにつな
がるブロックのうちロード側のブロック間だけに新たに
仮想ネットを発生する仮想ネット発生手段と、前記仮想
ネット発生手段によって発生された仮想ネットに重みを
与える重み設定手段と、前記仮想ネット発生手段によっ
て発生された複数の仮想ネットの重心をその属するクロ
ックドライバから等距離の位置に分散させて固定する仮
想ネット重心固定手段と、重みを反映して個々のグロッ
クを配置するブロック配置手段と、配置結果を出力する
出力手段とを有することを特徴とする。
I、PWB等の上に配置単位となるブロックを配置する
ブロックの配置処理方式において、ブロック間の接続情
報や、ブロック形状、属性、配置領域等の物理情報を入
力する入力手段と、クロックドライバの名称の指定ある
いはネット名の指定等によって指定された、スキュウを
小さくする必要のあるクロック系のクロックネット接続
を検出するクロックネット検出手段と、前記クロックネ
ット検出手段によって検出されたクロックネットにつな
がるブロックのうちロード側のブロック間だけに新たに
仮想ネットを発生する仮想ネット発生手段と、前記仮想
ネット発生手段によって発生された仮想ネットに重みを
与える重み設定手段と、前記仮想ネット発生手段によっ
て発生された複数の仮想ネットの重心をその属するクロ
ックドライバから等距離の位置に分散させて固定する仮
想ネット重心固定手段と、重みを反映して個々のグロッ
クを配置するブロック配置手段と、配置結果を出力する
出力手段とを有することを特徴とする。
【0009】
【実施例】図1に本発明の一実施例であるクロックスキ
ュウの小さい配置結果を得る配置処理方式のブロック図
を示し、図2を使用して具体的に説明する。
ュウの小さい配置結果を得る配置処理方式のブロック図
を示し、図2を使用して具体的に説明する。
【0010】本発明の配置処理方式では、クロックドラ
イバの名称の指定あるいはネット名の指定等によってク
ロックスキュウを小さくする必要のあるクロックネット
が指定されると、まず図1に示すクロックネット検出手
段103により、図2に示すネット218〜221が検
出される。
イバの名称の指定あるいはネット名の指定等によってク
ロックスキュウを小さくする必要のあるクロックネット
が指定されると、まず図1に示すクロックネット検出手
段103により、図2に示すネット218〜221が検
出される。
【0011】次に、仮想ネット発生手段104によって
図3に示すように、各クロックネットのロード側ブロッ
ク202〜205間、206〜209間、210〜21
3間、214〜217間にそれぞれ仮想ネット226、
227、228、229を発生する。次に、重み設定手
段105が、それらの仮想ネットに重みを与える。
図3に示すように、各クロックネットのロード側ブロッ
ク202〜205間、206〜209間、210〜21
3間、214〜217間にそれぞれ仮想ネット226、
227、228、229を発生する。次に、重み設定手
段105が、それらの仮想ネットに重みを与える。
【0012】次に、仮想ネット重心固定手段106が、
上述した仮想ネットの重心をクロックドライバ201の
各出力端子N01、N02、N03、N04から等距離
で互いに十分な間隔が保たれるような位置に、例えば図
4に示すネット重心230、231、232、233の
ように分散して固定する。
上述した仮想ネットの重心をクロックドライバ201の
各出力端子N01、N02、N03、N04から等距離
で互いに十分な間隔が保たれるような位置に、例えば図
4に示すネット重心230、231、232、233の
ように分散して固定する。
【0013】次に、ブロック配置手段107により、仮
想ネットの重みを反映した配置処理が行なわれ固定した
ネット重心の周りに同一ネット内のロード側ブロックが
集まるように配置される。これにより、各クロックネッ
ト内のロード側ブロック群と各クロック出力端子との間
の距離がほぼ等距離となり、図5に示すような目的とす
るクロックネットのクロックスキュウの小さい配置結果
を得る。
想ネットの重みを反映した配置処理が行なわれ固定した
ネット重心の周りに同一ネット内のロード側ブロックが
集まるように配置される。これにより、各クロックネッ
ト内のロード側ブロック群と各クロック出力端子との間
の距離がほぼ等距離となり、図5に示すような目的とす
るクロックネットのクロックスキュウの小さい配置結果
を得る。
【0014】その後、配線処理を行ない、図6に示すよ
うな配線経路234、235、236、237を得る。
従来法に比べて、クロックネット218〜221のクロ
ックスキュウは小さくなっている。この例では全クロッ
クネットのソース側端子−ロード側端子間の線長は等し
いのでスキュウ0である。
うな配線経路234、235、236、237を得る。
従来法に比べて、クロックネット218〜221のクロ
ックスキュウは小さくなっている。この例では全クロッ
クネットのソース側端子−ロード側端子間の線長は等し
いのでスキュウ0である。
【0015】
【発明の効果】以上説明したように本発明は、指定され
たクロックネットに関してロード側のブロック間に仮想
ネットを発生して自動で重みを与え、それら複数の仮想
ネットの重心を各クロック端子から等距離の位置に固定
して各クロックネット内のブロックをその仮想ネットの
重心の回りに近接して配置させることができるため、複
数のクロックネット間でのクロックスキュウを低減し回
路制約を満足する配置結果を自動で得ることができると
いう効果がある。すなわち、今後の回路の高速化に伴う
クロック周期の短縮に不可欠なクロックスキュウの低減
に効果がある。
たクロックネットに関してロード側のブロック間に仮想
ネットを発生して自動で重みを与え、それら複数の仮想
ネットの重心を各クロック端子から等距離の位置に固定
して各クロックネット内のブロックをその仮想ネットの
重心の回りに近接して配置させることができるため、複
数のクロックネット間でのクロックスキュウを低減し回
路制約を満足する配置結果を自動で得ることができると
いう効果がある。すなわち、今後の回路の高速化に伴う
クロック周期の短縮に不可欠なクロックスキュウの低減
に効果がある。
【図1】本発明の一実施例であるクロックスキュウの小
さい配置結果を得る配置処理方式のブロック図である。
さい配置結果を得る配置処理方式のブロック図である。
【図2】本発明および従来例を説明するための論理接続
関係例である。
関係例である。
【図3】図1に示す仮想ネット発生手段104によっ
て、各クロックネットのロード側ブロック202〜20
5間、206〜209間、210〜213間、214〜
217間に発生された仮想ネット226、227、22
8、229を表わしている。
て、各クロックネットのロード側ブロック202〜20
5間、206〜209間、210〜213間、214〜
217間に発生された仮想ネット226、227、22
8、229を表わしている。
【図4】図1に示す仮想ネット重心固定手段106によ
って固定された仮想ネットの重心の例230、231、
232、233である。
って固定された仮想ネットの重心の例230、231、
232、233である。
【図5】各クロックネット内のロード側ブロック群を各
クロック出力端子から等距離の分散した点群の周囲に近
接して配置した目的とするクロックネットのクロックス
キュウの小さい配置結果を例である。
クロック出力端子から等距離の分散した点群の周囲に近
接して配置した目的とするクロックネットのクロックス
キュウの小さい配置結果を例である。
【図6】その後の配線処理により求められたクロックネ
ット218〜221の配線経路の例234、235、2
37を表わしている。
ット218〜221の配線経路の例234、235、2
37を表わしている。
【図7】従来の手法で、図2に示すネット218〜22
1に重みを与えてその重みを反映した配置処理を行なっ
た配線結果の例と、その後の配線処理により得られた配
線経路の例を表わしている。
1に重みを与えてその重みを反映した配置処理を行なっ
た配線結果の例と、その後の配線処理により得られた配
線経路の例を表わしている。
101 制御手段 102 入力手段 103 クロックネット検出手段 104 仮想ネット発生手段 105 重み設定手段 106 仮想ネット重心固定手段 107 ブロック配置手段 108 出力手段 109 論理接続情報 110 クロックネット指定情報 111 物理情報
Claims (1)
- 【請求項1】 LSI、PWB等の上に配置単位となる
ブロックを配置するブロックの配置処理方式において、 ブロック間の接続情報や、ブロック形状、属性、配置領
域等の物理情報を入力する入力手段と、 クロックドライバの名称の指定あるいはネット名の指定
等によって指定された、スキュウを小さくする必要のあ
るクロック系のクロックネット接続を検出するクロック
ネット検出手段と、 前記クロックネット検出手段によって検出されたクロッ
クネットにつながるブロックのうちロード側のブロック
間だけに新たに仮想ネットを発生する仮想ネット発生手
段と、 前記仮想ネット発生手段によって発生された仮想ネット
に重みを与える重み設定手段と、 前記仮想ネット発生手段によって発生された複数の仮想
ネットの重心をその属するクロックドライバから等距離
の位置に分散させて固定する仮想ネット重心固定手段
と、 重みを反映して個々のグロックを配置するブロック配置
手段と、 配置結果を出力する出力手段とを有することを特徴とす
るブロックの配置処理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3225472A JPH0561940A (ja) | 1991-09-05 | 1991-09-05 | ブロツクの配置処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3225472A JPH0561940A (ja) | 1991-09-05 | 1991-09-05 | ブロツクの配置処理方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0561940A true JPH0561940A (ja) | 1993-03-12 |
Family
ID=16829857
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3225472A Pending JPH0561940A (ja) | 1991-09-05 | 1991-09-05 | ブロツクの配置処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0561940A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11443096B2 (en) * | 2020-09-21 | 2022-09-13 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for optimizing floor plan for an integrated circuit |
-
1991
- 1991-09-05 JP JP3225472A patent/JPH0561940A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11443096B2 (en) * | 2020-09-21 | 2022-09-13 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for optimizing floor plan for an integrated circuit |
| US20220382950A1 (en) * | 2020-09-21 | 2022-12-01 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for optimizing floor plan for an integrated circuit |
| US11853675B2 (en) | 2020-09-21 | 2023-12-26 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for optimizing floor plan for an integrated circuit |
| US11893334B2 (en) | 2020-09-21 | 2024-02-06 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for optimizing floor plan for an integrated circuit |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH096463A (ja) | 階層的クロック分配システム及び方法 | |
| Torbey et al. | High-level synthesis of digital circuits using genetic algorithms | |
| JPH07105253A (ja) | データパス回路レイアウト生成システム | |
| Siast et al. | Ringnet: A memory-oriented network-on-chip designed for fpga | |
| JPH0561940A (ja) | ブロツクの配置処理方式 | |
| JP3104746B2 (ja) | クロックツリーレイアウト装置 | |
| Sharma et al. | Development of a place and route tool for the RaPiD architecture | |
| JPH04251961A (ja) | Cadによる回路ブロックの配置設計方式 | |
| JP2790154B2 (ja) | 配線処理方式 | |
| JPH05128214A (ja) | 配線処理方式 | |
| JPH06215071A (ja) | クロック配線設計装置 | |
| JP3693846B2 (ja) | 論理合成システムならびに同システムにおける遅延最適化方法 | |
| JP2817476B2 (ja) | 集積回路の予測配線長計算法 | |
| JP2630078B2 (ja) | 半導体集積回路のレイアウト設計方法 | |
| JPH064621A (ja) | 配線処理方式 | |
| JP2000057197A (ja) | クロックネットのレイアウト設計変更方式 | |
| JP3134838B2 (ja) | ブロック間配線装置 | |
| JP2786017B2 (ja) | 半導体集積回路の製造方法 | |
| JP2000012695A (ja) | 集積回路のレイアウト方法および半導体装置の製造方法 | |
| JPH07152812A (ja) | 自動配置配線方法及び自動配置配線装置 | |
| JP2685566B2 (ja) | 半導体集積回路装置の配線設計方法 | |
| JP2006054348A (ja) | 半導体装置、クロック分配方法及びプログラム | |
| JP2000269349A (ja) | 半導体集積回路及びクロック供給方法 | |
| JPH02298048A (ja) | 自動レイアウトシステム | |
| JPH04344573A (ja) | Cadシステムにおける配線処理方式 |