JPH1097565A - 集積回路設計用の設計シェルの生成及び使用方法 - Google Patents

集積回路設計用の設計シェルの生成及び使用方法

Info

Publication number
JPH1097565A
JPH1097565A JP9131630A JP13163097A JPH1097565A JP H1097565 A JPH1097565 A JP H1097565A JP 9131630 A JP9131630 A JP 9131630A JP 13163097 A JP13163097 A JP 13163097A JP H1097565 A JPH1097565 A JP H1097565A
Authority
JP
Japan
Prior art keywords
block
circuit information
shell
blocks
cell
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
JP9131630A
Other languages
English (en)
Other versions
JP4405599B2 (ja
Inventor
Dan Kochpatcharin
ダン・コッホパットチエアリン
Christian Joly
クリスチャン・ジョリー
Zarir B Sarkari
ザリル・ビィ・サーカリ
Allen Wu
アレン・ウー
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.)
LSI Corp
Original Assignee
LSI Logic 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 LSI Logic Corp filed Critical LSI Logic Corp
Publication of JPH1097565A publication Critical patent/JPH1097565A/ja
Application granted granted Critical
Publication of JP4405599B2 publication Critical patent/JP4405599B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

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)【要約】 【課題】 IC設計の機能ブロックからの重要情報を保
持するためのシェルの生成及び使用方法を提供するこ
と。 【解決手段】 内的に関連した複数の機能ブロックから
なるIC設計の機能ブロックを表すシェルを生成する。
重要情報をシェルに保持して、そのシェルによって表さ
れるブロックに接続された他のブロックの静的特性を解
析する際にもその解析が正確に行われるようにする。 【効果】 IC設計の機能ブロックの情報を記憶するた
めの必要メモリ量が低減され、ランタイムも減少するよ
うにしたものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、広義には、集積回
路(IC)用の回路設計を検査する方法に関し、詳しく
は、IC設計の規則チェックプロセスでIC設計の機能
ブロックを表すための設計シェルを生成し、使用する方
法に関する。
【0002】
【従来の技術】コンピュータチップのIC設計は、通
常、各ブロックが設計の一部に対応するいくつかの内的
に関連した機能ブロックに分割される。IC設計の規則
チェック段階では、適正な設計慣行が守られているかど
うかを確認するために、各機能ブロックが設計規則チェ
ックプロセスを経る。このプロセスでは、各ブロック内
の回路が設計規則に関してチェックされる。また、回路
は、内的に関連したブロックの回路に関しても、それら
のブロックが設計規則に合致しているかどうかを確認す
るのに必要な一定の程度において、チェックされる。こ
のプロセスがある階層レベルにおける一群の内的に関連
したブロックについて終了すると、それらのブロックは
1つ以上のブロックにまとめられる。この比較的小さい
内的に関連したブロックをチェックしてより大きい内的
に関連したブロックを形成するプロセスを、そのチップ
のIC設計に対応する1つの包括的ブロックが得られる
まで繰り返す。
【0003】
【発明が解決しようとする課題】このような従来技術の
方法は、あるブロックが規則チェックプロセスで処理さ
れるとき、そのブロックを規則チェックするためには、
関連したブロックからの全ての回路情報を利用可能にし
なければならないという問題がある。その結果、このプ
ロセスには、それらの関連した全てのブロックからの全
ての情報を記憶するための大きなコンピュータメモリ量
と、全てのブロックからの全てのデータを処理するため
の非常に高速のコンピュータ(あるいは長いランタイ
ム)が必要である。
【0004】従って、本発明の目的は、IC設計の機能
ブロックからの重要情報を保持するためのシェルの生成
及び使用方法を提供することである。そこでは、シェル
は他の接続されたブロックの規則チェックプロセスにお
ける機能ブロックを表す。
【0005】本発明のもう一つの目的は、生成されたシ
ェルに関連した他のブロックの静的規則チェックプロセ
スにおいて、そのチェックプロセスが有効であるように
したシェルの生成及び使用方法を提供することにある。
【0006】本発明のもう一つの目的は、機能ブロック
を処理するために必要なメモリ量が最小限で済むように
したIC設計の機能ブロックを表すシェルの生成及び使
用方法を提供することにある。
【0007】本発明のもう一つの目的は、IC設計の全
てのブロックを規則チェックするのにコンピュータラン
タイムがより短くなるようにしたIC設計の機能ブロッ
クを表すシェルの生成及び使用方法を提供することにあ
る。
【0008】
【課題を解決するための手段】簡単に言うと、本発明の
一実施態様は、IC設計の機能ブロックを表すシェルの
生成及び使用方法であって、ブロックによって現在表さ
れているブロックに関連した他のブロックの静的特性を
分析する時、その分析が正確に保たれるよう、合成した
ゲートレベルブロックからの重要情報をシェルに保持す
るようにしたものである。
【0009】階層レベルにおいては、本発明は、IC設
計の機能ブロックの情報を記憶するのに必要なメモリ量
が小さくて済み、かつランタイムが短くなるようにした
IC設計の機能ブロックを分析する方法である。
【0010】本発明の長所は、IC設計の機能ブロック
からの重要情報を保持するためのシェルの生成及び使用
方法において、シェルが他の関連したブロックの規則チ
ェックプロセスにおいて機能ブロックを表すようになっ
ていることにある。
【0011】本発明のもう一つの長所は、シェルの生成
及び使用方法において、生成されたシェルに関連した他
のブロックの静的規則チェックプロセスにおいてもその
チェックプロセスが有効であることである。
【0012】本発明のもう一つの長所は、IC設計の機
能ブロックを表すシェルの生成及び使用方法において、
規則チェックプロセスで機能ブロックを処理するのに必
要なメモリ量が最小限で済むことである。
【0013】本発明のもう一つの長所は、IC設計の基
本ブロックを表すシェルの生成及び使用方法において、
コンピュータランタイムが最小限で済むことである。
【0014】本発明の上記及びその他の目的並びに長所
は、当業者ならば、以下の添付図面に示す本発明の実施
例についての詳細な説明より自明となろう。
【0015】
【発明の実施の形態】ブロックを表すシェルには、内的
に関連した他のブロックの有効な規則チェックに対応す
るのに必要な全ての回路情報が入っていなければならな
い。
【0016】詳しく言うと、ブロックのシェルは、次の
情報を正確に与えるものでなければならない。入出力
網、ファンイン及びファンアウト情報、関連した2つの
ブロック間のピン・ツー・ピン接続、入出力セル、及び
パス情報。
【0017】静的規則チェックにおいては、指定された
パス、ネット、ピン、及びセル間の連結性がトレースさ
れる。そのトレースによって得られた情報を一連の規則
と対照して、規則違反があればフラグを立てる。連結性
をトレースするためには、設計規則チェッカーは、全て
の関連したブロックの入出力パス及びそれらの各ブロッ
クを通るパスの接続に関する情報が必要である。
【0018】ある機能ブロックに関するシェルの生成に
おける総体的な考え方は、ブロックの入力パスからブロ
ック中の記憶素子(存在する場合)まで、及び逆にブロ
ックの出力パスからブロック中の記憶素子までの全ての
回路情報を保持するということである。ブロック中に記
憶素子がない場合は、そのブロックの全ての回路情報が
シェルに保持される。なお、入力パス及び出力パスはそ
れぞれ入力ポート及び出力ポートと呼ばれる。
【0019】シェルに保持される回路情報を例示説明す
るために、図1〜5にいくつかのモデルのシナリオが図
示してある。図1において、ブロック300は接続ライ
ン303を介してもう一つのブロック302に接続され
ている。ブロック300は、「クラウド」306に接続
された記憶素子304(フリップフロップ)を含んでい
る。クラウドは記憶素子を持たない一群のセルを表す。
クラウド306は、ブロック302のクラウド308の
2本の入力パスに変換される出力パスを与え、クラウド
308は記憶素子310に接続されている。図1に示す
全ての要素、すなわち、セル304及び310、クラウ
ド306及び308は、以下に説明する本発明のシェル
生成プロセスによってシェルに保持される。設計規則チ
ェッカーは2つのフリップフロップ間の回路を解析しな
ければならないので、これらの2つのフリップフロップ
間の情報は全て保持される。
【0020】図2は、2つの入力パスを有するクラウド
314及び出力パスを有するクラウド316を含む完全
なブロックを示す。このブロックの全ての回路情報は、
このブロックのパスには記憶素子がないので、シェルに
保持される。
【0021】図3を参照すると、この図に示すブロック
318は、4つのフリップフロップ320、322、3
24、及び326と、メモリセル328を含んでいる。
本発明によれば、これらの4つのフリップフロップはシ
ェルに保持されるが、メモリセル328は保持されな
い。ブロックに対して直接接続された入出力(書込みパ
ルスを入力するためのポートのような)を有するメモリ
セルの場合は、それらのメモリセルを保存しなければな
らない。
【0022】図4は、フリップフロップ332、33
4、4つのNANDゲート336、338、340、3
42、及びクラウド344を含むブロック330を示
す。この場合は、内部フリップフロップが、ゲート33
6及び338の場合のように、1つ以上のゲートを介し
てブロック境界を横切って接続されており、これらのゲ
ートは保存しなければならない。
【0023】図5においては、ブロック337はセット
/リセット線339、クロック線341、4つのインバ
ータ343、345、346、348、2つのフリップ
フロップ350、352、及びクラウド354を含んで
いる。一般に、クロック線及びセット/リセット線はそ
っくりそのまま保存される。この場合、クロック分配論
理回路及びセット/リセット分配機構上の少なくとも1
つのフリップフロップ(セル352)を保存すべきであ
る。このフリップフロップは、ゲートされたクロック、
クロックとセット/リセットの併合、データとクロック
の併合、及びセット/リセットとパス上のデータピンと
の併合をチェックするために必要である。本発明は、シ
ェルの外部で生じる問題にのみ関わるものであるから、
フリップフロップは1つだけあればよい。
【0024】図6の(a)、(b)及び(c)は、ブロ
ック間の相互接続ないしは内的関連のいくつかの形態を
示す。図6の(a)では、ブロック210はブロック2
12に接続され、ブロック212では記憶素子214が
クラウド216に接続されている。クラウド216は、
ブロック210の出力パスを有し、このパスはブロック
212のクラウド218に接続されている。クラウド2
18は記憶素子220に接続されている。ここで、セル
214、クラウド216、クラウド218及びセル22
0は全て設計シェル生成プロセスで保存されるというこ
とに留意すべきである。図6の(b)では、ブロック2
22は2つのクラウド226及び228を含む。クラウ
ド226はブロック222の出力パスを与え、この出力
パスはブロック224のクラウド230の入力になって
いる。ブロック224のクラウド23は、ブロック22
2のクラウド228の入力を与える。ここで、設計シェ
ル生成プロセスにおいて、上記3つのクラウド226、
228及び230はそれぞれのシェルに保持されるとい
うことに留意すべきである。図6の(c)に示すブロッ
ク232はクラウド238に接続された記憶素子236
を有する。クラウド238はブロック234のクラウド
240の入力を与え、クラウド240はセル242の入
力を与える。セル242はブロック234のクラウド2
44の入力を与え、クラウド244はブロック232の
クラウド238の入力パスを与える。この場合も、設計
シェル生成プロセスにおいてブロック232のセル23
6及びクラウド238が保持され、ブロック234のク
ラウド240、244及びセル242が保持されるとい
うことに留意すべきである。
【0025】一般的に言って、元のブロックの特性を保
持するために保存する必要のあるブロックを表すネット
リストの要素は次の要素を含む。入出力ポートとの直接
接続によるパス(パス中に記憶素子がない)上のゲー
ト、フリップフロップ(記憶素子)として扱われるラッ
チ、クロック網上の少なくとも1つのフリップフロッ
プ、セット/リセット網、また、駆動セルを取り除くこ
とによって生じるセルの組合せの一つに接続された入力
がある場合、その入力は論理回路に接続しなければなら
ない。
【0026】ある機能ブロックについてのシェルを生成
する場合、図7を参照して説明すると、解析はそのブロ
ックの入力ポートから開始される。まず、ステップ20
でその機能ブロックを表す「ネットリスト」が読み込ま
れる。そのネットリストから、未トレースポートが探索
され、処理される(ステップ22)。全てのに入力ポー
トがトレースされたならば、シェル生成プロセスは、2
6で示すように、機能ブロックの全ての出力ポートをチ
ェックするステップに移行する。まだ全ての入力ポート
がされてはいない場合(未トレースの入力ポートが見つ
かった場合)は、このネットに接続された未検査セルが
探索される(ステップ28)。ここで、「このネット」
とは、検査中か、または検査されたばかりのセル(また
は入力ポート、出力ポート等)に関連して現在処理中の
ネットを指す。このネットの全てのセルが調べられ(ス
テップ30)、最後に調べられたセルの入力ピンの中の
1本が入力ポート(32)に接続されていれば、その入
力ポートの処理は完了し、ステップ22で次の未トレー
スが探索される。このネットの全てのセルの検査が終わ
って(30)、最後に調べられたばかりの入力ピンがど
れも入力ポート(32)に接続されていない場合は、調
べられたばかりのそのセルと入力ポートの間にまだセル
がある。従って、最後に調べられたセルの入力ピンに接
続されたネットをトレースする必要がある(ステップ3
4)。このネット上のセルの全てが調べられてはおらず
(ステップ30)、かつセルが記憶素子である場合は
(ステップ36)、そのセルはシェルにとって必要であ
り、保持とマークされる(ステップ38)。そしてシェ
ル生成プロセスはステップ28に戻り、このネットに接
続された次の未検査セルについて検査が行われる。ステ
ップ36の判断ボックスで、このセルが記憶素子でない
場合は、シェルの一部として保持され、このセルの出力
ピンに接続されたネットがトレースされる(ステップ4
0)。出力ピンが出力ポートに接続されている場合は
(ステップ42)、そのセルは保持とマークされる(ス
テップ44)。出力ピンが出力ポートに接続されていな
ければ(ステップ42)、シェル生成プロセスはこのネ
ット28に接続された未トレースセルを探索し続ける。
このプロセスは、セルの入力ピン及び出力ピンに接続さ
れたネットを再帰的に前方にトレースして記憶素子また
は出力ポートを探索し、シェルとって必要な回路情報を
収集する。
【0027】図8には、機能ブロックの出力ポートから
逆方向にトレースするプロセスが図示してある。このプ
ロセスは、出力ポートをチェックするプロセス(図7の
ボックス26)の後に続けて行われる。まず、未トレー
ス出力ポートが選択される(ステップ50)。全ての出
力ポートがトレースされたならば(ステップ52)、保
持済みセルのリストが書き出され(ステップ56)、こ
のリストがそのブロックを表すシェルを定義する。全て
の出力ポートがトレースされてはいない場合は(ステッ
プ52)、このネットは未トレース出力ポートからバッ
クトレースされ(ステップ54)、このネットに接続さ
れた未検査セルが探索される(ステップ58)。このネ
ット上の全てのセルが調べられ(ステップ60)、この
ネットが出力ポートに接続されている場合は(ステップ
76)、この出力ポートの処理は完了し、次の未トレー
ス出力ポートが処理される(ステップ50)。全てのセ
ルが調べられて(ステップ60)、ネットが出力ポート
に接続されていない場合は(ステップ76)、シェル生
成プロセスは1セルだけ前方にトレースし、ネットに接
続された全てのセルを検査する(ステップ58)。それ
らの全てのセルが検査されてはおらず(ステップ6
0)、かつネットが入力ポートに接続されている場合は
(ステップ62)、シェル生成プロセスは検査済みセル
の入力ピンに至る出力ピンをバックトレースする(ステ
ップ54)。ネットが入力ポートに接続されておらず
(ステップ62)、かつネットがセルの入力ピンに接続
されていれば(ステップ64)、そのセルはスキップさ
れ(ステップ66)、このネットに接続された別のセル
がステップ58を繰り返すことによって調べられる。ネ
ットがセルの出力ピンに接続されていることがわかり
(ステップ64)、セルが記憶素子であることが確認さ
れた場合は(ステップ68)、そのセルはステップ70
に示すように保持とマークされ、このネット上の他のセ
ルがチェックされる(ステップ58)。検査中のセルが
記憶素子ではない場合(ステップ68)、そのセルは保
持とマークされ、そのセルの入力ピンがトレースされ
(ステップ72)、その入力ピンのネットに接続された
セルが調べられる(ステップ58)。ブロックの全ての
出力ポートがトレースされたならば、シェル生成プロセ
スは終了する。
【0028】上記のシェル生成プロセスの結果、保持さ
れた全てのセルのネットリストが得られ、このネットリ
ストは一般にそのブロックの最初のネットリストのはる
かに小さい部分集合になる。
【0029】図9は、シェル生成プロセスにより特定の
機能ブロックについて保持されるセルに関するセル生成
プロセスを図解したものである。保持とマークされない
セルは“X”印で示されている。まず、90で示す入力
ポートから始まってセル98が検査される。セル98は
記憶素子ではないから、保持とマークされ、セル104
が検査される。セル104も同じく記憶素子ではないか
ら、保持とマークされ、セル108が調べられる。セル
108は記憶素子であり、保持とマークされる。記憶素
子の後にあるクラウド116は検査されず、マークされ
ない。セル108にマークした後、プロセスはセル10
4の前のネットへバックトレースし、かつセル98の入
力ピンに接続されたネットへバックトレースする。セル
98の入力ピンは入力ポートに接続されているので、こ
のネットの検査は終了する。そして、やはり入力ポート
90に接続されたセル100の検査に戻り、セル100
は保持とマークされる。セル106は保持とマークさ
れ、セル106への一方の入力線に接続されたネット
は、マークされない一群のセルに接続されているいるの
で、保持とマークされない。セル110は記憶素子であ
り、保持とマークされる。クラウド118によって表さ
れるセルは、記憶素子の後にあり、そのために検査され
ず、マークされない。記憶素子110にマークした後、
プロセスは、セル106の前のネットへバックトレース
した後、セル100の前のネットへバックトレースす
る。これによって入力ポート90の検査は終了する。こ
こで、入力ポート92に接続されたセルは入力ポート9
0のネットの一部と同じであるから、同じ結果が得ら
れ、このポート92に関しては、検査プロセスをスキッ
プすることが可能である。入力ポート94はクロック線
である。クロック線及びリセット線は全てそっくりその
まま保持される(上に述べた場合を除く)と言うことに
留意すべきである。従って、入力ポート94及びこれに
接続されたネットは保持とマークされる。入力ポート9
6は、クラウド112により表される一群のセルに接続
されたセル102に接続され、出力ポート150から出
力される。このネット全体、セル102及びクラウド1
12は保持される。
【0030】全ての入力ポートの試験が終了したなら
ば、シェル生成プロセスは出力ポートを解析する。出力
ポート144を見て、セル136がバックトレースさ
れ、試験され、保持とマークされる。次に、セル132
がバックトレースされ、試験され、保持とマークされ
る。セル130へバックトレースすると、セル130は
記憶素子であるから、保持とマークされる。セル128
は、セル132の後、クラウド116によって表される
一群のセルの前に接続されており、保持されない。セル
130をマークした後、シェル生成プロセスは、セル1
32へ前方トレースし、かつセル136及びセル128
へ前方トレースして出力ポート144へ戻る。
【0031】出力ポート146の検査においては、セル
142は、出力ポート146のネットに接続されてお
り、検査されて、保持とマークされる。セル138は、
検査され、バックトレースされて、保持とマークされ
る。セル140は、検査されて保持とマークされ、記憶
素子であるセル134は保持とマークされる。クラウド
126によって表されるセルは、記憶素子134の前に
あるので、検査されず、保持されない。次に、シェル生
成プロセスはセル138及び出力ポート146へ前方ト
レースして戻る。
【0032】出力ポート148をバックトレースする場
合は、まずセル142が検査され、保持とマークされ
る。セル138は、既に検査され、マークされており、
記憶素子であるセル134(既に検査済み)が保持とマ
ークされて、シェル生成プロセスはセル138へ前方ト
レースし、セル142へ戻る。次に、セル142の他方
の入力ピンが検査され、セル140が検査されて、保持
とマークされる。この場合も、セル134は既に検査済
みであり、記憶素子であるとわかるので、保持とマーク
される。次に、シェル生成プロセスは、セル140、セ
ル142、及び出力ポート148へ前方トレースする。
出力ポート150の検査においては、このネットのセル
は既に調べられ、マークされているということがわか
る。以上の説明においては、本発明のプロセスを図示の
フローチャートに基づいて説明したが、当業者ならば、
このプロセスの多くの形態の最適化を容易に想到するこ
とができよう。たとえば、あるセルの全てのピンを調べ
たならば、そのセルを再度検査する必要がないようにす
ることが可能である。
【0033】階層的設計規則チェック方法 図10を参照して説明すると、あるブロックについて設
計規則解析が終わったならば、シェル160が生成さ
れ、階層構造中の同じレベルにある次のブロック162
について同じ設計規則解析及びシェル生成プロセスが行
われる。ブロック160は、上記のプロセスによって決
定されるところに従い他のブロックの解析に必要な関連
情報のみが保持されるシェルとして図示されている。解
析されるブロック162は相互接続ライン164を介し
てブロック160に接続されている。ブロック162に
ついて設計解析プロセス及びシェル生成プロセスが終了
すると、階層構造の同じレベルにある他のブロックが解
析される。このプロセスが、図11に示すように、同じ
レベルの各ブロックについて繰り返される。
【0034】あるレベルの全てのブロックについて設計
規則チェックが行われ、シェルが生成されたならば、プ
ロセスは階層構造の1レベル上に移り、そのレベルでは
前のレベルからのブロックが結合されて内的に関連した
新しいブロックが形成され、上記のプロセスが階層構造
のそのレベルの各ブロックについて繰り返される。たと
えば、176、178、180、182の各ブロックは
設計規則チェックプロセスを経る。これらの各ブロック
について設計規則チェックプロセスが終了すると、シェ
ル184、186、188、190がそれぞれ生成され
る。このレベルの全てのブロックについて設計規則チェ
ックが行われ、シェルが生成されたならば、シェル生成
プロセスは次のレベル172へと続く。このレベルの各
ブロック(192及び194)は前のレベルからの1つ
以上のブロックからなり、各ブロックは設計規則チェッ
クプロセス及びシェル生成プロセスを経て、シェル19
6、198が生成される。最後に、最高レベル174で
は、上記の機能ブロックを表す前のレベルからの設計シ
ェルが結合されて、単一のブロックが形成され、そのブ
ロックについて設計規則チェックプロセス200が実行
される。
【0035】以上、本発明を図示実施例に基づき詳細に
説明したが、この説明による開示は限定的な意味に解釈
すべきものではない。本願の開示内容から、当業者にと
っては様々な変形態様並びに修正態様が自明であろう。
従って、本発明の真の精神及び範囲内に入る変形態様及
び修正態様は全て特許請求の範囲に包括されるものであ
る。
【図面の簡単な説明】
【図1】 機能ブロックの回路及び対応するセルについ
て保持される回路情報のモデル場面を示すブロック図で
ある。
【図2】 上記同様、機能ブロックの回路及び対応する
セルについて保持される回路情報のもう一つのモデル場
面を示すブロック図である。
【図3】 上記同様、機能ブロックの回路及び対応する
セルについて保持される回路情報のもう一つのモデル場
面を示すブロック図である。
【図4】 上記同様、機能ブロックの回路及び対応する
セルについて保持される回路情報のもう一つのモデル場
面を示すブロック図である。
【図5】 上記同様、機能ブロックの回路及び対応する
セルについて保持される回路情報のもう一つのモデル場
面を示すブロック図である。
【図6】 ブロック間の相互接続ないしは内的関連の3
つの例(a)、(b)及び(c)を示すブロック図であ
る。
【図7】 シェル生成プロセスでブロックの入力ポート
を解析するステップを示すフローチャートである。
【図8】 シェル生成プロセスでブロックの出力ポート
を解析するステップを示すフローチャートである。
【図9】 ブロック中の回路及び対応するシェルに対し
て保持される回路情報を示す説明図である。
【図10】 前に解析された別のブロックのシェルに接
続された解析中のブロックを示す説明図である。
【図11】 階層的設計規則チェックプロセスを示すブ
ロック図である。
【符号の説明】
300、302、318、330、337 ブロック、 304、310、320、322、324、326 フ
リップフロップ、 306、310、314、316 クラウド。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 クリスチャン・ジョリー アメリカ合衆国・94303・カリフォルニア 州・パロ アルト・ピアーズ コート・ 925 (72)発明者 ザリル・ビィ・サーカリ アメリカ合衆国・95134・カリフォルニア 州・サン ホゼ・エラン ヴィレッジ レ ーンナンバー117・370 (72)発明者 アレン・ウー アメリカ合衆国・95131・カリフォルニア 州・サン ホゼ・ウィロー レーン・1715

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 各々集積回路設計に関する回路情報を含
    む複数の内的に関連した機能ブロックよりなる集積回路
    設計を解析する方法において、 a)定義済み設計規則に従って、1つ以上の他の内的に
    関連したブロックと内的に関連する第1のブロックを解
    析するステップと; b)上記第1のブロックに関連して他のブロックを解析
    するのに必要な回路情報のみを含む、その第1のブロッ
    クを表す第1のシェルを生成するステップと、 c)上記第1のシェル中の回路情報を用いて、集積回路
    設計の上記第1のブロックに接続された第2のブロック
    について、定義済み設計規則に従って解析するステップ
    と;を具備した方法。
  2. 【請求項2】 d)上記第2のブロックを表す第2のシ
    ェルを生成するステップと; e)上記第1のシェル及び第2のシェルを結合して第1
    のレベルの第1の結合ブロックとするステップと;をさ
    らに具備した請求項1記載の方法。
  3. 【請求項3】 f)上記1つ以上の他の内的に関連した
    他のブロックについて上記ステップc)及びd)を繰り
    返すことにより、1つ以上の他の内的に関連したブロッ
    クの各々について対応するシェルを生成するステップ
    と; g)上記1つ以上の他の内的に関連したブロックに対す
    るシェルを結合して上記第1のレベルの1つ以上の結合
    ブロックとするステップと;をさらに具備した請求項2
    記載の方法。
  4. 【請求項4】 上記第1のレベルの結合ブロックについ
    て上記ステップa)、b)、c)、d)、e)、f)、
    及びg)を繰り返すことにより、第2のレベルの1つ以
    上の結合ブロックを生成するステップをさらに具備した
    請求項3記載の方法。
  5. 【請求項5】 ブロックが1つ以上の入力ポート及び1
    つ以上の出力ポートを有し、上記他のブロックを上記第
    1のブロックとの関連で解析するのに必要な上記回路情
    報が、上記ブロックの入力ポートからそのブロック中の
    記憶素子またはそのブロックの出力ポートまで、及びそ
    のブロックの出力ポートからそのブロック中の記憶素子
    またはそのブロックの入力ポートまでの回路情報である
    請求項1記載の方法。
  6. 【請求項6】 ブロックが1つ以上の入力ポートと1つ
    以上の出力ポートを有し、そのブロックのシェルが、 1)上記ブロック中に1つ以上の記憶素子が見つかった
    場合は、そのブロックの入力ポートの各々からその1つ
    以上の各記憶素子までの回路情報をトレースして保持
    し、そのトレースした回路情報中に記憶素子がない場合
    は、そのブロックの1つ以上の各出力ポートまでの回路
    情報をトレースして保持するサブステップと、 2)上記ブロックの出力ポートの各々から1つ以上の各
    記憶素子までの回路情報をバックトレースして保持し、
    そのトレースした回路情報中に記憶素子がない場合は、
    1つ以上の各入力ポートまでの回路情報をバックトレー
    スして保持するサブステップと、によって生成され、そ
    の保持された回路情報によって上記ブロックを表すシェ
    ルが定義される請求項1記載の方法。
  7. 【請求項7】 1つ以上の他の内的に関連したブロック
    と内的に関連した集積回路設計の、1つ以上の入力ポー
    トと1つ以上の出力ポートを備えるブロックを表すシェ
    ルを生成する方法において、 1)上記ブロック中に1つ以上の記憶素子が見つかった
    場合は、そのブロックの入力ポートの各々から1つ以上
    の各記憶素子までの回路情報をトレースして保持し、そ
    のトレースした回路情報中に記憶素子がない場合は、上
    記ブロックの1つ以上の各出力ポートまでの回路情報を
    トレースして保持するステップと、 2)上記ブロック中に1つ以上の記憶素子が見つかった
    場合は、そのブロックの出力ポートの各々から1つ以上
    の各記憶素子までの回路情報をバックトレースして保持
    し、そのトレースした回路情報中に記憶素子がない場合
    は、1つ以上の各入力ポートまでの回路情報をバックト
    レースして保持するステップと、を具備し、その保持さ
    れた回路情報によって上記ブロックを表すシェルが定義
    されることを特徴とする方法。
JP13163097A 1996-05-10 1997-05-07 集積回路設計用の設計シェルの生成及び使用方法 Expired - Lifetime JP4405599B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/627,823 1996-05-10
US08/627,823 US5844818A (en) 1996-05-10 1996-05-10 Method for creating and using design shells for integrated circuit designs

Publications (2)

Publication Number Publication Date
JPH1097565A true JPH1097565A (ja) 1998-04-14
JP4405599B2 JP4405599B2 (ja) 2010-01-27

Family

ID=24516288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13163097A Expired - Lifetime JP4405599B2 (ja) 1996-05-10 1997-05-07 集積回路設計用の設計シェルの生成及び使用方法

Country Status (3)

Country Link
US (1) US5844818A (ja)
EP (1) EP0806736A1 (ja)
JP (1) JP4405599B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010146277A (ja) * 2008-12-18 2010-07-01 Fujitsu Microelectronics Ltd 検証支援プログラム、検証支援装置、および検証支援方法
JP2012185775A (ja) * 2011-03-08 2012-09-27 Fujitsu Ltd タイミング検証支援装置、方法及びプログラム
JP2014038471A (ja) * 2012-08-15 2014-02-27 Fujitsu Semiconductor Ltd レイアウトモデル作成装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6334207B1 (en) * 1998-03-30 2001-12-25 Lsi Logic Corporation Method for designing application specific integrated circuits
US7031889B1 (en) * 1999-03-22 2006-04-18 Hewlett-Packard Development Company, L.P. Method and apparatus for evaluating the design quality of network nodes
US6560571B1 (en) * 1999-06-30 2003-05-06 Hewlett-Packard Development Company, L.P. Method and apparatus for prioritizing the order in which checks are performed on a node in an integrated circuit
US6751744B1 (en) * 1999-12-30 2004-06-15 International Business Machines Corporation Method of integrated circuit design checking using progressive individual network analysis
US6564357B2 (en) * 2001-03-30 2003-05-13 Intel Corporation Performance verification/analysis tool for full-chip designs
EP1407391A2 (en) * 2001-06-08 2004-04-14 Magma Design Automation, Inc. Representing the design of a sub-module in a hierarchical integrated circuit design and analysis system
US7584437B2 (en) * 2004-05-06 2009-09-01 Lsi Corporation Assuring correct data entry to generate shells for a semiconductor platform
US7404156B2 (en) * 2004-06-03 2008-07-22 Lsi Corporation Language and templates for use in the design of semiconductor products
US8302042B2 (en) * 2006-07-24 2012-10-30 Oasys Design Systems Generating a convergent circuit design from a functional description using entities having access to the functional description and to physical design information
US9703920B2 (en) 2015-06-30 2017-07-11 International Business Machines Corporation Intra-run design decision process for circuit synthesis

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0756656B2 (ja) * 1985-09-26 1995-06-14 株式会社日立製作所 ゲ−ト論理自動更新方法
US5095454A (en) * 1989-05-25 1992-03-10 Gateway Design Automation Corporation Method and apparatus for verifying timing during simulation of digital circuits
US5572437A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5598344A (en) * 1990-04-06 1997-01-28 Lsi Logic Corporation Method and system for creating, validating, and scaling structural description of electronic device
US5249133A (en) * 1991-04-10 1993-09-28 Sun Microsystems, Inc. Method for the hierarchical comparison of schematics and layouts of electronic components
US5481473A (en) * 1993-02-19 1996-01-02 International Business Machines Corporation System and method for building interconnections in a hierarchical circuit design
US5559718A (en) * 1994-04-28 1996-09-24 Cadence Design Systems, Inc. System and method for model-based verification of local design rules
US5475605A (en) * 1994-05-26 1995-12-12 Cadence Design Systems, Inc. Timing analysis for logic optimization using target library delay values
US5644498A (en) * 1995-01-25 1997-07-01 Lsi Logic Corporation Timing shell generation through netlist reduction
US6345378B1 (en) * 1995-03-23 2002-02-05 Lsi Logic Corporation Synthesis shell generation and use in ASIC design

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010146277A (ja) * 2008-12-18 2010-07-01 Fujitsu Microelectronics Ltd 検証支援プログラム、検証支援装置、および検証支援方法
JP2012185775A (ja) * 2011-03-08 2012-09-27 Fujitsu Ltd タイミング検証支援装置、方法及びプログラム
JP2014038471A (ja) * 2012-08-15 2014-02-27 Fujitsu Semiconductor Ltd レイアウトモデル作成装置

Also Published As

Publication number Publication date
US5844818A (en) 1998-12-01
JP4405599B2 (ja) 2010-01-27
EP0806736A1 (en) 1997-11-12

Similar Documents

Publication Publication Date Title
US6609229B1 (en) Method for automatically generating checkers for finding functional defects in a description of a circuit
Tafertshofer et al. A SAT-based implication engine for efficient ATPG, equivalence checking, and optimization of netlists
US8560985B1 (en) Configuration-based merging of coverage data results for functional verification of integrated circuits
JP5263904B2 (ja) スキャン回路テスト中のic構造シミュレーション速度向上
US20080127009A1 (en) Method, system and computer program for automated hardware design debugging
US10657207B1 (en) Inter-cell bridge defect diagnosis
JP4405599B2 (ja) 集積回路設計用の設計シェルの生成及び使用方法
US9384313B2 (en) Systems and methods for increasing debugging visibility of prototyping systems
US5587919A (en) Apparatus and method for logic optimization by redundancy addition and removal
KR100521289B1 (ko) 트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및게이트 추출 방법
US6813201B2 (en) Automatic generation and validation of memory test models
US6457161B1 (en) Method and program product for modeling circuits with latch based design
US20080295045A1 (en) Method for Creating Hdl Description Files of Digital Systems, and Systems Obtained
US6532571B1 (en) Method to improve a testability analysis of a hierarchical design
Lingappan et al. Test generation for non-separable RTL controller-datapath circuits using a satisfiability based approach
US20020188904A1 (en) Efficiency of fault simulation by logic backtracking
US10234502B1 (en) Circuit defect diagnosis based on sink cell fault models
US7606692B2 (en) Gate-level netlist reduction for simulating target modules of a design
US20240160823A1 (en) Test Generation for Structurally Similar Circuits
Iwata et al. A New Framework for RTL Test Points Insertion Facilitating a “Shift-Left DFT” Strategy
Johnson Behavioral-level test development
Joe Incremental Test Pattern Generation for structurally similar circuits
US20060218202A1 (en) Structure analytic program
Nakamae et al. VLSI testing with CAD-linked electron beam test system
Lin Sequential circuit test generation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070330

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070612

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070724

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071022

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071203

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090929

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091105

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term