课程设计---4位二进制全加器全减器

合集下载

四位二进制全加全减器

四位二进制全加全减器

数字逻辑设计及应用课程设计组合逻辑电路课程设计四位二进制全加/全减器姓名:学号:指导教师:一、任务与要求使用74LS83构成4位二进制全加/全减器。

具体要求:1)列出真值表;2)画出逻辑图3)用Verilog HDL进行仿真二、设计思路1)原理分析:74LS83是四位二进制先行加法器,所以直接接入输入可以得到全加器,下面主要讨论四位二进制全减器的构造。

对于减法,可以作相应的代数转换编程加法,二进制减法也是如此,原理如下:这样就把减法变为了加法,而[]=,这里利用补码性质,具体实现方法就是:逐位取反并在最低权一位加上1。

在全减器中,进位输入Cin变为借位输出,所以要减去Cin,且全加器的输出端Cout为进位输出,全减器为借位输出,所以将So取反后即可得到全减器的借位输出。

在以上分析基础可知,可在全加器的基础上设计全减器。

四位二进制全加/全减器真值表如下:(因原始真值表行数太过庞大,列出部分真值的例子)真值表A3 A2 A1 A0 B3 B2 B1 B0 Co Bo S0 S1 S2 S3C/B0 0 1 0 0 1 0 1 0 1 0/1 1/1 1/0 1/1 01 0 1 1 1 1 1 0 1 1 1/1 0/1 0/0 1/1 00 1 1 0 0 0 1 1 0 0 1/0 0/0 0/1 1/1 01 1 1 1 0 0 1 1 1 0 0/1 0/1 1/0 0/0 00 0 1 0 0 1 0 1 0 1 1/1 0/1 0/0 0/0 11 0 1 1 1 1 1 0 1 1 1/1 0/1 1/0 0/0 10 1 1 0 0 0 1 1 0 0 1/0 0/0 1/1 0/0 11 1 1 1 0 0 1 1 1 0 0/1 0/0 1/1 1/1 1*表格后半部分内容,斜线前为全加结果,斜线后为全减结果*XOR门的函数为:,所以当EN=A=0时,得到F=B与第二输入相同,当EN=A=1时,F=B’与第二输入相反。

四位二进制全加器设计

四位二进制全加器设计

四位二进制全加器设计(总3页) -CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除组合逻辑电路课程设计题目:用74ls283构成四位二进制全加/减器一、设计思路74ls283为四位加法器,而如果希望进行减法运算,则需要将其转化为加法,而之前学到,二进制运算,一个数减去另一个数,即等于加上其补码。

于是得到如下公式,A-B=A+(-B)=A+B’+1。

将其全部视为加法运算,即一个数加上一个正数或者一个负数,这个数为加数B。

那么,需要将加数增添一位符号位,以区分正负。

因为74ls283芯片的引脚为低位向正在运算的数的进位,所以可以将其作为加数的符号位。

当其为正数时,输入为0,即计算A+B。

而当加数为负数时候,使其输入为1,并将B取反,再加上进位1,正好与公式相符。

根据以上原理,应用输入作为符号位,进行4位被加(减)数与5位加(减)数的加法运算。

设A3-A0为被加(减)数,B3-B0为加(减)数,M0为符号位。

当M0为0时表示正数,为1时表示负数。

而当B为负数需要取反时,刚好可以利用异或门的特性来进行,即1异或B等于B’,0异或B等于B即将B的各个数位和M0通过异或门相连,即可以做到负数取反。

二、电路图如图,输入输出ABC都用LED来指示二进制的数值,开关S2控制A的数值,S1控制B的数值以及符号位。

BX1指示灯指示的是输入B经过异或门作用后的电平。

三、由于此电路进行的是加法运算,两个加数一共2的9次方中组合,所以真值表又多又显而易见,此处将不给出。

四、举例演示:(1)5+6=11如图拨动开关,A=5,B=6,可见C为11的二进制表示1011。

(2)7-3=4如图,将M0置为1以表示负数。

BX1表示的是3的反码,在74283中进行了加1的运算即变成了补码,输出结果为0100(2)=4(10)(3)1000+1000=10000由于输出只有四位,而1000+1000会产生进位。

4位二进制全加器设计

4位二进制全加器设计

任务一4位全加器设计一、实验目的1、掌握运用Quartus II原理图编辑器进行层次电路系统设计的方法。

2、进一步熟悉利用Quartus II进行电路系统设计的一般流程。

3、掌握4位全加器原理图输入设计的基本方法及过程。

二、实验原理(1)设计一位半加器真值表:(2)设计一位全加器真值表:SOn=n n n−1;COn=(A n⨁B n)C n−1+A n B n;(2)设计多位全加器由一位全加器组合成多位全加器。

依次将低位全加器的进位输出端接到高位全加器的进位输入端,由四个一位全加器构成四位全加器。

三、实验过程1、一位半加器的设计(1)电路图①执行“Files”─>“New”─>“Block Diagram/Sch matic”─>“OK”②在编辑窗口输入“与非”门电路原理图,保存电路为“01.bdf”,如图:(2)仿真波形①执行“Files”─>“New”─>“Vector Waveform File”─>“OK”②在波形编辑窗口双击左键,执行“Insert Node or Bus”─> “New Finder”─> “List”─>“》”─>“OK”。

③保存文件为“01.vwf”。

④执行菜单“Processing”─> “Start Simulation”,如图:(3)仿真波形分析:(4)封装之后的图:设“01.bdf”为顶层文件,执行“Files”─>“Create、Update”─> “Create Symbol Files forCurrent Files”,保存。

如图:2、一位全加器(1)电路图①执行“Files”─>“New”─>“Block Diagram/Sch matic”─>“OK”②在编辑窗口输入“与非”门电路原理图,保存电路为“02.bdf”,如图:(2)仿真波形①设“02.bdf”为顶层文件。

4位二进制全加器的设计

4位二进制全加器的设计

4位二进制全加器的设计摘要加法器是产生数的和的装置。

加数和被加数为输入,和数与进位为输出的装置为半加器。

若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。

常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。

在电子学中,加法器是一种数位电路,其可进行数字的加法计算。

在现代的电脑中,加法器存在于算术逻辑单元(ALU)之中。

加法器可以用来表示各种数值,如:BCD、加三码,主要的加法器是以二进制作运算。

多位加法器的构成有两种方式:并行进位和串行进位方式。

并行进位加法器设有并行进位产生逻辑,运行速度快;串行进位方式是将全加器级联构成多位加法器。

通常,并行加法器比串行加法器的资源占用差距也会越来越大。

我们采用4位二进制并行加法器作为折中选择,所选加法器为4位二进制先行进位的74LS283,它从C0到C4输出的传输延迟很短,只用了几级逻辑来形成和及进位输出,由其构成4位二进制全加器,并用proteus进行仿真。

关键字全加器,四位二进制,迭代电路,并行进位,74LS283,proteus仿真总电路设计一、硬件电路的设计该4位二进制全加器以74LS283(图1)为核心,采用先行进位方式,极大地提高了电路运行速度,下面是对4位全加器电路设计的具体分析。

图11)全加器(full-adder )全加器是一种由被加数、加数和来自低位的进位数三者相加的运算器。

基本功能是实现二进制加法。

全加器的功能表输入输出输入输出逻辑表达式:CIB A S ⊕⊕==AB'CI'+A'BCI'+A'B'CI+ABCI()AB CI B A CO ++=其中,如果输入有奇数个1,则S 为1;如果输入有2个或2个以上的1,则CO=1。

实现全加器等式的门级电路图如图2所示,逻辑符号如图3所示.图2图32)四位二级制加法器 a) 串行进位加法器四位二进制加法器为4个全加器的级联,每个处理一位。

4位二进制加法器课程设计

4位二进制加法器课程设计

长安大学电工与电子技术课程设计题目:4位二进制加法器学院:汽车学院专业:汽车运用工程班级:姓名:学号:指导老师:李三财目录一、课题名称与技术要求···························二、摘要·········································三、总体设计方案论证及选择·······················1、方案论证与选择······························2、加法器的选取································3、译码器的选取································4、数码管的选取································四、设计方案的原理框图、总体电路原理图及说明·····1、原理框图····································2、总体电路原理图······························3、说明········································五、单元电路设计、主要元器件选择及电路参数计算···1、单元电路设计································2、主要元器件选择······························六、收获与体会及存在的问题·······················七、参考文献·····································八、附件·········································一、课题名称及技术要求1、课题名称:四位二进制加法器2、技术要求:a、四位二进制加数与被加数输入b、二位数码管显示二、摘要本加法器要实现能够输入加数和被加数,并且还能够将最终结果用二位数码管显示出来的功能。

四位二进制加法器 课程设计报告

四位二进制加法器 课程设计报告

《电工与电子技术基础》课程设计报告题目 4位二进制加法器学院(部)专业班级学生姓名学号5月日至 6月日共周目录技术要求·2摘要·2第一章系统概述1、总体设计思想·22、系统框图·33、工作原理·3第二章单元电路设计及分析1、加法器的选择·42、译码器Ⅰ的选择·83、译码器Ⅱ的选择·114、数码管的选择·13第三章系统综述及总体电路图1、系统综述·142、总体电路图·153、仿真结果·15第四章结束语收获与体会·16鸣谢·17附录1、元件材料清单·172、部分元器件引脚图·17参考文献··174位二进制加法器课题名称与技术要求课题名称:四位二进制加法器设计技术要求:1)四位二进制加数与被加数输入2)二位数码管显示摘要本设计通过八个数据开关将A4,A3,A2,A1和B4,B3,B2,B1信号作为加数和被加数输入四位二进制并行进位加法器相加,将输出信号S4,S3,S2,S1和向高位的进位C4通过译码器Ⅰ译码,再将输出的X4,X3,X2,X1和Y4,Y3,Y2,Y1各自分别通过一个 74248J译码器,最后分别通过数码管HVH实现二位显示。

本设计中译码器Ⅰ由三部分组成,包括一个2输入四与非门(74LS08D)、一个4位二进制全加器(74LS283N)和一个3输入或门(4075BD_5V)。

信号S4,S3,S2,S1和向高位的进位C4输入译码器Ⅰ,将得到的两组4位BCD码输出,将这两组4位BCD码分别输入BCD-7段译码/升压输出驱动器(74248J),使电路的后续部分得以执行。

第一章系统概述1、总体设计思想设计思路:两个4位二进制数的输入可用八个数据开关实现,这两个二进制数经全加器求和后最多可以是5位二进制数。

而本题要求用两位数码管分别显示求和结果的十进制十位和各位,因此需要两个译码器Ⅱ分别译码十位和个位。

课程设计--四位二进制加减法器

课程设计--四位二进制加减法器

组合逻辑电路课程设计之四位二进制加减法器摘要:加法器即是产生数的和的装置。

加数和被加数为输入,和数与进位为输出的装置为半加器。

若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。

对于4位的二进制加法,相关的有五个的量:1,被加数A ,2,被加数B ,3,前一位的进位CIN ,4,此位二数相加的和S ,5,此位二数相加产生的进位COUT 。

前三个量为输入量,后两个量为输出量,五个量均为4位.本文采用4位二进制并行加法器原理,选择74LS283,74LS283是4位二进制先行进位加法器,它只用了几级逻辑来形成,并连接几个异或门,由其构成4位二进制加法器/减法器,并用Verilog HDL 进行仿真。

关键字:全加器,异或门,74LS283, verilog,加法/减法功能.总的电路设计 一.硬件电路的设计本电路74LS283为核心元件,其逻辑符号为U174LS283DSUM_410SUM_313SUM_14SUM_21C49B411A412B315A314B22A23B16A15C07全加器由加位输入X 和Y ,还有进位输入CIN,3个输入的范围是0~3,可以用两个输出位表示.S(全加和)和COUT(送给高位的进位).满足下面等式.CINY CIN X Y X COUT CINY X CIN Y X N CI Y X N CI Y X CIN Y X S ⋅+⋅+⋅=⋅⋅+⋅'⋅'+'⋅⋅'+'⋅'⋅=⊕⊕=实现全加器的电路图如下74LS08D本电路还需要4个异或门,要实现加法器和减法器的双重功能,需要有选择功能端,设A为四位二进制被加数,B为二进制被减数.当使能端为0时,电路实现加法运算,当使能端为1时电路实现减法运算.电路原理图如下1.Multisim原理图2.MAX plus2原理图当A口输入为0011,B口输入为0001,使能端为0时.输出为0100.电路图如下当A口输入为0011,B口输入为0001,使能端输入为1时.输出为0010.电路图如下二.软件程序设计Verilog HDL语言程序module b(A,B,C,D,E);input[3:0] A,B;input C;output[3:0] D;output E;assign {E,D}=C?(A+B):(A-B);endmodule当A口输入为0011,B口输入为0001,使能端输入为0,输出为0010,仿真图如下.当A口输入为0011,B口输入为0001,使能端输入为1时.输出为0010.仿真图如下三.总结及心得体会1.通过本次课题设计,自学了一些相关的Verilog语言和MAX+plusII,Multisim 软件的使用方法.2.基本掌握了74LS283的基本原理及使用方法.。

全加器全减器设计实验报告

全加器全减器设计实验报告

全加器全减器设计实验报告1. 引言全加器和全减器是数字电路中常用的基本电路模块之一。

全加器用于将两个二进制数相加,全减器用于将两个二进制数相减。

在本实验中,我们将设计并实现一个4位的全加器和一个4位的全减器电路。

2. 原理2.1 全加器全加器是由两个半加器和一个或门组成的电路。

一个半加器用于计算两个输入位的和,另一个半加器用于计算进位值。

将两个半加器的结果和进位值通过或门进行运算,即可得到全加器的输出。

如下图所示为全加器的逻辑电路图:![全加器逻辑电路图](circuit1.png)其中,A和B为输入信号,用于表示待相加的两个二进制数的对应位;S为输出信号,表示两个输入数的对应位相加的结果;C为进位信号,表示相加时产生的进位。

2.2 全减器全减器是由两个半减器和一个与非门组成的电路。

与全加器类似,一个半减器用于计算两个输入位的差,另一个半减器用于计算借位值。

将两个半减器的结果和借位值通过与非门进行运算,即可得到全减器的输出。

如下图所示为全减器的逻辑电路图:![全减器逻辑电路图](circuit2.png)其中,A和B为输入信号,用于表示待相减的两个二进制数的对应位;D为输出信号,表示两个输入数的对应位相减的结果;B为借位信号,表示相减时需要借出的位。

3. 设计和实现3.1 全加器设计根据2.1中的原理,我们可以使用两个半加器和一个或门来实现一个4位的全加器电路。

根据全加器的逻辑电路图,我们可以将四个输入位(A0, A1, A2, A3)依次与另外四个输入位(B0, B1, B2, B3)连接到两个半加器中,然后将两个半加器的和(S0, S1, S2, S3)通过或门进行运算。

此外,计算进位值需要使用到四个位的与门(And)。

具体电路图如下:![4位全加器电路图](circuit3.png)3.2 全减器设计根据2.2中的原理,我们可以使用两个半减器和一个与非门来实现一个4位的全减器电路。

根据全减器的逻辑电路图,我们可以将四个输入位(A0, A1, A2, A3)依次与另外四个输入位取反连接到两个半减器中,然后将两个半减器的差(D0, D1, D2, D3)通过与非门进行运算。

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

组合逻辑电路课程设计之——
4位二进制全加器/全减器
课程设计题目要求:
使用74LS283构成4位二进制全加\全减器。

具体要求:1)列出真值表;
2)画出逻辑图;
3)用Verilog HDL进行仿真。

摘要
加法器是数字系统中的基本逻辑器件。

例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。

但宽位加法器的设计是很耗费资源的,因此在实际的设计和相关系统的开发中需要注意资源的利用率和进位速度等两方面问题。

多为加法器的构成有两种方式:并行进位和串行进位方式。

并行进位加法器设有并行进位产生逻辑,运行速度快;串行进位方式是将全加器级联构成多位加法器。

通常,并行加法器比串行加法器的资源占用差距也会越来越大。

本文将采用4位二进制并行加法器作为折中选择,所选加法器为74LS283,74LS283是4位二进制先行进位加法器,它只用了几级逻辑来形成和及进位输出,由其构成4位二进制全加器;而四位的全减器可以用加法器简单的改造而来。

采用Verilog HDL对四位的全加器-全减器进行仿真。

关键字
74LS283,全加器,并行进位,串行进位,全减器,Verilog HDL仿真
总电路设计
一、硬件电路的设计
该4位二进制全加器以74LS283(图1)为核心,采用先行进位方式,极大地提高了电路运行速度,下面是对4位全加器电路设计的具体分析。

图1
1)全加器
全加器是针对多于一位的操作数相加,必须提供位与位之间的进位而设计的一种加法器,具有广泛而重要的应用。

其除有加数位X和Y,还有来自低位的进位输入CIN,和输出S(全加和)与COUT(送给高位的进位),满足下面等式:
CIN
Y
CIN
X
Y
X
COUT
CIN
Y
X
CIN
Y
X
N
CI
Y
X
N
CI
Y
X
CIN
Y
X
S

+

+

=


+
⋅'
⋅'
+'

⋅'
+'
⋅'

=


=
其中,如果输入有奇数个1,则S为1;如果输入有2个或2个以上的1,则
COUT为1。

实现全加器等式的电路如图3所示,逻辑符号见下
图2
图3
2)四位二进制加法器 a) 串行进位加法器
四位二进制加法器可以采用4个一位全加器及连成串行进位加法器,其实现框图如下
输入:
Input : A3A2A1A0 加数输入 B3B2B1B0 加数输入
C0 进位输入(CIN) 输出:
Output S3S2S1S0 和数输出
C4 进位输出 (COUT)
b )超前位链结构加法器
)(11
B A
C AB COUT C B A S i i ++=⊕⊕=-- 令i i i B A G = 产生进位 i i i B A P +=产生传输信

四位全加器的进位链逻辑可以表示为如下:
1234123423434440
12312323330
1212220
111C P P P P G P P P G P P G P G C C P P P G P P G P G C C P P G P G C C P G C ++++=+++=++=+=
根据上面对加法器的具体分析,下面给出的是4位二进制全加器的部分真值表:
下面是74LS283四位二进制全加器的逻辑电路图:
以上部分是对4位二进制全加器电路硬件的详细设计。

3)全减器
全减器有两种构造方法
方法一:
全减器处理二进制算法的一位,其输入位为X(被减数),Y(减数)和BIN(借位输入),其输出位为D(差)和BOUT(借位输入)。

根据二进制减法表,可以写出如下等式:
D=X○○○YBIN
BOUT=X’* Y + X’* BIN + BIN
这些等式非常类似于全加器中的等式,应该不足为奇。

所以我们可以按照全加器的构成思路来构造全减器。

方法二:
根据二进制补码的减法运算,X-Y可以通过加法操作来完成,也就是说,可以通过把Y的二进制补码加到X上来完成。

Y的二进制补码等于Y’+1,其中Y’等于Y的各个位取法。

所以
X-Y=X +(-Y)= X +(Y’+1)
即全减器可以通过全加器来实现。

我们将74LS283的B口的四个输入作如上图的改动,添加了一个选择端select,通过他来控制是做加法运算还是减法运算。

做减法运算Select=1时各个与非门的输出与输入相反,达到了去反的目的,此时cin=1,从而实现了减法功能。

做加法运算Select=0时各个与非门的输出与输入相同,达到了保持不变目的,此时cin=外部输入,从而实现了加法功能。

所以总的逻辑电路图如下
总的真值表:即将全加器真值表和全减器真值表合成而得,此处省略。

二、软件程序的设计
本设计采用Verilog HDL 语言的所设计的4位二进制全加器进行仿真,下面
是具体的Verilog HDL 程序:
第一步:建一VHD 程序,半加器的。

hadd_v.vhd library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity hadd_v is
port(a,b: in std_logic; s,c: out std_logic); end hadd_v;
architecture a of hadd_v is
signal temp: std_logic_vector(1 downto 0); begin
10 13 4
1 9
temp<=('0'&A)+B;
s<=temp(0);
c<=temp(1);
end a;
编译通过
第二步:建一VHD程序,全加器。

fadd_v.vhd
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity fadd_v is
port(a,b,ci :in std_logic;
s,co :out std_logic);
end fadd_v;
architecture a of fadd_v is
signal temp :std_logic_vector(1 downto 0);
begin
temp<=('0'&a)+b+ci;
s<=temp(0);
co<=temp(1);
end a;
编译通过。

第三步:建一VHD程序。

为程序包,加入全加,半加两个实例add_v.vhd LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
PACKAGE add_v IS
COMPONENT hadd_v
PORT(
a, b : IN STD_LOGIC;
s,c : OUT STD_LOGIC);
END COMPONENT;
COMPONENT fadd_v
PORT(
a, b,ci: IN STD_LOGIC;
s,co : OUT STD_LOGIC);
END COMPONENT;
END add_v;
第四步:四位加法器程序add4_v.VHD
library ieee;
use ieee.std_logic_1164.all;
use Work.add_v.all;
entity add4_v is
port (A,B:in std_logic_vector(3 downto 0);
S:out std_logic_vector(3 downto 0);
cout :out std_logic);
end add4_v;
architecture x of add4_v is
signal N1,N2,N3: std_logic;
begin
h0: hadd_v
port map (a=>A(0),b=>B(0),s=>S(0),c=>N1);
h1: fadd_v
port map (a=>A(1),b=>B(1),ci=>N1,s=>S(1),co=>N2);
h2: fadd_v
port map (a=>A(2),b=>B(2),ci=>N2,s=>S(2),co=>N3);
h3: fadd_v
port map (a=>A(3),b=>B(3),ci=>N3,s=>S(3),co=>cout);
end x;
结束。

结语
通过我们小组成员的共同努力,完成了由74LS283构成的4位二进制全加器的电路硬件设计和Verilog HDL软件仿真,最终我们的设计成果较好地完成了设计要求,同时我们也在本次设计过程中进一步掌握了组合逻辑电路的相关知识以及进一步熟悉Verilog HDL 语言的应用。

相关文档
最新文档