在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

NCSIM、VCS和QuestaSim后仿真如何屏蔽冗余的違例信息呢?

sanyue7758 ? 來源:硅芯思見 ? 2024-01-03 09:43 ? 次閱讀

在進行數字電路仿真時,經常會遇到很多時序為例,通常這些違例都是由網表中大量的時序檢查報出的。這些常見的時序檢查系統任務如下表所示:

時序檢查系統任務 說明
$setuphold 檢查建立時間和保持時間,當setup違例時,出現此信息
$setuphold 檢查建立時間和保持時間,當hold違例時,出現此信息
$setup 檢查建立時間
$hold 檢查保持時間
$recovery 檢查恢復時間(以復位信號為例,可以理解為rst必須在時鐘沿之前的有效的最小時間),一般用于復位、置位等
$removal 檢查撤銷時間(以復位信號為例,可以理解為rst必須在時鐘沿之后的有效的最小時間),一般用于復位、置位等
$recrem 檢查恢復和撤銷時間,一般常用于復位、置位等
$period 檢查周期信號的最小周期,一般常用于時鐘
$skew 檢查兩個信號之間的最大時間差
$width 檢查脈沖的最小寬度

因為在仿真的過程中,有些報出的違例我們是不關心的,這些信息的大量出現可能會淹沒我們真正需要觀測的信息,為此需要在仿真時講這些冗余的信息屏蔽掉。

針對大家經常使用的NCSIM、VCS和ModelSim(QuestaSim),下文將說明如何在這兩種EDA工具中屏蔽冗余的違例信息。

1 NCSIM

屏蔽使用的命令格式:

% irun-tfile myfile.tfile[other_options] source_files

上述命令中myfile.tfile中包含屏蔽信息,其中主要內容如下表:

參數 說明
-iopath
+iopath
不使能路徑延遲
使能路徑延遲
-prim
+prim
不使能指定的instance中原語的延遲
使能指定的instance中原語的延遲
-port
+port
刪除指定的instance的port延遲
使能指定的instance的port延遲
[SystemTimingTask] -tcheck
[SystemTimingTask] +tcheck
屏蔽掉不關心的違例

【示例】*.tfile中內容格式

PATH top.foo -tcheck // 屏蔽所有關于foo的時序檢查

PATH top.foo $setup $hold -tcheck // 屏蔽所有關于foo的setup和hold時序檢查

PATH :SOC.lcsoc.syn_reg $setup -tcheck // 屏蔽:SOC.lcsoc.syn_reg的setup檢查

注意:如果要屏蔽其他檢查,只需將示例中的$setup或者$hold換成SystemTimingTask中的任何一個即可。

2 VCS

命令格式如下:

tcheck <-msg | -xgen> [-disable | -enable] [-r]

tcheck -query instance | port

上述命令使用時需要注意以下幾點:

1>在simv的option中,即 % ./simv -ucli run.tcl,其中run.tcl中增加需要屏蔽的信號,將tcheck中的內容增加的run.tcl中;

2>該命令僅對Verilog/SystemVerilog使用;

3>該命令使用時,待檢測的源代碼必須包括時序檢查系統任務,否則將會產生warning信息;

上述命令格式中使用的相關參數的說明如下表所示。

參數 說明
instance | port 要被屏蔽的時序檢查的實例或者端口的全路徑名稱
tcheck_type 指定需要進行屏蔽的時序檢查類型:HOLD|SETUP|SETUPHOLD|WIDTH|RECOVERY|REMOVAL|RECREM|PERIOD|SKEW|ALL
-disable | -enable 使能或不使能相關時序檢查,如果要求屏蔽其中SETUP,則在tcheck_type指定SETUP后,需要在tcheck中使用-disable
-msg | -xgen A.指定的實例或者端口違例信息是否被顯示
B.指定的實例或者端口notifier信息是否被顯示
-r 指定是否遞歸式的對所有指定的instance及其以下層次所有的instance進行時序檢查

【示例】(可以通過-ucli do.tcl直接添加到simv中)

tcheck {top_tb.C40010001} WIDTH -msg -disable

#對top_tb.C40010001不進行WIDTH時序檢查,即屏蔽掉top_tb.C40010001的WIDTH檢查

tcheck {top_tb.C40010001} -query

#顯示對top_tb.C40010001的時序檢查信息

3 ModelSim(QuestaSim)

命令格式如下:

tcheck_set[-quiet] [{-m | -n}] [-r [-v]] [ | ]

上述命令格式中使用的相關參數的說明如下表所示。

參數 說明
nstance> 實例(模塊或者線網)的全路徑名稱,該項是必須的
-m | -n 指定屏蔽操作的對象是模塊還是線網,該項可選。
-m:此時命令中指定的instance是module(Verilog)或者entity(VHDL),此時的屏蔽操作將作用于指定的模塊的所有實例
-n:此時命令中指定的instance指向一個線網,tcheck_set將應用于所有連接該線網的實例
-quiet 用于指定配置信息不顯示于Transcript窗口,該參數的指定必須先于,該項可選
-r [-v] 指定是否遞歸式的對所有指定的instance及其以下層次所有的instance進行時序檢查,默認情況下,遞歸過程中被改變的instance的信息不會輸出到Transcript,可以用-v將這些信息輸出至Transcript中,該項可選
tcheck_type 指定需要進行屏蔽的時序檢查類型:HOLD|SETUP|SETUPHOLD|WIDTH|RECOVERY|REMOVAL|RECREM|PERIOD|SKEW|ALL
使能或者禁止是否將指定的時序檢查違例信息和不定態產生的信息報出,該項可設置的值為“ON”和“OFF”,該項可選
控制指定時序檢查的違例信息和不定態信息,其中必須先于,其中可設置的值為“ON”和“OFF”,該項可選

【示例】

tcheck_set top_tb.u1.u2 “(WIDTH (negedge clk))”OFF

#示例中,top_tb.u1.u2下的(WIDTH (negedge clk))檢查產生的所有信息都將被屏蔽掉。如果對于示例中時序檢查表達式的寫法不了解,可以使用“tcheck_statustop_tb.u1.u2”來查看top_tb.u1.u2下所有的時序檢查表達式,具體應用如下所示:

% tcheck_status top_tb.u1.u2

% #0 (WIDTH (negedge clk)) MsgOn XOn

% #1 (WIDTH (posedge clk)) MsgOn XOn

% #2 (SETUP (negedge d)(posedge clk)) MsgOn XOFF

% #3 (HOLD (posedge clk)(negedge d)) MsgOn XOFF

最后在使用上述EDA工具時,因為不同的工具提供的路徑不同,在具體使用時,一定要使用對應的工具獲得該工具可識別的路徑信息。







審核編輯:劉清

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

    關注

    4

    文章

    268

    瀏覽量

    31942
  • soc
    soc
    +關注

    關注

    38

    文章

    4206

    瀏覽量

    219123
  • 數字電路
    +關注

    關注

    193

    文章

    1629

    瀏覽量

    80830
  • VCS
    VCS
    +關注

    關注

    0

    文章

    80

    瀏覽量

    9650

原文標題:NCSIM、VCS和QuestaSim(ModelSim)后仿真如何屏蔽違例

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

收藏 人收藏

    評論

    相關推薦

    VCS仿真指南(第二版).pdf

    VCS-verilog compiled simulator是synopsys公司的產品.其仿真速度相當快,而且支持多種調用方式;使用的步驟和modelsim類似,都要先做編譯,再調用仿真.V
    發表于 12-15 10:27

    ISE設計,questasim仿真時庫編譯的問題

    設計中用到了GTP_DUAL,利用questasim仿真。Simulation時報錯,說找不到GTP_DUAL_fast.v這個文件。在xilinx的安裝目錄下mti文件中搜索到
    發表于 08-30 16:04

    nanosim和vcs混合仿真的過程是怎樣的?

    nanosim和vcs為什么可以聯合起來進行數字模擬混合仿真?nanosim和vcs混合仿真的過程是怎樣的?
    發表于 06-18 08:28

    VCS仿真卡住,為什么無法生成verdi波形文件?

    在make com編譯成功,terminal卡住了一直沒有反應,這是什么情況有大佬知道嗎?VCS仿真卡住,為什么無法生成verdi波形文件?
    發表于 06-21 08:14

    基于linux系統的VCS使用及仿真說明

    最近在學習VCS,現將VCS的一些使用心得記錄下來。VCS是synopsys的仿真verilog的仿真器?;趌inux系統。有命令行模式和
    發表于 07-18 16:18

    ModelSim和QuestaSim功能簡介及應用

    ModelSim和QuestaSim功能簡介及應用 ModelSim是工業界最優秀的語言仿真器,它提供最友好的調試環境
    發表于 04-29 09:07 ?2w次閱讀
    ModelSim和<b class='flag-5'>QuestaSim</b>功能簡介及應用

    基于linux系統實現的vivado調用VCS仿真教程

    在linux系統上實現vivado調用VCS仿真教程 作用:vivado調用VCS仿真可以加快工程的仿真和調試,提高效率。 前期準備:確認安
    的頭像 發表于 07-05 03:30 ?1.2w次閱讀
    基于linux系統實現的vivado調用<b class='flag-5'>VCS</b><b class='flag-5'>仿真</b>教程

    基于FPGA的仿真如何工作

    工程師更廣泛地理解基于FPGA的仿真,因為工程師習慣于使用FPGA進行設計。對基于處理器的仿真器的理解不太了解,而且有大量錯誤信息的例子比比皆是。本文將嘗試消除解釋基于處理器的仿真如
    的頭像 發表于 09-14 12:54 ?1.1w次閱讀
    基于FPGA的<b class='flag-5'>仿真如</b>何工作

    vcs學習筆記(常用選項/仿真流程/代碼覆蓋率/綜合仿真/圖一樂技巧)

    VCS是編譯型verilog仿真器,VCS先將verilog/systemverilog文件轉化為C文件,在linux下編譯生成的可執行文./simv即可得到仿真結果。
    的頭像 發表于 05-23 16:04 ?1w次閱讀

    SpinalHDL運行VCS+Vivado相關仿真

    本篇文章來源于微信群中的網友,分享下在SpinalHDL里如何絲滑的運行VCS跑Vivado相關仿真。自此仿真設計一體化不是問題。
    的頭像 發表于 08-10 09:15 ?2597次閱讀

    淺談VCS的兩種仿真flow

    幾乎所有的芯片設計、芯片驗證工程師,每天都在和VCS打交道,但是由于驗證環境的統一化管理,一般將不同的編譯仿真選項集成在一個文件里,只需要一兩個人維護即可。所以大部分人比較少有機會去深入地學習VCS
    的頭像 發表于 01-10 11:20 ?4011次閱讀

    使用Vivado調用questasim仿真報錯的原因及其解決辦法

    有一天使用Vivado調用questasim(modelsim估計也一樣),仿真報錯
    的頭像 發表于 05-08 17:12 ?3345次閱讀

    如何在EDA工具中屏蔽冗余違例信息

    在進行數字電路仿真時,經常會遇到很多時序為例,通常這些違例都是由網表中大量的時序檢查報出的。這些常見的時序檢查系統任務如下表所示:
    的頭像 發表于 08-19 10:01 ?1228次閱讀

    Questasim與Visualizer的livesim仿真如何啟動?

    Live-Simulation (live-sim)模式允許Visualizer調試環境與Questasim進行交互操作,此模式將Visualizer GUI與Questasim仿真相結合,因此可以在線調試當前
    的頭像 發表于 10-10 11:33 ?707次閱讀
    <b class='flag-5'>Questasim</b>與Visualizer的livesim<b class='flag-5'>仿真如</b>何啟動<b class='flag-5'>呢</b>?

    VCS 仿真option 解析

    VCS仿真選項分編譯(compile-time)選項和運行(run-time)選項。編譯選項用于RTL/TB的編譯,一遍是編譯了就定了,不能在仿真中更改其特性,例如define等等。
    的頭像 發表于 01-06 10:19 ?3198次閱讀
    主站蜘蛛池模板: 成人美女隐私免费 | 中出丰满大乳中文字幕 | 欧美色人阁| 天堂精品在线 | 天天操人人爱 | 热re久久精品国产99热 | 欧美性生交xxxxx久久久 | 黄在线看| 欧美综合久久 | 亚洲成人av | 九九九国产在线 | 黄色成人在线网站 | 四虎在线最新地址公告 | 国产成人a | 欧美成人鲁丝片在线观看 | 性欧美xxxx视频在线观看 | 九九精品在线 | 国产午夜视频高清 | 天天摸日日添狠狠添婷婷 | 被公侵犯肉体中文字幕一区二区 | 日韩一级片在线免费观看 | 伊人网在线视频 | 美女视频永久黄网站在线观看 | 视频在线观看一区 | 在线观看网站国产 | 中文字幕自拍 | 欧美影欧美影院免费观看视频 | 亚洲天堂婷婷 | 激情六月婷婷开心丁香开心 | 午夜精品视频 | 激情五月综合网 | 五月综合在线 | 五月婷婷在线免费观看 | h黄色| 毛片黄色| 91牛牛| 完整日本特级毛片 | 天天干天天天天 | 亚洲色图17p | 亚洲系列中文字幕一区二区 | 色多多网址 |