关于NIOS ii烧写的几种方式
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烧写的几种方式的更多相关文章
- 关于NIOS ii烧写的几种方式(转)
源:http://www.cnblogs.com/bingoo/p/3450850.html 1. 方法一:.sof和.elf全部保存在FPGA内,程序加载和运行也是在FPGA内部. 把FPGA的配置 ...
- Nios程序烧写到EPCS方法 - 第1页 - asus119's Blog - EDN China电子设计技术
Nios程序烧写到EPCS方法 - 第1页 - asus119's Blog - EDN China电子设计技术 这里主要是针对EP3C系列FPGA的Nios程序固化到EPCS中的方法做简要说明.硬件 ...
- PHP/HTML混写的四种方式总结
PHP/HTML混写的四种方式总结 一.总结 一句话总结: 注意点: 1.双引号里面解析变量:echo "$Content" 2.HEREDOC和NOWDOC的关系:类似于双引号包 ...
- PHP/HTML混写的四种方式
[整理]PHP/HTML混写的四种方式 PHP作为一款后端语言,为了输出给浏览器让浏览器呈现出来,无可避免的要输出HTML代码,下文介绍下我用过的三种PHP/HTML混编方法 1.单/双引号包围法 ...
- [笔记]Go语言写文件几种方式性能对比
Go语言中写文件有多种方式,这里进行如下几种方式的速度对比: 打开文件,写入内容,关闭文件.如此重复多次 打开文件,写入内容,defer 关闭文件.如此重复多次 打开文件,重复多次写入内容,defer ...
- [整理]PHP/HTML混写的四种方式
PHP作为一款后端语言,为了输出给浏览器让浏览器呈现出来,无可避免的要输出HTML代码,下文介绍下我用过的三种PHP/HTML混编方法 1.单/双引号包围法 这是最初级的方法了,用法就像下面这样 &l ...
- 嵌入式系统烧写uboot/bootloader/kernel的一般方法
嵌入式系统烧写uboot/bootloader/kernel的一般方法 本文介绍了在嵌入式系统中烧写uboot/bootloader/kernel 的一般方法,以及如果uboot或者内核出现错误, ...
- 飞思卡尔烧写工具mfgtools的使用
MFGTool是飞思卡尔提供的烧写工具,使用起来非常方便.但是,在使用MFGTool有几点是需要注意的,否则就会在烧写过程中遇到一些问题: 1.在使用MFGTool前,文件cfg.ini 和 UICf ...
- Arduino 烧写bootloader
什么是bootloader 一般情况下微处理器写入程序时都通过专门的编程器进行烧写,但是也可以通过在MCU中预先写入一些程序来实现某些基本功能,这些预先写入的程序代码就是bootloader.这样每次 ...
随机推荐
- Django:之中间件、微信接口和单元测试
Django中间件 我们从浏览器发出一个请求 Request,得到一个响应后的内容 HttpResponse ,这个请求传递到 Django的过程如下: 也就是说,每一个请求都是先通过中间件中的 pr ...
- how to use tar?
In UNIX, tar is the most useful tool to compress files (just like zip in Windows.) To compress, inpu ...
- 微信支付坑:url未注册
微信支付,报:url未注册 页面URL未注册 支付授权目录 这里很重要我就是在这里折腾了很久.怎么设置呢,首先要看你支付的当前页面URL 比如是:http://www.taidupa.com/wxpa ...
- unable to connect to :5555
有可能批处理文件用的adb和eclipse的adb不兼容.把你的批处理文件用的adb换成eclipse的adb就可以了: 运行结果:
- Entity Framework 学习中级篇4—存储过程(下)
在EF中,各个实体的插入.更新和删除也都通过使用存储过程来完成,以便提高点性能.这个类似于数据集.其步骤是:先定义存储过程,然后在VS的可视化设计器,设置存储过程映射即可. 下面,以为Supplier ...
- -Swift.h not find
亲测成功. 随便新建一个swift文件,xcode问是否生成xxx-Bridging-Header.h文件,点YES.再编译,问题解决. By default, the generated heade ...
- iOS中的代理和Block
一.代理(Delegate) 1)含义 iOS中的代理,比如父母要去上班,到中午12点了,需要给宝宝喂饭吃,但是父母正在上班,这时需要有一个人来帮忙完成一些事情(需要有个保姆来帮忙给宝宝喂饭),此时, ...
- redis采用序列化方案存对象
前几天被问到这样一个问题,redis怎么存对象,平时也没怎么注意,只知道redis存字符之类的,不过就是根据键存取值,不过对象的话还是不同的 首先来了解一下为什么要实现序列化 为什么要实现序列化接口 ...
- C++中的函数指针和函数对象总结
篇一.函数指针函数指针:是指向函数的指针变量,在C编译时,每一个函数都有一个入口地址,那么这个指向这个函数的函数指针便指向这个地址.函数指针的用途是很大的,主要有两个作用:用作调用函数和做函数的参数. ...
- 学习笔记——观察者模式Observer
观察者模式,当事件发生时,调用相应观察者的方法进行“通知”.Subject中使用一个数据结构存储需要通知的观察者对象,执行Notify时,执行所有观察者的Update方法.