1.为什么要产生jic文件

  • Nios工程开发包括两个环节,前期的内核硬件开发和后期的内核软件开发。前期开发环境为Quartus,对应的下载文件为*.sof。后期开发环境为Nios II,对应下载文件为*.elf。
  • 项目调试时,先通过Quartus将*.sof下载至FPGA的RAM中,完成FPGA 内核的硬件化,接着通过Nios programmer将*.sof和*.elf一同烧写至flash中,最后将开发板重新上电,便完成了FPGA的程序固化。为了方便FPGA产品调试,可将*.sof和*.elf文件分步下载。
  • 但是为了提高生产效率,必须将它们合并成单个*.jic文件,再通过下载平台一次完成程序固化。

2.如何产生jic文件

本文首先使用Nios II Command Shell [gcc4]软件( 选中NIOS中的工程文件APP,单击右键选择Nios II -> Nios II Command Shell)和sh脚本程序,实现了sof和elf的合并与转换,得到了一个hex的临时文件。接着,使用Quartus II 软件将hex文件转换成jic文件。最后,通过下载平台将jic文件下载至flash芯片中,进行功能验证。

  • 在win7下新建空记事本中,文件另存为yj.sh,在里面输入以下代码:首先进行sof和elf文件的命名(见代码注释)
sof="qsys_first.sof"
elf="APP.elf"echo "sof>flash ..."; sof2flash --epcs --input=$sof --output=sof.flash --quiet
echo "elf>flash ..."; elf2flash --epcs --after=sof.flash --input=$elf --output=elf.flash
echo "cat flash ..."; cat  elf.flash >> sof.flash
echo "flash>hex ..."; nios2-elf-objcopy --input-target srec --output-target ihex sof.flash sof.hex
echo "del flash ..."; rm -f *.flash
代码注释:
代码第一行和第二行分别定义了两个变量sof和elf。
第三行和第四行分别完成了sof到flash文件、elf到flash文件的转换,--after=sof.flash应该表示等待sof.flash的生成。
第五行使用了cat命令,表示将elf.flash接在sof.flash后面,并覆盖原sof.flash文件,cat的具体用法详见参考(2)
第六行实现了flash到hex文件的转化,最后一行执行清除所有*.flash文件的命令。

3.具体步骤:

  • 1、所建立的脚本文件存放于磁盘的新建文件夹JIC目录下,同时,已经备好的ELF和sof(qsys中需要有EPCS)文件也一并拉过来。

  • 2、按照上面提到的方式打开NIOS commend shell,首先输入 cd f:\jic来制定文件路径如下图(黄色部分代表目前处理的目录)

    接下来输入 ./yj.sh运行脚本文件

  • 3、等待运行结束后生产所属的hex文件中介文件用于产生jic. 需要注意的是选择完器件后,应该插入hex文件而不是sof文件。

    地址选择绝对地址

  • 4、最后点击生成即可!!

注意,生成的jic文件直接下载入板子,无法直接运行。需要断电后重新上电。

如何产生JIC文件(sof+ELF=jic)相关推荐

  1. Intel(Altera)FPGA的SOF转JIC文件和下载详细教程

    Intel(Altera)FPGA的SOF转JIC文件和下载详细教程 以较新的cyclone 10 FPGA为例进行JTAG模式下载JIC文件. quartus烧写文件有三种格式,分别是Pof,Sof ...

  2. SOF文件生成JIC文件

    file菜单下>点击convert programming files flo flash loader 选择EP4CE10 SOF Data 选择用于转换的SOF文件 点击Generate按钮 ...

  3. FPGA学习笔记之Altera FPGA使用JIC文件配置固化教程

    FPGA学习笔记之Altera FPGA使用JIC文件配置固化教程 很多做过单片机的朋友都知 道,我们在对MCU烧写完程序固件后,那么该程序固件就存储在了该MCU内部.即使MCU断电了再重新上电,程序 ...

  4. 通过JTAG配置EPCS64芯片方法(将Quartus SOF转换JIC)

    如何通过JTAG下载程序到EPCS64配置芯片中,程序掉电不消失? 总的来说就是两步,一个就是把sof文件转成JIC文件,然后在jtag模式下选择jic文件即可. 1.使用汇编器产生一个包含FPGA配 ...

  5. FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)

    文章目录 一.开发流程 二.新建文件夹(不许出现中文路径) 三.新建工程 三.添加设计文件 四.配置工程 五.分析与综合 六.分配引脚 七.编译工程 八.下载程序 附.修改成jic文件 一.开发流程 ...

  6. FPGA烧录jic文件问题

    1.如果无法烧录jic文件,出现Failed的情况,请注意你选择的芯片是否正确 2.烧录成功且sof文件可以正常运行,但是无法执行程序 原因可能是:下载Fliash成功后开发板不能立即执行文件,需要断 ...

  7. 【Android 逆向】ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

    文章目录 一.ELF 文件类型 ( 动态库文件 ) 二.ELF 文件对应 CPU 架构 三.ELF 目标文件版本 四.可执行程序起始地址 一.ELF 文件类型 ( 动态库文件 ) ELF 文件头 第 ...

  8. 【Android 逆向】ELF 文件格式 ( ELF 文件简介 | ELF 文件结构 )

    文章目录 一.ELF 文件简介 二.ELF 文件结构 一.ELF 文件简介 ELF 文件是 Executable and Linkable Format ( 可执行 和 可链接 格式 ) 的文件 ; ...

  9. Quartus II sof文件转 jic文件

    选择File->Convert Programming Files... Programming File Type选择JTAG Indirect ConfigurationFile(.jic) ...

  10. Quartus 11.0 的AS 下载方式和JTAG下载jic文件的方式

    FPGA下载的三种方式:主动配置方式(AS)和被动配置方式(PS)和最常用的(JTAG)配置方式: AS由FPGA器件引导配置操作过程,它控制着外部存储器和初始化过程,EPCS系列.如EPCS1,EP ...

最新文章

  1. 8W+文本数据,全景式展现中国教育发展情况
  2. 尺取法 POJ 3601 Subsequence
  3. kl散度学习笔记python实现
  4. PL/SQL程序设计以及安全管理实验遇到的问题及解决
  5. 项目需求分析——如何理解和识别系统需求?
  6. 高颜值可定制在线作图工具-第二版
  7. jQuery源码研究分析学习笔记-静态方法和属性(10)
  8. linux中下载迅雷链接
  9. java--复制文件的方法:
  10. 新发布GoldenGate 12c版本中的主要特性
  11. 计算机中word繁体字转简体字,word简繁体怎么转换的两种方法
  12. 贝叶斯自举法(BayesianBootstrap)简介
  13. 怎么卸载quartus_分享一个Quartus工程清理方法
  14. 新东方雅思词汇---9.1、sist
  15. 思必驰宣布完成5亿元D轮融资 继续深化AI生态布局
  16. 【学生管理系统】班级管理
  17. SpringBoot接入支付宝沙箱返回支付二维码
  18. 短信验证码测试——短信轰炸之横向轰炸和纵向轰炸
  19. 数据结构实验课_实验四 队列
  20. 台灯有必要买AA级的吗?精选专业护眼的国AA级台灯

热门文章

  1. 微信小程序云开发问题篇3_云数据库导入Excel数据(xls转为json导入之后报错:导入数据库失败, Error: Poll error, 导入数据任务(id:1431654)异常...)
  2. Python数据可视化:5段代码搞定散点图绘制与使用,值得收藏
  3. 生成一个16位的随机数字
  4. U盘数据损坏了不要慌,这两种方法可以轻松找回数据
  5. postgresql10中的pg_stat_statements
  6. 新版Chrome设置--disable-web-security无效 解决方法
  7. CTF密码学解题思路
  8. MPB:中科院南土所褚海燕组-结构方程模型在土壤微生态中的应用
  9. android 手机安装windows7,安卓手机安装运行Win7系统教程(图文)
  10. pack_padded_sequence torch说明