令P1=A1+B,称p为进位传递函数 g=AB4,g为进位产生函数 串行进位信号可写成以下表达式 CI gotto C C2=gr+pI Cl (2.27) C3=g2+p2 C2 C4=g3+p3 C 若将C1=g+poCo代入C2表达式中的C1,依此类推,则 CI= goto Co C2=gr+pI go+ pI po Co C3=g2+p2 g1+ p2 pi go+ p2 pi po C C4=g3+p3 gz+ p3 p2 gI+ p3 p2 pi go+ p3 p2 pi poCo (a)先行进位产生电路 先行进位线路 (b)4位先行进位加法器 图2.44位并行加法器 所以,用(228)实现了C1~C4的并行进位,根据是 ①都是“与或”的逻辑表达式,用“与或”门产生C1~C4 ②都用变量p,g,Co,它们并行产生。 可见:从原理上说,n位字长的进位均可写成进位的递推式子,即所有进位同 时形成,但因为逻辑门电路的扇入系数和扇出系数的限制而无法做到 3.二进制加减法器 [A]=An1An2…AA和[B]=Bn1Bn2…B1B0 其中Aa1和Bn1是符号位
令pi = Ai +Bi,称pi为进位传递函数 gi = Ai BB i ,gi为进位产生函数 串行进位信号可写成以下表达式 C1= g0+p0 C0 C2= g1+p1 C1 (2.27) C3= g2+p2 C2 C4= g3+p3 C3 若将C1= g0+p0 C0代入C2表达式中的C1,依此类推,则 C1= g0+p0 C0 C = g +p g (2.28) 2 1 1 0+ p1 p0 C0 C3= g2+p2 g1+ p2 p1 g0+ p2 p1 p0 C0 C4= g3+p3 g2+ p3 p2 g1+ p3 p2 p1 g0+ p3 p2 p1 p0C0 C 所以,用(2.28)实现了C1~C4的并行进位,根据是: ① 都是“与或”的逻辑表达式,用“与或”门产生C1~C4。 ② 都用变量pi,gi,C0,它们并行产生。 可见:从原理上说,n 位字长的进位均可写成进位的递推式子,即所有进位同 时形成,但因为逻辑门电路的扇入系数和扇出系数的限制而无法做到。 3.二进制加减法器 [A]补=An-1An-2…A1A0和[B]补=Bn-1BB n-2…B1B BB 0, 其中An-1和BB n-1是符号位 (b) 4 位先行进位加法器 图 2.4 4 位并行加法器 C0 (a) 先行进位产生电路 C4 C3 C2 1 g P3 g2 P2 g1 P1 g0 P0 先行进位线路 FA FA FA FA g3 g2 g1 g0 P3 P2 P1 P0 F3 F2 F1 F0 C0 C4 C3 C2 C1 A3 B3 A2 B2 A1 B1 A0 B0 3
熟[ M=1减 方式控制M 符号位 图2.3行波进位的补码加法/碱减法器 (1)补码加法的实现 方式控制码M=0 则FA的左输入端B'=M⊕B=0田B=B1 所以,FA的输出:[F]=[A]e+[B]e=[A+B] (2)补码减法的实现 M=1,则B'=1,B=B,C0=1 所以:[F]=[A]+[-B]n=[A-B (3)判溢出:0F=CeC (4)n位串行进位加减法器结果形成时间 tn×2T+3T×3=(2n+9)T 式中T—单级逻辑门的延迟时 4.操作时间的配合 移位输出门 全加器FA A缓冲器 多路开关 多路开关 控制 通路示意图
B’n-1 B’n-2 B’1 A0 Fn-1 OF M=1 减 C C2 C1 C0 n-2 Cn-1 Cn FA FA FA FA Bn-1 An-1 Bn-2 An-2 …… B1 A1 B0 ………… 符号位 M=0 加 方式控制 M Fn-2 …… F1 F0 图 2.3 行波进位的补码加法/减法器 B’0 (1) 补码加法的实现 方式控制码 M=0 则FA的左输入端 B’i=M⊕BB i= 0⊕Bi= Bi B 所以,FA的输出:[F]补=[A]补+[B]补=[A+B]补 (2) 补码减法的实现 M=1,则B’i=1⊕BB i= Bi ,C0=1 所以:[F]补=[A]补+[-B]补=[A-B]补 (3) 判溢出: OF=Cn⊕Cn+1 (4) n 位串行进位加减法器结果形成时间 ta=n×2T+3T×3=(2n+9)T 式中 T—单级逻辑门的延迟时间。 4.操作时间的配合 移位输出门 CB 全加器 FA A 缓冲器 B 缓冲器 多路开关 多路开关 R0 R2 控制 控制 控制 DR2 图 2.5 数据通路示意图 CB CB
△T略大于数据通路的传送时间十最大FA的运算时间 图2.6运算时间示意图 2.2.5十进制数运算 算机中实现十进制加法的方法: ①直接用十进制加法器实现 ②用二进制加法指令和十进制修正指令实现 十进制加法器:实现两个十进制数求和的电路 1.十进制加法器的主要特点 ①采用BCD码 ②十进制位内按二进制加法规则运算,十进制位之间按逢十进一规则运算。 2.十进制加法器的组成 每位十进制加法器可由4位二进制加法器,和数修正及进位形成线路组成 3.BCD(8-4-2-1)码加法器 ①和数的修正 若和数≥(10102,应有进位,和数加(110)2修正 十进校正 L-- (a)一位BCD加法器单元的逻辑结构 位BCD加法器c 位BCD加法器C1「位BCD加法器c (b)n位数字的行波进位BCD加法器 图27十进制加法器
△T 略大于数据通路的传送时间+最大 FA 的运算时间 W1 P ΔT 图 2.6 运算时间示意图 2.2.5 十进制数运算 计算机中实现十进制加法的方法: ① 直接用十进制加法器实现 ② 用二进制加法指令和十进制修正指令实现 十进制加法器:实现两个十进制数求和的电路 1. 十进制加法器的主要特点 ① 采用 BCD 码; ② 十进制位内按二进制加法规则运算,十进制位之间按逢十进一规则运算。 2. 十进制加法器的组成 每位十进制加法器可由 4 位二进制加法器,和数修正及进位形成线路组成 3. BCD(8-4-2-1)码加法器 ① 和数的修正 若和数 ≥(1010)2 ,应有进位,和数加(110)2修正 Fi3 Fi2 Fi1 Fi0 X0 4 4 X1 4 Xn-1 4 4 4 4 4 4 Cn Cn-1 C2 C1 C0 Y Y1 Y0 n-1 S0 S1 Sn-1 一位 BCD 加法器 单元 一位 BCD 加法器 单元 一位 BCD 加法器 单元 (b) n 位数字的行波进位 BCD 加法器 Ci Ci+1 C’i+1 F’ F’i0 F’i3 F’i2 i1 + + + + + + Xi3 Yi3 + Xi2 Yi2 Xi1 Yi1 Xi0 Yi0 十进校正 二进加法 (a) 一位 BCD 加法器单元的逻辑结构 图 2.7 十进制加法器