CH628167A5 - Prozessoreinrichtung zur prioritaetssteuerung der zugriffe zum gemeinsam benutzten arbeitsspeicher einer mehrprozessoranlage. - Google Patents

Prozessoreinrichtung zur prioritaetssteuerung der zugriffe zum gemeinsam benutzten arbeitsspeicher einer mehrprozessoranlage. Download PDF

Info

Publication number
CH628167A5
CH628167A5 CH208878A CH208878A CH628167A5 CH 628167 A5 CH628167 A5 CH 628167A5 CH 208878 A CH208878 A CH 208878A CH 208878 A CH208878 A CH 208878A CH 628167 A5 CH628167 A5 CH 628167A5
Authority
CH
Switzerland
Prior art keywords
processor
priority
memory
line
circuit
Prior art date
Application number
CH208878A
Other languages
English (en)
Inventor
William David Connors
Dale Milton Junod
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of CH628167A5 publication Critical patent/CH628167A5/de

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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Description

Die Erfindung betrifft eine Prozessoreinrichtung zur Priori- 65 tätssteuerung der Zugriffe zum gemeinsam benutzten Arbeitsspeicher einer Mehrprozessoranlage, wobei jeder Prozessor mit mehreren Registern zur Speicherung lokaler Zugriffsanforderungen, mit einer lokalen Prioritätsschaltung zur Verwertung dieser Zugriffsanforderungen, sowie mit einer Übertragungseinrichtung zur Steuerung der Datenverbindungen zwischen Prozessor und Arbeitsspeicher in beiden Richtungen ausgerüstet ist.
Über die Prioritätsbestimmung des Speicherzugriffs innerhalb eines Prozessors und auch bei mehreren Prozessoren in einem Mehrprozessorsystem gibt es bereits viele Publikationen. Der Wettbewerb um den gleichzeitigen Speicherzugriff durch mehrere Prozessoren in einer Mehrprozessoranlage kann auf verschiedene Art gelöst werden. Eine solche Lösung arbeitet mit vorgegebenen Prioritäten unter mehreren Prozessoren, so dass bei einem gleichzeitigen Zugriff der Prozessor mit der höchsten Priorität zuerst den Zugriff erhält. Dies ist eine Art statischer Priorität, sie ändert sich nicht. Eine andere Lösung besteht darin, die Zugriffsgewährung zwischen mehreren Prozessoren in einem Mehrprozessorsystem abzuwechseln, so dass jeder Prozessor eine bestimmte Phase der wechselnden Zyklen eines Taktgebers zugeteilt erhält. Wenn ein Prozessor während seines Zyklus keine Anforderung stellt, dann bleibt der Zyklus auch durch andere Prozessoren ungenutzt. Das ist eine andere Form einer vorgegebenen Priorität.
Die Aufgabe der vorliegenden Erfindung besteht in der Schaffung einer Einrichtung, durch welche den Prozessoren einer Mehrprozessoranlage die Zugriffe zum gemeinsam benutzten Arbeitsspeicher unter Vermeidung von im voraus festgelegten Prioritäten gewährt werden. Der Zugriff soll dabei nach Bedarf solange gewährt sein, als ein Prozessor laufend und ohne Auslassung eines Speicherzyklus Zugriffsanforderungen stellt, wodurch der Wirkungsgrad der Speicherbelegung erhöht wird. Die genannte Einrichtung ist derart auszuführen, dass sie in jeden Prozessor einer Mehrprozessoranlage integriert werden kann, unabhängig davon, ob die Prozessoren selbständig mit eigenen Speichern oder im Verbund bei Benutzung eines gemeinsamen Arbeitsspeichers operieren.
Diese Aufgabe wird durch die im kennzeichnenden Teil des Patentanspruches 1 aufgeführten Merkmale gelöst.
Mit Hilfe der vorliegenden Erfindung wird nun die Priorität nicht auf der bisher gebräuchlichen statischen Basis zugunsten eines bestimmten Prozessors in einer Mehrprozessoranlage festgelegt, sondern es wird eine dynamische Zuordnung des Zugriffs vorgesehen, die zu verschiedenen Zeiten die Priorität von einem Prozessor zu einem anderen ohne eine vorgegebene Ordnung unter den Prozessoren verschiebt.
Mit Hilfe der Erfindung wird folgende, im Ausführungsbeispiel gezeigte Arbeitsweise ermöglicht:
Jeder Prozessor in einem Mehrprozessorsystem steuert den Speicher mit einem Bündel von Speicheranforderungen an. Ein Bündel dauert so lange, wie ein Prozessor lokal eine Speicheranforderung für jeden folgenden Speicherzyklus stellen kann. Das Bündel endet, sobald ein Prozessorzyklus ohne gestellte Speicheranforderung abläuft. Ein Bündel kann aus einer und bis zu mehreren Dutzend Speicheranforderungen bestehen. Während eines Bündels wird zum gemeinsam benutzten Arbeitsoder Hauptspeicher durch einen Prozessor so rasch zugegriffen, als es die Zykluszeit des Speichers gestattet, wobei eine Störung durch einen anderen Prozessor nicht erlaubt ist. Bei Beendigung eines Bündels erhält ein anderer Prozessor, der eine Speicheranforderung verfügbar hat, die Priorität während des anschliessenden Zyklus, so dass beim Umschalten kein Speicherzyklus verloren geht. Dieser Prozessor arbeitet dann mit der höchsten Priorität weiter, bis er sein Bündel durch Auslassen eines Zyldus beendet, wenn er während eines Zyklus keine Anforderung abgibt. Wenn in einem Speicherzyklus kein Prozessor eine Anforderung macht und während eines nächsten Zyldus zwei Prozessoren gleichzeitig eine Anforderung abgeben, erhält derjenige die Priorität, der zuletzt die Priorität für ein Bündel hatte. So
628 167
wird die Priorität zwischen den Prozessoren hin- und her verschoben, während sie den Hauptspeicher in Anforderungsbündeln ansteuern.
Durch die Erfindung wird der Wirkungsgrad des Mehrprozessorbetriebes dadurch verbessert, dass ungenutzte Speicher- 5 zyklen vermieden werden, während Anforderungen vorliegen. Herkömmliche Prioritätssteuerungen für Mehrprozessorsysteme haben einen niedrigen Wirkungsgrad, weil sie aufgrund ihres Prinzips der Prioritätszuordnung zu verschiedenen Prozessoren im allgemeinen Speicherzyklen unbenutzt lassen. Der höchste 10 Wirkungsgrad für ein Mehrprozessorsystem wird erreicht, wenn die Summe der Speicherzugriffsraten der Prozessoren im System ungefähr 100% der Speicherzugriffsrate des Hauptspeichers beträgt. Wenn die Prozessoren identisch sind, beträgt die optimale Speicherzugriffsrate für jeden Prozessor ungefähr 100/15 N%, worin N die Anzahl der Prozessoren im System ist. Auch bei identischen Prozessormodellen ändert sich natürlich die Speicherzugriffsrate des Prozessors mit den einzelnen programmierten Aufgaben. In einem Mehrprozessorsystem mit zwei grossen Prozessoren wurde festgestellt, dass die interne Zu- 20 griffsrate eines jeden Prozessors 12 bis 15% und die seines Kanals durchschnittlich bei 2% liegt, so dass sich für den einzelnen Prozessor eine Rate von 14 bis 17% der maximalen Hauptspeicherrate ergibt.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnun- 25 gen erklärt und wird anschliessend näher beschrieben.
Es zeigen:
Fig. 1 in einem Blockdiagramm ein Mehrprozessorsystem mit zwei erfindungsgemäss ausgerüsteten Prozessoren, 30
Fig. 2A die Teile einer Prozessor-Speichersteuerung, welche für die Speicheranforderung und -wähl benutzt werden,
Fig. 2B zwei Prioritätszeigerschaltungen und ihre Verbindungen im Ausführungsbeispiel der Erfindung,
Fign. 3 und 4 Speicher-Vermittlungsschaltungen in zwei 35 Übertragungseinheiten eines Mehrprozessorsystems, welche die Datenübertragungen zwischen den zwei Prozessoren und dem gemeinsam benutzten, aus der engen Kopplung der Speichereinheiten eines jeden Prozessors im System entstandenen Hauptspeicher steuern und 40
Fig. 5 Zeitdiagramme mit Beispielen der Zeiteinteilung im Ausführungsbeispiel der Erfindung.
Das in Fig. 1 gezeigte Mehrprozessorsystem ist mit zwei Speichereinheiten 10A und 10B ausgerüstet, die voneinander getrennt in den entsprechenden Prozessoren 12A und 12B an- 45 geordnet sind. Die Speichereinheiten 10A und 10B werden als eine festgekoppelte Hauptspeichereinheit behandelt, die von mehreren Prozessoren in einem Mehrprozessorsystem gemeinsam benutzt wird. Die adressierbare Grösse dieser Hauptspeichereinheit ist gleich der Summe ihrer separaten Adressberei- 50 che. So können z.B. die unteren Adressen im festgekoppelten Speichersystem in der Speichereinheit 10A des Prozessors 12A vorgesehen werden und die oberen Adressen in der Speichereinheit 10B des Prozessors 12B. Davon abweichend kann man die durchgehenden Adressen auch auf lokale Speicherbereiche 55 (LSU) der zwei Speichereinheiten 10 A und 10B in jeder beliebigen Ordnung aufteilen.
Fig. 1 zeigt in einem Blockdiagramm ein Mehrprozessorsystem mit den beiden Prozessoren 12 A und 12B, die über ihre Übertragungseinheiten (MCU) IIA und IIB mit den Speicher- 60 einheiten 10A und 10B verbunden sind. Adress- und Datensammelleitungen 19A bzw. 19B verbinden die Prozessor-Speichersteuerung (PSCF) 16A und 16B in den Prozessoren 12A und 12B mit den entsprechenden Übertragungseinheiten IIA und IIB. Die Bahnen der Adress- und Datensammelleitungen 65 werden dann vervollständigt und laufen von den Übertragungseinheiten 11A und 11B zu den entsprechenden Hauptspeichereinheiten 10A und 10B über die Adress- und Datensammelleitungen 18A bzw. 18B. Prioritätszeigerschaltungen 17A und 17B sind in den Prozessoren vorgesehen. Leitungen 9 verbinden die Prioritätszeigerschaltungen 17A und 17B miteinander. Die Prioritätszeiger-Ausgangsleitungen 20A und 20B verbinden die entsprechenden Prioritätszeigerschaltungen mit den Übertragungseinheiten IIA und IIB, um die Datenübertragung auf den Adress- und Datensammelleitungen vom gewählten Prozessor an das gemeinsame Speichersystem zu leiten. Die Ausgangssignale der Prioritätszeigerschaltungen 17A und 17B leiten entsprechend auch Wahlschaltungen in der Prozessor-Speicher-steuerung 16A bzw. 16B mit entsprechenden Steuersignalen auf den Prozessor-Wahlleitungen 15A und 15B, die die Datenübertragung vom gemeinsamen Speichersystem an einen der gewählten Prozessoren 12 A oder 12B auf der entsprechenden Adress-und Datensammelleitung schalten.
Fig. 2 A zeigt im einzelnen die Speicheranforderungs- und Wahlsteuerung in der Prozessor-Speichersteuerung 16A im Prozessor 12A.
Die Prozessor-Speichersteuerung in Fig. 2A enthält konventionelle Schaltungen zur Erzeugung von Speicheranforderungen, Pufferschaltungen und Prioritätszuweisungsschaltun-gen, wie sie in einem einzelnen Prozessor untergebracht sind. Diese Schaltungen umfassen eine lokale Prioritätsschaltung 64, die alle Prioritätsanforderungen innerhalb des Prozessors bewertet, so dass sie zu einer gegebenen Zeit nur eine Zugriffsanforderung zum Speicher auf einer Leitung 75 A für den Prozessor 12A ausgibt. Eine entsprechende Prozessor-Speichersteuerung 16B im Prozessor 12B gibt ihre Einzelanforderungen auf der Leitung 75B parallel zur Leitung 75 A aus.
Die festgekoppelte Speicheranordnung gestattet somit einem jeden Prozessor den Zugriff zu einem wesentlich grösseren Speichersystem, als er sonst adressieren könnte, wenn seine Zugriffe nur auf seinen eigenen Hauptspeicher beschränkt wären. Jeder der Prozessoren 12A oder 12B hat daher Zugriff zu den Adressen in beiden Hauptspeichereinheiten 10A und 10B, so dass die Systemsteuerprogramme und Daten in den beiden Einheiten 10A und 10B nicht dupliziert werden müssen. Jeder Prozessor besitzt ausserdem die doppelte Verfügbarkeit beider Hauptspeichereinheiten, falls eine von beiden ausfallen sollte.
Wenn beide Speichereinheiten 10A und 10B fest zu einem Hauptspeicher gekoppelt sind, können beide Prozessoren nicht mehr gleichzeitig Speicherzugriffe zu ihren entsprechenden Speichern lOAund 10B vornehmen. Die erfindungsgemässe Mehrprozessor-Prioritätsanordnung kann jedoch die seriellen Zugriffe für beide Prozessoren ungefähr auf der Höhe der Summe der separaten Zugriffsraten für die Prozessoren zu nicht gekoppelten separaten Speichereinheiten lOAund 10B halten. Dabei ist jedoch" vorausgesetzt, dass die Zugriffsrate zum festgekoppelten Hauptspeicher höher ist als die Summe der Speicheranforderungsraten beider Prozessoren. Die heutige Hauptspeichertechnologie besitzt eine Speicherzugriffs-Bandbreite, die eine mehr als doppelt so hohe Speicherzugriffsrate der durchschnittlichen Zugriffsrate grosser Systeme erlaubt.
Ein Konflikt über den Zugriff zum Hauptspeicher des Mehrprozessorsystems liegt nur vor, wenn zwei oder mehr Prozessoren gleichzeitig Zugriff zum Speicher fordern. Durch die Konfliktlösung gemäss vorliegender Erfindung wird die Leistung des gesamten Mehrprozessorsystems verbessert. Der Konflikt wird dadurch gelöst, dass einem adressierenden Prozessor jeder Hauptspeicherzyklus so lange zur Verfügung gestellt wird, als dieser Prozessor Anforderungen präsentiert. Kein anderer darf diesen Prozessor stören. Ein anderer Prozessor erhält Zugriff für seine ausstehenden Anforderungen zum Speicher, sobald ein adressierender Prozessor nicht mehr kontinuierlich in jedem folgenden Speicherzyklus Anforderungen abgibt. Die Anforderungspuffer eines adressierenden Prozessors sind normalerweise am Ende seines Zugriffsbündels, wenn er
628167 4
die Priorität verliert, leer. Der Prozessor und seine Kanaleinhei- diese Prozessorrate nicht über 30 % der Speicherzugriffsrate, ten können trotzdem ohne Verlust des Wirkungsgrades weiter- Solange die Summe der Durchschnittsraten aller Prozessoren arbeiten, da diese Operationen die Anforderungspuffer füllen 100 % der Hauptspeicher-Zugriffsrate nicht übersteigt, kann und das nächste Anforderungsbündel des Prozessors vorberei- der Hauptspeicher alle Anforderungen für alle Prozessoren Otiten. Herkömmliche Prioritätssteuerungen für Mehrprozessorsy- s ne nennenswerte Überlastung annehmen. Für Prozessoren mit steme konnten die Zugriffspriorität von einem adressierenden gleicher Rate in einem Mehrprozessorsystem liegt das optimale Prozessor abschalten, während er noch gepufferte Anforderun- Ratenverhältnis pro Prozessor bei der dem Prozessor gewährten gen verfügbar hatte und für nachfolgende Speicherzyklen lokale durchschnittlich höchsten Zugriffsrate, dividiert durch die höch-Speicherbereiche (LSU) benötigte. So konnte der adressierende ste Speicherzugriffsrate. Dieses Verhältnis sollte ungefähr 1 Prozessor unterbrochen werden, bevor seine Anf orderungspuf- io durch N sein, wobei N die Anzahl von Prozessoren im Mehrpro-fer wirklich geleert waren. Das führte oft dazu, dass die Anfor- zessorsystemist.
derungspuffer bald voll waren und der Prozessor erst weiterarbeiten konnte, wenn sie durch eine später erteilte Zugriffspriori- Die vorliegende Erfindung erreicht also einen maximalen tät geleert wurden. Diese bisherige Arbeitsbehinderung wird Wirkungsgrad für ein Mehrprozessorsystem dadurch, dass sie durch die vorliegende Erfindung vermieden. is iedem Prozessor den Speicherzugriff zur Befriedigung aller aus stehenden, in seinen Registern 56,57,58 und dem Kanalpuffer In Fig. 2A ist gezeigt, dass Zugriffsanforderungen des Pro-, 51 gespeicherten Anforderungen gestattet, solange ein lokaler zessors und der E/A-Geräte auf herkömmliche Art an eine lo- Speicherbereich verfügbar und in der Lage ist, die kontinuierli-kale Prioritätsschaltung 64 gegeben werden. Wie in einer her- che Ausgabe der Anforderungen von der lokalen Prioritäts-kömmlichen Zentraleinheit empfängt die lokale Prioritätsschal- 2o Schaltung 64 auf deren Ausgangsleitung 75 zu stützen. Es kann tung 64 gepufferte Zugriffsanforderungen des E/A-Kanales vorkommen, dass eine gegebene Anforderung nicht in die loka-durch ein UND-Glied 63 und Speicherzugriffsanforderungen le Prioritätsschaltung 64 eingegeben wird, weil der angeforderte des Prozessors durch ein UND-Glied 62, gepuffert durch eines lokale Speicherbereich im Hauptspeicher mit einer anderen Ander Speicheradressregister (STAR) 57 oder 58. Sie empfängt forderung belegt ist und eine andere Anforderung an die lokale auch Prozessor-Abrufanforderungen über das UND-Glied 61, 2s Prioritätsschaltung 64 erhält dann zu dieser Zeit Zugriff. Wenn gepuffert durch ein Abruf-Adressregister (FAR) 56. Die Pro- keine Anforderung an die lokale Prioritätsschaltung 64 während zessor-Anforderungen werden durch die Adressschalter 52 an eines Prozessorzyklus eingegeben wird, wird die zusammenhän-das Abruf-Adressregister 56, das Speicher-Adressregister 57 gende Folge genehmigter Anforderungen auf der Ausgabelei-oder das Speicher-Adressregister 58 gegeben. Jede Anforde- tung 75A unterbrochen.
rung durch das Abruf-Adressregister 56 gilt für die Übertra- 30 Nach Art der vorliegenden Erfindung erfüllt der Hauptspei-gung eines Blocks bestehend aus vier Doppelwörtern mit je acht eher nur Anforderungen von einem Prozessor und nimmt keine Bytes in den Cache-Speicher 53. Eine Anforderung vom Spei- Anforderungen von einem anderen Prozessor an, solange eine cheradressregister 57 oder 58 gilt der Speicherung eines Dop- zusammenhängende Folge genehmigter Anforderungen auf der pelwortes in den Hauptspeicher. Jede Kanalanforderung wird in Ausgangsleitung 75A vorliegt. In einem Mehrprozessôrsystem einem Kanalpuffer 51 gepuffert, der bis zu 24 ausstehende Ka- 35 kann aber diese Folge gewährter Anforderungen von einem nalzugriffsanforderungen puffern kann. Es wird zu einem Zeit- Prozessor nicht lange anhalten. Das Ende der einanderfolgen-punkt jeweils eine der 24 Kanalanforderungen durch ein UND- den Zyklen von Anforderungen von der lokalen Prioritätsschal-Glied 63 weitergeleitet. Jedes Signal der UND-Glieder 61,62 tung 64 definiert das Ende eines Bündels von Zugriffsanforde-und 63 wird nur an die lokale Prioritätsschaltung 64 weitergelei- rangen. Dann kann ein anderer Prozessor den Hauptspeicher tet, wenn der angeforderte lokale Speicherbereich (LSU) für die 40 solange adressieren, bis sein Anforderungsbündel beendet ist. Anforderung zur Verfügung steht. Dieser lokale Speicherbe- Die vorliegende Erfindung erzielt ihren Wirkungsgrad reich kann für jede der gegenwärtig durch die UND-Glieder für durch eine Mehrprozessor-Prioritätsschaltung, die den Fluss die lokale Prioritätsschaltung 64 eingegebenen drei Anforde- von Speicherzugriffen durch einen Prozessor solange nicht un-rungen eine andere sein. Die lokale Prioritätsschaltung 64 wählt terbricht, als dieser den Fluss bei jedem Speicherzyklus aufrecht dann eine dieser drei Anforderungen als ihre Ausgabe und gibt 45 erhalten kann. Sobald er das nicht mehr kann, verliert er die die erste Priorität den E/A-Anforderungen, die zweite Priorität Priorität an einen anderen Prozessor, der einen zusammenhän-den Anforderungen aus dem Speicheradressregister (STAR) genden Zugriffsfluss aufrecht erhalten kann. So geht durch Prio-und die dritte Priorität den Anforderungen aus dem Abruf- ritätsumschaltung für den Zugriff zu dem durch mehrere Pro-
Adressregister (FAR). Auf diese Weise vergibt die lokale Prio- zessoren im Mehrprozessorsystem gemeinsam benutzten ritätsschaltung 64 die lokale Priorität und kann genehmigte An- 50 Hauptspeicher kein Speicherzyklus verloren.
forderungen mit derselben hohen Geschwindigkeit wie die Fig. 2B zeigt im einzelnen die Prioritätszeigerschaltungen
Hauptspeicher-Zyklusraten ausgeben, solange eines der UND- 17A und 17B und ihre gegenseitige Verbindung. In den Priori-Glieder 61,62 oder 63 kontinuierlich Zugriffsanforderungen an tätszeigerschaltungen 17A und 17B wird entschieden, welcher die lokale Prioritätsschaltung 64 gibt und so ein Anforderungs- der gleichzeitig auf den Ausgangsleitungen 75 A und 75B An-bündel am Ausgang der lokalen Prioritätsschaltung 64 erzeugt 55 forderungen abgebenden Prozessoren für den nächsten Speiwird. Diese Anforderungen werden sequentiell über ein cherzugriff zum gemeinsam benutzten Speicher bestehend aus ODER-Glied 72 auf die Ausgangsleitung 75 A für genehmigte den Speichereinheiten 10A und 10B ausgewählt wird. Anforderungen gegeben. Ein Merkmal eines Prozessors besteht In der Prioritätszeigerschaltung 17A werden genehmigte also darin, dass er auf längere Zeit nicht kontinuierlich Anfor- Anforderungen vom Prozessor 12A auf der Leitung 75A emp-derungen an die lokale Prioritätsschaltung 64 mit der Speicher- 60 fangen und durch den Schalter 76A festgehalten, der durch jede zugriffsrate geben kann, weil nach kurzer Zeit entweder die genehmigte Anforderung vom Prozessor 12A für einen Prozes-erforderlichen lokalen Speicherbereiche (LSU) nicht mehr zur sorzyklus neu eingestellt wird. Ein entsprechender Schalter 76B Verfügung stehen oder die Anforderungspuffer leer sind. Die in der Prioritätszeigerschaltung 17B wird durch jede Anforderelativen Raten zwischen dem gemeinsam benutzten Hauptspei- rung von Prozessor 12B auf der Leitung 75B für einen Zyklus eher und einem Prozessor in Fig. 1, betrachtet aus dem Blick- 65 eingestellt.
winkel der lokalen Prioritätsschaltung 64, liegen so, dass auf In der Prioritätszeigerschaltung 17A koordinieren drei lange Sicht die durchschnittliche Prozessorrate unter 50% der UND-Glieder 81A, 82Aund 83A für den Prozessor 12A die Hauptspeicherzugriffsrate liegt. In der Praxis liegt üblicherweise genehmigten Anforderungen, die gegenwärtig von den Prozes-
628 167
soren 12A und 12B abgegeben werden. Die Prioritätszeigerschaltung 17B hat entsprechend identische UND-Glieder 81B, 82B und 83B, die die Priorität für den Prozessor 12B koordinieren.
In der Prioritätszeigerschaltung 17A entsprechen die A- 5 und B-Anforderungsleitungen dem Ausgang des Schalters 76A bzw. Verzweigungen der Leitung 75B. Die Inverter 77A und 78A speisen Komplementleitungen für die Anforderungen A bzw. B. Die Eingänge zum UND-Glied 81A empfangen die A-Anforderung und das B-Anforderungs-Komplement, wäh- io rend die Eingänge zum UND-Glied 82A die A-Anforderung und die B-Anforderung empfangen. Die Eingänge zum UND-Glied 83A empfangen das A-Anforderungs-Komplement und das B-Anforderungs-Komplement. Ein ODER-Glied 86A empfängt die Ausgänge aller UND-Glieder 81A, 82A und 83A 15 sowie einen Ausgang von einem ODER-Glied 84A, das aktiviert wird, wenn eine seiner drei Eingangsleitungen ein Signal überträgt. Diese Eingangsleitungen sind die Leitungen 84A-1, 84A-2 und 84A-3. Die Leitung 84A-1 wird aktiviert, wenn die beiden Speichereinheiten 10A und 10B gemäss den Angaben 20 eines Konfigurationsregister 80A nicht als gemeinsam benutzter Hauptspeicher eines Mehrprozessorsystems verbunden sind, so dass jeder Prozessor nur mit seiner eigenen Speichereinheit arbeitet und die Speichereinheit des anderen Prozessors nicht adressieren kann. 25
Ein Signal auf der Leitung 84A-2 zeigt an, dass der Strom zum Prozessor B abgeschaltet ist und deshalb Prozessor A kontinuierlich Priorität für den gemeinsamen Hauptspeicher erhalten sollte. Ein Signal auf der Leitung 84A-3 zeigt an, dass der Prozessor kein Teil eines Mehrprozessorsystems ist, daher nur 30 Zugriff zu seiner eigenen Hauptspeichereinheit 10A hat und die andere Einheit 10B nicht adressieren kann.
Bei dem in Fig. 2A gezeigten Taktgeber 50 handelt es sich um eine herkömmliche Einrichtung, welche Trigger- und Schaltertaktimpulse für Signale liefert, die gemäss Fig. 5 durch die 35 Prozessorschaltungen geleitet werden. Der Taktgeber 50 gibt Trigger-Taktsignale (C(S) und C(R) ab, die die Einschaltung bzw. Rückstellung der Trigger (T) im Prozessor zeitlich steuern (vgl. Fig. 2B). In ähnlicher Weise steuern die Schalter-Taktsignale C(S) und C(R) zeitlich Einschaltung und Rückstellung der40 selbsthaltenden Schalter (L) im Prozessor. Die Trigger (T) und Selbsthalteschalter (L) können identische bistabile Schaltungen benutzen, werden aber an unterschiedliche Taktsignalleitungen angeschlossen.
45
Ein Trigger (T) 87 A in Fig. 2B wird während der Triggertaktzeit C(S) durch ein Signal auf der Ausgangsleitung des ODER-Gliedes 86A eingeschaltet und ein Schalter (L) 88A wird einen halben Zyklus später während der Schaltertaktzeit C(S) durch ein Ausgangssignal vom Trigger 87A eingeschaltet. 50 Der Trigger 87A und der Schalter 88A werden weniger als einen Zyklus später nach ihrer jeweiligen Einschaltung durch entsprechende Rückstelltaktimpulse C(R) zurückgestellt. Jeder Trigger (T) und jeder Schalter (L) wird daher für weniger als einen Taktzyklus aktiviert, und zwar um einen halben Taktzy- 55 klus gestaffelt. Während seiner aktiven Zeit gibt der Schalter 88A auf der Leitung 20 A ein Signal als Prioritätszeiger A an die Übertragungseinheit (MCU) IIA ab.
Die Signale von Trigger 87A und Schalter 88A veranlassen den nächsten Hauptspeicherzugriff durch den Prozessor 12A. 60 Das Signal auf der Leitung 20A aktiviert die Übertragungseinheit IIA zur Verbindung der Speicheradress-Sammelleitungen und Datensammelleitungen mit dem Prozessor 12A zwecks Übertragung vom Prozessor an den Hauptspeicher. Wenn der Trigger 87A eingeschaltet ist (einen halben Zyklus vor dem 65 Schalter 88A) aktiviert er eine Prioritätsleitung 87A-l. Diese ist an die Prozessor-Speichersteuerung (PSCF) 16A zurückgeführt und leitet für Übertragungen vom Hauptspeicher an den Prozessor 12A ein Signal über die Prozessorwahlleitung 15 A.
Wenn der Trigger 87A eingeschaltet ist, liefert er auch ein Ausgangssignal an die Verbindungsleitung 92 der Prioritätszeigerschaltungen über einen Inverter 91 an UND-Glieder 82B und 83B in der Prioritäts-Zeigerschaltung 17B, um diese daran zu hindern, dem anderen Prozessor 12B die Priorität einzuräumen.
Der Ausgang des Schalters 88A liefert ein Signal, das an die UND-Glieder 82A und 83 A zurückgeführt Wird, so dass diese jede nächstfolgende lokale Speicheranforderung von der Pro-zessor-Speichersteuerung 16A während des laufenden Schalterzyklus durchlassen. Mit dieser Rückkopplungsschaltung wird jede nächste lokale Anforderung, die von der Prozessor-Speichersteuerung 16 A während eines Triggerzyklus abgegeben wird, während eines Schalterzyklus in den Trigger 87A gesetzt, damit die Prioritäts-Zeigerschaltung 17A bei nachfolgenden Zyklen kontinuierlich A-Prioritäts-Zeigersignale auf die Leitung 20 A gibt. Das Triggersignal auf der Leitung 92 sperrt die Eingänge zum Trigger 87B und unterdrückt so Zeigersignale auf der Leitung 20B.
Sobald jedoch ein Schalterzyklus für den Prozessor 12A abläuft, in dem von der Prozessor-Speichersteuerung 16A keine lokale Anforderung kommt, wird der Schalter 76A nicht eingestellt und das Ausgangssignal «keine A-Anforderung» des In-verters 78B wird in der anderen Prioritäts-Zeigerschaltung 17B aktiviert. Ausserdem wird durch das ODER-Glied 86A kein Signal zum Einschalten des Triggers 87A gegeben und der Ausgang 92 des Inverters 91 stellt dann die Schaltungen 82B und 83B in der Prioritäts-Zeigerschaltung 17B ein.
Wenn das Signal «keine Anforderung A» aktiv ist, wird das UND-Glied 81B eingestellt, wodurch es anhängige lokale Anforderungen des anderen Prozessors 12B weiterleitet, für die der Schalter 76B gesetzt wurde. Das Signal einer anhängigen Anforderung wird durch das UND-Glied 81B geleitet, um den Trigger 87B einzuschalten, und dann wird der Schalter 88B einen halben Zyklus später eingestellt, um ein B-Prioritäts-Zei-gersignal auf der Leitung 20B zu erzeugen. Wenn die Prioritäts-Zeigerschaltung 17B einmal ein Zeigersignal liefert, werden die Tore 81A, 82A und 83A in der Zeigerschaltung 17A gesperrt, um die Zeigerschaltung 17A daran zu hindern, die jetzt der Zeigerschaltung 17B eingeräumte Priorität zu stören. Die Prio-ritäts-Zeigerschaltung 17 A wird dadurch gesperrt, dass im Tor 81A das Signal «keine Anforderung B» und in den Toren 82A und 83 A das A-Prioritäts-Zeigersignal von der Leitung 20A abgeschaltet werden. Die Schaltung 17A kann erst wieder Priorität bekommen, wenn ein Zyklus auftritt, in dem der Schalter 76B nicht mehr eingestellt ist und dadurch anzeigt, dass vom Prozessor 12B keine Anforderung vorliegt. Eine anhängige lokale Anforderung, durch die der Schalter 76A während des gesperrten Zustandes der Prioritäts-Zeigerschaltung 17A eingestellt wurde, erlangt für den Prozessor 12A keine Priorität. Der Prozessor 12B hält seine Priorität so lange, als der Schalter 76B bei jedem folgenden Zyklus durch Anforderungen des Prozessors 12B eingestellt wird.
Zu einem gegebenen Zeitpunkt kann also nur eine der beiden Prioritäts-Zeigerschaltungen 17A oder 17B ein Ausgangssignal auf der Leitung 20A bzw. 20B abgeben. Zwischen den Ausgängen der Prioritäts-Zeigerschaltungen 17A und 17B besteht also eine Flipflop-Wirkung.
Das Prioritäts-Zeigersignal auf der Leitung 20A bzw. 20B steuert im Mehrporzessorsystem die Wahl desjenigen Prozessors, der als nächster Zugriff zum gemeinsam benutzten Hauptspeicher erhält. Die Signale auf den Leitungen 20A und 20B schalten dazu die Adress- und Datenleitungen in den Übertra-gungseinheiten IIA und IIB. Die Fign. 3 und 4 zeigen im einzelnen, wie diese Ubertragungseinheiten die Adress- und Datensammelleitungen unter Steuerung von Signalen auf den Prioritäts-Zeigerleitungen 20A bzw. 20B umschalten. Fig. 3
628167 6
zeigt die Durchschaltung der Datenleitung von einem Prozessor 16A und 16B. In Fig. 2A wird z.B. ein Signal auf der Zeigerlei-zum gemeinsam benutzten Hauptspeicher und Fig. 4 die Durch- tung 20A als Signal auf der A-Prioritätsleitung 87A-1 vom
Schaltung der Datenübertragungen vom gemeinsam benutzten Trigger 87A einen halben Zyklus früher an die UND-Glieder
Hauptspeicher zu den Prozessoren A oder B. 66,67 oder 68 abgegeben, von denen eines durch eine ausgege-
In den Figuren 3 und 4 hat jede Ubertragungseinheit Schal- s bene Anforderung von der lokalen Prioritätsschaltung 64 einge-
tungen für jede Bitposition in den Adress- und Datensammel- schaltet wird. Das aktivierte UND-Glied 66,67 oder 68 stellt leitungen für beide Richtungen zwischen Hauptspeicher und je- dann einen der Schalter 71,73 oder 74 zur Erzeugung des dem Prozessor. Die Speicher-Vermittlungsschaltung 11A-1 in Wahlsignales auf der Leitung 15A durch das ODER-Glied 70
Fig. 3 besteht aus den UND-Gliedern 21 und 22 und einem ein.
selbsthaltenden Schalter 24, der durch ein Ausgangssignal von io In Fig. 4 ist gezeigt, wie die Prozessor-Wahlleitung 15 A den einem der UND-Glieder 21 oder 22 eingestellt wird. Ein Ein- Eingang zum Zeitgeber 30 speist, während ein entsprechendes gang zum UND-Glied 21 empfängt eine Bitposition der Adress- Wahlsignal auf der Leitung 15B von der Prozessor-Speicher-
oder Datensammelleitung vom Prozessor 12A, während das Steuerung 16B den Eingang zum Zeitgeber 35 speist. Eine auf
UND-Glied 22 eine entsprechende Bitposition der Adress- der Prioritätszeigerleitung 20A signalisierte Anforderung wird oder Datensammelleitung vom Prozessor 12B empfängt. Das is somit in den Zeitgeber 30 und eine auf der Prioritätszeigerlei-
UND-Glied 21 ist mit einem weiteren Eingang an die A-Prioii- tung 20B signalisierte Anforderung in den Zeitgeber 35 der täts-Zeigerleitung 20A angeschlossen und das UND-Glied 22 anderen Übertragungseinheit eingegeben. Das Wahlsignal wird mit einem weiteren Eingang an das komplementäre Signal der durch die Zeitgeber 30 bzw. 35 verzögert, bis die Datenantwort
Leitung 20A vom Inverter 23. Der Ausgang des Schalters 24 vom Speicher auf den Sammelleitungen 18A-2 bzw. 18B-2 aus-
auf der Sammelleitung 18A-1 wird an die Hauptspeichereinheit 20 gegeben wird. Das Ausgangssignal eines Zeitgebers wird an ei-
10A gegeben. Sobald also einer der Prozessoren 12A oder 12B nes der Tore 31 oder 32 in der Schaltung 11A-2 oder eines der eine Zugriffsanforderung zum Speichern oder Abrufen von Tore 36 oder 37 in der Schaltung 11B-2 eingegeben, abhängig
Daten zur Speichereinheit 10A bewilligt bekommt, werden die davon, welcher der beiden Prozessoren die Anforderung stellt
Adresse für diese Anforderung und die Daten (wenn es eine und welche Speichereinheit den Zigriff gibt. Die Schalter 34
Speicheranforderung ist) durch das UND-Glied 21 bzw. 22 an 2s bzw. 39 leiten die Zugriffsantwort an den anfordernden Prozes-
eine Adresse in die gemeinsam benutzte Speichereinheit 10A sor zurück.
geleitet. Die Prioritäts-Zeigerschaltungen 17A und 17B arbeiten
Die Speicher-Vermittlungsschaltung 11B-1 besteht aus den noch, wenn der Anforderungseingang vom anderen Prozessor UND-Gliedern 26 und 27, dem Inverter 28 und dem selbsthal- beim UND-Glied 82 nicht mehr vorliegt, d.h., das Signal « An-tenden Schalter 29. Die beiden UND-Glieder 26 und 27 emp- 30 forderung B» kann vom Tor 82A und das Signal «Anforderung fangen entsprechende Bitpositionen der Adress- und Daten- A» vom Tor 82B abgeschaltet sein. Entweder Tor 82A oder das Sammelleitungen von den Prozessoren 12A bzw. 12B. Die Tor 82B halten die Einschaltbedingung für ihren Trigger 87 und B-Prioritäts-Zeigerleitung 20B liefert auch ein Signal an das den selbsthaltenden Schalter'88 solange aufrecht, als lokale AnUND-Glied 27 und ein komplementäres Signal über den Inver- forderungen von ihrem entsprechenden Prozessor in aufeinan-ter 28 an das UND-Glied 26. Die Schaltung 11B-1 arbeitet 35 derfolgenden Taktzyklen empfangen werden.
genauso wie die Schaltung 11 A-l und leitet eine Anforderung Fig. 5 zeigt Beispiele der lokalen Zeiteinteilung für einen von einem Prozessor an eine Adresse der gemeinsam benutzten Prozessor, wenn er seine Priorität erhält. Die Trigger-Taktzeit
Speichereinheit 10B. und die Schalter-Taktzeit weisen einen halben Zyklus Abstand
Die Speicher-Vermittlungsschaltungen 11A-2 und 11B-2 in ^ voneinander auf.
Fig. 4 besorgen die Zugriffsübertragung für jede Bitposition in Die oben beschriebene Erfindung lässt sich auf ein Mehr-
der Datensammelleitung vom Hauptspeicher zu einem anfor- porzessorsystem mit N Prozessoren anwenden, wenn das oben dernden Prozessor. Antworten vom Hauptspeicher bringen eine für zwei Prozessoren beschriebene Ausführungsbeispiel erwei-
Verzögerung von mehreren Prozessorzyklen zwischen der An- tert wird. Das geschieht durch Erhöhung der Anzahl von UND-
forderungsempf angszeit durch den Hauptspeicher und der Ant- Gliedern in jedem Satz 81 bis 83 der Prioritäts-Zeigerschaltung wortzeit mit sich. Ein Zeitverzögerungssignal für die Speicher- 17 zur Berücksichtigung aller Kombinationen der Original- und antwort wird von einem Zeitgeber 30 oder 35 für die entspre- Komplementsignale aller Anforderungsschalter 76. In gleicher chenden Prozessoren erzeugt. Weise braucht jede Speicher-Vermittlungsschaltung, wie sie in
Die Prioritäts-Zeigerleitungen 20A und 20B steuern indi- den Fign. 3 und 4 gezeigt ist, ein zusätzliches UND-Glied für rekt die Übertragung durch die Schaltungen 11A-2 und 11B-2 5Q jeden im Mehrprozessorsystem vorgesehenen zusätzlichen Pro-
über die in Fig. 2 A gezeigten Prozessor-Speichersteuerungen zessor.
C
5 Blatt Zeichnungen

Claims (3)

628 167 PATENTANSPRÜCHE
1. Prozessoreinrichtung zur Prioritätssteuerung der Zugriffe zum gemeinsam benutzten Arbeitsspeicher (10A, 10B) einer Mehrprozessoranlage, wobei jeder Prozessor (12A, 12B) mit mehreren Registern (56,57,58) zur Speicherung lokaler Zu- 5 griffsanf orderungen, mit einer lokalen Prioritätsschaltung (64) zur Verwertung dieser Zugriffsanforderungen, sowie mit einer Übertragungseinrichtung (11 A, 11B) zur Steuerung der Datenverbindungen (15A, 19A, 20A; 18A; 15B, 19B, 20B; 18B) zwischen Prozessor (12A, 12B) und Arbeitsspeicher (10A, 10 10B) in beiden Richtungen ausgerüstet ist, dadurch gekennzeichnet, dass eine Prioritätszeigerschaltung (17A, 17B) vorgesehen ist und mit dem Ausgang (75A) der genannten lokalen Prioritätsschaltung (64) in Verbindung steht und dass die Ausgangsleitung (20A, 20B) der Prioritätszeigerschaltung (17A, 15 17B), auf der das Auftreten eines Zeigersignals den dem betreffenden Prozessor (12A, 12B) gewährten Zugriff zum Arbeitsspeicher (10A, 10B) anzeigt, an die genannte Übertragungseinrichtung (IIA, IIB) geführt ist.
2. Prozessoreinrichtung nach Patentanspruch 1, dadurch ge- 20 kennzeichnet, dass die genannte Prioritätszeigerschaltung (17A) erste Schaltmittel (76A, IIA, 78A) zur Übernahme und Weitergabe lokal ausgegebener Zugriffsanforderungssignale, mehrere logische Schaltglieder (81 A, 82A, 83A) zur Verarbeitung der weitergegebenen Zugriffsanforderungssignale und ein 25 erstes bistabiles Schaltelement (87A) umfasst, das an die kombinierten Ausgänge der genannten logischen Schaltglieder (81A, 82A, 83 A) angeschlossen ist, dass ein zweites bistabiles Schaltelement (88A) mit dem Ausgang des ersten bistabilen Schaltelementes (87A) und mit einer ein verzögertes Taktsignal 30 zuführenden Leitung sowie mit der genannten Ausgangsleitung (20A) zwecks Ausgabe des Prioritätszeigersignals für den betreffenden Prozessor (12A) verbunden ist, dass zudem eine Rückkopplungsleitung von dieser Ausgangsleitung (20 A) des zweiten bistabilen Schaltelementes (88A) an Eingänge von we- 35 nigstens zwei der logischen Schaltglieder (82A, 83A) zurückgeführt ist und dass schliesslich vom Ausgang des ersten bistabilen Schaltelementes (87A) über einen Inverter (91) eine Verbindungsleitung (92) an Eingänge entsprechender logischer Schaltglieder (82B, 83B) wenigstens eines weiteren Prozessors (12B) 40 geführt sind.
3. Prozessoreinrichtung nach Patentanspruch 2, dadurch gekennzeichnet, dass die lokale Prioritätsschaltung (64) mehrere Ausgänge für die internen Zugriffsanforderungssignale des Pro- 45 zessors besitzt, wobei aber zu gegebenem Zeitpunkt jeweils nur ein solches Signal verfügbar ist, dass für jeden Ausgang der lokalen Prioritätsschaltung (64) ein weiteres logisches Schaltglied (66,67,68) vorgesehen und je ein Eingang desselben mit einer Rückleitung (87A-1) verbunden ist, deren anderes Ende 50 an den Ausgang des ersten bistabilen Schaltelementes (87A)
der Prioritätszeigerschaltung (17) geschlossen ist, ferner dass die Ausgänge der weiteren logischen Schaltglieder (66,67, 68) je an den Eingang dritter bistabiler Schaltelemente (71,73,74) geführt und deren Ausgänge über ein ODER-Glied (70) an eine 55 Speicherwahlleitung (15A) zur Ausgabe eines Arbeitsspeicher-Wahlsignals geschlossen sind und dass schliesslich die Speicherwahlleitung (15A) mit der genannten Übertragungseinrichtung (IIA) zwecks Steuerung des Durchschaltens von Datenleitungen (18,19) zwischen dem angeforderten Arbeitsspeicher und 60 dem anfordernden Prozessor (12) verbunden ist.
CH208878A 1977-03-16 1978-02-27 Prozessoreinrichtung zur prioritaetssteuerung der zugriffe zum gemeinsam benutzten arbeitsspeicher einer mehrprozessoranlage. CH628167A5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/778,290 US4152764A (en) 1977-03-16 1977-03-16 Floating-priority storage control for processors in a multi-processor system

Publications (1)

Publication Number Publication Date
CH628167A5 true CH628167A5 (de) 1982-02-15

Family

ID=25112847

Family Applications (1)

Application Number Title Priority Date Filing Date
CH208878A CH628167A5 (de) 1977-03-16 1978-02-27 Prozessoreinrichtung zur prioritaetssteuerung der zugriffe zum gemeinsam benutzten arbeitsspeicher einer mehrprozessoranlage.

Country Status (12)

Country Link
US (1) US4152764A (de)
JP (1) JPS53114641A (de)
AU (1) AU516788B2 (de)
BR (1) BR7801217A (de)
CA (1) CA1102427A (de)
CH (1) CH628167A5 (de)
DE (1) DE2809405C3 (de)
ES (1) ES467808A1 (de)
FR (1) FR2384302A1 (de)
GB (1) GB1572972A (de)
IT (1) IT1112605B (de)
SE (1) SE7802563L (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5572273A (en) * 1978-11-25 1980-05-30 Matsushita Electric Ind Co Ltd Multi-cpu system
JPS564854A (en) * 1979-06-22 1981-01-19 Fanuc Ltd Control system for plural microprocessors
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
US4399506A (en) * 1980-10-06 1983-08-16 International Business Machines Corporation Store-in-cache processor means for clearing main storage
JPS57143658A (en) * 1981-03-02 1982-09-04 Nec Corp Microcomputer compounding system
KR860000904B1 (ko) * 1982-06-18 1986-07-16 후지쑤 가부시끼 가이샤 데이타 처리 시스템에 있어서의 악세스 요구 제어장치
JPS58222361A (ja) * 1982-06-18 1983-12-24 Fujitsu Ltd デ−タ処理システムにおけるアクセス要求の優先順位決定制御方式
US4675812A (en) * 1983-02-14 1987-06-23 International Business Machines Corp. Priority circuit for channel subsystem having components with diverse and changing requirement for system resources
US4823256A (en) * 1984-06-22 1989-04-18 American Telephone And Telegraph Company, At&T Bell Laboratories Reconfigurable dual processor system
WO1986000431A1 (en) * 1984-06-27 1986-01-16 Motorola, Inc. Data processor having multiple bus cycle operand cycles
US4751632A (en) * 1984-06-27 1988-06-14 Motorola, Inc. Data processor having multiple cycle operand cycles
US4829467A (en) * 1984-12-21 1989-05-09 Canon Kabushiki Kaisha Memory controller including a priority order determination circuit
DE3502721A1 (de) * 1985-01-28 1986-07-31 Robert Bosch Gmbh, 7000 Stuttgart Multiprozessorsystem
JPH02103656A (ja) * 1988-10-12 1990-04-16 Fujitsu Ltd 主記憶参照の遂次化制御方式
US5680574A (en) * 1990-02-26 1997-10-21 Hitachi, Ltd. Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units
US6728832B2 (en) * 1990-02-26 2004-04-27 Hitachi, Ltd. Distribution of I/O requests across multiple disk units
US5522080A (en) * 1991-10-24 1996-05-28 Intel Corporation Centralized control SIMD processor having different priority levels set for each data transfer request type and successively repeating the servicing of data transfer request in a predetermined order
US5471609A (en) * 1992-09-22 1995-11-28 International Business Machines Corporation Method for identifying a system holding a `Reserve`
US5835953A (en) * 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5649152A (en) * 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US5778374A (en) * 1995-08-03 1998-07-07 International Business Machines Corporation Compressed common file directory for mass storage systems
US5787446A (en) * 1995-08-03 1998-07-28 International Business Machines Corporation Sub-volume with floating storage space
US6442597B1 (en) 1999-07-08 2002-08-27 International Business Machines Corporation Providing global coherence in SMP systems using response combination block coupled to address switch connecting node controllers to memory
US6467012B1 (en) 1999-07-08 2002-10-15 International Business Machines Corporation Method and apparatus using a distributed system structure to support bus-based cache-coherence protocols for symmetric multiprocessors
US6779036B1 (en) 1999-07-08 2004-08-17 International Business Machines Corporation Method and apparatus for achieving correct order among bus memory transactions in a physically distributed SMP system
US6591348B1 (en) 1999-09-09 2003-07-08 International Business Machines Corporation Method and system for resolution of transaction collisions to achieve global coherence in a distributed symmetric multiprocessor system
US6587930B1 (en) * 1999-09-23 2003-07-01 International Business Machines Corporation Method and system for implementing remstat protocol under inclusion and non-inclusion of L1 data in L2 cache to prevent read-read deadlock
US6725307B1 (en) 1999-09-23 2004-04-20 International Business Machines Corporation Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system
US6457085B1 (en) 1999-11-04 2002-09-24 International Business Machines Corporation Method and system for data bus latency reduction using transfer size prediction for split bus designs
US6523076B1 (en) 1999-11-08 2003-02-18 International Business Machines Corporation Method and apparatus for synchronizing multiple bus arbiters on separate chips to give simultaneous grants for the purpose of breaking livelocks
US7529799B2 (en) 1999-11-08 2009-05-05 International Business Machines Corporation Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system
US6516379B1 (en) 1999-11-08 2003-02-04 International Business Machines Corporation Method and apparatus for transaction pacing to reduce destructive interference between successive transactions in a distributed symmetric multiprocessor system
US6542949B1 (en) 1999-11-08 2003-04-01 International Business Machines Corporation Method and apparatus for increased performance of a parked data bus in the non-parked direction
US6684279B1 (en) * 1999-11-08 2004-01-27 International Business Machines Corporation Method, apparatus, and computer program product for controlling data transfer
US6606676B1 (en) 1999-11-08 2003-08-12 International Business Machines Corporation Method and apparatus to distribute interrupts to multiple interrupt handlers in a distributed symmetric multiprocessor system
US6529990B1 (en) 1999-11-08 2003-03-04 International Business Machines Corporation Method and apparatus to eliminate failed snoops of transactions caused by bus timing conflicts in a distributed symmetric multiprocessor system
US6535941B1 (en) 1999-11-08 2003-03-18 International Business Machines Corporation Method and apparatus for avoiding data bus grant starvation in a non-fair, prioritized arbiter for a split bus system with independent address and data bus grants
US7769988B1 (en) * 1999-12-23 2010-08-03 Ati Technologies Ulc Method of integrating a personal computing system and apparatus thereof
JP4578794B2 (ja) * 2003-09-30 2010-11-10 ソニー株式会社 マルチシステム、データ格納部アクセス装置およびデータ格納部アクセス方法
WO2021127802A1 (zh) * 2019-12-23 2021-07-01 深圳市大疆创新科技有限公司 数据存取系统、数据存取设备、数据存取方法及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3566357A (en) * 1966-07-05 1971-02-23 Rca Corp Multi-processor multi-programed computer system
US3573736A (en) * 1968-01-15 1971-04-06 Ibm Interruption and interlock arrangement
US3528061A (en) * 1968-07-05 1970-09-08 Ibm Interlock arrangement
US3603935A (en) * 1969-05-12 1971-09-07 Xerox Corp Memory port priority access system with inhibition of low priority lock-out
DE2137308A1 (de) * 1970-10-12 1972-04-13 Robotron Veb K Schaltungsanordnung mit Wiederholstruktur zur Vermittlung von Speicherzyklen
US3715729A (en) * 1971-03-10 1973-02-06 Ibm Timing control for a multiprocessor system
US3921145A (en) * 1973-10-12 1975-11-18 Burroughs Corp Multirequest grouping computer interface

Also Published As

Publication number Publication date
FR2384302B1 (de) 1982-01-08
US4152764A (en) 1979-05-01
CA1102427A (en) 1981-06-02
DE2809405C3 (de) 1981-04-16
JPS55774B2 (de) 1980-01-10
IT7819699A0 (it) 1978-01-27
FR2384302A1 (fr) 1978-10-13
JPS53114641A (en) 1978-10-06
SE7802563L (sv) 1978-09-17
GB1572972A (en) 1980-08-13
DE2809405B2 (de) 1980-09-04
AU516788B2 (en) 1981-06-25
BR7801217A (pt) 1979-03-13
DE2809405A1 (de) 1978-09-21
ES467808A1 (es) 1978-11-01
AU3378778A (en) 1979-09-13
IT1112605B (it) 1986-01-20

Similar Documents

Publication Publication Date Title
CH628167A5 (de) Prozessoreinrichtung zur prioritaetssteuerung der zugriffe zum gemeinsam benutzten arbeitsspeicher einer mehrprozessoranlage.
DE3300261C2 (de)
DE3909948C2 (de)
DE3300262C2 (de)
DE2760322C2 (de)
DE2451982C2 (de)
DE3300263C2 (de)
DE69632634T2 (de) Arbitrierungseinheit zum Multiprozessorsystembuszugriff mit Wiederholungsfähigkeit
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE1524882A1 (de) Vorrangschaltung fuer Speicher verschiedener Zugriffszeiten
DE2015971C3 (de) Datenverarbeitungsanlage mit einer Anzahl von zeitmultiplex von einem zentralen Rechenwerk bedienten virtuellen Prozessoren
DE1774296B2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
CH657714A5 (de) Mehrprozessorenanlage.
DE2928488A1 (de) Speicher-subsystem
DE2809602A1 (de) Kanalbus-steuereinrichtung
DE2911677A1 (de) Verfahren und schaltungsanordnung zum ueberwachen und verhindern von blockierungen in datenverarbeitungssystemen mit mehreren prozessoren
DE3508321A1 (de) Programmierbare schaltung zur steuerung einer fluessigkristallanzeige
DE69726400T2 (de) Festkörper-datenprozessor mit vielseitiger mehrquellen-unterbrechungsorganisation
EP0062141A1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE3936339A1 (de) Controller fuer direkten speicherzugriff
DE1524181B2 (de) Auswahlvorrichtung fuer ein und ausgabegeraete einer daten verarbeitungsanlage
DE2252182A1 (de) Schnittstellenmultiplexer
DE4406258A1 (de) Informationsverarbeitungsvorrichtung
DE1285218B (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
PL Patent ceased