邮电大学毕业设计(论文)题目:32位低功耗浮点乘法器设计学院:电子工程学院专业:集成电路设计与集成设计班级:电路1303学生:白进宝学号:05136073导师:邢立冬职称:高级工程师起止时间:2017年3月6日至2017年6月11日毕业设计(论文)声明书本人所提交的毕业论文《32位低功耗浮点乘法器设计》是本人在指导教师指导下独立研究、写作的成果,论文中所引用他人的文献、数据、图件、资料均已明确标注;对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式注明并表示感。
本人完全理解《邮电大学本科毕业设计(论文)管理办法》的各项规定并自愿遵守。
本人深知本声明书的法律责任,违规后果由本人承担。
论文作者签名:日期:年月日邮电大学本科毕业设计(论文)开题报告邮电大学毕业设计(论文)成绩评定表摘要乘法器是高性能数字信号处理芯片的关键部件,也是实时、高速数字信号处理器的核心。
乘法单元具有面积大、延时长、结构复杂的特点,如何设计出高速、低功耗、结构简单的乘法单元是近些年来的一大难题。
本文比较各种乘法器设计的算法与结构,分析它们的面积、速度与功耗。
最终找出最优的设计方案,完成32位浮点乘法器的电路设计。
本文首先介绍IEEE-754浮点数标准和浮点操作,对IEEE-754浮点运算标准的浮点表示格式、精度、围、规格化进行分析,并对决定乘法器性能的实现算法与实现结构进行深入研究。
其中实现浮点乘法的重点是实现整数的乘法。
其主要实现途径有移位相加结构和华莱士树型结构。
移位相加乘法结构简单,但是延时较长;华莱士树型乘法延时较短,但是结构比较复杂。
为了进一步提高运算速度,将乘法器改为流水线结构,达到时间上的并行。
最后应用低功耗设计方法对电路进行优化设计以降低系统功耗。
关键词:IEEE-754;乘法器;移位相加;华莱士树;流水线;低功耗ABSTRACTMultiplier is the key component of high performance digital signal processing chip, and also the core of real-time and high-speed digital signal processor. The multiplication unit has the characteristics of large area, long delay and complex structure. How to design a multiplication unit with high speed, low power consumption and simple structure is a difficult problem in recent years.In this paper, the algorithms and structures of various multipliers are compared, and their area, speed and power consumption are analyzed. Finally, the optimal design scheme is found, and the circuit design of 32 bit floating point multiplier is completed.This paper first introduces the IEEE-754 floating point standard and floating point operations on floating-point IEEE-754 floating-point standard expression analysis format, accuracy, scope, standard, and implementation of the decision performance of multiplier algorithm in-depth research and implementation of structure. Among them, the key point of floating point multiplication is to achieve the multiplication of integers. The main implementation methods include shift adding structure and Wallace tree structure. The shift addition and multiplication structure is simple, but the time delay is long; the Wallace tree type multiplication delay is shorter, but the structure is complex. In order to further improve the speed of operation, the multiplier is changed into pipelined structure to achieve parallel time. Finally, the low power design method is applied to optimize the circuit to reduce system power consumption.Key words: IEEE-754;Multiplier;Shift addition;Wallace tree;Assembly line;low power consumption目录第一章绪论 (1)1.1 研究意义 (1)1.2 研究的主要容 (1)1.3 论文结构安排 (2)第二章设计原理概述 (3)2.1 浮点数格式 (3)2.2 IEEE-754浮点数标准 (4)2.3 浮点乘法运算原理 (6)第三章浮点乘法器电路设计 (9)3.1 无符号数一位乘法 (9)3.2 超前进位加法器设计 (10)3.3 移位相加乘法结构 (12)3.4 华莱士树结构 (13)3.5 尾数的舍入与规格化 (21)3.6 阶码的处理 (23)3.7 符号位处理 (24)3.8 浮点乘法器总体结构 (25)3.9 流水线结构 (25)3.9.1 流水线技术简介 (25)3.9.2 流水线浮点乘法器设计 (26)3.10 低功耗设计 (26)3.10.1 低功耗设计背景 (26)3.10.2 低功耗设计方法 (27)3.10.3 浮点乘法器的低功耗设计 (29)3.11 本章小结 (30)第四章仿真验证与逻辑综合 (32)4.1 功能仿真 (32)4.1.1 尾数运算功能仿真 (32)4.1.2 浮点乘法器功能仿真 (33)4.1.3 流水线结构浮点乘法器功能仿真 (34)4.2 浮点乘法器逻辑综合 (35)4.3 浮点乘法器时序仿真 (36)4.4 功耗分析 (37)结束语 (39)致 (40)参考文献 (41)附录 (42)第一章绪论1.1 研究意义进入21世纪以,来大数据、互联网+、人工智能等新兴技术正在逐步进入到我们的生活当中。
集成电路产业是电子信息产业的核心对我国的经济政治和国防安全有着重大影响[1]。
为此我国把集成电路产业定为重点战略产业,制定了一系列的相关政策确保我国经济建和国防安全。
目前包括微处理器在的集成电路的发展一直严格遵循摩尔定律。
处理器中的浮点乘法单元是整个电路设计中需要着重考虑的对象。
在某些领域中需要很高精度的浮点运算,而功耗大、面积大是高精度浮点运算部件的固有特性[2]。
因此浮点乘法器性能的优劣关乎到信号处理的能力。
正因为高性能的浮点乘法器的广泛应用,故近几十年来其一直是研究的热点。
1.2 研究的主要容本论文的主要的研究容是设计出性能符合要求的32位低功耗浮点乘法器,要求在高可靠性的基础上,工作速度达到50MHz。
依据性能的要求,乘法器每次乘法运算的时间应在20ns以。
首先介绍浮点数标准及其运算,深入研究32位低功耗浮点乘法器设计当中的常见的电路结构和算法确定乘法单元的结构。
浮点乘法器的设计重点是尾数乘法器的设计,其性能优劣决定了整个设计是否能够达到要求[3]。
对比移位相乘结构和华莱士树结构的优劣,深入研究Wallace树形结构,在Wallace树形结构的基础上改进为流水线浮点乘法器。
由于近些年来移动设备的普及,本次浮点乘法器的设计适当加入了低功耗的容。
通过功能仿真来验证设计的原理是否正确。
再通过逻辑综合和时序仿真看其性能是否达到要求。
在满足性能的要求上,选取合理的设计结构和器件。
1.3 论文结构安排第一章绪论。
介绍论文研究的意义、研究的主要容、论文结构安排。
第二章设计原理概述。
主要介绍浮点数的表示格式,浮点数的规格化,IEEE-754浮点数标准,简要介绍浮点乘法运算的基本原理。
第三章浮点乘法器电路设计。
对实现尾数相乘运算的两种结构进行比较分析。
移位相加乘法结构是最简单的乘法算法结构,结构简单,便于设计,但是延时较长,只能在工作频率较低的系统中工作;华莱士树乘法结构利用并行计算的思想,能够极大的降低延时,但同时带来的是面积与功耗的增加。
最后介绍尾数的舍入与规格化、阶码的处理和符号位处理。
将浮点乘法器改为流水线结构进一步提高运算速度。
在功能正确的基础上适当加入低功耗设计容把系统的功耗降低。
第四章仿真验证与逻辑综合。
通过功能仿真、逻辑综合和时序仿真观察运算结果,分析性能是否达到要求。
第五章结论。
总结32位低功耗浮点乘法器的完成情况,并分析本次设计存在的问题为进一步研究提供方向。
第二章设计原理概述2.1 浮点数格式计算机中的浮点数是用一个定点的尾数再乘以一个基为2的阶数得到。
计算机部用定点数表示数值数据的围比浮点数小很多。
例如,对于n位带符号整数,其表示围为-2n-1~(2 n-1-1),运算结果很容易溢出,此外,用定点数也不能表示出大量的带有小数点的实数。
因此,计算机部会专门定义浮点数格式用以表示更大围的实数。
对于任意一个实数X,都可以表示为:(2-1) 其中,S取值为0或1,用来决定X的正负,通常情况下0表示正数,1表示负数;M是定点小数用来表示实数X的尾数;E是一个二进制定点整数,称为X的阶码或指数;R是基数,可以约定为2、4、8等。
要确定一个实数的值,只需要在约定的基数R下,确定符号S、尾数M和阶码E就可以了。
因此,浮点数格式只需要规定S、M和E各自所用的位数、编码方式和所在的位置,而基数R 与定点小数的位置一样,是默认的,不需要明显的表示出来。