25
25
D
Prinzipieller Ablauf
Protokollablauf
Die Steuerung gibt einen Lese- oder Schreibauftrag. Folgender, vereinfacht dargestellter Ab-
lauf ergibt sich (genauere Darstellung in den nachfolgenden Beispielen):
1. Die Steuerung gibt an den Ausgangspuffer
– die Befehlskennung an die Subadresse 01
HEX
,
– die Startadresse, ab der gelesen/geschrieben werden soll,
– die Anzahl Byte, die gelesen/geschrieben werden sollen,
– den Datenträgertyp ( nach Blockgröße) und setzt
– das AV-Bit in der Bitleiste des Ausgangspuffers.
2. Die Auswerteeinheit übernimmt den Auftrag ("AA" in der Bitleiste des Eingangspuffers)
und beginnt, die Daten zu transportieren (Lesen = vom Datenträger in den Eingangs-
puffer,
Schreiben = vom Ausgangspuffer auf den Datenträger).
Größere Datenmengen werden in Blöcken übertragen (Größe = Puffergröße – 1). Dazu
wird mit den Toggle-Bits in den beiden Bitleisten eine Art Handshake ausgeführt.
Um das Lesen kleiner Datenmengen zu beschleunigen, stellt das Identifikations-System
beim Erkennen eines Datenträgers sofort die ersten 5 bis 31 Byte des Datenträgers im
Eingangspuffer zur Verfügung (Anzahl richtet sich nach der Puffergröße).
Die Daten sind nur nach der steigenden Flanke des CP-Bits in der Bitleiste des Eingangs-
puffers gültig. Sie bleiben gültig bis zur fallenden Flanke des CP-Bits, oder bis die
Steuerung einen Schreibauftrag oder einen Leseauftrag für den anderen Kopf erteilt.
3. Die Auswerteeinheit hat den Auftrag korrekt bearbeitet ("AE" in der Bitleiste des Eingangs-
puffers). Ist bei der Bearbeitung des Auftrags ein Fehler entstanden, wird eine Fehler-
nummer in die Subadresse 01
HEX
des Eingangspuffers geschrieben und das AF-Bit in
der Bitleiste des Eingangspuffers gesetzt.
Um das Identifikations-System in den Grundzustand zu bringen, setzt die Steuerung das
GR-Bit in der Bitleiste des Ausgangspuffers.
C6_2-019_641365_0506-d.p65
26
26
D
1. Beispiel
(mit 8 Byte
Puffergröße)
Protokollablauf
Initialisieren des Datenträgers für die CRC_16-Datenprüfung
Dieser Befehl entspricht im Ablauf einem Schreibbefehl. Startadresse und Anzahl Byte
müssen der maximal verwendeten Datenmenge entsprechen.
Im Beispiel soll der komplette Speicherbereich eines Datenträgers mit 128 Byte verwendet
werden (BIS C-1_ _-03/L mit 32 Byte Blockgröße). Da 2 Byte je Block für den CRC verwendet
werden, sind lediglich 120 Byte des Datenträgers für die Nutzbyte verfügbar.
Somit: Startadresse = 0, Anzahl Byte = 120.
Steuerung:
1.)
Subadressen des Ausgangspuffers in der
Reihenfolge der Darstellung bearbeiten:
Identifikations-System BIS C-6_2:
2.)
Subadressen des Eingangspuffers in der
Reihenfolge der Darstellung bearbeiten:
3.)
Subadressen des Ausgangspuffers bearbeiten:
4.)
Subadressen des Ausgangspuffers bearbeiten:
5.)
Subadressen des Ausgangspuffers bearbeiten:
6.)
Subadressen des Ausgangspuffers bearbeiten:
... Solange fortsetzen, bis der gesamte Speicherbereich geschrieben ist. Siehe nächste .
01
Hex
Befehlskennung 12
Hex
02
Hex
Anfangsadresse 00
Hex
03
Hex
Anfangsadresse 00
Hex
04
Hex
Anzahl Byte 78
Hex
05
Hex
Anzahl Byte 00
Hex
00
Hex
AA-Bit setzen, TO-Bit invertieren
01...07
Hex
Die ersten 7 Byte Daten eintragen
00
Hex
TI-Bit invertieren
01...07
Hex
Die ersten 7 Byte Daten kopieren
Subadresse des Eingangspuffers bearbeiten:
00
Hex
TO-Bit invertieren
01...07
Hex
Die zweiten 7 Byte Daten eintragen
00
Hex
TI-Bit invertieren
01...07
Hex
Die zweiten 7 Byte Daten kopieren
Subadresse des Eingangspuffers bearbeiten:
00
Hex
TO-Bit invertieren