JP2003216672A - 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム - Google Patents
半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラムInfo
- Publication number
- JP2003216672A JP2003216672A JP2002011940A JP2002011940A JP2003216672A JP 2003216672 A JP2003216672 A JP 2003216672A JP 2002011940 A JP2002011940 A JP 2002011940A JP 2002011940 A JP2002011940 A JP 2002011940A JP 2003216672 A JP2003216672 A JP 2003216672A
- Authority
- JP
- Japan
- Prior art keywords
- path
- circuit
- asynchronous
- false
- design support
- 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
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
期パス解析の容易化と、論理合成時間の短縮を実現す
る。 【解決手段】 RTL記述の回路データを読み込む手段
11、該RTL記述の回路データにもとづき回路中の非
同期パスを検出する手段12、該検出された非同期パス
から配列を抽出する手段13、該非同期パスを配列ごと
まとめて表示する手段14、非同期パスをフォルスパス
として選択する手段15、フォルスパスに対応する非同
期パスを回路最適化の対象からはずして、RTL記述の
回路データからゲートレベルの回路を生成する手段16
を設ける。
Description
ってLSI等の半導体回路の設計を支援する技術に関
し、特に非同期パスを含む回路の設計支援技術に関す
る。
パス箇所について細心の注意を払う必要がある。非同期
パスについて、図3を用いて説明する。図3において、
regA、regB、regCはフリップフロップであ
る。また、CK1、CK2はそれぞれ異なるクロックで
あり、かつ非同期である。図4にCK1とCK2の位相
関係の一例を示す。ここで、二つのクロックが非同期で
あるとは、二つのクロックの立ち上がりエッジの位相関
係が、クロックサイクルごとに異なることを意味する。
例えば図4では、1クロックサイクル目においてCK2
の立ち上がりエッジがCK1の立ち上がりエッジよりも
先に発生している。しかし、2クロックサイクル目では
CK1の立ち上がりエッジのほうが先に発生している。
このように非同期クロック間に存在する組み合わせ回路
の部分を非同期パスと称す。図3では、組み合わせ回路
Aの部分が非同期パスである。また、regAとreg
Bは開始フリップフロップ、regCは終端フリップフ
ロップで、CK1は開始クロック、CK2は終端クロッ
クである。
おいては、regAとregBの開始フリップフロッ
プ、及びregCの終端フリップフロップには、ともに
同一のクロックCK1が接続されている。この場合、組
み合わせ回路Bの部分は同期パスである。
な理由により細心の注意を払い、非同期対策を回路的に
施す必要がある。しかし、回路中のどの部分に非同期パ
スが存在するのかを調べるの非常に困難である。従来は
ゲートレベルの回路データに対して、非同期パスの有無
についてソフトウェアを用いて調べていた。しかし、R
TL(Register transfer Leve
l:レジスタ転送レベル)記述による回路設計を実施し
ている現在、RTL記述の回路データからゲートレベル
の回路を自動生成するまでにかなりの時間を要する。回
路設計の工期短縮のためにはRTLにおいて非同期パス
を検出できる必要がある。
み、非同期パスをレポートするツールが登場した。しか
し、従来のこの種ツールには、非同期パス表示が非常に
見にくいという欠点があった。一例として、図6の回路
について従来ツールにて非同期パスを表示した場合を図
7に示す。図7では、非同期パス中の開始フリップフロ
ップおよび終端フリップフロップを1ビットずつ表示し
ている。これでは、多ビットの配列(ベクタ)を含む非
同期パスが、多数の行にわたってレポートされ非常に見
にくくなる。
なることがある。論理合成とは、RTL記述の回路デー
タからゲートレベルの回路を自動的に生成する技術であ
り、論理合成ツールによって行われる。論理合成ツール
では、同期パスの場合は、図5に示したようなクロック
エッジE1とE2の時間幅t内に、組み合わせ回路の遅
延がおさまるよう論理合成が実施される。これに対し、
非同期パスの場合は、図4に示したように、クロックC
K1とCK2の立ち上がりエッジが最も接近する場合を
考え、このときの両エッジ間の時間幅t内に、組み合わ
せ回路の遅延がおさまるよう論理合成が実施される。し
かし、このような短い遅延時間tをもつ組み合わせ回路
は実現不可能な場合がある。にもかかわらず、論理合成
ツールは組み合わせ回路の遅延をt以内におさめようと
長時間、回路の最適化を実施する。そして、最終的には
最適化をあきらめてしまう。これにより論理合成時間が
非常に長くなる。
になってもよい場合が多い。この場合は、その非同期パ
スを回路最適化の対象からはずすように、論理合成ツー
ルにあらかじめ指示する方法がとられる。このように最
適化の対象外となるパスはフォルスパス(false
path)と呼ばれる。従来は、まず一度論理合成をし
てゲートレベルの回路を生成する。そして、ゲートレベ
ルの回路において非同期パスをみつけ、次回の論理合成
時にフォルスパスを論理合成ツールに指示していた。こ
のため初回の論理合成に多大な時間がかかる問題があっ
た。
課題を解決するためになされたものであり、その第1の
目的は、RTL記述の回路データを読み込み非同期パス
を検出して表示する場合に、非同期パスをわかりやすく
表示して、設計者の非同期パス解析を容易にすることに
ある。また、本発明の第2の目的は、RTL記述の回路
データからゲートベルの回路を生成する論理合成におい
て、論理合成実施前にフォルスパスを指定するようにし
て、非同期パスを含む回路の論理合成時間を短縮するこ
とにある。
ジスタ転送レベル)記述の回路データを読み込む手段
と、前記RTL記述の回路データにもとづき回路中の非
同期パスを検出する手段と、前記検出された非同期パス
中から配列を抽出する手段と、前記非同期パスを配列ご
とにまとめて表示する手段とを設けたことを主要な特徴
とする。
すべてフォルスパスとして選択する手段と、前記フォル
スパスに対応する非同期パスを回路最適化の対象からは
ずして、RTL記述の回路データからゲートレベルの回
路を生成する手段とを有することを特徴とする。
フォルスパス候補として表示し、前記フォルスパス候補
中から設計者が指定したものをフォルスパスとして選択
する手段と、前記選択されたフォルスパスに対応する非
同期パスを回路最適化の対象からはずして、RTL記述
の回路データからゲートレベルの回路を生成する手段と
を有することを特徴とする。
設計支援装置の一実施例を示す機能ブロック図である。
図1において、10は半導体回路設計支援装置、20は
ディスプレイ、30はキーボード、40はマウス、50
はハードディスク等の記憶装置である。ここで、半導体
回路設計支援装置10はRTL読み込み部11、非同期
パス検出部12、配列抽出部13、非同期パス表示部1
4、フォルスパス選択部15、及び論理合成部16で構
成される。また、記憶装置50は、設計対象のRTL記
述の回路データ51、設計制約条件52、ゲートライブ
ラリ53等を格納している。さらに、記憶装置50に
は、論理合成部16で生成されたゲートレベルの論理回
路ネットリスト54が格納される。
フロー図を示す。図2中、ステップ101〜105は図
1のRTL読み込み部11、非同期パス検出部12、配
列抽出部13、非同期パス表示部14、フォルスパス選
択部15での各処理に対応し、ステップ106、107
は論理合成部16での処理に対応する。
各処理部11〜16の一部もしくは全部の処理機能をコ
ンピュータプログラムで構成し、そのプログラムをコン
ピュータを用いて実行して本発明を実現することができ
ること、あるいは、図2で示した処理フローを同様にコ
ンピュータプログラムで構成し、そのプログラムをコン
ピュータに実行させることができることは言うまでもな
い。また、このコンピュータでその処理機能を実現する
ためのプログラム、あるいは、コンピュータにその処理
手順を実行させるためのプログラムを、そのコンピュー
タが読み取り可能な記録媒体、例えば、フロッピーディ
スク(登録商標)や、MO、ROM、メモリカード、C
D、DVD、リムーバブルディスクなどに記録して、保
存したり、提供したりすることができるとともに、イン
ターネット等のネットワークを通してそのプログラムを
配布したりすることが可能である。
実施例の動作を具体的に説明する。まず、RTL読み込
み部11は、記憶装置50から設計対象のRTL記述の
回路データ51を読み込む(ステップ101)。ここで
は、設計対象を図6に示した回路とする。図6の回路に
対応するRTL記述の一例を図8に示す。なお、図8で
は、クロックCK3、CK4に関係する記述は省略して
ある。
TL記述の回路データをもとに非同期パスを検出する
(ステップ102)。いま、図8のRTL記述におい
て、regA、regB、regC、regXは論理合
成後にはフリップ・フロップになるものである。reg
Cのクロック信号がCK2であることは、RTL記述よ
り自明である。ここで、regCへの代入式(206)
および条件式(205)から、regCはregA、r
egB、regXを入力とする組み合わせ回路によりr
egCの信号が生成されることがわかる。また、代入式
(202)、(203)、(204)から、regA、
regB、regXのクロック信号はCK1であること
がわかる。よって、regCとregA間、regCと
regB間、regCとregX間は、それぞれ非同期
パスであることが検出できる。
中から配列(ベクタ)を抽出する(ステップ103)。
ここで、regXが256ビットの配列であることは、
図8の式(201)から明らかである。なお、regA
とregBはベクタが定義されておらず(スカラ)、1
ビットである。
期パスを配列ごとにまとめてディスプレイ20に表示す
る(ステップ104)。図6の回路に対する非同期パス
の表示例を図9に示す。図9において、regAとre
gC間及びregBとregC間は、そのまま表示され
るが、regXとregC間は、配列ごとまとめて表示
されていることがわかる。
すべての非同期パスをフォルスパスとして認識し、それ
ぞれ開始および終端のクロックの情報のみをディスプレ
イ20に表示する。図10にフォルスパスの表示例を示
す。図10において、開始クロックがCK1で終端クロ
ックがCK2の部分は、図6におけるregA、reg
B、regXとregC間の非同期パスを示している。
また、図10では、図6の回路中には合計3種類の非同
期パスが存在しているとし、3つのパスすべてに対して
図中左端のチェックボックスにチェックが入っている。
これは、検出された非同期パスすべてをフォルスパスに
することを意味している。設計者は、フォルスパス表示
を見て、他の非同期パスをフォルスパスから除外する場
合は、キーボード30やマウス40を使って、図中左端
のチェックボックスのチェックをはずす。
フォルトとして、すべての非同期パスに対してチエック
ボックスのチエックをはずしておく方式を採用してもよ
い。この場合、表示はフォルスパス候補を意味し、設計
者は該表示を見て、フォルスパス候補中から実際にフォ
ルスパスとすべき非同期パスに対するチエックボックス
にチエックを入れることになる。いずれにしろ、フォル
スパス選択部15は、最終的にチエックボックスにチエ
ックが入っている非同期パスをフォルスパスとして選択
し、該フォルスパスの情報を論理合成部16に渡す。
対象のRTL記述の回路データ51、設計制約条件52
を入力し、ゲートライブラリ53を参照しながら、該R
TL記述から、設計制約条件に従って自動的に論理合成
を実施してゲートレベルの回路を生成する(ステップ1
06)。この時、論理合成部16では、フォルスパス選
択部15から渡されたフォルスパスの情報にもとづき、
その非同期パスを回路最適化の対象からはずしてゲート
レベルの回路を生成する。論理合成部16は、生成した
ゲートレベルの回路データである論理回路ネットリスト
54を記憶装置50に格納する(ステップ107)。
置・配線レイアウト設計、パターン生成等が実施される
が、これらは本発明と直接関係するところでないので説
明は省略する。
システムの構成例を示す。ハードディスク50にはRT
L記述の回路データ、設計制約条件、ゲートライブラリ
などに加えて、半導体回路設計支援プログラムが記憶さ
れている。CPU100は、ハードディスク50から該
支援プログラムをメモリ110に読み込み、それを実行
することで、RTL記述の回路データの読み込み、非同
期パス検出、配列抽出、非同期パス表示、フォルスパス
選択、論理合成等の処理が行われる。この時、メモリ1
10は作業用メモリとして使用される。また、ディスプ
レイ20には非同期パスが配列ごとにまとめて表示さ
れ、さらに、フォルスパスが表示される。設計者は、デ
ィスプレイ20の表示を見て、キーボード30やマウス
40を使ってフォルスパスにするかどうかを指定する。
法によれば、次のような効果が得られる。 (1) 非同期パスの開始フリップフロップと終端フリッ
プフロップを、配列ごとにまとめて表示することによ
り、非同期パス解析が容易になる。 (2) すべての非同期パスを論理合成実施前にフォルス
パスとして自動的に指定できることで、論理合成時間の
短縮が期待できる。 (3) 設計者により一部あるいは全部の非同期パスを論
理合成実施前にフォルスパスとして任意に指定できるこ
とにより、論理合成時間の短縮が期待できるとともに、
自在の回路最適化が可能になる。
機能ブロック図である。
である。
ハードウエア構成例を示す図である。
Claims (5)
- 【請求項1】 RTL(レジスタ転送レベル)記述の回
路データを読み込む手段と、前記RTL記述の回路デー
タにもとづき回路中の非同期パスを検出する手段と、前
記検出された非同期パス中から配列を抽出する手段と、
前記非同期パスを配列ごとにまとめて表示する手段とを
有することを特徴とする半導体回路設計支援装置。 - 【請求項2】 請求項1記載の半導体回路設計支援装置
において、検出された非同期パスをフォルスパスとして
選択する手段と、前記フォルスパスに対応する非同期パ
スを回路最適化の対象からはずして、前記RTL記述の
回路データからゲートレベルの回路を生成する手段とを
有することを特徴とする半導体回路設計支援装置。 - 【請求項3】 請求項1記載の半導体回路設計支援装置
において、検出された非同期パスをフォルスパス候補と
して表示し、前記フォルスパス候補中から設計者が指定
したものをフォルスパスとして選択する手段と、前記選
択されたフォルスパスに対応する非同期パスを回路最適
化の対象からはずして、RTL記述の回路データからゲ
ートレベルの回路を生成する手段とを有することを特徴
とする半導体回路設計支援装置。 - 【請求項4】 コンピュータ利用の半導体回路設計支援
方法であって、RTL記述の回路データを読み込むステ
ップと、前記RTL記述の回路データにもとづき回路中
の非同期パスを検出するステップと、前記検出された非
同期パスから配列を抽出するステップと、前記非同期パ
スを配列ごとまとめて表示するステップと、非同期パス
をフォルスパスとして選択するステップと、前記フォル
スパスに対応する非同期パスを回路最適化の対象からは
ずして、RTL記述の回路データからゲートレベルの回
路を生成するステップとを有することを特徴とする半導
体回路設計支援方法。 - 【請求項5】 請求項4記載の半導体回路設計支援方法
をコンピュータで実行させるための半導体回路設計支援
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002011940A JP2003216672A (ja) | 2002-01-21 | 2002-01-21 | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002011940A JP2003216672A (ja) | 2002-01-21 | 2002-01-21 | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003216672A true JP2003216672A (ja) | 2003-07-31 |
Family
ID=27649294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002011940A Pending JP2003216672A (ja) | 2002-01-21 | 2002-01-21 | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003216672A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7350162B2 (en) | 2005-03-28 | 2008-03-25 | Fujitsu Limited | Structure analytic program |
JP2008226069A (ja) * | 2007-03-15 | 2008-09-25 | Ricoh Co Ltd | 論理回路、半導体設計支援装置および半導体設計支援方法 |
JP2013145476A (ja) * | 2012-01-16 | 2013-07-25 | Casio Comput Co Ltd | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム |
US8898601B2 (en) | 2012-07-23 | 2014-11-25 | Kabushiki Kaisha Toshiba | Logic circuit design method, logic circuit design program, and logic circuit design system |
WO2015062013A1 (en) * | 2013-10-31 | 2015-05-07 | Jasper Design Automation, Inc. | Data propagation analysis for debugging a circuit design |
US9817930B1 (en) | 2014-12-31 | 2017-11-14 | Cadence Design Systems Inc. | Method, system, and computer program product for verifying an electronic circuit design with a graph-based proof flow |
CN109901049A (zh) * | 2019-01-29 | 2019-06-18 | 厦门码灵半导体技术有限公司 | 检测集成电路用时序路径中异步路径的方法、装置 |
-
2002
- 2002-01-21 JP JP2002011940A patent/JP2003216672A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7350162B2 (en) | 2005-03-28 | 2008-03-25 | Fujitsu Limited | Structure analytic program |
JP2008226069A (ja) * | 2007-03-15 | 2008-09-25 | Ricoh Co Ltd | 論理回路、半導体設計支援装置および半導体設計支援方法 |
JP2013145476A (ja) * | 2012-01-16 | 2013-07-25 | Casio Comput Co Ltd | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム |
US8522175B2 (en) | 2012-01-16 | 2013-08-27 | Casio Computer Co., Ltd. | Semiconductor circuit design supporting apparatus and method, and non-transitory computer-readable medium |
US8898601B2 (en) | 2012-07-23 | 2014-11-25 | Kabushiki Kaisha Toshiba | Logic circuit design method, logic circuit design program, and logic circuit design system |
WO2015062013A1 (en) * | 2013-10-31 | 2015-05-07 | Jasper Design Automation, Inc. | Data propagation analysis for debugging a circuit design |
US10078714B2 (en) | 2013-10-31 | 2018-09-18 | Cadence Design Systems, Inc. | Data propagation analysis for debugging a circuit design |
US9817930B1 (en) | 2014-12-31 | 2017-11-14 | Cadence Design Systems Inc. | Method, system, and computer program product for verifying an electronic circuit design with a graph-based proof flow |
CN109901049A (zh) * | 2019-01-29 | 2019-06-18 | 厦门码灵半导体技术有限公司 | 检测集成电路用时序路径中异步路径的方法、装置 |
CN109901049B (zh) * | 2019-01-29 | 2021-05-04 | 厦门码灵半导体技术有限公司 | 检测集成电路用时序路径中异步路径的方法、装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10078714B2 (en) | Data propagation analysis for debugging a circuit design | |
JP2006195898A (ja) | 信号伝播経路描画装置、その描画方法及びプログラム | |
US7996802B2 (en) | Method of verifying circuit and computer-readable storage medium for storing computer program | |
JP2003216672A (ja) | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム | |
JP2008123056A (ja) | 論理回路のタイミング制約生成システムおよび論理回路のタイミング制約生成方法、制御プログラム、可読記録媒体 | |
JP2008065382A (ja) | Lsiの消費電力算出方法及びその算出プログラム | |
JP2996213B2 (ja) | テスト容易化設計方法および装置、情報記憶媒体、集積回路装置 | |
US7617466B2 (en) | Circuit conjunctive normal form generating method, circuit conjunctive normal form generating device, hazard check method and hazard check device | |
US7945882B2 (en) | Asynchronous circuit logical verification method, logical verification apparatus, and computer readable storage medium | |
JP5621792B2 (ja) | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム | |
US8117578B2 (en) | Static hazard detection device, static hazard detection method, and recording medium | |
JP2007249492A (ja) | 自動見積方法、装置、及びプログラム | |
JP2006268165A (ja) | 集積回路のタイミング解析装置、集積回路のタイミング最適化装置、集積回路のタイミング解析方法、集積回路のタイミング最適化方法、集積回路基板の製造方法、制御プログラムおよび可読記録媒体 | |
JP2005071001A (ja) | 設計支援装置 | |
JP5849973B2 (ja) | データ処理装置、データ処理システム、データ処理方法、及びデータ処理プログラム | |
JP2004145712A (ja) | 半導体設計における動作記述の等価性検証方法 | |
JP4448048B2 (ja) | 構造解析プログラム | |
JP4587754B2 (ja) | クロック合成方法、半導体装置及びプログラム | |
JP4307169B2 (ja) | 遅延検証装置 | |
JP5645754B2 (ja) | マルチサイクルパス検出装置及びマルチサイクルパス検出プログラム | |
JP7351189B2 (ja) | タイミング制約抽出装置、タイミング制約抽出方法およびタイミング制約抽出プログラム | |
JP2011054070A (ja) | 冗長論理回路検出方法及び冗長論理回路検出装置 | |
JP4450103B2 (ja) | スタティックハザード検出装置、スタティックハザード検出方法並びにプログラム | |
JP4747036B2 (ja) | Lsi解析プログラム、該プログラムを記録した記録媒体、lsi解析装置、およびlsi解析方法 | |
JP2007241836A (ja) | マルチサイクルパス検証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040927 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20050405 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20050421 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20050909 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20050916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051205 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060313 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060509 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20060602 |