verilog_hdl_fpga抢答器

合集下载

抢答器(-Verilog-HDL实现)

抢答器(-Verilog-HDL实现)

抢答器(-Verilog-HDL实现)桂林电子科技大学信息科技学院《EDA技术与应用》实训报告学号0952100110姓名赵万里指导教师:江国强杨艺敏2011年04月20日实训题目:智能电子抢答器1.系统设计1.1 设计要求1.1.1 设计任务设计并制作一台智能电子抢答器。

1.1.2 技术要求①用EDA实训仪的I/O设备和PLD芯片实现智能电子抢答器的设计。

②智能电子抢答器可容纳4组参赛者抢答,每组设一个抢答钮。

③电路具有第一抢答信号的鉴别和锁存功能。

在主持人将复位按钮按下后开始抢答,并用EDA实训仪上的八段数码管显示抢答者的序号,同时扬声器发出“嘟嘟”的响声,并维持3秒钟,此时电路自锁,不再接受其他选手的抢答信号。

④设计一个计分电路,每组在开始时设置为100分,抢答后由主持人计分,答对一次加10分,答错一次减10分。

⑤设计一个犯规电路,对提前抢答和超时抢答者鸣喇叭示警,并显示犯规的组别序号。

1.2 方案比较(1) 设计制作一个可容纳四组参赛者的数字智力抢答器,每组设置一个抢答按钮。

(2) 电路具有第一抢答信号的鉴别和锁存功能。

在主持人按下复位按钮后,若参加者按抢答开关,则该组指示灯亮。

此时,电路应具备自锁功能,使别组的抢答开关不起作用。

(3)自锁后,用八段数码管显示抢答者的序号,同时指示灯亮。

(4) 设置计分电路。

每组在开始时预置成100,抢答后由主持人计分,答对一次加10,否则减10分。

(5)电路具有淘汰功能,当每组的100分减少到0时,该组被淘汰,以后每次抢答,该组抢答按钮都无效。

1.3 方案论证1.3.1 总体思路总体分为四部分:倒计时模块、计分模块、抢答模块和分屏显示模块。

倒计时模块用一个20000000分频。

产生一个进位,连接一个30的减法计数器构成。

计分模块中分为两部分,一部分用于计分,另一部分用于处理计数器的进制问题,当加到A时自动向前进位,并且把A变为0。

当减少到F时,向前借位,并且把F变为9。

数字电子技术实验报告范文-基于FGPA的4位智能抢答器(verilogHDL)

数字电子技术实验报告范文-基于FGPA的4位智能抢答器(verilogHDL)

数字电子技术实验报告范文-基于FGPA的4位智能抢答器(verilogHDL)基于FPGA的4位智能抢答器一、设计任务要求基于EDA/SOPC系统开发平台,运用QuartuⅡ可编程逻辑器件开发软件,设计一个4位智能抢答器,在开发箱上,本系统使用频率为1000赫兹的时钟脉冲。

要求如下:2、系统上电和按下“复位”按键后4位数码管显示“0000”,此时只有“开始”按键有效,其他按键不起作用;4、抢答的有效时间为10秒,如果定时抢答的时间已到而没有选手抢答,本次抢答无效,封锁输入电路,禁止抢答,数码管左边显示“10”,右边显示“00”;此状态一直保持到主持人将系统复位为止;二、设计步骤本次设计主要采用VerilogHDL语言,总体编程思路采用模块化设计方式,主要分为3个模块,一个主控制及按键输入模块,一个计时显示模块,一个抢答组号显示模块,分别对这3个子模块进行独立编程设计,编译仿真通过并生成元件,在顶层使用原理图或者VerilogHDL语言的方式将3个模块连接起来三、模块设计思路对于这个任务来说,计时显示模块和抢答组号显示模块的模块并不复杂,复杂的模块是主控制及按键输入模块,所以我决定再将主控制模块拆分成两个小的模块——按键输入模块、按键输入判断输出模块。

后者使用4个D触发器来实现,当游戏开始的时候4个D触发器都会接收按键按下的信息,并且判断是否出现问题,下面我就真实的程序来进行说明。

1、主控制模块的按键输入模块LED3=how0;LED4=how0;endendEndmodule总体的电路图如下:(有些模糊,是因为电路图的连线过长,截图的时候不得不截成一个明显的长方形图形)四、实验总结:通过这次的实验任务,学习了一些verilogHDL语言的知识,也复习了数字电子技术相关的知识。

以前只是在纸上画过一些原理图,如果需要改动某一个点的时候就会出现牵一发而动全身的现象,对于比较复杂的电路设计,纸上的勾勾画画很显然会很浪费时间,所以对于程序设计电路的方式我相信大多数人是持欢迎态度的。

基于verilog的抢答器设计

基于verilog的抢答器设计

基于Verilog语言的二路抢答器设计实验报告电子科学与工程学院 121180052 李璇一、实验目的1、掌握数字系统中触发器、计数器的设计要素。

2、掌握触发器、计数器的VerilogHDL代码编写。

3、进一步掌握ISE软件的用法,学习代码下载的方法。

二、实验步骤1、设计限时和复位电路。

2、编写限时/复位电路的VerilogHDL代码并综合、仿真。

3、实现限时抢答器并下载到开发板上进行验证。

三、实验原理1、设计二路抢答器2、设计定时器和复位电路可使用计数器来实现定时功能。

而给定时间的定时,可以让计数器的输出与特定值比较来实现。

这个特定的预置数由时钟频率和定时时间决定。

这个基本想法如下图所示。

图中,“时间到”信号接到计数器的清零端,以便下次计数从0开始。

这里,还需要一个计时开始的功能按键,用来启动计数器的计时。

那么,计数器就需要一个使能端,受控于“计时开始”按键。

我们知道,EN信号是一个持续信号(允许时保持电平),而“时间到”信号是一个持续时间很短的脉冲,因此还需要一个触发器来产生计数器的EN信号。

复位信号由“时间到”信号和复位按键相或来得到。

完整的限时和复位电路如下图所示。

四、实验代码//主程序部分Module responder (input clk,input set,input reset,input wire in_a,input wire in_b,output wire q_a,output wire q_b,output en);wire clr;wire[27:0] cnt;wire clk_10;wire timeout;reg[27:0] n=28'h1ffffff;assign clr = reset||timeout;trig trigger(.set(set),.clk(clk_10),.clr(clr),.en(en));count counter(.clk(clk_10),.clr(clr),.en(en),.cnt(cnt));comp comparator(.cnt(cnt),.n(n),.timeout(timeout));fpga_2 main(.in_a(in_a),.in_b(in_b),.clk(clk_10),.reset(clr),.q_a(q_a),.q_b(q_b),.en(en));endmodule//触发器trigger部分module trig(input set,input clk,input clr,output reg en);always@(posedge clk)begin if(clr) en=0;elsebegin if(set) en=1;else en=en;endendendmodule//计数器counter部分module count(input clk,input clr,input en,output reg[27:0] cnt);always @(posedge clk)beginif(clr)cnt=0;else if(en)cnt=cnt+1;endendmodule//比较器comparator部分module comp(input wire[27:0] cnt,input wire[27:0] n,output reg timeout);always @(*)if(cnt==n)timeout=1;elsetimeout=0;endmodule//抢答器部分module fpga_2(input wire in_a,input wire in_b,input wire clk,input wire reset,input en,output reg q_a,output reg q_b);always @(posedge clk)beginif ( (q_b==1) ||(reset) )q_a=0;else if(in_a&&en)q_a=1;endalways @(posedge clk)beginif ( (q_a==1) ||(reset) )q_b=0;else if(in_b&&en)q_b=1;endendmodule五、仿真测试1、测试代码// Add stimulus hereset = 1;reset = 0;in_a=1;#1000 in_a=0;#100 in_b=1;#1000 reset=1;#100 in_b=0;#100 reset=0;in_b=1;#1000 in_b=0;#100 in_a=1;#1000 reset=1;#100 in_a=0;#100 reset=0;endalways #10 clk=~clk;2、仿真结果六、验证限时电路和复位电路1在工程中加入DCMmy_clk my_dcm(.CLK_IN1(clk),.CLK_OUT1(clk_10),.RESET(1'b0),.LOCKED());2、为模块中的输入输出信号添加管脚约束(管脚定义),在工程中添加UCF文件。

基于Verilog HDL的数字竞赛抢答器

基于Verilog HDL的数字竞赛抢答器

欽件打夜场宗用2021年第2期售廉与电atChina Computer & Communication 基于Verilog HDL 的数字竞赛抢答器孙阔王颖*(大连理工大学城市学院电子与自动化学院,辽宁大连116024)摘 要:数字抢答器拥有广阔的市场前景,在电视节目、各类高校的比赛中都可以使用数字抢答器。

本文基于 Verilong HDL 设计了一种数字抢答器,该数字抢答器以6个参赛组为基础实现其他功能,具有一定的审场价值.关键词:Verilog HDL;数字抢答器;FPGA中图分类号:TP311.52 文献标识码:A 文章编号:1003-9767 (2021) 02-112-02Digital Competition Answerer Based on Verilog HDLSUN Kuo, WANG Ying*(School of Electronics and Automation, City College, Dalian University of Technology, Dalian Liaoning 116024, China)Abstract : Digital answering devices have broad market prospects, and digital answering devices can be used in TV programs and competitions in various colleges and universities. This paper designs a digital answering device based, on Verilong HDL ・ The digital answering device implements other functions based on 6 participating groups and has a certain market value.Keywords : Verilog HDL; digital answerer; FPGA0引言近年来,随着科学技术的不断发展,抢答器的功能以及实现方法也越来越多,在竞赛中使用抢答器是一种很流行的 比赛方式,深受比赛各方的青睐冋。

抢答器verilog版

抢答器verilog版

抢答器-verilog一.实验要求设计一个可容纳四组参赛的数字式抢答器,每组设一个按钮供抢答使用。

抢答器具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用;设置一个主持人“复位”按钮,主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,用指示灯显示抢答组别,扬声器发出2—3s的音响。

设置犯规电路,对提前抢答和超时答题(例如3min)的组别鸣笛示警,并由组别显示电路显示出犯规组别。

设置一个计分电路,每组开始预置10分,由主持人记分,答对一次加1分,答错一次减1分。

二.实验方框图三.答题规则(本实验均采用脉冲按键模式)四.本次实验的verilog源程序module answer(clk,k1,k2,k3,k4,o1,o2,o3,o4,out1,out2,start,reset1, save); //抢答信号鉴别,保持模块input clk,k1,k2,k3,k4,start,reset1;//k1~k2是选手按键output o1,o2,o3,o4,out1,out2;//o1~o2是抢答信号显示灯output[2:0] save; //用于保存选手的抢答信号reg o1,o2,o3,o4,out1,out2,ok;reg[7:0] counter;reg[2:0] save;integer i;always@(posedge clk)if(reset1)//当reset1为1时复位清零begin{o1,o2,o3,o4,out1,out2,ok}<=7'b0000000;counter<=0;i=0;endelsebegin////if(start)beginok<=1;save<=0;endif(!ok)//reset1和ok为0时,有人按键表示犯规begin //一旦有人按键,他的输出信号将屏蔽其他人的按键if(k1&&!o2&&!o3&&!o4)begino1<=1;save<=1;endif(k2&&!o1&&!o3&&!o4)begino2<=1;save<=2;endif(k3&&!o1&&!o2&&!o4)begino3<=1;save<=3;endif(k4&&!o1&&!o2&&!o3)begino4<=1;save<=4;endif(o1 || o2 || o3 || o4)//提前按键扬声器响out1<=1;endelse//reset1为0,ok为1时,有人按键为正常抢答begin//if(k1 || k2 || k3 || k4)begin //一旦有人按键,他的输出信号将屏蔽其他人的按键if(k1&&!o2&&!o3&&!o4)begino1<=1;save<=1;endif(k2&&!o1&&!o3&&!o4)begino2<=1;save<=2;endif(k3&&!o1&&!o2&&!o4)begino3<=1;save<=3;endif(k4&&!o1&&!o2&&!o3)begino4<=1;save<=4;endendif(o1 || o2 || o3 || o4)begini=i+1;if(i<2)out2<=1;//有人抢到题,响几下铃。

用VerilogHDL编写四路抢答器

用VerilogHDL编写四路抢答器
input wire [3:0]qiang_da; reg [2:0]bian_ma; wire suo; input wire qing_ling; input wire fankui; output reg [2:0]bian_ma_cun; output wire suo_1;
always@(*) begin case(qiang_da) 1:bian_ma=3'b001; 2:bian_ma=3'b010; 4:bian_ma=3'b011; 8:bian_ma=3'b100; default:bian_ma=3'b000; endcase end
assign suo=(~bian_ma_cun[0])&(~bian_ma_cun[1])&(~bian_ma_cun [2]);
assign suo_1=suo&fankui;
always@(*) begin if(qing_ling==1) bian_ma_cun<=3'b000; else if(suo_1==0) bian_ma_cun<=bian_ቤተ መጻሕፍቲ ባይዱa_cun; else bian_ma_cun<=bian_ma; end
output wire [6:0]a_to_g; output wire [3:0]A_TO_D; input wire clk;//50MHz时钟 wire [3:0]qian; wire [3:0]bai; wire [2:0]shi; wire [2:0]ge; wire cp;//1s时钟 input wire [3:0]qiang_da; input button; wire suo_1; wire [2:0]bian_ma_cun; wire fankui; output wire xuan; shumaguan shumaguan0(a_to_g,A_TO_D,clk,qian,bai,shi,ge); cp_1s cp_1s0(clk,cp); xuan_shou xuan_shou0(qiang_da,button,suo_1,bian_ma_cun,fankui); wei_xuan wei_xuan0(bian_ma_cun,xuan,shi,ge); fuwei_kongzhi fuwei_kongzhi0(button,xuan); jishu_kongzhi jishu_kongzhi0(bai,qian,cp,suo_1,xuan,fankui); endmodule

毕业论文基于fpga的四路抢答器设计说明书

毕业论文基于fpga的四路抢答器设计说明书

摘要本文介绍了以FPGA为根底的四路抢答器的设计,此次设计是一个有4组抢答输入,并具有抢答计时控制,按键消抖以及积分显示等功能的通用型抢答器。

主持人有4个按键控制,可以进行开始抢答,对各抢答小组成绩进行相应加减操作以及所有积分重置。

此次设计程序使用verilog语言编写,并且使用modelsim进行相关仿真,最后在FPGA开发板上烧录程序进行实际操作演示实现了相应功能,到达了此次设计的目的。

本设计采用FPGA 来做增强了时序控制的灵活性,同时由于FPGA的IO端口资源丰富,可以再本设计根底上稍加修改可以重复设计出具有多组输入的抢答器。

关键字:按键消抖;显示;仿真;四路抢答;AbstractIn this paper, the design of four channel responder based on FPGA is proposed. The design contains four channel input, and also it has timing function, button-stop-shaking function, score display function. And the result of the design is a universal responder. The host has four buttons to control, in order to start response, add or sub the scores for each group and clear all group scores. The design program uses verilog language to write software. And modelsim is used to simulate the function on computer. At last the actual design results are demonstrated on the FPGA development board, and the functions are well veified. The result achieves the purpose of the design. The design uses FPGA to enhance the flexibility of timing control. At the same time because of IO port resoures in FPGA are much rich, if you want to design more channels responder, you just only repeat design on the basic of the design which is slightly modified.Keywords: button-stop-shaking; display; simulate; four channel responder;目录1引言 (4)2FPGA原理及其相关工具软件的介绍 (4)FPGA开发过程与应用 (4)FPGA开展历程及现状 (5)FPGA工作原理 (5)FPGA开发流程 (5)Quartus II软件 (6)Simulink软件 (7)代码仿真 (7)门级仿真和时序仿真 (8)3实验步骤及仿真调试结果 (8)功能描述及设计架构 (8)抢答器程序流程图和各模块软件代码分析 (9)抢答器程序结构及主程序流程图 (9)主控制及按键输入模块 (11)计时模块 (13)BCD显示模块 (13)顶层模块连线及开发板硬件配置 (14)modelsim仿真 (18)4结论 (20)谢辞.............................................................................................................. 错误!未定义书签。

用Verilog HDL编写的四路抢答器演示幻灯片

用Verilog HDL编写的四路抢答器演示幻灯片
5
always@(*)//4位位选译码 case(wei) 3:begin A_TO_D=4'b1110; duan=qian; end 2:begin A_TO_D=4'b1101;
6
module cp_1s(clk,a); //提供1秒脉 冲
input wire clk; output reg a; reg [25:0]q; always@(posedge clk)
output reg zong_kong;
always@(posedge fu_wei)
begin
zong_kong<=~zong_kong;
11
module jishu_kongzhi(q1,q2,clk,suo,clr,fa nkui);//计数电路及其控制模块
output wire [3:0]q1;
四路抢答器设计
——Verilog HDL语言
1
抢答器为四路,20秒倒计时,抢 到后显示锁定,计时停止,若 提前抢答会在另外数码管显示 抢答号码。
在BASYS 2 开发板上可以实现
2
module qiang_da_qi(a_to_g,A_TO_D,clk,q iang_da,button,xuan
14
qing_ling;
8
assign suo=(~bian_ma_cun[0])&(~bian_ ma_cun[1])&(~bian_ma_cun[2]);
assign suo_1=suo&fankui;
always@(*) begin if(qing_ling==1)
9
module wei_xuan(bian_ma_cun,xuan,bai, ge);//控制选手是否提前抢答模 块

基于FPGA的抢答器设计_本科毕业设计 精品

基于FPGA的抢答器设计_本科毕业设计 精品

基于FPGA的抢答器设计摘要本文介绍了一种采用EDA技术,基于FPGA并在QuartusⅡ工具软件环境下使用Verilog硬件描述语言编写的数码管显示4路抢答器的电路设计。

本次设计的抢答器能够同时供应4位选手或者4个代表队进行抢答比赛,分别使用4个按钮a,b,c,d表示。

同时需要设置系统复位和抢答控制开关,这需由主持人控制。

主持人在允许抢答的情况下,计时器开始从30s开始倒计时,直到有人抢答成功后,由锁存器将时间锁存住,此时数码管上将显示剩余时间及抢答成功选手号码,同时对应选手的LED灯也被点亮。

在判断选手是否回答正确后,由主持人控制加减按钮进行给分。

在一轮比赛结束后,主持人按下复位按钮,则除了计分模块外,其他模块都复位为初始时刻,为下一轮的比赛做好准备。

系统芯片主要采用EP2C8Q208,由抢答判别模块,计时模块,分频器模块,计分模块,锁存器模块,数码管驱动模块组成。

经过编译及其仿真所设计的程序,该设计的抢答器基本能够实现此次设计的要求,从而完成了抢答器应具备的功能。

关键词:抢答器,数码显示,硬件描述语言,可编程逻辑门阵列FPGA-BASED RESPONDER DESIGNABSTRACTThis article introduces the design of 4 answering device circuit using an EDA technology Verilog HDL language in FPGA and QuartusⅡ environment.At the same time,the 4 answering device circuit is displayed by the digital.The Responder can also supply four players or four teams to answer in the game, respectively, using four buttons a, b, c, d. Setting reset and answer in a system control switch, which controls required by the moderator. When the moderator allows to answer, the timer starts counts down from the 30s until someone answers successfully, by the time the latch latches will to live, then the remaining time and the number of the player who responds successfully will be displayed on the digital tube, at the same time the LED of the corresponding player lights will be lighted. Determined whether the contestant answers correctly, the moderator will give points by controlling the addition and subtraction button. At the end of the game, the moderator presses the reset button, others modules are reseted to the initial time for the next round of the game except the scoring module.The system uses mainly the EP2C8Q208. At the same time the system is made from the answer in decision block, timing module, divider block, scoring module latch module, LED driver modules. After compilation and simulation of the design process, the design Responder can basically achieve the design requirements, thus completing the Responder function.KEY WORDS:Responder,Digital display, HDL ,FPGA目录前言 (1)第1章绪论 (3)§1.1 选题背景 (3)§1.1.1 EDA技术发展 (3)§1.1.2 课题研究的必要性 (4)§1.2 研究课题的内容 (4)第2章系统方案设计 (6)§2.1 FPGA简介 (6)§2.1.1 FPGA芯片结构 (8)§2.1.2 FPGA设计流程 (12)§2.1.3 FPGA软件设计 (13)§2.1.4 FPGA的应用 (14)§2. 2Verilog HDL概述 (15)§2.2.1 Verilog HDL简介 (15)§2.2.2 Verilog HDL主要功能 (16)§2.2.3 Verilog HDL与VHDL的区别 (16)§2.3 抢答器总体设计方案 (17)§2.3.1 抢答器构成 (18)§2.3.2 抢答器工作原理 (18)第3章抢答器模块设计与实现 (19)§3.1 抢答判别模块 (19)§3.2 数码管驱动模块 (20)§3.3 计时模块 (22)§3.4 分频器模块 (23)§3.5 计分模块 (23)§3.6 锁存模块 (24)§3.7 总体模块 (24)第4章抢答器程序设计、实现与仿真 (26)§4.1 抢答判别程序设计 (26)§4.2 数码管驱动模块程序设计 (28)§4.3 计时模块程序设计 (29)§4.4 分频模块程序设计 (31)§4.5 计分模块程序设计 (32)§4.6 锁存模块程序设计 (36)结论 (38)参考文献 (39)致谢 (41)附录 (42)前言随着人类社会的高速发展,电子行业也随之迅猛的发展,这也使得人们越来越想方设法的是自己更加方便、轻松的生活,例如:自从有了电视遥控器开启电视,更改电视频道,我们再也不用跑来跑去用手改换频道;自从有了全自动洗衣机,我们再也不用半自动洗衣机或者人工搓衣板去清洗衣服;自从有了交通灯,不仅省去了很多人力去指挥交通,而且使交通更加井然有序。

Verilog HDL 课程设计报告 四人抢答器电路设计 河海大学

Verilog HDL 课程设计报告 四人抢答器电路设计 河海大学

河海大学计算机与信息学院(常州)课程设计报告题目四人抢答器电路设计学号 1062510130 授课班号 274302 学生姓名王聪同组成员 1062510135 张恒指导教师奚吉完成时间2013.01.04四人抢答器电路设计摘要Verilog HDL课程设计的主要动机是1.培养综合运用知识和独立开展实践创新的能力;2.通过完成四人抢答器电路设计,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对分析、解决实际的数字电路问题进一步加深认识,为今后能够独立进行某些数字应用系统的开发设计工作打下一定的基础;3.通过搭建调试电路,进一步熟悉相关仪器设备的使用;4.通过Verilog程序的编写,进一步熟悉Verilog HDL的语法知识;5.规范化训练学生撰写技术研究报告,提高书面表达能力。

四人抢答器电路设计的主要问题在于各个模块的正确分配,从而使设计出的电路更加符合要求。

为了使各个模块能够正确分配,在程序开始设计之前,必须反复推敲本组的设计方案并设计好各个模块的方框图。

如果一切都设计好之后,那么最后的电路会具有抢答第一信号鉴别和锁存功能、主持人清屏功能、30秒倒计时功能、蜂鸣器报警功能。

实现四人抢答器的预期功能需要:1.将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务;2.遇到本组内解决不了的问题,及时和其他小组交流或询问老师;3.进行模块调试时,根据试验箱上现象的不同及时调整相关程序的内容。

本次课程设计的实现的重要结果1.完成了实验环境搭建;2.实现了一四人抢答器,有人抢答成功后,其他人再抢答无效;3.通过蜂鸣器响1秒来提示抢答成功,并在数码管上显示抢答者的序号;4.主持人通过按键清除抢答信息,并开始30秒的答题倒计时,当倒计时结束时,通过蜂鸣器响1秒来提示回答问题时间到,此时可以开始新一轮的抢答。

当然,本次课程设计还有诸多不足之处,我们已经力求改进以求设计的实用性及完美性。

verilog-HDL抢答器(两个程序)

verilog-HDL抢答器(两个程序)

v e r i l o g-H D L抢答器(两个程序)-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN一、设计任务智力竞赛抢答器Verilog HDL要求有6位参赛者进行抢答,有六个抢答信号进行抢答。

当有抢答选手按下抢答键后系统能够快速准确的判断是那一组选手按下了抢答信号,由于系统比较小,速度比较快一般不会有同时按下的可能,所以只有六种状态,然后系统能够根据这六种状态进行适时的显示和提示。

当有选手按下以后就对抢答信号进行锁存,其他选手的输入无效。

然后就是对抢答进行时间限制了,根据设定的时间进行倒计时,当倒计时完成还没有人抢答的时候系统发出警报声音提示时间已经到了。

当有选手在主持人未按下抢答键抢答时视为超前抢答,系统显示该选手号,同时蜂鸣器响,该抢答无效。

还有清除复位键,抢答完成以后按复位键即可清除已有的状态。

通过Verilog HDL程序代码实现系统的各个功能。

二、设计目的与要求目的:理论联系实际,巩固和运用所学课程,提高分析、解决计算机技术实际问题的独立工作能力,培养学生正确的设计思想,严肃认真、实事求是的科学态度和勇于探索的创新精神。

通过对一个智力抢答器的设计,进一步加深对计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤,通过Verilog 程序的编写,进一步熟悉Verilog HDL 的语法知识;规范化训练学生撰写技术研究报告,提高书面表达能力。

要求:掌握FPGA设计系统的一般方法。

熟练掌握使用modelsim软件设计较复杂的数字逻辑电路。

培养学生独立分析问题和解决实际问题的能力。

三、课程设计的内容设计一抢答器,要求如下:(1)抢答台数为6;(2)具有抢答开始后20s倒计时,20秒倒计时后6人抢答显示超时,并报警;(3)能显示超前抢答台号并显示犯规报警;(4)系统复位后进入抢答状态,当有一路抢答按键按下,该路抢答信号将其余各路抢答信号封锁,同时铃声响起,直至该路按键松开,显示牌显示该路抢答台号。

verilog-HDL抢答器(两个程序)

verilog-HDL抢答器(两个程序)

v e r i l o g-H D L抢答器(两个程序)-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN一、设计任务智力竞赛抢答器Verilog HDL要求有6位参赛者进行抢答,有六个抢答信号进行抢答。

当有抢答选手按下抢答键后系统能够快速准确的判断是那一组选手按下了抢答信号,由于系统比较小,速度比较快一般不会有同时按下的可能,所以只有六种状态,然后系统能够根据这六种状态进行适时的显示和提示。

当有选手按下以后就对抢答信号进行锁存,其他选手的输入无效。

然后就是对抢答进行时间限制了,根据设定的时间进行倒计时,当倒计时完成还没有人抢答的时候系统发出警报声音提示时间已经到了。

当有选手在主持人未按下抢答键抢答时视为超前抢答,系统显示该选手号,同时蜂鸣器响,该抢答无效。

还有清除复位键,抢答完成以后按复位键即可清除已有的状态。

通过Verilog HDL程序代码实现系统的各个功能。

二、设计目的与要求目的:理论联系实际,巩固和运用所学课程,提高分析、解决计算机技术实际问题的独立工作能力,培养学生正确的设计思想,严肃认真、实事求是的科学态度和勇于探索的创新精神。

通过对一个智力抢答器的设计,进一步加深对计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤,通过Verilog 程序的编写,进一步熟悉Verilog HDL 的语法知识;规范化训练学生撰写技术研究报告,提高书面表达能力。

要求:掌握FPGA设计系统的一般方法。

熟练掌握使用modelsim软件设计较复杂的数字逻辑电路。

培养学生独立分析问题和解决实际问题的能力。

三、课程设计的内容设计一抢答器,要求如下:(1)抢答台数为6;(2)具有抢答开始后20s倒计时,20秒倒计时后6人抢答显示超时,并报警;(3)能显示超前抢答台号并显示犯规报警;(4)系统复位后进入抢答状态,当有一路抢答按键按下,该路抢答信号将其余各路抢答信号封锁,同时铃声响起,直至该路按键松开,显示牌显示该路抢答台号。

基于FPGA的电子抢答器的程序设计设计

基于FPGA的电子抢答器的程序设计设计

基于FPGA的电子抢答器的程序设计摘要随着科学技术日新月异,文化生活日渐丰富,在各类竞赛、抢答场合电子抢答器已经作为一种工具得到了较为广泛的应用。

顾名思义,电子抢答器是一种通过抢答者的指示灯显示、数码显示和警示显示等手段准确、公正、直观地判断出最先获得发言权选手的设备。

此次设计有4组抢答输入,每组设置一个抢答按钮供抢答者使用。

电路具有第一抢答信号的鉴别和锁存功能。

当第一抢答者按下抢答开关时,该组指示灯亮以示抢答成功。

同时,电路也具备自锁功能,保证能够实现在一路成功抢答有效后,其他三路均不能抢答。

本设计基于VHDL语言,采用FPGA为控制核心,并结合动手实践完成,具有电路简单、操作方便、灵敏可靠等优点。

该四路抢答器使用VHDL硬件描述语言进行编程,分为七个模块:判断模块,锁存模块,转换模块,扫描模块,片选模块,定时报警模块和译码模块。

编程完成后,使用QuartersII工具软件进行编译仿真验证。

关键词:VHDL,FPGA,四路抢答器,仿真目录1 概述 (1)1.1 设计背景 (1)1.2 抢答器现状 (1)1.3 本论文主要完成的工作 (1)1.4 设计心得 (2)2 开发工具简介 (3)2.1 VHDL语言简介 (3)2.2 FPGA开发过程与应用 (4)2.2.1 FPGA发展历程及现状 (4)2.2.2 FPGA工作原理 (4)2.2.3 FPGA开发流程 (5)2.3 Quartus II软件 (6)3系统设计 (8)3.1 系统设计要求 (8)3.2 系统设计方案 (8)3.2.1 系统硬件设计方案 (8)3.2.2 系统软件设计方案 (8)3.3.3 系统原理详述 (10)4 电路程序设计及仿真 (12)4.1 抢答锁存模块设计 (12)4.1.1 VHDL源程序 (12)4.1.2 抢答锁存电路的模块 (13)4.2 仿真 (14)总结 (15)致谢 (17)参考文献 (18)郑州轻工业学院课程设计任务书题目基于FPGA的电子抢答器的程序设计专业班级电子信息工程10-1班学号姓名主要内容、基本要求、主要参考资料等:主要内容:抢答器是在竞赛、文体娱乐活动(抢答活动)中,能准确、公正、直观地判断出抢答者的机器。

verilog抢答器设计报告

verilog抢答器设计报告

湖北师范学院电工电子实验教学省级示范中心电子版实验报告抢答器一.任务解析用Verilog硬件描述语言设计抢答器,实现:1、四人通过按键抢答,最先按下按键的人抢答成功,此后其他人抢答无效。

2、每次只有一人可获得抢答资格,一次抢答完后主持人通过复位按键复位,选手再从新抢答。

3、有从新开始游戏按键,游戏从新开始时每位选手有5分的初始分,答对加1分,答错扣1分,最高分不能超过9分,当选手得分减为0时取消该选手抢答资格。

4、选手抢答成功时其对应的分数闪烁。

二.方案论证(画框图并分析)抢答部分(对应snatch模块)在quartusII下的仿真原理图如下所示:第2页,共6页抢答部分的代码如下:计分模块的代码如下:顶层模块的代码如下:三.重难点解析抢答器的核心部分为巧妙地利用D触发器的反馈,在检测到第一个上升沿时将按键(未按下时接低电平)接入的与门锁住,以保证与门只有一个上升沿输出,从而实现“最先按下按键的人抢答成功,此后其他人抢答无效”。

在与门输出上升沿的同时检测按键,以确定是哪位选手抢答,用寄存器存下抢答选手的信息,最后确定哪个led灯亮以及那位选手对应的分数闪烁。

至于取消0分选手抢答资格,则是将各选手的分数反馈到选手抢答的按键,通过与门关闭相应选手按键上升沿的进入。

其他功能的实现相对简单,在此不再赘述。

将各模块代码写好并测试后,在主模块中调用并分配引脚,引脚分配好后,从新编译、下载就可实验了。

分别验证上述的各种功能,看是否达到预期的效果。

四.硬件资源分配(给出引脚分配说明)芯片选用EP1K30TC114-3,clr接全局清零键pin124,start(游戏从新开始键)接pin49,up(加分键)接pin47,down接pin48,四个抢答按键key3、key2、key1、key0、分别接pin59、pin60、pin62、pin63,7段数码管的7盏灯a、b、c、d、e、f、g分别pin118、pin119、pin120、pin121、pin122、pin128、pin130,数码管选择信号sel0、sel1、sel2分别接pin132、pin133、pin135,抢答指示灯led0、led1、led2、led3分别接pin136、pin137、pin138、pin140。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FPGA期末结业论文基于FPGA&VerilogHDL的四路抢答器院系:物理与电子学院专业:电子信息科学与技术任课教师:学号:姓名:2013年12月目录(0)摘要 (2)(1)引言 (3)1.1关于课程设计 (3)1.1.1课程设计目的 (3)1.1.2课程设计内容 (3)1.2开发工具简介 (4)1.2.1 EDA技术 (4)1.2.2 硬件描述语言-Verilog HDL (4)1.2.3 Verilog HDL设计流程 (5)1.2.4 FPGA基本特点 (5)1.2.5 FPGA工作原理 (5)(2)概述 (5)2.1 设计过程 (5)2.1.1系统设计要求 (5)2.1.2系统设计方案 (6)(3)系统设计 (6)3.1系统组图 (6)3.2系统主源程序 (8)(4)仿真综合 (10)(5)结论 (13)(6)参考文献 (13)(7)附录 (13)0摘要抢答器是在竞赛、文体娱乐活动(抢答活动)中,能准确、公正、直观地判断出抢答者的机器。

电子抢答器的中心构造一般都是由抢答器由单片机以及外围电路组成。

本设计是以四路抢答为基本概念。

从实际应用出发,利用电子设计自动化( EDA)技术,用可编程逻辑器件设计具有扩充功能的抢答器。

它以Verilog HDL硬件描述语言作为平台,结合动手实验而完成的。

它的特点是电路简单、制作方便、操作简单、方便、性能可靠,实用于多种智力竞赛活动。

本抢答器的电路主要有四部分组成:鉴别锁存电路、FPGA主芯片EP1C3T144C8电路、计分电路以及扫描显示模块的电路,并利用Quartus II工具软件完成了Verilog HDL源程序编写和硬件下载。

这个抢答器设计基本上满足了实际比赛应用中的各种需要。

在实际中有很大的用途。

关键词:抢答器 Quartus II Verilog HDL EP1C3T144C81引言硬件描述语言 Hardware Description Language 是硬件设计人员和电子设计自动化 EDA 工具之间的界面。

其主要目的是用来编写设计文件,建立电子系统行为级的仿真模型。

即利用计算机的巨大能力对用 Verilog HDL 或 VHDL 建模的复杂数字逻辑进行仿真,然后再自动综合以生成符合要求且在电路结构上可以实现的数字逻辑网表Netlist,根据型仿真验证无误后用于制造ASIC芯片或写入 EPLD 和 FPGA 器件中。

Verilog HDL是一种硬件描述语言(HDL:Hardware Discription Language),是一种以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。

Verilog HDL就是在用途最广泛的C语言的基础上发展起来的一种件描述语言,它是由GDA(Gateway Design Automation)公司的PhilMoorby在1983年末首创的,最初只设计了一个仿真与验证工具,之后又陆续开发了相关的故障模拟与时序分析工具。

1985年Moorby推出它的第三个商用仿真器Verilog-XL,获得了巨大的成功,从而使得Verilog HDL迅速得到推广应用。

1989年CADENCE公司收购了GDA公司,使得Verilog HDL成为了该公司的独家专利。

1990年CADENCE公司公开发表了Verilog HDL,并成立LVI组织以促进Verilog HDL成为IEEE标准,即IEEE Standard 1364-1995.Verilog HDL的最大特点就是易学易用,如果有C语言的编程经验,可以在一个较短的时间内很快的学习和掌握,因而可以把Verilog HDL内容安排在与ASIC设计等相关课程内部进行讲授,由于HDL语言本身是专门面向硬件与系统设计的,这样的安排可以使学习者同时获得设计实际电路的经验。

1.1关于课程设计1.1.1 课程设计目的理论联系实际,巩固和运用所学课程,提高分析、解决计算机技术实际问题的独立工作能力,通过对一个智力抢答器的设计,进一步加深对计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤。

巩固所学课堂知识,理论联系实际,提高分析、解决计算机技术实际问题的独立工作能力。

为了进一步了解计算机组成原理与系统结构,深入学习EDA技术,用Verilog HDL语言去控制将会使我们对本专业知识可以更好地掌握。

1.1.2 课程设计的内容4 设置计分电路,每组开始时设置为6分,抢答后由主持人计分,答对一次加1分,错一次减1分。

1.2开发工具简介1.2.1 EDA技术EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。

EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。

利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。

现在对EDA的概念或范畴用得很宽。

包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。

目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。

例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。

1.2.2 硬件描述语言—Verilog HDLVerilog HDL 是硬件描述语言的一种,用于数字电子系统设计。

该语言是 1983 年由 GDA ( GateWay Design Automation )公司的 Phil Moorby 首创的。

Phil Moorby 后来成为 Verilog - XL 的主要设计者和 Cadence 公司( Cadence Design System )的第一个合伙人。

在 1984-1985 年间, Phil Moorby 设计出第一个名为 Verilog-XL 的仿真器; 1986 年,他对 Verilog HDL 的发展又一次作出了巨大贡献——提出了用于快速门级仿真的 XL 算法。

随着 Verilog-XL 算法的成功, Verilog HD 语言得到迅速发展。

1989 年,Cadence 公司收购 GDA 公司, Verilog HDL 语言成为了 Cadence 公司的私有财产。

1990 年, Cadence 公司决定公开 Verilog HDL 语言,并成立了 OVI ( Open Verilog International )组织,并负责促进 Verilog HDL 语言的发展。

基于 Verilog HDL 的优越性, IEEE 于 1995 年制定了 Verilog HDL 的 IEEE 标准,即 VerilogHDL1364-1995 ; 2001 年发布了 Verilog HDL1364-2001 标准。

1.2.3 Verilog HDL 的设计流程:1 .文本编辑:用任何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。

通常Verilog HDL 文件保存为 .v 文件。

2 .功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只有在布线完成之后,才进行时序仿真)。

3 .逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。

逻辑综合软件会生成 .edf ( EDIF )的 EDA 工业标准文件。

(最好不用 MAX+PLUS II 进行综合,因为只支持 VHDL/Verilog HDL 的子集)4 .布局布线:将 .edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑安放到 CPLD/FPGA 内。

5 .时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序(也叫后仿真)。

1.2.4 FPGA基本特点FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。

FPGA的基本特点主要有:1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。

2)FPGA 可做其它全定制或半定制ASIC电路的中试样片。

3)FPGA内部有丰富的触发器和I/O引脚。

4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。

5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。

目前FPGA的品种很多,有XILINX公司的Virtex系列、TI公司的TPC系列、ALTERA公司的Stratix系列等。

1.2.5FPGA的工作原理FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。

用户可以根据不同的配置模式,采用不同的编程方式。

加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。

掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。

FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。

当需要修改FPGA功能时,只需换一片EPROM即可。

这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。

因此,FPGA的使用非常灵活。

FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。

2概述2.1设计过程2.1.1系统设计要求题目:基于FPGA&VerilogHDL的四路抢答器本设计的具体要求是:(1) 设计制作一个可容纳四组参赛者的数字智力抢答器,每组设置一个抢答按钮。

(2) 电路具有第一抢答信号的鉴别和锁存功能。

相关文档
最新文档