论文部分内容阅读
在当前很多高速的实时应用领域中,数据运算速率已经达到了每秒钟十亿次运算甚至更高,而这种苛刻的要求往往超出了现有处理器的运算能力,这样就对处理器的速度以及运算精度提出了更高的要求:而解决此问题的方法之一就是选择一个合适的数值处理系统。微处理器要达到高性能,其浮点处理能力是一个重要的方面。近年来,浮点数在高精度数字计算中被普遍使用,并且随着数字信号处理和图像处理等精度、实时性要求高的需求增长,其应用范围也越来越广。IEEE-754浮点标准是目前使用最广泛的浮点数标准,它规定了符合该标准所需的浮点数的格式、精度、算术操作以及舍入、异常处理等。浮点数可以同时提供大范围和高精度的数据,但它的运算过程十分复杂,有时候无法满足要求快速运算的实时系统。而在对数数值系统(Logarithmic Number System,LNS)中,乘法和除法分别被转换成为加法以及减法运算,开方和幂运算也被分别转化成除法以及乘法运算。这样便可大大简化复杂运算,提高运算效率。所以LNS比较适用于乘除法(或开方以及幂运算)所占比例较大的应用环境中,如:滤波器。除此之外,应用对数数值系统对于降低系统的功耗有着非常明显的作用。
本文首先介绍了国内外相关领域的发展历史和现状,并对浮点数处理单元进行了分析,主要包括浮点加法、浮点乘法、浮点除法以及开平方算法的常用硬件实现方法;然后给出了纯对数数值系统中的相关运算以及两种数值之间的转换方法和具体实现;最后,从速度、精度、功耗等方面对两种数值系统进行了分析比较,从而给出了每种系统适用的场合,并在LNS下具体实现了采用流水线的FIR滤波器。
虽然LNS在某些情况下有明显的优势,但IEEE-754浮点数标准已经得到了广泛的应用。所以,不同数值系统之间的转换成为能否发挥各个系统优势的关键,同时这些转换也提供了对数和指数运算操作。本文给出了目前最有效的转换方法并做了进一步改进,指出了后续研究的重点,以及对数数值系统在特殊运算,如正弦、余弦、反正切等操作中的优势,为相关的设计提供了经验和建议。