
System Manual Modular Systems
6 User Program
HI 800 191 E Rev. 2.02
Page 35 of 114
determine the cycle time in the user program may result in inaccurate cycle times, potentially
exceeding the watchdog time.
In the third phase, the user program results are forwarded for being processed in the following
cycles and supplied to the output channels.
6.2.1
Multitasking
Multitasking refers to the capability of the HIMatrix system to process up to 32 user programs
within the processor module.
This allows the project's sub-functions to be separated from one another. The individual user
programs can be started and stopped independently from one another. SILworX displays the
states of the individual user programs on the Control Panel and allows the user to operate them.
Using multitasking, the second phase changes so that a CPU cycle performs the following
tasks:
1. Process the input data.
2. Processing of all the user programs.
3. Supplying the output data.
In the second phase, the HIMatrix can run up to 32 user programs. Two scenarios are possible
for each user program:
An entire user program cycle can be run within a single CPU cycle.
A user program cycle requires multiple CPU cycles to be completed.
These two scenarios are even possible if only
one
user program exists.
It is not possible to exchange global data between user programs within a single CPU cycle.
Data written by a user program is provided immediately before phase 3, but after the user
program execution has been completed. This data can thus first be used as input values at the
next start of another user program cycle.
The example in Figure 4 shows both scenarios in a project containing two user programs:
Prg 1
and
Prg 2
.
t
First CPU cycle considered.
Second CPU cycle considered.
Input processing in the first CPU cycle
First
Prg 1
cycle considered
First portion of the considered
Prg 2
cycle
Output processing in the first CPU cycle
Input processing in the second CPU cycle
Second
Prg 1
cycle considered
Second portion of the considered
Prg 2
cycle
Output processing in the second CPU
cycle
Figure 4: CPU Cycle Sequence with Multitasking
Each
Prg 1
cycle is completely processed during each CPU cycle.
Prg 1
processes an input
change registered by the system at the beginning of the CPU cycle
and delivers a reaction
at the end of the cycle.
One
Prg 2
cycle requires two CPU cycles to be processed.
Prg 2
needs CPU cycle
to
process an input change registered by the system at the beginning of CPU cycle
. For this