Vivado中如何修改IP源文件

前一篇文章是通过改变JESD204B IP的设置,在Shared Logic里勾选in example design,来避免共用输入时钟的问题。那么还有没有别的办法呢?有没有更直接点的实现方式呢?

答案是肯定的:可以直接修改IP,将IBUFDS从IP里移出去,放到外面就可以共用了。修改IP是一个比较复杂的办法,需要谨慎使用!参考手册UG896,有中文版,如下是相关内容的截图。

 另外可以参考如下路径的描述:

57546 - Vivado IP Flows - How to modify/edit IP core source files in Vivado? (xilinx.com)


具体实现步骤如下:

1、在Block Design搞完之后,Generate Output Products里要选Out of Context per IP,而不要选Out of Context per Block Design,否则后面会报错,这个问题搞了我很久。

2、 在TCL控制台里将当前文件路径改到IP所在路径,然后把 这两个IP的IS_LOCKED 属性设为 true,TCL命令如下所示:

cd D:/saa_4ch_v0.3.4/100_syn_ip_cores/jesd204b_sys/ip/
set_property IS_LOCKED true [get_files jesd204b_sys_jesd204_0_0/jesd204b_sys_jesd204_0_0.xci]
set_property IS_LOCKED true [get_files jesd204b_sys_jesd204_0_1/jesd204b_sys_jesd204_0_1.xci]

如下左图所示,看到IP上有个红色的小锁就说明设置成功了。 

 3、修改IP源文件:用Notepad++或者其它的文本编辑器打开如上右图verilog文件,做如下图更改:就是把IBUFDS和BUFG注释掉,然后移到IP外面。

4、同样的方法修改另一个jesd204 IP;

5、记得把vivado工程下的cache文件删掉;

6、在TCL控制台里将当前文件路径改到synth所在路径,然后把这两个IP的文件复位掉,TCL命令如下所示:

cd D:/saa_4ch_v0.3.4/400_saa_u2_fpga/saa_4ch_top/phy/saa_4ch_top.runs/
reset_run jesd204b_sys_jesd204_0_0_synth_1
reset_run jesd204b_sys_jesd204_0_1_synth_1

7、重新生成文件,TCL命令如下所示:

launch_run jesd204b_sys_jesd204_0_0_synth_1
launch_run jesd204b_sys_jesd204_0_1_synth_1

确认下两个IP是否已经综合成功。

 8、修改上层的例化文件,将IBUFDS移到IP外面,如下图所示:

 9、最后按正常流程编译工程即可。

 

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jjzw1990

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值