ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:463.13KB ,
资源ID:30226535      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/30226535.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(三FLASH控制器的添加及FLASH烧写.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

三FLASH控制器的添加及FLASH烧写.docx

1、三FLASH控制器的添加及FLASH烧写1.3 FLASH控制器的添加及FLASH烧写1.实验目的(1)进一步熟悉Nios II系统的构成及开发流程;(2)进一步熟悉SOPC Builder和Nios II IDE的使用;(3)掌握FLASH控制器的添加与使用;(4)掌握FLASH的烧写。2.实验现象8个LED灯花样闪烁。3.实验原理原理图如图1.3.1所示图1.3.1由图1.3.1我们可以得到如表1.3.1所示的外设一览表:表1.3.1外设名称描述备注cpuNios II/e Debug Module=Level1sysid系统ID系统的唯一标识led_pio8位只输出控制LEDsdramC

2、ustom,Row=12,Column=8Data width=16,Banks=4flashCustom,Address width=21Data width=8三态桥Registered图1.3.2是编写本实验时所使用的核心板中FLASH的连接图,从连接图及附录三FLASH_Am29LV160D的芯片手册可以知道,使用的是byte mode,因此地址最低位是F_A-1(DQ15),最高位是F_A19,共21位,数据位是8位。至于时序,我们用经验值Setup=40ns,Wait=160ns,Hold=40ns,这一值可以满足要求,当然实际应用时最好仔细阅读芯片手册进行设置。但是,FLASH控

3、制器需要通过三态桥与总线相连接,所以还需要添加一个三态桥并手动进行连接。顶层原理图如图1.3.3所示。图1.3.2图1.3.34.实验内容(1)在Quartus II中建立一个工程;(2)使用SOPC Builder建立生成一个具有表1.3.1所示元件的Nios II硬件系统;(3)在Quartus II工程中添加PLL;(4)建立基于Nios II的硬件系统并编译生成配置文件*.sof;(5)在Nios II IDE中建立对应硬件系统的Nios II C/C+ Application,编写程序;(6)将配置文件*.sof和可执行文件*.elf都下载到FPGA进行在线运行。5.实验步骤上一节实

4、验介绍过的内容不再介绍,这里只介绍FLASH控制器和三态桥的添加。完整的Nios II系统图如图1.3.4所示。图1.3.41)在SOPC Builder中添加FLASH控制器 在可用元件列表里双击Flash Memory(CFI)(图1.3.5),在弹出的设置向导里按图1.3.6和图1.3.7所示设置。图1.3.5图1.3.6图1.3.72)在SOPC Builder中添加三态桥 添加完FLASH 控制器后可以看到信息栏有一个错误提示(图1.3.8),实际上是要求我们加入一个三态桥。双击Avalon-MM Tristate Bridge(图1.3.9)按图1.3.10和图1.3.11所示进行

5、设置。在图1.3.11中,因为除了FLASH我们没有添加其他与三态桥连接在一起的元件,所以没有可共用的信号可选,如果有的话可在这里设置。同时可以看到,数据总线始终是共用的,片选信号始终是独立的。图1.3.8图1.3.9图1.3.10图1.3.113)手动连接FLASH与三态桥 从图1.3.12可以看到,刚添加好的三态桥和FLASH并未连接,需要我们手动连接。如图1.3.13所示,把鼠标移到左边的连接处会出现一个空心的圆圈,单击鼠标后会变成实心的圆圈,表示这两个节点已经连接上,如果想取消某个连接用同样的方法,鼠标移到圆圈处单击使实心的圆圈变成空心的即可断开。连接好后如图1.3.14所示,不过连接

6、好后信息栏有可能出现更多的错误,读者不必担心,自动分配一下基地址错误即可消除,如果还有错误的话那就请你仔细检查你的操作过程。图1.3.12图1.3.13图1.3.144)设置复位地址和异常向量地址 添加好所有元件后别忘了设置复位地址,这时我们可以把复位地址分配在FLASH,异常向量地址分配在SDRAM(图1.3.15)。与第1节的实验比较一下,可以看到,原先的片内ROM和片内RAM分别被较大容量的外部FLASH和SDRAM代替。由此构成一个比较完整的小微机系统。图1.3.155)在Quartus II中组合所有模块并添加引脚编译 与之前的实验相同,需要提醒读者注意的是FLASH的数据总线与SD

7、RAM一样也是双向的端口,所以要使用bidir而不使用output。6)在Nios II IDE中编写程序文件编写如下所示的程序文件,系统库属性使用默认的设置。不进行程序优化,因为本实验使用的是SDRAM,空间大小已经足够。与之前一样,同样可以进行调试运行。/*版权声明* * 新疆大学信息科学与工程学院创新实验室 * 文件名: flowled.c * 创建者: 吴占敏 * 创建日期: 2010.4.24 * 校验者: * 校验日期: * 版本号: V1.0 * 功能描述: 通过PIO直接控制8个LED产生流水灯效果 */#include system.h#include altera_aval

8、on_pio_regs.h#include alt_types.h/* 流水灯花样,低电平点亮,注意调用时候用了取反操作 */const alt_u32 LED_TBL = 0x00, 0xFF, / 全部熄灭后,再全部点亮 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, / 依次逐个点亮 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF, / 依次逐个叠加 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, / 依次逐个递减 0x81, 0x42, 0x24

9、, 0x18, 0x18, 0x24, 0x42, 0x81, / 两个靠拢后分开 0x81, 0xC3, 0xE7, 0xFF, 0xFF, 0xE7, 0xC3, 0x81 / 从两边叠加后递减; /* 名 称:main()* 功 能:控制LED流水显示。*/int main (void) alt_u8 i; alt_u32 j; while (1) for (i=0; i42; i+) /* 流水灯花样显示 */ IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, LED_TBLi); j = 0; while (j100000) /延时 j+; retu

10、rn 0;7)FLASH烧写 在前一节的实验中,我们无法把程序保存在SDRAM内,因为SDRAM掉电后数据即丢失,因此那样的一个系统没有实际的应用意义。而第1节实验中,尽管我们可以把程序保存在片内ROM,但由于其大小又限制了进一步开发,也没有太大的应用空间。添加了FLASH就解决了这两个问题。 选择菜单栏ToolsFlash Programmer.(图1.3.16)即弹出图1.3.17所示的界面。图1.3.17所示的是没有添加任何Flash Programmer时的情形,添加后如图1.3.18所示。读者应检查默认的所要编程的是否是自己想要下载的工程,因为打开后默许的是前一次下载时的工程。设计者

11、也可以把FPGA配置文件和其他的文件(如一幅图片数据)下载到FLASH使用。如果是对EPCS编程,则要求把配置文件也下载到EPCS。设置好后点Program即可,如若出现图1.3.19所示信息则表明编程成功,按一下复位键后系统将运行。图1.3.16图1.3.17图1.3.18本节易错提示:1、FLASH控制器设置的与自己使用的板子不一致;2、FLASH控制器的数据端口没使用双向端口bidir而使用output,这一点读者务必特别注意;3、建立Nios II工程时使用了前一次*.ptf文件,而不是刚刚建立的工程文件;4、在线调试运行时一定要把复位端接上(低电平有效,调试运行时应该是高电平),否则会出现veryfy failed的错误;5、分配管脚时与核心板实际连线不一致将直接导致FLASH编程失败;6、FLASH编程后必需按一下复位系统才会重新运行。图1.3.19

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1