当前位置: 首页 > news >正文

Vivado用ILA抓波形保存为CSV文件

将ILA观察到的波形数据捕获为CSV文件,抓10次,把文件合并,把源文件删除

运行方法:Vivado的 Tcl console 窗口输入命令 
set tcl_dir F:/KLD_FPGA/Code/sim
set tcl_filename  TCL_ILA_TRIG_V1.2.tcl
source $tcl_dir/$tcl_filename

#===================================================
# 脚本说明 V1.2
# 功能:将ILA观察到的波形数据捕获为CSV文件,抓10次,把文件合并,把源文件删除
# 启用了自动重新触发模式。这样可以在每次触发时重新捕获数据
# 运行方法:Vivado的 Tcl console 窗口输入命令 
# set tcl_dir F:/KLD_FPGA/Code/sim
# set tcl_filename  TCL_ILA_TRIG_V1.2.tcl
# source $tcl_dir/$tcl_filename
# 注意:注意 vivado 下面的路径使用的是反斜杠 /,和 Windows 下的路径不一样
#===================================================# ILA探针名字 hw_ila_1(u_ila_0) 
#set ila_name "u_ila_0" 
#set hw_name hw_ila_1
# ILA所在FPGA
#set fpga "xc7z020_1"set data_dir "F:/KLD_FPGA/Code/sim/debug"# 如果数据目录不存在,则创建目录
if {![file exists $data_dir]} {file mkdir $data_dir
}for {set i 0} {$i < 4} {incr i} {#显示状态,启动ILAputs "Initiating ILA, iteration $i"#运行ilarun_hw_ila [get_hw_ilas -of_objects [get_hw_devices xc7z020_1] -filter {CELL_NAME=~"u_ila_0"}] #等待wait_on_hw_ila [get_hw_ilas -of_objects [get_hw_devices xc7z020_1] -filter {CELL_NAME=~"u_ila_0"}]# 上传ILA采集的数据set ila_data [upload_hw_ila_data [get_hw_ilas -of_objects [get_hw_devices xc7z020_1] -filter {CELL_NAME=~"u_ila_0"}]]# 显示ILA采集的数据display_hw_ila_data $ila_data#写入文件write_hw_ila_data -csv_file -force $data_dir/TCL_ILA_TRIG_$i.csv $ila_data#显示状态,保存完毕puts "Saved ILA data, iteration $i"
}# 所有文件列表
set all_csvs [glob -directory $data_dir *.csv]# 最终输出的合并文件
set final_csv [file join $data_dir "final.csv"]# 如果存在则删除 final.csv
if {[file exists $final_csv]} {file delete $final_csv
}# 逐个追加 CSV 文件内容  
set f [open $final_csv a]
foreach csv $all_csvs {set r [open $csv]puts $f [read $r]close $r
}
close $f# 删除原始文件(可选)
foreach csv $all_csvs {file delete $csv 
}

http://www.lryc.cn/news/299123.html

相关文章:

  • 微软AD域替代方案,助力企业摆脱hw期间被攻击的窘境
  • Git教程I
  • containerd中文翻译系列(十)镜像验证
  • 假期day9(2024/2/14)
  • Leetcode 674 最长连续递增序列
  • 力扣题目训练(8)
  • 理解JAVA EE设计模式
  • GEE:梯度提升树(Gradient Boosting Tree)回归教程(样本点、特征添加、训练、精度、参数优化)
  • k8s-资源限制与监控 15
  • 【Ubuntu】在.bashrc文件中误设置环境变量补救方法
  • Imgui(1) | 基于imgui-SFML改进自由落体小球
  • Linux-Vim的使用,快速入门Vim,Linux入门教程,精讲Linux
  • 目标检测 | 卷积神经网络(CNN)详细介绍及其原理详解
  • 机器人学、机器视觉与控制 上机笔记(第一版译文版 2.1章节)
  • 关于vue2+antd 信息发布后台不足的地方
  • Ubuntu+Anaconda 常用指令记录
  • P5732 【深基5.习7】杨辉三角 python解法
  • VitePress-12-markdown中使用vue的语法
  • “bound drug/molecule”or “unbound drug/molecule”、molecule shape、sketching是什么?
  • 深入理解C语言中的函数指针:概念、机制及实战应用
  • 《UE5_C++多人TPS完整教程》学习笔记1 ——《P2 关于本课程(About This Course)》
  • 权限系统设计
  • Ubuntu Desktop - Screenshot (截图工具)
  • docker 1:介绍
  • RibbonBar RibbonPage切换事件
  • Conda历史版本下载地址和python对应关系
  • Clickhouse查询语句执行过程
  • 【动态规划】【中位数】【C++算法】1478. 安排邮筒
  • C#系列-数据结构+递归算法+排序算法(3)
  • Redis实现秒杀