Technical data

Table Of Contents
Overview over the S7 Communication and the S7 Basic Communication
System Software for S7-300/400 System and Standard Functions - Volume 2/2
20-4
A5E00739858-01
20.2 Data Consistency
Definition
The size of the data area which can be modified simultaneously by concurrent
processes is called the consistent data area. Data areas which are larger than the
consistent data area can thus be falsified as a whole.
This means that a data area which belongs together and which is larger than
consistent data area can consist in part of new and of old consistent data blocks at
the same time.
Example
AN inconsistency can arise if a communication block is interrupted, for example, by
a hardware interrupt OB with a higher priority. If the user program in this OB now
changes the data which have already been processed in part by the
communication block, the transferred data originate:
IN part from the time before the hardware interrupt was processed
And in part from the time after the hardware interrupt was processed
This means that these data are inconsistent (not coherent).
Effect
If larger packages of data are to be transferred in a consistent form, the transfer
may not be interrupted. This can, for example, increase the interrupt reaction time
in the CPU.
This means: The higher the quantity of data which have to be transferred
absolutely consistently, the longer the interrupt reaction time of a system.
Data Consistency at SIMATIC
If the user program includes a communication function, for example BSEND/BRCV,
which accesses common data, access to this data area can, for example, be
coordinated by using the parameter "DONE”. The data consistency of the
communication areas which are transferred locally with a communication block can
therefore be ensured in the user program.
However, in the case of S7 communication functions, for example PUT/GET or
write/read via OP communication the size of the consistent data area must already
be taken into consideration during the programming or configuration stage, since
no communication block is available in the user program of the target device
(server) to send synchronized communication data to the user program.
At the S7-300 and C7-300 (exception: CPU 318-2 DP) the communication data are
copied consistently into the user memory in blocks of 32 bytes in the cycle
checkpoint of the operating system. Data consistency is not guaranteed for larger
data areas. If a defined data consistency is required, the communication data in the
user program may not exceed 32 bytes (maximum of 8 bytes, depending on the
version).