modelsim/questasim do文件解释以及makefile

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>
<tab><command>
<<
  • 2
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: ModelSimQuestasim都是Verilog和VHDL仿真工具,但是它们有一些区别: 1. Questasim是Mentor Graphics公司的产品,而ModelSim是Mentor Graphics公司的竞争对手Mentor Graphics公司的产品。 2. Questasim支持SystemVerilog,而ModelSim只支持Verilog和VHDL。 3. Questasim具有更好的性能和更高的仿真速度,因为它使用了更先进的仿真技术。 4. Questasim具有更好的调试功能,包括更好的波形查看器和调试器。 5. Questasim的价格比ModelSim更高,但它提供了更多的功能和更好的性能。 ### 回答2: ModelSimQuestasim都是常见的EDA工具,用于设计验证和仿真。其中,ModelSim基于Verilog和VHDL语言,而Questasim则支持更多种类的硬件描述语言,比如Verilog、VHDL、SystemVerilog和VHDL-AMS等。 首先,ModelSim是Mentor Graphics公司出品的仿真工具,只支持硬件描述语言的仿真,而Questasim则是MentorGraphics公司的HDLSim系列产品的升级版本,支持大多数硬件描述语言的仿真。简单来说,Questasim支持的语言更多。 其次,ModelSimQuestasim在仿真速度和性能上也有所不同。ModelSimQuestasim略慢,但与其他竞争产品相比,速度较快,因此在对速度要求较高的的项目中,ModelSim更为适合。 此外,ModelSimQuestasim在友好程度、仿真调试、仿真精度等方面也有所不同。例如,Questasim支持更全面的调试功能,因为它支持多种编程语言和进行复杂的仿真和调试操作。而ModelSim虽然无法像Questasim那样支持多种编程语言,但在仿真和调试方面更加简单直观。 综上所述,ModelSimQuestasim都是优秀的仿真工具,应根据具体项目需求来选择。如果您需要支持多种型号的仿真,并且对调试功能和高速运行更为看重,建议使用Questasim。如果您的项目的仿真速度较为关键,且您已建立了与ModelSim工具的基本技能,建议使用ModelSim。 总之,ModelSimQuestasim各有其优势和劣势,根据需要为您的工程选择最适合您的EDA工具。 ### 回答3: ModelsimQuestasim是常用的数字电路仿真软件,都是业界领先的仿真引擎。这两个软件在操作和功能方面都有不同之处,下面将从以下几个方面对其进行比较: 1. UI(用户界面) Modelsim的UI简洁明了,使用方便。Questasim的UI更加现代化,具有更多的调试、故障定位和分析功能。 2. 工程设计 在工程设计方面,两者都支持Verilog、VHDL等设计语言。但是,Questasim支持更多的设计语言和IP库,也能处理更大、更复杂的项目。Questasim还支持OVM和UVM这样的先进的验证方法。 3. 性能 在性能方面,QuestasimModelsim更快。Questasim支持更高的时序分辨率和更大的仿真规模,因此它更适合于大型项目的仿真。而在小型项目中,Modelsim可能更适合一些。 4. 结果分析 对于仿真结果的分析,Questasim提供更丰富的功能,比如支持使用Tcl脚本实现结果分析,该脚本能自动导出仿真结果图像、数据等。而在Modelsim中,这些功能需要用户自己实现。 总的来说,QuestasimModelsim更适合处理大型、复杂的项目,具有更好的性能和更丰富的功能。而对于小型项目,Modelsim可能更加方便实用。最终选择哪个仿真软件要根据具体的设计项目和个人需求来决定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值