A digit serial algorithm for the integer power operation

We introduce a right-to-left digit serial algorithm for the integer power operation xy where x and y are positive integers. For n-bit words the algorithm utilizes o(n) additions and does not require use of a multiplier. We describe a hardware implementation and evaluate the effectiveness employing a Synopsys tool set with a standard cell implementation. Out digit serial algorithm compares favorably with a popular iterative square and multiply algorithm implemented with the same tool set.

[1]  A. Fit-Florea,et al.  A digit-serial algorithm for the discrete logarithm modulo 2/sup k/ , 2004, Proceedings. 15th IEEE International Conference on Application-Specific Systems, Architectures and Processors, 2004..

[2]  Mitchell A. Thornton,et al.  Addition-based exponentiation modulo 2k , 2005 .

[3]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[4]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[5]  Mitchell A. Thornton,et al.  Additive bit-serial algorithm for discrete logarithm modulo 2k , 2005 .

[6]  James E. Stine,et al.  A framework for high-level synthesis of system on chip designs , 2005, 2005 IEEE International Conference on Microelectronic Systems Education (MSE'05).

[7]  D. W. Matula,et al.  Addition-based exponentiation modulo 2 , 2001 .

[8]  Alex Fit-Florea,et al.  A Digit-Serial Algorithm for the Discrete Logarithm Modulo 2k , 2004, ASAP.

[9]  Richard I. Tanaka,et al.  Residue arithmetic and its applications to computer technology , 1967 .

[10]  Behrooz Parhami,et al.  Computer arithmetic - algorithms and hardware designs , 1999 .

[11]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[12]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[13]  Donald E. Knuth The Art of Computer Programming 2 / Seminumerical Algorithms , 1971 .

[14]  Mitchell A. Thornton,et al.  Table lookup structures for multiplicative inverses modulo 2/sup k/ , 2005, 17th IEEE Symposium on Computer Arithmetic (ARITH'05).