(3)若改用或非门实现,首先写出相应的表达式。
画出F的卡诺图,得到F的与或式,从而求出F的与或非式,变换得到或非-或非式。
F=A?C?AB?AD?BC?C?D =A?C?A?B?A?D?B?C?D?C
函数F的或非门电路如思考题3.2图(c)所示。
题3.3 什么叫竞争-冒险现象?当门电路的两个输入端同时向相反的逻辑状态转换(即一个从0变成1,另一个从1变成0)时,输出是否一定有干扰脉冲产生?
答:竞争指的是一个门电路多个输入信号同时跳变,或者一个信号经过不同路径传到同一个门电路的输入端导致信号到达时间不同的现象。冒险指的是由于竞争可能在电路输出端产生的毛刺现象。当门电路的两个输入端同时向相反的逻辑状态转换时,输出不一定有干扰脉冲产生。
3.4 简述VHDL的主要优点。
答:VHDL的覆盖面广,描述能力强,是一个多层次的硬件描述语言,VHDL已成为IEEE承认的一个工业标准,是一种通用的硬件描述语言。
VHDL有良好的可读性,可以被计算机接受,也容易被读者理解,VHDL源文件既是程序又是技术人员之间交换信息的文件,也可作为合同签约者之间的文件;VHDL的生命周期长,因为VHDL硬件描述与工艺无关; VHDL支持大规模设计的分解和已有设计的再利用。
题3.5 一个VHDL设计是否必须有一个结构体?结构体的目的是什么?一个设计可以有多个结构体吗?
答:VHDL 设计中必须有结构体。结构体描述实体硬件的互连关系、数据的传输和变换以及动态行为。一个实体可以对应多个结构体,每个结构体可以代表该硬件某方面的特性。例如用一个结构体表示某硬件的行为特性,用另一结构体表示该硬件的结构特性。
题3.6 端口模式IN和INOUT有什么不同?
答:端口模式表示电路的数据流向。端口模式IN表示只能向端口写入数据,而端口模式INOUT表示既可以向端口写入数据,又可以从端口读出数据。
题3.7 编码器的逻辑功能是什么?优先编码器与一般编码器有何区别?
答:编码器可以将一组相互独立的信号进行编码,形成一组相互关联的信号,以达到减少信号个数、增强信号表达能力的目的。一般编码器只允许一个信号为有效,而优先编码器允许同时有多个信号有效,但只识别优先级最高的信号。
题3.8 要区别24个不同信号,或者说给24个输入信号编码,需要几位二进制代码?电路有多少个输出?如果区别64个信号有将如何?
答:若要区别24个不同信号,至少要用5位二进制代码,因此电路有5个输出。 若区分64个信号至少用6位二进制代码,因此电路有6个输出。 题3.9 什么叫译码器?有哪些常用译码器?各有何特点? 答:将具有特定含义的不同的二进制代码辨别出来,翻译成为对应输出信号的电路就是译码器。常用的译码器有变量译码器和数字显示译码器。
对于译码器每一组输入编码,在若干个输出中仅有一个输出端为有效电平,其余输出皆处于无效电平,这类译码器称为变量译码器。常用的有2-4线译码器、3-8线译码器、4-10线8421BCD译码器等。
在数字电路中,需要将数字量的代码经过译码,送到数字显示器显示。能把数字量翻译成数字显示器能识别的译码器称为数字显示译码器,常用的有七段显示译码器。
题3.10 数据选择器和数据分配器各具有什么功能?若想将一组并行输入的数据转换成
串行输出,应采用哪种电路?
答:数据选择器根据控制信号的不同,在多个输入信号中选择其中一个信号输出。数据分配器则通过控制信号将一个输入信号分配给多个输出信号中的一个。若要将并行信号变成串行信号应采用数据选择器。
题3.11 一个有使能端的译码器能否用作数据分配器?怎样接线可以使一个八路输出的数据分配器连接成一个3线-8线译码器?
答:带使能端的译码器能用作数据分配器。以74138译码器芯片为例,将其连接成数据分配器如思考题3.11图(a)所示。
BIN/OCT DX A0 A0 0 7 D0 0 7 Y0 0 0 A1 A1 1 6 D1 1 6 Y1 1 1 A2 A2 2 5 D2 2 5 Y2 2 2
3 4 D3 3 4 Y3
4 3 D4 F 4 3 Y4 F
& 1 5 2 D5 5 2 Y5 &
6 1 D6 6 1 Y6 D D 1 EEN E7 0 D7 7 0 Y7
0 (a) (b)
思考题3.11图
可以用八路输出的数据分配器连接成3线-8线译码器,连接电路如思考题3.11图(b)所示。
习题题解
习题3.1 组合电路的逻辑框图如习题3.1图(a)所示。电路要求如下:
(1)当变量A1A0表示的二进制数≥B1B 0表示的二进制数时,函数F1=1,否则为0。 (2)当变量A1A0的逻辑与非(A1A0)和变量B1B0的逻辑异或(B1?B0)相等时,函数F2
为高电平,否则为0。
试设计此组合电路。 解:(1)根据题意确定输入变量为A1A0B1B 0,输出变量为F1F2,如习题3.1图(a)。 (2)根据题目对输入、输出变量提出的要求,列写真值表如习题3.1表所示。
习题3.1表 真值表 输 入 A1 A0 B1 B 0 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 (A1?A0) (B1?B0) 0 1 1 0 0 1 1 0 0 1 1 0 0 输 出 F1 F2 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 0 0 1 (3)由真值表,作函数卡诺图如习题3.1图(b)所示。
B1 B A1 000 01 11 10 A0 00 0 A1 A0 B1 B0 F1 F0
01 B1 A1 B0 00 01 11 10 A0 00 0 01 0 1 1 0 1 F2 (b)
00 1 0 1 1 0 1 0 0 1 1 F1 00 0 0 0 0 1 0 1 11 1 11 1 10 0 10 (a)
1
A0 ≥1 &
B1 B0
A1 &
A0 B0
卡诺图化简函数,得到最简与或式:
F1?A1B1?A0B1B0?A1A0B0
A1 B1
&
B1 B0
=1
=1
F1
A1 A0
&
F2
(c)
习题3.1图
F2?A1B1B0?A1B1B0?A0B1B0?A0B1B0?A1A0B1B0?A1A0B1B0
变换F2的表达式
F2?A1(B1?B0)?A0(B1?B0)?A1A0B1?B0 ?A1(B1?B0)?A0(B1?B0)?A1A0B1?B0 ?(A1A0)?B1?B0(4)由逻辑表达式画出逻辑图如习题3.1图(c)所示。
习题3.2 用与非门设计四变量的多数表决电路。设输出为F,当输入变量A、B、C、D有3个或3个以上为1时输出为1,输入为其它状态时输出为0。
解:(1)根据题意确定输入变量为ABCD,设输出变量F。
(2)根据题目对输入、输出变量提出的要求,列写真值表如习题3.2表所示。
习题3.2表 真值表 输 入 A B 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 输 出 F 0 0 0 0 0 0 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 1 0 0 0 1 0 1 1 1 (3)由真值表,作函数卡诺图如习题3.2图(a)所示
C A D 00 01 11 10 B 00 0 01 0 0 0 1 0 01 1 1 0 0 1 0
习题 3.2图
& & F & 11 0 10 0 & & A B C A B D A C D B C D (b)
(a) 卡诺图化简函数,得到最简与或式,经函数变换求与非-与非式:
F=ABC+ABD +ACD+BCD =ABC?ABD?ACD?BCD
(4)由与非-与非表达式画出逻辑图如习题3.2(b)图所示。 习题3.3 一个组合逻辑电路有两个控制信号C1和C2,要求: (1)C1C2=00时,F?A?B; (2)C1C2=01时,F?AB; (3)C1C2=10时,F?A?B;
(4)C1C2=11时,F?AB。
试设计符合上述要求的逻辑电路(器件不限)。 解:题目中要求控制信号对不同功能进行选择,故选用数据选择器实现,分析设计要求,得到逻辑表达式:
F?C1C2(A?B)?C1C2(AB)?C1C2(A?B)?C1C2(AB)。
4选1数据选择器的逻辑表达式:
F?A0A1D0?A0A1D1?A0A1D2?A0A1D3。
对照上述两个表达式,得出数据选择器的连接方式为:
A0=C1,A1=C2,D0?A?B,D1?AB,D2?A?B,D3?AB。
根据数据选择器的连接方程,得到电路如习题3.3图所示。 习题3.4 试设计一个具有两种功能的 码制转换电路,并画出电路图。K为控制
变量。K=0时,输入C、B、A为二进制 码,输出F3F2F1为循环码。K=1时,输 入C、B、A为循环码,输出F3F2F1为二 进制码。写出输出函数的逻辑表达式。
解:(1)根据题意定义输入变量为 KCBA,输出变量F3F2F1。
(2)根据题目对输入、输出变量提出 的要求,列写真值表如习题3.4表所示。
A B
=1 & ≥1 C & S A C1 0A C2 1 D0 D1 D2 D3 0 EN MUX 0 0 G— 1 2 0 1 2 3 F 习题3.3图
习题3.4表 真值表 输 入 K C B A 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 输 出 F3 F2 F1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 0 0 1 0 1 (3)由真值表,作函数卡诺图如习题3.4图(a)所示。 经卡诺图化简后,得到最简与或式:
F3?CF2?CB?CB?C?BF1?KCB?A?KCBA?K?BA?KBA?C?BA?CBA?(KC)?B?A
(4)由逻辑表达式画出逻辑图如习题3.4图(b)所示。
B B K A 00 01 11 10 K A 00 01 11 10 C C
0 0 00 0 00 0 11 00 01 01 1 1 1 1 1 1 0 0 1 1 11 1 11 1 1 0 1 0 10 10 0 0 1 1 0 0 0 0 F2 F3 (a)
F3
=1 C F2
B =1 A & K
(b)
=1 F1
B K A 00 01 11 10 C 00 0 01 0 1 1 0 1 F1 00 1 0 1 1 0 1 11 1 10 0