大话计算机:第1章电控开关


1.计算机只“认识”的是0和1两种状态,而不是数值

2.精简指令集计算机(RISC:Reduced Instruction Set Computing)用更少的逻辑符号但需要大量符号组合完成更多的任务(类似英文),而复杂指令集计算机(CISC:Complex Instruction Set Computing)用更少的逻辑符号但每个符号表示的含义更复杂完成更多的任务(类似中文)

3.异或门

异或门由或门、与非门和与门构成

4.与门、非门组合成与非门:

定义

not(A and B) == A nand B

5.与非门、或门相与组合成异或门:

定义

(A nand B) and (A or B) == A xor B

(A nand B) and (A or B) == (not(A and B)) and (A or B)

类似可得同或门

not(A xor B) == A xnor B

即:

not((not(A and B)) and (A or B)) == (A and B) and (not(A or B))

6.半加器

不接受低位进位信号的加法器

本位和的逻辑——异或门:

S0 = A xor B

进位的逻辑——与门:

C1 = A and B

7.全加器

在半加器基础上接受低位进位信号

蓝框部分为全加器

A1和B1的半加和S1’与低位进位C0半加,半加的和S1即为本位和,溢出位C1’’与A1、B1半加的溢出位C1’相或,结果为本位的进位CO1

设第i级加位(i = 0, 1, 2, …)的本位和为Si,低位进位为CIi(Input),本位进位为COi(Output),由6可知:

Si = (Ai xor Bi) xor CIi

COi = ((Ai xor Bi) and CIi) or (Ai and Bi)

一般的,当i = 0时,CI0 = 0(即在最低位没有更低位的进位输入)

1位全加器可以组成4位全加器,进一步也可以组成8位全加器

8.电磁场建立的时间是光速,但开关动作的响应有时延,知道开关的时延可以估算出整个电路响应所花时间

9.布尔运算定律

A + A * B = A * (1+B)=A * 1 = A

A + A’ * B = A + B

10.加法并行进位

由7的Si与SOi表达式循环代入,对于每一个CIi,其值都只与C0相关而与低位进位信号无关

C0 = C0

C1 = (A1 and B1) or (A1 xor B1) and C0

C2 = (A2 and B2) or (A2 xor B2) and ((A1 and B1) or (A1 xor B1) and C0)

C3 = (A3 and B3) or (A3 xor B3) and ((A2 and B2) or (A2 xor B2) and ((A1 and B1) or (A1 xor B1) and C0))

……

因此串行加法可以变为并行加法降低时延

11.RS(Reset-Set)触发器

由两个或非门G1、G2构成

R端:Reset 重置端,S端:Set 设置端

Q端为输出端,Q’端输出与Q端信号相反,互为镜像

当S = 0,R = 1 时, Q = 0, Q’ = 1

当S = 1,R = 0 时, Q = 1, Q’ = 0

当S = 0,R = 0 时, Q = 1, Q’ = 0 (Q端记忆了之前S = 1的状态信号)

当S = 1,R = 1 时,状态不确定,不允许

12.D(Data)触发器

通过两个与门,当L = 0时可屏蔽R、S端输入

并且可以保存Q = 0的状态

若 L = 1:

当S = 0,R = 1 时,R’ = 1, S’ = 0,

因此 Q = 0, Q’ = 1(存0)

当S = 1,R = 0 时,R’ = 0, S’ = 1,

因此 Q = 1, Q’ = 0(存1)

若 L = 0:

由于与门,R’ = 0, S’ = 0

对于Q = 1, Q’ = 0 状态,状态保持Q = 1, Q’ = 0

对于Q = 0, Q’ = 1 状态,由镜像易知与上面状态相反

由于R 、 S输入相反,通过一个非门可将R、S端简化为DI(Input)端,L端为锁存端,隐去Q’端,原Q端即为DO(Output)端

13.边沿触发器

将两个D触发器串联,前后两个L输入保证相反,即为边沿型触发器

工作原理示意图如下图:

左右闸门分别代表L1、L2锁存信号,永远保持相反,放下为0,抬起为1.

不同颜色代表不同次序的信号,由上图知L = L1’ = L2,由下图知只有L (L2)由0变为1(上升沿)时信号D才能最终透传至Q,因此称为边沿触发.

习惯上Q做输出端,Q’与D端一致,因此相连.波形图如下:

14.时钟电路与计数

将边沿触发器串联,输出与输入首尾相连,利用边沿触发器延迟输出信号的半频效应可以实现时钟电路.

每串联一级,时延扩大一倍,如图:

时延效应也可以用于计数:

锁存信号作输入时,每震荡变化一次,相应输出就会变化.

15.真值表与逻辑表达式、逻辑电路的转化

规则:将真值表内所有输出为1的行相或,每行内所有输入相与,其中为1的输入保持原输入,为0的输入表达式中取负.

如上图,A、B、C、D为输入,E、F、G、H为输出.

E = A’B’C’D’ + A’B’C’D + A’B’CD’ + A’BC’D’

F = A’B’C’D’ + A’B’C’D + A’B’CD’

G = A’B’C’D’ + A’B’C’D

H = A’B’C’D’

化简后即可得到结果,再将结果表示为逻辑电路.

16.逻辑1、0与高阻态

逻辑0与1:此时电路中有电流,逻辑0为低电平,逻辑1为高电平,两者一般会有界限

高阻态:电路中没有电流,电阻无限大(开路)

通过逻辑0/1控制电路的阻态

17.信号选择器

每路控制信号分别与一路数据信号构成一个与门,通过控制信号选择相应数据信号输出,输出端汇合用或门保证信号不被干扰、覆盖

对于一个七段数码管,一个数据信号对应一根灯管的亮与灭

输入端电路固定储存显示每种数字对应的数据信号组合

通过一个七位输入——八选一选择器进行信号组的选择,每个数据选择控制线的信号有七个分支,对应一组信号的七个位,总共八根线,对应八组

18.矩阵电路CROSSBAR(只读存储器 ROM)

通过矩阵电路选择信号,可以减少线路数量,扩充位数更加方便,如下图:

位数扩充前
位数扩充后

19.选路器

选路器用于多对一和一对多的选路,相比CROSSBAR电路更简单。一对多选路器称为DEMUX,多对一选路器称为MUX。

如图分别为一对二选路器和二对一选路器,选择信号分别为0或1时分别导通两端与门,从而实现选路。

DEMUX和MUX

一对四、四对一类似。

利用选路器还可以实现CROSSBAR,如下图的二对二XBAR:

20.缓冲队列和读写指针

为了解决XBAR某个输出端可能同时接受两个输入信号而导致冲突的问题,可以采用若干个串联的锁存器组成缓冲队列。同时还需要专门的锁存器存储队列尾部的位置,这种锁存器称为指针,利用译码器将锁存信息转成DEMUX的控制信号

FIFO队列四端口交换矩阵部分逻辑