DE2743060A1 - Digitalrechner - Google Patents
DigitalrechnerInfo
- Publication number
- DE2743060A1 DE2743060A1 DE19772743060 DE2743060A DE2743060A1 DE 2743060 A1 DE2743060 A1 DE 2743060A1 DE 19772743060 DE19772743060 DE 19772743060 DE 2743060 A DE2743060 A DE 2743060A DE 2743060 A1 DE2743060 A1 DE 2743060A1
- Authority
- DE
- Germany
- Prior art keywords
- signal
- bit
- word
- signals
- address
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30029—Logical and Boolean instructions, e.g. XOR, NOT
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30094—Condition code generation, e.g. Carry, Zero flag
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Description
Patentanwälte D:p;.-lng. Curt Wallach
Dipl.-Ing. Günther Koch
Dipl.-Phys. Dr.Tino Haibach
Dipl.-Ing. Rainer Feldkamp
D-8000 München 2 · Kaufingerstraße 8 ■ Telefon (0 89) 24 02 75 Telex b 29 513 wakai d
Datum: <_/',, bf. ρ4:*: i:.!.». ■" 1>7V
Unser Zeichen: .
Lrv;l.:,
F on O clu Lau, w i:..con:, Ln, L\
•09815/0600
BAD ORIGINAL
BESCHREIBUNG
Die Erfindung bezieht sich allgemein auf programmierbare Digitalrechner und betrifft insbesondere Digitalrechner,
bei denen die Möglichkeit besteht, eine Verarbeitung einzelner Bits, die in Wörtern eines Speichers des Systems festgehalten
werden, gemäß der Booleschen Logik zu verarbeiten.
Programmierbare artithmetische Digitalrechner sind als solche
bekannt. Ferner sind "programmierbare Steuergeräte" bekannt
und in Gebrauch, bei denen es sich praktisch um nach der Booleschen Logik arbeitende Einzelbit-Prozessoren handelt.
Zwar hat man bereits Digitalrechner und programmierbare Steuergeräte so zusammengeschaltet, daß der eine Teil der Anordnung
den Betrieb des anderen Teils beeinflussen kann, doch sind solche Anordnungen kompliziert und teuer. Soweit bekannt,
steht bis jetzt kein Einzelgerät zur Verfügung, das geeignet ist, sowohl arithmetische Rechenaufgaben der üblichen Art
zu lösen als auch eine Verarbeitung nach der Booleschen Logik durchzuführen, und bei dem es möglich ist, die Ausführung
programmierter arithmetischer Operationen davon abhängig zu machen, daß vorher programmierbare verkettete Verarbeitungsschritte
nach der Booleschen Logik durchgeführt worden sind.
Der Erfindung liegt die Aufgabe zugrunde, einen Digitalrechner zu schaffen, der es nicht nur ermöglicht, auf programmierbare
Weise arithmetische und damit verwandte Operationen bekannter Art durchzuführen, sondern bei dem sich auch einzelne
Bits verschiedener Wörter im Speicher des Systems auf programmierbare Weise gemäß der Booleschen Logik verarbeiten lassen.
Ferner soll ein solcher "kombinierter" programmierbarer
Rechner für arithmetische und logische Operationen geschaffen werden, bei dem es möglich ist, mehrere der Hardwareteile, die
109815/0600
λ 7 4 3 U b O
einem arithmetischen Digitalrechner benötigt werden, zu benutzen, um viele der zusätzlichen Funktionen zu erfüllen,
die eine programmierbare logische Verarbeitung ermöglichen, so daß sich ein auf doppelte Weise benutzbarer Rechner ergibt,
der im Vergleich zu bekannten Rechnern billiger, kleiner und leichter programmierbar ist. Weiterhin soll es die
Erfindung ermöglichen, die logischen Verarbeitungsbefehls-Adressenwörter
und die Mehrbitwörter von ein- und abschaltbaren logischen Operandensignalen in einem Speicher des Systems
festzuhalten, sie auszugeben sowie sie einzugeben, und zwar ebenso wie wenn es sich um herkömmliche arithmetische
ßefehlsadressenwörter oder um numerische Datenwörter handelte. Hierbei benötigt man keine spezielle Speicherorganisation
oder besondere Steuereinrichtungen, und tatsächlich kann man äußere Einrichtungen, z.B. Schalter oder Kippschaltungen,
die zur Erzeugung logischer Bits für Ein- oder Ausgangssignale dienen, nahezu so behandeln, als ob sie Bits von Wörtern
repräsentierten, die in einem Kern- oder Großintegrationsspeicher
bereitgehalten werden. Gemäß der Erfindung sollen ferner Teile eines im übrigen auf bekannte Weise ausgebildeten
arithmetischen Digitalrechners verwendet werden, um an der Durchführung der programmierten logischen Verarbeitung
eines einzelnen Bits teilzunehmen, wobei sich die Programmschritte für die logische Verarbeitung im wesentlichen regellos
mit den Programmschritten für arithmetische Funktionen verschachteln lassen. Somit soll eine "kombinierte arithmetische
Rechner- und logische Verarbeitungsanordnung" geschaffen
werden, die bezüglich der insgesamt gebotenen Rechenmöglichkeiten, der Flexibilität und der Leichtjgceit der Programmierung
einer Anordnung überlegen ist, wie sie sich bei einer einfachen Vereinigung eines Digitalrechners bekannter
Art mit einer programmierbaren Steuereinrichtung bekannter Art ergeben würde. In diesem Sinne soll ein "kombinierter
Rechner und Prozessor" geschaffen werden, bei dem sich die Ausführung und das Ergebnis arithmetischer Schritte qualifizieren
und von dem Ergebnis vorher durchgeführter programmier-
809815/0600
ter Einzelbitschritte nach der Booleschen Logik abhängig machen läßt.
Ferner soll ein "kombinierter Rechner und Prozessor" geschaffen werden, bei dem es möglich ist, das Ergebnis verketteter
Operationen nach der Booleschen Logik in einem beliebigen Bit verschiedener Wörter im Speicher des Systems zu
"speichern", und zwar ohne Rücksicht darauf, ob diese Wörter in einem gewöhnlichen Speicher, z.B. in Speicherkernen, festgehalten
werden, oder in äußeren Einrichtungen, z.B. Kippschaltungen zum Steuern von Motoren, Ventilen und dgl., wobei
sich diese Wirkungsweise durch einfaches Programmieren des "Eingebens" eines logischen Ergebnisses in ein gewähltes Bit
einer gewählten Speicheradresse erzielen läßt. In Verbindung hiermit soll ein Digitalrechner geschaffen werden, der es
ermöglicht, in Abhängigkeit von codierten Befehlswörtern ein logisches Antwortsignal zu einem gewählten Bit eines gewählten
Wortes im Speicher zu übertragen bzw. eine "Zwischenspeicherung" durchzuführen oder alternativ aus dem gewählten Bit
des gewählten Wortes eine 1 (Setzen), eine O (Rücksetzen) oder jeweils das entgegengesetzte Signal (Invertieren) zu machen.
Weiterhin soll es gemäß der Erfindung ermöglicht werden, das auf bekannte Weise ausgebildete Befehlsadressenregister eines
Digitalrechners bekannter Art zu verwenden, um Befehlswörter zu empfangen, mittels welcher konventionelle arithmetische
Funktionen verlangt werden, sowie spezielle Befehlswörter aufzunehmen, die für die Durchführung von Funktionen nach der
Booleschen Logik gelten. Im letzteren Fall werden bestimmte Bits des Ausgangssignals des Befehlsadressenregisters decodiert,
um Operationen bestimmende logische Signale zu erzeugen, wobei bestimmte andere Bits dazu dienen, ein bestimmtes
Bit eines Wortes als logischen Operanden zu wählen, und wobei weitere andere Bits als Adresse benutzt werden, um ein das betreffende
Bit enthaltendes Wort zu wählen und es dem Speicher zu entnehmen. Ferner soll gemäß der Erfindung das auf bekannte
80981 5/0600
ι*
-X-
27Α3060
Weise ausgebildete arithmetische Eingangsregister eines gewöhnlichen
Digitalrechners benutzt werden, um ein Datenwort aufzunehmen, dar; einen gewünschten logischen Einzelbitoperanden
enthält, und um von dem Register aus einem Eingang eines Prozessors für Operationen nach der Booleschen Logik das betreffende
Operandenbit des genannten Wortes zuzuführen, das durch die Kombination bestimmter Bitsignale aus dem Befehlsadressenregister
bestimmt ist und einen speziellen logischen Befehl enthält. Schließlich soll bei einem "kombinierten Rechner
und Prozessor" eine wirtschaftliche Ausnutzung der Hardware mittels einer Einrichtung ermöglicht werden, die normalerweise
auf einen arithmetischen Befehl der üblichen Art anspricht, die jedoch auf andere Weise auf ein spezielles logisches
Instrukti-onscodeformat reagiert, wobei die Bits der
beiden Arten von Befehlen zwar in gleicher Anzahl vorhanden sind, wobei jedoch die den speziellen Befehl enthaltenden binären
Bitwählsignale an vorbestimmten Bitstellen vorhanden sind.
Erfindungsgemäß ist diese Aufgabe durch die Schaffung eines
Digitalrechners gelöst, dessen Aufbau zweckmäßig und relativ einfach ist, der nicht nur geeignet ist, konventionelle arithmetische
Operationen nach einem Programm durchzuführen, sondern
der es ermöglicht, 1. verkettete Verarbeitungsschritte nach der Booleschen Logik bei einem beliebigen gewählten Bit irgendeines
von verschiedenen im Speicher bereitgehaltenen gewählten Wörtern durchzuführen, 2. das Ergebnis der logischen Verarbeitung
dadurch zu verwerten, daß das Ergebnis an einer beliebigen gewählten Bitstelle innerhalb eines beliebigen der verschiedenen
im Speicher festgehaltenen gewählten Wörter zu speichern und/oder 3. zu veranlassen, daß sich die Ausführung verschiedener
vorbestinunter Befehle innerhalb eines Programms nach den
Ergebnissen vorher durchgeführter logischer Einzelbit-Verarbeitungsschritte richtet, und bei dem die logische Verarbeitung
in Abhängigkeit von auf besondere Weise codierten Befehlswörtern erfolgt, die innerhalb eines Qesamtprogramms regellos mit den
809815/0600
ze
Befehlsschritten für die konventionellen arithmetischen Operationen
verschachtelt werden können. Hierbei werden in großem Umfang schon vorhandene Register und Geräteteile benutzt, die
für konventionelle arithmetische Operationen benötigt werden, um Signale dem logischen Prozessor zuzuführen oder zu entnehmen,
und Hardware wird nur in einem sehr geringen zusätzlichen Umfang benötigt, um die logische Verarbeitung, die
Speicherung und die Herbeiführung der genannten Abhängigkeit zu bewirken.
Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand schematischer Zeichnungen näher erläutert. Es zeigt:
Fig. 1 ein verallgemeinertes Blockschaltbild eines erfindungsgemäßen
Digitalrechners, bei dem die in Beziehung zueinander stehenden Hauptteile zum Teil entsprechend
ihrem Aufbau und zum anderen Teil entsprechend ihrer Funktion dargestellt sind;
Fig. 2a und 2b insgesamt als Fig. 2 ein ausführlicheres Blockschaltbild
eines arithmetischen Digitalrechners, der geeignet ist, logische Verarbeitungsschritte nach der
Booleschen Logik durchzuführen;
Fig. 3 ein ausführlicheres Blockschaltbild des auch in
Fig. 2a dargestellten Befehlsadressenregisters;
Fig. t* den Aufbau einer in Fig. 2a nur schematisch angedeuteten
Direktdecodierschaltung;
Fig. 5 den Aufbau eines Phasensequenzgenerators und eines Haupttaktgebers, die in Fig. 2a nur schematisch angedeutet
sind;
Fig. 6 und 7 über der Zeit aufgetragene Wellenformen zur Ver-
809815/0600
-ΡΑ / L\ ό U D O
anschaulichung verschiedener ,'Jignale, die in der
Rechneranordnung während des betriebs bei bestimmten Befehlsfolgen auftreten;
Fig. 8 ein Schaltbild zur Veranschaulichten/^ der Verbindungen
zwischen dem Phasenfolgegenerator und einem Festwertspeicher
zum Erzeugen codierter Eingangssignale für einen Mikroprogramm-Festwertspeicher;
Fig. 9 das Blockschaltbild eines Mikroprogramm-Festwertspeichers und der zugehörigen Decodierer zum Erzeugen
verschiedener Kombinationen von Steuersignalen in verschiedenen Zeitpunkten in Abhängigkeit von der
Verarbeitung verschiedener Befehle;
Fig. 10 ein ausführliches Blockschaltbild eines nach der Booleschen Logik arbeitenden Prozessors, der zur
Durchführung der Erfindung geeignet und in Fig. 1 und 2a nur schematisch angedeutet ist;
Fig. 11 ein funktionelles Blockschaltbild eines Ausführungsbeispiels für einen Systemspeicher, der in Fig. 2b
nur schematisch angedeutet ist; und
Fig. 12 ein fragmentarisches Blockschaltbild, das veranschaulicht,
auf welche Weise bestimmte Wörter des Systemspeichers mit Hilfe äußerer Hardwareteile, z.B. von
Schaltern und Kippschaltungen, erzeugt werden, wobei jede dieser Hardwareeinrichtungen ein logisches Bit
darstellt, das gefühlt werden kann, oder ein logisches Bit, das nicht nur gefühlt, sondern auch in
den einen oder anderen von zwei möglichen Zuständen gebracht werden kann.
109815/0600
ίVAJU ο O
In der folgenden Beschreibung wird ferner auf die Tabellen I bis VII bezug genommen, die zur Ergänzung von Fig. 1 bis 12
dienen und aus Gründen der Zweckmäßigkeit am Ende der Beschreibung beigefügt sind.
1. Einleitung
In Fig. 1 ist ein Ausführungsbeispiel eines erfindungsgemäßen
Digitalrechners teilweise entsprechend seinem Aufbau und zum anderen Teil entsprechend seiner Wirkungsweise dargestellt.
Zunächst sei das programmierbare Grundsystem für arithmetische digitale Rechenvorgänge betrachtet; zu einer Zentraleinheit
CPU gehören eine arithmetische Einheit 100 und eine Steuereinheit 200, die durch eine Schiene 10 mit mehreren Leitungen mit
einem Lese- und ochreib-Systemspeicher 300 verbunden sind. Der Speicher 300 ist auf bekannte Weise ausgebildet, d.h. er weist
mehrere Speicherstellen zum Aufnehmen, Festhalten und Melden von Mehrbitwörtern auf, bei denen jedes Bit einen von zwei
Werten, d.h. den Wert 0 oder den Wert 1, annehmen kann. Jedes Mehrbitwort wird an einer Stelle gespeichert, die durch eine
eindeutige Adresse bezeichnet ist. Bei einigen der in dem Speicher gespeicherten Wörter handelt es sich um arithmetische
Befehlsadressenwörter, die ihrer speziellen Natur nach ein Softwareprogramm bilden, das dem Speicher vor dem Beginn der
Rechenoperationen eingegeben werden kann. Im Gegensatz hierzu handelt es sich bei einigen der in dem Speicher an anderen
Stellen gespeicherten Wörtern um numerische Datenwörter, die bei sequentiellen arithmetischen Berechnungen oder als Ergebnis
davon verwendet und/oder verändert werden. Diese Befehlswörter und die arithmetischen Datenwörter sind in Fig. 1 mit
300a bzw. 300b bezeichnet, um erkennen zu lassen, daß sie von grundsätzliche verschiedener Art sind.
Die Steuereinheit 200, zu der ein Taktgenerator und ein Programmzähler
gehören, die in Fig= 1 nicht dargestellt sind,
109815/0600
17 4 3 ϋ 6 O
dient dazu, aufeinander folgende Befehle eines Programms sequentiell auszuführen und die verschiedenen Einrichtungen
innerhalb des gesamten Recimers zu steuern, während jeweils
ein Schritt durchgeführt wird, der durch ein Befehlswort bezeichnet ist. Zwar könnte man den Digitalrechner und seine
Steuereinheit 200 auf bekannte Weise so aufbauen, daß es möglich ist, in Abhängigkeit von einem einzigen Befehl mehrere
Arbeitsfolgen durchzuführen, z.B. das Adressieren eines Index, Berechnungen mit doppelter Genauigkeit sowie mehrere Schritte
umfassende Berechnungen wie Multiplikation, Division oder Wurzelziehen, doch ist der im folgenden zu beschreibende
arithmetische Rechner lediglich der Einfachheit und Kürze halber auf die Durchführung einer Arbeitsfolge in Abhängigkeit
von jedem Befehlswort beschränkt. Somit kann man für die Zwecke der zu gebenden Beschreibung annehmen, daß die
Steuereinheit 200 das Rechensystem veranlaßt, aufeinander folgende Operationsfolgen zu durchlaufen, wenn es nacheinander
irgendwelche Befehlswörter abruft und verwendet. Bei einer Art einer solchen Operations folge führt die Steuereinheit
Adressensignale über die Mehrleiter-Adressenschiene 11 dem Speicher 300 zu, um ihn zu veranlassen, ein Befehlsadressenwort
aus der gewünschten Speicherstelle an die Schiene 10 abzugeben, damit das gewünschte Befehlsadressenwort in die
Steuereinheit überführt wird.
Danach führt die Steuereinheit die in dem abgerufenen Befehlswort enthaltene Adresse über die Schiene 11 dem Speicher 300
zu, um den Speicher zu veranlassen, das Datenwort aus der Adressenspeichersteile über die Schiene 10 der arithmetischen
Einheit 100 zuzuführen. Hierauf führt die Steuereinheit 200 Signale, die aus dem Befehlsteil des abgerufenen Wortes abgeleitet
sind, über einen Leitungsweg 13 dem arithmetischen Teil 100 zu, um ihn zu veranlassen, die entsprechende Funktion auszuführen,
z.B. das zugeführte Zahlendatenwort zu einem vorher
der arithmetischen Einheit eingegebenen Wort zu addieren oder
809815/0600
davon abzuziehen.
Die Ergebnisse einer Folge von arithmetischen Berechnungen, bei denen aufeinander folgende Datenwörter als Operanden verwendet
werden, können zu einer bestimmten Adressenstelle im Speicher zurückgeleitet werden, um in einem späteren Zeitpunkt
verwendet oder an äußere Einrichtungen ausgegeben zu werden. Bei einem "Speichervorgang" dieser Art veranlaßt ein abgerufenes
Befehlsadressenwort die Steuereinheit 200, der arithmetischen Einheit 100 über den Leitungsweg 13 ein Befehlssignal
zuzuführen, so daß die arithmetische Einheit ihr bis dahin angesammeltes arithmetisches Antwortwort an die Schiene 10
abgibt, woraufhin die Steuereinheit den Speicher 300 veranlaßt, die Bits dieses 'forts so zu speichern, wie sie in der
Schiene erscheinen, und zwar an einer Speicherstelle, die der durch das abgerufene Befehlsadressenwort repräsentierten Adresse
entspricht.
Diese hier nur mit äußerster Kürze behandelten arithmetischen Operationen, auf die im folgenden näher eingegangen wird, ermöglichen
die Durchführung aufeinander folgender Rechenvorgänge (z.B. Addition, Subtraktion oder Division), und das dabei
erhaltene Ergebnis wird im Speicher erneut gespeichert, um in einem späteren Zeitpunkt verwendet oder über eine äußere
Einrichtung ausgegeben zu werden, z.B. eine Kathodenstrahlröhre, einen Drucker o.dgl. Lediglich um ein einfaches Beispiel zu
geben, sei angenommen, daß ein kurzer numerischer Berechnungsvorgang in Abhängigkeit von einem vorher eingeführten Programm
durchgeführt wird, wobei das Programm die nachstehenden Schritte enthält: a) Entnehmen der Zahl A aus der Speicherstelle 124,
b) Addieren der Zahl B aus der Speicherstelle 126, c) Abziehen der Zahl C aus der Speicherstelle 130, d) Teilen des Ergebnisses
durch 2 und e) Speichern des Ergebnisses an der Speicherstelle 140, wo es als die Zahl D betrachtet werden kann. Jede
solche numerische oder wDaten"-Zahl wird in der binären Schreib-
809815/0600
/743060
weise an den verschiedenen Bitstellen eines numerischen Datenwortes
durch eins 1 oder eine 0 dargestellt; jedes Befehlswort setzt sich aus einer ähnlichen Anzahl von zweiwertigen Bits
zusammen, die im Speicher in einer bestimmten Adresse enthalten sind, wobei eine erste Gruppe der Bitwerte in einem vorbestimmten
Codeformat die Art der betreffenden durchzuführenden Operation bezeichnet, und wobei eine zweite Gruppe der
Bitwerte in der binären Schreibweise die Nummer der Speicheradresse bezeichnet, an welcher der Operand (oder die rechnerische
Antwort) im Speicher des Systems zu finden bzw. zu speichern ist.
Bei zahlreichen Anwendungen programmierbarer alphanumerische? Digitalrechner und insbesondere dann, wenn Prozesse oder Maschinen
in Abhängigkeit von Änderungen gefühlter Werte oder sich ändernden Bedingungen dadurch gesteuert werden sollen,
daß die Werte von schrittweise berechneten variablen Größen verändert werden, ist es erwünscht, zahlreiche ein- und abschaltbare
Einrichtungen, z.B. Endschalter, Sicherheitsdruckschalter, Motorschütze und dgl., abzutasten, um auf logische
Weise zu ermitteln, ob die Kombination ihrer Zustände einer vorbestimmten Beziehung, d.h. einer Booleschen Gleichung,
entspricht, und bestimmte äußere Einrichtungen ein- oder abzuschalten, wenn die Bedingungen nicht erfüllt sind. Anstelle
von Schaltern und Relaiskreisen werden bereits programmierbare Steuereinrichtungen benutzt. Wenn z.B. vier Schalter S1 - S4
und ein Relais R1 zum Steuern eines Motors zum Antreiben einer Kühlmittelpumpe vorhanden sind, kann es bei einer bestimmten
Steuereinrichtung erwünscht sein, den Motor dann und nur dann einzuschalten, wenn der Schalter S1 geschlossen ist, oder wenn
die Schalter S2 und S3 geschlossen sind, während der Schalter S4 geöffnet ist. Hierfür würde die folgende Boolesche Gleichung
gelten:
S1 + (S2 + S3) · STf = R1
Hierbei kann man jeden Schalter als ein Bit eines Wortes im Speicher betrachten, wobei das Bit als binärer Wert entweder
den Wert 0 oder den Wert 1 hat, wenn der Schalter geöffnet bzw.
8098 1 5/0600
? "I U 3 Li ο J
geschlossen ist; man kann das Relais als ein gespeichertes Bit betrachten, das auf 1 gesetzt werden soll, wenn die Bedingungen
der vorstehenden Gleichung erfüllt sind, und das auf 0 (Abschalten des Relais R1) gesetzt werden soll, wenn
die Bedingungen der Gleichung nicht erfüllt sind.
Wie in Fig. 1 funktionell dargestellt, enthält der Speicher 300 in einigen seiner Adrersenspeichersteilen 300c spezielle
logische Befehlsadressenwörter. Ferner kann der Speicher logische Mehrbit-Datenwörter 30Od enthalten. Wird ein bestimmter
Programmschritt erreicht, bei dem ein spezielles logisches Befehlswort abgerufen und der Steuereinheit 200 zugeführt
werden soll, decodiert die Steuereinheit den Befehlsteil des Mehrbitwortes, so daß man einen logischen Operationscode
erhält, der einem logischen Prozessor 400 über einen Leitungsweg 14 zugeführt wird. Außerdem reagiert die Steuereinheit
200 auf den Adressenteil des abgerufenen speziellen logischen Instruktionswortes, um Adressensignale über die Schiene 11
abzugeben, damit der Speicher 300 veranlaßt wird, der Schiene 10 das der Adresse entsprechende Datenwort zuzuführen. Zwar
wird das Datenwort der arithmetischen Einheit 100 zugeführt, doch führt letztere bezüglich dieses Wortes als Operand keine
arithmetische Funktion aus. Vielmehr wird ein Bitwählcode, der durch eine bestimmte Bitgruppe der abgerufenen Befehlswörter
gebildet wird, der arithmetischen Einheit 100 über einen Leitungsweg 15 zugeführt, um zu bewirken, daß ein gewähltes
Bitsignal des Datenwortes über den Leitungsweg 16 als Einbit-Operandeneingangssignal LB dem logischen Prozessor
400 zugeführt wird. Dann führt der Prozessor nach der Booleschen Logik eine Funktion bezüglich des Operanden zusammen
mit jeder vorher existierenden logischen Antwort LA durch. Zu diesen logischen Funktionen gehören z.B. die Funktionen
LOAD (LADEN), AND (UND), OR (ODER) und XR (Exklusiv-ODER).
Das logische Ergebnis LA wird in invertierter Form als Signal LA" über einen Leitungsweg 17 der Steuereinheit 200 zugeführt,
809815/0600
um die Arbeitsweise der Steuereinheit unter bestimmten Bedingungen
auf eine noch zu erläuternde Weise zu modifizieren. Das logische Ergebnis LA und seine invertierte Form EA* behalten
ihren jeweils festgelegten binären Wert 0 oder 1 bei, bis sie durch eine weitere befohlene logische Verarbeitungsoperation
verändert werden.
Ein Verfahren zur Verwendung des logischen Antwortsignals LA nach seiner Erzeugung durch eine oder mehrere verkettete
Boolesche Operationen besteht darin, daß das Signal an einer gewählten Bitstelle eines gewählten Wortes im Speicher gespeichert
wird. Dieser Vorgang, der hier als "Zwischenspeicherung" bezeichnet wird, um ihn von der Speicherung eines arithmetisch
berechneten Ergebnisses zu unterscheiden, wird in Abhängigkeit von einem speziellen logischen Befehlswort durchgeführt,
das aus dem Speicher 300 abgerufen und der Steuereinheit 200 zugeführt wird. Das Operandenwort, welches das gewünschte
Bit enthält, wird dann aus dem Speicher 300 in die arithmetische Einheit 100 überführt, und der Bitadressen-Codeteil
des abgerufenen Wortes veranlaßt, daß der gewählte Bitwert des Operandenwortes über den Leitungsweg 16 als Signal LB dem
logischen Prozessor 400 zugeführt wird. Mit Hilfe noch zu beschreibender Einrichtungen verwendet der logische Prozessor
das Eingangssignal LB in Verbindung mit dem schon vorhandenen logischen Antwortsignal LA zur Erzeugung eines Bitsteuersignals
BC. Das Signal BC wird zu der arithmetischen Einheit über einen Leitungsweg 18 zurückgeleitet und außerdem einer Einrichtung
zugeführt, die bewirkt, daß das ursprüngliche Operandenwort zusammen mit dem gewählten Bit, das gezwungen wird, mit dem
logischen Ergebnis LA übereinzustimmen, über die Schiene 10 dem Speicher 300 an der Speicherstelle eingegeben wird, die
über die Adressenschiene 11 durch die Adressenbits des ursprünglich abgerufenen Befehls bezeichnet wird.
Zusätzlich zu den vorstehend beschriebenen Vorgängen kann jedes
809815/0600
2743U6U
Wort aus dem Speicher 300 herausgezogen und in die arithmetische Einheit 100 überführt werden, und zwar in Abhängigkeit
von einem speziellen logischen Befehlswort, das abgerufen und der Steuereinheit 200 zugeführt wird und die Funktion bezeichnet,
daß ein gewähltes Bit eines vorbestimmten Wortes gezwungen wird, den Wert 1 (SETZEN) oder den Wert 0 (RÜCKSETZEN) anzunehmen
bzw. in den entgegengesetzten Zustand überzugehen (INVERTIEREK), bevor das Operandenwort wieder zu seiner ursprünglichen
Adressenstelle im Speicher zurückgeführt wird.
Die vorstehende kurze einführende Erläuterung anhand von Fig. 1 läßt auf sehr allgemeine Weise erkennen, wie es mit
Hilfe weniger zusätzlicher Teile bei einem allgemein auf bekannte Weise aufgebauten arithmetischen Rechensystem gemäß
der Erfindung möglich ist, eine programmierbare logische Verarbeitung durchzuführen. Weitere Einzelheiten des Aufbaus und
der Wirkungsweise sowie die erzielbaren Vorteile ergeben sich aus der nachstehenden Beschreibung weiterer Einzelheiten.
2. Grundsätzlicher Aufbau des arithmetischen Systems
Gemäß Fig. 2a und 2b gehören zu dem Systemspeicher 300 Ausgabeleitungen
301, die sich an die Schiene 10 des Systems anschließen lassen, wenn ein Mehrbitgatter Gmr betätigt wird,
um der Schiene 10 die Signale einzugeben, die einem an einer bestimmten Stelle gespeicherten Wort entsprechen. Die Wortspeicherstelle
wird mit Hilfe numerisch codierter Signale gewählt, die im jeweiligen Zeitpunkt der Adressenschiene 11 zugeführt
werden, und der Lesevorgang wird durch ein Steuersignal MEM eingeleitet. Umgekehrt nehmen die Eingabeleitungen 302
des Speichers 300 stets Signale aus der Schiene 10 auf; die zugeführten Signale werden an einer Speicheradresse gespeichert,
die durch jeweils über die Adressenschiene 11 zugeführte Signale bezeichnet wird, jedoch nur dann, wenn ein
Freigabe- bzw. Schreibsignal BTM' der Speichersteuerschaltung
809815/0600
I*
? 7 Λ 3 U B J
zugeführt wird. Durch die Eingabe eines Wortes mit 1o Bits
in eine bestimmte Speicherstelle wird der vorher dort gespeicherte Inhalt gelöscht.
Um unnötige Einzelheiten zu vermeiden, die nur das Verständnis der Erfindung und ihrer Vorteile beeinträchtigen würden,
wird im folgenden eine stark vereinfachte Ausführungsform
eines typischen arithmetischen Rechnersystems beschrieben. Hierbei sei angenommen, daß der Systemspeicher 300 auf bekannte
Weise als Kern- oder Großintegrationsspeicher mic nur 1024 Wortadressenstellen ausgebildet ist, wobei .jedes Wort
eine Länge von 16 Bits hat. Zu den Eingabeleitungen 301 und den Ausgabeleitungen 302 gehören jeweils 16 Leiter, und die
Schiene 10 enthält ebenfalls 16 Leiter, so daß in ,iedem Zeitpunkt
16 Bitsignale übertragen werden können, die ein Wort repräsentieren. Zu der Schiene 11 gehören 10 Leiter, und die
Kombinationen der Spannungswerte 0 und 1, die in diesen Leitern erscheinen, ermöglichen es, jede Adresse eines Dezimalwertes von 0 bis 1023 in binärer Schreibweise darzustellen.
Wenn in der Adressenschiene 11 'ignale erscheinen, die in binärer Schreibweise den Dezimalwert 285 repräsentieren, ist
somit anzunehmen, daß das Wort an der Adressenstelle 285 aus dem Speicher in die Schiene 10 überführt wird, wenn das Lesesignal
MEH vorhanden ist; anderenfalls wird über die Schiene 10 dieser Adressenstelle eine neue Form des Wortes eingegeben,
wenn das Schreibsignal BTM1 ansteht. Ilatürlicn könnte man den
Speicher und die Schiene auf 18 Bits je Wort erweitern, um eine Paritätsprüfung zu ermöglichen, doch ist diese bekannte
Verfeinerung hier zur Vereinfachung der Beschreibung fortgelassen.
Der einzigen vorhandenen Schiene 10 des Systems können Signale jeweils von einer von mehreren Quellen aus zugeführt
werden. Wird eines der Gatter Gmr, Gad, Gr oder Gatb freigegeben, werden die Signale dem Speicher 300, der Adressenschiene
80981 5/0600
11, einer Exklusiv-0DER-Anordnung 106 oder einem Akkumulator
104 entnommen. Somit ist es möglich, der Schiene 10 Bitsignale eines Mehrbitwortes jeweils von der Einrichtung aus zuzuführen,
durch die eines dieser Gatter gespeist wird. Die Signale, die der Schiene 10 in ihrem unteren Strang längs des
Randes von Fig. 2 zugeführt werden, können durch einen Schienenverstärker 12 verstärkt werden, bevor sie zu dem im oberen
Teil von Fig. 2 dargestellten Teil der Schiene gelangen, doch ist nur eine einzige Jchiene 10 für das gesamte System vorhanden.
Der Schiene zugeführte Signale können jeweils von einer beliebigen von mehreren Einrichtungen "angenommen" werden,
die mit zur Voreinstellung dienenden Eingangsklemmen versehen sind, welche an die Leiter der Schiene angeschlossen sind,
doch geschieht dies nur, wenn der betreffenden Einrichtung ein vorher eingestelltes "Freigabesignal11 zugeführt wird.
Weiter unten wird erläutert, auf welche Weise solche Freigabesignale einem arithmetischen Eingaberegister 102, einem Befehlsadressenregister
202, einem Programmzähler 226 oder dem Speicher 300 zugeführt werden. Lediglich um ein Beispiel zu
geben, sei bemerkt, daß das arithmetische Eingaberegister 102 zur Annahme der ihm parallel zuzuführenden und zu speichernden
Schienensignale freigegeben wird, wenn sich ein Freigabesignal AIR1, das einer logischen UIiD-Schaltung 101
entnommen wird, dadurch ergibt, daß zwei Signale AIR und CLK beide den Wert 1 haben.
Zu der arithmetischen Einheit 100, die in Fig. 2a und 2b
stark vereinfacht dargestellt ist, gehört das auch mit AIR bezeichnete arithmetische Eingaberegister 102, bei dem es
sich um ein i6-Bit-3peicherregister bekannter handelsüblicher
Art handelt. Der Ausgang des Registers 102 führt zu einem 16-Bit-Eingang B einer bekannten handelsüblichen arithmetischen
logischen Einheit ALU mit einem zweiten 16-Bit-Eingang A. Die Einheit ALU führt eine arithmetische oder logische Behandlu-ng
oder Kombination der beiden 16-Bit-Eingangssignale A und B
80981 5/0600
? 74 3''K-J
entsprechend derjenigen von mehreren nach Bedarf benutzbaren Befehlseingangsklemmen durch, welcher jeweils eine Freigabespannung
mit dem Wert 1 zugeführt wird. Das Ergebnis erscheint in den Ausgäbeleitungen der Einheit ALU in Form eines 16-Bit-Ergebnissignals
F. Zwar kann die Einheit ALU zusätzliche Befehlssignale empfangen und andere arithmetische oder logische
Operationen mit Signalen ausführen, die über einen der Eingänge oder beide Eingänge A und B zugeführt werden, doch werden
im folgenden zur Erläuterung nur fünf arithmetische logische Funktionen beschrieben, die jeweils dann ablaufen, wenn
einer der fünf Steuerklemmen auf der rechten Seite der Einheit ALU nach Fig. 2a eine Freigabespannung zugeführt wird. V.'ird
die befohlene Funktion durch ein Signal A freigegeben, gilt F=A; wird durch das Signal 3 eine Funktion befohlen, gilt
F = B; wird das Befehlssignal B" zugeführt, ist F gleich dem
Eingangssignal B, wobei sämtliche Bits invertiert sind; somit
gilt F = B"; wird das Signal A + B zugeführt, ist das Aus gangssignal
F gleich der Summe der beiden numerischen Eingangssignale A und B; wird als Befehl das Signal A-B zugeführt, gilt
F=A-B.
Das Ausgangssignal F der Einheit ALU wird dem Eingang eines
Akkumulatorregisters 104 mit einem Ausgang ANS für 16-Bit-Ausgangssignale
zugeführt. Empfängt der Akkumulator ein "Standardfreigabesignal"
ACC, gelangt das Aus gangs signal F zu dem Akkumulatorregister 104, um gespeichert zu werden, so daß es
danach als das Antwortsignal ANS erscheint. Hierbei ist zu bemerken, daß das Ausgangssignal ANS des Akkumulators 104
über eine 16-Bit-Schiene 105 zurückgeleitet wird, um das Eingangssignal
A der Einheit ALU zu bilden. Außerdem wird das Ausgangssignal ANS des Akkumulators nach Bedarf über das Gatter
Gatb zurückgeleitet, wenn dieses Gatter durch ein Signal ATB freigegeben ist, so daß das Ausgangssignal auf eine noch zu erläuternde
Weise der Schiene 10 zugeführt werden kann.
80981 5/0600
Bei einer arithmetischen Einheit bekannter Art ist dafür gesorgt,
daß es bei manchen Operationen möglich ist, das Ausgangssignal F der Einheit ALU auf direktem Wege der Schiene
10 zuzuführen. Gemäß der Erfindung wird ein alternatives oder zweites Antwortsignal ANS· durch eine 16-Bit-Exklusiv-ODER-Anordnung
106 erzeugt, der über einen Eingang das Signal F der Einheit ALU und über einen zweiten Eingang ein 16-Bit-Steuersignal
H zugeführt wird. Wird dem Gatter Grs ein Freigabesignal EOR zugeführt, wird das Ausgangssignal ANS1 der
ExklusiV-ODER-Anordnung 106 zu der Schiene 10 übertragen.
Diese Anordnung ermöglicht es, das Signal F der Einheit ALU unter Umgehung des Akkumulators 104 der Schiene 10 direkt zuzuführen,
wenn das Signal H nur aus Nullen besteht, so daß das Signal ANS1 gleich dem Signal F ist. Besteht dagegen das
Signal H nur aus Einsen, erscheint das Signal F in der invertierten Form, d.h. als Einserkomplement zu ANS·. Das Signal H
wird durch eine noch zu beschreibende Steuerschaltung 404 erzeugt.
Es sei bemerkt, daß der Akkumulator 104 auch veranlaßt werden kann, bezüglich des in ihm enthaltenen Mehrbitwortes bestimmte
Operationen durchzuführen. Beispielsweise zeigt Fig. 2a, daß dem Akkumulator 104 unter bestimmten, noch zu erläuternden Bedingungen
ein Befehlssignal SACR oder SACL oder CLR zugeführt werden kann. Werden diese Befehlssignale zugeführt, wird das
in dem Akkumulator enthaltene Mehrbitwort jeweils um eine Stelle nach rechts verschoben bzw. es wird um eine Stelle nach links
verschoben bzw. es werden alle Stellen auf Null gebracht, d.h. der Akkumulator wird "gelöscht". Es sei bemerkt, daß eine Verschiebung
einer in dem Akkumulator festgehaltenen binären Zahl um eine Stelle nach rechts bzw. um eine Stelle nach links die
Wirkung hat, daß der dargestellte Zahlenwert mit 2 multipliziert bzw. durch 2 dividiert wird.
Die bis jetzt beschriebene Wirkungsweise des arithmetischen
809815/0600
V. IA Y„ V ■ ι. - .
2 7 A 3 U > · Ί
Systems ist bekannt, doch soll sie im folgenden an einem sehr einfachen Beispiel erläutert werden. Es sei angenommen, daß
der Akkumulator 104 gelöscht worden ist, und daß eine erste Zahl N1 dem Register AIR eingegeben wird, so daß es der Einheit
ALU über den Eingang B zugeführt wird, während der Einheit ALU ein Befehl A zugeführt wird. Die Zahl N1 erscheint dann
als Ausgangssignal F der Einheit ALU. Wird jetzt das"3peicherfreigäbesignal"
ACC erzeugt, wird die Zahl N1 dem Akkumulator
104 eingegeben, so daß sie als Antwort ANS erscheint, wobei am Eingang A der Einheit ALU das Signal N1 vorhanden ist.
Wird vietzt eine zweite Zahl ΓΙ2 aus der Schiene 10 in das Register
102 überführt, so daß es zu dem Signal am Eingang B der Einheit ALU wird, während dieser Einheit ein Befehlssignal
A + B zugeführt wird, wird das Ausgangssignal F zu der Summe
IJ1 + N2 der beiden Zahlen. Ein Signal ACC (Speichern im Akkumulator)
führt dazu, daß das Signal F = N1 + H2 in dem Akkumulator
104 gespeichert wird, so daß es bei ANS erscheint und zu einem neuen Wert am Eingang A der Einheit ALU wird. Sobald
dann eine Zahl N3 von der Schiene 10 aus dem Eingang B der Einheit ALU zugeführt wird, während letzterer ein Signal A-B
zugeführt wird, nimmt das Ausgangssignal F den Wert der algebraischen
Summe H1 + N2 - N3 an. Ein Speicherungsfreigabesignal ACC1 überführt diesen Wert in den Akkumulator 104, so daß er
am Ausgang ANS erscheint. Wenn das Gatter Gatb ,jetzt freigegeben wird, um das Signal ANS der Schiene 10 zuzuführen, erscheint
das Ergebnis N1 + N2 - N3 dieser verketteten arithmetischen Berechnungen in der Schiene 10, von der aus es in den
Speicher überführt oder auf andere Weise verwendet werden kann. Die Subtraktion zweier Zahlen bedingt, daß in der Einheit ALU
das binäre Zweierkomplement des Subtrahenden gebildet wird, und daß dieses Subtrahendenkomplement binär zum Minuenden
addiert wird; diese Einzelheiten und die Verarbeitung negativer Zahlen sind bekannt, so daß sich eine nähere Erläuterung erübrigen
dürfte.
80981 5/0600
Die 16-Bit-Exklusiv-ODER-Anordnung 106 dient alternativ als
Einrichtung zum Übertragen des Ausgangssignals F der Einheit
ALU zu der Schiene 10, und zwar entweder in seiner "wahren" Form oder in seiner Einerkomplementform. Bei jedem Bitteil
der Anordnung 106 handelt es sich um ein einfaches Exklusiv-ODER-Gatter, das auf bekannte Weise gemäß der nachstehenden
Wertetabelle arbeitet.
Exklusiv-0DER-Gatter
Eingang f h |
0 | Ausgang |
0 | 1 | 0 |
0 | 0 | 1 |
1 | 1 | 1 |
1 | 0 |
Unter Berücksichtigung der vorstehenden Beziehungen ist ersichtlich,
daß dann, wenn alle Bits des Mehrbit-Eingangssignals H der Anordnung 106 zu Hüllen gemacht werden, das Ausgangssignal
ANS1 einfach mit dem Mehrbit-Ausgangssignal F der Einheit ALU identisch ist; werden alle Bits des Mehrbit-Eingangssignals
H zu Einsen gemacht, ist das Ausgangssignal ANS1
das Einerkomplement des Signals F, d.h. es entspricht dem Signal F, wobei alle seine Bitwerte invertiert sind. Eine
entsprechende Beeinflussung des Signals H und die Freigabe des Gatters Gr durch ein Signal EOR ermöglicht es daher, das
Signal F der Schiene 10 in seiner wahren Form oder in seiner Komplementform zuzuführen .
Man kann den Akkumulator 104 und die Exklusiv-0DER-Anordnung
106 insgesamt als ein arithmetisches Ausgaberegister AOR betrachten, denn der Schiene 10 kann von beiden Einrichtungen
aus ein Ausgangssignal ANS bzwo ANS1 zugeführt werdeno
80981 5/0600
- «5 - 7 7 A 3 ü S ü
Bei dem arithmetischen Grundsystem wird die arithmetische Einheit 100 sequentiell durch eine Steuereinrichtung 200
gesteuert, welcbi die erforderlichen Zeitsteuer- und Befehlssignale liefert. Man kann die Steuereinrichtung 200 so betrachten,
als ob zu ihr das Befehlsadressen-Speicherregister 202 gehörte, das nach Bedarf durch das Ausgangssignal IAR'
einer UND-Schaltung 201 freigegeben wird, um Signale aus der Schiene 10 aufzunehmen. Dieses Register empfängt im wesentlichen
stets Befehlsadressenwörter und nicht etwa Datenwörter, und es wird so behandelt, als ob es zwei Hauptteile aufwiese,
die ersten bzw. zweite Gruppen von Bits aufnehmen, welche Befehlswörter in einem bekannten Format bilden. Die erste Gruppe
repräsentiert in codierter Form eine gewünschte Operation bzw. einen Befehl, während die zweite Gruppe gewöhnlich die
Speicheradresse eines Datenwortes darstellt, das als Operand aus dem Speicher herausgezogen werden soll, oder in dem ein
Rechenergebnis gespeichert werden soll.
Um ein einfaches, Jedoch konkretes Beispiel zu geben, zeigt die Tabelle I, daß ein grundsätzliches arithmetisches Befehlsadressenwort
ein Format hat, von dem für die Zwecke der Beschreibung angenommen sei, daß es sich aus sechzehn Bitstellen
bO bis b15 zusammensetzt, wobei die zehn ersten Stellen binäre
Adressenwerte enthalten, die eine beliebige Speicheradresse von 0 bis 1023 darstellen. Die Bits b10 bis b15 sind so codiert,
daß sie jeweils einen von mehreren möglichen Befehlen bezeichnen, z.B. LDA (Akkumulator laden), ADD (Operanden zu der gerade
im Akkumulator enthaltenen Zahl addieren) oder SUB (Operanden von der gerade im Akkumulator enthaltenen Zahl subtrahieren)
. Zur Vervollständigung der Beschreibung wird im folgenden ein typischer Satz von möglichen Befehlen eingehender
behandelt.
Gemäß einem Merkmal der Erfindung und zu einem noch zu erläuternden
Zweck wird bei dem grundsätzlichen Befehlsadressenwort-
«0981 5/0600
ty
format der Tabelle I die Bitstelle b1O dazu benutzt, durch
eine 1 oder 0 anzuzeigen, daß es sich um einen "unbedingten" oder einen "bedingten" Befehl handelt. Somit verbleiben fünf
Bitstellen b11 bis b15 zum Aufnehmen binärer Bitwerte 0 oder 1, die in der Tabelle I mit I bezeichnet sind, und die nach einem
vorgewählten Code jeweils einen von 32 möglichen Befehlen bezeichnen können. Um die Beschreibung abzukürzen, ist die Größe
des Systemspeichers ebenso wie die Anzahl der möglichen Befehle begrenzt. Bei einem auf den Markt zu bringenden Rechner werden
natürlich mehr als 1024 Speicherstellen vorhanden sein, und der Rechner wird so aufgebaut sein, daß er eine erheblich grössere
Anzahl von Befehlen verarbeiten kann, zu denen auch einige gehören, zu deren Durchführung zahlreiche mikroprogrammierte
Schritte erforderlich sind.
Aus der vierten Zeile der Tabelle I ist ersichtlich, daß bei einem grundsätzlichen Datenwort lediglich eine binäre Darstellung
eines Zahlenwertes vorhanden ist. Die Kombinationen von Nullen und Einsen an den Bitstellen bO bis bi4 ermöglichen es,
jeden gewünschten dezimalen Zahlenwert zwischen 0 und 32767 binär darzustellen. Die letzte Bitstelle b15 dient dazu, mittels
einer 1 oder einer 0 das Vorzeichen der Zahl darzustellen. Allgemein gesprochen werden Datenwortzahlen mit diesem Format dem
arithmetischen Eingaberegister 102 und nicht etwa dem Befehlsadressenregister 202 eingegeben.
Fig. 3 ist eine vergrößerte Darstellung des Befehlsadressenregisters
202, anhand welcher nähere Angaben gemacht werden. Jede der Bitstellen dieses Speicherregisters ist z.B. alsKippSchaltung
ausgebildet, die gesetzt oder rückgesetzt wird, wenn das aus der Schiene 10 übernommene Befehlswort an der entsprechenden
Bitstelle eine 1 oder eine 0 enthält. Die 16 Ausgabeleitungen des Befehlsadressenregisters sind in Fig. 3 mit iO bis i15
bezeichnet; ferner werden Komplementsignale TT5, ΪΤ5 und ΓΤ3*
den drei Kippschaltungen am linken Ende des Registers 202 ent-
109815/0600
2 7 A 3 ü: -; J
nommen. Vergleicht man die Tabelle I mit Fig. 3, erkennt man, daß dann, wenn dem Befehlsadressenregister 202 ein grundsätzliches
Befehlsadressenwort eingegeben wird, in den Ausgabeleitungen iO bis i9 die Adresse darstellende binäre Signale
erscheinen, während in den Ausgabeleitungen i10 bis i15 Befehle
repräsentierende binäre Signale erscheinen, wobei jedoch das Signal in der Ausgabeleitung i10 eine besondere Bedeutung
hat.
Gemäß Fig. 2a und 2b werden die Adressenbitsignale, welche in einem Befehlsadressenwort in dem Register 202 enthalten
sind, normalerweise über eine Schiene 204 von den Ausgabeleitungen iO bis i9 aus dem Eingang eines 2:1-Hultiplexgatters
205 zugeführt. Wenn dieses Gatter durch ein Steuersignal EA freigegeben wird, wird das über die Leitungen iO bis i9 zugeführte
Eingangssignal OA der Speicheradressenschiene 11 zugeführt, um die Speicherstelle zu bezeichnen, aus der ein Wort
ausgelesen oder der ein Wort eingegeben werden soll. Die Leitungen iO bis i5 führen ständig Signale für den 10-3it-Eingang
OA, und die Signale aus den Leitungen i6 bis i9 werden normalerweise über ein Ffreigegebenes, zur Maskierung dienendes
UND-Gatter 206 weitergeleitet, um den verbleibenden Teil des Signals OA zu bilden. Unter bestimmten, noch zu erläuternden
Bedingungen werden die Maskierungsgatter 206 gesperrt, um eine Maskierung zu bewirken und die Signale an den Bitstellen b6
bis b9 des 10-Bit-Eingangssignals OA auf 0 zu setzen. An dieser
Stelle kann angenommen werden, daß das Eingangssignal OA durch die Signale gebildet wird, die in allen Registerausgabeleitungen
iO bis i9 anstehen.
Die Befehlsbit-Ausgabeleitungen iiO bis i15 sind zu einer
Schiene 208 zusammengefaßt, die zu einer Direktdecodierschaltung 209 und zu einem Kartenbildungs-Festwertspeicher 210
führt. Diese Leitungen werden bei diesen Einrichtungen dazu benutzt, um letztlich die Art der Operation zu bestimmen, die
00 98 1 5/0600
während jedes Teils einer Phasensequenz abläuft, welche nach dem Eintreffen eines beliebigen BefehlGwortes in dem Register
202 durchgeführt wird.
Enthält ein Befehlswort im Register 202 einen Befehlscode, durch den die Benutzung eines Operanden aus dem Speicher gefordert
wird, läßt die Direktdecodierschaltung 209 ein Signal GETOP (Operanden abrufen) zu einem Phasensequenzgenerator 212
gelangen, um diesen zu veranlassen, sequentiell Phasensignale
PHO, PH2 und PH3 zu erzeugen, die zeitabhängig durch ein Signal CLK! eines Haupttaktgebers und Zeitsignalgenerators 214
gesteuert werden. Wenn dagegen ein Befehlswort im Register 202 einen Operationscode enthält, bei dem die Benutzung eines
Operanden nicht erforderlich ist, erzeugt die Direktdecodierschaltung 209 nicht das Signal GETOP, und der Phasensequenzgenerator
212 erzeugt dann sequentiell nur die Phasensignale PHO und PH3.
Wie im folgenden erläutert, wird der Festwertspeicher 210 während
der Ausführungsphase PH3 jeder Operationssequenz aktiviert; er decodiert die Befehlsbitsignale aus den Ausgäbeleitungen
i11 bis i15, um codierte 4-Bit-Mikroprogramm-Eingangssignale
einer Mikroprogramra-Eingabeschiene MPI zuzuführen. Während der Phase 0 oder der Phase 2, d.h. wenn die Signale PHO und PH2
anstehen, befindet sich der Festwertspeicher 210 außer Betrieb, und die benötigten Mikroprogramm-Eingangssignalewerden von
dem Phasensequenzgenerator 212 aus direkt der Schiene MPI zugeführt.
Die Schiene 1-3? I führt zu den vier Steuereingangs klemmen Xa, Xb,
Xc, Xd eines Mikroprogramm-Festwertspeichers 220. Bei diesem Festwertspeicher handelt es sich praktisch um eine ständig angeschlossene
Codiermatrix, die in Abhängigkeit von 16 möglichen Eingangssignalcodes in den Leitungen Xa, Xb, Xc und Xd
AusgangsSignaIe in verschiedenen Kombinationen von 15 Ausgabeleitungen
M1 bis H15 erscheinen läßt, die in Fig. 9 dargestellt
809815/0600
? I U 3 ϋ ί: Ο
sind. Diese 15 Leitungen sind in verschiedene "Feldgruppen"
unterteilt, die in Fig. 2b mit ADDR, BUS, ALU, STOR, MISC und
IPC unterteilt sind. Die Signale des Feldes ADDR bezeichnen durch ihre binären Codekombinationen die Quelle, von der aus
Signale der Speicheradressenschiene 11 zugeführt werden sollen. Die Signale des Feldes BUS bezeichnen durch ihre binären Kombinationen
die Quelle, von der aus Signale der Systemschiene 10 zugeführt werden sollen. Die Signale des Feldes ALU bezeichnen
durch ihre binären Codekombinationen jeweils den Befehl, der der Einheit ALU zugeführt werden soll, um sie zu veranlassen,
eine Operation einer gewünschten Art bezüglich ihrer Eingangssignale A und B durchzuführen. Die Signale des Feldes
STOR bezeichnen durch ihre binären Codekombinationen jeweils eine Einrichtung bzw. einen Teil des Systems, in dem Signale
aus der Systemschiene 10 gespeichert werden sollen. Die Signale des Feldes HISC bezeichnen durch ihre binären Codekombinationen
jeweils eines von mehreren möglichen verschiedenen Steuersignalen, das erzeugt werden soll. Das Signal des Feldes
IPC, das aus einem einzigen in einer einzigen Leitung erscheinenden Signal besteht, bezeichnet dann, wenn es vorhanden
ist, daß der Programmzähler 226 weitergeschaltet werden soll.
Die Feldgruppen-Ausgabeleitungen des Mikroprogramm-Festwertspeichers
220 führen gemäß Fig. 2b zu zugehörigen Felddecodierern FD1 bis FD5. Hierbei handelt es sich um einfache Decodierer,
die jeweils ein Ausgangssignal in einer von mehreren Ausgabeleitungen erscheinen lassen, wobei die betreffende Ausgabeleitung
dem kombinatorischen Code der Eingabeleitungen entspricht, denen binäre Signale mit dem Wert 1 zugeführt
werden. Gemäß Fig. 2b kann es sich bei dem decodierten Adressenfeldsignal um ein Signal PC oder ein Signal EA handeln.
Entsprechend hat das decodierte Signal des Feldes BUS eine der Bedeutungen ADTR, MEM, ATB oder EOR. Das decodierte Signal
des Feldes ALU kann in einer von fünf Leitungen erscheinen,
80981 5/0600
welche die Bezeichnungen A, B, B", A + B und A-B tragen. Das
decodierte Signal des Feldes STOR erscheint in einer von sechs möglichen Decodierer-Ausgabeleitungen, während das decodierte
Signal des Feldes MISC in einer von fünf möglichen Ausgabeleitungen erscheint.
Es sei bemerkt, daß die Decodierer der Felder STOR und MISC
mit einer Gattersteuerung versehen sind. Dies bedeutet, daß
alle AusgangssignaIe dieser Felder auf dem Pegel 0 gehalten
werden, wenn ein zugeführtes Steuersignal K durch eine noch zu beschreibende, bedingt arbeitende Steuereinrichtung 403
von seinem normalen Wert 1 auf den Wert 0 umgeschaltet wird.
Schließlich gehört zu der Steuereinheit 200 ein Programmzähler 226, der auf bekannte Weise dazu dient, das gesamte System
während des Betriebs von einem Programmschritt zum nächsten weiterzuschalten. Der Programmzähler kann 10 Tandem-Kippschaltungen
enthalten, die binäre Ausgangssignale erzeugen, durch
welche Dezimalwerte von 0 bis 1023 repräsentiert werden, und die über eine Schiene 228 weitergeleitet werden, um das 10-Bit-Eingangssignal
PA für das Multiplexgatter 205 zu bilden. Wird dieses Gatter durch ein Signal PC freigegeben, überträgt es
die dem Eingangssignal PA entsprechenden Ausgangssignale des
Programmzählers 226 zu der Adressenschiene 11, so daß der Systemspeicher angewiesen wird, das Wort der betreffenden Adresse
zu entnehmen und es über die Ausgangsleitungen 301 auszugeben
oder die in den Eingabeleitungen 302 erscheinenden Signale an der betreffenden Adressenstelle zu speichern. Der Programmzähler
226 wird normalerweise so weitergeschaltet, daß er sequentiell von einem Zählzustand in den nächsten übergeht; Dieses
Weiterschalten erfolgt in Abhängigkeit von den positiv gerichteten Übergängen von Impulsen INC, die dem Zähleingang des
Programmzählers zugeführt werden. Die Weiterschaltimpulse werden
durch eine UND-Schaltung 230 erzeugt, die auf eine noch zu erläuternde Weise gesteuert wird.
809815/0600
v-9
- ■? 7 A J,:, J
Alternativ ist es jedoch möglich, den Programmzähler 22f>
vorher auf einen gewünschten Zählzustand einzustellen, so daß sein Ausgangssignal ΡΛ einen bestimmten Zahlenwert annimmt.
Dies ist auf bekannte Weise mit Hilfe eines Voreinstellsignals PPC1 aus einer UND-Schaltung 231, mittels dessen
der Zähler 226 entsprechend den Signalen eingestellc wird,
möglich, die dann in den Leitungen bO bis b9 der Schiene 10 anstehen. Ferner kann der ProgrammzShler bei üetriebsetzung
des Systems gelöscht bzw. auf Null gestellt werden, und zwar durch einen Einschalt- oder Startimpuls PWRS, der durch eine
nicht dargestellte Einrichtung erzeugt wird, wenn sämtliche Teile des Systems unter Strom gesetzt werden.
3. Spezielle Wortformate
Wie erwähnt, wird ein grundsätzliches Befehlsadressenwort entsprechend der ersten Zeile der Tabelle τ so aufgestellt,
daß die binären T.7erte an 10 Bitstellen, d.h. den mit A bezeichneten
Bitstellen, eine Adresse repräsentieren, während die Werte an den sechs Bitstellen I und U/C eine bestimmte
befohlene Operation bezeichnen. Gemäß der Erfindung sind ,jedoch Einrichtungen vorhanden, die auf eindeutige Weise jeweils
auf eines von mehreren "speziellen" Befehlsadressenwörtern
ansprechen, und zwar auf diejenigen, mittels welcher durch die Befehlscodes an den Bitstellen b11 bis b15 die logische
Verarbeitung oder Handhabung eines einzigen gewählten Bits eines gewählten Wortes im Speicher veranlaßt wird. Zwar dienen
die hier beschriebenen grundsätzlichen und speziellen Befehlswortformate nur zur Veranschaulichung des angewendeten Grundgedankens
, und man könnte zur Erzielung der gleichen Ergebnisse auch andere gleichwertige Formate wählen, doch zeigt die Tabelle
I das Format eines Haschinensprachen-Befehlscodes, durch den Einzelbitoperationen verschiedener bestimmter Arten bestimmt
werden. Es sei bemerkt, daß ein "logischer Prozeßbefehl" an den Bitstellen bO bis b5 (in der Tabelle I mit A bezeichnet)
90 98 1 5/0600
ORIGINAL INSPECTED
η u 3ue;u
die Adresse eines Onerandenwortes darstellt, d.h. eines gewählten Wortes, von dem ein gewähltes Bit verwendet werden
soll. Bei jiedem solchen "logischen Prozeßbefehl"im Wortformat
bezeichnen die binären Werte B, die an den Bitstellen b6 bis b9 erscheinen, im binären Format eine Zahl zwischen 0 und 15»
welche das gewünschte Einzelbit identifiziert, das aus dem gewählten Wort gewählt werden soll, und das bei den verschiedenen
möglichen logischer Operationen verwendet werden soll. Schließlich enthält das spezielle Format eines "logischen Prozeßbefehl
v/orte s" die mit I und T/C bezeichneten binären V/erte ?.n den Bitstellen b10 bis b15, die gemäß einem vorher festgelegten
Code die ,jeweilige Art der durchzuführenden logischen Funktion (z.B. UIiD oder ODER) bezeichnen. V/ie im folgenden
erläutert, wird der binäre Wert , der an der Bitstelle b10 eines "logischen Prozeßbefehlswortes11 erscheint, dazu verwendet,
anzuzeigen, ob der gewählte Einzelbitoperand in seiner wahren oder in seiner Komplementform verwendet werden soll,
während die mit I bezeichneten Signale an den Bitstellen b11 bis b15 die jeweils durchzuführende Operation bezeichnen.
Es kommen zwei Hauptarten von logischen Einzelbitoperationen vor. Bei den Operationen der ersten Art, zu denen vier mögliche
verschiedene spezielle Operationen gehören, wird das gewählte Bitsignal als Eingangsoperand für den logischen Prozessor
verwendet. Bei Operationen der zweiten Art, zu denen ebenfalls vier verschiedene Operationen gehören, wird die
logische Antwort LA an einer gewählten Bitstelle in einem gewählten Wort des Speichers gespeichert, oder das gewählte
Bit wird in einen gewünschten Zustand gebracht. Operationen der letzteren Art werden im folgenden als "Bitmanipulation"
bezeichnet. Gemäß der Tabelle I hat ein "logisches Bitmanipulations-Befehlsadressenwort"
das gleiche Format wie ein "logisches Prozeßbefehlswort", abgesehen davon, daß das mit U/C
bezeichnete Bit an der Bitstelle b10 angibt, ob es sich bei der durchzuführenden Operation um eine bedingte oder eine unbedingte
Operation handelt. Gemäß der Tabelle I bedeutet das
809815/0600
27A3ÜUÜ
Signal U/C bei dem logischen Bitmanitmlations-ijefehlswort
ebenso wie bei dem grundsätzlichen Befehlswort, daß dann, wenn an der Bits+elle b10 eine 0 oder eine 1 erscheint, der
durch das gesamte Wort dargestellte Befehl ohne Rücksicht auf den Wert des logischen Antwortsignals LA auf unbedingte
Weise ausgeführt werden soll, oder auf bedingte Weise, d.h. nur dann, wenn das Signal LA den Wert 1 hat.
Logische Einzelbitoperationen können an einem gewählten Bit eines gewöhnlichen alphanumerischen Datenwortes ausgeführt
werden. Beispielsweise ist es bei dem numerischen Datenwortformat nach der Tabelle I möglich, das Einzelbitsignal an der
Bitstelle b14 zu prüfen und es als eine Anzeige dafür zu verwenden,
ob der gesamte numerische Wert des ganzen Wortes grosser ist als der Dezimalwert 16 384 oder nicht. Ferner kann man
z.B. das Signal an der Bitstelle b15 eines numerischen Datenwortes
wählen, um anzuzeigen, ob der numerische Wert positiv oder negativ ist. In manchen Fällen kann es jedoch erwünscht
sein, eine große Anzahl von nicht in Beziehung zueinander stehenden Einzelbitsignalen zur Verfügung zu haben, um sie zu
verwenden und/oder sie bei oder durch logische Operationen zu verändern. Ein Merkmal der Erfindung besteht darin, daß
manche Wörter, die an bekannten Adressen des Speichers 300 bekannter Art festgehalten werden, jeweils einfach 16 einzelne
Zweizustands- oder Ein/Aus-Werte darstellen können. Zwar handelt
es sich bei diesen Speicherwörtern im wahren Sinne um "Datenwörter", doch bezeichnen ihre einzelnen Bitsignale nicht
insgesamt irgendeinen Zahlenwert. Ein solches Datenwort, das einzelne, mit QQ bis Q12 bezeichnete logische Bits enthält,
ist in der Tabelle I als "logisches Bitwort" dargestellt. Wörter dieser Art lassen sich dem Speicher so eingeben, als
ob es sich um gewöhnliche numerische Datenwörter handelte, und einzelne Bitsignale können auf eine noch zu erläuternde
Weise erfaßt oder verändert werden. Tatsächlich brauchen einige der logischen Bitwörter, die im Speicher festgehalten
80981 5/0600
β/ 27A3Ü6U
werden, nicht in konventionellen Kern- oder Großintegrationsspeicherelementen
gespeichert zu werden. Es kann sich um Signale handeln, die den Wert 0 oder 1 beibehalten, und zwar je
nach dem, ob entsprechende zugehörige einzelne Schalter geöffnet oder geschlossen sind, oder sie können die Ausgangsspannung
von Kippschaltungen darstellen, die gesetzt oder rückgesetzt werden können, um äußere Einrichtungen ein- oder
abzuschalten.
4. Die logischen Verarbeitungselemente
Gemäß der Erfindung werden dem arithmetischen Grundsystem einige wenige relativ einfache Elemente hinzugefügt, um eine
programmierbare logische Einzelbitverarbeitung und eine Manipulationsmöglichkeit
zu schaffen, und um es zu ermöglichen, jeden gewöhnlichen Befehl so zu programmieren, daß er entsprechend
den Ergebnissen vorher durchgeführter verketteter Boolescher Einzelbitoperationen unbedingt oder nur bedingt ausgeführt
wird. Fig. 2a zeigt einen logischen Prozessor 401, der im wesentlichen zwei Arten von Operationen an einem Einzelbit-Operandeneingabesignal
LB ausführt. Er "lädt" das Signal LB, indem er das Signal LA in Übereinstimmung damit bringt, oder
er verknüpft das Signal LB entsprechend einer UND-, ODER- oder
Exklusiv-ODER-Funktion mit dem vorhandenen logischen Antwortsignal
LA, wodurch letzteres so verändert wird, daß es mit dem Ergebnis dieser Operation übereinstimmt. Alternativ verwendet
der Prozessor 401 das Operandeneingabesignal LB, um ein Bitsteuer-Ausgangssignal BC zu erzeugen, das dazu dient,
das gewählte Bit in dem gewählten Wort zu veranlassen, mit der logischen Antwort LA übereinzustimmen oder einen bestimmten
gewünschten Wert von den beiden möglichen binären Werten anzunehmen.
Um dem logischen Prozessor 401 Anweisungen bezüglich der jeweils durchzuführenden Operation zu geben (als Ergebnis eines
S09815/0600
27 U 3 ü Ö U
bestimmten speziellen Befehlsadressenwortes, das in das Register 202 abgerufen worden ist) ist die Direktdecodierschaltuns
209 so ausgebildet, daß sie dem Prozessor fünf Eingangssignale
LO, L1, L2, COMP, i12 und H4 zuführt. Hit Hilfe der jeweiligen Kombination der anstehenden Signale wird eine bestimmte
logische Funktion befohlen, die zu acht verschiedenen
möglichen Funktionen gehört. Das Signal COIiP informiert den
Prozessor 401, ob das Eingangssignal Lb in seiner wahren oder
seiner Komplementform logisch verarbeitet werden soll. Tn der vorliegenden Beschreibung dienen die Symbole "Punkt", + sowie
© entsprechend der bekannten Booleschen Algebra verwendet, um die logischen Operatoren "UTID", "ODER" und "Exklusiv-ODER" zu
bezeichnen; ("x und y" hat die Schreibweise x«y, "x oder y"
die Schreibweise χ + y und "x ODER y" die Schreibweise x@y). Die acht übrigen möglichen logischen Funktionen sind in der
Tabelle IV zusammengestellt, wo die angegebenen Kurzzeichen die nachstehende Bedeutung haben.
LD: gewähltes Bit dem logischen Akkumulator eingeben, um
LA zur Übereinstimmung damit zu bringen. AN: LA gleich LA *LB machen (LA bezeichnet den "alten"
;/ert von IjA und LA den "neuen" oder resultierenden Wert
von LA).
OR: LA^ gleich LA^ + LB machen.
OR: LA^ gleich LA^ + LB machen.
XR: LA^ gleich LA^ (+) LB machen.
η ° ο
n gleich LAo
SV: Signal LA an der gewählten Bitstelle des gewählten Wortes
zwischenspeichern.
IV: Die 'invertierte" Komplementform des gewählten Bitsignals LB erneut an der gewählten Bitstelle des gewählten Wortes
IV: Die 'invertierte" Komplementform des gewählten Bitsignals LB erneut an der gewählten Bitstelle des gewählten Wortes
speichern.
ST: Das Signal an der gewählten Bitstelle des gewählten Wortes
ST: Das Signal an der gewählten Bitstelle des gewählten Wortes
auf den binären Wert 1 setzen.
RS: Rücksetzen des gewählten Bits des gewählten Wortes auf den binären Wert 0.
RS: Rücksetzen des gewählten Bits des gewählten Wortes auf den binären Wert 0.
80981 5/0600
-yr- 2743Ü6Ü
Die Tabelle IV läßt erkennen, daß es ein Code mit fünf Bits LO, L1, L2, ii4, i12 ermöglicht, auf eindeutige Weise durch
die Kombination binärer Werte der fünf Signale acht mögliche spezielle logische Funktionen darzustellen, so daß Operationscodesignale,
welche bestimmen, auf welche V/eise der logische Prozessor 401 arbeiten soll, dem Prozessor von der Direktdecodierschaltung
209 aus zugeführt werden, wobei sich der Code jeweils nach den Befehlsbits richtet, die in den Leitungen
i11 bis H5 des Registers 202 erscheinen. Weiter unten wird
anhand von Fig. 10 erläutert, auf welche V/eise diese Operationscodesignale die speziellen Operationen des logischen Prozessors
401 bestimmen.
Gemäß Fig. 2a zieht ein 16:1-Bitwähler 402 das Signal LB aus
der gewählten Bitstelle eines Operandenwortes heraus, das gewählt und dem arithmetischen Eingaberegister 102 eingegeben
worden ist. Zu diesem Zweck werden die "Bitidentifikationssignale"
eines speziellen Befehlswortes verwendet, das in das Befeh]sadressenregister 202 abgerufen worden ist. Diese vier
Signale, die in der Tabelle I mit B bezeichnet sind und in den Ausgabeleitungen 16 bis 19 des Registers 202 erscheinen,
stellen in der binären Schreibweise einen beliebigen Dezimalwert von 0 bis 15 und damit jeweils eine der Bitstellen bO bis
b15 dar. Zu dem Bitwähler 402 gehören 16 Eingabeleitungen, die
durch die Ausgabeleitungen des arithmetischen Eingaberegisters 102 gebildet werden. Wenn der Dezimalwert der vier Signale
B einen bestimmten Wert im Bereich von 0 bis 15 hat, wird das Einzelbitsignal aus dem Register 102 an seiner entsprechenden
Bitstelle bO bis b15 so übertragen, daß es als das logische
Operandensignal LB erscheint. Wenn z.B. die Signale in den Leitungen i6 bis i9 die binären Werte 0101 haben, wird das
Signal aus der Bitstelle b5 des Registers 102 so übertragen, daß es als das Einzelbit-Operandensignal LB erscheint. Haben
die Ausgangssignale des Registers 202 die binären Werte 1011, wird das Signal aus der Bitstelle b11 des Registers 102 zu
809815/0600
dem Signal LB. Solche 16:1-Multiplexschaltungen sind bekannt
und im Handel erhältlich, so daß sich eine nähere Erläuterung erübrigen dürfte.
Immer dann, wenn die logische Antwort LA an einer gewählten Bitstelle eines gewählten Wortes gespeichert werden soll, oder
wenn das gewählte Bit auf andere Weise verarbeitet werden soll (entsprechend den Befehlen IV, ST oder RS), wird die
arithmetische Einheit 100 benutzt, um das gesamte gewählte Wort zu verarbeiten. Das 'ort wird dem arithmetischen Eingaberegister
102 eingegeben, so daß es zum Eingangssignal B der Einheit ALU wird, welch letzterer das Befehlssignal B" zugeführt
wird, um das Signal F zur Übereinstimmung mit dem Einerkomplement des Wortes zu bringen. Wird bewirkt, daß
das Eingangssignal H der Exklusiv-ODER-Anordnung 106 nur aus Einsen besteht, ist das Ausgangssignal ANS' die invertierte
Form, d.h. das Einerkomplement des Signals F und daher mit dem ursprünglich gewählten Wort identisch. Jedoch bewirkt ein
0-Signal, das in einem beliebigen Bit des Signals H enthalten ist, daß das entsprechende Bit des Signals AUS' gegenüber
dem Wert des entsprechenden Bits des ursprünglich gewählten Wortes invertiert wird. Danach kann das Signal ANS1 im Speicher
an der ursprünglich gewählten Wortstelle erneut gespeichert werden.
Um diese selektive Bitumkehrung bei der Ausführung der speziellen logischen Befehle SV, IV, ST und RS durchzuführen,
wird das Signal BC als Eingangssignal einer Einrichtung 404 zum Steuern des gewählten Bits zugeführt, bei der es sich um
ein 1:16-Multiplexgatter handelt, das nach Bedarf durch die
vierstelligen Bitidentifikationssignale konditioniert wird, welche dann in den Registerausgabeleitungen i6 bis i9 anstehen
und die Bitadresse BBBB eines speziellen Befehlswortes im Register 202 repräsentieren. Mit anderen Worten, die Bitsteuerschaltung
404 ist auf bekannte Weise als 1:16-Multiplexgatter
80981 5/0600
y> 2743Ü6Ü
ausgebildet, dem über die Leitungen 16 bis i9 die gleichen
Steuersignale zugeführt werden wie dem Bitwähler 40?. Dje
Schal tune; 4o4 gibt das Signal BC, das, wie nachstehend erläutert,
durch den logischen Prozessor 401 nur dann zu einer 1 gemacht wird, wenn das gewählte Bit des gewählten Wortes als
O-Signal invertiert werden muß, über diejenige ihrer 16 das
Signal H führenden Ausgabeleitungen weiter, die der gewählten Bitstelle entsnrechen. Alle übrigen Ausgabeleitungen der Steuerschaltung
404, die das ignal G führen, bleiben auf dem Pegel 1, so daß dann, wenn das Signal BC eine 1 ist, das Signal ANS·
das gleiche wird wie das ursprünglich gewählte Wort, abgesehen davon, daß das darin enthaltene gewählte Bit invertiert worden
ist.
Das Signal ANS1 kann dann im Speicher erneut an der gleichen
Adresse gespeichert werden, der das ursprünglich gewählte Wort entnommen wurde, was zur Folge hat, daß bei dem neu gespeicherten
Wort ein Bit verändert oder aber nicht verändert worden ist, wie es erforderlich war, um den betreffenden Bitmanipulationsbefehl
SV, IV, ST oder RS auszuführen.
5. Beispiele für Befehle und ihre Codes
Bei der nachstehenden eingehenderen Erläuterung wird eine begrenzte Anzahl von acht arithmetischen oder konventionellen
Befehlen behandelt, und es wird auf neun spezielle logische Befehle eingegangen. Zum Verständnis der gesamten Arbeitsweise
des Rechnersystems ist es erforderlich, die speziellen
Maschinensprachencodes für die betreffenden Befehle in Form von Beispielen konkret zu benennen. Natürlich ist es mit Hilfe
eines marktfähig hergestellten Rechners von voller Größe möglich, eine erheblich größere Anzahl der verschiedensten arithmetischen
oder sonstigen konventionellen Befehls zu formulieren und zu speichern, und auf der Basis der begrenzten Anzahl der
nachstehend behandelten Beispiele können die verschiedensten Befehlscodes verwendet werden.
809815/0600
Λ. Gewöhnliche Befenle
In den acht ersten Zeilen der Tabelle If sind nur acht, konventionelle
Befehle verzeichnet, die für die Zwecke der Erläuterung ausgewählt wurden; hierbei handelt es sica um die
speziellen Fünf-uit-Codes an den uitsteilen b 11 bis b1r; eines
grundsätzlichen BefeiTscodes der in der ersten Zeile der
Tabelle I angegebenen Art, wobei Jeder ijefehl eindeutig
identifiziert ist. Diese gewöhnlichen befehle sind nachstehend kurz erläutert.
bis
LDA 00001
ADD 00011
Laden des Akkumulators mit einem Datenwort aus
der durch die uits bO bis b9 angegebenen Adresse,
Addieren eines numerischen Datenwortes aus der
durch die Bits bO bis b9 angegebenen Adresse zu der dann im AkkumuDator angezeigten Zahl und
nachfolgendes Singeben des neuen Ergebnisses in den Akkumulator.
■;U3 00101
Subtrahieren eines numerischen Datenwortss aus
der durch die ßits bO bis b9 bestimmten Adresse von der im Akkumulator enthaltenen Zahl und nachfolgendes
Eingeben des neuen Ergebnisses in den Akkumulator.
STA 00010:
Entnehmen des durch den Akkumulator angezeigten Wortes ANS und "Speichern" dieses Wortes im
Speicher an der durch die Bits bO bis b9 angegebenen Adresse.
CLA 00100:
Löschen des Akkumulators dadurch, daß alle Bitsignale im Signal ANS auf eine binäre 0 gesetzt
werden.
809815/0600
ORiGiNAL INSPECTED
274306Ü
!AR 00110:
•AL 01000
JMF 01010:
Verschieben des Akkumulators um eine Stelle nach rechts, d.h. Verschieben jedes binären
Signals im i6-uit-Sir;nal ANS um eine Stelle nach
rechts, so daß die durch das Signal ANS dargestellte Zahl praktisch mit 2 multipliziert wird.
Verschieben des Inhalts des Akkumulators nach links, d.h. Verschieben jedes binären Signals
in den 15 Stellen des Akkumulators um eine Stelle nnch links, so daß die durch das Signal AUS dargestellte
Zahl praktisch durch 2 dividiert wird.
Springen innerhalb der Programmfolge von dem jeweils durcii den Programmzähler addreaaLerten
Befehlswort zu einer Speicheradresse, die durch die binären ßitwerte an den Adressenstellen bO
bis u9 benannt werden (durch Voreinstellen des Programmzählers).
Es sei bemerkt, daß es die Befehle LD, ADD, SUB erforderlich machen, einen Operanden aus dem Speicher herauszuziehen und
ihn dem arithmetischen Eingaberegister 102 zuzuführen. 3ei den Befehlen STA, CLA, 3AR, SAL und JMP wird kein Operand aus
dem Speicher benötigt. Der hier als einfaches Beispiel gewählte Code unterscheidet zwischen den beiden Arten von Befehlen
durch das Vorhandensein oder Fehlen einer 1 an der Bitstelle b11 des betreffenden Befehlswortes und eines entsprechenden
1-Signals in der Leitung 111, nachdem das Befehlswort
in das Befehlsadressenregister 202 überführt worden ist.
Bei jedem dieser gewöhnlichen oder Grundbefehle dient die Bitstelle b10 dazu, anzuzeigen, ob der Befehl unbedingt oder
bedingt auszuführen ist. Wird ein beliebiges solches Wort dem Register 202 eingegeben, wird der Leitung HO eine binäre
1 zugeführt, wenn dieser Befehl nur dann ausgeführt werden
809815/0600
BAD ORIGINAL
soll, wenn das dann anstehende logische Signal LA eine 1
ist. Wie nachstehend erläutert, wird das Signal aus der
Leitung i10 direkt decodiert und verwendet, um zu bestimmen, ob die Ausführung des Befehls fortgesetzt oder abgebrochen
werden soll. Die Ausführung wird immer dann fortgesetzt, wenn das Signal U/C in der Leitung i10 eine 0 ist und somit einen
unbedingten Befehl bezeichnet. Ferner wird die Ausführungfortgesetzt, wenn das Signal U/C eine 1 und das Gigaal LA
ebenfalls eine 1 ist, doch wird die Ausführung abgebrochen, wenn das Signal U/C eine 1 und das Signal LA eine 0 ist
(Π = 1).
B. Spezielle Befehle
Es sind neun spezielle Befehle möglich, die jeweils durch eine bestimmte Operation gekennzeichnet sind, welche bezüglich
eines gewählten Bits eines gewählten Wortes durchgeführt werden soll. Hierbei handelt es sich jeweils um eines
der Wortformate, die in der Tabelle I die Bezeichnung "logische Prozeßinstruktionen" bzw. "logische Bitmanipulation"
tragen. Die speziellen Fünf-Bit-Befehlscodes an den Bitstellen b11 bis b15, durch welche diese neun speziellen Befehle eindeutig
identifiziert werden, sind in der Tabelle II angegeben und im folgenden kurz erläutert, und zwar bezüglich der Signale,
die in den Leitungen iO bis H5 erscheinen, nachdem das Befehlswort dem Register 202 eingegeben worden ist.
b15 bis b11
IF 00111: "Wenn" ein gewähltes Bit (durch BBBB in den Leitungen i6-i9 identifiziert) eines gewählten Wortes
an der Speicheradresse (durch AAAAAA in den Leitungen iO bis i5 identifiziert) in seiner wahren
Form oder seiner Komplementform (durch eine 0 oder eine 1 in der Leitung HO angegeben) eine 1 ist,
den nächsten Schritt des Programms durch Weiterschalten des Pro,grammzählers auslassen.
i98U0fc00
LD 01011:
Λΐ; 01001
OR 01111
XR 01101
Laden des gewählten Cits des gewählten Wortes in den Akkumulator, um das Signal LA in Übereinstimmung
damit zu bringen. Das gewählte Wort wird durch Adressensignale aus den Leitungen iO bis
benannt; die gewählte Bitstelle wird durch binäre Signale aus den Leitungen b6 bis b9 identifiziert.
Das gewählte Bit (durch Signale aus den Leitungen i6 bis i9 identifiziert) des gewählten Wortes
(dessen Speicheradresse über die Leitungen iO bis i5 gemeldet wird) dem logischen Prozessor
eingeben, es mit dem dann anstehenden Signal LA entsprechend einer logischen UND-Funktion verarbeiten
und das logische Antwortsignal LA entsprechend den Ergebnis der UND-Operation setzen.
Das gewählte Bit (durch die Leitungen i6 bis i9 bezeichnet) des gewählten Wortes (aus der durch
die Leitungen iO bis 15 bezeichneten Speicheradresse)
dem logischen Prozessor eingeben und den Prozessor veranlassen, es mit dem dann anstehenden
Signal LA entsprechend einer logischen ODER-Funktion zu verarbeiten und die logische Antwort
LA in Übereinstimmung mit dem Ergebnis der ODER-Operation zu bringen.
Das gewählte Bit (durch die Leitungen i6 bis i9) identifiziert) des gewählten Wortes (aus der
durch die Leitungen iO bis i5 bezeichneten Speicherstelle) dem logischen Prozessor eingeben und
den Prozessor veranlassen, es mit dem dann anstehenden Signal LA entsprechend einer logischen
Exklusiv-ODER-Funktion zu verarbeiten und die logische Antwort LA in Übereinstimmung mit dieser
Operation zu bringen.
809815/0600
..: 7 A 3 ϋ 6 ü
SV 10001: Den dann vorhandenen binären V/ert der logischen
Antwort LA dem speicher an der gewählten Jitstelle
(durcn Signale in den Leitungen bb bis b9 identifiziert) an der gewählten '"peicherstelle
(durch Signale in den Leitungen bO bis bf? identifiziert)
eingeben.
IV 10011: Invertieren (Komplementieren) des gewühlten Bits
(durch die Leitungen io bis i9 identifiziert) des
gewählten V/ortes im Speicher (an der durch die Leitungen
i0 bis i5 identifizierten ndresse).
::t 11011: Das gewählte Bit (durch die Leitungen i6 bis i9
identifiziert) eines gewählten Wortes (an der durch die Leitungen iO bis i5 identifizierten
Speicheradresse) in den Zustand 1 bringen.
RS 10111: Rücksetzen des gewählten 3its (durch die Leitungen i6 bis 19 identifiziert) des gewählten V/ortes
(an der durch die Leitungen iO bis i5 identifizierten Speicheradresse) in den Zustand 0.
Bei den vier logischen Verarbeitungsbefehlswörtern LD, AIJ, OR und XR dient das binäre Zeichen an der Bisteile b10, das in
der Registerleitung i10 erscheint, dazu, anzugeben, ob das gewählte Bit in seiner wahren Form oder in seiner Komplementform
T/C verarbeitet werden soll. Mit anderen V/orten, eine binäre 0 in der Leitung i10 veranlaßt den logischen Prozessor,
das gewählte Bit als eine 0 oder als eine 1 zu behandeln, wenn das Signal IB eine 0 bzw. eine 1 ist; jedoch veranlaßt eine in
der Leitung HO erscheinende binäre 1 den logischen Prozessor, das Signal LB so zu behandeln, als ob es eine 1 oder eine 0
wäre, wenn es tatsächlich eine 0 oder eine 1 ist.
Bei jedem der logischen Bitmanipulations-Befehlswörter IF, SV,
•09815/0600
ORIGINAL INSPECTED
/743UuU
IV, JT und RS dient dagegen das Signal an der bitstelle b10,
das in der Leitung i10 erscheint, dazu, anzuzeigen, ob die uefenle unbedingt oder bedingt (U/C) ausgeführt werden sollen.
Die Operation ist die gleiche wie die weiter oben bezüglich eines gewöhnlichen logischen Befehls genannte,
d.h. jedes Befehlswort v/ird ignoriert, und die Ausführung des Befehls wird abgebrochen, wenn das signal U/C in der
Leitung iiO eine 1 ist, und die logische Antwort LA den Wert
0 hat.
Genäß den Tabellen I und II bilden die speziellen logischen
uefenle zwei Gruppen, zu denen jeweils vier spezielle Befehle gehören. Hit anderen Worten, die befehle LD, AN, OR und XR
werden als lo-i'-che Verarbeitungsoperationen betrachtet, denn
sie können dazu führen, daß das Antwortsignal LA des logischen Prozessors verändert wird. Die Befehle der zweiten Gruppe können
als Bitmanipulationsbefehle bezeichnet werden, denn bei den befehlen 3V, IV, -'T uncl IiG erfolgt keine Veränderung der
logischen Antwort LA, sondern sie führen vielmehr zu der möglichen
Veränderung eines gewählten Bits innerhalb eines gewählten Wortes im speicher. Die erste Gruppe der logischen
Befehle ist in der Tabelle II dadurch erkennbar, daß ein 1-üignal
in den Leitungen ii4 und i11 vorhanden ist, nachdem irgendeines
dieser Befehlswörter dem Register 202 eingegeben worden ist. Die zweite Gruppe der logischen Befehle unterscheidet
sich von allen übrigen Befehlen dadurch, daß in der Leitung Hi; ein binäres 1-Signal ansteht, nachdem irgendein solches
logisches Befehlswort dem Register 202 eingegeben worden ist. Wie nachstehend erläutert, werden diese beiden Gruppen von
logischen Befehlen auf unterschiedliche Weise behandelt, um den Mikroprogrammspeicher 220 zu aktivieren, doch bewirken
alle logischen Befehle innerhalb einer bestimmten Gruppe, daß der Mikroprogrammspeicher in der gleichen V/eise aktiviert wird.
Bei jedem der neun speziellen logischen Befehlswörter werden
10981 5/0600
/^ / A 3 υ υ J
die Signale an den jj tr.tellen bo bis b9 zur Identifizierung
gewählter Bits verwendet, und daher stehen diese Bitstellen
nicht zur Angabe einer Speicheradresse zur Verfügung. Dies
bedeutet, daß die gewählten Wörter, die in Abhängigkeit von einem speziellen logischen Befehl aus dem Speicher herausgezogen
werden können, an Speicherstellen erscheinen müssen,
deren numerische Adressenwerte zwischen 0 und 63 liegen. Hieraus ergibt sich jedoch keine schwerwiegende Einschränkung,
denn es steht eine ausreichende Anzahl von 16-Hit-Datenwörtern
zur Verfugung, die benötigt werden, um eine große Anzahl von speziellen logischen Operationen unterzubringen. Außerdem
kann man diese Einschränkung dadurch vermeiden, daß man die Bitlänge bzw. die Wörter erweitert, oder daß man einige der
ersten 63 Speicherstellen als Zwischenspeicherstellen benutzt,
denen andere Wörter aus höheren Speicheradressen durch die Software-Programmierung eingegeben werden können, bevor das
betreffende Wort bei einer logischen Operation verwendet wird.
6. Einzelheiten des Systemspeichers
In Fig. 11 und 12 ist schematisch der Systemspeicher dargestellt, zu dem ein Speicher von relativ geringem Fassungsvermögen
gehört, welcher jedoch als Beispiel für die zu gebende Erläuterung ausreicht. Der Speicher enthält 1024 Wörter, von
denen sich jedes aus 16 binären Bits bO bis b15 zusammensetzt.
Somit können die Adressenstellen die .Dezimalwerte 0 bis 1023 darstellen, und das Erscheinen irgendeines dieser Dezimalwerte
in binärer Schreibweise in der 10-Bit-Adressenschiene bewirkt
einen Zugriff zu der entsprechenden Wortstelle über nicht dargestellte Decodierschaltungen bekannter Art. Die 16 Eingabeleitungen
302 des Speichers führen zu den 16 Bits jedes Wortes mit Ausnahme noch zu erläuternder, nur auszulesender logischer
Wörter, und die 16 Ausgabeleitungen 301 sind den entsprechenden Bits jedes Wortes zugeordnet.
Grundsätzliche Befehlswörter und spezielle logische Befehlswörter mit den vorstehend angegebenen Formaten und Bedeutungen
809815/0600
können jeder der Adressen des Speichers eingegeben werden,
doch wird gewöhnlich ein Software-Programm die aufeinanderfolgenden
Befehle eines Gesamtprogramms organisieren und sie allgemein in sequentielle Adressen verwandeln. Ferner können
Datenwörter an jeder der Speicheradressen untergebracht werden, doch werden sie gewöhnlich an den Adressen mit den
höheren Nummern gespeichert. Diejenigen Wörter, welche einzelne Bits enthalten, die gefühlt oder durch spezielle logische
Einzelbitbefehle verändert werden sollen, werden an den Speicheradressen 0 bis 63 untergebracht, und zwar deshalb,
weil die sechsstelligen Operandenadressennummern an den Speicherstellen bO bis b5 jedes speziellen Befehlswortes, das gemäß
der Tabelle I einen Bitidentifikationscode BBBB enthält, nur Dezimalzahlen zwischen 0 und 63 repräsentieren kann. Diese
Einschränkung ergibt sich lediglich aus der Vereinfachung der hier als Beispiel beschriebenen Ausführungsform, und sie
läßt sich auf verschiedene Weise vermeiden, z.B. dadurch, daß man das System auf bekannte Weise so ausbildet, daß sich die
Adressen indizieren lassen.
Wenn irgendein Wort durch Signale in der Schiene 11 "adressiert"
wird, und wenn das Schreibsignal BTM1 den Speicherdecodier-
und Steuerschaltungen zugeführt wird, werden bekanntlich die dann in der Schiene 10 und den Eingabeleitungen
302 anstehenden Signale angenommen und an den entsprechenden Bitstellen der Speicherstelle gespeichert. Wird dagegen irgendein
Wort durch Signale in der Schiene 11 adressiert, und wird ein Lesesignal MEM zugeführt, erscheinen die gespeicherten Werte
der Bits in dem adressierten Wort in den Ausgäbeleitungen 301,
von denen aus sie gemäß Fig. 2b über das Gatter Gmr der Schiene 10 zugeführt werden.
Um eine vollprogrammierbare Steuereinrichtung zu schaffen, kann man Speichereinheiten für bestimmte Adressenstellen des
Systemspeichers 300 in Gestalt äußerer Einrichtungen anstelle von Magnetkernen vorsehen. Um ein beliebig gewähltes Beispiel
109815/0600
ν 7 Λ 3 O;, Ü
zu geben, werden gemäß Fig. 11 und 12 die Adressenplätze 30
bis 39 und 40 bis 49 für Wörter verv/endet, von denen jedes
16 Einzelbits in Fora von Zwei zustande Signalen -u bis Q1 ^
naci der Tabelle I enthält, welche Ein/Aus-oignale o.Ier
binäre logische Daten darstellen, beispielsweise werdea die
l/ortadressen 30 bis 39 jeweils durcJi 16 bistabile Festwertvorrichtungen
gebildet, z.i3. durch einpolige Umschalter. Diese
Schalter können einer äußeren Maschine zugeordnet sein, un
den Zustand verschiedener Bedingungen anzuzeigen; hierbei kann
es sich z.3. um mechanische Endschalter, druckempfindliche
Schalter oder Druckknopfschalter handeln. Andererseits werden
die Adressen 4n bis 4(J durch 16 bistabile Γ-ünzelbit-Lese- und
-Schreibvorrichtungen, z.I3. Kippschaltungen, gebildet, von
denen jede dadurch gesetzt oder rückgesetzt v;erden kann, dan
binäre Signale aus den Rechnersystem eingegeben werden, wobei jede Vorrichtung eine zugehörige Einrichtung, ζ.Λ. einen itotor,
eine Anzeigelampe oder ein Magnetventil, ein- oder ausschalten kann. Der Zustand solcher Kippschaltungen und damit auch
der Zustand der durca sie gesteuerten Einrichtungen läßt sich
in jedem Zeitpunkt dadurch fühlen, daß die Ausgangsspannung
der betreffenden Kippschaltung "gelesen" wird. Bezüglich des bekannten Kernteils des Speichers 300 nach Fig. 11 sei hier
angenommen, daß keine Kernspeicherstellen 30 bis 49 vorhanden
sind, so daß die Adressensignale 30 bis 49 Iceine Reaktion
von Speicherkernen hervorrufen, sondern zum Lesen oder Schreiben
die gemäß Fig. 12 aufgebauten Speicherstellen 39 bis 49 aktivieren.
Gemäß Fig. 12 sind die äußeren Vorrichtungen für die Wörter W30-V/39 für jede der Speicheradressenstellen 30-39 von gleicher
Art. Bezüglich der Vorrichtung für das Wort W30 ist zu erkennen, daß 16 äußere Schalter S0-S15 vorhanden sind, deren
bewegbare Schleifkontakte über ein normalerweise geschlossenes 16-Bit-Gatter 310 mit den zugehörigen Speicheradressen-Ausgabeleitungen
MOC- M015 verbunden sind. Wenn sich ein sol-
109815/0600
eher Schalter in seinem normalen Zustand befindet, d.h. gemäß
Fig. 12 im Abschaltzustand, stellt er eine Verbindung zur iiasse her, so daß er ein binäres O-Signal liefert. Yird
einer dieser Schalter betätigt, stelle er eine Verbindung zu
einer Quelle für eine Spannung von +5 V her, so daß er ein binäres 1-Signal liefert. Das so gebildete, aus "Julien und
Rinsen bestehende "V/ort" wird den Ausgabeleitungen MOO-M015
zugeführt, wenn die Adresse 30 decodiert wird, und wenn die Adressendecodierschaltungen 311 ein Lesesignal FIEM empfangen.
Diese Signale werden dann über das Gatter Grar der Schiene 10
zugeführt, und sie können gemäß Fig. 2a und 2b einem der Register 102 und 202 eingegeben werden.
Die Schnelligkeit, mit der die Schalter für einige oder sämtliche Wörter 30-39 abgefühlt werden können, z.B. durch eine
geeignete Programmierung in Abständen von 20 ms, hat die gleiche V/irkung wie ein kontinuierliches Abfühlen der Schalterzustände.
natürlich können die Zustände dieser Schalter nicht durch der Schiene 10 entnommene Schreibsignale verändert
werden, denn ihr Öffnungs- oder Schließzustand richtet sich ausschließlich nach äußeren Bedingungen. Natürlich kann man
das erfindungsgeraäße Speichersystem mit 160 Schaltern in einem
erheblichen Ausmaß erweitern, indem man eine noch größere Anzahl von Speicherwürtern vorsieht, deren Aufbau der vorstehenden
Beschreibung bezüglich des Wortes V/30 entspricht.
Die äußere Hardware für jede der Speicherstellen W40-W49 nach
Fig. 12 ist in wesentlichen die gleiche. Der Aufbau des Wortes W40 gilt somit für alle diese 7/örter. Gemäß Fig. 12 werden
die Bitstellen des Wortes W40 durch 16 Kippschaltungen FF0 bis
FF1^ vom D-Typ gebildet. Die 16 Speichereingabeleitungen 302
sind jeweils mit den D-Eingängen dieser Kippschaltungen verbunden, während die Takt- oder Triggerimpulseingänge sämtlich
an eine Becodiererausgabeleitung mit der Bezeichnung 40.BTM1
angeschlossen sind, Wird das Wort 40 durch Signale aus der
809815/0600
Schiene 11 adressiert, und trifft ein i.'-chreibsignal BTM1
ein, wird iede der 16 Kippschaltungen in den Zustand (gesetzc
oder rückgesetzt) gebracht, der den binären .'Ügnal in der
entsprechenden Speichereingabeleitung entspricht. Beim gesetzten Zustand erzeugt jede Kippschaltung ein binäres 1-Signal,
während sie beim rückgesetzten Zustand ein binäres O-Signal
erzeugt. Diese Signale v/erden, wie weiter mr^en erläutert,
äußeren Vorrichtungen über Ausgabeklemmen 40/0 bis 40/15 zugeführt. Jedoch werden diese Signale auch den zugehörigen
Eingängen einer 16-Bit-Gatteranordnung 315 zugeführt, deren
Ausgänge mit den Speiche rausgabeleitunrjen verbunden sind. Die Gatteranordnung 315 ist normalerweise gesperrt, doch wenn
die Decodierschaltungen 311 über die Schiene 11 Signale empfangen,
welche die Adresse 40 bezeichnen, sowie ein Lesesignal II3I-I, werden die Gatter 315 durch ein >ignal 40-MEM freigegeben,
so daß die entsprechenden binären Signale zu den Speicherausgabeleitungen 301 übertragen werden, von denen
aus sie zu der Systemschiene 10 gelangen. Somit können die 16 Kippschaltungen, aus denen das Speicherwort W4O aufgebaut
ist, nicht nur durch Signale gesetzt oder rückgesetzt und in bestimmte Zustände gebracht werden, die über die Systemschiene
zugeführt werden, sondern sie können auch Signale liefern, die der Systemschiene zugeführt v/erden und zugehörige Zustände
anzeigen, von denen bei der Verarbeitung nach der Booleschen Logik Gebrauch gemacht wird.
Um zu veranschaulichen, auf welche Weise verschiedene äußere Vorrichtungen entsprechend dem Zustand der im Speicherwort
40 gespeicherten Bitsignale gesteuert werden können, zeigt Fig. 12, daß der Q-Ausgang 40/15 der Kippschaltung FF15 an
einen Treiberverstärker angeschlossen ist, um den Elektromagneten eines ein- und abschaltbaren Magnetventils 320 zu erregen,
wenn die Kippschaltung gesetzt bzw. rückgesetzt wird. Auf ähnliche Weise ist die Ausgangsleitung 40/14 an einen
Treiberverstärker angeschlossen, mittels dessen ein Motor M
10981 5/0600
entsprechend dew Zustand der Kippschaltung P1F1- ein- bzw.
abgeschaltet wird, weiterhin ist die Ausgangsleitung ΛΟ/1
mit einem Treiberverstärker verbunden, so daß eine Signallampe 321 ein- bzw. ausgeschaltet wird, wenn die Kippschaltung
FF1 gesetzt oder rückgesetzt wird. Als letztes Beispiel
sei erwähnt, daß die /1V us gangs leitung 40/0 der Kipnschaltung
FFq Jber einen Treiberverstärker dazu dient, eine Warneinrichtung
322, z.B. eine Sirene oder Glocke, zu betätigen.
Für das eigentliche Rechensystem spielt es keine Rolle, daß einige Wörter innerhalb des Systemspeichers 300 auf bekannte
V/eise durch Magnetkerne gebildet werden, während andere Wörter durch Schalter gebildet werden, und daß weitere Wörter
durch Kippschaltungen gebildet werden, die zum Ein- oder Ausschalten äußerer Vorrichtungen dienen. Jedoch kann das Rechnersystem
aui eine im folgenden näher erläuterte Weise Signale verarbeiten, welche die Zustände äußerer Schalter bezeichnen,
z.B. der das Wort W3O bildenden Schalter; es kann die Zustände von Kippschaltungen fühlen, z.B. derjenigen, die das Wort W4O
bilden, und damit auch die Zustände der durch sie gesteuerten Vorrichtungen; schließlich kann das System nach Bedarf den
Zustand jeder dieser Kippschaltungen verändern, um eine zugehörige
elektrische Vorrichtung ein- oder auszuschalten, und zwar dadurch, daß eine 1 oder eine O einer bestimmten Bitstelle
eines Wortes, z.B. an der Adresse 40, eingegeben wird.
7. Einzelheiten der direkten Decodierung
Die Direktdecodierschaltung 209 nach Fig. 2a ist in Fig. 4 mit weiteren Einzelheiten dargestellt. Diese Schaltung hat
die Aufgabe, dem logischen Prozessor 401 codierte Operationssignale LO, L1, L2, i12, ii4 und COMP zuzuführen und erforderlichenfalls
die Signale GETOP und COND zu liefern. Die Schaltung erkennt, ob ein Befehlswort im Befehlsadressenregister
eine Grundoperation oder eine spezielle logische Operation
80 9 815/0600
anfordert; im letzteren FnIl veranlaßt sie, daß ein .'5ign.nl
BADDR, das normalerweise den Wert 1 hat, wieder den Wert 0
annimmt, um hierdurch die Gatter 20ό zu veranlassen, die Bitsignale zu maskieren, die über die Leitungen i6 bis i9
dein Eingang OA des Ilultiplexgatters 205 zugeführt werden.
Gemäß Fig. 4 erzeugen UKD-Schaltungen 240 und 241 sowie eine
HOR-Schaltung 242 das Signal JADDR aus über die Leitungen H5,
ii4, i13, i'2 und i11 zugeführten ßingangssignalen. Aus dem
im Teil c der Tabelle II dargestellten Befehlscodesatz ist ersichtlich,
daß dann, v/enn der Befehl im Register 20*. eine oitmanipulation
verlangt (.SV, IV, ST oder Ro), das Signal in
der Leitung i15 die ! 10 R-'"c hai tun ^ 242 veranlaßt, den Signal
BADDR den \'ert O zu geben. V/enn durch den Befehl eine logische
Verarbeitung ( LD, Ah", OR, XR) verlangt wird, machen die
Signale aun den Leitungen ii4 und i11 das Aus gangs Signa"', der
UUD-Schaltung 240 zu einer 1, so daß das Signal BADDR den Wert
O annimmt. Handelt es sich um den Befehl IF, erzeugt die UND-Schaltung 241 das Aus gangs signal 1 , so daß das Signal
BADDR den Wert O annimmt. Bei jedem anderen dieser neun speziellen
Befehle, die Bitidentifizierungsinformationen aus den
Leitungen i6 bis i9 enthalten, ninmt d?s Signal BADDR don
17ert 1 an, und die Gatter 206 werden so beeinflußt, daß aus
den Leitungen iO bis i9 eine volle Wortadresse zum Eingang
OA des Ilultiplexgatters 205 übertragen wird.
Im Teil d der Tabelle II sind die Werte angegeben, die in den Operationscodeleitungen LO, L1, L2, i12, ii4 für jeden
der logischen Prozeßbefehle LD, AU, OR, XR und die Bitmanipulationsbefehle
SV, IV, ST und RS erscheinen. Bei näherer Betrachtung erkennt man, daß die UND-Schaltungen 243, 244, 245
und 246 gemäß Fig. 4 zusammen mit den ODER-Schaltungen 247 und 248 die Operationscodesignale LO, L1, L2 erzeugen, wobei
Signale über die Leitungen i12 und ii4 unmittelbar weitergeleitet
werden. Wie aus dem folgenden ersichtlich, haben die Signale LO, L1 und L2 keine Wirkung auf die ersten neun Be-
809815/0600
fehle nach der Tabelle II, und daher bleiben die diese Signale
darstellenden Felder in den ersten neun Zeilen der Tabelle II leer.
Wie erwähnt, bedingt ,jeder Befehl, der an der Bitstelle b11
eine 1 enthält, so daß in der Leitung 111 das Signal 1 erscheint,
daß ein Operand aus dem Speicher verwendet wird. Somit
zeigt Fig. h, dan das Signal GETOP einfach das gleiche
Signal ist wie das 'Jignal aus der Leitung 111.
Bezüglich der Befehle LD, Ali, OR, XR und IF nach der Tabelle
II gibt das '^i^nal in der Leitung 110 an, daß das gewählte
üit in seiner wahren Form oder seiner Komplementfona (T/C)
verarbeitet werden soll. Bei allen übrigen Befehlen bedeutet dieses Signal, daß die Funktion unbedingt auszuführen ist,
e.h. wenn dan ^it in der Leitung b10 eine 0 ist,bzw. bedingt,
d.h. wenn das Signal in der Leitung b10 eine 1 ist, jedoch nur dann, wenn das logische Antwortsignal LA dann den Wert
1 hat. Dies bedingt, daß ein Signal COMP nur dann erzeugt wird, wenn das Signal der Leitung i10 bei einem Befehl LD, AN, OR
oder XR den 'Vert 1 hat, und daß ein Signal COND nur dann erzeugt
wird, wenn das Signal in der Leitung i10 bei irgendeinem anderen Befehl den Wert 1 hat. Gemäß Fig. 4 dienen die
UND-Schaltungen 249, 250, 251 und 252 sowie die ODER-Schaltung
253 diesem Zweck. Betrachtet man die Befehlscodesä-tze in der
Tabelle II, erkennt man, daß das Ausgangssignal der UND-Schaltung
250 einer 1 entspricht, wenn sich irgendeiner der Befehle LD, All, OR, XR oder IF im Register 202 befindet. Aus den vier
ersten Befehlen ergibt sich ii4 = 111 = i15 = 1; aus dem Befehl
IF ergibt sich 113 = 112 = 111 = TT5 = 1. In .jedem Fall
ist dann, wenn in der Leitung i10 das Signal 1 erscheint, das Signal COIIP eine 1. Wenn jedoch das Aus gangs signal der UND-Schaltung
250 eine O ist, da ein anderer Befehl vorhanden ist, als die fünf vorstehend genannten, und wenn in der Leitung HO
das Signal 1 ansteht, bewirkt die UND-Schaltung 251, daß das Signal COIID den Wert 1 erhält.
809815/0600
ORIGINAL !NSPECTPD C
27A3Ü60
"-·
Einzelheiten des Phasenseguenzgenerators unr1 des Kaupttakigebers
Zur Steuerung der aijfeinanderf olgenden elementaren Operationen
des Re clone rs ystem v/eist gemäß Fig. 2a und 5 der Haupttaktgeber
214 einen auf bekannte Weise ausgebildeten kristallf-esteuerten
Taktimpulsoszillator 260 auf, der mit einer vorbestimmten Frequenz
von z.B. 2,0 ITIIz arbeitet. Dieser Oszillator treibt einen nonostabilen Multivibrator 261 zum Erzeugen von Zeitimpulsen
CLK und CLK, die z.B. eine Breite von 100 ns und Abstände von 500 ns haben. Diese Zeitsteuersignale sind in
Fig. 6 und 7 bei 262 und 263 dargestellt. Das regnal CLK dient
zun Steuern der verschiedenen Gatter und zun Voreinstellen
verschiedener Register in allen Teilen des Systems, v/ie es
nachstehend erläutert ist.
Der Phasensequenzgenerator 212 nach Fig. 2a steuert die elementaren
Operationen, die durchgeführt werden, nachdem ,jeweils einer der aufeinanderfolgenden Befehle in das Befehlsregister
202 überführt werden ist. Bei denjenigen Befehlen, bei welcher,
es erforderlich ist, ein Operandenwort abzurufen und zu verwenden, mißt der Phasensequenzgenerator 212 drei elementare
Zeitintervalle ab, die im folgenden als Phase 0, Fhase 2 und Phase 3 bezeichnet werden. Während der Phase 0 wird das nächste
Befehlswort eines Software-Programms aus einer Speicheradresse abgerufen, durch den Programmzähler 226 gesteuert und dem Befehlsadressenregister
202 eingegeben; während der Phase 2 wird der benötigte Operand der Speicheradresse, die durch das aktive
Befehlswort benannt wird, entnommen und dem arithmetischen Eingaberegister 102 zugeführt; während der Phase 3 werden die befohlenen
Operationen ausgeführt.
Im Gegensatz hierzu ist es bei manchen Befehlen nicht erforderlich,
einen Operanden aus dem Speicher in das arithmetische Eingaberegister 102 zu überführen. In diesen Fällen dient der
Phasensequenzgenerator lediglich dazu, ein Phasenintervall 0 abzumessen, auf das ein Phasenintervall 3 folgt, so daß ein
Phasenintervall 2 ausgelassen wird.
80981 5/0600
2 7 A 3 G G O
Geraü' Fig. ? kann der .''equenzgenerator 212 als Dreizustands-Töhler
ausgebildet sein, zu dem drei Kippschaltunken 265,
und 267 von D-Typ gehören, »olche Kippschaltungen sind bekannt,
und es sei hier angenommen, daß jede dieser Kippschaltungen
in einen iJchaltzustand gebracht wird, der den Pegel
des Signals entspricht, das ihrem Eingang D in dem Augenblick
zugeführt wird, in welchem ein positiv gerichteter üpannungsijberganp;
den zugehörigen Tnktimpulseingang CP zugeführt wird. Gemäß Fig. ? werden jeder der drei Kippschaltungen Taktimpulse
CLK über ihre Takteingänge CP zugeführt, während über den Eingang D bzw. die Jtexierklemme ein Signal zugeführt v.'ird, um
das ^etr.en oder Rücksetzen der schaltung entsprechend dem
Vorhandensein anderer Signale zu steuern.
Nimmt man zunächst an, daß das Signal GETOP aus dem Direktdecodierer
209 nach Fig. 4 ansteht, daß die Kippschaltung anfänglich gesetzt ist, und daß die Kippschaltungen 266 und
267 beide zurückgesetzt sind, ist ersichtlich, daß das Ausgangssignal PIIO den Wert 1 hat, während die Signale PH2 und
PH3 den Wert 0 haben. Wenn gemäß Fig. 6 die Hinterflanke des nächsten Taktimpulses ÜLT im Zeitpunkt t2 eintrifft, betätigt
eine Uiiü-Schaltung 270 die Kippschaltung 266 durch Zuführen
eines 1-Signals zu ihrem Eingang D, da die Signale GETOP und PHO beide den Wert 1 haben. Somit wird im Zeitpunkt t2, wenn
der positiv gerichtete libergang des Impulses CLK erscheint,
die Kippschaltung 265 rückgesetzt, während die Kippschaltung
266 gesetzt wird. Das Ausgangssignal PH2 hat jetzt den Wert 1
zv/ischen den Zeitpunkten t2 und t3, wie es in Fig. 6 gezeigt ist. Bei diesem letzteren Zustand, d.h. der Phase 2, durchläuft
das Signal PH2 eine ODER-Schaltung 271, um die Kippschaltung
267 zu betätigen, während das Eingangssignal am Eingang D der Kippschaltung 266 den ¥ert 0 hat. Wenn dann der nächste
Impuls CTE gemäß Fig. 6 im Zeitpunkt t4 endet, wird die Kippschaltung
266 zurückgesetzt, doch wird die Kippschaltung 267 gesetzt. Hierdurch wird erreicht, daß das Ausgangesignal PH3
809815/0600
Tl
den V/ert 1 beibehält. Ferner wird ein qualifizierendes 1-.'Ji^-
nal dem Eingang D der Kippschaltung 265 zugeführt, und das
dem Eingang D der Kippschaltung 267 zugeführte 'irnal wird
beseitigt. Daher wird bei dem nächsten Impuls CLk die Kippschaltung·
26? zurückgesetzt, während die Kippscnaltun/.; 265
gesetzt wird, so dai3 das oignal PIIO jetzt den V/ert 1 beibehält.
Diese Folge der drei Zustände P;iO, Κί2 und r,.'3 setzt
sich auf unbestimmte Zeit fort, solange das Signal GjS'i'OI- den
Wert 1 beibeiiält.
Hat c*as "-ignal GHTOP dagegen den \/ert 0, was imner dann geschieht,
wenn im ^efe ilsregister 202 ein "Gefehl vorhanden ir,τ.,
bei dem ni<~ht die Verwendung eines Operanden aus de*.. Jpeiclier
erforderlich ist, wird ger>:ii3 7Sir. 5 das Gatter 270 gesperrt,
doc:i führt ein Inverter 272 ein .'■'igr.al ÜTToT mit. dem 1:ert 1
dei.i eingang einer v/eiteren UI j D-. ic haltung 273 zu, die ein 1-Ausgangssignal
erzeugen knnn, v/enn ihr zusätzlich das Jignal VjiO
zugeführt v/ird. iiat das :Jignal ΟΪΊΊΌΡ den Vfert 0 und das Signal
G^TOP den V/ert 1, kann somit, angenommen werden, ctaf] sie ■ der
Sequenzgenerator 212 anfänglich in einen Zustand befindet, bei dem die Kippschaltung 2ύ5 gesetzt is;. vmd die r.ip^schnl tungen
266 und 267 zurückgesetzt sind, .letzt wird das Gi-pial PIlO
über das Gatter 27° und d?e ODPlR-;Jchaltung 271 weitergeleitet,
um die Kippschaltung 267 zu betätigen, so daß dann, wenn gemäß Fig. 7 im Zeitpunkt t2 die nächste Hinterflanke eines Impulses
CLk erscheint, die Kippschaltung 265 zurückgesetzt, jedoch
die Kippschaltung 267 gesetzt vird. Comit verschwindet das Signal PHO, während das oignal PH3 erscheint. Unter diesen
Umständen wird die Kippschaltung 26? durch das ihrem ßingang
D zugeführte oignal ΡΠ3 betätigt, doch wird die Kippschaltung
26? gesperrt, d.h. an ihrem Eingang D erscheint ein O-Signal.
Sobald der nächste Impuls CLK eintrifft, wird die Kippschaltung 267 zurückgesetzt, während die Kippschaltung 265 gesetzt
wird. Wie durch die Wellenformen PHO, PH2 und PII3 in Fig. 7 dargestellt, erscheinen bei dieser Betriebsweise die Signale
809815/0600
BAD ORIGINAL
PIIO und rii? abwechselnd in Abi.nrigi,;kei 'c von aufeinanderfolgenden
Takti"inulsen, v:,:ihrenc. das signal PK2 einfach au;C dem
Pegel O verblPiht.
V.'ird oin netVnI decodiert, urn sin Signal GETOP ^u erzeugen,
erzeugt somit der Phasensequenzgenerator in Abhängigkeit von
aufeinanderfolgenden Taktimnulsen eine Folge von Signalen PHO,
VA?. und Pt-13: wird dagegen ein i^efehl decodiert, bei dem die
Verwendung eines Operanden nicht erforderlich ist, und steht das "ignal ^lAuP nicht an, erzeugt der Phasensequenzgenerator
lediglich eine Folge von Signalen PHO und PH3 in Abhängigkeit
von den nacheinander einoreffenden Taktiraptilsen. Jede Phase
hat z.Z, eine Lange von 1 wikrosekunde, und der Impuls CLK,
der kurz vor dem !vn^e ,jeder Phase erscheint, kann eine breite
von ?00 ns haben.
Um zu gewährleisten, daß der Phasensequenzgenerator nach Fig.5
stets im richtigen Zustand anläuft, v;enn das Re c I ,ne rs ystem in
Betrieb gesetzt v/ird, wird beim Einschalten des Rechners mittels
einer nicht dargestellten Einrichtung ein Einschaltimpuls DV/R£>
erzeugt. Gemäß Fig. 5 wird dieser Impuls dem Setzeingang Πι der KIpDSchaltung 265 und den Löscheingängen CL der Kippschaltungen
266 xmd 267 zugeführt. Beim Einschalten des Rechnersystems
wird somit zunächst der Phasensequenzgenerator 212 in einen Zustand entsprechend der Phase 0 gebracht, bei
dem das Signal PHO den Wert 1 hat und die Signale PH2 und PH3 den Wert 0 haben.
9. Einzelheiten des Kartenaufstellungs-Festwertspeichers und
der EingangsSignaIe für den Mikroprogramm-Festwertspeicher
Bei dem Festwertspeicher 210 nach Fig. 2a handelt es sich um einen Codewandler bekannter Art. Zwar kann es bei dem hier
als Beispiel beschriebenen sehr einfachen System unnötig sein, einen Kartenbildungs-Festwertspeicher zu verwenden, doch wird
809815/0600
BAD ORIGINAL
274 30B0
bei voll ausgebauter Systemen für die Praxis, bei denen mit
einer großen Anzahl von möglichen Befehlen gearbeitet wird, gewöhnlich ein Festwertspeicher mit e.mem Adressenzähler und
einer Additionseinrichtung verwendet. Im vorliegenden Fall sei
lediglich bemerkt, daß den Festwertspeicher 210 Befehle darstellende
Signale über die Leitungen 111 bis ii5 aus dem Register
202 zugeführt werden, und daß er dann, wenn er gemäß Fig. 8 durch ein Signal PII3 freigegeben wird, seinen Ausgabeleitungen
einen bestimmten entsprechenden 4-Bit-Code zuführt. In diesen vier Ausgabeleitungen steht normalerweise dns Signal
0 an, wenn das Freigabesignal PK3 nicht vorhanden ist. Da der
Festwertspeicher 200 auf bekannte Weise durc'-i "T?in.jrennen"
von Ilatrixverbindungen hergestellt wird, läßt sich sein Aufbau am besten anhand der Tabelle V beschreiben, in der die letzten
11 Zeilen die Kombinationen von Singangssignalen in den
Leitungen i11 bis i15 darstellen, mitteln welcher verschiedene
Kombinationen von codierten Ausgangssignalen für die Leitungen Xa, Xb, Xc und Xd erzeugt werden. Jeder der logischen Prozeßbefehle
zum Bestimmen der Signale LA, d.h. der Signale
LD, AN, OR und XR nach der Tabelle IT, die ein 1-Signal in den Leitungen 111 und ii4 erscheinen lassen, veranlaßt den
Festwertspeicher 200, einen gemeinsamen Ausgangscode 1100 zu erzeugen; entsprechend wird jeder der Bitraanipulationsbefehle
SV, IV, ST und RS, die gemäß der Tabelle II 1-Signale in den
Leitungen i11 und H5 erscheinen lassen, durch den Festwertspeicher
so decodiert, daß in den Leitungen Xa bis Xd ein gemeinsamer Ausgangscode 1101 erscheint.
Gemäß Fig. 8 führt der Phasensequenzgenerator 212 die Signale PHO und PH2 über ODER-Schaltungen 275 und 276 direkt den Leitungen
Xa und Xb zu. Wenn gemäß der Tabelle V Signale für die Phase 0 und die Phase 2 vorhanden sind, wird ein 4-Bit-Code
0001 oder 0010 als Eingangssignal dem Mikroprogramm-Festwertspeicher
220 zugeführt, um einen "Abruf" oder das "Herausziehen eines Operanden" zu bewirken. Während jeder nachfolgenden Phase
809815/0600
3 wird das λingangnsignal für den Mikroprogramm-Festwertspeicher
220 dann durch den Festwertspeicher 200 bestimmt; dieses Kingangssignal für den Mikroprogramm-Festwertspeicher,
das in den Leitungen Xa, Xb, Xc und Xd erscheint, ist im Teil e der Tabelle II dargestellt.
10. Einzelheiten des Hikroprogrammier-Festwertspeichers
Fig. 9 zeigt weitere Einzelheiten des Mikroprogramm-Festwertspeichers
220 nach Fig. 2b. Der Aufbau eines solchen Speicher ist jedem Fachmann geläufig; hierbei werden Verbindungen in
einer Matrix dauerhaft gespeichert. Daher ist nur zu bemerken, daß dem Speicher 220 verschiedene codierte Eingangssignale
über die Leitungen Xa, Xb, Xc und Xd zugeführt werden, und daß der Speicher bestimmte entsprechende Kombinationen
von Signalen in den 15 Ausgäbeleitungen IH bis M15 erscheinen
läßt. Gemäß Fig. 9 sind diese Ausgabeleitungen in verschiedene Felder unterteilt. Allgemein gesprochen bilden die Leitungen
H1A und M15 ein Adressenfeld, das durch den Code von
in ihnen erscheinenden Signalen die Quelle bezeichnet, aus der Signale der Speicheradressenschiene 11 zugeführt werden
sollen. Die Leitungen M11, M12 und H13 bilden ein Schienenfeld,
das mittels einer Kombination von darin erscheinenden Signalen jeweils ein beliebiges von acht möglichen speziellen Signalen
repräsentieren kann, welche die Quelle bezeichnen, von der aus Signale der Systemschiene zugeführt werden sollen.
Entsprechend bilden die Leitungen 118, M9 und M10 ein ALU-Feld,
und die codierte Kombination der darin erscheinenden Signale bezeichnet jeweils einen von mehreren möglichen Operationsbefehlen,
welcher der Einheit ALU zugeführt werden soll, um sie bei verschiedenen Befehlen zu steuern. Die Leitungen M5, M6
und M7 bilden das "Speicherfeld11 und die Kombination der darin erscheinenden Signale repräsentiert das betreffende Register
bzw. die Einheit, in der die dann in der Systemschiene erschei-
809815/0600
. J\ 27A3Ü60
nenden Signale gespeichert v/erden sollen, nie Loitun;;en I-;2, H
und HA bilden ein Feld für "Verschiedenes" und die Kombination
der darin erscheinenden '.Signale kann bewirken, daß eine von
mehreren verschiedenen Operationen durchgeführt wird. Schließlich
bildet die Ausgäbeleitung M1 ein ^inzelleitungsfeld/der
Bezeichnung IPC; dieser Leitung wird ein 1-Signal immer dann zugeführt, wenn der Programrazähler weitergeschaltet werden
soll.
Gemäß Fig. 2b und 9 werden die Ausgangssignale des Mikroprogramm-Festwertspeichers
von den Feldern ADDR, JUS, ALU, STORE
und HISC Felddecodierern 230 bis 2 Λ zugeführt. Bei jedem dieser
Decodierer handelt es sich einfach um eine Ilatrix bekannter
Art mit mehreren '"ingö.n^en und einem einzigen Ausgang;
ihr Aufbau und ihre Wirkungsweise dürfte jedem Fachmann geläufig
sein. Lei den Decodierern 2Π3 und 284 handelt es sich
dagegen um gesteuerte Decodierer, die in einer ihrer Ausgangsleitungen nur dar.n ein Cignal erscheinen lassen, v/enn sio über
einen Freigabeeingang 2;J3a bzw. 2T;4a durch ein 1-Signal freigegeben
werden. Die Tabelle III veranschaulicht sowohl den Aufbau des Mikroprogramm-Festwertspeichers 220 als auch die
Aus gangs signale, die in den Leitungen I-I1 bis H"! 5 bei den verschiedenen
möglichen Befehls codes erscheinen, mitteln welcher verschiedene codierte Cingangssignale in den Leitungen Xa bis
Xd erzeugt werden. In der Tabelle III bezeichnen die leeren Felder die Tatsache, daß in den Iiikroprogramn-Ausgabeleixungen
hüllen erscheinen. Die Tabelle VII gibt die 1/ertetabellen für
die Decodierer 2CO bis 2ΓΛ wieder und veranschaulicht das einzelne
Ausgangssignal, das in einer der Aungabeleitungen ,jedes
üecodierers bei verschiedenen Kombinationen von EingangsSignalen
erscheint, die den Decodierern über ihre Eingabeleitungen zugeführt werden. Für den Fachmann geben somit die Tabellen
III und VII ein vollständiges Bild des Aufbaus und der Wirkungsweise des Mikroprogramm-Festwertspeichers 220.
809815/0600
■\us der /'.ei]e 1 der Tabelle III \^t ersichtlich, daß während
eines Abrufvornanrs, der durch den Code 0001 als Eingangssignal
für den lakroprograram-Fes twertspeicner repräsentiert
wird, der Adressenfelddecodierer 230 ein Ausgangssignal PC
erzeugt, das angibt, da.3 die der .schiene 11 zuzuführende
Adresse dem Programmzähl er 226 zu entnehmen ist. Es sei bemerkt,
daß dieses Signal das Ilultiplexgatter 205 nach Fig. 2b
freigibt, so daß das Zählerausganfc;5signal PA zv der Adressenschiene
11 weitergeleitet v/ird. Bei den Operationen GETOP, JUiIP und der üitrnanipulation bewirkt die Kombination von Eingangssignalen,
die den Mikroprogramm-Festwertspeicher 220 zugeführt werden, dafS der Adressenfeld-Decodierer 280 ein
Aus gangs signal Kk abgibt, urn das Multiplexgatter 205 freizugeben,
damit es sein Eingangssignal OA (aus den Leitungen iO
bis iy, jedoch unter Ausschluß der Leitungen i6 bis i9, wenn ias Gatter 206 gesperrt ist) zu der Schiene 11 weiterleitet.
iomit v/ird die Adressenstelle durch den Adressenteil eines Befehlswortes
bestimmt, das sich dann im Befehlsadressenregister 202 befindet.
Ss dürfte zweckmäßig sein, die Bedeutungen der verwendeten Kurzzeichen anzugeben, mit denen die Ausgangssignale der verschiedenen
necodierer nach Fig. 2b und 9 bezeichnet v/erden. Bei dem Schienenfeld bedeutet ADTR, daß die Adressenschienensignale
der Schiene zugeführt werden sollen; HEH bedeutet, daß das Ausgang-signal des Speichers der Schiene zugeführt
werden soll; ATB bedeutet, daß das Ausgangssignal des Akkumulators
der Scniene zugeführt werden soll; EOR bedeutet, daß das Ausgangssignal AUS' der 16-liit-Exklusiv-ODER-Anordnung
der Schiene zugeführt werden soll. Es sei bemerkt, daß das Signal ADTR das Gatter Gad steuert, daß das Signal MEM das
Lesen des Speichers steuert und außerdem das Gatter Gmr steuert, daß das Signal ATB das Gatter Gatb steuert, und daß das Signal
EDR das Gatter Gr steuert.
80981 5/0600
BAD ORIGINAL
27Λ3060
In dem ALU-Feld geben die Befelilsnignale A und L an, daß die
arithmetische logische Einheit ALU so konditioniert werden soll, daß sie lediglich ihre Eingangssignale bei A oder B an
ihre Ausgabeleitungen bei F abgibt. Im Gegensatz hierzu gibt das ALU-Befehlssignal B" an, daß die Einheit ALU ihre Eingangssignale in der komplementierten Form über ihren Ausgang F
abgeben soll. Diese Befehlssignale, die hier mit A + L
bzw. A-B bezeichnet sind, konditionieren die Einheit ALU derart, daß ihr Ausgangssignal F gleich der Summe bzw. der
Differenz der numerischen binären Signale A und L wird, die ihren beiden Eingängen zugeführt werden. Diese Signale des
ALU-Decodierers 282 werden gemäß Fig. 2a direkt den entsprechend bezeichneten Befehlseingängen der Einheit ALU zugeführt.
Bei dem Speicherfeld STORE geben die Signale IAR und AIR an,
daß dann in der Schiene erscheinende Signale im Befehlsadressenregister 202 bzw. im arithmetischen Eingaberegister 102
gespeichert werden sollen. Sie werden UND-Schaltungen 203
und 101 zugeführt. Das Signal ACC gibt an, daß das Ausgangssignal F der Einheit ALU im Akkumulator 104 gespeichert werden
soll; dieses Signal wird gemäß Fig. 2a einer UND-Schaltung 103 zugeführt. Das Signal ΒΪΗ nach Fig. 9 gibt an, daß die
dann in der Schiene erscheinenden Signale im Hauptsystemspeicher gespeichert werden sollen; dieses Signal wird einer UND-Schaltung
303 zugeführt, die das Schreibsignal BTM1 erzeugt, wenn ein Taktimpuls CLK auftritt. Das Signal PPC gibt an, daß
die dann in der Schiene auftretenden Signale von dem Programmzähler
226 aufgenommen werden sollen; dieses Signal wird der UlJD-Schaltung 231 zugeführt, die dann das Signal PPC erzeugt,
um eine Voreinstellung des Zählers auf eine Zahl zu bewirken, die durch die dann in der Schiene anstehenden Signale repräsentiert
wird. Das Signal LAS gibt an, daß das Ergebnis einer logischen Verarbeitungsoperation in einer logischen Akkumulator-Kippschaltung
gespeichert werden soll, die weiter unten anhand von Fig. 10 beschrieben wird.
•09815/0600
2743U60
Bei den Feld "Verschiedenes" bewirkt das Signal CLR dann,
wenn es erscheint, daO der Akkumulator 104 nach Fig. ?a gelöscht
v/erden soll, bzw. daß seine Bits alle auf O gesetzt werden sollen. Das Signal BTLOG gibt an, daß der logische
Prozessor für einen üitnanlpulationsvorgang konditioniert
werden soll; dieses Signal erscheint in Abhängigkeit von jeweils einem der Befehle SV, IV,ST und RS. Die Signale SACR
und SACL werden direkt dem .Akkumulator 104 zugeführt und bewirken,
daß der dann vorhandene Inhalt des Akkumulators um eine Stelle nach rechts oder links verschoben wird. Das Signal
IPCLB gibt an, daß der Programmzähler v/eitergeschaltet werden soll, wenn das gewählte logische Bitsignal dann einem
bestimmten von zwei möglichen Zuständen entspricht; dieses Signal dient auf noch zu erläuternde Weise zur Ausführung
eines Befehls IF.
Zusammenfassend sei bemerkt, daß der Mikroprogramm-Festwertspeicher
220 mit den zugehörigen Decodieren! 280 bis 284 cod.ierve
Befehlssignale während der betreffenden Phase über die Eingänge Xa bis Xd aufnimmt. In Abhängigkeit davon
empfängt jeweils nur eine jeder Felddecodierer-Ausgabeleitungen ein 1-Signal, doch reagiert bei zahlreichen Operationen
ein bestimmter Felddecodierer überhaupt nicht. Von den Mikroprogramm-Felddecodierern aus werden diese Steuersignale
zu verschiedenen Punkten dee Systems weitergeleitet, um die Zuführung von Signalen zu der Speicheradressenschiene
und der Systemschiene 10 zu steuern; außerdem werden sie der Einheit ALU zugeleitet, um die durch sie auszuführende Funktion
zu bestimmen, und sie werden verschiedenen Registern oder Gattern zugeführt, um zu bestimmen, welchen der verschiedenen
Teile zur Speicherung Signale zugeführt werden, dte dann in der Systemschiene anstehen.
Es sei erneut bemerkt, daß das Ausgangssignal der Decodierer
283 (Speicherung) und 284 (Verschiedenes) zurückgehalten wird,
109815/0600
wenn diesen Decodieren^ nicht zur Freigabe ein 1-1I Ignal über
die Eingänge 203a und 284a zugeführt wird. Dieses Abschalten
aller Ausgangssignale der Decodierer 2G3 und 234 hat den
Zweck, die Ausführung arithmetischer Befehle abzubrechen, wenn es sich um bedingte Befehle handelt, und wenn die geforderte
Bedingung nicht erfüllt ist. Hierauf wird im folgenden näher
eingegangen. Zunächst möge es genügen, festzustellen, daß die Bedingungssteuereinrichtung 403 nach Fig. 2b ein Signal
K den Steuerein^ängen 2Q3n und 2^4a zuführt. Die Einrichtung
403 wird gemäß Fig. 9 durch eine ilAIiJD-Schaltunp; 20? nit den
drei eingängen COiJD, L"Ä" \χηύ PH3 gebildet. Das Ausgan/-ssignal
κ dieser Schaltung hat normalerweise den Pegel 1. Haben jedoch
alle drei Eingangs signale der Jchaltun«;; 2:19 gleichzeitig
den V.'ert 1, ke.irt das Ausgangs ignal K auf den ./ert 0 zurück,
und daher können die Decodierer 2>>3 und 234 keine Ausgangssignale
liefern.
Fig. 9 zeigt ferner die logische '15chaltung zum !Erzeugen eines
.Steuersignals TMPC, mittels dessen der Programmzähler v/eitergeschaltet
wird. Das ,-Iikroprogrymmsignal IPC durchläuft eine
ODclk-Schaltung 290, so daß das 3ignal IiIPC entsteht; jedoch
kann dieses letztere Signal auch durch eine UIID-Schaltung
291 erzeugt werden, wenn das 3ignal IPCLB und ein Signal ELb
für ein effektives logisches Bit jeweils den Wert 1 haben. Das Signal IIIPC wird einer üliD-ochaltung 227 zugeführt, die
gemäß Fig. 2b dem Programmzähler 226 zugeordnet is L. Wenn dieses Signal gleichzeitig mit einem Taktimpuls auftritt, ergibt
sich bei dem Ausgangesignal HjC ein negativ gerichteter
iJbergang an der llinterflanke des Taktinipulses, so daß der Zähler
226 um eine Einheit aufwärtszählt.
11. Einzelheiten des logischen Prozessors undder i^i tmanipulationsschaltung
Wie erwähnt, empfängt der logische Prozessor 401 ein Einzelbit-Eingangs
signal, das aus einem 16-Bit-Viort gewählt wird und den
109815/0600
BAD ORIGINAL
'Vert O eier 1 Kibe:ι kann. Ferner ennfüngt er von der Direktdeccciorschaloun^
209 nac.i Fig. 4 aus "Onerationsfunktionsslgnale"
L2, i,1, LO, CU:iP, i12 und i14. Der logische Prozessor
erzeugt /Hissen rs signnle ".1LU, LA, LT und r,C je nach der befohlenen
Funktion, um das .Jignal LA jeweils in der richtigen
■./eise zu modifizieren, wahrend die aufeinanderfolgenden Operationen
innerhalb einer Booleschen Kette von Schritten durchgeführt v/erden.
Zwar könnte m.n verschiedene spezielle Schaltungen verwenden,
doch zeigt Fig. 10 die Einzelheiten eines geeigneten logischen Prozessors 401. uiese Einzelheiten v/erden zunächst bezüglich
verketteter Operationen noch der Booleschen Logik behandelt, und danach v/ird auf die ^itnanipulation und die speicherung
eingeganzen.
Gemäß Fit;. 10 v/ird eine Kippschaltung 425 vom JK-Typ als logischer
r.inzelbitakkumulator verwendet. Dieser Akkumulator wurde wegen seiner nachstehond genannten -iigenschaften gewählt.
V/ird eine opannum; entsprechend einer binären 1 an den Eingang
J oder den Eingang K angelegt, wird die Kippschaltung gesetzt oder rückgesetzt, und zwar in Abhängigkeit von einem positiv
gerichteten l'pannungsübergang, der ihrem Takteingang CP zugeführt
wird; wenn keiner der Eingänge J oder K eine Spannung mit den Pegel 1 erhält, erfolgt keine Reaktion auf ein am Takteingang
CF erscheinendes Triggersignal; liegt jedoch eine Spannung mit dem Pegel 1 an beiden Eingängen J und K, wenn der
positiv gerichtete Tpannungsübergang am Takteingang CP erscheint,
stellt sich die Kippschaltung mn, d.h. sie geht aus ihrem gesetzten bzw. rückgesetzten Zustand in ihren rückgesetzten
bzw. ihren gesetzten Zustand über. Befindet sich die Kippschaltung
425 im gesetzten Zustand, läßt sie an ihren Ausgängen die oignale LA und LA" bzw. 1 und 0 erscheinen; beim rückgesetzten
Zustand nehmen die Ausgangssignale LA und TK die Werte
0 und 1 an.
809815/0600
BAD ORIGINAL
27A3060
Ih folgenden sei die Uirkungsweise für den ^a 11 betrachtet,
daß die logischen Funktionscodesignale L2, L1 und LO den l/ert
111 haben, was gemäß der Tabelle VI dem logischen Befehl LD (Akkumulator laden) entspricht. Ist das Eingangssignal LB eine
0 oder 1, und hat das '.Steuersignal COHP den V/ert 0, hat das
effektive logische Bitsignal ELB, das durch eine Exklusiv-ODER-Schaltung
426 erzeugt wird, den Wert O oder 1. Ist ELB gleich 0, hat das Ausgangssignol η der Ui iJ-oc haltung 428 den
Wert 0, doch ist das Ausgangssignal ο einer Exklusiv-ODER-Schaltung
429 gleich 1, da LO gleich 1 iso, so daß das Ausgangssignal
ρ der UiID-3chaltung 430 eine 1 wird und bewirkt,
daß LA auf 0 gebracht oder auf 0 belassen wird, wenn der Kippschaltung 425 ein Taktsignal zugeführt wird. Ist dagegen ELB
gleich 1, haben die signale ο und ρ den Wert 0, doch ist das
Signal η gleich 1, so daß das oignal LA zu einer 1 gemacht
oder auf diesem Pegel belassen wird, wenn der Kippschaltung 425 ein Taktsignal zugeführt wird. Wie in der ersten Zeile
der Tabelle VI angegeben, bewirkt somit ein Befehl LD, daß die Akkumulator-Kippschaltung 425 mit dem gewählte! Biteingangssignal
LB geladen wird, um das logische Antwortsignal LA in Übereinstimmung damit zu bringen.
Natürlich bewirkt die Exklusiv-ODER-Schaltung 426, daß ELB das Komplement von LB ist, jedoch nur dann, wenn das Signal
COMP den Wert 1 hat. Ist dies der Fall, kommt die Anordnung nach Fig. 10 so zur Wirkung, als ob das Eingangssignal LB
der Kehrwert seines tatsächlichen Wertes wäre.
Nunmehr sei angenommen, daß durch das logische Befehlswort im Register 202 das Signal AN verlangt wird, so daß der Code
für L2, L1 und LO die Form 1001 hat. Unter diesen Umständen soll das Signal LA auf den Pegel gebracht oder auf dem Pegel
gehalten werden, welcher der Antwort der logischen UND-Funktion LA = LA · LB entspricht. Befindet sich die Kippschaltung
425 schon im 1-Zustand, braucht LA nicht geändert zu werden,
809815/0600
BAD ORIGINAL
wenn LB den Wert 1 hat. Nur wenn LB gleich O ist, ist es
erforderlich, die Kippschaltung 425 durch einen Taktimpuls zurückzusetzen. Da die Signale bei LO und L2 beide gleich 1
sind, haben die Signale ο und ρ den Wert 1 oder 0, wenn ELB
gleich 1 bzw. gleich 0 ist. Somit wird die Kippschaltung 425 durch einen Taktimpuls zurückgesetzt oder zurückgesetzt belassen,
wenn ELB gleich O ist. Das Endergebnis besteht darin, daß der neue '.'fert von LA stets eine 1 oder 0 ist, wenn die
UIJD-Funktion LAQ· LB befriedigt oder nicht befriedigt wird,
wenn man annimmt, daß COMP den Wert O hat. Diese Selbstverständlichkeit
spiegelt sich in der zweiten Zeile der Tabelle VI für die verschiedenen Bedingungen wieder, die gegeben sein
können (LB gleich 1 oder 0 und COMP gleich 1 oder O).
Handelt es sich bei dem logischen Befehl um ein ODER, so daß gemäß der Tabelle VI der Code 010 für L2, L1 und LO gilt,
soll das Signal LA so festgehalten werden, daß es zu LAn wird,
wenn LAQ gleich 1 ist. Ist jedoch LAQ gleich 0, soll das Signal
nur dann auf 1 umgestellt werden, wenn ELB gleich 1 ist. Im letzteren Fall wird die UND-Schaltung 428 so qualifiziert,
daß das Signal η den Wert 1 erhält. In jedem Fall wird die UND-Schaltung 430 gesperrt, so daß sich die Kippschaltung 425
nicht zurücksetzen läßt. Wenn der ODER-Funktionscode eintrifft
und der Kippschaltung 425 ein Taktsignal zugeführt wird, bleibt somit LA auf dem Wert 1, wenn dieser Wert vorher vorhanden
war; jedoch wird LA von 0 auf 1 umgestellt, wenn das Signal ELB den Wert 1 hat. Hierdurch wird die logische ODER-Funktion
erfüllt, so daß LA = LA + LB, wie es in der dritten
Zeile der Tabelle VI angegeben ist.
Tritt der logische Befehl XOR auf, so daß gemäß der Tabelle VI für L2, L1 und LO der Code 110 gilt, soll das Signal LA in
eine 0 oder eine 1 verwandelt werden, wenn es vorher den Wert oder 0 hatte und das Eingangssignal ELB eine 1 ist. Hat das
Signal ELB den Wert 1, haben die Signale n, o' und ρ jeweils den
809815/0600
2VA3Ü60
Wert 1, so daß der bei CP zugeführte Taktimpuls die Kippschaltung
425 umstellt. Ist ELB gleich O, sind η und ρ beide gleich 0, und die Kippschaltung 425 spricht nicht auf ein
Taktsignal an. Immer dann, wenn der Befehl XOR empfangen und decodiert wird, so daß L2, L1 und LO den Wert 110 annehmen,
reagiert somit die Anordnung nach Fig. 10 auf einen Taktimpuls, um sicherzustellen, daß LA = LA. 0LB, wobei das Symbol (?)
die Exklusiv-ODER-Funktion bezeichnet.
Gemäß der Tabelle VI und der vorstehenden Beschreibung nimmt der logische Prozessor nach Fig. 10 ein einzelnes Eingangssignal
LB auf und verwandelt es in ein effektives logisches Bitsignal ELB, das mit LB identisch ist bzw. seine invertierte
Form hat, wenn das Signal COMP gleich 0 oder 1 ist. Diese Operation wird durch die Exklusiv-ODER-Schaltung 426
durchgeführt. In Abhängigkeit von dem Signal ELB erzeugt die Anordnung nach Fig. 10 ein neues logisches Antwortsignal LA
als Ergebnis der logischen Funktion, die durch die codierten Signale L2, L1 und LO befohlen wird, wobei die Codes dieser
Signale den Befehlen LD, AN, OR, XOR nach der Tabelle II entsprechen. Um die logische Verarbeitungsschaltung bei aufeinanderfolgenden
Operationen taktmäßig zu steuern, wird einer UND-Schaltung 432 das Speichersignal LAS von dem FeIddecodierer
FD5 aus zugeführt, und das Taktsignal CLK wird zugeführt, nachdem das Signal LB erzeugt worden ist und an
den Steuereingängen J und K der Kippschaltung 425 die richtigen Spannungen anstehen. Diese Steuersignale ergeben sich aus
dem einzelnen Eingangssignal LB, die dadurch erzeugt wird, daß das gewählte Wort dem arithmetischen Eingaberegister
nach Fig. 2a zugeführt wird, und daß die Bitwählschaltung veranlaßt wird, das gewählte Bit in Abhängigkeit von Bitwählsignalen
in den Leitungen i6 bis i9 als Eingangssignal LB dem logischen Prozessor zuzuführen.
Aus der Tabelle VI und Fig. 10 ist ersichtlich, daß die drei-
109816/0600
stelligen Funktionscodesignale L2, L1 und LO sowie das Eingangssignal
LB Eingangssignale für mehrere Einrichtungen bilden, und zwar
1. Einrichtungen 428, 429 und 430, die lediglich auf Ladefunktions-Codesignale
(1, 1, 1) und das Eingangssignal LB ansprechen, um dem Eingang J oder K ein 1-Signal zuzuführen,
wenn LB gleich 1 oder 0 ist,
2. Einrichtungen 423, 429, 430, die nur auf UND-Funktions-Codesignale
(1, 0, 1) und das Eingangssignal LB ansprechen, um dem Eingang K ein 1-Signal nur dann zuzuführen,
wenn LB gleich 0 ist,
3. Einrichtungen 428, 429 und 430, die nur auf ODER-Funktions-Codesignale
(0, 1, 0) ansprechen, um dem Eingang J ein 1-Signal nur dann zuzuführen, wenn LB gleich 1 ist, sowie
4. Einrichtungen 428, 429 und 430, die nur auf Exklusiv-ODER-Funktions-Codesignale
(1, 1, 0) ansprechen, um den beiden Eingängen J und K ein 1-Signal nur dann zuzuführen, wenn
das Signal LB den Wert 1 hat.
Die genannten Einrichtungen legen an die Eingänge J und K Spannungspegel mit dem Wert 0 an, wenn keiner der genannten
Fälle besteht. Daher arbeitet der logische Prozessor 401 völlig ohne eine Rückkopplung seines Ausgangssignals LA, und
dieses Signal beeinflußt die Wirkungsweise der unter 1. bis
4. genannten Einrichtungen nicht. Sobald die Operationscodesignale und das Eingangssignal LB in einer beliebigen ihrer
verschiedenen 0- und 1-Kombinationen nach der Tabelle VI vorhanden
sind, bewirkt der Taktimpuls, der von der UND-Schaltung 432 aus dem Takteingang CP zugeführt wird, lediglich, daß die
Kippschaltung 425 getriggert wird oder ungetriggert bleibt, um LA zu veranlassen, denjenigen Zustandswert anzunehmen oder
beizubehalten, welcher dem richtigen Ergebnis der Funktion entspricht, welche durch die im rechten Teil der Tabelle VI
angegebenen codierten Operationssignale repräsentiert werden.
•09815/0600
V*
Natürlich ist das Signal ELB das gleiche wie das Signal LD,
wenn das wahre Signal bzw. das Komplementsignal COUP gleich ist, und es ist gleich dem Komplement von LB, wenn COIIP gleich
1 ist, so daß LB nach Bedarf in seiner wahren Form oder seiner Komplementfonn behandelt wird.
Zwar könnte man im Hinblick auf einige Gesichtspunkte gemäß
der Erfindung auch andere und bekannte Formen von akkumulierenden logischen Prozessoren verwenden, doch bietet der in
Fig. 10 dargestellte neuartige Prozessor Vorteile, da er keine Rückkopplung benötigt und sich leicht durch dreistellige
Funktionscodesignale instruieren läßt.
Wenn eine Boolesche Kette von Operationen gemäß einem als Beispiel gewählten einfachen Ausdruck durchgeführt werden
soll, z.B. gemäß dem Ausdruck
X = (111 + ϋΖ)·Ν3 ® N4,
worin N1 das zehnte Bit b9 des Speicherwortes 44 bezeichnet,
N2 das achte Bit b7 des Speicherwortes 25 N3 das erste Bit bO des Speicherwortes 61 und
N4 das fünfzehnte Bit bi4 des Speicherwortes 35,
ist es möglich, Programmschritte in Ilaschinensprache wie folgt zu schreiben:
Schritt 1
Schritt 2
LD
b10 Adresse 44
(— \
101100
01011 0 1010
Nach der Ausführung ist LA = N1
OR
b8
Adresse 25
01111 1 0100 011001
Nach der Ausführung ist LA = N1 + HZ
Schritt 3
AN
01001
bO
Adresse 61
0000 111101
Nach der Ausführung ist LA = (N1 + ΪΤΖ)·Ν3
80981 5/0600
b14 Adresse 35
Schritt 4 01101 O 1110 100011 Mach der Ausführung ist
LA = (N1 + flZ).N3 0 N4
V/ird das Befehlswort für den Schritt 1 in das Befehlsregister 202 gebracht, veranlaßt der Direktdecodierer 209 nach Fig. 2a
und 4,daß das Signal BADDR auf Null geht, so daß sich die
Gatter 206 nach Fig. 2b schließen, um die Leitungen i6 bis zu maskieren. Die Direktdecodierschaltungen reagieren außerdem
auf befehlscodierte Signale in den Leitungen i11 bis i15
(bei dem vorstehenden Schritt 1 auf die Signale 01011), damit die Signale L2, L1 und LO gemäß der Tabelle II die Werte 111
annehmen, und die 0, die in der Leitung i10 des Registers erscheint, macht das Signal COMP zu einer 0. Wenn das MuItiplexgatter
205 nach Fig. 2b sein Eingangssignal OA zu der Adressenschiene 11 überträgt, wird das an der Speicherstelle
44 gespeicherte Wort dem Register AIR bzw. 102 auf eine noch zu erläuternde Weise zugeführt. Wenn die Befehlsregister-Ausgabeleitungen
i6 bis i9 den Bitwähler 402 durch die Signalkombination 0110 steuern, wird das Ausgangssignal des Registers
102 an der Stelle b9 zu dem Signal LB. Wenn danach ein Taktimpuls auftritt, wird die logische Antwort LA gleich
dem Signal Ii1, bei dem es sich um das elfte Bit des der
Speicherstelle 44 entnommenen Wortes handelt. Dies geschieht aus den weiter oben anhand von Fig. 10 und der Tabelle VI
erläuterten Gründen.
Auf ähnliche Weise können die als Beispiel gewählten logischen Programmschritte 2, 3 und 4 nacheinander ausgeführt
werden, so daß nach dem vierten Schritt das Signal LA das Ergebnis X des als Beispiel gew-ählten Booleschen Ausdrucks
darstellt.
109815/0600
Si',
Das Signal LA bleibt unverändert, bis ein weiterer logischer
Prozeßschritt durchgeführt wird. Dies hat seinen Grund darin, daß das Steuersignal LAS niemals erscheinen kann, und daß
die Kippschaltung 425 nicht getaktet werden kann, solange es sich bei dem decodierten Befehl nicht urn LD, AN, OR oder
XR handelt. Jedoch kann das Signal LA zum späteren Gebrauch zwischengespeichert werden; alternativ kann es in einem Hardware-Kippschal
fcungsbit des Speichers gespeichert werden, um
eine äußere Vorrichtung ein- oder auszuschalten. Noc - wichtiger
ist die Tatsache, daß das Signal LA oder sein Komplement
LA" benutzt werden kann, um zu bestimmen, ob ein bedingter
Defehl tatsächlich durchgeführt wird; hierauf wird nachstehend näher eingegangen.
Um das Signal LA in einem beliebigen gewählten Bit eines
gewählten Speicherwortes zu speichern, werden der Bitmanipulationsteil nach Fig. 10 und die Bitsteuereinrichtung 404 sowie
die Exklusiv-ODER-Anordnung 106 nach Fig. 2a benutzt. Es
sei angenommen, daß ein Befehl SV in das Befehlsregister 202 überführt worden ist, und daß dieser Befehl Codes enthält,
die das Signal an der Bitstelle b7 des in der Speicherstelle 14 gespeicherten Wortes abrufen. In der Maschinensprache nimmt
der Befehl so, wie er in dem Register 202 erscheint, die Form 10001/0/0111/001110 an. Infolgedessen wird das 16-Bit-Wort
W aus der Speicherstelle 14 entnommen und dem arithmetischen Eingaberegister 102 zugeführt, und das Bitsignal aus der Bitstelle
b7 wird zu dem Signal LB. Wenn jetzt das Signal LB eine
1 oder eine 0 und das Signal LA eine 1 oder eine 0 sind, stimmt das ursprüngliche Signal aus der Bitstelle b7 des Wortes 14
mit LA überein, und es braucht nicht geändert zu werden. Wenn jedoch das Signal LB eine 0 oder 1 ist und wenn das Signal LA
den Wert 1 oder 0 hat, muß das Signal an der Bitstelle b7 des Wortes 14 invertiert v/erden, um es zur Übereinstimmung mit
dem logischen Antwortsignal LA zu bringen.
809815/0600
ORIGINAL INSPECTED
- ^ - ? 'M 3 0 6 0
Bedenkt man, daß gemäß der Tabelle II der logische Befehl SV dazu führt, daß die Operationscodesignale L1 und LO die
V/er te 0 und 1 annehmen, wird gemäß Fig. 10 die UND-Schaltung 440 gesperrt, während eine zweite UND-Schaltung 441 freigegeben
wird, wenn ein Befehl SV verarbeitet wird. Somit wird das Signal a eine 0 oder eine 1 sein, wenn das logische Antwortsignal
LA den Wert 0 oder 1 hat. Eine ODER-Schaltung 442 leitet das Signal a weiter, so daß es zu dem Signal c wird,
bei dem es sich um ein Eingangssignal einer Exklusiv-ODER-Schaltung 444 handelt, der als zweites Eingangssignal das
logische Einzelbitsignal LB zugeführt wird. Somit hat das Signal d nur dann den Wert 1, wenn die Signale LB und LA ungleich
sind, d.h. wenn eines von ihnen eine 1 und das andere eine 0 ist. Das Signal d durchläuft eine ODER-Schaltung 445,
so daß es zu dem Signal f wird, das einer UND-Schaltung 446 zugeführt wird, deren Ausgangssignal das Bitsteuersignal BC
ist. Das Signal BC kann nur dann den Wert 1 haben, wenn ein Steuersignal BTLOG aus dem Mikroprogramm-Festwertspeicher bzw.
dem Felddecodierer 284 für Verschiedenes nach Fig. 9 dann den Pegel 1 hat; diese Bedingung wird während der Phase 3 einer
SV-Operation erfüllt. Wenn ein Zwischenspeicherungsbefehl SV ausgeführt werden soll, wird somit das gewählte Bit des gewählten
Wortes als Signal LB eingebracht, und das Bitsteuersignal BC wird nur dann auf den Wert 1 gebracht, wenn die
Signale LB und LA ungleich sind, was bedeutet, daß das gewählte Bit des gewählten Wortes umgestellt werden muß, um
es in Übereinstimmung mit dem dann vorhandenen Wert des Signals LA zu bringen.
Gemäß Fig. 2a wird das Bitsteuersignal BC als Eingangssignal der Steuerschaltung404 für das gewählte Bit zugeführt, zu der
nur eine Eingangsleitung und 16 Ausgangsleitungen für das Signal
H gehören. Wie erwähnt, läßt die Bitsteuerschaltung 404 normalerweise ein 1-Signal in allen 16 Ausgangsleitungen H
erscheinen, jedoch dann nicht, wenn das Bitsteuersignal BC
809815/0600
-6ο- /743UbU
eine 1 ist; dann wird das entsprechend Bit des Signals H, das durch den Signalcode in den Leitungen i6 bis i9 des Registers
202 bestimmt wird, in ein O-Signal verwandelt. Somit
besteht das Signal H entweder aus 16 1-Bits, oder es enthält
15 1-Bits und ein 0-3it, wenn BC den Wert 0 hat, und das betreffende Bit mit dem Wert 0 ist das gewählte Bit, das bei
dem hier behandelten Beispiel aus der Bitstelle b7 des Registers 102 stammt.
Erinnert man sich, daß das gewählte Wort W, und zwar bei dem Beispiel das Wort 14 aus dem Speicher, immer nocu in dem
arithmetischen Eingaberegister 102 vorhanden ist, und nimmt man für den Augenblick an, daß die Steuerschaltung das Signal
B der Einheit ALU nach Fig. 2a zuführt, ist das Signal F das Einerkomplement des gewählten Wortes, d.h. F=W. Das Komplementsignal
W bildet ein Mehrbit-Eingangssignal für die 16-Bit-Exklusiv-ODER-Anordnung
106, der auch das 16-Bit-Eingangssignal
H zugeführt wird, bei dem das gewählte Bit gemäß dem Beispiel an der Bitstelle b7 den Wert 0 hat. Daher ist das
Ausgangesignal der 16-Bit-Exklusiv-ODER-Anordnung 106 ein
16-Bit-Signal ANS1, bei dem es sich um das ursprüngliche Wort
handelt, das dem Speicher entnommen wurde, d.h. W ist zu V/
rückinvertiert worden; eine Ausnahme besteht darin, daß das gewählte Bit gegenüber seinem ursprünglichen Wert invertiert
und durch die Exklusiv-ODER-Schaltung in den entgegengesetzten
Wert verwandelt wird, wenn das gewählte Bitsignal nicht ursprünglich mit dem Signal LA übereinstimmte. Wenn bei dem
hier behandelten Beispiel das Signal BC eine 1 ist, enthält das Signal H aus der Bitsteuerschaltung 4O4 nur Einsen, doch
ist an der Bitstelle b7 eine 0 vorhanden. Daher ist das Signal ANS1 gleich dem Signal F (das W entspricht),welches invertiert
worden ist, jedoch abgesehen davon, daß bei dem Signal ANS1
das Signal an der Bitstelle b7 nicht rückinvertiert wird und in dem Signal ANS' als das Komplement des b7-Signals des ursprünglichen
Wortes W erscheint, das im arithmetischen Register 102 festgehalten wird.
80981 5/0600
-69- 2743U6Ü
Nachdem das Signal ANS' auf diese Weise gebildet worden ist, wobei das gewählte Bit erforderlichenfalls umgestellt worden
ist, um mit der logischen Antwort LA übereinzustimmen, kann das Gatter Gr durch ein Signal EOR freigegeben werden, um das
Signal ANS1 der Systemschiene 10 zuzuführen. Nachdem dies geschehen
ist, kann dieser Satz von Signalen im Speicher an der ursprünglichen V/ortstelle 14 gespeichert werden.Bei diesem
Speicherzustand stimmt der Wert an der Bitstelle b7 mit dem Signal LA überein, das nach einer oder mehreren logischen Verarbeitungsoperationen
des Prozessors 401 gebildet wird.
Betrachtet man diese Erläuterung anhand eines speziellen Beispiels
bezüglich der Speicherwortstelle 14 und der zugehörigen
Bitstelle b7 sowie die fünfte Zeile der Tabelle VI, wird man erkennen, daß jedes Wort aus dem Speicher (an den ersten 64
Speicherstellen 0 bis 63) mit Hilfe eines Befehls SV in das arithmetische Eingaberegister 102 gebracht werden kann, daß
das gewählte Bit dieses Wortes, durch den Befehl definiert ist, der als Signal LB dem logischen Prozessor 401 zugeführt wird,
daß das Bitsteuersignal BC gebildet wird, um das Signal H für die Exklusiv-ODER-Anordnung 106 zu erzeugen, und daß die
Anordnung 106 dann ein Signal ANS1 liefert, welches das ursprüngliche
Wort darstellt, wobei das gewählte Bit den Wert 1 oder 0 hat, der mit der logischen Antwort LA übereinstimmt.
Hierzu ist zu bemerken, daß von den Teilen des arithmetischen Grundsystems Gebrauch gemacht wird, d.h. dem Eingaberegister
102, der arithmetischen logischen Einheit ALU, dem Befehlsadressenregister
202 sowie den meisten Teilen der Steuereinheit. Das Bitsteuersignal BC nimmt den Wert 1 an, und das gewählte
Bit des gewählten Wortes wird nur dann umgestellt, wenn dies erforderlich ist, um das gewählte Bitsignal so zu
verändern, daß es mit dem dann vorhandenen Wert des Signals LA übereinstimmt.
Es ist möglich, verschiedene Signale ohne Rücksicht darauf,
809815/0600
ob sie durch äußere Schalter, äußere Kippschaltungen oder
den Zustand von Speicherkernen dargestellt werden, nacheinander einzuführen und nach logischen Verarbeitungsbefehlen mit Hilfe einer verketteten Folge von Operationen entsprechend
der Booleschen Logik so zu verarbeiten, daß man eine endgültige logische Antwort LA erhält. Nachdem eine solche Antwort gebildet und verwendet oder gespeichert worden ist, kann mit Hilfe einer anderen Booleschen Folge eine andere Antwort erzeugt werden. Ss sei z.B. angenommen, daß das Ergebnis eines solchen Booleschen Ausdrucks bestimmt, ob bei einer zu
steuernden Maschine ein Magnetventil ein- oder ausgeschaltet werden soll, nachdem das Signal LA abschließend gebildet worden ist, kann man ein Speicherwort, zu dem eine Steuerkippschaltung für den Elektromagneten gehört, in das arithmetische Register 102 einbringen. Das gewählte Bit, das einer gewählten Kippschaltung entsnricht, z.B. das Ausgangssignal der Kippschaltung FFy des Wortes V/40 nach Fig. 12, wird dann so manipuliert, daß es mit der endgültigen logischen Antwort LA üuereinstimmt, und das Signal ANS1 wird dann erneut der gleichen Speicherstelle eingegeben, die hier in Fig. 12 als Wort W40
dargestellt ist. Hat LA den V/ert 1 oder 0, wird die Kippschaltung FFy gesetzt oder zurückgesetzt, und das zur Steuerung
dienende Magnetventil wird ein- bzw. abgeschaltet.
den Zustand von Speicherkernen dargestellt werden, nacheinander einzuführen und nach logischen Verarbeitungsbefehlen mit Hilfe einer verketteten Folge von Operationen entsprechend
der Booleschen Logik so zu verarbeiten, daß man eine endgültige logische Antwort LA erhält. Nachdem eine solche Antwort gebildet und verwendet oder gespeichert worden ist, kann mit Hilfe einer anderen Booleschen Folge eine andere Antwort erzeugt werden. Ss sei z.B. angenommen, daß das Ergebnis eines solchen Booleschen Ausdrucks bestimmt, ob bei einer zu
steuernden Maschine ein Magnetventil ein- oder ausgeschaltet werden soll, nachdem das Signal LA abschließend gebildet worden ist, kann man ein Speicherwort, zu dem eine Steuerkippschaltung für den Elektromagneten gehört, in das arithmetische Register 102 einbringen. Das gewählte Bit, das einer gewählten Kippschaltung entsnricht, z.B. das Ausgangssignal der Kippschaltung FFy des Wortes V/40 nach Fig. 12, wird dann so manipuliert, daß es mit der endgültigen logischen Antwort LA üuereinstimmt, und das Signal ANS1 wird dann erneut der gleichen Speicherstelle eingegeben, die hier in Fig. 12 als Wort W40
dargestellt ist. Hat LA den V/ert 1 oder 0, wird die Kippschaltung FFy gesetzt oder zurückgesetzt, und das zur Steuerung
dienende Magnetventil wird ein- bzw. abgeschaltet.
Es sind weitere Bitmanipulationsbefehle möglich, und zwar die Befehle IV, ST, RS. Der Befehl IV bewirkt, daß das gewählte
Bit des gewählten Wortes invertiert wird; der Befehl ST bewirkt, daß das gewählte Bit eines gewählten Wortes auf den
Wert 1 gebracht wird oder diesen Wert beibehält, und der Befehl RS bewirkt, daß das gewählte Bit des gewählten Wortes
auf den Wert 0 zurückgesetzt oder im zurückgesetzten Zustand belassen wird.
Wert 1 gebracht wird oder diesen Wert beibehält, und der Befehl RS bewirkt, daß das gewählte Bit des gewählten Wortes
auf den Wert 0 zurückgesetzt oder im zurückgesetzten Zustand belassen wird.
Bezüglich des Befehls ST, der gemäß den Tabellen II und IV
dazu führt, daß die Signale L1, LO und ii4 die Werte 1, 0, 1
dazu führt, daß die Signale L1, LO und ii4 die Werte 1, 0, 1
809815/0600
9t
-7*- 2743Ü60
annehmen, ist ersichtlich, daß das UND-Gatter 441 nach Fig. 10 gesperrt wird, so daß das Signal a den Wert 0 haben
muß. Andererseits haben die Signale L1 und ii4 beide den Wert 1, so daß gemäß Fig. 10 das Signal b den Wert 1 hat
und die Schaltung 442 durchläuft, so daß das Signal c den V/ert 1 erhält. Wenn jetzt das Signal LB den Wert 0 oder 1
hat, läßt die Exklusiv-ODER-Schaltung 444 an ihrem Ausgang das Signal d mit dem V/ert 1 oder 0 erscheinen; das Signal d
erscheint als das Signal f, und wenn das Freigabesignal BTLOG auftritt, nimmt das Ausgangssignal BC den Wert 1 oder
0 an. Wenn, wie schon erläutert, ein gewähltes Wort in das arithmetische Register 102 gebracht und das gewählte Bit als
Eingangssignal LB dem logischen Prozessor 401 zugeführt wird, erscheint das gewählte Wort in invertierter Form am Eingang
F der 16-Bit-Exklusiv-ODER-Anordnung 106. Wenn das gewählte
Bitsignal nicht eine 1 ist, wird das Bitsteuersignal BC zu einer 1, und nach der Verarbeitung durch die Exklusiv-ODER-Anordnung
ist das entsprechen*Bit in dem Signal ANS1 invertiert,
d.h. es ist aus einer 0 in eine 1 verwandelt worden. Diese Operation ist aus der siebten Zeile der Tabelle VI
ersichtlich, die bestätigt, daß der Befehl ST stets dazu führt, daß das gewählte Bit auf den Wert 1 gebracht wird,
und zwar entweder durch Invertieren seines ursprünglichen Wertes 0 oder dadurch, daß der vorher vorhandene Wert 1 erhalten
bleibt.
Im folgenden wird auf den Bitmanipulationsbefehl RS in der achten Zeile der Tabelle VI eingegangen. Dieser Befehl führt
dazu, daß die Signale L1, LO und ii4 die Werte 1, 0, 0 annehmen.
Daher werden die Gatter 441 und 440 beide gesperrt, so daß das Signal c auf dem Wert 0 gehalten wird. Hat das
gewählte logische Bitsignal LB den V/ert 0 oder 1, hat das Ausgangssignal
d den V/ert 0 und das Signal f den Wert 1. Somit hat das Signal BC den V/ert 1, wenn das Steuersignal BTLOG
erscheint, jedoch nur dann, wenn das gewählte, durch das Sig-
809815/0600
- 7^ - 2743U6Ü
nal LB repräsentierte Bit den Wert 1 hat. Wird das Signal BC
zu einer 1, und erscheint gemäß Fig. 2a das gewählte Wort erneut bei AIiS1, wird das gewählte Bit von seinem ursprünglichen
Wert 1 auf einen neuen Wert 0 umgestellt, bzw. sein ursprünglicher Wert 0 bleibt erhalten. Somit führt der Rücksetzbefehl
RS stets dazu, daß das gewählte Bit eines gewählten Wortes auf 0 umgestellt oder auf dem Wert 0 belassen wird.
Natürlich kann das Signal ANS' danach im Systemspeicher erneut an der ursprünglichen Stelle gespeichert werden.
Der Invertierbefehl IV in der sechsten Zeile der Tabelle VI führt dazu, daß die Signale L1, LO und i12 die Werte 0, 1, 1
annehmen. Werden diese Steuersignale der Schaltung nach Fig. 10 zugeführt, wird eine UND-Schaltung 448 voll qualifiziert,
so daß an ihrem Ausgang ein Signal e mit dem Wert 1 erscheint, woraufhin das Ausgangssignal f der ODER-Schaltung
445 ohne Rücksicht darauf, ob das Signal d eine 0 oder eine 1 ist, den Wert 1 beibehält. Somit führt der Befehl IV stets
dazu, daß die Signale f den Wert 1 haben und das Signal BC den Wert 1 annimmt, sobald das Steuersignal BTLOG erscheint.
Da ein Invertierbefehl stets ein Signal BC mit dem Wert 1 erzeugt, erscheint das gewählte Bit des gewählten Wortes bei
ANS1 stets in seiner gegenüber dem ursprünglichen Wert invertierten Form. Jedes Wort, das aus einer Speicherstelle in das
arithmetische Register 102 überführt wird, wenn ein Invertierbefehl zur Wirkung kommt, erscheint daher bei ANS1, wobei das
durch den Befehl bezeichnete gewählte Bit invertiert wird. Danach kann das Signal ANS1 im Systemspeicher erneut an
der ursprünglichen Speicherstelle gespeichert werden.
Eine invertierte Form des Wortes erscheint als Eingangssignal F für die 16-Bit-Exklusiv-ODER-Anordnung 106. Wenn es erforderlich
ist, das gewählte Bit dieses Wortes zu verändern, d.h. entsprechend dem jeweiligen Befehl eine Zwischenspeicherung,
Invertierung, ein Setzen oder ein Rücksetzen durchzuführen,
809815/0600
-75- 2743Ü6Ü
nimmt das Bitsteuersignal BC den Wert 1 an, so daß das entsprechende
gewählte Bit des Signals H den Wert O erhält, während alle übrigen Bits des Signals H den Wert 1 haben, so daß
das Signal ANS1 das ursprüngliche Wort ist, bei dem das gewählte
Bit invertiert worden ist. Hat dagegen das gewählte Bit als Folge eines der Befehle SV, ST und RS den richtigen
Wert, behält das Bitstuersignal BC den Wert 0 bei, und das Signal AUS1 ist einfach das ursprüngliche Wort, bei dem das
gewählte Bit seinen ursprünglichen Wert beibehält.
12. Arbeitsweise des Systems - Allgemeines A. Die Abrufoperation (Phase 0)
Wenn die Ausführung eines bestimmten Befehls abgeschlossen ist, und zwar gemäß Fig. 6 stets am Ende eines Intervalls der
Phase 3, das mit der Hinterflanke eines Taktimpulses endet, ist der Programmzähler 226 vorher weitergeschaltet worden,
so daß er numerisch die nächste Befehlsadresse innerhalb eines Programms mit mehreren Schritten signalisiert. Nimmt man an,
daß in dem Augenblick, in dem eine bestimmte Phase 3 endet, z.B. im Zeitpunkt ti nach Fig. 6, eine Phase 0 beginnt, repräsentiert
das AusgangsSignaIs des Programmzählers eine bestimmte
dezimale Adressennummer xxx. Wenn das Signal PHO erscheint, das einen Abrufcode für die Leitung Xa des Mikroprogramm-Festwertspeichers
bildet, erzeugen die Decodierer FD1 bis FD5 gemäß der ersten Zeile der Tabelle III Steuersignale
PC, IiEM, A, AIR und IPC. Gemäß der graphischen Darstellung in Fig. 6 haben diese Steuersignale während des Intervalls zwischen
den Zeitpunkten ti und t2 jeweils den Wert 1. Diese
Steuersignale werden dem Multiplexgatter 205t dem Speicher 300 und dem Gatter Gmr, der Einheit ALU, der UND-Schaltung
203 und der ODER-Schaltung 290 nach Fig. 9 während des gesamten Intervalls der Phase 0 zugeführt. Das Signal IPC erzeugt
das Signal INPC, das gemäß Fig. 2b der UND-Schaltung 230 zugeführt wird. Ein Taktimpuls 262a erscheint nur während des letz-
809815/0600
9*
-1N- ? 7 U 3 ί.' 6 U
ten Teils des Intervalls der Phase O und wird somit durch
die UND-Schaltungen 203 und 230 weitergeleitet.
Das Signal PC veranlaßt das Multiplexgatter 205, das Ausgangssignal
PA des Programmzählers 226 der Adressenschiene
11 zuzuführen, so daß das Befehlswort an der betreffenden Speicheradresse infolge des Lesesignals !EH den Speicherausgabeleitungen
und über das Gatter Gmr der Systemschiene 10 zugeführt wird. Die Zugriffs zeit des Speichers beträgt etwa
200 ns bei den bekannten Speichern, so daß das gewählte Befehlswort der Schiene rechtzeitig zugeführt wird, bevor nahe
dem Ende des Tntervalls der Phase 0 der Taktimpuls 262a erscheint.
Erscheint jedoch der Taktimpuls 262a, aktiviert er die UND-Schaltung
203, um einen Voreinstell-Freigabeimpuls IAR' zu erzeugen, der das Defehlsadressenregister 202 während des Vorhandenseins
des Taktimpulses 262a veranlaßt, das Befehlswort zu speichern, das dann aus dem .Speicher zu der Schiene 10
übertragen wird. Da das UND-Gatter 230 durch das Signal INPC teilweise freigegeben ist, läßt der Taktimpuls 262a außerdem
einen entsprechenden positiven Impuls HiC am Weiterschalteingang
des Programmzählers 226 erscheinen, der dann auf die negativ gerichtete Hinterflanke des Impulses INC reagiert, um
sein Zählergebnis um eine Einheit von xxx auf xxx + 1 zu erhöhen.
In dem Augenblick jedoch, in dem der Programmzähler 226 weitergeschaltet
wird, ersetzt der Phasensequenzgenerator 212 das Signal PHO durch das Signal PH2 in denjenigen Fällen, in denen
der soeben zum Befehlsregister 202 abgerufene Befehl einen Operanden erfordert, und der Direktdecodierer 209 wird veranlaßt,
das Signal GETOP zu erzeugen.
809815/0600
9«
D. Zuführen des Operanden zum arithmetischen Register (Phase 2)
Sobald das Signal PII2 erscheint, wird der Eingangscode gemäß dem Teil b der Tabelle III, der dem Mikroprogramm-Festwertspeicher
zugeführt wird, von dem Code nach der ersten Zeile der Tabelle III auf den Code nach der zweiten Zeile umgestellt.
Daher v/erden die Feidde codierer-Aus gangs signale zu einer Kombination
der Signale EA, MEM, A und AIR gemacht. Das während der Phase 2 erscheinende Signal EA ist im unteren Teil von
Fig. 6 dargestellt; das Signal MEM behält gemäß Fig. 6 den Wert 1 bei. Das während der Phase 2 vorhandene Signal AIR ist
ebenfalls in Fig. 6 dargestellt.
In Abhängigkeit von dem Signal EA wird das Multiplexgatter 205 so konditioniert, daß es seine EingangsSignale OA, die den
Adressenausgabeleitungen iO bis i9 des Registers 202 entnommen werden, der Adressenschiene 11 zuführt, und das Signal MEM
konditioniert den Speicher 300 und das Gatter Gmr derart, daß der Inhalt, d.h. der Operand, der Systemschiene 10 von der
Adressenstelle aus eingegeben wird. Auf diese Weise wird das durch ein Befehlswort abgerufene Operandenwort dem Speicher
entnommen und der Systemschiene zugeführt.
Das während der Phase 2 erscheinende Signal AIR bewirkt eine teilweise Freigabe der UND-Schaltung 101, und wenn der Taktimpuls
262b nahe dem Ende des Intervalls der Phase 2 erscheint, wird diese Schaltung vollständig aktiviert, um einen Impuls
AIR· zu erzeugen, der während des Vorhandenseins des Taktimpulses 262b das arithmetische Eingaberegister 102 veranlaßt,
die dann in der Schiene vorhandenen Operandensignale zu empfangen und zu speichern. Somit umfaßt eine Operandenabrufoperation
während einer Phase 2 Maßnahmen, um aus dem Speicher das jeweilige Datenwort zu entnehmen, welches durch die Operandenadresse
identifiziert wird, welche sich in dem Befehlswort befindet, das dann im Befehlsregister 202 enthalten ist.
809815/0600
9$
- 7^ -
^ 7 4 3 O 5 O
Es sei bemerkt, daß das Befehlssignal A, das der Einheit ALU während einer Abrufphase O oder einer Operandenabrufρhase 2
zugeführt wird, lediglich bewirkt, daß der Inhalt des Akkumulators über die Einheit ALU dem Ausgang F zugeführt wird.
Zwar ist dies bei dem hier behandelten vereinfachten System ohne besondere Bedeutung, doch ist es in der Praxis möglich,
den Inhalt des Akkumulators während der Phasen 0 und 2 dadurch zu überwachen, daß das Signal F als Statuswort behandelt
wird. Bei dem vorliegenden Beispiel kann der Befehl A, der der Einheit ALU während der Phasen 0 und 2 zugeführt wird,
ignoriert werden.
C. Ausführung des Befehls (Phase 3)
Gleichzeitig mit der Hinterflanke des Taktimpulses 262b ersetzt der Phasensequenzgenerator 212 das Signal PH2 durch das
Signal PH3. Daher wird der Kartenbildungs-Festwertspeicher 210 nach Fig. 8 aktiviert, so daß er codierte Eingangssignale
dem Mikroprogramm-Festwertspeicher zuführt, wobei die Kombination dieser Eingangssignale eindeutig den jeweiligen
Befehl darstellt, der durch die fünf oberen Bitsignale bezeichnet wird, welche aufgrund eines dann in dem Register
202 gespeicherten Befehlswortes in den Leitungen i11 bis erscheinen. Somit entspricht während jeder Ausführungsphase
3 die Kombination der Ausgangssignale der Felddecodierer nach
Fig. 9 denjenigen decodierten AusgangsSignalen, die in den
Teilen c bis h der Tabelle III dargestellt sind, und dies gilt für jeden der verschiedenen möglichen Befehle. Jede bestimmte
Kombination von auf diese Weise erzeugten Steuersignalen führt zu einem anderen Ergebnis.
Um ein Beispiel zu geben, ist die Ausführung des Befehls LDA während der Phase 3 im unteren Teil von Fig. 6 graphisch dargestellt.
Gemäß der Tabelle III werden während der Phase 3 einer LDA-Operationsfolge an den FeIddecodiererausgangen die
Steuersignale B und ACC erzeugt. Daher veranlaßt das der Ein-
109815/0600
heit ALU zugeführte Signal B diese Einheit, Eingangssignale B, welche das Datenwort repräsentieren, das vorher als Operand
dem Eingaberegister 102 zugeführt wurde, gemäß Fig. 6 während des gesamten Intervalls der Phase 3 zwischen den Zeitpunkten
t3 und t4 dem Ausgang F zuzuführen. Außerdem bewirkt das Signal ACC, daß die UND-Schaltung 103 teilweise freigegeben
wird, so daß beim Erscheinen eines Taktimpulses 262c am Ende des Intervalls der Phase 3 ein entsprechender Impuls ACC entsprechend
der untersten Wellenform in Fig. 6 dem Speicherfreigabeeingang des Akkumulators 104 zugeführt wird. Der Akkumulator
speichert und signalisiert jetzt bei ANS das Operanden-Datenwort, das vorher dem Speicher entnommen und während der
Phase 2 in dem arithmetischen Eingaberegister 102 gespeichert
worden ist. Somit bewirkt ein Akkumulatorladebefehl LDA, daß ein bestimmter Operand dem Speicher entnommen, dem Eingaberegister
102 zugeführt und dann während der Phase 3 in den Akkumulator 104 überführt wird, woraufhin das Operandenwort bei
ANS erscheint. Fig. 6 veranschaulicht durch das Beispiel für den Befehl LDA die sich aus drei Schritten zusammensetzende
Operation, die auf das Abrufen eines beliebigen Befehls folgt, der die Verwendung eines Operanden erfordert; diese Befehle
sind in der Tabelle III jeweils mit einem Stern bezeichnet.
Bei den Befehlen STA, CLA, SAR, SAL und JMP, bei denen kein Operand benutzt zu werden braucht, tritt das Signal GETOP
während der Abrufphase 0 nicht auf. Daher erzeugt gemäß Fig. 7 der Phasensequenzgenerator kein Signal PH2, und die
miteinander abwechselnden Intervalle der Phasen 0 und 3 werden durch die Signale PHO und PH3 abgemessen.
Unter diesen Umständen ist die Arbeitsweise während des Intervalls
der Abrufphase 0 genau die gleiche, wie es weiter oben anhand von Fig. 6 beschrieben wurde, und tatsächlich spielt
sich bei jedem Befehl der Abrufvorgang in der gleichen Weise ab. Da jedoch gemäß Fig. 7 das Signal PH2 nicht auftritt und
daher das Signal PH3 unmittelbar auf das Signal PHO folgt,
809815/0600
-7»-
27A3Ü60
läuft eine Ausführungsphase 3 sofort ab, nachdem ein Befehlswort in das Befehlsadressenregister 202 überführt worden
ist. Die Signale in den Leitungen i11 bis H 5 aus dem abgerufenen
Befehlswort veranlassen somit den Festwertspeicher 210, dem Mikroprogramm-Festwertspeicher 220 codierte Eingangssignale unmittelbar nach der Phase 0 zuzuführen, und die
Felddecodierer erzeugen die erforderliche Kombination von Steuersignalen, um die Operationen durchzuführen, welche gemäß
dem im Register 202 enthaltenen Befehlswort erforderlich sind.
In Fig. 7 sind zwei Beispiele für Befehle dargestellt, bei denen keine Operanden verwendet werden. Hierbei sei insbesondere
auf das dargestellte Intervall der Ausführungsphase 3 verwiesen. Nimmt man an, daß der Defehl STA während der
Phase 0 in das Register 202 abgerufen worden ist, erzeugen in dem Zeitpunkt t2 nach Fig. 6 beim Erscheinen des Signals
PH3 die Mikroprogramm-Felddecodierer Aus gangs signale EA, ATB
und 5T14, wie es in der Tabelle III angegeben und in t'ig. 7
dargestellt ist. Das Signal EA veranlaßt das Multiplexgatter 205, die die Adresse darstellenden Bits des Befehlswortes,
die dann in den Leitungen iO bis i9 erscheinen, der Adressenschiene 11 zuzuführen, um das Speichersystem 300 so zu konditionieren,
daß es Signale an der gewünschten Speicherstelle aufnimmt. Das Signal ATB wird dem Gatter Gatb zugeführt, um
es zu öffnen, so daß das Akkumulatorausgangssignal ANS der
Schiene 10 zugeführt wird. Das Signal BTM bewirkt eine teilweise Freigabe der Speichersteuer-UND-Schaltung 303, und wenn
letzterer nahe dem Ende des Intervalls PH3 ein Taktimpuls 262c zugeführt wird, wird ein Impuls BTMf erzeugt, der den
Systemspeicher freigibt, so daß an der adressierten Speicherstelle die Signale gespeichert werden, die der Schiene dann
von dem Akkumulator 104 aus zugeführt werden. Somit bewirkt ein Akkumulatorspeicherbefehl STA, daß das dann im Akkumulator
vorhandene Signal ANS, das möglicherweise vorher als Ergebnis
809815/0600
mehrerer verketteter arithmetischer Rechenvorgänge gebildet worden ist, dem Systemspeicher an der bezeichneten Stelle
eingegeben wird.
Gemäß Fig. 7 bewirkt der Phasensequenzgenerator 212 nach der Beendigung des Intervalls der Phase 3 im Zeitpunkt t2, daß
das Signal PHO auftritt und das nächste Intervall einer Phase 0 abgemessen wird, so daß das nächste Befehlswort aus der
Speicheradresse abgerufen wird, die durch den Programmzähler 226 benannt wird, welcher vorher während des Endabschnitts
des vorausgehenden Intervalls einer Phase 0 weitergeschaltet
worden ist.
Ferner zeigt Fig. 7 die Operationen, die sich aus einem Befehl JMP ergeben. V/enn während einer Phase 0 der Befehl JMP
j η das Befehlsregister 202 abgerufen wird, wird kein Signal GETOP erzeugt, und der Phasensequenzgenerator geht sofort
auf die Phase 3 über. Die unteren Bitstellen eines Befehlswortes JI-IP bezeichnen die Adresse eines anderen Befehlswortes,
das als nächstes verwendet werden soll, und das nicht in numerischer Folge auf die Adresse PA folgt, welche dann durch den
Programmzähler 226 gemeldet wird. Wenn der in den Leitungen i11 bis 115 erscheinende Code JMP den Festwertspeicher 210
veranlaßt, dem Mikroprogramm-Festwertspeicher 220 entsprechende Eingangssignale zuzuführen, erzeugen die Felddecodierer
gemäß der Tabelle III und dem unteren Teil von Fig. 7 Ausgabesteuersignale EA, ADTR und PPC. Das Signal EA konditioniert
das Multiplexgatter 205» so daß es zu der Adressenschiene 11 die Signale aus den Leitungen iO bis i9 überträgt,
doch reagiert der Systemspeicher 300 nicht, da ihm weder ein Signal PTM noch ein Signal MEM zugeführt wird. Das Signal
ADTR öffnet das Gatter Gad, so daß der dann in der Schiene vorhandene numerische Adressenwert zu der Systemschiene 10
übertragen wird. Das Signal PPC bewirkt eine teilweise Freigabe der UND-Schaltung 231, der während des Endabschnitts des Inter-
809815/0600
JOS
valls der Phase 3 gemäß Fig. 7 außerdem ein Taktimpuls 262c
zugeführt wird. Das Ausgangesignal der Schaltung 231 ist ein
Impuls PPC1, der es ermöglicht, den Programmzähler 226 auf
den numerischen Zählzustand voreinzustellen, der durch die dann in der Schiene 10 vorhandenen Signale repräsentiert wird,
um numerisch die Adressenstelle des nächsten zu verwendenden Befehls darzustellen. Wenn sich der Programmzähler z.B. im
Zustand 126 befände, so daß er beim normalen Betrieb danach veranlassen würde, daß er der Speicherstelle 126 ein Befehlswort
entnimmt, kann der Befehl JMP den Programmzähler auf das Zählergebnis 285 oder 63 voreinstellen, so daß dann, wenn das
nächste Intervall einer Phase 0 beginnt, ein Befehlswort verwendet wird, das in der Speicherstelle 285 oder 63 erscheint.
Aus der vorstehenden Beschreibung ist ersichtlich, daß das erfindungsgemäße Rechnersystem auf die verschiedensten Befehle
anspricht, von denen nur einige wenige behandelt worden sind, von denen einige die Verwendung eines dem Speicher entnommenen
Operanden bedingen, und von denen wieder andere direkt ausgeführt werden, ohne daß ein Operand benötigt wird. Die
konventionellen oder grundsätzlichen arithmetischen Befehle werden in einer Folge von programmierten Schritten verwendet,
wobei ggf. Sprünge eingeschaltet werden, und zwar auf bekannte Weise, um Antworten auf einzelne oder verkettete arithmetische
Operationen zu erzeugen, wobei diese Antworten als Signale ANS aus dem Akkumulator ΪΟΙ* erscheinen und sich dann
an einer beliebigen gewünschten Speicherstelle mit Hilfe der Durchführung eines Akkumulatorspeicherbefehls STA speichern
lassen.
D. Wirkung spezieller logischer Befehle
Die speziellen logischen Befehle werden allgemein entsprechend der Folge ausgeführt, die vorstehend bezüglich der Befehle beschrieben
ist, bei denen ein Operandbenutzt wird, doch führen diese Befehle nicht zu arithmetischen Rechenvorgängen. Vielmehr
809815/0600
sot
führen sie zu einer Verarbeitung nach der Booleschen Logik bzw. zu einer Bitmanipulation in dem logischen Prozessor 401,
wobei als ein Eingangssignal LB das gewählte Bit eines gewählten Wortes verwendet wird, die beide durch ein in das Befehlsregister
202 abgerufenes spezielles Befehlswort bezeichnet werden.
1. Logische Prozeßbefehle
Wie bereits kurz erläutert, geht immer dann, wenn einer der vier logischen Prozeßbefehle aus den Zeilen 12-15 der Tabelle
III in das Befehlsregister 202 abgerufen wird, das Signal BADDR aus dem Wert 1 in den Wert 0 über, um die Maskierungsgatter
206 zu sperren. Außerdem erscheint das Signal GETOP augenblicklich, wenn während des Intervalls einer Phase 0
dem Register 202 ein spezielles Befehlswort eingegeben wird. Wird einer dieser logischen Prozeßbefehle abgerufen, durchläuft
somit das System eine Phase 2, und ein gewähltes Wort, das den Signalen in den Leitungen iO bis i5 entspricht, wird
dem arithmetischen Eingaberegister 102 zugeführt. Die Signale aus den Leitungen i6 bis i9 konditionieren dann den Bitwähler
402 derart, daß das gewählte Bitsignal des gewählten Wortes bei dem logischen Prozessor 401 als Eingangssignal LB erscheint.
Außerdem führt die direkte Decodierung der Signale aus den Leitungen i10 bis i15, die sich aus dem abgerufenen
Befehlswort ergeben, zur Erzeugung entsprechender codierter Steuersignale L2, L1, LO, COMP, 112 und i14. Diese Signale bestimmen
die jeweilige Funktion, die der logische Prozessor 401 unter Verwendung des Einzelbit-Eingangssignals LB ausführt.
Nachdem die Phase 2 in Abhängigkeit von einem logischen Prozeßbefehl
abgeschlossen ist, und wenn das Intervall einer Phase 3 beginnt, führt der Festwertspeicher 210 gemäß der
Tabelle III dem Mikroprogramm-Festwertspeicher 220 den Eingangscode 1100 zu, und die zugehörigen Felddecodierer erzeugen
•09816/06ÖO
nur das logische Steuersignal LAS (Speichern der logischen
Antwort). Wie erwähnt, bewirkt das Steuersignal LAS eine teilweise Konditionierung der UND-Schaltung 432 nach Fig. 10,
und wenn nahe dem Ende des Intervalls der Phase 3 der Taktimpuls erscheint, wird die Kippschaltung 425 betätigt, um
das Ergebnis der bezüglich des Eingangssignals LB befohlenen logischen Funktion zu speichern. Sonit wird das Signal LA
in denjenigen Zustand gebracht bzw. in demjenigen Zustand belassen,
bei welchem es die Antwort bzw. das Ergebnis der ausgeführten logischen Prozeßfunktion LD, AN, OR oder XR bildet.
Zv/ar können natürlich verschiedene logische Spannungskombinationen
in den Steuerleitungen L2, L1 und LO erscheinen, wenn gewöhnliche arithmetische Befehle verarbeitet werden, doch
erscheint unter diesen Bedingungen das Signal LAS nicht, so daß die Kippschaltung 425 nach Fig. 10 nicht getaktet wird
und daß sie nicht in Abhängigkeit von an ihren Eingängen J und K erscheinenden Spannungspegeln umgestellt wird.
2. Bitmanipulationsbefehle
Wird irgendeiner der logischen Bitmanipulationsbefehle SV, IV, ST und RS während einer Phase 0 der beschriebenen Art in
das Befehlsregister 202 abgerufen, kehrt das Signal BADDR auf den Wert 0 zurück, um die Maskierungsgatter 206 zu sperren,
so daß das Eingangssignal OA für das Multiplexgatter 205 durch die dann in den Leitungen i0 bis i5 erscheinenden
Befehlswortsignale gebildet wird. Während des Intervalls der Phase 2 wird daher das gewählte Wort aus dem Speicher in das
arithmetische Eingaberegister 102 überführt. Der durch die Signale aus den Leitungen i6 bis i9 gesteuerte Bitwähler 412
bewirkt, daß das gewählte Bit des gewählten Wortes als Eingangssignal LB für den logischen Prozessor 401 erscheint.
Ferner veranlassen die in den Leitungen i10 bis i15 erscheinenden
Signale des logischen Befehlswortes den Direktdecodierer 209, dem logischen Prozessor Funktionsbezeichnungssignale
109815/060Ö
L1, LO, i12 und ii4 zuzuführen. Dies führt dazu, daß die
Anordnung nacia Fig. 10 ein Signal f erzeugt, das bestimmt, ob das Signal BC den Wert 1 hat oder nicht, wenn das Gatter
446 später durch ein .Steuersignal BTLOG freigegeben wird.
Während der Phase 3 der Ausführung eines logischen Bitmanipulationsbefehls
führt der Festwertspeicher 210 die Eingangssignale 1011 dem Mikroprogramm-Festwertspeicher 220 zu, und
die zugehörigen De codierer FD1 bis FD5 erzeugen gemäß der Tabelle III die Steuersignale EA, EOR, 5, BTII und BTLOG.
In Abhängigkeit von dem Signal EA wird das Multiplexgatter 205 so konditioniert, daß es das Signal OA zu der Adressenschiene
11 gelangen läßt. Daher bezeichnen die Speicheradressensignale die gleiche Speicherstelle, aus der das gewählte
Wort während der vorausgehenden Phase 2 ausgelesen wurde. Das Steuersignal E veranlaßt die Einheit ALU, das Ausgangssignal
F zum Komplement des Eingangssignals B zu machen, wobei letzteres das gewählte Wort ist, das während der vorausgehenden
Phase 2 aus dem Speicher in das Eingaberegister überführt wurde. Das Signal BTLOG gibt gemäß Fig. 10 das
Gatter 446 frei, um das Steuersignal BC zu einer 0 oder einer 1 zu machen, was sich, wie weiter oben erläutert, nach dem
Wert des Signals f richtet, das durch die Art der befohlenen Bitmanipulationsfunktion und den Wert des EingangssignalsLB
bestimmt wird. Das Signal BC wirkt auf die Bitsteuerschaltung 404, die durch die Bitwählsignale aus den Leitungen i6 bis
i9 konditioniert wird und dann das Eingangssignal H für die Exklusiv-ODER-Anordnung 106 erzeugt, wobei das darin enthaltene
gewählte Bit den Wert 0 bzw. 1 hat, wenn das Signal BC den Wert 1 bzw. 0 hat. Das Aus gangs signal ANS1 der Anordnung
106 ist dann gleich dem ursprünglich gewählten Wort, wobei das gewählte Bit invertiert oder nicht invertiert ist, wie es
der befohlenen logischen Funktion und dem Wert des Signals LB entspricht.
80981 5/0600
Das Signal EOR öffnet das Gatter Gr, um das Signal ANS1 der
Schiene 10 zuzuführen, wobei dieses Mehrbitsignal genau dem Datenwort entspricht, das während der vorausgegangenen Phase
2 dem Speicher entnommen wurde, und wobei das gewählte 3it so manipuliert ist, wie es erforderlich ist, um den im Register
202 enthaltenen Bitmanipulationsbefehls auszuführen.
Das Signal BTM existiert während der gesamten Phase 3 und bewirkt eine teilweise Freigabe der UND-Schaltung 303. Sobald
der Taktimpuls während des Endabschnitts des Intervalls der Phase 3 erscheint, tritt das Signal BTM1 als Impuls auf, um
das Eingeben der dann in der Schiene 10 vorhandenen Signale in die Speicherstelle zu bewirken, welche durch die Signale
in der Adressenschiene 11 bezeichnet wird. Somit wird das ursprünglich gewählte Wort aus dem Speicher erneut der gleichen
Speicherstelle eingegeben, wobei ein einziges gewähltes Bit des Wortes so verändert ist, wie es erforderlich ist, um den
betreffenden Befehl SV, IV, ST oder RS auszuführen.
3. Bedingte arithmetische Befehle
Gemäß der Erfindung sind Einrichtungen vorhanden, die es ermöglichen,
die Steuer- oder Ausführungseinrichtungen bei einem
beliebigen Befehl zu sperren, bei dem es sich nicht um einen logischen Prozeßbefehl handelt, und der so fcodiert ist, daß
er einen bedingten Befehl bildet, wenn das logische Antwortsignal LA nicht den vorbestimmten Wert 1 oder 0 hat.
In der ersten Zeile der Tabelle I bedeutet das Symbol U/C an der Bitstelle b10 lediglich, daß dann, wenn das codierte Befehlswert
eine 0 oder 1 enthält, der Befehl ein unbedingter oder ein bedingter Befehl ist. Handelt es sich um einen bedingten
Befehl, wird das Signal COND nach Fig. 4 und 9 zu einer 1, sobald der betreffende Befehl in das Register 209
abgerufen wird.
809815/0600
40 t
Bei dem hier beschriebenen Ausführungsbeispiel wird während
der Ausführung der Phase 3 mindestens ein Steuersignal durch den Felddecodierer FD4 oder FD5 erzeugt, woraus sich der endgültige
Ausführungsschritt ergibt. Beispielsweise erscheint
bei der Phase 3 des Befehls ADD gemäß der Tabelle III das Signal ACC; dieses Signal gibt die UND-Schaltung 103 frei, so
daß der Impuls ACC erzeugt werden kann, um das Ergebnis F der Einheit ALU in den Akkumulator 104 zu überführen. Wird
jedoch das Signal ACC vernichtet, kann die Eingabe nicht erfolgen, und die Ausführung wird abgebrochen. Damit auf diese
Weise die Ausführung eines beliebigen bedingten Befehls gesperrt werden kann, wenn das Signal COND eine 1 ist, wird gemäß
Fig. 9 das Signal K zu einer 0 gemacht, wenn L"ä" = 1
(LA = 0) ist. Das Signal K mit dem Wert 0 sperrt einfach die Felddecodierer FD4 und FD5, so daß selbst dann, wenn
ein Intervall einer Phase 3 abgemessen wird, kein Befehl ausgeführt werden kann.
Natr\ülich könnte man auch andere bzw. gleichwertige Schaltungselemente
und Verbindungen verwenden, um die gleiche Wirkung zu erzielen. Beispielsweise könnte man den Phasensequenzgenerator
durch Signale COND und LA so steuern, daß er einfach von der Phase 2 zur Phase ο springt, wenn diese beiden Signale
vorhanden sind. Hierdurch würde die Ausführung verhindert, denn der Kartenbildungs-Festwertspeicher würde nicht
durch ein Signal PH3 freigegeben. Ferner könnte man den Mikroprogramm-Festwertspeicher
so ausbilden, daß er als Eingangssignal das Signal COND empfängt, so daß er während der Phase
Ausgangesignale erzeugt, die bei ihrer Decodierung nicht zu
einem Steuersignal führen. Weiterhin könnte man das Signal K als drittes Eingangssignal sämtlichen UND-Schaltungen zuführen,
z.B. der UND-Schaltung 103» um sie während der Phase PH3 zu sperren, wenn TJ. = 1 und COND = 1 ist. Zwar könnte man somit
Einrichtungen der verschiedensten Art verwenden, doch kommt es nur darauf an, daß die Steuereinheit gesperrt wird,
um die Ausführung eines als bedingt codierten Befehls zu ver-
809816/0600
hindern, wenn die vorher gebildete logische Antvo rt LA dann
nicht einen vorbestimmten Zustand von zwei Zuständen, und
zwar hier den Zustand 1 bezeichnet.
E. Der Befehl IF
Es gibt einen Befehl, bei dem ein bestimmtes Bit eines bestimmten
Wortes gewählt wird, und der somit in einem gewissen Ausmaß einem speziellen logischen Befehl ähnelt, obwohl bei
ihm das gewählte Bit weder für eine logische Verarbeitung noch für eine Manipulation verwendet wird. Dieser hier mit IF
bezeichnete Befehl wird verwendet, um zu bewirken, daß der nächste Onerationsbefehl innerhalb einer Programmfolge übersprungen
wird, v/enn das gewählte Bit eines gewählten Wortes, das entweder seine wahre Form oder seine Komplementform hat,
eine 1 ist. Daher erscheint es als zweckmäßig, hier die Operationen zu beschreiben, die durchgeführt werden, wenn der Befehl
IF während eines beliebigen Intervalls einer Phase 0 in das Befehlsregister 202 abgerufen wird.
Die sechs ersten Bitstellen bO bis b5 eines Befehls IF bezeichnen das zu wählende Operandenwort, während die Bitstellen
b6 bis b9 dasjenige Bit innerhalb dieses Wortes bezeichnen, das geprüft werden soll. Das Bitstellensignal bei b10 in einem
Befehl IF bezeichnet durch eine 0 oder eine 1, ob das gewählte Bit in seinem wahren Sinne oder in seiner Komplementform verwendet
werden soll. Die übrigen Bitstellen b11 bis b15 bezeichnen
den IF-Befehlscode nach der Tabelle II.
Nach dem Abrufen eines IF-Befehlswortes in das Register 202
laufen die Operationen während der Phase 2 genau so ab, wie bei einem beliebigen der vorstehend beschriebenen Befehlswörter.
Mit anderen Worten, das gewählte Wort wird aus dem Speicher in die Schiene 10 überführt und dem arithmetischen Eingaberegister
102 eingegeben, und der Bitwähler 402, der auf Signale aus den Leitungen i6 bis i9 reagiert, bewirkt, daß das Eingangssignal
809815/0600
LB für den logischen Prozessor 401 dem Wert des gewählten
Bits in dem gewählten Wort entspricht. Wenn gemäß Fig. 4 und 10 das Signal in der Leitung i10 eine 1 ist, wodurch angezeigt
wird, daß das gewählte Bit in seiner Komplementform behandelt werden soll, hat das Signal COMP den Wert 1. In
diesem Fall macht die Exklusiv-ODER-Schaltung 426 das Signal ELB zum Komplement des Signals LB; anderenfalls hat ELB den
gleichen Wert wie LB. Am Ende des Intervalls einer Phase 2 für einen Befehl IF existiert das Signal ELB in dem logischen
Prozessor nach Fig. 10, und es wird der UlID-Schaltung 291
nach Fig. 9 zugeführt.
Wenn der Phasensequenzgenerator 212 in die Ausführungsphase 3
eintritt und der Festwertspeicher 210 freigegeben wird, reagiert letzterer auf den IF-Befehiscode, um dem Mikroprogramm-Festwertspeicher
220 eine eindeutige Kombination von Eingangssignalen zuzuführen. Dann erzeugen die zugehörigen Felddecodierer
gemäß der Tabelle III nur das Steuersignal IPCLB. Wenn dieses Signal während des Intervalls einer Phase 3 vorhanden
ist, und wenn das Signal ELB den Wert 1 hat, erzeugt die UND-Schaltung
291 nach Fig. 9 das Ausgangssignal 1, das die ODER-Schaltung
290 durchläuft, um das Signal INPC der UND-Schaltung
230 nach Fig. 2b zuzuführen. Wenn nahe dem Ende des Intervalls der Phase 3 ein Taktimpuls erscheint, wird ein entsprechender
Impuls INC dem Zähleingang des Programmzählers 226 zugeführt. Beim Erscheinen der Hinterflanke dieses Impulses, d.h. genau
am Ende des Intervalls der Phase 3, zählt der Programmzähler 226 um eine Einheit weiter. Bedenkt man, daß der Programmzähler
am Ende des Intervalls der vorausgehenden Phase 0 weitergeschaltet wurde, so daß er bereit ist, aus dem Speicher das Befehlswort
abzurufen, bei dem es sich um dasjenige handelt, welches bei einer Programmfolge als nächstes verwendet werden
soll, bewirkt das Weiterschalten des Programmzählers während der Phase 3, die in Abhängigkeit von einem Befehl IF abläuft,
daß eine doppelte Weiterschaltung des Programmzählers erfolgt. Wenn die nächste Phase 0 beginnt, wird ein Schritt des Programms
einfach ausgelassen.
80981 5/0600
Der Befehl IF bildet somit eine bequeme Möglichkeit, ein beliebiges
Bit eines beliebigen Wortes daraufhin zu prüfen, ob es sich um ein gewöhnliches numerisches Datenwort handelt,
oder um ein Wort, das nur logische Bitsignale enthält, welche durch äußere Schalter oder Kippschaltungen erzeugt werden,
sowie den nächsten Programmschritt zu überspringen, wenn das geprüfte Bit entweder eine 1 oder eine 0 ist. Y/enn das Bit
b10 in dem Befehlswort IF den Wert 0 hat, wird der nächste Programmschrittbefehl übersprungen, wenn das geprüfte Bit eine
1 ist; hat jedoch das Bit b1O in dem Befehlswort IF den Wert 0, wird der nächste Programmschrittbefehl übersprungen, wenn
das geprüfte Bit den Wert 0 hat.
13. Typische Programmfolgen, die der erfindungsgemäße
Rechner durchlaufen kann
Nachdem vorstehend die verschiedenen Maschinensprachenbefehle und die einzelnen sich daraus ergebenden Operationen erläutert
worden sind, soll im folgenden eine Erläuterung von Befehlen in englischsprachigen Symbolen gegeben werden, v/ie sie von
einem Programmierer beim Aufstellen von Programmfolgen verwendet werden können. Zur Einleitung ist es jedoch erforderlich,
bestimmte Speicherstellen den numerischen Datenwörtern und den logischen Bitdatenwörtern zuzuweisen, um die Beschreibung
bestimmter Software-Programmfolgen als Beispiele zu erleichtern.
Es seien die nachstehenden Annahmen gemacht:
Die Zahl N1 ist an der Speicherstelle 452 gespeichert.
Die Zahl N2 ist an der Speicherstelle 25 gespeichert. Die Zahl N3 ist an der Speicherstelle 85 gespeichert.
Die Zahl N4 ist an der Speicherstelle 96 gespeichert. Das Zweizustandesignal R ist an der Bitstelle bi4 der Speicherstelle
29 gespeichert.
Das Zweistellungssignal S ist an der Bitstelle b3 der Speicherstelle
18 gespeichert.
80981 5/0600
4η
Das Zweizustandssignal T wird durch den Schalter S8 der
Speicherstelle 30 nach Fig. 12 gebildet.
Das Zweizustandssignal U wird durch den Schalter S12 der
Speicherstelle 30 nach Fig. 12 gebildet.
Das Zweizustandssignal V wird durch die Kippschaltung FFg der Speicherstelle 40 nach Fig. 12 gebildet.
Das Zweizustandssignal W wird durch die Kippschaltung FF15
der Speicherstelle 40 nach Fig. 12 gebildet.
Das Zweizustandssignal X wird durch die Kippschaltung FF1
der Speicherstelle 40 nach Fig. 12 gebildet.
A. Boolesche Signalverarbeitung mit Steuerung äußerer ein- und ausschaltbarer Geräte
Es sei angenommen, daß es bei einem bestimmten Teil eines arithmetisch-logischen Gesamtprogramms erwünscht ist, gemäß
Fig. 12 das Magnetventil 320 einzuschalten, wenn die Zahl N2 positiv und das Signal R eine 1 ist, oder wenn der Schalter
S8 geschlossen ist (T = 1) und die Kippschaltung FFg gesetzt
ist (V = 1). Eine an der Bitstelle b15 des Wortes 452 gespeicherte
0 oder 1 bedeutet, daß die Zahl N2 positiv oder negativ ist. Dies läßt sich durch den nachstehenden Booleschen
Ausdruck darstellen:
Ventil 320 einschalten, wenn ((N positiv)»R + (S8»FFG)J
V/ =(N1 positiv.R) + (T-V)
Sollen diese Maßnahmen durchgeführt und mit dem Programmschritt 442 begonnen werden, könnte man z.B. ein Programm
mit Befehlen wie folgt schreiben:
Schritt | LD | Komplement | Befehl | Wort | 25 |
und Speicherstelle | AN | wahr | b15 | Wort | 29 |
442 | SV | unbedingt | b14 | Wort | 63 |
443 | b0 | ||||
444 | |||||
109815/0600
-vT' | wahr | Befehl | 2Ί | A 3 0 6 0 | |
Schritt und Speicherstelle |
wahr | b8 | |||
445 | LD | wahr | b6 | Wort | 30 |
446 | AN | unbe dingt |
bO | Wort | 40 |
447 | OR | b15 | Wort | 63 | |
448 | SV | './ort | 40 | ||
Diese Programrabefehle würden den Speicherstellen 442 bis auf bekannte Weise mit. Hilfe eines Lochstreifens oder eines
Kartenlesers eingegeben werden.
Wenn bei späteren Operationen der Programmzähler 226 das
Zählergebnis 442 erreicht, wird das Bit 15 des Wortes 25 in seiner Komplementform der Akkumulator-KipOSchaltung 425 nach
Fig. 10 eingegeben, so daß LA eine 1 oder 0 wird, wenn die Zahl N2 positiv bzw. negativ ist. Der Programmzähler schaltet
sich auf den Zustand 443 weiter.
Hierauf wird entsprechend dem der .Stelle 443 entnommenen Befehl
das Jit 14 aus der Stelle 29 in den logischen Prozessor 401 gebracht, und zwar mit Hilfe eines UIJD-Operationscodes,
so daß LAn den Wert (N1 positvR) annimmt. Dann schaltet sich
der Programmzähler auf den Zustand 444 weiter.
Hierauf wird das Signal LA an einer Zwischenspeicherstelle gespeichert.
Das V/ort 63 wird in das Register 102 überführt und sein Bit bO dem logischen Prozessor 401 eingegeben, der einen
Zwischenspeicher-Operationscode empfängt. Das Wort wird erneut an der Stelle 63 gespeichert, wobei sein Bit bO mit LA
übereinstimmt, d.h. das Ergebnis von (N1 positivR) repräsentiert. Der Programmzähler 226 geht in den Zustand 445 über.
Aus der Adresse 445 wird ein logisches Befehlswort abgerufen. Es bewirkt, daß das Bit b8 des Wortes 30, d.h. T, geladen wird,
so daß LA damit übereinstimmt.
809815/0600
Nunmehr wird ein logisches Befehlswort aus der Stelle 446 abgerufen, um LB in Übereinstimmung mit dem Bit b6 des Wortes
40, d.h. mit V, zu bringen, und damit der logische Funktionscode eine UND-Operation befiehlt. Das Signal LAn erhält
den Wert (T»V). Der Programmzähler schaltet sich auf den Zustand 447 weiter.
Als nächstes wird der Befehl aus der Stelle 447 abgerufen, durcn den LB in Übereinstimmung mit dem Bit bO des Wortes 63
gebracht wird, das bei dem vorangehenden Schritt 443 gespeichert wurde, um (111 positiv»R) darzustellen, woraufhin dem
Prozessor 401 ein ODER-Funktionscode zugeführt wird. Das Signal
LAn wird zu einer Antwort, die den folgenden Ausdruck
darstellt:
(N1 positivR) + (T»V)
Nachdem LA in dieser Weise gebildet worden ist, und wenn der Progirammzähler den Zustand 448 erreicht, wird das Zwischenspeicher-Befehlswort
abgerufen. Es bewirkt, daß das Wort 40 dem Register 102 eingegeben und LB in Übereinstimmung mit dem
Bit b15 aus diesem Register gebracht wird. Das Steuersignal BC
wird zu einer 0 oder einer 1 gemacht, wenn dann LA gleich LB oder davon verschieden ist. Somit macht das Signal BC aus dem
Bit b15 des Signals H eine 1 oder 0, und die Exklusiv-ODER-Anordnung
106 bringt ANS· in Übereinstimmung mit dem ursprünglichen
Wort aus der Stelle 40, wobei jedoch das Signal b15 mit LA übereinstimmt. Hierauf wird ANS1 erneut der Speicherstelle
40 eingegeben. Aus Fig. 12 ist ersichtlich, daß dann, wenn LA in diesem Zeitpunkt gleich 1 ist, die Kippschaltung FF
gesetzt oder im gesetzten Zustand belassen wird; ist jedoch LA gleich 0, wird FF^0 zurückgesetzt oder im rückgesetzten
Zustand belassen. Somit besteht das endgültige Ergebnis der verketteten Booleschen Operationen darin, daß das Magnetventil
320 entsprechend der Antwort nach der Booleschen Logik ein- oder abgeschaltet wird.
809815/0600
Natürlich ermöglicht es der erfindungsgemäße Rechner, auch
zahlreiche andere Arten von Booleschen Gleichlangen mittels einer entsprecherden Programmierung zu realisieren. Es sei
bemerkt, daß man bei den Booleschen Folgen logische 1-Bit-Signale verwenden kann, die durch einen Schalter oder dgl.
erzeugt werden, z.B. das Signal T bei dem vorstehenden Programmbeispiel, jedoch auch gewählte Bits aus numerischen Datenwörtern,
z.B. gemäß dem vorstehenden Beispiel das Signal N1. Die rein logischen Wörter entsprechend der letzten Zeile
der Tabelle I können mit numerischen Wörtern gemäß der vorletzten Zeile der Tabelle I gemischt werden, um Boolesche
Eingangssignale zu erhalten. Die logische Antwort LA am Ende einer Booleschen Folge braucht nicht in einer Kippschaltung
gespeichert zu werden; vielmehr ist es möglich, sie als Kennzeichen in einem bestimmten Bit eines bestimmten Wortes des
Kernspeichers zu speichern und sie dann in einem späteren Zeitpunkt zur Prüfung oder Verwendung abzurufen. Ferner
brauchen bei einer Booleschen Kette von Operationen keine sequentiellen Programmschritte durchgeführt zu werden. Es
können einige der logischen Operationen durchgeführt werden, danach kann man arithmetische Operationen durchführen, und
schließlich kann man die Boolesche Kette wieder aufnehmen, da LA das Teilergebnis enthält.
B. Bedingte arithmetische Operationen
Als Beispiel sei angenommen, daß es erwünscht ist, als Teil eines Software-Gesamtprogramms als neuen Wert der Zahl N3 die
Summe von N1 und N4 zu speichern, jedoch davon N2 abzuziehen, und zwar nur dann, wenn sich eines der logischen Signale S und
U, jedoch nicht beide Signale, im 1-Zustand befinden; hierauf soll das Ergebnis durch 2 dividiert werden, jedoch nur dann,
wenn sich die Kippschaltung FF1 nach Fig. 12 im zurückgesetzten
Zustand befindet. Hierzu werden die nachstehenden Schritte benötigt:
809815/0600
/MC
--93 -
a) N4 zu N1 addieren.
b) N2 vom Ergebnis subtrahieren, wenn 3 0 U.
c) Ergebnis von a) und b) dividieren, wenn das Signal 40/1 nach Fig. 12 eine O ist.
d) Ergebnis als neuen V/ert von N3 speichern.
Um diese Operationen unter den genannten Bedingungen durchzuführen,
kann man einen Teil eines Programms, der z.B. mit dem Schritt 183 beginnt, wie folgt schreiben:
Schritt | LDA | Befehl | Bit | 3 | Wort | 452 |
183 | ADD | unbedingt | Bit | 12 | Wort | 96 |
184 | LD | unbedingt | Wort | 18 | ||
185 | XR | wahr | Bit | 1 | Wort | 30 |
186 | SUB | wahr | Wort | 25 | ||
187 | IF | bedingt | Wort | 40 | ||
188 | SAL | Komplement | ||||
189 | STA | unbedingt | ||||
190 | unbedingt | |||||
Erreicht der Programmzähler 226 das Zählergebnis 183, wird der Grundbefehl LDA aus der Speicherstelle 183 abgerufen. Die
Zahl N1 aus der Speicherstelle 452 wird dem Akkumulator 104 eingegeben und bei MS angezeigt. Der Einheit ALU wird ein
Befehlssignal B für diese Operation gemäß der Tabelle III zugeführt.
Sobald der Programmzähler den Stand 184 erreicht, wird der Befehl ADD aus der Speicherstelle 124 abgerufen. Er bewirkt,
daß ANS und N4 (der Operand aus der Speicherstelle 96) addiert werden und das Ergebnis im Akkumulator als neuer Wert von ANS
gespeichert wird. Natürlich empfängt die Einheit ALU während dieser Operation den Befehl A + B.
Erreicht der ProgrammzMhler den Zustand 185» wird der speze^Llle
Befehl aus der Speicherstelle 185 abgerufen, und das
809815/0600
/14 ϊ
Bit 3 des Wortes 1o, d.h. S, v/ird geladen, um zu dem Signal
LA zu werden; dies geschieht in der beschriebenen Weise mit Hilfe einer logischen Prozeßoperation.
Sobald der Programmzähler 226 den Zustand 186 erreicht, wird
das spezielle Befehlswort aus der Speicherstelle 186 abgerufen. Das Bitsignal b12 (Schalter S12 nach Fig. 12) des
Wortes 30 wird als Signal LB zugeführt, v/ährend der logische Prozessor 401 einen Operationscode für ein Exklusiv-ODER
über die Leitungen L2, L1 und LO empfängt. LA wird in diesen Zustand gebracht oder in dem Zustand belassen, der S φ U
entspricht, wobei der Wert 1 nur dann vorhanden ist, wenn S oder U den Wert 1 hat, jedoch dann nicht, wenn für beide
Signale der Wert 1 gilt. Es sei bemerkt, daß die Schritte 105 und 136 das Signal ANS nicht verändert haben, das immer
noch die ,Summe von N1 und N4 darstellt.
Erreicht der Programmzähler 226 den Zustand 187, wird aus der Speicherstelle 187 der bedingte arithmetische Befehl
"Subtrahieren" abgerufen. Der Operand IJ2 wird aus der Speicherstelle 25 in das Eingaberegister 102 gebracht, und der
Einheit ALU v/ird ein Befehl A-B zugeführt. Dann wird das Signal bei F gleich IJ1 + N4 - N2. Gemäß Fig. 4 und 9 hat jedoch
das Signal COND den Wert 1, und daher hat während der
Phase 3, wenn PH3 gleich 1 ist, das Signal K den Wert 0, vorausgesetzt, daß TK gleich 1 ist, d.h. daß LA den Wert 0 hat.
Wenn das Signal LA, welches das Ergebnis von 3 © U darstellt,
gleich 0 ist, werden die Felddecodierer FD4 und FD5 gesperrt, und das Akkumulatorspeichersignal ACC, das gemäß der Tabelle
III normalerweise erzeugt würde, behält den Wert 0 bei. Daher wird das Signal bei U nicht in den Akkumulator 104 überführt,
wenn LA den Wert 0 hat, jedoch erfolgt eine solche Überführung, wenn LA gleich 1 ist. Somit ist der Subtraktionsschritt 187
ein bedingter Schritt, und er v/ird nur unter der Bedingung ausgeführt, daß LA den Wert 1 hat; bei diesem Programmierbei-
80981 5/0600
spiel lautet diese Bedingung, daß S (±) U = 1. Je nach dem Zustand
von 3 und U repräsentiert daher das Signal AIiS am Ende les Schritts 187 entweder (li1 + Il4) oder (IM + U4 - N2).
Wird das nächste spezielle IF-Befehlsv/ort 188 abgerufen, und
wird der Programmzähler während der Phase 0 bis auf 189 weite rgesehaltet, wird das Bit 1 des Vortes 40 zu dem Eingangssignal
LB gemacht, und da der Befehl eine Komplementbezeichnung
enthält (eine 1 an der Bitstelle b10), hat das Signal COMP gemäß Fig. 4 und 10 den Wert 1, so daß das Signal ELS
eine 0 oder eine 1 ist, wenn das gewählte Bit b1 den Wert 1 bzw. 0 hat, d.h. wenn die Kippschaltung FF1 gesetzt bzw. zurückgesetzt
ist. Somit hat während der Ausführung der Phase 3 das Signal IPCLB den Wert 1 oder 0 (Tabelle III und Fig. 9),
und IKC ist gleich 1 oder 0, wenn ELB 1 oder 0 ist. Im ersteren Fall hat das Signal INCP den Wert 1 und der Programmzähler
226 wird am 2nde der Phase 3 von 139 auf 190 weitergeschaltet, wie es weiter oben anhand von Fig. 7 erläutert ist. Im letzteren
Fall verbleibt der Programmzähler im Zustand 189.
In diesem letzteren Fall wird als nächstes der Befehl aus der
Speichersteile 189 abgerufen, und die Ausführung der Phase 3 führt dazu, daß dem Akkumulator 104 das Steuersignal SACR zugeführt
wird, um den Inhalt des Akkumulators um dne Stelle nach rechts zu verschieben. Je nach dem, ob S @ U = 1 oder 0
ist, lautet das Signal ANS entweder oder .
Hat jedoch das Signal 40/1, d.h. das Bit 1 des Wortes 40 entsprechend
der Kippschaltung FF1 nach Fig. 12, den Wert 0, so daß ELB während des Schritts 188 den Wert 1 hat, wird der
Schritt 189 übersprungen und sofort der Schritt 190 ausgeführt. Ohne Rücksicht darauf, ob der Schritt 190 auf den Schritt 188
oder den Schritt 189 folgt, wird der Befehl STA aus der Speicherstelle 190 abgerufen, und das Signal ANS wird an der Wortstelle
85 gespeichert, wo es die Zahl N3 darstellt.
809815/0600
449
Bei dem so bei N3 gespeicherten berechneten Wert kann es sich jeweils um einen der nachstehenden Werte handeln:
wenn 30U= 1 xmd FF räckgesetzt ist;
II wenn S (+) U = 0 und FF1 zurückgesetzt ist;
III N1 + N2 - H4 wenn 3 © U = 1 und FF1 gesetzt ist; oder
IV N1 + 112 wenn S © U = 0 und FF1 gesetzt ist.
Es sei auf verschiedene wichtige Merkmale solcher bedingter arithmetischer Operationen hingewiesen. Erstens können die
logischen Operationen, die zu einem Ergebnis nach der Booleschen Logik führen, mit arithmetischen Operationen mehr oder
weniger regellos vermischt werden, denn gewöhnlich beeinflussen sie sich nicht gegenseitig. Bei dem hier behandelten Beispiel
wird die vorläufige Summe N1 + Uh in dem Akkumulator 104 belassen, während die logischen Prozeßschritte 185 und
186 ausgeführt werden. Es ist nur erforderlich, daß das Endergebnis einer Booleschen Kette gebildet und durch LA signalisiert
wird, bevor eine arithmetische Operation ausgeführt wird, die durch dieses Endergebnis bedingt ist. Zweitens
bleibt die Antwort einer langen Kette von Booleschen Folgen in Form des Signals LA erhalten, bis irgendein weiterer logischer
Prozeßschritt ausgeführt wird. Daher kann das Signal LA bei mehreren nachfolgenden arithmetischen Schritten als
Bedingungsfaktor verwendet werden. Außerdem kann die endgültige
Antwort LA einer Booleschen Kette von logischen Befehlen an einem bekannten Bit eines bekannten V/ortes zwischengespeichert
werden, und danach kann sie wieder in den logischen Prozessor überführt werden, und zwar mittels eines Einschritt-Befehls
LD kurz vor einem arithmetischen Schritt, der durch die endgültige Antwort bedingt sein soll. Alternativ kann eine
endgültige logische Antwort an einer bekannten Bitadresse innerhalb einer bekannten Wortadresse zwischengespeichert
werden, und danach kann diese Antwort als gewähltes Bit in
809815/0600
einem Befehl IF verwendet werden, der einem beliebigen arithmetischen
oder logischen Schritt vorausgeht, welcher durch diese Antwort bedingt sein soll. Bei dem vorstehenden Beispiel
kann die Kippschaltung FF1 des Wortes 40 vor dem Programmschritt
133 durch eine logische Antwort gesetzt oder zurückgesetzt worden sein, und trotzdem wird der programmierte Schritt
nur dann ausgeführt, wenn das Signal beim Bit 1 des Wortes eine 0 ist, d.h. wenn die Kippschaltung FF1 zurückgesetzt ist.
Der erfindungsgemäße Rechner bietet somit außergewöhnlich
flexible und bequeme Programmierungsmöglichkeiten, wobei das Endergebnis oder auch schon die Ausführung verschiedener
arithmetischer Berechnungsschritte zu verschiedenen numerischen Ergebnissen führt, die sich nach bestimmten Beziehungen
zwischen mehreren logischen Einzelbit-Zweizustandssignalen richten, welche durch einzelne Kerne innerhalb einer mehrere
Kerne umfassenden Wortadresse eines Speichersystems bekannter Art oder durch äußere Schalter, Kippschaltungen oder andere
ein- und ausschaltbare Einrichtungen erzeugt werden können. Insbesondere sei bemerkt, daß eine Kette von Booleschen Operationen
dadurch ausgeführt werden kann, daß z.B. die Schritte 465 bis 475 so programmiert werden, daß eine Antwort bei LA
erzeugt wird, die dann, wenn sie den Wert 0 hat, anzeigt, daß ein vollständiger Satz von arithmetischen Schritten 477 bis
485 bei einem bestimmten Durchlauf eines vollständigen Programms nicht benötigt wird. Unter diesen Umständen kann der
Sprungbefehl JMP bei dem Schritt 476 programmiert werden, er kann bedingt sein, und er kann so erzeugt werden, daß er mit
seinen Bits bO bis b9 den Schritt 486 benennt. Bei seiner Ausführung erfolgt dann ein Sprung zu dem Schritt 486. Somit werden
die Schritte 477 bis 485 übersprungen, wenn eine vorher gebildete Antwort nach der Booleschen Logik, d.h. das Signal
LA, den Wert 0 hat.
Zwar könnte man noch zahlreiche weitere Beispiele von Programmfolgen
beschreiben, mit denen bei dem erfindungsgemäßen Rechner
809815/0600
111
-9*- 27A3060
gearbeitet werden kann, doc^. dürften die beiden vorstehend
behandelten einfachen Beispiele genügen, um für jeden Fachmann die Flexibilität und die Vorteile des erfindungsgemäßen
Rechners erkennbar zu machen. BeL einem vollständig ausgebildeten
Rechner, der mit sämtlichen normalen aritiunetischen
Befehlscodes arbeitet, z.B. zum Multiplizieren, Dividieren, Wurzelziehen, Bilden des Kehrwertes usw., und nicht nur mit
den begrenzten Grundbefehlen des beschriebenen Beispiels, sind die logischen und die bedingten Programmierungsmöglichkeiten
nahezu unbegrenzt, so daß den Erfordernissen jedes beliebigen zu steuernden Systems entsprochen werden kann.
V/ie erwähnt, arbeitet der logische Verarbeitungsteil des erfindungsgemäßen
Rechners mit dem aritlimetischen Rechenteil
dadurch zusammen, daß er bestimmte Operationen des Rechenteils qualifiziert bzw. eine bedingte Ausführung von Operationen ermöglicht.
Jedcch kann der arithmetische Teil mit dem logischen Teil dadurch zusammenarbeiten, daß er einen Teil der elementaren
logischen Arbeit übernimmt und ausführt, um Zeit zu sparen. Als Beispiel sei ein Prozeß- oder Haschinensteuersystem
genannt, zu dem eine sehr große Anzahl von Schaltern gehört, wie sie in EIg. 12 bei SO bis S15 dargestellt sind. Es könnten
160 V/örter zu je 16 Schaltern bzw. insgesamt 2560 Schalter vorhanden sein. Häufig ist es nur erforderlich, zu ermitteln,
ob irgendein Schalter einer Gruppe mit z.B. 160 Wörtern geschlossen
ist. Würde nur eine programmierbare Steuereinrichtung benutzt, würde es bis jetzt üblich sein, diese Schalter
mit Hilfe verketteter ODER-Operationen zu prüfen, zu denen 160 Programmschritte gehören. Gemäß der Erfindung ist es jedoch
möglich, auf einfache V/eise jedes der zehn V/örter in den Akkumulator zu bringen und es durch zehn arithmetische Programms
chritte mit 0 zu vergleichen. Bei dem Befehl "Vergleichen mit 0" handelt es sich um einen üblichen arithmetischen
Befehl, der jedoch bei der vorstehenden Beschreibung eines einfachen Digitalrechners nicht berücksichtigt wurde. Wenn
809815/0600
irgendeiner der zehn Vergleiche für das gesamte V.rort das Ergebnis
"nicht O" liofert, kann ein Kennzeichen, z.3. eine Kippschaltung,
gesetzt werden, um anzuzeigen, daß mindestens einer der 160 Schalter geschlossen ist. Durch dieses Kennzeichen
können nachfolgende Operationen gesteuert werden. Zwar kann der erfindungsgemäße Rechner lediglich als programmierbare
Μteuereinrichtunp betrieben werden, doch ermöglicht er eine
schnellere unrl flexiblere Ausführung mancher der programmierbaren
Jteuerfunkt Ionen, da bei manchen d!eser Funktionen sein
arithmetischer Teil benutzt werden kann.
Ferner ist festzustellen, daß in zahlreichen praktischen Anwendungsfällen,
in denen programmierte Jteuer geräte oder Rechner benutzt werden, ganze Teile eines vollständigen Programms
nur dann ausgeführt, jedoch anderenfalls übersprungen werden können, wenn sich der Zustand mindestens eines von z.B. 256
Schaltern seit dem vorausgehenden Programmdurchlauf verändert hat. Bei einer programmierbaren Steuereinrichtung würde dies
erforderlich machen, den Zustand jedes Schalters zu speichern uni de:i gespeicherten Zustand mit dem während des nächsten
Programmdurchlaufs bestehenden Zustand zu vergleichen. Gemäß der Erfindung ist es dagegen möglich, bei jeden Programmdurchlauf
16 '/örter aus Schalterzustandssignalen zu speichern und
sie bezüglich gleicher numerischer Werte der gleichen "Schalterwörter" zu vergleichen, die der arithmetischen Einheit
beim nächsten Durchlauf eingegeben werden. Bei dem Vergleichsbefehl handelt es sich un einen bekannten arithmetischen Befehl.
Somit ist es mit Hilfe von nur 16 Vergleichsprogrammschritten möglich, den arithmetischen Teil des erfindungsgemäßen
Rechners zu veranlassen, zu melden, ob sich der Zustand irgendeines von 256 Schaltern während des letzten Durchgangs
verändert hat, und hierdurch können 256 Programmschritte ersetzt
v/erden, die erforderlich sein wurden, wenn zu diesem Zweck ein logischer Einzelbitprozessor verwendet würde.
809815/0600
Claims (1)
- Patentanwälte D i ρ I. - I π g. Curt WallachDipl.-Ing. Günther KochDipl.-Phys. Dr.Tino Haibach? 7 4 3 U H Ü Dipl.-Ing. Rainer FeldkampD-8000 München 2 · Kaufingerstraße 8 · Telefon (0 89) 24 02 75 ■ Telex 5 29 513 wakai dDatum: 24. September 1977Unser Zeichen: 15 929 - Fk/NePatentanspr U c h eProgrammierbarer Digitalrechner, dadurch gekennzeichnet, daß (a) ein grundlegendes arithmetisches System vorgesehen ist, das einen LeseVSchreib-Systemspeicher (300), der Mehr-Bit-Worte an einer Vielzahl von Adressenplätzen aufnehmen kann, wobei einige dieser Worte codierte Befehle und Adressen darstellen, während andere Worte Daten darstellen und einige der Befehls-Adressenworte ein spezielles Codeformat aufweisen, um einen logischen Befehl, eine Bit-Adresse und eine Speicheradresse darzustellen, eine arithmetische Einheit (ICO) mit Kehr-Bit-Eingängen und -ausgängen, einen Leitungsweg "zwischen dem Systemspeicher (300) und der arithmetischen Einheit (100) und Steuereinrichtungen (200) zur Erzeugung aufeinanderfolgender Operationsfolgen einschließt, die das Entnehmen eines Befehls-/Adressenwortes aus dem Speicher, das Zuführen des durch den Adressenteil des entnommenen Wortes dargestellten Operanden von dem Speicher zur arithmetischen Einheit und die Ausführung der durch den Befehlsteil des entnommenen Wortes dargestellten Funktion einschließen, daß (b) ein logischer Ein-Bit-Prozessor (400) vorgesehen ist, der auf die verschiedenen logischen Operationscodes anspricht, um verschiedene funktionelle Operationen bei Zuführung eines zwei mögliche Zustände aufweisenden Eingangssignals (LB) durchzuführen und daß die Steuereinrichtungen (200) weiterhin auf ein spezielles dem Speicher entnommenes Befehlswort ansprechende Einrichtungen zur übertragung des809815/0600 #/"ORIGINAL INSPECTEDbestimmten dem Bit-Adressenteil des entnommenen Worts entsprechenden Bits des der arithmetischen Einheit (100) zugeführten Operanden als Eingangssignal zum logischen Prozessor (400) und zur Ausführung der durch den logischen Befehlsteil des entnommenen Worts dargestellten Funktion einschließen.2. Digitalrechner nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinrichtungen auf ein dem Speicher entnommenes spezielles Befehlswort ansprechende Einrichtungen zur Steuerung der arithmetischen Einheit (100) derart einschließen, daß Jeder arithmetische Operation an dem zugeführten Operanden als Ergebnis des entnommenen Befehlswortes unterbleibt.J. Digitalrechner nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinrichtungen (200) auf den logischen Befehlsteil des entnommenen Wortbefehls ansprechende Einrichtungen einschließen, die den logischen Prozessor derart steuern, daß das Eingangssignal in seiner wahren oder in der komplementierten Form bearbeiten.4. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Lese-Schreib-System-Speicher (300) Mehr-Bit-Worte an einer Vielzahl von Adressenspeichersteilen aufnehmen und anzeigen kann, daß die ein spezielles Codeformat aufweisenden Befehls-Adressenworte eine erste einen logischen Befehl darstellende Gruppe von Bits, eine zweite eine Bit-Stelle in einem Wort darstellende Gruppe von Bits und eine dritte eine Speicheradresse darstellende Gruppe von Bits aufweisen, daß die arithmetische Einheit (100) ein Eingaberegister und ein Ausgaberegister aufweist, daß ein Befehlsadressenregister (202) und ein Leitungsweg zwischen dem Systemspeicher und den Eingabe-, Ausgabe- und Befehlsadressen-Registern vorgesehen 1st, daß die von den Steuereinrichtungen (100) hervor-•09 815/0600274306Ügerufenen"au'fe inanderfolgenden Operationsfolgen die Entnahme eines Befehls-Adressenwortes auscfera Speicher und die Überführung dieses Befehlsadressenwortes an das Eefehlsadressenregister (202), die Zuführung des Operanden von dem Systemspeicher an das Eingaberegister, der durch den Speicherplatz dargestellt ist, die durch den dann siegnalisierten Adressenausgang des Befehlsadressenregisters bezeichnet ist und die Ausführung der Funktion einschließen, die durch den dann signalisierten Befehlsadressenausgang dargestellt ist, daß ein logischer Eln-Eit-Prozessor (400) vorgesehen ist, der auf die verschiedenen logischen Operationscodesignale anspricht, um verschiedene funktioneile Operationen (beispielsweise UND-, ODER-EXKLUSIV-OBER-SV-IV-ST-, RS-Operationen) in Abhängigkeit von einem zugeführten zwei mögliche Zustände aufweisenden Eingangssignal (LB) auszuführen, und daß die Steuereinrichtungen (100) weiterhin Einrichtungen, die auf die zweite Gruppe von Bitsignalen von dem Befehlsadressenregister ansprechen, wenn dieses ein ein spezielles Codeformat aufweisendes Wort enthält, um das spezielle Bitsignal von dem Eingangsregister als Eingangssignal (LB) an den logischen Prozessor zu überführen, der der dargestellten Bit-Stelle entspricht, Einrichtungen, die auf die erste Gruppe von Bitsignalen von den Befehlsadressenregister ansprechen, wenn dieses ein ein spezielles Code format aufweisendes Wort enthält, um dem logischen Prozessor logische Operationscodesignale zuzuführen, die dem durch die erste Gruppe von Bitsignalen dargestellten logischen Befehl entsprechen, und Einrichtungen zur Betätigung des logischen Prozessors zur Ausführung der logischen Funktion einschließen, die durch das diesen dann als Eingangssignal zugeführten Codesignal dargestellt ist.5. Digitalrechner nach Anspruch 4, dadurch gekennzeichnet, daß die Steuereinrichtungen (100) weiterhin Einrichtungen einschließen, die auf die erste Gruppe von Bitsignalen von dem Befehlsadressenregister ansprechen,•09815/060027UO6Owenn dieses ein ein spezielles Codeformat aufweisendes Wort enthält, um den logischen Prozessor so zu steuern, daß er das Eingangsbitsignal entweder in wahrer oder in komplementierter Form verarbeitet.Digitalrechner nach Anspruch 4, dadurch g e k e η η ze lehnet , daß die erste Gruppe von Bits, die einen logischen Befehl in irgendeinem speziellen Befehlswort darstellt, in zwei Codekategorien fällt, nämlich logische Verarbeitung und Bit-Manipulation, und daß die Steuereinrichtungen weiterhin Einrichtungen, die auf die erste Gruppe von Bitsignalen von dem Befehlsadressenregister ansprechen, wenn die dargestellte Funktion in die erste Kategorie fällt, um den logischen Prozessor so zu steuern, daß er das signalisierte logische Akkumulator-Ausgangssignal (LA) entsprechend einer Boole'sehen Funktion verarbeitet, die durch diese erste Gruppe von Bit-Signalen dargestellt sind, die dann als Eingangssignal dem logischen Prozessor zugeführt werden, und Einrichtungen einschließen, die auf die erste Gruppe von Bitsignalen von dem Befehlsadressenregister ansprechen, wenn die dargestellte Funktion in die zweite Kategorie fällt, um das dann dem Eingaberegister zugeführte Wort an die Spelcheradressc-nstelle zurückzuführen, die dann in dem Befehlsadressenregister signalisiert wird, nachdem das Bit dieses Wortes, das das Eingangssignal (LB) an den logischen Prozessor bildet, geändert wurde oder nicht, wobei die Änderung oder Nichtänderung durch die logischen Befehlscodesignale bestimmt ist, die dem logischen Prozessor zugeführt werden.Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennze lehne t , daß einige der in dem Lese-Schreib-Systemspeicher gespeicherten Worte spezielle logische Befehle, Bitadressen innerhalb eines Wortes und Wortadressen darstellen, daß der logische Ein-Bit-Prozessor ein mit Boole'scher Logik arbeitender Prozessor 1st, d«r Einrichtungen zur Signalisierung eines akkumulierten• 09815/0600 */#Ausgangsbits (LA) und auf logisches Operationscodesignale ansprechende Einrichtungen zur Änderung des Ausßangsbits entsprechend der logischen Operation einschließt, die an dem Ein-Bit-Eingangssignal (LB) durchgeführt wird, daß auf ein von den Steuereinrichtungen entnommenes spezielles Befehlswort ansprechende Einrichtungen zur Zuführung von logischen Operationscodesignalen (LOC), die einem von dem entnommenen Wort dargestellten logischen Befehl entsprechen, an den logischen Prozessor vorgesehen sind, daß Einrichtungen vorgesehen sind, die auf den von den Steuereinrichtungen als Ergebnis des entnommenen speziellen Befehlswortes an die arithmetische Einheit zugeführten Operanden ansprechen, um ein spezielles Bit des Operanden, das dem Bit-Adressenteil des Spezialbefehls entspricht, als Ein-Bit-Eingangsslgnal (LE) an den logischen Prozessor zu führen, und daß Einrichtungen zur Betätigung des logischen Prozessors derart vorgesehen sind, daß das akkumulierte Bit geändert wird, so daß aufeinanderfolgende Spezialbefehle ausgewählte Bits von gewünschten Worten verwenden können, um Eoole'sche Kettenoperationen entsprechend einem Programm von Schritten durchzuführen, In die arithmetische Schritte verteilt eingefügt sind, wobei das Endergebnis durch das akkumulierte Bit-Signal dargestellt ist.8. Digitalrechner nach Anspruch 7, dadurch gekennzeichnet, daß die Steuereinrichtungen Einrichtungen zur derartigen Steuerung der arithmetischen Einheit einschließen, daß keine arithmetische Operation an dem der arithmetischen Einheit zugeführten Operanden als Ergebnis des entnommenen Spezialbefehlswortes durchgeführt wird.9. Digitalrechner nach Anspruch 7, dadurch gekennzeichnet, daß die auf den der arithmetischen Einheit zugeführten Operanden ansprechenden Einrichtungen Einrichtungen einschließen, die auf irgendein spezielles von den Steuereinrichtungen entnommenes Befehlswort an-•09816/0600 *Asprechen und den logischen Prozessor derart steuern, daß das Eln-Bit-Eingangssignal selektiv entweder in der wahren oder komplementierten Form verarbeitet wird.10. Digitalrechner nach Anspruch 7» gekennze lehne t durch Einrichtungen, die auf den signalisierten Zustand des akkumulierten Ausgangsbits (LA) ansprechen, um die Ausführung von Befehlen zu beeinflussen, die von den Steuereinrichtungen und der arithmetischen Einheit ausgeführt werden.11. Digitalrechner nach Anspruch 10, dadurch gekennzeichnet, daß die übliche codierte Befehle und Adressen darstellenden Worte ein Unbedingt-/Bedingt-Bezeichnungsbit einschließen, das das arithmetische System auf ein entnommenes Befehlswort ansprechende Einrichtungen zur Erzeugung eines Bedingt-Signals, wenn das Bezeichnungsbit in diesem Wort "bedingt" angibt, und auf das Vorhandensein des Bedingt-Signals ansprechende Einrichtungen zur Verhinderung der Ausführung eines entnommenen Befehls einschließt, wenn das Bedingt-Signal vorhanden ist»und das signalisierte akkumulierte Ausgangsbit (LA) einen vorgegebenen seiner zwei möglichen Zustände aufweist.12. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennze lehne t , daß der Lese-z^Schreib-Systemspeicher des grundlegenden arithmetischen Systems zum Empfang und zur Signalisierung von Mehr-Bit-Worten an einer Vielzahl von Adressenplätzen ausgebildet ist, daß einige dieser Worte codierte Befehle und Adressen darstellen während andere dieser Worte numerische Daten und/oder mehrfadie Ein-/Aus-Binär-Bits darstellen, wobei einige der Befehls-Adressenworte ein spezielles Codeformat aufweisen, bei dem eine erste Gruppe von Bits einen logischen Befehl (beispielsweise Laden, UND-, ODER-, EXKLUSIV-ODER-Verknüpfung) darstellt, während eine zweite Gruppe von Bits809815/06002743Ü6Üeine Bit-Stelle in einem Wort darstellt und eine dritte Gruppe von Bits eine Speicheradresse eines Datenoperanden darstellt, daß die arithmetische Einheit ein Eingaberegister (AIR), ein Ausgaberegister (ACCUM, ECR) und ein Befehlsadressenregister (IAR) einschließt, daß ein Leitungsweg zwischen dem Speichersystem und den drei Registern vorgesehen ist, daß die Steuere inrichtun-zen des grundlegenden arithmetischen Systems aufeinanderfolgende Operationsfolgen ausführen, die die Entnahme eines adressierten Befehlswortes aus dem Speicher und die Speicherung dieses entnommenen Wortes in dem lAR-Register, die Zuführung von Datenoperanden-Wortsignalen von der Speicheradresse, die durch die dann von dem IAR-Register signalisierteGruppe von Bits dargestellt ist, und die Speicherung dieser Datenoperanden-Wortsignale in dem AIR-Register sowie die Ausführung des durch die erste Gruppe von zu diesem Zeitpunkt von dem IAR-Register signalisierten Bits dargestellten Befehls einschließen, daß der logische Ein-Bit-Prozessor Einrichtungen zur Erzeugung eines akkumulierten logischen Ein-Eit-Ausgangssignals (LA) und Einrichtungen einschließt, die (a) auf ein logisches Ein-Bit-Eingangssignal (LB) und (b) auf logische Operationscodesignale ansprechen, die verschiedene logische Funktionen (beispielsvreise Laden, UNES ODER-, EXKLUSIV-ODER-Verknüpfung) bezeichnen, air, das Ausgangssignal (LA) entsprechend dem Eingangssignal (LB) und der bezeichneten Logikfunktion zu ändern (beispielsweise LAn = LAQ· LB wenn die Funktion UND ist), daß die Steuereinrichtungen weiterhin Einrichtungen zur Feststellung der Tatsache, daß das IAR-Register ein Spezialformat-Befehlswort enthält, das irgendeine logische Operation anfordert, Einrichtungen, die auf diese Feststellung ansprechen, um dem logischen Prozessor als Eingangssignal LB das signalisierte Bit von der Bitstelle des AIR-Registers zuzu führen, das der Bitstelle entspricht, die durch die zweiten Bit-Gruppensignale von dem IAR-Register dargestellt ist.809815/0600£743060ebenfalls auf diese Feststellung ansprechende Einrichtungen zur Zuführung von Operationscodesignalen, die der logischen Funktion entsprechen, die durch die Bitsignale der ersten Gruppe von dem IAR-Register dargestellt sind, an den logischen Prozessor und Einrichtungen zur Betätigung des logischen Prozessors derart einschließen, daß das Ausgangsbitsignal (LA) entsprechend der logischen Operation geändert wird, das durch die Operationscodesignale und den dann vorhandenen Wert der Eingangs- und Ausgangssignale dargestellt ist, so daß das logische Ausgangssignal (LA) den Wert von kettenförmigen Boole'sehen logischen Operationen darstellt, die aufeinanderfolgend an ausgewählten Bits von ausgewählten Speicherdatenworten durchgeführt werden, wobei diese Operationen durch Programmschritte ausgeführt werden, die willkürlich oder zufällig in die arithmetischen Operations-Programmschritte eingefügt sind und daß die Eingangs- und Befehlsadressenregister der arithmetischen Einheit sowohl für die Boole'sehen Operationen als auch für die arithmetischen Operationen Verwendet werden.I). Digitalrechner nach Anspruch 12, dadurch gekennzeichnet, daß die Steuereinrichtungen weiterhin Einrichtungen einschließen, die auf Operationscodesignale ansprechen, die von den Bit-Signalen der ersten Gruppe von dem IAR-Register abgeleitet werden, um den logischen Prozessor derart zu steuern, daß er sein empfangenes Eingangssignal (LB) in wahrer oder komplementierter Form verarbeitet.14. Digitalrechner nach Anspruch 5, gekennzeichnet durch auf den Zustand des logischen Ausgangssignals (LA) ansprechende Einrichtungen zur Modifikation der Betriebsweise der Steuereinrichtungen und der Ausführung von Befehlen, die in das IAR-Register eingebracht werden.15. Digitalrechner nach Anspruch 12, dadurch gekennzeichnet ,daß Jedes übliche Befehls- und Adressen-• 09815/0600 */#wort eine Codierung der Eefehlsbits einschließt, um anzugeben, wenn die arithmetische Operation bedingt durchzuführen ist und daß weiterhin auf die erste Eit-Gruppe von Signalen von dem IAR-Register ansprechende Einrichtungen zur Erzeugung eines Bedingt-Signals (CGND), wenn die Codierung dieser Bits diese Angabe macht, und Einrichtungen vorgesehen sind, die nur dann auf das Vorhandensein des Bedingt-Signals (COND) ansprechen, wenn das logische Ausgangscignal einen vorgegebenen seiner zwei Zustände aufweist, um die Operation der Steuereinrichtungen zu modifizieren, um die Ausführung des Befehls zu unterdrücken, der durch die erste Gruppe von Bits dargestellt ist, die dann von der, TAh-'.-.cgister signalisiert werden, so daß irgendein Prograrr.nschritt, der logische Operationen ausschlügt, selektiv in Abhängigkeit von dem Ergebnis von einem oder mehreren vorhergehenden Boole'sehen Logik-Schritten durchgeführt werden kann.16. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekenn ze lehne t , daß der Lese-Schreib-Systemspeicher des grundlegenden arithmetischen Systems eine Vielzahl von Kehr-Bit-Worten an Adressenplätzen ».halten und signalisieren kann, daß einige der Worte ein bestimmtes Codeformat zur Darstellung von Befehlen und Adressen aufweisen, während andere Worte ein Codeformat aufweisen, durch das Daten dargestellt werden, wobei einige der Worte eine Codeformat aufweisen, bei dem eine erste Gruppe von Bits einen einer Vielzahl von speziellen logischen Befehlen darstellt, während eine zweite Gruppe von Eits eine gewünschte Bit-Adresse innerhalb eines Wortes und eine dritte Gruppe von Bits eine Wortadresse darstellt, daß die arithmetische Einheit Mehr-Bit Eingangs- und Ausgangsleitungen aufweist, daß die Eingangs- und Ausgangsleitungen über einen Leitungsweg mit dem Systemspeicher verbunden sind, daß Steuereinrichtungen zur Erzeugung aufeinanderfolgender Betriebsfolgen vorgesehen sind, wobei diese Betriebsfolgen die Entnahme eines Befehlsadressenwortes von einem Adressen platz des Speichers und die übertragung dieses Wortes zur• 09815/0600 ·/.BAD ORIGINAL/743Ü6Üarithmetischen Einheit, die Zuführung eines Datenwort-Operanden von einem Adressenplatz des Systemspeichers zur arithmetischen Einheit wobei der Adressenplatz der Adresse entspricht, die in dem entnommenen Wort dargestellt ist und die Ausführung des Befehls mit dem Operanden umfassen, der durch das entnommene Befehlsadressenwort dargestellt ist, daß die Steuereinrichtungen weiterhin Einrichtungen zur Erzeugung einiger der Betriebsfolgen einschließt, deren Ausführung die Speicherung der Signale(ANS) von den Ausgangsleitungen der arithmetischen Einheit in dem Adressenplatz des Speichers anschließt, der der Adresse entspricht, die durch das entnommene Eefehls-Adressenwort dargestellt ist, daß ein logischer Bit-Kanipulator vorgesehen ist, der Operations-Codeeingänge (Ll, LO, il2, 114), einen Ein-3it-Eingang zum Empfang des logischen Signals (LB), und Einrichtungen zur Erzeugun : eines Bit-Steuersignals (EC) einschließt, dessen Zustand sowohl von den den Eingängen zugeführten Operationscodesignalen und dem Zustand des logischen Signals (LB) abhängt, das dem Ein-Eit-Eingang zugeführt wird, daß Einrichtungen zur Zuführung eines ausgewählten Signals des der arithmetischen Einheit zugeführten Datenwortes an den Ein-Eit-Eingang vorgesehen sind, wobei das ausgewählte Bit-Signal in seiner Bit-SteHe der Bit-Adresse entspricht, die durch die zweite Gruppe von Bits in einem entnommenen speziellen logischen Befehlsadressenwort dargestellt ist, daß Einrichtungen zur Zuführung von logischen Operationscodesignalen, die dem logischen Befehl entsprechen, der durch die erste Gruppe von Bits in einen entnommenen speziellen logischen Befehlsadressenwort dargestellt sind, an die Operationscodeeingänge vorgesehen sind, und daß Einrichtungen zur Zuführung des den Ein^angsleitungen der arltzmetischen Einheit zugeführten Datenwortes an die Ausgangsleitungen der arithmetischen Einheit vorgesehen sind, wobei ein ausgewähltes Bit entsprechend dem Zustand des Bit-Steuersignals (BC) von dem Bit-Manipulator invertiert oder riichtinvertiert80981 S/0600 "A-U-/7A3ÜBUwird, wobei dieses eine Bit der Ei te te Hc entspricht, die durch die zweite Gruppe von Bits in einer, entnommenen speziellen logischen Befehlswort dargestellt ist, so daß die Zurückführung des Ausganges der arithmetischen Einheit an den Speicheradressenplatz, der durch dir dritte Gruppe von Bits in einem entnommenen speziellen logischen Befehlsadressenwort dargestellt ist, dazu führt, daß das ausgewählte Bit des Datenwortes den gewünschten Zustand aufveist.17. Digitalrechner nach Anspruch l6, ,~ e k e η η ζ c ί :■ : r. e durch Einrichtungen zur Signalisierung eines logischen nkrcumulatorausganges (LA), wobei die Einrichtungen zur erzeugung eines Bit-Steuersignals (BC) und die Einrichtung zur Weiterleitung des den Eingangsleitungen der arithmetischen Einheit zugeführten Datenwortes zu den Ausgangsleitungen zusammen Einrichtungen bilden, die das der arithmetischen Einheit zugeführte Datenwort wieder in den Speicher an der ursprünglichen Adressenstelle einführen, wobei jedoch das ausgewählte Bit dieses Datenwortes denselben Zustand aufweist wie am Akkumulatorausgang.18. Digitalrechner nach Anspruch 16, dadurch gekennzeichnet, daß die von den Einrichtungen zur Zuführung der Operationscodesignale an die Cperationscodeeingänge zugeführten Gperationscodesignale entweder SETZ-, RÜCKSETZ- oder IKVERTIER-SignaIe darstellen, und daß die Einrichtungen zur Erzeugung des Bit-Steuersignals (BC) und die Einrichtungen zur Überführung des den Eingangs leitungen der arithmetischen Einheit zugeführten Datenwortes zu den Ausgangsleitungen zusammen Einrichtungen zur Wiedereinführung des der arithmetischen Einheit zugeführten Datenwortes in den Speicher an dem ursprünglichen Adressenplatz bilden, wobei jedoch das ausgewählte Bit dieses Datenworts sich im Eins-Zustand O-Zustand oder in einem Zustand, der gegenüber dem ursprünglichen Zustand Invertiert 1st, befindet.I09815/06Ö0BAD ORIGINAL77A306Ü19. Digitalrechner mich Anspruch 16, dadurch g e k e η η ze lehnet, daß irgendwelche der Befehlsadressenworte unter Einschluß derer, deren Format erste, zweite und dritte Bit-Gruppen umfaßt, in dem Befehlscode eine Zeichnung einschließt, daß der Befehl unbedingt oder bedingt durchzuführen ist und daß weiterhin Einrichtungen zur Signalisierung eines logischen Akkumulator-Ausgangs (LA) und einen Teil der Steuereinrichtungen bildende Einrichtungen vorgesehen sind, die auf irgendein entnommenes und der arithmetischen Einheit zugeführtes Befchlsadressenwort ansprechen, um die Ausführung des Befehls zu verhindern, wenn er als bedingt bezeichnet ist und der Akkumulator-Ausgang (LA) einen vorgegebenen der beiden möglichen Zustände aufweist.20. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Lese-/Schreibsystemspeicher des grundlegenden arithmetischen Systems Kehr-Blt-Worte an einer Vielzahl von Adressenplätzen aufnehmen kann, daß einige der Worte ein Codeformat zur Darstellung gewöhnlicher Befehle und Adressen aufweisen, daß andere der Worte ein Codeformat zur Darstellung von Daten aufweisen, daß einige der Befehlsadressenworte ein spezielles Codeformat aufweisen, bei dem eine erste Gruppe von Bits einen einer Vielzahl von speziellen logischen Befehlen darstellt, während eine zweite Gruppe von Bits eine gewünschte Eitadresse in einem Wort darstellt und eine dritte Gruppe von Bits einen Speicheradressenplatz eines Wortes darstellt, daß die arithmetische Einheit ein Eingaberegister (AIR), ein Ausgaberegister (AOR), ein Befehlsadressenregister (IAR) und einen die Eingabe-, Ausgabe- und Befehlsadressenregister mit dem Speicher verbindenden Leitungsweg einschließt, daß die Steuereinrichtungen aufeinanderfolgende Operationsfolgen hervorrufen, die die Entnahme eines Befehlsadressensignals aus einem Adressensignal von einem Adressenplatz des Speichers die Uberfüh-•09815/0600/7UÜ6Urung dieses Signals an das Register (IAR), die Zuführung von Datenwort-Operandensignal von den Adressenplatz des Speichers zu dem AIR-Register, wobei dieser Adressenplatz der Adresse entspricht, die durch Signale von dem IAR-Register dargestellt ist, die Ausführung der Funktion, die durch den Befehlsteil des vorher in das IAR-Register überführten Wortes mit den Datenwort-Operandensignalen von dem AIR-Register und in manchen Fällen die Übertragung der Wort-Signale am Ausgang des AOR-Registers zur Speicherung in dem Speicher einschließen, wobei di^se Speicherung an dem Adressenplatz erfolgt, der durch das Befehlsadressenwort dargestellt ist, das dann von dem IAR-Register signalisiert wird, daß der logische Bit-Manipulator C pe rat ions code-j. Ingangsanschlüsse, einen Ein-Bit-Operanden-Eingangsanschluß und Einrichtungen zur Erzeugung eines Bit-Steuersignals (EC) einschließt, dessen Zustand sowohl von den den Codeeingangsanschlüssen zugeführten Signalen als auch dem Signal an dem Operanden-Eingangsanschluß abhängt, daß Einrichtungen zur Zuführung eines Lin-Bit-Eingangssirrnajs (LB) von dem AIR-Register an dem Operanden-Hingangsanschluß vorgesehen sind, wobei der Bit-Platz dieses Signals d^r Bit-Adresse entspricht, die durch die zweite Gruppe von Bits in den Ausgangssignalen von dem IAR-Register dargestellt ist, nachdem dieses ein entnommenes Spezialcodeforrr.at-Befehlswort enthält, daß Einrichtungen zur Zuführung von Signalen an die Operationscode-Eingangsanschlüsse vorgesehen sind, die eine logische Operation entsprechend der logischen Operation darstellen, die dem logischen Befehl entspricht, der durch die erste Gruppe von Bits in den Ausgangssignalen von dem IAR-Register dargestellt ist, nachdem dieses ein entnommenes SpezialbefehlhViort enthält, da? Einrichtungen zur Zuführung des von dem AIR-Register signalisierten Datenwortes zu dem AOR-Register vorgesehen sind, wobei jedoch ein ausgewähltes Bit dieses Wortes bezüglich seines Zustandes entsprechend dem Zustand der Bit-Steuersignale (BC) gesteuert wird, wobei diese Einrichtung durch109815/0600ORIGINAL INSPECTED/?7A306üBitsignale in der zweiten Gruppe von dem IAR-Register gesteuert wird, damit das ausgewählte Bit in seiner Stellung der Bit-Adresse in einem Spezialcodeformat-Befehlswort entspricht und daß auf die erste Gruppe von Bits in den Spezialcodef ormatsignalen von dem IAR-Register ansprechende Einrichtungen vorgesehen sind, die die dann von dem AOR-Register erzeugten Signale wieder in den Speicher an den Adressenplatz überführen, der durch die dritte Gruppe von Bits in den Signalen von dem TAR-Register dargestellt ist.21. Digitalrechner nach Anspruch 20, dadurch gekennzeichnet, daß ein logischer Ein-Blt-Prozessor dem Bit-Manipulator zugeordnet ist und Einrichtungen zur Erzeugung eines akkumulierten Ein-Bit-SignaIs (LA), dessen Zustand entsprechend einem logischen Verarbeitungs-Cperationscode geändert ist, der den Operationscode-Eingangsanschlüssen zugeführt wird, wenn aufeinanderfolgende Ein-Bit-Eingangssignale (LB) dem Ein-BitTOperanden-Eingangsanschluß zugeführt werden, und auf das akkumulierte Signal (LA) ansprechende Einrichtungen zur Bestimmung des Zustandes des Steuersignals (BC) einschließt.22. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichne t, daß das grundlegende arithmetische System ein Bei'ehlsadressenregister, einen Systemspeicher, Einrichtungen zur Entnahme einen Befehlsadressenwortes aus dem Speicher und zur überführung in das Befehlsadressenregister, und auf Befehlsadressensignale von dem Register ansprechende Einrichtungen zur Ausführung des durch das entnommene Wort dargestellten Eefehls einschließt, daß Einrichtungen zur Erzeugung eines zv:ei mögliche Zustande aufweisenden Eln-Bit-Hcuptsteucrsignals (LA) vorgesehen sind, daß auf die Befehlsadressensignale von dem Register ansprechende Einrichtungen zur Erzeugung eines Bedingt-Signals (COND) vorgesehen sind, wenn der durch das entnommene Wort dargestellte Eefehl•0981S/06ÖÖso bezeichnet ist, daß er bedingt ist und daß Einrichtungen zum Unwirksammachen der Einrichtungen zur Aue führung: der durch das entnommene Wort dargestellten Befehle vergesehen sine, urr, die Ausführung des Befehls zu verhindern, wenn das Bedingt-Signal (COND) vorhanden ist und das Haupt-oteuersignal (LA) einen vorgegebenen seiner beiden Zustände aufweist .23. Digitalrechner nach Anspruch 22, dadurch gekennzeichnet, daß die Einrichtungen zur Erzeugung des Ein-Bit-Hauptsteuersignals (L/v) einen nut Eoole'scher Logik arbeitenden Ein-Bit-Prozessor aufweisen, der das Haupt-Steuersignal (LA) entsprechend vorhergehender kettenförmiger Boole1scher Operationen erzeugt, die hierdurch ausgeführt werden.24. Digitalrechner nach Anspruch 22, dadurch gekennzeichnet, daß Einrichtungen zur aufeinanderfolgenden Zuführung ausgewählter Bits von ausgewählten Worten von dem Systemspe icher als Operandeneingänge an den Boole'-sehen Prozessor zusammen mit logischen Gperationsbcfehlen vorgesehen sind (beispielsweise LD, AN, Oi-I, XR) in Form von Worten in dem Systemspeicher enthalten sind, so daß kettenförmige Boole'sehe Operationen durchgeführt werden, um den Zustand des Haupt-Steuersignals (LA) zu bestimmen.25. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Lese-/3chreib-Systemspeicher des grundlegenden arithmetischen Systems eine Anzahl von Mehr-Bit-Worten an jeweiligen Adressenplätzen aufnehmen und signalisieren kann, daß einige der Worte ein Codeformat zur Darstellung von Befehlen und Adressen aufweisen, während andere Worte ein Code format zur Darstellung von Daten aufweist und wobei die Eefehlsadressenworte eine gemeinsame Codecharakteristik aufweisen (beispielsweise eine 0 oder eine 1 im Bit BIO), die anzeigt,1098 1 5/ OSOO ·/.ORIGINAL INSPECTED2743Ü6Üdaß der Befehl unbedingt oder bedingt ist, daß die arithmetische Einheit ein Befehlsadressenregister (IAR), ein arithmetisches Eingangsregister (AIR) und ein arithmetisches Ausgangsregister (AOR) aufweist, daß ein Leitungsweg zwischen dem Systemspeicher und den Registern (IAR, AIR und AOR) vorgesehen ist, daß die Steuereinrichtungen aufeinanderfolgende Operationsfolgen erzeugen, die die Entnahme von ein Befehlsadressenwort darstellenden Signalen von einem programmierten Speicheradressenplatz und die Überführung zum IAE-Register, die Zuführung von ein Datenwort darstellenden Signalen von dem DpeicheradrtSGcnplatz, der durch die entnommenen Signale im IAR-Register dargestellt ist, zum Register AIR, die Ausführung der Funktion, die durch die das entnommene Befehlswort bildenden Signale von dem IAR-Register dargestellt ist, anhand der Datenworte in dem AIR-Register, daß Einrichtungen zur Erzeugung eines zwei mögliche Zustände aufweisenden Ein-Bit-Hauptsteuersignals (LA) vorgesehen sind, das sich von Zeit zu Zeit ändert, und daß Einrichtungen vorgesehen sind, die verhindern, daß die Steuereinrichtungen irgendeine Funktion ausführen, die von einem Befehlsadressenwort abgerufen wird, das in das IAR-Register überführt und signalisiert wird, sobald das entnommene Wort und die IAK-Registersignale angeben, daß der dargestellte Befehl bedingt ist und wenn das Haupt-Steuersignal einen vorgegebenen seiner beiden möglichen Zustände aufweist.26. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Systemspeicher des grundliegenden arithmetischen Systems eine Vielzahl von Mehr-Bit-Worten aufnehmen kann, von denen einige Eefehlsworte und einige Datenworte sind, daß ein Kehr-Bit-Eefehlsadressenregister (IAR) vorgesehen ist, daß Einrichtungen zur überführung verschiedener Befehlsworte von dem Systemspeicher in das IAR-Register vorgesehen sind, daß mit einer ersten vorgegebenen Anzahl von Bit-Ausgängen des IAR-Registers Einrichtungen zur Durch-• 09815/0600 ·/·/ 7 A 3 ϋ ό ϋführung eines arithmetischen Befehls verbunden sind, der durch ein entnommenes Wort dargestellt ist, das mit einer zweiten vorgegebenen Anzahl von Bit-Ausgängen des IAR-Registers Einrichtungen zur Auswahl eines Bit-Signale aus einem ausgewählten ^e hr-B it-Signal eines Wortes verbunden sind, das an irgendeiner anderen Stelle in dem Digitalrechner signalisiert wird, wobei das ausgewählte Bit einem Bitplatz entspricht, der durch den Code der zweiten Vielzahl von Bit-Ausgängen dargestellt 1st, und daß Γinrichtungen zur Verwendung des ausgewählten Bitsignals vorgesehen sind.27. Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Lese-/Srnreib-Speicher des arithmetischen Systems η Wortplätze mit einer Länge von jeweils m Bits zur Aufnahme und Signalisierung von Mehr-Eit-Worten aufweist, daß einige der Worte gewöhnliche Befehls-Adressenworte mit ρ Bits, die verschiedene codierte Befehle darstellen, und mit n-p Bits sind, die einen Speicheradressenplatz eines zu verwendenden Operandenwortes darstellen, daß andere der Worte Spezialbefehls-Adressenworte mit ρ Bits, die verschiedene spezielle codierte Befehle darstellen und mit b-Bits sind, die einen von m verschiedenen Bitplätzen in einem Wort darstellen, v.'obel die verbleibenden n-p-b Bits einen Speicheradressenplatz eines zu verwendenden Operandenwortes darstellen, daß die arithmetische Einheit ein Eefohlsadressenrerister (TΛ70 und ein arithmetisches Eingaberegister (ATR) aufv;e 1st, daß ein Leitungsweg zwischen dem Systemspeicher und der arithmetischen Einheit unter Einschluß der Register (IAR) und (."-.TR) ausgebildet ist, daß Steuereinrichtungen zur überführung aufeinanderfolgend programmierter Befehlsadressenworte in das IAR-Register zu Beginn der aufeinanderfolgenden Operationsfolgen vorgesehen sind, wobei die Steuereinrichtungen Einrichtungen aufweisen, die während jeder Folge (1.) die Zuführung eines Operandenwortes von dem Speicherplatz,der dem Code der n-p oder n-p-b Bits entspricht, die von dem IAR-Register signalisiert werden, in das AIR-Register109815/06ÖÖ ·/·/743Ü6Üdurchführen und die (2.) die Funktion ausführen, die dem Code der ρ Bits entspricht, der durch das IAR-Register signalisiert wird, daß Einrichtungen zum Empfang der b Bitsignale voncfem IAR-Register vorgesehen sind, die das Signal eines ausgewählten Bits von dem AIR-Register zu einem ausgewählten Bit-Anschluß überführen, wobei das ausgewählte Bit einem Bit-Platz entspricht, der durch die b Bitsignale von dem IAR-Register dargestellt ist und daß Einrichtungen zur Nutzung des ausgewählten Bit-Signals an dem Anschluß vorgesehen sind, so daß irgendein gewünschtes Bit verschiedener gewünschter Cpeicherworte dem Bit-Anschluß durch Entnahme eines üpezialbefehls-Adressenwortes zugeführt werden kann.28. Digitalrechner nach Anspruch 27, dadurch gekennzeichnet, daß die Nutzeinrichtungen einen Bode1 sehen logischen Prozessor einschließen.29. Digitalrechner nach Anspruch 28, dadurch gekennzeichnet, daß ein Teil der Steuereinrichtungen auf die von dem IAR-Register signalisierten ρ Bits anspricht, um den Boole'sehen logischen Prozessor derart zu steuern, daß eine Boole'sehe Funktion ausgeführt wird, die dem Code der ρ Bits in einem entnommenen Spezialbefehlswort entspricht.30. Digitalrechner nach Anspruch 29, gekennze lehnet durch Einrichtungen zur Speicherung des Ausgcngssignals (LA) des logischen Prozessors an irgendeinen ausgewählten Bit-Platz eines gewünschten Wortplatzes des Systemspeichers.21. Digitalrechner nach Anspruch J50, dadurch gekennzeichnet, daß die Einrichtungen zur Speicherung des Ausgangssignals auf einen "Sicherstellungs"-Code ansprechen, der durch die ρ Bits eines Spezialbefehlswortes dargestellt ist, das in das IAR-Register überführt wurde,• 098 1 S/ 0600 ·/·daß Einrichtungen zur Zuführung eines Worten von der; üpr icher· platz, der durch die von dem IAR-Register signalisierten n-p-b Bits dargestellt ist, in das ATR-Rcgister vorgesehen sind und daß auf die b Eitsignale von dem IAR-Register ansprechende Einrichtungen zur Anpassung des ausgewählten Bits des zugeführten Wortes an das Ausgangssignal (LA) vor der Rückführung des entnommenen Wortes zurück in den ursprünglichen Speicherplatz vorgesehen sind.32. Digitalrechner nach rincm der vorhergehenden Ansprüche, dadurch gekennzeichnet, daü ? ir. taktgc:; tcuerter akkumulierender logischer Prozessor ohne Rückführung vorgesehen ist, der auf ein E in-B it-Eingangssignal (LE) anspricht, um ein logisches Kin-Bit-Antwortsignal (LA) auf das Ergebnis eines "LADE",-"UND" -, "GDER1'- oder "EXKLUSIV-ODER"-Operation umzuwandeln, die durch Funktionscodesignale dargestellt ist, daß der Prozessor ein TK-Flipflop mit J und K Steueranschlüssen, einem Takte ingang (CP) und einem Ausgangsanschluß (o), an dem das Antwortsignals (LA) erscheint, ausschließlich auf "LAl!E"Funktionscodesignale und das Eingangssignal (LB) ansprechende Einrichtungen zur Zuführung eines 1-Pegel-Signals an die .'- oder K-Anschlüsse, wenn sich das Eingangssignal (l£) auf einem 1- oder einem O-Pegel befindet, ausschließlich auf "u:;:"-Punktionscodesignale und das Eingangssignal (LB) ansprechende Einrichtungen zur Zuführung eines 1-Pegelsignals an den K-Anschluß nur dann, wenn das Eingangssignal (LB) einen O-Pegel aufweist, ausschließlich auf "ODER"-Funktionscodesignale und das Eingangssignal (LB) ansprechende Einrichtungen zur Zuführung eines 1-Pegel-Signals an den J-Anschluß nur dann, wenn das Eingangssignal (LB) einen 1-Pegel aufweist, und ausschließlich auf "EXKLUSIV-ODER"-Funktionscodesignale und das Eingangssignal (LE) ansprechende Einrichtungen zur Zuführung eines 1-Pegel-Signals an den .T- und den K-Anschluß nur dann, wenn das Eingangssignal LB einen 1-Pegel aufweist, einschließen, daß die vorstehend• 098 1 S/0600 ·/·BAD ORIGINAL/7A3Ü6Ügenannten Hinrichtungen Einrichtungen einschließen, die O-Pegelsignale an die T- und K-Anschlüsse mit Ausnahme der oben angegebenen Fälle anlegen, daß weiterhin Einrichtungen zur Zuführung eines Impulses an den Takteingang des T-K-Fllpflops vorgesehen sind wenn eine der vorstehend genannten Einrichtungen die jeweils angegebenen 1-Pegel-Signale angelegt hat, so daß das Antwortsignal (LA) einen neuen zwei mögliche Zustände aufweisenden Wert (LA ) entsprechend der Boole'sehen Funktionen LAn = LD, LAn = LA · LB,LA = LA +113 oder LA = LA (+) LB unabhängig von der no noTatsache annimmt, daß das Signal LA nicht an der Operation der vorstehend genannten Einrichtungen teilnimmt.Digitalrechner nach Anspruch yi, gekennzeichn e t durch Einrichtungen zur selektiven Invertierung des E in gangs signals LB vor der Zuführung an die Einrichtungen zur Bestimmung der Pegel an den J- und K-Anschlüssen, so daß der Prozessor auf das in wahrer oder komplementierter Form vorliegende Eingangssignal anspricht.Digitalrechner nach Anspruch 32, dadurch g e k*e η η zeichnet, daß die die Pegel an den .T- und K-Anschlüssen steuernden Einrichtungen Einrichtungen zur Zuführung eines 1-Pegel-Signals an den T-Anschluß immer dann, wenn das Eingangssignal einen 1-Pegel aufweist und wenn die Operationscodcsignale eine "LADE"-, "ODER"- oder " "EXKLUSIV-ODER"-Funktion bezeichnen und Einrichtungen zur Zuführung eines 1-Pegelsignals an den K-Anschluß immer dann einschließen, wenn das Eingangssignal einen 1-Pegel aufweist und die Operationscodesignale eine "EXKLUSIV-ODER"-Funktion tee lehnen oder wenn das Eingangssignal einen O-Pegel aufweist und die Operationscodesignale eine "LADE"- oder "UiJD"-Funktion bezeichnen.109815/0600/ Ί U 3 C) h U35· Digitalrechner nach Anspruch yh, dadurch gekennzeichnet , daß die den Pegel an J-Anschluß steuernden Einrichtungen ein erstes UND-Gatter aufweisen, das das Eingangssignal (LB) empfängt und das durch irgendv;elche Operationscodesignale mit Ausnahme der Informationscodesignale betätigt wird, die eine "UND"-Funktion bezeichnen, daß die den Pegel an dem K-Anschluß steuernden Einrichtungen ein EXXLUSIV-ODER-Gatter, das zum Empfang des Einganrssignals (LB) und eines "Freigabe-Invertiert"-Signals von Jodesignalen, die eine "LADE"- oder "UND"-Funktion darstellen, angeschaltet ist, und ein zweites UND-Gatter aufweisen, das den Ausgang des EXKLUSIV-CDER-Gatters empfängt urri durch irgendwelche Operationscodesignale betätigt wird, rait Ausnahme der Codesignale, die eine "ODER"-Funktion bezeichnen und daß die Ausgänge der ersten und zweiten UND-Gatter mit den .T- bzw. K-Anschlüssen verbunden sind.J56. Digitalrechner nach Anspruch 35, dadurch gekennzeichnet, daß die Opera tionr code signale drei jeweils zwei mögliche Zustände aufwe!sende Signale (L2, Ll, LO) umfassen, die so codiert sind, daß "LADEN" als 1,1*, 1; "UND" als 1,0,1; "ODER" als 0,1,0 und "EXCLUSIV-ODER" als 1,1,0 bezeichnet 1st und daß das Signal Ll als ein Eingang dem ersten UND-Gatter zugeführt wird, während das Signal LC dem EXKLUSIV-ODER-Gatter zugeführt wird und das Signal L2 dem zweiten UND-Gatter zugeführt wird.Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein taktgesteuerter akkumulierender logischer Prozessor ohne Rückführung vorgesehen ist, der auf ein einziges zwei mögliche Zustände aufweisendes Eingangssignal (LB) anspricht, um ein einziges zwei mögliche Zustände aufweisendes Antwortsignal (LA) auf das Ergebnis einer "LADE11-, "UND"-, "ODER11- oder "EXKLUSIV-ÖDER"-Operation umzuwandeln, die durch Funktions codesignale dargestellt ist, daß der Prozessor ein JK-Flip-IO981 5/060ÖBAD ORIGINAL2743Ü60flop mit J und K 3teueranschlüssen, einem Takte indane und einen Ausgangsanschluß (Q) , an dem das Antwortsignal (LA) erscheint, Einrichtungen zur Zuführung eines 1-Pegelslgnals an den ,!-Anschluß nur dann, wenn das Eingangssignal (113) einen 1-Pegel aufweist und die ^unktionscodesignaIe irgendeine Operation mit Ausnahme der "UND"-Operation bezeichnen, Einrichtungen zur Zuführung eines 1-Pegelsignals an den K-Anschluß nur dann, wenn das Eingangssignal einen O-Pegelaufweist und die Funktionscodesignale eine "LADE"- oder eine "UND"-Operation bezeichnen oder wenn das Eingangssignal einen 1-Pegel aufweist und die Funktionscodesignale eine "EXKLUSIV-CDLR"-Operation bezeichnen, und Einrichtungen zur Zuführung eines Taktimpulses an den Takteingang nachdem irgendwelche Funktiunscodesignale und das Eingangssignal (LE) an dIe vorstehend genannten Einrichtungen angelegt wurden, einschließt, und daß das Antwortsignal (LA) einen neuen Wert (LAn) entsprechend der Booleschen Funktionen (LA„ = LB) für"LADEN", LA„ = LA„ · LB für "UND", LAn = LA + LB für "ODER" und LAn = LAQ © LB annimmt, und zwar unabhängig von der Tatsache, daß das Antwortsignal nicht an die vorstehend genannten»Einrichtungen angelegt ist und ihre Betriebsweise nicht beeinflußt.809815/0600
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/726,277 US4212076A (en) | 1976-09-24 | 1976-09-24 | Digital computer structure providing arithmetic and boolean logic operations, the latter controlling the former |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2743060A1 true DE2743060A1 (de) | 1978-04-13 |
DE2743060C2 DE2743060C2 (de) | 1987-01-15 |
Family
ID=24917930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19772743060 Granted DE2743060A1 (de) | 1976-09-24 | 1977-09-24 | Digitalrechner |
Country Status (4)
Country | Link |
---|---|
US (1) | US4212076A (de) |
JP (1) | JPS5942892B2 (de) |
DE (1) | DE2743060A1 (de) |
GB (2) | GB1555609A (de) |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4525776A (en) * | 1980-06-02 | 1985-06-25 | Bell Telephone Laboratories, Incorporated | Arithmetic logic unit arranged for manipulating bits |
DE3130746C2 (de) * | 1981-08-04 | 1985-01-31 | Dr. Johannes Heidenhain Gmbh, 8225 Traunreut | Verfahren zur Programmsteuerung bei einer freiprogrammierbaren Steuerung und Anordnung zur Durchführung des Verfahrens |
DE3302940A1 (de) * | 1983-01-28 | 1984-08-02 | Siemens AG, 1000 Berlin und 8000 München | Speicherprogrammierbare steuerung mit wort- und bitprozessor |
US4583169A (en) * | 1983-04-29 | 1986-04-15 | The Boeing Company | Method for emulating a Boolean network system |
US4688191A (en) * | 1983-11-03 | 1987-08-18 | Amca International Corporation | Single bit storage and retrieval with transition intelligence |
US4831521A (en) * | 1983-11-10 | 1989-05-16 | General Signal Corporation | Vital processor implemented with non-vital hardware |
US6552730B1 (en) | 1984-10-05 | 2003-04-22 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US5034900A (en) * | 1984-10-05 | 1991-07-23 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US5265204A (en) * | 1984-10-05 | 1993-11-23 | Hitachi, Ltd. | Method and apparatus for bit operational process |
GB8620596D0 (en) * | 1986-08-26 | 1986-10-01 | Veeder Root Ltd | Tachograph |
US5327571A (en) * | 1990-04-03 | 1994-07-05 | Advanced Micro Devices, Inc. | Processor having decoder for decoding unmodified instruction set for addressing register to read or write in parallel or serially shift in from left or right |
IT1247640B (it) * | 1990-04-26 | 1994-12-28 | St Microelectronics Srl | Operazioni booleane tra due qualsiasi bit di due qualsiasi registri |
US5493687A (en) * | 1991-07-08 | 1996-02-20 | Seiko Epson Corporation | RISC microprocessor architecture implementing multiple typed register sets |
US5539911A (en) | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
DE69311330T2 (de) | 1992-03-31 | 1997-09-25 | Seiko Epson Corp | Befehlsablauffolgeplanung von einem risc-superskalarprozessor |
EP0638183B1 (de) | 1992-05-01 | 1997-03-05 | Seiko Epson Corporation | Vorrichtung und verfahren zum befehlsabschluss in einem superskalaren prozessor. |
US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
KR100292300B1 (ko) | 1992-12-31 | 2001-09-17 | 야스카와 히데아키 | 레지스터재명명시스템및방법 |
DE4430195B4 (de) * | 1993-12-13 | 2004-09-23 | Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto | Verfahren zur Auswertung von Booleschen Ausdrücken |
US5459841A (en) * | 1993-12-28 | 1995-10-17 | At&T Corp. | Finite state machine with minimized vector processing |
TW305973B (de) * | 1995-02-15 | 1997-05-21 | Siemens Ag | |
US6114639A (en) * | 1998-06-29 | 2000-09-05 | Honeywell International Inc. | Configurable switch |
US6463339B1 (en) * | 1999-09-27 | 2002-10-08 | Rockwell Automation Technologies, Inc. | High reliability industrial controller using tandem independent programmable gate-arrays |
US7119576B1 (en) | 2000-09-18 | 2006-10-10 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US7346644B1 (en) | 2000-09-18 | 2008-03-18 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US7383421B2 (en) * | 2002-12-05 | 2008-06-03 | Brightscale, Inc. | Cellular engine for a data processing system |
US8620980B1 (en) | 2005-09-27 | 2013-12-31 | Altera Corporation | Programmable device with specialized multiplier blocks |
DE102005050382B4 (de) * | 2005-10-20 | 2012-08-09 | Infineon Technologies Ag | Prozessor zum Prüfen einer Bedingung für eine bedingte Ausführung eines Programmbefehls |
US7451293B2 (en) * | 2005-10-21 | 2008-11-11 | Brightscale Inc. | Array of Boolean logic controlled processing elements with concurrent I/O processing and instruction sequencing |
EP1971956A2 (de) * | 2006-01-10 | 2008-09-24 | Brightscale, Inc. | Verfahren und vorrichtung zur terminierung der verarbeitung von multimediadaten in parallelverarbeitungssystemen |
US8266199B2 (en) | 2006-02-09 | 2012-09-11 | Altera Corporation | Specialized processing block for programmable logic device |
US8041759B1 (en) | 2006-02-09 | 2011-10-18 | Altera Corporation | Specialized processing block for programmable logic device |
US8301681B1 (en) | 2006-02-09 | 2012-10-30 | Altera Corporation | Specialized processing block for programmable logic device |
US8266198B2 (en) | 2006-02-09 | 2012-09-11 | Altera Corporation | Specialized processing block for programmable logic device |
US7836117B1 (en) | 2006-04-07 | 2010-11-16 | Altera Corporation | Specialized processing block for programmable logic device |
US7822799B1 (en) | 2006-06-26 | 2010-10-26 | Altera Corporation | Adder-rounder circuitry for specialized processing block in programmable logic device |
US20080244238A1 (en) * | 2006-09-01 | 2008-10-02 | Bogdan Mitu | Stream processing accelerator |
US20080059763A1 (en) * | 2006-09-01 | 2008-03-06 | Lazar Bivolarski | System and method for fine-grain instruction parallelism for increased efficiency of processing compressed multimedia data |
WO2008027567A2 (en) * | 2006-09-01 | 2008-03-06 | Brightscale, Inc. | Integral parallel machine |
US20080059467A1 (en) * | 2006-09-05 | 2008-03-06 | Lazar Bivolarski | Near full motion search algorithm |
US8386550B1 (en) | 2006-09-20 | 2013-02-26 | Altera Corporation | Method for configuring a finite impulse response filter in a programmable logic device |
US8386553B1 (en) | 2006-12-05 | 2013-02-26 | Altera Corporation | Large multiplier for programmable logic device |
US7930336B2 (en) * | 2006-12-05 | 2011-04-19 | Altera Corporation | Large multiplier for programmable logic device |
US7814137B1 (en) | 2007-01-09 | 2010-10-12 | Altera Corporation | Combined interpolation and decimation filter for programmable logic device |
US8650231B1 (en) | 2007-01-22 | 2014-02-11 | Altera Corporation | Configuring floating point operations in a programmable device |
US7865541B1 (en) | 2007-01-22 | 2011-01-04 | Altera Corporation | Configuring floating point operations in a programmable logic device |
US8645450B1 (en) | 2007-03-02 | 2014-02-04 | Altera Corporation | Multiplier-accumulator circuitry and methods |
US7949699B1 (en) | 2007-08-30 | 2011-05-24 | Altera Corporation | Implementation of decimation filter in integrated circuit device using ram-based data storage |
US8959137B1 (en) | 2008-02-20 | 2015-02-17 | Altera Corporation | Implementing large multipliers in a programmable integrated circuit device |
US8244789B1 (en) | 2008-03-14 | 2012-08-14 | Altera Corporation | Normalization of floating point operations in a programmable integrated circuit device |
US8626815B1 (en) | 2008-07-14 | 2014-01-07 | Altera Corporation | Configuring a programmable integrated circuit device to perform matrix multiplication |
US8255448B1 (en) | 2008-10-02 | 2012-08-28 | Altera Corporation | Implementing division in a programmable integrated circuit device |
US8307023B1 (en) | 2008-10-10 | 2012-11-06 | Altera Corporation | DSP block for implementing large multiplier on a programmable integrated circuit device |
US8706790B1 (en) | 2009-03-03 | 2014-04-22 | Altera Corporation | Implementing mixed-precision floating-point operations in a programmable integrated circuit device |
US8549055B2 (en) | 2009-03-03 | 2013-10-01 | Altera Corporation | Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry |
US8805916B2 (en) | 2009-03-03 | 2014-08-12 | Altera Corporation | Digital signal processing circuitry with redundancy and bidirectional data paths |
US8645449B1 (en) | 2009-03-03 | 2014-02-04 | Altera Corporation | Combined floating point adder and subtractor |
US8886696B1 (en) | 2009-03-03 | 2014-11-11 | Altera Corporation | Digital signal processing circuitry with redundancy and ability to support larger multipliers |
US8468192B1 (en) | 2009-03-03 | 2013-06-18 | Altera Corporation | Implementing multipliers in a programmable integrated circuit device |
US8650236B1 (en) | 2009-08-04 | 2014-02-11 | Altera Corporation | High-rate interpolation or decimation filter in integrated circuit device |
US8396914B1 (en) | 2009-09-11 | 2013-03-12 | Altera Corporation | Matrix decomposition in an integrated circuit device |
US8412756B1 (en) | 2009-09-11 | 2013-04-02 | Altera Corporation | Multi-operand floating point operations in a programmable integrated circuit device |
US7948267B1 (en) | 2010-02-09 | 2011-05-24 | Altera Corporation | Efficient rounding circuits and methods in configurable integrated circuit devices |
US8539016B1 (en) | 2010-02-09 | 2013-09-17 | Altera Corporation | QR decomposition in an integrated circuit device |
US8601044B2 (en) | 2010-03-02 | 2013-12-03 | Altera Corporation | Discrete Fourier Transform in an integrated circuit device |
US8458243B1 (en) | 2010-03-03 | 2013-06-04 | Altera Corporation | Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering |
US8484265B1 (en) | 2010-03-04 | 2013-07-09 | Altera Corporation | Angular range reduction in an integrated circuit device |
US8510354B1 (en) | 2010-03-12 | 2013-08-13 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8539014B2 (en) | 2010-03-25 | 2013-09-17 | Altera Corporation | Solving linear matrices in an integrated circuit device |
US8862650B2 (en) | 2010-06-25 | 2014-10-14 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8589463B2 (en) | 2010-06-25 | 2013-11-19 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8577951B1 (en) | 2010-08-19 | 2013-11-05 | Altera Corporation | Matrix operations in an integrated circuit device |
US8645451B2 (en) | 2011-03-10 | 2014-02-04 | Altera Corporation | Double-clocked specialized processing block in an integrated circuit device |
US9600278B1 (en) | 2011-05-09 | 2017-03-21 | Altera Corporation | Programmable device using fixed and configurable logic to implement recursive trees |
US8812576B1 (en) | 2011-09-12 | 2014-08-19 | Altera Corporation | QR decomposition in an integrated circuit device |
US8949298B1 (en) | 2011-09-16 | 2015-02-03 | Altera Corporation | Computing floating-point polynomials in an integrated circuit device |
US9053045B1 (en) | 2011-09-16 | 2015-06-09 | Altera Corporation | Computing floating-point polynomials in an integrated circuit device |
US8762443B1 (en) | 2011-11-15 | 2014-06-24 | Altera Corporation | Matrix operations in an integrated circuit device |
US8543634B1 (en) | 2012-03-30 | 2013-09-24 | Altera Corporation | Specialized processing block for programmable integrated circuit device |
US9098332B1 (en) | 2012-06-01 | 2015-08-04 | Altera Corporation | Specialized processing block with fixed- and floating-point structures |
US8996600B1 (en) | 2012-08-03 | 2015-03-31 | Altera Corporation | Specialized processing block for implementing floating-point multiplier with subnormal operation support |
US9207909B1 (en) | 2012-11-26 | 2015-12-08 | Altera Corporation | Polynomial calculations optimized for programmable integrated circuit device structures |
US9189200B1 (en) | 2013-03-14 | 2015-11-17 | Altera Corporation | Multiple-precision processing block in a programmable integrated circuit device |
US9348795B1 (en) | 2013-07-03 | 2016-05-24 | Altera Corporation | Programmable device using fixed and configurable logic to implement floating-point rounding |
US9379687B1 (en) | 2014-01-14 | 2016-06-28 | Altera Corporation | Pipelined systolic finite impulse response filter |
US9684488B2 (en) | 2015-03-26 | 2017-06-20 | Altera Corporation | Combined adder and pre-adder for high-radix multiplier circuit |
US10942706B2 (en) | 2017-05-05 | 2021-03-09 | Intel Corporation | Implementation of floating-point trigonometric functions in an integrated circuit device |
US10769329B1 (en) * | 2019-04-03 | 2020-09-08 | Synopsys, Inc. | Retention model with RTL-compatible default operating mode |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3500466A (en) * | 1967-09-11 | 1970-03-10 | Honeywell Inc | Communication multiplexing apparatus |
DE2330102A1 (de) * | 1972-10-13 | 1974-04-25 | Plasser Bahnbaumasch Franz | Verfahren und maschine zum verdichten der schotterbettung eines gleises, insbesondere unter gleichzeitiger verbringung dieses gleises in die soll-hoehenlage |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3849765A (en) * | 1971-11-30 | 1974-11-19 | Matsushita Electric Ind Co Ltd | Programmable logic controller |
JPS544584B2 (de) * | 1972-08-19 | 1979-03-08 | ||
US3878514A (en) * | 1972-11-20 | 1975-04-15 | Burroughs Corp | LSI programmable processor |
US3922538A (en) * | 1973-09-13 | 1975-11-25 | Texas Instruments Inc | Calculator system featuring relative program memory |
US3942158A (en) * | 1974-05-24 | 1976-03-02 | Allen-Bradley Company | Programmable logic controller |
US3990052A (en) * | 1974-09-25 | 1976-11-02 | Data General Corporation | Central processing unit employing microprogrammable control for use in a data processing system |
FR2288352A1 (fr) * | 1974-10-15 | 1976-05-14 | Burroughs Corp | Appareil et procede de traitement de donnees par association |
US3939335A (en) * | 1974-11-26 | 1976-02-17 | Texas Instruments Incorporated | Universal condition latch in an electronic digital calculator |
-
1976
- 1976-09-24 US US05/726,277 patent/US4212076A/en not_active Expired - Lifetime
-
1977
- 1977-02-04 GB GB4776/77A patent/GB1555609A/en not_active Expired
- 1977-09-14 GB GB38371/77A patent/GB1557610A/en not_active Expired
- 1977-09-22 JP JP52114488A patent/JPS5942892B2/ja not_active Expired
- 1977-09-24 DE DE19772743060 patent/DE2743060A1/de active Granted
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3500466A (en) * | 1967-09-11 | 1970-03-10 | Honeywell Inc | Communication multiplexing apparatus |
DE2330102A1 (de) * | 1972-10-13 | 1974-04-25 | Plasser Bahnbaumasch Franz | Verfahren und maschine zum verdichten der schotterbettung eines gleises, insbesondere unter gleichzeitiger verbringung dieses gleises in die soll-hoehenlage |
Non-Patent Citations (2)
Title |
---|
DE-Firmenschrift der Siemens u. Halske AG Datenverarbeitungsanlage 3003, Befehlsliste NV Bs 107/1 Mai 1963, S. 18 - 23 * |
US-Buch "Planning a Computer System", Mc Graw-Hill, 1962, S. 76-78 u. 87-89 * |
Also Published As
Publication number | Publication date |
---|---|
GB1555609A (en) | 1979-11-14 |
JPS5942892B2 (ja) | 1984-10-18 |
DE2743060C2 (de) | 1987-01-15 |
JPS5448137A (en) | 1979-04-16 |
US4212076A (en) | 1980-07-08 |
GB1557610A (en) | 1979-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2743060A1 (de) | Digitalrechner | |
DE4302495C2 (de) | Einrichtung und Verfahren zum Bestimmen der Länge eines Befehls in einem sequentiellen Befehlsstrom | |
DE2322674C3 (de) | Mikroprogramm-Steuereinrichtung | |
DE2524046C2 (de) | Elektronische Datenverarbeitungsanlage | |
DE1303416B (de) | ||
DE2023354A1 (de) | Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit | |
DE1901228A1 (de) | Datenverarbeitungsanlage mit Einrichtungen zur Wiederholung von Operationen bei Auftreten eines Fehlers | |
DE2910839A1 (de) | Einrichtung zur ausfuehrung einer speziellen verzweigungsinstruktion | |
DE2524229A1 (de) | Datenverarbeitungssystem mit pyramidenfoermiger hierarchie des steuerflusses | |
DE2321112A1 (de) | Elektrische signalverarbeitungsanlage | |
DE2248296A1 (de) | Programmsteuereinrichtung | |
DE2318069A1 (de) | Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix | |
DE2715073A1 (de) | Mikroprogrammierte rechner-steuervorrichtung | |
DE2440628A1 (de) | Datenverarbeitungsanlage mit mikroprogrammierung | |
DE2719278B2 (de) | Schaltungsanordnung für hintereinander geschaltete Steuereinheiten zum Anschluß von Ein/Ausgabegeraten an eine Datenverarbeitungsanlage | |
DE1179027B (de) | Speicherprogrammierte digitale Rechenanlage | |
DE2336333A1 (de) | Elektronischer tischrechner mit in mos-technik ausgefuehrter logischer schaltung | |
DE1193279B (de) | Elektronen-Ziffernrechner mit eingespeichertem Programm | |
DE2906685A1 (de) | Instruktionsdecodierer | |
DE1524117B1 (de) | Datenverarbeitungsanlage mit Umlaufregistern | |
DE1184122B (de) | Addiervorrichtung | |
DE1223177B (de) | Elektronischer Digitalrechner mit Schaltung fuer die Errechnung der Quadratwurzel aus einer Binaerzahl | |
DE1194605B (de) | Verbesserung an Geraeten zur Verarbeitung von Angaben, Informationen od. dgl. | |
DE1283895B (de) | Codeumsetzer zum Umsetzen eines beliebigen Eingangscode in einen beliebigen Ausgangscode | |
DE1212748B (de) | Datenverarbeitende Maschine mit Programmunterbrechung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8330 | Complete disclaimer |