5 random number generator (rng), 5 memory map/register definition, Random number generator (rng) -8 – Freescale Semiconductor MCF5480 User Manual
Page 610: Memory map/register definition -8

MCF548x Reference Manual, Rev. 3
22-8
Freescale Semiconductor
22.4.4.5
Random Number Generator (RNG)
The RNG is a digital integrated circuit capable of generating 32-bit random numbers. It is designed to
comply with FIPS 140-1 standards for randomness and non-determinism.
Because many cryptographic algorithms use random numbers as a source for generating a secret value (a
nonce), it is desirable to have a private RNG for use by the SEC. The anonymity of each random number
must be maintained, as well as the unpredictablility of the next random number. The FIPS-140 ‘common
criteria’ compliant private RNG allows the system to develop random challenges or random secret keys.
The secret key can thus remain hidden from even the high-level application code, providing an added
measure of physical security.
The random number generator is responsible for creating an unpredictable sequence of bits and assembling
a string of those bits into a FIFO.
22.5
Memory Map/Register Definition
This section contains the SEC address map. Many of the registers are defined as 64-bit wide, but can be
addressed as two longword registers. For example, bits 63–32 of the EU assignment control register are
accessed at an MBAR offset of 0x21000. Bits 31–0 are accessed at an MBAR offset of 0x21004.
shows the base address map for the modules within the SEC.
provides the precise address map, including all registers in the execution units. The last column
of the table provides a cross reference to the section where the register is described in detail.
Table 22-2. SEC Module Base Address Map
MBAR Offset
SEC Module
Description
Type
0x20000–0x200FF
—
Reserved
—
0x21000–0x21FFF
Controller
Arbiter/Controller Control register space
Resource Control
0x22000–0x22FFF
Channel_1
Crypto-channel 1
Data Control
0x23000–0x23FFF
Channel_2
Crypto-channel 2
Data Control
0x24000–0x26FFF
—
Reserved
—
0x28000–0x28FFF
AFEU
ArcFour Execution Unit
Crypto EU
0x2A000–0x2AFFF
DEU
DES Execution Unit
Crypto EU
0x2C000–0x2CFFF
MDEU
Message Digest Execution Unit
Crypto EU
0x2E000–0x2EFFF
RNG
Random Number Generator
Crypto EU
0x32000–0x32FFF
AESU
AES Execution Unit
Crypto EU
Table 22-3. SEC Register Map
Register
Offset
Mnemonic
Name
Page
Controller Registers
0x21000
EUACRH
EU Assignment Control Register High
0x21004
EUACRL
EU Assignment Control Register Low