{"title":"ERL: an algorithm for fast evaluation of exponential, reciprocal, and logarithmic functions","authors":"F. Gebali, M. El-Kharashi","doi":"10.1109/ICEEC.2004.1374440","DOIUrl":null,"url":null,"abstract":"A fast algorithm (ERL) is proposed for waluating Exponential, Reciprocal, and Logarithmic functions. The algorithm requires two to three iterations to complete using simple operations such as multiply, accumulate, and table lookup. The algorithm is independent of the number format used by the machine. Thus it can be implemented using the IEEE 754 ?oating-point standard or any other special format used by special-purpose processors. The dynamic range of the algorithm is limited only by the dynamic range of the machine on which it is implemented Numerical simulations are performed which veri& the speed and accuracy of the algorithm. I . INTRODUCTION Iterative techniques are used in computer arithmetic for the evaluation of elementary functions using minimal hardware. CORDIC is a prime example of such techniques where it has been used to evaluate trigonometric and hyperbolic functions as well as logarithms and division [l], [2], [3], [43. However, CORDIC is a slow algorithm that suffers fiom limited dynamic range and several authors attempted to remedy that with limited [14]. The main drawbacks of CORDIC are discussed in detail in [14]. Basically CORDIC is an algorithm with slow convergence and limited range. This paper is organized as follows. Section I1 discusses the new algorithm. Section V discusses the main operations that can be performed on an input vector. Section VI1 shows some numerical simulations to verify the algorithm. Section VI11 summarizes the main conclusions. 11. THE ERL ALGORITHM Consider the vector whose end point (X,Y) moves along the curve success PI, ~41, ~61, 171, PI, ~91, [io], [111, [121, [131, X x Y = R 2 (1) Differentiate the above equation Starting from an initial pint (Xo,Yo), we can move to another point (X,Y) on the curve such that Using (2), the corresponding change in Y is given by X = & + A X (3) Y = Yo+AY (4) Choosing A X = a x , we can ?nd AY fiom (2). Thus X and Y are given by x = XO(l+(Y) ( 5 ) Y = Yo(1-a) (6) 111. THE SCALE FACTOR The radius of the vector after the updates is given by R2 = X X = xo x Yo x (1 -2) = Ri x (1-(r2) For R to remain real, LY must lie within the range","PeriodicalId":180043,"journal":{"name":"International Conference on Electrical, Electronic and Computer Engineering, 2004. ICEEC '04.","volume":"22 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Conference on Electrical, Electronic and Computer Engineering, 2004. ICEEC '04.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICEEC.2004.1374440","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
A fast algorithm (ERL) is proposed for waluating Exponential, Reciprocal, and Logarithmic functions. The algorithm requires two to three iterations to complete using simple operations such as multiply, accumulate, and table lookup. The algorithm is independent of the number format used by the machine. Thus it can be implemented using the IEEE 754 ?oating-point standard or any other special format used by special-purpose processors. The dynamic range of the algorithm is limited only by the dynamic range of the machine on which it is implemented Numerical simulations are performed which veri& the speed and accuracy of the algorithm. I . INTRODUCTION Iterative techniques are used in computer arithmetic for the evaluation of elementary functions using minimal hardware. CORDIC is a prime example of such techniques where it has been used to evaluate trigonometric and hyperbolic functions as well as logarithms and division [l], [2], [3], [43. However, CORDIC is a slow algorithm that suffers fiom limited dynamic range and several authors attempted to remedy that with limited [14]. The main drawbacks of CORDIC are discussed in detail in [14]. Basically CORDIC is an algorithm with slow convergence and limited range. This paper is organized as follows. Section I1 discusses the new algorithm. Section V discusses the main operations that can be performed on an input vector. Section VI1 shows some numerical simulations to verify the algorithm. Section VI11 summarizes the main conclusions. 11. THE ERL ALGORITHM Consider the vector whose end point (X,Y) moves along the curve success PI, ~41, ~61, 171, PI, ~91, [io], [111, [121, [131, X x Y = R 2 (1) Differentiate the above equation Starting from an initial pint (Xo,Yo), we can move to another point (X,Y) on the curve such that Using (2), the corresponding change in Y is given by X = & + A X (3) Y = Yo+AY (4) Choosing A X = a x , we can ?nd AY fiom (2). Thus X and Y are given by x = XO(l+(Y) ( 5 ) Y = Yo(1-a) (6) 111. THE SCALE FACTOR The radius of the vector after the updates is given by R2 = X X = xo x Yo x (1 -2) = Ri x (1-(r2) For R to remain real, LY must lie within the range
提出了一种快速的指数函数、倒数函数和对数函数求值算法。使用乘法、累加和表查找等简单操作,该算法需要两到三次迭代才能完成。该算法与机器使用的数字格式无关。因此,它可以使用IEEE 754点标准或专用处理器使用的任何其他特殊格式来实现。该算法的动态范围仅受实现该算法的机器的动态范围的限制,并进行了数值仿真,验证了算法的速度和精度。我。在计算机算法中,迭代技术被用于用最小的硬件计算初等函数。CORDIC是此类技术的主要示例,它已被用于评估三角函数和双曲函数以及对数和除法[1],[2],[3],[43]。然而,CORDIC是一个缓慢的算法,受到动态范围有限的影响,一些作者试图用有限的[14]来补救这个问题。在b[14]中详细讨论了CORDIC的主要缺点。CORDIC基本上是一种收敛速度慢、范围有限的算法。本文组织如下。第11节讨论了新算法。第V节讨论了可对输入向量执行的主要操作。VI1部分给出了一些数值模拟来验证该算法。VI11部分总结了主要结论。11. 话务量算法考虑向量的终点(X, Y)沿着曲线移动成功π,~ 41,π,91年~ 171年~ 61年(io)[111年[121年[131年X X Y = R 2(1)区分上述方程从最初的品脱(Xo,哟),我们可以搬到另一个点(X, Y)曲线,使用(2),相应的变化量是由X = & + X (3) Y =你+ AY(4)选择一个X = X,我们可以? nd AY fiom(2),因此X和Y是由X = Xo (l + (Y) (5) Y =哟(1 A) 111(6)。更新后向量的半径由R2 = X X = xo X Yo X (1- 2) = Ri X (1-(R2)给出,为了R保持实数,LY必须在范围内