EDA课程设计 一位全加器的设计

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

EDA课程设计

一位全加器的设计

The design of one bit full adder

学校:兰州交通大学

学院:电子与信息工程学院

班级:

姓名:

学号:

指导老师:

成绩:

摘要:

本设计主要是利用VHDL语言设计一个一位全加器,它由半加器和或门两个模块组成。两个模块通过顶层元件例化连接到一起。几个模块组成的整体能够实现全加器的功能,对所给数据,能够准确快速地计算出其结果.

具体的该设计利用VHDL语言使用文本输入,新建工程,通过设计输入、编译、仿真完成各种模块设计,然后生成元器件,再根据元件例化完成各部分的整合,从而形成一个完整的全加器,功能上很好地被满足。

关键字:全加器元件例化

Abstract:

This design primarily uses VHDL language to design the one bit full adder, which is composed of two half adder and a OR gate. The two modules are connected by top Component instance. Finally, the whole of several parts achieve the function of full adder. For given dates, it can calculate its consequence accurately and quickly.

In detail, the design uses text input method by VHDL language to create new projects. By designing the input, compile, simulate, it complete various modules design and generate new components. Then it forms a complete one bit full adder by accomplishing the integration of all parts, according to component instance. And the function can be well satisfied.

Key word:full adder component instance

一.原理(说明)

在计算机中2个二进制数之间的加减乘除算术运算都是由若干加法运算实现的.全加器是算术逻辑运算的重要组成部分,对其深入探索研究有重要的意义。一位全加器及其表达式在将2个多位二进制数相加时,除了最低位以外,每位都应该考虑来自低位的进位,即将2个对应位的加数和来自低位的进位3个数相加,实现这种运算电路即是全加器.设A是加数,B是被加数,CI是来自低位的进位,S是本位的和,CO 是向高位的进位.根据二进制数加法运算规则和要实现的逻辑功能,得出一位全加器真值表,

全加器除了两个1位二进制数相加以外,还与低位向本位的进位数相加.表为全加器的真值表。

A i

B i

C I-1 C i S

0 0 0 0 0

0 0 1 0 1

0 1 0 0 1

0 1 1 1 0

1 0 0 0 1

1 0 1 1 0

1 1 0 1 0

1 1 1 1 1

图1. 全加器f_adder 电路图及其实体模块

由真值表可得出逻辑函数式

式中,A i 和B i 是两个相加的1为二进制数,C i-1是由相邻低位送来的进位数,S I 是本位的全加和,C I 是向相邻高位送出的进位数。

由数字电路知识可知,一位全加器可由两个一位半加器与一个或门构成,其原理图如图所示。该设计利用层次结构描述法,首先设计半加器电路,将其打包为半加器模块;然后在顶层调用半加器模块组成全加器电路;最后将全加器电路编译下载到实验箱,其中a,b,cin 信号可采用实验箱上键1、键2和键3进行输入,s,co 信号采用D1与D2发光二极管来显示。

一位全加器将A1、B1和进位输入Cin 作为输入,计算得到和S1以及最高位的进位输出Cout 。每一位得到的和与进位输出都直接受其上一位的影响,其进位输出也会影响下一位。最终,整个全加器的和与输出都受进位输入Cin 的影响。

ain cout cout ain bin sum

cin

bin sum

cin

f_adder

or2a

f e

d u3

u2

u1b a c

co so

B co so

B

h_adder A h_adder

A

图2. 半加器h_adder 电路图及其真值表

二. 方案论证

利用VHDL 语言描述的一位全加器,借助于EDA 工具中的综合器、适配器、时序仿真器和编程器等工具进行相应的处理,最后以FPGA 实现。相对于用74ls138,74ls153芯片,用门电路或基于混沌映射的全加器实现方法,其具有灵活的逻辑结构,能实现各种复杂的逻辑功能,有较好的稳定性,充分体现了模块设计

的要求等优点。

这种方法的原理框图如图所示,它由以下两个模块组成,分别为半加器、或门,最后通过顶层元件例化将两部分连接起来实现全加器的功能。现代EDA 技术的基本特征是采用高级语言描述,

具有系统级仿真和综合能力。而VHDL 语言有强大的行为描述能力和多层次的仿真模拟,程序结构规范,设计效率较高,同时具有支持自顶向下(Top to Down)的设计特点,在顶层进行系统的结构设计,在方框图一级用VHDL 对电路的行为进行描述,并仿真和纠错,然后在系统一级进行验证,最后用逻辑综合优化工具生成具体的门级逻辑电路网表,下载到具体的CPLD 器件中去。由于VHDL 有良好的电路行为描述和系统描述能力,利用VHDL 语言和CPLD 器件设计全

co

a so

b

1

0101

0110001

100co so b a not

xnor2

and2

相关文档
最新文档