Inhaltsverzeichnis

PIO, CTC, SIO

PIO

CTC

SIO

Int-Vektor-Register WR2 in Kanal B beschreiben.
Register WR4 sollte zuerst beschrieben werden.

Beschreibung der Bit-Stellen der Steuerregister WR0 bis WR7, 
und der Statusregister RR0 bis RR2

WR0:
D0..D2 Nr. des nächsten zu ladenden oder zu lesenden Registers.
D3..D5 RESET-Kommandos
	SEND ABORT (nur SDLC) . Es wird eine Folge von 8 bis 13 "1" gesendet.
	RESET EXT STATUS INT löscht die im RR0 bei Statusinterrupt eingetragenen Bit.
	CHANNEL RESET führt zum Rücksetzen eines Kanals. Alle Steuer- und Statusregister sind gelöscht.
	RESET R x INT ON FIRST CHAR. Nach Erscheinen eines Interrupt im Interruptmodus 1
	muß durch RESET R x INT ON FIRST CHAR der Kanal für weitere Interrupt freigegeben werden.
	RESET T x INT PENDING. Im Interruptmodus 2 erscheint bei leerem Sendepuffer ein Interrupt. Dieses
	Kommando verhindert, daß dieser Interrupt mehrmals kommt. Nach dem Kommando tritt so
	lange kein Interrupt auf, bis wieder ein Zeichen in den Sendepuffer gekommen ist.
	ERROR RESET veranlaßt das Rücksetzen der Fehler-Bit (Parität und Empfängerüberlauf) in RR1
	RETURN FROM INT erzeugt einen RETI-Befehl auf dem Datenbus.
D6..D7	setzt die CRC-Logik zurück.

WR1:
D0	EXT INTERRUPT ENABLE. Gestattet Interrupt bei Wechsel von /DCD, /CTS, /SYNC, -bei BREAK,
	bei Sendebeginn von CRC oder SYNC-Zeichen.
D1	TRANS INTERRUPT ENABLE. Erlaubt INT, wenn der Sendepuffer leer ist.
D2	STATUS AFFECTS VECTOR (nur Kanal B). Ist dieser Modus ausgewählt, so wird der Interruptvektor
	in WR2 wie folgt modifiziert:
		v3 v2 v1
		0 0 0	Kanal B Sendepuffer Leer
		0 0 1	Kanal B externer Statuswechsel
		0 1 0	Kanal B empfangenes Zeichen verfügbar
		0 1 1	Kanal B spezielle Empfangsbedingung*
		1 0 0	Kanal A Sendepuffer Leer
		1 0 1   Kanal A externer Statuswechsel
		1 1 0   Kanal A empfangenes Zeichen verfügbar
		1 1 1   Kanal A spezielle Empfangsbedingung*
		*) spezielle Empfangsbedingung: Paritätsfehler, Empfängerüberlauf, CRC-/Format-Fehler, 
		Blockende (SDLC)
D3..D4	Durch D3 und D4 werden spezielle Interruptbildungsmöglichkeiten für Empfänger eingestellt.
D5	D5 = 1 Der /WAIT-/READY-Ausgang wird aktiv, wenn der Empfänger leer ist.
	D5 = 0 Der /WAIT-/READY-Ausgang wird aktiv, wenn der Sendepuffer voll ist.
D6	D6 = 0 /WAIT-/READY-Ausgang arbeitet als WAIT (Ausgang).
	D6 = 1 /WAIT-/READY-Ausgang arbeitet als READY (Ausgang).
	WAIT-Funktion: Das SIO kann keine Daten aufnehmen oder abgeben.
	READY-Funktion: Das SIO ist zur Arbeit bereit.
D7	Freigabe des WAIT-/READY-Ausgangs.

WR2:
Dieses Register enthält den lnterruptvektor. Er existiert nur im Kanal B. Bei STATUS AFFECTS
VECTOR werden die Bit-Stellen V1 bis V3 entsprechend der Interrupterzeugung eingetragen.


WR3:
D0	Erlaubt Empfangsfunktion.
D1	Bei D1 = 1 werden die SYNC-Zeichen nicht in die Empfangspufferregister geladen. CRC erfolgt normal.
D2	D2 = 1 verhindert im SDLC-Modus Interrupt, wenn keine Übereinstimmung zwischen empfangener und
	programmierter Adresse oder wenn keine Globaladresse (11111111) vorliegt.
D3	Mit D3 = 1 beginnt die CRC-Konrolle beim Start des letzten Zeichens vom Empfangsregister zum Puffer.
D4	HUNTMODE. Die Übertragung wird abgebrochen, bis ein neues SYNC-Zeichen kommt.
D5	AUTOENABLE. Bei D5 = 1 arbeiten die DCD und CTS-Eingänge als Empfangs- und Sendesteuerung.
	Bei D5 = 0 wirken DCD und CTS nur auf ihre Bit im Statusregister.
D6..D7	Bestimmt empfangene Bit/Zeichen.

WR4:
D0	D0 = 1, SIO arbeitet mit Paritäts-Bit,
D1	D1 = 0, Parität gerade.
	D1 = 1, Parität ungerade.
D2..D3	Bestimmt die Anzahl der Stop-Bit bei Senden.
D4..D5	Bestimmt die Art des Synchronmodus.
D6..D7	Bestimmung des Multiplikationsfaktors zwischen Takt und Übertragungsrate.

WR5:
D0	TRANSMIT CRC-ENABLE. CRC-Freigabe bei Senden.
D1	D1 = 1, /RTS geht auf 0.
	D1 = 0, /RTS geht auf 1, wenn der Sender leer ist.
D2	CRC/SDLC
	D2 = 0, CRC-Kontrolle mit SDLC-Polynom X^16 + X^12 + X^5 + 1 .
	D2 = 1, CRC-Kontrolle mit Polynom X^16 + X^15 + X^2 + 1 .
D3	TRANSMIT ENABLE.
	Sendeerlaubnis. Bei Rücksetzen wird das letzte Zeichen noch voll ausgegeben.
D4	BREAK. Bewirkt Aussenden von "0" auf TxD.
D5..D6	Bestimmt auszugebende Bit/Zeichen. Bei weniger als 5 Bit/Zeichen gilt:
		1 1 1 1 0 0 0 D sendet 1 Bit
		1 1 1 0 0 0 D D sendet 2 Bit
		1 1 0 0 0 D D D sendet 3 Bit
		1 0 0 0 D D D D sendet 4 Bit
		0 0 0 D D D D D sendet 5 Bit
D7	DTR
	D7 = 1 bewirkt /DTR = 0 (aktiv).
	
WR6:	
SYNC-Zeichen bei Monosynchronisation, die ersten 8 Bit bei Bisynchronisation.

WR7:
2. Zeichen bei Bisynchronisation oder das Synchronzeichen bei Monosynchronisation. 
Bei SDLC muß WR7 = 01111110 sein.

RR0:
D0	RECEIVE CHARACTER AVAILABLE; gesetzt, wenn mindestens 1 Zeichen im Puffer.
D1	INTERRUPT PENDING; wird bei jeder INT-Anmeldung gesetzt (nur Kanal A).
D2	TRANSMIT BUFFER EMPTY; gesetzt, wenn der Sendepuffer leer ist (außer bei CRC).
D3	DCD; zeigt Zustand /DCD.
D4	SYNC/HUNT
	D4 = 0, Zeichensynchronisation erreicht,
	D4 = 1, keine Synchronisation.
D5	CTS; zeigt Zustand /CTS.
D6	BREAK/ABORT; wird gesetzt, wenn mit dem Senden von CRC-Worten begonnen wird, 
	nachdem der Sendepuffer leer geworden ist.
D7	CRC/SYNC
	D7 = 1 bei Erkennen von BREAK (bei ASYNC) .
	Im SDLC-Format bei Erkennen einer Abbruchfolge (7 oder mehr Einsen).

RR1:
D0	ALL SENT wird gesetzt, wenn alle Zeichen im Asynchronmode gesendet sind.
D1..D3	Falls bei Empfang im SDLC-Modus die Anzahl der Bit/Zeichen nicht aufgehen, 
	zeigt D1/D2/D3 die restlichen Bit an.
D4 	Paritätsfehler,
D5 	Empfängerüberlauf,
D6 	Formatfehler im Asynchronmode,
	CRC-Fehler im Synchronmode.
D7 	Blockende bei SDLC mit gültigem CRC erkannt.

RR2: 
Enthält Interruptvektor. Die Bit sind entsprechend STATUS AFFECTS VECTOR verändert.