9. 半加器 不考虑进位输入时,两数码 X n , Y n 相加称为半加。 1.1 、加法器 半加器可用 反相门 及 与或非门 来实现,也可用 异或门 来实现。 两输入一输出 半加器的功能表及逻辑图 逻辑表达式: H n =X n Y n +X n Y n = X n ⊕ Y n 0110100 0 1 +1001000 1 1 1
10. 1.1 、加法器 一位全加器: 三个输入: 本位两个二进制数据 X n , Y n + 低一位送上的进位信号 C n-1 ; 两个输出: 本位的和 F n ,往高一位的进位信号 C n 。 进位信号 1 1 0110100 0 1 +1001000 1 1 0 0
11. 1.1 、加法器 F n =X n Y n C n-1 +X n Y n C n-1 +X n Y n C n-1 +X n Y n C n-1 C n =X n Y n C n-1 +X n Y n C n-1 +X n Y n C n-1 +X n Y n C n-1 F n = X n ⊕ Y n ⊕ C n-1 全加器的功能表及逻辑图 一位全加器 三输入两输出
12. 1.1 、加法器 将 n 个 一位全加器 相连可得 n 位加法器, 完成对多位数据相加运算。 各数据位之间的 进位信号是串行传送 的,被称为 串行进位 。 本位 全加和 F i 必须等 低位进位 C i-1 来到后才能进行; 因此,当加法器的位数较多时,会使加法运算的速度大大降低。
13. 1.1 、加法器 超前进位加法器( 当前计算机中使用的 ) 从加快进位信号的传送速度考虑,可以实现多位的 并行进位 。 即各位之间几乎同时产生送到高位的进位输出信号。 采用“ 超前进位产生电路 ”来同时形成各位进位,从而实现快速加法。 只要同时输入 X 1 ~ X 4 ,Y 1 ~ Y 4 和 C 0 ,几乎同时输出 C 1 ~C 4 和 F 1 ~ F 4 。
14. 超前进位产生电路 只要满足下述两条件中任一个,就可形成 进位 C 1 : 1 ) X 1 =1 Y 1 =1 2 ) ( X 1 =1 或 Y 1 =1 ) 且 C 0 =1 C 1 =X 1 Y 1 + (X 1 +Y 1 )C 0 只要满足下述条件中任一个即可形成 进位 C 2 : 1 ) X 2 =1 Y 2 =1 2 ) ( X 2 =1 或 Y 2 =1 ) 且( X 1 =1 Y 1 =1 ) 3 ) ( X 2 =1 或 Y 2 =1 )且( X 1 =1 或 Y 1 =1 ) C 0 =1 。 C 2 =X 2 Y 2 +(X 2 +Y 2 )X 1 Y 1 +(X 2 +Y 2 )(X 1 +Y 1 )C 0 C 3 =X 3 Y 3 +(X 3 +Y 3 )X 2 Y 2 +(X 3 +Y 3 )(X 2 +Y 2 )X 1 Y 1 +(X 3 +Y 3 )(X 2 +Y 2 )(X 1 +Y 1 )C 0 C 4 =X 4 Y 4 +(X 4 +Y 4 )X 3 Y 3 +(X 4 +Y 4 )(X 3 +Y 3 )X 2 Y 2 +(X 4 +Y 4 )(X 3 +Y 3 )(X 2 +Y 2 )X 1 Y 1 +(X 4 +Y 4 )(X 3 +Y 3 )(X 2 +Y 2 )(X 1 +Y 1 )C 0 1.1 、加法器
15. 假设 P i =X i +Y i G i =X i ·Y i 代入 C 1 ~ C 4 公式 ,便可得: C 1 =G 1 +P 1 C 0 C 2 =G 2 +P 2 G 1 +P 2 P 1 C 0 C 3 =G 3 +P 3 G 2 +P 3 P 2 G 1 +P 3 P 2 P 1 C 0 C 4 =G 4 +P 4 G 3 +P 4 P 3 G 2 +P 4 P 3 P 2 G 1 +P 4 P 3 P 2 P 1 C 0 1.1 、加法器 超前进位产生电路 P i =X i +Y i G i =X i ·Y i
18. 计算机不仅要完成对数值数据的 算术运算功能 (加、减、乘、除), 还要完成对逻辑数据的 逻辑运算功能 (与运算,或运算等)。 我们把实现 算术运算功能 和 逻辑运算功能 的 电路合并 到一起, 用同一套电路实现,就是 算术逻辑单元( 简称 ALU ) 算术逻辑单元 是一种功能较强的组合逻辑电路; 用与、或、非等门电路实现。 算术逻辑单元 的基本逻辑结构: 超前进位加法器 。 (通过改变加法器的 G i 和 P i 来获得多种运算能力。) 多位 ALU 不仅产生算术逻辑运算的结果,还给出结果的特征情况。 例如: 算术运算是否产生了向更高位的 进位 ,结果是否为零,结果的 符号为正还是为负,是否 溢出 等。对逻辑运算通常只能检查结果是 否为零,不存在进位和溢出等问题。 1.2 、算术逻辑单元
19. 四位 ALU 中规模集成电路逻辑图 M 是状态控制端, M=1, 执行逻辑运算 M=0, 执行算术运算 F 3 ~ F 0 是运算结果 S 0 ~S 3 是运算选择控制端, 决定电路执行哪种算术运算 或哪种逻辑运算。 C n 是 ALU 的最低位进位输入 A 3 ~A 0 , B 3 ~ B 0 是 参加运算的两个数
20. 1.2 、算术逻辑单元 M 是状态控制端, M=1, 执行逻辑运算 M=0, 执行算术运算 S 0 ~S 3 是运算选择控制端, 决定电路执行哪种算术运算 或哪种逻辑运算。 C n 是 ALU 的最低位进位输入 A 3 ~A 0 , B 3 ~ B 0 是 参加运算的两个数 A· B (A·B) 减 1 A·B 1 1 1 0 A 减 B A 减 B 减 1 A B 0 1 1 0 (A·B) 加 (A+B) 加 1 (A·B) 加 (A+B) B 1 0 1 0 A 加 (A·B) 加 1 A 加 (A·B) A·B 0 0 1 0 “ 0” 减 1 “ 0” 1 1 0 0 (A+B) 加 1 A+B A·B 0 1 0 0 (A+B) 加 1 A+B A+B 1 0 0 0 A+1 A A 0 0 0 0 C n =0 C n =1 M=0 算术运算 M=1 逻辑运算 正 逻 辑 S 0 S 1 S 2 S 3
21. 用 四片 4 位 ALU 电路可组成 16 位 ALU 。( 1110 1101 0101 0001 ) 片内进位是并行快速的,但片间进位是串行慢速的,计算时间长。 1.2 、算术逻辑单元 把 16 位 ALU 中的每四位作为一组,用类似四位超前进位加法器 “ 位间快速进位 ” 的方法来实现 16 位 ALU 的 “ 组间快速进位 ” 。 16 位快速 ALU
27. 译码器: 实现对 n 个输入变量,给出 2 n 个(或少于 2 n 个)输出信号的功能, 每个输出信号对应 n 个输入变量的一个 最小项 。 是否需要译码,通常可以用一或几个 控制信号 E 加以控制。 主要用途: 从多个 互斥信号中选择其一 。 区分 N 个输入变量的组合 属于哪种情况。 1.3 、 编码器、 译码器 … … 译 码 器 A 1 A 2 A i L 1 L 2 L j 多输入多输出
39. 1 )、电位触发器( 电位触发方式 ) 同步控制信号 E 为 1 时,输出 Q = 输入 D ; 同步控制信号 E 为 0 时,触发器状态保持不变。 R S 不能同时为低电平,而且 R S D 在触发器写入期间应该保持不变,否则产生操作错误。 2.1 、触发器 电位触发器: 结构简单。用来组成 暂存器、锁存器 基本触发器