文档介绍:课程设计报告
课程设计名称 SOPC原理及应用
专业电子科学与技术
班级电子13-1班
学号 13040114
姓名郑航
指导教师冯丽
成绩
2016年1月13日
目录
一、设计目的 1
二、设计内容要求 1
三、系统软、硬件需求分析 1
1. 硬件系统组成规划 1
2. 软件系统规划 1
四、设计步骤 3
3. 新建工程“count_binary” 3
4. 添加ip核 3
5. 添加SDRAM Controller 4
6. 添加flash 5
7. 添加外部RAM总线(Avalon三态桥) 6
8. 添加pio核 6
9. 添加cpu核 7
10. 添加LCD核 8
11. 自动分配基地址并生成系统 8
12. 设置顶层模块图 9
13. 管脚分配并编译 9
14. 启动Nios II IDE,新建工程 10
15. 导入设计程序 10
16. 编译工程并烧录 11
五、设计结果 12
六、源程序 14
1. 14
2. 14
3. 14
4. 15
七、实验心得 23
项目基于NiosII系统的电子钟设计
设计目的
。
II软件的使用。
II软件的使用。
。
。
。
设计内容要求
NiosII系统的硬件设计,软件设计,该系统能实现一个电子钟功能。
系统软、硬件需求分析
硬件系统组成规划
根据系统要实现的功能和开发板配置,本项目中需要用到的Cyclone II开发板上的外围器件有:
LCD:电子钟显示屏幕
按钮:电子钟设置功能键
Flash存储器:存储软、硬件程序
SRAM存储器:程序运行时将其导入SRAM
根据所用到的外设和器件特性,在SOPC Builder中建立系统要添加的模块包括:NiosII CPU定时器,按键PIO,LCD, 外部RAM总线(Avalon三态桥),外部RAM接口,外部Flash接口。
软件系统规划
要实现系统所需的功能,大量的工作应该集中在软件设计和优化上。电子钟的软件功能主要分为显示、设置和时间算法三大部分。
①显示部分
显示部分的功能包括:
显示日期(年-月-日)
显示时间(小时:分钟:秒)
②设置部分
设置部分的功能包括:设置小时,设置分钟,设置年份,设置月份,设置日期。设置部分的程序主要用在对按键的响应。在编写程序前要对开发板上的四个按键功能进行如下分配:
SW0:换行键,可选择设置第一行或者第二行
SW1:选项数字减少
SW2:选项数字增加
SW3:选择键,可依次选择设置小时,分钟或者年份,月份和日期
③时间算法部分
时间算法部分的功能包括:
(a). 时间累加
(b). 确定每个月的最大天数,使年、月、日能正确累加
通过对软件要完成的功能进行分析可以看出,这里只有按键响应和显示部分需要涉及硬件,其它子程序可在进行硬件设计的同时开始编写。
③软件流程图
设计步骤
新建工程“count_binary”
添加ip核
点击 Tools->SOPC Builder,进入SOPC Builder,运行SOPC Builder,添加ip核。
添加SDRAM Controller
添加flash
Address Wicth设置为22,Data Wicth设置为16。