In 1971, J.S. Walther generalized and unified J.E. Volder's coordinate rotation (CORDIC) algorithms. Using Walther's algorithms a few commonly used functions such as divide, multiply-and-accumulate, arctan, plane rotation, arctanh, hyperbolic rotation can be implemented on the same simple hardware (shifters and adders, elementary controller) and computed in approximately the same time. Can other useful functions be computed on the same hardware by further generalizing these algorithms?
Our positive answer lies in a deeper understanding of Walther's unification: the key to the CORDIC algorithms is that all of them effect the multiplication of a vector by the exponential of a 2 X 2 matrix. The importance of this observation is readily demonstrated as it easily yields the convergence conditions for the CORDIC algorithms and an efficient way of extending the domain of convergence for the hyperbolic functions. A correspondence may be established between elementary functions such as square-root, √(x2+y) , inverse square-root or cubic root and exponentials of simple matrices. Whenever such a correspondence is found, a CORDIC-like algorithm for computing the function can be synthesized in a very straightforward manner. The algorithms thus derived have a simple structure and exhibit uniform convergence inside an adjustable, precisely defined, domain.