




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、哈尔滨理工大学软件学院课程设计报告课 程 VERILOG题 目 智力竞赛抢答计时器的设计班 级 集成12-1专 业 集成电路设计与集成系统学生学号 1214020118 1214020123 1214020133 1214020130指导教师 杨慧晶 2014 年 2 月 28 日1. 课程设计目的本次课程设计,主要掌握译码器、计数器的逻辑功能和工作原理,设计可预置时间的倒计时电路;分析与设计时序控制电路。掌握智力抢答器的工作原理及其设计方法,并对各种元器件的功能和应用有所了解。并能对其在电路中的作用进行分析。另外还要掌握电路原理和分析电路设计流程,每个电路的设计都要有完整的设计流程。这样才能
2、在分析电路是有良好的思路,便于查找出错的原因。2. 课程设计题目描述和要求(1)设计一个四人参加的智力竞赛抢答计时器。当有一参赛者首先按下抢答开关时,相应显示灯亮并伴有声响,此时抢答器不再接受其他输入信号。(2)电路具有回答问题时间控制功能。要求回答问题时间小于等于30s,时间显示采用倒计时方式。当到达限定时间时,发出警告。3.设计思想和设计内容 我们通过搜索资料。并且依据所学知识,为清晰明了简便的设计出想达到的目标,最终偶们采用实际的总体方案是将整个任务分成3个模块即:(1) 分频模块,因为实验所用开发板的时钟是50M的,而倒计时模块中要用到1hz和1kHz的时钟,所以要对50M的时钟进行分
3、频产生1hz和1khz的时钟。(2) 抢答鉴别模块,要具有第一信号鉴别、锁存功能。第一信号鉴别锁存的关键是准确判断出第一抢答信号并将其锁存,在得到第一信号后,将输入端封锁,使其他组的抢答信号无效,可以用触发器或者锁存器实现。设置抢答按钮in1、in2、in3、in4、主持人复位信号judge。judge=0时第一信号鉴别、锁存电路、答题计时电路复位;judge=1时,开始抢答,由第一信号鉴别锁存电路形成第一抢答信号,并进行组别显示。(3) 倒计时报警模块,当主持人启动倒计时开关后,数码管显示倒计时开始,倒计时结束时发出警报声。4. Verilog代码分频模块如下:module fenpin(r
4、st,clk,clk_1khz,clk_1hz); input rst,clk; output clk_1khz,clk_1hz; reg clk_1khz,clk_1hz; reg24:0count1; reg14:0count2; always(posedge clk or negedge rst) begin if(!rst) count1=0; else if(count1=25'd25000000) begin clk_1hz=clk_1hz; count1=0; end else count1=count1+25'b1; end always(posedge clk
5、 or negedge rst) begin if(!rst) count2=0; else if(count2=15'd25000) begin clk_1khz=clk_1khz; count2=0; end else count2=count2+15'b1; endendmodule抢答和计时综合模块如下:Modulemain(rst,clk,ina,inb,inc,ind,judge,clk_1hz,wei,duan, beep,wei1,duan1,duan2,clk_1khz); input clk,clk_1hz; input ina,inb,inc,ind,ju
6、dge; output3:0wei; output7:0duan; input rst,clk_1khz; output3:0wei1; output7:0duan1; output7:0duan2; output beep; reg3:0wei; reg7:0duan; reg flag; reg5:0shi,ge,data; reg4:0count; reg3:0wei1; reg7:0duan1; reg7:0duan2; reg beep; reg yu; reg 1:0count3; always(posedge clk) begin if(!rst) begin yu=0; end
7、 if(!judge) begin flag=0; wei=4'b1111; duan=8'hff; yu=1; end else begin if(ge=6'b000000&& shi=6'b000000); else begin if(!ina) begin if(!flag) begin wei=4'b1101; duan=8'hf9; flag=1; end end else if(!inb) begin if(!flag) begin wei=4'b1101; duan=8'ha4; flag=1; en
8、d end else if(!inc) begin if(!flag) begin wei=4'b1101; duan=8'hb0; flag=1; end end else if(!ind) begin if(!flag) begin wei=4'b1101; duan=8'h99; flag=1; end end end end end always(posedge clk_1hz or negedge rst) begin if(!rst) begin count=0; end else if(count>=5'd30) count=0; e
9、lse if(yu=1) count=count+5'b1; end always(count) begin if(count>=5'b10101) begin shi=5'b00000; ge=5'b11110-count; end else if(count>=5'b01011) begin shi=5'b00001; ge=5'b10100-count; end else if(count>=5'b00001) begin shi=5'b00010; ge=5'b01010-count; e
10、nd else begin shi=5'b00011; ge=5'b0; end end always(posedge clk_1hz) if(flag|(shi=0&&ge=0) begin if(count3=2'b1) begin beep<=0; count3<=count3; end else begin beep<=1; count3<=count3+2'b1; end end else begin beep<=0; count3<=0; end always(clk_1khz) begin if(
11、!rst) wei1=4'b0000; else if(clk_1khz) begin wei1=4'b0111; data=ge; end else begin wei1=4'b1011; data=shi; end end always(ge) begin case(ge) 6'b000000:duan1=8'b1100_0000; 6'b000001:duan1=8'b1111_1001; 6'b000010:duan1=8'b1010_0100; 6'b000011:duan1=8'b1011_00
12、00; 6'b000100:duan1=8'b1001_1001; 6'b000101:duan1=8'b1001_0010; 6'b000110:duan1=8'b1000_0010; 6'b000111:duan1=8'b1111_1000; 6'b001000:duan1=8'b1000_0000; 6'b001001:duan1=8'b1001_0000; default:duan1=8'b1111_1111; endcase end always(shi) begin case(s
13、hi) 6'b000000:duan2=8'b1100_0000; 6'b000001:duan2=8'b1111_1001; 6'b000010:duan2=8'b1010_0100; 6'b000011:duan2=8'b1011_0000; 6'b000100:duan2=8'b1001_1001; 6'b000101:duan2=8'b1001_0010; 6'b000110:duan2=8'b1000_0010; 6'b000111:duan2=8'b111
14、1_1000; 6'b001000:duan2=8'b1000_0000; 6'b001001:duan2=8'b1001_0000; default:duan2=8'b1111_1111; endcase end endmodule顶层模块如下:module qiangdaqi(rst,clk,ina,inb,inc, ind,judge,beep,wei,duan,wei1,duan1,duan2); input rst,clk; input ina,inb,inc,ind,judge; output3:0wei,wei1; output7:0dua
15、n,duan1,duan2; output beep; wire clk_1khz,clk_1hz; fenpin u1(rst,clk,clk_1khz,clk_1hz); main u2(rst,clk,ina,inb,inc,ind, judge,clk_1hz,wei,duan,beep, wei1,duan1,duan2,clk_1khz);endmodule 5. 经验总结马德彬:通过本次课程设计,我学会了综合应用键盘、LED小灯、LED数码管等外围接口进行产品设计,培养了quartus综合开发能力、实验的仿真及下载技能和互帮互助的同学关系,在各种其它能力上也都有了提高。更重要的是
16、,经过本次课设的反复修改验证及完成,我学会了很多学习的方法,而这是日后最实用的,真的是感到受益匪浅。感谢学校给我们这次机会,锻炼了我们的动手能力。通过这次课设让我明白了理论和实际操作之间的差距,而且也让我很明确得意识到自己在学习上有很多的知识漏洞,以后应该多钻研一下。王琳路:虽然结束了,也留下了很多遗憾,由于时间的紧缺,并没有做到最好,但是,最起码我们没有放弃,并努力实现它。相信以后我们会以更加积极地态度对待我们的学习、对待我们的生活。我们的激情永远不会结束,相反,我们会更加努力,努力的去弥补缺点,发展优点,充实自己!通过此次设计,我们进一步加深了对数字电路知识的认识与理解,掌握了四人智力竞赛
17、抢答器电路的设计、组装与调试方法。更加熟练的运用仿真软件,并学习了运用软件测试、调试、改进电路。培养了独立思考、分析、解决问题的能力,并培养了我们的动手能力。赵佳琦:持续近一个星期的课程设计结束了,我们的设计虽然有一些小毛病,但总体上还是很成功的。一周的时间虽然很短暂,但从中获益匪浅. 毕竟在课堂上学习的内容真真正正能用到实际是有点超乎我们的想象,但是在电路仿真的过程中出现大量问题,需要我们细心解决,所以,我对电路故障的排查能力有了很大的提高。所以我们以后要多接触和了解一些仿真软件,多向老师请教学习。从这过程,我锻炼了自己的动手能力,独立思考能力,分析实践能力,并学会了把自己的设计经验和思路拿出来与大家分享。张铭:本次课程设计使我们对课堂上的理论知识有了进一步的了解,并增强了对verilog这门课程的兴趣。学会了更多软件的操作,但同时也暴露出我对知识点的掌握还不足等缺点。加上在设计过程中遇到了一些问题,使得我们得查找相关资料,从而增长知识的同时也增强了解决问题和动手的能力,锻炼了做事细心、用心、耐心的能耐。这一课程设计,使我向更高的精神和知识层次迈向一大步
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河南测绘职业学院《社会体育运动技能与指导(瑜伽)》2023-2024学年第二学期期末试卷
- 广西财经学院《流域管理学》2023-2024学年第一学期期末试卷
- 吉安职业技术学院《群落生态学》2023-2024学年第二学期期末试卷
- 重庆城市科技学院《安全行为学》2023-2024学年第二学期期末试卷
- 新疆农业大学《医学影像诊断学1》2023-2024学年第二学期期末试卷
- 海南大学《中国古文名篇导读》2023-2024学年第二学期期末试卷
- 安阳幼儿师范高等专科学校《学位论文选题与设计》2023-2024学年第二学期期末试卷
- 公章申请流程
- 抽排水施工方案
- 2025年乡村医生岗位理论知识考试模拟试题及答案(共100题)
- 社会心理学-社会心理学的研究方法
- (完整)TRD工法桩施工方案
- 南阳粮库专用门窗施工方案
- 某物业管理月度品质管理考核标准
- 新民主主义革命理论(教学案例)
- 贵州民族大学辅导员考试试题2023
- 2023年陕西公务员申论考试真题及答案-B卷
- 建筑施工安全风险辨识分级管控指南
- 船坞的施工方法与流程
- 九年级化学下册第9单元溶液课题3溶液的浓度第二课时化学反应中的溶质质量分数的计算作业讲义新人教版
- 四川省2023年普通高等学校高职教育单独招生文化考试(普高类)英语试题(含答案解析)
评论
0/150
提交评论