DE1449568A1 - Datenverarbeitungssystem - Google Patents

Datenverarbeitungssystem

Info

Publication number
DE1449568A1
DE1449568A1 DE19631449568 DE1449568A DE1449568A1 DE 1449568 A1 DE1449568 A1 DE 1449568A1 DE 19631449568 DE19631449568 DE 19631449568 DE 1449568 A DE1449568 A DE 1449568A DE 1449568 A1 DE1449568 A1 DE 1449568A1
Authority
DE
Germany
Prior art keywords
register
circuit
command
program
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19631449568
Other languages
English (en)
Other versions
DE1449568B2 (de
DE1449568C3 (de
Inventor
Wise Harry Dearman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sperry Corp
Original Assignee
Sperry Rand Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sperry Rand Corp filed Critical Sperry Rand Corp
Publication of DE1449568A1 publication Critical patent/DE1449568A1/de
Publication of DE1449568B2 publication Critical patent/DE1449568B2/de
Application granted granted Critical
Publication of DE1449568C3 publication Critical patent/DE1449568C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/462Saving or restoring of program or task context with multiple register sets

Description

Sperry Rand Corporation
315 Park Avenue South
New York 10, New York, USA
Datenverarbeitungssystem i
Die vorliegende Erfindung betrifft die wahlweise Steuerung einer digitalen Rechenanlage mittels eines von mehreren gespeicherten Programmen. Insbesondere betrifft die vorliegende Erfindung eine Anlage, in der fuer jedes gespeicherte Programm besondere Funktionsregister vorgesehen sind.
Die bisher bekanntgewordenen digitalen Rechenanlagen mit gespeichertem Programm sind sehr haeufig mit einer Einrichtung ausgestattet, um das gerade ablaufende Programm beim Auftreten eines entsprechenden externen oder Befehlssignals zu unterbrechen. Bei den meisten dieser Anlagen ufird das Programm unterbrochen, indem die Ausschliesslichkeit des Unterbrich-Kanals dazu benutzt wird, die ._ Adresse eines in einem neuen Programm enthaltenen Befehls ° auazuuiaehlen. Vor Ausfuehrung des neuen Programms muss
co jedoch der Inhalt der indirekt adressierbaren Register, ω beispielsweise eines Befehlsadressenzaehlers, eines **"" Akkumulator-Registers oder dgl., aufbewahrt werden, ιό so dass die Steuerung zu einem spaeteren Zeitpunkt
wieder auf das unterbrochene Programm uebertragen werden kann. Hat beispielsweise das gerade ablaufende Programm ein Zwischenergebnis ermittelt, das in einem einzi-
gen Akkumulator-Register gespeichert ist, so muss dieses Zuiischenresultat an einer bestimmten Stelle gespeichert werden, um zu verhindern, dass es bei einer etwaigen Benutzung des Akkumulator-Registers waehrend der Ausfuehrung des Unterbrich-Programms verlorengeht. Hat die Anlage nur einen einzigen Befehlsadressenzaehler, so muss die Adresse des naechsten Befehls des laufenden unterbrochenen Programms ebenfalls irgendwo anders gespeichert ujerden, damit der Bef ehlsadressenzaehler anschliessend dazu benutzt werden kann, die Adressen des Unterbrich-Programms zu liefern. In einer Anlage mit zahlreichen Unterbrechungen kann also zuuiel Zeit fuer das Fusllen und U/iederfuellen von Funktionsregistern benoetigt werden.
Die vorliegende Erfindung vermeidet die sich aus einer Programmabwicklung mit zahlreichen Unterbrechungen ergebenden Nachteile dadurch, dass fuer jedes gespeicherte Programm eine besondere Gruppe von Funktionsregistern vorgesehen wird» Da jedes Unterbrich-Programm seine eigene vollstaendige Funktionsregistergruppe hat, ergeben sich bei den organisatorischen Befehlen, die jeweils bei der Umschaltung von einem Programm auf ein anderes erforderlich sind, wesentliche Einsparungen·
Aufgabe der vorliegenden Erfindung ist demgemaess, fuer jedes gespeicherte Programm besondere Funktionsregister vorzusehen, so dass fuer eine Steuerungsuebergabe von einem auf ein anderes Programm kein besonderes Oberprogramm erforderlich ist.
Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, fuer die einzelnen gespeicherten Programme eine gleichgrosse Anzahl von Befehlsadresse.inrichtungen vorzusehen, wobei jede Befehlsadresseinrichtung die Befehlsadressen von jeweils einem bestimmten Programm hintereinander erzeugen kann.
ο ■ - ■-.
o Eine weitere Aufgabe der vorliegenden Erfindung besteht
ο daring fuer jedes der gespeicherten Programme ein Akkuj, mulator-Register vorzusehen, so dass bei einer Aenderuniy ° der Programmsteuerung keine Zeit benoetigt wird, um ο den Inhalt eines Akkumulatorregisters an einer anderen Stelle abzuspeichern.
U49568
Aufgabe der Erfindung ist ausserdem, fuer jedes moegliche, gespeicherte Programm ein besonderes Indexmodifizierungs- ' register vorzusehen,
Das Datenuerarbeitungssystem, in dem die Erfindung insbesondere, jedoch nicht ausschliesslich, eingesetzt wird, ist so ausgebildet, dass die Funktionstegister an sich adressierbare Speicherstellen im eingebauten Schnellspeicher darstellen. Das einzige Speicheradressenregister wird also benutzt, um den Inhalt des Befehlsadressenzaehlers, des Akkumulatorregisters und des Indexmodifizierungsregisters abzurufen sowie die normalen Funktionen, d. h. Abruf von neuen Befehlen und deren Operanden, auszufuehren. Bei dieser Systemanordnung laeuft die Unterbrechung eines gerade ausgefuehrten Programms so ab, dass zuerst " das die Unterbrechung veranlassende Ereignis uiahrgenommen wird, um dadurch ein neues Befehlsadressenregister im eingebauten Speicher auszuuiaehlen, indem das die Unterbrechung veranlassende Ereignis dazu benutzt wird, die im eingebauten Speicher befindliche Adresse des Befehlsadressregisters zu "beeinflussen". Das die Unterbrechung veranlassende Ereignis dient ausserdem dazu, die Speicheradresse der verschiedenen indirekt adressierbaren Register, mis z. B. der Akkumulator- und Indexmodifizierungsregister, zu aendern.
Eine uieitere Aufgabe der vorliegenden Erfindung besteht demgemaess darin, ein Speicheradressenregister vorzusehen, \ dessen Inhalt durch ein bestimmtes eine Unterbrechung veranlassendes Ereignis geaendert werden kann, um in dem eingebauten Speicher wahlweise Funktionsregister auszuuiaehlen, die in Verbindung mit dem Unterbrichprogramm benützt werden.
J0 Muss uiaehrend der Ausfuehrung eines Programms ein an-
° deres gespeichertes Programm infolge des Auftretens
to eines eine Unterbrechung ausloesenden Ereignisses ange-
ω lassen werden, so muessen mittel vorgesehen werden, um
^ das unterbrochene Programm wieder in Erinnerung zu bringen.
*·> Im vorliegenden System wird zu diesem Zweck ein sogenann-
tes Unterbrichstatusregister vorgesehen, dessen Stufen jeweils durch ein besonderes eine Unterbrechung ausloesendes
Ereignis, das interner oder externer Natur sein kann, eingestellt werden. Obwohl zwei oder auch mehrere Stufen des Unterbrichstatusregisters sich gleichzeitig im Einstellzustand befinden, ist nur die Stufe mit der hoechsten Prioritaet bei der Auswahl der Funktionsregistergruppe fuer das diese Prioritaet aufweisende Programm wirksam.
Eine weitere Aufgabe der vorliegenden Erfindung besteht daher darin, ein Unterbrich-System mit einer zwischen den verschiedenen gespeicherten Programmen bestehenden Rangfolge vorzusehen, wobei jedes Programm seine eigene Gruppe von Funktionsregistern hat, um die fuer organisatorische Zwecke benoetigte Zeit zu verkuerzen,
Weitere Aufgaben und Merkmale der vorliegenden Erfindung ergeben sich aus der nachstehenden Beschreibung in Verbindung mit den Zeichnungen. Es zeigen:
Fig. 1 die Gesamtansicht eines Datenverarbeitungssystems, in welchem die vorliegende Erfindung insbesondere eingesetzt wird;
Fig. 2 die zur Realisierung der vorliegenden Erfindung verwendeten Grundverknuepfungselemente;
Fig. 3 Einzelheiten des Unterbrichstatusregisters;
Fig. 4 die Schaltungsanordnung zur Erzeugung von bestimmten Ein/Ausgabe-Unterbrichsignalen;
Fig. 5 die Einrichtung zur Steuerung der D-Taktregister;
Fig. 6 das U-Register, welches den gerade auszufuehrenden Befehl aufnimmt;
Fig. 7 das Speicheradressenregister, welches zur Ansteuerung einer bestimmten Speicherstelle des eingebauten Speichers dient;
Fig. 8 die Schaltkreise zur Entschluesselung von _ Operationsteilen bestimmter Befehle; <o Fig. 9 Einzelheiten des Befehlsschrittzaehlers:
-* Fig.10 Einzelheiten der Steuerkette;
«s^ Fig.11 «..18 Schaltungen zur Erzeugung von bestimm-
~* ten Befehlen;
so
ν Fig.19 verschiedene Schaltkreise zur Steuerung einer
Speicherzugriffsoperation;
Fig. 20 die Schaltungsanordnung, die zur Verringerung des Inhaltes eines D-Taktregisters oder zur Durchfuehrung einer Pufferung dient;
Fig. 21 Einzelheiten des Z-Registers;
Fig. 22 Einzelheiten des X-Registersj
Fig. 23 ein Zeitdiagramm, das die Ausfuehrung eines typischen Befehls veranschaulicht und
Fig. 24 ein Zeitdiagramm, aus dem die Arbeitsweise der Einrichtung zur Steuerung der D-Taktregister ersichtlich ist.
In den Zeichungen ist jedes Bauelement durch ein mit einem Bindestrich versehenes Bezugszeichen gekannzeich- ä net, wobei die links vom Bindestrich stehende(n) Ziffer(n) die Figur bezeichnen, in der sich das Bauelement befindet. Die Eingangssignale zu einer Figur sind weitgehend in abgekuerzter Form dargestellt, wobei nach der ftbkuerzung die Nummer der Figur angegeben ist, in der das betreffende Eingangssignal erzeugt wird. In einigen Faellen ist ohne Darstellung von Einzelheiten die Einheit angegeben, in der diese Signale erzeugt werden.
Fige 1 ist eine Gesamtansicht eines Datenverarbeitungesystems in schematischer Form, in welchem die vorliegende Erfindung insbesondere, jedoch nicht ausschliesslich, eingesetzt uiird. Das System stellt einen kleinen Digitalrechner mit eingespeichertem Programm dar, der sich in Systemen mit gleichzeitiger Datenverarbeitung (real time systems) u. a. als Nachrichten-Umschaltzentrale oder als Arbeitsablauf steuernder Datenlogger eingesetzt werden kann« Das System hat einen Kernspeicher mit beliebigem ^0 Zugriff fuer destruktives Herauslesen; seine Kapazitaet O betraegt 4096 Speicherstellen, die jeweils ein 7-Bit-Wort OO aufnehmen koennen, wobei jede Speicherstelle durch eine aus zuioelf Binaerbits (4 Oktalstellen) bestehende Adres- **** se bezeichnet ist. Der Zugriff zum Speicher zuiecks Ent- *> nähme oder Einspeicherung von Information erfolgt waehrend ^j eines Speicherzyklus, zu dem in der bekannten Weise
Lese- und lüiedereinschreibschritte gehoeren. Ein Befehl besteht aus 14 Binaerbits, die zusammengesetzt werden, indem zu/ei 7-Bit-Uioerter in aufeinanderfolgenden Speicherzyklen aus benachbarten Speicherstellen abgerufen uiarden. Die sieben niedrigstwertigen Bits sind in einem Wort enthalten, das an einer geradzahligen Speicheradresse aufbewahrt uiirdj die sieben hoechstuiertigen Bits des -Befehls befinden sich dagegen in der naechsthoeheren, ungeradzahligen Speicherstelle. So kann beispielsweise ein Befehlswort aus zwei 7-Bit-liiaertern bestehen, die in den Speicheradressen 3128 (oktal) und 3127 (oktal) aufbewahrt werden. Der nach seinem Abruf aus dem Speicher aus 14 Bits zusammengesetzte Befehl enthaelt einen vier Bits umfassenden Operations-Kennteil f, einen aus zu/ei Bits bestehenden Akkumulatorregister-Kennteil a, einen aus zwei Bite bestehenden Indexregister-Kennteil b und einen sechs Bits umfassenden Operand-Kennteil y. Die Bitstellen, uielche von diesen Kennteilen im Befehl eingenommen u/erdan, sind nachstehend aufgefuehrt, wobei die in den Stellen O..„6 befindlichen Bits in der geradzahligen Speicherstelle und die in den Stellen 7».»13 befindlichen Bits in der naechsthoeheren, ungeradzahligen Speicherstelle aufbewahrt werden.
13 12 11 10 9 8 7 6 5 4 3 2 10 f ab y
iiiit dem aus vier Bits bestehenden Operatians-Kennteil f verfliegt das vorliegende System ueber ein Repertoire von 16 Grundoperationen. Wird aus dem Speicher ein Operand zwecks Ausfuehrung eines Befehls entnommen, so werden die sechs niedrigen Bits der, Operandadresse vom Kenntsil y des Befehls bereitgestellt, waehrend dia
sechs hoeheren Bits der Operandadresss sich aus dem In— co ■. ;° · ■ ■■--""
O halt eines der vier Indexregister zusammensetzen, die
^ zum Teil durch den aus zwei Bits bestehenden Kennteil —* b des Befehls bezeichnet sind. Diese Indexregister -ν. werden nachstehend mit B-Register bezeichnet» Der 7-Bit-J0 Operand;, der aus der durch diese zusammengesetzte j2-B.it-Adresse bezeichneten Speicherstelle stammt, kann arithmetisch mit einem aus sieben Bits bestehenden liiert vereinigt werden, der in einem der vier Speicheradressen
enthalten isti' die zum Teil durch den 2-Bit-Kennteil a ' des Befehls bezeichnet sind. Diese durch den Kennteil a bezeichneten! Register uierden nachstehend mit A-Register oder Akkumulator-Register bezeichnet, In dem vorliegenden System stellen die A- und B-Register bestimmte Speicherstellen im Kernspeicher dar. Bei Ein- und Ausgabebefehlen wird der Kennteil a dagegen zur Kennzeichnung bestimmter Ein/Ausgabeoperationen benutzt, beispielsweise zur Kennzeichnung der Richtung, in welcher Information zwischen einer externen Einheit und dem Speicher uebertragen wird«, Andererseits wird der im Α-Register befindliche Ufert bei einigen Nich.t-Ein/Ausgabeoperationen nicht benoetigt; in diesen Faellen kann der Kennteil a zur weiteren Kennzeichnung der Funktion benutzt werden, wodurch f sich die Anzahl der Bits des Operations-Kennteils f auf sechs erhoeht.
Figo 1 zeigt ausserdem noch die nachstehend aufgefuehrten nicht zum Kernspeicher gehoerenden Register, die aus Kippschaltungsstufen bestehen. Das S-Register enthaelt eine 12-Bit-Adresse zur Ansteuerung des Speichers. Das Z-Register stellt einen aus sieben Bits bestehenden Speichereingang dar, der von saemtlichen aus dem Speicher entnommenen Informationen passiert werden muss, bevor diese entweder der externen Einheit oder den anderen Flip-Flop-Registern zugeleitet werden* Das Z-Register enthaelt ausserdem den Operanden des Α-Registers. Das ,
X-Register nimmt den aus dem Speicher entnommenen 7-Bit-Operanden auf, dessen Speicheradresse zum Teil aus dem Kennteil y des Befehls besteht. Das Addierwerk ist als Verknuepfungsmatrix ausgebildet, welche Eingangssignale sowohl vom Z- als auch vom X-Register erhaelt und ein Ausgangssignal erzeugt, welches die Summe der co beiden in diesen Registern befindlichen Werte darstellt. ^ Das U/iedereinschreiben von Information in den Speicher kann entweder vom Z-Register oder vom Ausgang des Addierto werkes aus vorgenommen uierden. Das aeusserste linke Bit _» dee 7-Bit-0peranden ist ein Vorzeichenbit; ist dieses Bit Null, so ist der Operand positiv. Das Rechenwerk «o . fuehrt die Rechenoperationen nach dem Ein-Komplement-Subt-raktionsverfahren mit Endborger (Enduebertrag) aus.
U49568
Nachstehend sind einige Beispiele der im vorliegenden System verwendeten 7-Bit-Zahlen aufgefuehrt»
dezimal oktal binaer
0 000 0 000 000
1 001 0 000 001
28 034 0 011 100
63 077 0 111 111
-63 100 1 000 000
-28 143 1 100 011
- 1 176 1 111 110
- 0 177 1 111 111
Das in Fig. 1 gezeigte U-Register wird normalem/eise zur Aufnahme des 14-Bit-Befehls benutzt, der gerade ausgefuehrt wird. Ausserdem dient dieses Register auch als Transferregister beim Erlangen der Befehlsadresse. Zur Entschlues.selung des Operations-Kennteils f ist eine Funktionsentschluesselungseinrichtung vorgesehen, so dass die entsprechenden Befehlssignale zur Ausfuehrung der Operation erzeugt werden koennen. Diese Be-■fehlssignale werden in erster Linie von einer Befehlssignaleinrichtung des Systems unter dem Einfluss dar entschluesselte'n Funktion sowie von Taktsignalen erzeugt« Die Taktsteuerung ihrerseits ist mit einem Haupttaktgeber synchronisiert, der vier Taktphasen CP1, CP2, CP3 und CP4 erzeugte Diese Taktphasen werden im Zyklus nacheinander ohne Ueberlappung erzeugt und auch den anderen Schaltkreisen des Systems in der in Verbindung mit den uebrigen Figuren noch zu beschreibenden Weise zugefuehrt. Das R-Register besteht aus zwoelf Stufen und dient waeh— rend einer Iüiederholbefehlsfolge zur Aufnahme und Modifizierung der Operandadresse, Ausserdem nimmt dieses Register die naechste Adresse auf, u/enn der Betrieb in der Betriebsart "Ein/Ausgabepuffer" erfolgt. Acht I
to Bits dieses Registers u/erden zur Verringerung des ll/ie-
_». derholzaehlerstandes waehrend der Wiederhol- und Puffer-
ί^ befehle benutzt. Das RK-Register ist Bin 8-Bit-lüieder-—* holregister, dessen Inhalt bei jeder wiederholten vn Befehlsiteration oder pufferartigen Uebertragung verringert wird, um die Anzahl der noch auszufuehrenden Iterationen bzw0 die Anzahl der noch zu uebertragendsn
1U9568
Zeichen anzuzeigen. Die normale Beendigung einer Wiederhol- oder Pufferoperation wird dadurch angezeigt, dass der Inhalt dieses Registers gleich 0 geworden isto Wird eine Wiederholoperation durch das Vorfinden einer Auslassbedingung beendet, so ujerden die unteren sieben Bits dieses Registers automatisch an die Kernspeicheradresse 0124 (oktal) abgespeichert. Der Addierer R+1 erhoeht bziu, verringert den Inhalt des RK-Registers.
Zum System gehoeren ferner zwei identische Ein/Ausgabekanaele 1 und 2. Beide Kanaele arbeiten unabhaengig " voneinander, jedoch kaennen auf dem gleichen Kanal nicht gleichzeitig Ein- und Ausgabeoperationen vorgenommen luerden. Die Ein- oder Ausgabe kann in den Kanaelen ä entweder ueber Puffer oder mittels Programm erfolgen. In der Betriebsart "gepufferte Ein/Ausgabe" ujerden vom und zum Speicher mehrere Uloerter uebertragen, uiaehrend in der Betriebsart "programmierte Ein/Ausgabe" stets nur ein einziges Informationswort uebertragen uiird. Ein üJort kann bis zu sieben Binaerbits enthalten. Bei Ausfuehrung einer gepufferten Ein/Ausgabeoperation kann ein Programm in der Mitte eines Befehls unterbrochen uterdan, um den Speicher zuiecks Uebertragung des Zeichens anzusteuern. Die Betriebsart "gepufferte Ein/Ausgabe11 u»ird durch Programmierung eines Uliederholbefehls bewerkstelligt, an den sich einer der Ein/Ausgabebefehle anschliesst» Auf diese üleise wird eine Ein/Ausgabepuffer- I operation eingeleitet, deren Laenge durch den Wiederhol-* befehl bezeichnet ist. Die erste Pufferspeicheradresse ist normalerweise durch den Ein/Ausgabebefehl bezeichnet; weitere Adressen werden dann erzeugt, indem die erste Adresse in Liebereinstimmung mit dem lüiederholbefehl mit +1, 0 oder -1 modifiziert uiirde Nach Einleitung einer Pufferoperation laeuft das Programm weiter ab.
to Folgt auf einen UliederholbBf ehl ein Nicht-Ein/Ausgabe-
rrt befahl, so wird der naechstfolgende Befehl in Ueberein- *** Stimmung mit einem im Wiederholbefehl enthaltenen Kenn- -* teil bis zu 256 Iterationen wiederholt. Die erste Operand- φ , adresse des wiederholten Befehls ist normalerweise die in diesem Befehl enthaltene Adresse; diese wird sodann
in Uebereinstimmung mit Binem im UJiederholbefehl ent~ haltenen Kennteil fuer jede anscbliessende Iteration geaendert, wobei +1 , 0 oder -1- hinzuaddiert wirdo tiiie-· derholfolgen iuerden normalerweise beendet, indem sie die vorgesehene Anzahl von Iterationen durchlaufen« ' UJird jedoch waehrend der liliederholoperation eine Auslassbedingung vorgefunden, dann wird der Inhalt des U/ieder — holregisters, der die Anzahl der noch nicht durchgefuehrten Iterationen bezeichnet, in eine bestimmte Speicher- stelle eingespeichert, worauf der Auslassbefehl ausge« fuehrt wird.
iliie zuvor erwaehnt u/urde, befinden sich die vier A-Register sofflie die vier B-Register, die durch jedes Befehlswort bezeichnet werden koennen, an bestimmten Speicherstellen im Kernspeichere Im Kernspeicher befindet sich ferner das Befehlsadressenregister P, das aus zu/ei neben« einanderliegenden Speicherstellen besteht, in denen sich die Adresse des naechsten auszufuehrenden Befehls befindete Ausserdem ist im Kernspeicher eine Gruppe von vier 7-Bit-Taktregistern Delta Q, Delta 1, Delta 2 und Delta enthalten, die dazu benutzt werden, die Programmabwicklung zeitlich zu steuern» Der Inhalt dieser Delta-Register, der zwischen 001 und 100 (oktal) liegt, u/ird unter dem Einfluss eines in der D-Zeitgebereinrichtung enthaltenen Oszillators jeweils einmal pro Hilillisekunde um eins verringert. Durch diesen 64 Schritte umfassenden Bereich lassen sich somit Ereignisse bis zu etwa 62,5 Millisekunden zeitlich steuern.
Das in Fig. 1 gezeigte System enthaelt ausserdem eine Unterbrich-Einrichtung, welche die wahlweise Ausfuehrung eines von acht verschiedenen im Speicher gespeicherten Programmen ermoeglichtc Die Abwicklung der einzelnen *° Programme erfolgt in einer bestimmten Reihenfolge. Ent-
CD ·
cd sprechend ihrem Einsatz in'dam hier dargestellten Daten-
__^ uebertragungssystem sieht die vorliegende Erfindung
ω fuer jedes dieser Programme eine besondere Gruppe von
—*■ Funktionsregistern A und B souiie ein Bef ehlsadressenre- *
tn gistsr P vor» Dadurch verringert sich die Anzahl der
organisatorischen Befehle, die andernfalls beim Ueber« gang von einem Programm auf das andere benoetigt wusrden.
Das nachstehend mit I-Register bezeichnete Unterbrichstatusregister ist ein 7-Bit-Flip-Flop~Register und dient dazu,, zwischen den acht moeglichen Programmen eine Umschaltung zu bewirken,. Durch das Auftreten eines von sieben βϊπθ Unterbrechung veranlassenden Ereignissen wird eine entsprechen-de Stufe des I-Registers eingestellt; das unterste Päoritaetsniveau erzeugt keine Unterbrechung«, Zu Beginn eines Befehlszyklus wird durch die eingestellte I-Rsgisterstufe mit der hoechsten Prioritaet ein 3-Bit-* IC-Register auf einen Wert eingestellt, der dazu benutzt wird, ein Adresskennzeichen fuer die Ansteuerung eines bestimmten P-Register.s im Speicher vorzusehen. Dieses P-Register enthaelt die Adresse eines in dem mit Vorrang abzuwickelnden Programm enthaltenen Befehls, so dass f
die zu diesem Programm gehoerenden Befehle abgerufen werden koennen. lllaehrend der eigentlichen Ausfuehrung eines Befehls wird der Inhalt des IC-Registers ausserdem in Verbindung mit den Befehlskennteilen a und b dazu benutzt, die fuer dieses Programm reservierten Register A und B anzusteuern» Durch dieses Merkmal kann innerhalb der acht Hauptprogramme eine Steuerungsuebergabe nach Belieben erfolgen, ohne dass dabei fuer ein Programm die Gefahr besteht, "ausser Tritt zu kommen"; ausserdem wird durch dieses Merkmal verhindert, dass der Inhalt der fuer ein Programm vorgesehenen Funktionsregister durch ein anderes Programm beeinflusst uiird„ Darueber hinaus kann das I-Register zu beliebigen Zeiten durch neue eine Unterbrechung veranlassende Ereignisse geaendert werden, ahne dabei die Auswahl einer Gruppe von Funktionsregistern uiaehrend eines Befehlszyklus zu aendern.
Die in dem Kernspeicher enthaltenen Funktionsregister be« tu stehen in den einzelnen Unterbrichniveaus jeweils aus *j? folgenden Registern: vier 7-Bit-Registern AO0..A3, vier o> 7-Bit-Registern BO0.„B3 und einem 14-Bit-Befehlsadressenc*> register P, das aus zwei nebeneinanderliegenden Speicher- _^ stellen besteht. In der untenstehenden Tabelle sind in oktaler Darstellung die Speicheradressen fuer die zu den cn
u> einzelnen Unterbrich-Niveaus gehoerenden Register aufge-
- 12 -
14Λ9568
fuehrto Da' f uer jede Speicheradresse zuioelf Binaerbits erforderlich sind, bestehen die Oktalzahlen jeweils aus vier Stellen (vier Gruppen zu je drei Binaerbits). Der Bindestrich bedeutet, dass die dazwischenliegenden Zah~ len miteingeschlossen sinde
Unterbrichniveau (I-Register) O (niedrigste Prioritaet)
Adresse (oktal) Register
0000-0003
0004-0007
0100,0101
A0-A3
B0-B3
P
0010-0013
0014-0017
0102,0103
A0-A3
B0-B3
P
0020-0023
0024-0027
0104,0105
A0-A3
B0-B3
P
0030-0033
0034-0037
0106,0107
A0-A3
B0-B3
P
0040-0043
0044-0047
0110,0111
A0-A3
B0-B3
P
0050-0053
0054-0057
0112,0113
A0-A3
B0-B3
P
0060-0063
0064-0067
0114,0115
AO-A3
B0-B3
P
0070-0073
0074-0077
0116,0117
A0-A3
B0-B3
P
7 (hoechste Prioritaet)
Wie sich aus den obenstehenden Angaben ergibt, haengt die Ausiuahl eines bestimmten A- oder B-Registers u/aehrend der Ausfuehrung eines Befehls von zuiai Faktoren ab: 1. von dem bestimmten Programm, zu dem der Befehl gehoert, und 2. von dem UJert des Kennteils a oder bt der in dem betreffenden Befehl enthalten ist«, Ausserdem ist fuer jedes Programm ein Befehlsadressenregister P vorgesehen, das die Adressen der in diesem Programm auszufuehrenden Befehle nacheinander liefert.
lüerden durch ziuei oder mehrere eine Unterbrechung veranlassende Ereignisse die entsprechenden Stufen des I-Registers gleichzeitig eingestellt, so u/ird von diesem Register bestimmts welches Programm mit Vorrang abzuwickeln iste Die Rechenanlage kann also stets nur durch.
ein Programm gesteuert werden, und dieses Programm ist normalerweise dasjenige Programm, welches die hoechste Prioritaet besitzt. Die eigentlichen die Unterbrechung hervorrufenden Ereignisse, die zur Einstellung der Stufen des I-Registers dienen, koennen interner oder externer Natur sein, lüird z. B0 der Inhalt sines der Delta-Register im Speicher bis auf Null verringert (mit Ausnahme won Delta 0), so wird eine bestimmte Stufe des I-Registers eingestellt. Andererseits wird durch die Beendigung einer Ein/Ausgane-Datenuebertragung zwischen der Rechenanlage und einer externen Einheit gleichfalls eine Stufe des I-Registers eingestellt, so dass die Rechenanlage unter dem Einfluss dieser Beendigung ein anderes Programm ausfuahrtv Zur Einstellung der Stufen des I-Reyisters koennen Teile des Befehls selbst benutzt werden* Andere Unterbrechung veranlassende Ereignisse koennen programmiert Dder in Uebereinstimmung mit dem jeweiligen System vorgesehen werden, in dem die vorliegende Erfin« dung eingesetzt wird.
In der nachstehenden Tabelle sind die Grundbefehle des Repertoires aufgefuehrt. Der aus vier Bits bestehende Operationsteil f ist oktal dargestellt, wobei die Bits 10...12 zur unteren Stelle gehoeren. Des weiteren werden folgende Bezeichnungen benutzt:
( ) = der in Klammern angefuehrte Inhalt des Registers oder der Adresse
Aa = das durch den Kennteil a und das die Steuerung ausuebende Unterbrichniveau bezeichnete Akkumulatorregister
Bb = das durch den Kennteil b und das die Steuerung ausuebende Unterbrichniveau
co bezeichnete Indexregister
co Yb s die aus 12 Bits bestehende Adresse des
_* Operanden, deren unters sechs Bits vom
J^ Kennteil y dargestellt werden und deren
—* obere sechs Bits vom Inhalt (Bits O.,.5)
cn ' des Bb-Registers gebildet werden
AH-
1U9568
NI = naechster Befehl
UL = die unteren sieben Bits des U-Registere
Operationsteil Bezeichnung
Beschreibung
00 01
10 11 12 Addiere
u/ahlu/eise Komplementbildung
02 (a = 0) addiere 1, ver
gleiche
02 (a = D addiere 1
02 (a = 2} gerade Paritaets-
kontrolle
02 (a = 3) ungerade Paritaets
kontrolle
03 Vergleichs
04 Komplement bilden
05 logisches Produkt
06 in Akkumulator
eingeben
07 Index-Auslassuno
in Kanal 1 eingeben
in Kanal 2 eingeben
Anfangsuiert von (Aa) durch Summe aus (Aa) und (Yb) ersetzt
Die den "1"ern in (Yb) entsprechenden Bitstellen von (Aa) werden komplementiert
(Yb) um 1 erhoehen, wenn Resultat positiver als Ao, NI auslassen
(Yb) um 1 erhoehen
NI auslassen, u/enn (Yb) gerade Paritaet
-NI auslassen, wenn (Yb) ungerade Par.
NI auslassen, iuenn (Aa) * (Yb)
(Aa) durch Komplement von (Yb) ersetzen
(Ao) durch logisches Produkt aus (Aa) und (Yb) ersetzen
(Aa) durch (Yb) ersetzen
NI auslassen, wenn (Aa) s (Yb); sonst addiere 1 zu (Aa)
(Yb) in Kanal 1 eingeben und E/A-Operation laut a einleiten
(Yb) in Kanal 2 eingaben und E/AOperation laut a einleiten
Kanal 1 abspeichern Kanal 1 bei Yb
abspeichern und entsprechend f*ariiaet Kanal 1 und a auf Auslassung ppuefen
Operationsteil
14 (a » 0)
14 (a * 1)
14 (a = 2)
14 (a = 3)
16 (a=3)
17 (a=Ji, b + 0) 17 (a=0, b * 0)
17 (atf)
- 15 -
Bezeichnung
Beschreibung
Kanal 2 abspeichern
in I eingeben
in I eingeben
in B eingeben
in B eingeben
Akkumulator abspeichern
wiederhole
Puffersprung Kanal 2 bei Yb abspeichern und entsprechend Paritaet Kanal 2 und a auf Auslass pruefen
Stufen des I-Registers wahlweise entsprechend den "1M ern von (UL) einstellen
Stufen des I-Registers wahlweise entsprechend den M0H en von (UL) raeumen
6 Bits von (Yb) in untere 6 Stufen von Bbj 0 in obere Stufe von Bb
6 Bits von (Yb) in untere 6 Stufen von Bb; 1 in obere Stufe von Bb
(Aa) und Yb abspeichern
wenn NI wiederholbarer Nicht-Ein/Ausgabebefehl, dann "b y" mal wiederholen
uiBnn NI = in Kanal 1 eingeben oder in Kanal 2 eingeben, dann Pufferuebertragung von "b y" UJoertern vornehmen
u/enn Pufferung laut RK a D fertig, auf Yb ueberspringen
unbedingter Sprung nach Yb
unbedingter Sprung nach Yb, dann soeben benutzte Stufe des I-Registers raeumen
uienn (Aa) (Ao), Sprung nach Yb
909813/1259
Fig. 2 zeigt die verschiedenen Schaltsymbole, die fuer die Darstellung der logischen Elemente in den folgenden Figuren benutzt werden. Das Grunduerknuepfungselement ist in -Fig<> 2a dargestellt und besteht aus einem pnp-Transistor 2-10, dessen Basis als Eingang und dessen Kollektor als Ausgang dient. Dieser Schaltkreis kann eine oder mehrere Eingangsklemmen aufweisen; in Fig,j 2a sind drei Eingangsklemmen dargestellt. Uiird eine der Eingangsdioden 2-11.1..2-13 durch ein an ihrer Eingangsklemme anliegendes relativ niedriges (oder relativ negatives) Signal leitend gemacht, so fliesst der Strom durch die UJiderstaende 2-14 und 2-15, wodurch die Basis des Transistors 2-1D weniger Spannung aufweist als der Emitter. Durch den Widerstand 2-16 fliesst also Kollektorstrom, so dass an der Ausgangsklemme 2-17 ein relativ hohes (oder relativ positives) Signal auftritt. Die Diode 2-09 dient dazu, den Ausgang bei NichtVorhandensein eines Eingangssignals auf eine vorbestimmte Schwelle festzuklemmen, ^ind dagegen saemtliche Eingangsdioden durch ein an ihrer jeweiligen Eingangsklemme anliegendes relativ positives Signal in nichtleitendem Zustand vorgespannt, so wiPd die Basisspannung groesser als die Emitterspannung und sperrt damit den Kollektorstromflusse Dadurch erscheint an der Ausgangsklemme 2-17 ein relativ negatives Potential. Der in Fig, 2a gezeigte Grundschaltkreis arbeitet also als eine UND-Invertier-Schaltung, indem er ein relativ negatives Ausgangssignal erzeugt, wenn an seinen saemtlichen Eingaengen positive Signale anliegen» Wird die Schaltung als UND-Invertier-Schaltung eingesetzt, so erfasst sie die gleichzeitige Ankopplung von positiven Eingangssignalen an ihren saemtlichen Eingaengen; die Schaltung wird in diesem Fall mit dem in Fig. 2b dargestellten Schaltsymbol bezeichnete Anderer»
o seits erzeugt der in Figo 2a dargestellte Grundschalt-.
oo kreis ein positives Ausgangssignal, wenn an' einem oder
^ an saemtlichen seiner Eingaenge negative Signale anlie»
"^ gen« In diesem Fall fuehrt der Schaltkreis bezueglich
ro der festgestellten relativ negativen Eingangssignale
^3 eine ODER-Funktion aus. Uiird der Grundschaltkreis in dieser Weise benfctzt, so wird er mit dem in Fig« 2c
H49568
dargestellten Schaltsymbol bezeichnet« Weist der Schaltkreis nur eine Eingangsklemme auf, so arbeitet er lediglich als Negator, indem er das Eingangssignal negiert« Diese Funktion uiird durch das Schaltsymbol in Fig<> 2d dargestellte In den folgenden Zeichnungen liegen die Eingangsleitungen mitunter an zuiei oder mehreren Seiten des Schaltsymbols an.
Eine Dioden-ODER-Schaltung ujird ausserdera in einigen der Figuren dazu benutzt, die Ausgängssignale won verschiedenen NUND-Schaltungen (UND-Invertier-Schaltungen) zusammenzufassen. Diese Torschaltung ist durch das Schaltsymbol 2-32 dargestellt; ihren Aufbau zeigt Figo 2e« Zwei oder mehrere Eingangsdioden 2-22 und 2-23 liegen mit ihren Anoden am Verbindungspunkt 2-24, Zwischen dem Verbindungspunkt 2-24 und einer positiven Spannungsquelle +V liegt ein Widerstand 2-25a Das am Verbindungspunkt 2-24 vorhandene Potential folgt dem an den Eingangsdioden anliegenden negativsten Signal, so dass der Schaltkreis bei einem negativen Eingangssignal stets ein negatives Ausgangssignal erzeugt.
Eine bistabile Kippschaltungsstufe besteht aus ziuei NODER-Schaltungen 2-26 und 2-27, die in der in Fig» 2f gezeigten Weise verschraenkt miteinander gekoppelt sind. Eine solche Schaltungskombination kann durch Anlegen eines negativen Signals an einen Eingang von ihrem einen Zustand in den anderen Zustand umgekippt uierden. So soll beispielsweise angenommen uierden, dass die in Fig„ 2f gezeigte Kombination sich in einem Zustand befindet, in welchem das Ausgangssignal der NODER-Scha^tung 2«26 positiv und das Ausgangssignal der NODER-Schaltung 2-27 negativ iat. Die an saemtlJchen Eingangsklemmen 2-28.„„2-31 angelegten Signale sind positiv. Wird das negative Aus-
CO gangssignal der NODER-Schaltung 2-27 an einen Eingang
Φ zur NODER-Schaltung 2-26 angelegt, so wird das Ausgangssignal der zuletztgenannten NODER-Schaltung positiv *·> gehalten. Das positive Ausgangssignal der NODER-Schal-•Λ tung 2-26 bewirkt in Verbindung mit den positiven Ein- ^1 gangssignalen an den Klemmen 2-3Q und 2-31 , dass 'das •β. Ausgangssignal der NQDER-Schaltung 2-27 negativ ist. Dieser Spannungszustand des Schaltkreises ist daher
stabil und kann nur durch Anlegen eines negativen Signals an eine oder beide Eingangsklemmen 2-30 bzuio 2-31 der NODER-Schaltung 2-27 geaendert werden» Tritt dieser Fall ein, dann u/ird das Ausgangssignal der NODER-Schaltung 2-27 positiv. Das positive Ausgangssignal der NDDER-Schaltung 2-27 wird an einen Eingang zur NODER-Schaltung 2-26 angelegt, deren andere Eingaenge immer noch positiv zu dieser Zeit sind. Das Ausgangssignal der NODER-Schaltung 2-26 u/ird daher negativ, wodurch das Ausgangssignal dBr NODER-Schaltung 2-27 positiv wird« Das Signal am Eingang 2-30 kann jetzt positiv werden, ohne das positive Ausgangssignal der NODER-Schaltung 2-27 zu zerstoeren, da diese Torschaltung noch immer ein negatives Eingangssignal vom Ausgang der ^ODER-Schaltung 2-26 erhaelto Zur Erzeugung einee weiteren positiven Ausgangssignals der NODER-Schaltung 2-26 muss dann wiederum ein negatives Eingangssignal an einen der Eingaenge 2-2B oder 2-29 angelegt u/erden.
In den folgenden Zeichnungen werden die einzelnen Kippschaltungsstufan nicht durch die aus ztuei NQDER-Schaltungen bestehende Kombination, sondern durch das Schaltsymbol gemaess Fig. 2g dargestellt« Die beiden verschiedenen bistabilen Zustaende lassen sich definieren, indem den Ausgaengen die Werte 0 und 1 zugeordnet werden, so dass sich eine Kippschaltung entweder Im Zustand 0, d« he im Raeumzustand, oder im Zustand 1,-d. h. im Einstellzustand, befindet, je nachdem, an welcher Ausgangsklsmme das positive Signal auftritt.
Figo 3 zeigt Einzelheiten des Unterbrichstatusregisters I, das zur vorliegenden Erfindung gehoert. In dem dargestellten Ausfuehrungsbeispiel besteht das I-Register aus sieben Kippschaltungsstufen 11,. »17, die zur Umschalco tung zwischen acht moeglichen Unterbrichniveaus benutzt ^0 werden. Durch das Auftreten eines von sieben verschiedenen eine Unterbrechung veranlassenden Ereignissen co (im untersten Prioritaetsniveau wird keine Unterbrechung _i erzeugt) wird eine entsprechende Stufe des I-Registers *° eingestellt,. Fig. 3 zeigt ausserdem das IC-Register, welches aus drei Kippschaltungsstufen besteht und unter dem Einfluss der eingestellten, die hoechste Prioritasi
H49568
aufweisenden Stufe des I-Registers ein binaer verschluesseltee Zeichen erzeugt. Zu Beginn eines Befehlszyklus eird das IC-Register zur Bereitstellung eines Adressenkennzeichans benutzt, das bei der Ansteuerung der Funktionsregister P, A und B fuer diesen Befehl mitbenutzt »ird.
Durch diesen neuartigen Aufbau kann innerhalb der acht Hauptprogramme eine Steuerungsuebergabe nach Belieben erfolgen, ohne dass dabei fuer ein Programm die Gefahr besteht, "ausser Tritt zu kommen" oder dass die Funktionsregister eines Programms von einem anderen Programm beeinflusst uierden.
zuvor ausgefuehrt wurde, sind in dem System, in uielehern die vorliegende Erfindung insbesondere eingesetzt wird, acht Prioritaetsniveaus oder eine Unterbrechung veranlassende Ereignisse vorgesehen, die nachstehend beginnend mit der hoechsten Prioritaet - aufgefuehrt sind
1* Unterbrichniveaü 7
Das Signal "Kanal 1 besonderer Zustand" wird in Fige 4 erzeugt und in der Taktphase CP2 an die NUND-Schaltung 3-10 angelegt, durch deren Ausgangssignal die Stufe 17 eingestellt wirde Dieses Signal tritt stets dann auf, wenn eine nicht gewollte oder unerwartete Ein/Ausgabeoperation, uiie beispielsweise eine "externe Funktion" oder "Wechselbedingung", von der Grenzf laechenlogik der Nachrichteneinheit des Real-Time-Rechners erzeugt wird.
2«, Unterbrichniveau 6
Das Signal "Kanal 1 Operation beendet" erscheint an der, NUND-Schaltung 3-11 und wird in der Taktphase CP2 ausgeblendet, um die Stufe 16 stets dann einzustellen, wenn eine programmierte Datenuebertragung auf dem Kanal 1 ω beendet ist und eine weitere Datenuebertragung somit ° von einem Programm eingeleitet werden kann, lüaehrend c» der Pufferoperation auf dem Kanal 1 wird der Inhalt des ω RK-Registers mit der Uebertragung des letzten Wortes ^ auf 0 verringert, so dass die Stufe 16 durch die NUND-N5 Schaltung 3-52 eingestellt wirdo
cn
<e 3. Unterbrichniveau 5
Sobald das dem Niveau 5 zugeordnete !Millisekunden-Takt-
register den Zaehlerstand 0 erreicht hat, uiird die Stufe 15 durch ein Ausgangssignal der NUND-Schaltung 3-12 eingestellt«. Diese NUND-Schaltung u/ird zum Teil durch das Befehlssignal "Unterbrichstufe einstellen", das ueber den Negator 3-13 angelegt uiird, geoeffnet; dieses Signal zeigt an, dass im Taktregister der Zaehlerstand Null festgestellt worden ist„ Ausserdem sind die beiden Signale D1 und D2 positiv, um anzudeuten, dass das dem Unterbrichniveau 5 zugeordnete Rlillisekunden-Taktregister gerade geprueft wird« Zu beachten ist, dass dae Freigabe-Signal des Negators 3-13 auch an anderen NUND-Schaltungen anliegt, deren Funktion noch nachstehend beschrieben
4. Unterbrichniveau 4
Die Stufe 14 wird durch ein Signal der NUND~Schaltung 3-14 in der Taktphase CP2 stets dann eingestellt, wenn das Signal "Kanal 2 besondere Bedingung" auftritt, das fuer den Kanal 2 dieselbe Bedeutung hat wie das Signal "Kanal 1 besondere Bedingung" fuer den Kanal 1.
• 5„ Unterbrichniveau 3
Die Stufe 13 wird durch die NUND-Schaltung 3-15 waehrend
der Taktphase CP2 eingestellt, wenn auf dem Kanal 2 eine programmierte Datenuebertragungsoperation beendet ist, was durch das Signal "Kanal 2 Operation beendet" angezeigt wird, lüaehrend einer Pufferoperqtion auf dem Kanal 25tifird das RK-Register bei der Uebertragung des letzten Wortes auf 0 verringert, so dass die Stufe 13 durch die NUND-Schaltung 3-53 eingestellt wird,
6« Unterbrichniveau 2
Wird das diesem Niveau zugeordnete ITlillisekunden-Taktregister auf den Inhalt Null geprueft und dieser Inhalt festgestellt, so liegen an saemtlichen Eingaengen der o NUND-Schaltung 3-16 positive Signale an, wodurch die *° Stufe 12 eingestellt wird. Die Identitaet dieses Taktco
-» registers wird durch die positiven Signale D1 und D2
.^ angegeben, waehrend der InhaJt Null durch das ueber den
J^ Negator 3-13 angekoppelte Befehlssignal "Unterbrichstufe
cn einstellen" bezeichnet ist.
" 21 ' 1U9568
7, Unterbrichniveau 1
UJIe in den Unterbrichniveaus 5 und 2 wird die Stufe 11 durch die NUND-Schaltung 3-17 eingestellt, sobald der Inhalt des diesem Unterbrichniveau zugeordneten RIiIIisekunden-Taktregisters den liiert 0 erreicht hat. Dieses Taktregister wird durch die positiven Signale D1 und D2~ bezeichnet, uiaehrend das Befehlssignal "Unterbrichstufe einstellen" andeutet, dass der Inhalt Null ist. Zu bB-achten ist, dass die NUND-Schaltungen 3-12, 3-16 und 3-17 nicht alle zur gleichen Zeit geoeffnet werden koennen, da an ihren Eingaengen jeweils eine andere Kombination von D1 und D2-Signalen anliegto
8e Unterbrichniveau Q μ
Dieses Unterbrichniveau besitzt die kleinste Prioritaet der acht Niveaus} fuer dieses Niveau ist keine Stufe im I-Register vorgesehen. Sind also saemtliche Stufen des I-Registers geraeumt, arbeitet die Steuerung der Rechenanlage auf dem Niveau 0.
Zu Beginn eines Befehlszyklus werden die Stufen des IC-Registers normalerweise auf einen Zustand eingestellty welcher der bis zu diesem Zeitpunkt eingestellten I-Registerstufe mit der hoechsten Prioritaet entspricht. Die Stufen IC1 , IC2 und IC3 erzeugen Signale, welche das eingestellte Unterbrichniveau mit der hoechsten Prioritaet in binaer verschluesselter Form darstellen, Muss > das IC-Register auf diesen Zustand eingestellt werden, so wird stets das Befehlssignal "I nach IC" erzeugt und ueber den Negator 3-18 an die NUND-Schaltungen 3-19, 3-20, 3-21 und 3-22 angelegt. Solange dieses Befehlssignal anliegt, werden saemtliche Stufen des IC-Registers in der Taktphase CP3 von der NUND-Schaltung 3-19 eingestellt. In der naechstfolgenden Taktphase CP4 werden die
O NUND-Schaltungen 3-20, 3-21 und 3-22 geoeffnBt, um den
O0 Zustand des I-Registers zu erfassen und dabei die 7* entsprachenden Stufen des IC-Registers zu raeumen, **» so dass durch den endgueltigen Zustand des IC-Registers tv> das binaer verachluesselte Zeichen erzeugt wird. Ist ^ z.B. die Stufe 17 eingestellt und zeigt damit das Unterbrichniveau 7 an, so ist das Signal TT negativ und
H49568
verhindert damit die Oeffnung einer der NUND-Schaltungen 3-20.„,3-22. Da die Stufen IC1...IC3 zu Beginn auf eine binaere 1 eingestellt morden sind, aendert sich ihr Zustand also auch dann nicht, wenn das Befehlssignal "I nach IC" und CP4 anliegen. Die Ausgangssignale IC1 , IC2 und IC3 sind daher positiv/ und stellen somit das binaer verschluesselte Zeichen 111 dar, welches den Oktal tuert 7 hat« Nimmt man dagegen an, dass lediglich die Stufe 16 des I-Registers eingestellt ist, so ist das Si.-gnal 16 negativ/ und das Signal 17 positiv, da davon ausgegangen wird, dass die Stufe 17 jetzt geraeumt iste Durch das negative Signal Te" iuird verhindert, dass die NUND-Schaltungen 3-20 und 3-21 ein negatives Signal erzeugen und dadurch die Stufe IC3 bzuie IC2 raeumen« Das Signal 16 tuird ausserdem an die NUND-Schaltung 3-23 angelegt, die ihrerseits der NUND-Schaltung 3-22 ein positives Signal zufuehrt. Da das Signal 17 positiv ist, uiird dieses Tor geoeffnet und raeumt die Stufe IC1 . Der Inhalt des IC-Registers lautet daher 110 und stellt den Dktaliuert 6 in binaer verschluesselter Form dar,
Die Raeumung der entsprechenden IC3-Stufen durch eine andere Gruppe von Stufen des I-Registers erfolgt ueber die oben angefuehrten Leitungen. AJs weiteres Beispiel soll der Fall betrachtet werden, in u/elchem lediglich die Stufe 13 eingestellt ist. In diesem Fall erzeugt die NUND-Schaltung 3-24 ein positives Ausgangssignal. Da angenommen wird, dass die Stufen 15 und 14 geraeumt sind, liegen an saemtlichen Eingaengen zur NUND-Schaltung 3-25 positive Signale an, so dass dieses Tor ein negatives Ausgangssignal fuer die NUND-Schaltung 3-21 erzeugt« Die NUND-Schaltung 3-21 kann daher nicht die Stufe IC2 raeuraen. Dagegen sind die Eingangssignale der NUND-to Schaltung 3-20 saemtlich positiv, da alle Stufen I4.O.I7 ^ zu dieser Zeit geraeumt sein sollen. Die Stufe IC3 wird daher geraeumto Da die Stufe 13 eingestellt und die co Stufe 14 geraeumt ist, erzeugt die NUND-Schaltung _» 3-54 ein negatives Ausgangssignal, u/odurch das Aus- · £j gangssignal der NUND-Schaltung 3-26 positiv wird* «ο Die Stufe 16 ist geraeumt, so dass das Ausgangssignal der NUND-Schaltung 3-23 negativ ist, wodurch die Oeffnung
der NUND-Schaltung 3-22 verhindert, uiird und die Stufe IC1 somit eingestellt bleibt» Der Inhalt des IC-Registers lautet jetzt 011 und bezeichnet damit das Unterbrichniveau
Noch ein weiteres Beispiel duerfte genuegen, um die Raeumung der IC-Registerstufen entsprechend den eingestellten Stufen des 1-Regis.ters zu veranschaulichend Ist nur die Stufe 11 eingestellt, dann erzeugt die NUND-Schaltung 3-27 ein negatives Ausgangssignal, wodurch das Ausgangssignal der NUND-Schaltung 3-26 positiv wird. Dieses po~ sitive Ausgangssignal bewirkt in Verbindung mit dem positiven Signal Ϊ6, dass die NUND-Schaltung 3-23 ein negatives Signal erzeugt und damit die Raeumung der Stufe IC1 verhindert« Da die Stufen 12 und 13 geraeumt sind, ist das Ausgangssignal der NUND-Schaltung 3-24 negativ, wodurch die NUND-Schaltung 3-25 ein positives Signal erzeugt. Ebenso sind auch die Stufen 16 und I? geraeumt, so dass die NUND-Schaltung 3-21 oeffnet und die Stufe IC2 raeumt. In gleicher Weise sind saemtliche Eingangssignale der NUND-Schaltung 3-20 positiv, wodurch die Stufe IC3 geraeumt wird und der Inhalt des IC-Registers nunmehr 001 lautet. Befindet sich keine der Stufen des I-Registers im Einstellzustand, dann werden also saemtliche NUND-Schaltungen 3-20.„„3-22 geoeffnet und erzeugen negative Ausgangssignale, wodurch saemtliche Stufen des IC-Registers geraeumt werden.
Wie oben gezeigt wurde, wird das Register I wahlweise durch das Auftreten eines eine Unterbrechung veranlassenden Ereignisses eingestellt. Treten zwei oder mehrere derartige Ereignisse auf, so dass sich die entsprechenden Stufen des I-Registers zur selben Zeit im Einstellzustand befinden, so kann die Steuerung nur von dem Programm uebernommen werden, das die hoechste Prioritaet aufweist.
ο Dies bedeutet, dass ein anschliessend auftretender
co Unterbrichzustand, der eine hoehere Prioritaet aufweist, m_x · die Steuerung von einem vorher angelassenen Programm einer niedrigeren Prioritaet uebernimmt. Nach Ausfueh-» -* rung eines Befehlszyklus findet gewoehnlich einB Steuerungs«
(J1 uebergabe bei dem Prioritaetsprogrammen statt; ausgenom- *° men hiervon sind einige besondere Faelle, die nachstehen!! beschrieben werden. Als Beispiel soll angenommen werden,
dass nur die Stufe 13 eingestellt ist und das laufende Programm die Prioritaet 3 aufweist« Der* Inhalt des I" Registers lautet zu dieser Zeit 0000100. UJaehrend der Abwicklung- des Programms mit der Prioritaet 3 kann das Ereignis, u/elches die Unterbrechung fuer das zweite Prioritaetsniveau veranlasst, auftreten,, Der Inhalt des I-Registers aendert sich dann in 0000110, da jetzt auch die Stufe 12 eingestellt ist«, Das Programm des dritten Prioritaetsniveaus uebernimmt aber auch weiterhin die Steuerung, uienn esnoch auszufuehrende Befehle enthaelt, da durch den Einstellzustand der Stufe 13 das IC-Register auf den Wert 011 eingestellt bleibt, und zwar unabhaengig won der Tatsache, dass die Stufe 12 jetzt ebenfalls eingestellt ist. Es soll jetzt angenommen werden, dass kurze Zeit spaeter, uuaehrend gerade ein Befehl des Programms der dritten Prioritaet ausgefuehrt wird und beide Stufen -13 und 12 eingestellt sind, das die Unterbrechung fuer das sechste Prioritaetsniveau v/eranlassende Ereignis auftritt» Der Inhalt des I-Registers wird jetzt 0100110, und die Steuerung der Rechenanlage geht unmittelbar nach Ausfuehrung des zum Programm der dritten Prioritaet gehojerenden Befehls automatisch auf das Programm der sechsten Prioritaet ueber, vorausgesetzt 9 dass dieser Befehl einen Nichtauslass-, Nichtsprungoder Nichtwiederholoperationsteil enthaelt= Der Inhalt des IC-Registers lautet fuer das Programm der sechsten Prioritaet 110; dieser Inhalt wird durch den Einstellzustand der Stufe 16 erhalten, obwohl auch die Stufen 13 und 12 eingestellt sinde Dies ergibt sich aus der Tatsache, dass die NUND-Schaltung 3-20 oder 3-21 infolge des negativen Signals 16 die ihr zugeordnete IC-^tufe nicht raeumen kann. Ausserdem erzeugt die NUND-Schaltung 3-23 unter dem Einfluss des negativen Signals To" o ein positives Signal, das in Verbindung mit dem positiven Jg Signal 17 der Stufe 17 die NUND-Schaltung 3-22 oeffnet, -* um die Stufe IC1 zu raeumen. Die eingestellten Stufen .^ 13 und 12 koennen also den Inhalt des IC-Registers ""* zu dieser Zeit nicht beeinflussen.
Q0 Sobald ein Programm einer beliebigen Prioritaet vollstaendig abgewickelt ist, wird die fuer dieses Programm
U49568
eingestellte Stufe des !-"Registers geraeumt, so dass die Steuerung nunmehr an das Programm des naechsthoeheren eingestellten Prioritaetsniveaus abgegeben u/erden kann» Zur Bestimmung der Bitkonstellation im IC-Wegister ist eine Gruppe von NUND-Schaltungen 3-28„.„3-34 vorgesehen. So erhaelt die NUND-Schaltung 3-28 beispielsweise Eingangssiynale von den Einstellausgangsklemmen der Stufen IC3, IC2 und IC1, so dass die im IC-Register enthaltene Bitkonstellation 111 die Oeffnung der NUND-Schaltung 3-2B beim Auftreten eines bestimmten Zustandes bewirkt. Die uebrigen NUND-Schaltungen 3-29o..3~33 sprechen ebenfalls jeweils auf eine andere Kombination von IC-Register« stufen an, um die Raeumung der ihnen zugeordneten I-Registerstufe nach Abwicklung eines gerade auf diesem Prioritaetsniveau ausgefuehrten Programms zu ermoeglichen» Die eigentliche Raeumung einer I-5tufe erfolgt mit der Er« zeugung des Befehlssignals "Unterbrechung beenden", das ueber den Negator 3-35 angekoppelt uiird„ Dieses Befehlssignal wird unter dem Einfluss der Ausfuehrung eines Sprungbefehls erzeugt, der einen Operationsteil 17 enthaelt und dessen Kemtatle a und b jeweils gleich 0 sind0 Ein solcher Befehl ist am Ende eines jeden Programms der einzelnen Unterbrichniveaus vorgesehen. Zur Veranschaulichung soll in dem oben angefuehrten Beispiel angenommen werden, dass das Unterbrichprogramm mit einem Sprungbefehl, dessen Kennteile a und b jeweils 0 sind, zu Ende geht. Das Befehlssignal "Unterbrechung beenden" wird erzeugt und saemtlichen NUND-Schaltungen 3-28,..3-34 zugefuehrt. Da der Inhalt des IC-Registers jedoch 110 lautet, wird nur die NUND-Schaltung 3-29 in der Taktphase CP4 geoeffnet, um die Stufe 16 zu raeumen. Die Stufen 13 und 12 bteibBn eingestellt, so dass der Inhalt des IC-Registera jetzt 011 wird und das Programm des dritten Priori-
u> taetsniveaus wieder weiter abgewickelt wird. Wird von
(jP hier an keine weitere I-Registerstufe einer hoeheren
^ Prioritaet eingestellt, so werden die uebrigen Befehle
ω des Unterbrichprogramms 3 ausgefuehrt. Der letzte Befehl
_* dieses Programms ist gleichfalls ein Sprungbefehl, des-
^ sen Kennteile a und b gleich O sind; dieser Befehl uer-
*o anlasst die Erzeugung des Befehlssignals "Unterbrechung
H49568
beenden". Zu dieser Zeit kann infolge der im IC-Register befindlichen Konstellation 011 lediglich die NUND-Schaltung 3-32 geoefFnet uierden. Das am Ausgang dieser NUND-Schaltung auftretende negative Signal bewirkt die Raeumung der Stufe 13, so dass jetzt nur noch die Stufe 12 eingestellt ist«, Der Inhalt des IC-Registers uiird daher 0000010, worauf das Programm des zweiten Unterbrichniveaus die Steuerung uebernimmto Treten waehrend der Abuiicklung des fuer das zweite Unterbrichniveau vorgesehenen Pro— - gramms keine Ereignisse auf, durch welche eine Unterbrechung mit hoeherer Prioritaet ausgeloest u/ird, dann geht dieses Programm mit einem Sprungbefehl zu Ende, nach dessen Ausfuehrung wiederum das Befehlssignal "Unterbrechung beenden" erzeugt wird. Diesmal wird die NUND-Schaltung 3-33 geoeffnet, da sich im IC-Register die Bitkonstellation 010 befindet, wodurch die Stufe 12 geraeumt wird. Nachdem jetzt saemtliche Stufen des I-Registers geraeumt sind, ist das IC-Register auf den liiert 0000000 eingestellt, der das Unterbrichprogramm D bezeichnete Es wird also jetzt das dem Prioritaetsniveau 0 zugeordnete Programm unverzueglich ausgefuehrt, sofern nicht eine Stufe des I-Registers durch irgendein Ereignis einer hoeheren Prioritaet eingestellt wird.
Im vorliegenden Ausfuehrungsbeispiel sind aussardem Vorkehrungen getroffen, um den Inhalt des I-Registers mit Hilfe eines gerade ausgefuehrten Befehls zu aendern. So koennen beispielsweise der Kennteil y und das untere Bit des Kennteils b eines Befehlswortes zur Einstellung der I-Stufen entsprechend den in dem Kennteilen enthaltenen binaeren Einsen benutzt werden. Die NUND-Schaltungen 3-36«..3-42 sprechen jeweils auf eine andere Stufe des UL-Registers an. Wird das Befehlssignal "UL nach I" ueber den Negator 3—43 angelegt, so stellen
ο diejenigen NUND-Schaltungen 3-36...3-42, die in ihrer
cd entsprechenden U-Stufe eine 1 abtasten, die ihnen züge—
^ ordnete I-Stufe auf den U/ert 1 ein. Das Befehlssignal ***» "UL nach I" wird erzeugt, wenn der Operationsteil des · ro Befehlswortes gleich 14 und der Kennteil a gleich 00 (f, ist« Andererseits koennen aber auch anstelle der im UL-Register befindlichen Einsen die dort enthaltenen
~ 27 ~
Nullen in das I-Register ueberf-uehrt tuerden. Die NUND-Schaltungen 3-44..,3-50 sprechen auf die im UL-Register enthaltenen Bite 0 bei Erzeugung des ueber den Negator 3-51 angelegten Befehlssignals "U1L nach I" an; dieser Befehl tritt dann auf, uienn f gleich 14 und a gleich 1„
Fig. 4 zeigt die Steuereinrichtung Kanal 1, welche die dem I-Register (Fig» 3) zugefuehrten Signale "Kanal 1 besondere Bedingung11 und "Kanal 1 Operation beendet" erzeugt» Die Kippschaltungen 4-10.,.4-13 sind zur Speicherung von Mitteilungen vorgesehen, die von externen Ein/Ausgabegeraeten kommen«, Die von den externen Einheiten zu den Negatoren 4-31o.»4-34 fuehrenden Eingangsleitungen haben normalerweise eine positive Spannung, so dass saemtliche zugeordneten Kippschaltungen 4-1 0«, „ »4-13 eingestellt werden. Befinden sich diese Kippschaltungen im Einstellzustand, so wird von ihnen an den einen Eingang der ihnen zugeordneten NUND-Schaltungen 4-14...4-17 Bin positives Potential angelegt. Solange jedoch die Negatoren 4-31...4-34 negativ bleiben, koennen diese Tarschaltungen nicht geoeffnet werden«, Liegt an einem der Eingan.gsnegatoren ein negatives Signal an, so erzeugt dieser Negator ein positives Signal, wodurch am Ausgang der ihm zugeordneten NUND-Schaltung 4-14. „,4-17 ein negatives Signal auftritt« Erzeugt z. B« eine dem Kanal 1 zugeordnete externe Einheit ein negatives Signal "Ulechselbedingung" oder "externe Funktion", dann uiird die NUND-Schaltung 4-14 bzw» 4-15 geoeffneto lilaehrend der programmierten Uebertragung eines Wortes auf Kanal 1 wird ein negatives Signal "Eingabebeetaetigung" oder "Ausgabebestaetigung" erzeugt, je nachdem, in welcher Richtung die Uebertragung erfolgt} durch dieses Signal tuird die NUND-Schaltung 4-14 bzw. 4-17 geoeffnet«
co Sobald das Ausgangssignal einer der NUND-Schaltungen
fO 4~14..o4-i7 negativ iuird, erzeugt die NODER-Schaltung
» 4-18 ein positives Signal, das an den einen Eingang
o> der NUND-Schaltung 4-19 angelegt wird. Normalerweise
_» befinden sich die Kippschaltungen 4-20 und 4-22 im
^ Raeumzustand« Ist die Kippschaltung 4-22 geraeumt und
*ό erzeugt die NODER-Schaltung 4-1B ein positives Signal, dann »ird die NUND-Schaltung 4-19 in der Taktphase CP4
geoeffnet, um diB Kippschaltung 4-20 einzustellen,, Ist diese Kippschaltung 4-20 eingestellt, dann liegt an jeweils einem Eingang der NUND-Schaltungen 4-23 und 4-25 ein positives Signal an„ Ausserdem wird durch die Kippschaltung 4-20 ein positives Signal an die NUND-Schaltung 4-21 angelegt, die zur naechstfolgenden Taktphase CP2 geoeffnet wird, um die Kippschaltung 4-22 einzustellen,, Ist der Einstellzustand der Kippschaltung 4-12 oder' 4-13 fuer die Einstellung der Kippschaltung 4-20 verantwortlich, so erzeugt die NODER-Schaltung 4-24 ein positives Ausgangssignal, wodurch die NUND-Schaltung 4-23 ueber den Negator 4-35 geoeffnet wird und das positive Signal "Kanal 1 Operation beendet" erzeugt, das dem in Fig«. 3 gezeigten I-rRegister zugefuehrt wird, um die Stufe 16 einzustellen!, Ist dagegen eine der beiden Kippschaltungen 4-10, 4-11 eingestellt, dann erzeugt die NODER-Schaltung 4-26 ein positives Signal, wodurch die NUND-Schaltung 4-25 ueber den Negator 4-36 geoeffnet wird, um das positive Signal "Kanal 1 besondere Bedingung" zu erzeugen.
Da die Kippschaltung 4-22 in der Taktphase CP2 eingestellt wird, ist das Ausgangssignal des Negators 4-28 positiv, wodurch die NUND-Schaltungen 4-29 und 4-30 in der naechsten Taktphase f»CP3 bzw» CP4 geoeffnet werden» Durch die zuerstgenannte Torschaltung wird die Kippschaltung 4-20 geraeumt, luaehrend die zuletztgenannte Torschaltung diejenige Kippschaltung der Gruppe 4~10eo*4-13 raeumt, deren Eingangssignal negativ ist. Diese geraeumte Kippschaltung kann erst dann wieder eingestellt werden, wenn ihr Eingangssignal wieder positiv wird. Da also jedes dieser Eingangssignale, nachdem es negativ geworden ist, fuer unbestimmte Zeit in diesem negativen Zustand verharren kann, getuaehrleistet somit die Anordnung nach Fig. 4 stets nur ein einmaliges Ansprechen auf die jeweilige
cd negative Umsteuerung«
oo Zur Erzeugung der Signale "Kanal 2 besondere Bedingung"
co und "Kanal 2 Operation beendet" ist eine Schaltungsan-
^ Ordnung vorgesehen, die darPin.Figfl 4 gezeigten Anord-
1(0 nung aehnlich ist, jedoch nicht im einzelnen dargestellt
to isto
Fig« 5 zeigt Einzelheiten des D-Taktkreisaa, der zur Verringerung des Inhaltes von saemtlichen vier IKIiIIi-sekunden-Delta-Speicharregistern D, 1, 2 und 5 vorgesehen ist» Ein Rechteckoszillatar 5-10 arbeitet mit einer Frequenz von 4096 Perioden/min« In jeder Periode wird der Inhalt eines anderen Ta.ktregisters um eins verringert» Dies bedeutet, dass der Inhalt eines Taktregisters 1024 mal in der Sekunde verringert mirdB Zum Zu/eck der Beschreibung sind die Taktregister mit Delta 0, Delta 1, Delta 2 und Delta 5 bezeichnet, wobei sich die Nummer auf dasjenige Unterbrichniveau bezieht, das eingestellt wird, wenn das Taktregister den Wert 0 hato Hat das Register Delta 5 beispielsweise den Zaehlerstand 0 er» reicht, so wird die Stufe 15 des I-Registers (Fig.. 3) auf 1 eingestellt und jedes Programm mit einer geringeren Prioritaet als 5 unterbrochen. Erreicht dagegen das Re~ gister Delta 0 den Zaehlerstand U9 dann wird keine Unter» brichstufe eingestellt, da in diesem Fall ein Fehler in der Maschine angezeigt wird, der von der Bedienungsperson zu beseitigen ist«
Die Delta-Te,ktregister befinden sich an folgenden in oktaler Schreibseise angefuehrten adressierbaren Spei»* cherstallen:
Taktregister Speicheradresse
Delta 0 0120
Delta 1 0121
Delta 2 0122
Delta 5 0123
Diese Taktregister nehmen natuerlich jeweils sieben Bits auf. 3edes Register kann auf eine bestimmte positive Zahl gleich oder kleiner als 100 (oktal) eingestellt werden, wozu ein Befehl "in A einlesen" (Funktionscode Q6) und dann ein Befehl 11A abspeichern" (Funktt> tionacode 15) benutzt wird. Zeigt die Schaltungsanord- -* nung nach Figo 5 an, das3 ein Taktregister auf den ^ neusten Stand zu bringen ist (inhalt verringern), so ""* wird vom Taktregister der liiert 1 abgezogen«, Ist die Dif- <n ferenz 0, so tuird die dem Taktregister entsprechende
Stufe des. I-Registers auf 1 eingestellt. Ist die Differenz nicht 0, so uiird keine Unterbrichstufe eingestellt.
U49568
Ist die Differenz dagegen negativ, dann luird in das Speicherregister der liiert -0 gespeichert, und es tritt keine Unterbrechung auf. Diese Operationen u/erden durch eine nicht dargestellte Schaltungsanordnung ausgefuehrt.
Fig. 5 zeigt zwei Kippschaltungen 5-11 und 5-12, die zusammen als Ziueistufenzaahler arbeiten, um anzugeben, welches Dalta-Register auf den letzten Stand zu bringen ist«. Die Ausgangssignale dieser Kippschaltungen werden sowohl in Fig. 3 als auch im S-Register benutzt. Die Kippschaltung 5-11 enthaelt das niedrigstwertige Bit und die Kippschaltung 5-12 das hoechstiuertige Bit. Unter der Annahme, dass die Zaehlfolge beginnt, wenn die beiden Kippschaltungen geraeumt sind, laeuft der Zaehlzyklus wie folgt ab:
00 bezeichnet Delta 0
01 bezeichnet Delta 1 11 bezeichnet Delta 2 10 bezeichnet Delta 5
Aussardem ist eine dritte Kippschaltung 5-13 vorgesehen, um die Umschaltung der Kippschaltungen 5-11 und 5-12 zu unterstuetzen« Darueber hinaus sind verschiedene NUND-Schaltungen 5-i4e,.5-20 vorgesehen, um die Zaehloperation auszufuehren. ^iese Schaltungen arbeiten wie folgt» Zunaechst soll angenommen werden, daas beide Kippschaltungen 5—11 und 5-12 geraeumt sind, so dass die Signale Iff und D2 positiv sind. Diese Signale bezeichnen das Taktregister Delta Q. Erzeugt der Oszillator 5-10 ein positives Signal, so wird durch den Negator 5-21 ein negatives Signal an die NUND-Schaltungen 5«14eeo 5-17 angelegt, wodurch eine Aenderung des Zustandes der Zaehlstufen verhindert wird« Das Ausgangssignal des Negators 5-21 wird aber ausserdem noch ueber den Negator co 5-22 invertiert, so dass an jeweils einem Eingang der co NUND-Schaltungen 5-18...5-20 ein positives Signal an-
co ——
_i liegte Da beide Signale D2 und D1 positiv sind, wird
^ die NUND-Schaltung 5-20 geoeffnet, um die Kippschaltung % -* 5-13 einzustellen. Dadurch gelangt an jeweils einen cn Eingang der NUND-Schaltungen 5-16 und 5-17 ein positives Signal. Wird das Ausgangssignal des Oszillators 5-10 sodann negativ, erscheint am Ausgang des Negators
U49568
5-21 ein positives Signal. Dadurch wird das Ausgangssignal des Negators 5-22 negativ, so dass die NUND-Sehaltungen 5-18«..5-20 jeweils ein positives Signal erzeugen und dadurch eine Aenderung des Zustandes der Kippschaltung 5-13 so lange verhindern, wie sich der Oszillator 5-10 in seiner negativen Halbperiode befindet« Das Befehlssignal "D-Taktregister weiterschalten" wird von einer Steuereinrichtung zu irgendeinem Zeitpunkt u/aehrend der negativen Halbperiode des Oszillators erzeugt, um an jeuieils einen Eingang der NUND-Schaltungen 5-14... 5-17 ein positives Signal anzulegen; ausserdem liegt an diesen NUND-Schaltungen noch jeweils ein weiteres positives Signal vom Ausgang des Negators 5-21 an« Von diesen vier Torschaltungen sind jedoch nur saemtliche Eingangssignale der NUND-Schaltung 5-1? positiv, da das Signal D2 positiv ist und da nur am Einstellausgang der Kippschaltung 5-13 ein positives Signal auftritt« Ulaehrend des Auftretens des Befehlssignals "D-Taktregister wei« terschalten" stellt also die NUND-Schaltung 5-17 die Kippschaltung 5-11 ein, so dass der Zaehlerstand jetzt 01 lautet und damit das Taktregister Delta 1 bezeichnet.
UJaehrend der naechsten positiven Halbperiode des Oszillators 5-10 sird das Signal des Negators 5-21 negativ, wodurch die NUND-Schaltungen 5-14o. „5-.17 gesperrt werden. Das Ausgangssignal des Negators 5-22 wird wieder positiv. Da waehrend dieser positiven Halbperiode die Kippschaltung 5-")1 eingestellt wird und die Kippschaltung 5-12 geraeumt bleibt, koennen weder die NUND-Schaltung 5-19 noch die NUND-Schaltung 5-2G geoeffnet werden, da bei keiner dieser beiden NUND-Schaltungen saemtliche Eingangssignale positiv sind. Beide Torschaltungen erzeugen daher positive Signale, die zusammen mit dem positiven Ausgangssignal des Negators 5-22 die NUND-Schal-
o tung 5-18 oeffnan, um die Kippschaltung 5-13 zu raeumen.
OO lüenn sich also der Oszillator 5-10 wieder in seiner nega-
^ tiven Halbperiode befindet, tuird die NUND-Schaltung *"■*· 5-15 nach Anlegen des Befehlssignals "D-Taktregiater lsi ttieiterschalten" geoeffnet, um die Kippschaltung 5-12 jjjj einzustellen, da ihre Eingaenge infolge des positiven Signals D1 und des positiven Signals der Rueckstellklemme
der Kippschaltung 5«13 positiv sind. Oer Zaehlerstand aendert sich von 01 auf 11 und bezeichnet damit das Register Delta 2. Sobald der Oszillator 5-10 mieder eine positive Halbperiode erzeugt, uiird die Kippschaltung 5-13 erneut durch die NUND-Schaltung 5-19 eingestellt, die jßtzt auf die positiven Signale D1 und D2 anspricht. Wenn also der Oszillator 5-10 nunmehr wieder negativ u/ird, oeffnet die NUND-Schaltung 5-13, um die Kippschaltung 5-11 zu raeumen und den Zaehlerstand von 11 auf 10 zu aendern (Delta 5). UJaehrend der naechsten positiven Halbperiode des Oszillators 5-10 wird die NUND-Schaltung 5-18 erneut geoeffnet, um die Kippschaltung 5-13 einzustellen, so dass in der naechsten negativen Halbperiode des Oszillators 5-10 die NUND-Schaltung 5-14 geoeffnet luird, um die Kippschaltung 5-12 zu raeumen und damit den Zaehlerstand mieder auf die Ausgangsstellung 00 zu bringen.
Fig. 5 zeigt ausserdem drei Steuerkippschaltungen 5-23, 5-24 und 5-27, die zur Einleitung der Folge von Arbeitsschritten benutzt werden, durch welche das Befehlssignal "D-Taktregister tueiterschalten" erzeugt wird» Diese Kippschaltungen sind normalerweise alle garaeumto Befindet sich der Oszillator 5-10 in seiner positiven Halbperiode, so erzeugt der Negator 5-25 ein negatives Ausgangssignal, wodurch die Kippschaltung 5-23 eingestellt wird. Das am Einstellausgang der Kippschaltung 5-23 auftretende positive Signal wird an die NUND-Schaltung 5-26 angelegt. Diese Torschaltung ist jedoch auch mit dem Ausgang des Negators "5-25 verbunden, so dass sie erst dann oeffnet und damit die Kippschaltung 5-24 einstellt, u/enn der Oszillator 5-10 wieder eine negative Halbperiode erzeugt«, Wird die Kippschaltung 5-24 im Anschluss an die Aendarung
o der Polaritaet der Halbperiode des Oszillators in der ^ Taktphase CP3 eingestellt, so erscheint an ihrem Ein- -» stellausgang ein positives Signal, waehrend an ihrem ^ Raeumausgang ein negatives Signal auftritt. Die NUND-Jj^ Schaltung 5-30 kann also in der naechsten Taktphase *** CP1 geoeffnet werden, sofern an ihren anderen Eingangsklemmen positive Signale anliegen« Diese anderen am Eingang der NUND-Schaltung 5-30 anliegenden Signale werden
noch weiter unten beschrieben« Durch die Oeffnung der NUND-Schaltung 5-30 luird die Kippschaltung 5-27 eingestellt, um das Befehlssignal "D-Taktregister ansteuern" zu erzeugen, welches der Figur 20 zugefuehrt uiird und dort zur Erzeugung des Befehlssignals "D-Taktregister weiterschalten11 fuehrt»
Das negative Ausgangssignal der NUND-Schaltung 5-30 wird ausserdem zur Raeumung der Kippschaltung 5-23 benutzt« Ist die Kippschaltung 5-27 eingestellt, so erzeugt sie ein positives Signal fuer die NUND-Schaltung 5-28 ueber 5-32, so dass die Kippschaltung 5-24 in der auf dia Einstellung der Kippschaltung 5-27 folgenden Taktphase CP3 geraeumt wird. Beide Kippschaltungen 5-23 und 5-24 bleiben so lange geraeumt, bis der Oszillator 5-1Q wieder positiv luird und damit ueber den Negator 5-25 die Kippschaltung 5-23 einstellt»
let die Kippschaltung 5-27 eingestellt und die Kippschaltung 5-24 geraeumt, so liegen an zwei Eingaengen der NUND-Schaltung 5-29 positive Signale an. An den anderen Eingaengen dieser Torschaltung liegt ein bestimmter Zeitiwpuls T7 soioie öin öefehlssignal "Zyklus genehmigen" an, so dass dieses Tor ein negatives Bafehlssignal "Unterbrichstufe einstellen" erzeugt, wenn der Inhalt des Addierers zu diesem Zeitpunkt 0 ist. Dieses Befehlssignal "Unterbrichstufe einstellen" uiird dem Negator 3-13 in Fig» 3 zugefuehrt.
Fig, 6 zeigt das U-Register, in welchem das gerade ausgefuehrte 14-Bit-Befehlsumrt aufbewahrt wird« Die Stufen 0o.e5 enthalten den Kennteil y, die Stufen 6 und 7 den Kennteil b, 8 und 9 den Kennteil a und 10βοβ13 den Operationsteil f. Zur Vereinfachung werden die sieben unte- y. ren Stufen O0..6 mit UL und die sieben oberen Stufen O 7e..13 mit UU bezeichnet. Die Stufen O..»5 von UL wer-
oo den vom Addierer gefuellt, uiaehrend die Stufe 6 von der ω Stufe 6 des Z-Registers gefuellt wird. Diese Fuellung ^ von UL erfolgt ueber eine Gruppe von NUND-Schaltungen K> 6-10.,,6-16, die aus Platzgruenden nur zum Teil in in
Fig. 6 gezeigt sind. Die Ausblendung ueber diese Torschaltungen geschieht, uienn eines dsr beiden Befehls-
BAO ORIGINAL
signale "Addierer, Z6 nach UL" an der NODER-Schaltung 6-17 anliegt. Durch das positive Ausgangssignal der NODER-Schaltung 6-17 wird zunaechst die NUND-Schaltung 6-18 geoeffnet, um dia Stufen UO0..U5 einzustallen und die Stufe U6 zu raeumen.In der naechsten Taktphase CP4 werden die NUND-Schaltungan 6-1 0„. .6-1 5 vorbereitet, um auf die Bits G des Addierers anzusprechen und die entsprechenden Stufen UO...U5 in Uebareinstimmung mit den vom Addierer erzeugten Bits G zu raeumen. Sie NUND~ Schaltung 6-16 spricht auf ein in der Stufe Z6 befindliches Bit 1 an, um die Stufe U6 einzustellen.
Die Stufen U70.oU13 (UU) koennen vom Z-Register ueber eine Gruppe von NUND-Schaltungen 6-19,..6-25 bei Erzeugung des Befehlssignals "Z nach UU" gefuellt uierden. Durch dieses Befehlssignal tuird ausserdem die NUND-Schaltung 6-26 geoeffnet, um zunaechst UU in dar Taktphase CP1 zu raeumen und anschliessend den Inhalt des Z-Registers in der naechsten Taktphase CP2 ueber die zuvor genannten Torschaltungen- zu uebertragen.
Fuer bestimmte Funktionen muss angezeigt u/erden, u/enn dar Kennteil a gleich Q ist. Dies geschieht durch die NUND-Schaltung 6-28, die nur dann geoeffnet uiird, wenn beide Stufen U8 und U9 geraeumt sind« Das Ausgangssignal der, NUND-Schaltung 6-28 ujird seinerseits im Negator 6-29 invertiert, um das positive Signal "a = 0" zu erzeugen«
Fig» 7 zeigt Einzelheiten des S-Registers, welches eine 12-Bit-Adressa zu/ecks Ansteuerung des Speichers enthaelt,, Dieses Register ist ztuackmaassig in ziuei Teile unterteilt, SL (Stufen S0eoeS5) und SU (Stufen S6...S11). Das S-^egister kann Information von verschiedenen Quellan erhalten» -Eine Gruppe von NUND-Schaltungen 7-10.. .7»-45 dient zur Uebartragung von Information vom Z-Register
O in das SU-Register, wenn in der Taktphase CPI das Ba-
O0 fehlssignal "Z nach SU" erzeugt tuird. Ebenso tuird von ^ den NUND-Schaltungen 7-17..,7-22 ein am Ausgang dar "^ .Addierstufen 0c..5 auftretender 6-Bit-Wert in das SU- ® ts> Register usberfuehrt, iuenn das Bsfehlssignai "Addierer nach SU" auftritt. Die NUMD-Schaltumgen 7-24...7-29 u/erden geoeffnet, uns den Inhalt von UL (Stufen 0oao5)
nach SL zu uebarfuehren, ιιιβηη das Befehlssignal "UL nach SL" erzeugt wird,
Ausserdem sind mittel vorgesehen, um die Kennteile a und b des Befehlswortes in das SL-Register zu transportieren. Die NUND-Schaltungen 7-31 und 7-32 iuerden durch das Befehlssignal "a nach S" geoeffnet und sprechen da« bei auf den in der Stufe U9 bzw. US befindlichen liiert an, um den Kennteil a nach S1 bzw« SO zu ueberfuehren« Diese beiden Stufen des S-Registers koennen also auf eins der Binaerkombinationen QO, 01, 10 oder 11 eingestellt «erden, die, sofern S2 geraeumt ist, den Oktaluiert 0, 1, 2 bzw. 3 darstellen. Oie NUND-Sohaltungen 7-34 und 7-35 sprechen auf die in den Stufen U7 und U6 befindlichen Bits des Kennteils b an, um diese Bits beim Auftreten des Befehlssignals "b nach S" in die Stufen S1 und SO zu ueberfuehren. Durch dieses Befehlssignal wird ausserdem der Negator 7-36 zur Einstellung der Stufe 52 veranlasst, so dass die Binaerkombination des zu dieser Zeit in SL eingeleseneh 3*Bit-ÜJertes 100, 101, 110 oder 111 (4, 5, 6 oder 7 oktal) lautet«
Wird waehrend der Ausfuehrung des vorliegenden Befehlswortes sin Speicherzyklus zwecks Ansteuerung des A- oder B-Registers eingeleitet, so wird die Adresse des betreffenden Registers stets durch das Unterbrichniveau modifiziert, dessen Programm zu dieser Zeit die Steuerung ausuebt« Der Inhalt des IC-Registers tuird ueber die NUND-Schaltungen 7-3Θ, 7-39 und 7-40 nach SL ueberfuehrt, um die Stufen S3, S4 und 55 auf die hoechste Unterbrichprioritaet einzustellen» Die Uebertragung des Kennteils a oder b nach S0...S2 erfolgt also stets zusammen mit der Uebertragung von IC nach S3...S5, so dass das Register« A1 bei seiner Ansteuerung waehrend der Unterbrichpriorijf* taet 2 beispielsweise eine andere Adresse hat als bei (O der Ansteuerung waehrend der Unterbrichprioritaet 5.
_» Eis soll beispielsweise angenommen werden, dass der Kenn-. J^ teil a eines Befehls den Binaerwert 01 hat und dass die- -* ser Befehl sowohl im Programm des Unterbrichniveaus 2
cn als auch im Programm des Unterbrichniveaus 5 auftritt« Uiird dieser Befehl waehrend der Unterbrichpriotitaet ausgefuehrt, so werden die Stufen S1 und SO bei der '
Uebertragung von a nach S auf den liiert 01 eingestellt, u/aehrend die Stufen S5, S4 und S3 bei der Uebertragung von IC nach S auf den Binaerwert 010 (Gktalwert 2) eingestellt werden. Da die Stufen Ξ2 und S6«..S11 geraeumt bleiben, (das S-Register wurde zu Beginn durch ein an der NODER-Schaltung 7-42 anliegendes und von der NUND-Schaltung 7-43 ausgeblendetes Signal geraeumt), lautet die im S-Register befindliche Speicheradresse somit 0022 (oktal). Wird dagegen ein Befehl mit demselben Kennteil a u/aehrend der Unterbrichprjoritaet 5 ausgefuehrt, so lautet die Speicheradresse des A-Registers 0052, da sich im IC-Register der Oktalwert 5 befindet, der im Falle dieses Prioritaatsniveaus in die Stufen S3...S5 transportiert wird. Dar im IC-Register enthaltene liiert dient also zur Ansteuerung eines Funktionsregisters A oder B, u/elches ausschliesslich zu dam die Steuerfunktion ausuebenden Prioritaetsniveau gehoart und nicht dasselbe Funktionsregister ist, das u/aehrend eines anderen Prioritaetsprogramms benutzt uiird, obwohl der Kennteil a oder b in beiden Faellen derselbe ist«,
Wie zuvor erwaehnt wurde, wird das zum Erlangen der Adresse des naechsten Befehls benutzte Befehlsadressenregister P durch das Unterbrichniveau bezeichnet, welches gerade die 5teuerfunktion ausuebt. Da ein Befehlswort in zu/ei nebeneinanderliegenden Speicherstellen aufbewahrt wird, muss der Speicher zweimal hintereinander angesteuert werden, um einen Befehl zu entnehmen und zwecks Ausfuehrung in das U-Register zu leiten,, Die NUND-Schaltungen 7-44, 7-45 und 7-46 werden geoeffnet, um den Inhalt des IC-Registers beim Auftreten eines der an der NODER-Schaltung 7-47 anliegenden Befehlssignale "P nach S" oder 11P + 1 nach S" in die Stufen S1, S2 und S3 zu iBiten. Das Aus-ω gangssignal der NODER-Schaltung 7-47 liegt ausserdem an <p der NUND-Schaltung 7-48,. an, die in der Taktphase CP1
_^ geoeffnet wird, um die Stufe S6 einzustellen. Durch die ^J Einstellung der Stufe S6 wird bewirkt, dass die hoechsten -* Oktalstellen der P-Ragisteradresse stets 01 sind, da in die in SU befindliche binaera Bitkonstellation 000001 ω lautet«, Die liierte der beiden niedrigsten Oktalstellen haengen von Inhalt des IC-Registere und ausserdem davon
ab, ob aus dem Speicher die untere oder obere Haelfte der naechsten Befehlsadresse zwecks Ueberfuehrung in das U-Regieter entnommen uiird. Es soll z. B. angenommen uierden, dass die Rechenanlage auf dem Unterbrichniveau 2 arbeitst, so dass sich die beiden Haelften der naechsten Befehlsadresse in den Speicherstellen 0104 und 0105 befinden, die fuer dieses Programm als P-Register dienen,, Im IC-Register befinden sich die Binaerbits 010 (Oktaluiert 2), Die erste anzusteuernde Speicheradresse ist die Adresse 0104, in der sich die untere Haelfte der naechsten Befehlsadresse befindet. Anschliessend vuird die Adresse 0105 angesteuert, in der sich die obere Haelfte der naechsten Befehlsadresse befindete Ulaehrend des ersten Speicherzugrif f szyklus ,uiird das Befehlssignal "P nach S" erzeugt, wodurch die Stufen S6 und S2 eingestellt werden,, Dadurch uiird in das S-Register der Qktaluiert 0104 eingegeben, der dort zur Entnahme der unteren Haelfte der naechsten Befehlsadresse zuiecks Einspeicherung in UL benutzt ujird. Am Schluss dieses Zyklus tuird das S-Register geraeumt und das Befehlssignal "P + 1 naofi S" uiaehrend des naechsten Speicherzugriffszyklus erzeugt. Durch dieses Befehlssignal uiird die NODER-Schaltung 7-47 geoeffnet, um die Stufen S6 und S2 erneut einzustellen,, Das Befehlssignal "P +'■ 1 nach S" uiird jedoch ausserdem direkt uebertragen, um die Stufe SO einzustellen und damit die Oktaladresse 0105 in das S-Register zu leiten, die uro 1 hoeher ist als die Adresse 0104„ In dieser Speicherstelle befindet sich die obere Haelfte der naechsten Befehlsadresse, die sodann in Verbindung mit der zuvor entnommenen unteren Haelfte dazu benutzt wird, den naechsten Befehl selbst zu entnehmen,, Durch das Befehlssignal "P nach S" uiird also in das S-Register stets eine geradu> zahlige Oktaladresse in Abhaengigkeit von dem durch den ._ Inhalt des IC-Registers bezeichneten vorliegenden Unter« brichniveau eingegeben., Anschliessend uiird durch das Beco fehlssignal HP + 1 nach S" die gleiche Oktaladresse in ^ das S-Register ueberfuehrt, die jedoch infolge der di- *° rekten Einstellung der Stufe SO durch das Befehlssignal to um 1 hoeher ist. Als uieiteras Beispiel soll angenommen uierden, dass das Programm mit der Unterbrichprioritaet 6
die Steuerfunktion ausuebt, so dass die Stufen S6, S3 und S2 unter dem Einfluss des Befehlssignals "P nach SM auf den Qktaltuert 0114 (QGDDD1001100) eingestellt uierden, Durch das naechste Befehlssignal "P + 1 nach S" warden dann wiederum saemtliche der zuvor erwaehnten Stufen und ausserdem die Stufe SO eingestellt, so dass die niedrigste Oktalstella 4 um eins erhoeht wird, also jetzt ' den tUert 5 hat«
Das S-Register wird ausserdem auch dann geraeumt und auf eine bestimmte Adresse eingestellt 9 wenn der Zaehlerstand eines Delta-Taktregisters verringert werden soll. Fuer jedes der vier Delta-Taktregister tuird das Befehlssignal "S4, S6 einstellen" (Fig. 20) zwecks Einstellung der Stufen S4 und S6 angekoppelt, so dass die drei -hoschsten Oktalstellen der Adresse den UJert 012 haben«, Der lUert der niedrigsten Oktalstelle u/ird durch den bei Erzeugung des Befehlssignals "D-Taktregister lueiterschalten" in die Kippschaltungen 5-12 und 5.-11 uebertragenen liiert bestimmt,, Es soll beispielsweise angenommen werden, dass diese Kippschaltungen umehrend der Zeit, in welcher das Befehlssignal "D-Taktregister weiterschalten" erscheint, auf den liiert 00 eingestellt sind. Die NUND-Schaltung 5-1V wird geoeffnet, um die Kippschaltung 5-11 einzustellen, so dass die Bitkonstellation nunmehr 01 lautet« Die NUND-Schaltung 5-17 stellt ausserdem die Stufe SO ein, so dass die unterste Oktalstelle des S-Registers den Wert 1 hata Es wird also die Speicheradresse 0121 angesteuert, die dem Delta-Register 1 gehoert. Ungefaehr eine Millisekunde spaeter wird das Befehlssignal "D-Taktregister weiterschalten" erneut erzeugt, um die NUND-Schaltung 5-15 zu oeffnen und damit die Kippschaltung 5-12 einzustellen, so dass der Wert nunmehr 11 lautete to In Fig„ 7 wird das Ausgangssignal der NUND-Schaltung ^5 5-15 zur Einstellung der Stufe S1 benutzt, so dass ^ die unterste Oktalstelle den UJert 2 hat; die im S-Reco gister befindliche Gesamtzahl lautet 0122. Diese Adres- _i se dient zur Ansteuerung des Registers Delta 2 im Spei* £J cher0 mit der erneuten Erzeugung des Befehlssignals to "D-Taktregister weiterschalten" wird die NUND-Schaltung 5-16 geoeffnet, um die Kippschaltung 5-11 zu raeumen,
so dass der Ulert jetzt 10 betraegt. In fig« 7 uiird das Signal *D1 raeumen" der NUND-Schaltung 5-16 zur Einstellung der Stufen SO und S1 benutzt, so dass die niedrigste Oktalstelle der Adresse 3 ist. Es uiird also jetzt das Register Delta 5 angesteuert, dessen Speicheradresse 0123 lautet. Eine Willisekunde spaeter wird das Befehlssignal "D-Taktregister uieiterschalten" erzeugt, um die Kippschaltung 5-12 zu raeumen, so dass der liiert OQ iste Fuer diesen Zustand «ird weder die Stufe SO noch die Stufe S1 eingestellt, so dass die niedrigste Oktalstelle des S-Registers den liiert 0 hat,, wodurch das Delta-Register O angesteuert wird, dessen Speicheradresse 0120 lautet.
Fig. θ zeigt bestimmte Schaltkreise der Operationsteil-Entschluesselungeeinrichtung, in welcher bestimmte Kenn» teile f, wie beispielsweise QO (Add), entschluesselt werden. Ausserdem werden in Fig. B die Operationscodes 14 und 17 entschluesselt, die nach ihrer Ausfuehrung die Einstellung (Raeumung) des I-Registers in Ueberainstimmung mit UL bzw« die Raeumung einer bestimmten Stufe des I-Registers nach Abwicklung des fuer das betreffende Unterbrichniveau vorgesehenen Programms gestatten« Zu beachten ist, dass Fig· 8 jedoch nur einen Teil der Funktionaentschluesselungseinrichtung zeigt. Die NUND-Schaltung 8-10 uiird geoeffnet, um stets dann ein negatives Ausgangssignal zu erzeugen, wenn beide Stufen U13 und U12 binaere Einsen enthalten. Eine binaere Eins in dar Stufe U13 zeigt an, dass die hoehers Qktalstells des Operationsteils 1 ist, waehrend eine in der Stufe U12 befindliche binaere Eine andeutet, dass die untere Oktalstelle des Operationsteils 4 oder mehr ist« Das negative Ausgangssignal der NUND-Schaltung B-10 erzeugt also nflch seiner Invertierung durch den Negator 8—11 ο ein positives Signal, das mit f » 14-17 bezeichnet ist. oo Das positive Ausgangssignal des Negators 8-11 tritt also ^ · stets dann auf, wenn der in den Stufen U1Q...U13 enthal-■** tene Operationsteil den Oktaluisrt 14, 15, 16 oder 17 hat«. ro Ist dagegen in einer der beiden Stufen U13 und U12 oder
U) in beiden dieser Stufen eine binaere Null enthalten.
so"erzeugt die NUND-Schaltung 8-10 ein positives Ausgangssignal "f «<14-17", welches anzeigt, dass der Funktionen
code kleiner als 14 ist«
Die NUND-Schaltung 8-12 iuird geoeffnet, um ein negatives Ausgangssignal zu erzeugen, wenn sich in der Stufe U12 eine binaBre 1 und in der Stufe U10 eine binaere 0 be~ findet. Das Signal "U10 einstellen" von Figo 6 ist positiv, wenn sich in der Stufe UiO eine binaere 0 befindet«, Das Ausgangssignal der NUND-Schaltung 8-12 ist daher bei den Funktionscodes 4, 6, 14 oder 16 nach entsprechender Negation im Negator 8-13 positiv,, Die NUND-Schaltung 8-14 uiird durch ein in den Stufen U11 und U10 befindliches ßinaerbit 1 geoeffnet und erzeugt ein negatives Signali welches anzeigt, dass der Funktionscode 3, 7, 13 oder 17 ist. Im Negator 8-15 tuird dieses negative Signal invertiert, um diese Tatsache durch ein positives Signal anzuzeigen» Ist das Signal der NUND-Schaltung 8-14 jedoch positiv, dann u/ird damit angezeigt, dass der Funktions— code nicht 3, 7, 13 oder 17 iste Es erfolgt eine dementsprechende Bezeichnung,, Die NDDER-Schaltung 8-16.erzeugt fuer jedes an ihrem Eingang anliegende negative Signal ein positives Signal. Dieses positive Ausgangssignal zeigt, dass der Funktionscode nicht 15 ist. Dies ergibt sich aus der Tätsache, dass ein negatives Ausgangssignaä. des Negators Θ-11 anzeigt, dass der Funktionscode weniger ,als 14 ist. Andererseits zeigt ein negatives Ausgangssignal der NUND-Schaltung 8-12 die Tatsache an, dass der Funktionscode entweder 4, 6, 14 oder 16 ist, iuaehrend das negative Ausgangssignal der NUND-Schaltung 8-14 andeutet, dass der Funktionscode entweder 3, 7, 13 oder 17 isto Sind also saemtliche Eingangssignale zur NODER-Schaltung 8-16 positiv, so muss der Funktionscode gleich 15 seinc iuas durch ein negatives Ausgangssignal der NODER-Schaltung 8-1.6 angezeigt wird» Am Ausgang der JU NUND-Schaltung 8-17 tritt nur dann ein negatives Signal co auf, iuenn der Funktionscode 4, 5, 6 "oder 7 ist, da diese _jk Torschaltung auf eine in der Stufe U12 enthaltene 1 J^ und in der Stufe Ü13 befindliche Q anspricht« Sonst ist -» .das Ausgangssignal der NUND-Schaltung 8-17 positiv und
fo ■' · ' ■ ■ ■ .' .
cn deutet damit an, dase der Funktionscode nicht 4, 5, 6 oder 7,ist« Die NUND-Schaltung 8-18 erzeugt nur dann ein negatives Signal, u/snn, der Funktionscode 14 ist$ diese»
14495Sf
Sigwai ui&rd um. P&gsfctor Θ-19 invertiert und ist daher fuexr diaaseo* l&sarfc des Funktionscades positiv. Die An-
SMqrfatLm HU1D einstellen1" und "1111 eins te i-
& sskI'Jx siatrerrs teilen, dass der· Negator
Β*Λ3 k«Lrr- ptasitei^easc» Signal sirzeugt, wenn eine der beide« Stufmf UiIO. atifeiz U11 oder beide Stufen auf den Binaerwesrfc f edOTgÄS^fcediliti; sind»
Qasr A'tiegiaaFigffsrig.R«! der PätiND-Schaltung 8-20 ist negativ, wenrr drar FwMtiuaweirsde 6,oder T6 iat. Das' Ausgangssignal daar (IGiQCI3*-SrhaXfeü»g; 8>-2Ί Is^t cteher fuer diese Funktions-GacieBiiects pfSsoLfeiw» uKsnrLt. zumindest angezeigt utird, dass dar Fu*iictJuaTiaECQi«tiar n&etrt 2 atisr 12 ist ο Bei den Funktions— erodes- Zp &, VZ si*er t6 ist das Signal der NUfiD-Schaltung; ff*-22 fregpstiJ*. Lst& dese FurrktiofTscadB 2 oder 16, dann ist das S-iigfraJ,. der RSBiD-Seiialtung: 8-22 negativ, ujodurch ein
A*iSflpangpKtgjial em Negator 8-23 auftritt, öas rfac »UFfö^SkOraJItungv 8-21 ist bei den Funk tiffins- Ά admr 12 po;sdi.t.is.v, utad-urchr das Ausgangssignal der 8^-2f r«&g,atlv utxrd und anzeigt, dass der adear 16 1st« D^as Ausgangssignal der
1st soartfc. f usr saeratliche Funktians-
mai£. ftttswehme 2 odswc 12 positiv. Das AusgangesIgnarl ^M^BeitmUiimQ Sr-24 ist stets dann negativ, mann In dB» SfcUifesr tttsO.- ujrdt UTT Binascbits 0 enthalten sind«, DIa uiTifcöET» (öittsilfcSEtaiJiIer ktarrn also nur den Uierfc Q oder 4 ha=berfr mx daara» domr Fu*ri*trioRracode 0'r 4, TO oder 14 sein inussr, Bas AtissgjgBrgäSSi^»!. dar: MUN.D-Schal.tung 8-24 ist daher stfeasts? dasifr ptaraififeii*,. iüe;nn der Funkttonscode nicht 0, 4^, tö adear T4 iast*. Im; Btegatox ff—2S utird das negativs Signal dBase Ä4J*l0~SGHTaditaj**g> S»~Ä4 invsarfcier-t und alsi pasitiv&s* SKtgisrael asr eifnffi' Eiff^wici dia«* (fcüNQ-Schaltung S-26 ang erlegt. Es*fc draer FtMTt*txQfygegiig' eart»«JKr 4 o?d»r t4r so befind&t slctr dear SsfcueffB; ffiT»2; αί^π» fctinraerB T,, moduretr ein uiefiterea am. SigpüsE am ^Lnq.snq dar ltUND~Schaltung 8-26 aniiesgt,.
aast daeeE daeE.«»» ^tffgjmgss'iägnal; negaitiw. Ifft und damit andac Fufltktlonscaetat entieede-r 4 oder 14 ist«
etaar FuRffetißnwcadear 4 und: 14 ist- da» Signal H&ate£-&G±iw.lt2*a% S-26 bei si lan anderen Funktionscode«
kanrn also festgestellt werden,
da»a dti« ins Fi-g?*. & bejeeichn^ten Ausgangs signale »inen BAD ORIGINAL
FunktianscadB; andeuten bziu. im "Fa]LIa eines positiven Signals die Abwesenheit einffs solcrhen FunrktionsEodes darstellen. ■ -.. -
Zur Entnahme und Ausfuehrung daeir einxelnen Befehle rend eines Efefehls-zyklus sind jemeils auFeinanderFoIgenda Sp eich ar ζ yk lan erf orderlich> deren Anzahl want dem be treffenden Funktions-cdds und mitunter auirh uom liiert cfees Kann* teils a. oder b abhaengt0 Zur richtigen Steuerung des: Abelauf s won i-Tntrvathnre und Ausfuehrung eines Befehls ist ein Eefehlsschrittzaehler yar gesehen, Fig. 9 zei^gt Einz.elheiten: dieses^ Befehlsscchrittza&hlei"ff, tier aus drei! Stufen 9—TQr 9.-11 und 9-12 basteht r die: so zusammen geschaltet sindr dass der Zaeiil prozess nach dem bekann ten Gray Cade- mit. folgendem* Format ablaeuPtr
SpelgherzykluB Gray Gade
ο ασο
r um
ζ Ott
5 TTt
6 tot
7 1:0.0 > . . ■ -
Zur Unrterstuetrung der lif.elterse:ha:ltung' der Zastri.zxis:tae.nde ist» die Kippsict»ai;tung 9-ΤΪ uairgesshen* ETlrrei SteuevEki=ppÄc:hai tumg 9-1r4 ist narma.ler.uiietse stertsr danrr geraeu^rfcy wenn ke;£ry· BefeJrlsiuart auszufuehrerr Isrt., Befindet svicfr diet K/fprptsfitra-l>--· tang 9-T4 im Rasurozüstandy so tritt anr ihreni negatives Signal auf, das i» Neg^atior 9:-»-TS'
und als: pasitives: Signal an einen Eingang der" NilNQ Schaltung 9«Tfi: gelangt;. Inr dlaaasrar Zijstanrf baiulrkt: alstr die WÜND-Sciraltung 9-T& beim Auftreten dea? Taktptrass: die fiaeumung sarBmtlieitar: Z5aeirlstufefF 9»-TQ«. .9—i2U ßer Zaehierstand der Stuffen' 9-fZf; 9-41 und 9^-1D zu dieser Zait QQB v
IJIe: NuMi-SchfaltungBn 9-17.. »9—Z4 sind v/iaEge^ehern, um den ZkehIeETInhabit zu errtscstiluesaeJJT und β£π Sxgnal^ zu erzeuge;nr da» den betraf fend ein Speicher zyklu» airzieigt, * in uiffichem sich dar: betreffende ffefehrszyklu* nunmehr befindet*= So νιχχύ ζα &. 'dier ίίυΝο-Schaltung 9M7 geosffluarrn s:ic:h in saerotlichen KippsGhaltungsatuf en
BAD ORIGINAL
;. .9-12 Binaerbits O befinden, wobei ein negatives Signal erzeugt wird, das im Negator 9-25 negiert uird und.aJs positives Signal "SCD" erscheint, welches den Schrittstand oder Speicherzyklus 0 bezeichnet. Die NUND-Schaltung 9-18 wird geoeffnet, uienn der ZaBhlerstand 001 lautet, wodurch ein negatives Signal am Ausgang des Negator« 9-26 erscheint, iaelches den Speicherzyklue 1 bezeichnet. In gleicher Weise sprechen die NUND-Schaltungen 9-19... 9-24 auf den jeweiligen Zaehlerstand an und erzeugen dabei die positiven Signale SC2..«SC7 am Ausgang der Negatoren 9-27...9-32. UJie ersichtlich ist, ist stete nur eines der Ausgangssignale der Negatoren 9-25...9-32 zu einer gegebenen Zeit positiv, je nachdem, in welchem Zustand sich die Kippschaltungen 9-10...9-12 befinden. Das Auegangssignal der NODER-Schaltung 9-33 ist positiv, wenn der Speicherzyklus 0 oder 1 ist. Einige Signale, , wie z. B. SCO und SC3, werden direkt von der NUND-Schaltung 9-17 bzu/. 9-20 abgenommen.
Nachstehend wird'nunmehr die Arbeitsweise des in Fig. gezeigten Zaehlers beschrieben. Wie zuvor erwaehnt wurde, wird die NUND-Schaltung 9-16 infolge des Raeumzustandes der kippschaltung 9-14 veranlasst, die Zaehlerstufen in ihrem Binaerzustand 0 zu halten. Die NUND-Schaltung 9-17 wird daher geoeffnetund erzeugt ein negatives Signal, wodurch ein positives Signal SCO erscheint. Die Signale der NUND-Schaltungen 9-1B, 9-20 und 9-22 sind saemtlich positiv, so dass am Ausgang der NODER-Schaltung 9-34 ein negatives Signal auftritt. Dieses negative Signal wird im Negator 9-35 negiert, so dass die NUND-Schaltung 9-36 jeweils in der Taktphase CP4 geoeffnet wird. Die Kippschaltung 9-13 wird somit in ihren Raeumzustand gehalten.
_ · Nach der Uebertragung eines Befehlswortes in das U-Registet wird ein Befehlasignal "Befehl beginnen" an die —» Kippschaltung 9-14 angelegt, um diese einzustellen. ^ Solange die Kippschaltung 9-14 eingestellt ist, er-""* scheint am Ausgang des Negators 9-15 ein negatives
<n Signal, wodurch die NUND-Schaltung 9-16 in aufeinanderfolgenden Taktphasen CP2 gesperit wird. Der Zaehler bleibt jedoch.so lange auf dem Stand QOO, bis da«
Bsfehlssignal "Schrittzaehler weiterschalten" lieber den Negator 9-37 an saemtliche mit dem Eingang der Zaehler-Kippschaltungen verbundenen NUND-Schaltungen gleichzeitig angelegt wird. Uiaehrend der Anwesenheit des Befehlssignals "Schrittzaehler u/eiterschalten" erscheint CP2 und wird gleichfalls an saemtliche dieser NUND-Schaltungen angelBgto Zu dieser Zeit sind lediglich die Eingangssignale der NUND-Schaltung 9-38 saemtlich positiv/, da die Kippschaltungen 9-11,.9-12- und 9-13 geraeumt sind. Die Kippschaltung 9-10 wird daher eingestellt, so dass der Z.aehlerstand jetzt 001 ist« ■
Nach der Einstellung der Kippschaltung 9-10 wird die NUND-Schaltung 9-1-B geoeffnet und erzeugt ein negatives Signal, wodurch am Ausgang der NODER-Schaltung 9-34 ein positiv/es Signal erscheint. Dieses positive Ausgangssignal wird unter dem Einfluss der naechsten Taktphase CP4 ausgeblendet, um die Kippschaltung 9-13 einzustellen. Durch den Einstellzustand der Kippschaltung 9-13 wird lediglich die NUND-Schaltung 9-39 geoeffnet, wenn das Befehlssignal "Schrittzaehler weiterschalten" erneut auftritt«, Der Zaehlerstand ujird also von 001 auf. 011 meitergeschalte'tο Das Ausgangssignal der NUND-Schaltung 9-19 lüird jetzt negativ, ujaehrend das Signal der NUND-Schaltung 9-18 positiv luirde Das Ausgangssignal der NODER-Schaltung 9-34 luird wieder negativ, luodurch die NUND-Schaltung 9—36 die Kippschaltung 9-13 erneut raeumen kann, fflit der naechsten Erzeugung des Befehlssignals "Schrittzaehler lueiterschalten" wird die NUND-Schaltung 9-41 geoeffnet und raeumt damit die Kippschaltung 9-10., ωα-durch der Zaehlerstand von 011 auf 010 uieitergeschaltet uiirdo Dadurch luird das Ausgangssignal der NUND-Schaltung 9-20 wieder negativ, so dass die NUND-Schaltung 9--40
to die Kippschaltung 9-13 einstellen kann. Daraufhin wird
Q3 die NUND-Schaltung 9-42 geoeffnet, um die Kippschaltung
* 9-12 bei der naechsten Erzeugung des Befehlssignais
ω ."Schrittzaehler ujeiterschalten" zu oeffnen, wobei der
_a Zaehlerstand auf den liiert 110 eingestellt wird» Da
cr| saemtliche Eingangssignale der NODER-Schaltung 9-34
t positiv sind, wird jetzt die Kippschaltung 9-13 erneut
.· geraeumt. Dadurch kann die NUND-Schaltung 9-43 die
U49568
Kippschaltung 9-10 bei der naechsten Weiterschaltung des Zaehlerstandes einstellen. Da in den Zaehlerstufen saemtlich Einsen enthalten sind, wird das Ausgangssignal der NUND-Schaltung 9-22 negativ, wodurch die Kippschaltung 9-13 erneut eingestellt wird. Da sich jetzt beide Kippschaltungen 9-10 und 9-12 im Einstellzustand befinden, kann die NUND-Schaltung 9-24 geoeffnet werden, um die Kippschaltung 9-11 zu raeumen und damit den Zaehlerstand von 111 auf 101 uieiterzuschalten. Die Kippschaltung 9-13 wird daher geraeumt, so dass die NUND-Schaltung 9-45 oeffnet und die Kippschaltung 9-10 raeumt. Lautet der Zaehlerstand 100, so tritt am Ausgang der NUND-Schaltung 9-24 ein negatives Signal auf, wodurch das positive Signal 5C7 erzeugt wird»
Der in Figa 9 gezeigte Befehlsschrittzaehler wird also in den Speicherzyklen zwecks Entnahme und Ausfuehrung dea Befehlswortes schrittweise weitergeschaltet, wenn die Kippschaltung 9-14 eingestellt ist und das Befehlssi-• gnal ''Schrittzaehler weiterschalten" zu den entsprechenden Zeiten auftritt. Unabhaengig von seiner Funktion erfordert jedes Befehlswort mindestens vier Speicherzyklen SCOo..SC3. Verschiedene Befehlswoerter erfordern »eitere Speicherzyklen, waehrend die beiden Funktionscodes 05 und 07 jeweils acht Speicherzyklen erfordern. Die Raeuraung der Kippschaltung 9-14 durch irgendeines der Befehlssignale "Befehl beenden" bewirkt die Unterbrechung der schrittweisen Weiterschaltung der Zaehlerstufen 9-10.. .9-12, worauf diese Stufen wieder in ihren Raeuttizustand 000 zurueckkehren.
Die vom Schrittzaehler in Fig„ 9 markierten Speicherzyklen sind jeweils noch in eine Anzahl von Operationszeiten unterteilt·. Fig. 10 zeigt eine Steuerkette, die aus den Kippschaltungen 10-10.. .1 0-17 besteht,, Fuer jeden 'vO in einem Befehlszyklus benoatigten Speicherzyklus be-
_k schreibt die Steuerkette einen vollstaendigen Umlauf ^ und steuert dabei die Ausfuehrung der Operation in dem -* betreffenden Speicherzyklus. Die Zeitabschnitte, aus η denen sich die einzelnen Speicherzyklen jeweils zusammensetzen, sind durch die Signale fO, T1, T2, T3, T4, T5, T6 und T7 bezeichnet.. Die Arbeiteweise der in Fig„
BAD ORiGiNAL
gezeigten Schaltungsanordnung kann am besten an Hand der Fig» 23 verstanden werden, die ein Zeitdiagramm zeigt, in welchem die Ausfuahrung eines typischen Befehls mit einem Addier-Qperationsteil (00) dargestellt ist. In den einzelnen Speicherzyklen SCO, SC1 usuj. werden die sich gegenseitig uaberlappenden Signale TO0..T7 von der in Fig. 10 gezeigten Steuerkette luie folgt erzeugt» Zunaechst soll angenommen werden, dass die Kippschaltung 10-10 in der Taktphase CP4 zu Beginn durch ein Signal . "Einstellung beginnen" eingestellt wird. Ulie das positive Signal am Einstellausg.ang der Kippschaltung 10-10 zeigt, beginnt damit der Zeitabschnitt TO. Liegt das Signal "Speicher frei" vor, wodurch angezeigt wird, dass der Speicher zwecks Information angesteuert werden kann, dann wird die NUND-Schaltung 10-18 in der Taktzeit CP2 geoeffnet, um die Kippschaltung 10-11 einzustellen und damit das Signal T1 zu erzeugen. In der naechsten Taktphase CP3 wird sodann die NUND-Schaltung 10-19 geoeffnet, um die Kippschaltung 10-12 einzustellen, die daraufhin das Signal T2 erzeugt« Wie Fig. 23 zeigt, ueberlappen sich also die Zeitabschnitte TO, T1 und T2« Da die Kippschaltung 10-12 eingestellt ist, wird die NUND-Schaltung 10-20 in der naechsten Taktphase CP1 geoeffnet und stellt die Kippschaltung 10-13 (T3) ein, waehrend gleichzeitig die Kippschaltung 10-10 geraeumt wird. Da die Kippschaltung 10-13 eingestellt und die Kippschaltung 10-14 noch immer geraeumt ist, u/ird die NUND-Schaltung 10-21 in der naechsten Taktphase CP2 geoeffnet, um die Kippschaltung 10-11 zu raeumen und damit den Zeitabschnitt T1 zu beenden. Eine Taktimpulszeit spaeter, d» h. in der Taktphase CP3, wird die Kippschaltung 10-14 won der NUND-Schaltung 10-22 eingestellt. Ausserdem wird von der NUND-ο Schaltung 10-23 die Kippschaltung 10-12 geraeumt, da ^ die Kippschaltung 10-11 jetzt rueckgestellt ist. Infol- -* ge des Einstellzustandes der Kippschaltung 10-14 und co
•v des Raeumzustandes der Kippschaltung 10-12 tuird die ^ NUND-Schaltung 10-24 in der Taktphase CP2 geoeffnet,
erzeugt daher das Signal T5. Die NUND-Schaltung 10-25
um die Kippschaltung 10-15 einzustellen. Diese Stufe
BAD ORIGINAL
■·■>:■■' " 47 " UA9568
stellt die Kippschaltung 10-16 in der Taktphase CP4 ein, u/aehrend die NUND-Schaltung 10-26 anschliessend die Kippschaltung 10-1 YeVns8telTt<r Das negative Ausgangs-
i X a j »:~i η ι - H ' 0 0 ) f i
signal der NUND-ScWa itung TO-Tb bewirkt ausserdem die
jDiaa/ ,!usυ Π2 ,HDc r&L·, , . ., . . , Raeumung der Kippschaltung 10-14, uiaehrend die Kippschaltung ' 1Q-1 5 "durch ^aae irnegaiff ve* Signal der NUND-üchaltung
10-26 geraeumt «ird. Ist die Kippschaltung 10-15 ge-
fsnui ί srioaaniX eib e«s.h ., r^bieu·· ru, „ _ ,^ , „,.,,,. raeumt, dann iuird die Kippschaltung 10-16 won der NUND-. ienpiS nie jiaiub ncipeB us ^1QD. . . .. Ktt,.in. Schaltung 10-27 geraeumt; anschlies6end raeumt die NUND-
^ihl^u^Q-kßi\i$iiiMm^g 10-17. Uiaehrend jedoch dieQKippschaitung ^S-Nf '"eiligestellt ist, wird die NUND-Schaltung9fo-i9 in"der^faä^p^ase^CPA geoeffnet, um die K
bi i
Schaltung9fo-i9 in"der^faä^p^ase^CPA geoeffnet, um die Kipp-
,b-jiui joiasept.ie iiοTubnu) ,aov," , . . .. schaltung 10-10 öinzustellen, wodurch ein erneuter Um-
nsbiaw i laueieecne noticrn ip^aj e>'3t . ieuf der SteuBTKette eingeleitet wird.
J}uT i erOr ii1SM
Schaltungsan- ^gn.Sefehlssignalen dienen, Befehls mit
sind· So
· di8
von Fi9< 9
be2«fih??fifln,fififfiffJFJ(SjHfU0SVSaM^u"1811118"- Ebenso
i 17 die Be-
^ Arbeitsschritte
in d-Sfif/SfFigtoJfifWf^fliliigC^^gJ^SJf, SC5 bzu,. SC6
zur
nicht einem bestimm-
fs J Ibt
ten-ftP#f^ der lÄd^pjSjff-l^yfffla^ifel^lJenJch^tkisisB wird
eines
Fi^4ßf1 SStJlWdUifOisieifgdvSAfe«»te|t!hiiail*:*ei^xXue· Durchfueh-
asselfli^ uiird
IiR-b.'feStammt, v/on
*lto1(i*eiTjr«jndJjaUte3ilä^
<° «in Wen iSt>€at hgrru iüeY9*«fdpjr)i e·*?«^ jwsUrrtleji iU^I JM.eilre r e i η -
-» schwBÜtbFteTÄ|)d*f-i£Blt gto« ZdaidäPt^epÄinid^fesSters^^ifs die Lese-
r^öarfBl 'fwdag^ &%£ te3l9f*qΚ4ιΡΡ si^tp HlJnigc J^hi^g€jr#eumt,
-* so mtett31 a»eUftgirfiegfefifefcöiveKifjJl*se filaogiat^r^j 0.^^§>q tfp.js i tiν ,
cn u»cafiH£fc|h
CD *
uiird. Liegt dieser Zustand vor, -so kommt die in den
BAD i%Ä
U49568
Speicher einzuschreibende Information vom Z-Register. Ist dagegen die Kippschaltung 19-14 durch ein entsprechendes Signal eingestellt, dann wird das Befehlasignal "Addierer nach IKi" negativ, wodurch der Inhalt des Addierers in den Speicher eingeschrieben wird.
Die Kippschaltung 19-10 dient zur Erzeugung des Signals "Speicher frei", das in Fig. 10 zur Einleitung des Zeitabschnittes T1 benoetigt wird. Ein positives Signal "Speicher mieder ansteuern" wird stets dann an den Negator 19-12 angekoppelt, -wenn der Speicher andeutet, dass er zwecks Information angesteuert werden kann. Durch den Negator 19-12 wird die Kippschaltung 19-10 eingestellt und erzeugt damit das positive Signal "Speicher frei", Damit beginnt der Speicherzyklus, und der Speicher luird zwecks Information angesteuert. Das Signal "Speicherfrei-FF rueckstellen" wird dann νση Figo Ί0 angelegt, wodurch die Kippschaltung 19-10 geraeumt wird, die an— schliessend auf ein weiteres positives Signal "Speicher wieder ansteuern" wartet, welches andeutet, dass der Speicher erneut angesteuert werden karvn» -~ ■>
Die Kippschaltung 19-17 ist vorgesehen, um einen Ueber-
' 5
trag 1 von der Bitstelle 2 aufzunehmen, der sich bei
der Addition der Inhalte der beiden Register Z und X uiaehrend des Speicherzyklus SCO ergeben kann. Dieser Uebertrag wird zur Modifizierung der naechsten Befehlsadresse benutzt, die sich in dem fuer das gerade ausgefuehrte Programm vorgesehenen P-Register befindet. UJaehrend des ersten Speicherzyklus einer Befehlsausfuehrung (SCO) wird zur unteren Haelfte der naechsten Befehlsadresse der liiert 2 hinzuaddiert. Wird in der Stufe 2 des Addierers ein Uebertrag 1 gebildet, so wirddie- ^3 ser von der NUND-Schaltung 19-18 erfasst, wodurch die ° Kippschaltung 19-17 eingestellt wird, lilaehrend des co
co naechsten Speicherzyklus (SC 1 ) kann jetzt ein Lieber- ^ trag 1 zur Bitetelle 2° des Addierers hihzüaddiert u/er-"^ den, d. h. zur oberen Haelfte der naechsten Befehlsro adr.esse,
cn -;
Fig. 20 zeigt die SteuerschaltkreisB, die erforderlich sind, um eine Verringerung des Zaehlerstandes der Delta-
BAD ORIGINAL
Taktregister oder eine Pufferdatenuebertragung auf den Ein/Ausgabekanaelen vorzunehmen. Uiaehrend der gepufferten Ein/Ausgabe kann der Speicher fuer jedes zu uebertragende Datenuiort einmal angesteuert werden« Der Puffer kann ein Programm in der Mitte eines Befehlszyklus unterbrechen, um eine Speicherabfrage vorzunehmen. Die Unterbrechung· eines Befehlszyklus kann jedoch nur am Schluss der Speicherzyklen SCO oder SC3 erfolgen. Wird kein Befehlszyklus ausgefuehrt, dann kann der Speicher bei einer Pofferoperatian jeder Zeit angesteuert werden,, Die gleichen Beschraenkungen gelten auch fuer eine Verringerung des Zaehlerstandes eines Delta-Taktregisters, da der Speicher wegen eines Taktregisters nur waehrend eines Befehlszyklus am Ende der Speicherzyklen SCO oder SC3 angesteuert u/erden kannj wird kein Befehlszyklus ausgefuehrt, so kann auch hier die Ansteuerung zu jeder Zeit erfolgen. lUie Fig. 20 zeigt, spricht die NODER-Schaltung 20-11 auf eines der negativen Signale SCO, SC3 oder "Endbefehl" an, um ein positives Signal zu erzeugen. Dieses Ausgangssignal wird an die NUND-Schaltungen 20-14 und 20-13 angelegt und ausserdem der Fig. 5 als Befehlssignal "Zyklus genehmigen" zugeleitet. Die NODER-Schaltung 20-12 erzeugt ein positives Signal, uienn eine Pufferanfrage fuer den Kanal 1 oder Kanal 2 vorliegt oder uienn ein negatives Signal "keine Ansteuerung des D-Taktregisters·1 von Fig. 5 vorliegt, welches den Einstellzustand der Kippschaltung 5-27 andeutet. Die Signale "Kanal 1 Pufferanfrage" und "Kanal 2 Pufferanfrage11 werden von einer nicht gezeigten Schaltungsanordnung stets dann erzeugt, wenn auf dem bezeichneten Kanal eine weitere Uebertragung eines Datenwortes waehrend einer Pufferoperation erfolgen kann.
Die Kippschaltung 20-10 wird von der NUND-Schaltung 20-13 in der Taktphase CP2 nur waehrend des Zeitabschnittes T7, welcher am Schluss der Speicherzyklen SCO und SC3 auftritt, oder zwischen zwei Befehlszyklen eingestellt, und zwar nur dann, wenn die Ausgangssignale der NODER-Schaltungen 20-11 und 20-12 positiv sind. Ist die Kippschaltung 20-10 eingestellt, so erzeugt sie das positive Befehlssignal MD-Regi8teransteuerung freigeben11«
H49568
Die NUND-Schaltung 20-15 iuird iuaehrend des Einstellzu-Standes der Kippschaltungen 20-10 und 5-27 geoeffnet, um die Befehlssignale "XO raeumen" und "S4, S6 einstellen" zu erzeugen, die zur Weiterschaltung der D-Taktregistar erforderlich sind,, Ausserdem wird im Negator 20—16 das negative Signal dar NUND-Schaltung 20-15 negiert, um das Befehlssignal "D-Taktregister weiterschalten" zu erzeugen, welches in Fig.-5 in der zuvor beschriebenen Weise benutzt wird. Ist dagegen die Kippschaltung 20-10. infolge einer Pufferanfrage auf einem der Ein/Ausgabekanaele eingestellt, dann ist das Befehlssignal "keine Ansteuerung des D-Taktregisters" positiv und deffnet die NUND-Schaltung 20-18, um das Bafehlssignal "Puffer" zu erzeugen, das in Fig. 3 dazu dient, anzuzeigen, dass eine gepufferte Datenuebertragung stattfindet. Stellt das zu dieser Zeit uebertragene Wort das letzte Wort der Wortgruppe dar, die zwischen der externen Einheit und dem eingebauten Speicher zu uebertragen ist, dann uiird der RK~Zaehler um eins verringert, so dass der Zaehlerstand 0 ist, worauf entweder die NUND-Schaltung 3-52 oder 3-53 geoeffnet wird, je nachdem, auf welchem Ein/ Ausgabekanal die gepufferte Uebertragung stattfindet.
Die NUND-Schaltung 20-14 wird geoeffnet, wenn die Ausgangssignale der NODER-Schaltungen 20-12 und 20-11 positiv sind» Das negative Signal der NUND-Scharltung ist mit "Schrittzaehler-Uieiterschaltung sperren" bezeichnet und dient dazu, die Weiterschaltung des Schrittzaehlers in Fig. 9 zu verhindern. Wird also iuaehrend eines Befehlszyklus eine Pufferung oder eine Verringerung des Inhaltes eines Delta-Registers geu/uenscht, dann wird der Schrittzaehler fuer die Dauer eines Speicherzyklus daran gehindert, von SCO auf SC1 oder gegebenenfalls co von SC3 auf SC4 weiterzuschalten,, Waehrend dieser Sperr- ^ dauer wird der Speicher stattdessen wegen des Inhaltes oo eines Delta-Registers odar wegen einer Speicherstelle ω angesteuert, die zu dem auf dem Ein/Ausgabekanal zu _^ uebertragsnden Datenwort gehaart. Ausserdem unter- « »^ stuetzt die NUND-Schaltung 20-14 die Raeumung der Kipp-CD schaltung 20-10 ueber die NUND-Schaltung 20-17 einen Speicherzyklus nach der urspruengliehen Einstellung
dieser Kippschaltung durch die NUND-Schaltung 20-13. Bis dahin aiird von der NODER-Schaltung 20-12 ein negatives Signal erzeugt, wodurch das Ausgangssignal der NUND-Schaltung 20-14 positiv mird und die Oeffnung der NUND-Schaltung 20-1? unterstuetzt.
Fig. 21 zeigt einen Teil des Z-Registers, das als Puffer zwischen dem Speicher und anderen nicht zum Speicher gBhperenden Registern dient. Dieses Register enthaelt sieben Bits,, von denen nur drei in Fig„ 21 aus Gruenden 4er Vereinfachung dargestellt sinde Durch eines der an d,er .^UND-Schaltung 21-10 anliegenden und in der Taktphase EP4, uebertragenen BBfehlssignale "Z raeumen" werden sasmtliehe Stufen des Z-Registers auf den Wert 0 eingestellt. Beim Herauslesen aus dem Speicher spricht jede Stufe W auf ein negatives Signal eines zugeordneten Speicher-LeseverstaerkBrs an, so dass die betreffende Stufe auf - eine binaere Eins eingestellt uiird, wenn dieses Bit herausgelesen ttiird. Ausserdem sind zuiei NUND-Schaltungen 21^11 und 21-12 vorgesehen, um in das Z-Register einen bestimmten liiert einzudruecken. Die NUND-Schaltung 21-11 uird. in dar Taktphase CP1 durch das Befehlssignal "+2 nach la geoeffnet, um die Stufe Z1 einzustellen. Sind alle uebrigen Z-Stufen geraeumt, so befindet sich im Z-Register der UJert 0000010, der den Oktaluiert 2 darstellt. Die NUND-Schaltung 21-12 kann durch ein Befehlssignal "+1 nach Z" geoeffnet luerden, um die Stufe ZO * einzustellen und damit effektiv den Oktaluiert 1 in das Z-Register einzugeben. Die von den Ein/Ausgabekanaelen 1 und 2 kommenden Eingangssignale fuer das Z-Register sind in Fige 21 nicht dargestellt, obuiohl sie jedoch in Wirklichkeit vorgesehen sind, wie Fige 1 zeigt«
Fig0 22 zeigt zusei 5tufen des 7-Bit~X-Registere. Dieco ess Register erhaelt einen Operanden vom Z-Register. J0 Vor dem Empfang von Information vom Z-Register wird ^ das Befehlssignal "X einstellen" an die NUND-Schaltung c*> 22-10 angelegt, ujodurch diese in der Taktzeit CP2 ge- _» oeffnet wird, um saemtliche Stufen des X-Registers auf ^1 den Binaerujert 1 einzustellen, ^uf diese Weise wird in das X-Registar der Oktaluiert -0 eingegeben, !fluss vom Z"-Register Information in das X-Register ueberfuehrt
■■·'■■■ - 52■ *- - V
1448568
werden, so werden die NUND-Schaltungen 22-11...22-17 in dar Taktphase CP3 durch eines der Befehlssignale "Z nach X" geoeffnet, so dass vom Z-Register Bits 0 uebartragen werden'koenpen. Ist beispielsweise die Stufe XO zu Beginn auf den liiert 1 eingestellt, enthaeit dagegen die Stufe ZO eine binaere 0, dann wird die NUND-Schaltung 22-11 geoeffnet, um die Stufe XO zu raeumen. Enthaeit die Stufe ZO dagegen eine binaere 1, so kann die NUND-Schaltung 22-11 kein negatives Signal erzeugen, so dass die Stufe XO in ihrem Binaerzustand 1 bleibt. Die NUND-Schaltungen 22-19.·. „22-25 sind vorgesehen, um den Komplementufert des Z-Registers in das X-Register zu ueberfuehren, wenn das Bef.shlssignal "Z1 nach X" erzeugt wird. (Ist die Stufe ZO auf 1 eingestellt, dann wird die Stufe XO durch die NUND-Schaltung 22-19 geraeumt.) Soll der Inhalt eines Delta-Registers verringert werden;, so bewirkt die Erzeugung dss negativen Befehlssignals "XO raeumen" (Fig. 20), dass der Inhalt das X-Registers 1111110 wird. Diese Bitkonstallation stellt den Oktalwert ~0T dar. UJird dieser U/ert zum Inhalt des .angesteuerten Delta-Registers addiert, so wird der Inhalt dieses Registers dadurch um 1 verkleinert.
Arbeitsweise
Zur Veransctiauliehung der Arbeitsweise der vorliegenden Erfindung, d. h. der fuer die einzelnen Unterbrich-Prioritaetsniveaus jeweils gesondert vorgesehenen Funktionsregister A., B und P, wird nunmehr die Ausfuehrung eines typischen Befehls-, wie beispielsweise eines Addierbefehls (f = 00), beschrieben. Zum Zweck der Beschreibung soll dabei folgendes angenommen werden« 1. Der Addierbefehl befindet sich in dem zum Unterbrichniveau 6 gehoerenden Programm. 2. Die Adresse dieses Befehls befindet sich im Speicher in den Speichersteilan 2500 und 2501 (oktal) «> 3. Der Kennteil a des Be- ^ fehls ist 01 und der Kennteil b TQ. 4, Der Kennteil y -* lautet 32 (oktal). In der nachstehenden Tabelle sind v^ die zur Entnahme und Ausfuehrung dieses Befehls er— ^ forderliche Anzahl von SpeicherzyklBn sowie die in diesen Zyklen jeweils ausgefuehrten Operationsschritte angefuehrt, wobei NI den naeehsten Befehl bezeichnet.
" Speicherzyklus Qperationsschritt
SCO NI-Adresse (untere Haelfta) abrufen
SC1 NI-Adresse (obere Haelfte) abrufen
SC2 NI (untere Haelfte) abrufen
SC3 NI (obere Haelfte) abrufen
SC4 Inhalt des B-Registers abrufen
SC5 Operand von Yb abrufen
SC6 Inhalt des ^-Registers abrufen,
aendern und rueckspaicharn
Fig. 23 zeigt im einzelnen die in den Speicherzyklen 0»..6 durchgafuehrten Arbeitsschritta. Fuer den Addier« befahl ist dör Speicherzyklus 7 nicht erforderlich! dar Befehlszyklus ist mit dem Ablauf des Speicherzyklus 6 beendete Dar Inhalt der verschiedenen Register ist in dan einzelnen Speicherzyklen jeweils durch eine Rechtackujelle dargestellt. Ist die Wellenform eines Ra- M gisters zu einer bestimmten Zeit beispielsweise niedrig, so bedeutet dies, dass das Register lear ist. Das in . Fige 23 oben dargestellte Zeitdiagramm fuer die Zeitabschnitte T0...T7 gilt fuer alle Speicherzyklen.
Es soll angenommen werden, dass saemtlicha Stufen das Befehlsschrittzaehlers in Figg 9 geraeumt sind, so dass das positive Signal SCO erzeugt uiird» Mit der Einstellung dar Kippschaltung 1 0-10 tuird die NUND-Schaltung 11-10 durch das Signal TO geoeffnet, um zunaechst das IC-Register in der Taktphase CP3 zu raeumen und sodann in dar Taktphase CP4 das hoechste Prioritaetsniveau des I-Registers nach IC zu leiten. Nimmt man an, dass die zu dieser Zeit eingestellte Stufe 16 die hoechste Priori- ™
taat hat, so befindet sich am Schluss des Zeitabschnittes TO dar Wart 110 im IC-Register Q Ulaehrend das Zeitabschnittes T1 wird das Z-Register zunaachst in dar Taktphase CP4 durch die NUND-Schaltung 11-15 geraeumtf anschliessand uiird in der naechsten Taktphase CP1 dar Qktalwert +2 in das Z-Registsr eingedrueckt· Ausssrdean c> uiird it» Zeitabschnitt T1 in der Taktphase CP4 dar fruahers ^ Inhalt das S-^egieters durch die NUND-Schaltung 18-10 -*■ entfernt. UJaehrend T2 veranlasst die NUND-Schaltung 11-12 >*. die Einspeicherung des Oktaliuertes 0114 in das S-Registar J0 in der Taktphase CP1. Dieser Oktalmert ist die Speicher-
Bafahlsadresssnregisters P, tuelches die untere Haelfte
adressa des fuer das Unterbrichniveau 6 vorgesehenen
- - 54 - ■· ' ■
der naechsten Befehlsadresse enthaelt. Ausserden» werden im Zeitabschnitt T2 saemtliehe Stufen das X-Registers durch die NODER-Schaltung 10-30 auf den liiert 1 in der Taktphase CP2 eingestellt, worauf die NUNO-5chaltung 11-11 in der naechsten Taktphase CP3 den Wert +2 vom Z-Register in das X-Register uebertraegt.
Uiaehrend das Zeitabschnittes TO des Speicherzyklus SCO erzeugt der Negator 18-11 ein Signal, wodurch die Speicher-Lese- und -HJiedereinschreiboperation beginnt; aussardem luird die Kippschaltung 9-14 vor» der NUND-Schaltung 18—12"eingestellt, so dass der Befehlssehrittzaehlar zu den entsprechenden Zeiten iimitergeschajtat tuirdo Der Negator 10-31 bewirkt ausserdem 'die Raeumung des Z-Registers in der Taktphase CP4, so dass dieses Register die untere Haelfte der naachsten Befehlsadresse aufnehmen kann, luenn diese aus der SpeicharstBlle 0114 herausgelesen wird. Diese untere Haelfte der naechstan Befehlsadresse hat den Oktaltuert 076 und wird, von den Speicher-Leseverstaerkern in das Z-Register geleitet. An dieser Stella sei darauf hingsiuiesen, dass sich dar Uiert 0 stets in der Position 6 der Spaicheratellen des P—Registers befindet.
WJit dar Einstellung der Kippschaltung 10-14 beginnt der Zeitabschnitt T4, und die NUND-Schaltung ■ T-0-22 raeumt die Kippschaltung 19-14. Dies geschieht zu Beginn jedes Zeitabschnittes T4 automatisch. Sobald jedoch das positive Signal T4 erscheint, stellt die NUND-Schaltung 18-13 die Kippschaltung 19-14 erneut ein, so dass die in den Speicher uiiBdereingeschriebBne Information vom Ausgang des Addierers kommt. Zu der Zeit, in uielcher die Information a/ieder in den Speicher eingeschrieben. u/irdr spricht der Addierer auf den im Z-Register befindlichen Oktal-
°* wart 076 sowie auf den im X-flegister befindlichen Oktal-
cd luert 002 an und bildet aus diesen beiden Warten die
■_» Summe GOO (oktal), luelchs dia untere Haelfte der Adresse
*^* des zu entnehmenden und auszufuehrenden Addierbefahls
-* darstellt. Normaleru/eise ist 076 + 002 * TOQ.. tUaehrend *
en des Speicherzyklus SCO u»ird jedoch der Ausgang 2 des Addierers gesperrt, um sicherzustellen, dass die untere 'HasIfte der Adresse positiv bleibt. IJiaehrend des Zeit—
~"5S ' U49568
abschnittes T6 uiird die NUND-Schaltung 11-13 geoeffnet, um zunaechst das UL-Register in der Taktphase GP3 zu raeumen und dann die Signale der Ausgaenge 2 ...2 des Addierers (saiuie das in der Stufe Z6 befindliche Bit 0) in der Taktphase CP4 in das UL-Register zu leitfen. Am Schluss des Speicherzyklus SCO enthalten also die Stufen 0Oo «5 von UL den Qktalwert 00, waehrend die Stufe 6 von UL eine binaere 0 enthaelt. Ausserdem uiird die Uebertrag-Kippschaltung 19-17 in der Taktphase CP2 u/aehrend des Zeitabschnittes T6 durch die NUND-Schaltung 18-14 ruenkgestellto
lUaehrend des Zeitabschnittes T7 wird die NUND-Schaltting 11-14 geoeffnet» um festzustellen, ob bei der Addition der in den Registern Z und X enthaltenen Zahlen ein M Uebertrag 1 in der Bitstelle 2 gebildet wird, Ulenn dies der Fall ist, uiird die NUND-Schaltung 19-18 in der Taktphase CP4 geoeffnet, um die Kippschaltung 19-17 einzustellen, so dass dieser' Uebertrag zur Bitstelle 2 der oberen Haelfte der naechsten Befehlsadresse, die uiaehrend des naechsten Speicherzyklus· SCI abgerufen uiird» hinzuaddiert werden kann. Mit dem erneuten Beginn des Zeitabschnittes TO und der dabei auftreten»» den Ueberlappung mit dem Zeitabschnitt T7 uiird die NUND-Schaltung 18-15 geoeffnet, um den Befehlsschrittzaehler (Fig. 9) weiterzuschalten, so dass das Signal SC1 positiv wird. SCO wird daraufhin negativ, womit der erste Speicherzyklus dieses Befehlszyklus beendet ' ist.
Wie Figo 23 zeigt, wird der Oktaluiert 076 waehrend .des Speicherzyklus SC1 in der Taktphase CP4 durch die NUND-Schaltung 12-10 aus dem Z-Register entfernt, so dass die NUND-Schaltung 12-12 den Oktalwert 001 in der ^SJ naechsten Tsiktphase CP1 in dieses Register leiten <° kann; diesbedeutet, dass die Stufe ZO eingestellt ist,
—* · waehrend die Stufen Z1...Z6 geraeumt bleiben. Dieser ^ Fall tritt jedoch nur dann auf, wenn die Uebertrag- -* Kippschaltung 19-17 im Speicherzyklus SCO eingestellt to
«n uiorUen war. In dem hier1 beschriebenen Beispiel trifft dies zu, da bei der «ddition der beiden Oktalmerte 02
und 76 ein Uebertrag 1 von der ziueitniadrigsten Oktal-
■ ■ ■.:-■■ 56 -
stelle (von der Bitsteile 2 des Addierers) gebildet uiird. Ausserdem wird von der NUND-Scbaltung 1θ-»10 im Zeitabschnitt Tl des Speicherzyklus SCi die Speicheradresse 0114 aus dem S-Register entfernt, um Platz zu machen fuer die Aufnahme der P-Registeradresse 0115, u/elche die obere Haelfte der naechsten Befehlsadresse fuer das Unterbrichniveau 6 enthaelt. Die NUND-Schaltung 12-11 iuird also im Zeitabschnitt T2 geoeffnet, um das Befehlssignal "P ·+· 1 nach S" zu erzeugen, wodurch die Adresse 0115 in das S-flegister geleitet uiird. Ausserdem werden zu dieser Zeit saemtüche Stufen des X-Regieters von der NODER-Schaltung 10-30 auf den U/ert 1 in der Taktphase CP2 eingestellt. In der naechsten Taktphase CP3 uiird x von der NUND-Schaltung 12-11 der im Z-Register befindliche liiert +1 in das X-Register uebertragen. Uiaehrend T3 wird die Speicheroperation vom Negator 18-11 erneut eingeleitet, lu-aehrend der Negator 10-31 den zuvor in das Z-Register uebertragenen liiert +1 entfernt, um dieses ■ Register fuer die Aufnahme der oberen Haelfts der naechsten Befehlsadresse aus der Speicherstelle 0115 vorzubereiten. Diese obere Haelfte hat den Oktalu/ert 24.
fflit der Einleitu'ng des Zeitabschnittes T4 durch die NUND-Schaltung 10-22 luird ausserdem die Kippschaltung 19-14 rueckgestellto Die NUND-Schaltung 18-13 wird jedoch geoeffnet, um die Kippschaltung 19-14 anschliessend ufieder einzustellen, so dass der Ausgang des Addierers im .Speicherzyklus SC1 mieder in den Speicher eingesöhrie- · ben werden kann» Da der Addierer auf den im Z-RegTster befindlichen liiert 24 und den im X-Register befindlichen Wert 01 anspricht, stellt sein Ausgang somit die Summe 25 dar* Dieser Ausgang des Addierers bleibt so lange erhalten, tuie sich im Z-Register der liiert 24 und im OJ X-Register der liiert 01 befindet, usobei die Summe 25 ^ -. uiaehrend des Uiiedereinschreibschrittes des Speicherco Zyklus SCi in die Speicheradresse 01.15 miedereingeachrie-Oi ben wird. UJaehrend des Zeitabschnittes T6 wird die 2^ Kippschaltung 19-17· in der Taktphase CP2 von der NUND« Schaltung 18-14 rueckgestellt, «aehrend im Zeitabschnitt
e> T7 die NUND-Schaltung 18-15 u/aehrend der UBberlappung
von TO und CP2 geoeffnet uiird, um den Befehlsschritt-
zaahlar auf SC2 lueiterzuschalten.
tlJaehrend des Zeitabschnittes T1 das Speicherzyklus 5C2 wird der fruehera Inhalt (0115) des S-Registers durch die NUND-Schaltung 18-10 entfernt. Mit Beginn des Zeitabschnittes T2 uiird die NUND-Schaltung 13-10 geoeffnet, um in der Taktphase CP1 den Inhalt des UL-Registers in das SL-^egiater und den Ausgang des Addierers nach SU zu leiten. SL enthaelt also jetzt den Oktaluiert 00, uiaehrend SU den üktaiujert 25 aufnimmt. Betrachtet man die im S-Register befindliche Adresse in ihrer Gesamtheit, so hat diese den Wert 2500 und bezeichnet damit die Speicherstelle, in der sich die untere Haelfte des hier beschriebenen Addierbefehls befindet. Ausserdem enthalten die P-Speicherstellan 0115 und 0114 des Speichers, aus denen der UJert 2.476 entnommen luurde, jetzt ebenfalls den Wert" 2500, (uiobei von jeder Speicherstelle nur die Positionen O0..5 beruecksichtigt werden, da sich in der Position 6 eine binaere 0 befindet).
Uiaehrend des Zeitabschnittes T3 leitet der Negator 18-11 die Speicher-Lese- und -Schreiboperatdion ein, uiaehrend der Negator 10-31 das Z-Register raeumt, um dieses auf die Aufnahme der unteren Haelfte des Addierbefehls vorzubereiten. Diese untere Haelfte enthaelt den Kennteil y des Befehls souiie das in dar unteren Stelle befindliche Bit des Kennteils b. Zum Zweck der Beschreibung ist an-» genommen morden, dass der Kennteil y den Oktaluiert 32 hat, waehrend das in der unteren Stelle des Kennteils b befindliche Bits den Wert D hat. Wie Fige 23 zeigt, luird also dar Ulert 032 aus der Speicherstelle 2500 des Speichers in das Z-Register ueberfuehrt. Im Zeitabschnitt T6 ujird UL in der Taktphase CP3 von der NUND-Schaltung 13-11 geraeumtj anschliesaend uiird der Ausgang des Addierers zusammen mit dem in dar to Stufe Z6 enthaltenen Wart nach UL transportiert. Da
__» der Addierer zu dieser Zeit auf den im Z-Registsr be- ·** findlichen Wert 032 und den Wart -0 im X-Regiatar an- -*· spricht, isird somit in UL der liiert 032 eingegeben. in Ulaehrend der Ueberlappung der Zeitabschnitte T7 und TO uiird der Schrittzaeh|er durch die NUND-Schaltung 18-15 uiaitergeschaltat, um den Speicherzyklus SC3 einzuleiten.-
= - 58 -
iffaeftrand das Speicherzyklus SC3 treten folgende Ereignisse auf. Im Zeitabschnitt T2 wird die Stufe SQ durch aie NUND-Schaltung 14-10 eingestellt, uiodurch die im S-Rsgister befindliche Adresse von 2500 auf 2501 er---' / hasht wird«, Diese zuletztganannte Adresse enthaelt dia obers HaelftB des zu entnehmenden Befehls; diese obars Haelfte ist diejenige Haelfta, in der sich der F"unktionscode QQ, der Ksnnteil a 01 und das Bit 1 dar oberen Stella des Kennteils b befinden,, UJaahrand des Zeitabschnittes T3 leitet der Negator 18-11 dia Speicheroperation ein, umehrend der Nagator. 10-31 den alten Inhalt (032) das Z »»Registers entfernt. Das Z-Ragister ist somit zur Aufnahme der oberen Haelfta das Befehls,.die sich in der Speicherstella 2501 befindet, bereit. Im Zeitabschnitt T5 luird das UU-Ragister von dar NUND-Schaltung 14-11 garaaumt, so dass dar Inhalt des Z-Registers im Zeitabschnitt T6 von dar NUND-Schaltung 14-12 in das Register UU luaahrand dar Taktphase CP2 uebarfuahrt . iiierdan kann. Am Schluss des Spaicharzyklus SC3 'enthaelt. UU also dan Oktaiu/ert 003, ujaahrend UL den Oktaluiart 032 aufnimmt. Batracfrtat man das U-Registar In sainar GBsafrtthait t so setzt sich das uolistaandige Befehlswort aus einem Funktionscode 0000, einem KanntaiJ a 01, einem Kennteil b 10 und einem Kennteil y 011010 zusammen* Dia KüMD-Sehaltung 18-15 wird in dan ZBltabschnittan T7 ttrtd TO geoeffnat, um den Schrittzaehlar uieitsrzuschalten und dan Speicharzykius SC4 einzuleiten.
iaahrsnd das Speicherzyklus SC4 wird der Inhalt des B-Registers au3 dam Speicher in Ueberelnstimmung mit dem Ufert das Kenntails b und das dam Untarbrichnivaau zugaordnaten Programms j zu u/alcham dar Bafahl gahoart, ant^ Fioftifnan» Im Zeitabschnitt T1 wird das S-Ragistar in der c& Taktphasa CP4 durch die NUND-Schaltung 18-10 garaaunit, u> uäfaehrand das Z-Ragister gleichfalls in dar Täktphasa °* CP4 von der NUND-Schaltung 1S-1Q geraaumt wird«, In der Taktphase CPT uiird dar Kanntail b IQ von dar NUND- _a- . ■ Schaltung TS-12 in das S-Registar uaberfuahrto Aussar- Φ ^ deta fcransportiart die NüND-Schaltung 15-14 dan Inhalt to des IC-Registsrs in dasS-Register in der Taktphase CP1, um die Stufen S5 und S4 in Uebereinstimmung mit dem Un-
terbrichniveau 6 einzustellen. Die Stufen des SU-Registers enthalten also saemtlich Nullen, waehrend sich in den Stufen des SL-^egisters der liiert 110110 in Uebereinstim-
mung mit dem UIert 2 des Kennteils b und dem vorliegenden Unterbrichniveau 6 befindet.
Wit der Einleitung des Zeitabschnittes T2 stellt die NÜDER-Schaltung 10-30 saemtliche Stufen des X-Registers auf den Wert 1 ein» Uiaehrend des Zeitabschnittes T3 leitet der Negator 1B-11 die Speicher-Lese'- und -Schreiboperation ein, waehrend der Negator 10-31 das Z-Register raeumt, um dieses fuer die Aufnahme des Inhaltes des B-Registers, dessen Adresse 0066 ist, vorzubereiten. Zum Zwack der Beschreibung uiird angenommen, dass der In— halt des B-Registers den Binaeruiert 0110000 hat, so dass das Z-Register im letzten Teil des Speicherzyklus 5C4 auf diesen Wert eingestellt wird. Uiaehrend der Ueberlappung der Zeitabschnitte T7 und TO schaltet die NUND-Schaltung 18-15 den Schrittzaehler in der Taktphase CP2 weiter*! um den Speicherzyklus SC5 einzuleiten.
UJaehrend des Speicherzyklus SC5 wird ein Operand' aus der Speicherstelle entnommen, deren Adresse sich aus dem Kennteil y des Befehlswortes sowie aus dem uiaehrend des Speicherzyklus SC4 abgerufenen Inhalt ·; des B-Registers zusammensetzt. Uiaehrend des Zeitabschnittes T1 wird von der NUND-Schaltung 18-10 die B-Registeradresse aus dem S-Register entfernt. UJaehrend des /Zeitabschnittes T2 uebertraegt die NUND-Schaltung 16-10 in der Taktphase .J_._ CP1 UL nach SL und Z nach SU. SL enthaelt also jetzt den Oktaluiert 32, maehrend SU den Oktaluiert 60 aufnimmt. Der Speicher wird daher an der Adresse 6032 angesteuert, in welcher sich ein Operand befindet, der iuaehrend des Speicherzyklus SC6 zu dem Inhalt eines A-Registers
"* . zu addieren ist« Uiaehrend des Zeitabschnittes T3 im O
to '· Speicherzyklus SC5 leitet der Negator 1S-I1 die Speicher-Ott
_* » Lese- und -Schreiboperation ein, uiaehrend der Negator i^ 10*«31 das Z-Ragister zwecks Aufnahme dieses Operanden —* raeumt. Am Schluss des Speicherzyklus SC5 enthaelt «n flas Z-Register daher den aus der Speicherstelle 6032 abgerufenen Operanden, und die NUWD-Schaltung 18-15 juird geoeffnet, um den Schrittzaehler zwecks Einleitung des
U49568
Speicherzyklus SC6 erneut ujeiterzuschalteno
UJaehrend des Speicherzyklus SC6.u/ird vom Kennteil a sowie von dem vorliegenden Unterbrichniveau 6 bestimmt, welches'der im Speicher befindlichen Α-Register auszuluaehlBn ist. Osr Inhalt dieses A-Regiatsrs uiird zu dem taaehrend des Speicharzyklus SC5 entnommenen Operanden addiert und die Summe in das Α-Register zurueckgespei«- cherto Waehrend des Zeitabschnittes T1 raeumt die NUND-Schaltung 18-10 das S-Ragister in der Taktphase CP4. ljjaehrend des Zeitabschnittes T2 uebertraegt die NUND--Schaltung 17-11 den im Z-Register befindlichen Operanden in das X-Slegister. Die MUND-Schaltung 17-12 stellt die Stufe SO auf den UJBrt 01 des Kennteils a ein, u/äehrend die NUND-Schaltung 17-13.den Inhalt des IC-Registers in die Stufen S3y 54 und 55 transportiert ο Der in 1SL eingegebene lüert lautet also 110001, u/aehrend das SU—Register leer bleibt. Die u/aehrend des Speicherzyklus SG6 angesteuerte Adresse des Α-Registers lautet daher 0061» Ulashrend des Zeitabschnittes T3 Reitet der Negator 18-11. die Speicher-Lsse— und -Schreiboperation Bin, um den Inhalt des A—Registers zu entnehmen und in das Z-Register zu ueberfueh— ren, uielches unter dem Einfluss das Negators 10—31 fuer diese Aufnahme geraeumt mird0 lliaehrend des Zeitabschnittes T4 des Speicherzyklus SC6 stellt die NUND-Schaltung 17-15 die Kippschaltung 19-14 ein, so dass die Summe von Z und X, die am Ausgang des Addierers erschsint, iuaehrend des Rueckschreibschrittss der Speicheroperation in das A-Register zurueckgespeichert werden kann. UJaehrend des Zeitabschnittes T7 wird die NUND-Schaltung 17-16 geoeffnet» ura das Befehlssignal "Befehl beenden" zu erzeugen, uiDdurch die Kippschaltung 9-14 gsraeumt luirdj durch diese Raetjmung u/ird verhindert^ dass der Schrittzaehler auf den ^0 Speicherzyklus SC7 uisitergeschaltet u)irdc Dieser letzte ^ ο Speicherzyklus ist fuer'die Ausfushrung des Addierbefehls'
co ■-.- -■■■■'
co nicht erforderlicho ■
**>." fige 23 zeigt, in welcher U/eise das die Programmsteuerung _» ausuebende Unterbrichniueau die Funktionsregister A,. B und · m P ausiuaehien hilft. Zwar kann die Ausfuehrung von Befehlen ^* mit anderen Operationsteilen dazu fuehren, dass die Register A und 8 zu anderen Zeiten als den im vorliegenden Beispiel
angegebenen angesteuert werden, doch bleibt die Aufgabe der I- und IC-Register, das S-Register.zu beeinflussen, gleich, unabhaengig davon, zu welchem Zeitpunkt der Speicher angesteuert wird.
lüaehrend der Ausfuehrung eines Befehls mit dem Operationsteil 14 und dem Kennteil a = 0 werden die einzelnen Stufen des I-Registers auf den Wert 1 eingestellt, wenn die entsprechenden Bits des Kennteils y 1 sind und wenn das Bit der unteren Stelle des Kennteils b 1 ist. Diese Einstellung uiird waehrend des Speicherzyklus SC3 durchge-· fuehrt, in welchem die NUND-Schaltung 14-15 im Zeitabschnitt T7 das Befehlssignal "UL nach I" erzeugt. Ufie in Verbindung mit Fig. 3 beschrieben u/urde, gelangt dieses Befehlssignal an die NUND-Schaltungen 3-36«,. .3-42, um ™
den Inhalt der U-Stufen 6..,O abzutasten. Durch diese Torschaltungen werden die Stufen des I-Registers in Uebereinstimmung mit den in den U-Stufen befindlichen Einsen eingestellt. Ist der Kennteil a gleich 1 und der Funktionscode 14, dann befindet sich im !«Register das aus dem urspruenglichen Inhalt des I-Registers und dem in den Stufen 0»..6 des U-Registers enthaltenen liiert gebildete Bitprodukt. Wit anderen Worten, befindet sich in der Stufe U2 eine binaere 0, dann wird die Stufe 12 auf den Binaerwert Q rueckgestellt. In diesem Zusammenhang soll noch erwaehnt werden, dass ein Ruecksprung programmiert werden kann, indem in einem Programm mit d
einer niedrigeren Priaritaet ein solcher Befehl eingebaut wird, um eine Stufe des I-RegistBrs, die eine hoehere Prioritaet aufweist, einzustellen. In einem solchen Fall geht die Programmsteuerung sofort auf das hoehere Niveau ueber und fuehrt das dort bezeichnete Unterprogramm aus. Nach Ausfuehrung dieses die hoehere co Prioritaet aufweisenden Programms wird diese Stufe dea I-Registers geraeumt, worauf das unterbrochene Programm *** der niedrigeren Prioritaet wieder von dem Punkt aus t*> weiter abgewickelt wird, an welchem die "Pseudounter- _* brechung" oder der Ruecksprung auftrat.
«1 Befindet sich in der Stufe U2 eine binaere 1 und in der
Stufe 12 eine binaere 0, dann blaibt die Stufe 12 garaeumt. Zu diesem Zweck spricht die NUND-Schaltung 14-16
auf f = 14 sowie auf dan Raeumzustand der Stufe SJ9 • und den Einste 1.1 zustand der Stufe U8 an, um das Befehlssignal "U'L nach I" hu erzeugen, das in Fig,, 3 zur Qeffnung der NUND-Schaltungen 3-44...3-50 benutzt wird. Ausserdem wird der Befehlszyklus am Schluss des - Speicherzyklus SC3 durch die Deffnung der NUND-Schaltung 14-17 stets dann beendet, mann der Funktionscode 14 und der Kennteil a 0 oder 1 ist. Das Befahlssignal "Beferhl beenden" iuird der Fig. 9 zugeleitet, um die Kippschaltung 9-14 zu raeumen, die ihrerseits dadurch uegchindert, dass dar Schrittzähler auf SC4 maiterge« Schaltet uiird.
tiiie Z-uuor erwaehnt iuurde, ist in den fuer die Unterbrichniveaus vorgesehenen Programmen jeweils ein Sprungbefehl (Operationsteil 17) mit einem Kennteil a = O und b = O vorgesehen. Bei Ausfuehrung dieses Befehls wird die im Moment die hoechste Prioritaet aufweisende Stufe des !»Registers geraeumt, so dass ein Programm mit einer niedrigeren Prioritaet die Steuerung uebernehmen kann. Das Befehlssignal "Unterbrechung beenden", welches in Fig. 3 zur Raeumung der gerade benutzten I-Rsgristerstufe dient, uiird von dar NUND-Schaltung 14-»1B in Fig„ 14 im Speicherzyklus 3 tuaehrend der Ausfuehrung eines Sprungbefehls erzeugt. Diese Torschaltung spricht auf das Signal "a = 0" soiuie auf die in den Stufen .U7 und Ü6 enthaltenen Bits 0 an, die zusammen anzeigen, dass der Kenntöil b gleichfalls 0 ist. Ufie zuvor er» uiaehnt wurde, uiird dia hoechste eingestallte Stufe dee !-Registers normalerweise jaiuails zu Beginn eines neuen Befehlszyklue luaehrend das Speicherzyklus Q im IG-Register verschiuasselto Durch diese Riassnahme kann ein eins Unterbrachung veranlassendes Ereignis hoeherer Prioritast sofort die Steuerung am Schluss des laufenden ο Befehlszyklus, in dem dieses Ereignis auftrat, usber« Jj0, nahmen. Bezeichnet der im laufenden Sefehlszyklu3 aus-."* gefuehrte Befehl dagegen eine Auslass-, Wiederhol-- oder **·* Sprungopsration, dann wird die NUND-Schaltung 11-10 · so gesperrt und kann somit nicht das Befehlssignal ^ MI nach IC" im naechsten Befehlszyklus erzeugen. Ein Programmwechsal wird daher so lange werzoegert, bis
der auf den Auslass-, Wiederhol- oder Sprungbefehl folgende Befehl ausgefuehrt morden ist. Bezeichnet dieser Befßhl dann gleichfalls eine Auslass-, Wiederhol- oder Sprungoperation, dann uuird der auf diesen Befehl folgende Befehl gleichfalls ausgefuehrt, bevor eine Programmaenderung auftritt. Das vorliegende System kann also nicht so programmiert u/erden, dass es auf ein eine Unterbrechung veranlassendes Ereignis hoeherer Prioritaet wartet, indem ein Sprungbefehl ausgefuehrt wird, der staendig mieder zu sich selbst zurueckkehrt. Der. Grund hierfuer ist, dass der in diesem Fall auf den Sprung folgende Befehl stets ein anderer Sprung ist, so dass ein Programmu/echsel (l nach IC) staendig unterbunden wird. Dagegen kann jedoch ein Abwarten in zwei oder mehre- ™ ren Befehlen programmiert werden, indem der Sprungbefehl zum Sprung auf eine Befehlsadresse Pi-2 veranlasst wird, wo sich ein Befehl befindet, dar keinen Sprung-, Auslass— oder UJiederhol-Operationsteil enthaelt.
Fig«> 24 zeigt die Arbeitsschritte, die durchgefuehrt werden, uienn der Inhalt eines 'Selta-Taktregisters zu verringern ist. ^-s soll angenommen u/erden, dass die in Figo 5 gezeigte D-Einrichtung maehrend des Speicherzyklus O (Fig« 23) anzeigt, dass das Register Delta 1 um 1 zu verringern ist«, Fig. 24 beginnt ujaehrend dieses Speicherzyklus O mit dem Zeitabschnitt T4, möbel sich aus Fig. 23 ergibt, dass das S-Register bereits die ύ Adresse 0114 des P-Registers enthaelt, uiaehrend das X-Register den Oktalmert 02 und das Z-Register den Oktaluiert 76 enthaelt, der die untere Haelfte der naechsten Befehlsadresse darstellt, die uiaehrend dieses Zyklus aus dem P-Register abgerufen morden ist. Es soll angenommen werden, dass der Oszillator 5-10 ta (Figo 5) in der Taktphase CP3 ain negatives Signal er-· J0 . zeugt, nachdem er zuvor bis zu diesem Zeitpunkt ein *** positives Signal erzeugt hat. Ulaehrend der Oszillator w> 5-10 dieses positive Signal zuvor erzeugte, u/urde die _^ Kippschaltung 5-13 von der NUND-Schaltung 5-20 geraeumt, da beide Kippschaltungen 5-11 und 5-12 geraeumt maren. «o· Ausssrdem uuird die Kippschaltung 5-23 u/aehrend des po*· sit'iven Ausgangs des Oszillators eingestellt» UJird der
BAO ORIGINAL
Ausgang des Oszillators negativ, so u/ird daher die NUND-Schaltung 5-26 von der Kippschaltung5-24 in der auf die Aenderung des Oszillatorausgangs folgenden haechsten Taktphase CP3 geoeffnet. Am einen Eingang zur NUND-Sch.altu.ng 5-30 tritt also ein positives Signal auf. Da hier angenommen u/ird, dass der Speicherzyklue 0 vom Schrittzaehler eingeleitet uiird, erzeugt auch die NODER- ' Schaltung 20-11 ein mit "Zyklus genehmigt" bezeichnetes · positives Signal, melches an den anderen Eingang der NUND-Schaltung 5-30 angelegt uiird. Sobald das Zeitsignal T7 des Speicherzyklus 0 auftritt, uiird daher die NUND-Schaltung 5-30 in der Taktphase CP1 geöeffnet, um die Kippschaltung 5-27 einzustellen und damit da· Befehlesignal "D-Taktregister ansteuern" zu erzeugen* Da das Befehlssignal "D-Taktregister nicht ansteuern11 negativ wird, erzeugt die NODER-Schaltung 20-12 jetzt ein positives Signal, wodurch die NUND-Schaltung 20-13 in der naecheten Taktphase CP2 geoeffnet uiird. Die Kippschaltung 20-10 u/ird daher eingestellt. Die Kippschaltungen 5-23 und 5-24 uierden in diesem Speicherzyklue durch die zuvor in Verbindung mit Fig. 5 beschriebene Schaltungsanordnung geraeu,mt. Die NUND-Schaltung 20-15 spricht auf die Einstellzustaende der Kippschaltungen 20-10 und 5-24 an, um das Befehlssignal "D-Taktregister u/ei— tsrschalten" vom Negator 20-16 zu erzeugen. Dieses Befehlssignal mird der Fig. 5 zugeleitet, um die Kippschaltung 5-11 einzustellen und damit den Zaahlerstand von OO auf 01 zu aendern.
Die positiven Signale der NODER-Schaltungen 20-12 und 20-TT liegen ausserdem an der NUND-Schaltung 20-14 an, um das negative Befehlssigha.l "Weiterschaltung des Schrittzaehlers sperren" zu erzeugen. Dieses Befehlasi-. ? uz ir datier NttND-Schaltung -18-15- zugefuehrt, um deren
ο Ausgangssignal auch u/aehrend der. Ueberlappung der Zeit*·
Jo abschnitte TO und T7 am Ende des Speieherzyklus 0 posi-
-* - tlv zu halten. Der Schrittzaehler u/ird also nicht von
-ν. SCO auf SC1 uieitergeschaltet, sondern bleibt stattdessen
k> in eeinam Zustand SCO. Die Steuerkette laeuft dann wei-
^ ter um und schaltet von TO auf T1, u/ie Fig, 24 zeigt.
lüaehrend dee Zeitabachnittee TT spricht die NUND-Schaltung
1B*«16 nunmehr auf den Einstallzustand der Kippschaltung 20-10 an, um den frueheren Inhalt des S-Registara zu entfernen. Ufaehrend SCO erzeugt die NUND-Schaltung 18-10 ausserdeni das Befehlssignal "S raaumen", und zwar zur gleichen Zeit wie die NUND-Schaltung 18-16. Die NUND-Schaltung 18-16 ist fuer den Fall vorgesehen, dass die Verringerung des Inhaltes eines Delta-Registers waahrend des Speicherzyklua SC3 auftritt, da die NUND-Schaltung 18-10 normalerweise gesperrt ist. Das S-Reglster wird «aehrend der Taktphase CP4 ueber die NUND-Schaltung 7-43 geraeumt. Sobald jedoch die Taktphaae CP4 verschuiindet, wird das S-Register auf den Oktalwert 0121 eingestallt, da durch das Signal der NUND-Schaitung 20-15 die Stufet! S4 und S6 eingestellt werden, waehrend das M Ausgangssignal der NUND-Schaltung 5-17 die Stufe SO einstellt. Im Zeitabschnitt T2 werden saemtliche Stufen des X-Ragiatere mit Ausnahme XO auf den Wart 1 einge- K stellt* die Stufe XO wird durch daa Befehlssignal 11XO raeumen" von der NUND-Schaltung 20-15 geraeumt. Im X-Regieter befindet sich also jetzt der Qktalwert -01. • Im Zeitabschnitt T3 leitet der Negator 18-11 die Speicher-Lese- und -Schreiboperation ein, so dass der Inhalt der Adresse 0121 entnommen und in das Z-Regiater ueberfuehrt wird. Die Inhalte der Register Z und X werden zusammenaddiert und das Resultat uraehrend des UliadareinachreibschritteB in die Speicherstelle 0121 rueckgespeicharto f
Ist daa Resultat des Addierers zu dieser Zeit Q, dann spricht die NUND-Schaltung 5-29 im Zeitabschnitt T7 dieses varlaengerten Speicherzyklus 0 darauf an. Das Befehlesignal "Unterbtichstufe einstellen" luird also dar Fig. 3 zugafuehrt, wo es die NUND-Schaltung 3-17 ^0 oeffnet und damit die Stufe 11 einstellt. An der NUND-o Schaltung 3-17 liegen zu dieser Zeit die positiven co Signale 01 und D2 en. Außerdem wird die NUND-Schsl- ^ tung 5-31 in Zeitabschnitt T7 geoeffnet, um die Kipp-""^ Schaltung 5-27 in der Taktphase CP1 zu raeumen. Des
■o Auagangssignal der NUND-Schaltung 20-12 wird jetzt ,•rl
ίο negativ, wodurch die NUND-Schaltung 20-14 positiv wird.
Die NUND-Schsltung 20-17 wird daher in der naechstsn BADORtQlNAL
Vt to
1443568
Taktphasa CP2 gea off net, um die Kipp sch altung 20<*tö zu raeunmn« Äusaerdeiit wird such das Signal dar NUND-S*hai~ ttiEig 2G-1:4 rechtzeitig, positiv, »a dees dmm Ausgang·- signal der NUND-Schaltung 18-:T.5 negativ urird und den in Fig* 9 dargestellten Schrltfczashler in der Tsktphaee GP2 Bteiterschaltet,. Damit beginnt, der Speicherzyklu* T, und .der unterbrochene Befehlszyklue «ird uiieder aufgenommen.
Das hier beschriebene und dargestellte bevorzugte Auefuehrungsbei3piel der vorliegenden Erfindung uturd· in Verbindung mit einem Ostenverrarbeitunge»yets» erlaeutert, in welchem: die Funkt'ionsregister adresaierbare Speicheretellen im eingebauten Speicher darstellen» Es ist aber auch moeglich, dass aller oder einige der
- Ftinktionersgisiter nicht im Speicher selbst Vorgesehen sind, trie beispielsweise ett&a die Register Z, X us·, Ausserdem braucht u. U. nicht fuer Jedes gespeicherta Programm ein Akkumulator-Registex vargesehen zu luerdene Bei anderen Systemen.wiederum brauchte u. U, lediglich die Befehlsadresseinrichtung mehrmals fuer die einzel-.nen Prografnme vorgeaehen zu werden, wodurch .sich bereits eine betraechtliche Arbeitszeitersparnis ergeben. ujuerda» Dasselbe gilt fuer die Äkkunrulator- oder _ Indexfnqdifizierungsregieter. Uo» Fachmann koennen also zahlreiche Ulaiterbildungsn vorgenommen werdtn, ohne von dera durch die Ansprueche abgegrenzten U/esen der Erfindung abzuweichen»..
BAD ORiGINAL

Claims (1)

  1. PatentanspruBche 1 A 4 9 5 6
    Ty Durch Befehle gesteuertes Datenverarbeitungssystem , bei dem Befehle nacheinander abgerufen und ausge» fuehrt werden und zu einer [mehrzahl von an adressierbaren Stellen abgespeicherten Pragrammen zusammengefasst sind, gekennzeichnet durch eine mehrzahl von Funktionsregistergruppen (Register P, A, B), wobei fusr die ein« zelnen Programme jeu/eils eine solche Gruppe von Funktionsregistern vorgesehen ist, um die zur Entnahme und Ausfuehrung von in .dem betreffenden Programm enthaltenen Befehlen erforderliche Information aufzunehmen, und einen Auswahl-Schaltkreis (I, IC), der waehrend eines Befehls- Zyklus stets dann wirksam ist, wenn Funktionsregister JBj zur Auswahl der Funktionsregiater einer Gruppe in Uebereinstimmung mit dem abzuwickelnden Programm zu benutzen sind.
    2«, Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, dass fuer die einzelnen gespeicherten Programme jeweils ein zu den Funktionsregistern gehoarendes Befehlsadressenregister (P) vorgesehen ist, welches die Adresse eines abzurufenden Befehls in dem ihm zugeordneten Programm liefern kann, dass fuer jedes gespeicherte Programm mindestens ein Akkumulator-RegistBr (A) vorgesehen ist, welches Daten speichern kann, die bei der Ausfuehrung von Befehlen in dem ihm zugeordneten ^ Programm benutzt werden und dass fuer jedes gespeicherte ™ Programm mindestens ein Index-Register (B) vorgesehen ist, welches eine fflodifizierungsgroesse fuer die Adressen von Operanden speichern kann, die fuer die Ausfuehrung von Befehlen in dem ihm zugeordneten Programm benutzt werden.
    3. Datenverarbeitungssyetem nach Anspruch 1 oder 2,
    O dadurch gekennzeichnet, dass jedes Funktionsregister CO-
    co mindestens eine adressierbare Speicherstelle in einer ~t zentralen Speichereinheit hat«
    _» 4, Datenverarbeitungssystem nach Anspruch 1, ge-J^J kennzeichnet durch ein Unterbrich-Register (I), welches ΰ> auf wahlweise angelegte Ünterbrich-Signale anspricht, die jeweils ein anderes gespeichertes Programm bezeichnen
    und in Prioritaetsbeziehung zueinander stehen, wobei vom Unterbrich-Register Signale an. ein Programmwahlre- " gister (IC) angelegt werden, dessen Betrieb waehrend eines gerade ablaufenden Befehlszyklus normalerweise van dem Unterbrichsignal der hoechsten Prioritaet abhaengt, das dem Unterbrieh-Register vor Beginn des gerade ablaufenden Befehlszyklus zugefuehrt wurde.
    5o Datenverarbeitungssystem nach Anspruch 4, gekennzeichnet durch Torschaltungen, die auf die Ausfuehrung des letzten Befehls eines beliebigen Prioritaetsprogramms waehrend eines gerade ablaufenden Befehlsz-yklias ansprechen, um das Unterbrich-Register sowie das Prograraniwahlregister tuaehrend eines anschliessenden Befehlszyklus zur Auswahl derjenigen Gruppe von Funktionsregistern zu veranlassen, die dem Programm mit der naechstniedri— geren Prioritaet, dessen betreffendes Unterbrich-Signal dem Unterbrieh-Register zugeleitet worden ist, zugeordnet ist. . .
    6. Datenverarbeitungssystem nach Anspruch 4, dadurch gekennzeichnet, dass das Unterbrich-Register aus einer Anzahl von Binaerstuf en (11.. . 17 , FIg4; 3) besteht, wobei fuer jedes'Programm eine Stufe vorgesehen ist, die durch ein bestimmtes Unterbrich-Signal eingestellt werden kann, dass das Programmwahlregister eine Anzahl von Binaerstufen (IC1„„.IC3) umfasst, deren Inhalt-zur Auswahl einer Gruppe von Funktionsregistern benutzt wird, und dass Prioritaets-Torschaltun9en (3-20o. .3-27, 3-»54) vorgesehen sind, die waehrend jedes Befehlszyklus noch vor der Auswahl irgendwelcher Funktionsregister wirksam sind, um in das Pragrammwahlregister einen U/ert in Uebereinstimmung mit der im Unterbrich^Register eingestellten Stufe der hoechsten Prioritaet einzugeben.
    co 7C Datenverarbeitungssystem nach Anspruch 6, dadurcii
    J0 gekennzeichnet, dass eine Torschaltung (11-10) vorgesehen
    ^ ist, welche auf die Ausfuehrung einee bestimmten Befehls
    o* (Auslassen, Wiederholen, Sprung) tuaehrend eines gerade
    _a ablaufenden Befehlszyklus anspricht, um die Prioritaeta—
    ^n Torechaltungen waehrerrd des naechsten Befehlszyklus zu
    sperren
    BAD ORfGINAL
    Bv Dataniv<erarbeitungssystem nach Anspruch 6 f dadurch gekennzeichnet,, dass Raeum-Tarschaltungen (3—2Β,α.3-34) vorgesehen sind, welche sowohl auf die Ausfuehrung des Schlussbefebls eines beliebigen Priaritaetspragramma utashxend eines Befeblszyklua als auch auf dan im Prog,ramntujahlreip.ster befindlichen liiert ansprechen» um die eingestellte Stufe des Unterbrich-Registers zu raeumen, auf die sich der Ufert bezieht.
    9o Datenuararbeitungssystem nach Anspruch 4r in welchem jeder Befehl mindestens einen Kennteil enthaelt» welcher einen Wert enthalten kann, der dasjenige von η identischen Funktionsregistern bezeichnet, das bei der Ausfuehrung des Befehls benoetigt wird, dadurch gekennzeichnet t dass ein Register (S-Regiater, Figo 6} vorgesehen ist, welches soutohi auf das Pragrammuiahlregister als auch auf den in dem Kennteil des abgerufenen Befehls enthaltenen liiert anspricht, um ein ntes Funktiansregister aus der Gruppe des zugeordneten Programme auszuumehlen·
DE1449568A 1962-07-03 1963-06-22 Datenverarbeitungssystem Expired DE1449568C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US207253A US3226694A (en) 1962-07-03 1962-07-03 Interrupt system

Publications (3)

Publication Number Publication Date
DE1449568A1 true DE1449568A1 (de) 1969-03-27
DE1449568B2 DE1449568B2 (de) 1973-03-08
DE1449568C3 DE1449568C3 (de) 1973-09-27

Family

ID=22769793

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1449568A Expired DE1449568C3 (de) 1962-07-03 1963-06-22 Datenverarbeitungssystem

Country Status (6)

Country Link
US (1) US3226694A (de)
AT (1) AT240081B (de)
BE (1) BE634161A (de)
DE (1) DE1449568C3 (de)
GB (1) GB980352A (de)
NL (1) NL294820A (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2093457A5 (de) * 1970-04-21 1972-01-28 Singer Co
DE2416609A1 (de) * 1973-04-30 1974-11-14 Ibm Einrichtung zum vereinfachten speicherschutz und zur adressuebersetzung
DE2540975A1 (de) * 1974-11-26 1976-08-12 Burroughs Corp Multi-mikro-prozessor-einheit

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL295279A (de) * 1962-08-25
US3302181A (en) * 1963-06-17 1967-01-31 Gen Electric Digital input-output buffer for computerized systems
GB1054725A (de) * 1964-04-06
US3328771A (en) * 1964-06-30 1967-06-27 Ibm Priority sequence control
NL6500562A (de) * 1965-01-16 1966-07-18
US3373408A (en) * 1965-04-16 1968-03-12 Rca Corp Computer capable of switching between programs without storage and retrieval of the contents of operation registers
US3373407A (en) * 1965-08-02 1968-03-12 Rca Corp Scratch pad computer system
DE1462636C3 (de) * 1966-04-30 1974-08-29 Kabel- Und Metallwerke Gutehoffnungshuette Ag, 3000 Hannover Schaltungsanordnung zur Erfassung von Datea
US3434111A (en) * 1966-06-29 1969-03-18 Electronic Associates Program interrupt system
US3566357A (en) * 1966-07-05 1971-02-23 Rca Corp Multi-processor multi-programed computer system
GB1167336A (en) * 1966-08-12 1969-10-15 British Telecomminications Res Improvements in or relating to Data Processing Devices
US3505652A (en) * 1967-03-15 1970-04-07 Gen Electric Data storage access control apparatus for a multicomputer system
US3504347A (en) * 1967-07-03 1970-03-31 Gen Electric Interrupt monitor apparatus in a computer system
US3440619A (en) * 1967-07-14 1969-04-22 Ibm Control system for maintaining register contents during interrupt and branch conditions in a digital computer
USRE28612E (en) * 1970-06-10 1975-11-11 Digital processor having automatic conflict-resolving logic
US3639911A (en) * 1970-06-10 1972-02-01 Incoterm Digital processor having automatic conflict-resolving logic
US3676852A (en) * 1970-07-20 1972-07-11 Ibm Multiple program digital computer
US3774163A (en) * 1972-04-05 1973-11-20 Co Int Pour L Inf Hierarchized priority task chaining apparatus in information processing systems
DE2617485C3 (de) * 1976-04-22 1980-09-18 Nixdorf Computer Ag, 4790 Paderborn Schaltungsanordnung für Datenverarbeitungsanlagen zur Abarbeitung von Mikrobefehlsfolgen
DE2659662C3 (de) * 1976-12-30 1981-10-08 Ibm Deutschland Gmbh, 7000 Stuttgart Prioritätsstufengesteuerte Unterbrechungseinrichtung
DE2754890C2 (de) * 1977-12-09 1982-10-28 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Programmunterbrechung
US4250546A (en) * 1978-07-31 1981-02-10 Motorola, Inc. Fast interrupt method
US4255786A (en) * 1979-01-02 1981-03-10 Honeywell Information Systems Inc. Multi-way vectored interrupt capability
US5524250A (en) * 1991-08-23 1996-06-04 Silicon Graphics, Inc. Central processing unit for processing a plurality of threads using dedicated general purpose registers and masque register for providing access to the registers
US5987601A (en) * 1997-02-14 1999-11-16 Xyron Corporation Zero overhead computer interrupts with task switching
US6243767B1 (en) * 1998-06-02 2001-06-05 Adaptec, Inc. System for register partitioning in multi-tasking host adapters by assigning a register set and a unique identifier in each of a plurality of hardware modules
US20030014474A1 (en) * 2001-05-30 2003-01-16 Mckaig Ray S. Alternate zero overhead task change circuit
US20040172631A1 (en) * 2001-06-20 2004-09-02 Howard James E Concurrent-multitasking processor
CN106200659B (zh) * 2016-07-20 2019-05-31 深圳洲际通航投资控股有限公司 飞行器的中断控制方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL229160A (de) * 1958-06-30
US3061192A (en) * 1958-08-18 1962-10-30 Sylvania Electric Prod Data processing system
US3094610A (en) * 1959-06-02 1963-06-18 Sylvania Electric Prod Electronic computers
GB946918A (en) * 1959-06-08 1964-01-15 Int Computers & Tabulators Ltd Improvements in or relating to electronic calculating apparatus
BE626951A (de) * 1962-01-22

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2093457A5 (de) * 1970-04-21 1972-01-28 Singer Co
DE2416609A1 (de) * 1973-04-30 1974-11-14 Ibm Einrichtung zum vereinfachten speicherschutz und zur adressuebersetzung
DE2540975A1 (de) * 1974-11-26 1976-08-12 Burroughs Corp Multi-mikro-prozessor-einheit

Also Published As

Publication number Publication date
DE1449568B2 (de) 1973-03-08
US3226694A (en) 1965-12-28
AT240081B (de) 1965-05-10
DE1449568C3 (de) 1973-09-27
BE634161A (de)
NL294820A (de)
GB980352A (en) 1965-01-13

Similar Documents

Publication Publication Date Title
DE1449568A1 (de) Datenverarbeitungssystem
DE60306937T2 (de) Synchronisierung von pipelines in einem datenverarbeitungsgerät
DE1934220B2 (de) Vorrichtung zur wartung und pruefung von elektronischen datenverarbeitungsanlagen
DE1815078C3 (de) Elektronisches Datenverarbeitungssystem
DE1449532B2 (de) Datenverarbeitungsanlage
DE2045052A1 (de) System zum Identifizieren von Mehraufgabensituationen und zum Steuern der Durchführung dieser Aufgaben
DE1094493B (de) Programmunterbrechungssystem fuer programmgesteuerte elektronische datenverarbeitende Maschinen und Rechenanlagen
DE1901036A1 (de) Anordnung fuer die wiederholte Ausfuehrung fehlerhaft ausgefuehrter Funktionen
DE19518266A1 (de) Kommunikationssystem mit Mitteln zum Austausch von Software
DE1803767A1 (de) Elektronisches Datenverarbeitungssystem
DE1933685A1 (de) Simultan arbeitende Datenverarbeitungsanlage
DE1499194A1 (de) Speichersystem
DE1802646A1 (de) Schaltungsanordnung fuer Datenverarbeitungsanlagen,insbesondere Fernsprechvermittlungsanlagen,mit Einrichtungen zur Nachrichtenuebertragung
DE2725396A1 (de) Pufferspeicher
DE4429969A1 (de) Verfahren für einen Programmpaketeaustausch in einem Mehrrechnersystem und Rechner dafür
DE1909090A1 (de) Schutzeinrichtung fuer eine Rechenanlage
DE3333366A1 (de) Aufloesungsnetzwerk fuer zuletzt erfolgte benutzungen
DE1549426A1 (de) Datenverarbeitungsanlage,deren Steuerwerk Aufforderungen von Nebenanlagen zu verbotenen Handlungen verarbeitet
DE2854286A1 (de) Schaltungsanordnung mit einem befehlspuffer fuer eine cachespeichereinheit eines datenverarbeitungssystems
DE2222712A1 (de) Elektronisches raummultiplexkoppelfeld
DE3149678A1 (de) Anordnung zur zwischenspeicherung von zwischen zwei funktionseinheiten in beiden richtungen zu uebertragenden informationen in einem pufferspeicher
DE1474050C (de) Mit variabler Wortlange arbeitende digitale Recheneinrichtung
DE1499233C3 (de) Kombinationsrechenanlage
DE19742958A1 (de) Koprozessor und Signalverarbeitungseinrichtung
DE2639773A1 (de) Schaltungsanordnung zur entzerrung von start-stop-zeichen

Legal Events

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