第7章 实例讲解-计数器-全加器设计(已排)
- 格式:ppt
- 大小:1.33 MB
- 文档页数:53


一、实验目的1. 掌握全加器的基本原理和设计方法。
2. 熟悉使用Quartus II软件进行原理图输入、编译、仿真和下载等操作。
3. 培养学生动手实践能力和创新思维。
二、实验原理全加器是一种能够进行二进制加法运算的数字电路,它能够处理来自低位的进位输入。
全加器由两个半加器和两个或门组成。
其中,两个半加器分别用于处理两个一位二进制数的相加,而两个或门则用于处理来自低位的进位输入。
全加器的输入信号包括三个:两个加数A和B,以及来自低位的进位输入Cin。
输出信号包括两个:和S和进位Cout。
全加器的逻辑表达式如下:S = A ⊕ B ⊕ CinCout = (A ∧ B) ∨ (B ∧ Cin) ∨ (A ∧ Cin)三、实验器材1. Quartus II软件2. FPGA开发板3. 连接线4. 电源四、实验步骤1. 创建工程(1)打开Quartus II软件,选择“File”→“New Project Wizard”创建新工程。
(2)填写工程名称、工程路径等信息,点击“Next”。
(3)选择目标器件,点击“Next”。
(4)选择“Block Diagram/Schematic File”作为工程类型,点击“Next”。
(5)填写工程文件名称,点击“Finish”。
2. 设计全加器原理图(1)在原理图编辑窗口中,双击鼠标左键弹出元件输入对话框。
(2)在对话框右侧打开元件库,找到所需的半加器、或门等元件。
(3)将半加器和或门等元件拖入原理图编辑窗口。
(4)连接元件,形成全加器电路。
3. 编译工程(1)选择“Processing”→“Start Compilation”开始编译。
(2)等待编译完成,检查编译报告。
4. 仿真(1)选择“Simulation”→“Start Simulation”开始仿真。
(2)在仿真窗口中观察波形,验证全加器电路的功能。
5. 下载到FPGA开发板(1)选择“Tools”→“Programmer”打开编程器。
题目:分别利用74XX151和74XX138设计一位全加器,要求设计过程和电路图。
解:根据全加器的定义可知:输入为:A ,B ,Ci 其中A ,B 为被加数和加数,Ci 为低位进位数。
输出为:S ,Co ,其中S 为本位和数,Co 为高位进位数。
其逻辑关系为: S = A ⊕B ⊕Ci Co = AB+(A ⊕B)Ci计算后,结果用最小项表示为: S = m 1 + m 2 + m 4 + m 7 Co = m 3 + m 5 + m 6 + m 7查询74XX151和74XX138的真值表可知: 74XX138的输出与输入关系 ii m Y =74XX151的输出与输入关系i i D m Y ∑=1)74XX138那么利用74LS138可以得到地址端A ,B ,Ci 对应的所有最小项,然后用两个4输入与非门(74LS20)取得与上面计算得到的对应的最小项和,就能得到想要的结果。
可以设计如图1所示电路:图1图中,三位拨码开关分别代表A ,B 和Ci 。
S 和Co 是两个灯,代表S 和Co 的状态,为“1” 时亮,为“0”时不亮。
下面给出{A=1,B=0,Ci=0};{A=0,B=1,Ci=0};{A=1,B=1,Ci=0}和{A=1,B=1,Ci=1}四种输入状态下的S 和Co 状态。
图2 (A=1,B=0,Ci=0)图3 (A=0,B=1,Ci=0)图4 (A=1,B=1,Ci=0)图5 (A=1,B=1,Ci=1) 可以看出电路的逻辑关系是正确的。
2)74XX151利用74LS151数据选择器可以设计如图6所示电路:两个74LS151分别得到S和Co;其中U1的数据端配置为D1=D2=D4=D7=1,其余为0;U2配置为D3=D5=D6=D7=1,其余为0.图6同样,下面也给出{A=1,B=0,Ci=0};{A=0,B=1,Ci=0};{A=1,B=1,Ci=0}和{A=1,B=1,Ci=1}四种输入状态下的S和Co状态。
加法器电路的设计加法器是数字电路中常见的一种逻辑电路,用于实现多个数字信号的加法运算。
它是计算机中基本的运算器件之一,广泛应用于各种计算机及数字电子设备中。
加法器的设计首先要考虑的是输入和输出的位数。
一般情况下,我们需要设计一个n位的加法器,其中n可以是任意正整数。
接下来,我们将详细介绍一个4位加法器的设计过程。
4位加法器的设计可以通过级联多个1位加法器实现。
每个1位加法器有两个输入A和B,以及一个进位输入Cin,两个输出之和S和进位输出Cout。
首先,我们需要实现1位全加器。
1位全加器可以通过两个半加器(Half Adder)和一个或门(OR gate)组合而成。
半加器有两个输入A和B,以及一个进位输入Cin,和两个输出之和S和进位输出Cout。
它的真值表如下所示:```A B Cin S Cout0000001010100101100100110011011010111111```其中,S代表两个输入的和,Cout代表进位输出。
半加器可以用逻辑门来实现。
S可以通过一个异或门(XOR gate)实现,Cout可以通过一个与门(AND gate)实现。
具体实现如下所示:S=A⊕BCout = A ∧ B接下来,我们将两个半加器级联成一个1位全加器。
如下所示:```__________________A---_____B--->,Half , AND ,---->CouCin->, Adder , Gate,________________________,XOR,---->, Gat,_____```在该电路中,两个输入A和B直接连接到两个半加器的对应输入上,进位输入Cin只连接到第一个半加器的进位输入上。
两个半加器的和输出S通过异或门连接在一起,同时使用与门实现进位输出Cout。
有了1位全加器的设计,我们就可以开始组合多个1位全加器来实现4位加法器了。
具体的设计思路是:1.将四个输入A0-A3和B0-B3连接到四个1位全加器的对应输入上。
实验二全加器的设计一、实验目的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管脚加入。