论文部分内容阅读
随着时代的发展,在多媒体领域和科学计算领域,当代处理器的一个重要特征就是,在中央处理器(CPU)中将把浮点运算的部件作为核心运算部件直接集成于其中。在信号处理以及图像处理以及语音识别等一些应用中,人们对高性能浮点处理单元(Floating Point Unit,简称FPU)的需要就更加迫切了,总之就是在越来越多的领域中,尤其是一些对于数字处理有着高速实时要求的领域,浮点数的运算发挥出越来越重要的作用,因而浮点运算单元成为中央处理器设计中的决定性能的关键部件之一。
根据Oberman的统计,浮点指令中使用最频繁的是浮点加法指令,浮点加法运算占用了浮点运算的55%以上。浮点加法、减法、转换和传送都最终都可以转换成为浮点加法运算完成,由于浮点加法的使用频率最高同时设计难度最大,所以浮点加法器又成为浮点运算单元(FPU)中最为关键的部件,它的性能好坏将直接影响FPU的性能进而影响决定了CPU的浮点运算能力。因此,设计高速的浮点加法器更是重中之重。
本文的主要目的就是关于浮点加法器的优化设计,首先介绍了国内外FPU发展历史和现状研究,并对浮点数处理器的应用进行了讨论,接着对于浮点数系统以及IEEE-754标准,以及IEEE-754所定义的特殊值,异常和它的舍入模式做了相应的介绍。从第三章开始,采用自顶向下的设计方法,从传统的5周期浮点加法算法入手,对于其步骤分析进行改进,引入了Two-Path算法。这样就构建了浮点算法中的基本思路以及各个基本组件构成,第四章则分别对于浮点加法器中的各个组件设计进行详细的分析以及优化,比如前导零的电路,错位并行电路设计思想的引入,复合加法器的优化设计,以及桶形移位器的采用和舍入合并技术的引进。经过上述的优化设计后,浮点加法器的加法运算从传统的5周期变成了目前所需要的3周期,这极大地提高了加法器的速度。
设计完成后,对于其进行仿真验证,因为浮点加法器2条路径分别是由若干个小的功能模块组成,测试时按照自下而上、先小后大、逐级向上的思想进行仿真测试。针对FAR路径和CLOSE路径执行数据的特点分别编写测试激励,在遍历测试了各小部件且保证正确性后,再进一步验证各小部件间的逻辑连接正确性,在Modelsim环境下对采用该方法的双精度浮点运算的前导零预测电路进行代码覆盖率为100%的验证,结果表明该算法正确。同时对于其时延以及所占面积做了进一步的分析。
最后对于本设计以及其中的研究重点做了总结,并且对于其中的不足和将要进行的改进提出了展望。