组合逻辑电路课程设计—— 4位二进制全加器/全减器
作者: 学号:
课程设计题目要求:
1) 使用74LS283构成4位二进制全加/全减器。 2) 阐述设计思路。 3) 列出真值表。
4) 画出设计的逻辑图。
5) 用VHDL对所画电路进行仿真。
目录
摘要 .................................................................................................................................................. 1 1总电路设计.................................................................................................................................... 2
1.1硬件电路的设计 ................................................................................................................. 2 1.2全加器(full-adder ) ....................................................................................................... 3 1.2.1四位二级制加法器 .......................................................................................................... 4
1.2.1.1串行进位加法器 ................................................................................................... 4 1.2.1.2超前进位加法器 ................................................................................................... 5 1.2.1.3超前位链结构加法器 ........................................................................................... 5 1.3全减器(full-substracter ) .............................................................................................. 5 1.4总电路设计 ......................................................................................................................... 6 2设计思路........................................................................................................................................ 7
2.1全加器................................................................................................................................. 7 2.2全减器................................................................................................................................. 7 3真值表 ........................................................................................................................................... 8 4逻辑图与仿真 ................................................................................................................................ 9 5软件程序的设计 .......................................................................................................................... 13 6结果分析与总结 .......................................................................................................................... 15
摘要
加法器是数字系统中产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进
位为输出则为全加器。例如:为了节省资源,减法器和硬件乘法器都可以用加法器来构成。但宽位加法器的设计是很耗资源的,因此在实际的设计和相关饿得设计与开发中需要注意资源的利用率和进位速度两方面的问题,多位加法器的构成主要有两种:并行进位和串行进位。并行进位加法器设有并行进位产生逻辑,运行速度比串行进位快;串行进位是将全加器采取并行级联或菊花链式级联构成多位加法器。加法器也是常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。此外还可以用来表示各种数值,如:BCD、加三码,主要的加法器是以二进制作运算。
本文将采用4位二进制并行加法器作为折中选择,所选加法器为74LS283,74LS283是4位二进制先行进位的加法器,它只用了几级逻辑来形成和及进位输出,故由其构成4位二进制全加器;而四位全减器可以用加法器简单的改造而来,最后本文采用 VHDL对四位全加器/全减器进行仿真。
关键字
74LS283全加器、四位二进制、迭代电路、并行进位、串行进位、VHDL
1总电路设计
1.1硬件电路的设计
该4位二进制全加器以74LS283为核心,74LS283芯片引脚图如下图,本文采用先行进位方式,极大地提高了电路运行速度,下面是对4位全加器电路设计的具体分析。
图1.1 74LS283芯片引脚图
1.2全加器(full-adder )
全加器是针对超过一位的操作数相加,必须提供位与位之间的进位而设计的一种加法器,具有广泛而重要的应用。它除了有加数位X和Y,还有来自低位的进位Cin和输出S与给高位的进位Cout, 具体满足下面等式:
S=X⊕Y⊕??????=?????′???????′+??′??????????′+??′???′???????+????????????
????????=?????+?????????+?????????
其中,如果有奇数个1,则S为1;如果输入有2个或2个以上的1,则Cout为1。全加器的功能表如下:
表1.2.1全加器的功能表 输 入 Cin A B 0 0 0 0 0 1 0 1 0 0 1 1 逻辑表达式: 输 出 S Cout 0 0 1 0 1 0 0 1 ′输 入 CI A B 1 0 0 1 0 1 1 1 0 1 1 1 ′输 出 S Cout 1 0 0 1 0 1 1 1 S=A⊕B⊕??????=A??′ ??????+??′ B??????+??′??′??????+AB ??????
????????
实现全加器的电路图如下:
图1.2. 1全加器等式电路图
=(??+??)??????+????
图1.2.2全加器简化模型图
1.2.1四位二级制加法器 1.2.1.1串行进位加法器
四位二进制加法器为4个全加器的级联,每个处理一位。最低有效位的进位输入通常置为0,每个全加器的进位输出连到高一位全加器的进位输入。
图1.1.2.1.1四位二进制加法器实现流程图
输入Input A3A2A1A0 B3B2B1B0 C0 S3S2S1S0 加数输入 加数输入 进位输入Cin 和数输入 输出Output C4 进位输出Cout 1.2.1.2超前进位加法器
为了提高运算速度,必须设法减小或消除由于进位信号逐级传递所消耗的时间,于是制成了超前进位加法器。 优点:与串行进位加法器相比,(特别是位数比较大的时候)超前进位加法器的延迟时间大大缩短了。但是它的缺点就是电路比较复杂。
1.2.1.3超前位链结构加法器
S=A⊕B⊕?????1 ????????=AB+?????1(??+??)
令????=???????? 产生进位????=????+????产生传输信号, 四位全加器的进位链逻辑可以表示为如下: ??1=??1+??1??0
??2=??2+??2??2+??2??1??0
??3=??3+??3??2+??3??2??1+??3??2??1??0
??4=??4+??4??3+??4??3??2+??4??3??2??1+??4??3??2??1??0
1.3全减器(full-substracter )
全减器有两种构造方法:
1. 全减器处理二进制算法的一位,其输入位为X(被减数),Y(减数)和
Bin(借位输入),其输入位为D(差)和Bout(借位输入),根据二进制减法表,可以写出如下等式:
????????=??′×??+??′×??????+??????
这些等式非常类似于全加器中的等式,但不足为奇。所以我们可以按照全加器的构造思路来构造全加器。
2. 根据二进制补码的减法运算,X-Y可以通过加法操作来完成,也就是说,
可以通过把Y的二进制补码加到X上来完成。Y的二进制补码等于Y’+1。其中Y’等于Y的各个位取反。所以得出下式:
X?Y=X+(?Y)=X+(??′+1)
即全减器可以通过全加器来实现。其逻辑图如下图:
图1.3.1全减器/全加器设计逻辑图