|
Message
From: Steven R. McQueen<srmcqueen@m...>
Date: Fri Nov 25 19:05:18 CET 2005
Subject: [oc] Exponential
For positive integer exponents, and very large numbers, the BasicRSA project implements a square-and-multiply algorithm for modular exponentiation. It uses two copies of a shift-and-add multiplier, one to do modular squares, and one to do modular multiplication of dissimilar numbers. You have to do a square for every bit position in the exponent, and multiply the square by the result of the multiplication (hint, start with 1) every time the exponent bit position is 1.
Testing can be a real pain, since you have to calculate all the exponents used in your test set and compare the correct results with whatever your core produces. I don't know a shortcut for that.
-- Steven R. McQueen
Phone: (951) 809-3232 Email: srmcqueen@m... Web: www.mcqueentech.com
On Fri, 2005-11-25 at 17:23 +0100, oceanfrea@h... wrote: > Hi, I would like to ask if anyone implement exponential calculation in > vhdl and how to go about doing the algorithm. Most importantly, how to > test the algorithm if it is working properly. Thanks. > _______________________________________________ > http://www.opencores.org/mailman/listinfo/cores
|
 |