RM0082
AS_Cryptographic co-processor (C3)
Doc ID 018672 Rev 1
381/844
Bit 17 - Ignore Errors (IGR)
Not implemented. This bit should be set to zero.
Bit 16 - Reset Command (RST)
Each Instruction Dispatcher can be reset independently from each other using this bit. In
Hardware the reset is done synchronously and not all registers are affected by it. The
following are the effects of a synchronous reset:
●
bits 29-16 of SCR are all cleared,
●
the Instruction Dispatcher goes in Idle state eventually aborting program execution and
bits 31-30 (IDS) of SCR are set to Idle.
Bit 15 to 0 - Channel n Status (CnS)
All sixteen Channels report their state to each Instruction Dispatcher. The status of the first
eight Channels (Channel 0 to 7) is mirrored into these bits. A Channel status is encoded into
two bits of the SCR: status for Channel #0 is in bits 1-0, for Channel #1 in bits 3-2 and so on
till Channel #16 in bits 31-30. You must use the System Channel Status Register
(SYS_STR) to know the status of all 16 Channels.
Instruction Pointer Register (ID_IP)
The Instruction Pointer Register is used to store the pointer of the first instruction to be
fetched and to launch program execution. It can be read back at any time (particularly in
Single Step Mode) to know the address of the next instruction that will be executed. Effects
of changing Instruction Pointer while a program is running are unspecified. The Instruction
Pointer must be 32 bit aligned (the lower two bits are ignored and are always read zero).
When an Instruction Pointer is written the Instruction Dispatcher goes in run state, begins
filling its Instruction Queue and as soon as the first instruction is available it
executes/dispatches it.
Bit 16 RST
Description
1’b1
Reset this Instruction Dispatcher.
1’b0
(Cleaning Conditions) This bit is cleared as a consequence of
the reset,. so it is always read zero. Writing zero has no effect.
Hi Bit
CnSH
Lo Bit
CnSL
Description
0
0
Not Present: This Channel does not exist in Hardware.
1
0
Idle: The Channel is Idle and instructions can be dispatched to it.
1
1
Busy: The Channel is executing instructions dispatched by an
Instruction Dispatcher.
0
1
Error: The Channel is in error state, use Channel registers to know the
cause.