7-10
MPC180E Security Processor User’s Manual
PRELIMINARY—SUBJECT TO CHANGE WITHOUT NOTICE
ECC Routines
PKEU asserts the IRQ signal when it is ready to accept more data. This tells the host
processor to read PKSR to see what was set. If the E_RDY bit is set, the host processor
knows it must provide the next word of k - this data is written into the EXP(k) register one
8-bit word at a time. If this interrupt bit is masked, then it must poll the status register to
determine when to provide the next word of k. The host should not look for the assertion of
E_RDY until after the routine (i.e. PKCR[GO] bit). Any data written to EXP(K) prior to
this will be ignored.
Pin IRDY_B also is used to signify when PKEU is ready for the next 32 bit word of EXP(k).
IRDY_B is active (low) whenever E_RDY bit in the status register is active (high).
The point multiplication is optimized to efficiently produce results for systems that work in
the projective coordinate scheme but can accelerate affine schemes as well. The host
processor selects the scheme via the PKCR XYZ bit.
For affine coordinate systems (CR [XYZ]= 0):
The results of the calculation are returned to the A and B storage registers. Note that these
values correspond to the projective coordinate values X, Y, Z, Z
2
, and Z
3
. X, Y, and Z are in
the Montgomery residue system. In order to put the projective coordinates into their affine
form, the following equations which define their relationships must be calculated:
x = X/Z
2
;
y = Y/Z
3
;
Because the PKEU does not support the inverse function, it is the responsibility of the host
processor to find (Z
2
)
-1
and (Z
3
)
-1
by using any number of available modulo-n inversion
techniques. Once this is accomplished, the host may then provide these values back to the
PKEU to perform the final two field (modular) multiplications to find x and y. It is advisable
that the user perform these multiplications in the PKEU to remove the values from the
Montgomery residue system.
For projective coordinate systems (Control Register Bit XYZ = 1):
The results of the calculation are returned to the B memory. Note that these values
correspond to the projective coordinate values X, Y, and Z and are no longer in the
Montgomery residue system. The host may take these results as the complete point multiply
(including the exit from the Montgomery residue system) (e.g. (XR)(Z
2
)
-1
R
-1
modN = X).
The following restrictions apply to the point multiply:
•
The value of the k vector must be greater than one for this function to work properly.
•
The point multiply operates with a minimum of five digits (Modsize = 4).
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
.
..
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
.
..