Nothing Special   »   [go: up one dir, main page]

JP3004650B2 - Optimized integrated circuit - Google Patents

Optimized integrated circuit

Info

Publication number
JP3004650B2
JP3004650B2 JP61-269991A JP26999186A JP3004650B2 JP 3004650 B2 JP3004650 B2 JP 3004650B2 JP 26999186 A JP26999186 A JP 26999186A JP 3004650 B2 JP3004650 B2 JP 3004650B2
Authority
JP
Japan
Prior art keywords
circuit
delay
output
active element
active
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 - Lifetime
Application number
JP61-269991A
Other languages
Japanese (ja)
Other versions
JPS6316651A (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.)
AT&T Corp
Original Assignee
AT&T 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
Priority claimed from US06/798,557 external-priority patent/US4827428A/en
Application filed by AT&T Corp filed Critical AT&T Corp
Publication of JPS6316651A publication Critical patent/JPS6316651A/en
Application granted granted Critical
Publication of JP3004650B2 publication Critical patent/JP3004650B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 発明の技術分野 本発明は集積回路、特に具体的な条件に対して最適化
された集積回路の設計及び製造に係る。 技術の背景 大規模集積回路(VLSI)が単一チツプ中に数10万個の
トランジスタを有する電子回路を生成しうる本技術の能
力により、作成可能になる。そのようなVLSI回路の効率
のよい設計は、回路中に能動要素を生成することを含む
相互接続パターンの設計及び回路の配置の設計のための
何らかの自動的手段をもたずには、不可能である。従つ
て、VLSI回路の設計の補助となる技術で、予想以上の多
数の生成物が得られることに注意されたい。そのような
設計手段の集積部分は、設計の効率を評価するための手
段である。これはパワー消費、動作速度、能動要素の面
積等の測定をする手段を含む。 タイミングの分析はそのような道具の一つで、それは
トランジスタの大きさをはかるアルゴリズムの本質的な
要素であるため、重要な一つである。もちろんタイミン
グ分析はそれ自身回路の設計に重要である。“MOS回路
模擬装置中の同期路分析”と題する論文、アイ・イー・
イー・イー・プロシーデイング、19回、デザイン・オー
トメーシヨン・コンフアレンス(IEEE、Proc・19th・De
sign Automation Conf。)(1982、629−635頁、ヴイ・
アグローワル(A.Agrawal)には、デイジタル回路を通
しての時間遅れを評価するためのアルゴリズムについて
延べられている。それはそのようなアルゴリズムの第1
のものではないが、重要なものの1つである。なぜなら
ば、調べている回路中にラツチ(メモリ)が存在するか
否かを識別でき、回路の組合された部分の任意の入力か
ら任意の出力までの時間遅れを評価することができる。
他の二つのタイミング分析器は、エム・シユピ(N.Joup
pi)の“NMOS VLSIのためのタイミング分析”アイ・イ
ー・イーイー・プロシーデイング・20回デザイン・オー
トメーシヨン・コンフアレンス(IEEE Proc、20th Desi
gn・Automation Conf。)(1983年6月)、411−418頁
によるタイミング検証(TV)プログラム及びジエイ・オ
ースターハウト(J.Ousterhout)、“MOS VLSI設計の
ためのスイツチ−レベル遅延モデル”、アイ・イーイー
イー・プロシーデイング、21回、デザインオートメーシ
ヨン・コンフアレンス(IEEE、Proc、21st、Design Aut
omation Conf(1984年6月)542−548によるクリスタル
プログラムである。 クリスタル及びTVプログラムはアグローワルのアルゴ
リズムと、それらがより詳細なタイミング評価法を用い
ることが異る。その評価法は入力信号が到達する単一の
信号ゲートのグート遅延が異ることを考慮に入れる。TV
及びクリスタルプログラムの両方の欠点は、それらが集
積回路中に帰還が存在することを扱わず、現在設計及び
製作されているデイジタル集積回路のほとんど全部を除
外してしまう。 集積回路設計の別の重要な点は、用いられるトランジ
スタ面積評価法である。もちろん多くの決定論的な面積
評価法がある。1つの単純な方式は、たとえばすべての
トランジスタを回路全体の速度条件を満す一つの大きさ
に作ることである。別のより複雑な方式においては、ト
ランジスタの大きさはパワーレール(電池又は接地)
に、いかに近づけるかに関係している。また、具体的な
回路設計に基き、集積回路内のトランジスタの寸法を評
価する多数のアルゴリズムがある。最も初期のものの一
つは、ルエーリ(Ruchhi)らの仕事で、“デイジタルシ
ステムのための解析的パワー/タイミング最適化技
術”、アイー・イーイーイー・プロシーデイング14回デ
ザイン・オートメーシヨン・コンフアレンス(IEEE、Pr
oc、14th Design Automation)(1977年6月)142−146
頁に述べられている。彼らは彼ら自身のタイミング分析
器を考案し、そのアナライザを助けて、彼らはトランジ
スタの寸法を測るためのアルゴリズムを考案した。しか
し、彼らのタイミング分析器は回路中にメモリが存在す
るか否かを認識し扱う能力をもたない。それはまたトラ
ンジスタゲートの大きさの増加とそれに伴う駆動する必
要のある容量の増加から生じる余分の遅延も考慮に入れ
ない。増加したゲート容量を考慮しないアルゴリズム
は、エム・マトソン(M.Matson)により“デイジタルMO
S VLSI回路の最適化”プロシーデイング・チヤペル・
ヒル・コンフアレンス・オンVLSI(Proc・Chapel Hill
Conf on VLSI)(北カロライナ大学、1985年5月)、10
9−126頁に提案された。マトソンのアルゴリズムもまた
能動要素のより正確な遅延モデルを用い、入力波形の傾
斜を考慮に入れる。 マトソンのアルゴリズム及び他の周知のすべての寸法
評価アルゴリズムにある最大の欠点は、一般に帰還と特
にメモリ要素を自動的に認識し扱う能力を持たないこと
である。本質的にすべてのデイジタル集積回路は順次回
路で、順次回路はメモリを含むため、これはきわどい欠
点がある。これらのアルゴリズムの別の欠点は、それら
が不必要に正確な最適化アルゴリズムを用い、そのため
大規模集積回路設計の分析は不必要に遅くなる。 従来技術の方法の1ないし複数の限界を克服するの
が、本発明の目的である。 本発明の構成 集積回路の本発明の設計は、たとえば応答速度のよう
なあらかじめ選択された制約にあうまで、くり返し分析
され、くり返し毎に改善される。設計の改善は能動要素
の大きさの凸の関数であることを特徴とする回路の各能
動要素を通る遅延に対するモデルを選択することにより
実現される。凸関数モデルを用いると、各くり返し毎に
回路の静的タイミング分析が、特定の制約を乱す最も重
大な出力を同定するために用いられる。その選択された
出力を用いて、そのパスのタイミング構造の分析をする
と、その大きさの変化が動作特性の最大の改善を生じる
そのパスの能動要素が同定される。従つてその能動要素
の大きさは調整され、反復される。 更に、改善するため、選択されたくり返しにおいて、
回路の部分回路網の相互接続パターンが評価され、動作
特性を改善するために再配置される。一般に、そのこと
は入力が遅く到達するそれらの能動要素は、部分回路網
の出力部分に電気的にできるだけ近く置かれることを意
味する。 発明の実施例 電子回路は純粋に組合された回路と帰還路をもつ回路
に分割できる。純粋に組合された回路においては、信号
は一方向にのみ流れ、異なる方向から組合さり、所望の
論理状態に達する。帰還路を含む回路において、メモリ
が実現され、メモリが存在することにより、回路は順次
回路となる。順次回路は常に純粋な組合せ論理を含む部
分とたとえばフリツプ−フロツプのような複数の基本メ
モリ要素以外何も含まない部分に分割できることは、よ
く知られている。 大きさがX1、X2、…XNの全部でN個のトランジスタ
(たとえばMOSトランジスタ)を有する第1図に示され
たような回路が与えられると、本発明の方法ではXi値を
調整することにより、回路特性が改善される。2つの示
性数が特に関心がもたれる。1つはTで、それは回路が
動作する最小刻時周期又は非刻時路の場合伝搬遅延であ
る。他方はAで、それは単にトランジスタの大きさ又は
別の言い方をすると、能動要素の全面積の合計である。
面積Aは最小に又は押えるべき回路の多数の他の要因と
正の関係にあることがわかる。第1にAが増すにつれ、
回路はより広いシリコン領域を必要とする。第2に全ゲ
ート容量はAに比例しているから、容量を充電又は放電
するのに必要なパワーは、Aが増すとともに増加する。
第3にスタテイクCMOSゲートの場合、プル−アプ及びプ
ル−ダウン回路網の両方が部分的にターンオフする遷移
時間中、短い時間が存在する。この短絡パワーもAとと
もに増加する。同様に、配分負荷NMOSゲートはプル−ダ
ウントランジスタの大きさが増すにつれ、より多くのパ
ワーを消費する。第4に、多くの状況で最も重要である
と考えられるが、チツプ中のデバイス欠陥の確率は、チ
ツプの全能動領域に強く依存する。能動領域が増すにつ
れ、チツプ誤動作の確率は増す。 最適化する任意の方法の厳密さを必要とする点は、最
適化すべき式又は関数の形、より具体的にはその関数の
性質又は振舞いである。本発明の原理に従うと、良い結
果を生じ、かつ結果に効率よく迅速に到達できる関数を
探す。それにその結果が絶対的な最小値に近く、迅速に
到達でき、プロセスが関数のいくつかの局所的最小値で
つかえないことを意味する。数10万のトランジスタを有
する集積回路では、その最終結果に迅速に到達する最適
化プロセスは、ぜいたくではなく、絶対に必要なもので
ある。 従つて、予備的な段階として、最適化すべき要因と課
すべき制約を、選択しなければならない。3つの定式化
を考える: 1)任意の出力における最大遅延があらかじめ決められ
た定数Kより小さいという制約を受ける集積回路中の能
動要素の面積を最小にする: 2)能動要素の面積があらかじめ選択された定数より小
さいという制約を受ける任意の出力における最大遅延を
最小にする: 3)係数ATKは最小にする。 第1の定式化は所望の動作速度(刻時周波数)がしば
しば与えられるため、恐らく最も有用なものである。そ
のような場合、第1の定式化はシステム中の回路を、与
えられた刻時周期Kにあわせるために用いられる。ま
た、他の2つの定式化とは異り、同じKの値に別々に最
適化される2つの異なる回路は、一緒に考えるのが最適
である。この事実により、最終的な回路中の最適さを失
うことなく、部分回路は別々に最適化される。 第2の定式化は回路をできるだけ速くする時使われ、
シリコン面積、パワー又は歩留りの制約を受ける。 第3の定式化はA及びTの両方が重要であるが、それ
らに相対的な重さがわけられる場合の総合的方式であ
る。たとえば、Aが5パーセント増加してもTを1パー
セント減少させたいと考える程、Tが重要であるかもし
れない。そのような状況では、Kを5に設定する。 プロセスを最小にするために考えるべき恐らく最も重
要な第2の要因は、回路の能動要素を表わすのに用いら
れるモデルである。MOSFET集積回路の場合、第2図に示
されたモデルを選択した。ここで、10、11及び12はそれ
ぞれMOSFETのゲート、ドレイン及びソースノードを表わ
す。容量Cg13はゲート及び接地間の容量で、容量Cd14は
ドレイン及び接地間の容量、Cs16はソース及び接地間の
容量である。FETがターンオフするスイツチ17は閉じら
れ、抵抗Rds15はFETがオンにある時のドレイン及びソー
ス間の抵抗である。ゲート、ソース及びドレイン容量は
すべてトランジスタの大きさx(チヤネル幅)に直接比
例するが、ソース−ドレイン抵抗はxに逆比例する。 第3図は3個のFETの“トーテムポール”構成の場合
における第2図の分布RCモデルに従うゲート遅延のモデ
ルを表わす。ペンフイールド−ルビンスタイン分布RCモ
デルは、第3図の回路の放電時間の上限は、次のように
なることを示唆している。 (R1+R2)C2+(R1+R2+R3)C3 (1) ここで、R1、R2及びR3はそれぞれトランジスタx1、x2
及びx3の抵抗Rdsに等しく、C1はトランジスタx1のCdと
トランジスタx2のCsの和に等しく、C2はトランジスタx2
のCdとトランジスタx3のCsの和に等しく、C3はトランジ
スタx3のCd及びCLである。C1は閉じるスイツチ以下で、
それはスイツチを閉じる時、それを遅くするより、ゲー
ト動作を速める。このことは最初の電流が容量C1中にし
み込むのが観測された時、明らかに見ることができる。
容量は短絡回路のようにみえ、抵抗R1を通しては電流は
流れない。従つて、遅延の上限を(上で述べたように)
求める時、C1は無視でき、そのためC1は第(1)式には
現われない。 第(1)式をトランジスタの大きさxiの関数として表
わした時、各Riは1/xiに比例し、各Ciはある定数とある
xiに比例する各項の和である。Ci中の定数項はワイヤ容
量を表わし、変数項は場合によつてゲート、ドレイン又
はソースの容量を表わす。第(1)式は次のように書け
る。 ここで、A、B、C及びDは定数である。 回路を通る遅延はその回路中で生じる遅延の合計であ
ることを認識すると、回路中の回路遅延の一般的な形と
して、次のようになる。 ここで、aij及びbiは負でない定数で、回路中の特定
の回路に対し、ほとんどゼロになる。第(3)式により
表わされる関数は凸であることが示される。このことは
終端の点が関数のグラフ中にあるN+1次元空間の直線
部分の、それ自身の全部がグラフ上にあるかグラフより
上にあることを意味する。加えて、第(3)式はポジノ
ミナルとよばれる特定の種類の凸関数に属する。 上の結果、制約の3つすべての定式化は、凸関数を最
小にすることがわかり、別の凸関数上の上限になる。凸
の特性は従来技術で用いられた最小化関数では実現でき
なかつた著しい利点を生む。最大の利点は、局部的な最
小値とみられる任意の点が、全体の最小でもあることで
ある。 凸プログラミングの分野は、最近数十年熱心に探究さ
れており、多くの計算技術が使用できる。たとえば、ア
ール・テイー・ロツクアフエラー(R.T.Rockafelle
r)、コンベクス アナリシス(Convex Analysis)(プ
リンストン大学出版1970)を参照のこと。 所望の最適化はチツプ、VLSIチツプ全体又はシステム
全体の一部についての最適化であるから、最適化法は可
能な限り有効でなければならず、最適値を見出すのに絶
対的な正確さを犠牲にすることすらある。最適値をそれ
にできるだけ近く近似するための効率のよい方法をもた
らす本プロセスは、一般的に以下の段階に従つて進める
ことにより、非常に迅速に最適解に到達する。 プロセスはVLSI回路設計中のすべての能動要素を、そ
れらの可能な最小寸法に設定することから始まる(第4
図中のブロツク100)。これにより、最小の能動面積を
含み、最も信頼性のある(能動面積が大きければ大きほ
ど、製造中チツプの欠陥がより発生しやすくなる。)最
初の設計が生じる。 次に、回路を表わす式(特定)が第1図の構造に適合
するように調整される。(第4図中のブロツク100) 上の予備的な段階に続き、(段階2から生じた特定か
ら)最も劣つた出力を同定し選択する回路分析で、くり
返しプロセスが始まる(第4図中のブロツク110)。
“最も劣つた”ということで、たとえば、Tが1マイク
ロ秒の時1つの出力が1.2マイクロ秒の遅延をもち、別
の出力は1.5マイクロ秒の遅延をもつとすると、1.5マイ
クロ秒の出力は最も劣つた出力として選択される。 次の段階では、その出力に効果をもちうる各トランジ
スタを調べることにより、選択された出力中の遅延の原
因が調べられる(第4図中のブロツク120)。調べるた
めに、各電気的ノードに2つの数が割り当てられる:tl
(低くなるのに最も遅い時間)及びth(高くなるのに最
も遅い時間)である。遅延の“劣つた点”を調べる際、
thが“劣つた点”の原因である時、プルーアプ回路が調
べられ、tlが“劣つた点”の原因である時、プルーダウ
ン回路が調べられる。その試験の中には考えている能動
要素とそれを支持する要素の両方が含まれる。支持要素
の中にはもちろん要素の入力信号に寄与するすべての能
動要素がある。これにより鎖状の試験が生まれ、それは
後方へ“歩く”ことを特徴とし、選択された出力中の遅
延を制御するクリテイカルパスを同定する。たとえば、
第3図において、調べることには最も遅い入力を生じる
クリテイカルパスの調べに加え、3つのトランジスタ全
部が含まれる。 先の段階で調べられたそのような各トランジスタiの
場合について、決められた量だけxiを増すことから生じ
た時間の増加が計算される。そのような最大の増加を起
すクリテイカルパス中の一つのトランジスタが、決めら
れた量だけ大きくされる。(第4図中のブロツク130) 課せられた制約が満されるが最小にされる量を減す変
換が不可能になるまで、出力遅延決定の点に戻す(すな
わち第4図中のブロツク110に戻す)ことにより、くり
返しループが閉じられる(第4図中のブロツク140)。 回路を通る多数のパスが、回路自身の大きさに比べ非
常に大きくなりうるから、実際に回路を多くのパスに広
げないことにより、本方法の利得が生じる。加えて、特
定のxiの変化は2つのゲート遅延を変えられるだけであ
る:変更したトランジスタを含むゲートの遅延と変更し
たトランジスタを駆動するゲートの遅延である。従つ
て、最も悪い出力遅延を見出すために、遅延の計算をく
り返す時、単一の変数の変化の結果変る可能性のある量
のみを再計算する。 上の式で示されるように、大きさの関数としての遅延
曲線は、Ax+B/x+Cの関係に従う。ここで、A、B及
びCは0より大きい。このことはxのある最小値から、
xが増すにつれ、ある最小遅延に到達するまで、遅延は
減少する。最小遅延の大きさを越えて大きさが増加し続
けると、遅延が増す。 通常最小遅延の点を越えて、トランジスタの大きさを
増したいと望むことはないであろう。しかし、本発明の
一視点に従うと、これがまさに行われることである。そ
の理由は、トランジスタの大きさがその速度だけでな
く、その周辺の速度にも影響を及ぼすということを観測
したこと及び“トーテムポール”構成において、パワー
レイルに近く配置されたトランジスタの容量(すなわち
大きさ)を増すと、“トーテムポール”の出力に対して
スイツチングトランジスタの遅延が減少するということ
を観測した(第3図に関連して先に観測した。)にあ
る。従つて、本発明のこの点に従うと、本方法にはある
段階(ブロツク120内)が含まれる。それは1つ以上の
入力が出力に影響を与え、最も遅い入力より先に出力に
影響を及ぼすトランジスタの大きさを増す方向に目を向
け、それらトランジスタのゲート上の信号を幾分遅くす
る点にまで増すすべての状況を分析する。トランジスタ
の大きさxが小さい時、遅延は面積の増加に対し、かな
り急速に減少する。xが大きい時、遅延はxとともに直
線的に増加し、それは遅延の増加速度より比較的遅い。 本発明の更に別の状況では、本方法に一段階が含まれ
る(第4図中のブロツク150)。それは部分回路網の特
性(速度)を改善するため、VLSI回路中の部分回路の順
序を探す。具体例がこのことを最もよく説明し、その目
的のために、第5図は2つのトランジスタの順次部分回
路網を描く。この場合、トランジスタ20への入力は7nse
cの遅延で到達し、トランジスタ21への入力は3nsecの遅
延で到達する。第5図に示されたタイミング構成におい
て、もし(分布RCモデル中の)各容量が値Cをもつよう
にとり、各抵抗が値Rをもつようにとるならば、(より
遅い入力が制御された)出力放電時間は、7nsec+R2C+
2R(C+Cload)である。入力リードを逆にし、より遅
い入力をトランジスタ21に印加すると、出力放電時間
は、7nsec+2R(C+Cload)である。これらの2つの遅
延の差、2RC、はトランジスタ20が2つのトランジスタ
間のノードの容量を放電するにかかる時間を表わす。こ
の放電は第5図の回路の両方の構成で起らなければなら
ない。しかし、後者の構成において、遅い方の入力が到
達する前に、3nsec及び7nsec間の“何もない”時間間隙
中にそれが起る。 第6図に関して上のことを一般化すると、スタテイク
CMOS複雑ゲートは、プル−アプ回路網25及びプル−ダウ
ン回路網26を含む。プル−アプ回路網はPFETのみを含
み、プル−ダウン回路網は多くのNFETを含む。2つの回
路網への入力は同一であり、(相互に二重である)2つ
の回路網はVdd及び接地の間に直列に相互に接続されて
いる。2つの回路網間の接続は、ゲートの出力を形成す
る。2つの接続点と任意の数の入力を有する回路網は、
以下の3つの規則の任意のくり返しによる組合せによつ
て、単一トランジスタで合成できる。 1)単一トランジスタは回路である。たとえば第2図に
おいて、ソース及びドレインは2つの接続点であり、ゲ
ートは回路網の単一入力である。 2)任意の数の回路網は、それらの接続点を直列に接続
し、別の回路網を形成することができる(たとえば第5
図)。新しい回路網の入力は、要素回路網の入力の結合
である。新しい回路網の接続点は、自由のまま残つてい
る要素の2つの接続点である。 3)任意の数の回路網はそれらの接続点を並列に接続
し、別の回路網を作ることができる。新しい回路網の入
力は要素回路網の入力の結合である。新しい回路網の接
続点は接続された要素回路網の接続点である。 上に続いて、一連の合成則により、N個の部分回路網
から回路網が形成された時は常に、回路網により計算さ
れた論理機能は、部分回路網の順序をどう選んでも影響
を受けない。しかし、第5図の簡単な例で示されるよう
に、ゲートのタイミング特性は一般に、異なる順序に対
しては異なる。遅延を最小にするために、本発明の改善
された方法では、各部分回路網に対し最も遅いものがタ
ーンオンということに従つて、部分回路網に順序をつけ
る。そのような時間の最も早ものをもつ部分回路網は、
パワーレイル(場合によつてVdd又は接地)に最も近く
置かれ、そのような時間の最も遅いものを有する部分回
路網は、出力の最も近くに置かれる。回路網が与えられ
ると、この最も遅い時間がターンオンするということ
は、構成しているトランジスタの最も遅いターンオン時
間の最大値となる。NFETの最も遅いターンオン時間は、
そのゲートのハイに行く最も遅い時間である。PFETの最
も遅いターンオン時間は、そのゲートのローに行く最も
遅い時間である。 第7及び8図は、14個のトランジスタを含む複雑なゲ
ートについてのこのプロセスを示す。第7図は分類間
で、第8図は分類後である。入力A、B、C及びDのハ
イに行く最も遅い時間及びローに行く最も遅い時間は、
Al<Bl<Cl<Dl及びAh<Ch<Bh<Dhの順序である。部分
回路網30において、直列になつた3個のトランジスタ
は、すでに最適な順序にある。AはVddの最も近くにあ
るべきである。なぜならば、そのローに行く最も遅い時
間は最も早く、Bがその次に、Cがその次に続くからで
ある。しかし、プル−アプは部分回路網30及び31に直列
にして合成され、これらの回路網はそれら自身の順序に
ある。部分回路網30より早い最も遅くターンオンする時
間をもつ部分回路網31は、Vddの最も近くにあるべきで
ある。従つて、第8図において、部分回路網30及び31の
位置は逆にされる。一方、プルーダウン部分回路網32中
で再序列が必要である。それは直列になつた3個のトラ
ンジスタについてである。トランジスタBは出力の最も
近くにあるべきで、Cがそれに続き、Aがそれに続く。
部分回路網32中のこの構成も、第8図中に示されてい
る。 上の方法を実施するには、当業者には周知の通常の要
素の組合せを必要とする。システムについて実行するこ
とは、特別の目的のハードウエア又はソフトウエアで制
御された一般化された回路から成るシステムにおいて可
能である。現在の技術では、後者の方式が実現が容易
で、それは特に必要とされる多数の段階が本来アルゴリ
ズムで、当業者にはソフトウエアの形で使用できるから
である。 本発明の原理を実施するシステムの構造が、第9図に
示されている。ブロツク151はタイミングアナライザ
で、それは配置を最適化すべき回路の指定を、入力とし
て受ける。それは凸の遅延関数を生じる回路の能動要素
を表わすモデルを含む。そのモデルの助けと、ブロツク
157の制御下で、ブロツク151は(たとえばヴイ・アクロ
ーワル(V.Agrawal)に教えられるように)条件を分析
し、回路の出力を近似された遅延時間と関連づける表を
作る。その表はメモリ156に蓄積される。ブロツク152に
制御が行き、それは制御ブロツク157から満すべき速度
の条件を得て、速度条件を最大量はずすブロツク151に
より作られた表から、その出力を選択する。次に制御は
ブロツク153に行き、そこで選択された出力に付随した
クリテイカルパスが同定される。同定されたクリテイカ
ルパス中の各能動要素は、寸法の与えられた増加(現在
ある大きさからの増加)に対する遅延の増加を見積るこ
とにより、大きさの変化に対するその感度を決めるた
め、評価される。ここで、すべての能動要素は何らかの
最初の最小寸法から始まることに気がつくであろう。遅
延の増加が最大となるよう改善できるとわかつた能動要
素が選択され、その変化の大きさの条件が、メモリ156
中の別の表で見出される。次に制御がブロツク155に行
き、そこでブロツク155が起した大きさの変化により生
じた出力遅延の効果が、評価される。この評価の結果が
ブロツク157に供給され、そこで(メモリ156中の表か
ら)回路出力遅延と能動要素寸法の結果が集められ、ブ
ロツク157に供給された動作条件と比較される。条件に
あうまで、制御はブロツク152に返される。 上では本発明の原理を導入した実施例のシステムの点
についてもつぱら扱つた。更に助けとなるように、以下
では本発明の原理を実行するのに用いてもよい方法の段
階について考える。 トランジスタの最小寸法を選択する段階は、単に集積
回路製作の参考としてとられる。回路の条件を組合され
た部分とメモリに分離する段階は周知で、事実先に述べ
たアグローワルのタイミング分析器はこの段階を組込
み、従つて本発明のシステム及び方法を実施するのに、
用いることができる。 タイミング分析器の出力は、回路の出力をそれらの出
力の遅延に関係づける表である。この表から、最も悪い
出力が選択され、後方へ“歩くこと”が始る。最も悪い
出力を発生する部分回路網の条件に基き、分布RCモデル
の助けで、部分回路網中の各トランジスタの効果が計算
される。また、遅延に関する限り、鍵を握る入力を構成
する部分回路網への入力が同定される。特性の最大の改
善を生じることがわかつた部分回路網中のトランジスタ
が記憶され、プロセスは鍵を握る入力を供給する部分回
路網の分析を続ける。各部分回路の分析を行い、特性の
最大の改善をもたらすトランジスタが記憶されているト
ランジスタと比較され、特性により大きな改善をもたら
すものが維持される。その結果、(最も悪い出力の)鍵
を握る全てのパスが分析された後、記憶されているトラ
ンジスタは動作特性に最大の改善をもたらす全クリテイ
カル・パス中の1つである。そのトランジスタの大きさ
を変え、その出力の現在のタイミング分析を行い、表に
する。プロセスは次に新しい最悪の出力を選択し、分析
することによりくり返す。 各くり返しからM回毎のくり返しの範囲のあらかじめ
決められた速度で、分類プロセスが始められる。分類プ
ロセスそれ自身は、完全に通常のものである。各論理部
分回路網は限られた数の入力をもち、それは一般に比較
的少なく(たとえば<10)、従つて可能な置換の数は取
り扱いやすい。クリテイカルパス中の各部分回路網は評
価され、入力の分類は各部分回路網の最も遅い時間がタ
ーンオンするということに基く。 単純な“バブル−ソート”アルゴリズムが、実際の部
分回路網分類を行うために用いられる。 第10図は本発明の応用から生じた配置の例を示す。示
されているのは、組合さつて最大速度を与えられた領域
で生じるよう決められた異なる大きさ(チヤネル幅)を
有するMOSトランジスタである。
DETAILED DESCRIPTION OF THE INVENTION TECHNICAL FIELD OF THE INVENTION   The invention is optimized for integrated circuits, especially for specific conditions
The design and manufacture of integrated circuits. Technology background   Large-scale integrated circuits (VLSI) have hundreds of thousands in a single chip
The ability of this technology to generate electronic circuits with transistors
It can be created by force. Efficiency of such VLSI circuits
Good design involves generating active elements in the circuit
For interconnection pattern design and circuit layout design
It is impossible without some automatic means. Follow
Technology that assists in the design of VLSI circuits.
Note that a number of products are obtained. like that
The integrated part of the design tool is a tool for evaluating the efficiency of the design.
It is a step. This is in terms of power consumption, operating speed, and active elements.
Includes means for measuring products and the like.   Timing analysis is one such tool,
Essential algorithm for measuring transistor size
Because it is an element, it is an important one. Of course Taimin
Log analysis is itself important in circuit design. “MOS circuit
Synthetic Path Analysis in Simulator "
EE PROCEEDING, 19 times, Design O
Tomeation Conference (IEEE, Proc 19th De
sign Automation Conf. (1982, pp. 629-635;
A. Agrawal has a digital circuit
Algorithm for Evaluating Time Delay
Has been extended. It is the first of such algorithms
It is not, but one of the important things. Because
If there is a latch (memory) in the circuit under investigation
Can be identified as any input of the combined part of the circuit
Can evaluate the time delay from output to any output.
The other two timing analyzers are N. Joup
pi) “Timing analysis for NMOS VLSI”
ー Eee Proceeding ・ 20 Design O
Tomesion Conference (IEEE Proc, 20th Desi
gn ・ Automation Conf. ) (June 1983), pp. 411-418.
Verification (TV) program and JO
—Starhout (J. Ousterhout), “Designing MOS VLSI
Switch-level delay model for "IEE
EProceding, 21 times, Design Automation
Yong Conference (IEEE, Proc, 21st, Design Aut)
Crystal by omation Conf (June 1984) 542-548
It is a program.   Crystal and TV programs are offered by Agrowal Algo
Rhythms and their use of more detailed timing evaluation methods
Is different. The evaluation method is based on a single
It takes into account the different gut delays of the signal gates. TV
The disadvantages of both the Crystal and Crystal programs are
It does not address the existence of feedback in the integrated circuit,
Except for almost all digital integrated circuits
I will remove it.   Another important aspect of integrated circuit design is the transistor used.
This is a star area evaluation method. Of course many deterministic areas
There is an evaluation method. One simple scheme is, for example,
Transistor is one size that satisfies the speed condition of the whole circuit
Is to make it. In another, more complex scheme,
The size of the transistor is the power rail (battery or ground)
And how close they can be. Also, specific
Based on the circuit design, evaluate the dimensions of the transistors in the integrated circuit.
There are a number of algorithms to value. One of the earliest
One is the work of Ruchhi et al.
Analytical power / timing optimization techniques for stems
Surgery ”, IEE Proceeding 14 times
Zain Automation Conference (IEEE, Pr
oc, 14th Design Automation) (June 1977) 142-146
Page. They have their own timing analysis
Devising instruments and helping their analyzers, they
An algorithm for measuring the size of the star has been devised. Only
And their timing analyzers have memory in the circuit
Does not have the ability to recognize and handle It is also a tiger
The size of the transistor gate increases and
Also take into account the extra delays resulting from the required capacity increase
Absent. Algorithm that does not consider increased gate capacitance
Is "Digital MO" by M. Matson
S VLSI circuit optimization "Proceeding chapel
Hill Conference on VLSI (Proc ・ Chapel Hill
Conf on VLSI) (University of North Carolina, May 1985), 10
Proposed on pages 9-126. Matson's algorithm also
Using a more accurate delay model of the active element,
Take into account the slope.   Matson algorithm and all other known dimensions
The biggest shortcomings of the evaluation algorithm are generally feedback and features.
Have no ability to automatically recognize and handle memory elements
It is. Essentially all digital integrated circuits are cycled
This is a critical shortcoming, because sequential circuits include memory.
There is a point. Another drawback of these algorithms is that they
Uses an unnecessarily accurate optimization algorithm,
Analysis of large scale integrated circuit designs becomes unnecessarily slow.   Overcoming one or more limitations of prior art methods
Is the object of the present invention. Configuration of the present invention   The design of the present invention for an integrated circuit, for example,
Iterative analysis to meet pre-selected constraints
It is improved every time. Design improvement is an active factor
Each function of a circuit characterized by being a convex function of the size
By choosing a model for the delay through the moving element
Is achieved. Using a convex function model, every iteration
Static timing analysis of the circuit is the most critical
Used to identify large outputs. That selected
Use the output to analyze the timing structure of that path
And the change in magnitude causes the greatest improvement in operating characteristics
Active elements of the path are identified. Therefore the active element
Is adjusted and repeated.   To further improve, in the selected iterations,
The interconnection patterns of the sub-networks of the circuit are evaluated and actuated
Rearranged to improve properties. Generally, that
Those active elements whose inputs arrive late are sub-networks
Be placed as close as possible electrically to the output section of the
To taste. Embodiment of the invention   Electronic circuits are purely combined circuits and circuits with return paths
Can be divided into In a purely combined circuit, the signal
Flows only in one direction, combines from different directions, and
Reach logical state. In the circuit including the return path, the memory
And the presence of the memory allows the circuit to
It becomes a circuit. Sequential circuits always contain pure combinatorial logic
Minutes and multiple basic methods such as flip-flops
What can be divided into parts that contain nothing but the moly element
Well known.   Size is X1, XTwo, ... XNN transistors in total
(Eg, a MOS transistor) as shown in FIG.
Given a circuit such as this, the method of the present invention calculates the Xi value
The adjustment improves the circuit characteristics. Two indications
Gender is of particular interest. One is T, which is a circuit
The minimum clock cycle that operates or the propagation delay for non-clock paths.
You. The other is A, which is simply the size of the transistor or
Stated another way, it is the sum of all areas of the active element.
Area A is a minimum or a number of other factors in the circuit to be held down.
It can be seen that they have a positive relationship. First, as A increases,
The circuit requires a larger silicon area. Second, all games
The charge capacity is proportional to A, so charge or discharge the capacity
The power required to do so increases with A.
Third, in the case of a static CMOS gate, pull-up and pull-up
Transition where both loop-down networks are partially turned off
There is a short period of time. This short-circuit power is also A
Also increase. Similarly, the distributed load NMOS gate is
As transistor size increases, more
Consumes power. Fourth, most important in many situations
However, the probability of device failure during a chip is
It is strongly dependent on the entire active area of the tip. As the active area increases
As a result, the probability of chip malfunction increases.   The point that requires the rigor of any optimization method
The form of the expression or function to be optimized, more specifically the function
Property or behavior. According to the principles of the present invention, good results
Functions that produce results and can reach them efficiently and quickly
look for. And the result is close to the absolute minimum and quickly
Can be reached, and the process has some local minimum of the function
It means that you can't use it. Has hundreds of thousands of transistors
Integrating Circuits
The conversion process is not a luxury but an absolute necessity
is there.   Therefore, as a preliminary step, the factors and
The constraints to be chosen must be selected. Three Formulations
think of: 1) The maximum delay at any output is predetermined
Function in an integrated circuit constrained to be less than the constant K
Minimize the area of the moving element: 2) The area of the active element is smaller than a preselected constant
The maximum delay at any output constrained by
Minimize: 3) Coefficient ATKIs minimized.   The first formulation is that if the desired operating speed (clocking frequency)
It is probably the most useful because it is often given. So
In such a case, the first formulation gives the circuits in the system
It is used to match the obtained clocking cycle K. Ma
Also, unlike the other two formulations, the same value of K is separately computed.
Two different circuits to be optimized are best considered together
It is. This fact leads to a loss of optimality in the final circuit.
Without optimization, the sub-circuits are optimized separately.   The second formulation is used to make the circuit as fast as possible,
Subject to silicon area, power or yield constraints.   The third formulation, where both A and T are important,
This is a comprehensive method when relative weights can be divided
You. For example, even if A increases by 5%, T
T may be more important than you want to decrease by cents
Not. In such a situation, K is set to 5.   Probably the heaviest to consider to minimize the process
An important second factor is that which is used to represent the active elements of the circuit.
Model. In the case of a MOSFET integrated circuit,
Selected model. Where 10, 11, and 12 are
Represents the gate, drain and source nodes of the MOSFET, respectively.
You. The capacitance Cg13 is a capacitance between the gate and the ground, and the capacitance Cd14 is
The capacitance between the drain and ground, Cs16 is between the source and ground
Capacity. Switch 17 where FET turns off is closed
The resistor Rds15 is connected to the drain and source when the FET is on.
Resistance between Gate, source and drain capacitances are
All are directly proportional to transistor size x (channel width)
By way of example, the source-drain resistance is inversely proportional to x.   Fig. 3 shows the case of the "totem pole" configuration of three FETs.
Of gate delay according to the distributed RC model in Fig. 2
Represents Penfield-Rubinstein distribution RC model
Dell states that the upper limit of the discharge time for the circuit of FIG.
Suggests that   (R1+ RTwo) CTwo+ (R1+ RTwo+ RThree) CThree            (1)   Where R1, RTwoAnd RThreeIs the transistor x1, XTwo
as well asx3Equal to the resistance Rds of C1Is the transistor x1Cd and
Transistor xTwoEqual to the sum of Cs of CTwoIs the transistor xTwo
Cd and transistor xThreeEqual to the sum of Cs of CThreeIs trans
Star xThreeCd and CLIt is. C1Is below the closing switch,
When closing a switch, it slows down the game rather than slowing it down.
Speed up the operation. This means that the first current is capacitance C1Inside
You can clearly see it when you see it.
The capacitance looks like a short circuit and the resistance R1Through the current
Not flowing. Therefore, the upper bound on the delay (as described above)
When asked, C1Can be ignored, so C1Is given by equation (1)
Does not appear.   Equation (1) is calculated using the transistor size xiTable as a function of
When I passed, each RiIs 1 / xiIs proportional to each CiIs a certain constant
xiIs the sum of the terms proportional to CiWhere the constant term is the wire volume
Variable, and the variable term may be gate, drain or
Represents the capacity of the source. Equation (1) can be written as
You.   Here, A, B, C and D are constants.   The delay through a circuit is the sum of the delays that occur in that circuit.
Recognize that the general form of circuit delay in a circuit
And then:   Where aijAnd biIs a non-negative constant,
Is almost zero for this circuit. From equation (3)
The function represented is shown to be convex. This is
A straight line in N + 1-dimensional space whose terminal point is in the graph of the function
All of the part itself is on the graph or from the graph
Means on top. In addition, equation (3) is Posino
It belongs to a particular kind of convex function called minal.   As a result, all three formulations of the constraint find the convex function
It turns out to be small, which is another upper limit on the convex function. Convex
Can be realized by the minimization function used in the prior art.
Creates significant advantages. The biggest advantage is the local best
Any point that is considered a small value is also the minimum of the whole
is there.   The field of convex programming has been enthusiastically explored in recent decades
And many computing techniques can be used. For example,
R.T.Rockafelle (R.T.Rockafelle)
r), Convex Analysis (Pro
See Linston University Press 1970).   The desired optimization is the chip, the entire VLSI chip or the system.
Since the optimization is a part of the whole, the optimization method is acceptable.
It must be as effective as possible and must be
It can even sacrifice counteraccuracy. Optimal value for it
Have an efficient way to approximate
The process generally proceeds according to the following steps:
Thereby, the optimal solution is reached very quickly.   The process covers all active elements in the VLSI circuit design.
Start by setting these minimum possible dimensions (fourth
Block 100 in the figure). This reduces the minimum active area
Including the most reliable (larger active area
However, chip defects are more likely to occur during manufacturing. )
The first design occurs.   Next, the equation (specification) representing the circuit conforms to the structure of FIG.
Will be adjusted to (Block 100 in Fig. 4)   Following the preliminary steps above, (the specific
A) circuit analysis to identify and select the worst output
The return process begins (block 110 in FIG. 4).
"The worst" means, for example, that T is one microphone
One second has a delay of 1.2 microseconds,
Output has a delay of 1.5 microseconds,
The output of the crosecond is selected as the worst output.   In the next stage, each transition that can have an effect on its output
By examining the source, the source of the delay in the selected output is
The cause is examined (block 120 in FIG. 4). I checked
For each electrical node, two numbers are assigned: tl
(Slowest time to go low) and th(The highest
Is too late). When examining the “poor point” of the delay,
thIs the cause of the "poor point", the proof-up circuit
Bet, tlIs the cause of the "poor point",
Circuit is examined. Active in the test
Both the element and its supporting element are included. Support element
Of course, all the functions that contribute to the input signal of the element
There is a moving element. This creates a chain test, which is
Characterized by "walking" backwards, delaying during selected output
Identify the critical path that controls elongation. For example,
In Figure 3, examining results in the slowest input
In addition to examining the critical path, all three transistors
Department is included.   Of each such transistor i examined in the previous step
About the case, only the determined amount xiArising from increasing
The increase in time spent is calculated. Cause such a maximum increase
One transistor in the critical path is determined
It is increased by the amount that was given. (Block 130 in FIG. 4)   Variables that reduce the amount by which the imposed constraints are satisfied but minimized
Return to the point of output delay determination until
(Return to block 110 in FIG. 4)
The return loop is closed (block 140 in FIG. 4).   Many paths through the circuit are less than the size of the circuit itself
It can always be large, so actually spread the circuit over many paths
This results in the gain of the method. In addition,
Constant xiChanges only change the two gate delays
: Change and delay of gate including changed transistor
This is the delay of the gate that drives the transistor. Follow
And calculate the delay to find the worst output delay.
Return, the amount that can change as a result of a single variable change
Only recalculate.   Delay as a function of magnitude, as shown in the above equation
The curve follows the relationship Ax + B / x + C. Where A, B and
And C is greater than zero. This means that from some minimum value of x,
As x increases, the delay increases until a certain minimum delay is reached.
Decrease. The magnitude continues to increase beyond the minimum delay magnitude
Delay increases delay.   Beyond the point of minimum delay,
You will not want to increase. However, the present invention
According to one perspective, this is exactly what happens. So
The reason is that the size of the transistor is not only the speed
Observing that it also affects the speed around it
Power and the “totem pole” configuration
The capacitance of the transistor located close to the rail (ie,
Increase the size), the output of the "totem pole"
Reduced switching transistor delay
(Observed earlier in relation to Fig. 3)
You. Thus, according to this aspect of the invention, the method includes
Steps (within block 120) are included. It is one or more
The input affects the output, with the output coming before the slowest input
Look to increase the size of the transistor that affects it
The signal on the gates of these transistors
Analyze all situations that increase to a point. Transistor
When the size x is small, the delay increases as the area increases.
Decrease rapidly. When x is large, the delay is
Increase linearly, which is relatively slower than the rate of increase of the delay.   In yet another aspect of the invention, the method includes one step.
(Block 150 in FIG. 4). It is a feature of sub-networks
In order to improve performance (speed), the order of partial circuits in the VLSI circuit
Find the introduction. A concrete example best explains this,
For the sake of clarity, FIG.
Draw a road network. In this case, the input to transistor 20 is 7nse
c, and the input to transistor 21 is delayed by 3 nsec.
Reach in Nobu. In the timing configuration shown in FIG.
And if each capacitance (in the distributed RC model) has the value C
And if each resistor has a value R, then
Output discharge time is 7nsec + R2C +
2R (C + Cload). Reverse input leads, slower
When an input is applied to the transistor 21, the output discharge time
Is 7nsec + 2R (C + Cload). These two delays
Transistor difference, 2RC, means transistor 20 is two transistors
It represents the time required to discharge the capacitance of the node between them. This
Discharge must occur in both configurations of the circuit of FIG.
Absent. However, in the latter configuration, the slower input arrives.
"None" time gap between 3nsec and 7nsec before reaching
It happens during.   Generalizing the above with respect to FIG. 6, the static
CMOS complex gates have a pull-up network 25 and pull-down
Network 26 is included. The pull-up network contains only PFETs
Only, the pull-down network includes many NFETs. Two times
The inputs to the road network are the same, two (duplicate of each other)
The network is VddAnd interconnected in series between ground
I have. The connection between the two networks forms the output of the gate
You. A network with two nodes and any number of inputs is
By any combination of the following three rules
Therefore, it can be synthesized with a single transistor. 1) A single transistor is a circuit. For example, in FIG.
Source and drain are two connection points,
A port is a single input of the network. 2) Any number of networks connect their connection points in series
However, another network can be formed (for example, the fifth network).
Figure). The input of the new network is a combination of the inputs of the element network
It is. The connection points of the new network remain free.
Are the two connection points of the element. 3) Arbitrary number of networks connect their connection points in parallel
Then another network can be created. New network entry
Force is the combination of the inputs of the element network. New network connections
A connection point is a connection point of a connected element network.   Following on, by a series of composition rules, N sub-networks
Whenever a network is formed from
Logic functions can affect the order of the sub-networks
Not receive. However, as shown in the simple example of FIG.
In addition, the gate timing characteristics are generally
Is different. Improvement of the present invention to minimize delay
In the proposed method, the slowest one for each subnetwork is
Order the sub-networks according to the
You. The sub-network with the earliest of such time is
Power rail (sometimes VddOr ground)
The part that has been placed and has the slowest of such time
The road network is placed closest to the output. Given the network
The slowest time turns on
Is the slowest turn-on of the constituent transistors
It is the maximum value between The slowest turn-on time of an NFET is
It is the latest time to go high on that gate. PFET
Even the slowest turn-on times go most of that gate low
It is late time.   7 and 8 show a complex transistor containing 14 transistors.
This process is illustrated for a report. Figure 7 shows the classification
FIG. 8 shows the state after the classification. Inputs A, B, C and D
The latest time to go to i and the latest time to go to low
Al<Bl<Cl<DlAnd Ah<Ch<Bh<DhIt is the order of. part
In network 30, three transistors in series
Are already in optimal order. A is VddClosest to
Should be. Because the slowest time to go to that low
Because the earliest, B follows, C follows.
is there. However, the pull-up is in series with the sub-networks 30 and 31.
And these networks are in their own order.
is there. When turning on the latest, earlier than the subnetwork 30
The sub-network 31 withddShould be closest to
is there. Accordingly, in FIG.
The position is reversed. On the other hand, in the pull-down partial network 32
Need re-ordering. It consists of three tigers in series.
About transistor. Transistor B has the highest output
Should be nearby, followed by C, followed by A.
This configuration in the sub-network 32 is also shown in FIG.
You.   To implement the above method, the usual requirements well known to those skilled in the art
Requires a combination of primes. What to do about the system
Is controlled by special purpose hardware or software.
In systems consisting of controlled generalized circuits.
Noh. With current technology, the latter method is easy to realize
In particular, the number of steps that are required
Because it can be used in the form of software for those skilled in the art.
It is.   The structure of a system that implements the principles of the present invention is illustrated in FIG.
It is shown. Block 151 is a timing analyzer
It takes as input the specification of the circuit whose placement should be optimized.
Receive. It is the active element of the circuit that produces the convex delay function
Is included. With the help of the model, the block
Under the control of 157, block 151 (eg,
-Analyze conditions (as taught by V. Agrawal)
And correlate the output of the circuit with the approximated delay time.
create. The table is stored in the memory 156. To block 152
Control goes, it should be filled from control block 157
And remove the maximum amount of speed condition to block 151
Select the output from the table created by Then control
Go to block 153, where the output associated with the selected output
A critical path is identified. Identified Criticala
Each active element in the pass has a given increase in dimensions (currently
Estimate the increase in delay for an increase from a certain magnitude).
To determine its sensitivity to changes in size
To be evaluated. Where all active elements have some
You will notice that it starts at the first minimum dimension. Late
Active elements that can be improved to maximize
Element is selected, and the condition of the magnitude of the change is stored in the memory 156.
Found in another table in. Next, control goes to block 155.
Where the change in size caused by block 155
The effect of the same output delay is evaluated. The result of this evaluation
Is supplied to block 157, where (a table in memory 156
Et al.) The results of circuit output delay and active element dimensions are collected and
It is compared with the operating conditions supplied to lock 157. On condition
Until so, control is returned to block 152.   Above, the points of the system of the embodiment introducing the principle of the present invention
About To further help,
Here are steps of a method that may be used to implement the principles of the present invention.
Think about the floor.   The step of selecting the minimum dimensions of the transistor is simply an integration
Used as a reference for circuit fabrication. The circuit conditions are combined
The step of separating memory and memory is well known and has been described earlier.
Agrawal's timing analyzer incorporates this stage
Therefore, to implement the system and method of the present invention,
Can be used.   The output of the timing analyzer is the output of the circuit
It is a table relating to force delay. From this table, the worst
The output is selected and "walking" backwards begins. worst
Distributed RC model based on the conditions of the partial network that generates the output
With the help of, the effect of each transistor in the sub-network is calculated
Is done. Also, as long as the delay is concerned, configure the key input
The input to the sub-network is identified. The biggest break in properties
Transistors in a subnetwork known to produce good
Is stored and the process provides a key input
Continue analyzing the road network. Analyze each partial circuit,
The transistor with the transistor that gives the greatest improvement is stored
Greater improvement in characteristics compared to transistor
Things are maintained. As a result, the (worst output) key
After all paths that hold the
Transistors offer the greatest improvement in operating characteristics
One of Cal Pas. The size of the transistor
And analyze the current timing of the output
I do. The process then selects and analyzes the new worst output
Repeat by doing.   The range of repetition every M times from each repetition
At a determined rate, the classification process begins. Classification group
The process itself is completely normal. Each logical part
Distribution networks have a limited number of inputs, which are generally compared
Very few (eg <10), so the number of possible
Easy to handle. Each sub-network in the critical path is reviewed.
And the classification of the input is the slowest time of each subnetwork.
Is turned on.   A simple “bubble-sort” algorithm is
Used to perform distribution network classification.   FIG. 10 shows an example of an arrangement resulting from the application of the present invention. Show
What is being combined is the area given the maximum speed
Different sizes (channel width) determined to occur in
MOS transistor.

【図面の簡単な説明】 第1図は論理部分とメモリ部分の組合せに分割されたデ
イジタル回路の一般化された説明図; 第2図は本発明の実施例に関連して用いられるMOSトラ
ンジスタの分布RCモデルを示す図; 第3図は3個のトランジスタの“トーテムポール”相互
接続とその回路を通る遅延を示す等価回路の図; 第4図は本発明のシステムで用いられる方法を図で表わ
すフローチヤートの図; 第5図は二つのトランジスタへの入力信号の到達時刻が
異る二つのトランジスタ回路構成を示す図; 第6図はPFET回路網がプル−アプ回路に用いられ、NFET
回路網がプル−ダウン回路に用いられるCMOS集積回路の
一般的な構造を示す図; 第7及び8図は動作特性を最適化するために、回路の部
分回路網内の要素を分類する必要性を示す図; 第9図は本発明のシステムの実施例を示す図; 第10図は本発明の原理に従つて実現される集積回路の一
部の配置を示す図である。 主要符号の説明 13、14、16……容量 15……抵抗 20、21……トランジスタ 25……プル−アプ回路網 26……ダウン回路網 30、31、32……部分回路網
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a generalized diagram of a digital circuit divided into a combination of a logic portion and a memory portion; FIG. 2 is a diagram of a MOS transistor used in connection with an embodiment of the present invention. FIG. 3 shows a distributed RC model; FIG. 3 is an equivalent circuit showing a "totem pole" interconnection of three transistors and the delay through the circuit; FIG. 4 is a diagram illustrating the method used in the system of the present invention. FIG. 5 is a diagram showing a two-transistor circuit configuration in which the arrival times of input signals to two transistors are different; FIG. 6 is a diagram showing a PFET network used in a pull-up circuit;
FIG. 7 shows the general structure of a CMOS integrated circuit in which the network is used in a pull-down circuit; FIGS. 7 and 8 show the need to classify the elements in the sub-network of the circuit in order to optimize the operating characteristics; FIG. 9 is a diagram showing an embodiment of the system of the present invention; FIG. 10 is a diagram showing an arrangement of a part of an integrated circuit realized in accordance with the principle of the present invention. Description of main symbols 13, 14, 16: Capacitance 15: Resistor 20, 21: Transistor 25: Pull-up network 26: Down network 30, 31, 32: Partial network

フロントページの続き (72)発明者 ジョン フィリップ フィッュバーン アメリカ合衆国 07060 ニュージャー シイ,ノース プレインフィールド,ノ ース ジャクソンアヴェニュー 236 (56)参考文献 特開 昭48−79984(JP,A)Continuation of front page    (72) Inventor John Philip Fevern               United States 07060 New Jar               Shey, North Plainfield, No               Sous Jackson Avenue 236                (56) References JP-A-48-79984 (JP, A)

Claims (1)

(57)【特許請求の範囲】 1.メモリ要素、入力部分、出力部分及び複数の能動要
素を配置するステップを含む集積回路製造方法におい
て、 前記出力部分のうちの鍵を握る少なくとも一つの出力部
分からの出力信号に対して、遅延の最大値レベルを予め
選択することを特徴とし、 前記鍵を握る出力部分のそれぞれは対応するクリティカ
ルパスを有し、当該クリティカルパスは前記能動要素を
含み、当該能動要素のサイズの変化は前記鍵を握る出力
部分の信号遅延に影響を及ばし、 前記クリティカルパス中の少なくともいくつかの前記能
動要素は、最小のサイズより大きなサイズを持ち、 前記クリティカルパス中の任意の能動要素のサイズを小
さくした場合に前記鍵を握る出力部分の少なくとも1つ
の信号遅延が前記予め選択された最大遅延を越えるよ
う、前記能動要素のサイズが選択され、前記クリティカ
ルパスの少なくとも1つが帰還路を含む回路を備えるこ
とを特徴とする集積回路製造方法。 2.前記帰還路はラッチ回路上に配置された請求項1記
載の集積回路製造方法。 3.重要な領域において凸である関数によって前記能動
要素の遅延を特徴づけるモデルに従い、前記能動要素の
寸法が選択される請求項1記載の集積回路製造方法。 4.前記モデルは、前記能動要素を表す分布Rおよび分
布Cに基づく請求項3記載の集積回路製造方法。 5.前記モデルは、前記能動要素の1つを通過する遅延
を、式Ax+B/x+C(A,B,Cは正の定数、xは前記能動要
素の寸法の計数値を表す。)に基づき表し、前記回路の
他の能動要素の他のすべての寸法の計数値は一定である
請求項4記載の集積回路製造方法。 6.能動要素の寸法は、最初に最小の寸法をこの能動要
素に割り当てる手法に従って選択される請求項1記載の
集積回路製造方法。 7.前記電子回路のサブネットワークをソートし、前記
指定された基準に関して前記回路の性能を最も改善する
サブネットワークの置換を選択する手法に基づき、能動
要素の寸法が選択される請求項1記載の集積回路製造方
法。
(57) [Claims] An integrated circuit manufacturing method comprising the steps of arranging a memory element, an input section, an output section and a plurality of active elements, wherein a maximum delay for an output signal from at least one of the output sections is key. Characterized in that a value level is pre-selected, each of said key-holding output parts has a corresponding critical path, said critical path including said active element, and a change in size of said active element holding said key Affecting the signal delay of the output portion, wherein at least some of the active elements in the critical path have a size larger than a minimum size, and when the size of any active element in the critical path is reduced. The active element so that at least one signal delay of the keying output portion exceeds the preselected maximum delay. A method of manufacturing an integrated circuit, wherein a size is selected and at least one of the critical paths includes a circuit including a return path. 2. 2. The integrated circuit manufacturing method according to claim 1, wherein said feedback path is arranged on a latch circuit. 3. The method of claim 1 wherein the dimensions of the active element are selected according to a model characterizing the delay of the active element by a function that is convex in the critical area. 4. 4. The integrated circuit manufacturing method according to claim 3, wherein the model is based on distributions R and C representing the active elements. 5. The model represents the delay through one of the active elements based on the formula Ax + B / x + C, where A, B, and C are positive constants and x is a count of the dimensions of the active element. 5. The method of claim 4, wherein the counts of all other dimensions of the other active elements of the circuit are constant. 6. 2. The method of claim 1 wherein the dimensions of the active element are selected according to a technique that first assigns a minimum dimension to the active element. 7. 2. The integrated circuit of claim 1 wherein the dimensions of the active elements are selected based on a technique for sorting the sub-networks of the electronic circuit and selecting a replacement of the sub-network that best improves the performance of the circuit with respect to the specified criteria. Production method.
JP61-269991A 1985-11-15 1986-11-14 Optimized integrated circuit Expired - Lifetime JP3004650B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/798,557 US4827428A (en) 1985-11-15 1985-11-15 Transistor sizing system for integrated circuits
US798557 1991-11-26
SG44094A SG44094G (en) 1985-11-15 1994-03-25 Integrated circuit and optimization method therefore

Publications (2)

Publication Number Publication Date
JPS6316651A JPS6316651A (en) 1988-01-23
JP3004650B2 true JP3004650B2 (en) 2000-01-31

Family

ID=

Similar Documents

Publication Publication Date Title
US4827428A (en) Transistor sizing system for integrated circuits
US6090153A (en) Multi-threshold-voltage differential cascode voltage switch (DCVS) circuits
Halter et al. A gate-level leakage power reduction method for ultra-low-power CMOS circuits
Arunachalam et al. Optimal shielding/spacing metrics for low power design
Burch et al. Pattern-independent current estimation for reliability analysis of CMOS circuits
Zhao et al. Estimation of inductive and resistive switching noise on power supply network in deep sub-micron CMOS circuits
Austin et al. A low power transregional MOSFET model for complete power-delay analysis of CMOS gigascale integration (GSI)
Bashirullah et al. A 16 Gb/s adaptive bandwidth on-chip bus based on hybrid current/voltage mode signaling
JP3004650B2 (en) Optimized integrated circuit
Vinod et al. Performance Evaluation of LUTs in FPGA in Different Circuit Topologies
Acosta et al. SODS: A new CMOS differential-type structure
Alioto et al. Performance evaluation of adiabatic gates
Carlson et al. Delay optimization of digital CMOS VLSI circuits by transistor reordering
KR960002546B1 (en) Transistor sizing system for integrated circuit
US20030188276A1 (en) Method and apparatus for identifying switching race conditions in a circuit design
JPH05126872A (en) Device for predicting power consumption
Ning et al. Analog circuit design automation for performance
Yang et al. Analyzing internal-switching induced simultaneous switching noise
Lorenzo et al. Low leakage and minimum energy consumption in CMOS logic circuits
Ferdowsi et al. Accurate hybrid delay models for dynamic timing analysis
Nezamfar et al. Energy–performance tunable logic
Chatzigeorgiou et al. Efficient output waveform evaluation of a CMOS inverter based on short‐circuit current prediction
Samanta et al. Synthesis of high performance low power dynamic CMOS circuits
Yang et al. Modelling and analysis of ground bounce due to internal gate switching
Alioto et al. Delay variability due to supply variations in transmission-gate full adders