DE2125688A1 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE2125688A1 DE2125688A1 DE19712125688 DE2125688A DE2125688A1 DE 2125688 A1 DE2125688 A1 DE 2125688A1 DE 19712125688 DE19712125688 DE 19712125688 DE 2125688 A DE2125688 A DE 2125688A DE 2125688 A1 DE2125688 A1 DE 2125688A1
- Authority
- DE
- Germany
- Prior art keywords
- instruction
- counter
- processing system
- state
- data processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- XXYGYFJCOAIEEK-UHFFFAOYSA-N o-ethyl (ethoxycarbothioyltrisulfanyl)methanethioate Chemical compound CCOC(=S)SSSC(=S)OCC XXYGYFJCOAIEEK-UHFFFAOYSA-N 0.000 claims description 10
- 230000006698 induction Effects 0.000 claims 1
- 230000015654 memory Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 5
- 102100026190 Class E basic helix-loop-helix protein 41 Human genes 0.000 description 4
- 101000765033 Homo sapiens Class E basic helix-loop-helix protein 41 Proteins 0.000 description 4
- 102100026191 Class E basic helix-loop-helix protein 40 Human genes 0.000 description 3
- 101710130550 Class E basic helix-loop-helix protein 40 Proteins 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 102100036661 Acylphosphatase-2 Human genes 0.000 description 1
- 101150007499 Acyp2 gene Proteins 0.000 description 1
- 208000007256 Nevus Diseases 0.000 description 1
- WGSPBWSPJOBKNT-UHFFFAOYSA-N iodocyanopindolol Chemical compound CC(C)NCC(O)COC1=CC=CC2=C1C(I)=C(C#N)N2 WGSPBWSPJOBKNT-UHFFFAOYSA-N 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Description
Patentanwalt
Dipl.-Phys. Leo Thul
Dipl.-Phys. Leo Thul
J .Janssens 1-2
INTERNATIDNAL STANDARD ELECTRIC CORPORATION, NEVi YORK
Datenverarbeitungsanlage
Die Erfindung betrifft eine Datenverarbeitungsanlage mit
einem Speicher zur Speicherung einer Anzahl Instruktions-"Wörter,
von denen ein Typ eine Adresse oder Teiladresse eines anderen zu verarbeitenden Instruktionswortes enthält.
·
Ein derartiger Instruktionsworttyp ist beispielsweise der
Sprung zu einem Unterroutine-Instruktionswort. Wenn ein solches Instruktionswort verarbeitet wird, wird die Adresse
des nächsten Ins trukt ionswor.t es eines Haupt programmes,
welche von einem Programmzähler abgegeben wird, generell im ersten Platz gespeichert, der der Unterroutine im Speicher
der Anlage zugehört. Die Adresse dieses Speicherplatzes ist dabei gleich' der Adresse oder von derjenigen Adresse
abgeleitet, die im Sprung zum Unterroutine-Instruktionswort
gespeichert ist. Zur gleichen Zeit wird die Programmsteuerung auf den zweiten Speicherplatz der Unterroutine
gelenkt. Die letzte Instruktion dieser Unterroutine besteht in einem Rücksprung zum ersten Speicherplatz, um die Rückkehr
zum Hauptprogramrn und zu einer Adresse zu ermöglichen, die in diesem Platz nach Ausführung der Unterroutine gespeichert
wird.
Ein Sprung zu einem Unterroutine-Instruktionswort ermöglicht
es einem Programmierer, vom normalen Programmabfluß abzuweichen, der durch den Programmzähler bestimmt ist. Dieser
lh.Mai 1971
te -/-
109850/1654
Programmzähler schaltet einen Schritt vorwärts, wenn jeweils
eine Instruktion befolgt worden ist. Dadurch wird .der Platz
des nächsten Instruktionswortes angezeigt. Durch einen derartigen Sprung wird auch die Wiederholung der"gewöhnlich
benutzten Programmfolgen vermieden, und es ist auf diese V/eise leicrter, Änderungen im Hauptprogramm einzuführen und
verschiedenen Leuten die Produzierung eines großen Programms zu ermöglichen. Darüberhinaus ist bei nur einmaligem Durchlauf
der Unterroutine, der sogenannten geschlossenen Routine,
die Platzersp.ranis im Speicher wichtig, und zwar um so wichtiger,
je langer die Unterroutine ist. Wenn jedoch die Unterroutine sehr kurz ist, wird der kleine Betrag an zusätzlichem
Speicherplatz, der zum Eintritt in die Unterroutine und zum Verlassen der Unterroutine gebracht v/ird, vergleichbar mit dem
Betrag an Speicherplatz, der für die Unterroutine selbst benötigt
wird. Manchmal ist es dann vorteilhafter, eine Kopie
davon einzufügen, wo immer es im Speicher des Hauptprogramms, das ist die sogenannte offene Unterroutine, erforderlich ist.
Dagegen kann im allgemeinen die geschlossene Unterroutine vorteilhafter
als die offene Unterroutine inbezug auf den benötigten Speicherplatz sein, und es kann dan ihbezug auf die
Verarbeitungszeit unvorteilhaft sein, in das Hauptprograrnm einzutreten oder dieses zu verlassen.
Ein anderer Typ eines Instruktionswortes ist das Vollzugsinstruktionswort,
welches zu einer Unterroutine mit einer Einzelinstruktion führt. Statt daß bei der Abzweigung auf
eine andere Instruktionsfolge gesteuert wird, führt die normale Instructions folge die Steuerung durch. Wenn einmal diese
einzelne Instruktion vollzogen ist, dann wird die nächste Instruktion in der normalen Instruktionsfolge befolgt. Das Verfahren
mit Vollzugsinstruktionen ist verschiedentlich angewendet worden, z-.B. dort, wo es nicht wünschenswert ist, die in gewissen
Teilen des Speiehers gespeicherten Instruktionen zu ändern
oder wo es Verkettungen zwischen einem Hauptprogramm
und gewöhnlichen Unterroutineprogrammen gibt. Der Vorteil der Vollzugsinstruktion besteht
109 850/1654
-ζ
darin, daß keir. zusätzlicher Platzbedarf im Speicher auftritt
und diese Instruktion.während eines kurzen Zeitintervalls
vollzogen werden kann, z.3. während eines Basiszyklus
der Datenverarbeitungsanlage. Die bekannte Vollzugsinstruktior ist. jedoch auf dem Vollzug einer einzigen Instruktion
beschränkt.
Die Aufgabe der Erfindung besteht daher darin., eine Daten- . verarbeiten-sarilage der eingangs genannten Art zu schaffen.
welche die Verarbeitung einer Anzahl Instruktionen schneller ■ als r.it der geschlossenen Unterroutine und wirtschaftlicher
als :r.i": der offener, Unterroutine erlaubt, soweit der Speicherplatzbedarf
betroffen ist. Dies vrird gemäß der Erfindung dadurch erreicht, daß der genannte Instruktionsworttyp für
die Ausführung einer durch einen Instruktionszähler angeseigten Anzahl von Instruktionen vorgesehen ist, wobei die
die genannte Adresse aufweisende Instruktion die erste der Anzahl von Instruktionen ist, und daß Mittel vorgesehen sind,
die den Instruktionszähler jeweils um einen Schritt zurückstellen,
wenn eine Instruktion der Anzahl von Instruktionen vollzogen wird.
Dieses Instruktionswort, welches irr, folgenden Vielfachvollzugsinstruktior.swort
oder kurz Vielfachwort genannt wird, sorgt für die genannten Vorteile der Geschwindigkeit und
der Speicherplatz-Wirtschaftlichkeit, wobei nur wenige zusätzliche
Einrichtungen notwendig werden. Das Vielfachwort kann wie das einzelne Vollzugsinstruktionswort in einem
Zyklus der Datenverarbeitungsanlage verarbeitet werden.
Kurz gesagt, die Erfindung befaßt sich mit einer Datenverarbeitungsanlage,
bei der Vielfachvollzugsinstrukticnswörter
in einem Speicher dieser Anlage eingespeichert sind. Jedes Yielfachwort weist die Anzahl der Instruktionen, die
in einer anzufertigenden Instruktionsfolge eingebettet sind, und die Adresse der ersten Instruktion in dieser Folge auf.
109850/1654 "/"
BAD ORIGINAL
■ J.Janssens 1-2
Wenn ein solches Vielfachwort verarbeitet wird, wird diese Anzahl
in einem Instruktionszähler registriert, der Inhalt des gewöhnlichen Programmzählers in einem Kurzzeitspeicher
gespeichert und der Vollzug der ersten, bei der vorgegebenen · Adresse liegenden Instruktion gestartet. Während der Ausführung
jeder solchen Instruktion wird der Zähler um einen Schritt zurückgestellt; während der Ausführung der letzten
Instruktion wird der Inhalt des Kurzzeitspeichers zum Programmzähler
zurückübertragen.
Die Erfindung wird nun anhand eines Ausführungsbeispiels näher beschrieben:
Fig.l zeigt ein Blockschaltbild einer Datenverarbeitungsanlage gemäß der Erfindung,
Fig.2 zeigt die zur Steuerung dieser Datenverarbeitungsanlage
verwendeteten Impulse.
Die Datenverarbeitungsanlage in Fig.l wird durch einen Speicher MEM, eine Recheneinrichtung AU und eine Steuereinrichtung
CU gebildet.
Die Recheneinheit AU weist ein Pufferregister M für 16 Bit, welches dem Speicher MEM zugeordnet und mit diesem gekoppelt
ist, ein Speicherplatz-Register Y für 16 Bit , einen Programmzähler
P für 16 Bit zur Speicherung der Adresse einer vollzogenen oder zu vollziehenden Instruktion und ein Register
E für 16 Bit zur Speicherung des Speicherplatzes
einer Vielfachvollzugsinstruktion EXE auf, wobei die Ausführung einer Instruktionsfolge abläuft, welche durch diese
Vielfachvollzugsjnstruktion gestartet worden ist.
Die Steuereinrichtung U weist ein Register F für 7 Bit zur
Speicherung des Öperationscodes einer Instruktion/mit dem Register F verbundene und zur Decodierung des Operations-
V-
109850/1654
codes geeignete Decodierer DECl und DEC2, eine durch UND-•
Schaltungen Gl, G2 und G7 gesteuerte bistabile Schaltung
BEXT, einen durch bistabile Schaltungen BKSO und BKSl
gebildeteten und durch die zugeordneten UND-Schaltungen QiJ) bis G7 gesteuerten Zähler KS mit vier Positionen, ferner
UND-Schaltungen G8 bis GlO, ein Phasenregister BR aus bisfeabilden^chaltuifen BPCY, BlCY, BACY, BBCY und einer
UND-Schaltung GIl, einen Grundtaktgeber MC und eine Zeitschaltung
T-LG auf. Die bistabile Schaltung BPCY wird durch die UND-Schaltung GIl gesteuert, und die Zeitschaltung
TLG wird durch den Grundtaktgeber MC gesteuert.
Die UND-Schaltung G7 und der Grundtaktgeber MC steuern
die UND-Schaltungen Gl bis G6. Die UND-Schaltung G8 steuert die UND-Schaltungen G12.00 bis G1215, die die Register
P und E miteinander verbinden. Die UND-Schaltung G9 steuert die UND-Schaltungen GI5OO bis G1315* die zusammen
mit den ODER-Schaltungen MlOO bis Ml-15 das Register Y
und den Programmzähler P mit einander verbinden. Die UND-Schaltung
GlO steuert die UND-Schaltung Gl1KDO bis G1415,
die zusammen mit den ODER-Schaltungen MlOO bis MI.I5 und
das Register E einerseits mit dem Programmzähler P und andererseits mit dem Register Y verbinden. Das Register
Y hat auch Zugang zum Speicher MEM. Das Regteter M hat Zugang
zum Register Y über die ODER-Schaltungen-M200 bis
M215. Es sei darauf hingewiesen, daß nur die Verbindungen zwischen den Registern und dem Programmzähler und dem
Speicher, die zum Verständnis der Erfindung nötig sind, gezeigt worden sind.
Die Datenverarbeitungsanlage ist so beschaffen, daß sie
jede im Speicher MEM gespeicherte Instruktion in minimal einem und in maximal 4 aufeinander folgenden Grundzyklen ·
ausführt, die jeweils eine Dauer von beispielsweiße einer Mikrosekunde haben* Während jedes dieser Grundzyklen be-
1 09850/ 1654
J.Janssens 1-2
findet sich eine entsprechende der bistabilen Schaltungen
BPCY, BiCY, BACY. und BBCY des Phasenregisters PR im 1-Zustand,-wobei
jede bistabile Schaltung einem Zyklus zugeordnet ist und am Ende jedes vorhergehenden Zyklus in
den 1-Zustand und bei Beginn des zugeordneten Zyklus in
den 0-Zustand gesteuert wird.
Der am 1-Ausgang einer bistabilen Schaltung im 1-Zustand
erzeugte Impuls ist ein Zyklusimpuls PCYP, ICYP, ACYP, BCYP von einer Mikrosekunde Dauer, wie es in Fig*2 gezeigt
ist. Während jedes Zyklusimpulses werden 4 aufeinanderfolgende Zeitimpulse COl bis C04 mittels der Zeitschaltung TLG erzeugt, wobei jeder Zeitimpuls eine Dauer
von 250 Nanosekunden hat. Jeder Zeitimpuls beginnt am
Ende eines MC-Impulses von 50 Nanosekunden.Iauer und
endet am Ende des sofort darauffolgenden MC-Impulses, der 200 Nanosekunden nach dem unmittelbar vorhergehenden
Impuls durch den Grundttaktgeber MC erzeugt wird.
Während jedes letzten Zyklus einer Instruktion wird ein sogenannter Instruktionsende-Impuls EOIP (Fig.2, linke
gestrichelte Linie) in einer nicht gezeigten Torschaltung erzeugt. Dieser Impuls wird zum Starten eines ersten
Zyklus einer folgenden Instruktion verwendet. Dieser erste
Zyklus wird im folgenden Abrufzyklus genannt. Die bistabile
Schaltung BPCY wird durch ein Signal SlI in den 1-Zustand
gebracht, welches durch die BOOLEscfoa UND-Punktion
SIl= EOIP·T04fMC dargestellt werden kann und am Ausgang
der UND-Schaltung GIl am Ende des letzten Zyklus auftritt.
Die bistabile Schaltung BF€Y wird in nicht dargestellter Weise zu Beginn eines folgenden Zyklus in den O-Zustand
zurückgestellt. Die anderen bistabilen Schaltungen B|CY>
BACY, BBCY sind fürdäie vorliegende Erfindung nicht von
Interesse und werden daher im einzelnen nicht behandelt.
Die bistabilen Schaltungen BEXT, BKSO und BKSl haben 1-Aus-
10985071664 ,
gänge und 0-Ausgänge, die mit EX?,KSO, KSl und WT, KSÖ.KsT
bezeichnet sind. Der 1-Ausgang der bistabilen Schaltung BPCY ist mit FCYP bezeichnet. Die UND-Schaltung GJ wird durch
die Impulse EOIP und C0J5 gesteuert, so daß ein Signal,
welches durch die BOOLEsche UND-rFunktion Ε0ΙΡ·Τ03 darges-teLlt
werden kann, am Ausgang dieser UND-Schaltung G7 erzeugt wird. Die UND-Schaltungen Gl bis G6 werden durch
das Ausgangssignal der UND-Schaltung G7 und durch die
genannten Impulse gesteuert. Die Ausgangssignale Sl bis
S6 dieser UND-Schaltungen Gl bis G6 können durch die folgenden BOOLEsche Funktionen dargestellt werden:
Sl= E0IP-T05.EXE.MC
S2= EOIP-T03
S2= EOIP-T03
= EOIP'TO3-KST*MC ^
S5= EOIP-TO^-FOö.lXf-fR?+ EOIP. T03 "KSO-MC
S6= E0IP-T03-MC
In gleicher Weise können die an den Ausgängen der UND-Schaltungen
Ge bis G9 auftretenden Ausgangssignale EP, YAT und EAG
durch die folgenden SOOLEsShe- UND-Funktionen dargestellt
werden:
EP = EXE-EXT-T03
YAD= EXE-T04
EAG= FCYP-EXT'fcSÖ'-KST-TOl
In dem in Fig.3 dargestellten Flußdiagramm kennzeichnen die
Pfeile:" gespeichert oder registriert in'^z.B. bedeutet der
von P zu E hinweisende Pfeil: "'der Inhaltwn P ist gespeichert
in El1J Der Pfeil von N nach KS bedeutet: "die
Zahl N ist gespeichert in KS1.1." Der Pfeil von A zu M,F bedeutet:
11O ist registriert in M und F", d.h. M und F sind
zurückgestellt.
Im folgenden wird mit Bezug auf die Fig.l und 2 und auf
109850/1654 ./-
das Flußdiagramm in Fig.3 die Arbeitsweise der Datenverarbeitungsanlage
im einzelnen beschrieben in Verbindung mit der Ausführung einer sogenannten VielfaGhvollzugsinstruktion
EXE, welche dazu dient, die Ausführung einer Folge von
mehreren Instruktionen zu starten.
Während der Ausführung des letzten Zyklus .der der betrachteten
Instruktion unmittelbar vorausgehenden Instruktion wird das Lesen des Speichers MEM mittels einer Adresse χ
veranlaßt, die im Register Y und im Programmzähler P gespeichert
ist. Zu dem Zeitpunkt, in dem dieser letzte Zyklus endet, werden die Register M und F zurückgestellt
und wird die bistabile Schaltung BFCY, die einem Abrufzyklus zugeordnet ist, durch das obengenannte, am Ausgang
der UND-Schaltung Gil auftretende Signal SIl in ihren
1-Zustand gesteuert. Daher tritt am 1-Ausgang der bistabilen
Schaltung BFCY ein Abrufzyklus-Impuls FCYP auf, und während dieses Abrufzyklusimpulses werden 4 aufeinanderfolgende
Zeitimpulse TOl bis T04 durch die Zeitschaltung TLG erzeugt. Während des ersten Zeitimpulses TOl des Abrufzyklus
wird die l6-Bit-Instruktion, die mittels der im Register Y gespeicherten Adresse χ im Speicher MEM
adressiert worden ist, im Register M empfangen, und der 7-Bit-Operationscode dieser Instruktion wird in dem in der
Steuereinrichtung CU enthaltenden Register F empfangen. Es sei angenommen, daß diese Instruktion durch den zuletzt
erwähnten 7-Bit-Operationscode und durch eine 9-Bit-Adresse
y' gebildet/f wobei der Operationscode selbst durch einen
5-Bit-Funktionscode F und durch eine 2-Bit-Nummer N gebildet ist. Dief-er 5-Bit-Funktionscode F und diese Nummer
N werden in den Dekodierern DECl und DEC2 decodiert. Dabei werden einer der 3>2 Ausgänge des Decodierers DECl und
einer der '4 Ausgänge EOO bis Eil des Decodierers DEC2 aktiviert. Es sei ar.genommen; daß der genannte Ausgang EXE
und der Ausgang Eil aktiviert sind, wodurch angezeigt wird, daß die gelesene|lnstruktion eine Vic-lfachvollzugsinstruktinn
109850/16 54
J.Janssens 1-2
EXE ist, und daß eine Folge von 4 Instruktionen ausgeführt werden muß, wobei die Adresse y1 ein Teil der Adresse y
der ersten Instruktion dieser Folge ist. Hierzu sei bemerkt, daß die Ausführung einer Vielfachvollzugsinstruktion nur
einen Abrufzyklus erforderlich macht, so daß dieser Zyklus
auch der letzte Zyklus ist und daß daher ein Impuls EOIP (Fig.2', ausgezogene Linie ) erzeugt wird. Der am Ende der
vorhergehenden Instruktion erzeugte Impuls EOIP wird somit fortgesetzt. Zur Vereinfachung ist welter angenommen, daß
die 4 Instruktionen der auszuführenden Instruktionsfolge .selbst nicht Vielfachvollzugsinstruktionen sind.
Die obengenannten Operationen sind imuFlußdiagramm in Fig.3
gezeigt, worin die den.Zeitimpulsen TOl bis T04 des Abrufzyklus
zugehörigen Zeitintervalle mit FTOl bis FT04 bezeichnet siiäd. Hierzu sei bemerkt, daß, obwohl diese Zeitintervalle
dieselbe Länge haben, diese nicht durch dieselben Längen dargestellt sind. ■
Da die bistabile Schaltung BEXT in ihrem O-Zustand ist,
geschieht während des ersten Abrufzyklus-ZeitIntervalls FTOl
nichts weiter.
Während des zweiten Zeitimpulses T02 des Abrufzyklus, d.h.
während des Zeitintervalls FT02, wird der einen Teil der Vielfachvollzugsinstruktion EXE bildende und an den Plätzen
7 bis 15 des Registers M (M? bis M15 im Flußdiagramm) gespeicherte
9-Bit~Adr^sen«teil y1 an den Plätzen J bis 15
des Registers Y(Y7 bis Y15 im Flußdiagramm) gespeichert. In Fig.l ist diese Operation schematisch durch das Register
M angedeutet, welches über die ODER-Schaltungen ' M200 bis M215 mit dem Register Y verbunden 1st. Gleichzeitig
werden die Bits an den Plätzen Q-7 des Registers Y beispielsweise auf 0 (rieht gezeigt) zurückgestellt, um da-
1098 50/16BA
J.Janssens 1-2
durch die vollständige l6-Bit-Adresse y der ersten auszuführenden Instruktion zu bilden. Selbstverständlich kann
jeder andere Adressenteil an die Plätze 0 bis 7 des Registers Y eingeschrieben wurden, um den Adressteil y1
zu ergänzen und eine vollständige Adresse y zu bilden.
Während des dritten Zeitimpulses TOJ des Abrufzyklus, d.h.
während des Zeitintervalle PTOJ, wird die Adresse χ der im
Programmzähler P gespeicherten VieSfachvollzugsinstruktion
zum Register E über die ϊ6 UND-Schaltungen G1200 bis G1215
übertragen, welche durch das am Ausgang der UND-Schaltung Ge auftretende Signal EP = EXE-eTF.TOJ gesteuert werden.
Die bistabile Schaltung BEXT, welche eine sogenannte JK-Flip-Flop-Schaltung
ist., wird ebenfalls in den !-Zustand gesteuert, da deren 1-Eingang und deren 0-Eingang gleichzeitig
aktiviert sind. Dieser 1-Eingang wird durch das obengenannte Signal Sl = EOIP·TOJ·EXE«MC aktiviert. Der
0-Eingang wird durch das obengenannte Signal S2 = EOIP* TO J-KSl). KSl-MC aktiviert. Die bistabile Schaltung BEXT
zeigt durch ihren 1-Zustand an- daß eine Vielfachvollzugs
Instruktion ausgeführt werden soll. Gleichzeitig .
mit der Steuerung in den 1-Zustand der bistabilen'BEXT
werden die an den Plätzen 5 und 6 des Register F gespeicherten
Bits :~~' im Zähler KS registriert. Diese
durch P05 und F06 bezeichneten Bits werden, genauer gesagt,
in den bistabilen Schaltungen BKSO und BKSl registriert. Da beide: Bits den V/ert 1 haben, werden beide genannten
bistabilen-Schaltungen ir^ihren 1-Zustand gebracht., so daß
der Zähler KS in seinem 11-Zustand am Ende dieser Operation
ist:
a) die bistabile Schaltung BSKO wird in ihren !-Zustand gebracht, weil sowohl ihr 1-Eingang als auch ihr 0-Eingang
durch die obengenannten Signale SJ = EOIP"TGJ* FO5·EXT·
EXE-MC und S4 = EOIP-TOJ-iCST>MC aktiviert werden.
b) Die bistabile Schaltung BKSl wird in ihren 1-Zustand gebracht,
weil sowohl ihr 1-Eingang als auch ihr 0-Eingang
1098 5.Q/16 54
J.Janssens 1-2
■ durch die obengenannten Signale S5 = EOIP-TOJ-FOo.EXT·EXE-MC
(der zweite Teil von S5 ist Null) S6 = EOIP·TOJ-MC aktiviert
werden.
Schließlich wird das Lesen des Speichers MEM mittels der im
Register Y gespeicherten Adresse y der auszuführenden ersten 'Instruktion gestartet.
Während des vierten Zeitimpulses T04 des Abrufzyklus, d.h.
während des Zeitintervalls FTO^, wird die im Register Y
gespeicherte Adresse y im Programmzähler P über die UND-Schaltungen GI300 bis GI315 und über die ODER-Schaltungen
MlOO bis MII5 registriert. Die zuletzt genannten UND-Schaltungen werden durch das am Ausgang der UND-Schaltung
G9 auftretende genannte Signal YAD = EXE-T04 freigegeben.
Am Ende dieses vierten Zeitimpulses werden die Register M und F zurückgestellt (nicht gezeigt). Die bistabile Schaltung
BFCY wird wieder in ihren 1-Zustand gebracht, d.h.in
Wirklichkeit wird sie in ihrem eingestellten Zustand gehalten, und zwar mittels des am Ausgang der UND-Schaltung
GIl auftretenden Signals SIl = EOIP-TO^-MC gehalten, so
daß ein neuer Abrufzyklus begonnen wird.
Die genannten Operationen sind auf der Flußkarte (oben und links) klar dargestellt,und deshalb sind weitere Erläuterungen
hierzu nicht notwendig.
Während des ersten Zeitimpulses FTOl des begonnen Abrufzyklus wird die erste l6-Bit-Instruktion, die im Speicher MEM mittels
der im Register Y gespeicherten Adresse y adressiert worden ist# im Register M empfangen., und der 7-Bit-Operationscode
dieser Instruktion wird im Register F der Steuereinrichtung CU gespeichert und in den Decodierern DECl und DEC2 decodiert.·
Da der Zähler KS sich nifeht im O-Zustand befindet, geschieht
während des ersten Zeitimpulses weiter nichts, wie aus dem
10985 0/1654
J.Janssens 1-2
Flußdiagramm entnommen v/erden kann.
Während des zweiten Zeitimpulses FT02 des Abrufzyklus wird
der Abrufzyklus fortgesetzt, weil angenommen worden ist, daß die erste Instruktion keine Vielfachvollzugsinstruktion
ist, d.h.,der Ausgang EXE des Decodierers DECl wird nicht
aktiviert. Auf den genannten Abrufzyklus folgen ,ein oder
mehrere andere Zyklen während der diese ,erste Instruktion ausgeführt wird. Dies ist'im einzelnen beschrieben, weil
es für die Erfindung unwesentlich ist. Jedoch wird am Ende des dritten Zeitirnpulses TO3 des letzten Zyklus
dieser ersten Instruktion (durch EOIP/TO3 im Flußdiagramm
gezeigt), d.h., wenn ein Impuls EOIP erzeugt wird der Zähler KS um einen Schritt zurückgestellt und in seinen
10-Zustand gebracht, weil die bistabile Schaltung BKSl
durch das am Ausgang der UND-Schaltung G6 auftretende Signal So = EOIP-TO^-MC in ihren O-Zustand gebracht worden
ist. Auch bei Beginn des vierten Zeitinpulses T04 des
letzten Zyklus wird der Programmzähler P um einen Schritt zurückgestellt, wo^-dureh er die Adresse y+1 der zweiten
Instruktion der auszuführenden Folge anzeigt. Diese Adresse wird dazu benutzt, da£ Lesen des Speichers zu veranlassen
nach^dem die Adresse in das Register Y übertragen worden ist. ■
In klassischer und nicht beschriebener Weise wird die zweite und die dritte Instruktion der 4 Instruktionen der
Folge ausgeführt, und am Ende des Zeitimpulses TO3 des
letzten Zyklus dieser Instruktionen wird jeweils der Zähler KS zurückgestellt und somit in seinen 01- und 00-Zustand
auf folgende Weise gebracht:
a) der Zähler KS wird in den 01-Zustand gebracht. da die
bistabile Schaltung BKSO durch das am Ausgang der UND-Schaltung
G^: auf tretende Signal S4 = EOIP'TO^-KST-MC
in ihren O-Zustand gebracht wird, und weil die bistabile
10 98 50/165 U ' . -/_
J.Janssens 1-2
Schaltung BKSl durch die an den Ausgängen der UND-Schaltungen •G5 und Go auftretenden Signale S5 = EOIP"TOJ-KSO-MC (der
erste Teil von S5 ist Null) und S6 = EOIP-TO^-MC in ihren
1-Zustand gebracht werden;
b)der Zähler KS wird in den OO-Zustand gebracht, weil die
bistabile Schaltung BKSl durch das am Ausgang der UND-Schaltung Go auftretende Signal S6 = EOIP-TO^-MC in ihren
O-Zustand gebracht wird.
Der Zähler KS ist somit wieder in seinem OO-Zustand,bevor die
letzte oder vierte Instruktion der Folge ausgeführt wird.
Auch am Beginn des vierten Zeitimpulses Tö4 des letzten Zyklus
der zweiten und dritten Instruktion wird der Zähler P um einen Schritt zurückgestellt, womit er die Adressen y+2 und y+3
der dritten und vierten Instruktion anzeigt- Diese Adressen werden dann dazu benutzt, daß Lesen des Speichers zu beginnen,
nachdem sie zum Register Y übertragen worden sind.
Während des ersten Zeitimpulses TOl des Abrufzyklus dieser letzten oder vierten Instruktion wird die Adresse χ der
Vielfachvollzugsinstruktion, die zeitweise irn Register E gespeichert worden war, zum Register Y und zum Programmzähler
P zurückübertragen, wie im Plußdiagramm dargestellt ist, weil die bistabile Schaltung BEXT sich im 1-Zustand
und der Zähler KS sich im O-Zustand befinden. Diese Operation
wird über die UND-Schaltungen Gl400 bis Gl4l5 und die ODER-Schaltungen M200 bis M215 und MlOO bis Ml15 vollzogen,
wobei die UND-Schaltungen Gl400 bis GI500 durch das am Aus-"gang
der UND-Schaltung GlO auftretende Signal EAG = KSO-KSl-PCYP'TOl'EXT
freigegeben wird.
" Am Ende des ersten Zeitintervalls des Abrufzyklus der letzten
auszuführenden Instruktion sind das Register Y und der Zähler P
10985071654
J. Janssens 1-2
im selben Zustand wie am Ende des ersten Zeitintervalls des
Abrufzyklus der Vielfachvollzugsinstruktion.
Während des letzten Zyklus der letzten Instruktion wird
die bistabile Schaltung BEXT in ihren O-Zustand zurückgestellt,
wie es im Flußdiagramm dargestellt ist, und zwar durch das am Ausgang der UND-Schaltung G2 auftretende Signal
S2 = EOIP·TO3·KSO·KS1, und der Programmzähler P wird um
einen Schritt zurückgestellt, so daß das Hauptprogramm automatisch wieder bei der Adresse x+1 anfängt, nachden
dieser letzte Zyklus ausgeführt worden ist.. Die bistabilen Schaltungen BFCY werden eingestellt, und die Register M
und F werden zurückgestellt.
Es ist klar, daß bei der Anzeige der Instruktion EXE, daß
nur eine einzelne Instruktion ausgeführt werden muß, der
Inhalt des Programmzählers P im Register E während des Abrufzyklus dieser Instrumion gespeichert und dann zum
Programmzähler während des unmittelbar folgenden Abrufzyklus zurückübertragen wird. Obgleich diese Übertragung
somit von keinem Nutzen ist, wird sie dennoch ausgeführt, damit dasselbe Programm für jeden Wert von N aufrechterhalten werden kann.
In dem oben beschriebenen Beispiel hat die Instruktion EXE die Zahl N von auszuführenden Instruktionen. Es ist selbstverständlich
auch möglich, diese Zahl in einer anderen Instruktion einzusetzen, welche dann dazu benutzt werden
würde, den Instruktionszähler KS vor dem Ausführen der EXE-Instruktion einzustellen. Statt die Nummer von Instruktion
in der EXE-Instruktion oder in einer anderen Instruktion aufzunehmen, ist es auch möglich, eine EXE-Instruktion
zu verwenden, welche automatisch die Zahl derjenigen Instruktionen ausführt, welche durch einen Zähler
angezeigt werden, welcher sich in einer festen Position
109850/1654 -/-
befindet und welcher jedesmal in diese Position gebracht wird, beispielsweise durch die letzte Instruktion der Instruktionsfolge.
Es ist angenommen worden, daß keine Instruktion der Instruktionsfolge
eine EXE-Instruktion ist. Diese Beschränkung ist jedoch nur deshalb eingeführt worden, um die Beschreibung
zu vereinfachen. Es ist auch eine· Datenverarbeitungsanlage vorstellbar, in dem dies nicht der Fall ist.
109850/ 1 65
Claims (1)
- J.Jansεens 1-2
Patent ans prUcheQJDater.verarbeitur.gsanlage r.it einem i-peicher zur .r:r,otchc'-u<eir.er Anzahl Instruktionsviürtc-r, vor. denen ein Typ eine Adresse Qfler Teiladresse eines anderen zu verarbeitenden Tnstruktioriswortes enthält, dadurch gekennzeichnc t f daß der genannte Instruktionsworttyp (EXE) für die Ausführung einer durch einen Instruktionszähler (KS) angezeigter. Anzahl von Instruktionen vorgesehen ist, wobei die die gerannte Adresse aufweisende "Instruktion die erste der Anzahl vor. Instruktionen ist, und daß Mittel (G5...G7) vorgesehen zii.i, die der. Induktionszähler (KS) jeweils uti. einen Schritt zurückstellen, wenn eine Instruktion der Anzahl von Trstrukti -.-ner. vollzogen wird .rr-?..Datenverarbeitungsanlage r.eoh Ar.spruch 1, (U.tlurch gekennzeichnet, da3 die Zahl (U) der Instruktionen in '-irm struktionswort angegeben ist.^Datenverarbeitungsanlage nach Anspruch 2.i dDggzeichnet, daß die Zahl (N) der Instruktionen in dem Typ vor. Instruktionswörtern ^EXE) angeßeber ü:t.4.Datenverarbeitungsanlage nach Anspruch Γ oderkernzeichn.t, daß die Kittel (G5...07) der. Tr.struktior.s^bler (KS) in eine der Anzahl entsprechende Stellung brir.,:er wenn das diese Anzahl anzeigerde Ir.struktionswort ve-arbeitet wird.5.Datenverarbeitungsanlage nach einem der Ansprüche 1 bis H. dadurch gekennzeichnet, daß ein Register (E), ein Programn,-zfihler (P) zur Sneicherung der Adresse einer auszuführender. Instruktion und Kittel (.01200.. .01215) vorgesehen sind, d.r den inhalt des Progremmzahlers (P) im Register (E) kurzzeitig speichern, wenn die Instruktion des genannten Typ*109850/1654(3X1S) ausgeführt wird.C.Hntenverarbeitungsanlrrge nach Anspruch 5, dadurch gekennzeichnet, daß r.ittel (GlAoo.. .G1415) zur Rüekübertragung des Registerinhalts zum Programmzähler (P) vorgesehen sind wobei die Rückübertragung dann stattfindet, wenn die letzte Instruktion der genannten Anzahl ausgeführt wird.7.Datenverarbeitungsanlage nach einem der Ansprüche 1 bis 6. dadurch gekennzeichnet, daß eine bistabile Schaltung (3SXT) zur Anzeige vorgesehen ist, daß die Instruktion des gerannten Typs und die genannte Folge von Instruktionen verarbeitet werden- und daß Mittel (Gi.. G2, G;5) vorgesehen sind, die die bestabile Schaltung während der Ausführung der Instruction des genannten Typs in den 1-Zustand versetzen.8.Datenverarbeitungsanlage nach Anspruch 7» dadurch gekennzeichnet , daß die genannten Rückstellmittel (GjJ...G7) den Instruktionszähler dann zurückstellen, wenn wenigstens die bistabile Schaltung im 1-Zustand, der Instruktionszähler nicht im O-ZustancJ und die Instruktion der ausgeführten Folge nicht eine Instruktion des genannten Typs ist.9-Datenverarbeitungsanlage nach Anspruch 7 oder 8, dadurch gekennzeichnet, daß die bistabilde Schaltung (BEXT) dann in den O-Zustand gesteuert wird, wenn gleichzeitig diese Schaltung im 1-Zustand, der Instruktionszähler (KS) in O-Zustand und die Instruktion der verarbeiteten Instruktionsfolge nicht vom genannten Typ 1st.10.Datenverarbeitungsanlage nach Anspruch 6 und 7- dadurch gekennzeichnet, daß der Inhalt des Registers (E) zum Programmzähler (P) zurUckübertragen wird, wenn gleichzeitig die blstablle-'-Schalturu; (BEXT) im !-Zustand und der Instruktionnzähler (KS) im O-Zustand ist.. 109850/1654
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7007615A NL7007615A (de) | 1970-05-27 | 1970-05-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2125688A1 true DE2125688A1 (de) | 1971-12-09 |
Family
ID=19810158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19712125688 Withdrawn DE2125688A1 (de) | 1970-05-27 | 1971-05-24 | Datenverarbeitungsanlage |
Country Status (10)
Country | Link |
---|---|
US (1) | US3739345A (de) |
BE (1) | BE767720A (de) |
CA (1) | CA958121A (de) |
CH (1) | CH551046A (de) |
DE (1) | DE2125688A1 (de) |
ES (1) | ES391621A1 (de) |
FR (1) | FR2093690A5 (de) |
GB (1) | GB1301417A (de) |
NL (1) | NL7007615A (de) |
YU (1) | YU36231B (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3891972A (en) * | 1972-06-09 | 1975-06-24 | Hewlett Packard Co | Synchronous sequential controller for logic outputs |
GB1426748A (en) * | 1973-06-05 | 1976-03-03 | Burroughs Corp | Small micro-programme data processing system employing multi- syllable micro instructions |
CH608902A5 (de) * | 1975-04-21 | 1979-01-31 | Siemens Ag | |
DE2517565C3 (de) * | 1975-04-21 | 1978-10-26 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Schaltungsanordnung für ein Datenverarbeitungssystem |
DE2715983C2 (de) * | 1977-04-09 | 1983-12-29 | Ibm Deutschland Gmbh, 7000 Stuttgart | Schaltungsanordnung in einem Digitalrechner zur Überwachung und Prüfung des ordnungsgemäßen Betriebs des Digitalrechners |
US4323963A (en) * | 1979-07-13 | 1982-04-06 | Rca Corporation | Hardware interpretive mode microprocessor |
US4306287A (en) * | 1979-08-31 | 1981-12-15 | Bell Telephone Laboratories, Incorporated | Special address generation arrangement |
US5146592A (en) * | 1987-09-14 | 1992-09-08 | Visual Information Technologies, Inc. | High speed image processing computer with overlapping windows-div |
US5109348A (en) * | 1987-09-14 | 1992-04-28 | Visual Information Technologies, Inc. | High speed image processing computer |
US4985848A (en) * | 1987-09-14 | 1991-01-15 | Visual Information Technologies, Inc. | High speed image processing system using separate data processor and address generator |
US5129060A (en) * | 1987-09-14 | 1992-07-07 | Visual Information Technologies, Inc. | High speed image processing computer |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE25120E (en) * | 1954-12-08 | 1962-02-06 | holmes | |
US3153225A (en) * | 1961-04-10 | 1964-10-13 | Burroughs Corp | Data processor with improved subroutine control |
US3297998A (en) * | 1963-06-10 | 1967-01-10 | Beckman Instruments Inc | List control |
US3348211A (en) * | 1964-12-10 | 1967-10-17 | Bell Telephone Labor Inc | Return address system for a data processor |
US3480917A (en) * | 1967-06-01 | 1969-11-25 | Bell Telephone Labor Inc | Arrangement for transferring between program sequences in a data processor |
US3546677A (en) * | 1967-10-02 | 1970-12-08 | Burroughs Corp | Data processing system having tree structured stack implementation |
-
1970
- 1970-05-27 NL NL7007615A patent/NL7007615A/xx not_active Application Discontinuation
-
1971
- 1971-05-20 YU YU1287/71A patent/YU36231B/xx unknown
- 1971-05-24 DE DE19712125688 patent/DE2125688A1/de not_active Withdrawn
- 1971-05-25 US US00146720A patent/US3739345A/en not_active Expired - Lifetime
- 1971-05-25 FR FR7118812A patent/FR2093690A5/fr not_active Expired
- 1971-05-26 CH CH766971A patent/CH551046A/de not_active IP Right Cessation
- 1971-05-27 CA CA114,095A patent/CA958121A/en not_active Expired
- 1971-05-27 BE BE767720A patent/BE767720A/nl unknown
- 1971-05-27 ES ES391621A patent/ES391621A1/es not_active Expired
- 1971-05-27 GB GB1301417D patent/GB1301417A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
CA958121A (en) | 1974-11-19 |
NL7007615A (de) | 1971-11-30 |
ES391621A1 (es) | 1974-08-01 |
GB1301417A (de) | 1972-12-29 |
BE767720A (nl) | 1971-11-29 |
CH551046A (de) | 1974-06-28 |
FR2093690A5 (de) | 1972-01-28 |
YU128771A (en) | 1981-06-30 |
US3739345A (en) | 1973-06-12 |
YU36231B (en) | 1982-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3751297T2 (de) | Schaltung zur Programmsteuerung. | |
DE1499722C2 (de) | Einrichtung zur Modifizierung von Informationswörtern | |
DE3914265C2 (de) | ||
DE69217761T2 (de) | Lese- und Schreibschaltung für einen Speicher | |
EP0097725B1 (de) | Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen | |
DE2555963A1 (de) | Einrichtung zur funktionsmodifizierung | |
DE2355993A1 (de) | Datenverarbeitungseinheit einschliesslich mikroprogramm-steuereinrichtung | |
DE2719635A1 (de) | Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage | |
DE2145709B2 (de) | ||
DE2125688A1 (de) | Datenverarbeitungsanlage | |
DE69130233T2 (de) | Verfahren und gerät um ein sperrungscache einzusetzen | |
DE2332971A1 (de) | Mikroprogrammsteuersystem | |
DE1925427A1 (de) | Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern | |
DE1474351C3 (de) | Datenspeicher | |
DE2227761B2 (de) | Speichersystem | |
DE2136210A1 (de) | Zentraleinheit fur eine EDV-Anlage | |
DE1119567B (de) | Geraet zur Speicherung von Informationen | |
DE3314139A1 (de) | Mikrobefehlgesteuerte arithmetische steuereinheit | |
DE3018509A1 (de) | Schieberegister mit latch-schaltung | |
DE2710436A1 (de) | Datenverarbeitungseinrichtung | |
DE2316321C2 (de) | Schaltungsanordnung an der Schnittstelle zwischen einer Steuerung eines Rechenwerkes und einem Hauptspeichers einer Rechenanlage | |
DE1957600C3 (de) | ||
DE1212748B (de) | Datenverarbeitende Maschine mit Programmunterbrechung | |
DE1194605B (de) | Verbesserung an Geraeten zur Verarbeitung von Angaben, Informationen od. dgl. | |
DE2350871A1 (de) | Recheneinheit zur verarbeitung von speziellen befehlen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8130 | Withdrawal |