FPGA版本管理(三)如何用GIT管理Vivado工程


GIT管理Vivado工程的流程及步骤:

1.创建VIVADO工程

1.1工程目录结构确定

按以下工程目录结构创建工程。

xxx_project
    -prj
    -src
    -xdc
    -ipcore
        -coe
        -ipcore
        -ipcore
    -tcl

Tips:
目录结构的确定,主要有两个目的:

  • 明确哪些文件夹下的文件需要版本管理;
  • 解决使用tcl脚本时,工程配置中相对路径的问题;

1.2创建工程

cd到prj目录下,打开VIVADO,并新建工程。

2.IP Core管理

按照Xilinx推荐的方式[1]:在Manage IP中生成IP Core。如果IP Core在综合时使用Global模式,则只需要生成.xci和.xml文件即可。
如果IP Core在综合时使用OOC模式,则所有生成的文件都需要在版本管理中。
在这里插入图片描述
IP Core使用的coe、mif文件等,放在ipcore/coe目录下。


Tips:

  • Global模式:版本管理中,只需要.xml和.xci文件,就可以完全重新生成IP Core;
  • OOC模式:所有生成文件均需在版本管理中,如.dcp文件;虽然只.xml和.xci文件就可以完全重新生成IP Core,但为了节省综合的时间,将IP Core中的所有文件放在版本管理中,就无需再次综合;

3.生成tcl脚本

cd到prj/路径下,在vivado的tcl中输入:

write_project_tcl -force prj_gen.tcl

这样所有的工程配置都导出到了prj_gen.tcl这个tcl脚本中,后续通过这个tcl脚本,就可以完成重构工程。
将该prj_gen.tcl文件拷贝至tcl文件夹中。


Tips:
这里,我们将prj/这个路径作为当前工程路径,后续我们所有的文件都是相对于这个位置进行索引的。
所以,在使用write_project_tcl时,必须处于当前工程路径下。


4.GIT提交

在GIT中需要管理的文件如下,prj下面的所有工程文件都不需要,因为我们可以通过prj_gen.tcl完全重构工程。

xxx_project
    -prj
    -src
    -xdc
    -ipcore
        -coe
        -ipcore
        -ipcore
    -tcl

Tips:
我们只需要管理,源代码和工程配置文件(prj_gen.tcl)。


5.重构版本

运行以下命令,即可在prj下重新生成工程。

cd xxx_project/prj/
vivado -mode batch -source ../tcl/prj_gen.tcl

Tips:
tcl脚本管理,为后续实现Gitlab CI下自动编译版本做准备。


1.Xilinx,XAPP1165-Using Vivado Design Suite with Version Control Systems,August 5,2013
2.Xilinx,UG1198-Revision Control System(v2016.3),October 28,2016

  • 5
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Vivado是一款由Xilinx开发的集成电路设计工具,用于设计和实现FPGA和SoC。在Vivado中,可以使用示例工程来学习和理解FPGA设计的基本概念和技术。根据引用\[1\]提供的链接,可以找到ADI(Analog Devices Inc.)的开源示例工程路径。通过该路径,可以转到相应版本的开源示例工程git链接,并下载开源工程。 在Vivado中,可以使用Verilog或VHDL等硬件描述语言来书写代码。根据引用\[2\]提供的代码示例,可以看到一个简单的Verilog模块,名为led。该模块包含一个复位信号rst、时钟信号clk和一个4位的输出信号led。在时钟上升沿触发的always块中,实现了一个计数器和一个灯的状态机。计数器每次加1,灯的状态根据计数器的值进行更新。当计数器达到一定值时,灯的状态会循环左移一位。最后,将led信号赋值为灯的状态。这个示例代码展示了如何使用Verilog来实现一个简单的LED控制器。 在Vivado中,还需要使用输入约束代码来指定FPGA芯片上的引脚与设计中的信号之间的映射关系。根据引用\[3\]提供的输入约束代码示例,可以看到led信号的四个位与FPGA芯片上的引脚D18、G14、M17和M16相对应。同时,时钟信号clk与引脚L16相对应,复位信号rst与引脚G16相对应。此外,还需要指定引脚的IO标准为LVCMOS33。这些输入约束代码确保了设计中的信号与FPGA芯片上的引脚正确连接,并设置了引脚的IO标准。 综上所述,Vivado的示例工程可以通过下载ADI的开源示例工程,并使用Verilog或VHDL等硬件描述语言编写代码。同时,需要使用输入约束代码来指定引脚与设计中的信号之间的映射关系和IO标准。 #### 引用[.reference_title] - *1* [ADI开源示例工程的创建(通过vivado)](https://blog.csdn.net/cigarliang1/article/details/121598324)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [vivado简单小例子](https://blog.csdn.net/huxiaokeai/article/details/119749710)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值