4位二进制全加器的设计.doc_第1页
4位二进制全加器的设计.doc_第2页
4位二进制全加器的设计.doc_第3页
4位二进制全加器的设计.doc_第4页
4位二进制全加器的设计.doc_第5页
免费预览已结束,剩余5页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4位二进制全加器的设计摘要 加法器是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。在电子学中,加法器是一种数位电路,其可进行数字的加法计算。在现代的电脑中,加法器存在于算术逻辑单元(ALU)之中。 加法器可以用来表示各种数值,如:BCD、加三码,主要的加法器是以二进制作运算。多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运行速度快;串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行加法器的资源占用差距也会越来越大。我们采用4位二进制并行加法器作为折中选择,所选加法器为4位二进制先行进位的74LS283,它从C0到C4输出的传输延迟很短,只用了几级逻辑来形成和及进位输出,由其构成4位二进制全加器,并用Verilog HDL进行仿真。关键字全加器,四位二进制,迭代电路,并行进位,74LS283,Verilog HDL仿真总电路设计 一、硬件电路的设计 该4位二进制全加器以74LS283(图1)为核心,采用先行进位方式,极大地提高了电路运行速度,下面是对4位全加器电路设计的具体分析。图1 1)全加器(full-adder )全加器是一种由被加数、加数和来自低位的进位数三者相加的运算器。基本功能是实现二进制加法。 全加器的功能表输 入输 出输 入输 出CI A B S COCI A B S CO0 0 00 0 10 1 00 1 10 01 01 00 11 0 01 0 11 1 01 1 11 00 10 11 1逻辑表达式: =ABCI+ABCI+ABCI+ABCI其中,如果输入有奇数个1,则S为1;如果输入有2个或2个以上的1,则CO=1。实现全加器等式的门级电路图如图2所示,逻辑符号如图3所示. 图2 图32)四位二级制加法器 a) 串行进位加法器四位二进制加法器为4个全加器的级联,每个处理一位。最低有效位的进位输入通常置为0,每个全加器的进位输出连到高一位全加器的进位输入。 b)超前进位加法器为了提高运算速度,必须设法减小或消除由于进位信号逐级传递所消耗的时间,于是制成了超前进位加法器。优点:与串行进位加法器相比,(特别是位数比较大的时候)超前进位加法器的延迟时间大大缩短了。缺点:电路比较复杂。综上所述,由于此处位数为4(比较小),出于简单起见,这里选择串行进位加法器。b)超前位链结构加法器 令 产生进位 产生传输信号四位全加器的进位链逻辑可以表示为如下:由上面对加法器的具体分析,下面给出的是4位二进制全加器的部分真值表: truthtableA3A2A1A0B3B2B1B0CIS3S2S1S0CO0000000000000000000000100010000100010001000010000100011000110001101010001100100010100100000010101000100010001000011100001100000101000010110010001000000001100010001000111001001101100010010100011010100001100111001000011011111010101001000111101010011010011000100100001110001001100101.下面是74LS283四位二进制全加器的逻辑电路图:2、 软件程序的设计该设计采用Verilog HDL语言进行仿真,下面是具体的Verilog HDL程序:1位全加器可由两个半加器组成,在半加器的基础上,采用元件调用和例化语句,将件连接起来,而实现全加器的VHDL编程和整体功能。全加器包含了两个半加器和一个或门。在此基础上可设计出四位全加器。(一) 半加器VHDL语言描述语句为:so=a xor b; co=a and b程序设计:library ieee;use ieee.std_logic_1164.all;entity h_adder isport (a,b:in std_logic; so,co:out std_logic); 定义输入、输出端口end h_adder;architecture bh of h_adder isbeginso=a xor b; “异或”运算co=a and b; “与”运算end bh;四位全加器VHDL程序代码如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity add4 is port(cin:in std_logic;a,b:in std_logic_vector(3 downto 0);s:out std_logic_vector(3 downto 0);cout:out std_logic);end add4;architecture beh of add4 is signal sint:std_logic_vector(4 downto 0); signal aa,bb:std_logic_vector(4 downto 0); begin aa=0 & a(3 downto 0); -4位加数矢量扩为5位,提供进位空间 bb=0 & b(3 downto 0); sint=aa+bb+cin; s(3 downto 0)=sint(3 downto 0); cout=sint(4);end beh;四位全加器VerilogHDL程序代码如下:module add(A,B,CI,CO,S); parameter N=4;input N:1 A,B;input CI;output CO;output N:1 S;assign CO,S=A+B+CI;EndmoduleVerilog HDL仿真结果 图4结果分析:由图4可以看出仿真结果与实际的运算结果是相同的。由仿真程序结果可知,设计的程序完成了四位全加器的功能,因此,该程序正确。心得体会通过本次课程设计,我们加深了对所学知识的理解,并对某些知识进行了很好地应用,如全加器,74xx283等。同时,我们也更加强化了自己查阅资料的能力,这有助于提高我们的自学能力,整个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论