zoukankan      html  css  js  c++  java
  • sof与NIOS II的elf固件合并生成jic文件

    关于sof与NIOS II的elf固件合并生成jic文件,我在参考网上的教程后,按教程操作,但中间遇到一些问题,在自己调试后,终于搞定,现在将一步一步的教程分享给大家,大家可以进行转载,请注明来源,谢谢!

    本文参考【小梅哥SOPC学习笔记】sof与NIOS II的elf固件合并jic得到文件            https://www.cnblogs.com/xiaomeige/p/6709991.html

    有两种方法可以让大家使用,一种是输入命令法,另一种是把命令放在txt文件中,执行TXT文件即可,第一种每次转化都要输入命令,比较繁琐,第二种,简单修改txt文件即可,我推荐第二种,下面两种方法都介绍下:

    不管是方法一还是方法二,前提首先要在Qsys里面加入EPCS模块,如下图所示。然后生成对应的.sof文件和.elf文件。

    方法一:命令法

    1.将.sof 文件生成flash文件:

    ⑴首先我们打开我们的NIOS II软件工程,可看到led和led_bsp

    ⑵选中led,单击右键并选择Nios II -> Nios II Command Shell

    此时出现如下界面

    ⑶将quaryus生成的.sof文件从output_files文件夹中拷贝到led文件夹中(目录如下图):

    即从  

    拷贝到  

    ⑷在命令行窗口中执行

    sof2flash --input=test_led.sof --output=hwimage.flash --epcs –verbose命令

    使用ls命令,可看到生成了hwimage.flash

    2.将.elf文件生成flash文件:

    ⑴输入命令:elf2flash --input=led.elf --output=swimage.flash --epcs --after=hwimage.flash –verbose

     

    使用ls命令,可看到生成了swimage.flash文件

    3.转换.flash文件到.hex文件

    直接输入以下命令:nios2-elf-objcopy --input-target srec --output-target ihex swimage.flash swimage.hex

     

    输入ls命令,可看到生成swimage.hex

     4.把hex文件转换成jic文件

    ⑴在Quartus® II软件中,open File > Convert Programming Files > Set the programming file as JTAG Indirect Configuration File (.jic).

    ⑵选择EPCS

    在配置下拉菜单中选择合适大小的EPCS器件(见第7步图)

    ⑶命令jic

    命名你的输出.jic 文件(见第7步图)

    ⑷Add Device

    点击Flash Loader的下面,在右边选择Add Device (见第7步图)

    ⑸选择FPGA器件

    从列表中选择你的FPGA器件(见第7步图)

    ⑹Add SOF

    点击SOF Data,选择Add File,选择加.sof 文件(见第7步图)

    ⑺Add Hex data

    点击Add Hex data,选择Relative addressing,选择上面生成的.hex 文件

    ⑻.然后点击Generate生成。生成完成后检查生成的 .map 文件(使用记事本打开)有Page_0在起始地址0x0,.hex文件在Page_0结束地址后的起始地址1

     

     5.下载jic文件

    下载完成后,重新对FPGA上电,观看效果

     方法二:txt文件法

    1.在led目录下新建一个txt文件

    2.把命令复制到txt文件中

    sof2flash --input=test_led.sof --output=hwimage.flash --epcs -verbose
    elf2flash --input=led.elf --output=swimage.flash --epcs --after=hwimage.flash -verbose
    nios2-elf-objcopy --input-target srec --output-target ihex swimage.flash swimage.hex

    如果下次下载程序时,只需要把下图中的名字改成对应的即可。

    3.在命令窗口执行./test.txt命令

    生成了和方法一一样的hwimage.flash,swimage.flash,swimage.hex文件。

     4.生成jic文件

    按照上面方法一的步骤,把hex文件转换成jic文件

    5.下载程序

     按照方法一中的下载程序步骤

  • 相关阅读:
    模板 无源汇上下界可行流 loj115
    ICPC2018JiaozuoE Resistors in Parallel 高精度 数论
    hdu 2255 奔小康赚大钱 最佳匹配 KM算法
    ICPC2018Beijing 现场赛D Frog and Portal 构造
    codeforce 1175E Minimal Segment Cover ST表 倍增思想
    ICPC2018Jiaozuo 现场赛H Can You Solve the Harder Problem? 后缀数组 树上差分 ST表 口胡题解
    luogu P1966 火柴排队 树状数组 逆序对 离散化
    luogu P1970 花匠 贪心
    luogu P1967 货车运输 最大生成树 倍增LCA
    luogu P1315 观光公交 贪心
  • 原文地址:https://www.cnblogs.com/wojiaxiaoguo/p/9328560.html
Copyright © 2011-2022 走看看