verilog 编写3人表决器
三人表决电路
湘潭大学实验报告课程名称实用数字电子技术基础实验名称三人表决电路页数 3专业网络工程班级2班同组者姓名组别学号 2015551610 姓名黄伟雄实验日期2016/5/15一、实验目的1.验证三人表决电路的功能。
2.熟悉Quartus Ⅱ的Verilog HDL文本设计流程,掌握组合电路的设计仿真和硬件测试方法。
二、实验要求根据实验内容写出实验报告,包括程序设计、软件编译、仿真分析、硬件测试和详细实验过程;给出程序分析报告、仿真波形图及其分析报告。
三、实验原理三人表决电路中,当表决某个提案时,多数人同意,则通过提案;同时有一个人具有一票否决权。
若全票否决,也给出显示。
设输入为A、B、C,且A具有否决权,同意用1表示,不同意用0表示。
输出X为1时表示提案通过;Y为1时表示全票否决,则三人表决电路真值表如下:四、实验内容1.三人表决电路的输入与仿真利用Quartus Ⅱ完成三人表决电路的文本编辑输入和仿真测试等步骤,给出仿真波形。
2.在实验系统上进行硬件测试,验证此设计的功能。
对于引脚锁定以及硬件下载测试,ABC[2..0]分别接至键3、键2、键1;CLK接至时钟CLOCK0(256Hz),输出信号X接D1,输出信号Y接蜂鸣器。
最后进行编译、下载和硬件测试实验(通过按下键3、键2、键1,控制D1的亮灭)。
五、实验环境与设备在实验室用电脑和实验箱进行实验。
六、实验代码设计(含符号说明)module JG3 (ABC,X,Y);//Input Port(s)input [2:0] ABC;//Output Prot(s)output X,Y;reg X,Y;//Additional Module Item(s)always@(ABC)case(ABC)3'B000: begin X<=1'B0 ;Y<=1'B1 ; end3'B001: begin X<=1'B0 ;Y<=1'B0 ; end3'B010: begin X<=1'B0 ;Y<=1'B0 ; end3'B011: begin X<=1'B0 ;Y<=1'B0 ; end3'B100: begin X<=1'B0 ;Y<=1'B0 ; end3'B101: begin X<=1'B1 ;Y<=1'B0 ; end3'B110: begin X<=1'B1 ;Y<=1'B0 ; end3'B111: begin X<=1'B1 ;Y<=1'B0 ; enddefault: begin X<=1'B1 ;Y<=1'B0 ; endendcaseendmodule七、实验检验与测试当灯全灭(全票否决)时蜂鸣器响(Y为1);只要A不亮,X就不亮;当A亮了时,如果BC没亮则X仍然不亮,若BC中至少亮一个,则X亮,即通过。
三人表决器仿真实验分析
三人表决器摘要本次设计的三人表决器,是投票系统中的客户端,是一种代表投票或举手表决的表决装置。
表决时,与会的有关人员只要按动各自表决器上“赞成”“反对”“弃权”的某一按钮,荧光屏上即显示出表决结果。
在三人表决器中三个人分别用手指拨动开关S W1、S W2、S W3来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方),不同意就把自己的指拨开关拨到低电平(下方)。
表决结果用L E D(高电平亮)显示,如果决议通过那么实验板上L2亮;如果不通过那么实验板上L1亮;如果对某个决议有任意二到三人同意,那么此决议通过,L2亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,L1亮。
一.任务设计三人表决器电路,并在仿真软件上验证电路的正确性。
二.目标掌握三人表决器电路的结构。
学会仿真软件数字部分的操作。
三.要求1复习三人表决器电路的设计步骤。
2熟悉用集成电路的引脚位置及各引脚用途。
3使用TTL门电路时,一定要正确连接电源端和接地端4按集成电路引脚图正确接线,芯片电源引脚不要接错,以免损坏芯片,影响实验正常进行。
四.实训工具及设备电脑一台;Mult isi m软件五.仿真电路图六.设计的主要内容:按照设计题目,根据所学的组合逻辑所学的知识及数字电路和嵌入式的知识完成三人表决器的设计,使之能够满足表决时少数服从多数的表决规则,根据逻辑真值表和逻辑表达式完成表决功能。
七.三人表决器概述:1.三人表决器的功能描述三个人分别用手指拨动开关S W1、S W2、S W3来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方),不同意就把自己的指拨开关拨到低电平(下方)。
表决结果用LE D (高电平亮)显示,如果决议通过那么实验板上L2亮;如果不通过那么实验板上L1亮;如果对某个决议有任意二到三人同意,那么此决议通过,L2亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,L1亮2.三人表决器”的逻辑功能表决结果与多数人意见相同。
三人表决器五人表决器的实验报告
三人表决器、五人表决器的实验报告
一 实验目的
1、熟悉Quartus II 软件的基本操作
2、学习使用Verilog HDL 进行设计输入
3、逐步掌握软件输入、编译、仿真的过程 二 实验说明
三人表决器真值表:
输入信号
输出信号
B1 B2 B3 u 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1
1
1
1
逻辑表达式:U=
b1
b2 voter u
b3
本次实验就是要设计一个三人表决器。
该电路应有两个数据输入端口b1,b2,b3,电路的输出端口为voter(u 输出信号)。
三实验要求
1、完成三人表决器的Verilog HDL程序代码输入并进行仿真
2、采用结构描述方式与数据流描述方式
3、完成对设计电路的仿真验证
四、实验过程
(1)三人表决器:
程序代码
仿真结果
五人表决器:
程序代码
仿真结果
五、实验体会
通过三人表决器与五人表决器的设计,使我们更加熟悉Quartus 软件进行数字系统设计的步骤,以及运用Verilog HDL进行设计输入,并掌握三人表决器与五人表决器的逻辑功能与设计原理,逐步理解功能仿真与时序仿真波形。
三人表决器与五人表决器大体相似,并没有太大的区别。
案例一:三人表决器实验
三人表决器制作实验一、项目目的正确理解数字电路的要求,能知道与门、或门、非门的含义;做到了解要用到的每个芯片的引脚是什么门电路,可以去图书馆查阅书籍也可上网去阅读相关的网页资料。
做到能真正了解电路的构造原理,这样才可以更好学好这门电路的元器件的应用。
请同学们为中国达人秀的评委设计一个表决器,功能要求:三个评委各控制A、B、C三个按钮中的一个,以少数服从多数的原则表决事件,按下表示同意,否则为不同意,若表决通过,则灯亮,反之不亮。
二、项目要求1)判断正确的引脚位置;2)理解数字电路的原理,掌握操作步骤,能正确安装所选定的电路;3)掌握测试仪表仪器检测原件的使用及调整;4)会根据测试结果分析故障产生的原因;5)会利用原理图纸,判断具体故障的原因;6)必须得出实验的仿真结果;7)根据自己所仿真的电路原理图画出实物装配图。
三、项目内容1、原理图2、工作原理介绍电路由74LS08的三个与门电路和74LS32两个或门电路构成,当A 、B 、C 中任意两人按下按钮后,工作电路向74LS08中任意一个与门电路输入端输入两个高电平,输出端Y 输入进74LS32任意一个或门电路中;电路只要满足一个条件即输出端有电压输出;所以发光二极管能点亮。
3、元件清单4、芯片 ①74LS08实物图 引脚图②74LS32实物图 引脚图元件序号 主要参数 数 量 R1 1K Ω 3 R2 360Ω 1 U1 74LS08 1 U2 74LS321 按钮开关 3 发光二极管15、逻辑电路图请通过逻辑电路图写出相对应的逻辑表达式:6、通过逻辑表达式列出真值表:输入输出A B C F00 0 000 1 00 1 0 00 1 1 110 0 010 1 11 1 0 11 1 1 17、调试1)应该检查电阻连接的位置,不能使芯片悬空;2)74LS08的输入端应该是电阻与开关相连的一端;3)电路通路,但二极管不亮,有可能是二极管烧坏,需更换。
用4种方式实现三人表决电路-三人表决电路的表达式
⑤选择芯片并连接。
TTL: 2输入与门:74LS00
4输入与非门:74LS20
6
用74LS00和74LS20实物接线如下:
7
方法二(用译码器138和与非门74LS20设计)
L A BC AB C ABC ABC A BC AB C ABC ABC Y3 Y5 Y6 Y7
Y A B D0 A BD1 AB D2 ABD3
将逻辑函数F整理后与Y比较,可得:
D0 0 D1 C D2 C
D3 1
11
用数据选择器74LS153实现接线图
12
比较:
电路形式 需芯片 个数 接线 可靠性 对芯片功能的 理解要求
SSI设计
MSI设计
复杂
比SSI简单
列出真值表如右表所示。 ②由真值表写出逻辑表达式:
L A BC AB C ABC ABC
0 1 1 1 1
L A BC AB C ABC ABC
③用卡诺图进行化简。
L C AB 00 01 11 10 0 1
④画出逻辑图 。
1 1 1
1
图 三人多数表决器逻辑图
L AB BC AC
Y m0 D0 m1 D1 m 2 D2 m 3 D3 m4 D4 m5 D5 m6 D6 m7 D7
显然,Y式中出现的最小项,对应的数据输入端应接1, Y式中没出现的最小项,对应的数据输入端应接0。即 D3=D5=D6=D7=1;D0=D1=D2=D4=0。
Y
Y Y
4
方法一(用SSI设计): (用74LS00,74LS20)
分析:
三人表决器_数电小实验之三人表决器
三⼈表决器_数电⼩实验之三⼈表决器数电⼩实验20级会员们的模电实验已经结束了,他们的培训计划已经从模电实验进⾏到了数电实验。
他们将学习到⼀个新的知识——逻辑电路。
接下来让我们⼀起深⼊了解本次任务吧!实验:三⼈表决器的设计和搭建要求:1.写出真值表、逻辑表达式、画出实验电路;2.只能⽤74HC00和74HC20;实验任务设计⼀个3变量的多数表决电路(当三个输⼊端中有2个及以上输⼊“1”时,输出端才为“1”),然后在实验板上实现⾃⼰设计的逻辑电路,并验证是否正确。
实验原理采⽤74HC00+74HC20设计⽽成,三⼈各控制A、B、C三个按键中的⼀个,以少数服从多数的原则表决事件,按下表⽰同意,否则为不同意。
若两⼈及两⼈以上同意,发光⼆极管点亮,否则不亮。
1.真值表如下:2.逻辑表达式:根据真值表,我们可以写出输出函数的与或表达式,即:3.实验电路:74HC00四与⾮门:芯⽚介绍:74HC00 是TTL2 输⼊端四与⾮门,⾼电平4V,低电平1V,与⾮门电路经常⽤来实现组合逻辑的运算。
74HC20四输⼊双与⾮门:74HC20是常⽤的双四输⼊与⾮门集成电路,常⽤在各种数字电路和单⽚机系统中。
认真学习的20级会员们:看着⼩20们努⼒的⾝影,像是看到了去年的我们,这些实验不仅提⾼了他们的动⼿实践能⼒,也为将来的单⽚机学习打下了良好的基础。
届届传承的精神:热⼼善良的学长们,时刻⿎舞着20级们的学习,不仅为他们拓展了数电实验的新知识,同时也激发了他们的学习兴趣,使他们在学习中更有⾃信。
成功不是将来才有的,⽽是从决定去做的那⼀刻起,持续累积⽽成,现在的点滴付出,在不久的将来,将会有意想不到的结果。
因为疫情使协会会员们来得晚放假得早,但协会会员们都克服了种种困难,在较短的时间内完成了各⾃的学习任务且表现良好。
希望未来20级会员们能够尽快成长,在协会撑起⼀⽚天。
扫码关注我们郑州铁院⽆线电做事先做⼈编辑:物联⽹19A1苏笑颜⽂字:物联⽹19A1苏笑颜校审:铁道车辆19A2孟珊如审核:王云飞、张凯。
实训2:三人表决器设计
实训2:三人表决器设计(基于FPGA)
实训任务:
利用美国Altera公司的FPGA芯片和开发软件QuartusII,设计三人表决器电路,并完成软件仿真和硬件验证。
实训目的:
1、强化数字电路设计方法;
2、掌握QuartusII的FPGA设计流程。
一、三人表决器电路设计
1、三人表决器功能
表决器(voter),是一种代表投票或举手表决的表决装置。
表决时,与会的有关人员只要按动各自表决器上“赞成”或“反对”的按钮,荧光屏上即显示出表决结果。
A、B、C3人表决,“1”表示“赞成”,“0”表示“反对”,若有2人或以上人数赞成,则输出端Y为“1”表示“通过”,否则Y为“0”表示“不通过”。
2、真值表
3、根据真值表画卡诺图
4、根据卡诺图写出逻辑表达式
L=AB+BC+AC
5、根据逻辑表达式画出逻辑图
二、使用QuartusII实现三人表决器
1、建立工作库文件夹voter3
2、用向导创建工程:File→New Preject Wizard
3、新建原理图源文件;File→New→Block Diagram/Schematic File
4、绘制三人表决器电路
5、编译工程
6、编辑引脚
7、器件编程,写出方法及遇到的问题
1).连接USB-Blaster到计算机与开发板
2).将开发板插上电源
3).查看电脑的驱动是否正常安装
4).选择工具栏中Tools中的programmer,下载方式为JTAG,将USB-Blaster 添加到下载器硬件
5).将文件添加到编程文件,下载编程
8、硬件功能验证。
(完整word版)三人表决器较好
课程设计任务书一、设计题目:三人表决器二、设计的主要内容:举重运动设三名裁判,每个裁判分别判断选手的试举情况,成功点亮白灯,失败点亮红灯有两盏或两盏以上的白灯则选手试举成功,否则失败。
电源部分采用三端稳压器即可,逻辑部分可以采用任何逻辑门电路,显示部分采用发光二极管即可,无需采用电流放大器。
需要使用的芯片资料上网查。
图手绘,无需使用电脑绘图软件。
2.学出电路的工作原理,使用说明。
3.要求在输出端使用红、白灯表示选手的最终试举结果,成功亮白灯,失败亮红灯。
指导教师:日期:教师评语:评阅成绩:评阅人:日期:摘要关键词:投票系统系统,表决结果,决议通过第1章三人表决器概述1.1三人表决器的功能描述三个人分别用手指拨动开关S W1、S W2、S W3来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方),不同意就把自己的指拨开关拨到低电平(下方)。
表决结果用LE D(高电平亮)显示,如果决议通过那么实验板上白灯亮;如果不通过那么实验板上红灯亮;如果对某个决议有任意二到三人同意,那么此决议通过,白灯亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,红灯亮1.2三人表决器”的逻辑功能表决结果与多数人意见相同。
设X0、X1、X2为三个人(输入逻辑变量),通过为1,不通过为0;Y0为表决结果(输出逻辑变量),多数通过Y0为1,否则,Y0为0.其真值表如表1所示。
表1“三人表决器”真值表输入逻辑变量输出逻辑变量其中X0,X1,X2为输入表决信号即为s w1,s w2,s w3指示灯,Y0为输出结果即L E D灯由真值表写出逻辑表达式并化简得:Y0=X0*X1+X0*X2+X1*X2第2章三人表决器设计思想2.1组合逻辑电路的分析2.1.1 组合逻辑电路的分析输输入出A B C F00000010010001111000101111011111从真值表发现:输入变量A,B,C中有两个或两个以上为一,则输出为1,从而总结电路功能:三人表决电路。
制作三人表决器
实训:三人表决器的制作与调试(4课时)
一、实训目的:
1.了解集成组合逻辑电路引脚功能,掌握应用方法
2.了解组合逻辑电路逻辑功能的测试方法
二、实训器材
1.直流稳压电源
2.万用表
3.集成电路74LS00两块及相关套件
三、实训内容及步骤
1.三人表决器的连接
(1)与非门集成电路74LS00的引脚功能如下图所示:
根据实验原理图在实验板上焊接三人表决器电路。
(2)检查电路无误后,接入稳压电源的5V直流工作电压。
(3)检查电路的逻辑功能,使两个以上键钮按下时,发光二极管亮
2.一致判别电路的安装与调试
(1)按如下所示电路安装一致判别电路,接上5V电源。
(2)按下表要求设置输入端电平,测出相应的输出逻辑电平,并将结果记录于
出Y为高电平;输入端电平不一致时,输出Y为低电平。
三人表决器实验
三人表决器实验我们实验采取3种输入方式:原理图方式,VHDL方式,VerilogHDL.你可以只看一种.下面我分别一一介绍三人表决器的功能描述三个人分别用手指拨动开关SW1、SW2、SW3来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方),不同意就把自己的指拨开关拨到低电平(下方)。
表决结果用LED(高电平亮)显示,如果决议通过那么实验板上L2(黄灯)亮;如果不通过那么实验板上L1(红灯)亮;如果对某个决议有任意二到三人同意,那么此决议通过,L2亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,L1亮。
1.1 采用原理图设计三人表决器我们根据三人表决器的直值表,可以通过卡诺图化简可以得到:L2=SW1SW2+SW1SW3+SW2SW3L1=_L2那么我们可以在MAX+plusII中用原理图实现上面的三人表决器下面仅把和VHDL不同的详细写下,相同或基本相同的就一带而过:(1)打开MAX+plusII(2)新建一个图形文件:File菜单>new新建文件时选择Graphic Editor file点OK(3)输入设计文件我们现在在图形文件中输入电路,我们这个电路需要AND2、OR3、NOT三个逻辑门电路和输入输出端,你可以Symbol ->Enter Symbol(或者双击空白处)弹出窗口:在Symbol Name中输入and2,点OK同样可以加入or3、input、output、not对input、output,鼠标左键双击PIN_NAME,那么PIN_NAME被选中,并且变黑,然后输入你要改的名字,如SW1把元件拖动到合适位置,将光标放到元件的引线出,可以发现光标变为十字星,此时摁住左键就可以进行连线。
最后的电路图如下图(4)保存文件:保存为majority_voter.gdf,Automatic Extension选.gdf把文件设为当前工程:FILE->PROJECT->SET PROJECT TO CURRENT FILEMAX+PLUS II的标题条将显示新的项目名字至此,程序输入就已经完成了(5)检查编译指定下载的芯片型号指定芯片的管脚(参见10分钟学会PLD设计2 -设计的编译)此时的图形为:下图为SW1放大的图,其中majority_voter@41中前部分为设计的文件名,后面41为EPM7128SLC84-15的41脚,也就是说电路图中SW1被指定到EPM7128SLC84-15的41脚(而实验板上41脚被连接到指拨开关SW1上了,这样电路图上SW1就和实验板上的硬件SW1实现了连接)。
用4种方式实现三人表决电路
•
(MSI 设计)
4
方法一(用SSI设计): (用74LS00,74LS20 )
分析: ①设A、B、 C :三人的意见。 同意为逻辑“1”;不同意为逻辑“0” L:表决结果。 事件通过为逻辑“1”;没通过为逻辑“0” 列出真值表如右表所示。
②由真值表写出逻辑表达式:
L ABC ABC ABC ABC
0
A BC
1
9
用数据选择器74LS151实现接线图
10
方法四:(用4选1数据选择器74LS153实现
F ABC ABC ABC ABC
• 该逻辑函数含有三个逻辑变量,可选其中的两个(A,B ) 作为数据选择器 的地址输入变量,一个(C) 作为数据输入变量。
Y ABD0 ABD1 ABD2 ABD3
输入 AB
00 00 01 01 10 10 11 11
输出 CL
00 10 00 11 00 11 01 1 51
L ABC ABC ABC ABC
③用卡诺图进行化简。
④画出逻辑图 。
L ABC 0 1 00
01
1
11 1 1
10
1
L AB BC AC
AB BC AC
⑤选择芯片并连接。
8
方法三: ) (用8选1数据选择器74LS151实现设计
L AB BC AC
L ABC ABC ABC ABC m3 m5 m6 m7
2.将输入变量接至数据选择器的地址输入端,即A=A2,B=A1,
C=A0。输出变量接至数据选择器的输出端,即L=Y。将逻辑函数L的 最小项表达式与74151的功能表相比较,
13
Y m0 D0 m1D1 m2 D2 m3 D3 m4 D4 m5 D5 m6 D6 m7 D7
三人表决器的逻辑电路设计
课堂教学设计
教学过程
《三人表决器的逻辑电路设计》
一、设计要求:
为中国达人秀设计表决器,三个裁判参与表决,两人或两人以上同意,则表示选手晋级。
二、列出真值表:
设裁判同意晋级为“1”,不同意为“0”;选手晋级为“1”,淘汰为“0”。
三、根据真值表,写出逻辑函数表达式:
与或式:
与非-与非式:
四、根据函数表达式,画出逻辑电路图:
与或式:与非-与非式:
五、根据芯片,画接线图:
+5V
A
B
C
六、拓展练习:在课堂学习的基础上,在题目中加上“必须包括A在内”这个条件,即:三人中需两人或两人以上同意,并且A必须同意,才算通过。
项目二 3人表决器的原理图输入设计
二、项目资讯
可编程逻辑器件的设计应用流程
包括设计准备、设计输 入、设计处理和器件编 程四个步骤
相应的功能仿真(前仿 真)、时序仿真(后仿 真)和器件测试三个设 计验证过程。
三、项目分析
1.电路功能分析
3人表决器属于组合逻辑电路,其功能如下所示。
Y ABC ABC ABC ABC
A A BC ABC ABC
教师评价+自评
能正确使用Quartus II软件综 合、编译、仿真并下载程序到 学习板,能正确调试电路,达 到项目要求。
4.项目总结报 告(10%)
5.职业素养( 25%)
教师评价
格式符合标准、内容完整、有 详细过程记录和分析,并能提 出一些新的建议。
教师评价+自评+ 互评
安全、文明工作,具有良好的 职业操守,学习积极性高,遵 守纪律,虚心好学,具有良好 的团队合作精神,热心帮助同 学,能用专业语言准确、流利 地进行交流
楚、准确。
五、项目评价与总结提高
2.项目总结
表决器属于组合逻辑,在进行原理图设计时,可以采用真值 表->列公式(卡诺图)->最简表达式的步骤来进行设计。
Quartus II原理图设计的主要步骤包括:新建工程、建立编 辑原理图设计文件、编译、仿真及器件编程等。
3.拓展与提高
采用原理图输入方式,利用基本门电路实现2位比较器。 采用原理图输入方式,利用基本门电路实现8-3编码器。 采用原理图输入方式,利用基本门电路实现举重裁判器。
四、项目实施——2. 项目编译
(1) 分析综合
选择Processing→Start→Start Analysisi & Synthesis命令
三人表决器制作与调试
结果输出
表决器应具备将投票结果 输出到显示屏或外部设备 的功能。
表决器电路设计
电源电路
为表决器提供稳定的电源,确保表决器的正常工 作。
控制电路
负责处理输入的投票信息,控制存储单元和输出 设备的工作。
显示电路
将投票结果显示在显示屏上,便于查看。
表决器硬件选择
01
02
03
04
微控制器
作为表决器的核心控制单元, 负责处理输入和输出信号。
检查按钮
定期检查按钮是否松动或损坏,保证正常工 作。
更新软件
定期更新表决器软件,以获得更好的性能和 稳定性。
存储环境
保持表决器存储环境的干燥和通风,避免潮 湿和高温环境。
05 表决器的扩展应用
在会议中的应用
会议决策
在会议中,三人表决器可用于快 速决策,例如选择会议议程、确 定会议时间等。
意见收集
作而不会出现故障。
常见问题处理
01
按钮失灵
检查按钮是否松动或损坏,如有需 要,可更换按钮。
系统卡顿
重启表决器可以解决系统卡顿问题。
03
02
显示异常
检查显示屏是否正常工作,如有问 题,需更换显示屏。
通讯故障
检查通讯线是否连接正常,如有问 题,需重新连接通讯线。
04
保养与维护
定期清洁
定期清洁表决器外壳表面,保持清洁卫生。
通过三人表决器,可以快速收集 与会者的意见,了解与会者对某 个议题的倾向性。
在投票系统中的应用
选举投票
在选举中,三人表决器可用于选民投 票,快速统计选票结果。
民意调查
通过使用三人表决器,可以快速进行 民意调查,了解公众对某项政策的支 持程度。
Verilog入门训练4—三人表决器
实训3:三人表决器的设计与实现问题提出:表决器既是多数通过事件,三个人参与表决,大于或等于二人即为通过。
请设计一个数字组合逻辑电路,实现上述三人表决功能。
1.逻辑抽象假设参与表决的三人分别为A、B、C,表决结果为F。
当三人中有两人或以上同意,即A、B、C三个输入中有两个或以上为1时,F=1。
在FPGA开发板上,同样可以定义三个拨动开关分别代表A、B和C,一个LED灯代表F,表决通过时,灯亮,否则灯灭。
2.列出真值表得到:F=AB+BC+ AC3.使用Quartus 8.0建立项目,建立过程和注意事项见前两周的实验指导,选择器件时随便指定一个。
这里的项目名称为voter3。
(切记项目保存路径和实验过程中新建的文件保存路径都不要出现中文)4.项目建好后,新建Verilog文件并输入代码选择“File”——“New”——“Verilog HDL file”。
第1种方法:直接根据逻辑表达式写出代码,即数据流描述方式。
如下所示。
保存文件,文件名同为voter3。
5.编译项目。
“Processing”——“Start Compilation”6.功能仿真编译通过后,新建波形仿真文件:“File”——“New”,选择“Vector Waveform File”,如下图所示:在出现的编辑界面左侧右键,选择如下:在“Insert Node or Bus”里选择“Node Finder…”在弹出来的“Node Finder”中,首先在“Filter”中选择“Pins:Unassigned”,然后点击“list”,在“Nodes Found”中会列出所有的引脚,第三步选择全部引脚(鼠标拉),点击“>>”,最后点击“OK”即可。
在回到的“Insert Node or Bus”界面点击“OK”。
这时候会看到所有的引脚会列出来,如下所示,三个输入默认为低电平,输出F状态未知。
由实验原理可知,为了得到A、B、C三个信号不同的组合,设置A为10ns周期信号,B为20ns周期信号,C为40ns周期信号。
三人表决器vhdl程序设计
目录1设计内容与要求 (1)1.1设计内容 (1)1.2设计要求 (1)2简介VHDL和Verilog语言 (1)3设计过程 (3)3.1设计原理 (3)3.2程序设计框图 (4)3.3三人表决器VHDL程序 (5)4程序仿真 (7)4.1 Quartus软件简介 (7)4.2仿真过程 (8)4.3仿真结果分析和总结 (9)5心得体会 (11)参考文献 (12)三人表决器设计1设计内容与要求1.1设计内容设计一个三人表决器,使其表决结果与多数人意见相同。
参加表决投票的共有三人,当同意的人数大于等于2人时,表决结果为通过,否则,表决结果为否决。
以三个输入信号代表参加表决的三人,以两个输出信号表示表决结果。
1.2设计要求对三人表决器进行理论分析,针对设计部分进行原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(仿真结果),并对实验结果进行分析和总结。
具体要求如下:⑴复习EDA的相关技术与方法;⑵掌握VHDL或者Verilog语言,并要求能编写程序,程序设计框图、程序代码(含注释);⑶Quartus软件的使用:掌握程序编辑、编译、调试、仿真方法;⑷给出程序运行结果和图表、以及实验结果分析和总结;⑸课程设计的心得体会(至少500字);⑹参考文献;2简介VHDL和Verilog语言VHDL语言是一种用于电路设计的高级语言。
它在80年代的后期出现。
最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。
VHDL的英文全写是:VHSIC(Very High Speed Integrated Circuit)Hardware Descriptiong Language.翻译成中文就是超高速集成电路硬件描述语言。
因此它的应用主要是应用在数字电路的设计中。
目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。