计算机组成原理--逻辑设计

计算机,是由一大批逻辑器件,组合而成的。

根据具体的要求,设计出来逻辑电路,这就是逻辑设计。

下面以 “三人表决电路” 为题,把电路设计的路子,走一遍。

这个三人表决电路的背景,可以简单理解为举重赛场。

当运动员举起杠铃后,要由现场的三个裁判进行评定。

如果有两个及以上的裁判认为可以通过,就可以认为成功举起。

另外,在火灾预警及处理方面,这个电路也是有用的。

假设火警的传感器有三种,如:烟雾、温度、光线。

如果有两种及以上的传感器都检测到火警,就应该立即喷水灭火。

另外,在每个计算机的加法器中,也用到了这个逻辑电路。

---------------------------

逻辑问题明确之后,首先要确定变量的名称及其取值方法。

再用这些列出真值表。在表中,把各种可能的状态,都遍历一遍。

然后,根据真值表,列出逻辑表达式。

再利用前面说过的公式及摩根定律对表达式做等效变换,得到不同的表达式。

最后,根据各种表达式,绘出相应的逻辑电路图。

然后,就可以通过实验,进行验证了。

---------------------------

三人表决中的三个裁判,分别用变量 A、B、C 来代表。

它们为 0,就代表不同意、为 1,就代表赞成。

表决的结果,用变量 F 来表示。当其为 1 时,就表示通过。

三人表决的真值表及逻辑表示式如下图所示。

因为有三个自变量,所以该真值表,就共有 2^3 = 8 行。

每一行中,如果有两个(及以上的) 1,F 就填写 1,否则就填 0。

表中的各行,是独立出现的,或者是这行、或者是那行、或者是别的行 ... 。

所以,F 的值,就应该是八个行的值,【或】在一起。

但是,或 0 是无用的,最后,只剩下四个 1 相或。

每个 1,对应了一组 ABC 的组合。

每一行,ABC 是共同作用的,所以,它们是【与】的关系。

为了让它们相与之后,得到 F 栏中的 1,为 0 的变量,应该取反变量。

如图中第四行,ABC 分别是 011,那么,变量 A,就应该用 /A 和 BC 相与。

以此类推,就可以得到下面的逻辑表达式:

  F = /A B C + A /B C + A B /C + A B C

这个表达式,可称为:基本与或表达式

---------------------------

观察上式中的第一项和第四项,可发现,它们是可以合并的:

  /A B C + A B C = (/A + A) B C = BC

重复利用第四项,就可以把原来的表达式简化为:

  F = B C + A C + A B

这个表达式,可称为:最简与或表达式

针对上式,再应用摩根定律,可得出:

  F = / ( /(BC) · /(AC) · /(AB) )

这个表达式,可称为:最简与非表达式

把这些逻辑表达式,再转换成别的形式,也是可以的。这就看你是否需要了。

---------------------------

根据上述三个逻辑表达式,可以绘出三种不同的逻辑电路图。

如下所示:

图中上部的电路,对应了基本与或表达式,中部是最简与或、下部是最简与非

图中左边是三个拨动开关,同时为三个表决电路输入三个变量的值。

多次拨动开关,可发现,这三种不同的电路,功能是相同的。都能满足 “少数服从多数” 的设计要求。

在图中,有两个开关位于上方,输入的就是两个 1、一个 0。在此时各电路的 F,都是显示红点,即表示输出为 1。

因为三种电路功能相同,所以在实际应用时,可在其中,任选一个就行了。

---------------------------

由于本题目的要求,极其的简单,所以在化简及转化的过程中,省略了一个方法:卡诺图。

其实,对于计算机专业来说,也没有太复杂的逻辑问题,少介绍一步,关系并不大。

如果是电子专业或自动控制专业,经常会有 “多输入多输出的系统”。此时的变量,就多多了,用直接观察法,是看不过来的。

本文完

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值