JP3617366B2 - Semiconductor integrated circuit design method - Google Patents

Semiconductor integrated circuit design method Download PDF

Info

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
Application number
JP08581099A
Other languages
Japanese (ja)
Other versions
JP2000277714A (en
Inventor
重彰 小西
裕子 光安
英樹 三島
慎一 熊代
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP08581099A priority Critical patent/JP3617366B2/en
Publication of JP2000277714A publication Critical patent/JP2000277714A/en
Application granted granted Critical
Publication of JP3617366B2 publication Critical patent/JP3617366B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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, reference numeral 1501 denotes a base element to which the transistor element T15a in the electric circuit is assigned, 1502 denotes a base element to which the transistor element T15b is assigned, and 1503 denotes a base element to which the transistor element T15c is assigned. Further, 1504 to 1507 are base elements to which a resistance element R15a connected to T15a is assigned, 1508 to 1511 are base elements to which a resistance element R15b connected to T15b is assigned, and 1512 to 1515 are connected to T15c. The base element to which the resistance element R15c is assigned is shown. Here, it is assumed that the assignment of base elements of the transistor elements T15a to T15c has already been determined. Conventionally, when assigning a resistance element in an electric circuit to a base element, an unassigned base element having a small resistance value is searched and the distance (external wiring length) from other circuit elements in the connection relationship is ascending in order. Only the allocation method was used. Therefore, when assigning in order of the resistance elements R15a to R15c, the assignment of R15a to the base elements 1504 to 1507 is determined first, and then the assignment of R15b to the base elements 1508 to 1511 is determined. Here, if the base elements are assigned in the order of the shortest distance from T15b connected to R15b, they become 1506 to 1509 (or 1507 to 1510), but 1506 and 1507 have already been assigned as base elements of R15a. Therefore, it cannot be assigned twice. Similarly, when assigning R15c, 1512 to 1514 are assigned in order, and when searching for a base element having a small resistance value close to T15c, the base element 1515 is assigned.
[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 base element 1515 at a remote position is assigned. As a result, the circuit resistance element R15c cannot be assigned to a group of four positions, and there is a high possibility that the resistance element will vary in characteristics due to a difference in conditions during diffusion. Furthermore, since the length of the internal wiring connecting between the underlying elements necessary for realizing the resistance element becomes long, an adverse effect due to the wiring resistance occurs or unwiring occurs.
[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 display 101 is realized by a CRT (cathode ray tube), an LCD (liquid crystal display device), or the like. The input unit 102 is realized by a keyboard, a mouse, or the like. The CPU 103 is a central processing unit that controls the entire semiconductor integrated circuit device. The storage unit 104 is realized by a memory, a hard disk, or the like.
[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, reference numerals 501 to 503 denote 20 KΩ resistance elements, and reference numerals 504 to 511 denote transistor elements.
[0022]
FIG. 6 shows a result of assigning the resistance elements 502 and 503 and the transistor elements 504 to 511 in the electric circuit A of FIG. 5 on the master slice base of FIG. 4 using this apparatus. In FIG. 6, reference numerals 601 to 610 denote the results of assigning the elements 502 to 511 in the electric circuit A.
[0023]
FIG. 7 shows a result of assigning the resistance element 501 in the electric circuit A of FIG. 5 to the base element in the middle of assignment in FIG. 6 in step S302 of this apparatus. In FIG. 7, reference numeral 701 denotes a resistive base element whose assignment has already been determined. Reference numeral 702 denotes a base element to which the transistor element 504 in the electric circuit A is assigned, and reference numeral 703 denotes a base element to which the resistance element 501 in the electric circuit A is assigned.
[0024]
Here, the electric circuit element 501 is given the notation method of the element configuration shown in FIG. 8 as circuit information. In FIG. 8, 801 indicates the type of the resistance element, 802 indicates the resistance value, and 803 indicates the configuration method. In this embodiment, “SP” means the type of resistance, “10000” means a resistance value of 10000Ω, and “2S” means that two base elements are connected in series. When 501 is assigned to a base element, a base element having the same type and resistance value as the resistance element described in the element configuration data is searched for, and the base element that is the closest to the other circuit elements 504 in connection relation Then, the one that has not been determined to be assigned to other circuit elements is selected and assigned. In this embodiment, since the configuration method is described as two in series, the circuit element is assigned to the base element by repeating this operation twice.
[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 resistance element 501 in the electric circuit A of FIG. 5 to the base element in the middle of assignment in FIG. 6 in step S304 of the present apparatus. In FIG. 9, reference numeral 901 denotes a resistive base element whose assignment has already been determined. Reference numeral 902 denotes a base element to which the transistor element 504 in the electric circuit A is assigned, reference numerals 903 to 906 denote base elements to which the resistance element 501 in the electric circuit A is assigned, and reference numeral 907 denotes a base element group. In automatic element selection assignment, until the resistance value of the circuit element 501 to be assigned is satisfied, the assignment positions of other circuit elements that are connected in the same type of base element that has been given as circuit information and have a small resistance value Search in ascending order starting from, and make assignments. In this embodiment, the resistance base elements 904 of the same type that are close to the circuit elements 902 that are connected are assigned in order. After assigning the base element, find the difference between the resistance element value to be assigned and the resistance value of the assigned base element. If the difference is not 0, update the assignment target resistance element value to the difference value obtained. Then, the next base element is searched. In this way, 903 and 905 are assigned sequentially, and finally 906 is assigned. At this time, since the difference between the resistance element value to be assigned and the resistance value of the assigned base element becomes zero, the assignment of the circuit element 501 is terminated.
[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 base element 906 is assigned away from the base element assigned to the other, the distance between the base elements constituting the circuit resistance element 501 is increased, and the value of Iy in the evaluation function formula is accordingly increased. This is because the evaluation value as a whole is also increased. Therefore, the process proceeds to step S307.
[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, reference numerals 1001 and 1002 denote resistance elements of 20 KΩ, reference numerals 1003 and 1004 denote resistance elements of 25 KΩ, and reference numerals 1005 to 1008 denote transistor elements. FIG. 11 shows the result of assigning the circuit elements in FIG. 10. 1101 is assigned 1001, 1102 is assigned 1002, 1103 is assigned 1003, and 1104 to 1107 are assigned 1005 to 1008. The resistance element 1004 is not assigned. FIG. 12 shows the result of assigning the resistance element 1004 to the base of FIG. 11 in the middle of assignment in step S302. In FIG. 12, reference numerals 1201 to 1203 and 1205 to 1208 denote base elements that have already been assigned, and 1204 denotes a result of assigning the resistance element 1004.
[0034]
Here, a notation method of the element configuration of the resistance element 1004 is shown in FIG. “SP 5000” in the first term in FIG. 13 means one base element of resistance type SP of 5000Ω, and “SP 10000 * 2S” in the second term in FIG. 13 is a ground element of resistance type SP of 10,000Ω. Are connected in series, and the resistance element 1004 expresses that these resistors are further connected in series.
[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, reference numerals 1401 to 1403 and 1405 to 1408 denote base elements that have already been assigned, and 1404 denotes a result of assigning 1004. In the same manner as in the embodiment for assigning the electric circuit A, the two assignment results in the electric circuit B are evaluated in step S305. In step S306, the evaluation values are compared, and an assignment result that improves the evaluation value is adopted. In the assignment of the resistance element 1004 in the electric circuit B, the automatic element selection / assignment step S302 1204 is assigned as a group of base elements, and the distance from the transistor element 1407 in the connection relationship is short, so the arrangement shape evaluation value Get better. In contrast, in the element configuration priority assignment step S304 1404, only one 5KΩ resistive element is allocated apart, and two 10KΩ resistive elements are far away from 1407, so the arrangement shape evaluation value is deteriorated. . Therefore, the assignment result in step S302 shown in FIG. 12 is adopted.
[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 SYMBOLS 101 Display apparatus 102 External input device 103 Central processing unit 104 Memory | storage device 401 5Kohm resistance base element area | region 402 10Kohm resistance base element area | region 403 Transistor element area | regions 501-503 Resistance element 504-511 Transistor element 601-602 Assigned to a base element Assigned resistance elements 603 to 610 Transistor element 701 assigned to base element Resistive element 702 assigned to base element Transistor element 703 assigned to base element Resistive element 801 assigned to base element Element type 802 element Value 803 Element configuration 901 Resistor element 902 assigned to the base element Transistor elements 903 to 906 assigned to the base element Resistor element 907 assigned to the base element Resistor element assigned to the base element Group 1001 to 1004 Resistive elements 1005 to 1008 Transistor elements 1101 to 1103 Resistive elements 1104 to 1107 assigned to the base element Transistor elements 1201 to 1203 assigned to the base element Resistive element 1204 assigned to the base element Resistive elements 1205 to 1208 assigned to the base element Transistor elements 1401 to 1403 assigned to the base element Resistive element 1404 assigned to the base element Resistive elements 1401 to 1408 assigned to the base element Transistor elements 1501 to 1503 determined by the transistor elements 1504 to 1515 assigned to the base element Resistive elements assigned to the base element

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のステップで用いる割り当て方法の1つが、
電気回路素子毎にあらかじめ登録されている素子構成リストを基に、素子種別の適合する下地素子を検索し、割り当てを行う素子構成優先割り当て方法である請求項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のステップで用いる割り当て方法の1つが、
割り当て対象の電気回路素子と接続関係にある他の電気回路素子の下地素子に割り当てた場合に発生する端子間の距離が短くなる下地素子から順に割り当てを行う自動素子選択割り当て方法である請求項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.
JP08581099A 1999-03-29 1999-03-29 Semiconductor integrated circuit design method Expired - Fee Related JP3617366B2 (en)

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)

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