用与非与非实现三人表决器?

如题所述

三人表决器实验

我们实验采取3种输入方式:原理图方式,VHDL方式,VerilogHDL.你可以只看一种.下面我分别一一介绍

三人表决器的功能描述

三个人分别用手指拨动开关SW1、SW2、SW3来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方),不同意就把自己的指拨开关拨到低电平(下方)。表决结果用LED(高电平亮)显示,如果决议通过那么实验板上L2(黄灯)亮;如果不通过那么实验板上L1(红灯)亮;如果对某个决议有任意二到三人同意,那么此决议通过,L2亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,L1亮。

1.1 采用原理图设计三人表决器

我们根据三人表决器的直值表,可以通过卡诺图化简可以得到:

L2=SW1SW2+SW1SW3+SW2SW3

L1=_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 FILE

MAX+PLUS II的标题条将显示新的项目名字

至此,程序输入就已经完成了

(5)检查编译

指定下载的芯片型号
指定芯片的管脚

(参见10分钟学会PLD设计2 -设计的编译)

此时的图形为:

下图为SW1放大的图,其中majority_voter@41中前部分为设计的文件名,后面41为EPM7128SLC84-15的41脚,也就是说电路图中SW1被指定到EPM7128SLC84-15的41脚(而实验板上41脚被连接到指拨开关SW1上了,这样电路图上SW1就和实验板上的硬件SW1实现了连接)。

1.2 采用VHDL设计三人表决器

打开MAX+plusII,在开始菜单内选择MAX+PLUS II 项,开始运行MAX+PLUS II(如下图)

你最好把图标放到桌面上,以后直接双击MAX+PLUS II图标就可以运行软件了
在MAX+PLUSII上点右键,选择发送到->桌面快捷方式(如下图),那么你桌面上就看到MAX+PLUS II了。

3.2 新建VHDL文档

(图形和verilog-HDL设计的过程见后面的部分)
FILE->NEW

或者点下图的新建图标:

连后选择Text Editor File文件,点OK如下图

3.3输入设计文件

在文本窗口中输入以下VHDL源程序

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
--*********************************************
ENTITY majority_voter IS
PORT(SW : IN std_logic_vector(3 DOWNTO 1);
L : OUT std_logic_vector(2 DOWNTO 1));
--L2 is a yellow LED AND L1 is a RED LED
END majority_voter;
--*********************************************
ARCHITECTURE concurrent OF majority_voter IS

BEGIN
WITH SW SELECT
L <= "10" WHEN "011",
"10" WHEN "101",
"10" WHEN "110",
"10" WHEN "111",
"01" WHEN OTHERS;
END concurrent;
--*********************************************

如下图

3.4保存文件

FILE->SAVE,或点工具栏上的存盘符号

存盘符号

把文件保存为majority_voter.vhd(路径中不要有中文字符,Automatic Extension选.vhd)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-10-15
用与非与非实现三人表决器?首先逻辑函数变换公式,将三人表决器的逻辑表达式变换一下。具体过程如下:
第一步:设(AB)'=F,(AC)'=G,(BC)'=H;Y=(FGH)'
第二步:利用反演定理进行函数变换
Y=(FGH)'=F'+G'+H'==(FG)'+H'=[(FG)'·H']'
第三步:根据逻辑表达式画出逻辑图:
扩展资料
逻辑代数基本规则:
代入规则
任何一个含有变量 X 的等式,如果将所有出现 X 的位置,都代之以一个逻辑函数 F,此等式仍然成立。
对偶规则
设 F 是一个逻辑函数式,如果将 F 中的所有的 * 变成 +,+ 变成 *,0 变成 1,1 变成 0,而变量保持不变。那么就的得到了一个逻辑函数式 F',这个 F' 就称为 F 的对偶式。如果两个逻辑函数F 和 G 相等,则它们各自的对偶式F' 和 G' 也相等。
反演规则
当已知一个逻辑函数F,要求 ¬F 时,只要把 F 中的所有 * 变成 +,+ 变成 *,0 变成 1,1 变成 0,原变量变成反变量,反变量变成原变量,即得 ¬F。
运用反演规则时必须注意一下两个原则:(1)保持原来的运算优先级,即先进行与运算,后进行或运算。并注意优先考虑括号内的运算。(2)对于反变量以外的非号应保留不变。
参考资料来源:《电子技术基础 数字部分 》 虞光楣 编著 北京工业大学出版社 第八章 数字电路基础 8.3 逻辑代数基础 8.4 逻辑函数的公式化简法
参考资料来源:百度百科--逻辑代数
相似回答