特权和你一起学NIOS2 第一章.pdf

上传人:小** 文档编号:86725815 上传时间:2019-03-23 格式:PDF 页数:9 大小:510.13KB
返回 下载 相关 举报
特权和你一起学NIOS2 第一章.pdf_第1页
第1页 / 共9页
特权和你一起学NIOS2 第一章.pdf_第2页
第2页 / 共9页
特权和你一起学NIOS2 第一章.pdf_第3页
第3页 / 共9页
特权和你一起学NIOS2 第一章.pdf_第4页
第4页 / 共9页
特权和你一起学NIOS2 第一章.pdf_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《特权和你一起学NIOS2 第一章.pdf》由会员分享,可在线阅读,更多相关《特权和你一起学NIOS2 第一章.pdf(9页珍藏版)》请在金锄头文库上搜索。

1、特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 1 特权和你一起学特权和你一起学 NIOS2 欢迎加入EDN FPGA/CPLD 助学小组共同交流学习:http:/ 本教程仅适用于特权制造的SF- NIOS2 FPGA 开发板,转载请注明出处! 版本信息 时间说明备注 2010- 9-21创建V1.0 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 2 第一章第一章 海

2、阔天空海阔天空聊概念聊概念 虽然这个教程的大标题美名其曰“特权和你一起学 NIOS2” ,但是更确切的说应该称之 为 “特权和你一起学 SOPC” 。之所以用NIOS2 替代SOPC,其实只是因为 SOPC 的概念着实有 些大了,而 NIOS2 是全球两大 FPGA 厂商之一的 Altera 公司为他们的 SOPC 系统架构量身打 造的软核处理器。咱比较厚道,就小不就大,只能给个小名“NIOS2”了。 CPU之软核与硬核之软核与硬核 既然说到了处理器,而且还给它戴了个“软核”的帽子,那么就不能让这个帽子戴得不 明不白。 说概念咱就要说得清清楚楚, 特权同学在本章的目标是扫盲, 所以大家别嫌我啰

3、嗦, 如果你觉得都是废话,证明你的等级够高,那么请无视这些啰嗦的叙述,直接跳到下一章是 个不错的选择- 。好了,说正紧的。处理器,不懂电子的也知道电脑的 CPU 中文名也叫处 理器,而咱们做嵌入式这一行的就不能够让处理器一词仅仅局限于“CPU”了。从最简单的 51 单片机来看,它也算是一个包含了“CPU”的“MCU” (Micro Controller Unit)) ,其实非要 寻根问底搞清楚 MCU 为何物的话,我还是喜欢拿大家熟悉的 PC 机来做比方。一台 PC 机, 有 CPU (大家都知道它是大脑) 、 有硬盘 (存储海量的数据) 、 有内存 (暂时存放数据的地方, 高速运转的处理和运

4、算都要靠它,操作系统跑起来还是有赖于它的) 、有电源、有显卡、有 键盘鼠标等等,当然还有一些乱七八糟的外设了,如光驱啊、音箱啊、USB 口啊、串口啊、 并口啊,总之是五花八门应有尽有。而这个小小的 MCU 哪怕是 DIP40 封装的“大家伙”也 只是食指大小, 可别看它小, 它可是“麻雀虽小、五脏俱全” , 它其实在芯片家族中不算小, 但比起那个动辄上千个“脚脚”的电脑 CPU 和那个庞大的机箱来,可真算得上是“迷你精 致”了。拿它和 PC 比还真不能比性能,咱们要比概念。但凡用过 MCU 的同志们都知道它 的“强大” ,它不仅能够跑程序做运算和控制(处理器) ,而且能够存程序和数据(ROM

5、和 RAM,堪比硬盘和内存) ,当然也有一些简单的外设了,常见的如 GPIO、串口、定时器、看 门狗,强大一点的集成 USB 口、网口甚至一些奇形怪状特权叫都叫不上来的接口。那么, 你现在应该明白 MCU 是什么了吧?啊,说完这些发现还没有谈论 CPU 是什么。CPU 就是处 理器,处理器就是 Central Process Unit,Central Process Unit 就是中央处理单元,中央处理器 就是能够跑程序的一颗芯片而已,哈哈,没把你绕晕吧。CPU 上面可以跑程序,程序可以做 很多事,你可以做一个运算,实现各种各样的复杂算法;你也可以写一段驱动,控制各种各 样的外围设备。总之,人

6、脑可以想到的事,绝对都是 CPU 可以办到的事。这么说,知道 CPU 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 3 的 powerful 了吧。 说完 CPU,再说为什么是“软核 CPU” ,是不是也有“硬核 CPU”呢?答案是肯定的, 通常大家看到的 CPU 都是指一些芯片制造商完全定制好强大运算功能且硬件结构固定的 “芯” 。用户没有办法对它做的硬件构造进行任何的更改,只能够看着制造商提供的芯片 datasheet 进行编程控制。而“软核” 、 “硬核”的说法主要还是针对

7、可编程逻辑器件如 FPGA 上嵌入的CPU 而言的。那么有些人可能就纳闷了,既然都嵌在 FPGA 上,又为何有软硬之分 呢?FPGA不都是硬件吗?没有错,FPGA 是硬件,它所实现的逻辑功能也确确实实是各种各 样门电路的集合。但这里的软硬叫法和通常所言的软件硬件叫法是有区别的。别急,马上就 要说区别了。如果一个FPGA 像 Xilinx 家的什么 Virtex XX 系列号称内嵌了最多数个 PowerPC (想知道它是什么吗?自己动手丰衣足食,搜去) ,那么这里的“内嵌”就意味着这个 FPGA 器件的 CPU 是“硬核CPU” 。而 Altera 家主推它的“NIOS2 软核 CPU” ,软就

8、是只要资源足够 那么就可以用逻辑堆砌起来的一个“CPU” 。再具体点说,硬核就是FPGA 本身就嵌入了一个 这样的 CPU 硬件结构,只是用与不用、如何使用的问题交给设计者决定而已;而软核则是 FPGA 本来并不存在这样的硬件结构,设计者使用了某种硬件描述语言(或者说是最基本的 逻辑门电路)活生生的搭建了一个 CPU 来。这么说好像还不过瘾,那就打个比方加深一下 理解。 记不记得小时候咱们刚上学时练字的 “美好时光” , 我是记得还有什么专门的一节 “写 字课” ,开始练字的时候还要用字帖(字帖上模模糊糊的有字的轮廓,照着写就行) ,练到一 定水平就要抛开字帖,拿着白纸写就可以了。而硬核就好比

9、这个字帖,每个要写的字都是固 定好的,你必须照着去写;而软核就好比这个白纸,上面什么都没有,要写什么字都可以。 同样写一个“爱”字,在写之前,硬核是有轮廓在那里的,软核上什么都没有。硬核临摹一 下就好,并且只能写这个字;软核靠自由发挥,你也可以写别的字。 “临摹”出来的硬核写 的肯定漂亮,并且稳定性好、性能佳,但是可“临摹”的功能是固定的,这块电路是“死” 的,不能写别的“字”了;而自由发挥的软核虽然可能没那么端端正正、稳定性可靠性都差 一些,但是可写的“字”不受局限,灵活性也高得多。 SOPC是什么是什么 好了,时间不早,要继续下一个议题。上面说到了 MCU 是“麻雀虽小、五脏俱全” ,下

10、面就不跑题直接聊SOPC 的 “十脏俱全” 。 唉, 5:30 下班, 6:00 出门, 7:00 到家, 8 点开始写, 都快10 点了,这第一章才刚扯到这里。为了加快一下教程进度,请允许特权同学引用一段 特权老师在深入浅出玩转FPGA笔记2 中的一段话来阐述 SOPC的概念。 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 4 数字电路高度集成化是现代电子发展的大势所趋,片上系统(SOC)的概念也就应运而 生。它是指在单个芯片上集成一个完整的系统,一般包括系统级芯片控制逻辑模块

11、、微处理 器微控制器内核模块、数字信号处理器模块、存储器或存储器控制模块、与外部通信的各 种接口协议模块、含有 ADCDAC 的模拟前端模块、电源及功耗管理模块,它是一个具备特 定功能、应用于特定产品的高度集成电路。 片上系统其实就是系统小型化的代名词。如图 1.1,一个相对复杂的系统采用传统的设 计方案可能需要一个 CPU 做整体控制,一个 FPGA 做接口的逻辑粘合和一些信号的预处理, 还需要一个 DSPs 做复杂的算法实现,FLASH 和 SDRAM分别作为程序存储和数据缓存,这些 器件都放置在一块或者数块 PCB 板上。这样一个系统显得相当繁杂,不仅调试难度大,而 且系统维护也不方便。

12、 FPGA I/O I/O I/O CPU DSPs SDRAM FLASH 图 1.1 传统的复杂系统 基于FPGA的片上系统提出了这样一种解决方案, 如图1.2 所示, FPGA内部集成了 CPU、 DSP 以及各种接口控制模块,对有些存储量要求不大的系统甚至外部的 FLASH 和 SDRAM都 集成了。 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 5 I/O I/O I/O CPU DSPs SDRAM FLASH FPGA 图 1.2 基于 FPGA的片上系统 明白了吧

13、,SOPC 就是一颗比“MCU”更 powerful 的“MCU” 。它的伟大之处在于系统 的完全自主定制性,有了 SOPC 这个东东,设计者就不需要再拿着选型手册海选既必须有这 个外设又必须有那个外设的处理器了; 甚至有时也不需要考虑处理器都能够挂上什么样的存 储器来存数据跑程序。只要有 SOPC,一切轻松搞定,外设?想加什么就加什么,那句广告 词怎么说来着, “我的地盘听我的” 。这就是 SOPC 相对于以往的嵌入式系统设计最大的特点 和优势。 SOPC 好像说得还不够尽兴,那么下面就套用一点官话来彰显一下本教程的权威性,哈 哈! SOPC 是一个强大的系统开发工具。SOPC Builde

14、r 可以帮助用户定义并产生一个完整的 system- on-programmable- chip(SOPC,这个还是用原文吧) ,它比传统的手动集成方式要方 便得多。SOPC Builder 工具集成在 Quartus II 软件中。 用户可以使用SOPC Builder 生成一个基于 NIOS2 处理器的系统。然而,SOPC Builder 远 不止一个 NIOS2 builder而已,它也可以生成一个不包含处理器或者包含 NIOS2 以外的软核 处理器的系统。 使用传统的设计方法,用户必须手动编写 HDL 代码用于连接各个子系统。而使用 SOPC Builder,用户只要通过傻瓜的图形界面

15、接口(GUI)就可以自动生成各个组件的互联逻辑。 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11 “ 敬畏耶和华是智慧的开端, 认识至圣者便是聪明。 ”http:/ 6 SOPC Builder 产生了系统所有组件的HDL 文件,顶层的 HDL 文件则例化好系统的所有组件。 SOPC Builder 既能够生成 Verilog 也能够生成 VHDL 代码。 说了这么多,可能很多不注意听讲的同学还是不太能够区分 SOPC 和 NIOS2,甚至有点 搞混了。不要紧,再上张图让大家饱饱眼福。如图 1.3 所示,是一个简单的嵌入式系统。在 一块 PCB(P

16、rinted Circuit Board)板上,单论芯片可能只是一片 FPGA、一片作为协处理器 (Co- Processor)的 CPU、两片 DDR2 的 SDRAM 存储器分别挂在 FPGA 和协处理器上、还有 一个叫做总线桥 (Bus Bridge) 的接口 (它也许只是简单的连线而已, 也许是一块协议芯片) 。 这个系统中,看似简单,好像没啥花头。其实不然,FPGA 里有大文章可做。想继续往 下说, 但是发现会有一点痛苦, 因为这里要普及概念, 所以不得不把该说的通通说一遍, 哎, 可能要费些笔墨。 特权制造本教程仅用于配套 SF-NIOS2 FPGA 开发板学习交流使用 圣经 箴言九 11

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号