Note
本章讨论组合逻辑电路:输出只由当前输入决定,不依赖过去状态。学习主线是“功能定义 → 真值表 → 布尔表达式 → 门电路/标准 IC → 实际应用与时序问题”。文中保留教材全部 Worked Example(例题)及原图,并将图题改为中文。
本章导航
- 6.1 半加器与全加器
- 6.2 并行二进制加法器
- 6.3 逐位进位与超前进位
- 6.4 比较器
- 6.5 译码器
- 6.6 编码器
- 6.7 代码转换器
- 6.8 多路复用器(数据选择器)
- 6.9 解复用器(数据分配器)
- 6.10 奇偶校验发生器/检查器
- 6.11 译码器毛刺与排障
- 交通信号控制器综合案例
- 自测题
Success
先记住三条主线:加法器处理“数值运算”;译码器/编码器处理“代码与符号”;MUX/DEMUX 处理“数据路由”。比较器判断关系,奇偶校验检测传输错误。
6.1 半加器与全加器
半加器:两个位相加
半加器(Half-Adder,HA)只有两个输入 A、B,输出和位 Σ 与进位 。二进制加法规则是:
| A | B | 和 Σ | 进位 |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
因此:
也就是说,XOR 负责“不同则 1”的和位,AND 负责“同时为 1”的进位。半加器不能接收来自低位的输入进位。

图 6-2:半加器由 XOR 产生和位、AND 产生输出进位。
全加器:把输入进位也加进去
全加器(Full-Adder,FA)有 A、B、 三个输入,输出 Σ 和 。它相当于“两个半加器 + 一个 OR 门”:
| A | B | Σ | ||
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |

图 6-3:全加器逻辑符号。

图 6-4(a):两个 XOR 串联形成三位相加的和位。

图 6-4(b):全加器完整逻辑(阴影区域分别是半加器)。

图 6-5:两个半加器的级联结构。
Worked Example 6-1:判断三个全加器的输出
- (a) A=1,B=0,:,所以 Σ=1,。
- (b) A=1,B=1,:,所以 Σ=0,。
- (c) A=1,B=0,:,所以 Σ=0,。

图 6-6:例 6-1 的三个全加器输入。
Warning
常见误区:把全加器的 Σ 当成 OR。Σ 是三个输入的奇偶和(XOR),而 才表示“至少两项为 1”。
6.2 并行二进制加法器
要相加 n 位二进制数,需要 n 个全加器。最低位没有外部进位,可使用半加器,或将最低位全加器的 接地。每一级的 接到左侧更高位级的 ,形成并行加法器。

图 6-7 前置说明:处理器对操作数执行加法。

图 6-7:由两个全加器组成的 2 位并行加法器。
Worked Example 6-2:3 位并行加法器
计算 :从最低位开始,依次得到:
- ,向高位进 1;
- ,继续进 1;
- ,最高位产生进 1。
因此结果为 。

图 6-8:例 6-2 的 3 位并行加法及中间进位。
4 位加法器与级联
4 位加法器常用芯片 74HC283/74LS283。符号中的 是最低位输入进位, 是最高位输出进位,Σ1~Σ4 是和输出。两个 4 位加法器级联即可得到 8 位加法器,四个则可得到 16 位加法器。

图 6-9(a):4 位并行加法器框图。

图 6-9(b):4 位并行加法器逻辑符号。

图 6-10(a):74HC283/74LS283 引脚图。

图 6-10(b):74HC283/74LS283 逻辑符号。
Worked Example 6-3:用真值表相加 1100 与 1100
最低两位先得到 Σ1=0、Σ2=0,第三位 得 Σ3=0 且 ,第四位 得 Σ4=1 且 。所以:
Worked Example 6-4:两个 74HC283 构成 8 位加法器
低位芯片处理 A1~A4 与 B1~B4,高位芯片处理 A5~A8 与 B5~B8;低位芯片的进位输出连接高位芯片的进位输入,低位 接地。题给:
逐位相加得到:

图 6-11:两片 4 位加法器级联成 8 位加法器。

图 6-12:例 6-4 的两片 74HC283 连接与引脚号。
应用:投票计数器
每个全加器把最多三张“赞成/反对”票相加,再将 Σ 与进位送入并行加法器,最后通过 BCD—七段译码器显示票数。

图 6-13:用全加器和并行加法器实现投票计数。
6.3 逐位进位与超前进位
逐位进位(Ripple Carry)
逐位进位加法器把前一级 直接接到后一级 。最坏情况下,最低位进位必须依次穿过全部级,延迟约为各级进位传播延迟之和。

图 6-14:4 位逐位进位加法器的最坏传播延迟。
超前进位(Look-Ahead Carry)
定义:
由此可直接展开各级进位,例如:
超前进位用更多门电路换取更短延迟。74HC283 内部采用超前进位;多片级联时,芯片内部是超前进位,而芯片之间仍表现为逐位进位。

图 6-15:进位产生与进位传播条件。

图 6-16:4 位加法器中各级的进位产生和传播。

图 6-17:4 级超前进位加法器逻辑图。
6.4 比较器
相等比较
XNOR 在输入相等时输出 1,因此可比较一位。比较多位数时,每一位使用一个 XNOR,所有 XNOR 输出再送入 AND:

图 6-18:XNOR 实现一位相等比较。

图 6-19:两位数相等比较逻辑。
Worked Example 6-5
(a) 输入 10 与 10:每一位 XNOR 都为 1,AND 输出为 1,表示相等。
(b) 输入 11 与 10:最低位不等,至少一个 XNOR 为 0,AND 输出为 0。

图 6-20:例 6-5 的比较过程。
大小比较
比较大小必须从最高有效位(MSB)开始:首个不相等的位决定整体大小;低位差异在高位已确定关系后应被忽略。4 位比较器输出 、、。

图 6-21:带大小指示的 4 位比较器。
Worked Example 6-6
A=0110,B=0011。最高位开始比较,在第二位发现 A=1、B=0,因此 A>B 输出为高,A=B 与 A<B 输出为低。

图 6-22:例 6-6 的比较器输入。
74HC85/74LS85 支持 4 位比较,并有级联输入 、、。扩展到 8 位时,低 4 位比较器输出接到高 4 位比较器对应的级联输入,最低级联输入设为 、其余为 0。

图 6-23(a):74HC85 引脚图。

图 6-23(b):74HC85 逻辑符号。
6.5 译码器
译码器把 n 位输入代码转换成一个或多个有效输出,典型形式是 n 线— 线。若输出有效高,目标代码中为 0 的输入先反相后送 AND;若输出有效低,常用 NAND。
Worked Example 6-8:检测 1011
要在输入为 1011 时输出高:
只有 A2 需要反相,其余变量直接送入 AND。

图 6-26:检测代码 1001 的有效高译码逻辑。

图 6-27:检测代码 1011 的译码逻辑。
1-of-16 与 74HC154
4 位有 16 种组合,需要 16 个译码门。74HC154 是带两个低有效片选端的 1-of-16 译码器,输出低有效;只有两个片选同时为低时芯片工作,否则所有输出保持高。

图 6-28:4 线—16 线(1-of-16)译码器逻辑符号。

图 6-29(a):74HC154 内部实现示意。

图 6-29(b):74HC154 引脚图。
Worked Example 6-9:5 位译码
74HC154 只能译 4 位,因此用两片实现 5 位。最高位 A4 控制一片的片选,反相后的 A4 控制另一片片选:A4=0 时启用低段,A4=1 时启用高段。

图 6-30:用两片 74HC154 实现 5 位译码。
BCD—十进制与 BCD—七段
BCD—十进制译码器只对 0000~1001 十个合法 BCD 码产生有效输出。74HC42 提供十个低有效输出。

图 6-31:74HC42 BCD—十进制译码器。
Worked Example 6-10: 当 BCD 输入按 0~9 顺序变化时,74HC42 的十个输出依次产生低脉冲;时序图可直接按“某一时刻只有对应数字输出有效”绘制。

图 6-32:74HC42 输入与输出波形。
BCD—七段译码器把 BCD 码转换为 a~g 七段控制信号。74HC47 输出低有效,直接驱动共阳极数码管,并提供灯测试 LT、消隐 BI、波纹消隐 RBI/RBO。

图 6-33:BCD—七段译码/驱动器符号。

图 6-34(a):74HC47 功能示意。

图 6-34(b):74HC47 引脚与逻辑符号。
零消隐用于多位显示:前导零消隐删除整数左侧无意义的 0,尾随零消隐删除小数右侧无意义的 0;必要的 0 保留。RBI 为低且输入为 0000 时,该位全灭并从 RBO 输出低,驱动下一位继续消隐。
6.6 编码器
编码器执行译码器的反向功能,把某一条有效输入线转换成 BCD/二进制代码。10 线—4 线十进制—BCD 编码器的逻辑为:

图 6-36:十进制—BCD 编码器符号。

图 6-37:用 OR 门构成十进制—BCD 编码器。
Warning
基本编码器假定任意时刻只有一条输入有效。若多条输入同时有效,简单 OR 逻辑可能产生非法 BCD 码;需要优先编码器解决冲突。
优先编码器只编码最高优先级的有效输入,忽略其他低优先级输入。74HC147 是输入、输出均低有效的十进制—BCD 优先编码器,数字 9 优先级最高。

图 6-38(a):74HC147 优先编码器示意。

图 6-38(b):74HC147 引脚图。
Worked Example 6-11
74HC147 的引脚 1、4、13 为低,其他输入为高。引脚 4 对应十进制 7,且 7 是三个有效输入中的最高优先级,因此输出为“7”的低有效 BCD 码:低有效输出按器件定义读取。
键盘应用中,每个按键通过上拉电阻保持高,按下后接地变低;优先编码器将按键转换为 BCD,再送入存储器。

图 6-39:简化的键盘优先编码器。
6.7 代码转换器
BCD 转二进制
方法:把 BCD 中每个 1 对应的十进制权值写成二进制,再将这些二进制权值相加。例如十进制 87 的 BCD 是 1000 0111,权值分别为 80、4、2、1,相加得 87,再写成二进制 1010111。
Worked Example 6-12
- BCD 0010 0111 表示十进制 27,。
- BCD 1001 1000 表示十进制 98,。

图 6-12(a):BCD 27 转二进制。

图 6-12(b):BCD 98 转二进制。
二进制与 Gray 码
二进制转 Gray:最高位原样,后续各位为相邻二进制位 XOR。Gray 转二进制:最高位原样,后续二进制位为“前一位二进制 XOR 当前 Gray 位”。
Worked Example 6-13
(a) 转 Gray:。
(b) 转二进制:。

图 6-40:4 位二进制—Gray 转换器。

图 6-41:4 位 Gray—二进制转换器。

图 6-42(a):二进制 0101 转 Gray。

图 6-42(b):Gray 1011 转二进制。
6.8 多路复用器(数据选择器)
MUX 从多条数据输入中选择一条送到单一输出。4 输入 MUX 需要两条选择线:00 选 D0,01 选 D1,10 选 D2,11 选 D3。

图 6-43:1-of-4 数据选择器符号。

图 6-44:4 输入 MUX 门级实现。
Worked Example 6-14
在每个时间区间读取选择线 的二进制值,再把对应 D 输入的电平抄到 Y,即可得到输出波形。选择线按 00、01、10、11 循环时,Y 依次跟随 D0、D1、D2、D3。

图 6-45:例 6-14 的数据与选择波形。
74HC153 是双四输入 MUX,74HC151 是八输入 MUX,具有三条选择线和互补输出。两片 74HC151 可扩展为 16 输入 MUX;使能端可作为最高位选择位。

图 6-46(a):74HC153 功能示意。

图 6-46(b):74HC153 逻辑符号。

图 6-47(a):74HC151 引脚图。

图 6-47(b):74HC151 逻辑符号。
Worked Example 6-15:16 输入 MUX
两片 74HC151 共用低三位选择线,最高位选择哪一片芯片;两片输出经负 OR 合并到同一输出线。

图 6-48:两片 74HC151 构成 16 输入 MUX。
MUX 作为逻辑函数发生器
把变量接到选择端,把真值表中对应输出为 1 的数据端接高电平、输出为 0 的数据端接地,就能用一个 MUX 实现三变量逻辑函数。四变量函数可将一位变量接到数据端(直接接 A0 或反相后的 A0)。
Worked Example 6-16
表中 Y=1 的组合为 001、011、101、110,因此将 D1、D3、D5、D6 接高,其余接低。

图 6-50:74HC151 实现三变量函数。
Worked Example 6-17
对四变量真值表,选择端取 A3、A2、A1;逐组比较 A0=0 与 A0=1 时 Y 的关系:恒 0 接地,恒 1 接高,等于 A0 接 A0,等于反相 A0 则接 。

图 6-51:74HC151 实现四变量函数。
应用:数码管动态扫描
74HC157 选择两组 BCD 数,74HC47 驱动段码,74HC139 选择当前点亮的数码管。选择线高速切换,利用视觉暂留显示多位数字;频率太低会闪烁。

图 6-49:用 MUX 和译码器实现两位数码管动态扫描。
6.9 解复用器(数据分配器)
DEMUX 把一条数据线分配到多条输出线。选择线决定哪一个 AND 门打开,输入数据原样出现在被选通道。

图 6-52:1 线—4 线解复用器。
Worked Example 6-18
选择线按二进制顺序变化时,输入串行数据依次被送到 D0、D1、D2、D3;构造时序图的关键是:每一段只观察被选中的输出,其余输出保持无效。

图 6-53:DEMUX 输入、选择与输出波形。
译码器也可作 DEMUX:数据输入接片选端之一,另一片选端保持有效,译码输入作为数据选择线。

图 6-54:把 4 线—16 线译码器用作 DEMUX。
6.10 奇偶校验发生器/检查器
偶校验要求“数据位 + 校验位”中 1 的总数为偶数;奇校验要求总数为奇数。XOR 的级联实现模 2 加法:输入 1 的个数为奇数时输出 1,为偶数时输出 0。

图 6-55(a):两位模 2 加法。

图 6-55(b):四位模 2 加法。
74HC280 可处理 9 位输入。输入 1 的个数为偶数时 Even 输出高、Odd 输出低;为奇数时相反。

图 6-56(a):74HC280 逻辑符号。

图 6-56(b):74HC280 奇偶功能表。
作为偶校验发生器时取 Odd 输出作为校验位;作为奇校验发生器时取 Even 输出。作为检查器时,正确的校验使相应输出保持有效,错误则产生错误指示。
数据传输应用
发送端用 MUX 串行发送 D0~D6,同时由 74HC280 生成 D7 校验位;接收端用 DEMUX 恢复各位并暂存,最后用奇偶检查器验证。只有接收齐全部位后才使能错误门。

图 6-58:含奇偶校验的数据传输系统。

图 6-59:正确数据与出错数据的传输时序。
6.11 译码器毛刺与排障
毛刺(glitch)是持续时间很短的非期望电压/电流脉冲。组合逻辑各输入因传播延迟不同,不会严格同时翻转;译码器可能暂时看到一个错误代码,从而短暂激活错误输出。

图 6-60:译码器输出毛刺。

图 6-61(a):输入过渡状态造成毛刺。

图 6-61(b):不同传播延迟下的中间代码。

图 6-61(c):错误译码输出脉冲。
消除毛刺:输出选通(Strobing)
仅在输入稳定、非转换期间用选通脉冲使能译码器;输入正在转换时关闭输出,从源头阻止过渡代码造成误触发。高速切换还会带来电源/地弹噪声,PCB 上应就近放置去耦电容(常见 0.022~0.1 μF,配合较大的储能电容)。

图 6-62(a):用选通脉冲屏蔽毛刺。

图 6-62(b):输入、选通和输出关系。

图 6-62(c):电源去耦示意。
交通信号控制器综合案例
组合逻辑单元可用于交通信号控制。系统包含四个状态,并用 2 位 Gray 码 00、01、11、10 表示:
- 状态 1(00):主路绿、支路红,长计时器有效或支路无车时保持。
- 状态 2(01):主路黄、支路红,短计时器有效时保持。
- 状态 3(11):主路红、支路绿,长计时器有效且支路有车时保持。
- 状态 4(10):主路红、支路黄,短计时器有效时保持。

图 6-63:交通信号控制状态图。
状态译码器:
灯光输出:
触发输出:

图 6-64:交通信号控制器三单元框图。

图 6-65:组合逻辑单元的三个功能块。

图 6-66:状态译码器逻辑。

图 6-67:灯光输出逻辑。

图 6-68:长、短计时器触发逻辑。

图 6-69:交通控制器组合逻辑综合图。
本章总结
- 半加器:,;全加器再加入 。
- 并行加法器由多个全加器级联;74HC283 是典型 4 位加法器。
- Ripple Carry 简单但慢;Look-Ahead Carry 用额外逻辑提前求进位。
- 比较器从 MSB 开始判断,74HC85 可级联扩展位数。
- 译码器把代码变成独热输出;编码器执行反向转换,优先编码器解决多输入冲突。
- MUX 负责多到一,DEMUX 负责一到多;MUX 还能直接实现逻辑函数。
- 奇偶校验能检测单个位错误,但不能定位或纠正错误。
- 组合逻辑存在传播延迟,译码器可能出现毛刺;选通和去耦可改善系统可靠性。
自测题
- 半加器的两个输出分别由什么门产生?
- A=1、B=1、 的全加器输出 Σ 与 是多少?
- 8 位 Ripple Carry 加法器为什么最坏延迟随位数增加?
- 与 各表示什么?
- 比较 A=1001、B=1010 时,74HC85 的三个大小输出是什么?
- 用 74HC154 译码 5 位代码需要几片?最高位如何连接?
- 为什么基本十进制—BCD 编码器不允许多条输入同时有效?
- 4 输入 MUX 的选择码 10 选中哪一条数据线?
- 偶校验中,数据 1011001 应附加什么校验位?
- 译码器毛刺的根本原因是什么?如何用 strobe 抑制?
Success
建议自测时先写真值表,再写布尔表达式,最后检查器件的有效电平(active-HIGH/active-LOW)和使能端。组合逻辑题最容易丢分的地方通常不是公式,而是位序、有效电平和进位方向。
本章补充图版
以下图版来自教材原始章节,保留用于对照原电路、引脚、波形和习题图;图题统一采用中文说明。

中文图题:第六章组合逻辑功能教材原图(补充图版 1)。

中文图题:第六章组合逻辑功能教材原图(补充图版 2)。

中文图题:第六章组合逻辑功能教材原图(补充图版 3)。

中文图题:第六章组合逻辑功能教材原图(补充图版 4)。

中文图题:第六章组合逻辑功能教材原图(补充图版 5)。

中文图题:第六章组合逻辑功能教材原图(补充图版 6)。

中文图题:第六章组合逻辑功能教材原图(补充图版 7)。

中文图题:第六章组合逻辑功能教材原图(补充图版 8)。

中文图题:第六章组合逻辑功能教材原图(补充图版 9)。

中文图题:第六章组合逻辑功能教材原图(补充图版 10)。

中文图题:第六章组合逻辑功能教材原图(补充图版 11)。

中文图题:第六章组合逻辑功能教材原图(补充图版 12)。

中文图题:第六章组合逻辑功能教材原图(补充图版 13)。

中文图题:第六章组合逻辑功能教材原图(补充图版 14)。

中文图题:第六章组合逻辑功能教材原图(补充图版 15)。

中文图题:第六章组合逻辑功能教材原图(补充图版 16)。

中文图题:第六章组合逻辑功能教材原图(补充图版 17)。

中文图题:第六章组合逻辑功能教材原图(补充图版 18)。

中文图题:第六章组合逻辑功能教材原图(补充图版 19)。

中文图题:第六章组合逻辑功能教材原图(补充图版 20)。

中文图题:第六章组合逻辑功能教材原图(补充图版 21)。

中文图题:第六章组合逻辑功能教材原图(补充图版 22)。

中文图题:第六章组合逻辑功能教材原图(补充图版 23)。

中文图题:第六章组合逻辑功能教材原图(补充图版 24)。

中文图题:第六章组合逻辑功能教材原图(补充图版 25)。

中文图题:第六章组合逻辑功能教材原图(补充图版 26)。

中文图题:第六章组合逻辑功能教材原图(补充图版 27)。

中文图题:第六章组合逻辑功能教材原图(补充图版 28)。

中文图题:第六章组合逻辑功能教材原图(补充图版 29)。

中文图题:第六章组合逻辑功能教材原图(补充图版 30)。

中文图题:第六章组合逻辑功能教材原图(补充图版 31)。

中文图题:第六章组合逻辑功能教材原图(补充图版 32)。

中文图题:第六章组合逻辑功能教材原图(补充图版 33)。

中文图题:第六章组合逻辑功能教材原图(补充图版 34)。

中文图题:第六章组合逻辑功能教材原图(补充图版 35)。

中文图题:第六章组合逻辑功能教材原图(补充图版 36)。

中文图题:第六章组合逻辑功能教材原图(补充图版 37)。

中文图题:第六章组合逻辑功能教材原图(补充图版 38)。

中文图题:第六章组合逻辑功能教材原图(补充图版 39)。

中文图题:第六章组合逻辑功能教材原图(补充图版 40)。

中文图题:第六章组合逻辑功能教材原图(补充图版 41)。

中文图题:第六章组合逻辑功能教材原图(补充图版 42)。

中文图题:第六章组合逻辑功能教材原图(补充图版 43)。

中文图题:第六章组合逻辑功能教材原图(补充图版 44)。

中文图题:第六章组合逻辑功能教材原图(补充图版 45)。

中文图题:第六章组合逻辑功能教材原图(补充图版 46)。

中文图题:第六章组合逻辑功能教材原图(补充图版 47)。

中文图题:第六章组合逻辑功能教材原图(补充图版 48)。

中文图题:第六章组合逻辑功能教材原图(补充图版 49)。

中文图题:第六章组合逻辑功能教材原图(补充图版 50)。

中文图题:第六章组合逻辑功能教材原图(补充图版 51)。

中文图题:第六章组合逻辑功能教材原图(补充图版 52)。

中文图题:第六章组合逻辑功能教材原图(补充图版 53)。

中文图题:第六章组合逻辑功能教材原图(补充图版 54)。

中文图题:第六章组合逻辑功能教材原图(补充图版 55)。

中文图题:第六章组合逻辑功能教材原图(补充图版 56)。

中文图题:第六章组合逻辑功能教材原图(补充图版 57)。

中文图题:第六章组合逻辑功能教材原图(补充图版 58)。

中文图题:第六章组合逻辑功能教材原图(补充图版 59)。

中文图题:第六章组合逻辑功能教材原图(补充图版 60)。

中文图题:第六章组合逻辑功能教材原图(补充图版 61)。

中文图题:第六章组合逻辑功能教材原图(补充图版 62)。
自测一下
半加器和全加器分别解决什么问题?输出表达式有何不同?
参考答案:半加器把两个 1 位二进制数相加,(\Sigma=A\oplus B)、(C_{out}=AB),由 XOR 产生和位、AND 产生进位,但不能接收低位的进位;全加器增加输入进位 (C_{in}),(\Sigma=(A\oplus B)\oplus C_{in})、(C_{out}=AB+(A\oplus B)C_{in}),相当于”两个半加器 + 一个 OR 门”,因此可以逐级级联实现多位加法(6.1 节)。
逐位进位加法器为什么慢?超前进位如何改善?
参考答案:逐位进位把前一级 (C_{out}) 直接接到后一级 (C_{in}),最坏情况下最低位进位要依次穿过全部级,延迟约为各级传播延迟之和。超前进位定义 (C_g=AB)(本级产生)、(C_p=A+B)(本级传播),由 (C_{out}=C_g+C_pC_{in}) 展开直接求出各级进位,用更多门电路换取更短延迟。74HC283 内部采用超前进位,但多片级联时芯片之间仍表现为逐位进位(6.3 节)。
比较器如何判断两个二进制数的大小?
参考答案:判断相等时,每一位用一个 XNOR 比较(相同输出 1),所有位的 XNOR 输出再 AND 起来,结果为 1 即两数相等。判断大小必须从最高有效位(MSB)开始,首个不相等的位决定整体大小,低位差异应被忽略。74HC85 提供 (A>B)、(A=B)、(A<B) 三个输出,并可通过级联输入扩展位数(6.4 节)。
多路复用器如何根据选择线选通数据?怎样用 MUX 实现逻辑函数?
参考答案:MUX 从多条数据输入中选择一条送到单一输出:4 输入 MUX 需要两条选择线,00 选 D0、01 选 D1、10 选 D2、11 选 D3。实现逻辑函数时,把变量接到选择端,真值表中输出为 1 的组合对应的数据端接高电平、为 0 的接地,一片 MUX 即可实现三变量函数(Worked example 6-16);四变量函数可把一位变量接到数据端(6.8 节)。
译码器毛刺是怎样产生的?如何消除?
参考答案:毛刺是持续时间很短的非期望脉冲:译码器各输入因传播延迟不同、不会严格同时翻转,过渡期间可能暂时出现一个错误代码,短暂激活错误的输出。消除方法是输出选通(strobing):只在输入稳定、非转换期间用选通脉冲使能译码器,输入转换期间关闭输出;PCB 上还应就近放置去耦电容抑制高速切换带来的电源噪声(6.11 节)。