DigitalDNA, PowerQUICC, and PowerQUICC II are trademarks of Motorola, Inc.
The PowerPC name, the PowerPC logotype, and PowerPC 603e are trademarks of International Business Machines Corporation
used by Motorola under license from International Business Machines Corporation.
2
I
C is a registered trademark of Philips Semiconductors
This document contains information on a new product under development. Motorola reserves the right to change or discontinue this
product without notice. Information in this document is provided solely to enable system and software implementers to use Motorola
security processors. There are no express or implied copyright licenses granted hereunder to design or fabricate Motorola security
processors integrated circuits or integrated circuits based on the information in this document.
Motorola reserves the right to make changes without further notice to any products herein. Motorola makes no warranty,
representation or guarantee regarding the suitability of its products for any particular purpose, nor does Motorola assume any liability
arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation
consequential or incidental damages. “Typical” parameters can and do vary in different applications. All operating parameters,
including “Typicals” must be validated for each customer application by customer’s technical experts. Motorola does not convey any
license under its patent rights nor the rights of others. Motorola products are not designed, intended, or authorized for use as
components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any
other application in which the failure of the Motorola product could create a situation where personal injury or death may occur.
Should Buyer purchase or use Motorola products for any such unintended or unauthorized application, Buyer shall indemnify and
hold Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and
expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such
unintended or unauthorized use, even if such claim alleges that Motorola was negligent regarding the design or manufacture of the
part. Motorola and are registered trademarks of Motorola, Inc. Motorola, Inc. is an Equal Opportunity/Affirmative Action Employer.
Motorola Literature Distribution Centers:
USA/EUROPE: Motorola Literature Distribution; P.O. Box 5405; Denver, Colorado 80217; Tel.: 1-800-441-2447 or 1-303-675-2140/
JAPAN: Nippon Motorola Ltd SPD, Strategic Planning Office 4-32-1, Nishi-Gotanda Shinagawa-ku, Tokyo 141, Japan Tel.: 81-35487-8488
ASIA/PACIFC: Motorola Semiconductors H.K. Ltd.; 8B Tai Ping Industrial Park, 51 Ting Kok Road, Tai Po, N.T., Hong Kong;
Tel.: 852-26629298
Technical Information: Motorola Inc. SPS Customer Support Center 1-800-521-6274; electronic mail address:
crc@wmkmail.sps.mot.com.
Document Comments: FAX (512) 933-3873, Attn: Security Processor Applications Engineering.
World Wide Web Addresses: http://www.motorola.com/smartnetworks/products/security
Signal Descriptions
External Bus Interface and Memory Map
Data Encryption Standard Execution Unit
Arc Four Execution Unit
Message Digest Authentication Unit
mod N ....................................................................................................................7–32
R
mod P................................................................................................................7–34
p
N
7-26Run Time Formulas ....................................................................................................7–35
8-1Random Number Generator Registers..........................................................................8–2
8-2RNG Status Register Field Descriptions.......................................................................8–2
xii
MPC180LMB Security Processor User’s Manual
Chapter 1
Overview
This chapter gives an overview of the MPC180 security processor, including the key
features, typical system architecture, and the MPC180 internal architecture.
1.1 Features
The MPC180 is a flexible and powerful addition to an y netw orking system currently using
Motorola’s MPC8xx or MPC826x family of PowerQUICC™ communication processors.
The MPC180 is designed to off-load computationally intensive security functions such as
key generation and exchange, authentication, and bulk data encryption.
The MPC180 is optimized to process all of the algorithms associated with IPSec, IKE,
WTLS/WAP and SSL/TLS. In addition, the MPC180 is the only security processor on the
market capable of executing the elliptic curv e cryptography that is especially important for
secure wireless communications.
MPC180 features include the following:
•Public key execution unit (PKEU), which supports the following:
— RSA and Diffie-Hellman
– Programmable field size 80- to 2048-bits
– 1024-bit signature time of 32ms
– 10 IKE handshakes/second
— Elliptic Curve operations in either F 2 m or F p
– Programmable field size from 55- to 511-bits
– 155-bit signature time of 11ms
– 30 IKE handshakes/second
•Message authentication unit (MAU)
— SHA-1 with 160-bit message digest
— MD5 with 128-bit message digest
— HMAC with either algorithm
•Data encryption standard execution units (DEUs)
— DES and 3DES algorithm acceleration
– Two key (K1, K2, K1) or Three key (K1, K2, K3)
Chapter 1. Overview1-1
System Architecture
— ECB and CBC modes for both DES and 3DES
— 15 Mbps 3DES-HMAC-SHA-1 (memory to memory)
•ARC four execution unit (AFEU)
— Implements a stream cipher compatible with the RC4 algorithm
— 40- to 128-bit programmable key
— 20 Mbps ARC Four performance (memory to memory)
•Random Number Generator (RNG)
— Supplies up to 160 bit strings at up to 5 Mbps data rate
•Input Buffer (4kbits)
•Output Buffer (4kbits)
•Glueless interface to MPC8xx system or MPC826x local bus (50MHz and 66MHz
operation)
•DMA hardware handshaking signals for use with the MPC826x
•1.8v Vdd, 3.3v I/O
•100pin LQFP package
•HIP4 0.25µm process
1.2 System Architecture
The MPC180 works well in most load/store, memory-mapped systems. An external
processor may execute application code from its R OM and RAM, using RAM and optional
non-volatile memory (such as EEPR OM) for data storage. Figure 1-1 shows an e xample of
the MPC180 in an MPC8xx system, and Figure 1-2 shows the MPC180 connected to the
local bus of the MPC826x. In these examples, the MPC180 resides in the memory map of
the processor; therefore, when an application requires cryptographic functions, it reads and
writes to the appropriate memory location in the security processor.
EEPROM
MPC860
MPC180
System Bus
1-2
SDRAM
I/O or Network
Interface
Figure 1-1. Typical MPC8xx System Example
MPC180LMB Security Processor User’s Manual
Architectural Overview
EEPROM
SDRAM
DIMMs
60x Bus
MPC8260
SDRAM
I/O or Network
Interface
MPC180
Local Bus
SDRAM
Figure 1-2. Typical MPC8260 System Example
1.3 Architectural Overview
The MPC180 has a slave interface to the MPC8xx system b us and MPC8260 local b us and
maps into the host processor’s memory space. Each encryption algorithm is mapped to a
unique address space. To perform encryption operations, the host reads and writes to the
MPC180 to setup the execution unit and, then, transfers data to the execution unit directly
or through the external bus interface.
In FIFO mode, the MPC180 accepts data into the 4-Kbit input buffer and returns b urst data
through the output buffer. In this way, the host can automatically transfer bulk data
through a given EU. This minimizes host management overhead and increases overall
system throughput. Once the host configures the external bus interface (EBI), it receives
an interrupt only after all data has been transferred or processed by the MPC180.
DMA Request
8xx/6xx
I/F
(Slave)
External Bus Interface
DMA Request
INPUT
4K bit
FIFO
Controller
OUTPUT
4K bit
FIFO
DMA
Logic
DMA
Logic
RSA
ECC
SHA-1
MD 5
DES/
3DES
ARC4
RNG
Figure 1-3. MPC180 Block Diagram
Chapter 1. Overview 1-3
Architectural Overview
The interrupt controller organizes hardware interrupts coming from individual EUs into a
single maskable interrupt, IRQ_B, for the host processor. Multiple internal interrupt
sources are logically ORed to create a single, non-prioritized interrupt for the host
processor. The controller lets the host read the unmasked interrupt source status as well as
the request status of masked interrupt sources, thereby indicating whether a given
unmasked interrupt source will generate an interrupt request to the host processor.
1.3.1 Public Key Execution Unit (PKEU)
The PKEU is capable of performing many advanced mathematical functions to support
RSA and Diffie-Hellman as well as ECC in both F 2 m (polynomial-basis) and F p. The
accelerator supports all levels of functions to assist the host microprocessor in performing
its desired cryptographic function. For example, at the highest level, the accelerator
performs modular exponentiations to support RSA and point multiplies to support ECC. At
lower levels, the PKEU can perform simple operations such as modular multiplies.
1.3.2 Data Encryption Standard Execution Unit (DEU)
The DEU is used for bulk data encryption. It can also execute the Triple-DES algorithm,
which is based on DES. The host processor supplies data to the DEU as input, and this
data is encrypted and made available for reading. The session key is input to the DEU
prior to encryption. The DEU computes the data encryption standard algorithm (ANSI
X3.92) for bulk data encryption and decryption.
DES is a block cipher that uses a 56-bit key to encrypt 64-bit blocks of data, one block at a
time. DES is a symmetric algorithm; therefore, each of the two communicating parties
share the same 56-bit key. DES processing begins after this shared session key is agreed
upon. The message to be encrypted (typically plain text) is partitioned into n sets of 64-bit
blocks. Each block is processed, in turn, by the DES engine, producing n sets of encrypted
(ciphertext) blocks. Decryption is handled in the rev erse manner. The ciphertext blocks are
processed one at a time by a DES module in the recipient’s system. The same key is used,
and the DEU manages the key processing internally so that the plaintext blocks are
recovered.
The DES/3DES execution unit supports the following modes:
•ECB (electronic code book)
•CBC (cipher block chaining)
In addition to these modes, the DEU can compute T riple-DES. Triple-DES is an extension
to the DES algorithm in which every 64-bit input block is processed three times. There are
several ways that Triple-DES can be computed. The DES accelerator on the MPC180
supports two key (K1, K2, K1) or three key (K1, K2, K3) Triple-DES.
THe MPC180 supports two of the modes of operation defined for Triple-DES (see draft
ANSI Standard X9.52-1998):
•TECB (Triple DES analogue of ECB)
1-4MPC180LMB Security Processor User’s Manual
Architectural Overview
•TCBC (Triple DES analogue of CBC)
1.3.3 Arc Four Execution Unit (AFEU)
The AFEU processes an algorithm that is compatible with the RC4 stream cipher from
RSA Security, Inc. The RC4 algorithm is byte-oriented; therefore, a byte of plaintext is
encrypted with a key to produce a byte of ciphertext. The key is variable length, and the
AFEU supports 40-bit to 128-bit key lengths, providing a wide range of security levels.
RC4 is a symmetric algorithm, so each of the two communicating parties share the same
key .
AFEU processing begins after this shared session key is agreed upon. The plaintext
message to be encrypted is logically partitioned into n sets of 8-bit blocks. In practice, the
host processor groups 4 bytes at a time into 32-bit blocks and write that data to the AFEU.
The AFEU internally processes each w ord one byte at a time. The AFEU engine processes
each block in turn, byte by byte, producing n sets of encrypted (ciphertext) blocks.
Decryption is handled in the reverse manner. The ciphertext blocks are processed one at a
time by an AFEU in the recipient’s system. The same key is used, and the AFEU manages
the key processing internally so that the plaintext blocks are recovered.
The AFEU accepts data in 32-bit words per write cycle and produces 4 bytes of ciphertext
for every 4 bytes of plaintext. Before any processing occurs, the key data is written to the
AFEU, after which an initial permutation on the key happens internally. After the initial
permutation is finished, processing on 32-bit words can begin.
1.3.4 Message Authentication Unit (MAU)
The MAU can perform SHA-1, MD5 and MD4, three of the most popular public message
digest algorithms. At its simplest, the MAU receives 16 32-bit registers containing a
message, and produces a hashed message of 128 bits for MD4/MD5 and 160 bits for
SHA-1. The MAU also includes circuitry to automate the process of generating an HMAC
(hashed message authentication code) as specified by RFC 2104. The HMAC can be built
upon any of the hash functions supported by MAU.
1.3.5 Random Number Generator (RNG)
Because many cryptographic algorithms use random numbers as a source for generating a
secret value, it is desirable to have a private RNG for use by the MPC180. The anonymity
of each random number must be maintained, as well as the unpredictability of the next
random number. The 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 RNG is also useful
for digital signature generation.
The RNG is a digital integrated circuit capable of generating 32-bit random numbers. It is
designed to comply with FIPS-140 standards for randomness and non-determinism. The
RNG creates an unpredictable sequence of bits and assembles a string of those bits into a
register. The random number in that register is accessible to the host through the host
Chapter 1. Overview 1-5
Architectural Overview
interface of the RNG.
1.3.6 Software and Hardware Support
Customers will have access to device drivers integrated with the WindRiver VxWorks OS.
Sample drivers will also be provided to customers wishing to integrate MPC180 support
into other operating systems.
Third-party support for the MPC180 includes a development system for both the MPC860
and the MPC8260. The WindRiver/EST SBC8260C development system and Zephyr
Engineering ZPC860C, both of which include a board support package, are available to
accelerate customer design cycles.
1-6MPC180LMB Security Processor User’s Manual
Chapter 2
Signal Descriptions
This chapter provides a pinout diagram and signal descriptions for the MPC180 security
processor.
2.1 Signal Descriptions
Table 2-1 groups pins by functionality.
Table 2-1. Pin Descriptions
Signal name
A[18:29]62, 64, 66,
D[0:31]1, 2, 4, 6, 7,
CS
R/W
URST55IBurst Transaction. Active low signal used in the 8260 interface that indicates when
56IChip Select. Active low signal that indicates when a data transfer is intended for
54IRead/Write. Read/write line
Signal
type
Signal pins
IAddress—address bus from the processor core. These bits are decoded in the
MPC180 to produce the individual module select lines to the execution units. Note
that the processor address bus might be 32 bits wide, while the MPC180 address
bus is only 12 bits wide.
msb = bit 0
lsb = bit 31
I/OData—bidirectional data bus. This bus is connected directly to the processor core.
msb = bit 0
lsb = bit 31
the MPC180.
1 read cycle
0 write cycle
the current read/write is a burst transfer.
Description
TS
53ITransfer Start. Transfer start pin for control port. This signal is asserted by the
850/860 to indicate the start of a bus cycle that transfers data to or from the
MPC180. This is used by the MPC180 along with CS
transfer.
Chapter 2. Signal Descriptions2-1
, R/W, and A to begin a
Signal Descriptions
Table 2-1. Pin Descriptions (Continued)
Signal name
PSDVAL82IData valid. This active low signal is ignored when CONFIG=0 (MPC860 Mode), but
T
A /
LUPMWAIT
RESET
CONFIG57IConfiguration. Input that indicates whether the interface is to an MPC860 or
ENDIAN40IEndian. Active high for big endian mode. Low for little endian mode.
IRQ
Pin
locations
61OTransfer Acknowledge. This active low signal is used in 860 mode and is asserted
52IReset. Asynchronous reset signal for initializing the chip to a known state. It is
85OInterrupt Request. Interrupt line that signifies that one or more execution units
Signal
type
Description
is active in MPC8260 Mode. The assertion of PSD
valid on the data bus.
by the MPC180 when a successful read or write has occurred.
Local UPM wait. This active high signal is used in 8260 mode and is asserted to
indicate the number of wait states for a transaction.
Miscellaneous pins
highly recommended that this signal be connected to a dual hardware/software
reset function. Thus, the system designer can reset the MPC180 chip with optimal
flexibility.
MPC8260
1 8260 interface
0 860 interface
1 big endian
0 little endian
modules has asserted its IRQ
hardware interrupt.
VAL indicates that a data beat is
NC26, 27, 49,
50, 51, 76,
100
DREQ183ODMA Request 1. Active high signal which indicates that either the input or output
DREQ284ODMA request 2. Active high signal which indicates that either the input or output
CLK59IMaster clock input
TCK47IJTAG test clock
TDI48IJTAG test data input
TDO44IJTAG test data output
TMS46IJTAG test mode select
TRST
45IJTAG test reset
—No connection to the pin
DMA Hardware Handshake pins
buffer is requesting data transfer by the host or DMA controller. DREQ1 and
DREQ2 are each programmable to refer to the MPC180 chip input buffer or output
buffer. This signal is designed to interoperate with a PowerQUICC IDMA channel.
buffer is requesting data transfer by the host or DMA controller. DREQ1 and
DREQ2 are each programmable to refer to the MPC180 Chip input b uff er or output
buffer. This signal is designed to interoperate with a PowerQUICC IDMA channel.
This chapter describes the MPC180 address map, the External Bus Interface (EBI), and EBI
registers.
3.1 Execution Unit Registers
Each MPC180 execution unit has a dedicated set of registers. The MPC180 has a unified
memory map that allows software addressibility to all internal registers. Figure 3-1 lists
each MPC180 register and its 12-bit MPC180 chip address.
Chapter 3. External Bus Interface and Memory Map 3-1
Address Map
Most of these registers are read and write, however some have special permissions. See
Table 3-1 for more information. The 12-bit MPC180 address of each register is shown ne xt
to the register name. All registers are assumed to be 32 bits wide; however, registers that
contain fewer bits will return 0 (or a known value) on unused bits for that bus transaction
only. Many registers contain multiple 32-bit words. If so, the number of words in the
register set is shown in brackets after the name. Indi vidual e x ecution unit chapters describe
how to use these registers, the bit assignments, and bit ordering.
3.2 Address Map
Table 3-1 lists the addresses for all registers in each execution unit. The 12-bit MPC180
address bus value is shown along with a 32-bit host processor address bus value.
The EBI handles the interface between the processor and MPC180’s internal execution
units. It has the following features:
•Memory-mapped data transfers to/from the host to the MPC180 in single, burst, or
DMA modes
•4-Kbit input and output buffers that allows the host to set up an operation and pass
control of interrupts and data flow to the MPC180 until the operation completes
3-4MPC180LMB Security Processor User’s Manual
External Bus Interface
•Automatic buffer filling and emptying. DREQ1 and DREQ2 stay asserted as long as
memory space or data is in the buffers, letting the host load data for the next
operation before the current operation finishes
•Interrupt routing and masking, which lets the host individually detect interrupts
•Interrupt auto-unmask, which lets the controller unmask an interrupt to the host
when an operation finishes
3.3.1 EBI Registers
Table 3-2 describes the controller’s se v en 32-bit, host-addressable re gisters that are used to
program MPC180.
Table 3-2. EBI Registers
NameR/WDescription
CSTATR/WCommand/Status Register. Used to control global MPC180 functions and to monitor interrupts (see
Section 3.3.1.1, “Command/Status Register (CSTAT)”).
IDRID. Gives the fixed ID number unique to the MPC180 (see Section 3.3.1.2, “ID Register”).
IMASKR/WInterrupt Mask Register. Allows the masking of interrupts to the host (see Section 3.3.1.3, “IMASK
Register”).
IBCTLR/WInput Buffer Control Register. Contains the starting address in the MPC180 where data from the
input buffer is to be written. Contains the counter mask field (see Section 3.3.1.4, “Input Buffer
Control (IBCTL) and Output Buffer Control (OBCTL) Registers”).
IBCNTR/WInput Buffer Count Register. Gives the total number of 32-bit words to be written to a specific
execution unit for a given operation. This number is not limited to 128 (4 Kbits), but is the total
number of words to be taken from the input buffer and written to the selected execution unit (see
Section 3.3.1.5, “Input Buffer Count (IBCNT) and Output Buffer Count (OBCNT) Registers”).
OBCTLR/WOutput Buffer Control Register. Contains the starting address in the MPC180’s address map from
where data should be transferred to the output buffer. Also contains the counter mask field (see
Section 3.3.1.4, “Input Buffer Control (IBCTL) and Output Buffer Control (OBCTL) Registers”).
OBCNTR/WOutput Buffer Count Register. Contains the total number of 32-bit words a specific execution unit is
to write to the output buffer for a given operation. This number is not limited to 128 (4 Kbits), but is
the total number of words to be read from the selected (or enabled) execution unit (see
CSTAT, shown in Figure 3-2, is used to control the chip software reset and auto-unmask
function and to report interrupt status. The controller synchronizes the software reset
function to the rising edge of MCLK, guaranteeing sufficient setup and hold times. Note
that after the CSTAT register is read, bits 18-23 will be cleared, thus not allowing bitwise
operations on these bits.
Chapter 3. External Bus Interface and Memory Map 3-5
External Bus Interface
05678101112131415
Field—DR2CDR1C—DEUAFEUMDEU RNG PKEU
Reset0000_0000_0000_0000
R/WR/W
16171819202122232427283031
Field DR2A DR1A DEU AFEU MDEU RNG PKEUMPC180DestinationAUTO-UNMASKRST
Reset0000_0000_0000_0000
R/WR/W
Addr0x900
Figure 3-2. Command/Status Register (CSTAT)
Table 3-3 describes CSTAT fields.
Table 3-3. CSTAT Field Descriptions
BitsNameDescription
0–5—Reserved, should be cleared.
6DR2CDREQ2 Control Bit
0 = DREQ2 displays the state of the output FIFO
1 = DREQ2 displays the state of the input FIFO
7DR1CDREQ1 Control Bit
0 = DREQ1 displays the state of the input FIFO
1 = DREQ1 displays the state of the output FIFO
8–10—Reserved, should be cleared.
11–15 Source interrupt indicators for the individual execution units. These are the masked interrupts from the
execution units.
For bits 11–15:
0 interrupt not pending
1 interrupt pending
11DEUData Encryption Standard Execution Unit External Bus Interface interrupts
12AFEUArc Four Execution Unit External Bus Interface interrupts
13MDEUMessage Digest Execution Unit External Bus Interface interrupts
14RNGRandom Number Generator External Bus Interface interrupts
15PKEUPublic key Execution Unit External Bus Interface interrupts
16DR2ADREQ2 Activation
0 = Inactive
1 = Active
17DR1ADREQ1 Activation
0 = Inactive
1 = Active
18–22 Raw interrupt indicators for individual execution units. These are the unmasked interrupts from the
execution units.
For bits18–22:
0 interrupt not pending
1 interrupt pending
3-6MPC180LMB Security Processor User’s Manual
External Bus Interface
Table 3-3. CSTAT Field Descriptions
BitsNameDescription
18DEUData Encryption Standard Execution Unit interrupts
19AFEUArc Four Execution Unit interrupts
20MDEUMessage Digest Execution Unit interrupts
21RNGRandom Number Generator interrupts
22PKEUPublic key Execution Unit interrupts
23MPC180MPC180 IRQ. This bit, when set, indicates an interrupt is pending in the MPC180.
0 interrupt not pending
1 interrupt pending
24–27DestinationDestination bits. Only one execution unit on MPC180 can be active at a time through FIFO
accesses, so the host must program CSTAT to enable the appropriate execution unit. The
host must guarantee that all data related to a specific operation has been processed before
updating CSTAT, otherwise unpredictable results occur in MPC180 because the controller
acts on one execution unit at a time.
1000 DEU
1001 AFEU
1010 MDEU
1011 RNG
1100 PKEU
0xxx no active module
28–30 AUTO-
UNMASK
31RSTSoftware reset. Performs the same function as asserting RESET
Auto-unmask bit. Enables or disables the auto-unmask function. This function is used to
unmask an interrupt from the currently active execution unit. It is to be used when a
execution unit sends a series of intermediate interrupts the host does not want to see. For
example, if the DEU is enabled and active, many interrupts may be generated for
intermediate results. The host, however, may only be interested in the final interrupt that
occurs when the DEU completes processing all of the data. To begin the operation, the host
masks off the interrupts from the DEU and then writes to the auto-unmask bit. Then, when
the DEU completes processing all the data, the controller unmasks the DEU interrupt and
allows the final DEU interrupt (signaling the completion of processing) to be sent to the host.
The host can then read CSTAT to determine that the DEU generated an interrupt and take
appropriate action.
for bits 28–30:
000 disabled
001 enabled
on MPC180. Setting this
bit resets the MPC180 within two MCLK cycles; the controller clears this bit.
0—
1 chip reset
The complete MPC180 register map, including all execution units, is available to the host.
Although the host can access control registers and input and output buffers while an
instruction is executing, it cannot access the execution unit itself.
3.3.1.2 ID Register
Figure 3-3 shows the ID register. Note that the ID register contains a 32-bit value that
identifies the version of MPC180. Its value at reset is 0x0065_1491and should be read with
the ENDIAN mode set to big endian.
Chapter 3. External Bus Interface and Memory Map 3-7
External Bus Interface
07 81011131415
Field—MPC180MDEUDEU
Reset0000_00000110_0101
R/WRead
1617192022232526282931
Field DEUAFEURNG—EBIPKEU
Reset00010010_1001_0001
R/WRead
Addr0x901
Figure 3-3. ID Register
Table 3-4 describes the ID fields.
Table 3-4. ID Field Descriptions
BitsNameDescription
0–7—Reserved, should be cleared.
8–10MPC180MPC180 version number.
11–13MDEUMessage Digest Execution Unit version number
14–16DEUData Encryption Standard Execution Unit version number
17–19AFEUArc Four Execution Unit version number
20–22RNGRandom Number Generator version number
23–25—Reserved, should be cleared.
26–28EBIController version number
29–31PKEUPublic key Execution Unit version number
3.3.1.3 IMASK Register
The built-in interrupt controller (IRQ module) gathers all execution unit interrupt signals
and presents one output (IRQ
interrupts from execution units by programming the IMASK register . In this w ay , interrupts
can be controlled from a single source. Some execution-unit-specific configuration is
required to ensure proper response to any interrupt. The user can read the appropriate
address in CSTAT to get the interrupt status of all execution units at once.
The interrupt port consists of the IRQ
all pending interrupts from the execution units.
) to the host. It also lets the user selectively mask or disable
output, which is negated after the host responds to
All interrupts from the execution units have the same priority. Figure 3-4 shows the bit
assignments in the IRQ register for all the MPC180 execution units. All enable (mask)
registers operate on the corresponding bits. An interrupt is masked when its corresponding
IMASK bit is a 1.
3-8MPC180LMB Security Processor User’s Manual
Loading...
+ 76 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.