FPGA与flash固化
发布时间:2026/9/16 11:15:50 作者:尧图编辑部 阅读量:1,286

一set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]—设置spi4线上电拿取速度会比1快——必要set_property CONFIG_MODE SPIx4 [current_design]set_property BITSTREAM.CONFIG.CONFIGRATE 50 [current_design]—设置50上电从flash拿程序会很快设置50是必要的比设置100快如果不设置默认就和100差不多——必要set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]—压缩固化文件的大小如果flash空间局促这个操作必要——必要主要vivado的语言模版里面没有这条约束这里直接打开设置是不行的必须在编译完之后点击Open Implemented Design 之后再---Tools---settings。flash的操作也在这个界面二固化文件bin文件最小hex文件最大mcs大小居中三固化是不需要约束flash和fpga的管脚的除非逻辑需要和flash通信才需要。四怎么设置生成bit伴随bin生成在 Vivado 中设置每次生成 bit 文件时自动生成 bin 文件可按以下步骤进行后每次点击 “Generate Bitstream” 生成 bit 文件时Vivado 也会自动生成 bin 文件。打开 Vivado 工程点击 “Settings” 设置选项。在弹出的设置窗口中选择 “Bitstream” 选项卡。在 “Bitstream” 选项卡中找到 “-bin_file” 选项并勾选。点击 “OK” 保存设置。五bank0给xilinx仿真器的vcco的电压3.3v和1.8v都可以兼容六flash的擦除7verifyVerifyFlash 校验 是烧写ProgramFlash 存储器件如 SPI Flash、BPI Flash 等过程中 / 之后的核心校验环节其核心作用是验证烧写到 Flash 中的比特流文件与原始设计文件完全一致确保烧写过程无数据损坏、丢失或错误是保障 Flash 烧写可靠性的关键步骤。九ZYNQ SoC的固化9.0zynq的flash都是ps端的9.1流程9.2软件具体操作9.2.1在Vivado界面左侧选择Open Block Design然后在右侧的Diagram 界面中双击ZYNQ Processing System模块修改其配置。主要包括使能QSPI以及SD控制器外设并分别设 置Bank0和Bank1的电平标准如下图所示9.2.2在生成Bitstream 之后在菜单栏中选择 File Export Export hardware 重新导出硬件并在弹出的对 话框中勾选“Include bitstream”。Tools Launch Vitis IDE9.2.3新建工程。参考前面实验的步骤新建一个名为axi_gpio_fsbl的应用工程。需要注意的是在添加xsa 文件的界面中需要勾选Generate boot components生成启动组件选项勾选之后软件会自动在硬件 平台工程里生成fsbl的相关文件如下图所示9.2.4新建源文件。在axi_gpio_fsbl/src 目录上右击新建一个名为main.c的源文件然后把“AXI GPIO按 键控制LED”实验中main.c的代码拷贝到本实验的main.c中如下图所示按“CtrlS”保存然后鼠标 左键点击系统工程选择Build Project对系统工程进行编译注意一定要对系统工程进行编译否则不会 生成BOOT.BIN文件。工程编译过后可以看到系统工程和应用工程下各自生成了一个Debug文件夹系统工程下的Debug文 件里包含的是BOOT.BIN固化文件应用工程下的Debug文件里包含的是axi_gpio_fsbl.elf应用工程 烧录文件。同时硬件平台工程下zynq_fsbl文件夹下也生成了fsbl.elf启动引导文件。相关文件存放 位置如下图所示9.3硬件准备即设置为JTAG模式。9.49.4.1在Vitis 软件的菜单栏中点击“Xilinx-Program Flash”如下图所示9.4.2按下图操作 导入 BOOT.bin由fsbl.elf文件、 vivado生成的fpga 的bit文件、 app工程的elf三个文件组成和fsbl.elf文件(需要自己导入路径)将flash type 设置为 qspi-x4-sig 然后将板子拨码开关调整到JTAG模式9.4.3完成10:SDK 固化(区别VITISSDK需要手动通过应用程序生成FSBL文件)10:固化电平图11固化速度慢解决方案1set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]—压缩固化文件的大小2设置提升下载器的速度。