NIOS系统固化方法汇总(详细步骤)

tech2023-01-19  202

最近在学习过程中遇到需固化NIOS的过程,在经过不断的尝试和查找之后,汇总出以下几种烧录方式。

烧录方式与实际的硬件环境有关系,但总体归为以下两类:

一、通过nios eclipse软件自带的Flash Programmer来进行固化;

二、通过生成的elf文件进行转换后,与sof文件生成jic文件进行固化;

 

一、Flash Programmer 固化操作

1.在Qsys中,添加EPCS控制器,并连号线,导出引脚,设置中断(问题1:中断优先级对系统启动有没有影响),然后generate系统,quartus工程重新编译(不再详细说明)。

2.在nios eclipse中,对BSP进行设置(右键BSP工程-->NIOS II-->BSP Editor),勾选如图示选项,重新编译BSP,重新编译工程,建议使用全编译(Ctrl + B)。

3.将之前quartus工程编译好的sof文件下载至板子中,在NIOS Eclipse中(NIOS II-->Flash Programmer),在连接设置中忽略系统ID和timestamp,在窗口中,要找到自己的下载器和板子,如果没有,点击Refresh Connections。

4.设置完后,新建下载文件,在弹出窗口中,选择自己所使用的SOPC文件或BSP设置文件(选择的时候注意路径)

选择好后,添加elf文件个sof文件(注意路径),添加文件时,注意文件类型,可在下方选择。添加好文件后在设置中勾选查出flash和在复位处启动。

然后开始下载烧录,注意窗口提示的信息内容。

烧录完成断电重启后,程序可正常运行。

 

二、通过生成的elf文件进行转换后,与sof文件生成jic文件进行固化

在Eclipse工程中,将sof文件拷贝到工程文件的目录下

右键工程目录名称,打开命令行模式(Nios II --> Nios II Command shell...),输入以下命令

sof2flash --input=sof文件名.sof --output=自定义文件名1.flash --epcs –verbose

elf2flash --input=elf文件名.elf --output=自定义文件名2.flash --epcs --after=自定义文件名1(此处一定要与上一步骤的文件名相同).flash --verbose

nios2-elf-objcopy --input-target srec --output-target ihex 自定义文件名1.flash hex文件名(自定义).hex

将文件转换为hex文件

在quartus中,进行文件转换,添加HEX、SOF、设备型号,进行文件转换。得到jic文件,进行烧录

(等待后续进行详细说明)

 

 

 

 

 

 

 

在这其中,涉及到几个问题:

1、下载方式AS、JTAG

2、固化的位置:片上RAM、片外RAM、epcs(flash)

(等待详细说明)

 

 

 

 

最新回复(0)