DE3613428C2 - - Google Patents
Info
- Publication number
- DE3613428C2 DE3613428C2 DE19863613428 DE3613428A DE3613428C2 DE 3613428 C2 DE3613428 C2 DE 3613428C2 DE 19863613428 DE19863613428 DE 19863613428 DE 3613428 A DE3613428 A DE 3613428A DE 3613428 C2 DE3613428 C2 DE 3613428C2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- flop
- flip
- input
- tri
- 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 - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
Die Erfindung betrifft eine Schaltungsanordnung nach dem
Oberbegriff des Patentanspruchs 1.
Sinn und Zweck eines Mehrprozessorsystems ist es, durch
Verteilung der zu lösenden Aufgaben auf mehrere Prozesso
ren die Datenverarbeitungsgeschwindigkeit des Systems zu
erhöhen. Optimale Bedingungen treten bei Parallelarbeit
aller Prozessoren auf. Dazu ist vorteilhafterweise jedem
Prozessor mindestens ein eigener Arbeitsspeicher zugeord
net, auf den der jeweilige Prozessor völlig unabhängig
von den anderen Prozessoren nach Belieben zugreifen kann.
Manche Prozessoren können auch für spezielle Aufgaben mit
einem zur ausschließlichen Benutzung zugeteilten Periphe
riegerät ausgerüstet sein.
Die meisten Peripheriegeräte jedoch müssen mehreren Pro
zessoren zugänglich sein, um eine gewisse Flexibilität im
System zu erhalten und dadurch die Leistungsfähigkeit der
Peripheriegeräte und Prozessoren besser ausnützen zu kön
nen. Physikalisch wird dies durch ein gemeinsames Bussy
stem erreicht, dem des weiteren auch ein den Prozessoren
gemeinsamer Speicherbereich zugeordnet ist, der die Ver
ständigung und Datenübertragung der Prozessoren unterein
ander ermöglicht. Um die vorhandenen Datenmengen zu koor
dinieren, wird der gemeinsame Speicherbereich vereinba
rungsgemäß in Teilbereiche aufgeteilt, über die dann die
Datenübertragung von einem Prozessor zum andern erfolgen
kann.
Diese Speicherteilbereiche sollten, ebenso wie die vorher
erwähnten Peripheriegeräte, von mehreren Prozessoren be
nützbar sein. Somit ist es aber möglich, daß mindestens
zwei Prozessoren zugleich auf dasselbe Betriebsmittel,
bestehend aus einem Peripheriegerät oder einem Speicher
teilbereich zugreifen können.
Um solche Kollisionsfälle zu vermeiden, ist es als ein
fachste Lösung bekannt, den Belegt- oder Freizustand der
von mehreren Prozessoren benützbaren Betriebsmittel in
jeweils einer nur zu diesem Zweck reservierten, als Sema
phor bezeichneten Speicherzelle des gemeinsamen Speicher
bereichs anzuzeigen.
Bevor ein Prozessor auf ein gemeinsames Betriebsmittel
zugreifen möchte, muß er den Inhalt der dem Betriebsmit
tel zugeordneten Speicherzelle abfragen. Wird dabei der
Freizustand des Betriebsmittels erkannt, ist die Spei
cherzelle mit dem Belegtzustand zu beschreiben, bevor der
Zugriff auf das nunmehr den anderen Prozessoren als be
legt gekennzeichnete Betriebsmittel erfolgen darf. Nach
Gebrauch des Betriebsmittels muß wieder der Freizustand
in die Speicherzelle eingetragen werden.
Eine Kollision von Mehrfachzugriffen der Prozessoren
scheint somit ausgeschlossen, jedoch birgt das gemeinsame
Bussystem eine versteckte Lücke, die weitere Kollisions
fälle entstehen lassen kann.
Das gemeinsame Bussystem wird von einer Prioritätssteue
rung in der Regel nach Abschluß eines jeden Buszugriffs
neu an einen der das gemeinsame Bussystem anfordernden
Prozessoren vergeben. Somit kann es vorkommen, daß ein
Prozessor mit einem ersten Buszugriff die einem Betriebs
mittel zugeordnete Speicherzelle ausliest, den Freizu
stand des Betriebsmittels erkennt, ihm aber dann das Bus
system entzogen wird.
Ein anderer Prozessor kann nunmehr dieselbe Speicherzelle auslesen
und auch den Freizustand des Betriebsmittels erkennen.
Eine Kollision der Prozessoren wird die unabdingbare Folge
sein.
Es ist also die Ununterbrechbarkeit der Lese-Schreib-Zugriffe
auf die Speicherzelle notwendig, um die Sicherheit vor einer
Kollision zu gewährleisten. Einige Prozessorsysteme bieten mit
einem Befehl in ihrer Maschinensprache (Lock-Befehl) diese Möglichkeit
an, bei vielen anderen Systemen aber sind aufwendige
Schaltungsanordnungen eingesetzt, die zudem aus Synchronisationsgründen
eine verlängerte Zugriffsdauer auf die Speicherzelle
erfordern und somit das System verlangsamen.
Aus der Patentschrift DD 2 23 556 ist eine Schaltungsanordnung
für einen sogenannten Globalsemaphor zur Vergabe einer Zubegriffsberechtigung
an einen von mehreren ein gemeinsames Bussystem
anfordernden Prozessormoduln bekannt. Mit diesem Globalsemaphor
ist eine Neuvergabe der Zugriffsberechtigung nur unter
der Voraussetzung möglich, daß der zuletzt zugriffsberechtigte
Prozessormodul seine Zugriffsberechtigung von sich aus zurückgegeben
hat.
Die Aufgabe der vorliegenden Erfindung besteht nun darin, eine
Schaltungsanordnung zur Hinterlegung des Belegt- oder Freizustandes
eines Betriebsmittels anzugeben, das über ein mehreren
Prozessoren gemeinsames Bussystem erreichbar ist, wobei die Zugriffsberechtigung
auf das gemeinsame Bussystem einem jeweiligen
Prozessor entzogen werden kann.
Gelöst wird die Aufgabe erfindungsgemäß durch die im kennzeichnenden
Teil des Anspruchs 1 angegebenen Merkmale.
Eine derartige Schaltungsanordnung erfordert zum Eintragen des
Belegt- oder Freizustandes in die Speicherzelle jeweils nur
einen Lese- bzw. Schreibzugriff, sie erhöht dadurch also auch
die Verarbeitungsgeschwindigkeit im System. Umständliche Verriegelungsschaltwerke
werden mit dieser Schaltungsanordnung
überflüssig. Überdies ist keine Anpassung an prozessorspezifische
Eigenschaften oder an die Anzahl der im System vorhandenen
Prozessoren nötig, weshalb die Schaltungsanordnung als universell
verwendbar anzusehen ist.
Eine vorteilhafte Schaltungsanordnung der Erfindung er
gibt sich aus dem Unteranspruch.
Anhand der Zeichnung wird im folgenden ein Ausführungs
beispiel der Erfindung näher erläutert.
Dabei zeigt die Figur die Schaltungsanordnung einer der
in einem Mehrprozessorsystem vorhandenen Speicherzellen,
die jeweils einem von mehreren Prozessoren gemeinsam be
nützbaren Betriebsmittel, bestehend aus einem Peripherie
gerät oder einem Speicherbereich zugeordnet sind.
In der Figur ist eine D-Kippstufe KS, ein erstes UND-
Glied UG 1, ein zweites UND-Glied UG 2 und ein abschaltbarer
Ausgangstreiber TRI dargestellt.
Am D-Eingang D der Kippstufe KS liegt ständig ein aktiver
Signalpegel an, der einem logischen "1"-Wert entspricht.
Der Ausgang Q der Kippstufe KS ist über den abschaltbaren
Ausgangstreiber TRI auch Tri-state-Ausgangspuffer genannt,
mit einer Datenleitung DB eines mehreren Prozessoren
gemeinsamen Bussystems verbunden. Der am D-Eingang D
anliegende logische "1"-Wert wird mit einer fallenden
Flanke am negierten Takteingang der Kippstufe KS synchron
auf den Ausgang Q der Kippstufe KS durchgeschaltet.
Ein erstes UND-Glied verknüpft ein bei Adressierung der
Speicherzelle aktives Adreßbereichsignal SEL und das Lesesignal
RD des momentan auf dem gemeinsamen Bussystem
aktiven Prozessors zu einem Setzsignal SET, das dem negierten
Takteingang der Kippstufe KS und dem Steuereingang
des abschaltbaren Ausgangstreibers TRI zugeführt
ist. Der abschaltbare Ausgangstreiber TRI gibt das an
seinem Eingang anliegende Signal nur bei aktivem Setzsignal
SET an seinen Ausgang weiter.
Das Adreßbereichsignal SEL wird des weiteren von dem
zweiten UND-Glied UG 2 mit dem Schreibsignal WR des momentan
auf dem gemeinsamen Bussystem aktiven Prozessors
zu einem Rücksetzsignal RST verknüpft, das auf den Rücksetzeingang
R der Kippstufe KS geführt ist. Ein aktiver
Signalpegel ("1"-Wert) am Rücksetzeingang R schaltet unabhängig
vom Takteingang, also asynchron, einen "0"-Wert
an den Ausgang Q der Kippstufe KS.
Die Adresse der einem Betriebsmittel zugeordneten Spei
cherzelle ist im gemeinsamen Bussystem festgelegt und
den Prozessoren bekannt, die das zugehörige Betriebsmit
tel benützen können. Ein Prozessor muß, sobald er ein Be
triebsmittel benötigt, zuerst einen Lesezugriff auf die
zugeordnete Speicherzelle ausführen. Während des Lesens
ist das Setzsignal SET aktiv und der Prozessor liest über
die Datenleitung DB den von der Kippstufe KS gespeicher
ten logischen Wert aus. Dabei bedeutet ein logischer
"1"-Wert den Belegtzustand und ein logischer "0"-Wert den
Freizustand des Betriebsmittels.
Wird ein Freizustand erkannt, ist mit Beendigung des Le
sezugriffs der Belegtzustand hinterlegt worden, da mit
einer Deaktivierung des Setzsignals SET die Kippstufe KS
einen logischen "1"-Wert speichert. Bei jedem weiteren
Lesezugriff auf die Speicherzelle wird nunmehr ein Be
legtzustand ausgelesen.
Benötigt nun derjenige Prozessor, der das Betriebsmittel
belegt hatte dieses nicht mehr, muß er es mit einem be
liebigen Schreibzugriff auf die Speicherzelle, wodurch
die Kippstufe KS zurückgesetzt wird, wieder freigeben.
Claims (2)
1. Schaltungsanordnung in einem Mehrprozessorsystem für eine
den Belegtzustand eines von den Prozessoren gemeinsam be
nutzbaren Betriebsmittels anzeigende Speicherzelle, die
von den Prozessoren über ein gemeinsames Bussystem gele
sen und beschrieben werden kann,
dadurch gekennzeichnet, daß als
Speicherzelle eine wenigstens einen synchronen Eingang
aufweisende Kippstufe (KS) vorgesehen ist, bei der an jedem
synchronen Eingang ein konstanter logischer Spannungswert
anliegt, und deren Ausgangssignal über einen
abschaltbaren Ausgangstreiber (TRI) auf eine Datenleitung
(DB) des gemeinsamen Bussystems geführt ist, daß ein Lesesignal
(RD) und ein Adreßbereichsignal (SEL) über eine
erste UND-Verknüpfung (UG 1) zu einem Setzsignal (SET) verknüpft
sind, das auf den Takteingang der Kippstufe (KS)
und auf den Steuereingang des abschaltbaren Ausgangstreibers
(TRI) geführt ist und daß das Adreßbereichsignal
(SEL) über eine zweite UND-Verknüpfung (UG 2) mit einem
Schreibsignal (WR) zu einem Rücksetzsignal (RST) verknüpft
ist, das auf einen asynchronen Eingang (R) der
Kippstufe (KS) geführt ist.
2. Schaltungsanordnung nach Anspruch 1,
dadurch gekennzeichnet, daß als
Speicherzelle eine mit einer fallenden Flanke taktenden
D-Kippstufe (KS) vorgesehen ist, an deren D-Eingang ein
ständig aktives Signal ("1") anliegt, daß das Ausgangssignal
der D-Kippstufe (KS) einem Tri-state-Ausgangspuffer
(TRI) zugeführt ist und daß der Rücksetzeingang (R) der
D-Kippstufe (KS) mit dem Rücksetzsignal (RST) beaufschlagt
ist.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19863613428 DE3613428A1 (de) | 1986-04-21 | 1986-04-21 | Schaltungsanordnung zur anzeige des belegtzustands eines betriebsmittels |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19863613428 DE3613428A1 (de) | 1986-04-21 | 1986-04-21 | Schaltungsanordnung zur anzeige des belegtzustands eines betriebsmittels |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3613428A1 DE3613428A1 (de) | 1987-10-22 |
DE3613428C2 true DE3613428C2 (de) | 1990-02-01 |
Family
ID=6299159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19863613428 Granted DE3613428A1 (de) | 1986-04-21 | 1986-04-21 | Schaltungsanordnung zur anzeige des belegtzustands eines betriebsmittels |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE3613428A1 (de) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DD223556A1 (de) * | 1983-11-03 | 1985-06-12 | Alademie Der Wissenschaften De | Schaltungsanordnung fuer einen globalsemaphor in heterogenen multiprozessorsystemen |
-
1986
- 1986-04-21 DE DE19863613428 patent/DE3613428A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
DE3613428A1 (de) | 1987-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3586352T2 (de) | Busarbiter fuer datenverarbeitungssystem mit einem ein-/ausgabekanal. | |
DE3782045T2 (de) | Rechnersystem mit multikanaldirektspeicherzugriffsarbitrierung. | |
DE69521549T2 (de) | Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten | |
DE68915701T2 (de) | Multiprozessorsystem mit verteilten gemeinsamen Betriebsmitteln und mit Verklemmungsverhinderung. | |
DE69031231T2 (de) | Synchronisierung und Verarbeitung von Speicherzugriffsoperationen | |
DE69834739T2 (de) | Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren | |
DE3689198T2 (de) | Systembus für Kommunikation zwischen Prozessoren. | |
DE68903693T2 (de) | Einrichtung zur datenverarbeitung. | |
DE2523372B2 (de) | Eingabe-ZAusgabe-Anschlußsteuereinrichtung | |
DE69515355T2 (de) | Mehrfacharbitrierungsschema | |
DE69030678T2 (de) | Datenübertragungsbetrieb zwischen zwei asynchronen Bussen | |
DE3049774T1 (de) | Time sharing device for the access to a main memory connected to a single bus between a central computer and a plurality of peripheral computers | |
EP0739509B1 (de) | Anordnung mit master- und slave-einheiten | |
EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
DE69312174T2 (de) | Gerät zur Verwaltung von Zugriffspriorität zu gemeinsamen Betriebsmitteln von unter einer Vielzahl von lokalen Einheiten verteilten Funktionsmodulen, von denen jede eine lokale "Daisy-Chain"-Schaltung formt | |
DE3613428C2 (de) | ||
DE3855718T2 (de) | Ubertragungssystem zwischen Prozessoren in einem Nachrichtenverarbeitungssystem mit Übertragung zwischen Ausführungsprozessoren während Übertragung zwischen anderen Prozessoren | |
DE69827879T2 (de) | Zeitmultiplexschema zur Verklemmungsauflösung in distribuierter Arbitrierung | |
DE10128475A1 (de) | Mehrprozessorsystem mit geteiltem Arbeitsspeicher | |
DE69800095T2 (de) | Schnelles Semaphoreregister mit einer sicheren Arbeitsweise ohne spezifisches Busprotokoll | |
DE69129844T2 (de) | Bussteuervorrichtung | |
DE2900380C2 (de) | ||
DE69329631T2 (de) | Verfahren zur Rückstellung gekoppelter Module und ein dieses Verfahren verwendendes System | |
EP0298220B1 (de) | Betriebsmittelzugriffssynchronisierungseinrichtung für einen Computer mit einer Mehrzahl von Baugruppen | |
DE2252380C3 (de) | Datenverarbeitungsanordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |