初探NIOS II之hello_world
平台背景:
操作系统:win7 64bit
开发板:DE2-115
Quartus ii:15.0及配套的NIOS ii开发平台
一、硬件系统的建立
1、在Quartus里新建工程,这是很基本的就不在介绍了
2、新建一个bdf文件并保存,设置为顶层文件

2、打开Qsys
3、添加NIOS ii process也就是我们的cpu,重命名为cpu,在这里选择f型的,这里不需要设置什么,Vector页要等我们添加好SDRAM、epcs或者是RAM后才可以设置现在是不会有这些选项的,其中Reset Vector Memory是指复位启动时Memory的类型与偏移量;Exception Vector Memory是指异常情况时Memory的类型与偏移量;

4、从IP库里添加SDRAM Controller用于控制开发板上的SDRAM,当然这里我们也可以用on_chip_memory的RAM来做,不用RAM做的一个重要原因是FPGA上资源有限RAM的容量只能做到很小一般我们如果要编写一些小的程序还是可以用这个来做的。
SDRAM控制器的设置如下图:32bits,4个bank,13Row,10 column其他默认设置即可(这些参数一般根据开发板上的SDRAM的datasheet里的数据得出)Timing设为3,

5、添加epcs控制器,这个主要是用来控制FLASH的,当我们想要把程序固化在开发板上的时候就需要将程序烧写到FLASH里就要用到epcs控制器,设置均为默认

6、添加JTAG_UART接口(PC机与开发板进行数据传递用,包括烧写代码,接收发送数据)设置如下:

7、添加System ID这个是系统的ID标示一般设为0当然也可以自己设置一个数

8、手动连线,需要连线的主要有:
1)所有器件的时钟、复位接口;
2)非存储类器件的数据总线接口;
3)存储类器件的数据总线接口和指令总线接口;
4)中断接口;

9、System-àAssign Base Address自动设置各个器件的地址,设置各中断优先级,
双击cpu设置Vector都为SDRAM
保存文件命名为kernel;
设置时钟为100MHZ(这主要是由SDRAM工作的频率所限制)这是系统的工作频率;
点击Generate HDL产生HDL代码,点击finish
10、在之前建立的bdf文件上双击空白处将上面建立的kernel文件添加进来,注意在工程目录的files里把synthesis文件夹里的qip文件添加进来,该文件里包括kernel里所含的IP核的信息不添加的话后面编译时会出错;
11、添加pll的IP核到bdf文件中,pll的输入时钟是50MHZ,速度等级为7,一路next到设置输出时钟处将c0进行2倍频道100MHZ;c1进行2倍频到100MHZ并调整相移位为-65(实际为-63);c0为系统的时钟给kernel,c1为SDRAM的时钟,他们同频不同相至于相位差怎么算还没后面再讨论;
12、点击finish完成PLL的设置添加到bdf文件中连接c0到kernel的clock,c1接一个output接口;
13、选中kernel右击选择Generate pins for symbol ports产生接口,pLL同理;

14、编译,按照DE2-115引脚关系配置引脚,再编译;
到此硬件系统的搭建就完成了
二、软件系统的搭建
15、按如下所示打开NIOS开发软件

16、新建NIOS工程,Nios II Application and BSP from templare

17、将sopc信息文件指向刚刚产生的cpu文件,这样就利用这个sopc文件将软件与硬件连接起来了。

18、project->Build all
下载文件到FPGA

19、Run as->Nios II Hardware

20、refresh connection

21、点击run,一切工作正常出现下图

初探NIOS II之hello_world的更多相关文章
- 给NIOS II CPU添加一颗澎湃的心——sysclk的使用
给NIOS II CPU添加一颗澎湃的心——系统时钟的使用 本实验介绍如何在Qsys中添加一个定时器作为NIOS II的心跳定时器,并在NIOS II中软件编程使用该定时器. 将上一个实验watchd ...
- (原創) 如何在Nios II顯示8位數的七段顯示器? (SOC) (Nios II) (SOPC Builder) (DE2-70)
Abstract本文討論如何在Nios II控制8位數的七段顯示器. Introduction使用環境:Quartus II 8.0 + Nios II EDS 8.0 + DE2-70 (Cyclo ...
- NIOS II 中直接调用Modelsim仿真
STEP1:创建一个工程,实现并编译该工程,编写TestBench文件. STEP2:设置启动Modelsim的路径 选择Nios II菜单Tools->Options..,在弹出的界面中,选择 ...
- NIOS ii 流水灯
为了做项目的前期验证工作,实验室购买了某开发板,下面是基于该板子的实现过程.作为笔记记录,供入门者参考. 1:创建一个Quartus II的工程 next选择器件,然后finish.我的器件是cycl ...
- sof文件和NIOS II的软件(elf)合并为jic文件以使用Quartus Programmer烧写
将Altera FPGA的sof文件和NIOS II的elf固件合并为一个jic文件以使用Quartus Programmer烧写 我们在学习和调试NIOS II工程的时候,一般都是先使用Quar ...
- 给NIOS II CPU增加看门狗定时器并使用
给NIOS II CPU增加看门狗定时器并使用 配置看门狗定时器: 设置计时溢出时间为1秒 计数器位宽为32位 勾选No Start/Stop control bits 勾选Fixed perio ...
- 关于Nios II的启动分析(转载)
原文地址:http://hi.baidu.com/goatdai/item/cc33671545d89243e75e06ad 常用到的存储器包括SDRMA.SRAM.FLASH.Onchip_memo ...
- NIOS II CPU复位异常的原因及解决方案
NIOS II CPU复位异常的原因及解决方案 近期在用nios ii做项目时,发现一个奇怪的现象,在NIOS II EDS软件中编写好的代码,烧写到芯片中,第一次能够正常运行,但是当我按下板卡上 ...
- 关于Quartus II 13.0对应开发NIOS II软件程序时报错Symbol 'NULL' could not be resolved问题的解决方法
关于Quartus II 13.0对应开发NIOS II软件程序时报错Symbol 'NULL' could not be resolved问题的解决方法 近期在评估使用NIOS II处理器进行项目的 ...
随机推荐
- html小知识点汇总(浏览器导航上显示图标、div无高度时试着清除浮动、文字环绕图片、字体加粗、div按百分比分、已有的不合适的class,针对特定的标签进行修改)
1.新点击的网页,在浏览器导航上显示图标: 像这种效果: <head> <meta charset="UTF-8"> <meta name=" ...
- Sql获取周、月、年的首尾时间。
,) -- 本周周一 ,,,)) -- 本周周末 ,) -- 本月月初 ,,,)) -- 本月月末 ,,) -- 上月月初 ,,)) -- 上月月末 ,) -- 本年年初 ,,,)) -- 本年年末 ...
- 首页自动生成静态化html
由于平台老是出现间歇性502.排查发现,php死进程过多耗费大量系统资源. 除了优化代码之外,静态化可以减少php进程.缓解一下服务器压力. 把首页生成html后,出现问题频率下降.所以需要做首页静态 ...
- swift_Class类的继承
//: Playground - noun: a place where people can play var str = "Hello, playground" //***** ...
- 推荐10款免费的在线UI测试工具
发布网站之前至关重要的一步是网站测试.网站测试要求我们全面地运行网站并通过所有基本测试,如响应式设计测试.安全测试.易用性测试.跨浏览器兼容性.网站速度测试等. 网站测试对SEO.搜索引擎排名.转换率 ...
- 点击空白处div消失的方法
这是做的js页面的一部分,也是上一篇文章中加载json格式数据后展示的效果界面. 现在的问题是:点击南京市后会弹出下面的白色的框,点击框右上角的X号后会关闭白色的框,现在想点击白色的框周围的任一地方, ...
- C++ 消息中间件(MQ4CPP)
MQ4CPP支持: MultiThreading Sockets Cluster Encription Compression Service lookup Message routing 看到MQ4 ...
- WCF学习总结
1. WCF简介 WCF (Windows Communication Foundation)是由微软发展的一组数据通信的应用程序开发借口.WCF由服务地址(Address) .协议绑定 (Bindi ...
- iOS开发——加载、滑动翻阅大量图片解决方案详解
加载.滑动翻阅大量图片解决方案详解 今天分享一下私人相册中,读取加载.滑动翻阅大量图片解决方案,我想强调的是,编程思想无关乎平台限制. 我要详细说一下,在缩略图界面点击任意小缩略图后,进入高清 ...
- [css3]跑马灯
<div class="marquee"> <div> <p>纯CSS3生成的走马灯效果</p> <p>纯CSS3生成的 ...