DE1524229B2 - Rechenanlage - Google Patents

Rechenanlage

Info

Publication number
DE1524229B2
DE1524229B2 DE1524229A DE1524229A DE1524229B2 DE 1524229 B2 DE1524229 B2 DE 1524229B2 DE 1524229 A DE1524229 A DE 1524229A DE 1524229 A DE1524229 A DE 1524229A DE 1524229 B2 DE1524229 B2 DE 1524229B2
Authority
DE
Germany
Prior art keywords
information
registers
processing unit
data
processing
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.)
Granted
Application number
DE1524229A
Other languages
English (en)
Other versions
DE1524229A1 (de
DE1524229C3 (de
Inventor
Mario Boston Mass. Schaffner (V.St.A.)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of DE1524229A1 publication Critical patent/DE1524229A1/de
Publication of DE1524229B2 publication Critical patent/DE1524229B2/de
Application granted granted Critical
Publication of DE1524229C3 publication Critical patent/DE1524229C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C21/00Digital stores in which the information circulates continuously
    • G11C21/02Digital stores in which the information circulates continuously using electromechanical delay lines, e.g. using a mercury tank
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)
  • Multi Processors (AREA)
  • Radar Systems Or Details Thereof (AREA)

Description

Die Erfindung bezieht sich auf eine Rechenanlage mit einem speichernden Umlaufkanal, mit einem Assembler zum Zusammensetzen der Ausgangsinformation des Kanals in einem Satz von Registern, eine Verarbeitungseinheit, die in direkter Datenübertragungsverbindung mit den Registern des Assemblers stehende Eingaberegister und Ausgaberegister aufweist, und mit einem Packer mit einem Satz von Registern, die in direkter Datenübertragungsverbindung mit den Registern der Verarbeitungseinheit stehen und mit Einrichtungen zur Übertragung der Information in den Registern des Packers an den Eingang des Kanals.
Bei bekannten Rechenanlagen besteht ein Programm aus einer Folge von Befehlen, die jeweils einen Operationskode und eine oder mehrere Adressen enthalten. In jedem Zyklus der Rechenanlage werden Operanden von einem Speicher mit wahlfreiem Zugriff abgerufen, und eine Operation wird durchgeführt, und zwar mit oder ohne die Verwendung einer Mikroprogrammierung.
Der übliche Aufbau einer Rechenanlage umfaßt dabei vier Baugruppen: Einen Speicher, ein Rechenwerk, ein Steuerwerk und eine Eingabe-Ausgabeeinheit. Der Speicher ist allgemein funktionsmäßig in mehrere Abschnitte mit speziellen Aufgaben unterteilt. Programminformationen und zu verarbeitende Daten sind normalerweise voneinander getrennt. Das Rechenwerk bekannter Rechenanlagen umfaßt ein Eingabespeicherregister, ein Addierwerk und ein akkumulatives Register. Neben dem akkumulativen Register können mindestens ein bis zwei Zusatzregister vorgesehen sein, von denen eines hauptsächlich zum Speichern des Multiplikators und des Quotienten bei Multiplikations- und Divisionsvorgängen und das andere für spezielle Operationen, wie die automatische Modifizierung einer Befehlsadresse, dient. Das Steuerwerk ist der Teil der Rechenanlage, der die anderen Einheiten derart steuert, so daß die Befehle eines gespeicherten Programms in vorgegebener Folge ausgeführt werden. Das Steuerwerk umfaßt
Einrichtungen für die Folgesteuerung der Schritte, die für das Lesen und Ausführen jedes Befehls erforderlich sind, und einen Befehlszähler oder eine gleichwertige Einrichtung zum Bestimmen der
Adresse des nächsten Befehls, wenn ein Befehl ausgeführt ist. Zum Steuerwerk gehört außerdem ein Befehlsregister und eine Einrichtung zum Entschlüsseln der darin gespeicherten Befehle. Die Eingabe-Ausgabe-Einheit enthält im allgemeinen ein Pufferspeicherregister und weitere erforderliche Einrichtungen, wie z. B. eine Eingabeeinrichtung für Informationen in den Speicher und ähnliches. Eine derart aufgebaute Rechenanlage besteht aus einer großen Anzahl von Einheiten mit speziellen Aufgaben, die feststehende Funktionen ausüben und festgelegte Maschinenprogramme ausführen. Zerlegt in elementare Operationen erfordern diese Funktionen jedoch eine relativ kleine Anzahl logischer Operationen, die in unterschiedlicher Weise in den verschiedenen Funktionseinheiten miteinander verknüpft werden. Eine derartige Rechenanlage ist relativ aufwendig aufgebaut, weil für jeden Befehl und in den meisten Fällen auch für jede Information Adressen erforderlich sind, um ein Auffinden der gewünschten Informationen oder Befehle unter der Steuerung des Steuerwerkes in den Speichern zu ermöglichen.
Es ist weiterhin bekannt, bei Rechenanlagen mit Mikroprogrammsteuerung ein Mikroprogrammsteuerwerk zu verwenden, bei dem ausschließlich Steuerinformationen gewissermaßen in einem geschlossenen Kreis umlaufen (Proceedings of the Cambridge Philosophical Society, Science Museum Library, London, 27. Januar 1953, S. 230 bis 238). Bei diesem Mikroprogramm-Steuerwerk werden Steuerimpulse einem Dekoder zugeführt, dessen anderen Eingängen Ausgangsdaten eines Registers zugeführt werden. Die Ausgangsinformationen des Dekoders werden zwei Matrizen zugeführt, von denen die erste zur Steuerung des Rechenwerkes und der Steuerregister verwendet wird. Die zweite Matrix, die ebenfalls die Ausgangsinformation des Dekoders empfängt, ist fest mit der Adresse des beim nächsten Steuerimpuls durchzuführenden Mikrobefehls verdrahtet und gibt diese Adresse an ein weiteres Register ab, dessen Inhalt beim nächsten Schritt an das direkt mit dem Dekoder verbundene Register weitergegeben wird.
Der Erfindung liegt die Aufgabe zugrunde, eine Rechenanlage der eingangs genannten Art zu schaffen, die bei sehr einfachem Aufbau und möglichst vergrößerter Arbeitsgeschwindigkeit einen Fortfall der Adressenfunktionen ermöglicht und die eine automatische Anpassung der Verarbeitungseinheit an die für die Operationen erforderlichen Funktionen ermöglicht.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß der Kanal, der Assembler, die Verarbeitungseinheit mit ihren Eingabe- und Ausgaberegistern und der Packer einen geschlossenen Umlaufkreis für Befehlsworte und Datenworte enthaltende Informationsblöcke, die jeweils einem Rechenvorgang zugeordnet sind, bilden, wobei in diesen Informationsblöcken durch die Anordnung der Information festgelegt ist, ob die Information Befehlsworte oder Datenworte darstellt und welche Funktion dieses Befehls- oder Datenwort hat.
Auf diese Weise ist es nicht erforderlich, Adressenfunktionen vorzusehen, da durch die Anordnung der Informationen in den Informationsblöcken die Funktion oder Bedeutung der Information festgelegt ist. Die einem Rechenvorgang zugeordneten Informationsblöcke enthalten alle zur Durchführung eines Rechenvorganges erforderlichen Informationen und Befehle und werden insgesamt in die Verarbeitungseinheit eingegeben, so daß keine zusätzlichen Informationen oder Befehle aus getrennten Speichern oder Steuerwerken abgerufen werden müssen. Dadurch ergibt sich ein wesentlich vereinfachter Aufbau der Rechenanlage.
Gemäß einer vorteilhaften Ausgestaltung der Erfindung ist vorgesehen, daß die Verarbeitungseinheit steuerbare Bearbeitungselemente und steuerbare Verbindungen zwischen den Registern aufweist. Auf diese Weise ist es möglich, durch in den Informationsblöcken enthaltene Befehlsworte einen bestimmten Aufbau der Verarbeitungseinheit herzustellen.
Beim Anmeldungsgegenstand besteht ein durchzuführendes Programm aus einem Satz von Befehlen für die Festlegung der Konfiguration der Verarbeitungseinheit, die jeweils aus mehreren Wörtern zusammengesetzt sind, deren Bits durch ein System von Dekodern eine große Anzahl von Verbindungen und Operationscharakteristika der die Verarbeitungseinheit bildenden Elemente aktivieren. Jede mögliche Konfiguration der Verarbeitungseinheit wird von einem oder mehreren Informationsblöcken in Abhängigkeit von der bei einem bestimmten Umlauf vorherrschenden Fassung der Informationsblöcke abgerufen, wenn diese Informationsblöcke durch die Verarbeitungseinheit hindurchlaufen. Jeder Informationsblock enthält die jeweils vorhandenen Daten des Vorganges oder Prozesses und durchläuft die Verarbeitungseinheit und den Umlaufspeicher in geschlossenem Umlaufkanal. Zu jedem Zeitpunkt befindet sich ein Informationsblock in einer bestimmten Fassung. Während des Umlaufs kann ein Informationsblock verkleinert oder vergrößert werden, so daß sich ein dynamischer örtlicher Speicher für jeden Prozeß ergibt. Als Folge der von der Verarbeitungseinheit in den verschiedenen Zuständen angenommenen Fassung und Zusammensetzung kann ein Informationsblock neue Veränderliche aus sich heraus erzeugen, neue Eingangsdaten von außerhalb aufnehmen und Ergebnisse nach außen hin abgeben, und schließlich verschwindet der Informationsblock. Die wesentliche Eigenschaft des Anmeldungsgegenstandes besteht in der Wechselwirkung zwischen Informationsblöcken und der sich ändernden Konfiguration der Verarbeitungseinheit. Die spezielle Konfiguration der Verarbeitungseinheit wandelt die Informationsblöcke um, während die Informationsblöcke in Abhängigkeit von ihrer Fassung den gerätemäßigen Aufbau der Verarbeitungseinheit bestimmen. Dies steht in völligem Gegensatz zu der üblichen adressierten Anordnung von Daten in dem Speicher unter Durchführung von Prozessen in Form einer Bewegung der einzelnen Daten in getrennten Verarbeitungseinheiten. Der für den Umlauf der Informationsblöcke verwendete Kanal kann ein in sich geschlossener Kanal sein, oder es kann irgendeine Übertragungsstrecke verwendet werden, über die die Informationsblöcke nach entsprechender Aufmodulation auf einen Träger, wie
z. B. Hochfrequenz- oder Ultraschallstrahlung, übertragen werden. Die Informationsblöcke gelangen aus dem Packer in einem vorbestimmten vorzugsweise seriellen Format in diesen Umlaufkanal und treten aus dem Ende des Umlaufkanals in den Assembler ein, der das Serienformat in ein Parallelformat zur Eingabe in die Verarbeitungseinheit umwandelt. Nach dem Durchlaufen der Verarbeitungseinheit werden die Informationsblöcke dann in dem Packer
wieder in ein serielles Format mit vorbestimmter Reihenfolge der Daten- und Befehlsworte in den Informationsblöcken umgewandelt.
Im folgenden werden an Hand der Zeichnung Ausführungsbeispiele der Erfindung noch näher erläutert. In der Zeichnung zeigt
Fig. 1 ein schematisches Blockschaltbild einer Ausführungsform der Rechenanlage,
F i g. 2 ein Diagramm, das die Übertragung von Hilfssignalen in einem Kanal zeigt,
Fig. 3 ein Blockschaltbild mit Merkmalen der Ausführungsform der Rechenanlage für die Wortübertragung,
F i g. 4 eine schematische Darstellung des Aufbaus von den Ablauf der Rechenanlage steuernden Wörtern,
Fig. 5 ein Blockschaltbild von Merkmalen der Rechenanlage für die Anordnung von Informationsblöcken,
F i g. 6 ein Blockschaltbild des Assemblers der Rechenanlage bei Verwendung von zweidimensionalen Informationsblöcken,
F i g. 7 ein Blockschaltbild eines Puffers für die Bewegung der Informationsblöcke,
F i g. 8 ein Blockschaltbild einer Verarbeitungseinheit mit Einrichtungen zur Änderung der Reihenfolge der Informationsblöcke,
F i g. 9 ein Steuerdiagramm, das die Reihenfolge von Informationsblöcken darstellt,
F i g. 10 ein Blockschaltbild einer Verarbeitungseinheit,
Fig. 11a, 11b, lic die Verwendung von Zusatzspeichern,
Fig. 12 die Parallelschaltung von Verarbeitungseinheiten,
Fig. 13 die Serienschaltung von Verarbeitungseinheiten,
Fig. 14 eine geschlossene Schleife aus Verarbeitungseinheiten,
Fig. 15 Verbindungen in der Ausführungsform nach F i g. 14,
Fig. 16 die Eingabe und Ausgabe bei den Ausführungsformen nach den Fig. 14 und 15,
Fig. 17 eine Festkörperschaltungs-Version einer Ausführungsform der Rechenanlage,
Fig. 18 eine lineare Anwendung der Grundgedanken der Rechenanlage,
Fig. 19 eine schematische Darstellung einer Ausführungsform der Rechenanlage mit einem offenen Ausbreitungsweg als Umlaufkanal,
F i g. 20 eine schematische Darstellung des Zusammenwirkens von zwei Rechenanlagen, wobei die Verbindungswege zwischen ihnen den Umlaufkanal darstellen.
Die in den Zeichnungen dargestellten Ausführungsformen der Rechenanlage können als CPL-System bezeichnet werden, was eine Abkürzung der wesentlichen Merkmale des Systems ist. Hierbei bedeutet das CP den dauernden Umlauf der Informationsblöcke und das L die lose Konfiguration der Verarbeitungseinheit.
F i g. 1 zeigt die Hauptteile einer Ausführungsform der Rechenanlage mit einem Kanal 30 für den dauernden Umlauf von gespeicherten Informationsblökken, mit einem Assembler 32 zum Zusammensetzen der umlaufenden Informationsblöcke und mit einem Packer 31 zum Wiederherstellen eines Folgeaufbaus der Informationsblöcke für den Kanal 30. Der Assembler 32 bearbeitet einen Informationsblock nach einem vorgegebenen Schema und weist ein Register 33 auf, aus dem zu einer vorgeschriebenen Zeit die Daten- und Befehlsworte eines Informationsblockes parallel in ein Eingaberegister 34 einer Verarbeitungseinheit 35 verschoben werden. Wenn die vorgesehene Verarbeitung oder Operation ausgeführt ist, erscheint der Informationsblock in dem Ausgaberegister 36 der Verarbeitungseinheit 35, aus dem
ίο es parallel in das Register 37 des Packers 31 verschoben wird, von wo er seriell in den Kanal 30 übertragen wird. Der Kanal kann in hintereinander angeordnete Abschnitte 41, 42, 44 unterteilt sein. Eine Steuerschaltung 45 ist zum. Überwachen der Länge des Kanals vorgesehen, damit leere Abschnitte weggenommen oder hinzugefügt werden können, je nach dem Verkehrsumfang.
Packer 31 und Assembler 32 besitzen übliche Schaltungen zum Anpassen des fortlaufenden Datenflusses in dem Kanal an die schrittweise vor sich gehenden Prozesse in der Verarbeitungseinheit 35. Die Schaltungen können Kodier- und Dekodiereinrichtungen zwischen Fehlerberichtigungs-Kodes im Kanal und im bistabilen Multivibrator der Einheit 35 enthalten. Bei einfacher Ausführung können Packer und Assembler einfache Schieberegister sein. Die parallele Eingabe der Informationsblöcke in die Verarbeitungseinheit beläßt die gesamte Zeit für Rechenarbeiten.
Die Register 37 bzw. 33 im Packer und Assembler sind zur Anpassung der statistisch unregelmäßigen Bewegung in der Verarbeitungseinheit an den gleichmäßigen Fluß im Kanal vorgesehen.
Bei einem CPL-System muß der Kanal 30 eine Kapazität aufweisen, die der Menge der zu speichernden Daten oder Informationsblöcke angepaßt ist.
Möglichkeiten zur Herstellung eines Kanals bieten Verzögerungskreise für elektromagnetische oder mechanische Wellen, digitale Schieberegister oder FiImregister oder eine Kombination hiervon.
Der Kanal kann durch Kaskadenschaltung und Parallelschaltung verschiedener Kanäle gebildet werden, wodurch es möglich wird, jede beliebige Speicherkapazität sowie eine große Auswahl von Umlaufperioden zu erzielen. Es kann weiterhin eine Schaltung mit Drahtübertragung oder drahtloser Übertragung gewählt werden.
Durch Anwendung von Hilfsmitteln, wie Kodes und Systemen für fehlerfreie Fortleitung, Fehlermeldung oder Fehlerberichtigung kann jeder gewünschte Genauigkeitsgrad in dem Kanal erreicht werden.
Die Verarbeitungseinheit 35 setzt sich aus einem Satz von Bearbeitungselementen zusammen, die derart vorprogrammiert sind, daß beim Auftreten von digitalen Pegeln an η Punkten 2" verschiedene Funktionsanordnungen angenommen werden können. Jedes dieser Bearbeitungselemente kann eine logische oder Operationsfunktion ausüben und kann vom digitalen oder analogen Typ sein.
Wenn es sich bei dem System um eine Allzweck-Rechenmaschine handelt, muß die Wahl der 2" Anordnungen so getroffen sein, daß in einer kürzesten möglichen Folge von Schritten die Ausführung jeder Funktion möglich ist. Wenn es sich um einen Rech-
ner für Sonderzwecke handelt, kann die Auswahl der Anordnungen auf solche beschränkt werden, die für die jeweiligen Verarbeitungsaufgaben erforderlich sind.
Das System im allgemeinen
Das CPL-System stellt eine »Finite-State«-Maschine (FSM) dar, also eine Maschine, bei der die Verarbeitungseinheit eine endliche Anzahl von Konfigurationen einnehmen kann (vgl. dazu auch Gill, Arthur, »Introduction to the Theory of Finite-State-Machines«, New York, McGraw-Hill, 1962). Als solche ist sie imstande, jeden beliebigen Markov-Prozeß durchzuführen, woran als einzigem die Rechenanlage interessiert ist. Tatsächlich ist ein CPL-System eine Anordnung, in der viele Finite-State-Maschinen eine je Informationsblock oder pro Anzahl von Informationsblöcken nebeneinander bestehen können.
Eine FSM kann durch charakteristische Funktionen, wie etwa die folgenden, dargestellt werden:
z(v+1) =
Darin sind χ die Eingabedaten, ζ die. Ausgabedaten und 5 der Zustand, die sämtlich Funktion des Zyklus ν (des Umlaufs im CPL-System) sind.
Im CPL-System wird das Programm als Charakterisierung einer Finite-State-Maschine ausgedrückt und in dieser Form in den Informationsblöcken gespeichert. Für jeden Zustand der FSM sind Sätze von Bits vorgesehen, von Bits, die von der Verarbeitungseinheit abgetastet werden, damit diese bestimmte Verbindungen bzw. einen unterschiedlichen Aufbau annehmen kann. Es gibt Bits, die alle Übergänge darstellen. Während der nachstehenden Umläufe laufen alle Vorgänge und Übergänge ab, die für diese FSM vorgesehen sind.
Jede Aufgabe oder jedes Programm oder jede FSM sollte einen Eingabezustand haben, der für die Sammlung aller Daten vor dem Beginn des Verarbeitungsvorgangs sorgt, und einen Ausgabezustand, der die Übergabe der Daten in eine Ausgabeeinrichtung sicherstellt, wonach die Informationsblöcke aus dem Umlauf verschwinden.
Technische Lösungen
1. Hilfssignale bzw. Befehlsworte
Es ist gezeigt worden, daß die volle Ausnutzung der Grundidee, Informationsblöcke zu benutzen, darauf beruht, daß irgendwelche Hilfssignale in Form von Befehlsworten verfügbar sind. Zwei technische Möglichkeiten, derartige Signale zu erzeugen, werden aufgezeigt.
1 a) Ein Teil der Übertragungskapazität des Kanals wird für die Hilfssignale oder Befehlsworte freigehalten, indem dafür ein Bereich im Gebiet der Größe freigehalten wird, die in dem Kanal strömt. Zum Beispiel wird angenommen, daß ein Kanal einen Parameter X überträgt, dessen Wert die Information oder Datenworte ausmacht. Die Bereiche 931 und 933 (F i g. 2) können benutzt werden, um die für die Verarbeitung erforderliche Information in Binärform zu übertragen. Der Bereich zwischen den beiden starken Linien 9311 und 8312 stellt den Raum des zeitlichen Vorkommens des Parameters X dar, die Taktlinien 9313 stellen die Zeiten dar, zu denen der Parameter Λ' abgetastet wird. Bei diesem Kanal ist ein Dreikanalsystem erforderlich.
Die Zuweisung der Gebiete 931, 932 und 933 und die Zeitredundanz der Abtastungen muß gemäß der Eigenart der jeweiligen Maschine erfolgen, damit die geforderte Genauigkeit der Informations-Datenworte und der Befehlsworte erreicht wird.
Tatsächlich ist ein einziges Hilfssymbol ausreichend, um eine beliebige Menge zusätzlicher Informationen zu übertragen, weil eine Folge dieses Signals kodiert werden kann oder vereinbarungsgemäß festgesetzt werden kann, daß eine bestimmte Anzahl
ίο von Datenbits, die auf eiri Hilfs- oder Befehlssignal folgen, der Zusatzinformation angehören.
Ib) Die Kapazität des Kanals wird voll für die Übertragung der Bits der Datenworte ausgenutzt. Diese Bits sind kodiert, um ein bestimmtes Alphabet zu verwirklichen. Einige Symbole dieses Alphabets werden für Hilfssignale verwendet. Bei dieser Lösung sollte neben dem Impulstakt ein Symboltakt angewandt werden.
Auch hier ist nur ein einziges Hilfssymbol für die
ao gesamte Zusatzinformation ausreichend, wenn spezielle Übereinkünfte angewandt werden, wie es oben bei 1 a geschildert worden ist. Eine besondere Zuverlässigkeit des Hilfssignals ist zu erzielen, wenn aus dem Alphabet eine Gruppe von Symbolen aus-
»5 gewählt wird, die einen selbstverichtigenden Kode bilden.
Eine Lösung, die für kleine Systeme praktische Vorteile bietet, ist die Anwendung binärkodierter Dezimalzahlen, wobei die sechs unzulässigen Zahlen,
3Q die für die Dezimalzahlen nicht benötigt werden, für die Hilfssymbole oder Befehlsworte bereitgehalten werden. Wenn die Wahrscheinlichkeit für jede Art von Störung des benutzten Systems bekannt ist, können die sechs unzulässigen Zahlen so gewählt werden, daß die Betriebssicherheit für ein bestimmtes Hilfssymbol maximal ist.
Dank der Tatsache, daß technische Möglichkeit für die Erlangung der erforderlichen Hilfssignale aufgezeigt worden sind, wird an dem Ausgang des
Kanals 943 (F i g. 3) ein einfacher Kasten, der mit Dekoder 942 bezeichnet ist, angeschlossen, der die Datenworte und die Hilfssignale oder Befehlsworte auf getrennten Leitungen liefert. Ein entsprechender Kasten, der mit Kodierer 945 bezeichnet ist, wird am Eingang des Kanals 943 angebracht und vereinigt die Datenworte und die Befehlsworte, die auf verschiedenen Leitungen eingehen. Der Einfachheit halber werden die Leitungen für die Befehlsworte in vielen Fällen nachfolgend vollständig fortgelassen.
Die hier angegebenen Kodier- und Dekodiereinrichtungen können spezielle Kodierungen der Datenworte durchführen, um eine besondere Betriebssicherheit zu erzielen.
2. Erkennen der Wörter
Ein isoliertes Wort W in einem kontinuierlichen Fluß von Bits (F i g. 4 a) ist auf der Seite des höchstbewerteten Bits 935 deutlich abgegrenzt, nicht jedoch an der Seite des niedrigst bewerteten Bits 936.
Auf dieser Seite wird ein Hilfssymbol als »neues Wort« bezeichnet und durch einen Gedankenstrich ( —) indiziert, eingefügt. Bei dieser Anordnung ist der Anfangs- und der Endpunkt eines Wortes immer leicht aufzufinden (Fig. 4b). Bei der Benutzung dieses Hilfssymbols kann eine kontinuierliche Bitfolge in einen Satz von Wörtern beliebiger Länge transformiert werden, und umgekehrt kann ein beliebig langer Satz Wörter in eine kontinuierliche
509 531/133
9 10
Folge von Bits transformiert werden, ohne da- Ausgabefolge erzeugt. Wenn das Symbol (1) »Neuer
zwischenliegende Intervalle. Informationsblock« eintrifft, überträgt der Assemb-
In der Verarbeitungseinheit sind mehrere Schiebe- ler 946 den Inhalt der Register at in die Register bh register at ... an vorgesehen, um die Worte eines In- worauf er abgeschaltet wird und wieder damit beformationsblockes (F i g. 3) zu empfangen. Ein Zäh- 5 ginnt, daß er einen neu eintreffenden Informationsler-Dekoder 100 steuert den Eingang dieser Re- block in das erste Register at leitet. Bei jedem Symgister über Gatter 941 an. Beim ersten Bit eines bol (2) »neues Wort« schiebt der Assembler zum Wortes wird ein Flipflop 101 gesetzt und dann wer- nächsten Register at. Wenn nach dem Rechnen bzw. den die Gatter 941, 942 des angesteuerten Registers der Verarbeitung das Übertragen von den Re- »a« in die Lage versetzt, Informationsimpulse und io gistern C1 zu den Registern dt erfolgt, wird der Packer Schiebeimpulse zu übertragen. Sobald ein Wort be- 948 abgeschaltet; er erzeugt das Symbol (1) und beendet ist, erscheint von dem Dekoder 942 das Signal ginnt damit, daß er den Inhalt des ersten Registers dx »neues Wort« und löscht das Flipflop 101. Die verschiebt. Sobald dieses Register dx geleert ist, erGatter dieses Registers werden dann abgeschaltet zeugt der Packer das Symbol (2) und beginnt den und der Zähler-Dekoder 100 verschiebt zu einem 15 Inhalt des zweiten Registers d2 zu verschieben. Bei weiteren Register »α«. den anderen Registern ist der Vorgang entsprechend,
Ein entsprechender umgekehrter Vorgang wird bis alle Register (dt) geleert sind und ein weiteres ausgeführt beim Übertragen der in den Ausgangs- Symbol »neuer Informationsblock« erzeugt wird. Schieberegistern C1 ... c„ der Verarbeitungseinheit Auf diese Weise wird jeder Informationsblock, der 944 gespeicherten Wörter in den Kanal 943 zusam- 20 sich als kontinuierliche Folge in dem Kanal bewegt, men mit den Hilfssymbolen »neues Wort« am Ende im richtigen Augenblick mit der feststehenden Anjedes Wortes. Im Ruhezustand werden Zähler-Deko- Ordnung der Wörter in die Register ö; der Verarbeider 102 und Flipflop 103 abgeschaltet; der Übertra- tungseinheit eingeführt, gungsbefehl der Informationsblöcke setzt das Flipflop 103, daher beginnt das Register C1 seinen Inhalt 25 3 b) Zweidimensionaler Informationsblock in die Datensignaleingabe des Kodierers 945 abzugeben. Drei Hilfssymbole sind erforderlich, die hier fol-
Sobald C1 geleert ist, schaltet ein Signal von dem gendermaßen bezeichnet werden: Gatter 104 das Flipflop 103 ab und läßt eine Einheit
in dem Zähler-Dekoder 102 zählen; dieses Signal 3° (1) »neuer Informationsblock«,
setzt nach einer in 105 erzeugten passenden Verzö- /2\ »neues Wort«
gerung wiederum das Flipflop 103. Auf diese Weise '
wird nach dem Ende des Wortes in C1 ein Hilfssignal (3) »neuer Absatz«, in dem Kodierer 945 ausgelöst, und die Übertragung
des Inhalts von C2 beginnt. Die gleiche Aufeinander- 35 Ein Schemabild des Aufbaus dieser Art von Blät-
folge geht bei den folgenden Registern C1 selbsttätig tern gibt F i g. 6 wieder; dort ist der Übersichtlich-
vonstatten. keit halber das Register αί;· in Matrixform mit
_ . A , ,Ti .· i_i» 1 m Reihen und η Spalten gezeichnet, und die Re-
3. Ausgestaltung der Informationsblocke gister ^ c.. und ^^ fo B rtgelassen. Der Assemb.
Der Aufbau eines Informationsblockes wird hier 40 ler 946 besitzt hier zwei Zähler, einen für die Wahl
als Dimension des Informationsblockes bezeichnet. der Reihe, den anderen für die Wahl des Registers
Die Befehlsworte sind die Werkzeuge zum Lesen des in jeder Reihe. Die Symbole (2) laufen in die Zähler
Informationsblockes in der von dem Kanal bestimm- 100 und 102. Das Symbol (1) schaltet beide Zähler
ten Zeitfolge. ab. Die anderen Merkmale entsprechen denen, die
„._.,. .,Tr T-i 1 45 bei dem eindimensionalen Informationsblock beschrie-
3 a) Eindimensionaler Informationsblock ^ worHen sind
Die einfachste Art eines Informationsblockes wird Wenn bestimmte Zuordnungen für jeden Absatz
durch eine einfache Folge von Wörtern dargestellt. und jedes Wort vorgesehen werden, kann die Länge Zwei Hilfssymbole sind erforderlich, sie werden wie der zugehörigen Register dem jeweils größten erwarfolgt bezeichnet: 5° teten Inhalt angepaßt werden. Jeder Absatz kann
im allgemeinen eine verschiedene Zahl von Regi-(1) »Neuer Informationsblock«, stern umfassen und jedes Register kann unterschied-
n\ w ^ I*0*1 lanS sen1·
[Z) »neues wort«. Ein ßlatt kann wenige Worte verteilt in spezielle
55 Register des gesamten Satzes aufweisen. Die Folge
Eine schematische Darstellung dieser Anordnung von Symbolen (2) und (3) bildet eine kodierte
und der Rückübertragung dieser Art von Informa- Adressinformation zum Auffinden der Wörter. Um-
tionsblöcken ist in F i g. 5 gezeigt. Vier Sätze von gekehrt können diese Speicherplätze eine andere
Registern sind hierbei wichtig: Die Schieberegister a„ von dem Blatt gelieferte Information bilden,
in die der Assembler 946 die Einzelwerte eingibt; die 60 .
Eingaberegister bh in die ein Informationsblock in 3c) Dreidimensionaler Informationsblock
einem Zug übertragen wird und von denen aus ein In bestimmten Fällen ist es von Nutzen, stärker
Informationsblock von der Verarbeitungseinheit ver- differenzierte Informationsblocke zu erhalten, auf
wendet wird; die Ausgaberegister C1-, in denen die denen mehrere Teile zu unterscheiden sind. Durch
neue Ausgabe des Informationsblockes von der Ver- 65 Ausbau des vorstehend Beschriebenen kann diese
arbeitungseinheit hergestellt wird, die Register dh in Erweiterung der Diflerenziertheit in Beziehung ge-
die der neue Informationsblock in einem Zug über- setzt werden zu einer Vermehrung der Koordinaten
tragen wird und von denen aus der Packer 948 die oder Dimensionen des Informationsblockes.
11 12
Für die drei Dimensionen sind die folgenden Hilfs- formationsblockes B und nötigenfalls den Speichersymbole erforderlich: platz in dem Informationsblock aus der Verarbeitungseinheit 944 in das Speicherregister 106. In allen
(1) »neuer Informationsblock«, nachfolgenden Zyklen vergleicht der Kreis 107 den
(2) »neues Wort«, 5 Namen des Informationsblockes in dem Register bt
(3) »neuer Absatz«, mit dem Namen des Informationsblockes in dem Re-
(4) »neuer Abschnitt«. gisterlO6. Wenn die beiden Namen übereinstim
men, wird der in 106 gespeicherte Datenwert in die
Die Schaltungen für einen derartigen Informa- Verarbeitungseinheit 944 zugleich mit den anderen tionsblock können analog zu den in F i g. 6 ausge- io Daten für den Informatiohsblock B übertragen. Es bildet sein; wie dort weist der Assembler drei Zäh- werden so viele Register 106 vorgesehen, wie gleichler für die Wahl des Registers in jedem Absatz, zeitige Übertragungen erforderlich sind. Wenn alle einen für den Absatz in jedem Abschnitt und einen Register 106 besetzt sind und ein Informationsblock für jeden Abschnitt des Informationsblockes. einen Datenwert zu übertragen hat, kann der Infor-Eine weitere Unterteilung des Informationsblok- 15 mationsblock so lange ohne weitere Verarbeitung kes kann zu einem etwas komplizierten System füh- umlaufen, bis ein Register 106 verfügbar wird,
ren. Es ist dann zweckmäßiger, mehrere aufeinan- Dieses System führt die Übertragung meistens in derfolgende Informationsblöcke in einer »Gruppe« einem Umlauf aus, erfordert aber so viele dinglich aufeinander zu beziehen, sofern sie zu der gleichen ausgebildete Register 106 in Verbindung mit der Aufgabe gehören. 20 Verarbeitungseinheit 944, wie gleichzeitige Übertra-In jeder CPL-Maschine müssen einige Schlüssel- gungen erforderlich sind.
Wörter eine starre Zuordnung besitzen, vorzugsweise . -. T, .. . ,. , ~ U1 r ,
. j . rj, ., j „ ,b n. · i..· * · j 4c) Kontinuierliches Durchlaufen der
m den ersten Teilen der Folge. Die wichtigsten sind: ' T f . ,,.. .
Bezeichnung der Aufgabe, was für die Herstellung mtormationsDiocKe
der Verknüpfung mit anderen Informationsblöcken 25 In einer Alternative zu der Verwendung zahlrei-
und der Beziehung nach »außen« bedeutsam ist, eher dinglich ausgeführter Register enthält in der
das »Kodewort«, das die Art der anzuwendenden Ausführungsform nach F i g. 8 das Format der In-
Informationsblockanordnung anzeigt, die Maschi- formationsblöcke Register Z für das Abwärtslaufen
nensprache des Programms und einige allgemeine in der Zirkulation und Register W für das Laufen
Voreinstellungen der Verarbeitungseinheit. 30 aufwärts in der Zirkulation.
, , . , . , ,, , Wenn ein Datenwert von einem Informations-
4. Verbindung zwischen den Informationsblocken blockt in einen InformationsblockB zu übertra-
Wenn eine Aufgabe über eine Gruppe von Infor- gen ist, werden der Datenwert, der Name von B und
mationsblöcken verteilt ist, wird die Übertragung nötigenfalls der Speicherplatz in B von dem Steuer-
von Informationen zwischen den Informationsblok- 35 werk 121 in die Register bz der Speichereinheit 123
ken der Gruppe erforderlich. Es können auch Fälle zum Verzögern oder durch ein zweites Steuerwerk
mit Übertragung zwischen den Informationsblocken 125 in ein besonderes Ausgaberegister dw zum Be-
für verschiedene Aufgaben auftreten, wie beim Auf- schleunigen übertragen.
teilen eines Programms oder von Daten. Es können Der Inhalt des Registers bz wird in sein Nachbardrei typische Arten von Datenübertragung erf order- 4° register cz und von dort in das Register dz während lieh sein. des Operationszyklus überführt, wie für die Regi-4a) Auslieferung an nachfolgende sier *' T1 c' der Verarbeitungseinheit, jedoch mit Infcrmationsblöcke einer anderen zeitlichen Steuerung Der Inhalt von
bz geht nach dz über, wenn in der Verarbeitungsem-
Was die Information angeht, die allen Informa- 45 heit ein Informationsblockwechsel stattfindet. Infolge
tionsblöcken in einer Gruppe zuteil werden sollte, dieser zeitlichen Steuerung wird ein abwärts kodier-
wie der Satz der Kopfwörter (Name, Kodewort, tes Informationsdatum durch den Assembler in az
Hilfswörter), werden bestimmte Register mit Kopf- eingeführt und findet sich im Packer nach zwei In-
information unter Steuerung durch das Kodewort formationsblockwechseln. Daher laufen die in den
unterschiedlich behandelt, um diese umlaufende 50 Register 123 gespeicherten Daten wie die Informa-
Verständigung herzustellen. Wenn eine Aufgabe eine tionsblöcke um, fallen jedoch je Umlauf um einen
Gruppe umfaßt, enthält das Kodewort ein Symbol, Informationsblock zurück.
welches das Löschen der Kopfregister verhindert. In Gegensatz hierzu wird ein aufwärts kodiertes
Auf diese Weise wird die einleitende (Kopf-)Infor- Informationsdatum von dem Assembler 946 in das
mation, die in den Registern der Verarbeitungsein- 55 spezielle Eingaberegister aw gegeben und beim ersten
heit im Augenblick des Übertragene des ersten In- Informationsblockwechsel von dem Vorwärtssteuer-
formationsblockes erscheint, in allen folgenden In- werk 125 unmittelbar nach dw überführt, was be-
formationsblöcken der Gruppe wiederholt. Die deutet, daß der Datenwert mit dem vorhergehenden
»Gruppen-Ende«-Information ermöglicht wieder Informationsblock vereinigt wird. Die in den Spal-
das normale Löschen dieser Register. 60 ten aw, bw, dw der Register gespeicherten Daten zir-
.,. vv, , _ . kulieren daher wie die Informationsblöcke, bewegen
4b) Übertragen durch Zusatzregister sich aber je Umlau{ um dnen informationsbl°ck
In der Verarbeitungseinheit (F i g. 7) sind Hilfs- aufwärts. Wenn der in bz oder bw vorhandene Inregister 106 vorgesehen. Wenn ein Datenwert von formationsblockname mit dem in b1 vorliegenden einem Informationsblock, mit dem er ankommt oder 65 Namen übereinstimmt, wird der in bz oder bw vorin dem er zufällig enthalten ist, auf einen anderen liegende Datenwert sofort in die Verarbeitungsein-Informationsblock B zu übertragen ist, überträgt der heit übertragen, und die Register bz oder bw werden Steuerkreis 107 den Datenwert, den Namen des In- für eine weitere Übertragung verfügbar.
13 14
Nach dieser Methode können viele Daten je Satz heit überführt werden. Diese beiden Funktionen von ζ Registern oder w Registern aw, bw, dw und je werden als Eingabe- bzw. Ausgabeoperationen beUmlauf übertragen werden, aber die Bewegung kann zeichnet.
viele Umläufe erforderlich machen, je nach dem Bei einem CPL-System sind die Eingabe-Ausgabe-
Abstand zwischen den Informationsblöcken. Eine 5 Operationen sehr einfach, weil eine einzige Einrich-
Zunahme der Geschwindigkeit des Abwärtswanderns tung, der Kanal, die verschiedenen Funktionen der
wird erreicht durch eine Logik zum Festhalten des Pufferspeicherung, des Hauptspeichers und des
Inhalts von bz, bis ein weiterer Datenwert in az er- Steuersystems ausübt. Es ist deshalb nur eine einzige
scheint oder eine neue Übertragung durch den in Bewegung erforderlich: die Übertragung in den und
der Verarbeitungseinheit vorliegenden Informations- ίο aus dem Kanal.
block angefordert wird. Nach dieser Methode erfol- Darüber hinaus weisen in dem CPL-System be-
gen die Übertragungen zwischen Informationsblök- stimmte Hilfsausgabedaten, wie das Berechnen der
ken verschiedener Gruppen gleichzeitig und unab- Benutzergebühren, die Redundanz von Paritätszif-
hängig. fern, die Verschiedenheit in den Mehrheitsgattern,
5. Bewegung der Informationsblöcke 15 einfache Organisation auf.
Die Zeit fur das Einbringen eines neuen Informa-
Es sind Möglichkeiten vorgesehen, die Informa- tionsblockes in den Kreislauf wird gegeben durch
tionsblöcke gegenüber ihrer normalen Umlaufstel- den »Leitinformationsblock«, nach dem alle leeren
lung zu verschieben, weil Bereiche zusammengefaßt sind.
(a) während des Verarbeitungsvorgangs die Infor- ao Wenn die neuen Daten bereits nach dem CPL-Symationsblöcke im allgemeinen ihren Umfang stem angeordnet sind, können sie in Serie oder parändern, weshalb eine Korrektur ihrer gegen- allel am Pufferregister des Packers eingeführt werseitigen Lage erforderlich ist, · ~ den· Wenn die neuen Daten keine Informations-
(b) nach Beendigung einer Aufgabe die betreffen- blockanordnung besitzen, können sie zunächst unden Informationsblöcke verschwinden und eine 2S mittelbar in die richtigen Ausgaberegister c, der Verleere Stelle in dem Umlauf hinterlassen. Um arbeitungsemheit eingeführt werden, und danach diese Räume auszunutzen, ist es erforderlich, überführt der Packer 948 und die Codiereinrichtung alle übrigen Informationsblöcke zu einer unun- 945 diese Daten in das nchtl8e Informationsblockterbrochenen Folge zusammenzuschließen, format. .,,..,
(c) wenn die Zahl der umlaufenden Informations- 3° Der für das Einbringen neuer Informationsblocke blöcke sich verringert, kann, wie in Fig. 1 an- verfügbare Zeitraum beginnt mit dem Vorbeilauf des gedeutet, ein Teil des Kanals überbrückt wer- Leitinformationsblockes und endet mit dem Emtrefden, damit die Umlaufperiode soweit wie mög- fen eines bereits umlaufenden Informationsblockes lieh mit der wahren Verarbeitungszeit überein- am Decodiergerät 942. Wenn in diesem Augenblick stimmt. Um einen Teil des Kanals auszuschal- 35 der Eingabevorgang einer Gruppe nicht abgeschlosten, ist es ebenfalls notwendig, alle leeren Be- sen ist' kann em zusätzliches Stück Kanal eingeschalreiche zu einer einzigen Gruppe zusammenzu- tet werden. Wenn keine Kanal-Stücke mehr vorhanfassen; das macht die erwähnte Verschiebung den sind> wird der bereit,s eingeführte Buchteil im erforderlich. »Eingabe«-Zustand sein (bei dem keine Verarbei-
40 tung und kein Vorrücken erfolgt), und der restliche
Eine Verschiebung eines Informationsblockes ge- Teil wird unmittelbar anschließend an den ersten
genüber seiner Position in der Zirkulation kann ent- Teil eingeführt, sobald in dem Kreislauf Platz frei
weder durch Variieren der Zeit, zu der es übertra- wird.
gen wird, oder durch Erhöhung der Pufferspeicher- Eine in einem einzigen Informationsblock unterfähigkeit des Packers oder des Assemblers erfolgen. 45 gebrachte Aufgabe leitet die Verarbeitung beim er-Eine allgemeine Vorlaufbewegung zum Zusam- sten Kreislauf ein. Eine in einer Gruppe enthaltene menschließen aller leeren Bereiche entsteht automa- Aufgabe (die Gruppe besteht aus mehreren Informatisch mit der Logik, die jeden Informationsblock tionsblöcken) sollte in ihrem Programm den »Einin der Verarbeitungseinheit (z. B. in den Registern C1-) gabe«-Zustand aufweisen. Beim Eingabe-Zustand festhält, bis ein neuer Informationsblock am Assem- 50 sind Verarbeitung und Vorrückbewegung aufgehobler eintrifft. In F i g. 9 ist das fortlaufende Zusam- ben. Der Übergang vom Eingabe-Zustand in den menführen der leeren Bereiche dargestellt, das dort ersten Verarbeitungs-Zustand wird von außen bedurch Anwenden der erwähnten Regel im Verlauf fohlen, sobald die gesamte Gruppe eingeführt ist.
von sechzehn Umläufen erfolgt. Wenn ein Verarbeitungsvorgang abgeschlossen ist, Damit der Vorlauf beendet wird, ist ein Festpunkt 55 springt das Programm in den »Ausgabe«-Zustand, in der Zirkulation vorzusehen. Dazu dient ein be- wozu die Anzeige der gesuchten Ausgabe gehört. Ein sonderer, als »Leitinformationsblock« bezeichneter Informationsblock oder eine Gruppe im Ausgabe-Informationsblock, welcher, weil er mit einem spe- Zustand zirkuliert fortlaufend, bis die gewünschte ziellen Codewort versehen ist, niemals gegenüber Ausgabeeinheit bereit ist, die Ausgabedaten anzuseiner Bezugslage verschoben werden kann. Der 60 nehmen. Jeder Informationsblock, der seinen Inhalt Leitinformationsblock wird auch beim Einfügen an eine Ausgabeeinheit übertragen hat, wird nicht neuer Informationsblöcke benutzt. mehr in den Kanal überführt und verschwindet.
6 Eingabe — Ausgabe Die Ausgabeeinheit kann beliebige Geschwindig-
B keiten haben, und sie empfängt die Ausgabedaten
Für den Verarbeitungsvorgang müssen geeignete 65 stückweise während der Vorüberläufe der Informa-
Informationsblöcke in den Kreislauf eingeführt wer- tionsblöcke. Der Name der Aufgabe und der Name
den. Um das Ergebnis des Verarbeitungsvorgangs zu der Ausgabeeinheit sind die Bindeglieder für diese
erhalten, müssen die Endwerte in eine Ausgabeein- selektive Übertragung.
15 16
Ein Gegenstand der Information, der in der Aus- einem Zyklus ausgeführt werden kann, gibt es nur gäbe jeder Aufgabe von Bedeutung ist, ist die von einen Übergang zum Ausgabezustand. Wenn die der Aufgabe benötigte Rechnerzeit. Operation einen rekursiven Prozeß erforderlich
Ein Register der Ausgabedaten, im letzten Infor- macht, wie etwa bei konvergierenden Reihen, gibt es mationsblock jeder Gruppe gelegen, ist für eine 5 zwei Übergangsarten, eine Art, bei der die gleiche nachstehend als »Belastung« bezeichnete Zahl reser- Operation mit dem vorhergehenden Teilresultat viert. Jedesmal, wenn ein »Name«-Wort in die Ver- wiederholt wird, und die andere (nach Befriedigung arbeitungseinheit eintritt (d. h., daß eine neue Auf- bestimmter Bedingungen) in den Ausgabezustand, gäbe beginnt), beginnt ein Zähler die Impulse eines Bei diesen einfachen Fällen ist der Eingabezustand niederfrequenten Taktgebers zu zählen. Wenn der χ ο nicht berücksichtigt worden, weil ein einzelner Inletzte Informationsblock dieser Aufgabe die Verar- formationsblock in einem Zuge eingeführt wird, und beitungseinheit verlassen soll, wird die von diesem die Verarbeitung beginnt mit dem ersten Kreislauf.
Zähler erreichte Zahl zu dem Inhalt in dem für die Wenn eine einzelne Funktion in gleichbleibender
Belastung reservierten Register addiert. Die »Bela- Weise auf eine lange Reihe von Daten angewendet stung« zieht demnach sowohl die Zahl der Kreis- 15 werden soll, sieht die CPL-Lösung folgendermaßen laufe wie die Größe jedes einzelnen Informations- aus: Es wird eine aus zwei Teilen bestehende Grupblockes oder jeder Gruppe in Betracht, die die Auf- pe gebildet; der erste Teil, ein Informationsblock, gäbe in jedem Kreislauf hatte. enthält das Programm und die in Verarbeitung be-
Weitere interessante Ausgabedaten geben die Zu- griffenen Daten; der zweite Teil umfaßt die restliverlässigkeit des ausgeführten Vorgangs an. Die Re- ao chen Daten in der nötigen Anzahl von Informadundanz der Paritätsbits und Unstimmigkeiten in tionsblöcken. Die Verarbeitung beginnt in dem erden Mehrheitsgattern können gleichermaßen zu der sten Informationsblock mit dem Programm und den Belastung hinzugefügt werden. .. dort gespeicherten. Daten; wenn der erste Informa-
, n. ,. , .^ . ■«./ tiönsblock die Verarbeitungseinheit verläßt, enthält
7. Die Verarbeitungseinheit ^ es em Zwischen. oder Endergebnis an Stelle der ur-
Die Verarbeitungseinheit kann bis zu 2N unter- sprünglichen Eingabedaten. Eine Kopie des Pro-
schiedliche Konfigurationen annehmen, von denen gramms verbleibt der Verarbeitungseinheit, und die
jede ihre eigene Schaltung, Topologie und zeitliche folgenden Informationsblöcke werden in der glei-
Folge der Operationen aufweisen kann. Zu diesem chen Weise verarbeitet.
Zweck besitzt die Verarbeitungseinheit (F i g. 10) 30 Wenn die Verarbeitung jedes Datenwertes in
eine Decodiereinrichtung 965, um eine der 2" Kon- einem Zyklus ausgeführt werden kann, ist die ge-
figurationen aus den η Programm-Bits zu bestim- samte Gruppe im Ausgabezustand nach einem Kreis-
men; und jeder der 2N Ausgabe-Codes der Decodier- lauf und enthält Endresultate an Stelle der ursprüng-
einrichtung wird als eine eindeutige Kombination von liehen Eingabedaten. Wenn η Zyklen zum Verarbei-
Pegeln auf den Ausgabepegel in die Verarbeitungs- 35 ten eines einzelnen Datenwertes erforderlich sind,
einheit 944 übertragen, um mit Hilfe von Gattern befindet sich die ganze Gruppe nach /!Kreisläufen
eine spezielle Topologie zu richten, und gleichzeitig im Ausgabezustand. In diesem Fall kann wegen des
laufen diese Pegel in eine Codiereinrichtung 966, großen Umfangs der in den Kreislauf einzuführen-
um mit Hilfe einer Matrix 969 eine der (m2)N den Information ein Eingabezustand erforderlich
vorhandenen zeitlichen Folgen für die Verarbei- 40 sein.
tungseinheit zu richten. Ein durch das Eintreffen Wenn das Übergangsdiagramm der Verarbeitung
eines neuen Informationsblockes in den ö-Registern monoton verläuft, läßt sich folgende Lösung anwen-
ausgelöster Zeitgeber 967 erzeugt alle Zeitimpulse, den. Es wird eine Gruppe gebildet, die aus einem
die in den m Folgen angefordert werden können. ersten Informationsblock besteht, der die Daten und
Die Verarbeitungsschaltung 944 liest die Eingabe- 45 das Programm des ersten Zustands enthält, darauf daten in die Register bk...bm ein und erzeugt Aus- folgen weitere Informationsblöcke mit den Programgabedaten in den Registern C1... cv. Der tatsächli- men der folgenden Zustände. Sobald die Operation ehe Aufbau und der Umfang der Verarbeitungsein- des ersten Zustands ausgeführt sind, werden die heit ist eine Frage der Auslegung jeder einzelnen Überschriften der Gruppe und die Teilresultate auf Maschine. 50 den nächsten Informationsblock übertragen, der das
Das »Code-Wort«, das immer seinen Platz in O1 Programm des nächsten Zustands enthält. Die gleihat, kann die Decodiereinrichtung voreinstellen und ehe Folge wird für die folgenden Informationsblöcke spezielle Befehle an einen Steuerkreis 970 für be- angewendet. Wenn ein Informationsblock eine Restimmte Punkte geben. Der Programmwechsel in der kursivoperation erforderlich macht, bleibt der Infor-Aufeinanderfolge der Zustände kann herbeigeführt 55 mationsblock während der nötigen Anzahl Umläufe, werden entweder durch Verschieben des Inhalts in Bei dieser Lösung wird die Gruppe während der die Programmregister oder durch Schalten der De- Verarbeitung an Umfang reduziert, indem die Procodiereinrichtung auf unterschiedliche Programm- gramme der bereits benutzten Zustände aufgegeben register. werden, bis die Gruppe schließlich auf einen In-8. Betriebsarten 6o formationsblock reduziert ist.
Für den allgemeineren Fall einer langen Verar-
Die Organisation der Arbeit in einem CPL-System beitung von umfassenden Daten wird eine aus vier wird hier in Beispielen für die am häufigsten einer Teilen bestehende Gruppe hergestellt, die das ProRechenmaschine vorgelegten Probleme erläutert. gramm bzw. die Eingabedaten bzw. die Zwischen-
Der einfachste Fall ist die Ausführung einer arith- 65 resultate bzw. die Endresultate enthalten. Die Aufmetischen Operation an einem einzelnen Datensatz. einanderfolge der Informationsblöcke oder eine Programm und Daten sind in einem einzigen Infor- Adressenzahl werden zur Bezugnahme auf jeden mationsblock enthalten. Wenn die Operation in Teil bei der Übertragung von Informationen zwi-
17 18
sehen Informationsblöcken benutzt. Die Verarbei- schoben; darüber hinaus stellen die Ausgaberegister
tung folgt dem Zustands-Diagramm, und Operatio- der einen Verarbeitungseinheit gleichzeitig die Ein-
nen können in allen Informationsblöcken während gaberegister der nächsten dar.
jedes Kreislaufs ausgeführt werden oder auch nur In diesem Falle müssen die Rechenzeiten für alle
in einigen Informationsblöcken. Informationsblöcke, 5 Verarbeitungseinheiten gleich sein, woraus sich
die Verarbeitungsteile enthalten, die nicht wieder- eine Vereinfachung in der Organisation der Verar-
holt werden, verschwinden nach der Benutzung. beitungseinheiten ergibt. Der Übergang der Informa-
Wenn die Datenmenge so groß ist, daß die Ver- tionsblöcke zwischen den Verarbeitungseinheiten
arbeitung des Informationsblockes unökonomisch 981 muß für alle Einheiten übereinstimmen, daher
wird oder daß sie die volle Kapazität des Kreis- io sind die Rechenfolgen für alle Einheiten gleich; dar-
laufs überschreitet, können Sekundärspeicher benutzt aus ergibt sich, daß nur ein Impulsfolgegenerator er-
werden. Hier sind mehrere neue Fälle zu unterschei- forderlich ist, der alle Operationseinheiten versorgt.
den. Bei dieser Lösung werden weder Decoder noch Codierwerke, Assembler oder Packer benötigt. Ein all-
a) Im ersten Fall liegt ein monotoner Verarbei- 15 gemeines Blockdiagramm kann das Aussehen der tungsgang mit vollständiger Beherrschung der F i g. 15 haben.
Maschine vor. Die Eingabedaten laufen in das Die Informationsblöcke werden in gleichmäßigen
datenverarbeitende CPL-Gerät (Fig. lla) kon- Zeitintervallen von einem Satz Register 982 in die
tinuierlich von den Sekundärspeichern 151 bis nächste Verarbeitungseinheit 981 und weiter in den
154 aus ein, die als weitere CPL-Systeme, Um- ao nächsten Satz Register 982 verschoben. Jeder Daten-
laufspeicher oder statische Speicher ausgebildet wert in den Registern wird von der nachfolgenden
sein können. Das umlaufende Element des Verarbeitungseinheit wieder benutzt; die Verarbei-
datenverarbeitenden CPL-Geräts enthält das tungseinheit — je nach den Programm-Bits in Kom-
Programm. Die Ausgabedaten laufen kontinu- bination oder in Folge organisiert — erzeugt be-
ierlich in Ausgabespeicher 155 bis 158 ein. 25 stimmte Pegel an den Eingabegattern des nächsten
Satzes Register. Wenn der" Übertragungsimpuls ein-
b) Im zweiten Fall liegt monotoner Verarbeitungs- trifft, erzeugen diese Pegel die neue Ausgabe des Ingang und Teilnahme anderer Benutzer vor. In formationsblockes in diesen Registern.
diesem Fall fließen die Eingabe- und Ausgabe- In dieser Version kann das System als Rechendaten nicht kontinuierlich, sondern periodisch, 30 speicher einer speichernden Rechenkette bezeichnet und es ist ein Steuersystem 956 erforderlich werden. Die beste Organisation der Informations-(Fig. lib). Wenn irgendein Sekundärspeicher blöcke hierfür unterscheidet sich gegenüber derjeals Umlaufspeicher ausgeführt ist, muß in dem nigen für die oben beschriebenen CPL-Systeme, die Steuersystem eine Pufferspeicherung dafür vor- nur eine einzige Verarbeitungseinheit 981 und einen gesehen sein. 35 Kanal 944 aufweisen.
In jenem Falle ist das Bestreben, die Zahl der in
c) Schließlich kann der allgemeine Fall mit meh- dem Kanal gespeicherten Informationsblöcke klein reren Teilnehmern vorliegen. Das CPL-System zu halten, und alle erforderliche Kompliziertheit der weist eine spezielle Eingabe und Ausgabe auf, einzigen Verarbeitungseinheit wird dafür in Kauf verbunden mit einem Steuersystem, welches das 4° genommen. Hier dagegen ist das Bestreben, die Verrichtige Programm 161 und die richtigen Daten arbeitungseinheit möglichst unkompliziert zu halten, 162 in Sekundärspeichern für die Ausgabe ge- während der Zahl der dann erforderlichen Informaspeichert angibt (Fig. lic). Die in Umlauf be- tionsblöcke bereitwillig Rechnung getragen wird,
findliche zugehörige Gruppe wird kontinuier- An einem bestimmten Punkt der geschlossenen lieh auf den neuesten Stand gebracht und ver- 45 Schleife nach Fig. 14 ist es erforderlich, die Datenändert, um Datenverarbeitung beliebigen Um- eingabe und die Datenausgabe vorzusehen. Eine Löfangs ausführen zu können. Da der Eingabe- sung für die Eingabe-Ausgabe-Operationen ist in Ausgabe-Verkehr periodisch vor sich geht, Fig. 16 angegeben. An einem ausgewählten Punkt kann das gleiche Steuersystem von anderen der geschlossenen Schleife ist an Stelle eines einBenutzern mitverwendet werden. 50 fachen Satzes von Registern 982 ein dreifacher Satz
von Registern 985, 986, 987 angeordnet, von denen
9. Ausführung mit integrierter Schaltung ein Satz 98S für die normale Übertragung, ein zweiter Satz 986 für die Eingabe und ein dritter Satz 987
Die Kapazität des Kanals in einem CPL-System für die Ausgabe vorgesehen ist.
kann auf jeden beliebigen Wert vergrößert werden 55 Ein gerade in Verarbeitung befindlicher Informa-
durch Vergrößern der Länge oder der Bit-Frequenz tionsblock, der aus der Verarbeitungseinheit (N) 981
oder beider. Um die Verarbeitungsmenge je Zeitein- austritt, wird durch den ersten Registersatz 985 über-
heit zu erhöhen, können mehrere Verarbeitungs- tragen und zur Fortsetzung der Verarbeitung in der
einheiten981 in Parallelschaltung (Fig. 12) oder in Verarbeitungseinheit (N+1)981 wieder verwendet.
Kaskadenschaltung (F i g. 13) verwendet werden. 60 Ein Informationsblock im Ausgabezustand von der
Die Kaskadenschaltung von Verarbeitungsein- Verarbeitungseinheit (N) 981 wird in den dritten Reheiten ist interessant, weil sie auf eine große Zahl gistersatz 987 überführt und dort für die Übertraderartiger Einheiten ausgedehnt werden kann, um gung in einen Ausgabekreis bereitgehalten; wenn damit eine zu einer geschlossenen Schleife geformte dieser Registersatz 987 von einem vorangehenden Kette zu bilden, mit der der Kanal völlig ausgeschal- 65 Ausgabe-Informationsblock belegt ist, der auf die tet werden kann (F i g. 14). Bei dieser Ausführungs- Übertragung nach außen wartet, kann der neue Inform werden die Informationsblöcke unmittelbar von formationsblock immer die Zirkulation durch den einer Verarbeitungseinheit 981 in die nächste ver- ersten Registersatz 985 wiederholen. Ein von einem
19 20
Eingabekreis herkommender Informationsblock wird Übersprechen zwischen Senden und Empfangen zu in den zweiten Registersatz 986 gegeben, und in dem vermeiden, können die Informationsblöcke mit ersten Zyklus, in dem sich kein von der Verarbei- einem durch Programm festgesetzten Intervallplan tungseinheit (N) 981 her zu verschiebender Informa- derart gesendet werden, daß beim Zurückkehren der tionsblock befindet, wird der Eingabe-Informations- 5 Informationsblöcke der Sender schweigt. Der einblock in die Verarbeitungseinheit (N+1)981 über- fachste derartige Zeitplan wäre eine Sendung von Inführt. Wenn es gilt, eine Gruppe aus mehreren In- formationsblöcken von gleicher Länge, getrennt formationsblöcken einzuführen, müssen Abtastfüh- durch gleiche Intervalle bei einem gesamten Ausler den Augenblick feststellen, in dem eine ausrei- breitungsweg, der gleich einem ungeraden Vielfachen chende Anzahl aufeinanderfolgender Verarbei- io jener Länge ist.
tungseinheiten (N), (N-1), (N-2 ... keinen Inf or- In Fig. 19 ist ein System aufgezeichnet, bei dem
mationsblock aufweisen. Die Zahl von Verarbei- Ultraschallwellen in Luft oder in Wasser verwendet
tungseinheiten 981 sollte an die durchschnittliche werden. Die Rechenanlage ist mit einem Sende-Emp-
Zahl von Zyklen, die für die Informationsblöcke er- fungsgerät 231 verbunden, das die Daten moduliert
wartet werden, angepaßt sein. 15 und demoduliert und sie mit einer Einrichtung 233
Diese Ausführungsform ist von Bedeutung, weil zum Senden und Empfangen sendet bzw. empfängt,
sie für die Anwendung bei Festkörperschaltungen Ein entfernter Eckreflektor 235 (ein Verstärker)
geeignet ist, wie es die jetzt serienmäßig hergestell- schließt die Schleife. Ein weit entfernter Reflektor
ten Mikroschaltkreise sind. Unter Zuhilfenahme bewirkt die Rückführung. Die gleiche oder zwei an-
dieser Technik kann ein vollständiger Rechner in 20 gepaßte Antennen können zum Empfangen und zum
Form einer kleinen Scheibe hergestellt werden. Die Senden verwendet werden.
topologische Anordnung kann etwa wie in Fig. 17 In Fig. 20 ist ein System, das mit elektromagne-
gezeichnet getroffen werden. Die Rechenkette stellt tischen oder Ultraschall-Wellen in Luft oder in
einen ringförmigen Bereich' dar, der in periodischer Wasser arbeitet und eine aktive Relaisstation 241
Folge aus Registern 982 und Verarbeitungseinheiten 25 aufweist, skizziert. Die Ankunft der Informations-
981 besteht. Im Zentrum befinden sich der Takt- blöcke stelle automatisch die Zeit der Sendung ein,
geber 991 und Impulsfrequenzgeneratoren 992, die um Überlappen zwischen Sendung und Empfang zu
an sämtliche Verarbeitungseinheiten angeschlossen vermeiden. Die Last der Stromversorgung und der
sind; außerhalb des Ringes liegen Speiseleitungen Systeme für Sendung und Empfang können in erster
und Eingabekreise 993 sowie Ausgabekreise 994. 3° Linie einer der Stationen, z. B. der Bodenstation, auf-
Offensichtlich kann eine Aufgabe, wenn die Zahl erlegt werden. Bei einem derartigen System wird die
der Elemente bei der Ausführungsform nach F i g. 17 gleiche Ausrüstung für Verbindung und Verarbei-
erhöht wird, innerhalb eines Kreislaufs ausgeführt tung benutzt. Die Organisation in Form von Infor-
werden; in einem derartigen Fall kann die Schleife, mationsblöcken bietet einen wirksamen Weg zum
wie in Fig. 18 gezeigt, geöffnet werden, die der 35 Übertragen von Daten und Erhalten von darauf be-
F i g. 17 entsprechenden Elemente sind in Fig. 18 züglichen Antworten. Durch Benutzung eines passen-
mit dem Zusatzzeichen α versehen. den CPL-Systems kann der gleiche Inf ormations-
Ein CPL-System kann den Außenraum als Kanal block kontinuierlich viele Systeme am Boden, in der
geführt oder frei benutzen, vorausgesetzt, daß eine Luft oder Wasser durchlaufen, die sämtliche Daten
Möglichkeit für die Rückkehr vorgesehen ist. Um 40 austauschen oder verarbeiten.
Hierzu 10 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Rechenanlage mit einem speichernden Umlaufkanal, mit einem Assembler zum Zusammensetzen der Ausgangsinformation des Kanals in einem Satz von Registern, eine Verarbeitungseinheit, die in direkter Datenübertragungsverbindung mit den Registern des Assemblers stehende Eingaberegister und Ausgaberegister aufweist, und mit einem Packer mit einem Satz von Registern, die in direkter Datenübertragungsverbindung mit den Registern der Verarbeitungseinheit stehen, und mit Einrichtungen zur Übertragung der Information in den Registern des Packers an den Eingang des Kanals, dadurch gekennzeichnet, daß der Kanal (30; 943), der Assembler (32; 946), die Verarbeitungseinheit (35; 944; 981) mit ihren Eingabe- und Ausgaberegistern (34, 36; bh C1) und der Packer (31, 948) einen geschlossenen Umlaufkreis für Befehlsworte und Datenworte enthaltende Informationsblöcke, die jeweils einem Rechenvorgang zugeordnet sind, bilden, wobei in diesen Informationsblöcken durch die Anordnung der Information festgelegt ist, ob die Information Befehlsworte oder Datenworte darstellt und welche Funktion dieses Befehls- oder Datenwort hat.
2. Rechenanlage nach Anspruch 1, dadurch gekennzeichnet, daß die Verarbeitungseinheit (35; 944; 981) steuerbare Bearbeitungselemente und steuerbare Verbindungen zwischen den Bearbeitungselementen und den Registern (34, 36; bh C1) aufweist.
3. Rechenanlage nach Anspruch 2, dadurch gekennzeichnet, daß die Verarbeitungseinheit (35; 944; 981) mit ihren steuerbaren Bearbeitungselementen und ihren steuerbaren Verbindungen zwischen den Bearbeitungselementen und den Registern (34, 36; bj, C1) eine endliche Anzahl von Konfigurationen annehmen kann, die durch Befehlsworte an bestimmten Stellen in den Informationsblöcken bestimmt sind, wobei diese Befehlsworte die Verbindungen der Bearbeitungselemente in der Verarbeitungseinheit (35; 944; 981) für die Verarbeitung der Veränderlichen in dem Informationsblock, für die Heranziehung neuer Eingangsdaten von Eingangsregistern, für die Weiterleitung des Ergebnisses an die Ausgangsregister (36; C1) aktivieren und wobei dieses Befehlswort weiterhin die neue Fassung des Informationsblockes bestimmt.
4. Rechenanlage nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß Einrichtungen (125) zur Übertragung der Informationsblöcke direkt von dem Assembler (946) zum Packer (948), wenn ein Informationsblock nicht in der Verarbeitungseinheit (944) verarbeitet werden soll, ein Hilfsregister (106; 123), Einrichtungen (107; 121) zur Übertragung eines Teils eines Informationsblockes von dem Assembler (946) und von der Verarbeitungseinheit (944) in das Hilfsregister (106; 123), Einrichtungen (107; 121) zur Übertragung eines Informationsblockes von dem Hilfsregister (106; 123) in die Verarbeitungseinheit (944) und in den Packer (948) zur Änderung der Reihenfolge der Informationsblöcke, zur Übertragung von Daten von einem
Informationsblock zum anderen und um ein Programm oder Daten für viele unterschiedliche Informationsblöcke zur Verfügung stellen, und Einrichtungen zum Abrufen von in außerhalb des Umlaufkreises angeordneten Speichern gespeicherten Daten auf einen Befehl hin, der von dem Assembler (946) an einer festgelegten Stelle eines Informationsblockes gelesen wird, und zum Hinzufügen von Daten zu diesem Informationsblock vorgesehen sind. ·
5. Rechenanlage nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß mehrere frei programmierbare Verarbeitungseinheiten (981) vorgesehen sind, die in Reihe oder parallel geschaltet sind, wobei die logischen Blöcke jeder Einheit mit dem Eingaberegister der nächstfolgenden Einheit verbunden sind.
DE19661524229 1965-05-25 1966-05-25 Rechenanlage Expired DE1524229C3 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US45869265A 1965-05-25 1965-05-25
US45869265 1965-05-25
US53374166A 1966-02-01 1966-02-01
DESC039025 1966-05-25

Publications (3)

Publication Number Publication Date
DE1524229A1 DE1524229A1 (de) 1970-04-23
DE1524229B2 true DE1524229B2 (de) 1975-07-31
DE1524229C3 DE1524229C3 (de) 1976-03-11

Family

ID=

Also Published As

Publication number Publication date
DE1524229A1 (de) 1970-04-23
GB1152848A (en) 1969-05-21
JPS4941448B1 (de) 1974-11-09
CA925623A (en) 1973-05-01
NL6607234A (de) 1966-11-28
CH493040A (it) 1970-06-30

Similar Documents

Publication Publication Date Title
DE2362111C2 (de) Computergesteuerte Kommunikationsanordnung
DE1920454A1 (de) Datenverarbeitungsanlage
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE3344141C2 (de) Vorrichtung zur Neuordnung von Elementen in eine gewünschte Reihenfolge
DE2010772A1 (de)
DE1774052B1 (de) Rechner
DE2717163B2 (de) Verfahren und Vorrichtungen zum Hinzufügen und Abnehmen eines zusätzlichen digitalen Informationssignals bei einer mehrpegeligen Digitalübertragung
DE2252279A1 (de) Verfahren und anordnung zur aenderung der relativen lage wenigstens eines informationsbits in einem datenstrom
DE2053341A1 (de) Verfahren zur Kompression und Dekompression digital kodierter Daten für graphische Zeichen
DE2758151A1 (de) Einrichtung zum sortieren von datensaetzen
DE1774945C3 (de) Elektronische Datenverarbeitungsanlage zum Mischen, Sortieren, arithmetischen Verarbeiten von aus Datenfeldern bestehenden Datensätzen und zum Umstellen von einzelnen Datenfeldern
DE1499190C3 (de) Elektronische Datenverarbeitungsanlage
DE2326516B2 (de) Verfahren und anordnung zur steuerung des zugriffs und der regenerierung bei einem dynamischen speicher fuer die speicherung digitaler information
DE75349T1 (de) Verfahren und vorrichtung zur steuerung eines koppelfeldes.
DE1115488B (de) Datenverarbeitungssystem
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE1524507A1 (de) Vorrichtung zur Anzeige von Schriftzeichen
DE2506671A1 (de) Binaerdaten-handhabungsnetzwerk
DE2312415A1 (de) Schaltungsanordnung zur verbindung einer datenverarbeitungseinheit mit einer vielzahl von uebertragungsleitungen
DE1524229C3 (de) Rechenanlage
DE2741236A1 (de) Schnittstellenvorrichtung zur steuerung eines druckers unter verwendung einer digitalen verarbeitungseinrichtung
DE1524229B2 (de) Rechenanlage
DE2160567C3 (de) Datenübertragungs-Anschlussgerät
DE2025731C3 (de) Datenendstation
DE2459476B2 (de) Schaltungsanordnung fuer nichtzyklische datenpermutationen

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
EHJ Ceased/non-payment of the annual fee