DE1549444A1 - Informationsverarbeitungseinrichtung - Google Patents
InformationsverarbeitungseinrichtungInfo
- Publication number
- DE1549444A1 DE1549444A1 DE19671549444 DE1549444A DE1549444A1 DE 1549444 A1 DE1549444 A1 DE 1549444A1 DE 19671549444 DE19671549444 DE 19671549444 DE 1549444 A DE1549444 A DE 1549444A DE 1549444 A1 DE1549444 A1 DE 1549444A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- list
- word
- memory
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
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)
- Peptides Or Proteins (AREA)
Description
-SW-
Electric Company, Scheneotady N.Y./USA
Informationsverarbeitungseinrichtung
Die Erfindung "betrifft eine Informationsverarbeitungeeinrichtung
mit Registern und Speiohervorriehtungen, die mehrere Speicherplätze zur Speicherung einer eiitspreohenden
Anzahl von Informationswörtern enthalten. Insbesondere ^
handelt es sich um eine Einrichtung zur Bildung zweier Prioritätsstufen "bei der Kommunikation zwischen Informationslisten,
die in einem Speicher mit wahlfreiem Zugriff gespeichert sind, und einem Rechen- und Steuerwerk.
Realzeitinformationsverarbeitnngseinrichtungen müssen auf das Auftreten eines Ereignisses innerhalb seiner
Beeinflussungszeit ansprechen, um unerwünschte oder katastrophale Folgen zu vermeiden, die sich andernfalls
aus diesem Ereignis ergeben würden. Ferner muß eine Realzeitinformationsverarbeitungseinrichtung mehrere
Funktionen scheinbar gleichzeitig ausführen. Die zu verarbeitenden Daten werden von vielen Ereignissen
oder Neeenprozessen abgeleitet, von denen einige ständig,
einige periodisch und andere statistisch auftreten.
109808/ 1 583
15494U
Ein Digitalrechner ist an sich eine seriell arbeitende Vorrichtung, wenn man ihn in der Befehleebene betrachtet.
D.h., er kann die Programmschritte nur seriell, einen nach dem anderen ausführen. Infolge seiner außerordentlich hohen
Rechengeschwindigkeit kann ein Digitalrechner erfolgreich zur Realzeitprozesssteuerung und/oder Überwachung verwendet
werden· Damit ein Digitalrechner den funktionellen Anforderungen des gesteuerten oder überwachten Prozesses folgen kann,
muß für die vielen Punktionen der Einrichtung eine Priorität s einrichtung vorgeshen sein. Das gleichzeitige Auftreten
bestimmter Kombinationen von Ereignissen kann dann eine zeitweilige Heuzuord&ung von Prioritäten erforderlich
aiaohen. Infolge de se sn unterscheiden sich Realzeit programme
wssentlich von Mohi-Realzeitprogrammtiu
Das Programm eines Bealzeitrechners wird somit praktisch
zu einem System von Programmen, die die Prozessfunktionen gemäß einem vorgegebenen Prioritätsschema steuern und/oder
überwachen. Diese Programme arbeiten derart unter einem "Exekutiv-Steuerprogramm11, daß sie sich gegenseitig in Abhängigkeit
von den sich ändernden Prozessen unterbrechen.
Diesem scheinbaren Durcheinander, das sich durch das
muß Ineinandergreifen so vieler Programme ergibt, eine Ordnung
zugrundeliegen. Das Exekutivsteuerprogramm muß deshalb von Hause aus zahlreiche "Bucnhaltungs"- oder "Haushaltungs11-
-2-
109808/ 15 83 bad original
1549U4 S
Funktionen, d.h. organisatorische Punktionen,ausüben.
In der Tat erweisen sich die bis zu einem gewiesen Grade bei allen Rechnerprogrammen erforderlichen organisatorischen
Punktionen bei einem Reelzeitrecheneinrichtungsprogramm
als besonders wichtig«
Daraus ergibt sich, daß bei der Wahl von Realzeitinformationsverarbeitungseinrichtungen
die besonderen Anforderungen an Realzeitprogramme beachtet werden müssen, an denen sic h
diese von denjenigen*Programmen unterscheiden, die für
Niclirealzeit-Inforniationeverarbeitungsfälle erstellt werden.
Gleichzeitig kann sich eine Verbesserung dee Realzeitbetriebe als sehr nützlich für einen Nichtrealzeitbetrieb erweisen,
wenn die Verbesserung in einer Verkürzung der Verarbeitungszeit
und/oder Steigerung des LeiatungswirktingBgrades besteht.
Gewöhnlich werden sowohl bei Realzeit- als auch bei
Nichtrealzeit-Informationsvererbeitungeeinrichtungen
gespeicherte Listen verwendet. Eine derartige Liste enthält eine Reihe mehr oder weniger zusammenhangender
digitaler Wörter, die in mehreren aufeinanderfolgenden Speicherplätzen im Speicher der Informationsverarbeitungseinrichtung
gespeichert sind. Bei der gewöhnlichen Listentechnik wird jedes Wort oder jeder Posten der Liste
direkt durch einen Befehl adressiert, der gerade zergliedert (analysiert) und ausgeführt wird, um einen speziellen Poeten
-3-
10980t/U8 3
1549U4
der Liste zu benutzen oder su beeinflussen. Der Befehl
kann, bevor er ausgeführt wird, derart abgewandelt (modifiziert)
worden sein, daß ein spezieller Posten in einer Liste nach
einem an sich bekannten Verfahren, z.B. dem Indexverfahren,
aufgesucht wird. Die Posten, aus denen eine solche Liste
besteht, können jedoch alle die gleiche Priorität
haben.
Nun will nan jedoch auch Listen mit Poeten verarbeiten können,
die «ehrere verschiedene Prioritäten haben. So ist es
beispielsweise an sich bekannt, daß eine Liste dazu ▼erwendet werden kann, Informationen in oder aus Eingabe/
Ausgabe-Vorrichtungen zu leiten. Wenn z.B. Informationen in einer Liste angeordnet würden, bevor sie an eine Ausgabevorrichtung, z.B. eine Schreibmaschine, ausgegeben werden,
würde die Liste teilweise oder ganz in methodischer Weise dadurch gefüllt» daß jeder Speicherplatz einzeln adressiert
wird. Bee Satfernen läßt sich dann in ähnlicher Weise
bewerkstelligen, sowie ei die Zeit und die Betriebsbereitschaft der Wiedergebeechr«ibmaeohine erlaubt» Se ist jedoch
wünschenswert, Poeten mit hoher Priorität zuerst zu verarbeiten. Solch ein Poeten sit hoher Priorität
kann ein Alarnzeichen sein, das einen gefährlichen Zustand in dem überwachten oder gesteuerten System anzeigt,
wobei dieser ao schnell wie möglich ausgedruckt oder auf
-4-
109808/1583 BAD
andere Weise angezeigt werden muß. Um diese Fähigkeit zu
erzielen, wurde das "zirkuläre Listenanlegen11 ( circular
listing) entwickelt. Beim zirkulären Listenanlegen wird
einer gesamten Liste eine Adresse im Speicher zugeordnet, der ein Steuerwort enthält, das folgendes bestimmt: Die
maximale Größe der Liste, die Speicheradresse eines EINFÜHRBAREN ANFANGSPOSEENS der Liste, die Anzahl der
gerade in der Liste befindlichen Posten und ob die Liste gerade leer oder voll ist. Das zirkuläre Listenanlegen
ermöglicht das Anhängen oder Entfernen an oder von dem
Ende der Liste. Ein Posten mit hoher Priorität kann »lao
am Anfarg der Liste angehängt werden, so daß er den nächsten
von einem Programm, das wiederholt den Anfangsposten adressiert, zu entfernenden Posten daiäbellt.
Di* Aufgabe der Erfindung wird nun* darin gesehen, eine
Einrichtung zu schaffen, mit deran Hilfe es möglich ist, das zirkuläre Listenanlegen vollautomatisch durchzuführen,
wahlweise Postnn an eine Liste anzuhängen oder von der Liste zu entfernen, und zwar am Anfang oder am Ende
der Liste, wobei der Anfang- oder Endposten in einer Liste durch Adressieren eines Listensteuerwortes in
Abhängigkeit von Signalen, die aus einzelnen von der Informationsverarbeitungseinrichtung dekodierten Befehlswörtern
erzeugt werden, angehängt oder entfernt werden, und schließlich Listensteuerwörter in Abhängigkeit von
109808/1583, bad
speziellen Anhängungs- oder Entfernungebefehlen, die ausgeführt werden, selbsttätig zu modifizieren.
Gemäß der Erfindung wird diese Aufgabe dadurch gelöst,
dafl folgende Vorrichtungen miteinander kombiniert sind: ein erstes Register zur Zwischenspeicherung des Befehlswortes einer Anweisung, die von der Informstionsverarbeitungseinriohtung ausgeführt werden soll, wobei das
Befehlswort aintn Operandenadressteil enthält,
eine idreseierrorriohtung, die auf den Adressteil
de» im ersten Register gespeicherten Befehlswortes anspricht
und die Kennung ©inss ersten Speicherpiatees
bildet,
ein zweites Register zur Zwischenspeicherung des Operanden-Glt% &Q& im ersten Register gespeicherten
ein drittes Register, das mit der Speichervorrichtung zusammenarbeitend in Verbindung steht,
eine auf die von der Adressiervorrichtung ansprechende Vorrichtung zur Übertragung des im essten Speicherplatz
gespeicherten Wortes in das dritte Register,
eine Prüfvorrichtung zur Prüfung eines ersten Teils des im dritten Register zwischengespeicherten Wortes
und zur Feststellung eines Speicherplatzzustandes,
-6-
BAD ORIQiNAL
100Θ03/iSd3
eine Vorrichtung in der Prüfvorrichtung, die auf die
Feststellung des Speieherplatzzustandes anspricht und
ein Signal erzeugt,
eine Vereinigung«vorrichtung sun Vereinigen mindestens
eines zutJfctzlichen Teile das im dritten Register zwischen·
gespeicherten Wortes «it der im zweiten Register ζ wie ο he ngespeioherten Operandenadresse, um die Kennung eines
zweiten Speicherplatzes zu bilden,
ein viertes Register und
eine auf das Signal und die von der Vereinigungevorrichtung ansprechende Vorrichtung turn Übertragen
eines Informationawortes »riechen dem vierten Register
und dem «weiten Speichelet« *
Bei dieser Ausführung dar Erfindung tat also eine
Einrichtung vorgesehen, dta auf Signale anaprioht,
die ihreraeita aua "Liaten"-Befehl»wört»rn abgeleitet eind, wobei diese Befehlewörter einen
Operandenadreastail haben, der die Adraaaa eines
Lietenateuerwortes beatiaat. ferner sind Mittel
vorgesehen, über dia die Signale eine Fdfee von
Operationen auslösen, au denen auch die übertragung
dea Llstensteuertrorte* aua dem Speloherplats im
Speicher Ina Rechenwerk der Informetionaverarbeitunge- -einrichtung gehört. Sa* Llatensteuerwort awird dekodiert,
101101/1583
um den augenblicklichen bzw. laufenden Zustand der
Liste, den es darstellt, festzustellen und die vorgeschriebene Anhängung an die oder Entfernung von der
Liete auszuführen, wie es in einem Operationsteil
des Listenbefehlswortes vorgeschrieben ist. Eine
weitere Einrichtung spricht ebenfalls auf aus dem Listenbefehlswort abgeleitete bzw· dekodierte
Signale an, um das Listensteuerwort in Abhängigkeit von der speziellen, gerade ausgeführten Operation
auf den neuesten Stand zu bringen. Je nachdem, welcher Listenbefehl gerade ausgeführt wird, werden
diejenigen Teile des Listeneteuerworts, die die relative
Adresse des EINPÜHRBABEN ANFANGSPOSTENS der Liste bestimmen,
und die Anzahl der laufend in der Liste befindlichen Posten individuell um 1 erhöht oder verringert
oder nicht geändert· Wenn die Liste bei der Ausführung eines Listenbefehls leer oder voll wird, werden
dritte oder vierte Teile des Listensteuerwortes derart geändert, daß sie diesen augenblicklichen Zustand
anzeigen. Auch ist eine Einrichtung vorgesehen, die das Listensteuerwort selbstiätig in ihren richtigen
Speicherplatz im Speicher zurückspeichert, wenn ein Anhängung8- oder Entfernungs-Listenbefehl erfolgreich
ausgeführt ist. Außerdem ist eine Einrichtung vorgesehen, die die Programmeteuerung auf eine von zwei
-8-
1 09809/1583
BAD ORlGfNAL
abwechselnd benutzten Speicherplätzen in Abhängigkeit
davon überträgt, ob die Anhängung oder Entfernung erfolgreich war oder nicht.
Die Erfindung wird nun anhand der beiliegenden Zeichnungen ausführlich beschrieben, wobei alle
aus der Beschreibung und den Zeichnungen hervorgehenden Merkmale zur Lösung der Aufgabe im Sinne der Erfindung
beitragen können und mit dem Willen zur Patentierung in die Anmeldung aufgenommen wurden.
Mg. 1 zeigt im Blockschaltbild den Verlauf des Informationsflusses
in das Rechen- und Steuerwerk nach fig. 5 in einem vierten Re iheriolge st euer zustand, während
der Ausführung der Befehle ABL, AEL, RBIs und REL.
i"ig. 2 zeigt im Blockschaltbild den Verlauf des
Informationsflusses in das Rechen- und Steuerwerk nach fig. 5 in einem fünften Reihenfolgesteuerzustand
während der Ausführung der Befehle ABL und AEL und
Pig, 3 zeigt im Blockschaltbild den Verlauf des Informationsflusses in das Rechen- und Steuerwerk
nach Pig. 5 in einem fünften Reihenfolgeateuerzustand
während der Ausführung der Befehle RBL und RBL.
-9-
10 980 8/1583 BAD original
Pig. 4 ist ein symbolisches Diagramm, das das Format der verschiedenen in den Systemen verwendeten Befehlswörter
darstellt.
Pig'. 5 ist ein Blockschaltbild des Rechen- und Steuerwerks, das in der Informationsverärbeitungseinrichtung
verwendet wird.
Fig. 6 fet ein Blocks±taltbild des Taktsteuerteils des
Rechen- und Steuerwerks nach Pig. 5.
Pig, 7 zeigt tabellarisch den Zustand dreier Flipflops eines TaktZählers in dem Taktsteuerteil, die vom
Taktgeber abgegebenen Signale und die schaltalgebraischen Gleichungen von Signalen, die den Taktzähler von einem
Zustand zum nächsten weiterschalten.
Pig. 8 zeigt im Blockschaltbild die größeren InformationsfluBpfade
zwischen verschiedenen Registern des Rechen- und Steuerwerks nach Fig. 5 in einem normalen
ersten Reihenfolgesteuerzuetand während der Ausführung
eines typischen Befehls.
Pig. 9 zeigt im Blockschaltbild die größeren Informationsflußwege
zwischen verschiedenen Registern des Rechen- und Steuerwerke nach Pig· 5 in einem normalen zweiten
-10-
109808/1583
ORIGINAL
15494U 44
Reihenfolgesteuerzuetand während der Ausführung eines typischen Befehls.
Pig. 10 ist ein Taktdiagramm, das die Reihenfolge
von Taktsignalen zeigt, die den Informationsfluß steuern, der in den Fig. 8 und 9 angedeutet ist, und
das ferner die Beziehungen zwischen den TaktSignalen
darstellt, die in dem Taktsteuerteil nach Fig. 6 erzeugt werden.
Fig. 11 zeigt im Blockschaltbild den größeren Teil der Schaltwerke des Sechen- und Steuerwerks nach
Fig. 5, das vorbeetimmte Signale abgibt.
Fig. 12a zeigt schematise!! einen Speicherblock fester
Lange, der für eine Zirkulare Liste reserviert ist, und ferner das Format eines Liatensteuerwortes, das
im ersten Speicherplatz des Blocks gespeichert ist.
Fig. 12b zeigt symbolisch den zirkulären bzw. kreisförmigen Aufbau der Liste nach Fig. 12a.
Fig. 12c ist eine Tabelle, die die Modifikationen zeigt, die in Teilen 51F" und M!i" eines Listensteuer-Wortes
während der Ausführung von Listenbefehlen er-
-11-
109808/1583 bad original
folgen} und den Speicherplatz, der von jedem Listenbefehl
relativ zu einer Adresse Z des Speicherplatzes, in dem das Lietensteuerwort in "f-und "N"-Teilen aufgeteilt
vor der Modifikation gespeichert ist, beeinflusst wird.
Die Fig. 13-21 eind echematische Darstellungen des
Infafcltee einer als Beispiel gewählten zirkulären Liste,
während verschiedene Operationen von der erfindungsgemäßen Einrichtung mit ihr ausgeführt werden.
Die fig« 22 let ein Taktdiagramm aur Erläuterung
der Wirkungsweise der erfindungsgemäßen Einrichtung
bei der Ausführung eines ABL-Befehto.
Pig. 23 ist ein !Paktdiagramm zur Erläuterung der Wirkungsweise der erfindungsgemäßen Einrichtung
bei der Ausführung eines AEL-Befehls.
Pig. 24 ist ein Taktdiagramm zur Erläuterung der Wirkungsweise der erfindungsgemäßen Einrichtung
bei der Ausführung eines RBL-Befehls.
-12-
109808/1S83 ßAD
15494U U
Fig, 25 ist ein Taktdiagramm zur Erläuterung der
Wirkungsweise der erfindungsgemäßen Einrichtung bei der Ausführung eines REL-Befehls.
Fig. 26 üst ein Blockschaltbild, das die Wirkungsweise
des Zählers J im Rechen- und Steuerwerk nach Pig, 5 bei der Ausführung der Befehle ABL, AEL, RBL
und REL zeigt, und
die Fig. 27 und 28 sind Blockschaltbilder von Schaltwerken,
die kritische Bitmanipulationen, Prüfungen und Entscheidungen, die in einem dritten ReihenfolgesteuerzisBtand
während der Ausführung der Befehle ABL, AEL, RBL und REL auftreten, ausführen.
Literaturstellen zum bekannten Stand der Technik* Digital Computer Design Fundamentals von Yaohan Gnu,
herausgegeben 1962 von der MoGraw-Hill Publishing
Company, Ine, und Digital Computer Primer von E. M. MoCormick, herausgegeben 1959 von der MoGraw Hill
Book Company, Inc.
-13-
109808/1583
Zunächst sei auf die Figuren 4 und 5 Bezug genommen: Sie Grundinforaationaeinheit, die in der speziell beschriebenen Einrichtung verwendet wird, ist ein Wort aus 24 binären
Ziffern, «it denen 8 Deziaalzahlen ±u Octalcode dargestellt
werden können. Es werden drei Hauptkategorien von Wörtern in der Einrichtung verwendet: 1. Datenwörter, 2. Befehlswörter
und 3. Hilfswörter zua Adressieren und Steuern. Wie noch erläutert wird, sind die Operationscodes der verschiedenen Befehlswörter aus den Bits 23 - 18 der Befehlswörter gebildet.
Die Operationscodes können daher durch zwei Octalziffern dargestellt werden. Sine 8 als Index nach einer Zahl bedeutet
Octalschreibweise. Eine IO als Index nach einer Zahl bedeutet
Dezimalschreibweise.
Die von Rechen- und Steuerwerk der Einrichtung ausgeführten
Befehlswörter sind in 6 Kategorien eingeteilt: Volloperanden-, GEII-, GJ3J2-, GEIJt, Quasi- und Sprung-Öleitkoama-Befehle.
Die letzteren werden entsprechend des englischen "step floating point" auch ait SFP abgekürzt. Der Aufbau aller dieser Befehle
ist in Fig. 4 dargestellt. Wie bereits erwähnt, werden die Operationscodes bei.allen Befehlen von den 6 höchstwertigen
Bits (23 - 18) der Befehlswörter gebildet. Der Befehlscode bestirnt die spezielle Wirkimg, die sich durch die Ausführung
eines Befehle ergeben soll.
-14-
109808/1593
Sie Vollperandenbefehle sind die aa häufigsten verwendeten.
Diese Befehle werden zur Aueführung von Rechenoperationen*
logischen Operationen, Indexsteueroperationen und Datenübertragungen in und aus des Hauptspeicher-Modul 2 verwendet.
Die Bits 13-0 dieser Befehlswörter« der Operandenadressteil,
bezeichnen die Adresse des Speicherpiatees i« Hauptspeicher 2, der die Informationen enthält, die durch die Ausführung dee
Befehls verwendet oder beeinflußt werden aollen. Bit ?4 der
VolloperandenbefehlswtSrter bewirkt, wenn es eine "1* darstellt, eine Modifikation der Operandenadresse, was relative
Adressierung genannt wird, und noch ausführlicher beschrieben wird.
Die Befehle GEN1 unterscheiden sich von anderen Befehlsarten
durch ihren Operationscode 05g» Di«se Befehle sind ferner durch
Mikrocodierung der Bits 14 - O des Befehlswortes unterteilt.
Sie werden hauptsächlich zur Ausführung von Bitoanipulationen
im Hauptakkuaulatorregieter des Rechen- und Steuerwerks 1
verwendet.
Die Befehle GEN2 unterscheiden sich von anderen Befehlen durch ihren Operationscode 25g. Diese Befehle sind ebenfalls durch
Mikrocodierung der Bits 14-0 des Befehlswortes unterteilt. Sie werden in der Einrichtung für folgende Zwecke verwendet:
109808/fäil
BAD ORIG'NAL
1549U4
1. Zur Auswahl von Baugruppen und Vorrichtungen in der
Eingabe-yAuegabe-Einrichtung,
2. zur Übertragung von Daten in diese oder aus diesen Vorrichtungen und
3. zur Ausführung von Programmsteuerungsübertragungen, wie sie von den verschiedenen internen und externen Bedingungen
bzw. Zuständen, auf die die Einrichtung anspricht, vorgeschrieben werden.
Pie Befehle OH3 unterscheiden sich von anderen Befehlen
durch ihren Operationscode 45β· Diese Befehle sind ebenfalls
durch Mikrocodierung der Bits H - 0 des Befehlswortes unterteilt. Sie werden zur Verarbeitung des Inhalts der Haupt-
und Sekundärakkumulatorregister und zur Beeinflussung anderer Elemente in Rechen- und Steuerwerk 1 verwendet. Die Befehle
GEH3 werden auch in Quasi-Unterprogrammen zur Beschleunigung
von Gleitkomma-Rechenoperationen verwendet.
Quasi- Befehle sind erkenntlich am Vorhandensein der Zahl 7g
in den Bitstellen 23 bis 21 des Befehlewortes. Diese Befehle
werden zur Auslösung von Quasi-Unterprogrammen verwendet, bei
denen Gleitkomma-Rechenoperationen oder andere sich wiederholende spezielle Funktionen ausgeführt werden. Die Hauptspeicher-2-Adresse des ersten Befehlswortes in eines QuasiUnterprogramm wird durch den Operationscode dee entsprechenden
Quasi-Befehls bestimmt.
15A9U4
SFP-(step floating point)-Befehle sind durch ihren Operationscode 01g gekennzeichnet. Sie werden in Quasi-Unterprogrammen
zur Verwirklichung und Beschleunigung von Gleitkomma-Rechenoperationen
verwendet. Die Bits H-O der Befehlswörter sind
mikrocodiert, um Bitmanipulationen im Rechen- und Steuerwerk
spezieller Bedeutung hinsichtlich der Durchführung von Gleitkomma-Operationen
auszuführen.
Die als X-Bits bezeichneten Bits 17 - 15 aller Befehlswörter
sollen anzeigen, ob eine herkömmliche Indexmodifikation mit
einem Befehl ausgeführt werden soll, bevor er ausgeführt wi^d,
und wenn eine Indexmodifikation vorgeschrieben ist, welche Indexzelle die modifizierende oder Indexgröße enthält, die
die Umsteuergröße (modifier) sein soll. Wenn die Bits 17-15
aller Befehlswörter alle "Null" sind, erfolgt keine Indexmodifikation, wenn das Befehlswort in das Rechen- und Steuer
werk 1 zur Ausführung übertragen wird. Wenn die Bits 15 - 7
irgendeine andere mögliche Kombination (001-111) bilden, erfolgt eine Indexmodifikation des Befehlswortes, indem der
Inhalt des bezeichneten Speicherplatzes (00001-0007g) zu den
Bitstellen 15-0 des Befehlswortes hinzuaddiert wird. Bei dem am häufigsten verwendeten Befehl "Volloperand" besteht das
Ergebnis normalerweise in einer Änderung des Operandenadressteils
des Befehlswortes. Bei anderen Befehlsarten kann die Befehlsmikrocodierung und mithin die auszuführende Operation
jedoch durch Indexmodifikation beeinflußt werden.
Wenn die insgesamt mögliche Anzahl von Wörtern, die im
Hauptspeicher 2 gespeichert werden können, die für den Darstellungsbereich desjenigen Teils (der Bits 13-0 der VoIl-•operandenbefehlswörterj, der die Operandenadresse bestimmt,
überschreitet, wird eine spezielle Art der Adressierung verwendet, um eine größere Adressierfähigkeit zu erhalten, ohne
die Grundwortlänge der Informationsverarbeitungseinrichtung zu erhöhen» Das Bit 14 der Tolloperandenbefehlswörter dient
zur Vorb.estimmung, ob bei einem Befehlswort, das zur Ausführung
ins Rechen- oder Steuerwerk 1 gerufen wurde, die relative Adressierung angewendet werden soll oder nicht. Wenn das Bit
H eine "1" darstellt, wird die relative Adressierung vorbestimmt, und der Operandenadressteil des Befehlswortes wird vor
der Ausführung des Befehles nach vorbestimmten Rechenregeln derart modifiziert, dafl die Gesamtzahl der adressierbaren
Speicherplätze ist Hauptspeicher 2 viermal so groß ist wie derjenige, der durch die Bits 13-0 oder die relative Adressierbarkeit vorbestimmt werden könnte. Wenn das Bit H eine
"Kuli" ist, wird die relative Adressierung nicht angewandt,
und die Befehlswortoperandenadresse ist diejenige, die direkt durch die Bits 13-0 bestimmt wird, wobei diese Bits einer
Indexmodifikation, wie erwähnt, unterworfen werden.
Quasi-Befehlswörter können ebenfalls relativ adressiert sein,
obwohl das Ergebnis nicht das gleioheist, wie das, was sich
mit Volloperandenbefehlswörtern erzielen lfcßt. Wenn ein Quasi-!-
1088Ö8/-W83 BAD original
15494U
Befehlswort ausgeführt und die Prograaasteuerung in den voa
Quasi-Befehlswortoperationscodeteil vorgeschriebenen Speicherplatz übertragen wird, wird die ia Operandenadressteil enthaltene Binärzahl autoaatisch in einen vorbestiaaten Speicherplatz übertragen, aus dea sie, falls erwünscht, für das Quasi-UnterprograiDB geholt werden kann. Wenn ein Quasi-Befehlswort
"relativ adressiert " ist, ergibt sich schließlich eine Änderung der la vorbeetiaaten Speicherplatz abgespeicherten
Binärzahl und keine Änderung der Operandenadresse selbst.
Pig. 5 ist ein vereinfachtes Blockschaltbild des Rechen-
und Steuerwerks (weiterhin Rechenwerk genannt) 1 und der Register ia Hauptspeicher 2, ait denen es direkt koaauniziert.
Das Blockschaltbild zeigt die funktionell Beziehung zwischen
den Registern, einea Paralleladdierwerk und einea Serienvoll·»·
addierer. Die Inforaationsübertragung zwischen den Registern
und den anderen Bauteilen des Rechenwerks 1 erfolgt, wie es durch die Yerbindungaleitungen in Fig. 5 angedeutet ist, durch
Parallel- und/ oder Serienübertragung von Binärziffern. In der nun folgenden Beschreibungseinleitung werden nur die wesentlichen Registereigenachaften und -funktionen beschrieben,
während der InforaationsTerlauf ia weiteren Verlauf der Beschreibung erläutert wird.
-19-109808/1583
BAD
IO
Das Paralleladdierwerk 20 ist ein 24-Bit-Paralleladdierwerk
ait gleichzeitiger (Vorausschau-J-Übertrag-Portpflanzung
zwischen allen vier Bit-Gruppen, die je nach Wunsch durchgeschaltet
und gesperrt werden können. Eine Erläuterung der Wirkungsweise von Paralleladdierwerken mit gleichzeitiger
Übertragfortpflanzung befindet sich auf den Seiten 390 und 391 des bereits zitierten Buches "Digital Computer Design
Fundamentals" von Taohan. Chu. Alle parallelen Rechenoperationen
la Rechenwerk 1 werden im Paralleladdierwerk 20 ausgeführt. Außer für Rechenfunktionen dient das Paralleladdierwerk 20
auch als "NABE" ("hub") für die meisten Pairallelübertragungen von Daten zwischen den Registern des Rechenwerkes 1.
Das A-Regieter 21 ist ein 24-Bit-Akkumulator für Rechenoperationen
und Bitmanipulationen. Heben dem normalen Parallelaustausch von Informationen mit dem Paralleladdierwerk 20
ist es in der Lage« entweder Rechts- oder Linkeverschiebungen auszuführen. Die Parallelübertragung von Informationen kann
zwischen einem Teil des A-Registers 21 und dem J-B&hler 30
für Gleitkomma-Operationen ausgeführt werden. Das A-Register
21 ist in der Lage, mit dem Q-Register 22, dem "F"-Volladdierer
27 und dem "H-"Volladdierer 29 zusammenzuarbeiten.
Das Q-Regieter 22 ist ein 24-Bit-Hilfsakkumulator, der in Verbindung
alt dem A-Register 21 für Rechenoperationen mit zweifacher Genauigkeit verwendet wird. Außerdem winj der Inhalt
des Q-Registere 22 zur Bestimmung von Operationsteilen des
109808/1583
_2o - BAD ORIGINAL
Α-Registers 21 und/ oder B-Registers 25 während der Ausführung
von "Teil"-Befehlen verwendet, bei denen die vorgeschriebenen
Teile (Gruppen aus einem oder mehreren Bits) eines Inforaationswortes
beeinflußt werden. Das Q-Register ist ebenfalls in der Lage, Links- oder Rechtsverschiebungen auszuführen und Informationen
in das oder aus dem Paralleladdierwerk 20 parallel zu übertragen und in der Lage, mit dem "Ρ·8 Volladdierer 27
zusammenzuarbeiten.
Das I-(instruction)-Register 23 ist ein 26-Bit-Register, in
dem das Befehlswort, das in einem vorbestimmten Zeitpunkt ν ausgeführt wird, gespeichert wird. Zwei Bits A und B sind
zwischen den Bits 14 und 13 eines normalen 24-Bit-Befehlewortes
angeordnet, wenn im I-Register 23 ein 16-Bit-Operandenteil
bei größerer S/peicheraddressierung vorgesehen sein soll.
Die in das oder aus dem I-Register 23 übertragenen Bitinformationen
werden normalerweise parallel übertragen, obwohl Teile, des I-Registers 23 unter bestimmten Bedingungen seriell verschoben
werden können. Das I-Register 23 kann mit dem Paralleladdierwerk 22, dem P-Register 24, dem I-Volladdierer 28, dem
Speicheradressenregister 32 und dem Speicherdatenregister 33 zusammenarbeiten.
Das P-(programm location)-Register 24 ist ein 16-Bit-Register,
das normalerweise die Adresse des Speicherplatzes im Haupt-
- 21 -
109808/1583 bad
1549U4
speicher 2 bestirnt, aus des der als nächster auszuführende
Befehl geholt werden soll. Alle Informationen werden parallel in das und aus dem P-Register 24 übertragen. Das P-Register
24 kann «it des Paralleladdierwerk 20, des I-Register 20,
de» H-Eegister 26 und den Spticheradressenregister 32 zusamaenarbeiten.
Das B-Register 25 ist ein 24-Bit-Paralleleingangs-Zwischenspeicherregister, das zwischen den Hauptspeicher 2 und den
Verarbeitungsregistern des Rechenwerks 1 angeordnet ist. Alle Informationen, die in die «"öder aus den Speicherplätzen des
Hauptspeichers 2 übertragen werden, werden durch dieses Register über das Speicherdatenregister 22 geleitet. Das B-Register
kann bei der Ausführung bestimmter Befehle, bei denen das
B-Register 25 als funktioneller Informationsverarbeiter und als Zwischenspeicher verwendet wird, nach; rechts verschoben
werden. Die Informationen werden dabei zwischen dem B-Register
25 und dem Paralleladdierwerk 20 parallel übertragen. Das
B-Register 25 kann auch mit dem F-Folladdierer 27, dem I-Volladdierer 28 und de» H-Volladdierer/zusammenarbeiten.
ι
t
Daβ H-(holding)-Register 26 ist ein 16-Bit-Register, das hauptsächlich zur Kurzzeitspeicherung von Informationen bei der Ausführung bestimmter "erweiterte Punktione-Befehlen verwendet
wird. Dieses Register kann aus dem Paralleladdierwerk 20 Daten
parallel übernehmen und parallel ins Paralleladdierwerk 20,
ins P-Register 24 und in das Speicheradressenregister
übertragen.
Der "F"-Volladdierer 27 wird zur Ausführung von Rechen-
und logischen Operationen an Teilen verwendet, die durch das Q-Register 22 bei der Ausführung von Teilbefehlen
vorgeschrieben werden, und auch zur Neueinstellung eines Teils der Listensteuerwörter während der Ausführung von
Listenbefehlen, die bestimmte Speicherplätze in vorgeschriebenen
Teilen des Hauptspeichers 2 beeinflussen«
Der "!"-Volladdierer 28 wird dazu verwendet, aus den in
Listenateuerwörtern enthaltenen Informationen die relativen
Plätze von Posten zu errechnen, die in denjenigen Listen ergänzt oder aus denjenigen Listen entfernt werden sollen,
die während der Ausführung von Listenbefehlen im Hauptspeicher
2 gespeichert sind.
Der "N"-Volladdierer 29 wird zur Ausführung von Rechenoperationen und logischen Operationen des A-Registers 21
und zur Neueinstellung «weiter und dritter Teile der
Listensteuerwörter während der Ausführung von Listenbefehlen verwendet.
Der MJ"-Zähler 30 ist ein 5-Bit-Zähler, der zur Steuerung
- 23 - »AD
109808/1583
15494U
it
von Inforaationemanipulationen und bestimmter zeitabhängiger Vorgänge bei der Ausführung von Befehlen verwendet wird, bei denen in der einen oder anderen Weise gezählt werden mußt, z.B. in Abhängigkeit von veränderbaren
Bedingungen oder Zuständen.
über den Eingabe-Ausgabe-Wähler 31 kann das Rechenwerk
mit dee Außeneteuerunge-Eingabe-Auegabe-Zwiechenepeicher,
des Prozeßsignal-Eingabe-Auagabe-Zwischenspeicher 9 und
der Programmierkonsole 6 verbunden werden· Der Eingabe/Ausgabe-Wähler 31 schaltet bei der Ausführung bestimmter Befehle einen von mehreren wählbaren 24-Bit-Eingabe/Ausgabe-Informationskanälen ein. Alle aus Eingabe/Ausgabe-Vorrichtungen parallel übertragenen Daten werden über den Wähler 31
in das Paralleladdierwerk 20 zur Weiterverteilung im Rechenwerk 1 geleitet. Das Speicheradressenregister 32 ist ein
16-Bit-Register, gehört zubj Hauptspeicher 2 und nicht zum
Rechenwerk 1. Es erhält jedoch ein verstümmeltes 16-Bit-Wort direkt aus dem P-, I- oder Η-Register des Rechenwerke 1,
wobei dieses Wort die Speicheradresse für das nächste gespeicherte 24-Bit-Wort bestimmt, das über das Speicherdatenregister 33 aus den Hauptspeicher 2 des Rechenwerks 1 übertragen wird·
Das Speicherdatenregister 33 gehurt auch zum Hauptspeicher-■odul 2. Es handelt sich ua ein 24-Bit-Regieter, das jedes
109808/4158 3 "° 0RIQ'NAL
gerade unter einer speziellen Adreeee, die im Speicheradressenregister
32 gespeichert war, und aufgrund eines Speicheranrufs durch das Rechenwerk 1 aus den Speicherplatz
geholte Wort speichert. Das Speioherdatenregieter 33 arbeitet
mit dem B-Regieter 25 und dem I-Regiater 23 des Rechenwerks
zusammen.
Bei einer binären Informationsverarbeitungseinrichtung wird üblicherweise jedem speziellen Signal eine spezielle nemotechnische
Bezeichnung gegeben. Im vorliegenden Falle werden die Bezeichnungen der. Signale durch vier Buchetaben
abgekürzt. So wird z.B. das Taktsignal mit TCKA bezeichnete
In der Schreibweise der Booleechen Algebra bedeutet das Signal
TOKA die logische Inversion oder Negation von TOKA,
was durch einen Querstrich über der Abkürzung angedeutet
wird. Wenn TCKA "Eins" ist, muß TCKA "Null" sein, und wenn TOKA "Null" ist, dann muß ΙΰκΤ "Eins" sein.
Die Bedingungen, die erfüllt sein müssen, damit ein bestimmtes
Signal "Eins" ist, lassen sich in Form einer Booleschen Gleichung oder Schaltfunktion (vgl. DIN 44300)
darstellen. Aus der Booleschen Gleichung oder Schaltfunktion
für den Eins-Zustand eines Signale ergibt eich für den
Fachmann aber ohne weiteres der gerätetechnisohe Aufbau
eines Schaltwerks oder Schaltnetztee - aus eog."logi8ohen"
- 25 -
109808/158 3
1549ΑΑΛ 46
i
dern Und NICHT-Öliedern - alt dteeen Hilfe dieses Signal
gebildet werden kann·
Un die Operationen im Rechenwerk 1 in der richtigen Reihenfolge ablaufen zu lassen, liefert eine Reihenfolgesteuerlogik 50 fünf sich gegenseitig aueechließende Reihenfolge-Bteuerzustände, die durch fünf Reihenfolgesteuerflipflope
PISCO 1, PISCO 2, PISCO 3, IISCO 4 und PISCO 5, wie es im
Blockschaltbild nach Tig« 6 gezeigt 1st, bestimmt werden.
Das den Reihenfolgesteuerzustand 1 bestimmende Flipflop
FISCO 1 bestimmt den Lesezyklus für alle Befehle. Der Lesezyklus ist diejenige Zeitspanne, während der ein im Hauptspeicher 2 gespeicherter Befehl angefordert, aus dem Hauptspeicher 2 ins Rechenwerk 1 übertragen und ins I-Regieter
weitergeleitet wird. Außerdem wird die im P-Register 24
gespeicherte Zahl gewöhnlich während des Reihenfolgesteuerzustands 1 erhöht, so daß andere Informationen zwischen den
Registern übertragen werden können. Einige Befehle, die durch eine einfache Gruppe von Operationen ausgeführt
werden können, werden vollständig während des Reihenfolge-Steuer zustande 1 ausgeführt« Auch die relative Adressierung
findet während des Reihenfolgesiaierzustande 1 statt, wenn sie
vom Bit 14 des Befehlswortes vorgeschrieben wird. Das Takt-
109808/1583
signal SGIA let "Eine", wenn daa den Reihenfolgeateuerzustand 1 beatimmende Flipflop PISOO 1 geaetzt iet.
Das Reihenfolgeeteuerzuatand-2-FlipflQp FISOO 2 bestimmt den
Reihenfolgezyklus, in dem die IndexBodifikation atattfindet.
Außhdie Aueführung einiger Befehle, bei denen die X-Bita
(17,15) eines Befehlawortee für andere Zwecke als für die
normale IndexBodifikation verwendet werden, findet in Reihenfolgesteuerzuatand 2 statt. Der Reihenfolgesteuerzustand 2 folgt noraalerweiae, wenn er verlangt wird, unmittelbar auf den Reihenfolgesteuerzuatand 1. Daa Taktsignal
SC2A ist "Eins;, wenn daa Reihenfolgesteuerzuetand-2-Flipflop FISCO 2 gesetzt ist.
Das Reihenfolgesteuerzustand-3-FlIpflop FISCO 3 beatiaat
eine zusätzliche Bitaanipulationszeit für eine Anzahl von
Befehlen unter bestirnten Bedingungen vor dar weiteren Aueführung. Die Zeltepanne des Reihenfolgeateuerzuatanda 3
wird durch die Anforderungen der einzelnen Befehle bestimmt. Das Taktsignal SC3A iat "Eins", wenn daa Flipflop
FISCO 3 geaetzt ist.
Daa Reihenfolgeeteuerzuatand-4-Flipflop FISCO 4 bestiaat
die letzte Stufe der Ausführung der meisten Befehle· Der Reihenfolgeateuerzuatand 4 schließt sich an die Heihenfolgesteuerzustände 1, 2 oder 3 an, ja naoh de« welcher Befehl,
-. 27 - BAD
109808/1583
gerade ausgeführt wird. Per Reihenfolgesteuerzustand 4 kann
ähnlich wie der Reihenfolgesteuerzustand 3 zeitlich verlängert
werden, was bei einigen Befehlen erforderlich ist. Da· Taktsignal SC4A ist "Eins", wenn das Flipflop FISCO 4
gesetzt ist.
Das Reihenfolgesteuerzustand-5-Flipflop FISCO 5 bestimmt
eine zur Ausführung weiterer Funktionen erforderliche Zeitspanne, üb die Ausführung einiger Befehle zu vervollständigen.
Das Taktsignal SC5A ist "Eins", wenn das Flipflop FISOO 5 gesetzt ist.
Die zur Ausführung der einzelnen Operationeschritte bei bzw. in jedem Reihenfolgesteuerzustand und zur Steuerung der
Übergänge von einem Reihenfolgesteuerzustand zum anderen
erforderlichen Takteignale werden von einem Reihenfolgetektzähler 51 und einem Verzögerungstaktzähler 52 aus dem
Taktsignal TCKA abgeleitet, das vom Taktgeber 35 erzeugt
wird. In Fig. 10 und den folgenden Taktdiagrammen ist das
Taktsignal TCKA der Einfachheit halber symmetrisch und nicht asymmetrisch wie in Fig. 7B dargestellt. Der Reihenfolgetakt
«ähler 51 enthält drei Flipflops: FITCSA, FITCSB
und YIICSC. Die dekodierten und vom Reihenfolgetaktzähler
abgegebenen Taktsignale sind in Fig. 7 zusammen Bit den
logischen Gleichungen für die Zählerfortechaltimpulse, die
in der unmittelbar mit des Reihenfolgetaktzähler 51 verbundenen
Logik gebildet werden, tabellarisch dargestellt·
- 28 - ßAD
109808/1583
15494U Λ
Der Verzögerungetaktzähler 52 enthält fünf Flipflops»
PITAPP, PITBPP, PITCPP, PITDPP, IITEPP, Er wird während der
Ausführung von Befehlen, bei denen eine Verlängerung der
Dauer der Reihenfolgezustände 3 und/oder 4 erforderlich ist, zur Erzeugung spezieller Steuersignale verwendet· Der
Verzögerungetaktzähler 52 ist während der Reihenfolgesteuerzuatände 3 und/oder 4 dieser Befehle auf eine Zahl gesetst,
die kleiner als 3O8 ist, und wird dann vom Taktsignal TCKA
hochgezählt. Während aller übrigen Reihenfolgesteuerzustände
ist der Verzögerungszeitzähler 52 zwar ebenfalls auf 30g
gesetzt, jedoch wird er dann as Weiterzählen gehindert* Ein Verzögerungstaktzählersperrsignal TPI3 wird "Eins", v
wenn der Verzögerungetaktzähler 52 den Zählerstand 30Q erreicht und der Reihenfolgetaktzähler 51 sich la TT4B-Zustand befindet· Wenn diese Bedingung erfüllt ist, wird ein
"letzter-Impuls "-Signal TIiPS erzeugt, das mit TCKA zusammenfällt. Die Hinterflanke des Signals TLPS löscht in jedem
Reihenfolgesteuerzustand den Reihenfolgetaktsanier 51, und
dann beginnt der Taktzyklus des nächsten Reihenfolgesteuerzustand ea. Mit der Rückflanke des Signals TLPS des letzten
Reihenfolgesteuerzustandes für die Ausführung irgendeines
Befehls beginnt wieder der Reihenfolgesteuerzustand 1, um
mit der Ausführung des nächsten Befehls zu beginnen·
Die Hauptfunktion des Reihenfolgesteuerzustands 1 besteht
darin, einen im Speicher unter einer Adresse gespeicherten
- 29 -
108808/1583 bad original
Befell, die ie P-Reglster 24 gespeichert ist, ins Rechenwerk
1 su bringen, so daß er dekodiert und susgeführt werden
kenn. Auferde» wird das P-Register 24 während des Reihenfolgesteuerzustande 1 normalerweise schrittweise weiterge-' zählt (incremented), so daß es die Adresse des nächsten
Befehls, der ausgeführt werden soll, enthält, wenn die normals Programmfolge abläuft. An dieser Stelle sei darauf
hingewiesen, daS bestimmte Zustände bzw. Bedingungen oder
Befehle eine Abweichung der voa P-Register 24 vorgeschriebenen Befehlsreihenfolge bestinen können.
Der Hauptzweck des Reihenfolgesteuerzustands 2 besteht darin,
eine herkömmliche Indexmodifikation auszuführen, wenn die Bits 15,16 und 17 eines Befehlswortes, das ausgeführt wird,
nicht alle "Bull? sind. Dieser Zustand wird während des Taktes TCTA des Reihenfolgteteuerzustande 1 festgestellt.
Bann werden entsprechende Signale erzeugt, so dafl am Ende dea Reihenfolgeateuerzustands 1 in den Reihenfolgesteuerzuatand 2 übergegangen wird.
BIe Signale, die während der Reihenfolgesteuerzustandβ 1
und 2 erzeugt werden, und der Informationsfluß, der in diesen Zuständen stattfindet, sind bei allen Befehlen gleich
oder nahezu gleich. Sie Tig« 8 und 9 sind Blocksehaltbilder, die jeweils den Verlauf des Informationsflusses während der
normalen Reihenfolgesteuerzustände 1 und 2 darstellen.
" 30 " BAD ORIGINAL
109808/1683
Fig. 10 let ein Zeitdiagramm der Dureheehaltsignale, die
den Informationsfluß steuern· Außerdem sind die normalen
Takteignale, die in jedem Reihenfolgesteuerzustand verwendet
werden, in dem Zeitdiagramm nach Pig. 10 enthalten.
Die Wirkungsweise und Funktion der normalen Reihenfolgesteuerzustände
1 und 2 werden nun an Hand der Fig. 1,5,8,9, 10 und 11 näher beschrieben. Fig. 11 ist ein Blockschaltbild,
das die Logikteile des Rechenwerks 1 darstellt, aus dem die wichtigsten Signale kommen.
Es sei darauf hingewiesen, daß der Hauptspeicher 2 alt dem Rechenwerk 1a synchron zusammenarbeitet. Ua ein gespeichertes
Befehlswort aus dem Speicher zu holen, wird der Reihenfolgesteuerzustand 1 ausgelöst, und dem Hauptspeicher 2 wird
signalisiert, daß voa MREQ-Signal ein Anruf erfolgt, wie
es Ib Taktdiagramm nach Fig. 10 gezeigt ist. Gleichseitig
wird der Inhalt des P-Registers 24 voa MAMP-Signal Ins
Speicheradressenregister (MAR«memory adress register) 32
durchgeschaltet. Der Inhalt des vorgegebenen Speicherpiatee·
la Hauptspeicher 2 wird von der Hauptspeicher-2-Logik, die
unabhängig voa Rechenwerk 1 arbeitet, ausgelesen und Ins
Speicherdatenregister (HDR-data register) 33 übertragen.
Wenn das gewünscht· Wort dem Speicherdatenregister 33 but
Tsrfügung steht, ersaugt dar Hauptspeicher 2 ein "Datan-Fertig"-Signal
ODRA und gibt dieses ans Rechenwerk 1 tb,
- 31 108808/158 3 bad original
15494U 31
und io takt TCT2 wird der Inhalt des Speicherdatenregisters
33 vom BDOB-Signal ine B-Register 25 durchgesehaltet. Außerdem werden die Bite 23-14 dee Speicherdatenregisters 33 vom
IDOC-Signal in Aie Biteteilen 23-H ins I-Register 23 durchgeschaltet, so daß mit der Dekodierung des Operationscodes
begonnen werden kann. Während des Taktes TCTA werden die Bite 13-0 des B-Registers vom UBLA-Signal in die Bitstellen
13-0 des Paralleladdierwerke 20 durchgeschaltet. Mit der Rückflanke des Signale TLFS werden die Bits 15-0 des Paralleladdierwerke 20 während des Reihenfolgesteuerzustande
von IAUI-Signal in die Bitetellen A,B, 13-0 des I-Registers
23 und von HAUH-Signal ins H-Regieter 26 durchgeschaltet.
24 erfolgt auch während des Reihenfolgeeteuerzuetande 1 und
geechieht in der folgenden Weise, ohne den Informationsfluß
zwischen den verschiedenen Elementen des Rechenwerke 1 zu stören. Während des Taktee TCTS werden der Inhalt des P-Regietere 24 und eine Eins jeweils von den Signalen UPAU und
UEHC gleichzeitig in das Paralleladdierwerk 20 durgesehaltet. Sie Auegangeeignale dee Paralleladdierwerks 20 stellen
dann die gewünschte Summe P+1 dar· Diese Summe wird vom HAUH-Signal, das im Takt TCT2 auftritt, ins H-Regieter 26
durchgeechaltet. Mit der Rückflanke des Signals TLPS wird
dann der Inhalt des H-Registers 26 vom Signal PXHP, sowie
die Ausgangssignale des Paralleladdierwerks 20, die den
- 32 -109808/1583
Bitstellen 15-0 entsprechen, vom HAUH-Signal ins H-Register
durchgesehaltet werden, ins P-Register 24 durchgeschaltet«
Somit enthält am Ende eines normalen Reihenfolgesteuerzustands
1 das !-Register 23 den Befehl, der aus dem Hauptspeicher 2 aufgerufen wurde; die Zahl im P-Register 24 ist
um eins erhöht, der Operandenadressteil des ausgelesenen Befehlswortes befindet sich im H-Register 26 und der nächste
Reihenfolgesteuerzustand kann eingeleitet werden, um mit der Ausführung des Befehls fortzufahren. Ee zeigt eich,
daß sich der Operationscodeteil des Befehlswortes während des Taktes TCTA des Reihenfolgesteuerzuetands 1 im I-Re- **
gister 23 befindet und bei der Befehlsdekodierung erzeugte
Steuersignale in diesem Augenblick zur Verfügung stehen, um folgendes zu beeinflussent
(a) den Rest des Reihenfolgesteuerzustande 1 (wie es bei
einigen Befehlen erforderlich ist),
(b) den Reihenfolgesteuerzustand, der nach dem Signal TIPS
als nächster eingeleitet wird, und
(c) die Aktionen, die während der folgenden Reihenfolgest
euer zustände ausgeführt werden müssen.
Nimmt man an, daß die Bits 17-15 des Befehlswortes der Instruktion (Anweisung), die ausgeführt wird, nicht "Null"
sind, dann wird der Reihenfolgesteuerzustand 2 naoh dem Reihenfolgesteuerzustand 1 eingeleitet. Bas Signal
- 33 109808/1583
wird erneut "Eine", wodurch ein Anruf an den Hauptspeicher
angezeigt wird. Gleichzeitig wird der Inhalt der Bitsteilen
17-15 dee I-Registere 23 vom Signal MAMI in die Bitetellen
2-0 des Speicheradressenregisters 32 durchgeschaltet, um
die Speieherplatz-Indexierungsgröße, die ausgelesen werden
soll, zu bestimmen· Dies ist vorzugsweise einer der niedrigerwertigen Speicherplätze 00001-00007q. Deshalb werden die
höherwertigen Bitstellen des Speicheradreesenregisters 32
einfach vom Signal MAMX gelöscht. Wenn das Signal CDRA anzeigt, daß die gewünschten Modifizierungedaten im Speicherdatenregister 33 zur Verfügung stehen, wird der Inhalt dieses
Registers im Takt TCT2 vom BDOB-Signal ins B-Register 25
durchgesehaltet. Im Takt TCTA wird der Inhalt dee B-Registers
25 von den Signalen UBLA und UBUA ine Paralleladdierwerk 20
durchgeaehaltet. Gleichzeitig wird auch der Inhalt der
Bitetellen A,B, 13-0 dee I-Registere 23 vo» UIAU-Signal
ine Paralleladdierwerk 20 durchgeschaltet. Die Ausgangesignale des Paralleladdierwerke 20 stellen dann die Summe des
Operandenadressteils des Befehlewortes, dae ie I-Regieter
gespeichert ist, und des Modifizierungswortes oder der
Indexgröße, die in der vorgeschriebenen Indexkernzelle gespeichert ist, dar. Mit der Rückflanke des Signals TLPS
wird die Summe der Bitstellen 15-0 des Paralleladdierwerks vom IAUI-Signal in die Bitstellen A,B, 13-0 dee I-Regietere
23 durchgeeehaltet, und die Reihenfolgesteuerung geht in den
nächsten geeigneten Reihenfolgesteuerzustand über, Je nach
15494« JtT
den Anforderungen der einzelnen Befehle, die zwischenzeitlich im I-Register 23 gespeichert sind. Bei einigen Befehlen,
die die Indexzellen beeinflussen oder prüfen, werden die Indexbits zur Befehlssteuerung verwendet, so daß sie den
Operandenadressteil des Befehlswortes nicht sperren·
Io Verlauf der folgenden Beschreibung der Erfindung wurde
angenommen, daß die als Beispiel gewählten Befehle nicht
indexiert sind, um die Taktpläne nicht unnötig zu komplizieren. Es sei jedoch darauf hingewiesen, daß diese Befehle
auch in der gerade beschriebenen Weise indexmodifiziert
βein können.
Die Flg. 12a und 12b sind Bchematische Darstellungen eines
Blocks von Speicherplätzen, der eine fest vorgegebene Länge hat. Das erste Wort des Blocks ist für ein Listensteuerwort
vorgesehen, das im Speicherplatz Z gespeichert dargestellt ist, wobei Z für dieses Beispiel eine willkürlich gewählte
Adresse ist. Die Adresse Z dient als Kennzeichen für eine gesamte zirkuläre Liste, die diesem Block von Speicherplätzen zugeordnet ist.
Das Listensteuerwort enthält mehrere Teile, deren Funktionen
und Eigenschaften unmittelbar ira Anschluß hieran allgemein
und ausführlicher in Verbindung mit der Erläuterung von vier
109f0l5/i683 «D
Listenbefehlen, die ausgeführt werden können, um eine zirkuläre Liste zu beeinflussen, beschrieben werden. Das Format des Listensteuerwortes ist in Fig. 12a dargestellt. Sie
maximale Länge, d.h. die Größe des reservierten Speicherblocks irgendeiner bestimmten Liste ist durch den Teil "L"
(die Bite 3-0) des Listensteuerwortes für die Liste bestimmt.
Die Lietenlänge wird durch den Ausdruck 2 dargestellt, in
dem L die in den Bits 3-0 des Listensteuerwortes enthaltene Anzahl darstellt. Bei der vorliegenden Ausführung der Erfindung muß L in den Bereich von 1 « L « 9 liegen. Das
eine 1
dar und in% wenn die Liste gerade leer ist, d.h. wenn
keine Wörter oder Poeten in den Speicherplätzen der dem Listeneteuerwort zugeordneten Liste gespeichert sind. Das
Bit 5 dee Lietensteuerwortes stellt einen "Liste-voll"-Teil
dar und iit nur dann eine "1", wenn die Liste gerade voll
ist, wie es durch die maximale Lietenlänge, die durch den "L"-Teil rorgegeben ist, bestimmt wird. Der "N"-Teil (die
Bits 14-16) des Listensteuerwortes bestimmt direkt die Anzahl der laufend in der Liste vorhandenen Poeten. Der "F"-Teil (die Bits 23-15) des Listensteuerwortes bestimmt die
Adresse dea Speicherplatzes, der für einen "zuführbaren Anfangepoeten" ("enterable beginning item"), relativ zum
Speicherplatz Z+1 ausgedrückt, zur Verfügung steht. F muß im Bereich von 0 » F » 2-1 liegen.
. - 36 -
109808/1583
Jt
Durch Adressieren des Speicherplatzes Z durch den Operandenadressteil
irgendeines der vier Lietenbefehle, die noch
im folgenden beschrieben werden, kann ein vorgewählter Speicherplatz von vier Speicherplätzen innerhalb desjenigen
Speicherplatzblocks, der durch den "!"-Teil des Listensteuerwortes
bestimmt wird, das im Speicherplatz Z gespeichert ist, beeinflußt (aufgerufen) werden. Diese vier Speicherplätze
werden "der entfernbare Anfangsposten", "der zuführbare Anfangsposten", "der entfernbare Endposten" und
"der zuführbare Endposten" genannt. Die speziellen Speicherplätze,
die als diese "Posten" ('Items") dienen, sind dynamisch und nicht statisch angeordnet. D.H. während In- w
formationspoaten an eine zirkuläre Liste angehängt oder
aus dieser entfernt werden, ändert sich der Anfang und das Ende der besetzten und leeren Teile der Liste entsprechend,
wird jedoch stets vom Listensteuerwort soweit vorgeschrieben, als es zur Ausführung der Listenbefehle erforderlich
ist.
Die in den Pig. 12a und 12b dargestellte zirkuläre Liste
ist teilweise besetzt und teilweise leer/bzw. frei dargestellt, um die normale Beziehung zwischen den verschiedenen
Posten und dem gesamten Speicherplatzblook, der für die Liste vorgesehen bzw. reserviert ist, zu zeigen. Der "entfernbare
Anfangsposten" und der "zuführbare Anfangsposten11 besetzen immer benachbarte Speicherplätze. In ähnlicher
Weise sind der "entfernbare Endposten" und der "zuführbare
10 S 8 0 8 /317 S~8 3 BAD ob\gvhal
15494U iS
Endposten" in neben&inanderliegenden Speicherplätzen gespeichert. Die Speicheradresse dee "entfernbaren Anfangspostens" ist stete Z+1+(P+1), wobei P die im "P"-Teil des
Listeneteuerworte enthaltene Anzahl und Z, wie bereits erwähnt, die eigentliche Speicheradresse des Listensteuerwortea iet. Die Adresse des "zufUhrbaren Anfangepostensf ist
stets Z+1+(P). In ähnlicher Weise ist die Adresse des "entfernbaren Endpostens11 stets Z+1+(?+H), wobei H die Anzahl
der laufend in der Liste gespeicherten Posten ist, wobei die liste von dem "N"-Teil des Listensteuerwortes vorgesohrieben ist· Die Adresse des "zufUhrbaren Endpostens"
ist
Die folgenden vier unabhängigen Volloptrand-Listenbefehle
werden dekodiert, um die zum Hinzufügen von Posten in die
oder zum Entfernen aus der zirkulären liste und zum entsprechenden Modifizieren des Listensteuerworts erforderlichen Signale zu erzeugen· Einen Befehl "anhänge Posten
an Lietenanfang" wird willkürlich die Bezeichnung ABL und der Operationscode 57g zugeordnet. Auf den Befehl ABL wird
das adressierte Listensteuerwort aus dem Hauptspeicher 2
ins Bechenwerk 1 übertragen· Wenn das Bit 5 des adressierten Listensteuerwortes eine "Bull" ist (Liste nicht voll)-,
wird das Wort oder der Posten im A-Register 21 an die Liste im zugehörigen Speicherplatz, der den "zuführbaren Anfangsposten" darstallt, angehängt, so daß dieser Posten zum neuen
"entf 3rnbe?s:i Anfangspoeten" wird. Der "Hw-Teil des Listen-
10180·/? SM
steuerwortee wird um 1 veLtergezählt, damit er die neue laufende Nummer oder Anzahl der Poeten in der Liste wiedergibt,
und der "F"-Teil wird um 1 verringert, um die neue Adresse des "zuführbaren Anfangepoetens" der Liate anzugeben. Wenn
die Liste bei der Operation voll wird, wird das Bit 5 des Listeneteueworta auf "1" gestellt. Das modifizierte Listenet euerwort wird dann wieder in seinen richtigen Speicherplatz im Hauptspeicher 2 abgespeichert, und die Programmsteuerung wird in den zweiten auf denjenigen Speicherplatz
folgenden Speicherplatz übertragen, in dem der Befehl ABL gespeichert ist. Wenn das Bit 5 des Listensteuerwortes eine
"1" (Liste voll) ist, nachdem das Listensteuerwort ins Rechenwerk 1 übertragen worden ist, wird der Befehl ABL nicht
ausgeführt. Die Prograamsteuerung wird in diesem Falle in
den ersten auf denjenigen Speicherplatz folgenden Speicherplatz übertragen, in des der Befehl ABL gespeichert ist.
Weder das modifizierte Listensteuerwort noch der Inhalt
des A-Regiaters 21 werden abgespeichert, wenn die Liste
bereits voll ist.
Einem Befehl "anhänge Posten an Ende der Liste" let die
Bezeichnung AEL und der Operationscode 47g zugeordnet. Auf
den Befehl AEL wird das'adressierte Listensteuerwort aus
dem Hauptspeicher 2 ins Rechenwerk 1 übertragen« Wenn das
Bit 5 eines adressierten Listensteuerworta eine JHuIl"
(Liste nicht voll) darstellt, wird das Wort oder der Posten
im A-Regieter 21 in desjenigen Speicherplatz angehängt, der
" 59 -
109808/1583
den "zuführbaren Endposten" darstellt, eo daß dieser der
neue "entfernbare Endpoeten" wird, und der "N"-Teil dee
Listensteuerworte wird um 1 erhöht. Die Adressen der Anfangsposten bleiben die gleichen« Der Teil "F" des Listensteuerwortea wird mithin nicht modifiziert. Wenn die Liste voll
ist, wird das Bit 5 des Listensteuerwortes auf 1 gesetzt.
Das modifizierte j&isteneteuerwort wird dann in seinen richtigen Speicherplatz im Hauptspeicher 2 gesetzt, und die
Programmsteuerung wird in den zweiten auf denjenigen Speicherplatz folgenden Speicherplatz tibertragen, in dem der Befehl
AEL geapeichert ist« Wenn jedoch das Bit 5 des Listensteuerwortea eine 1 ist (Liste voll), nachdem das Listensteuerwort ins Rechenwerk übertragen wurde, wird der Befehl AEL ,
nicht ausgeführt. Die Programmsteuerung wird in diesem Falle in den ersten auf denjenigen Speicherplatz folgenden Speicherplatz übertragen, in dem der Befehl AEL gespeichert
ist· Weder das modifizierte Listensteuerwort noch der Inhalt des A-Registers 21 werden gespeichert, wenn die Liste
bereite voll ist.
Eine* Befehl "entferne Anfangeposten aus der Liste" ist die
Bezeichnung RBL und der Operationscode 56ß zugeordnet. Auf
diesen Befehl RBL hin wird das adressierte Lietensteuerwort aue den Hauptspeicher 2 ins Rechenwerk 1 übertragen.
Wenn das Bit 4 eines andreesierten Listensteuerwortes eine
lull ist (List® nicht leer), wird der "entfernbare Anfangeposten" der Liste aus dem Hauptspeicher 2 geholt und ins
- 40 - ßAD
108000/1583
Α-Register 21 gesetzt. Der Teil "N" des Lietensteuerwortes
wird um 1 verringert, so daß er die neue Anzahl der Posten in der Liste wiedergibt, während der Teil "F1 um 1 erhöht
wird, so daß er die neue Adresse des "zuführbaren Anfangspostens" der Liste wiedergibt. Daβ Bit 4 des Listeneteuerwortes
wird auf "1" eingestellt, wenn die Liste durch die Ausführung dieses Befehls geleert ist. Das modifizierte
Listensteuerwort wird im Hauptspeicher 2 gespeichert, und die Programmsteuerung wird in den zweiten Speicherplatz
gespeichert, der auf denjenigen folgt« in dem der Befehl HBL gespeichert ist. Wenn das Bit 4 des Listensteuerwortes
jedoch eine "1" ist (Liste leer) und das Listensteuerwort ins Rechenwerk 1 übertragen ist, wird der Befehl RBL nicht
ausgeführt. Die Programmsteuerung wird dann in den ersten auf denjenigen Speicherplatz folgenden Speicherplatz übertragen,
in dem der Befehl RBL gespeichert ist. Das modifizierte Listensteuerwort wird nicht gespeichert, und der
Inhalt des A-Registers 21 wird nicht geändert, wenn die
Liste bereits leer ist.
Einem Befehl "entferne Endposten aus Liste" ist die Bezeichnung REL und der Operationsoode 46g zugeordnet. Auf diesen
Befehl REL hin wird das adressierte Listensteuerwort aus dem Hauptspeicher 2 ins Rechenwerk 1 übertragen. Wenn das
Bit 4 eines adressierten Listensteuerwcrtes eine Null
(Liste nicht leer) ists wird der "entfernbare Endposten11
10880S/1SS3
15494U Hl
der liste aus dem H tsptspeicher 2 geholt und ins A-Register 21 gesetzt, und «i@r Teil "N" des Listensteuerwortes
wird um 1 verringert, so daß er die neue Anzahl der Posten
in der Liste wiedergibt. Der Teil "f wird nicht geändert,
weil «ich die Adresse des "zufuhrbaren Anfangepoetens" nicht
ändert. Das Bit 4 wird auf 1 eingestellt, wenn die Liste bei der Ausführung dieses Befehls geleert wurde. Bas modifizierte Lletensteuerwort wird im Hauptspeicher 2 gespeichert
und die Programmsteuerung in dem zweiten auf denjenigen Speicherplatz folgenden Speicherplatz gespeichert, in den
der Befehl REL gespeichert ist. Wenn jedoch das Bit 4 eine (Liste leer) darstellt, und das Mstensteuerwort ins Rechenwerk 1 übertragen worden ist, wird der Befehl REL nicht
ausgeführt. Di© Programmsteuerung wird in den ersten auf denjenigen Speicherplatz folgenden Speicherplatz übertragen, in dam der Befehl RSL gespeichert ist. Das modifizierte
Listensteuerwort wird nicht gespeichert, und der Inhalt des A-Registers 21 wird nicht geändert, wenn die Liste
bereits lter ist.
In Pigs, 12c ist eine Tabelle dargestellt, in der die Modifikationen der "?"- und "H"-Teile der Listensteuerwörter
bei erfolgreicher Ausführung der Befehle ABL, AEL, RBL und REL vmä die iron jedem aufgerufenen Speicherplatz relativ
zur Adresse Z des Listensteuerworts zusammen dargestellt
sind.
- 42 -
109808/1683
Nach erfolgreicher Ausführung aller dieser Befehle wird die Programmsteuerung in den zweiten auf denjenigen
Speicherplatz folgenden Speicherplatz übertragen, in dem
der ausgeführte Befehl gespeichert ist. Wenn der Listenzuatand, voll oder leer, derart ist, daß keine weiteren
Wörter angehängt oder entfernt werden können, dann wird die Programmsteuerung in den ersten auf denjenigen Speicherplatz
folgenden Speicherplatz übertragen, in dem der ausgeführte Befehl gespeichert ist. Ein mit diesen Eigenschaften
vertrauter Programmierer kann deshalb geeignete
Befehle sowohl in den ersten als auch in den zweiten in
der Reihenfolge folgenden Speicherplatz einfügen, um ein 'laufen· des Programm entsprechend der erfolgreichen oder erfolglosen
Anhängung oder Entfernung, die sich bei der Ausführung eines Listenbefehls ergab, zu steuern.
Um besser zu verstehen, welcher Speicherplatz bei allen Listenbefehlen aufgerufen wird, um die Begriffe "zuführbarer
Anfangspostan", "entfernbarer Anfangspos ten11, "zufuhr barer
Endposten11, "entfernbarer Endposten11 zu klären und die zirkuläre Natur einer zirkulären Liste zu erläutern, seien
Operationsbeispiele anhand einer kurzen Liste in Verbindung mit den Figuren 2c und 3 bis 1 erläutert· Ee sei jedoch
darauf hingewiesen, daß diese Befehle bei einem laufenden Programs in einer pseudowillkürlichen Reihenfolge la Verhältnis
zu den vielen anderen Befehlen des Programms ausgeführt
werden können. Bar Einfachheit halber werden diese
- 43 -
10980I/1S83 bad
Listenbefehle jedoch einer nach dem anderen betrachtet. Die Reihenfolge, in der sie ausgeführt werden, ist jedoch völlig
willkürlich, da jeder Befehl völlig unabhängig ist.
Vor dem ereten Schritt mögen die Listen beispielsweise das
in Pig. 13 dargestellte Format haben.. Wie durch das Bit 4 des im Speicherplatz Z gespeicherten Listensteuerwortes angezeigt
wird, ist die Liste leer, die maximale Anzahl von Posten, die in der Liste enthalten sein können, wie es
durch den "L"-Teil vorgeschrieben wird, ist 4 (2 ), und
die Speicheradresse für einen "zuführbaren Anfangsposten" ist Z t 1, während die Zahl des "F"-Teils 0 ist. Da die
maximale Länge der Liste in diesem Beispiel 4 ist, werden nur die Bits 15 und 16 des "F"-Teils und nur die Bits 6 und
7 des N-Teils zur Errechnung der Postenadressen verwendet.
Als Beispiel sei angenommen, daß ein Befehl ABL mit der Operandenadresse Z ausgeführt wird, um einen Posten "W"
auB dem A-Register 21 zum "zuführbaren Anfangspoeten" der
liste zu übertragen. Der tatsächlich aufgerufene Speicherplatz ist Z -r 1 - (F), der in diesem Falle einfach Z-r1 ist,
da der Teil "F" die Zahl 0 enthält. Nach der Ausführung des
Befehls ABL ergibt sich das in Fig.14 dargestellte Listen- format, bei dem der Poeten W als im Speicherplatz Z+1 ge
speichert dargestellt ist. Der Teil N ist um die Zahl 1 erhöht worden, wodurch angezeigt wird, daß inefcesamt gerade
1098087 168 3 *° «**««.
ein Tosten in der Liste gespeichert ist. Der Teil F ist um
die Zahl 1 verringert worden, und man sieht, daß der zuvor lauter Nullen enthaltende Teil F jetit lauter Einsen enthält,
aus Gründen, die noch näher erläutert werden. Die Bits 15 und 16 können als entweder auf -1 oder 4-3 eingestellt angesehen
werden. Sie werden jedoch als +3 verwendet, wie der nächste Schritt zeigen wird.
Nun sei ein zweiter Schritt betrachtet , bei dem ein zweiter
ABL-Befehl mit der Operandenadresse Z ausgeführt wird, um einen zweiten Posten X an den "zuführbaren Anfangsposten11
der Liste anzuhängen. Der tatsächliche Speicherplatz ist Z+1+(F) oder Z+4. Nach der Ausführung des ABL-Befehls ergibt
sich das in Fig. 15 dargestellte Listenformat. Man sieht, daß der Teil F als Zahl +3 verwendet wurde, um die Kernzelle
(Z+1+F=Z+4) zu bestimmen, in der der Posten X gespeichert war. Bei dem modifizierten Listensteuerwort wurde
der F-Seil um 1 verringert und der N-Teil um 1 erhöht, um
den augenblicklichen Zustand der Liste darzustellen.
Jetzt sei ein dritter Schritt betrachtet, bei dem ein AEL-Befehl
mit der Operandenadresse Z ausgeführt wird, um einen dritten Posten Y in den "zuführbaren Endpesten11 der Liste
zu übertragen. Die Errechnung des aufgerufenen Speicherplatzes ergibt Z+1+(F+N+1) » Z+1*(2+2+1) = Z+6 oder Z+(110)2.
Der L-Teil begrenzt jedoch dte wirkliche Berechnung auf den
- 45 -
109808/1583 bad
■. H
reservierten Speioherplatzblook, und wenn die zur Adresse Z
zu addierende Zahl in diesem Beispiel 4- überschreitet, bleibt
der Überschuß von 4 unltarUoksichtig, so da β der in diesem
Schritt aufgerufene Speicherplatz Z+2 und nicht Z+6 ist,daj
der Speicherplatz Z+6 außerhalb des-Blocks liegt. Nach der
Ausführung des ΑΕΙ-Befehls ergibt sich das in fig. 16 dargestellte Listenformat, an dem «an erkennt, daß der Posten Y
im Speicherplatz Z+2 gespeichert 1st» Der P-Teil des Listensteuerwortes ist bei der Ausführung dee Befehls nicht
mod/ifiziert worden, da sich der "zufuhrbare Anfangsposten"
nicht geändert hat. Der M-Teil ist wiederum um 1 erhöht
worden, um die augenblickliche Anzahl von Posten in der Liste darzustellen.
Nun sei ein vierter Schritt betrachtet, bei dem ein weiterer AEIi-Befehl mit der Operandenadresse Z ausgeführt wird,um
einen vierten Poeten Z in den "zuführbaren Endpasten" der
Liste zu übertragen. Die Berechnung des Speicherplatzes ergibt diesmal Z+1+(?+N+1), was jetzt gleich Z+1+(2+3+1)
»Z+7 oder Z+(1011)2 let. Wie bei dem vorangegangenen Schritt
erläutert wurde, bewirkt der !-Teil, daß der Speicherplatz
Z+3 aufgerufen wird. Nach der Aasführung des AEL-Befehls
ergibt sich das in Pig. 27 dargestellte Lietenformat.
Da bei dieser Operation die Liste gefüllt wird, ist das Bit 5 des modifizierten und zurückgeepeloherten Liatensteuerwortee jetzt eine 1. Außerdem ergibt die Berechnung
Z+1+(P) « z+3, daß ein ABL-Befehl den gleichen Speicherplatz
Z+3 aufgerufen hätte und ebenfalls bewirkt hätte, daß das
100101/fit 3 SADORiGiNAL
Bit 5 dee Listensteuerwortes gesetzt wird. Da die Liste jetzt
voll ist, würde jeder weitere Versuch, einen Posten entweder an den Anfang oder das Ende der Liste anzuhängen, bewirken,
daß die Programmsteuerung ein Unterprogramm übertragen wM,
das vom Programmierer für diesen Pail vorgesehen ist» Dieses
Unterprogramm würde, das Mißlingen des Versuches feststellen und geeignete Maßnahmen auslösen. Der N-Teil wird um 1 erhöht,
jedoch werden die höheren Bits 7 und 6 "NuIl11J wobei ein
Übertrag in das Bit 8 angegeben wird, der aber wegen der vom
L-Teil ausgeübten Steuerung unberücksichtigt bleibt.
Als nächstes werde beispielsweise ein BBL-Befehl ausgeführt,
bei dem der "entfernbare Anfangspoeten11 aus der Liste entfernt
und ins A-Register 21 Übertragen werden eoll. Nach der Ausführung
des RBL-Befehle ergibt sich das in Fig. 18 dargestellte Listenformat.
Man sieht, daß der entfernte Posten aus dem Speicherplatz 2+4 geholt wird, den nentfernbaren Anfatgsposten", der
vom Listensteuerwort vor dessen nach der Beziehung Z+1 -t (F+1)
errechneten Modifikation vorgeschrieben wird. Nach der Modifikation ist der F-Teil dee Listensteuerwortee um 1 erhöht
und der N-T^iI, um 1 verringert, so daß er den augenblicklichen
Zustand der Liste darstellt. Außerdem ist das Bit 5 gelöscht, um anzuzeigen, daß die Liste nicht mehr voll ist.
Jetzt sei angenommen, daß ein weiterer RBL-Befehl ausgeführt
wurde, um den "entfernbsren AnfangspostenH erneut
aus der Liste zu entfernen. Die Berechnung des aufgerufenen
- 47 -
109808/1S8 3 BAD
HS
Speicherplatzes ergibt Z+1+(F+1) = Z+(101)2. Wie jedoch
bereits erwähnt wurde, begrenzt der L-Teil die Wirkung der Listensteuerbefehle auf den reservierten Speicherplatzblock,
so daß der Überschuß von 4 unberücksichtigt bleibt uid der tatsächlich aufgerufene Speicherplatz Z+1 und nicht Z+5
ist. Nach der Ausführung des RBL-Befehls ergibt sich das
in Pig. 19 dargestellte Listenformat. Der F-Teil ist
wiederum um 1 erhöht worden und der N-Teil um 1 erniedrigt.
Die Erhöhung des P-Tells hatte einen Übertrag in die Bitstelle
17 des Listensteuerwortes und die Löschung der Bits 16 und zur Folge. Daraus kann man wiederum die zirkuläre Eigenschaft
der Liste ersehen, da das Bit 17 so lange nicht bei der Berechnung der Adresse eines "entfernbaren oder zuführbarHn
Anfangspostens" berücksichtigt wird, wie die Liste maximal 4 Poeten lang bleibt.
Als nächstes sei die Ausführung eines REL-Befehls betrachtet,
bei dem der "entfernbare Endposten" aus der Liste entfernt werden soll. Der aufgerufene Speicherplatz ist Z+1+(F+N) =
Z+3. Hach der Ausführung des REL-Befehls ergibt sich das in
Pig. 20 dargestellte Listenformat, aus dem man ersieht, daß der Posten Z aus dem Speicherplatz Z+3 entfernt, der P-Teil
nicht geändert und der F-Teil um 1 verringert wurde, um
den augenblicklichen Zustand der Liste wiederzugeben.
- 48 -
109808/1583
HS
Schließlich sei die Ausführung eines weiteren REL-Befehls betrachtet, bei dem erneut ein "entfernbarer Endposten11
aus der Liste entfernt werden soll. Der beteiligte Speicherplatz ist Z+1+(F+N) ~ Z+2. Fach der Ausführung des REL-Befehls
ergabt sich das in Pig. 21 dargestellte Listenformat·
Der Posten Y wurde aus der Speicherkernzelle Z+2, der F-Teil
nicht modifiziert, der ΪΓ-Teil um Eins auf Null verringert und
das Bit 4 des Listensteuerwortes auf Eins eingestellt, um anzuzeigen, daß die Liste erneut leer ist.
Die Liste braucht jedoch nicht gefüllt zu sein, bevor der erste Entfernungsbefehl ausgeführt werden kann, noch
braucht die Liste leer zu sein, bevor der erste Anhängungsbefehl abgeführt werden kann. Die gerade beschriebene Reihenfolge
der Befehle wurde Miglioh als Beispiel gewählt.
Die Verwirklichung dieser Befehle erfiigt durch die 11P"- 1
11N"- und »T'-Volladdierer. Jeder Volladdierer 1st mit
einem Übertragflipflop versehen, das je nach Wunsch voreingestellt sein kann. Die zu den Volladdierern gehörige
Steuerlogik soll die geeigneten Bitmanipula tieren für die
Ausführung der Listenbefehle durchführen, was noch ausführlicher beschrieben wird und in den Jig. 27 und 28
dargestellt ist.
" 49 100808/1113
Der Reihenfolgesteuerzustand 1 eines Lietenbefehls läuft
in der oben im einzelnen beschriebenen normalen Weise ab. Deshalb enthält das I-Register 23 am Ende des Reihenfolgeeteuerzustands
1 bei irgendeinem dieser Befehle das Befehlswort, während das H-Register 26 den Operandenadressteil
desjenigen Befehls enthält, der die Speicherplatzadresse Z des Listensteuerworts für die zirkuläre Liste, die geändert
werden soll, vorschreibt, wohingegen der Inhalt des P-Registere 24 um 1 erhöht wird. Heben den zuvor beschriebenen normalen
Operationen des Reihenfolgesteuerzustands 1 werden die "P"-, "I"- und »NB-Übertrag-Plipflops (24A, 28A und 29A)
von der RUckflanke des Signals SC1A, das den ODER-Gliedern
GHO, G172 und G204 (Pig. 27 und 28j zugeführt wird» gelöscht.
Nimmt man an, daß keine Indexmodifikation vorgeschrieben ist, dann wird nach Beendigung des Reihenfolgesteuerzustands 1
für einen Listenbefehl in den Reihenfolgesteuerzustand 3 übergegangen, und während dieses Rgihenfolgesteuerzustands
werden dfe kritischen Prüfungen und Bitmanipulationen bei der Ausführung der Listenbefehle durchgeführt.
Während des Reihenfolgesteuerzustande 3 werden bestimmte
Manipulationen ausgeführt, die bei allen Liatenbefehlen vorkommen« Aus den !Taktdiagrammen der 71g. 22, 25 t 24
und 25 ersieht man, daß der Verzögerungetaktzähler 52
duroh Zuführung des Signale TP17t das In Takt XTIS des
- 50 - ßA0
1GÖ8CI/U83
15A94U 51
Reihenfolgesteuerzustands 3 eine Eins darstellt, zum Löscheingang
von PITAPP und den Setzeingängen von PITBPP-PITEPP,
die in Pig. 6 dargestellt sind, auf 17g eingestellt wird.
Dies hat eine Verlängerung des Reihenfolgesteuerzustands zur Folge, da die Erzeugung von TU1S um neun Taktimpulse
TCKA verzögert wird. Während der gesamten Dauer des Reihenfolgesteuerzustands 3 für die Ausführung irgendeines Listenbefehls
ist das Signal MAMI "Eins", so daß das Speicheradressenregister 32 mit der Operandenadresse eines Listensteuerwortes
aus dem I-Register 23 versehen wird. Wenn das Listensteuerwort im Speicherdatenregister 33 zur Verfügung
steht, wird es vom BDOB-Signal, das im Takt TCT2 "Eins"
wird, ins B-Register 25 durchgescheitet. Das Listens-teuerwort
erscheint ebenfalls sofort im Paralleladdierwerk 20, da die Signale UBUA und UBLA während des ganzen Reihenfolgesteuerzustands
3 auf "Eins" gehalten werden, um den Inhalt
des B-Rel/§sters 25 ine Paralleladdierwerk 20 durchzuschalten.
Im Takt TCT3 wird das Einer-Komplement des Meile des Listensteuerwoife vom JNUJ-Signal aus dem Paralleladdierwerk
20 in den J-Zähler 30 durchgeschaltet, wie es in Pig. 26 gezeigt ist. Das die Bitetelle 4 speichernde
Plipflop des J-Zählers 30 wird immer dann vom Signal
JNOJ gesetzt, wenn dieses Signal während des Reihenfolgesteuerzustands 3 für die Listenbefehle "Ebs" ist.
Nach diesen Operationen und am Anfang des Taktee TT4-E dee
Reihenfolgesteuerzuetands 3 aller Listenbefehle let das
Listensteuerwort im B-Register 25 enthalten, der Yerzb'gerungs-
109808/1583 BAo original
taktzähler 52 auf 17g voreingestellt, der J-Zähler 30 auf
das Einer-Komplement derjenigen Binärzahlen eingestellt, die im L-Teil, die Bits 3-0, des Listensteuerworts enthalten
sind, das I-Register 23 enthält den ausgeführten Listenbefehl,
das H-Regbter 26 die Speicherplatzadresse des Listensteuerworts und die Ausgangssignale des Paralleladdierwerks 20
stellen das Listensteuerwort dar, da die Signale TJBUA und
UBLA auf Eins gehalten werden.
Die Modifikation des Listensteuerwortes findet stets während
des Reihenfolgesteuerzustands 3 eines Listenbefehls statt. Wie bereits erwähnt wurde, bestehen die Modifikationen, die
während der Ausführung eines ABL-Befehls auftreten, in der
Subtraktion der Zahl Eins vom F-Teil und der Addition
der Zahl Eine zum N-Teil, während das Bit 5 gesetzt sein
muß, wenn die Liste bei der Ausführung des ^eiligen ABL-Befehls
voll wird. Aus Gründen, die später noch näher erläutert werden, wird der unmodifizierte F-TdI ebenfalls
in die Bitstellen 8-0 des !-Registers 23 geschoben. Außerdem wird am Ende des Reihenfolgesteuerzustands 3 geprüft, ob
die Liste gerade voll ist, so daß der ABL-Befehl nicht richtig ausgeführt werden kann.
Im folgenden sei der ABL-Befehl näher betrachtet. Es zeigt
sich, daß das DABL-Signal "Eins" ist, wenn sich der
- 52 -
SAD
109808/1583
15A9444
Operationscode des ABL-Befehls im I-Register 23 befindet.
Big. 27 zeigt die Logik zur Verwirklichung der Subtraktion
der Zahl Eins vom F-Teil und der Übertragung dee unmodifizierten
F-Teils in die Bitstellen 8-0 des I-Registera 23. Der eine
Eingang eines NAND-Gliedes G1Q0 wird während des ganzen
Reihenfolgesteuerzustendes 3 vom Signal SC3A derart vorbereitet,
daß das Eins-Ausgangssignal des die Bitstelle 15
speichernden Flipflops im B-Register 25 praktisch invertiert und dem A-Einga ng des 1"-VoIIaddierers 27 zugeführt wird.
Der Eingang B des F-Volladdierers 27 wird von dem durch das NIOHT-LGlied 1186 inver&erten Signal DABL auf Null ν
gehalten. Die Ausgangssignale S und S des F-Volladdierers
27 werden jeweils einem der Eingänge der UND-Glieder G102
und G103 zugeführt. Dem anderen Eingang dieser UND-Glieder wird das Schiebesignal ISFT zugeführt.
Während des verlängerten Taktes TT4E des Reihenfolgesteuerzustands
3 für alle Listenbefehle ist das Signal ISFT in Koinzidenz mit TCKA eine "Eins",bis der Endzustand
des VerzögerungstaktzähleEB erreicht ist. Da der Verzögerungstaktzähler
auf 17g gestellt wurde, tritt eine Folge von neun ISFT-Impulsen auf, wie es in den Taktdiagrammen
der Fig. 22, 23, 24 und 25 gezeigt ist, bevor das Signal TP13 "Hns" wird. Den UND-Gliedern G103-G118 wird ebenfalls
ein Eins-Signal ISFT zugeführt, um die ReohtsverSchiebung
der Bitstellen 23-15 des B-Registers 25 zu ermöglichen.
- 53 - . BAD
10980Θ/1583
Die Ausgangesignale O und ö des P-Volladdierers 27 haben
keinen Einfluß auf das F-Übertrag-Flipflop 27A, da" die
UND-Glieder G201 und G203 nioht durchgeschaltet sind. Die Folge davon , daß der Eingang B des F-Volladdierers
27 zwangsläufig auf Null gehalten wird, während der gesarate T-Teil des Listensteuerwortes über den Eingang A geleitet
wird, ist eine Subtraktion von Eins vom F-Teil, der nach dsm
neu*en ISFT-Impuls seine ursprüngliche Lage im B-Register
25 wieder eingenommen hat.
Die Subraktion der Zahl Eins durch diese serielle "
methode" ist an sich bekannt und läßt sich an einem einfachen
binären Rectenbeispiel erläutern. Die ursprüngliche Zahl sei
z.B. die binär dargestellte Dezimalzahp. 9·
ursprüngliche Zahl =1001 =9 Zwangszahl = 1111
Ergebnis (1) 1000 = 8
Ergebnis (1) 1000 = 8
Da in diesem Beispiel nur vier Stellen vorgesehen sind, geht der Übertrag verloren, so daß man des gewünschte
Ergebnis erhält·
Die Anzahl der Bits, die aus dem F-Teil des Listensteuerwortes
im B-Register 25 in die Bitstellen 8-0 des !-Registers
23 geschoben werden sollen, wird von der Länge der Liste bestimmt, die duroh die Zahl dargestellt wird, auf die der
109808/1683 BAD 0RIG'NAL
si
J-Zähler gesetzt wurde, d.h. das Einer-Komplement des L-Teils.
Diese Operation erfolgt synchron mit der Verringerung des F-Teils um Eins. Wie aus Pig. 27 zu ersehen ist, ist der
Null-Ausgang des die Bitstelle 15 speichernden Flipflop im B-Regäster 25 direkt mit dem Eingang A des I-Volladdierere
28 verbunden. Die Ausgänge S und S des I-Volladdierers 28
sind jeweils mit einem Eingang der UND-Glieder G122 und G121 verbunden, und der andere Eingang dieser Glieder ist mit
dem Ausgang eines anderen UND-Gliedes G119 verbunden· Der eine Eingang des UND-Gliedes G119 wird vom Signal ISFP
betätigt und der andere wird vom Signal «Π5Τ7 durchgeschaltet,
da dieses Signal solange "Eine" bleibt, bis der J-Zähler
30 schrittweise auf 37Q hochgezählt ist. Wie in Fig. 26
gezeigt ist, wird der J-Zähler 30 vom Signal JINC hochgezählt, das synchron mit ISFT "Eins11 ist, bis die Zahl 37Q erreicht
ist. Es werden also 1-9 JINC-Impulse erzeugt, je nachdem,
auf welche Zahl der J-Zähler 30 voreingestellt war. Sem
einen Eingang des UND-Gliedes G120 wird ebenfalls das
Signal ISFT zugeführt, jedoch wird dem anderen Eingang nur dann ein Eins-Signal zugeführt, wenn der J-Zähler
30 den Zählerstand 37« erreicht, d.h. wenn das Signal J037 "Eins" wird. Die Auegangesignale der UND-Glieder G120
und G121 werden den Eingängen eines ODER-Gliedes G123 zugeführt.
Das Ausgangssignal des ODER-Gliedes G123 wird den Löscheingang
des die Bitsteile θ speichernden «ELipflop im I-Register
23 zugeführt. Das Auegangesignal des UND-Gliedes
122 wird dem Setzeingang desselben Flipflop zugeführt. Dem einen Eingang der UND-Glieder G124-G139 wird das Signal ISFf
- 55 -
109808/1583 bad original
15494U
Si
zugeführt, um die RechtsverSchiebung dieses Teils des I-Registers
23 zu ermöglichen} solange wie der I-Zähler 30 nicht die Zahl 378 erreicht hat, wird das UND-Glied G119
von jedem Schiebeimpuls ISPT durchgeschaltet, um einen Eingang aller UND-Glieder G121 und G122 durchzuschalten.
Das eine oder andere dieser UND-Glieder wird in Abhängigkeit vom Zustand der Ausgänge S und S der I-Volladdierers 28
mit jedem Schiebeimpuls ISFT durchgeschaltet. Wenn also das UND-Glied 122 durchgeschaltet ist, wird das die Bitstelle
8 speichernde Flipflop im I-Register 23 mit der Rückflanke des Schiebeimpulses ISFT geöffnet (d.h. durchgescholtet).
Wenn dagegen des UND-Glied G121 durchgeschaltet ist, ist
auch das ODER-Glied 123 durchgeschaltet, um das die Bitstelle
8 speichernde Flipflop im I-Register 23 mit der Rückflanke des Impulses ISFT zu löschen. Wenn der J-Zähler 30 die
Zahl 37g erreicht, ist die zur Darstellung der relativen Adresse des "zuführbaren Anfangspostens" in der Liste aus
dem die Bitstelle 15 speichernden Flipflop des B-Reglsters
25 geschoben, und eine weitere Verschiebung über die Glieder G121 und G122 findet nicht statt, da das UND-Glied
G119 jetzt gesperrt ist. Das UND-Glied G120 wird jetzt
jedoch mit jedem Impuls ISFT durchgeschaltet, da das Signal JO37 jetzt »Eins» ist. Das ODER-Glied G123 wird deshali
durchgeschaltet, um mit jedem Impuls ISFT eine Null in das die Bitsteile 8 speichernde Flfcflop im I-Regster 23 zu
schieben. Auf diese Weise wird nur derjenige Teil des F-Teils des Listensteuerwortes, der geeignet ist, den
- 56 -
109808/1583
"zuführbaren Anfangsposten" einer zirkulären Liste relativ
vorzuschreiben, ins I-Register 23 geschoben und entsprechend angeordnet.
Der IT-Teil des Li st en st euer wo riss wird sowohl vor als auch
nach der Modifikation des Listansteuerwortes in den Bitstellen 14-6 des B-Registers 25 gespeichert. Wie in Pig. 38 gezeigt
ist, ist das ET-tJbertrag-Flipflop 29A am Anfang des Reihenfolgesteuerzustandes
3 gelöscht, da das Signal SG1A seinem Löscheingang über das ODER-Glied G140 zuvor zugeführt wurde.
Das Signal DABL schaltet jedoch das ODER-Glied G 210 durch und im Takt TCT3 wird das UND-Glied G141 duBhgeschaltet.
Ein Eins-Ausgangssignal des UND-Gliedes G141 schallet das
ODER-Glied G142 durch, das seinerseits den Setzeingang des N-Übertrag-Flipflop 29A ansteuert. Deshalb wird das
N-Übertrag-Flipflop 29A gesetzt, bevor irgendeine Addition
im N-Yolladdierer 29 stattfindet,und der Eingang P des
N-Volladdierers 29 w±rd durchgeschaltet, bevor der erste
Impuls ISFT auftritt, da er vom NulMusgang des N-Übertra»g-Flipflop
29A angesteuert wird.
Der Eingang eines NAND-Gliedes G143 wird während des
gesamten Reihenfolgesteuerzustandes 3 vom Signal SC3A
durchgesohaltet, und sein anderer Eingang ist mit dem
Eins-Ausgang des die Bitstelle 6 speichernden Flipflop
_ 57 _ BAD
109808/1583
im B-Register 25 verbünden. Wenn der ISFT-Impulszug erzeugt
ist, findet die zirkuläre Verschiebung des N-Teils des
Listensteuerwortes über den N-Volladdierer 29 im wesentlichen
in der Weise statt, wie es für die Verringerung des P-Teils beschrieben wurde. Die Impulse ISPT werden dem
einen Eingang der UND-Glieder GH4 bis G161 zuführt,
um die serielle Rechtsverschiebung des N-Teils im B-Register 25 zu ermöglichen. Die Ausgänge C und C
des N-Volladdierers 29 sind jeweils mit dem einen Eingang der UND-Glieder G162 und G163 verbunden. Der andere
Eingang dieser Glieder wird vom Signal ISPT angesteuert. Das Ausgangssignal des UND-Gliedes G162 wird dem einen
Eingang des ODER-Gliedes G142 zugeführt, das, wie bereits erwähnt, den Setzeingang des N-Übertrag-Flipflop 29A
ansteuert. In ähnlicher Weise ist der Ausgang des UND-Gliedes G163 mit einem Eingang des ODER-Glieds GHO
verbünde^, das den Löscheingang des N-Übertrag-Flipflop
29A ansteuert. Mit dieser Anordnung wird eine normale
Übertragweiterleitung während der Serienaddition erzielt, da der Null-Ausgang des N-Übertrag-Flipflop 29A direkt mit
dem Eingang P des N-Volladdierers 29 verbunden ist, um diesen Eingang für die nächste Serienaddition durdeu schalten
oder zyfeperren, je nach dem, ob sich bei der gerade
beendeten Serienaddition ein Übertrag ergeben hat oder nicht.
- 58 -
109808/1583
15A944A S3
Bei der N-Tei1-Erhöhung (schrittweise um 1) muß geprüft
werden, ob die Liste voll ist, wie es vom modifizierten N-Teil
vorgeschrieben ist. Zu diesem Zwecke ist ein "Liste-Voll"-Flipflop
PIXLCP vorgesehen, das in Pig. 38 dargestellt ist. Im Takt TCT3 des Reihenfolgesteuerzustands 3 wird ein
UND-Glied G164 durchgeschaltet, um dieses Plipflop PIXLCP
voreinzustellen. Einem anderen UND-Glied G165, dessen
Ausgang mit dem Löscheingang des Plipflops PIXLCP verbunden
ist, werden die Signale JO37» ISPT und das S-Ausgangssignal
des H-Volladdierers ·29 zugeführt. Bei dieser Anordnung
wird das UND-Glied G165 synchron mit den Impulsen ISPT
durchgeschaltet, wenn das S-Ausgangssignal des N-VoIladdierers
29 "1" ist, und der J-Zähler 30 die Zahl 3-7 θ
noch nicht erreicht hat. Wenn dies bei allen 9 Schiebeimpulsen
ISPT der Pail ist, wird G165 durchgeschaltet, um das
Plipflop PIXLCP zu löschen. Das heißt, wenn eine "1" vom S-Ausgang
des N-Volladdierera in das die Bitstelle H speichernde Plipflop des B-Registers während der Modifikation
des N-Teils geschoben wird, wird G165 durchgeschaltet, um
das Plipflop PIXLCP zu löschen, wenn das Signal JO37 "1"
ist. Wenn die Liste voll wird, sind alle höheren Bits des N-Teils "0", da sie vor der Modifikation alle "1"
gewesen sdn müssen, und das nächste Bit, das dann eine
"1" sein würde, um den resultierenden Übertrag darzustellen,
wird nicht weitergleitet» da nur die höheren Bits infolge
de* Einflusses des L-Teils als im J037 -Signal wiedergegeben angesehen werden« Unter diesen Bedingungen bleibt
das Plipflop PIXLCP gesetzt. BAD ORIGINAL
109808/1583 -59-.
1549U4
Der 1-Ausgang den Flipflop^ PIXLCP .steuert einen Eingang
eines UND-Gliedes G104 an, dem auch die Signale SC3A und
TLPS zugeführt v/erden. Das Ausgangssignal des UND-Gliedes G184 wird einem· von zwei Eingängen eines weiteren UND-Gliedes
G166 zugeführt. Der andere Eingang des UND-Gliedes
G166 ist bereits vom Ausgangssignal eines ODER-Gliedes
G183 durchgeschaltet, das unter anderem vom Signal DABL
durchgeschaltet ist. Wenn die Liste voll geworden ist, werden das UND-Glied G184 und mithin das UlID-Glled G166
im Takt TLPS des Reihenfolgesteuerzustands 3 des ABL-Befehlß durchgeschaltet, um dem Setzeingang des die
Bitstelle 5 speichernden Flipflop? im B-Register 20 ein Signal zuzuführen. Das die Bitstelle 4 speichernde
Plipflop im B-Register wird stets, im Takt TLPS des Reihenfolgesteuerzustands
3 des ABL-Befehls durch das Durch-r schalten eines UND-Gliedes G167 gelöscht, dessen einer
Eingang ebenfalls vom Ausgangssignal des ODER-Gliedes G153
durchgeschaltet wird, da die Liste nach der erfolgreichen oder unerfolgreichen Beendigung eines ABL-Befehls niemals
leer sein kann.
Am Ende eines Reihenfolgesteuerzustands 3 während der Ausführung eines ABL-Befehls muß geprüft werden, ob die
Liste gerade voll ist, was durch das Bit 5 des Listeneteuerwortes
agezeigt wird, das vor seiner Modifikation eingestellt worden ist. A11S Pig. 28 ersieht man, daß, wenn
-60-
109808/1583
original
das Signal DABL "1" ist, um das ODER-Glied G143 durchzuschallen,
das UND-Glied G174 während des gesamten Reihenfolgesteuerzustands
3 nur dann durchgeschaltet wird, wenn das die Bitstelle 5 speichernde Flipflop im B-Register
25 gesetzt ist. Dieser Zustand wird durch Zuführung des 1-Ausgangssignals des die Bitstelle 5 speichernden
Flipflop im B-RegLster 25 zu einem der Eingänge eines
ODER-Gliedes G164 geprüft. Wenn das die Bitstelle 5 speichernde
Flipflop im B-Register gesetzt ist, ist das Ausgangssignal des UND-Gliedes GH74 "1", und diesef) Signal schaltet
ein ODER-Glied G175 durch. Das AusgangssLgnal des ODER-Gliedes
G175 wird dann einem Eingang eines UlTD-Gl led es
G176 zugeführt, dem als weiteres Eingangsignal· TLPS zugeführt
wird. Deshalb wird das UND-Glied G176 im Takt TLPS des Reihenfolgesteuerzustands 3 für den ABL-Befehl durchgeschaltet,
wenn das die Bitstelle 5 speichernde Flipflop im B-Register 25 gesetzt ist. M^t der Rückflanke des
Taktsignals TLPS wird das Reihenfolgesteuerzustand-1—
Flipflop FISCO1 vom Ausgangssignal des ODER-Gliedes G177
gesetzt, das unter anderem vom Au3gangssignal des UND-Gliedes
G176 durchgeschaltet wird. Der in Fig. 28 nicht gezeigte andere Eingang des ODER-Gliedes G177 stellt
die vielen Zustände oder Bedingungen car, die dafür sorgen, daß der Reihenfolgesteuerzustand 1 bei der
Ausführung verschiedener Befehle eines laufenden Programmes periodisch eingeleitet wird.
-61- BAD ORIGINAL
109308/1583
1549A/ι 4
Es sil daran erinnert, daß, wenn der Reihenfolgesteuerzustand
1 nach dem Reihenfolgesteuerzustand 3 eines ABL-Befehls eingeleitet
wird, da3 P-Register 24 die erste nach derjenigen •Speicherplatzadresse folgende Hpeicherplatzadre»se enthält,
in der der in der Ausführung befindliche ABL-Befehl geopeichort
ist, da sie während des Reihenfolgesteuürzufitands
um 1 erhöht wurde. Mithin wird die Programmsteuerung auf
denjenigen Befehl übertragen, der in diesem ersten öpeLoherplatz
gespeichert ist, und es v/erden weder Informationen noch
das modifizierte Listensteuerwort gespeichert.
Es sei darauf hingewiesen, -dai3, worin das UHIMxILed 'ΐΐ 'B
durchgeschaltet sein solLte, weil das die Bitstolie 4 speichernde Flipflop im B-Register 25 gesetzt Ist, das
ODER-Glied G125, das UND-Glied (Π26 und das ODER-Glied
G177 ebenfalls im Takt TLPS durchgeschaltet werden. Dieser Fall wird noch anhand der Überprüfung einer
Liste auf Leere des sog. "Liste-leer-Tests" erläutert.
Auf der anderen Holte v/ird, wenn weder die die Bitatellen
5 oder 4 speichernden Flipflops im B-Register 25 gesetzt 3ind, das iiOIi-Gliüd CM 79 gesetzt, da die
UND-Glieder G174 und G-17*3 beide gesperrt Bein müsuen.
Deshalb wird das UND-GlM G180 und nicht das UlH)-GLled
G176 im Takt TLPS durchgeschaltet, so daß das Ausgangssignal
des UND-Gliedes G180 das ODER-Glied GIBl durchschaltet.
Mit der Rückflanke des Taktsignals TLPC wird das Reihenfolgesteuerzustand-4-Flipflop gesetzt, um eine
vollständige Ausführung des ABL-Befehls zu ermcJglLohen.
BAD
1549U4
t$
Der andere Eingang des OUKH-GIieden GV31, der in Pig. 28
nicht beschriftet ist-, stellt die vielen Bedingungen dar,
untor denen der ReihenfölgeoteuorzuBtand 4 während der
Ausführung verschiedener Befehle eines laufenden Programms periodisch eingeleitet wird.
Mc während der ReihenfolgeB-teuerzuotiin.de 4 und !)■ ausgeführten"
Operationen eines vollständig ausgeführten ABL-Befehls lassen
sich am besten anhand des ABL-Taktdiagramms, anhand der Pig.
und der Fig. 1 und 2 erläutern, bei denen es sich jeweils um
ein Blockschaltbild des Informationoverlaufs zwischen den
verschiedenen Registern währ-nd der Reihentfügesteuerzustände
A und 5 handelt. Das Signal MAHH ist während des gesamten
Reihenfolgesteuerzustandes 4 "1", um den Inhalt des H-Registers
26 ins Speicheradressenregister 32 durchzuschalten. Das modifizierte IJBtensteuerwort, das kurzzeitig im B-Rei/gster
25 gespeichert war, wird vom Signal I)BI)R ins Speicherdatenregister
33 durchgeschaltet und im Speicherplatz Z gespeichert, das die Adresse war, die aus dem H-Register 26 ins Speicheradressenregister
32 übertragen wurde. Das P-Register 24
wird durch eine zweite Eins in der gleichen Weise wie im Reihenfolgesteuerzustand 1 um eins erhöht. Im Takt TGTS
des ReihenfolgeateuerzuetandB 4 werden der Inhalt der
Bitstelle 8-0 &8 I-Registers 23, der Inhalt des H-Registers
26 (Z) und die Zahl 1 gleichzeitig jeweils von den Signalen
UIAU, UHAU und UENC ins Paralleladdierwerk 20 durengesehaItet.
"63~ BAD ORIGINAL
109808/1583
15494U it
Die Summe, die dann durch die Ausgangesignale des Paralleladdierwerks
20 dargestellt wird,.ist dann die eigentliche Adresse des Speicherplatzes, in den das im A-Register 21
gespeicherte Infermationswort eingespeichert wird. Diese
Adresse wird aus dem Peralleladdierwerk 20 in die Bitstellen A, B, 13-0 des I-Registers 23.durchgeschaltet,
und zwar synchron mit dem Takt des Reihenfolgesteuerzustaiids
4 durch das Signal IAUI.
Während des Reihenfolgesteuerzustands 5 eines vollständig
ausgeführten ABL-Befehls wird das Informationswort im
A-Register 21 vom UAAU-Signal ins Paralleladdierwerk 20,
vom Signal BAUB aus dem Paralleladdierwerk 20 ins B-Register 25 und anschließend aus dem B-Register 25 vom Signal DBDR
ins Speicherdatenregister 33 durchgeschaltet. Während des ganzen Reihenfolgesteuerzustands 5 ist das Signal MAMI
"1", um den Inhalt der Bitstellen A, B, 13-0 des I-Registers 23 ins Speicheradressenregister 32 durchzuschalten,
Das Informationswort idt deshalb in demjenigen Speicherplatz
gespeichert, der von der Adresse im !-Register 23 vorgeschrieben
wurde, die während der Reihenfolgesteuerzustende 3 und 4 gebildet wurde. Mit der Rückflanke des Taktsignals
TLPS des Reihenfolgesteuerzustands 5 wird der Reihenfolgeeteuerzustand
1 wieder eingeleitet, um den nächsten Befehl aus dan Speicherplätzen zu holen, die vom Inhalt des
P-Registers 24 vorgeschrieben werden, das die zweite Adresse nach derjenigen Adresse speichert, unter der der
ABL-Befehl gespeichert ist.
1549U4 65
Nun sei der Befehl AEL betrachtet. Das Signal DiEL ist
"1", wenn der AEL-Operationscode aus dan Bitstellen 23-18
des !-Registers 23 dekodiert wird. Wie aus fig. 27 zu
ersehen ist, wird der P-Teil des Liatenateuerwortes
während des Reihenfolgesteuerzustanda 3 bei der Ausführung
eines AEL-Befehls durch die Impulse ISPT in der gleichen V/dse wie im Reihenfolgest euer zustand 3 "bei der Ausführung
eines ABL-Befehls über das NAND-Glied Q100 und den F-VoIladdierer
27 im Kreis geleitet. Im Falle des AEL-Befehls wird der Eingang B des F-Volladdierers nicht auf Null
gehalten, da das Signal DABL nicht "1" ist. Infolgedessen
wird der F-Teil während des Reihenfolgesteuerzustands
bei der Ausführung eines AEL-Befehls nicht modifiziert. Die am Ende des Reihenfolgesteuerzustands 3 des AEL-Befehls
in den Bitstellen 8-0 des I-Registers 23 gespeicherte Binärzahl muß gleich der Summe der Teile F und N vor
ihrer Modifikation zuzüglich einer weiteren 1 sein, um das Abspeichern im Speicherplatz des "zuführbaren
Endpostens" zu erreichen. Wie aus Fig. 27 zu ersehen ist, werden das ODER-Glied G168 und die UND-Glieder
G2O6 und G170 von der Kombination der Signale DAEL, SC3A,
TÖT3 durchgeschaltet, um das I-Übertrag-Flipflop 38A
voreLnauijtüllen. Die Impulse ISFT werden dann zur VersohLs)
1HUIg :lea F-I'eils des Listensteuerworts in den
Bt tat-/lien 23-15 des B-Registers 25 und des N-Teils
dea LLatenateuefwortes in den Bistellen 14-16 des
B-Regtafcere 25 über den I-Yolladdierer 28 verwendet.
" 65~ ,BAD ORIGINAL
' 109808/1583
15494U
Die Impulse ISFT werden auch zum Durchschalten der Ausgangseignale
3 und S in die Bitatellen Θ-0 des I-Regieters
23 verwendet, wie es für den ABL-Befehl beschrieben wurde.
Die UND-Glieder G144 bis G161 ermöglichen eine serielle
Rechtsverschiebung des im B-Register 25 gespeicherten N-Teila, wenn die Schfebeimpulse ISPT auftreten. Das UND-Glied
G135 wird immer dann durehgeachaltet, wenn der AEL-Befehl
dekodiert wird, um die Information im i'lipflop der sechsten Bitstelle des B-Registers 25 über das NAND-GlLed
G173 zum Eingang B des I-Volladdierers 28 au schieben.
Die UND-Glieder GI69 und G171 und die ODER-Glieder G170 und
G172 arbeiten zusammen, um die Ausgangssignale C und C des
I-Volladdieres 28 synchron mit den Schiebeimpulsen ISPT
zum !-Übertrag-Flipflop 28A durchzuschalten und eine
normale Übertragweiterleitung zu erzielen.
Wenn die Liste bei der Ausführung eines AEL-Befehls voll
wird, wird das die Bitsteile 5 speichernde Flipflop im
B-Register 25 im wesentlichen durch die gleiche Folge logischer Operationen wie bei dem ABL-Befehl gesetzt,
nur daß jetzt da3 ODER-Glied G143 vom Signal DAEL und
niuhb 7or;i Signal DABL durchgeschaltet wird. In ähnlicher
7«Lijo lab dia ReLhenfolgeütirierauntand-Entscheidung, die
mn Ende de.! ReLhenfoIgenteuarzm-ibande ;5 erfolgt, bei ilen
But'fjhlen Al)L und AüL die gleiche, abgesehen rom üurc:h-,
das lern ODER-Glied G 143 au^efuhrt v/ird.
-ob-
10 9308/1583
Die während der Reihenföl gesteuerzustände 4 und 5 ausgeführten-Operationen
sind bei den Befehlen ABL und AEL gleich.
In folgenden wird nun der RBL-Befehl beschrieben, I)8S Signal
DRBL ist "1", wenn der RBL-Operationsoode aus den Bitstellen
23 - 1Θ des I-Registero 23 dekodiert ist. Wie bereits erwähnt,
sind die Modfikationen, die mit dem Listensteuerwort bei der
Ausführung eines RBL-Befehls vorgenommen werden müssen, folgende:
a) eine Addition von. 1 aura F-Teil
b) eine Subtraktion von 1 vom lf-Toil und
c) da3 oetsen des Bite 4 des Listens!ouerwortes, wenn
nie Liste bei der Ausführung des augenblicklichen RBL-Befehls
voll wird.
Ferner wird die Zahl Ptl in die Bitat eilen bO des I-Registers
23 geschoban, um die Bestimmung des genauen
Speicherplatzes vorzubereiten, aus dem ein Informationswort
geholt werden soll.
Die Logik zur Verwirklichung der Addition von 1 zum F-Teil und der Übertragung des ummodifizierten F-Teila 31 In«
1 in die Bitstellen 80 des I-Registers 23 ist in Fig.
gezeigt. Wie bei den Befehlen ABL und AEL wird während des gesamten Reihenf ο Igesteuerzusiaids 3 ein Eingang
-67-
109808/1583
8AO OHfGlNAt
des NAND-Gliedes G100 vom Signal SC3A vorbereitet bzw. durchgeschaltet, so deß das Ausgangθsignal vom 1-Ausgang
des die Bitstelle 15 speichernden Plipflop im B-Register 25 praktisch invertiert und dem Eingang A des P-VoIladdierers
27 !zugeführt wird. Außerdem bereitet das Signal SC3A den einen Eingang eines anderen NAND-Gliedes G200
vor. Der andere Eingang von G200 wird vom 1-Ausgang des ertre~g~tter Aug
des F-Übertrag-Flipflop 27A angesteuert, und der Ausgang
von G200 ist mit dem Eingang P des F-Volladdierers 27
verbunden. Man sieht, daß dae F-Übertragflipflop 27A
am Afang des Reihenfolgezustands 3 bei der Ausführung eines RBL-Befehls gelöscht ist, da das Signal SCIA zuvor
dem Löscheingang über ein ODER-Glied G204 zugeführt wurde.
Das Signal BRBL schaltet jedoch das ODER-Glied G210 durch, und dessen Ausgangssignal wird dem Eingang eines UND-Gliedes
G205 zugeführt, das im Takt TC3 des Reihenfolgesteuerzustands
3 vollständig durchgeschaltet wird. Das Ausgangssignal von G205 stellt das eine Eingangssignal
des anderen ODER-Gliedes G202 dar, das seinerseits den Setzeingang des F-Übertrag-Flipflop 27A ansteuert. Deshalb wird
das P-Übertrag-Plipflop 27A gesetzt, bevor eine Addition
im P-Vo11addierer 27 stattfindet, und der Eingang P
des P-Volladdierers 27 wird vorbereitet, bevor der erste Impuls ISPT erzeugt wird. Hithin wird, wenn die Impulsfolge von
9 Impulsen ISPT erzeugt ist, der P-Teil des Listensteuerwortes
-68-
BAD ORIGINAL
109808/1583
. über den F-Volladdierer -27 und zurück in seine ursprüngliche
Lage im B-Register 25 geleitet, nachdem er infolge der Voreinstellung
des F-Übertrag-Flipflop 27A am 1 erhöht wurde.
Die Anzahl der Bits, die aus dem F-Teil im B-Raster 25
in die Bitstellen 8-0 des I-Reglaters 23 geschoben werden
sollen, wird in der gleichen Weise wie beim ABL-Befehl bestimmt. Die tatsächliche Zahl, die ins I-Register 23 geschoben
wird, muß in dem Falle eines RBL-Befehls jedoch gleich dem F-Teil plis 1 sein. Diese Addition der Zahl 1
erfolgt durch Voreinstellung des I-Übertragflipflop 28A.
Wie in Fig. 7 gezeigt istr schaltet dee Signal DRBL ein
ODER-Glied G168 durch, und das Ausgangssignal von G-168 wird
einem Eingang eines UND-Gliedes G206 zugeführt, dessen andere Ein gänge die Signale SC3A und T0T3 erhalten· Wenn das DHD-Glied
duiriageschaltet ist, schaltet sein Auegangssignal ein ODER-Glied
170 durch, das den Setzeingang des I-Übertragflipflop 28A betätigt. Der Kuli-Ausgang des I-Flipflop 28A ist direkt
mit dem P-Eingang des I-Volladdierers 20 verbunden. Der
Eingang P des I-Volladdierers 28 wird deshalb vor dem Auftreten der Impulsfolge ISFT durchgeschaltet. Die Impulsfolge
ISFT schiebt den F-Teil über den I-Volladdierer 28 und
in die Bitstellen 80 des I-Registers 23, und zwar in der
gleichen Weise wie beim ABL-Befehl. Das Ergebnis in den Bitsteilen 80 des I-Registers 23 ist die Summe F + 1, die
sich durch Voreinstellung des I-Übertrag-Flipflop
28A ergibt.
-69-
BAD
109808/1583
fo
Der N-IeIl muß bei der Ausführung eines RBL-Befehls um 1 verringert
werden. Dies erfolgt durch die in Pig. 28 gezeigte Logik. Der eine Eingang des NAND-Sliedes G143 wird vom Signal SC3a
durchgeschalxeti und der andere Eingang ist direkt mit dem 1-Ausgang
des die Bitstelle 6 des B-Registers 25 speichernden Flipflop verbundent so daß dessen Ausgangssignal dadurch praktisch invertie*
und dem Eingang A des N-Volladdierers 29 zugeführt wird. Der Eingang
B des N-Volladdierers 29 wird vom Signal DRBL festgelegt,
daß über das NOR-Glied G207 invertiert wird. Das zuvor von der .Rückflenke des Signale SC1A, das über des ODER-Glied GHO zugeführt
wird, gelöschte N-Übertragflipflop 29 ist nicht voreingestellt
und sorgt so dafür, daß nur eine normale Übertragweiterleitung erfolgt. Das Ergebnis der zwangsweisen Festlegung des
Eingangs B des N-Yolladdlerers 29 bei der Umleitung (circulating)
des N-Teils über den Α-Eingang, wenn die Impulsfolge ZSFT erzeugt
wird, ist die Subtraktion der Zahl 1 vom N-TeIl,der nach dem 9.
Schiebeimpuls ISJ1T In seine ursprüngliche Lage im B-Register 25
zurückgekehrt ist.
Das Flipflop FIXLCP überwacht den Ausgang S des N-Volladdierers
29, um festzustellen, ob die Liste nach der Ausführung des RBL-Befehlβ
leer wird, was durch den modifizierten N-Tpil angezeigt
wird. Wie bei den Befehlen ABL und AEL ist dieses Flipflop FIXLCP im Takt GT3 des Reihenfolgesteuerzustandes 3 durch das Durchschalten
des UND-Gliedes G124 voreIngeeteilt. Das UND-Glied G165,
das den Lösoheingang des Flipflop FIXLCP ansteuert, wird synchron
mit den Impulsen ISFT durohgeschaltet, und zwar immer dann, wenn
das Ausgangssignal am Ausgang S dee N-Addierers 29 "1" ist und
der J-Zähler 30 den Zählerstand 378 noch nicht erreicht hat. Wenn
dies bei Irgendeinen der neiuen Schiebeimpulse ISFS der Fall 1st,
BADORiGiNAL
15494U
wird G 1.6-5' durchgeschaltet, um da β Flipflop FDCLCP zu löschen«
Wenn die Liste jedoch leer wird, sind alle früheren Bits des N-Teils, wie vom L-Teil vorgeschrieben, Null, und das
Flipflop FIXLCP wird nicht gelöscht.
-71-
109808/158 3 BAD
Der 1-Ausgang des Flipflop PIXLCP ist mit dem einen Ein
gang des UND-Gliedes CM84 verbunden, dem auch die Signale
SC3A und TLPS zugeführt werden. Wenn die Liste leer geworden ist, wird G141 im Takt TLPS des Reihenfolgesteuerzu-
stands 3 des RBL-Befehls durchgeschaltet, um seinerseits
den einen Eingang des UND-Gliedes G208 durchzuschalten. Der
andere Eingang des UND-Gliedes G208 ist bereits vom Ausgang
eines ODER-Gliedes G280 vorbereitet, dem das Signal DREL zugeführt wird. Das die Bitstelle 4 speichernde Flipflop
in B-Register 25 wird mithin mit der Rückflanke des Takt-
signals TLPS im Reihenfolgeeteuerzuetand 3 des RLB-Befehle
gesetzt, wenn das Flipflop PIXLCP gesetzt geblieben ist. Das die Bitetelle 5 speichernde Flipflop im B-Register 25'
wird jedesmal im Takt TLPS des Reihenfolges-teuerzustande
eines RBL-Befehls durch das Durchschalten der UND-Glieder
G211 und G2O9 gelöscht, weil eine Liete nach dei>- erfolgreichen^oder nicht erfolgreichen, Beendigung eines RBL-Befehls niemals voll βein kann·
Nun sei der REL-Befehl betracMßt. Das Signal DREL ist "1",
wenn eich der REL-Operationecode in den Bitstellen 23-18
dee I-Regieters befindet. Wie aus Fig. 27 zu ersehen ist,
wird der F-Teil lediglich von den Schiebeimpulsen ISFT über
dae NAND-Glied G100 und den F-Volladdierer 27 im Reihenfolgeetaierzu8tand 3 des REL-Befehle geleitet. Dae F-Ubertrag-Flipflop 27A, das zuvor von der Rückflanke dee SC1A-
- 72 -
109808/1583 8AD original
15A94AA
Impulses gelöscht wurde, der über das ODER-Glied G2O4 zugeführt
wurde, ist nicht voreingestellt und der Eingang B des F-Volladdierers nicht durehgeschaltet. Die Binärzahl,
die am Ende des Reihenfolgesteuerzustanda 3 dea REL-Befehls
in den Bitstellen 8-0 des I-Registers 23 erscheint, muß jedoch gleich der Summe der F- und N-Teile sein, "bevor das
Listensteuerwort modifiziert ist. Diese Summierung erfolgt durch Verschiebung des F-Teils zum Α-Eingang und des N-Teils
zum B-Eingang des I-Volladdierers 28, dem die Schiebeimpulse
ISi1T zugeführt werden.
Das I-Übertrag-Flipflop 28A, das zuvor über das ODER-Glied
G172 von der Rückflanke dea Impulses SC1A gelöscht wurde,
ist nicht voreingestellt. Diese Operation verläuft in ähnlicher
Weise wie die des AEL-Befehls, unterscheidet sich
jedoch darin, -daß das ODER-Glied G185 vom Signal DREL und
nicht vom Signal DAEL durchgeschaltet wird.
Am Ende des Reihenfolgesteuerzustands 3 beider Befehle RBL
oder REL muß geprüft werden, ob die Liste gerade leer ist, was vom, Listensteuerwort vor der Modifikation angegeben
wird. Wie in Fig. 3 gezeigt ist, ist das eine Eingangssignal
des UND-Gliedes 178 das Ausgangssignal des ODER-Gliedes
G182, das von dem Signal DRBL oder DREL durchgesehaltet
wird. Die anderen Eingangssignale des UND-GIiede« G178
sind das Signal SC3A und das Ausgangssignal vom Eins-Ausgang
8AD
10980β7Γ6β3
15494U
des die Bitstelle 4 speichernden Flipflop im B-Register
Das UND-Glied G17ö ist mithin während des ganzen Reihenfolgesteuerzustands 3 des Befehls RBL oder REL nur dann vorbereitet, wenn das die Bitstelle 4 speichernde Flipflop im
B-Register 25 gesetzt ist. Wenn diese Bedingung erfüllt ist, wird das ODER-Glied GH75 ebenfalls von Ausgangssignal des
Gliedes G178 durchgeschaltet, und das Ausgangesignal des
Gliedes G175 schaltet einen Eingang des UND-Gliedes G176
durch. Der andere Eingang von G176 wird im Takt TLPS des Reihenfolgesteüerzustands 3 bei den Befehlen RBL oder REL
durchgeschaltet und das Reihenfolgesteuerzustande-1-Flipflop wird im Augenblick de« Auftretens der Rückflanke des
Taktβignalβ TLFS vom Ausgangssignal des ODER-Gliedes G177,
das von G176 durchgeschaltet wird, gesetzt. Es zeigt sich, daß in diesem Augenblick das F-rRegister 24 die erste
Speicherplatzadresse nach derjenigen enthält, in der der gerade ausgeführte Befehl gespeichert ist. Die Programmsteuerung wird mithin auf den in diesem Platz gespeicherten
Befehl übertragen, und es wird weder irgendeine Information noch das modifizierte Listensteuerwort gespeichert. Wenn
dagegen die die Bitstellen 5 oder 4 speichernden Flipflop in B-Register 25 nicht gesetzt sind, wird das HOR-GIied
G179 durchgesehaltet, weil die ÜHD-Glieder G174 und G178
beide gesperrt sein müssen. Wenn die letztgenannte Bedingung erfüllt ist, wird das UID-Glied 6180 und nicht G176
■it des Takt TLPS durchgeeehaltet, üb das ODER-Glied G181
durchzuschalten· Das Auegangsβignal des ODER-Gliedes G181
BAD
addierwerk 20 durchgeechaltet. Im Takt TLPS schaltet das
Signal AAUA das durch die Ausgangesignale des Paralleladdierwerke 20 dargestellte Informationswort ins A-Regieter
21, und dann beginnt der Reihenfolgesteuerzustand 1, um das
in der zweiten Kernzelle nach derjenigen, in der der gerade ausgeführte Befehl HBL und REL gespeichert ist, gespeicherte
Befehlswort auszulesen.
Die Signale DIBL und DODL, die die Eingangssignale der verschiedenen Glieder .in den Figuren 27 und 28 darstellen,
werden während irgendeines Taktes bei der Ausführung der Listenbefehle nicht "1".
109808Π 583 bad original
setzt das Reihenfolgesteuerzustand-4-Flipflop, so daß der
Befehl RBL oder REL vollständig ausgeführt werden kann.
Die während des Reihenfolgezuetands 4 der Listenbefehle RBL
und REL auegeführten Punktionen sind einander gleich, und
der Re ihenf olges .-teuer zustand für diese Befehle läuft in
der gleichen Weise wie bei den Befehlen ABL und AEL ab.
Die in ReihenfοIgesteuerzustand 5 eines vollständig ausgeführten
Befehls RBL oder REL durchgeführten Funktionen sind einander gleich und werden ia folgenden an Hand ihrer jeweiligen
Taktdiagrasme nach Fig. 24 und 25 und an Hand der
Fig. 3, das ein Blockschaltbild der zwischen den einzelnen Registern des während des Reihenfolgezustands 5 auftretenden
Informationsübertragungen darstellt, beschrieben. Während des gesamten Reihenfolgesteuerzustands 5 ist das Signal
MAMI "1" und schaltet den Inhalt der Bitstellen A1B, 13-0
des I-Registers 23 ins Speicheradressenregister 32. Die
Operandenadresse im I-Register 23 ist in diesem Augenblick cie während der Reihenfolgezustände 3 und 4 gebildete. Deshalb
ist das Informationswort, das im Speicherdatenregister 33 erscheint, der gewünschte "entfernbare Anfangs- oder Endposten1'
, der entfernt werden soll. Im Takt TCT2 wird dieses
Informationswort vob BDOB-Signal ins B-Register 25 und
von dort durch die Signale UBÜÄ und UBLA, die während des gesamten Reihenfolgesteuerzustends 5 "1" sind, ins
1098O8/1S8 3
Claims (1)
- Patentansprüche1. Informationsverarbeitungseinrichtung mit fiegistern und Speichervorrichtungen, in denen mehrere Speicherplätze zur Speicherung einer entsprechenden Anzahl von Informationswörtern vorgesehen sind, dadurch gekennzeichnet , daß folgende Vorrichtungen miteinander kombiniert sind:ein erstes Register (I-Register 23) zur Zwischenspeicherung des Befehlswortes einer Anweisung, die von der Informationsverarbeitungseinrichtung ausgeführt werden soll, wobei das Befehlswort einen Operandenadressteil (Fig. 4s Bits 14-0) enthält,eine Adressiervorrichtung (Speicheradressenregister 32), die auf den Adressteil des im ersten Register (I-Register 23) gespeicherten Befehlswortes anspricht und die Kennung eines ersten Speicherplatzes (Pig. 22aZ) bildet,ein zweites Register (H-Register 26) zur Zwischenspeicherung des Operandenadressteils des im ersten Register (I-Register 23) gespeicherten Befehlswortes,ein drittes Register (B-Register 25)» das mit der Speichervorrichtung (Hauptspeicher 2) zusammenarbeitend in Verbindung steht,eine auf die von der Adressiervorrichtung (Speicheradressenregister 23) ansprechende Vorrichtung (Speicheradre8senregister 32) zur Übertragung des im ersten Speicherplatz098O871583BAD ORIGINALgespeicherten Wortes (Listenateuerwort) in das dritte Register (B-Register 25),eine Prüfvorrichtung (Pig. 38, G174-G181 und PISCO4) zur •Prüfung eines ersten Teils (Pig. 22a: Bit f oder Bit e) des ±u dritten Register (B-Register) zwischengespeicherten Wortes und zur Peststellung eines Speicherplatzzustandes (Liste nicht voll nicht leer),eine Vorrichtung (Pig. 38: G179 und PISC04) in der Prüfvorrichtung, die auf die Peststellung des Speicherplatzzustandes anspricht und ein Signal (Pig. 38: PISCO4) erzeugt,eine Vereinigungsvorrichtung (I-Volladdierer 28 und Paralleladdierwerk 20) zum Vereinigen mindestens eines zusätzlichen Teils (Pig. 22a: P-Teil oder P-Teil und N-Teil) des im dritten Register (B-Register 25) zwischengespeicherten Wortes mit der im zweiten Register (H-Register 26) zwischengespeicherten Operandenadresse, um die Kennung eines zweiten Speicherplatzes (Pig. 22c: aufzurufender Listenspeicherplatz) zu bilden,ein viertes Register (A-Register 21) undeine auf das Signal (PISC04) und die von der Vereinigungsvorrichtung (I-Volladdierer 28 und Paralleladdierwerk 20) ansprechende Vorrichtung (Speicheradressenregister 32 und Speicherdatenregister 33) zum Übertragen eines Informationswortes zwischen dem vierten Register (A-Register 21) und den zweiten Speicherplatz (aufgerufener Listenspeicherplatz).10 9 8~018/ T S 8 3 ^0 0Rfö'NAL15494U 932. Inforinationsverarbeitungseinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sie ein fünftes Register (P-Register 24) zur Zwischenspeicherung der Speicheradresse des Befehlswortes, eine Vorrichtung (Paralleladdierwerk 20, Signale UPAU, UENC) zur Erhöhung der in fünften Register zwischengespeicherten Speicheradresse um 1 und eine Vorrichtung (Paralleladdierwerk 20, Signale UPAU, UENC) enthält, die auf die Erzeugung dieses Signals anspricht und die im fünften Register zwischengespeicherte Speicheradresse um eine weitere 1 erhöht.3. Einrichtung nach Anspruch 1, dadurch gekennzeichnet , daß die Prüfvorrichtung (Fig. 38: G174-G181 und PISC04) einen ersten und einen zweiten Teil des im dritten Register zwischengespeicherten Wortes prüft und die Zustände eines ersten und zweiten Speicherplatzes abtastet, und daß die Ansprech- und Feststellvorrichtungen (G174 und 6178) auf die Feststellung des ersten Speicherplatzzustandes ansprechen, ein erstes Signal erzeugen, ferner auf die Feststellung des zweiten Speicherplatzzustandes ansprechen und ein zweites Signal erzeugen, daß Vorrichtungen (G179 und FISC04) vorgesehen sind, die auf die Erzeugung sowohl dee ersten als aucl· des zweiten Signals ansprechen und ein drittes Signal erzeugen, daß Signalansprechvorrichtungen (Speicheradresserregtster und Speicherdatenregister 34) sowohl auf das dritte Signal als auch die von der Vereinigungsvorrichtuag gebildete Kennung ansprechen·109804. Einrichtung nach Anspruch 1, dadurch gekennzeichnet , daß die Vereinigungsvorrichtung (I-Volladdierer 28 und Paralleladdierer 20) mindestens einen zusätzlichen Tei'l des im dritten Register (B-Register 25) zwischengespeicherten Wortes mit der Operandenadresse, die im zweiten Register (Η-Register) zwischengespeichert ist, vereinigt, um die Kennung eines zweiten Speicherplatzes zu bilden.5. Einrichtung nach Anspruch 1, dadurch gekennzeichnet , daß die Vereinigungsvorrichtung (28,20) einen dritten Teil des im dritten Register zwischengespeicherten Wortes mit der im zweiten Register zwischengespeicherten Operandenadresse vereinigt und die Kennung eines zweiten Speicherplatzes bildet.(·. Einrichtung nach Anspruch 1, dadurch gekennzeichnet , daß die Vereinigungsvorrichtung (28,20) dritte und vierte Teile des im dritten Register zwischengespeicherten Wortes mit der im zweiten Register (26) zwiBchengespeicherten Operandenadresse vereinigt, um die Kennung eines zweiten Speicherplatzes zu bilden.ßAD ORIGINAL109808nS837« Einrichtung nach Anspruch 1, bei der ein Steuerwort im ersten Speicherplatz gespeichert ist, dadurch gekennzeichnet , daß das Steuerwort in das dritte Register (25) übertragen wird, daß dieses Steuerwort "P"-, "N"-, "L"- und "Liste-voll"-Teile enthält, von denen der "L"-Teil die vorbestimmte Anzahl von Speicherplätzen anzeigt, daß die Prüfvorrichtung den "Liste-voll"-Teil des im dritten Register (25) zwischengespeicherten Steuerwortes prüft, um einen "Speicherplatz-nicht-verfügbar"-Zustand festzustellen, daß die Ansprech- und Peststellvorrichtungen (G 174· und GH 78) auf das Versagen der Prüfvorrichtung ansprechen, um einen "Liste-voll-Zustand" zur Erzeugung dieses Signals festzustellen, daß die Vereinigungsvorrichtung (28 und 20) den "Ρ''-Teil des im dritten Register zwischengespeicherten Steuerwortes zur im zweiten Register zwischengespeicherten Operandenadresse und zusätzlich die Zahl 1 hinzuaddieren, um die Kennung eines zweiten Speicherplatzes zu bilden, daß die auf das Signal und die Kennung, die von der Vereinigungsvorriohtung gebildet ist, ansprechende Vorrichtung (33 und 34) ein Informationswort aus dem vierten Register in den zweiten Speicherplatz überträgt.- 81 - BAD ORIGINAL108*08/1683Sl8. Einrichtung nach Anspruch 7, gekennzeichnet durch Vorrichtungen (N-Übertrag-Flipflop 29A und N-Volladdierer 29) zum Addieren der Zahl lr1" zum "N"-Teil des im dritten Register zwiechengespeicherten Steuerwortes, um ein modifiziertes Steuerwort zu bilden, und durch weitere Vorrichtungen (32,34), die auf das Signal ansprechen, um das modifizierte Steuerwort in dem ersten Speicherplatz abzuspeichern,9. Einrichtung nach Anspruch 7, dadurch gekennzeichnet , daß die Vereinigungsvorrichtung (28,20) auch den K-0!eil und die Zahl 1 zum F-Teil des Steuerwort es MiL?-uaddiert·10* Einrichtung nach Anspruch 7» gekennzeichnet a si r s h ©ine Vorrichtung '(29) zum Subtrahieren der Zahl 1 ¥oa l-fsil und zum Addieren der Zahl 1 zum N-Teil des Steuerwortes·11. Einrichtung nach Anspruch 1» bei der ein Steuerwort im ersten Speicherplatz gespeichert ist, dadurch gekennzeichnet , daß das Steuerwort in das dritte Register (25) übertragen wird, daß das Steuerwort "P"-, MN"-, "1"-, und "Liste-leerlf-Teile enthält, von denen der "LN-Teil die vorbestimmte Anzahl von Speicherplätzen anzeigt, daß die Prüfvorrichtung (G174-G181 und FISC04) den- 82 -09808/1^83Si"Liste-leer"-Teil des im dritten Register (25) zwischengespeicherten Steuerwortes prüft, um das Fehlen sinnvoller in den Speicherplätzen gespeicherter Informationswörter festzustellen, daß die Ansprech- und Peststellvorrichtungen auf das Versagen der Prüfvorrichtung ansprechen, und einen "Li8te-leerM-Zustand zur Erzeugung des Signals feststellen, daß die Vereinigungsvorrichtung den "F"-Teil des im dritten Register zwiechengespeicherten Steuerwortes und die Zahl 1 zum ira weiten Begister zwischengespeicherten Adressteil addiert, um die Kennung eines zweiten Speicherplatzes zu bilden, und daß die auf das Signal und die von der Vereinigungsvorrichtung (28,20) gebildete Kennung ansprechenden Vorrichtungen (32,33) ein Informationswort aus dem zweiten Speicherplatz in das vierte Register (21) übertragen.12. Einrichtung nach Anspruch 11, dadurch gekennzeichnet , daß die Vereinigungsvorrichtunc (28,20) ferner den N-TeIl des Steuerwortee hinzuaddiert."3· Einrichtung nach Anspruch 12, dadurch £ e kennzeichnet , daß sie eine Vorrichtung (27A und 27) zuffi Subtrahieren der Zahl 1 vom "N"-Teil des Steuerwortee enthält.1 098087 fs83BAD14« Einrichtung nach Anspruch 12, dadurch gekennzeichnet , daß die Yereinigungsvorrichtung (28,20) eine weitere Zahl 1 hinzuaddiert, um die Kennung eines zweiten Speicherplatzes zu bilden.15. Einrichtung nach Anspruch 12, dadurch gekennzeichnet , daß sie eine Vorrichtung (27A, 27) enthält, die die Zahl 1 zum "F"-Teil addiert und die Zahl 1 vom "N"-Teil des Steuerwortes subtrahiert.SAD ORJGiNAL109808/1583
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US59666666A | 1966-11-23 | 1966-11-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1549444A1 true DE1549444A1 (de) | 1971-02-18 |
Family
ID=24388194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19671549444 Pending DE1549444A1 (de) | 1966-11-23 | 1967-11-22 | Informationsverarbeitungseinrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3473161A (de) |
BE (1) | BE706901A (de) |
CH (1) | CH489056A (de) |
DE (1) | DE1549444A1 (de) |
FR (1) | FR1570457A (de) |
GB (1) | GB1207167A (de) |
NL (1) | NL6715891A (de) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2136170A (en) * | 1983-03-03 | 1984-09-12 | Electronic Automation Ltd | Method and apparatus for accessing a memory system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2907524A (en) * | 1954-06-01 | 1959-10-06 | Burroughs Corp | Conditional stop control apparatus |
US3061192A (en) * | 1958-08-18 | 1962-10-30 | Sylvania Electric Prod | Data processing system |
US3202970A (en) * | 1958-08-29 | 1965-08-24 | Ibm | Scatter read/write operation using plural control words |
US3202971A (en) * | 1958-08-29 | 1965-08-24 | Ibm | Data processing system programmed by instruction and associated control words including word address modification |
US3161763A (en) * | 1959-01-26 | 1964-12-15 | Burroughs Corp | Electronic digital computer with word field selection |
US3116410A (en) * | 1959-11-30 | 1963-12-31 | Monroe Calculating Machine | Simple general purpose digital computer |
GB942153A (en) * | 1961-01-26 | 1963-11-20 | Int Computers & Tabulators Ltd | Improvements in or relating to data processing apparatus |
US3290658A (en) * | 1963-12-11 | 1966-12-06 | Rca Corp | Electronic computer with interrupt facility |
-
1966
- 1966-11-23 US US596666A patent/US3473161A/en not_active Expired - Lifetime
-
1967
- 1967-11-14 GB GB51793/67A patent/GB1207167A/en not_active Expired
- 1967-11-17 FR FR1570457D patent/FR1570457A/fr not_active Expired
- 1967-11-21 CH CH1625567A patent/CH489056A/de not_active IP Right Cessation
- 1967-11-22 NL NL6715891A patent/NL6715891A/xx unknown
- 1967-11-22 BE BE706901D patent/BE706901A/xx unknown
- 1967-11-22 DE DE19671549444 patent/DE1549444A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
BE706901A (de) | 1968-04-01 |
NL6715891A (de) | 1968-05-24 |
GB1207167A (en) | 1970-09-30 |
CH489056A (de) | 1970-04-15 |
FR1570457A (de) | 1969-06-13 |
US3473161A (en) | 1969-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2411963C3 (de) | Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken | |
DE2637004C2 (de) | Dynamischer Halbleiterspeicher | |
DE2731188C2 (de) | Schaltungsanordnung zur Behandlung von Unterbrechungsanforderungen | |
DE2756890C2 (de) | Schaltungungsanordnung zur Steuerung der Datenübertragung zwischen einer zentralen Verarbeitungseinheit und einer Mehrzahl peripherer Einheiten | |
DE2755952C2 (de) | ||
DE1549522B1 (de) | Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner | |
DE1499201B2 (de) | Schaltungsanordnung zur Umwandlung von Informationen in gepackter Bytedar stellung in eine ungepackte Darstellung | |
DE2928488A1 (de) | Speicher-subsystem | |
DE1178623B (de) | Programmgesteuerte datenverarbeitende Maschine | |
DE1474062B2 (de) | Datenverarbeitungsanlage mit einer anzahl von pufferspeichern | |
DE1499206C3 (de) | Rechenanlage | |
DE3121742C2 (de) | Mikroprogramm-Steuereinrichtung | |
DE1189294B (de) | Datenverarbeitungsanlage | |
DE1474063A1 (de) | Datenverarbeitungsanlage | |
DE1802646A1 (de) | Schaltungsanordnung fuer Datenverarbeitungsanlagen,insbesondere Fernsprechvermittlungsanlagen,mit Einrichtungen zur Nachrichtenuebertragung | |
DE3587874T2 (de) | Protokolle für Terminal. | |
DE2935101C2 (de) | ||
DE1115488B (de) | Datenverarbeitungssystem | |
DE1474033A1 (de) | Schaltungsanordnung zum Anschluss von datenverarbeitenden Systemen an Nachrichtensysteme | |
DE1179027B (de) | Speicherprogrammierte digitale Rechenanlage | |
DE1424747A1 (de) | Datenverarbeitungsanlage | |
DE3447634A1 (de) | Dividiervorrichtung | |
DE1549444A1 (de) | Informationsverarbeitungseinrichtung | |
DE2900460A1 (de) | Warteschlangenstruktur | |
DE2610428A1 (de) | Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher |