DE2027916A1 - Datenubertragungsverfahren und anlage - Google Patents

Datenubertragungsverfahren und anlage

Info

Publication number
DE2027916A1
DE2027916A1 DE19702027916 DE2027916A DE2027916A1 DE 2027916 A1 DE2027916 A1 DE 2027916A1 DE 19702027916 DE19702027916 DE 19702027916 DE 2027916 A DE2027916 A DE 2027916A DE 2027916 A1 DE2027916 A1 DE 2027916A1
Authority
DE
Germany
Prior art keywords
word
message
register
buffer
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE19702027916
Other languages
English (en)
Other versions
DE2027916B2 (de
Inventor
William Bridges St Charles Bruce Judson Downers Grove 111 Smith (V St A ) P
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
Western Electric Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE2027916A1 publication Critical patent/DE2027916A1/de
Publication of DE2027916B2 publication Critical patent/DE2027916B2/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1845Combining techniques, e.g. code combining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Detection And Correction Of Errors (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

Bei bekannten Übertragungsanlagen sind verschiedene Verfahren benutzt worden, um eine genaue Übertragung von Daten zu erreichen und eine Korrektur zu ermöglichen, wenn Fehler festgestellt worden sind. Beispielsweise sind Fehlerkorrekturcode benutzt worden, die zu einer ausreichend größen Redundanz der übertragenen Datenwörter oder Zeichen führen, um die Möglichkeit zu geben, empfangsseitig nicht nur Fehler in diesen Wörtern anzeigen, sondern auch korrigieren zu können. Solche Anordnungen befriedigen zwar für viele Anwendungsfälle, aber die durch die Fehlerkorrekturcodierungen eingeführte Redundanz verringert notwendigerweise die wirksame Übertragungsgeschwindigkeit, und außerdem ist eine zusätzliche Verarbeitungszelt erforderlich, um die eigentliche Korrektur durchzuführen,
Andererseite sind Systeme bekannt, bei denen die Empfangs stelle so ausgerüstet ist, daß sie einfach nur einen Übertragungsfehler feststellt· Dann muß die Empfangs stelle auf irgendeine Weise auereichende Informationen zur Sendestelle zurückgeben, um
001802/1923 .ccTPi
- .-■"". ORIGINAL MSi-fcCfEb
diese in die Lage zu versetzen, die Nachricht neu zu übertragen. Wenn ein Zweiweg- oder Duplex-Datenkanal vorgesehen ist, können diese Informationen bequem zur ursprünglichen Sendestelle als Teil einer der nächsten Datennachrichten zurückgegeben werden, die in der entgegengesetzten Richtung über den Kanal übertragen werden. Eines der bei dieser Systemart benutzten Verfahren besteht darin* gleichlange Blöcke von Daten-
Wörtern zu übertragen und in jeden solchen Block ein Prüfzeichen oder -Wort aufzunehmen» Bei einem solchen System ist es erforderlich^ jeden Block von Datenwörtern aus einem Speicher
zu übertragen^, und der Block im Speicher kann nicht eher gelöscht werden, als daß das Prüfseichen vom anderen Ende des Kanals zurückgegeben wird» Ein solches System^ das in*Western Union Technical Revies" Juli 1965, Seite 118 ff beschrieben ist und EDAC-System genannt wird, verwendet in jedem Block von ψ übertragenen Zeichen ein Prüfzeichen,, das mit ^Rückgabesteuer"« ■
Wort bezeichnet wird« Das Rückgabesteuerwort gibt an, ob ein vorher übertragener Block richtig empfangen worden ist, sagt aber nichts welches Wort fehlerhaft ist0 so daß der ganze Block neu übertragen werden muß«,
In gewissen Datenübertragungsanlagsa k&swa ©la gegebener Block von
Wörtern mehr als eine bestimmte Naeteicht enffealtera räct la- ge-.. wiesen FÄUen kann ein gegebener Blocic von Wörter« s<a viele _ .-·.
009862/1923
■8"
bestimmte Nachrichten enthalten, als Wörter im Block vorhanden sind. Wenn bei einem solchen System, ein Fehler in einer der Einzelwort-Nachrichten festgestellt wird, wäre es wünschenswert, diejenigen Bereiche des Speichers, die richtig übertragene Einzelwort- öder Vielwort-Nachrichten enthalten, freizugeben und nur diejenige Einzelwort-Nachricht neu zu übertragen, die als fehlerhaft festgestellt worden ist.
Außerdem wäre es wünschenswert, eine Einzelwort-Nachricht zn jeder Zeit selbst während der Übertragung eines Datenblocks übertragen zu können, der andere Einzelwort- oder Vielwortnachrichten niedrigerer Priorität enthält. Wenn ein solches Wort hoher Priorität in einen Block anderer übertragener Wörter eingefügt wird, ist natürlich die Einzelwort-Nachricht hoher Priorität diskret mit Bezug auf andere Nachrichten in dem Datenblock, d.h., hat nichts mit diesen zu tun. Wenn ein Fehler in einem solchen Wort hoher Priorität auftritt, wäre es wünschenswert, nur dieses Einzelwort neu übertragen zu können, obwohl es möglicherweise nicht einfach ist, in irgend ein Rückgabesteuerwort Informationen einzugeben, ob das fehlerhafte Wort zu einer Vielwort-Nachricht gehört hat oder ein diskretes Wort hoher Priorität war. Wenn ein Fehler in einer kurzen Vielwort-Nachricht auftritt, wäre es natürlich wünschenswert, höchstens nur die Vielwort-Nachricht statt alle in dem Datenblock enthaltenen Wörter neu zu tibertragen.
009882/1923
Es dürfte klar sein, daß eine Datenübertragungsanlage, die dauernd in Betrieb ist, obwohl keine eigentlichen Nachrichten übertragen werden, schneller anspricht, wenn eine Nachricht zu übertragen ist, da nicht erst abgewartet werden muß, bis die^ Anlage synchron läuft.. Bei einer solchen Anlage werden "Leerwörter" über den Signalübertragungskanal immer dann gegeben, wenn eine wirkliche Nachricht zu übertragen ist oder wenn nicht genug echte Nachrichten vorhanden sind, um alle Wörter in einem Datenblock zu füllen. Bei Feststellung eines Fehlers in einem dieser Datenblöcke, die sowohl echte Datenwörter als auch Leerwörter enthalten, wäre es zweckmäßig, eine Neuübertragung nur eines echten Datenwortes veranlassen zu können und alle Fehler in Leerwörtern unbeachtet zu lassen.
Die Erfindung hat sich die Aufgabe gestellt, die vorstehend beschriebenen Möglichkeiten zu schaffen.
Zur Lösung der Aufgabe geht die Erfindung aus von einem Verfahren zum kontinuierlichen Senden und Empfangen von Daten in Blöcken von Wörtern, wobei jeder von einer Sende-Empfangsstelle ausgesendete Block Fehlerüberwachungsindormationen bezüglich eines vorher von dieser Stelle aufgenommenen Blockes enthält, mit einer sendeseitigen Speicherung von Nachrichten, von denen Datenwörter zusammen mit Leerwörtern zu Blöcken
009882/1923
für die Übertragung zusammengestellt werden. Die Erfindung ist gekennzeichnet durch die Verfahrensschritte: Speichern eines Zustandswortes für jeden Block, das angibt, welche Wortpositionen des jeweiligen Wortes Datenwörter und welche Wortpositionen Leerwörter betreffen; Vergleichen der Pehlerüberwachungsinformation eines empfangenen Blocks mit dem gespeicherten Zustandswort, das den gleichen, vorher übertragenen Block wie diese Fehlerüberwachungsinformation betrifft;
Markieren nur derjenigen Nachrichten zur Neuübertragung, welche einem fehlerhaften Datenwort entsprechen; Aufheben der Nachrichtenspeicherung, sobald alle Wörter einer Nachricht durch die Fehlerüberwachungsinformation als richtig empfangen identifiziert worden sind.
Außerdem ist die Erfindung auf eine Datensende- und Empfangsstelle zur Durchführung des Verfahrens gerichtet, die gekennzeichnet ist durch einen Digitalrechner, der so programmiert ist,
daß er alle Datenwörter, die eine ganze, in übertragenen Blöcken enthaltene Datenwortnachricht in jeweils einen von einer Vielzahl von Nachrichtenpuffern speichert, daß er in einem Zustandewortregister ein Zustandswort speichert,
009882/1323
das eine geordnete Darstellung von Bits enthält, die anzeigen, welche Wortpositionen in jedem übertragenen Block durch entsprechende Nachrichtenpuffer beigetragen worden sind und welche Wortpositionen Leerworte waren,
daß er die Bit-Positionen eines die Fehlerüberwachungsinformtion enthaktenden Quittungswortes mit den Bitpositionen des Zustandswortes zur Ableitung einer Anzeige vergleicht, welche der durch das Quittungswort als fehlerhaft angezeigten Positionen solche echter, von einem der Nachrichtenpuffer beigetragener Datenwörter waren, und
daß er die Neuübertragung der Datenwörter von denjenigen Nachrichtenpuffern, welche ein fehlerhaftes Wort beigetragen haben, und die Freigabe derjenigen Nachrichtenpuffer steuert, welche richtige Wörter zu dem übertragenen Block beigetragen haben.
f Ein Vorteil der Erfindung besteht darin, daß eine Nachricht
hoher Priorität, beispielsweise in Form eines einzelnen Wortes, in eine zu ihr nicht in Beziehung stehende Vielwort-Nachricht eines übertragenen Blocks eingeschoben werden kann und daß die trotzdem verwendete Fehlerüberwachungsinformation bei Auftreten eines Fehlers die Neuübertragung von weniger als allen Datenwörtern in dem vorher übertragenen Datenblock ermöglicht. Die Neuübertragung ist auf lediglich diese Einzelwort-Nachricht beschränkt, wenn das Woet tatsächlich fehler-
009882/1923
haft ist, oder auf nur die eine ganze Nachricht bildenden
Wörter, wenn eines oder mehrere der Worter einer solchen Nachricht als fehlerhaft festgestellt worden sind«
Bei einem Ausführungsbeispiel führt ein- gemeinsamer Signalübertragungskanal gleichlange Blöcke von Wörtern, wobei ein Wort jedes Blockes ein Quittungswort ist, das im folgenden gelegentlich als BLOCK-Wort bezeichnet wird, und die übrigen Wörter jedes Blockes Datenwörter oder Leerwörter sind. Das von einem Ende des Kanals zum anderen Ende zurückgegebene Quittungswort gibt die Position jedes fehlerhaften Wortes in einem an dem einen Ende empfangenen Datenblock an, der vorher von "dem anderen Ende ausgesendet worden ist.
In jedem Amt mit einer Endstelle für einen gemeinsamen Kanalübertragungskanal ist eine Datenverarbeitungsanlage mit einer Speichereinheit vorgesehen, die eine Vielzahl von Nachrichtenpuffern enthält, welche Datenwortnachrichten solange speichern, bis die zugeordnete Endstelle sie über den gemeinsamen Signalübertragungskanal aussenden kann, bis das Qüittungswort über den Kanal zurückgegeben ist, was bedeutet, daß die übertragenen Wörter richtig empfangen worden sind. Für jeden Block von Wörtern, die von der Speichereinheit über den Kanal
009882/1923
übertragen worden sind, zeichnet ein Register in der Speichereinheit ein Zustandswort hoher und ein Zustandswort niedriger Priorität auf. Die Zustandswörter geben in dem übertragenen Block die Stelle von Wörtern an, die von irgendeinem aus der Vielzahl von Nachrichtenpuffern hoher Priorität bzw. niedriger Priorität beigetragen worden sind. Wenn das Quittungswort vom entfernten Ende des Kanals zu der ^ Endstelle zurückgegeben ist, wird es zunächst daraufhin geprüft, ob
es das Vorhandensein irgendwelcher fehlerhaften Wörter in dem vorher übertragenen Block anzeigt. Wenn keine Wörter fehlerhaft waren, werden die die Datenwörter speichernden Nachrichtenpuffer freigegeben, (gelöscht), vorausgesetzt, daß der übertragene Block nicht irgendwelche Vielwort-Nachrichten enthält, von denen einige Wörter in einen nachfolgend übertragenen Block überlappend hineinragen. In diesem Fall, d. h., wenn ein Nachrichtenpuffer Datenwörter zu mehr als einem übertragenen Block beigetragen hat, wird er erst freigegeben, nachdem das Quittungswort für den nachfolgend übertragenen Block empfangen ist und angibt, daß alle Wörter der Nachricht, die die beiden Blöcke überlappen, richtig empfangen worden sind.
Wenn das Quittungswort anzeigt, daß fehlerhafte Wörter in einem übertragenen Datenblock vorhanden waren, so wird zuerst das Zustandswort für den Nachrichtenpuffer hoher Priorität befragt, der zu dem
009882/1923
übertragenen Block möglicherweise einen Beitrag geliefert hat. Das Quittungswort und das Zustandswort hoher Priorität werden verglichen, zweckmäßig durch eine Produkt-Maskierung des Quittungswortes mit dem Zustandswort, um ein Fehlerüberwachungswort zu gewinnen, das die Position fehlerhafter, aus dem Nachrichtenpuffer hoher Priorität stammender Datenwörter in dem ,übertragenen Datenblock angibt. Das so abgeleitete Fehlerüberwachungswort gibt dem Verarbeiter die Möglichkeit, alle fehlerhaften Leerworte, die möglicherweise in dem übertragenen Block eingeschlossen waren, nicht zu beachten. Wenn das Ergebnis der Produkt-Maskierung anzeigt, daß ein fehlerhaftes Datenwort von dem Nachrichtenpuffer hoher Priorität übertragen wor den ist, so wird derjenige Nachrichtenpuffer, der das fehlerhafte Wort beigesteuert hat^ markiert, so daß sein Inhalt zwischen denjenigen Nachrichten erneut entnommen werden kann, die noch zu übertragen sind, und auf diese Weise von der zugeordneten Endstelle erneut über den Kanal übertragen. Diese Markierung des Nachrichtenpuffers wird vorteilhafterweise in die später neu übertragene Nachricht eingeschlossen, so daß die Nachricht amanderen Ende des Kanals als Neuübertragung erkannt werden« kann und, falls gewünscht,, bevorzugt behandelt werden kann.
Wenn richtigen, durch einen Nachrichtenpuffer hoher Priorität beigesteuerten Wörtern entsprechende Positionen in dem übertragenen Block
009882/1923
festgestellt werden, so wird der entsprechende Puffer freigegeben, um für andere Zwecke verfügbar zu sein.
Wenn alle Puffer hoher Priorität, die Datenwörter zu dem übertragenen Block beigesteuert haben, in Betracht gezogen worden sind, so gewinnt man das Zustandswort für den Nachrichtenpuffer niedriger Priorität, das dann mit dem Quittungswort produktmaskiert wird, um ein Fehlerüberwachungswort für Nachrichten zu gewinnen, die von einem der Nachrichtenpuffer niedriger Priorität beigetragen worden sind. Wenn das Pehlerüberwachungswort das Vorhandensein fehlerhafter Wörter anzeigt, so werden die übrigen Wörter des übertragenen Blockes nacheinander geprüft, um festzustellen, ob richtig übertragene Einzelwortoder Vielwortnachrichten vorhanden waren, deren Nachrichtenpuffer freigegeben werden können, oder ob fehlerhafte Wörter enthaltene Nachrichtenpuffer vorhanden waren, die für eine Neuübertragung neu ψ gelesen werden müssen.
Wenn für ein richtig übertragenes Wort^ festgestellt wird, daß es Teil einer Vielwort-Nachricht ist, so wird der Zählwert der richtig empfangenen Wörter der Nachricht weitergeschaltet, bis er gleich dem Zählwert der von dem Vielwort-Nachrichtenpuffer übertragenen Wörter ist. Wenn der Zählwert der bestätigten Wörter gleich dem Zählwert
009882/1923
der von dem Vielwort-Nachrichtenpuffer übertragenen Wörter ist,, so wird der Nachrichtenpuffer mit einer Liste von Puffern verkettet, deren Inhalt bestätigt worden ist und die folglich für eine andere Verwendung zur Verfügung stehen.
Wenn für ein fehlerhaft übertragenes Wort festgestellt wird, daß es Teil einer Vielwort-Nachricht ist, so wird der Zählwert der bis dahin geprüften Wörter der Nachricht weiter ge schaltet, bis er gleich dem Zählwert von Wörtern in der Nachricht ist. Derjenige Vielwort-Nachrichtenpuffer, welcher das fehlerhafte Wort enthält, wird dann zu der Liste von Puffern hinzugefügt, deren Inhalt neu über den gemeinsamen Kanal zu übertragen ist.
Eine solche Datenübertragungs anlage speichert nur die Datenwörter, die zu Blöcken von übertragenen Wörtern beigetragen haben, und wenn in einem übertragenen Block ein Fehler festgestellt wird, erfolgt eine Neuübertragung nur derjenigen Datenwörter in einem übertragenen Block, die eine ganze Nachricht darstellen.
Nachfolgend wird ein bevorzugtes Ausführungsbeispiel der Erfindung -anhand der Zeichnungen beschrieben, Es zeigen:
Fig. 1 ein Gesamtblockschaltbild einer Datenübertragungsanlage nach der Erfindung;
009882/1923
2027316
Pig. 2 einen bekannten Datenverarbeiter, der in der Anlage nach Fig. 1 verwendet werden kann;
Fig. 3 das Format des ersten und zweiten Wortes einer als Bei und 4
spiel gewählten Nachricht, die über die gemeinsamen
Signalübertragungskanäle der Anlage nach Fig. 1 übertragen werden kann;
ψ Fig. 5 ein SchnittsteUen-(interface)Register zur Aufnahme des
zu einer Endstelle über einen gemeinsamen Signalübertragungskanal in Fig. 1 zurückgegebenen BLOCK-Wortes;
Fig. 6 die Register, die die Übersicht der bei der Betriebszuordnung von Nachrichtenpuffern verwendeten Pufferbetriebstabellen bilden;
Fig. 7 die Register zur zeitweiligen Speicherung der Fehlerbits,,
der Zustandswörter hoher und niedriger Priorität, des
^ Fehlerüberwachungswortes, der Position jedes fehlerhaft
festgestellten Wortes, der Stelle des Zustandswortes mit Bezug auf einen Block von Datenwörtern, die vorher über einen gemeinsamen Kanal gemäß Fig. 1 übertragen worden sind, und eine Rückgabeadresse-Speicherstelle;
Fig. 8 die bei dem als Beispiel erläuterten Programm, das die BLOCK-Wortinformation verarbeitet, verwendeten Kopfzellen;
0 0 9 8 8 2/ 19 2 3
ij
Fig. 9 die Register zur Speicherung der Zeiger, die die Stelle und 11
der Nachrichtenpuffer niedriger und hoher Priorität
identifizieren, welche die über den gemeinsamen Kanal übertragenen Datenwörter enthalten; Fig. 10 die Zu stands Wörter niedriger und hoher Priorität für jeden der Informationsblöcke, der vorher über einen gemeinsamen Kanal gemäß Fig. 1 übertragen worden ist;
Fig. 12 einen Einzelwort- bzw. Vielwort-Nachrichtenpuffer zur
und 13
Speicherung der Datenwörter, die über einen gemeinsamen Kanal gemäß Fig. 1 übertragen werden können;
Fig. 14 Flußdiagramme zur Verarbeitung des über den gemeinbis 20
samen Kanal gemäß Fig. 1 zurückgegebenen BLOCK-Wortes.
In Fig. 1 ist eine Datenübertragungsanlage unter Verwendung gemeinsamer Übertragungskanäle· Die Anlage wird mit Bezug auf ein örtliches Hauptamt beschrieben, das eine Datenverarbeitungsanlage 300, Verbindungskanal-Endstellen 106 und 206 sowie Signalkanal-Endstellen 108 und 208 besitzt. Entfernt von dem Hauptamt mit den oben aufgeführten Ausrüstungen befinden sich zwei entfernte Hauptämter 11A" und nB"# die für Nachrichtenübertragungezwecke über eine Vielzahl von Verbindungekanälen 1-1024 bzw. 2001-3024 erreichbar sind. Im Amt 11A11 sind Verbindungskanal-Endeteilen 107, eine Signalkanal-
009882/1923
Endstelle 109 und eine Datenverarbeitungsanlage 400 vorgesehen, die in jeder Beziehung der Datenverarbeitungsanlage 300 des örtlichen Amtes entsprechen kann. Im entferntön Amt "B" sind entsprechend Verbindungskanal-Endstellen 207, eine Signalkanal-Endstelle 209 und eine Datenverarbeitungsanlage 500 vorgesehen.
fc Es sei angenommen, daß die Verbindungskanäle 1-1024 individuelle
Sprechverbindungen zwischen dem örtEchen Hauptamt und dem entfernten Amt 11A" führen, und daß der gemeinsame Signal- oder Zeichengabekanal 1089 zwischen den Endstellen 108 und 109 diejenigen Infor-
mationen überträgt, die zur Herstellung von Verbindungen zu und von den Verbindungskanal-Endstellen 106 und 107 der entsprechenden Ämter erforderlich sind. Die über den gemeinsamen Zeichengabekanal 1089 übertragenen Zeicheninformationen enthalten typischerweise die gerufene Fernsprechnummer, die in Vorwärtsrichtung vom rufenden zum gerufenen Amt übertragen wird, und die in der Rückwärtsrichtung übertragene Antwortüberwachung. Die gerufene Fernsprechnummer wird in den meisten Fällen in Form einer Vielwortnachricht vorliegen, während die Antwortüberwachung normalerweise als Einzelwortnachricht zu erwarten ist. Da außerdem die Antwortüberwachung zu einem Zeitpunkt übertragen wird, wenn Verbindungen in beiden Hauptämtern zu und von den entsprechenden Verbindungskanal-Endstellen 106 und
009882/1923
hergestellt sind, ist im Normalfall zu erwarten, daß der Antwortüberwachung eine höhere Priorität als der Information bezüglich der gerufenen Nummer zugeordnet ist, die zu einem Zeitpunkt übertragen wird, wenn die Investitionen mit Bezug auf. hergestellte Verbindungen noch keinen so hohen Umfang angenommen haben. Dementsprechend sei für das Ausführungsbeispiel angenommen, daß die im folgenden behandelte Einzelwortnachricht hoher Priorität eine Antworteüberwachungsnachricht und daß die Vielwortnachricht niedriger Priorität eine Nachricht bezüglich einer gerufenen Nummer ist. Bei dem beispielhaften Datenformat für die über den gemeinsamen Zeichengabekanal zu übertragenden Datenwörter ist die Möglichkeit gegeben, bis zu 29 andere Arten von Nachrichten zusätzlich zu den Nachrichten bezüglich einer gerufenen Nummer und der Antwortüberwachung zu übertragen.
Fig. 3 zeigt das Format des ersten Wortes einer Nachricht, das beispielsweise über den gemeinsamen Zeichengabekanal von der Endstelle 108 aus übertragen werden kann. Der Nachrichtencodeteil, nämlich die Bits 0 bis 4, gibt an, ob es sich bei der Nachricht um eine Rufnummernnachricht, eine Antwortüberwachungsnachricht, eine Leerwortnachricht, usw. handelt.
009882/1923
Das Bit 15 ist eine "l" im ersten Wort einer Vielwortnachricht. Es ist eine Anzahl von Prüfbits vorhanden, so daß empfangeseitig auf übliche Weise festgestellt werden kann, ob das Wort richtig ist. Diese Prüfbits werden später beim Empfang am anderen Ende des gemeinsamen Zeichengabekanals durch dort befindliche Einrichtungen (nicht gezeigt) benutzt. Bei der Formulierung eines BLOCK-Wortes, das
ψ vom entfernten Ende über den Zeichengabekanal zurückgegeben wird,
entspricht jede Bit-Position in dem BLOCK-Wort einem Wort, beispielsweise dem nach Fig. 3, in einem vorher übertragenen Block von Wörtern. Fig. 4 zeigt das zweite Wort einer Datennachricht, dessen Felder von rechts nach links enthalten: ein Wortzählfeld, das die Anzahl von Datenwörtern in der Nachricht angibt, ein Format-Codefeld, das jede gewünschte Information bezüglich des Formates der Nachricht liefern kann, die Datenbits der Nachricht und eine Anzahl von Prüfbits,
^ die die gleiche Funktion wie die Prüfbits des ersten Wortes (Fig. 3)
haben. Unabhängig von der Anzahl von Datenwörtern oder Leerwörtern in einem übertragenen Block ist ein Wort, zweckmäßig das letzte Wort des übertragenen Blockes, für ein BLOCK-Wort reserviert. Das Format des BLOCK-Wortes kann das gleiche wie das des ersten Wortes sein, mit der Ausnahme, daß das Verbindungsleitungs-Nummernfeld in diesem Fall zur Identifizierung der fehlerhaften Wortpositionen in einem vorher übertragenen Block dient. Diese Fehlerbits in dem über
009882/1923
den Zeichengabekanal in einer Endstelle, beispielsweise der Endstelle 108, empfangenen BLOCK-Wort werden in ein Schnittstellenregister (interface register) entsprechend Fig. 5 eingegeben, so daß die vorher von der Endstelle übertragene Nachricht, die dem empfangenen BLOCK-Wort entspricht, bestätigt werden kann.
Fig. 1 zeigt, wie Leerwortnachrichten von der Endstelle 108 übertragen werden. Normale Datenwörter werden über eine Sammelleitung 6406 zur Endstelle 108 zwecks Übertragung über den Zeichengabekanal 1089 gegeben. Wenn Datenwörter auf der Sammelleitung 6406 vorhanden sind, ist das Sperrgatter 108-5 in der Endstelle 108 gesperrt. Wenn dagegen keine echten Datenwörter zur Abgabe an die Sammelleitung 6406 im Gesprächsspeicher 103 (siehe unten) zur Verfugung stehen, wird das Sperr gatter 108-5 geöffnet, und der Leerwortgenerator 108-3 liefert ein Wort mit dem Format gemäß Fig. 3, in welchem die Bits 0-4 alle 0 sind, zum Sender 108-2 zwecks Übertragung über den Duplex-Modem 108-1 und den gemeinsamen Kanal.
Da es wünschenswert ist, daß die Datenverarbeitungsanlage 300 nicht durch Leerwörter belastet wird, die in der Endstelle 108 über den Zeichengabekanal 1089 empfangen werden, ist dem Empfänger 108-10 ein Leerwort-Detektor 108-11 zugeordnet, der den Sperranschluß eines
009882/1923
20279 7
Gatters 108-12 erregt, um zu verhindern, daß der Empfänger ein Leerwort an den Abtaster 31 der Datenverarbeitungsanlage * liefert. Diejenigen Informationen, die der Empfänger 108 an die Dc verarbeitungsanlage 300 liefern darf, wird durch deren Abtas über das Kabel 6600 in das L-Register der gemeinsamen r (Fig. 2) der Datenverarbeitungsanlage eingegeben. Beim lauf gibt das L-Register die Informationen in ein Schnittstellenregaai des Gesprächsspeichers 103, das der Endstelle 108 zugeordnet isto Auf entsprechende Weise tastet die Datenverarbeitungsanlage 3 00-de Ausgang des der Zeichenkanal-Endstelle 208 zugeordneten Empfang ab und gibt gegebenenfalls die dabei gewonnenen Informationen in ein Schnittstellenregister (Fig. 3C) des Gesprächsspeichers ein, das der Endstelle 208 zugeordnet ist. Die zentrale Steuerung gemäß Fig. 2 m.~ der Ge spräche speicher 103 des Ausführungsbeispiels sind Teile einer bekannten Datenverarbeitungsanlage, die imeinzeinen inlfBell System Technical Journal", September 1964, insbesondere Seiten 1845 bis 195.Γ beschrieben ist, die sich mit der Organisation des zentralen Verarfoei ters und des Spei eher programme beschäftigen, sowie Seiten 2021 bis 2054, die sich mit dem peripher en Sammelleitungssystem beschäftigen. Zur Vereinfachung seien jedoch jetzt die Hauptbetriebsinerkmale der bekannten Anlage gemäß Fig. 2 beschrieben,
009882/1923
Die Datenverarbeitungsanlage enthält einen Programmspeicher 102 und einen veränderbaren Kurzzeitspeicher oder Gesprächsspeicher 103, die im folgenden gelegentlich zusammen als Speicher bezeichnet werden. Die Adresse eines Befehls im Programmspeicher 102 wird vom Programmadressenregister PAR über die Sammelleitung 6400 zum Programmspeicher übertragen. Im allgemeinen wird die Adresse in jedem Betriebszyklus durch die Addier-eins-Schaltung AO weitergeschaltet, um aufeinanderfolgend nummerierte Befehle zu gewinnen. Eine der Folge schaltungen im Block SEQ unterbricht die normale Ausführung von' Befehlen und steuert einen Sprung auf ein Zeittafel-Programm am Beginn jedes Intervalls von 5 Millisekunden. Danach werden, da die Adresse im Programmadressenregister PAR kontinuierlich weitergeschaltet wird, die Befehle des Zeittafel-Programms nacheinander, ausgeführt.
Im Gesprächsspeicher 103 befindliche Informationen werden gelesen, indem die Adresse des gewünschten Gesprächs Speicherwortes über die Sammelleitung 6401 übertragen wird. Das gewählte Wort wird auf der Übertragungssammelleitung 6501 ausgegeben und in ein Datenpufferregister BR eingegeben. Zum Einschreiben eines Wortes in den Gesprächsspeicher werden die Bits des gewünschten Wortes durch das Pufferregister BR an die Gesprächsspeicher-Schreibsammelleitung 6402 geliefert, und die Speicherstelle« in die das Wort in den Gesprächs-
009882/1923
to
speicher einzuschreiben ist, wird durch den Index-Addier er IA an die Sammelleitung 6401 angelegt. Ein zentraler Impulsverteiler CPD (nicht gezeigt) ist für den Nachrichtenverkehr mit peripheren Einheiten (nicht gezeigt) vorgesehen, und wird über Sammelleitungen 6403 und 6404 adressiert. Der Nachrichtenverkehr mit verschiedenen Netzwerkeinheiten erfolgt über eine Sammelleitung 6406, Informationen von ^ peripheren Punkten der Anlage werden dem Verarbeiter über eine Abtastantwort-(SA)Sammelleitung 6600 zurückgegeben und in das Logik-Register LR eingeschrieben.
Die auf der linken Seite der Fig. 2 gezeigten Ausrüstungen bestimmen die entsprechend den aus dem Programmspeicher 102 entnommenen Befehlen auszuführenden Funktionen. Jeder Befehl enthält außer Hamming- und Paritätsbits zur Fehleranzeige und -Korrektur ein Operationsfeld, ein Datenadressenfeld und eine Indexregister-Kennung. Die drei Teile jedes Befehls sind in der folgenden Darstellung durch Kommas getrennt. Wenn ein Teil eines Befehls weggelassen werden soll, wird ein zusätzliches Komma als Markierung zu diesem Zweck benutzt.
Beim Lesen des Programmspeichers 102 geht das Operationsfeld eines Programmbefehlswortes in das Befehlswort-Hilf spuff err egister ABOWR, während das Datenadressenfeld und die Hamming-Bits des Befehlswortes
009882/1923
direkt in das Befehlswort-Pufferregister BOWR geführt werden. Das Befehlswort-Hilfspufferregister ABOWR ist vor das Register BOWR geschaltet, um zu verhindern, daß ein Operationsfeld in das Register BOWR eingegeben wird, bevor in diesem das vorhergehende Befehlswort gelöscht ist. Die Zahlen 7, 16 und 21 in dem Befehlswort-Pufferregister geben jeweils die Anzahl der verfügbaren Bits zur Darstellung der 7 möglichen Hamming- und Paritätsbits, der 16 möglichen Bits zur Angabe des Operationscode und von Index»Registern sowie die 21 Datenadressen-Bits an. Das Datenadressen-(DA)Feld wird dann zum Index-Addier er IA übertragen, wo, falls erforderlich, der Index-Vorgang stattfindet. Bei dem Index-Schritt wird das DA-FeId durch Addition des in einem der Register der Anlage enthaltenen Wortes abgeändert, beispielsweise des Registers XR. Die durch den IiSitotf-Addierer gelieferte Summe stellt die Daten oder die Adresse dar, die bei der Ausführung des Befehls benutzt wird.
Da bei der bekannten Anlage eine Mehrzyklen-Überlappung möglich ist, ist zusätzlich zu dem Befehlswort-Pufferregister BOWR ein Befehlswortregister OWR zusammen mit deren entsprechenden Decodierern OWD und BOWD vorgesehen. Ein Misch-Decoder MXD löst Überschneidungen zwischen den Programmwörtern in den beiden Registern OWR und BOWR. Die Ausgangssignale der Decodierer werden zusammen
009882/1923
20279T6 U
mit gewählten Taktsignalen aus der Taktquelle CLK in der Befehlskombinations-Gatterschaltung OCG kombiniert, die gewählte Gatter in der richtigen zeitlichen Reihenfolge betätigt. Die Befehlskombinations Gatterschaltung OCG erzeugt demgemäß die richtigen Folgen von Gattersignalen zur Durchführung des Index-Zyklus und des Ausführungs-Zyklus jeder der Folgen von Befehlen, wenn diese zuerst im Befehlswort» Pufferregister BOWR und dann im Befehlswortregister OWR erscheinen.
Ein Speicheradressen-Decodierer MAD decodiert die vom Index-Addierer IA kommenden Adressen und steuert die BefeHlskombinations-Gatter-Schaltung OCG derart, daß diese richtig adressierte Ausrüstungen, beispielsweise den Programmspeicher, den Gesprächsspeicher oder Register beaufschlagt.
Die interne Datenverarbeitungsstruktur ist um zwei Vielleiter-Sammelleitungen gruppiert, nämlich die unmaskierte Sammelleitung UB und die maskierte Sammelleitung MB sowie eine Verbindung zur Übertragung eines Datenwortes von einem Register zu einem anderen. Die Maskier- und Komplementschaltung M & C verbindet die unmaskierte Sammelleitung mit der maskierten Sammelleitung und stellt eine Einrichtung zur logischen Bearbeitung der Daten beim Übergang von der erstgenannten zur letztgenannten Sammelleitung dar. Die durchzuführende logische Operation, die unter anderem eine Produktmaskierung
009882/1923
(UND), eine ODER-Maskierung, eine Exklusiv-ODER-Maskierung sowie eine Komplement-Bildung sein kann, wird durch das Operationsfeld des Befehlswortes vorgeschrieben, das entweder durch den Befehlswort-Puff erdecodierer BOWD oder den Befehlswort-Decodierer OWD decodiert wird.
Eine Entscheidungs-Logikschaltung DEC ermöglicht die Ausführung von Entscheidungsbefehlen, die dem Verarbeiter entweder gestatten, mit der Ausführung der augenblicklichen Befehlsfolge weiterzufahren, oder auf eine neue Folge von Befehlen zu springen. Der Entscheidungsbefehl gibt an, daß gewisse Informationen als Grundlage für die Entscheidung zu prüfen sind. Die Informationen werden aus der Homogenitäts-Steuerschaltung CH oder der Vorzeichen-Steuerschaltung CS oder gewählten Ausgängen der K-Logikschaltung KLOG gewonnen. Die Grundlage der Entscheidung kann darin bestehen, daß die geprüften Informationen arithmetisch Null, kleiner als Null, größer als Null usw. sind.
Wie oben erwähnt, ist eine Vielzahl von Folge schaltungen SEQ vorgesehen, die gemeinsam mit den verschiedenen Decodierern die Steuerung der Datenverarbeitung haben. Diese Schaltungen enthalten Zählschaltungen, deren Zustand die von den Folge schaltungen durchzuführenden Gatteroperationen definieren. Die Folge schaltungen steuern
009882/1923
die Operationszeit und Ausführung verschiedener Befehle.
Programmbefehle - Einleitung
Bei der folgenden Beschreibung von Programmbefehlen wird ein symbolisches Befehlsformat benutzt. Der symbolische Programmbefehl ist in die folgenden. "Felder" oder Spalten unterteilt:
Befehls «Nr. Ort Operations co de DA, RM, LCJ
Das Ortsfeld wird benutzt, um einem Befehl eine symbolische Adresse zuzuordnen, auf die sich dann andere Befehle des Programms beziehen können. Das Operationscodefeld gibt die bei diesem Befehlsschritt auszuführende Operation an. Die Felder DA, RM und LCJ sind das variable Feld und Felder für wahlfreie, zusätzliche Befehlsmöglichkeiten, (options). Das DA-FeId gibt Daten oder eine Adresse an. Das R-Unterfeld kann benutzt werden, um das Pufferregister BR, das X-Index-Register XR, das Y-Indexregister YR, das Z-Indexregister ZR, das K-(Akkumulator)Register KR, das F-(Erste-Eins)Register FR oder das J-(Rückgabeadresse)»Register JR anzugeben, die alle in Fig. 1 gezeigt sind. Das M-Unterfeld wird nur für Sprungbefehle, und zwar bedingte oder unbedingte Sprungbefehle, benutzt, um durch das Auftreten des Buchstabens M hinter dem ersten Komma anzugeben, daß
009882/1923
der Sprung indirekt ist. Das L-Unterfeld zeigt für bestimmte Befehle eine der logischen Maskier-Operationen unter Verwendung des Inhaltes des Logik-Registers LR an, das entweder durch einen vorhergehenden Befehl (PL oder EL) oder durch das DA-FeId des augenblicklichen Befehls (PS oder ES) eingestellt worden ist. Das Auftreten des Buchstabens P in diesem Unterfeld gibt die logische Produkt-Funktion (UND) an und sagt, daß jedes Bit des Wortes auf seinem Weg zu seiner Bestimmungsstelle mit dem entsprechenden Bit des Logik-Registers LR zu vergleichen ist. Wenn beide Bits 11I" sind, ersetzt eine 11I" den Inhalt dieser Position des Wortes, bevor es seine Bestimmungsstelle erreicht. Wenn eines der beiden Bits eine 11O" ist, wird entsprechend eine "θ" in diese Position des Wortes gegeben. Der Buchstabe E bezeichnet eine Einfügungs-Maskierung. Das CJ-Unterfeld, kann, wenn es benutzt wird, entweder durch C angeben, daß die Information auf der unmaskierten Sammelleitung auf ihrem Weg zu dem Bestimmungsort zu komplementieren ist, oder durch J, daß die Rückgabeadresse, d. h., die Adresse, die dem bedingten oder unbedingten Sprungbefehl folgt, in das Rückgabe-Adressenregister JR einzugeben ist, falls ein Sprung tatsächlich stattfindet.
Das als Beispiel gewählte Programm verwendet eine Anzahl von Operationscodierungen, beispielsweise: MK (desgleichen MX, MY, MZ,
009882/1923
2Ö27916
die abgesehen von dem beteiligten Register MX ähnlich sind);
WK (desgleichen WP, WY, WZ, WX, die abgesehen von dem beteiligten Register WK ähnlich sind); CWK; TCA2; KM (desgleichen ZM, XM, die abgesehen von dem beteiligten Register KM ähnlich sind); AMKj T; AZR; CMK; TCAU. Jede dieser Codierungen soll kurz beschrieben werden, da sie bei der folgenden Erläuterung der Erfindung benutzt
werden»
Bei der nachfolgenden Beschreibung (mit Ausnahme von Fig. 6) soll zur Vereinfachung angenommen werden, daß alle beteiligten Einrichtungen mit der Verarbeitung eines BLOCK-Wortes beschäftigt sind, das über den gemeinsamen Zeichengabekanal zur Endstelle 108 zurückgegeben worden ist.
Entsprechend Fig. 5 wird das BLOCK-Wort nach Empfang an der stelle 108 des gemeinsamen Zeichengabekanals in dem der Endstelle zugeordneten Schnittstellenregister gespeichert. Nimmt man an, daß jedes zur Endstelle 108 über den Kanal vom Amt A zurückgegebene BLOCK-Wort einen Block von Wörtern betrifft, die vorher von der Endstelle 108 übertragen worden sind, so können die Blocknummern örtlich verfolgt werden und brauchen nicht über den Kanal übertragen zu werden. Folglich steht, wenn das BLOCK-Wort in das Schnittstellen
009882/1923
register (Fig. 5) vom gemeinsamen Zeichengabekanal eingegeben wird, die Blocknummer örtlich in dem Schnittstellenregister zur Verfugung. Die Adresse des vorgenannten Schnittstellenregisters ist im F-Register (Fig. 2) gespeichert, und die Nummer des gemeinsamen Kanals, über den das BLOCK-Wort, empfangen worden ist, steht bei Eintreten in das Quittungs-Unterprogramm im X-Register zur Verfugung. Der erste Befehl des Quittungs-Unterprogramms nach Fig. 14 bis 20, dessen Befehle 001 bis 049 in den Fig. 14 - 15 dargestellt sind, lautet
001 ACK MK M. ERR, F, S
In diesem Befehl gibt der Buchstabe S in dem Feld für wahlfreie, zusätzliche Befehlsmöglichkeiten an, daß die Maske M. ERR zum Lesen der Fehlerbits aus dem Speicher entnommen und in das L-Register eingegeben werden soll. Der Buchstabe F im Index-Registerfeld gibt zusammen mit dem Speicher-zum-K-Register-Operationscode MK an, daß der Inhalt der durch die Adresse im F-Register angegebenen Speicherstelle in das K-Register einzuschreiben ist. Da die Adresse im F-Register die Adresse des das BLOCK-Wort enthaltenden Schnittstellenregisters ist, wird das BLOCK-Wort in das K-Register eingegeben. Die wirklichen, durch die Maske M. ERR definierten Bit-Posi-' tionen werden während der Programmzusammenstellung (Compilation) zugeordnet und brauchen zur Vereinfachung hier nicht im einzelnen erläutert zu werden.
009882/1923
002 HMZ -D. BLKP, O, F, WL· Bei diesem Befehl wird das vorher in das K-Register eingegebene Wort nach rechts um den Betrag 11D. BLKPM verschoben» so dia! die nBlocknummernlt-Bits im K-Register nach rechts eingestellt sind. Danach wird das Wort im Speicher an der durch den Inhalt des I?-Registers angegebenen Stelle, d. h., das aus dem Schnittstellenregister (Fig. 5) gewonnene Wort mit dem vorher in das L-Register eißgegefee« nen Inhalt produktmaskiert und das Ergebnis in das Z-Register/ gegeben. Da das L-Register die Maske zum Lesen der Fehlerbiis des Wortes im Schnittstellenregister enthalten hat« besteht das Ergebnis dieser Produktmaskierung darin, nur die Fehlerbits des BLOCK«* Wortes in das Z-Register einzugeben* wobei alle anderen Bit-FosMo» nen dieses Registers auf 11O" eingestellt werden. Wenn irgendwelche; Fehler vorhanden sind, muß bestimmt werden^ ob diese FeMerfeifcs fehlerhaft empfangene Wörter identifizieren, die von einem Sfaoluricli· tenpuffer hoher Priorität übertragen worden sind, oder ob es «lein um Wörter handelt, die von einem Nachrichtenpuffer niedriger Priorität kommen.
003 ZM TEMP, SF
Die im Z-Register enthaltenen Fehlerbits (falls vorhanden! werden in der Speicherstelle TEMP festgehalten. Das Register F wird auf die Adresse von TEMP eingestellt.
004 MYMZ TBCL, X
009682/1923
Das Y- und Z-Register wird mit der Adresse der die Endstelle 108 bedienenden Pufferbetriebstabelle versehen. Diese Adresse Yl ist im ersten Wort der TBCL-Übersieht der Pufferbetriebstabellen {Fig. 6) gespeichert. Die Adresse desjenigen Wortes in der TBCL-Übersicht, in welchem die Adresse der eine bestimmte Endstelle bedienenden Pufferbetriebstabelle sich befindet, wird durch Addieren der Adresse der Übersicht TBCL zu der Kanalnummer im X-Register gewonnen. Die Adresse der die Endstelle 108 bedienenden Pufferbetriebstabelle wird durch folgenden Befehl in das Y- und Z-Register eingegeben.
005 AWK A. STATUS, Z
Bei diesem Befehl wird die nach rechts eingestellte, im K-Register enthaltene Blocknummer zu der im Z-Register enthaltenen Pufferbetriebstabellen-Adresse zuzüglich eines Index zu den Zustandswörtern in der Tabelle addiert. Die Summe der Blocknummer und der Pufferbetriebstabellen-Adresse zuzüglich des Index im K-Register gibt den Ort des Zustandswortes für den übertragenen Block in der richtigen Pufferbetriebstabelle (Fig. 10) an. Entsprechend Fig. 10 ist ein Zustandewort für jeden übertragenen Block vorhanden. Beispielsweise enthält das Zustandswort für den Block 1 eine geordnete Darstellung von Bits zur Angabe derjenigen Positionen im Block, die von den Nachrichtenpuffern niedriger oder hoher Priorität beigesteuerte Datenwörter enthalten. Wenn keiner der Puffer ein Datenwort zu einer gegebenen Wort-
009882/1923
position im Block 1 beigetragen hat, sind die Bit-Positionen in "STATUS LqC1 und "STATUS Hl", die der gegebenen Wortposition entsprechen, beide 11O". Wenn diese beiden Bit-Positionen "θ11 sind, ist ein Leerwort von der Sende stelle übertragen worden.
006 KM TEMP4
Die Adresse des Zustandswortes im K-Register wird im Speicher an der Stelle TEMP4 festgehalten.
007 MK M. STHI, K, PS
008 HC El STHI
Die Maske zum Lesen der Zustandsbits im Puffer hoher Priorität wird in das L-Register gegeben. Das Zustandswort an der im K-Register angegebenen Adresse wird mit dem Inhalt des L-Registers produktmaskiert, und das Ergebnis, d. h., die Zustandsbits hoher Priorität des Zustandswortes, werden in das K-Register eingeschrieben und dann nach rechts eingestellt.
009 KM TEMPI
Die Zustandsbits hoher Priorität bezüglich des übertragenen Blocks werden im Speicher an der Stelle TEMPI festgehalten.
010 HPMK D. ERR, O, F
Das Register F enthält die Adresse der Speicherstelle TEMP. Die Zustandsbits hoher Priorität im K-Register werden so nach links verschoben, daß sie mit der Position der an der Stelle TEMP gespeicherten Fehlerbits zusammenfallen. Dann ersetzt das logische Produkt
009882/1923
der Fehlerbits in TEMP und der im K-Register enthaltenen Zustandsbits hoher Priorität den Inhalt des K-Registers. Demgemäß enthält das K-Register jetzt ein Fehlerüberwachungswort, dessen "l"-Bits Fehler in Datenwörter kennzeichnen, die vorher von dem sendeseitigen Puffer hoher Priorität übertragen worden sind.
011 HC D.ERR Dieser Befehl stellt die Fehlerbits nach rechts ein.
012 WL 24
013 LM TEMP3
Diese Befehle löschen das L-Register und die Speicherstelle TEMP3 für den Fall, daß keine Fehler in dem vorher übertragenen Block festgestellt worden sind.
014 MERR TZRFZ RETH
Wenn das K-Register keine Ml"-Werte enthält, wodurch angegeben wird, daß keine Fehler in dem übertragenen Block vorhanden waren, findet ein Sprung auf die Stelle RETH statt, d.h., den Befehl 018. Wenn andererseits das K-Register einen 11I11-Wert enthält, so wird die Position der am weitesten rechts stehenden nllf im F-Register gespeichert und diese am weitesten rechts stehende "l" im K-Register jsu Null gemacht.
015 KM TEMP2
Das im K-Register enthaltene, auf den neuesten Stand gebrachte Fehler«
ÖÖ9882/1923
Überwachungswort, d. h. , das die restlichen Fehler «-"Flaggen" enthaltene Wort, wird im Speicher an der Stelle TEMP2 gespeichert.
016 FM TEMP3
Die Position des ersten fehlerhaften Datenwortes wird vom F-Register übertragen und im Speicher an der Stelle TEMP3 gespeichert.
017 WL O4F
Der Inhalt des F-Registers wird zum L-Register übertragen, so daß dieses die Position des ersten fehlerhaften Datenwortes enthält, wenn der Befehl 021 ausgeführt wird.
018 RETH MK TEMPI
Die Zustandsbits für den Puffer hoher Priorität werden in das K-Regi« ster eingegeben.
019 TZRFZ -
Wenn die Zustandsbits im K-Register angeben, daß keine Wörter vom sendeseitigen Puffer hoher Priorität übertragen worden sind, erfolgt ein Sprung auf die symbolische Speieherstelle N0HI. Nimmt man an, daß einige Wörter übertragen worden sind, so wird die Position des im K-Register am weitesten rechts stehenden fll"~Bit im F-Register gespeichert, das am weitesten rechts stehende "lu«-Bit wird auf Null gebracht und der Befehl 020 ausgeführt.
020 KM TEMPI
Die Zustandsbits für den sendeseitigen Puffer hoher Priorität werden
009882/1923
im Speicher in der Speicherstelle TEMPI festgehalten.
021 SLR OjF
Vom Inhalt des F-Registers, also der Position des ersten, vom Puffer hoher Priorität übertragenen Datenwortes, wird der Inhalt des L-Registers abgezogen, der die Position des ersten fehlerhaften, vom Puffer hoher Priorität übertragenen Wortes angibt. Wenn die Bit-Positionen des L- und F-Registers übereinstimmen, so ist das Ergebnis Null, und die C-Steuer-Flipflops werden entsprechend eingestellt. Wenn die C-Steuer-Flipflops so eingestellt sind, daß sie arithmetisch den Wert Null angeben, erfolgt ein Sprung auf die Stelle LMESS (Befehl 028), kurz nachdem der Befehl 022 ausgeführt worden ist. Wenn die Bit-Positionen nicht übereinstimmen, wodurch angezeigt wird, daß das erste, vom Puffer hoher Priorität übertragene Wort nicht fehlerhaft war, zeigen die C-Steuer-Flipflops einen arithmetisch von Null abweichenden Wert an, und es erfolgt kein Sprung, wenn der Befehl 022 ausgeführt wird.
022 TCAZ LMESS
Es wird ein Sprung auf die symbolische Speicherstelle LMESS (Befehl 028) durchgeführt, wenn die C-Steuer-Flipflops arithmetisch Null sind, d. h., der Sprung erfolgt, wenn die Bit-Positionen übereinstimmen. Die Übereinstimmung gibt an, daß die vom Puffer hoher Priorität übertragene Nachricht fehlerhaft war und am Ende der Liste neu beladen werden muß. Wenn andererseits die Bit·Positionen nicht überein-
009882/1923
stimmen, ist diese Eintragung nicht fehlerhaft, und da angenommen worden ist, daß die Nachrichten hoher Priorität nur aus einzelnen Wörtern bestehen, kann die Nachricht aus der· Liste entfernt werden, da sie richtig übertragen worden ist.
023 MZ pHI, Y
Da die Nachricht vom Puffer hoher Priorität richtig übertragen worden ist, wird der Quittungs-Zeiger, d.h., die Adresse des "Verkettungswortes11 des diese Nachricht enthaltenden Nachrichtenpuffers in das Z-Register gegeben. Die Stelle des Quittungs-Zeigers wird berechnet, indem die allgemeine Verschiebung für Quittungs-Zeiger
hoher Priorität, also pHI, zu der Adresse des entsprechenden, im Y-Register gespeicherten Pufferbetriebsblocks addiert wird. Fig. zeigt, daß der Quittungszeiger hoher Priorität in demjenigen Wort gespeichert ist, das um den Betrag _HI gegen die Anfangs adr es se Y(I) der Pufferbetriebstabelle nach Fig. 4A verschoben ist.
024 ENTJ RSINGE
025 WK ρΗΙ,Υ
Die Befehle 024 und 025 werden ausgeführt, wenn die Einzelwortnachricht richtig übertragen worden ist. Der Befehl 024 gibt die Steuerung an das Unterprogramm RSINGE (Befehl 159) nach Ausführung des Befehls 025 ab, der die Adresse des Quittungs-Zeigers für Nachrichten hoher Priorität (pHI zuzüglich des Inhaltes von Y) in das
009882/1923
K-Register. .Das J-Register wird durch den Befehl 026 auf die Bückgabeadresse eingestellt. Das Unterprogramm RSINGE gibt den Naehrichtenpuffer, der die Einzelwortnachricht gespeichert hat, freia indem er ihn auf die freie Verkettungsliste für diese Puffer zurückgibt und dann zum Befehl 026 zurückkehrt,
026 ENTJ RETH
027 ML TEMP3
Diese Befehle veranlassen eine Rückkehr auf die Spei eher stelle RETH (Befehl 018), wobei das L-Register mit der Position des nächsten, als fehlerhaft festgestellten Wortes eingestellt wird.
Die folgenden Befehle werden ausgeführt, wenn für eine bestätigte Nachricht festgestellt wird, daß sie fehlerhaft übertragen worden ist. Diese Befehle geben die Nachricht am Ende der Liste von zu übertragenden Nachrichten neu ein.
028 LMESS MZ ρΗΙ,Υ
Der Quittungszeiger, d.h., die Adresse des ersten Wortes in dem diesem Kanal zugeordneten Nachrichtenpuffer, wird in das Z-Register eingegeben. Das erste Wort jedes Nachrichtenpuffers ist das Verkettungswort LINK, das die Adresse des ersten Wortes des nächsten Nachrichtenpuffers für diesen Kanal enthält.
029 MC O, Z
009882/1923
Das LINK-Wort im nächsten Nachrichtenpuffer wird in das B-Register eingegeben, und die C-Steuer-Flipflops werden entsprechend eingestellt.
030 TCAZ * N0VHGA
Es erfolgt ein Sprung auf die symbolische Speicherstelle NOCHGl (Befehl 036), wenn die C-Steuer-Flipflops arithmetisch Null angeben, d.h., das LINK-Wort ist Null, wodurch angezeigt wird, daß für diesen Kanal keine weiteren Nachrichten auf der Liste sind.
031 BM ρΗΙ,Υ
Da das LINK-Wort nicht Null ist, wodurch angezeigt wird, daß wenigstens eine weitere Nachricht für diesen Kanal vorhanden ist, wird das LINK-Wort im Quittungs-Zeiger gespeichert.
032 EZEM O, Z
Das LINK-Wort in demjenigen Nachrichtenpuffer, der das fehlerhafte Wort zu dem übertragenen Block beigesteuert hat, wird auf Null ge- * bracht.
033 MF aHLY
Der Lade-Zeiger des Nachrichtenpuffers hoher Priorität für diesen Kanal wird in das F-Register gegeben.
034 ZM O, F, S
Die Adresse desjenigen Nachrichtenpuffers, welcher die fehlerhafte Nachricht zu dem übertragenen Block beigesteuert hat, wird, in das
009882/1923
erste oder LINK-Wort des durch den Ladezeiger LOAD gegebenen Nachrichtenpuffers eingegeben. Außerdem wird das L-Register für eine mögliche Verwendung bei dem Befehl 021 gelöscht.
035 ZM aHI,Y
Der LOAD-Zeiger wird mit der Adresse des LINK-Wortes desjenigen Nachrichtenpuffers auf den neuesten Stand gebracht, der die neu zu übertragende Nachricht enthält. I
036 N0CHG1 MF ßHI,Y
Der Inhalt des Sendezeigers SEND hoher Priorität wird in das F-Register gegeben. Die C-Steuer-Flipflops geben an, ob der SEND-Zeiger auf Null eingestellt worden ist oder nicht.
037 TCAU NjÖCHG
Wenn der SEND-Zeiger nicht auf Null eingestellt worden ist, was bedeutet, daß wenigstens eine Nachricht im Augenblick auf eine Übertragung wartet, erfolgt ein Sprung auf die Speicher stelle N0CHG (Befehl g 048). Wenn andererseits der SEND-Zeiger auf Null eingestellt ist, muß der SEND-Zeiger begonnen werden und diesen Pufferbetriebsblock mit der aktiven Verkettungeliste hoher Priorität verketten, um die Neuübertragung der einen Fehler enthaltenden Nachricht sicherzustellen.
038 ZM ßHI.Y
Die LINK*Wortadresee des die neu zu übertragende Nachricht enthaltenden Puffere wird in den SEND-Zeiger hoher Priorität eingegeben.
009882/1923
03 9 EZEM LINKHI, Y
Das Vorwärts-Verkettungswort wird dann auf HTuIL gebracht, was bedeutet, daß dieser Puffer sich jetzt am Ende der Liste befindet.
040 WF LINKHI, Y
Die Adresse des Vorwärts-Verkettungswortes hoher Priorität (vgl. ^ Fig. 11) wird in das F-Register eingegeben.
041 MK HACT+1
Der Inhalt des zweiten Wortes der Kopf-(Aufangs)Zelle für die aktive verkettete Liste hoher Priorität (Fig. 8) des Pufferbetriebsblocks wird
ff
in das K-Register eingegeben. Die Speicher-steile HACT+1 enthält die Vorwärts-Verkettungsadresse hoher Priorität für den letzten Pufferbetriebsblock auf der verketteten Liste hoher Priorität, und die Speicherstelle HACT enthält die Vorwärts-Verkettangsadresse des ersten Pufferbetriebsblocks der Liste. Die Anfangszeile wird von dem SEND» Unterprogramm zur Feststellung und Übertragung von Nachrichten zum Sender benutzt. Wenn der Inhalt von HACT+1 Null ist, dann ist die Liste leer.
042 TKAU HÜTEST
Der Sprung auf N0TFST (046) erfolgt, wenn die aktive Liste nicht leer ist.
043 FM ". HACT
009882/1923
Die Verkettungswortadresse hoher Priorität für den gerade bearbeiteten Pufferbetriebsblock wird in das erste Wort der Anfangs ζ eile der aktiven Verkettungsliste hoher Priorität eingegeben.
044 PM - HACT+1
Die gleiche Adresse wird in das zweite Wort der Anfangszelle eingegeben, was gleichzeitig bedeutet, daß dieser Pufferbetrieb sblock der einzige auf der Liste ist.
045 T NßCHG Das Programm springt jetzt auf N0CHG (Befehl 048)
046 N^TFST FM O; K
Vom Befehl 042 wird in die Speicher stelle NJÖTFST eingetreten, wenn wenigstens ein weiterer Pufferbetriebsblock mit der aktiven Verkettungsliste hoher Priorität verkettet ist. Der Befehl 046 bringt die Vorwärts-Verkettungsadresse dieses Pufferbetriebsblocks zu der Vorwärts-Verkettungsadresse des vorher letzten Gliedes in der aktiven Verkettungsliste hoher Priorität.
047 FM HACT+1
Der Befehl 047 überträgt die Vorwärts-Verkettungsadresse zum zweiten Wort der aktiven Anfangszelle, wodurch die Identität des nunmehr letzten Gliedes in der Liste gespeichert wird.
048 NßCHG ENTJ MEER
Es erfolgt ein Sprung auf die Speicher stelle MERR (Befehl 014), nachdem der Befehl 049 ausgeführt ist.
009882/1923
049 MK TEMP2
Dieser Befehl bringt das vorher auf den neuesten Stand gebrachte Fehlerüberwachungswort zum K-Register zurück. Die Befehle 011 bis 049 werden erneut ausgeführt, bis der Befehl 019 feststellt, daß keine ungeprüften Eintragungen in einem Nachrichtenpuffer hoher Priorität vorhanden sind, der ein Wort zu dem übertragenen Block beigesteuert
* hat. Wenn alle diese Puffer geprüft sind, veranlaßt der Befehl 019
einen Sprung zum Befehl 050.
Es werden jetzt Prüfungen auf Fehler in allen Wörtern des Blocks durchgeführt, die von dem Puffer niedriger Priorität übertragen worden sind.
Es sei daran erinnert, daß die Speicherstelle TEMP im Speicher die aus dem. BLOCK-Wort gewonnenen Fehlerbits enthält, daß die Speicher-. stelle TEMP4 die Adresse des Zustandswortes für den Block beinhaltet, daß das Y-Register die Adresse der Pufferbetriebstabelle für den bearbeiteten Signalgabekanal enthält und daß sich im X-Register die Nummer des Signalgabekanals befindet.
050 NOHI MK TEMP4
Die Verarbeitung der Befehle 050 bis 085 ist in den Fig. 16—1*7 gezeigt. Das Zustandswort für den übertragenen Block wird in das K-Register eingegeben. Dieser Befehl wird nach dem Befehl 019 ausgeführt, wenn
009882/1923
der Befehl Ol 9 angibt, daß keine Wörter in dem augenblicklichen, vom Puffer hoher Priorität übertragenen Datenblock vorhanden war.
051 MK M. STLß, K, PS
052 HC D. STL0
Der Befehl 051 schreibt die Maske für die Zustandsbits niedriger Priorität des' Zustandswortes für den übertragenen Block (Fig. 10) in das L^-Register. Das Zustandswort für den Block im K-Register, das mit dem Inhalt des L-Registers produktmaskiert worden ist, ersetzt den Inhalt des K-Registers. Dieses enthält jetzt die Zustandsbits niedriger Priorität des Zustandswortes. Der Befehl 052 schiebt die Zustandsbits niedriger Priorität im K-Register nach rechts.
053 KM TEMPI
Die Zustandsbits niedriger Priorität werden im Speicher an der Stelle TEMPI aufgezeichnet.
054 HPMK D. ERR, TEMP Das logische Produkt der aus der Speicherstelle TEMP gewonnenen Fehlerbits und der Zustandsbits niedriger Priorität im K-Register ersetzt den Inhalt des K-Registers. Dieses enthält jetzt das Fehlerüberwachungswort für Nachrichten, die von den Puffern niedriger Priorität übertragen worden sind.
055 HC D.ERR
Das Produkt der Zuetandsbite niedriger Priorität und der Fehlerbits
009882/1923
wird nach rechts eingestellt.
056 MMERR TZRFZ RETL
Wenn das Fehlerüberwachungswort im K-Register irgendwelche 11I"-Werte #nthält, die fehlerhafte, von dem Puffer niedriger Priorität übertragene Wörter angeben, wird die Stelle der am weitesten rechte stehenden "1" in das F-Register gegeben, die im K-Register am weitesten rechts stehende "l" wird auf Null eingestellt und der nächste Befehl 057 wird ausgeführt. Wenn das K-Register keine "l"-Werte enthält, erfolgt ein Sprung auf die Speicherstelle RETL (Befehl 060).
057 KM ΊΈΜΡ2
Das auf den neuesten Stand gebrachte Fehlerüberwachungswort wird in der Speicherstelle TEMP2 aufgezeichnet.
058 FM TEMP3
Der Inhalt des F-Registers, der die Position des ersten fehlerhaften \ Wortes vom Puffer niedriger Priorität in dem übertragenen Block an
gibt, wird in TEMP3 gespeichert.
059 WL O, F
Der Inhalt des F-Registers wird in das L-Register gebracht.
060 RETL MK TEMPI
Es werden jetzt die durch den Befehl 053 festgehaltenen Zustandsbits niedriger Priorität in das K-Register eingeschrieben.
061 TZRFZ ' N0L p
009882/1923
Wenn keine Zustandsbyte niedriger Priorität, d.h., "l"-Werte, im K-Register mehr vorhanden sind, erfolgt ein Sprung auf N^)Lß (074). Wenn weitere Wörter vorhanden sind, wird stattdessen der Befehl 062 ausgeführt.
062 KM TEMPI
Dieser Befehl wird ausgeführt, wenn Wörter im Puffer niedriger Priorität zurückgeblieben sind. Die Zustandsbits für den Puffer niedriger Priorität werden im Speicher festgehalten.
063 SLR O, F-
Von der durch den Befehl 061 im F-Register gespeicherten Position in dem Block des ersten, vom Puffer niedriger Priorität übertragenen Wortes wird die Position des ersten, fehlerhaft übertragenen Wortes abgezogen. Das letztgenannte Wort ist durch den Befehl 059 im L-Register gespeichert worden. Wenn die Positionen übereinstimmen, ist das Ergebnis Null, und die C-Steuer-Flipflops werden entsprechend einge- stellt.
064 TCAZ MMESS
Wenn das Ergebnis des Vergleichs Null ist, bedeutet dies, daß das erste Wort aus dem Puffer niedriger Priorität fehlerhaft übertragen worden ist, und es erfolgt ein Sprung auf MMESS (Befehl 105). Wenn das Ergebnis nicht Null ist, bedeutet dies, daß das Wort vom Puffer niedriger Priorität richtig übertragen worden ist, und es wird der
009882/1923
Befehl 065 ausgeführt.
065 WB RETL
066 BM TEMP5
Diese Befehle speichern RETL als Rückgabeadresse für eine mögliche
spätere Verwendung bei den Befehlen 094 oder 157.
067 MZ pLO,Y
Der Quittungs-Zeiger (Fig. 9) für die Nachrichtenpuffer niedriger Priorität wird in das Z-Register eingegeben. Der Zeiger stellt die Adresse des ersten Wortes> d. h, t des LINK-Wortes, im ersten Nachrichtenpuffer niedriger Priorität dar, der ein Datenwort zu dem übertragenen Block beigesteuert hat, welcher dem über den Zeichengabekanal empfangenen BLOCK-Wort entspricht.
068 MC Q,Z
Das Vorzeichen-Bit in dem LINK-Wort an der angegebenen Adresse im Z-Register stellt die C-Steuer-Flipflops ein. Wenn das Vorzeichen-Bit des Verkettungswortes eine "1" (Fig. 13) ist, bedeutet dies, daß das gerade als richtig festgestellte Wort Teil einer Vielwortnachricht ist, und es erfolgt ein Sprung WMULTI (Befehl 085), naehdemder Befehl 069 ausgeführt ist.
069 TCM WMULTI
Der Befehl 069 bewirkt einen Sprung auf den Befehl 085, wenn die
009802/1923
C-Stesaer-Flipflops auf "Minus" eingestellt sind, d. h., wenn das Vorxeidien-Bit eine "l" war. .
070 ENTJ RSINGE
071 WK
Die Befehle 070 und 071 werden ausgeführt, wenn die EinzelwortnachrfcM richtig übertragen worden ist. Der Befehl 070 übergibt die Steuerung am das Unterprogramm RSINGE (Befehl 159), nachdem der Befehl ©71 ausgeführt ist, der die Adresse des Quittungs-Zeigers für Nachrichten niedriger Priorität (pLß zuzüglich des Inhaltes von Y) in das K-Äegister bringt. Das J-Register wird auf die Rückgabe adr es se eingestellt ^Befehl 072). Das Unterprogramm RSINGE gibt den Nachrichteiapaiffer, der die Einzelwortnachricht gespeichert hat, frei, indem er Ihn. zurück gibt zu der freien Verkettungsliste für diese Puffer, und kehrt dann zum Befehl 072 zurück.
072 ENTJ RETL
Es erfolgt ein Sprung auf RETL (Befehl 060), nachdem der Befehl 073 auegeiiihrt ist.
073 ML TEMP3
Die Position des nächsten Wortes des fehlerhaft empfangenen Blocks wird γόη TEMP3 zum L-Register gegeben. Dann erfolgt ein Sprung auf den Befehl 060, wobei sich diese Information im L-Register befindet.
074 tiphP MZ TEMP4
009882/1923
Die Adresse des Zustandswortes für den übertragenen Block wird in das Z-Register eingeschrieben.
075 EZEM O, Z
Dieser Befehl bringt das an der durch das Z-Register angegebenen Adresse gespeicherte Wort auf Null, d.h., das Zustandswort wird auf Null gebracht.
076 MZ
Dieser Befehl gibt den Quittungs-Zeiger für den Puffer niedriger Priorität in das Z-Register.
077 TCAU RETURN
Wenn das durch den Befehl 076 eingestellte C-Steuer-Flipflop nicht Null ist, ist das ACK-Unterprogramm entsprechend der vorliegenden Erfindung vollständig ausgeführt, und es erfolgt ein Sprung auf RETURN (Rückgabe), eine symbolische Stelle im Haupt- oder Ausführungs-P Steuerprogramm von Verarbeitungsbefehlen, die die Datenverarbeitungsanlage 300 ausführen, Ina anderen Fall wird als nächstes der Befehl 078 ausgeführt.
078 MZ pHI'Y
Der Quittungs-Zeiger für den Puffer hoher Priorität wird in das Z-Register gegeben. Wenn der Zeiger hoher Priorität nicht Null ist, was bedeutet, daß weitere Nachrichten zu quittieren sind, werden die C-Steuer-Flipflops so eingestellt, daß sie nicht Null anzeigen.
009882/1923
079 TCAU RETURN
Wenn das Vorzeichen-Bit des Quittungs-Zeigers entweder niedriger oder hoher Priorität eingestellt ist, erfolgt ein Sfkrung auf RETURN. Wenn das Vorzeichen-Bit nicht eingestellt-ist, wird als nächstes der Befehl 080 ausgeführt.
080 EZEM TBCL, X
Der Befehl 080 stellt den Inhalt des Wortes in der TBCL-Üb er sieht der Pufferbetriebstabellen (Fig. 6} auf Null ein, die ursprünglich beim Befehl 004 zur Gewinnung der Adresse der Pufferbetriebstabelle (Fig. 9 und 11) befragt worden ist, welche die Zustandswörter und die Lade-, Sende- und Quittungs-Zeiger für die Endstelle 108 enthält.
081 "MZ TBUFE
Dieser Befehl gibt den Inhalt der Anfangszelle TBUFE (Fig. 8) für die Liste von verfügbaren Pufferbetriebstabellen in das Z-Register.
082 ZM LINKHI, Y
Dieser Befehl gibt die beim Befehl 081 erhaltene Adresse in die LINK-Wortadressenstelle hoher Priorität ein, die durch das mit dem Parameter LINKHI indizierte Y-Register angegeben ist. Das Y-Register enthält zu diesem Zeitpunkt die Adresse der im Augenblick bearbeiteten Pufferbetriebstabelle.
083 YM TBUFE
084 T RETURN
009882/1923
Mit diesen Befehlen wird die Adresse der Pufferbetriebstabelle in die Anfangszelle der Liste von verfügbaren Pufferbetriebstabellen eingegeben, und die Verarbeitung wird, wie beschrieben, nach Ausführung des Befehls 077 zurückgegeben.
Die folgenden Befehle werden ausgeführt, wenn festgestellt worden ist, daß das richtig übertragene Wort Teil einer Vielwortnachricht ist.
085 WMULTI MK 1, Z
Das dem LINK-Wort folgende Wort, d. h., das zweite- Wort in dem sendeseitigen Puffer (Fig. 13) wird in das K-Register eingegeben, indem zu der aus dem Z-Register gewonnenen Adresse der Wert 1 addiert wird.
086 H 1
Die Verarbeitung der Befehle 086 bis 132 und 134 bis 143 ist in Fig. gezeigt. Das zweite Wort aus dem sendeseitigen Puffer wird im K-Register zur Beseitigung des Vorzeichen-Bit um eine Bit-Position nach links verschoben.
087 H -D. ACK-I
088 WL M. WC
Der Inhalt des K-Registers wird um den durch D. ACK+1 angegebenen Betrag nach rechts verschoben, so daß das ACK-FeId die am weitesten rechts stehende Position einnimmt. Die Maske M. WC zum Lesen des
009882/19 23
Wortzählwertes wird in das L-Register eingegeben. Bei dem Format des in Fig. 13 gezeigten Vielwort-Nachrichtenpuffers enthält das dem LINK-Wort folgende Wort drei Felder. Das "SEND"-Feld belegt die niedrigststelligen Bits des Wortes und wird während der Ausführung des SEND-Unterprogramms benutzt, um die Position des nächsten, zum Sender 108-2 (Fig. 1) zu gebenden Datenwortes in diesem Puffer zu speichern. Das nächste Feld "ACK" dient als Zähler und gibt an, wieviele Wörter in diesem Nachrichtenpuffer bestätigt worden sind. Das dritte Feld ist das Vorzeichen-Bit 22, das, wenn es auf 11I" eingestellt ist, angibt, daß der Vielwort-Nachrichtenpuffer ein fehlerhaft übertragenes Wort enthält.
089 AWK 1
Das ACK-FeId wird um "1" weitergeschaltet, um anzugeben, daß ein weiteres Wort der Vielwortnachricht bestätigt worden ist.
090 CMK 3, Z, PL
Das Wort im Speicher, das sich drei Wörter hinter der Adresse im Z-Register befindet, d. h., drei Wörter hinter dem LINK«Wort# und mit den Wort-Zählwert-Bits im L-Register produktmaskiert ist, wird vom Inhalt des K-Registers abgezogen. Die C-Steuer-Flipflops werden durch das Ergebnis der im K-Register verbleibenden Differenz eingestellt.
091 TCGE MEND
009882/1923
Es erfolgt ein Sprung auf das Unterprogramm MEND (Befehl 096)4 der die Vielwortnachricht freigibt, wenn der augenblickliche Zustand der C-Steuer »Flipflops größer oder gleich arithmetisch Null ist. Dies ist dann der Fall, wenn der Vergleich des Feld-»Zählwertes in dem Wort-Zählwert W. C. und der Zählwert im ACK-FeId angibt, daß alle Wörter der Nachricht als richtig empfangen bestätigt worden sind. Wenn jedoch der Vergleich negativ ausfällt^, wird der Befehl 092 ausgeführt.
092 HMB P. ACK, I3ZA
Die ACK-Bits im K-Register werden erneut verschoben, so daß sie die richtige Position einnehmen, wenn sie beim Befehl 093 zum zweiten Wort des Vielwort-Nachrichtenpuffers zurückgegeben werden. Das Z-Register beinhaltet die Adresse des ersten oder LINK-Wortes des Vielwort-Nachrichtenpuff er s« ZA plus 1 ist diese Adresse oder die Adresse des zweiten Wortes in dem Yielwort-Nachrichtenpuffer. Die Nachricht, die sich im Augenblick im zweiten Wort des Vielwort«· Nachrichtenpuffers befindet^ wird in das B»Register eingegeben.
093 KM M. ACK-Z41-ES Dieser Befehl gibt die Maske "MOACK!8 in das L-Registera ersetzt diejenigen Bits des B-Registers, die durch das Vorhandensein von s>l!S«Werten in entsprechenden Positionen des L-Registers angegeben
009882/192 3
werden, mit dem Inhalt entsprechender Bit-Positionen des K-Registers und speichert das Ergebnis an der durch das Z-Register angegebenen Adresse. Es werden also die Bits des ACK-Feldes des Wortes im B-Register durch den Inhalt des K-Registers auf den neuesten Stand gebracht und dann erneut in das zweite Wort des Vielwort-Nachrichtenpuffers eingeschrieben. I
094 . ENTJ TEMP5,M
Es erfolgt ein Sprung auf den Inhalt der Speicherstelle TEMP5, die entweder MMERR (Befehl 056) oder RETL (Befehl 060) enthält, nachdem der nächste Befehl ausgeführt ist.
095 ML TEMP3
Dieser Befehl bringt in das L-Register diejenigen Bits zurück, die die Position des nächsten fehlerhaften Wortes in dem übertragenen Block angeben, falls solche Wörter übriggeblieben sind, so daß der
Befehl 060 mit einem auf den neuesten Stand gebrachten Inhalt im L- . -
Register wiederholt werden kann.
Der folgende Befehl 096 wird ausgeführt, wenn der Befehl 091 angibt, daß alle Wörter einer Vielwortnachricht bestätigt worden sind. Als Vorsichtsmaßnahme wird jedoch das Vorzeichen des zweiten Wortes des Vielwortblockes beim Befehl 096 geprüft, um festzustellen, ob das zweite Wort im Vielwort-Nachrichtenpuffer als fehlerhaftes Wort
009882/1923
markiert worden ist.
096 MEND MC 1, Z
097 TCM RLOAD
Der Befehl 096 liest das Vor ζ eichen·» Bit des zweiten Wortes, und wenn das Vorzeichen-Bit eine "1" ist und angibt, daß eine Nachricht ^ im Vielwort-Puffer fehlerhaft empfangen worden ist, gibt der Befehl
097 die Steuerung an RLOAD (Befehl 134), der die Nachricht für eine spätere Neuübertragung wieder eingibt.
098 ML . O, Z
Dieser Befehl wird ausgeführt, wenn die Nachricht richtig empfangen worden ist, und gibt das LINK-Wort in das L-Registere Das LINK-Wort ist die Adresse des nächsten Einzelwort- oder Vielwort-Nachrichtenpuffers, der den gemeinsamen Signalgabekanal bedient.
099 LM pLO,Y
Dieser Befehl gibt das LINK-Wort in den Quittungs-Zeiger. Nachdem dieser Zeiger durch die Ausführung dieses Befehls auf den neuesten Stand gebracht worden ist, ist die Liste von zu bestätigenden Nachrichten abgeschlossen, nachdem aus der Liste eine vollständig bestätigte Vielwortnachricht entfernt worden ist.
100 ML MULTE
Dieser Befehl bringt den Inhalt der Anfangszelle MULTE (Fig. 8) in das L-Register. MULTE ist die Anfangszelle einer verketteten Liste
009882/1923
von Adressen von Nachrichtenpuffern, deren Inhalt vollständig bestätigt worden ist. -
101 ZM MULTE
Dieser Befehl bringt die Adresse desjenigen 'Vielwort-Nachrichtenpuffers, dessen Datenwörter alle gerade bestätigt worden sind, in die Anfangszelle MULTE.
102 LM Ό, Ζ
Die durch den Befehl 100 in das L-Register eingegebene Adresse wird im LINK-Wort desjenigen Nachrichtenpuffers gespeichert, dessen Adresse im Z-Register angegeben ist.
103 ENTJ RETL
104 ML TEMP3
Der Befehl 103 gibt die Steuerung an den RETL-Befehl 060 zurück, nachdem der Befehl 104 ausgeführt ist. Der Befehl 104 stellt im L-Register diejenigen Bits wieder her, die die Position des nächsten Wortes der fehlerhaften Wörter im übertragenen Block angeben.
Die folgenden Befehle werden ausgeführt,, wenn die Ausführung des Befehls 064 zeigt, daß eine von einem Puffer niedriger Priorität übertragene Nachricht fehlerhaft ist. Es muß jetzt eine Prüfung erfolgen, ob die Nachricht eine Einzelwort- oder eine Vielwortnachricht war.
009882/1923
105 MMESS MZ pLO,Y
Dieser Befehl, in den aus dem Befehl 064 eingetreten wird, überträgt . den Quittungs-Zeiger für die Nachrichtenpuffer niedriger Priorität in das Z-Register. Der Zeiger stellt die Adresse des ersten oder LINK-Wortes im ersten Nachrichtenpuffer niedriger Priorität für den von der Anlage 300 bedienten Zeichengabekanal dar.
106 WB MMERR
107 BM TEMP5
Diese Befehle speichern MMERR als Rückgabeadresse für eine mögliche spätere Verwendung bei den Befehlen 094 oder 157.
108 MC O, Z
Unter Verwendung des Inhaltes des Z-Registers als Adresse wird das LINK-Wort gewonnen und in das B-Register eingegeben. Die C-Steuer· Flipflops werden durch das Vorzeichen-Bit 22 des LINK-Wortes ein« F gestellt.
109 TCM WMERR
Wenn das Vorzeichen-Bit des LINK-Wortes für diese Nachricht eine "1" ist, handelt es sich um eine Vielwortnachricht, und es erfolgt ein Sprung auf die Spei eher st eile WMERR (Befehl 130).
110 TRAZ ONLYMl, B
Der Befehl 110 wird ausgeführt, wenn der Befehl 109 zeigt, daß das
009882/1923
fehlerhafte Wort eine Einzelwortnachricht ist. Wenn die C-Steuer-Flipflops bei Ausführung des Befehls 108 auf arithmetisch Null eingestellt worden sind, bedeutet dies, daß das ganze LINK-Wort in dem Einzelwort-Nachrichtenpuffer Null war und daß demgemäß der Einzelwort-Nachrichtenpuffer der letzte Puffer niedriger Priorität für den im Augenblick von der Anlage 300 bedienten Zeichengabekanal ist. Wenn dies der letzte Nachrichtenpuffer ist, erfolgt ein Sprung auf ONLYMl (Befehl 116).
111 BM pLO,Y
Dieser Befehl wird ausgeführt, wenn das LINK-Wort in dem Nachrichtenpuffer nicht Null ist. Das LINK-Wort wird in den Quittungs-Zeiger (Fig. 9) gegeben. Der Quittungs-Zeiger ist die Adresse des nächsten Nachrichtenpuffers, der den gemeinsamen Zeichengabekanal in der Endstelle 108 bedient.
112 EZEM O, Z
Dieser Befehl stellt das alte LINK-Wort, d.h., das erste Wort desjenigen Nachrichtenpuffers, der das fehlerhaft festgestellte Datenwort enthält, auf Null und entfernt dabei den Nachrichtenpuffer aus der ver«· ketteten Liste von Puffern, die auf eine Bestätigung ihrer Datenwörter warten.
113 MF aLO,Y
Dieser Befehl bringt den Lade-Zeiger für die Puffer niedriger Priorität
00 98 82/1923
in das F «Register. Der Lade-Zeiger ist die Adresse des LINK»Wortes eines Nachrichtenpuffers, dessen Inhalt erneut über den gemeinsamen Zeichengabekanal zu übertragen ist.
114 ZM O, F
Dieser Befehl gibt den Inhalt des Z-Registers., d.h., die Adresse des Einzelwort-Nachrichtenpuffers, der das fehlerhafte Wort enthält, in das durch den Lade-Zeiger im F~Register angegebene LINK-Wort.
115 ZM aLO,Y
Dieser Befehl bringt die Adresse des Nachrichtenpuffers, der das fehlerhafte Wort enthält, in den Lade-Zeiger (Fig. 9). Die Einzelwortnachricht ist jetzt erneut in einen Nachrichtenpuffer in der Liste von Puffern eingegeben worden, die erneut über den Zeichengabekanal zu übertragende Datenwörter enthalten.
116 ONLYMl MF ßLO,Y
W Der Inhalt des SEND-Zeigers niedriger Priorität wird in das F-Register eingeschrieben. Die C-Steuer-Flipflops geben an, ob der SEND-Zeiger auf Null eingestellt war oder nicht.
117 TCAU ONLYM
Wenn der SEND-Zeiger nicht auf Null eingestellt war, so daß wenigstens eine Nachricht im Augenblick auf eine Übertragung wartet, dann erfolgt ein Sprung auf die Speicherstelle ONLYM (Befehl 128). Wenn andererseits der SEND-Zeiger auf Null eingestellt ist, muß er in
00988 2/1923
Betrieb genommen werden, und dieser Pufferbetriebsblock muß mit der aktiven Verkettungsliste niedriger Priorität verkettet werden, ' um die erneute Übertragung der einen Fehler enthaltenden Nachricht sicherzustellen.
118 ZM ßLO,Y
Die LINK-Wortadresse des Nachrichtenpuffers, der die neu zu übertragende Nachricht enthält, wird in den SEND-Zeiger niedriger Priorität eingegeben.
119 EZEM LINKL0,Y
Das Vorwärts-LINK-Wort wird auf Null gebracht, was bedeutet, daß dieser Puffer sich jetzt am Ende der Liste befindet.
120 WF LINKHI, Y
Die Vorwärts-LINK-Wortadresse hoher Priorität (vgl. Fig. 11) wird in das F-Register eingegeben.
121 MK LAGT+1
Der Inhalt des zweiten Wortes der Anfangszelle für die aktive verkettete Liste niedriger Priorität (Fig. 8) des Pufferbetriebsblocks wird in das K-Register eingeschrieben. Die Speicherstelle LACT+1 enthält die Vorwärts-Verkettungsadresse niedriger Priorität des letzten Pufferbetriebsblocks auf der verketteten Liste niedriger Priorität und die Speicherstelle LACT enthält die Vorwärts-Verkettungsadreese des ersten Pufferbetriebeblocks der Liste. Die Anfangszelle
009882/1923
wird bei dem SEND-Unterprogramm zur Feststellung und Übertragung vom Nachrichten zum Sender benutzt. Wenn der Inhalt von LACT+1 Null ist, dann ist die Liste leer.
122 TKAU NALONE
Ein Sprung auf NALONE (Befehl 126) erfolgt, wenn die aktive Liste ^ nicht leer ist.
123 FM LAGT
Die Verkettungswortadresse niedriger Priorität für den gerade verarbeiteten Pufferbetriebsblock wird in das erste Wort der aktiven Verkettungslisten-Anfangszelle niedriger Priorität eingegeben.
124 FM LACT+1
Die gleiche Adresse wird in das zweite Wort der Anfangszelle eingeschrieben, was bedeutet, daß dieser Pufferbetriebsblock der einzige in der Liste ist.
" 125 T ONLYM
Das Programm springt jetzt auf ONLYM (Befehl 128). 126 NALONE FM O, K
In die Speicherstelle NALONE wird aus dem Befehl 122 eingetreten, wenn wenigstens ein weiterer Pufferbetriebsblock mit der aktiven Verkettungsliste hoher Priorität verkettet ist. Der Befehl 126 bringt die Vorwärts-Verkettungsadresse dieses Pufferbetriebsblocks zur Vorwärts-Verkettungsadresse des vorher letzten Gliedes in der aktiven
009882/1923
Verkettungsliste hoher Priorität.
127 FM LACT+1
Der Befehl 127 überträgt die Vorwärts-Verkettungsadresse zum zweiten Wort der aktiven Anfangszelle, wodurch die Identität des neuen, jetzt letzten Gliedes der Liste aufgezeichnet wird.
128 ONLYM ENTJ MMERR
129 MK TEMP2
Der Befehl 128 übergibt die Steuerung an MMERR (Befehl 056), nachdem der Befehl 129 ausgeführt ist. Der Befehl 129 stellt das durch den Befehl 057 auf den neuesten Stand gebrachte Fehlerüberwachungswort im K-Register wieder her.
Die folgenden Befehle werden ausgeführt, wenn durch den Befehl 109 festgestellt worden ist, daß ein Wort einer Vielwortnachricht fehlerhaft ist.
130 WMERR MK 1,Z-
Dieser Befehl gibt den Inhalt des Wortes in dem Vielwort-Nachrichtenpuffer, der dem LINK-Wort folgt, in das K-Register. Die Adresse des LINK-Wortes befindet sich im Z-Register.
131 UWK E. 22
Dieser Befehl stellt das Bit 22 des Datenwortes im K-Register auf 11I" ein, um anzuzeigen, daß die Nachricht in diesem Register als
0 0 9 8 8 2/1923
fehlerhaft festgestellt worden ist. Die folgenden beiden Befehle bewirken einen Sprung auf den Befehl 085 und setzen das Vorzeichen»Bit als Fehler-Flagge im zweiten Wort des Vielwort-Nachrichtenpuffers.
132 ENTJ WMULTI
133 KM 1,Z
134 RLOAD MC M. LINK, Z, PS Das C-Steuer-Flipflop wird auf Null gestellt, wenn die niedrigeren
22 Bits Null sind. " '
135 TCAZ MONLYM
Dieser Befehl bewirkt einen Sprung auf die symbolische Speicherstelle MONLYM (Befehl 144), wenn das LINK-Wort Null ist, wodurch angezeigt wird, daß keine weiteren Nachrichtenpuffer niedriger Priorität mit diesem Pufferbetriebsblock verkettet sind.
136 ML O, Z
Dieser Befehl wird ausgeführt, wenn in dem LINK-Wort von Null abweichende Daten festgestellt werden, was bedeutet, daß der Nachrichtenpuffer mit einem anderen Nachrichtenpuffer verkettet ist. Der Befehl gibt den Inhalt des LINK-Wortes in das L-Register. Das L-Register enthält folglich die Adresse des nächsten Nachrichtenpuffers, der diesen gemeinsamen Zeichengabekanal bedient.
137 - LM pL0,Y
Dieser Befehl überträgt das LINK-Wort aus dem L-Register in den
009882/1923
Quittungs-Zeiger der Pufferbetriebstabelle niedriger Priorität (Fig. 9). Der Quittungs-Zeiger wird auf diese Weise auf den neuesten Stand gebracht und zeigt die Adresse des nächsten Nachrichtenpuffers an, der auf eine Bestätigungsverarbeitung wartet.
138 MK
Der Lade-Zeiger, der im Augenblick in der Pufferbetriebstabelle niedriger Priorität (Fig. 9) gespeichert ist, wird in das K-Register eingegeben. Der Lade-Zeiger stellt die Adresse des ersten oder LINK-Wortes im letzten Nachrichtenpuffer niedriger Priorität dar, der mit diesem Pufferbetriebsblock verkettet ist. Bei Ausführung dieses Befehls wird also in das K-Register die LINK-Wortadresse des letzten Puffers in der Liste von Puffern eingeschrieben, in welchen auf eine Übertragung wartende Wörter eingegeben sind.
139 MB O,K
140 ZM M. LINK, K, ES Die Adresse (im Z-Register) des LINK-Wortes des eine fehlerhafte Nachricht enthaltenden Vielwort-Nachrichtenpuffers wird im LINK-Wort desjenigen Nachrichtenpuffers gespeichert, dessen Adresse durch den Inhalt des K-Registers angegeben wird. Der Befehl 13 9 und die Maske M.LINK (Fig. 12) verhindern, daß das Vorzeichen-Bit im ersten Wort des Nachrichtenpuffers geändert wird. Der vorher letzte Nachrichtenpuffer der Liste weist jetzt in seinem LINK-Wort
009882/1923
eine auf den neuesten Stand gebrachte Adresse auf.
141 ZM - aL0,Y
Die Adresse des eine fehlerhafte Nachricht enthaltenden 'Vielwort-Nachrichtenpuffers wird in den Lade-Zeiger der Pufferbetriebstabelle niedriger Priorität (Fig. 9) eingegeben.
142 MB E. 22, Z, PS
143 BM - O, Z
Das LINK-Wort desjenigen Vielwort-Nachrichtenpuffers, dessen Inhalt erneut eingegeben wird, wird mit Ausnahme des Vorzeichen-Bit zu Null gemacht. Das Vorzeichen-Bit wird nicht auf Null eingestellt, da der Nachrichtenpuffer weiterhin eine Vielwortnachricht enthält.
144 MONLYM MC RLp, Y
Der Sende-Zeiger SEND geht in das B-Register und stellt die C-Steuer-Flipflops auf Null, wenn der Zeiger Null ist, wodurch angegeben wird, daß im Augenblick keine Nachrichten gesendet werden.
145 TCAU M0NLY1
Es erfolgt ein Sprung auf M^)NLYl, wenn die Sende-Liste bereits wenigstens eine Nachricht enthält, da dann diese Nachricht nicht hinzugefügt werden muß. Wenn noch keine auszusendenden Nachrichten eingegeben sind, folgt der Befehl 146.
146 ZM RLp, Y .
Die Adresse der erneut auszusendenden Nachricht befindet sich im
009882/1923
es
Z-Register und wird jetzt in den SEND-Zeiger eingegeben.
147 EZEM LINKL0,Y
Die Speicher stelle LINKL0, Y, nämlich die LINK-Adresse für die Sendeliste niedriger Priorität dieses Kanals wird auf Null gebracht, um das Ende der verketteten Liste zu markieren.
148 WL LINKL0, Y
Die Adresse dieser Verkettung niedriger Priorität des Kanals wird in das L-Register zur Verwendung bei dem Befehl 151 und 152 eingegeben..
149 MK LACT+1
Die Anfangszelle der Verkettungsliste niedriger Priorität, und zwar das zweite Wort, wird in das K-Register eingeschrieben.
150 TCAU LASTl
Es erfolgt ein Sprung auf LASTl (Befehl 154), wenn die Verkettungsliste niedriger Priorität bereits eine Eintragung aufweist. In diesem Fall ist das zweite Wort der Anfangszelle von Null verschieden.
151 · ' LM LACT
152 LM LACT+1
Die Befehle 151 und 152 werden ausgeführt, wenn dieser Kanal der einzige auf der Verkettungsliste ist. Die Adresse des Verkettungswortes dieses Kanals wird in beide Wörter der Anfangszelle der Verkettungsliste eingegeben.
0098 827 192 3
153 T MpBLYl Es erfolgt ein Sprung auf M0NLY1 (Befehl 156).
154 LASTl LM O, K
155 LM LACT+1
Die Adresse des Verkettungswortes dieses Kanals wird an das Ende der Liste (Befehl 154) und außerdem in das zweite Wort der Anfangs™ zelle (Befehl 155) geschrieben.
156 MONLYl EZEM 1, Z
Das zweite Wort des Vielwort-Nachrichtenpuffers wird auf Null gebracht, um die nächste Übertragung dieser Nachricht vorzubereiten.
157 · ENTJ TEMP5,M
158 MK TEMP2
Es erfolgt ein Sprung auf den Inhalt der Speicherstelle TEMP5, die entweder MMERR (Befel 056) enthält, oder MMERR (Befehl 056), nachdem das Fehlerüberwachungswort im K-Register wieder hergestellt ist. Die Suche nach weiteren Fehler-Bits geht weiter.
Die folgenden Befehle 159 bis 164 geben Einzelwort-Nachrichtenpuffer frei. Beim Eintreten in diese Befehle enthält das Z-Register die Adresse desjenigen Nachrichtenpuffers, in welchem sieh die freizugebende ' Einzelwortnachricht befindet, und das K-Register enthält die Adresse des Quittungs-Zeigers der Pufferbetriebstabelle für den speziellen.,
009882/1923
zu verkettenden Kanal.
159 RSINGE ML SINGE
Bei Ausführung dieses Befehls wird der Inhalt der Anfangszelle SINGE in das L-Register eingegeben, SINGE ist der symbolische Name für eine Anfangszelle (Fig. 8) der Liste von Einzelwort-Nachrichtenpuffern, die erfolgreich bestätigt worden sind. Diese Liste wird zweckmäßig im Verlauf der Grundstufe-Programme (hier nicht beschrieben) geprüft, von denen eines die Liste entleert. Natürlich könnte die Liste auch als Teil des Unterbrechungsstufe-Bestätigungsprogramms entleert werden, aber es ist im allgemeinen nicht zweckmäßig, die Laufzeit des Bestätigungsprogramms für diese Art von Routinearbeiten zu erhöhen, wenn der Gesprächsspeicher 103 eine ausreichend große Kapazität besitzt. Da die Einzelheiten des Programms zur Entleerung solcher Listen für das Verständnis der Erfindung nicht wesentlich sind, sind sie hier weggelassen.
160 ZM SINGE
Dieser Befehl gibt in die Anfangszelle SINGE die LINK-Wortadresse desjenigen Einzelwort-Nachrichtenpuffers ein, der der Liste von erfolgreich bestätigten Puffern hinzuzufügen ist.
161 MB O, Z
Dieser Befehl bringt das LINK-Wort aus dem Einzelwort-Naehrichten- puffer in das Pufferregister B. Wie oben erwähnt, stellt das LINK- Wort die Adresse des nächsten Nachrichtenpuffers dar, der den jeweiligen Kanal bedient.
009882/1923
162 BM O, K
Dieser Befehl überträgt das LINK-Wort aus dem Pufferregister B in den Quittungs-Zeiger an der entsprechenden Stelle in der Pufferbetriebstabelle.
163 , LM O, Z
Der Inhalt des L-Registers, d.h., die Information aus der Anfangszelle SINGE, wird im LINK-Wort des Einzelwort-Nachrichtenpuffers gespeichert. Wenn das Grundstufe-Entleerungsprogramm den Einzelwort-Nachrichtenpuffer entleert, benutzt es die Information im ersten Wort des Nachrichtenpuffers, um die Stelle des nächsten, zu entleerenden Nachrichtenpuffers zu finden.
164 T O, J
Es erfolgt eine Rückkehr auf das hier übertragene Unterprogramm (Befehl 026 oder 072), dessen Adresse bei den Befehlen 024 oder 070 " im J-Register gespeichert worden ist.
Die oben erläuterten Befehle 001 bis 164 sind die Befehle des als Beispiel gewählten Verarbeitungs-Unterprogramms zur Bestätigung (Quittierung) von Nachrichten, die von einer der Endstellen, beispielsweise der Endstelle 108, aufgrund der Rückgabe eines BLOCK-Wortes über den jeweiligen gemeinsamen Zeichengabekanal zu der Endstelle übertragen worden sind. Es ist bereits erwähnt worden, daß zusätzlich
009882/1923
zu dem Bestätigungs-Unterprogramm die Datenverarbeitungsanlage 3 00 des örtlichen Amtes Unterprogramme zur Eingabe von Nachrichten in den Speicher zwecks Übertragung durch die Endstelle und zum Nachrichtenaustausch mit der Endstelle benutzt werden, um die tatsächliche Übertragung solcher Datenwortnachrichten aus dem Speicher zu bewirken. Die im folgenden im Anhang beschriebenen Lade- und Sende-Unterprogramme LOAD und SEND stellen Beispiele für Unterprogramme dar, die zur Durchführung dieser Punktionen in Verbindung mit einer Vielzahl von gemeinsamen Zeichengabekanälen entwickelt worden sind.
009882/1923
Speicher
stelle
1
LOAD Φ 8 Operation j Unterprogramm LOAD i ARGl Kanalnummer
φ φ TBCL, X K, Z = Adresse des Sendepuffers, falls vorhanden
φ DA, RM, LCJ Bemerkungen
18 ' 72
TEST Ein Puffer ist vorhanden
* Annahme:
φ 1. Kanalnummer in ARGl Belegen eines Puffers, Verkettungen auf den neuesten Stand bringen
φ 2. Priorität ist ARG2 TBUFE TBUFE-Anfangs ζ eile verfügbarer Sendepuffer
φ ARG2 = 0 zeigt hohe Priorität an ERROR Keine Puffer zurückgeblieben
φ ARG2 j_ 0 gibt niedrige Priorität an TBCL, X Einspeichern Pufferadresse in Kanal-Anfangszelle
ARG2 = η gibt n-Wort-Nachricht für n=l, 2, . . . an O, B TBUFE auf den neuesten Stand bringen. Belegen Puffer
O
O
* 3. Inhalt des Y-Registers = Adresse der zu speichernden Information TBUFE Austreten aus verketteter Liste
CO φ Vorbereiten Puffer (hauptsächlich Sender), der vor seiner Verwendung Null
CS Prüfen, ob ein Puffer vorhanden ist sein soll
tX>
ro
1923
MX !
MKMZ
TKAU
MKMZ
TKAZ
BM j
MB
BM
Speicher-
steile
1
* TEST 8 Operation DA, RM,
18
LCJ Bemerkungen
72
EZEM O, Z Λ für Puffer niedriger Priorität (Lade-Zeiger)
* EZEM Ι,Ζ ß für Puffer niedriger Priorität (Sendezeiger)
EZEM 2, Z ιΛ = Quittungszeiger (nidrige Priorität)
EZEM 3,Z Einweg-Verkettung für Nachrichten niedriger Priorität
XM 4, Z Kanalnummer
EZEM 5,Z Zustandswörter
EZEM 6,Z Il
EZEM , 7, Z
EZEM 8, Z Ii '. ■■■'.
EZEM ' 9, Z 11
EZEM 10, Z i, ■ . ;
EZEM 11,Z Il
EZEM 12, Z Il
■> EZEM 13, Z °"- für Lade-Zeiger hoher Priorität
h EZEM 14, Z ß = Sendezeiger für Puffer hoher Priorität
EZEM 15,Z P = Quittungs-Zeiger-für Puffer hoher Priorität
EZEM 16, Z Einweg-Verkettung für Nachrichten hoher Priorität
Prüfen, welcher Nachrichtentyp vorhanden ist (hohe od. niedrige Priorität)
MF ARG2,, C F= Komplement des Wortzählwertes
TCAZ HIPRL Nachricht hoher Priorität
Speicherstelle
Operation
DA, RM, LCJ 18
Bemerkungen
72
MX
TCAU
MX
TCAZ
KM
KM
USED
CWR
TCAZ
MK
TKAZ
MB
BM
Nachricht hat niedrige Priorität, Verketten über Liste niedriger Priorität 0, Z ist niedrige Priorität benutzt worden, α. niedr. Priorität = 0 ?
USED
Liste niedr. Priorität enthält bereits einige Eintragungen
Erste Verwendung niedriger Priorität für diesen Kanal LOPRHC-H Prüfen, ob Puffer in aktiver Liste niedriger Priorität
FSTLST
Erster aktiver Puffer niedriger Priorität
3,X
Verketten des neuen Puffers mit der aktiven Liste
LOPRHC+1
Puffer zum letzten machen
Prüfen, ob eine Einwort-Nachricht vorhanden ist
Es ist eine Einwort-Nachricht vorhanden
SMESS
Ja, Nachricht ist ein Einzelwort Vielwortnachricht, Belegen eines Vielwortblocks
Dies soll, nur dann durchgeführt werden, wenn das Ges,prächsregister nicht
zu benutzen ist
Verwendung des Gesprächsregisters zu bevorzugen
MULTE
Belegen Vielwortblock
ERROR
Keine Vielwort-Nachrichtenblöcke
O, K
Verkettungen auf den neuesten Stand bringen
MULTE
: 1 Speicher
stelle
*
j
CONT
O
O
ίο
m
*
82/1 *
CD *
Ct) STORE
φ
.JL.
*
*
*
Operation
DA, RM, LCJ 18 Bemerkungen
72
MX
TCAZ
ML
TCAU
KM
KM
KM
MB
BM
WF
TCLU
ENTJ
EE
Verketten mit
Ο,Ζ
FST
ι,ζ
CONT
1,X
, X
0,Z
Ο,ΥΑ
3,KA
0,FA
STORE
0,J Holen der Adresse der letzten Nachricht, falls irgendeine = Eingeben der ersten Nachricht
Holen des Sendezeigers
Sendezeiger weist auf Nachricht hin
Sowohl & als auch ß auf den neuesten Stand bringen
CD ISJ
Inhalt des X-Registers = neue Nachricht Kopieren der Information in den neuen, belegten Nachrichtenblock. Y = Adresse der zu kopierenden Information
F = Inhalt des Wortzählwertes, K = Blockadresse
3 zeigt an, daß drei Steuerworte benötigt werden
Wort 1 = Verkettung Wort 2 = wohin zu übertragen, nachdem Nachricht bestätigt ist Wort 3 = Zeiger innerhalb des Blocks zum Übertragen
Prüfen, ob Ende der Nachricht
Kopieren weiterer Informationen
Rückgabe
Kann für irgendeinen Zweck benutzt werden Erste Nachricht (niedrige Priorität) für Sendepuffer. Einstellen aller Zeiger ex., ß, r auf ihre Adresse
1 Speicher-
stelle
δ Operation DA, RM,
16
LCJ Bemerkungen
72
eines Dreiwort-Blocks Speichern Information
FST KM O, Z Speichern Nachrichtenadresse in et Anfangszelle von Dreiwort-Blocks
KM U ζ ß Kein Speicherraum verfügbar 0,Y
KM 2, Z Γ
T STORE
* etwa das gleiche wie für Vielwortnachrichten
* Die Nachricht ist eine Einzelwortnachricht (niedrige Priorität) Holen cl
* Belegen Erste Nachricht
SMESS MK SINGE Prüfen, ob Register B=O
TKAZ ERROR
MB O, K
SINGE
* Ab hier
MX 0,Z
TCAZ PSTl
ML UZ
TCAU CONTl
KM i,x
CONTl KM o,x
o.z
*
*
STOREl MB
NJ OO CD
Speicher -
stelle
1
FSTl * FSTLST * HIPRL 8 Operation DA, RM1LCJ ' Bemerkungen
18 72
LOPRHC+1 Speichern außerdem in letzter ALHI, Z
* ENTJ 0, J USED HUSED
* BM 2,K HPRHC+1
* * Hohe Priorität auf die gleiche Weise behandelt wie Einzelwort niedr. Prior. FSTH
KM o,z Anfangszellen "HIPRHC11U. "HIPRHC+I"besetzte Liste Sender hoher Prior. HILNK1Z Vorwärts-Verkettung
KM 1,Z ALHI = HI = 13, HILNK = 16 HPRHC+1
HUSED KM 2,Z SINGE Belegen eines Dreiwort-Blocks
ο T
(O
α> KM
ΚΛ KM
-»»
-*
«Ο
MX
TCAU
MX
TCAZ
KM
KM
MK
STORE! (Kann wiederholen "STOREl" zwecks Vermeidung)
Dies ist der einzige Sendepuffer niedriger Priorität in belegter Liste
LOPRHC Speichern Adr. in einer Anfangszelle eines besetzten Puffers
niedriger Priorität
Speicherstelle
Operation
DA, RM, LCJ 18 Bemerkungen
72
TKAZ
MB
BM
MX
TCAZ
ML
TCAU
KM
CONTH
KM
KM
STORE2
MB
ENTJ
BM
FSTHl
KM
KM
KM
FSTH
KM KM
ERROR
0,K
SINGE
ALHI, Z
FSTHl
ALHI+1,Z ß Nachrichtenpuffer hoher Priorität = Sendezeiger
CONTH
0,X
ALHI, Z
0,Y
0,J
2,
Speichern Informationen Erste Nachricht im Puffer (hoch)
ALHI, Z
ALHI+1, Z ß
ÄLHI+2, Z
HIPRHC HIPRHC+1
CjO CT)
Speicher-
stelle
1
SEND * RET * 8 Operation Unterprogramm "SEND" PROC . ' . ■ ■ . . ■ !
* ALHI+1,K Y ~ Adresse der ersten zu übertragenden Nachricht ·
* * DA, RM, LCJ Bemerkungen
18 " 72
4,K Kammer des gemeinsamen Zeichengabekanals
* SEND-Unterprogramm prüft Liste hoher Prior, und dann Listen niedr. Prior. TBCL+NOCK Erregen Register F
* Für jeden aktiven Sendepuffer Versuch, ein Wort zu senden 2X Senden Einwortnachricht
* Wort durch Sender entweder angenommen oder nicht entsprechen ALHI+3,Y K = nächster Sendepuffer
* Prüfung Inhalt des L-Registers. Wenn = J^, Nachricht PREV
nicht übertragen O, K
* RET Nächstes j zeigt weiteren Puffer in der Liste an. Ende aktiv. Listen
MKMY NOC = Anzahl von Kanälen hoher Prior., senden Nachricht niedr. Prior.
TKAZ
ο HIPRHC Holen des ersten Sendepuffers in Liste hoher Priorität
co WZ NEXT Keine hohe Priorität, Übergang auf niedrige Priorität. Für Abt ast -
OD befehle einstellen, Indexregister Z auf Adresse Nachrichtenunter -
ISJ MX programm hoher Priorität
-* MK
co
ts>
MF
C* MAS
TAUMK
YM
WY
TKAU
CD (J)
Speicherstelle
Operation
DA, RM, LCJ 18 Bemerkungen
72
NEXT
MKMY
TKAZ
RET2
WZ
RETl
MX
MC
CO GO NJ
TCM
MK
MF
MAS
TAUMK
YM
WY
TKAU
OUT
MULTI
WZ
LOPRHC
OUT END OF SCAN
PROCl
Aufstellen niedriges Verarbeitungs-Unterprogramm
Ι,Κ
X = Sendezeiger (B) von Liste niedriger Priorität
O, X
Wenn Vorzeichen - wird Vielwortnachricht angezeigt
MULTI Aussenden Vielwortnachricht
Eine Einzelwortnachricht, aussenden Datenwort u. Zeiger auf neuesten Stand ' bringen
4, K
Holen Numraer des gemeinsamen Zeichengabekanals TBCL+NOCK Adresse für F zur Verfügung stellen
2, X
3,Y
PREV
O, K
RETl
END OF SCAN, RETURN
Aussenden eines Wortes einer Vielwortnachricht
K, Y =
Adresse von Sendepuffer Sendezeiger (B). M, WC ist Maske für den Wortzählwert
PROC
co CO 00 Is»
CO
Speicher -
stelle
1
PROC 2 * 8 Operation DA, RM, LCJ Bemerkungen
18 72
Ist das letzte Wort einer Vielwortnachricht ausgesendet ?
* WK M. WC, X, S K = Sendezeiger
AMK 3, X, PL K = Sendezeiger und Wortzählwert
AMK 2, X Addieren Komplementärwert des Wortzählwertes
MB 4, Y Nummer d. gemeinsam. Zeichengabekanals zum B-Register
MF TBCL+NOCB F. zur Verfügung stellen
MAS 0,K Senden Wort
TAUMK 3,Y ' ■ · · ' ' . ■' · " .
YM PREV
0,K
TKAU RETl Versuchen und weiter senden
RETURN END OF SCAN .
M. BPOS= 07760
Verarbeiten Vielwortnachricht, Zustandswörter-PROC2-Blockwort,
* eingestellt durch Endstelle, auf neuesten Stand bringen. Blockwort ist im L
WZ M.BLK,,PL Register
AYR 0, Z Z = Beginn von Puffer- und Blocknummer
WK M. BPOS, ,PL Position des Wortes, 8-Bit-Ringzähler
HUMK H. LP, 5, Z H.LP= 0,1
AWK 1 Weiters ehalten Wortzählwert für niedrige Priorität
KM 5, Z Speichern des auf den neuesten Stand gebrachten Zustands-
Wortes
NO O K)
CD
1 Speicher -
stelle
δ Operation DA, RM. LCJ
18
Bemerkungen
72
1,Y =B=Sendezeiger Prior. Pufferadresse
MF 2,X Keine weitere Nachricht niedr. Prior, zu übertragen handelt es sich um die letzte
AWF 1 nicht die letzte
TRAZ OUTM, F END OF MULTIWORD MESSAGE Zustande wort hoher Prior, auf neuesten Stand bringen. Ange-
FM 2.x Inhalt ist Zahl der erwarteten Wörter Keine weiteren Nachrichten, herausnehmen aus Verkettungsliste LOPRHC niedr.- _ „n , nommen Einzelwort
Z = Blocknummer
ENTJ ° 0.J Z = Beginn v. Puffer-u. Blocknummer
MK 3,Y RETURN O, Y Position des Wortes
* LOPRHC+1
* Ende von Vielwortnachricht, Verkettungen auf neuesten Stand bringen NOTL+1
OUTM MX O. X Sendezeiger u.
XM l.Y M. BLK,, PL
TCAZ OUTL O, Z
ENTJ O, J M. BPOS,, PL
MK 3.Y
*
*
OUTL WK
CMK
TCAU
*
PROC WZ
AYR
WK
Speicher·
stelle
Operation
DA, RM, LCJ 18 Bemerkungen
72
CO OO CO
OUTH
TESTH
HUMK
AWK
KM
MX
XM
TCAZ
ENTJ
MK
WK
CMK
TCAU
CMK
TCAU
EZEM
EZEM
ENTJ WZ
H. HP. 5, Z
H. HP■ ■ - 7
E.
Addieren 1 zu Anzahl von Wörtern hoher Priorität
5, Z
O, X
Sendezeiger auf neuesten Stand bringen für
ALHI+1, Y Nachrichten hoher Priorität
OUTH
O, J Keine weiteren Nachrichten hoher Prior, kommen aus Verkettung heraus
ALHI+3,Y
Einstellen K-Register für nächsten Sendepuffer
Herausnehmen Puffer aus verketteter Liste hoher Priorität
11HIPRHC"
O, Y Pufferadresse
HIPRHC+1 Handelt es sich um die letzte
NOTL Nicht letzte
HIPRHC Handelt es sich um die erste
LAST Letzte, nicht erste
Erste und letzte
HIPRHC Erste und letzte
HIPRHC+1
Rückgabe auf Verarbeitung niedriger Priorität
NEXT+1 PROCl
co ro co
Speicher-
stelle
1
LAST * NOTL * NFTLST . 8 Operation DA, RM, LCJ Bemerkungen
18 72
* * * Letzte Eintragung, Verkettungen auf neuesten Stand bringen u. Rückgabe
*
MX PREV
ENTJ TESTH ) dies führt weiter zu (WZ PROCl
XM HIPRHC+1 ) (ENTJ NEXT+1
) (XM HIPRHC+1
Nicht letzter. Handelt es sich um den ersten Puffer in der Liste
CMK HIPRHC
TCAU NFTLST
MK ALHI+2K Erster, nicht letzter
KM HIPRHC
ENTJ NEXT+1 ) gleich wie TESTH
WZ PROCl )
Kanal-Nachrichtenpuffer irgendwo in der Mitte der Liste
MX PREV
KM ALHI+3,X
ENTJ NEXT+1
WZ PROCl
^Bemerkung: Verarbeitung Einzelwort niedr. Prior, gleich hoher Prior.
Es sei bemerkt, daß die oben beschriebenen Anordnungen nur Beispiele für die Anwendung der erfindungsgemäßen Grundgedanken sind. Es kön« nen auch andere Einrichtungen als die offenbarten bei der vorliegenden Anwendung benutzt werden. Beispielsweise kann die Aufteilung der Verantwortlichkeit zwischen der Endstelle 108 und der Datenverarbeitungsanlage 300 des Ortsamtes so geändert werden, daß die Datenverarbeitungsanlage des Ortsamts einige der Funktionen übernimmt, die entsprechend der Beschreibung von der Endstelle durchgeführt werden. Entsprechend kann der anhand von Fig. 2 erläuterte Verarbeiter durch andere Typen von Verarbeitern ersetzt werden. In diesem Falle kann es erforderlich sein, diejenigen Befehle, beispielsweise 061, die den TZRFZ-Operationscode verwenden, durch eine Folge von Befehlen zu ersetzen, die ein solcher anderer Verarbeiter ausführen kann. Natürlich kann eine speziell geschaltete Sonderzweck-Anlage hergestellt werden, um die hier offenbarten speziellen Operationen durchzuführend
009882/1923

Claims (6)

Patentansprüche
1. Verfahren zum kontinuierlichen Senden und Empfangen von Daten in Blöcken von Wörtern, wobei jeder von einer Sende-Empfangsstelle ausgesendete Block Fehlerüberwachungsinformationen bezüglich eines vorher von dieser Stelle aufgenommenen Blockes enthält, mit einer sendeseitigen Speicherung von Nachrichten, von denen Datenwörter zusammen mit Leerwörtern zu Blöcken für die Übertragung zusammengestellt werden, ■ . gekennzeichnet durch die Verfahrensschritte:
Speichern eines Zustandswortes für jeden Block, das angibt, welche Wortpositionen des jeweiligen Wortes Datenwörter und Welche Wörtpositionen Leerwörter betreffen (Fig. 10);
Vergleichen (Fig. 14,16) der Fehlerüberwachungsinformation eines empfangenen Blockes mit dem gespeicherten Zustandswort, das den gleichen, vorher übertragenen Block wie diese Fehlerüberwachungsinformation (Fig. 5) betrifft;
Markieren (Fig. 15) nur derjenigen Nachrichten zur Neuübertragung, welche einem fehlerhaften Datenwort entsprechen; Aufheben der Nachrichtenspeicherung, sobald alle Wörter einer Nachricht durch die Fehlerüberwachungsinformation als richtig empfangen identifiziert worden sind.
009882/1923
2. Datensende- und Empfangs stelle zur Durchführung des Verfahrens nach Anspruch 1,
gekennzeichnet durch einen Digitalrechner, der so programmiert ist, daß er alle Datenwörter, die eine ganze, in. übertragenen Blöcken enthaltene Datenwortnachricht in jeweils einem von einer Vielzahl von Nachrichtenpuffern (Fig. 12, 13) speichert,
daß er in einem Zustande Wortregister (Fig. 10) ein Zustandswort speichert, das eine geordnete Darstellung von Bits enthält, die anzeigen, welche Wortpositionen in jedem übertragenen Block durch entsprechende Nachrichtenpuffer beigetragen worden sind und welche Wortpositionen Leerworte waren,
daß er die Bit-Positionen (Fig. 14) eines eH(* Fehlerüberwachungsinformation enthaltenden Quittungswortes mit den Bit-Positionen des Zustandswortes zur Ableitung einer Anzeige vergleicht, welche der durch das Quittungswort als fehlerhaft angezeigten Positionen solche echter, von einem der Nachrichtenpuffer beigetragener Datenwörter waren, und daß er die Neuübertragung (Fig. 15, 16) der Datenwörter von denjenigen Nachrichtenpuffern, welche ein fehlerhaftes Wort beigetragen haben, und die Freigabe derjenigen Nachrichtenpuffer steuert, welche richtige Wörter zu dem übertragenen Block beigetragen haben.
3. Datensende- und Empfangs stelle nach Anspruch 2, dadurch gekenn-
009882/1923
zeichnet, daß die Fehlerüberwachungsinformation ein Quittungswort enthält, das ein Bit mit dem Binärwert 11I11 in jeder Position aufweist, die der Position eines fehlerhaften Wortes in einem vorher übertragenen Block entspricht^
daß der Digitalrechner so programmiert ist,
daß er alle nln-Bits in dem Quittungswort in vorbestimmter Reihenfolge P mit entsprechenden Bits in dem Zustandswort vergleicht, die anhand
ihres Wertes das Vorhandensein von Daten oder Leerwörtern angeben, und daß er die Neuübertragung des Datenwortes durch Eingabe der Adresse des einem Bit des Zustandswortes entsprechenden Nachrichtenpuffers in eine Liste von zu übertragenden Nachrichten steuert, wenn das Zustandswort-Bit ein Datenwort angibt und das entsprechende Quittungswort-Bit eine "l" ist.
k
4. Datensende- und Empfangs stelle nach Anspruch 2 oder 3, dadurch
gekennzeichnet, daß die Vielzahl von Nachrichtenpuffern einen Einzelwort»Nachrichtenpuffer (Fig. 12) oder einen Vielwort-Nachrichtenpuffer (Fig. 13) enthalten,
daß der Vielwort-Nachrichtenpuffer alle Datenwörter, die eine ganze Datenwortnachricht bilden, speichern kann, und daß jedes der Zustandswortregister (Fig. 10) getrennte Felder (STATUS HI, STATUS L^)) mit geordneten Darstellungen derjenigen Wortpositionen
009882/1923
enthält, die zu einem übertragenen Block durch Einzelwort-Nachrichtenpuffer bzw. Vielwort-Nachrichtenpuffer beigetragen worden sind.
5. Datensende- und Empfangs stelle nach Anspruch 4, dadurch gekennzeichnet, daß der Vielwort-Nachrichtenpuffer (Fig. 13) ein Feld (S) aufweist, das anzeigt, wenn irgendein Datenwort in dem Puffer als fehlerhaft übertragen identifiziert worden ist.
6. Datensende- und Empfangs stelle nach Anspruch 4 oder 5, dadurch gekennzeichnet, daß der Vielwort-Nachrichtenpuffer (Fig. 13) ein Wortzählwert-Feld (W. C.) aufweist, das entsprechend dem Zählwert für die Anzahl von Datenwörtern einstellbar ist, die eine ganze, in dem Vielwort-Nachrichtenspeicher gespeicherte Datenwortnachricht bilden, sowie ein Quittungsfeld (ACK), das entsprechend dem Zählwert für die Anzahl von Wörtern einer solchen ganzen Datenwortnachricht einstellbar ist, die mit den geordneten Darstellungen von Wortpositionen in einem der Zustandswortregister verglichen worden ist.
009882/1923
DE19702027916 1969-06-06 1970-06-06 Verfahren und schaltungsanordnung zum fehlergesicherten uebertrgen von daten in datenuebertragungsanlagen mit duplexkanaelen Ceased DE2027916B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US83100669A 1969-06-06 1969-06-06

Publications (2)

Publication Number Publication Date
DE2027916A1 true DE2027916A1 (de) 1971-01-07
DE2027916B2 DE2027916B2 (de) 1972-07-06

Family

ID=25258086

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19702027916 Ceased DE2027916B2 (de) 1969-06-06 1970-06-06 Verfahren und schaltungsanordnung zum fehlergesicherten uebertrgen von daten in datenuebertragungsanlagen mit duplexkanaelen

Country Status (9)

Country Link
US (1) US3624613A (de)
JP (1) JPS5625838B1 (de)
BE (1) BE751467A (de)
CA (1) CA922416A (de)
DE (1) DE2027916B2 (de)
FR (1) FR2082916A5 (de)
GB (1) GB1302071A (de)
NL (1) NL167820C (de)
SE (1) SE366447B (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4422171A (en) * 1980-12-29 1983-12-20 Allied Corporation, Law Department Method and system for data communication
US4345116A (en) * 1980-12-31 1982-08-17 Bell Telephone Laboratories, Incorporated Dynamic, non-hierarchical arrangement for routing traffic
DE3689214T2 (de) * 1985-08-30 1994-05-11 American Telephone & Telegraph Verfahren und Vorrichtung zur Verweigerung der Weiterleitung einer Verbindung über ein Netzwerk.
US4905234A (en) * 1987-06-03 1990-02-27 General Electric Company Apparatus and method for transmitting digital data over a radio communications channel
US5875292A (en) * 1995-02-10 1999-02-23 Nec Corporation Packet transmission method without sending serial numbers
US6298396B1 (en) * 1998-06-01 2001-10-02 Advanced Micro Devices, Inc. System for loading a current buffer desciptor register with a value different from current value to cause a previously read buffer descriptor to be read again

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1288108B (de) * 1964-05-28 1969-01-30 Western Electric Company Inc., New York, N.Y. (V.St.A.) Integrierte Analog-Digital-Vermittlungsanlage
FR1457308A (fr) * 1965-05-13 1966-01-24 Système de transmission et d'enregistrement de taxation téléphonique
FR1495506A (de) * 1965-07-02 1967-12-20
US3427589A (en) * 1967-06-29 1969-02-11 Bell Telephone Labor Inc On-line delivery of data messages from a transmitter to receivers on the same multistation line
US3427587A (en) * 1967-07-07 1969-02-11 Bell Telephone Labor Inc Roll call acknowledgment of data stations on multistation lines
US3452330A (en) * 1967-07-25 1969-06-24 Bell Telephone Labor Inc Asynchronous data transmission system with error detection and retransmission

Also Published As

Publication number Publication date
CA922416A (en) 1973-03-06
BE751467A (fr) 1970-11-16
NL7008128A (de) 1970-12-08
SE366447B (de) 1974-04-22
FR2082916A5 (de) 1971-12-10
JPS5625838B1 (de) 1981-06-15
US3624613A (en) 1971-11-30
NL167820C (nl) 1982-01-18
GB1302071A (de) 1973-01-04
DE2027916B2 (de) 1972-07-06
NL167820B (nl) 1981-08-17

Similar Documents

Publication Publication Date Title
DE2527631C3 (de) Verfahren und Schaltungsanordnung zum Übertragen von Datennachrichten
DE2719247C3 (de) Datenverarbeitungssystem
DE2920490C2 (de) Datenverarbeitungssystem
DE2039040C3 (de) Verfahren zum Steuern des Datenaustauschs zwischen einer Zentralstation und einer von mehreren Datenendstationen und adressierbare Datenendstation zur Durchführung des Verfahrens
DE3301628A1 (de) Schaltungsanordnung fuer den datenaustausch zwischen zwei rechnern
DE1815078A1 (de) Mikro-programmierte Datenverarbeitungseinrichtung
EP0398876B1 (de) Verfahren zur identifizierung von peripheren einrichtungen
DE1802646A1 (de) Schaltungsanordnung fuer Datenverarbeitungsanlagen,insbesondere Fernsprechvermittlungsanlagen,mit Einrichtungen zur Nachrichtenuebertragung
DE2027916A1 (de) Datenubertragungsverfahren und anlage
DE1474033A1 (de) Schaltungsanordnung zum Anschluss von datenverarbeitenden Systemen an Nachrichtensysteme
DE1474021A1 (de) Anlage zur Parallel-Verarbeitung von Daten
DE1295595B (de) Verfahren zur UEbertragung von Datennachrichten ueber eine digitale Datenuebertragungsanlage
EP0017034B1 (de) Schaltungsanordnung zur Abgabe von digitalen Nachrichtensignalen im Zuge von Rundschreibverbindungen über eine Datenvermittlungsanlage
DE2707820A1 (de) Datenverarbeitungsanlage
DE60016430T2 (de) Verfahren und system zur übertragung einer meldungskette für datenbanken
DE1206183B (de) Datenverarbeitendes elektronisches System
DE2824260A1 (de) Datenuebertragungseinrichtung
DE2314733A1 (de) Verfahren und schaltungsanordnung zur warteschlangenbildung
DE3850903T2 (de) Steuerungssystem mit zwei Mikroprozessoren.
DE2601702A1 (de) Verbindungs- und ueberwachungssystem fuer fernmeldevermittlungsstelle
DE2126456B2 (de) Schaltungsanordnung zur Verwendung in einer Datenverarbeitungsanlage
DE3136495C2 (de)
DE3136586A1 (de) Verfahren und schaltungsanordnung zum uebertragen von signalen zwischen beliebigen steuereinrichtungen eines taktgesteuerten, richtungsabhaengig betriebenen ringleitungssystems
DE2013259C (de) Datenverarbeitungsanlage
DE2325691C3 (de) Computergesteuertes Fernsprechvermittlingssystem

Legal Events

Date Code Title Description
8263 Opposition against grant of a patent
8235 Patent refused