TCL总结(ug835 ug894)

文章介绍了TCL在Vivado中的应用,包括非工程模式下通过tclshell创建项目、导入文件、综合和优化设计的步骤,以及工程模式下在GUI中利用TCL脚本进行开发的过程。同时提到了关键的TCL命令,如时序报告、功耗报告的生成和时序约束的处理。
摘要由CSDN通过智能技术生成

一.概述

总结下平常用到的TCL方式,TCL的使用可以分为非工程模式下的开发流程,工程模式下的开发流程,以及一些在TCL控制台用到的命令。

二.非工程模式下TCL开发流程

利用vivado自带的tcl shell窗来进行项目的开发,在vivado安装路径的bin文件夹下。

然后逐句执行以下脚本命令:

在执行之前可以使用pwd查看当前路径,通过cd切换路径。

set output ./Out
file mkdir $output

执行以上语句,新建一个工程输出的文件夹。

add_files [glob $output/*.v] #glob扫描当前文件夹的所有.v文件
add_files -fileset constrs_1 $output/led.xdc#仿真和约束文件需要加到对应的文件集中

执行以上语句,导入RTL代码和XDC约束。

synth_design -top flow_led -part xc7a35tfgg484-2
write_checkpoint -force $output/post_synth //force #写入时覆盖该文件

执行以上语句,输出dcp文件。

report_timing_summary -file $output/synth_timing_summary.rpt
report_power -file $output/synth_power.rpt

执行以上语句,输出综合后的时序报告和功耗报告。

opt_design  #对设计进行优化
power_opt_design #对功耗进行优化
place_design #对设计进行布局
phys_opt_design #对布局后的设计进行逻辑物理优化
write_checkpoint -force $output/post_place
report_timing_summary -file $output/post_place_timing_summary.rpt
route_design
write_checkpoint -force $output/post_route
report_timing_summary -file $output/post_route_timing_summary.rpt
report_timing -sort_by group -max_paths 100 -file $output/post_route_timing.rpt
report_drc -file $output/post_impl_drc.rpt
write_bitstream -force $output/flow_led.bit

-sort_by 按时序裕量排序或者按时钟组排序,默认按时序裕量排序

结果:输出文件夹中会产生如下文件

三.工程模式下TCL开发流程

在GUI界面的左侧导航窗口中,setting里面,综合-优化-布局-布线的前后都可以载入tcl脚本。

四.常用TCL命令和知识点

  1. 常用的查看时序报告、功耗报告、时钟网络、利用率、qor报告、保存的ila图

  1. write_debug_probes(itx文件 很有用)

  1. 时序约束时:常用命令 get_pins get_nets get_cells get_ports -of_objects

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值