Modelsim中使用tcl命令导出仿真数据到txt文件

参考下面的CSDN博客

bookmark

1 Tcl命令

1
2
3
4
5
6
7
8
9
10
proc write_sim_data {env name radix cycle file} {
set fid [open $file w]
for {set i 0} {$i <= $::now} {incr i [expr $cycle * 1000]} {
set str [exa -env $env -radix $radix -time ${i}ps {*}$name]
puts $fid $str
}
close $fid
}


  • Line1:定义一个名为write_sim_data的过程,参数列表为:{env name radix cycle file}

    env:指定查找对象名称的路径。如top_tb/top_u
    name:需要导出的变量列表。如{I_reset_n R_data_cnt}
    radix:进制。可选:ascii,binary, decimal,hexadecimal,unsigned等
    cycle:时钟周期,单位ns
    file:输出文件。如./1.txt

  • Line2:打开一个文档,返回文件描述符

  • Line3:分别获得从0到仿真结尾时间,按时钟周期间隔对数据进行取样输出

  • Line4:获得具体数据

  • Line5:将数据写入文件

  • Line7:关闭文件

示例:

1
write_sim_data sim:/top_tb/u_top_wrapper/top_i/RS_Enc_0 {RS_Out Trigger} unsigned 1000 data.txt

Modelsim中使用tcl命令导出仿真数据到txt文件
https://www.moerjielovecookie.icu/2024/06/09/Modelsim中使用tcl命令导出仿真数据到txt文件/
作者
Sawen Moerjie
发布于
2024年6月9日
许可协议