在Vivado下利用Tcl实现IP的高效管理
为什么要用Tcl实现IP管理
采用Vivado Manage IP创建IP工程后,可能会遇到以下情况:
(1)软件版本升级,例如Vivado由2013.4升级至2014.2;
(2)芯片型号改变,例如芯片型号由XC7K325TFFG676-2变为XC7K160TFFG676-2;
(3)A项目中的一些IP在B项目中也被使用,且这些IP参数配置完全相同。
上述三种情况均可通过Tcl命令完成,避免工具版本和器件变更带来的问题。
主要语法
write_ip_tcl -force -no_ip_version [get_ips <ip_name>] <tcl path>/<tcl_name>.tcl
一定要带上这个-no_ip_version不然脚本里面带着Vivado的版本属性,运行脚本会出问题
自动制作IP的Tcl脚本
step1. 对于已经生成的IP,直接按上面语法进行修改ip_name,tcl_path,tcl_name,然后粘贴到Vivado的tcl console回车,
对应的脚本文件就会生成在目录下
step2. 进入到脚本中,找到下图红框位置,只保留截图部分脚本删除其他的,然后保存,一个最终版的脚本就做好了

PS:只执行step1制作出来的IP脚本,在跨大版本的vivado中使用还是会出现问题,跨小版本或者同版本问题不大,但建议不省略step2
手动制作IP的Tcl脚本
我这里以创建fifo IP为例,Vivado版本2018.3。
先用GUI创建IP,generate选择。




创建完成以后,IP生成后会在Tcl Console输出我们IP配置属性,第一行和第二行

将第一行和第二行复制下来,制作成Tcl脚本,如下图

我们创建的是fifo的脚本,然后将文件保存为fifo_generator_0.tcl
我们再来验证一下脚本。
首先将之前创建好的fifo IP删除,在菜单栏Tool下找到Run Tcl Script,点击进去,在目录下找到fifo_generator_0.tcl
然后点击OK,等待工具创建好IP


与之前创建IP配置一模一样。


浙公网安备 33010602011771号