许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  modelsim/questasim do文件解释以及makefile:ModelSim/QuestaSim DO脚本与Makefile使用详解

modelsim/questasim do文件解释以及makefile:ModelSim/QuestaSim DO脚本与Makefile使用详解

阅读数 4
点赞 0
article_banner

do文件解释

  • questasim do文件解释
  • do文件 wave.do
  • questasim makefile文件
  • makefile:makefile不完全等同于shell/tcl 四种赋值 变量使用 makefile参数 例子a0 例子a1 Makefile例子a Makefile例子b 例子c 例子d 例子e
  • Makefile中@作用
  • filelist
  • 参考:

questasim do文件解释

do文件

#开头的是comments;

   DO文件实质上是Tcl脚本。可以包含很多Tcl结构,比如程序,条件 运算符  ,数学和三角函数,正则表达式等等。

   vsim的参数

  • 参数“-novopt”禁止优化(no vopt),可能会因为vopt的缘故使得一些不重要signal被modelsim自动忽略,一般会保留该参数;
  • -classdebug
  • 参数“-c”表示进入命令行模式,如果没有该参数,则表示进行GUI模式。
  • 参数“-L altera_ver”是添加仿真库,该处是直接使用逻辑库名称,也可以像后面一样使用物理库的名称及路径;若是库与源文件一起编译到work库中的,则不需要该参数;
  • vlog -sv abc.v 按照sv进行编译;
  • -l 小写L, 输出log文件 vsim -l sim.log
  • -do “run 10us” 或者-do vsim.do
  • -wlf保存仿真结果为一个WLF文件。调试时可在GUI查看仿真结果。
  • 在系统提示符后输入vsim –view counter.wlf。
  • +UVM_TESTNAME=my_case0

        +UVM_NO_RELNOTES

        +UVM_TIMEOUT=100000000

log /* -r //该命令可以让modelsim/Questa Sim在进行 仿真 中,对所有信号同步进行仿真,

   从而解决新加入的观测信号没有仿真结果的问题;
在终端> 直接输入 vsim -c 会进入没有gui的questasim

if [file exists "work"] {
   
   vdel -all}   #有work这个目录 则删除
vlib work   #vlib work ---- 在工作目录下建立一个work目录
#vcom 编译vhd;如果是verilog 则使用vlog
vcom -f dut.f
vlog -f tb.f
vopt top -o top_optimized  +acc +cover=sbfec+tinyalu(rtl).
vsim top_optimized -coverage +UVM_TESTNAME=random_test
set NoQuitOnFinish 1
onbreak {
   
   resume}
log /* -r  //该命令可以让modelsim/Questa Sim在进行仿真中,对所有信号同步进行仿真,从而解决新加入的观测信号没有仿真结果的问题;
run -all
coverage exclude -src ../../tinyalu_dut/single_cycle_add_and_xor.vhd -line 49 -code s
coverage exclude -src ../../tinyalu_dut/single_cycle_add_and_xor.vhd -scope /top/DUT/add_and_xor -line 49 -code b
coverage save random_test.ucdb


vsim top_optimized -coverage +UVM_TESTNAME=add_test
set NoQuitOnFinish 1
onbreak {
   
   resume}
log /* -r
run -all
coverage exclude -src ../../tinyalu_dut/single_cycle_add_and_xor.vhd -line 49 -code s
coverage exclude -src ../../tinyalu_dut/single_cycle_add_and_xor.vhd -scope /top/DUT/add_and_xor -line 49 -code b
coverage save add_test.ucdb

vcover merge  tinyalu.ucdb random_test.ucdb add_test.ucdb
vcover report tinyalu.ucdb -cvg -details
quit


#vcom 编译vhd;如果是verilog 则使用vlog

dut.f #设计的文件路径

tinyalu_dut/single_cycle_add_and_xor.vhd
tinyalu_dut/three_cycle_mult.vhd
tinyalu_dut/tinyalu.vhd

tb.f #仿真的文件路径

   +incdir+ #意思是include dir 包含一个目录进来

tinyalu_pkg.sv
tinyalu_bfm.sv
top.sv
+incdir+tb_classes

wave.do

在wave窗口 ctrl+s

   /home/userid/rst_uvc/rst_agent/wave.do


questasim makefile文件

makefile:makefile不完全等同于shell/tcl

<target>: <prerequisites
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空