利用全加器电路创建四位二进制加法器
实验2:4位加法器 实验报告

EDA 技术基础实验报告实验项目名称:用原理图输入法设计4位加法器学院专业:信息学院电子专业姓名:学号:实验日期:20 实验成绩:实验评定标准:一、实验目的熟悉利用Quartus Ⅱ的原理图输入方法设计简单组合电路,掌握层次化设计的方法。
并通过一个4位全加器的设计把握利用EDA 软件进行原理图输入方式的电子线路设计的详细流程。
二、实验器材电脑一台Quartus Ⅱ软件三、实验内容与步骤1.在Quartus Ⅱ软件中建立工程,画图生成一个半加器的.bdf文件。
2.将此半加器文件设置成可调用的元件,使之成为一个元件符号存盘。
3.设计全加器顶层文件,以.bdf存盘。
4.将设计项目(.bdf文件)设置成工程和时序仿真。
5.截图保存波形文件图,及仿真结果。
6.将全加器原理图文件设置成符号元件,以供4位加法器的更高层设计。
7.按实验要求画出4位加法器原理图,建立其波形并仿真,截下仿真结果图。
四、实验电路图(程序)1.半加器电路原理图如下:半加器h_adder.bdf电路原理图(1)2.全加器电路原理图如下:全加器f_adder.bdf电路原理图(2)3.4位加法器four_adder.bdf电路原理图如下:4位加法器four_adder.bdf电路原理图(3)五、实验仿真结果及分析1. 全加器的仿真波形图如下:全加器波形仿真图(3)分析:ain, bin, cin 三段为输入,sum 为和,com 为进位,满足相关的逻辑表达式{sum =(ain ′bin ′cin ′+ain bin ′cin +ain ′bin cin +ain bin cin ′)‘com =(ain ′bin ′+bin ′cin ′+ain′cin′)′2. 4位全加器仿真波形图如下:分析:4位a[3..0]输入与4位b[3..0]输入以及来自cin 输入的数码相加得到4位输出s[3..0]和进位输出c,由图可见满足加法原理。
EDA1_4位加法器原理图设计

4 位加法器原理图设计一、实验目的1、进一步掌握 Quartus Ⅱ原理图输入设计法。
2、通过4位加法器的设计,掌握原理图输入法中的层次化设计。
二、实验原理图1 半加器原理图图2 1位全加器原理图图3 4 位加法器原理图4 位加法器(如图3)是以 1 位全加器作为基本硬件,由 4 个 1 位全加器串行构成, 1位全加器又可以由两个1位的半加器和一个或门连接而成(如图2),而1位半加器可以由若干门电路组成(如图1)。
三、实验内容本次实验使用 Altera FPGA 的开发工具 Quartus Ⅱ,利用原理图输入设计方法设计一个 4位加法器。
四、实验步骤1、打开QUARTUS II软件,新建一个工程adder4bit。
2、建完工程之后,再新建一个Block Diagram/Schematic File。
在原理图编辑窗口绘制如图1的半加器原理图。
点击 File ->Save,将已设计好的图文件取名为:h_adder,并存在此目录内。
3、编译。
如果发现有错,排除错误后再次编译。
直到编译通过就可以进行波形仿真了。
4、时序仿真。
建立波形文件,设置波形参量,再保存(注意: QuartusⅡ在波形仿真时,只支持一个与工程名同名的波形文件,所以在对多个文件进行波形仿真时,对波形文件都取工程名进行保存,后缀名为.vwf;若确实想保留多个波形文件,则可以分别命名,想对哪个波形文件进行仿真时,点击Processing->simulationTool,在Simulation input中输入待仿真的波形文件即可,如图4所示) ,最后运行波形仿真。
观察分析波形。
然后将半加器 h_adder 封入库生成半加器元件了,为后续生成 1 位全加器做准备。
图4 仿真结果5、封装入库。
封将仿真调试好的半加器封装入库。
打开 h_adder.bdf文件,在File->Create/update 如图5所示。
图5 元件封装入库6、全加器原理图设计。
实验二半加器全加器

1 3 8 10
VCC
16
4
7
11 13 B1 B0 CI
A3 A2 A1 A0 5 12 V CC GND S3 15 2
B3 B2
74283
S2 S1 6 S0 9 CO 14
LED
图2-2-5 4位二进制加法器功能测试电路
表2-2-5 4位二进制加法器数据表
B 3 B 2 B1 B 0 A 3 A 2 A 1 A 0 S3S 2S1S0
实验内容
1.7486型异或门功能测试 图2-2-1中任一个异或门进行实验,输入端接逻 辑开关,输出端接LED显示。将实验结果填入表 2-2-2中,并判断功能是否正确,写出逻辑表达 式。
表2-2-2 异或门输入、输出电平关系数据表
输 入 端 A 0 0 1 1 B 0 1 0 1
输 出 端 Y
2.用异或门构成半加器 电路如图2-2-4所示,输入端 接逻辑开关,输出端接LED显 示。 将实验结果填入表2-23中,判断结果是否正确,写 出和S及进位CO的逻辑表达 式。
思考题
1. 如何利用7483和门电路实现BCD码 加法运算? 2. 如何用两片7483实现8位二进制数加 法运算? 3. 如何用与非门(7400)接成非门?
注意事项
1.在进行复杂电路实验时,应该先检测 所用到的每个单元电路功能是否正常,确 保单元电路能够正常工作。 2.每个集成电路工作时都必须接电源 (VCC)和地(GND)。
A3 A2 A1 A0 5 12 V CC GND S3 15 2
ห้องสมุดไป่ตู้
B3 B2
7483
S2 S1 6 S0 9 CO 14
预习要求
1.复习组合逻辑电路的分析方法,阅读教 材中有关半加器和全加器的内容,理解半 加器和全加器的工作原理。 2.熟悉7486、7483等集成电路的外形 和引脚定义。拟出检查电路逻辑功能的方 法。 3.熟悉BCD码、余3码和二进制码之间的 转换方法。 4.根据实验内容的要求,完成有关实验电 路的设计,拟好实验步骤。 5.写出预习报告,设计好记录表格。
4位加减法并行运算电路(包括拓展8位)

4位加减法并行运算电路(包括拓展8位)二○一二~二○一三学年第一学期电子信息工程系脉冲数字电路课程设计报告书班级:电子信息工程(DB)1004班课程名称:脉冲数字电路课程设计学时: 1 周学生姓名:学号:指导教师:廖宇峰二○一二年九月一、设计任务及主要技术指标和要求➢ 设计目的1. 掌握加/减法运算电路的设计和调试方法。
2. 学习数据存储单元的设计方法。
3. 熟悉集成电路的使用方法。
➢ 设计的内容及主要技术指标1. 设计4位并行加/减法运算电路。
2. 设计寄存器单元。
3. 设计全加器工作单元。
4. 设计互补器工作单元。
5. 扩展为8位并行加/减法运算电路(选作)。
➢ 设计的要求1. 根据任务,设计整机的逻辑电路,画出详细框图和总原理图。
2. 选用中小规模集成器件(如74LS 系列),实现所选定的电路。
提出器材清单。
3. 检查设计结果,进行必要的仿真模拟。
二、方案论证及整体电路逻辑框图➢ 方案的总体设计步骤一因为参与运算的两个二进制数是由同一条数据总线分时串行传入,而加法运算的时候需要两个数的并行输入。
所以需要两个寄存器分别通过片选信号,依次对两个二进制进行存储,分别在寄存器的D c B A Q Q Q Q 端口将两个4位二进制数变成并行输出; 步骤二 为了便于观察置入两个4位二进制数的数值大小,根据人们的习惯,在寄存器的输出端,利用两个七段译码器将二进制数转化为十进制数; 步骤三通过开关选择加/减运算方式;步骤四若选择加法运算方式,对所置入数送入加法运算电路进行运算;即:9)1001()0110()0011(222==+ 【十进制:963=+】又或:15)1111()0100()1011(222==+ 【十进制:15511=+】步骤五若选择减法运算方式,对所置入数送入减法运算电路进行运算;即:2)0010()0101()0111(222==- 【十进制:257=-】又或:10)1010()1101()0011(222=-=- 【十进制:10133-=-】步骤六为了便于观察最后的计算结果,以及对最后的计算结果的正确性能做出快速的判断,根据人们的习惯,同上,将计算出的结果输入七段译码器进行译码显示。
多位加法器电路图解

多位加法器电路图解前面讲过,半加器实现两个1位二进制数相加时不考虑低位的进位,输出变量只有两个(加数和被加数),而全加器实现两个1位二进制数相加时则考虑低位的进位,输入变量有3个(加数、被加数和低位的进位)。
多位二进制数相加的特点是:最低位时两个数最低位的相加,不需考虑进位。
其余各位都是3个数相加,包括加数、被加数和低位送来的进位。
任何位相加都产生本位和与向高位的进位两个结果。
因此要进行多位二进制数相加,最简洁的方法是将多个1位加法器进行级联,称为串行进位加法器。
图1与图2所示都是4位串行进位加法器。
图1所示电路中最低位都是半加器,其余各位是全加器,图2所示电路中都是全加器,最低位全加器的CI端接0。
从图中可见,两个4位相加数A3A2A1A0和B3B2B1B0的各位同时送到相应全加器的输入端,进位数串行传送,相加的结果是CO,S3S2S1S0。
1位加法器的个数等于相加数的位数。
图1 4位加法器电路(最低位是半加器)图2 4位加法器电路(最低位是全加器) 串行进位加法器的优点是电路比较简洁,缺点是速度比较慢。
由于进位信号是串行传递,最终一位的进位输出CO3要经过4位全加器传递之后才能形成。
假如进位增加,传输延迟时间将更长,工作速度更慢。
为了提高速度,人们又设计了一种多位数快速进位(又称超前进位)的加法器。
所谓快速进位,是指加法运算过程中,各级进位信号同时送到各位全加器的进位输入端。
现在的集成加法器大多采纳这种方法。
74LS283是一种典型的快速进位的集成4位二进制加法器。
图3所示为74LS283加法器的图形符号。
图3 74LS283型4位加法器的图形符号一片74LS283只能进行4位二进制数的加法运算,将多片74LS283进行级联,就可扩展加法运算的位数。
用2片74LS283组成的8位二进制数加法电路如图4所示。
图4 8位二进制数加法器电路。
用原理图输入法设计4位全加器

实验一------用原理图输入法设计4位全加器
1.实验目的
熟悉利用MAX+PLUSⅡ的原理图输入法来设计简单组合逻辑电路,学会层次化设计方法,并通过一个4位全加器的设计,学会利用EDA软件进行电子电路设计的详细流程。
2.实验原理。
一个4位全加器可以由4个1位全加器构成,加法器间的进位可用串行方式实现,即将低位加法器的进位输出与相邻的高位加法器的进位输入信号相接。
而一个1位全加器可按图3-19所示连接,其波形图如3-20所示。
图3-19 1位全加器的原理图
图3-20 1位全加器的波形图
3.实验内容。
(1)按照教材完成1位全加器adder的设计,包括原理图输入、编译、综合、适配、仿真,并将此全加器电路设置成一个硬件符号入库。
(2)建立一个更高的原理图设计层次,取名为adder4.利用以上获得
的1位全加器构成4位全加器,电路原理图如图3-21所示。
图3-21 4位全加器电路原理图
4.实验结果。
首先按照原理图设计1位全加器,之后通过四个1位全加器正确连接后则设计出4位全加器,其波形图如上图所示.。
4位全加器实验报告
四位全加器11微电子黄跃21【实验目的】采用modelsim集成开发环境,利用verilog硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四位进位加法器。
【实验内容】加法器是数字系统中的基本逻辑器件。
多位加法器的构成有两种方式:并行进位和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。
通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。
实现多位二进制数相加的电路称为加法器,它能解决二进制中1+1=10的功能(当然还有 0+0、0+1、1+0).【实验原理】表2 全加器逻辑功能真值表图4 全加器方框图图5 全加器原理图多位全加器连接可以是逐位进位,也可以是超前进位。
逐位进位也称串行进位,其逻辑电路简单,但速度也较低。
四位全加器如图9所示,四位全加器是由半加器和一位全加器组建而成:图9 四位全加器原理图【实验步骤】(1)建立新工程项目:打开modelsim软件,进入集成开发环境,点击File→New project建立一个工程项目adder_4bit。
建立文本编辑文件:点击File→New在该项目下新建Verilog源程序文件并且输入源程序。
(2)编译和仿真工程项目:在verilog主页面下,选择Compile— Compile All或点击工具栏上的按钮启动编译,直到project出现status栏全勾,即可进行仿真。
选择simulate - start simulate或点击工具栏上的按钮开始仿真,在跳出来的 start simulate框中选择work-test_adder_4bit测试模块,同时撤销Enable Optimisim前的勾,之后选择ok。
在sim-default框内右击选择test_adder_4bit,选择Add Wave,然后选择simulate-run-runall,观察波形,得出结论,仿真结束。
4位全加器
设计过程如下:1.构建一个全加器全加器的真值表和逻辑表达式如下:表一全加器真值表逻辑表达式为:S=A⊕B⊕c , C=AB+(A⊕B)c(1)选逻辑门。
双击Logic and Bit Operations。
将Logical Operator模块拖到工作窗口中。
双击模块打开Block Parameters窗口,将Main标签中的Operator选项改为XOR或OR,再拖入一个AND门。
(2)选输入信号。
选用Pulse Generator。
打开Sources面板,拖入三个Pulse Generator 并放置在窗口的左侧。
这三个Pulse Generator作为加法器真值表的三个输入。
双击第一个并将它的周期(period)设定为8秒,相位延迟(phase delay)设定为4秒,Pluse Width设置为50并Pulse Generator重命名为A input,。
双击第二个,将周期设定为4秒,相位设定为2秒,Pluse Width设置为50,重命名为B input,。
双击第三个,将周期设定为2秒,相位设定为1秒,Pluse Width设置为50,重命名为C input。
(3)输入输出的观测。
用Commonly Used Blocks 中的Scope(示波器)模块。
输入分别为A、B、C输出为S、C(4)选好之后,进行连线,连线结果如下图1 全加器逻辑图(5)执行运行用示波器分别观察A、B、C 、S、C如下:A:B:C:S:C:经过比较,各波形与全加器真值表中数值相符合,因此,创建全加器模块。
2. 创建全加器模块选中要创建子系统的模块,选择Edit\CreateSubsystem 菜单,创建全加器模块,命名为Full_Adder,结果如下图图2 全加器模块3.构建一个4位加法器复制为四个全加器,并在Commonly Used Blocks中拖动3个In、2个Out、2个Demux、1个Mux,并连接成四位全加器,如下图所示:图3 4位全加器经赋值检验连接正确,保存命名为Full Adder_4。
4位全加器实验报告
4位全加器实验报告篇一:四位全加器实验报告实验一:四位全加器实验报告实验日期:学生姓名:陆小辉(学号:25)指导老师:黄秋萍加法器是数字系统中的基本逻辑器件,是构成算数运算电路的基本单元。
1位加法器有全加器和半加器两种。
多位加法器构成方式有并行进位方式和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度较快;串行进位加法器是将全加器级联构成多位加法器。
并行进位加法器通常比串行进位加法器占用更多的资源,随着位数的增多,相同位数的并行进位加法器比串行进位加法器的资源占用差距快速增大。
因此,在工程中使用加法器时,要在速度与容量之间寻求平衡。
一、设计要求:设计四位全加器,完成相应的功能。
可采用并行进位方式和串行进位方式,可采用三种常用建模方式中的任意一种。
三、测试代码如(转载自:小草范文网:4位全加器实验报告)下: module text_fulladd4; 二、设计代码如下:(此处采用数据流建模)wire [3:0]sum; module fulladd4(sum,cout,a,b,cin); wire cout; output [3:0]sum; reg [3:0]a,b; output cout; reg cin; input [3:0]a,b; fulladd4 f1(sum,cout,a,b,cin);input cin; initial assign {cout,sum}=a+b+cin; begin endmodule a=4'b0; b=4'b0; cin=1'b0; #210 $stop; end always #10 a=a+1; always #5 b=b+1; always #100 cin=cin+1;endmodule 四、仿真波形如下:续图篇二:4位全加器实验报告数电第一次实验通信1402 程杰 UXX13468【实验目的】采用ISE集成开发环境,利用verilog硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四进制全加器。
例试用四位二进制加法器74283构成可控的加法
A补 0001 + (-B)补 1011
0 1100
A 0001 - B 0101
- 1100
借位
1 1100
当C' =1,有借位
A-B < 0 S' =(A+(-B))补
S'0
=1
S'1
=1
(A+(-B)补)原码再求补
得原码
=((A+(-B))补 )补
S'2
=1
S'3
=1
= (S')反+1=加S加异异或或门门不求反反相
习题课
例:试用四位二进制加法器74283构成可控的加法、减法器( 允许附加少量门)。
分析:A-B=A+(-B)
(A+(-B))补=A补+(-B)补
A0 A1
各位不变
A2
A3
=A补+(-B)反+1
按位取反
B0
1
B1
1
B2
1
0Σ
A
0
3
进位Σ
0
B
3
S'0
S'1 和S'
S'2 S'3
1
CI
借位C'为进位取反
分析: A与B相减的结果 与采用补码相加的比较
1. A-B≥0时 A=0101 B=0001
求A-B
补码相加
A补 0101 + (-B)补 1111
1 0100
直接相减 A 0101 - B 0001
0100
借位
0 0100 (进位反相)
1. A-B<0时 A =0001 B =0101
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.课程设计的目的:
软件。
、学习并了解MATLAB 12、尝试用Simulink建模。
3、实现对数字电路的防真设计。
4、利用全加器电路创建四位二进制加法器。
二.课程设计题目描述及要求:
利用所学的数字电路的基本知识和MUTLAB软件中Simulink的应用学习,完成对数字电路的仿真设计。
用各种各样的组合逻辑电路设计全加器,输出曲线,再利用全加器设计电路创建四位二进制加法器电路图,给出输出。
三.MATLAB软件简介:
MATLAB是MathWorks公司于1984年推出的一套高性能的数值计算可视化软件,集数值分析、矩阵运算、信号处理和图形显示于一体。
MATLAB是由Matrix 和Laboratory单词的前三个字母组合而成的,其含义是矩阵实验室。
Simulink是MATLAB最重要的组件之一,是实现动态系统建模、仿真的一个集成环境。
它支持线性和非线性系统,连续时间、离散时间,或者两者的相结合的仿真,而且系统是多进程的。
Simulink是从底层开发的一个完整的仿真环境和图形界面,它把MATLAB的许多功能都设计成一个个直观的功能模块,把需要的功能模块连接起来就可以实现所需要的仿真功能。
Simulink仿真应用于数字电路、数字信号处理、通信仿真、电力系统仿真、宇航仿真等领域。
由于数字系统中高低电平分别用0和1表示,因此数字电路问题往往可以转化为一个数字上的逻辑问题。
MATLAB提供了逻辑运算模块和各种触发器模块,可以方便的进行数字电路的设计和仿真。
借助于组合电路仿真常用模块Logic and Bit Operations子库中的Local Operator模块,将其拖到所建的untitled窗口中,然后鼠标左键双击该模块弹出的Block Parameters/Logical Operator对话框,按Operator栏后的黑三角来选择所需要的门电路标识符,如:AND、OR、NAND、NOR、XOR、NOT中的一个,并依次设置所需的输入、输出端子个数,之后按OK 键确定。
利用这些基本门电路组成加法器逻辑电路。
四.课程设计的内容:
1、1位全加器的设计。
分别是加个输入,3位全加器有1就是带进位输入和进位输出的加法器。
所谓全加器,。
根据以及向高位进位DC;还有两个输出,分别是和数SUM数A、B和来自低位的进位1所示。
全加运算的逻辑关系,可列出一位全加器的真值表,如表
D C SUM B A
0 0 0 0 0
0 0 1 1 0
0 0 1 0 1
1 0 0 1 1
0 0 1 0 1
1 0 1 1 0
1 0 1 1 0
1
1
1
1 1
1
表
D的最简与或表达式:和列出SUM
的电SUM这样仅用一个或非门就实现了B⊕D对SUM进行一次变换的SUM=A ⊕。
路。
基于逻辑表达式得到如下逻辑图(图1)
1图、逻辑图
2、用Simulink创建电路模型,完成逻辑电路。
、组合模块图1Create 、用鼠标选中这部分逻辑电路,选中右击,在弹出的快捷菜单中选择3 命令,自动生成一个子系统。
Subsystem
、全加器子系统图2。
4、在顶层图中将这个子系统模块命名为ADD0
ADD0 3 图、子系统模块
位全加器设计。
5、4送入后一个的低位进D个1位全加器级联起来,前一个的高位端 1)、要将44.
位全加器。
电路如图就可以实现4C位端
4位全加器图4、
2. 注:全加器脉冲源参数设置如
A0A1A2A3B0B1B2B3
11111幅111
444周44444
3脉3113131
30131相位延202
5
5
5
5
5
5
5
5
采样时
表2
、连线以及仿真:) 2.
选择Simulation的Configuration Parameters命令,将仿真时间设置为0-20s,其余采用默认值,然后将这个模型保存到MATLAB的work目录下。
最后,单击模型窗口中的进行图标进行仿真,双击打开示波器Scope1,它监视的第一个加数对应的4个输入信号(图5);双击打开示波器Scope2,它
监视的第二个加数对应的4个输入信号(图6)。
、第二个加数的波形图6 、第一个加数的波形图5
从这两个波形图上读出加数值,并计算理论结果。
其结果如下:
:0~5sDS3S2S1S0=00010 A3A2A1A0=0001 B3B2B1B0=0001 5~10s:DS3S2S1S0=00101 B3B2B1B0=0011 A3A2A1A0=0010 :10~15sDS3S2S1S0=01011 A3A2A1A0=0100 B3B2B1B0=0111 15~20s:
DS3S2S1S0=10110 B3B2B1B0=1110 A3A2A1A0=1000
双击示波器Scope打开输出波形(图7)。
7、加法器的输出结果图对比发现实际的输出结果和计算结果是一致的。
五、小结:同时也了解了仿通过本次课程设计,我了解了系统仿真的基本思路和方法,
真在其他领域中的应用。
位全加器的步骤:Simulink实现4掌握了用,新建一个电路模Simulink、添加模块:首先从MATLAB命令窗口运行1) 型。
、修改模块参数:首先要完成逻辑部分的电路,生成子系统,封装生成模)2 块。
设置所有参数。
若一致,连线标注,进行理论结果计算并与实际输出比较。
3)、连线及仿真:则完成了设计和仿真。
建模,实现了对数字SimulinkMATLAB软件,尝试了用学习并初步了解了
加上同学和老师的帮助实现了利用全加器电路的仿真设计。
在查阅资料的同时,电路创建四位二进制加法器。
通过验证证明了仿真实验的成功。
经过这次课程设计我知道了学习计算机语言要多练习,在学习的同时要举
一反三,和同学、老师多作交流。
同时我也认识到自己在学习上的不足,以及知识掌握不够扎实,明确了以后学习的方向。
总之,经过这次课程设计让我认识到自身的不足,同时也学习到很多知识
以及技巧。
感谢周老师给我们的课程设计作指导!
目录
一.课程设计的目的: (1)
二.课程设计题目描述及要求: (1)
三.MATLAB软件简介: (1)
四.课程设计的内容: (1)
五、小结: (6)。