网站大量收购独家精品文档,联系QQ:2885784924
  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
sopc实例

NIOSII那些事儿--硬件开发 文章发表于:2010-06-21 20:11 ?声明:本文为原创作品,版权归本博文作者所有,如需转载,请注明出处? 前言 废话少说,我们马上进入正题。今天是第一节,我首先说一下学习NIOS都需要哪些前提条件。听到这,初学者可以会有些害怕了,难道学习NIOS还要条件?是的,需要条件,不过这些条件并不是很高,只要大家努力,这些条件都不是问题。 具有一定的单片机基础; 具有一定的C语言编程能力; 了解Quartus II的开发流程; 一块开发板; ??? 就这么多,大家觉得难么?首先说说第一条,具有一定的单片机基础,这个条件是要有的。单片机的基础在NIOS II学习中体现在它的寄存器操作方式上,这种操作方式是通用的,不管是ARM,DSP,还是51都是一样的,你只要有一种单片机的实践经验就没问题了。再说第二条,这一条没什么可争议的,NIOS的开发完全是用C语言的,如果你没有C语言的基础,我建议你还是先学习一下C语言再考虑学习NIOS吧。第三条呢,有最好,如果没有的话也可以,我在以后的文章中都会涉及到,大家跟着学就可以了。第四条也不是必须的,不过学习NIOS不像学习Verilog/VHDL,通过仿真看看也行,NIOS的学习跟单片机很相似,最好是亲手操作硬件,这样对你的学习有更好的效率和效果。在这里推荐一下我的FPGA黑金开发板,不仅仅是广告哦,因为我以后的讲解都是以我的黑金板为基础的,大家学习起来也很方便的。 ? 简介 ? 软件版本:本教程基于Quartus II 9.0,NIOS IDE 9.0编写 ? 建立工程 ? 接下来,建立一个工程File-New Project Wizard 第一行是工程的路径,你选择你放置的路径即可。 第二,第三行都是是工程名,写好以后如下 ? 点击Next, 这个不用动,接着点击Next 在这里,Family里选择Cyclone II,在Available devices中选择EP2C5Q208C8(具体内容根据你的芯片所定)。如上图所示。 接着点击Next,不用动,点击Finish,显示如下图所示。 到此为止,工程已经建立完成。接下来,需要建立一个Block Diagram/SchemaTIc File,点击File-New,如下图所示 点击OK,完成建立,工程中出现了一个Block1.bdf文件 ? 建立NIOS II软核 点击以后,SOPC Builder运行,界面如下图示 System Name中输入软核的名字:我将其命名为KERNEL。点击OK后,如下图所示 按图中标注的,clk_0为时钟名称,50.0为时钟值(单位为MHz),我们可以对他们进行修改。用鼠标点击50.0,将其改为100.0。这时候,我们的软核时钟就为100.0MHz了。这是软核建立的第一步,接下来,我们要建立Nios II Processor。 建立CPU 点击后,将出现下图 这一步我们来选择软核的类型。这里给我们提供了三种类型,Nios II/e占用资源最少600-800LEs,功能也最简单,速度最慢。Nios II/s占资源比前者多一些,功能也多了,速度也快一些Nios II/f占资源最多,功能也最多,速度就快。选择的时候要根据你的需求和你的芯片资源来决定。在这里,我选择Nios II/s,功能和速度都可以得到满足。下面的Reset Vector是复位后启动时的Memory类型和偏移量, Exception Vector是异常情况时的Memory类型和偏移量。现在还不能配置,需要SDRAM和FLASH设置好以后才能修改这里,这两个地方很重要。接下来连续点击Next,一直到下图为止 这里设置JTAG Debug Module,即JTAG调试时所用到的功能模块。功能越多,需要的资源越多,这里,我们选择Level 1即可,不需要过多其他的功能。点击Finish,结束Nios II Processor的建立后,如下图所示 建立SDRAM模块 点击后,如下图所示 在Presets中选择第一项Custom,在Bits中选择16,其他项不动,点击Next,点击Finish,完成SDRAM控制器的设置。在这里之所以选择16,是因为我们用的SDRAM(HY57V641620)是16位的。 建立Avalon三态桥 点击后,如下图所示 点击Finish后,完成三态桥的建立。 建立CFI模块 点击后,如下图所示 其中Presets,我们选择Custom,Address Width(bits)是地址线宽度,我们选择21,Data Width(bits)数据线宽度,我们选择8位。这些的选择都是根据芯片和电路设置决定的,我们的FLASH(AM29LV1602)可以选择为8位模式和16位模式,我在设计电路的时候将

文档评论(0)

cgtk187 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档