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. 开始烧录

三、运行效果

待定


总结

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

猜你喜欢

转载自juejin.im/post/7079736248961040420