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. breakpoints、lldb 和 chisel 的使用

    http://www.cocoachina.com/ios/20150803/12805.html Breakpoints BreakPoint分类 breakpoint也是有分类的,我这里的文章内大 ...

  2. MyEclipse常用操作技巧

    1.源码和帮助文档的的关连 下面以关联struts2-core-2.3.14.2.jar源代码为例: 如下为示意图 2.拷贝项目的时候,要注意 将项目的web-root fold改成更新后的名字项目名 ...

  3. 转载-smarty教程(基本语法)

    转自:http://hi.baidu.com/qxxgvpdtzhbckpr/item/681049160d7be60db98a1aec 1.smarty的配置      首先,使用smarty第一件 ...

  4. ubuntu 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)

    在用sudo apt-get install kmymoney2安装软件kmymoney2时,由于速度太慢,想换个软件源,直接关闭了终端,apt-get但进程没有结束,结果终端提示:"E: ...

  5. oracle创建库和表

    SQL> create user midamtemp identified by ty1234 default tablespace midamtemp; User created. --分配用 ...

  6. 应用程序连接oracle rac

    10g rac vip漂移的目的不是让client不加改变的连接过来而是让client尽快收到一个连接终止的包,然后由client去连接tnsnames中配置的下一个地址.和没有vip相比, 使用vi ...

  7. hdu5593--ZYB's Tree(树形dp)

    问题描述 ZYB有一颗N个节点的树,现在他希望你对于每一个点,求出离每个点距离不超过KK的点的个数. 两个点(x,y)在树上的距离定义为两个点树上最短路径经过的边数, 为了节约读入和输出的时间,我们采 ...

  8. tcpclient 类

    1. 构造函数 1) 类对象将套接字与本地系统地址和一个随机的tcp端口号进行绑定. 在默认的tcpclient 对象创建后,必须使用connect方法与远程设备连接. TcpClient tc = ...

  9. A Tour of Go Structs

    A struct is a collection of fields. (And a type declaration does what you'd expect.) package main im ...

  10. excel函数

    120.623652,31.386228 120.623652 31.386228 上面数据要分成两列数据,我用了函数 =LEFT(C4,FIND(",",C4)-1),=RIGH ...