[低功耗乘法器.docVIP

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[低功耗乘法器

16×16位低功耗移位相加乘法器设计 目录 摘要 1 Abstract 2 第一章 乘法器研究的背景与意义 2 1.1乘法器的发展现状 2 1.1.1国内乘法器现状 3 1.1.2国外乘法器现状 3 1.2乘法器概述 4 1.3乘运算 4 1.4乘法器结构 5 1.5乘法器端口定义 6 第二章 移位相加乘法器设计的基本原理 7 2.1.1 移位相加算法 7 2.1.2 乘法器设计原理 8 2.2移位相加乘法器原理 9 第三章 16×16位移位相加乘法器设计与仿真 10 3.1 16位移位相加乘法器的设计 10 3.2 16位移位相加乘法器Verilog文件设计 10 3.3 16×16位移位相加乘法器Modelsim仿真 12 3.3.1 16×16位移位相加乘法器经典数组运算结果 13 3.3.2 16×16位移位相加乘法器一般情况运算结果 15 第四章 16×16位移位相加乘法器Verilog设计综合 16 4.1 RTL级概念 16 4.2 RTL级综合结果与分析 18 4.3 16位移位相加乘法器电路图 20 结论 24 第一章 乘法器研究的背景与意义 数字信号处理中需要频繁进行大数据量的乘法运算。乘法器作为数字信号处理器的重要部件,它的速度直接决定了整个处理器的性能。本课题采用verilog HDL设计了一个16位移位相加乘法器。首先介绍了移位相加乘法器的算法以及比较移位相加乘法器,Booth乘法器,Wallace Tree乘法器各自的特点。介绍了本课题在综合时需用到的Design Compiler(DC)综合工具。随后提出了自己的乘法器设计架构设计了一个16位移位相加乘法器。并用Design Compiler(DC)进行了优化。所设计的乘法器是16×16位,基于Altera公司的Modelsim平台上用Verilog_HDL软件进行功能仿真,验证了功能正确,达到了预期的目标。 微处理器的发展随着集成电路的迅猛发展而日新月异。在微处理器芯片中乘法器是进行数字信号处理的核心同时也是微处理器中进行数据处理的关键部件,它已经是现代计算机必不可少的一部分。乘法器的算法也有很多种,例如移位相加算法、布斯(Booth)算法、华莱士树(Wallace Tree)算法等。其中移位相加算法是乘法器最基础的算法,其它的算法都是在它的基础上为了压缩和优化这种算法延伸出来的算法,目的是提高乘法器的运算速度以及实现更多的乘法器功能。虽然不断有关于32位、64位乘法器的研究出现, 但由于大量的媒体信号处理只需16位运算就能胜任, 因此对16位乘法器的研究仍有着相当的应用价值。 1.1乘法器的发展现状 过去的十年中,研究者扩展了Booth编码算法的空间,提高了乘法器的性能;改进了部分积压缩技术,使乘法器结构更加规则;以传输管逻辑、多路选择器和动态技术为基础的各种电路实现方法也持续刷新高性能乘法器的实现记录;与此同时,与物理实现紧密相关的乘法器拓扑结构的研究也硕果累累。但不断提高的高性能运算需求使得高性能乘法器的设计和实现仍然是当前的热门话题。 1.1.1国内乘法器现状 乘法器的设计与应用在国内研究领域也取得了很好的成绩,1993年中科院声学研究所应用于18位乘法器,实现工作频率38MHZ.。 。于是乘法运算定义如下: 执行一个乘法运算最简单的方法是采用一个两输入的加法器。对于M和N位宽的输入,乘法采用一个N位加法器时需要M个周期。这个乘法的移位相加算法把M个部分积(partial product)加在一起。每一个部分积是通过将被乘数与乘数的一位相乘(这本质上是一个“与”操作),然后将结果移位到这个乘数的位置得到的。 实现乘法的一个更快的办法是采用类似于手工计算乘法的方法。所有的部分积同时产生并组成一个列阵。运用多操作数相加来计算最终的积。这一方法如图所示。这一组操作可以直接映射到硬件。所形成的结构称为阵列乘法器(array multiplier),它结合下面三个功能:产生部分积、累加部分积和最终相加。 二进制乘法的例子 1.4乘法器结构 乘法器的结构种类很多,在此我只介绍一种乘法器结构供接下来设计移位相加乘法器结构的设计做参考。 浮点数包括尾数和指数两部分,尾数部分进行的是乘法运算,指数部分进行的是加法运算,并依据尾数运算结果进行指数调整。 图2-1 乘法器结构 尾数处理部分主要进行尾数扩展和一些数据正负的判断以及负数的生成,以备在进行Booth编码的时候使用。部分积产生采用修正的Booth算法产生6个部分积,然后采用3:2和4:2压缩器将结构压缩为两个,高速相加得到结果。之后通过符号修正、尾数舍入、规格化等操作对指数进行调整即可完成乘法功能。

文档评论(0)

laideman + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档