微宝网 微宝网
首页
  • 专题

    • ZYNQ
    • 树莓派
    • 信号处理
    • 硬件
    • 大杂烩
  • 笔记

    • 《Git》
    • 《Qt》
    • 《Python》
转载
产品
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档

bitQ

饮马江湖,仗剑走天涯
首页
  • 专题

    • ZYNQ
    • 树莓派
    • 信号处理
    • 硬件
    • 大杂烩
  • 笔记

    • 《Git》
    • 《Qt》
    • 《Python》
转载
产品
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
  • Petalinux下触摸屏驱动
  • migen安装与使用
  • vivado工程Git版本控制
    • 1. 理解工程结构
    • 2.STEP by STEP
      • 1、初始化Git仓库创建目录结构
      • 2、新建工程
      • 3、代码提交
  • vivado工程异常
  • ZYNQ
bitQ
2024-12-16
目录

vivado工程Git版本控制

# vivado工程Git版本控制

为了更有效地维护FPGA项目,我决定采用Git进行版本控制。尽管我之前对Tcl脚本不太熟悉,而且Block Design的加入常常导致项目文件变得既多又大,我花了两天时间深入研究并掌握了这些内容。现在,我将我的发现记录下来,希望对初学者有所帮助。

# 1. 理解工程结构

在Vivado工程中,我们特别关注源代码、Block Design(BD)、XDC(约束文件)和IP(知识产权核)。这些文件通常存放在工程的`XXX.srcs`目录下。然而,由于Block Design生成的文件体积庞大,如果直接对这个目录进行版本控制,可能会失去版本控制的意义。

为了解决这个问题,我们可以将Block Design导出为Tcl脚本,并对 xxx.tcl文件进行版本控制。这样,我们只需要管理源代码、XDC文件、IP和TCL文件。

需要注意的是,如果项目中使用了sysgen、HLS等工具生成的IP,需要将这些IP的路径添加到工程中。这里不包括对自定义IP的版本控制说明。

还有一点很重要,导出的Tcl文件描述了Block Design中使用的自带库IP的参数和模块间的连接关系。在开始工作之前,确保所有使用的源代码文件和自定义IP都已准备就绪,然后通过source命令执行Tcl文件,即可在工程中创建Block Design文件。

# 2.STEP by STEP

我将以现有工程举例,修改其目录结构后提交到版本控制库。

# 1、初始化Git仓库创建目录结构

image-20241216162124142

其中Script放置bd脚本、工程脚本;Work中放置vivado工程,并且该目录设置ignore。

# 2、新建工程

1、到Work目录下建立vivado空工程

2、将源文件、约束拷贝到Src,将ip拷贝到IP,这里我将旧工程中的src拷贝过来了

3、添加src、ip路径(如果用到自定义的IP)

4、将原工程的block design保存到tcl,如果有多个,则分别保存

image-20241217123152632

5、在新工程中打开Tcl Console, 移动到脚本的路径: cd E:/Proj_Path/Script

source design_2.tcl,会在新工程中创建block_design

6、不出意外的话新工程就建立完毕

# 3、代码提交

.gitignore 文件定义如下:

# Vivado-generated directories and files
*.jou
*.log
*.str
*.zip
*.xsim/
*.cache/
*.hw/
*.ip_user_files/
*.runs/
*.sim/
*.webtalk/
*.wdb

# Specific project files
*.dcp
*.xpr
*.xise
*.xisebak
*.bak
*.rpt
*.vcd
*.sysdef

# Simulation output
*.wcfg
*.wdb

# Build outputs
*.bit
*.bin
*.elf
*.mcs

# Miscellaneous
*.lock

Work
Proj

Bin/*
!Bin/do_tcl.bat
!Bin/Full_Bitstream.bif
!Bin/gen_bitbin.tcl
**/__pycache__
**/.idea
*.csv
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#FPGA#vivado#工具
上次更新: 2025/02/14, 14:21:56
migen安装与使用
vivado工程异常

← migen安装与使用 vivado工程异常→

最近更新
01
vivado工程异常
02-20
02
制作微信卡片
02-14
03
使用WaveDrom绘制漂亮的时序图
11-04
更多文章>
Theme by Vdoing | Copyright © 2023-2025 微宝 | MIT License
鲁ICP备14006596号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式