目录
引言
在电路的实践过程中,我们常常会使用一些现有的组合电路,这些被称为常用组合电路,下面我将进行介绍,包括:编码器、译码器、数据选择器、数值比较器、加法器等常用组合电路。
一:编码器
介绍
编码是指代码表示文字、符号或数字等特定对象的过程。在日常生活中,如身份证号码、学生学号等都是编码。在数字系统一般使用二进制数,因此编码是将其编码为一些二进制代码。
输入m个信号,输出n个信号,应满足:。
二进制普通编码器
下面进行介绍一个8-3编码器,是一个8路输出信号,可以理解为0-8,而输出信号是3路(则可以表示8路输入),下面是真值表。
输入 | 输出 | ||
0 | 0 | 0 | |
0 | 0 | 1 | |
0 | 1 | 0 | |
0 | 1 | 1 | |
1 | 0 | 0 | |
1 | 0 | 1 | |
1 | 1 | 0 | |
1 | 1 | 1 |
逻辑表达式如下
根据逻辑表达式,设计逻辑图即可。
扩展
二—十进制普通编码器
二—十进制普通编码器的功能是将0~9,编码为2进制,首先要确认多少路输出信号,因为则选择4路输出信号,接着跟2-8编码器类似,即可完成设计,这样其实会多出几种输出不会出现,但不会影响其功能。
优先编码器
请思考,如果2路输入电路都为1,那么普通编码器的输入会是怎么样的呢?
答案很简单,输出结果一定是不符合的,这样就需要对其进行处理,而优先编码器就是解决这种情况的。优先(这里仅考虑高位优先)的意义就是当高位输入时,便只优先考虑高位,不管低位输入如何,按高位的输出结果输出。
真值表如下
输入 | 输出 | |||||||||
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | ||
1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | |||
1 | 0 | 0 | 0 | 1 | 0 | 0 | ||||
1 | 0 | 0 | 1 | 0 | 1 | |||||
1 | 0 | 1 | 1 | 0 | ||||||
1 | 1 | 1 | 1 |
:表示无关项,这样可以实现优先编码器。
二:译码器
译码器是编码期的逆运算。n路输入,m路输出,那么其满足关系:
其原理与编码器相反,输入与输出调换即可,不详细介绍了。
下面请思考一个问题,如果我想要译码显示对应的数字怎么办?
答案是使用一个数码显示器,效果如下,a-g对应每一个输出,对于相应输入,我只需要对应输出显示成相应的数字就可以完成显示了,这样是不是就完成了显示的功能呢!
三:数据选择器
介绍
数据选择器(MUX)又称多路选择器或多路开关,是一种多路输入、单路输出的组合电路。这个是比较传统的概念,其实就是使用n个信号来控制输出。下面是对其的示意图,对于n个控制信号,可以选择个输入。
4选1数据选择器
4选1数据选择器有4路输入信号,1路输出信号,2路控制信号。
下面对其定义:
- 分别用
,
,
,
表示输入信号;
,
表示控制信号;
表示输出信号。
- 当
=00时,
=
;当
=01时,
=
;当
=10时,
=
;当
=00时,
=
。
输入 | 输出 | |||||
0 | 0 | 0 | × | × | × | 0 |
0 | 0 | 1 | × | × | × | 1 |
0 | 1 | × | 0 | × | × | 0 |
0 | 1 | × | 1 | × | × | 1 |
1 | 0 | × | × | 0 | × | 0 |
1 | 0 | × | × | 1 | × | 1 |
1 | 1 | × | × | × | 0 | 0 |
1 | 1 | × | × | × | 1 | 1 |
得到逻辑表达式:
根据逻辑表达式变可以得到逻辑图,其他选择器也同样可以使用此原理设计。
扩展
若想要设计一个8选1数据选择器怎么办?
其实可以使用2个4选1数据选择器改造实现,只需要3位控制信号,使用来选择第一个选择器或者第二个选择器,
则用来控制是哪一位输出(第一个选择器或者第二个选择器中的哪一路输出信号)。
四:数值比较器
介绍
数值比较器是用来比较两个数的数值大小的逻辑元器件。
基本功能
输入2个位数相同的数A和B,比较大小后,输出数值比较的结果:A>B、A=B或A<B。
示意图
1位二进制数值比较器
根据功能得到真值表:
输入 | 输出 | |||
A | B | G | E | S |
0 | 0 | 0 | 1 | 0 |
0 | 1 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 0 |
1 | 1 | 0 | 1 | 0 |
不难得出逻辑表达式
其实S还有其他形式的表达:
根据逻辑表达式变可以得到逻辑图。
多位二进制数值比较器
多位二进制数值比较器分为2种情况:一是无符号,而是有符号。
无符号多位二进制数值比较器
多位无符号二进制比较器,只需要使用多个1位二进制数值比较器由高位向下优先比较,若在高位比较结果已经出来,则不需要进行比较了,直接输出即可。(这里对其进行粗略介绍,详细过程可以查阅资料)
有符号多位二进制数值比较器
有符号多位二进制数一般采用补码形式编码。有符号多位二进制数值比较器同样需要使用多个1位二进制数值比较器,当两个数比较时,应先比较符号位(最高位),若不同,则可以确定符号位位0的数(正数)大。否则则依次(高位向低位)比较,直到有一位数大时,输出该为数大,否则输出相等。(这里对其进行粗略介绍,详细过程可以查阅资料)
五:加法器
介绍
加法器是进行算数加法运算的逻辑元器件,其功能是实现两个二进制数的加法操作。分为半加器和全加器,半加器不考虑由低位来的进位,而全加器考虑由低位来的进位。
半加器
逻辑符号:
全加器
逻辑符号:
(以上内容并非纯原创,一些来自老师的ppt)