Illegal – Freescale Semiconductor StarCore SC140 User Manual

Page 492

Advertising
background image

A-178

SC140 DSP Core Reference Manual

ILLEGAL

ILLEGAL

Generate an Illegal Exception

ILLEGAL

Request (AGU)

Description

Operation

Assembler Syntax

upon service: PC

→ (ESP); SR → (ESP + 4);

SP + 8

→ SP; VBA[31:12]: illegal_vector → PC;

1

→ EXP

111

→ I[2:0]

1

→ ILIN

0

→ C

0 → T
00

→ S[1:0]

0

→ SLF

0000

→ LF[3:0]

ILLEGAL {illegal vector = $080}

ILLEGAL

Generates an imprecise non-maskable illegal exception request. The exact place in the execution
flow that the request is serviced depends on the machine state. Imprecise means that the exception
timing is not guaranteed, being asynchronous with the instruction execution. Users should not rely
on any timing between the ILLEGAL instruction execution and the start of exception processing.
In the most common case, the exception vector is executed after four more execution sets are
executed following the illegal instruction. In other cases, it can be the set immediately after or
delayed by another execution set. Thus, it should be realized that in the exception routine, the
machine state cannot be reconstructed to the exact state before or after the ILLEGAL instruction
is executed. It is possible, however, to know at which PC the request was raised by reading the
PC_EXCP register in the EOnCE (see the EOnCE section for a description of this register).

The AGU sets the EXP bit in SR to switch the active stack pointer to the exception stack pointer. .

Advertising