- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验五_nios系统设计交通灯DE1(9.0版)
《基于软核技术的嵌入式系统设计》
实验五(上)、NiosII系统设计——电子钟
北京交通大学 计算机学院
教师:丁晓明
本实验指导书演示了NiosII系统的硬件设计,软件设计,能实现一个交通灯功能。
本实验在前面实验的基础上,同学已经能熟练的使用QuartusII软件和模块化输入方法。
本实验主要包括SOPC Builder,NiosII IDE,QuartusII的使用,主要目的在于指导同学学习如何定制一个NiosII硬件系统和如何在此基础上编写软件程序。
实验条件: Cyclone EP2C20教学套件 QuartusII 9.0 SOPC Builder 9.0 NiosII 9.0 NiosII IDE
在本实验中,我们将以Cyclone EP2C20学习板为平台,介绍开发一个交通控制灯的软、硬件方案设计,涉及到的代码,只需要按照实验指导书将代码拷贝到工程文件夹中即可。
系统软、硬件需求分析,
1. 该系统要实现的功能: 1 . 在数码管上显示交通控制灯的时间
2 . 显示交通控制灯,使用开发板上的4个LED来演示
2. 硬件系统组成规划
根据系统要实现的功能和开发板配置,本项目中需要用到的Cyclone Ⅱ上的外围器件有:
数码管:交通控制灯时间显示屏幕
LED:交通控制灯
Flash存储器:存储软、硬件程序
SRAM存储器:程序运行时将其导入SRAM
根据所用到的外设和器件特性,在SOPC Builder中建立系统要添加的模块包括:NiosII CPU,数码管, 外部RAM总线(Avalon三态桥),外部RAM接口,外部Flash接口,SDRAM。
3.软件系统规划
要实现系统所需的功能,大量的工作应该集中在软件设计和优化上。电子钟的软件功能主要分为显示、设置和时间算法三大部分。
1. 显示部分
显示部分的功能包括:
1 . 显示交通控制灯改变的剩余时间(秒)
2 . 显示当前闪亮的交通灯
2. LED部分
LEDR1:相当于红灯
LEDR0,LEDG7:相当于黄灯
LEDG6:相当于绿灯
3. 时间部分
时间累加,红灯闪亮时间为30秒,黄灯闪亮时间为10秒,绿灯闪亮时间为60秒
通过对软件要完成的功能进行分析可以看出,这里只有LED和显示部分需要涉及硬件,其它子程序可在进行硬件设计的同时开始编写。
4. 软件流程图
实验内容:
1. 系统硬件
首先将DE1_traffic文件里的文件全部拷贝到一个空文件夹下,可以用自己的学号定义。
然后双击DE1_NIOS.qpf文件打开工程。
然后点击 Tools- SOPC Builder,进入SOPC Builder,运行SOPC Builder.
给要设计的系统模块命名,此处我们命名为system_0;Target HDL项,选择VHDL,指定设计中各模块生成的HDL类型,命名完毕,点击OK。
(4)Clock为100MHz,Target Device Family为cyclone Ⅱ,clk_0改为clk。
(5)双击Avalon Components NiosII Processor,添加一个 NiosII/f 处理器
Instruction Cathe:4KB
JTAG调试模块等级:Level 1
然后点击Finish。
(6)添加 JTAG UART,在interface protocols/serial选项卡下选择Create ModelSim alias to open a window showing output as ASCII text,其他设置保持默认状态,如下图。
7 添加 RS-232 serial port uart_0,选择默认设置。
(8)添加自定义外设sram,并改名为sram_0.
8 添加EPCS serial flash controller,改名为epcs_controller。
(9)添加Flash存储器,地址宽度22bits,其它使用默认设置。
(10)添加avalone-MM triState Bridge,设置为register,命名为tri-state-bridge0.
将flash存储器链接到(tri-states-bridge)三态桥
然后双击tri-states-bridge_0模块,并进行如下选择:
(11)添加SDRAM,按下图进行设置。
(12)添加一组PIO Parallel I/O ,选择默认设置,并改名为LEDG
相同方法添加另一组PIO Parallel I/O ,命名为LEDR:
(13)添加User_logic中的SEG7_LUT_4,命名为SEG7。
双击cpu_0模块,并进行如下设置:
然后选择System Auto-Assign Bas
文档评论(0)