-
-
Beschreibung
-
Die Erfindung betrifft ein tragbares Mehrprozessorsystem, und betrifft
insbesondere ein tragbares Mehr- oder Multiprozessorsystem, welches bequem zu tragen
ist, wie beispielsweise mit der Hand tragbare Tischgeräte.
-
Eine sogenannte Mehrprozeß - verarbeitung, bei welcher eine Anzahl
Aufgaben gleichzeitig parallel vearbeitet wird, wird mittels eines einzigen Prozessors
auf einer Time-Sharing-Bais oder durch eine sogenannte Pipeline-Verarbeitung durchgeführt.
Die Time-Sharing-Verarbeitung wird oft bei Kleinstrechnern und bei kleinen Allzweckrechnern
angewendet, wobei auf die Schwierigkeit gestoßen wird, daß dies in der Praxis mit
einem Mikrocomputer durchgeführt wird, dessen Verarbeitungsgeschwindigkeit niedrig
ist. Obwohl einige moderne 16 Bit-Mikrocomputer sich für eine Mehrprozeßverarbeitung
eignen, stützen sie sich auf einen anteilig genutzten Anschluß oder auf einen Sammelleitungsanschluß
von Speichern, was wiederum eine beträchtliche Wartezeit nach sich zieht, so daß
sie schwer zu handhaben sind. Die sogenannte Pipeline-Verarbeitung wird dagegen
nur bei ziemlich begrenzten Operationen durchgeführt, und vom Systemstandpunkt her
gesehen, ist sie auf die Systeme beschränkt, welche größer als die Kleinstrechner
sind.
-
In Multi- oder Mehrprozessorsystemen ist das sogenannte festkoppelnde
System vorherrschend gewesen, welches durch anteilig genutzte Speicher oder durch
deren Verbindung durch eine Sammelleitung durchgeführt wird. Ein Nachteil bei dem
festkoppelnden System besteht darin, daß, da die Hardware für eine ausschließliche
Benutzung festgelegt ist, es an Flexibilität oder Freiheit fehlt, um es an eine
Modifikation, eine Ausdehnung oder eine Kombimation von Bauelementen anzupassen.
-
Das Mehrprozessorsystem ist bisher in tragbaren System, insbesondere
in mit der Hand tragbaren Rechnern, Taschenrechnern und anderen kleinen Systemen
verwirklicht worden, welche unter dem Stand von Tischgeräten liegen. Beispielsweise
ist ein Privatrechner mit einem Prozessor, der ausschließlich einer Ein-/Ausgabesteuerung
zugeordnet ist, auf den Markt gebracht worden. Auf dem Stand von Kleinstrechnern
ist ein Betriebssystem entwickelt worden, bei welchem eine Anzahl Prozessoren einzeln
arbeiten. Jedoch ist das Betriebssystem nicht so,daß die Prozessoren in Kombination
als ein einheitliches Verarbeitungssystem arbeiten.
-
In klein bemessenen Systemen, die unter dem Stand von Tischgeräten
liegen, wodurch sie sich von großen Systemen unterscheiden, würde ein Versuch, eine
kombinierte Operation einer Anzahl von Prozessoren einfach durch eine anteilig genutzte
Verbindung oder durch einen Sammelleitungsanschluß von Registri<«cashe)Speichern
u.ä. durchzuführen, die Steuerlogiken nur kompliziert machen und dadurch eine Quelle
von Störungen darstellen. Obwohl Systeme und intelligente Terminals, die auf ganz
bestimmte Anwendungsfälle ausgerichtet sind, als tragbare Prozessorsysteme verfügbar
sind, ist ein Allzweck-Mehrprozessorsystem bisher noch nicht verwirklicht worden.
-
Gemäß der Erfindung soll daher ein tragbares Mehrprozessorsystem geschaffen
werden, welches hochflexibel ist, um an verschiedene Anwendungen des Systems angepaßt
zu werden.
-
Gemäß der Erfindung ist dies bei einem tragbaren Mehrprozessorsystem
durch die Merkmale im kennzeichnenden Teil des Anspruchs 1 erreicht. Hierbei ist
durch die Erfindung ein insgesamt verbessertes tragbares Mehrprozessorsystem geschaffen.
-
Gemäß einer bevorzugten Ausführungsform der Erfindung ist ein tragbares
Mehrprozessorsystem geschaffen, welches einen ersten Prozessor, eine Kanaleinrichtung,
um den ersten Pro-
zessor zumindest an einen zweiten oder einen
dritten Prozessor anzukoppeln, welches derselbe Typ wie der erste Prozessor ist,
und eine Anschlußeinrichtung aufweist, welche trennbar den ersten Prozessor mit
dem zweiten Prozessor verbindet, wobei der erste Prozessor entsprechend ausgelegt
ist, um als einzelnes Verarbeitungssystem zu arbeiten, solange sowohl der zweite
als auch der dritte Prozessor von der Anschlußeinrichtung getrennt sind, und um
zumindest entweder mit dem zweiten oder dritten Prozessor zusammenzuarbeiten, um
als Ganzes eine Multiprozeßverarbeitung zu durchlaufen, während zumindest entweder
der zweite oder dritte Prozessor mit der Anschlußeinrichtung verbunden ist.
-
Gemäß noch einer weiteren bevorzugten Ausführungsform der Erfindung
ist ein tragbares Mehrprozessorsystem geschaffen, welches einen Grund- oder Basisprozessor,
zumindest zwei Modul-Prozessoren, eine Kanaleinrichtung, um den Grundprozessor an
mindestens einen der Modul-Prozessoren anzukoppeln, um dem Grundprozessor und zumindest
einem der Modul-Prozessoren zu ermögen, miteinander in Verbindung zu kommen, und
eine Anschlußeinrichtung aufweist, um trennbar jeden der Modul-Prozessoren mit dem
Grundprozessor zu verbinden- wobei der Grundprozessor und jeder der Modulprozessoren
so ausgelegt ist, daß, solange der Modul-Prozessor über die Anschlußeinrichtung
nicht mit dem Grundprozessor verbunden ist, der Grundprozessor als ein einzelnes
Verarbeitungssystem arbeitet, und daß, während der Modul-Prozessor über die Anschlußeinrichtung
mit dem Grundprozessor verbunden ist, und der mit demGrundprozessor verbundene Modul-Prozessor
als Ganzes eine einzige Mehrprozessorverarbeitung durchlaufen.
-
Gemäß noch einer weiteren vorteilhaften Ausführungsform der Erfindung
hat ein tragbares Mehrprozessorsystem einen einzigen Grund- oder Basis-Prozessor,
welcher über einen Übertragungskanal und eine Anschluß einrichtung trennbar mit
einer
Anzahl Modul-Prozessoren verbindbar ist. Jeder der Modul-Prozessoren führt eine
einzelne Aufgabe durch, während der Grundprozessor eine Anzahl der Modul-Prozessoren
verknüpft, um eine Mehrprozeßverarbeitung durchzuführen.
-
Der Grundprozessor ist als Ganzes in einem einzelnen tragbaren Gehäuse
untergebracht, und jeder der Modul-Prozessoren ist ebenfalls als eine Einheit in
einem tragbaren Gehäuse untergebracht.
-
Nachstehend wird die Erfindung anhand von bevorzugten Ausführungsformen
unter Bezugnahme auf die anliegenden Zeichnungen im einzelnen erläutert. Es zeigen:
Fig. 1 eine Blockdiagramm eines Grundprozessorsystems, welches einen Teil eines
tragbaren Mehrprozessorsystems gemäß der Erfindung bildet; Fig. 2 ein Blockdiagramm
eines Modul -Prozessor-Systems, das den anderenTeil des tragbaren Mehrprozessorsystems
bildet; Fig. 3 eine perpektivische Außenansicht des Grundprozessorsystems der Fig.
1; Fig. 4 eine perspektivische Außenansicht des Modul-Prozessorsystems der Fig.
2; Fig. 5 ein Diagramm einer Ubertragungskanal-Kopplungseinheit in dem erfindungsgemäßen
System; Fig. 6 ein Schaltungsdiagramm eines Teils der Übertragungskanal-Kopplungseinheit,
welche einem Rücksetzen zugeordnet ist; Fig. 7 bis 9 Flußdiagramme, in welchen ein
Datentransfer entsprechend dem erfindungsgemäßen System dargestellt ist;
Fig.
10 ein logisches Diagramm, welches Logiken des gesamten erfindungsgemäßen Systems
wiedergibt, und Fig. 11 ein Blockdiagramm des erfindungsgemäßen Systems, welche
bei einem Güter-Steuersystem angewendet ist.
-
Im allgemeinen weist das erfindungsgemäße, tragbare Multiprozessorsystem
ein in Fig. 1 dargestelltes Basis- oder Grundprozessorsystem (BP) 100 und ein in
Fig. 2 dargestelltes Modul-Prozessorsystem (MP) 200 auf. Das Grundprozessorsystem
100 weist einen Grundprozessor auf, welcher in diesem speziellen Ausführungsbeispiel
ein 8 Bit- oder 16 Bit-Mikroprozessor oder eine Zentralverarbeitungseinheit (CPU)
102 ist. Ein Festwertspeicher (ROM) 106 und ein Randomspeicher (RAM) 108 sind durch
eine Sammelleitung 104 mit der Zentraleinheit (CPU) 102 verbunden.
-
Der Festwertspeicher (ROM) 106 hat eine Kapazität von 32 K Bytes und
wird verwendet,um verschiedene Steuerprogramme zu speichern, was noch beschrieben
wird. Der Randomspeicher (RAM) 108 hat eine Kapazität von beispielsweise 32 KBytes
und dient als ein Arbeitsbereich für die Zentraleinheit 102 oder als Speicherbereich
für eine Anzeige. Mit der Sammelleitung 104 sind auch ein Tastenfeld 110, eine Kathodenstrahlröhre
(CRP) oder eine ähnliche Anzeige 112, ein Drucker 114, eine Ubertragungseinheit
116 für eine Verbindung mit einem öffentlichen oder lokalen Fernmeldenetz, und andere
Ein-/Ausgabe- (E/A-) Einrichtungen, welche anteilig in dem erfindungsgemäßen System
benutzt werden, und ein Ubertragungskanal 120 verbunden. Eine Anzahl Modul-Anschlußteile
128, beispielsweise 8, sind in einem Modul-Halter 122 untergebracht, und mit dem
Ubertragungskanal 120 verbunden. Das Grundprozessorsystem 100 ist mit dem Modul-Prozessorsystem
200 der Fig. 2 mittels der Modul-Anschlußteile 124 verbindbar.
-
In der vorliegenden Ausführungsform weist der in Fig. 2 dargestellte
Modul-Prozessor 200 einen 8 Bit- oder 16Bit-Mikroprozessor (CPU) 202 als dessen
Modul-Prozessor auf.
-
Ein Festwertspeicher (ROM) 206 und ein Randomspeicher (RAM) 208 sind
mittels einer Sammelleitung 204 mit dem Modul-Prozessor 202 verbunden. Bei einer
Kapazität von beispielsweise 32 K Bytes speichert der Festwerspeicher (ROM9 206
verschiedene Steuerprogramme des Modul-Prozessors 202, wie im einzelnen noch gezeigt
wird. Der Randomspeicher (RAM) 208 ist als ein Bereich zum Speichern eines angewandten
Programms oder als eine Datei verwendbar und kann beispielsweise um jeweils 16 K
Bytes ausgedehnt werden.
-
Mit der Sammelleitung 204 ist ein Ubertragungskanal 220 verbunden,
dessen anderes Ende an ein Anschlußteil 224 angekoppelt ist, das seinerseits mechanisch
mit einem der Anschlußteile 124 des Grundprozessorsystems 100 verbindbar ist.
-
Wie durch eine gestrichelte Linie 210 in Fig. 2 angezeigt, sind verschiedene
Ein-/Ausgabeeinrichtungen, wie eine Tastatur, ein Drucker, ein Floppy-Disk, ein
Magnetkartenleser, ein Strichmarkierungsleser, ein optischer Zeichenleser (OCR),
ein Flüssigkristallanzeige (LCD) und eine Ubertragungseinheit entweder einzelne
oder in Kombination mit der Sammelleitung 204 verbindbar. Wie beschrieben, kann
das Modul-Prozessorsystem 200 nicht anfordern, und folglich kann es nicht in Abhängigkeit
von seiner Art nicht mit Ein-/Ausgabeeinrichtungen ausgestattet werden. Somit kann
das Modul-Prozessorsystem 200 eines sein, das als eine Programmeinheit betriebbar
ist, welcher die Ein-/Ausgabeeinrichtung 210 fehlt, und welche ein ganz bestimmtes,
angewandtes Programm in dem Randomspeicher (RAM) 208 speichert, oder es kann eines
aufweisen, daß als eine Floppy-Disk-Einrichtung betreibbar ist, in welcher ein Floppy-Disk
als die Ein-/Ausgabeeinrichtung 210 verwendet wird und welche ein Programm speichert,
das zum Steuern des Floppy-Disk in demRandomspeicher (RAM) 208 notwendig ist. Aus
der vorstehenden Beschrei-
bung ist zu ersehen, daß eine Anzahl
Modul-Prozessorsysteme 200 über die Anschlußteile 124 an das Grundprozessorsystem
100 angekoppelt werden kann, wodurch als Ganzes ein Mehr-oder Multiprozessorsystem
gebildet ist.
-
Wie in Fig. 3 dargestellt, ist das Grund- oder Basisprozessorsystem
100 in der dargestellten Ausführungsform in einem einzigen tragbaren Gehäuse 300
untergebracht. Ein Modulprozessorsystem, wie eines, welches in Fig. 4 dargestellt
ist, ist in dem Gehäuse 300 untergebracht, um ein tragbares Mehrprozessorsystem
zu vervollständigen. In Fig.
-
4 ist das Modul-Prozessorsystem 200 ebenfalls in einem einzigen Gehäuse
400 untergebracht. An dem Gehäuse 400 ist ein Tastenfeld 402, eine Flüssigkristallanzeige
(LCD) 404 u.ä. vorgesehen, welche als die Ein-/Ausgabeeinrichtung 210 dienen, welche
in Kombination einen in die Hand nehmbaren Rechner oder Computer bilden. Das Tastenfeld
402 dieser Ausführungsform weist eine Tastatur auf, welche 10 Tasten 408 und Funktionstasten
410 aufweist, während die Flüssigkristallanzeige 404 eine Digitalanzeige zum Anzeigen
alphanumerischer Zeichen u.ä. aufweist. Bei einem Modul-Prozessorsystem 200, welchem
derartige Ein-/Ausgabeeinrich tungen fehlen, sind in dem Gehäuse 400 selbstverständlich
kein Tastenfeld 402 und keine Flüssigkeirstallanzeige 404 untergebracht. Das Anschlußteil
244 ist an einem Ende 406 des Gehäuses 400 angeordnet, um so mit einem der Anschlußteile
124 des Grundprozessorsystems 100 oder mit dem Anschlußteil 224 eines anderen Modulprozessorsystems
200 verbunden zu werden.
-
Das Gehäuse 300 des Grundprozessorsystems 100 (Fig. 3) ist an seinem
vorderen Ende mit einer Öffnung 308 versehen.
-
Die Modul-Anschlußteile 124 (Fig. 1) sind auf der Rückseite der Öffnung
308 angeordnet, um so den Modul-Halter 122 zu bilden. Solange der Modul-Halter 122
nicht benutzt wird oder das Modul-Prozessorsystem 200 im Innern des Modul-
Halters
122 angeordnet ist, ist die öffnung 208 des Gehäuses 300 durch einen Deckel 310
verschlossen.
-
Das Tastenfeld 110, die Anzeige 112, der Drucker 114 und ähnliche
Ein-/Ausgabeeinrichtungen sind an dem Gehäuse 300 angebracht. Das Gehäuse 300 ist
auch mit einer Öffnung 302 versehen, so daß das Tastenfeld 110 in die Öffnung 302
geschoben werden kann, um dort aufbewahrt zu werden, solange es nicht benutzt wird.
Ferner weist das Gehäuse 300 eine Vertiefung 306 zur Aufnahme der Anzeige 112 auf,
welche um einen Drehpunkt 304 schwenkbar ist. Bei dieser Ausführung kann das ganze
System ohne weiteres als ein einziges Gerät zusammengestellt werden und kann in
einem Aktenkoffer u.ä.
-
untergebracht werden, solange es nicht benutzt wird. Die Erfindung
ist jedoch nicht auf die dargestellte Ausführung beschränkt, sondern beispielsweise
kann auch eine Kathodenstrahlröhren-Anzeige 112 mit einem größeren Bildschirm vorgesehen
sein und an einem Ende 320 des Gehäuses angeordnet sein.
-
In Fig. 3 ist der Modul-Halter 122 so dargestellt, daß er an zwei
Modul-Prozessorsysteme 200 anpaßbar ist. Dies ist jedoch nur ein Ausführungsbeispiel
und kann entsprechend abgewandelt werden, um beispielsweise acht derartiger Modul-Prozessorsystems
200 unterzubringen. Das Tastenfeld 110 des Grund-Prozessorsystems 100 kann alphanumerische
Tasten 312 und Funktionstaten 314 aufweisen, wie in Fig. 3 dargestellt ist. Die
Anzeige 112 weist beispielsweise eine Kathodenstrahlröhrenanzeige von etwa fünf
Zentimetern (2 inches) auf. Ferner ist der Drucker 114 ein kleiner Punktdrucker
u.ä. Diese Ein-/Ausgabeeinrichtungen sind die Hilfsmittel, welche durch verschiedene
Modul-Prozessorsysteme 200 anteilig benutzt werden. Wie beschrieben, kann ein ganz
bestimmter der Modul-Prozessoren 202, an welchen der Grundprozessor 102 eine Erlaubnis
gibt, die erwähnten Hilfsmittel benutzen.
-
In Fig. 1 hat die Ubertragungseinheit 116 eine Kopplungseinheit beispielsweise
gemäß den RS 232C-Normen, welche mittels eines Modulators/Demodulators (MODEM) u.ä.
mit einem öffentlichen oder lokalen Fernmeldenetz verbindbar ist. Der Übertragungskanal
120 ist eine Kanaleinrichtung, welche mit demUbertragungskanal 220 des Modul-Prozessorsystems
200 zusammenarbeitet, damit das Grundprozessorsystem 100 seriell Daten an ein einzelnes
oder an eine Anzahl Modul-Prozessorsysteme 200 übertragen oder davon empfangen kann.
Die Übertragungsgeschwindigkeit des Übertragungskanals 120 ist beispielsweise 76,8
K Bits pro Sekunde.
-
Die Kopplungseinheit zwischen den Kanälen 120 und 220 in der dargestellten
Ausführungsform ist entsprechend ausgelegt, um den vorerwähnten RS 232C-Normen zu
genügen, wie in Fig.
-
5 dargestellt ist. Daher kann das Grundprozessorsystem 100 über den
Modul-Halter 122 und mittels der Anschlußteile 124 und 224 mit irgendeinem Modul-Prozessorsystem
200 verbunden werden. Außerdem kann jedes Modul-Prozessorsystem 200 mittels eines
Kabels mit einem anderen Modul-Prozessorsystem 200 verbunden werden, wodurch als
Erweiterung eines Modul-Prozessorsystems 200 ein zusammengesetztes System gebildet
ist. In einem solchen Fall arbeitet eines der beiden verbunden Modul-Prozessorsysteme
200 als Hauptsystem und das andere als Nebensystem.
-
In Fig. 5 ist ein Unterkanal 120, welcher dem n-ten Modul-Prozessorsystem
200 entspricht, wiedergegeben, welcher verschiedene Unterkanäle einschließlich dem
Ubertragungskanal 120 des Hauprozessorsystems darstellt. Rechts von dem Unterkanal
120a ist der Ubertragungskanal 220 einer der Modul-Prozessoren dargestellt, welchermit
dem Unterkanal 120a, d.h. dem n-ten Modul-Prozessor 200 verbunden ist. Der Unterkanal
120a des Grundprozessorsystems 100 und der Übertragungskanal 220 des n-ten Modul-Prozessorsystems
200 ist mit sechs verschiedenen Signalleitungen verbunden, wie nachstehend noch
beschrieben wird.
-
Eine Rücksetzleitung RESET ist eine Steuerleitung, die von dem Grundprozessor
102 zu dem Modul-Prozessor 202 verläuft.
-
Über die Rücksetzleitung RESET aktiviert und deaktiviert der Grundprozessor
102 jeden Modulprozessor 202 und über prüft einen Anschluß der Modul-Prozessorsystems
200. Ferner sind RESET-Leitungen, deren Anzahl den in dem Modul-Halter 122 installierten
Anschlußteilen 124 entspricht, verwendet; in der dargestellten Ausführungsform sind
acht RESET-Leitungen in einem Verhältnis von eins-zu-eins zu den Modul-Prozessorsystem
200 installiert, welche mit dem Grundprozessorsystem 100 verbunden sein können.
-
Eine RS-Leitung ist eine Steuerleitung, damit das Modul-Prozessorsystem
200 das Grund-Prozessorsystem 100 steuern kann. Folglich macht es die RS-Leitung
für den Modul-Prozessor 202 möglich, eine Übertragungsanforderung an den Grundprozessor
102 abzugeben und dem Grundprozessor 102 die Erlaubnis für eine Datenübertragung
zu geben.
-
Eine CS-Leitung ist eine weitere Steuerleitung zum Steuern des Grundprozessorsystems
100 über das Modul-Prozessorsystem 200. Über die CS-Leitung liefert der Grundprozessor
102 eine Ubertragungsanforderung an den Modul-Prozessor 202 und gibt dem Modul-Prozessor
202 eine Erlaubnis für eine Datenübertragung.
-
Eine RD-Leitung ist eine Signalleitung für eine Übertragung eines
eriellen Bitstroms von dem Modul-Prozessorsystem 200 an das Grundprozessorsystem
100, und eine SD-Leitung ist eine Signalleitung zum Übertragen eines seriellen Bitstroms
von dem Grundprozessorsystem 100 an das Modul-Prozessorsystem 200.
-
Ferner ist eine PW-Leitung eine Versorgungsleitung, um Energie von
dem Grundprozessorsystem 100 dem Modul-Prozessorsystem zuzuführen. Die PW-Leitung
weist +5V für Logikeinheiten, eine Energiequelle für das erdfreie Laden eines
(nicht
dargestellten) Akkumulators in dem Modul-Prozessorsystem 200 und Bezugspotentialleitungen,
eine Erdleitung, auf.
-
Wie im einzelnen in Fig. 6 dargestellt, ist die RESET-Leitung sorgfältig
ausgelegt, um Fehlfunktionen auszuschließen um zu verhindern, daß Information, welche
in dem Random-Speicher (RAM) 208 des Modul-Prozessorsystems 200 gespeichert ist,
in einem Verbindungsübergangszustand der zwei Anschlußteile 124 und 224 zerstört
wird. In Fig. 6 sind Teile der Anschlußteile 124 und 224, welche der RESET-Leitung
zugeordnet sind, einzeln durch strichpunktierte Linien angegeben. Der Teil links
von dem Anschlußteil 124 in Fig. 6 ist dem Unterkanal 120a des Grundprozessorsystems
100 zugeordnet, und der Teil rechts davon ist dem Ubertragungskanal 220 des Modul-Prozessorsystems
200 zugeordnet.
-
Wie aus dem Obigen zu ersehen, ist die RESET-Leitung eine Zweirichtungs-Signalleitung.
Der Unterkanal 120a ist mit einem Übertragungspuffer 600 und einem Empfangspuffer
602 versehen. Eine Ein-/Ausgangsleitung 604 des Unterkanals 120a ist mit einem Anschlußpunkt
606 und über einen Ausgangswiderstand 608 mit einer Energiequelle Vcc verbunden.
-
Die Leitung 604 ist auch mit einem normalerweise geschlossenen Kontakt
oder einem Ruhestromkontakt 610 verbunden, welcher in dem Anschlußteil 124 vorgesehen
ist. Ein Ansatzteil 612 ist in dem Anschlußteil 224 vorgesehen. Der Kontakt 610
ist ein mechanischer Kontakt, welcher zu unterbrechen ist, wenn der Ansatz 612 im
Falle einer Verbindung der Anschlußteile 124 und 224 mechanisch gedrückt wird.
-
Bei einer Verbindung des Anschlußteils 124 mit dem Anschlußteil 224
wird der Anschluß 124 in Verbindung mit einemAnschluß 616 und ein Erdungsanschluß
618 mit einem Anschluß 620 in Verbindung gebracht. In dem Ubertragungskanal 220
wird ein Potentialteiler aus einem Kondensator 622 und Widerständen 624 und 626
zwischen die Anschlüsse 616 und
620 geschaltet. Eine Energiequelle
Vcc ist, wie dargestellt, mit dem Potentialteiler verbunden. Leitungen 630 und 632
von den Anschlüssen 616 und 620 sind über die Sammelleitung 204 einzeln mit dem
Modul-Prozessor 202 verbunden. In dem Grund- oder Basis-Prozessorsystem 100 sind
Leitungen 640, 642 und 644 auf der rechten Seite der Puffer 600 und 602 über die
Sammelleitung 104 mit dem Grundprozessor 102 verbunden.
-
Der Grundprozessor 102 tastet die RESET-Leitung oder die Leitung 640
in einer vorbestimmten Periode ab, um deren Signalzustand zu überprüfen. Solange
das Anschlußteil 224 nicht mit dem Anschlußteil 124 gekuppelt ist, bleibt der Kontakt
610 geschlossen, um die Leitung 640 auf niedrigem Pegel zu halten, und der Grundprozessor
102 stellt dies fest und sieht dadurch, daß das Anschlußteil 224 des Modul-Prozessorsystems
200 nicht mit dem Anschlußteil 224 verbunden bzw. gekuppelt worden ist. Ein hoher
Pegel oder eine logische "1" wird auf der Leitung 642 von dem Grundprozessor 102
aus gesetzt.
-
Solange das Anschlußteil 224 nicht mit dem Anschluß teil 124 verbunden
ist, wird der Kondensator 622 in dem Modulprozessorsystem 200 auf eine durch denpotentialteiler
624, 628 gegebene Spannung geladen. Der Modul-Prozessor 202 bleibt unwirksam, solange
die RESET-Leitung logisch "0" ist.
-
Im Verlauf einer Verbindung des Anschlußteils 224 mit dem Anschlußteil
124 kommt es zu einem Zustand, bei welchem die Anschlüsse 606 und 618 jeweils mit
den Anschlüssen 616 und 620 verbunden sind, solange der Fortsatz 612 nur unvollständig
in den Kontakt 610 eingeführt ist.
-
Sobald das Anschlßteil 224 vollständig mit dem Anschlußteil 124 gekuppelt
ist, öffnet der Fortsatz 612 den Kontakt 616. Das logische "1"-Signal auf der Leitung
642 wird dann von dem Grundprozessor 102 über den Puffer 600, Anschlüsse 606 und
616 und die Leitung 630 an den Modul-Prozessor 202
übertragen,
worauf der Modul-Prozessor 202 das Rücksetzen löscht bzw. annulliert. Der Grundprozessor
102 macht die Leitung 642 logisch "0", um den Modul-Prozessor 202 zu deaktivieren
und macht sie logisch "1" um zu aktivieren.
-
Wenn das Modul-Prozessorsystem 200 von dem Modul-Halter 122 entfernt
wird, um das Anschlußteil 224 von dem Anschlußteil 124 zu trennen, wird der Kontakt
610 geschlossen, wodurch der Ausgang des Puffers 602 logisch "0" gemacht wird. Der
Grundprozessor 102 setzte daher fest, daß das Anschlußteil 224 von dem Anschlußteil
124 getrennt worden ist. Auf diese Weise wird in einem Übergangs zustand einer Verbindung
der Anschlußstücke 124 und 224 der Modulprozessor 202 zwangsläufig rückgesetzt,
um Fehlfunktionen und ein Zerstören von gespeicherten Daten auszuschließen. Hierauf
folgt dann, daß das System'gemäß dieser Ausführungsform normal arbeitet, selbst
wenn die Anschlußstücke 124 und 224 während des Betriebs voneinander getrennt werden.
-
Der Festwertspeicher (ROM) 106 des Grundprozessorsystem 100 speichert
Steuerprogramme für die verschiedenen Ein-/Ausgabeeinheiten 110 bis 116, welche
dem Grundprozessorsystem 100 zugeordnet sind, ein Steuerprogramm für den Übertragungskanal
120, ein Mehrprozessor-Steuerprogramm usw.
-
Das Steuerprogramm für den Überbetragungskanal 120 schreibt eine Übertragung
zwischen Modul-Proessoren 202 und eine Datenübertragung zwischen dem Grundprozessor
102 und einem Modul-Prozessor 202 vor. Das Mehrprozeß-Steuerprogramm schreibt Anforderungen
von verschiedenen Modul-Prozessoren 202 für gemeinsame Ein-/Ausgabeverarbeitungen
vor und fordert einen Durchlauf gemeinsamer Verarbeitungsprogramme an.
-
Wie vorstehend ausgeführt, unterscheidet sich die Ausführung der Ein-/Ausgabeeinheit
210 (Fig. 2) von einem Modul-Prozessorsystem 200 zum anderen in Abhängigkeit von
der dem System zugeordneten Funktion d.h. von dem Anwendungsfall.
-
Jedoch sind die Modul-Prozessoren 202, die Festwertspeicher (ROMs)
206, die Randomspeicher (RAMs) 208 und die ttbertragungskanäle 220 aller Modul-Prozessorsysteme
200 unabhängig von der Anwendung identisch. Der Festwertspeicher 206 speichert Steuerprogramme
für den Modul-Prozessor 202. Die Steuerprogramme enthalten Operations-Verarbeitungsprogramme
insbesondere bei einer Anwendung des Systems 200 und ein Steuerprogramm für den
Ubertragungskanal 220.
-
Die spezifischen Operationsverarbeitungsprogramme können einen BASIC-
oder einen ähnlichen Sprachenverarbeitungs-Unterbrecher, ein Datei-Verarbeitungsprogramm,
ein Rechenoperationsprogramm, ein Sprachenwiedererkennungs-Verarbeitungsprogramm,
usw. aufweisen. Das tJbertragungskanalprogramm wird verwendet, um einen Datentransfer
zwischen dem Modul-Prozessor 202 und dem Grundprozessor 102 oder einem anderen Modul-Prozessor
zu steuern, was mittels des Übertragungskanals 220 bewirkt wird. In der dargestellten
Ausführungsform wird das gesamte Modul-Prozessorsystem ständig von einem Gleichstrom
liefernden Versorgungssystem versorgt, welches mit einer Ersatzenergiequelle versehen
ist, so daß verhindert ist, daß in dem Randomspeicher 208 gespeicherte Daten verloren
gehen.
-
Der Randomspeicher(RAM) 208 wird als ein Programmbereich für ein spezielles
angewendetes Programm oder als ein Dateibereich verwendet. Der Ubertragungskanal
220 ist eine Kanaleinrichtung, die zum Austausch von Information mit dem Grundprozessor
102 oder mit einem anderen Modul-Prozessor 202 verwendet wird. Obwohl der Übertragungskanal
120 des Grundprozessorsystems 100 eine Anzahl Kanäle hat, ist der (Kanal) des Modul-Prozessorsystems
200 üblicherweise nur mit einem einzigen Kanal versehen.
-
Die Steuerleitungen RESET, RS, CS, RD und SD in dieser speziellen
Ausführungsform sind die gemeinsam diesen Signalen (vorgesehen), welchen in den
vorerwähnten RS 232 C-
Normen oder in einer ähnlichen seriellen
Kopplungseinheit für lokale Netzwerke enthalten sind. In diesem System werden die
Steuerleitungen dynamisch betrieben und auf verschiedene Weise für verschiedene
Fälle verwendet, um mehr Prozessor-Ubertragungsoperatlionen zu erhalten. Die SD-
und RD-Leitungen werden anteilig voh den verschiedenen Kanälen benutzt, um in einem
Multiplexmode zu arbeiten. Somit ist die Ubertragungsgeschwindigkeit in der Größenordnung
einer Ziffer als die Geschwindigkeit eines gewöhnlichen seriellen Transfers, um
so die Ubertragungsgeschwindigkeit zu verbessern.
-
In den Fig. 7 bis 9 sind Operationen für einen Datentransfer zwischen
den Kanälen in Flußdiagrammen dargestellt.
-
In Fig. 7 und 8 sind Sende- und Empfangssteuerungen wiedergegeben,
welche mittels des Modul-Prozessors 202 durchgeführt worden sind, während Fig. 1
eine Steuerung darstellt, die mittels des Grundprozessor 102 über den Datentransfer
zwischen zwei Modul-Prozessoren 202 durchgeführt worden ist.
-
Ein Datenempfang von dem Grundprozessor 112 durch einen Modulprozessor
202 ist in Fig. 7 dargestellt. Wenn der i-te Modul-Prozessor 202 gestartet wird,
um zu arbeiten (700), überprüft er eine ihm zugeteilte RESET-Leitung (702) und wenn
Rücksetzen bzw. RESET annulliert worden ist, schaltet er die RS-Leitung ab, während
angezeigt wird, daß keine Anforderung von dem Modul-Prozessor 202 geliefert wird
(704). Wenn der Grundprozessor 102 die SC-Leitung angeschaltet hat und eine Sendeanforderung
ausgesehndet hat (706) schaltet der Modul-Prozessor 202 die RS-Leitung an, und bewirkt,
daß der Grundprozessor 102 wartet, bis der Modul-Prozessor 202 sich selbst für einen
Datenempfang (708) vorbereitet. Sobald der Modulprozessor 202 bereit wird, um Daten
zu empfangen (710), schaltet er die RS-Leitung ab (712) und empfängt einen Nachrichtenkopf
von dem Grundprozessor 102. Wenn der Modul-Prozessor 202 den Nachrichtenkopf richtig
empfangen hat (716), schickt er ein ACK-Signal (eine Bestätigungsanwort) an den
Grundprozessor 102 (718),
entsprechend welchem dann der Grundprozessor
102 die CS-Leitung abschaltet (720). Unter dieser Voraussetzung empfängt dann der
Modul-Prozessor 202 Daten von dem Grundprozessor 102 (722). Wenn der Grundprozessor
102 den Modulprozessor 202 weiter auffordert, selbst nach dem Abliefern von Daten
beim Schritt 720 Daten zu empfangen, wird die CS-Leitung angeschaltet gehalten.
Wenn irgendein Fehler in dem empfangenen Daten vorkommt, sendet der Modul-Prozessor
202 ein NAK-Signal (eine Negationsantwort) an den Grundprozessor 102 (724). Diese
Schritte 716 bis 724 bilden das Datenempfangsunterprogramm, das dem Modul-Prozessor
202 zugeordnet ist.
-
Ein Datentransfer von einem Modul-Prozessor 202 an den Grundprozessor
102 ist in Fig. 8 dargestellt. Wenn RESET eines geplanten Modul-Prozessorsystems
200 gelöscht ist (702) schaltet der Modul-Prozessor 202 die RS-Leitung an, um von
dem Grundprozessor 102 eine Erlaubnis anzufordern, an ihn Daten zu übertragen (804)
. Wenn der Grundprozessor 102 die CS-Leitung anschaltet (806) schalter der Modul-Prozessor
202 die RS-Leitung ab, um eine Übertragungsstartbestätigung an den Grundprozessor
102 abzugeben, welcher dann die RS-Leitung (808) abschaltet. Wenn der Modulprozessor
202 einen Nachrichtenkopf von dem Grundprozessor 102 in dieser Operationsstufe erhält
(810), rückt er auf das in Fig. 7 dargestellte Empfangsunterprogramm vor, welches
festlegt, daß eine Datenübertragung von dem Grundprozessor 102 aus zuerst vorgekommen
ist. Wenn der Grundprozessor 102 keine Daten auszusenden hat, schaltet er die CS-Leitung
ab, um eine Senderlaubnis an den Modul-Prozessor 202 zu liefern (812). Der Modul-Prozessor
202 überträgt dann einen Nachrichtenkopf an den Grundprozessor 102 (814). Der Nachrichtenkopf
enhält eine Bestimmung, einen Befehl, eine Datenlänge u.ä. BeiEmpfang eines ACK-Signals
von dem Grundprozessor 102 (816) liefert der Modul-Prozessor 202 Daten an den Grundprozessor
102 (818).
-
Ein Datentransfer zwischen Modul-Prozessor 202 wird über das dazwischen
liegende Grundprozessorsystem 100 durchgeführt.
-
Die Steuerung, welche durch den Grundprozessor 102 über den Datentransfer
von dem m-ten Modul-Prozessor 202 zu dem n-ten Modul-Prozessor 202 durchgeführt
wird, ist in Fig. 9 dargestellt.
-
Der Grundprozessor 102 überwacht periodische die RS-Leitungen aller
Kanäle. Wenn einer der RS-Kanäle, d.h. die m-te-Kanal-RS-Leitung in diesem Beispiel,
angeschaltet wird, das heißt, wenn der Modul-Prozessor 202 eines Modul-Prozessorsystems
200, welches mit dem m-ten Kanal verbunden ist, die ihm zugeordnete RS-Leitung anschaltet,
schaltet der Grundprozessor 102 die entsprechende m-te SC-Leitung an, um dem Modul-Prozessor
202 einen Übertragungsstart zu befehlen (902). Der für eine Übertragung vorbereitete
Modul-Prozessor 202 schaltet die RS-Leitung ab (904), während der Grundprozessor
102 die RS-Leitung ausschaltet, um eine Übertragungserlaubnis an den Modul-Prozessor
202 abzugeben (906). Der Grundprozessor 102 empfängt einen Nachrichtenkopf von dem
Modul-Prozessor 202 (908). Der Nachrichtenkopf enthält einen Bestimmungsort (in
diesem Beispiel das mit dem n-ten Kanal verbundene Modul-Prozessorsystem 200), einen
Befehl, und eine Datenlänge.
-
Bei Empfang des Nachrichtenkopfs schaltet der Grundprozessor 102 die
SC-Leitung des n-ten Kanals an, welcher dem Bestimmungsort entspricht, um dem zugeordneten
Modul-Prozessor 202 einen Datenempfang zu befehlen (910) Wenn der n-te Modul-Prozessor
202 nicht besetzt ist, wird die ihm zugeordnete RS-Leitung abgeschaltet (912), worauf
der Grundprozessor 102 einen Nachrichtenkopf an den n-ten Modul-Prozessor 202 aussendet.
Sobald der n-te Modul-Prozessor 202 ein ACK-Signal an den Grundprozessor 102 zurückschickt,
gibt der letztere ein ACK-Signal an den m-ten Modul-Prozessor 202 zurück (918) und
empfängt dann von diesem Daten (920).
-
Unter dieser Voraussetzung schaltet dann der Grundprozessor 102 die
dem n-ten Modul-Prozessor zugeordnete CS-Leitung ab (922) und gibt die Daten an
den n-ten Modul-Prozessor ab (924). Hier dient das Abschalten der SC-Leitung dazu,
die Situation von einem Anschalten der SC-Leitung zu unterscheiden, was von neuem
am Übertragungsende eintritt. Wenn ein NAK-Signal von dem n-ten Modul-Prozessor
202 empfangen worden ist (916) schickt der Grundprozessor 102 ein NAK-Signal an
den m-ten Modul-Prozessor 202 zurück. Auf diese Weise kann ein Datentransfer zwischen
dem Grundprozessorsystem 100 und einem Modul-Prozessorsystem 200 oder erforderlichenfalls
zwischen Modul-Prozessorsystem 200 auf der Basis des Übertragungskanal-Steuerprogramms
durchgeführt werden.
-
In Fig. 10 ist ein Beispiel eines logischen Aufbaus des gesamtenSystems
gemäß der Erfindung dargestellt. In diesem Beispiel sind vier verschiedene Ein-/Ausgabeeinrichtungen
110 bis 116 mit dem Grundprozessor 102 verbindbar. Das System als Ganzes erlaubt
es, daß acht Modul-Prozessoren 202 mit ihm verbunden werden. Ein Modul-Prozessor
#1 enthält das Tastenfeld 402 und die Anzeige 404. Ein Modulprozessor #2 speichert
ein BASIC-Sprachensystem. Ein Modulprozessor #3 stellt eine Ubertragungssteuereinheit
dar, welche mit einer Übertragungseinheit 1002 versehen ist, welche an ein lokales
Netzwerke 1000 anschließbar ist. Ein Modul-Prozessor #8 wird als ein Bildschirmaufbereiter
verwendet.
-
Die übrigen Modul-Prozessoren #4 bis #7 sind in dieser Ausführungsform
als Programm- oder Dateibereiche vorgesehen, welche frei benutzt werden können.
Natürlich ist das Grundprozessorsystem 100 auch mit einem Bereich versehen, welches
frei benutzbar ist.
-
Das Operationssystem (OS) des gesamten Systems lenkt einen Grundoperationsteil
des Grundprozessors 102 und Grundoperationsteile der jeweiligen Modulprozessoren
202. Da die Kopplungseinheiten aller Module an dem Betriebssystem logisch gleich
ausgebildet sind, arbeiten die Programme in den Be-
nutzterbereichen
auf dieselbe Weise in allen Modul-Prozessorsystem 200 und bei allen physikalischen
Bedingungen.
-
Gemäß einem charakteristischen Merkmal der Erfindung kann ein Modul-Prozessorsystem
200, wenn es in dem Anschlußteilhalter 122 des Grundprozessorsystems 100 angebracht
ist, in Verbindung mit dem Grundprozessorsystem 100 und anderen Modul-Prozessoren
202 ein Mehrprozessorsystem bilden um Sprachverarbeitungen, Problemverarbeitungen
u.ä. durchzuführen; wenn es von dem Anschlußteilhater 122 getrennt ist, kann es
einzeln beispielsweise als ein Datensammler oder als ein elektronischer Rechner
fungieren.
-
Anhand von Fig. 11 wird nunmehr die Verwendung des erfindungsgemäßen
Systems in einem Güter-Steuersystem beschrieben, welches beispielsweise ein Auftrags-
oder Bestellungso information in einem Großhandelslager verarbeitet. In dem dargestellten
Anwendungsfall ist das Grundprozessorsystem 100 in einem Großhandelslager aufgestellt,
und fünf Modul-Prozessorsysteme 200 sind in dessen Modulhalter 122 (Fig.1) untergebracht.
Ein mit #1 bezeichnetes Modul-Prozessorsystem 200 ist ein Programm-Modul, welcher
ein eingegebenes Verarbeitungsprogramm für eine Auftragsinformation speichert. Ein
#2 bezeichnetes Modul-Prozessorsystem 200 ist ein Programm-Datei-Modul zum Speichern
von eingegebener Information und verarbeiteter Information, während die aufgearbeitet
werden, damit der Drucker 114 Auftrags- oder Bestellungsblätter druckt. Mit #3
und #4 bezeichnete Modul-Prozessorsysteme 200 sind Module, die jeweils eine
Tastatur 402 (Fig. 4) haben, um als ein Datensammler zu dienen.
-
Eine Übertragungsleitung 1100 ist in dem Grundprozessorsystem 100
über die Übertragungseinheit 116 (Fig. 1) eingebaut und miteinem Zentralverarbeitungssystem
1102 verbunden, das in einem Lieferzentrum angeordnet ist. Ein mit #5 bezeichnes
Modul-Prozessorsystem 200 ist ein Programm-Modul, der ein Programm für eine Online-Ubertragungssteuerung
mit
dem zentralen Verarbeitungssystem 1102 speichert.
-
Aufträge oder Bestellungen, die per Telefon u.ä. angenommen worden
sind, werden über das Tastenfeld 110 eingegeben und von dem Eingabeverarbeitungsprogramm
in dem mit #1 bezeichneten Modul 200 verarbeitet, um zukünftig Arbeiten, wie Ausliefern
von Gütern und eine Zahlungsforderung, vorzubereiten. Die von dem Modul #1 verarbeiteten
Daten werden in dem Modul #2 gespeichert. In diesem Augenblick sind das Tastenfeld
und die Anzeige 112 durch das in dem Modul #1 gespeicherte Ein-/Ausgabe-Steuerprogramm
besetzt.
-
Inzwischen bringen Verkäufer die Module, wie beispielsweise die Module
#3 und #4, die aus dem Halter 122 herausgenommen worden sind, um sie als Datensammler
zu benutzen.
-
Bestellungen und Aufträge, die von einem Verkäufer gesammelt worden
sind, werden in den Datensammler eingegeben, um vorübergehend in dem Randomspeicher
(RAM) 208 (Fig. 2) des Modul-Prozessorsystems gespeichert zu werden. Dies wird natürlich
durch die Steuerprogramm für den Festwertspeicher (ROM) 206 und dem Randomspeicher
(RAM) 208 bewirkt.
-
Wenn er zu dem Lager zurückkommt, steckt der Verkäufer die Module
#3 und #4 in den Halter 122, so daß die Auftragsdaten an dem Modul #2 übertragen
werden. Die Daten werden dann von dem Modul #2 aufbereitet und dann von dem
Drucker 114 des Grundprozessorsystems 100 ausgedruckt, um ein Auftragsblattvorzubereiten.
In diesem Augenblick ist dann der Drucker 114 durch den Modul-Prozessor #2 besetzt.
Parallel mit dem Druckbetrieb speichert der Modul-Prozessor #2 die Daten um
sie dann beispielsweise kundenweise aufzubereiten.
-
Das Auslieferungszentrum faßt dann Auslieferungsdaten für Kunden zusammen.
Zuerst fordert der Rechner 1102 den Grundprozessor 102 über die Ubertragungsleitung
1100 auf, an ihn die Auftragsdaten zu übertragen. Dann startet der Grundprozessor
102 das dem mit #2 bezeichneten Modul-Prozessor zugeordnete Verarbeitungsprogramm,
um vorbestimmte Information
von dem Rechner 1102 zu empfangen und
um seinerseits die Auftragsdaten an den Rechner 1102 zu übertragen.
-
Auf die beschriebene Weise sind die verschiedenen Funktionen verschiedenen
Modul-Prozessorsystemen 200 in dem dargestellten und beschriebenen Anwendungsfall
zugeordnet, wodurch dann verschiedene Verarbeitungsvorgänge parallel weitergehen
können. Folglich arbeitet der Grundprozessor als eine Verarbeitungseinheit zum Durchführen
von Mehrprozeßverarbeitungen in dem erfindungsgemäßen System, während jeder Modul-Prozessor
als eine Datenverarbeitungseinheit in dem Zentrum, welches eine Aufgabe durchläuft,
arbeitet.
-
Gemäß der Erfindung ist somit ein tragbares Mehrprozessorsystem geschaffen,
bei welchem ein Modul-Prozessor eine einzige Aufgabe durchläuft und eine Anzahl
derartiger Modul-Prozessoren in einem Grundprozessor zusammengefaßt werden, um dadurch
eine Mehrprozeßverarbeitung als Ganzes durchzuführen, wodurch eine Koordination
des Gesamten Systems sichergestellt ist. Somit können die Modul-Prozessoren durch
Mikroprozessoren ausgeführt werden, deren Verarbeitungsgeschwindigkeit verhältnismäßig
niedrig sind, während die Wartezeit bei den einzelnen Verarbeitungsvorgängen ziemlich
kurz ist.
-
Wie oben beschrieben, ist das erfindungsgemäße System eine Kombination
von trennbaren Modul-Prozessoren und eines Grundprozessors, welche als Ganzes als
ein einziges sinnvoll verbundenes Multi- oder Mehrprozessorsystem arbeiten.
-
Dies ermöglicht es, erforderlichenfalls das System immer entsprechend
aufzubauen, um es an einen gewünschten Anwendungsfall azupassen; das heißt, es ist
das sogenannte lose gekoppelte System verwirklicht, welches einen gewünschten offenen
und flexiblen Systemaufbau sicherstellt. Dies vereinfacht in Verbindung mit einem
seriellen Datentransfer zwischen den Prozessoren die Logikeinheiten oder die System-Software,
wodurch der Wirkungsgrad des gesamten Systems verbessert
ist.
Ferner kann der Adressenraum durch Verwenden zusätzlicher Modul-Prozessoren ausgedehnt
werden.
-
Inzwischen sind das Grund- oder Basisprozessorsystem und die Modul-Prozessorsysteme,
wann immer es gewünscht wird, einzeln verwendbar, indem ihre Anschlußteile voneinander
getrennt werden. Anders ausgedrückt, jedes der Prozessorsysteme ist entweder als
ein einzelner Prozessor oder als ein Multiprozessor betreibbar. Außerdem sind sowohl
die Modul-Prozessoren als auch der Grund- oder Basisprozessor jeweils einzeln in
Einzelgehäusen untergebracht, welche leicht zu tragen sind.
-
- Leerseite -