JP3617366B2 - Semiconductor integrated circuit design method - Google Patents
Semiconductor integrated circuit design method Download PDFInfo
- Publication number
- JP3617366B2 JP3617366B2 JP08581099A JP8581099A JP3617366B2 JP 3617366 B2 JP3617366 B2 JP 3617366B2 JP 08581099 A JP08581099 A JP 08581099A JP 8581099 A JP8581099 A JP 8581099A JP 3617366 B2 JP3617366 B2 JP 3617366B2
- Authority
- JP
- Japan
- Prior art keywords
- assignment
- assigned
- base
- elements
- base element
- 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 - Fee Related
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、マスタースライス方式を用いた半導体集積回路の設計方法に関する。
【0002】
【従来の技術】
近年、アナログ半導体集積回路の分野は多品種小量生産化が顕著であり、開発製造期間の短縮が求められている。そこで、半導体基板上にトランジスタ素子、抵抗素子、容量素子の素子形成工程までをあらかじめ準備しておき、その後に必要な配線のみを行なって半導体集積回路を構成する、いわゆるマスタースライス方式が採用されている。マスタースライス方式において半導体基板上に形成される素子を「下地素子」という。以下、図15を用いてマスタースライス方式を用いた従来の半導体集積回路設計装置について説明する。
【0003】
図15は、従来の半導体集積回路設計装置を用いて、マスタースライス上の下地素子に電気回路素子を割り当てた1例を示すものである。図15において、1501は電気回路中のトランジスタ素子T15aを割り当てた下地素子、1502はトランジスタ素子T15bを割り当てた下地素子、1503はトランジスタ素子T15cを割り当てた下地素子を示す。又、1504〜1507はT15aと接続関係にある抵抗素子R15aを割り当てた下地素子、1508〜1511はT15bと接続関係にある抵抗素子R15bを割り当てた下地素子、1512〜1515はT15cと接続関係にある抵抗素子R15cを割り当てた下地素子を示す。ここで、トランジスタ素子T15a〜T15cの下地素子の割り当ては既に決定されているものとする。従来は、電気回路中の抵抗素子を下地素子へ割り当てる際に、抵抗値の小さい未割り当ての下地素子を検索して接続関係にある他の回路素子からの距離(外部配線長)が短い順番に割り当てを行う方法だけを用いていた。よって、抵抗素子R15a〜R15cの順に割り当てを行う場合、始めに1504〜1507の下地素子へR15aの割り当てが決定し、次に1508〜1511の下地素子へR15bの割り当てが決定する。ここで、R15bと接続関係にあるT15bからの距離が近い順に下地素子を割り当てると1506〜1509(又は、1507〜1510)となるが1506、1507は既にR15aの下地素子として割り当てが決定しているため重複して割り当てることはできない。同様にR15cを割り当てる場合、1512〜1514が順に割り当てられ、次にT15cから近く、抵抗値の小さい下地素子を検索した場合、1515の下地素子が割り当てられる。
【0004】
【発明が解決しようとする課題】
従来装置のように、割り当て対象の回路素子を外部配線長が短くなるような下地素子から優先して割り当てを行うと、先に割り当てた回路素子が後から割り当てる回路素子の妨げになり、最適な位置に割り当てられず、図15に示すような混雑した回路で割り当てたい近くの下地素子が不足した場合に、離れた位置にある下地素子1515を割り当ててしまう。これにより、回路抵抗素子R15cは4本まとまった位置に割り当てることができなくなり、抵抗素子は拡散時の条件の違いによる特性のバラツキが発生する可能性が高くなる。さらに、抵抗素子を実現するために必要な下地素子間を接続する内部配線の長さも長くなるため、配線抵抗による悪影響が発生したり、未配線が発生する原因になる。
【0005】
本発明は、上記従来の問題点を解決するもので、与えられた電気回路中の抵抗素子を他の電気回路素子との接続関係を考慮しつつ、マスタースライス上の下地素子にまとめて割り当てることで抵抗素子の特性のバラツキ発生を防止し、外部配線長及び、内部配線長を短くすることが可能な半導体集積回路の設計方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
この目的を達成するために、本発明の半導体集積回路の設計方法は、電気回路素子をマスタースライス上の下地素子へ割り当てる際に、素子構成優先割り当て法と自動素子選択割り当て法の2通りの割り当て方法を備え、それぞれの配置形状をバランス素子の隣接や組み合わせ素子の広がり等をパラメータとする評価関数により評価を行い、求めた評価値の良い方の割り当て結果を採用し、割り当て決定処理を行う。全ての電気回路素子について下地素子への割り当てが完了するまで割り当て処理を繰り返すことにより実現される。
【0007】
【発明の実施の形態】
以下、この発明の実施形態について図1から図9を用いて説明する。マスタースライス方式では、予め半導体基板上にトランジスタ素子、抵抗素子、容量素子の素子形成工程までを準備したマスタースライス下地に、電気回路上の素子を割り当て、その素子間の配線を行なうことにより半導体集積回路を構成する。
【0008】
図1は、発明の一実施形態である半導体集積回路設計装置のハードウェア構成を示すブロック図である。
【0009】
半導体集積回路装置は、ワークステーションなどによって実現されるCAD(Computer Aided Design)装置であり、ディスプレイ101は、CRT(陰極線管)やLCD(液晶表示装置)などによって実現される。入力部102は、キーボードやマウスなどによって実現される。CPU103は、半導体集積回路装置全体を制御する中央演算処理装置である。記憶部104は、メモリやハードディスクなどによって実現される。
【0010】
図2は、本発明の一実施形態である半導体集積回路の設計方法による処理手順を示すフローチャートである。
【0011】
本設計装置では、まず電気回路中の抵抗素子をマスタースライス上の下地素子に割り当てる際に、電気回路素子の抵抗値を実現する為に用いる下地素子の種類、本数、接続方法を素子構成データとして入力部102により入力する(ステップS201)。
【0012】
次に、与えられる電気回路中の抵抗素子をS201で入力された素子構成データに記述されている下地素子を検索して割り当てる方法と電気回路の接続情報より実素子の端子間の配線長が短くなるような下地素子を検索して割り当てる方法の2通りの方法により、マスタースライス上の下地素子へ割り当てを行い、それぞれの配置形状を評価して、評価値の良い方の割り当て結果を採用する(ステップS202)。
【0013】
次に、マスタースライス上に確保またはあらかじめ指定された配線領域を使用し、従来のCAD装置と同様にして、例えば迷路法等により電気回路の接続情報に基づいて実素子の端子間などの配線を行なう(ステップS203)。ここで迷路法とは、始点から波紋が広がるような順序で配線格子にラベル付けを行うことによって、全方向の配線経路を探索する方法であり、配線経路があれば最短のものを必ず見つけることができるという特徴がある。
【0014】
図3は、素子割り当て部S202のより詳細な処理の流れを示すフローチャートである。
【0015】
素子割り当て部S202は、始めに与えられる電気回路情報を読み込み、電気回路素子の接続情報を格納する(ステップS301)。
【0016】
次に、素子構成優先割り当てを行う(ステップS302)。素子構成優先割り当てでは、読み込んだ電気回路情報中の素子構成データに記述されている通りに、各回路素子を実現する為に必要な下地素子を検索し、仮割り当てを行う。ステップS302によって割り当てられた回路素子の配置形状を後述の評価関数を用いて評価し、その評価値を記憶する(ステップS303)。
【0017】
次に、自動素子選択割り当てを行う(ステップS304)。自動素子選択割り当てでは、ステップS301で読み込んだ電気回路情報を基に、割り当て対象の抵抗素子と同じ種類の下地素子を検索し、抵抗値が小さく、接続関係にある他の電気回路素子との距離が近いものから順に仮割り当てを行う。割り当て対象の回路素子値と仮割り当てを行った下地素子の素子値の差が0になるまで割り当てを繰り返す。ステップS304によって割り当てられた回路素子の配置形状を後述の評価関数を用いて評価し、その評価値を記憶する(ステップS305)。
【0018】
次に、ステップS303及びステップS305で記憶した素子構成優先割り当てによる配置形状の評価値と自動素子選択割り当てによる配置形状の評価値を比較(ステップS306)して、評価値の良くなる方(小さくなる方)の配置形状を採用し、仮の割り当てを行っていた回路素子を正式に割り当て決定する(ステップS307)。
【0019】
次に、全ての回路素子について下地素子への割り当てが完了したかどうかの判定を行い(ステップS308)、割り当てが完了していない回路素子が存在する場合は、前述の方法(ステップS302〜S308)で割り当てを繰り返す。ステップS309で、全ての回路素子について割り当てが完了している場合は、素子割り当て処理を終了する。
【0020】
図4に、一実施形態で電気回路素子を割り当てようとするマスタースライス下地を示す。図4において401は、5KΩの抵抗素子が並べられた下地素子領域、402は、10KΩの抵抗素子が並べられた下地素子領域、403は、トランジスタ素子が並べられた下地素子領域を示す。又、401と402に配置されている抵抗素子の種類は「SP」である。
【0021】
図5に、マスタースライス上の下地素子へ割り当てようとする電気回路Aを示す。図5において、501〜503は20KΩの抵抗素子、504〜511はトランジスタ素子を示す。
【0022】
図6は、本装置を用いて図5の電気回路A中の抵抗素子502と503及びトランジスタ素子504〜511を図4のマスタースライス下地上に割り当てた結果を示している。図6において、601〜610は電気回路A中の素子502〜511を割り当てた結果を示す。
【0023】
図7は、本装置のステップS302によって図5の電気回路A中の抵抗素子501を図6の割り当て途中の下地素子へ割り当てた結果を示す。図7において、701は既に割り当てが決定している抵抗下地素子を示している。702は電気回路A中のトランジスタ素子504を割り当てた下地素子、703は電気回路A中の抵抗素子501を割り当てた下地素子を示している。
【0024】
ここで、電気回路素子501には、回路情報として図8に示す素子構成の表記方法が与えられている。図8において、801は抵抗素子の種類、802は抵抗値、803は構成方法を示している。この実施形態の場合、「SP」は抵抗の種類を意味し、「10000」は10000Ωの抵抗値を意味し、「2S」は下地素子を2本直列に接続することを意味している。501を下地素子に割り当てる際に、素子構成データに記述されている抵抗素子と種類、抵抗値が同一の下地素子を検索し、接続関係にある他の回路素子504から最も距離が近くなる下地素子で他の回路素子に割り当て決定していないものを選択して、割り当て決定する。本実施形態の場合、構成方法が2本直列と記述されているため、この作業を2度繰り返すことで回路素子の下地素子への割り当てを行う。
【0025】
次に、本装置のステップS303によってステップS302の素子構成優先割り当て結果の配置形状を評価し、その評価値を記憶する。以下に、配置形状の評価を行う際に、本装置で使用している評価関数について説明する。式1は、ある回路素子Cの割り当てをacとした場合の評価関数を示している。
【0026】
F(ac)=w1×L(ac)+w2×I(ac)+w3×D(ac)+w4×N(ac) ‥‥(式1) 式1において、Fは評価値、Lは外部配線長、Iは内部配線長、Dは割り当て決定下地素子群との距離、Nは隣接素子値を表す。割り当て決定下地素子との距離Dは、回路素子Cにおいて既に割り当てが決定している下地素子群の中心点から割り当てが未決定の各下地素子の中心点までの距離の総和で求められる。隣接素子値Nは、割り当てられた下地素子に隣接する下地素子が既に他の回路素子として割り当てられている場合を1とし、それ以外の場合は0とする。また、w1〜w4は、各評価パラメータに係る重みを示している。評価値Fは、各評価パラメータ値にそれぞれの重み係数を乗じた値の総和で求められる。
【0027】
図9は、本装置のステップS304によって図5の電気回路A中の抵抗素子501を図6の割り当て途中の下地素子へ割り当てた結果を示す。図9において、901は既に割り当てが決定している抵抗下地素子を示している。902は電気回路A中のトランジスタ素子504を割り当てた下地素子、903〜906は電気回路A中の抵抗素子501を割り当てた下地素子を907は下地素子群を示している。自動素子選択割り当てでは、割り当て対象の回路素子501の抵抗値を満たすまで、回路情報として与えられたものと同じ種類の下地素子で抵抗値の小さいものを接続関係にある他の回路素子の割り当て位置から近い順に検索して、割り当てを行っていく。本実施形態では、接続関係にある回路素子902に近い同一の種類の抵抗下地素子904から順に割り当てられる。下地素子を割り当てた後、割り当て対象の抵抗素子値と割り当てた下地素子の抵抗値の差を求め、その差が0でなければ、割り当て対象の抵抗素子値を求めた差の値に更新して、次の下地素子の検索を行う。このような方法で、903及び905が順番に割り当てられ、最後に906が割り当てられる。この時、割り当て対象の抵抗素子値と割り当てた下地素子の抵抗値の差が0となる為、回路素子501の割り当てを終了する。
【0028】
次に、本装置のステップS305によってステップS304の自動素子選択割り当て結果の配置形状を評価し、その評価値を記憶する。
【0029】
次に、本装置のステップS306によってステップS303及びS305で記憶した2つの割り当て結果の評価値の比較を行う。本実施形態において、S303とS305で記憶した評価値を比較した場合、S305で記憶している評価値の方がS303で記憶した評価値より大きくなる。これは、S305で記憶している評価値がステップS304の自動素子選択割り当てにより割り当てられた配置形状の評価値であり、本実施形態の場合、ステップS304の割り当て方法では、図9に示すように906の下地素子がひとつだけ他に割り当てられている下地素子から離れて割り当てられるために、回路抵抗素子501を構成する下地素子間の距離が大きくなり、それに応じて評価関数式内のIyの値も大きくなる為に評価値全体としても大きくなってしまうためである。よって、ステップS307へ進む。
【0030】
ステップS307では、ステップS302で求めた割り当て結果を採用し、割り当て結果に従って下地素子へ割り当て決定処理を行う。この割り当て決定処理により割り当て決定された下地素子には、他の回路素子を割り当てることが不可能となる。割り当て対象の下地素子全てについて割り当て処理が完了すれば、ステップS309へ進む。
【0031】
ステップS309では、与えられた電気回路中の回路素子が全てマスタースライスの下地上に割り当てが完了しているかの判定を行い、割り当てが完了している場合は、素子割り当て処理を終了する。割り当てが完了していない回路素子が存在する場合は、残りの回路素子の割り当て処理を継続する。
【0032】
次に、異なる抵抗値の下地素子を用いた素子構成方法が与えられている抵抗素子の割り当てる実施形態を示す。
【0033】
図10に割り当て対象の電気回路Bを示す。図10において、1001、1002は20KΩの抵抗素子、1003、1004は25KΩの抵抗素子、1005〜1008はトランジスタ素子を示す。図11は、図10中の回路素子を割り当てた結果を示し、1101は1001を、1102は1002を、1103は1003を1104〜1107は1005〜1008をそれぞれ割り当てたものである。1004の抵抗素子は未割り当てとする。図12は、割り当て途中の図11の下地に1004の抵抗素子をステップS302により、割り当てた結果を示している。図12において1201〜1203、1205〜1208は既に割り当てが決定している下地素子を示し、1204は抵抗素子1004を割り当てた結果を示している。
【0034】
ここで、抵抗素子1004の素子構成の表記方法を図13に示す。図13中の第1項の「SP 5000」は抵抗種類SPで5000Ωの下地素子1本を意味し、図13中の第2項の「SP 10000*2S」は抵抗種類SPで10000Ωの下地素子を2本直列に接続することを意味し、抵抗素子1004はそれらの抵抗を更に直列接続して構成することを表現している。
【0035】
図14は、割り当て途中の図11の下地に1004の抵抗素子をステップS304により、割り当てた結果を示している。図14において、1401〜1403、1405〜1408は既に割り当てが決定している下地素子を示し、1404は1004を割り当てた結果を示している。前記、電気回路Aの割り当て実施形態と同様にして、電気回路Bにおける2通りの割り当て結果をステップS305により評価する。ステップS306によりそれぞれの評価値の比較を行い、その評価値が良くなる割り当て結果を採用する。電気回路B中の1004の抵抗素子の割り当てにおいて、自動素子選択割り当てステップS302による1204は下地素子がまとまって割り当てられており、接続関係にあるトランジスタ素子1407からの距離も近い為、配置形状評価値は良くなる。それに比べて、素子構成優先割り当てステップS304による1404は5KΩの抵抗素子が1本だけ離れて割り当てられており、10KΩの抵抗素子2本は1407からの距離が遠い為、配置形状評価値は悪くなる。よって、図12に示すステップS302による割り当て結果が採用される。
【0036】
このように、2通りの下地素子への割り当て方法を備え、それぞれについて割り当て形状を評価し、その結果、評価値として良くなる方を採用することで、他の回路素子との接続関係を考慮し、複数の下地から構成される回路素子内での特性のバラツキが発生しにくい配置結果を得ることが可能となる。
【0037】
【発明の効果】
本発明の半導体集積回路の設計方法によれば、マスタースライス上の下地素子へ素子構成割り当て及び自動素子選択割り当てを行い、配置形状の良くなる割り当てを採用することでそれぞれの割り当て方法の欠点を補いつつ、他の回路素子の下地素子への割り当て状態に応じて、抵抗素子の特性のバラツキ、配線抵抗による抵抗値の精度劣化の発生を抑制することが可能である。
【図面の簡単な説明】
【図1】本発明の一実施形態における半導体集積回路設計装置のハードウェア構成を示すブロック図
【図2】本発明の一実施形態における半導体集積回路の設計方法の処理手順を示すフローチャート
【図3】素子割り当て部のより詳細な処理手順の一例を示すフローチャート
【図4】本発明の一実施形態に用いるマスタースライス下地を示す図
【図5】本発明の一実施形態において割り当て対象となる電気回路Aの回路図
【図6】本発明の一実施形態における下地素子への割り当て経過を示す説明図
【図7】ステップS302による下地素子への割り当て方法の説明図
【図8】本発明の一実施形態における素子構成の定義方法説明図
【図9】ステップS304による下地素子への割り当て方法の説明図
【図10】本発明の一実施形態において割り当て対象となる電気回路Bの回路図
【図11】本発明の一実施形態における下地素子への割り当て経過を示す説明図
【図12】ステップS302による下地素子への割り当て方法の説明図
【図13】抵抗素子の構成方法を示した図
【図14】ステップS304による下地素子への割り当て方法の説明図
【図15】従来の素子割り当て手法の一例を示す説明図
【符号の説明】
101 表示装置
102 外部入力装置
103 中央演算処理装置
104 記憶装置
401 5KΩの抵抗下地素子領域
402 10KΩの抵抗下地素子領域
403 トランジスタ素子領域
501〜503 抵抗素子
504〜511 トランジスタ素子
601〜602 下地素子に割り当てられた抵抗素子
603〜610 下地素子に割り当てられたトランジスタ素子
701 下地素子に割り当てが決定している抵抗素子
702 下地素子に割り当てられたトランジスタ素子
703 下地素子に割り当てられた抵抗素子
801 素子種別
802 素子値
803 素子構成
901 下地素子に割り当てが決定している抵抗素子
902 下地素子に割り当てられたトランジスタ素子
903〜906 下地素子に割り当てられた抵抗素子
907 下地素子に割り当てられた抵抗素子群
1001〜1004 抵抗素子
1005〜1008 トランジスタ素子
1101〜1103 下地素子に割り当てられた抵抗素子
1104〜1107 下地素子に割り当てられたトランジスタ素子
1201〜1203 下地素子に割り当てが決定している抵抗素子
1204 下地素子に割り当てられた抵抗素子
1205〜1208 下地素子に割り当てが決定しているトランジスタ素子
1401〜1403 下地素子に割り当てが決定している抵抗素子
1404 下地素子に割り当てられた抵抗素子
1405〜1408 下地素子に割り当てが決定しているトランジスタ素子
1501〜1503 下地素子に割り当てられたトランジスタ素子
1504〜1515 下地素子に割り当てられた抵抗素子[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method for designing a semiconductor integrated circuit using a master slice method.
[0002]
[Prior art]
In recent years, in the field of analog semiconductor integrated circuits, high-mix low-volume production has been remarkable, and development and manufacturing time has been required to be shortened. Therefore, the so-called master slice method is adopted, in which the element formation process of transistor elements, resistor elements, and capacitor elements is prepared in advance on a semiconductor substrate, and then only necessary wiring is performed to constitute a semiconductor integrated circuit. Yes. An element formed on a semiconductor substrate in the master slice method is referred to as “underlying element”. A conventional semiconductor integrated circuit design apparatus using the master slice method will be described below with reference to FIG.
[0003]
FIG. 15 shows an example in which an electric circuit element is assigned to a base element on a master slice using a conventional semiconductor integrated circuit design apparatus. In FIG. 15,
[0004]
[Problems to be solved by the invention]
If prioritizing the assignment of the circuit element to be assigned from the base element that shortens the external wiring length as in the conventional device, the circuit element assigned earlier obstructs the circuit element to be assigned later. If a nearby base element to be assigned is insufficient in a congested circuit as shown in FIG. 15 without being assigned to a position, a
[0005]
The present invention solves the above-described conventional problems, and assigns resistance elements in a given electric circuit to base elements on a master slice in consideration of the connection relationship with other electric circuit elements. An object of the present invention is to provide a semiconductor integrated circuit design method capable of preventing variations in characteristics of resistance elements and shortening the external wiring length and the internal wiring length.
[0006]
[Means for Solving the Problems]
In order to achieve this object, the semiconductor integrated circuit design method according to the present invention has two allocation methods, namely, an element configuration priority allocation method and an automatic element selection allocation method when an electric circuit element is allocated to a base element on a master slice. Provided with a method, and evaluation of each arrangement shape by an evaluation function having parameters such as the adjoining balance element and the spread of the combination element, and the assignment determination process is performed by adopting the assignment result having the better evaluation value. This is realized by repeating the assignment process until assignment of all electric circuit elements to the base element is completed.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to FIGS. In the master slicing method, elements on the electric circuit are assigned to the master slice base prepared up to the element formation process of transistor elements, resistor elements, and capacitor elements on a semiconductor substrate in advance, and wiring is performed between the elements. Configure the circuit.
[0008]
FIG. 1 is a block diagram showing a hardware configuration of a semiconductor integrated circuit design apparatus according to an embodiment of the invention.
[0009]
The semiconductor integrated circuit device is a CAD (Computer Aided Design) device realized by a workstation or the like, and the
[0010]
FIG. 2 is a flowchart showing a processing procedure according to a semiconductor integrated circuit design method according to an embodiment of the present invention.
[0011]
In this design device, when assigning the resistance elements in the electrical circuit to the underlying elements on the master slice, the type, number, and connection method of the underlying elements used to realize the resistance value of the electrical circuit elements are used as element configuration data. Input is performed by the input unit 102 (step S201).
[0012]
Next, the wiring length between the terminals of the actual element is shorter than the method of searching for and assigning the underlying element described in the element configuration data input in S201 to the resistance element in the given electric circuit and the connection information of the electric circuit. By assigning to the underlying elements on the master slice by using the two methods of searching and assigning the underlying elements, and evaluating the respective arrangement shapes, the assignment result having the better evaluation value is adopted ( Step S202 ).
[0013]
Next, using a wiring area secured or specified in advance on the master slice, the wiring between terminals of the actual element is wired based on the connection information of the electric circuit by the maze method or the like, for example, in the same manner as the conventional CAD apparatus. This is performed (step S203). Here, the maze method is a method of searching for wiring paths in all directions by labeling the wiring grid in an order that ripples spread from the starting point, and if there is a wiring path, always find the shortest one There is a feature that can be.
[0014]
FIG. 3 is a flowchart showing a more detailed processing flow of the element assignment unit S202.
[0015]
The element assignment unit S202 reads the electric circuit information given first, and stores the connection information of the electric circuit elements (step S301).
[0016]
Next, element configuration priority assignment is performed (step S302). In the element configuration priority assignment, as described in the element configuration data in the read electric circuit information, a base element necessary for realizing each circuit element is searched and provisional assignment is performed. The circuit element arrangement shape assigned in step S302 is evaluated using an evaluation function described later, and the evaluation value is stored (step S303).
[0017]
Next, automatic element selection assignment is performed (step S304). In automatic element selection assignment, based on the electric circuit information read in step S301, a base element of the same type as the resistance element to be assigned is searched, and the distance from other electric circuit elements having a small resistance value and a connection relationship is searched. Temporary allocation is performed in order from the closest. The allocation is repeated until the difference between the circuit element value to be allocated and the element value of the base element to which temporary allocation has been performed becomes zero. The arrangement shape of the circuit element assigned in step S304 is evaluated using an evaluation function described later, and the evaluation value is stored (step S305).
[0018]
Next, the evaluation value of the arrangement shape by the element configuration priority assignment stored in step S303 and step S305 is compared with the evaluation value of the arrangement shape by automatic element selection assignment (step S306), and the evaluation value becomes better (smaller). The circuit element that has been temporarily assigned is formally assigned and determined (step S307).
[0019]
Next, it is determined whether or not all circuit elements have been assigned to base elements (step S308). If there is a circuit element that has not been assigned, the above-described method (steps S302 to S308) is performed. Repeat the assignment with. If the assignment has been completed for all the circuit elements in step S309, the element assignment process is terminated.
[0020]
FIG. 4 shows a master slice base on which an electric circuit element is to be assigned in one embodiment. In FIG. 4, 401 indicates a base element region in which 5 KΩ resistive elements are arranged, 402 indicates a base element region in which 10 KΩ resistive elements are arranged, and 403 indicates a base element region in which transistor elements are arranged. In addition, the type of the resistance element arranged in 401 and 402 is “SP”.
[0021]
FIG. 5 shows an electric circuit A to be assigned to the base element on the master slice. In FIG. 5,
[0022]
FIG. 6 shows a result of assigning the
[0023]
FIG. 7 shows a result of assigning the
[0024]
Here, the
[0025]
Next, in step S303 of this apparatus, the arrangement shape of the element configuration priority assignment result in step S302 is evaluated, and the evaluation value is stored. Hereinafter, an evaluation function used in the present apparatus when evaluating the arrangement shape will be described. Equation 1 shows an evaluation function when ac is assigned to a certain circuit element C.
[0026]
F (ac) = w1 × L (ac) + w2 × I (ac) + w3 × D (ac) + w4 × N (ac) (Equation 1) In Equation 1, F is the evaluation value, L is the external wiring length, I represents the internal wiring length, D represents the distance from the assignment determination base element group, and N represents the adjacent element value. The distance D to the assignment-determined base element is obtained as the sum of the distances from the center point of the base element group whose assignment has already been determined in the circuit element C to the center point of each base element that has not been assigned. The adjacent element value N is set to 1 when a base element adjacent to the assigned base element is already assigned as another circuit element, and is set to 0 otherwise. Further, w1 to w4 indicate the weights related to the respective evaluation parameters. The evaluation value F is obtained as a sum of values obtained by multiplying each evaluation parameter value by the respective weighting factor.
[0027]
FIG. 9 shows a result of assigning the
[0028]
Next, in step S305 of this apparatus, the arrangement shape as a result of automatic element selection / allocation in step S304 is evaluated, and the evaluation value is stored.
[0029]
Next, the evaluation values of the two assignment results stored in steps S303 and S305 are compared in step S306 of the present apparatus. In this embodiment, when the evaluation values stored in S303 and S305 are compared, the evaluation value stored in S305 is larger than the evaluation value stored in S303. This is the evaluation value of the arrangement shape assigned by the automatic element selection assignment in step S304 as the evaluation value stored in step S305. In the present embodiment, the assignment method in step S304 is as shown in FIG. Since only one
[0030]
In step S307, the assignment result obtained in step S302 is adopted, and assignment determination processing for the base element is performed according to the assignment result. It becomes impossible to assign other circuit elements to the base element determined to be assigned by this assignment determination process. When the assignment process is completed for all the base elements to be assigned, the process proceeds to step S309.
[0031]
In step S309, it is determined whether all circuit elements in the given electric circuit have been assigned to the lower level of the master slice. If the assignment has been completed, the element assignment process is terminated. If there is a circuit element for which assignment has not been completed, assignment processing for the remaining circuit elements is continued.
[0032]
Next, an embodiment of assigning resistance elements to which an element configuration method using base elements having different resistance values is given will be described.
[0033]
FIG. 10 shows the electric circuit B to be assigned. 10,
[0034]
Here, a notation method of the element configuration of the
[0035]
FIG. 14 shows a result of assigning 1004 resistance elements to the base of FIG. 11 in the middle of assignment in step S304. In FIG. 14,
[0036]
In this way, there are two allocation methods to the base element, and the allocation shape is evaluated for each of them. As a result, by adopting the one that improves the evaluation value, the connection relationship with other circuit elements is taken into consideration. Thus, it is possible to obtain an arrangement result in which variation in characteristics is less likely to occur within a circuit element composed of a plurality of bases.
[0037]
【The invention's effect】
According to the semiconductor integrated circuit design method of the present invention, element configuration assignment and automatic element selection assignment are performed on the underlying element on the master slice, and the assignment with improved arrangement shape is employed to compensate for the disadvantages of the respective assignment methods. On the other hand, it is possible to suppress the occurrence of variations in resistance element characteristics and deterioration in resistance value accuracy due to wiring resistance in accordance with the assignment state of other circuit elements to the underlying element.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a hardware configuration of a semiconductor integrated circuit design apparatus according to an embodiment of the present invention. FIG. 2 is a flowchart illustrating a processing procedure of a semiconductor integrated circuit design method according to an embodiment of the present invention. FIG. 4 is a flowchart showing an example of a more detailed processing procedure of the element allocating unit. FIG. 4 is a diagram showing a master slice base used in one embodiment of the present invention. FIG. 5 is an electric circuit to be allocated in one embodiment of the present invention. 6 is a circuit diagram of FIG. 6A. FIG. 6 is an explanatory diagram showing a process of assignment to a base element in one embodiment of the present invention. FIG. 7 is an explanatory diagram of a method for allocating to a base element in step S302. FIG. 9 is an explanatory diagram of an element configuration definition method in the embodiment. FIG. 9 is an explanatory diagram of a method for assigning to a base element in step S304. FIG. FIG. 11 is an explanatory diagram showing a process of assignment to a base element in one embodiment of the present invention. FIG. 12 is an explanatory diagram of a method for assigning to a base element in step S302. 13 is a diagram illustrating a configuration method of a resistance element. FIG. 14 is an explanatory diagram of an allocation method to a base element in step S304. FIG. 15 is an explanatory diagram illustrating an example of a conventional element allocation method.
DESCRIPTION OF
Claims (3)
割り当てが決まっていない電気回路素子を割り当てが決まっていない下地素子に対して2通りの割り当て方法を試みる第1のステップと、
前記2通りの割り当て方法の結果について、評価関数を用いた評価をして評価値を求める第2のステップと、
前記2通りの割り当て結果の評価値を比較して評価値の良くなる割り当て結果を採用して、下地素子への割り当てを決定する第3のステップと、
割り当て結果を評価する前記第2のステップは、
割り当て対象の電気回路素子と接続関係にある他の電気回路素子を下地素子に割り当てた場合に発生する端子間の距離と、割り当て対象の電気回路素子を下地素子に割り当てた場合に発生する端子間距離とに、それぞれ個別の重みを乗じた値の総和を評価値とすることを特徴とする半導体集積回路の設計方法。A method of designing a semiconductor integrated circuit by allocating and wiring an element in an electric circuit designed as a semiconductor integrated circuit to an actual element formed in advance on a master slice,
A first step of trying two assignment methods for an unassigned electric circuit element to a base element for which assignment is not decided;
The results of the allocation method of the two types, a second step of obtaining the evaluation value by the evaluation using the evaluation function,
A third step of comparing the evaluation values of the two assignment results and adopting an assignment result that improves the evaluation value to determine assignment to the underlying element;
Said second step of evaluating the assignment result comprises:
The distance between the terminals that occurs when another electrical circuit element that is connected to the assignment target electrical circuit element is assigned to the base element, and the distance that occurs when the assignment target electrical circuit element is assigned to the base element A method for designing a semiconductor integrated circuit, characterized in that a sum of values obtained by multiplying distances by individual weights is used as an evaluation value.
電気回路素子毎にあらかじめ登録されている素子構成リストを基に、素子種別の適合する下地素子を検索し、割り当てを行う素子構成優先割り当て方法である請求項1に記載の半導体集積回路の設計方法。One of the allocation methods used in the first step is:
2. The design method of a semiconductor integrated circuit according to claim 1, which is an element configuration priority assignment method for searching and assigning a base element suitable for the element type based on an element configuration list registered in advance for each electric circuit element. .
割り当て対象の電気回路素子と接続関係にある他の電気回路素子の下地素子に割り当てた場合に発生する端子間の距離が短くなる下地素子から順に割り当てを行う自動素子選択割り当て方法である請求項1に記載の半導体集積回路の設計方法。One of the allocation methods used in the first step is:
2. An automatic element selection assigning method in which assignment is performed in order from a base element in which a distance between terminals generated when assigned to a base element of another electric circuit element that is connected to the target electric circuit element is shortened. 2. A method for designing a semiconductor integrated circuit according to 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08581099A JP3617366B2 (en) | 1999-03-29 | 1999-03-29 | Semiconductor integrated circuit design method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08581099A JP3617366B2 (en) | 1999-03-29 | 1999-03-29 | Semiconductor integrated circuit design method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000277714A JP2000277714A (en) | 2000-10-06 |
JP3617366B2 true JP3617366B2 (en) | 2005-02-02 |
Family
ID=13869233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08581099A Expired - Fee Related JP3617366B2 (en) | 1999-03-29 | 1999-03-29 | Semiconductor integrated circuit design method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3617366B2 (en) |
-
1999
- 1999-03-29 JP JP08581099A patent/JP3617366B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000277714A (en) | 2000-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4980066B2 (en) | Distributed automatic routing of conductive paths | |
KR100411767B1 (en) | Circuit simulation method and system | |
US8479140B2 (en) | Automatically creating vias in a circuit design | |
JP2013037451A (en) | Layout design device, layout design method, and layout design program | |
CN111597768B (en) | Method, apparatus and computer readable storage medium for constructing a layout pattern set | |
US20090166898A1 (en) | Method of increasing reliability of packaged semiconductor integrated circuit dice | |
CN115394671A (en) | Method for grabbing object pins, test chip and design method and system thereof | |
JP3617366B2 (en) | Semiconductor integrated circuit design method | |
US7091614B2 (en) | Integrated circuit design for routing an electrical connection | |
US10796056B2 (en) | Optimizing library cells with wiring in metallization layers | |
JP2004104039A (en) | Automatic layout and wiring design method for integrated circuit, automatic layout and wiring design apparatus therefor, automatic layout and wiring design system therefor, control program and readable recording medium | |
CN102508969B (en) | Method for accelerating dummy metal filling based on region geometric isomorphism and electrical isomorphism | |
JP3234505B2 (en) | Apparatus and method for designing semiconductor integrated circuit | |
JP2921454B2 (en) | Wiring method of integrated circuit | |
JP3369093B2 (en) | Semiconductor integrated circuit design equipment | |
JP2002222229A (en) | Automatic layout and wiring device and automatic layout and wiring method | |
JP2005301799A (en) | Layout modification method for semiconductor integrated circuit | |
JP2005045132A (en) | Method for laying out semiconductor integrated circuit | |
JPH1117015A (en) | Layout method of semiconductor integrated circuit | |
WO2003092067A2 (en) | Integrated circuit layout modification | |
CN111859844A (en) | Feature chip selection method and device model establishment method in modeling process | |
JPH02303142A (en) | Automatic layout in analog lsi | |
JP3062149B2 (en) | Automatic wiring method | |
JP3201463B2 (en) | Apparatus and method for designing semiconductor integrated circuit | |
KR100385862B1 (en) | Method of improving routing delay for symmetrical FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040406 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040713 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040726 |
|
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: 20041019 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041101 |
|
LAPS | Cancellation because of no payment of annual fees |