0. 本文目的
有关sof和elf文件的合并方法非常多,但真正好用而且经得起推敲的寥寥无几。通过相关资料的学习以及工程实践,现将个人的操作方法及收获进行总结,希望能给正在学习FPGA的伙伴们提供一点点帮助!
Nios工程开发包括两个环节,前期的内核硬件开发和后期的内核软件开发。前期开发环境为Quartus II 10.0和 SOPC builder,对应的下载文件为*.sof和*.pof。后期开发环境为Nios IDE10.0,对应下载文件为*.elf。项目调试时,先通过Quartus II 10.0将*.sof下载至FPGA的RAM中,完成FPGA 内核的硬件化,接着通过Nios IDE10.0 flash programmer将*.sof和*.elf一同烧写至flash中,最后将开发板重新上电,便完成了FPGA的程序固化。为了方便FPGA产品调试,可将*.sof和*.elf文件分步下载。但是为了提高生产效率,必须将它们合并成单个*.jic文件,再通过下载平台一次完成程序固化。
本文首先使用Nios II 10.0sp1 Command Shell [gcc3]软件和sh脚本程序,实现了sof和elf的合并与转换,得到了一个hex的临时文件。接着,使用Quartus II 软件将hex文件转换成jic文件。最后,通过下载平台将jic文件下载至flash芯片中,进行功能验证。
1. 开发平台简介
开发软件:Quartus II 10.0,Nios II 10.0
电脑主机:win7_64
FPGA开发板:YJ-DZ(易津-USB驱动开发板)
下载器:USB Blaster
2. 具体操作方法
2.1 编写sh脚本程序
在win7下新建空记事本中,文件另存为yj.sh,在里面输入以下代码: