Vivado IP OOC结果存放路径.gen问题

这里写自定义目录标题

1、现象

Vivado2020版本之后,为了便于版本管理,减少IP占用存储空间,Xilinx将IP的源文件xci和OOC综合后生成的文件分开存储,xci存储在设计者选择的文件路径,OOC综合结果存储在.gen文件夹中。当设计者将一个工程的IP拷贝到另一个工程使用是,由于xci文件的OOC综合结果存储路径不会重新修改,导致工程会出现多个.gen文件夹。
如下图所示,将原来gch_130t8工程的IP拷贝到fff工程后,对IP进行OOC综合就会产生两个.gen文件,gch_130t8.gen存放的是拷贝IP的OOC结果,fff.gen存放的是在fff工程新建IP的OOC结果
在这里插入图片描述

注:以上问题只在IP采用xci格式存在,如IP采用xcix压缩包格式,则没有该问题。

2、原因

通过分析IP的xci文件,发现Vivado2022生成的IP xci文件中,outputdir的路径对于Vivado2018有更改。
VIvado2018的xci路径如下:
在这里插入图片描述
说明Vivado2018 OOC综合的文件存放在xci所在目录,这与工程实际是相符的。

Vivado2022的xci路径如下:
在这里插入图片描述说明Vivado2022 OOC综合的文件存放在工程文件下.gen目录,与xci文件不在同一个目录,而在拷贝IP后xci文件中的outputdir不会更改,所以会出现OOC综合后产生原工程的gch_130t8.gen文件

3、解决方法

以下方法无效:

  1. 尝试reset IP后重新OOC,无效;
  2. 尝试reset IP后remove IP再重新添加,无效;
  3. 尝试reset projet后重新编译,无效;

以下方法有效:

1、按2中的描述修改xci文件中的outputdir,将路径修改。如:

在这里插入图片描述
改为:(vivado2019及之前版本默认路径)
在这里插入图片描述
或者(vivado2022及之后版本工程内默认路径)
在这里插入图片描述
设计者可根据OOC存放路径的需求更改,但该方式不适合大量IP修改,如工程中有大量IP来自于另一个工程,那得累死。

2、 采用xcix模式,该模式下vivado直接将IP得xci和OOC综合的文件生成为一个xcix压缩包,只有一个文件,IP的管理变得更为简洁,但其文件大小比较大,压缩包不是文本文件,不利于版本管理(如git进行管理)。同时设计者需要查看IP内部文件状态比比较麻烦,必须改为rar格式再解压。
xcix的打开方式:勾选下图中的Use Core Containers for IP
在这里插入图片描述
点击应用后一般软件会提示是否转换,点击是即可。如软件未提示,可在tcl命令中输入convert_ips命令进行转换,转换后IP全部改为xcix文件,并且没有文件夹,
在这里插入图片描述
未转换之前版本如下:
在这里插入图片描述
3、如需要采用xci模式,先用2的方法将IP转为xcix,再设置关闭Use Core Containers for IP,改为xci模式并完成转换,查看ip xci中的outputdir,已全部改为当前工程.gen路径。后在进行代码库管理时,就不需要将.gen文件进行管理,IP就只有一个xci文本文件,极大的缩小了代码库。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值