Modelsim/Questasim仿真do文件编写

Modelsim/Questasim仿真do文件编写

#不需要新建modelsim工程,直接运行.do文件就可以仿真
建立仿真工程步骤
(一)新建工程顶层文件夹
(二)在顶层文件夹下新建三个文件夹,分别是:sim、tb、src
(三)编写do文件
vlib work
vmap work work
vlog -novopt -incr -work work “…/tb/tb.v”
vlog -novopt -incr -work work “…/src/xxx.v”
vsim -novopt work.tb
add wave -noupate /tb/*
run all
(四)打开modelsim,在File/Change Directory下制定仿真工程的文件夹位置,最后运行.do文件:do sim.do。

do文件中的关键字含义

  1. vlib:建立一个新的库
    Example:
vlib workspace

建立一个物理文件夹,名为workspace
2. vmap:将库与工程进行关联
Example:

vmap workspace worklibrary

建立一个库文件夹,名为worklibrary
vmap是Modelsim命令,后面两个work都是文件名。前面一个worksapce是vlib命令所创建的物理文件夹名(此文件夹必须用vlib命令事先定义好,才能被引用),后面一个worklibrary表示在Modelsim的Library窗口中创建了一个名为worklibrary的库文件夹。此命令输入后,将在Modelsim的Library窗口中创建了一个名为worklibrary的库文件夹(逻辑目录),其对应的物理目录是vlib创建好的名为worksapce的文件夹
创建workspace文件夹的目的,是为了后续编译的文件都可以存放在这个文件夹下,Modelsim的worklibrary里可以看到编译文件名称,而这些编译文件实际是存放在vlib创建的workspace文件夹下。
3. vlog -work:添加源文件并编译
Example:

vlog -work worklibrary "../../*.v"

vlog -work是Modeisim命令,编译Verilog源码,将编译得到的结果放到名为worklibrary的逻辑库里面。该命令主要用于编译设计文件、测试脚本、调用的IP核文件及其相应的仿真库文件等。
文件名称中,如果直接跟着.v文件,表示与compile.do文件同一个文件夹路径下。…/表示向上一个文件夹目录。
4. vsim:开始仿真
Example:

vsim -coverage -voptargs="+acc" worklibrary.testbench_top

worklibrary.testbench_top表示以testbench_top.v文件作为测试脚本进行仿真;
worklibrary.是固定用法,即库文件夹名.,也可以是work.或xil_defaultlib.;
testbench_top是用vlog编译过的测试脚本的文件名。
-voptargs=+acc是固定命令脚本,表示优化部分参数
5. add wave:添加波形
6. run:开始仿真
7. novopt:在开始仿真前不要进行优化
8. incr:使能增量编译
9. L libname:添加并编译库文件libname
Example:

vsim -voptargs=+acc -L unisims_ver -L unisim work.glbl work.testbench_top

-L是固定格式,表示加载其后的仿真库文件,例如这里表示加载名为unisims_ver的库文件。modelsim.ini里指定库文件的映射目录后,还需要在输入vsim命令时使用-L选项来实现真正的库文件加载。

  1. gui:打开GUI界面
  2. view wave:打开wave窗口

优化分类:
不优化(命令-novopt):完全不进行设计优化,所有信号可见,但仿真速度较慢。
优化(命令-vopt),信号不可见:进行设计优化,但信号都不可见,速度最快。调试完全依赖于testbench的打印输出,无法正常看到中间信号。在不是非常高度自动化的进行测试,并且需要观察中间调试信号的情况下,一般不推荐该模式。
部分优化(命令-voptargs=+acc):进行设计优化,但又保证所有信号可见,速度较快,调试必备

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值