毕业论文--七个加数的并行同步加法器研究.doc

上传人:椰子壳 文档编号:3937703 上传时间:2019-10-10 格式:DOC 页数:19 大小:474.02KB
返回 下载 相关 举报
毕业论文--七个加数的并行同步加法器研究.doc_第1页
第1页 / 共19页
毕业论文--七个加数的并行同步加法器研究.doc_第2页
第2页 / 共19页
毕业论文--七个加数的并行同步加法器研究.doc_第3页
第3页 / 共19页
毕业论文--七个加数的并行同步加法器研究.doc_第4页
第4页 / 共19页
毕业论文--七个加数的并行同步加法器研究.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《毕业论文--七个加数的并行同步加法器研究.doc》由会员分享,可在线阅读,更多相关《毕业论文--七个加数的并行同步加法器研究.doc(19页珍藏版)》请在三一文库上搜索。

1、阜阳师范学院本科毕业论文题目:七个加数的并行同步加法器研究 学 号:2002C406152 姓 名: 徐峰 年 级:02级电子(1)班 系 别:物理系 专 业:电子信息科学与技术 完成日期:2005年12月 指导老师:刘杰论文提纲摘 要:微处理器中的算术逻辑单元包括算术运算和逻辑运算,加法器是其重要的组成部分。由于传统的加法器同时只能进行两个数相加,成为制约微处理器速度的瓶颈。如果能够找到多个加数并行同步相加的设计方案并设计出新的加法器电路,则既可以克服传统加法器不能同时进行多个数相加的缺点,同时也可以提高其它算术运算的速度。基于此,以七个四位二进制加数为例研究了并行同步加法器的设计原理、工作

2、过程,并进行了模拟验证。结果证明了该研究方案的正确性、可行性和快速性,完全可以应用到新的微处理器的设计中,进而推动微处理器设计理念的变革。关键词:半加器,全加器,超前进位加法器,4位超前进位加法器1 引言2 原理与结构设计3 总体电路设计4 模块结构与功能介绍 4.1 模块s0a、c01a、c02a结构与功能介绍 4.1.1 模块s0a结构与功能介绍 4.1.2 模块c01a结构与功能介绍 4.1.3 模块c02a结构与功能介绍4.2 模块ha1、ha2、ha3结构与功能介绍4.3 模块fa1、fa2、fa3结构与功能介绍4.4 超前进位加法器 5 仿真验证 5.1 功能验证 5.2 时间仿真

3、6 结束语参考文献摘要、关键词译文七个加数的并行同步加法器研究姓名:徐峰 学号:2002C406152 指导教师:刘杰摘 要:微处理器中的算术逻辑单元包括算术运算和逻辑运算,加法器是其重要的组成部分。由于传统的加法器同时只能进行两个数相加,成为制约微处理器速度的瓶颈。如果能够找到多个加数并行同步相加的设计方案并设计出新的加法器电路,则既可以克服传统加法器不能同时进行多个数相加的缺点,同时也可以提高其它算术运算的速度。基于此,以七个四位二进制加数为例研究了并行同步加法器的设计原理、工作过程,并进行了模拟验证。结果证明了该研究方案的正确性、可行性和快速性,完全可以应用到新的微处理器的设计中,进而推

4、动微处理器设计理念的变革。关键词:半加器,全加器,超前进位加法器,4位超前进位加法器1 引言电子计算机是由具有各种逻辑功能的逻辑部件组成的,这些逻辑部件按其功能结构又可分为组合逻辑电路和时序逻辑电路。所谓组合逻辑电路是由门电路组合而成的逻辑电路,加法器就属于其中的组合逻辑电路。1-2在计算机中,中央微处理器(CPU)的算术逻辑单元(ALU)的功能是进行算术运算和逻辑运算,且所有数据的运算都是以二进制为单位的3-4。在ALU完成的操作中,逻辑运算是按位操作、同步运行,这使得逻辑运算速度很快,且是一个常数,不需进行过多的优化工作;在算术运算中,所有的加、减、乘、除运算,最终都要归结为加法运算,因此

5、,加法器是算术运算中的重要运算部件,加法器的速度直接决定了整个电路的速度5。为了提高整体电路的速度,有必要提高加法器的速度,为此必须对加法器的电路进行改进。然而传统的加法器不仅存在着进位问题,同时还存在着一次能进行几个数相加的问题。为了降低加法器进位传输所耗的时间,提高其计算速度,人们设计了多种类型的加法器,如行波进位(RIP)加法器、跳跃进位加法器(CSKA:Carry-Skip Adders)、进位选择加法器(CSLA:Carry-SeLect Adders)、超前进位加法器(CLA:Carry-Lookahead Adders)等6。它们都是利用各位之间的状态(进位传递函数P、进位产生函

6、数G等)来预先产生进位信号,以此降低进位从低位向高位传递的时间6。但这些加法器一次只能进行两个数相加,对多个数相加需要逐个相加,这显然影响了运算速度。本文通过七个4位二进制加数的并行同步加法器的研究,探讨了多个加数相加的并行同步加法器的设计原理及工作过程,最后通过软件MAX+plus II对设计方案进行了功能验证和时间仿真。2 原理与结构设计 如图1所示,这是七个四位二进制数相加的平面结构原理图,加数分别用a3、a2、a1、a0;b3、b2、b1、b0;c3、c2、c1、c0;d3、d2、d1、d0;e3、e2、e1、e0;f3、f2、f1、f0;g3、g2、g1、g0表示,它们均是二进制数。

7、因为七个四位二进制数相加所得最大和用二进制表示是七位,故用S6、S5、S4、S3、S2、S1、S0表示最后的和。又七个一位二进制数相加最大和是111,因此它们的进位有两个,分别用c01a、c02a;c11a、c12a;c21a、c22a;c31a、C32表示。 下面对图1进行分析:a0、b0、c0、d0、e0、f0、g0相加得本位和s0a与两进位c01a、co2a;a1、b1、c1、d1、e1、f1、g1相加得本位和s1a与两进位c11a、c12a;a2、b2、c2、d2、e2、f2、g2相加得本位和s2a与两进位c21a、c22a;a3、b3、c3、d3、e3、f3、g3相加得本位和s3a与

8、两进位c31a、c32a,图中的c-1和c-2是低位模块传来的进位。如图1示,s0a与c-1,c22a与c31a采用半加器,所得和分别是s0b、s4b,进位分别为c0b、c4b。s1a、c-2、c01a,s2a、c02a、c11a,s3a、c12a、c21a采用全加器,所得和分别为s3b、s2b、s1b,进位分别为c3b、c2b、c1b。图中s5b=c32a。这是推理的第一步。下面进行推理的第二步:S0就是s0b,s1b与c0b采用半加器,得和S1与进位C1,可以看出,进位C1,以及s2b与c1b、s3b与c2b、s4b与c3b、s5b与c4b组成了一个两个二进制数相加的4位超前进位加法器,这

9、时可以利用各位之间的状态(进位传递函数P、进位产生函数G)来预先产生低位的进位信号,从而得出加到每一位全加器上的进位输入信号C2、C3、C4、C5,而不是从最低位开始逐位传递进位信号,就可以有效地提高运算速度、节省运算时间。最后就得出了和S6、S5、S4、S3、S2、S1、S0,这里的S6就是进位C54。 图1 七个二进制加数相加的原理图3 总体电路设计如图2所示,这是一个七个四位加数的并行同步加法器的逻辑电路图,在电路设计中由于电路比较复杂,所以把结构相同的电路部分封装成模块进行设计,这样在绘制电路图和模拟仿真时就可以调用模块进行。关于模块的内部结构及逻辑推算在后面进行介绍。图2 七个加数的

10、并行同步加法器电路图在这个电路中,模块S01、S11、S21、S31的内部结构和功能都是相同的,它们的功能都是计算出七个二进制输入数(ai、bi、ci、di、ei、fi、gi,i=0、1、2、3)的本位和(Sia,i=0、1、2、3)与两进位(Ci1a、Ci2a,i=0、1、2、3)。模块ha1、ha2、ha3都是半加器,ha1的功能是得出s0a与c-1的本位和s0b与进位c0b,ha2的功能是得出c22a与c31a的本位和s4b与进位c4b,ha3的功能是得出s1b与c0b的本位和S1与进位C1。模块fa1、fa2、fa3是内部结构相同的全加器,它们有三个输入数,输出是本位和与进位;fa1的

11、功能是得出加数s1a、c-2、c01a的本位s1b与进位c1b,fa2的功能是得出加数s2a、c02a、c11a的本位和s2b与进位c2b,fa3的功能是得出加数S3a、c12a、c21a的本位和s3b与进位c3b。模块fa4、fa5、fa6、fa7也是内部结构相同的全加器,但与模块fa1、fa2、fa3不同的是它们的输出只有本位和,进位的线路都在模块之外表示的;模块fa4的功能是得出加数s2b、c1b、C1的本位和S2,模块fa5的功能是得出加数s3b、c2b、C2的本位和S3,模块fa6的功能是得出加数s4b、c3b、C3的本位S4,模块fa7的功能是得出加数s5b、c4b、C4的本位和S

12、5。图2中进位C2、C3、C4、C5(即S6)的线路封装在模块jw内,模块jw的功能主要是得出超前进位C2、C3、C4、C5,关于C2、C3、C4、C5的函数表达式的推导在4.4中将给予推算。4 模块结构与功能介绍4.1 模块s0a、c01a、c02结构与功能介绍考虑到模块S01、S11、S21、S31的内外部结构都完全相同,见图2、图3、图4,所以这里选择模块S01作为典型范例来介绍。模块S01又有三块模块构成,分别是s0a、c01a、c02a。模块s0a的功能是得出七个二进制数相加的本位和;c01a、c02a的功能是得出七个二进制数相加的向前一位进位和向前二位进位。下面分别介绍模块s0a、

13、c01a、c02a的结构和功能。 图3 模块S01外部结构 图4 模块S01内部结构4.1.1 模块s0a结构与功能介绍模块s0a电路图可根据下面s0a的逻辑函数表达式绘出,它是有64个七输入端口的与门和1个64输入端口的或门构成,此电路采用了大量的与门和或门设计,这样就使电路级数达到了最低,从而提高了运算速度;利用卡诺图化简法推算出s0a的函数表达式,表1是它的逻辑卡诺图: 表1 s0a逻辑卡诺图根据此表,可以得出s0a的函数表达式为:4.1.2 模块c01a结构与功能介绍模块c01a电路图可根据下面c01a的函数表达式绘出,它是有43个6输入端口与门和1个43输入端口或门构成,此电路使用了

14、与非门设计来降低电路的级数;再利用卡诺图化简法推算出c01a的函数表式,表2是它的逻辑卡诺图:表2 c01a逻辑卡诺图根据此表,可以得出c01a的函数表达式为:4.1.3 模块c02a结构与功能介绍模块c02a电路图可根据下面c02a逻辑函数表达式绘出,利用卡诺图化简法推算出c02a的函数表达式,表3是它的逻辑卡诺图: 表3 c02a逻辑卡诺图根据此表,可以得出c02a的函数表达式为:4.2 模块ha1、ha2、ha3介绍模块ha1、ha2、ha3都是半加器,它们的内部结构与功能都相同,在此以模块ha1为例作详细介绍,见图5和图6。图5中两输入端口表示加数和被加数,对于此模块是指s0a和c-1

15、,s0b是s0a与c-1相加所得的本位和,c0b是进位。图5 模块ha1外部结构图6 半加器电路图表4 半加器真值表s0ac-1c0bs0b0000010110011110下面来推导s0b、c0b的逻辑函数表达式,表4是其功能表。由此表可得出、 , 依此可以类推出模块ha2、ha3输出端的逻辑函数表达式7,对于模块ha2:,对于模块ha3: 、。4.3 模块fa1、fa2、fa3介绍 模块fa1、fa2、fa3都是全加器,它们的内部结构和功能都相同,在此以模块fa1为例作详细介绍,见图7和图8。图8中输入端代号s、c1、c2分别表示两个加数和低位向高位的进位,对应于图8,分别代表s1a、c01

16、a、c-2,s1b是全加器的本位和,c1b是进位。 图7 模块fa1外部结构 图8 全加器电路图下面推导s1b、c1b的逻辑函数表达式,表5是其功能表。按照输入均取反,输出也均为反(例如功能表的第1、8行,第2、7行,第3、6行,第4、5行反映了这一关系),可把s1b、c1b输出表达式写成与或非门的形式,这样就降低了门电路的级数,从而提高了运行的速度。表5 全加器真值表 , 依此可类推出模块fa2、fa3的输出端的逻辑函数表达式,至于模块fa2:, 至于模块fa3:, 。74.4 超前进位加法器将4个全加器相连可得4位加法器,但其加法时间较长,这是因为进位是串行传送的,高位全加和必须等低位进位

17、来到后才能进行,加法时间与位数有关。只有改变进位逐位传送的路径,才能提高加法器工作速度。解决方法之一是采用“超前进位产生电路”来同时形成各位进位,从而实现快速加法。图9是本设计中所使用的超前进位加法器的逻辑电路图。在图9中,模块jw的功能是利用各位之间的状态(进位传递函数P、进位产生函数G)来预先产生高位的进位信号,从而得出加到每一位全加器上的进位输入信号C2、C3、C4、C5,而不是从最低位开始逐位传递进位信号,这样可以有效地提高运算速度、节省运算时间。它的逻辑电路图如图10示。图9 超前进位加法器图10 模块jw电路图下面推导超前进位逻辑函数表达式:根据表5,超前进位产生的电路是根据各位进

18、位的条件来实现的。只要满足下述两条件中任一条,就可形成C2:(1)s2b、c1b均为:“1”;(2)s2b、c1b任一个为“1”,且进位C1为“1”,由此,可得出C2的表达式为:C2=s2bc1b+(s2b+c1b)C1;同理只要满足下述条件中任一个即可形成C3:(1)s3b、c2b均为“1”;(2)s3b、c2b任一为“1”,且s2b、c1b均为“1”;(3)s3b、c2b任一为“1”,同时s2b、c1b任一为“1”,且进位C1为“1”,由此,可得出C3表达式为:C3=s3bc2b+(s3b+c2b)s2bc1b+(s3b+c2b)(s2b+c1b)C1;8同理可得C4、C5的表达试为: C

19、4=s4bc3b+(s4b+c3b)s3bc2b+(s4b+c3b)(s3b+c2b)s2bc1b+(s4b+c3b)(s3b+c2b)(s2b+c1b)C18;C5=s5bc4b+(s5b+c4b)s4bc3b+(s5b+c4b)(s4b+c3b)s3bc2b+(s5b+c4b)(s4b+c3b)(s3b+c2b)s2bc1b+(s5b+c4b)(s4b+c3b)(s3b+c2b)(s2b+c1b)C18;下面可以引入进位传递函数Pi和进位产生函数Gi的概念。它们的定义为: ; ; ;Pi的意义是:当sib、cib中有一个为“1”时,若有进位输入,则本位向高位传送进位,这个进位可看成是低位进

20、位越过本位直接向高位传递的。Gi的意义是:当sib、cib均为“1”时,不管有无进位输入,定会产生向高位的进位。将Pi、Gi代入C1-C4式,便可得: 当全加器的输入均取反码时,它的输出也取反码。可把它们以“与非”、“或非”、“与或非”形式改写成 图11 模块fa4电路图模块fa4、fa5、fa6、fa7功能都是得出本位和,这里只以fa4为例介绍,它的逻辑电路图如图11示,可推导出本位和的逻辑函数表达式:同样可得: 5 仿真验证5.1 功能验证对本文中的七个加数的并行同步加法器的功能验证,是用软件MAX+plus实现的。在MAX+plus数字系统开发软件上,采用MAX+plus的图形编辑法对其

21、电路原理图进行设计输入,将所设计输入的文件(.gdf文件)存盘并运行集成编译器的网表提取器模块检查文件的错误,之后用MAX+plus/Waveform Editor对设计项目进行仿真,即对电路的功能进行模拟,以验证电路设计的正确性9-10。图12a和图12b就是此加法器的波形仿真,由图可知此电路设计是正确的,取其中任意两组值验证,例如在800ns900ns间,g3g0、f3f0都取1,e3e0、d3d0、c3c0、b3b0、a3a0都取0,c-1、c-2取0,这七个二进制数相加所得结果S6S5S4S3S2S1S0=0011110;在1.3s1.4s间,g3g0、f3f0、e3e0、d3d0、c

22、3c0、b3b0、a3a0都取1,c-1、c-2取0,这七个二进制数相加所得结果S6S5S4S3S2S1S0=1101001。图12a 波形验证图12b 波形验证 5.2 时间仿真这里用MAX+plus/Timing Analyzere命令对七个四位二进制数的并行同步加法器和两个四位二进制数的超前进位加法器进行定时分析,然后将两者的的运算时间作一比较就可知道哪种加法器的性能更优越。计算机微处理器对七个四位二进制数相加的过程是第一个数与第二个数用超前进位加法器相加,所得和与第三个数再采用超前进位加法器,直至加到第七个数,如此可知整个过程所用时间是两个四位二进制数用超前进位加法器运算所用时间的6倍

23、,通过图14可知两个四位二进制数用超前进位加法器运算所用最大时间是13.1ns,那么计算机微处理器对七个四位二进制数相加所用最大时间是613.1ns=78.6ns。而本文中的七个加数的并行同步加法器运算所用最大时间是46ns,见图13示。这明显比前者运算所用时间短、而且减少了约2/5的时间。这进一步证实了本加法器设计是快速的、可行的、性能优越的。图13 七个加数的并行同步加法器定时分析图14 四位超前进位加法器定时分析6 结束语通过软件MAX+plus对七个四位二进制数的并行同步加法器的电路模拟仿真,以及与超前进位加法器对七个四位二进制数相加所用时间的比较,可以看出七个加数的并行同步加法器的运

24、算速度比计算机微处理器的运算速度更快,并且七个加数的并行同步加法器实现了一次对七个加数的同时相加,这克服了计算机微处理器一次只能对两个加数相加的弊端,因此七个加数的并行同步加法器比传统的加法器性能更具快速性和优越性。如将该研究方案应用到新的微处理器的设计中,会使微处理器运算速度得到很大的提高,必将推动微处理器设计理念的变革。参考文献:1王德新 王志康.计算机组成M.上海:复旦大学出版社,1999年2仇玉章.32位微型计算机原理与接口技术M.北京:清华大学出版社,2000年3韩 雁.专用集成电路设计技术基础M.四川:电子科技大学出版社,2000年4谢莹,陈琳.16位超前进位加法器的设计J.合肥工

25、业大学学报,2004年,27卷5黄舒怀,蔡敏.超前进位加法器的一种优化设计J.半导体技术,2004年,29卷6安印龙,许琪等.并行加法器的研究与设计J.晋中师范高等专科学校学报,2003年,20(4):3307康华光.电子技术基础数字部分M.北京:高等教育出版社,2000年8王爱英.计算机组成与结构M.北京:清华大学出版社,1990年9李国洪,沈明山.可编程器件EDA技术与实践M.北京:机械工业出版社,2004年10冯涛,王程.可编程逻辑器件开发技术MAX+plus入门与提高M.北京:人民邮电出版社,2002 THE RESEARCH OF SEVEN NUMBERS PARALLEL AND

26、 SYNCHRONOUS ADDERName:XuFeng Student Number:2002C406152 Advisor:LiuJieAbstract:The arithmetic logic unit in the microprocessor includes the arithmetic operations and the logic operations,The adder is its important part. It becomes the bottleneck of limiting the microprocessor speed because the trad

27、itional adder can add two addends only at the same time.If we can find out a design project that several addends can be added parallelly and synchronously. The defection can be overcomed that the traditional adder cant add many addends at the same time. The speeed of other arithmetic operations can

28、also be raised.According to this ideal ,the designing principal and work process of the parallel and synchronous adder are researched , imitated and verified by seven four-bit addends.The reasults show that the research scheme is accurate, feasible and fast. when it is used in the design of the microprocessor,it must be able to push the change of the microprocessor designing principle. Keywords:half adder;full adder;carry look-ahead adder;4-bit carry look-ahead adder第 19 页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1