微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > Vivado程序固化

Vivado程序固化

时间:10-02 整理:3721RD 点击:


       将FPGA的配置文件(固化用的配置文件是二进制文件,仅bin文件)烧写到板载Flash中,实现上电自启动。


       本教程分两部分,第一部分介绍硬件FPGA程序固化,第二部分介绍嵌入式软件程序的固化。


       1、    硬件FPGA程序固化:



       在生成比特流文件前,需要检查一下,项目设置中Bitstream选项是否勾选了bin_file!


       在打开硬件管理器(Hardware Manager),并连接上板卡。


       在hardware面板中右击FPGA器件(xc7a50t),选择Add Configuration Memery Device.



       在弹出的添加配置存储器的界面中,找到板载的Flash存储器型号,点击OK,完成添加。


       添加完成后,Vivado会提示添加完成,是否立即配置存储器。点击OK,进入配置存储器的界面,开始将二进制文件烧写到外部配置存储器中。


       选择好烧写的二进制文件,其他设置可以保持默认。二进制文件路径为:project_name_path \project_name.runs\impl_1(project_name_pathproject_name根据用户工程进行修改)。点击OK,烧写二进制文件。


       由于需要擦除存储器原有数据,校验,以及烧写等几步,所以配置时间可能会稍微久一点。完成后,点击OK。


       这样FPGA硬件程序就固化到外部配置存储器中了,下次上电就可以通过QSPI自启动。需要注意的是板载的配置跳线帽需要设置到QSPI模式。


2、    SDK嵌入式软件程序固化

       在嵌入式使用过程中,通常先对FPGA进行配置,然后再进行程序的调试。那程序确定后,如何固化到外部Flash中,实现在FPGA上电后,自动配置,软件程序自启动呢?


       可以直接在SDK中利用XilinxTools->Program FPGA生成软硬件配置文件,即软件程序和硬件配置文件融合。再通过Xilinx Tools->Program Flash烧写到板载存储器中。这个需要SDK对板卡和器件的支持。


       在SDK中点击Xilinx Tools->Program FPGA。


       在Program FPGA界面中,SoftwareConfiguration下,microblaze软核程序默认设置的是bootloop。需要修改成软件工程生成的elf文件,该文件在project_name_path \project_name.sdk\software_project_name\Debug(Release)文件夹下(project_name_path ,project_namesoftware_project_name根据用户工程进行修改)。


       然后点击Program,会生成软硬件配置文件,文件名为download.bit。该文件目录为project_name_path\project_name.sdk\block_design_name_wrapper_hw_platform_X(其中project_name_path ,project_nameblock_design_name_wrapper_hw_platform_X视具体情况而定)。生成完download.bit文件成功,说明SDK支持本器件或者板卡,就进行固化了。


       点击Xilinx Tools->Program Flash。


       Image File选择之前生成好的download.bit文件,Flash Type选择板载的Flash存储器类型。点击Program,就开始烧写软硬件配置文件到Flash存储器中了。


       这样就实现了软硬件程序的固化。上电后,FPGA可自动配置,并运行软件程序。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top