首页 > 编程知识 正文

74283加法器原理,我的生物黑科技顶点小说

时间:2023-05-03 07:48:45 阅读:125049 作者:3591

第一章加法器一、数据格式

1 .定点数表示法: x=x0x1x2…xn,x0:符号位,0表示正,1表示负。 2 .浮点表示法:一台机器的浮点数由阶码、尾数及其符号位组成(尾数:用定点表示,给出有效数字的位数决定浮点数的表示精度; 步骤代码:用整数表示,表示数据中小数点的位置,决定浮点数的表示范围。 32位浮点数的IEEE754标准格式为: s :浮点数的符号位,1位,0表示正数,1表示负数。 m :尾数、23位、用小数表示,小数点位于尾数的开头。 (阶码,8位阶码采用隐式方式,移动符号表示正负指数。

码移动方法对两个指数大小的比较和阶操作比较方便,因为阶码域值大者指数值也大。 在该方式情况下,在将浮点数的指数真值e变更为次数代码e时,在指数e上加上一定的偏移值127(0111111 ),即,E=e 127 .归一化后的32比特浮点数x的真值, x=((-1 ) s)1.m )2E-127 e=E-127归一化后64位浮点数x的真值可以表示为x=(-1 ) s)1.m ) 2e-1027的浮点数的尾数为如果阶数代码e为0且尾数m也为0,则表示的真值x为0,并且组合编码比特s为0或1,具有正和负的零分量。 如果阶代码e为全1且尾数m为全0,则所表达的真值x为无限大,从而组合码比特s为0或1,也有和-的区分。 因此,在32位浮点数表示中,除了e为全0和全1(255 ) 10且表示零和无限大的特殊情况之外,指数的偏移值选择127 ) 0111111,而不是128(1000000 )。 对于规范化浮点数,e的范围为1到254,而真正的指数值e为- 126到127。 因此,32位浮点数表示的绝对值范围为10-38到1038 (用10的幂表示)。

二.加法器

的所有加、减、乘、除四则运算,最终都是转换为加运算实现的,所以加运算是运算电路的核心。 实现半加法运算的电路称为半加法器(HalfAdder )。 半激励有两个二进制输入,将输入的值相加,并将结果输出到“和”(Sum )和“进位”(Carry )。 半加法器可以生成进位值,但半加法器本身不能处理进位值。

S=A B C=A B位全加法器:

全加法器的三个二进制输入中,一个是进位值的输入,所以全加法器可以处理进位值。 全加法器可以由两个半加法器组合而成。 si=(aibi ) cici1=(aibi ) ci ) aibi ) )三、并行加法器

在并行加法器中,全加法器的位数和操作数的位数相同,可以同时加到各位上。 影响速度的主要是传递进位信号的进位链。 优化设计的主要目标是快速、低功耗、资源(面积)开销小,其关键是构想快速、高效的进位算法和结构。 一流的高速加法器有超前进位加法器、进位跳跃加法器、树形结构加法器、对数进位跳跃加法器、混合进位/选择进位加法器、最高位进位级联进位加法器等。 这些快速、高效的进位方法一般是在进行进位时的改进或进位混合。 因此,超前进位加法器(CLA )自然成为优化设计比较的标准。 在结构方面,行波进位加法器是最简单的整数加法器; 其时间复杂度为o(n )。 对于位数少的加法,进位加法器是有效的,但在长位数的加法中,由于该加法器的时间复杂度为o(n^-0.5 ),因此其效果不明显。 由于超前进位加法器具有O(log2n的时间复杂度,因此是最快的加法器算法。 超前进位加法器由于速度快、结构模块化而得到广泛应用。 该算法实现了利用大量硬件开销产生进位信号的电路,运算时间的减少比较明显。

1、行波进位加法器从上图可以看出,n个1位全加法器(FA )可以连接到一个n位行波进位加减法器上。 图中左边还表示单编码比特法的溢出检测逻辑; Cn=Cn-1时,运算没有溢出; 另一方面,CnCn-1时,运算中存在溢出,通过异或门产生溢出信号。 对于1比特全加法器(FA )来说,Si的时间延迟为4T )各级异或门延迟为2T ),而Ci 1的时间延迟为4T。 这里,t被定义为与单级逻辑电路对应的单位栅极延迟量。 t通常使用“与非”门或“与非”门的时间延迟作为测量单位。 n位行波进位加法器的延迟时间ta是ta=n2T 6t=(2n 6) T 6T加上溢出到最下位两极异或门的异或门的合计时间,2t是各进位链的延迟时间。

2、进行进位前加法器(CLA )

进位链可以有效减少进位延迟,使进位门产生进位

,各进位彼此独立,不依赖于进位传播。因此延迟非常小,速度非常高。         设一个n位的加法器的第i位输入为ai、bi、Ci,输出si和Ci+l,其中ci是低位来的进位,ci+l(i =n-1,n-2,⋯,1,O)是向高位的进位,Co是整个加法器的进位输入,而Cn是整个加法器的进位输出。则有: Si = ai + bi +Ci               (1) Ci+1 = ai&bi + Ci&(ai +bi)     (2) 令: Gi = ai&bi Pi = ai + bi 则有:Ci+l = Gi +Pi•Ci             只要Gi = ai&bi = l,就会产生向Ci+l位的进位,称Gi为进位产生函数;同样,只要Pi = ai + bi =l,就会把Ci传递到Ci+1位,所以称Pi为进位传递函数。

随着位数的增加式(2)会加长,但总保持三个逻辑级的深度,因此形成进位的延迟是与位数无关的常数。一旦进位(Cl---Cn-1)算出以后,和也就可由式(1)得出。


         对于4位的加法器,异或门需2T,产生Gi和Pi需要2级门延迟,Ci需要4级,si需要4级,总共需要4级门延迟。与串联加法器(一般要2n级门延迟)相比,(特别是n比较大的时候)超前进位加法器的延迟时间大大缩短了。对于16位来说,需增加第二层超前进位链逻辑,总共需要7级门延迟。对于64位来说,需增加第三层超前进位链逻辑,总共需要10级门延迟;而串联加法器需2*64 + 6 = 134级门延迟。


C4 = G3 + P3C3 = G3 + P3G2 + P3P2G1 + P3P2P1G0 + P3P2P1P0C0 所以:P = P3P2P1P0,  !G = !G3 & !P3G2 &!P3P2G1 & !P3P2P1G0 C4 = G + PC0 = !(!G & !PC0) 所以,P、G就成为下一层的进位传递与产生函数。 64位超前进位加法器总共需5*64 + 19*16 + 19*4 + 19 = 719个门逻辑。实际上还要更多的门;需考虑,减法运算,乘法运算等来共享64位超前进位加法器;所以,还需多路器逻辑门等等。


3、进位旁路加法器(CSKA)


          设计加速一个宽位加法器,它使进位绕过整个加法器的一部分进行传播。对4位一组的加法器情形,第一组的进位输入位表示成C0,而4位加法器本身产生一个进位输出位C4。如果Ai、Bi其中都有一个为1,而C0为1;那么,自然会产生进位C4=1。如果使用一个相应的进位逻辑门旁路电路;只需要5级门延迟。而不会像4位行波进位加法器那样需12级门延迟。跳跃进位旁路加法器就是在行波进位加法器的Cin—Cout路径中,通过增加旁路逻辑门电路来加速加法器的进位传递。速度自然要比行波进位加法器快不少。


4、进位选择加法器(CSA)


           其主要思想即将前一级的进位先假定为1或者0,之后分别计算出一个结果,然后再用前一级的进位来选择得到相应的结果,这样后级的计算就不用等候前一级的进位,而是和前级的计算并行进行,之后再做一个选择,从而达到快速运算的目的,当然所付出的代价是它要增加加法器和MUX以及相应的互联线,牺牲一定的面积和功耗。如果4位一组,64位加法器需16组,组间是串行传递,MUX需要2级门延迟;所以,总共需36级门延迟。开头的2组用超前进位加法器(CLA),后面的组就可用行波进位加法器了。用空间换时间,比行波进位加法器提速了不少。


           应当注意的是:在用变长分组的进位选择加法器中,用于选择的信号扇出负载为x-y+l。由于加法器构造过程中,每向后一级,加法器位宽都会拓宽其两个子加法器位宽之和,因而这两个选择信号的扇出负载也会逐级提高,因而各个多路选择器(MUX)的数据选取速度也会逐级降低。


5、 4-2压缩加法器


        在部分积求和网络模块中,为了获得较高的速度,采用了改进的4-2压缩加法器结构。4-2压缩器通过将具有相同权值的4个部分积减少到2个来提高并行度。传统的4-2压缩器是由2个串行连接的全加器所组成。             如果是5个1相加,结果应是101。而这里并不是将2个进位相加,而是产生2个进位Cout,C和一位的结果S。既是:Cout,C,S都是1。Cout将作为高一个位的进位保留位的进位输入;而C是本位的进位保留位。“进位保留”是指先保留进位输出而不是立即用它来计算最终的和。而是将进位保留到下一级的加法器进行,避免了进位链的延时。所以一个4-2压缩加法器总共需6级门延迟。

           4-2压缩加法器主要应用于乘法器的运算。整个乘法器的速度,主要有三部分组成:Booth 编解码单元或APO 编解码单元、4-2压缩单元与CLA 快速求和单元。APO编码是完成缩减部分积数量的算法,每次扫描2位数据,将部分积数量缩减了50%。31位乘数(符号位取0)采用APO算法编码后与被乘数相乘得到16 行部分积;接着基于4-2压缩器的第一级4个压缩单元将部分积压缩成Carry、Sum形式的两行部分积共4组,之后;第二级2个压缩单元将前面的4组8行数据再压缩成Carry、Sum形式的两行部分积共2组,之后;第三级1个压缩单元将前面的2组4行数据再次压缩成Carry、Sum形式的两行部分积共1组2行数据。最后用64位超前进位加法器(CLA)完成最终两行部分积的快速求和结果。乘法器总共需APO算法4级门延迟 + 三级4-2压缩加法器(3*6 )18级门延迟 =22级门延迟。因64位超前进位加法器是使用流水部件,延迟不计算。如果一个门延迟是小于23PS,那么32位乘法器有望速度能达到0.5ns。占用2个时钟周期。

     光走过一米的距离大约需3.3ns,如果走过30纳米的距离大约需0.0001ps,而电信号,由于电容、电感、电阻的存在就慢多了。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。