3986.net
小网站 大容量 大智慧
当前位置:首页 >> 数学 >>

数字逻辑电路与系统设计第三章27页PPT_图文

第3章 组合逻辑电路

组合逻辑电路: 电路在任一时刻的输出状态仅由该 时刻的输入信号决定,与电路在此信号输入之前的状态无 关.

n个输入 ...

组合电路

...

m个输出

3.2 组合逻辑电路的分析 3.2.1 分析方法 分析步骤:
(1) 根据逻辑电路图,写出输出逻辑函数表达式; (2) 根据逻辑表达式,列出真值表; (3) 由真值表或表达式分析电路功能.

例: 分析下图所示逻辑电路 真值表:

& P2

ABC F

000 1

A B

P1

&

& P3

≥1 F

001 0 010 0

C

011 0

& P4

100 0

101 0

F=P2+P3+P4 =(A+B+C)·ABC P2=A·P1 =ABC+ABC

110 0 111 1

P3=B·P1 P4=C·P1

逻辑功能: 一致电路

P1=ABC

3.3 组合逻辑电路设计 一般步骤:
(1) 由实际逻辑问题列出真值表; (2) 由真值表写出逻辑表达式; (3) 化简、变换输出逻辑表达式; (4) 画出逻辑图。

例: 试用与非门设计一个三变量表决电路,表决规则为少 数服从多数.
解: (1) 列真值表 设: 由A、B、C表示三个输入变量,F表示表决结果。并 设A、B、C为1表示赞成,为0表示反对;F为1表示表决 通过,为0 表示不通过。

ABC F 000 0 001 0 010 0 011 1 100 0 101 1 110 1 111 1
F=AB+AC+BC
=AB·AC·BC

(2) 化简、求最简函数表达式

BC A

00

01 11

10

0

1

1

11 1

(3) 画出电路图 F
&

&

&

&

A

B

C

例:设计一个8421BCD码(表示一位十进制数N) 监视器,监视8421BCD码的传输情况。当传输的数 N≥4时,监视器输出为1,否则输出为0.
解:用ABCD表示8421BCD码输入,用F表示输 出。列出真值表: A B C D F A B C D F
0000 0 1000 1
0001 0 1001 1 0010 0 1010× 0011 0 1011× 0100 1 1100× 0101 1 1101× 0110 1 1110× 0111 1 1111×

ABCD F ABCD F 0000 0 1000 1 0001 0 1001 1 0010 0 1010× 0011 0 1011× 0100 1 1100× 0101 1 1101× 0110 1 1110× 0111 1 1111×
F(A,B,C,D)=A+B

CD AB 00 01 11 10
00 0 0 0 0
01 1 1 1 1 11 × × × × 10 1 1 × ×

A

≥1

F

B

电路的逻辑图

例 设计一个两位二进制数比较器。
解 设被比较的数分别为 A=A1A0,B=B1B0;比较的结果 为:A1A0>B1B0时,输出F1=1; A1A0=B1B0时,输 出F2=1; A1A0<B1B0时,输出F3=1.

列真值表:
A1 A0 B1 B0 F1 F2 F3 A1 A0 B1 B0 F1 F2 F3 00000101000100 00010011001100 00100011010010 00110011011001 01001001100100 01010101101100 01100011110100 01110011111010

画卡诺图化简:

F1=A1B1+A1A0B0+A0B1B0

B1B0

F1

A1A0 00 01 11 10

00

01 1

11 1 1

1

10 1 1

F2=A1A0B1B0+ A1A0B1B0 + A1A0B1B0 + A1A0B1B0

B1B0 A1A0 00 01 11 10
00 1

01
F2
11 10

1 1 1

F3=A1B1+A1A0B0+A0B1B0

B1B0 A1A0 00 01 11 10

00

1 11

01
F3 11

11

10

1

按F1、F2和F3表达式 可方便地用门电路实现 比较器的逻辑功能。

3.4 组合逻辑电路中的冒险 前面分析组合逻辑电路时,没有考虑门电路的延迟时 间对电路的影响。实际上,由于门电路延迟时间的关系, 可能会使逻辑电路产生错误输出。通常把这种现象称为 竞争冒险。

产生冒险的原因
A
以例说明
A A F
造成冒险的原因是由于A和 A到达或门的时间不同。

≥1 F=A+A=1 理想情况
1
实际情况

再举一例

A

A

& AC

B

≥1 F=AC+BC C

C

1

C

&

B

BC

(分析中略去与门和或门的延时) AC

BC
产生冒险的原因之一 :

电路存在由非门产生的互补信 F

号,且互补信号的状态发生变化

时有可能出现冒险现象。

毛刺

消去冒险的方法
1. 发现并消去互补变量 例如:F=(A+B)(A+C) 在B=C=0时,F=AA. 若直接根 据这个逻辑表达式组成电路,就可能出现冒险。
将上式写成:F=AC+AB+BC, 已将AA去掉,则不会出 现冒险。
2. 增加乘积项
例如:F=AC+BC, 当A=B=1时,F=C+C. 若直接根据 这个逻辑表达式组成电路,就可能出现冒险。

将上式写成: F=AC+BC+AB, 这样,当A=B=1时,不 会出现F=C+C,所以C状态的变化,不会影响输出。
3. 输出端并联电容器
如果逻辑电路在较慢速度下工作,为了消去冒险,可 以在输出端并联一电容,其容量在4~20pF之间,该电容 和门的输出电阻构成RC低通网络,对窄脉冲起平滑作用。

3.5 可编程逻辑器件和VHDL概述
利用可编程逻辑器件(PLD,Programmable Logic Device)来实现电路的设计
硬件描述语言(HDL,HardwareDescription Language)就是可以描述硬件电路的功能
VHDL是应用最为广泛的国际标准电子设计语言

3.5.1 VHDL基本结构 硬件描述语言的基本格式包括两个要素
输入、输出的定义(即输入、输出说明) 对输出如何响应输入的定义(工作原理)
对应逻辑符号的描述部分:实体(Entity) 对应逻辑关系的说明部分:结构体(Architecture)

VHDL硬件描述语言基础
VHDL 语言的基本结构
以二输入端与门为例,该文件名为:and_gate.vhd

库 程序包
实体

Library IEEE; use IEEE.std_logic_1164.all;
entity and_gate is port(a,b: IN BIT; y: out BIT);
end and_gate;

architecture rhl of and_gate is
结构体 begin
y<=a and b; end rhl;
注意:VHDL 对大小写不敏感,‘’和“”中的内容除外。

3.5.2 VHDL中的中间信号

电路模块内部的信号点,不是模块的输入也不是输出

中间信号

a b

& m ≥1

y

c

与输入输出端口分开定义,在逻辑功能描述部分定义 仅在一个模块内部有效

1 ENTITY fig2 IS

2 PORT(a,b,c : IN BIT;

3

y: OUT BIT);

4 END fig2;

5 ARCHITECTURE ckt OF fig2 IS

6

SIGNAL m :BIT; SIGNAL是关键字,定义m为中间信号

7 BEGIN

8

m<=a AND b;

并行赋值语句

9

y<=m OR c;

10 END ckt;

3.5.3 VHDL描述逻辑电路的进程形式

进程语句(PROCESS)是VHDL常用的子结构描述语句 以2输入与非门为例:

1 LIBRARY IEEE;

库说明语句

2 USE IEEE.STD_LOGIC _1164.ALL; 使用包集合的说明语句

3 ENTITY nand2 IS

4 PORT(a,b: IN STD_LOGIC;

5

y: OUT STD_LOGIC);

6 END nand2;

实体描述部分

7 ARCHITECTURE nand2_l OF nand2 IS 结构体描述部分

8 BEGIN

9 PROCESS (a,b)

PROCESS (敏感信号表)

敏感信号参数a和b

10 VARIABLE tmp:STD_LOGIC_VECTOR(1 DOWNTO 0);
变量定义语句,定义tmp为新的变量

11 BEGIN

12 tmp:=a&b;

“: =”为变量赋值符号。“&”为并置运算符

13 CASE tmp IS

条件选择语句

14

WHEN”00”=>y<=’1’;

15

WHEN”01”=>y<=’1’;

16

WHEN”10”=>y<=’1’;

17

WHEN”11”=>y<=’0’;

18

WHEN OTHERS=>y<=’X’; 输出状态不定

19 END CASE;

20

END PROCESS;

进程结束语句

21 END nand2_l;

谢谢你的阅读
? 知识就是财富 ? 丰富你的人生


网站首页 | 网站地图 | 学霸百科 | 新词新语
3986 3986.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com