PK engine is a cryptographic hardware
block designed to perform public-key cryptographic operations. It has three major
components:
- The Modulo Arithmetic Unit (MAU) core performs multi-precision modular
arithmetic.
- The MAU Command Generator (MCG) core sends sequences of commands to the MAU. For
example, an elliptic curve scalar multiply operation requires a sequence of
several thousand arithmetic computations.
- The shell interfaces the rest of the system to an external bus.
This document specifies the behavior
of these units. High level block diagram of PK engine is shown in Figure 7-115.