码迷,mamicode.com
首页 > 移动开发 > 详细

关于NIOS ii烧写的几种方式(转)

时间:2014-09-13 11:58:35      阅读:312      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   os   ar   文件   数据   sp   

源:http://www.cnblogs.com/bingoo/p/3450850.html

 

1. 方法一:.sof和.elf全部保存在FPGA内,程序加载和运行也是在FPGA内部。 

把FPGA的配置文件.sof通过JTAG方式下载(其实是在线运行)进入FPGA本身,此时在NIOS II的界面中,点击“RUN”—“Run As Hardware”可实现在线运行。此时在SOPC配置时,需要有片内mem_rom和mem_ram,程序的复位向量为mem_rom,偏移0x00;异常向量为mem_ram,偏移0x20。断电后无法运行。 

2. 方法二:.pof保存在EPCS4,.elf保存在FPGA内部,加载从EPCS4,运行在FPGA内部。 

和方法一差不多,只是把FPGA的配置文件.pof以AS的方式下载到EPCS4中,而软件文件也是通过JTAG方式下载入FPGA中,断电也无法运行。CPU内部的两个配置是mem_rom和mem_ram。 

3. 方法三:将.sof文件和.elf保存在EPCS4,加载从EPCS4,运行在FPGA内部。 

先将.sof文件通过JTAG下载进入FPGA,然后通过NIOS II的flash programmer以JTAG方式把.sof和.elf文件下载入EPCS4,此时CPU的Reset Vector为EPCS,偏移0x00,Exception Vector为mem_ram,偏移为0x20。断电后仍能正常运行。 

4. 方法四:将.sof文件和.elf保存在EPCS4,加载从EPCS4,运行在SDRAM中。 

具体的下载方法同方法3相同,只是设置的过程有所不同。 

需要在SOPC中添加SDRAM Controller,由于在开发板中只连接了8根数据线,所以SDRAM的宽度应该设置为8位。而且在顶层例化的时候不需要设置数据屏蔽字(每bit屏蔽一个Byte)。而且在SOPC中还需要例化一个PLL。使SDRAM的时钟为100M。而且对PLL的输出时钟C2需要进行相位调整。在CPU中设置异常向量为sdram。

 

关于NIOS ii烧写的几种方式(转)

标签:style   blog   http   io   os   ar   文件   数据   sp   

原文地址:http://www.cnblogs.com/LittleTiger/p/3969629.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!