JPS621071A - 自動拘束条件充足を具備した集積化電気設計方式 - Google Patents

自動拘束条件充足を具備した集積化電気設計方式

Info

Publication number
JPS621071A
JPS621071A JP61043864A JP4386486A JPS621071A JP S621071 A JPS621071 A JP S621071A JP 61043864 A JP61043864 A JP 61043864A JP 4386486 A JP4386486 A JP 4386486A JP S621071 A JPS621071 A JP S621071A
Authority
JP
Japan
Prior art keywords
node
arc
database
cell
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP61043864A
Other languages
English (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.)
Fairchild Semiconductor Corp
Original Assignee
Fairchild Semiconductor Corp
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 Fairchild Semiconductor Corp filed Critical Fairchild Semiconductor Corp
Publication of JPS621071A publication Critical patent/JPS621071A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は電気回路及び集積回路を自動的に設計する方式
に関するものである。本発明は、特に、回路の設計を修
正する一方、回路設計の接続性及び幾何学的形状を制御
する方法に関するものである。
コンピュータ補助の電気回路設計は何年も存在しており
、且つ多くの異なった方式即ちシステムが構築された。
然し乍ら5回路が一層複雑化すると、該システムはあま
り強力でない設計補助の能力をどうにもならなくさせて
いる。屡々変化する技術は、剛性環境にしばられない設
計補助の必要性を生み出している。数の増えている解析
及び合成補助は設計環境に受は入れられるものでなけれ
ばならない。
今日の設計補助(デザインエイド)の問題の1つは、使
用されている益々増えている数の回路合成及び解析ツー
ルを受は入れることの能力がないことである。典型的な
設計方式即ちシステムは多くの部品から構成されている
。レイアウトの後。
設計は、設計基準検査器(デザインルールチェッカー)
、ノード抽出器(ノードエクストラクタ)、シミュレー
タ、静的解析器(スタティックアナライザ)、突き固め
器(コンパクタ)゛、テストベクトル発生器、製造準備
、及び回路及びタイミング検証の如き実験的解析ツール
によって後処理される。これらの後処理ステップに加え
て、レイアウトの前及び期間中に発生する多くの前処理
ステップがある。例としては、プログラマブルロジック
アレイ(PLA)及びゲートアレイ発生器、平面図シス
テム、セルライブラリサーチ、配線経路付け、その他多
くのものがある。効果的に設計する為には、設計者は複
雑なプログラムの組みを理解することが必要である。各
プログラムはそのシステムの他の部分には関係していな
いことが多く、その際にはユーザのフィードバックを困
難で謎めいたものとしている。
設計者にとって問題である設計方式乃至はデザインシス
テムの別の側面は、設計方式との対話の態様である。文
章設計言語は通常バッチ環境で使用され、その場合文章
的に特定した回路がレイアウト内にコンパイルされ且つ
ユーザの検証の為にプロットされる。グラフィック設計
言語はより対話性が強く、ユーザをグラッフィクディス
プレイとリンクさせて設計がなされるとそれを直ぐに視
覚的にフィードバックする。文章的設計言語は、グラフ
ィック言語よりも強力であることが多いという利点を有
しているが、それは文章的言語はより簡単に文書化し、
パラメータ化し、且つ転送する傾向を有しているからで
ある。更に、グラフィック出力の必要性が減少され且つ
プロッティング装置を共用することが可能であるから、
文章的設計はより廉価である。然し乍ら、グラフィック
設計言語は典型的に修得し易く且つ回路を形成する場合
に使用するのにより高速である。これらの利点は、ユー
ザへ直ぐにフィードバックが与えれるということ及び文
章と比較してグラフィック表示は設計される回路に近い
ということから得られる。
成る設計方式では文章とグラフィックの両方を与える。
従来技術の方式における別の欠点は、設計を回路接続性
の「スティック」形態か又は配置の幾何学的形態かで記
述する何れかをユーザが選択することが必要であること
である。スティック方式は、回路がワイヤで互いに接続
されている無次元部品の回路網として記述されることを
必要とする。部品及びワイヤの実際の寸法は設計補助が
レイアウトを形成した後に考慮される。一方、幾何学的
方式は、回路全体をシリコン、金属等の明確な区域とし
て取り扱う。この場合には1部品もワイヤも無く、幾何
学的形状のみがその両方を記述する。
スティック方式の利点としては、回路解析の為に電気的
接続性の情報が設計補助に与えることが可能であるとい
うことである。又、欠点としては、ユーザは回路の効率
的なレイアウトを適切に形成する為に設計補助に依存せ
ねばならない(又は、各部品の正確な寸法及び配置を記
述する多くの付加的な努力を払わねばならない)ことで
ある。幾何学的方式は、その使用を理解すること無しに
、回路を記述する多角形の集合を単に管理するだけであ
るから、インテリジェンスの要求度合は低い。
現在の電気回路設計補助は、上述した種類を参考に考慮
することが可能である。集積回路用の初期の設計補助は
文章的であり且つ幾何学をベースとしており、例えばP
AL、IC,LIC及びCIF等がある。多くのその後
の方式は幾何学をベースとしたものであるがグラフィッ
クインターフェースを提供していた。その例としては、
I CARUS、シーザ(Caesar) 、チップモ
ンク(Chipmunk)、アプリコン(Applic
on)のAGS等がある、幾何学をベースにした方式で
文章とグラフィックの両方の入力を受は付けるもの、例
えばDaeda 1 u s/DPL、S ILT及び
C:ADDSII等も存在している。
プリント回路設計方式は通常グラフィック及び接続性を
ベースとしており、例えば5UDS及びSca ldが
ある。より最近では、接続性のアプローチがEARL、
ALI、スティックス・アンド・ストーンズ(Stic
ks & 5tones)及び工において、文章的VL
SIレイアウト言語用のベースとして使用されている。
LAVA/Sed i tの例にある様に、文章とグラ
フィクスとを受は付ける接続性をベースにした方式もあ
る。
文章及びグラフィック設計を接続性及び幾何学の両方と
結合する方式は稀である。Mu1ga方式はスティック
方式の様に機能するが、完全に具体化した幾何学を表示
し且つ操作する。それはグラフィックエディタを持って
おり且つCプログラミング言語のスーパーセットと共に
文章的に使用することが可能である。
本発明は、以上の点に鑑みなされたものであって、上述
した如き従来技術の欠点を解消し、改良した電気回路の
設計方式及び方法を提供することを目的とする。
本発明に拠れば、電気設計方式が提供され、それはトッ
プダウン回路レイアウトの環境において多くの合成及び
解析用のツールを統合するものである。本方式はユーザ
が多数の技術分野1例えばnMO8,cMOs、バイポ
ーラ、プリント回路基板設計等において設計することを
可能とするものである。シミュレータ、設計基準検査器
等の解析およぼ合成ツールを必要に応じて付加したり削
除したりすることが可能であり、且つ技術を修正したり
又は新たなものを必要に応じて付加したりすることが可
能である。好適実施例ニオt)テハ、電気設計方式はC
プログラミング言語で書かれ且つUNIXオペレーティ
ングシステムを使用してVAXコンピュータで走る。
本電気設計方式の独得の特徴は、使用される回路表示及
び修正のモデルである。このモデルは、回路をワイヤ(
アーク即ちarQ)で接続されている電気部品(ノード
即ちnode)の回路網として取り扱う。各ノードは1
つ以上のポートを有しており、それはアーク接続の個所
であり、且つそのポートに接続することを許容されるア
ークのタイプに関する情報を担持している。アークは回
路の設計に関する拘束条件を課し、且つこれらの拘束条
件を1つのノードから別のノードへ伝播させる。ポート
はセル(1群のノード及びアーク)内のノードから外延
(6xport)させることが可能であり、従って該セ
ルの1例はそれ自身ポートを具備するノードとして取り
扱うことが可能である。
この構成は一様な階層即ちヒエラルキを与えておリ、そ
れは設計中の回路を表すデータベースを介して変化を伝
播させることを可能としている・該データベースは、セ
ルを包含するライブラリを有している。各ノードは別の
セルであることが可能であるか、又は特定の技術で記述
される原始的部品であることが可能である。全てのアー
クは該技術で記述される。この様に、技術は単に設計に
おいての使用に関しての情報を有する原始的部品の集合
に過ぎない。ノード乃至は部品の性質は該技術に応じて
変化する。例えば、n M OS技術において、部品は
単一のトランジスタ、コンデンサ等であることが可能で
あり、一方、プリント回路基板設計においては、部品は
パッケージ化したチップから構成される。バイポーラ技
術において、部品は、ベース、エミッタ、コレクタ等の
トランジスタの一部である。
本方式の構成により、混合した技術のヒエラルキのセル
を結合させて設計者が1つの技術においてチップをレイ
アウトし、次いでそのチップの1例をプリント回路基板
セル内のノードとして使用することが可能である。更に
1本電気回路設計方式の構成は、解析及び合成ツールが
技術の境界を越え且つ適切な情報を与えることを可能と
している。
好適実施例において1本発明の方式を使用して設計中の
回路の修正はノードの修正に制限されている。他の実施
例においては、修正されたノードに接続されているアー
クの属性に従いアークを修正することが可能な場合があ
り、該アークの他端におけるノードも変化可能な場合が
ある。本設計方式のデータベースはノードへの何れの変
更も一連のデータベース変化へ変換し、それは該回路の
全ての必要な部分をアップデートする。ノードへの変化
は、実際上、アークに沿って伝播し且つ周囲のノードへ
の変化を発生する。周囲のノード上−に化される新たな
拘束条件は、それらに接続されているアークに沿って更
にその後のノードへ伝播される。従って、一つのノード
を移動することにより回路全体を縮小したり拡大したり
させることが可能である。
データベースにおける一貫性が一連の手順に渡って得ら
れる。ノードへの変化が要求されると。
その変化はデータベースへなされる。該ノードに接続さ
れている全ての剛性アークは修正され、次いでこれらの
剛性アークに接続されている全てのノードは修正される
。全ての剛性アーク及び接続ノードが変化された後に、
非剛性アークが同様な態様で修正される。接続ノードが
移動せねばならないが既に移動されている場合、そのノ
ードは更に移動されずに、そのアークの1つを突いて必
要な補正を行うことが可能である。セル領域内の全ての
ノード及びアークが修正されると、該セルは検査されて
その寸法又はポートが変化されたか否かを確認する。寸
法のみが変化されている場合、そのセルの例と共に全て
のより高レベルのセルが同様の態様で変化される。該セ
ル上のポートの何れかが移動していると、回路全体を検
査して適切な修正秩序を確保する。この検査は、修正さ
れたセルから開始され且つ該回路のより高レベルへヒエ
ラルキ的に進行する。
データベースになされた各変化は、解析又は合成ツール
(tool)の1つから発生する。なされた変化、及び
その結果得られる全ての変化はデータベース内の変化バ
ッチ内に保持される6該ツールが変化を発行することを
完了すると、そのバッチにおける変化は全ての合成及び
解析ツール八同報通信される。
以下、添付の図面を参考に、本発明の具体的実施の態様
に付いて詳側に説明する。本発明は、電気回路自動化設
計方式を提供するものであり、それは複数個の且つ混合
した技術と共に任意の所望数の解析及び合成ツールを統
合するものである。
本方式は、トップダウン回路レイアウトに対しての能力
を提供し、且つ設計基準検査及びスイッチレベルシミュ
レーションを包含すると共に、多様な技術を使用して設
計を行うことを可能としている。動作に付いて説明する
と、本方式は1回路を電気的に接続され且つ幾何学的に
記述した部品のヒエラルキ回路網として表現する。個々
の部品を接続するワイヤは、部品が変化する場合に設計
全体に何が起るかを決定する属性を持っている。この情
報は、低レベル部品が修正される場合でも。
ヒエラルキを介して回路が適切に接続されており配向さ
れていることを確保する。本方式の主要な利点は、設計
に関しての設計基準や接続性等の特定化した情報を連続
的に観測し、且つ設計が進行するに従い該回路へなす設
計者の変化どは独立的にこの情報を維持する能力である
びA ツール 第1図は、本発明の電気設計方式の全体的なブロック図
である。図示した如く、第1図は制御10を有しており
、それはツール20−100のシーケンス動作を制御す
る。これらの各ツールは相互接続120を介してデータ
ベース130−140、ディスプレ及び入力制御150
、及び技術情報160の所望の要素へ接続されている。
制御10はラウントロピン(round robin)
制御であり、本発明の好適実施例の電気設計方式の主ル
ープを与える。ラウントロピン制御10は1種々の動作
を行うツール20−100の各々に、そのツールによっ
て実行される特定の動作を行う順番を与える。例えば、
本方式が活性化されると、ラウントロピン制御10は本
方式の制御をユーザインターフェース20へ渡す。ユー
ザインターフェース20がその活動を完了すると、制御
1oは本方式の制御をゲートマトリクスレイアウト30
へ渡す。同様に、ブロック20−100の各々に順番が
与えられる。その特定のツー゛ルが活性状態でないと、
制御は次のツールへ渡される。
ユーザインターフェースは1水力式に接続されるどの様
な入力装置も制御する。好適実施例において、ユーザイ
ンターフェース20はキーボード、マウス上のボタン、
又はその他の公知の入力装置からのコマンドを受は取る
。ユーザインターフェース20がこの様な入力を受は取
ると、該コマンドを実行し且つ本方式の制御を制御10
へ返す。
次いで、制御10は本方式の制御を次のブロック、この
場合はグー1−マトリクスレイアウトシステム30へ渡
す。ユーザインターフェース20からのコマンドがゲー
トマトリクスレイアラ30によって与えられるレイアウ
ト機能を使用することを要求すると、このレイアウトツ
ールはターンオンされて順番を取る。そうでないと、そ
れはオフのままであり、制御は検証システム40へ行く
。レイアウト30、検証40、シミュレーション50、
PLA発生器60の各々は、それがオンか又はオフの何
れかであるツールである。ツールがオフである場合、制
御は次の活性状態にあるツールへ行く。そのツールがオ
ンであると、ラウントロピン制御10は制御をそのツー
ルヘパスし、且つそれがその機能を実行することを許容
する。従って、ユーザインターフェース20への前の入
力信号がゲートマトリクスレイアウト、検証、シミュレ
ーション、又はPLA発生器を使用することを要求して
いると、そのツールはターンオンされ且つその完全な作
業を実行する。例えば1回路設計の検証がユーザインタ
ーフェース20で要求されると、検証ツール40がター
ンオンされ且つ回路の全てを介して全ての経路を解析し
、設計される回路がその所望の動作を実行することを確
認する。
シミュレーションシステム50は、4つの異なったシミ
ュレータ、即ちESIM  51.RNL52.5PI
CE  53.MAR854を有している。これらの各
シミュレータはコンピュータ補助設計(CAD)技術に
おいて公知であり、且つユーザインターフェースに供給
されるデータに従い、シミュレータの特定の1つが活性
状態とされ且つ設計中の回路の動作をシミュレートする
ESIM  51は米国マサチューセッツ工科大学(M
 I T)のクリス ターマン(Chris Term
an)が書いた事象をベースとしたスイッチレベルシミ
ュレータであり、それはn M OSのシミュレーショ
ンを取り扱う、RNL  52はCMO8及び0M08
回路用の事象をベースとしたスイッチレベルシミュレー
タであり、これもクリス ターマンによって書かれたも
のである。5PICE  53は米国カリフォルニア大
学バークレー校で書かれた公知の回路シミュレータであ
り、一方MAR854はナリンダ シン(Narind
er Singh)によって書かれたヒエラルキ的スイ
ッチレベルシミュレ−夕である。シミュレータ51−5
4の各々は公知である。
PLA発生器60はサンダラバラタン アールイエンガ
−(Sundaravarathan R,Iyeng
ar)が書かいたプログラムであり、それはプログラム
した論理アレイを発生する為に使用される。これはケー
スウェスタンリザーブ大学(Case−Western
 Ra5ervaυn1versity)から得られる
設計基準検査器70は回路設計用のツールであり、それ
は、第1図に示したシステムの場合、いつでもオンであ
る。回路内に変化を行う毎に、設計基準検査器は何がな
されたかを判別し、且つなされた変化が前に確立した設
計基準を侵害する場合にはエラーメツセージを供給する
。設計基準検査器は又電気的接続性を監視しており、オ
ーバラップすることが許容される物体の近傍に関しての
エラーメツセージを発生することを回避する。
回路網維持器ツール80はデータベースへ連続的な接続
性情報を与え、従って全てのツールはこれを直接的で且
つ迅速な解析において使用することが可能である。回路
網維持器lよ、事実上、どの部品がどの他の部品へ接続
されるかを監視する。
入出カブロック90は通常オフしており、且つ種々のデ
ィスクファイルを読取及び書込する為に使用される。好
適実施例においては、第1図における全てのものはラン
ダムアクセスメモリにあるので、ディスクアクセスが必
要な時はライブラリ情報を格納又は検索する為である。
その目的の為に、制御10は、例えば、ユーザインター
フェース20へのコマンドに応答して、入出力90を活
性化させる。入出カブロック90はバイナリ91、テキ
スト92、及びCIFフォーマット93でデータを読取
及び書込することが可能である。バイナリ即ち二進は通
常の技術であり、一方テキストはデバッグ操作及びエデ
ィティング操作に一層適している。CIFは集積回路を
形成する為に使用される製造インターフェースフォーマ
ットである。
ルータ即ち経路付は器100は合成ツールであり、それ
は常にオンである。2つの隣接するノードが離隔して移
動する場合にはいつでも、ルータ100はそれらの間に
接続を与えて接続性を維持する。
プロログインタプリタ(Prolog 1nterpr
etsr)35はユーザインターフェース、ゲートマト
リクスレイアウト30、及び検証4oの制御下で動作す
る。プロログインタプリタはプロログプログラミング言
語の解釈を与えてプログラムコマンドがエンターされる
とそれを実行する。好適に、ゲートマトリクスレイアウ
ト30及び検証40のルーチンはプロログで書かれてい
る。
全ての設計ツールはデータベース変化システム130、
データベース検査140、ディスプレイ及び入力150
、及び技術情報160の選択したものへ相互接続回路網
120によって接続されている。実際には、回路網12
0は2つのタイプの経路、即ち情報を要求するのみのも
の及びデータベースの状態を変更することも意図してい
るもの、を与える。例えば、設計基準検査器7oは相互
接続回路網100を介してブロック140−160へ接
続されている。設計基準検査器はデータベースを変化さ
せないので、それはデータベース変化ブロック130に
は接続されていない。設計基準検査器はデータベースを
検査し且つ検証するのみであり、従ってデータベースを
検査する為にブロック140に接続されており、データ
ベース対称に関しての情報を得る為にブロック160に
接続されており、且つエラーメツセージ又はディスプレ
イ出力信号を印刷する為にブロック150へ接続されて
いる。同様に、シミュレーションブロック50及び回路
網維持器80はデータベース内に変化を起させることは
不可能である。
ユーザインターフェース20、ゲートマトリクスレイア
ウト30、PLA発生器60.入出力90の様な他のタ
イプのツールはデータベースを検査することが可能であ
るばかりか、それに変化を起させることも可能である。
解析及び合成ツールは回路データベースと通信するサブ
ルーチンのモジュールである。各ツールは変化を報告す
る上で使用する為にデーベースマネージャー用の1組の
ルーチンを与える。バッチ開始及びバッチ終了ル−チン
はバッチ変化を限界を定める為にコールされる。これら
の間においては、新たな、変化した。
及び削除されたノード、アーク、セル、及びポートを報
告するルーチンに対するコールである。データベースは
適宜の時間に発生されない変化バッチをパッケージする
ことが出来ないので、これらのルーチンは変化を発生さ
せることが出来ない。
これらのルーチンによって所望される全ての変化はキュ
ーされ即ち待ちラインに入れられ且つ制御10によって
発行されねばならない。
ツール管理の上述したルーチンに加えて、一般的な初期
値化及び終了ルーチン(各々一度コールされる)、セル
再審査ルーチン(オフされた後にツールがターンオンさ
える時にコールされ、従ってそれは変更されたセルに追
いつくことが可能である)、及び機能が解析補助特定で
ある汎用制御ルーチンがある。一般的に有用であるがツ
ール特定ルーチンの例は入出力90のディスクエ/○ル
ーチン及び設計基準検査器7oの電気的接続性決定ルー
チンである。
各ツールが設計を処理することを援助する為に、全ての
ノード、アーク、及びポーはツールに1つづつ整数のア
レイを持っている。このメモリ位置はツールによる使用
の為に使用することが可能であり、且つ本システムによ
って保存される。幾つかのツールはこの整数を局所的記
録保持の為に使用し且つ他のものはそれをグローバルな
即ち総体的な属性として取り扱う。それは全ての対称に
取り付けられた1組の識別子、即ち中央のデータベース
により各ツールに対して管理される1組のミニデータベ
ースとして考えることが可能である。
データベースの データベース変化システム130はデータベースを変化
する為にルーチンを与える。このルーチンは、データベ
ースに内蔵されているものは拘束条件充足システム11
0及び取り消しくundo)制御115である。拘束条
件充足システムは、データベース変化ブロック130へ
供給される変化を検査し且つ付加的な変化を実施する。
簡単な変化がブロック130を介してなされる場合、そ
の変化に結合される拘束条件がある場合があり、それは
その他の多くの変化を起させる。これらのその他の変化
を行うことは、拘束条件充足システム110によって達
成される。取り消し制御115は、データベース記録に
なされる各変化を監視し、最も最近の1つ又はそれ以上
の変化を取り消すことを可能とする。取り消すことの可
能な変化の数は、ランダクアクセスメモリの適宜の形態
又は実施されるに従いディスクへの特定の変化の書込に
よってユーザにより決定される得る。データベース検査
ブロック140は、メモリ内にストアされる構造をアク
セスすることによってデータベースを検査することを許
容する。更に、サブルーチンはデータベース検査ブロッ
ク140によって与えられ、それは操作中の設計に関し
て所望により付加的な情報を計算する。
ディスプレイ/入力システム150は本発明の設計方式
用の幾つかのディスプレイを与える。ブロック150は
、全ての設計が行われるカラーモニタディスプレイを制
御し、且つ付加的にステータスディスプレイを与え、そ
れは本方式のユーザに対してエラーメツセージ又はその
他のメツセージを表示する。ディスプレイ及び入力は又
、データベースの状態を制御する為にユーザインターフ
ェース20用に意図された入力信号を受は取る。
カラーディスプレイ制御は、5IGGRAPHコア標準
、カラーグラフィック操作を実施する為の標準サブルー
チンインターフェースの態様で行われる。ディスプレイ
及び入力システム150も、エラーメツセージを印刷し
、キーボードから文字を読取る等によってシステムステ
ータス報告を与える。
技皿 技術は、電気設計のビュルディングブロックを与える。
原始的なノード及びアークに加えて、それらは全ての解
析補助用のこれらの部品の全てを記述する。与えられる
情報の例は設計基準、機能記述、グラフィック属性であ
る。現在の構成においては、技術は内部テーブルを使用
する手順の集合として具現化されている。テーブルは修
正(例えば、メタルの第2層の付加)したり創造したり
するのに容易である。
設計に使用する技術情報はシステム160番こよって維
持される。そのシステムは、任意の所望の技術を組み込
むことが可能であるが、所望の種類の技術に関する設計
方式に対する情報を与える。
技術情報160は、データベース内の各項目に対して「
実世界」解釈を与え且つデータベースを技術と独立した
ものとする。従って、データベースにおけるノードの数
学的表現は、使用される特定の技術に依存して多くの異
なった回路特徴に対応することが可能である。例えば、
ノードはnM○S技術からのトランジスタであることが
可能であり、プリント回路基板(PCB)技術からの透
孔乃至スルーホールであることが可能であり、又はバイ
ポーラ技術からのエミッタであることが可能である。
技術情報の操作の1例として、新しいノードがデータベ
ース内に創造されたという情報を回路網維持器8oが受
は取ると仮定する。回路網維持器は、ブロック140を
介してデータベースを検査し且つそのノードを記述する
情報を受は取る。回路網維持器80は、次いで、技術情
報160へ接続されて、そのノードの電気的接続性等の
情報を得る。技術情報ブロック160は技術の適宜の1
つへスイッチし且つその情報を回路網維持器80へ戻す
任意の所望の技術を技術情報システム160へ接続する
ことが可能であるが、好適実施例においては、該技術は
、nMOs  161(n−チャンネル金属酸化物半導
体)、NnMO8162(ノーザンテレコム版のn M
 OS ) 、 CM O5163(相補的CMO8)
、N0MO8164(ノーザンテレ:IムCMO8)、
FCMO8165(フェアチャイルドカメラアンドイン
ストルメント版のCMO5)、集積注入論理(I”L)
166、従来の論理ゲート技術、プリント回路基板 1
68.芸術(Art)  169(紙、スライド等用の
図を作製する為の汎用芸術作品技術)、包括的技術 1
70(1つの技術を別の技術へ接続する為に使用される
技術)を包含している。包括的技術170は、任意の2
つの他の点を電気的に接続するユニバーサルワイヤ、電
気的に接続すること無しに任意の2つの他の点を物理的
に接続する隠れたワイヤ、等の特徴のみならずその他の
特徴も有している。更に、技術情報はNCMO8171
(MO3IS  CMO3,米国政府研究CMO8)、
CLOGIC172(カルガリ大学版LOGIC) 、
GEM  173 (スタンフォード大学のエイミー 
ラスキー(Amy La5ky)によるグループ要素モ
デルを発生する非電気的プラニング技術)、EFID○
 174(カルガリ大学からの高レベルアーキテクチャ
−的デジタルフィルタ技術)を包含している。
更に広く使用されている技術の3つは以下に説明する3
つのnMOs、cMO8、バイポーラである。N−チャ
ンネル金属酸化物半導体(nMOs)技術は、メタル、
ポリシリコン、拡散内を延在することの可能なワイヤを
持っている。ポリシリコンと拡散の交点はトランジスタ
を形成する。
ポリシリコン/拡散交点を取り巻くデプリション注入を
具備するトランジスタはデプリショントランジスタであ
る。従って、通常(エンハンスメント)及びデプリショ
ントランジスタの両方がnM○S技術内の原始的ノード
として存在する。ポリシリコン及び拡散ワイヤを交差さ
せることによってトランジスタを形成することは適切で
はなく、トランジスタノードを使用せねばならない。こ
のことは、本方式が該回路の機能性をより正確に知るこ
とを可能とする。ポリシリコンと拡散ワイヤとが交差さ
れると、設計基準チェッカ70は設計者にエラーメツセ
ージを出す。
トランジスタに加えて、n M OS技術は接続用の層
に対して多くのノードを与える。メタルを拡散へ、メタ
ルをポリシリコンへ、又メタルを拡散へポリシリコンへ
接続させる為の多くのノードを与えている。拡散取り巻
き及びポリシリコン取り巻き等の様々の形態の7つの異
なった拡散対ポリシリコン埋込型コンタクトノードがあ
る。最後に、n M OS内の多くの層と関係する支持
ノードがある。3つの基本層、即ちメタル、ポリシリコ
ン、拡散、に加えて、n M OSは2つのタイプのデ
プリション注入(高度及び軽度)、2つのタイプのエン
ハンスメント注入、3つのタイプのコンタクト(通常、
寸法過大、埋込)、及びパッド開口層(蒸着酸化膜即ち
vapox又はオーバーガラス)を包含している。これ
らの全ての層は、任意の構造を構築することを可能とす
る関連するノードを持っている。
相補的金属酸化物半導体(0MO3)は、同じ信号で作
動する通常及びデプリションモードトランジスタの代り
に、反対の信号で動作するPウェルトランジスタ及びP
十トランジスタが存在するという点を除いてn M O
Sと略同等である。Pウェル及びP+は注入領域であり
、その中で回路作用が行われる。メタル及びポリシリコ
ンは、これらの区域内へ及びそこから外へ延在すること
か可能であるが、拡散層はそれらの存在に対して敏感で
ある。設計者から正確な注入位置決めの負担を解消する
為に、この技術は4つのタイプの拡散ワイヤ、即ち拡散
、Pウニル内の拡散、P十内の拡散、及びPウェル及び
P+の両方内の拡散、を与える。更に、4つのタイプの
金属対拡散コンタクト及び4つのタイプの拡散ビンが与
えられている。
周囲のPウェル及びP十注入を有するノード及びアーク
が存在することは、これらの注入は設計者に対して明示
的に記載される必要が無いことを意味する。Pウェルト
ランジスタをメタル拡散Pウェルコンタクトへ接続する
場合、接続用のアーク及び両方のノードは適切な量のP
ウェル取り巻きを有している。
フェアチャイルドカメラアンドインストルメントコーポ
レーションのアイソプレーナ集積注入論理は今日使用さ
れている多くのバイポーラ技術の1つである。該技術は
、トランジスタの相互接続に関する制限及び更に異なっ
たトランジスタが持つことのある通常でない形状によっ
て特徴付けられる。MO8技術と異なり、バイポーラト
ランジスタは複数個のコレクタ、ゲート、及びエミッタ
を持つことが可能であり、且つこれらの部品を複数個の
トランジスタ間で共用することが可能である。従って、
該技術において、制限した数のトランジスタを原始的ノ
ードとして与えることは不可能である。寧ろ、柔軟な設
計を与える為に、該トランジスタはその部品に還元され
ねばならない。
原始的トランジスタノードは、従って、埋込注入の空の
領域である。それに付設可能なものとしては、任意の形
状のコレクタ、ベース、及びエミッタがある。各コレク
タ、ベース、及びエミッタはそれを取り囲むメタルを持
っており、従ってトランジスタに配線を施すことが可能
である。バイポーラ技術はメタルの2層及びそれらを接
続する為の「貫通導体(via)Jノードのみならず抵
抗も与える。
ゲエノベースへなされる 化の目 イ”ツール20−1
00の各々にはそれらの特定の機能を行う為の活動の順
番が与えられるので、データベース変化システム130
はデータベースへなされる全ての変化の記録を維持する
。順番の間に変化がデータベースになされると、その変
化はその順番が終了する前に必要なその地金てのツール
へ「ブロードキャスト即ち回報通信」される。
従って、データベース変化システム130は変化同報通
信システム180を制御する。変化同報通信システム1
80がブロック130から変化を受は取ると、その変化
はツール20−100の各々へ供給される。オフしてい
るツールはその回報通信を受は取らないが、オンしてい
るツールはそれを受は取る。回報通信を受は取る主ツー
ルはユーザインターフェース20、設計基準チェッカ7
0゜回路網維持器80である。そ九に応答して、ユーザ
インターフェースはなされた変化を反映させるべくディ
スプレイ150をアップデートする為にプログラムされ
ている。データベース検査140及び技術情報160か
ら得られる情報に応答して該ディスプレイをアップデー
トする。
設計基準チェッカ70が回報通信を受は取ると、それは
受は取った変化を整列させてそれらを評価する。各々が
該整列の前部に到達すると、設計基準チェッカは該変化
を検査し、該変化が許容可能であるか否か決定し、且つ
適宜の認容又はエラーメツセージを印刷する。
1・な1 シーケンス 本電気設計方式が最初に活性化されると、ツー/L/2
0−100の各々には制御10によって初期値化コール
乃至発呼が与えられる。この時点において、各ツールは
予めプログラムされた初期値化ルーチンを実行する。例
えば、ユーザインターフェース20はディスプレイター
ミナル上にメニューを表示する。初期値化が完了すると
、ラウントロピン制御1oが制御をユーザインターフェ
ースへ移動させ且つコマンドを待つ。ユーザはターミナ
ルを介して信号を供給し何がなされるべきかを表す。
例えば、デフォルト即ち省略選択以外の異なった技術が
所望される場合、ユーザは適宜の入力信号をユーザイン
ターフェース2oへ与えて該技術を変化させることが可
能である。このコマンドはデータベース内に変化を生じ
ることば黛いが、そのかわりにユーザインターフェース
20を技術情報160へ接続させ且つ新たに選択された
技術の基本的要素をスクリーン上に表示する・ディスプ
レイにおける変化はディスプレイ/入力システム150
によって起される。変化がなされると、缶IJ御10は
ツール30乃至100の各々をポーリングし、且つ設計
は今開始されたばかりなので、それらの全てがオフであ
るか又は変化に無関心とされていることを知得する。次
いで、ユーザインターフェース20へ戻り且つ別のコマ
ンドを待つ。
ユーザが新たなセル、即ち以前にデータベース内に存在
していなかった構造を作る為のコマンドを出すと仮定す
る。このことは、本方式の制御をユーザインターフェー
ス20からデータベース変化ルーチン130へ移動させ
る。ユーザは第1の新たなセルを作ることを所望するの
で、その形成に関連する拘束条件は存在せず、従って拘
束条件充足システム110は喚起されない。その新たな
セルは取り消し制御115によって記録され、次いでブ
ロック180によって各々のツールへ回報通信される。
その変化が同報通信された後、本システムの制御はユー
ザインターフェース20へ戻り、それはスクリーン表示
をアップデートして該新たなセルの形成に対してブラン
クのスクリーンを与える。
次いで、本システムの制御は、その全てがオフであるか
又は無関心状態にあるその他のツールの各々を介して制
御1oによって移動される。制御がユーザインターフェ
ース20へ戻されると、ユーザはコマンドを入れること
が可能であり、例えば、本方式に対してトランジスタを
スクリーン上の特定の座標位置に位置させるべく命令を
与える。
本方式がこの命令を実施する為には、技術情報160が
検索され、且つどこにそのトランジスタを位置させるか
否かを決定する為にデータベース140の検査が必要と
される。そのトランジスタを位置させる場合に、ユーザ
インターフェース20はデータベース変化ルーチン13
0をコールしてデータベースをアップデートする。これ
は変化回報通信ブロック180によって回報通信され、
それは、どれか部品が書き換えられねばならないか否か
を決定する為にユーザインターフェース10への回報通
信がデータベース検査ブロック140をコールする時に
、ディスプレイ及び入力システム150をコールしてそ
のトランジスタをスクリーン上に表示し、且つ技術情報
ブロック160をコールしてそのトランジスタが実現さ
れるべき技術に関する適宜の情報をコールする。
ラウントロピン制御10は1次いで、該ツールの各々を
介して本方式の制御をシフトさせる。回路網維持器8o
と設計基準チェッカ7oを除いてツールのどれもが活性
状態には無いが、回路網維持器80は何もせず、且つ設
計基準チェッカ70はもっとも最近の変化を検査し且つ
何れかの設計基準が侵害されたか否かを決定する。本例
において、トランジスタのみが形成されたので、設計基
準は喚起されず、且つ設計基準チェッカはスイッチオン
しラウントロピン制御は究極的にシステム制御をユーザ
インターフェース2Qへ復帰させる。
本例を継続する為に、ユーザによってエンターされる次
のコマンドが「取り消しくundo) Jであると仮定
する。これは、実行された最後のコマンドを取り消す為
の要求であり、即ち今形成したトランジスタを消去する
為の要求である。その応答として、ユーザインターフェ
ース2oは本方式の制御をデータベース変化ルーチン1
30ヘパスし、該ルーチン130はその取り消しコマン
ドを認識して且つ制御を取り消し制御115ヘパスする
応答として、該取り消し制御は変化をデータベースシス
テム130へ送り、該トランジスタの除去を行う。これ
は変化回報通信システム180へ供給され、そこで該ト
ランジスタの除去が本方式の全てのツールへ同報通信さ
れる。ユーザインターフェースが該トランジスタを消去
すべく報告を受けると、それはシステム140及び16
0を介してデータベースを検査することから情報を得、
次いでディスプレイ150に命令を送って該トランジス
タをスクリーンから消去する。
次に、トランジスタを1つづつ設計する代りに、ユーザ
はPLA発生器ツールを喚起してプール関数を使用して
回路を設計することを所望するものと仮定する。この場
合、ユーザは最初にユーザインターフェース20を命令
してPLA発生器ツール60をターンオンさせる。これ
により、命令力〜ラウントロピン制御10へ伝達されて
PLA発生器60をターンオンさせる。同時に、信号が
相互接続120を介してディスプレイ/入力ブロック1
50へ伝達されて、スクリーンに適宜のメツセージを表
示させる。次いで、ラウントロピン制御10が本方式の
制御をその他のツール30−100ヘバスする。PLA
発生器60がボールされると、該制御はそのツールが活
性状態であることを判別しそれに出番を与える。次いで
、レイアウトツール60が所望の方程式に対してユーザ
にプロンプト即ち指令を与える。次いで、PLA発生器
60はその方程式を使用して所望の方程式に対してのレ
イアウトを発生する。このレイアウトの最中に、数百の
変化が発生する。データベースはブロック140無いに
おいて検査され、ブロック16oを介して技術的に検索
され、且つブロック130を介して変化を起させる。取
り消し制御115は各ステップを追従し、且つ各変化は
同報通信変化ブロック180を介して全てのツールへ回
報通信される。設計が完了すると、PLA発生器60は
それ自身をターンオフし且つラウントロピン制御10は
本方式の制御をユーザインターフェース20によって特
定される如くその他のツールヘパスする。
次いで、ユーザはシミュレータツール50を喚起するこ
とを所望するかも知れない。これは上述したのと同じ態
様で達成される。即ち、ユーザインターフェース20は
最初に本方式のオペレータからの命令を受は取り、シミ
ュレータシステム50をターンオンする。好適実施例E
SIM  51における省略シミュレータが喚起される
。応答して、データベースは技術情報160に関連して
システム140によって繰り返し検査される。ディスプ
レイ150はターンオンされて、操作に従いシミュレー
ションの状態を表示又は印刷する。このシミュレーショ
ンが完了すると、シミュレーションブロック50はそれ
自身ターンオフし、且つ本方式の制御は次のツールへ移
動する。
データベースの ゛ 第2図は、本発明の好適実施例において使用されるデー
タベースの構造を示したブロック図である。該データベ
ースは対象から構成されており。
その小さなサブセット乃至は副組が示されている。
各対象は、本方式が走っており且つ各対象が成る属性を
持っているコンピュータのメモリのサブセットによって
表される。例えば1回路設計におけるノードは幾つかの
属性又は特性、即ち名前、位置、及びそれへの接続のリ
スト、を持つことがある。各特性は装置のメモリ内の成
る空間を専有し、且つ該ノードは、メモリ内でそれを移
動させるのではなくそのノードの特性を表す記録内のフ
ィールドを変化させることによって「変化」させること
が可能である。データベース内の対象は自由メモリ空間
から割り当てることが可能であるから。
仮想メモリシステムは殆ど無制限の数の対象を許容する
データベースは、ノード、アーク、及びポートを有して
いる。ノードは対象1例えばトランジス夕、又はその一
部、ダイオード、抵抗、メタルピン等を定義するtアー
クは2つの端部を持っており、且つこれらの端部間の関
係を定義する。ポートはノードへのアーク接続の個所を
定義する。ノードは所望数のポートを有することが可能
である。
例えば、MOSトランジスタを表すノードは、ゲート、
ソース、及びドレインの両側への接続を許容する為に4
つのポートを持つものとし定義することが可能である。
従って、データベースの構造において、ポートはアーク
による接続を可能とするノードの特性乃至は特質である
データベース内の全ての対象は、2つの形態、即ちプロ
トタイプ及び例乃至はインスタンス(instanca
)の1つとして発生する。プロトタイプは単一対象であ
り、それは全ての例を定義する。例えば、n M OS
技術において、トランジスタはノードと考えられ、一方
バイポーラ技術において、コレクタそれ自身はノードと
考えられる。データベース内にストアされているのは、
ノードプロトタイプとしてプロトタイプのMOSトラン
ジスタを定義する。回路設計において該トランジスタの
各使用はノード例を有しており、その意味は関連するプ
ロトタイプに参照することによって確かめられる。ノー
ドプロトタイプに関する情報の格納は、該ノードの全て
の例に共通している全ての情報を与え、従って設計中の
回路において各ノード例に対して模写することは必要で
はない。各側は、その位置の如く該プロトタイプのその
特定の使用にとって特別な全ての情報のみならず、別の
情報を与える為に該プロトタイプへ戻るポインタを表す
第2図において、例えば、ブロック215はノードの例
、即ち集積回路構成体上の少量のメタルである。同様に
、アークプロトタイプ及びアーク例、ポートプロトタイ
プ及びポート例もある。
第2図において、両端矢印は各対象のプロトタイプと例
との間のポインタを与えている。従って、n M OS
技術232内に見出されるノードプロトタイプ203と
そのノード215の例との間に矢印がある。ブロック2
03は、ノード215の例に対してのノードプロトタイ
プ、即ちメタルピンである。同様に、全てのノードプロ
トタイプもポートプロトタイプに接続されている。例え
ば、8MO8技術232において、ノードプロトタイプ
203はポートプロトタイプ202及び204へ接続さ
れている。同様に、アークブトロタイブ201はn M
 OS技術232におけるメタルラインを表しており、
それはアーク例221のみならずアーク例217に対す
るプロトタイプである。アーク例217及び221の両
方がn M OS技術におけるメタルラインを表してい
るので、両方は同じプロトタイプ201へ戻るポインタ
を有している。
より高度のレベルの複雑性において、データベースは原
始的ノードプロトタイプ及び複雑ノードプロトタイプの
両方を有している。原始的プロトタイプは、設計の開始
時において使用される基本ビイルディングブロックを与
えている。例えば、n M OS技術においてlMOS
トランジスタは原始的ノードプロトタイプを表している
。然し乍ら。
データベースのユーザは、例えばブロック235の如き
より大型のグループの対象を構築して新たなプロトタイ
プを与えるかも知れない。ブロック235は「複雑ノー
ドプロトタイプ」であり、それはノード例を包含するよ
り低レベルの対象のグループによって定義される。 ノ
ードプロトタイプ235は集積回路においてメタルスポ
ットを表す。ブロック236内において複雑ノードプロ
1ヘタイブ235からノード例219へ矢印で示した如
く、複雑ノードプロトタイプ235はそれ自身非常に複
雑なノードプロトタイプ236においてノード例219
に対してのプロトタイプとして機能する。
複雑ノードプロトタイプ上のポートは、ブロック218
の如きポートプロトタイプを使用して定義することが可
能である。ブロック218は、原始的ポートプロトタイ
プ204が原始的ノードプロトタイプ203へ接続され
るのと略同−の態様でノードプロトタイプ235へ接続
されているポートプロトタイプである。この様に、ポー
トの例、例えば倒216は、「輸出」乃至は外延させる
ことが可能であり、その際にポート例216が位置され
ているノードプロトタイプ235上のボー1、プロトタ
イプ218として得られる様になる。この様に、複雑ノ
ードプロトタイプ235の如く一層複雑な構成の中に1
組のポートを取ることが可能であり、且つそれらを使用
して一層複雑なプロトタイプを定義することが可能であ
る。プログラム構成は複雑なアークプロトタイプを許容
しない。
ブロック236は「非常に複雑なノードプロトタイプ」
を表している。ブロック236は、ノードの3つの例、
219.223.227、及び4つのポート、220.
22.224.226を有している。前に説明した如く
、ノード例219は複雑なノードプロトタイプ235の
例である。ポート例220は、複雑ノードプロトタイプ
235から輸出即ち外延されたポートプロトタイプ21
8へのポインタを有している。ポート例220は、アー
クプロトタイプ201によって別のポート例222へ接
続されている。アーク例221はアークプロトタイプ2
01.即ちメタル接続の例である。ポート222はノー
ド223上のポートであり、且つその2つのポート22
2及び224と共に、ノード223は、夫々、ノードプ
ロ1−タイプ206・ポートプロトタイプ205及び2
07の例であり、それはn M OS技術232内のメ
タル−拡散(MD)コンタクトに対応している・ノード
227はノードプロトタイプ212、即ちバイポーラト
ランジスタ技術234内のバイポーラトランジスタのベ
ース領域、の例である。ベース領域ノードプロトタイプ
212はポートプロトタイプ210を有しており、その
例226を図示しである。ノードプロトタイプ212も
ポートプロトタイプ213を有しており、それは非常に
複雑なノードプロトタイプ236内においては使用され
ていない。従って、非常に複雑なノードプロトタイプ2
36は、例219によって表されているメタル領域がメ
タルワイヤ221によって例223によって表されてい
るメタル−拡散コンタクトへ且つユニバーサルワイヤ2
25によって例227によって表されているバイポーラ
トランジスタのベースへ接続されている構成を表してい
る。ノードプロトタイプ236は、本設計方式によって
容易に操作することの可能な複雑な構成を図示している
第2図も、電気設計方式データベースにおける2つの他
の対象、即ちライブラリー及び技術をあられしている。
技術及びライブラリはデータベース中の全ての対象、特
に全てのノード、アーク、及びポート例及びプロトタイ
プに対して群分けを与えている。例えば、部分的にブロ
ック232内に示しであるn M OS技術は、n M
 OS技術の全ての原始的な特徴、例えばメタルピンを
有するノードプロトタイプ203、メタルラインを有す
るアークプロトタイプ201、メタル−拡散コンタクト
206、nMOsトランジスタ(不図示)、ポンディン
グパッド(不図示)等を包含している。
ブロック234はバイポーラ技術の原始的特徴の小さな
サブセットを表している。例えば、アークプロトタイプ
211は抵抗(軽度にドープした多結晶シリコンライン
等)を表しており、一方ノードプロトタイプ212はバ
イポーラ装置のベース領域を表している。ブロック23
4内には示してないが、バイポーラ技術に包含されるも
のとしては、エミッタ、コレクタ、ダイオード、コンデ
ンサ等がある。
ブロック233は「包括的」技術を表しており、それは
技術の境界を越えての相互接続を与えている。図示した
包括的技術のサブセットはインビジプル(隠れている)
208及びユニバーサル2゜9と名づけだ2つのアーク
プロトタイプを有している。ユニバーサスアークプロト
タイプ209は、n M OS技術232のポート例2
24からバイポーラトランジスタ技術234のポート例
226へ接続する為に使用された。各ポートプロトタイ
プは、そのポートプロトタイプ内へ接続することを許容
される特別のアークプロトタイプに関する情報でコード
化されているので、包括的技術は1木刀式が異なった技
術間の接続を許容する唯一の方法である。
ブロック231はライブラリーの具体例であり、且つ2
つの主対象、即ち複雑ノードプロトタイプ235及び非
常に複雑ノードプロトタイプ236を有している。勿論
、初期的には、本電気設計方式が開始されると、技術は
対象のそれらの完全な補元を包含しているが、ライブラ
リーは空である。
ノードの例として、アーク及びポートプロトタイプは結
合されてデータベース内に一層複雑な対象を形成し、ラ
イブラリーが形成され、それはその時点において実行さ
れた設計の全てを包含している。ライブラリーはディス
クファイルに対応している。従って、電気設計方式がデ
ィスクからファイルを検索すると、単一ライブラリーが
形成される。例とプロトタイプとの間のポインタの為に
、ライブラリー内の全ての例は適切である。例えば、プ
ロトタイプに変化が起されると、ベース領域プロトタイ
プ212の特性は変化され、該変化は該ライブラリー内
のそのプロトタイプの全ての例へ対して直ぐに与えるこ
とが可能である。
これは、従来のコンピュータ補助設計方式よりも著しい
利点を与えるものである。何故ならば。
設計のより小さな部分は独立的に変化させることが可能
であり、その変化の悪影響は該設計のそのたの部分にお
ける全ての例に反映されるこトハナいからである。
狗】し乞求 第3図はフローチャートであり、それは第1図のブロッ
ク110の拘束条件充足が行われる態様の別の情報を与
えている。説明した技術を使用して、第2図に関連して
説明したタイプの如きデータベースへの変化は該データ
ベースの他の部分への変化となる。電気設計方式におい
て、3つのタイプの拘束条件がある。第1に、アークは
2つの対象(プロトタイプ又は例)を剛性的に接続する
ことが可能である。該対象の何れかが移動されると、剛
性アークは他方の対象を対応する変換を介して移動させ
る。第2のタイプの拘束条件は、アークは、2つの対象
が水平及び垂直には同一の面内に留まるが、互いに関し
ては配向状態をシフトする場合がある様な態様で2つの
対象を接続することが可能であるということである。こ
のタイプの拘束条件はマンハッタン拘束条件と言及され
る。
第3図のフローチャートは、如何に剛性及びマンハッタ
ン拘束条件が本電気設計方式において影響されるかを図
示している。第3のタイプの拘束条件は拘束条件のヒエ
ラルキー伝播に関するものである。該拘束条件は、デー
タベース内深くの対象になした変化が順々とより高いレ
ベルへデータベース全体を介して反射されることを許容
する。例えば、それを包含するセルをしてその寸法を変
化させるトランジスタの如きノード例の寸法になされた
変化はマスクレイアウト全体の膨張となる。
本電気的コンピュータ補助設計方式における拘束条件の
充足は繰り返し動作を包含しているので、サブルーチン
が広く使用される。第3図において、ブロックエ301
及び305はサブルーチンの開始エントリ点である。本
方式の繰り返し特性の具体例として、該プログラムは、
それがブロック314へ到達する迄第3図に示したステ
ップを介して実行することが可能である。この時点にお
いて、該プログラムは、ブロック305で開始してその
サブルーチンを再実行する全体的なサブルーチンへ再指
向される。実際上、該サブルーチンは必要な回数だけそ
れら自身をコールすることが可能である。
上述した如く、データベースはノード及びアークを有し
ている。ノードは部品を表しており、特別の部品1は該
ノードプロトタイプが見出される技術によって決定され
る。拘束条件はアーク上に現われ、且つ2つのノードが
如何にしてアークによって接続されるかの制御は互いの
関係で移動する。
本方式の構成はノード上の拘束条件を許可しないので、
全ての変化はノードになされ且つアークへは変化はなさ
れない。事実、ノードは重要な対象であるが、アークは
付随的な拘束条件を与えるものである。ノード、例えば
トランジスタ、が特定の位置に配置されるが、アークに
よってどれにも接続されていない場合、該ノードはその
上に何等拘束条件をもっておらず、且つそれへの変化は
データベース内の何かほかのものへの変化を強要するこ
とはない。一方、アークがノードへ接続されており且つ
そのノードが変化されると、その変化に関する拘束条件
はそのアークに沿って伝播して該データベース内に他の
変化を起させる。
第3図は、如何にしてノードへの変化がそのノードに直
接的に又は間接的に接続されているその他の全てのノー
ドへ伝播されるかを説明するフローチャート図を与えて
いる。ノードが変化されると、該プログラムの実行がブ
ロック301内に入り且つブロック301に続くステッ
プの経路に沿って進行する。該ノードの例が最初に影響
されると、例えば物理的に移動されると、データベース
は最初に影響され、且つデータベース内のそのノードの
表現は変化される。これは「ノードを変化」として示さ
れたブロック302によって図示されている。次いで、
そのプログラムの実行がブロック303へ進行し、そこ
で該プログラムが変化されたノード上の拘束条件に従う
。全ての拘束条件が該ノード上で追従されると、該プロ
グラムの実行はブロック304「完了」へ通過する。
ブロック303はブロック305−321へのサブルー
チンコールであり、それはノード上の拘束条件に従属す
るという概念を実行する。ブロック306で示した如く
、ノードが一度変化されると、該プログラムは該ノード
からそれ自身へ走行する次のアークを探す。1つが見つ
かると、そのアークはブロック307によって示される
如く変化される。この様な変化の1例は、該ノードが複
雑な機能的回路であり該複雑な機能的ノードの2つのポ
ート間をアークで接続することによってその部品の2つ
を短絡していることを過程することである。従って、そ
のノードが移動されると、短絡用アークも適宜移動され
るべきである。これらのステップ306及び307は、
ノードからそれ自身へ走るアークが無いということが分
かる迄繰り返され、その時に該プログラムの実行はブロ
ック308へバスする。
ブロック308は、それらに付与されている剛性拘束条
件を持っている全てのアーク上のループを開始する。ブ
ロック308は剛性の次のアークを捜索し、1つが見つ
かると、該プログラムの実行をステップ309へ転送す
る。全ての剛性アークが見出され且つブロック309−
312の態様で修正されると、該プログラムの実行はブ
ロック313ヘパスする。
第1の剛性アークがステップ308において見出される
と、ブロック309は、その剛性アークによって接続さ
れているノードは既に変化されたか否かをテストする。
該ノードが未だ変化されていない場合、実行はブロック
310ヘパスし且つ該ノードは変化される。次に、ブロ
ック312で示した如く、そのアークを適宜移動するこ
とによってそれを変化させ、従ってそれは今や2つの移
動したノードを接続し、且つ該プログラムの実行は、ブ
ロック308によって示した如く、剛性の次のアークを
見つけることに復帰する。各ノードが変化される場合各
ノード上にマーカーを配置し、該プログラムがブロック
309において検査されたその後のノードが既に変化さ
れているか否かをブロック309において決定すること
を可能とする。
剛性アークの他端におけるノードが既に修正されている
と、該プログラムはブロック309からブロック311
ヘパスしてそのアークを検証する。
このステップは、該2つのノード間の接続が該プログラ
ムの実行をブロック308へ復帰させる前に有効である
ことを確保する。これら2つのノード間の接続が無効で
あると、該ノードの両方は既に移動しているという過剰
に拘束した状態が起こり、且つ該拘束条件を充足するこ
とは出来ない。
これが発生すると、マンハッタン拘束条件がユーザへ提
案され、該アークを複数個の部分に分割しくそれに曲げ
を与え)、従って該接続は該ノードを移動すること無し
になすことが可能である。
剛性のアークの全てが探索され且つ変化されると、該プ
ログラムの実行はブロック313ヘパスし、ブロック3
10によって移動されたばかりの剛性アーク上に次のノ
ードを見つけ出す。その変化したノードはその上にアー
クを持ち、それは又従属されねばならず、且つこれらの
1つが見つけ出されると、該プログラムの実行はブロッ
ク314ヘパスし、それはブロック305で開始するサ
ブルーチンを再コールする。そのノードからそれ自身へ
走るアークはブロック306及び307によって変化さ
れ、続いてブロック308−314で図示した如くその
ノードから他のノードへの全ての剛性アークを変化させ
且つブロック315−321で図示する如くそのノード
から他のノードへの全てのマンハッタンアークを変化さ
せる。究極的に、該プログラムの実行は制御の元のフロ
ーのブロック313へ復帰し、ステップ310で移動さ
れた剛性アーク上に次のノードを位置させる。
この様に、該プログラムの構成は、そのプログラムが一
層深くなる前に対象に関する全ての直接的剛性拘束条件
の移動を許容する。これは最下位レベルから最高位への
変化の伝播の一層明確な構成を可能とする。
ブロック310でなされた変化によって移動された剛性
アークの全てが探し出されると、該プログラムの実行は
ブロック315ヘパスしてマンハッタンアークを探索す
る。ブロック308−312に関連して説明したものと
対応する態様で・ブロック315−320においてプロ
グラム実行は各マンハッタンアークを検討する。各アー
クがブロック319で変化された後、そのノード上の拘
束条件はブロック320で従属され、事実上、該プログ
ラムの操作をブロック305へ戻して、究極的にブロッ
ク306,308.313,315の各々を通過してパ
スする。最後のマンハッタンアークが見つけ出され且つ
変化されると、最初に補正されたノードに接続されてい
る全てのアーク及びノードは適宜調節されることとなる
ヒエラルキー・ 化の伝 第4図は、第1図における拘束条件充足ブロック110
の詳細な具体例を示したフローチャートである。第3図
に図示したものと対応する態様で、本電気設計方式の拘
束条件充足ルーチンの繰り返し特性の為に、第4図はそ
れ自身によって又は他のサブルーチンによってコールさ
れ得るサブルーチンとして示しである。第4図は、変化
を行った後にコールされる主サブルーチンである。第1
図に関連して説明した如く、各設計ツールのラウントロ
ピン順番の期間中、各々はデータベースへ変化を起させ
ることが許容される。説明した如く、第3図は単一対象
に対しての単一変化の効果を図示しており、且つ如何に
してアークが横断され且つこれらのアーク上の特性を評
価してその他のどの様な変化が必要であるかを決定する
ことを示している。
然し乍ら、これらの変化が一度なされると、それらは回
路網上方へヒエラルキー的に伝播されねばならない。例
えば、セル内のトランジスタが左へ移動される場合、そ
れは該セル内においてその他の多くの変化を発生する場
合があり、例えば電気コンタクトの移動等がある。然し
乍ら、発生されることのある一層相対的な効果があり、
それはセル自身が設計においてどこか他に複製されるこ
とがあり、且つそのプロトタイプセル内の特定のトラン
ジスタの移動の為に、トランジスタの全て及び例の全て
も移動される。これらのその他のセルの1つにおいて、
そのトランジスタに接続されているアーク(ワイヤ)が
ある場合があり、又そのアークの接続個所も又移動する
。従って、詳細な全ての変化がなさ九且つ第3図の拘束
条件の全てが従属されると、第4図の論理線図が辿られ
てヒエラルキー伝播が実施される。第4図のフローチャ
ートは、対象の集合、即ちセルへの変化をなすことによ
ってコールされる。第4図に示したサブルーチンは、第
3図に関連して説明した操作によって何れかの内容が修
正された各セルに対してコールされる。
セルが一度変化されると、実施される第1のステップは
ブロック402で示した如くセル寸法の変化である。次
いで、プログラム実行がブロック403ヘパスして、該
変化したセラのその他の例が存在するか否かを決定する
。存在しない場合、そのサブルーチンはブロック404
で示した如く完了される。この場合、修正した特定のセ
ルより上にはヒエラルキーが無いので、ヒエラルキー変
化の懸念は無い。
該セルの他の例が存在する場合、実行はプロツり405
ヘパスして付加的な操作を制御する。ブロック405及
び407によって行われたテストの結果は、可能な発生
を2つの場合、簡単な場合と複雑な場合、に分割するこ
とである。変化したセルの全ての例が同一のより高いセ
ル内にあり且つこのセルの接続個所が変化しなかった場
合、簡単な場合が提起される。例えば、トランジスタに
接続されているコンタクトが変化されるセルであり且つ
そのトランジスタが移動される場合を考えてみる。その
セルの全ての例が何かの大きなセル内にある場合、実行
はブロック407ヘパスする。
然し乍ら、そのトランジスタが輸出したポートを持って
いる場合、その運動はブロック4.07内で検知され、
且つ複雑な場合が未だ使用される。又、変化したセルの
全ての例が同じ大きなセル内に無い場合、例えば幾つか
は−の他のタイプのセルにあり且つ幾つかは別のタイプ
のセル内にある場合。
実行はブロック406ヘパスし且つ複雑な場合が提起さ
れる。
ブロック405及び407によって決定される如く、全
ての例が同じセル内にあり且つそのセル内のポートが移
動しなかったと仮定すると、変化されたセルの各側はブ
ロック409によって修正される。ブロック409にお
いての各側の修正に従い、各側においての拘束条件はブ
ロック412で従われる。ブロック412は第3図に示
したサブルーチンをコールし、且つそのセル内の各拘束
条件に従う。全ての拘束条件が一度従われ且つ全ての適
宜の補正がなされると、ブロック414がコールされる
。ブロック414は第4図のサブルーチンをコールし、
該プログラム操作を次のより大きなセルへヒエラルキー
を跳羅させる。修正した例を包含する単一のより大きな
セルのみが存在せねばならず、そうでないとプログラム
実行はブロック406で開始する複雑な場合へ転送され
てしまう。該サブルーチンが一度コールされると、上述
した手順が、修正した例が存在しなくなる迄ヒエラルキ
ーの漸次的レベルで繰り返され、その時点で該プログラ
ムはブロック415へ到達し且つ操作が完了する。
一層複雑な場合に移ると、即ち、全ての変化した例が同
一のセル内に存在せず又はポートが移動すると、本方式
はどのレベルのヒエラルキーでそれが存在しているかを
決定することが必要である。
本方式がステップ4C)6−413を実行する際にこれ
を達成する為に、セルにマークを付ける。初期的には、
ヒエラルキー全体内の全てのセルにフラッグを配置させ
る。これらのフラッグはMOD及びNo  MODと命
名される。
ステップ406において全てのマークを消去し次いで全
体のヒエラルキーを再度マーク付けする目的は、設計に
対する全ての変化がヒエラルキーの底部から上部へなさ
れしかも該プログラムが正確にどこで動作している場合
に該変化が何時なされたかが明らかでないことを確保す
ることである。
例えば、現在のセルAが変化され且つセルB内にセルA
の幾つかの例が存在しており且つセルC内にセルAの幾
つかの例が存在しており、且つセルB内にセルCの例が
存在している場合に、変化が伝播される順番は重要であ
る。この様な場合に、本方式はセルAを変化させ次いで
セルBを変化させることは出来ず、そうでないとエラー
を発生する。そのかわりに、本方式はセルAを変化させ
次いでセルCを変化させねばならない。この様に、セル
Bが変化する時速に、セルC及びセルA内においては変
化した全てのものを取りこんでいる。
従って、複雑な場合においては、ヒエラルキー全体にマ
ーク付けを行い、且つヒエラルキー調査はヒエラルキー
を上下して行われ、変化をなす上での適切な順序を見つ
け出す。基本的に、該プログラムがステップ409,4
12,414を行い、且つヒエラルキーの次のレベルへ
跳鑵する前にプロトタイプ的変化の全ての例を修正する
ことが必要である。即ち、全ての修正は、上方へ伝播さ
れる前に、設計全体に渡ってヒエラルキーの最低部レベ
ルにおいて最初に行われねばならない。
これを達成する1方法はブロック406.408.41
0に関連して図示しである。第1に、ブロック406の
いて、全てのセル上の全てのマークが消去される。次に
、ブロック408によって示した如く、変化中の特定の
セルがMODフラッグでマーク付けされてこのセルは修
正されることが必要であることを表す。次いで、ヒエラ
ルキー全体がサーチされ且つセルが同様にマーク付けさ
れた別のセルの例を包含する場合にはMODとマーク付
けされ一方セルは変化されることを必要とするヒエラル
キーにおける該セルよりも下側に何も持っていない場合
にはNo  MODとマーク付けされる。MOD及びN
o  MODフラッグの全てがセットされると、修正さ
れたセルはブロック409.412.414の簡単な場
合における如くチェックされる。
ヒエラルキーの調査はブロック410で開始し、それは
「根本」セル、即ち他の例を持っていないセル、を探し
出す。ブロック410に根本セルが残っていない場合、
本プロセスはブロック411で示した如く完了する。然
し乍ら、根本セルが見つかると、該プログラムの実行は
ブロック413へ移動し、その根本セルのツリーをチェ
ックし、そのサブセルにマークを付け、且つ前述した如
くそれらを修正する。各根本セルのツリーが検査される
詳細な態様は第5図に関連して説明する。
根本セルのツリーの 査 第5図に示した如く、根本セルのツリーの検査は2つの
作業を有しており、その第1の作業はブロック502−
510に図示したステップから構成されている。この作
業は、No  MOD又はMODで修正されているから
非修正であるかに拘らずヒエラルキー全体における全て
のセルにマークを付けることである。この第2の作業は
ブロック511−520で示してあり、セルが一度修正
されるとそれを介してトレースし、第4図の簡単な場合
のヒエラルキー的変化を適用する。
ブロック501において、実行される全体的なステップ
はセルCのツリーの下方を見ることである。第1に、本
方式はセルC内に例を持った次のセルAを探し出す。無
い場合には、該プログラムの実行はブロック508へ移
動する。ブロック502に1つが見出されると、実行は
ブロック503へ移動し、且つセルAが検査されて、修
正されて既にマーク付けされているか否かを決定する。
マーク付けされている場合には、セルCの内容はヒエラ
ルキー的変化によって影響され且つセルCはブロック5
04において修正されてマーク付けされる。何れの場合
においても、実行はブロック505ヘパスして、セルA
が一体全体マーク付けされたか否かを決定する。ブロッ
ク504が修正されてセルCにマーク付けをした後にも
ブロック505に到達される。セルAにマーク付けされ
ると、該プログラムの実行はブロック502へパス、 
して、セルC内に例を持っている次のセルAを取る。そ
うでない場合には、該プログラムはブロック506ヘパ
スし、且つセルAのツリーを下方へ見渡すが、これは第
5図のサブルーチンに対する繰り返しコールである。こ
のパスの期間中、検査されたセルは前のパスにおいて検
査されたものよりもルベル下である。再度、同じテスト
が行われてMODフラッグをヒエラルキーの上方へ伝播
させる。
第5図に示したサブルーチンの動作中、セルに変化がな
されたか否か又はセルに何の変化もなされなかったか否
かを表すフラッグがリターンされる。これらのフラッグ
はサブルーチンを抜き出る為に使用される特定のブロッ
クによって表示され、従ってブロック510及び519
は「変化無し」フラッグをリターンし且つブロック52
0は「変化」フラッグをリターンする。このフラッグの
値はブロック506内のサブルーチンコールのリターン
と共にチェックされ、次いで制御をブロック502又は
507へ転送する。
ブロック502−507内のループの繰り返し特性の結
果、プログラム実行がブロック508へ到達してブロッ
ク502が確立したループから脱出する時速に、現在の
セルのレベルより下のヒエラルキー全体は現在のセルC
迄全でマーク付けがされている。ブロック508によっ
て示される如く、セルCが修正としててマーク付けがさ
れない場合、実行はブロック509ヘパスし、そこでセ
ルCはNo  MODとしてマーク付けされる。実際上
1水力式はセルCより下側のヒエラルキー全体を調査し
、セルCを修正としてマーク付けさせたセルCより下側
では何等修正がなされなかったことを決定している。セ
ルCがブロック509においてNo  MODとマーク
付けされると、実行はブロック510へ移動する。何等
の変化もなされなかった。
一方、セルCが修正としてマーク付けされると。
実行はブロック511へパスし、そこでセルC内側のセ
ルAの各側「工」が検索される。各側が検索されると、
それが修正されるものとしてマーク付けされたか否かを
決定する為に検査され、そうである場合には、修正がブ
ロック513によってなされる。そうでない場合には、
該プログラムの実行はブロック511ヘリターンしてセ
ルCの内側のセルAの次の例工を探索する。
セルC内側のセルAの最後の例工が修正されると、該プ
ログラムの実行はブロック514ヘパスし、且つ各修正
された例工上の拘束条件はブロック516によって従属
される。これは第3図のサブルーチンに対するコールで
ある。これら全ての例が修正されると、該プログラムの
実行はブロック517ヘパスして、セルCが寸法を変化
させたか又はその1つ又はそれ以上のポートを移動させ
たか否かを決定する。これらの何も発見されない場合、
セルCに対して何等の変化も表示されない。
一方、ポートが変化したか又はセルCの寸法が変化する
と、該プログラムはブロック518においてセルCの寸
法を変化させ且つブロック520においてこの変化を表
示する。
実際上、ノードを変化させる為に常に2つのステップが
存在する。第1に、該ノードが変化されねばならず、且
つ第2に、該ノード上の拘束条件が従属即ちフォローさ
れてどの様なその他の変化がなされねばならないかを決
定する。例えば、第5図において、ブロック511.5
12.513のループが完成されると、ブロック514
.515.513の第2のループがセルC内の全ての例
に対して従属される。ブロック516に到達すると、セ
ルエ上の拘束条件が従属される。これら全ての拘束条件
が従属され且つ全ての変化が正しい順序でなされると、
ブロック517のテストが行われて、なされた全ての変
化の結果として、ヒエラルキー内のその他のセルに影響
を与える様なセルCへ何等かの変化がなされたか否かを
決定する。
全ての変化が単にセルC上に内部的影響のみを持つもの
である場合には、セルCへの変化はヒエラルキーを更に
上方へ伝播されない。セルCが変化すると、ブロック5
20はこの情報へブロック506へ報告し、従ってこの
セルの例を適切に調節することが可能である。
以上、本発明の具体的実施の態様に付いて詳細に説明し
たが、本発明はこれら具体例にのみ限定されるべきもの
では無く、本発明の技術的範囲を逸脱すること無しに種
々の変形が可能であることは勿論である。
【図面の簡単な説明】
第1図は本集積化電気設計方式の好適実施例の全体的構
成を示したブロック図、第2図は本電気設計方式のデー
タベースにおいてそれにより次第に複雑になる構成が発
生される態様を示した概略図、第3図はノード上の拘束
条件が従属される手順を示したフローチャート図、第4
図はセルに変化がなされる態様を示したフローチャート
図、第5図はそれにより変化がヒエラレルキー的に設計
を介して伝播される態様を示したフローチャート図、で
ある。 (符号の説明) 10:ラウンドロビン制御 20:ユーザインターフェース 30:ゲートマトリクスレイアウト 40:検証システム 50:シミュレーション 60:PLA発生器 70:設計基準チェッカ 80:回路網維持器 90:入出力 100:ルータ 12o:相互接続回路網 手続補正書防即 昭和61年7月23日 特許庁長官  宇 賀 道 部 殿 1、事件の表示   昭和61年 特 許 願 第43
864号2、発明の名称   自動拘束条件充足を具備
した集積化電気設計方式3、補正をする者 事件との関係   特許出願人 名称  フェアチャイルド セミコンダクタ コーポレ
ーション4、代理人

Claims (1)

  1. 【特許請求の範囲】 1、電気回路を設計する方式において、該回路の変更可
    能部品をノードとして表し、ノード間の相互接続をアー
    クとして表し、設計に関する拘束条件を該アークにのみ
    課し、回路を表す1組のノード及びアークを形成し、該
    回路に変化を与えてその際に少なくとも1つの選択した
    ノードを変化させ、該選択したノードに接続されている
    アーク上の拘束を検査し且つそれに応答して該選択され
    たノードに接続されているアーク及び該選択されたノー
    ドに接続されている全てのノードに該拘束条件によって
    課される変化を行わせることを特徴とする方式。 2、電気回路を設計する方式において、該方式へ設計中
    の回路に関する情報を供給するユーザインターフェース
    手段、該ユーザインターフェース手段によって供給され
    る情報をストアする為に該方式へ接続されているデータ
    ベース手段、ストアされた情報を解析する為に該データ
    ベース手段へ各々選択的に接続可能な第1複数個のツー
    ル、該第1複数個のツールの各々に接続されると共に該
    ユーザインターフェース手段に接続されていて該複数個
    のツールのどれを該データベース手段へ接続させるかを
    制御する制御系、を有することを特徴とする方式。 3、特許請求の範囲第2項において、該データベース手
    段が、該ユーザインターフェース手段からの情報に応答
    して該データベース内にストアされている情報へ変化を
    起させる為のデータベース変化手段と、該データベース
    内にストアされている情報の検査を許容するデータベー
    ス検査手段とを、有することを特徴とする方式。 4、特許請求の範囲第3項において、該データベース変
    化手段へ接続されて拘束条件充足手段が設けられており
    、該データベース手段内にストアされている情報へ変化
    を起させ、その変化は該ユーザインターフェース手段に
    よって供給される変化から得られることを特徴とする方
    式。 5、特許請求の範囲第3項又は第4項において、少なく
    とも1つの合成ツールが該制御系に接続されており且つ
    該データベース手段内にストアされる情報へ変化を起さ
    せる為に該データベース変化手段へ選択的に接続可能で
    あることを特徴とする方式。 6、特許請求の範囲第2項乃至第5項の内の何れか1項
    において、第2複数組の技術情報を有しており、各組は
    該ユーザインターフェース手段からの情報に応答して該
    データベース手段内にストアされている情報の解釈を与
    える該データベース手段へ選択的に接続可能であること
    を特徴とする方式。 7、部品がノードとして表され且つ部品間の相互接続が
    アークとして表されており且つ電気回路の設計に関する
    拘束条件はアークにのみ課される電気回路を設計する方
    式において、該拘束条件は各アークを剛性又は非剛性の
    ものとして特性付けることを包含しており、選択したノ
    ードへの変化から得られる変化を該回路へ起こさせる方
    法において、 (1)両端を該選択したノードへ接続している何れかの
    第1タイプのアークを探しだし、 (2)該第1アークを変化させ、 (3)この様な第1アークの全てが変化される迄ステッ
    プ(1)及び(2)を繰り返し、 (4)一端を該選択したノードへ接続しており且つ他端
    を他のノードへ接続している何れかの第2タイプのアー
    クを探しだし、尚該アークは剛性拘束条件を有しており
    、 (5)該他のノードが変化されているか否かを決定しも
    し変化されている場合には該第2タイプのアークを検証
    し、さもなければ、 (6)該他方のノードを変化させ、 (7)該選択したノードと該他方のノードとの間のアー
    クを変化させ、次いで (8)この様な第2タイプのアークの全てが探し出され
    る迄ステップ(4)乃至(7)を繰り返す、ことを特徴
    とする方法。 8、特許請求の範囲第7項において、ステップ(8)に
    続いて、 (9)ステップ(6)において変化された該他のノード
    の何れかを探しだし、 (10)この様な他方のノードが全て探しだされる迄ス
    テップ(1)乃至(8)を繰り返す、ことを特徴とする
    方法。 9、特許請求の範囲第8項において、ステップ(10)
    に続いて、 (11)一端を該選択したノードへ接続し且つ他端を別
    のノードへ接続している何れかの第3タイプのアークを
    探しだし、該アークは非剛性の拘束条件を持っており、 (12)該別のノードが変化されているか否かを決定し
    もし変化されている場合には該第3タイプのアークを検
    証し、そうでなければ、 (13)該別のノードを変化させ、 (14)該対3タイプのアークを変化させ、(15)該
    別のノードに対してステップ(1)乃至(14)を繰り
    返し、 (16)この様な第3タイプのアークの全てが探し出さ
    れる迄ステップ(11)乃至(15)を繰り返す、こと
    を特徴とする方法。 10、特許請求の範囲第9項において、該第2タイプの
    アークを検証するステップ及び該第3タイプのアークを
    検証するステップの各々は、該アークが延在するノード
    間の接続が無効であるか否かを決定しもし無効ならがエ
    ラー信号を発生することを特徴とする方法。 11、相互接続された部品の集合はセルとして特性付け
    られ且つセル間の相互接続はアークとして特性付けられ
    且つアークはセルのポートにのみ接続する電気回路を設
    計する方式において、選択したセル内に起された変化を
    他のヘルへ伝播させる方法において、 (1)該選択されたセルの寸法を変化させ、(2)該選
    択されたセルの何れかの他の例を探しだし且つ探しださ
    れない場合には本方法を終了し、そうでない場合には、 (3)(a)該選択されたセルの全ての例が単一の大き
    なセル内にあるか否か及び(b)何れかのポートがステ
    ップ(1)で移動されたか否かの両方を決定し、次いで
    (a)が真で(b)が偽の場合にはステップ(4)乃至
    (6)を実施し、そうでなければステップ(4)乃至(
    6)を実施し、 (4)全ての例を修正し、 (5)ステップ(4)で修正された各例に接続されてい
    る各アーク上の拘束条件に従い、 (6)該大きなセルに対してステップ(1)乃至(5)
    を繰り返し、次いで本方法を終了し、 (7)全てのセル上の何れのマークも消去し、(8)該
    選択したセルをフラッグでマーク付けし、(9)他の例
    を持たない何れかの他のセルを探しだし、 (10)ステップ(9)で探し出したセルを検査する、
    ことを特徴とする方法。
JP61043864A 1985-02-28 1986-02-28 自動拘束条件充足を具備した集積化電気設計方式 Pending JPS621071A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US70712585A 1985-02-28 1985-02-28
US707125 1985-02-28

Publications (1)

Publication Number Publication Date
JPS621071A true JPS621071A (ja) 1987-01-07

Family

ID=24840454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61043864A Pending JPS621071A (ja) 1985-02-28 1986-02-28 自動拘束条件充足を具備した集積化電気設計方式

Country Status (3)

Country Link
EP (1) EP0196940A3 (ja)
JP (1) JPS621071A (ja)
CA (1) CA1270067A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164911A (en) * 1989-12-15 1992-11-17 Hewlett-Packard Company Schematic capture method having different model couplers for model types for changing the definition of the schematic based upon model type selection
CN117931755B (zh) * 2024-03-22 2024-06-18 上海合见工业软件集团有限公司 批量导入封装库的方法、装置、设备和介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4470114A (en) * 1982-03-01 1984-09-04 Burroughs Corporation High speed interconnection network for a cluster of processors

Also Published As

Publication number Publication date
EP0196940A3 (en) 1989-11-29
CA1270067A (en) 1990-06-05
EP0196940A2 (en) 1986-10-08

Similar Documents

Publication Publication Date Title
US5050091A (en) Integrated electric design system with automatic constraint satisfaction
US5513119A (en) Hierarchical floorplanner for gate array design layout
US5604680A (en) Virtual interface representation of hierarchical symbolic layouts
US6718520B1 (en) Method and apparatus for selectively providing hierarchy to a circuit design
JP2614986B2 (ja) フィールドプログラム可能なゲートアレイ・インプリメンテーションをマスクプログラム可能な論理セル・インプリメンテーションに変換するための方法と装置
US6421814B1 (en) Method of extracting layout parasitics for nets of an integrated circuit using a connectivity-based approach
US20070094622A1 (en) Methods, Apparatus and Computer Program Products for Generating Selective Netlists that Include Interconnection Influences at Pre-Layout and Post-Layout Design Stages
Trimberger et al. A structured design methodology and associated software tools
US5551014A (en) Method and apparatus for designing integrated circuits according to master slice approach
Baker Artwork Analysis Tool for VLSI Circuits
JPS621071A (ja) 自動拘束条件充足を具備した集積化電気設計方式
Ousterhout Magic Tutorial# 1: Getting Started
Scheffer A methodology for improved verification of VLSI designs without loss of area
Hill Icon: A Tool for Design at Schematic, Virtual Grid, and Layout Levels
Rugen et al. An interactive layout design system with real-time logical verification and extraction of layout parasitics
Van Staden A Physical Design verification framework for superconducting electronics
EP0262397A2 (en) Procedure and data structure for synthesis and transformation of logic circuit designs
Ipsen et al. Cello: an integrated analog macrocell CAD system
Atkinson BIRGMAN: a compact portable symbolic VLSI editor after INGRED, but with relative size relationship displayed
Pareek Automatic Translation of Compass Standard Cell Library to Cadence ASIC Design Platform
Cadman Design of printed circuit board layouts using graph theoretic methods
Hill et al. Overview of the IDA system: A toolset for VLSI layout synthesis
Dinakar et al. Cadence Design System Tutorial
Tsareff et al. An expert system approach to parameterized module synthesis
JPH04255075A (ja) Vlsiレイアウト設計支援装置