JPH06243195A - 同期順序回路のリタイミング障害の除去方法 - Google Patents

同期順序回路のリタイミング障害の除去方法

Info

Publication number
JPH06243195A
JPH06243195A JP5273309A JP27330993A JPH06243195A JP H06243195 A JPH06243195 A JP H06243195A JP 5273309 A JP5273309 A JP 5273309A JP 27330993 A JP27330993 A JP 27330993A JP H06243195 A JPH06243195 A JP H06243195A
Authority
JP
Japan
Prior art keywords
circuit
retime
critical
retiming
node
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.)
Granted
Application number
JP5273309A
Other languages
English (en)
Other versions
JP2601161B2 (ja
Inventor
Dei Sujitsuto
スジット・デイ
Potokoniyatsuku Miodoragu
ミオドラグ・ポトコニャック
Rosuwairaa Suteiibun
スティーブン・ロスワイラー
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPH06243195A publication Critical patent/JPH06243195A/ja
Application granted granted Critical
Publication of JP2601161B2 publication Critical patent/JP2601161B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

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

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)【要約】 【目的】 順序同期ディジタル回路の速度を最適化する
ことを目的とする。 【構成】 先ず、遅延期間を短縮するためのリタイミン
グを阻止する障害が識別され、次いでこの障害を取り除
くための条件が導出される。このことは、障害に関連す
るザブ回路を識別し、部分回路における1組のタイミン
グ制約を満足させ、かつこのタイミング制約を満たす新
規回路を発生すること意味する。障害のないこの新規回
路は通常、前方向ラックラッチを位置替えすることによ
ってリタイムすることができて、クロック周期を縮小す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は集積回路の設計に関
し、より詳細には、リタイミング障害(ボトルネック)
を除去することによって、順序同期ディジタル回路の性
能を改善することに関する。
【0002】
【従来の技術】機能ブロックの組立て、論理合成による
大規模集積回路の設計は、現在、コンピュータによって
かなりの限度まで行われている。コンピュータ支援設計
(CAD)の一部である論理合成は大部分、特定機能を
達成するために、論理ゲートおよび記憶ラッチの組立て
を意味する。論理合成は通常、面積において効率的で、
テスト容易な設計をもたらすことができるが、論理ゲー
トおよびラッチの簡単な組立てによって同期をとった設
計の性能は、なお主要な問題として残されている。
【0003】このため、今では、基本設計を最適化する
ための特別作業を含むことが通常のこととなっている。
これまで、この最適化作業の多くは、ラッチのような記
憶素子のない、論理ゲートだけからなる回路である組合
せ回路に集中していた。しかし、多くの実際の設計は、
現実に順序動作的であり、かつラッチのような記憶素子
を含んでおり、従って順序回路もまた、最適化について
注目を集めてきた。
【0004】順序回路の最適化の1つのアプローチは、
単純に、ラッチ間の組合せ論理ブロックを最適化するこ
とであった。しかし、このアプローチは、回路の順序動
作性を活用しないので、限られた可能性しかない。
【0005】同期順序回路のクロック周期の最適化ある
いは短縮化への別のアプローチとして、順次素子のみが
考慮されるリタイミングがあり、組合せ論理は固定され
ているものとする。リタイミングは、基本的には、回路
内でラッチを位置替えして、選択したラッチ間の経路の
長さを短縮し、よって影響する組合せ部分回路の経路を
短縮することを意味する。
【0006】
【発明が解決しようとする課題】しかし、以前は、これ
らの、および基本的に同様な技術は、同期式順序回路の
特徴を完全には活用しきれず、従って可能な最適結果を
いつも達成するというわけではなかった。
【0007】この発明の目的は、リタイミング技術を一
層効果的にして、同期式順序回路を含むVLSI回路を
スピードアップすることである。
【0008】
【課題を解決するための手段】本発明は、同期式順序回
路を先ず変形して、リタイミングを限定するいかなる障
害をも除去し、クロック周期を短縮することによってリ
タイミングを改善することに重点をおいている。さら
に、各々のリタイミング障害を明確に識別し、そして個
々に除去する代わりに、この解決方法は、ラッチを含む
順序回路におけるすべての経路によって満足され得るる
であろう1組の条件を導出して、リタイミングを抑止す
るリタイミング障害を除去することを含んでいる。
【0009】この解決法は、リタイミング障害を識別
し、部分回路を発生し、そして部分回路における1組の
タイミング制約を満足させることからなっている。すべ
ての部分回路に対してタイミング制約を満足させること
は、得られる回路の仮想長、すなわちクロック周期を増
加させることを意味する場合もある。しかし、次いで得
られた回路は、元のクロック周期以下まで、仮想クロッ
ク周期を縮小するようリタイミングされる。より特定す
れば、この発明は、前方向スラックラッチにおけるスラ
ックを利用して、最適リタイム回路を等しいかまたは高
いクロック周期を持つ回路に変形し、次いでリタイムさ
れてクロック周期を元のクロック周期以下に縮小できる
方法と装置を含む。
【0010】特に、このアプローチは、回路の全ノード
をタイミング解析してスラックを測定し、そして入力ク
リティカルノード、すなわち、回路のクロック周期が縮
小され得る量より少ないスラックを持つ入力を識別する
ことを含んでいる。発明の良好な実施態様において、リ
タイムクリティカル入力(以下で説明する用語)となっ
ている入力ノードおよびそのようなリタイムクリティカ
ル入力に関する再タイムクリティカル回路網がより特定
して明らかにされる。次に、Cノードと称する1組のノ
ード(v)リタイムクリティカル回路網における各経路
はそこにCノードを持つ、を識別し、次いで各Cノード
のコーンを抽出するが、これはvから回路の主入力へ
の、あるいはラッチの出力への全組合せ経路からなる部
分回路である。次に、対応するCノードのコーンに対す
る1組のタイミング制約を満足させることによって、前
述の条件セットを満足させる。タイミング制約でセット
を満足させることは、通常、回路を変形することを意味
する。しかし、変形された回路は一般に、通常の態様で
リタイムされて、所望の通り、クロック周期を短縮する
ことができる。さらに、最終リタイム回路の初期状態
が、元の回路の初期状態を与えられると、容易に計算さ
れ得ることは最終リタイム回路の特性であり、特徴は、
一般に、リタイミング後の回路の特性であるというわけ
ではない。
【0011】添付の図面に関連する以下のより詳細な説
明から、この発明は一層よく理解されるであろう。
【0012】
【実施例】この発明を詳細に説明する前に、文中に便用
される多くの用語および記号を初めに定義しておくと便
利であろう。ここで使用されるように、順序回路とはゲ
ートとラッチの両者を備える回路であり,そして後者は
エッジトリガされるものとする。
【0013】いずれの回路も主入力(PI)と主出力
(PO)、回路の通常の入力と出力の両方を有する。さ
らに、ラッチの出力は擬似主入力(PPI)と考えら
れ、そしてラッチの入力は回路の疑似主出力(PPO)
と考えられる。
【0014】ノードxからノードyへの経路pは、xで
開始してyで終了するノードとエッジシーケンス、とし
て処理される。最初と最後のノードを除いて、経路上の
全ノードと全エッジが別個であれば、経路は単純であ
る。サイクルは、同じノードで開始して終了する単純経
路である。経路によるこのアプリケーション全体を通じ
て、単純経路に関して説明される。各ノードvは、それ
に関連する伝搬遅延d(v)を有する。経路pの遅延
(または長さ)d(p)は、経路におけるノードの伝搬
遅延の和である。経路pの重みw(p)は、経路p沿い
のラッチの数である。
【0015】ラッチのない経路pは組合せ経路と称され
る。ラッチを含む経路は順序経路と称される。同期順序
回路に対して、クロック周期φは、回路内の最長組合せ
経路の長さによって決定される。
【0016】次に、図面について見ると、図1は、発明
に従って、再設計されて、操作に必要とされるクロック
周期を縮小することができる順序同期ディジタル回路1
0の一例である。
【0017】それはAND回路11、12および13,
OR回路14と15、そしてラッチ16、17および1
8を含んでいる。
【0018】主入力dは、AND11の1入力およびO
R14の1入力の両方に与えられている。AND11の
出力bはラッチ17の入力として与えられ、その出力y
はAND12とOR15の両方へ、入力として与えられ
る。AND12の出力aはラッチ16の入力を与えてお
り、その出力xはAND11とAND13の両方へ入力
として与えられる。AND13の出力fはOR14へも
う1つの入力として与えられる。OR14の出力gは主
出力として働き、そしてまた、ラッチ18への入力を与
えており、ラッチ18の出力wはOR15のもう1つの
入力を与え、OR15の出力wはOR15のもう1つの
入力を与え、OR15の出力eはAND13のもう1つ
の入力となっている。ラッチ18の出力wはAND12
とOR15の両方へ入力を与える。各ゲートがユニット
遅延をもたらすと考えられる場合、順序回路は3ユニッ
ト遅延のクロック周期を必要とすることになり、そして
これは通常のリタイミングによっても、あるいは組合せ
論理を再構成することによっても縮小することはできな
い。
【0019】この回路10では、リタイミングによる所
望クロック周期の達成を妨げる、現在の障害を識別する
必要があり、この所望クロック周期は元のクロック周期
φと所望の縮小εとの相違である。
【0020】組合せ経路は、その長さが所望のクロック
周期より大きい場合、クリティカルと称される。順次経
路は、その長さが、ラッチを動かすことによる(たとえ
不法にでも)いずれの経路のリタイミングによっても、
その長さを所望のクロック周期に縮小できないようなも
のである場合、クリティカルと称される。特に、各ノー
ドがユニット遅延を有するとされる場合、順次経路は、
その長さが所望のクロック周期の積より長く、そして経
路のラッチの数より1つ多い場合、クリティカルであ
る。これは、経路におけるいずれの2つの隣接するラッ
チ間の最長経路を短縮するために、ラッチは経路内で移
動することができるという想定に基づいている。
【0021】さらに、閉路であるサイクルは、サイクル
のいかなるリタイミング(たとえ不法にでも)によって
も、その期間を所望のクロック周期に縮小できない場
合、クリティカルとみなされる。特に、各ノードにおけ
るユニット遅延を考える場合、サイクル内のラッチ教で
除算されたサイクルの長さの比率が、所望の縮小クロッ
ク周期より大きい場合、サイクルはクリティカルであ
る。
【0022】クロック周期を縮小するためのリタイミン
グの使用を制限するリタイミング障害は3つの異なる種
類がある。すなわち、主入力と主出力間の組合せクリテ
ィカル経路と、主入力から主出力への順序クリティカル
経路、そしてクリティカルサイクルである。
【0023】複合回路には多数のそのようなリタイミン
グ障害あり、そして各障害を列挙し、それをはっきり取
除くことは無理かも知れない。このために、発明は、も
し満足させられれば、その回路においてすべてのリタイ
ミング障害を同時に取除く1組の条件を識別することを
含んでいる。これらの条件は後に説明する。
【0024】発明を実行するために、先ず、回路のノー
ドの各々におけるスラックを知らねばならない。これら
は、例えば、「“Timing Optimizati
onof Combinational Logic”
Proc.IEEE International C
onference on Computer Aid
ed Design,pps 282−285,Nov
ember 1988.」に記述されているように、既
知の技術によって、通常、導出することができる。これ
によって、εより小さいスラックを持つノードとして定
義されたクリテシカル入力、ならびに後に説明するリタ
イムクリティカル入力を識別することができる。
【0025】各ノードにおけるスラックを知ることによ
って、すべてのリタイミング障害を取除くために満たさ
れねばならない条件を識別し、従って満足させることが
可能になる。この発明は、組合わせ経路とは異なり、順
序経路におけるクリティカル経路のラッチが、遅延期間
をそれだけ縮小できる時間量より大きいスラックを持つ
ことができる。但し、ノードにおけるスラックは、信号
がノードにあるのに必要な時間と信号のノード到着時間
の差である、という事象を利用することに基づいてい
る。
【0026】各ラッチノードXに、組(Si(X)、S
oi(X))を関連させることができるが、但し、Si
(X)はXの入力スラックであり、そしてSo(X)は
Xの出力スラックである。ラッチ16、17および18
に関連する組が図1に示されている。その入力スラック
Si(X)が所望の縮小εより大きい場合、ラッチは前
方向スラックラッチ(FSL)と定義される。前方向ス
ラックラッチを前方に移動することによりXへの経路の
長さは移動した距離だけ増すが、Xからの経路の長さは
それだけ減る。前方向スラックラッチは、Xへのいずれ
の組合わせ経路もクリティカルにしないで、(Si
(X)−ε)の距離だけ、前方へ移動することができ
る。
【0027】同様に、その出力スラックがSo(X)>
εのラッチはXからのいずれの組合わせ経路もクリティ
カルにすることなく、(So(X)−ε)だけ後方に移
動することができる。しかし、リタイミング後の最終回
路が同等の初期状態であることを保証するために、リタ
イミング中、FSLの前方向運動のみを利用することに
する。その条件を満足させることによって、確実に変形
した回路のFSLが前方に移動し(リタイムされる)、
所望のクロック周期(φ−ε)を達成することができる
ような1組の条件が、回路の経路において発生される。
これらの条件は図3で示されており、以下でなお説明す
る。図1の回路10において、ラッチXとYはFSLで
あるが、ラッチWは非FSL(NFSL)であり、そし
て唯一のリタイミング障害は初期サイクル(WefgL
W)である。
【0028】回路の入力(出力)を前方向スラックラッ
チ(FSL)と前方向スラックラッチでない他入力(N
FSL)に分割してみる。FSL、Xで開始して(その
運動により長さを(Si(X)−ε)だけ減らすことが
できる)、FLS、Zで終了する(その運動により長さ
を(Si(Z)−ε)だけ増すことができる)組合わせ
経路がφ−ε+(Si(X)−ε)−(Si(Z)−
ε)より大きくない長さである場合、この経路の長さ
は、リタイミング中にラッチXを前方に移動することに
よって、(φ−ε)に縮小することができる。同様に、
FSL、Xで開始して、NFSLで終了するいずれの組
合わせ経路でも、φ−ε+(Si(X)−ε)より大き
くない長さでなければならない。NFSLで開始して、
FSL、Zで終了するいずれの組合わせ経路でも、φ−
ε−(Si(Z)−ε)より大きくない長さでなければ
ならない。最後に、NFSL間の組合わせ経路は、φ−
εより大きくない長さでなければならないが、その理由
は、これらの経路を縮小するためのリタイミングを利用
できないからである。リタイミングの前に、回路に与え
ることのできる条件を以下に挙げる。これらは図3で示
される。
【0029】BF F .FSL XからFSL Zへの全
組合わせ経路の長さは d(Pff)≦φ−ε−Si(X)−Si(Z)) BF N .FSL XからNFSL jへの全組合わせ経
路Pfnの長さは d(Pfn)≦φ+Si(X)−2ε BN F .NFSL iからFSL Zへの全組合わせ経
路Pnfの長さは d(Pnf)≦φ−Si(Z) BN N .NFSLからNFSLへの全組合わせ経路Pn
nの長さは d(Pnn)≦φ−ε これら4つの条件を満足させる回路はリタイミング障害
のないことが分かる。回路を変形することによってこれ
らの条件を満足させることで、そのような回路のクロッ
ク周期を増すことができる。しかし、そのような回路は
リタイミング障害がないので、次のリタイミングによっ
て、いつも、クロック周期の全体的縮小を可能にし、所
望のクロック周期φ−εを達成する。基本的に、これは
短い方の組合わせ経路の長さを増やし、そして長い方の
クリティカル組合わせ経路の長さを減らすことによって
達成することができる。
【0030】次に、これらすべての条件を満足させるよ
うな、機能的に同等な回路を実現するために、元の回路
を変形する問題が残されている。
【0031】これらすべての条件を満足させるような、
機能的に同等な回路を実現するために、元の回路を変形
するのに利用できる様々な技術がある。
【0032】しかし、回路の全リタイムクリティカル入
力に関してのみ、条件を満足させることが、この良好な
技術の特徴である。これによって実行されねばならい計
算を大いに簡約する。
【0033】リタイムクリィカル入力を、スラックS
(j)<εを有するPIjあるいは、So(X)<ε
AND Si(X)+So(X)<2εを有するPPI
Xとする。Si(X)+So(X)≧2εを満足させ
る、ラッチXからのいずれのクリティカル経路でも、ラ
ッチを前方に動かすことによって、リタイミング中、非
クリティカルにすることができる。リタイムクリティカ
ル回路網は、リタイムクリティカル入力の推移ファンア
ウトの中の、εより小さいスラックを有する全ノードか
ら成る。変形回路を設計するために、先ず、リタイムク
リティカル回路網内の各経路がそこにCノードを有する
ような、Cノードと称する1組のノード{V}を識別す
る。各Cノードvのコーン、コーン(V)を抽出し、こ
れはVからPI/PPIへのすべての組合わせ経路を備
える部分回路である。条件BFFからBNNまでを満足
させるためのアプローチは、Cノードセットを識別し、
そしてこのCノードの対応コーンに対する1組のタイミ
ング制約を満足させることである。
【0034】Cノードvに対して、コーン(V)に対す
るタイミング制約は、その入力(PIとPPI)の到着
時間およびその出力vの所用時間によって特定される。
コーン(V)の各入力Xに対する新規到着時間は、
【0035】
【0036】Cノードvに対する新規所望時間
【0037】
【0038】は、その原所用時間r(v)であると設定
される。タイミング制約が満足される場合、コーン
(V)の全ノードおよびエッジは、v以外の他のいずれ
のノードの推移ファンインにないので、取除かれる。そ
こでvに対するコーンは新規回路Sコーン(V)と置換
され、これは制約を満足させる。この操作によって回路
の機能性を保持する。
【0039】図1の順序回路では、クロック周期3はリ
タイミングによって縮小することはできない。ε=1と
する。回路内のリタイミング障害はクリティカルサイク
ル{W,e,f,g,W}である。回路のクリティカル
入力はyとwである場合、唯一のリタイムクリティカル
入力はwである。
【0040】リタイムクリティカル入力wのCノードと
して、ノードgが選択されるものとする。コーン(g)
が図2(A)に示されている。図示されるように、これ
はOR15、AND13、OR14およびラッチ16、
17そして18を備え、その入力と出力は前述のように
相互接続している。満足されるべきタイミング制約は、
{a(x)=a(y)=0;a(w)=a(d)=1;
r(g)=3:}である。この制約を満足させる新規コ
ーンが図2(B)に示される。コーン(V)を新規コー
ンと置換することによって、図2(C)に示される変換
回路を生成する。図示されるように、これはAND13
とOR15を、AND19、OR20およびAND21
と置換していて、AND19は入力xとyで供給され、
そしてその出力nおよび入力dはOR20に供給され
る。その出力kおよびAND21の出力mはOR14へ
の入力として供給される。AND21は入力xとwで供
給される。
【0041】図2(C)は、図1の元の回路が、図2
(A)の回路の代わりに図2(B)のそれを使用して変
形された図である。変形回路のクロック周期は縮小され
ていないが、この回路にはどんなリタイミング障害も含
まれない。従って、それは所望値ε=1だけクロック周
期を縮小するようリタイムすることができて、図2
(D)で示されるように、所望のクロック周期2を有す
る回路30を達成する。特に、このリタイミングはラッ
チの位置と数を変化させている。特に、ラッチ16はラ
ッチ25と置換され、このラッチ25はAND12の出
力aによって供給され、そしてAND11とAND21
に入力rを供給している。ラッチ16は前方に移動し
て、ラッチ25および26として複製されている。ラッ
チ25はAND11とAND21に入力を供給し、そし
てAND12によって入力を供給されている。ラッチ2
6はAND12に入力を供給し、そしてAND11の出
力によって供給されている。ラッチ17は前方に移動し
て、ラッチ27となり、このラッチ27はAND19に
よって入力を供給され、そしてOR20に入力を供給し
ている。図1の回路の遅延をε=1だけ改善するため
に、組合せ遅延最適化技術によって{a(x)=a
(y)=a(w)=a(d)=0;r(g)=2;}を
満足させようとしても、それは失敗するであろうことに
注目されたい。
【0042】特に、先述の例からわかるように、各コー
ン(V)に対してタイミング制約が満足される場合、こ
のコーンは回路のリタイムクリティカル回路網のカット
セットであり、上に挙げた条件BF F からBN N は満足
される。次に、タイミング制約が満足され得るように、
識別Cノードの発生をアドレスする。コーン(V)を新
規コーンSコーン(V)と置換することによって論理を
複製することへと導く。Cノードの選択における2つの
主要問題は、論理の複製によるペナルティ領域と、その
タイミング制約を満足させるコーン(V)の電位であ
る。
【0043】そのタイミング制約を満足させるコーン
(V)の電位のヒューリスティックな測定は、下記の観
察から導出される。
【0044】(a)制約を満足させるために、リタイム
クリティカル入力からの経路を、FSLからの経路の方
を長くすることによって短くする。従って、コーンのF
SL入力を、リタイムクリティカル入力に比べて多くす
ればするほど、制約を満足させる電位は大きくなる。
【0045】(b)コーン(V)がバランス木となって
いる場合、制約を満足させる機会は低減する。コーン
(V)はn入力をも持つとする。a(v)/log2
の値が高ければ高いほど、コーン(V)は不均衡にな
り、そして制約を満足させる機会が増える。
【0046】(C)コーン(V)における信号の再収斂
によって最適化コーン(V)の電位を増加させる。コー
ン(V)がそのタイミング制約を満足させる良好な電位
を持てるように、PI/PPIから最小レベルを持つC
ノードvを見つけようとする。
【0047】ここでアルゴリズムERBの概要を述べる
と、コーンのタイミング制約を識別し、かつ満足させ、
そして回路をリタイムすることによって、リタイミング
障害を取り除くように、所望のクロック周期および同等
な初期状態を有する最終回路を発生する。各リタイムク
リティカル入力iに対して、機能cnode(i)は、
iからの各クリティカル経路がCノードを有するよう
に、最小可能レベルを持つCノードを識別する。すべて
のリタイムクリティカル入力に対するcノ−ド、cノー
ドセットから、最小Cノードセット、最小cノードセッ
トが機能cノード−カバーによって識別され、従って最
小cノードセットはリタイムクリティカル回路網のカッ
トセットになっている。これは、Cノードの初期セット
である。
【0048】最小cノードセットにおけるCノードは次
いで、逆方向レベル順に処理される。選別されたCノー
ドvに対して、コーン(V)が抽出される。このコーン
は崩壊して単一ノードとなり、そしてK.J.シィン
(Singh)、A.Rウオン(Wang)、R.K.
ブレイトン(Brayton)およびA.サンジョヴァ
ンニ ヴィンセンテリ(Sangiovanni Vi
ncentilli)による「“Timing Opt
imization of Combinationa
l Logic”in Proc.IEEE Inte
rnational Conference on C
omputer AidedDesign,papgs
282−285,November 1988.」に
記述されているようなスピードアップアルゴリズムを利
用して、コーンに対するタイミング制約を満足させる。
タイミング制約が満足される場合、v以外のいずれの他
のノードの推移ファンインに入らない、コーン(V)の
全ノードおよびエッジは取り除かれる。次いでvに対す
るコーンは新規回路sコーン(V)と置換される。この
操作によって、回路の機能性を保持する。Cノードvは
最小cノードセットから削除され、そして最高レベルを
持つ次のCノードが選択される。
【0049】コーン(V)に対するタイミング制約が満
足され得ない場合には、機能cnode(V)が呼び出
されて、vをカバーするCノードの新セットCvを識別
する。Cvの幾つかのノードは、、最小cノードセット
にある他のCノードをカバーすることができる。これら
のCノードは、機能cノード−カバーによって識別さ
れ、最小cノードセットから削除される。次いで各新規
Cノードが処理される。cノード(V)がノードvをカ
バーするCノードセットを見つけることができない場
合、このアルゴリズムは機能を果たさない。
【0050】全コーンのタイミング制約が満足された
後、新規回路をリタイムして、所望のクロック周期(φ
−ε)を達成することができる。元の回路の初期状態を
与えられている場合、同等な最終リタイム回路の初期状
態を見つけることが常に可能であるというわけではな
い。この問題を回避するために、ラッチを移動させ、同
時に初期状態を計算する。従って、ERBは、所望のク
ロック周期(φ−ε)および新規初期状態を有する最終
回路に戻る。説明したアルゴリズムERBの輪郭を疑似
コード形で次に示す。
【0051】
【0052】図4には、前述の再設計プロセスの基本段
階を簡潔に表す流れ図が示されている。あるいはまた、
これを、所望の再設計をするために利用する装置の成分
のブロック図として見ることもできる。
【0053】ブロック41で表示されるように、周知の
態様で、元の回路のタイム分析を行なうことによって開
始して、入力と出力、一次と疑似一次ノードの各々にス
ッラクを設立する。
【0054】次にブロック42で表示されるように、前
述の通り、先ず、リタイムクリティカル入力、その各々
にリタイムクリティカル回路網があり、そしてブロック
43で表示されるように、各回路網に対して元の回路の
Cノードが識別される。次に、ブロック44で表示され
るように、そしてアルゴリズムERBに関して説明した
ように、Cノードセットから、全リタイムクリティカル
入力に対して、機能cノードカバーは最小Cノードセッ
トを識別し、それはリタイムクリティカル回路網のカッ
トセットとなっている。
【0055】ブロック45、46および47で表示され
るように、Cノードセットが空でない間は、最高レベル
を有するCノードが選択され、そしてそのコーンがそれ
から抽出される。次いでブロック48と49で表示され
るように、コーンのタイミング制約が設定され、そして
満足される。それはコーンの崩壊により、そして当該者
に周知のスピードアップアルゴリズムを使って行われ
る。ブロック50と51で表示されるように、タイミン
グ制約が一旦、満足されると、コーンは新規回路、Sc
oneと置換され、そしてブロック45〜51は、Cノ
ードセットが空になるまでは繰り返される。
【0056】ブロック50で表示されるように、Cノー
ドのコーンに対して、タイミング制約が満足されない場
合には、機能cnode(V)が呼び出されてCノード
をカバーする新規Cノードセットを識別する。コーンv
に対する新規Cノードを、見つけることができるとこの
Cノードは、テストされる必要のあるままになっている
と未決定Cノードに加えられ、そして加えられた後、ブ
ロック54で表示されるように、Cノードセットにまだ
残っているCノードと比較されるので、新しく加えられ
たCノードがカバーし得る幾つかは、現存するセットか
ら取り除くことができる。次いで、なおセット内にある
最高レベルのCノードが、ブロック46で処理され、そ
してこの手順で繰り返される。
【0057】タイミング制約を、満足させるコーンを備
えるCノードを見つけることができないノードvが残さ
れている場合、発明のプロセスはうまくいかない。
【0058】ブロック45で表示されるように、Cノー
ドセットが空であり、全コーンにおけるタイミング制約
が満足されたと表示する場合には、見つけられた全Sコ
ーンを取り替えることによって変形回路を形成し、そし
てこの新規回路は、ブロック57で表示されるように、
ラッチを適切に移動することによって、従来通り、リタ
イムされ、そして所望の縮小クロック周期および初期状
態を実現する。
【0059】この詳細に述べた特定実施態様は、発明の
一般原理を説明していることを理解すべきである。発明
の精神および範囲を逸脱せずに、様々な変更例が考案さ
れ得るでろう。例えば、リタイミング障害を取り除く条
件が決定された後、回路の入力および出力において必要
とされるタイミング制約、この制約を満足させる元の回
路の変形は、前述のスピードアップアルゴリズムで例示
されるように、他の遅延最適化技術を利用して、実行す
ることができる。
【図面の簡単な説明】
【図1】発明の原理に従ってそのクロック周期を縮小す
るように再設計しようとする回路の1例のブロック図で
ある。
【図2】A:リタイミング障害を構成し、そして発明を
実行するために変形される必要のある図1の回路の1部
分のブロック図である。 B:図2Aの回路部分の変形例のブロック図である。 C:図2Aの回路部分の代わりに図2Bのそれを代入し
て変形された、図1の回路のブロック図である。 D:所望通り、クロック周期を縮小するようリタイムさ
れた後の、図2Cの回路のブロック図である。
【図3】回路内の全リタイミング障害が取り除かれよう
とする場合、満足されることが必要な条件を示す図であ
る。
【図4】発明の基本的段階の流れ図である。
フロントページの続き (72)発明者 スティーブン・ロスワイラー アメリカ合衆国 18058 ペンシルバニア 州 カンクルタウン 373A RD2 ボ ックス

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも一つの主入力と、少なくとも
    一つの主出力を有し、そして回路を組み合わせ論理部分
    回路に分割するラッチを含む順序同期回路を再設計する
    コンピュータ実行プロセスであって、 主入力とラッチ間の経路の長さ、隣接するラッチペア間
    の経路の長さ、およびラッチと主出力間の経路の長さを
    測定することによってラッチの各々におけるスラックを
    決定する段階と、 組合せ遅延最適化のためのタイミング制約を設定するた
    めにリタイミング障害を取り除く条件を決定する段階
    と、 回路内の組合せ論理部分回路を変形してタイミング制約
    を満たすことによって前記条件を満足させ、リタイミン
    グ障害のない変形回路を達成する段階と、 ラッチを位置替えすることによって変形回路をリタイム
    して、クロック周期を縮小した再設計回路を達成する段
    階、とからなることを特徴とする、同期順序回路のリタ
    イミング障害の除去方法。
  2. 【請求項2】 元の回路の初期状態を与えられて再設計
    回路の初期状態を計算する段階を有することを特徴とす
    る、請求項1の記載に同期順序回路のリタイミング障害
    の除去方法。
  3. 【請求項3】 組合せ遅延最適化のための制約を設定す
    ることは、回路の入力と出力におけるタイミング制約を
    特定化することと、遅延最適化技術を利用してこの制約
    を満足させることを、含んでいることを特徴とする、請
    求項1に記載の同期順序回路のリタイミング障害の除去
    方法。
  4. 【請求項4】 障害を取り除く条件を決定する段階は、
    回路のリタイムクリティカル入力と、各リタイムクリテ
    ィカル入力のリタイムクリティカル回路網、および各リ
    タイムクリティカル回路網に対するCノードを識別する
    段階を含むことを特徴とする、請求項3に記載の同期順
    序回路のリタイミング障害の除去方法。
  5. 【請求項5】 リタイムクリティカル回路網に対してC
    ノードが識別された後、リタイムクリティカル回路網の
    カットセットとなっているCノード最小セットが識別さ
    れ、保持され、そしてこの最小セットの最高レベルのC
    ノードがコーン抽出のために選ばれることを特徴とす
    る、請求項4に記載の同期順序回路のリタイミング障害
    の除去方法。
  6. 【請求項6】 回路が、ラッチ間に相互接続された複数
    の組合せ部分回路を含んでいる、同期順序回路を再設計
    するコンピュータ実行プロセスであって、 a)回路内のラッチにおけるスラックを計算するために
    回路のノードのタイミング分析を行う段階と、 b)回路のリタイムクリティカル入力、各リタイムクリ
    ティカル入力のリタイムクリティカル回路網、および各
    リタイムクリティカル回路網に対するCノードを識別す
    る段階と、 c)最高レベルCノードのコーンvを抽出する段階と、 d)コーンvに対するタイミング制約を満足させ、そし
    てこのコーンをタイミング制約を満足させ、かつ回路の
    機能性を維持する新規回路に対応するSコーンと置換す
    る段階と、 e)Sコーンが元のコーンに取って替わっている部分的
    変形回路を形成する段階と、 f)全Cノードが処理され、そして最終変形回路が得ら
    れるまで、段階(c)から(e)を繰り返す段階と、 g)ラッチを位置替えすることによって最終変形回路を
    リタイムし、クロック周期の縮小された新規回路設計を
    達成する段階、とからなることを特徴とする同期順序回
    路のリタイミング障害の除去方法。
  7. 【請求項7】 リタイムクリティカル回路網に対してC
    ノードが識別された後、リタイムクリティカル回路網の
    カットセットとなっているCノードの最小セットが識別
    され、かつ保持され、そして最小セットの最高レベルを
    持つCノードが選別されてコーン抽出されることを特徴
    とする、請求項6に記載の同期順序回路のリタイミング
    障害の除去方法。
  8. 【請求項8】 各リタイムクリティカル入力に対して最
    小可能レベルを有するCノードが識別され、従って前記
    入力からの各クリティカル経路にはCノードがあり、全
    クリティカルリタイム入力に対するCノードセットはC
    ノードの最小セットで有り、従ってこの最小セットは、
    Cノードの初期セットとして識別されるリタイムクリテ
    ィカル回路網のカットセットとなっていることを特徴と
    する、請求項6に記載の同期順序回路のリタイミング障
    害の除去方法。
JP5273309A 1992-11-05 1993-11-01 同期順序回路のリタイミング障害除去を用いたリタイミング方法 Expired - Fee Related JP2601161B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/972,149 1992-11-05
US07/972,149 US5553000A (en) 1992-11-05 1992-11-05 Eliminating retiming bottlenecks to improve performance of synchronous sequential VLSI circuits

Publications (2)

Publication Number Publication Date
JPH06243195A true JPH06243195A (ja) 1994-09-02
JP2601161B2 JP2601161B2 (ja) 1997-04-16

Family

ID=25519248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5273309A Expired - Fee Related JP2601161B2 (ja) 1992-11-05 1993-11-01 同期順序回路のリタイミング障害除去を用いたリタイミング方法

Country Status (2)

Country Link
US (1) US5553000A (ja)
JP (1) JP2601161B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2601168B2 (ja) * 1993-03-30 1997-04-16 日本電気株式会社 順次回路をリタイミングする方法および再設計する方法
US6272668B1 (en) * 1994-12-14 2001-08-07 Hyundai Electronics America, Inc. Method for cell swapping to improve pre-layout to post-layout timing
US5751596A (en) * 1995-07-27 1998-05-12 Vlsi Technology, Inc. Automated system and method for identifying critical timing paths in integrated circuit layouts for use with automated circuit layout system
US5822217A (en) * 1995-12-13 1998-10-13 Synopsys, Inc. Method and apparatus for improving circuit retiming
US6018621A (en) * 1996-12-09 2000-01-25 International Business Machines Corporation Identifying an optimizable logic region in a logic network
US6035110A (en) * 1996-12-09 2000-03-07 International Business Machines Corporation Identifying candidate nodes for phase assignment in a logic network
US6074429A (en) * 1997-03-03 2000-06-13 Motorola, Inc. Optimizing combinational circuit layout through iterative restructuring
US6658634B1 (en) * 1998-05-07 2003-12-02 International Business Machines Corporation Logic power optimization algorithm
US6460166B1 (en) 1998-12-16 2002-10-01 International Business Machines Corporation System and method for restructuring of logic circuitry
US6282695B1 (en) 1998-12-16 2001-08-28 International Business Machines Corporation System and method for restructuring of logic circuitry
US6405345B1 (en) 1999-05-28 2002-06-11 Cadence Design Systems, Inc. Updating placement during technology mapping
US6378116B1 (en) * 1999-05-28 2002-04-23 Cadence Design Systems, Inc. Using budgeted required time during technology mapping
US20050149301A1 (en) * 1999-09-24 2005-07-07 Nec Corporation Method for design validation using retiming
US6874135B2 (en) * 1999-09-24 2005-03-29 Nec Corporation Method for design validation using retiming
US6763506B1 (en) 2000-07-11 2004-07-13 Altera Corporation Method of optimizing the design of electronic systems having multiple timing constraints
EP1623448B1 (en) * 2003-03-19 2016-12-14 Mentor Graphics Corporation Retimimg circuits using a cut-based approach
US20060136854A1 (en) * 2004-12-21 2006-06-22 International Business Machines Corporation Method for placement of pipeline latches
TWI316787B (en) * 2005-04-13 2009-11-01 Via Tech Inc Method for optimizing critical path timing in a logic synthesis flow and data processing system
US8453083B2 (en) * 2006-07-28 2013-05-28 Synopsys, Inc. Transformation of IC designs for formal verification
US7676779B2 (en) 2007-09-11 2010-03-09 International Business Machines Corporation Logic block timing estimation using conesize
US20090070720A1 (en) * 2007-09-11 2009-03-12 International Business Machines Corporation System to Identify Timing Differences from Logic Block Changes and Associated Methods
US8145943B2 (en) * 2009-05-11 2012-03-27 Empire Technology Development Llc State variable-based detection and correction of errors
JP5743808B2 (ja) * 2011-08-24 2015-07-01 株式会社東芝 集積回路の配線方法、集積回路の配線プログラム及びそれを記憶した記憶媒体
US9971858B1 (en) * 2015-02-20 2018-05-15 Altera Corporation Method and apparatus for performing register retiming in the presence of false path timing analysis exceptions
US9710591B1 (en) 2015-02-20 2017-07-18 Altera Corporation Method and apparatus for performing register retiming in the presence of timing analysis exceptions

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4263651A (en) * 1979-05-21 1981-04-21 International Business Machines Corporation Method for determining the characteristics of a logic block graph diagram to provide an indication of path delays between the blocks
US4630219A (en) * 1983-11-23 1986-12-16 International Business Machines Corporation Element placement method
US4703435A (en) * 1984-07-16 1987-10-27 International Business Machines Corporation Logic Synthesizer
US4698760A (en) * 1985-06-06 1987-10-06 International Business Machines Method of optimizing signal timing delays and power consumption in LSI circuits
US5150308A (en) * 1986-09-12 1992-09-22 Digital Equipment Corporation Parameter and rule creation and modification mechanism for use by a procedure for synthesis of logic circuit designs
US5029102A (en) * 1987-06-08 1991-07-02 International Business Machines, Corp. Logical synthesis
US4924430A (en) * 1988-01-28 1990-05-08 Teradyne, Inc. Static timing analysis of semiconductor digital circuits
JP2609280B2 (ja) * 1988-04-22 1997-05-14 株式会社日立製作所 シミュレーション方法
US5282148A (en) * 1989-05-23 1994-01-25 Vlsi Technology, Inc. Method and apparatus for the design and fabrication of integrated circuits employing logic decomposition algorithms for the timing optimization of multilevel logic
US5095454A (en) * 1989-05-25 1992-03-10 Gateway Design Automation Corporation Method and apparatus for verifying timing during simulation of digital circuits
US5237514A (en) * 1990-12-21 1993-08-17 International Business Machines Corporation Minimizing path delay in a machine by compensation of timing through selective placement and partitioning
US5168455A (en) * 1991-03-28 1992-12-01 Digital Equipment Corporation Procedure for incorporating timing parameters in the synthesis of logic circuit designs
US5329188A (en) * 1991-12-09 1994-07-12 Cray Research, Inc. Clock pulse measuring and deskewing system and process

Also Published As

Publication number Publication date
US5553000A (en) 1996-09-03
JP2601161B2 (ja) 1997-04-16

Similar Documents

Publication Publication Date Title
JPH06243195A (ja) 同期順序回路のリタイミング障害の除去方法
US7020855B2 (en) Digital circuit layout techniques using identification of input equivalence
JP2874628B2 (ja) 論理回路の最適化装置及びその方法
Ju et al. Incremental techniques for the identification of statically sensitizable critical paths
JP4540540B2 (ja) 遅延計算装置
US6360352B2 (en) Digital circuit layout techniques
US6546539B1 (en) Netlist resynthesis program using structure co-factoring
Held et al. Clock scheduling and clocktree construction for high performance ASICs
US20040216064A1 (en) Method and apparatus for optimum transparent latch placement in a macro design
Dey et al. Performance optimization of sequential circuits by eliminating retiming bottlenecks
US6263478B1 (en) System and method for generating and using stage-based constraints for timing-driven design
US20050062496A1 (en) Method for generating optimized constraint systems for retimable digital designs
Cong et al. Simultaneous circuit partitioning/clustering with retiming for performance optimization
WO2000073925A2 (en) Using budgeted required time during technology mapping
US20050039152A1 (en) Timing path detailer
McCoy et al. Non-tree routing [VLSI layout]
Jongeneel et al. Area and search space control for technology mapping
Friedrich et al. Design methodology for the IBM POWER7 microprocessor
US5682519A (en) Method for reducing power consumption of switching nodes in a circuit
Lim et al. A statistical approach to the estimation of delay-dependent switching activities in CMOS combinational circuits
US7006962B1 (en) Distributed delay prediction of multi-million gate deep sub-micron ASIC designs
US5649166A (en) Dominator selection method for reducing power consumption in a circuit
US7010765B2 (en) Method for identifying removable inverters in an IC design
JP3653814B2 (ja) 遅延値算出方法
JP3084255B2 (ja) Lsiレイアウト設計方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19961126

LAPS Cancellation because of no payment of annual fees