Skip to content
字数
4056 字
阅读时间
16 分钟

组合逻辑电路

三态门

有关于三态门:

|500

要求写出上面电路的真值表,并计算出 F 的表达式。

NOTE

三态门:

C (使能端)为 0 的时候,(注意此时是低电平有效),三态门的输出正常,为 D=A

C (使能端)为 1 的时候,三态门为高阻值状态,而在 TTL 中,(上拉状态)高阻值状态当作逻辑 1 处理。(CMOS 中没有上拉状态

CMOS 中,如果三态门的使能端1 ,也就是激发态,其输出与 TTL 不同,输出为逻辑 0

所以结果为当 C=0 的时候, F=AB=AB=AB (A 异或 B)

得到真值表的结果为:

|286

然后再看当 C=1 的时候,此时三态门为高阻值状态,此时为逻辑 1 。得到: F=B1=B1+B1=B

真值表得到是:

|225

综合起来得到:

|550

然后是计算得到 F

方法可以使用卡诺图的方法来得到:

|450

NOTE

需要注意的是变量的顺序,一定要按照真值表上的顺序来画卡诺图!

得到结果为:

F=CB+BA+CBA

三态门的第二个题:

这个题当然可以使用真值表的方法计算得到,除此之外,可以使用逻辑表达式分析化简的方法来得到最后的结果。

首先看P

这个时候可以得到 P 的表达式: P=CAB+C1

原因是要分析 PC 之间的关系。

NOTE

除了这里的与非门之外,如果换成别的门当然也可以使用同样的方式来分析。

有关三态门的第三个题

NOTE

注意后面的线与

线与只有在 OC\OD 门与三态门中可以使用,相当于与门

这里的分析依然是根据逻辑表达式的方法来计算的,当然如果使用真值表的方法也可以,但是会比较慢。

有关三态门的第四个题:

这里主要用的知识点是总线

NOTE

总线的含义是同一个时刻,只能有一个部分的值在总线上,也就是当第一部分有效的时候,其他几个部分必须是无效的,或者是高阻的

组合逻辑电路的竞争冒险

竞争冒险的第一个题:

具体方法就是用卡诺图来判断。

直接展示正确答案的卡诺图:

|397

NOTE

尽管上面这部分有相切的部分,但是每个圈之间都有另外一个圈将他们连接起来,这样就消除了竞争冒险

竞争冒险第二个题

|625

其使用的方法依然是卡诺图分析

下面这个题是电路分析题:

|450

问题是,当 D 有一个正脉冲的时候,想要 F 也有一个正脉冲,问其他的输入如何设计。

问题可以换成想要 F 最后的输出与 D 输入一样,询问其他三个输入应该是什么情况。

NOTE

脉冲与单独 1 或者单独的 0 有本质上的区别,脉冲是存在跳变的,也就是在规定时间内,不只是 0 ,也不只是 1

首先是当 D 为高电平也就是 1 的时候。

从后往前分析,首先是 F 之前的异或门,这里要清晰知道异或门的反相器性质

1A=A0A=A

在知道这个性质之后,首先来判断,当异或门上面的第一个输入为 0 的时候,第二个的输入与输出是一致的,但是这里下面第二个输出之前经过的门是一个或非门

或:有 1 为 1,全 0 为 0.

很明显,因为 D 的输入是 1 ,经过或非门,结果一定是 0 ,那么与想要的结果不符

所以这个时候就要改变异或门的第一个输入,让这个输入为 1 才能起到反相器的作用,得到想要的结果。

而,上面的 AB与非门,想要其输出 1 ,那么就需要其输入的部分为只要有一个 0 。所以 AB 中只要有一个为 0 即可。

与:有 0 为 0,全 1 为 1.

然后来看 C:

由于当 D 为 1 的时候,无论 C 是什么,经过或非门之后得到的结果一定是 0 ,那么导致后面的反相器的另外一个输入一定需要是 1 ,才能使结果也为 1此时 AB 的取值已经确定

那么反过来看当 D 为 0 的时候,如果 C1 ,在经过或非门之后,结果是 0 , 由于 AB 的取值已经确定,所以导致结果变成了 1 ,与题目相悖。

那么这个时候 C 只能为 0 才能满足题目。

NOTE

这里其实是对或非门性质的理解。在或非门的输入中,当有一个输入为 1 的时候,那么结果一定是 0 ,那么对于另外一个输入来说已经是无所谓了,所以在此题中, C 的取值一定是 0 ,只有这样,或非门的输出才受 D 的控制。

所以结果就是:

|153

将题目稍微变换一下:

D 的输入是一个正脉冲的时候,想要输出 F 是一个负脉冲,

在上面的分析中已经提到,对于或非门, C 的输入一定是 0 ,只有这样,或非门的输出才受 D 的控制。

而此时,当 D1 的时候,经过或非门得到的是 0 ;当 D0 的时候,经过或非门得到的是 1

再经过反相器,只需要不让反相器工作,也就是另外一个输入为 0 的时候,就得到了结果。

而只有当 AB 的输入都为 1 的时候,才能让与非门的输出为 0

所以结果为: ABC=110

组合逻辑电路的设计

题目:有三个车间,每个车间的耗电功率如图上所示。还有两个配电站,提供的功率如图上所示。问题是设计一个供电控制电路,使其最节能。

具体解题步骤是

首先将对象抽象出来,然后将真值表画出来:

|500

然后就是使用卡诺图化简,或者直接使用逻辑表达式化简。得到最后的结果。

F=A+BCF=BC+AB+ABC

第二个组合逻辑电路设计题:

设计一个由三处均可以控制灯的电路。

这里主要是抽象问题,在这里假设当输入发生一次改变的时候灯的状态也发生改变,初试状态为 0 也就是关灯状态。

那么真值表就可以画出来:

|225

NOTE

本质上是奇偶校验设计

这里如果使用真值表,其实是不能实现化简的。但是使用逻辑表达式化简,根据图上的步骤结果就是 ABC 之间相互异或

|500

使用数据选择器

首先要明确数据选择器具备哪些输入、控制端。

|500

然后,根据提供的逻辑函数、最小项等条件画出卡诺图,如果是上面这种或与式,那么就需要对其化简,或者直接取反。

下面是第五题:

|525

这个题比较复杂,原因在于是一个五变量的函数,对于卡诺图来说,最多只学过 4 变量的卡诺图。

勘误:上面图中右边的表,上面表头部分应该是 YZ ,而不是 FZ

我们可以使用画表的方法来实现对此函数的分析。

首先是第一级的输入,关键在于是对 VWX 来分析的。

A 来分析,首先是对于 WX 来说(就是都取 0 的时候),由于数据输入端为 0 ,所以再求最后输出的最下项的时候,可以直接将这一项删去不要。

然后是对于 WX 来说,其数据输入端为 1 ,但是我们分析的其实是 VWX ,这其实代表着对于这个表来说, V0 或者 1 ,都是可以的。这就也说明了表上有 001101 这两种情况。

然后是 WX ,这个跟 WX 是一样的。由于数据输入端为 0 ,所以直接不要了。

最后是 WX (都为 1 的时候),这里可以看到是直接接了 V在这里我们规定, V 代表 1V 代表 0

其他的部分亦是如此,按照以此类推的方法得到每一部分的结果。

然后再结合第二级的输入,也就是第一级的输出。由于这里第二级的输入是作为数据输入端,那么还需要结合第二级的数据选择端。

最后得到的每一行,按照顺序就是最小项的结果。

使用数据比较器

|500

可以使用卡诺图的方法(逻辑电路的方法)来实现:

|300

但是如果要使用中规模集成电路--比较器来实现:

那么就需要考虑选择范围。

|500

TIP

勘误:上面图中的 P ,从上到下的顺序应该是 DCBAA 是高位。

如上图中所示。因为是 1X9 ,它是既包含 1 ,也包含 9 ,但是比较器的输出有三种可能,分别是大于、等于、小于。那么就需要进行分析:

根据图中所得,上面或门主要是将 0 排除在外,下面的 P>Q 取反则是得到小于 9

那么就能得到最后的结果。

下面是第十题:

|500

主要核心问题是理清楚逻辑。

此外,要注意观察每个接口处是否存在非,也就是小圆圈,一旦存在,意义相反。

|450

触发器

这个例题是一个同步的,无反馈线的, D 触发器和 JK 触发器相连的。

|500

NOTE

只要是相连的,并且没有反馈线,那么做题顺序就是先 Q1Q2

如果有反馈线,那么 Q1Q2 就要同时考虑

下面是有反馈线的:

|550

有反馈线的,就要慢慢分析,前后是有联系的,相对来说比较复杂。

再来一个例题:

|425

再来一个最复杂的:

|575

这个要注意的是第二个 D 触发器的 CP 脉冲是由第一个触发器的 Q1 决定的。

|525

下面这个题则是利用功能表以及 JK 触发器来实现。

|550

实现方法也不难,主要是将函数表达式表达出来,然后对照 JK 触发器的特征方程: Qn+1=JQn+KQn

然后将函数表达式换成与 JK 触发器相同的形式,然后连线即可。

NOTE

注意,在这里有的时候表达式未必要化到最简。

|550

时序逻辑电路

1、使用 JK 触发器设计" 1101 "序列检测器。画出状态转换图,状态转换表,并画出电路图。假设此序列可以重叠。

(状态分配: S000S101S211S310 )

|500

|575

NOTE

注意,在这里已经事先确定好了状态对应关系,所以不需要改动。如果没有规定状态对应关系,需要将其按照真值表的顺序来排序。也就是 00011110

然后是根据真值表以及 JK 触发器的特征方程。然后利用卡努图,将方程中每个部分表示出来。

|500

|525

模 5 计数器的设计:

使用 JK 触发器和门电路实现一个模 5 同步计数器,其状态转换为:

Q2Q1Q0=010110101011100010

开始的时候直接写出状态转换真值表

NOTE

注意,过程中会有三个状态是不再循环中的,所以他们的输出设为 d ,也就是无关项

然是,将真值表画出来。当然在画圈化简但是依然要结合 JK 的特征方程

|575

|575

分析得到状态方程之后,还没完,还要讨论对于不在循环下是否会出现挂起的情况。

|625

如果对与此类问题要求有输出,姑且当作 Z 来处理:

|625

一般来说会规定在哪一位上输出 1 ,那么这样就得到了:

Z=Q2Q1Q0

单稳态触发器

第一个题目是求 VcV0 的曲线,以及 tw宽度

image.png|650

其中, V0D 触发器输出的电压,它受到 D 触发器的影响。

Vc 则是 RC 电路中的电压,它受到电容充放电的影响。

NOTE

稳态肯定是 0 ,原因是:

如果稳态是 1 ,意味着 V0=1 ,那么会导致 Vc=1 ,但是经过非门之后肯定为 0 ,而置零端低电平触发,那么立马让 V0=0 ,所以稳态肯定是 0

当来一个上升沿触发之后,会导致 V0=1 ,这个时候会让电容进行充放电,就会导致 Vc 的电压呈对数形式上升。直到达到非门阈值,让 1 反相为 0 。此时 V0 变为 0 。那么此时电容又会继续充放电Vc 的电压会继续下降,但是还是缓慢下降,直到恢复稳态。

如果没有阈值,那么 Vc 处电压的上升极限受到 TTL 还是 CMOS 的影响。 TTL 一般是 3.6VCMOS 一般是电源电压。

而在有非门的影响下, CMOS 一般为 VDD2TTL 一般是 1.4V

计算 tw 的公式为:

Vc(t)=Vc()+[Vc(0+)Vc()]etRC

可以得到:

tw=RCln2=0.7RC

第二个题目:

这个题目也是求出 V02 的波形,并且求出 tw 。(注意,其中 VI 的宽度 tw1 > tw

image.png|475

已经给定是负脉冲触发。

只需要逐步分析即可。

image.png|425

第三个题是:

设计一个可延迟触发的双脉冲产生电路

image.png

这道题目比较难,难点在于在原来基础上还要加上一个 RC 电路。

贡献者

文件历史