资源描述
2.2.4 基本的二进制加法/减法器,图2.2(a)示出了补码运算的二进制加法减法器逻辑结构图.由图看到,n个1位的全加器(FA)可级联成一个n位的行波进位加法器.M为方式控制输入线,当M=0时,做加法(AB)运算;当M=l时,做减法(A-B)运算,在后一种情况下, A-B运算转化成A 补+-B 补运算,求补过程由B1来实现.因此图中是右边的全加器的起始进位输入端被连接到功能方式线M上,做减法时M=l,相当于在加法器的最低位上加1.另外图中左边还表示出单符号位法的溢出检测逻辑:当Cn=Cn-1时,运算无溢出;而当CnCn-1时,运算有溢出,经异或门产生溢出信号.,图2.2 (a) 行波进位的补码加法/减法器,两个二进制数字Ai,Bi和一个进位输入Ci相加,产生一个和输出Si,以及一个进位输出Ci1。表2.2中列出一位全加器进行加法运算的输入输出真值表。 根据表2.2 所示的真值表,三个输入端和两个输入端可按如下逻辑方程进行联系:,按此表达式组成的一位全加器示图2.2(b)。,表2.2 一位全加器真值表,图2.2(b)行波进位的补码加法减法器,对一位全加器(FA)来说,Si的时间延迟为6T(每级异或门延迟3T),Ci1的时间延迟为5T,其中T被定义为相应于单级逻辑电路的单位门延迟。T通常采用一个“与非”门或一个“或非”门的时间延迟来作为度量单位。,现在我们计算一个n位的行波进位加法器的时间延迟。假如采用图2.2(b)所示的一位全加器并考虑溢出检测,那么n位行波进位加法器的延迟时间ta为,9T为最低位上的两极“异或”门再加上溢出“异或”门的总时间,2T为每级进位链的延迟时间。 当不考虑溢出检测时,有 ta(n-1)2T9T(2.23) ta意味着加法器的输入端输入加数和被加数后,在最坏情况下加法器输出端得到稳定的求和输出所需的最长时间。显然这个时间越小越好。注意,加数、被加数、进位与和数都是用电平来表示的,因此,所谓稳定的求和输出,就是指稳定的电平输出。,2.2.5 十进制加法器 十进制加法器可由BCD码(二十进制码)来设计,它可以在二进制加法器的基础上加上适当的“校正”逻辑来实现,该校正逻辑可将二进制的“和”改变成所要求的十进制格式。 n位BCD码行波式进位加法器的一般结构如图2.3(a)所示,它由n级组成,每一级将一对4位的BCD数字相加,并通过一位进位线与其相邻级连接。而每一位十进制数字的BCD加法器单元的逻辑结构示于图2.3(b)。,图2.3十进制加法器,在十进制运算时,当相加二数之和大于9时,便产生进位。可是用BCD码完成十进制数运算时,当和数大于9时,必须对和数进行加6修正。这是因为,采用BCD码后,在二数相加的和数小于等于9时,十进制运算的结果是正确的;而当相加的和数大于9时,结果不正确,必须加6修正后才能得出正确的结果。因此,当第一次近似求值时,可将它看成每一级是一个4位二进制加法器来执行,就好像i和i是普通4位二进制数一样。,设Si代表这样得到的4位二进制数和, Ci1为输出进位,而Si代表正确的BCD和, Ci1代表正确的进位,那么当iiCi10时, SiSi 当XiYiCi10时, SiSi6 显然,当Ci11或Si10时,输出进位Ci11。因此,可利用Ci1的状态来产生所要求的校正因子; Ci11时校正因子为6; Ci10时校正因子为0。在图2.3(b)中,4位行波式进位的二进制加法器计算出和Si,然后Si经过第二级二进制加法器加上0或6,则产生最终结果Si。,
展开阅读全文