Modelsim command line 传参数到 .do 文件

Modelsim命令行传参至.do文件方法
本文介绍了如何在命令行中启动Modelsim并传递参数到.do文件,以便在UVM环境中动态选择不同的测试用例。通过修改bat批处理文件和.sim.do文件,利用-g命令行选项将输入的测试用例名称传递给Modelsim,实现无需修改代码即可切换测试场景。

  gui跑mdelsim总觉得很麻烦,使用命令来启动方便了很多,类似linux一样,其实目前windows也可以做到,只是业界不怎么用windows罢了。

  基于modelsim搭了一个UVM环境,  用bat批处理命令跑modelsim command,其实很简单,里面就一句vsim -do sim.do。

  sim.do是自己写的modelsim要用到的几条命令,包括vlib, vlog, vsim等。关于如何在windows环境下,搭建uvm环境,网上有教程。

  现在遇到了一个问题,就是在跑uvm时,我现在有两种sequence要跑,分别是my_case0, my_case1, 具体内容在《uvm 实战》这本书里有。一般来说,我想很方便的选择控制当前是跑case0,还是case1,能不修改任何代码就不修改,包括各种脚本文件。这时,我想实现在cmd命令窗口中输入某一个case的名字,来启动对应的case。

  因此,现在的问题变成了,如何将bat得到的名字(变量)通过cmmand送到do文件中。此时,再次证明了google面前,必应和百度都是垃圾……

  好了,现在有两个文件,一个我叫run.bat,里面就是一句话vsim -do sim.do来启动modelsim;一个我叫sim.do,里面主要内容是

vlib work
vlog -L mtiAvm -L mtiOvm -L mtiUvm -L mtiUPF  top_tb.sv
vsim -l vsim.log -c -sv_lib $UVM_DPI_DIR/uvm_dpi work.top_tb +UVM_TESTNAME=$NAME
run -all

  用来执行具体操作。目的就是要让bat将得到的名字传给+UVM_TESTNAME=$NAME中的变量$NAME中。

  第一步,修改bat,使得能从cmd中传入参数,我的两个参

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值