Modelsim的仿真,如果一直使用图形界面建工程,编译,仿真,一个个加入观察波形的话,未免复杂了一些,尤其是当工程较大,需要观察的信号较多时,下面贴出一些常用的tcl脚本命令和wave.do常用语法:

 
vsim.tcl仿真脚本:
vlib compress_lib
vmap compress_lib compress_lib
 
set verilog_file_list [ glob verilog/compress/*.v ]
 
foreach i $verilog_file_list {
vlog -work compress_lib $i
}
 
vlib uncompress_lib
vmap uncompress_lib uncompress_lib
 
set verilog_file_list [ glob verilog/uncompress/*.v ]
 
foreach i $verilog_file_list {
vlog -work uncompress_lib $i
}
 
 
 
vlib common_lib
vmap common_lib common_lib
 
set verilog_file_list [ glob verilog/common/*.v ]
 
foreach i $verilog_file_list {
vlog -work common_lib $i
}
 
 
 
 
vlib work_lib
vmap work work_lib
 
set verilog_file_list [ glob verilog/*.v ]
 
foreach i $verilog_file_list {
vlog -L compress_lib -L uncompress_lib -L common_lib -work work_lib $i
}
 
vsim -t ps -voptargs=\"+acc\" -L secureip -L xilinxcorelib -L unisims_ver  -L compress_lib -L uncompress_lib -L common_lib common_lib.glbl  work_lib.testbench
 
# Turn off IEEE library warnings
set NumericStdNoWarnings 1
set StdArithNoWarnings 1
do wave_me.do
run -all
 
 
 
 
wave.do波形观察文件内容示例:
onerror {resume}
quietly WaveActivateNextPane {} 0
 
add wave -noupdate -format Logic -radix binary /testbench/clk_200
add wave -noupdate -format Logic -radix binary /testbench/rstn
 
add wave -noupdate -divider {incross fifo in  signals}
add wave -noupdate -format Logic -radix binary /testbench/stest_wvalid
add wave -noupdate -format Logic -radix binary /testbench/stest_wready
add wave -noupdate -format Logic -radix hex /testbench/matlab_in
add wave -noupdate -format Logic -radix decimal /testbench/stest_wdata_re
add wave -noupdate -format Logic -radix hex /testbench/stest_wdata
 
 
add wave -noupdate -divider {signals}
add wave -noupdate -format Logic -radix binary /testbench/clk_200
add wave -noupdate -format Logic -radix binary /testbench/incross_m_valid
add wave -noupdate -format Logic -radix binary /testbench/incross_m_ready
add wave -noupdate -format Logic -radix decimal /testbench/incross_m_data_re
add wave -noupdate -format Logic -radix decimal /testbench/s_axi_tdata
add wave -noupdate -format Logic -radix decimal /testbench/incross_wr_data_count
add wave -noupdate -format Logic -radix decimal /testbench/incross_rd_data_count
 
TreeUpdate [SetDefaultTree]
WaveRestoreCursors {{Cursor 1} {200 ns} 0}
WaveRestoreZoom {0 ps} {200 ns}
configure wave -namecolwidth 150
configure wave -valuecolwidth 100
configure wave -justifyvalue left
configure wave -signalnamewidth 1
configure wave -snapdistance 10
configure wave -datasetprefix 0
configure wave -rowmargin 4
configure wave -childrowmargin 2
configure wave -gridoffset 0
configure wave -gridperiod 1
configure wave -griddelta 40
configure wave -timeline 0

Modelsim仿真tcl脚本与wave.do文件的更多相关文章

  1. modelsim如何使用tcl脚本来写编译文件

    对于modelsim进行仿真,可以通过GUI来进行仿真,当然更加快速的方法可以使用TCL脚本文件进行快速仿真. Modelsim采用TCL脚本文件仿真的具体流程如下所示:      具体的操作步骤如下 ...

  2. Modelsim仿真.do脚本示例

    #“#”为注释 #删除原有工程,需重启Modelsim #vdel -all -lib work #退出当前仿真 quit -sim #清空命令行显示 .main clear #创建库,是实际存在的物 ...

  3. Modelsim中使用TCL脚本编写do文件实现自动化仿真

    通常我们使用Modelsim进行仿真,是通过图形界面点点点来进行操作,殊不知Modelsim完美支持TCL脚本语言及批处理命令do文件.简单来说就是从你修改完代码后到你重新编译把需要的信号拉出来查看, ...

  4. Modelsim的自动化脚本仿真平台

    自动化仿真平台由tcl语言搭建,大规模设计使用此平台让仿真便捷不少.大体上用tcl语言进行modelsim仿真的流程如下: 1. 建立库 2. 映射库到物理目录 3. 编译源代码 4. 启动仿真器 5 ...

  5. 88.modelsim仿真do文件相关技巧

    网上的关于DO文件的编写好像资料不多,比较杂,所以本人总结一下常用的简单语法,方便大家查看.其实本人也刚接触DO文件没多久,有纰漏很正常,欢迎指正批评,互相学习.PS:写得有点乱   还有一个值得注意 ...

  6. modelsim仿真中 do文件的写法技巧

    网上的关于DO文件的编写好像资料不多,比较杂,所以本人总结一下常用的简单语法,方便大家查看.其实本人也刚接触DO文件没多久,有纰漏很正常,欢迎指正批评,互相学习.PS:写得有点乱   还有一个值得注意 ...

  7. ModelSim之tcl自动化仿真

    摘要: ModelSim的tcl最大的优势就在于它可以让整个仿真自动运行,免除每次进行各种用户界面控制操作的麻烦.用tcl就可以自动完成建库.映射库到物理目录.编译源代码.启动仿真器.运行仿真等一系列 ...

  8. ModelSim之TCL仿真

    在使用ModelSim时,我们一般都是从界面UI进行操作的,这样也比较直观易学.但是在很多的调试时,发现很多操作都是重复的,修改一下代码就要再次进行相关操作,这样很没有效率.其实,ModelSim是可 ...

  9. 45.modelsim仿真include文件

    modelsim仿真include文件会出现找不到文件的情况,这是因为include文件路径有两种,一种是相对路径,另一种是绝对路径. 相对路径: 如果 ‘include "primitiv ...

随机推荐

  1. MVC——数据库增删改查(Razor)

    一.显示信息 .Models(模板) private MyDBDataContext _context = new MyDBDataContext(); //定义一个变量取出所有数据 public L ...

  2. a++与=++a的区别

    //a++;//a=a+1;              // ++a;//a=a+1;               //Console.WriteLine(a++);// Console.WriteL ...

  3. Linux kernel ‘uio_mmap_physical’函数缓冲区溢出漏洞

    漏洞名称: Linux kernel ‘uio_mmap_physical’函数缓冲区溢出漏洞 CNNVD编号: CNNVD-201311-154 发布时间: 2013-11-13 更新时间: 201 ...

  4. 编译安装nginx并修改版本头信息—参考实例

    今天做实验的时候,想起我那台yum安装的nginx+php-fpm+mysql服务器上的nginx版本有点低了,并且还要加两个第3方模块,就去nginx官网下载了最新稳定版nginx-1.0.6,好了 ...

  5. 在User Profile Service中配置AD的同步连接

    转:http://www.360sps.com/Item/ConfigureSynchronizationConnections.aspx 如果要将Active Directory.LDAP 目录和业 ...

  6. Windows中APACHE开启fastcgi后无法连接数据库

    环境:Windows server 2003 x64Apache 2.2.14mod_fcgid-2.2b-w32.zipPHP VC9 x86 Non Thread Safe(用Visual C++ ...

  7. ModelSim仿真

    (1)出现“Fatal: SDF files require Altera primitive library”  书上的方法是在ModelSim-SE下的使用,而我用的是ModelSim-Alter ...

  8. 【笔试】T实习生2014 总结

    2014.4.12 是T的广州站,就在本校,很方便.考前一两天,临时抱佛脚,看着HTMLdog上的网页知识.就算考前,还在懊悔自己为什么不好好利用清明假期,多看点,看多点?哎,哎.. 谁知道一拿到试卷 ...

  9. cocos2d-x 从onEnter、onExit、 引用计数 谈内存泄露问题

    /////////////////////////////////// //author : zhxfl //date   : 2013.8.29 //email  : 291221622@qq.co ...

  10. mac编程的debug工具

    Chisel是一个加强LLDB调试能力的小插件.主要特点在于辅助界面开发调试时在控制台以尽可能直观的方式查看界面的元素和情况.为我们梳理视图,控制器以及类关系层级.以及一些临时的界面调试变动进行快捷响 ...