基于NiosII的流水灯设计解读_第1页
基于NiosII的流水灯设计解读_第2页
基于NiosII的流水灯设计解读_第3页
基于NiosII的流水灯设计解读_第4页
基于NiosII的流水灯设计解读_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、长安大学 电子与控制工程学院 电子科学与技术系基于 NiosII 的流水灯设计一、实验目的:基于 NiosII 设计一个 8 位 LED 流水灯系统,要求掌握 SOPC 系统设计方法, 了解 SDRAM 和 FLASH 芯片的接口特性,掌握 QuartusII 软件的使用方法以及 NiosII EDS 设计应用软件的基本流程。二、实验条件:安装 WindowsXP 系统的 PC 机;安装 QuartusII9.0 EDA 软件;安装 NiosII EDS 9.0 软件;GW48型 SOPC开发平台;三、实验要求:设计过程包括硬件设计和软件设计两部分内容。使用SOPC Builer工具建立处理器

2、系统,使NiosII 处理器成功连接 SDRAM 、 FLAHS 以及连接 LED 的 PIO 驱动模块。通过嵌入式锁相环获得稳定的 100MHz 时钟为系统和 SDRAM 使用。使用按键 1 实现系统复位(模式 7,按键为单脉冲,接口为 IO0):- 1 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系用 LED 阵列显示流水灯效果:注:要求使用 LED1LED8 。对应的 IO 编号分别为( IO60、IO67、IO65、IO63、 IO70、IO73、IO75、IO79)。四、实验步骤:打开 QuartusII 软件,建立一个新的工程: 单击菜单 FileNew Proje

3、ct Wizard输入工程的路径、工程名以及顶层实体名单击 Next按钮,出现以下窗口- 2 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系由于我们建立的是一个空的项目,所以没有包含已有文件,单击 设置器件信息:Next继续单击 Next,指定第三方工具:这里我们不指定第三方EDA 工具,单击 Next后结束工程建立- 3 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系建立 SOPC系统单击 ToolSOPC Builder菜单项,启动 SOPC Builder配置工具。在弹出的系 统命名对话框中为系统名称命名 “MySystem”,并选择目标描述语言为 “VH

4、DL ”, 点击 OK 保存。建立并配置处理器 IP 核。双击或选择 IP 核库列表中的 NiosII Processor 为系统添加 NiosII 处理器制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系系统将弹出如下对话框要求用户对处理器情况进行配置,此时我们先选择 Finish 默认系统的配置。右键处理器更改其名称为“ MyCPU ”- 5 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系本设计所使用的存储器是核心板载的IP 核来驱动。双击 IP 核列SDRAM (K4S561632)和 FLASH ( AM29VL065D ),所以需要通过为系统添加相关的 表中

5、的 Memories and Memory Controllers/SDRAM/SDRAM Controller 将弹出以下 的 SDRAM 控制器配置窗口,根据板载的 SDRAM 外围参数,按以下数据填入。- 6 -点击 Next 填写 SDRAM 的延时参数(默认参数) ,点击 Finish 完成。右键修改 SDRAM 的名称“ SDRAM ”。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系如下图双击 IP 核列表中的 Library/Bridges and Adapters/Avalon-MM Tristate Bridge 为系统添加链接 FLASH 的三态桥 IP 核。

6、在弹出的对话中中直接点击Finish。双击 IP 核列表中的 Library/Memories and Memory Controllers/Flash/Flash MemoryInterface(CFI)为系统添加 FLASH 界面 IP 核,并按照下图填入描述参数。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系点击 Next 填入时序参数,并点击 Finish 完成参数配置。修改此 IP 核实例名 称为“ FLASH”,如下图配置 IP 核之间的连接关系点击菜单 System/Auto-Assign Base Addresses完成存储器地址分配。制作人:程鸿亮长安大学 电子

7、与控制工程学院 电子科学与技术系在此双击处理器 IP 核实例“ MyCPU”配置复位地址和异常中断地址,并点 击 Finish 完成配置,如下图更改处理器的工作时钟频率为 100MHz ,如下图双击 IP核列表中的 Library/PIO ,添加 PIO 模块,按照下图配置(默认配置) 并更名为“ LED”。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系建议再次点击菜单 System/Auto-Assign Base Addresses重新对地址分配。到此,SOPC 系统的配置工作已经完成, 点击 Generate按钮生成 SOPC系统, 系统生成完毕并成功后点击 Exit 推出

8、 SOPC Builder 环境。建立系统电路图- 10 -单击 FileNew 菜单项,选择弹出窗口中的 Block Diagram/Schematic File,单 击 OK 按钮以建立打开空的图形输入文件,注意此文件并没有在硬盘中保存。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系双击图形输入区域的空白处,选择弹出窗口中的 SOPC 系统模块,点击 OK按钮添加到图形输入区域- 11 -添加锁相环。点击菜单 Tools/MegaWizard Plug-In Manager并在弹出的对话 框中选择“ Create a new custom megafunction varia

9、tio”n 点击 Next 继续。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系- 12 -如下图选择锁相环 IP核,并对其命名“ MyPLL ”,点击 Next 进入锁相环的 设定环节。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系按照下图设定锁相环的输入频率为 20MHz,点击 Next 继续。- 13 -清除弹出对话框的所有选项,以此简化对锁相环的控制,点击 Next制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系对弹出的对话框做如下设置,点击 Next 继续- 14 -对弹出的对话框, 配置 c0 时钟频率为输入时钟的 5倍(100MHz),如下

10、图, 点击 Next 继续。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系出现 c1 时钟配置页面后,不选择此时钟输出,直接点击Next 继续。- 15 -弹出 c2 时钟配置页面后,对其做如下配置,用于 SDRAM 的时钟(频率为 100MHz,移相为 -63),点击 Next 继续。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系- 16 -到此配置过程完成,点击 Finish 生成锁相环。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系连接锁相环到电路中。 双击图形输入区域, 选择生成的锁相环, 添加到电路 中。再次双击图形输入空白区域,如下图输入引

11、脚类型“ input”添加输入和输出 引脚,按照图示连接并对引脚命名。 (添加输出引脚时输入“ output”,双向引脚 “bidir”)- 17 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系连接其他引脚。根据 SOPC 系统端口的方向依次添加各引脚并按照下图命名复位端用到了一个反相器,键入名称“NOT”即可获得)。端口连接和命名完成之后点击保存按钮。引脚锁定。点击 Processing/Start Compilation 编译当前工程,以获得电路的 引脚信息。编译完成之后,点击菜单 Assignments/Assignment Editor 对引脚进行 锁定。制作人:程鸿亮

12、锁定方式如下表所示:引脚名称锁定位置SD ADDR0PIN R14- 18 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系引脚名称锁定位置SD ADDR1PIN R15SD ADDR2PIN R16SD ADDR3PIN T16SD ADDR4PIN U13SD ADDR5PIN U14SD ADDR6PIN U15SD ADDR7PIN V14SD ADDR8PIN V15SD ADDR9PIN W14SD ADDR10PIN W15SD ADDR11PIN W16SD ADDR12PIN AA12SD BA0PIN Y19SD BA1PIN Y20SD CASPIN AA1

13、5SD CKEPIN Y22SD CLKPIN Y21SD CSnPIN AA17SD DQ0PIN M15SD DQ1PIN M16SD DQ2PIN M18SD DQ3PIN M19SD DQ4PIN N15SD DQ5PIN N21SD DQ6PIN N22SD DQ7PIN P15SD DQ8PIN P17SD_DQ9PIN P18SD DQ10PIN P19SD DQ11PIN P20SD DQ12PIN P21SD DQ13PIN P22SD DQ14PIN R18SD_DQ15PIN R19SD DQM0PIN Y14SD DQM1PIN Y17SD RASnPIN AA16SD

14、 WEnPIN AA14FLASH ADDR0PIN M5FLASH ADDR1PIN M6FLASH ADDR2PIN M7FLASH ADDR3PIN M8- 19 -长安大学 电子与控制工程学院 电子科学与技术系引脚名称锁定位置FLASH ADDR4PIN N1FLASH ADDR5PIN N2FLASH ADDR6PIN N3FLASH ADDR7PIN N4FLASH ADDR8PIN N5FLASH ADDR9PIN N6FLASH ADDR10PIN P1FLASH ADDR11PIN P2FLASH ADDR12PIN P4FLASH ADDR13PIN P5FLASH ADD

15、R14PIN P6FLASH ADDR15PIN R1FLASH ADDR16PIN R2FLASH ADDR17PIN R4FLASH ADDR18PIN R5FLASH ADDR19PIN R6FLASH ADDR20PIN R11FLASH ADDR21PIN T7FLASH ADDR22PIN T8FLASH CSnPIN W11FLASH DATA0PIN R7FLASH DATA1PIN R8FLASH DATA2PIN T1FLASH DATA3PIN T2FLASH DATA4PIN T3FLASH DATA5PIN T5FLASH DATA6PIN T6FLASH DATA7

16、PIN U1FLASH RDnPIN W9FLASH RSTnPIN Y6FLASH WRnPIN Y5CLKPIN L1RSTPIN AB15LED0PIN AB16LED1PIN AB11LED2PIN AB7LED3PIN AB19LED4PIN A8LED5PIN A5LED6PIN A3LED7PIN Y10- 20 -锁定完成后保存引脚锁定文件制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系点击菜单 Assignments/Device 将弹出以下对话框,点击其中的“ Device andOptions”按钮,在弹出对话框的“ Unused Pins”选项卡中设定未使用

17、的引脚为As input tri-stated with weak pull-up”。编译工程。单击 ProcessingStart Compilation 开始编译,编译过程中如果有 出错消息,请参考提示对工程进行修改直到编译完全成功为止。软件设计启动 NiosII EDS 软件,选择 File/New/NiosII Application and BSP from Template新建一个应用工程和板级描述包。- 21 -在弹出的对话框中填入 SOPC 描述信息和工程名制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系在模板窗口中选择 “Blank Project ”点击 Fin

18、ish 完成一个空应用工程的建立。 在工程管理窗口中右键点击“ Led_Flow_Soft”,从弹出菜单中选择新建源文 件,如下图。为源文件起名“ main.cpp”已建立一个- 22 -C+文件,点击 Finish 确定。制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系编写源文件:保存工程后点击 Project/Build All 编译工程- 23 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系点击菜单项 NiosII/QuartusII Programmer ,打开 QuartusII 编程下载对话框, 将 QuartusII工程生成的 SOF文件下载到 FPG

19、A 芯片中。下载成功后,开发板就 构造成功了一个 NiosII 系统,我们需要把流水灯程序下载到其中的 Flash 中实现 流水灯效果。注意下载后不要断电,后续的 Flash 下载过程需要保证 NiosII 系统 常驻在 FPGA 中。点击菜单项 NiosII/Flash Programmer,打开 Flash 编程下载对话框。点击新建菜单,指定板级描述文件的位置 (默认位置在工程目录的 software 文件夹中)添加程序下载文件到对话框中,下载文件后缀名为 .elf- 24 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系点击 Start 即进行下载。程序下载无误即可看到 L

20、ED 的流水灯效果。 实验结果点击 Start 即进行下载。程序下载无误即可看到 LED 的流水灯效果 五、实验结果- 25 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系附:1. 参考代码: 制作人:程鸿亮 #include system.h#include alt_types.h#include unistd.h#include altera_avalon_pio_regs.hint main ()alt_u8 iData(1);alt_u8 i(0);while (1)if (i7) iData=iData1;IOWR_ALTERA_AVALON_PIO_DATA(LED

21、_BASE,iData); i=(+i)%14;usleep(100000);return 0; 2. 开发系统 I/O 管脚映射表:引脚名称引脚号引脚名称引脚号I/O0AB15I/O40C13I/O1AB14I/O41C7I/O2AB13I/O42H3I/O3AB12I/O43U3I/O4AA20I/O44P3I/O5AA19I/O45F4- 26 -制作人:程鸿亮长安大学 电子与控制工程学院 电子科学与技术系引脚名称引脚号引脚名称引脚号I/O6AA18I/O46C10I/O7L19I/O47C16I/O8J14I/O48G20I/O9H15I/O49R20I/O10H14PIO60AB16I/O11G16PIO61AB17I/O12F15PIO62AB18I/O13F14PIO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论