当前位置:首页 >> 数学 >>

第三章w 2012


08:56:20

第三章

组合逻辑电路的分析与设计(8)
3.3.2 逻辑电路的变换 3.4 组合电路中的竞争与险象 3.4.1 竞争现象 3.4.2 险象 3.4.3 险象的判别 3.4.4 险象的消除 3.5 常用MSI组合逻辑器件及应用 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.5.6 3.5.7 译码器 编码器 三态缓冲器 多路选择器 奇偶校验电路 比较器 加法器

3.1 逻辑电路设计文档标准 3.1.1 框图 3.1.2 门的符号标准 3.1.3 信号名和有效级 3.1.4 引端的有效级 3.1.5 引端有效级的变换 3.1.6 图面布局及总线 3.1.7 时间图 3.2 组合电路分析 3.2.1 穷举法 3.2.2 逻辑代数法 3.2.3 利用摩根定律分析 3.2.4 利用卡诺图 3.3 组合电路设计 3.3.1 根据逻辑问题的描述 写出逻辑表达式

08:56:20

第三章

组合逻辑电路的分析与设计

Combinational Logic Circuit Analysis & Design
逻辑电路的分类:组合逻辑电路 Combinational Logic Circuit
时序逻辑电路

Sequential Logic Circuits

组合逻辑电路的特点:电路输出仅取决于当时的输
入,而与过去的输入情况无关。

时序逻辑电路的特点:电路输出不仅取决于当前的输入,
而且也与过去的输入情况有关,即与过去的电 路状态有关。

08:56:20

组合逻辑电路的模型

x1

xn

组合电路

f1 fm
/G1 /G2
A1 Y1 Y2 Y3 Y4

???

???

74LS541
G1 G2 A1 A2 A3 A4 A5 A6 A7 A8 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8

A2
A3 A4 A5 A6

Y5
Y6 Y7 Y8

A7 A8

08:56:20

3.1 逻辑电路设计文档标准 Documentation Standards
用结构化的思想完成一个复杂系统的分析和设计过 程:
1. 整个复杂系统划分成若干子系统; 2. 每个子系统划分成较为简单、较为规范的电路单元; 3. 自顶向下地规划设计(Top-down Modular Design) , 从下而上的进行分析和设计( Bottom-up Process ); 4. 建立一套标准化的逻辑电路描述文档。

作为规范化的技术“语言” ,逻辑电路设计文档标准在 对数字系统的分析、设计和技术交流中都很重要。 一个电路系统的文档至少应包括如下五个方面:

08:56:20

3.1.1 框图 (Block Diagram)
①用方框、圆框及文字等粗略地表示系统的输入、输出、 功能模块(或称子系统); ②用带箭头连线表示模块之间主要信息通路、流向和控 制信号。 系统总框图:表示一个完整的系统模块(用框、文字和 线条等进行标识!)。 参见书P80(85)图3.2。

子系统框图:将一个大的系统划分成几个子系统,由这
几个子系统构成说明整个系统组成的总框图。按子 系统分别构成其框图。

如图: 32位寄存器框图,参见下页。

08:56:20

32位寄存器框图及逻辑图
32 32 32位寄存器 4×74LS377 32 (a) 框图 (b) 框图

32寄存器
32

32

8

8

8

8

74LS377
8

74LS377
8 8

74LS377
8 32

74LS377
8

(C)逻辑图

08:56:20

⒉ 原理图 (Schematic Diagram) 在逻辑电路图(Logic Diagram)中,详细标明器
件类型、端脚之间的连接、信号名等条件细节,再 次细化逻辑电路图。 逻辑图参见书P79(85)图3.1( c )。 原理图参见书P89(95)图3.19。 (该图还是不够纤细(新版感觉有错)!如如u1、 u2没有细分)

⒊ 时间图 (Timing Diagram)
反映逻辑信号之间对应的时间关系,特别是要 能反映出关键信号之间因果关系和传输延迟。 参见书P92(97-98)图3.22和图3.23。

08:56:20

Flash ROM A0~A17 OE D0~D7

P0.1~P2.2 P2.3 P0.0 P2.4 P2.5 P2.6 P2.7 P3.4

D0~D7 CCLK CS PROG WR DONE INIT

单片机

FPGA

08:56:20

FPGA

片内局部总线 主 机 端 A T A 控 制 器 加/解密 数据通路 设 备 端 A T A 控 制 器

主 板

FIFO

DES 加密 DES 密钥

FIFO

硬 盘

扇区号 主机 指令 单片机 主密钥 接口 分区密钥 密钥存储 与计算

单片机

第三方密钥 生成模块

08:56:20

主机端ATA控制器
命令/地 址译码 PIO 协议控制 Multi-Word DMA协议控制 Ultra DMA 协议控制 多 路 选 通

加/解密通路

ATA总线
硬盘参数修改 寄存器修改 与访问控制 数据转发 扇区号寄存器

片内局部总线

单片机接口 扇区号输出

08:56:20

主机端ATA 地址 Td 硬盘端ATA 地址 主机端DIOR Td 硬盘端DIOR 硬盘端ATA 数据 Td 主机端ATA 数据 Ts 2Td 理想的主机端ATA 数据 Th Td

08:56:20

08:56:20

⒋ 结构化逻辑描述 (Structured Logic Description)
说明结构化逻辑器件的内部功能,如PLA、存储器 芯片或者某些具有专门功能的中、大规模器件; 用逻辑等式、状态表(图)、功能表或程序表等形式说明。

⒌ 电路说明 (Circuit Description)
用文字简明叙述电路的使用方法; 解释内部的工作方法; 列出设计和操作中所有可能的潜在缺陷, 以及在使用不当中隐含的问题。

08:56:20

3.1.2

门的符号标准

(Gate Symbols Standards)
⒈ 逻辑门的符号标准:
–长方形符号:中国国标、IEC标准(国际电工委员会, (International Electrical Commission) ) 、IEEE标准(Institute of Electrical and Electronics Engineers (IEEE) 美国电气和电子工程师协会 )(读做eyetriple-ee,I-3E)。

– 变形符号:

IEEE标准,美国军方标准

常用门的符号表示参见下页所示。 IEEE认可两种符号!

08:56:20

图3.3 常用逻辑门的两种表示形式 电路名称 跟随器 非 门 与 门 或 门 与非门 或非门 与或非门 原符号
1 1 &
≥1

变形符号

&
≥1 & ≥1

异或门

=1

08:56:20

⒉ 门的等效符号
对上述常用门中输入信号进行有效级变换(变反), 并按照DeMorgan定律得到的门的等效符号。 实际上,等效变换即为小圆圈(表示反相器)在 门的符号上的出现和移动。如下图

F=A ? B
&

F = A +B
1
≥1 ≥1

反向器用圆 圈表示!

1 1
≥1 &

&

1

F=A + B F = AB 逻辑门的等效符号参见下页所示。

&

08:56:20

逻辑门的等效符号 电路名称 原符号
1

等效符号
1

跟随器
非 门 与 门 或 门

1

1

&

≥1

≥1

&

与非门
或非门

&

≥1

≥1

&

08:56:20

08:56:20

08:56:20

3.1.3 信号名和有效级 (Signal Names and Active Levels)
⒈ 信号命名
为了方便电路分析,要对电路的各个输入、输出信号进 行规范化命名,即取名最好源自信号的物理名称或者是它 的缩写。如: 数据信号命名为:Datai (Di); 地址信号命名为: Addri (Ai); 控制信号命名为: Conti (Ci)、Reset、Set、 … ; 检测信号命名为: Ready、Error、 …、 等待信号命名为: Wait、…; 片选信号命名为: CS;使能信号EN; …。 参见书P91(xx)图3.21。

08:56:20

⒉ 信号的有效级

(Active levels for Signals)

⑴ 控制信号、测试信号等此类信号都有一个与之对应的 有效级。

当信号处在其有效级时,逻辑电路才能正确地执 行其功能。
⑵ 在正逻辑约定中, 高电平与逻辑逻辑状态“1”等效 低电平与逻辑逻辑状态“0”等效。 (参见书第二章P27(27)图2.2)
⑶ 有效级分高(电平)有效或低(电平)有效。 高有效:信号为高电平或为逻辑“1”时为有效; 低有效:信号为低电平或为逻辑“0”时为有效;

08:56:20

⑷ 有效级的约定(即表示法):
用一些特别的符号作为信号名的前缀或后缀,这些符 号反映了(用来标识)信号的有效性,如下表所示。

低电平有效
ACK- ERROR.L ACS(L) CS* /EN RESET#

高电平有效
ACK+ ERROR.H ACS(H) CS EN RESET

本书采用表中“EN(高有效)、/EN(低有效)”的这一组表示 法。
用斜杆进行标识

08:56:20

⑸ 信号名不能采用反变量符号,也不能采用 逻辑表达式。
如下图中,RDY (准备好) 为 测试信号, /EN (使能) 为控制信号, 当RDY为高电平、/EN为低电平时,则该电路工作。

/EN
RDY

逻辑 电路

F

08:56:20

⑹ 例:设计一个逻辑电路。
使得加电(高有效信号)时产生一个低有效输出, 系统不复位(低有效信号),内部锁InTerLock关闭(低 有效信号),给出一个运行信号(低有效信号) ,数据 已准备好(高有效信号)。

确定信号名:
输入变量 加电= PWR,复位= /RST,内部锁= /ITL, 运行= /RUN,数据准备好= READY 输出变量 输出= /OUT
PWR /RST /ITL /RUN READY

&

/OUT

08:56:20

3.1.4 引端(脚)的有效级(Active levels for pins)
? 引端的有效级:是指电路的输入、输出上的物理量 与电路内部逻辑状态的对应关系,

国际上通用的是逻辑非符号体制。
? 对应关系:指选用器件的引端的有效级 与所给信号的有效级相匹配。 本书采用的是“逻辑非符号体制”。另一种是 “极性符号体制” (略)。
该体制中,图形符号上有带逻辑非符 号(用圆圈表示)和不带逻辑非符号 的输入、输出。P84(89)

08:56:20

逻辑非符号体制
在本体制下存在两级对应关系: ⑴ 一是电路的外部逻辑状态与内部逻辑状态的对应关系。 例:所示框图中a、b、c、d为外部逻辑状态标识; ENABLE、DO、RDY、SID为内部逻辑状态标识。
&

a

ENABLE

DO RDY

?1

… … …

SID

… …

b c d

器件框图上不带逻辑 非符号(小圆圈)

&

a

ENABLE

DO RDY SID

?1

… … …

… …

b c d

器件框图上带逻辑非 符号

08:56:20

例:如图所示
①器件框图上不带逻辑非符号(即小圆圈)的输入 a与 X、输出 c 与 Z 的关系:若 Z = f(X),则 c = f(a)
a 0 1 X 0 1 Z 0 1 c 0 1

a

X

Z

c

②器件框图上带逻辑非符号的输入a 与 X、输出 c与 Z的关系:若 Z= f(X), 则 c=Z= f(X) = f(a)
a X Z c
a 0 1 X 1 0 Z 0 1 c 1 0

08:56:20

⑵ 二是电路的输入、输出信号的物理量与电路的外部 逻辑状态的对应关系,用正逻辑或负逻辑加以约定。

? 正逻辑约定
如下图所示: Z = XY c=Z = XY =a b 逻辑电平对应关系:H (高电平) — “1”(外部逻辑状态) L (低电平) — “0”(外部逻辑状态)
X Y Z 0 0 0 1 a b 0 0 1 1 0 1 0 1 c 1 0 1 1 a b L L L H H L H H c H L H H

a b

X& Y

Z

c

0 0 1 1

0 1 0 1

08:56:20

? 负逻辑约定 如下图所示:Z = X+Y c = Z = X + Y = a +b 逻辑电平对应关系:H (高电平) —— “0”(外部逻辑状态) L (低电平) —— “1”(外部逻辑状态)
X Y Z 0 1 1 1 a b 0 0 1 1 0 1 0 1 c 1 0 1 1 a b H H L L H L H L c L H L L

a b

X ?1 Z Y

c

0 0 1 1

0 1 0 1

注:本书采用逻辑非符号体制的正逻辑约定。

08:56:20

3.1.5 引端(脚)有效级的变换 (Bubble-to-bubble Logic design)
? 目的:使逻辑电路的功能一目了然 ? 结果:使所选用器件引端的有效级与 所给的信号有效级 相匹配 ? 方法:对器件引端的有效级进行变换。
例:下面两组的各四种分别表示四个完成同一逻辑功能的器件:
四种 四种 “或” “或” 功能 功能 四种 四种 “与” “与” 功能 功能
?1

√ √

?1



?1

?1

或门(7432) &

或非门(7402) &

与非门(7400) & 或非门(7402)

与门(7408)
& 或门(7432)



与门(7408)

与非门(7400)

08:56:20

1. 引端有效级的变换,包括:
①输入引端的变换:或为高有效、或为低有效, ②输出引端的变换:分别为高有效、或低有效。

例 如下图 Busy = REY·REQ 对应了四种电路。
REY REQ REY REQ

&

BUSY
与门7408

&

/BUSY
与非门7400

高有效输入、高有效输出
/REY /REQ
&

高有效输入、低有效输出
/REY /REQ
&

BUSY
或非门7402

/BUSY
或门7432

低有效输入、高有效输出

低有效输入、低有效输出

08:56:20

2. 引端有效级的变换规则 (Bubble-to-bubble Logic Design Rules)
在保持输入与输出逻辑功能不变的条件下,依如下变换 规则对逻辑图进行任意变换 (也称圆圈逻辑Bubble Logic) 。 规则1:任何输入或输出引端加上或删去逻辑非符号 (即小圆圈),且其对应的信号有效级变反,则逻 辑图的功能不变。
A /B /A /B
&

&

F

F

/A B

&

/F

08:56:20

规则2:逻辑图内部连线的两端,同时加上或删 去逻辑非符号,则逻辑图的功能不变。

A B

&
≥1

A B
F

&
≥1

F

C D

&

C D

&

08:56:20

规则3:单个逻辑非符号在内部连线两端移动时 逻辑图的功能不变。

A B

&

A B F
&

& &

F

C D

≥1

C D

≥1

08:56:20

规则4:若一个门的输入输出端同时加上或删去逻 辑非符号,或输入、输出信号有效级同时 取反,且门的符号“与”、 “或”互变时,则 得到的新的逻辑图的功能不变。
A B A B
&
≥1

F

F /A /B
≥1

/F

08:56:20

变换的最终目标:

变换后的结果应满足下列规定

⑴ 器件的输出信号有效级应与对应 的输出引端的有效级一致。 即输出端有逻辑非符号,输出信号为低有效, 否则为高有效。

如前面四个变换规则所示: 若与门的输出端无逻辑非符号,则F为高有效; 与门的输出端有逻辑非符号,则/F为低有效。

08:56:20

⑵ 当输入信号有效级与其对应的输入端有效级 一致时,当该信号有效时,则器件内部逻辑功能有效。
即输入端有逻辑非符号,输入信号为低有效,否则 输入端没有逻辑非符号,输入信号为高有效。如: 下图所示: 选择输入信号SEL连接到与非门①的输入端(无逻辑非符号), 则选择DATA=A时的SEL是高有效;
SEL还通过非门(有逻辑非符号)连接到与非门②的输入端,则 选择DATA= B时的SEL是低有效。 即输出数据信号DATA 如下:
DATA =
A

&
ASEL ① ?1 DATA



A B

当SEL = 1 当SEL = 0

SEL
B

1

BSEL

&


08:56:20

⑶ 若输入信号有效级与其对应 的输入端有效级不一致时, 则当该信号无效时,则器件内部逻辑功能才有效。 这是应尽量避免出现的情况。

例:下图中选择信号SEL的有效性不明确。
A SEL B

&
ASEL ① ?1 DATA

1

BSEL

&


08:56:20

⑷ 应用变换规则,可以将一个意义模糊、结构不好 的逻辑变成一个可读性好的逻辑图。 使:高有效输出与高有效输入相连, 低有效输出与低有效输入相连, 这样,可直接从逻辑图中读出逻辑函数, 而不用跟踪求反后的变量。 例:逻辑不匹配。
A
B C

逻辑匹配。
A



1
?1

1
≥1

&

/D B C

&

/D

08:56:20

3.1.6 图面布局及总线(Drawing Layout and Buses)
在逻辑图及原理图中,规定: ? 信息流:默认从左至右,或者从上到下,若不能保证流 向则使用箭头来标识信息流的方向,有单向和双向之分。

A

B

A

B

? 逻辑器件:输入端画在左边,输出端画在右边。

? 图中应注明所用集成电路的型号、连线的引端(脚)号、集 成电路在整个原理图中的编号以及输入、输出信号名等。

08:56:20

? 需要分页画出的原理图要合理地划分出每页的模块, 既要完整又要使页与页之间的连线尽可能地少,并 清楚地标注出它们之间的连接关系。 ? 信息线的交叉点:手工作图时用圆点表示,CAD作图 时用T型连接。参见书P89(94)图3.18所示。

手工画 机器画
(a) 交叉 (b) 连接

不允许
(c) 连接

08:56:20

? 总线的表示法:
单向总线符号

2

2 双向总线符号

总线的接点

没有连接的交叉

(a)双线表示总线 (手工)

(b)单线(粗线)表示总线 (CAD)

08:56:20

3.1.7 时间图 参见书92(97-98)图3.22和图3.23。

08:56:20

08:56:20

08:56:20

08:56:20

08:56:20

3.2 组合电路分析Combinational Logic

Circuit Analysis
电路分析的目的:
根据给定电路,分析该电路输出与输入之间的逻辑关 系,得出电路的逻辑功能的描述,进而评估此电路的性能, 还可进一步改进电路。(参见P93(99)的4项目的。)

分析的一般步骤:如下图所示:
逻辑 电路图 写出逻辑 表达式 列出 分析逻辑

真值表
用卡诺图 化简 表达式

功能

改进电路 或查找定 位电路故 障!

08:56:20

3.2.1 穷举法

只适合小 规模电路

穷举法的结果是真值表。即列出n个输入变量的所 有2n个输入组合,并根据每一个输入组合决定所有门 的输出,逐级推出电路的最终输出,得到真值表。 由真值表可直接写出逻辑表达式。 例:分析如图3输入——1输出的逻辑电路。

x y z
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1

F
0 1 1 0 0 1 0 1

1 0x 0 1 0 y 1 0 0 1 z 0

0 1 1

≥1

0 1

1 & 0
≥1 F

1

0 1 0 1

& 0 1

1 0

1

08:56:20

3.2.2 逻辑代数法

根据电路逐级写出各门的输出表达式,直至写出整个 电路的输出逻辑表达式。例:如下图 F=(x+y) z + (xyz)
根据布尔代数进行表达式变换,如下:

F=xz + yz + xyz =(x + z)(y + z)( x + y + z) = (xz)(yz)(xyz)
与非—与非式
上述表达式对应不同结构 的逻辑电路(同一种表达 式也可以用不同的电路实 现)。参见书P95(xx)图 3.25。
x y
1

与或式 或与式
?1

z
1
1

&
?1 F

&

08:56:20

3.2.3 利用摩根定律分析
若电路采用与非门和或非门实现,函数表达式需 要反复应用摩根定律简化:
P96,图3.26(a)

F = (AB C) + (A+B+C) + (A+D)
P96,图3.26(b)

= (A+B) C (A+B+C)(A+D)
= (( A+B ) C) ( A+B+C )(A+D)
P96,图3.26(c)

= (A+B) C (A+D)

P97,图3.27

对应不同结构的逻辑电路,参见书P96(xx)图3.26、 P97(xx)图3.27 。

08:56:20

3.2.4 利用卡诺图化简函数,通过函数表达式或真值 表分析其逻辑功能。
例1:分析如图逻辑电路。 P1 = AC P2 = A + B P3 = B + C
P4 = A ⊕C
A C A B
&

P1 P2 & P5 &
F

≥1

B C
A C

≥1

P3 P4

≥1

P6

P5 = P1 P2 = AC A+B =A+ B
P6 = P3 + P4 = B + C + A ⊕C =AB C



F = P5 P6 = (A + B) A B C =0+0=1

这是一个输出恒为 1 的逻辑电路。

08:56:20

例2:分析如图逻辑电路。 A
&

&

写出最简表达式:
B
&
&

&

F

F = AB BC CA = AB + BC + CA
从表达式直接看 不出明确的逻辑关系, 再通过真值表来分析:
C

&

&

从真值表可以得出: 这是一个判三变量非一致电路。

AB C 000 001 010 011 100 101 110 111

F 0 1 1 1 1 1 1 0

08:56:20

例3:分析图示电路。 写出最简表达式:

通过真值表来分析:
B8 B4 B2 B1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 A8 A4 A2 A1 1 0 00 1 1 1 1 0 00 0 0 1 0 1 11 1 1 0 0 1 11 0 0 0 0 1 00 1 1 0 0 1 00 0 0 0 0 0 11 1 1 0 0 0 11 0 0 0 0 0 00 1 1 0 0 0 00 0 0 0 0 1 11 1 1 0 0 1 11 0 0 0 0 1 00 1 1 0 0 1 00 0 0 0 0 0 11 1 1 0 0 0 11 0 0 0

A8 = B8 + B4 + B2 = B8 B4 B2
A4 = B4 ⊕ B2 = B4B2 + B4B2 A2 = B2 A1 = B1
B8 B4 B2
≥1

A8 A4 A2

=1

B1

1

A1

这是一个BCD码对9变补器。

08:56:20

例4:分析如图逻辑电路。 1. 写出最简表达式:
x3(MSB)
=1 ≥1

y3

y0 = x 0 y1 = x1⊕x0 y2 = x2⊕(x1+ y1) = x2⊕(x1+ x1⊕ x0)
x2

=1
≥1

y2

= x2⊕(x1+ x0)
y3 = x3⊕(x2+ y2) = x3⊕(x2+ x1+ x0)
x1
=1

y1 y0

= x3⊕(x2+ x2⊕(x1+ x0)) x0(LSB)

08:56:20

2. 函数最简表达式:

3. 通过真值表来分析:

y0 = x0 y1 = x1⊕x0 y2 = x2⊕(x1+ x0) y3 = x3⊕(x2+ x1+ x0)

x3x2x1x0
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

y3y2y1y0
0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

结论:
这是一个二进制变补器, 也称16变补器。

08:56:20

2. 函数最简表达式:

y0 = x0 y1 = x1⊕x0 已知:x = xn-1 xn-2 … x1 x0 y3 = x3⊕(x2+ x1+ x0) 则: x 求补为 xn-1 xn-2 … x1 x0 + 1 = yn-1 yn-2 … y1 y0 y2 = x2⊕(x1+ x0)
变补的规律是:
从数值位的最低位开始逻辑转换

yi = xi⊕(xi-1+ yi-1) yi = xi⊕(xi-1+ xi-2 … + x1+ x0)

08:56:20

3.3 组合电路设计

Combinational Logic Circuit Design
目的:根据要实现的逻辑功能,利用逻辑代数方法实现逻辑
电路设计的一般步骤,如图所示:
分析设计要求 列出真值表 写出最简逻辑表达式 表达式变换 画出电路逻辑图

确定输入输出变量;逻辑关系;有无d(无关项)
填入卡诺图进行化简

由卡诺图得到最简与或式
根据所选用门的类型

对电路进行综合评价

要求:电路用最少的逻辑门(集成块)、最少的输入端数。

08:56:20

3.3.1 根据逻辑问题的描述写出逻辑表达式
一、逻辑问题描述—真值表—逻辑表达式 例 设计一个二进制一位全加器。 1. 半加器 Half-Adder 输入变量:加数A、B 输出函数:和 Sh、进位Ch
A A B 0 0 1 1 0 1 0 1 Sh Ch 0 1 1 0 0 0 0 1 B 1
&

A
B

半 加 器

Sh
Ch

Sh = AB + AB = A⊕B Ch = AB

= AAB BAB

= AB

1
A B 1

Sh

A B

&
&

&

Sh

&

Ch

Ch

08:56:20

2. 全加器Full-Adder
输入变量:被加数 Ai、加数 Bi 、来自低位的进位 Ci-1 输出函数:本位和 Si、本位向高位的进位Ci
Ai Bi Ci-1 Si 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 Ci-1

AiBi
1 1 1 1

Ci-1

AiBi
1 1 1 1

Si

Ci

Si = Ai⊕Bi ⊕Ci-1 = AiBi Ci-1 + AiBiCi-1 + AiBiCi-1 + AiBi Ci-1 Ci = AiBi + Ai Ci-1 + Bi Ci-1 二级与或电路参见书P98图3.28( c )。

08:56:20

08:56:20

2. 全加器Full-Adder
用“与或非”门实现全加器 Ci = AiBi + Ai Ci-1 + Bi Ci-1
Ci-1

AiBi 1 1 1 1

Ci = AiBi + Ai Ci-1 + Bi Ci-1
S i = m1 + m2 + m 4 + m7
Ci-1 AiBi

Si
1
1 1 1

m1 = Ci-1 ? Ci
m2 = Bi ? Ci m4 = Ai ? Ci m7 = Ai ? Bi ? Ci-1
故 Si = Ci-1 ? Ci + Bi ? Ci + Ai ? Ci + Ai ? Bi ? Ci-1
禁止法
Ci-1 AiBi

Ci
1 1 1 1

Ci

= Ci ? ( Ci-1 + Bi + Ai ) + Ai ? Bi ? Ci-1

08:56:20

2. 全加器Full-Adder
用“与或非”门实现全加器 Ci = AiBi + Ai Ci-1 + Bi Ci-1
Si = Ci ? ( Ci-1 + Bi + Ai ) + Ai ? Bi ? Ci-1
Ci Si ≥1 ≥1

Si Ci

&
全加器

&

Ai Bi Ci-1
A i B i C i-1

电路的特点:输出为反函数。

08:56:20

?

VHDL程序基本结构
实体
(Entity)

实体部分:描述设计
系统的外部接口信号 (即输入/输出信号) VHDL设计文件的 结构体:用于描述 两个基本组成部分 系统的内部电路

结构体
(Architecture)

一个完整的 VHDL程序

配置
(Configuration)

配置:用于从库中选
取所需元件安装到设 计单元的实体中

包集合
注释:-(Package)


(Library)

包集合:存放各设计
模块能共享的数据类 型、常数、子程序等

库 :用于存放已编译
的实体、结构体、包 集合和配臵

08:56:20

VHDL程序结构
例1 一个2输入的与门的逻辑描述 --***********and2*********** --comment LIBRARY ieee; --库说明语句 USE ieee.std_logic_1164.ALL; --程序包说明语句 ENTITY and2 IS PORT(a,b : IN STD_LOGIC; 实体部分 y : OUT STD_LOGIC); END and2; ARCHITECTURE and2x OF and2 IS 结构体部分 BEGIN y<=a AND b; END and2x;

08:56:20

VHDL

例2:半加器
ENTITY h_adder IS PORT(a, b : IN STD_LOGIC; s, c : OUT STD_LOGIC); END h_adder; ARCHITECTURE rtl OF h_adder IS BEGIN c<=a AND b; s<=a XOR b; END rtl; 例3:全加器

co
c2 c a c1 c a s1 s b u1

s
h_adder

s

b

u2

h_adder

a

b

ci

08:56:20

例3:全加器 ENTITY f_adder IS PORT(a, b,ci : IN STD_LOGIC; s, co : OUT STD_LOGIC); END f_adder; co ARCHITECTURE arc OF f_adder IS COMPONENT h_adder PORT(a, b : IN STD_LOGIC; c1 s, c : OUT STD_LOGIC); s1 c s h_adder END COMPONENT; a b SIGNAL s1,c1,c2:STD_LOGIC; a b BEGIN u1:h_adder PORT MAP(a,b,s1,c1); u2:h_adder PORT MAP(s1,ci,s,c2); co<=c1 OR c2; END arc;

VHDL

s
c2 c a
h_adder

s

b

u2

u1

ci

08:56:20

二、逻辑问题描述—简化真值表—逻辑表达式
3. 比较器 Comparators
输入变量:两个正整数 x = x2x1 , y = y2y1

输出函数:三个比较结果F1(x > y),F2(x < y),F3(x = y)
①根据先比较高位后 比较低位的原则,列出使

x2 y2 x1 y1 F1 F2 F3
1 0 0 1
0 0

函数为1的简化真值表:

1 1

d d 1 0 0 1 1 0 0 1

d d 0 1 0 1 0 1 0 1

1 0 1 0 0 0 1 0 0 0

0 1 0 1 0 0 0 1 0 0

0 0 0 0 1 1 0 0 1 1

08:56:20

②由简化真值表直接写出逻辑表达式: x2 y2 x1 y1 F1 F2 F3
x2 x1 y2 y1

比较 电路

F1 F2 F3

1 0 0 1

0 0

F1 = x2y2 + x2y2x1y1 + x2y2x1y1 F2 = x2y2 + x2y2x1y1 + x2y2x1y1

1 1

d d 1 0 0 1 1 0 0 1

d d 0 1 0 1 0 1 0 1

1 0 1 0 0 0 1 0 0 0

0 1 0 1 0 0 0 1 0 0

0 0 0 0 1 1 0 0 1 1

F3 = x2y2x1y1 + x2y2x1y1 + x2y2x1y1 + x2y2x1y1
逻辑电路图参见书P100图3.31。

08:56:20

08:56:20

三、逻辑问题描述——逻辑表达式
4. 由逻辑问题描述直接写出逻辑表达式。 例 设计一个房间报警电路。如果 ① 意外事件发生输入PANIC为1,则报警输出ALARM为1 ; ② 使能输入ENABLE为1、出口标志输入EXITING为0、 房间没有加密(SECURE),则报警输出ALARM为1。 如果窗(WINDOW)、门(DOOR)及车库(GARAGE) 都是1,则房间加密(SECURE)。 ALARM = PANIC + ENABLE ? EXITING ? SECURE SECURE = WINDOW ? DOOR ? GARAGE ALARM = PANIC + ENABLE ? EXITING

? (WINDOW ? DOOR ? GARAGE)

08:56:20

报警电路逻辑图

PANIC

ENABLE
& EXTING WINDOW DOOR GARAGE 1 SECURE 1

≥1

ALARM

&

08:56:20

思考题:设计一个两位二进制数乘法器。
分析:输入变量 X = x2x1 Y = y 2 y1 输出变量 Z = z4z3z2z1 x2x1 y2y1 1
1 1

x2x1 y2y1
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

z4z3z2z1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1

1

z4
1 1

z3 1
1

1 1
1

1 z1

1 1 z2

08:56:20

思考题:设计一个两位二进制数乘法器。
分析:输入变量 X = x2x1 Y = y 2 y1 输出变量 Z = z4z3z2z1 x2x1 y2y1
1
1 1

输出函数:

z4 = x2x1 y2y1
1

z3 = x2x1y2 + x2y2y1 z2 = x2x1y1 + x2y2y1 + x2x1y2 + x1y2y1 z1 = x1y1

z4
1 1

z3 1
1

1 1 1 1 z1

1 1 z2

08:56:20

思考题:血液配型判别器。
分析:
输入变量: 输血者血型 Ai、 Bi、 ABi 、 Oi 受血者血型 Ao、 Bo、 ABo 、 Oo 输出变量: 配血成功 F 输血者血型 Oi Ai Bi ABi 受血者血型 Oo Ao Bo ABo

F = Oi + Ai (Ao+ ABo) + Bi (Bo+ ABo) + ABi ABo

08:56:20

思考题:开关控制电路
某一集体宿舍,共住有7人,共用一套照明设施, 每人床头都有一个控制开关,要求每按动开关一下,就 改变一次灯的状态(即亮→灭、灭→亮)。试设计出此灯 控开关电路。

分析:输入变量K1、 K2、 K3、 K4、 K5、 K6、和 K7
输出变量 F 设开关初态F = 0 当K1 K2 K3 K4 K5 K6K7 均为 0 可以从四变量输入分析入手,找出生成输出函数的 特征和规律。

08:56:20

思考题: 码制转换电路
例1 输入为2421码ABCD 输出为余3码Y3Y2Y1Y0
分析过程: 第一步,列出真值表
十进制数 0 1 2 3 4 ABCD 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 Y 3 Y 2 Y 1 Y0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 d d d d d d 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0

5 6 7 8 9

08:56:20

第二步:按Y3、Y2、Y1和Y0分别填完卡诺图
AB CD d d d AB CD 1 1 d 1 d d 1 d 1 1 d d CD AB

1
1 1 1 Y3

d
d 1 d

CD 1 1 1 AB 1

1
d d d Y2 1 d d d 1 1 1

d
d

d

d d

d

Y1

Y0

AB C D 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1

Y3Y2Y1Y0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 d d d d d d 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0

08:56:20

第三步:找出最小覆盖并写出最简表达式
AB CD d d d 1 1 1 1 d d 1 d CD 1 1 1 AB 1 d d d 1 d d d 1 CD AB 1 1 d d d 1 d 1 d d

Y3

Y2
AB CD

Y1

Y3 = A Y2 = AB + AC + AD + BCD Y1 = A⊕C⊕D Y0 = D

1

1 d d

1

d d

1

d

1

d

Y0

08:56:20

3.3.2 逻辑电路的变换(P101) transform of Logic Circuit
为了提高电路的速度,提高器件的利用率,从而 减少IC的数量、也减少外部的连接线和提高电路的可 靠性,需要对从逻辑表达式直接画出的逻辑电路图进 行变换,尽可能使其用同一类型的输出端带非的门来

实现。

一、“与—或”电路变换为“与非—与非”电 路
例 F =A + BC + DEF + G =A + BC + DEF + G (原函数二次求反) =A BC DEF G (运用反演规则) =A BC DEF G

08:56:20

对应的二个不同的电路如下:
F = A + BC + DEF + G = A BC DEF G

A B C D E F G

1

A B C & &
≥1

F

&
&

≥1

F

D E F G

1

08:56:20

二、“或—与”电路变换为“或非—或非”电路
例 F = (A + B)(C + D)(E + H + G) = (A + B)(C + D)(E + H + G) (原函数二次求反)

= (A + B)+(C+D)+(E +H+ G)

(运用反演规则)

= (A + B) ?(C + D) ? (E +H+ G) (运用反演规则)
A B C D E F G A B &

≥1

≥1

≥1

F

C D E F G

≥1

&

F

≥1

≥1

08:56:20

三、“与—或”电路变换为“与或非”电路
例 F =AC + AB (图a) = AC + AB (原函数二次求反) (图b) F = AC + AB = (A + C)(A + B) = AB + AC F = AB + AC (图c)
A B 1 & A (运用反演规则) B &

1
C

?1

F

(c)

A B 1 & 1
?1

?1
1 & C 1

F

1

F

(a)

C

1

(b)

08:56:20

四、减少集成块的数量(P104) Reduce the Numbers of IC
目前采用的小规模门电路SSI是把几个相同的门封 装在同一个集成块中,在逻辑电路中使用的SSI的数目 越少,则电路的印刷电路扳的面积、功耗、总成本越小, 而可靠性越高。 所以,减少SSI的数目是化简的最终目标。 在实际统计中,对SSI的计算与分立元件的计算不一 样。例: F = x y + x y x y + x y x y
1 2 2 2 2 1 1 2 2 1 1

教材图3.31

F2 = x2y2 + x2y2x1y1 + x2y2x1y1 F3 = x2y2x1y1 + x2y2x1y1 + x2y2x1y1 + x2y2x1y1

结论:门的数目最少与所用集成电路块的 SSI 器 件: 4与非(×9):74LS20—4输入双与非门(×5) 数量最少并不完全等同! 3与非(×2):74LS10—3输入三与非门(×1)
2与非(×2):用上面74LS20或10剩余的一个与非门

分立元件: 非(×4) 2与(×2)4与(×8)3或(×2)4或(×1)

08:56:20

3.4 组合电路中的竞争与险象 Timing Races and Hazards
在前面的分析中我们仅考虑了输入输出信号在稳定状态下的逻 辑关系;而在实际电路中,信号的变化不是即时的,有一定的边沿时 间,信号在电路中传送必定有导线上的传播时延,信号通过门电路也 必定有时间延迟(模拟特性)。

例 信号边沿及门的时延产生的尖峰脉冲
A
1

A
≥1

A

F

A F

A
F

td

A

A 与A信号的边沿时 再考虑门的传播延迟 间使 F中产生幅度较 时间 td 越大,则F 中 这种尖脉冲不是 当输入信号变化后的一小段时间内,输入输出信号之间的关系 脉冲宽度越大危 逻辑表达式预期 小、宽度较窄的负尖 出现的脉冲将越宽 害越大,应该找 不一定符合逻辑表达式所描述的逻辑状态。 的,但实际电路 到形成原因及抑 峰脉冲 中是可能存在的。
制的办法。

08:56:20

上述这些时延都可能使电路的输出产生错误的信号。 为简化讨论,下面假设信号变化的边沿时间为0,仅考虑 门的时延td(Delays) 。

3.4.1 竞争现象
? 同一信号或同时变化的某些信号,经过不同路径到达某

一点(集成电路的引脚)时有时差,这种现象称为竞争。
电路中出现的一种危险现象!

? 险象一定是竞争的结果。造成错误输出的竞争称之为临 界竞争,对于未产生错误输出的竞争称之为非临界竞争。 例 出现竞争的电路图和时间图

08:56:20

例 F = AC + BC 且 A = B = 1(仅考虑信号C的影响)

A
C
1 &

AC
C
&
≥1

F

A B C
C

H H

B

BC

BC

AC
F

险象仅是一个短暂的窄脉冲,在组合电路中不一定会造成严重后果

08:56:20

3.4.2 险象 Hazard
由于临界竞争的存在,在输出端得到稳定输出之 前,输出中有一短暂的错误输出(干扰),这种现象 称之为险象。通常将险象分为静态险象和动态险象两 种类型。

一、静态险象( Static Hazards )
在输入信号变化时,按逻辑表达式的输出不应有 变化的情况下,实际上会在输出端产生一个“1”或“0” 的窄脉冲的情况,则称之为静态险象。
1. 静态险象 按输入同时变化的信号数量分类

⑴ 功能险象 ⑵ 逻辑险象

08:56:20

(1) 功能险象

产生的条件:

① 有K(K >1)个信号同时发生变化;

② 变化的K个变量组合所对应的2k个mi中必定既有1,
又有0; ③ 输入变量变化前后的稳态输出相同。

例 如图所示 F =AC + BC, 设 A=1 当 BC :00 →11 时,F应当恒为1
情况一:ABC:100 →110 →111 则 F: 1 →1 →1 无险象 情况二:ABC:100 →101 →111 则 F: 1 →0 →1 有险象
1 1 1 1 B A C

1
C

& AC
?1

F

&
BC

08:56:20

(1) 功能险象

产生的条件:

① 有K(K >1)个信号同时发生变化; ② 变化的K个变量组合所对应的2k个mi中必定既有1, 又有0; ③ 输入变量变化前后的稳态输出相同。

例 如图3.38所示 F=AC + BC, 设 A=1 当 BC :00 →11 时,F应当恒为1
情况一:ABC:100 →110 →111 则 F: 1 →1 →1 无险象 情况二:ABC:100 →101 →111 则 F: 1 →0 →1 有险象
AB

C
1 1

1 1 1

1

功能险象是逻辑函数所固 功能险象是由于变化的输 有的,它无法用改变设计 入信号快慢不一致,因而 的方法消除,只能通过控 导致了信号间的竞争,一 制输入信号的变化次序来 旦满足条件②、③则出现 避免。 现象。

满足条件②

08:56:20

(2) 逻辑险象

产生的条件:

① 仅有一个输入信号发生变化; ② 输入变量变化前后的稳态输出相同。 例 如图所示 F = AC+BC,当 A = B = 1,F= C + C ≡1。 实际上 当 C: 1 → 0 时 F 产生险象。
A C
1 &

A

B C
C
?1

AC
C
&

F

BC AC

B

F
BC

08:56:20

总之,静态逻辑险象的产生是: 由于同一个输入信号经过不同的路径又汇合到同 一个门上的竞争所引起的。

变化的变量所对应的卡诺图上的2个单元全为1 或者全为0,这与功能险象不同!
1 1 1 1
全为1

08:56:20

2. 静态险象 按输出变化分类
(1) 静态 1 险象

在电路中,若输入信号变化前后,稳定状态的输出 均为1,且在1的输出上出现一个负向窄脉冲,则该险象 称为静态 1 险象,如前例所示 ;
(2)静态 0 险象

反之若稳态输出为0,且在0的输出上出现一个正 向窄脉冲,则该险象称为静态 0 险象,如下例所示。

08:56:20

例 具有静态 0 险象的电路及时间图 如图所示 F= (A + B + C)(C + D)(B + D) 当 A = B = D = 0 时,则 F=C·C ≡ 0

实际上,当 C :0 → 1 时,F 产生静态 0 险象。
A B C D
1 1
≥1

P1

C
≥1

P2

&

F

A B D C C P1

≥1

1

P3

P2 F

08:56:20

情况二:当 A = 0 且 C = D = 1 时,则 F= B· ≡ 0 B 实际上,当 B :0 → 1 时,F 产生静态 0 险象。
A B C D
1 1 1
?1 ?1

P1

P2

&

F

A C D B

?1

P3 B

B P1 P
3

F

08:56:20

情况三:A = C = 0 且 B = 1 时, 则 F = D· ≡ 0 D 实际上,当 D :0 → 1 时,F 产生静态 0 险象。
A B C D
1 1 1
?1

?1

P1

P2

&

F

A B C D

D
?1

D P2
P3

P3

F

08:56:20

二、动态险象 ( Ddynamic Hazards )
定义:在组合电路中,若输入信号变化前后的稳态输出不 同,且在输出稳定之前,输出要变化三次,其间经过暂时 状态01或者10 (出现1-0-1-0或0-1-0-1) ,这种险象称之 为动态险象。 产生条件:在多级组合逻辑电路中,若输入信号的变化通 过多条路径向输出端会合时,输入信号变化的第一次会合 只可能产生静态险象,只有在产生了静态险象,输入信号 变化的再一次会合,才有可能产生动态险象(即在两级与 或电路和两级或与电路中不会产生动态险象!)。动态险 象是由静态险象引起的,它也是竞争的结果。 消除了静态险象,则动态险象也不会出现。

动态?是指输入信号变化前后的稳态输出值不同!

08:56:20

例 F = (A+B) (B+C) + B 当 A =C =0 时 F = BB + B
A B
≥1

P1
&

P3
≥1

C
1

B

≥1

F

P2

B B P1 P2 P3

静态 险象

F

08:56:20

3.4.3 险象的判别 Finding Static Hazards
一、卡诺图判别法 Using Maps
用卡诺图可以判别出两级与或电路和或与电路是 否存在静态险象。

⒈ 静态 1 险象判别

? 在两级与或电路或两级“与非—与非”电路中只可能
出现静态 1 险象。 ? 在卡诺图中,与或式中的每个与项对应于圈1的一个

卡诺圈,如果两个卡诺圈存在着部分相切,而这个
相切的部分又没有被另外的卡诺圈所包含,则该电 路必然存在静态 1 险象。

08:56:20

例 静态 1 险象的判别与消除电路
F = AC + BC 当 A = B = 1 时
A C
1

AC
&

C
&

≥1

F

B

BC

C AB
1 1 1 1

两圈相切于变量C的交替面, 当C由1→0时,BC先由1 →0而 AC尚未由0 →1,使F产生一个 负向脉冲

08:56:20

例 静态 1 险象的判别与消除电路
F = AC + BC 当 A = B = 1 时
A C
1
&

AC C
&
≥1

A

AC
1
&

F

C B

C
&

≥1

F

BC

B

BC

&

AB

C AB
1 1 1 1

增加与项AB,当AB=11时,无论

C 如何变化,使输出F总是1,从 而消除了静态险象。

08:56:20

⒉ 静态 0 险象判别
? 在两级或与电路或两级“或非—或非”电路中只可 能

出现静态 0 险象。 ? 在卡诺图中,按照圈0单元的卡诺圈是否存在着部分 相切,而这个相切的部分又没有被另外的卡诺圈所 包含,则该电路必然存在静态 0 险象。

例 如图所示电路

F = (A+B+C) (C+D) (B+D)

08:56:20

F = (A+B+C) (C+D) (B+D) 静态 0 险象的判别与消除电路
AB CD 0 0 0 0 0 0 0 0 0
D
1

0

A B

≥1

P1

C

1
≥1

P2

&

F

D
≥1

两圈相切于在变量D的交替面 两圈相切于在变量C的交替面 两圈相切于在变量B的交替面

1

P3

有三处相切,对应着三个静态0险象;分别增加三个卡诺圈, 使输出F总是0,从而消除险象。

F = (A+B+C) (C+D) (B+D) (A+B+D) (A+C+D) (B+C)

08:56:20

二、逻辑表达式判别法
如果电路中存在出现险象的可能性,其逻辑表达 式有如下特点: ⑴ 当某一变量同时以原变量和反变量的形式出现在逻 辑表达式中,则该变量就具备了竞争的条件。 ⑵ 保留被研究变量,消去其他变量(其他变量取某些定 值,这些定值是被研究变量产生竞争的条件)。 ⑶ 若得到的表达式为下列形式之一,则有险象存在:

08:56:20

有险象存在的表达式形式
F = A + A —— 静态 1 险象(如A从1→0) F = A · —— 静态 0 险象(如A从0→1) A A · + A) (A F= A · + A) (A —— 动态险象

A+A· A
A+A· A

例1 F = AC + BC 式中变量 C 具备竞争条件 当 AB = 11时,C从 1→0 ,产生静态 1 险象 例2 F =AC + BC + AB 式中变量 C 具备竞争条件 但当 AB = 11时,F≡ 1,不存在险象

08:56:20

有险象存在的表达式形式(续)
例3 F =(A+B+C) (C+D) (B+D)

① 变量 B 具备竞争条件:当 ACD = 011时 F =B · 存在静态0险象 B ② 变量 C 具备竞争条件:当 ABD = 000时 F =C · 存在静态0险象 C ③ 变量 D 具备竞争条件:当 BC = 10时 F =D · 存在静态0险象 D
例4 F = (A + B)(B + C) + B 式中变量B具备竞争条件,当 AC=00时, F=B · B+B 即 B 从0→1,输出 F 出现动态险象; B 从1→0,输出 F 不产生险象。

08:56:20

3.4.4 险象的消除 Designing Hazard-free circuit
消除险象的方法主要有: 一、增加多余项(与项)或乘以多余因子(或项)消除 逻辑险象

例 F = ACD + BC + BD
将相切的部分均用多余的 卡诺圈包含起来,则可消 除静态 1 险象,得到:

AB CD 1 1 1 1

1
1 1

1
1 1

F = ACD + BC + BD + ABD + ABC + CD

08:56:20

二、在输出端连接低通环节以减弱干扰
用低通滤波电路滤掉窄脉冲干扰,但将使输出 变化的上升、下级沿增大,降低工作速度也使信号 质量变坏。

V1

R

C

V2

08:56:20

三、利用取样脉冲避开险象
A B
& & &

P1 F

B B P1

C SP

&

P2

P2 F

改电平控制为脉冲控制。
在特定的电路系统中采 用的方法。在一般的组合电 路中慎用。

B

B
SP P1

P2
F

H

08:56:20

3.5 常用MSI组合逻辑器件及应用
集成电路是采用半导体制作工艺,在一块较小的单 晶硅片上制作上许多晶体管及电阻器、电容器等元器件, 并按照多层布线或隧道布线的方法将各元器件组合成完 整的电子电路。按功能分为数字集成电路和模拟集成电 路两大类。

08:56:20

数字集成电路分类 按规模:SSI,MSI,LSI,VLSI 按工艺:TTL,CMOS,ECL
1 小规模集成电路SSI(Small Scale Integration):

含逻辑门个数小于10(12) 门
2 中规模集成电路MSI(Medium Scale Integration):

含逻辑门数为10(12)门~99门
3 大规模集成电路LSI(Large Scale Integration): 含逻辑门数为100门~9999门 4 超大规模集成电路VLSI(Very Large Scale Integration): 含逻辑门数大于10000 门

08:56:20

数字集成电路按制造工艺可分为TTL数字集成 电路、CMOS数字集成电路和ECL数字集成电路, 它们的逻辑电平不同。较常用的是TTL数字集成电 路和CMOS数字集成电路。 (1)TTL数字集成电路:TTL电路是晶体管- 晶体管逻辑电路的英文缩写。TTL数字集成电路 属于双极型晶体管集成电路,它又分为N-TTL、 LS-TTL、ALS-TTL、AS-TTL、S-TTL等多种,其工 作频率低于100MHz。

常用的TTL数字集成电路有74LS××系列、 74S××系列、74ALS××系列、74AS××系列 和74F××系列等。

08:56:20

典型的TTL中速与非门电路

08:56:20

六次光刻、四次扩散、氧化制成的 双极型集成电路芯片结构
双极型集成电路是在平面晶体管基础上发展起 来的,它的基本工艺仍然是平面工艺。但由于 电路中除有晶体管外,还要集成二极管、电阻、 电容等元器件,因而在制造过程中首先要把各 种元器件做在一块基片上,并使它们相互绝缘, 最后再按要求将它们连成电路。从制造工艺上 看,它与平面晶体管的不同,仅是增加了隔离 工艺和埋层工艺。

08:56:20

(2)CMOS数字集成电路:CMOS电路是互补

型金属氧化物半导体电路的英文缩写。CMOS数 字集成电路属于单极型晶体管集成电路,其工作 频率低于100kHz。它有多种类型,但最常见的是 门电路。CMOS门电路中的逻辑门有非门、与门、 与非门、或非门、或门、异或门、异或非门(同 或门)、施密特触发门、缓冲器、驱动器等。 常用的CMOS数字集成电路有4000B系列、 40H××系列(TC40H××、LR40H××、 LS40H××、CC40H××)、74HC××系列等。

08:56:20

CMOS反向器电路基本结构示意图

08:56:20

CMOS反相器的芯片结构示意图

08:56:20

国产TTL和MOS电路主要参数

08:56:20

集成电路制造流程

08:56:20

08:56:20

集成电路封装形式
DIP (Dual Inline Package) BGA (Ball Grid Array Package) SDIP PLCC (Plastic Leaded Chip Carrier)

SOP

QFP (Plastic Quad Flat Package)

Socket423

LCC (Leadless Ceramic Chip)

LQFP

08:56:20

集成电路封装形式

08:56:20

集成电路封装形式

08:56:20

集成电路封装形式

08:56:20

08:56:20

08:56:20

?

?

?

? ?

78系列三端集成稳压器又分为78L××、 78M××、78N××、78××、78S××、 78H××和78T××七个系列。它们的内部电路 结构相同,只是输出电流及封装形式等有所差 异。 78L××系列集成稳压器的输出电流为100mA或 150mA(不同厂家的产品参数不同),输出电 压有+5V、+6V、+8V、+9V、+10V、+ 12V、+15V、+18V、+20V、+24V。其输出 电压用“L”后面的“××”表示。例如:78L05 为100mA(或150mA)、5V三端集成稳压器, 78L12为100mA(或150mA)、12V三端集成稳 压器。该系列集成稳压器一般采用TO-92变型 塑料封装或TO-39金属壳封装。 78M××系列集成稳压器的输出电流为500mA, 输出电压与78L××系列相同。其输出电压用 “M”后面的“××”表示,例如:78M06为 500mA、6V三端集成稳压器,78M15为 500mA、15V三端集成稳压器。该系列集成稳 压器一般采用TO-202、TO-220塑料封装(自 带小型散热片)。 78N××系列集成稳压器的输出电流为500mA 或1A,输出电压与78L××系列相同,输出电压 用“N”后面的“××”表示。 78××系列集成稳压器的输出电流为1A或1.5A, 输出电压与78L××系列相同,输出电压用 “××”表示,例如:7805为1A(或1.5A)、 5V

08:56:20

08:56:20

例:CT74LS00P CT 74 LS

00

P
封装形式 P:塑料双列直插 封装器件种类:四2输入与非门

器件系列:低功耗肖特基74TTL电路系列 产品系列 74系列 制造厂商 CT:国产TTL电路 CT74LS00P为国产的(采用塑料双列直插封装) TTL 四2输入与非门。

08:56:20

TTL74/54系列数字集成电路型号的组成及符号的意义
第1部 第2部分 分 产品系列 前缀 符 号 54 代表 制造 厂商 意义 符号 意义 标准电路 第3部分 器件类型 第4 部分 器件 功能 符 号 第5部分 器件封装形式、 温度范围 意 符 义 号 W 意义 陶瓷扁平

军用 电路 H -55- +125oC S LS 民用 通用 电路 ALS AS

高速电路
肖特基电路 低功耗 肖特基电路 先进低功耗 肖特基电路 先进 肖特基电路

74

阿 拉 伯 数 字

器 B 件 功 F 能 D
P

塑封扁平
全密封扁平 陶瓷双列直插 塑封双列直插

08:56:20

3.5.1 译码器 Decoders

译码器的一般结构如图所示:
? 一般译码器输入端数n
输入 编码字 译码器

总是小于输出端数m; ? 输入编码为n位二进制 编码; ? 一个n位字表示 2n 个 不 同的编码值,通常为: 0~( 2n -1)。有时编 码值可以少于 2n 个。

映射

输出 编码字

使能 输入

08:56:20

一、二进制译码器原理 Binary Decoder Circuit Structures

最常用的译码器是二进制译码器。又称为n- 2n译码器。 其中:输入编码为n位二进制数;

输出编码为2n 位,称为2n取1码(one hot)。
换句话说,译码器输出为2n个最小项 (最小项发生器)。

08:56:20

例 2-4 译码器
输入代码字: I0 输入使能:EN
、I1

真值表

输出代码字:Y0 Y1 Y2 Y3
功能描述:当 EN = 1 且输入代码字是i的二进制表示, 则输出码字Y中的Yi (i为十进制数) 位为1,其他位均为0。
I0 2-4 译码器 Y0 I1 Y1 EN Y2 Y3

输 入 输 出 EN I1 I0 Y3 Y2 Y1 Y0 0 d d 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1 1 1 0 0 0

I0

1

& &

Y0 Y1 Y2 Y3

I1

1

&
&

逻辑框图

逻辑图

EN

08:56:20

二、MSI译码器
1.双2-4译码器74LS139
输 入 /G B A 输 出 /Y3 /Y2 /Y1 /Y0
/1G
1

&

/Y0 /Y1
/Y2 /Y3

&

&

1 0 0 0 0

d 0 0 1 1

d 0 1 0 1

1 1 1 1 0

1 1 1 0 1

1 1 0 1 1

1 0 1 1 1

1A 1B

1 1

1 & 1

74LS139
注意A,B的顺序 注意A,B的顺序
1 2 3 15

1G

1A
1B

1Y0 1Y1 1Y2 1Y3

4 5 6 7

2G
2A 2B

逻辑符号

14

13

2Y0 11 2Y1 10 2Y2 9 2Y3

12

08:56:20

2.

3-8 译码器74LS138
输 出 /Y4 /Y3 /Y2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1

74LS138真值表
G1 0 d d 1 1 1 1 1 1 1 1

输 入 /G2A /G2B C d d d 1 d d d 1 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1

B d d d 0 0 1 1 0 0 1 1

A d d d 0 1 0 1 0 1 0 1

/Y7 /Y6 /Y5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 1

/Y1 1 1 1 1 0 1 1 1 1 1 1

/Y0 1 1 1 0 1 1 1 1 1 1 1

08:56:20

&

/Y0 /Y1 /Y2 /Y3 /Y4 /Y5 /Y6 /Y7
6 4 5

74LS138
G1 G2A G2B A B C Y0 15 Y1 14 Y2 13 12 Y3 Y4 11 Y5 10 Y6 9 Y7 7

G1 /G2A /G2B

1

& & &

1 2

&

3

&

逻辑符号

&
1 1 1 1

A B C

&

1 1

&

08:56:20

译码器74LS138的使用要点
? 74LS138的输出信号为低有效,它有三个 使能端输入端(G1、/G2A、/G2B),只 有在三个使能输入全部有效时,才能有 正确的有效输出。 ? 74LS138的内部功能可用逻辑表达式描述 如下: Yi = G1 ? G2A ? G2B ? mi 其中,Yi为内部输出编码字的第i位, mi为输入变量C、B、A的最小项。 ? 74LS138 外部信号之间的关系为: / Yi = G1 ? /G2A ? /G2B ? mi
74LS138
6 4
5

G1 G2A G2B A B C

1 2 3

Y0 15 Y1 14 Y2 13 12 Y3 Y4 11 Y5 10 Y6 9 Y7 7

逻辑符号

08:56:20

3. BCD译码器74LS49 (Severn-segment Decoders)
74LS49是常用的一种BCD码至七段数码管显示码的MSI器 件,它的输入编码为4位的BCD码,输出为7位编码字。

a
f g e d b
C

七段显示器件结构

08:56:20

补充:七段字符显示器
a、b、c、d、e、f、g为七段发光二极管 ,D.P也是发光二极管,表示小数点。
1 2 3 4 5
a f g e d b
C
D.P

10 9 8 7 6

08:56:20

七段字符显示器的内部结构:
① 共阴极
D.P

7

10

a

9 8 5 b c d

4 e

2 f

3 g

1,6

公共阴极 使用时,公共阴极接地,各阳极接控制信号。当控制信号为高 电平时,对应段发光;低电平时不发光。 ② 共阳极
7
D.P

10

a

9 8 5 4 2 3 b c d e f g

1,6

公共阳极 使用时,公共阳极接高电平,各阴极接控制信号。当控制信号 为低电平时,对应段发光;高电平时不发光。

08:56:20

08:56:20

08:56:20

输 /BI D 0 d 0 1 0 1 1 0 2 1 0 3 1 0 4 1 0 5 1 0 6 1 0 7 1 0 8 1 1 9 1 1 1 1 1 1 1 1 1 1 1 1 1 1

入 C B d d 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1

A d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

a 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 0

输 出 b c d e 0 0 0 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 0 1 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0

f 0 1 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0

g 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0

74LS49 真值表

a f g e d b
C

08:56:20

⒈ 74LS49七段译码器的逻辑图 参见书P118图3.51。 ⒉ 逻辑符号
74LS49
3

BI

a b c

11 10 9 8 6 13

5

A B C D

1
2 4

d e f g

12

08:56:20

设计BCD七段数码显示译码器
a

输入信号:BCD码的排列顺序为 DCBA 输出信号:控制数码管发光的信号 a、b、c、d、e、f、g

f g e d
C

b

7
D.P

10

a

9 8 5 4 2 3 b c d e f g
1,6
公共阴极

7 10 9 8 5 4 2 3 a b c d e f g D.P

1,6

公共阳极

08:56:20

由真值表填出卡诺图
1 1 1 1 a 1 1 d d d d d 1 1 d d 1 d d 1 1 1 1 1 1 b 1 d 1 d d f
a f g e d b
C

真值表 如下所示:
1 1 d d c 1 1 d 1 1 1 1 1 1 1 1 d d d d 1 1 d d

1 1

d d d d

1
1 1 1

d
d d 1 1

d
d d

1
1

d
d d

1
d d

d
d d d 1 d

e
1 1 d d g

1 1

输入 DCBA 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1

输 出 a b c d e f g 1 1 1 1 1 1 0 0 1 1 0 0 0 0 1 1 0 1 1 0 1 1 1 1 1 0 0 1 0 1 1 0 0 1 1 1 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 1 1 d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d

08:56:20

圈“0”,找出反函数的最小覆盖(为得到与电路对应的“或与”式)
DC BA 1 d 1 1 1 d 1 1 1 d 1 1 d 1

1
1 1 a 1

d
d d

1
d d

1
1 1 b 1

d
d d

1
d d

1
1

1
1 1 c

d
d d

1
d d 1 1

1

d
d d d

1 d

d

1

d
d d

1

1

1

d

1

1

d

1

1
d d 1

d
d d

1
d d 1 1

1

d
d

1
d d

1

1

d

1

d

e

f

g

08:56:20

由卡诺图写出表达式,如下:
DC BA 1 1 1 1 1 d d d d 1 1 d d 1 1 1 1 1 1 d d d d 1 1 d d 1 1 1 1 1 1 1 d d d d 1 1 d d

a

b

c

a = CA + DCBA + DB a = (C + A)( D + C + B + A) (D + B)

b = CBA + CBA + DB b = (C + B + A)(C + B + A) (D + B)
c = CBA + DC c = (C + B + A)(D + C)

08:56:20

由卡诺图写出表达式,如下:
DC BA 1 1 1 1 1 d d d d d d 1 1 1 1 d d d d d d 1 1 1 1 1 d d d d 1 1 d d 1 1 1 1 1 d d d d 1 1 d d

d

e

f

g

d = CBA + CBA + CBA d = (C + B + A)(C + B + A) (C + B + A)

e = A + CB e = A( C + B)

f = BA + CB + DCA f = (B + A)(C + B)(D + C + A)

g = CBA + DCB g = (C + B + A)(D + C + B)

08:56:20

思考:二、当给74LS49输入1010—1111组合时,显示 的数字是什么?
由卡诺图填出真值表的无关项部分,如下所示:
/BI 10 1 11 1 12 1 13 1 14 1 15 1 输 D 1 1 1 1 1 1 入 C B A 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 a 0 d 0 d 0 d 1 d 0 d 0 d b 0 d 0 d 1 d 0 d 0 d 0 d
10

输 出 c d e 0 1 1 d d d 1 1 0 d d d 0 0 0 d d d 0 1 0 d d d 0 1 1 d d d 0 0 0 d d d
11 12

f 0 d 0 d 1 d 1 d 1 d 0 d

g 1 d 1 d 1 d 1 d 1 d 0 d
13 14 15

显示的数字分别是:

08:56:20

思考:重新设计74LS49,使数字6和9带头尾, 如图所示。并判断此设计影响非十进制 1010——1111输入的显示吗?
a a

6

d
DC BA

9
1 1
1 1 1 1 a

d

d d
d d

1 1
d d

1 1
1 1 1 d

d d
d d

1
1 d d

a = CBA + DCBA + DB d = CBA + CBA + DCBA 设计不影响非十进制数的显示。

08:56:20

3-8译码器 LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY decode3_8 IS PORT(a,b,c : IN STD_LOGIC; g1,g2a,g2b : IN STD_LOGIC; y : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END decode3_8;

08:56:20

ARCHITECTURE rtl OF decoder3_8 IS SIGNAL ind : STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN ind <= c&b&a; PROCESS (ind,g1,g2a,g2b) BEGIN IF (g1='1' and g2a='0' and g2b='0') THEN CASE ind IS WHEN "000" => y<="11111110"; WHEN "001" => y<="11111101"; WHEN "010" => y<="11111011"; WHEN "011" => y<="11110111"; WHEN "100" => y<="11101111"; WHEN "101" => y<="11011111"; WHEN "110" => y<="10111111"; WHEN "111" => y<="01111111"; WHEN OTHERS => y<="XXXXXXXX"; END CASE; ELSE y<=“11111111"; END IF; END PROCESS; END rtl;

08:56:20

三 、二进制译码器的级联

Cascading Binary Decoders
当输入变量数 n大于器件的输入变量数时,可以 用多个二进制译码器的级联来实现。

例 用两个 3-8 译码器组成 4-16 译码器。

08:56:20

+5V

用两片74LS138 U1和U2级联起来, 见左图。 ①将输入的最高位 N3分别接到U1的 /G2A及U2 的G1; ②整个级联电路的 使能输入/EN分别 接到U1 的/ G2B和 U2的/ G2A 引脚上。

R

74LS138
G1 G2A G2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC0

N0 N1 N2 N3 /EN

A B C

/DEC1 /DEC2 /DEC3 /DEC4 /DEC5
/DEC6 /DEC7

U1
74LS138
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC8 /DEC9 /DEC10 /DEC11 /DEC12 /DEC13 /DEC14 /DEC15

U2

08:56:20

当 /EN = 0时 ①若N3 = 0 则U2的输出无效(输出1), U1的输出为 按N2N1N0译码: /DECi = mi (i=0~7) ②若N3 = 1 则U1的输出无效(输出1), U2的输出为 按N2N1N0译码: /DECi = mi ( i = 8 ~ 15 )

+5V
R

74LS138
G1 G2A G2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC0

N0 N1 N2 N3 /EN

A B C

/DEC1 /DEC2 /DEC3 /DEC4 /DEC5 /DEC6 /DEC7

U1
74LS138
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC8 /DEC9 /DEC10 /DEC11 /DEC12 /DEC13 /DEC14 /DEC15

U2

08:56:20 +5V R

74LS138
G1 G2A G2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC0 /DEC1 /DEC2 /DEC3 /DEC4 /DEC5 /DEC6 /DEC7

总的级联译码器的输 出逻辑表达式为:

/DECi = /EN + mi
i = 0 ~ 15 式中 :mi 为 N3N2N1N0 的对应最小项。

N0 N1 N2 N3 /EN

A B C

U1 74LS138
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
/DEC8 /DEC9 /DEC10 /DEC11 /DEC12 /DEC13 /DEC14 /DEC15

U2

08:56:20

EN1 /EN2 ? 74LS139 /EN3 N3 N4
1G 1A 1B 1Y2 1Y3 1Y0

74LS138
/EN0 ~7 /EN8 ~15 /EN16 ~23 /EN24 ~31
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 /DEC0 /DEC1 /DEC2 /DEC3 /DEC4 /DEC5 /DEC6 /DEC7

1Y1

U1
N0 N1 N2

U2
74LS138
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

此图为树形结构的5-32译码器。 ① 将输入的高位地址N4N3作为片选信号 通过139译码后分别接到U2 ~U5的/G2A; ②将输入的低位地址N2N1N0作为片内信 号分别接到U2 ~U5的地址端CBA。

/DEC24 /DEC25 /DEC26 /DEC27 /DEC28 /DEC29 /DEC30 /DEC31

U5

08:56:20

总的级联译码器的输出逻辑表达式为:
/DECi = EN1 + /EN2 + /EN3 + mi i = 0 ~ 31

式中 mi 为 N4N3N2N1N0 的对应最小项。
此例中的树形结构又称为二级译码,速度较 前例 4-16 译码器的一级译码要慢。 当 n数更大时,可以采用树形结构的多级译 码方案。 例 用3-8译码器设计一个 9-512 二进制译码器。
9-512
9
译码器

512

1+8+64

08:56:20

四、MSI二进制译码器应用举例 (Decoder Applications)
⒈ 用二进制译码器实现组合逻辑函数 (Implementing Logic Functions Using Decoders) 因为 n-2n 二进制译码器的输出对应于 n 变量 函数的 2n 个最小项,所以可以借用此器件来 实现任何组合逻辑函数。

08:56:20

例1 用译码器74LS138实现 F(x,y,z) = ∑m(1,4,6,7)
逻辑图如下所示:
+5V

R

74LS138
G1 G2A G2B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

74LS20 F &

z y x

B C

08:56:20

例2 设计一个一位全加器。
设:输入端分别为:被加数输入xi、加数输入yi 、 低位向本位的进位输入Ci-1 输出端分别为:本位的和输出Si 本位向高位的进位输出Ci 则一位全加器的真值表如下所示。
Ci-1xi yi 0 0 0 0 1 1 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 Si Ci 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1

由真值表得到 Si = ∑m3(1,2,4,7)

Ci = ∑m3(3,5,6,7)

08:56:20

由一片74LS138和一片74LS20组成的一位全加器。
+5V

74LS138
R
G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

? 74LS20

≥1

si

xi yi Ci-1

? 74LS20 ≥1

ci

一位全加器逻辑图

08:56:20

⒉ 将译码器作为数据分配器(Demultiplexers)
⑴ 数据分配器(多路信号分离器、多路输出选择器)工作原理 下图所示为四路数据分配器的等效说明电路和逻辑符号。
在数据传输过 程中,常常需 要将一路数据 分配到多个装 臵之一中去, 执行这种功能 的电路叫数据 分配器。

Y3

Y2 Y1

Y0
Y3 Y2 Y1 Y0

A1 A0

I

I

等效电路

逻辑符号

08:56:20

四输出多路分配器逻辑电路图
右图中: I: 传送数据
Y3 Y2 Y1 Y0

输入端; A1,A0:地址码 输入端; y3,y2,y1,y0:输出的 数据通道。 这种分配器 被称为“1--4多路 分配器”。

&
A1

&

&

&

1

1

A0

1

1

逻辑 电路图

1

I

一般表达式为:yi = I 其中下标 i为地址码An-1……A0的十进制 值。

08:56:20

⑵ 用二进制译码器作为数据分配器
例1 用1/2 74LS139作为四输出数据分配器。 ? 将使能端G 作为数据输入端,即 I 接至G端; ? 将数据输入端作为地址输入端,即A端接地址A0 位;B端接地址A1位。 则: /yi = I i为地址码A1A0的十进制数
74LS139

I
A0 A1

1G 1A 1B 2G 2A 2B

1Y0 1Y1 1Y2 1Y3

/y0 /y1 /y2 /y3

数据输出

2Y0 2Y1 2Y2 2Y3

08:56:20

例2 用74LS138作为八输出数据分配器
? 将G作为数据输入端,G2A、G2A端接地; ? 将数据端CBA分别接地址码A2A1A0位。 则: yi = I i为地址码A2A1A0的十进制数; /yi = I
I
74LS138
G1 G2A G2B +5V
/y0 /y1 I /y2 /y3

74LS138
Y0 Y1 Y2 Y3 数据输出 Y4 A Y5 Y6 B Y7 C
G1 G2A G2B

A0 A1 A2

A B C

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

A0 A1 A2

数据输出

1-16与1-64的数据分配器如何设计呢?

08:56:20

3.5.2

编码器 Encoders

当译码器的输出编码位数少于输入编码位数时, 这种器件称为编码器。 通用结构如图所示,其中输入端为2n 个,输出 为 n 位二进制数,因此它的输入输出关系正好与译 码器的相反。 约束条件:同一时刻只能有一个输入端有效。
二进制 编码器
2n位输入
I0 I1 y 0 y
1

n位输出

I2n-1

y

n-1

二进制编码器原理图

08:56:20

例: 一个8位输入、3位输出的编码器如图所示。
这是一个8-3二进制编码器。输入: I0 ~ I7,输出: Y0 ~ Y2 ① 简化真值表
I7 0 0 0 0 0 0 0 1 I6 I5 I4 I3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 I2 I1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 I0 Y2 Y1 Y0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1

② 输出函数表达式

Y0 = I 1 + I 3 + I 5 + I 7 Y1 = I 2 + I 3 + I 6 + I 7 Y2 = I 4 + I 5 + I 6 + I 7
当且仅当输入代码中的 一位为 1时 ,输出编码 才不可能重复。
注意此真值 表的画法!

08:56:20

③逻辑电路图
I0 I1 I2 I3
?1

④ 逻辑符号
Y0

?1

Y1

I4 I5 I6 I7

8-3 编码器 I0 I1 Y0 I2 I3 Y1 I4 Y2 I5 I6 I7

?1

Y2

Ii与Yj之间的关系:使Yj 为 1 的是那些Ii ,其下标 i 的二进制数的第 j 位均为1。

例 Y1 = I2+I3+I6+I7 即 Y1 = I010+I011+I110+I111

08:56:20

思考题:设计十进制数字键盘的编码器 说明:采用74LS147

08:56:20

8-3 优先权编码器 结构框图如下所示:
设 优先权为:I7(最高) →I6 → I5 → I4 → I3 → I2 → I1 → I0

I7
I6

I0

优 先 权 处 理 逻 辑

H7 H6

8-3 二进制 编码器

A2 A1 A0

H0

EI I7 I6 I5 I4 I3 I2 I1 I0

A2 A1 A0
EO

逻辑符号

08:56:20

① 优先权处理逻辑
设 优先权为:I7(最高) →I6 → I5 → I4 → I3 → I2 → I1 → I0 输入信号经优先权处理逻辑处理得到中间信号: H7、H6、 H5、 H4、 H3、 H2、 H1、 H0 Hi 与Ii的关系是:当 Ii 是最高优先权且为 1 时,Hi 才为 1。 即: ②输出编码为: H7 = I7 A2 = H 4 + H 5 + H 6 + H 7 H6 = I7 I6 A1 = H2 + H3 + H6 + H7 H5 = I7 I6 I5 A0 = H1 + H3 + H5 + H7 H4 = I7 I6 I5 I4 从上式很容易看出:如果有多 H3 = I7 I6 I5 I4 I3 个输入请求有效,若 Ii 为其中 H2 = I7 I6 I5 I4 I3 I2 优先权最高者,则输出编码必 H1 = I7 I6 I5 I4 I3 I2 I1 定对应 Ii 的下标量。 H0 = I7 I6 I5 I4 I3 I2 I1 I0

08:56:20

③ 输出函数表达式
A2 = H4 + H5 + H6 + H7 = I7 I6 I5 I4 + I7 I6 I5 + I7 I6 + I7 = I4 + I5 + I6 + I7 A1 = H2 + H3 + H6 + H7 = I7 I6 I5 I4 I3 I2 + I7 I6 I5 I4 I3 + I7 I6 + I7 = I5 I4 I2 + I5 I4 I3 + I6 + I7 A0 = H1 + H3 + H5 + H7 = I7 I6 I5 I4 I3 I2 I1 + I7 I6 I5 I4 I3 + I7 I6 I5 + I7 = I6 I4 I2 I1 + I6 I4 I3 + I6 I5 + I7

④ 输出使能为:EO = I0 + I1 + …+ I7

08:56:20

例 MSI优先权编码器 74LS148 逻辑符号如右图所示:

74LS148
EI I7 I6 I5 I4 I3 I2 I1 I0
A2 A1 A0
GS EO

逻辑图见P126的图3.60

逻辑符号

08:56:20

简化真值表

1 0 d d d d d d d d


d d d 0 1 1 1 1 1 d d 0 1 1 1 1 1 1 d d d 0

输 1 0 1 0 1 0

出 1 0 1 1

/EI /I0 /I1 /I2 /I3 /I4 /I5 /I6 /I7

/A2 /A1 /A0 /GS /EO

0
0 0 0 0 0 0 0

d

d

d
d d d 0 1 1 1

d
d d 0 1 1 1 1

d d

0
1 1 1 1 1 1

1
1 1 1 1 1 1

d d d d d d d d d 0 1 0 1 1

1 1

0 0 0 1 1 1 1 1

0 1 1 0 0 1 1 1

1 0 1 0 1 0 1 1

0 0 0 0 0 0 0 1

1 1 1 1 1 1 1 0

08:56:20

优先权编码器的级联
若需要输入端 n>8 的编码器,则可用多片74LS148 级联起来。如用4片74LS148级联成的 32-5 优先权编码 器,希望同学们认真阅读,尤其是要注意输出逻辑表达 式的构成: RA2 = G3A2 + G2A2 + G1A2 + G0A2 片内编码 RA1 = G3A1 + G2A1 + G1A1 + G0A1 A2A1A0 RA0 = G3A0 + G2A0 + G1A0 + G0A0 构成 RA4 = G3GS + G2GS RA3 = G3GS + G1GS 片间 GS 编码构成

08:56:20

74LS148
/REQ31 /REQ30 /REQ24

EI I7 I6 I0 EI I7 I6 I0 EI I7 I6

A2 A1 A0
GS EO

/G3A2 /G3A1 /G3A0 /G3GS

≥1

RA4

U3
A2 A1 A0
GS EO
/G2A1 /G2A0 /G2GS /G2A2

≥1

RA3

/REQ23 /REQ22

≥1

RA2

/REQ16

U2
A2 A1 A0 GS EO
/G1A2 /G1A1 /G1A0 /G1GS

≥1

/REQ15 /REQ14 /REQ8

RA1

I0
EI I7 I6 I0

U1
A2 A1 A0 GS EO
/G0A2 /G0A1 /G0A0 /G0GS

≥1

RA0

/REQ7 /REQ6 /REQ0

≥1

RGS

U0

08:56:20

优先权编码器应用举例
在多处理器系统中,需对各处理器争用总线作出 仲裁。
–为提高仲裁速度,通常采用并行优先权仲裁方式。 –在争用总线的各处理器进行优先权分配后,通过优先 权编码器和译码器进行裁决。

逻辑电路图参见书P128图3.62。

08:56:20

3.5.3 三态缓冲器 Three-State Buffers

三态是指器件的输出有三种状态:即逻辑0 (L电 平)、逻辑1 (H电平)和高阻抗状态(或悬浮态)。最基 本的三态器件是三态缓冲器,又称为三态门或三态 驱动器。 三态缓冲器可使多个源数据分时共享一根公用 线,为了避免多个源数据同时驱动共享线,则不能 在使能一个源数据的同时使能另一个源数据。

08:56:20

三态缓冲器逻辑符号
矩形符号

1
EN

1
EN

1
EN

1
EN

变形符号

原码输出

原码输出

反码输出

反码输出

高有效使能 低有效使能

高有效使能

低有效使能

08:56:20

常用逻辑门的两种表示形式 电路名称 跟随器 非 门 与 门 或 门 与非门 或非门 与或非门 原符号
1 1 &
≥1

变形符号

&
≥1 & ≥1

异或门

=1

08:56:20

三态输出门(低使能的与非门)
三态输出门又称三态电路。它与一般门电路不同,它的输出端除了出现 高电平、低电平外,还可以出现第三个状态,即高阻态,亦称禁止态,但并 不是3个逻辑值电路。 三态逻辑与非门如图Z1123所示。这个电路实际上是由两个与非门加上一 个二极管D2组成。虚线右半部分是一个带有源泄放电路的与非门,称为数据 传输部分,T5管的uI1、uI2称为数据输入端。而虚线左半部分是状态控制部分, 它是个非门,它的输入端C称为控制端,或称许可输入端、使能端。 当C端接低电平时,T4输出一个高电平给T5 ,使虚线右半部分处于工作状态, 这样,电路将按与非关系把uI1, uI2接受到的信号传送到输出端, 使uo或为 高电平,或为低电平。当C端接高电平时,T4输出低电平给T5,使 T6、T7、 T10 截止。另一方面,通过D2把T8的基极电位钳在1v左右,使T9截止。由于 T9、T10均截止,从输出端u0看进去,电路处于高阻状态。

?

来自: http://www.highwaydata.com.cn/cecweb/d o/encyclopedia/viewcontext?eid=2&tid=70 2

08:56:20

8 个数据源共享一根数据线
如何传数?

P
74LS138
EN1 /EN2 /EN3 SSRC0 SSRC1 SSRC2 G1 G2A G2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 /SELP /SELQ /SELR /SELS /SELT /SELU /SELV /SELW

Q R

S
T U V

A
B C

P130页图3.65 三态共享 线的时间图要能读懂!

W

SDATA

08:56:20

一、标准的SSI及MSI三态缓冲器
最常使用共享线的场合是多位数据总线。

例如:在8位微处理机系统中,数据总线的宽度是8位,
并且外围器件通常一次将8位数据放臵到总线上。

这样外围器件都在同一时刻使能8个三态缓冲器,
因此独立的使能输入端都多余了。为减少总线应用 中三态缓冲器的芯片数及连线,MSI三态缓冲器中 包含多个三态缓冲器并共用使能输入信号。

08:56:20

MSI 74LS541为八三态缓冲器
/G1 /G
2

74LS541
Y1 Y2
Y3 Y4 Y5 Y6 Y7 Y8
G1 G2 A1 A2 A3 A4 A5 A6 A7 A8 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8

A1 A2 A3

A4
A5 A6 A7 A8

08:56:20

08:56:20

08:56:20

二、 MSI 三态缓冲器的应用举例 ⒈ 多端口输入
D0 D1 D2 D3 D4 D5 D6 D7

READ INSEL1 INSEL2
INSEL3

用户 输入

G1 74LS541 G2 Y1 A1 Y2 A2 A3 Y3 Y4 A4 Y5 A5 Y6 A6 Y7 A7 Y8 A8 G1 G2

??? ??? ???

微处理器

DB [ 0~7 ]

???

用户 输入

A1 A2 A3 A4 A5 A6 A7 A8

Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8

08:56:20

⒉双向总线收发器 74LS245 八三态总线收发器
74LS245
G DIR A1 A2 A3 A4 A5 A6 A7 A8 B1 B2 B3 B4 B5

/G DIR A1 A2 A3 A4 A5 A6 A7

A→B B→A B1 B2 B3 B4 B5 B6 B7 B8

B6
B7 B8

A8

08:56:20

08:56:20

3.5.4 多路选择器 Multiplexer
多路选择器又称数据选择(复用)器, 是一个数字开关,也称多路开关,可以从 n 路源数据中选择一路送至输出端。 假设有 n 组(路)输入数据源,每组 数据源的宽度为 b 位二进制数,则反映输出 关系的框图及等效电路如下图所示。 其中高有效使能端EN的功能为: 当EN = 0 时,所有的输出为 0。

08:56:20

① 多路选择器的结构框图
使能 选择

② 多路选择器的等效功能
1D0

s
b b

EN SEL D0 D1 b 数 据 输 出

1D1
1Dn-1 2D0 2D1 2Dn-1

1Y



n组b位 数据源 b

2Y



Dn-1 bD0 bD1


bY
SEL EN



例 1KB RAM: b = 8 n = 1024 s = 10 n = 2s

bDn-1

08:56:20

③ 多路选择器输出逻辑表达式
从 n 组数据源中选择哪一组源数据传送到输出 端,由选择输入端的输入值 S 决定。 S 与 n 的关系为:n = 2s (或 S = log2n) S 位选择信号有 2s 种组合(即最小项)。每一种组 合对应选择 n ( = 2s )组输入源数据中的一组。逻辑表 达式为(参见教材P134): KY = ∑EN · i · i m KD
i=0

n-1

K = 1,2,…,b

式中:KY为输出位, KDi是第 i 组输入源数据的第K位, mi 是 S 位选择输入变量的最小项。

08:56:20

④ 1位多路选择器的原理图
EN D0
D1

&
&

?1

Y

Dn-1 m0 m1 S - n 二进制译码器 输入选择 S

& mn-1

08:56:20

④ 2位多路选择器的原理图
EN 1D0 1D1

&
&
?1

1Y

1Dn-1 输入选择 S

& m0 m0

m1
S - n 二进制译码器 m1 输入选择 & &

mn-1 mn-1

EN 2D0 2D1

?1

2Y

2Dn-1

&

08:56:20

一、标准的中规模多路选择器
⒈ 八输入 1 位输出多路选择器74LS151
–一个低有效使能输入端/EN –三个选择输入端C、B、A –8 个数据输入端 D7~D0 –2 个互反(补)输出端 Y、/Y ②逻辑符号
74LS151
EN A B C D0 D1 D2 D3 D4 D5 D6 D7

① 简化真值表
输 入 /EN C B A
1 d d d

输 出 Y
0

/Y
1

0
0 0
Y Y

0
0 0 0 1

0
0 1 1 0

0
1 0 1 0

Do
D1 D2 D3 D4

Do
D1 D2 D3 D4

0 0

0
0 0

1
1 1

0
1 1

1
0 1

D5
D6 D7

D5
D6 D7

08:56:20

③逻辑电路图
/EN D0 D1

D2
D3

D4
D5

Y /Y
请同学 们注意 此图!

D6
D7 A

B
C

08:56:20

⒉ 二输入 4 位多路选择器 74LS157
① 简化真值表
输 /G 1 0 0 入 S d 0 1 输 出 1Y 2Y 3Y 4Y 0 0 0 0 1A 2A 3A 4A 1B 2B 3B 4B

② 逻辑电路图
/G S 1A

1B
2A 2B 3A

1Y 2Y 3Y 4Y

③ 逻辑符号
G S 1A 1B 2A 2B 3A 3B 4A 4B 1Y 2Y 3Y 4Y

3B
4A 4B

08:56:20

⒊ 四输入 2 位多路选择器 74LS153

① 简化真值表
输 1 0 入 d d 0 0 输 1Y 0 出 2Y 0

② 逻辑符号
74LS153
A B 1G 1C0 1C1 1C2 1C3 2G 2C0 2C1 2C2 2C3 1Y 2Y

/1G /2G B A

1C0 2C0

0
0 0

0 1
1 0 1 1

1C1 2C1
1C2 2C2 1C3 2C3

08:56:20

⒊ 四输入 2 位多路选择器 74LS153(续)
① 简化真值表
A

③ 逻辑电路图
出 2Y





输 1Y

B /1G

/1G /2G B A

1
0 0 0

d d
0 0 0 1 1 0

0

0

1C0 2C0 1C1 2C1 1C2 2C2

1C0
1C1 1C2 1C3 /2G 2C0 2C1 2C2 2Y 1Y

0

1 1

1C3 2C3

2C3

08:56:20

⒋ 三态输出多路选择器
具有三态输出的多路选择器,当其使能输入无效

时,将强制输出端处于高阻抗。
有三态输出端的多路选择器的输出端可以直接连

接在一起(参见举例),使得用这种器件可以方便地组 成更大的多路选择器MUX
常用的这种器件有74LS251,74LS253和74LS257 等。

08:56:20

二、多路选择器的扩展

Expanding Multiplexers
1. 使用无三态输出的多路选择器及译码器
例:设计一个32输入 1 位多路选择器。
–5个选择输入:XA4~XA0 32路输入:X31~X0 –采用 4 个74LS151,每个器件可处理8个输入,这样将输入 分为4组,每组由一个74LS151处理 –选择输入的低三位XA2~XA0 连接到 4 个74LS151的C、B、 A端,决定组内选择

–选择输入的高二位XA4、XA3 通过一级2-4译码器1/2
74LS139产生 4 个输出,每个输出连接到一个74LS151的使 能输入端

08:56:20

用74LS151组成的 32输入 1 位多路选择器
74LS151
XA0 XA1 XA2
EN A B C ??? EN A B C ??? Y Y Y Y

X0

X7

74LS139
/XEN 1G 1A 1B

XA3 XA4

1Y0 1Y1 1Y2 1Y3

X8 X15

≥1
EN A B C ??? EN A B C ??? Y Y Y Y

XOUT

X16 X23

X24 X31

08:56:20

⒉ 使用三态输出的多路选择器及译码器
例:用74LS251设计一个32输入 1 位多路选择器。
? 当输出处于高阻态时,该输出线可以与其他输出线直接 连接在一起,并且不影响其他输出线的高、低电平。

? 在任意时刻只能有一个74LS251被74LS139使能,此时 输出线XOUT和/XOUT上的逻辑值就是该被使能的 74LS251的输出值
? 当输入使能/XEN无效时,所有74LS251的输出为高阻态, 输出线XOUT和/XOUT上的逻辑值不确定。

08:56:20

用74LS251组成的 32输入 1 位多路选择器
74LS251
XA0 XA1 XA2
EN A B C ??? EN A B C ??? Y Y Y Y

XOUT /XOUT

X0

X7

74LS139
/XEN 1G 1A 1B

XA3 XA4

1Y0 1Y1 1Y2 1Y3

X8 X15

X16 X23

EN A B C ??? EN A B C ???

Y Y

Y Y

X24 X31

08:56:20

⒊ 采用多级MUX的树形结构

? 将多路选择器MUX分级连接,低一级(前一级) MUX的输出作为其高一级(后一级) MUX的数据 输入; ? 用选择输入信号的低位控制低一级MUX,高位控 制高一级MUX; ? 各级的使能输入可以统一控制。 例:采用多级树形结构组成64输入 1 位多路选择器

08:56:20

64输入1位多路选择器
/EN

74LS151
XA0 XA1 XA2
选择 输入 信号 的低 位。 EN A B C D0 D7 EN A B C D0 D7 Y Y 选择 输入 信号 的高 位。

X0

??? ??? ???

X7

U1
Y Y

74LS151
EN A B C D0 D1 D7 Y Y

X8 X15

XA3 XA4 XA5 U2
???

XOUT
/XOUT U9

X56 X63

EN A B C D0 D7

???
Y Y 低一级(前 一级)

高一级 (后一级)

U8

08:56:20

三、用多路选择器实现任意组合逻辑函数
例1 F (x,y,z) = ∑ m3 (1,2,6,7) ① 选择 S = 3 的MUX 74LS151 ,把 x、y、z 分

别连到 74LS151 的 C、B、A 选择端,并使数据输
入端为:

D0 = D3 = D 4 = D5 = 0
D1 = D2 = D 6 = D7 = 1 则输出端Y的输出即为F。
试比较用译码器实现。
R

z y x

+5V

EN A B C D0 D1 D2 D3 D4 D5 D6 D7

Y Y

F

08:56:20

②用“四选1”多路选择器实现该三变量逻辑函数
将函数 F 改写成变量表达式:

F (x,y,z) = ∑ m3 (1,2,6,7) =x y z + xy z + x y z +x y z =x y z + x y z + x y =( x y ) ? z + (x y ) ? z + ( xy ) ? 0 + ( x y ) ?1
x、y作为地址选择变量,z、z、0、1作为MUX的 数据源接入到数据输入端D,则有: F = ∑mi Di
i=1 i=0 3

? 74LS153
A B 1G

y x z 1
+5V

= m0 D0 + m1 D1 + m2 D2 + m3D3 式中 mi 为x、y的最小项, Di为: D0 = z, D1 =z, D2 = 0, D3 = 1 电路逻辑图如图所示。

1C0 1C1 1C2

1Y

F

1C3

R

08:56:20

例2 F (x,y,z) = ∑m3 (1,2,3,6) 选用 4 输入 1 位多路选择器74LS153。 ① 列出函数F的真值表 mi m1 m2 m3 m6
卡诺图
降维图

x y 0 0 0 1 0 1 1 1
yx 0
0 1

z 1 0 1 0

Di D0=z D1 =1
z

? 74LS153
y x
A B 1G

1C0
1C1 1C2

D3=z

+5V
1

1Y

F

1C3

1

z 0 1 z

“Z”称为记图变量: 共有四种取值

根据74LS153 的真值表,可 得出输入选择 变量与所选数 据的卡诺图

B A
0 1

0

1

C0 C2 C1 C3

08:56:20

例2 F (x,y,z) = ∑m3 (1,2,3,6) ② 直接列出函数F的卡诺图
xy
z

1 1 m0 m1 m3 m2 1 1

? 74LS153
y x
A B 1G

D0 = z
D1 = 1
z

1C0

1Y

F

+5V
1

1C1
1C2 1C3

D2 = 0
D3 = z

08:56:20

例3 F(w,x,y,z) = ∑m4 (3,4,5,6,7,9,10,12,14,15)
①选择有三个输入选择变量的 8 输入 1 位多路选择器 74LS151。将w、x、y分别接入地址端,z 接入数据端。

wx
yz

1 1 m0 m2 m 6 m4 1 1

74LS151
y x w z
EN A B C D0 D1 D2 D3 D4 D5 D6 D7

1 1 1 m1 m3 m 7 m5 1 1 1
D0 = 0 D3 = 1 D1 = z D4 = z D2 = 1 D5 = z

Y
Y

F

1 + 5V

D6 = z

D7 = 1

试比较用译码器实现!

08:56:20

例3 F(w,x,y,z) = ∑m4 (3,4,5,6,7,9,10,12,14,15)
②选择4 输入 1 位多路选择器74LS153。 将w、x、y作为地址端,z 作为数据端。

wx
yz

74LS153
y x w z
A B 1G

1 1 m0 m2 m2 m0 1 1

1C0
1C1 1C2 1C3

1Y

1 1 1 m1 m3 m3 m1 1 1 1
当w=0 时:D0 = 0 D2 = 1 D1 = z D3 = 1

+5V
1 1

≥1

F

2G
2C0 2C1 2C2 2C3 2Y

当w=1 时:D0 = z D2 = z

D1 = z D3 = 1

08:56:20

四、多路选择器与多路分配器的配合应用
? 多路选择器从 n 个源数据中选择一个传送到总线上。 ? 数据分配器将接收从总线上传来的数据并分配给 m 个目的设备中的任意一个。
SRCDATA0 SRCDATA1 SRCDATA2

0 1 2

SRCDATAn-2 SRCDATAn-1

n-2 n-1 SH

n-1 多 路 选 择 器
S1

Y

I

数 据 多 路 分 配 器
SK

0 1 2

DSTDATA0 DSTDATA1 DSTDATA2

n-2 n-1 S1

DSTDATAm-2 DSTDATAm-1

SRCSELH-1~0

DSTSELK-1~0

08:56:20

? 课程实验 –联系教师:马晓龙老师 –地点:西一楼A段二楼,209房间 –电话:82668651/52-209

08:56:20

3.5.5 奇偶校验电路 Parity Circuit
一、异或运算及异或门

Exclusive-OR Operation & Exclusive-OR Gates
A⊕B = A⊕B =A⊕B =A⊕B
矩形符号 变形符号
=1 =1 =1 =1

A⊙B = A⊕B =A⊕B = A⊕B = A⊕B= A⊙B
矩形符号 变形符号
=1 =1 =1 =1

08:56:20

常用的小规模异或门: ① 2输入4异或门74LS86(74C86,74HC86,74HCT86)
74LS86 1A 1B 2A 2B 3A 3B 4A 4B

=1

1Y

=1

2Y

=1

3Y

1 2 3 4 5 6
7

1A 1B 1Y 2A 2B
2Y GND

Vcc 4B 4A 4Y 3B 3A 3Y

14 13 12 11 10 9 8

=1

4Y

(b) 引脚图

(a) 逻辑框图

08:56:20

08:56:20



集电极开路输出2输入4异或非门74LS266 (74C266, 74HC266)
74LS266 1A 1B 2A 2B =1 1Y

=1

2Y

3A 3B
4A 4B
输出限定符 号为OC符号

=1

1 2 3 4 5 6
7

1A 1B 1Y 2Y 2A
2B GND

3Y

Vcc 4B 4A 4Y 3Y 3B 3A

14 13 12 11 10 9 8

=1

(b)引脚图 4Y

(a) 逻辑框图 Open Collector(集电极开路) Open Drain (漏极开路)

08:56:20

? OC门的主要用途有以下3个方面: (1)实现与或非逻辑 用n个OC门实现与或非逻辑的电路如图Z1120所示。因为任 何一个门输入全为1时 其输出为零,而n个门的输出端又并接 在一起(线与),故输出Y=0, 即Y=A1B1+A2B2+……+AnBn,是与或非的逻辑功能。 (2)用做电平转换 在数字系统的接口部分常需要进行所示电平转换 这可用OC 门来实现.如图Z1121所示电路是用OC门把输出高电平变换为 10V的电路。 (3)用做驱动器 可以用OC门驱动指示灯 继电器等 其驱动指示灯的电路如图 Z1122所示。

08:56:20

将Rc 代替T4

与非门逻辑 将Rc放到电 路外面

08:56:20

二、奇偶校验电路 Parity Circuits

如果有 n 个输入变量X1,X2,… Xn 则表达式: F = X1⊕X2⊕ … ⊕ Xn 其逻辑功能为: 当输入变量为1的个数是奇数时,输出函数 F 为1 ; 当输入变量为1的个数是偶数时,输出函数 F 为0。 实现此功能的逻辑电路称为奇校验电路(偶校验电路?)。

08:56:20

例 两种奇校验电路。 x1 =1 x2 =1 x3 x4
???

=1

???
=1

xn
=1

F

(a)串行结构

x1 x2 x3 x4

=1 =1

??? ???

=1

F

xn-1 xn

=1 =1

偶校验电路形式?

(b)树形结构

08:56:20

三、奇偶校验电路应用举例
1. 检错 ( Error—Detecting ) 为了在数据的传输及存储中,检测出数据代码 的错误,可采用奇偶编码和校验,它是在数据代码 中增加一位奇偶校验位 P 后形成奇偶编(代)码。 根据数据代码中的有效信息位和校验位中 “1” 的总个数为奇数的称为奇校验Odd; “1” 的总个数为偶数的称为偶校验Even。

08:56:20

9 位奇偶发生器/检验器74LS280
74LS280有奇、偶校验两个输出,因此它既可用 做奇偶校验位发生器,也可用作奇偶编码的检验器。
A B C D E F G H I
=1

74LS280
=1 =1 =1

EVEN

=1

=1 1 =1 =1

=1

=1 ODD

A B C D E F G H I

EVEN
ODD

(a) 等效逻辑图

(b) 逻辑符号(框图)

请查一下芯片手册,了解其功能框图(了解延时!)

08:56:20

08:56:20

例 采用9位奇偶发生器/检验器(74LS280)实现 在数据传输过程中9位偶校验编码和检测电路
Send
74LS280

Receive

D7 D6 D5 D4 D3 D2 D1 D0

A B C D E F G H I

EVEN
ODD

D7 D6 D5 D4 D3 D2 D1 D0

74LS280

A B C D E F G H I

如何判错?
EVEN
ODD /ERROR

偶校验编码和检测

08:56:20

2. 纠错 (Error—Correcting)
在第一章中曾讨论了海明码的纠错原理。 如 8421海明码是一组 7 位编码。 设:这 7 位海明码为 D7 D6 D5 D4 D3 D2 D1 其中 :D7、D6、D5、D3是 4 位有效信息位,它们按 8421 码编码; D4、D2、D1是 3 位校验位。 则:校验和 S2、S1、S0 分别为: S2 = D7⊕D6 ⊕D5 ⊕D4 S1 = D7⊕D6 ⊕D3 ⊕D2 S0 = D7⊕D5 ⊕D3 ⊕D1 使用74ls280实现上述功能的电路图参见书P150 图3.93。

08:56:20

3.5.6 比较器 (Comparators)

比较器是对两个位数相同的二进制整数进行数值 比较,并判断其大小关系的逻辑器件。 比较大小关系有三种: 大于(>)、等于(=) 、小于( <)
相等比较的过程总是从高位开始比较,只有当同 位比较结果相等时,才进行低位比较。因此,两个一 位数的比较是整个比较器操作的基础。

08:56:20

一、相等的比较
判断两个一位二进制数是否相等,可用异或门 或异或非门实现之,其逻辑表达式为: NEQ = A ⊕ B /NEQ= A ⊕ B 对应的逻辑电路如图所示。
? 74LS86 A B =1 NEQ

? 74LS266 A B
=1 / NEQ

同理,异或门及异或非门也可以实现两个多位 数的比较。 注意取名!
注意OC门!
(P151)图3.95

08:56:20

例 四位二进制数的相等比较器。
NEQ = (A0⊕B0) + (A1⊕B1) + (A2⊕B2) + (A3⊕B3)

/NEQ = (A0⊕B0) + (A1⊕B1) + (A2⊕B2) + (A3⊕B3)
= (A0⊕B0) ? (A1⊕B1) ? (A2⊕B2) ? (A3⊕B3) NEQ对应的逻辑电路如下图所示。
A0 B0 A1 B1 A2 B2 A3 B3 =1 =1 =1 =1 NEQ0
?1

NEQ01
?1

NEQ1 NEQ2
?1

NEQ

NEQ23

NEQ3

/NEQ对应的 逻辑电路如 P151图3.94的 (d)子图! 该图利用了 oc门的线与 功能!

08:56:20

二、重复电路 Iterative Circuits
这是一种迭代设计Iterative Design。 串行重复(链形)电路是一种组合逻辑电路,它包 含几个同样的模块,每个模块有四种类型的输入和 输出: 基本输入、基本输出、级联输入、级联输出。 其中:最左边的级联输入称为边界输入, 最右边的级联输出称为边界输出。 即边界输入输出 Boundary I/O。 电路的一般结构如图所示(见下页)。

08:56:20

串行组合电路的一般结构如下:
基本输入
PI0 PI1 PIn-1

级联输入
PI C0 CI CO PO PO0 C1 PI CI CO PO PO1

级联输出
C2

???

Cn-1

PI CI CO PO POn-1 Cn

边界输入

边界输出

基本输出

串行电路非常适用于简单、重复运算的逻辑问题, 用串行重复电路可以组成串行比较器和串行加法器等。

08:56:20

串行电路的重复操作步骤如下:
⑴ ⑵ ⑶ ⑷ C0 臵初值,并臵下标 i 为0; 用Ci 和 PIi 运算得到 POi和 Ci +1 ; i + 1 → i; 如果 i 小于 n,返回步骤⑵。

在串行重复电路中,通过提供给各个模块基本 输入 PI0 ~ PIn-1 ,利用模块的串行级联完成步骤 ⑵~⑷的循环。 下面举例说明。

08:56:20

三、串行比较电路

Iterative Comparator Circuits
两个 n 位数:xi、yi ( i = 0,1, …,n-1) 相等比较 其中: x0、 y0 为最高位 假设每步比较的结果为EQi ( i = 0,1, …,n-1) 当第 i 次比较结果相等时,EQi = 1 则运算步骤为: ⑴ EQ0 臵初值 1,并使 i = 0; ⑵ 如果EQi 为 1,并且 xi 和 yi 相等,则 EQi+1 = 1; 否则,臵EQi+1 = 0; ⑶ i + 1 → i;

⑷ 如果 i < n,返回步骤⑵。

08:56:20

例 串行重复比较电路
串行比较电路只能判断二个 n 位数是否相等,但 不能判别谁大谁小。如图所示: ① 一位串行比较模块参见图(a)
x y
=1 (a) & EQO EQI

② 完整的 n 位串行比较电路参见图(b)
x0 y0
CMP

x1 y1
EQ1
CMP EQI EQO 比较模块

xn-1 yn-1
EQ2

EQ0

EQI EQO 比较模块

???

EQn-1

CMP EQI EQO 比较模块

EQn

(b)

08:56:20

四、超前电路 Lookahead Circuits
在串行电路中,由于每位的结果是逐级向前 传递,最终到达输出端,因而电路的延迟时间随 着位数 n 的增加而增大。 为了提高速度,采用超前电路。即各个模块 不产生级联信号而只产生供超前电路进行运算的 中间信号,由超前电路对这些中间信号同时进行 处理,从而产生输出结果。 超前电路框图参见下页图示。

08:56:20

超前电路框图如下:
基本输入
PI0 PI 模块 CPO PI1 PI 模块 CPO

???

CPO0
CPI0

CPO1
CPI1

???

C0
边界输入

CI CPO0 PO0

超前电路
CPO1 PO1

??? ???

与串行电路的区 别: ⒈ 各输入处理模 Pin-1 块间没有级联 信号; PI ⒉ 超前电路对所 模块 有输入处理模 块提供的中间 CPO 信号CPOi同时 CPOn-1 处理,提高了 CPIn-1 速度,也提高 了成本; Cn ⒊ 超前电路也有 CO 边界输出 边界输入C0和 CPOn-1 边界输出Cn, 使得此电路可 POn-1 以被串联成更 大的功能模块。

基本输出

08:56:20

例 超前相等比较器
基本输入: xi 和 yi CPQ = x ⊕ y i = 0,1, …,n-1 i i i 边界输入: EQ0 EQn = EQ0 ? CPQ0 ? CPQ1 ? … ? CPQn-1 (a) 边界输出: EQn = EQ0 + CPQ0 + CPQ1 + … + CPQn-1 (b) 中间变量: CPOi (i = 0,1, …,n-1)
EQ0 EQ0 =1 =1 /CPQ0 /CPQ1 1 =1 =1 CPQ0 CPQ1

x0 y0 x1 y1

&

EQn

x0 y0 x1 y1

&

EQn

??? xn-1 yn-1
=1 /CPQn-1

??? xn-1 yn-1
=1 CPQn-1

(a)与门实现

(b)或非门实现

08:56:20

五、MSI比较器
⒈ 四位比较器74LS85 ① 电路的逻辑符号
74LS85
ALTBIN AEQBIN AGTBIN A0 B0 A1 B1 A2 B2 A3 B3 ALTBOUT AEQBOUT AGTBOUT

② 输入处理模块的 逻辑框图
& Ai 1 & ?1 Bi 1 PEi PLi

&
& PGi

查一下此芯片的逻辑图! 与图3.99进行比对.

08:56:20

③ 逻辑表达式
四位比较器有四个输入处理模块,产生了 12个 中间变量,它们是: PG0=A0 B0 ; PG1=A1 B1 ; PE0= A0 ⊕ B0 ; PE1= A1 ⊕ B1 ; PL0=A0 B0 PL1=A1 B1

PG2=A2 B2 ;
PG3=A3 B3 ;

PE2= A2 ⊕ B2 ;
PE3= A3 ⊕ B3 ;

PL2=A2 B2
PL3=A3 B3

比较次序: A3 与 B3, A2 与 B2 , A1 与 B1 , A0 与 B0 , 最后是边界输入条件 ALTBIN、 AEQBIN、 AGTBIN。

08:56:20

四位比较器的输出逻辑表达式
AGTBOUT = (A>B) + (A=B) ?AGTBIN = PG3+PE3? PG2+ PE3? PE2? PG1 + PE3? PE2? PE1? PG0

+ PE3? PE2? PE1? PE0? AGTBIN
AEQBOUT = (A=B) ?AEQBIN = PE3? PE2? PE1? PE0? AEQBIN ALTBOUT = (A<B) + (A=B) ?ALTBIN = PL3+PE3? PL2+ PE3? PE2? PL1 + PE3? PE2? PE1? PL0

+ PE3? PE2? PE1? PE0? ALTBIN
④ 逻辑电路图

74LS85的逻辑图,参见书P156图3.99(c)。

08:56:20

⑥ 74LS85比较器的级联
例 用三个74LS85级联构成 12 位比较器(串联比较)。
+5V 74LS85
ALTBIN AEQBIN ALTBOUT AEQBOUT

比较两个n位二进制数: XD=XD11XD10…XD0 YD=YD11YD10…YD0
XLTY4 XEQY4 XGTY4 XD4 YD4 XD5 YD5 XD6 YD6 XD7 YD7

74LS85
ALTBIN AEQBIN ALTBOUT AEQBOUT

XLTY8 XEQY8

74LS85
ALTBIN AEQBIN ALTBOUT AEQBOUT

XLTY XEQY XGTY

XD0 XD1 YD1 XD2 YD2 XD3 YD3 YD0

AGTBIN

AGTBOUT

AGTBIN

AGTBOUT

A0 B0 A1 B1 A2 B2 A3 B3

A0 B0 A1 B1 A2 B2 A3 B3

XGTY8 AGTBIN XD8 A YD8 0 B0 XD9 A YD9 1 XD10 B1 YD10 A2 B2 XD11 A YD11 3 B3

AGTBOUT

XD[0~11] YD[0~11]

08:56:20

2、八位比较器74LS682
74LS682有两个低有效输出端: PEQQ(等于) 及 PGTQ(大于) 逻辑符号及各种条件输出如图所示。
P0 Q0 74LS682 P1 Q1

1 1

PEQQ( = ) PGTQ( >) PGTQ( ? ) / PEQQ( ≠ ) / PGTQ( ≯ )

PEQQ

?1
PGTQ

&
P7 Q7

PLTQ( < ) / PLTQ( ≮ )

&

08:56:20

3.5.7 加法器
一、 半加器和全加器 ⒈ 半加器的 HS 和 CO 的逻辑表达式为: HS = x⊕y = x ? y + x ? y CO = x ? y 逻辑符号如下图所示。
半加器
x
y

HS
CO

HS :本位和 CO:进位

08:56:20

⒉ 全加器
① 全加器的 本位和S 和向高位的进位Cout 的逻辑表 达式为: S = x⊕y ⊕Cin Cout = x ? y + x ? Cin + y ? Cin ② 逻辑符号如下图所示。
74LS183
全加器
S X Y Cin COut

用于级联时的全加器符号
X Cout S Y Cin

1A 1B 1Cn 1A 1B 1Cn

1∑ 1Cn+1

双一位 全加器

2∑ 2Cn+1

08:56:20

二、串行进位加法器(行波加法器)
n 个全加器级联,每个全加器处理两个一位二进 制数,则可以构成两个 n 位二进制数相加的加法器。 由于进位信号是一级一级地由低位向高位逐位产生, 故又称为行波加法器。
xn-1 yn-1
X Y Cin S

xn-2 yn-2
Cn-1
X Cout S Y Cin

x0 y0
Cn-2 C1
X Cout S Y Cin

Cn

Cout

???

C0

Sn-1

Sn-2

S0

08:56:20

串行进位加法器的特点
由于进位信号逐位产生,这种加法器速度很低。 最坏的情况是进位从最低位传送至最高位。行波加法

器的最大运算时间为:
TADD = TXYCOUT + (n-2) ? TCINCOUT + TCINS 其中:
TXYCOUT 是最低位全加器中由 x 和 y 产生进位 Cout 的延迟时间;
T CINCOUT 是中间位全加器中由 Cin 产生 Cout 的延迟时间;

TCINS 是最高位全加器中由 Cin产生 S 的延迟时间。

08:56:20

三、全减器及减法器

全减器是完成一位二进制减法运算的器件。 ? 三个输入端:被减数 x、减数 y 低位向本位的借位 Bin ? 两个输出端:本位的差 D 、本位向高位的借位 Bout
① 真值表如下:
x y Bin 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 D 0 1 1 0 1 0 0 1 Bout 0 1 1 1 0 0 0 1

② 卡诺图如下:
Bin xy Bin xy

1
1 1

1

1
1 1 1

D

Bout

08:56:20

③ 逻辑表达式为:

D = x⊕y ⊕Bin
Bout =x ? y +x ? Bin + y ? Bin
④ 逻辑符号
X Bout Y Bin

Bin

xy

1
1 1

1

Bin

xy

1
1 1 1

D

D 卡诺图

Bout

08:56:20

⑤ 用加法器实现减法器的功能
在实际应用中,是将全加器推演为全减器,则全 减器的逻辑表达式变换为: Bout =x ? y + x ? Bin + y ? Bin D =x⊕y ⊕Bin Bout =( x + y ) ? ( x +Bin ) ? ( y + Bin ) =x⊕y ⊕Bin =x ? y + x ? Bin + y ? Bin(如何得 到的?) X Y ? 将全加器的进位输入 Ci 和进位输出 Ci+1 分别看成是全减器的两个低有 效的借位输入 /bi 和借位输出 /bi+1 ? 全加器的和 Si 即为全减器的差 Di 则:D =x⊕y ⊕bi bi+1 =x ? y + x ? bi + y ? bi
Cout S
Cin

x
X

y
Y Cin
S

/bi+1

Cout

/bi

D

08:56:20

⑥ 按照补码运算规则,用加法运算实现减法运算: x - y = x + [-y]补 xn-1 xn-2 … x0 - yn-1 yn-2 … y0 = xn-1 xn-2 … x0 + [ 2n - yn-1 yn-2 … y0 ] = xn-1 xn-2 … x0 + yn-1 yn-2 … y0 + 1 该结果与前页讨论的一致。综上所述,如果要把 一个 n 位加法器用于 n 位减法器的功能,则只需将 减数变补,并把进位输入和进位输出分别当作一对 低有效的借位输入和借位输出即可。

08:56:20

⑦ n 位行波减法器
xn-1 yn-1
/bn
X Bout D Y Bin

xn-2 yn-2
/bn-1
X Bout D Y Bin

x0 y0
/bn-2 /b1
X Bout D Y Bin

???

/b0 = 1

dn-1

dn-2

d0

其中:最低位的借位输入应为无效,即/b0 = 1

/b0 = 0 ?

08:56:20

四、超前进位加法器
⒈ 超前进位加法器的结构框图如图所示:
xn-1 yn-1
X G P Y Cin

xn-2 yn-2
X G P Y Cin S

x0 y0
Cn-2
X Y Cin S

Cn-1

???

G P

C0

S

Sn-1
Gn-1 Pn-1
Cn-1 Gn-2 Pn-2

Sn-2
Cn-2
G0

S0
P0

Sn

Cn

超前进位发生器

08:56:20

⒉ 超前进位加法器的设计思想是:
由 n 个输入处理模块(完成1位数的加法运算)及 超前进位发生器组成。 ? 第 i 位的进位输入 Ci 是否为 1,直接取决于 x0~ xi-1, y0~ yi-1及 C0 ; ? 第 i 位是否产生进位输出 Ci+1(Ci+1= 1) ,直接取决于 x0~ xi,y0~ yi及 C0 。

由P162的图3.106,即

Cout = x ? y + ( x ⊕ y) ? Cin = G + P ? Cin

其中:输入处理模块产生两个中间变量,分别称为 进位产生项G、进位传递项P

则: Gi = xi ? yi Pi = x i ⊕ y i Ci+1 = Gi + Pi ? Ci

由两个半加器组成 的全加器。

08:56:20

⒊ 输入处理模块(由两个半加器组成的全加器)
输入处理模块的逻辑表达式为: 可以由二个半加器组成的一 个全加器构成输入处理模块, Si = xi⊕yi ⊕Cin 如下:

Cout = xi ? yi + (xi⊕yi) Cin = Gi + Pi ? Cin
xi
X

Pi Cin
xi yi
=1 =1

Si

yi
& Y Cin

&

Gi

G P S

Ci Gi

?1

Pi

Si

Cout

超前进 位电路

08:56:20

例:一个三位二进制加法的进位产生过程可写成:
C1 = G0 + P0 ? C0 C2 = G1 + P1 ? C1 = G1 + P1 ? (G0 + P0 ? C0) = G1 + P1 ? G0 + P1 ? P0 ? C0 C3 = G2 + P2 ? C2 = G2 + P2 ? (G1 + P1 ? G0 + P1 ? P0 ? C0) = G2 + P2 ? G1 + P2 ? P1 ? G0 + P2 ? P1 ? P0 ? C0 逻辑图参见书P163图3.107。 特点:所有进位都是同时产生的,故电路延时时间 与位数多少无关。在位数较多时其运算速度比行波 加法器的要快得多。

08:56:20

例 四位二进制加法的进位输出可写成:
C 1 = G 0 + P 0 ? C0 C 2 = G 1 + P 1 ? C1 = G1 + P1 ? (G0 + P0 ? C0) = G 1 + P1 ? G 0 + P1 ? P0 ? C0 C 3 = G 2 + P 2 ? C2 = G2 + P2 ? (G1 + P1 ? G0 + P1 ? P0 ? C0) = G 2 + P 2 ? G 1 + P 2 ? P 1 ? G 0 + P 2 ? P 1 ? P 0 ? C0 C 4 = G 3 + P 3 ? C3 = G3 + P3 ? (G2 + P2 ? G1 + P2 ? P1 ? G0 + P2 ? P1 ? P0 ? C0) = G 3 + P3 ? G 2 + P3 ? P2 ? G 1 + P3 ? P2 ? P 1 ? G 0 + P 3 ? P 2 ? P 1 ? P 0 ? C0

08:56:20

⒉ MSI加法器74LS283
这是一个快速进位四位二进制加法器。框图如下所示。 可以用74LS283级联构成 n 位加法器,级联方式为: ? 片内(4位)超前进位 ? 片间为行波进位
74LS283

例 设计一个十六位加法器。 框图参见书P163图3.108(b)。

学会该图中总线 数据表示方法!

C0 A0 B0 A1 B1 A2 B2 A3 B3

S0 S1 S2 S3 C4

08:56:20

五、MSI加法器的应用
例1 用MSI四位二进制加法器实现两个一位十进制 8421BCD码的加法器。 ? 一位8421BCD码所能表示的值是 0~9; ? 两个8421BCD码相加所得和的范围是0~18; ? 如果其和的范围在 0~9 之间,则不需要进行校正; ? 如果其和在 10~18 之间,则必须进行校正。
74LS283 0 A1 B1 A2 B2 A4 B4 A8 B8 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 S1 S2 S4

S8
C'4

修 S0 正 S 1 网 络 S2
S3 C4

S'1
S'2 S'4

S'8
C '4

C4

08:56:20

两个一位8421BCD码相加之和的校正表(0+0~9+9,再加进位)
十进 制数 未校正 BCD码和 校正的 BCD码和 十进 未校正 BCD码和 C4 S3 S2 S1 S0 校正的 BCD码和 C'4 S'3 S'2 S'1 S'0

C4 S3 S2 S1 S0 C'4 S'3 S'2 S'1 S'0 制数

0 1 2 3 4 5 6 7 8 9

0 0 0 0 0 0 0 0 1 1

0 0 0 0 1 1 1 1 0 0

0 0 1 1 0 0 1 1 0 0

0 1 0 1 0 1 0 1 0 1

0 0 0 0 0 0 0 0 1 1

0 0 0 0 1 1 1 1 0 0

0 0 1 1 0 0 1 1 0 0

0 1 0 1 0 1 0 1 0 1

10 11 12 13 14 15 16 17 18 19

1 1 1 1

1 1 1 1 1 1 0 0 0 0

0 0 1 1 1 1 0 0 0 0

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 1 1 1 1 1

0 0 0 0 0 0 0 0 1 1

0 0 0 0 1 1 1 1 0 0

0 0 1 1 0 0 1 1 0 0

0 1 0 1 0 1 0 1 0 1

C'4 = S3S2S1S0 + S3S2S1S0 + S3S2S1S0 + S3S2S1S0 + S3S2S1S0 + S3S2S1S0 + C4 = S3S1 + S3S2 + C4

08:56:20

两个一位8421码加法器的逻辑图
当和需要校正(即C4 ′= 1)时,则需作+0110(+6)校正。
y3 x3 y2 x2 y1 x1 y0 x0
B3 A 3 B2 A 2 B1 C4 C4 S3 S3 A 1 B0 A 0 S2 S2 S1 S1 S0 S0 C0

74LS283 C'4
1?

& &

B3 A 3 B2 A 2 B1 C4 S3 S2

A 1 B0 A 0 S1 S0

C0

74LS283

S'3 S'2

S'1

S'0

08:56:20

例2 用MSI四位二进制加法器实现两位8421BCD码 转换成二进制码
设:两位8421BCD码的高位为B80B40B20B10 低位为B8 B4 B2 B1 (0~99) 输出对应的二进制数为A7 A6 A5 A4 A3 A2 A1A0 (<127)
B80 B40 B20 B10 B8 B4 B2 B1

码 制 转 换

A7 A6 A5 A4 A3 A2 A1 A0

08:56:20

例2 用MSI四位二进制加法器实现两位8421BCD码 转换成二进制码
则:D = B80B40B20B10 B8B4B2B1 = (B80B40B20B10 ) ×101 + (B8B4B2B1 ) ×100 = (B80 ×8 + B40 ×4 + B20 × 2 + B10 ×1 ) ×101 + ( B×80 + B 4 × 4 ++ 2 × ×+ B1+ B ) ×100 2 20 ×1 ×10 8 × 8 + B ×40 B B =B
80 40 20 10

+ B8 × 8 + B4 × 4 + B2 × 2 + B1 ×1 = B80×(64+16) + B40×(32+8) + B20×(16+4) + B10×(8+2) + B8×8 + B4×4 + B2×2 + B1×1 = B80×26 + B40×25 + (B80 + B20)×24 + (B40 + B10 + B8)×23 + (B20 + B4)×22 + (B10 + B2)×21 + B1×20

08:56:20

由MSI器件构成的电路逻辑图
B80 B40 B8 B20 B4 B10 B2 B1

B3 A 3 B2 A 2 B1

A 1 B0 A 0 S2 S1 S0

C0

74LS283
C4 S3

B80

B40

B20

B10

B3 A 3 B2 A 2 B1

A 1 B0 A 0 S2 S1 S0

C0

74LS283
C4 S3

27

26

25

24

23

22

21

20

= B80×26 + B40×25 + (B80 + B20)×24 + (B40 + B10 + B8)×23 + (B20 + B4)×22 + (B10 + B2)×21 + B1×20

08:56:20

例3 用MSI四位二进制加法器实现码制转换。
⒈ 实现8421BCD码到余3码的转换。 设:输入为8421码A8A4A2A1 ,输出为余3码Y3Y2Y1Y0 从真值表可以看出:Y3Y2Y1Y0 = A8A4A2A1 + 3 (0011)
十进 制数 0 1 2 3 4 5 6 7 8 9 A8A4A2A1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 Y3Y2Y1Y0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0

电路图如下所示。
A8 A4 A2 A1
“1”

B3 A 3 B2 A 2 B1

A 1 B0 A 0 S2 S1 S0

C0

74LS283
C4 S3

Y3 Y2 Y1 Y0

08:56:20

⒉ 实现余3码到8421BCD码的转换。
设:输入为余3码Y3Y2Y1Y0 ,输出为8421码A8A4A2A1 则: A8A4A2A1 = Y3Y2Y1Y0 - 3 (- 0011) = Y3Y2Y1Y0 + 1101 电路图为:
Y8
“1”

Y4

Y2

Y1

B3 A 3 B2 A 2 B1

A 1 B0 A 0 S2 S1 S0

C0

74LS283
C4 S3

A3 A2 A1 A0

08:56:20

第三章 习题
3.5 3.8 3.10 3.21 3.23 3.29 3.6 3.9 3.12 3.22 3.26 3.30

3.16

补充题:采用74LS147设计一个十进制数字 键盘编码器。

08:56:20

2.7 用反演法求下列函数的反函数
(2)F=AB+(A+B)(C+D+E)
F=(A+B)· CDE AB·

× ×

原因:或运算?与运算
F=(A+B)· AB+CDE

原因:不能改变运算的优先级

正确答案:

F=(A+B)(AB+CDE)

08:56:20

2.8写出下列各式的对偶式 (5) F=(A+B)+(C+D)+(E+H)+(J+K) F’=AB CD EH JK (6) F=X2(X1⊕X0)+X2(X1 ⊕ X0) F’=(X2+X1⊙X0)(X2+X1⊙ X0) 注意:在本题中,应直接根据对偶法则,求出函数F的对偶 式。很多同学对F先进行了化简,然后再求化简后表达式的 对偶式,在作业批改中,没有当作错误答案对待。但是这 是不符合题目要求的做法。

08:56:20

2.18 用卡诺图化简下列各式为最简与或式
(2)F=∑m4(1,4,5,6,7,9,14,15)
a b

0

4 1

12

8

1 1
3 2

5 1
7 1 6 1
d

13
15 1 14 1

9 1
11 10
c

注:卡诺 圈之间是 可重叠的

错误:F=a+b+c=AB+ABC+BCD

正确:F=a+b+d=AB+BC+BCD

08:56:20

(5)F=∏M(1,7,9,13,15)

0 1 1 3 1 2 1

4 1 5 1 7 6 1

12 1 8 1 13 15 14 1 9 11 1 10 1

注:必须保证 选出的每一个 卡诺圈是极大 圈

错误:F=ABC+BC+CD+CD 正确:F=ABC+BC+D

思考:什么是极大圈? 质蕴涵?

08:56:20

2.20 将题中的各式化简为最简与或式 (5)F=∑m(3,5,6,7,13)+d(1,2,4,12,15)
d

b

0 1 d
a

4 d 5 1
7 1 6 1

12 d 8 13 1
15 d 14

9
11 10
c

注意:最小覆盖 与最简表达式的 对应关系
思考:什么是最小覆盖?

3 1 2 d

错误:F=a+b+c+d 错误:F=a+b+c 错误:F=a+b+d 正确:F=a+b=AC+BC F=a+c=AC+BD

08:56:20

2.26 如果输入只有原变量而无反变量,用代数法或禁止法 将下列函数用最少的与非门实现,画出逻辑图
注意题目要求:1 无反变量 即:不能出现 A 、B、 C

2 用与非门实现
(1)F=ABC+ABC =ACBC+ABBC
A & &

=ACBC ABBC
&

&

F

B & &

C

参见教材:P51-P61!


相关文章:
matlab R2012a课后习题答案第三章
matlab R2012a课后习题答案第三章_理学_高等教育_教育专区。第3章 数值数组及其运算习题 3 及解答 1 要求在闭区间 [0,2? ] 上产生具有 10 个等距采样点的...
宿迁首席质量官考题2012第三章试卷
宿迁首席质量官考题2012第三章试卷_中考_初中教育_教育专区。考题——第三章内容一、单选题(每题 2 分,共 24 分) 1. 现有三台机器生产同规格的铝合金薄板,...
2012年第三章营业税法律
2012第三章营业税法律_财会/金融考试_资格考试/认证_教育专区。第三章 营业税法律制度本章考情分析 最近 2 年本章的考试分值均为 17 分,均涉及不定项选择...
2012浙教版七年级科学第三章教案
2012 浙教版七年级科学第三章教案 3.1 地球的形状和内部结构 一、教材分析:对...(小结) 项目 界线 南、北半球 赤道(0°纬线) 东、西半球 20°W、160°E ...
2012新人教版七上《第三章 一元一次方程》word全章教案...
2012新人教版七上《第三章 一元一次方程》word全章教案.doc_数学_初中教育_教育专区。新人教版七年级上学期数学 第三章 教学内容 一元一次方程 概述 本章主要...
财教第三章整理2012
财教第三章整理 2012-4-13 筹资规模的确定方法-销售百分比法 股票筹资的优缺点 债券发行价格的确定模型 融资租赁的特点及租金的确定模式 放弃现金折扣的机会成本的...
2012年第三章_ 营业税法律制度(完整版)
2012第三章_ 营业税法律制度(完整版) 隐藏>> http://www.topsage.com/ 第三章 营业税法律制度本章考情分析 在最近 2 年的考试中,本章的平均分值为 17...
2012年报关员资格考试第三章课后练习题及答案
2012 年报关员资格考试第三章课后练习题及答案一、 选择题(下列题中,有单选,有多选,集中在一起,增加难度) 1. 下列不属于海关监管货物的是( ) A 一般进出口...
第三章司马迁与史记2012.9.
第三章司马迁与史记2012.9._文学研究_人文社科_专业资料 暂无评价|0人阅读|0次下载|举报文档 第三章司马迁与史记2012.9._文学研究_人文社科_专业资料。中国古代...
2012财经法规第三章
2012财经法规第三章_财会/金融考试_资格考试/认证_教育专区 暂无评价|0人阅读|0次下载|举报文档 2012财经法规第三章_财会/金融考试_资格考试/认证_教育专区。第...
更多相关标签: