社区导航

 
查看: 13572|回复: 23

【四】【FPGA助学系列—NIOS篇】软核也疯狂1—图解NIOS建立

[复制链接]

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

发表于 2013-6-20 23:55:17 | 显示全部楼层 |阅读模式
【FPGA助学系列—NIOS篇】
软核也疯狂(1)—图解NIOS建立
1.         NIOS是什么
在与NIOS第一次亲密接触之前,你的底线是什么?不是是懂非懂的问NIOS有多快,NIOS能不能替代单片机,而是要搞清楚到底NIOS是什么。老样子,请百度科普基础知识。然后……直接进阶。
NIOS是一个使用Verilog构建的CPU+外设的软核,之所以说“软”,是因为她是基于HDL语言使用FPGA资源构建的可拆解的。注意NIOS可以小到一个CPU也可以大到带有串口、网口、USB等等复杂如一台电脑。
重点来了,NIOS有什么优势?
最大的3个优点:免费,免费,还是免费。
在你必须使用FPGA的场合(例如高速AD)可能你除了AD接口和FIFO就没有别的奢求,这时常常看到浪费的FPGA资源望洋兴叹,NIOS走来了,你瞬间完成了由单片机屌丝向SOC高富帅的完美转变。
最常见的用途(个人见解):已经使用FPGA的场合辅助完成接口和状态类处理。
FPGA很快,快的一切都可以并行,但对付一些串行状态处理时,例如对芯片的SPI接口进行配置读写时你会发现状态机长到令人难以接受。如果恰好一个板上还有几个类似的控制接口,那我劝你请出NIOS大神。
最大的缺点:调试效率和较低性能。
谈到缺点需要吐槽的就有些多了,层出不穷的Bug,慢腾腾的编译,如果你确实下定了决心,我希望你泡上一杯茶,耐心的坐下来开始NIOS旅程。同时这时你也会惊异NIOS性能上的先天不足,当然别忘记,NIOS诞生的年代还是51ARM7的年代,那时还没有STM32。建立一个最小的NIOS基本和51相当,但我相信你耗费的资源价值绝对超过51,如果你需要高一些的性能,可以选择NIOS“超人版”,使用硬件乘法器,开启大容量缓存,但可以预期对于寸土寸金的FPGA RAM来说,Cache大绝不是一个利好消息。顺便说一下,对于Cyclone系列,NIOS的主频一般低于100M,对于高端的Stratix系列,可以到200-300M
注意:因为本开发板使用了Cyclone4里最小的FPGA,因此需要使用廉价的外存SDRAM芯片作为RAM的扩展,个别例程可能因片上Cache太小无法使用。
如果你一直怀揣NIOS梦想,如果你看到这里还是义无反顾的话,恭喜你,可以去泡杯茶享受免费午餐了。
2.         NIOS建立
拿出ESPIER_I开发板,我们准备建立第一个NIOS II工程。
1)         首先我们需要建立一个Quartus工程,首先打开Quartus,这里我们选择Quartus II 11.1 SP2版本。
i.              点击File选择New
i.      

2)         选择New Quartus II Project,点击OK
3)         点击NEXT,选择工程目录和工程名,工程名为first_nios2
4)         添加源文件,此处跳过,直接点击Next
5)         选择器件为EP4CE6E22C8
6)         选择EDA工具,此处跳过,直接点击Next
7)         显示项目信息,点击Finish
这样一个空的工程就生成了:
8)         为上面生成的工程新建源文件
文件名为first_nios2.v,这个文件作为顶层文件,搭建Verilog框架如下:
9)         点击菜单Tools,选择SOPC Builder,建立新的SOPC系统,名称为first_nios2_sopc
10)     设定NIOS II系统时钟为clk,频率与板上晶振频率一致,为48MHz
11)     选择Processors,添加NIOS II Processor,这里我们选择Nios II/s
12)     JTAG选择Level 2,其他选项卡选择默认。
13)     选择Peripherals下的System ID Peripheral,并确保名称为sysid
14)     选择Memories and Memory Controller下的On-Chip MemoryRAM or ROM),大小为16384 bytes
15)     然后选择Peripherals下的Interval Timer,并改名为sys_clk_timer
16)     选择Interface Protocols下的JTAG UART
17)     选择Memories and Memory Controller下的EPCS Serial Flash Controller
18)     进入cpu设置,设定NIOS IIReset Vectorepcs_controllerException VectorOnchip ram
19)     点击菜单SystemAssign Base Addresses自动为外设分配地址,点击Assign Interrupt Numbers为外设分配中断号,最终的NIOS II基本完成
20)     点击Generate,完成SOPC的编译。
21)     完成顶层源文件的编写,加入输入输出定义,加入SOPC的例化
22)     点击菜单Assignment下的Device,选择Device and Pin Options
23)     选择Dual-Purpose Pins,把复用管脚改为通用IO
24)     点击菜单Assignments,选择Pin Planner,为FPGAIO分配管脚
25)     双击Compile Desing,开始FPGA的编译和布局布线
至此,一个最简单的NIOS II工程就搭建完毕,下一步就需要在NIOS II的基础上进行进一步的软件开发。


   图太多了,不想上传了。请允许我抱怨下论坛。为啥不能直接贴Word啊!!
   请下载PDF吧,无语中.......


[ 本帖最后由 kdy 于 2013-6-28 23:20 编辑 ]
此帖出自Espier专区论坛
nios.JPG

【FPGA助学系列—NIOS篇】软核也疯狂1—图解NIOS建立.rar

4.07 MB, 下载次数: 291

售价: 3 枚芯币  [记录]

NIOS FPGA

Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

7939

TA的帖子

2

TA的资源

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

发表于 2013-6-21 10:38:11 | 显示全部楼层

回复 楼主 kdy 的帖子

  因为word中的某些符合和后台代码会冲突,近期我们会对论坛的使用功能上做些调整,期待吧


回复

使用道具 举报

1181

TA的帖子

0

TA的资源

禁止发言

荣誉会员勋章

发表于 2013-6-21 11:08:31 | 显示全部楼层

回复 沙发 eric_wang 的帖子

是指那些<try align>之类的HTML代码么?可以解决的啊

另外.kdy的NIOS demo我已经在quartus 13.0下重新生成IP,综合,编译过了.目前还是很稳定的,稍后我二连一发13.0的demo


回复

使用道具 举报

7939

TA的帖子

2

TA的资源

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

发表于 2013-6-21 11:14:10 | 显示全部楼层

回复 板凳 astwyg 的帖子



回复

使用道具 举报

1181

TA的帖子

0

TA的资源

禁止发言

荣誉会员勋章

发表于 2013-6-21 11:27:42 | 显示全部楼层
这个是NIOS demo quartus13.0版本的

(, 下载次数: 84)


回复

使用道具 举报

6271

TA的帖子

4

TA的资源

版主

Rank: 6Rank: 6

发表于 2013-6-21 12:00:36 | 显示全部楼层
不错!
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰


回复

使用道具 举报

2974

TA的帖子

262

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

荣誉会员勋章测评达人

发表于 2013-6-21 14:17:41 | 显示全部楼层
好东西啊。跟进


回复

使用道具 举报

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

 楼主| 发表于 2013-6-22 00:17:18 | 显示全部楼层
我希望直接贴Word的原因是大家都希望图解,这篇文档里有29个图,不能贴上去,要一个一个从Word中拷出来,放在画图中保存,然后上传到论坛,然后在帖子里插入........ 29个图啊.....我想起了小学时的罚抄作业,100遍啊100遍.......
Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

1181

TA的帖子

0

TA的资源

禁止发言

荣誉会员勋章

发表于 2013-6-24 21:20:28 | 显示全部楼层

回复 8楼 kdy 的帖子

找个图床吧..


回复

使用道具 举报

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

 楼主| 发表于 2013-6-24 22:56:39 | 显示全部楼层
图床?
Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

4

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2013-7-15 08:59:55 | 显示全部楼层

回复 楼主kdy 的帖子

:carnation:


回复

使用道具 举报

6883

TA的帖子

176

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

测评达人

发表于 2013-8-1 22:00:06 | 显示全部楼层
刚买了板子 为什么资料这么少啊 求版主给力


回复

使用道具 举报

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

 楼主| 发表于 2013-8-1 22:07:37 | 显示全部楼层
因为这个是活动的板子,不是严格意义上的商用版本,因此资料没有商用的那么全,
但是所有资料都会陆续上传不会烂尾或者太监请放心
另外有些实时的问题可以在322760941群里问,需要讨论的会整理放在论坛中共享

[ 本帖最后由 kdy 于 2013-8-1 22:10 编辑 ]
Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

37

TA的帖子

1

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2013-8-20 22:23:15 | 显示全部楼层
好贵,还是看自己买的书好了。。


回复

使用道具 举报

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

 楼主| 发表于 2013-8-20 23:13:25 | 显示全部楼层

3个芯币是比较贵了
Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2013-9-28 19:46:54 | 显示全部楼层
我来看看情况。。。。


回复

使用道具 举报

3

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2014-8-6 15:43:13 | 显示全部楼层
怎样加入SOPC的例化,


回复

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2015-12-15 10:49:06 | 显示全部楼层
没钱买啊啊


回复

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2016-3-18 10:48:05 | 显示全部楼层
积分严重不足啊


回复

使用道具 举报

621

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

荣誉会员勋章

 楼主| 发表于 2016-3-20 00:10:27 | 显示全部楼层
这样就积分不足啦?多发几个帖子啊
Net:Wxeda.taobao.com
QQ:1035868547
Blog:http://home.eeworld.com.cn/space-uid-390804.html


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2018-9-20 09:11 , Processed in 8.105131 second(s), 22 queries , Gzip On, Redis On.

快速回复 返回顶部 返回列表