基于FPGA的快速加法器的设计和实现.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA 的快速加法器的设计与实现 1 2 赵亚威 吴海波 (1.沈阳理工大学,辽宁 沈阳 110045; 2.东北大学,辽宁 沈阳 110004) E-mail: hb_0427@126.com 摘要:加法器是算术运算的基本单元,可以有多种实现结构,采 用不同的结构实现其耗用的资源和运算的速度也各不相同。本文研究 了基于FPGA 的常用加法器的结构及其设计方法,对各自性能加以分 析比较,在此基础上采用流水线结构设计了一个 8bit 的加法器。并 在Xilinx 公司的ISE 5.2i 软件环境下, 采用VHDL 和Verilog HDL 硬件描述语言进行了设计实现并使用 Modelsim 进行仿真验证,在此 基础上对其性能进行了比较分析。实验结果表明流水线加法器的速度 高于其它结构实现的加法器。 关键词:加法器、进位、FPGA、Verilog HDL、流水线 1. 引言 算术逻辑单元(ALU) 不仅能完成算术运算也能完成逻辑运算,是微处理器芯片中的一个 十分重要的部件[3]。但是所有基本算术运算(加、减、乘、除)最终都可归结为加法运算, 所以加法运算的实现显得尤为重要。对于多位加法操作来说,因为存在进位问题,使得某一位 计算结果的得出与所有低于它的位都相关。为了减少进位传输所耗费的时间,提高计算速度, 人们设计了多种类型的加法器, 提出了很多实现加法器的设计方法,如行波进位加法器、快 速行波进位加法器、超前进位加法器等。以上提到的都是并行加法器,此外还有串行加法器, 其具有占用资源少、设计灵活等优点。 2. 常用加法器设计方法的分析比较 并行加法器中全加器的位数与操作数的位数相同,可同时对操作数的各位相加。影响运 算速度的主要是传递进位信号的逻辑线路(即进位链)。接下来就上面提到的几种并行加法器 加以分析比较。 2.1 行波进位加法器 N位行波进位加法器是将N个一位全加器串联进行两个N位数的相加,进位是采用串行进 [3] 位的方法来实现的,即本级的C 作为下一级的C 参与下一位的加法运算 。这种加法器结构 out in 简单,但速度较慢,从其逻辑表达式: Sum = A ⊕B ⊕C ,C =A B + C (A ⊕B )可以看 i i i i i + 1 i i i i i - 1 - 出,串行进位链的总延迟时间与字长成正比,字长越长,延迟时间就越长。假设每一级全加器 的延迟时间为dt ,则N位加法器的进位总延迟为Ndt。所以高性能设计中一般不用这种结构的 加法器。 2.2 快速行波进位加法器 从Xilinx公司的Virtex-E器件的结构可以发现,虽然行波进位加法器由于速度太慢一般 不被IC设计采用,但是在这种可编程逻辑器件上,行波进位加法器由于结构最为工整,占用 资源少,且速度能够满足较多应用的需求,是最适宜实现的结构形式[4]。每一个Virtex-E的 CLB包含两个SLICE,每个SLICE由两个LC构成,在每个SLICE中都有专用进位逻辑,从而为高 速算术功能提供快速的算术进位能力[2]。算术逻辑中包括一个异或门,使每个LC单元可以实 现一个一位全加器。与传统的全加器相比,它在结构上有一些适当的调整,这样一方面缩短 了进位传递的时间 (约为组合逻辑输出的10%),另一方面又可以在低级进位到达时,更快 速地输出该位的和运算结果。此外,在FPGA内部同一列的两个SLICE间,还专门为

文档评论(0)

东方888 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档