四位数字加法器
- 格式:doc
- 大小:1.44 MB
- 文档页数:8
四位加法器实验报告1.实验目的:掌握组合逻辑电路的基本分析与设计方法;理解半加器和全加器的工作原理并掌握利用全加器构成不同字长加法器的各种方法;学习元件例化的方式进行硬件电路设计;学会利用软件仿真实现对数字电路的逻辑功能进行验证和分析。
2.实验仪器:数字逻辑实验箱3.实验内容:A. 设计实现逐次进位加法器,进行软件仿真并在实验平台上测试。
B. 设计实现超前进位加法器,进行软件仿真并在实验平台上测试。
C.使用VHDL自带加法运算实现一个4位全加器。
4.实验代码:A. 逐次进位加法器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity FDFA is#定义串行加法器总体接口port(A,B:in std_logic_vector(3 downto 0);Ci:in std_logic;S:out std_logic_vector(3 downto 0);Co:out std_logic);end entity;architecture struct of FDFA iscomponent fadder is#基于一位全加器port(a,b,ci:in std_logic;s,co:out std_logic);end component fadder;signal c0,c1,c2:std_logic;beginU0:fadder port map(A(0),B(0),Ci,S(0),c0);U1:fadder port map(A(1),B(1),c0,S(1),c1);U2:fadder port map(A(2),B(2),c1,S(2),c2);U3:fadder port map(A(3),B(3),c2,S(3),Co);end architecture struct;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fadder is #定义一位全加器port(a,b,ci:in std_logic;s,co:out std_logic);end entity;architecture func of fadder isbeginco<=(a and b) or (ci and ( a xor b));s<=a xor b xor ci;end architecture func;B. 超前进位加法器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity LAC is#定义超前进位加法器总体接口port(A,B:in std_logic_vector(3 downto 0);Ci:in std_logic;Co:out std_logic;S:out std_logic_vector(3 downto 0));end entity;architecture struct of LAC issignal wirep, wireg:std_logic_vector(3 downto 0);signal wirec:std_logic_vector(2 downto 0);component fadder is#基于一位全加器port(Ai,Bi:in std_logic;c:in std_logic;si:out std_logic;pi:out std_logic;gi:out std_logic);end component fadder;component Ker is#Ker总理进位传递信号P与进位产生信号G,以及进位信号C port(ci:in std_logic;P:in std_logic_vector(3 downto 0);G:in std_logic_vector(3 downto 0);C:out std_logic_vector(3 downto 0));end component Ker;beginU0:fadder port map(Ai=>A(0),Bi=>B(0),c=>Ci,si=>S(0),pi=>wirep(0),gi=>wireg(0));U1:fadder port map(Ai=>A(1),Bi=>B(1),c=>wirec(0),si=>S(1),pi=>wirep(1),gi=>wireg(1));U2:fadder port map(Ai=>A(2),Bi=>B(2),c=>wirec(1),si=>S(2),pi=>wirep(2),gi=>wireg(2));U3:fadder port map(Ai=>A(3),Bi=>B(3),c=>wirec(2),si=>S(3),pi=>wirep(3),gi=>wireg(3));L:Ker port map(ci=>Ci,P(0)=>wirep(0),P(1)=>wirep(1),P(2)=>wirep(2),P(3)=>wirep(3),G(0)=>wireg(0),G(1)=>wireg(1),G(2)=>w ireg(2),G(3)=>wireg(3),C(0)=>wirec(0),C(1)=>wirec(1),C(2)=>wirec(2),C(3)=>Co);end architecture struct;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fadder is #定义一位全加器port(Ai,Bi:in std_logic;c:in std_logic;si:out std_logic;pi:out std_logic;gi:out std_logic);end entity;architecture func of fadder isbeginpi<=Ai xor Bi;gi<=Ai and Bi;si<=Ai xor Bi xor c;end architecture func;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity Ker is#定义Ker port(ci:in std_logic;P:in std_logic_vector(3 downto 0);G:in std_logic_vector(3 downto 0);C:out std_logic_vector(3 downto 0));architecture func of Ker isbeginC(0)<=G(0) or ( P(0) and ci );C(1)<=G(1) or ( P(1) and G(0) ) or ( P(1) and P(0) and ci );C(2)<=G(2) or ( P(2) and G(1) ) or ( P(2) and P(1) and G(0) ) or ( P(2) and P(1) and P(0) and ci );C(3)<=G(3) or ( P(3) and G(2) ) or ( P(3) and P(2) and G(1) ) or ( P(3) and P(2) and P(1) and G(0) ) or ( P(3) and P(2) and P(1) and P(0) and ci );end architecture func;C. VHDL自带加法运算实现4位全加器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity VHDLAD is#定义VHDL自带加法运算实现4位全加器总体接口,如果加和比原来和少,则会进位port(A,B:in std_logic_vector(3 downto 0);Ci:in std_logic;Co:out std_logic;S:out std_logic_vector(3 downto 0));end VHDLAD;architecture bhv of VHDLAD issignal D:std_logic_vector(3 downto 0);beginprocess(A,B,Ci,D)beginD <= A + B;if(Ci = '1') thenD <= D + 1;end if;if(D >= A) thenS <= D;Co <= '0';elseS <= D;Co <= '1';end if;end process;end bhv;5.软件仿真结果说明下面图片每幅有14条信号线,从上到下依次为A的低位到高位(共4条)、B的低位到高位(共4条)、输入的进位信号、和的低位到高位(共4条)、输出进位信号。
4位加法器的设计原理四位加法器是一种数字电路,用于实现四位二进制数的加法运算。
它由多个逻辑门组成,主要包括四个全加器、一个四路二选一选择器和一个四位二进制数输出。
在四位加法器中,每个全加器都负责计算两个输入位和上一位的进位的和。
全加器的原理是采用异或门(XOR)、与门(AND)和或门(OR)的组合。
具体来说,全加器有三个输入端,分别是两个输入位(A和B)和上一位的进位(Cin),两个输出端,分别是当前位的和(S)和当前位的进位(Cout)。
全加器的计算公式如下:S = (A XOR B) XOR CinCout = AB + (A XOR B)Cin其中,“XOR”代表异或操作,“AND”代表与操作,“OR”代表或操作。
全加器的设计原理是基于四位二进制数的加法运算规则。
在四位加法过程中,每一位的和由该位的两个输入位和上一位的进位确定。
进位则与上一位的输入位和上一位的进位有关。
因此,通过级联四个全加器,就可以实现四位加法运算。
除了四个全加器以外,四位加法器还包括一个四路二选一选择器。
这个选择器根据一个控制信号选择输出。
四位加法器的输出是一个四位二进制数,可以选择以原码、反码或补码的形式输出。
通过选择器的控制信号,可以选择输出形式。
四位加法器的工作原理是:首先,将四个输入数两两相加,得到每一位的和,以及进位。
然后,将每一位的和通过四个全加器计算得到最终的和,同时将进位以及控制信号传递给选择器。
最后,选择器选择要输出的结果。
总结来说,四位加法器是基于全加器的构建的数字电路,可以实现四位二进制数的加法运算。
它的设计原理是根据四位二进制数加法的规则和全加器的计算公式,通过级联四个全加器,并通过选择器控制输出形式,实现四位二进制数的加法运算。
硬件描述语言实验题目:四位全加器学院数学与计算机学院学科门类xxxxxxxxxx专业xxxxxxxxxx学号姓名x指导教师xxxx20xx年x 月xx日1、实验目的:练习VHDL语言设计工程的建立与仿真的步骤和方法、熟悉VHDL语言行为描述的编写方法。
2、实验环境:PC个人计算机、Windows XP操作系统、Quartus II集成开发环境软件。
3、实验要求:设计一个四位加法器,其引脚及其功能如下表。
4、实验步骤:(1)用RTL描述方式描述4位加法器①RTL描述方式是一种明确规定寄存器描述的方法,它要求在描述时要么采用寄存器硬件的一一对应的直接描述,要么采用寄存器之间的功能描述。
RTL描述方式可以进行逻辑综合,这是其他描述方式所不具备的特点。
②编辑代码这种描述方法详细描述了加法器的计算过程,即写出了每一位的计算和进位方法。
模块内部(构造体说明部分)需要定义三个连接线,定义语句为:signal c0,c1,c2 : std_logic代码如下:library ieee;use ieee.std_logic_1164.all;entity adder4 isport(a,b:in std_logic_vector(3 downto 0);ci:in std_logic;s:out std_logic_vector(3 downto 0);co:out std_logic);end entity;architecture rtl of adder4 issignal c0,c1,c2:std_logic;s(0) <= a (0) xor b(0) xor ci;c0<= (a(0) and b(0)) or (a(0) and ci) or (b(0) and ci);s(1) <= a (1) xor b(1) xor c0;c1<= (a(1) and b(1)) or (a(1) and c0) or (b(1) and c0);s(2) <= a (2) xor b(2) xor c1;c2<= (a(2) and b(2)) or (a(2) and c1) or (b(2) and c1);s(3) <= a (3) xor b(3) xor c2;co<= (a(3) and b(3)) or (a(3) and c2) or (b(3) and c2);end architecture rtl;③仿真结果(2)用行为描述方式描述4位加法器①行为描述是对系统数学模型的描述,其抽象程度比寄存器传输描述方式和结构描述方式更高。
四位加法器一、实验要求掌握组合逻辑电路的基本分析和设计方法;理解半加器和全加器的工作原理,用硬件描述语言实现半加器和全加器的门级设计,并使用自己设计的半加器组件构建全加器;学会利用软件仿真和远程实验系统实现对数字电路的逻辑功能进行验证和分析。
二、实验原理半加器(Half Adder)是不考虑来自低位的进位信号,其输入为 1 bit 的被加数和加数,输出为两位:本位的和以及向高一位的进位。
考虑低位进位的1位二进制加法器称为全加器(Full Adder),其输入为被加数加数以及低一位来的进位,输出为本位的和及向高一位的进位。
一位全加器可以由两个半加器及一个或门连接而成,半加器和全加器逻辑结构分别如图所示。
利用全加器级联可以构成多位二进制加法器,下图所示为四位二进制加法电路,低一位的进位输出作为高一位的进位输入。
这种结构称为逐次进位加法器(Ripple Adder)。
由于逐次进位加法器的进位信号是在各级间逐级传递的,所以高位的输出必须等低位的进位输入稳定后才有效,这就使得逐次进位加法器的延时比较大,速度比较慢。
为了提高加法器的运算速度,需要对加法器的结构进行改进。
引入进位传递信号和进位产生信号的概念,有{P n=A n⊕B n G n=A n B n利用这两个信号,可以把和信号与进位输出信号表示为{S n=P n⊕C n−1 C n=P n C n−1+G n根据上面给出的进位输出表达式,可得C0=G0+ P0C−1C1=G1+ P1C0=G1+ P1G0+P1P0C−1C2=G2+ P2C1=G2+ P2G1+P2P1G0+ P2P1P0C−1C3=G3+ P3C2=G3+ P3G2+P3P2G1+ P3P2P1G0+ P3P2P1P0C−1由于各级的进位传递信号和进位产生信号是同时生成的,所以各级的进位输出信号不再需要等待低一位的进位输入信号,从而大大减小了整个电路的延时,提高的加法器的运算速度。
四位加法器实验报告四位加法器实验报告一、引言在数字电路的学习中,加法器是一个非常重要的基础电路。
本次实验旨在通过设计和实现四位加法器,加深对数字电路原理的理解,并掌握加法器的设计方法和实现过程。
二、实验目的1. 理解加法器的原理和工作方式;2. 掌握加法器的设计方法和实现过程;3. 学会使用逻辑门电路和触发器构建加法器;4. 验证加法器的正确性和稳定性。
三、实验原理1. 半加器半加器是最基本的加法器,用于实现两个一位二进制数的相加。
其逻辑电路如下:(插入半加器电路图)2. 全加器全加器是由两个半加器和一个或门构成,用于实现三个一位二进制数的相加。
其逻辑电路如下:(插入全加器电路图)3. 四位加法器四位加法器是由四个全加器和一些其他逻辑门组成,用于实现四个四位二进制数的相加。
其逻辑电路如下:(插入四位加法器电路图)四、实验步骤1. 按照电路图连接逻辑门和触发器,搭建四位加法器电路;2. 使用开关设置输入数据,观察输出结果;3. 验证加法器的正确性,将不同的输入数据相加,并手动计算结果进行对比;4. 测试加法器的稳定性,观察输出结果是否随着时间稳定。
五、实验结果与分析通过实验,我们成功搭建了四位加法器电路,并进行了多组数据的测试。
实验结果表明,加法器能够正确地进行四个四位二进制数的相加,并输出正确的结果。
同时,实验中观察到输出结果在一段时间后稳定下来,验证了加法器的稳定性。
六、实验总结本次实验通过设计和实现四位加法器,加深了对数字电路原理的理解,并掌握了加法器的设计方法和实现过程。
通过实验验证了加法器的正确性和稳定性,提高了实际操作能力和解决问题的能力。
同时,实验中还发现了一些问题,比如电路连接错误、输入数据设置错误等,这些问题在实验中及时发现和解决,也对实验结果的准确性起到了保障作用。
在今后的学习中,我们将进一步深入研究数字电路的原理和应用,不断提高自己的实验技能和创新能力。
希望通过这次实验,能够为我们的学习和未来的工作打下坚实的基础。
四位加法器的设计(EDA)姓名:赵华洪学号:09325232专业:电子信息工程班级:093252班指导教师:黄河2012年11月08日目录一、简介二、目的与要求三、半加器设计四、一位全加器的设计五、四位加法器六、四位加法器的RTL图和仿真图七、四位级连加法器的全代码八、参考文献一、简介EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。
现在对EDA的概念或范畴用得很宽。
包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。
目前EDA 技术已在各大公司、企事业单位和科研教学部门广泛使用。
例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。
本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。
EDA 设计可分为系统级、电路级和物理实现级。
利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程在计算机上自动处理完成。
Verilog实现的4位串行进位加法器精编版在数字电路中,加法器是最基本的电路之一、串行进位加法器是一种将两个二进制数相加的电路,通过逐位相加的方式实现。
本文将介绍如何使用Verilog语言实现一个4位串行进位加法器的精编版。
首先,我们需要定义输入和输出端口。
对于一个4位的串行进位加法器,我们需要4个输入端口A[3:0]和B[3:0],以及一个输出端口Sum[3:0]。
另外,还需要一个输入端口CarryIn和一个输出端口CarryOut,用于传递进位信号。
```module SerialCarryAdderinput [3:0] A,input [3:0] B,input CarryIn,output [3:0] Sum,output CarryOut```接下来,我们可以定义内部信号。
对于一个4位的串行进位加法器,我们需要4个内部信号,分别代表每一位的进位信号。
```wire C0, C1, C2, C3;```然后,我们可以开始实现每一位的加法逻辑。
首先,我们定义一个内部信号XOROut,用于存储每一位的异或结果。
然后,我们使用XOR门实现异或逻辑。
```wire XOROut;assign XOROut = A[0] ^ B[0];```接下来,我们定义一个内部信号ANDOut,用于存储每一位的与结果。
然后,我们使用AND门实现与逻辑。
```wire ANDOut;assign ANDOut = A[0] & B[0];```然后,我们定义一个内部信号Sum0,用于存储第一位的和结果。
然后,我们使用XOR门实现异或逻辑。
```wire Sum0;assign Sum0 = XOROut ^ CarryIn;```然后,我们定义一个内部信号Carry0,用于存储第一位的进位结果。
然后,我们使用OR门实现或逻辑。
```wire Carry0;assign Carry0 = ANDOut , (XOROut & CarryIn);```接下来,我们可以依次实现剩余3位的加法逻辑。
4位快速加法器设计故障与调试4位快速加法器设计故障与调试引言:在数字电路设计中,快速加法器是一个非常重要的组件。
它用于将两个二进制数相加,并输出其结果。
然而,在设计和实现过程中,可能会遇到一些故障或错误。
本文将介绍4位快速加法器的设计故障和调试方法。
一、4位快速加法器的基本原理1.1 二进制加法的基本概念二进制加法是指将两个二进制数相加,并按照二进制规则进行进位和求和。
当两个二进制数A=1101和B=1010相加时,其结果为C=10111。
1.2 4位快速加法器的结构4位快速加法器由四个全加器组成,每个全加器负责计算一对输入位的和以及前一位的进位。
四个全加器按照级联方式连接起来,形成一个完整的4位快速加法器。
二、常见故障与解决方法2.1 电路连接错误在设计和实现过程中,可能会出现电路连接错误导致功能无法正常工作。
这种情况下,需要检查电路连接是否正确,并进行修正。
2.2 逻辑门选择错误在选择逻辑门时,可能会选错门类型或门数量不足,导致电路无法正确计算和输出结果。
解决方法是仔细检查逻辑门的选择,并根据需要增加或更换逻辑门。
2.3 信号线延迟问题在数字电路中,信号线延迟是一个常见的问题。
当信号传输的时间超过了设计所允许的范围时,可能会导致计算结果出错。
解决方法是通过添加缓冲器或调整信号线长度来解决延迟问题。
2.4 电源供应不稳定电源供应不稳定可能导致电路工作不正常或产生噪声干扰。
为了解决这个问题,可以使用稳压器来提供稳定的电源,并添加滤波器以降低噪声干扰。
三、调试方法3.1 逐级验证在进行调试时,可以使用逐级验证的方法。
首先验证单个全加器的功能是否正常,然后再将多个全加器级联起来进行整体验证。
3.2 输入输出检查通过检查输入和输出信号是否符合预期结果,可以确定是否存在故障。
如果输入和输出不匹配,则需要检查逻辑门连接、输入数据和控制信号等方面是否有错误。
3.3 示波器测量使用示波器可以观察信号的波形和时序,从而帮助定位故障。
4位并行加法器代码摘要:1.4 位并行加法器的概念和原理2.4 位并行加法器的实现方法3.4 位并行加法器的应用场景正文:一、4 位并行加法器的概念和原理4 位并行加法器是一种能够同时对四个二进制数进行加法运算的电路。
在计算机系统中,数据的传输和处理通常是以二进制形式进行的。
为了提高运算速度,需要采用并行加法器,使其在同一时钟周期内完成多个二进制数的加法运算。
4 位并行加法器正是为了满足这一需求而设计的。
二、4 位并行加法器的实现方法1.采用全加器实现全加器(Full Adder)是一种能够对两个二进制数进行加法运算的电路。
通过多个全加器的级联,可以实现对多个二进制数的加法运算。
例如,实现一个4 位并行加法器,需要4 个全加器级联。
输入数据为4 个二进制数A、B、C、D,输出结果为S、C0、C1。
2.采用数据选择器实现数据选择器(Data Selector)是一种能够根据控制信号选择输入数据输出的电路。
通过使用数据选择器,可以实现对多个二进制数的加法运算。
例如,实现一个4 位并行加法器,需要4 个数据选择器级联。
输入数据为4 个二进制数A、B、C、D,输出结果为S、C0、C1。
三、4 位并行加法器的应用场景1.数据处理在数据处理系统中,例如计算机、手机等设备,4 位并行加法器可用于加速数据的加法运算,提高数据处理速度。
2.图像处理在图像处理领域,例如模式识别、图像增强等应用,4 位并行加法器可以用于加速图像的像素级加法运算,提高图像处理效果。
3.通信系统在通信系统中,例如调制解调器、信道编解码等应用,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硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四进制全加器。
数字电路与自动化
课程设计报告设计题目:数字加法显示电路
姓名:刘丽萍
班级:10应用电子技术3
学号:1006020124
小组成员:刘丽萍、陈玉青
设计时间:2011年12月05日~2011年12月25日
目录
一、设计目的------------------------------------------2
二、设计要求------------------------------------------2
三、方案论证与比较---------------------------------2
四、设计原理和各元器件的原理------------------3
五、硬件制作与调试---------------------------------5
六、设计小结------------------------------------------7
七、参考书目------------------------------------------7
数字加法显示电路
一、设计目的
通过设计一个四位加法显示电路,充分了解掌握组合逻辑电路的设计过程,达到以下目的:
1、掌握电路板的焊接技术。
2、掌握基本电路的应用,了解用简单门电路实现控制逻辑的方法。
3、了解了基本电子芯片的功能和使用。
4、实现了理论和实际相结合。
5、进一步学会电路设计与调试。
6、掌握全加器、比较器及译码器设计电路的方法。
二、设计要求
用全加器、比较器、译码器和七段数码管设计一个四位加法显示电路。
要求:输入两个数,使用全加器进行两个的个位十进制相加,通过与比较器比较,如果小于10则正常显示,反而不显示。
完成所设计电路的仿真;数字加法显示电路的焊接的排版、安装和调试;书写设计报告上交电路并进行答辩。
三、方案论证与比较
方案一:
此方案是在拨动开关输入两个二进制数,这时只经过全加器(74ls83D)、比较器(74ls85D)、译码器(74ls47)后直接输出该数并在数码管上输出。
例如:输入0100和0010则数码管输出6;输出为大于等于10小于16时,非门和异或门控制译码器使译码器不输出,数码管不显示。
例如0011和1000等于11大于10译码器不输出,数码管不显示。
输出大于或等于16时,加法器将会有进位,此时非门和与门控制译码器的使能端使译码器不工作而不输出。
例如:输入1011和0111等于18大于16,此时有进位而不输出。
方案二:
此方案当拨动开关输入两个二进制数经过全加器相加后与比较器比较大于或等于0小于10,在数码管输出;大于或等于10小于16时非门和与门而控制译码器使译码器U2工作而不输出。
例如:输入1000和0010等于11大于10而不输出;当拨动开关输入两个二进制数经过全加器相加后与比较器比较大于或等于16时,加法器将会有进位,此时非门和与门控制译码器的使能端使译码器不工作而不输出。
例如:输入1010和0111等于17大于16,此时有进位而不输出。
方案一和方案二都可以实现设计要求,它们的区别在译码器,方案一译码器(74ls47)是驱动共阳的数码管,而方案二译码器使驱动共阴的数码管。
四、设计原理和各元器件的原理
设计原理:用八个单刀双掷开关通过高低电平控制全加器的输入,实现两个四位二进制的输入,经过全加器(74ls283)输出两数之和,输出结果与比较器(74ls85)进行比较,结果小于10则由显示译码器(74ls248)传递数据给七段数码管显示输出数字;若输出结果大于等于10,小于16,通过与比较器进行比较,大于等于10,小于16不输出。
则不显示;若输出结果大于等于16时,
因有进位,则不参加比较。
非门(74ls04)主要是用于全加器的进位即当数大于16不输出,与门(74ls08)主要是当数小于10时要将数输给译码器(74ls248)。
元器件原理:全加器(74ls283)可进行两个四位二进制的加法运算,每位有和输出Σ1~Σ4,进位由第四位得到C4,C0为低位进位。
引出端符号:
A1–A4 运算输入端,B1–B4 运算输入端,C0 进位输入端,Σ1–Σ4 和输出端,C4 进位输出端。
74ls283的外接端口如下图:
比较器74ls85可进行二进制码的比较,对两个四位字的比较结果由三个输出端FA>B,FA=B,FA<B (O AGTB,OAEQB,OALTB)输出。
引出端符号:
A0—A3,B0—B3,字A、B输入端:A>B,A=B,A<B(AGTB,AEQB,ALTB)为级联输入端; FA>B,FA=B,FA<B (O AGTB,OAEQB,OALTB)输出端。
74ls85的外接端口如图
译码器74ls248输出端(a~g)为低电平有效,可直接共阴的七段数码管。
当~BI/为低电平,不管其它输入端状态如何,a~g均为低电平。
当~RBI和地址端(A—D)均为低电平,并且灯测试(~LT)为高电平时,a~g均为低电平。
当~BI为高电平开路时,/LT的低电平可使a~g为高电平。
引出端符号:
A,B,C,D为译码地址输入端:~BI/RBI为消隐输入端;~LT为测试端;~RBI 为灭零端;a~g段输出。
外接端口如下图:
一个七段数码管内部是由八个发光二极管组成的,其中七个发光二极管构成字型“8”的各个笔画(a~g),另一个发光二极管作为小数点(dp),外部结构如图所示:
以我所用的共阴级数码管为例,其中公共端接低电平(0),当在某一段(如d)上施加正向电压(1)时,该段发光二极管被点亮;不加电压则为暗。
为了保护各段LED不因电流过大而损坏,需在各个段上外加限流电阻保护,阻值大约为200~500欧。
五、硬件制作与调试
课程设计所需的元器件:一个4.5V的电源、电路板、五个插槽、一个全加器(74ls283)、一个比较器(74ls85)、一个译码器(74ls248)、一个七段数码管、一个非门(74ls04)、一个与门(74ls08)、八个单刀双掷开关、七个270欧的电阻。
制作过程:先设计电路,再通过Multisim虚拟仿真,确定电路可以完成所要求的。
根据设计仿真好的电路框架结构图,在限有的万用板进行合理的排版。
在焊接前,要用万用表测试各个元器件是否有损坏。
依据设计原理对照元器件参数合理的连接。
在接数码管之前要先用万用表的电阻档进行测量,找出各个引脚。
焊接时最好保持一次焊接,需要跳线的就进行跳线。
焊接时,为了防止各芯片在焊接过程中烧坏,所以先焊上插槽,再将芯片插在上面。
焊接时,将所用的VCC连在一起然后引一条外接线出来作为整块电路板的电源线,将所有接地部分,包括开关接地及芯片的GND接在一起然后再引一条外接线出来作为整块电路板的地线。
调试:完成电路板的焊接工作后,进行检查电路,我们对照原图对连线焊接进行检查。
并用万用表的电阻档对各条连线进行测量,检查各条连线是否有焊接。
检查到全加器74ls283和非门74ls04的地线没有接到总底线上,补焊上,通过仔细检查一遍已焊的焊点的质量,并对有一些虚焊的焊点进行了补焊。
通过仔细检查过后,确认无误时。
接上电源后,一开始发现数码管不显示,通过检查发现是开关全拨动到电源正极,通过拨动开关,开关全拨动到电源负极是,数码管显示为0,拨动开关,数码管正确显示0~9状态,大于等与10数码管不显示。
通过设计、排版、焊接、检查、调试此电路有按要求完成,就此数字加法显示电路最终成功。
电路存在的问题及其改进
1、电路会有跳线易短路
2、管脚没有全弄清楚
3、经常出现漏焊
改进方法:
1、在焊之前把每个管脚大概要走的路线都要弄清楚,这样跳线会比较少。
2、焊的时候要细心,减少漏焊。
3、弄清管脚,并对其检测避免焊错。
焊接完的电路图:
电路正面
电路反面
六、设计小结
通过此次设计加法显示电路,并焊接和调试,深刻感受到咯无论做什么事都要有一丝不苟的精神,由于距离上一次焊电路板有一些时间,所以焊的过程中还是遇到了一些困难,通过这次设计电路也得到了不少收获。
以前都是看着
原电路图焊电路,比较容易,也很少像这次用多个芯片。
芯片的管脚很多需要跳线的也很多,在焊的过程中也遇到很多问题。
例如,开始的时候没有排好器件的位置,导致有些连跳线都没地方引。
通过此次设计数字加法显示电路,使我加深了对本章组合逻辑电路知识的结合与巩固,从而我了解到学习中如果能更好的抓住重点,这样可以大大得提高学习质量。
通过焊电路板,使我更加理解平时所说的只学专业的理论的知识是远远不够的,因为实际上的元器件跟我们在课本上所看到的有一定的区别。
例如,在书上,比较器的八个输入端都在芯片的左侧,三个输出端都再电路的右侧。
而实际器件就不像书上那样,而是5、6、7端为输出的三个端,就没有输入和输出分别在不同边。
刚开始听到设计要求,一点思路都没有,后面通过上网查资料,在书上查资料,还有向同学学习我不懂的知识。
才对老师要求设计的电路有所了解,通过此次我深刻感受到了自身知识的缺乏,在今后的学习中,我要多问,多去查资料,这样才能更好巩固知识。
七、参考书目
1、《数字电子技术》————科学出版社
2、《数字设计完全手册》———国防工业出版社
3、《电子设计从零开始》———清华大学出版社出版
4、《Multisim 10虚拟仿真和业余制版实用技术》——电子工程出版社
5、
6、。