Altera FPGA——NiOS ii的自启动设置
Altera FPGA——NiOS ii的自启动设置
1.为什么FPGA中有自启动功能?
因为FPGA是基于SRAM的设备,FPGA将配置存放于SRAM中,掉电丢失。为了避免每次上电都要下载程序到FPGA,不利于系统的封装,所以我们通常将程序下载到非易失性(non-volatile)设备,如Flash中存储,上电程序不丢失,启动断电前程序。
2.从EPCQ Flash中自启动Nios ii程序的两种方式
- 在EPCQ Flash中执行Nios ii程序
- 在EPCQ Flash中启动Nios ii程序,并复制到RAM中执行
如下图所示:
3.自启动设置
我们采用上面所述的第二种自启动方式:
3.1 Nios ii processor的设置
如上图所示:我们将复位向量内存(Reset vector memory)指向EPCQ flash,将复位向量内存(Reset vector offset)指向出厂映像中nios ii启动的地址,本实验中即为0x00600000。其它设置保持默认状态。
这样的用意是FPGA复位或上电时是在EPCQ Flash中启动“未丢失”程序。
3.2 软件应用设置
- 启动eclipse,找到程序文件,如下图所示:
- 右击工程,选择Make Targets > Build,如下图所示:
- 选择mem-init-generate,点击build,如下图所示:
3.3 编程文件转换(.jic的生成)
- 编程文件类型选择.jic文件;配置芯片选择EPCQ128A。
- Flash Loader的选择:选中Flash oader,点击Add Device,如下图所示:
- .sof文件的选择:点击Add Sof Page(取决与工程的数量),选中SOF Data,点击Add File;如下图所示:
- .sof文件的地址设置:选中SOF Data,点击Properties,设置地址;选中.sof文件,点击Properties,勾选compression;点击如下图所示:
- .hex文件的选择:点击Add Hex Page;它的地址根据nios ii processor的设置自动分配,如下图所示:
- 点击generate,成功生成.jic文件。
3.4 烧写.jic文件,实现自启动功能
‘
4.参考文档
1.AN 736_ Nios II Processor Booting From Altera Serial Flash (EPCQ)
2.Generic Serial Flash Interface Intel FPGA IP Core User Guide
3.Embedded Peripherals IP User Guide