Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
AccuCoreによるトランジスタ・レベルのスタティック・タイミング解析
株式会社シルバコ・ジャパン
2
Silvaco/Simucad社社社社プロダクトラインアッププロダクトラインアッププロダクトラインアッププロダクトラインアップ
3
デザインデザインデザインデザイン・・・・チャレンジチャレンジチャレンジチャレンジ
ASIC-SoC / Custom-SoC
ハード IP、再利用IP •モデルの不備•遅延の正確性•デザインの知識•ファンクション・ベリファイ•実行時間
メモリ•マニュアル手法•正確性•モデルの不備•実行時間
スタンダード・セル &カスタ
ムセル•タイミングの正確性、カバレッジ•複雑なセルや、I/Oのキャラク
タライズ•新規セルに対する迅速なキャラクタライズ
フル・カスタム•タイミング・クロージャ•デザインのデバッグ•ファンクション・ベリファイ
•複雑なセットアップ
ますますますますますますますます増増増増えるえるえるえる 「「「「正確性正確性正確性正確性」「」「」「」「速度速度速度速度」「」「」「」「デザインデザインデザインデザイン・・・・カバレッジカバレッジカバレッジカバレッジ」」」」のののの必要性必要性必要性必要性
4
フル・カスタム
AccuCore
スタンダード・セル&カスタム・セル
AccuCell
AccuCell / AccuCore ソリューションソリューションソリューションソリューション
ASIC-SoC/ Custom - SoC
ハードIP、再利用IP
AccuCore
5
デザインデザインデザインデザイン・・・・チャレンジチャレンジチャレンジチャレンジ
生産性• 広範囲に渡るエンジニアのマニュアル・ワークを排除• キャラクタライズのセットアップ、ランタイムの時間を減少• トータル・デザインフローにおけるTATを減少させる
• 複数のツールではなく、一つのツールで実現
パフォーマンス• タイミング、パワー、ファンクションを正確に出力しているか• サブミクロン・テクノロジー / 複雑な回路に対応する
正確性• ファンクションを正確に抽出し、ベクタは、すべての要求を網羅して
いるか• Spiceシミュレータの精度は?
6
AccuCell / AccuCore ソリューションソリューションソリューションソリューション
生産性• AccuCell / AccuCore独自の自動化対応でエンジニアの負担を軽
減 (パーティションに分割・ファンクション抽出・ベクタ生成)• 高速SmartSpiceおよびSmartSpice API機能でTATの減少• Characterize機能とSpiceシミュレータをシームレスに統合
パフォーマンス• 過去の多大な実績に基づく、独自のファンクション抽出、ベクタ生
成機能で複雑な回路にも対応する高パフォーマンスを実現• SmartSpiceにおける最新Spiceモデルに対応済み
正確性• 「正確性」に信頼の置けるSmartSpiceを採用
7
Simucad SoCソリューションソリューションソリューションソリューション
AccuCore STA
フルチップタイミング解析
AccuCore
ブロック・コアキャラクタライゼーション
AccuCellセル・キャラクタライゼーション
8
AccuCell / AccuCore のののの区別区別区別区別についてについてについてについて
AccuCore
AccuCore
AccuCell
Block Characterization
Full / Gate Level STA
Cell Characterization
(~ 1000 Devices)
(1000 ~ Devices)AccuCell
9
AccuCell and AccuCore のののの基本的特徴基本的特徴基本的特徴基本的特徴
AccuCell AccuCore
I/O Data Input Capacitance Input CapacitanceDelay DelaySetup / Hold Setup / HoldPower Calc
Function
of
Capability
Characterize CharacterizePartitioningSTA
SupportedFormat
.lib (SPDM) .libTLF TLFVerilog Verilogalfmentorvital
AccuCell and AccuCoreは別プロダクトです。AccuCellの機能がAccuCoreに包含されているわけではありません。
10
• 最新のSpiceモデルを採用し、正確性をさらに向上
• SmartSpiceの高速・収束性によりシミュレーション・スピードの向上
• スタティック・タイミング解析とSpiceの正確性の融合を実現
AccuCore ののののソリューションソリューションソリューションソリューション
正確性
スピード
ダイナミック
シミュレータ
スタティック
シミュレータ
AccuCoreAccuCore
11
AccuCore のののの概要概要概要概要
• 独自のアルゴリズムによる機能分割、クラスタ化により、Spiceの
精度を保ちキャラクタライズを実行• ファンクション抽出、ベクタ生成を自動化• 高パフォーマンスのSmartSpiceとの統合• 最新Spiceモデルに対応• Liberty format .lib モデル、Verilog、Vital、TLFモデルを生成• STA機能を持ち合わせるため、SpiceネットリストもしくはGateレベ
ルVerilogネットリストからのSTAの実行が可能• STA実行後に検証されたクリティカル・パスをSpiceネットリストに
て出力• Solaris / Linux 互換 (Linux64ビットマシンに対応)
12
AccuCore 入力入力入力入力、、、、出力出力出力出力、、、、双方向双方向双方向双方向インタフェースインタフェースインタフェースインタフェース
AccuCore
Transistor and Gate Level
Full-Chip STA with Automatic
Block Characterization
ゲート・レベルVerilogネットリスト+SDF
SPICEネットリスト+SPF、DSPF
SPICEモデル
コンフィグ・ファイル
TCLスクリプト
入力 出力
Synopsys社 PrimeTime
モデル
クリティカル・パスのSPICEデッキ
Synopsys社 LibertyTM (.lib)
Cadence社 TLFフォーマット
スタティック・タイミング解析レポート
Verilogネットリスト
キャラクタライズデータ・ベース
SmartSpice
HSPICE
ELDO
13
AccuCore のののの入力入力入力入力
• バックアノテートされたRCの情報として、SDFをゲート・レベル・ネット
リストに含むことが可能
• SPICEネットリスト内にRCを含ませ、また、SDFをマージすることも
可能
• SmartSpiceで使用可能なSPICEモデルをすべて使用可能
• コンフィグレーション・ファイルによりすべてのオプション設定が可能
• Tcl スクリプトによりカスタマイズ・フローの構築やレポートを出力
AccuCoreTransistor and Gate Level
Full-Chip STA with Automatic
Block Characterization
ゲート・レベルVerilogネットリスト+SDF
SPICEネットリスト+SPF、DSPF
SPICEモデル
コンフィグ・ファイル
TCLスクリプト
入力 出力
Synopsys社 PrimeTime
モデル
クリティカル・パスのSPICEデッキ
Synopsys社 LibertyTM (.lib)
Cadence社 TLFフォーマット
スタティック・タイミング解析レポート
Verilogネットリスト
キャラクタライズデータ・ベース
SmartSpice
HSPICE
ELDO
14
AccuCoreTransistor and Gate Level
Full-Chip STA with Automatic
Block Characterization
ゲート・レベルVerilogネットリスト+SDF
SPICEネットリスト+SPF、DSPF
SPICEモデル
コンフィグ・ファイル
TCLスクリプト
入力 出力
Synopsys社 PrimeTime
モデル
クリティカル・パスのSPICEデッキ
Synopsys社 LibertyTM (.lib)
Cadence社 TLFフォーマット
スタティック・タイミング解析レポート
Verilogネットリスト
キャラクタライズデータ・ベース
SmartSpice
HSPICE
ELDO
AccuCore のののの出力出力出力出力
• Synopsys社 Liberty™ (.lib)
• Cadence社 TLF (.tlf) フォーマット
• Simucad (svc)データ・ベース・フォーマット
• デザイン・クラスター間における接続情報のVerilogネットリスト
• SPICEで詳細に解析されたクリティカル・パスをSPICEデッキで出力
• パス解析(slack)やコンストレイント・チェック解析を含むSTAパス・レ
ポート
15
AccuCoreTransistor and Gate Level
Full-Chip STA with Automatic
Block Characterization
ゲート・レベルVerilogネットリスト+SDF
SPICEネットリスト+SPF、DSPF
SPICEモデル
コンフィグ・ファイル
TCLスクリプト
入力 出力
Synopsys社 PrimeTime
モデル
クリティカル・パスのSPICEデッキ
Synopsys社 LibertyTM (.lib)
Cadence社 TLFフォーマット
スタティック・タイミング解析レポート
Verilogネットリスト
キャラクタライズデータ・ベース
SmartSpice
HSPICE
ELDO
AccuCore のののの双方向双方向双方向双方向インタフェースインタフェースインタフェースインタフェース
• AccuCoreでは、SmartSpice APIを使用した最速キャラクタライズ
を実現しています
• AccuCore は、外部SPICEとしてHSPICE, ELDOをご利用いただけ
ます
• AccuCore は、SQLデータ・ベースを用いてインクリメンタル・キャラ
クタライゼーションを実現しています
16
AccuCoreスタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析(STA)のののの概要概要概要概要
• AccuCoreスタティック・タイミング解析(STA)機能は、フルチップ対応
の階層化ゲート・レベルの解析が可能です
• キャラクタライズ・フロー(AccuCore フロー)からの実行、もしくはスタン
ド・アロンでの実行が可能で、シーケンシャル・デバイス、コンビネーション・デバイスのどちらも対応しています
• スタンド・アロンでの実行では、 キャラクタライズ・フローから独立して実行することが可能で、Simucad社フォーマットや、Synopsys社Libertyフォーマットの複数タイミング・ライブラリとVerilogネットリストを
読み込むことが可能です
• キャラクタライズ・フローでは、内部寄生素子のSPF、もしくはSDF
フォーマットファイルを読み込み可能です
17
AccuCoreスタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析(STA)のののの概要概要概要概要
• キャラクタライズ・フローでは、分割されたセル、もしくはデザイン・クラスターのキャラクタライズ実行、 デザイン・クラスター間のコネクションVerilogネットリストの出力、STAフローにフィードバックされる、Simucad、Liberty フォーマットのタイミングライブラリを出力します
• キャラクタライズ・フロー、スタンド・アロンのどちらのフローでも、カスタムもしくはASICのフルチップ解析が一回の実行で可能です
18
AccuCoreスタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析(STA)のののの機能機能機能機能 ((((1111))))
• スタティック・タイミング解析の機能• パス・サーチ (Path Search)
• パス・サーチのコントロール
• パスの形態
• クリティカル vs. サブ・クリティカル vs ラッチ・トゥ・ラッチ パス
• シンクロナイザー、トランスペアレンシー
• パス・サイクル・ルール、トランスペアレンシー
• ディフォルトのシンクロナイザー・ルール
• ラッチのグループ
• コンビネーション・ループ
• タイミング制約のベリフィケーション
• タイミング制約、クロック・ドメイン
• タイミング制約、パス・サイクル・ルール
• パス・サイクル・ルール、Clock Uncertainty
• Output/Bidir Assertions
19
• スタティック・タイミング解析の機能
• ラッチ、フリップ・フロップのチェック
• ゲーテド・クロックのチェック
• データ間チェック
• トライステート・バスのチェック
• ラッチ・ループ制約
• コモン・スキュー・リムーバブル
• スタティック・タイミング解析レポート
• SPICEデッキ生成
• スタティック・タイミング解析モデル
• ブロック制約の生成
• スラックのアロケーション
• 内部接続のバックアノテーション
AccuCoreスタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析(STA)のののの機能機能機能機能 ((((2222))))
20
クロック・ツリーのSPICEデッキ
AccuCoreスタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析(STA)
STA
Transistor and Gate Level
Full-Chip STA
ゲート・レベルVerilogネットリスト+SDF
SPICEネットリスト+SPF、DSPF
SPICEモデル
コンフィグ・ファイル
TCLスクリプト
出力
クリティカル・パスのSPICEデッキ
スタティック・タイミング解析レポート
AccuCore
キャラクタライズ・フロー
スタンド・アロン・フロー
21
フルフルフルフル・・・・チップチップチップチップ/ IPコアコアコアコア
分割分割分割分割 ファンクションファンクションファンクションファンクション抽出抽出抽出抽出
SpiceネットリストネットリストネットリストネットリストSpiceモデルモデルモデルモデルコンフィグコンフィグコンフィグコンフィグ・・・・ファイルファイルファイルファイル
ゲートレベルゲートレベルゲートレベルゲートレベル/
フルチップフルチップフルチップフルチップSTA
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー
ベクタベクタベクタベクタ生成生成生成生成 シミュレーションシミュレーションシミュレーションシミュレーション管理管理管理管理
モデルモデルモデルモデル生成生成生成生成
.lib モデルモデルモデルモデルSTA パスパスパスパス・・・・レポートレポートレポートレポートクリティカルクリティカルクリティカルクリティカル・・・・パスパスパスパスSpice
Verilog
ゲートレベルゲートレベルゲートレベルゲートレベルVerilog ネットリストネットリストネットリストネットリスト
AccuCoreAccuCore
SmartSpice
(with API)
Eldo
HSPICE
フラットフラットフラットフラット化化化化
22
入力ファイルの読み込み⇒分割
入力ファイルの読み込み• コンフィグ・ファイル - キャラクタライズに使用される設定条件• Spiceネットリスト• Spiceモデル - Spice実行時に必要なSpiceモデル
CMOSおよびSOIテクノロジ BSIM3、BSIM3SOI、BSIM4、PSP、HiSIMなどに対応した、業界最多のキャリブレーション済みSpice
モデルを使用可能• TCL file - バッチモード実行時のTCLファイル
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 1
AccuCoreAccuCore 入力ファイルの読み込み⇒分割
SmartSpice
STEP 1
23
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー コンフィグコンフィグコンフィグコンフィグ・・・・ファイルファイルファイルファイル例例例例
# Port Names
inputs A B C D
# clocks CLK CLK
outputs O
powers vdd
grounds gnd
# Basic AccuCore Commands Required for basic run
IN_FILE_NAME tutorial.sp
TOP_VLOG_MODULE tutorial
MODEL_TYPE svc synthesis tlf generic
##SPICE_TYPE smartspice
INC_CMD "./models.inc"
SUPPLY_V_HIGH 3.0
TEMP 25
# MOSFET name declaration
MOSFET_TYPE nmos nmos
MOSFET_TYPE pmos pmos
CALC_C_EFF 1
SLOPE_TABLE { 0.05 0.1 0.2 }
CAP_TABLE { 0.02 0.06 0.1 }
SETHLD_2D 1
MIN_RISE_SLOPE 0.01
MIN_FALL_SLOPE 0.01
# Debug Commands
PRINT_EQNS 1
VERBOSE 1
#CONST_DELAY 1.0
#DEFAULT_FF_SETUP 0.5
#DEFAULT_FF_HOLD 0.5
#DEFAULT_LATCH_SETUP 0.5
#DEFAULT_LATCH_HOLD 0.5
DO_STA 0
24
分割:パーティショニング
• 分割:パーティショニングによりセル・プリミティブ・レベル・クラスまでクラスタ化 - Spiceの精度を保持
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー 読読読読みみみみ込込込込みみみみ ⇒⇒⇒⇒分割分割分割分割
25
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー 分割分割分割分割のののの手順手順手順手順
• 自動分割手順は、最初にSpiceネットリストをフラット化します
• ユーザー定義の分割ブロックを判断し、そのブロックに含まれるトランジスタが、他の分割に含まれないことを認識します
• チャネル・コネクテッド・コンポーネンツ(CCCs)と呼ばれる関連性の
あるトランジスタのグループ分けを実行します
• このステップは重要で、これらのグループ分けがデザイン・クラスタ(DC)になります
• 仮にグループ分けがうまく実行されなかった場合でも、さらに強力に電気的関連のある他のCCCを評価し、一つのDCに作り上げて
いきます
• それぞれの実行終了後に個々のDCは下記のうちどちらかの手法でレビューされます:
• サフィックスが.out というファイルがディフォルトで生成され、トランジスタ・レベルのDCネットリストを参照
• As a statistical representation in the log or .sum file
• 結果として、分割されたDCが大きい場合は、マニュアルにて分割す
る手法をとります
26
ファンクション抽出
• クラスタ化されたグループそれぞれに論理ファンクションを自動抽出
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 2222
AccuCoreAccuCore ファンクション抽出
SmartSpice
STEP 2
Q.0 := ~D & main+;
Q.1 := D & main+;
QN.0 := D & main+;
QN.1 := ~D & main+;
27
ベクタ生成
ベクタ生成
• クラスタ化されたグループから抽出された論理ファンクションをもとにSpiceの入力ベクタをPWLフォーマットで生成
• ベクタは、正確性をそこなうことなく実行時間を最短にさせるように考慮 - キャラクタライズに冗長な部分を削除し効率的に生成され
る
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 3333
AccuCoreAccuCore ベクタ生成
SmartSpice
STEP 3
28
インプット・デッキの生成
• コンフィグ・ファイルに記述されている条件をもとにインプット・デッキを生成し、クラスターを正確にキャラクタライズするために前段の入力スロープ、後段の出力負荷を考慮してSpiceネットリストに
付加
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー インプットインプットインプットインプット・・・・デッキデッキデッキデッキのののの生成生成生成生成
0.5ns1pF
0.5pF
29
シミュレーション管理
� Spiceシミュレータに、生成されたインプット・デッキとベクタを渡しシミュレーションを実行
� シミュレーションは、それぞれのクラスタごとに実行� AccuCore推奨のSmartSpiceを使用することにより最高のパフォー
マンスを実現 (スピード、収束性 HSPICEとのコンパチブル)� 外部SPICE (HSPICE / Eldo)に対応
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 4
AccuCoreAccuCore シミュレーション管理
SmartSpice
STEP 4
30
SmartSpice API機能
� SmartSpice API機能機能機能機能をををを使用使用使用使用してしてしてして、、、、パラメータパラメータパラメータパラメータのののの変更変更変更変更をををを直接直接直接直接メモリーメモリーメモリーメモリー上上上上
でででで実行実行実行実行
� 再読再読再読再読みみみみ込込込込みのみのみのみの時間時間時間時間がががが短縮短縮短縮短縮されされされされ、、、、さらなるさらなるさらなるさらなるスピードアップスピードアップスピードアップスピードアップをををを実現実現実現実現!!!!
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー SmartSpice API 機能機能機能機能
SmartSpiceSmartSpice
AccuCoreAccuCore
MemoryMemory
31
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー ベンチベンチベンチベンチ・・・・マークマークマークマーク・・・・データデータデータデータ 1111
Model : SUN Ultra40CPU : Dual Core AMD Opteron™ 280 @2.40GHzMemory : 8GBOS : RedHat Linux Enterprise 4
� Machine SPEC.
� Circuit Description
Circuit Name - Shift_32.testTotal Devices - 17,309 devices (12000Tr,DIO,C)Numbers of DC - 1607 design clusters
• 5x5 Table with API Function• 5x5 Table without API Function• 10x10 Table with API Function• 10x10 Table without API Function
32
� Benchmark Results
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー ベンチベンチベンチベンチ・・・・マークマークマークマーク・・・・データデータデータデータ 1111
Sim
ula
tion T
ime [sec]
0
600
1200
1800
2400
3000
3600
4200
840 1500
5x5 Table API
5x5 Table no API
10x10 Table API
10x10 Table no API
4800
5400
6000
6600
3480 6030
Shift_32.test
4.1 x faster 4.02 x faster
(14m) (58m) (25m) (105m)
33
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー ベンチベンチベンチベンチ・・・・マークマークマークマーク・・・・データデータデータデータ 2222
Model : SUN Fire V20zCPU : AMD Opteron™ 252 @2.60GHzMemory : 8GBOS : RedHat Linux Enterprise 4
� Machine SPEC.
� Circuit Description
Circuit Name - Shift_32.testTotal Devices - 17,309 devices (12000Tr,DIO,C)Numbers of DC - 1607 design clusters
• 5x5 Table with API Function• 5x5 Table without API Function• 10x10 Table with API Function• 10x10 Table without API Function
34
� Benchmark Results
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー ベンチベンチベンチベンチ・・・・マークマークマークマーク・・・・データデータデータデータ 2222
Sim
ula
tion T
ime [sec]
0
600
1200
1800
2400
3000
3600
4200
960 1500
5x5 Table API
5x5 Table no API
10x10 Table API
10x10 Table no API
4800
5400
6000
6600
3780 4860
Shift_32.test
3.9 x faster 3.24 x faster
(16m) (63m) (25m) (81m)
35
モデル生成
� 実行されたSPICEシミュレーションの結果より、Liberty (.lib)フォー
マットのタイミング・モデルを生成
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 5555
AccuCoreAccuCore モデル生成
SmartSpice
STEP 5
36
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー Synopsys .libファイルファイルファイルファイル例例例例
***************************************************************************
* Synopsys Technology File Created By AccuCore(R)
*
* Software Version: 1.2.9.R
*
* Copyright (C) Simucad Design Automation 2006
*
****************************************************************************
* This library has been created using the Synopsys Liberty Format
*
* Liberty is a licensed trademark of Synopsys Inc.
*
****************************************************************************
*
* Library Creation Date: JST 2006
*
* Process:
* Voltage: 1.62
* Temperature: 85
*
****************************************************************************/
library (shift_32_lib) {
technology (cmos);
delay_model : table_lookup;
capacitive_load_unit (1,pf);
pulling_resistance_unit : "1kohm";
time_unit : "1ns";
voltage_unit : "1V";
current_unit : "1A";
default_fanout_load : 0.0;
default_inout_pin_cap : 0.0;
default_input_pin_cap : 0.0;
default_output_pin_cap : 0.0;
input_threshold_pct_rise : 50.0;
input_threshold_pct_fall : 50.0;
output_threshold_pct_rise : 50.0;
output_threshold_pct_fall : 50.0;
slew_lower_threshold_pct_fall : 30.0;
slew_lower_threshold_pct_rise : 30.0;
slew_upper_threshold_pct_fall : 70.0;
slew_upper_threshold_pct_rise : 70.0;
lu_table_template (delay_template5x5) {
variable_1 : input_net_transition;
variable_2 : total_output_net_capacitance;
index_1 ("1,2,3,4,5");
index_2 ("1,2,3,4,5");
}
lu_table_template (delay_slew_template5) {
variable_1 : input_net_transition;
index_1 ("1,2,3,4,5");
}
37
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー Synopsys .libファイルファイルファイルファイル例例例例
cell (dc_2873) {
area : 0;
pin (I0) {
direction : input ;
capacitance : 0.00000;
clock : false;
}
pin (I1) {
direction : input ;
capacitance : 0.00000;
clock : false;
}
pin (O0) {
direction : output;
function : "(!I0) | (!I1)";
timing () {
related_pin : "I0";
timing_sense : negative_unate;
when : "(I1)";
sdf_cond : "(I1)";
cell_rise (delay_template5x5) {
index_1 ("0.06124, 0.08049, 0.09975, 0.11900, 0.13825");
index_2 ("0.00200, 0.01000, 0.05000, 0.10000, 0.25000");
values ("0.06139, 0.08030, 0.16571, 0.27246, 0.59090", ¥
"0.06903, 0.09057, 0.17616, 0.28257, 0.60094", ¥
"0.07620, 0.09948, 0.18683, 0.29282, 0.61105", ¥
"0.08280, 0.10801, 0.19753, 0.30332, 0.62124", ¥
"0.08956, 0.11574, 0.20863, 0.31395, 0.63153");
}
rise_transition (delay_template5x5) {
index_1 ("0.06124, 0.08049, 0.09975, 0.11900, 0.13825");
index_2 ("0.00200, 0.01000, 0.05000, 0.10000, 0.25000");
values ("0.02894, 0.04031, 0.11668, 0.21552, 0.51221", ¥
"0.03197, 0.04357, 0.11685, 0.21559, 0.51224", ¥
"0.03575, 0.04859, 0.11676, 0.21555, 0.51220", ¥
"0.03755, 0.05236, 0.11688, 0.21549, 0.51219", ¥
"0.04055, 0.05581, 0.11831, 0.21559, 0.51224");
}
cell_fall (delay_template5x5) {
index_1 ("0.13368, 0.15199, 0.17029, 0.18860, 0.20690");
index_2 ("0.00200, 0.01000, 0.05000, 0.10000, 0.25000");
values ("0.02814, 0.04897, 0.11932, 0.18146, 0.35360", ¥
"0.02688, 0.04897, 0.12340, 0.18868, 0.36060", ¥
"0.02561, 0.04885, 0.12680, 0.19531, 0.36768", ¥
"0.02407, 0.04828, 0.12966, 0.20134, 0.37477", ¥
"0.02237, 0.04748, 0.13223, 0.20683, 0.38193");
38
AccuCore スタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析デザインデザインデザインデザイン・・・・フローフローフローフロー
AccuCore
SmartSpice
(with API)
AccuCoreから
キャラクタライズ・フローSTA
Verilog
ネットリストからスタンド・アロンSTA
AccuCore
スタティックスタティックスタティックスタティック・・・・タイミングタイミングタイミングタイミング解析解析解析解析
スタティック・タイミング解析レポートクリティカル・パス Spiceネットリスト
Spiceネット
ゲート・レベルVerilog ネットリスト
39
ゲートレベル/フルチップ
スタティック・タイミング解析
� スタンド・アロンもしくは、AccuCoreからのデータを使用してキャラ
クタライズ・フローの一環としての実行が可能� キャラクタライズ・フローでは、トランジスタ・レベルのSpiceネットリ
ストから実行� タイミング・モデルおよびVerilogネットリストはキャラクタライズ・フ
ローより自動生成� スタンド・アロンからのフローでは、ゲート・レベル Verilog ネットリ
スト(SDF, SPFも含む)から実行
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 6666
AccuCoreAccuCore ゲートレベル/フルチップ STA
SmartSpice
STEP 6
40
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 6666-1
スタンド・アロン・フロー
• STEP 6-1-1: 入力ベリファイ• ライブラリ・ベリフィケーション – ライブラリのセルのタイミングの正確性をベリ
ファイします
• sta_verify_netlistコマンドを用いてVerilogネットリストとセル・ライブラリの接続をベリファイします
• STEP 6-1-2: コンフィグ・ファイルの作成、ベリファイ• コンフィグ・ファイルの作成
• sta_read_cfgコマンドを用いてコンフィグ・ファイルのベリファイを実行
• STEP 6-1-3: TCLスクリプトの作成• クリティカル・パスの認識、セットアップ・ホールドのタイミング・チェックがされ
たクリティカル・パスやサブ・クリティカル・パスをベリファイするためのコマンド・セット
• verify_checks と report_checksコマンドをスクリプトに使用します
• STEP 6-1-4: クロックのベリファイ• find_paths、print_clock_waveformsそして、report_warnings -allを使用してクロックの伝播遅延をベリファイします
41
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 6666-1
スタンドスタンドスタンドスタンド・・・・アロンアロンアロンアロン・・・・フローフローフローフロー
• STEP 6-1-5: 解析
• 指定ネットを解析し、サブクリティカル・ネット、フォルス・パスを解析
• STEP 6-1-6: 結果の評価
• print_spice_pathsコマンドを用いて、Spiceネットリストを出力
42
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 6666-2
キャラクタライズキャラクタライズキャラクタライズキャラクタライズ・・・・フローフローフローフロー
• STEP 6-2-1: コンフィグ・ファイルの作成
• in_file、lib_cmd、do_sta、clock_time、input_time、output_timeコマンドを利用してコンフィグ・ファイルを作成、デザインを
キャラクタライズします
• sta_read_configコマンドでコンフィグ・ファイルをベリファイ
• STEP 6-2-2: TCLスクリプトの作成
• gen_model file.cfgのコマンドとともに、クリティカル・パスの認識、セッ
トアップ・ホールドのタイミング・がされたクリティカル・パスやサブ・クリティカル・パスをベリファイするためのコマンド・セットをイニシャル・キャラクタライズに使用
• STEP 6-2-3: AccuCoreの実行、STAの実行
• gen_model file.cfgコマンドにより、分割されたデザイン・クラスター、ブロックを解析し、キャラクタライズを実行、STA用ライブラリを作成
43
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー STEP 6666-2
キャラクタライズキャラクタライズキャラクタライズキャラクタライズ・・・・フローフローフローフロー
• STEP 6-2-4: STAの実行結果を前段階で評価
• ディフォルトのレポートを解析し、TCLファイル、もしくは.cfgファイルに追加す
るレポートを出力させるコマンドを追加
• STEP 6-2-5: ユーザー・リクエストのレポートを調査
• verify_checksコマンドを用いてラッチの入力と、デザインのプライマリ出
力ピンに対してのタイミング制約を調査
• ネガティブ・マージンはタイミング違反を示しています
44
スタティック・タイミング解析実行後のレポート
� デザイン上の最長・最短パスをレポート� クロック・パスまたはデータ・パスを含むタイミング・チェック・レポー
ト� パスを基準としたネット・スラックもしくはゲート・ピン・スラック・レポ
ート� デザイン・ネット上のワースト・ケースでの立ち上がり/立ち下がりア
ライヴァル・タイムをレポート
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー 解析後解析後解析後解析後ののののレポートレポートレポートレポート
45
Spiceデッキ生成� クリティカル・パスのSpiceデッキ生成� クロック・ツリーのSpiceデッキ生成
AccuCore デザインデザインデザインデザイン・・・・フローフローフローフロー Spiceデッキデッキデッキデッキ生成生成生成生成
46
• シグナル・インテグリティ (SI)のサポート強化
� ノイズ・キャラクタライズ用Cadence社 ECSM フォーマットファイル
• ノイズおよびIRドロップの解析が可能
• Cadence社 SignalStormTM / CeltIcTM に対応
� ノイズ・キャラクタライズ用Synopsys社 CCS フォーマットファイル
• ノイズおよびIRドロップの解析が可能
• Synopsys社 Liberty フォーマットのノイズ・モデル
• Synopsys社 Galaxy SITM / PrimeTime SITM に対応
AccuCell and AccuCore ロードロードロードロード・・・・マップマップマップマップ
47
• パフォーマンス強化
� Firebird データベースを統合し、インクリメンタル・キャラクタライゼーショ
ンの実行
� Sun Microsystems の提唱する Grid エンジンを採用
� 並列処理が可能な、マルチ・スレッド実行
• 外部SPICE
� 外部SPICEエンジンとしてSpectreを追加
AccuCell / AccuCore ロードロードロードロード・・・・マップマップマップマップ
48
• Real-Time Remixは、トークンおよびタイム・ベース(年間,月間などの時間単位)のフレキシブルな革命的な新ライセンス・ソリューション
• 全てのシングルスレッド製品およびマルチスレッド製品それぞれに必要な トークン数が決まっており、IC 設計チームは、所有するトークンの合計数の範囲内で自由にSimucad製品を組み合わせて使用可能
• ワイド・エリア・ネットワーク(WAN)でつながれた世界中のすべての設計オフィス間で共同使用可能
• すでに購入済みの、あるいは、将来追加した従来の永久ライセンスや期間限定ライセンスは、Real-Time Remix と併用可能
• Linux 32、Linux 64、Solaris 32、Solaris 64、およびWindowsなどマルチ・プラットフォーム対応ライセンスです
• EDA トークンの年間固定費には、保守料金(技術サポートおよびバージョンアップ)が含まれています
トークントークントークントークン・・・・ライセンスライセンスライセンスライセンス
49
• 製品別およびユーザ別の使用ピークを示すヒストグラム表示や、データベースのエクスポート等の機能を装備したライセンス管理ツールを提供
• 設計チームの規模拡大に応じて、必要な期間のみ、トークンを追加購入することができます
トークントークントークントークン・・・・ライセンスライセンスライセンスライセンス