moerjielovecookie

Sawen_Blog

一个普通工科牲的博客网站
x
github
follow
email

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

参考下面的 CSDN 博客

bookmark

Tcl 命令#

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:關閉文件

示例:

write_sim_data sim:/top_tb/u_top_wrapper/top_i/RS_Enc_0 {RS_Out Trigger} unsigned 1000 data.txt
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。