《现代数字系统设计》课程总结.docx

上传人:b****1 文档编号:770163 上传时间:2023-04-30 格式:DOCX 页数:9 大小:54.73KB
下载 相关 举报
《现代数字系统设计》课程总结.docx_第1页
第1页 / 共9页
《现代数字系统设计》课程总结.docx_第2页
第2页 / 共9页
《现代数字系统设计》课程总结.docx_第3页
第3页 / 共9页
《现代数字系统设计》课程总结.docx_第4页
第4页 / 共9页
《现代数字系统设计》课程总结.docx_第5页
第5页 / 共9页
《现代数字系统设计》课程总结.docx_第6页
第6页 / 共9页
《现代数字系统设计》课程总结.docx_第7页
第7页 / 共9页
《现代数字系统设计》课程总结.docx_第8页
第8页 / 共9页
《现代数字系统设计》课程总结.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《现代数字系统设计》课程总结.docx

《《现代数字系统设计》课程总结.docx》由会员分享,可在线阅读,更多相关《《现代数字系统设计》课程总结.docx(9页珍藏版)》请在冰点文库上搜索。

《现代数字系统设计》课程总结.docx

《现代数字系统设计》课程总结

《现代数字系统设计》课程总结

 

 

2011年秋季学期

实验一八路LED的开关控制

1.实验要求

本实验要求用8个开关分别控制8个LED的亮灭。

2.硬件设计思路

用FPGA的八个引脚做开关控制,八个引脚控制LED的亮灭。

3.软件程序流图

4.实验体会

通过本实验对VHDL语言有了初步的了解。

 

实验二8位可逆计数器设计

1.实验要求

本实验要求计数脉冲可以手动输入,也可以用脉冲源输入,通过开关可以选择。

2.硬件设计思路

4位输入(分别为脉冲选择、顺序选择开关,脉冲信号1,脉冲信号2),8位LED显示。

3.软件程序流图

2

1

4.实验体会

通过此实验对VHDL语言有了深入的了解,对FPGA的引脚也加深了研究。

运用了一些简单的VHDL语句。

 

实验三实现任意整数分频电路设计

1.实验要求

本实验要求实现占空比50%,分频系数可以通过拨码开关设定的分频电路。

2.硬件设计思路

时钟输入端(手动控制),计数选择(4位),频率显示(LED灯显示)。

3.软件程序流程

i.判断分频数为奇数还是偶数。

ii.如果是奇数则在(n+1)/2-1脉冲前后分别取正脉冲与负脉冲、负脉冲与正脉冲。

然后将两次的信号取或操作,以达到占空比为50%。

iii.如果是偶数则在n/2脉冲前后分别取正脉冲与负脉冲。

iv.输出脉冲信号。

4.实验体会

通过本次实验掌握了分频的基本思想,最大的难点是对奇分频的操作,若何达到完全的50%占空比使得实验难度加大。

我采取对奇分频的(n+1)/2-1脉冲前后取两次不同的脉冲信号取或操作来实验50%占空比分频。

实验四利用状态机实现多功能循环彩灯控制

1.实验要求

本实验要求实现4种循环方式,每种循环方式运行5次后,自动转换为下一种循环方式。

2.硬件设计思路

状态机的操作完全借助于内部电路的计算与转换,外电路只需要将转换状态以LED灯的循环方式显示出来,此试验只需要有8路引脚控制LED。

3.软件设计流程

i.设置四种状态变量。

ii.设置四种状态循环。

iii.在四种状态下分别设置一种循环方式,每种循环方式循环五次。

iv.将循环变化的信号值直接显示。

4.实验体会

此实验中熟悉了状态机的操作机制及工作原理。

对于每种状态下的循环方式的显示是难点,开始在四种状态之下又分别设置几种状态,这样虽然能够显示出需要的效果,但是软件显示的状态特别复杂,不便于掌控。

于是修改为四种状态下使用简单的逻辑循环语句来完成循环显示。

 

实验五8段数码管动态扫描显示控制

1.实验要求

本实验要求实现具有启动,停止,清零功能的秒表,启动,停止,清零由一个按钮开关控制。

2.硬件设计思路

此实验需要有一个控制开关,一个外部时钟输入端。

数码管的七段段码输出端,因为需要动态显示,所以6位数码管需要6个引脚单独控制显示状态。

3.软件程序流程

i.外部时钟选择20M晶振并且分频为100HZ,1000HZ(其中100HZ的信号用于计数,1000HZ的信号用于显示)。

ii.在100HZ的脉冲信号有效时,对秒表的最低为进行十进制计数操作,溢出时向高位进位。

iii.开关控制一个信号的三种状态,然后这三种状态分频控制计数模块的计数,锁存以及清零。

iv.将计数的整数转换为数码管可以显示的段码操作。

在1000HZ的脉冲下控制数码管循环显示。

4.实验体会

本实验中计数模块的进制数的选择以及进位操作时本实验的难点,通过IF条件判断是否溢出并且在溢出的时候进位。

另一个遇到的问题是:

理论上想数码管动态扫描脉冲越快,显示效果越好,但是实际并非如此当我加20M晶振直接扫描时,显示效果非常差。

不断测试发现在1000HZ下显示比较满意。

经研究得出这是因为数码管的段码变化速度比20M扫描慢太多的原因。

 

实验六频率计设计

1.实验要求

本实验要求实现一个可测频率范围为1Hz——1MHz的数字频率计,并用数码管显示测量结果,并对测量精度进行分析说明。

2.硬件设计思路

此实验需要一个外部时钟输入端,一个外部信号输入端。

数码管的七段段码输出端,因为需要动态显示,所以6位数码管需要6个引脚单独控制显示状态。

3.软件程序流程

i.外部时钟选择20M晶振并且分频为100HZ,1000HZ(其中100HZ的信号用于计数,1000HZ的信号用于显示)。

ii.在外部信号的一个时钟周期内,在100HZ的脉冲信号的控制下对计数值的最低为进行十进制计数操作,溢出时向高位进位。

iii.将计数的整数转换为数码管可以显示的段码操作。

在1000HZ的脉冲下控制数码管循环显示。

4.实验体会

本实验在秒表实验的基础上做起来较为简单,只需要对计数条件加以控制即可。

 

实验七矩阵式键盘扫描与键码检测

1.实验要求

本实验要求当按下某键时,在LED上显示该键的键码。

2.硬件设置思路

硬件部分分为键盘扫描模块,需要8个引脚分别对行列进行扫描;数码管显示模块,需要七段数码管段码既需要7个引脚,数码管的公共端接地。

3.软件程序流程

i.通过芯片对矩阵键盘的行健行赋值,在脉冲来的条件下顺次使四行中的一行处于高电平状态。

ii.在脉冲的有效值的条件下对列进行扫描。

通过对有效信号的判断得出具体按下的键盘。

iii.将键盘的数字转换为数码管段码并输出显示。

4.实验体会

此实验中最大的问题是对仿真硬件的研究不到位,总想对列进行扫描结果总是失败,知道发现行列之间的那个二极管,才知道应该对行扫描。

通过此次实验掌握了矩阵键盘的扫描方法,也提醒自己在以后的实验中要注意硬件仿真模块的研究。

 

实验八LPM的使用

1.实验要求

自主选择两个LPM模块组成一时序系统,实现功能测试,并理解每个LPM的所有参数含义。

2.硬件设计思路

经研究发现LPM模块下有16进制计数器,所以有想法把16进制转换为10进制计数,并通过7448进行译码数码管显示,需要有一个外部时钟信号输入端,并且有7段段码输出端。

3.软件程序流程

i.设置LPM模块分别为

(1)4位输出,向上计数。

(2)2进制数输出,时钟使能。

(3)同步清零。

ii.将输出四位信号给7448译码并显示。

iii.在计数到9使同步清零。

4.实验体会

此实验中对LPM的参数的理解是一个重点,在实验中需要将总线分开显示遇到了总线下的分线的使用的问题。

 

课程心得及建议

这门课程让我对电路设计有了新的认识,全智能下的电路设置充满了无穷的魅力,但在课程实验中总是会遇到很多的问题,VHDL这种新的语言虽然与其他语言有相似之处,但是其独有的逻辑语言,以及语法规则让我开始设计时有些棘手,因为总想用C语言的设计理念来书写VHDL语言,结果程序总是报错。

开始时喜欢先用C把思路写好,再翻译成VHDL语言,但发现这样改错很慢。

几次实验之后把VHDL语言重新学习了一遍,感觉还是直接写来的快,掌握了语法特性之后,写起来也没有C语言难。

感觉接触新的语言开始比较慢,当与VHDL达到默契的程度之后,语法规则已经不再是程序出错的主要问题了。

通过实验使我掌握了FPGA的设计方法,并且喜欢这种设计思路。

希望实验中可以多一些自己设计的实验,而不是都由老师设定题目。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2