Nios II 程序固化(如何下载elf文件)

2018年10月15日 21:37:32 瓜儿不甜 阅读数:723
 
 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/snaking616/article/details/83064887

在调试Nios程序阶段,通常需要先将配置文件(*.sof)通过 JTAG 下载刡到FPGA 中,接着在Nios II IDE窗口中,右击工程名,选择Debug as -> Nios II hardware 来实现内核软件的调试,调试中的代码在开发板再次上电后会丢失,如何固化Nios程序呢,详细步骤如下:

1. 下载配置文件(*.sof)

首先,需要将 usb blaster 与开发板连接,我们先将其与开发板的 JTAG 模式接口相连。然后我们打开 NIOS IDE 软件(假设我们已经将工程编译好了),打开后,点击下图所示红圈处

点击后,如下图所示,然后点击下图红圈处(Add File)

点击后,如下图所示,选择 led.sof

选择后,如下图所示,然后点击 Start

点击后,成功了如下图所示

2. 下载内核软件程序(*.elf)

接下来开始下载程序到 EPCSx 中,我们必须将配置信息和 NIOS 程序同时下载到配置芯片中,点击下图所示红圈处

点击后,如下图所示,其中需要将红圈 1、 2、 4 选中,红圈 3 不用选。

选中红圈1 是将 NIOS 软件程序写到 FLASH 中,而到底是写到哪里,是由前面我们讲过的 CPU中 Reset Vector 的 memory 决定。也就是说,我们之前选择了 epcs,那么我们就是将代码下载到EPCSX 中了。

选中红圈 2 是将 FPGA 的配置文件下载到FLASH 中,而这里到底下载到哪是由红圈 5 处决定的,我们在这里还是选择 epcs,就是将配置文件下载到 EPCSX 中。其实 EPCSX 实质就是一种串行的 FLASH。

红圈 3 是将文件下载到 flash 中,比如说字库文件啊,波形文件啊等等,将这些文件直接存储到FLASH 中,只需要读取就可以了。不过这个选项跟我们下载配置文件和 NIOS程序时没有关系的,所以返里不选择它。

圈4勾选的是Validata Nios II system ID before software download,即在下载软件程序之前要确认系统的ID号,这样每次在QuartusII中修改“硬件”(即.sof文件)或在Nios II IDE中修改“软件”(即.elf文件)后能报警提示,确保硬件与软件最新版本同步。

上面选择好以后,点击 Apply,然后点击 Program Flash,就可以开始烧写 FLASH了,至此,如何将 FPGA 配置文件和 NIOS 的程序下载到 EPCSx(x 为 1,4,16…)里面的过程就说完了。

3. 参考:

(1)NIOSII那些事儿 REV7.0_完整版-CSDN下载

https://download.csdn.net/download/snaking616/10719292

(2)Altera FPGA带NiosII内核程序的JTAG下载方法总结_百度文库

https://wenku.baidu.com/view/5fd49863f18583d048645950.html

转载:https://blog.csdn.net/snaking616/article/details/83064887

Nios II 程序固化(如何下载elf文件)的更多相关文章

  1. 解决NIOS II工程移动在磁盘上位置后project无法编译问题

    说明:本文档于2017年3月4日由小梅哥更新部分内容,主要是增加了讲解以Quartus II13.0为代表的经典版本和以15.1为代表的更新版本之间,解决问题的一些小的差异. 如果用户只是想快速解决问 ...

  2. 【小梅哥SOPC学习笔记】NIOS II工程目录改变时project无法编译问题

    解决NIOS II工程移动在磁盘上位置后project无法编译问题 说明:本文档于2017年3月4日由小梅哥更新部分内容,主要是增加了讲解以Quartus II13.0为代表的经典版本和以15.1为代 ...

  3. Nios II的Boot过程分析

    目录 1       概述....................................................................... 1 2       几种常见的 ...

  4. 关于Nios II的启动分析(转载)

    原文地址:http://hi.baidu.com/goatdai/item/cc33671545d89243e75e06ad 常用到的存储器包括SDRMA.SRAM.FLASH.Onchip_memo ...

  5. Nios II 系统时钟timestamp的应用

    在用Nios II做外设时序驱动的时候,经常会用延时函数.有时会常使用某个FPGA芯片和时钟,比如笔者一直使用的芯片是cyclone系列 EP2C35F484C8N,PLL输入SOPC时钟是50M.因 ...

  6. Linux之ELF文件初探

    对比windowsPE文件与概述 在windows中可执行文件是pe文件格式,Linux中可执行文件是ELF文件,其文件格式是ELF文件格式,在Linux下的ELF文件除了可执行文件(Excutabl ...

  7. 扒一扒ELF文件

    ELF文件(Executable Linkable Format)是一种文件存储格式.Linux下的目标文件和可执行文件都按照该格式进行存储,有必要做个总结. 目录 1. 链接举例 2. ELF文件类 ...

  8. NIOS II 软件程序固化的相关知识

    片上RAM和ROM的SOPC系统1.生成hex文件2.将hex文件添加到quartus工程中(添加qip文件)3.对工程进行全编译4.下载sof就可以看到程序运行5.将sof转换为jic文件,烧写到E ...

  9. sof文件和NIOS II的软件(elf)合并为jic文件以使用Quartus Programmer烧写

    将Altera FPGA的sof文件和NIOS II的elf固件合并为一个jic文件以使用Quartus Programmer烧写   我们在学习和调试NIOS II工程的时候,一般都是先使用Quar ...

随机推荐

  1. 读取XML文件内容

    myeclipse中类的格式 上面中的RunMain.java为程序执行的入口,JdbcUtil.java为实体类,XmlDocumentUtil.java执行解释xml文件与获取里面的属性,程序所需 ...

  2. Java高级面试题解析(一)

    最近,在看一些java高级面试题,我发现我在认真研究一个面试题的时候,我自己的收获是很大的,我们在看看面试题的时候,不仅仅要看这个问题本身,还要看这个问题的衍生问题,一个问题有些时候可能是一个问题群( ...

  3. 真正“搞”懂http协议01—背景故事

    去年读了<图解HTTP>.<图解TCP/IP>以及<图解网络硬件>但是读了之后并没有什么深刻的印象,只是有了一层模糊的脉络,刚好最近又接触了一些有关http的相关内 ...

  4. 2019-1-9 c#时间格式

    DateTime now=DateTime.Now; //获取拼接形式的,精确到毫秒 now.ToString("yyyyMMddHHmmssfff"); //获取时间戳 自公元0 ...

  5. 1099 Lottery

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1099 英文水平太差了,题目实在是不知道是什么意思,然后看了其他高手写的思路,才看明白. 题意,收集n张彩票 ...

  6. Mac + OpenCV3.3.0 + PyCharm (非常简单的配置过程)

    最近要用python来写opencv,主要是需要学习计算机视觉和机器学习.看了网上的配置过程,愣是把一件简单的事搞复杂了. 话不多说,配环境走起! 打开PyCharm,找到Preferences 尝试 ...

  7. python网络编程(十)

    select版-TCP服务器 1. select 原理 在多路复用的模型中,比较常用的有select模型和epoll模型.这两个都是系统接口,由操作系统提供.当然,Python的select模块进行了 ...

  8. 2. Spring 的 HelloWorld

    初学Spring,就先来写一个 Spring 的 HelloWorld 吧 1. 首先,新建一个 java Project(因为暂时不需要网页,所以就不用创建 web 项目了) 2. 导入 Sprin ...

  9. windows下安装mysql遇到的问题

    windows下安装mysql5.6.41步骤:http://www.cnblogs.com/sjy18039225956/p/9203052.html 系统错误2详见MySQL安装过程net sta ...

  10. chardet查看字符串的编码(非常好用)

    chardet不是python自带的包需要手动安装 chardet安装命令(dos下): pip install chardet 或: pip.exe install chardet 案例: > ...