第四章 组合逻辑电路
组合逻辑电路是指在任何时刻产生的稳定输出取决于该时刻各输入
值的组合。组合电路有两个特点:
⑴ 由逻辑门电路组成,不包含记忆元件。
⑵ 信号为单向传输,不存在反馈回路。
4,1 组合逻辑电路分析
组合逻辑电路分析是指对一个特定电路,找出输出与输入之间的逻
辑关系,对其进行评价、改进和完善。
4,1,1 分析方法
组合逻辑电路分析步骤为:
⑴ 根据逻辑电路图写出输出函数表达式
⑵ 化简输出表达式
4,1,1 分析方法
⑶ 列出函数输出真值表
⑷ 功能评价
4,1,2 分析举例
例 1:右图中,使用 6 个简单
门电路。分析采用以下步骤:
⑴ 写出函数表达式
⑵ 化简函数表达式
⑶ 根据化简后函数表达式列出真值表
A B C F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
1
1
1
1
0
BCPCBPAP ???? 321,,
BCAPAPCBAPPP ??????? 35)(214,
BCACBABCACBAF ?????? )()(
BCACBA5P4PF ????? )(
)()( CABACABACABA ????????
4,1,2 分析举例
⑷ 功能评述
由真值表可知,仅当 A,B,C 取值相同
时 F 值为 0,否则为 1。该电路具有检查输入
是否一致的功能。输出为 1 表示输入不一致,
因此称为,不一致电路”。
根据化简结果可画出等效电路图,
显然比原图简略。
例 2:图中含 7 个简单门电路,分
析电路功能,讨论结构是否合理。
))(())(( CBBCCABAF ??????
))(( CBCBCAAB ????
))(( CBCBCAB ????
))()(( CBCBCBCABA ??????
CBCBCBCBCBACBACB ????????
4,1,2 分析举例
4,2 组合逻辑电路设计
根据问题要求完成逻辑设计,求出在特定功能下的逻辑电路。这一
过程称为逻辑电路设计,又称逻辑综合。
4,2,1 设计方法
⑴ 建立给定问题的逻辑描述
⑵ 求出逻辑函数的最简表达式
⑶ 选择逻辑门类型并进行逻辑函数变换
⑷ 画出逻辑电路图
该例中,输入有 A,B,C 三个变量,但经简
化后仅剩两个变量,全部功能仅需要一个异或门
即可实现,显然结构极不合理。
C
B =1 F
4,2,2 设计举例
例 1:设计,多数表决电路”
假设逻辑 1 表示,通过”,逻辑 0 表示,否
决”。在 n 个输入中,若逻辑 1 的个数过半,则
F = 1,否则 F = 0。
A B C F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
1
?? )7,6,5,3(),,( mCBAF
0 0 1 0
0 1 1 1
AB
C
0
1
00 01 11 10
BCACABCBAF ???),,(
BCACABBCACAB ??????
假设输入变量个数
为 3,根据条件,列出
真值表,画出卡诺图。
分析真值表可得:
分析卡诺图,进行逻辑组合,选择与非门
组成逻辑电路,逻辑表达式为:
4,2,2 设计举例
例 2:设计一个比较两个三位二进制数
是否相等的数值比较器。
两个二进制数为 A = a3a2a1,B = b3 b2 b1。
A = B 时,a3 = b3,a2 = b2,a1= b1。对应的
两位同时为 0 或同时为 1 表示相等。
选择异或门和或非门实现该逻辑,对表
达式进行简化得:
))()(( 111122223333 babababababaF ????
))()()()()(( 111122223333 babababababa ???????
)()())()()( 111122223333 babababababa ????????????
)()()( 111122223333 babababababa ??????
)()()( 112233 bababa ??????
4,2,3 设计中几个实际问题的处理
1,包含无关条件的组合逻辑设计
由于输入变量之间存在相互制约限定,使输
入变量的某些取值不存在,为 0 或为 1 均与输出
无关。称为包含无关条件的逻辑问题 。描述这类
问题的逻辑函数称为无关条件的逻辑函数。
例:设计组合逻辑电路,判别以余 3 码表示
的十进制数是否为合数(非质数)。
解:输入变量为 A,B,C,D,当其表示的
十进制数为合数时输出 F = 1,否则为 F = 0。
列出真值表,根据余 3 代码规定,ABCD 组
合中不允许出现 0000,0001,0010,1101,1110、
1111。若不考虑无关项,函数表达式为:
A B C D F
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
d
d
d
0
0
0
0
1
0
1
0
1
1
d
d
d
?? )12,11,9,7(),,,( mDCBAF
B C DADCABDBA ???
4,2,3 设计中几个实际问题的处理
加入无关项对输出没有影响。将无关条件
d ( 0,1,2 ) 当成 0 处理,d ( 13,14,15 ) 当
成 1 处理,则函数表达式为:
显然后一个表达式更为简单。可采用与非
门实现,与非表达式为:
B C DADABB C DADABDCBAF ??????),,,(
d 0 1 0
d 0 d 1
0 1 d 1
d 0 d 0
AB
CD
00
01
11
10
00 01 11 10
0 0 1 0
0 0 1 1
0 1 1 1
0 0 1 0
AB
CD
00
01
11
10
00 01 11 10
?? )15,14,13,12,11,9,7(),,,( mDCBAF
B CDADAB ???
4,2,3 设计中几个实际问题的处理
2,多输出函数的组合逻辑设计
同一组变量可产生多个输出函数,多个输出函数存在一定的关系,
逻辑简化时将所有输出作为一个整体考虑,找出各输出函数的公用项,
从而使电路整体结构最简。
例:设计一个全加器。
全加器有两个本位输入 A,B,低位进位
输入 Ci-1,产生和输出 S 和进位输出 Ci
用异或门和与非门实现,可将表达式变
换为:
A B Ci-
1
S Ci
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
0
1
1
1 )()( 1111 ???? ???? iiii BCCBACBCBAS
CBACBACBA ??????? )()(
1111 ???? ?????? iiii BCACABBCACABC
1111 ???? ???? iiii A B CCBACBACBAS
1i1i1i1i A B CCABCBABCAC ???? ????
4,2,3 设计中几个实际问题的处理
所得方程已是最简方程,可画出对应的电路图。但考虑多输出函数
的关联,将函数 C 做进一步变换。
在逻辑电路图中,两个输出信号共用一个异或门,可节省器件。
1i1i1i1i A B CCABCBABCAC ???? ????
ABCBAABCBAABCBABA 1i1i1i ????????? ??? )()()(
4,2,3 设计中几个实际问题的处理
3,无反变量提供的组合逻辑设计
实际设计中,为减少连线数量,仅提供正变量,不提供反变量。电
路设计时,可简单地采用反相器生成反变量,但器件数量较多。若采用
适当的方法,则即可以减少器件使用量,又使逻辑电路简单。
例:无输入反变量时,实现以下逻辑函数:
该式为最简表达式,选择非门和与非门实现。但可再次简化电路。
逻辑函数式经变换后,仅需选择与非门即可实现。
DACCBACBBADCBAF ????),,,(
DACCBACBBA ????
DACCBACBBADCBAF ????),,,(
)()( DBACCAB ????
BDACACB ??
BDACACB ??
4,2,3 设计中几个实际问题的处理
经过逻辑变换后生成的电路,无需生成反变量,设计更为合理,且
节省大量器件。
结论,最简函数式不一定对应最简电路 。
4,3 组合逻辑电路的险象
信号经逻辑门和导线传送时有一定延迟,因此输入稳定时输出并不
是立即达到稳定状态。
延迟可能导致速度下降,信号波形参数变坏,更严重的是会在电路
中产生竞争险象。
4,3,1 险象的产生
输入信号经过不同路径到达输出端有一定的时差,时差将产生 竞争
现象 。电路中竞争现象的存在,使得 输入信号的变化可能引起输出信号
出现非预期错误输出,这一现象称为 险象 。
险象是一种瞬态现象,表现为输出产生不应有的尖脉冲,暂时破坏
正常逻辑关系。一旦瞬态结束将恢复正常。
例:由非门和与非门构成组合电路,带有三个输入 A,B,C,函数
表达式为:
假设 B = C = 1,代入函数式,得:
CAABF ??
AAF ??
4,3,1 险象的产生
由该式可知,无论 A 为何值,输出 F 应恒为高电平。
A
d
tpd
e
g
F 1 2
不考虑电路延迟,则以上结论正确,
但考虑延迟,则可能出现险象。
当 A 由低变高时,经过一个 tpd(门延迟时间)延迟,G1 输出 d 由
高变低,同时 G2 输出 e 由高变低,再经过一个 tpd 延迟 G3 输出 g 由低变
高。最后到达 G4 输入端的信号是由 A 经过不同路径传输而得到的两个信
号 e 和 g,e 和 g 变化方向相反,在, 1” 处存在竞争。竞争结果使 G4 恒
输出高电平,这种 竞争不出现险象,属于非临界竞争 。
4,3,1 险象的产生
当 A 由高变低时,e 和 g 同样在 G4 输入端产生竞争,且 e 和 g 在一
个 tpd 时间内同时为高,竞争结果使 G4 产生一个负跳变尖脉冲,如图中
,2” 所示。 这种 竞争出现险象,属于临界竞争 。
4,3,2 险象的分类
1,按输出是否应变化分类
若输入变化而输出不应产生变化情况下,输出端产生短暂错误输出,
即产生险象,称为静态险象。
若输入变化而输出应该产生变化情况下,输出端产生短暂错误输出,
即产生险象,称为动态险象。
2,按输出错误信号极性分类
若错误输出信号为负脉冲,称为, 0” 型险象;若错误输出信号为
正脉冲,称为, 1” 型险象
上例的险象为静态, 0” 型险象。
4,3,3 险象的判断
1,代数判断法
当在一个函数表达式中,某变量同时以原变量和反变量的形式出现,
且在一定条件下函数表达式可化简为 或 形式,则该变量发
生变化时,在电路中可能出现险象 。
例:函数表达式:
解:变量中,A,C 均以原变量和反变量形式出现,可能出现险象。
先将 B,C 及 A,B 的各种取值代入,结果为:
BC = 00 AB = 00
BC = 01 AB = 01
BC = 10 AB = 10
BC = 11 AB = 11
结论,A 的变化可能使电路出现险象,C 的变化不会出现险象。
XX? XX?
ACBACACBAF ???),,(
AF?
AF?
AF?
AAF ??
CF?
CF?
CF?
1F?
4,3,3 险象的判断
2,卡诺图判断法
逻辑函数为与或表达式时,可通过卡诺图判别险象。
画出卡诺图,标上卡诺圈,若两个卡诺圈相切,即两个卡诺圈之间
存在不被同一卡诺圈包含的相邻最小项,则该电路可能产生险象 。
例:函数表达式为,CABCADADCBAF ???),,,(
解:画出卡诺图,标上各与项对应的
卡诺圈。
图中包含最小项 m1,m3,m5,m7
的卡诺圈与包含最小项 m12,m13 的卡诺
圈存在相邻最小项 m5,m13,且 m5,m13
不被同一卡诺圈包含,所以这两个卡诺
圈相切,说明电路可能产生险象。用代
0 0 1 0
1 1 1 0
1 1 0 0
1 1 d 0
AB
CD
00
01
11
10
00 01 11 10
数法检验,若 B = D = 1,C = 0,则,将可能出现险象。AAF ??
4,3,4 险象的消除
CAABCBAF ??),,(
AAF ??
1,增加冗余项法
在函数表达式中,或” 上多余的
“与” 项或者,与” 上多余的,或”
项,可消除可能产生的险象。
例 1:,当 B = C
= 1 时,将产生险象。
逻辑代数定理 8 定义,当某变量以原 附加门
变量和反变量形式出现在,与 – 或” 表达式的两个,与” 项中,则该
两项的其余因子可组成冗余项,增加冗余项对函数没有影响。
该代数式中,变量 A 以原变量和反变量出现在两个,与” 项中,
则两个,与” 项中的其余因子组成的第三个,与” 项 BC 为冗余项。
加入冗余项,代数式改为:
增加冗余项后,当 B = C = 1 时,附加门输出低电平,即使上面两
个与非门瞬间输出高电平,对 F 输出也无影响,F 将恒定输出高电平。
BCCAABBCCAABCBAF ??????),,(
4,3,4 险象的消除
在卡诺图上增加冗余的卡诺圈也可以消除险象。方法是:若两个卡
诺圈相切,则用一个卡诺圈将相邻最小项圈起来,与多余的卡诺圈对应
的,与” 项即要加入函数表达式中的冗余项。
例 2,CBADCBCADCBAF ???),,,(
0 0 0 1
0 1 1 1
1 1 0 0
1 1 d 0
AB
CD
00
01
11
10
00 01 11 10
0 0 0 1
0 1 1 1
1 1 0 0
1 1 d 0
AB
CD
00
01
11
10
00 01 11 10
图中,包含最小项 m2,m3,m6,m7 的卡诺圈与包含最小项 m5、
m13 的卡诺圈相切,相邻最小项为 m5,m7 ;包含最小项 m5,m13 的
卡诺圈与包含最小项 m8,m9 的卡诺圈相切,相邻最小项为 m9,m13 。
4,3,4 险象的消除
该电路将产生险象。为消除险象,增加两个冗余卡诺圈,将最小项
m5,m7 和 m9,m13 圈起来,在图中用虚线表示。
由此得到新的函数表达式:
该表达式对应的逻辑线路不存在险象。
DCABDACBADCBCADCBAF ?????),,,(
2,增加惯性延时法
在组合电路输出端增加惯性延时环
节,通常采用 RC 电路实现惯性延时。
电路正常输出为低频信号,而险象为高频信号,RC 作为低通滤波
器可滤掉险象信号。
采用此法必须适当选择惯性环节时间常数 τ,τ= RC。 要求 τ大于尖
脉冲宽度,以便削平尖脉冲。但也不能太大,否则将使正常输出信号产
生畸变。
X1
X2
:
Xn
组 合
电 路
F F’
R C
4,3,4 险象的消除
3,选通法
前两种方法可以消除险象,但必须增加器件。选通方式则采用另一
种方法,避开险象而不是消除险象 。
组合电路的险象总是发生在输入信号发生变化的瞬间。使用选通脉
冲,从时间上加以控制,避开这个瞬间,就可以避开险象。
TCAABCBAF ???),,(
CAABCAABF ????例:,当
BC = 11,且 A 跳变时可能出现险象。
增加选通信号,将表达式修改为:
T 为选通信号,对应电路图为:
控制选通脉冲,当选通脉冲到来前,封锁 G4,使险象脉冲无法产
生。选通脉冲到来后,开通 G4,电路送出稳定信号。