How to make RUN.DO file

How to make RUN.DO file

http://blog.sina.com.cn/s/blog_7e2e98ad0101gxx7.html)
http://blog.csdn.net/lg2lh/article/details/51176467


modelsim_run.bat文件:这是一个批处理文件,里面就一行“modelsim -do sim.do”,这是一条DOS命令,意思就是调用Modelsim工具,并在Modelsim工具中执行sim.do这个文件。

下面按照实际仿真的步骤来说明do文件中需要用到的各个tcl命令。

  1. vlib work //create work library 在工作目录下建立一个work目录,后期我们编译的结果信息存放在work库中,请注意不要用操作系统直接新建一个work的文件夹,因为用操作系统建立的work文件夹并没有modelsim SE自动生成的_info文件。还有个问题是,当你的软件工程里需要用到软核时,可能会需要一些库,但这些库ISE软件中是没有的,此时就需要我们自己新建库了,并映射到当前目录下。我们将自己新建的库一般放在work库前面建立,
  2. vlog +acc –work work “fie_path/*.v”—- 编译“file_path”目录下所有.v文件,并将其添加进工作库(work)中,包括IP生成的V文件也要编译的。编译时可以分开单独编译,但是一定要注意顺序,先编译被调用的文件。其中的“-work work”是将后面的源文件编译到哪个库中,如果是编译到默认的work库中,则也可以不写该参数。若只想编译其中某些文件,则可以直接写出这些文件的名字,比如下面两种写法等效:
    vlog div.v div_tb.v
    vlog -work work div.v div_tb.v

    或者如下
    vlog "../src/sdram_write.v"
  3. vsim -novopt -quiet -c -L altera_ver -L E:/modeltech_6.6a/Xilinx_lib_edk/unimacro_ver -lib work div -t 1ns -do "run 2084655ns"—- 启动仿真命令,完成编译后就要启动仿真,该命令可以有许多参数。实际相当于在界面操作时,展开work库,右键—>Simulate without Optimization,启动仿真。
    参数“-L altera_ver”是添加仿真库,该处是直接使用逻辑库名称,也可以像后面一样使用物理库的名称及路径;若是库与源文件一起编译到work库中的,则不需要该参数;
    参数“-t 1ns”表示仿真时间单位为1ns;
    参数“-novopt”禁止优化(no vopt),可能会因为vopt的缘故使得一些不重要signal被modelsim自动忽略,一般会保留该参数;
    参数“-do”表示运行时间,该参数一般不用,在后面再运行该命令;
    参数“-c”表示进入命令行模式,如果没有该参数,则表示进行GUI模式。
    默认工作库为work因而下面几种写法等效:
    vsim div_tb
    vsim -lib work div_tb
    vsim work.div_tb
    sim -L D:/Modelsim/Installfiles/altera/altera_mf work.videoin_tb
  4. view signals source wave—- 打开signal、source、wave窗口,也可以只打开wave窗口;
  5. delete wave *—- 删除原来wave窗口中的波形;
    6.add wave -binary clk rst—- 打添加要观察的波形信号,clk、rst为tb的顶层信号名,若要添加内部信号则要给出路径,-binary表示使用二进制显示;
    添加一个模块的所有信号则可以用下面的方式:
    add wave -dec sim:/div_tb/*
    若只是要添加单个信号,则把“*”换成对应的信号即可,比如:
    add wave -unsigned sim:/div_tb/clk
  6. run 5000/run @5000 —- 开始运行仿真程序;
    没有“@”则表示在当前时刻继续运行5000个单位时间;
    有“@”则表示运行到5000这个时刻,如果当前程序仿真已经运行到了5000以后的时刻,则该方法不会继续向后运行,而会弹出一个错误信息,提示当前仿真时刻已经超过了该数值。
    run -all则表示一直运行,直到手动停止。
    在5000后面也可以跟上一个单位,不跟单位时则以仿真的最小单位为基准。
  7. quit -f/quit -sim —- 参数为“f”时则结束ModelSim,参数为“sim”时则结束该仿真进程。


这里只是编写了基本的do文件,需要在ModelSIm的Transcipts窗口输入相应的命令才可以执行。

  1. cd filepath —-进入do文件所在的目录;
  2. do filename.do —-执行do文件,开始仿真

0

发表评论

电子邮件地址不会被公开。