JPH0642253B2 - クリティカルパスの解析処理方式 - Google Patents
クリティカルパスの解析処理方式Info
- Publication number
- JPH0642253B2 JPH0642253B2 JP62252695A JP25269587A JPH0642253B2 JP H0642253 B2 JPH0642253 B2 JP H0642253B2 JP 62252695 A JP62252695 A JP 62252695A JP 25269587 A JP25269587 A JP 25269587A JP H0642253 B2 JPH0642253 B2 JP H0642253B2
- Authority
- JP
- Japan
- Prior art keywords
- pin
- delay
- critical
- gate
- stage
- 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
Links
Description
【発明の詳細な説明】 〔概 要〕 大規模ディジタル回路における遅延時間の解析処理方式
に関し、 クリティカルパルスの追跡およびクロックスキューチェ
ックの高速化のため必要な記憶容量の削減を目的とし、 各フリップフロップ又はゲート回路の端子ピン毎に積算
遅延時間値と前段フリップフロップ又はゲート回路の端
子ピン番号を格納するクリティカルディレイテーブルを
作成するクリティカルディレイテーブル作成手段と、次
に遅延時間計算すべき次段フリップフロップ又はゲート
回路の端子ピン番号とクリティカルパスを開始点までさ
かのぼった開始ピン番号を格納するイベントテーブルを
作成するイベントテーブル作成手段を備え、遅延時間計
算の開始点から最終点まで、フリップフロップ又はゲー
トの各段毎に、クリティカルディレイテーブル及びイベ
ントテーブルを、互いに相手テーブルを参照しつつ作成
して、遅延時間計算処理を実行するよう構成する。
に関し、 クリティカルパルスの追跡およびクロックスキューチェ
ックの高速化のため必要な記憶容量の削減を目的とし、 各フリップフロップ又はゲート回路の端子ピン毎に積算
遅延時間値と前段フリップフロップ又はゲート回路の端
子ピン番号を格納するクリティカルディレイテーブルを
作成するクリティカルディレイテーブル作成手段と、次
に遅延時間計算すべき次段フリップフロップ又はゲート
回路の端子ピン番号とクリティカルパスを開始点までさ
かのぼった開始ピン番号を格納するイベントテーブルを
作成するイベントテーブル作成手段を備え、遅延時間計
算の開始点から最終点まで、フリップフロップ又はゲー
トの各段毎に、クリティカルディレイテーブル及びイベ
ントテーブルを、互いに相手テーブルを参照しつつ作成
して、遅延時間計算処理を実行するよう構成する。
本発明はCAD(計算機緩用設計)に係わり、特に大規
模なディジタル回路における遅延時間の解析方式に関す
る。
模なディジタル回路における遅延時間の解析方式に関す
る。
大規模なディジタル回路の設計においては、論理シミュ
レーションによって論理の正しさを確認すると共に、フ
リップフロップ間の遅延時間を算出し所定の許容範囲に
あるかを検証することが行われる。大規模ディジタル回
路の遅延時間計算処理には大きな計算機処理時間を要す
るため、効率的な計算方式が要望される。
レーションによって論理の正しさを確認すると共に、フ
リップフロップ間の遅延時間を算出し所定の許容範囲に
あるかを検証することが行われる。大規模ディジタル回
路の遅延時間計算処理には大きな計算機処理時間を要す
るため、効率的な計算方式が要望される。
大規模なディジタル回路の遅延時間計算処理では、考え
られる全てのパス(経路)を計算するには膨大な計算機
処理時間を要するため、一番厳しいパス(通常最も遅延
時間の大きいパスであるが、最も遅延時間の小さいパス
の場合もある。以下、クリティカルパスと呼ぶ)の遅延
時間(以下、ディレイと呼ぶ)を計算する方式をとって
いる。
られる全てのパス(経路)を計算するには膨大な計算機
処理時間を要するため、一番厳しいパス(通常最も遅延
時間の大きいパスであるが、最も遅延時間の小さいパス
の場合もある。以下、クリティカルパスと呼ぶ)の遅延
時間(以下、ディレイと呼ぶ)を計算する方式をとって
いる。
第5図は従来の遅延時間計算処理方式を説明するための
図である。
図である。
図(a)は、遅延時間の計算処理の対象となるディジタル
回路の例である。図(a)において、A,B,C,H,I
はフリップフロップ回路(以下FFと略記する)を、
D,E,F,Gは途中のゲート回路を示す。
回路の例である。図(a)において、A,B,C,H,I
はフリップフロップ回路(以下FFと略記する)を、
D,E,F,Gは途中のゲート回路を示す。
また、a,b,c,m,nはFFのクロックピンを示
し、d,e,f,g,h,i,j,k,lはFF又はゲ
ートの入力ピンを示す。
し、d,e,f,g,h,i,j,k,lはFF又はゲ
ートの入力ピンを示す。
遅延時間計算処理は、FFのA,B,Cのクロックピン
a,b,cを出発点として、クリティカルパスによるデ
ィレイ(以下、クリティカルディレイと呼ぶ)計算を開
始し、FF−H,Iのデータ入力ピンk又はlに到達す
るまで計算処理する。本例では、クリティカルパスは最
もディレイの大きいパスとする。
a,b,cを出発点として、クリティカルパスによるデ
ィレイ(以下、クリティカルディレイと呼ぶ)計算を開
始し、FF−H,Iのデータ入力ピンk又はlに到達す
るまで計算処理する。本例では、クリティカルパスは最
もディレイの大きいパスとする。
計算処理は、出発点のFFから最終のFFまで、各ゲー
ト段ごとに次々とディレイ値を積算して積算ディレイ値
を計算し、複数入力のゲート段では、その各入力ピンま
での積算ディレイ値のうち最も大きい値を示すピンを通
る経路をクリティカルパスとして、この積算ディレイ値
を使用して次段ピンまでのディレイを加算したものが次
段ピンの積算クリティカルディレイ値である。このよう
にして、最終段FFの入力ピンまでの積算クリティカル
ディレイ値を計算する。第5図(a)に示したディジタル
回路に対する計算処理は、同図(b)に示すように、以下
に説明する手順で行われる。
ト段ごとに次々とディレイ値を積算して積算ディレイ値
を計算し、複数入力のゲート段では、その各入力ピンま
での積算ディレイ値のうち最も大きい値を示すピンを通
る経路をクリティカルパスとして、この積算ディレイ値
を使用して次段ピンまでのディレイを加算したものが次
段ピンの積算クリティカルディレイ値である。このよう
にして、最終段FFの入力ピンまでの積算クリティカル
ディレイ値を計算する。第5図(a)に示したディジタル
回路に対する計算処理は、同図(b)に示すように、以下
に説明する手順で行われる。
クロック入力端子CLK1からFF−Aのピンaまでのデ
ィレイtaを回路構成データによる経路長から計算す
る。
ィレイtaを回路構成データによる経路長から計算す
る。
同様にクロック入力端子CLK2からFF−Bのピンbま
でのディレイtbを計算する。
でのディレイtbを計算する。
同様にクロック入力端子CLK3からFF−Cのピンcま
でのディレイtcを計算する。
でのディレイtcを計算する。
FF−AにおけるディレイとFF−Aの出力ピンから
ゲートDの入力ピンdまでの経路長によるディレイを加
算して、ピンaからピンdまでのディレイを算出し、こ
れにtaを加えた値をピンdのディレイtdとして算出
する。
ゲートDの入力ピンdまでの経路長によるディレイを加
算して、ピンaからピンdまでのディレイを算出し、こ
れにtaを加えた値をピンdのディレイtdとして算出
する。
同様に、FF−BにおけるディレイとFF−Bの出力
ピンからゲートDの入力ピンeまでの経路長によるディ
レイに、tbを加算してピンeのディレイteを算出す
る。
ピンからゲートDの入力ピンeまでの経路長によるディ
レイに、tbを加算してピンeのディレイteを算出す
る。
同様に、ゲートEの入力ピンfのディレイtfを算出
する。
する。
同様に、ゲートEの入力ピンgのディレイtfを算出
する。
する。
ゲートDの入力ピンdとeのディレイtdとteを比
較する。td<teであれば、ピンeを通るパスをクリ
ティカルパスとする。
較する。td<teであれば、ピンeを通るパスをクリ
ティカルパスとする。
同様に、ゲートEの入力ピンfとgのディレイtfと
tgを比較し、tf<tgであればピンgを通るパスを
クリティカルパスとする。
tgを比較し、tf<tgであればピンgを通るパスを
クリティカルパスとする。
ゲートEにおけるディレイとゲートFの入力ピンhま
での経路長によるディレイに、クリティカルパスによる
ディレイtgを加えて、ゲートFの入力ピンhにおける
クリティカルパスを通るディレイの積算値:クリティカ
ル積算ディレイthを算出する。
での経路長によるディレイに、クリティカルパスによる
ディレイtgを加えて、ゲートFの入力ピンhにおける
クリティカルパスを通るディレイの積算値:クリティカ
ル積算ディレイthを算出する。
同様に、ゲート回路DにおけディレイとゲートGの入
力ピンiまでの経路長によるディレイに、クリティカル
パスによるディレイteを加えて、ゲートGの入力ピン
iのクリティカル積算ディレイtiを算出する。
力ピンiまでの経路長によるディレイに、クリティカル
パスによるディレイteを加えて、ゲートGの入力ピン
iのクリティカル積算ディレイtiを算出する。
同様に、ゲートGの入力ピンjのクリティカル積算デ
ィレイtjを算出する。
ィレイtjを算出する。
ゲートGの入力ピンiとjのディレイtiとtjを比
較する。ti<tjであれば、ピンjを通るパスをクリ
ティカルパスとする。
較する。ti<tjであれば、ピンjを通るパスをクリ
ティカルパスとする。
ゲートDにおけるディレイとゲートHの入力ピンkま
での経路長によるディレイに、クリティカルディレイt
eを加えて、ゲートHの入力ピンkにおけるクリティカ
ル積算ディレイtkを算出する。
での経路長によるディレイに、クリティカルディレイt
eを加えて、ゲートHの入力ピンkにおけるクリティカ
ル積算ディレイtkを算出する。
ゲートGにおけるディレイとゲートIの入力ピンlま
での経路長によるディレイに、クリティカルディレイt
jを加えて、ゲートIの入力ピンlにおけるクリティカ
ル積算ディレイtlを算出する。
での経路長によるディレイに、クリティカルディレイt
jを加えて、ゲートIの入力ピンlにおけるクリティカ
ル積算ディレイtlを算出する。
以上の計算の結果、最終段のFFであるHとIの入力ピ
ンk及びlにおけるクリティカル積算ディレイが得ら
れ、ディレイが設計基準に適合するかをチェックするこ
とできる。
ンk及びlにおけるクリティカル積算ディレイが得ら
れ、ディレイが設計基準に適合するかをチェックするこ
とできる。
このディレイ計算をしたディジタル回路の設計者は、ク
リティカルディレイ値を知りたいだけではなく、どのよ
うなルートであったかも知りたい場合がある。また、F
Fのピンにおけるディレイチェック(以下、FFチェッ
クと呼ぶ)を行うには、クリティカルパスの開始側及び
終了側のFF間のクロックスキューも関係する。
リティカルディレイ値を知りたいだけではなく、どのよ
うなルートであったかも知りたい場合がある。また、F
Fのピンにおけるディレイチェック(以下、FFチェッ
クと呼ぶ)を行うには、クリティカルパスの開始側及び
終了側のFF間のクロックスキューも関係する。
例えば、FF−Hのデータ入力ピンkに至るクリティカ
ルパスが破線で示すごとく、b→e→kであったとする
と、FF−Hにおけるディレイチェックは、データ入力
ピンkとクロックピンmの間で行われ、スキューはクロ
ックCLK1とCLK2の関係で決まる。即ち、 Tcd+Td+Tskew≦Tcm+τ を満足するかがチェックされる。
ルパスが破線で示すごとく、b→e→kであったとする
と、FF−Hにおけるディレイチェックは、データ入力
ピンkとクロックピンmの間で行われ、スキューはクロ
ックCLK1とCLK2の関係で決まる。即ち、 Tcd+Td+Tskew≦Tcm+τ を満足するかがチェックされる。
ここに、 Tcb:LSI端子からピンbまでのディレイ。
TCM:LSI端子からピンmまでのディレイ。
Td :ピンkまでのクリティカルディレイ値。
Tskew:CLK1とCLK2間のスキュー値。
τ:クロック周期。
例えば、FF−Iのデータ入力ピンlに至るクリティカ
ルパスが破線で示すごとく、c→g→h→j→lであっ
たとすると、FFチェックは、データ入力ピンlとクロ
ックピンnの間で行われ、同一クロックCLK3であってク
ロックスキューはない。
ルパスが破線で示すごとく、c→g→h→j→lであっ
たとすると、FFチェックは、データ入力ピンlとクロ
ックピンnの間で行われ、同一クロックCLK3であってク
ロックスキューはない。
従来、クリティカルパスの追跡を高速に行い、且つクロ
ックスキューのチェックを早急に求めるためには次の方
法が採られていた。
ックスキューのチェックを早急に求めるためには次の方
法が採られていた。
(1)通過する全部のピンについてクリティカル積算ディ
レイ値と共に、クリティカルパスの開始ピンの番号を、
記憶させておき、終了ピンまで伝達させることにより、
FFチェック時の開始クロックピンの情報をすばやく入
手する。
レイ値と共に、クリティカルパスの開始ピンの番号を、
記憶させておき、終了ピンまで伝達させることにより、
FFチェック時の開始クロックピンの情報をすばやく入
手する。
(2)クリティカルパス上の各ピンにおいて、クリティカ
ル積算ディレイ値と共に、前段のピン番号を記憶させて
おく。これにより、、再度ディレイ計算なしでクリティ
カルパスの追跡ができるようにする。
ル積算ディレイ値と共に、前段のピン番号を記憶させて
おく。これにより、、再度ディレイ計算なしでクリティ
カルパスの追跡ができるようにする。
(3)(1)と(2)の併用で、クリティカルパス上の各ピンに
おいて、クリティカル積算ディレイ値に加えて、前段の
ピン番号と開始ピン番号の両方を記憶させておく。
おいて、クリティカル積算ディレイ値に加えて、前段の
ピン番号と開始ピン番号の両方を記憶させておく。
上記従来のクロックピン情報入手の方法(1)〜(3)によれ
ば、次のような問題点があった。
ば、次のような問題点があった。
(1)クリティカルディレイ算出後、クリティカルパスを
辿るには、再度ディレイ計算が必要となる。
辿るには、再度ディレイ計算が必要となる。
(2)クリティカルパスは終了ピンから逆追跡すれば簡単
に見つかるが、チェック時に開始ピンを見つけるとき
も、常に逆追跡をする必要がある。
に見つかるが、チェック時に開始ピンを見つけるとき
も、常に逆追跡をする必要がある。
(3)大規模回路では全体回路のピン数が数万〜百万にも
なり、前段ピン番号と開始ピン番号の両方を記憶させる
ことは記憶容量的に問題がある。
なり、前段ピン番号と開始ピン番号の両方を記憶させる
ことは記憶容量的に問題がある。
本発明は、このような従来の問題点を解消したクリティ
カルパスの解析処理方式を提供しようとするものであ
る。
カルパスの解析処理方式を提供しようとするものであ
る。
第1図は、本発明のクリティカルパスの解析処理方式の
原理ブロック図を示す。
原理ブロック図を示す。
図において、1はクリティカルディレイテーブルであ
り、各ピン毎に積算遅延時間値11と前段のピン番号12を
格納する。
り、各ピン毎に積算遅延時間値11と前段のピン番号12を
格納する。
2はイベントテーブルであり、次に遅延時間値計算すべ
き次段ピン番号21とクリティカルパスを計算開始点まで
さかのぼった開始ピン番号22を格納する。
き次段ピン番号21とクリティカルパスを計算開始点まで
さかのぼった開始ピン番号22を格納する。
3はクリティカルディレイテーブル作成手段であり、イ
ベントテーブル2を参照しつつ各段のフリップフロップ
又はゲートのピンごとにクリティカルディレイテーブル
を作成する。
ベントテーブル2を参照しつつ各段のフリップフロップ
又はゲートのピンごとにクリティカルディレイテーブル
を作成する。
4はイベントテーブル作成手段であり、クリティカルデ
ィレイテーブル1を参照しつつ各段ごとにイベントテー
ブル2を作成する。
ィレイテーブル1を参照しつつ各段ごとにイベントテー
ブル2を作成する。
イベントテーブル2は各FF段毎に備え、イベントテー
ブル2には次に計算すべき次段ピン番号21を記憶し、遅
延時間値計算を進行させる。このイベントテーブル2
に、次に計算すべきピン番号21と共に開始ピン番号22も
記憶させる。
ブル2には次に計算すべき次段ピン番号21を記憶し、遅
延時間値計算を進行させる。このイベントテーブル2
に、次に計算すべきピン番号21と共に開始ピン番号22も
記憶させる。
各ピン毎の積算遅延時間値の計算は、イベントテーブル
2の指示する順序で行われ、計算した積算遅延時間値11
は、前段ピン番号12と共にクリティカルディレイテーブ
ル1に格納する。イベントテーブル2は各ゲート段毎に
作成され、二つのゲート段分準備しておけばよく、処理
の済んだゲート段のテーブルの領域は、新しいゲート段
のテーブルの領域として使用することができる。
2の指示する順序で行われ、計算した積算遅延時間値11
は、前段ピン番号12と共にクリティカルディレイテーブ
ル1に格納する。イベントテーブル2は各ゲート段毎に
作成され、二つのゲート段分準備しておけばよく、処理
の済んだゲート段のテーブルの領域は、新しいゲート段
のテーブルの領域として使用することができる。
計算が次々と伝達されて、最終ピンに到達したところ
で、イベントテーブル2を開始ピンテーブルとして保存
する。別途格納してある開始ピンへのクロックと最終ピ
ンへのクロックの情報により、FFチェックのためのク
ロックスキューを求めることができる。
で、イベントテーブル2を開始ピンテーブルとして保存
する。別途格納してある開始ピンへのクロックと最終ピ
ンへのクロックの情報により、FFチェックのためのク
ロックスキューを求めることができる。
以上のように、開始ピン情報は各ピン毎に持たせる必要
なく、二つのFF段のピン分だけで済むから所要記憶容
量は大幅に縮小される。
なく、二つのFF段のピン分だけで済むから所要記憶容
量は大幅に縮小される。
例えば、ピン数が50万ピンであるとし、ゲート段数が20
段であるとし、開始ピン1本当り8バイトを要するとす
ると、開始ピン情報に要する記憶容量は、クリティカル
ディレイテーブルに設ける場合は、50万×8バイト=40
0万バイトとなり、イベントテーブルに記憶させる場合
は、1ゲート段分のイベントテーブル2の予想量は50万
ピン/20段=2.5万であるから 約2.5万×2×8バイト=40万バイトとなる。
段であるとし、開始ピン1本当り8バイトを要するとす
ると、開始ピン情報に要する記憶容量は、クリティカル
ディレイテーブルに設ける場合は、50万×8バイト=40
0万バイトとなり、イベントテーブルに記憶させる場合
は、1ゲート段分のイベントテーブル2の予想量は50万
ピン/20段=2.5万であるから 約2.5万×2×8バイト=40万バイトとなる。
以下第2図乃至第4図に示す実施例により、本発明をさ
らに具体的に説明する。
らに具体的に説明する。
第2図は、本発明の一実施例の処理装置における主記憶
上のメモリ使用状況を示す図である。
上のメモリ使用状況を示す図である。
図において、20はイベントテーブル領域であり、2ゲー
ト段分のイベントテーブルを格納する大きさを持つ。
ト段分のイベントテーブルを格納する大きさを持つ。
10はクリティカルディレイテーブル領域であり、解析処
理対象回路のピン数分のクリティカルテーブルを格納す
る大きさを必要とする。
理対象回路のピン数分のクリティカルテーブルを格納す
る大きさを必要とする。
30はクリティカルディレイテーブル作成プログラム領域
であり、積算ディレイルーチンその他を格納する。
であり、積算ディレイルーチンその他を格納する。
40はイベントテーブル作成プログラム領域であり、次段
ピン検出ルーチン、ディレイ比較ルーチン、開始ピン検
出ルーチンを格納する。
ピン検出ルーチン、ディレイ比較ルーチン、開始ピン検
出ルーチンを格納する。
50は回路構成データ領域であり、設計されたディジタル
回路の構成を示す各種データを格納する。
回路の構成を示す各種データを格納する。
60は初期データ領域であり、開始ピン番号、最終ピン番
号、クリティカルの定義(ディレイ最大か最小か)等の
初期条件を格納する。
号、クリティカルの定義(ディレイ最大か最小か)等の
初期条件を格納する。
第4図は、本発明の一実施例による処理を示すフローチ
ャートである。
ャートである。
第3図は、本発明の一実施例による処理例を示す図であ
る。
る。
第3図において、A〜I,a〜l及びCLK1〜CLK3は、第
5図と同じく、それぞれFF又はゲート、ピン及びクロ
ック端子を示す。
5図と同じく、それぞれFF又はゲート、ピン及びクロ
ック端子を示す。
テーブル(2)−1は、第1ゲート段のイベントテーブル
を示し、テーブル(2)−2は第2ゲート段のイベントテ
ーブルを示す。テーブル(1)−1は、第1ゲート段に属
するFFの各ピン毎のクリティカルディレイテーブルを
示し、テーブル(1)−2は第2ゲート段に属するゲート
の各ピン毎のクリティカルディレイテーブルを示す。テ
ーブル(3)は、最終ゲート段のイベントテーブルであ
り、これが開始ピンテーブルとなったことを示す。
を示し、テーブル(2)−2は第2ゲート段のイベントテ
ーブルを示す。テーブル(1)−1は、第1ゲート段に属
するFFの各ピン毎のクリティカルディレイテーブルを
示し、テーブル(1)−2は第2ゲート段に属するゲート
の各ピン毎のクリティカルディレイテーブルを示す。テ
ーブル(3)は、最終ゲート段のイベントテーブルであ
り、これが開始ピンテーブルとなったことを示す。
以下、第4図のフローチャートの各ステップに従って、
第2図および第3図を参照して本実施例による処理の流
れを説明する。
第2図および第3図を参照して本実施例による処理の流
れを説明する。
イベントテーブル作成プログラムは、データ領域に格
納してある初期条件データ中の開始ピン情報を読み出
し、回路構成データを参照してテーブル(2)−0を作成
し、イベントテーブル領域に格納する。これには、次段
ピン及び開始ピン情報として共にa,b,cが記載され
る。テーブル(2)−0の作成を終わればクリティカルデ
ィレイテーブル作成プログラムに制御を渡す。
納してある初期条件データ中の開始ピン情報を読み出
し、回路構成データを参照してテーブル(2)−0を作成
し、イベントテーブル領域に格納する。これには、次段
ピン及び開始ピン情報として共にa,b,cが記載され
る。テーブル(2)−0の作成を終わればクリティカルデ
ィレイテーブル作成プログラムに制御を渡す。
クリティカルディレイテーブル作成プログラムは、テ
ーブル(2)−0に従って、ピンa,b,cの積算クリテ
ィカルディレイ値ta,tb,tcの計算を行い、前段ピン番号
も記載してテーブル(1)−1を作成し、クリティカルデ
ィレイテーブル領域に格納する。積算クリティカルディ
レイ値ta,tb,tcはそれぞれクロック端子CLK1,CLK2,CLK3
からピンa,b,cまでのディレイ値であり、前段ピン番号
はa,b,cである。テーブル(1)−1の作成を終われば制御
をイベントテーブル作成プログラムに渡す。
ーブル(2)−0に従って、ピンa,b,cの積算クリテ
ィカルディレイ値ta,tb,tcの計算を行い、前段ピン番号
も記載してテーブル(1)−1を作成し、クリティカルデ
ィレイテーブル領域に格納する。積算クリティカルディ
レイ値ta,tb,tcはそれぞれクロック端子CLK1,CLK2,CLK3
からピンa,b,cまでのディレイ値であり、前段ピン番号
はa,b,cである。テーブル(1)−1の作成を終われば制御
をイベントテーブル作成プログラムに渡す。
イベントテーブル作成プログラムは回路構成データか
ら、次に計算すべき次段ピンdとその開始ピンa、次段
ピンfとその開始ピンa、同様にeとb、gとcを記載
したテーブル(2)−1を作成し、イベントテーブル領域
に格納する。
ら、次に計算すべき次段ピンdとその開始ピンa、次段
ピンfとその開始ピンa、同様にeとb、gとcを記載
したテーブル(2)−1を作成し、イベントテーブル領域
に格納する。
クリティカルディレイテーブル作成プログラムは、テ
ーブル(2)−1に従って、ピンaからピンd、ピンaか
らピンf、ピンbからピンe、ピンcからピンgまでの
ディレイ値を計算し、それぞれテーブル(1)−1のta,t
b,tcを加算した値ta,te,tf,tgを積算クリティカルディ
レイ値としてテーーブル(1)−2を作成しクリティカル
ディレイテーブル領域に格納する。
ーブル(2)−1に従って、ピンaからピンd、ピンaか
らピンf、ピンbからピンe、ピンcからピンgまでの
ディレイ値を計算し、それぞれテーブル(1)−1のta,t
b,tcを加算した値ta,te,tf,tgを積算クリティカルディ
レイ値としてテーーブル(1)−2を作成しクリティカル
ディレイテーブル領域に格納する。
イベントテーブル作成プログラムは、回路構成データ
を読み次に計算すべき次段ピンをk,i,hとする。次い
で、初期データ領域からクリティカルの方向を読み、デ
ィレイの大きい側であることを認識し、ピンdとeの積
算クリティカルディレイ値をテーブル(1)−2から読ん
で比較し、td<teであったからピンeを通るパスをピン
kへのクリティカルパスとして開始ピンをbとし、同様
にtf<tgであったからピンgを通るパスをピンhへのク
リティカルパスとして開始ピンをcとする。次段ピン
k,i,hと開始ピンb,b,cとしてテーブル(2)−
2を作成し、イベントテーブル領域のテーブル(2)−0
の格納されていた場所に格納する。
を読み次に計算すべき次段ピンをk,i,hとする。次い
で、初期データ領域からクリティカルの方向を読み、デ
ィレイの大きい側であることを認識し、ピンdとeの積
算クリティカルディレイ値をテーブル(1)−2から読ん
で比較し、td<teであったからピンeを通るパスをピン
kへのクリティカルパスとして開始ピンをbとし、同様
にtf<tgであったからピンgを通るパスをピンhへのク
リティカルパスとして開始ピンをcとする。次段ピン
k,i,hと開始ピンb,b,cとしてテーブル(2)−
2を作成し、イベントテーブル領域のテーブル(2)−0
の格納されていた場所に格納する。
クリティカルディレイテーブル作成プログラムは、テ
ーブル(2)−2に従ってピンhのディレイ計算を行い、
テーブル(1)−3を作る。ピンgを通るパスがクリティ
カルであるから、ピンgからピンhまでのディレイ値を
計算しこれにtgを加えた値を積算クリティカルディレイ
値thとし、前段ピン番号gを付けてテーブル(1)−3を
作り、クリティカルディレイテーブル領域に格納する。
ーブル(2)−2に従ってピンhのディレイ計算を行い、
テーブル(1)−3を作る。ピンgを通るパスがクリティ
カルであるから、ピンgからピンhまでのディレイ値を
計算しこれにtgを加えた値を積算クリティカルディレイ
値thとし、前段ピン番号gを付けてテーブル(1)−3を
作り、クリティカルディレイテーブル領域に格納する。
イベントテーブル作成プログラムは、テーブル(1)−
3の結果からピンjに関するテーブル(2)−3を作り、
イベントテーブル領域のテーブル(2)−1の格納されて
いた場所に格納する。
3の結果からピンjに関するテーブル(2)−3を作り、
イベントテーブル領域のテーブル(2)−1の格納されて
いた場所に格納する。
クリティカルディレイテーブル作成プログラムは、ピ
ンiおよびピンjについてディレイ計算し、テーブル
(1)−4を作りクリティカルディレイテーブル領域に格
納する。
ンiおよびピンjについてディレイ計算し、テーブル
(1)−4を作りクリティカルディレイテーブル領域に格
納する。
イベントテーブル作成プログラムは、ピンlについて
のイベントテーブル(2)−4を作る。そのためには、テ
ーブル(1)−4を読み、ピンiとピンjの積算クリティ
カルディレイ値を比較し、ti<tjであったから、ピンl
へのクリティカルパスはピンjを通るパスであることが
判り、開始ピン番号としてcを記載する。作成したテー
ブル(2)−4はイベントテーブル領域のテーブル(2)−2
のあった場所に格納する。
のイベントテーブル(2)−4を作る。そのためには、テ
ーブル(1)−4を読み、ピンiとピンjの積算クリティ
カルディレイ値を比較し、ti<tjであったから、ピンl
へのクリティカルパスはピンjを通るパスであることが
判り、開始ピン番号としてcを記載する。作成したテー
ブル(2)−4はイベントテーブル領域のテーブル(2)−2
のあった場所に格納する。
クリティカルディレイテーブル作成プログラムは、ピ
ンkについてディレイ計算を行いテーブル(1)−5を作
る。即ち、テーブル(2)−2からクリティカルパスはb
→e→kであることが判るから、ピンeからピンkまで
のディレイを計算しteを加算してtkを算出し、前段ピン
番号eを付加する。次いで、ピンlについてディレイ計
算し、テーブル(1)−5を作る。即ち、クリティカルパ
スはピンjを通るパスであるから、ピンjからピンlへ
のディレイを計算し、これにtjを加算して積算ディレ
イ値tlとし、前段ピン番号jを付加する。テーブル
(1)−5が、求める最終段のピンkおよびlの積算クリ
ティカルディレイ値tkおよびtlである。作成したテ
ーブルはクリティカルディレイテーブル領域に格納す
る。
ンkについてディレイ計算を行いテーブル(1)−5を作
る。即ち、テーブル(2)−2からクリティカルパスはb
→e→kであることが判るから、ピンeからピンkまで
のディレイを計算しteを加算してtkを算出し、前段ピン
番号eを付加する。次いで、ピンlについてディレイ計
算し、テーブル(1)−5を作る。即ち、クリティカルパ
スはピンjを通るパスであるから、ピンjからピンlへ
のディレイを計算し、これにtjを加算して積算ディレ
イ値tlとし、前段ピン番号jを付加する。テーブル
(1)−5が、求める最終段のピンkおよびlの積算クリ
ティカルディレイ値tkおよびtlである。作成したテ
ーブルはクリティカルディレイテーブル領域に格納す
る。
イベントテーブル作成プログラムは、テーブル(2)−
2とテーブル(2)−4から最終ピンkとピンlの開始ピ
ン情報b,cを抜き出してテーブル(3)としてイベント
テーブル領域に保存する。テーブル(3)からクロックス
キューチェックに必要な開始ピンを知ることができる。
2とテーブル(2)−4から最終ピンkとピンlの開始ピ
ン情報b,cを抜き出してテーブル(3)としてイベント
テーブル領域に保存する。テーブル(3)からクロックス
キューチェックに必要な開始ピンを知ることができる。
以上説明のように本発明によれば、大規模ディジタル回
路のディレイ解析において、所要記憶容量が少なくて、
クリティカルパスの追跡およびクロックスキューのチェ
ックを高速に行うことができ、データ処理効率の向上に
寄与する効果は大である。
路のディレイ解析において、所要記憶容量が少なくて、
クリティカルパスの追跡およびクロックスキューのチェ
ックを高速に行うことができ、データ処理効率の向上に
寄与する効果は大である。
第1図は本発明の原理ブロック図、 第2図は本発明の一実施例におけるメモリ使用状況を示
す図、 第4図は本発明の一実施例による処理を示すフローチャ
ート、 第3図は本発明の一実施例による処理例を示す図、 第5図は従来例による処理例を示す図である。 図面において、 1はクリティカルディレイテーブル、 2はイベントテーブル、 3はクリティカルディレイテーブル作成手段、 4はイベントテーブル作成手段、 10はクリティカルディレイテーブル領域、 11は積算遅延時間値、12は前段ピン番号、 20はイベントテーブル領域、 21は次段ピン番号、22は開始ピン番号、 30はクリティカルディレイテーブル作成プログラム領
域、 40はイベントテーブル作成プログラム領域、 50は回路構成データ領域、60は初期データ領域、 をそれぞれ示す。
す図、 第4図は本発明の一実施例による処理を示すフローチャ
ート、 第3図は本発明の一実施例による処理例を示す図、 第5図は従来例による処理例を示す図である。 図面において、 1はクリティカルディレイテーブル、 2はイベントテーブル、 3はクリティカルディレイテーブル作成手段、 4はイベントテーブル作成手段、 10はクリティカルディレイテーブル領域、 11は積算遅延時間値、12は前段ピン番号、 20はイベントテーブル領域、 21は次段ピン番号、22は開始ピン番号、 30はクリティカルディレイテーブル作成プログラム領
域、 40はイベントテーブル作成プログラム領域、 50は回路構成データ領域、60は初期データ領域、 をそれぞれ示す。
Claims (1)
- 【請求項1】大規模ディジタル回路における遅延時間の
解析処理方式であって、 各フリップフロップ又はゲート回路の端子ピン毎に積算
遅延時間値(11)と前段フリップフロップ又はゲート回路
の端子ピン番号(12)を格納するクリティカルディレイテ
ーブル(1)を作成するクリティカルディレイテーブル作
成手段(3)と、 次に遅延時間計算すべき次段フリップフロップ又はゲー
ト回路の端子ピン番号(21)とクリティカルパスを開始点
までさかのぼった開始ピン番号(22)を格納するイベント
テーブル(2)を作成するイベントテーブル作成手段(4)を
備え、 遅延時間計算の開始点から最終点まで、フリップフロッ
プ又はゲートの各段毎に、クリティカルディレイテーブ
ル(1)及びイベントテーブル(2)を、互いに相手テーブル
を参照しつつ作成して、遅延時間計算処理を実行するよ
う構成したことを特徴とするクリティカルパスの解析処
理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62252695A JPH0642253B2 (ja) | 1987-10-07 | 1987-10-07 | クリティカルパスの解析処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62252695A JPH0642253B2 (ja) | 1987-10-07 | 1987-10-07 | クリティカルパスの解析処理方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0195365A JPH0195365A (ja) | 1989-04-13 |
| JPH0642253B2 true JPH0642253B2 (ja) | 1994-06-01 |
Family
ID=17240963
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62252695A Expired - Lifetime JPH0642253B2 (ja) | 1987-10-07 | 1987-10-07 | クリティカルパスの解析処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0642253B2 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2666989B2 (ja) * | 1988-11-14 | 1997-10-22 | 株式会社東芝 | 論理回路の遅延時間解析装置 |
| JP2785708B2 (ja) * | 1994-09-22 | 1998-08-13 | 日本電気株式会社 | 論理シミュレーション方法 |
| CN112241613B (zh) * | 2019-07-19 | 2023-12-29 | 瑞昱半导体股份有限公司 | 检测电路的引脚关联性的方法及其计算机处理系统 |
-
1987
- 1987-10-07 JP JP62252695A patent/JPH0642253B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0195365A (ja) | 1989-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6305001B1 (en) | Clock distribution network planning and method therefor | |
| US5751596A (en) | Automated system and method for identifying critical timing paths in integrated circuit layouts for use with automated circuit layout system | |
| JP2000268080A (ja) | 静的・動的タイミング検証方法及び記憶媒体 | |
| Agrawal et al. | A hardware logic simulation system | |
| CN117907812B (zh) | 电路检测方法及装置、电子设备、存储介质、程序产品 | |
| WO2004070634A1 (en) | Method of estimating path delays in an ic | |
| US7073153B2 (en) | Route searching method and storage medium thereof | |
| JPH0642253B2 (ja) | クリティカルパスの解析処理方式 | |
| US20030018462A1 (en) | Multi-clock system simulation | |
| Oh et al. | Efficient logic-level timing analysis using constraint-guided critical path search | |
| JP2853649B2 (ja) | 論理シミュレーション用モデルの作成方法 | |
| US20070266348A1 (en) | Circuit conjunctive normal form generating method, circuit conjunctive normal form generating device, hazard check method and hazard check device | |
| JP2002259488A (ja) | クロックスキュー検証方法 | |
| US7010765B2 (en) | Method for identifying removable inverters in an IC design | |
| JPH06232735A (ja) | 同期ディジタル電子回路の設計方法 | |
| Auletta et al. | A comparison of synchronous and asynchronous FSMD designs | |
| JP2567985B2 (ja) | ディジタル回路のパス自動選択方法及びディジタル回路のパス自動選択装置 | |
| JP2781081B2 (ja) | 並列演算機構による論理演算方法 | |
| US10133835B1 (en) | System and method for computationally optimized characterization of complex logic cells | |
| JPH08153129A (ja) | 再利用容易化装置 | |
| Kang et al. | Accurate logic simulation by overcoming the unknown value propagation problem | |
| JP2996153B2 (ja) | Asic検証方法 | |
| Weih et al. | Verification of speed-independent data-path circuits | |
| JP3191183B2 (ja) | スキャンテスト制御ゲート挿入方式 | |
| CN116976255A (zh) | 芯片的模块时序处理方法、装置、设备及存储介质 |