计算机组成原理-算术逻辑单元(ALU)2021/8/15 16:26
算术逻辑单元
功能:
- 算术运算:加、减、乘、除等
- 逻辑运算:与、或、非、异或等
- 辅助功能:移位、求补等
从这里可以看到机器字长的真面目:计算机一次能处理的位数
逻辑符号
与:
或:
非:
与非:
或非:
异或:
同或:
奇偶校验码中偶校验的实现:各位进行异或运算 门电路实现
加法器
一位全加器
Ai、Bi输入 ;Ci-1低位进位
Si输出;Ci高位进位;
门电路实现:
串行加法器
串行加法器:只有一个全加器,数据逐位串行送入加法器中进行运算。进位触发器用来寄存进位信号,以便参与下一次运算。
如果操作数长n位,加法就要分n次进行,每次产生一位和,并且串行逐位地送回寄存器。
串行进位的并行加法器
每次进位都需要等待上一级的进位
并行进位的并行加法器
C1=G1+P1C0
C2=G2+P2C1=G2+P2G1+P2P1C0 C3=G3+P3C2=G3+P3G2+P3P2G1+P3P2P1C0 C4=G4+P4C3=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0
……
并行进位的并行加法器:各级进位信号同时形成,又称为先行进位、同时进位
这里注意,我们要的Pi和Gi都可以由一位全加器中的线路传出。
这种加法器每一位的进位都可以由最初的输出确定
但是多位并行加法器这样继续套娃下去会造成电路越来越复杂,开销大
因此套了4层娃之后,再串行进位,如下:
称为单级先行进位方式,又称为组内并行、组间串行进位方式。
此时的C4、C8、C12、C16仍要等待上级的输入,上级没有输入时这级仍然不能工作。
由于C4实质上是由A4到A1和B4到B1得出,因此我们不妨多套一层娃,这样我们可以立即得到C4的值,多套的这层娃使得这一级可以立即开始工作。如下
这是多级先行进位方式,又称为组内并行、组间并行进位方式
在实际的ALU中: