国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

使用VCS兩種仿真flow的基本步驟

路科驗證 ? 來源:路科驗證 ? 作者:路科驗證 ? 2022-05-07 14:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

幾乎所有的芯片設計、芯片驗證工程師,每天都在和VCS打交道,但是由于驗證環境的統一化管理,一般將不同的編譯仿真選項集成在一個文件里,只需要一兩個人維護即可。所以大部分人比較少有機會去深入地學習VCS的仿真flow。基于此,本文將介紹VCS仿真的兩種flow,概述這兩種flow分別做了哪些事!

VCS是一個高性能、高容量的編譯代碼仿真器,它將高級抽象的驗證技術集成到一個開放的本地平臺中。它能夠分析、編譯和編譯Verilog、VHDL、SystemVerilogOpenVera所描述的design,并且還提供了一組仿真和調試功能來驗證design,這些特性提供了源代碼級debug和仿真結果。支持原生測試平臺、SystemVerilog、驗證規劃、覆蓋率分析和收斂。

除了標準Verilog、VHDL和混合HDL和SystemVerilog編譯和仿真功能,VCS包括以下集成的功能和工具集:

SystemC

Verdi

Unified Command-lineInterface (UCLI)

Built-In CoverageMetrics

DirectC Interface

VCS還可以與第三方工具集成,如Specman、Denali和其他加速和仿真系統。

下面介紹VCS的兩種仿真flow:two-step flowthree-step flow
  • two-step flow
只支持VerilogHDL和SystemVerilog設計,包括兩個步驟: compilation 編譯simulation 仿真 compilation:編譯是仿真design的第一步,此時VCS構建實例層次結構并生成一個二進制可執行的simv,之后用于仿真。在此階段,我們可以選擇以優化模式調試模式編譯design。

使用vcs,語法如下:

vcs [compileoptions] Verilog_files

常用選項如下:

-h or -help

列出最常用的VCS編譯和運行時選項的描述

-ID

返回有用的信息,如VCS版本和構建日期,VCS編譯器版本,以及工作站名稱、平臺和主機ID

-v filename

指定Verilog庫文件,VCS在這個文件中查找模塊定義和在源代碼中找到的UDP實例

-y directory

指定Verilog庫目錄,VCS在這個目錄的源文件中搜索模塊定義和UDP實例。VCS在這個目錄中搜索與實例中模塊或UDP標識符同名的文件(不是實例名)。如果找到了這個文件,VCS會在文件中搜索模塊或UDP定義來解析實例

ps:如果你在不同的庫中有多個同名的模塊,VCS會選擇用第一個-y選項指定的庫中定義的模塊

+incdir+directory+

指定VCS搜索包含文件的directory目錄,可以使用加號(+)字符指定多個目錄

+inbext+extension+

指定VCS只在庫目錄中搜索具有指定文件擴展名的文件,可以指定多個擴展名,用加號(+)分隔擴展名。例如,+libext+.v+ .V+,指定在庫中搜索擴展名為.v或.V的文件

+liborder

指定在VCS找到實例的庫的剩余部分中搜索未解析的模塊實例的模塊定義

-full64

支持64位模式下的編譯和仿真

-file filename

指定包含文件列表和編譯時選項的文件

-verdi

啟動verdi

-R

編譯后立即啟動仿真

-pvalue+parameter_hierarchical_name=value

將指定的參數更改為指定的值

-parameters filename

將文件中指定的參數更改為文件中指定的值

-notice

啟用詳細診斷消息

-q

quiet模式;抑制消息,例如關于VCS使用的C編譯器、VCS解析的源文件、頂層模塊或指定的timescale的消息

-V

verbose模式;打印消息,例如編譯器驅動程序在運行C編譯器、匯編器和鏈接器時打印它執行的命令

-lfilename

指定VCS記錄編譯消息的文件,如果還有-R選項,VCS將在同一個文件中記錄編譯和仿真的消息

+define+macro=value+

將源代碼中的文本宏定義為值或字符串,可以在Verilog源代碼中使用`ifdef編譯器指令來測試這個定義

simulation:在編譯過程中,VCS生成一個二進制可執行文件simv,使用simv來運行仿真。根據編譯的方式,可用兩種模式運行仿真:

Interactivemode

在初始階段以交互模式(調試模式)編譯design。在這個階段,可以使用GUI或通過命令行調試design問題。通過GUI進行調試可以使用Verdi,通過命令行進行調試可以使用UCLI(Unified command line interface)

batch mode

當大多數design問題解決后,可以使用批處理模式(優化模式)編譯design。在這個階段,可以以最小的debug性能來換取更好的性能來運行回歸

使用下面的命令行來仿真設計:

simv_executable [runtime_options]

缺省情況下,VCS生成可執行的二進制文件simv,但也可以在vcs命令行中使用編譯時間選項 -o 來生成具有指定名稱的二進制可執行文件

-gui

當設置了VERDI_HOME時,此選項啟動Verdi

-ucli

該選項在UCLI模式下啟動simv

  • three-step flow
支持Verilog、VHDL和混合HDL設計,包括三個步驟: analysis 分析elaboration 細化simulation 仿真 analysis:分析是仿真design的第一步,在此階段將使用vhdlanvlogan分析VHDL、Verilog、SystemVerilog和OpenVera文件。下面的部分包括幾個分析設計文件的示例命令行: Analyzing your VHDL files:vhdlan [vhdlan_options] file1.vhd file2.vhd Analyzing your Verilog files:vlogan [vlogan_options] file1.v file2.v Analyzing your SystemVerilog files:vlogan -sverilog [vlogan_options] file1.sv file2.svfile3.v Analyzing your OpenVera files:vlogan -ntb [vlogan_options] file1.vr file2.vr file3.v Analyzing your SystemVerilog and OpenVera files:vlogan -sverilog -ntb [vlogan_options] file1.sv file2.vrfile3.v 由于一般使用Verilog,故本文只介紹vlogan常用選項:-help顯示vlogan的使用信息 -q忽略所有vlogan消息 -f filename指定包含源文件列表的文件 -full64Analyzes the design for 64-bit simulation -ignore keyword_argument根據指定的關鍵字參數,忽略警告消息 -l filename指定VCS記錄分析器消息的日志文件 -sverilog啟用分析SystemVerilog源代碼 -sv_pragma指示VCS在單行或多行注釋中編譯sv_pragma關鍵字后面的SystemVerilog斷言代碼 -timescale=time_unit/time_precision為不包含timescale編譯器指令的源文件指定unit和precision,并在包含時間表的源文件之前指定時間表 -v library_file指定用于搜索模塊定義的Verilog庫文件 -work library將設計庫名稱映射到接收vlogan輸出的邏輯庫名稱work elaboration:細化是仿真design的第二步,在這個階段,使用分析過程中生成的中間文件,VCS構建實例層次結構并生成一個二進制可執行的simv,該二進制可執行文件之后用于仿真。可選擇優化模式或調試模式來細化design。 常用選項如下:-h or -help列出最常用的VCS編譯和運行時選項的描述 -ID返回有用的信息,如VCS版本和構建日期,VCS編譯器版本,以及工作站名稱、平臺和主機ID -full64支持64位模式下的編譯和仿真-file filename指定包含文件列表和編譯時選項的文件 -l filename指定VCS記錄編譯消息的文件,如果還有-R選項,VCS將在同一個文件中記錄編譯和仿真的消息 simulation:仿真是最后一步,在細化過程中,使用生成的中間文件,VCS創建了一個二進制可執行文件simv。使用simv來運行仿真。可以使用以下兩種模式運行仿真: Interactive mode在初始階段以交互模式(調試模式)細化design。在這個階段,可以使用GUI或通過命令行調試design問題。通過GUI進行調試可以使用Verdi,通過命令行進行調試可以使用UCLI (Unified command line interface) batch mode當大多數design問題解決后,可以使用批處理模式(優化模式)編譯design。在這個階段,可以以最小的debug性能來換取更好的性能來運行回歸 使用下面的命令行來仿真設計:simv_executable[runtime_options] 缺省情況下,VCS生成可執行的二進制文件simv,但也可以在vcs命令行中使用編譯時間選項-o來生成具有指定名稱的二進制可執行文件 -gui當設置了VERDI_HOME時,此選項啟動Verdi-ucli該選項在UCLI模式下啟動simv

以上內容介紹了使用兩種仿真flow的基本步驟,其余功能需要用的時候再查VCS User Guide就行了。

END

審核編輯 :李倩


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

    關注

    54

    文章

    4482

    瀏覽量

    138256
  • 編譯器
    +關注

    關注

    1

    文章

    1672

    瀏覽量

    51599
  • Flow
    +關注

    關注

    0

    文章

    10

    瀏覽量

    9134

原文標題:淺談VCS的兩種仿真flow

文章出處:【微信號:Rocker-IC,微信公眾號:路科驗證】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    TVS vs TSS 兩種保護機制的深度博弈

    在現代電子設備日益精密、工作環境愈發復雜的背景下,電路安全問題尤其是雷擊和瞬態過壓(Surge)防護,已成為產品設計中不可忽視的重要環節。其中,TVS(瞬態電壓抑制器)與TSS(晶閘管浪涌抑制器)是兩種廣泛應用的浪涌保護器件。盡管二者均服務于同一目標——保障電路
    的頭像 發表于 02-12 15:23 ?675次閱讀
    TVS vs TSS <b class='flag-5'>兩種</b>保護機制的深度博弈

    【「龍芯之光 自主可控處理器設計解析」閱讀體驗】--LoongArch的SOC邏輯設計

    。使用到類Linux命令,在VCS編譯后生成目標文件simv.o 2仿真驗證和調試。 在EDA里打開波形調試工具,進過步驟操作,可以看到信號波形。 仿真驗證包括對DUT(被測試對象)邏
    發表于 01-18 13:45

    用PLC實現卷徑計算的兩種算法

    卷徑計算,是動態計算如鋼卷,紙卷等存料量的一方法,它是實現張力控制和自動充放料、以及甩尾控制的重要前提。卷徑計算目前主流的方法有兩種,一是根據機列速度(產線速度)和和被測卷的轉動角速度求得;另一
    的頭像 發表于 11-14 16:54 ?2077次閱讀
    用PLC實現卷徑計算的<b class='flag-5'>兩種</b>算法

    開源RISC-V處理器(蜂鳥E203)學習(一)修改仿真環境(vcs2018+verdi2018)

    目錄下,打開run.makefile 仿真腳本修改如下: 1)修改仿真工具,添加vcs仿真選項,“LD_LIBRARY_PATH”是novas的路徑,根據自己環境修改下。 2)添加
    發表于 10-31 08:07

    VCS安裝教程及常見問題和解決辦法

    一、簡要介紹 在對蜂鳥E203處理器進行運行系統級仿真測試時,可以利用VCS這一編譯型仿真工具來對運行E203的模擬測試。本文即介紹在Linux系統中,進行模擬測試途中出現的一系列常見問題
    發表于 10-27 07:58

    vcs和vivado聯合仿真

    我們在做參賽課題的過程中發現,上FPGA開發板跑系統時,有時需要添加vivado的ip核。但是vivado仿真比較慢,vcs也不能直接對添加了vivado ip核的soc系統進行仿真。在這種情況下
    發表于 10-24 07:28

    ADI GMSL技術兩種視頻數據傳輸模式的區別

    本文深入介紹GMSL技術,重點說明用于視頻數據傳輸的像素模式和隧道模式之間的差異。文章將闡明這兩種模式之間的主要區別,并探討成功實施需要注意的具體事項。
    的頭像 發表于 10-10 13:49 ?2319次閱讀
    ADI GMSL技術<b class='flag-5'>兩種</b>視頻數據傳輸模式的區別

    兩種TVS有啥不同?

    當我們查看TVS二極管的規格書,常會看到有以下兩種種引腳功能標識圖:對于初學者,看到感到疑惑,他們一樣嗎?他們有啥區別?為啥有的個尖頭往外,陽極連在一起,有的個尖頭往里,陰極連在一起?一連三問。EMC小哥根據自己經驗略作分析
    的頭像 發表于 09-15 20:27 ?799次閱讀
    這<b class='flag-5'>兩種</b>TVS有啥不同?

    兩種散熱路徑的工藝與應用解析

    背景:兩種常見的散熱設計思路 在大電流或高功率器件應用中,散熱和載流能力是PCB設計中必須解決的難題。常見的兩種思路分別是: 厚銅板方案:通過整體增加銅箔厚度(如3oz、6oz甚至更高),增強導熱
    的頭像 發表于 09-15 14:50 ?782次閱讀

    CMOS 2.0與Chiplet兩種創新技術的區別

    摩爾定律正在減速。過去我們靠不斷縮小晶體管尺寸提升芯片性能,但如今物理極限越來越近。在這樣的背景下,兩種創新技術站上舞臺:CMOS 2.0 和 Chiplet(芯粒)。它們都在解決 “如何讓芯片更強” 的問題,但思路卻大相徑庭。
    的頭像 發表于 09-09 15:42 ?1017次閱讀

    貼片晶振中兩種常見封裝介紹

    貼片晶體振蕩器作為關鍵的時鐘頻率元件,其性能直接關系到系統運行的穩定性。今天,凱擎小妹帶大家聊聊貼片晶振中兩種常見封裝——金屬面封裝與陶瓷面封裝。
    的頭像 發表于 07-04 11:29 ?1257次閱讀
    貼片晶振中<b class='flag-5'>兩種</b>常見封裝介紹

    兩種驅動方式下永磁直線開關磁鏈電機的研究

    摘要:永磁開關磁鏈電機數學模型可以等效為永磁無刷電機,普遍采用方波驅動方式。在有限元基礎上分析6/7極直線式磁鏈電機反電勢波形,采用方波和正弦波驅動方式,比較兩種方式下的電流、電壓、平均推力大小
    發表于 06-09 16:18

    兩種感應電機磁鏈觀測器的參數敏感性研究

    模式和發電模式下對閉環電壓電流模型磁鏈觀測器和滑模磁鏈觀測器參數敏感性進行了研究,通過仿真和實驗比較了這兩種觀測器對定、轉子電阻及勵磁電感的敏感性。同時還研究了基于這兩種觀測器的模型參考自適應系統
    發表于 06-09 16:16

    詳解ADC電路的靜態仿真和動態仿真

    ADC電路主要存在靜態仿真和動態仿真仿真,針對兩種不同的仿真,我們存在不同的輸入信號和不同的
    的頭像 發表于 06-05 10:19 ?1981次閱讀
    詳解ADC電路的靜態<b class='flag-5'>仿真</b>和動態<b class='flag-5'>仿真</b>

    銣原子鐘與CPT原子鐘:兩種時間標準的區別

    在物理學的世界中,精密的時間測量是至關重要的。這就需要一個高度準確且穩定的時間標準,這就是原子鐘。今天我們將探討兩種重要的原子鐘:銣原子鐘和CPT原子鐘,以及它們之間的主要區別。首先,我們來了解一下
    的頭像 發表于 05-22 15:49 ?732次閱讀
    銣原子鐘與CPT原子鐘:<b class='flag-5'>兩種</b>時間標準的區別