zoukankan      html  css  js  c++  java
  • Verdi如何编译design并打开

    HDL Source文件的编译

    针对Verilog文件的编译:

    使用vericom工具,将verilog source文件写入一个run.f中,如:

    system.v

    pram.v

    TopModule.v

    对于include的文件,通过+incdir+引入文件夹。

    -v +文件名,表示lib的design。

    invoke方式:vericom -lib <libname> -f run.f

    如果verilog source文件中,包含2001的一些结构,需要加-2001 option

    可以选择加+verilog2001ext+.v+.v2k+的option来识别可能的verilog 2001的extension

    如果design中包含多种文件,像verilog-95,verilog-2001,systemverilog,这时不推荐使用 -sv,-2001的option。

    因为只有最后一个有效。

    每个design file也可以单独列在vericom cmd line中。每次vericom都会将design增加编译到libname中。

    所以需要保证libname不变。

    如果libname对应的是一个logic library location,

    在Verdi平台中被映射到physical location 如果没有libname被指定,design unit被编译到默认的library,work.lib++

    在文件novas.rc中设置addr map

    vericom -lib <libName> system.v pram.v TopModule.v

    vericom -lib <libName> ALUB.v CCU.v

    VHDL文件的编译: 在VHDL文件编译之前,必须添加library map到novas.rc文件中。

    invoke方式:

    vhdlcom -lib <libName> <vhdl_design_files>

    vhdlcom -lib <libName> foo1.vhd foo2.vhd

    vhdlcom -lib <libName> goo1.vhd goo2.vhd

    如果没有libName被指定,默认编译到work.lib++

    当design中有很多VHDL文件时,需要注意编译的顺序,vhdlcom提供了两个option -smartorder和-smartscript

    SystemVerilog文件的编译:

    使用vericom来invoke,

    vericom -lib <libName> -sv -f run.f

    使用+systemverilogext+sv来进行sv的扩展识别。

    SystemVerilog Pragmas的编译,

    必须是显示的调用-sv -sv_pragma来编译 vericom -lib <libName> -sv -sv_pragma -f run.f

    对于VHDL和Verilog的混合编译,先用vhdlcom编译所有的VHDL文件,再用vericom编译所有的Verilog文件。

    Verilog和SystemVerilog的混合编译,使用显示的文件名扩展来进行识别。run.f文件

    system.v

    pram.sv

    ALUB.v2k

    vericom -lib <libName> -f run.f +verilog2001ext+.v2k+ +systemverilogext+.sv+

    或者分别编译:

    vericom -f run_verilog_files.f

    vericom -2001 -f run_v2k_files.f

    vericom -sv -f run_sv_files.f

    文件编译好之后,通过verdi -lib mylib -top mytop来打开verdi

    也可以直接使用verdi来编译文件并打开,

    Verilog文件:

    verdi -f run.f +verilog2001ext+.v2k+

    verdi -sv -f run.f verdi system.v ... alu.v -v lib.v -y ../special

    VHDL文件:

    verdi -vhdl -f run.f -top <TopDesign>

    或者通过verdi打开gui之后,load design。

    混合lib打开:

    verdi -lib <VHDLlibName1> -lib <VHDLlibName2> -top <designTop>

    打开verdi gui的env options

    -envinfo,dump env variable的描述

    -envmap,显示所有env variable的mapping情况

    -sdfDelay[Min|Typ|Max],指定sdf反标的delay type

    Sim options

    +define+<macro>,用来定义宏,如果source code中也有定义,则被覆盖

    +incdir+<directoryname>,指定search path

    +libext+<extensionname>,指定verilog library的extension文件

    -f <filename>.f,加载文件,其中包含source file和simulation option

    -i,使能interactive debug mode

    -ovm[-<version>],加载默认的OVM lib,如果-ovm和-ovmhome都被指定,则-ovm被忽略

                              默认加载的ovm版本-2.1.2

    -ovmhome,指定ovm安装路径

    -simOpt "<options>"/{<options>},指定仿真options

                       verdi -sv f.sv -simOpt "+vcs+lic+wait"

                       verdi -sv f.sv -simOpt {+vcs+lic+wait}

    -simType <VCS|ModelSim|NC>,指定simulator

    -uvm [-<version>],加载默认的UVM lib,如果-uvm和-uvmhome都指定的话,-uvm被忽略

    -uvmhome <path>,指定UVM的安装路径

    -v <filename>.v,在指定文件中的module,被当作library cell

    -y <directoryname>,指定library cell

    还可以设置的其他option,

    Siloti Options

    Behavior Analysis Options设置tools---preferences

    Power Manager Options

    -cpf1.0/cpf1.1/cpf_filename

    -upf1.0/upf2.0/upf_filename

    -lps_cpf cpf_filename

    -lps_iso_off

    -lps_off

    -lps_rtn_off

    -powerLib libFile

    -powerModel NLP|MVSim|ModelSim|NCSim

    nWave的gui的Invoke

    -h|help,打印help信息

    -nogui,在batch mode下运行

    -ssf fastFile|dumpFile|fastFile list,直接打开.fsdb/.vf/.fsdb.gz/.vcd/.vcd.gz文件

    -ssi,打开interactive mode

    aasertEval,可以通过指定design和FSDB文件,在batch mode下计算assert

    assertEval -sv dut.sv +define+sva -ssf dut.fsdb,默认设置下计算assert,保存结果到默认的文件中。

                                                                           ./assertEvalLog/evaluate_result.fsdb

  • 相关阅读:
    webpack学习_管理输出(管理资源插件)
    vue路由
    vue动态组件,组件缓存
    vue组件间传参
    模块化
    安装Vue脚手架,创建Vue项目
    Vue常用指令
    VUE概述
    小程序调用微信支付接口
    Android音视频开发之-WebRTC技术实践
  • 原文地址:https://www.cnblogs.com/-9-8/p/6278165.html
Copyright © 2011-2022 走看看