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

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

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

3天內(nèi)不再提示

Modelsim的仿真之路

FPGA技術江湖 ? 來源:FPGA技術江湖 ? 作者:FPGA技術江湖 ? 2022-10-24 09:06 ? 次閱讀

01

對于仿真的激勵測試,其實會有代碼覆蓋率一說,不過我們平常可能更多是功能覆蓋,代碼覆蓋估計關注的人要少些,不過作為相對系統(tǒng)性的學習,還是大概看下這個功能吧~

02

涉及到的測試代碼文件就文末自行獲取了,直接開始正題吧。

把文件準備好后,打開Modelsim,將路徑切換到對于的文件路徑

例:cd E:/Soft_File/Sim_File/coverage

接著創(chuàng)建工作庫(work)=> 編譯.v文件(指定覆蓋測試的類項)

vlib work 
vlog *.v +cover=bcesxf

附:代碼覆蓋率,在Modelsim中提供了以下幾種覆蓋的類型,簡單說明一下

A-語句覆蓋(Statement coverage):逐行統(tǒng)計每個語句的執(zhí)行情況

B-分支覆蓋(Branch coverage):統(tǒng)計每個條件“if/then/else”和“case”的執(zhí)行情況

C-條件覆蓋(Condition coverage):算是分支覆蓋的擴展吧,把判斷條件都覆蓋到

D-表達式覆蓋(Expression coverage):和條件覆蓋又有點相似,就表達式左右側的比對

E-跳轉覆蓋(Toggle coverage):邏輯節(jié)點的跳轉,狀態(tài)發(fā)生變化的意思

F-FSM覆蓋(FSM coverage):有限狀態(tài)機的狀態(tài)、轉換還有路徑統(tǒng)計

G-SystemVerilog類覆蓋(SystemVerilog class coverage):這部分沒咋涉及過,應該是SV的類統(tǒng)計

然后命令中的 +cover=bcesxf大概就知道是指什么了吧?除了x要特殊一丟丟

branch, condition,expression, statement, extended toggle, finite state machine

03

啟動覆蓋測試吧~

vsim -coverage test_sm

先關注這個界面,通過這個界面可以執(zhí)行指定的的覆蓋測試,然后分析的結果會以那個小圖標的形式顯示出來,或者,然后有對應的右下標字母,字母和剛剛介紹的一個意思,還會有個E的字樣,就是被排除在覆蓋測試之外產(chǎn)生的一些狀態(tài)。

89ac5902-5331-11ed-a3b6-dac502259ad0.png

可以在這選對應的覆蓋測試

89bab89e-5331-11ed-a3b6-dac502259ad0.png

稍微運行一下,做語句覆蓋測試,結果發(fā)生改變

run 1ms

89c1a1f4-5331-11ed-a3b6-dac502259ad0.png

在Files的窗口也能看到相應的代碼覆蓋率

89f203da-5331-11ed-a3b6-dac502259ad0.png

打開sim的窗口,選中不同的目標,在右側的分析窗口會變成相應的代碼覆蓋情況

89f94a32-5331-11ed-a3b6-dac502259ad0.png

直接雙擊對應的目標,會直接顯示其在源碼中的位置

8a0175b8-5331-11ed-a3b6-dac502259ad0.png

接著在分析界面將覆蓋類型換成Toggle,然后選中test_sm,分析界面再點dat,詳細說明的界面就會出現(xiàn)對應的跳轉情況

8a08a7e8-5331-11ed-a3b6-dac502259ad0.png

要是沒這個Details的界面,可以在菜單里,View > Coverage > Details 將其使能

8a10f18c-5331-11ed-a3b6-dac502259ad0.png

切換到sim窗口,選中test_sm,然后View > Objects,再然后右鍵后Show All Columns

這時可以看到相應跳變的靜態(tài)指示

8a3b1552-5331-11ed-a3b6-dac502259ad0.png

04

在Files的界面中雙擊beh_sram.v打開源碼界面,然后看到40行,條件覆蓋沒滿足的情況,點Xc那個圖標,在詳細界面可以看到對應的描述

8a43a258-5331-11ed-a3b6-dac502259ad0.png

接著將覆蓋次數(shù)顯示出來,Tools > Code Coverage > Show coverage numbers

8a4db7a2-5331-11ed-a3b6-dac502259ad0.png

軟件大小有點問題,50001只顯示到了0001......

8a58845c-5331-11ed-a3b6-dac502259ad0.png

關掉數(shù)字的顯示,恢復圖標顯示的情況,鼠標直接放到對應的代碼位置,也能顯示

8a81c560-5331-11ed-a3b6-dac502259ad0.png

05

在Files界面,可以選定要排除覆蓋測試的文件,右鍵 > Code Coverage > Exclude Selected File ,Cancel...就可以取消排除。

8aac1ff4-5331-11ed-a3b6-dac502259ad0.png

然后可以看到整體發(fā)生變化,代碼界面的√和×都變?yōu)榱薊的字樣

8ab34374-5331-11ed-a3b6-dac502259ad0.png

E*指的就是被排除在外,但測試時還是被擊中過,E就是完全被排除在外了,可以點那個圖標,然后看詳細描述里的信息理解。

06

完成代碼覆蓋的測試后,可以將其導出,Tools > Coverage Report > Text ,類型就看自己需要了

(也可以在Instance, sim, files 界面右鍵找對應的導出鍵)

8abcd042-5331-11ed-a3b6-dac502259ad0.png

根據(jù)要的內(nèi)容做報告

8ac56554-5331-11ed-a3b6-dac502259ad0.png

導出后,文件內(nèi)容

8ad8a0e2-5331-11ed-a3b6-dac502259ad0.png

導出那個HTML就相對圖形化顯示

8adf0fcc-5331-11ed-a3b6-dac502259ad0.png

8ae4cdea-5331-11ed-a3b6-dac502259ad0.png

如果要把使用了排除覆蓋測試的文件狀態(tài)也導出,就可以用這個

8b09963e-5331-11ed-a3b6-dac502259ad0.png

基本就這樣了,結束本次仿真吧~

quit -sim

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 仿真
    +關注

    關注

    50

    文章

    4129

    瀏覽量

    134070
  • ModelSim
    +關注

    關注

    5

    文章

    174

    瀏覽量

    47401
  • 代碼
    +關注

    關注

    30

    文章

    4837

    瀏覽量

    69130

原文標題:Modelsim的仿真之路(代碼覆蓋率)

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Altera ModelSim 6.5仿真入門教程

    Altera ModelSim 6.5仿真入門教程,需要的可自行下載。 平臺 軟件:ModelSim-Altera 6.5e (Quartus II 10.0) Starter Edition 內(nèi)容 1 設計流程 使用
    發(fā)表于 08-15 15:40 ?255次下載
    Altera <b class='flag-5'>ModelSim</b> 6.5<b class='flag-5'>仿真</b>入門教程

    Modelsim的功能仿真和時序仿真

    ModelSim 進行功能仿真,進行功能仿真首先要檢查設計的語法是否正確;其次檢查代碼是否達到設計的功能要求。下文主要介紹仿真步驟和測試激勵的加載。
    發(fā)表于 11-13 15:35 ?9480次閱讀

    MODELSIM仿真(適合xilinx ISE)

    基于Xilinx ISE的modelsim仿真教程
    發(fā)表于 11-30 15:52 ?8次下載

    使用 ModelSim 進行設計仿真詳解

    本章為ModelSim的初級教程,讀者讀完本章可以較為熟練的使用ModelSim進行設計仿真,本章沒有也不可能涉及ModelSim的各個方面,要想全面的掌握
    發(fā)表于 12-24 18:29 ?0次下載

    modelsim仿真詳細過程(功能仿真與時序仿真

    modelsim仿真詳細過程(功能仿真與時序仿真).ModelSim不僅可以用于數(shù)字電路系統(tǒng)設計的功能仿
    發(fā)表于 12-19 11:14 ?6.8w次閱讀
    <b class='flag-5'>modelsim</b><b class='flag-5'>仿真</b>詳細過程(功能<b class='flag-5'>仿真</b>與時序<b class='flag-5'>仿真</b>)

    仿真軟件ModelSim及其應用,ModelSim仿真流程

    ModelSim不僅可以用于數(shù)字電路系統(tǒng)設計的功能仿真,還可以應用于數(shù)字電路系統(tǒng)設計的時序仿真ModelSim的使用中,最基本的步驟包括創(chuàng)建工程、編寫源代碼、編譯、啟動
    的頭像 發(fā)表于 12-29 11:35 ?9708次閱讀

    Modelsim仿真教程Modelsim的基礎入門基礎教程免費下載

    筆者一直以來都在糾結,自己是否要為仿真編輯相關的教程呢?一般而言,Modelsim等價仿真已經(jīng)成為大眾的常識,但是學習仿真是否學習Modelsim
    發(fā)表于 04-30 18:24 ?23次下載
    <b class='flag-5'>Modelsim</b><b class='flag-5'>仿真</b>教程<b class='flag-5'>Modelsim</b>的基礎入門基礎教程免費下載

    Modelsim與MATLAB的聯(lián)合仿真

    總體思想是現(xiàn)在 MATLAB 中產(chǎn)生仿真所需要的輸入信號,以十六進制形式存放在數(shù)據(jù)文件中,在modelsim 中用 vhdl 語言編寫測試文件,做時序仿真,最后將結果存入另外一個數(shù)據(jù)文件,最后在 matlab中將
    發(fā)表于 06-01 10:31 ?33次下載

    基于ModelSim使用二聯(lián)合Quarus自動仿真教程

    3 ModelSim工程實戰(zhàn)之自動仿真說完了 ModelSim 的使用流程,接下來我們將會對每個流程進行詳細的操作演示,一步步、手把手帶領大家學習使用 ModelSim 軟件。首先我們
    的頭像 發(fā)表于 07-23 10:51 ?2127次閱讀
    基于<b class='flag-5'>ModelSim</b>使用二聯(lián)合Quarus自動<b class='flag-5'>仿真</b>教程

    基于ModelSim使用四ModelSim手動仿真教程

    4.1 新建仿真工程 在開始動手仿真之前,首先,我們需要創(chuàng)建一個文件夾用來放置我們的 ModelSim 仿真工程文件,這里我們就在之前創(chuàng)建的 Quartus 工程目錄下的 simula
    的頭像 發(fā)表于 07-23 11:10 ?4193次閱讀

    如何夾帶modelsim仿真波形白底黑線

    Modelsim使用技巧—波形白底黑線設置 在發(fā)表期刊或者論文時,我們需要夾帶modelsim仿真波形在我們的論文里,在modelsim默認模式下的波形一般是黑底綠線白字,如圖1所示
    的頭像 發(fā)表于 08-26 11:23 ?4012次閱讀

    ModelSim手動仿真教程

    在開始動手仿真之前,首先,我們需要創(chuàng)建一個文件夾用來放置我們的 ModelSim 仿真工程文件,這里我們就在之前創(chuàng)建的 Quartus 工程目錄下的 simulation 文件夾中創(chuàng)建一個
    的頭像 發(fā)表于 07-11 10:58 ?5256次閱讀

    芯片設計之Modelsim仿真工具

    Modelsim仿真將設計以樹狀表示,設計中的每一個實體,每一個module、每一個進程(always塊、initial塊等)在Modelsim仿真中以對象的形式展現(xiàn)。
    的頭像 發(fā)表于 08-12 15:04 ?2690次閱讀

    Modelsim仿真之路(Memory小技能)

    許久沒更新了,間歇性來寫寫,還是繼續(xù)Modelsim中關于內(nèi)存的操作,涉及的文件可在文末自行獲取,本篇對應memory的文件夾。
    的頭像 發(fā)表于 10-24 10:16 ?1547次閱讀

    Vivado調(diào)用Modelsim仿真

    Modelsim是十分常用的外部仿真工具,在Vivado中也可以調(diào)用Modelsim進行仿真,下面將介紹如何對vivado進行配置并調(diào)用Models
    的頭像 發(fā)表于 07-24 09:04 ?3985次閱讀
    Vivado調(diào)用<b class='flag-5'>Modelsim</b><b class='flag-5'>仿真</b>
    主站蜘蛛池模板: 国产精品夜夜春夜夜 | 加勒比一本大道香蕉在线视频 | 91伊人网| 色精品一区二区三区 | 久久久午夜毛片免费 | 亚洲一区二区综合 | 欧美日本一区二区三区生 | 久久国产精品网 | 日本动漫在线看 | 中文字幕天天躁夜夜狠狠综合 | 天堂资源网 | 91寡妇天天综合久久影院 | 免费精品美女久久久久久久久久 | 五月综合激情网 | 亚洲三级在线视频 | 拍拍拍无档又黄又爽视频 | 奇米激情| 亚洲qingse | 在线电影亚洲 | 狠狠色婷婷丁香六月 | 看毛片网 | 伊人久久大线蕉香港三级 | 国产三级视频 | 色极影院 | 久久婷婷色一区二区三区 | 激情六月婷婷 | 青草国产在线视频 | 久久免费看视频 | 色的视频网站 | 黑人40厘米全进去xxxx猛交 | 成人毛片一区二区三区 | 国产成年网站v片在线观看 国产成人91青青草原精品 | 精品国产成人三级在线观看 | 日韩成人毛片高清视频免费看 | 欧美在线激情 | 色播影院性播影院私人影院 | 亚洲日本一区二区三区在线不卡 | 黄色免费网站在线观看 | 亚州色吧| 午夜一级毛片免费视频 | 国产三级精品视频 |