前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >copy_ip你用过吗?

copy_ip你用过吗?

作者头像
Lauren的FPGA
发布2020-07-20 16:17:21
5830
发布2020-07-20 16:17:21
举报
文章被收录于专栏:Lauren的FPGA

在Vivado工程中使用IP是非常常见的情形,而且还会出现同一个IP被多次使用。例如,设计中需要用到4个单端口RAM,其区别仅仅是深度或宽度(数据位宽)不一样,那么这时候怎么做比较快捷呢?

一种方式是在Vivado IP Catalog中找到Block Memory Generator,依次根据需求定制4个单端口RAM,这个过程需要4次打开Block Memory Generator,除了深度和宽度之外,重复设定同样的参数。

还有一种方式就是我们这里将要介绍的Tcl命令copy_ip。从名字就可以猜出来其功能就是对IP进行复制。所以,对于上述情形,更简洁的方式是利用Block Memory Generator创建一个IP,其余3个用copy_ip进行复制,然后再修改其中的深度和宽度两个参数。这种方式尤其在IP的参数很多时更为高效,因为这样可以继承诸多参数而避免重复设置。

来看个案例,设计中有个IP名为char_fifo,现在还需要一个FIFO,那么可以通过如下方式操作:

这里选项-name后为新IP的名字,中括号为Tcl的命令置换方式,中括号中的内容为命令get_ips,用于获取指定IP,也就是要复制的IP对象。copy_ip还可以跟随选项-dir,用于指定IP的位置。如果没有跟随-dir,那么复制后的IP将被放置在与原有IP相同的目录下,同时出现在Vivado的IP目录下,如下图所示。

如果不习惯用Tcl命令的方式,那么也可以用图形界面方式。只需选中目标IP,点击鼠标右键,在弹出菜单中选择Copy IP即可。而这个操作实质上对应的命令就是copy_ip,这可在Vivado Tcl Console中看到。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档