精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

芯片后仿及SDF反標

芯司機 ? 來源:數字ICer ? 2023-06-08 10:07 ? 次閱讀

后仿

相對于RTL仿真,門級仿真占用的計算資源雖然很多,但是在靜態時序檢查(STA)工具普遍應用之前,帶時序的動態門級仿真幾乎可以說是唯一的timing sign-off手段了。

那么在STA工具已經成熟的現在,門級仿真還有存在的必要嗎?為什么有些公司的設計流程中還包括門級仿真這個必需的步驟呢?

可能存在以下幾個原因:

檢查時序約束(SDC)的完備性— 防止約束的遺漏

檢查異步電路的時序—STA工具無能為力,異步處理部分在SDC約束文件中做的是fath_path處理,所以這部分時序是否滿足,STA工具并不會檢查也不會報出violation;

檢查網表的完備性—防止綜合、布局布線過程中的意外

為后續流程如功耗(Power)分析、壓降(IR Drop)分析提供波形—更準確

測試向量的仿真—只有門級網表才包含掃描鏈,DFT邏輯的插入是否導致功能出現問題;

門級仿真分為兩種:

一種是不帶時序反標的門級仿真(零延時仿真,綜合的網表就可以做,因為在布局布線之前,所以也叫前仿,這時由于hold沒有修,所以會出現不少時序違例的情況);

一種是帶時序反標(back-annotation)的門級仿真(布局布線之后的仿真,也叫后仿,這時的網表是后端做完布局布線,修補完timing的網表);
進行PR網表的后仿真時,我們需要告知仿真工具cell與cell之間的延遲,D端到Q端的延遲,這里就需要SDF文件!

前仿選項

+nospeicy
在仿真時忽略庫文件中指定的延時。

+delay_mode_zero
將標準庫單元中定義的延時替換為0。testbench中的 #延時也都被消除。

+notimingcheck時序檢查開關,比如setup/hold/width檢查等等,如使用了該option,則仿真時不檢查時序,行為類似于RTL仿真。
在PR未結束,sdf反標文件還沒準備好時,可用該選項忽略延時,可用于功能性的粗略檢查。
但真正跑后仿真時,不可使用該選項,否則仿真有效性大大降低。

后仿選項

+sdfverbose
顯示所有的sdf反標錯誤;

+no_notifier
可以關掉時序檢查產生的不定態。通過這個命令參數可以使時序檢查任務中檢測到時序違例后,不影響其參數列表中的notifier的值,從而避免了notifier變化引起udp輸出不定態的情況,該命令僅對notifier的值有影響,對于時序檢查任務檢測到的時序違例不產生任何影響;

+neg_tchk若要使用負延時檢查,在編譯設計時必須包含+neg_tchk選項。如果省略此選項,VCS將所有負延遲更改為0。

-negdelay
用于SDF文件中有負延遲,如果省略此選項,VCS將所有負延遲更改為0。

sdf文件反標

方法一

在makefile中調用,使用如下命令:

vcs+neg_tchk-negdelay-sdfmin|typ|maxfile.sdf

啟用SDF反標。在file.sdf中指定的最小值、類型或最大值中的一種,在實例instance_name上進行反標。

方法二 $sdf_annotate

使用$sdf_annotate將SDF文件反標到網表中:

$sdf_annotate("sdf_file"[,module_instance][,"sdf_configfile"][,"sdf_logfile"][,"mtm_spec"]
[,"scale_factors"][,"scale_type"]);

sdf_file:指定指向SDF文件的路徑;

module_instance:調用$sdf_annotate模塊實例的范圍。

sdf_configfile:指定SDF配置文件。

sdf_logfile:指定SDF log文件,可以使用+sdfverbose顯示所有的sdf反標錯誤。

mtm_spec:指定哪一種延遲類型,通常有三種min:typ:max,它的可能值是"MINIMUM", "TYPICAL", "MAXIMUM", or "TOOL_CONTROL"(默認值)。在仿真器讀入SDF的時候,要指定使用哪一組。避免出現指定的組的時序信息不存在的情況。

scale_factors:指定min:typ:max的縮放因子,默認為三個正實數“1.0:1.0:1.0”。

scale_type:指定SDF文件中在縮放前使用的延遲值。它可能的值是“FROM_TYPICAL”、“FROM_MIMINUM”、“FROM_MAXIMUM”和“FROM_MTM”(默認);

在tb中加載sdf文件

`ifdefSDF
initial
begin
$sdf_annotate("../../rtl/post_sim/file.sdf",tb,,"sdf.log",);
end
`endif

確認成功反標

e464c46c-058b-11ee-8a94-dac502259ad0.png

打印出Doing SDF annotation ...... Done

e471ae84-058b-11ee-8a94-dac502259ad0.png

其他

初始化寄存器的值

在vcs編譯選項里添加+vcs+initreg +random隨機化賦初值,可用于對初始狀態是x的寄存器。

導出VCD文件

VCD是不壓縮的文本格式,兼容性好,缺點是文件太大。因此后仿先寫出高壓縮比的FSDB文件,再轉成VCD。可指定轉換起止時間、結束時間。這樣一次后仿,就可以為不同的應用生成不同的VCD文件。

FSDB轉VCD的工具通常在Verdi的安裝目錄,用法:

fsdb2vcdxxx.fsdb-oxxx.vcd-bt100ns-et200ns

其中,-bt是begin time,-et是end time;

關閉某些寄存器的時序檢查notiming.list

后仿過程中可能有一些不必要或者不想檢查的時序,尤其是跨時鐘域的兩級同步的第一級DFF出現所謂的時序違例,這是一種假的時序違例所以通常不關心它們是否有時序違例。

instance{tb.U_TOP.reg}{noTiming};

VCS +optconfigfile+notiming.list
可以用上面方法加載這個文件,這樣在后仿過程中將不對這些寄存器做時序檢查,避免不必要的時序問題而引起X態傳遞。

Note:

1.后仿開始前,一定要把詳細的SDF反標報告打印出來仔細檢查。需要把錯誤全部解決掉,警告視情況要解決大部分。帶時序的后仿,一定要注意仿真器是否關閉了notimingcheck和nospecify的選項。如果有nospecify,那么SDF中的時序信息就反標不到仿真模型中(仿真模型的時序類型定義在specify block中);如果有notimingcheck,那么后仿過程中就不檢查時序違例,后仿就失去了最大的意義。

2.帶時序的后仿開始階段,建議dump一些波形出來,看看波形上的延時和SDF中的延時信息是否保持一致,這有助于對反標過程的理解和后仿整體進度的把握。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    454

    文章

    50460

    瀏覽量

    421971
  • 仿真
    +關注

    關注

    50

    文章

    4048

    瀏覽量

    133431
  • RTL
    RTL
    +關注

    關注

    1

    文章

    385

    瀏覽量

    59710
  • 異步電路
    +關注

    關注

    2

    文章

    48

    瀏覽量

    11088
  • 時序約束
    +關注

    關注

    1

    文章

    115

    瀏覽量

    13409

原文標題:后仿

文章出處:【微信號:芯司機,微信公眾號:芯司機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    芯片仿SDF 3.0解析(三)

    本文接著解析SDF3.0的Timing Checks Entries、Timing Environment Entries兩個部分。
    的頭像 發表于 04-16 11:08 ?1513次閱讀
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b><b class='flag-5'>仿</b>之<b class='flag-5'>SDF</b> 3.0解析(三)

    關于POWERPCB元件編號ORCAD的研究

    `關于POWERPCB元件編號ORCAD的研究`
    發表于 08-20 14:38

    仿出現了10種警告。。。求助

    仿出現了x態,前仿過了。現在還沒帶sdf呢,考慮是異常的warning,但我警告太多了。。。有的警告有一百多個,截圖如下。各位大神幫忙看下,是哪種警告讓我
    發表于 05-30 16:10

    Cadence 16.5 Concept HDL原理圖每個元件出現CDS_PART_NAME信息

    Cadence 16.5 Concept HDL原理圖每個元件出現CDS_PART_NAME信息,整個原理圖看著非常凌亂,如圖所示。在原理圖打包Export physical完成
    發表于 04-01 00:29

    Cadence 16.5 Concept HDL原理圖打包電源、地網絡顯示為紅色

    Cadence 16.5 Concept HDL原理圖打包電源、地網絡顯示為紅色,如圖所示,是什么原因產生的呢?怎樣消除?求大神賜教,謝謝!!!
    發表于 04-01 01:09

    運行實現時序仿真重新生成sdf文件

    / I1(0:0:0)(0:0:0))當我重新運行實現時序仿真時,該sdf文件將重新生成實際/先前的延遲約束。有沒有辦法保留編輯過的sdf文件并模擬而不重新生成它?提前致謝以上來自于谷歌翻譯以下為原文
    發表于 11-07 11:30

    金橙子打卡labview打開發沒頭緒?c#封裝成dlllabview調用真香!

    對接會面臨很多數據類型和指針的調用問題。labview如何調用?我們的方法是直接用c#封裝dll提供labview調用。初始化與初始化函數名]返回值: 通用錯誤碼備注:]使用條件:1確保庫連接成功.2確保有庫函數的地址.使用方法:l]l 再由_wsplitpath分解
    發表于 07-26 01:18

    如何將PT產生的SDF文件設計進行仿真?

    RT,現在后端已把PR數據導出交付給了前端,我想問問,如何將PT產生的SDF文件設計進行仿真呢?現在知道需要將SDF文件引入到test
    發表于 06-23 06:50

    SDF是什么?有何應用

    SDF-4.0隧道施工風機技術***隧道施工風機(SDF)系列
    發表于 09-02 09:09

    Python在IC中的應用——文本處理

    SDF仿中往往生成的log中會有一些違例信息,Timing violation路徑或者$setuphold違例,這些信息混雜在后仿log中。
    發表于 03-07 14:55 ?800次閱讀

    什么是數字后仿?淺談芯片數字后仿的那些事

    這是相對于數字前仿來說的。從概念上來說,數字驗證包含兩方面的內容,數字前仿和數字后仿
    的頭像 發表于 03-15 14:51 ?8907次閱讀

    解析SDF的Header Section信息與Cell Entries信息

    SDF文件是在VCS/NC-Verilog仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息。
    的頭像 發表于 05-06 09:54 ?2040次閱讀
    解析<b class='flag-5'>SDF</b>的Header Section信息與Cell Entries信息

    詳解芯片SDF文件 MCU芯片全流程設計

    SDF文件是在VCS/NC-Verilog仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息。
    發表于 05-08 10:30 ?1.1w次閱讀
    詳解<b class='flag-5'>芯片</b><b class='flag-5'>SDF</b>文件 MCU<b class='flag-5'>芯片</b>全流程設計

    芯片仿SDF 3.0解析

    SDF文件是在VCS/NC-Verilog仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息,所以如果SDF文件
    的頭像 發表于 12-18 09:56 ?1116次閱讀
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b><b class='flag-5'>仿</b>之<b class='flag-5'>SDF</b> 3.0解析

    芯片仿真要點

    sign-off,寫出SDF3.0用以后仿真,搭建仿真的驗證環境,添加sc/io/macro的verilog model,仿真輸出VCD給Redhawk/Voltus做功耗/IR Drop分析。
    的頭像 發表于 10-23 09:50 ?360次閱讀
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b>仿真要點