JPH07210590A - セル配置方法及び半導体装置 - Google Patents

セル配置方法及び半導体装置

Info

Publication number
JPH07210590A
JPH07210590A JP6007024A JP702494A JPH07210590A JP H07210590 A JPH07210590 A JP H07210590A JP 6007024 A JP6007024 A JP 6007024A JP 702494 A JP702494 A JP 702494A JP H07210590 A JPH07210590 A JP H07210590A
Authority
JP
Japan
Prior art keywords
cell
distance
areas
cells
area
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
Application number
JP6007024A
Other languages
English (en)
Inventor
Yoshitaka Uchida
佳孝 内田
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 VLSI Ltd
Fujitsu Ltd
Original Assignee
Fujitsu VLSI Ltd
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 VLSI Ltd, Fujitsu Ltd filed Critical Fujitsu VLSI Ltd
Priority to JP6007024A priority Critical patent/JPH07210590A/ja
Publication of JPH07210590A publication Critical patent/JPH07210590A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 セル間が指定配線長となるように指定された
セルをその指定配線長を実現し得る実現率を考慮した適
切なセル配置領域に割り振る。 【構成】 チップパターンをセル配置領域に分割し(S
1)、セル配置領域をさらに複数の分割子領域に細分
し、各分割子領域の中心点間距離をマンハッタン長で計
算してセル配置領域間の全ての組合せについての距離分
布をヒストグラムで作成する(S2)。ライブラリから
セルを抽出し(S3)、そのセルに指定配線長が指定さ
れていた場合には、先に作成した距離分布のヒストグラ
ムに基づきその指定配線長に対する頻度(度数)をその
指定配線長の実現率としてその頻度が最も高いセル配置
領域を当該セルの割り当てセル配置領域として選択し
(S4〜S7)、すべてのセルに対してセル配置領域へ
の割り当てが完了したら各セルをその割り当て領域内に
配置する(S9〜S12)。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は例えばLSI(大規模集
積回路)等の半導体装置の論理回路設計において、信号
のタイミング合わせ等のためセル間が指定された配線長
となるようにセルを半導体チップ上に配置設定して論理
回路設計を行うセル配置方法及び半導体装置に関するも
のである。
【0002】一般に、半導体装置の設計は、各種設計情
報がマクロ化されたパターンデータを格納するライブラ
リを備えたCAD装置により行われている。半導体装置
の回路設計は、ライブラリに登録された細分化パターン
に基づき半導体チップを想定したチップパターンを複数
の小領域(以下、セル配置領域という)に細分化し、そ
の細分化されたセル配置領域上に論理回路を構成する各
セルを配置設定するレイアウト方法が採られている。
【0003】各セルはまず各セル配置領域に割り振ら
れ、その後各セル配置領域において割り振られたセルが
配線長(ネット長)等の配置条件を考慮しならがら配置
設定される。そのため、配線長が指定されたセルを全て
指定配線長通りに配置設定させるためには、レイアウト
時にセルをどのセル配置領域に割り振るかの選択が重要
となる。
【0004】
【従来の技術】この種の半導体装置の回路設計におい
て、セル間の配線長が指定されたセルをセル配置領域に
割り振る際、どのセル配置領域にセルを割り振れば指定
配線長を満たすことができるかを判定する必要がある。
その判定方法として従来二つの方法が採用されている。
【0005】即ち、一つは各セル配置領域間の距離を、
例えば各セル配置領域内の中心点間のマンハッタン長と
して計算し、その距離と指定配線長とを比較して指定配
線長に一番近い距離であるセル配置領域の組をセルを割
り振るべきセル配置領域として選択する方法である。
【0006】また、一つはセル配置領域間の最短距離と
最長距離とを計算し、その最短距離と最長距離との間の
区間と指定配線長とを比較し、その区間内に指定配線長
が存在すれば、そのセル配置領域の組をセルを割り振る
べきセル配置領域として選択する方法である。
【0007】
【発明が解決しようとする課題】しかし、前者の方法に
よると例えば図12に示すように、セル配置領域A内に
すでに割り振られたセルS1に対して、指定配線長が
「100」に設定されたセルS2をどのセル配置領域に
割り振るかを選択する際に、セルS1が属するセル配置
領域Aとの距離が計算される。その際、セル配置領域A
との距離が、セル配置領域Bでは「70」、セル配置領
域Cでは「130」と計算された場合には、実際にはセ
ル配置領域B,Cのうちどちらにもセルが配置設定でき
るにもかかわらず、どちらにもセルが配置設定できない
と判定されてしまう場合があった。また、セルが配置設
定できると判定されても、セル配置領域A,Bのうちど
ちらのセル配置領域を選択した方が指定配線長「10
0」を満たすために適切なのかの判定ができないという
問題があった。その結果、適切なセル配置領域にセルを
割り振ることができなかった。
【0008】また、後者の方法によると、セル配置領域
間の最短距離と最長距離との間の区間内に指定配線長が
存在すればその区間のどこにでも等しく指定配線長を設
定できる訳ではなく、指定配線長が設定可能な位置はそ
の区間に亘って所定の分布をもつ。例えば、セル配置領
域間の最短距離と最長距離がそれぞれ「50」と「10
0」であって指定配線長が「100」に設定されていた
場合、実際には最長距離「100」付近では指定配線長
「100」を設定できる可能性は極めて低い。通常はそ
の区間の中央値付近ほど指定配線長通りに設定できる可
能性は高く、その区間と設定配線長との単なる比較だけ
からは最適なセル配置領域を決定することができないと
いう問題がある。特にセル配置領域が大きな面積に分割
された場合に問題となり、その指定配線長通りにセルを
配置できなくなる場合が起こるという問題がある。
【0009】本発明は前記の問題点に鑑みてなされたも
のであって、その目的はセル間が指定配線長となるよう
に指定されたセルをその指定配線長を実現し得る実現率
を考慮した適切なセル配置領域に割り振ることができる
セル配置方法及び半導体装置を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
本発明では、論理設計された論理回路を構成する各セル
の結線情報をネットリストとして作成し、該ネットリス
トに基づいて前記各セルを半導体チップ上に配置設定す
るようにしたセル配置方法において、半導体チップ上を
複数のセル配置領域に分割し、該セル配置領域の各組間
に施すことが可能な線の長さの分布を距離分布として計
算し、前記ネットリスト中にセル間が指定配線長となる
ように指定されたセルの組を、前記距離分布から前記指
定配線長の実現率が高いと判断されたセル配置領域の組
にそれぞれ前記指定配線長となる距離を隔して配置設定
するようにした。
【0011】
【作用】従って、セル間が所定配線長となるように予め
論理設計により指定配線長が指定されたセルを配置設定
する場合に、その指定配線長を実現させる可能性が距離
分布から判断され、その指定配線長の実現率が高いセル
配置領域の組が各セルが配置設定されるセル配置領域の
組として決められる。その結果、セルが指定配線長を満
たすようにセル配置領域に配置可能か否かの判断だけで
なく、距離分布により指定配線長の実現率までもが加味
されてセル配置領域が決められるので、各セル配置領域
へのセルの割り振りが適切に行われる。
【0012】
【実施例】
(第1実施例)以下、本発明を具体化した第1実施例を
図1〜図11に従って説明する。
【0013】図8は本発明を適用したCAD装置のシス
テム構成図である。図8に示すように、中央処理装置
(以下、CPUという)1、メモリ2、キーボード(マ
ウス等を含む)3、プリンタ4及びCRT等の表示器5
はシステムバス6により互いに接続されている。CPU
1はメモリ2に記憶された所定のプログラムデータに基
づいて動作するようになっている。メモリ2にはCPU
1が実行する前記プログラムデータとその実行に必要な
各種データが予め記憶されるとともに、当該プログラム
データに基づくCPU1の処理結果等が一時格納される
ようになっている。キーボード3はメモリ2に記憶され
た各種ライブラリから必要なデータを選択して入力した
り、プリンタ4や表示器5に処理結果等の出力命令を入
力するために用いられる。
【0014】メモリ2にはライブラリ及びレイアウトデ
ータベースが設定され、ライブラリ及びレイアウトデー
タベースは、例えば光ディスク等の外部記憶媒体からメ
モリ2に読み込まれてメモリ2に格納されている。ライ
ブラリには予め論理設計された論理回路を構成するセル
やその結線情報がネットリストとして格納され、ネット
リストには例えば信号タンミングの調整等のためセル間
が所定の配線長(ネット長)となるように設定されたセ
ルに対してはその配線長(以下、指定配線長という)の
データも格納されている。また、ライブラリには各種セ
ルの形状及び大きさがセルデータとして格納されてい
る。レイアウトデータベースには後述する距離分布に関
するデータやヒストグラムの座標軸が設定されるととも
に、セルの割り当て領域や配置データ等が格納されるよ
うになっている。
【0015】表示器5を構成するCRT画面上にはセル
を配置設定する下地(ベース)となるチップパターンが
表示され、ライブラリに登録された各セルはネットリス
トに基づいてそのチップパターン上に配置設定されるよ
うになっている。また、CPU1はメモリ2に記憶され
たプログラムデータに基づき図1及び図2にフローチャ
ートで示す処理を実行するようになっている。
【0016】次に前記のように構成されたCAD装置の
作用を図1及び図2に示すフローチャートに従って説明
する。本実施例ではCAD装置によるセルの配置設定に
よりLSI(大規模集積回路)の論理回路設計を行う。
【0017】まず、表示器5を構成するCRT画面上に
チップパターンが表示される。ステップ1(以下、ステ
ップを単に「S」と記す)において、CPU1はチップ
パターン上のセル配置可能領域を複数のセル配置領域に
分割する。例えば図3に示すようにチップパターン7上
にセル配置領域A,B,Cが分割設定される。本実施例
ではセル配置領域A,B,Cは1辺の長さ50の正方形
として設定され、各セル配置領域A,B,Cの位置関係
は図3に示すようになっている。即ち、セル配置領域B
とセル配置領域Cが同図における上下方向に隣接し、セ
ル配置領域Aがセル配置領域Bに対して同図左側に距離
25の間隔をおいて位置している。
【0018】次にS2において、CPU1は各セル配置
領域間に施すことができる配線の長さの分布を表す距離
分布の作成処理を実行する。この距離分布の作成処理は
図2に示す距離分布作成ルーチンにより行われ、CPU
1はS2においてこの距離分布作成ルーチンを実行す
る。即ち、図2に示すように、S21においてCPU1
はセル配置領域A,B,Cのうちから2つのセル配置領
域を抽出する。例えばセル配置領域A,Bが抽出された
とする。次にS22において、CPU1は抽出した1組
のセル配置領域A,Bのそれぞれをさらに複数(本実施
例では4つ)の分割子領域A1〜A4,B1〜B4に細
分する。各分割子領域A1〜A4,B1〜B4の面積は
ほぼ等しく設定され、本実施例では1辺25の正方形に
セル配置領域A,Bが等分される。図4ではセル配置領
域Cも細分割されているが、この段階ではセル配置領域
A,Bのみが細分される。
【0019】次にCPU1は、S23において各分割子
領域A1〜A4,B1〜B4のうちから2つの分割子領
域を抽出し、S24において抽出した1組の分割子領域
の中心点間距離をマンハッタン長として計算する。例え
ば分割子領域A1,B3が抽出された場合には、各分割
子領域A1,B3の中心点間の直線距離のx方向(図4
の左右方向)成分Xは「75」、y方向(同図の上下方
向)成分Yは「25」であるからマンハッタン長による
距離LはX+Yより「100」となる。こうして計算さ
れた分割子領域間の距離LはS25において、CPU1
によりレイアウトデータベースにスタックされる。
【0020】S26において、各分割子領域A1〜A
4,B1〜B4間の距離計算を全ての組合せについて完
了したか否かがCPU1により判断される。CPU1は
距離計算が全ての組合せについて完了した場合にはS2
7に移行し、まだ全ての組合せについて完了していない
場合にはS23に移行する。この段階ではまだ全ての距
離計算が完了していないので、CPU1はS23に移行
し、S23においてまだ抽出されていない組合せの2つ
の分割子領域を抽出する。そして、CPU1は同様にS
24で各分割子領域間の距離計算を行い、S25でその
計算結果をレイアウトデータベースにスタックする。こ
うしてCPU1は各分割子領域A1〜A4,B1〜B4
間の全ての組合せについて距離計算した距離Lがレイア
ウトデータベースにスタックされるまでS23〜S26
を繰り返し実行する。
【0021】そして、S26において、各分割子領域A
1〜A4,B1〜B4間の距離計算が全ての組合せにつ
いて完了したと判断されるとCPU1はS27に移行す
る。この段階でレイアウトデータベースには各分割子領
域A1〜A4,B1〜B4間の距離Lがリストアップさ
れた距離データリストが表1に示すように作成される。
CPU1は以後S27〜S30の処理動作により表1の
距離データリストの各データに基づき各分割子領域A1
〜A4,B1〜B4間の距離分布を表すヒストグラム
(図5に示す)を作成する。
【0022】
【表1】
【0023】即ち、S27において、CPU1はレイア
ウトデータベース内に設定された横軸に距離、縦軸に頻
度(度数)が設定された座標軸に対して、表1の距離L
のデータを集計して距離Lの取り得る区域を所定数に分
割して横軸に適切な区間を設定する。本実施例では「2
5,50,75,…」のように「25」の倍数を区間中
心とし区間幅「25」となるように横軸が区間設定され
ている。そしてS28においてCPU1は、表1の距離
データリストから距離Lを抽出し、さらにS29におい
てその距離Lが該当する区間に頻度「1」分を加算して
ヒストグラムを作成する。S30において、表1の距離
データリストにリストアップされた全ての距離Lについ
て同処理を行ったか否かが判断される。ここで全ての距
離Lについて同処理を完了していた場合にはCPU1は
S31に移行し、この処理が未完了の場合にはS28へ
移行する。そして、CPU1は距離データリストにリス
トアップされた全ての距離Lについてこのヒストグラム
作成処理を完了するまでS27〜S30を繰り返し実行
する。
【0024】そして、S30において、CPU1は表1
の距離データリストにリストアップされた全ての距離L
についてヒストグラム作成処理が完了した判断すると、
S31に移行する。この段階でレイアウトデータベース
には表1の距離データリストにリストアップされた距離
Lに関する距離分布を表す図5に示すヒストグラムが作
成されている。S31ではセル配置領域の全ての組合せ
についてヒストグラムが作成されたか否かがCPU1に
より判断される。CPU1は全ての組合せについてのヒ
ストグラムが作成されていた場合にこの距離分布作成ル
ーチンを終了して図1のS3に復帰し、全ての組合せに
ついてのヒストグラムの作成が未完了の場合にS21に
移行する。この段階ではセル配置領域A,Bについての
ヒストグラムのみ完了しているだけなので、CPU1は
S21に移行する。
【0025】以下、S21でまだ抽出されていない組合
せとなる1組のセル配置領域が抽出され、前記同様にS
21〜S31を実行することにより、各セル配置領域
A,B,C間の全て(6種類)の組合せ(同一のセル配
置領域間も含む)についてのヒストグラムが作成され
る。例えばセル配置領域A,C間の距離分布を示すヒス
トグラムは図6のように作成され、セル配置領域B,C
間の距離分布を示すヒストグラムは図7のように作成さ
れる。こうして全ての組合せについてのヒストグラムが
作成されると、CPU1は当該距離分布作成ルーチンを
終了してS31からS3へ復帰する。以上で各セル配置
領域A,B,C間の全ての組合せについての距離分布の
ヒストグラムが作成された。
【0026】次にCPU1はS3以後の処理でライブラ
リに登録されたセルをセル配置領域A,B,Cに割り当
てて配置設定する処理を実行する。即ち、S3におい
て、CPU1はライブラリに登録されたセル群のうちか
らセルaを1つ抽出する。そしてS4において、抽出し
たセルに対して指定配線長が指定されているか否かが判
断される。セルに対して指定配線長が指定されていない
場合には、S8に移行して比較的セルが未割り当てな領
域をもつセル配置領域が選択される。また、セルに対し
て指定配線長が指定されている場合にはS5に移行し、
S5では当該セルとの間で指定配線長が指定されたもう
一方のセル(以下、関係セルという)が既にいずれかの
セル配置領域に割り当て済みであるか否かが判断され
る。
【0027】ここで当該セルはセル群から最初に抽出さ
れたセルであり、その関係セルは当然未割り当てである
ので、CPU1はS7に移行して指定配線長の実現可能
性が最も高いセル配置領域が選択される。例えば図9に
示すように当該セルaとその関係セルbとの間に指定配
線長「125」が指定されていた場合を考える。この場
合、先に作成した図5〜図7等の6つのヒストグラムか
ら距離「125」を含む区間における頻度をセルを指定
配線長「125」で配置設定できる実現率とし、その実
現率の最も高いすなわち頻度を最も高くし得るセル配置
領域が選択される。
【0028】ここで、図3に示すように1辺「50」の
正方形であるセル配置領域A,B,Cには指定配線長が
「125」となるように1組のセルを配置することは不
可能なので、6つのヒストグラムのうちセル配置領域
A,A間、セル配置領域B,B間及びセル配置領域C,
C間の距離分布を示すヒストグラムには距離「125」
の区間における頻度が「0」となる。また、図5〜図7
に示す各ヒストグラムから分かるように距離「125」
の区間における頻度は、図5のセル配置領域A,B間の
距離分布で頻度「2」、図6のセル配置領域A,C間の
距離分布で頻度「6」、図7のセル配置領域B,C間の
距離分布で頻度「0」となっている。
【0029】従って、セル配置領域Aにセルaを配置し
た場合には、その関係セルbを後でセル配置領域Bに配
置する場合で頻度「2」、セル配置領域Cに配置する場
合で頻度「6」の合計頻度「8」が確保される。また、
セル配置領域Bにセルaを配置した場合には、その関係
セルbを後でセル配置領域Aに配置する場合で頻度
「2」、セル配置領域Cに配置する場合で頻度「0」の
合計頻度「2」が確保される。さらにセル配置領域Cに
セルaを配置した場合には、その関係セルbを後でセル
配置領域Aに配置する場合で頻度「6」、セル配置領域
Bに配置する場合で頻度「0」の合計頻度「6」が確保
される。よって、合計頻度が「8」と最も高くなるセル
配置領域Aにセルaを割り当てることが指定配線長「1
25」の実現率が最も高くなる。従って、この場合には
S7においてセル配置領域Aが選択される。
【0030】その後、CPU1はS7又はS8からS9
に移行し、S9ではS7又はS8において選択したセル
配置領域にセルを割り当てる。そしてS10において、
CPU1はS9でセル配置領域にセルを割り当てたこと
によるその実現率の低下分を考慮してセルが割り当てら
れたセル配置領域に関係する距離分布を更新する。例え
ばS9でセルaがセル配置領域Aに割り当てられた場合
には分割子領域A1〜A4のうちいずれかの分割子領域
にセルaが配置され、例えばセルの割り当て後に行われ
るセルの配置設定時にセルaが分割子領域A2に配置さ
れると仮定すると、その際にはその配置により分割子領
域A2が使用済みとされる。そのことを考慮してセルが
割り当てられたセル配置領域に関係する距離分布が更新
される。例えばセルaが分割子領域A2に配置されると
仮定された場合には、分割子領域A2に関係するデータ
がヒストグラムから削除され、図5及び図6に破線で示
すようにヒストグラムが更新される。
【0031】そして、S11においてライブラリに登録
された全てのセルの割り当てが完了したか否かが判断さ
れる。全てのセルの割り当てが完了していた場合にはC
PU1はS12に移行し、まだ割り当てされていないセ
ルが存在する場合にはS3へ移行する。この段階ではま
だ殆どのセルが割り当てされておらず全てのセルの割り
当てが完了していないのでCPU1はS3へ移行する。
そして、CPU1はS11においてライブラリに登録さ
れた全てのセルの割り当てが完了したと判断されるまで
S3〜S11を繰り返し実行する。
【0032】即ち、S3ではライブラリから次のセルが
抽出され、S4で前記と同様にそのセルに対して指定配
線長が指定されているか否かが判断され、指定配線長が
指定されていない場合にはS8で適切なセル配置領域が
選択される。また、S4でセルに対して指定配線長が指
定されていた場合にはS5に移行し、S5では前記と同
様にその関係セルが割り当て済みであるか否かが判断さ
れる。そして、その関係セルが割り当て済みでない場合
にはS7に移行し、前記と同様に指定配線長の実現率が
最も高いセル配置領域が選択される。その際、セル配置
領域は前回のS10において更新された各距離分布の実
現率に基づき選択される。
【0033】一方、S5で関係セルが割り当て済みであ
った場合には、CPU1はS6に移行し、その関係セル
が割り当てられたセル配置領域に対して指定配線長の実
現率が最も高いセル配置領域が選択される。例えば抽出
されたセルが図9に示したセルbであった場合を考える
と、その指定配線長は「125」と指定され、その関係
セルaはすでにセル配置領域Aに割り当てられ済みであ
る。この場合、前回のS10で更新されたセル配置領域
Aに関係する3つのヒストグラムから距離「125」を
含む区間の頻度を最も高くなっているセル配置領域Aと
の組合せのセル配置領域が選択される。
【0034】例えば更新後の距離分布が図5及び図6に
破線で示すヒストグラムであった場合、距離「125」
を含む区間における頻度は、図5のセル配置領域A,B
間の距離分布では頻度「2」、図6のセル配置領域A,
C間の距離分布では頻度「4」となっている。また、セ
ル配置領域A,A間の距離分布では前述したように頻度
「0」である。従って、関係セルaがセル配置領域Aに
すでに割り当て済みの場合にはセル配置領域Aとの間の
距離分布の頻度が指定配線長「125」において「4」
と最も高くし得るセル配置領域Cが抽出されたセルbの
割り当て領域として選択される。
【0035】こうしてS9ではS6〜S8のうちいずれ
かで選択されたセル配置領域に当該セルが割り当てら
れ、S10でセルが割り当てられたセル配置領域に関係
する距離分布が更新される。そして、CPU1はこのS
3〜S11の処理を繰り返し、S11でライブラリに登
録された全てのセルの割り当てが完了したと判断される
とS12に移行する。S12において、CPU1は各セ
ル配置領域A,B,Cに割り当てられた全てのセルをそ
の割り当てられたセル配置領域内に配置する。こうして
全てのセルはセル配置領域内に配置され、指定配線長が
指定されたセルの組はその距離が指定配線長とほぼ一致
するように配置される。
【0036】以上詳述したように本実施例によれば、チ
ップパターン7を複数のセル配置領域A,B,Cに分割
設定し、セル配置領域A,B,Cをさらに複数の分割子
領域A1〜A4,B1〜B4,C1〜C4に細分化し、
各分割子領域の中心点間の距離をマンハッタン長で計算
し、その計算結果に基づいて距離分布を示すヒストグラ
ムを作成した。そして、距離分布のヒストグラムに基づ
き指定配線長に対応する区間の頻度をその指定配線長の
実現率として判定し、その実現率が高いと判定されたセ
ル配置領域にセルを割り当てるようにした。その結果、
指定配線長を実現させる実現率を考慮してセルを配置す
べきセル配置領域を選択することができる。そして、こ
うして選択されたセル配置領域では指定配線長を満たし
得るセルの配置許容領域が比較的に広いので、そのセル
配置領域内でセルの配置位置を適宜に選択するなどし
て、セルを割り当てられたセル配置領域内に指定配線長
通りにほぼ確実に配置することができる。
【0037】また、距離分布における距離を配線経路を
辿った長さにほぼ等しいマンハッタン長としたので、距
離分布は各セル配置領域間に設定可能な配線長の分布と
ほぼ一致するため、より一層適切なセル配置領域を選択
することができる。さらに、セルをセル配置領域に割り
当てた後に、そのセルの割り当てによる指定配線長の実
現率の低下を考慮して距離分布を更新するようにしたの
で、セルが割り当てれた後もセルのセル配置領域への適
切な割り当てを保証することができる。 (第2実施例)以下、本発明を具体化した第2実施例を
図10及び図11に従って説明する。本実施例では前記
第1実施例で求めた各セル配置領域間の距離分布をヒス
トグラムとしたが、本実施例では距離分布を確率分布関
数とした点が前記第1実施例と異なっている。尚、本実
施例において前記第1実施例と同様の構成については同
一の符号を付して説明を省略し、特に異なった点につい
てのみ説明する。
【0038】本実施例ではCPU1が実行する処理動作
のうち図2に示す距離分布作成ルーチンのうちS27〜
S30の処理が前記第1実施例と異なっている。即ち、
図2のS21〜S26の処理で抽出された1組のセル配
置領域間の距離に関する度数分布表(即ち、表1の距離
データリスト)が作成され、この度数分布表に基づいて
正規分布関数N(μ,σ2 )を求める。まずS21〜S
26の処理で求めた表1の度数分布表から距離Lの平均
μと標準偏差σをCPU1が算出する。
【0039】例えばセル配置領域A,B間の距離に関す
る表1の度数分布表から平均μが「87.5」、分散s
2 が「500」、標準偏差σ(=√(s2 ))が「2
2.4」と算出される。また、セル配置領域A,C間の
距離に関する度数分布表から平均μが「125.5」、
分散s2 が「667」、標準偏差σ(=√(s2 ))が
「25.8」と算出される。
【0040】算出された平均μと標準偏差σにより各セ
ル配置領域A,B,C間の組合せ毎に正規分布関数N
(μ,σ2 )が求められ、レイアウトデータベースに設
定された座標軸にそのグラフが作成される。例えばセル
配置領域A,B間の距離に関する正規分布関数N(μ,
σ2 )のグラフは図10に実線で示すように作成され、
セル配置領域A,C間の距離に関する正規分布関数N
(μ,σ2 )のグラフは図11に実線で示すように作成
される。そして、これらのグラフに基づき図1のS3以
降の処理の実行で、指定配線長に対応する確率が指定配
線長の実現率として適切なセル配置領域が選択される。
このとき指定配線長に対して所定の許容範囲を設け、許
容範囲内での実現率に基づき適切なセル配置領域を選択
することもできる。尚、図10及び図11の検定結果に
偏りが見られるのは標本数が少ないことに起因し、セル
配置領域をもう少し細かく分割して標本数を多くするこ
とにより解消される。
【0041】また、メモリ2に予め標準正規分布表に準
ずるデータを記憶し、そのデータに基づき各セル配置領
域A,B,C間の組合せ毎に指定配線長の実現可能性を
判断する表2及び表3に示すような距離区間と実現率と
の関係を示すリストを作成し、各リストに基づき適切な
セル配置領域を選択することもできる。ここで、表2及
び表3はいずれも指定配線長が「125」に指定された
場合の指定配線長の実現率を示すリストであり、それぞ
れセル配置領域A,B間及びセル配置領域A,C間の各
距離Lに関するリストである。
【0042】
【表2】
【0043】
【表3】
【0044】従って、本実施例によればセル配置領域を
細分した分割子領域の中心点間の距離を各セル配置領域
の組合せ毎に計算し、その距離の度数分布表のデータに
基づき統計学的手法を用いて確率分布関数詳しくは正規
分布関数のグラフを作成し、そのグラフに基づいて指定
配線長の実現率の判定を行った。また、他の手法として
距離の度数分布表のデータに基づき標準正規分布表に準
ずるデータを用いて距離区間(階級)と実現率との関係
を示すリストを作成し、そのリストに基づいて指定配線
長の実現率の判定を行った。その結果、セル配置領域を
細かく細分して分割子領域数を多くして度数分布表のデ
ータ数を多くしなくとも前記の統計学的手法により正確
な距離分布を求めることができ、ひいては指定配線長に
対する正確な実現率を推定することができる。従って、
指定配線長が指定された各セルを一層適切なセル配置領
域内に割り当てることができる。その他、前記第1実施
例と同様の効果が得られる。
【0045】尚、本発明は上記実施例に限定されるもの
ではなく、発明の趣旨を逸脱しない範囲で例えば次のよ
うに変更することができる。 (1)セル配置領域を分割子領域に細分化する分割数は
4つに限定されず、セルのサイズ形状や距離分布の精度
を考慮して4つ以外の適宜な数に変更することができ
る。
【0046】(2)上記各実施例ではセル配置領域を複
数の分割子領域に細分し、各分割子領域の中心点間の距
離を測定してその距離に関する距離分布を作成したが、
セル配置領域を細分せずセル配置領域内に平均的に複数
の点を設定し、それらの点間距離に基づき距離分布を作
成してもよい。
【0047】(3)上記各実施例では距離を分割子領域
の中心点間のマンハッタン長として計算したが、マンハ
ッタン長に限定されない。例えば直線距離としてもよ
い。また、距離は分割子領域の中心点間でなく、分割子
領域内の所定点や分割子領域間の最長距離と最短距離と
の平均長としてもよい。
【0048】(4)前記各実施例では始めに全てのセル
配置領域間の距離分布を計算したが、指定配線長が指定
されたセルの割り当て時に距離分布計算し、当該セルに
関連する距離分布のみを計算するようにしてもよい。
【0049】(5)前記第2実施例において、正規分布
関数以外の確率分布関数を用いてもよい。例えば公知の
確率分布関数だけでなく、度数分布表のデータを横軸に
距離、縦軸に度数を設定した座標軸上にプロットし、そ
のプロットした点を結んだ曲線を0〜無限大までの積分
値が「1」となるように修正した関数を確率分布関数と
してもよい。この場合、度数分布表のデータをプロット
した点を結ぶ方法は数値計算法により行うとより正確と
なる。
【0050】(6)前記各実施例ではセルのセル配置領
域への割り当てが完了後に、各セル配置領域内で割り当
てセルを指定配線長を考慮しながら配置設定したが、割
り当てをせず直接セルをセル配置領域内の所定位置に配
置設定してもよい。
【0051】(7)CMOSゲートアレイやエンベッデ
ッドアレイ等の論理回路設計に本発明を適用してもよ
い。
【0052】
【発明の効果】以上詳述したように請求項1に記載の発
明によれば、各セル配置領域間に施し得る線の長さの分
布を距離分布として計算し、指定配線長が指定されたセ
ルの組を、距離分布から指定配線長の実現可能性が高い
と判断されたセル配置領域の組にそれぞれ割り振るよう
にしたので、指定配線長が指定されたセルを適切なセル
配置領域に割り振ることができるという優れた効果を奏
する。
【0053】また、請求項2に記載の発明によれば、セ
ル配置領域を複数の分割子領域に細分し、各分割子領域
間の全ての組合せについての距離に基づきセル配置領域
間の距離分布を求めるようにしたので、距離分布を計算
により比較的簡単に求めることができる。
【0054】請求項3に記載の発明によれば、距離分布
を距離データに基づくヒストグラムとしたので、割り当
てセル配置領域を決定する計算処理を比較的簡単にする
ことができる。
【0055】請求項4及び請求項5に記載の発明によれ
ば、距離分布を距離データに基づく確率分布関数とした
ので、少ない標本数からより正確な距離分布を得ること
ができる。
【0056】さらに請求項6に記載の発明によれば、距
離分布における距離を配線経路を辿った長さにほぼ等し
くなるマンハッタン長としたので、距離分布は各セル配
置領域間に設定可能な配線長の分布とほぼ一致するため
一層適切なセル配置領域を選択することができる。
【0057】また、請求項7に記載の発明によれば、セ
ルをセル配置領域に割り振った後に、そのセルの割り振
りによる指定配線長の実現率の低下を考慮して距離分布
を更新するようにしたので、セルが割り振られた後も正
確なセルの割り振りを保証することができるという優れ
た効果を奏する。
【図面の簡単な説明】
【図1】本発明を具体化した第1実施例のCAD装置を
構成するCPUが実行するフローチャートである。
【図2】同じく距離分布作成ルーチンのフローチャート
である。
【図3】セル配置領域を示す平面図である。
【図4】同じく平面図である。
【図5】セル配置領域A,B間の距離分布を示すヒスト
グラムである。
【図6】セル配置領域A,C間の距離分布を示すヒスト
グラムである。
【図7】セル配置領域B,C間の距離分布を示すヒスト
グラムである。
【図8】CAD装置のシステム構成を示す模式図であ
る。
【図9】セルと指定配線長を示す模式図である。
【図10】第2実施例におけるセル配置領域A,B間の
距離分布を示す正規分布図である。
【図11】セル配置領域A,C間の距離分布を示す正規
分布図である。
【図12】従来のセル配置領域を示す平面図である。
【符号の説明】
7 半導体チップとしてのチップパターン A,B,C セル配置領域 a,b セル A1〜A4,B1〜B4,C1〜C4 分割子領域

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 論理設計された論理回路を構成する各セ
    ルの結線情報をネットリストとして作成し、該ネットリ
    ストに基づいて前記各セルを半導体チップ(7)上に配
    置設定するようにしたセル配置方法において、 半導体チップ(7)上を複数のセル配置領域(A,B,
    C)に分割し、該セル配置領域(A,B,C)の各組間
    に施すことが可能な線の長さの分布を距離分布として計
    算し、前記ネットリスト中にセル間が指定配線長となる
    ように指定されたセルの組(a,b)を、前記距離分布
    から前記指定配線長の実現率が高いと判断されたセル配
    置領域の組(A,C)にそれぞれ前記指定配線長となる
    距離を隔して配置設定するようにしたことを特徴とする
    セル配置方法。
  2. 【請求項2】 前記セル配置領域(A,B,C)を複数
    の分割子領域(A1〜A4,B1〜B4,C1〜C4)
    に細分し、前記セル配置領域(A,B,C)間の距離分
    布を、一方のセル配置領域内の分割子領域と、他方のセ
    ル配置領域内の分割子領域との全ての組合せについて分
    割子領域(A1〜A4,B1〜B4,C1〜C4)間の
    距離を計算した距離データに基づき求めたことを特徴と
    する請求項1に記載のセル配置方法。
  3. 【請求項3】 前記距離分布を前記距離データに基づき
    作成したヒストグラムとしたことを特徴とする請求項2
    に記載のセル配置方法。
  4. 【請求項4】 前記距離分布を前記距離データに基づき
    作成した確率分布関数としたことを特徴とする請求項2
    に記載のセル配置方法。
  5. 【請求項5】 前記確率分布関数を前記距離データから
    計算した平均及び標準偏差により決まる正規分布関数と
    したことを特徴とする請求項4に記載のセル配置方法。
  6. 【請求項6】 前記距離分布における距離をマンハッタ
    ン長としたことを特徴とする請求項1〜請求項5に記載
    のセル配置方法。
  7. 【請求項7】 セルをセル配置領域に割り振った後に、
    そのセルの割り振りによる指定配線長の実現率の低下を
    考慮して距離分布を更新するようにしたことを特徴とす
    る請求項1〜請求項7に記載のセル配置方法。
  8. 【請求項8】 前記請求項1〜請求項7に記載のセル配
    置方法により回路設計されたことを特徴とする半導体装
    置。
JP6007024A 1994-01-26 1994-01-26 セル配置方法及び半導体装置 Pending JPH07210590A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6007024A JPH07210590A (ja) 1994-01-26 1994-01-26 セル配置方法及び半導体装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6007024A JPH07210590A (ja) 1994-01-26 1994-01-26 セル配置方法及び半導体装置

Publications (1)

Publication Number Publication Date
JPH07210590A true JPH07210590A (ja) 1995-08-11

Family

ID=11654480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6007024A Pending JPH07210590A (ja) 1994-01-26 1994-01-26 セル配置方法及び半導体装置

Country Status (1)

Country Link
JP (1) JPH07210590A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9914186B2 (en) 2013-01-28 2018-03-13 Mitsubishi Heavy Industries, Ltd. Water jet peening device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9914186B2 (en) 2013-01-28 2018-03-13 Mitsubishi Heavy Industries, Ltd. Water jet peening device

Similar Documents

Publication Publication Date Title
US5801959A (en) Integrated circuit layout
US10380306B2 (en) Layout of standard cells for predetermined function in integrated circuits
US5818729A (en) Method and system for placing cells using quadratic placement and a spanning tree model
US6966045B2 (en) Method and computer program product for estimating wire loads
US20210357569A1 (en) Method and system for generating layout design of integrated circuit
JP4530049B2 (ja) 半導体装置の設計プログラムおよび半導体装置の設計システム
US10990741B2 (en) Multiple patterning method and system for implementing the method
US11574106B2 (en) Method, system, and storage medium of resource planning for designing semiconductor device
US10311197B2 (en) Preserving hierarchy and coloring uniformity in multi-patterning layout design
US8863062B2 (en) Methods and apparatus for floorplanning and routing co-design
US9639647B2 (en) Method of making semiconductor device and system for performing the same
US7530038B2 (en) Method and placement tool for designing the layout of an electronic circuit
US5757657A (en) Adaptive incremental placement of circuits on VLSI chip
JPH07210590A (ja) セル配置方法及び半導体装置
US6189129B1 (en) Figure operation of layout for high speed processing
US11901223B2 (en) Stress analysis method and semiconductor device manufacturing method
US20030135837A1 (en) Method and apparatus for automatic arrangement and wiring for a semiconductor integrated circuit design and wiring program therefor
JPH0645443A (ja) 階層化配線方法
JPH09232436A (ja) 論理合成方法及び装置並びに半導体集積回路設計方法
JP2977422B2 (ja) 製品仕様推定方法、論理回路の分類評価装置、製品仕様データベース作成装置、製品仕様推定装置および論理回路自動階層生成装置
JP3209861B2 (ja) 集積回路の設計方法
JPH08110918A (ja) 電子回路最適設計支援装置及びその方法
JP3089658B2 (ja) 集積回路レイアウトの配線経路決定方式
JPH08161389A (ja) 回路シミュレーション方法及び回路シミュレータ
JPH05121546A (ja) 半導体集積回路のレイアウト方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20030805