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. ☀【动画】过渡 transition

    CSS3 动画系列3-transition(过渡) √http://www.css88.com/archives/5403 如果丘处机没有路过牛家村,中国将是最发达国家 <!DOCTYPE ht ...

  2. hdu 4294 数学分析+搜索

    又要开始一段搜索的路程了. 最近看了这题,在网上看到一个结论,任何一个数倍数都能被不超过两个数字组成,假如一个数n个A%x=b,那么必然有m个A%=b那么此时n个A减去m个B就能够被x整除,那么此时就 ...

  3. 理解SVG坐标系和变换:视窗,viewBox和preserveAspectRatio

    SVG元素不像HTML元素一样由CSS盒模型管理.这使得我们可以更加灵活定位和变换这些元素-也许一眼看上去不太直观.然而,一旦你理解了SVG坐标系和变换,操纵SVG会非常简单并且很有意义.本篇文章中我 ...

  4. InstallShield 一些事件说明

    InstallShield 一些事件说明,和常量代码 大家可以把所有事件都点出来然后单步追踪就行了,我的经验是一般是从OnShowUI第一次显示UI界面开始,很容易就找到大家想处理的事件,另贴几个我发 ...

  5. WCF 第五章 会话级别的实例

    会话在分布式应用程序中广泛用于维护每个用户的状态.在站点或者基于站点的应用中,将每个用户的状态存储于会话中很常见.这这些情况中,用户和会话间有一个1:1比例.WCF以一个类似的概念支持服务.使用Ins ...

  6. [codevs4247]奇特的生物

    题目描述 Description 科学家们最近发现了一种奇怪的生物,它们每天长大一岁,刚出生的宝宝为1岁,且它们的年龄没有上限.已知年龄为1岁,2岁,3岁,……,k岁的个体具有生育能力,当年龄为i的具 ...

  7. .NET版本问题 转[.Net Framework Initialization Error – Unable to find a version of the runtime to run this applicatio]

    转自:http://blog.csdn.net/rrrrssss00/article/details/7069009 dev注册程序问题部署一个VS2010开发的程序时遇到 了一个非常奇怪的问题,客户 ...

  8. Spark RDD概念学习系列之RDD的容错机制(十七)

    RDD的容错机制 RDD实现了基于Lineage的容错机制.RDD的转换关系,构成了compute chain,可以把这个compute chain认为是RDD之间演化的Lineage.在部分计算结果 ...

  9. 问题-[Delphi]提示Can't load package:dclite70.bpl解决方法

    问题现象:提示Can't load package:dclite70.bpl 问题原因:全是Window2003的Data Execution Prevention(DEF数据执行保护)造成的. 解决 ...

  10. oracle命令行操作

    exp zdxk/zdxk@ORCL TABLES=(ms_data_dictory_def,ms_static_data_def) file=c:\staticdata.dmp 通过输入 EXP 命 ...