JPH04112271A - 遅延解析方式 - Google Patents

遅延解析方式

Info

Publication number
JPH04112271A
JPH04112271A JP2232198A JP23219890A JPH04112271A JP H04112271 A JPH04112271 A JP H04112271A JP 2232198 A JP2232198 A JP 2232198A JP 23219890 A JP23219890 A JP 23219890A JP H04112271 A JPH04112271 A JP H04112271A
Authority
JP
Japan
Prior art keywords
delay
circuit
input
bus
delay calculation
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
JP2232198A
Other languages
English (en)
Inventor
Hidetoshi Matsuoka
英俊 松岡
Fumiyasu Hirose
広瀬 文保
Koichiro Takayama
高山 浩一郎
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2232198A priority Critical patent/JPH04112271A/ja
Publication of JPH04112271A publication Critical patent/JPH04112271A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 論理回路の遅延を解析する遅延解析方式に関し、大規模
な組合せ型の論理回路を高速に遅延解析を可能にするこ
とを目的とし、 解析対象の論理回路の各論理ゲートについて、遅延値を
伝播させる素子(遅延計算素子という)に置き換えた遅
延計算回路と、解析対象の論理回路の各論理ゲートにつ
いて、与えられた条件を満たすバスを選択する素子(イ
ベント発生素子という)に置き換えたイベント発生回路
と、上記遅延計算回路およびイベント発生回路を制御し
て解析対象の論理回路の遅延の解析制御を行う全体制御
回路とを備え、この全体制御回路が入力変化の時刻を上
記遅延計算回路の入力側に与えて出力側から遅延値を取
り出したり、あるいは更に上記イベント発生回路の出力
側からバス探索の開始命令を入力し、当該イベント発生
回路のイベント発生素子が随時入力選択信号を上記遅延
計算回路の対応する遅延計算素子に入力してバスの遅延
計算回路することを繰り返し、条件を満たすバスを順次
探索するように構成する。
(産業上の利用分野〕 本発明は、論理回路の遅延を解析する遅延解析方式に関
するものである。近年の論理回路の高速化の要求に伴い
、より短いクロック間隔で論理回路を動作させる必要が
生じてきている。このために論理管理の動作が終了する
までに要する時間を設計時に、より正確に解析する必要
が生し、大規模回路でも、高速に遅延解析を可能にする
方式が要求されている。
:従来の技術と発明が解決しようとする課題〕従来の遅
延解析方式は、計算機上のソフトウェアによって、遅延
解析を行ってきた。しかし、近年、解析対象の論理回路
が大型化し、解析に長時間を要するようになってきた。
また、解析対象の論理回路の回路データが膨大となり、
計算機の主記憶上に載らなくなってきたため、外部記憶
装置との間の転送が必要となり、解析時間に更に余分の
時間が必要となってしまうという問題があった。
本発明は、大規模な組合せ型の論理回路を高速に遅延解
析を可能にすることを目的としている。
〔課題を解決するための手段〕・ 第1図は、本発明の原理構成図を示す。
第1図において、全体制御回路1は、遅延計算回路3お
よびイベント発生回路4を制御して解析対象の論理回路
の遅延の解析制御を行う回路である。
遅延計算回路3は、解析対象の論理回路の各論理ゲート
について、遅延値を伝播させる素子(遅延計算素子5と
いう)に置き換えた回路である。
イベント発生回路4は、解析対象の論理回路の各論理ゲ
ートについて、与えられた条件を満たすバスを選択する
素子(イベント発生素子6という)に置き換えた回路で
ある。
〔作用〕
本発明は、第1図に示すように、解析対象の論理回路の
各論理ゲートについて、遅延計算回路3およびイベント
発生回路4に置き換え、全体制御回路1が入力時刻の変
化を遅延計算回路3の入力側に与えて出力側から遅延値
を取り出し、更にイベント発注回路4の出力側からバス
探索の開始命令を入力し、当該イベント発生回路4のイ
ベント発生素子6が随時入力選択信号を遅延計算回路3
の対応する遅延計算素子5に入力してバスの遅延計算依
願することを繰り返し、条件を満たすバスなどを探索す
るようにしている。
従って、組合せ型の論理回路について直接実行可能な遅
延計算回路3およびイベント発生回路4に置き換え、遅
延解析を高速に行うことが可能となる。これにより、大
規模な組合せ型の論理回路でも高速に遅延解析すること
ができる。
〔実施例〕
次に、第1図から第23図を用いて本発明の実施例の構
成および動作を順次゛詳細に説明する。
第1図において、全体制御回路1は、遅延解析回路2へ
動作開始命令を送ったり、そこから終了命令を受は取っ
たり、解析結果を読み出したりなどする回路である。
遅延解析回路2は、解析対象の論理回路の遅延の計算や
、バスの選択をする回路であって、遅延計算回路3およ
びイベント発生回路4から構成される回路である。
遅延計算回路3は、解析対象の論理回路、例えば第2図
(a)論理回路の各論理ゲートを遅延計算素子5で置き
換えた回路であって、イベント発生回路4のイベント発
生素子6からの素子数分の入力選択信号によってバスを
指定され、この指定されたバスの伝播遅延を計算し、遅
延値を求めるためのものである。この求めた遅延値をも
とに与えられた条件を満たすか否かを表す判断信号を、
自身が作成するか、あるいは全体制御回路1に送って作
成してもらう。
遅延計算素子5は、第3回出)に示すように、解析対象
の例えば第2図falの論理回路の各論理ゲートを置き
換えて作成したものであって、対応するイベント発生素
子6からの入力選択信号によって入力のうちの1つを選
択し、その入力からの遅延値に自身の遅延値を加算して
出力側に伝えたり、あるいは出力側からの遅延値から自
身の遅延値を減算した遅延値を入力側に伝えたりなどす
るものである。また、イベント発生素子6に送る判断信
号を自身で作成し、送ることもある。
イベント発生回路4は、イベント発生素子6から構成さ
れ、与えられた条件を満たすバスの列挙開始命令(バス
探索の開始命令)を全体制御回路1から受は取って動作
を開始し、与えられた条件を満たすバスを求めるために
バスの1切り替えを行い、入力選択信号を対応する遅延
計算素子5に伝えてそのバスの遅延量の計算を依較する
。また、条件を満たすバスを見つけたこと(イベント発
生回路4の入力から全体制御回路1に開始命令を伝えた
ときにバスを見つけたことなる)や、探索が全て終了し
たこと(イベント発生回路4の出力から終了命令を全体
制御回路1に伝えたときに探索が全て終了こととなる)
を全体制御回路1に伝える。
イベント発生素子6は、第3図(C1に示すように、解
析対象の論理回路、例えば第2図+81論理回路の各論
理ゲートを置き換えて作成したものであって、出力側か
ら伝わってきた開始命令を受けて動作を開始し、入力を
順番に選択して対応する遅延計算素子5へ入力選択信号
を送り、これによって指定された新たなバスの遅延量を
求めて与えられた条件を満たすか否かの判断信号を受は
取り、満たす場合に選択された入力に接続しているイベ
ント発生素子6の出力側に開始命令を送り、満たさない
場合に次の入力を選択することを繰り返し、条件を満た
すバスを探索するものである。そして、満たす場合は、
開始命令を送ったイベント発生素子6の出力側から元の
イベント発生素子6の入力側に向かって、しばらくして
終了命令が戻ってきたときに、次の入力を選択する。も
し、次の入力が存在しない場合は、そのイベント発生素
子6の出力側に終了命令を送り、当該イベント発生素子
6は動作を停止する。
第2図は、本発明の1実施例構成図を示す。
第2図(alは、解析対象の論理回路例を示す。
第2図(blは、置き換えた遅延計算回路/イベント発
生回路例を示す、これは、第2図(alの解析対象の論
理回路例の各論理ゲートについて、遅延計算を行う遅延
計算素子5によって置き換えた遅延計算回路3、および
与えられた条件を満たすバスを選択するイベント発生素
子6に置き換えたイベント発生回路4を生成した様子を
模式的に示したものである。ここで、遅延計算回路3は
、入力側から与えられた入力変化の時刻(例えば0(零
))をもとに各遅延計算素子5の遅延量を順次加算する
ことを繰り返し、出力側から例えば最大遅延値を出力す
る。イベント発生回路4は、出力側から開始命令を与え
られたことに対応して、各イベント発生素子6が随時入
力選択信号を対応する遅延計算素子5に入力してバスの
遅延計算依頼することを繰り返し、条件を満たすバスを
探索したりなどするものである。
第3図は本発明の遅延計算素子とイベント発生素子の変
換例を示す。
第3図falは、解析対象の論理回路の1つの論理ゲー
トを示す。
第3図(′b)は、遅延計算素子5の例を示す、これは
、第3図fatの解析対象の1つの論理ゲートを図示の
ように置き換えたものである。ここで、遅延計算素子5
は、左側(入力側)から伝えられた遅延値人力1.2.
3について、当該遅延計算素子5自身の遅延量を加算し
て最大値(あるいは最小値)を右側(出力側)から遅延
値出力として伝えたり、あるいは逆に右側(出力側)か
ら伝えられた遅延値から当該遅延計算素子5自身の遅延
量を減算して左側(入力側)から遅延値を伝えたりなど
する(後述する)。
第3図+1).1は、イベント発生素子6の例を示す。
これは、第3図(a)の解析対象の1つの論理ゲートを
図示のように置き換えたものである。ここで、イベント
発生素子6は、右側(出力側、イベント出力)から伝え
られた開始命令をもとに、入力選択信号を対応する遅延
計算素子5に送って遅延量計算依願してその結果(例え
ば入力選択信号で指定したバスの遅延値が条件を満たす
か、満たさないか)を全体制御回路1などから判断信号
として受は取り、その結果が満たした場合に入力側(イ
ベント出力1.2.3)から前段に、開始命令を伝え、
一方、満たさない場合に+1した入力選択信号を同様に
対応する遅延計算素子5に送るなどするものである(後
述する)。
第4図は、本発明の最大遅延値の計夏例を示す。
動作を説明する。
(1)全体制御回路1が遅延計算回路3の入力側にそれ
ぞれ入力変化時刻、ここでは0 (零)を図示のように
伝える。
(2)遅延計算回路3の遅延計算素子6は、伝えられた
遅延値にそれぞれ自身の遅延値、ここでは1を加算し、
複数の入力がある場合にはここで最大価のみを出力側に
伝える。
[3]  +21を繰り返すことにより、論理回路の最
大遅延値が右側から出力され、全体制御回路1に伝えら
れる。図の例では、最大遅延値“5”が伝えられる。即
ち、入力が一斉に時刻0で変化した場合、出力には時刻
5までに変化が伝わることが判明する。また、解析対象
の論理回路が多出力の場合には、全ての出力を遅延Oの
ゲートにくっつけてまとめれば、1出力の論理回路とし
て処理できる。
続いて、与えられた条件(ここでは例えば最大遅延値)
を満たすバスの列挙について説明する。
(4)全体制御回路1が例えば第2図(1)lのイベン
ト発生回路4の出力側からバス列挙の開始命令を伝える
(5)  開始命令を受けたイベント発生回路4のイベ
ント発生素子6は、入力を選び、この選んだ入力選択信
号を対応する遅延計算素子5に送って当該新たなバスの
遅延値の計算依願を行ってその結果が与えられた条件を
満たすときは入力側につながるイベント発生素子6に開
始命令を伝え、一方、条件を満たさないときには次の入
力について順番に行う、これを繰り返し、イベント発生
回路4の入力から開始命令が全体制御回路lに伝わった
ときに、条件を満たすバスを発見したことを検知し、こ
のバスを読み出す、そして、イベント発生回路4の同じ
入力へバス列挙の終了命令を逆の方向に伝える。
(6)各イベント発生素子6は、条件を満たすバスの入
力側に開始命令を伝え、しばらくしてその入力側から終
了命令が戻ってくるので、これを契機に、別の入力を選
び、(5)を繰り返し行い、条件を満たす全てのバスを
読み出す、一方、開始命令を伝える入力がなくなったと
き、イベント発生素子6の出力側に終了命令を伝える。
(7)以上の処理によって、条件を満たすバスを全て読
みだして列挙することができる。
次に、実施例1ないし実施例6について順次具体的に説
明する。
〔実施例1〕 :解析対象の論理回路の最大遅延値(あ
るいは最小遅延値)を求める実施例として、第6図、第
7図フローチャートに示す順序に従い、第5図会体構成
図(実施例1)の構成を参照して詳細に説明する。
(1)第5図に示すように、遅延計算回路3と、全体制
御回路1とを図示のように接続する。
(2)全体制御回路1が遅延計算回路3の全ての入力に
入力変化の時刻を与える(第6図■)。
(3)  これら時刻が、遅延計算回路3の遅延計算素
子5の比較器5−1の入力に伝わる(第6図0で呼び出
されたサブルーチンの第7図0)。
(4)比較器5−1が、全ての入力の遅延値のうち、こ
こでは最大値のみを出力する(第7図0)。
(5)加算器5−2は、(4)で出力された最大値に自
己の論理ゲートの伝播遅延(定数)5−3を加えた遅延
値を当該遅延計算索子5の出力側から出力する(第7図
0)。
(6)以上の(4)、(5)について各遅延計算素子5
が繰り返し行い(第7図0.0、@No、[相]を繰り
返し行い)、遅延計算回路3の出力側(第5図出力側)
から最大遅延値として全体制御回路1に出力する(第7
図0YESで復帰した第6図0)。
以上のように、第5図構成のもとで、全体制御回路1が
入力変化の時刻を遅延計算回路3の全ての入力側に与え
、遅延計算回路3を構成する各遅延計算素子5が最大の
遅延値に自身の伝播遅延を加算した遅延値を次の遅延計
算素子5に伝えることを繰り返し、一番出力側の遅延計
算素子5から全体制御回路1に求める最大遅延値を出力
する。
これにより、解析対象の論理回路の最大遅延値(あるい
は最小遅延値)を求めることが可能となる。
〔実施例2〕 :解析対象の論理回路の条件(例えば最
大遅延値)に違反するバスを求める実施例として、第1
)図、第12図フローチャートに示す順序に従い、第8
図ないし第10図構成(実施例2)を参照して詳細に説
明する。
(1)第10図に示すように、遅延計算回路3、イベン
ト発生回路4、および全体制御回路1を図示のように接
続する。そして、遅延計算回路3の各遅延計算素子5を
第8図に示すように構成、おおびイベント発生回路4の
各イベント発生素子6を第9図に示すように構成する。
(2)第8図遅延計算素子5は、対応するイベント発生
素子6からの入力選択信号に対応した入力側から伝えら
れた遅延値を選択する比較切替器5−4、この比較切替
器5−4によって選択されて入力された遅延値に自身の
伝播遅延5−3を加算してその結果を出力する加算器5
−2から構成されるものである。これら遅延計算素子5
によって、対応するイベント発生素子6から送られてき
た入力選択信号で指定された入力の遅延値(0のとき最
大の遅延値、O以外のときはその指定された入力の遅延
値)に自身の伝播遅延5−3を加算して出力側から次に
伝えることを繰り返すことにより、イベント発生回路4
の各イベント発生素子6から指定されたバスの遅延値(
入力選択信号が全て“0”のときは最大の遅延値、それ
以外のときは指定されたバスの遅延値)を遅延計算回路
3の出力側から全体制御回路1に出力することとなる。
全体制御回路1を構成する比較回路1−1が予め条件と
して与えられた、しきい値1−2と比較し、例えば当該
しきい値よりも大きければ、当該バスの遅延値が条件を
違反すると判定して判断信号をイベント発生回路(4)
に伝え、満たすときにその旨を判断信号を伝えて他のバ
スを探索し、条件に違反するバスの探索を行う。
(3)第9図イベント発生素子6は、全体制御回路1が
出力側から開始命令(例えば違反バス探索の開始命令)
を■に示すように伝えたことによって動作開始し、当該
開始命令をカウンタ6−1に入力して+1、および同期
素子6−2に入力して開始命令を保持する。カウンタ6
−1は、当初0であって、l、2.3に順次カウントし
、入力選択信号として対応する遅延計算素子5に送ると
共にスイッチ2を切り替えて対応する入力に開始命令を
伝え得るように接続する。また、スイッチ1は、(2)
で説明したように、例えば条件に違反するバスである旨
の判断信号が全体制御回路1がら送られてきたときに“
あり”側に同期素子6−2に保持されていた1ステツプ
前の開始命令をスイッチ2で接続された入力側に伝え、
なしの旨の判断信号が送られてきたときに“なし”側に
同期素子6−2に保持されていた開始命令を送り、カウ
ンタ6−1を+1、および同期素子6−2に入力して開
始命令を保持することを、繰り返し行う、そして、カウ
ンタ6−1が“0″となったときに終了命令を■に示す
ように出力側から出力する0以上の操作によって、各イ
ベント発生素子6が入力選択信号を遅延計算素子5に送
ってそのときのバスが条件に違反しているときにその旨
“あり”の判断信号を受は取って入力側に開始命令を伝
え、一方、“なし”の判断信号を受は取ってカウンタ6
−1を+1した入力選択信号を同様に送ることを繰り返
し、0に戻ったときに終了命令を出力することにより、
条件に違反するバスを全て見つけ出すことが可能となる
(4)第10図会体制御回路1は、遅延計算回路3の入
力に入力変化時刻を与え、出力から受は取った遅延値を
しきい値1−2と比較器1−1で比較し、その結果(こ
こで、違反バスである旨)を全てのイベント発生素子6
に判断信号として送ったり、イベント発生回路4の出力
側に探索開始命令(違反バスの探索を開始する開始命令
)を送って探索を開始させたり、イベント発生回路4の
入力から開始命令を受は取って(バス発見した旨を受は
取って)、バスを読みだしたり、この開始命令を受は取
った入力に終了命令(次のバスの探索開始命令に対応)
を送ったり、更に、イベント発生回路4の出力側から終
了命令を受は取って(全てのバスの探索を終了した旨を
受は取って)、探索を終了したりするものである。これ
により、全体制御回路1が与えたしきい(i 1−2よ
り、長い遅延値を持つ解析対象の論理回路の全てのバス
を検索して列挙することができる。以下第1)図、第1
2図フローチャートに示す順序に従い、詳細に説明する
(5)実施例1と同様にして、第10図会体制御回路1
が遅延計算回路3の全入力に入力変化の時刻を与えたこ
とに対応して、出力から最大遅延値を出力する(第1)
図(alの■)。
(6)全体制御回路1がイベント発生回路4の一番出力
側のイベント発生素子6の出力にバス列挙の開始命令を
送る(第1)図(alの@)。
(71+61で開始命令を一番出力側のイベント発生素
子6に送ったことに対応して、当該イベント発生素子6
が開始命令を受は取る(第1)図talの@で呼び出さ
れたサブルーチン(イベント発生素子)の第12図0)
+8]  +71で受は取った開始命令が、第9図カウ
ンタ6−1に伝わり+1、および同期素子6−2に伝わ
り開始命令を保持する(第12図0)。カウンターOの
場合(全ての入力にっながつているバスが違反するか否
かを検索してしまった場合)には(第12図・YESの
場合には)、カウンタ6−1の出力がOとなり、スイッ
チ2はオフになり、遅延計算素子5の比較切替器5−4
は最大値出力状態になる共に、同時にカウンタ6−1か
ら終了命令が出力側から伝える(第12図・)、そして
、一番出力側のイベント発注素子6の場合(第12図@
YESの場合)には、全体制御回路1に探索終了の信号
を伝え、一方、一番出力側のイベント発生素子6でない
場合(第12図ONOの場合)には、後段のイベント発
生素子6の入力に次のハス探索の開始命令を送る(第1
2図o)。
また、カウンターOの場合には、第12図@ないし・に
よって当該イベント発生素子6内で入力を切り替えたバ
スについて、入力選択信号を対応する遅延計算素子5に
送って遅延計算回路し、その結果について全体制御回路
1がしきい値と比較して違反バスのときに(第12図[
株]あるのときに)、入力側に開始命令を伝えて違反バ
スの探索を行う(第12図■、@YES、@、■で呼び
出す第1)図(bl■、[相]、■、第12図@)。一
方、第12図◇Noの場合(一番人刃側のイベント発生
素子でない場合)、■、■で前段のイベント発生素子6
について第12図O以降を行い、第12図RETRUN
L、[相]で終了命令が戻ってくる。
一方、違反バスでないときに(第12図0ないのときに
)、同期素子6−2が保持していた開始命令をスイッチ
1を通ってカウンタ6−1および同期素子6−2に伝わ
り、次の入力について、第12図@以降を繰り返し行う
以上の手順によって、第10図会体制御回路1が当初遅
延計算回路3の入力側に入力変化の時刻を与えて出力か
ら最大遅延値を受は取った後、しきい値1−2を与えて
探索を開始する開始命令をイベント発生回路4の出力側
から与えると、各イベント発生素子6が第12図フロー
チャートの手順によって入力選択信号を対応する遅延計
算素子5に送ってバスの遅延値計算を依願して遅延値を
出力させ、全体制御回路1がこの遅延値としきい(l!
1−2と比較してその結果(違反バスがある(第12図
Φある)、あるいは違反バスがない(第12図0ない)
を判断信号として送り、全ての違反バスを探索するよう
にしている。
第1)図+alフローチャートは、第10回合体制御回
路1の動作を表す。
第1)図(′b)フローチャートは、違反バス出力であ
って、第12図■で呼び出されるサブルーチンを表す。
1)21ffiフローチヤートは、イベント発生素子6
の動作を表すものであって、第1)図(alの[株]で
全体制御回路1から呼び出されるサブルーチン、更に第
12図■で前段のイベント発生素子6に開始信号を伝え
たときに呼び出されるサブルーチンである。
〔実施例3〕 :これは、第13図ないし第15図に示
すように、〔実施例2〕に更に、遅延計算回路3の各遅
延計算素子5に逆方向のデータバスを持たせ、より高速
にしきい値よりも長いバスを検索する実施例である。
(1)第13図遅延計算素子5は、こ実施例2′:と同
様な伝播遅延5−3、比較切替器5−4、および、新た
に、出力側から伝わってきたしきい値から自身の論理回
路の伝播遅延5−3を減算(但し、入力選択信号が′O
”のときはスイッチ57によってしきい値の入力がマス
クされ0が入る)する減算器l、比較切替器5−4から
の遅延値から減算器1の出力を減算した遅延値(最大の
遅延1i)を出力する減算器2、減算器1の出力を入力
選択信号で選択された入力側の遅延計算素子5に伝える
切替器5−6から構成されている。
(2)第14図イベント発生回路4は、〔実施例2〕と
同しであるが、判断信号が全体制御回路1から送られて
くるのでなく、遅延計算素子5から送られてくる。
(3)第14回合体制御回路1は、〔実施例2〕と同様
に、遅延計算回路3の入力に入力変化の時刻を与え、遅
延計算回路3の出力から最大遅延値を得る。じきい値を
遅延計算回路3の一番出力側の第13図遅延計算素子5
の右側の■から与える。
そして、〔実施例2〕と同様に、探索を開始する開始命
令をイベント発生回路3の出力側から与え、入力側から
バス発見の信号(開始命令)を受は取ったときに違反す
るバスを読み出し、次のバスの探索開始の信号(終了命
令)を入力側に与える。
以下第15図フローチャートに示す順序に従い説明する
(4)第14回合体制御回路1が遅延計算回路3の入力
に入力変化の時刻を与え、出力から最大遅延値を得る(
第15図(a)の■)。
(5)全体制御回路1が遅延計算回路3の一番出力側の
第13図遅延計算素子5の出力に■しきい値を与える(
第15図(a)の0)。
(6)全体制御回路1がイベント発生回路4の一番出力
側のイベント発生素子6の出力に列挙を開始する開始命
令を送り(第15図(alのo)、第15図Q)lのイ
ベント発生素子のサブルーチンを呼び出しく第15図t
a+の■)、違反バスの探索を開始する。
(7)  イベント発生素子6の出力に開始命令を受け
る(第15図(blの@)と、カウンタに+1および同
期素子が開始命令を保持する。そして、カウンタ=0の
とき(第15図(blの[相]YESのとき)、第15
回出)の[相]に示すように、カウンタの出力が0にな
り、スイッチ2と遅延計算素子5の切替器5−6はオフ
になり、比較切替器5−4は最大値出力状態になる。ま
た、スイッチ5−7はオフになり、0が出力され、減算
器2の出力には(最大値士伝播遅延)が出る。同時にイ
ベント発生素子6のカウンタから終了命令が出力側から
出力される。そして、第15図(blの[相]で第12
図■の処理を行い、全体制御回路1あるいは前段のイベ
ント発生素子6に開始信号を送る。全体制御回路1に開
始信号が送られたときは違反バスが見つかったので、そ
のバスを読み出す。
一方、カウンタ=0でないとき(第15図(blのoN
○のとき)、第15図Cb)の0ないし[相]を行い、
違反バスの探索を行う、以下説明する。
(8)第9図イベント発生素子6のカウンタの出力(入
力選択信号)がスイッチ2と、第13図遅延計算素子5
の比較切替器5−4と切替器5−6へ伝わり、入力を切
り替え(第15図(blの@)ると共に、スイッチ5−
7に伝わってしきい値入力を減算器1に伝える(第15
図(′b)の0)。その結果、(しきい値−伝播遅延)
が減算器1から出力され、切替器5−6を通って選択さ
れた入力へしきい値として伝わる(第15図(blの0
)。また、減算器1の出力が減算器2へも伝わり、選択
された入力側から伝わってきた最大値と引算され、その
結果(最大価半伝播遅延−しきい値)の結果の正負が判
断信号としてイベント発生素子に伝わる(第15回出)
のO)。そして、イベント発生素子6の第9図スイッチ
1が判断信号によって、違反バスあり(正)のとき上側 違反バスなしく負)のとき下側 に切り替わり、第12図■の処理を行い、カウンタ=O
になるまで、違反バスの探索を繰り返し行う(第15図
(blの[相]、[相])。
以上のように、遅延計算回路3に逆方向のデータバスを
設けて与えられたしきい値から各遅延計算素子5自身の
伝播遅延を順次減算して入力側に伝え、このしきい値と
入力側から順次加算されてきた最大遅延値とを減算し、
その正、負によって違反バスか否かを判定してイベント
発生素子6の入力を選択し、違反バスを検索することに
より、入力選択信号によって選択されたバスが条件に違
反するか否かを迅速に判定でき、高速に違反バスを検索
できる。
〔実施例4〕 :これは、第16回ないし第19図に示
すように、与えられた範囲内の遅延値を持つバスを列挙
する実施例である。
(l]  第16図遅延計算素子5にモード選択信号を
新たに設け、入力選択信号が0のときに、最大遅延値を
伝えるか、最小遅延値を伝えるかのモードを切り替える
ようにしたものである。
(2)第17図イベント発生素子6は、〔実施例2〕と
殆ど同しであるが、同期素子1、同期素子2と2段にし
、それぞれの同期素子1、同期素子2への入力は同時に
下限モード命令、上限モード命令として全体制御回路1
に伝わる。
(3)第18図会体制御回路1は、イベント発生素子6
からの下限モード命令、上限モード命令に対応してR3
−FFによって保持されたモード選択信号により、下限
値(下限遅延値)あるいは上限値(上限遅延値)のいず
れかを切替器で切り替えて比較器に入力し、遅延計算回
路3の出力からの遅延値がこれら下限値と上限値との範
囲内にあるか否かを判別するようにしている。
(4)次に動作を説明する。ここで、全体制御回路1の
動作および違反バスの出力の動作は、実施例2の第1)
図fal、第1)図Q)lとほぼ同しであるので、第1
9図イベント発生素子のフローチャートを用いて説明す
る。
(5)第18図会体制御回路1が入力変化の時刻を遅延
演算回路3に入力し、出力から最大遅延値、最小遅延値
を受は取る。
(6)第18図会体制御回路1が探索の開始命令を一番
出力側のイベント発生素子6に送り、この命令をイベン
ト発生素子6が受は取る(第19図0)。
(7)開始命令の伝わったカウンタ6−1が+1、およ
び同期素子1が当該開始命令を保持する(第19図0)
。また、下限モード命令を全体制御回路1に伝え、下限
値を比較器に入力すると共に、全ての遅延計算素子5の
比較切替器5−4にも送り、入力選択信号がOのときは
最大値を出力する。
カウンタ=0でない場合(第19図oNOであって、バ
スの探索が終わっていない場合)、カウンタ6−1の入
力選択信号がスイッチ2と、第16図遅延計算素子5の
比較切替器5−4へ伝わり、入力をそれぞれ切り替える
(第19図0)。遅延計算素子5の比較切替器5−4の
出力が変化し、それが後段の比較切替器5−4に伝わっ
て行き、最後に全体制御回路1に伝わる(第19図@)
全体制御回路1は、最大遅延が下限値以下になる(バス
なし)かどうかの結果を、判断信号としてイベント発生
素子に返す(第19図O)。イベント発生素子のスイッ
チ1−1が判断信号によって、バスあり得る:上側 バス無   −下側 に切り替わる(第19図■)、全ての回路の動作が終わ
り、安定状態となり、同期素子1が保持していた開始命
令を出す。そして、バスがあり得る場合には([相]あ
り得る場合)、開始命令が同期素子1−1からスイッチ
1−1を通って同期素子2に入り、保持されると共に、
上限モード命令が全体制御回路1に伝わり、モード選択
信号が上限モードとなり全ての遅延計算素子5の比較切
替器54に伝わり、入力選択信号がOのときは最小値を
出力する(第19図[株]、[株])。比較切替器5−
4の出力が変化し、それが後段の比較切替器54に伝わ
って行き、最後に全体制御回路lに伝わる(第19図O
)。全体制御回路1は、最小遅延が上限値以上になる(
バスなし)かどうかの結果を、判断信号としてイベント
発生素子6に返す。
イベント発生素子6のスイッチ1−2が判断信号によっ
て バスあり:上側 バスなし:下側 に切り替わる(第19図@)。全ての回路の動作が終わ
り、安定状態となり、同期素子2が保持していた開始命
令を出す。バスがある場合、同期素子1の開始命令がス
イッチ1−2、スイッチ2を通って入力から前段に伝わ
り、第12図■の処理を行う (第19閏Oある、O,
O)。一方、バスがない場合、同期素子2の開始命令が
スイッチ12を通ってカウンタ6−1、同期素子lに伝
わり(第19図0ないしO)、第19図@以降を繰り返
し行う。
(8)一方、第19図@でカウンタ=Oの場合は、カウ
ンタの出力が0になり、スイッチ2はオフとなり、比較
切替器5−4は最大値出力状態となる。
同時にカウンタ6−1から終了命令が出力される(第1
9図0)。この出力が一番出力側のイベント発生素子6
からのものである場合(第19図[相]YESの場合)
、全体制御回路1に探索終了の信号(P−了命令)を伝
え、一連のバス探索処理を終わる。一方、出力が一番出
力側のイベント発生素子6からのものでない場合(第1
9図@NOの場合)、後段のイベント発生素子6の入力
に次のバス探索開始の信号(開始命令)を送る(第19
図@)。
(9)以上の手順によって、イベント発生素子6に設け
た同期素子1、同期素子2に開始命令を順次保持させて
、下限モード命令、上限モード命令を全体制御回路1に
伝えて下限値、上限値を比較器に入力すると共に、モー
ド選択信号を遅延計算素子5に伝えて最大値、最小値を
比較器に入力してその判断結果をもとにバス選択を進め
、イベント発生回路4の入力から全体制御回路lに開始
命令が伝わったときにバスが見つかったとしてそのバス
を読み出し、更にイベント発生回路4の入力から終了命
令を返し、他のバスを探すことを繰り返し行うことによ
り、下限値と上限値の範囲内のバスを全て探索すること
が可能となる。
〔実施例5〕 :これは、第20図および第21図に示
すように、遅延計算素子5の入力毎に異なった伝播遅延
(配線が異なることなどによる伝播遅延)をそれぞれ持
たせた実施例である。
(1)第20図遅延計算素子5は、入力毎に配線の長さ
などの違いによる伝播遅延を設けたものであって、各入
力から伝えられた遅延値にこれら伝播遅延を加算器で加
算し、比較切替器5−4に入力する。他は、〔実施例2
〕と同じである。第21図フローチャートを用いて要部
のみの動作を説明する。
(2)全体制御回路1が与えた入力変化時刻が、遅延計
算回路3を構成する遅延計算素子5の第20図加算器の
入力に伝わる(第21図■)。
(3)第20図加算器で、入力された遅延値と伝播遅延
(定数)をそれぞれ加え、比較切替器5−4の入力に入
れる(第21図0)。
(4)比較切替器5−4が入力の中で最大値を遅延計算
素子5の出力に出力する(第21図0)。
そして、この次段の第20図遅延計算素子5の加算器に
この出力が入力され、伝播遅延(定数)を加えることを
繰り返し行い(第21図+1))No、 @、@、0)
、その遅延値が全体制御回路lに伝えられたとき(第2
1図@YESのとき)、最大遅延値が求められたことと
なる。同様に、〔実施例2〕のようにして、しきい値を
こえる遅延値を持つバスを探索する。
以上のように、遅延計算素子50入力の配線長などによ
る伝播遅延を考慮して各入力から伝えられた遅延にこの
伝播遅延をそれぞれ加算して最大の遅延値、あるいは入
力選択信号で選択された入力から伝えられた遅延値にこ
の入力の伝播遅延を加算して出力側に伝えることにより
、遅延計算素子5の各入力の配線による遅延の異なりを
考慮した最大遅延値、更に、しきい値を越える遅延値を
もつバスを全て探索することが可能となる。
〔実施例6〕 :これは、第22図ないし第24図に示
すように、遅延計算素子5に異なった入力の立上り遅延
、立下り遅延をそれぞれ持たせた実施例である。
+1+  第22図遅延計算素子5は、上段の解析対象
の論理回路?二ついて、立上り遅延5〜8、立下り遅延
5−9を設け、これらに対応して比較切替器、加算器を
図示のように設けたものである。
(2)第23図会体制御回路1は、立下りモード/立下
りモード指定に対応して切替器を切り替え、いずれか一
方を必要に応して選択し、しきい値を比較器で比較し、
判断信号を生成する。以下、第24凹フローチヤートに
示す順序に従い、第22図、第23図構成の動作を説明
する。
(3)実施例1と同様にして、遅延計算素子5の出力に
立上り最大遅延値と、立下り遅延値が出力される(第2
4図■)。
(4)全体制御回路1の切替器を立上りモードに設定す
る(第24図0)。そして、イベント発生回路4の一番
出力側のイベント発生素子6の出力に列挙の開始命令を
送り、既述したように、しきい値を越えるバスを全て探
索する(第24図■、第1)図+alの■)。
(5)  同様に、全体制御回路1の切替器を立下りモ
ードに設定する(第24図[相]〕。そして、イベント
発生回路4の一番出力側のイベント発生素子6の出力に
列挙の開始命令を送り、既述したように、しきい値を越
えるバスを全て探索する(第24図[相]、第1)図(
8)の■)。
以上によって、遅延計算素子5内に立上り遅延5−8お
よび立下り遅延5−9を設けて入力にこれらのうちから
指定された立上り遅延/立下り遅延のいずれかを加算し
て出力することにより、立上り遅延、立下り遅延を考慮
した最大遅延値、更に、しきい値を越える遅延値をもつ
バスを全て探索することが可能となる。
〔発明の効果〕
以上説明したように、本発明によれば、組合せ型の論理
回路について直接実行可能な遅延計算回路3およびイベ
ント発生回路4に置き換え、最大遅延値(あるいは最小
遅延値)を求めたり、更に指定した条件を満たすなどの
遅延値を持つバスを探索する構成を採用しているため、
組合せ型の論理回路の遅延解析を高速に行うことができ
る。特に、近年の大規模論理シミニレータ専用マシンを
用いれば、従来のソフトウェアでは困難な程の大きい論
理回路も遅延解析を容易に行うことが可能となる。
【図面の簡単な説明】
第1図は原理構成図 第2図は本発明の1実施例構成図 第3図は本発明の遅延計算素子とイベント発生素子の変
換例 第4図は本発明の最大遅延値の計算例 第5図は本発明の全体構成図(実施例1)第6図、第7
図は本発明の動作説明フローチャート(実施例1) 第8図は本発明の遅延計算素子例(実施例2)第9図は
本発明のイベント発生素子例(実施例第10図は本発明
の全体構成図(実施例2)第1)図、第12図は本発明
の動作説明フローチャート(実施例2) 第13図は本発明の遅延計算素子例(実施例第14図は
本発明の全体構成図(実施例3)第15図は本発明の動
作説明フローチャート(実施例3) 第16図は本発明の遅延計算素子例(実施例第17図は
本発明のイベント発生素子例(実施例4) 第18図は本発明の全体構成図(実施例4)第19図は
本発明の動作説明フローチャート(実施例4) 第20図は本発明の遅延計算素子例(実施例第21図は
本発明の動作説明フローチャート(実施例5) 第22図は本発明の遅延計算素子例(実施例第23図は
本発明の全体構成図(実施例6)第24図は本発明の動
作説明フローチャート(実施例6) を示す。 図中、1:全体制御回路 1−1:比較器 1−2:Lきい値 2:遅延解析回路 3:遅延計算回路 4:イベント発生回路 5:遅延計算素子 5−1=比較器 5−2:加算器 5−3:伝播遅延 5−4:比較切替器 5−6=切替器 5−7:スイッチ 5−8:立上り遅延 5−9:立下り遅延 6:イベント発生回路 6−1:カウンタ 6−2:同期素子 ・爛 p 本発明の動作説明フローチャート(実施例1)第   
7   図 本発明の遅延計算素子例(実施例2) 第 図 本発明のイベント発生素子例(実施例2)第 図 本発明の全体構成図 (実施例2) 第 図 本発明の遅延計算素子例(実施例3) 第 図 本発明の全体構成図(実施例3) 第14図 本発明の遅延計算素子例(実施例4) 第 図 上限モード命令 下限モ ト品令 本発明のイベント発生素子例(実施例4)第 図 本発明の全体構成図(実施例4) 第 図 本発明の遅延計算素子例(実施例5) 第 図 本発明の遅延計算素子例(実施例6) 第 図 本発明の全体構成1)K(実施例6) 第 23 図

Claims (1)

  1. 【特許請求の範囲】 論理回路の遅延を解析する遅延解析方式において、 解析対象の論理回路の各論理ゲートについて、遅延値を
    伝播させる素子(遅延計算素子(5)という)に置き換
    えた遅延計算回路(3)と、 解析対象の論理回路の各論理ゲートについて、与えられ
    た条件を満たすバスを選択する素子(イベント発生素子
    (6)という)に置き換えたイベント発生回路(4)と
    、 上記遅延計算回路(3)およびイベント発生回路(4)
    を制御して解析対象の論理回路の遅延の解析制御を行う
    全体制御回路(1)とを備え、 この全体制御回路(1)が入力変化の時刻を上記遅延計
    算回路(3)の入力側に与えて出力側から遅延値を取り
    出したり、あるいは更に上記イベント発生回路(4)の
    出力側からバス探索の開始命令を入力し、当該イベント
    発生回路(4)のイベント発生素子(6)が随時入力選
    択信号を上記遅延計算回路(3)の対応する遅延計算素
    子(5)に入力してバスの遅延計算依頼することを繰り
    返し、条件を満たすバスを順次探索するように構成した
    ことを特徴とする遅延解析方式。
JP2232198A 1990-08-31 1990-08-31 遅延解析方式 Pending JPH04112271A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2232198A JPH04112271A (ja) 1990-08-31 1990-08-31 遅延解析方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2232198A JPH04112271A (ja) 1990-08-31 1990-08-31 遅延解析方式

Publications (1)

Publication Number Publication Date
JPH04112271A true JPH04112271A (ja) 1992-04-14

Family

ID=16935529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2232198A Pending JPH04112271A (ja) 1990-08-31 1990-08-31 遅延解析方式

Country Status (1)

Country Link
JP (1) JPH04112271A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0896016A (ja) * 1994-09-22 1996-04-12 Nec Corp 論理シミュレーション方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0896016A (ja) * 1994-09-22 1996-04-12 Nec Corp 論理シミュレーション方法

Similar Documents

Publication Publication Date Title
US5909451A (en) System and method for providing scan chain for digital electronic device having multiple clock domains
US5734917A (en) System for producing combination circuit to satisfy prescribed delay time by deleting selected path gate and allowing to perform the permissible function for initial circuit
JP3504088B2 (ja) 論理回路
CN114997087B (zh) 一种时钟树的优化方法、优化装置和相关设备
WO1999009497A1 (fr) Procede d'extraction de caracteristiques de synchronisation de circuits a transistors, support de stockage stockant une bibliotheque de caracteristiques de synchronisation, procede de conception de lsi et procede d'extraction par grille
US7131087B2 (en) Multi-cycle path analyzing method
US5506796A (en) Digital signal processing circuit selectively operable in either a normal or a pseudorandom noise generative mode
JPH04112271A (ja) 遅延解析方式
US5761487A (en) Sequential network optimization designing apparatus
JP3172617B2 (ja) 論理記述変換装置及び方法並びに論理合成方法
US20050120271A1 (en) False path detection program
US6098068A (en) Inter-module data management methodology for circuit synthesis
US5828872A (en) Implementation of high speed synchronous state machines with short setup and hold time signals
JP2734966B2 (ja) 順序回路の遅延最適化システム
US20020143511A1 (en) Method and computer program product for system design support
CN115250251A (zh) 片上网络仿真中的传输路径规划方法、装置、电子设备及计算机可读存储介质
CN113821075A (zh) 一种异步多比特信号跨时钟域处理方法及装置
US7170817B2 (en) Access of two synchronous busses with asynchronous clocks to a synchronous single port ram
JP3191183B2 (ja) スキャンテスト制御ゲート挿入方式
JP2714015B2 (ja) 論理回路合成装置
JPH10145350A (ja) インターコネクション回路
KR0157337B1 (ko) 디지탈신호 처리기의 멀티비트 가산기
JP2943709B2 (ja) 論理回路修正装置
Brzozowski et al. Ternary simulation
JPH0460768A (ja) データ処理装置