Ausführliche Beschreibung
2.7 NCU-übergreifende Anwenderkommunikation, Linkvariablen
Link-Speicher Benutzung
Für zeitlich gänzlich entkoppelte Vorgänge kann der Link-Speicher verschieden belegt
werden. Die zu einem Zeitpunkt gemeinsam auf den Link-Speicher zugreifenden
Anwendungen der verschiedenen NCUs müssen den Link-Speicher einheitlich benutzen.
Zugriff aus Synchronaktionen
Wird beim Zugriff aus Synchronaktion oder Teileprogramm auf den Link-Speicher ein
unzulässiger Index benutzt, so wird der Alarm 20149 ausgelöst.
Schreibzugriffe auf Linkvariablen
Beim Schreiben auf Linkvariablen des Link-Speichers in der Art z. B.
$A_DLB[5] = 21
wird ein Schreibelement benötigt. Das Schreibelement dient der Kommunikation mit den
weiteren NCUs, die den geänderten Inhalt im Link-Speicher sehen müssen. Jeder
Schreibvorgang auf eine Linkvariable benötigt ein Schreibelement. Es ist solange durch den
Schreibvorgang belegt, bis der Datenaustausch mit den anderen NCUs durch den Hauptlauf
abgeschlossen ist.
Da die globalen Daten von allen Kanälen und NCUs beschrieben werden können, muss der
Anwender für eine Koordinierung der Schreib- und Lesezugriffe sorgen. Ist eine NCU-Link-
Verbindung aktiv, so werden die Variablen sofort geschrieben. Das Schreiben und sofortige
Zurücklesen einer Variablen führt zum gleichen Ergebnis. Die Variablen werden nur
hauptlaufsynchron geschrieben. Ein Schreiben und sofortiges Rücklesen im gleichen
Teileprogrammsatz hat ein unterschiedliches Ergebnis.
Anzahl der Schreibelemente
Die für Schreibvorgänge auf Linkvariablen verfügbaren Schreibelemente sind begrenzt. Ihre
Anzahl wird durch das folgende Maschinendatum festgelegt:
MD28160 $MC_MM_NUM_LINKVAR_ELEMENTS
.
Sind für einen beabsichtigten Schreibvorgang keine Schreibelemente mehr verfügbar, wird
Alarm 14763 ausgelöst. Die festgelegte Anzahl der Schreibelemente begrenzt nur die
Anzahl der Schreibvorgänge, die in einem Satz geschrieben werden können.
Zeitverhalten beim Schreiben
Das Schreiben der Link-Variablen ist für die eigene NCU im aktuellen Interpolationstakt (in
der Reihenfolge der Befehle) sofort beendet. Wenn der Anwender die in der
Systemvariablen $A_LINK_TRANS_RATE abfragbare Anzahl möglicher Schreibvorgänge im
aktuellen Interpolationstakt nicht überschreitet, finden alle anderen NCUs die geschriebene
Information spätestens nach 2 Interpolationstakten vor.Werden Link-Variablen ausschließlich
zur Kanalkoordination einer mehrkanaligen NCU benutzt, erfolgt das Schreiben im gleichen
Interpolationstakt.
2-64
Erweiterungsfunktionen: Mehrere Bedientafeln an mehreren NCUs, Dezentrale Systeme (B3)
Funktionshandbuch, 11/2006, 6FC5397-1BP10-2AA0