INNOVUS/ICC2吐出的netlist經過Formal/LEC驗證后,Star-RC/QRC抽取RC寄生參數文件并讀入到Tempus/PT分別做func/mbist/scan時序sign-off,寫出SDF3.0用以后仿真,搭建后仿真的驗證環境,添加sc/io/macro的verilog model,仿真輸出VCD給Redhawk/Voltus做功耗/IR Drop分析。本文簡要敘述下后仿真要點:
-debug選項,為了導出VPD通常選擇-debug_pp;
-R表示編譯之后立即運行仿真;
-gui表示在仿真0時刻打開DVE界面;
-l表示記錄編譯過程日志,后跟日志文件名;
+incdir+表示文件搜索路徑;
+v2k表示支持verilog 2001標準;
-top設置編譯頂層模塊,后跟頂層module名,不是文件名;
-negdelay
SDF文件中有負延遲時,若不加-negdelay會出現SDF Error: SDF Error: NegativeDELAY ignored and replaced by 0.
即VCS將負延時忽略,用0取代負值。加參數-negdelay 可消除負延遲導致的error,變成warning,但最終都不影響設計。
SDF Warning:Negative IOPATH DELAY A to Y ignored.
+neg_tchk支持負延遲檢查,主要是檢查holdtime,否則反標中會把負值忽略為0
標準單元庫文件有兩種,譬如tsmc18_neg和tsmc18,前者支持neg_tchk負延時檢查,后者不支持。因為hold time check的值是負的,所以要進行negative timingcheck,否則默認將會使負值的hold time check改為0。為了滿足對hold time負值的檢查,在vcs仿真時需加上+neg_tchk這個option。
如果不加的話會產生下面的問題:
+maxdelays用SDF文件中的延遲,取代仿真庫中的延時(仿真庫中通常是建立時間1ns,保持時間0.5ns),取SDF文件中的最大延遲;
+mindelays用SDF文件中的延遲,取代仿真庫中的延時,取SDF文件中的最小延遲(保持時間檢查);
實際上,我們會出ss、ff、tt等數個sdf,每個sdf里面都只有類似{max::max}形式,因此,每個sdf只對應一種ss或ff形式的延時反標。
+sdfverbose顯示所有的sdf反標錯誤
+no_notifier關閉時序檢查函數中的不定態生成傳播,即通過這個參數,如果有時序違規,控制臺會報告,但不會影響邏輯功能的正確輸出。
+nospecify 消除所有延遲,只做網表的功能仿真可以用;
+notimingchecks只是消除延遲違規斷言,避免輸出不定態,但延遲還在。因此+nospecify的作用包括了+notimingchecks;
注意:+nospecify,加上該選項之后,所有的線延遲以及標準單元verilog文件中的固有延遲都沒有了,如果只是單純的不加sdf文件的話,標準單元verilog文件中的specify延遲還是有的。
+delay_mode_zero: Change all the delay specifications on all gates,switches, and continuous assignments to zero and change all module path delays to zero.
-
芯片
+關注
關注
459文章
51828瀏覽量
432251 -
仿真
+關注
關注
51文章
4189瀏覽量
134934 -
函數
+關注
關注
3文章
4361瀏覽量
63621 -
編譯
+關注
關注
0文章
672瀏覽量
33456
原文標題:芯片后仿(一)
文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
一文掌握集成電路封裝熱仿真要點

STM32F4系列有對PI/SI仿真要求的文件嗎?
proteus 7可以仿真msp430f249嗎?哪位大神可以幫我解釋一下,msp430f249仿真要用哪個版本?感謝
仿真-ROHM Solution Simulator 仿真的執行

評論