DE2651004A1 - Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur - Google Patents
Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstrukturInfo
- Publication number
- DE2651004A1 DE2651004A1 DE19762651004 DE2651004A DE2651004A1 DE 2651004 A1 DE2651004 A1 DE 2651004A1 DE 19762651004 DE19762651004 DE 19762651004 DE 2651004 A DE2651004 A DE 2651004A DE 2651004 A1 DE2651004 A1 DE 2651004A1
- Authority
- DE
- Germany
- Prior art keywords
- processor
- processing system
- data processing
- memory
- processors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Description
SIEMENS AKTIENGESELLSCHAFT 3 Unser ZeicmM^ · 004
Berlin und München VPA 7§P 2 1 8 S BRD .
Datenverarbeitungsanlage mit einer symmetrischen Multiprozessorstruktur
] _____
Die Erfindung bezieht sich auf eine Datenverarbeitungsanlage mit einer symmetrischen Multiprozessorstruktur, bei der im Multiprogrammbetrieb
die gerade zu verarbeitenden Prozesse, beliebig verteilt, von einer Vielzahl gleichartiger, über ein Busleitungssystem
angesteuerter Mikroprozessoren parallel verarbeitet werden, diesen dazu jeweils Teile des modular aufgebauten Arbeitsspeichersystems
der Datenverarbeitungsanlage zugeordnet sind, in denen zum Prozeßablauf
der aktuelle Speicherbereich des Prozesses aus einem gemeinsamen sekundären Speicher großer Kapazität bereitgestellt viird.
Herkömmliche Datenverarbeitungsanlagen mit einem Uniprozessor bestehen
im Prinzip aus einer Zentraleinheit und peripheren Geräten,
wie Sekundärspeichern und Ein-ZAusgabe-Geräten. Zur Zentraleinheit
gehören ein Arbeitsspeicher für System- und aktuelle Programmdaten und verarbeitende Einrichtungen, wie z.B. ein Zentralprozessor. Er
kann - bei älteren Datenverarbeitungsanlagen - alle Steuer- und Rechenaufgaben selbst ausführen oder auch verschiedene Aufgaben, wie
z.B. Ein-/Ausgabeprozeduren, spezialisierten Prozessoren übertragen.
Typisch für ein solches datenverarbeitendes System ist ein einziger
Prozessor für die eigentliche Programmverarbeitung, der im Falle des heute üblichen Multiprogramm-Betriebes die laufenden Prozesse
quasisimultan, d.h* im Zeitmultiplex verarbeitet. Diese werden dazu
künstlich in kleine Teilstücke aufgeteilt und nach Prioritäten geordnet. Bis auf die zu koordinierenden Speicherzugriffe können,
davon mehr oder, minder unabhängig, in spezialisierten Prozessoren
"bestimmte, auch anderen Prozessoren zugeordnete Routinen ablaufen.
Go -13 Pra / 2.11.1976 δ0^8 1 9 /04 S 0
ORIGINAL IMSPECTED
• M JBP 2 t 89 BRO
Auf den ersten Blick scheint eine derartige Systemstruktur auch der technologischen Entwicklung am besten Rechnung zu tragen, die
dazu geführt hat, daß die zunächst relativ teuren Prozessoren in einem höheren Maße schneller und lexstungsfähiger geworden sind
als die peripheren Geräte und der Arbeitsspeicher. Denn ein schneller, leistungsfähiger Zentralprozessor erscheint nur in einem Datenverarbeitungssystem mit einer Mehrzahl von peripheren Geräten
in Verbindung mit einem ausgeklügelten Betriebssystem im Multiprogrammbetrieb
genügend ausgelastet. Abgesehen von dem Grad der Verfügbarkeit, der entscheidend durch die Fehlersicherheit des Zentralprozessors
mitbestimmt ist, hat aber eine derartige Systemstruktur dort ihre Grenzen, wo der Zentralprozessor mehr und mehr
durch das Betriebssystem selbst beschäftigt wird, um die Simultanarbeit zu organisieren und zu koordinieren. So sind wegen des MuI-tiprogramm-Betriebes
heute mehrstufige Arbeitsspeichersystem großer Kapazität bereits bei datenverarbeitenden Anlagen mittlerer
Leistung üblich, um im Durchschnitt genügend schnelle Speicherzugriffe sicherzustellen. Hier erfordert die Speicherplatzverwaltung,
insbesondere bei virtuellen Adressierungsmechanismen mit zusätzlieher
Adreßübersetzung, einen beträchtlichen Aufwand im Betriebssystem.
Die technologische Entwicklung in Bezug auf kostengünstige Schaltkreis-
und Speichertechniken hat daneben aber auch zu anderen Systemstrukturen,
den Multiprozessorsystemen, geführt. Obwohl es dafür bereits früher Vorschläge gab, hat dazu entscheidend die Tatsache
beigetragen, daß seit einiger Zeit kostengünstige, wenn auch verhältnismäßig einfach aufgebaute Mikroprozessoren verfügbar sind,
die sogar bereits mikroprogrammierbar entworfen werden.
Einen Überblick über Multiprozessorsysteme dieser Art vermittelt z.B. der Aufsatz "Performance and Control of Multiple Microprocessor
Systems" in Computer Design, März 1974, S. 81 ff. Danach bestimmen die Eigenschaften der Mikroprozessoren, bedingt durch ihren
technischen Aufbau und die dabei verwendete Technologie, die Systemleistung eher als der Speicher. Deshalb sollen sich zweckmäßig
mehrere Mikroprozessoren in einen Speicher teilen. Die generelle
809819/0450
ORIGINAL INSPECTED
mm™
Struktur eines derartigen Multiprozessor-Systems sieht daher vielfach
eine Systembusleitung vor, an die parallel" alle Mikroprozessoren einerseits, der Arbeits- und ein Sekundärspeicher sowie ein
Ein-/Ausgabe-System andererseits angeschlossen sind. Eine andere Möglichkeit besteht darin, diese Systemeinheiten über ein Schaltnetzwerk
zu verbinden, das im Gegensatz zu der rein sequentiellen Betriebsweise eines Multiprozessorsystems mit Unibusstruktur gleichzeitige
Zugriffe zu verschiedenen Speichermoduln ermöglicht, so daß Speicherzyklen der Prozessoren einander weniger stören. Diese im
Bezug auf die Systemleistung leistungsfähigere Struktur ist jedoch
technisch wesentlich aufwendiger, da das Schaltnetzwerk eine Vielzahl von Datenwegen mit einer ausreichenden Datenbreite miteinander
verbinden muß.
Dabei kann es sich sowohl um ein symmetrisches System, bei dem alle
Prozessoren in Bezug auf die Verarbeitungsaufgaben gleich zu behandeln sind, als auch um ein asymmetrisches System handeln, bei dem
Jeder Prozessor auf eine bestimmte Teilaufgabe spezialisiert ist. Das letztere System kann in Datenverarbeitungsanlagen für Spezialaufgaben
durchaus zweckmäßig sein, wenn häufig wiederkehrende, sich ähnelnde Teilaufgaben durch angepaßte, also leistungsfähige und
doch verhältnismäßig einfache Prozessoren ausgeführt werden. Diese Spezialisierung ist jedoch für kommerzielle Datenverarbeitungsanlagen
weniger geeignet, weil hier dann verschiedene Prozesse ständig zwischen mehreren Prozessoren neu verteilt werden müssen, so
daß der damit verbundene Datenaustausch im Verhältnis zu der eigentlichen Verarbeitungsleistung sehr hoch wird, die durch unterschiedliche
Auslastung der einzelnen Prozessoren weiter sinkt. Daneben ist die Struktur störanfällig, weil ein einzelner gestörter Prozessor
bereits das Gesamtsystem zum Ausfallen bringen kann, sofern hier keine Redundanz vorgesehen ist.·
Diese Redundanz ist symmetrischen Systemen immanent, weil jeder .Prozessor jede Aufgabe übernehmen kann. Hier ist jedoch das Betriebssystem
aufwendiger, das u.a. die laufenden Prozesse auf die einzelnen Prozessoren verteilt. Eine wesentliche Rolle spielt dabei
die Zuordnung des Speicherplatzes auch eines modularen Arbeitsspei-
809819/0450
-*-.(© 76P 2 1 8 9 BRD
chers zu den aktuellen, d.h. in den Prozessoren gerade zu verarbeitenden Prozessen. Bei datenverarbeitenden Anlagen mit virtueller
Adressierung kommen dazu weitere Betriebssystemleistungen für Adreßübersetzung. So ist ohne weiteres einzusehen, daß über die
internen Daten- und Steuerleitungen einer datenverarbeitenden Anlage dieser Art eine Vielzahl von Vorgängen abläuft, die eine aufwendige
Prioritätssteuerung benötigen, damit sich, das System nicht
selbst blockieren kann.
Aufgabe der Erfindung ist es daher, eine datenverarbeitende Anlage
der eingangs genannten Art zu schaffen, die aus Gründen der Verfügbarkeit als symmetrisches System aufgebaut ist und die die heutigen
technologischen Möglichkeiten voll nutzt, d.h. also als Prozessoren durch Mikroprogramme steuerbare Mikroprozessoren verwendet. Siesoll
damit billiger zu erstellen sein und bei größerer Flexibilität im Ausbau eine homogene Struktur aufweisen, die es erlaubt, bei einem
System mit einer großen gemeinsamen Datenbasis die Probleme der Systemverwaltung, d.h. Aufgaben des Betriebssystems, einfacher als
bisher und bei einer größeren Systemleistung zu lösen.
Bei einer Datenverarbeitungsanlage der eingangs genannten Art wird
diese Aufgabe erfindungsgemäß dadurch gelöst, daß jeder einzelne der identisch aufgebauten Arbeitsprozessoren der datenverarbeitenden
Anlage unmittelbar mit einem Speichermodul des Arbeitsspeichers zu einer Systemeinheit räumlich vereinigt ist, daß mindestens
eine solche Systemeinheit mit einem als Stammprozessor bezeichneten Arbeitsprozessor an den Sekundärspeicher angeschlossen ist, die
dessen Datenverkehr steuert, daß diese über Busleitungen an Systemeinheiten mit je einem als Zweigprozessor bezeichneten Arbeitsprozessor
angeschlossen sind, mit denen wiederum über mindestens eine weitere Busleitung jeweils Gruppen von Systemeinheiten mit je einem
als Basisprozessor bezeichneten Arbeitsprozessor, die als verarbeitende
Systemeinheiten Aufgäben der Programmverarbeitung wahrnehmen und darüber hinaus auch Ein-/Ausgabegeräte angeschlossen sind.
Diese Lösung sieht also ein hierarchisch gegliedertes, modular aufgebautes
Multiprozessorsysteni vor. In der untersten Ebene läuft die
809819/0450
& ^ f0 ρ 2 1 8 9 BRD
eigentliche Prozeßbearbeitung rein lokal ab, im Gegensatz zu Uniprozessorsystemen
mit einem mehrstufigen Arbeitsspeichersystem, bei denen ständig Prozeßdaten zwischen den einzelnen Speicherhierarchien
hin- und hertransferiert werden müssen. Die erfindungsgemäße Lösung ersetzt darüber hinaus die bisher übliche Pseudosimultanarbeit
bei Uniprozessorsystemen durch echte Parallelarbeit in den verschiedenen Basisprozessoren.
Mikroprozessoren sind wohl einfach aufgebaut und verhältnismäßig langsam, jedoch kostengünstig. Wegen der Parallelarbeit wird deshalb
ein echter Multiprogrammbetrieb in den Basisprozessoren nur in einem ganz geringen Umfang angestrebt und damit das Betriebssystem
für eine solche datenverarbeitende Anlage einfacher als z.B. herkömmliche Teilnehmerbetriebssysteme.
Die hierarchische Struktur erlaubt, die Betriebssystem-Routinen in
vorteilhafter Weise auf die einzelnen Ebenen zu verteilen. Die Basisprozessoren führen nur mit der Prozeßbearbeitung unmittelbar
zusammenhängende Betriebssystem-Routinen selbst durch, wie z.B.
Programmunterbrechungen und Aktivitäten zum Durchführen von Prozeßwechseln.
Sie übernehmen darüber hinaus nur die Speicherplatzverwaltung
im eigenen Speichermodul der Systemeinheit.
Um die Ausbaufähigkeit des Systems zu gewährleisten, ohne die Systemleistung
zu vermindern, hat der Stammprozessor im wesentlichen nur die Zugriffe zum Sekundärspeicher zu koordinieren und die Prozeßverwaltung
wahrzunehmen, d.h. die einzelnen im System laufenden Prozesse zu katalogisieren und auf die verarbeitenden Basisprozessoren
zu verteilen.
30
30
Die verbliebenen Betriebssystem-Routinen werden von den Zweigprozessoren
Übernommen. Dies sind vor allem die Aktivierung und Deaktivierung der zugeordneten Basisprozessoren. Dieser Aufgabenbereich
kann auch die Möglichkeit umfassen, die Basisprozessoren mit bestimmten
Mikroprogrammen zu laden. So kann eine modulare universel-.Ie Datenverarbeitungsanlage mit nur wenigen verschiedenen, sehr
hoch integrierten Bausteinen, d.h. Mikroprozessoren, Busleitungs-
809819/0*450
ORIGINAL INSPECTED-
Bausteinen und Speichermoduln und einem einfachen, trotzdem komfortablen
Betriebssystem realisiert werden.
Die vorstehend geschilderten Prozessorfunktionen in den einzelnen Hierarchiestufen des Systems zeigen, daß insbesondere die Zweigprozessoren
in hohem Maße mit Aufgaben des Datenaustausches mit dem Stammprozessor einerseits und den angeschlossenen Basisprozessoren
andererseits beschäftigt sind. Eine Weiterbildung der Erfindung sieht daher vor, daß in jeder Systemeinheit neben dem Arbeitsprozessor
ein Verbindungsprozessor dem Speichermodul räumlich unmittelbar zugeordnet ist, der wiederum standardisiert, jedoch
nicht notwendig wie ein Arbeitsprozessor aufgebaut ist und der, durch den Arbeitsprozessor angestoßen, den Verbindungsaufbau über
die jeweils angeschlossenen Busleitungen für einen Datentransport herstellt und diesen steuert.
Der Verbindungsprozessor kann einfacher als ein Arbeitsprozessor aufgebaut und muß nicht notwendig mikroprogrammierbar sein, da er
nur eine einzige Aufgabe, die Organisation des Datenaustausches über die angeschlossenen Busleitungen, wahrnimmt. Der mit ihm räumlich
fest gekoppelte Arbeitsprozessor ist dann von dieser Aufgabe befreit und kann parallel dazu eine neue Anforderung bearbeiten.
So vermag er eine größere Anzahl von untergeordneten Arbeitsprozessoren
zu bedienen bzw. Betriebssystem-Routinen in größerem Umfang wahrzunehmen. Andere Weiterbildungen der Erfindung sind in Unteransprüchen
gekennzeichnet und in der nachfolgenden Beschreibung eines Ausführungsbeispiels näher erläutert.
Zur Erläuterung des Ausführungsbeispieles der Erfindung wird auf die Zeichnung Bezug genommen. Dabei zeigt:
Fig. Λ das Prinzipschaltbild einer Datenverarbeitungsanlage mit
einer symmetrischen Multiprozessorstruktur, in der je ein Arbeitsprozessor und ein Speichermodul eine räumlich vereinigte
Systemeinheit bilden,
Fig. 2 ein weiteres Prinzipschaltbild einer derartigen Datenverarbeitungsanlage
mit Systemeinheiten, die aus einem Verbindungsprozessor, einem Arbeitsprozesnor und einem Speichermodul
bestehen, und
809819/0450
ORIGINAL INSPECTEB
Fig. 3 ein Blockschaltbild für eine mögliche Ausführungsform eines
Verbindungsprozessors«
Die.in Fig. 1 schematisch dargestellte Datenverarbeitungsanlage ist
rein modular aus einer Mehrzahl von Systemeinheiten SU aufgebaut.
Jede Systemeinheit soll auf einer Flachbaugruppe vereinigt sein
und neben einem Speichernodul SM jeweils einen Arbeitsprozessor
,: SP, ZP bzw. BP enthalten. Die hier nur schematisch dargestellten
Arbeitsprozessoren stellen durch Mikroprogramme steuerbare Mikro-Prozessoren dar und benutzen den zugeordneten Speicherraodul SM als
Arbeitsspeicher.
Die Systemeinheiten SU sind hierarchisch geordnet. Die unterste Ebene bilden Systemeinheiten SU mit als Basisprozessoren BP bezeichneten
Arbeitsprozessoren zum parallelen Verarbeiten laufender Prozesse. Sie sind mit peripheren Einheiten PE gruppenweise zusammengefaßt
und über Basisbusleitungen BB an eine der Systemeinheitei
SU der mittleren Ebene angeschlossen. Die Arbeitsprozessoren dieser
Ebene, als Zweigprozessoren ZP bezeichnet, sind gemeinsam über eine Zweigbusleitung ZB mit der Systemeinheit SU der höchsten Hierarchieebene
verbunden. Diese enthält einen als Staiamprozessor SP
bezeichneten Arbeitsprozessor, an den die gemeinsame Datenbasis
des Systems, ein Sekundärspeicher SSP großer Speicherkapazität,.angeschlossen
ist. Die Datenverarbeitungsanlage besteht also aus wenigen standardisierten Baueinheiten, nämlich Arbeitsprozessoren SP
ZP bzw. BP und Speichermoduln SM, die mit ersteren zusammen eine Systemeinheit SU bilden, sowie Busleitungsbausteinen ZB bzw. BB
für den Datenverkehr dieser Systemeinheiten untereinander.
Die beschriebene Struktur bedeutet, daß die Programmverarbeitung lokal in Systemeinheiten SU der unteren Ebene durchgeführt wird
und dazu die benötigten Programmdaten eines Prozesses im jeweiligen
Speichermodul SM stehen. In diesen Systemeinheiten sollen hoch
stens einige wenige Prozesse simultan ablaufen, damit jeder Auftra
eines Prozesses möglichst ohne Prozeßwechsel bearbeitet werden.
Die Arbeitsprozessor,en sind als Mikroprozessoren veiiaältnismäßig
8098 19/0450
^ AO
7BP 2 1 89 BRO
— ο —
einfach aufgebaut, darum preiswert. Deshalb kann darauf verzichtet
werden, das Betriebssystem der Datenverarbeitungsanlage so zu optimieren,
daß sämtliche Systemeinheiten der Verarbeitungsebene ständig beschäftigt sind. Trotz eines für den Benutzer komfortablen
Betriebssystems ist dieses daher verhältnismäßig einfach,'zumal
es in seinen Teilen auf die Arbeitsprozessoren der verschiedenen Ebenen verteilt wird. Die Basisprozessoren BP übernehmen nur die
Routinen für den eigentlichen Prozeßablauf, wie das Verarbeiten von Programmunterbrechungen, Prozeßwechselroutinen und die Speicherplatzverwaltung
im angeschlossenen Speichermodul SM. Letzteres bedeutet insbesondere das Ersetzen von in einem Prozeßablauf nicht
mehr benötigten Speicherseiten bzw. bei einem Seitenfehler - also einer während eines Prozeßablaufes im Speichermodul SM nicht geladenen
Speicherseite - die Anforderung des benötigten Speicherbereiches aus dem Sekundärspeicher SSP.
Die übrigen Betriebssystem-Routinen bearbeiten die Arbeitsprozessoren
höherer Hierarchiestufen. Der unmittelbar an den Sekundärspeicher
SSP angescnlossene Stammprozessor SP kann jedoch nur in einem geringen Umfang neben der Organisation des Zugriffs zu diesem
Sekundärspeicher SSP weitere Betriebssystem-Routinen wahrnehmen,
wenn er nicht überlastet, also das System nicht blockiert werden soll. Denn solche Zugriffe zum Sekundärspeicher SSP werden
vielfach notwendig. Sie treten bei zeitweiliger Aktivierung bzw. Deaktivierung von Prozessen in den Basisprozessoren BP nach Abschluß
eines Auftrags und bei allen Seitenfehlern auf. Deshalb kann der Stammprozessor SP darüber hinaus bei umfangreicheren Systemen
nur noch die Verwaltung der in der Datenverarbeitungsanlage gerade anstehenden Aufgaben wahrnehmen, d.h. die laufenden und
noch zu bearbeitenden Prozesse katalogisieren und die entsprechenden Programmdaten bestimmten Speicherbereichen im Sekundärspeicher
zuordnen.
Die Zweigprozessoren ZP übernehmen die restlichen Aufgaben des Betriebssystems.
Über die selbstverständliche Fähigkeit zur Bearbeitung von Nebenprogrammunterbrechungen hinaus aktivieren bzw. deaktivieren
sie die Prozesse in den Basisprozessoren BP der ange-
809819/0450
7ÖP 2 189 BRD
schlossenen Gruppe von Systemeinheiten SU und steuern den Ein-/Aus-•
gabeverkehr über die peripheren Einheiten PE. Großen Umfang nimmt dabei vor allem der eigentliche Datenaustausch über die angeschlossenen
Busleitungen ZB bzw. BB ein, der sie dann für andere Anforderungen blockiert oder aber bei höherpriorisierten Anforderungen
häufiger Prograuununterbrechungen erfordert.
Um die Zweigprozessoren davon freizustellen, wird, wie in Fig. 2 dargestellt, ihnen ein zusätzlicher Verbindungsprozessor, der Zweig-Verbindungsprozessor
ZVP, in der Systemeinheit SU räumlich unmittelbar zugeordnet, der den Datenaustausch selbständig steuert. Aus
Gründen der homogenen Struktur ist dann aber in allen Systemeinheiten SU ein derartiger Verbindungsprozessor SVP, ZVP bzw. BVP
vorgesehen. Damit wird das Prinzip der Modularität gewahrt. Die
Verbindungsprozessoren sind ebenfalls standardisiert, also als Bausteine untereinander austauschbar, müssen aber in ihrem Aufbau mit
den Arbeitsprozessoren nicht identisch sein.
Fig. 2 zeigt darüber hinaus weitere Ergänzungen der anhand von Fig.
1 erläuterten Struktur: So ist als wahlweise Erweiterung durch unterbrochene
Linien parallel zu der einen Systemeinheit SU mit dem Stammprozessor SP eine zweite angedeutet. Sie kann dann bei einem
Fehler in der ersten Systemeinheit deren Aufgaben übernehmen und so ein Blockieren der gesamten Datenverarbeitungsanlage bei einem
solchen Ausfall verhindern. Im übrigen aber kann sie die erste Systemeinheit entlasten, es bedarf dazu aber einer zusätzlichen, ebenfalls
mit unterbrochenen Linien eingezeichneten Koordinationsverbindung zwischen den beiden Stammprozessoren SP.
Eine weitere Maßnahme erhöht ebenfalls die Verfügbarkeit des Systems.
An jeden Zweigverbindungsprozessor ZVP ist eine Basisbusleitung BB angeschlossen. In Fig. 2 ist schematisch durch Busleitungsschalter
BS angedeutet, daß eine Systemeinheit SU der unteren Ebene wahlweise auf eine von zwei Busleitungen BB1 bzw. BB2 durchschaltbar
ist. Gesteuert werden diese Schalter, wie schematisch angedeutet, durch Steuersignale, die von den Basisverbindungsprozessoren
BVP abgegeben werden.
809819/0450
76P 2 1 8 9 BRD
Schließlich zeigt Fig. 2 auch noch deutlicher, daß sysVemexnheiten
auch als programmierbare periphere Steuerungen PS eingesetzt werden,
an die bei entsprechender Datentransferrate auch mehrere periphere
Geräte PG angeschlossen sein können. Diese peripheren Steuerungen PS dienen neben der Datenpufferung und der Anpassung des
Datentransports an unterschiedliche Datenwege beispielsweise auch der Umcodierung von Daten und vereinfachen damit die Organisation
des Ein-/Ausgabeverkehrs über die peripheren Geräte PG aus der
Sicht des Betriebssystems.
Die in ihrer prinzipiellen Struktur erläuterte Datenverarbeitungsanlage
nun in allen ihren Einzelheiten ausführlich zu erläutern, erscheint überflüssig, da Mikroprozessoren, Speichermoduln oder
Busleitungsbausteine als solche in ihrem Aufbau an sich bekannt sind. In Fig. 3 ist daher nur eine mögliche Ausführungsforia für
einen als Zweigverbindungsprozessor ZVP verwendeten Prozessor anhand
.eines Blockschaltbildes dargestellt, anhand der die Zusammenarbeit
der verschiedenen Systemeinheiten der Datenverarbeitungsanlage untereinander näher erläutert werden soll.
Der dargestellte Zweigverbindungsprozessor ist in eine Programmsteuereinheit
PST, eine Anfordeiungssteuereinheit AST und eine Schnittstellensteuereinheit SST gegliedert. Erstere ist sein
eigentlicher Kern, die hiermit ausgeführten Befehle steuern den Datentransfer, die Abwicklung der Datenübertragungs-Prozeduren
und die Zusammenarbeit seiner einzelnen Komponenten.
In dem schematischen Aufbau der Programmsteuereinheit PST ist zwischen
einer Eingabebusleitung BUS1 und einer Ausgabebusleitung BUS2 zunächst ein Satz verschiedener Register angeordnet, z.B. ein
Befehlszähler BZ und ein Anforderungsregister AFR, durch dessen Inhalt die verschiedenen Prozeduren in der Programmsteuereinheit
PST angestoßen werden. Darüber hinaus sind Arbeitsregister AR vorgesehen, die - wie das Anforderungsregister AFR - in ihrer Verwendung
weitgehend festgelegt, teilweise aber auch frei verwendbar sind. Darüber hinaus enthält die Programmsteuereinheit PST eine
Recheneinheit ALU mit zwei dieser vorgeschalteten Zwischenregistern
809819/0450
ORiGlMAL INSPECTED
' ' ^. ., 76P 2 189 BRD
ZW1 bzw. ZW2, die beide an den Eingabebus BUS1 angeschlossen sind,
während der Ausgang der Recheneinheit mit dem Ausgabebus BUS2 verbunden
ist.
Wie in Fig. 3 schematisch angedeutet ist, sind beide Busleitungen der Programmsteuereinheit PST mit verschiedenen Eingängen der
Schnittstellensteuereinheit SST verbunden. Diese stellt die Eingabe-/Ausgabe-Schnittstelle
des Zweigverbindungsprozessors dar, über die er mit anderen Prozessoren der Datenverarbeitungsanlage
verkehrt. Schematisch ist ein Multiplexkanal B-MUX angegeben, der nicht dargestellte Ein-/Ausgabe-Register und spezielle Steuerregister
besitzt. Er ist auch als Busleitungs-Baustein aufzufassen,
über den der Zweigverbindungsprozessor auf der Basisbusleitung BB mit den Basisprozessoren BP verkehrt. In ähnlicher Weise sind ein
Stammprozessoranschluß SPA und ein Zweigproz-essoranschluß ZPA als
Schnittstellen zum Stammverbindungsprozessor SVP bzw. zum Zweigprozessor
ZP aufgebaut. Schließlich kann der Zweigverbindungsprozessor ZVP mit dem Speichermodul SM seiner Systemeinheit über eine
Speicherzugriffssteuerung SZS verkehren.
Die dritte Steuereinheit des Zweigverbindungsprozessors ist die Anforderungssteuereinheit
AST. Diese interne Abtasteinrichtung soll den Anstoß der Programmsteuereinheit PST über das Anforderungsregister
AFR in Abhängigkeit von verschiedenen Anforderungsursachen ermöglichen. Anforderungen unterschiedlichster Art können an den
Zweigverbindungsprozessor ZVP sowohl von den Basisprozessoren BP und dem Stammverbindungsprozessor SVP als auch vom Zweigprozessor
ZP selbst gestellt werden. Diese unterschiedlichen Anforderungsarten
müssen festgestellt und voneinander unterschieden werden.
Auftretende Anforderungen werden dazu der Anforderungssteuereinheit
AST auf Steuerleitungen STL über die einzelnen Bausteine der Schniti
Stellensteuereinheit SST mitgeteilt. Ein Basisprozessor BP setzt eir zugeordnetes Bit in einem Prozessoranforderungsregister PAR, währenc
Anforderungen der beiden übrigen Prozessoren jeweils eines von zwei Flipflops FF1 bzw. FF2 setzen. Damit können Anforderungen des Stammverbindungsprozessors
SVP bzw. des Zweigprozessors ZP anders gewichtet
bzw. höher priorisiert werden.
809819/0450
76P 2 1 8'9 BRD
Die parallelen Bitausgänge des Prozessoranforderun^sregrsTlers PAR
sind über ein ODER-Glied OG, die beiden Flipflops FF1 bzw. FF2 unmittelbar an ein Prioritätsnetzwerk PRN angeschlossen. Dieses kann
in bekannter Weise z.B. in Bezug auf Anforderungen der Basisprozessoren BP rein zyklisch arbeiten, Jedoch Anforderungen des Stammverbindungsprozessors
SVP bzw. des Zweigprozessors ZP bevorzugt durchschalten. Wie durch unterbrochene Linien angedeutet ist, kann bei
einem solchen leitungsbezogerien Abtastvorgang auch der Inhalt bestimmter
Leitungsworte überprüft werden, die Steuerzustände anfordernder Einheiten definieren und im Speichermodul SM oder auch in
den Einheiten der Schnittstellensteuereinheit SST niedergelegt sind. Das Ergebnis wird über ein Steuerregister SR2 in das Anforderungsregister AFR der Programmsteuereinheit PST übernommen und damit
unmittelbar eine bestimmte Programmroutine gestartet.
Ein weiteres, zwischen der Programmsteuereinheit PST und dem Prioritätsnetzwerk
PRN angeordnetes Steuerregister SR1 deutet an, daß dieser Abtastvorgang auch durch die Programmsteuereinheit PST programmiert
beeinflußt werden kann. Damit ist es z.B. denkbar, den Abtastzyklus solange anzuhalten, bis die Programmsteuereinheit PST
für eine weitere Anforderung frei ist. Schließlich ist in die Abtaststeuereinheit
AST auch ein Taktgeber TG einbezogen, der innerhalb des Verbindungsprozessors den zentralen Takt für die Anforderungsabtastung,
aber auch für die Programmsteuereinheit PST bildet.
Vorstehendes verdeutlicht, daß der Datenaustausch innerhalb der Datenverarbeitungsanlage asynchron ablaufen und daher auf einem
Quittungssystem beruhen soll. Ein Anforderungssignal wird in der
angeforderten Einheit statisch gehalten und bewirkt nach dem Einstellen
bestimmter Anforderungsparameter ein Guittungssignal an
die anfordernde Einheit. Diese übergibt daraufhin bestimmte, die Anforderungsursache näher definierende Steuerkriterien, die in das
Anforderungsregister übernommen werden, worauf eine dadurch festgelegte Anforderungsroutine anlaufen kann. Am Ende dieser mehr oder
minder umfangreichen Routine wird, sofern sie durch einen Verbindungsprozessor bearbeitet wird, in jedem Fall eine weitere, daraus
abgeleitete Anforderung an einen Zweigprozessor oder den Stammver-
809819/04 5 0
ORIGINAL INSPECTED
76p 2 189 BRO
bindungsprozessor stehen, die darauf in ähnlicherTrerseTreagieren.
Soll der anfordernde Prozessor sofort nach Übergabe der Anforderung
freigestellt werden, müssen Anforderungsparameter in einem solchen
Datenübertragungs-Prozeduren reservierten Teil des zugeordneten Speichermoduls SM z.B. als Leitungsworte protokolliert werden, damit das Ergebnis der weitergeleiteten Anforderung eindeutig zuordenbar
ist. Unter dieser Voraussetzung kann die anfordernde Einheit
bei Übergabe der Anforderungsparameter an die angeforderte Einheit auch bereits das entsprechend gesetzte Anforderungsbit im
Prozessoranforderungsregister PAR bzw. einem der beiden Flipflops FF1 oder FF2 rücksetzen. .
Nachfolgend soll nun ein Überblick über mögliche Anforderungen gegeben
werden: Die Übernahme eines neuen Prozesses in die Datenverarbeitungsanlage kann nur über ein peripheres Gerät PG geschehen.
Dieses gibt dazu an seine ihm zugeordnete periphere Steuerung PS
ein Anforderungssignal ab. Mit einem Quittungssignal fordert die periphere Steuerung PS vom peripheren Gerät PG eine Terminalkennung
an, nimmt diese auf, decodiert sie und sendet sie über die Kette der Verbindungsprozessoren BVP, ZVP, SVP an den Stammprozessor
SP. Dieser reiht solche Anforderungen in einer Warteschlange ein und bearbeitet sie zur gegebenen Zeit. Er sendet dann ein Quittungssignal
in umgekehrter Richtung an das anfordernde periphere Gerät PG als Bestätigung dafür, daß der Prozeß eingeleitet ist.
Das anfordernde periphere Gerät PG interpretiert dieses Quittungssignal als eine Aufforderung, das gewünschte Programm zu laden und
zu starten. Dabei wird wieder über die Kette der Verbindungsprozessoren
auch der' Stammprozessor SP angefordert. Dieser richtet nun
eine Prozeßtabelle ein, teilt den akzeptierten Prozeß einem Zweigprozessor
und damit dessen Subsystem zu. Der eingeschaltete Zweigprozessor
ZP reiht den Prozeß in eine Warteschlange ein und kann
ihn aktivieren, wenn eine der verarbeitenden Systemeinheiten frei ist.
In diesem Fall erhält der Zweigprozessor ZP über die entsprechenden
309819/0450
0R5G1MAL !MSPECTED
- Ab 76P 2 1 89 BRD
Verbindungsprozessoren BVP und ZVP zunächst eine Meldung von einem
Basisprozessor BP, daß ein Prozeß deaktiviert werden kann, weil dieser Prozeß fertig bearbeitet ist oder zunächst eine langsame
Ein~/Ausgabeoperation durchgeführt werden muß. Der Zweigprozessor ZP nimmt diese Meldung an und reiht den zugeordneten Prozeß - sofern
notwendig - in die Warteschlange ein. Dafür weist er dem freigfcwordenen
Basisprozessor BP einen nun zu aktivierenden Prozeß an.
Dies sei z.B. der eben kreierte Prozeß. Für einen solchen Prozeß ist im Sekundärspeicher SSP wohl ein entsprechender Speicherbereich
durch den Stammprozessor SP vorbereitet, die Programmdaten sind jedoch dort noch nicht enthalten, deshalb ist zunächst zur
Übernahme des Prozesses in die verarbeitende Systemeinheit ein Eingabeverkehr notwendig. Der Basisprozessor BP der verarbeitenden Systemeinheit
teilt dies über die entsprechenden Verbindungsprozessoren unter Einschluß eines Zweigverbindungsprozessors ZVP, bei verschiedenen
Subsystemen auch eines Stammverbindungsprozessors SVP der peripheren Steuerung PS mit. Deren Basisprozessor BP hat beim
oben erwähnten Laden des Prozesses einen Puffer im zugeordneten Speichermodul SM vorbereitet und unabhängig von den schon beschriebenen
Aktivitäten das anfordernde periphere Gerät PG aufgefordert,
die Programmdaten in diesen Puffer zu übertragen. Auf Anforderung durch den Basisprozessor BP der verarbeitenden Systemeinheit sendet
der Basisprozessor BP der peripheren Steuerung PS daraufhin diese gepufferten Daten über die Kette der Verbindungsprozessoren
an den anfordernden Basisprozessor BP, der sie in einen dafür bereitgestellten Datenbereich seines ihm zugeordneten Speichermoduls
SM einträgt.
JO In diesem Zusammenhang kann gleich hinzugefügt werden, daß ein Ausgabeverkehr
an periphere Geräte PG analog durchgeführt wird. Dabei teilt der Basisprozessor BP einer verarbeitenden Systemeinheit, dem
Basisprozessor der peripheren Steuerung PS, an die das periphere Gerät PG angeschlossen' ist, die Ausgabeoperation mit. Der so aktivierte
Basisprozessor BP dieser peripheren Steuerung bereitet daraufhin einen entsprechenden Puffer in seinem angeschlossen Speichermodul
SM vor, um die auszugebenden Daten zu übernehmen. Sobald dies
809819/0450
ORIGINAL JNSPECTED
geschehen ist, werden die auszugebenden Daten über die Kette der
Verbindungsprozessoren in den Speichermodul SM der peripheren Steuerung PS übernommen und von dort aus in das periphere Gerät PG
übertragen, sobald dies dazu bereit ist.
Vorstehend wurde der Fall betrachtet, daß bei einem Prozeßwechsel ein neu kreierter Prozeß anlaufen soll. Wird jedoch bei einem Prozeßwechsel"
in einer verarbeitenden Systemeinheit ein im Datenverarbeitungssystem bereits einmal deaktivierter Prozeß nur erneut
aktiviert* so lädt der aktivierte Basisprozessor beim Start dieses
Prozesses die Anfangsadresse dieses Prozesses. Normalerweise tritt dabei sofort ein Seitenfehler auf, weil die entsprechende
Speicherseite nicht im zugeordneten Speichermodul SM geladen ist.
Nimmt man an, daß im Speichermodul SM kein freier Seitenrahmen zur
Verfügung steht, so muß der Basisprozessor BP eine Speicherseite im
Speichermodul SM freigeben. Dies ist üblicherweise eine Speicherseite
eines deaktivierten Prozesses. Der Basisprozessor BP fordert dann über die Kette der Verbindungsprozessoren BVP, ZVP, SVP den
Stammprozessor SP an und teilt ihm auf ein Quittungssignal hin mit,
daß die freigegebene Speicherseite in den Sekundärspeicher SSP übertragen werden soll. Sobald dies möglich ist, weist der Stammprozessor
SSP seinen Verbindungsprozessor SVP an, den Datentransfer in den Sekundärspeicher SSP unter Angabe des entsprechenden Speicherbereiches
im Sekundärspeicher durchzuführen. In den so frei, gewordenen Seitenrahmen des Speichermoduls SM der verarbeitenden Systemeinheit
kann nun die für die Prozeßbearbeitung fehlende Speicherseite aus dem Sekundärspeicher SSP in umgekehrter Richtung
übertragen werden. Dabei geht die Initiative wiederum von dem Basisprozessor BP der verarbeitenden Systemeinheit in analoger
Weise aus.
Aus Vorstehendem dürfte deutlich geworden sein, daß es in diesem datenverarbeitenden System zu bzw. von dem Sekundärspeicher SSP
einen Datentransfer nur im Zusammenhang mit Seitenfehlern gibt. So werden zur Entlastung der Schnittstelle dieses Speichers weder
bei Prozeßbeginn noch bei Prozeßende Programmdaten explizit vom Sekundärspeieher SSP bzw. in den Sekundärspeicher übertragen.
809819/0450
?fbbi
Daneben können noch weitere Anforderungen auftreten, auf die hier noch kurz hingewiesen werden soll: So wird ein Programmstop analog
wie die Deaktivierung eines Prozesses behandelt. Der Basisprozessor der verarbeitenden Systemeinheit teilt diesen Programmstop
über die Verbindungsprozessoren BVP und ZVP seinem ihm zugeteilten Zweigprozessor ZP mit, indem er zu Deaktivierungskennzeichen ein
Stopkennzeichen zusätzlich überträgt. Der Zweigprozessor ZP nimmt
daraufhin diesen Prozeß aus der Warteschlange heraus und sendet ein entsprechendes Stopsignal an den Stammprozessor SP, der den
Prozef3 löscht.
Weiterhin kann ein laufender Prozeß auch von außen unterbrochen werden. Ein entsprechendes Anforderungssignal eines peripheren
Gerätes PG wird als Unterbrechungssignal von dem Basisprozessor BP der peripheren Steuerung PS decodiert. Da dieser Basisprozessor
BP unmittelbar nicht feststellen kann, in welcher verarbeitenden Systemeinheit der Prozeß bearbeitet wird, sendet er ein Unterbrechungssignal
zusammen mit einer Terminalkennung an den Stammprozessor SP über die entsprechenden Verbindungsprozessoren BVP, ZVP
und SVP. Der Stammprozessor SP bearbeitet diese Anforderung, stellt dabei den Zweigprozessor ZP fest, dem er den zugehörigen Prozeß
übertragen hat und gibt die Anforderung an diesen weiter. Letzterer übergibt sie dann an den mit diesem Prozeß beschäftigten Basispro-.
zessor BP, in dem eine Programmunterbrechung ausgelöst wird.
Die vorstehende Beschreibung der Systemaktivitäten hat gezeigt, daß ein großer Teil der Betriebssystem-Routinen auf einfache Datenübertragungsprozeduren
beschränkt ist. Dagegen hat das Betriebssystem herkömmlicher Datenverarbeitungssysteme mit einem oder mehreren
Prozessoren und einem mehrstufigen Arbeitsspeichersystem bekanntlich vor allem auch noch vielfältige Aufgaben der Speicherplatzverwaltung
und der Organisation des Multiprogramm-Betriebes durch ZeitScheibenbildung usw.
Diese Aufgaben des Betriebssystems reduzieren sich wesentlich durch das Prinzip der parallelen lokalen Verarbeitung von Prozessen
mit Hilfe kostengünstiger, wenn auch verhältnismäßig langsamer
803819/0450
ORIGINAL INSPECTED
i -n --A$ VBP 2 189 BRD
Mikroprozessoren und räumlich vereinigter, in ihrer Kapazität allerdings
beschränkter Speichermoduln. Dieses Prinzip erweist sich auch deshalb als besonders interessant, weil gezielte Programmanalysen
ergeben haben, daß in kommerziellen Datenverarbeitungsanlagen mit einem Teilnehmerbetriebssystem die meisten Maschinenbefehle nur
sehr selten benötigt werden. Weitaus am häufigsten werden jedoch gerade die einfachsten Maschinenbefehle benutzt.
Bei der begrenzten Speicherkapazität im Speichermodul SM einer Systemeinheit
SU wäre es daher unzweckmäßig, die Mikroprogramm-Routinen
für alle Maschinenbefehle vollständig in den Speichermoduln SM der verarbeitenden Systemeinheiten zu speichern. Bereits eine
Beschränkung auf Mikroprogramm-Routinen, mit denen beispielsweise
im Durchschnitt 90 % aller durchlaufenen Befehle zu verarbeiten sind, ergibt eine bei weitem überproportionale Verminderung des benötigten
Speicherplatzes, da gerade die seltener verwendeten Befehle zu ihrer Ausführung umfangreiche Mikroprogramm-Routinen erfordern.
Allerdings steht dann die entsprechende Mikroprogramm-Routine im Durchschnitt bei jedem zehnten Befehl eines laufenden
Prozesses dem verarbeitenden Basisprozessor BP im zugeordneten Speichermodul SM nicht unmittelbar zur Verfügung, was einem Seitenfehler
entspricht. Für die Behandlung dieses Seitenfehlers ergeben sich mehrere Möglichkeiten. Die naheliegendste Möglichkeit, diesen
wie einen Seitenfehler bei Programmdaten in der oben beschriebenen Weise zu behandeln, scheidet schon deshalb aus, weil die Vielzahl
solcher Seitenfehler die Schnittstelle zum Sekundärspeieher SSP
im Stammverbindungsprozessor SVP blockieren würde.
Die dreistufige Prozessorstruktur erlaubt es aber, den Stammprozessor
SP bzw. den Stammverbindungsprozessor SVP bei der Bearbeitung seltener Maschinenbefehle auszuklammern. Da die Speichermoduln
der mittleren Ebene in großem Umfang durch Betriebssystem-Routinen
belegt werden können, ergibt sich die zweite Möglichkeit, Mikroprogramm-Routinen für seltene Maschinenbefehle dort bereitzuhalten.
Denn dieser Speicherplatz wird auch bei einer verhältnismäßig geringen Speicherkapazität des Speichermoduls SM von beispielsweise
64 kByte in den weitaus meisten Fällen genügen. Nur in den
9819/0450
ORIGINAL IMSPEOTED
26?f004
Ausnahmefällen eines "echten" Seitenfehlers müßten dann noch einige
wenige, sehr umfangreiche Mikroprogramm-Routinen seitenweise erst aus dem Sekundärspeicher SSP in den dem Zweigprozessor ZP zugeordneten
Speichermodul SM geladen werden.
Dagegen könnte bei einem "unechten" Seitenfehler die dem Basisprozessor
BP fehlende Mikroprogramm-Routine seitenweise unmittelbar aus dem Speichermodul SM des übergeordneten Zweigprozessors ZP in
den Speichermodul SM des Basisprozessors BP geladen werden.
Daneben besteht eine dritte Möglichkeit darin, dem Zweigprozessor ZP die Verarbeitung eines seltenen Befehles selbst zu übertragen.
Z.B. kann durch ein entsprechendes Kennzeichnungsbit im einzelnen Maschinenbefehl zwischen normalen, vom Basisprozessor BP selbst zu
verarbeitenden Maschinenbefehlen und seltenen Maschinenbefehlen unterschieden werden, die dann der übergeordnete Zweigprozessor ZP
verarbeitet. Bei der Initiierung eines Maschinenbefehls decodiert hier der Basisprozessor BP zunächst dieses Kennzeichnungsbit und
erzeugt davon abhängig ein Signal für eine kurzzeitige Programmunterbrecnung im Falle eines seltenen Befehls, das in der übergeordneten
Systemeinheit der mittleren Verarbeitungsebene als Anforderung zur Befehlsverarbeitung interpretiert wird.
Welche der beiden letztgenannten Möglichkeiten vorzuziehen ist, hängt von der Systemkonfiguration ab. Erstere bleibt konsequent
bei dem Prinzip der lokalen Verarbeitung der Prozesse in den Basisprozessoren, vergrößert jedoch die Anzahl der echten und unechten
Seitenfehler und erhöht damit auch die Anzahl der Seitenfehler-Routinen. Im anderen Fall erhöht sich die Auslastung der Zweigprozessoren
ZP, so daß dadurch die diesen zugeordneten Gruppen von verarbeitenden Systemeinheiten in ihrem Umfang beschränkt oder
aber längere Programmunterbrechungen im Basisprozessor in Kauf genommen werden müssen.
Es sei noch hinzugefügt, daß bei steigendem Integrationsgrad der Mikropro?_essoren damit gerechnet werden kann, daß die häufigsten
Mikroprogramm-Routinen statt im Speichermodul sogar auf dem Mikro-
809819/045 0
ORIGINAL !^3PECTED
1004
prozessor-Baustein selbst untergebracht werden können. Auch in diesem
Fall bestehen die beiden oben erläuterten Möglichkeiten. In dem Baustein nicht vorhandene Routinen können aus dem Arbeitsspeicher,
d«h. aus dem eigenen Speichermodül oder dem des Zweigprozessors
nachgeladen oder die betreffenden Befehle zum Verarbeiten an den Zweigprozessor übertragen werden»
6 Patentansprüche
3 Figuren
3 Figuren
8 0 9 8 19 /0 k t, [i
eerseite
Claims (6)
- ' - 20 - 76 P 2 t 8 9 BRDPatentansprüche ■Datenverarbeitungsanlage mit einer symmetrischen Multiprozessorstruktur, bei der im Multiprogramm-Betrieb die gerade zu verarbeitenden Prozesse beliebig verteilt von einer Vielzahl gleichartiger, über ein Busleitungssystem angesteuerter Mikroprozessoren parallel verarbeitet werden, denen dazu jeweils Teile des modular aufgebauten Arbeitsspeichersystems der datenverarbeitenden Anlage zugeordnet sind, in denen zum Prozeßablauf der aktuelle Speicherbereich des Prozesses aus einem gemeinsamen sekundären Speicher großer Kapazität bereitgestellt wird, dadurch gekennzeichnet , daß jeder einzelne der identisch aufgebauten Arbeitsprozessoren (SP, ZP bzw. BP) der datenverarbeitenden Anlage unmittelbar mit einem Speichermodul (SM) des Arbeitsspeichers zu einer Systemeinheit (SU) räumlich vereinigt ist, daß mindestens eine solche Systemeinheit mit einem als Stammprozessor (SP) bezeichneten Arbeitsprozessor an den Sekundärspeicher (SSP) angeschlossen ist, die dessen Datenverkehr steuert, daß diese über Busleitungen (ZB) an Systemeinheiten mit je einem als Zweigprozessor (ZP) bezeichneten Arbeitsprozessor angeschlossen sind, mit denen wiederum über mindestens eine weitere Busleitung (BB) jeweils Gruppen von Systemeinheiten mit je einem als Basisprozessor bezeichneten Arbeitsprozessor, die als verarbeitende Systemeinheiten Aufgaben der Programmverarbeitung wahrnehmen und darüber hinaus auch Ein-/Ausgabegeräte angeschlossen sind.
- 2. Datenverarbeitungsanlage nach Anspruch 1,dadurch gekennzeichnet , daß in jeder Systemeinheit (SU) neben dem Arbeitspi-ozessor (BP, ZP, SP) ein Verbindungsprozessor (BVP, ZVP bzw. SVP) dem Speichermodul (SM) räumlich unmittelbar zugeordnet ist, der wiederum standardisiert, jedoch nicht notwendig wie ein Arbeitsprozessor aufgebaut ist und der, durch den zugeordneten Arbeitsprozessor angestoßen, den Verbindungsaufbau über die jeweils angeschlossenen Busleitungen (BB bzw. ZB) für einen Datentransport herstellt und diesen selbständig steuert.809819/04 50ORIGINAL INSPECTED■ · -*»- 2?6if010849eRD
- 3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet , daß als periphere Steuerungen (PE) für mindestens ein peripheres Gerät (PG) ebenfalls gleichartige Systemeinheiten (SU), bestehend aus einem Basisprozessor (BP), einem Basisverbindungsprozessor (BVP) und einem Speichermodul (SM), verwendet werden und über eine Busleitung (BB) neben anderen verarbeitenden Systemeinheiten mit mindestens einem Zweigprozessor (ZB) verbunden sind.
- 4. Datenverarbeitungsanlage nach einem der Ansprüche 1 bis 3» bei der den Basisprozessoren nur ein beschränkter Speicherbereich für speicherresidente Betriebssystem-Routinen im zugeordneten Speichermodul zur Verfügung steht, dadurch gekennzeichnet, daß die im Speichermodul (SM) geladenen Mikroprogramm-Routinen nur häufig verwendete Befehle interpretieren, während umfangreichere Mikroprogramm-Routinen für seltene Befehle in der den zugeordneten Zweigprozessor (ZP) enthaltenden Systemeinheit (SU) verfügbar sind und der Basisprozessor (BP) bei Auftreten eines solchen seltenen Befehls in den Zustand der Programmunterbrechung tritt.
- 5. Datenverarbeitungsanlage nach Anspruch 4,dadurch gekennzeichnet , daß ein Basisprozessor (BP) im Zustand der Programmunterbrechung aufgrund eines seltenen Befehls an die übergeordnete Systemeinheit (SU) mit dem Zweigprozessor (ZP) ein Anforderungssignal für die fehlende Mikroprogramm-Routine abgibt, diese daraufhin seitenweise in die anfordernde Systemeinheit übertragen wird und daß dann dort vom Basisprozessor der die Programmunterbrechung verursachende Befehl verarbeitet wird.
- 6. Datenverarbeitungsanlage nach Anspruch 4, dadurch gekennzeichnet , daß ein Basisprozessor (BP) beim Prozeßablauf bei Initiierung eines Befehls diesen zunächst insoweit decodiert, daß festgestellt wird, ob er zur Gruppe der seltenen Befehle gehört, daß der Basisprozessor bei positivem Ergebnis des Tests in den Zustand der Programmunterbrechung eintritt und damit den übergeordneten Zentralprozessor (ZP) auffordert, den anstehenden Befehl selbst zu verarbeiten und das Ergebnis in den anfordernden Basisprozessor zu übertragen, so daß dieser mit der Prozeßverarbeitung fortfahren kann.809819/0 4 50ORfGIWAL INSPECTED
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762651004 DE2651004A1 (de) | 1976-11-08 | 1976-11-08 | Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur |
FR7732647A FR2370322A1 (fr) | 1976-11-08 | 1977-10-28 | Installation de traitement des donnees comportant une structure symetrique a processeurs multiples |
GB4617677A GB1572419A (en) | 1976-11-08 | 1977-11-07 | Data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762651004 DE2651004A1 (de) | 1976-11-08 | 1976-11-08 | Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2651004A1 true DE2651004A1 (de) | 1978-05-11 |
Family
ID=5992673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762651004 Withdrawn DE2651004A1 (de) | 1976-11-08 | 1976-11-08 | Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur |
Country Status (3)
Country | Link |
---|---|
DE (1) | DE2651004A1 (de) |
FR (1) | FR2370322A1 (de) |
GB (1) | GB1572419A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3130143A1 (de) * | 1981-07-30 | 1983-03-24 | Siemens AG, 1000 Berlin und 8000 München | Parallelrechnernetzarchitektur fuer echtzeitinformationssysteme innerhalb von mobilkommunikationssystemen mit hohen teilnehmerzahlen |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2742035A1 (de) * | 1977-09-19 | 1979-03-29 | Siemens Ag | Rechnersystem |
-
1976
- 1976-11-08 DE DE19762651004 patent/DE2651004A1/de not_active Withdrawn
-
1977
- 1977-10-28 FR FR7732647A patent/FR2370322A1/fr not_active Withdrawn
- 1977-11-07 GB GB4617677A patent/GB1572419A/en not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3130143A1 (de) * | 1981-07-30 | 1983-03-24 | Siemens AG, 1000 Berlin und 8000 München | Parallelrechnernetzarchitektur fuer echtzeitinformationssysteme innerhalb von mobilkommunikationssystemen mit hohen teilnehmerzahlen |
Also Published As
Publication number | Publication date |
---|---|
FR2370322A1 (fr) | 1978-06-02 |
GB1572419A (en) | 1980-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69724846T2 (de) | Mehrweg-Ein/Ausgabespeichersysteme mit Mehrweg-Ein/Ausgabeanforderungsmechanismus | |
DE60030397T2 (de) | Belastungsverteilung in einem Netzwerk | |
EP0333123B1 (de) | Modular strukturiertes ISDN-Kommunikationssystem | |
DE69632424T2 (de) | Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe | |
EP0636956B1 (de) | Aufdatverfahren | |
DE2908316A1 (de) | Multikonfigurierbares modulares verarbeitungssystem, das mit einem vorverarbeitungssystem integriert ist | |
DE3508291A1 (de) | Realzeit-datenverarbeitungssystem | |
CH634940A5 (en) | Channel-adapter arrangement | |
DE4140800A1 (de) | Verfahren zur loesung eines linearen gleichungssystems auf einem parallelcomputer | |
DE19617976A1 (de) | Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen | |
DE102009004726A1 (de) | Systeme und Verfahren zum Verfolgen von Befehlszeigern und Datenzugriffen | |
DE4429969A1 (de) | Verfahren für einen Programmpaketeaustausch in einem Mehrrechnersystem und Rechner dafür | |
DE19780639C2 (de) | Arbeitsübernahmesystem | |
DE3142504A1 (de) | Mehrfachplattenspeicher-uebertragungssystem | |
EP0141245B1 (de) | Verfahren zum Betrieb eines in Normalbetriebszeit parallel betriebenen Speicherblockpaares | |
DE2845218C2 (de) | Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen | |
DE2651004A1 (de) | Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur | |
WO1997004385A1 (de) | Rechnersystem | |
EP0135931B1 (de) | Zentralsteuereinheit eines Vermittlungssystems insbesondere Fernsprech-Vermittlungssystems | |
DE2404887C2 (de) | Schaltungsanordnung für den Informationsaustausch mit einem Rechner | |
DE2507405A1 (de) | Verfahren und anordnung zum synchronisieren der tasks in peripheriegeraeten in einer datenverarbeitungsanlage | |
DE2751416A1 (de) | Numerisches system zur datenbehandlung, insbesondere fuer raumfahrzeuge | |
DE10027845B4 (de) | Submodul für die Kontrolle einer Datenwarteschlange | |
DE102006028939B4 (de) | Programm-Pipelining-Verfahren zum Verarbeiten von Streaming-Daten in medizinischen Bildverarbeitungssystemen | |
EP3654121A1 (de) | Redundantes automatisierungssystem mit mehreren prozessoreinheiten je hardwareeinheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
8139 | Disposal/non-payment of the annual fee |