DE1449532C3 - - Google Patents

Info

Publication number
DE1449532C3
DE1449532C3 DE1449532A DEB0074488A DE1449532C3 DE 1449532 C3 DE1449532 C3 DE 1449532C3 DE 1449532 A DE1449532 A DE 1449532A DE B0074488 A DEB0074488 A DE B0074488A DE 1449532 C3 DE1449532 C3 DE 1449532C3
Authority
DE
Germany
Prior art keywords
memory
register
input
units
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE1449532A
Other languages
English (en)
Other versions
DE1449532A1 (de
DE1449532B2 (de
Inventor
James Peter Flourtown Anderson
Samuel Abraham Philadelphia Hoffman
Lucile Elizabeth Ardmore Mott
Stanley Joseph Norristown Pezely
Josef Villanova Shifman
John Adams Exton Wilkinson
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.)
Unisys Corp
Original Assignee
Burroughs 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 Burroughs Corp filed Critical Burroughs Corp
Publication of DE1449532A1 publication Critical patent/DE1449532A1/de
Publication of DE1449532B2 publication Critical patent/DE1449532B2/de
Application granted granted Critical
Publication of DE1449532C3 publication Critical patent/DE1449532C3/de
Granted 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05FSYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
    • G05F1/00Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
    • G05F1/10Regulating voltage or current
    • G05F1/46Regulating voltage or current wherein the variable actually regulated by the final control device is dc
    • G05F1/56Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices
    • G05F1/565Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices sensing a condition of the system or its load in addition to means responsive to deviations in the output of the system, e.g. current, voltage, power factor
    • G05F1/569Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices sensing a condition of the system or its load in addition to means responsive to deviations in the output of the system, e.g. current, voltage, power factor for protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0175Coupling arrangements; Interface arrangements
    • H03K19/018Coupling arrangements; Interface arrangements using bipolar transistors only
    • H03K19/01806Interface arrangements
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/26Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of bipolar transistors with internal or external positive feedback
    • H03K3/30Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of bipolar transistors with internal or external positive feedback using a transformer for feedback, e.g. blocking oscillator

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Power Engineering (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Multi Processors (AREA)
  • Storage Device Security (AREA)
  • Devices For Executing Special Programs (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)

Description

Die Erfindung betrifft eine Datenverarbeitungsanlage nach dem Oberbegriff des Anspruches 1.
Eine Datenverarbeitungsanlage mit zwei gleichen Prozessoren, denen jeweils zwei Speicher zugeordnet sind, ist bekannt aus der Literaturstelle »The Organization of MOBIDIC Β« in »1959, Proceedings of the Eastern Joint Computer Conference«, S. 101 bis 107. Dort ist auf Seite 103 ein Blockschaltbild einer Datenverarbeitungsanlage dargestellt, welche zwei gleiche Prozessoren aufweist, die von einem gemeinsamen Taktgeber gesteuert werden, wenn sie zusammenarbeiten. Jeder dieser Prozessoren hat mindestens einen »privaten« Kernspeicher, der auch die meisten Register dieses Prozessors enthält, z. B. den Akkumulator, den Programmzähler und die Indexregister. Gegebenenfalls können auch bis zu vier solcher Kernspeicher pro Prozessor verwendet werden. Beide Prozessoren arbeiten über eine gemeinsame System-Sammelleitung, die im Zeitmultiplexverfahren gemeinsam benutzt wird, und zwar wird diese Sammelleitung jeweils zwei Mikrosekunden lang vom einen
ίο und zwei Mikrosekunden lang vom anderen Prozessor benutzt. Ferner ist eine Anzahl von gemeinsamen Eingabe-Ausgabe-Geräten vorhanden, die von beiden Prozessoren gemeinsam benutzt werden. — Im Betrieb werden die beiden Prozessoren dieser bekannten Anlage entweder dazu verwendet, um aus Gründen der erhöhten Sicherheit dieselben Berechnungen doppelt auszuführen, oder sie arbeiten in einer Art von Parallelbetrieb, wobei ein Prozessor dem anderen übergeordnet wird. Wie auf Seite 106 der Litera-
ao turstelle ausgeführt wird, wäre es bei dieser Datenverarbeitungsanlage schwierig, die Anzahl der Prozessoren über zwei hinaus zu erhöhen, da durch den Zeitmultiplexbetrieb auf der gemeinsamen Sammelleitung hierbei schwierige Probleme entstehen. Auch
a5 wird bei Ausfall der Steuerung des Zeitmultiplexers die gesamte Anlage lahmgelegt. Ferner liegt ein wesentlicher Nachteil dieser bekannten Datenverarbeitungsanlage darin, daß beim Ausfall eines Prozessors auch der gesamte Inhalt seines »privaten« Kernspeichers bzw. seiner »privaten« Kernspeicher verlorengeht, und daß ein Zugriff des einen Prozessors zu einem Kernspeicher des anderen Prozessors nur dadurch möglich ist, daß man die gewünschte Information aus diesem Kernspeicher zunächst auf ein äußeres Speichermedium, z. B. ein Magnetband, überträgt, und dann von diesem Magnetband eine Rückübertragung zum Kernspeicher des einen Prozessors vornimmt (S. 105 der Literaturstelle). Eine solche Übertragung erfordert ersichtlich sehr viel Zeit und zwingt deshalb in der Praxis dazu, alle wichtigen und häufig benötigten Daten doppelt zu speichern, damit jeder Prozessor einen direkten Zugriff zu ihnen hat. Dies stellt aber eine sehr schlechte Ausnutzung der Kernspeicher dar.
In dem Aufsatz »Computer Design from the Programmer's View Point« aus Proceedings of the Eastern Joint Computer Conference, 1959, Seiten 46 bis 51 ist eine unter dem Namen Ultradatic bekanntgewordene Datenverarbeitungsanlage beschrieben,
bei der mehrere Gruppen aus jeweils gleichartigen arithmetischen Einheiten sowie mehrere parallelgeschaltete Ein/Ausgabe-Einheiten parallel an eine mit einer Vielzahl von parallelgeschalteten Speichereinheiten gekoppelten Speichersammelleitung verbunden
sind. Die Kooperation der arithmetischen Einheiten untereinander sowie mit den Ein/Ausgabe-Einheiten regeln mehrere Steuereinheiten, während der Datenverkehr zwischen den arithmetischen Einheiten einerseits und den Ein/Ausgabe-Einheiten andererseits mit
den Speichereinheiten eine Supervisory Control auf der Grundlage vorgegebener Prioritäten steuert. Diese Anlage hat den Nachteil, daß umfangreiche Steuereinrichtungen notwendig sind, um den Informationsfluß zwischen den Einheiten nicht nur konfliktfrei und nach vorgegebener Ordnung, sondern vor allem auch so zu regeln, daß alle Einheiten entsprechend ihrer Arbeitsgeschwindigkeit einigermaßen gleichmäßig ausgelastet sind. In der gleichen Zeitschrift ist
im gleichen Jahrgang auf den Seiten 82 bis 93 der zu 10 zusätzlichen E/A-Steuereinheiten und bis zu sogenannte STRETCH-Computer erläutert, bei dem 64 zusätzlichen Eingabe- und Ausgabegeräten darzur Steuerung des Informationsflusses zwischen nur stellt,
einer arithmetischen Einheit und mehreren Speicher- F i g. 3 die Zuordnung der F i g. 3 A und 3 B zu-
einheiten und Ein/Ausgabe-Steuereinheiten über eine 5 einander; dabei stellen die Fig. 3A und 3B gemein-Speichersammelleitung ein sogenannter virtueller sam ein Verdrahtungs- und Blockschaltbild der AnSpeicher vorgesehen ist, der die für die sehr schnell lage nach F i g. 2 dar, welche die bevorzugte Ausarbeitende arithmetische Einheit benötigten Daten führungsform der Erfindung wiedergibt, rechtzeitig aus den Speichereinheiten bereitstellt und Fig. 4 die Zuordnung der Fig. 4A und 4B zu-
nach Verwendung wieder an diese verteilt. Bei einer io einander; dabei stellen diese Figuren ein Blockschalt-Anlage mit mehreren schnell arbeitenden und unab- bild eines der bei der bevorzugten Ausführungsform hängigen arithmetischen Einheiten oder Prozessoren der Erfindung verwendeten Prozessoren dar, ist dann ein entsprechend großer virtueller Speicher F i g. 5 die Zuordnung der F i g. 5 A, 5 B, 5 C und
zur Anpassung an die relativ langsame Datenüber- 5 D zueinander; dabei stellen diese Figuren ein Blocktragung über die Sammelleitung erforderlich. Da- 15 schaltbild einer der Speichereinheiten dar, welche bei durch steigen nicht nur die Kosten der Anlage, ohne der bevorzugten Ausführungsform der Erfindung verdaß zusätzlicher Speicherraum gewonnen wird, son- wendet werden,
dem die Steuerung wird entsprechend komplizierter. F i g. 6 ein Schaltbild der Schaltung für die Über-
In der Zeitschrift »Elektronische Rechenanlagen« tragung zwischen Datenquellen und Empfängerein-Band 1, 1959, Heft 2, S. 60 bis 67 ist der elektro- 20 heiten und hierfür die Übertragung zwischen den nische Rechenautomat ER 56 beschrieben, bei dem verschiedenen Baueinheiten,
ein Rechenwerk sowie mehrere Peripheriegeräte über Fi g. 7 ein teilweise als Blockschaltbild dargestelleinen elektronischen Koordinatenschalter mit einem tes Schaltbild der Takt- oder Zeitgeberanlage der in mehrere Speichereinheiten gegliederten Ferritkern- dargestellten Ausführungsform der Erfindung, welspeicher unter Steuerung eines Kommandowerkes 25 ches zur Vereinfachung Haupt- und Nebentaktgeber verbunden sind. An den Kreuzungsstellen der jedem und Zwischenverbindungen für eine unvollständige der Werke einzeln zugeordneten Sammel-Übertrr,- Anlage darstellt,
gungsleitungen mit je einer jeder Speichereinheit zu- Fig. 8 die Zuordnung der Fig. 8A und 8B zugeordneten Leitung sind elektronische Schalter vorge- einander; diese Figuren bilden gemeinsam ein Blocksehen, deren Durchschalten vom Kommandowerk ge- 30 schaltbild der beispielsweisen Ausführungsform der steuert wird. Zwar erlaubt der elektronische Koordi- Anlage nach F i g. 2 und ihrer möglichen Zusammennatenschalter dem Benutzer des Automaten den Anschluß verschiedener Werke nach Wahl an die Speichereinheiten, jedoch muß bei Veränderungen die
Programmstruktur des Kommandowerkes entspre- 35
chend umgestellt werden.
Der Erfindung liegt daher die Aufgabe zugrunde,
die Datenverarbeitungsanlage so auszubilden, daß
der Datenverkehr mit den Speichereinheiten ohne
zentrale Prioritätssteuerung durchführbar ist. 40 zeichnerische Darstellung zu vereinfachen,
Die Lösung ermöglicht die in dem Anspruch 1 Fig. 9B ein Blockschaltbild der Verbindungen
gekennzeichnete Datenverarbeitungsanlage, deren zweckmäßige Ausgestaltungen in den Unteransprüchen definiert sind.
Die Erfindung ermöglicht einen voll-modularen 45
Aufbau der gesamten Anlage, bei der eine zentrale
Steuerung der Verbindungen mittels eines elektronischen Koordinatenschalters entfällt. Jede Speichereinheit bestimmt selbständig über die Verbindungsannahme und die Priorität der Anforderung, die in so bei der Übersichtlichkeit halber eine geringere Anjedem der Speichermoduln in anderer Ordnung aus- zahl von Baueinheiten dargestellt ist als bei der vollgestaltet sein kann.
In der folgenden Beschreibung werden statt des Ausdrucks »Eingabe und/oder Ausgabe« die Abkürzungen E/A verwendet, z. B. E/A-Steuereinheit. 55 Soweit möglich, werden ferner die Begriffe nach DIN 44 300, Entwurf vom 31.1. 1969, verwendet.
Nachfolgend wird ein Ausführugsbeispiel der Erfindung an Hand der Zeichnungen näher beschrieben.
In der Zeichnung ist 60 eine graphische Darstellung des zeitlichen Verlaufs
F i g. 1 eine teilweise schaubildliche und teilweise der Signale im Speicher für die dargestellte Ausfühschematische Darstellung einer Ausführungsform der rungsform der Datenverarbeitungsanlage, Erfindung, F i g. 15 ein Block- und logisches Schaltbild der
F i g. 2 ein Blochschaltbild einer Ausführungsform Empfängereinheiten im Eingangsteil der Speicherder Erfindung, in dem die Anlage nach Fig. 1 in 65 einheit nach Fig. 5,
ihrer Größe erweitert wiedergegeben ist und bei der Fig. 16 ein logisches Schaltbild des Sammelüber-
der Pfeil die Wählmöglichkeiten für einen vierten tragungs-Mischkreises der Speichereinheit nach Prozessor oder eine zweite E/A-Vermittlung mit bis F i g. 5,
Stellungen, wobei das Blockschaltbild mehr Einzelheiten zeigt und auch die E/A-Vermittlung und die Umsetzer in Blockform wiedergibt;
Fig. 9A ein Blockschaltbild der Speicher-Taktgeberleitungen, die die Baueinheiten einer Ausführungsform der Erfindung miteinander verbinden, wobei die dargestellte Anzahl der Baueinheiten geringer ist als diejenige in einer vollständigen Anlage, um die
ih
g g
der Prozessor-Taktgeberleitungen zwischen den Baueinheiten der Anlage gemäß F i g. 9 A,
F i g. 9 C zeigt die zugehörige Legende,
Fig. 10 ein Blockschaltbild der Taktgeberanlage, Fig. 11 ein Blockschaltbild zur Erläuterung der örtlichen Leitungsführungen und Zwischenverbindungen zu den Flipflops der Anlage und des Abschlusses für eine Taktgeberanlage nach F i g. 7, wo-
ständigen Anlage vorhanden wäre,
Fig. 12 ein Schaltbild der Speicher-Diodenmatrix in der Speichereinheit nach der Erfindung,
Fig. 13 ein Schalt- und Blockschaltbild des inneren Speicheraufbaus der Speichereinheit nach Fig. 5A bis 5D,
Fig. 14 die Zuordnung der Fig. 14A und 14B zueinander; hierbei bilden diese Figuren zusammen
Fig. 17 die Zuordnung der Fig. 17A und 17B zueinander; diese Figuren stellen zusammen den Adressenwähler der Speichereinheit nach F i g. 5 dar,
Fig. 18 die Zuordnung der Fig. 18A und 18B zueinander; diese Figuren zeigen zusammen den KoI-lisonslöser und die Sammelleitungs-Zähleinheit der Speichereinheit nach F i g. 5 A,
Fig. 19 die Zuordnung der Fig. 19A und 19B zueinander; diese Figuren zeigen zusammen die Kreuzungspunkt-Sammel-Leitungs-Signalschaltungen der Speichereinheit nach F i g. 5 A,
F i g. 20 ein logisches Schaltbild der Treiberschaltungen für die Speichereinheit nach F i g. 5,
Fig. 21 ein logisches Schaltbild des Zeitzähler-Steuerkreises der Speichereinheit nach F i g. 5 A,
F i g. 22 ein logisches Schaltbild des Speicher-Zeitzählers der Speichereinheit nach F i g. 5 A,
Fig. 23A und 23B die Kern-, Lese- und Schreib-Zeitgebersteuerkreiss der Speichereinheit nach Fig. 5C, wobei Fig. 23A ein logisches Schaltbild der Schaltung für den Beginn des Speicherlesezyklus und F i g. 23 B ein logisches Schaltbild der Schaltung für den Beginn des Speicherschreibzyklus darstellt,
F i g. 24 ein logisches Schaltbild der Registersteuereinheit der Speichereinheit nach F i g. 5 A,
Fig. 25 die Zuordnung der Fig. 25A und 25B zueinander; dabei bilden diese Figuren zusammen die ersten sechs Bits der Speichereingangsmatrix der Speichereinheit nach F i g. 5 D,
F i g. 26 ein logisches Schaltbild des Speicheradressenregisters der Speichereinheit nach F i g. 5 C,
F i g. 27 ein logisches Schaltbild der sechs höchstwertigen Bitschaltungen des Speicheradressenregister-Decodierers der Speichereinheit nach Fig. 5C,
F i g. 28 ein logisches Schaltbild der zwölf höchstwertigen Bits des Speicherinformationsregisters, die die Speicherinformationsregistersilbe A (MIR A) der Speienereinheit nach F i g. 5 D bilden,
F i g. 29 ein logisches Schaltbild der Speicherinformationsausgangsschaltung mit der Silben-Informationsausgangseinrichtung und der Informationsausgangsmischstufe der Speichereinheit nach Fig. 5D,
F i g. 30 ein Blockschaltbild einer E/A-Steuereinheit der dargestellten Ausführungsform der Erfindung,
Fig. 31 eine schematische Darstellung des Aufbaus eines Befehlskennwortes,
F i g. 32 eine schematische Darstellung des Aufbaus eines In-Bearbeitung-Kennwortes,
F i g. 33 eine schematische Darstellung des Aufbaus eines Einstell-Kennwortes,
F i g. 34 eine schematische Darstellung des Aufbaus eines Freigabe-Kennwortes,
• F i g. 35 eine schematische Darstellung des Aufbaus eines Ergebnis-Kennwortes,
F i g. 36 ein vereinfachtes Ablaufdiagramm des Flusses von Befehlen und Daten zwischen einer E/A-Steuereinheit und den anderen Arten von Baueinheiten und Geräten in der Anlage, wobei die ausgezogenen Linien den Befehlsfluß und die gestrichelten Linien den Datenfluß darstellen,
Fig. 37A und 37B ein Blockschaltbild bzw. logisches Schaltbild der automatischen Unterbrechungsanlage für die dargestellte Ausführungsform der erfindungsgemäßen Anlage und
Fig. 38 ein vereinfachtes Blockschaltbild der automatischen Unterbrechungsanlage nach den ,Fig. 37 A und 37B.
Die dargestellten Ausführungsformen der erfindungsgemäßen Datenverarbeitungsanlage sind schaubildlich in Fig. 1, im Blockschaltbild in Fig. 2 und in ihren Verdrahtungs- und Verbindungsplänen in F i g. 3 dargestellt. Im dargestellten Ausführungsbeispiel sind vier Prozessor-Moduleinheiten Pl, P 2, P3 und P 4, eine Schaltverriegelung 150, 16 Speichermoduleinheiten Ml bis M16, 10 Eingabe-Steuereinheiten E/A 1 bis E/A 10, 5 Verbindungssammelleitungen busl bis busS, eine erste E/A-Vermittlungseinheit 151 und eine Vielzahl von nicht bezifferten Eingabe- und Ausgabeeinheiten vorgesehen. Eine zweite E/A-Steuermoduleinheitengruppe (nicht beziffert) kann wechselweise in die Anlage an Stelle des Prozessors P 4 angeschlossen werden. Die Pro-
iS zessorenPl bis P 4 stehen über die Schaltverriegelung 150 mit den Speichermoduleinheiten Ml bis M16 in Übermittlungsverbindung. Die E/A-Steuereinheiten E/A 1 bis E/A 10 benutzen gemeinsam die Sammelleitung fei« 1. Diese E/A-Steuereinheiten stehen ferner über die Schaltverriegelung mit den 16 Speichermoduleinheiten Ml bis M16 in Übermittlungsverbindung. Wie durch die gestrichelten Linien in F i g. 1 gezeigt und wie in F i g. 2 und 3 angegeben ist, kann der vierte Prozessor P 4 und sein zugehöriger Sammelleitungsabschnitt, der zu ihm führt, weggelassen und eine Sammelleitung vorgesehen werden, durch die eine zweite Anzahl von 10 E/A-Steuereinheiten mit den Speichermoduleinheiten Ml bis MIO in Verbindung stehen. Zwischen die 10 E/A-Steuereinheiten E/A 1 bis E/A 10 und die 64 Eingabe- und Ausgabeeinheiten (nicht beziffert) ist die automatische E/A-Vermittlung 151 eingeschaltet.
Die Organisation der Anlage nach der Erfindung
gemäß Fig. 1, 2 und 3A mit 3B beruht auf dem Betriebssystem, das die Information verwendet, die im gemeinsam benutzten Speicher gespeichert ist. Das Betriebssystem wird durch die einzelnen Prozessoren jeweils insoweit betrieben, als das zur Be-Stimmung der Arbeitsverteilungen notwendig ist. Jeder Prozessor plant sich selbst, wobei er zeitweise Zwischenbeziehungen in der Zu- und Überordnung zu anderen Prozessoren herstellt, um eine optimale Bearbeitung von Paralleloperationen zu gewährleisten.
Gemäß F i g. 4 arbeitet das Rechenwerk 3030 des Prozessors parallel, empfängt jedoch Daten von der Schaltverriegelung 150 in serien-paralleler Form. Ein Dünnfilm-Speicherregister 3001 und Operandenstapel oder Kellerspeicher 3099 in jedem Prozessor arbeitet bei einer Taktfrequenz von 3 MHz und reduziert in großem Maße den erforderlichen Zugriff zu den Speichereinheiten M1 bis M16 (s. Fig. 2). Die Befehlsliste des Prozessors enthält binäre arithmetische Befehle für festes und gleitendes Komma, wobei die Rechnerorganisation auf Rechnen mit gleitendem Komma ausgerichtet ist. Der Adressieraufbau des Rechners weist die gesamte Leistungsfähigkeit eines 3-Adressen-Rechners auf, obwohl weniger als das Maximum von drei Adressen mit den Befehlen verarbeitet werden kann, wodurch eine erhebliche Ersparnis an Befehlszeit und an Programmspeicherung erzielt wird. Befehle werden angegeben durch die Verwendung von Reihen oder Ketten aus 12-Bit-Silben. Ein Programmbefehl kann entweder aus einer einzigen Operatorsilbe oder aus einer komplexen Silbenreihe bestehen. Vier Programmsilben werden in jeder Speicherzelle gespeichert, um eine
7 8
maximale Programm-Packungsdichte zu erzielen, je- Speicheradressensilbe enthält eine 11-Bit-Adresse und doch brauchen die einzelnen Befehle einer solchen ein Bit für indirektes Adressieren. Die Adresse wird Befehlsreihe nicht mit den normalen Wortgrenzen zum Inhalt eines 16-Bit-Grundadressenregisters im zusammenfallen. Dünnfilmspeicher addiert, um auf einen Bereich zu
Die Anlage nach der Erfindung paßt sich sofort 5 verweisen, der als Direkt-Adressenbereich bezeichnet Grundtakteinfiüssen, neuen Programmen, Wechseln werden kann.
in der Programmpriorität und manuellen oder auto- Der Inhalt der Direkt-Adressenbereichsstelle kann
matischen Unterbrechungssignalen an. entweder ein Operand oder eine andere Speicher-
Jedem Prozessor steht eine der Datenübertragungs- adresse sein. Auf diese Weise ist durch das beschriesammelleitungen bus! bis busS (Fig. 5B) aus- io bene Verfahren eine indirekte Adressierung von schließlich zu, durch die er über die Schaltverriege- einer ersten zu einer zweiten und zu einer η-ten Stufe lung 150 mit jeder Speichereinheit in der Anlage in möglich, wobei η irgendeine Zahl ist.
Verbindung treten kann. Die E/A-Steuereinheiten Jede der drei Operandenadressen, die für jeden
E/A 1 bis E/A 10 einer E/A-Vermittlung teilen sich Befehl entwickelt werden kann, kann durch drei von in eine einzelne Sammelleitung. Es sind 10 E/A- 15 15 Dünnfilmindexregistern modifiziert werden, die Steuereinheiten je E/A-Vermittlung in der dargestell- im Prozessor vorgesehen sind. Diese Möglichkeit, ten Ausführungsform gemäß Fig. 1, 2 und 3 und verbunden mit der Möglichkeit indirekten Adreszwei E/A-Vermittlungen vorhanden, davon jede auf sierens in der Anlage, ergibt eine flexible Adresseneiner besonderen Sammelleitung. Bei der dargestell- steuerung.
ten Ausführungsform liegt die zweite E/A-Vermitt- ao Eine Unterbrechungsanlage ermöglicht eine Unterlung an der Stelle eines vierten Prozessors und ist brechung des »normalen« Datenverarbeitungsbetriebs nach Wahl erhältlich. der Rechenanlage. Sie erkennt Unterbrechungsbedin-
Der Speicher kann gleichzeitig von allen Prozes- gungen, die durch das Programm oder durch Bausor- und E/A-Vermittlungs-Sammelleitungen benutzt teile erzeugt werden, die ihrerseits durch bei der Auswerden. Wenn zwei oder mehr Sammelleitungen 35 führung des Programms auftretende Situationen vergleichzeitig für dieselbe Speichermoduleinheit adres- ursacht werden. Sie erkennt manuell eingeleitete Ansieren, löst die Schaltverriegelung 150 automatisch rufe sowie äußere Anrufe für eine Verbindung mit die Kollision entsprechend der Priorität und bringt der Rechenanlage. Ferner erkennt sie Gerätefehler die Posten mit niedrigerer Priorität in eine Reihen- wie z. B. Paritätsfehler, unzulässige Operationen und folge. Eine Funktionssammelleitung erhält unmittel- 30 Netzausfall. Zugriff zur Unterbrechungsanlage wird baren Zugriff, während die anderen lediglich ver- gewonnen über ein Unterbrechungsregister 3002 zögert werden, bis die erste Speicherübertragung be- (Fig. 4B), das ein Bit für jede einzelne Unterendet ist. brechungsbedingung aufweist. Jeder Prozessor hat Die einzelnen Moduleinheiten und ihre Zwischen- Zugriff zum Unterbrechungsregister 3002 durch ein beziehungen werden im einzelnen noch genau be- 35 Maskenregister 3016. Das Unterbrechungs-Maskenschrieben; es folgt jetzt eine kurze Beschreibung der register 3016 in jedem Prozessor ist durch die auto-Moduleinheiten der Anlage zur Orientierung der An- matische Arbeits- und Planungssteuerung einstellbar, lagendarstellung. um anzuzeigen, welche Unterbrechungen ein Pro-Das Blockschaltbild eines Prozessors zeigen die zessor jeweils bearbeiten wird. Wenn ein Prozessor Fig. 4A und 4B. Operanden können alternativ vom 4» eine »Eins<< in einer Unterbrechungsregisterstelle Speicher oder von Operandenregistern 3099 inner- durch sein Maskenregister abfühlt, führt er sofort die halb des Dünnfilmspeichers 3001 abgerufen werden. entsprechende Unterbrechung aus.
Die Arbeitsergebnisse können im Speicher oder in Einzelheiten dieser im Rahmen der Erfindung verdem Operandenstapel oder Kellerspeicher 3099 ge- wendbaren Unterbrechungsemrichtung sind in der speichert werden für die nachfolgende Bearbeitung 45 DE-OS 14 49 529 beschrieben, auf die hier Bezug nach dem Programm genommen wird.
Der Operandenstapel 3099 des Prozesses ist außer- Jeder Prozessor weist fünf Funktionsbereiche auf.
ordentlich zweckmäßig für arithmetische und Be- Der erste besteht in einem Rechenwerk 3030 das aus arbeitungsoperationen. Er reduziert die Anzahl von einem A-Register 3033, einem B-Register 3031, einem Zugriffen zum Hauptspeicher dadurch, daß er Teil- 50 C-Register 3034 und einem Addierglied 3032 mit den oder Zwischenergebnisse der Rechnung festhält. zugehörigen Steuerungen aufgebaut ist. Der zweite Dieser Kellerspeicher 3099 arbeitet im Normal- und Bereich besteht aus einem Satz von Registern mit den im Haltebetrieb. Beim Normalbtrieb besteht die Ar- Oktalcoden 001 bis 157, die in einem kleinen Dünnbeitsweise in einem Letzter-Hinein-, Erster-Hinaus- filmspeicher 3001 enthalten sind. Der dritte Funk-Verfahren, bei dem der letzte in die Liste oder den 55 tionsbereich wird von dem Unterbefehlsmatnx- und Stapel eingegebene Posten der erste Posten ist, der Steuerbereich 3020 gebildet, der die Möglichkeit des für die Wiederaufnahme zugänglich ist. Diese Be- Indizierens, der Adressenakkumulation, der indirektriebsweise ist auch als »Nachschiebeliste« bekannt. ten Adressierung und des Phasenbetriebs einschließt, Die erste Silbe eines Programmbefehls liefert den und aus Zeitgeberkreisen sowie logischen Kreisen Operationscode und drei Adressenindikatoren. Die 60 zur Erzeugung von Befehlen und Unterbefehlen. Der Adressenindikatoren geben die Wahl zwischen dem vierte Bereich besteht aus einem Speicheraustausch-Holen oder dem Speichern im Operandenstapel oder bereich, der einen Dünnfilm-Pufferspeicher 3004, im Speicher. Sie zeigen ferner an, falls es sich um 3005, einen zentralen oder Hauptpufferspeicher 3006, den Stapel handelt, ob der Stapelbetrieb Normal- 3007, Addierglieder 3008, 3009 und Überwachungsoder Haltebetrieb sein soll, und sie zeigen an, ob die 65 kreise enthält. Ein fünfter Bereich dient dem Spei-Speicheradressen indiziert werden soll oder nicht. cherschutz und weist Begrenzungsregister 3012 und Adressensilben der Silbenreihe folgen der Operator- 3013 sowie Vergleichskreise 3010 und 3011 auf. Die silbe, und zwar eine für jeden Speicherzugriff. Jede Schaltungsanordnung arbeitet bei einer Taktfrequenz
von 3 MHz. Der Hauptpufferspeicher 3006, 3007 ist als Vielzweckregister vorgesehen.
Um eine Speicherübertragung einzuleiten, wird die Speicheradresse zum zentralen Pufferspeicher 3006, 3007 übertragen. Dieser stellt das L- und M-Register des Prozessors dar. Der Abschnitt dieser Adresse, der zur Bezeichnung einer Speichermoduleinheit verwendet wird, wird in Form von Gleichspannungspegeln zur Schaltverriegelung des Speicherzweiges gesendet.
Adressendaten für die Speichermoduleinheit und Datenwörter, welche dem Prozessor von der Speichermoduleinheit her zugeführt werden, werden durch den zentralen Pufferspeicher 3006, 3007 mit jeweils 12 Bits übertragen.
Das A-Register 3033, das B-Register 3031 und das C-Register 3034 sind die arbeitenden Rechenregister des Prozessors. Das Addierglied 3032, das A- und das B-Register 3033 und 3031 mit der zugehörigen Komplett- und Datenschaltungsanordnung führen die tatsächlichen Rechenoperationen aus.
Speichermoduleinheit
Die Anlage kann bis zu 16 Speichermoduleinheiten aufnehmen. Da jede Moduleinheit 4096 49-Bit-Wörter aufweist, hat die Anlage eine Speicherkapazität von 65536 Wörtern. Zwei vollständige Speichermoduleinheiten mit einem gemeinsamen Versorgungsteil sind in einem Normgehäuse untergebracht. Jede Speichermoduleinheit enthält zugehörige Adressier-, Abfühl- und Lese-Schreib-Schaltungsanordnungen. Der Speicher kann mit einer Taktfrequenz von 3 MHz arbeiten und eine Lese-Schreib-Fähigkeit von 4 Mikrosekunden haben.
E/A-Steuereinheit
Die E/A-Steuereinheit sieht die Steuersignale, Paritätsprüfungen, Zeitgrenzen und Datentransformationen vor, die durch die Anschlußgeräte (Terminals), gefordert werden. Die Anlage nimmt bis zu 10 E/A-Steuereinheiten pro E/A-Sammelleitung auf. 20 E/A-Steuereinheiten sind möglich, wenn das Maximum von zwei E/A-Sammelleitungen verwendet wird. Wenn jedoch zwei E/A-Sammelleitungen in der Anlage verwendet werden, kann ein Prozessor aus der Gesamtzahl von vier nicht verwendet werden, damit seine Daten-Übertragungssammelleitung als zusätzliche E/A-Sammelleitung verwendet werden kann.
Jede E/A-Steuereinheit kann jedes Anschlußgerät steuern, das seiner E/A-Vermittlung zugeordnet ist. Jeweils zwei E/A-Steuereinheiten sind in einem gemeinsamen Normgehäuse untergebracht. Die E/AEinheit weist ein Kennwortregister mit zugehöriger Decodier-Schaltungsanordnung, ein Ganzwortdatenregister und zwei Zeichen-Pufferspeicherregister mit zugehörigen Synchronisierkreisen auf.
Eine E/A-Steuereinheit steuert jeweils ein peripheres Eingabe/Ausgabegerät mit einer begrenzenden Datengeschwindigkeit von 12 · 106 Bits pro Sekunde in der Schaltverriegelung. Die maximale Datenübertragungsgeschwindigkeit der dargestellten Ausführungsform der Anlage nach der Erfindung beträgt auf Grund der Speicher-Sammelleitungseigenschaften 250000 Rechnerwörter pro Sekunde und über 12 Millionen Informationsbits pro Sekunde. Die E/A-Steuereinheiten E/A 1 bis E/A 10 nutzen diese mögliche Datengeschwindigkeit dadurch aus, daß der gleichzeitige Betrieb von Eingabe/Ausgabe-Geräten ermöglicht wird. Zusätzlich ermöglichen die E/A-Steuereinheiten E/A 1 bis E/A 10 die gleichzeitige Eingabe von unbearbeiteten Daten und Ausgabe von bearbeiteten Daten.
Eingabe/Ausgabe-Operationen in der Anlage werden eingeleitet durch einen Prozessor, verlaufen dann jedoch unabhängig unter der Steuerung der E/A-Steuereinheiten. Es können so viele gleichzeitige E/A-Operationen vorliegen, wie E/A-Steuereinheiten
ίο vorhanden sind. Die Behandlung von Daten innerhalb einer E/A-Steuereinheit ist so weit begrenzt, als sie notwendig ist, um Rechnerwörter in das Format für die Anschlußgeräte umzusetzen und umgekehrt. Die E/A-Steuereinheit kann für den Betrieb von Koaxialleitungen mit einer Impedanz von 50 Ohm und einer Länge bis zu etwa 61 Metern geeignet sein.
Schaltverriegelung
ao Die Schaltverriegelung 150 dient für die Verbindungen zwischen den Speichermoduleinheiten, den E/A-Steuereinheiten und den Prozessoren der Anlage. Die Schaltverriegelung löst ferner alle zeitlichen Kollisionen, die sich durch gleichzeitige Anrufe von
a5 Prozessoren und E/A-Steuereinheiten nach Zugriff zur selben Speichermoduleinheit ergeben. Die Schaltverriegelung weist eine Kreuzungs-Schaltmatrix auf, die die jeweiligen Schaltvorgänge ausführt, sowie einen Sanimelleitungszuweiser, der sämtliche Kolli-
J0 sionen bestimmt und löst. Um die Modularität der Anlage in der dargestellten Ausführungsform zu bewahren, enthält jede Moduleinheit ihren eigenen Abschnitt der Anlagenmatrix und wird jede Sammelleitungszuweiser-Schaltlogik in jeder Speichermoduleinheit wiederholt.
Wie die F i g. 3 A und 3 B zeigen, sind in der Schaltverriegelung maximal 5 Daten-Übertragungssammelleitungen vorgesehen, und zwar die E/A-Sammelleitung^, die E/A- Sammelleitung B bzw. Sammelleitung für den Prozessor P 4, die Sammelleitung für den Prozessor P 3, die Sammelleitung für den Prozessor P 2 und die Prozessor-P 1-Sammelleitung. Miteinander kollidierende Anrufe werden entsprechend den Prioritätsstufen aufgereiht, die jedem Anruf eigen sind. Die Prioritäten haben Vorrangverhältnis, so daß ein neuer Anruf mit einer hohen Priorität einem Anruf mit niedriger Priorität, der schon auf Zugriff wartet, vorgeht. Wenn eine anrufende Moduleinheit nicht sofort Zugriff erhält, wartet sie, bis unmittelbarer Zu-
-0 griff durch den Sammelleitungszuweiser zuerkannt wird.
Eingabe-Ausgabe-Vermittlung
Hierzu werden die F i g. 8 A und 8 B betrachtet.
Die E/A-Vermittlung gestattet Datenfluß zwischen jeder der E/A-Steuereinheiten und jedem der Anschlußgeräte, das mit der E/A-Vermittlung durch die Umsetzer verbunden ist. Maximal 10 E/A-Steuereinheiten, 32 Eingangskanäle und 32 Ausgangskanäle sind für die E/A-Vermittlung 151 der dargestellten Ausführungsform vorgesehen. Nur eine E/A-Vermittlung ist für je eine E/A-Sammelleitung vorgesehen. Es können jedoch zwei E/A-Vermittlungen 151 in der Anlage verwendet werden, wenn zwei E/A-Sammelleitungen verwendet werden. Auf Befehl vom Prozessor verbindet die E/A-Vermittlung automatisch E/A-Steuereinheiten mit bestimmten Anschlußgeräten. Zur Wahrung der Modularität der Anlage ist die
E/A-Vermittlung auf die E/A-Steuereinheitengehäuse und die E/A-Umsetzer aufgeteilt.
Eingabe-Ausgabegeräte
Gemäß F i g. 8 A und 8 B kann jede Kombination von E/A-Geräten, die nicht mehr als 32 Eingangsund 32 Ausgangskanäle verwenden, pro E/A-Vermittlung in der Anlage vorgesehen werden. Einige Geräte, z. B. Magnetbandgeräte, erfordern sowohl einen Eingangs- als auch einen Ausgangskanal. Die Gesamtheit von Anschlußgeräten wird gebildet aus Magnetbandgeräten, Magnettrommeln, Kartenlochern und -lesern, Papierbandlochern und -lesern, Tastendruckern, schnellen Blattschreibern, ausgewählten Datenwandlern, Grundtakt-Zeitgebern und Daten- „ verbindungen zwischen Anlagen. Der Tastendrucker gestattet der Bedienungsperson, Untersuchungen und manuelle Unterbrechungen zu bewirken.
Kurze Beschreibung des Betriebsaufbaus
20
Hierzu wird auf die F i g. 1 bis 4 und 8 Bezug genommen. Die dargestellte Anlage ist eine synchronisierte, digitale Rechen- und Datenverarbeitungsanlage, die bei 3 MHz arbeitet. Sie kann organisiert werden in beliebiger Kombination aus den folgenden Moduleinheiten: 1 bis 4 Prozessoren (einer Leitung je Gehäuse); 1 bis 10 E/A-Steuereinheiten je E/A-Sammelleitung (zwei je Gehäuse), 1 bis 32 Eingangskanäle und 1 bis 32 Ausgangskanäle je E/A-Vermittlung, wobei einige Anschlußgeräte sowohl einen Eingangsais einen Ausgangskanal erfordern; ein Umsetzer für jedes Anschlußgerät; 1 bis 16 Speichermoduleinheiten (je zwei pro Gehäuse).
Jeder Prozessor hat zur ausschließlichen Verfügung eine Datenübertragungssammelleitung, durch die er über die Schaltverriegelung 150 mit jeder Speichermoduleinheit in der Anlage in Verbindung treten kann. Die 1 bis 10 E/A-Steuereinheiten E/Al bis E/A 10 sind mit der Schaltverriegelung 150 über eine einzelne E/A-Sammelleitung verbunden. Verschiedene Speichermoduleinheiten können gleichzeitig von sämtlichen Prozessor-Sammelleitungen und E/ASteuer-Sammelleitungen benutzt werden. Verschiedene Eingabe-Ausgabe-Operationen können in der Anlage gleichzeitig vor sich gehen. Es können so viele gleichzeitige E/A-Operationen durchgeführt werden, wie E/A-Steuereinheiten vorhanden sind.
Signalverteilung und Zwischenverbindungen zwischen Moduleinheiten
Innerhalb der Anlage bestehen zwei Signalverteilungs-Unterlagen. Die eine besteht aus der Schaltverriegelung 150, welche Zwischenverbindungen zwischen den Speichermoduleinheiten, den Prozessoren und den E/A-Steuereinheiten bildet. Die andere Unteranlage bildet die E/A-Vermittlung 151, die die Verbindungen von den E/A-Steuereinheiten über die Umsetzer mit den E/A-Einheiten oder Anschlußgeräten herstellt. Es bestehen gewisse Ähnlichkeiten zwischen der Wirkung der E/A-Verniittlungseinheit 151 und der Schaltverriegelung 150.
Es wird Fig. 6 betrachtet. Bei der Übermittlung zwischen den Moduleinheiten ergibt sich ein Schlüsselproblem in der Notwendigkeit, eine Anzahl von Belastungen oder Verbrauchern von einer einzigen Quelle her zu betreiben. Wenn dies auch durch eine sternförmige Anordnung erreicht werden kann, wobei eine einzelne Leitung von jeder Quelle und für jedes Signal zu jeder der Belastungen geführt wird, muß bedacht werden, daß die Zeit eine äußerst wichtige Bedeutung hat, daß diese Zeit in Nanosekunden gemessen wird und daß die Leitungen in manchen Fällen bis zu 12,2 m lang sind. Da die Leitungen aus Gründen geringen Rauschens koaxial ausgeführt werden müssen, liegen, wenn eine sternförmige Anordnung verwendet wird, die Leitungen zu jeder Belastung parallel, was eine sehr niedrige Impedanz für den Treiber bzw. die Quelle darstellt. Einen angemessenen Signalpegel bei sehr hohen Geschwindigkeiten bzw. Frequenzen auf diese Art von Belastung zu geben, ist sehr schwierig. Ferner treten bauliche Schwierigkeiten auf, da ein großes Bündel von Kabeln erforderlich ist, wenn jede Verbindung zwischen einer Last (Bürde) und der Signalquelle ein gesonderter Draht ist.
Die Erfindung überwindet diese Schwierigkeiten und schafft Mittel, bei denen lediglich zwei Kabel von der Signalquelle aus betrieben werden und eine Anzahl von Belastungen auf jedem Kabel vorgesehen sind. Jede Leitung ist an der letzten Last abgeschlossen, und jede Last wird so bemessen, daß sie als hohe Impedanz erscheint. In Richtung in die Übertragungsleitung hinein sieht jedoch jeder Treiber den Wellenoder charakteristischen Widerstand der Übertragungsleitung.
In Fig. 6 ist schematisch eine Anlage dargestellt, die für die typische Zwischenverbindung zwischen Moduleinheiten vorgesehen ist. F i g. 6 zeigt als Beispiel eine Schaltung, bei der ein einzelner Treiber zwei Koaxialleitungen speist, die ihrerseits verbunden mit drei Belastungen dargestellt sind. In Wirklichkeit sind bis zu acht Empfänger je Leitung und zwei Leitungen je Treiber vorgesehen. Jedem logischen Signal, das eine Moduleinheit verläßt, ist ein Treiber zugeordnet. Die Anzahl der Empfänger hängt von der Anzahl von verschiedenen Moduleinheiten ab, die dieses besondere Treibersignal zu adressieren versucht. 8 Empfänger je Leitung mit 2 Leitungen je Treiber sind für die 16 Speichermoduleinheiten vorgesehen, die einzeln für sich betrieben werden sollen, d. h., es bestehen ein Empfänger je Signal und pro Speichermoduleinheit. Dies ist die höchste Anzahl für irgendeine Art von Moduleinheiten in der Anlage der dargestellten Ausführungsform der Erfindung und ist daher die maximale Anzahl von Empfängern für ein Signal. Obwohl 20 E/A-Steuereinheiten in zwei E/A-Vermittlungsgruppen vorgesehen sein könnten, werden die E/A-Steuereinheiten in Paaren je Gehäuse betrieben, so daß für die E/A-Steuereinheiten ein Empfänger je Signal und Gehäuse vorgesehen ist. Dies bedeutet von einem Datenstandpunkt her, daß ein Prozessor nur die 16 verschiedenen Speichermoduleinheiten auf einer Datenleitung adressieren würde und daß er 2 · 8 oder 16 Empfänger für seinen Treiber je Signal erfordern würde. Sollen Speicherdaten entweder an eine E/A-Steuereinheit oder einen Prozessor in einer der maximalen Ausführungsformen der Erfindung ausgegeben werden, so ergeben sich eine Empfangsstelle je Gehäuse und 5 Gehäuse je E/A-Vermittlung, d.h., eine Summe von 10 E/A-Gehäusen, die adressiert würden. Zusätzlich wären 3 Prozessoren vorhanden, die durch diesen Speicher adressiert werden könnten, oder eine Summe von 10 + 3 = 13 verschiedenen Empfängern. Für den Speicher sind daher 2 Leitungen je Treiber vorgesehen, die in 6 Empfänger, die
von der einen Leitung Zugriff erhalten, und 7 Empfänger, die von der anderen Leitung Zugriff erhalten, unterteilt werden können, d. h. für ein Maximum von 13 Empfängern. Es besteht daher Flexibilität von 1 bis 16. Es kann ein Empfänger je Treiber oder es können bis zu 16 Empfänger je Treiber vorgesehen sein. Eine andere Begrenzung bei diesem Treiber-Empfangs-System besteht darin, daß nicht mehr als 8 Empfänger aus Gründen der optimalen Behandlung des Rauschens an eine Leitung angeschlossen sein sollten.
In F i g. 6 ist im einzelnen einer der Treiberkreise dargestellt. Eine der zwei Koaxialleitungen ist vollständig, die andere nur teilweise dargestellt. Die Zusammenstellung von drei Empfängern mit einem der Anschlüsse an eine empfangende Moduleinheit wird wiedergegeben. Der Treiber kann als npn-Transistor ausgebildet sein, der wiederum ein Silicium-Flächentransistor der handelsüblichen Type 2 N 709 sein kann.
Das Signal wird der Basis des Treibertransistors ß4701 über den Widerstand R 4701 (1800 Ohm) zugeführt. Parallel zum Widerstand R 4701 kann ein Kondensator C 4701 (15 pF) geschaltet sein. Eine Speisespannung von + 15 V wird an den Kollektor des Transistors β 4701 angelegt. Ein Kollektorwiderstand liegt zwischen dem Kollektor und der Speisespannung von + 15 V. Zwischen der Speisespannung von + 15 V und den Eingang des Basiswiderstands R 4701 ist ein Belastungswiderstand für die Stromspeisung (6800 Ohm) geschaltet. Der Emitter des Transistors Q 4701 kann an Masse liegen. Der Transistor β 4701 bewirkt eine Verstärkung und eine Umkehrung des Ausgangssignals der übertragenden Moduleinheit. Ein zweiter Umkehrverstärker, der Transistor β 4702, führt eine erneute Umkehrung durch und erzeugt eine Stromverstärkung. Dieser Transistor kann ein pnp-Transistor sein und dient als schneller Schalter. Wie früher angegeben, wird ein pnp-Transistor verwendet, um eine positive Speisespannung verwenden zu können, die auf die Leitungen geschaltet wird, so daß stets bei einem Eingangssignal Strom in die Koaxialleitungen gegeben wird. Der Transistor kann ein 2N781-Transistor sein. Ein Basiswiderstand R 4703 (300 Ohm) kann an der Basis des Transistors Q 4702 angeordnet sein. Parallel zum Widerstand R 4703 liegt ein Kondensator C 4702 (z. B. 12OpF). Der Emitter des Transistors β 4702 wird von einer positiven 3-V-Spannung gespeist. Eine Begrenzungsdiode D 4701 ist zwischen den Kollektor des Transistors β 4701 und die 3-V-Speisespannung am Emitter des Transistors β 4702 eingeschaltet, so daß der Kollektor des Transistors β 4701 nicht von +3V abweicht. Für Schaltzwecke sind die Kreise der Transistoren β 4701 und Q 4702 nicht linear. Beide Einheiten schalten vom gesperrten Zustand zur Sättigung. Die Schaltungsanordnung erzeugt eine Einschaltbedingung- oder eine Eins-Bedingung von + 3 V und eine Null-Bedingung für den Abschaltzustand. Die Koaxialleitung ist an ihrer Quelle an Masse gelegt, jedoch nicht an ihrem anderen Ende, außer durch die verdrillten Leiterpaare und den restlichen Empfängerkreis.
Am anderen Ende der Übertragung in eine der empfangenden Moduleinheiten liegt ein Empfänger. Jeder Empfänger kann aus einem Paar von Transistoren bestehen, z. B. den Transistoren β 4703 und β 4704, die in Kaskade geschaltet sind. Der erste Transistor Q 4703 hat einen Basiswiderstand R 4704 (z. B. 2400 Ohm) und einen dazu parallelen Kondensator C 4703 (z. B. 3OpF). Der Transistor β 4703 kann ein 2 N 709-npn-Transistor sein. Der Kollektor des Transistors β 4703 kann an eine positive Spannungsquelle von 15 V angeschlossen sein. Der Transistor Q 4703 hat einen Kollektorwiderstand #4705 von z. B. 2400 Ohm. Der Emitter des Transistors β 4703 ist an Masse gelegt. Zwischen dem Kollektor
ίο des Transistors β 4703 und der Basis des Transistors β 4704 ist ein Basiswiderstand R 4706 (z. B. 2400 Ohm) angeordnet. Parallel dazu liegt ein Kondensator C 4706 (z. B. 3OpF). Jeder Kondensator C 4701, C 4702, C 4703 und C 4706, die parallel zu den Basiswiderständen liegen, sind Kondensatoren zur Geschwindigkeitserhöhung, die einen anfänglichen vorübergehenden Strom beim Schaltvorgang erzeugen, um die Schaltgeschwindigkeit zu erhöhen. Der Widerstand R 4707 (z. B. 100 Ohm) ist zwischen die positive 15-V-Stannungsquelle und die Basis des Transistors β 4704 geschaltet und erzeugt einen umgekehrten Vorstrom zur Kompensation der Kollektorstreuung am Kollektor des Transistors β 4704. ( Die Transistoren müssen im Betrieb eine sehr kurze Schaltzeit haben. Die Speisespannung von + 3 V am Emitter des Transistors β 4704 ist über eine Diode D 4702 mit dem Kollektor des Transistors β 4703 verbunden, die die Abweichung am Kollektor des Transistors β 4703 auf + 3 V begrenzt. Eine Diode D 4703 begrenzt das negative Ausweichen am Kollektor des Transistors β 4704 auf Masse. Ein Belastungswiderstand R 4708 (z. B. 1500 Ohm) für den Transistor β 4704 ist an — 15 V angeschlossen. Der Kollektor des Transistors β 4704 erzeugt die die logische Eins (»1«) darstellende Ausgangsspannung, die die »wahre« Ausgangsspannung mit derselben Polarität wie die Eingangsspannungen am Transistor β 4701 darstellt. Eine umgekehrte Ausgangsspannung für die Null (»0«) wird vom Kollektor des Transistors β 4703 durch eine Pegelverschiebungsdiode D 4704 abgegeben. Ein Widerstand R 4709 (z. B. 1500 Ohm) ist zwischen eine negative 15-V-Speisung und die Kathode der Diode D 4704 geschaltet. Die Anode der Diode D 4704 ist mit dem Kollektor des Transistors β 4703 verbunden. Stromspeisung für die Diode D 4704, die die Aufrechterhaltung des leitenden Zustands gewährleistet, geschieht von der negativen 15-V-Speisung über den Widerstand R 4709 zur Kathode der Diode D 4704. Die Koaxialleitungen, der isolierende 100-Ohm-Widerstand R 4710, die verdrillten Leiterpaare, nämlich das Leiterpaar ΓΡ4700, und der 51-Ohm-Abschlußwiderstand Ü4715 am Ende aller Einheiten sind bereits früher beschrieben worden.
Die Sigiialverteilungsanlage für die Schaltverriegelung 150 sollte eine Übertragung für alle geforderten Signale in einer Taktzeit zum Ziel haben. Die gesamte zulässige logische Zeit in der Rechenanlage wird zu 300 Nanosekunden angenommen. Eine restliche Zeit
von 30 Nanosekunden wird für Verzerrungen und Verzögerungen des Taktes zwischen Moduleinheiten zugelassen. Die erwähnten 330 Nanosekunden sind das Ergebnis der Zeitgeberfrequenz oder Taktfrequenz von 3 MHz, bei der die logischen Schaltungen der dargestellten Ausführungsform der Erfindung arbeiten. Es ist erwünscht, die Signale zwischen den Moduleinheiten, d. h. zum Beispiel zwischen Spei- j chermoduleinheitenMl bis M 16 und den Prozessö-
ren Pl bis P 4, in einer möglichst kurzen Zeit zu übertragen. Zu diesem Zweck müssen die Kreise der Schaltverriegelung ein Minimum an logischen Verzögerungen aufweisen. 15 Nanosekunden sind für eine Fortpflanzungsverzögerung durch den Leitungstreiber zugelassen, der hier auch als DR-Kreis bezeichnet wird. 25 Nanosekunden werden für den Leitungsempfänger oder RX-Kreis zugelassen. 40 Nanosekunden werden also verbraucht als Fortpflanzungszeit in den Übertragungs- und Empfängerkreisen. Wenn Koaxialkabel für die Signalverteilung verwendet werden, werden 2 Nanosekunden je 30,5 cm als maximale Fortpflanzungszeit angenommen. In der größten Ausführung mit 21 Gehäusen für die erfindungsgemäße Anlage werden ungefähr 15 laufende Meter Koaxialkabel benutzt. Es könnten daher 100 Nanosekunden bei der Übertragung über die Leitung selbst verbraucht werden. Die gesamte Verzögerung über die größte Schaltverriegelung wäre daher 140 Nanosekunden. Dadurch, daß das Signal von der Seite des Gehäuses, in der der T-Anschluß der Koaxialleitung liegt, auf den Kartenschub, auf dem die Empfangsschaltung angeordnet ist, geleitet wird mit Hilfe von verdrillten Leiterpaaren und den 100-Ohm-Widerständen zur Erzeugung optimaler Impedanzstufen in der Anlage und ferner in Verbindung mit dem 51-Ohm-Abschlußwiderstand, wird eine Übertragung mit einem Minimum an Dämpfung und einem Minimum an Rauschpegel zwischen den Gehäusen ermöglicht, die bis zu 15 m voneinander entfernt sein können.
F i g. 7 zeigt das logische Schaltbild der Taktgeber-Verteilungsanlage der Anlage nach der Erfindung.
Bei dem beschriebenen Ausführungsbeispiel sind zwei Haupttaktgeber vorgesehen, und zwar ein Prozessor-Haupttaktgeber CL 2001 und ein Speicher-Haupttaktgeber CL 2002. In der Anlage enthält der Prozessor Pl den Haupttaktgeber; das Gehäuse, das den Speicher-Haupttaktgeber enthält, kann zwei beliebig gewählte Speichermoduleinheiten aufnehmen. Zusätzlich ist noch eine Vielzahl von Nebentaktgebern vorgesehen, und zwar die folgenden: Ein Ne- ! bentaktgeber für jeden Prozessor einschließlich eines : Nebenkontaktgebers für den den Haupttaktgeber enthaltenden Prozessor ein Nebentaktgeber für jede E/A-Steuereinheit; ein Nebentaktgeber für jede Speichermoduleinheit, d. h. zwei Nebentaktgeber für jedes der Speichergehäuse einschließlich des den Speicherhaupttaktgeber enthaltenden Gehäuse. Da jede E/A-Steuereinheit einen Nebentaktgeber und ein Gehäuse für die E/A-Steuereinheiten zwei solche Moduleinheiten enthält, sind zwei Nebentaktgeber je E/A-Gehäuse vorgesehen. In F i g. 7 sind zur Vereinfachung der Darstellung nur der Taktgeber für einen einzigen Prozessor, für eine einzige E/A-Steuereinheit und für vier Speichermoduleinheiten dargestellt. Die gesamte Anzahl von Taktgebern, die bei dem dargestellten Ausführungsbeispiel erforderlich ist, wird in F i g. 8 wiedergegeben.
; Jeder Haupt- und Nebentaktgeber-Oszillator ist identisch mit den anderen. Es unterscheiden sich jedoch die tatsächlich abgestimmten Frequenzen der Haupttakt- und der Nebentaktoszillatoren voneinander. Der Prozessor-Haupttaktgeber CL 2001 kann auf 3 MHz plus 100 Hz abgestimmt sein (3 000100 Hz). Der Speicher-Haupttaktgeber CL 2002 ist auf genau 3MHz abgestimmt (3000000Hz). Eine gewisse Toleranz in der Frequenz in Folge der Konstruktion, der Art und der Umgebungsbedingungen für den Quarz wird zugelassen.
Sämtliche Nebentaktgeber arbeiten bei 3 MHz minus 100 Hz (2999900Hz). Wenn die Taktgeber-S anlage in Betrieb ist, sollen die Frequenzen aller anderen Taktgeber abhängen von der tatsächlichen Frequenz, auf die der Haupttaktgeber CL 2001 abgestimmt ist. Das bedeutet, daß bei der Inbetriebnahme ein Phasenmitnahmesystem für die Phasenverriegelung eines jeden der Nebentaktgeber CL 2003 bis CL 2008 und der nicht dargestellten sorgt sowie auch für die Phasenverriegelung des Speicher-Haupttaktgebers CL 2002 auf die genaue Frequenz, auf der der Haupttaktgeber CL 2001 betrieben wird.
Pufferkreise 52001 und £2002 sind vorgesehen und so in die Schaltung eingefügt, daß sie auf die Haupttaktgeber CL 2001 und CL 2002 ansprechen. In der vereinfachten Darstellung der vollständigen Anlage gemäß F i g. 7 mit einem Prozessor, einer E/A-Steuereinheit und vier Speichermoduleinheiten sieht der Pufferkreis B 2001 sieben Leitungen von seiner Ausgangsleitung 2003 her vor, und zwar eine zu jedem der Nebentaktgeber CL 2003 bis CL 2008 in der Anlage. Außerdem führt eine der Ausgangsleitungen vom Pufferkreis B 2001 zum Speicher-Haupttaktgeber CL 2002. Die Pufferkreise, z. B. der Pufferkreis B 2001, können weitere sieben Ausgangsleitungen auf der Leitung 2001 antreiben, die in der vollständigen Anlage zu weiteren Nebentaktgebern in anderen Moduleinheiten geführt sind. Für die vollständige Anlage weist der Taktgeber CL 2001 eine zusätzliche Kapazität auf, um weitere Ausgangsleitungen vorzusehen, die in Pufferkreise wie z. B. den Pufferkreis J52001 führen und die jeweils 14 weitere Ausgangsleitungen zur Speisung weiterer Moduleinheiten bereitstellen. Die Ausführung gemäß F i g. 7 zeigt lediglich einen Ausschnitt der Anlage zur Vereinfachung der Erläuterung. Das Gesamtsystem, das in Fig. 3 A und 3B dargestellt ist, bietet die Möglichkeit von insgesamt 98 koaxialen Ausgangsleitungen von den Pufferkreisen in Abhängigkeit von einem Haupttaktgeber. Das geht über die in F i g. 1 dargestellte Teilanlage hinaus.
Die Ausgangsspannung des Pufferkreises 52001 wird ferner über die Ausgangsleitung 2002 auf eine T-Verzögerungsleitung D 2001 gegeben. Am Ausgang des Speicher-Haupttaktgebers CL 2002 ist ein Pufferkreis B 2002 vorgesehen. Von der Verzögerungsleitung D 2001 wird die Ausgangsspannung des Pufferkreises B 2001 auf den Speicher-Haupttaktgeber CL 2002 und danach auf den Pufferkreis B 2002 gegeben. Die Verzögerungsleitung D 2001 kann z. B. eine einfache Koaxialleitung mit einer Länge von 61 m sein (z. B. handelsüblicher Typ RG58C/U). Die Verzögerungsdauer innerhalb der Verzögerungsleitung D 2001 ist die Dauer eines Taktimpulses, 0,333 Mikrosekunden, d. h., daß die Verzögerungsleitung D 2001 so bemessen ist, daß die Summe aus ihrer Verzögerungsdauer, aus der Verzögerung durch den Speicher-Haupttaktgeber CL 2002 und aus der Verzögerung in der Eingangsleitung des Pufferkreises 52002 gerade eine Taktimpulsdauer ausmacht, gerechnet vom Zeitpunkt des Austritts aus dem Pufferkreis B 2001 an. Nach Einschalten des Haupttaktgebers CL 2001 ist daher die Ausgangsspannung vom Pufferkreis B 2001 auf Leitung 2003 phasenstarr gegenüber der Ausgangsspannung des Pufferkreises B 2002, und zwar durch die Verzöaerungsleitunu
D 2001 in Verbindung mit der tatsächlichen Verzöge- dien Fall würden beide Haupttaktgeber CL 2001 und rung durch den Speicher-Haupttaktgeber CL 2002 CL 2002 außer Synchronisation sein. Dies ist nur und die Eingangsleitung zum Pufferkreis B 2002 plus eine sehr entfernte Möglichkeit, da die Betriebsder Verzögerung im Pufferkreis B 2002, so daß die sicherheit der Koaxialleitung sehr groß ist. Selbst Ausgangsspannung vom Pufferkreis B 2002, die auf 5 wenn jedoch diese Taktgeber außer Synchronisation der Leitung 2004 auftritt, bezüglich der Frequenz ge- kommen, so ist ein Phasen-Warnanzeiger 2010 für den nau synchronisiert ist mit der Ausgangsspannung auf Prozessor-Haupttaktgeber CL 2001 und ein zweiter Leitung 2003, jedoch im wesentlichen genau um eine Phasen-Warnanzeiger 2011 für den Speicherhaupt-Taktimpulsdauer oder 0,333 Mikrosekunden gegen- taktgeber CL 2002 vorgesehen,
über der ersten Ausgangsspannung verzögert ist. Das 10 Wie bereits ausgeführt, sind in Folge des Mischens Ausgangssignal auf der Leitung 2004 ist daher leicht die Ausgangsspannungen jedes der Nebentaktgeber phasenverzögert gegenüber dem Ausgangssignal auf CL 2003 bis CL 2008 sowohl in der Frequenz als der Leitung 2003. Leicht bedeutet in diesem Fall un- auch in der Phase im wesentlichen synchronisiert, gefähr 10 Nanosekunden. Die Ausgangssignale von Jeder der Nebentaktgeber CL 2003 bis CL 2008 kann den Leitungen 2003 und 2004 werden auf jeden der 15 sieben Leitungen betreiben; wie dargestellt ist, be-Nebentaktgeber CL 2003 bis CL 2008 und auf die an- treiben sie jedoch lediglich die erforderlichen Leitunderen, nicht dargestellten Nebentaktgeber der voll- gen für jede der Moduleinheiten gemäß F i g. 7. Die ständigen Anlage gegeben. Die beiden Signale, näm- Taktgeber betreiben die Pufferkreise an ihren Auslich das von der Leitung 2003 unmittelbar und das gangsleitungen 2003. Ihrerseits treiben die Puffervon der Leitung 2004 werden in jedem der Neben- 20 kreise B 2003 Bandleitungen, die schematisch durch taktgeber gemischt. die Widerstände an ihren Ausgangsleitungen dar-
Die Hauptimpulse vom Haupttaktgeber CL 2001, gestellt sind, z. B. durch die Widerstände /?2001 und die in jedem der Nebentaktgeber CL 2003 bis CL 2008 /?2002. Tatsächlich sind die Bandleitungen parallele vorliegen und der Speicher-Haupttaktgeber CL 2002 Leiter, deren einer Leiter an Masse gelegt ist, wähverursachen, daß die Nebentaktgeber und der Spei- 25 rend der andere Leiter hoch liegt; beide Leiter sind cher-Haupttaktgeber CL 2002 starr auf der Frequenz an ihren Enden durch einen 10-Ohm-Widerstand abgehalten werden, die im Haupttaktgeber CL 2001 er- geschlossen. Die kalte Seite ist elektrisch auf ihrer zeugt wird. Die Mischung in jedem der Nebentakt- ganzen Länge mit Masse verkittet. Von den Bandgeber CL 2003 bis CL 2008 dient dazu, jeden Neben- leitungen, z.B. von den Widerständen R 2001 und taktgeber auf dieselbe Frequenz und Phase festzu- 30 i?2002 und jeder der anderen Bandleitungen, werlegen. den Eingangsspannungen abgegriffen für jeden der
Durch die zwei Haupttaktgeber CL 2001 und Flip-Flops in der Rechenanlage, der getriggert oder CL 2002 und ihre beschriebene Wirkungsweise wird abgeschaltet wird durch die 3 MHz-Impulse,
ein Sicherungssystem gegen Fehler erstellt, da ein Auf diese Weise sind sämtliche Flip-Flops der geAusfall des Prozessor-Taktgebers nicht einmal den 35 samten Anlage, die auf die 3 MHz-Taktfrequenz anVerlust eines einzigen Rechentakts bewirkt. Falls der sprechen, zeitlich miteinander verknüpft. Gleichfalls Haupttaktgeber CL 2001 ausfällt, schwingt der Spei- ist jeder der Flip-Flops dieser Anlage mit den cher-Haupttaktgeber CL 2002 auf seinen 3 MHz und anderen in seiner Phase verbunden, da alle Puffererzeugt ein Ausgangssignal für jeden der Nebentakt- kreise B 2003, die auf die Nebentakte ansprechen, an geber CL 2003 bis CL 2008, so daß die Nebentakt- 40 ihren Ausgängen in Phase sind. Am Ende jeder der geber unmittelbar mit der Ausgangsspannung des Bandleitungen von den Taktgebern ist daher der Speicher-Haupttaktgebers CL 2002 sowohl in der Fre- Forderung Rechnung getragen, daß die Leitungen quenz als auch in der Phase synchronisiert sind. Die innerhalb 30 Nanosekunden der Ausgangsspan-Anlage wird daher den Betrieb fortsetzen, auch wenn nungen der anderen Bandleitungen liegen. Die darder Prozessor-Haupttaktgeber CL 2001 ausfällt. Diese 45 gestellte Ausführungsform der Anlage gestattet einen Fortsetzung des Betriebes geschieht ohne Verlust Betrieb innerhalb einer Toleranz von 10 Nanosekunauch nur einer Taktperiode. In ähnlicher Weise den. Die Länge von 1,22 m zwischen jedem Nebenübernimmt, wenn der Speicher-Haupttaktgeber taktgeber und dem zugehörigen Pufferkreis ist an- CL 2002 ausfällt, entweder durch langsame Ver- gegeben, weil dies der schlechtestmögliche Fall der schlechterung oder durch sofortigen vollständigen 50 tatsächlichen Kabellänge ist, die zwischen jeder der Ausfall, der Prozessor-Haupttaktgeber CL 2001 jeden Einheiten und jeder der Puffer-Schaltungskarten erder Nebentaktgeber und legt sie auf seine eigene Aus- forderlich ist. Vom Ausgang des Pufferkreises B 2002 gangsfrequenz und -phase fest, d.h., der Haupttakt- zu den Nebentaktgebern CL 2003 bis CL 2008 führt geber CL 2001 setzt seinen Betrieb in normaler Weise ein Koaxialkabel (TypRG58C/U) von einer Länge fort und erzeugt wie vorher seine genaue Frequenz- 55 von genau 7,32 m. Dasselbe ist der Fall für die Aus- und Phasensynchronisation, außer daß er in diesem gänge des Pufferkreises B 2001, von dem jeweils ein Fall den Speicher-Hauptaktgeber CL 2002 nicht über- Kabel von 7,32 m zu jedem Nebentaktgeber führt, nimmt. Die gemeinte Verschlechterung soll nicht die Das heißt, daß jedes Kabel mit der gleichen Länge Frequenz betreffen. Gemeint ist, daß die Verschlech- versehen ist, um korrekte Phasenbeziehungen sicherterung langsam vor sich gehen könnte oder daß 60 zustellen. Es ist jedoch klar, daß in einer Anlage, andererseits ein plötzlicher Ausfall auftritt. Diesen in der schlechtestenfalls eine längere oder kürzere beiden Situationen wird durch das beschriebene Entfernung zwischen den Gehäusen besteht, die Sicherungssystem Rechnung getragen, und zwar größte erforderliche Länge für jede der Verbindundurch das Vorsehen der zwei Haupttaktgeber. gen benutzt wird.
Es möge angenommen werden, daß ein Fehler in 65 F i g. 9 A zeigt die Zwischenverbindungen der der Synchronisierleitung von der Ausgangsleitung Speichertaktgeber-Leitungen zwischen den Prozes- £2002 des Pufferkreises B 2001 einschließlich der sor-Taktgebem und den Speichertaktgebern und Verzögerungsleitung D 2001 auftritt. In einem sol- zwischen dem Speichertaktgeber und den Nebentakt-
gebern der E/A-Steuereinheiten für die Speicherzeitgebung. Fig. 9B erläutert die Prozessor-Haupttaktgeberleitungen und die Leitungen zu den Nebentaktgebern in der Anlage nach F i g. 9 A.
Zur Vereinfachung sind in Fig. 9A und 9B zwei Prozessoren. 6 E/A-Steuereinheiten und 6 Speichermoduleinheiten dargestellt. Wie in Fig. 9A und 9B gezeigt ist, hat jeder Prozessor sein eigenes Gehäuse, während jeweils 2 Speichermoduleinheiten bzw.
2 E/A-Steuereinheiten sich in ein gemeinsames Gehäuse teilen. Die Verzögerung um einen Takt (T-Impulsverzögerung) von dem Prozessor-Haupttaktgeber CL 2001 zum Speicher-Haupttaktgeber CL 2002, der
z. B. in der Speichermoduleinheit Ml angeordnet ist, ist in Fig. 9B dargestellt.
Fig. 10 zeigt das Anlagen-Zeitgeberdiagramm für die vollständige Anlage nach der Erfindung, die 4 Prozessoren, 16 Speichermoduleinheiten und 10 E/A-Steuereinheiten in 5 Gehäusen enthält.
Wegen des Konzepts vollständiger Modularität in der Anlage nach der Erfindung bestehen besondere Zeitgeberprobleme, die für ein einwandfreies Arbeiten der Anlage bewältigt werden müssen. Wie ausgeführt, weist jede Prozessor-, Speicher- und E/A-Steuermoduleinheit ihre eigenen Zeitzähler auf. Sämtliche Zeitzähler müssen für einen einwandfreien Anlagenbetrieb miteinander synchronisiert sein.
Jeder Nebentaktgeber treibt ein Eingangssignal mit
3 000100Hz zu lokalen Bandleitungspufferkreisen. Dies wird im folgenden an Hand von Fig. 11 beschrieben. Diese zeigt die lokalen Bandleitungen, die schematisch in F i g. 7 dargestellt sind. Ergänzend zu Fig. 7 zeigt Fig. 11 die Abgriffe zu den Flip-Flops der Anlage. Die Bandleitungen sind als flache Sandwich-Kupferleitungen ausgebildet, deren Kupferstrei- fen durch Epoxydharzglas gegeneinander isoliert sind, und erstrecken sich zwischen den Reihen von gedruckten Schaltungskarten zur Verteilung der Taktimpulse. Jeder Bandleitungspufferkreis kann über eine Bandleitung 12 Flip-Flop-Karten betreiben, die 48 Flip-Flops aufweisen.
Zwischenverbindungen in der Anlage
Zwischenverbindungen für die Informationsübermittlung innerhalb der Anlage für die größeren Moduleinheiten werden in die folgenden Bereiche unterteilt: a) Eingabe-Ausgabe-, Speicher- und Prozessor-Datensammelleitungen, b) Eingabe-Ausgabe-, Speicher- und Prozessor-Steuerleitungs-Sammelleitungen und c) äußere Anrufleitungen.
Daten-Sammelleitungen für die Eingabe-Ausgabe-,
Speicher- und Prozessoreinheiten
Es wird auf F i g. 3 A und 3 B Bezug genommen. In dem maximalen System, das hier beschrieben wird, ist eine Wahl in der Zusammenstellung der Moduleinheiten in der Anlage möglich. Das Ausführungsbeispiel kann 5 E/A-Steuergehäuse mit 10 E/A-Steuereinheiten E/A 1 bis E/A 1 enthalten (2 E/A-Moduleinheiten in jedem Gehäuse ICIA bis ICIF), 4 Prozessoren Pl bis P 4, und 8 Speichergehäuse MCl bis MC8 mit 16 Speichermoduleinheiten Ml bis Λ/16. Die andere Wahlmöglichkeit für eine maximale Anlage nach der Erfindung besteht in 10 E/A-Gehäusen, die 20 E/A-Steuereinheiten E/A 1 bis E/AlO und E/All bis E/A20 enthalten, 3 Prozessoren Fl bis P3 und 8 Speichergehäuse mit 16 Speichermoduleinheiten Ml bis M16. Wenn die 4-Prosessoren-Anlage gewählt wird, steht nur eine einzige Datensammelleitung für E/A-Operationen zur Verfügung. Diese Sammelleitung E/A-busl kann 5 E/A-Steuergehäuse mit 10 E/A-Steuereinheiten bedienen. Wenn die Anlage mit 10 E/A-Gehäusen gewählt wird, werden 2 E/A-Sammelleitungen für den Anlagenbetrieb erforderlich. Die zweite E/A-Sammelleitung E/A-bus2, ersetzt die Sammelleitung für den vierten Prozessor P 4 und bedient die 10 zusätzlichen E/A-Steuereinheiten E/A 11 bis E/A 20. In einer Anlage mit 2 E/ASammelleitungen können daher nur 3 Prozessoren P1 bis P 3 verwendet werden. Die Leitungsführung der Anlage ist in F i g. 3 A und 3 B dargestellt.
Jede E/A-Gehäuse-Datensammelleitung busl bis bus 5 ist aus 18 Kabeln aufgebaut. Diese 18 Kabel werden zu jeder Speichermoduleinheit Ml bis M16 der Anlage geleitet. Die 18 Kabel bilden 4 Leitungen für die Adressierung der Speichermoduleinheiten, eine Leitung zur Bestimmung, ob die E/A-Operation eine Lese- oder eine Schreiboperation sein soll, eine Leitung zur Identifizierung des E/A-Gehäuses, das Zugriff zum Speicher anruft, und 12 Leitungen zur Übertragung von Daten vom E/A-Steuergehäuse. Dies wird nachfolgend im einzelnen dargestellt in der Beschreibung der einzelnen Moduleinheiten und insbesondere bei der Beschreibung der Speicher- und E/A-Steuermoduleinheiten.
Jeder Prozessor Pl bis P4 in der Anlage hat eine Prozessor-Datensammelleitung, die aus 20 Kabeln aufgebaut ist. Diese 20 Kabel werden zu jeder Speichermoduleinheit Ml bis M16 der Anlage geleitet; hiervon dienen 4 Leitungen für die Adressierung von Speichermoduleinheiten, eine Leitung zur Bestimmung, ob der Prozessor Daten im Speicher speichern soll oder Daten vom Speicher abrufen soll, eine Leitung zur Identifizierung desjenigen Prozessors, welcher Zugriff zum Speicher fordert, 12 Leitungen zur Übertragung von Daten vom Prozessor, und 2 Leitungen zur Identifizierung, welche E/A-Sammelleitung A oder B der Prozessor nach einem Kennwort anruft. Bei einer Anlage mit 2 E/A-Sammelleitungen werden beide letztgenannten Leitungen benutzt.
Jede Speichermoduleinheit Ml bis M16 in der Anlage hat eine Speicher-Datensammelleitung, die aus 13 Leitungen aufgebaut ist. Diese 13 Leitungen werden zu jedem Prozessor Pl bis P 4 und zu jedem E/A-Steuergehäuse ICl bis IC 5 in der Anlage geführt. 12 Leitungen werden für die Übertragung der Daten von der Speichermoduleinheit verwendet. Eine weitere Leitung, die dreizehnte, wird verwendet, um ein Signal »Zugriff erhalten« von jeder Speichermoduleinheit Ml bis M16 zu führen; im folgenden wird dieses Signal auch als Kreuzungspunkt-Signal bezeichnet.
Eingabe-Ausgabe-, Speicher- und Prozessor-Steuerleitungs-Sammelleitungen
Zusätzlich zu den Datcnsammelleitungen der Anlage müssen Steuerleitungs-Sammelleitungen verwendet werden, um den verschiedenen Moduleinheiten zu gestatten, die Anlage so zu gestalten, daß sie als eine einzige Anlage arbeitet. Diese Steuerleitungs-Sammelleitungen sind die folgenden: Die E/A-Anrufsteuersammelleitung; die E/A-Priorität-A-Steuersammelleitung, die E/A-Priorität-B-Steuersammelleitung, die E/A-Belegt-Steuersammelleitung; die E/A-Kennwortrückkehr-Steuersammelleitung, die Prozessor-Unterbrechungssammelleitung und die Speicher-
Kennwort-Sperr-Steuersammelleitung. Einige dieser Sammelleitungen sind in den F i g. 3 A und 3 B durch Benennungen angegeben.
Damit eine E/A-Steuereinheit Zugriff zum Speicher erhält, müssen zwei Bedingungen erfüllt werden. Es sind dies: a) keine andere Moduleinheit fordert Zugriff, und b) die Moduleinheit muß die Höchstpriorität haben.
Wenn einmal eine E/A-Steuereinheit Zugriff zur E/A-Sammelleitung für Speicherbetrieb erhält, wird durch diese Steuereinheit ein Pegel erzeugt und auf alle anderen Steuermoduleinheiten auf der E/A-Anruf-Steuersammelleitung übertragen. Dieser Pegel wird verwendet, um alle Kollisionen zu sperren und die Priorität zu lösen, bis der Zugriff zum Speicher durch die E/A-Steuereinheit beendet ist.
Die logische Schaltung für die Lösung von Prioritätskonflikten, die bestimmt, welche Moduleinheiten Zugriff zum Speicher erhalten, kann nur arbeiten, wenn sämtliche Pegel auf der Anrufsteuerung Null sind.
Es bestehen zwei Prioritätspegel, die eine E/ASteuereinheit beim Anruf nach Zugriff zur Speichermoduleinheit haben kann. Die beiden Prioritätspegel werden Priorität A und Priorität B genannt. Jede a5 E/A-Steuereinheit auf einer E/A-Sammelleitung empfängt die Prioritätspegel, wenn alle anderen E/ASteuereinheiten auf der E/A-Sammelschiene es ebenfalls tun. Die Prioritätspegel werden durch die E/A-Priorität-A-Steuersammelleitung und die E/A-Priorität-B-Steuersammelleitung zu allen E/A-Gehäusen geleitet. Diese Priorität-Steuersammelleitungen werden in der Anlage benutzt, um irgendwelche zeitlichen Kollisionen zu lösen, wenn zwei oder mehr E/A-Steuereinheiten gleichzeitig Zugriff zum Speicher fordern. Sämtlichen Priorität-A-Anrufen wird vor irgendwelchen Priorität B-Anrufen Zugriff zum Speicher gewährt. Die am niedrigsten bezifferte E/A-Steuereinheit mit einem Priorität-A-Anruf ist die nächstfolgende, der Zugriff zum Speicher gewährt wird. In einer Anlage mit zwei E/A-Sammelleitungen werden die E/A-Priorität-A- und die E/A-Priorität-B-Steuersammelleitungen verdoppelt, so daß ein Satz für jede E/A-Sammelleitung vorhanden ist.
Die E/A-Belegt-Steuersammelleitung ist aus 5 Leitungen aufgebaut, die von jedem E/A-Gehäuse ICl bis /C 5 zu allen Prozessor- und E/A-Gehäusen IC 1 bis /C 5 in der Anlage geführt sind. Bei einer Anlage mit zwei E/A-Sammelleitungen sind zwei unabhängige Belegt-Steuersammelleitungen vorhanden. Diese j0 Signale werden in der Anlage verwendet, um die erste nichtbelegte E/A-Steuereinheit auszuwählen.
Eine E/A-Kennwort-Rückführungssteuersammelleitung weist 5 Leitungen auf. Jedes E/A-Gehäuse, das mit einer E/A-Sammelleitung verbunden ist, leitet ein Signal zu jedem Prozessor Pl bis P 4 in der Anlage. Bei einer Anlage mit zwei E/A-Sammelleitungen gibt es zwei unabhängige E/A-Kennwort-Rückführungssteuersammelleitungen, und zwar eine für jede E/ASammelleitung A und B. Die Signale der E/A-Kennwort- und Führungssteuerung werden in der Anlage dazu verwendet, um Leitungswege zu schaffen, die die Beendigung einer E/A-Operation einem oder mehreren Prozessoren über die Unterbrechungsanlage zur Kenntnis bringen.
Die Prozessor-Unterbrechungs-Steuersammelleitung besteht aus Signalen von jedem Prozessor Pl bis P3 bzw. falls vorhanden P 4, die zu sämtlichen anderen Prozessoren Pl bis P 4 in der Anlage führen. Diese Steuersammelleitung wird in der Anlage benutzt, um es einem Prozessor zu ermöglichen, sich selbst oder irgendeinen anderen Prozessor in der Anlage zu unterbrechen. Dei Speicher-Kennwort-Sperrsteuersammelleitung wird in der Anlage dazu verwendet, um den anderen Speichermoduleinheiten in der Anlage mitzuteilen, daß gerade ein Kennwort zu einer E/A-Sammelleitung gesendet wird. Während dieser Zeitspanne werden sämtliche E/A-Anrufe für diese Sammelleitung in der Schwebe gehalten. In einer Anlage mit zwei E/A-Sammelleitungen sind zwei unabhängige Speicher-Kennwort-Sperrsteuersammelleitungen vorgesehen, und zwar jeweils eine für jede E/A-Sammelleitung.
Äußere Anrufleitungen
Jeder Prozessor Pl bis P 4 in der Anlage kann Unterbrechungsanrufe von 16 äußeren Geräten empfangen (Fig. 4B). Ein äußeres Gerät ist im Stande, sämtliche Prozessoren in der Anlage anzurufen, um sie zu unterbrechen. Wenn die entsprechende Maske in einem der Prozessoren P1 bis P 4 gesetzt ist, verursacht der Anruf eine automatische Unterbrechung in diesem Prozessor.
Schaltverriegelung
Zu betrachten sind die Fig. 1, 2, 3A und 3B sowie 8. In der Anlage nach der Erfindung ist die Schaltverriegelung aufgeteilt und den Moduleinheiten der Anlage angepaßt, so daß das System vollständig modular ist.
Derjenige Abschnitt der logischen Schaltung in jeder Moduleinheit, der die Steuerung der Zwischenverbindungen von Prozessor-, Speicher- und E/ASteuereinheiten versieht, wird als Schaltverriegelung bezeichnet.
Die Schaltverriegelung hat folgende Aufgaben: Erstellung von Übertragungstorschaltungen für geeignete Steuersignale zur Datenübermittlung zwischen den Gehäusen, Schaffung von Steuersignalen für die Taktfrequenz-Phasengebung für sämtliche Moduleinheiten während der Übermittlungen zwischen den Gehäusen, Erstellung von ausreichenden Signalen zwischen den Gehäusen zur Lösung von Kollisionen, die zu einer modularen Rechenanlage gehören, und eine Verknüpfung aller dieser Aufgaben zur Wahrung der Modularität der Anlage.
Anlagenerfordernisse
Übermittlungen zwischen Prozessor und Speicher,
sowie zwischen Eingabe-Ausgabe und Speicher
Die Prozessoren Pl bis P 4 und die E/A-Steuereinheiten E/A 1 bis E/A 10 (bzw. auch EMIl bis E/A 20) stehen mit den Speichermoduleinheiten M1 bis M16 in Übermittlungsverbindung. Da die Prozessor- und die E/A-Steuereinheiten nach Zugriff zu den Speichermoduleinheiten Ml bis M16 anrufen, werden die Prozessor- und die E/A-Steuereinheiten Anrufeinheiten genannt.
Es sind fünf Grundoperationen vorhanden, die die Schaltverriegelung erfordern: 1. Ein Prozessor sucht Zugriff zu einer Speichermoduleinheit, um ein im Prozessor vorhandenes Wort in den Speicher zu schrei-
ben; 2. ein Prozessor sucht Zugriff zu einer Speichermoduleinheit, um ein Wort aus dem Speicher zu lesen und es im Prozessor zu empfangen; 3. ein Prozessor sucht Zugriff zu einer Speichermoduleinheit, um ein Wort aus dem Speicher zu lesen, das ein E/A-Kennwort bildet, und es zu den E/A-Steuereinheiten übertragen zu lassen; 4. eine E/A-Steuereinheit sucht Zugriff zu einer Speichermöglichkeit, um das in der E/A-Steuereinheit befindliche Wort in den Speicher zu schreiben; 5. eine E/A-Steuereinheit sucht Zugriff zu einer Speichermoduleinheit, um ein Wort aus dem Speicher zu lesen und es in der E/A-Steuereinheit zu empfangen.
Steuerzeitgebung
Die Grundtaktgebung für die Anlage wird, wie bereits beschrieben, durch einen frei laufenden 3-MHz-Taktgeber vorgenommen. Jede Einheit in der Anlage arbeitet mit dem gemeinsamen Haupttaktgeber CL 2001. Auf diese Weise ist die Anlage synchron, obwohl allgemein die Modularbeitstakte nicht in Phase sind, da die Einheiten unabhängig arbeiten.
Wenn Moduleinheiten miteinander verbunden sind und in Gleichklang arbeiten, müssen sie sowohl in Phase als auch in Synchronismus sein, d. h., miteinander verbundene Moduleinheiten müssen in richtiger zeitlicher Beziehung zueinander arbeiten.
Es gibt zwei grundsätzliche Bereiche, in die sämtliche Operationen fallen, in denen die Phasenbeziehungen durch die Schaltverriegelung gesteuert werden, und zwar: 1. Die Anruf moduleinheit wird in Phase gebracht mit der vorgewählten Speichereinheit während einer Lese- oder Schreiboperation; 2. die ein Kennwort aufnehmenden E/A-Steuereinheiten werden in Phase gebracht mit der das Kennwort übertragenden Speichermoduleinheit während einer E/A-Kennwort-Übertragungsoperation.
Kollisionslösung
Die modulare Organisation der Anlage nach der Erfindung gestattet eine gleichzeitige Berechnung und eine gleichzeitige Ausführung von Eingabe- und Ausgabeoperationen. Das heißt, Mehrfach-Übertragungssammelleitungen in der Schaltverriegelung können gleichzeitig benutzt werden. Die Schaltverriegelung sorgt für eine Ordnung beim Auftreten der folgenden Kollisionen: a) Eine Anrufmoduleinheit sucht Zugriff zu einer belegten Speichermoduleinheit; b) zwei oder mehr Anrufmoduleinheiten suchen gleichzeitig Zugriff zur selben Speichermoduleinheit; c) zwei oder mehr E/A-Steuereinheiten suchen gleichzeitig Zugriff zur Übertragungssammelleitung zu dem Speichermoduleinheiten-Komplex; d) ein Prozessor versucht, ein Kennwort zu der E/A-Steuereinheit zu senden, während die E/A-Steuereinheit Information von einer anderen Speichermoduleinheit empfängt, und e) eine E/A-Steuereinheit sucht Zugriff zu einer Speichermoduleinheit, während ein Kennwort gerade zu dieser E/A-Steuereinheit von einer anderen Speichereinheit gesendet wird.
Organisation und Schnittstellen
Informationsübertragungssignale
Die Übertragungssammelleitungen, die Anruf- und Speichermoduleinheiten miteinander verbinden, sind derart ausgebildet, daß gleichzeitiger Betrieb aller Anrufeinheiten gestattet wird. Prozessoren erfordern außerordentlich häufigen Zugriff zum Speicher, im Gegensatz zu den E/A-Steuereinheiten. Die Kommunikation einer E/A-Steuereinheit mit den peripheren Einrichtungen erfolgt mittels 6-Bit-Zeichen, und sie muß eine Gruppe von acht Zeichen zusammenstellen, bevor sie nach Speicherzugriff anruft. Infolgedessen ist die Datenübertragung zwischen einer E/A-Steuereinheit und dem Speicher verhältnismäßig gering. Dies rechtfertigt die Verwendung einer zeitlich aufgeteilten (Zeitmultiplex) E/A-Übertragungssammelleitung zwischen den E/A-Steuereinheiten und dem Speicher. Jeder Prozessor Pl bis P 4 hat seine eigene Übertragungssammelleitung.
Eine Datenübertragung zwischen den Gehäusen (mit 48 Bits plus Paritätsbit) wird auf 12 Leitungen in den folgenden Serienübertragungen vorgenommen: 1. 12 niedrigste Bits, 2. 12 zweitniedrigste Bits,
ao 3. 12 drittniedrigste Bits, 4. 12 höchste Bits und 5. ein Paritätsbit auf der niedrigsten Bit-Leitung.
Vor jeder Übertragung eines Datenwortes wird bei der beschriebenen Ausführungsform der Erfindung eine 16-Bit-Speicheradresse vom Anrufer zum Speieher übertragen. Die vier höchsten Bits, die die Speichermoduleinheitenadresse enthalten, werden auf getrennten Leitungen gesendet. Die niedrigsten 12 Bits, die die innere Speicheradresse enthalten, werden über dieselben Leitungen wie die Daten gesendet.
Informationsübertragungs-Steuersignale
Mit der Speicheradresse muß der Anrufer einen Anrufpegel und einen Lese-Schreibpegel erzeugen. In Abhängigkeit vom Speicherzugriff überträgt der Speicher ein »Zugriff erhalten«-Signal, das Kreuzungspunkt genannt wird. Falls ein Prozessor anruft, um ein Kennwort zur E/A-Steuereinheit zu senden, muß der Prozessor ferner einen Kennwortanrufpegel erzeugen. Die Speichermoduleinheit anwortet mit einem »Zugriff erhalten für ein Kennwort«-Signal, das als Kreuzungspunktkennwort bezeichnet wird, für die E/A-Steuereinheit.
Signal zwischen den Speichern
Jede Speichermoduleinheit M1 bis M16 sendet zu
jeder anderen Speichermoduleinheit M1 bis M16 ein Signal, das anzeigt, daß ein Kennwort gerade zu den E/A-Steuereinheiten E/A 1 bis E/A 10 gesendet wird.
Zwischen-E/A-Signale
Jede E/A-Steuereinheit E/A 1 bis EMlO sendet vier Steuersignale zu jeder anderen E/A-Steuereinheit E/A 1 bis E/A 10. Es werden zwei Prioritätspegel und ein Anrufpegel benutzt, um eine Benutzungsordnung für die E/A-Sammelleitung zum Speicher aufzustellen; ferner wird ein Belegt-Pegelsignal verwendet zur Feststellung, welche E/A-Einheit beim nächsten Befehlskennwort wirksam werden soll.
Funktionsbeschreibung
Im allgemeinen gibt es zwei Bereiche, in denen die Schaltverriegelung in Tätigkeit ist. Einer betrifft den
809 649/3
Zugriff einer Anrufmoduleinheit zum Speicher. Der andere bezieht sich darauf, auf der zeitlich aufgeteilten (Zeitmultiplex) E/A-Übertragungssammelleitung eine Ordnung aufrechtzuerhalten.
Betrachtung des Zugriffs zum Speicher
Wenn man den Speicherbereich der Schaltverriegelung 150 betrachtet, können sämtliche E/A-Steuereinheiten auf einer einzelnen Sammelleitung (A oder B) angesehen werden als eine einzige Moduleinheit, die die Möglichkeit hat zu entscheiden, welche der Modulkomponenten die E/A-Sammelleitung benutzen soll. Jede Anrufmoduleinheit kann einen Anrufpegel und eine Speichermoduleinheitenadresse an den Speichermoduleinheitenkomplex zu einer beliebigen Zeit ohne Rücksicht auf andere Anrufer abgeben. Jede Speichermoduleinheit sieht alle an ihrem Eingang vorliegenden Anrufe jedesmal, wenn der Speicher in seinem Nicht-Belegt-Zustand ist. Wenn die 4-Bit-Speichermoduleinheitenadresse des Anrufers mit der des betreffenden Speichers übereinstimmt, wird dieser Anrufer zur Bedienung ausgewählt. Der Speicher nimmt dann das adressierte Wort auf oder überträgt es zum Anrufer.
Jeder Anrufmoduleinheit ist ein Kreuzungspunkt-Flip-Flop in jeder Speichermoduleinheit zugeordnet. Eine Speichermoduleinheit gewährt Zugriff zu dem Kreuzungspunkt-Flip-Flop XP eines Anrufers. Sämtliche Datenübertragungen zu und von den Speichermoduleinheiten Ml bis M16 werden durch Kreuzungspunkte gesteuert, jedoch wird die gesamte Steuerung ausgeführt an den Eingängen zu einer Speichermoduleinheit. Ein Speicher spricht mit einem ZP auf den Anrufer an, wenn Zugriff für den Anrufer erhalten wird. Während des Speicherlesens dient der Kreuzungspunkt dazu, dem Anrufer anzuzeigen, daß Daten vom angerufenen Speicher erscheinen. Während des Speicherschreibens wird der Kreuzungspunkt verwendet, um dem Anrufer anzuzeigen, daß Daten gesendet werden sollen. Das XP-Signal wird ferner verwendet zur Synchronisation des Anrufers mit dem Speicher. Jede zeitabhängige Steuerung innerhalb des Anrufers und des Speichers wird auf die Einstellung des Speicher-Kreuzungspunktes bezogen.
Sämtliche Kollisionssituationen werden dann am einfachsten innerhalb der Speicher dadurch behandelt, daß eine logische Schaltung dem Abschnitt des Speichers zugeordnet wird, der zur Einstellung der Kreuzungspunkte verwendet wird.
Die grundlegenden Regeln, auf Grund derer ein Speicher seine Kreuzungspunkte einstellt, sind die folgenden: 1. In jedem Speicher kann zu einer bestimmten Zeit nur ein Kreuzungspunkt eingestellt werden; 2. Kreuzungspunkte. können nur dann zur Einstellung kommen, wenn der Speicher in seinem nicht belegten Zustand ist oder in ihn zurückkehrt; 3. wenn mehr als ein Anrufer Zugriff zu demselben, nicht belegten Speicher sucht, ist die Bedienungsanordnung folgende:
a) Sammelleitung eins
E/A-Steuereinheit A (höchste Priorität),
b) Sammelleitung zwei
E/A-Steuereinheit B oder Prozessor P 4,
c) Sammelleitung drei
Prozessor P 3,
d) Sammelleitung vier
Prozessor P 2 und
e) Sammelleitung fünf
Prozessor Pl (niedrigste Priorität);
4. wenn eine E/A-Steuereinheit irgendeine Speichermoduleinheit anruft, muß ein Prozessor, der ein Kennwort anruft, das gerade zur E/A-Steuereinheit gesendet wird, gesperrt werden, bis die E/A-Steuereinheiten nicht anrufen; 5. wenn ein Prozessor Zugriff zu irgendeiner Speichermoduleinheit erhalten hat, damit diese ein Kennwort zu den E/A-Steuereinheiten sendet, müssen alle E/A-Anrufe zu irgendeinem Speieher gesperrt werden, bis die Übertragung des Kennwortes beendet ist.
Wenn eine der Moduleinheiten nicht mehr funktioniert, wird die Modularität erhalten, und die Schaltverriegelung arbeitet weiter, da jede Moduleinheit nur denjenigen Teil der Schaltverriegelung enthält, der für den Betrieb der Moduleinheit benötigt wird.
Betrachtungen zu den E/A-Sammelleitungen
In dem vorigen Abschnitt über den Speicherabschnitt der Schaltverriegelung wurden die E/A-Steuereinheiten als ein einziger Anrufer betrachtet. Soweit dies die Speichermoduleinheiten M1 bis M16 betrifft, stimmt dieses Bild. In dem E/A-Abschnitt der Schaltverriegelung muß eine logische Schaltung vorgesehen sein, die die E/A-Steuereinheiten zu einer zeitlichen Aufteilung der Benutzung der E/A-Sammelleitung veranlaßt. Diese logische Schaltung soll folgendes veranlassen: 1. Nur einer der E/A-Steuereinheiten E/A 1 bis E/A 10 (oder falls vorhanden der E/A-Steuereinheiten E/A 11 bis E/A 20) gestatten, die Sammelleitung zum Speicher zu irgendeinem bestimmten Zeitpunkt zu benutzen; 2. Zugriff erteilen zu der Sammelleitung entsprechend der folgenden Ordnung: a) Priorität Α-Anrufe (höchste Priorität), b) Priorität B-Anrufe, c) im Fall kollidierender Anrufe mit derselben Priorität soll der Moduleinheit mit der niedrigsten Zahl Zugriff gegeben werden. Jeder E/A-Steuereinheit an der Sammelleitung ist eine E/A-Modulzahl von 1 bis 10 zugeordnet. Diese Zahl ist festgelegt und nicht durch Programm änderbar; 3. die erste nicht belegte (die am niedrigsten bezifferten E/A-Steuereinheiten E/A 1 bis E/A 10 ist die E/Al-Steuereinheit) E/A-Steuereinheiten veranlassen, Befehlskennwörter aufzunehmen, die auf der E/ASammelleitung gesendet werden; 4. Prioritäten erkennen, wenn sie in einem Kennwort durch das Programm enthalten sind; 5. die logische
j5 Schaltung sollte in der Weise modular sein, daß jede E/A-Steuereinheit sämtliche logischen Kreise enthält, die für ihren Anteil der Schaltverriegelung benötigt werden; 6. sie soll Null-Zeit benötigen, d. h., die logische Schaltung soll keinerlei Verzögerung zum normalen Anrufer-Speicherzyklus hinzufügen.
Die Grundlage, auf der die E/A-Steuereinheiten E/A 1 bis E/A 10 oder E/A 11 bis E/A 20 ihre Sammelleitung miteinander teilen, besteht einfach in der
g Verwendung einer Sammelleitung, wenn sie nicht durch eine andere E/A-Steuereinheit gehindert wird. Jede E/A-Steuereinheit empfängt von jeder anderen E/A-Steuereinheit diejenigen Signale, die anzeigen,
daß eine E/A-Steuereinheit die Sammelleitung gerade benutzt oder daß eine E/A-Steuereinheit (mit der Priorität A oder B) die Benutzung der Sammelleitung fordert. Wenn eine E/A-Steuereinheit die folgenden Bedingungen erfüllen kann, benutzt sie die Sammelleitung:
Fall 1: Die betrachtete E/A-Steuereinheit hat Priorität/1.
1. Keine andere niedriger bezifferte E/A-Steuereinheit mit der Priorität Λ fordert Zugriff zur Sammelleitung.
2. Keine andere E/A-Steuereinheit benutzt gerade die Sammelleitung.
15
Fall 2: Die betrachtete E/A-Steuereinheit hat Priorität B.
1. Keine andere E/A-Steuereinheit, die die Sam- ao melleitung anruft, hat eine Priorität A.
2. Keine niedriger bezifferte E/A-Steuereinheit mit Priorität B fordert gerade Zugriff zur Sammelleitung an und
3. Keine andere E/A-Steuereinheit benutzt gerade die Sammelleitung.
Die Modularität wird gewahrt, indem nur Sperrsignale von den E/A-Steuereinheiten verwendet werden, welche gegenwärtig in der Anlage enthalten sind. Die Entscheidung, welche E/A-Steuereinheit Befehlskennwörter aufnehmen soll, ist in ähnlicher Weise realisiert. Jede Moduleinheit empfängt Belegtsignale von jeder niedriger bezifferten E/A-Steuereinheit auf ihrer Sammelleitung. Wenn sämtliche niedriger bezifferten Moduleinheiten ein Belegtsignal senden, nimmt die betrachtete Moduleinheit das nächste Befehlskennwort auf.
Jeder E/A-Abschnitt der Schaltverriegelung wird bewerkstelligt in Null-Zeit, da sämtliche Kollisionen innerhalb einer einzigen Taktzeit gelöst werden, bevor eine E/A-Steuereinheit ihren zugehörigen Speicher-Anruf-Flip-Flop setzt.
Prozessor
45
Es folgt jetzt die Betrachtung der Fig. 4A und 4 B, nämlich des Blockschaltbilds des Prozessors. Das Rechnersystem mit diesem Prozessor ist so ausgelegt, daß es mit einem für fast alle Rechenprobleme ausreichend langen Datenwort (49 Bits einschließlich Vorzeichen und Parität) arbeitet. Bei der Rechnung mit gleitendem Komma stehen 36 Bits der Mantisse und 12 Bits der Charakteristik zur Verfügung.
Ein Dünnfilm-Speicher ist mit 3001 bezeichnet. In der Dünnfilmabteilung 3001 ist ein Basis- oder Grundadressenregister 055 vorgesehen. Die Adressendaten werden zu dem Inhalt des 16-Bit-Basisadressenregisters 055 hinzuaddiert, um sich dadurch auf einen Speicherbereich zu beziehen, welcher als der direkte Adressenbereich bekannt ist.
Der Inhalt der direkten Adressenspeicherstelle kann entweder ein Operand oder eine andere Speicheradresse sein. g.
Durch diese Technik kann man mit jeder beliebigen Anzahl von Ebenen indirekt adressieren (Adressensubstitution).
In dem Dünnfilm-Speicher 3001 sind 15 Indexregister oktal 001 bis 017 vorgesehen. Einige oder alle der 3 Operandenadressen, weiche für jeden Befehl entwickelt werden können, können durch den Inhalt von 3 der 15 Dünnfilm-Indexregister 001 bis 017 modifiziert werden.
Operandenstapel (Kellerspeicher)
Operanden können von dem Hauptspeicher oder dem Operandenstapel 3099 abgerufen werden. Auf diese Weise verringert der Operandenstapel 3099 die Anzahl der Zugriffe zum Hauptspeicher dadurch, daß er partielle oder Zwischenergebnisse der Berechnung festhält. Der Stapel arbeitet in zwei Betriebsweisen, nämlich in der Normal- und der Halte-Betriebsweise. Die Halte-Betriebsweise ist nützlich bei Listenhandhabung und wiederholter Verwendung einer Zahl.
Der Operandenstapel wird verwendet, um bis zu 4 Datenworte zeitweilig zu speichern, bei welchen es sich z. B. entweder um Zwischenergebnisse oder um Datenworte handelt, welche wiederholt gebraucht werden sollen. Diese Operanden, welche immer wieder verwendet werden, und die Zwischenergebnisse können in dem Stapel 3099 belassen und in kürzerer Zeit adressiert werden, als derjenigen, welche zum Lesen eines Operanden aus dem Hauptspeicher erforderlich ist. Jedoch ist zu einem gegebenen Zeitpunkt für eine Leseoperation nur die Spitze des Stapels 3099 zugänglich. Für eine Schreiboperation ist entweder die Spitze des Stapels oder das nächstfolgende Niveau zugänglich. Der Programmierer muß sich darüber im klaren sein, welche Werte in jedem Niveau des Stapels 3099 vorliegen und zu welchem Niveau augenblicklich ein Zugriff möglich ist. Obwohl der Stapel 3099 eine Gruppe von 4 Registern, wie in F i g. 1A dargestellt, umfaßt, soll der Stapel 3099 zum Zwecke der besseren Erklärung, als ein vier-Worte- kreisförmiger Speicher mit einem Adressierzähler betrachtet werden. Auf eines der vier Worte wird stets gezeigt (es befindet sich unter dem »Lesekopf«).
Die erste Silbe eines Befehls liefert den Operationskode und 3 Adressenindikatoren. Die Adressenindikatoren ermöglichen die Wahl zwischen dem Holen des Operanden vom Operandenstapel oder aus dem Speicher und zeigen an, ob sich der Stapel in der Normal- oder Halte-Betriebsweise befindet und ob die Speicheradresse indiziert werden soll oder nicht. Adressensilben oder -Silbenketten folgen der Operationsteils-Silbe für jeden aufgerufenen Speicherzugriff. Jede Operandenspeicher-Adressensilbe enthält Adressendaten von 11 Bits und ein indirektes Adressenbit. Sooft ein Zugriff zu dem Stapel 3099 durchgeführt wird, besteht die Alternative, den Stapel entweder zu halten oder um einen Schritt weiterzudrehen. Die normale Betriebsweise ist, den Stapel bei jedem Zugriff zum Stapel weiterzuschalten. In dem Dünnfilm-Speicher 3001 sind die Stapelregister 140 bis 143, 144 bis 147, 150 bis 153 und 154 bis 157 dargestellt. Zum Zwecke der Erläuterung sei angenommen, daß sich das Stapelregister 1 (140 bis 143) zu einem bestimmten Zeitpunkt in der Lesestellung befindet.
Der Schrittschaltvorgang folgt auf jeden Holvorgang vom Stapel 3099 und geht der in dem Stapel 3099 gemachten Eintragung voraus. Eine Leseoperation ist also ein Holvorgang von dem Stapel 3099,
und ein Schrittschaltevorgang folgt einem derartigen Lese- oder Holvorgang vom Stapel 3099. Eine Schreibeoperation ist eine in dem Stapel 3099 vornommene Eintragung, und der Schrittschaltevorgang geht der in dem Stapel 3099 gemachten Eintragung voraus. Das Weiterschalten vollzieht sich nach einem Lese- oder Holvorgang im Gegenzeigersinn und vor einer Eintragung im Uhrzeigersinn. Wie noch später ausgeführt werden wird, bezeichnen die Adressenmarkenwerte 00 und 01 in der Operationsteilsilbe den Stapel 3099 als die beabsichtigte Operanden- oder Ergebnisquelle oder -Speicherstelle. Die Kodes 10 und 11 beziehen sich auf den Speicher als die Quelle oder die Speicherstelle für Operanden oder ein Ergebnis. Der Indikatorkode 00 bezeichnet das normale Fortschalten des Stapels, und der Indikatorkode 01 gibt an, daß der Stapel gehalten und nicht weitergeschaltet werden soll. Wie später noch genauer beschrieben wird, kann der Stapel durch die Befehle »Stapel hinaufschalten«, Stapel hinunterschalten« und »Stapel umkehren« so gedreht werden, daß das Startregister, zu welchem Zugriff gewünscht wird, sich in »Stapelspitzen«-Stellung befindet.
Wie schon oben angedeutet wurde, kann man sich die Stapelregister 140 bis 143, 144 bis 147, 150 bis 153 und 154 bis 157 einfach als schrittweise schaltbaren, kreisförmigen Speicher mit vier Worten vorstellen. Sobald der Stapel auf Holen adressiert wird (Lesen eines Operanden), wird der Operand in dem augenblicklich unter dem Lesekopf befindlichen Register geholt, worauf der Stapel entweder in der Holrichtung fortgeschaltet oder gehalten (nicht fortgeschaltet) werden kann. Wenn der Stapel wegen des Speichems (Schreibens) eines Operanden adressiert wird, wird der Stapel zunächst entweder in der Speicherrichtung fortgeschaltet oder aber gehalten (nicht fortgeschaltet), worauf der Operand in dem unter dem Lesekopf befindlichen Register gespeichert (eingeschrieben) wird. Auf diese Weise wird also entweder ein Operand von der Stapelspitze geholt oder an der gleichen Stelle ein Ergebnis gespeichert. Das Fortschalten des Stapels wird als Stapel-Normal-Betrieb bezeichnet, während das Nichtfortschalten des Stapels als Stapel-Halte-Betrieb definiert wird.
Wenn ein Operand oder ein Ergebnis dem Operandenstapel zugeordnet wird, braucht keine Speicheradresse errechnet zu werden, da der betreffende Operand stets von der Stapelspitze geholt oder aber dort in einer »Adresse« gespeichert wird. Dementsprechend benötigt ein Operand oder ein Ergebnis, welches mit dem Stapel in Beziehung gebracht werden soll, keine Speicheradressensilbe in der Silbenkette.
Im folgenden wird der in Fig. 4A und 4B dargestellte Prozessor im einzelnen beschrieben, nachdem zunächst die Struktur der in Rechnerbefehlen verwendeten Programmsilben beschrieben worden ist. In der nun folgenden Beschreibung der Programmsilbenstruktur wird ein Holen vom Stapel in Beziehung zur Operationsteilssilbe beschrieben werden.
Die Struktur der Programmsilben
Beim Programmieren in der Maschinensprache des erfindungsgemäßen Prozessors finden 18 Silbenarten Verwendung. Diese Silbenarten sind: Die Operationsteilssilbe, Indexsilbe, die Speicher- und die Verzweigungsadressensilbe, die Dünnfilm-Adressensilbe, die Eingabeinkrement-Variantensilbe und die Eingabeinkrement-Betragssilbe, die Schiebesilbe, die Übertragungsvariantensilbe, die Silbe für den logischen Zustand des Systems, die Gruppendefinierungssilbe, die Zeichensilbe, die Unterroutinen-Sprungadressen- und die Unterroutinen-Sprunginkrementsilbe, die Zählungswiederholungs- und die Inkrementwiederholungssilbe, die E/A-Silbe und schließlich die Sonderregister- und Prozessorunterbrechungsvari-
IQ antensilbe. Jede Silbe umfaßt 12 Bits.
Die Operationsteilssilbe umfaßt Befehlsbits 1 bis 6, welche die fundamentale gewünschte Operation angeben. Die nächstfolgenden 6 Bits umfassen die Adressenmarken A1, A., und Α.Λ, welche je aus 2Bits
bestehen und anzeigen, wieviel Silben der Operationsteilssilbe folgen. Letztere ist die einzige für jeden Befehl erforderliche Silbe. Sie identifiziert jede etwa folgende Silbe und jeden Stapelgebrauch für den Befehl. Diese Silbenart kann nicht indiziert
ao werden.
Jede der aus 4 Bits bestehenden Marken A1, A2 und Α., hat vier mögliche Konstruktionen. Die Adressenmarke wird ignoriert, wenn die Adresse nicht für einen Befehl verwendet wird. Die vier möglichen binären Kombinationen sind:
a) 00 — ein Operand wird dem Stapel zugeordnet: In der Silbenkette befindet sich keine Speicheradressensilbe, welche sich auf den Operanden bezieht. Der Stapel muß normal weitergeschaltet werden (Stapel-Normal-Betrieb).
b) 01 — ein Operand wird dem Stapel zugeordnet: In der Silbenkette befindet sich keine Speicheradressenselbe, welche sich auf diesen Operanden bezieht. Der Stapel muß gehalten werden (Stapel-Halte-Betrieb).
c) 10 — entweder eine Speichersilbe, welche ein Teil des Programms ist, oder ein Operand wird in Beziehung zum Kernspeicher gesetzt: Indizieren wird nicht verwendet. In der Silbenkette erscheint eine relative Speicheradressensilbe, welche sich auf diesen Operanden bezieht. Eine Alternativmöglichkeit ist die, daß sich in der Silbenkette eine nicht indizierte Sondersilbe befindet.
d) 11 — ein Operand wird zum Kernspeicher in Beziehung gesetzt: Indizieren wird verwendet. Die Indexsilbe geht der relativen Adressensilbe in der Silbenkette voraus. Eine Alternativlösung ist die, daß der Sondersilbe in der Silbenkette eine Indexsilbe vorausgeht.
In den Befehlen werden verschiedene Silbenarten
verwendet, darunter die Eingabe/Ausgabe-Silbe (10).
Diese Silbe wird bei einem E/A-Übermittlungsbefehl verwendet, um die E/A-Sammelleitung auszuwählen und die E/A-Kennworte zu steuern.
Modulare Beschreibung
Es wird erneut Bezug genommen auf das Blockschaltbild des Prozessors in den Fig. 4A und 4B. Ein Prozessor hat grundsätzlich drei Funktionen: nämlich die Rechen-, die Steuer- und die Speicherfunktion. Weiterhin empfängt er Eingaben und gibt Ausgaben aus. Der erfindungsgemäße Prozessor führt in Verbindung mit seinem Dünnfilm-Speicher, dem mit anderen Bauteilen gemeinsam benutzten
Speicher und anderen Systemeinheiten diese Funktionen aus. Jedoch kann man sich den Prozessor als in fünf funktionell Einheiten aufgeteilt vorstellen: 1. Dünnfilm-Speicher; 2. Speicherschutz; 3. Speichervermittlung; 4. Leitwerk und 5. Rechenwerk.
Dünnfilm-Speicher
Der Prozessor umfaßt einen Dünnfilm-Speicher 3001 für 128 Worte. Diese Dünnfilmworte sind mit oktalen Adressen von 000 bis 177 versehen. Die Adressen 000 bis 077 umfassen 16 Bit-Worte, und die Adressen 100 bis 177 umfassen 12 Bit-Worte. Dabei ist zu bemerken, daß in dem hier beschriebenen Dünnfilm-Speicher, welcher eine Anzahl Wort-Speicherzellen umfaßt, diese Worte gruppiert, vom Prozessor adressiert und in Beziehung zum Prozessor strukturell wie ein Register zusammengestellt werden. Dieser Ausdruck »Register« wird im folgenden benutzt, um diese Worte zu beschreiben. Einrichtungen sind vorgesehen, wodurch jedes dieser Worte entweder ein Register, einen Teil eines Registers oder ein Reserveregister bildet. Auf diese Weise bilden einige der 16 Bit-DünnfUmworte einen Teil größerer Register von 32 Bits, 48 Bits und 64 Bits, welche in 16 Bit-Registerteile unterteilt sind; einige der 12 Bit-Dünnfilmworte sind ein Teil größerer Register von 24 Bits, 36 Bits und 48 Bits, welche in 12 Bit-Registerteile aufgeteilt sind. Bei jedem Zugriff zum Dünnfilm-Speicher werden bei der Adressierung eines Registers mit mehr als einem Dünnfilmwort die Teile von entweder 12 Bits oder 16 Bits jenes Registers nacheinander adressiert.
Ein Programmspeicherregister PSR1 mit 48 Bits einschließlich der Silbenregister 100 bis 103 und ein Programmspeicherregister PSR2 mit 48 Bits einschließlich der Silbenregister 104 bis 107 sind vorgesehen. Das heißt, daß das Programmspeicherregister 1 die 12 Bit-Register 100 bis 103 und das Programmspeicherregister 2 die 12-Bit-Register 104 bis 107 umfaßt.
Die erste Operation, welche von dem Prozessor durchgeführt werden muß, ist das Laden des Programms in die Speicher-Moduleinheiten der Anlage. Der Prozessor verwendet die Programmspeicherregister für diese Aufgabe.
Das im folgenden beschriebene Rechenwerk weist ein 12-Bit-Flip-Flop-C-Register 3034 auf. Das Dünnfilmregister 124 bis 127 wird in Verbindung mit dem C-Register 3034 verwendet. Jedesmal, wenn sich 12 Bits in dem C-Register 3034 angesammelt haben, werden sie in das Dünnfilm-C-Register 124 bis 127 übertragen, und das C-Register 3034 beginnt dann mit der Ansammlung der nächsten 12 Bits. Am Ende einer Rechenoperation hat sich dann ein vollständiges Wort oder eine Gesamtzahl von 48 Bits in dem Dünnfilm-C-Register 124 bis 127 angesammelt.
Drei 12-Bit-Wiederholungsinkrementregister (RIR) 130 bis 132 sind zur Ausführung eines Wiederholungsbefehls vorgesehen. Sie enthalten das Inkrement zu jeder Speichersilbe des wiederholten Befehls das addiert wird.
Vier Stapelregister mit je 48 Bits, nämlich 140 bis 143, 144 bis 147, 150 bis 153 und 154 bis 157, bilden den Stapel oder Kellerspeicher 3099, welcher im einzelnen in der Beschreibung der Fig. 6A und 6B und der Operationsteilssilbe beschrieben worden ist. Der Stapel 3099 bildet einen HilfsSpeicher. Obwohl nur vier Worte gleichzeitig gespeichert werden, findet der Stapel 3099 umfassende wiederholte Verwendung bei der Bildung eines Schnellzugriffsspeichers, welcher den Anlagenbetrieb beträchtlich beschleunigt.
Ein K- und E-Register 3004 und 3005, dessen K-Registerteil 3004 4 Bits und dessen E-Registerteil 3005 12 Bits enthält, ist im Prozessor vorgesehen. Das K- und E-Register 3004 und 3005 ist in erster ίο Linie ein Lese-Schreib-Register für den Dünnfilm-Speicher 3001. Ein L- und M-Register 3006 und
3007 mit einem 4-Bit-L-Register 3006 und einem 12-Bit-M-Register 3007 ist zur Erleichterung der Übertragung von und zu den Speicher-Modulein-
heiten vorgesehen. Ferner sind L- und M-Addierer
3008 bzw. 3009 mit einem 4-Bit-Addierer 3008 und einem 12-Bit-Addierer 3009 vorgesehen, um die Inhalte des K-Registers 3004 und der L-Registers 3006 und ferner den Inhalt des E-Registers 3005 zu demjenigen des M-Registers 3007 zu addieren und das Ergebnis jeweils in das L-Register 3006 bzw. M-Register 3007 einzubringen. Die wichtigste Funktion der Addierer 3008 und 3009 ist die Durchführung des Adressenrechners. Dieses wird verwendet, um
die Speichersilbe zu den Inhalten des Programmadressenregisters 054 oder des Basisadressenregisters 055 und der Eingaberegister hinzuzuaddieren und auf diese Weise die absolute Adresse im Speicher bereitzustellen. Die Addierer 3008 und 3009 werden auch zum Inkrementieren des Programmzählregisters 057 verwendet.
Das K/E-Register 3004, 3005 bildet einen 16-Bit-Puffer für Daten, und das 7-Bit-Dünnfilm-Adressenregister3510 (s. die Fig. 4A) dient zur Adressenspeicherung. Da jedoch der Dünnfilm-Speicher für getrennte Register Verwendung findet, muß jede Adresse, wenn sie gebraucht wird, errechnet werden. Einige Ein-Adressen-Register, wie z. B. das Basisadressenregister 055, erfordern nur das direkte Kodieren der 7-Bit-Adresse. Mehr-Adressen-Register (z. B. der Stapel 3099) erfordern ein Inkrementieren der Adresse, bis das gesamte Wort herausgegeben ist. Wenn der Dünnfilm-Speicher 3001 als Random-Wortspeicher verwendet werden soll, müssen Vorkehrungen zur Übertragung einer 7-Bit-Adresse getroffen werden. Es sind Register vorgesehen, die in den Kodierer eingeben und aus einem 3-Bit-Programmsilben-Adressenregister, einem 2-Bit-Stapel-Adressenregister, einem 2-Bit-Silbenzähler und einem 2-Bit-Eingangssilbenzähler bestehen (sämtlich nicht dargestellt). Wie in F i g. 4 A und 4 B gezeigt, speisen auch das Silbenregister 3017, das drei 4-Bit-Abschnitte (Abfühlen), 5 Bits, oder 7 Bits enthält, und der Dünnfilm-Adressenschalter 3510 den Kodierer.
Wenn jedes Dünnfilmregister mit einem Unterbefehl adressiert wird, wird das 7-Bit-Dünnfilm-Adressenregister 3510 entsprechend in seine Dünnfilm-Adressenregisterbits 1 bis 7 eingestellt, um dasjenige Dünnfilmregister im Dünnfilm-Speicher 3001 zu adressieren, welches durch die Adresse verlangt wird.
Zusammenfassend wird noch einmal festgestellt, daß der Dünnfilm-Speicher Speicherraum für 128 Worte in den Adressen 000 bis 177 bietet. In der Zeichnung sind 38 Adressen Reserveadressen. Die verbleibenden 90 Adressen bilden Ein- oder Mehrsilben-Dünnfilmregister. Das 7 Bits umfassende Wort,
809 649/3
welches zur Adressierung eines Einsilben-Dünnfilmregisters oder einer gegebenen Silbe eines Mehrsilben-Dünnfilmregisters benötigt wird, wird durch die Steuereinheit 3020 an den Dünnfilm-Adressenstromkreis 3510 geliefert. Wenn die Operation ein Holen ist, wird der Inhalt (Silbe) des adressierten Registers von dem Dünnnlmregister 3001 zum K/E-Register 3004, 3005 übertragen. Wenn die Operation eine Speicherung ist, wird der Inhalt des K/E-Registers 3004, 3005 in dem Register oder der Silbenstelle des adressierten Mehrsilbenregisters gespeichert. Ein Holen oder Speichern erfordert bei einem Einsilbenregister nur eine 7-Bit-Adresse, wohingegen ein Holen oder ein Speichern bei einem Mehrsilbenregister eine Adresse für jede Silbe erforderlich macht (d. h. eine Aufeinanderfolge von Unterbefehlen, in welcher die Adresse nacheinander erneuert wird).
Speicherschutzeinheit
Die Speicherschutzeinheit speichert obere und untere Adressengrenzen, in denen Daten im Hauptspeicher gespeichert werden können. Die Speicherschutzeinheit umfaßt zwei Speichergrenzenregister und zwei Komparatoren. Jedesmal, wenn ein Ergebnis in dem Hauptspeicher gespeichert (geschrieben) werden soll, wird die Speicheradresse mit den oberen und unteren Adressengrenzen verglichen, und eine Speicherung wird nur dann erlaubt, wenn die Speicheradresse innerhalb dieser Grenzen liegt.
Ein 8-Bit-oberes-Grenzen-(X)-Flip-Flop-Register 3012 und ein 8-Bit-unteres-Grenzen-(Y)-Flip-Flop-Register 3013 sind vorgesehen. Die Grenzenregister
3012 und 3013 definieren die obere und die untere Grenze des Feldes, welches von dem Prozessor beschrieben werden kann. Die Grenzenregister 3012 und 3013 können durch ein Programm geladen werden, um auf diese Weise die Grenzen zu speichern, in denen Informationen in den Hauptspeicher eingeschrieben werden können. Die Grenzenregister 3012 und 3013 liefern ferner acht vorbestimmte obere und acht vorbestimmte untere Bits, welche mit den acht höchsten Bits der direkten Speicheradresse (in dem L/M-Register 3006, 3007) verglichen werden, welche für eine Schreiboperation gefordert werden. Die Grenzenregister 3012 und 3013 befinden sich nur dann in wirksamem Betrieb, wenn der Prozessor in der Normalbetriebsart arbeitet; in der Steuerbetriebsart sind sie dagegen wirkungslos. Ein 12-Bit-Flip-Flop-Unterbrechungsregister 3002 ist für den Fall vorgesehen, daß ein Versuch vorliegt, über die durch das obere und das untere Grenzenregister 3012 und
3013 festgelegten Grenzen hinauszuschreiben; dann wird ein Unterbrechungsbit in dem Unterbrechungsregister 3002 eingestellt. Das bedeutet, daß, wenn die obere oder die untere Grenze während der Normalbetriebsart des Prozessors verletzt wird, das Einschreiben in den Speicher verhindert und ein Unterbrechungsbit gesetzt wird. Auf diese Weise ist der Speicher in Blocks zu 256 Worten geschützt. Die acht höchsten Bits einer Speicheradresse umfassen die 4 Bits, welche in dem L-Register 3006 und die vier höchsten Bits, welche in dem M-Register 3007 enthalten sind. Ein Komparator 3010 ist eingeschaltet und empfängt Eingänge von dem oberen Grenzenregister 3012 und dem L/M-Register 3006, 3007. Ebenso ist ein Komparator 3011 in den Prozessor eingebaut, welcher Eingänge von dem unteren Grenzenregister 3013 und dem L/M-Register 3006 und 3007 empfängt. Die 8 Bits, welche die 4 Bits des L-Registers 3006 und die vier höchsten Bits des M-Registers 3007 umfassen, werden dem Komparator 3010 zugeleitet und mit den 8 Bits in dem unteren Grenzenregister 3013 verglichen. Wenn diese acht L/M-Registerbits den Wert der 8 Bits des unteren Grenzenregisters 3013 übersteigen, veranlaßt der Komparator, daß ein Signal zur Steuereinheit (Leitwerk) 3020 gesandt wird. Die Steuereinheit 3020 spricht auf dieses Komparator-Ausgangssignal an und bewirkt das Setzen des Unterbrechungsregisters 3002. Ähnlich dem Vergleich mit dem unteren Grenzenregister 3013 im Komparator 3011 werden die 4 Bits des L-Registers 3006 und die vier höchsten Bits des M-Registers 3007 in dem Komparator 3010 mit den 8 Bits des oberen Grenzenregisters 3012 verglichen. Für den Fall, daß die acht höchsten Bits des L/M-Registers 3006, 3007 den Wert der 8 Bits des oberen Grenzenregisters 3012 übersteigen, liefert der Komparator 3010 einen Ausgang, welcher durch die Steuereinheit 3020 hindurchgeschickt wird, um das Unterbrechungsregister 3002 für eine Unterbrechung zu setzen. Der Ausdruck: »Setzen des Unterbrechungsag registers 3002«, wie er oben verwendet wurde, bedeutet, daß in dem Unterbrechungsregister 3002 ein Bit gesetzt wird. Die Grenzenregister3012 und 3013 werden bis zu jeder Grenze gelöscht. Das bedeutet, daß das untere Grenzenregister 3013 auf Null zurückgeschaltet und das obere Grenzenregister 3012 ganz auf Einsen eingestellt wird. Die Register werden dann durch denjenigen Unterbefehl von dem A-Register 3033 gesetzt, welcher den Inhalt des A-Registers 3033 in das obere Grenzenregister 3012 und das untere Grenzenregister 3013 überträgt. Die Null-Seiten der Bits A 33 bis A 40 des A-Registers 3033 werden in das obere Grenzenregister 3012 übertragen, und die Eins-Seiten der Bits A 41 bis A 48 des A-Registers 3033 werden in das untere Grenzenregister 3013 übertragen.
Der Komparator
Der Komparator 3011 ermittelt das niedrigste Ende des Registers, entwickelt ein Signal »A ist kleiner oder gleich B(A <[ ß)« und leitet dieses Signal zur nächsten Stufe weiter. Durch Umkehr dieses Signals erhält man das Signal »A ist kleiner als B(A <ß)«. Der Komparator kann zwei Arten von Stromkreisen verwenden, nämlich den Einleitungs- und den Weiterleitungsstromkreis. Komparatoren dieser Art gehören zum Stand der Technik.
Speicher-Vermittlungs-Einheit
Die Speicher-Vermittlungseinheit umfaßt ein Pufferregister zum Dünnfilm-Speicher, das 16-Bit-K/E-Register 3004, 3005 und ein L/M-Register 3006, 3007 zuzüglich der Adressenaddierer 3008 und 3009, welche zwischen den Registern (.KVE 3004, 3005 und LIM 3006, 3007) angeordnet sind. Die Einheit hat zwei Hauptaufgaben: 1. Das Errechnen einer direkten Adresse, welche verwendet wird, wenn Verbindung mit dem Haupt-Ferritkern-Speicher aufgenommen wird; 2. die Handhabung von Informationen, wenn entweder mit dem Hauptspeicher oder mit dem Dünnfilm-Speicher 3001 Verbindung aufgenommen wird. Eine direkte Adresse von 16 Bits wird benötigt, sooft Informationen aus dem Hauptspeicher geholt und
zum Prozessor gebracht oder vom Prozessor im Hauptspeicher gespeichert werden müssen. Die direkte 16-Bit-Adresse wird dadurch errechnet, daß die relative 12-Bit-Speicheradressensilbe zum L/M-Register 3006, 3007 und eine 16-Bit-Basisadresse von einem Dünnfilm-Basisadressenregister 055 oder 057 zum K/E-Register 3004, 3005 übertragen werden. Eine direkte 16-Bit-Adresse wird dann dadurch gebildet, daß die relative und die Basisadresse addiert werden (Addition des K/E-Register-3004, 3005-Inhalts zum Inhalt des L/M-Registers 3006, 3007) und das Ergebnis in dem L/M-Register 3006, 3007 gespeichert wird. Die Funktion der Speicher-Vermittlungseinheit während des indirekten Adressierens und/oder Indizierens wird im folgenden beschrieben. Die vier höchsten Bits der resultierenden direkten 16-Bit-Adresse, welche in dem L-Registerteil 3006 des L/M-Registers 3006,3007 erscheinen, bilden eine Speicher-Moduleinheiten-Adresse, während die 12 übrigen Bits, welche in dem M-Teil 3007 stehen, eine interne Adresse des adressierten Speichers darstellen.
Wenn ein Wort (48 Bits plus Paritätsbit, dargestellt als vier 12-Bit-Silben plus Paritätsbit) vom Hauptspeicher zum Prozessor geholt werden soll, wird zunächst die direkte Adresse, wie oben beschrieben, errechnet und in dem L/M-Register 3006, 3007 gespeichert. Danach wird Zugriff zum Speicher verlangt. Wenn der Zugriff durch eine bestimmte adressierte Speicher-Moduleinheit gewährt wird, d. h. die Moduleinheit, deren 4-Bit-Adresse in dem L-Register 3006 enthalten ist, empfängt deren Speicheradressenregister die moduleinheiteninterne 12-Bit-Adresse (von dem M-Register 3007), und ein Speicherlesezyklus wird eingeleitet. Das adressierte Speicherwort wird abgefühlt und dann parallel in das Speicherinformationsregister (nicht dargestellt) in dem M-Speicher übertragen. Das Wort wird in das L/M-Register 3006, 3007 während vier aufeinanderfolgender Taktgeber-Takten übertragen, wobei die niedrigste Silbe als erste eingebracht wird. Die drei verbleibenden Silben werden in das M-Register 3007 zu den Zeitpunkten n + 1, n+2 und n-\-3 übertragen. Während die Silben nach der niedrigsten jeweils in das M-Register 3007 übertragen werden, wird die vorhergehende Silbe vom M-Register 3007 in ein »Bestimmungs«-Register des Prozessors übertragen, wie das noch näher beschrieben werden wird. Während eines fünften Zeitgeberfrequenz-Taktes wird die Übertragung des Paritätsbits zur Überprüfung der Parität vollzogen.
Zur Speicherung eines Wortes (48 Bits plus Paritätsbits) im Hauptspeicher wird eine direkte 16-Bit-Adresse gebildet und Zugriff verlangt wie bei einem Lesevorgang. Wenn der Zugriff gewährt worden ist, wird der Schreibeteil des Speicher-Lese-Schreib-Zyklus eingeleitet. Die niedrigste Silbe, welche in dem M-Register 3007 untergebracht worden war, wird in das Speicherinformationsregister der festgelegten Speicher-Moduleinheit übertragen. Die übrigen Silben werden nacheinander von dem »Quellen«- Register des Prozessors in das M-Register 3007 und dann weiter in das Speicherinformationsregister übertragen usw. Als letztes wird die Parität erzeugt und als fünfte Silbe gesendet.
Für die Verbindungsaufnahme mit dem Dünnfilm-Speicher 3001 ist keine Adressenberechnung erforderlich. Bei einem Holen von Daten aus dem Dünnfilm wird das betreffende Dünnfilm-Register, dessen Inhalte verlangt werden, direkt durch die Steuereinheit 3020 adressiert. Die Adresse besteht aus einem 7-Bit-Wort. Ein 12- oder 16-Bit-Wort wird dann von dem Register in den Dünnfilm übertragen, welcher zum K/E-Register 3004, 3005 adressiert war. Bei Mehrsilben-Dünnfilmregistern wird die niedrigste Silbe als erste zu dem K/E-Register 3004, 3005 übertragen, woran sich die Übertragung der übrigen Silben nacheinander anschließt, wobei jede Silbe eine von der Steuereinheit 3020 gelieferte, berichtigte Adresse erfordert. Während jede Silbe nach der niedrigsten Silbe vom Dünnfilm-Speicher zum K/E-Register 3004, 3005 übertragen wird, wird die vorhergehende Silbe vom K/E-Register 3004, 3005 zum »Bestimmungs«-Register übertragen. Für die Speicherung im Dünnfilm wird das zu speichernde 12- oder 16-Bit-Wort in das K/E-Register 3004,3005 gebracht, und das betreffende Dünnfilm-Register, in welchem eine Speicherung gewünscht wird, wird durch die Steuereinheit 3020 adressiert. Bei mehrsilbigen Worten wird die niedrigste Silbe als erste gespeichert, woran sich die Speicherung der verbleibenden Silben anschließt. Jede Silbe erfordert eine erneuerte Adresse von der Unterbefehlsmatrix 3020.
Leitwerk 3020
Es wird erneut auf F i g. 4 Bezug genommen. Das Leitwerk liefert die Zeitsteuerung und sonstige Steue-
3„ rung für den Betrieb des Prozessors. Ein Zeitsteuerungs-Verteiler liefert den beim Betrieb des Prozessors verwendeten Grundtaktfrequenz-Impuls. Wenn auf den Hauptspeicher zum Zwecke des Holens oder Speicherns Zugriff genommen wird, wird die betreffende Speicher-Moduleinheit, welche für diesen Zugriff zeitweilig dem Prozessor untergeordnet ist, durch einen Speicherzeitzähler (TM) betrieben. Ein Phasenverteiler ermöglicht die Auswahl der Reihenfolge, in welcher die Betriebsphasen (1 bis 6) vor sich gehen.
4„ Der Multiplikations-Divisions-Zähler3021 steuert die Anzahl der Schiebevorgänge, welche während eines Befehls durchgeführt werden müssen, insbesondere die Anzahl der Additions- oder Subtraktionszyklen während Multiplikations- oder Divisionsoperationen.
Funktionsregister
Ein 12-Bit-Flip-Flop-Funktions-(F)-Register 3015 ist vorgesehen, um die Operationsteils-(Befehls)-Silbe des Programms zu speichern. Das Register 3015 hält die Operationsteilsilbe, welche aus Bits zusammengeschrieben ist, die vom E-Register 3005 übertragen wurden. Ein 12-Bit-Flip-Flop-Silben-(S)-Register3017 speichert die Programm-Indexsilbe, falls indiziert wird. Wenn dieses Register nicht zum Halten von Indexsilben benötigt wird, findet es Verwendung beim Halten von Varianten-(Sonder)-Silben, welche Programmsilben darstellen, die zur Modifizierung desjenigen Programmbefehls verwendet werden, welcher gerade in dem Funktionsregister 3015 gehalten wird. Die Silben werden in einem völlig parallelen Übertragungsvorgang von dem E-Register 3005 oder dem M-Register 3007 eingeschrieben.
Der Multiplikations-Divisions-Zähler
Zwischen der Steuereinheit 3020 und dem Rechenwerk ist ein Multiplikations-Divisions-Zähler (D) 3021
eingeschaltet. Bei dem Zähler 3021 handelt es sich um ein 6-Bit-Flip-Flop-Register. Es wird verwendet bei der Realisierung verschiedener Rechenbefehle. Eine seiner wichtigsten Funktionen ist die eines Schiebezählers während Schiebeoperationen. Wie schon sein Name sagt, dient der Multiplikations-Divisions-Zähler 3021 auch zur Zählung der Anzahl der Additionen oder Subtraktionen bei Multiplikationsoder Divisions-Operationen. Der Zähler 3021 kann in Vielfachen von 1, 6 und 12 abwärtszählen. Dies entspricht der Fähigkeit des A-Registers 3033 im Rechenwerk 3030, jeweils gleichzeitig entweder um ein, sechs oder zwölf Bits nach rechts zu verschieben. Der Zähler 3021 zählt jeweils um eine Einheit aufwärts. Das A-Akkumulator-Register 3033 kann jeweils nur um ein Bit nach links verschieben.
Das Dünnfilm-Adressentor 3018 ist ein 7-Bit-Adressenkodierer. Beim Empfang von Signalen von der Steuereinheit 3020 kodiert es die 7-Bit-Adresse von der Einheit 3020 und benutzt das kodierte Ausgangssignal, um den Dünnfilm-Speicher zu addressieren. 14 Leitungen am Ausgang des Diinnfilm-Torkodierers 3018 speisen in das Dünnfilm-Adressenregister 3510 ein.
Das Unterbrechungs-Speicherregister 040 bis 042 bietet Speicherraum für Daten in den arbeitenden Registern für den Fall, daß eine Unterbrechung eintritt. Das Unterbrechungs-Basisadressenregister 063 enthält die Basisadresse der Unterbrechungsroutinen; die Inhalte dieses Registers sind während des Normalbetriebs geschützt. Das Unterbrechungs-Speicherregister 040 bis 042 hält Unterbrechungs-Wiederkehr-Informationen (d. h. die früheren Inhalte des Basisadressenregisters 055, des Basisprogrammregisters 054 und des Programmzählregisters 057). Das Unterbrechungs-Programmregister 110 bis 113 bietet Speicherraum für den Inhalt des Programmspeicherregisters 100 bis 103 oder 104 bis 107, das bei einer Unterbrechung gerade verwendet wird. Das Unterbrechungs-Abwurfregister 070 hält die Inhalte der Steuer-Flip-Flops (s. F i g. 4), welche erforderlich sind, um nach Rückkehr von der Unterbrechungsroutine mit dem Programm wieder fortzufahren.
Ein Über-Unterspannungs-Detektor entdeckt und signalisiert Abweichungen der Primärleistung zwischen den festgelegten Spannungsgrenzen. Das »außerhalb der Toleranz«-Signal veranlaßt den Prozessor, genügend Informationen für die Wiederaufnahme des Programms ohne Datenverlust zu speichern.
Für eine automatische Wiederaufnahme des Programms sind dadurch Vorkehrungen getroffen, daß automatisch gespeicherte Daten wieder in die Flip-Flop-Register geladen werden. Die Netzteile selbst haben eine genügend lange Zeitkonstante, um die Bauelemente, das Programm und die Daten vor allen Unregelmäßigkeiten und Ausfällen der Primärleistung zu schützen und die Fortführung des Programms zu ermöglichen, sobald die Primärleistung wieder stabil ist.
Leitwerk 3020
Das Leitwerk, das auch als Steuereinheit bezeichnet wird, erzeugt Unterbefehle zur Durchführung aller Befehle. Die Steuereinheit 3020 enthält einen Zeitsteuerungsverteiler T von 15 Bits, bei welchem es sich eigentlich um ein 15-Bit-Phasenverteilungsregister handelt. Sie enthält weiterhin ein 6-Bit-Phasen-Verteilungsregister. Die Steuereinheit 3020 enthält außerdem einen Speicher-Zeitsteuerungszähler.
Der Zeitsteuerungsverteiler spricht auf den Nebentaktgeber in diesem Prozessor an. Der Speicher-Zeit-Steuerungszähler in der Steuereinheit 3020 wird für die Zeitsteuerung bei Datenübertragungen zwischen den Speichermoduleinheiten und dem Prozessor verwendet. Die übrige Steuereinheit 3020 ist aus Decodierern aufgebaut, welche von dem Zeitsteuerungsverteiler, dem Phasenverteiler, dem Speicher-Zeitsteuerungszähler und dem dekodierten Ausgang des Funktionsregisters 3015 Gebrauch machen, um Unterbefehle für die Ausführung von Befehlen zu erzeugen. Die Unterbefehle, welche hauptsächlich von dem Funktionsregister und den drei Zeitsteuerungsverteilern aufgebaut werden, führen die Befehle in dem Programm aus. Von den Eingabeleitungen der Unterbrechungssignale, von denen 30 Leitungen in das Unterbrechungsregister 3002 hineingehen, sind 16 äußere Unterbrechungssignalleitungen, wie sie schon erwähnt wurden. Das Unterbrechungsregister 3002 erhält außerdem die verbleibenden 14 Unterbrechungssignale von äußeren Einheiten und empfängt sieben interne Leitungen einschließlich Paritätsfehlerleitungen, »kein Zugriff zum Speicher«- und andere automatische Unterbrechungsleitungen, welche auf automatische Unterbrechungsbedingungen innerhalb des Systems ansprechen.
Der Phasenverteiler
Von den sieben Arbeitsphasen, den Phasen PHO und PHl bis PH 6, werden alle außer PHO durch Flip-Flops dargestellt. PHO ist dadurch definiert, wenn alle anderen Phasen abgeschaltet sind. Zu einem bestimmten Zeitpunkt ist stets nur eine Phase eingeschaltet.
Zeitsteuerungsverteiler
Der Zeitsteuerungsverteiler besteht aus 15 Flip-Flops, welche die Intervalle der Zeit T von Tl bis T 15 liefern. Wie in dem Phasenverteiler wird zu einem bestimmten Zeitpunkt stets nur ein Flip-Flop gesetzt. Der Zeitsteuerungsverteiler wird normalerweise schrittweise geschaltet, es sei denn, daß ein Sprung zu einem anderen T erforderlich ist.
Die Betriebsphasen
Bei der Ausführung jedes einzelnen Befehls finden mindestens eine, aber nicht mehr als 6 Phasen Verwendung. Jede Phase besorgt die Ausführung eines Teils des Befehls, so daß der gesamte Befehl mit diesen 6 Phasen vollständig ausführbar ist. Der gewöhnliehe Weg ist von Phase 1 zu Phase 2, zu Phase 3, zu Phase 4, zu Phase 5 und schließlich zu Phase 6 überzugehen, wenn 6 Phasen erforderlich sind. Sämtliche Rechnerbefehle werden unter Verwendung von mindestens einer Phase bei einem Befehl mit keiner Adresse und höchstens 6 Phasen bei bestimmten Drei-Adressen-Befehlen ausgeführt. Allgemein haben die Phasen folgende Funktionen:
1. Phase Null (PHO): Diesen Zustand nimmt der Prozessor unmittelbar, nach dem der »Netz eingeschaltet«- oder »Freigabe«-Knopf gedrückt worden ist, an. Wenn der »automatischer Programmstart«- Schalter eingeschaltet ist, versucht der Prozessor automatisch zu starten. Diese Phase findet haupt-
Bits: 123456, 7 1 12, 13. ..18, 19 ... 24,
Zeichen:
Bits:
O
25 ... 30,
31 36, 37. ..42, 43 ... 48
39 40
sächlich Verwendung beim manuellen Auslesen aus (nicht beziffert) in Verbindung mit dem Zeitsteue-
dem oder Einschreiben in den Dünnfilm-Speicher rungsverteiler verwendet. Der Speicher-Zeitsteue-
3001 beim Aufstellen des Programms. rungszähler ist ein wirklicher Zähler, und jedesmal,
2. Phase Eins (PHl): Allgemein wird diese Phase wenn er um einen Zählwert aufwärts zählt, wird der zum Holen der Operationsteilsilbe aus dem Pro- 5 Takt von dem Speicher-Zeitsteuerungszähler selbst grammspeicherregister (PSR) 100 bis 103 oder 104 dekodiert, und zwar als Takte TM3 bis TM8 für bis 107 und zur Speicherung dieser Silbe in dem eine Schreiboperation und Takt TM15 oder TM19 Funktions-(F)-Register 3015 (s. Fig. 4B) verwendet. bis Takt TM28 für eine Leseoperation. Ein Über-Ein nachfolgendes Kodieren dieser Silbe in dem Funk- gang zum Speicher-Zeitsteuerungszähler kann zu den tionsregister3015 legt den auszuführenden Befehl fest. io Taktzeiten TM 3, TM15 oder TM19 vorgenommen Wie Fig. 4B zeigt, erfolgt diese Silbenübertragung werden und hängt von der jeweiligen durchzufühdurch das E-Register 3005 in das Funktions- renden Operation ab.
register 3015.
3. Phase Zwei (PH2): Je nach dem Befehl wird
diese Phase verwendet, um a) einen Operanden 15 Zeichenwähllogik
(48-Bit-Datenwort) aus dem Hauptspeicher oder
dem Stapel 3099 zu holen und diesen Operanden in E;n 48-Bit-Wort kann betrachtet werden als acht
dem A-Register 3033 (s. Fig. 4B) zu speichern; 6-Bit-Zeichen, die von 0 bis 7 in folgender Weise b) ein Ergebnis (48-Bit-Datenwort) in dem Haupt- numeriert sind:
speicher oder dem Stapel 3099 zu speichern; c) ein 20
Verzweigungsprogrammwort vom Hauptspeicher zu
holen und dieses Verzweigungsprogrammwort im
Programmspeicherregister (PSRl, 100 bis 103, oder
PSR2, 104 bis 107) zu speichern; d) eine Sondersilbe vom Programmspeicherregister 100 bis 103 oder as
104 bis 107 (PSRl oder PSR2) zu holen und diese Zeichen: 4 5 6 7
Sondersilbe in dem entsprechenden Arbeitsregister
zu speichern. Die Gruppensilbe (F) definiert die auszuwählende
4. Phase Drei (PH 3): Ist reserviert für den »Aus- Gruppe. Diese Gruppe wird gehalten (Herausnahme) führungs«-Teil einiger Befehle. 30 oder eliminiert (Eingabe), und zwar in Abhängigkeit
5. Phase Vier (PH4): Ist ähnlich der Phase Zwei von der Befehlsausführung.
mit der Ausnahme, daß der zweite von dem Haupt- Die Bits 10 bis 12 der Gruppensilbe (F) eines
speicher oder dem Stapel 3099 geholte Operand in Befehls definieren die Anfangsstelle der Gruppe. Die
dem B-Register 3031 (s. F i g. 4) gespeichert wird. Bits 6, 7 und 8 der Gmppensilbe definieren die Zei-
6. Phase Fünf (PHS): Diese Phase ist ebenfalls für 35 chenlänge der Gruppe.
den »Ausführungs«-Teil einiger Befehle reserviert. Die Gruppenlänge und die Anfangsstelle sind co-
7. Phase Sechs (PH 6): Je nach dem Befehl wird diert, um ein besonderes Zeichen oder einen besondiese Phase verwendet, um: a) ein Ergebnis von dem deren Satz von Zeichen zu wählen. Es können ent-A-Register 3033 zu speichern; b) ein Verzwei- weder das oder die Zeichen der definierten Gruppe gungsprogrammwort vom Hauptspeicher zu holen 40 rückgestellt werden oder es können das oder die und dieses Verzweigungsprogrammwort im Pro- Zeichen außerhalb der definierten Gruppe rückgegrammspeicherregister (PSRl oder PSRl), 100 bis stellt werden; die beiden Möglichkeiten sind mit 103 oder 104 bis 107, zu speichern. »Eingabe« bzw. »Herausnahme« bezeichnet. Ein
In jeder Phase wird der Zeitsteuerungsverteiler Rückstellen der definierten Gruppe gibt eine Leerdazu verwendet, jeden aufeinanderfolgenden Schritt 45 stelle von Nullen in die 8-Zeichen-Gruppe ein. Rückder Phase durchzuführen. Am Ende jeder Phase stellung der Zeichen außerhalb der definierten Gruppe wird der Zeitsteuerungsverteiler auf den Takt Tl zu- macht sämtliche Information, die die definierte rückgeschaltet. Der Zeitsteuerungsverteiler umfaßt Gruppe umgibt, zu Null,
ein Schieberegister mit 15 Flip-Flops, welche jeweils
den Takten Tl bis T15 entsprechen. Der Zeitsteue- 50
rungsverteiler arbeitet bei der Rechner-Taktfrequenz Speichermoduleinheit
von 3 MHz, und jeder Takt T ist deshalb Va μ5 lang.
Es kann jedoch der Fall eintreten, daß es wünschenswert wird, beim Takt Π langer als Vs μβ und Hierzu werden die folgenden Figuren betrachtet: unter Umständen beliebig lange zu verweilen. So 55 Fig. 5A bis 5D; Fig. 12, Fig. 13; Fig. 14A und kann es wünschenswert sein, im Takt Tl zu ver- 14B sowie Fig. 15 bis 29. In diesen Figuren sind weilen, um in einen Speicherzyklus zu springen und der Aufbau und die zugehörigen Teile jeder Speiein Programmwort zu holen und dieses dann in chermoduleinheit der Anlage nach der Erfindung einem der beiden Programmspeicherregister 100 bis dargestellt. Fig. 5A bis 5D bilden gemeinsam ein 103 oder 104 bis 107 zu speichern. Um in Tl blei- g0 Blockschaltbild einer Ausführungsform der Speicherben zu können, wird das Zeitsteuerungsverteiler- moduleinheit nach der Erfindung. F i g. 12 ist eine Schieberegister daran gehindert, während der zur schematische Darstellung der Kernmatrix, einDurchführung der betreffenden gewünschten Funk- schließlich der zwei Dioden für jedes Wort, der tion die erforderliche Anzahl von Taktgeberimpulsen Schalter und der Lese- und Schreibtreiber. Fig. 13 zu verschieben. Dieses wird automatisch durch die g5 ist eine vergrößerte Blockdarstellung des inneren Verdrahtung der Steuereinheit3020 erreicht. In dem Speicherabschnitts einer Moduleinheit. Fig. 14A Fall, daß z.B. ein Programmwort vom Speicher ge- und 14B stellen grafisch die Speicher-Zeitgeberholt wird, wird der Speicher-Zeitsteuenmgszähler impulse und die Zeitgeberbeziehungen der Schaltung
dar. Alle 16 Speichermoduleinheiten sind identisch miteinander, außer daß eine den Speicher-Haupttaktgeber enthält. Fig. 15 bis 29 zeigen logische Schaltbilder der Speichereinheiten nach Fig. 5.
Die Grundeinheit für eine schnelle Speicherung in der Anlage ist der Random-Kernspeicher. Eine Kernspeichermoduleinheit besteht aus 1096 Wörtern von je 49 Bits, von denen 48 Bits die Information und das 49. Bit ein Paritätsbit darstellt. Die Zykluszeit des Speichers beträgt 4,0 Mikrosekunden, die Zugriffszeit 1 Mikrosekunde.
Das Lesen ist löschend, d. h., sämtliche Kerne mit »Eins«-Zustand werden umgewandelt in den »Null«- Zustand auf Grund der Leseoperation. Das ursprüngliche Wort kann in dieselbe Speicheradresse rückgelesen werden, nachdem das Lesen stattgefunden hat. Die anderen zwei Speicherelemente, die in Fig. 12 nicht dargestellt sind, jedoch in dem Speicherkernstapel 1010 vorhanden sind, sind die Abfühl- und Informationswicklung. Es bestehen 49 Abfühlwicklungen; jede Abfühlwicklung durchsetzt 4096 der Kerne der Speichermoduleinheit. Zum Beispiel durchsetzt eine gegebene Abfühlwicklung den ersten Kern jedes der 4096 Wörter. Entsprechend durchsetzt eine zweite Abfühlwicklung jeden der 4096 zweiten Kerne. Entsprechend fühlt die 49. Wicklung den 49. Kern jedes der 4096 Wörter im Speicher ab. Da nur ein Wort zu einem Zeitpunkt abgefühlt wird, kann nur ein Wort ausgewählt werden; daher kann auch nur ein Signal in der Abfühlwicklung zu jedem Zeitpunkt auftreten. Es sind ferner 49 Informationswicklungen vorhanden, deren Leitungsführung genau der der Abfühlwicklungen entspricht.
Die Funktion der Abfühlwicklung ist es, die durch die Kerne erzeugten Spannungsänderungen zu dem zugehörigen Abfühlverstärker zu leiten (s. Abfühlverstärker 1031 in F i g. 5 C). Die Funktion der Informationswicklungen ist es, den erforderlichen Vorstrom zu führen, der zu dem Schreibstrom des gewählten Wortes während des Schreibzyklus addiert oder subtrahiert wird.
Wenn eine neue Information in ein ausgewähltes Wort im Kernspeicher eingeschrieben werden soll, wird das neue Datenwort zunächst in das Speicherinformationsregister 1033 eingegeben, und zwar 12 Bits zur gleichen Zeit vom Eingangskanal. Das Eingangssignal des Eingangskanals ist beim Eintritt in das Speicherinformationsregister 10335 der Leitung 1010 rechts unten in Fig. 13 dargestellt.
Die Leseoperation dieser 12 Bits wird in der vorstehend beschriebenen Weise ausgeführt, d. h., das alte Wort wird aus der gewählten Speicherstelle herausgelesen wie in dem Fall, wenn das Speicheradressenregister 1021 adressiert worden war. Unmittelbar beim Auslesen eines Wortes aus der Diodenmatrix 1028 kann ein neues Wort über das Speicherinformationsregister 1033 in die Diodenmatrix 1028 eingeschrieben werden. Ein Lesen von Information in das Speicherinformationsregister 1033 beeinflußt den übrigen Teil der Schaltungsanordnung nicht. Das Speicheradressenregister 1021 enthält 12 Flip-Flops. Das Speicherinformationsregister 1033 enthält 49 Flip-Flops. Die Information, die vom Eingangskanal auf Leitung 1010 in das Speicherinformationsregister 1033 gelesen wird, wird mit 12 Bits zu gleicher Zeit in jeden 1. bis 12., danach 13. bis 24., darauf 25. bis 36. und schließlich 37. bis 48. Flip-Flop des Speicherinformationsregisters 1033 eingelesen, wonach schließlich ein 49. Bit in den 49. Flip-Flop des Speicherinformationsregisters 1033 eingeschrieben wird (F i g. 5 D). Das bedeutet eine Informationsübertragung in fünf Serien, wobei die ersten vier Übertragungen jeweils mit 12 Bits parallel in das Speicherinformationsregister 1033 ausgeführt werden und eine fünfte Übertragung eines Paritätsbits in den 49. Flip-Flop des Registers 1033 durchgeführt wird. Um zu ermöglichen, daß die neue Information, die vorher in das Speicherinformationsregister 1033 vom Eingangskanal 1010 her eingegeben worden war, in den Speicher gelesen wird, wird die alte Information, die vom Univibrator 1032 kam, nicht in das Speicherinformationsregister 1033 übertragen. Infolgedessen wird während des Schreibzyklus die neue Information, die in das Speicherinformationsregister 1033 gegeben worden war, in den Speicher zurückgeschrieben durch die Informationstreiber 1034. Dies geschieht in der Weise, wie es für die Wiederherstellung der ausgelesenen Wörter durch Einleitung eines Schreibbeginnsignals in die Kern- j schreib-Zeitgebereinheit 1035 beschrieben worden J-ist. Die gesamte Operation kann zyklisch innerhalb * einer Periode von jeweils 4 Mikrosekunden vor sich gehen.
Die Periode von 4 Mikrosekunden und die erzeugten Signale sind in dem Kernspeicher-Zeitgeberdiagramm der Fig. 14A und 14B dargestellt. Die Taktimpulse MTI, MTI, MT3 usw. treten mit einer Frequenz von 3 MHz auf. Die Zeiten, in denen die verschiedenen Einheiten wirksam sind, sind aus den Diagrammen der Fig. 14 zu entnehmen.
Es wird Bezug genommen auf F i g. 5 und insbesondere auf F i g. 5 A. Jede Anrufmoduleinheit sendet, wenn sie Zugriff zum Speicher fordert, eine 4-Bit-Speichermoduleinheitadresse, die die Speichermoduleinheit bezeichnet, von der sie die geforderten Daten erhalten oder zu der sie diese Daten senden will. Die Sammelleitungsempfänger 10105,10104 und 10103 stellen Empfänger für die ersten drei Sammelleitungen von den Prozessoren Pl, Pl und P3 dar. Bei Adressierung empfängt jeder Sammelleitungsempfänger 10105, 10104 oder 10103 eine 8-Bit-Adresse, von der 4 Bits die Speichermoduleinheitsadresse darstellen, und zwar im 8-4-2-1 -Code, welche Bits anzeigen, welche der 16 Speichermoduleinheitcn angerufen wird. Eines der 8 Bits ist das Lesepegelbit, das aussagt, ob ein Lesen aus dem Speicher oder ein Schreiben in den Speicher ausgeführt werden soll.
Ein Bit ist ein Normanrufbit, das mit den Anrufen durch die Anrufmoduleinheiten gesendet wird, und zwar bei Prozessor- als auch bei E/A-Steuereinheiten, um anzuzeigen, wenn ein Normanruf gesendet wird und nicht ein Kennwortanruf. Zwei Bits der 8 eingehenden Bits kommen allein von anrufenden Prozessoren. Diese 2 Bits geben an, ob der durchgeführte Anruf ein Kennwort-E/A-Anruf ist oder nicht. Das erste der zwei letztgenannten Bits zeigt an, ob der Kennwortanruf nach einer E/A-Steuereinheit der E/A-Vermittlung A anfragt, und der zweite dieser Bits gibt an, ob der Anruf ein Kennwortanruf nach den E/A-Steuereinheiten auf der E/A-Vermittlung B
In der Speichermoduleinheit sind Empfänger 10101 verbunden mit der Sammelleitung bus 1 (die Gruppe von E/A-Steuereinheiten zugeordnet zu der E/A-A-Vermittlungseinheit) und Empfänger 10102 verbunden mit der Sammelleitung busl vorgesehen (die
Gruppe der E/A-Steuereinheiten zugeordnet zur E/A-B-Vermittlungseinheit). Die Empfänger 10102 und die Empfänger 10101 empfangen jeweils 6 Bits von dem Zugriff zum Speicher fordernden E/A-Steuereinheitgehäuse oder -schrank.
Von den 6 Bits, die durch die Empfänger 10101 und 10102 auf den Leitungen busl und bus 2 von den entsprechenden E/A-Steuereinheiten in den entsprechenden E/A-Vermittlungen E/A-A- und E/A-B empfangen werden, geben die ersten 4 die Adresse der adressierten Speichermoduleinheit an. Die Empfänger 10101 und 10102 empfangen ferner einen Lesepegelbit zur Feststellung, ob die Operation ein Lesen aus dem Speicher oder ein Schreiben in den Speicher betrifft. Das sechste Bit, das von den Empfängern 10101 und 10102 empfangen wird, ist das Normanrufbit. Die E/A-Steuereinheiten können nur einen Normanruf vornehmen und können kein Kennwort senden.
Wenn ein vierter Prozessor P 4 an Stelle der zweiten Gruppe von E/A-Steuereinheiten vorgesehen ist, besteht die am Empfänger 10102 empfangene Adresse aus 7 Bits und enthält vier Speicheradressenbits, ein Lesepegelbit, ein Normanrufbit und ein Kennwortbit, um anzuzeigen, ob der Anruf ein Kennwortanruf ist oder nicht. Jeder vorgenommene Anruf hat ein Normanrufbit, das einen hohen Spannungspegel in dieser Bit-Stelle aufweist. Falls ein Kennwortanruf vorliegt, zeigt ein zusätzlicher hoher Spannungspegel an der Stelle des Kennwortbits an, daß ein Kennwortanruf vorliegt.
Auf jeder ankommenden Leitung zu den Empfängern an der jeweiligen Anrufmoduleinheit wird ein Treiber veranlaßt, am Ausgang den hohen Pegel anzulegen, wo das Signal den hohen Pegel erfordert. Es sind z. B. am Ausgang jeder der Anrufeinheiten acht Treiber vorgesehen, die in den Eingang der Sammelleitung 5 (Eingang bus 5) am Empfänger 10105 in der Speichermoduleinheit in F i g. 5 speisen. Jeder Empfänger 10105, 10104 und 10103 enthält acht Empfänger für die zugehörigen Sammelleitungen bus5, bus4 und bus3. Der Empfänger 10102 enthält sieben bzw. acht Empfängergruppen, abhängig davon, ob an die Sammelleitung bus 2 ein Prozessor oder eine E/A-Steuereinheit-Vermittlung angeschlossen ist. Sechs Empfänger sind in der Empfängereinheit 10101 für die Sammelleitung bus\ vorgesehen. Es sind natürlich, wie durch die Zahl 30 im Kreis an den Ausgängen der Sammelleitungs-Empfängereinheiten 10101 und 10102 angegeben ist, tatsächlich 30 Empfänger in jeder Sammelleitungs-Empfängereinheit vorgesehen, und zwar sechs für jedes der fünf E/A-Gehäuse in einer E/A-Vermittlungsgruppe für E/A-Steuereinheiten. In der Sammelleitungsempfängereinheit 10105 sind insgesamt nur acht Empfänger vorgesehen, da von der Empfängereinheit 10105 Eingangsspannungen nur von dem Prozessor Pl empfangen werden können. Dies gilt entsprechend ebenso für die Sammelleitungsempfänger 10104 und 10103. Bei den Empfängerzusammenstellungen 10101 und 10102 sind fünf Empfänger für jedes E/A-Gehäuse von 2 E/A-Steuereinheiten (insgesamt 30 Empfänger) in der Empfängereinheit 10101 vorgesehen, und 30 Empfänger in der Empfängereinheit 10102, wenn sie als Empfängereinheit für die E/A-Vermittlung B benutzt wird. Wenn sie für den Prozessor P 4 benutzt wird, enthält die Empfängereinheit 10102 insgesamt acht Empfänger.
Fig. 15 zeigt den Aufbau der Empfänger 10105 und 10104 nach Fig. 5 A mit acht Empfängern je Empfängereinheit für jeden der Prozessoren P1 und P 2. Die ersten 4 Bits (Signale CIMM 8, ClMM 4, C1MM 2 und C1 MMA 1) beziehen sich auf die jeweilige Speichermoduleinheit, die in binärer, digitaler Weise angerufen wird. Im BCD-Code liegt der erste Empfänger (oder Treiber) in der 8-Spalte, der zweite Empfänger in der 4-Spalte, der dritte Empfänger in der 2-Spalte und der vierte Empfänger in der 1-Spalte, so daß beim binären Zählen jede Zahl vom Speicher 1 bis zum Speicher 16 angegeben werden kann. Der fünfte Empfänger zeigt die Lesepegel-Eingangsleitung vom Prozessor Pl. Die Empfänger sind tatsächlich doppelte Umkehrverstärker. Wenn der fünfte Empfänger eine Eingangsspannung mit hohem Pegel erhält, ist auch die Ausgangsspannung des Empfängers hoch, so daß in dieser Bit-Stelle eine »Eins« dargestellt wird. Die Normanrufe, nämlich der Kennwort-E/A-A-Anruf und der Kennwort-E/A-B-Anruf werden auf die Eingänge der Empfänger gelegt, die jeweils entsprechend in folgender Weise bezeichnet sind: ClSRQ für den Normanruf von ProzessorPl, ClDARQ für den Kennwortanruf vom Prozessor Pl nach der E/A-Sammelleitung A und ClDBRQ, der anzeigt, daß der Prozessor P1 einen Kennwortanruf nach der E/A-Sammelleitung B macht.
Es wird wieder F i g. 5 A betrachtet. Es führen
3„ 30 Ausgänge aus der Empfängereinheit 10101 für die Sammelleitung busl, und zwar 6 Ausgänge für jedes der 5 Gehäuse in der E/A-A-Vermittlung. Diese 30 Ausgänge werden auf die Mischer 10106 für die Sammelleitung bus 1 gegeben. Wenn die E/A-Vermittlung B und ihre E/A-Steuereinheiten vorgesehen sind, werden 30 Ausgänge vom Empfänger 10102 für die Sammelleitung bus2 entsprechend in die Mischer 10107 /ür die Sammelleitung bus2 gelegt.
Fig. 16 zeigt die Mischereinheit 10106 für die Sammelleitung busl. Jedes der ODER-Glieder 01071 bis 01076 gehört zu einer der sechs Sammelleitungs-Mischschaltungen, die jeweils für jedes der E/A-Steuereinheitgehäuse in der E/A-Vermittlung A vorgesehen sind. Ferner sind 5 UND-Glieder A1071 bis A 1075 vorgesehen für jedes der ODER-Glieder, z.B. das ODER-Glied 01071, für eine der 6 Eingangsleitungen von jedem der 5 Gehäuse, wobei eine Leitung von jedem Gehäuse von jedem ODER-Glied vorgesehen wird. Als Beispiel wird auf die Schaltung des ODER-Glieds 01071 hingewiesen.
In den E/A-Steuereinheiten selbst, d. h. in den zugehörigen Gehäusen, ist eine solche Schaltungsano-'.lnung vorgesehen, daß zu einem Zeitpunkt nur eine der 10 E/A-Steuereinheiten in jeder Vermittlungs-
5S Zusammenstellung, z. B. in der E/A-Vermittlungszusammenstellung A, eine Speichermoduleinheit anrufen darf. Daher kann zu irgendeinem bestimmten Zeitpunkt nur eine der 10 E/A-Steuereinheiten in Übermittlungsverbindung mit dem Speicher stehen.
Natürlich können andere E/A-Steuereinheiten in derselben E/A-Vermittlungseinheit mit peripheren Anschlußgeräten in Übermittlungsverbindung stehen. Jedoch sind Multiplex-Übermittlungsverbindungen zwischen verschiedenen E/A-Steuereinheiten und dem Speicher möglich. Die Einschränkung liegt darin, daß zu genau demselben Zeitpunkt der Übermittlung zwischen einer E/A-Steuereinheit z. B. der Gruppe A und einer Speichermoduleinheit der
Gruppe Ml bis M16 nur eine einzige E/A-Steuereinheit der Moduleinheiten E/A 1 bis E/A 10 in Übermittlungsverbindung mit irgendeiner Speichermoduleinheit Ml bis M16 stehen kann. Wie in Fig. 16 dargestellt, kann in der E/A-Gehäusedarstellung des ODER-Glieds 0 1077 nur eine der 2 E/A-Steuereinheiten in irgendeinem Gehäuse mit dem bus 1-Mischer 10106 verbunden sein. Das von daher kommende Ausgangssignal kann in dem ODER-Glied 0 1077 zusammengefaßt werden. Nach Leitung durch den Treiber D 1077 und nach Empfang in dem zugehörigen Empfänger in der Empfängereinheit 10101, der in Fig. 16 mit RX 1071 bezeichnet ist, kommt der Anruf in eine der Guppen von UND-Gliedern A 1071 bis A 1075. Es wird z.B. angenommen, daß eine der beiden E/A-Steuereinheiten des ersten Gehäuses einen Anruf in den Empfänger RX 1071 über die Leitung MMA 8 erzeugt. Aus Schaltungsgründen muß einem ODER-Glied ein UND-Glied vorhergehen, wobei das UND-Glied A 1071 die richtige Eingansspannung für das ODER-Glied 0 1071 erzeugt. Aus der Eingangsspannung vom UND-Glied A 1071 erzeugt das ODER-Glied 0 1071 ein Ausgangssignal auf seiner Ausgangsleitung IAMMA 8, die zu der Moduladressen-Wähleinheit 10108 im Sammelleitungs-bus 1-Abschnitt gegeben wird (s. Fig. 5A). Nach Fig. 5 ist daher jeder der fünf Leitungsausgänge vom bus 1-Mischer 10106 eines der fünf ODER-Glieder 0 1071, 0 1072, 0 1073,
0 1074 oder 0 1076. Das sechste ODER-Glied
0 1075 empfängt ebenfalls Eingangsspannung von jedem der 5 Gehäuse; seine Ausgangsspannung wird vom bus 1-Mischer 10106 in die Hauptsteuerungseinheit 10115 geleitet, und zwar zu einem später beschriebenen Zweck.
Die Moduladressen-Wähleinheit 10108, in die die 5 Leitungen vom Mischer 10106 geführt werden, ist in Fig. 17 dargestellt. Es werden Fig. 17 A und 17B in Verbindung mit der Einheit 10108 der F i g. 5 A betrachtet. Der Moduladressen-Wähler 10108 empfängt 5 Leitungen mit Eingangsspannung vom bus 1 Mischer 10106, vom bus2-Mischer 10107 und ferner von jeder der Empfängereinheiten der Sammelleitungen bus 3, bus 4 und bus 5, nämlich der Empfängereinheiten 10103, 10104 und 10105. Diese 5 Eingangsleitungen stellen 4 Bits für eine Speichermoduleinheit-Adresse und eine Anrufleitung von jeder der Empfängereinheiten 10101 bis 10105 dar. Jedes der ODER-Glieder 0 1071 bis 0 1074 verarbeitet ein Bit der 4-Bit-Speichermoduleinheit-Adresse, und das ODER-Glied 0 1075 empfängt die Normanrufleitung. Die 5 Leitungsausgangssignale jedes der Mischer 10106 und 10107 und jedes der 3 Empfänger für die zugehörigen Prozessoren enthalten diese 4 Speichermoduleinheit-Adressenbits und das Normanrufbit, das über die zur entsprechenden Sammelleitung gehörende Leitung von der entsprechenden Anrufmoduleinheit her empfangen wird.
Es werden erneut die Fig. 17A und 17B betrachtet. Diese Figuren stellen die Moduladressen-Wähleinheit dar. Die UND-Glieder^ 1081 bis A 1085 empfangen die Leitungseingänge von den zugehörigen Sammelleitungen bus 1 bis bus S her. Es wird z.B. das UND-Glied A 1081 betrachtet. Die Eingangsspannung zu diesem Abschnitt der Wähleinheit 10108 wird über zugehörige Leitungen IA MMA SJAMMA 4, IAMMA 2, IAMMA 1 und IARQ geleitet. Die Leitungen gehören zu den 4 Bits der Speichermodul-Adresse, die aus dem bus 1-Mischer 10106 empfangen wird, und zum Normanrufbit vom Mischer 10106. Diese Leitungen werden über zugehörige NICHT-■ Glieder oder Inverter I (nicht beziffert) im Eingangskreis über die 4 dargestellten Schalter auf das UND-Glied /11081 geführt. Die Schalter sind vorgesehen, um die Möglichkeit zu schaffen, die jeweilige Moduladresse nach Wunsch zu verändern, und sind normalerweise voreingestellt auf eine gewünschte Moduladresse. Das Wirksammachen des UND-Glieds A 1081 durch die 4 Speicheradressensignale und das Anrufsignal zeigt an, daß es sich um die E/A-Steuereinheit von der Sammelleitung busl handelt, die Speicherzugriff anruft. Entsprechend zeigt das Wirksammachen der UND-Glieder A 1082 bis A 1085, daß der Speicher adressiert wird und ein Normanruf von den zugehörigen Sammelleitungen bus 2 bis bus S gemacht wird, wodurch angezeigt wird, daß es sich entweder um die E/A-Steuereinheit B oder den Prozessor P 4, um den Prozessor P 3 oder P 2 oder Pl handelt, der Zugriff zum Speicher anruft.
Die Kanäle ECIA, ECC 4, ECC 3, ECC 2 und ECCl sehen normalerweise eine Eingangsspannung für die zugehörigen UND-Glieder A 1081 bis A 1085
as vor und werden nur für Prüfzwecke benutzt.
Nach Fig. 17A und 17B erscheint der Ausgang 10701 dieser Figur am Ausgang des Moduladressen-Wählers 10108 bei busl in Fig. 5 A und ist dort ebenfalls mit 10701 bezeichnet. Der Ausgang 10702 erscheint unter derselben Bezeichnung am Ausgang des Moduladressen-Wählers 10108 in F i g. 5 A. Entsprechend zeigen die Ausgänge der anderen 3 Ausgänge 10703, 10704 und 10705 des Moduladressenwählers für jede Sammelleitung an, welcher Sammelleitungsausgang an den Eingang des Kollisionslösers und Sammelleitungswählers 10109 gelegt wird.
Fig. 18A und 18B bilden gemeinsam das logische Schaltbild der Prioritätssteuerstufe 10109. Zur Orientierung sind die Eingänge 10701 bis 10705 in Fig. 18A und 18B als angelegt an die Eingänge der Prior.-Steuerstufe dargestellt. Es wird z. B. angenommen, daß eine E/A-Einheit in der automatischen Vermittlungsanordnung A den Speicher anruft und über die Empfänger 10101, den bus 1-Mischer 10106 und den bus 1-Moduladressen-Wählerl0701 ein hohes Signal an den Eingang 10701 der Pr.-Steuerstufe 10109 legt (s. Fig. 18A). Zugriff zur Speichermoduleinheit der F i g. 5 wird nur dann gewonnen, wenn die voreingestellten Schalter im Eingangskreis zu den zugehörigen UND-Gliedern A 1081 bis A 1085 des Moduladressen-Wählers 10108 der Fig. 17A und 17B so eingestellt sind, daß sie die Ausgangssignale der besonderen Anrufmoduleinheit in Übereinstimmung mit der Adresse empfangen, die durch diese angerufen wird. Wie in den eingestellten Schaltstellungen der Schalter der Fig. 17A und 17B dargestellt ist, besteht ein Null-Eingang auf jeder der vier Eingangsleitungen zu jedem der UND-Glieder A 1081 bis A 1085. Wenn gewünscht wird, die Speichermoduleinheit-Adresse auf einen anderen Adressenteil zu ändern, können die Schalter entsprechend eingestellt werden. Wenn z. B. gewünscht wird, daß die Speichermoduleinheit als Speichermoduleinheit M16 oder binär 1111 bezeichnet wird, müßte jeder der Schalter in die entgegengesetzte Stellung gegenüber der in Fig. 17A und 17B dargestellten eingestellt werden, so daß 4 Signale mit hohem Pegel oder 4 Einsen am Ausgang einer besonderen Anrufmodul-
einheit gefordert würden, damit diese Anrufmoduleinheit durch den Speichermoduleinheit-Adressenwähler 10108 dieser Speichermoduleinheit angenommen wird. Es bestehen 16 Möglichkeiten von Schaltstellungseinstellungen der Schalter einschließlich der Stellung 0000, die zur Erläuterung in dem besonderen Moduladressenwähler 10108 der Fig. 17A und 17 B der Speichermoduleinheit von F i g. 5 dargestellt ist. Damit irgendeine der Leitungen 10701 bis 10705 auf einem hohen Pegel liegt, ist es erforderlich, daß die anrufende Moduleinheit die besondere Speichermoduleinheit der F i g. 5 anruft.
Es wird angenommen, daß diese Speichermoduleinheit, z. B. Speichermoduleinheit M1, angerufen wird. Vier Kollisionen müssen gelöst werden, bevor eine der E/A 1-20-Steuereinheiten oder einer der Prozessoren P1 bis P 4 Zugriff zu der Speichermoduleinheit erhalten kann. Zunächst besteht eine Prioritätenfolge für gleichzeitige Anrufe. Diese Folge besteht bei der dargestellten Ausführungsform in folgendem: Eine E/A-Einheit der E/A-Vermittlungsgruppe A erhält Priorität vor irgendeiner E/A-Einheit der E/A-Vermittlungsgruppe B, die ihrerseits Priorität erhält gegenüber dem dritten Prozessor P3; letzterer erhält Priorität vor dem zweiten Prozessor P 2, und sämtliche Anrufmoduleinheiten erhalten Priorität vor dem ersten ProzessorPl. Sammelleitung bus\ hat also Priorität gegenüber Sammelleitung bus 2, diese gegenüber Sammelleitung bus 3, diese wiederum gegenüber Sammelleitung bus 4, und schließlich hat letztere Priorität gegenüber der Sammelleitung bus S. Diesen Prioritäten wird Rechnung getragen durch die vier Inverter/1091 bis /1094 (Fig. 18A und 18B). Wenn irgendein Anruf auf der Leitung 10701 erscheint, die die Sammelleitungs-bus 1-Leitung mit der höchsten Priorität von den E/A-Steuereinheiten der E/A-Vermittlung A ist, gewährt das UND-Glied 10901, wie später ersichtlich wird, Zugriff zu dem Kreuzungspunkt-Flip-Flop 10901 der Sammelleitung busl. Daher besteht die erste der vier Kollisionsarten in Kollisionen, bei denen zwei Anruf-Sammelleitungen gleichzeitig Zugriff zur selben Speichermoduleinheit suchen. Sollte irgendeine der anderen Anrufmoduleinheiten mit niedriger Priorität Zugriff zur Speichermoduleinheit suchen, so wird sie daran gehindert.
Die zweite Kollisionssituation tritt auf, wenn eine Sammelleitung mit niedriger Priorität bereits Zugriff erhalten hat und danach eine Sammelleitung mit höherer Priorität Zugriff zu bekommen versucht. Für diese Situation ist ein Signal, z. B. MTO-Nicht-Belegt oder MTONB am Eingang zum UND-Glied A 10901 und zu den anderen UND-Gliedern für jede Sammelleitung vorgesehen, nämlich zu den UND-Gliedern A10902, Λ10903 (nicht beziffert), A110904 und A 10905. Dieses Signal bleibt niedrig, bis irgendeine Sammelleitung Zugriff erhält. Dieses Signal sperrt die UND-Glieder A10901 bis A10905, bis das MTONB-Eingangssignal hoch ist. Das hohe Signal zeigt an, daß diese Speichermoduleinheit (der F i g. 5) nicht belegt ist. Ist die Speichermoduleinheit belegt, so kann keine andere Anrufmoduleinheit Zugriff erhalten. Diese Maßnahme sorgt für die zweite Kollisionssituation, d. h., keine Anrufmoduleinheit, die mit dem Speicher in Übermittlungsverbindung steht, kann unterbrochen werden.
Der dritte und vierte Kollisionsfall betrifft das Senden von Kennwörtern. Der dritte Fall tritt ein durch gleichzeitiges Erscheinen eines Kennwortanrufs nach einer ersten Speicherrnoduleinheit zur Übertragung von Information von dieser Speichermoduleinheit zu einer E/A-Sammelleitung, wenn zu derselben Zeit diese E/A-Sammelleitung belegt ist durch Information, die zwischen dieser E/A-Sammelleitung und einer zweiten Speichermoduleinheit übertragen wird, d. h., Kollision tritt auf durch irgendeine E/A-Sammelleitung, die durch einen
ίο Kennwort- oder Informationsanruf von einem Prozessor zur selben Zeit in Übermittlungsverbindung gebracht werden soll, in der diese E/A-Sammelleitung Information von einer anderen Speichermoduleinheit empfängt oder zu ihr sendet. Dies geschieht, wenn eine E/A-Steuereinheit versucht, mit einer ersten Speichermoduleinheit in Verbindung zu treten, und ein Prozessor versucht, ein diese E/A-Vermittlung betreffendes Kennwort von einer zweiten Speichermoduleinheit zu senden. Um diese Kollision zu lösen, wird ein E/A-Anruf geeignet gemacht, einen Kennwortanruf eines Prozessors zu sperren. Dies wird gemäß Fig. 18B für eine A-Sammelleitung durch die Schaltungsanordnung mit dem UND-Glied A 10910, das auf die Eingangsspannung auf der Lei-
s5 tung 10910 anspricht, und für eine B-Sammelleitung durch die auf die Eingangsspannung auf der Leitung 10911 ansprechende Schaltungsanordnung erreicht. In der Betrachtung dieser Schaltungsanordnungen wird angenommen, daß zwei E/A-Vermittlungen vorhanden sind, so daß die Anordnung gemäß F i g. 1 verwendet wird, in der zwei Gruppen von 10 oder weniger E/A-Steuereinheiten vorhanden sind.
Die Eingangsspannung der Leitung 10190 wird als Beispiel für die Wirkungsweise in beiden Fällen beschrieben.
Es werden wiederum Fig. 18A und 18B betrachtet. Immer wenn eine E/A-Einheit der E/A-Vermittlung A (Sammelleitung bus 1) anruft, erscheint ein hoher Pegel von der Sammelleitung 1, der auf die Leitung 10910 gegeben wird. Immer wenn ein Kennwortanruf von einem der Prozessoren ausgeführt wird, erscheint ein hoher Pegel, der diesem Prozessor' entspricht, auf einer der Leitungen 10912 bis 10915. Dies gilt für den Fall von vier Prozessoren; der Prozessoranruf auf Leitung 10912 tritt nur auf, wenn vier Prozessoren statt drei vorgesehen sind. Die Koinzidenz von hohen Pegeln auf den Eingangsleitungen, z. B. auf 10910 zur Anzeige eines E/A-Anrufs dieser Speichermoduleinheit und auf 10913 zur Anzeige, daß ein Kennwort vom Prozessor P 3 gesendet wird, veranlaßt das UND-Glied A10910, einen hohen Pegel an seinem Ausgang zu liefern. Dieser hohe Pegel erscheint am Ausgang des ODER-Gliedes 010910 und wird am Inverter (NICHT-Glied) /10910 umgekehrt, wodurch eine niedrige Eingangsspannung am UND-Glied A10911 erzielt wird. Dadurch wird A10911 abgeschaltet. Durch Abschalten von A10911 wird verhindert, daß der Flipflop FF10903 gesetzt wird, so daß der Kennwortanruf gesperrt wird.
Dies betraf den dritten Fall, bei dem die E/A-Einheit anruft und es gewünscht ist, Kennwortanrufe von irgendeinem der Prozessoren her fernzuhalten. Der vierte Kollisionsfall tritt ein, wenn ein Kennwortanruf Zugriff erhalten hat und von einer E/ASteuereinheit ein Anruf auf derselben Sammelleitung der Gruppe .4 nach einer anderen Speichermoduleinheit getätigt wird. Diesem Fall wird Rechnung
809 649/3
getragen durch die Einheiten, die in Fig. 13 A durch gcslriclielte Linien 1C920 und 10921 hervorgehoben sind.
Wenn ein Kennwortanruf Zugriff zu einer Speichcrmoduleinheit erhalten hat, wird von dieser Speichermoduleinheit ein Signal zu jeder anderen Speichermoduleinheit in der Anlage gesendet. Diese Signale werden auf die Sammelleitungs-bus 2-Empfängersperreinheit 10111 für die Speichermodu'.einheit gegeben sowie auf die entsprechende Einheit 10112. Diese Einheiten sind in Fig. 5 A dargestellt. Die Ausgangssignale dieser Empfängersperreinheiten 10111 und 10112 werden zur Prioritäts-Steuerstufe 10109 geleitet, die in F i g. 18 A als Einheiten 10921 bzw. 10920 bezeichnet ist. Dadurch wird ein hohes Ausgangssignal von dem ODER-Glied 010915 oder von dem ODER-Glied (910916 ausgelöst.
Wenn daher der Anruf ein Kennwortanruf für die Sammelleitung A ist, hat das ODER-Glied O10915 eine hohe Ausgangsspannung. Entsprechend führt das ODER-Glied 10916 eine hohe Ausgangsspannung, falls ein Kennwortanruf für die Sammelleitung B vorliegt. Falls zwei Kennwortanrufe, nämlich einer für jede Sammelleitung, gleichzeitig auftreten, geben das ODER-Glied 010915 und das ODER-Glied 10916 beide eine hohe Ausgangsspannung ab. Wenn in Abhängigkeit von den gesendeten Kennwörtern und dem entsprechend angezeigten Zustand der Speichermoduleinheit ein solcher Fall vorliegt, wenn also z. B. eine hohe Ausgangsspannung von dem ODER-Glied 010915 angegeben wird, wird diese hohe Ausgangsspannung umgekehrt und sperrt das UND-Glied A10901, wodurch das Setzen des Flip-Flop FF10901 verhindert wird. Ist der Flip-Flop FF10901 am Setzen gehindert, so wird auch eine E/A-Steuereinheit der Sammelleitung bus 1 an einem Zugriff zum Speicher gehindert. Entsprechend verhindert der Flip-Flop FF10902 für das ODER-Glied 010916 einen E/A-Zugriff zu der Sammelleitung B, wenn eine hohe Ausgangsspannung am ODER-Glied 010916 auftritt. Dies stellt die vierte Kollisionssituation dar.
Unter Bezugnahme auf F i g. 5 A ist jetzt zu ersehen, daß die Prioritäts-Steuerstufe 10109 sämtliche möglichen Kollisionen zwischen den Anrufmoduleinheiten löst und für den Fall Sorge trägt, wenn eine E/A-Vermittlungsverbindung gleichzeitig wie ein Kennwortanruf bewirkt wird.
Nach Fig. 18A und 18B senden die Ausgänge der Flip-Flops FF10901 bis FF10905, wenn diese Flip-Flops in den Eins-Zustand geschaltet sind, das Signal zurück zu den zugehörigen Anrufmoduleinheiten, um anzuzeigen, daß Zugriff zum Speicher empfangen worden ist.
Es werden jetzt Fig. 19A und 19B betrachtet. Die Signalausgänge der fünf in Fig. 18A und 18B dargestellten Flip-Flops FF10901 bis FF10905 erscheinen in Fig. 19A und 19B als die Eingänge XPBUSl, XPBUS 2, XPBUS 3, XPBUS 4 und XPBUSS (s. Einheit 10110 in Fig. 5A). Die Bezeichnungen XPBUSl bis XPBUS5 bedeuten Kreuzungspunkt bus I bis Kreuzungspunkt bus 5. Die Ausgangsspannungen der Flip-Flops FF10901 bis FF10905 in Fig. 18 bilden Eingangsspannungen für zugehörige UND-Glieder A 1101 bis^ 1105 inFig. 19. Zugehörige ECI-Eingangsspannu'ngen (Übermittlung gestattende Eingangssignale), nämlich ECIA, ECC 4, ECC 3, ECC 2, ECCl werden ebenso auf die UND-Glieder A1101 bis A1105 gegeben als Ubcrmittlungs-Erlaubnis-Signale für die E/A-Steuersammclleitur.g der Α-Vermittlung und für jeden der Prozessoren Pl bis P 4 (in der Anordnung mit vier Prozessoren). Bei der Anordnung mit drei Prozessoren wird das Signal zur E/A-Vermittlung B zurückgesendet, wenn diese Anordnung verwendet wird. Diese Signale werden in derselben Leitung wie bei einem Normalbetrieb als ein hohes Signal auf das 6 · 1
ίο (sechs auf eins)-UND-Glied der Fig. 16 gegeben, und ferner auf zugehörige UND-Glieder A 1101 bis Λ 1105 in Fig. 19B. Die Ausgangssignale der zugehörigen UND-Glieder A 1101 bis A 1105 werden zu zugehörigen Treibern gesendet, die in Fig. 20 dargestellt sind. Diese Ausgangsspannungen sind in Fig. 19B mit MNXPIA, MNXPC4, MNXPC3, MNXPC 2 und MNXPC1 bezeichnet.
Betrachtet wird Fig. 20. Zugehörige Treiber DR 11101 bis DA 11105 sind vorgesehen, in die die Ausgangssignale MNXPIA, MNXPC4, MNXPC3, MNXPC 2 und MNXPCl der UND-Glieder A 1101 bis Alias der Fig. 19B geleitet werden. Von den Treibern Di? 11101 bis DR 11105 werden die Signale f zu den Empfängern in der zugehörigen Moduleinheit i zurückgesendet, um anzuzeigen, daß Zugriff in den Speicher durch eine zugehörige Anrufmoduleinheit erhalten worden ist.
Wenn ein Prozessor anruft, daß ein Kennwort zu einer E/A-Steuereinheit einer E/A-Vermittlung A oder B gesendet werden soll, müssen die E/A-Steuereinheiten dieser Vermittlung informiert werden, daß ein Kennwort kommt, um die geeigneten Torschaltungen zu öffnen.
In den E/A-Steuereinheiten, die später beschrieben werden, sind jeweils zwei Register vorgesehen, nämlich ein Kennwortregister und ein Informationsregister. Vom Speicher kommende Information kann in jedes der beiden Register gehen. Welches Register die Information aufnimmt, wird von der Tatsache be- ·.
stimmt, daß ein Kreuzungspunkt vom MNXPIA der | F i g. 24 B herüberkommt als Ergebnis des E/A-Anrufs zum Speicher, etwas zu senden. Wenn eine ■ E/A-Steuereinheit anruft, muß sie Information anrufen. Wenn eine E/A-Steuereinheit nicht anruft, j
dann muß die Eingabe vom Speicher zum Kenn- j Wortregister führen. Wenn daher der Prozessor aus Pl bis P 4, der das Kennwort sendet, Zugriff zum Speicher erhält, muß er den Speicher veranlassen, die E/A-Steuereinheit zu infomieren, daß die Eingangssignale zum Kennwortregister gesetzt werden sollen, so daß in diesem Fall die Information vom Speicher in das Kennwortregister fließt. Die Information der E/A-Steuereinheit durch den Speicher wird mit Hilfe der Kreuzungspunkt-Sammelleitungssignal-Schaltungsanordnung der Fig. 19 durchgeführt, die die UND-Glieder A 11006 bis A 11009 und das ODER-Glied 011001 aufweist, das auf diese UND-Glieder anspricht. Die Eingangssignale zu diesen zugehörigen UND-Gliedern A 11006 bis A 11009 sind Kennwortanrufe C4DARQ, C3DARQ, C2DARQ und ClDARQ von den zugehörigen Prozessoren P 4 (wenn eine Anlage mit vier Rechnern benutzt wird), P 3, P 2 und Pl (in einigen Fällen werden in der Beschreibung und den Zeichnungen für diese Prozessoren auch die Bezeichnungen C 4, C 3, C 2 und Cl an Stelle der P-Bezeichnungen verwendet). Die andere Eingangsspannung zu den UND- j Gliedern A 11006 bis A 11009 ist ein Signal, das nor-
malen Betrieb anzeigt und auf der Eingangsleitung MNORM auftritt. Die dritte Eingangsspannung zu jedem dieser UND-Glieder ist der Kreuzungspunkt der zugehörigen Sammelleitung, d. h. die Eingangssignale XPBUS2 (wenn Sammelleitung bus2 an den Prozessor P4 angeschlossen ist), XPBUS3, XPBVSA und XPBVSS (s. Fig. 19A). Mit sämtlichen drei Eingangssignalen zu einem der UND-Glieder A 11006 bis /4 11009 wird das ODER-Glied O11001 aktiviert und erzeugt das Signal MNXPDA. das zum Treiber DR 11106 in F i g. 20 gelangt. Das Ausgangssignal dieses Treibers wird zur Sammellciiung der E/A-Vermittlung A gesendet und zeigt an, daß ein Kennwort kommt. Wenn eine zweite E/A-Vermittlung und E/A-Steuereinheiten B vorgesehen sind, führen die UND-Glieder A 11010 bis /4 11013 und das ODER-Glied 011002 (Fig. 19B) die Funktion für diese Gruppe von E/A-Steuereinheiten in ähnlicher Weise durch wie für die E/A-Vermittlung A. Eine Beschreibung ist nicht erforderlich, da die Wirkungsweise identisch mit der für die Gruppe A ist.
Die Schaltungsanordnung, die auf das ODER-Glied OllOOl und die entsprechende zugehörige, nicht bezifferte Schaltung in der durch gestrichelte Linien umrahmten Einheit in Fig. 19 anspricht, wird für den oben beschriebenen Kollisionsfall verwendet, bei dem ein Prozessor Zugriff mit einem Kennwortanruf angerufen und erhalten hat und der E/A-Anruf gesperrt werden muß.
Bemerkt wird erneut, daß zwei Speichenv.odu.leinheiten pro Gehäuse vorgesehen sind. Wenn Zugriff zu einer der Speichermoduleinheiten A/l bis M16 erlangt worden ist, muß ein Signal zu jeder der anderen 15 Speichermoduleinheiten gesendet werden, um anzuzeigen, daß diese Speichermoduleinheit ein Kennwort sendet. Dieses Signal wird für jedes der Gehäuse erzeugt. Das Eingangssignal MNXPDA * wird in der Speichermoduleinheit auf dem vorderen Schub des Gehäuses erzeugt (s. Fig. 19B). Wenn das Eingangssignal MNXPDA * auf den Eingang des Glieds A 11014 gegeben wird, aktiviert es das ODER-Glied 011003, und dieses erzeugt dann ein Ausgangssignal, um die anderen Speichermoduleinheiten zu informieren, daß das Kennwort gesendet wird. Dadurch werden die anderen Speichermoduleinheiten veranlaßt, ihre E/A-Anrufe zur selben E/A-Vermittlungssammelleitung, hier zu derjenigen für die E/A-Vermittlung A, noch zurückzuhalten. In Fig. 18A, nicht jedoch in Fig. 19B, ist dargestellt (s. das ODER-Glied 010915 und den Eingang zum UND-Glied A 10920), daß beim Aussenden des Signals MNXPDA * dieses Signal auch zu der im hinteren Schub angeordneten Speichermoduleinheit gelangt, um dieser mitzuteilen, daß ein Kennwort gesendet wird, und auch einen Anruf dieser Modul- 5g einheit nach derselben E/A-Sammelleitung zurückzuhalten. Gemäß Fig. 19B wird das Ausgangssignal des Glieds 011003 auf einen Treiber DR 11107 gegeben (s. F i g. 20). Das Ausgangssignal dieses Treibers wird zu sämtlichen anderen Speichergehäusen gesendet, um die Speichermoduleinheiten zu informieren, daß ihre E/A-Anrufe nach dieser E/A-Steuersammelleitung A zurückgehalten werden müssen. Die Schaltung des ODER-Glieds 011104 arbeitet ähnlich für die E/A-Steuerleitung B.
Nach Fig. 5 ist die in Fig. 19B dargestellte, eben beschriebene Schaltungsanordnung ein Teil der Hauptsteuerung 10115, der von den Kreuzungspunkt-Sammelleitungen 10110 kommt. Die Hauptsteucrung 10115 stellt ihrerseits die Leitungstreiber-Steuerung 10111 ein.
Es werden F i g. 5 A und F i g. 20 betrachtet. Die Leitungstreiber-Steuerung 10111 nach Fig. 20 hat 9 Ausgänge, wobei einer dieser Ausgänge ein Signal führt, das zu den anderen 7 Speichergehäusen gesendet wird, um den E/A-Anruf zu sperren. Dies ist der Fall, wenn ein Kennwortanruf nach einer E/A-Steuereinheit gerade bearbeitet wird und eine andere E/A-Steuereinheit versucht, zur gleichen Zeit die Speichermoduleinheit anzurufen. 7 Ausgänge der Leitungstreiber-Steuerung 10111 sind Ausgänge von Treibern DA 11101 bis DR 11107. Die übrigen zwei Treiber DR11108 und DR11109 haben ähnliche Funktionen wie die Treiber DR 11106 und DR 11107, außer daß sie die Signale zu den E/A-Steuereinheiten der E/A-Sammelleitung bus B an Stelle der E/A-Sammelleitung busA geben. Es sind dies die Leitungssteuertreiber 10111.
Es sind jetzt F i g. 5 A und insbesondere die Hauptsteuereinrichtung 10115 zu betrachten. Es folgt eine Betrachtung der für die Erzeugung der Signale, die zu einem Zeitzähler 10113 und zu Registersteuerungen 10114 gesendet werden, benutzten Zeiten oder Takte. Die genannten Schaltungen sind im einzelnen in Fig. 19A beschrieben. Es ist ein ODER-Glied 011005 vorgesehen, welches das MTONB-Signal (Speicherzeit-Null-Nichtbelegt-Signal) erzeugt, das dazu benutzt wird, die zweite Art von Kollisionen zu steuern, bei denen eine Speichermoduleinheit bereits belegt ist und einen Anruf bedient und danach ein Anruf mit hoher Priorität versucht, Zugriff zu derselben Speichermoduleinheit zu erhalten. Es wird jetzt die Schaltungsanordnung des Glieds 011006 betrachtet. Wenn eine anrufende Moduleinheit Zugriff erhalten hat, wird einer der Kreuzungspunkt-Flip-Flops gesetzt; infolgedessen ist eines der Signale XPBVSl bis XPBVSS hoch. Diese Signale werden mit dem Signal MTO zusammen auf ein UND-Glied gegeben, wobei das Signal MTO das Ruhezustandssignal bei nicht belegten Speichern darstellt, um das UND-Glied zu aktivieren und ein Ausgangssignal von einem der UND-Glieder A i !!©2?, bis /4 11026 zu erzeugen, wodurch das Glied 011006 ein Ausgangssignal abgibt, welches zusammen mit dem Speicherleistung-Bereit-Signal auf ein UND-Glied gegeben wird, um eine Ausgangsspannung auf der Leitung MTOXP-X zu erzeugen. Die Ausgangsspannung dieser Leitung zeigt an, daß die Zeit gleich der Taktzeit T0 ist und daß ein Kreuzungspunkt gesetzt worden ist. Bei der nächsten Taktzeit wird der Flip-Flop FFIlOOl gesetzt. Wie in Fig. 19 A dargestellt, ist der Flip-Flop FFIlOOl in seinen üblichen Zustand gesetzt. Das Auftreten eines hohen Ausgangssignals vom ODER-Glied 011006 stellt den Flip-Flop FFIlOOl zurück. Liegt kein Anruf vor, so befindet sich der Flip-Flop 11001 normalerweise in seinem rückgestellten Zustand, d. h. im Nicht-Belegt-Zustand der Speichermoduleinheit. Wenn das Signal vom ODER-Glied 011006 am »Eins«-Eingang des Flip-Flops FFIlOOl ankommt, wird dieser Flip-Flop bei der nächsten Taktimpulszeit gesetzt. Der Flip-Flop FFIlOOl ist der Schalter-Steueradressen-Flip-Flop und dient zu Verzögerungszwecken, nämlich um zu veranlassen, daß der Beginn des Ausschwingens der Schalter 10101 ein Überlappen der Schalterausgangssignale verhindert. Der Flip-Flop FFIlOOl
wird mit dem MTNOB-Signal rückgestellt, das das zurückgeführte Nicht-Belegt-Signal zum UND-Glied /4 11027 darstellt. Es gibt zwei TO-Zustände. Der eine tritt auf, wenn bei TO der Speicher nicht belegt ist, wodurch der Flip-Flop FFIlOOl rückgestellt ist, und der andere Zustand besteht darin, wenn eine anrufende Moduleinheit gerade Zugriff bei TO erhalten hat und die Speichereinheit belegt ist. Dies ist am MTOXP-X-Ausgang dargestellt. Dasselbe Ausgangssignal MTOXPl gelangt zur Zeitzählersteuerung 10112 in Fig. 5A.
Die Schaltung des ODER-Glieds 011007 in Fig. 19A bestimmt, ob die Operation ein Lesen aus dem Speicher oder ein Schreiben in den Speicher ist. Die UND-Glieder A 11032 bis 11036 erhalten die zugehörigen Kreuzungspunkt-Sammelleitungs-Eingangssignale XPBUSl bis XPBUSS, die aussagen, daß eine Anrufmoduleinheit Zugriff erhalten hat. Auf der anderen Seite der jeweiligen UND-Glieder /411032 bis A 11036 erscheint der Lesepegel von der Anrufmoduleinheit, wenn eine Leseoperation aus dem Speicher gewünscht wird. Wenn solch ein Lesepegelanruf auftritt, wird die Ausgangsspannung des ODER-Glieds 011007 hoch, um an seinem Ausgang ein Speicher-Lesepegelsignal MRL-I ra erzeugen. Infolge des Inverters/11001 ist die Ausgangsspannung bei MRL1 hoch, wenn das Signal ein Lesepegelsignal ist; wenn es ein Schreibsignal ist, ist die Ausgangsspannug bei MWL nach Umkehrung des Signals durch den Inverter /11001 hoch. Die Schaltungsanordnung ist daher normalerweise im Schreibzustand und verharrt in dem Schreibzustand, wenn nicht eine Leseanzeige anlangt.
Fig. 21 zeigt den Zeitzähler-Steuerkreis 10112 der F i g. 5 A. Die Schaltungen auf der linken Seite der gestrichelten Linie A-A sind Prüf kreise. Der Eingang zum UND-Glied A 11202 wird nur für Prüfzwecke benutzt. Das Glied A 11201 spricht auf das MTOAT-1-Signal an, das anzeigt, daß der Kreuzungspunkt in der betreffenden Speichermoduleinheit gesetzt worden ist und daß Zugriff erhalten worden ist. Das MTEST-Signal zeigt an, daß ein Prüfvorgang nicht bewirkt wird. Auf Grund der vorliegenden Bedingungen, nämlich daß Zugriff erhalten worden ist und die Speichermoduleinheit belegt ist, ist daher die Ausgangsspannung des ODER-Glieds 11201 hoch. Dies stellt das SMTC-Ausgangssignal dar, das den Speicher-Zeitzähler 10113 der F i g. 5 A in Betrieb setzt. Dieser Zeitzähler ist in Fig. 22 dargestellt und wird später beschrieben.
Das hohe Ausgangssignal des ODER-Glieds 011201 bildet ferner eines der Eingangssignale des UND-Glieds /411203, die zum Aktivieren dieses UND-Glieds nötig sind. Eine weitere Eingangsspannung des UND-Glieds A 11203 ist die MTOXP-I-Eingangsspannung, die anzeigt, daß die Speichermoduleinheit der F i g. 5 belegt ist und sich in ihrem T0-Zustand befindet. Zum Aktivieren des UND-Glieds A 11203 ist ferner eine Eingangsspannung vom Kernschalt-Flip-Flop-Umkehrsignal CEF erforderlich; dieses UND-Glied wird aktiviert durch Auftreten eines Taktimpulses. Dabei handelt es sich um den Taktgeberimpuls, der im Speicher erzeugt wird. Infolge Aktivierens des UND-Glieds A 11203 erscheint das Signal vom ODER-Glied 011205 auf der Ausgangsleitung STMRC; dieses Signal stellt das Speicherlesezyklus-Beginn-Impulsausgangssignal dar. In entsprechender Weise wird das UND-Glied A 11204 aktiviert, und zwar mit dem Umkehrsignal UEF, zur Taktimpulszeit und auf Grund des Aktivierens des Schalter-Steueradressen-Auswertsignals von den Flip-Flops FFIlOOl der Fig. 19 A sowie zur Zeit MT4. Das Auftreten dieser vier Signale führt zum Aktivieren des UND-Glieds /411204, welches seinerseits das ODER-Glied 011206 ein Ausgangssignal abgeben läßt. Dieses Ausgangssignal ist das Speicher-Schreibzyklus-Beginnsignal STMWC. Die Schalter-Steueradressen-Auswertung ist der Ausgang des Flip-Flops FFIlOOl (Fig. 19A) und ist ein Teil des Hauptsteuerkreises 10115 (Fig. 5 A).
Das Lesebeginnsignal STMRC und das Schreibbeginnsignal STMWC als Ausgangsspannungen der zugehörigen ODER-Glieder 011205 bzw. 011206 werden an den Eingang der in F i g. 23 A dargestellten Schaltung gelegt, und an den Eingang der Schaltung gemäß Fig. 23B. Fig. 23A zeigt ein logisches Schaltbild des Speicher-Lesezyklus-Beginnkneises, die F i g. 23 B das logische Schaltbild des Speicherschreibzyklus-Beginnkreises. Das Beginnsignal STMRC führt zu den Lesetreibern und in den Univibrator-Auswerteingang. Das Signal STMCW wird zu den Schreibtreibern und zu den Speicher-Informationstreibern geleitet. Gemäß Fig. 21 ist das Ausgangssignal des ODER-Glieds 011201 das Speicher-Zeitzähler-Beginnsignal SMTC, das ganz links in F ig. 22 dargestellt ist. F i g. 22 zeigt ein logisches Schaltbild des Speicher-Zeitzählers 10113 (Fig. 5A).
Das Signal SMTC wird auf die »Null«-Seite des Flip-Flops FF11301 und auf die »Eins«-Seite des Flip-Flops FF11302 gegeben. Die Flip-Flops FF11301 bis FF11311 bilden die Flip-Flops des Speicher-Zeitzählers 10113 der Fig. 5 A. Das Signal SMTC stellt den MT 0-Flip-Flop FF11301 zurück und setzt den MTI-Flip-Flop FF11302. Zur nächsten Taktimpulszeit wird der Flip-Flop FF11303 über den Ausgang der Einsseite des Flip-Flops FF11302 und das UND-Glied /411303 in seinen Einszustand geschaltet. Dadurch wird das MT 2-Ausgangssignal des Flip-Flops FF11303 fortgezählt. In entsprechender Weise wird die »Eins« am Ringzähler der F i g. 22 durch die aufeinanderfolgenden Stufen FF11304 usw. entlang verschoben, wobei die »Eins« fortschreitet, bis der Flip-Flop FF11311 in den »Eins«-Zustand geschaltet wird. Durch Schalten des Flip-Flops FF11301 in seinen Einszustand zum Zeitpunkt MTlO tritt ein Rücklauf und Wiederbeginn über die Leitung 11301 zum Aktivieren des UND-Glieds A 11304 ein. Dadurch wird erneut die Einsseite des Flip-Flops FF11301 gesetzt, um das Ausgangssignal MT 0 zu erzeugen. Nach dem Setzen des FF11301 bleibt dieser Flip-Flop in der Eins-Stufe gesetzt, bis ein weiterer Speicher-Zeitzähler-Beginnimpuls am Eingang der Nullseite auftritt.
Zusammenfassend betrachtet bewirkt das Setzen eines Kreuzungspunktes durch Erlangen des Zugriffs zum Speicher den Beginn des Speicher-Zeitgeberzyklus, der den Zähler von MTO bis MTlO zählen läßt, worauf der Flip-Flop FF11301 erneut gesetzt wird und im gesetzten Zustand verharrt, bis ein weiterer Kreuzungspunkt gesetzt wird und ein erneutes Zählen des Speicher-Zeitzählers 10113 erlaubt.
F i g. 23 A und 23 B sind logische Schaltbilder des Kernlese: und -Schreib-Zeitgebersteuerkreises 1011
(s. den inneren Speicherabschnitt der F i g. 5 C). Der in Fig. 22 dargestellte Zeitzähler 10113 kann als ein Teil der Hauptsteuerungen 10115 gemäß Fig. 5 A
betrachtet werden; das Ausgangssignal SCAS nach Fig. 5C tritt in den Zeitgebersteuerkreis 1011 der Fig. 23A und 23B ein. Das Speicher-Lesezyklus-Beginnsignal ist ein Eingangssignal für einen Verzögerungsunivibrator D 2801. Das Speicher-Lesezyklus-Beginnsignal bewirkt das Schalten des Univibrators D 2801 und macht das Auswert- und das Leseimpuls-Zeitgebersignal wirksam. Der STRB- oder Auswertimpuls wird auf die Univibratoren 1032 gegeben (s. Fig. 5C und 13). In einer Einheit 1032 sind 49 Univibratoren vorgesehen. Diese Univibratoren leiten die Information von den Speichern 1028 und den zugehörigen Abfühlverstärkern 1031 zu den Speicher-Informationsregistern MIRA, MIRB, MIRC, MIRD und dem Paritätsregister (s. F i g. 5 D). Die Register MIRA bis MIRD bilden ein einziges Speicher-Informationsregister mit 48 Informationsbits, und zwar 12 Bits in jedem Speicher-Silbenunterregister MIRA bis MIRD und zusätzlich ein 49. Paritätsbit. Die Kernspeicher-Leseimpulse CMRP werden auf die Lesetreiber 1025 (Fig. 13) aus Treibern DR10106 (Fig. 5C) gegeben. Die Kernspeicher-Schreibimpulse CMWP werden zu den Schreibtreibern 1026 aus Treibern DR10106 gegeben (Fig. 13 und 5C). Die Treiber DR10106 bestehen aus 64 Lesetreibern 1025 und 64 Schreibtreibern 1026. Diese Treiber DR10106 werden von den Speicheradressen-Register-Decodierern 1023 und 1024 erregt, die in F i g. 5 A und 13 dargestellt sind. Das Speicher-Lesezyklus-Beginnsignal erregt daher die Verzögerungsunivibratoren D 2801 und D 2802 (F i g. 23 A), um ein Auswert-Ausgangssignal STRB auszulösen. Das Auswertsignal STRB wird auf die Univibratoren 1032 (Fig. 5C) gegeben und erzeugt die Kernspeicher-Geschwindigkeitsimpulse, die auf die Lesetreiber 1025 in der Treibereinheit DR10106 gegeben werden. In entsprechender Weise wird das Speicher-Schreibzyklus-Beginnsignal auf die Univibratoren 1035P und 1035C der Fig. 13 gegeben. Dadurch erscheint der Kernspeicher-Schreibimpuls CMWP (Fig. 23B) an den Schreibtreibern 1026, und die Kerninformations-Treiberimpulse CDIDP des Treibers 1034 an den Informationstreibern 1034 die im inneren Speicher 1010 der Fi g. 5 C dargestellt sind.
Es wird F i g. 24 betrachtet, die ein logisches bratoren 1035P und 1035C der Fig. 13 gegeben. Schaltbild der Registersteuereinheit 10114 (Fig. 5A) darstellt.
Das UND-Glied A11401 wird (in Abwesenheit eines Prüfvorganges) durch das Signal MTOXP-X geschaltet, das in den Hauptsteuerungen 10115 erzeugt wird. Diese Schaltung ist dazu bestimmt, ein Speicher-Adressenregister-Ladesignal LMAR zu erzeugen, um in das Speicheradressenregister die Speicheradresse zu übertragen, welche durch die Anrufmoduleinheit angerufen wird. Das Signal LMAR ist in Fig. 5A am Ausgang der Registereinheit 10114 dargestellt. Das Signal LMAR wird in die Speicheradressen-Eingangs- und -Zähleinheit 10116 gegeben (F i g. 5 C). Das Signal wird in der Registersteuer- und -Paritätsschaltung der F i g. 24 beim Aktivieren des UND-Glieds A11401 erzeugt.
Die Erzeugung des Signals LMAR ermöglicht es der Anrufmoduleinheit, 12 Bits über die entsprechenden zugehörigen Schaltungsempfänger 10117/4, 101175, 10117C, 10118/4 oder 10118B (Fig. 5B) zu senden, wie später beschrieben wird. Die Registersteuerschaltung 0114 erzeugt ferner TCMIR-Signale, d.h. Signale zur Übertragung von den Kernen zum Speicherinformaticnsregister. Die TCMIR-Signalc treten zum Zeitpunkt MT 3 durch dasMT-Signal vom Zeitzähler 10113 auf, das mit dem Speicherlesepegelsignal und mit dem Kernerreger-Flip-Flop in seinem nicht gesetzten Zustand über UND-Glieder verknüpft wird, wodurch ein Ausgangssignal von den UND-Gliedern A 11402 und A11403 erzeugt wird, das jeweils ODER-Glieder 011405 und 011406 veranlaßt, die TCMIR-Ausgangssignale zu erzeugen.
Zum Zeitpunkt MT 3 erzeugt das UND-Glied A 11402 ein hohes Ausgangssignal, wenn ein Speicherlesepegelsignal vorhanden ist, wenn der Kernerreger-Flip-Flop in rückgestellter Stellung ist und
iS wenn Lesebetrieb vorliegt, in dem das MRL-Signal hoch ist. Das Ausgangssignal des UND-Glieds 11401 bildet das Signal LMAR in Fig. 24, das in das Speicheradressenregister 1021 gelangt. Die übrigen Ausgangssignale der F i g. 24 gelangen zum Speicher-
informationsregister 1033 (s. Fig. 5D). Das erste dieser Signale ist das TCMIR-Signal (Übertragung vom Kern zum Speicherinformationsregister), das Von den ODER-Gliedern 011405 und 011406 abgegebenwird. :
as Wenn kein Prüfvorgang vorliegt, liegt der rechtsseitige Eingang des UND-Glieds A 11421 hoch. Um das UND-GLlied A11421 zu aktivieren, muß der Speicherschreibpegel hoch sein und dadurch anzeigen, daß eine Speicher-Schreiboperation vorliegt. In diesem Fall liegen sämtliche rechtsseitigen Eingänge der UND-Glieder A11404 bis /411408 hoch. Zum Zeitpunkt MTI aktiviert das Signal vom Zeitzähler 10113 das UND-Glied A 11404 und bewirkt, daß das ODER-Glied 011402 ein Signal »Lade-Speicher-
informationsregister-Silbeö« auf der Leitung LMIRD abgibt (s. Fig. 5D). Entsprechend aktiviert zum Zeitpunkt MT 2 der Zeitzähler 10113 das UND-Glied A 11405, welches 011403 veranlaßt, ein Signal »Lade-Speicherinformationsregister-Silbe C« (LMIRC) abzugeben. In entsprechender Weise erzeugt zu den Zeitpunkten MT3, MTA und MTS der Zeitzähler 10113 entsprechende Signale zum Aktivieren der jeweiligen UND-Glieder^ 11406,/411407 und/411408, um die Erzeugung entsprechender Ausgangssignale zu veranlassen, die Signale LMIRB, LMIRA und »Lade-das-Paritätsbit« angeben. Der Pufferkreis B11401 in Fig. 24 ist ein Normierungs-Pufferkreis, der aus einem doppelten Inverterkreis bestehen kann. Der rechtsliegende Abschnitt der Fig. 24 mit den Schaltungen der UND-Glieder A11409 bis A 11413 erzeugt die Rückstellsignale zum Rückstellen der Unterregister für die D-, C-, B-, A- und Paritätssilben des Speicherinformationsregisters. Jedes Glied spricht auf ein Kein-Prüfungsvorgang-Eingangssignal und ein Leer-Null-Kreuzungspunktsignal an, das die jeweiligen UND-Glieder hoch legt und dadurch ein hohes Ausgangssignal von den zugehörigen ODER-Gliedern 011410 bis 11414 bewirkt. Die Aktivierung dieser ODER-Glieder erzeugt entsprechende Rückstell-Speicherinformationsregistersilben D, C, B und A, nämlich die Signale RMIRD, RMIRC, RMIRB und RMIRA, sowie ein Rückstell-Paritätsbit-Signal.
Fig. 24 zeigt die Erzeugng des Signals LMAR für das Laden des Speicheradressenregisters 1021. Während der Leseoperationen werden die Signale TCMIR (Signale für die Übertragung vom Kern zum Speicherinformationsregister) erzeugt und gestatten, daß
809649/3
Information von den Kernen in das Speicherinformationsregister 1033 übertragen wird.
Während der Schreiboperationen wird die Eingabe von Information in das Speicherinformationsregister 1033 (Fig. 5D) von der Anruf moduleinheit her auf Silben-Grundlage gesteuert durch die SignaleLMIRD (bei MTI), LMIRC (beiMT2), LMIRB (beiMT3), LMIRA (bei MT 4) und das Signal zum Eingeben des Paritätsbits (bei MTS).
Zur MTO-Kreuzungspunkt-Zeit (MTOXP-I) wird das gesamte Speicherinformationsregister 1033 riickgestellt, und zwar über die zugehörigen Speicherinformationsregister-Rückstellsignale RMIRD (Silbe D), RMIRC (Silbe C), RMIRB (Silbe B), RMIRA (Silbe A), sowie »Rückstelle Paritätsbit«.
Es wird erneut F i g. 5 betrachtet. Die Eingangssignale zu den Empfängern für die Sammelleitungen bus I bis bus 5 sind für den Steuersignaleingang beschrieben worden. Es sind zusätzlich eine Anzahl von Empfängern 10117/1,101175,10117 C, 10118 Λ und 10118 B vorgesehen, die Adressen- und Informationsbits von den jeweiligen Anrufmoduleinheiten Pl bis P 4 und E/A 1 bis E/A 20 aufnehmen. Es sind 12 Empfänger für jede der Prozessor-Sammelleitungen und 60 Empfänger für die E/A-Steuereinheiten-Sammelleitungen vorgesehen, d.h. 12 Empfänger von jedem der 5 Gehäuse mit zwei E/A-Steuereinheiten für die Sammelleitung bus 1 der E/A-Vermittlung A und die Sammelleitung bus! der E/A-Vermittlung B. Die Empfänger normieren die in die Gehäuse der Speichermoduleinheiten eintretenden Signale mit Hilfe doppelter Inversion durch ein Paar von Invertern. Die Eingangssignale für die Empfänger 10118/1 und 10118ß werden in den Mischkreis 10119Λ der Sammelleitung bus 1 bzw. in den Mischkreis 10119 B der Sammelleitung bus! gegeben. Die Mischkreise 10119/1 und 10119B können 1 · 5-Mischer sein (1 auf 5). Zu einem gegebenen Zeitpunkt wird nur eine Gruppe von 12 Signalen von einem der E/A-Steuergehäuse auf den Empfängern 10118/1 der Sammelleitung bus 1 oder 10118B der Sammelleitung bus2 empfangen. Die Mischkreise 10119/4 und 10119B gleichen den oben beschriebenen Mischkreisen 10106 und 10107 für die Sammelleitungen bus 1 bzw. bus 2, die für die Steuerinformation vorgesehen sind. Nur eines der E/A-Steuergehäuse sendet jeweils zu einem Zeitpunkt; es werden jedoch von jedem der
5 Gehäuse für jede Torschaltung in dem Mischkreis 10119/4 5 Eingangssignale empfangen, von denen vier nicht aktiv sind. Die Mischer werden verwendet, um eine Einengung der 5 Signale auf ein Signal herbeizuführen. Die Ausgangssignale des Mischers 10119A enthalten daher 12 Gruppen von 5 Eingangssignalen von jedem der E/A-Gehäuse für die 12 Bits der Information oder der Adresse.
In F i g. 25 A und 25 B ist die Speichereingangsmatrix für die Bits 1 bis 6 dargestellt. Es wird noch auf Fig. 5D Bezug genommen. Die Zeichnungen enthalten die Schaltungsanordnungen für die ersten
6 Bits vom Sammelleitungseingang bus S 10121, Sammelleitungseingang bus 4 10122, Sammelleitungseingang bus3 10123, Sammelleitungseingang bus2 10124, Sammelleitungseingang bus 1 10125 und von dem Eingangsmischkreis 10127. Die Zeichnung enthält ferner den Prüfkreis für die Eingangs-Simulier-Sammelleitung 10126. Es sind tatsächlich zwei Speichereingangsmatrix-Einheiten vorgesehen. Eine nicht dargestellte zweite Einheit ist für die Bits 7 bis 12 vorgesehen, die im wesentlichen dieselbe Einheit sein kann, wie die Speichereingangsmatrix für die ersten 6 Bits. Die F i g. 25 dient daher als Beispiel zur Beschreibung beider Schaltungsanordnungen.
Gemäß Fig. 25A und 25B ist jedes der ODER-Glieder 011501 bis 011506 und deren zugehörige UND-Glieder, die die ODER-Glieder jeweils speisen, einem der Bits der Adresse oder Information zugeordnet, die zum Adressenregister 1021 oder zum Informationsregister 1033 übertragen werden soll.
Es wird Bezug genommen z. B. auf das erste Bit und das ODER-Glied 011501. Abhängig davon, welche Moduleinheit Zugriff erhalten hat, erscheint ein Signal auf einem der Kreuzungspunkt-SammelleitungseingängeZPBi/Sl bis XPBUSS (Fig. 25A). Dieses Signal wird auf das jeweils zugeordnete UND-Glied A 11501 bis A 11505 gegeben. Ein zusätzliches UND-Glied ist für Prüfzwecke vorgesehen und wird nicht beschrieben. Entsprechend führt die erregte
ao Steuerleitung zum zugehörigen UND-Glied, das das entsprechende ODER-Glied 011502 bis 011506 speist. In Abhängigkeit davon, welches der UND-Glieder durch das zugehörige Kreuzungspunkt-SammelleitungssignalATßt/Sl bis XPBUSS erregt worden ist, wird das zugehörige der UND-Glieder A 11501 bis A 11505 durch die Adresseninformation aktiviert, welche von der entsprechenden Moduleinheit auf den Leitungen IUABl, dem E/A-Vermittlung Α-Eingang, oder CU4Bl, CU3BI, CU 2Bl oder CUlBl, oder den Eingängen von den Prozessoren Pl bis P 4 kommt. Wenn an Stelle des vierten Prozessors eine zweite E/A-Vermittlung benutzt wird, ändert sich der Eingang entsprechend.
Es wird angenommen, daß die Eingangssignale von der Sammelleitung bus 1 kommen, die die Sammelleitung für die E/A-Steuereinheiten-Gruppe der Vermittlung A darstellt. Es erscheinen dann Signale auf der mit XPBUSl bezeichneten Leitung, und es erscheint ein entsprechendes Signal jetzt auf der Eingangsleitung IUABl. Dies stellt die ankommende Adresse für das Informationsbit 1 von der E/ASteuereinheit der E/A-Vermittlung A dar, die Zugriff erhalten hat. Diese beiden Eingangssignale werden im UND-Glied A 11501 verknüpft, und in Abhängigkeit davon, ob das ankommende Bit eine Null oder eine Eins ist, weist das UND-Glied A 11501 ein niedriges oder ein hohes Ausgangssignal auf. Daraufhin erzeugt das ODER-Glied 011501 ein entsprechendes Ausgangssignal am Ausgang INBl. Dies ist das Ausgangssignal vom Eingangsmischkreis 10127.
Die Einheit 10125 der Eingangssammelleitung bus I enthält die 5 UND-Glieder A 11501, A 11506, A 11508, A 11509 und A 11510. Dies entspricht den sechs der zwölf Ausgänge von der Eingangssammel-
„ leitung bus I, 10125. Die Ausgangssignale von jedem der zugehörigen UND-Glieder werden auf den Eingangsmischkreis 10127 gegeben. Der Mischkreis enthält 12 ODER-Glieder, von denen sechs die ODER-Glieder 011501 bis 11506 darstellen.
Das Ausgangssignal INB1 ist das erste Bit, INB 2 das zweite Bit, INB 3 das dritte Bit, INB 4 das vierte Bit, INBS das fünfte Bit, und INB 6 das sechste Bit des Informations- oder Adressenausgangssignals vom Eingangsmischkreis 10127.
Sechs weitere Bit-Schaltungen für die Bits 7 bis 12 der ersten 12 Bits der Information oder Adresse sind durch eine identische Einheit vorgesehen. Diese INB-Ausgangssignale 1 bis 12 werden zu den Torschaltun-
gen des Speicheradressenregisters und der Speicherinformationsregister übertragen.
In Fig. 26 ist das Speicheradressenregister dargestellt. Die Zeichnung zeigt das Speicheradressenregister 1021 für die Bits 1 bis 6 und den Kernerreger-Flip-Flop-Kreis FF11620. Für die Bits 7 bis 12 ist ein zweiter Abschnitt des Adressenregisters 1021 vorgesehen, der im wesentlichen identisch mit dem für die ersten 6 Bits ist. Es ist jedoch nur ein Kernerreger-Flip-Flop FF11620 vorgesehen. Dieses stellt eine Primärsteuerung zum Steuern des Speicherlese- und des Speicherschreibzyklus dar. Im Normalbetrieb befindet sich der Flip-Flop stets im rückgestellten Zustand. Immer wenn die Einrichtung im Betriebszustand ist, befindet sich der Flip-Flop im rückgestellten Zustand; er wird lediglich für Prüfzwecke gesetzt.
Das Speicheradressenregister 1021 wird niemals rückgestellt, sondern befindet sich immer in dem Zustand der letzten Adresse, in die es eingegeben worden war. Daher muß das Speicheradressenregister 1021 in den für jedes Bit geforderten Zustand gezwungen werden. Dies wird ausgeführt durch die Verwendung eines Paares von Torschaltungen, von denen die eine die Nullseite des Flip-Flops eines jeden Bits schaltet, und die andere die Einsseite dieses Flip-Flops. Es wird z. B. die Schaltung des Bits 1 betrachtet, die den Flip-Flop FF Π 601 enthält. Die Nullseite des Flip-Flops FF11601 wird gesetzt durch ein ODER-Glied 011601, und die Einsseite durch ein ODER-Glied 011602. Das ODER-Glied 11601 wird gesetzt durch das UND-Glied A 11601, das ODER-Glied 011602 durch das UND-Glieds 11602. Die Eingangssignale des UND-Glieds /4 11601 sind das umgekehrt INBl-Signal, also das Ausgangssignal des Eingangsmischkreises, sowie das LMAR-Signal (Speicheradressenregister-Ladesignal), das zur Kreuzungspunktzeit MTO auftritt. Das erste Eingangssignal des UND-Glieds A 11602 ist dasselbe Ausgangssignal INBl, das das erste ankommende Bit vom in F i g. 5 D dargestellten Eingangsmischkreis 10127 bildet, sein zweites Eingangssignal, das Signal LMAR zum Zeitpunkt MTOXP (Kreuzungspunktzeit MTO). Dieses Signal wird nicht umgekehrt. Wenn also das auf der Leitung INB1 ankommende Signal hoch ist, wird es am Inverter/11601 umgekehrt, wodurch das Eingangssignal am UND-Glied A11601 niedrig ist. In diesem Fall aktiviert das hohe Signal das UND-Glied A 11602 zum Zeitpunkt MTOXP durch das Signal LMA R, worauf das ODER-Glied 011602 ein Ausgangssignal abgibt, das den Flip-Flop FF11601 in den Einszustand schaltet. Entsprechend ist dann, wenn das ankommende Bit eine Null darstellt, das Eingangssignal INBI niedrig. Dieses Eingangssignal wird am Inverter /11601 umgekehrt und über das UND-Glied A 11601 und die ODER-Glieder 011601 übertragen, um die Nullseite des Flip-Flops FF11601 zu setzen. Dieses niedrige Signal aktiviert das UND-Glied A 11602 nicht; daher wird die Einsseite des Flip-Flops FF11601 nicht gesetzt. In Abhängigkeit davon, ob das auf der Leitung INBl vom Eingangsmischkreis 10127 ankommende Signal eine Null oder eine Eins ist, wird also der Zustand des Flip-Flops FF11601 entsprechend in bestimmter Weise gesetzt. Das gleiche geschieht für jeden der anderen Flip-Flops der ersten 6 Bits, nämlich für die Flip-Flops FF11602 bis FF11606. Das Ausgangssignal für das erste Bit des Flip-Flops FF11601 im Speicheradressenregister ist verschieden von den 5 anderen in Fig. 26 dargestellten Bits und unterscheidet sich ebenso von den 6 weniger wichtigen Bits des Speicheradressenregisters 1021. Das Ausgangssignal mit den wichtigsten Bits wird zu jeder der Decodier-Torschaltungen für die wichtigsten Bits der Decodierer 1023 und 1024 gegeben und von dort aus zu den Schaltern 1027 geleitet.
Gemäß F i g. 26 wird das Ausgangssignal des FHp-Flops FF11601, d.h. des höchsten Bits, auf zugehörige UND-Glieder A 11610 und A 11611 gegeben. Wenn der Flip-Flop FF11601 in den Einzustand gesetzt wird, wird ein hohes Signal auf das UND-Glied A 11610 gegeben. Wenn die Nullseite des Flip-Flops FF11601 hoch Tegt, wird eine hohe Ausgangsspannung auf das UND-Glied A 11611 gegeben. Bei Auftreten eines Schaltersteuer-Adressenauswert'mpulses SCAS erzeugt dasjenige UND-Glieds 11610 oder A 11611, das eine hohe Ausgangsspannung hat, ein entsprechendes Ausgangssignal MARlS oder MARTS. Der Strich oberhalb MARlS bedeutet M/i/? IS-NICHT. Dies zeigt an, daß entweder ein Ausgangssignal Eins oder Null vorliegt. Das Ausgangssignal der Nullseite MARlS wird auf 32 Sechs-Eingangs-Decodierkreise gegeben, die sämtlich im Decodierer 1024 für die weniger wichtigen Bits enthalten sind (s. F i g. 5 C). Entsprechend wird das Signals MARlS der Einsseite des Flip-Flops FF11601 auf die anderen 32 Sechs-Eingangs-Torschaltungen in dem Decodierer 1023 für die wichtigsten Bits im Speicheradressenregister gegeben. Da 32 der Decodier-Schaltungen ein Eingangssignal von der Nullseite des Flip-Flops FF11601 für das erste Bit des Speicheradressenregisters 1021 und die anderen 32 Torschaltungen ein Eingangssignal von der Einsseite des Flip-Flops FF11601 erhalten, wird durch Anlegen des Schalter-Steueradressen-Auswertsignal SCAS an die UND-Glieder A11610 und A 11611 der Zustand übertragen, ohne die Notwendigkeit, ein gesondertes Auswert-Eingangssignal SCAR auf jede der Torschaltungen des Decodierers 1023 für die wichtigsten Bits einzugeben. Die Ausgangssignale der anderen 5 Flip-Flops FF 11602 bis FF11606 werden auf die 64 Decodier-Torschaltungen 1023 für die wichtigsten Bits geleistet. Die Signale von diesen Decodier-Torschaltungen 1023 werden zu den Schaltern 1027 geleitet, wodurch einer der 64 Schalter eingeschaltet wird. Diese Schalter wählen in Verbindung mit den 64 Treibern der Treibereinheit DR10106 mit den Lesetreibern 1025 und den Schreibtreibern 1026 das jeweilige Wort aus, daß in der Kernmatrix 1028 gewünscht wird (s. F i g. 5 C). In ähnlicher Weise erregen die weniger wichtigen Bits 7 bis 10 des Speicheradressenregisters 1021 die 64 Torschaltungen; des De)codierers 1024 für die weniger wichtigen Bits, damit entsprechend einer der 64 Treiber DR10106 gesetzt wird, die in Verbindung mit den Schaltern zur Wortwahl in der Kernmatrix 1028 verwendet werden.
Fig. 27 zeigt den Adressenregister-Decodierer 1023 für die 6 wichtigsten Bits. Dieser dient zur Decodierung für die Schalter SWOO bis SW17. Die Schalternummern sind im Oktalcode wiedergegeben, so daß SWOO bis SW17 die ersten die ersten 16 Schalter bilden. Es sind 8 Gruppen von Adressenregister-Decodierern vorgesehen; jede Gruppe entspricht der Gruppe gemäß Fig. 27. Jedes der UND-Glieder, z. B. A11701, 6 Eingänge; ihm folgt in der Schaltung
ein ODER-Glied. A 11701 speist demgemäß O11701. Das Ausgangssignal jedes der ODER-Glieder, z. B. von 011701, wird dem Eingang eines entsprechenden Schalters in der Schaltereinheit 1027 zugeführt. Zum Beispiel wird das Ausgangssignal von 011701 auf den Schalter 5W00 der Schaltereinheit 1027 gegeben. Diese Schalter arbeiten mit den Treibern DR 10106 zusammen, um das Wort in der Kernmatrix 1028 zu wählen, zu dem Zugriff gefordert wird. Die Eingangssignale zu den UND-Gliedern, z. B. zu A 11701, werden entweder von den Nulloder von den Einsseiten der 6 wichtigsten Bits des Speicheradressenregisters (MAR) 1021 abgenommen. Die Eingangsspannungen beispielsweise für A 11701 sind die Nullseiten der 6 wichtigsten Bits.
In Fig.28 sind die Bits 1 bis 12, nämlich die 12 höchsten Bits, des Speicherinformationsregisters 1033 dargestellt. Es sind dies die Bits für die Silbe A in dem mit MIRA bezeichneten Block in F i g. 5 D.
Im Gegensatz zum Speicheradressenregister 1021 wird beim Speicherinformationsregister 1033 dieses Register beim Beginn eines jeden Zyklus rückgestellt. Es wird angenommen, daß ein Informationswort in den Kernspeicher 1028 eingegeben werden soll. Für die Schreiboperation in den Speicher wird ein Satz von UND-Gliedern verwendet, der aus A11801 bis /411812 besteht. Ein Speicherinformationsregister-Ladesignal (LMIR) ist vorhanden. Im Beispiel gemäß F i g. 28 soll ein entsprechendes Signal LMIRA vorhanden sein. Es sind 5 solcher Speicherinformationsregister-Ladesignale LMIR vorhanden, und zwar für jeden der Silbenabschnitte A, B, C und D, sowie ein Signal für die Parität.
Diese Signale sind in Verbindung mit F i g. 24, den Speicherregistersteuerungen und dem Paritätskreis betrachtet worden. Bei Vorhandensein eines Speicherinformationsregister-Ladesignals LMIR werden die UND-Glieder A 11801 bis A11812 wirksam gemacht und durch die Signale aktiviert, die auf den ^Leitungen zwischen dem Eingangsmischkreis 10127 und dem Speicherinformationsregister 1033 (s. F i g. 5 D) erscheinen, wie z. B. das erste Bit-Signal INB1. In F i g. 5 D ist das Speicherinformationsregister 1033 durch entsprechende A-, B-, C-, D- und Paritätslese- und -Schreibblocks dargestellt, die durch ODER-Glieder zusammengefaßt sind. Wenn das Bit eine Eins darstellt (»1«), wird /411801 aktiviert und erzeugt ein hohes Ausgangssignal am ODER-Glied 011801. Dieses Ausgangssignal setzt die Einsseite des Flip-Flops FF11801. Die Leseeingangssignale werden während der Leseoperation an die zugehörigen UND-Glieder A11821 bis A11832 gelegt. Die UND-Glieder werden für die Leseoperation aktiviert durch ein Übertrag-Vom-Kern-In-Speicherinformationsregister-Signal, das Signal TCMIR-I oder TCMIR-2. Diese werden gemäß F i g. 28 eingeführt. Es werden z. B. die ersten wichtigsten 12 Bits betrachtet. Das UND-Glied A11821 wird aktiviert durch ein Eingangssignal vom Univibrator B1, der das Signal SSB 1 abgibt. Wenn das Signal eine Eins ist, die von der Kernmatrix 1028 über die Abfühlverstärker 1031 und die Univibratoren 1032 kommt, wird /411821 aktiviert und veranlaßt 011801, ein hohes Ausgangssignal abzugeben, das die Einsseite des Flip-Flops FF11801 setzt. Entsprechend werden die jeweiligen UND-Glieder beim Vorhandensein eines zugehörigen TCMIR-Signals und des Ausgangssignals des zugehörigen Univibratorbits durchgeschaltet, um die Einsseite eines zugehörigen Bit-Flip-Flops im Speicherinformationsregister 1033 zu setzen. Ob es sich um eine Lese- oder eine Schreiboperation während der ersten 6 Zeitpreioden MTO bis MT 6 handelt, in jedem Fall wird während der Perioden MTI bis MT5 das Speicherinformationsregister 1033 gesetzt. Von der Periode MT 6 bis zur Periode MTlO wird die Information im Speicherinformationsregister 1033 in die Kerne 1028 zurückgeschrieben.
ίο Bei der Schreiboperation wird alles, was in den adressierten Kernen 1028 vorhanden ist, gelöscht, und während MT 6 bis MTlO wird das Wort im Speicherinformationsregister in die Kerne 1028 eingeschrieben.
Zusammenfassend gesagt muß also, um eine Eins in das Speicherinformationsregister 1033 zu geben, entweder ein Lesesignal gleichzeitig mit einem Signal vom Univibratorkreis für Bit 1 vorhanden sein, oder es muß eine Schreiboperation gleichzeitig mit einer eingeschriebenen Eins vorliegen, wie durch das Eingangssignal INB1 angegeben wird.
In F i g. 29 ist die Speicherinformations-Ausgangsschaltung 10153 dargestellt (s. auch Fig.5D). In jedem in Fig. 28 möglichen Fall, nämlich bei einer Lese- oder bei einer Schreiboperation, wird die Information mit 12 Bits zur gleichen Zeit übertragen. Die anrufende Moduleinheit bestimmt, ob sie die Information ansehen will oder nicht. Es wird erneut F i g. 5 D betrachtet. Ob eine Leseoperation oder eine Schreiboperation vor sich geht, in jedem Fall wird die Information aus dem Speicherinformationsregister 1033 in den Informationsausgangsmischkreis 10151 und dann in den Leitungstreiber-Informationsausgangskreis 10152 ausgelesen. Im Fall einer Schreiboperation würde die Anrufmoduleinheit die Information nicht ansehen wollen; es sind daher nicht dargestellte Mittel vorgesehen, die ermöglichen, daß dies nicht nötig wird.
Die F i g. 29 zeigt das logische Schaltbild des Informationsausgangs-(nicht beziffert) und des Informationsausgangsmischkreises 10151, die in Fig.5D durch eine gestrichelte Umrahmung hervorgehoben und mit 10153 bezeichnet sind.
Die Schaltung nach F i g. 29 gibt den Inhalt des Speicherinformationsregisters 1033 Silbe für Silbe aus. Zur Signalzeit MT 4 vom Zeitzähler 10113 (s. Fi g. 5 A) werden die 12 Bits der Silbe D aus dem Speicherinformationsregister 1033 herausgelesen. Die 12 Bits der Silbe D werden über zugehörige UND-Glieder A11901 bis A11912 gelesen. Entsprechend werden die zweiten 12 Bits aus dem Silbenabschnitt C zum Zeitpunkt MT5 vom UND-Glied A11913 und den zugehörigen UND-Gliedern in jedem der Speicherinformations-Ausgangskreise mit den ODER-Gliedern 011901 bis 011912 herausgelesen. Zum Zeitpunkt MT 6 wird der Inhalt der Silbe B im Speicherinformationsregister 1033 vom UND-Glied /411925 und den entsprechenden UND-Gliedern in jedem der ODER-Glieder 011902 bis 011912 herausgelesen. Zum Zeitpunkt MT 7 wird das UND-Glied A11937 durch das MT7-Signal aktiviert und der Inhalt der Silbe A des Speicherinformationsregisters 1033 wird von den UND-Gliedern entsprechend dem UND-Glied A11937 in jedem der ODER-
Glieder 011901 bis 011912 ebenfalls herausgelesen. Schließlich wird zum Zeitpunkt MT 8 das Paritätsbit herausgelesen durch Aktivieren des UND-Glieds A11949 und entsprechende Aktivierung von 011912
auf die Leitungstreiber 10152. Letztere entsprechen den Leitungstreibern 10111, außer daß die Leitungstreiber 10152 dem Informationsausgang zugeordnet sind, während die Leitungstreiber DRlIlOl bis DR11109 in der Leitungstreibereinheit 10111 den Ausgängen der Hauptsteuereinheit 10115 zugeordnet sind. Diese Daten werden in zugehörige Register in der Anrufmoduleinheit gegeben. Wenn z. B. ein Prozessor Pl bis P 4 Information aus einer Speichermoduleinheit Ml bis M16 anfordert, wird die Information von der Leitungstreiber-Informationsausgangseinheit 10152 in das M-Register 3007 der L- und M-Register 3006 und 3007 in den Speichervermittlungsabschnitten der Prozessoren gelesen.
E/A-Steuereinheiten
Die Eingangs-Ausgangs(E/A)-Steuereinheiten E/A 1 bis E/A 10 und, falls vorhanden, E/A 11 bis E/A 20 enthalten Steuer- und Datenbehandlungsregister sowie zugehörige Decodier und Zeitgeberregister. Jede E/A-Steuereinheit kann irgendein Gerät des E/A-Komplements steuern, es können soviele gleichzeitige E/A-Oprationen durchgeführt werden, wie E/ASteuereinheiten vorhanden sind. Es werden 5 Arten von E/A-Steuereinheit-Befehlswörtern oder -Kennwörtern benutzt, und zwar Einstellen, Befehl, In-Bearbeitung, Ergebnis und Freigabe. Die Fig. 31 bis 35 zeigen den Aufbau von Kennwörtern.
Ein in der Steuerbetriebsart arbeitender Prozessor kann eine Speichermoduleinheit veranlassen, ein Wort zur E/A-Steuereinheit zu übertragen, das als ein EinstelKKennwort, als Freigabe-Kennwort oder als Befehlskennwort interpretiert wird. Die E/A-Steuereinheiten geben zum Speicher In-Bearbeitung- und Freigabe-Kennwörter zurück.
Es wird ein TI O-Befehl mit den Einstell-, Befehlsund Freigabe-Kennwörtern verwendet. Der TI O-Befehl, der nur gegeben wird, wenn sich ein Prozessor im Steuerbetrieb befindet, sendet das Einstell-Kennwort, das Befehlskennwort oder das Freigabe-Kennwort (das von der Speicherstelle erhalten wird, die durch A2 bezeichnet ist) zu den E/A-Steuereinheiten. Dieser Befehl kann ein Befehl-TIO oder ein unbedingter 770 sein.
Die Befehlsvariation überträgt ein Befehls-Kennwort zu einer E/A-Steuereinheit, falls eine solche zugänglich ist. Falls keine E/A-Steuereinheit zugänglich ist, entnimmt der Prozessor seinen nächsten Befehl aus der Speicherstelle, die mit A3 bezeichnet ist.
Einstell-Kennwort
In Fig. 33 ist der Aufbau des Einstell-Kennworts dargestellt. Das Einstellkennwort setzt die Grundadresse der Kennwörter fest (In-Bearbeitung und Ergebnis), die zur Speichermoduleinheit von der E/ASteuereinheit zurückgegeben wird.
Das Kennwort wird zu allen E/A-Steuereinheiten gleichzeitig übertragen, gewöhnlich als das Ergebnis eines unbedingten TIO-Befehls. Die erste nicht belegte E/A-Steuereinheit spricht an und gibt ein ganzes In-Bearbeitungs-Kennwort zurück. Falls kein Paritätsfehler besteht, liegt die Speicherstelle dieses In-Bearbeitungs-Kennwortes im Speicherbereich, der durch den Kenn-Grundadressenabschnitt des Einstellkennwortes bezeichnet ist.
Befehlskennwort
In Fig. 31 ist der Aufbau des Befehlskennwortes dargestellt. Ein TI O-Befehl mit einem Befehlskennwort leitet jede E/A-Operation ein. Alle Datenübertragungen oder die Einleitung von Wirkungen an einem Anschlußgerät werden durch ein Befehlskennwort gesteuert, das normalerweise durch einen der Prozessoren P1 bis P 4 übertragen wird, der einen bedingten TI O-Befehl ausführt.
In-Bearbeitungs-Kennwort
In Fig. 32 ist der Aufbau des In-Bearbeitungs-1S Kennwortes dargestellt. Die normale Konsequenz des Senders eines Befehls-Kennwortes zur ersten nicht belegten E/A-Steuereinheit ist es, diese zu veranlassen, das bezeichnete Anschlußgerät anzuschließen und ein In-Bearbeitungs-Kennwort mit 000 bis 000 im Zustandsbereich zurückzugeben. Außer dem Zustandsbereich sind alle Bits des In-Bearbeitungs-Kennwortes identisch mit denen des Befehls-Kennwortes, das die E/A-Operation eingeleitet hat.
a5 Ergebnis-Kennwort
Die F i g. 35 zeigt den Aufbau des Ergebnis-Kennwortes. Ein Ergebnis-Kennwort wird zurückgegeben auf Grund der Beendigung oder einer Unterbrechung eines Anschlußgeräts. Die ersten 16 Bits enthalten das. Wortzählen und Aufzeichnungszählen der Operation, die zu der Zeit vor sich ging, als die Operation beendet war oder durch ein Freigabe-Kennwort unterbrochen wurde. Die Bits 21 bis 36 enthalten die Speicheradresse, die der letzten in der E/A-Operation verwendeten Adresse folgt.
Zu ungefähr derselben Zeit, zu der das Kennwort zum Speicher zurückgeführt wird, sendet di E/A-Steuereinheit (eine der E/A 1 bis E/A 10, oder E/A 10 bis E/A 20, falls vorhanden) ein Unterbrechungssignal zu dem oder den Prozessoren und löst die Verbindung vom Anschlußgerät. Die E/A-Steuereinheit bleibt belegt, wenn nicht die Ursache der Beendigung ein Freigabe-Kennwort war. Sonst bleibt sie belegt, bis ein Freigabe-Kennwort empfangen wird.
Freigabe-Kennwort
so In Fig. 34 ist der Aufbau des Freigabe-Kennwortes dargestellt. Das Freigabe-Kennwort, das einer E/A-Steuereinheit erlaubt, ein neues Befehlskennwort anzunehmen, wird auf diejenige E/A-Steuereinheit übertragen, die durch die E/A-Steuereinheitnummer in den Bits 39 bis 42 bezeichnet ist. Es wird ein unbedingter TI O-Befehl verwendet, um dieses Kennwort zu senden.
Ein Freigabe-Kennwort unterbricht eine E/A-Operation oder gestattet, falls die Operation beendet ist,
daß die E/A-Steuereinheit ein neues Befehlskennwort annimmt, wenn sie die nächste nicht belegte Steuereinheit ist.
Ein Freigabe-Kennwort wird von allen nicht belegten E/A-Steuereinheiten und von allen solchen
g Einheiten ignoriert, deren Nummern nicht mit dem L/A-Steuereinheiten-Nummerbereich des Freigabe-Kennwortes übereinstimmt.
Eine E/A-Steuereinheit bleibt belegt, nachdem
65 66
eine Operation beendet ist. Der Prozessor muß ver- Wesenheit von Informations- und/oder Kennwortanlassen, daß ein Freigabe-Kennwort nach dem Lesen Kreuzungspunkten bestimmt wird,
des Ergebnis-Kennwortes zu allen E/A-Steuereinheiten gesendet wird, damit neue Befehlskenn- Speicher-Eingangs-Wähltorschaltungen
Wörter angenommen werden. 5
Die Speicher-Eingangs-Wähltorschaltungen 517 bilden die Eingangsdatenkanalsignale von den Bits
Signalfluß von.den Speichermoduleinheiten Ml bis M8 und
von den Bits von den Speichermoduleinheiten M 9
Fig. 30 zeigt ein Blockschaltbild der Eingabe/ 10 bis M16 unter der Steuerung der Ausgangssignale Ausgabe-Steuereinheit als Unteranlage der modula- vom Speicher-Eingangs-Wähler 516.
ren datenverarbeitenden Anlage nach der Erfindung.
Eine E/A-Moduleinheit führt das folgende aus: Kennwortkanaleingänge
1. Laden des Kennwort-Basisadressenregisters, 15 Die Kennwortkanaleingänge 519 nehmen Kennwenn ein Einstell-Kennwort empfangen wird. wort-Informationsbits vom Speicher auf und bilden
2. E/A-Operationen einschalten, wenn ein Befehls- die 12 Kennwortkanaleingangsbits aus den Speicherkennwort empfangen wird: Die Moduleinheit Signalen. Dieser Abschnitt nimmt ferner Simuliergeht in den Belegt-Zustand über. schalter für Datensignale SBB1 bis SBB12 auf. Die
3. Rückführen eines In-Bearbeitungs-Kennwortes 20 Ausgangssignale stellen die Kennwortkanaleingangszur Α-Liste, die im Speicher durch das Betriebs- bits zum Speicher dar.
system bestimmt ist.
4. Senden eines Ergebnis-Kennwortes zur C-Liste Eingangsparitätsprüfer
des Betriebssystems. Das Ergebnis kann ein vollständiges oder ein Teilergebnis sein mit der Vor- 25 Der Eingangsparitätsprüfer 534 prüft die Parität sorge der Beendigung der Bearbeitung zu einem der Zeichen von den Eingabegeräten und erzeugt ein späteren Zeitpunkt. Signal [PET), wenn die Parität nicht korrekt ist.
5. In den nicht belegten Zustand übergehen, wenn
ein Freigabe-Kennwort empfangen wird.
6. Schaffung einer ungeraden Paritätserzeugung 30 Informationskanaleingänge
und -prüfung.
7. Einschalten eines Anschlußgeräts, wenn die Die Informationskanaleingänge 541 nehmen Inforrichtigen Bedingungen vorhanden sind. mationsbits von den Speichermoduleinheiten Ml bis
8. Anrufe nach Daten (zu Eingangsgeräten) ab- M16 auf und bilden die 12 Informationskanalgeben. 35 eingangsbits aus den Speichersignalen. Dieser Ab-
9. Anrufe nach Daten (von Ausgangsgeräten) be- schnitt nimmt ferner Simulierschalter für Datenantworten, signale SBB1 bis SBB12 auf. Die Ausgangssignale
10. Zustandsinformation eingeben, wenn ein Zu- sind die Informationskanaleingangsbits zum Speicher. Standssignal von einem E/A-Gerät kommt.
11. Zeitgebung und Steuerung für ladende und ent- 40 Ausgangsparitätsgenerator
ladende Kennwörter und Daten vorsehen.
12. Umwandlung von Asynchron- zum Synchron- Der Ausgangsparitätsgenerator erzeugt Parität für betrieb fur Synchronisieroperationen mit der den Zeichenausgang zu einem Anschlußgerät. Die E/A-Gerat-Zeitgebung schaffen. Eingangssignale bestehen aus den ersten 6 Daten-
13. Bereitstellung der erforderlichen logischen Schal- 45 ausaaneskanalbits
tungen für Schaltverriegelungsfunktionen.
Ausgangswähltorschaltungen zum Speicher
Es folgt eine kurze Betrachtung jede der Einheiten
im Blockschaltbild nach F i g. 30: Die Ausgangswähltorschaltungen zum Speicher
50 526 wählen Silben des Kennwortregisters oder des
„,. ., , . . , . ^ ... Informationsregisters für die Übertragung aus. In-
E/A-Modulemheit-Empfanger formationseingangssignale sind die 48 Bits vom In-
formationsregister und die 48 Bits vom Kennwort-
Diese nehmen Eingangsinformations-, Informa- register.
tions-Kreuzungspunkt- und Kennwort-Kreuzungs- 55
punktleitungen von den Speichermoduleinheiten M1 Ausgangsregister E/A zum Speicher
bis M 16 auf. Außerdem nehmen die Empfänger
Zeichenauswert-, Zustands-, Gerät-Bereit,- und Da- Das Ausgangsregister 527 hält die Ausgangs-
tenleitungen auf, die die Anschlußgeräte und die registerbits, welche Speicheradressen, Kennwörter
E/A-Steuereinheiten miteinander verbinden, sowie 6o oder Information sein können, fest, bis sie zu den
Zugriffssignale von den anderen E/A-Gehäusen. Die E/A-Steuereinheit-Leitungstreibern 528 für die Über-
Ausgangssignale sind die gleichen wie die Eingangs- tragung zu der gewählten Speichermoduleinheit der
signale. Einheiten Ml bis M16 gesendet werden.
Die Eingangsinformations-Signale bestehen aus
Speicher-Eingangs-Wähler 65 der Ausgangssilbenwahl vom Kennwortregister oder
vom Informationsregister und aus der Speicher-
Der Speicher-Eingangs-Wähler 516 erzeugt 1,6 nor- adresse. Eingangssteuersignale bestehen aus einer
mierte Speicherwählsignale, wie das durch die An- Anzeige, daß die Schalterlogik in Moduleinheiten, in
denen Zugriff gestattet wird, wirksam ist oder daß Zugriffe zu einer der Speichermoduleinheiten M1 bis M16 gewährt werden.
Gerätewahl
Der Gerätewahlblock 530 enthält den Gerätedecodierer (nicht dargestellt) und die Zugänglichkeitsmatrix (nicht dargestellt).
Anschlußeinrichtungs-Eingangswähltorschaltungen
Die Anschlußeinrichtungs - Eingangswähltorschaltungen 532 erzeugen die 7 Anschluß-Dateneingangskanalbits, die sich aus den Bit-Eingängen von den E/A-Eingabegeräteempfängern und aus dem Gerätewählnetzwerk ergeben.
Moduleinheit-Komparator eingangssignalen, Kennwörtern und Information, die Paritätsprüfung von Eingangssignalen vom Speicher zur E/A-Einheit und die Paritätserzeugung für Ausgangssignale von der E/A-Einheit zum Speicher. 5
Zweizeichenpufferspeicher
Der Zweizeichenpufferspeicher (TCB) 523 nimmt Eingangssignale von der Anschlußeinrichtung auf ίο zur Übertragung zum Informationsregister 524, oder Eingangssignale vom Informationsregister 524 zur Übertragung auf die Anschlußeinrichtung-Datenausgangsleitungen 522 zur Erweiterung der verfügbaren Speicherzugriffszeit.
Informationsregister-Zur-Anschlußeinrichtung-Ausgangstorschaltungen
Der Moduleinheit-Komparator 521 vergleicht die Die Informationsregister-Zur-Anschlußeinrichtung-
Moduleinheitnummer vom Einheitbezeichner mit dem 30 Ausgangstorschaltungen 525 wählen geeignete Bits E/A-Einheit-Bereich eines Freigabe-Kennwortes. aus dem Informationsregister 524 und dem Zweizeichenpufferspeicher 523 in Abhängigkeit von einem Zähler (nicht dargestellt), der die Übertragung für die Informationsregister Übermittlung an die Anschlußgeräte steuert.
Das Informationsregister (IR) 524 speichert 48-Bit-Informationswörter während der Übertragung von den Speichermoduleinheiten zu den Anschlußgeräten, und Informationswörter als 6-Bit-Zeichen während der Übertragung von den Anschlußgeräten zu den Speichermoduleinheiten. Die Eingangssignale bestehen aus den Informationskanaleingangsbits, den Simuliersignalen und zwei Zeichenpufferkreisausgangsbits. Die Zeichen im Informationsregister werden mit 6 Bits zu gleicher Zeit im Register nach links verschoben, und zwar zu jedem Zeitpunkt, zu dem ein Zeichen eingeht. Simuliersilben können im Informationsregister eingestellt werden.
Paritätsgenerator und -prüfer
Der Paritätsgenerator und -prüfer 520 erzeugt ein Ausgangssignal, das als das Paritätsfehlersignal beim Eingang vom Speicher oder als Paritätsbit beim Ausgang zum Speicher verwendet wird.
Speichermoduleinheitsadressen- und
Paritätswähltorschaltungen
Die Speichermoduleinheitadressentorschaltungen 523 steuern die Übertragung der Speicheradresse zum Ausgangsregister. Das Netzwerk wählt die Adresse entweder vom BAR 511 oder von den Kennwortregistern 514. Die Paritätswähltorschaltungen übertragen das Paritätsbit zum Ausgangsregister als 5. Silbenübertragung.
Anschlußeinrichtungs-Ausgangsdatentorschaltungen
Die Anschlußeinrichtungs-Ausgangsdatentorschaltungen543 steuern den Datenausgang zu den Anschlußgeräten.
Steuer- und Paritätsregister
Das Steuer- und Paritätsregister 512 hat drei Funktionen: Die Speicherung in Silbenform von Speicher-Treiber
Die Treiber 528 und 544 normieren alle Signale, bevor sie die E/A-Steuereinheit verlassen.
Kennwortregister
Das Kennwortregister 514 speichert das E/A-Befehlswort (Kennwort), das zu irgendeiner gegebenen Zeit verwendet wird. Nachdem es ein Befehlswort vom Speicher aufgenommen hat, steuert das Kennwortregister die Operation der E/A-Steuereinheit, bis die Operation beendet ist. Das Kennwortregister 514 ist aus 48 Flip-Flops und zugehörigen Torschaltungen aufgebaut. Eingangssignale werden aufgereiht entsprechend einer Bereichsunterbrechung.
Wortzähler
Der nicht dargestellte Wortzähler wird einmal für jede Datenübertragung zum oder vom Speicher heruntergezählt. Er enthält die Anzahl von Wörtern, die zu der bestimmten Operation gehört, und wenn er auf Null heruntergezählt worden ist, ist die Operation beendet. Der Zähler kann inkrementiert werden für eine bestirnte Operation unter Steuerung durch ein Anschlußgerät.
Blockzähler
Der Blockzähler (nicht dargestellt) arbeitet ähnlich wie der Wortzähler; er enthält die Anzahl von Blöcken von Wörtern, die zu einer bestimmten Ope-3 Bits (DR 20, DR 37, DR 38) unterliegen der Steuerung durch ein Anschlußgerät, und wenn er auf Null dekrementiert ist, ist die Operation beendet.
Zustand
g5 Dem Zustandsabschnitt des Kennwortregisters 514 ist die Aufzeichnung der erfolgreichen Beendigung einer Operation oder des Grundes für eine nicht erfolgreiche Beendigung zugewiesen. 3 Bits (DR 17 bis
DR19) stehen unter der Steuerung durch logische Schaltungen innerhalb der E/A-Steuereinheit, und 3 Bits (DR 20, DR 37, DR 38) unterliegen der Steuerung durch logische Schaltungen innerhalb des Anschlußgeräts.
Adressenzähler
Der nicht dargestellte Adressenzähler wird einmal für jede Datenübertragung zum oder vom Speicher hinaufgezählt. Er enthält die laufende Speicherstelle und Moduleinheitennummer zu oder von denen eine Datenübertragung geschehen soll.
E/A-Einheitbezeichner
Der E/A-Einheitbezeichner 550 erzeugt die Steuersignale, die die Prioritätslösung zwischen Moduleinheiten in einem Gehäuse gestatten. Er erzeugt ferner die Nummer der E/A-Steuereinheit, die die zwei Speicherstellen in der der E/A-Steuereinheit zugeteilten Kennwortliste wählt.
Es werden erneut F i g. 3 A und 3 B betrachtet, die das Leitungsführungsschaltbild der Anlage wiedergeben. Fig. 3A und 3B stellen ein Blockschaltbild der bevorzugten Ausführungsform der erfindungsgemäßen Anlage mit maximalem Aufbau dar und erläutern die Steuer- und Datensignale. Eine Anlage in ihrem maximalen Aufbau weist 4 Prozessoren P1 bis P 4,10 E/A-Steuereinheiten E/A-A 1 bis E/A-A10, nämlich jeweils 2 Moduleinheiten in jedem der 5 Gehäuse/Cl bis /C 5, sowie 8 SpeichermoduleinheitengehäuseMCl bis MC 8 auf, die 16 Speichermoduleinheiten Ml bis M16 enthalten. Mit der E/A-Sammelleitung busl der E/A-Vermittlung A sind 32 Eingangsgerätekanäle und 32 Ausgangsgerätekanäle verbindbar. Die Schaltverriegelung 150 erstellt Zwischenverbindungen zwischen jedem der 4 Prozessoren P1 bis PA und jedem der 8 die Speichermoduleinhiten enthaltenden Gehäuse MCl bis MC 8. Zusätzlich sieht die Schaltverriegelung 150 Verbindungen vor zwischen den 5 /C-Gehäusen in dem E/A-Vermittlung-A-Abschnitt durch die Sammelleitung busl. Die 5 /C-Gehäuse /Cl bis /C 5 benutzen die Sammelleitung zu jedem der 8 Speichergehäuse MC 1 bis MC 8 gemeinsam. Es ist also eine Sammelleitung für die E/A-Steuereinheiten und je eine Sammelleitung für jeden der 4 Prozessoren Pl bis P 4 vorgesehen. Zwischen den vier Prozessoren P1 bis P 4 und den einzelnen E/A-Steuergehäusen IC 1 bis /C 5 ist Verbindung geschaffen für die zwei Signale, die E/A-Belegt und Kennwortrückführungs-Unterbrechung anzeigen. Jedes der E/A-Steuereinheitengehäuse ist mit den 32 Eingangskanälen und den 32 Ausgangskanälen über 32 Gruppen von Leitungen verbunden. Jede Gruppe weist 12 Leitungen auf. Für die Eingabegeräte führen 10 Leitungen in jedes der einzelnen E/A-Steuereinheitengehäuse IC 1 bis /C 5 und 2 Leitungen von jedem dieser Gehäuse/Cl bis IC 2 zu den einzelnen Eingabekanälen.
Es sind also im Eingang zu den Anschlußgeräten zwischen jedem E/A-Gehäuse und jedem Anschlußgerät 12 Leitungen vorhanden, von denen 10 Eingangsleitungen und 2 Ausgangsleitungen darstellen. Die Eingangsleitungen bestehen aus 7 Datenleitungen, einer Zeichenauswertleitung, einer Einheit-Bereit-Leitung und einer Zustandsleitung. Die Ausgangsleitungen bestehen aus einer Zeichenanruf-Leitung und einer Start-Stop-Leitung. Für die Zwischenverbindung zwischen den Ausgangsgeräten und den E/A-Gehäusen/Cl bis /C 5 sind 12 Leitungen für jedes Ausgabegerät vorgesehen. Die drei Leitungen vom Ausgabegerät zu den E/A-Gehäusen IC 1 bis /C 5 bestehen aus einer Zeichen-Anruf-Leitung, einer Zustands-Leitung und einer Einheit-Bereit-Leitung. Die 9 Ausgangsleitungen bestehen aus 7 Datenleitungen, einer Start-Stop-Leitung und einer Zeichen-Auswertleitung.
Zwischen den E/A-Steuereinheiten E/A -A 1 bis E/A-A 10 und den Prozessoren P1 bis P 4 sind keine Leitungen vorhanden, die von den Prozessoren zu den E/A-Steuereinheiten führen. Es sind jedoch zwei nicht bezeichnete Leitungen von den E/A-Steuereinheiten zu den Prozessoren vorgesehen. Zwischen jedem E/A-Gehäuse/C1 bis /C 5 und jedem Prozessor Pl bis P 4 ist eine Kennwort-Rückführungs-Unterbrechungsleitung und eine Leitung für Gehäuse-Belegt vorgesehen. Der Übermittlungsfluß auf den Kabeln geschieht auf einer »Von der Speichermoduleinheit zur E/A-Gehäuse-Basis«, Ubermittlungsfluß vom E/A-Gehäuse zum Speicher jedoch auf einer »E/A-Gehäuse zur Speichermoduleinheit-Basis«.
Von den E/A-Steuereinheiten-Gehäusen zu den Speichergehäusen führen 18 Leitungen von jedem E/A-Gehäuse zu jedem Speichergehäuse oder 18 Leitungen · 8 Speichergehäuse. Jede der 18 Leitungen von jedem E/A-Gehäuse/C1 bis /C 5 führt zu allen 8 Speichergehäusen MCl bis MC 8. Es sind zwei Speichermoduleinheiten in jedem Speichergehäuse vorgesehen. Die 18 Leitungen von jedem E/A-Gehäuse verzweigen sich am Speichergehäuse zu 36 Leitungen, und zwar 18 zu jeder Speichermoduleinheit.
Die Leitung 101 vom /Cl-Gehäuse führt z. B. in jedes der Speichergehäuse MC 1 bis MC 8. Die 18 Leitungen vom E/A-Gehäuse zum Speicher (Kabel 101 in Fig. 4A und 4B) bestehen aus 4Speichermoduleinheiten-Adressenleitungen, 12 Adressen- oder Dateninformationsleitungen, einer Lese/Schreib-Pegelleitung und einer Anrufleitung. Wie aus den Kabeln, die durch die Pfeilköpfe als Eingangsleitungen zu den Gehäusen IC 1 bis IC 5 bezeichnet sind, ersichtlich ist, führt in der Schaltung vom Speicher zur E/A-Steuereinheit eine Leitung von jedem der 8 Speichergehäuse in jedes der E/A-Steuermoduleinheiten-Gehäuse/Cl bis /C 5. Die Übermittlungsleitungen vom Speicher zu den E/A-Einheiten enthalten 14 Leitungen für jede der 16 Speichermoduleinheiten
J0Ml bis M6, d. h., es gehen 14-16 Leitungen von den Speichern aus, die in die 5 E/A-Gehäuse IC 1 bis IC S abzweigen. Diese 14 Leitungen bestehen aus 12 Datenleitungen, einer Kreuzungspunktleitung und einer Kreuzungspunkt-Kennwortleitung. In der Zeichnung stellt das Kabel 102 14 · 16 Leitungen dar, und jedes der Kabel 103 bis 110 enthält 13 Leitungen, von denen 12 die Informationsleitungen von jeder Speichermoduleinheit her sind und eine Leitung für »Zugriff-Erhalten« vorgesehen ist. Die »Zugriff-Erhalten«-Leitung ist die XP- oder Kreuzungspunktleitung. Die XPD-Leitungen oder Kreuzungspunkt-D-Leitungen enthalten die erste Leitung rechts, die aus jedem Speichergehäuse MC 1 bis MC 8 kommt; es sind dies die Leitungen 1011 bis 1018. Die zweite jeder dieser Leitungen, z. B. 1019 und 1010, sind Leitungen, die eine für jede Speichermoduleinheit Ml bis M16 für jede XPD- oder Kreuzungspunkt-Kennwort-Übertragung für die E/A-Vermitt-
lung 5 enthalten, falls diese benutzt wird. In dem Anlagenaufbau, bei dem ein vierter Prozessor vorgesehen ist, werden diese Leitungen nicht verwendet. Zwischen jedem E/A-Gehäuse IC 1 bis /C 5 und jedem der anderen vier E/A-Gehäuse sind 3 Leitungen eingeschaltet, und zwar eine Leitung für den Priorität Α-Anruf, eine Verbindungsleitung für den Priorität B-Anruf und eine Leitung für Speicherzugriff-Erhalten (RQ). Jedes der E/A-Gehäuse IC 1 bis IC5 sendet auf diesen Leitungen zu jedem der anderen 4 Gehäuse. Jedes der 5 E/A-Gehäuse IC 1 bis /C 5 hat daher 12 Eingänge, und zwar 3 für jedes der anderen 4 E/A-Gehäuse. Von jedem Prozessor Pl bis P 4 zu jeder der Speichermoduleinheiten führen 19 Leitungen, d.h., es sind 19-4 Leitungen vorhanden, wenn 4 Prozessoren verwendet werden, und 19-3 Leitungen, wenn 3 Prozessoren verwendet werden. Diese Leitungen enthalten 4 Speichermoduleinheiten-Adressenleitungen, 12 Adressen- oder Daten-Leitungen, eine Lese-Schreib-Pegelleitung, eine Anruf-Zugriff-Leitung und eine Kennwort-Anruf-Leitung. Die Kennwort-Anruf-Leitung überträgt die Anzeige der TIO-Steuerleitung, die aussagt, daß ein Kennwort zu der E/A übertragen werden soll. Der Grund, warum 19 an Stelle von 18 Leitungen von den Prozessoren her erforderlich sind, liegt darin, daß im Falle einer E/A-Steuereinheit diese nur wünscht, eine bestimmte Adresse zu schreiben oder zu lesen. ImFaIIe eines eine Speichermoduleinheit anrufenden Prozessors muß dieser jedoch ferner anzeigen, ob die Daten in den Prozessor zurückgelesen oder zu der E/A-Sammelleitung als ein Kennwort gesendet werden sollen. Bei der Betrachtung einer typischen Leitung vom Speicher zum Prozessor, der Leitung 103 vom Speicher-1-Gehäuse, ist zu ersehen, daß 13 Leitungen für jede Speichermoduleinheit vorgesehen sind, wobei 13 Leitungen zu allen 5 Sammelleitungen führen, von denen vier die Prozessor-Sammelleitungen und eine die E/A-Vermittlungssammelleitung bilden können. Es ergeben sich daher 13 Leitungen von jeder der Speichermoduleinheiten oder 13-16 Leitungen zu der Sammelleitung eines jeden der Prozessoren. Diese 13 Leitungen von jeder Speichermoduleinheit enthalten 12 Datenleitungen und eine Kreuzungspunktleitung zur Anzeige, daß Zugriff erhalten worden ist.
Jedes Prozessorgehäuse enthält einen Prozessor.
Es ist nur eine Leitung zwischen jedem Prozessorgehäuse und jedem der anderen Prozessorgehäuse vorgesehen. Diese Leitung stellt die Prozessor-Unterbrechungsleitung dar. Auf ihr erscheint ein Steuersignal, das während des Steuerbetriebs verwendet wird und durch das ein Prozessor Pl, P 2, P 3 oder P 4 einen der anderen Prozessoren Pl bis P 4 in Betrieb setzen oder anhalten kann. Mit Hilfe dieser Maßnahme kann irgendeiner der Prozessoren P1 bis P 4, der sich im Steuerbetrieb befindet, irgendeinen der anderen Prozessoren unterbrechen, um diesen ein- oder auszuschalten.
In F i g. 37 A und 37 B ist die automatische Unterbrechungsanlage dargestellt. Es bestehen eine Anzahl von Unterbrechungsbedingungen; zum Zwecke der Beschreibung werden jedoch hier nur die Netzausfalls-Unterbrechung und die Grundtakt-Unterbrechung im einzelnen beschrieben. In der Darstellung der F i g. 37 A und 37 B wurde die übliche Darstellungsart gewählt, bei der die Verknüpfungsglieder, die als üblich gezeichnete Halbkreise mit dünn ausgezogenen Eingangsleitungen dargestellt sind (z. B.
Verknüpfungsglied A 6001), tatsächlich Verknüpfungsglieder sind, während die als Halbkreise dargestellten Schaltungen, die als abhängig von den dick ausgezogenen Leitungen mit Pfeilen dargestellt sind (z.B. SchaltungP6002), den Übertragungsweg darstellen, der tatsächlich durch einige logische Schaltungen führt, die nicht dargestellt sind; dabei stehen diese sogenannten Torschaltungen für tatsächliche Schaltungen im Übertragungsweg. In F i g. 37 A und 37 B stellen die in Mehrzahl vorhandenen Glieder 6002 tatsächlich die Steuerglieder des Prozessor-Unterbrechungsregisters 3002 (s. Fig. 4B) dar, das in Fig. 37A. und 37B in Phantomdarstellung durch umrahmende gestrichelte Linien dargestellt ist, wobei diese Phantom-Registerdarstellung hier als Register 6002 bezeichnet ist. Das Maskenregister 3016, das ebenfalls in Fig. 4B dargestellt ist, enthält eine Anzahl von Flip-Flops, z. B. Flip-Flop FF 6001, Flip-Flop FF 6019 und die anderen nicht bezifferten Flip-Flops. Das Unterbrechungsregister wird durch die Flip-Flops zwischen Flip-Flop FF 6010 A und Flip-Flop 6039 in dem Phantombereich 3002 gebildet. Prioritäts-Steuerglieder sind im Phantombereich 6003 und die selektiven Rückstellglieder im Bereich 6004 in Phantomdarstellung gezeichnet. Die Steuereinheit 3020 (s. auch Fig. 4A und 4B) enthält einen Wiederbeginn-Steuerkreis 6005, der einen Abschnitt der Steuereinheit 3020 darstellt. Die Steuereinheit 3020 enthält ferner einen Leistungsausfall-Steuerkreis 6006, einen Grundtaktzähl-Steuerkreis 6007 und einen Unterbrechungssteuerkreis 6008.
Wie oben bereits bemerkt wurde, zeigen die dikken mit Pfeil versehenen Eingangsleitungen, daß die Halbkreissymbole, in die sie zeigen, tatsächlich einen Übertragungsweg durch die K- und E-Register 3004 und 3005 im Prozessor darstellen (s. Fig. 4A und 4B).
Die Angaben, die oben auf den Fig. 37A und 37B gezeigt sind, stellen die Unterbrechungsbedingungen dar. Es sind dies: Leistungsausfall, Grundtaktzählen, Wiederbeginn, äußerer Anruf 1, äußere Anrufe 2 bis 16, E/A-Beendigung, Unterbrechung Prozessor n, Grundtakt, über die Grenzen schreiben, unzulässiger Befehl, Paritätsfehler, arithmetischer Überlauf, und kein Speicherzugriff. Diese Bedingungen sind tatsächlich bei der beschriebenen Ausführungsform der Erfindung vorhanden; es können jedoch weitere Bedingungen hinzugefügt werden oder andere Bedingungen ersetzen, die ebenfalls Unterbrechungen verursachen, z. B. Prozessor P1, ProzessorP2 oder Prozessor P 3 angehalten.
Es wird angenommen, daß Leistungsausfall aufgetreten ist. Auf Grund des Auftretens der Leistungsausfalls-Bedingungen erscheint ein Unterbrechungssignal und wird in den Inverter / 6001 gegeben. Das Signal wird darin umgekehrt. Das sich ergebende Ausgangssignal vom Inverter / 6001 sperrt die Anerkennung aller anderen Unterbrechungsbedingungen. Zum Beispiel sperrt das Ausgangssignal des Inverters /6001 auf Grund der Leistungsausfalls-
Unterbrechung den Empfang von Signalen durch die Grundtaktzähl-Steuerung, und zwar dadurch, daß der Ausgang des Inverters / 6001 einen Eingang zum UND-Glied A 6010 aufweist, um dieses beim
Vorhandensein eines Leistungsausfalls-Unterbrechungssignals zu sperren. Dieses Signal sperrt wiederum die schaltungsabhängige Kette von Priqritäts-Steuertorschaltungen gegen das Erregen des ODER-Glieds O 6001. Ohne Ausgangssignal vom ODER-Glied O 6001 kann eine Unterbrechungssteuerung in der Unterbrechungs-Steuereinheit 6008 nicht eintreten. Es wird daher auf Grund des Auftretens eines Leistungsausfalls keine andere Unterbrechungsbedingung anerkannt. Leistungsausfall und Wiederbeginn nach Leistungsausfall, der durch Wirksammachen der Wiederbeginn-Steuereinheit 6005 eintritt, sind einander gegenseitig ausschließende Bedingungen, d. h., wenn ein Leistungsausfall auftritt, kann Wiederbeginn nicht eintreten, bis der Leistungsausfall behoben ist. Wenn der Leistungsausfall auftritt, wird die Leistungssteuereinheit 6006 wirksam gemacht. Daher wird eine Folge von Unterbefehlen erzeugt, die bei der Beendigung des Befehls ausgeführt werden müssen, der gerade zum Zeitpunkt des Leistungsausfalls behandelt wurde. Die verwendeten Unterbefehle übertragen den Inhalt einiger wichtiger Flip-Flops in das Leistungsausfalls-Abwerfregister 064 und 065 (s. auch F i g. 4 A) (PDR). Die Eingabe in das Leistungsausfalls-Abwerfregister 064 erfolgt über die Leitung L 064 die Eingabe in das Abwerf register 065 über die Leitung L 065. Außerhalb der Leistungsausfalls-Steuerung 6006 wird das Abwerfen ausgeführt durch die Schaltungswege, die zur Beschreibung als ein Weg durch das UND-Glied P 6064 und ein Weg durch das UND-Glied P 6065 dargestellt sind. Dieser Schaltungsweg enthält den Inhalt des Zustandes von Steuer-Flip-Flops 6009, die die Flip-Flops PSl, PS2 und PS3 der Programmsilben-Flip-Flops PSl, PS 2 und PS 3 enthalten, des Wiederholungs-Flip-Flops RPF und des ersten Wiederholungs-Flip-Flops FRP, der Programm-Voll-Flip-Flops PF1 und PF 2, der Überlauf-, Unterlauf- und Nicht-Normalisiert-Flip-Flops POV, PUN und PNN, den Inhalt der SA 1- und SA 2-Flip-Flops und den Inhalt des Unterbrechungs-, Leistungsausfalls-Einleitungs- und des Stapelumkehr-Flip-Flops INP, IPF und RSF; diese Inhalte werden in das Leistungsausfalls-AbwerfregisterO64 abgeworfen (s. Fig. 4A und 4B).
Die nächste Serie von Unterbefehlen, die infolge ihres Wirksammachens durch den Leistungsausfall von der Leistungsausfalls-Steuereinheit 6006 abgegeben werden, überträgt den Zustand des Unterbrechungsregisters 3002 in das Leistungsausfalls-Abwerfregister 065. Dies wird durch den Schaltungsweg des UND-Glieds P 6065 bewirkt, der vom Unterbrechungsregister 3002 kommt, und zwar mit Hilfe einer Parallelübertragung, die durch die dicke mit Pfeil versehene Linie in den Schaltungsweg des UND-Glieds P 6065 dargestellt ist. Schließlich veranlaßt der Leistungsausfall den Prozessor anzuhalten durch ein Ausgangssignal von der Leistungsausfalls-Steuereinheit 6006, das in Fig. 37A durch den Halte-Ausgang der Leistungsausfalls-Steuereinheit 6006 angedeutet ist. Der Haltebefehl, der als Ergebnis der Leistungsausfalls-Steuerung auftritt, veranlaßt die Steuereinheit 3020, in den Haltezustand überzugehen (nicht dargestellt); dadurch wird der Prozessor abgeschaltet.
Nachdem die Störung, die den Leistungsausfall verursacht hatte, beseitigt worden ist, kann ein Wiederbeginn bewirkt werden, wenn der automatische Leistungsbeginnschalter (nicht dargestellt) eingeschaltet ist. Wenn die Leistung (Versorgung) wieder hergestellt wird, geht die Wiederbeginn-Steuerschaltung 6005 in den Wiederbeginnzustand über. Der Wiederbeginn-Steuerzustand der Wiederbeginn-Steuerschaltung 6005 verursacht einen Informationsfluß durch den Schaltungsweg des UND-Glieds P 6001, und zwar dadurch, daß der Inhalt der Leistungsausfalls-Abwerfregister 064 und 065 über diesen Schaltungsweg ausgeleert wird. Dadurch werden die obenerwähnten Steuer-Flip-Flops PSl, PS2, PS3, RPF, FRP, PFl, PFl, POV, PUN, PNN, SA 1, SA 2, INP, IPF und RSF in denjenigen zugehörigen Zustand rückgestellt, der zur Zeit des Leistungsausfalls wirksam war. Der nächste Schritt in der Wiederbeginnsteuerung veranlaßt die Übertragung des Inhalts der Leistungsausfalls-Abwerfregister 064 und 065 über den Schaltungsweg des UND-Glieds P602, so daß das Unterbrechungsregister 3002 in den Zustand zurückgeführt wird, in dem es sich befand, bevor Leistungsausfall auftrat, als es seine Information in das Leistungsausfalls-Abwerfregister 065 ausgab. Die Beginn-Steuerung 6005 £ schaltet dann den Wiederbeginn-Flip-Flop FF 6910 A *■ im Unterbrechungsregister 3002 ein.
Die Einstellung des Flip-Flops FF 6010 A im Unterbrechungsregister 3002 auf den Einszustand veranlaßt ihn, das UND-Glied A 6020 in Abwesenheit eines Leistungsausfallssignals zu aktivieren und das UND-Glied A 6041 zu sperren, so daß letzteres die Anerkennung einer Bedingung mit niedrigerer Priorität in den Prioritäts-Steuergliedern 6003 verhindert. Die Wiederbeginnsteuerung 6005 geht dann auf die Unterbrechungssteuerung 6008 über, und zwar dadurch, daß sie die Unterbrechungssteuerung auf den Zustand zurückführt, den sie zu Befehlsbeginn hatte, und daß sie gestattet, daß das Unterbrechungsbit im gerade gesetzten Flip-Flop FF6010/ί durch die Unterbrechungs-Steuereinheit 6008 anerkannt wird.
Dies ist durch den Pfeil in die Unterbrechungs-Steuereinheit 6040 dargestellt.
Bei der Einleitung des Wiederbeginns und für jede der anderen Unterbrechungsbedingungen mit niedrigerer Priorität veranlaßt die Unterbrechungs-Steuereinheit 6008 eine Serie von Vorgängen, die Funktionen der Unterbrechungs-Steueranlage sind. Es sind dies:
1. Zunächst veranlaßt die Unterbrechungs-Steuerung 6008 eine Übertragung der Steuer-FIip-
Flops 6009 über den Schaltungsweg des UND-Glieds P 6004 in das Unterbrechungs-Abwerf-Register/DT?070 (s. auch Fig. 4A).
2. Als zweites wird der Inhalt der in Benutzung befindlichen Programmspeicherregister 100 bis
103 oder 104 bis 107 über den Schaltungsweg
. des UND-Glieds P 6005 in das Unterbrechungs-Programmregister 110 bis 113 übertragen.
Wenn das verbleibende Programmsilbenregister (PSR), nämlich ein anderes als dasjenige, das in das Unterbrechungsprogrammregister 110 bis 113 (IPR) abgeworfen ist, d. h., das andere der Register PSR 100 bis 103 oder 104 bis 107, auch gefüllt ist, muß der Befehl im anderen
S5 PSi?-Register vom Speicher her erhalten werden, wenn das Programm auf die Stelle zurückgeführt wird, an der die Unterbrechung auftrat.
3. Der dritte Schritt in der Unterbrechungssteue-
rung besteht darin, daß der Inhalt des Basisadressenregisters 055 über den Schaltungsweg des UND-Glieds P 6006 veranlaßt wird, die Übertragung des Inhaltes des Basisadressenregisters 055 in die Unterbrechungsspeicherregister 040 bis 042 zu bewirken.
4. Der vierte Schritt besteht darin, daß der Inhalt des Basisprogrammregisters 054 über dem Schaltungsweg des UND-Glieds P 6008 in die LJnterbrechungsspeicherregister 040 bis 042 übertragen wird. Dadurch werden zwei Gruppen von 16 Bits in das Unterbrechungsspeicherregister 040 bis 042 eingegeben, welches insgesamt 48 Bits hat. Wenn das zweite Programmsilbenregister 100 bis 103 oder 104 bis 107 gefüllt ist, wird das Programmzählregister 057 durch den Unterbrechungs-Steuerkreis 6008 heruntergezählt; sein Inhalt wird über den Schaltungsweg des UND-Glieds P 6006 in das dritte Register der Unterbrechungsspeicherregister 040 bis 042 übertragen. Wenn die Programmspeicherregister 100 bis 103 und 104 bis 107 nicht gefüllt sind, dann wird der Inhalt des Programmzählregisters 057 unmittelbar ohne Herunterzählen in die Unterbrechungsspeicherregister 040 bis 042 übertragen.
Es werden nur 48 Bits des Programmspeicherregisters bewahrt; wenn weitere 48 Bits im zweiten Speicherregister geladen sind, müssen diese durch Zurückführung vom Kernspeicher wieder eingegeben werden, wenn das Steuerprogramm zum unterbrochenen Programm zurückkehrt.
5. Im fünften Schritt, der durch die Unterbrechungs-Steuereinheit 6008 veranlaßt wird, wird das Unterbrechungs-Adressenregister 063 veranlaßt, seinen Inhalt über den Schaltungsweg des UND-Glieds P6007 in das Basisadressenregister 055 auszugeben.
6. Als sechster Schritt veranlaßt die Unterbrechungssteuereinheit 6008 das Unterbrechungs-Adressenregister 063, denselben Inhalt über den Schaltungsweg des UND-Glieds P 6009 in das Basisprogrammregister 054 zu senden.
Es werden jetzt die umrahmten Leitungen Add I bis Add IO betrachtet. Diese Leitungen dienen dazu, die Erläuterung der nächsten auftretenden Bedingung zu ermöglichen. Jede der Bedingungen außer Leistungsausfall und Grundtaktzählen sind mit diesen Nummern Add I bis AddIO bezeichnet.
7. Die siebente Bedingung, die durch die Unterbrechungssteuerung 6008 auftritt, besteht darin, daß die Unterbrechungssteuerung 6008 veranlaßt, daß der Inhalt des Unterbrechungsadressenregisters 063 zu der Add-Nummer addiert wird, die durch die Bedingung bestimmt ist, die im Addierer 3032 anerkannt wird. Die addierte Nummer wird über den Schaltungsweg des UND-Glieds P 6010 in das Programm- Zählregister 057 übertragen. Diese Steuerung wird wirksam gemacht durch die Unterbrechungssteuerung 6008 über die Schaltungswege der UND-GliederP6011 und P6012. Die Ad- dier-UnterbrechungsnummerAddl bis AddlO wird durch die jeweils auftretende Bedingung getriggert, wie in dem Addier-Unterbrechungsnummernblock 6031 dargestellt ist. In dem Verfahren des Addierens der Unterbrechungsnummer wird das gerade bediente Unterbrechungsbit, in diesem Fall der Flip-Flop FF 6010 A, auf den Nullzustand rückgestellt. Die Unterbrechungssteuerung 6008 zweigt dann auf die Unterbrechungsadresse ab unter Rückkehr auf den Anfang des Befehlszustandes des Unterprogramms, d.h., sie kehrt auf die Phase 1, Zeit T1 zurück. Die Abzweigung auf die Unterbrechungsadresse bedeutet daher Rückkehr auf Phase 1, Zeit T0. Dies wird durch die Abzweigung -Auf - Unterbrechungsadressen-Einrichtung 6041 bewirkt.
Es wird jetzt die Unterbrechungsbedingung Grundtaktzählen der Fig. 37A und 37B betrachtet. Zusätzlich zu den 3 MHz-Haupt- und Nebentaktgebern in den Prozessor-, Speicher- und E/A-Steuereinheiten ist ein zusätzlicher Taktgeber in jedem Prozessor vorgesehen, der als Grundtaktgeber bezeichnet wird. Dieser Taktgeber soll eine Genauigkeit von 1 in 1 000 000 aufweisen, wie das für manche Echtzeitberechnungen (Flugbahnen) wichtig ist. Die Steuereinheit 3020 (Fig. 4B) ist so aufgebaut, daß sie auf Phase 1, Zeit T1 ihres Betriebs in einer Periode zurückkehrt, die wesentlich geringer ist, als die 10 Millisekunden, die zwischen den Zählschritten des Grundtaktgebers auftreten. Jedesmal, wenn ein Zählschritt des Grundtaktgebers auftritt, sendet dieser ein Signal, das durch die Steuereinheit 3020 beim Beginn aufeinanderfolgender Befehle erkannt wird. Dieses Signal setzt die Grundtakt-Zählsteuerung 6007 in Betrieb. Das Einschalten der Grundtaktzählsteuerung veranlaßt die Addition einer Eins zum Inhalt der Grundtaktregister 114 und 115 im Dünnfilmspeicher. Dies wird durch Addition der Eins in dem Addierer 3032 zu dem Inhalt des Grundtaktregisters durchgeführt. Danach kehrt die Grundtakt-Zählsteuerung zurück zum nächsten Befehl durch Einstellung der Steuereinheit 3020 auf den Zustand Phase PH1, Zeit T1. Dies ist angedeutet durch den Rückkehr-Auf-Nächsten-Befehl-Block 6042.
In Fig. 38 ist ein vereinfachtes BIock-Flußdiagramm der automatischen Unterbrechungsanlage dargestellt. Danach wird das Signal, wenn Unterbrechungsbedingungen auftreten, und bei Erlaubnis durch das Maskenregister 3016, durch die Verknüpfungsglieder 6002 und das Unterbrechungsregister 3002 zur Prioritätswählmatrix 6003 geleitet. In der Ordnung der durch die Matrix 6003 aufgestellten Prioritäten wird dann veranlaßt, daß das Signal entsprechend den Schritten im Speicher bedient wird, die durch die dargestellten Adressenbestimmungsmittel bestimmt sind.
Hierzu 41 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Datenverarbeitungsanlage, bei der mehrere im wesentlichen gleiche Prozessoren und mehrere Ein/Ausgabe-Steuereinheiten mit mehreren Speichereinheiten verbunden sind und eine Schaltverriegelung vorgesehen ist, welche Anforderungen nach den Speichereinheiten konfliktfrei gewährt, wobei jeder Prozessor über eine eigene Sammel-Ubertragungsleitung und alle Ein/Ausgabe-Steuereinheiten über mindestens eine weitere Sammel-Übertragungsleitung mit allen Speichereinheiten verbunden sind, dadurch gekennzeichnet, daß in jeder Speichereinheit (Ml... M 16) die mit sämtlichen Sammel-Übertragungsleitungen (busl... bus5) verbundene Schaltverriegelung (150, 10108) mit einer Prioritätssteuerstufe (10109) vorgesehen ist, welche Anforderungssignale nach einer vorgegebenen Prioritätsordnung verarbeitet; und daß die Sammel-Übertragungsleitungen von den Prozessoren (Pl... P 4) und den Ein/Ausgabe-Steuereinheiten durch die Speichereinheiten als Koaxialleitungen durchgeschleift sind.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß mindestens eine Sammel-Ubertragungsleitung (bus 2) zum wahlweisen Anschluß eines Prozessors (P 4) oder mindestens einer weiteren Ein/Ausgabe-Steuereinheit (F i g. 1 unten) ausgebildet ist.
3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß mindestens eine der Schaltverriegelungen (10106 bis 10110, Fig. 16 bis 18) auch zur Steuerung des Parallelbetriebs auf der gemeinsam benutzten Sammelübertragungsleitung (bus 2) ausgebildet ist.
4. Datenverarbeitungsanlage nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß jeweils zwei Ein/Ausgabe-Steuereinheiten zu einer Baueinheit zusammengefaßt sind und daß diese Baueinheiten Schaltelemente (F i g. 16, 01077) aufweisen, welche einen gleichzeitigen Zugriff dieser beiden Ein/Ausgabe-Steuereinheiten zu einer gemeinsamen benutzten Sammelübertragungsleitung (busl) verriegeln.
5. Datenverarbeitungsanlage nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Schaltverriegelungen jeweils einen Speicheradressenwähler (10108) aufweist, welcher anzeigt, welcher Sammelübertragungsleitungs-Ausgang an den Eingang der einstellbaren Prioritätssteuerstufe (10109; Fig. 17) gelegt ist.
DE1449532A 1962-11-30 1963-11-30 Datenverarbeitungsanlage Granted DE1449532B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US246855A US3419849A (en) 1962-11-30 1962-11-30 Modular computer system

Publications (3)

Publication Number Publication Date
DE1449532A1 DE1449532A1 (de) 1971-06-16
DE1449532B2 DE1449532B2 (de) 1974-01-10
DE1449532C3 true DE1449532C3 (de) 1978-12-07

Family

ID=22932523

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1449532A Granted DE1449532B2 (de) 1962-11-30 1963-11-30 Datenverarbeitungsanlage

Country Status (3)

Country Link
US (1) US3419849A (de)
DE (1) DE1449532B2 (de)
GB (1) GB1063143A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3506118A1 (de) 1985-02-22 1986-08-28 Robert Bosch Gmbh, 7000 Stuttgart Verfahren zum betreiben einer datenverarbeitungsanlage fuer kraftfahrzeuge

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3991406A (en) * 1963-12-31 1976-11-09 Bell Telephone Laboratories, Incorporated Program controlled data processing system
US3593302A (en) * 1967-03-31 1971-07-13 Nippon Electric Co Periphery-control-units switching device
US3593300A (en) * 1967-11-13 1971-07-13 Ibm Arrangement for automatically selecting units for task executions in data processing systems
US3581286A (en) * 1969-01-13 1971-05-25 Ibm Module switching apparatus with status sensing and dynamic sharing of modules
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
UST843614I4 (de) * 1969-07-22
BE755034A (fr) * 1969-08-19 1971-02-19 Siemens Ag Installation de traitement d'informations a commande centrale programmepar memoire
US3668650A (en) * 1970-07-23 1972-06-06 Contrologic Inc Single package basic processor unit with synchronous and asynchronous timing control
NL7106491A (de) * 1971-05-12 1972-11-14
US3737870A (en) * 1972-04-24 1973-06-05 Ibm Status switching arrangement
US4028675A (en) * 1973-05-14 1977-06-07 Hewlett-Packard Company Method and apparatus for refreshing semiconductor memories in multi-port and multi-module memory system
US4013875A (en) * 1974-01-11 1977-03-22 Mcglynn Daniel R Vehicle operation control system
US3964056A (en) * 1974-04-08 1976-06-15 International Standard Electric Corporation System for transferring data between central units and controlled units
US4006466A (en) * 1975-03-26 1977-02-01 Honeywell Information Systems, Inc. Programmable interface apparatus and method
CH584488A5 (de) * 1975-05-05 1977-01-31 Ibm
US4071887A (en) * 1975-10-30 1978-01-31 Motorola, Inc. Synchronous serial data adaptor
US4096567A (en) * 1976-08-13 1978-06-20 Millard William H Information storage facility with multiple level processors
JPS53124943A (en) * 1977-04-08 1978-10-31 Agency Of Ind Science & Technol Composite information processor
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4402046A (en) * 1978-12-21 1983-08-30 Intel Corporation Interprocessor communication system
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4342083A (en) * 1980-02-05 1982-07-27 The Bendix Corporation Communication system for a multiple-computer system
WO1983001135A1 (en) * 1981-09-18 1983-03-31 Rovsing As Christian Multiprocessor computer system
US4466061A (en) * 1982-06-08 1984-08-14 Burroughs Corporation Concurrent processing elements for using dependency free code
US4468736A (en) * 1982-06-08 1984-08-28 Burroughs Corporation Mechanism for creating dependency free code for multiple processing elements
US4710868A (en) * 1984-06-29 1987-12-01 International Business Machines Corporation Interconnect scheme for shared memory local networks
US4850027A (en) * 1985-07-26 1989-07-18 International Business Machines Corporation Configurable parallel pipeline image processing system
US4885739A (en) * 1987-11-13 1989-12-05 Dsc Communications Corporation Interprocessor switching network
JP4928862B2 (ja) * 2006-08-04 2012-05-09 株式会社日立ハイテクノロジーズ 欠陥検査方法及びその装置
US8627932B2 (en) 2009-01-07 2014-01-14 Fox Factory, Inc. Bypass for a suspension damper
US10047817B2 (en) 2009-01-07 2018-08-14 Fox Factory, Inc. Method and apparatus for an adjustable damper
US8857580B2 (en) 2009-01-07 2014-10-14 Fox Factory, Inc. Remotely operated bypass for a suspension damper
US20100170760A1 (en) 2009-01-07 2010-07-08 John Marking Remotely Operated Bypass for a Suspension Damper
US9033122B2 (en) 2009-01-07 2015-05-19 Fox Factory, Inc. Method and apparatus for an adjustable damper
US9452654B2 (en) 2009-01-07 2016-09-27 Fox Factory, Inc. Method and apparatus for an adjustable damper
US10060499B2 (en) 2009-01-07 2018-08-28 Fox Factory, Inc. Method and apparatus for an adjustable damper
US11306798B2 (en) 2008-05-09 2022-04-19 Fox Factory, Inc. Position sensitive suspension damping with an active valve
US8393446B2 (en) 2008-08-25 2013-03-12 David M Haugen Methods and apparatus for suspension lock out and signal generation
US9422018B2 (en) 2008-11-25 2016-08-23 Fox Factory, Inc. Seat post
US9140325B2 (en) 2009-03-19 2015-09-22 Fox Factory, Inc. Methods and apparatus for selective spring pre-load adjustment
US10036443B2 (en) 2009-03-19 2018-07-31 Fox Factory, Inc. Methods and apparatus for suspension adjustment
US10821795B2 (en) 2009-01-07 2020-11-03 Fox Factory, Inc. Method and apparatus for an adjustable damper
US9038791B2 (en) 2009-01-07 2015-05-26 Fox Factory, Inc. Compression isolator for a suspension damper
US11299233B2 (en) 2009-01-07 2022-04-12 Fox Factory, Inc. Method and apparatus for an adjustable damper
US8838335B2 (en) 2011-09-12 2014-09-16 Fox Factory, Inc. Methods and apparatus for suspension set up
US8936139B2 (en) 2009-03-19 2015-01-20 Fox Factory, Inc. Methods and apparatus for suspension adjustment
EP2312180B1 (de) 2009-10-13 2019-09-18 Fox Factory, Inc. Vorrichtung zur Steuerung eines hydraulischen Dämpfers
US8672106B2 (en) 2009-10-13 2014-03-18 Fox Factory, Inc. Self-regulating suspension
US10697514B2 (en) 2010-01-20 2020-06-30 Fox Factory, Inc. Remotely operated bypass for a suspension damper
EP2402239B1 (de) 2010-07-02 2020-09-02 Fox Factory, Inc. Einstellbare Sattelstütze
EP2530355B1 (de) 2011-05-31 2019-09-04 Fox Factory, Inc. Vorrichtungen für lageempfindliche und/oder anpassbare Aufhängungsdämpfung
US11279199B2 (en) 2012-01-25 2022-03-22 Fox Factory, Inc. Suspension damper with by-pass valves
US10330171B2 (en) 2012-05-10 2019-06-25 Fox Factory, Inc. Method and apparatus for an adjustable damper
US9844167B2 (en) * 2015-06-26 2017-12-12 Microsoft Technology Licensing, Llc Underwater container cooling via external heat exchanger
US9801313B2 (en) 2015-06-26 2017-10-24 Microsoft Technology Licensing, Llc Underwater container cooling via integrated heat exchanger
US10737546B2 (en) 2016-04-08 2020-08-11 Fox Factory, Inc. Electronic compression and rebound control
CN110058631B (zh) * 2018-01-18 2022-07-29 恩智浦美国有限公司 具有前馈电路的电压调节器
US11048440B2 (en) * 2019-03-14 2021-06-29 SK Hynix Inc. Memory system, memory device and operating method thereof
JP7409852B2 (ja) * 2019-12-10 2024-01-09 ファナック株式会社 ロボット制御装置
US11341012B2 (en) * 2020-05-14 2022-05-24 EMC IP Holding Company LLC Test platform employing test-independent fault insertion
CN113780822B (zh) * 2021-09-14 2023-10-31 上海师范大学 一种基于psr模型的城市生态安全预警方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3056110A (en) * 1956-07-13 1962-09-25 Research Corp Digital data transmission system
US3061192A (en) * 1958-08-18 1962-10-30 Sylvania Electric Prod Data processing system
US3108257A (en) * 1958-12-30 1963-10-22 Ibm Locking and unlocking of memory devices
US3200380A (en) * 1961-02-16 1965-08-10 Burroughs Corp Data processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3506118A1 (de) 1985-02-22 1986-08-28 Robert Bosch Gmbh, 7000 Stuttgart Verfahren zum betreiben einer datenverarbeitungsanlage fuer kraftfahrzeuge

Also Published As

Publication number Publication date
DE1449532A1 (de) 1971-06-16
GB1063143A (en) 1967-03-30
US3419849A (en) 1968-12-31
DE1449532B2 (de) 1974-01-10

Similar Documents

Publication Publication Date Title
DE1449532C3 (de)
DE2457553C2 (de) Asynchrone Taktgebereinrichtung
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
DE2913288C2 (de) Multiprozessoranlage mit einer Vielzahl von Prozessorbausteinen
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE3041600C2 (de) Verfahren und Schaltungsanordnung zum Übertragen von Datensignalen zwischen an Datenvermittlungseinrichtungen einer Datenvermittlungsanlage angeschlossenen Datensignalsendern und Datensignalempfängern
DE2635592A1 (de) Multiprozessor-abrufsystem
DE1449530B1 (de) Datenverarbeitungsanlage
DE2212501C2 (de) Einrichtung zur Übertragung asynchroner, digitaler Signale
DE2714268A1 (de) Schaltungsanordnung zur steuerung von werkzeugmaschinen
DE2358545A1 (de) Datenverarbeitungssystem mit dynamisch veraenderlichem vorrangzugriffssystem
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE2556624C2 (de) Verfahren und Schaltungsanordnung zur asynchronen Datenübertragung
DE3137627C1 (de) Anordnung zur schnellen Nachrichtenuebertragung zwischen Rechnern
DE2452214A1 (de) Mikroprozessor mit unmittelbarer und indirekter adressierung
DE2406740A1 (de) System zur regelung von verfahrensausruestungen
DE2542010A1 (de) Datenverarbeitende anlage
DE3232600A1 (de) Zeitmultiplexschaltmatrix
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE1474095B1 (de) Programmgesteuerte Datenverarbeitungsanlage
DE2063195C2 (de) Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern
DE3041556C2 (de) Verfahren und Schaltungsanordnung zur Vermittlung von Daten zwischen Datenendgeräten
DE1954202B2 (de) Elektronische digitale Datenverarbeitungsanordnung
DE1424747B2 (de) Erweiterbare digitale datenverarbeitungsanlage
DE1237812B (de) Datenverarbeitungsgeraet mit mehreren Speichern

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)