怕自己长时间不用又忘了,来记录一下。
首先我们平时一个工程成功后会生成.bit文件对吧。
然后我们这样做。

上面的generate bitstream 右键,点击bitstream settings -> 弹出下面对话框,在bitstream下
-bin_file右边勾选上 OK后重新生成generate bitstream 完成后在原来的.bit文件的后面就出现了.bin文件,具体是在

下面的 impl_i 文件夹下


然后固化过程如下
flow -> open hardware manager

- 连接下载器 → Open Hardware → Auto Connect
- 在硬件窗口看到你的 FPGA 芯片
- 右键芯片 → Add Configuration Memory Device
- 搜索选择你板子的 Flash 型号(必须正确)这一步因为原来没这个flash,后来替换了一个文件后增加了这个flash就可以正常烧录了,所以vivado上有些flash还是不支持的。我用的w25q128之类的,vivado本身就不支持,后来替换了指定文件后就可以了,要不然还得用ise14.7来烧录好麻烦。
- 弹出烧录窗口:
- Configuration File :直接选择你刚才生成的 .bin 文件
- 其他默认不动
- 点击 OK 开始烧录
✅ 烧录完成 → 断电重启 → 固化成功!
另一种固化方法是生成.mcs,我没尝试,搜了下方法,大家可以自己试一下
Vivado 固化程序(烧录 Flash)完整步骤
Vivado 固化程序的核心是:先生成比特流 (.bit) → 再生成固化文件 (.mcs) → 最后烧录到 FPGA 的 Flash 芯片,断电后程序不会丢失。
我给你整理了最通用、一步不落地完整流程,适用于绝大多数 Xilinx FPGA(zynq/7 系列 /ultrascale 都通用)。
一、前提条件
- 工程已编译完成,比特流(.bit 文件)已生成
- 开发板连接 JTAG 下载器,电脑识别到硬件
- 知道你板子上Flash 芯片型号(如:S25FL256S、N25Q256 等,原理图可查)
二、第一步:生成比特流 .bit 文件
如果还没生成,先做这一步:
- 左侧流程栏点击 Generate Bitstream
- 等待综合、实现、生成比特流完成
- 弹出对话框直接点 Cancel(不要直接下载)
二、第二步:生成固化文件 .mcs(最关键)
- 顶部菜单栏:Tools → Generate Memory Configuration File
- 弹出窗口按如下配置:
- Format :选择 MCS
- Memory Part :选择你板子上的Flash 型号(必须选对)
- Filename :输出文件名(自己命名,如
design.mcs) - Load Bitstream Files :点击 Add 选择你工程生成的
.bit文件 - Interface :一般选 SPIx1 / SPIx4(常用 x4)
- 点击 OK ,生成
.mcs固化文件
三、第三步:打开硬件管理器,烧录固化文件
- 左侧点击 Open Hardware → Open Target → Auto Connect
- 连接成功后,在硬件窗口看到你的 FPGA 芯片
- 右键芯片 → Add Configuration Memory Device
- 在弹出列表里再次选择你的 Flash 型号(和第二步一致)
- 弹出
Program Configuration Memory Device窗口- Configuration file :选择刚才生成的 .mcs 文件
- 点击 OK 开始烧录
四、第四步:烧录完成后重启生效
- 等待进度条到 100%,显示 Successfully
- 给开发板断电 → 重新上电
- FPGA 会自动从 Flash 加载程序,固化完成!