DE3224034C2 - - Google Patents

Info

Publication number
DE3224034C2
DE3224034C2 DE3224034A DE3224034A DE3224034C2 DE 3224034 C2 DE3224034 C2 DE 3224034C2 DE 3224034 A DE3224034 A DE 3224034A DE 3224034 A DE3224034 A DE 3224034A DE 3224034 C2 DE3224034 C2 DE 3224034C2
Authority
DE
Germany
Prior art keywords
bus
interrupt
processor
devices
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE3224034A
Other languages
English (en)
Other versions
DE3224034A1 (de
Inventor
Eiichi Kobe Hyogo Jp Kagawa
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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
Priority to US06/392,302 priority Critical patent/US4495569A/en
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to DE19823224034 priority patent/DE3224034A1/de
Priority to CH3944/82A priority patent/CH657714A5/de
Publication of DE3224034A1 publication Critical patent/DE3224034A1/de
Application granted granted Critical
Publication of DE3224034C2 publication Critical patent/DE3224034C2/de
Granted legal-status Critical Current

Links

Classifications

    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • 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

Description

Die Erfindung betrifft ein Mehrprozessorsystem gemäß dem Oberbegriff des Hauptanspruchs, bei dem ein Gerät oder mehrere Geräte von mehreren Prozessoren gemeinsam gesteuert werden.
Als Geräte, die gleichzeitig von mehreren Prozessoren gesteuert werden, kommen Periphergeräte für einen Rechner, wie z. B. Speicher, Ein/Ausgabegerät, Schreibgerät, Disketten und Kathodenstrahlröhren in Betracht. Um solche Geräte billig und schnell bedienen zu können, wird ein Mehr­ prozessorensystem mit einer Busstruktur mit einem Zentralbus benutzt.
In Fig. 1 ist in einem schematischen Blockdiagramm ein Mehrprozessorensystem gemäß dem Stand der Technik dargestellt. Mehrere Prozessoren 11 bis 1n steuern gemeinsam zwei Geräte 61 und 62. Dazu verbinden Ortsbusse 21 bis 2n die jeweiligen Prozessoren 11 bis 1n mit einer Bus­ auswahlschaltung 3. Die Busauswahlschaltung 3 wählt einen der Ortbusse 21 bis 2n aus und verbindet diese mit einem Zentralbus 5. Die Geräte 61 und 62 sind gemeinsam an den Zentralband 5 angeschlossen. Die Busauswahlschaltung wird von einem Steuersignal von einer Bussteuereinheit 4 gesteuert. Wenn die Bussteuereinheit 4 eines von Busan­ forderungssignalen REQ1 bis REQn von den jeweiligen Prozessoren 11 bis 1n erhält, identifiziert die Bussteuer­ einheit 4 das Busanforderungssignal und erkennt, welcher Ortsbus der Ortsbusse 21 bis 2n mit dem Zentralbus 5 verbunden werden sollen, wozu ein Steuer­ signal an die Busauswahlschaltung 3 abgegeben wird.
Wenn daher der Prozessor 11 z. B. ein Busanforderungssignal REQ1 abgibt, steuert die Bussteuereinnheit 4 die Busauswahl­ schaltung 3 an, so daß der Ortsbus 21 mit dem Zentralbus 5 verbunden wird. Infolgedessen kann dann der Prozessor 11 mit den Geräten 61 und 62 Werte austauschen.
Aus dem Stand der Technik sind auch Einzelsysteme bekannt, die generell einen einzelnen Prozessor aufweisen. Von Geräteseite wird dort manchmal ein Notsignal an den Prozessor zur Steuerungsanforderung abgegeben. Ein solches Aufforderungssignal umfaßt die Bildung eines externen Zeitgabesignals für einen Prozessoreingang und die Bildung eines Statuswechselsignals für ein Gerät. Solche Statuswechsel können der Abschluß einer Aufgabe, abgeschlossene Datenaufnahme oder Ende der zur Verfügung stehenden Daten sein. Das Einzelsystem ist so ausgeführt, daß eine Unterbrechungsnummer für jede Art von Anforderungen vom Gerät geliefert wird und eine entsprechende Unterbrechungsnummer wird erkannt, wenn ein Unterbrechungssignal an den Prozessor gelegt wird und die entsprechende Unterbrechungssteuerung durchgeführt wird. Da eine solche Unterbrechung für jedes Gerät durchgeführt wird, entspricht die Zahl der erforderlichen Unterbrechungsnummern der Zahl von Geräten, die eine Unterbrechung anfordern.
Auch in einem Mehrprozessorsystem wie dem in Fig. 1 wird eine Unterbrechungsanforderung von Geräteseite her an dem Prozessor in derselben Art und Weise wie im Einzelsystem erzeugt, weswegen eine Unterbrechungssteuerung erforderlich ist. Da jedoch ein Mehrprozessorsystem eine Mehrzahl von Prozessoren und eine Mehrzahl von Geräten aufweist, gibt es viele Kombinationen hierfür. Daher ist eine Unterbrechungssteuerung in einem Mehrprozessorsystem erheblich komplizierter im Vergleich mit dem oben beschriebenen Einzelsystem und daher kann eine Unterbrechung vom Gerät zu einem zugehörigen Prozessor nicht durchgeführt werden, wenn nicht ein komplizierter Prozeß zur Verfügung gestellt wird. Genauer gesagt ist es erforderlich, wenn die Zahl der Geräte, die eine Unterbrechung anfordern, m ist, zu entscheiden, an welche von n Prozessoren die m Unterbrechungsanforderungen gerichtet sind.
Für den vorstehend beschriebenen Zweck verwendete ein Mehr­ prozessorsystem gemäß dem Stand der Technik folgende Näherungslösung. Um eine Unterbrechungsanforderung vom Gerät durchzuführen, wird ein Unterbrechungsstatussignal an den Zentralbus 5 abgegeben und alle Prozessoren 11 bis 1n fragen die Unterbrechungsstatussignale zyklisch durch ein Programm ab, so daß die Bildung einer Unterbrechungsanforderung erkannt wird. Eine andere Näherungslösung besteht darin, daß ein Gerät oder Geräte, die Unterbrechungen anfordern, nicht als Geräte ausgeführt sind, die die zugehörigen Prozessoren 11 bis 1n gemeinsam steuern können, sondern die Geräte sind mit dem Ortsbus eines Prozessors verbunden, die unterbrochen werden soll und sie sind daher als Geräte mit Standverbindung zum Prozessor ausgeführt, so daß dieselbe Unterbrechungskontrolle wie im Einzelsystem durchgeführt wird.
Ein Mehrprozessorsystem, das nach dem letztgenannten Prinzip arbeitet, ist in dem US-Patent 43 96 978 beschrieben.
Wie im Vorstehenden beschrieben, wird bei einem Mehrprozessorsystem gemäß dem Stand der Technik, für den Fall daß eine Unterbrechungsanforderung von einem Gerät zu einem beliebigen der Prozessoren durchgeführt wird, eine Unterbrechungsantwort abgenommen, da eine Abfrage übereinstimmend mit jedem Programm jedes Prozessors gemacht wird, um eine Unterbrechungsanforderung zu erkennen. Wenn ein Gerät durch einen speziellen Prozessor belegt ist, können aber alle anderen Prozessoren das Gerät nicht steuern. Wenn darüber hinaus das Gerät durch einen beliebigen der Prozessoren belegt ist, sollte die Zahl der Geräte, die von den Prozessoren be­ legt werden können, der Zahl der Prozessoren entsprechen, die das Gerät benötigten, wodurch das System äußerst teuer wird, was ein erheblicher Nachteil ist.
Die Aufgabe der Erfindung besteht darin, ein Mehrprozessorsystem anzugeben, das demgegenüber günstiger ist. Diese Aufgabe wird durch die im Kennzeichen des Patentanspruchs 1 angegebenen Merkmale gelöst.
Ein Mehrprozessorsystem gemäß der vorliegenden Erfindung ist so ausgeführt, daß Werte, die die Unterbrechung eines Prozessors mit einem jeweiligen Gerät betreffen, in einem Speicher zur Speicherung von Bestimmungswerten gespeichert werden und eine Unterbrechungs­ steuerung zu einem jeweiligen Prozessor wird auf der Basis der gespeicherten Bestimmungswerte vorgenommen, wenn eine Unterbrechungsanforderung von irgendeinem der Geräte abgegeben wird. Genauer gesagt speichert der genannte Speicher einen Bestimmungswert zur Festlegung wenigstens eines Prozessors, der von mehreren Geräten unterbrochen werden soll. In Antwort auf eine Unterbrechungsanforderung von irgendeinem der Geräte wird ein Unterbrechungsbestimmungswert vom Bestimmungswertespeicher abgegeben, um den Prozessor zu erkennen, der dem Bestimmungswert zugehört, so daß eine Unterbrechungssteuerung zum zugehörigen Prozessor auf Basis des Ergebnisses der Erkennung abgegeben wird. Auf der Grundlage eines Busanforderungssignals von dem Prozessor, der ein Unterbrechungs­ steuerungssignal erhielt, schaltet eine Busauswahlschaltung den Ortsbus des Prozessors auf einen Zentralbus um, der mit einer Mehrzahl von Geräten verbunden ist, so daß eine Busverbindung zwischen dem Prozessor und dem Gerät hergestellt wird.
Gemäß der vorliegenden Erfindung kann ein zu unterbrechender Prozessor auf einfache Art und Weise durch die in dem Bestimmungswertespeicher gespeicherten Bestimmungswerte identifiziert werden. Daher kann eine Unterbrechungssteuerung von jedem einer Mehrzahl von Geräten an einem beliebigen Prozessor abgegeben werden, und eine Verbindung zwischen einem Gerät und einem Prozessor kann mit einer verhältnismäßig einfachen Struktur hergestellt werden. Insbesondere wird der komplizierte Prozeß gemäß dem Stand der Technik nicht mehr benötigt, bei dem jeder Prozessor dauernd ein Unterbrechungsstatussignal abfragt, das von einem Gerät oder von Geräten über eine Zentralbusleitung abgegeben ist, um die Erzeugung eines Unterbrechungssignals zu erkennen und daraus jedem Prozessor zu ermöglichen, festzustellen, ob ein an ihn gerichtetes Unterbrechungssignal vorliegt. Darüber hinaus kann bei einem Wechsel der Bestimmungswerte leicht der Prozessor gewechselt werden, der dem Bestimmungswert eines Prozessors entspricht, den das Gerät unterbrechen will. Darüber hinaus ist es auf äußerst einfache Art und Weise ermöglicht, eine Unterbrechungssteuerung von einem Gerät zu z. B. zwei Prozessoren aufgrund der Bestimmungswerte durchzuführen.
Gemäß einer bevorzugten Ausführungsform der Erfindung gibt jedes der Geräte ein Signal über die Eigengerätenummer als Adreßsignal an den Speicher in einem ersten Schritt ab, wenn ein Unterbrechungserlaubnissignal gemeinsam an jedes Gerät angelegt wird, das anzeigt, daß es jedem Gerät erlaubt ist, jeden Prozessor zu unterbrechen. Entsprechend gibt der Speicher die Bestimmungswerte des Prozessors aus, den das Gerät unterbrechen will. In einem zweiten Schritt wird ein Unterbrechungsbefehlssignal auf Grundlage der Be­ stimmungswerte erzeugt und ein Unterbrechungssignal wird an einen entsprechenden Prozessor auf Grundlage des Unterbrechungsbefehlssignals und des Bestimmungswerts abgegeben. Der Prozessor, an den ein Unterbrechungssignal gelegt ist, erzeugt ein Busanforderungssignal, gemäß dem die Busaus­ wahlschaltung ein Busauswahlsignal erzeugt. Ein Ortsbus des entsprechenden Prozessors ist dann an den Zentralbus gemäß dem Busauswahlsignal angeschlossen.
Wenn daher die Operationen des zweiten Schritts für die einzelnen Prozessoren wiederholt wird, kann eine Unterbrechungssteuerung zu den jeweiligen Prozessoren auf Grundlage der Unterbrechungsanforderungen von allen Geräten durchgeführt werden.
Weitere Eigenschaften, Gesichtspunkte und Vorteile der vorliegenden Erfindung werden anhand der folgenden genauen Beschreibung der vorliegenden Erfindung und anhand von Figuren näher erläutert. Es zeigt
Fig. 1 ein schematisches Blockdiagramm eines Mehrprozessorsystems gemäß dem Stand der Technik;
Fig. 2 ein schematisches Blockdiagramm einer erfin­ dungsgemäßen Ausführungsform;
Fig. 3 ein genaueres Blockdiagramm einer Bussteuerung gemäß Fig. 2;
Fig. 4 ein genaueres Blockdiagramm eines Unterbrechungs­ steuerungsgeräts gemäß Fig. 2;
Fig. 5 ein Diagramm von in einem Lesespeicher gemäß Fig. 4 gespeicherten Werten;
Fig. 6 ein Diagramm von in einem Speicher mit direktem Zugriff gemäß Fig. 4 gespeicherten Werten;
Fig. 7 ein genaueres Blockdiagramm einer Busauwahl­ schaltung gemäß Fig. 2; und
Fig. 8 ein Flußdiagramm zur Erläuterung der Funktion einer erfindungsgemäßen Ausführungsform.
Anhand der Fig. 2 wird nun eine Ausführungsform der vorliegenden Erfindung anhand einer schematischen Struktur näher erläutert. Eine Mehrzahl von Prozessoren 11 bis 1n und eine Busauswahlschaltung 3 entsprechen denen von Fig. 1. Eine Mehrzahl von Geräten 61 bis 6m ist mit einem Zentralbus 5 verbunden. Darüber hinaus ist ein Unterbrechungs­ steuergerät 8 vorhanden, um ein Unterbrechungssignal an jeden der Prozessoren 11 bis 1n entsprechend der Anforderung von einem der Geräte 61 bis 6m anzulegen. Das Unter­ brechungssteuergerät 8 beinhaltet einen Speicher mit Direktzugriff 85, um Werte zu speichern, die angeben, an welchen Prozessor ein Unterbrechungssignal angelegt werden soll, wenn eine Unterbrechungsaufforderung von einem beliebigen der Geräte 61 bis 6m erhalten wird. Der Zentralbus 5 ist mit dem Unterbrechungssteuerungsgerät 8 verbunden. Das Unterbrechungssteuerungsgerät 8 legt ein Unterbrechungserlaubnissignal an jedes der Geräte 61 bis 6m durch den Zentralbus 5. Wenn eines der Geräte 61 bis 6m wenigstens einen der Prozessoren unterbrechen will, wird ein Gerätnummernwert, der das unterbrechende Gerät anzeigt, als Unterbrechungsanforderungssignal an das Unterbrechungssteuergerät 8 durch den Zentralbus 5 gelegt. Das Unterbrechungs­ steuergerät 8 erkennt den zu unterbrechenden Prozessor aufgrund der in dem Speicher 85 gespeicherten Werte und gibt ein Unterbrechungssignal ITR an den Prozessor ab. Wenn ein Anforderungssignal von z. B. niederem Pegel an ein Bussteuergerät 7 von einem beliebigen der Prozessoren 11 bis 1n angelegt wird, legt das Bussteuergerät 7 ein Busbesetztsignal an das Unterbrechungssteuergerät 8 an, so daß eine Unterbrechung durch die Geräte 61 bis 6m verhindert ist. In Fig. 3 ist das Bussteuergerät 7 gemäß Fig. 2 in einem genaueren Blockdiagramm dargestellt. Die Busan­ forderungssignale REQ1 bis REQn von niederem Pegel, die von den Prozessoren 11 bis 1n ausgegeben sind, werden an eine UND-Schaltung 71 angelegt. Die UND-Schaltung 71 ist so ausgeführt, daß ein Busbesetztsignal von niederem Pegel ausgegeben wird, wenn ein beliebiges der Busanforderungssignale eingegeben wird. Die Schaltung ist z. B. mit einer Kombination von Torschaltungen realisiert. Darüber hinaus werden die Busanforderungssignale REQ1 bis REQn auch an einen Codierer 73 durch Torschaltung 721 bis 72n gelegt. Der Codierer 73 beinhaltet einen Priori­ tätscodierer, der die Prozessoren mit höchster Priorität codiert und der die entsprechend codierten Werte an seinen Ausgängen abgibt, entsprechend den Busanforderungssignalen REQ1 bis REQn.
Es sei z. B. angenommen, daß vier Prozessoren vorhanden sind und deren Priorität so festgestellt ist, daß der Prozessor 11 die höchste, der Prozessor 12 die zweithöchste, der Prozessor 13 die dritthöchste und der Prozessor 14 die niedrigste Priorität hat. Wenn dann die drei Prozessoren 11 bis 13 mit höherer Priorität gemeinsam Busanforderungssignale REQ1 bis REQ3 ausgeben, wird ein Code, wie z. B. "1" in Form einer reinen Binärzahl vom Codierer 73 ausgegeben, und an einen Decodierer 74 gelegt. Der Decodierer 74 gibt dann ein Codesignal wie z. B. "0001" an seinen Ausgängen aus. Diese entsprechenden Ausgangssignale vom Decoder 74 werden den Eingängen von Flip-Flops 761 bis 76n zugeführt, die jeweiligen Prozessoren 11 bis 1n entsprechen, und setzen diese Flip-Flops. Um die Flip-Flops 761 bis 76n rückzusetzen, werden Rücksetzeingängen der Flip-Flops Signale von Invertern 751 bis 75n, die die Busan­ forderungssignale REQ1 bis REQn invertieren, zugeführt. Dadurch werden die jeweiligen Flip-Flops 761 bis 76n durch die Ausgangssignale vom Decoder 74 gesetzt und werden rückgesetzt, wenn die Busanforderungssignale REQ1 bis REQn nicht mehr vorliegen oder wenn die Busanforderungssignale hohen Pegel einnehmen. Die entsprechenden Ausgangssignale der Flip-Flops 761 bis 76n werden der Busauswahlschaltung 3 als Auswahlsignal zum Auswählen von Ortsbussen 21 bis 2n zugeführt.
Eine Nullermittlungsschaltung 77 ermittelt, ob der Binärwert aller Ausgänge vom Codierer 73 "0" ist, mit anderen Worten, die Schaltung 77 ermittelt, daß Busanforderungssignale von allen Prozessor 11 bis 1n nicht am Bussteuergerät 7 vorliegen. Ein Nullermittlungssignal, das von der Nullermittlungsschaltung 77 abgegeben wird, ist an Setzeingänge der Flip-Flops 781 bis 78n angelegt. Das Ausgangssignal vom Decoder 74 ist an Rücksetzeingänge der Flip-Flops 781 bis 78n angelegt. Die Ausgangssignale der Flip-Flops 781 bis 78n sind an die oben beschriebenen Torschaltungen 721 bis 72n angelegt. Der Grund, weswegen die Nullermittlungsschaltung 77 und die Flip-Flops 781 bis 78n vorhanden sind, besteht darin, daß eine Situation, in der eine Busanforderung von einem Prozessor mit niedriger Priorität nicht be­ rücksichtigt wird, ausgeschlossen wird, da ja die Priorität der Prozessoren 11 bis 1n vorbestimmt ist. Es sei z. B. angenommen, daß die Prozessoren 11, 12 und 13 gleichzeitig Busanforderungssignale abgeben und danach der Prozessor 14 ein Busanforderungssignal abgibt, und dann auch der Prozessor 11 wieder ein Busanforderungssignal nach Beendigung der Besetzung des Zentralbusses 5 abgibt. In diesem Fall geben die Prozessoren 11 und 14 zuerst Busan­ forderungssignale ab, nachdem die Prozessoren 12 und 13 die Besetzung des Zentralbusses 5 abgeschlossen haben und dadurch besetzt der Prozessor 11 wegen seiner höheren Priorität zunächst den Zentralbus 5, obwohl der Prozessor 14 zuerst ein Busanforderungssignal abgegeben hat.
Wenn kein Anforderungssignal ausgegeben wird, stellt die Nullermittlungsschaltung 77 keine Signale fest, die die Flip-Flops 781 bis 78n setzen. Wenn die Flip-Flops 781 bis 78n gesetzt sind, werden die zugehörigen Torschaltungen 721 bis 72n geöffnet, so daß Busanforderungssignale REQ1 bis REQn am Codierer 73 anliegen. Wenn ein Busanforderungssignal von z. B. dem Prozessor 11 angelegt wird, dann wird das Flip-Flop 781 durch den Ausgang vom Decoder 74 rückgesetzt und die entsprechende Torschaltung 721 ist geschlossen. Daher werden dann Busanforderungssignale REQ1 vom Prozessor 1 mit der höchsten Priorität nur dann angenommen, wenn keine anderen Busanforderungssignale REQ2 bis REQn ausgegeben werden.
In Fig. 4 ist das Unterbrechungssteuergerät gemäß Fig. 2 in einem genaueren Blockdiagramm dargestellt. Das Diagramm von Fig. 5 stellt die Daten dar, die in dem Lesespeicher 83 gemäß Fig. 4 gespeichert sind, und Fig. 6 stellt ein Diagramm dar, das die Daten zeigt, die in dem Speicher 85 mit Direktzugriff gemäß Fig. 4 gespeichert sind. Das Unterbrechungssteuergerät 8 führt eine Unter­ brechungssteuerung aufgrund eines Mikroprogramms durch, das einen Schritt 1 und n-mal einen Schritt 2 umfaßt. Im Schritt 1 wird ein Unterbrechungserlaubnissignal ACK an die Geräte 61 bis 6m durch die Zentralbusleitung 5 abgegeben und es wird ermittelt, ob ein Gerätenummernwert als Unterbrechungsanforderung von einem der Geräte 61 bis 6m zurückgegeben wird. Im Schritt 2 werden die in dem Speicher 85 mit Direktzugriff gespeicherten Werte aufgrund der Gerätenummernwerte von jedem der Geräte 61 bis 6m ausgegeben, so daß der zu unterbrechende Prozessor festgelegt ist und dieser eine Unterbrechungssteuerung erfährt. Die Befehlsfolge im Schritt 2 wird für jeden Prozessor wiederholt. Ein solches Mikroprogramm ist im Lesespeicher 83 gespeichert.
Der Lesespeicher 83 weist Speicherbereiche 830 bis 83n auf, wie dies in Fig. 5 dargestellt ist. Das Programm von Schritt 1 ist im Speicherbereich 830 und das Programm von Schritt 2 ist in den Speicherbereichen 831 bis 83n gespeichert. Das Programm des Schritts 1 beinhaltet einen Adressenwert "0" und ein Ausgangssignal. Das Programm zu Schritt 2 beinhaltet Adreßwerte 1 bis n, ein Auswahlsignal und ein Unter­ brechungsbefehlssignal. Das Programm im Lesespeicher 83 zu jedem Schritt wird sequentiell ausgelesen und im Register 84 gespeichert. Das Unterbrechungserlaubnissignal ACK des Programms, das im Register 84 gespeichert ist, wird gleichzeitig an die jeweiligen Geräte 61 bis 6m durch die Zentralbusleitung 5 angelegt. Der Adreßwert wird an eine Addierschaltung 82 angelegt und das Auswahlsignal wird an einen Multiplexer 81 angelegt und das Unterbrechungsbefehls­ signal wird an einen Eingang von UND-Gliedern 881 bis 88n angelegt. Wenn ein Unterbrechungserlaubnissignal vom Register 84 an die jeweiligen Geräte 61 bis 6m gelegt wird, wird ein Gerätenummernwert als ein Unterbrechungsanforderungssignal an den Speicher 85 mit Direktzugriff und an die Register 86 von jedem der Geräte durch den Zentalbus 5 angelegt. Wie in Fig. 6 dargestellt, weist der Speicher 85 mit Direktzugriff Speicherbereiche für Adressen A bis A+ (m-1) auf. Diese Adressen A bis A+ (m-1) werden entsprechend den Geräten 61 bis 6m geliefert, d. h. Gerätenummern IT0 bis IT(m-1) für jede Adresse. Ein Bitspeicherbereich steht für jeden der Prozessoren 11 bis 1n zur Verfügung und der Wert, der angibt, ob ein Prozeß von einer Anforderung betroffen sein soll oder nicht, ist darin gespeichert. Wenn eine Unterbrechung angefordert ist, ist der logische Wert "1" und wenn keine Unterbrechung angefordert ist, ist der logische Wert "0" gespeichert.
Wenn daher ein Gerätenummernwert als Adreßsignal in den Speicher 85 mit Direktzugriff von irgendeinem der Geräte eingegeben wird, wird ein entsprechender Prozessornummernwert von dem Speicherbereich im Speicher 85 mit Direktzugriff ausgegeben, der dem Adreßsignal entspricht und dieser Wert wird im Register 87 gespeichert. Das Register 87 gibt einen Bestimmungswert aus, der jedem Prozessor jeweils entspricht. Dieser Wert wird an die jeweiligen Eingänge der UND-Gatter 881 bis 88n und an den Multiplexer 81 gelegt. An den Multiplexer 81 wird auch das Busbesetztsignal von dem Bussteuergerät 87 gemäß Fig. 3 gelegt. Das Busbesetztsignal sperrt den Multiplexer 81, so daß dieser Prozessornummernwerte nicht auswählen kann, wenn die Prozessoren 11 bis 1n Busanforderungssignale an das Bussteuergerät 7 abgeben. Der Multiplexer 81 entnimmt Schritt für Schritt einen Prozessornummernwert auf Grundlage eines Aus­ wahlsignals nach dem anderen und legt ein +1-Signal an eine Addierschaltung 82, wenn der logische Wert "1" in einem Prozeßnummernwert vorliegt. Die Addierschaltung 82 addiert +1 zu dem Adreßwert vom Register 84 und gibt das Addierergebnis als Adreßsignal an den Lesespeicher 83.
Die UND-Glieder 881 bis 88n legen Unterbrechungssignale ITR1 bis ITRn an die entsprechenden Prozessoren an, wenn die UND-Glieder 881 bis 88n jeweils einen Prozessornummernwert vom Register 87 und einen Unterbrechungsbefehl vom Register 84 erhalten. Die Register 86 speichern die Gerätenummernwerte und geben diese an den Zentralbus 5 ab. Die Busauswahlschaltung 3 gemäß Fig. 7 weist Auswahleinheiten 31 bis 3n auf, die jeweils einem Prozessor 11 bis 1n entsprechen. Die Ortsbusse 21 bis 2n sind mit den jeweiligen Auswahleinheiten 31 bis 3n verbunden und Auswahlsignale 1 bis n von dem Bussteuergerät 7 werden an die Auswahleinheiten 31 bis 3n jeweils angelegt. Die Ausgänge der Auswahleinheiten 31 bis 3n sind gemeinsam mit dem Zentralbus 5 verbunden.
Es wird nun anhand der Fig. 8 die Funktion einer erfindungsgemäßen Ausführungsform erläutert. In einem Ausgangs­ zustand wird das Programm vom Schritt 1 aus dem Lesespeicher 83 ausgelesen und im Register 84 gespeichert. Ein Un­ terbrechungserlaubnissignal wird an jedes der Geräte 61 bis 6m vom Register 84 durch die Zentralbusleitung 5 angelegt. Entsprechend den jeweiligen Unterbrechungserlaubnissignalen erkennen die jeweiligen Geräte 61 bis 6m, daß eine Unterbrechung durchgeführt werden sollte. Dann gibt ein Gerät, z. B. das Gerät 61, einen Gerätenummernwert IT0 als Unter­ brechungsanforderungssignal an den Zentralbus 5 ab. Der Gerätenummernwert IT0 wird im Register 86 gespeichert und wird auch als Adreßsignal an den Speicher 85 mit direktem Zugriff gelegt. Daraufhin gibt der Speicher 85 mit direktem Zugriff einen Wert von der Adresse A an das Register 87, das den Wert speichert, ab, der den Prozessor 11 angibt, der durch das Gerät 61 unterbrochen werden kann. Dadurch wird nur das erste Bit im Register 87 zu logisch "1". Dieses Signal wird an einen Eingang des UND-Glieds 881 und an den Multiplexer 81 gelegt.
Zu diesem Zeitpunkt hat das Busbesetztsignal hohen Pegel, da der Prozessor 11 kein Busanforderungssignal REQ1 abgibt. Aus diesem Grund entnimmt der Multiplexer 81 ein +1-Signal aus dem Register 87 in Übereinstimmung mit dem Wert, der anzeigt, daß zumindest ein Prozessor vorliegt, der unterbrochen werden soll und er gibt das Signal +1 an die Addierschaltung 82 ab. Die Addierschaltung 82 addiert +1 zum Adreßwert vom Register 84 und gibt das Addierergebnis in den Lesespeicher 83. Daher wird das Programm zu Schritt 2, das in der nächsten Adresse gespeichert ist, vom Lesespeicher 83 ausgegeben und im Register 84 gespeichert. Ein Un­ terbrechungsbefehlssignal vom Register 84 wird an die UND- Glieder 881 bis 88n gelegt. Dabei wird das UND-Glied 881 geöffnet, so daß ein Unterbrechungssignal ITR1 an den Prozessor 11 gelegt wird, da ein Unterbrechungsbefehlswert nur am UND-Glied 881 anliegt. Der Prozessor 11 erhält das Unterbrechungssignal ITR1 und gibt ein Unterbrechungsan­ forderungssignal REQ1 an das Bussteuergerät 7 ab.
Wie in Fig. 3 dargestellt, legt das Bussteuergerät 7 ein Auswahlsignal 1 an die Busauswahlschaltung 3 entsprechend dem Unterbrechungsanforderungssignal REQ1 an. Die Busaus­ wahlschaltung 3 gibt gemäß Fig. 7 auf das Ausgangssignal 1 hin nur die Auswahleinheit 31 frei. Infolgedessen wird der Ortsbus 21 des Prozessors 11 mit den Zentralbus 5 verbunden. Wenn der Ortsbus 21 mit den Zentralbus 5 verbunden ist, liest der Prozessor 11 den Gerätenummernwert IT0, der im Register 86 gespeichert ist. Dementsprechend stellt der Prozessor 11 sofort fest, daß eine Unterbrechungsanforderung vom Gerät 61 vorliegt. Daher tauscht der Prozessor 11 mit dem Gerät 61 über den Ortsbus 21 und den Zentralbus 5 Werte aus.
Wenn dann in einem nächsten Schritt ein Unterbrechungsan­ forderungssignal vom Gerät 62 eingegeben wird, läuft die oben beschriebene Befehlsfolge erneut ab. Wenn die Befehlsfolge von allen Geräten durchgeführt ist, wird die Folge auf den Schritt 1 zurückgesetzt. Wie im Vorstehenden beschrieben, wird gemäß einer Ausführungsform der Erfindung der Wert, der einen Prozessor angibt, der entsprechend jedem Gerät unterbrochen werden soll, im Speicher 85 mit Direktzugriff gespeichert und ein entsprechender Wert wird vom Speicher 85 auf eine Unterbrechungssaufforderung von einem Gerät aus ausgegeben, so daß eine Unterbrechungssteuerung des zugehörigen Prozessors durchgeführt wird. Dementsprechend ist es möglich, eine Unterbrechungssteuerung mit einer beliebigen Kombination einer Anzahl von Prozessoren mit einer beliebigen Anzahl von Geräten durchzuführen. Wenn die Zahl der zu unterbrechenden Prozessoren geändert werden soll, ist es lediglich erforderlich, den Inhalt des Speichers 85 mit Direktzugriff zu ändern.

Claims (6)

1. Mehrprozessorsystem mit
  • - einer Mehrzahl von Prozessoren (11-1n),
  • - einer Mehrzahl von Geräten (61-6m), die gemeinsam von jedem der Prozessoren gesteuert werden können,
  • - einem Zentralbus (5), an den jedes der Geräte angeschlossen ist, und
  • - Ortbussen (21-1n), die die Prozessoren jeweils über eine unter dem Steuereinfluß einer Bussteuerung (7) stehenden Busauswahlschaltung (3) aufgrund eines von einem Prozessor jeweils abgegebenen Busanforderungssignal (REQ1-REQn) mit den Zentralbus verbinden;
  • dadurch gekennzeichnet, daß
  • - ein Unterbrechungssteuergerät (8) vorhanden ist, das Unterbre­ chungserlaubnissignale (ACK) an die an den Zentralbus (5) angeschlossenen Geräte (61-6m) senden kann,
  • - die Geräte (61-6m) Unterbrechungsanforderungssignale in Form ihrer Gerätenummer als Reaktion auf ein Unterbrechungserlaubnissignal (ACK) über den Zentralbus (5) abgeben können,
  • - ein Datenspeicher (85) als Bestandteil des Unterbrechungssteuergeräts (8) zur Speicherung von Bestimmungswerten vorhanden ist, die jeweils wenigstens einen von mehreren Prozessoren (11-1n) angeben, der aufgrund der Unterbrechungsanforderung durch eines der Geräte unterbrochen werden soll,
  • - das Unterbrechungssteuergerät (8) weiterhin in der Lage ist, auf Unterbrechungsanforderungssignale in der Weise anzusprechen, daß es den aus dem Datenspeicher (85) ausgelesenen Bestimmungswerten entsprechende Unterbrechungssignale (ITR1-ITRn) an die betreffenden Prozessoren (61-6m) liefert, sobald kein Zugriff eines Prozessors auf die Zentralbusleitung (5) mehr vorliegt, die daraufhin jeweils ein Busanforderungssignal (REQ1-REQn) an die Bussteuerung (7) abgeben.
2. Mehrprozessorsystem gemäß Anspruch 1, dadurch gekennzeichnet, daß jedem Gerät (61-6m) eine individuelle Bestimmungsnummer von vornherein zugeordnet ist, daß jedes Gerät zum Ausgeben des Unterbrechungsanforderungssignals eine Schaltung aufweist, die dieses Signal auf Grundlage der Bestimmungsnummer ausgibt, daß der Datenspeicher (85) Speicherbereiche aufweist, die den jeweiligen Bestimmungsnummern der Geräte entsprechen, und daß eine Schaltung vorhanden ist, zum Eingeben von Bestimmungswerten der Geräte, die den Bestimmungsnummern entsprechen, in die jeweiligen Speicherbereiche.
3. Mehrprozessorsystem gemäß Anspruch 1 oder 2, dadurch gekennzeichnet, daß das Un­ terbrechungssteuergerät (8) eine Schaltung zum Erzeugen von Unterbrechungserlaubnissignalen aufweist und zum Anlegen dieser Signale an die Geräte, und daß die Geräte (61-6m) jeweils eine Schaltung zum Erzeugen von Unterbrechungsan­ forderungssignalen aufweisen, die auf die Unterbrechungs­ erlaubnissignale hin abgegeben werden.
4. Mehrprozessorsystem gemäß Anspruch 3, dadurch gekennzeichnet, daß das Unter­ brechungssteuergerät (8) eine Schaltung zum Erzeugen von Unterbrechungsbefehlssignalen und zum Anlegen eines Unterbrechungssignals an einen Prozessor (11-1n) aufweist, entsprechend dem aus dem Datenspeicher (85) ausgelesenen Be­ stimmungswert und entsprechend dem Unterbrechungsbefehlssignal.
5. Mehrprozessorensystem gemäß Anspruch 4, dadurch gekennzeichnet, daß es eine Schaltung zum Freigeben eines Unterbrechungsbefehlssignals aufweist, das von der zugehörigen Erzeugerschaltung erzeugt wird, wenn vom Datenspeicher (85) das Vorhandensein oder das Nichtvorhandensein eines Bestimmungswerts angezeigt wird.
6. Mehrprozessorsystem nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Busauswahlschaltung (3) eine Schaltung zum Erzeugen von Busauswahlsignalen auf Grundlage der Busanforderungssignale von den Prozessoren (11-1n) und eine weitere Schaltung aufweist, die auf die Busauswahlsignale anspricht, um die Ortsbusse (21-2n) eines jeweiligen Prozessors (11-1n) mit den Zentralbus (5) zu verbinden.
DE19823224034 1982-06-28 1982-06-28 Mehrprozessorensystem Granted DE3224034A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US06/392,302 US4495569A (en) 1982-06-28 1982-06-25 Interrupt control for multiprocessor system with storage data controlling processor interrupted by devices
DE19823224034 DE3224034A1 (de) 1982-06-28 1982-06-28 Mehrprozessorensystem
CH3944/82A CH657714A5 (de) 1982-06-28 1982-06-28 Mehrprozessorenanlage.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19823224034 DE3224034A1 (de) 1982-06-28 1982-06-28 Mehrprozessorensystem

Publications (2)

Publication Number Publication Date
DE3224034A1 DE3224034A1 (de) 1983-12-29
DE3224034C2 true DE3224034C2 (de) 1991-11-14

Family

ID=6167012

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19823224034 Granted DE3224034A1 (de) 1982-06-28 1982-06-28 Mehrprozessorensystem

Country Status (3)

Country Link
US (1) US4495569A (de)
CH (1) CH657714A5 (de)
DE (1) DE3224034A1 (de)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2547934B1 (fr) * 1983-06-21 1988-12-02 Electricite De France Installation de calcul a commutation automatique de peripheriques et peripherique propre a de telles commutations
US4769768A (en) * 1983-09-22 1988-09-06 Digital Equipment Corporation Method and apparatus for requesting service of interrupts by selected number of processors
KR900002438B1 (ko) * 1984-02-29 1990-04-14 가부시끼가이샤 도오시바 프로세서간 결합방식
US4648029A (en) * 1984-08-27 1987-03-03 International Business Machines Corporation Multiplexed interrupt/DMA request arbitration apparatus and method
JPS61107456A (ja) * 1984-10-30 1986-05-26 Toshiba Corp 割込制御方式
US4870704A (en) * 1984-10-31 1989-09-26 Flexible Computer Corporation Multicomputer digital processing system
US4695945A (en) * 1985-02-28 1987-09-22 International Business Machines Corporation Processor I/O and interrupt filters allowing a co-processor to run software unknown to the main processor
US5297260A (en) * 1986-03-12 1994-03-22 Hitachi, Ltd. Processor having a plurality of CPUS with one CPU being normally connected to common bus
US6379998B1 (en) 1986-03-12 2002-04-30 Hitachi, Ltd. Semiconductor device and method for fabricating the same
JPH0654488B2 (ja) * 1986-03-12 1994-07-20 株式会社日立製作所 プロセツサ
US4914580A (en) * 1987-10-26 1990-04-03 American Telephone And Telegraph Company Communication system having interrupts with dynamically adjusted priority levels
US5257374A (en) * 1987-11-18 1993-10-26 International Business Machines Corporation Bus flow control mechanism
US5148525A (en) * 1987-11-30 1992-09-15 Nec Corporation Microprogram-controlled type bus control circuit
JPH03147013A (ja) * 1989-11-01 1991-06-24 Casio Comput Co Ltd データ更新装置
FR2655446A1 (fr) * 1989-12-05 1991-06-07 Portenseigne Radiotechnique Dispositif pour transferer des donnees.
US5212796A (en) * 1990-01-02 1993-05-18 Motorola, Inc. System with modules using priority numbers related to interrupt vectors for bit-serial-arbitration on independent arbitration bus while CPU executing instructions
EP0461219B1 (de) * 1990-01-02 1996-02-28 Motorola, Inc. Serielle unterbrechung in rechnern
KR940001878B1 (ko) * 1990-03-08 1994-03-10 가부시끼가이샤 히다찌세이사꾸쇼 멀티 프로세서시스템 및 인터럽션 제어장치
US5125093A (en) * 1990-08-14 1992-06-23 Nexgen Microsystems Interrupt control for multiprocessor computer system
US5265255A (en) * 1990-09-24 1993-11-23 International Business Machines Corp. Personal computer system with interrupt controller
JPH04133102A (ja) * 1990-09-26 1992-05-07 Mitsubishi Electric Corp プログラマブル・コントローラ及びその制御方法
US5613128A (en) * 1990-12-21 1997-03-18 Intel Corporation Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller
JP3206006B2 (ja) * 1991-01-25 2001-09-04 株式会社日立製作所 二重化バス制御方法及び装置
JP2625589B2 (ja) * 1991-04-22 1997-07-02 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチプロセッサ・システム
US5487153A (en) * 1991-08-30 1996-01-23 Adaptive Solutions, Inc. Neural network sequencer and interface apparatus
US5410713A (en) * 1992-01-02 1995-04-25 Smith Corona/Acer Power-management system for a computer
US5581770A (en) * 1992-06-04 1996-12-03 Mitsubishi Denki Kabushiki Kaisha Floating interruption handling system and method
JP2729343B2 (ja) * 1992-08-28 1998-03-18 三菱電機株式会社 複数個の処理装置を有する情報処理システムおよびこの情報処理システムにおいて用いられる制御装置ならびに処理装置
EP0590175B1 (de) * 1992-09-28 1996-07-24 Siemens Aktiengesellschaft Prozesssteuerungssystem
EP0602858A1 (de) * 1992-12-18 1994-06-22 International Business Machines Corporation Vorrichtung und Verfahren zur Unterbrechungsbedienung in einem Mehrrechnersystem
GB2277388B (en) * 1993-04-19 1997-08-13 Intel Corp Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller
CA2123447C (en) * 1993-09-20 1999-02-16 Richard L. Arndt Scalable system interrupt structure for a multiprocessing system
JPH07105023A (ja) * 1993-09-20 1995-04-21 Internatl Business Mach Corp <Ibm> データ処理システム内でスプリアス割込みを検出するための方法及び装置
JP3579461B2 (ja) * 1993-10-15 2004-10-20 株式会社ルネサステクノロジ データ処理システム及びデータ処理装置
US5613126A (en) * 1994-05-31 1997-03-18 Advanced Micro Devices, Inc. Timer tick auto-chaining technique within a symmetrical multiprocessing system
US5781187A (en) * 1994-05-31 1998-07-14 Advanced Micro Devices, Inc. Interrupt transmission via specialized bus cycle within a symmetrical multiprocessing system
JP2965133B2 (ja) 1995-08-09 1999-10-18 株式会社日立製作所 プロセッサシステム
US5850555A (en) * 1995-12-19 1998-12-15 Advanced Micro Devices, Inc. System and method for validating interrupts before presentation to a CPU
US5894578A (en) * 1995-12-19 1999-04-13 Advanced Micro Devices, Inc. System and method for using random access memory in a programmable interrupt controller
US5850558A (en) * 1995-12-19 1998-12-15 Advanced Micro Devices System and method for referencing interrupt request information in a programmable interrupt controller
US5737584A (en) * 1996-01-22 1998-04-07 Motorola, Inc. Data processing system having programmable external terminals such that the external terminals are selectively subjected to bus arbitration
US5778236A (en) * 1996-05-17 1998-07-07 Advanced Micro Devices, Inc. Multiprocessing interrupt controller on I/O bus
JP3039918B2 (ja) 1997-03-07 2000-05-08 株式会社日立製作所 プロセッサシステム
US5905897A (en) * 1997-03-20 1999-05-18 Industrial Technology Research Institute Method and apparatus for selecting a nonblocked interrupt request
US6295573B1 (en) 1999-02-16 2001-09-25 Advanced Micro Devices, Inc. Point-to-point interrupt messaging within a multiprocessing computer system
US6205508B1 (en) 1999-02-16 2001-03-20 Advanced Micro Devices, Inc. Method for distributing interrupts in a multi-processor system
US6389526B1 (en) 1999-08-24 2002-05-14 Advanced Micro Devices, Inc. Circuit and method for selectively stalling interrupt requests initiated by devices coupled to a multiprocessor system
US7225285B1 (en) * 2004-09-07 2007-05-29 Altera Corporation Assigning interrupts in multi-master systems
US20080082710A1 (en) * 2006-09-29 2008-04-03 Dell Products L.P. System and method for managing system management interrupts in a multiprocessor computer system
JP2008130056A (ja) * 2006-11-27 2008-06-05 Renesas Technology Corp 半導体回路
US8931127B1 (en) * 2009-06-08 2015-01-13 Paul Moses Compartmented multi-temperature cushioning device
US10684965B2 (en) 2017-11-08 2020-06-16 Advanced Micro Devices, Inc. Method to reduce write responses to improve bandwidth and efficiency

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT361726B (de) * 1979-02-19 1981-03-25 Philips Nv Datenverarbeitungsanlage mit mindestens zwei mikrocomputern
US4271468A (en) * 1979-11-06 1981-06-02 International Business Machines Corp. Multiprocessor mechanism for handling channel interrupts
US4390943A (en) * 1979-12-26 1983-06-28 Honeywell Information Systems Inc. Interface apparatus for data transfer through an input/output multiplexer from plural CPU subsystems to peripheral subsystems

Also Published As

Publication number Publication date
US4495569A (en) 1985-01-22
CH657714A5 (de) 1986-09-15
DE3224034A1 (de) 1983-12-29

Similar Documents

Publication Publication Date Title
DE3224034C2 (de)
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE2313724C3 (de) Elektronische Datenverarbeitungsanlage mit einer Anzahl von Datengeräten, die mit einem gemeinsamen Kontroller nach dem Unterberechnungsprinzip verkehren
DE3300260C2 (de)
DE2856483C2 (de)
DE2354521C2 (de) Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln
DE3338345C2 (de)
DE2015971C3 (de) Datenverarbeitungsanlage mit einer Anzahl von zeitmultiplex von einem zentralen Rechenwerk bedienten virtuellen Prozessoren
DE3049774C2 (de)
DE2030812A1 (de) Modulare Datenrechnersysteme
DE2125507B2 (de) Einrichtung zur Steuerung des Zugriffs von in einem Anforderungsspeicher eingereichten Anforderungen auf der Basis der geringsten Wartezeit
DE3137627C1 (de) Anordnung zur schnellen Nachrichtenuebertragung zwischen Rechnern
DE3535436C2 (de)
EP0050305B1 (de) Einrichtung zur Steuerung des Zugriffes von Prozessoren auf eine Datenleitung
DE3400464C2 (de)
EP0031485A1 (de) Prioritätseinrichtung für eine Einheit einer Datenverarbeitungsanlage mit einer Daten-Sammelleitung
DE2054830A1 (de) Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE2912073C2 (de)
DE2064383C3 (de) Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen
DE1524181B2 (de) Auswahlvorrichtung fuer ein und ausgabegeraete einer daten verarbeitungsanlage
DE3048414A1 (de) &#34;schaltungsanordnung fuer eine datenverarbeitungsanlage&#34;
DE19628039B4 (de) Speicheradressen-Steuerschaltung
DE2749884C2 (de)
DE2751307C2 (de) Einrichtung zur Steuerung einer IS-Glasformmaschine

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: MUELLER, F., DIPL.-ING., PAT.-ANW., 81667 MUENCHEN