(2)利用SN74181芯片构成16位ALU的原理l)组间串行进位的16位ALU的构成2)组间并行进位的16位ALU的构成SN74182芯片:是一个产生并行进位信号的部件.利用SN74181提供的小组进位传递函数和进位生成函数为输入参数,以并行的方式给出每个小组(芯片)的最高位进位信号。SN74182是作为第二级并行进位系统.SN74182的逻辑框图:SN74182的芯片示意图:/G0、/G1、/G2、/G3为进位生成函数输入端;/P0、/P1、/P2、/P3为进位传递函数输入端;Cn为最低位进位信号输入端;Cn+4、Cn+8、Cn+12为进位信号输出端;/G*、/P*为以16位为一大组的进位传递函数和进位生成函数。16位两级并行进位ALU框图:16位两级并行进位ALU工作过程:1.Ai、Bi(i=1~16)、C0到达各输入端;2.各74181计算出G1*,P1*,G2*,P2*,G3*,P3*,G4*,P4*;74181#1计算出F1,F2,F3,F4。3.74182计算出C4,C8,C12和G1^,P1^;4.74181#2,74181#3,74181#4计算出Fi(i=5~16)。74181#4计算出C16例:用SN74181和SN74182设计如下的32位ALU.两重进位方式三重进位方式行波进位方式32位两重并行进位ALU框图:第二大组(16位)第一大组(16位)32位两重并行进位ALU工作过程:1.Ai、Bi(i=1,32)、C0到达各输入端;2.第一大组的各74181计算出G1*,P1*,G2*,P2*,G3*,P3*,G4*,P4*;第一大组的74181#1计算出F1,F2,F3,F4;第二大组的各74181计算出G5*,P5*,G6*,P6*,G7*,P7*,G8*,P8*。3.第一大组的74182计算出C4,C8,C12和G1^,P1^;第二大组的74182计算出G2^,P2^;4.第一大组的各74181计算出Fi(i=5~16),第一大组的74181#4计算出C16;5.第二大组的74181#1计算出F17,F18,F19,F20。第二大组的74182计算出C20,C24,C28;6.第二大组的各74181计算出Fi(i=21~32),第二大组的74181#4计算出C32;32位三重并行进位ALU框图:第二大组(16位)第一大组(16位)32位三重并行进位ALU工作过程:1.Ai、Bi(i=1,32)、C0到达各输入端;2.第一大组的各74181计算出G1*,P1*,G2*,P2*,G3*,P3*,G4*,P4*;第一大组的74181#1计算出F1,F2,F3,F4。第二大组的各74181计算出G5*,P5*,G6*,P6*,G7*,P7*,G8*,P8*。3.第一大组的74182计算出C4,C8,C12和G1^,P1^;第二大组的74182计算出G2^,P2^;4.第一大组的各74181计算出Fi(i=5~16),第三重的74182计算出C16,C32;5.第二大组的74181#1计算出F17,F18,F19,F20。第二大组的74182计算出C20,C24,C28;6.第二大组的各74181计算出Fi(i=21~32)。32位行波进位方式ALU框图:32位行波进位ALU工作过程:1.Ai、Bi(i=1,32)、C0到达各输入端;2.74181(1)计算出F1,F2,F3,F4,C4。3.74181(2)计算出F5,F6,F7,F8,C8。4.74181(3)计算出F9,F10,F11,F12,C12。5.74181(4)计算出F13,F14,F15,F16,C16。6.74181(5)计算出F17,F18,F19,F20,C20。7.74181(6)计算出F21,F22,F23,F24,C24。8.74181(7)计算出F25,F26,F27,F28,C28。9.74181(8)计算出F29,F30,F31,F32,C32。2.5.2定点运算器运算器的结构包含:加法器通用寄存器输入数据选择电路输出数据控制电路内部总线1.定点运算器的基本结构及工作过程:2.运算器组成实例(1)小型计算机的运算器运算器由以下几部分组成:ALU;通用寄存器;多路选择器;移位器;进位寄存器Cv;判零逻辑PL;双向移位寄存器,做乘法时存放乘数,做除法时存放商。16位字长两级先行进位的ALU四选一多路选择器三选一多路选择器寄存最终进位值判别16位运算结果是否为全0实现“循环左移”,“循环右移”,“字节交换”,“直接传送”存放原操作数、目的操作数,可作累加器(2)位片式运算器4位双极型位片式运算器AM2901,它将ALU、通用寄存器组、多路开关、移位器等逻辑构件集成在一个芯片内。通用寄存器寄存器写入数据八功能的ALU3种算术运算和5种逻辑运算4位运算结果最高进位最高位的取值,可作符号位运算结果溢出信号运算结果为零信号执行直送、左移一位或右移一位的操作控制数据发送的去向以及是否进行移位操作GP超前进位信号实现乘、除运算时用作乘商存储器AM2901选择数据来源编码I2I1I0数据来源RSLLLAQLLHABLHL0QLHH0BHLL0AHLHDAHHLDQHHHD0AM2901运算功能编码I5I4I3运算功能LLLR+SLLHS-RLHLR-SLHHR∨SHLLR∧SHLH/R∧SHHLR∨SHHH/(R∨S)AM2901选择结果处理编码结果处理I8I7I6通用寄存器组Q寄存器Y输出LLLF→QFLLHFLHLF→BALHHF→BFHLLF/2→BQ/2→QFHLHF/2→BFHHL2F→B2Q→QFHHH2F→BF运算示例:R1+R0=R1R1=B0001R0=A0000数据来源:I2I1I0:LLH运算功能:I5I4I3:LLL选择结果:I8I7I6:LHHAM2902芯片示意图:AM2902/G0、/G1、/G2、/G3为进位生成函数输入端;/P0、/P1、/P2、/P3为进位传递函数输入端;Cn为最低位进位信号输入端;Cn+x、Cn+y、Cn+z为进位信号输出端;/G、/P为以16位为一大组的进位传递函数和进位生成函数。4片AM2901组成的16位定点运算器: