8位加法器的设计

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

实验二 8位加法器设计

一、实验目的

熟悉利用Quartus Ⅱ的图形编辑输入法设计简单组合电路,掌握层次化设计方法,并通过8位全加器的设计,进一步熟悉利用EDA 软件进行数字系统设计的流程。

二、实验仪器与器材

计算机1台,GW48-PK2S 实验箱1台,Quartus Ⅱ6.0 1套。

三、实验内容

1. 基本命题

利用图形输入法设计一个一位半加器和全加器,再利用级联方法构成8位加法器。

2. 扩展命题

利用文本输入法设计4位并行进位加法器,再利用层次设计方法构成8位加法器。通过时序仿真,比较两种加法器的性能。

四、设计思路

加法器是数字系统中的基本逻辑器件。例如,为了节省逻辑资源,减法器和硬件乘法器都可由加法器来构成。多位加法器的设计十分耗费硬件资源,因此在实际的设计和相关系统的开发中,需要注意资源的利用率和进位速度两方面的问题。对此,首先应选择较适合组合逻辑设计的器件作为最终的目标器件,如CPLD ;其次在加法器的逻辑结构设计上,在芯片资源的利用率和加法器的速度两方面权衡得失,探寻最佳选择,即选择最佳的并行进位最小的加法单元的宽度。显然这种选择与目标器件的时延特性有直接关系。

多位加法器的构成有两种方式:即并行进位和串行进位方式。串行进位方式的加法器是将全加器级联构成的,它有电路简单,但进位速度较慢的特点。并行进位加法器设有产生并行进位的逻辑电路,加法器的进位仅与输入状态有关,与各级加法器的进位无关,即第 i 位加法器的进位直接由该位的各输入状态决定,其关系式为:

i i i i i i C Y X Y X C ⋅⊕+=+1 (i = 0,1,2,3…)

当i = 3时,代入上述表达式可得:

00112233001122331122332233334C Y X Y X Y X Y X Y X Y X Y X Y X Y X Y X Y X Y X Y X Y X C ⋅⊕⋅⊕⋅⊕⋅⊕+⋅⊕⋅⊕⋅⊕+⋅⊕⋅⊕+⋅⊕+= 4位加法器的各位和数表达式如下:

00000100001111121

1112222232

2223333343

333C Y X Y X C C Y X S C Y X Y X C C Y X S C Y X Y X C C Y X S C Y X Y X C C Y X S ⋅⊕+=⊕⊕=⋅⊕+=⊕⊕=⋅⊕+=⊕⊕=⋅⊕+=⊕⊕=

用门电路实现的4位并行加法器电路如图2-1所示。

图2-1 4位并行加法器电路

显然,随着位数的增加,并行加法进位电路将越来越复杂,相同位数的并行加法器与串行加法器的资源占用差距也将快速增大,一般情况下,并行进位加法器通常比串行级联加法器占用更多的芯片资源。由于4位二进制并行加法器和串行级联加法器占用几乎相同的芯片资源。因此,多位数加法器由4位二进制并行加法器级联构成是较好的折中选择,图2-2所示为该电路结构的8位加法器。

图2-2 8位加法器硬件结构图

提示:设计步骤一般包括如下十个方面,具体可参考实验一的设计思路,

下面提示有助于解决实验过程中出现的问题。

(1)首先应该建立好工作库文件夹并取名adder,以作设计工程项目的工作库。

(2)设计电路原理图。打开Quartus II,选择菜单File→New。在New窗口中的Device Design Files中选择编译文件的语言类型“Block Diagram/Schematic File”如图2-3所示,单击OK后出现图形编辑界面如图2-4所示。然后在该图形编辑窗口中绘制设计电路图。

图2-3 选择图形编辑类型

图2-3 Quartus II的图形编辑界面

(3)将当前设计取名为hadder并设定为工程。设定后可以看见Quartus II 主窗左上方的工程项目路径指向。这个路径指向很重要!

(4)编译和排错

注意:如果设计文件含有错误,在编译时会出现出错信息指示。有时尽管只有1、2个小错,但却会出现大量的出错信息,确定错误所在的最好办法是找到最上一排错误信息指示,用鼠标左键双击,就能发现在出现文本编译窗中闪动的光标附近找到错误所在。纠正后再次编译,直至排除所有错误。

还需要注意:闪动的光标指示错误所在只是相对的,错误一般在上方。VHDL 文本编辑中还可能出现许多其它错误,如:

1)错将设计文件存入了根目录,并将其设定成工程,由于没有了工作库,报错信息如下:Error :Can't open VHDL "WORK"

2)错将设计文件的后缀写成.tdf而非.vhd,报错信息如下:Error :Line1,File e:\muxfile\mux21a.tdf: TDF syntax error: ...

3)未将设计文件名存为其实体名,如错写为muxa.vhd,报错信息如下:Error :Line1,...VHDL Design File "muxa.vhd" must contain ...

(5)时序仿真。具体步骤包括:建立波形文件、输入信号节点、设置波形参量、设定仿真时间宽度、加上输入信号、波形文件存盘、运行仿真器、观察分析波形。

注意:仿真波形文件的建立,一定要十分注意仿真时间区域的设定,以及时钟信号的周期设置,否则即使设计正确也无法获得正确的仿真结果。设定比较合理的仿真时间区域和信号频率,即仿真时间区域不能太小,仿真频率不能太高,即信号周期不能小到与器件的延时相比拟。

还可以进一步了解信号的延时情况。图2-4左侧的竖线是测试参考线,它与鼠标箭头间的时间差显示在窗口上方的Interval小窗中,使用该方法可以测量任意两点的时间差,由图可见输入与输出波形间有一个小的延时量。

图2-4 仿真波形图

(6)建立电路模块默认符号

在Quartus II环境下,执行“File”菜单下的“Create/Update”选项中的“Create Symbol Files for Current File”命令,将通过编译的设计文件产生一个(Quartus II Block Symbol File)模块符号文件,并保存在工程目录中。该模块符

相关文档
最新文档