欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    四路抢答器报告.docx

    • 资源ID:56205415       资源大小:355.15KB        全文页数:10页
    • 资源格式: DOCX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    四路抢答器报告.docx

    硬件描述语言课程设计报告课题名称四路抢答器学生姓名王光陛学 号学 院应用科学学院专业班级电科11-3班完成地点新主楼C903完成时间2013年12月18日星期三指导教师王建民评阅意见:哈尔滨理工大学电子科学与技术系摘要Verilog HDL本身是一门比较复杂的语言,语法结构丰富。在王老师所教书中介绍了基于Verilog HDL的数字设计的基本原理和方法,重点是电路设计。为更好的将所学Verilog HDL语言的理论知识与实际应用结合起来,学会分析、解决实际的数字电路问题,锻炼独立进行某些数字应用系统的开发设计工作能力,我们在老师的指导下完成了此次项目设计。本设计题目为四路抢答器电路,用Verilog HDL语言编写软件实现四路抢答功能。裁判发出开始信号后抢答有效(裁判使用拨码开关),一人抢答成功后其他人抢答无效直至裁判复位此状态后方可继续抢答(选手使用按键),同时使用数码管显示出选手的编号。四路抢答器电路设计的主要问题在于如何实现各个模块的正确分配,进而使设计出的电路更加符合要求。为了使各个模块能够正确分配,在程序开始设计之前,必须反复推敲本组的设计方案并设计好各个模块的方框图。根据实验题目要求并进行电路的仿真,电路的设计应包括2个模块,即实例化模块和抢答模块。此次设计四路抢答器电路的目的就是让同学们在学习Verilog HDL理论的基础上,通过对题目要求的分析进一步实现实际电路的设计,使我们不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对分析、解决实际的数字电路问题进一步加深认识,为今后能够独立进行某些数字应用系统的开发设计工作打下一定的基础。【关键词】Verilog HDL,四路抢答器,模块,数码管显示,电路设计第一部分 系统的设计1.1、设计要求(1)裁判发出开始信号后抢答有效。(2)设选手及裁判按钮,选手使用按键,裁判使用拨码开关。(3)一人抢答成功后,其他人再抢答无效,裁判复位此状态后方可继续抢答。(4)使用数码管显示选手的编号。1.2、设计目标(1)我们在课本上学习了相关的基础知识,所以需要进一步对实际题目进行程序编写,以巩固所学知识,还可以发现自身不足。(2)程序编好后还需要在实验室调试电路,观察实验现象,进一步熟悉相关仪器设备的使用。(3)通过完成四人抢答器电路设计,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对分析、解决实际的数字电路问题进一步加深认识,为今后能够独立进行某些数字应用系统的开发设计工作打下一定的基础。(4)培养综合运用知识和独立开展实践创新的能力。(5)规范化训练学生撰写技术研究报告,提高书面表达能力。1.3、设计方法(1)仔细阅读课程设计题目要求,思考实现电路所需知识以及方法。(2)遇到本组内解决不了的问题,及时和其他小组交流或询问老师。(3)将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务。(4)通过完成该项任务,总结所学知识。1.4、实验设计结果(1)对所写程序进行编译无误。(2)在实验室对电路进行引脚分配和仿真,通过DE2开发板观察实验现象。(3)裁判发出开始信号后抢答有效。(4)一人抢答成功后,其他人再抢答无效,裁判复位此状态后方可继续抢答。(5)使用数码管显示选手的编号。第二部分 实验设计部分2.1、设计概述 本次课程设计的四路抢答器要求实现以下功能,即裁判发出开始信号后抢答有效,设裁判及选手按钮,裁判使用拨码开关而选手使用按键。一人抢答成功后,其他人再抢答无效,裁判复位此状态后方可继续抢答,使用数码管显示选手的编号。抢答器的核心部分为巧妙地利用D触发器的反馈,在检测到第一个上升沿时将按键(未按下时接低电平)接入的与门锁住,以保证与门只有一个上升沿输出,从而实现“最先按下按键的选手抢答成功,此后其他人抢答无效”。在与门输出上升沿的同时检测按键,用来确定是哪个选手抢答,用寄存器存储抢答选手的信息,最后数码管显示出抢答选手的编号。裁判对当时状态复位,则抢答重新开始,其原理同上。本设计要求采用DE2开发板设计并完成四路抢答器的设计,设计中采用DE2开发板上的开关及按键模拟裁判及选手的按键,通过七段显示译码器显示出选手编号的数码管。根据以上设计要求及分析,设计出系统输入输出信号如下表所示。信号名称类型描述实现reset输入复位端,若有效,则输出清零SW1clk输入时钟信号,上升沿触发CLOCK_50a输入选手抢答按键,表示编号为1的选手KEY0b输入选手抢答按键,表示编号为2的选手KEY1c输入选手抢答按键,表示编号为3的选手KEY2d输入选手抢答按键,表示编号为4的选手KEY3HEX输出数码管,用于显示四位选手的编号HEX0en输入使能信号SW0q内部信号第一个选手选择后进行封存state_reg内部信号电路的当前状态state_next内部信号电路的次态2.2、设计框图数码管显示状态寄存器选手按键abcdD触发器裁判控制,复位清零2.3、电路设计(1)实例化本次课程设计要求采用实验室中的DE2开发板完成四路抢答器的设计,这就要求采用DE2开发板上的开关及按键模拟选手及裁判的按键,并通过七段显示译码器模拟显示选手编号的数码管。这些要求可以通过模块实例化来实现。模块实例程序如下:module qiengdaqi( input wire 1:0SW,input wire CLOCK_50, input wire 3:0KEY, output wire6:0HEX0, ouput wire3:0LEDG, output wire0:0LEDR);assign LEDR=SW0sseg_m1 m1(.clk(CLOCK_50),.en(SW0),.reset(SW1),.a(KEY0),.b(KEY1),.c(KEY2),.d(KEY3),.HEX(HEX0),.LEDG(LEDG);endmodule(2)抢答模块抢答模块要具有第一信号鉴别、锁存功能。第一信号鉴别锁存的关键是准确判断出第一抢答者并将其锁存,在得到第一信号后,将输入端封锁,使其他组的抢答信号无效,用触发器实现。设置抢答按钮in_a、in_b、in_c、in_d,裁判复位信号reset。reset=0时,第一信号鉴别、锁存电路以及电路复位;reset=1时,开始抢答,由第一信号鉴别锁存电路形成第一抢答信号,并通过数码管显示出抢答者的编号。抢答模块程序如下:module sseg_m1 (input wire clk,en,reset,input wire a,b,c,d,output reg 6:0HEX,output wire 3:0 LEDG);reg3:0 state_reg,state_next; reg q;assign LEDG=(q)? 4'b0:state_reg;always(posedge clk,posedge reset)beginif(reset)beginstate_reg<=4'b1111;endelsestate_reg<=state_next;endalways*beginif(state_reg=4'b1111)q=1'b1;elseq=1'b0;if(!a)&(q)&en) state_next=4'b0001;else if(!b)&(q)&en)state_next=4'b0010;else if(!c)&(q)&en)state_next=4'b0100;else if(!d)&(q)&en)state_next=4'b1000;elsestate_next=state_reg;endalways *begincase(state_reg)4'b0001:HEX6:0=7'b;4'b0010:HEX6:0=7'b;4'b0100:HEX6:0=7'b;4'b1000:HEX6:0=7'b;default:HEX6:0=7'b;endcaseendendmodule第三部分 设计仿真(1)双击Quartus II软件快捷图标进入Quartus II集成开发环境,新建工程项目文件db,并在该项目下新建Verilog源程序文件qiangdaqi.v,输入上面的程序代码并保存。(2)然后为该工程项目选择目标器件并对相应的管脚进行锁定。(3)对该工程文件进行编译处理,若在编译过程中发现错误,找出并更正错误直至成功为止。(4)将DE2开发板下载电缆端接到PC机,打开工作电源,执行下载命令把程序下载到DE2开发板上,通过KEY0到KEY4抢答按键按下后,由裁判员根据答题情况,通过控制按键操作,这样就可以看到数码管上的选手编号。第四部分 调试运行在编译调试运行的过程中,出现了不少问题。(1)由于基础知识学习不够扎实,同时在两个always语句中队同一个变量赋值,由于各个always块是并行执行的,在编译过程中出现了错误。最后将两个always块合并为一个,避免了这个问题的出现。(2)抢答成功后数码管不能正确显示其组号。原因在于所编程序中数码管数字编写出现错误,改正后,电路正常。第五部分 仿真结果(1) 复位端有效,清零,禁止抢答 (2) 编号为1的选手抢答成功(3) 编号为2的选手抢答成功(4) 编号为3的选手抢答成功(5) 编号为4的选手抢答成功第六部分 心得体会通过一个星期的讨论、实践,加深了对EDA的了解,我更加熟练的掌握了Quartus的使用,并产生了浓厚的兴趣。特别是编译过程中,当错误一个个减少时,特别的兴奋。这次项目设计选择了抢答器,刚开始进行分析,分为几个部分,然后每一部分分开编写,最后汇总于一个模块当中,不会太难。但是接下来程序编写过程中由于需要定义多个变量,弄的混乱不堪。而后先将所有用到的变量及其代表的含义先写下来,编写程序过程中一一对照才清楚了很多。由于理论学习与实际运用存在太大的差别,在设计过程中错误不断,只能一点一点的进行修改。直到最后完整的实现了四人抢答器的基本功能。在设计中遇到问题是在所难免的,但这是我们所必须面对的,有问题才能去解决问题,解决问题才能提高。从中学会的不止是怎样解决实际问题,更多的是遇到问题时该怎么思考。通过这次项目设计,我更加理解了理论与实际相结合的重要性。只有理论知识是还远远不够,只有把所学的理论知识与具体问题结合起来,才能真正的应用,不断提高自己动手能力、思考的能力和团队合作能力。总的来说,对这次设计抢答器还是比较满意的,即使没有完全实现预期效果,有些许遗憾,但至少是自己的成果。一周的时间,积累了经验,增强了实验素养,受益匪浅。参考文献1 夏宇闻 Verilog 数字系统设计教程北京 北京航空航天大学出版社2008.62 张延伟,杨金岩,葛爱Verilog HDL 程序设计实例详解北京人民邮电出版社3 王伟Verilog HDL程序设计与应用北京 人民邮电出版社4 张亦华 延明 编著. 数字电路EDA入门-VHDL程序实例集,北京邮电大学出版社 2003

    注意事项

    本文(四路抢答器报告.docx)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开