![NXP Semiconductors SAFE ASSURE Qorivva MPC5601P Reference Manual Download Page 922](http://html.mh-extra.com/html/nxp-semiconductors/safe-assure-qorivva-mpc5601p/safe-assure-qorivva-mpc5601p_reference-manual_1721898922.webp)
Chapter 36 Nexus Development Interface (NDI)
MPC5602P Microcontroller Reference Manual, Rev. 4
922
Freescale Semiconductor
36.12.8.2 Control State Register (CTL)
The Control State Register (CTL) is a 32-bit register that stores the value of certain internal CPU state
variables before the debug mode is entered. This register is affected by the operations performed during
the debug session and should normally be restored by the external command controller when returning to
normal mode. In addition to saved internal state variables, two of the bits are used by emulation firmware
to control the debug process. In certain circumstances, emulation firmware must modify the content of this
register as well as the PC and IR values in the CPUSCR before exiting debug mode. These cases are
described below.
WAITING — Waiting State Status
This bit indicates whether the CPU was in the waiting state prior to entering debug mode. If set, the CPU
was in the waiting state. Upon exiting a debug session, the value of this bit in the restored CPUSCR will
determine whether the CPU re-enters the waiting state on a go+exit.
0: CPU was not in the waiting state when debug mode was entered
1: CPU was in the waiting state when debug mode was entered
PCOFST — PC Offset Field
This field indicates whether the value in the PC portion of the CPUSCR must be adjusted prior to exiting
debug mode. Due to the pipelined nature of the CPU, the PC value must be backed-up by emulation
software in certain circumstances. The PCOFST field specifies the value to be subtracted from the original
value of the PC. This adjusted PC value should be restored into the PC portion of the CPUSCR just prior
to exiting debug mode with a go+exit. In the event the PCOFST is non-zero, the IR should be loaded with
a nop instruction instead of the original IR value, otherwise the original value of IR should be restored.
(But see PCINV which overrides this field)
0000: No correction required.
0001: Subtract 0x04 from PC.
0010: Subtract 0x08 from PC.
0011: Subtract 0x0C from PC.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
R
*
W
A
IT
ING
W
Reset
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
R
PCOFST
PCINV
FF
RA
IRST
A
T
0
IRST
A
T
1
IRST
A
T
2
IRST
A
T
3
IRST
A
T
4
IRST
A
T
5
IRST
A
T
6
IRST
A
T
7
IRST
A
T
8
IRST
A
T
9
W
Reset
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Figure 36-17. Control State Register (CTL)