在计算机中,运算器承担了执行各种算术和逻辑运算的工作,运算器由算术逻辑单元(ALU),累加器,状态寄存器和通用寄存器等组成。ALU的基本功能包括加,减,乘,除四则运算,与,或,非,异或等逻辑运算,以及移位,求补等操作。运算器的操作和操作种类由控制器决定。运算器处理的数据来自存储器;处理后的结果数据通常送回存储器,或暂存在运算器中。
一位全加器,全加器(FA)是最基本的加法单元,有加数Ai,加数Bi与低位传来的进位Ci-1共三个输入,有本位和Si与向高位的进位Ci共两个输出。
串行加法器,只有一个全加器,数据逐位串行送入加法器中进行运算。若操作数长n位,则加法就要分n次进行。串行加法器具有器件少,成本低的优点,但运算速度慢,多用于某些低速的专用运算器。
并行加法器,由多个全加器组成,其位数与机器的字长相同,各位数据同时运算,虽然操作数的各位是同时提供的,但低位运算所产生的进位将逐位影响至最高位,所以并行加法器的最长运算时间主要是由进位信号的传递时间决定的,而每个全加器本身的求和延迟只是次要因素。
进位表达式为 ,Gi是进位产生的函数,Gi=AiBi;Pi是进位传递函数,
并行加法器的进位通常分为串行进位与并行进位
把n个全加器串接起来,就可进行两个n位数的相加,这种加法器称为串行进位的并行加法器。
并行进位又称先行进位,同时进位,其特点是各级进位信号同时形成。
通过上式可以看出,进位输出仅有Gi,Pi及最低进位输入C0决定。这种进位方式是快速的,与字长无关。但随着加法器位数的增加,Ci的逻辑表达式会变得越来越长,输入变量会越来越多,这会使电路结构变得复杂。
分组并行进位方式,通常采用分组并行进位方式。
1> 单级先行进位方式,又称组内并行,组间串行进位方式。
2> 多级先行进位方式,又称组内并行,组间并行进位方式
ALU是一种功能较强的组合逻辑电路,它的核心是一个并行加法器。可以实现多种算术运算和逻辑运算。最简单的ALU是4位的。下图是典型的4位ALU芯片(74181)。
M用于指定是算术运算(M=0)还是逻辑运算(M=1),S3~S0的不同取值可实现不同的操作。
之后用4片74181芯片可以利用类似于串行进位或并行进位的方式进行组合