- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
PAGE 1
南京铁道职业技术学院EDA技术及其应用实验报告
实训课程:EDA技术及其应用
实训项目:基于FPGA的四人抢答器
指导老师:于淑萍
姓名:张秀梅
班级:电子信息1101
学号:19
2012年12月21日星期五
基于FPGA的四人抢答器设计
顶层原理图:
四人抢答器工作原理:
@功能要求:
1、1)有多路抢答,抢答台数为4;
2)具有抢答器开始后20秒倒计时,20秒倒计时后五人抢答显示超时,并报警;
3)能显示超前抢答台号并显示犯规报警;
2、系统复位后进入抢答状态,当有一路抢答按键按下,该路抢答信号将其余各路抢答信号封锁,同时铃声响起,直至该路按键松下,显示牌显示该路抢答台号。
@设计说明:
四人抢答器框图:
与门
与门
显示
电路
与门
与门
与门
抢答保持电 路
抢状态答
倒计时电路
译码输出
K3
K4
K2
K1
反馈信号
停止信号
开始
四人抢答器框图
系统复位后,反馈信号为高电平,使K1,K2,K3,K4输入有效,当抢答开始后,在第一个人按键后,保持电路输出低电平,同时送显示电路,让其保存按键的台号并输出,并反馈给抢答台,使所有抢答台输入无效,计时电路停止。当有人在规定时间无人抢答时,倒计时电路输出超时信号。当主持人开始未说完时,有人抢先按键时将显示犯规信号。
三、各功能模块的语言源文件:
@Cnt20.v文件:
module cnt20(stop,start,reset,CLK,q,yellow,green,red);
input stop,start,reset,CLK;//定义四个输入,开始、停止、复位、时钟
output[7:0]q; //定义输出
output yellow,green,red;
wire yellow,green,red;
wire [7:0]q;//定义内部连线
integer tmp1,tmp2,CA;
always@(posedge CLK)begin//时序过程
if(reset)begin tmp1=0;tmp2=2;CA=0;end
else if(stop==0)begin
if(start)begin
if(tmp1==0)begin
if(tmp2==0)begin CA=1;end
else begin tmp2=tmp2-1;tmp1=9;end
end
else begin tmp1=tmp1-1;end
end
end
end
assign yellow=CA;
assign q[7:4]=tmp2;
assign q[3:0]=tmp1;
assign green=stopstart;
assign red=stop(~start);
endmodule
@first.v文件:
module first(reset,a,lockout,firstman);
input[3:0]a;
input reset;//复位输入
output[3:0] firstman;
output lockout;//输出结果
reg[3:0]c;
reg[3:0]firstman;
reg clk,lock;
always@(a)begin
if(a[3]|a[2]|a[1]|a[0]==1) begin clk=1b1;end
else begin clk=1b0;end
end
always@(posedge clk or posedge reset) begin
if(reset) begin c=4b0000;lock=1b0;end
else if(lock==0) begin c=a; lock=1b1;end
end
assign lockout=lock;
always@(c)begin
case(c)
4b1000:firstman=4b0100;
4b0100:firstman=4b0011;
4b0010:firstman=4b0010;
4b0001:firstman=4b0001;
default:firstman=4b0000;
endcase
end
endmodule
设计过程出现的问题、解决的办法及体会:
@问题:
在进行first仿真设置时间时设置不了;
在进行20进制编译时未找到文件;
在对顶层原理图下载编译时下载错误。
@解决方法:
时间设置不了是因为在时间设置中未设置适当的时间,在edit中奖时间设置好后便可进行
您可能关注的文档
最近下载
- 《古建筑木结构维护与加固技术标准》(GB_T 50165—2020)修订解析.pdf VIP
- 七年级数学知识竞赛课件 (共42张PPT).pptx VIP
- 八年级数学趣味数学知识竞赛课件(比赛用) (共51张PPT).pptx VIP
- 七年级数学趣味数学竞赛比赛用课件 (共48张PPT).pptx VIP
- 《少盐限油健康饮食》课件.ppt VIP
- 2022年初中数学趣味数学竞赛课件(共43张ppt).pptx VIP
- 新员工三级安全教育培训(岗前)PPT课件.pptx VIP
- 常用电气形符号表.doc VIP
- DBJ51-143-2020 四川省公共建筑节能设计标准.pdf VIP
- 黑龙江建设工程安全文明施工费使用管理办法.doc VIP
文档评论(0)