EDA-Verilog拔河游戏机-课程设计(论文)_第1页
EDA-Verilog拔河游戏机-课程设计(论文)_第2页
EDA-Verilog拔河游戏机-课程设计(论文)_第3页
EDA-Verilog拔河游戏机-课程设计(论文)_第4页
EDA-Verilog拔河游戏机-课程设计(论文)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

三、课程设计(论文)地点:电子测控实验室1)课程设计任务:1)设计一个能进行拔河游戏的电路2)电路使用8个(或7个)发光二极管,开机后只有中间两个(或中间一个)发亮,此即拔河的终点。3)游戏双方各持一个按钮,迅速地、不断地按动,产生脉冲,谁按得快,亮点就向谁的方向移动,每按一次,亮点就移动一次。4)亮点移动到任意一端的终端二极管时,这一方就获胜,此时双方按钮均无作用,输出保持,只有复位后才使亮点恢复到中心。5)用数码管显示获胜者的盘数。6)*在亮点移动到中端二极管是蜂鸣器报警一方获胜。2)课程设计论文编写要求(1)课程设计任务及要求(2)总体电路设计(3)模块设计---给出各个模块的详细设计思路(4)管脚绑定---列表或截图给出管脚绑定情况(5)仿真及FPGA开发板调试---给出运行仿真波形截图,分析运行结果。(6)设计体会与小结---设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。(7)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)(8)报告按规定排版打印,要求装订平整,否则要求返工;(9)课设报告的装订顺序如下:封面---任务书---中文摘要---目录----正文---附录(代码及相关图片)(10)严禁抄袭,如有发现,按不及格处理。3)课程设计评分标准:(1)学习态度:10分:(2)系统设计:20分;(3)代码调试:20分;(4)回答问题:20分;(5)论文撰写:30分。4)课程设计进度安排进度安排:本设计持续10天,其中最后一天为答辩时间。第1-2天:讲解题目,准备参考资料,检查、调试实验软硬件,进入设计环境,开始设计方案和验证方案的准备;第3-4天:完成设计与验证方案,经指导老师验收后进入模块电路设计;第5-7天:完成模块电路设计,进行代码输入,并完成代码的初步仿真;第8-9天:代码功能仿真正确,约束设计,综合、下载,实现设计目标,并指导老师验收设计;整理设计资料,撰写报告、准备答辩;第10天:验收合格后进行答辩。(1)学习态度(10分):优()、良()、中()、一般()、差();(2)系统设计(20分):优(良()、中()、一般()、差();)、中()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)论文撰写(30分):优()、良()、中()、一般()、差();摘要本次项目设计使用VerilogHDL语言,完成拔河游戏机的设计。实用软件有QuartusII13和ModelSim-Altera10.1d,在其环境下进行代码的编EDA技术课程设计报告一、课程设计任务及要求 1 2 3 7 8 七、参考文献 一、课程设计任务及要求1)设计一个能进行拔河游戏的电路。2)电路使用8个(或7个)发光二极管,开机后只有中间两个(一个)发亮,3)游戏双方各持一个按钮,迅速地、不断地按动,产生脉冲,谁按得快,4)亮点移到任一方终端二极管时,这一方就获胜,此时双方按钮均无作5)用数码管显示获胜者的盘数。6)附加,亮点移动到任意一方终点时,蜂鸣器报警提醒。1)全部使用VerilogHDL硬件描述语言编写。2)使用ModelSim-Altera软件进行仿真并对结果进行分析。3)分析预期现象与实际现象之间产生差别的原因。二、总体电路设计在20MHz的时钟信号作用下,经过分频模块分频成1KHz和10Hz的时钟信号,数码管动态扫描使用1KHz的频率,按键扫描使用10Hz的频率,通过按键扫描将双方的按键情况输入,并产生与之相对应晶体管亮点位置并使获胜方的分数加一,将分数通过译码在数码管上显示出来。可以通过游戏复位按键是晶体管亮点回到中心,通过分数复位按键使双方分数全部1KHz时钟扫描模块亮点移动译码扫描10Hz时钟数码管计分图2-1拔河游戏机总体设计框图分分频1、分频模块设计由于FPGA芯片内部提供的时钟信号为20MHz,因此需要将其分频为10Hz,1KHz的信号,为后续的按键扫描,,蜂鸣器报警以及数码管动态扫时钟脉冲下计数,并将输出时钟翻转,最终输出的分别是1KHz,10Hz的cnt1khzclk1clk1khz20MHz999999时翻转clk10hz图3-1分频模块框图s1和s2是按键经过消抖后的输入变量,8位ledtemp是亮点当前位置的状态变量,初值为00011000,t是亮点位移的中间变量初值为3即亮点自减1,当key1不按下key2按下时,t自加1,其他情况t之外用assign语句将ledtemp赋值给输出led。EDA技术课程设计报告不是S1/S2为1/0是t=t+1不是t保持原值S1/S2为0/1是t=t-1tledtemp图3-2按键扫描与亮点位移框图3、比赛计分以及游戏锁定模块拔河游戏机在任意一方将亮点按动到自己那边终点后,所得分数就会加一,且此时按动游戏按键无效。按动按键使亮点到达终点时即t等于0或者等于6,0为左端终点,6为右端终点。故可以设定一个游戏使能变量k且赋初始值为1,计数使能变量j初始值为1,在k等于1时按键有效,然后每当t变化一次之后就对其进行判断,当t到达了0或者6,将游戏时能变量k置0,且对相应的分数变量left与right加一,并将计数使能变量j置0,同时在这之中放入BCD码转换模块,将二进制的left和right转不是k=1t变化是t=0是k=0j=0不是j=0图3-3比赛计分与游戏锁定框图在时钟脉冲激励下,检测并判断t的值,若t等于0或6,蜂鸣器变量ring置1,是蜂鸣器报警。是图3-4获胜报警模块框图5、动态扫描、数码管选择与译码模块通过绑定三个通选信号,对8个数码管进行扫描。在代码中设定输出q赋予初值为0,令其在1KHz的时钟下自加一,而当其等于7时置零。选择译码管使用case语句,在q所对应的数qtemp=qtemp+不是qtemp=7是qtemp=0图3-5动态扫描模块框图6、按键消抖模块按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械也不会一下子断开。所以在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象我们需要将其消抖。不断地检测输入信号,与上个及上上个信号进行或运算,除非连续出现三个低电平才能说出现下降沿认为是表一管脚绑定NodeNameDirectionabCdefg2、8位led对应8位发光二极管。4、3位q为数码管通选信号。7、rstn、rstsn分别为发光二级管与游戏使能端的复位以及游戏分数清零的按钮。1、rstn对使能端的复位在rstn一开始为高电平时,j、k、t变量没有给赋值所以为高阻态,而当rst_n复位为低电平之后就对他们进行了赋值,使三个变量j=1、k=1、/tug_th/rat_n/hig_th/dk/tug/batbkhig/batbk2回1t1U年111图5-1rst_n复位仿真图像EDA技术课程设计报告sss咨咨sss咨咨酒的陷当左边玩家按下按键右边玩家没有按下时,即key1为0、key2为1则led应该一直往左移直到11000000停止,而当右边玩家按下按键左边玩家没有按下时,即key1为1、key2为0则led应该一直往右移直到00000011停止,其他情况时led保持初值00011000不变。g_bAeyiig_tbfst_n/ugig_tbfst_n/hg_bk一/ig国B]0图5-2keyl/key2为0/1时led仿真图像/tugtb/keyiAug_b/fstsn/hig_b/cktb/led闭同时国团01日土3ns图5-3key1/key2为1/0时led仿真图像EDA技术课程设计报告3、计分与蜂鸣器的报警在rstn置0将led复位后,再将rstsn置0将left和right置0,而后移动led。当led位移到最左端或者最右端时,停止移动,并且蜂鸣器置1,最左端则left加一最右断则right加一。Wave-Default=/hg_tb/keyi1100000000000000/tug_fstn/ug_t/ets.n/hig_th/ck+-1/higt/ed/ag_tb/ring0000000000000000/ug_tb/0000000000000000/ug_tb/rght图5-4左边玩家获胜仿真图像图5-5右边玩家获胜仿真图像程设计实在是小巫见大巫。实验仅仅只是一个小模块,而课程设计确实众仿真以及烧写到板子上调试,每一步都不简单,每一步都会涉及到方方面虑,在代码的编写过程中经常会出现的问题比如同一个变量一会儿使用阻塞赋值一会儿使用非阻塞赋值,或者是同一个变量在不同always块中被赋值,这些都是不允许的。还有就是代码的逻辑问题,可能你的代码编译出来没有错误,仿真貌似也是正确的图像,但是烧写到开发板上就是不对,那么就要考虑代码逻辑的问题了,在几个变量当中谁的优先级更高,判断通过这次课程设计我学到了许多以前没有重视的东西,不仅丰富了知识量,还提高了自己的实践能力。我认为学习这种课程就应该多多实践,多找闲暇时间做一做比较有代表性的项目,丰富见识,积累经验,这样不单单能巩固课堂所学,还可以汲取更多的课外知识,真正有效的提高自己[1]王金明.数字系统设计与VerilogHDL[M].北京:电子工业出版社,2010.出版社,2013.[3]夏宇文.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,技术实用教程(第三版).北京:科学出版社,2006[5]孟涛.电子电工与EDA实践教程(第二版).北京:电子工业出版社,2012附录moduletug(clk,rstn,rstsn,led,q,keyl,key2,a,b,c,d,e,f,g,Ring);inputkeyl,key2,clk,rst_n,rsts_n;output[7:0]led;regring;outputrega,b,c,d,e,f,g;reg[7:0]ledtemp;always@(posedgeclkornegedgerstnbeginbeginbeginEDA技术课程设计报告//--------------10hz分频--------------always@(posedgeclkornegedgerstn)beginbeginelseif(cnt10hz==999999)beginclk10hz<=~clk10hz;cnt10hz<=cnt10hz+1;//--------------主函数------------beginif(!rstn)begink<=1;j<=1;beginleft<=0;elseif(k==1)begincase({keyl,key2})2’b10:t<=t+1;default:t<=t;endcaseif(t>=6||t<=0)beginif(t==6&&j==1)beginif(right[3:0]==9)beginright[3:0]<=0;if(right[7:4]==9)right[7:4]<=0;beginright[7:4]<=right[7:4]+1;j<=0;beginright[3:0]<=right[3:0]+1;j<=0;elseif(t==O&&j==1)beginif(left[3:0]==9)beginleft[3:0]<=0;if(left[7:4]==9)left[7:4]<=0;beginleft[7:4]<=left[7:4]+1;j<=0;beginleft[3:0]<=left[3:0]+1;j<=0;begink<=k;begin3'd1:ledtemp<=8'b01100000;3'd3:ledtemp<=8'b00011000;3'd5:ledtemp<=8'b00000110;//--------------响铃模块----------always@(posedgeclk)beginbeginelseif(t==0|t==6)begin//---------------动态扫描----always@(posedgeclklkhzornegedgerstn)beginqtemp<=0;elseif(qtemp==7)qtemp[2:0]<=0;//--------------数码管选择模块------------begincase(q)endcase//--------------译码模块----------begin4'd0:{a,b,c,d,e,f,g}=7’b11111104'd1:{a,b,c,d,e,f,g}=7’b01100004'd2:{a,b,c,d,e,f,g}=7’b1101101;4’d3:{a,b,c,d,e,f,g}=7’b1111001;4’d4:{a,b,c,d,e,f,g}=7’b0110011;4’d5:{a,b,c,d,e,f,g}=7’b1011011;4'd6:{a,b,c,d,e,f,g}=7’b1011111;4’d7:{a,b,c,d,e,f,g}=7’b1110000;4'd8:{a,b,c,d,e,f,g}=7’b1111111;4'd9:{a,b,c,d,e,f,g}=7’b1111011;EDA技术课程设计报告第18页default:{a,b,c,d,e,f,g}=7’b0000000;endcaseXiaodouendm

温馨提示

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

评论

0/150

提交评论