sof_pof_jic_elf程序下载方法
目录
1. FPGA下载文件简介
2. FPGA下载文件特点比较
3. 下载文件的烧写方法
(1)sof
(2)pof
(3)jic
(4)elf
4. 参考
1. FPGA下载文件简介
FPGA常见的下载文件格式有sof、pof、jic和elf,通常称.sof 文件和.pof 文件为FPGA“硬件”或“固件”文件。
sof为FPGA内部SRAM配置数据,通过JTAG下载,下载后实现FPGA的硬件功能,掉电后即挥发。
pof为配置器件Flash数据,通过AS模式下载到配置器件内,掉电后重新上电时FPGA会自动从配置器件内读出配置数据,然后配置FPGA内部的SRAM,实现FPGA的硬件功能。如果设计中包含NIOS,pof中仅仅包含NIOS的硬件,上电后配置后NIOS存在于FPGA内,NIOS会根据设定在预设的Memory空间取指运行。另外,pof文件可以转换成jic文件,通过JTAG方式下载到EPCS内,因此硬件设计可以省掉AS配置接口。
jic文件为JTAG间接配置文件(JTAG Indirect Configuration File),使用QuartusII File菜单下Convert Programming File命令将.sof文件转换生成,然后使用QuartusII的Tools菜单下Programmer命令下载到FLASH中(注意:jic文件下载到FLASH后必须关机重新加电!)
elf 为NIOS软件,在Nios II IDE中设计编译产生,源文件为C语言。可以通过JTAG加载到NIOS的RAM中运行,也可以通过epcs_controller(通过NIOS的Flash Programmer)加载到配置器件内(位于pof配置数据之后),如果NIOS的复位向量指向epcs_controller,NIOS上电后会从配置器件内取第一条指令执行。如果指定NIOS的复位向量到SDRAM而SDRAM是空的,NIOS会跑飞掉。
2. FPGA下载文件特点比较
下载文件 |
生成工具 |
下载方式 |
下载存储器 |
是否掉电丢失 |
.sof |
Quartus II编译生成 |
JTAG |
FPGA(SRAM) |
丢失 |
.pof |
Quartus II编译生成 |
AS (Active Slave) |
FLASH(EPCS16) |
不会丢失 |
.jic |
Quartus II “File / Convert Programming File” |
JTAG |
FLASH(EPCS16) |
不会丢失 |
.elf |
Nios II IDE |
JTAG(调试模式) |
FPGA(SRAM) |
丢失 |
.elf |
Nios II IDE |
JTAG(烧写模式) |
FLASH(EPCS16) |
不会丢失 |
3. 下载文件的烧写方法
(1)sof
使用Programmer在JTAG接口下进行烧写,烧写时需要勾选Program/Configure。
(2)pof
使用Programmer在AS接口下进行烧写,烧写时需要勾选Program/Configure和Verify。
(3)jic
使用Programmer在JTAG接口下进行烧写,烧写时需要勾选Program/Configure和Verify。
(4)elf
详情请看:
Nios II 程序固化(如何下载elf文件) - 瓜儿不甜的博客 - CSDN博客
https://blog.csdn.net/snaking616/article/details/83064887
4. 参考
[1] NIOS 中的sof、pof和elf关系 - DanielLee_ustb的专栏 - CSDN博客
https://blog.csdn.net/daniellee_ustb/article/details/8539249
[2] Altera FPGA带NiosII内核程序的JTAG下载方法总结 - 百度文库
https://wenku.baidu.com/view/5fd49863f18583d048645950.html
[3] FPGA开发中sof和elf文件的合并与格式转换 - 瓜儿不甜的博客 - CSDN博客
https://blog.csdn.net/snaking616/article/details/83049985
[4] 使用Nios II 10.0sp1 Command Shell [gcc3]合并sof和elf文件——调试记录 - 瓜儿不甜的博客 - CSDN博客
https://blog.csdn.net/snaking616/article/details/83022956
[5] Nios II 程序固化(如何下载elf文件) - 瓜儿不甜的博客 - CSDN博客
https://blog.csdn.net/snaking616/article/details/83064887
sof_pof_jic_elf程序下载方法相关推荐
- 【模块】ESP32CAM arduino程序下载方法及注意事项避坑笔记
微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 目录: 前言&概述 下载方法: nodemcu v1下载方法 ...
- GD32程序下载方法
使用usb转ttl工具下载方法,步骤如下: 步骤: 1.连接PCB板的串口0,TX,RX,GND三根线.TX,RX交叉连接. 2.boot0接地. 3.设备上电. 4.打开软件GigaDevice M ...
- STC89C52RC最小系统程序下载方法
1.给最小系统装好芯片,如下图所示.注意事项:芯片的朝向,有个缺口的地方朝蓝白色开关这边. 2.正确连接电脑.CH340G模块和51单片机最小系统之间的连线 1)接5V电源:用DC005电源线给最小系 ...
- smart700iev3 程序下载设置_西门子PLC基础:S7-200 SMART PLC程序下载
今天主要给大伙讲解西门子S7-200 SMART PLC程序下载方法,从如何打开项目程序.下载项目程序IP地址.下载项目程序这几个方面来入手. 步骤一:打开项目程序 1.找到项目文件,打开项目程序,如 ...
- macOS完整安装程序下载
众所周知,macOS由Apple公司打造,因追求高端,当然没有Windows那样大众化.由于Windows的市场太复杂,所以有很多Ghost衍生版本,通常都提供一键装机功能(不推荐,有 ...
- ST芯片量产方案--程序下载
1 引言 1.1 背景 物联网时代,自然少不了各类MCU处理器芯片的支持,其中stm32芯片广泛应用于各种场景,那么在大批量的产品中是如何进行程序下载的呢? 2 程序下载方法 2.1 常规方法 日常生 ...
- 11 lego spike 官方教程 07 —— spike 程序下载 电脑 ipad 华为pad
忽然发现之前学习的内容,是后面的内容,又回到前面的学习内容. 1.电脑版 lego spike程序下载方法 网址 https://legoeducation.cn/zh-cn/downloads/sp ...
- JLINK通过SW模式下载程序的方法
JLINK通过SW模式下载程序的方法 1)概述:JLINK有2种调试模式:JTAG和SWD(串行模式).JTAG是常用模式,大家都熟悉:下载文件如图3: 2)使用SW模式,需要(只需要)4根连线,连接 ...
- Axure谷歌浏览器Chrome扩展程序下载及安装方法
Axure谷歌浏览器Chrome扩展程序下载及安装方法 1.下载Chrome扩展程序 下载地址:http://oss.liuzhuo.xin/xcx/image/kjnn3840_7htct7mp82 ...
- C语言游戏: 俄罗斯方块(Tetris)@兼谈程序优化方法 [源码+exe下载]
消除重复:如何将程序逻辑与数据分开? ----俄罗斯方块(Tetris)@兼谈程序优化方法 背景提示: 1,数据,是程序设计的根本.因为任何程序都可以看作是一组数据,和作用于其上的一组操作,这也是面向 ...
最新文章
- 字节一实习生误删公司所有lite模型,几百人为其善后,有员工处理事故到凌晨三点!...
- mysql安装源是什么_mysql官方源安装的一些问题
- 【集合论】有序对 ( 有序对 | 有序三元组 | 有序 n 元祖 )
- python函数太多_numpy Loadtxt函数似乎消耗了太多内存
- Linux 文件属性和权限详解
- 用啥Selenium?! .NET程序员就用自家的Playwright for .NET
- java8 入门脚本之家_Java 8中的Lambda表达式
- 解决SerMyAdmin无法登陆的问题
- fiddler工具条、状态栏、请求信息栏各按钮的作用
- jvm类加载机制是怎么样的
- 命令行运行python找不到sqlite_ubuntu python3.6 找不到_sqlite3
- C++第二次上机5-5
- kettle创建mysql资源库时报错_kettle 创建数据库资源库
- sliverappbar高度,SliverAppBar的最小高度(颤振)?
- 项目太大 传不到服务器,上传大文件的解决方案
- DialogBox不显示对话框的原因分析
- 摩拜显示服务器忙,摩拜崩了?用户扫了5辆都失败 摩拜称APP出现短时故障
- LeetCode:606.根据二叉树创建字符串
- git 用idea打tag
- relate to与associate with的区别