DE2354431A1 - Automatischer schalter fuer die register, die eine information ueber den zustand der rechenanlage und die bereichsgrenzen ihres hauptspeichers enthalten - Google Patents

Automatischer schalter fuer die register, die eine information ueber den zustand der rechenanlage und die bereichsgrenzen ihres hauptspeichers enthalten

Info

Publication number
DE2354431A1
DE2354431A1 DE19732354431 DE2354431A DE2354431A1 DE 2354431 A1 DE2354431 A1 DE 2354431A1 DE 19732354431 DE19732354431 DE 19732354431 DE 2354431 A DE2354431 A DE 2354431A DE 2354431 A1 DE2354431 A1 DE 2354431A1
Authority
DE
Germany
Prior art keywords
register
signal
address
circuit
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19732354431
Other languages
English (en)
Other versions
DE2354431B2 (de
DE2354431C3 (de
Inventor
Garold D Boss
Vaemond H Crane
Donald G Mcbeath
Martin D Thompson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sperry Corp
Original Assignee
Sperry Rand Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sperry Rand Corp filed Critical Sperry Rand Corp
Publication of DE2354431A1 publication Critical patent/DE2354431A1/de
Publication of DE2354431B2 publication Critical patent/DE2354431B2/de
Application granted granted Critical
Publication of DE2354431C3 publication Critical patent/DE2354431C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/463Program control block organisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Executing Machine-Instructions (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

"150 024
SPERR! RAND CORPORATION, New York, N. Y./üSA ERA-1986
Automatischer Schalter für die Register, die ein« Information über den Zustand der Rechenanlage und die Bereichsgrenzen ihres Hauptspeichers enthalten
Die Erfindung betrifft die Adressier-Kapazitäten von datenverarbeitenden Anlagen, in denen eine relative Basisadressierung stattfindet, mit zwei Arten von Zustandsregistern,(nämlich den
PSR- und PSRU-Registern) und mit Hilfsmitteln, von denen die Basisadressier-Mechanismen der beiden Arten von Zustandsregistern dem Arbeitsablauf des Systems leicht und in gleicher Weise verfügbar gemacht werden können.
Mit der Konstruktion von Rechenautomaten, die mit zunehmend höheren Geschwindigkeiten und zunehmend umfangreicheren Kapazitäten arbeiten, wünscht man zahlreiche unabhängig betriebs- . fähige Programme im Hauptspeicher aufzubewahren und ein ausführendes Steuerprogramm vorzusehen, von dem einige ausgewählte Programme, die häufig als Arbeitsprogramme bezeichnet werden,
40983870669
sur Bearbeitung während einer Zeitspann« veranlaßt werden, bis es abgeschlossen ist oder aus irgendeinem Qrund unterbrochen wird, s. B. wenn ein relativ langsames peripheres Gerät eugreift. Bei der Unterbrechung eines Arbeitsprogramms kann das ausführende Steuerprogramm fortfahren, einen Abschnitt eines anderen Arbeitsprogramms auszuführen. Diese Arbeitsweise 1st allgemein als Zeitstaffelung bekannt und führt während des Gebrauches des gesamten Rechenautomaten zu einer größeren Leistungsfähigkeit. Zu einem gegebenen Zeitpunkt ruht wahrscheinlich eine Anzahl von Arbeitsprogrammen im Hauptspeicher,und sogar eine noch größere Anzahl von Arbeitsprogrammen ist in den Speichermedien außerhalb des Rechenautomaten untergebracht«
Ss ist auch eine allgemeine Praxis, die Befehlsabschnitte eines Programms in einem zusammenhängenden Bereich von Speicheradressen des Hauptspeichers und die Operanden für die zu bearbeitenden Daten in einem anderen zusammenhängenden Bereich von Speicherplätzen unterzubringen. Der zuletzt genannte Bereich kann Jedoch von demjenigen Bereich der Speicherplätze weit entfernt.sein, an dem die Befehle gespeichert sind. Während der Inhalt der verschiedenen Speicherbereiche willkürlich ist, können sich die Aufgaben der einzelnen Bereiche ändern.
Wenn dementsprechend ein gegebenes Arbeitsprogramm in den Hauptspeicher eingespeist werden soll, ist es häufig ein Problem, für dieses dort einen Raum zu finden, falls der Hauptepei-
4098"3§Λ06β9
eher bereits Mehrere Arbeit»programme enthält, die wesentlich· Teile des verfügbaren Raumes in der Weise einnehmen, d*& kein langer, zusammenhangender Bereich mit Speicherplatten verbleibt. Während zahlreiche kurze Bereiche mit Speicherplätzen zwischen den verschiedenen im Hauptspeicher untergebrachten Programmen vorhanden sein können, kann dieser verfügbare Kaum unzureichend sein, um die Befehls- oder Datenfolgen des neuen Program» auf* zunehmen, das in den Hauptspeicher eingespeist werden soll.
Lösungen dieses Problems sind in der USA-Patentschrift Hr. 3.389.380 vom 18, Juni 1968 bzw. in der USA-Patentschrift Rr. 3.461.433 vom 12.Augu3t 1969 beschrieben; dort werden System für eine relative Basisadressierung erläutert, bei der der Basisadressenwert abgeändert und dabei entweder die Befehlsfolge oder die Operandenfolge eines gegebenen Arbeitsprograaes von dem einen Speicherbereich zu einem anderen innerhalb des Hauptspeichers verschoben werden kann. Auf diese Weise können die im Hauptspeicher befindlichen Programme weiter geschoben «erden, damit der verfügbare Speicherraum wirkungsvoller genutet «erden kann.
Dieses bekannte Verfahren hat jedoch verschiedene Nachteile, weil das Speichern von neuen Programmen in dem anweisbaren Raum noch durch die Anzahl der im Hauptspeicher ruhenden Arbeitsprogramme und durch die Größe der einzelnen Befehls- und Operandenfolgen dieser Arbeitsprogramme begrenzt wird.
- 3 -409838/0669
·*· 235A431
Einsweitere Beschränkung der bekannten Steuersohaltungen litgt darin, daß die Basisadressenwerte auf einen ziealich engen Bereich des Hauptspeichers begrenzt sind. Bei einem Zugriffewort aus 18 Bits ist die Größe des Blockes des Hauptspeichers, in dem ein Programm neu angeordnet werden kann, auf 262.000 Wörter beschränkt.
Bei den neueren Rechenanlagen kann auf einen viel größeren Speicherraum zugegriffen werden, weil die Befehls- und Datenfol« gen der Programme in mehrere Abschnitte aufgeteilt werden, die in verschiedenen Bereichen des Hauptspeichers oder eines erweiterten Speichers untergebracht werden; auf diese Bereiche wird dann jeweils mit Hilfe eines LIJ- oder LDJ-Sprungbefehle zugegriffen, von dem der Basisadressenwert im PSR-Register abgeändert wird. Die Abänderung dieser Basisadressenwerte kann entweder direkt durch das ausführende Programm oder durch das Arbeitsprogramm ohne eine Zwischenschaltung einer ausführenden Steuerung erfolgen. Die Einzelheiten einer solchen Arbeitsweise sind bereits in der älteren deutschen Patentanmeldung Nr. P 23 42101.4 vom 21.August 1973 vorgeschlagen worden.
VJIe dort erläutert ist, enthalten zwei Arten Zustandsregieter, nämlich die PSR- und PSRü-Register zwei Basiswerte BI und BD für eine Befehls- bzw. Datenbank, Mit Hilfe dieser beiden Arten Zustand »register kann ein Programm auf vier gesonderte Bereiche des Hauptspeichers zugreifen, wobei zwei dem PSR- und zwei dem
._ 4 -409838/0669
PSRU-Register zugeordnet sind. Zn einem gegebenen Augenblick kann nur ein P3R-Reglster aktiv sein, um die Speicherbereich· den Schreib- oder Lesevorgang zu untersiehen.
Wenn das Programm auf einen Speicherbereich zugreifen nuß, der nicht durch das laufend aktive Zuatanderegieter (PSR. oder PSRU-Register), sondern durch das laufend inaktive Zustandsreglster festgelegt ist, muß der Zustand des Zust&ndsregistera verändert werden, damit das laufend inaktive Zustanderegister nunmehr aktiv wird. Der Hauptgrund für das Umschalten der Zustandsregister ist ein beim Prüfen der Speichergrensen auftretender Fehler innerhalb einer relativen Adresse, die während des Anschlusses eines gegebenen Zustandsregisters berechnet ist.
Das Umschalten von einem Zuatandsregister zum anderen erfolgt aber nicht automatisch. Die Arbeitsvorgänge müssen dabei so ablaufen, daß Aufzeichnungen darüber festgehalten werden, welche Befehls- und welche Datenabschnitte in den verschiedenen Bereichen des Hauptspeichers untergebracht sind, die durch die Basiswerte im PSR- bzw. PSRU-Register festgelegt sind. Ziel der Erfindung ist eine Schaltung zum Umschalten zwischen den beiden Arten von Zustandsregistern.
Ein weiteres Ziel der Erfindung ist es, den Basieadressier-Mechanismus der beiden Arten von Zustandsregistern für die Arbeitsvorgänge verfügbar zu machen.
- 5 -409838/0689
Ein drittes Ziel der Erfindung ist ·β, Mittel vorzusehen, von denen aufgrund der Ergebnisse eines Fehlers bei der Speichergrenzenprüfung eine selbsttätige Umschaltung tob laufend aktiven Zustandsregister zum laufend inaktiven Zustandsregister bewirkt wird. .
Ein viertes Ziel der Erfindung ist es, Adressier-Kapasitäten anzugeben, bei denen die Arbeitsvorgänge in mehrere Teile zerlegt werden, damit der vorhandene Speicherraum besser ausgenutzt werden kann. Insbesondere soll die Adressler-Kapasit&t Arbeitsvorgänge einschließlich eines ausführenden Programms, eines Arbeit sprbgramms oder von Daten in mehrere Teile serlegen können, von denen stets vier sofort durch die selbsttätig austauschbaren Zu3t>andaregister direkt adressierbar sind« ·
Gemäß einer bevorzugten Ausführungsform der Erfindung ist ein erster Kennteil in dem einen Zustandsregister (PSR-Regieter) vorgesehen, der das eine der beiden Zustandsregister und ein mit ihm in Beziehung stehendes Speichergrenzen-Register als laufend aktives PSR- und SLR-Register bezeichnet. Von Hilfsmitteln wird die absolute Adresse des laufenden Befehlsoperanden dadurch errechnet, daß seine relative Adresse mit der Basisadresse addiert wird, die im laufend aktiven Zustandsregister enthalten ist. Ferner wird dann eine Speichergrenzenprüfung am relativen Teil der Operandenadresse vorgenommen. Eine logische Schaltung spricht auf den Fehler bei der GrenzenprUfung an und
- 6 -409838/0663
setzt ein Steuer-Kannhit, damit der erste Kennteil geprüft wird und dann die Zustanderegister selbsttätig geschaltet werden, wodurch das laufend inaktive Zustandsregister als vorübergehend aktives Zustandsregister (anstelle des bis dahin lauf end aktiven Zustandsregisters) verwendet wird. Unabhängig davon, welches Zustandsregister in einem gegebenen Augenblick aktiv ist) sei es von nun ab als primäres PSR-Register bezeichnet. Die logische Steuerung berechnet dann die absolute Adresse des Operandenbefehls ein zweites Hai, der das nunmehr aktive PSR-Register benutzt, worauf eine weitere Speichergrenzenprüfung folgt. Falle die zweite Speichergrenzenprüfung positiv ist, wird der Befehl ausgeführt. Bei der Feststellung eines Fehlere in der zweiten CSrenzenprüfung ermöglicht die logische Steuerung die Abfragung eines Schutzkennbit, um zu bestimmen, ob die Ausführung des Befehls zugelassen werden kann, selbst wenn die Prüfung der Grensen negativ ausgefallen war. Im Falle der Nichtzulassung sieht die logische Steuerung die Erregung einer logischen Schutzunterbrechungsschaltung vor.
Diese logische Schutzunterbrechungsschaltung spricht auf einen Sprungbitanzeiger an, um den ersten Kennteil auszulösen, der das nunmehr aktivierte Zustandsregister zum fortan primären PSR-Reglster werden läßt, bis die nächste automatische Umschaltung der Zustandsregister während der Bearbeitung eines Sprungbefehls stattfindet. ,
- 7 409838/0669
Sin Aueführungebeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden naher erläutert. Es «eigen:
die Figuren 1 bis 4 den Aufbau mehrerer Wörter, die Ia PSR- und PSRE- bzw. im PSRU- und PSRUE-Register untergebracht sind, des SLR- und SLRU-Spelchergrensen-Registers und eines Befehlswortes,
Figur 5 den Aufbau eines !-Registers und außerdem der Wörter bzw. Teilwörter, die zur Berechnung der relativen und absoluten Adressen des Befehlsoperanden benutst werden,
Figur 6 ein Flufidiagramm der Erfindung,
Figur 7 ein logisches Blockschaltbild einer Schaltung, von der die Funktionen nach Figur 6 übernommen werden, und
Figur 8 seitliche Auftragungen von Impulsen.
In der nun folgenden Figurenbeschreibung müssen gewisse Annahmen bezüglich der Eigenschaften der Rechenanlage gemacht werden, in der die Erfindung angewendet wird, obgleich auch zahlreiche andere Arten von Rechenanlagen mit geringfügigen Abfinderungen brauchbar sind. Beispielsweise weist die Rechenanlage ein Wortregister mit 36 Bits und zwei Zustandsregister (PSR- bew. PSRU-
- 8 409838/0669
Register) mit den zugehörigen Speichergrenzen-Registera (SLR- bzw. SLRu-Register) auf. Um eine gewisse Übersichtlichkeit Aufrechtzuerhalten, sind die logische Steuerung und die Zeitgeber nicht ausführlich erörtert» obwohl die Zeitfestsetzung mit der Reihenfolge der durch die.Taktpulse festgelegten Arbeitsschritte später erläutert ist. . "
In Figur 1 sind zwei Zustandsregister, nämlich ein PSE- und PSRS-Register 100 und 101 mit 36 Bits dargestellt, von denen das letztere als Zusatz des ersteren dient und die in PSR-Regi· ster 100 enthaltenen Basiswerte abändert, um den erweitert©!! Abschnitt des Hauptspeichers zu erreichen0 BI- und- BD-Felder des SPR-Registers 100 legen im Hauptspeicher die Befehls- b*w0 Datenbasiswerte innerhalb eines Wortbereiches von gegebener Kapazität fest, die 202.000 Wörter betragen .möge-c Felder Big und BDg- des PSRE-Regisfers 101 erlauben eine Vergrößerung der Adresaier-Kapaaität bis zu 2n Gruppen Speich^rbereichenmit je 262.000 Wörtern. Falls die Zahl η β 6 ist, istdie Adressier« Kapazität der Kombination aus dem PSR- und PSRE-Register 100. und 101 auf 2^ χ 262.000 oder etwa 16.000.000 Wörter vergrödert.
Die BI- und BD-Felder des PSR-Registere 100 sind 9 Bit» lang und können daher 512 unterschiedliche Datenbänke identifizieren· In dem hier speziell zu erläuternden Beispiel haben die Datenbänke je einen Umfang von 512 Wörtern, so daß die Adressier-Kapazität des PSR-Rsgisters sich auf 512 Bänke mit 512 Wörtern,
- 9 409838/0669
also eine Qesaratadressier~Kapa*itä£ von 262.000 Wörtern belauft. Bei einer Hinzunahme der erweiterten Adressier-Kapaiitat, dit durch die BIj- und BD^-Felder gegeben ist, wird die Ansahl der möglichen Datenbänke mit 512 Wörtern auf 32.768 BSnke «it insgesamt ca. 16.000.000 Wörtern gesteigert.
Der Inhalt der BI- und BD-Felder des PSR-Regieters 100 und dtr BIx- und BDX-Felder im PSRE-Register 101 kann aus dem System der älteren Patentanmeldung Kr. P 23 42101.4 abgeleitet oder vom ausführenden Programm festgelegt werden. Ein BS-FeId stellt einen Wert dar, der die obere Grenze der relativen Baeisadressen im Befehlsbereich der Adressen definiert· Wie beachtet sei, beginnt die Datenbank der Adressen bei einem Wert, der größer als der des B S-Feldes ist, und η inen t ve π diesem Punkt ab su; daher liegt die gesamte Datenoperandenbank der Adressen oberhalb des Wertes des 3S-Feldes,
Ein D-Feld der PSR- und PSRE-Register enthält die Steuerbite, die die verschiedenen Funktionen übernehmen, von denen einig· für die Erfindung von Interesse sind. Beim PSR-Regieter 100 sind die Steuerbits 0-0 bis D-LO in den Bit Positionen 27-35 und außerdem in den Bitpositionen 16 und 17 enthalten, wahrend beim PSRE-Register die Steuerbits D-Il bis D-19 die Bitpositionen 12 bis 20 einnehmen.
- 10 -
409838/0669
Die Steuerbits B-2> D-II. D-12 und D-16 sind fur di· Srfindung von Bedeutung mid in der Figur 1 unter den PSR- und PSRE-Regi-
stern aufgezählt.
Das Steuerbit D-2 ist ein Schutzbit für den Speicher; im Setssustand sorgt es dafür, daß auf den Hauptspeicher außerhalb der Grenzen, die durch das laufend aktive Speichergrenzen-Register) 8. B. durch das SLR-Register für das.laufend aktive PSR-Register bestimmt sind, nicht zugegriffen werden kann«Jedesmal wenn der Hauptspeicher mit einem Operanden in Anspruch genommen wird, erfolgt eine Speichergrenzenprüfung; falls unter besonderen Verhältnissen diese Prüfung negativ ausfallt, wird das Schutsbit geprüft, um festzustellen, ob es erlaubt ist, die berechnete, absolute Adresse außerhalb der vorgegebenen Speicfoergrensen au gebrauchen. Falls ein solcher Zugriff zulässig ist, wird ein Befehl ausgeführt. Falls dagegen die errechnete Operandenadresse,die außerhalb der vorgeschriebenen Speichergrenzen liegt, nicht benutzt werden darf, wird ein Schutzunterbrechungssignal hervorgerufen, das der Rechenanlage eine ungültige Adresse anzeigt. Außerdem sind unter gewissen Bedingungen gomäß der Erfindung Hilfsmittel zum automatischen Umschalten sum anderen Zustandsregister vorgesehen j, damit sine neue absolute Adresse unter Verwendung des Basiswertes-gebildet wird,
der im anderen Zustandsregister enthalten ist, um dann eine weitere Speichergrenzenprüfung vorzunehmen, die den Basiswert zugrundelegt, der im anderen Zustandsregister aufbewahrt ist.
-U-409838/0669
Bas Steuerbit D-Il dient der Operandenbasiewahl· Fall· ea null ist; werden unter der Voraussetzung von D-12 * 0 die Basiewerte aus den PSR- und PSRE-Regieter benutzt» Falle dan Steuerbit D-Il und das i-Bit aus dem Befehl eins sind, werden die Basie werte aus dem PSRU- und PSRUE-Register mit Ausnahme des Sprung operanden benutzt.
Das Steuerbit D-12 dient der Wahl der Zustande- und Speichergrenzen-Register. Wenn es eins ist, werden das PSRU-, PSRUE- und SLRU-Register benutzt. Im Falle von D-12 ■ O kommen das PSR-, PSRE- und SLR-Register zur Anwendung.
Das Steuerbit D-18 ist ein automatischer Schalteranzeiger. Falls D-18 « 1 und ein Grenzenfehler vorhanden ist, werden nur beim laufenden Befehl das andere Zustande- und Speichergrenaen-Register benutzt. Auf einen Sprungbefehl hin, wenn D-18 ■ 1 und ein Grenzenfehlor vorhanden ist, wird das Steuerbit D-12 ständig aus seinem laufend aktiven Zustand in seinen anderen Zustand umgeschaltet, bis der nächste Sprungbefehl unter den automatischen Schaltbedingungen auftritt. Bei einem Befehl, der kein Sprungbefehl ist, ist der Schalter zum anderen Zustandsund Speichergrenzen-Register hin nur für den laufenden Befehl wirksam, und das Steuerbit D-12 wird nicht geändert.
Das Zusammenwirken der Steuerbits D-12 und D-18 kann im folgenden noch genauer festgelegt werden. Wenn das Steuerbit D-12
- 12 -
409838/0669
gelöscht Ist j sind die PSR- und SLR-Regiater aktiv; im gesets« ten Zustand dagegen sind die PSRU- und SLRU-Regieter tätig, Vomer Ausführung eines beliebigen Befehls wird eine Grenzenprüfung mit dem entsprechenden SLR- oder SLRU-Register vorgenommen* Falls das Steuerbit D-16 des. PSR-Registers- nicht gesetzt istf wird die Ausführung des Befehls unter Verwendung des laufend aktiven Zustande- und Speichergrenzen-Registars eingeleitet5 selbst wenn die Grenzenprüfung negativ ausfällt« wobei aber vorgesehen ist, daß ein Schutzbit die Ausführung des Befehls-erlaubt,' Falls jedoch das Steuerbit B-18 gesetzt und die Grenzenprüfung negativ'ist, werden die anderen (inaktiven! Zustands- und Speichergrenaen-Register verwendet, und eine aweite Grenzenprüfung findet statte Die Ausführung des Befehls unter Verwendung des anderen Zustandsregisters ist von den Ergebnissen der zweiten Grenzenprüfung und vom Zustand des Schutsbit abhängig» Wenn der gerade ausgeführte Befehl ein Sprüngbefehl 1st, wird das Steuerbit D-12 ausgelöst, wodurch der aktive und inaktive Zustand der Zusta&ds- und Speichergrensen-Register umgekehrt werden,, (bis beim automatischen Umschalten der nächste Sprungbefehl auftrittK Bei anderen Befehlen als dem Sprungbefehl wird das Steuerbit D-12 nicht ausgelöst, und der zukünftige Zustand der PSR- und PSRU-Register bleibt unverändertο
Gemäß Figur 2.werden sowohl ein PSRU-Register 102 als auch ein PSRUE-Register 103 zur Unterbringung von Programmen im Haupt-
- .13 -409838/0665
speicher der Rechenanlage in derselben Weise wie das PSfURegister 100 und aas PSRE-Register 101 der Figur 1 verwendet· Totstellen die PSRU- und PSRUE-Register 102 und 103 Alternativen für die PSR- und PSRE-Register 100 -und 101 dar, so d&B in der Rechenanlage vier Bänke des Hauptspeichers unmittelbar adressiert werden können«
Den PSRU- und PSRU£-Registern 102 und 103 fehlen die D-Felder 6 da die entsprechenden D-Felder der PSR- und PSRE-Reglster 100 und 101 für alle notwendigen Steuerfunktionen ausreichen·
In der Figur 3 sind die beiden Speichergrenzen-Registerf nämlich ein SLR-Reglster 104 und ein SLRÜ-Reglster 105 gezeigt* die Je den PSR- und PSRE- bzw. PSRU- und PSRUE-Registern der Figuren 1 und 2 zugeordnet aind.
In den SLR- und SLRU-Registern 104 und 105 sind jeweils swei obere und zwei untere Grensen enthalten. Im SLR-Register 104 geben die Bitpositionen 18 - 26 die unteren Grenaen der Befehlsbank und die Bitpositionen 27 - 35 die oberen Grenaen der Befehlebank an. Außerdem sind in den Bitpositionen 0 - 8 die unteren Grenzen der Datenbank und in den Bitpoaitionen 9-17 die oberen Grenzen der Datenbank enthalten. Ia SLRU-Reglster 105 sind die oberen und unteren Grenzen für die Befehls- und Datenbank in ähnlicher Weise aufgenommen. Sie liegen als relative Adressen des Befehl3operanden, der auf die Grenzen, untersucht wird, und nicht als absolute Adressen vor.
- 14 -
409838/0689
der Figur 4 m*& der Aufbau eines Befehlswortes 106 herror,
das ±n seinen Bitpositionen 0-15 einen u-Teil sur Bildung der relatives. Operandenadresse der Befehle in Verbindung mit einem x-Wert enthält* der in einem X-Register 107 CFigur 5) untergebracht ist. Der i-TeiX des Befehlswortes ist ein Feld mit einen einzigen Bit, mit dem in Verbindung mit .dem Steuerbit D-Il des PSRE-Registers der Figur 1 bestimmt wird, welches Zustanderegister zur.Aufnahme eines gegebenen Befehlsoperanden benutzt werden soll. Der a-Teil enthält die Adresse des X-Registers 107 im allgemeinen Registerstapel (nicht gezeigt).
h-, j-j χ- und f-Teile des Befehlswortes .übernehmen verschiedene Funktionen beim Arbeitsablauf der Rechenanlage, die aber nicht direkt für die Erfindung iron Bedeutung sind.
Der Wert des u-Teils im Befehlswort wird zum s-'^ert au» dem X-,ster der Figur 5 addiert, um die relative Operandenadresse Befehls su erhalten. Wenn u + χ > 20O8 ist, fällt der Operand In dan Bereich des Hauptspeichers der Rechenanlage, der in Figur 4 als Bereich A genannt 1st. Wenn dagegen u + χ < 20O1 ., liegt die betreffende Adresse im allgeneinen Hegisttrat*- .j tfie als Bereich 3 in der Figur 4 angegeben iat.
X-Register 107 der Figur S, das durch den a-Teil des Befehlswortes 106 der Figur 4 Identifiziert wird, enthält in ael-Bitpositionesi 0 - 17 den sc-Wert, der aum u-Teil deo Be-
- 15 - ' " 409838/0669
fehlswortes 106 in einem Addierer (nicht gezeigt) addiert wird, um einen neuen U-Wert au bilden« Folglich ist U - u + x, wit in einem Format 108 der Figur 5 angegeben ist.
Um die absolute Adresse des Befehlsoperanden zu bilden, mud der U-Wert entweder mit dem Wert von BI oder BD und dem entsprechenden Wert BIX oder BDX zusammengezählt werden. Die Kombination von U mit BI bzw. U mit BD ist in einem Format 110 bzw. 112 su sehen*
Der Basiswert der Befehlsbank wird dem primären PSR-Register entnommen, zu einem Register übertragen und um 9 Bitpositionen nach links verschoben. Somit sind in einem Format 109 die Baaiswerte BI und BII der Befehlsbank in den Bitpositionen 9 bis 23 des Wortes aus 2k Bits gezeigt, In dem die ersten Bitpositionen nur Nullen aufweisen. Die Verschiebung der Basiswerte ua 9 Bitpositionen nach links vor ihrer Kombination mit dem U-Wert des Formates 108 1st deshalb notwendig, weil die Baslswerte
die Speicherbereiche mit einem Umfang von 512 Adressenplätien definierenj 512 ist nämlich 29.
Die Formate 108 und 109 werden dann in einer logischen Addltrschaltung der Kechenanlage (nicht gezeigt) zusammengezählt, um die absolute Adresse des Befehlsoperanden zu bilden, der als Format 110 der Figur 5 wiedergegeben ist.
·. 16 -409838/0669
Die relative Adresse des Formates 108 wird dann cu den Basis* werten der Datenbank addiert, die in einem Format 111 dargestellt sind; dem primären PSR-Register werden die Basiswertt entnommen, zu einera entsprechenden Register übertragen und auch um 9 Bitpositionen nach links geschoben, wie das Format 111 ausv/eist. Das Verschieben der BD- und BDX-tferte um 9 Bits nach links ist ebenfalls auf die Wählbarkeit von 512 Wörtern zurückzuführen. Die relative Adresse des Formates 108 und die Basiswerta des Formates 111 werden dann addiert, wodurch die absolute Adresse de3 Datenoperanden entsteht, der als Format 112 der Figur 5 gezeigt ist. in Figur 5 sind nur die grundlegenden Arbeitsschrittß zur Bildung der absoluten Adresse des Befehlsoder· Datenoperanden wiedergegeben. Aus der Figur 5 geht jedoch nicht hervor, wie angezeigt wird, welches PSR-Register gerade das primäre PSR-Register ist« Die Auswahl des primären PSR-Registers und die Fähigkeit, das PSR-Reglster gegen, das PSRU-Re- · gister als primäres .PSR-ßegister auszutauschen, bilden den Kern der Erfindung.
In Figur 6 ist in einem Block 120 der Beginn des Lesens und der Ausführung des nächsten Befehls durch die Rechenanlage dargestellt, unabhängig davon, in welchem Programm die Rechenanlage gerade arbeitet. Der nächste Befehl wird geleeen (Block 121), worauf die Bestimmung folgt (Block 122), ob der nächste Befehl ein LIJ- oder LDJ-Sprungbefehl ist. Diese Befehle sind in der eigenen, älteren Patentanmeldung Kr. P 23 4-2101 ο4 näher erläutert und dieren dazu, die Baaisadressenwerte im PSR- oder PSRU-
- 17 409838/0639
Register abzuändern. Falls der Befehl ein LIJ- oder LDJ-Sprungbefehl istfwird er über eine Leitung 123 zu einer LIJ- oder LDJ-Subroutine geleitet.
Falls kein Sprungbefehl vorliegt, wird über eine Leitung 124 ein Signal au einem Block 125 geleitet, in dem die relative Adresse des Befehls- oder Datenoperanden, so berechnet wird, wie durch die Formate der Figur 5 angegeben ist.
Als nächstes erfolgt in einem Block 126 die Bestimmung> ob da» Steuerbit D-Il des primären PSR-Registers und das i-Bit des Befehlswortes gemeinsam gesetzt sind oder nicht. Ia positiven Falle möge sich der Befehl im ausführenden Programm befinden.
Wie beachtet sei, kann der Arbeitsablauf des Systems nunmehr einem von zwei Haup-fwegen folgen. Der eine verläuft über die Bestimmung des Vorhandenseins eines Sprungbefehls in einem Block 129, die lpgische Berechnung der absoluten Adresse in einem Block 131 oder 132 zur Feststellung der primäres Speichergrenzen in einem Block 151.
Der andere Hauptweg verläuft über den Block 145 und einen weiteren Block 148 oder 149 zur Berechnung der absoluten Adresse zum Block 151, in dem die Grenzen geprüft werden, und endet in einer Schaltung eines Blockes 139 zur Ausführung des Befehls oder über Blöcke 154, 157 und l60 in einem Block 161, dessen
- IB -409838/0669
Sehaltung selbsttätig, die Zustandsregister austauscht und di· absolute Adresse errechnet, die das neue 3PR-Register verwendet. Dsm Block l6l folgt ein Block 134» in de« die Qrensen geprüft werden, und dessen Ausgänge unmittelbar Bum Block 139 oder su einer Schutzschaltung (Block 140). führen, von der Signale in den Block 139 star Ausführung, des Befehle oder in eine Schuteunterbrechung (Block 142) abgegeben werden.
Der Hauptunterschied zwischen den beiden Hauptweged besteht Im folgenden: 0er erste Hauptweg wird stets eingeschlagen, wenn das Steuerbit B-Il und das i-Bit gemeinsam gesetst sind. Die Bestimmung, welches Zustandsregister das primäre ist, ist gftm-
lieh davon abhängig, ob der Befehl ein Sprungbefehl iat oder .nicht. ¥1© bereits gesagt ist» können nur die ausführenden Befehle 2 falls das Steuerbit D-Il und das i-Bit gesetzt sind, ersten Hauptweg folgen. - .
In den weites* Hauptweg kann entweder ein ausführender Befehl oder ein Befehl des Arbeitsprogramms eintreten; in ihn ist ein Mechanismus aus automatischen umschalten zwischen dea PSR- und ?§RU«Register als primärem PSR-Regieter enthalten, wenn eine Speichergrenzenprüfung negativ ausfällt. Die beiden Hauptwege uschaeln die Verwendung d§r Sustancte«gister ab, wenn da.« 3teu· srbit D-ΙΘ gesetzt ist, wie in eine« Block 154 angegeben ist.
lunmehr seien die beiden Hauptwege nacheinander ausführlich erläutert.
-.19 -"
409838/0669
Falle das Steuerbit D-Il und daa i-Bit gemeinsam gesttit sind, bestimmt die Schaltung des Blockes 129» aus den im Befehl enthaltenen Informationen, ob er ein Sprungbefehl ist. Wenn kein Sprungbefehl Torliegt, werden das PSR- und PSRE-Register arur Abänderung der relativen Adresse des Operanden benutzt (Block 132), die im Block 125 errechnet wurde, um die absolute Adreea· des Operanden zu bilden. Dieser Operand kann je nach dem im Zustandsregister enthaltenen Steuerbit ein Befehls- oder ein Datenoperand sein.
Wenn der Befehl ein Sprungbefehl ist, wird der Inhalt des PSR- und PSRE-Registere (Block 131) rerwendet,■ -uat die relative Adresse des Operanden abzuändern, die im Block 125 zur Bildung dtr absoluten Adresse errechnet wurde.
Die im Block 131 oder 132 errechnete, absolute Adresse wird dann dem Block 151 zugeleitet, in dem der relative Adreßteil mit den oberen und unteren Grenzen Im Speichergrensen-Register 104 oder 105 der Figur 3 verglichen wird. Die nach dem Eintritt in den Block 151 auszuführenden Funktionen stimmen mit denen des »weiten Hauptweges Uberein.
Wenn das Steuerbit D-Il und das i-Bit nicht gesetzt sind, läuft ein Signal vom Block 126 über die Leitung 128 sum Block 145, in dem das Steuerbit D-12 geprüft wird. Falls letzteres nicht gesetzt ist, läuft ein Signal über die Leitung 146 sum Block
- 20 -409838/0669
148 weiter, wo eine logische Steuerschaltung angewiesen wird, die PSR- und PSRE-Register zu benutzen, um die relative Adresse des Operanden zur Bildung der absoluten Adresse abzuändern· Wsnn dagegen das Steuerbit D~12 gesetzt ist, läuft ein Signal vom Block 145 über eine Leitung 147 zum Block 149* in dem die logische Steuerung die PSRIT- und PSRUE-Register verwendet, um die relative Adresse des Operanden zur Bildung der absoluten Adresse abzuändern.
Die Blöcke 143 und 149 stimmeη mit den Blöcken 131 und 132 nahezu überein. Die Ia ihnen gebildete absolute Adresse wird über eine Leitung 150-&m Block 151 geleitet, in dem die Prüfung der Speichergrenzen stattfindet. Der Block 151 arbeitet genauso wie der Block 134, da er die relative Adresse des Operanden vergleicht, die bei der Bildung der absoluten Adresse im Block 148 oder 149 verwendet wird, um zu bestimmen, ob die relative Adresse innerhalb der im SLR- oder SLRU-Grenzenregister festgesetzten Grenzen liegt« Wenn dies der Fall ist, wird vom Block 151 über die Leitungen 152 und 158 ein Signal in den Block 139 &ur Ausführung des Befehls eingelassen, in dem der Operand bearbeitet wird.
Falls dagegen die Prüfung der Speichergrenzen negativ ausfällt, läuft ein Signal vom Block 151 über die Leitung 153 in den Block 154 hinein, damit das Steuerbit D-18 des Zustandsregisters geprüft wird* Wenn es nicht gesetzt ist, wird über die
409838/0669
Leitung 155 die Schutzschaltung 140 unterrichtet, von der dann das Schtttsbit erneut geprüft wird. Falls das Schutabit nicht gesetzt sein sollte, kann das negative Ergebnis der Speichergrenzenprüfung vernachlässigt und dar Befehl im Block 139 aus» geführt werden, Wenn das Schutsbit gesetzt war, laufen die Signale über eine Leitung 141 zur Schutzunterbrechung (Block 142), von der ein Unterbrechungssignal erzeugt wird«
Wenn das Steuerbit D-18 gesetzt ist, werden Signale über eine Leitung 156 in den Block 157 eingeführt, in den ermittelt wird, ob der Befehl ein Sprungbefehl ist. Falls kein Sprungbefehl Tor· liegt, treten die Signale in den Block 161 ein, der die Zustandaregister automatisch umschaltet, also die bislang aktiven PSR* und SLR-Register abschaltet und die bis dahin inaktiven Zustandsregister einschaltet, damit das aktive Zustandaregister die absolute Adresse des Operanden errechnen kann. Wie beachtet sei, werden die anderen PSR- und SLR-Register für diesen speziellen Befehl nur verwendet, wenn er kein Sprungbefehl ist. Der nächste Befehl benutzt wieder die Wörter aus den unmittelbar zuvor aktiven Zustande- und Speichergrenzen-Registern«
Falls jedoch der Befehl ein Sprungbefehl 1st, treten Signale über die Leitung 159 in den Block 160 ein, der eine Auslösung des Steuerbit D-12 in den anderen Zustand bewirkt, wodurch eine Änderung des Zustandsregisters solange erfolgt, bis ein
- 22 409838/0669
weiterer Sprungbefehl auftritt, während das System in diese» aweiten Hauptweg arbeitete Nach dem Auslösen dee Steuerbit D-12 treten die Signale in den Block 161 ein, von dem die anderen, bislang inaktiven Zustands« und Speichergrensen-Register but Abänderung der relativen Adresse des Operanden benutzt werden, lim die absolute Operandenadresse zu bilden. Unabhängig davon, ob ein Sprungbefehl vorliegt oder nicht, werden die anderen bislang inaktiven Zustande- und Speichergrenzen-Register zur Adressenänderung benutzt· Selbst wenn das Steuerbit D-12 au seinem anderen Zustand hin ausgelöst wird, um die primären PSR-Regist er bleibend abzuändern, findet aufgrund des Aufbaus der logischen Steuerschaltung diese Auslösung erst dann statt, wenn die Funktion des Blockes I6l erfüllt ist» Wenn also das zuvor laufend aktive Zustandsregister das PSR-Register gewesen ist, dann bewirkt die Schaltung des Blockes l6l unabhängig davon, ob der laufende Befehl ein Sprungbefehl war oder nicht, daß das PSRtJ-Reglster zur Abänderung des laufenden Btfehls benutzt wird. Wenn jedoch der laufende Befehl ein Sprungbefehl war, wird das Steuerbit D-12 ausgelöst, damit alle nachfolgenden Befehle die PSRU- und SLRü-Register benutzen, bis ein weiterer Sprungbefehl auftritt und auf diesem Weg £n der Steuerschaltung durch den Block 157 hindurchgeht.
Die gewünschte Abänderung der Operandenadresse innerhalb des Blockes 161 erfolgt in derselben Steuerschaltung,wie sie eur Abänderung der relativen Adressen der Operanden in den Blöcken
■ *'23 - '
409838/0669
2354A31
146 und 149 und auch in den Blöcken 131 und 132 benutzt wird» Die im Block l6l errechnete absolute Adresse läuft über die Leitung 162 zum Block 134, in dem eine Prüfung der Speichergrenzen an der relativen Adresse des Operanden erfolgt· Wenn diese relative Adresse innerhalb der angegebenen Grenzen liegt, laufen Signale über die Leitungen 137 und 138 in den Block 139 zur Ausführung des Befehls hinein, wo die Operanden-Adresse für den Speicher bearbeitet wird«
Wenn dagegen die Prüfung der Speichergrenzen negativ ist, laufen Signale über die Leitung 135 zur Schutzschaltung (Block 140}, in der das Schutebit Überprüft wird. Falls das letztere nicht gesetzt ist, kann der Operand in dem Hauptspeicher bearbeitet werden, selbst wenn seine Adresse außerhalb der Grenzen dee Wortes im Speichergrenzen-Register liegt. Dieser Operand wird dann vom ausführenden Befehl (Block 139) benutzt«, Falls das Schutzbit gesetzt ist, laufen Signale über ein« Leitung 141 zur Schutzunterbrechung (Block 142), von der ein Unterbrechungssignal erzeugt wird, das einen Fehler an den Speichergrenzen anzeigt.
Die Funktion der logischen Schaltungen in den Blöcken 154, 157, 160 und 161 ist besonders bedeutsam, da sie die Einrichtungen zum Umschalten von einem Zustandsregister zum anderen im Falle des negativen Ergebnisses dei der Speichergrenzen-Uberprüfung der Operanden-Adresse eines gerade bearbeiteten Befehls enthal-
- 24 409838/0669
ten» Falls der letztere Befehl ein Sprungbefehl 1st, wird das Steuerbit D-12 ausgelöst, damit ein Austausch der Zustandsregister solange aufrechterhalten wird, bis der nächste Sprungbefehl auftritt, der von dan Blöcken 151, 154» 160 und l6l bearbeitet wird.
In der Figur 7 ist die Steuerschaltung ausführlich gezeigt, deren Flußdiagranaa (Figur 6) zuvor beschrieben ist. Zahlreiche UND-Glieder der Figur 7 weisen eine Singangsklemme auf, an der ein Taktgeber angeschlossen ist, der jedoch nicht gezeigt ist. Es sei angenommen, daß ein passender Taktpuls aufgetreten ist, wenn in der Beschreibung gesagt 1st, daß ein gegebenes UND-Glied ein Schaltsignal empfangen hat.
In der Figur 7 1st die Annahme gemacht, daß die relative Adresse des Operanden errechnet und darüber eine Anzeige über eine Leitung 162 zu einem UND-Glied 163 erfolgt ist. Wie weiter angenommen sei, sind das Steuerbit D-Il des aktiven Zustandsregisters und das i-Bit des Befehlswortes gesetzt; daher werden zwei weiteren Eingängen l60 und 161 des UND-Gliedes 163 binäre !-Signale zugeleitet. Auf diese Weise wird das UND-Glied 163 eingeschaltet, das ein 1-Signal über eine Leitung einer Eingangsklemme I64 eines weiteren UND-Gliedes I66 und einer Eingangsklemme 209 eines dritten UND-Gliedes 210 zuführt■.
■ '- 25 - ■
409838/0669
Bin Flipflop I67 stellt einen Anzeiger für ein Sprungbit dar« in dessen Löschzustand über eine Leitung 207 ein Schaltsignal de« UND-Glied 210 zugeleitet wird. Dem UND-Glied I66 wird lugleich über eine weitere Eingangsklemme I68 ein O-Signal zugeführt, von dem es abgeschaltet wird« Das Ausgangssignal des UND-Gliedes 210 lauft dann über ein ODSRr-Qlied 212 in eine logische Blockschaltung 213 hinein, die daraufhin anspricht und die relative Adresse des Operanden abändert, um deesen absolute Adresse unter Verwendung der Basiswerte des PSRU- und PSRUE-Registers su
f ■ -
bilden. Die in der Blockschaltung 213 ermittelte absolute Adresse wird dann über ein K/abel 173 zu mehreren Schaltungen hin geleitet, nämlich über ein weiteres Kabel 174 zu einer Grenzenbestimmungsschaltung 180,. die eine Vergleichsschaltung sein kann, über ein drittes Kabel 175 zu einem UND-Glied 162, über ein viertes Kabel 176 zu einem UND-Glied 183, über ein fünftes Kabel 236 zu einem UND-Glied 238 und über ein sechstes Kabel 293 zu einem UND-Glied 290» In Abhängigkeit vom Se te zustand der verschiedenen Kennteile und den Ergebnissen der Grenzenprüfung wird die absolute Adresse durch eines der zuvor aufgeaählten UND-Glieder 182, 183, 238 oder 290 und ein ODER-Glied 165 einer logischen Schaltung 186 zur Ausführung tines Befehls zugeführt.
Wie nunmehr angenommen- sei, ist das Flipflop I67 (Anseiger für ein Sprung-bit) gesetzt, so daß das UND-Glied I66 eingeschaltet und das UND-Glied 210 abgeschaltet ist. Das Aus-
- 26 409838/0669
gangS3ignal des UND-Gliedes 166 läuft dann durch ein ODER-Glied
170 in eine logische Blockschaltung 171 hinein, die anspricht und die relative Adresse des Operanden aur Bildung der absoluten Adresse unter Verwendung der Basiswerte im PSR-' und PSRE-Register abändert, die das primäre PSR-Register bilden, da das UND-Glied I66 eingeschaltet ist. Die von der Blockschaltung 171 ermittelte absolute Adresse wird dann über das Kabel 173 auf denselben Weg geleitet,. der zuvor in Verbindung mit der Blockschaltung 213 erläutert ist.
Die Blockschaltungen 171 und 213 arbeiten ähnlich wie die Blökke 129, 131 und 132 der Figur 6. Die logischen Operationen, die nach dem Eintritt in die Grehzenbestiraraungsschaltung 180 an der errechneten absoluten Adresse ausgeführt werden, stimmen mit denen im zweiten Hauptweg der Figur 6 überein.
Wenn das Steuerbit D-Il oder das i-Bit nicht gesetzt ist, gibt das UND-Glied I63 ein G-Signal ab, das Über- die Leitungen 208 und 220 zu einem Negator 221 gelangt, der es als 1-Signal der einen Eingangsklemme eines UND-Gliedes 222 zuführt. Wenn ein Signal, das das Ende der Berechnung der relativen Adresse des Operanden anzeigt, in den Leitungen 162 und 223 erscheint, wird das UND-Glied 222 eingeschaltet und legt ein 1-Signal an Eingangsklensaen 224 und 231 eines UND-Gliedes 225 bzw. 232 an. Beim Setzen des Steuerbit p-12, was durch ein Flipflop 227 wiedergegeben wird, wird das eine UND-Glied 225 oder232 einge-
- 27 -409838/Q669
schaltet und das andere abgeschaltet. Unter der Annahme, daß das Flipflop 227 (Steuerbit D-12) rückgestellt und das UND-Glied 225 eingeschaltet ist, gibt das letztere ein Signal über eine Leitung 226 und das ODER-Glied 170 an die Block3chaltung 171 ab) die die absolute Adresse des Operanden errechnen läßt«
Falls dagegen das Flipflop 227 {Steuerbit D-12) gesetzt ist, wird das UND-Glied 225 abgeschaltet und das UND-Glied 232 eingeschaltet. In diesem Falle wird das vom UND-Glied 232 abgegebene Signal über eine Leitung 233 und das ODER-Glied 212 in die Blockschaltung 213 hineingeleitet, die zur Errechnung der absoluten Adresse des Operanden unter Verwendung der Wörter aus dem PSRU- und PSRUE-Register anspricht. Die in der Blockschaltung 171 oder 213 errechnete absolute Adresse wird über das Kabel 173 in die Grensenbestinammgsschaltung 180 eingelassen, in der ein Vergleich mit den Grenzen im SLR- oder SLRU-Register (Block 181) stattfindet.
Falls die Grenzenprüfung positiv ausfälltt wird ein dieses Ergebnis anzeigendes Signal einem UND-Glied 182 zugeleitet, damit die absolute Adresse über das Kabel 175» dieses UND-Glied, ein weiteres Kabel 177 und das ODER-Glied 185 in die Schaltung 186 zur Ausführung eines Befehls gelangt. Falls die Grenzenprüfung ein negatives Ergebnis hat, läuft ein entsprechendes Signal von der Grenzenbestimmungsschaltung 180 über eine Leitung 298 zu einem UND-Glied 296, dessen Ausgangasignal über zwei Lei-
- 28 409838/0669
tungen 167 und 190 den UND-Gliedern 183 und 192 «ugeleitet , wird. Diese beiden UND-Glieder können aber nicht eingeschaltet werden· Das das negative Ergebnis anseigende Signal wird ferner von den Leitungen 187 und 190 je einer Eingangsklenme 241, 234, 248 bzw. 253 von UND-Gliedern 243, 238, 251 und 260 «ugeleitet. Im Löschzustand leitet das Steuerbit D-18 über eine andere Eingangsleitung 235 ein I-Signal den UND-Qliedern 243 und 238 su, während im gesetzten Zustand ein 1-Signal über eine Eingangeleitung 250 ssu den UND-Gliedern 251 und 260 gelangt. Dta UND-Glied 243 bzw. 238 wird in Abhängigkeit davon eingeschaltet, ob das Schutzbit gesetzt oder gelöscht ist» Im gelöschten Zustand des Schutzbit wird ein 1-Signal Über eine Leitung 237 an das UHD-Qlied 238 herangeführt, das.die errechnete absolute Adresse über das Kabel 236, ein weiteres Kabel 240 und das ODER-Glied 185 zur logischen Schaltung 186 zwecks Ausführung eines Befehls hindurchtreten läßt.
Venn das Schutsbit dagegen geeetst ist, wird ein 1-Signal über eine Leitung 242 dem UND-Glied 243 ^geführt, wodurch an allen Eingangsklenaaen ©in Signal liegt und über eine Leitung 294 das entsprechende Ausgangssignal zu einen ODER-Glied 194 und einer logischen Schaltung 195 sur Schutsunterbrechung gelangt» Venn das Sehutabit geeetst und das UND-Glied 243 eingeschaltet ist, ist das UND-Glied 238 stillgelegt, da der Leitung 237 «in 0-3ig« rtal aufgeprägt ist.
- 29 -409838/0669
Wenn das Steuerbit 0-18 geaetst let, kunnen die UMD-Qlitdtr und 236 nicht eingeschaltet werden. In Abhängigkeit daron, ob das Flipflop 167 (Anzeiger für das Sprungbit) gesetit oder geloscht ist, kann das UND-Glied 251 oder 260 eingeschaltet werden. Im Falle der Löschung erscheint ein 1-Signal an einer Eingangsklemme 255 des UND-Gliedes 260, das über eine Leitung 262 ein 1-Signal abgibt. Falls das Sprungbit (Flipflop 167) gesetst 1st, wird das 1-Signal dann einer Eingangsklenrae 247 des UND-Gliedes 251 zugeführt, das infolge «einer Einschaltung ein Signal über die Leitung 262 einer Blockschaltung 252 tür Auslosung des Steuerbit D-12 zuführt. Solange wie dta Steuerbit D-18 gesetzt ist, erscheint in der Leitung 262 stets ein Signal, da das UND-Glied 251 oder 260 eingeschaltet ist.
Das Schalten des Steuerbit D-12 erfolgt also stets, wenn der Befehl ein Sprungbefehl 1st, wie in Verbindung mit den Blöcken 157 und 160 der Figur 6 erläutert ist.
Die Buror erläuterte Schaltung führt die Funktionen aus, die in den Blöcken 145» 148, 149 und 154 der Figur 6 angegeben sind·
Das aus dem UND-Glied 251 oder 260 in die Leitung 262 eintretende Signal wird auch au einem Eingang 70η UND-Gliedern 265 und 266 und über eine Leitung 263 zur Rückstellklemme eines Flipflop 264 geleitet. Das letztere befindet sich normalerweise In gesetaten Zustand, wodurch die UND-Glieder 251 und 260 einge-
- 30 -409838/0669
»ehaltet und die ÜND-Qlledsr 281 und 290 gesperrt werden« Xn zurückgestellten Zustand des Flipflop 264 sind jedoch di· UID- Glieder 251 und 260 gesperrt; so da8 sie selbst dann nicht eingeschaltet werden können, wenn das Steuerbit D-18 gesetst ist· Per .Grund, die UND-Glieder 251 und 260 zu sperren/ besteht darin» daS keine Wiederholung erfolgen darf, falls die Prüfung der Grensen unter Verwendung der beiden Zustandsregister negativ ausfällt, während der zweite Hauptweg verfolgt wird.
Nun sei die Punktion zweier am Eingang der ÜND-Qlieder 265 und 266 liegender Flipflope 268 und 269 betrachtet* Das eine wird in dem Augenblick gesetzt, in dem eines dw beiden UND-Qlieder 225 oder 232 ein Sehaltsignal erhalt. Wenn also das UND-Glied 232 eingeschaltet wird, wird das Flipflop 268 gesetst, bsw. Wenn das UND-Glied 225 eingeschaltet wird, wird das Flipflop 269 gesetit. Mit d@m Setsen des Flipflop 268 oder 269 enpflngt das UND-Glied 26f od@i° 266 ©in Sohaltsign&lp von dem es eingeschaltet werden kann, wenn späterhin ein Signal au® den UND-Glied 251 oder 260 über die Leitung 262 und ®iae Bingangsleitung 263f bsw. 264* BU ihm herangeführt wird*
Wie beachtet sei? wird von d©» in der Leitung 26a auftretenden Signal nur das UMD-Glied 265 oder 266 erregt. Ba@ voa UMD-Qlled ^65 abgegebene Signal wird über das ODIR-Qlied 170 der Blockschaltung 171 zugeleitet, wfthrend das vom eingeschalteten UMD-Glied 232 gelieferte Signal über ein ODSfUGlied 212 sur Block-
409838/0669
schaltung 213 lauft. In ähnlicher Weise gelangt das ro« UMD-Glied 266 abgegebene Signal über das ODER-Glied 212 jsur Blockschaltung 213, während das Signal des UND-Gliedes 225 über das ODER-Glied 170 zur Blockschaltung 171 geführt wird. Somit wählen die UND-Glieder 265 und 266 das jeweils andere Zustanderegister gegenüber demjenigen aus, das benutzt wurde, als das erste Mal die absolute Adresse in der logischen Biockshhaltung 171 oder 213 berechnet wurde. Wenn die erste Berechnung der absoluten Adresse beispielsweise in der logischen Blockschaltung 171 deswegen erfolgte, weil das UND-Glied 225 eingeschaltet wurde, und die Prüfung der Grenxen anschließend negativ ausfiel, erregt das vom UND-Glied 251 oder 260 sich ergebende Signal über die Leitung 262, die Eingangskleseae 264*» das UND-Glied 266 und das ODER-Glied 212 die Blockschaltung 213, so daß das PSRU-Register zur Berechnung der neuen absoluten Adresse auf dem zweiten Hauptweg durch die logische Schaltung benutzt wird. Die auf diese Weise errechnete, neue absolute Adresse wird über das Kabel 173 in die Grensenbeetiraungsschaltung 180 eingelassen, in der sie mit den Cremen in dta SLRU-Register (Block 161) verglichen wird. Falls die Qrenmenprüfung positiv ist, wird die errechnete, absolute Adresse über das UND-Glied 182, die Leitung 177 und das ODER-Glied 185 in die logische Schaltung 166 sur Ausführung des Befehle geleitet.
- 32 409838/0669
Falls jedoch die Adresse außerhalb der in dem SLRÜ-Regieter f·- speicherten Grenzen liegen sollte, wird von der Qren*tnbeetiamungsschaltung 180 ein Signal über die Leitung 298, das UND-Glied 296,- die Leitungen 187, 190, 280 bzw. 292 in die UND-Glieder 281 und 290 eingelassen. Da sich das Flipflop 264 lugleich im gelöschten Zustand befindet, erscheint in den Eingangsleitungen 302 und 291 der UND-Glieder 281 und 290 ein !-Signal.
Wenn das Schutzbit gesetzt ist, liegt ebenfalls ein 1-Signal an der Eingangsklemme 301 des UND-Gliedes 281, wodurch dieses eingeschaltet wird. Das vom UND-Glied 281 abgegebene Signal läuft durch eine Leitung 282 und das ODER-Glied 194 zur logischen Schaltung 195 für die SchUtzunterbrechung.
Wenn dagegen das Schutzbit gelöscht ist, liegt an der Eingang·- leitung 402 ein 1-Signal, und das UND-Glied 290 wird eingeschaltet, wodurch über die Leitung 294 und das ODER-Glied 185 ein Signal der logischen Schaltung 186 zur Ausführung des Befehls zugeführt wird·
Keines der vier UND-Glieder 243, 238, 251 und 260 kann von den das negative Ergebnis der GrenzenprUfung anzeigenden Signal aus der Grenzenbestimmungsschaltung 180 eingeschaltet werden. Im . Löschzustand des Flipflop 264 sind nämlich die UND-Glieder und 260 und im Löachzustand des Steuerbit D-18 die UND-Glieder 243 und 238 abgeschaltet.
- 33 -409838/0669
Beim nftchsten Ausgangssignal des. UND-Oliedes 222, das den nächsten Befehl darstellt, der in den zweiten Hauptweg des Systems hineinläuft, wird über eine Leitung ?03 das Flipflop 264 g·- 3etzt. Wenn das Flipflop 258 od$r 269 gesetzt wird, wird das Flipflop 264 zurückgestellt, da ihm ein Ausgangesignal des UHD* Qliedas 265 oder 266 zugeführt wird; auf diese Weis· kehren die Flipflops 268 und 269 stets in ihren Löschzuatand zurück, damit sie anschließend von einem Signal aus dem UND-Glied 225 oder 232 gesetzt werden können.
In der Figur 8 ist ein Taktgeber 315 mit zwei Zählern 316 und 317 dargestellt, die je bis 4 zahlen, also tatsächlich durch teilen. Insbesondere erzeugt der Zähler 316 Folgen von vier Pulsen t-, - t, , die als Nebentaktpulse bezeichnet seien. Der Nebentaktpuls t, wird dem Zähler 317 zugeleitet, der seinerseits vier Haupttaktpulse C1 bis C^ hervorbringt; daher wird für je vier Nebentaktpulse ein Haupttaktpuls erzeugt. In einer Auftragung 318 sind zeitliche Besiehungen »wischen den Neben- und Haupttaktpulsen dargestellt.
Die Neben- und Haupttaktpulse werden in der logischen Schaltung der Figur 7 aur Steuerung der aufeinanderfolgend« Schaltvorgänge verwendet. Mit dem Auftreten der Taktpulse C^t1 wird jedesmal das UND-Olied I63 eingeschaltet. Beia nächsten Nebentaktpuls C3^t2 wird das UND-Glied I66 oder 210 geschaltet. Die folgende Aufzählung zeigt die in der logischen Schaltung der
- 34 -409838/0669
Figur 7 ablaufenden.Schaltvorgänge während eines vollständigen Arbeitsganges.
In den Schaltbild der Figur 7 ist ein Teil der üblichen StroB-kreise sum Betätigen der Torschaltungen mit Hilfe der Taktpuls· weggelassen, da diese für die Erläuterung der Erfindung nicht awingend notwendig sind.
ERSTER HAUPTWEG
C1t1 Einschalten des UND-Gliedes 163 (Block 126 der Figur
C1t2 Einschalten des UND-Gliedes 166 oder 210 und Abändern der relativen Adresse des Operanden zur Bildung der absoluten Adressen in den Blöcken 171 oder 213 (Block© 129, 131 und 132 der Figur 6)
C^t- Einschalten des UND-Gliedes 182 ©der 296 bei der Prüfung der Speichergrenzen in der Grenzenbeetiaaungsschaltung ISO und im SLRU-Register des Blockes 181 (Block 134 der Figur 6)
G3Jt. Einachalten des UND-Gliedes 183 oder 192, um die logische Schaltung 186 zur Ausführung des Befehls oder die logische Schaltung 195 aur Schutsunterbrechung au erregen (Blöcke 140, 139 und 142 der Figur
- 35 -409 83 8/0 669
ZWEITER HATJPTWEG Einschalten des UND-Gliedes 222 (Block 126 der Figur
6)
Einschalten des UND-Gliedes 225 oder 232 und Abändern der relativen Adresse des Operanden im Block 171 oder 213, um die absoluten Adressen zu bilden; (Blöcke 145, 148 und 149 der Figur 6)
Einschalten des UND-Gliedes 182 oder 296 bei der Prüfung der Speichergrenzen in der Grenzenbeetinnringaschaltung 180 und im SLRU-Register des Blökktie 181 (Block 151 der Figur 6)
Einschalten eines UND-Gliedes 243ι 238, 251 oder 263 für die Ausfuhrung des Befehls in der logischen Schaltung 186, für die Erregung der logischen Schaltung 195 zur Schutzunterbrechung oder sum automatischen Umschalten des Zustandsregisters (Blöcke 154» HO, 139, 142 und 157 der Figur 6)
Einschalten des UND-Gliedes 265 oder 266 sum Abändern der relativen Adresse des Operanden unter Verwendung des anderen Zuatandsregisters bei der Bildung der absoluten Adressen in den Blockschaltungen 171 und 213 (Block l6l der Figur 6)
- 36 -409838/0639
C2t2 Einschalten des UND-Gliedes 182 oder 296 bei d«r Prüfung der Speichergrenzen in der Qrenzenbestinmungeschaltung 180 und im SLRU-Register des Blockes 181 (Block 134 der Figur 6)
C2t3 Einschalten des.UND-Gliedes 281 oder 290 für die Erregung der logischen Schaltung 186, die den Befehl .ausführt, oder der logischen Schaltung 195 eur Schutsunterbrechung (Blöcke 139 und H2 in Figur 6)
Zuvor ist eine Einrichtung für selbsttätige Änderungen der Zustandsregister (PSR- und PSRU-Register) in der Rechenanlage erläutert, wenn der relative Teil der absoluten Adresse! die vom Basiswert in einem der Zustandsreglster gebildet ist, nicht in die vorgeschriebenen Grenzen hineinfällt. Eine logische Schaltung spricht auf das negative Ergebnis dieser Prüfung an, um die Zustandsregister selbsttätig umzuschalten und die absolute Adresse unter Verwendung des Basiswertes in dem anderen Zustandsreglster erneut zu berechnen^ srorauf eine weitere Grenzenprüfung unter Verwendung von anderen vorgegebenen Grenzen erfolgt» Nach den beiden Grenzenprüfungen wird ein Schutzbit geprüft, das, wenn gelöscht, die Ausführung des Befehls außerhalb der vorgegebenen Grenzen ermöglicht* Wenn ein Sprungbefehl vorliegt, er-•folgt Ue Umschaltung der Zustandsregiste-r solange, bis der nächste Sprungbefehl auftritt, der eine aitiom&fci&Ghe Umschaltung der Zustandsregister notwendig macht.
' - 37 ~
409838/0669

Claims (6)

  1. SPERRT RAIiD CORPORATION - 3#* 3· November 2$$ 4431
    ERÄ-1986 feeOHQCMBÖHrl P 150024
    PATENTÄNSPRÜGHE
    iy Steuerschaltung zum bereichsweisen Adressieren des Hauptspeichers eines Rechenautomaten, in der die relativen Basisadresseh mehrerer aufeinanderfolgender Befehlswörter mit den in zumindest einem Zustandsregister enthaltenen Adressenkonstanten zur Bildung der
    additiv
    absuluten Adressen/verknüpft werden, deren eine Komponente wenigstens einer Vergleichsschaltung zugeführt wirdj die unter Mitwirkung eines dem Zustandsregister zugeordneten Speichergrenzen-Registeraein JA- oder NEIN-Signal in Abhängigkeit davon abgibt, ob die gebildete absolute Adresse in den vom Speichergrenzen-Register festgesetzten Speicherbereich fällt, dadurch gekennzeichnet, daß die relativen Basisadressen einer von zwei parallelen, additiven Verknüpfungsschaltungen (171ι 213) zuführbar sind, die mit jeweils einem anderen Zustandsregister (PSR- oder PSRU-Register) zusammenwirken, denen je ein anderes Speichergrenzen-Itegister (SLR- cder SLRU-Register) zugeordnet ist, und daß durch ein in einem Befehlswort enthaltenes Steuerbit (i) oder Sprungbit die Eingangsschaltung der beiden additiven Verknüpfungsschaltungen (171, 213) derart umschaltbar ist, daß die bislang wirksame Verknüpfungsschaltung inaktiviert und die andere aktiviert wird.
  2. 2. Steuerschaltung zum bereichsweisen Adressieren des Hauptspeichers eines Rechenautomaten, in der die relative Baaisadresse eines Befehlswortes mit den in zumindest einem Zustandsregister enthaltenen Adressenkonstanten zur Bildung der absoluten Adresse additiv verknüpft wird, deren eine Komponente wenigstens einer Vergleichsschaltung zugeführt wird, die unter Mitwirkung eines dem Zustandsregister zugeordneten Speichergrenzen-Registers ein JA- oder NEIN-Signal in Abhängigkeit davon abgibt, ob die gebildete absolute Adresse in den vom Speichergrenzeh-Register festgesetzten Bereich fällt, dadurch gekennzeichnet, daß die relative Basisadresse einer von zwei parallelen, additiven Verknüpfungaschaltungeri (171, 213) zuführbar ist, die mit jeweils einem anderen Zustandsregister (PSR- bzw. PSRU-Register) zusammenwirken, denen je ein anderes Speichergrenzen-Register (SLR- oder SLRU-Register) zugeordnet iat,
    409838/0669
    ORIGINAL INSPECTED
    .2.
    235*431
    daß das NEIN-Signal zur Eingangsschaltung der beiden additiven Veiv knüpfungsschaltungen (171, 213) zurückführbar ist, und daß "rom *urückgeführten NEIN-Signal die Eingangsschaltung der beiden additiven Verknüpfungssehaltungen (171, 213) derart umschaltbar ist, daß die bislang.wirksame Verknüpfungsschaltuig inaktiviert und die andere für eine weitere additive Verknüpfung der zugeführten relativen Basisadreese mit den Adressenkonstanten des anderen Zustandsregisters aktiviert wird. ■ .
  3. 3. Steuerschaltung nach dem Anspruch 2,dadurch gek e η nz'ei c hn e t, daß vom zurückgeführten NEIN-Signal eine Sperre (264) betätigbar ist, die die Rückführung eines aweiten, dem ersten NEIN-Signal nachfolgenden NEIN-Signals unterbindet.
  4. 4. Steuerschaltung nach dem Anspruch 1 oder 3, dadurch gekennzeichnet, daßdas NEIN-Signal, dessen Rückführung zur,Eingangsschaltung der beiden additiven Verknüpfungsschaltungen (171, 213) unterbunden ist, einer Schaltung (195) zuführbar ist, von der ein Schutzunterbrechungssignal erzeugt wird.
  5. 5. Steuerschaltung nach dem Anspruch 1, dadurch g e k e η η ζ e i c h. η e t, daß von einem Sprungbit eines Sprungbefehls und vom ΝΕΙΪί-Signal eine Schaltung (252) erregbar ist, die ein Steuer-, bit (D-12) innerhalb des einen Zustandsregisters (PSRE-Registers) auslöst, von dem die Eingangsschaltung der additiven Verknüpfungsschaltungen (171, 213) derart betätigt wird, daß die relativen Basisadressen der nachfolgenden Befehlswörter nur derjenigen additiven Verknüpfungsschaltung (213) zuführbar sind, die mit dem anderen Zustandsregister (PSRU- oder PSRUE-Register) zusammenwirkt, dem Steuerbits fehlen.
  6. 6 c Steuerschaltung nach dem Anspruch 5, dadurch ge. ksaaseichnet, daß die Schaltung (252) von einem nachfolgenden Sprungbefehl zurückstellbar ist.
    409838/0169
DE19732354431 1972-11-08 1973-10-31 Schaltung zum bereichsweisen Adressieren der Speicherzellen einer Rechenanlage mit Hilfe eines aus Operationsund Adreßteil aufgebauten Befehlswortes Expired DE2354431C3 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US00304696A US3815101A (en) 1972-11-08 1972-11-08 Processor state and storage limits register auto-switch
US30469672 1972-11-08

Publications (3)

Publication Number Publication Date
DE2354431A1 true DE2354431A1 (de) 1974-09-19
DE2354431B2 DE2354431B2 (de) 1977-01-27
DE2354431C3 DE2354431C3 (de) 1977-09-15

Family

ID=

Also Published As

Publication number Publication date
JPS4996651A (de) 1974-09-12
NL7315346A (de) 1974-05-10
GB1454402A (en) 1976-11-03
JPS5642012B2 (de) 1981-10-01
IT999291B (it) 1976-02-20
US3815101A (en) 1974-06-04
SE402168B (sv) 1978-06-19
DE2354431B2 (de) 1977-01-27
FR2206013A5 (de) 1974-05-31
CA1006272A (en) 1977-03-01
AU6111673A (en) 1975-04-10
CH584428A5 (de) 1977-01-31

Similar Documents

Publication Publication Date Title
DE2714805C2 (de)
DE1928202C3 (de) Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen
DE2023354C2 (de) Datenverarbeitungsanlage mit einem Mikrobefehlsspeicher
EP0685086B1 (de) Einrichtung zur automatischen erzeugung einer wissensbasis für ein diagnose-expertensystem
DE1524239A1 (de) Verfahren zur Lokalisierung eines Fehlers in einer Anlage mit mindestens zwei parallel arbeitenden Rechengeraeten
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2225841C3 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
DE2400064A1 (de) Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem
DE2054835A1 (de) Prozessor fur ein Informationsver arbeitungssystem und ein Betriebsver fahren fur diesen Prozessor
DE102006039747A1 (de) Verfahren für Kontextzustandsmanagement
DE2145709A1 (de) Datenverarbeitungsanlage
DE1935944C3 (de) Steuereinrichtung in einer elektronischen Datenverarbeitungsanlage
DE2336020B2 (de) Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme
DE102005040916A1 (de) Speicheranordnung und Betriebsverfahren dafür
DE2357654C2 (de) Assoziativspeicher
DE2064473A1 (de)
DE1191145B (de) Elektronische Zifferrechenmaschine
DE2354431A1 (de) Automatischer schalter fuer die register, die eine information ueber den zustand der rechenanlage und die bereichsgrenzen ihres hauptspeichers enthalten
DE2057587A1 (de) Inhaltsadressierter Speicher
DE1806172A1 (de) Prioritaetsschaltung
DE2402875A1 (de) Steuersystem, insbesondere fuer verriegelungseinrichtungen fuer den eisenbahnbetrieb
DE2354431C3 (de) Schaltung zum bereichsweisen Adressieren der Speicherzellen einer Rechenanlage mit Hilfe eines aus Operationsund Adreßteil aufgebauten Befehlswortes
DE3607241A1 (de) Rechner
DE1774866C3 (de) Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenen, gesuchten Information
DE1195972B (de) Anordnung zum Durchfuehren einer Verzweigung bei einer programmgesteuerten Rechenmaschine

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
EGA New person/name/address of the applicant
8339 Ceased/non-payment of the annual fee