实验二-加法器的设计与仿真
- 格式:doc
- 大小:238.00 KB
- 文档页数:8
1、学习加法器的设计方法。
2、掌握加法器的调试方法。
3、熟练焊接技术。
二、实验仪器信号源,示波器,直流稳压源,交流毫伏表,万用表,电路板。
三、试验器件编号名称型号数量R1、R2、R3、R4、R7 电阻10K 5R5、R6、Rf1、Rf2 电阻20K 4T1、T2 集成运放HA17741 2四、实验原理集成运算放大器是提高电压增益的直流放大器。
在它的输入端和输出端之间加上不同的反馈网络,就可以实现各种不同的电路功能。
可实现放大功能及加、减、微分、积分等模拟信号运算功能。
本实验着重以输入和输出之间施加线性负反馈网络后所具有的功能运算的研究。
理性运放在线性运用时具有以下重要特性:1、理想运放的同向和反向输入端电流近似为零,即I+≈0,I-≈0。
2、理想运放在线性放大区时,两端输入电压近似相等,即:U+≈U-。
加法器根据信号输入端的不同有同相加法器和反向加法器两种形式。
原理如图所示:图1 同相加法器图2 反相加法器图2的反向加法器,运放的输入端一端接地,另一端由于理想运放的“虚地”特性,使得加在此输入端的多路输入电压可以彼此独立地通过自身输入回路电阻转换为电流,精确地进行代数相加运算,实现加法功能。
同相加法器的输出电压为Uo=(1+Rf/R1)Rp(Ui1/R2+Ui2/R3)式中,Rp=R2//R3。
因此Rp与每个回路电阻均有关,要求满足一定的比例关系,调节不便。
反相加法器的输出电压为Uo=-【(Rf/R1)Ui1+(Rf/R1)Ui2)】,当R1=R2=Rf时,Uo=-(Ui1+Ui2)。
五、实验电路图Uo1=-Rf1(Ui1/R1+Ui2/R2)Uo =(-Rf2/R4)Uo1= (Rf2 Rf1/R4 R1)Ui1+(Rf2 Rf1/R4 R2)Ui2六、实验内容及步骤1、实验内容用两个HA17741运算放大器,10K,20K,100K电阻设计一个加法器。
工作电压为+12V、-12V。
设计出的加法器电路如上图所示。
实验二全加器的设计与仿真全加器是非常典型的数字单元电路,在数字系统中常常用到全加器。
一般认为加法器是纯组合逻辑电路,只要用一些基本门电路就可以设计出全加器。
通常情况下,全加器是数字系统中的一个子模块,为了使加法器能与系统在时钟的驱动下同步工作,我们把全加器设计成由时钟控制带一级流水线的加法器。
需要指出的是,在数字集成电路设计中,大多数公司使用VerilogHDL进行RTL设计,较少使用VHDL,主要的原因是VerilogHDL语法简单易学,底层库支持好,EDA工具支持全面,集成电路发达的国家和地区应用广泛。
而VHDL的发展逐渐式微,越来越多的公司正逐渐向VerilogHDL转移。
建议使用VerilogHDL进行RTL设计,便于交流。
集成电路设计中心实验室的工作站运行环境为:•Sun Blade2000两台•双64-bit CPU, 内存4GB ,•硬盘73GB用户可以通过Xmanager 登录,每个用户拥有50MB的磁盘配额。
2.1设计文件准备和编译按可综合风格写出VerilogHDL代码如下(仅供参考):module Adder8 (ain, bin, cin, sout, cout, clk,rst);/* Eight Bit Adder Module */output [7:0] sout;output cout;input [7:0] ain, bin;input cin, clk,rst;wire [7:0] sout_tmp, ain, bin;wire cout_tmp;reg [7:0] sout, ain_tmp, bin_tmp;reg cout, cin_tmp;always @(posedge clk)beginif (rst==1)beginsout=0;cout=0;ain_tmp=ain;bin_tmp=bin;cin_tmp=cin;endelsebegincout = cout_tmp;sout = sout_tmp;ain_tmp = ain;bin_tmp = bin;cin_tmp = cin;endendassign {cout_tmp,sout_tmp} = ain_tmp + bin_tmp + cin_tmp;endmodule上述代码在Unix/Linux 系统中,在用户目录下,建文件夹Adder8_full, 下建src,sim,syn,pr四个目录。
数字逻辑电路实验报告数字逻辑电路实验报告引言:数字逻辑电路是现代电子科技中的重要组成部分,它广泛应用于计算机、通信、控制系统等领域。
本实验旨在通过实际操作,加深对数字逻辑电路原理的理解,并通过实验结果验证其正确性和可靠性。
实验一:基本逻辑门的实验在本实验中,我们首先学习了数字逻辑电路的基本组成部分——逻辑门。
逻辑门是数字电路的基本构建单元,它能够根据输入信号的逻辑关系,产生相应的输出信号。
我们通过实验验证了与门、或门、非门、异或门的工作原理和真值表。
以与门为例,当且仅当所有输入信号都为高电平时,与门的输出信号才为高电平。
实验中,我们通过连接开关和LED灯,观察了与门的输出变化。
实验结果与预期相符,验证了与门的正确性。
实验二:多位加法器的设计与实验在本实验中,我们学习了多位加法器的设计和实现。
多位加法器是一种能够对多位二进制数进行加法运算的数字逻辑电路。
我们通过实验设计了一个4位全加器,它能够对两个4位二进制数进行相加,并给出正确的进位和和结果。
实验中,我们使用逻辑门和触发器等元件,按照电路图进行布线和连接。
通过输入不同的二进制数,观察了加法器的输出结果。
实验结果表明,多位加法器能够正确地进行二进制数相加,验证了其可靠性。
实验三:时序电路的实验在本实验中,我们学习了时序电路的设计和实验。
时序电路是一种能够根据输入信号的时间顺序产生相应输出信号的数字逻辑电路。
我们通过实验设计了一个简单的时序电路,它能够产生一个周期性的脉冲信号。
实验中,我们使用计数器和触发器等元件,按照电路图进行布线和连接。
通过改变计数器的计数值,观察了脉冲信号的频率和周期。
实验结果表明,时序电路能够按照设计要求产生周期性的脉冲信号,验证了其正确性。
实验四:存储器的设计与实验在本实验中,我们学习了存储器的设计和实现。
存储器是一种能够存储和读取数据的数字逻辑电路,它在计算机系统中起到重要的作用。
我们通过实验设计了一个简单的存储器,它能够存储和读取一个4位二进制数。
数字逻辑实验报告数字逻辑实验报告引言数字逻辑是计算机科学中的重要基础知识,通过对数字信号的处理和转换,实现了计算机的高效运算和各种复杂功能。
本实验旨在通过实际操作,加深对数字逻辑电路的理解和应用。
实验一:二进制加法器设计与实现在这个实验中,我们需要设计一个二进制加法器,实现两个二进制数的加法运算。
通过对二进制数的逐位相加,我们可以得到正确的结果。
首先,我们需要将两个二进制数输入到加法器中,然后通过逻辑门的组合,实现逐位相加的操作。
最后,将得到的结果输出。
实验二:数字比较器的应用在这个实验中,我们将学习数字比较器的应用。
数字比较器可以比较两个数字的大小,并输出比较结果。
通过使用数字比较器,我们可以实现各种判断和选择的功能。
比如,在一个电子秤中,通过将待测物品的重量与设定的标准重量进行比较,可以判断物品是否符合要求。
实验三:多路选择器的设计与实现在这个实验中,我们需要设计一个多路选择器,实现多个输入信号中的一路信号的选择输出。
通过使用多路选择器,我们可以实现多种条件下的信号选择,从而实现复杂的逻辑控制。
比如,在一个多功能遥控器中,通过选择不同的按钮,可以控制不同的家电设备。
实验四:时序电路的设计与实现在这个实验中,我们将学习时序电路的设计与实现。
时序电路是数字逻辑电路中的一种重要类型,通过控制时钟信号的输入和输出,实现对数据的存储和处理。
比如,在计数器中,通过时序电路的设计,可以实现对数字的逐位计数和显示。
实验五:状态机的设计与实现在这个实验中,我们将学习状态机的设计与实现。
状态机是一种特殊的时序电路,通过对输入信号和当前状态的判断,实现对输出信号和下一个状态的控制。
状态机广泛应用于各种自动控制系统中,比如电梯控制系统、交通信号灯控制系统等。
实验六:逻辑门电路的优化与设计在这个实验中,我们将学习逻辑门电路的优化与设计。
通过对逻辑门电路的布局和连接方式进行优化,可以减少电路的复杂性和功耗,提高电路的性能和可靠性。
实验二加法器的设计与仿真一、实验目的:实现加法器的设计与仿真。
二、实验内容1.用逻辑图和VHDL语言设计全加器;2.利用设计的全加器组成串行加法器;3.用逻辑图和VHDL语言设计并行加法器。
三、实验步骤。
(一)、全加器、串行加法器和并行加法器的逻辑图。
1.全加器:2.串行加法器:3.74283:4位先行进位全加器逻辑框图:逻辑图:(二)、全加器、串行加法器和并行加法器的VHDL。
1.全加器:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY quanjiaqi ISPORT(X : IN STD_LOGIC;Y : IN STD_LOGIC;CIN : IN STD_LOGIC;S : OUT STD_LOGIC;COUT : OUT STD_LOGIC);END quanjiaqi;ARCHITECTURE bdf_type OF quanjiaqi ISSIGNAL SYNTHESIZED_WIRE_0 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_1 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_2 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_3 : STD_LOGIC;BEGINSYNTHESIZED_WIRE_2 <= Y AND X;SYNTHESIZED_WIRE_1 <= CIN AND Y;SYNTHESIZED_WIRE_3 <= CIN AND X;SYNTHESIZED_WIRE_0 <= X XOR Y;S <= SYNTHESIZED_WIRE_0 XOR CIN;COUT <= SYNTHESIZED_WIRE_1 OR SYNTHESIZED_WIRE_2 OR SYNTHESIZED_WIRE_3; END bdf_type;2.串行加法器:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY chuanxingjiafaqi ISPORT(x0 : IN STD_LOGIC;y0 : IN STD_LOGIC;cin : IN STD_LOGIC;x1 : IN STD_LOGIC;x2 : IN STD_LOGIC;y2 : IN STD_LOGIC;x3 : IN STD_LOGIC;y3 : IN STD_LOGIC;y1 : IN STD_LOGIC;s0 : OUT STD_LOGIC;s1 : OUT STD_LOGIC;s2 : OUT STD_LOGIC;s3 : OUT STD_LOGIC;cout : OUT STD_LOGIC);END chuanxingjiafaqi;ARCHITECTURE bdf_type OF chuanxingjiafaqi ISCOMPONENT quanjiaqiPORT(X : IN STD_LOGIC;Y : IN STD_LOGIC;CIN : IN STD_LOGIC;S : OUT STD_LOGIC;COUT : OUT STD_LOGIC);END COMPONENT;SIGNAL SYNTHESIZED_WIRE_0 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_1 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_2 : STD_LOGIC;BEGINb2v_inst : quanjiaqiPORT MAP(X => x0,Y => y0,CIN => cin,S => s0,COUT => SYNTHESIZED_WIRE_0); b2v_inst1 : quanjiaqiPORT MAP(X => x1,Y => y1,CIN => SYNTHESIZED_WIRE_0,S => s1,COUT => SYNTHESIZED_WIRE_1); b2v_inst2 : quanjiaqiPORT MAP(X => x2,Y => y2,CIN => SYNTHESIZED_WIRE_1,S => s2,COUT => SYNTHESIZED_WIRE_2); b2v_inst3 : quanjiaqiPORT MAP(X => x3,Y => y3,CIN => SYNTHESIZED_WIRE_2,S => s3,COUT => cout);END bdf_type;3.74283:4位先行进位全加器LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY 74283_0 ISPORT(CIN : IN STD_LOGIC;A1 : IN STD_LOGIC;A2 : IN STD_LOGIC;B2 : IN STD_LOGIC;A3 : IN STD_LOGIC;A4 : IN STD_LOGIC;B4 : IN STD_LOGIC;B1 : IN STD_LOGIC;B3 : IN STD_LOGIC;SUM4 : OUT STD_LOGIC;COUT : OUT STD_LOGIC;SUM1 : OUT STD_LOGIC;SUM2 : OUT STD_LOGIC;SUM3 : OUT STD_LOGIC );END 74283_0;ARCHITECTURE bdf_type OF 74283_0 IS BEGIN-- instantiate macrofunctionb2v_inst : 74283PORT MAP(CIN => CIN,A1 => A1,A2 => A2,B2 => B2,A3 => A3,A4 => A4,B4 => B4,B1 => B1,B3 => B3,SUM4 => SUM4,COUT => COUT,SUM1 => SUM1,SUM2 => SUM2,SUM3 => SUM3);END bdf_type;四、实验仿真结果。
实验二全加器的设计一、实验目的1、掌握MAX+plus 软件的使用方法。
2、掌握层次化设计方法:底层为文本文件,顶层为图形文件。
3、通过全加器的设计掌握利用EDA软件进行电子线路设计的过程。
二、实验设备1、计算机2、MAX+plus II软件及实验箱三、实验原理加法器是数字系统中的基本逻辑器件,减法器和硬件乘法器都可由加法器来构成。
全加器,全加器是实现两个一位二进制数及低位来的进位数相加(即将三个二进制数相加),求得和数及向高位进位的逻辑电路。
所以全加器有三个输入端(A,B,C)和两个输出端SO,CO)。
1、逻辑关系:CO=AB SO=AB+BA=A⊕B语句:SO<=NOT(A XOR (NOT B))CO<=A AND B2、逻辑关系:语句:SO<=NOT(A XOR (NOT B)); CO<=A AND B;SO=A⊕B⊕C CO=AB+CA+CB四、实验内容1、半加器的设计:完成源程序的编辑、编译、仿真。
2、两输入或门的设计:完成源程序的编辑、编译、仿真。
3、全加器的设计:完成源程序的编辑、编译、仿真。
五、实验步骤1、启动MAX+plus II 10.0 软件2、底层文件:新建文件文本文件:(1)File \ New \Text Editor File(2)在文本文件上输入代码(3)保存文本文件:File\Save\H-adder.vhd 扩展名为*.vhd(4)设置为当前文件:点击File\Project\set project to current file 设置项目为当前文件(5)编译1)选择芯片型号:点击Assign\Device:Ep1k30QC208-32)编译:点击MAX+plus II \ Compiler \ Start 开始编译,生成.pof 文件(CPLD) (6)仿真1)启动MaxplusII\Wavefrom editor 菜单,进入波形编辑窗口;2)导入输入输出节点:将鼠标移至空白处并单击鼠标右键,Enter Nodes from SNF 将欲仿真的所有I/O管脚加入。
实验二一位8421BCD码加法器的设计一、实验目的1. 理解四位加法器7483和四位比较器7485的工作原理及使用2. 掌握一位8421BCD码加法器的工作过程3. 进一步熟悉Quartus软件的使用,了解设计的全过程,二、实验内容1.采用画原理图的方法设计一位8421BCD码加法器。
要求使用四位加法器7483和四位比较器7485及必要的逻辑门电路。
三、分析过程7483是四位二进制加法器,其进位规则是逢16进1。
而8421BCD 码表示的是十进制数,进位规则是逢10进1。
用7483将两个1位BCD码相加时,当和小于等于9时,结果正确;当和大于9时,需加6进行修正。
实验中要求使用7483、7485及必要的逻辑门完成。
由于7483通过输出引脚C4 S3 S2 S1 S o输出二进制的和,7485是四位比较器,关键在于如何通过7483及7485的输出判断何时应对结果修正以及如何修正。
由于两个1位十进制数相加时,和的取值范围是0—18,将该范围内各数值对应的二进制数和8421BCD码列表,以便寻找何时应对结果修正以及如何修正从表中分析可得出如下结论:当7483输出的二进制数的和为0---9时,即S3 S2 S1 SO W 9时结果正确,不需修正;当和为10-----15时S3 S2 S1 S)> 9时,需加6 修正,此种情况可将7483的输出S3 S2 S1 S0送入7485的输入引脚A3 A2 A1 A0 ,将1001(即卩9)送入7485另一组输入引脚B3 B2 B1 B0, 若7485的输出A> B=1,则说明需加6修正;当和为16、17、18时,结果需加6修正。
此种情况7483的输出S3 S2 S1 S)v 9,但C4=1。
综合以上分析,当7483输出的二进制数的和S3 S2 S1 S)> 9或C4=1时结果需修正。
此修正的条件可通过7485的输出A> B和7483 输出的C4通过逻辑或门(OR1获得。
加法器组员:徐鹏,李新意,张严丹. 指导老师:丁祁正、蒋芳芳一、项目内容和要求◆设计一个反相加法器电路,要求:运算关系:)25(21i i O U U U +-=。
输入阻抗应满足Ω≥Ω≥K R K R i i 5,521。
设计条件:①电源电压Ec=±5V ;②负载阻抗Ω=K R L 1.5◆设计一个同相加法器电路,要求:运算关系:21i i O U U U +=。
设计条件: ①电源电压Ec =±5V ;②负载阻抗Ω=K R L 1.5二、设计及调试 (一)电路设计①反相加法器的电路设计如图 1-1 所示,其中U +=U -=0V ;U 0=-[(R f /R 1) ×U i1+(R f /R 2) ×U i2 ] R = R 1 //R 2 //R f根据项目要求的输入阻抗大于5K Ω,且运算关系满足)25(21i i O U U U +-=,因此根据实验室现有电阻的种类,我们选R1为20K Ω和为R2为51K Ω,Rf 为100K Ω、R 为10K Ω。
②同相加法器的电路设计如图1-2所示,其中 U 0的计算如下图1-1反相加法器电路U i1 U i22211121212i i o fU R R R U R R R U U R R RU ⋅++⋅+=⋅+=21212211121221,)(,i i o f i i f o U U U R R R R U R R R U R R R R R R U U U +====⋅++⋅++==有时当解得令图1-2同相加法器电路根据项目要求的输入阻抗大于5K Ω,且运算关系满足21i i O U U U +=,因此根据实验室现有电阻的种类,我们选R1、R2、R 和Rf 都是10K Ω.(二)电路仿真1、反相加法器的电路仿真测试A :输入信号V U V U i i 5.0,5.021±=±=,测试4种组合下的输出电压如下;①反相加法器 U i1=+0.5v ,U i2=+0.5v ,输出电压U 0=-3.464V.②反相加法器 U i1=+0.5v ,U i2=-0.5v ,输出电压U 0=-1.503V.③反相加法器U i1=-0.5v,U i2=-0.5v ,输出电压U0=3.496V.④反相加法器U i1=-0.5v,U i2=+0.5v ,输出电压U0=1.536V.B :输入信号V KHz U V U i i 1.0,1,5.021为正弦波±=信号,测试两种输入组合情况下的输出电压波形如下。
一、实验目的1. 理解加法器的基本原理和结构。
2. 掌握加法器的使用方法和调试技巧。
3. 通过实际操作,加深对数字电路基础知识的理解。
二、实验器材1. 实验箱2. 加法器芯片(如741)3. 逻辑分析仪4. 万用表5. 连接线6. 电源三、实验原理加法器是一种基本的数字电路,用于实现两个或多个数字的加法运算。
本实验以半加器和全加器为基础,通过级联实现多位数的加法运算。
1. 半加器:完成两个一位二进制数相加,并产生和与进位。
2. 全加器:在半加器的基础上增加一个进位输入端,实现多位数的加法运算。
四、实验步骤1. 搭建电路:- 将加法器芯片插入实验箱的相应位置。
- 根据实验要求,连接输入端、输出端和电源。
- 使用逻辑分析仪观察输入信号和输出信号。
2. 半加器测试:- 将两个一位二进制数输入到半加器的两个输入端。
- 观察逻辑分析仪的输出,验证半加器的功能。
3. 全加器测试:- 将两个一位二进制数和一个进位信号输入到全加器的三个输入端。
- 观察逻辑分析仪的输出,验证全加器的功能。
4. 多位数加法测试:- 将多位二进制数输入到全加器的相应输入端。
- 观察逻辑分析仪的输出,验证多位数的加法运算。
5. 实验结果分析:- 对比理论计算结果和实验结果,分析实验误差原因。
五、实验结果与分析1. 半加器测试:- 输入:A=0, B=0- 输出:和=0,进位=0- 输入:A=1, B=0- 输出:和=1,进位=0- 输入:A=0, B=1- 输出:和=1,进位=0- 输入:A=1, B=1- 输出:和=0,进位=12. 全加器测试:- 输入:A=0, B=0, 进位=0- 输出:和=0,进位=0- 输入:A=1, B=0, 进位=0- 输出:和=1,进位=0- 输入:A=0, B=1, 进位=0- 输出:和=1,进位=0- 输入:A=1, B=1, 进位=0- 输出:和=0,进位=13. 多位数加法测试:- 输入:A=1010,B=1101,进位=0- 输出:和=10111,进位=1实验结果表明,加法器能够实现预期的功能,实验结果与理论计算基本一致。
杭州电子科技大学计算机学院
实验报告
实验项目:实验2-超前进位加法器设计实验
课程名称:计算机组成原理与系统结构课程设计
姓名:学号:同组姓名:学号:
实验位置(机号):
实验日期:指导教师:
二、结果
思考题:
(1)综合得到的电路图,它和想要设计的电路在引脚的输入输出方面是完全相同的,但是相比较内部的RTL图,实验实现的结果是相同的,但是我编写的实验代码并没有调用实验一的全加器设计。
(2)尝试编写8位超前进位加法器设计实验
module add_8 ( input [7:0]a, input [7:0]b, input cin, output [7:0] s, output co );
wire [7:0]c_tmp;
wire [7:0]g;
wire [7:0]p;。
计算机组成原理加法器实验实训报告一、实验目的本次实验旨在通过实际操作加法器电路,加深对计算机组成原理中加法器的理解,掌握加法器的工作原理和实验操作技能。
二、实验内容1. 搭建基本加法器电路2. 进行加法器实验3. 分析实验结果并撰写实验报告三、实验器材和工具1. 电路实验箱2. 电源3. 电路连接线4. 示波器5. 多用途数字实验仪6. 逻辑门集成电路四、实验步骤1. 搭建基本加法器电路1) 将逻辑门集成电路插入电路实验箱中2) 连接逻辑门的输入端和输出端3) 接入电源并进行必要的调试2. 进行加法器实验1) 输入两个二进制数,并将其连接到逻辑门输入端2) 观察输出端的变化3) 调节输入信号,验证加法器的正确性和稳定性3. 分析实验结果1) 记录实验数据2) 分析实验结果,对比理论值和实际值的差异3) 总结实验中的经验和问题,并提出改进建议五、实验数据1. 输入数据:A = 1010B = 11012. 输出数据:Sum = xxxCarryout = 1六、实验结果分析通过实验,我们成功搭建了基本加法器电路,并进行了加法器实验。
实验结果表明,加法器能够正确地对两个二进制数进行加法运算,并输出正确的结果。
通过比对理论值和实际值,我们发现存在一定的偏差,可能是由于电路连接不良或逻辑门延迟等因素导致。
在今后的实验中,我们需要注意电路连接质量和信号延迟,以提高实验结果的准确性和稳定性。
七、实验总结通过本次加法器实验,我们加深了对计算机组成原理中加法器的理解,掌握了基本的加法器实验操作技能。
我们也发现了一些问题并提出了改进建议。
在今后的学习和实验中,我们将继续加强对计算机组成原理的学习,不断提升实验操作能力,为今后的科研工作和实际应用打下坚实的基础。
八、参考资料1. 《计算机组成原理》(第五版),唐朔飞,张善民,电子工业出版社2. 《数字逻辑与计算机设计》(第三版),David M. Harris,Sarah L. Harris,清华大学出版社以上是本次计算机组成原理加法器实验实训报告的全部内容,谢谢阅读。
加法器实验报告加法器实验报告概述:本次实验旨在设计和实现一个加法器电路,通过对电路的搭建和测试,验证加法器的正确性和可行性。
加法器是计算机中最基本的算术运算器之一,其在数字逻辑电路中扮演着重要的角色。
1. 实验背景加法器是一种基本的数字逻辑电路,用于实现数字的加法运算。
在计算机中,加法器被广泛应用于算术逻辑单元(ALU)和中央处理器(CPU)等部件中,用于进行各种数值计算和逻辑运算。
因此,了解和掌握加法器的工作原理和设计方法对于理解计算机原理和数字电路设计具有重要意义。
2. 实验目的本次实验的主要目的是通过设计和实现一个4位二进制加法器电路,验证加法器的正确性和可行性。
具体要求如下:- 设计并搭建一个4位二进制加法器电路;- 对电路进行测试,验证其加法运算的正确性;- 分析电路的性能和优化空间。
3. 实验原理加法器是通过逻辑门电路实现的。
在本次实验中,我们将使用全加器电路来实现4位二进制加法器。
全加器是一种能够实现两个二进制位相加并考虑进位的电路。
通过将多个全加器连接起来,可以实现更高位数的二进制加法器。
4. 实验步骤4.1 设计加法器电路的逻辑功能首先,我们需要确定加法器电路的逻辑功能。
在这个实验中,我们需要实现两个4位二进制数的相加运算,并输出结果。
具体的逻辑功能可以通过真值表或逻辑表达式来描述。
4.2 搭建电路根据逻辑功能的要求,我们可以使用逻辑门电路来搭建加法器。
在本次实验中,我们将使用多个全加器电路来实现4位二进制加法器。
通过将多个全加器连接起来,可以实现更高位数的二进制加法器。
4.3 进行电路测试在搭建完电路后,我们需要对电路进行测试,以验证其加法运算的正确性。
可以通过输入一些测试用例,并比较输出结果与预期结果是否一致来进行测试。
5. 实验结果与分析通过对加法器电路的测试,我们可以得到加法器的输出结果。
通过比较输出结果与预期结果,可以验证加法器的正确性。
同时,我们还可以分析电路的性能和优化空间,例如进一步提高加法器的速度和减少功耗等。
实验二组合逻辑电路实验—加法器
一、实验目的:
1.掌握加法器相关电路的设计和测试方法。
2.掌握常见加法器集成芯片使用方法。
二、实验原理:
在组合逻辑电路中任意时刻的输出只取决于该时刻的输入,与电路原来的状态无关。
常见加法器芯片:加减法电路
常见芯片74LS183,74LS283,等
三、实验内容
一、实现两个BCD码的加法运算。
要求:利用74LS283加法器来完成。
根据实验要求列出真值表:
根据真值表得出逻辑表达式:
Y=S4*S3+S4*S2设计电路如下:
字发生器内部参数:
逻辑分析仪结论:
二、实现两个四位二进制的减法
要求:利用74LS283加法器来完成。
要实现两个四位二进制的减法,只需把二进制码转化为对应的补码相加。
源码与补码:
设计电路图:
字发生器内部参数:
↑符号位
逻辑分析仪结论:
四、实验分析:
1、通过该实验,意识到自己对74LS283加法器的掌握还不过全面,实验设计过程中遇到很多困难。
经过自己的努力,对74LS283加法器有了进一步的了解。
2、实验对于组合逻辑电路的设计能力的考验很重视,通过实验可以加强这方面的能力。
3、在做加法时,易忽略进位端对实验结果的影响,需注意。
外,如果可以考虑到符号位就更好了!
4、在做减法时,对于二进制码转化为对应的补码的组合逻辑电路的设计尤为重要。
另。
加减法运算器的设计实验报告实验二加减法运算器的设计一、实验目的1、理解加减法运算器的原理图设计方法2、掌握加减法运算器的VERILOG语言描述方法3、理解超前进位算法的基本原理4、掌握基于模块的多位加减运算器的层次化设计方法5、掌握溢出检测方法和标志线的生成技术6、掌握加减运算器的宏模块设计方法二、实验任务1、用VERILOG设计完成一个4位行波进位的加减法运算器,要求有溢出和进位标志,并封装成模块。
模块的端口描述如下:module lab2_RippleCarry 宽度可定制(默认为4位)的行波进位有符号数的加减法器。
#(parameter WIDTH=4)( input signed [WIDTH-1:0] dataa,input signed [WIDTH-1:0] datab,input add_sub, // if this is 1, add; else subtractinput clk,input cclr,input carry_in, //1 表示有进位或借位output overflow,output carry_out,output reg [WIDTH-1:0] result)2、修改上述运算器的进位算法,设计超前进位无符号加法算法器并封装成模块。
模块的端口描述如下:module lab2_LookaheadCarry // 4位超前进位无符号加法器(input [3:0] a,input [3:0] b,input c0, //carry_ininput clk,input cclr,output reg carry_out,output reg [3:0]sum);3、在上述超前进位加法运算器的基础上,用基于模块的层次化设计方法,完成一个32位的加法运算器,组内超前进位,组间行波进位。
4、用宏模块的方法实现一个32位加减运算器。
三、实验内容1、用VERILOG设计完成一个4位行波进位的加减法运算器,要求有溢出和进位标志,并封装成模块。
加法器实验实训报告引言:本次实验旨在设计和构建一个加法器电路,实现两个二进制数的相加操作。
加法器是计算机中最基本的逻辑电路之一,其功能对于计算机的运算和逻辑处理至关重要。
通过本次实验,我们将掌握加法器的原理和实现方法,并通过实际搭建电路进行验证。
一、实验目的本次实验的主要目的是:1.了解加法器的基本原理和工作方式;2.学习二进制数的相加操作;3.掌握加法器电路的设计和构建方法;4.通过实际搭建电路,验证加法器的正确性。
二、实验原理加法器是一种基于二进制数的逻辑电路,用于将两个二进制数相加并输出结果。
常见的加法器有半加器、全加器和多位加法器等。
本次实验我们将使用全加器来实现两个二进制数的相加。
全加器的输入包括两个待相加的二进制数和一个进位信号(前一位相加的进位),输出为相加结果和进位信号。
全加器的逻辑电路可通过逻辑门的组合实现。
三、实验步骤1.根据实验要求,确定加法器的位数并设计电路结构;2.根据设计的电路结构,确定所需的逻辑门类型和数量;3.根据逻辑门的真值表,确定逻辑门的输入输出关系;4.根据逻辑门的输入输出关系,设计逻辑门的电路图;5.根据设计的逻辑门电路图,搭建实验电路;6.验证电路的正确性,通过输入不同的二进制数进行相加操作,并观察输出结果是否符合预期;7.根据实验结果,总结加法器的工作原理和特点。
四、实验结果与分析通过实验,我们成功地设计并构建了一个加法器电路,并通过输入不同的二进制数进行相加操作。
实验结果表明,加法器能够正确地完成二进制数的相加,输出结果与预期一致。
五、实验总结本次实验通过设计和构建加法器电路,加深了我们对加法器原理和工作方式的理解。
通过实际操作,我们掌握了加法器电路的设计和构建方法,并验证了其正确性。
加法器作为计算机中最基本的逻辑电路之一,其重要性不言而喻。
通过本次实验,我们进一步认识到了加法器在计算机运算和逻辑处理中的重要作用。
六、实验心得通过本次实验,我深刻体会到了电路设计和构建的重要性。
实验一、EDA软件及PLD器件的设计应用
2015级电子信息工程
1515212024 罗宏刚
一、四位加法计数器的设计
1.VHDL语言输入。
2.全程编译成功。
3.功能仿真。
4.仿真波形及结果。
5.封装
二、七段数码显示译码器的设计
1.VHDL语言输入。
2.全程编译成功。
3.功能仿真。
4.仿真波形及结果。
5.封装
三、含七段数码显示译码的4位加法器的设计
1.原理图输入。
2.全程编译成功。
3.功能仿真。
4.仿真波形及结果。
5.封装。
四、硬件验证部分
1.将实验箱与电脑相连接,点击菜单栏的TOOL中的Programmer进行硬件实验。
2.在电路结构图中设置,找出引脚名和然后找出引脚名所对应的位置的引脚号,然后将此引脚号输入quarts中pins端口的芯片位置。
(结构管脚电路图)(电路引脚对照图)
3.这里选择键6键7键8分别作为时钟、使能、重置端,分别对应PIN28、PIN30、PIN31。
4.设置硬件,并下载到FPGA进行硬件验证。
5.将数码管设置到模式6,开通电源后,通过键7使能打开,按键6可以在数码管看到跳变的数字,依次显示为:1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,按键8可置零。
硬件验证成功。
实验2 运算器ALU实验运算器ALU是CPU的主要部件,数据处理的中心。
ALU可以实现算术加减运算和逻辑“与”、“或”、“非”运算,本实验设计8位ALU,为完成8为ALU,我们从1位全加器设计开始,经1位加法器,4位加法器,4位加减法器,到4位算术逻辑运算器ALU;再由4位ALU到8位ALU。
2.1 1位加法器设计1位加法器是构成多位加法器的基础,通过1位加法器可以组成4位加法器,4位减法器。
因此,本实验首先从1位全加器开始。
2.1.1 实验题目1位全加器。
2.1.2 实验内容设计1位全加器,并通过输入波形图验证。
2.1.3 实验目的与要求通过本实验使学生进一步掌握电子电路的设计方法,熟悉CAD软件QuartusII的使用,掌握使用QuartusII仿真来验证电路设计正确性的方法。
2.1.4 实验步骤设置本实验的项目所在路径,命名项目的名称为1ALU,顶层文件的名称也自动命名为1ALU。
如在文件夹C:\eda\ALU下新建工程1ALU,如图2-1 新建工程1ALU所示。
图2-1 新建工程1ALU直接点击next,直到器件选择对话框,如图2-2所示。
这里根据最终使用的FPGA器件选择一种器件,如Cyclone下的EP1C3T144C8,如果不下载到FPGA上进行实验,选择哪一种器件都无所谓。
图2-2 实现器件选择指定设计、仿真和时序验证工具,如图2-3所示,点击next,完成工程建立。
图2-3 工具选择设计1位全加器FA1位全加器是指可以实现两个1位二进制数和低位进位的加法运算逻辑电路(半加器不包括低位进位C i-1)。
它依据的逻辑表达式是:进位C i=A i B i+A i C i-1+B i C i-1,和S i=A i⊕B i⊕C i-1(本算式推导过程可以在教材中找到)。
其中A i和B i是两个1位二进制数,C i代表向高位的进位,C i-1代表低位来的进位,S i代表本位和。
依据上述逻辑表达式,设计实现1位全加的电路图。
实验二-加法器的设计与仿真
实验二加法器的设计与仿真班级:智能1401
姓名:蒙寿伟
学号:201408070120
1.全加器
用途:实现一位全加操作
逻辑图:
真值表:
X Y CIN S COUT
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
波形图:
VHDL:
波形图:
结论:
一位全加器是由两个半加器组成。
x,y分别是两位相加的二进制输入信号,cin是进位输入端,cout是进位输出端,s是和的低位输出端。
2.四位串行加法器逻辑图:
波形图:
VHDL:
波形图:
结论:
由逻辑图及仿真图可知,每1位的进位信号送给下1位作为输入信号,因此,任1位的加法运算必须在低1位的运算完成之后才能进行。
这种加法器的逻辑电路比较简单,但它的运算速度不快。
3.74283:4位先行进位全加器(4-Bit Full Adder)逻辑图:
真值表:
波形图:
VHDL:
波形图:
结论:
四位先行加法器的进位彼此独立产生,只与输入数据和cin有关,将各级间的进位级联传播去掉了,因此减小了进位产生的延迟,大大提高了运算速度。
缺点是电路较复杂。
实验心得:
通过此次试验,加深了我对加法器的理解,对其的功能和用途有了更加深入的了解。
加法器最基础的部件是半加器,两个半加器可以构成一个全加器。
同理,四个全加器通过级联可以构成一个四位加法器。
加法器最核心的问题是处理好输入和输出以及进位之间的关系。
比如,四位串行加法器,它的每一个进位输出对应下一个进位输入。
此外,在用VHDL语言描述四位串行加法器的过程中,我学习了VHDL语言&运算的使用。
不管一个实验简单与否,只要认真去做,总会有所收获的。