精华内容
下载资源
问答
  • 2021-06-09 16:06:36

        1 建立工程,添加源文件.v
        2 建立约束文件.xdc
        3 编译产生bit文件(综合、执行、生成bit文件)
        4下载程序
        5程序固化
        固化的流程:ZYNQ的固化是让arm先运行,然后让arm加载FPGA的程序。(1)建立Vivado工程 (2)创建Block Design同时配置ZYNQ IP;(3)导出bit文件到SDK并且launch SDK;(4)创建FSBL文件;(5)把应用程序创建一个UBOOT.bin,之后可以放在SD卡或者是QSPI FLASH中运行。

    更多相关内容
  • fpga程序固化

    千次阅读 2022-01-28 18:51:11
    fpga程序固化


    前言

      本期课程主要介绍FPGA主要的设计配置文件类型,以及演示sof文件转化为jic文件的步骤,将我们编写好的程序固化至FPGA芯片。


    一、FPGA配置文件

      在FPGA中一般常用的三种文件类型sof、pof、jic进行设计配置。

    • sof(SRAM Object File)
         sof是在程序编译过程中产生的,如下图1所示Assembler阶段会产生一些files,这其中就包括sof文件,使用sublime打开sof发现是十六进制内容,如下图2所示。 FPGA中有SRAM(Static RAM),它保存的是FPGA设计配置信息。SRAM是一种掉电易失类型的内存,我们前期课程中的实验都是使用sof文件,通过JTAG将sof文件烧录至SRAM来配置FPGA。当我们按下电源键,重启开发板的时候,之前烧录的程序就没有了,每次运行都需要重新烧录。
    • pof(Programmer Object File)
        pof文件和sof文件类似,但是pof文件是不能直接下载到FPGA的SRAM中去的,而是通过ASP端口直接下载到FPGA的配置芯片中去的。配置芯片一般是串行FLASH芯片,在上电的时候FPGA会主动的从配置芯片中读取数据并烧写内部的SRAM数据然后执行程序。
    • jic(JTAG Indirect Configuration)
        jic文件不是在编译过程中生成的,而是需要使用Quartus Prime软件将sof文件转换得到的。通过JTAG口可以将jic文件通过FPGA作为桥接芯片下载到配置芯片(flash)中去。

    在这里插入图片描述

    图1. 汇编产生文件

    在这里插入图片描述

    图2. sof文件内容

    二、sof转jic

    在这里插入图片描述

    图3. 文件转换选项

    在这里插入图片描述

    图4. 文件转换选项卡

    在这里插入图片描述

    图5. 器件选型

    在这里插入图片描述

    图6. 添加sof文件

    在这里插入图片描述

    图7. output_files文件夹中的sof文件

    在这里插入图片描述

    图8. 生成jic文件

    在这里插入图片描述

    图9. 转换成功

    在这里插入图片描述

    图10. jic文件位置

    在这里插入图片描述

    图11. 点击programmer

    在这里插入图片描述

    图12. sof更换jic

    在这里插入图片描述

    图13. programmer添加jic文件

    在这里插入图片描述

    图14. 选择jic文件

    在这里插入图片描述

    图15. 开始烧录

    三、运行效果

    fpga程序固化


    总结

      熟悉程序固化的步骤后,我们可以将编写好的程序固化至flash芯片中,以至于我们不需要每次掉电后重新烧录程序。以上就是本期的主要内容,谢谢你的观看!

    展开全文
  • FPGA程序固化步骤,非常详细
  • 什么是FPGA程序固化? 通常对FPGA下载程序时,会采用JTAG口下载,完成好HDL设计,并且验证无误后,对设计文件进行综合,布局布线以及生成比特流文件,而FPGA开发板要想工作,需要将该文件烧写进FPGA芯片中。但是...

    什么是FPGA程序的固化?

     

    通常对FPGA下载程序时,会采用JTAG口下载,完成好HDL设计,并且验证无误后,对设计文件进行综合,布局布线以及生成比特流文件,而FPGA开发板要想工作,需要将该文件烧写进FPGA芯片中。但是FPGA是基于RAM工艺(如LUT的实质就是RAM),因此会掉电丢失,再次上电后需要重新加载bit流。一般FPGA的外围会有一个非易失性存储器:Flash或SD卡等。可以将程序加载进去,这样的话,下次上电后可以直接从该存储器中加载程序,这就是固化的过程。

    FSBL的功能:(first stage boot loader 第一阶段引导加载程序)

    ①初始化PS的配置,具体的配置方法由Xilinx硬件配置工具提供。

    ②如果镜像中有bitstream文件部分,则用它配置PL部分。

    ③从非易失性存储器(NAND/NOR FLASH)中加载SSBL(second stage boot loader,u-boot)或裸机程序到RAM(DDR)中,并将执行权限移交给它。

    注意,在将权限移交给SSBL或裸机程序之前,FSBL会关闭cache和MMU,因为u-boot在执行开始时假设它们都是关闭的。

    两种程序固化方法:(1、SD卡方式 2、Quad SPI Flash方式)

    以AXI_GPIO工程为例(利用AXI总线中断,用PL端的开关对PS端的LED进行控制)

    1、SD卡方式

    ①首先需要在原有的block design中更改配置,点开zynq模块配置界面,因为要用两种sd卡和flash两种方法进行固化,所以在外设i/o引脚配置界面中,需要勾选Quad SPI Flash和SD0(同时选择40-45引脚,可以在原理图中查看),点击ok。

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     

     

    ②在sources界面中重新generate output products,由于不需要对PS端的引脚重新绑定,所以无需重新生成顶层文件,重新导出file->export->export hardware(注意包含bitstream),最后launch SDK。

     

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_11,color_FFFFFF,t_70,g_se,x_16

     

     

    ③在SDK中先创建一个新的工程名为FSBL,在templates中选择Zynq FSBL选项,点击finish。

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_17,color_FFFFFF,t_70,g_se,x_16

     

     

    ④鼠标选中所建的工程本例子中为axi_gpio文件工程,点击xilinx->点击creat boot image,自动会帮助我们在相应的文件夹中生成BOOT.bin文件,在file path中有三个文件,分别是FSBL.elf、比特流文件、裸机引用程序elf,这三个文件的顺序不能乱,他们是按顺序执行的,最后点击creat image即可。

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     

     

    ⑤找到相对应的BOOT.bin文件拷贝到SD卡中,然后将SD卡插入板子中,将MIO4、MIO5接至高电位(SD Card启动模式),在ug585手册中如下图中可以看出当需要配置成SD卡启动,则需要将MIO4、MIO5配置成1,也就是高电位,最后开关打开上电即可自动通过SD卡下载程序。效果如图所示。

     

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     

     

    2、Flash启动

    ①1-3同SD卡的操作,在flash启动时,将MIO5接高电位、MIO4接低电位(Quad-SPI启动模式),在SDK中点击Xilinx->program flash->在device中点击select选择Auto Detect->在image中浏览BOOT.bin文件->在FSBL File中浏览FSBL.elf文件->点击program即可。结果也如上图所示。

    watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

     本工程基于vivado 2018.2

     

     

     

    展开全文
  • ZYNQ FPGA程序固化主要分3个步骤: 1创建BOOT.bin 2将bit文件导入SDK 3QSPI-FLASH启动
  • 在学习FPGA时,自己画并焊接了一块板子(cyclone IV),结果在程序固化卡了两天,遇到的问题是FPGA程序固化后重新上电几分钟后才运行程序。 现象: 1.烧写sof文件能立马正常运行。 2.烧写jic文件,软件显示烧写...

    在学习FPGA时,自己画并焊接了一块板子(cyclone IV),结果在程序固化卡了两天,遇到的问题是FPGA程序固化后重新上电几分钟后才运行程序。

    现象:

    1.烧写sof文件能立马正常运行。

    2.烧写jic文件,软件显示烧写成功,CONFIG_DONE引脚高电平。

    3.重新上电后,程序不运行,CONFIG_DONE引脚一直处于低电平。几分钟后,程序运行,CONFIG_DOWN引脚处于高电平。期间程序加载几分钟属实不正常(还用秒表掐了时间,4分半,笑死)。

    随后,我在网上查阅各种资料以及浏览各种问答,都找不到原因。因此,选择去了解FPGA上电的流程,自己用示波器抓波形。

    FPGA上电流程:

    1.FPGA正常上电后,nCONFIG、nSTATUS和CONFIG_DONE处于低电平。

    2.nCONFIG引脚电平由低变高后,配置开始,芯片检测MSEL引脚的电平信号,决定配置模式。

    3.nSTATUS引脚电平由低变高后,FPGA接受配置数据。

    4.配置数据全部载入FPGA后,CONFIG_DONE管脚电平由低变高。

    5.初始化,初始化完成后INIT_DONE引脚被拉高(INIT_DONE引脚通过Quartus II软件设置是否使用)。

    按照上电顺序一步一步抓波形时发现,nSTATUS引脚的上拉电阻位置焊的是电容。(我哭了)

    更换后,上电立马就运行程序了。

    希望这个上电流程也能够为你解决问题。

    展开全文
  • FPGA程序固化流程

    2022-05-08 08:32:48
    程序固化的流程如下: 1,工程编译完成后,点击file->Convert Programming; 2,在Programming file type中选择JTAG Indirect Configuration File(.jic); 3,在出现的窗口中的Configuration device中选择flash芯片的...
  • 如何将FPGA程序固化到外部Flash存储器 大侠们,江湖偌大,有缘相见,欢迎一叙,今天来聊一聊如何将FPGA程序固化到外部Flash存储器。 在我们刚开始学习FPGA的时候,我们一般都是将编译后生成的.sof文件(针对于...
  • ALTERA FPGA程序固化:程序烧写到flash

    千次阅读 2020-08-16 11:27:04
    实验平台:正点原子开拓者开发板 1点击如下图 2我们编译完的文件是sof文件,sof文件掉电会丢失 所以要转换成jic文件 点击generate生成jic文件 3打开烧写界面添加jic文件
  • FPGA 程序固化

    2021-05-12 14:20:13
    但是掉电后程序会丢失,那么如何固化代码到FLASH呢?就是本节的目的了。一、ZYNQ的启动流程ZYNQ7000 SOC 芯片可以从 FLASH 启动,也可以从 SD 卡里启动, 本节介绍程序 FLASH 启动的方法。Zynq7000 SOC 芯片上电后,...
  • 项目马上就要结题,FPGA程序不能像之前调试时那样掉电就丢失了,需要固化在板子上,所以小学霸就恶补了一通FPGA程序固化的方法。小学霸用的是DE10-Nano ALTERA Cyclone V 5CSEBA6U23I7的板子,EPCS为EPCS128.在FPGA...
  • Altera FPGA程序固化

    2019-01-08 09:39:00
    Altera FPGA程序固化 对MCU进行烧写程序,程序固件被写入MCU的片上存储器ROM中,现代大部分MCU的片上存储器ROM为FLASH存储器,可以实现掉电保持数据,所以可以掉电程序不丢失。 而对于Altera和Xi...
  • FPGA 程序固化的问题

    千次阅读 2015-02-04 19:52:23
    主动配置方式(AS)和被动配置方式(PS)和最常用的...AS由FPGA器件引导配置操作过程,它控制着外部存储器和初始化过程,EPCS系列.如EPCS1,EPCS4配置器件专供AS模式,目前只支持 Cyclone系列。使用Altera串行配置器
  • FPGA固化程序

    千次阅读 2018-10-31 10:05:43
    初玩FPGA开发板,我们都会遇到这种情况,每次事先写好的程序编译成功后,下载到板子里,输出...原文链接:FPGA固化程序 一、准备工作:设计好的工程,且已经编译通过,管脚分配好可下载到板子,看到输出结果;(如...
  • 注意:开始固化程序成功后,必须要断电重启 这里下载的程序是.sof文件格式,开发板断电后程序将会丢失。如果我们想要程序断电不 丢失的话,就必须将程序保存在开发板的片外Flash中,Flash的引脚是和FPGA固定的...
  • Altera FPGA程序固化(软件+硬件)

    万次阅读 2017-07-17 22:48:23
    Altera FPGA程序固化 对MCU进行烧写程序,程序固件被写入MCU的片上存储器ROM中,现代大部分MCU的片上存储器ROM为FLASH存储器,可以实现掉电保持数据,所以可以掉电程序不丢失。 而对于FPGA芯片而言,FPGA芯片是...
  • ZYNQ 芯片 ROM 里面固化了一段不可修改的程序,只要 ZYNQ 一上电 ,这段程序就会执行。 它将对 ZYNQ 的 NAND 、 NOR 、 SD 等基本外设控制器进行初始化。 把 SD 卡这类易失的存储器件初始化后,就会把其中的程序拷贝...
  • 环境配置及FPGA程序加载/固化说明 安装ISE软件,与网上大多教程一致(附:ISE14.7安装教程(转) - NingHeChuan - 博客园 (cnblogs.com))。 选择xsetup 选择Next与Acepet,后到如图所示界面。 选“ISE Design...
  • FPGA 之 SOPC 系列(八)程序固化 今天给大侠带来今天带来FPGA 之 SOPC 系列第八篇,程序固化,希望对各位大侠的学习有参考价值,话不多说,上货。 本篇主要讲解在完成软件与硬件开发之后,如果利用flash烧写工具...
  • 本文章主要讲解:FPGA+MicroBlaze裸机程序加载与固化案例,供嵌入式爱好者,DSP,ARM,FPGA异构多核开发者学习参考案例。
  • FPGA程序固化,实际是把程序烧入FPGA的外挂Flash中,所以固化FPGA的前提是它有外挂Flash。 1)接上仿真器,设备加电后,双击iMPACT。 2)双击Boundary Scan,扫描JTAG链 3)右击下图空白区域,选项中...
  • 本文档详细介绍了Vivado开发环境下的FPGA程序固化,是Vivado初学者学习掌握Vivado开发环境下的FPGA程序固化的一个很好的教程
  • FPGA程序固化操作说明 1. 连接JTAG下载器(注意接口方向)。 2. 双击打开Vivado 2017.4软件,弹出如下图所示窗口。点击Tasks下的“Open Hardware Manager”打开硬件管理器。 3. 点击“Open target”、“Auto ...
  • 基于FPGA的flash板卡程序擦除与固化

    千次阅读 2018-10-29 13:18:41
    擦除已经固化好的程序需要对flash芯片(M25P94)的时序进行描述。时序原理如图所示:  这里主要是对flash的前8个扇区进行擦除,为了产生擦除标志,所以多家了一个wait_3s的标识,8个扇区...
  • FPGA学习笔记-FLASH固化

    2020-10-20 16:42:57
    在我们刚开始学习FPGA的时候,我们一般都是将编译后生成的.sof文件(针对于Altera器件)通过JTAG方式下载到FPGA内部,但是我们会发现,给FPGA重新上电之后,我们之前给它下载的程序已经丢失了,如果我们还想让FPGA跑...
  • (开发板:SF-AT7、软件平台:Vivado 2016.2)本系列文章作为对特权同学《深入浅出玩转FPGA》课程学习的记录,这篇文章主要对工程固化过程进行总结,不足之处,还请各位在评论区指出,谢谢!
  • 最近由于项目需要,要将bit文件固化到zedboard的flash中,使程序上电自启,断电不丢失。我们知道,一般板级调试的时候都是直接下载bit流到FPGA就行,固化到Flash的话,也是先生成.mcs文件,然后下载到Flash即可。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,637
精华内容 654
关键字:

fpga程序固化