2 dispatch enabled/disabled states, 3 cpu locked/unlocked states, 4 dispatch disabled and cpu locked states – Renesas Emulator System M3T-MR100 User Manual

Page 46: P and loc_cpu- 30

Advertising
background image

- 30 -

3.5.2

Dispatch Enabled/Disabled States

The system assumes either a dispatch enabled state or a dispatch disabled state. In a dispatch disabled state, no task sched-
uling is performed. Nor can service calls be invoked that may cause the service call issuing task to enter a wait state.

16

The system can be placed into a dispatch disabled state or a dispatch enabled state by the dis_dsp or ena_dsp service call,
respectively. Whether the system is in a dispatch disabled state can be known by the sns_dsp service call.

3.5.3

CPU Locked/Unlocked States

The system assumes either a CPU locked state or a CPU unlocked state. In a CPU locked state, all external interrupts are
disabled against acceptance, and task scheduling is not performed either.

The system can be placed into a CPU locked state or a CPU unlocked state by the loc_cpu(iloc_cpu) or unl_cpu(iunl_cpu)
service call, respectively. Whether the system is in a CPU locked state can be known by the sns_loc service call.

The service calls that can be issued from a CPU locked state are limited to those that are listed in Table 3-2.

17

Table 3.2 Invocable Service Calls in a CPU Locked State

loc_cpu iloc_cpu unl_cpu iunl_cpu
ext_tsk exd_tsk sns_tex sns_ctx
sns_loc sns_dsp sns_dpn

3.5.4

Dispatch Disabled and CPU Locked States

In µITRON 4.0 Specification, the dispatch disabled and the CPU locked states are clearly discriminated. Therefore, if the
unl_cpu service call is issued in a dispatch disabled state, the dispatch disabled state remains intact and no task scheduling
is performed. State transitions are summarized in Table 3.3.

Table 3.3 CPU Locked and Dispatch Disabled State Transitions Relating to dis_dsp and loc_cpu

Content of state

State

number

CPU locked

state

Dispatch disabled

state

dis_dsp
executed

ena_dsp
executed

loc_cpu
executed

unl_cpu
executed

1

O

X

X

X

=> 1

=> 3

2

O

O

X

X

=> 2

=> 4

3

X

X

=> 4

=> 3

=> 1

=> 3

4

X

O

=> 4

=> 3

=> 2

=> 4

16

If a service call not issuable is issued when dispatch disabled, MR100 doesn't return the error and doesn't guarantee the operation.

17

MR100 does not return an error even when an uninvocable service call is issued from a CPU locked state, in which case, however, its

operation cannot be guaranteed.

Advertising