实验二-加法器的设计与仿真

合集下载

模电加法器仿真实验报告

模电加法器仿真实验报告

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四个目录。

实验二 全加器的设计

实验二 全加器的设计
任务一 图形法---加法器
1
任务分析:电路工作原理
2
知识准备:元件的包装入库
3
任务实施:图形输入中的层次设计
1
一、任务分析:全加器设计原理
全加器是指实现带进位的一位二进制数的加法 运算的器件。而半加器是不带进位的一位二进制 数的加法运算。故本次实验中采用半加器与其他 逻辑门的连接来实验全加运算。
经分析简单的两个半加器和一个或门连接而成, 电路图如图所示。
2
二、知识准备:元件的包装入库
打开任意一个已经保存的电路图并设置为当前项目, 即可通过执行菜单命令file/creat default symbol,将 设计文件打包成一个元件,系统默认的元件名为对应 电路图的文件名。由此,该电路图所对应特定功能的 元件即可在以后的设计中应用。
三、 任务实施:图形输入中的层次设计
1、设计半加器,并 编译、仿真、测试
2、将半加器包装入 库
3、设计全加器

数字逻辑电路实验报告

数字逻辑电路实验报告

数字逻辑电路实验报告数字逻辑电路实验报告引言:数字逻辑电路是现代电子科技中的重要组成部分,它广泛应用于计算机、通信、控制系统等领域。

本实验旨在通过实际操作,加深对数字逻辑电路原理的理解,并通过实验结果验证其正确性和可靠性。

实验一:基本逻辑门的实验在本实验中,我们首先学习了数字逻辑电路的基本组成部分——逻辑门。

逻辑门是数字电路的基本构建单元,它能够根据输入信号的逻辑关系,产生相应的输出信号。

我们通过实验验证了与门、或门、非门、异或门的工作原理和真值表。

以与门为例,当且仅当所有输入信号都为高电平时,与门的输出信号才为高电平。

实验中,我们通过连接开关和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码加法器的设计

实验二一位8421BCD码加法器的设计

实验二一位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获得。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二-加法器的设计与仿真
实验二加法器的设计与仿真班级:智能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语言&运算的使用。

不管一个实验简单与否,只要认真去做,总会有所收获的。

相关文档
最新文档