Schneider Electric 840 USE 106 0 Stroller User Manual


 
Additional Guidelines for IEC Hot Standby
840 USE 106 00 January 2003 155
8.2 State RAM
Efficient Use of State RAM
Configured State
RAM Registers
Since in IEC Hot Standby, all the configured state RAM registers and bits are
transferred on every scan from the Primary to the Standby, it is worth having every
part of that area provide a purpose for the application. Sometimes application
designers decide to have gaps between the I/O references of each RIO drop, for
future changes, but usually those gaps never get filled up, so there is always a
certain amount of unused state RAM references. However, unused references
require memory space, and are transferred every scan, which increases the overall
scan time.
The better method is to assign contiguous I/O references without gaps. This means
the designer should not be concerned about the actual reference number an I/O
point occupies. Just give it a number and a name, and reference it in the IEC logic
by name. This way, whenever the actual state RAM reference number changes, it
would not have any impact on the logic itself, because the name does not change.
The positive effect is that all the configured state RAM is actually used and Ram size
therefore minimized.
In Concept 2.1, this downsizing of the configured state RAM is especially important
with coils (0x) and discretes (1x). In that and earlier versions of Concept, these state
RAM references are not accessed directly, but rather indirectly through the so called
"Mirror Buffer". This is a continuous block of memory (part of DFB instance data) in
which, at the beginning of every scan the 0x and 1x states are copied (mirrored). At
the end of every scan, the states of the mirror buffer are copied back into the 0x and
1x area. During the scan the IEC logic accesses the mirrors of the 0x and 1x
references, instead of accessing them directly. The data memory behind the mirror
buffer is that every coil and discrete is represented by a byte in the mirror buffer, not
by a bit. The reason for this was to facilitate generation of the IEC application
executable code.
Note: In Concept 2.1 each configured 0x/1x reference consumes per default 1 byte
of the DFB instance data area, which is IEC data and is going to be transferred from
Primary to Standby on every scan and that in turn extends the overall scan time. It
does not matter whether a particular discrete reference is used in IEC logic or not,
when it’s configured it takes one byte in the mirror buffer.