网络上能够搜索到的,一般都是生成pof,使用AS接口进行固化。
手头有个板子,只有JTAG接口,折腾半天,记录一下。
首先需要感谢一下 石头弟弟的帖子,详见关于怎么将Quartus和Nios程序一起固化到FPGA里面 - 我是三个石头 - 博客园 (cnblogs.com)https://www.cnblogs.com/stone-wang/p/6057406.html
1、将Quartus生成的.pof文件(配置Flash即可自动生成,这里不讨论),与Nios生成的.elf文件(在sofeware文件夹的工程目录里面)拷贝到同一个文件夹,我这里将两个文件拷到D盘的jic新建文件夹里面.
2、在jic文件夹中新建一个后缀为.sh的文件,这里采用记事本新建一个my.sh
3、双击打开,复制输入以下代码。
sof="test.sof"
elf="master.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 ..."; cp sof.flash sof_elf.flash; cat elf.flash >> sof_elf.flash
echo "flash>hex ..."; nios2-elf-objcopy --input-target srec --output-target ihex sof_elf.flash sof_elf.hex
echo "del flash ..."; rm -f *.flash
4、使用window的搜索功能搜索Command Shell,打开
(貌似对版本要求不高,我的sof和elf文件都是7.2的版本,此处使用的13.1版本)
5、输入:用cd命令寻找到刚刚新建的my.sh(cd是功能自行去了解,或者将上述JIC文件放入此处默认位置)
6、查看jic文件夹发现多了一个sof_elf.hex文件,等一下用。
7、打开Quartus(此处需要与nios版本保持一致,即上述的command shell),File > convert Programming Files.. 。选择Configuration device,这里选择EPCS16,先删除SOF文件,再ADD Device添加FPGA器件,然后添加刚才生成的sof_elf.hex文件,点击Generate,即可生成JIC文件。
8、使用JTAG模式,将JIC文件固化到FLASH,断电重启,即可发现NIOS系统已经正常运行。