四位并行加法器实验报告

时间:2024.4.21

安徽大学计科院

《计算机组成原理》课程设计

实验设计报告

设计题目:四位并行加法器设计

班级:08软件二班

 小组成员:黄德宏(E20814116

            胡从建(E20814110

指导老师:周勇

完成日期:20##-3-15

                     一.任务概述

1.1设计题目概述:

      四位并行加法器采用“超前进位产生电路”来同时形成各位进位,从而实现快速加法。超前进位产生电路是根据各位进位的形成条件来实现的。它不需要依靠低位进位来到后在进行高位进位,而是根据各位输入同时产生进位,改变了进位逐位传送的方式,明显提高了加法器的工作速度。

1.2设计任务:

      通过小组合作讨论,利用MuxPlus2软件设计画出四位并行加法器原理图,在实验箱上连线,实现4位二进制数相加并得到正确的结果.

1.3设计目的

       1掌握MaxPlus2软件的使用方法,并以此为工具进行设计电路原理图.

       2了解加法器的工作原理,掌握超前进位产生电路的设计方法.

       3正确将电路原理图下载到试验箱中.

       4正确通过实验箱连线实现4位二进制数的相加并得到正确结果.

       5增强小组协作的能力以及对知识探求的兴趣。

       6完成设计实验报告.

1.4设计思路:

      加法器是计算机的基本运算部件之一。

若不考虑进位输入,两数码Xn,Yn相加称为半加,如下图为半加其功能表:

(a)   半加器功能表

(b)半加器逻辑图

(c)用异或门实现半加器

Xn Yn以及进位输入Cn-1相加称为全价,其功能表如下图:

a.(全加器功能表)

(b) 全加器的逻辑图

(c)全加器的全加和Fn也可用异或门表示

由功能表可得全加和Fn和进位输出Cn表达式:

      Fn=Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1

       Cn= Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1

Fn还可以用两个半加器来形成

       Fn=Xn+Yn+Cn-1

如此,将n个全加器相连可得n位加法器,如图:

但加法时间较长,只是因为其位间进位使串行的传送的,本位全加和Fi必须等低位进位Ci-1来到后才能进行,加法时间与位数有关,只有改变进位逐位传送,才能提高加法器的工作速度。因此,只要使各位的进位不需依赖上一个进位即可。

二.设计实现

2.1 设计原理:

      设定四位输入数据为A3A2A1A0B3B2B1B0以及进位输入C0,四位输出S3S2S1S0和一位进位输出。

根据超前进位产生电路的形成条件可得出,只要满足以下两条件中的任一个,就可形成进位C1,(1A0B0均为1;(2A0B0任一一个为1,且进位C01,

由此可得:C1=A0B0+A0+B0C0

      只要满足下述条件中的任一个即可形成C2,(1A1,B1均为1;(2A1,B1任一一个为1,且A0,B0均为1;(3A1,B1任一一个为1,同时且A0,B0任意一个为1,且C01

      由此可得:C2=A1B1+A1+B1A0B0+A1+B1)(A0+B0C0

同理可得到C3C4的表达式:

C3=A2B2+(A2+B2)A1B1+(A2+B2)(A1+B1)A0B0+(A2+B2)(A1+B1)(A0+B0)C0

C4=A3B3+(A3+B3)A2B2+(A3+B3)(A2+B2)A1B1+(A3+B3)(A2+B2)(A1+B1)A0B0+(A3+B3)(A2+B2)(A1+B1)(A0+B0)C0

引入进位传递函数Pi和进位产生函数Gi.其定义如下:

      Pi=Xi+Yi.

      Gi=XiYi

Pi的意义是:Xi,Yi中有一个为1,若有进位输入,则本位向高位传送此进位,这个进位可看成是低位进位越过本位直接向高位传递的.

      Gi的意义是:Xi,Yi均为1,不管有无进位输入,本位定会产生向高位产生的进位.

      Pi,Gi代入C1~C4,便可得:

      C1=G0+P0C0

      C2=G1+P1G0+P1P0C0

      C3=G2+P2G1+P2P1G0+P2P1P0C0

      C4=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0

由以上分析可得出在输入项为A3A2A1A0B3B2B1B0以及进位输入C0,各个输出项S3S2S1S0和进位输出C4分别为:

      S3=A3+B3+C3

      S2=A2+B2+C2

      S1=A1+B1+C1

      S0=A0+B0+C0    

      C4=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0

根据以上公式得到其电路原理图如下所示):

      

2.2连线实验,按如下图连接线路:

      

预期结果:

      输入:0010  0011

      结果:0101

2.3实验中遇到的问题:

      电路原理图可以在Muxplus2软件上通过编译,证明设计图没有问题,在实验连线中会遇到结果不对的情况,通过与老师交流和同学间的讨论,最后得出的是电路的输入输出引脚绑定出现问题,由于没有参考,这方面就需要自己不断的测试比较才能得出正确的引脚绑定方案.

      通过测试,引脚绑定为:

      进位输入C0绑定为14

      A0~A3绑定为15~18

      B0~B3绑定为20212224

      S0~S3绑定为25 27 28 29

      进位输出C4绑定为30

三.实验心得

首先我们必须确定实验题目,因为只有这样,我们才能够继续下一阶段的学习、实验阶段。为此,我们通过讨论决定选择四位并行加法器设计这个实验(毕竟以前有上过数字逻辑之类的课程,所以学习起来会相对容易一点)。

正所谓,磨刀不误砍柴工,所以在实验前期,准备工作是很重要的。我们花了一部分时间去了解何谓四位并行加法器以及它的工作原理。这一部分我们是参考《计算机组成与结构》和《计算机组成原理与系统结构实验教程》这两本书中的介绍来完成的。因为有完全相同的例子供我们参考,所以说这部分任务比较容易的就完成了。接下来,我们又花了一部分时间来了解Muxplus2以及如何联机操作。

在所有的前期工作都完成的情况下我们才开始着手做这个实验(如画图),这样避免了我们在实验时走过多的弯路。

由于对试验箱的工作原理等不了解,在接下来的连线阶段就比较困难了。此时,我们几乎是两眼一抹黑,完全不知该如何连线。我们不得不去和其他选择做相同实验的同学一起讨论关于如何连线的问题。通过大家在一起讨论和老师的建议,我们把它和乘法器实验作了比较(发现连线可以参考乘法器),发现了我们都没有做相关的引脚绑定。就如同摸着石头过河一样,我们慢慢的接近正确的结果。

经过5周课程设计实验的学习,让我们对计算机组成原理有了更深层次的理解,并且也深刻地认识到实践的重要性。很多东西我们都不能够仅凭理论就觉得我们理解它了,就比如说这次实验,在事先做好充足准备的情况下还是没有如理想中那样顺利完成。由此,我们明白只有理论与实践相结合才能更深地理解与运用知识,这不就是实践中出真知吗?

  


第二篇:四位并行加法器设计


安徽大学计算机科学与技术学院

《计算机组成原理》

课程设计、实践设计报告

学生学号:    E20814108、E20814098    

学生姓名:      蒋 信、许 东         

年级专业:   08软件工程二班       

授课教师:      周 勇 老 师           

完成时间:        2011/03/20           

4位并行加法器设计实验

1 课程设计概述

1.1 课程设计的教学目的

掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握数据信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识和整机的概念,培养开发和调试计算机的技能。在设计实验中提供应用所学专业知识分析问题和解决问题的能力。

1.2 课程设计的内容

通过MuxPlus2软件,下载加法程序到实验箱,然后在其上连线,输入两个二进制数,观察结果并与理论值进行比较,实现4位二进制数相加并得到正确的结果。

1.3 课程设计的任务

    1、掌握MaxPlus2软件的使用方法。

   2、掌握4位并行加法器的设计原理,掌握超前进位产生电路的设计方法.

   3、正确将电路原理图下载到试验箱中.

   4、正确通过实验箱连线实现4位二进制数的相加并得到正确结果.

   5、完成设计实验报告.

1.4 课程设计的题目及其思想

   题目:设计一个四位并行加法器,并能在试验箱上编译通过,且连线后可以具体实现加法

设计思想:由于本次课程设计的目的是在学完计算机组成原理课程后通过课程设计理解计算机各个功能器件的工作原理,计算机是如何实现这些功能的,所以我们选择了四位并行加法器这个简单的题目,用到了一些逻辑运算部件,并采用超前进位加法器的设计方法提高运算速度。实验最后下载到试验箱上并连线参照了课程实验中乘法器的设计。

2 课程设计的实现

2.1 设计基础

   加法器是计算机的基本运算部件之一。

(1)若不考虑进位输入,两数码Xn,Yn相加称为半加,如下图为半加其功能表:

(a)  半加器功能表

(b)半加器逻辑图

(2)将Xn Yn以及进位输入Cn-1相加称为全价,其功能表如下图:

a.(全加器功能表)

(b) 全加器的逻辑图

由功能表可得全加和Fn和进位输出Cn表达式:

      Fn=Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1

      Cn= Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1+ Xn Yn Cn-1

Fn还可以用两个半加器来形成:

      Fn=Xn+Yn+Cn-1

如此,将n个全加器相连可得n位加法器,如图:

但加法时间较长,只是因为其位间进位使串行的传送的,本位全加和Fi必须等低位进位Ci-1来到后才能进行,加法时间与位数有关,只有改变进位逐位传送,才能提高加法器的工作速度。因此,只要使各位的进位不需依赖上一个进位即可。所以我们采用“超前进位产生电路”来同时形成各位进位,从而实现快速加法,这就是超前进位加法器的设计思想来源。

2.2 设计原理

超前进位产生电路是根据各位进位的形成条件来实现的。只要满足下列二条件中任一个,就可以形成C1,(1)X1,Y1均为1(2)X1,Y1任一个位1,且进位C0位1。

可以写出C1的表达式为

         C1=X1Y1+(X1+Y1)C0

只要满足下述条件中任一个即可形成C2,(1)X2,Y2均为1;(2)X2,Y2任一为1,且X1,Y1均为1;(3)X2,Y2任一为1,同时X1,Y1任一为1,且C0为1。

可以写出C2的表达式为

C2=X2Y2+(X2+Y2)X1Y1+(X2+Y2)(X1+Y1)C0

由上,同理可得到

C3=X3Y3+(X3+Y3)X2Y2+(X3+Y3)(X2+Y2)X1Y1+(X3+Y3)(X2+Y2)(X1+Y1)C0

C4=X4Y4+(X4+Y4)X3Y3+(X4+Y4)(X3+Y3)X2Y2+(X4+Y4) (X3+Y3)(X2+Y2)X1Y1+(X4+Y4) (X3+Y3)(X2+Y2)(X1+Y1)C0

由上面的式子可知:

     C1=X1Y1+(X1+Y1)C0

C2=X2Y2+(X2+Y2)C1

C3=X3Y3+(X3+Y3)C2

C4=X4Y4+(X4+Y4)C3

引入进位传递函数Pi和进位产生函数Gi.其定义如下:

      Pi=Xi+Yi.

      Gi=XiYi

Pi的意义是:当Xi,Yi中有一个为1时,若有进位输入,则本位向高位传送此进位,这个进位可看成是低位进位越过本位直接向高位传递的.

      Gi的意义是:当Xi,Yi均为1时,不管有无进位输入,本位定会产生向高位产生的进位.

      将Pi,Gi代入C1~C4式,便可得:

      C1=G0+P0C0

      C2=G1+P1G0+P1P0C0

      C3=G2+P2G1+P2P1G0+P2P1P0C0

      C4=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0

由以上分析可得出在输入项为A3A2A1A0和B3B2B1B0以及进位输入C0时,各个输出项S3S2S1S0和进位输出C4分别为:

      S3=A3+B3+C3

      S2=A2+B2+C2

      S1=A1+B1+C1

      S0=A0+B0+C0     

      C4=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0

由此我们可以画出如下电路原理路:

 参照乘法器的连线方法,可以画出下面的实验连线图,如下图:

 

2.3结果及问题

  预计结果当输入0001和0010是结果应是0011

实验中多次连线多没有得出最后正确的结果,后来和几个同样做加法器的同学一起讨论,并在老师的指导下发现时引脚没有绑定,导致没有结果,最后在改正了错误的而前提下,读出结果完成实验。

3 课程设计的心的和体会

    通过本课程设计,自己学会了很多,以前只是完全按照书上的模式来连接电路图,现在学会了如何自己动手去构造实验原理图,并且大致能解决实验过程中出现的一些基本问题。

在做此次实验之前,我们做的主要工作是看书,感觉书都没弄懂的话要去做好实验那是不可能的。我们先是参考《计算机组成与结构》和《计算机组成原理与系统结构实验教程》这两本书,了解了何谓四位并行加法器以及它的工作原理。然后我们又花了一些时间来认识和熟悉Muxplus2以及如何联机操作。前后我们共花了两周的时间来完成实验原理图,中间感觉不怎么明白的地方就问同学,同学也没明白的话,我们就一些人在一起讨论。

在接下来的实际连线阶段,由于缺乏对实验箱的深入了解,跟搭档探索讨论了许久也没有搞出来,时间又有限,可把我们急坏了。在跟同学们的商量以及老师的提点下,终于知道,要把相关引脚绑定,然后参照乘法器连线图就基本可以完成最终实验了。

通过和组员的分工合作,以及讨论,更加学会怎么团队合作完成一个工作。还有,通过和组员的交流可以发现彼此对整个实验的思考和理解的差异,互相促进更好地理解这个实验。

经过这5周的课程设计,我对计算机组成原理有了更深一层的理解,并且也深刻地认识到实践的重要性,只有理论与实践相结合才能更深地理解与运用知识。

更多相关推荐:
加法器 数电实验报告三

实验三加法器一实验目的1掌握用SSI器件实现全加器的方法2掌握用MSI组合逻辑器件实现全加器的方法3掌握集成加法器的应用二实验设备及器件1数字逻辑电路实验板1块274HCLS00四二输入与非门1片374HCLS...

八位加法器的设计实验报告

八位加法器的设计实验报告学号U20xx15272班级信息安全0901姓名方浏洋日期20xx528位加法器的设计实验报告目录一实验概述2二设计思路321Quartus中74181的功能分析3228位先行加法器的设...

四位加法器实验报告

四位加法器实验报告1实验目的掌握组合逻辑电路的基本分析与设计方法理解半加器和全加器的工作原理并掌握利用全加器构成不同字长加法器的各种方法学习元件例化的方式进行硬件电路设计学会利用软件仿真实现对数字电路的逻辑功能...

加法器的基本原理实验报告

一实验目的1了解加法器的基本原理掌握组合逻辑电路在Quartus中的图形输入方法及文本输入方法2学习和掌握半加器全加器的工作和设计原理3熟悉EDA工具QuartusII和Modelsim的使用能够熟练运用Vri...

加法器设计实验报告全

重庆XXXX实验报告课程名称实验名称实验类型系别年级班别学生姓名实验教师电子电路基础实验加法器设计设计学时3学时物理与电子工程学院专业电子信息工程09级电信2班学期20xx20xx上xxx学号20xx0701x...

数字电路加法器实验报告

中山大学移动信息工程学院本科生实验报告20xx学年秋季学期课程名称数字电路实验任课教师王军助教李正一实验题目Lab9用3种不同的方法实现4位加法器1行为级描述的加法器2行波进位加法器3超前进位加法器二实验目的1...

串行加法器实验报告

深圳大学实验报告课程名称学院信息工程学院班级实验时间实验报告提交时间教务部制实验要求设计一个串行数据检测器要求连续4个或4个以上为1时输出为1其他输入情况为0编写测试模块对模块进行各种层次的仿真并观察波形编写实...

EDA实验8位加法器的设计实验报告_王炜20xx0414

电气与信息工程学院电子设计自动化实验报告实验二8位加法器设计指导老师谭会生老师学生姓名王炜班级电子信息1202学号12401720xx7实验时间20xx0407实验二8位加法器设计1实验目的1掌握EDA使用工具...

实验一、8位加法器的设计

EDA技术实验报告题目实验一8位加法器的设计学生姓名学号10100140所在学院物理与电信工程学院专业班级物理101班一实验原理基本原理调用库USEIEEESTDLOGICARITHALL直接进行算术运算以实现...

VHDL硬件描述语言四位加法器实验报告

题目硬件描述语言实验四四位加法器姓名学号地点主楼402时间3月21日一实验目的进一步练习VHDL语言设计工程的建立与仿真的步骤和方法熟悉VHDL语言基本设计实体的编写方法二实验环境PC个人计算机WindowsX...

实验一 四位串行进位加法器的设计实验报告

实验一四位串行进位加法器的设计一实验目的1理解一位全加器的工作原理2掌握串行进位加法器的逻辑原理3进一步熟悉Quartus软件的使用了解设计的全过程二实验内容1采用VHDL语言设计四位串行进位的加法器2采用画原...

FPGA四位加法器实验报告

题目含异步清0和同步使能的4位加法计数器一实验目的学习时序电路的设计仿真和硬件测试进一步熟悉VHDL技术二实验原理如图是一含计数使能异步复位和计数值并行预置功能4位加法计数器4位锁存器rst是异步清0信号高电平...

加法器实验报告(30篇)