数字电路基础及逻辑门
1 数字电路基础
1.1 逻辑电平
在正逻辑系统中
- 逻辑“0”:低电平
- 逻辑“1”:高电平
高 / 低电平在电路中并非对应某一个固定数值的电压
而是对应某一定变化范围的电压值
在负逻辑系统中
- 与正逻辑系统相反
除非特别说明,否则我们通常采用正逻辑系统!
1.2 脉冲信号与波形图
- 数字脉冲:一种持续时间短暂的跃变信号
- 实际数字脉冲
- 脉冲幅值(A):脉冲信号变化的最大值
- 脉冲上升时间(tr):从脉冲幅值的10%上升到90%所需的时间(rise time)
- 脉冲下降时间(tf):从脉冲幅值的90%下降到10%所需的时间(fall time)
- 脉冲宽度(tp):在一个脉冲中,从脉冲上升沿幅值50%处开始到脉冲下降沿幅值50%处所需要的时间(pulse time)
- 理想数字脉冲
数字脉冲实际是渐变过程,但是为了简化研究,通常将其理想化- 上升时间和下降时间均被设定为0
- 从低电平到高电平:上升沿
- 从高电平到低电平:下降沿
- 脉冲周期(T):周期性脉冲信号中两个相邻上升沿(或下降沿)的时间间隔
- 脉冲频率(f):脉冲周期的倒数
f = 1 T f = {1 \over T} f=T1 - 占空比:脉冲宽度和脉冲周期之比
α = t p T × 100 % α = {t_p \over T}×100% α=Ttp×100%
- 时序图
画时序图时,要注意体现胳膊行在时间上的对应关系
1.3 数制与码制
1.3.1 进制
在数字系统中常用到的数制有十进制、二进制、八进制、十六进制。N进制有N个数码,基数是N,逢N进一
- 二进制:数字电路中使用最广泛的数制,只有“1”和“0”两个数码
- 最高位(Most Significant Bit):最左边的数字,简称“MSB”
- 最低位(Least Significant Bit):最右边的数字,简称“LSB”
- 十进制:我们最熟悉的数制,有0,1,2,3,4,5,6,7,8,9这十个数码,基数是10,逢十进一
- 若整数部分的位数是n,小数部分的数位是m,则一个N进制数的值可以通过下式来计算
D = ∑ i = − m n k i N i D=\sum \limits_{i=-m}^nk_iN^i D=i=−m∑nkiNi
其中,N为基数,i包括从n-1到0的所有整数和从-1到-m的所有负整数,ki是第i位的系数,Ni是第i位的权重。
1.3.2 码制
- BCD码(Binary-Coded Decimal二进制编码的十进制)
如下表,我们通常选取四位二进制代码中前十种状态依次表示十进制的0~9十个数码,这样的BCD码中的四位权重为别是8、4、2、1,称为8421的BCD码,简称8421码。
Decimal | Binary | BCD |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0010 |
3 | 0011 | 0011 |
4 | 0100 | 0100 |
5 | 0101 | 0101 |
6 | 0110 | 0110 |
7 | 0111 | 0111 |
8 | 1000 | 1000 |
9 | 1001 | 1001 |
10 | 1010 | 0001 0000 |
11 | 1011 | 0001 0001 |
12 | 1100 | 0001 0010 |
13 | 1101 | 0001 0011 |
14 | 1110 | 0001 0100 |
15 | 1111 | 0001 0101 |
- 格雷码
- 格雷码的各个数位没有固定的权重,它是一种可靠性编码
- 格雷码和二进制码的转化
- 二进制下的最高位保留为格雷码的最高位
- 从左到右,加上每一对相邻的二进制编码位,从而得到下一位格雷码
- 重复上述步骤,直到最后两位二进制码相加,得到最后一位格雷码
- 观察下表的四位格雷码,我们可以发现,每两个相邻的格雷码,仅有一位数码在变化
四位格雷码 |
---|
0000 |
0001 |
0011 |
0010 |
0110 |
0111 |
0101 |
0100 |
1100 |
1101 |
1111 |
1110 |
1010 |
1011 |
1001 |
1000 |
- 转轴位置编码器
-
根据格雷码的这一特性,我们可以将其应用在转轴位置编码器上,以减少编码错误,比如:
-
二进制码的转轴位置编码器
- 由于三个导电电刷安装得不可能完全准直,电刷的位置在从一个区域过渡到另一个区域的交界线附近时可能会出现错误的编码,通俗一点讲,就是如果有一个导电电刷安装的位置靠前一点,它就会提前接触到下一个区域的数码,导致编码出现错误
- 由于三个导电电刷安装得不可能完全准直,电刷的位置在从一个区域过渡到另一个区域的交界线附近时可能会出现错误的编码,通俗一点讲,就是如果有一个导电电刷安装的位置靠前一点,它就会提前接触到下一个区域的数码,导致编码出现错误
-
格雷码的转轴位置编码器
- 因此,根据格雷码的特性——每两个相邻的格雷码,仅有一位数码在变化,就可以避免上述问题,从而有效地消除由于在交界处编码引起的错误
- 因此,根据格雷码的特性——每两个相邻的格雷码,仅有一位数码在变化,就可以避免上述问题,从而有效地消除由于在交界处编码引起的错误
-
2 逻辑门
2.1 “与”逻辑门
- 逻辑符号
- 逻辑表达式
X = A ⋅ B X=A·B X=A⋅B - 真值表
A | B | X |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
2.2 “或”逻辑门
- 逻辑符号
- 逻辑表达式
X = A + B X=A+B X=A+B - 真值表
A | B | X |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
2.3 “非”逻辑门
- 逻辑符号
- 逻辑表达式
X = A ‾ X=\overline{A} X=A - 真值表
A | X |
---|---|
0 | 1 |
1 | 0 |
2.4 “与非”逻辑门
- 逻辑符号
- 逻辑表达式
X = A B ‾ X=\overline{AB} X=AB - 真值表
A | B | X |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
2.5 “或非”逻辑门
- 逻辑符号
- 逻辑表达式
X = A + B ‾ X=\overline{A+B} X=A+B - 真值表
A | B | X |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
2.6 “异或”逻辑门
- 逻辑符号
- 逻辑表达式
X = A ⊕ B = A B ‾ + A ‾ B X=A \oplus B=A\overline{B}+\overline{A}B X=A⊕B=AB+AB - 真值表
A | B | X |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
2.7 “同或”逻辑门
- 逻辑符号
- 逻辑表达式
X = A ⊙ B = A ˉ B ˉ + A B X=A \odot B=\bar{A}\bar{B}+AB X=A⊙B=AˉBˉ+AB - 真值表
A | B | X |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
3 集成逻辑门电路特性
3.1 标准集成逻辑门电路
- 若输入信号全为高电平(3.6V),整个电路输出为低电平(0.3V左右)
- 若输入信号中有一个为低电平(0.3V),整个电路输出为高电平(3.6V左右)
- 前后级逻辑门之间的电流关系
- 前级输出为高电平(存在拉电流)
- 前级输出为低电平(存在灌电流)
- 前级输出为高电平(存在拉电流)
- 输入端负载特性
若不考虑晶体管Q2的基极电流对Q1的影响,则电阻R两端对应的输入电压ui可通过下式来近似求解:
u i = R R 1 + R ( 5 − U b e 1 ) ≈ 4.3 R R 1 + R u_i={R \over R_1+R}(5-U_{be1})≈{4.3R \over R_1+R} ui=R1+RR(5−Ube1)≈R1+R4.3R
从上述公式我们可以看出,ui的大小和输入端所接电阻R的阻值有关- 对TTL逻辑门:R<1kΩ时,可认为是低电平;R>5kΩ时,可认为是高电平
- 对CMOS逻辑门:R<100kΩ时,可认为是低电平;R>1MΩ时,可认为是高电平
由于早期电路均为TTL类型,在TTL电路中悬空的输入端相当于是接入无穷大的电阻,在电路中遇到的悬空输入端在电路中往往习惯等效为接高电平,但是需要注意,在实际操作中,为了防止干扰,不允许输入端悬空
3.2 集电极开路逻辑门
- OC与非门
- OC非门
3.3 三态门(TS门)
三态门是在标准TTL逻辑门输出为高电平或者低电平的基础上增加了一个第三态(高阻状态)的逻辑门电路
- 三态门功能简述
- 使能端有效时,相当于标准TTL逻辑门电路
- 使能端无效时,电路输出为高阻态
- 三态门的应用
3.4 门电路特性和参数
- 电源供电
- 标准TTL电路的供电电源为+5V
- CMOS电路有+5V、+3.3V、+2.5V等不同的供电电源种类
- 电压传输特性
- 输入输出高低电平范围
- CMOS
- TTL
- CMOS
- 噪声容限(Noise Margin)
逻辑电路的抗噪能力- 高电平噪声容限:高电平时允许的噪声波动的范围
V N H = V O H ( m i n ) − V I H ( m i n ) V_{NH}=V_{OH(min)}-V_{IH(min)} VNH=VOH(min)−VIH(min) - 低电平噪声容限:低电平时允许的噪声波动的范围
V N L = V I L ( m a x ) − V O L ( m a x ) V_{NL}=V_{IL(max)}-V_{OL(max)} VNL=VIL(max)−VOL(max) - 图示
- 高电平噪声容限:高电平时允许的噪声波动的范围
- 扇出系数
一个逻辑门能驱动同种类型的逻辑门的输入端的个数- 当逻辑门的输入端个数 > 扇出系数,该逻辑门过载
- 当逻辑门的输入端个数 < 扇出系数,该逻辑门正常
- 传输延时
门电路的输出波形相对于输入波形的滞后时间
- 门电路的传输延时越短,其工作效率越高
- 平均传输延迟时间tpd
t p d = t P L H + t P H L 2 t_{pd}={t_{PLH}+t_{PHL} \over 2} tpd=2tPLH+tPHL - 标准TTL电路的平均传输延时时间tpd约在10ns左右