zoukankan      html  css  js  c++  java
  • Modelsim仿真tcl脚本与wave.do文件

    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
  • 相关阅读:
    数据结构和算法(Golang实现)(14)常见数据结构-栈和队列
    数据结构和算法(Golang实现)(20)排序算法-选择排序
    数据结构和算法(Golang实现)(18)排序算法-前言
    数据结构和算法(Golang实现)(22)排序算法-希尔排序
    数据结构和算法(Golang实现)(21)排序算法-插入排序
    数据结构和算法(Golang实现)(27)查找算法-二叉查找树
    关于SpringMVC映射模型视图的几点小事
    关于spring中事务管理的几件小事
    关于spring中AOP的几件小事
    关于spring中bean配置的几件小事
  • 原文地址:https://www.cnblogs.com/hfyfpga/p/4345177.html
Copyright © 2011-2022 走看看