
SoPC课程设计(报告)
题 目:
学 院: 电子工程学院
系 部: 微电子学系
专 业: 集成电路设计与集成系统
班 级: 1001
学生姓名:
指导教师:
起止时间: 2014年6月16日——2013年6月27日
1课程设计要求
1.1 基本要求
课程设计要求所有题目采用Quartus II 工具提供的图形输入或者VerilogHDL语言输入方式作为电路设计工具,在NiosII上采用C语言实现编程,自定向下正向设计方法,先设计硬件系统,再进行软件编程,能够生成正确的FPGA下载代码和NiosII执行的软件代码。硬件功能仿真和时序仿真采用第三方工具(建议为:modelsim),综合与布局布线工具为:Quartus II,SOPC Builder建立软件运行环境,具体要求为:
1)根据课设题目,进行总体设计方案(10分);
2)硬件电路顶层设计、模块划分、引脚定义(10分);
3)电路设计及NiosII设计,提交电路设计源代码或电路图(10分);
4)综合与布局布线,提交综合与布局布线报告(10分);
5)FPGA下载代码和引脚分布(10分);
6)软件总体设计及画出流程图(10分);
7)程序设计,提交程序代码(10分);
8)程序编译下载及仿真调试(10分)。
1.2 课程设计选题要求
本次课程设计题目共12个,要求每个同学完成其中的一个,每个题目不超过3人。
题目要求完成,设计和报告如有雷同,将一个成绩平均分配雷同的同学。
1.3 时间、地点
时间为每天14:00至20:00,地点在二号实验楼集成电路设计实验室。
1.4 课程设计纪律要求
全勤且提交课程设计报告及心得体会者记20分,课程设计时间段内任意时间点名未到、迟到、玩游戏扣除:3分/次, 6次及6次以上者课程设计成绩直接记:不及格。
2实验使用平台
实验平台使用Altera的DE2开发板,开发工具使用Altera的Quartus II和Nios II IDE。
2 课程设计题目
2.1 数字秒表设计
要求设计一个秒表,具有两种计时模式,有4个输入开关,分别是“清零”、“启动”和“停止”等,数码管显示秒4位和毫秒1位。要求FPGA设计硬件,内嵌NiosII,秒表功能软件实现。
2.2 串口通信控制器
通过计算机上的串口调试程序发送ASCII码英文字符,DE2板回送其后第四个字符,例如,发送A,收到E,发送Z,收到D。若发送非英文,回送ERROR。要求FPGA设计硬件,内嵌NiosII,DE2串口回送采用软件编程实现。
2.3 键盘及LCD控制器
将标准键盘输入的阿拉伯数字显示在数码管上。要求采用FPAG数字逻辑接收键盘串口数据,并转换成并口数据,NiosII处理器IO口读取此数字,需要9bit输入口,8bit为数据,1bit表示状态(是否有新数据?复位时此位为0,键盘有新数据并转换成并口数据此位置1,NiosII判断此位若为1、读取数据,并将此位清0)。读取键盘值、判断状态为和数码管显示,均由NiosII完成。
2.4 串口LED灯控制器
通过计算机串口发送命令给DE2实验板 (命令回传给计算机),控制LED流水灯的方向和流水速率。发送0x0101,流水灯右移,发送0x0110,流水灯左移;发送0x02yy,改变流水灯移动时间,yy单位为10毫秒,例如:yy=0x14=20,则移动间隔为200毫秒,NiosII处理器接收命令并控制流水灯。
2.5 串口数码显示管控制器
通过计算机串口发送命令给DE2实验板(命令回传给计算机),控制数码显示倒计时表初值、启动和和停止。发送0x0101,启动倒计时,发送0x0102,停止倒计时;发送0x02yy,改变倒计时初值时间,yy取值范围00~99,倒计时单位为秒,倒计时时间到,用LED亮指示,同时停止倒计时。NiosII处理器接收命令并控制倒计时。
2.6 PWM控制器
设计PWM控制器,要求输出脉冲频率可编程(100Hz-10Khz),占空比可编程(0-31)分辨率为1/32;用PWM输出分别控制DE2板上LED亮度,至少2路;PWM频率和占空比用NIOSII控制(用开关或键盘或UART)。
2.7 四相步进电机控制器A
设计四相步进电机控制器输出四相控制信号,用DE2板上的LED观察输出;实现步进电机控制方式:(1)1相励磁;(2)2相励磁;步进电机方向和速度用NIOSII控制(用开关或键盘或UART);模拟控制步进电机运动轨迹(可选)。
2.8 四相步进电机控制器B
设计四相步进电机控制器输出四相控制信号,用DE2板上的LED观察输出;实现步进电机控制方式:(1)1相励磁;(2)1-2相励磁;步进电机方向和速度用NIOSII控制(用开关或键盘或UART);模拟控制步进电机运动轨迹(可选)。
2.9 可编程定时计数器
设计1路可编程定时计数器(具体要求参考8253);实现8253工作方式中至少两种; 可编程定时计数器工作方式和计数初值用NIOSII控制。
2.10 DE2与PC机串行通信实现
在Altera公司的FPGA开发板上,利用Nios II CPU软核,实现与PC的串口通讯功能;利用PC机的超级终端,完成对话、文件传输功能。
2.11 8×8点阵LED图形显示实现
在Altera公司的FPGA开发板上,利用Nios II CPU软核,实现实现点阵显示,达到所要求的点阵显示结果。
12个题目中由于程序代码相对简单,程序可以下载到FPGA片内RAM中,作为附件选项,在提前完成上述任务基础上,尝试添加FPGA外部RAM和FLASH,并将程序下载到其中。
3课程设计报告要求
3.1 内容要求
报告应该包含目录、正文、总结(心得体会)。其中正文应该涵盖1.1节基本要求。
3.2 报告排版要求
报告一级标题采用黑体四号,段前段后一行,行间距20磅。二级标题采用黑体小四号,段前段后一行,行间距20磅。正文采用宋体小四号,段前1行端后0行,行间距20磅。
4课程设计总结
通过本次SoPC课程设计…….
西安邮电大学电子工程学院SoPC课程设计过程考核表
| 学生姓名 | 班级/学号 | / | ||
| 承担任务实验室 | 集成电路设计实验室 | 所在部门 | 微电子学系 | |
| 实施时间 | 2013年6月17日 —2013年6月28日 | |||
| 具体内容 | 第一周 | 1)根据课设题目,进行总体设计方案; 2)硬件电路顶层设计、模块划分、引脚定义; 3)电路设计及NiosII设计,提交电路设计源代码或电路图; 4)综合与布局布线,提交综合与布局布线报告。 | ||
| 第二周 | 1)FPGA下载代码和引脚分布; 2)软件总体设计及画出流程图; 3)程序设计,提交程序代码; 4)程序编译下载及仿真调试; 5)撰写课程设计总结报告及心得体会。 | |||
| 指导教师姓名 | 职称 | |||
| 指导教师 对学生的评价 | 学习态度 | □ 认真 □ 一般 □ 不认真 | ||
| 学习纪律 | □ 全勤 □ 偶尔缺勤 □ 经常缺勤 | |||
| 实践能力 | □ 很强 □ 一般 □ 较差 | |||
| 指导教师对学生专业知识或社会实践能力等情况的意见 | 指导教师签字 年 月 日 | |||
| 学生姓名 | 班级/学号 | / | |||||
| 进行时间 | 2013年6月17日 — 2013年6月28日 | ||||||
| 成绩鉴定 | 根据课设题目,进行总体设计方案 | (10分) | |||||
| 硬件电路顶层设计、模块划分、引脚定义 | (10分) | ||||||
| 电路设计及NiosII设计,提交电路设计源代码或电路图 | (10分) | ||||||
| 综合与布局布线,提交综合与布局布线报告 | (10分) | ||||||
| FPGA下载代码和引脚分布 | (10分) | ||||||
| 软件总体设计及画出流程图 | (10分) | ||||||
| 程序设计,提交程序代码 | (10分) | ||||||
| 程序编译下载及仿真调试 | (10分) | ||||||
| 全勤且提交课程设计报告及心得体会 | (20分) | ||||||
| 指导教师姓名 | 职称 | 成绩 | |||||
| 评语 | 指导教师签字 年 月 日
| ||||||
