DE4204119C2 - Multiprozessorsystem - Google Patents

Multiprozessorsystem

Info

Publication number
DE4204119C2
DE4204119C2 DE4204119A DE4204119A DE4204119C2 DE 4204119 C2 DE4204119 C2 DE 4204119C2 DE 4204119 A DE4204119 A DE 4204119A DE 4204119 A DE4204119 A DE 4204119A DE 4204119 C2 DE4204119 C2 DE 4204119C2
Authority
DE
Germany
Prior art keywords
output
read
data
memory
port
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
Application number
DE4204119A
Other languages
English (en)
Other versions
DE4204119A1 (de
Inventor
Toyokatsu Nakajima
Mitsuru Sugita
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
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4204119A1 publication Critical patent/DE4204119A1/de
Application granted granted Critical
Publication of DE4204119C2 publication Critical patent/DE4204119C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Static Random-Access Memory (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)

Description

Die Erfindung bezieht sich auf ein Multiprozessorsystem mit einem ersten System und einem zweiten System und auf einen Dual-Port-Speicher, der bei der Datenüber­ tragung zwischen den Systemen verwendet wird.
Fig. 3 ist ein Blockschaltbild, welches eine Betriebsausfüh­ rung eines Dual-Port-Speichers zeigt. Nach Fig. 3 weist ein Dual-Port-Speicher 1 zwei Eingangs-/Ausgangs-Ports (Tore) auf. Ein Eingangs-/Ausgangs-Port (im folgenden als A-Port bezeichnet) ist mit einem Host(Wirts)-System 3 über einen Systembus 2 ver­ bunden. Der andere Port (im folgenden als B-Port bezeichnet) des Dual-Port-Speichers 1 ist über einen Systembus 4 mit einem Slave(Sklaven)-System 5 verbunden. Das Host-System 3 und das Slave-System 5 können beliebige Systeme zur Datenverarbeitung sein, oft wird beispielsweise ein eine CPU (Zentralverarbei­ tungseinheit) enthaltendes Multiprozessorsystem verwendet.
Daher enthält das Host-System 3 eine Host-CPU (Wirts-CPU) 31, einen ROM 32 und RAM 33, und das Slave-System 5 enthält eine Slave-CPU (Sklaven-CPU) 51, einen ROM 52 und RAM 53. Im Dual- Port-Speicher 1 ist eine Speichereinrichtung enthalten. Die Speichereinrichtung ist individuell durch das Host-System 3 und das Slave-System 5 zugreifbar.
Ein Dual-Port-Speicher 1 wie oben beschrieben wird oft zum Aus­ tausch von Daten zwischen einem Host-System 3 und einem Slave- System 5 verwendet. Es ist beispielsweise, wenn das Host-System 3 und das Slave-System 5 asynchron zueinander arbeiten, oft schwierig, eine direkte Datenübertragung zwischen den Systemen auszuführen. Die Ausführung der Datenübertragung über den Dual- Port-Speicher 1 erlaubt die Eingabe/Ausgabe von Daten zwischen den Systemen, wenn sie erforderlich ist. Damit wird der Durch­ satz der Systeme verbessert, und die Systeme 3 und 5 arbeiten in Verknüpfung miteinander, so daß ein größeres System aufgebaut werden kann.
Fig. 4 ist ein Blockschaltbild, das eine Ausführungsform des Aufbaues eines bei der Anmelderin vorhandenen Dual-Port-Speichers zeigt. Nach Fig. 4 ist in einem Speicherzellarray 10 eine Mehrzahl von einander kreuz enden Wortleitungen und Bitleitungen angeordnet, und eine Speicherzelle ist jeweils an einem Kreuzungspunkt einer Wortleitung und einer Bitleitung angeordnet. Für das Speicherezellarray 10 sind ein Dekoder 11a und ein Lesever­ stärker 12a für den A-Port und ein Dekoder 11b und ein Lese­ verstärker 12b für den B-Port vorgesehen. A-Port-Adreßdaten vom Host-System 3 werden über einen Adresseneingabeanschluß 13a an den Dekoder 11a angelegt, und B-Port-Adreßdaten vom Slave- System 5 werden über einen Adresseneingangsanschluß 13b an den Dekoder 11b angelegt. Parallel zueinander sind zwischen dem Leseverstärker 12a und dem A-Port-Dateneingabe-/ausgabeanschluß 14a ein 3-Zustands-Puffer 15a zum Schreiben von Daten und ein 3-Zustands-Puffer 16a zum Lesen von Daten angeordnet. Ein Schreibfreigabesignal wird vom Host-System 3 an den 3-Zustands- Puffer 15a, über einen A-Port-Schreibsignaleingangsanschluß 17a angelegt. Der Ausgangszustand des 3-Zustands-Puffers 15a wird auf der Grundlage des Schreibfreigabesignals gesteuert. Ein Lesefreigabesignal wird vom Host-System 3 an den Steueranschluß des 3-Zustands-Puffers 16a über einen A-Port-Lesesignalein­ gangsanschluß 18a angelegt. Der Ausgabezustand des 3-Zustands- Puffers 16a wird auf der Basis des Lesefreigabesignals gesteu­ ert. Ahnlich sind für den B-Port ein 3-Zustands-Puffer 15b zum Schreiben von Daten und 3-Zustands-Puffer 16b zum Lesen von Daten parallel zueinander zwischen einem Leseverstärker 12b und einem B-Port-Dateneingangs-/ausgangsanschluß 14b angeordnet. Ein Schreibfreigabesignal wird vom Slave-System 5 über einen B- Port-Schreibsignaleingangsanschluß 17b an den Steueranschluß des 3-Zustands-Puffers 15b angelegt. Der Ausgabezustand des 3- Zustands-Puffers 15b wird auf der Basis des Schreibfreigabesi­ gnals gesteuert. Ein Lesefreigabesignal wird vom Slave-System 5 an den Steueranschluß des 3-Zustands-Puffers 16b über einen B-Port-Lesesignaleingangsanschluß 18b angelegt. Der Ausgabezu­ stand des 3-Zustands-Puffers 16b wird auf der Basis des Lese­ freigabesignals gesteuert.
Fig. 5 ist ein Schaltbild, welches den Eingangs-/Ausgangsauf­ bau einer Speicherezelle in dem in Fig. 4 gezeigten Speicher­ zellarray 10 zeigt. Eine Mehrezahl von Speicherezellen 101 ist in einer Matrix von Zeilen und Spalten angeordnet. Im Speicher­ zellarray 101 sind, wie in Fig. 5 gezeigt, für jede Zeile für die Speicherezelle 101 zwei Wortleitungen 103a und 103b angeord­ net, und zwei Bitleitungen 104a und 104b sind für jede Spalte angeordnet. Eine Speicherzelle 101 ist mit zwei Transfergate- Transistoren 102a und 102b versehen. Die Wortleitung 103a, die Bitleitung 104a und der Transfergate-Transistor 102a sind in Verknüpfung mit dem A-Port angeordnet. Die Wortleitung 103b, die Bitleitung 104b und der Transfergate-Transistor 102b sind in Verknüpfung mit dem B-Port angeordnet. Beim Dual-Port- Speicher nach den Fig. 4 und 5 sind der A- und der B-Port damit jeweils mit einem völlig separaten und unabhängigen Zu­ griffssystem versehen. Das Speicherzellarray 10 ist daher gleichzeitig vom Host-System 3 und vom Slave-System 5 aus zu­ greifbar.
Beim so aufgebauten Dual-Port-Speicher 1 wird der 3-Zustands- Puffer 15a in Reaktion auf eine Schreibanforderung vom Host­ system 3 aktiviert, und Schreibdaten vom Host-System 3 werden an den Leseverstärker 12a angelegt. Der 3-Zustands-Puffer 15b wird in Reaktion auf eine Schreibanforderung vom Slave-System 5 aktiviert, und Schreibdaten werden an den Leseverstärker 12b angelegt. Weiter wird der 3-Zustands-Puffer 16 in Reaktion auf eine Leseanforderung vom Host-System 3 aktiviert, und der aus einer aktivierten und ausgewählten Speicherezelle ausgelesene Wert wird über den A-Port-Dateneingangs-/ausgangsanschluß 14a an das Host-System ausgegeben. Der 3-Zustands-Puffer 16b wird in Reaktion auf eine Leseanforderung vom Slave-System 5 akti­ viert, und der aus einer aktivierten und ausgewählten Speicher­ zelle ausgelesene Wert wird über den B-Port-Dateneingangs-/aus­ gangsanschluß 14b an das Slave-System 5 ausgegeben.
Wenn ein Multiprozessorsystem aufgebaut wird, wird ein bereits fertiggestellter einzelner Prozessor (z. B. ein Host-System) mitunter mit einem Slave-System versehen, welches einen Teil der Daten vom Host-System verwendet, wodurch das Multiprozes­ sorsystem als Ganzes ausgeführt wird. In diesem Falle kann, wie in Fig. 6 gezeigt, wenn eine Dual-Port-Speicheradresse an der Oberseite des Adreßraumes 34 der Speicher innerhalb des durch die Host-CPU 31 gesteuerten Host-Systems plaziert werden kann, ein Slave-System hinzugefügt werden, ohne daß irgendeine Pro­ grammänderung im Host-System erforderlich wäre, weil der Adreß­ raum der auf der Seite des Host-Systems gesteuerten Speicher nicht ausgeweitet wird.
Üblicherweise hat es sich jedoch als unmöglich herausgestellt, das Adreßgebiet des Dual-Port-Speichers im Adreßraum der Speicher innerhalb des Host-Systems vorzusehen. Wenn die Host- CPU 31 versucht, Daten aus dem Dual-Port-Speicher auszulesen, finden Datenkollisionen statt, weil auch interne Speicherge­ biete, die die gleichen Adressen haben, bestimmt werden.
Daher ist es, wenn ein Slave-System, wie in Fig. 7 gezeigt, zu einem bereits fertiggestellten Host-System hinzugefügt wird, erforderlich, das Adreßgebiet des Dual-Port-Speichers an einem Überlappen mit dem Adreßraum des internen Speichers des Host- Systems zu hindern, und damit ist auf der Seite des Host- Systems eine aufwendige Neuprogrammierung erforderlich.
Dieses eben beschriebene Problem wird genauer unter Bezugnahme auf die Motorsteuerung eines Autos erläutert.
Im Falle der Motorsteuerung eines Autos sind Daten für ein Mo­ torsteuersystem zur Steuerung seiner Übertragungseinrichtungen erforderlich. Jedoch wird in manchen Fällen, wie im Falle eines handgeschalteten Autos wie eines Sportwagens, die Steuerung der Übertragungseinrichtungen nicht durch einen Mikrocomputer aus­ geführt. Mit anderen Worten, von Autos, die mit demselben Motor ausgerüstet sind, ist bei einigen eine Mikrocomputer-Steuerung der Übertragung erforderlich und bei anderen nicht. Wenn ein Mikrocomputersystem zur Motorsteuerung entworfen wird, welches in Rechnung stellt, ob ein Mikrocomputer für die Übertragungs­ steuerung erforderlich ist oder nicht, sind unterschiedliche Programme in Abhängigkeit von der Existenz oder Abwesenheit von Datenübertragungsvorgängen zwischen dem Host-System und dem Dual-Port-Speicher erforderlich, was nachteilig ist und oftmals Probleme bei der Handhabung aufwirft.
Aus Electronik Informationen Nr. 12-1983, Seiten 52, 53 ist ein Multiprozessorsystem nach dem Oberbegriff des Patentanspruches 1 bekannt. Auf den Dual-Port-RAM wird über zwei Busse "quasi gleichzeitig" zugegriffen. Eine Entscheidungslogik ist vorgesehen, die bestimmt, welcher Bus den Vorrang erhält und welcher Bus zugrei­ fen darf. Eine Festlegung von Adressen ist nicht vorgesehen.
Aus dem US-Patent 3,742,458 ist ein Speicherschutzsystem be­ kannt, bei dem ein Adressenregister solche Adressen speichert, für die ein Zugriff verhindert und/oder erlaubt werden soll.
Es ist daher Aufgabe der vorliegenden Erfindung, ein Multipro­ zessorsystem vorzusehen, das eine Verbindung des ersten mit dem zweiten System ermöglicht, ohne daß die CPU des ersten Systemes neu programmiert werden muß. Diese Aufgabe wird gelöst durch ein Multiprozessorsystem mit den Merkmalen des Patentanspruches 1.
Bevorzugte Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen. Ein Dual-Port-Speicher, wie er in dem Multipro­ zessorsystem verwendet wird, führt eine Datenübertragung zwi­ schen dem ersten und dem zweiten System über einen ersten und zweiten Eingangs-/Ausgangs-Port (Tore) aus und ist gleichzeitig von dem ersten und dem zweiten System zugreifbar. Der Dual-Port-Speicher enthält ein Speicher­ zellarray mit einer Mehrzahl von Speicherzellen, eine erste und eine zweite Speicherzellauswahleinrichtung und eine Lesedaten­ ausgabe-Verbietungseinrichtung. Die erste Speicherauswahlein­ richtung wählt auf der Basis von Adreßdaten vom ersten System eine der Speicherzellen im Speicherzellarray aus. Die zweite Speicherzellauswahleinrichtung wählt auf der Grundlage von Adreßdaten vom zweiten System eine der Speicherzellen im Spei­ cherzellarray aus. Die Lesedatenausgabeverbietungseinrichtung verbietet eine Ausgabe von aus der ausgewählten Speicherzelle gelesenen Daten.
Bei dem Dual-Port-Speicher entsprechend der Erfindung wird die Ausgabe von aus der ausgewählten Speicherzelle ausgelesenen Daten durch die Lesedatenausgabeverbietungseinrichtung verboten. Daher finden keine Datenkollisionen statt, wenn das Adreßgebiet des Dual-Port-Speichers sich mit dem Adreßraum der internen Speicher im Host-System überlappt.
Es folgt die Erläuterung von Ausführungsbeispielen anhand der Figuren.
Von den Figuren zeigen:
Fig. 1 ein Blockschaltbild des Aufbaues einer Ausfüh­ rungsform,
Fig. 2 ein Blockschaltbild des Aufbaues einer weiteren Ausführungsform,
Fig. 3 ein Blockschaltbild eines Ausführungsbeispieles der Anwendung eines Dual-Port-Speichers,
Fig. 4 ein Blockschaltbild einer Ausführungsform des Aufbaues eines vorhandenen Dual-Port-Spei­ chers,
Fig. 5 ein Schaltbild, das teilweise den inneren Aufbau eines Speicherzellarrays im Dual-Port-Speicher nach Fig. 4 zeigt,
Fig. 6 eine Darstellung, die ein Beispiel der Plazie­ rungs-Beziehung zwischen dem Speichergebiet einer Host-CPU und einem Dual-Port-Speicherge­ biet zeigt, und
Fig. 7 ist eine Darstellung, die ein weiteres Beispiel für die Plazierungs-Beziehung zwischen dem Spei­ chergebiet einer Host-CPU und einem Dual-Port- Speichergebiet zeigt.
Der in Fig. 1 gezeigte Dual-Port-Speicher (2torige Speicher) ist im wesentlichen identisch mit dem Aufbau des in Fig. 4 gezeigten Dual-Port-Speichers, wobei es nur die fol­ genden wesentlichen Unterschiede gibt. Gleiche Bezugszeichen bezeichnen die gleichen oder entsprechenden Teile bzw. Abschnitte, und deren Beschreibung wird hier nicht wiederholt.
Wie Fig. 1 zeigt, wird ein Leseerlaubnis-/Verbotsinformations­ signal an einen Leseerlaubnis-/Verbotsinformationseingangsan­ schluß 61 angelegt. Das Leseerlaubnis-/Verbotsinformations­ signal kann im Host-System 3 oder im Slave-System 5 nach Fig. 3 oder in einer anderen extern angeordneten Schaltung erzeugt werden. Das Leseerlaubnis-/Verbotsinformationssignal von 1 Bit, das in den Leseerlaubnis-/Verbotsinformationseingangsanschluß 61 eingegeben wird, wird im Leseerlaubnis-/Verbotsregister 62 gespeichert. Das Leseerlaubnis-/Verbotsregister 62 ist bei­ spielsweise aus einem Flip-Flop, der zur Speicherung von Daten von mindestens 1 Bit in der Lage ist, gebildet. Der Ausgang des Leseerlaubnis-/Verbotsregisters 62 wird an einen Eingangsan­ schluß eines UND-Gatters 63 angelegt. Ein Lesefreigabesignal wird vom Host-System 3 an den anderen Eingangsanschluß des UND- Gatters 63 über den A-Port-Lesesignaleingangsanschluß 18a ange­ legt. Der Ausgang des UND-Gatters 63 wird an den Steueranschluß des 3-Zustands-Puffers 16a zum Lesen aus dem A-Port angelegt. Nachfolgend wird die Betriebsweise der in Fig. 1 gezeigten Ausführungsform beschreiben.
Die Beschreibung wird für den Fall gegeben, daß im Leseerlaub­ nis-/Verbotsregister 62 eine Leseerlaubnis-/Verbotsinformation aufhohem Pegel vorhanden ist. In diesem Falle wird an einen Eingangsanschluß des UND-Gatters 63 vom Leseerlaubnis-/Verbots­ register 62 ein H-Pegel-Signal angelegt. In diesem Zustand wird über den A-Port-Lesesignaleingangsanschluß 18a ein Lesefreiga­ besignal auf H-Pegel vom Host-System 3 eingegeben, wenn vom Host-System 3 eine Leseanforderung ausgegeben wird. Das Lese­ freigabesignal auf H-Pegel wird an den anderen Eingangsan­ schluß des UND-Gatters 63 angelegt. Der Ausgang des UND-Gatters 63 nimmt daher H-Pegel an. Infolgedessen wird der 3-Zustands- Puffer 16a aktiviert, und der aus der Speicherzelle ausgelesene Wert wird über den 3-Zustands-Puffer 15a und den A-Port-Daten­ ein-/ausgangsanschluß 14a an das Host-System 3 ausgegeben.
Nachfolgend wird eine Beschreibung für den Fall gegeben, daß im Leseerlaubnis-/Verbotsregister 62 eine Leseerlaubnis-/Verbots­ information auf L-Pegel vorhanden ist. Das Potential des einen Eingangsanschlusses des UND-Gatters 63 ist konstant auf L-Pegel, und damit bleibt der Ausgang des UND-Gatters 63 auch dann auf L-Pegel, wenn vom Host-System 3 eine Leseanforderung ausgegeben wird. Der 3-Zustands-Puffer 16a ist daher in einem Zustand hoher Impedanz (einem hochohmigen Zustand), und ein von einer Speicherzelle ausgelesener Wert kann den 3-Zustands-Puf­ fer 16a nicht passieren. Damit wird eine Datenkollision verhin­ dert. Mit anderen Worten, sind eine Adresse im internen Speicher des Host-Systems und eine entsprechende Adresse des Speicher­ zellarrays 10 gleichzeitig bestimmt, und der vom Speicherzell­ array 10 ausgelesene Wert wird nicht an das Host-System 3 aus­ gegeben, wodurch eine Datenkollision verhindert wird.
Die anderen Betriebsmerkmale der in Fig. 1 gezeigten Ausfüh­ rungsform sind im wesentlichen dieselben wie bei der in Fig. 4 gezeigten Ausführungsform. Mit anderen Worten ist das Host- System 3 in der Lage, Daten in ein Speicherzellarray 10 einezu­ schreiben, und das Slave-System 5 ist in der Lage, Daten in das Speicherzellarray 10 einezuschreiben und daraus auszulesen.
Obgleich die Ausgabe von aus allen Speicherezellen im Speicher­ zellarray 10 ausgelesenen Daten verboten ist, wenn eine Lesean­ forderung vom Host-System 3 in dem Zustand ausgegeben wird, in dem eine L-Pegel-Leseerlaubnis-/Verbotsinformation im Leseer­ laubnis-/Verbotsregister 62 verankert ist, kann (in einer ande­ ren Ausführungsform) statt dessen auch die Ausgabe von aus einem Teil der Speicherzellen im Speicherzellarray ausgelesenen Wer­ ten verboten werden. Eine solche Ausführungsform wird im fol­ genden beschrieben.
Fig. 2 ist ein Blockschaltbild, das den Aufbau einer weiteren Ausführungsform der Erfindung zeigt. Die in Fig. 2 gezeigte Ausführungsform hat - mit den folgenden wesentlichen Unter­ schieden - einen im wesentlichen mit der in Fig. 1 gezeigten Ausführungsform identischen Aufbau. Gleiche Bezugszeichen be­ zeichnen gleiche oder einander entsprechende Teile, und deren Beschreibung wird nicht wiederholt.
Nach Fig. 2 wird von einem Leseerlaubnis-/Verbotsinformations­ signal-Eingangsanschluß 65 ein Leseerlaubnis-/Verbotsinforma­ tionssignal von beispielsweise 4 Bit eingegeben. Das Speicher­ zellarray 10 ist in 4 Untergebiete aufgeteilt, und die 4-Bit- Leseerlaubnis-/Verbotsinformation entspricht jedem der Unterge­ biete. Das vom Leseerlaubnis-/Verbotsinformations-Eingangsan­ schluß 65 eingegebene 4-Bit-Leseerlaubnis-/Verbotsinformations­ signal wird in einem Leseerlaubnis-/Verbotsregister 66 gespei­ chert. Das Leseerlaubnis-/Verbotsregister 66 ist beispielsweise aus 4 Flip-Flops aufgebaut, so daß darin eine 4-Bit-Leseerlaub­ nis-/Verbotsinformation gespeichert werden kann. Die von den Flip-Flops im Leseerlaubnis-/Verbotsregister 66 ausgegebenen Ausgangswerte Q1 bis Q4 werden jeweils an einen Eingangsan­ schluß der UND-Gatter AG1 bis AG4 angelegt. Ein Adreßdekoder 67 dekodiert die vom Host-System 3 über den Adreßeingangsanschluß 13a angelegten Adreßdaten und gibt dekodierte Signale S1 bis S4 aus. Diese dekodierten Signale S1 bis S4 werden an die anderen Eingangsanschlüsse der UND-Gatter AG1 bis AG4 angelegt. Die de­ kodierten Signale S1 bis S4 vom Adreßdekoder 67 entsprechen je­ weils einem Untergebiet im Speicherzellarray 10. Mit anderen Worten nimmt, wenn ein Zugriff auf das erste Untergebiet im Speicherzellarray 10 ausgeführt wird, das dekodierte Signal S1 H-Pegel an, und die anderen dekodierten Signale S2 bis S4 nehmen L-Pegel an. Auch wenn ein Zugriff auf das zweite Unter­ gebiet im Speicherzellarray 10 ausgeführt wird, nimmt nur das dekodierte Signal S2 H-Pegel an, und die anderen dekodierten Signale S1, S3 und S4 nehmen L-Pegel an. Analog nehmen, wenn ein Zugriff auf das dritte oder vierte Untergebiet ausgeführt wird, nur die dekodierten Signale S3 oder S4 H-Pegel an.
Die Ausgänge (Ausgangswerte) der UND-Gatter AG1 bis AG4 werden an das ODER-Gatter OG angelegt. Der Ausgang des ODER-Gatters OG wird an einen Eingangsanschluß des UND-Gatters 63 angelegt. Ein Lesefreigabesignal wird vom Host-System 3 an den anderen Ein­ gangsanschluß des UND-Gatters 63 über den A-Port-Lesesignalein­ gangsanschluß 18a angelegt. Der Ausgang des UND-Gatters 63 wird an den Steueranschluß des 3-Zustands-Puffers 16a zum Auslesen vom A-Port angelegt. Im folgenden wird die Betriebsweise der in Fig. 2 dargestellten Ausführungsform beschrieben. Das Gerät der in Fig. 2 gezeigten Ausführungsform ist in der Lage, die Ausgabe von aus einem Teil der Mehrzahl der Speicherzellen im Speicherezellarray 10 ausgelesenen Daten zu verbieten. Mit ande­ ren Worten kann das Ausgabeverbot der ausgelesenen Daten für jeden Zellblock gesteuert werden. Im folgenden wird der Fall beschrieben, daß die Ausgabe von aus dem ersten Unterblock und dem zweiten Unterblock im Speicherzellarray 10 ausgelesenen Da­ ten verboten ist. In diesem Falle ist innerhalb des Informa­ tionsgehaltes der Leseerlaubnis-/Verbotsinformation von 4 Bit im Leseerlaubnis-/Verbotsregister 66 das erste Bit auf L-Pegel, das zweite Bit auf L-Pegel, das dritte Bit auf H-Pegel und das vierte Bit auf H-Pegel. Die Pegel der Ausgangssignale Q1 und Q2 vom Leseerlaubnis-/Verbotsregister 66 nehmen L-Pegel an, und die Signale Q3 und Q4 nehmen H-Pegel an. Wenn im Host-System 3 in diesem Zustand eine Leseanforderung für den ersten Unter­ block im Speicherzellarray 10 erzeugt wird, bringt der Adreß­ dekoder 67 nur das dekodierte Signal S1 auf H-Pegel, und die anderen dekodierten Signale S2 bis S4 werden auf L-Pegel gezo­ gen, obwohl das dekodierte Signal S1 H-Pegel an das UND-Gatter AG1 L-Pegel annimmt, weil das Ausgangssignal Q1 des Leseerlaub­ nis-/Verbotsregisters 66, wie oben beschrieben, auf L-Pegel ist. Die Ausgänge der anderen UND-Gatter AG2 bis AG4 nehmen L-Pegel an, weil die dekodierten Signale S2 bis S4 auf L-Pegel sind. Demnach werden in das ODER-Gatter OG nur Signale auf L-Pegel eingegeben, wodurch dessen Ausgänge auf L-Pegel sind. Der Ausgang des UND-Gatters 63 nimmt L-Pegel an. Dies erlaubt dem 3-Zustands-Puffer 16a, in einem hochohmigen Zustand zu sein, wodurch die Ausgabe von aus dem ersten Unterblock im Speicher­ zellarray 10 ausgelesenen Daten verboten wird.
Unter der Annahme, daß im Host-System 3 eine Anforderung zum Lesen aus dem zweiten Unterblock im Speicherzellarray 10 erzeugt wird, zieht der Adreßdekoder 67 nur das dekodierte Signal S2 auf H-Pegel und hält die anderen dekodierten Signale S1, S3 und S4 auf L-Pegel. Der Ausgang des UND-Gatters AG2 ist auf L-Pegel, weil das Signal Q2 auf L-Pegel daran angelegt ist. Die Ausgänge der anderen UND-Gatter AG1, AG3 und AG4 sind auf L-Pegel, da daran die dekodierten Signale S1, S3 und S4 auf L-Pegel angelegt sind. Infolgedessen wird auch in diesem Falle, ähnlich wie im Falle der Leseanforderung aus dem ersten Unter­ block, an den Steueranschluß des 3-Zustands-Puffers 16a über das UND-Gatter 63 ein Signal auf L-Pegel angelegt, und der 3- Zustands-Puffer 16a nimmt einen hochohmigen Zustand an. Im Er­ gebnis dessen ist die Ausgabe von aus dem zweiten Unterblock im Speicherarray 10 ausgelesenen Daten verboten.
Wenn im Host-System 3 eine Anforderung zum Lesen von Daten aus dem dritten Unterblock im Speicherezellarray 10 erzeugt wird, bringt der Adreßdekoder 67 das dekodierte Signal S3 auf H-Pegel und die anderen dekodierten Signale S1, S2 und S4 auf L-Pegel. Das dekodierte Signal S3 auf H-Pegel und das Signal Q3 auf H-Pegel werden an das UND-Gatter AG3 angelegt, und damit nimmt dessen Ausgang H-Pegel an. Der Ausgangswert des UND-Gatters AG3 auf H-Pegel wird an einen Eingangsanschluß des UND-Gatters 63 über das ODER-Gatter OG angelegt. Vom Host-System 3 wird über den A-Port-Lesesignaleingangsanschluß 18a an den anderen Eingangsanschluß des UND-Gatters 63 ein Lesefreigabesignal auf H-Pegel angelegt, und damit nimmt der Ausgang des UND-Gatters 63 H-Pegel an. An den Steueranschluß des 3-Zustands-Puffer 16a wird ein Signal auf H-Pegel angelegt und damit der 3-Zustands- Puffer 16a aktiviert. Im Ergebnis dessen werden die vom dritten Unterblock im Speicherezellarray ausgelesenen Daten über den 3- Zustands-Puffer 16a und den A-Port-Dateneingangs-/Ausgangsan­ schluß 14a an das Host-System 3 ausgegeben.
Wenn im Host-System 3 eine Anforderung zum Lesen aus dem vierten Untergebiet im Speicherzellarray 10 erzeugt wird, bringt der Adreßdekoder 67 nur das dekodierte Signal S4 auf H-Pegel und die anderen dekodierten Signale S1 bis S3 auf L-Pegel. Das UND-Gatter AG4 wird daher mit dem dekodierten Signal S4 auf H-Pegel und dem Signal Q4 auf H-Pegel versorgt, und der Ausgang des Gatters nimmt H-Pegel an. Das Ausgangssignal vom UND-Gatter AG4 auf H-Pegel wird an einen Eingangsanschluß des UND-Gatters 63 über das ODER-Gatter OG angelegt. Gleichzeitig wird an den anderen Eingangsanschluß des UND-Gatters 63 vom Host-System 3 über den A-Port-Lesesignaleingangsanschluß 18a ein Lesefreigabesignal angelegt. Dies erlaubt es dem Ausgang des UND-Gatters 63, H-Pegel anzunehmen, und das Signal auf H-Pegel wird an den Steueranschluß des 3-Zustand-Puffers 16a angelegt. Die vom vierten Untergebiet im Speicherzellarray 10 ausgelesenen Daten werden über den 3-Zustands-Puffer 16a und den A-Port-Dateneingangs-/Ausgangsanschluß 14a an das Host- System 3 ausgegeben.
Wie oben beschrieben, ist die in Fig. 2 gezeigte Ausführungs­ form in der Lage, nur die Ausgabe von aus dem ersten und zwei­ ten Untergebiet im Speicherezellarray 10 gelesenen Daten zu ver­ bieten. Es ist unnötig zu sagen, daß die Kombination der Unter­ gebiete, in Bezug auf die die Ausgabe gelesener Daten verboten sein Soll, durch Verändern der Inhalte der Leseerlaubnis-/Verbotsin­ formation, die im Leseerlaubnis-/Verbotsregister 66 verankert ist, beliebig verändert werden kann. Infolgedessen kann die Ausgabe von aus einem mit dem Adreßraum des internen Speichers des Host-Systems überlappenden Untergebiet verboten werden.
Obgleich bei den beschriebenen Ausführungsformen die Ausgabe gelesener Daten an eines der beiden Systeme, die sich den Dual- Port-Speicher teilen, verboten wird, kann die Ausgabe ausgele­ sener Daten an das andere System verboten werden, und weiterhin kann die Ausgabe ausgelesener Daten an beide Systeme verboten werden.
Wie oben beschrieben, kann das Adreßgebiet des Dual-Port-Speichers so plaziert sein, daß es den Adreßraum des internen Speichers des Systems, das den Dual- Port-Speicher nutzt, ohne die Erzeugung von Datenkollisionen überlappt. Infolgedessen ist, wenn einem bereits fertiggestell­ ten Host-System ein Slave-System hinzugefügt wird, keine Verän­ derung in der Programmierung des Host-Systems erforderlich, was erheblich den Entwurf vereinfacht und mit der Handhabung des Entwurfes verbundene Fehler verringert.

Claims (9)

1. Multiprozessorsystem mit einem ersten System und einem zwei­ ten System, mit einem Dual-Port-Speicher zum Verbinden des ersten Systems mit dem zweiten System, wobei das erste System eine CPU und einen Speicher aufweist, der in einem vorgegebenen Adreßraum adressierbar ist, dadurch gekennzeichnet,
daß dem Dual-Port-Speicher Adressen in dem Adreßraum zugeordnet werden und
daß eine Lesedatenausgabeverbietungseinrichtung (16a, 62, 63, 66, 67, AG1, AG4, OG) zum Verbieten der Ausgabe von aus den ausgewählten Speicherzellen des Dual-Port-Speichers ausgelesenen Daten vorgesehen ist.
2. Multiprozessorsystem nach Anspruch 1, dadurch gekennzeich­ net, daß die Lesedatenausgabeverbietungseinrichtung die Ausgabe gelesener Daten auf das erste oder zweite System verbietet.
3. Multiprozessorsystem nach Anspruch 1, dadurch gekennzeich­ net, daß die Lesedatenausgabeverbietungseinrichtung die Ausgabe gelesener Daten sowohl an das erste als auch an das zweite Sy­ stem verbietet.
4. Multiprozessorsystem nach einem der Ansprüche 1 bis 3, da­ durch gekennzeichnet, daß die Lesedatenausgabeverbietungsein­ richtung die Ausgabe von aus allen Speicherzellen im Speicher­ zellarray gelesenen Daten verbietet.
5. Multiprozessorsystem nach einem der Ansprüche 1 bis 3, da­ durch gekennzeichnet, daß die Lesedatenausgabeverbietungsein­ richtung die Ausgabe von aus einem Teil der Speicherzellen im Speicherzellarray ausgelesenen Daten verbietet.
6. Multiprozessorsystem nach einem der Ansprüche 1 bis 5, da­ durch gekennzeichnet, daß die Lesedatenausgabeverbietungsein­ richtung eine Gattereinrichtung (16a) zum Puffern von aus den Speicherzellen ausgelesenen Daten und eine Steuereinrich­ tung (63, 66, 67, AG1 bis AG4) zum Steuern des Öffnens und Schließens der Gattereinrichtung (16a) aufweist.
7. Multiprozessorsystem nach Anspruch 6, dadurch gekennzeich­ net, daß die Steuereinrichtung das Öffnen und Schließen der Gat­ tereinrichtung auf der Grundlage einer extern festgelegten Lese­ erlaubnis-/Verbotsinformation steuert.
8. Multiprozessorsystem nach Anspruch 6, dadurch gekennzeich­ net, daß die Steuereinrichtung die Gattereinrichtung so steuert, daß die Ausgabe von Daten nur dann verboten ist, wenn Daten aus Speicherzellen in einem vorbestimmten Gebiet im Speicherzellarray ausgelesen werden.
9. Multiprozessorsystem nach Anspruch 8, dadurch gekennzeich­ net, daß die Steuereinrichtung eine Vorgabeeinrichtung (66) zur Vorgabe einer Leseerlaubnis-/Verbotsinformation für jedes Gebiet im Speicherzellarray, eine Dekodereinrichtung (67) zum Dekodieren der Adreßdaten und zur Ausgabe eines individuell den Zugriffszustand jedes Gebietes im Speicherzellarray kennzeichnenden Signales und eine Steuersi­ gnalerzeugungseinrichtung (AG1 bis AG4, OG, 63) zur Erzeugung eines Öffnen/Schließen-Steuersignales für die Gattereinrichtung auf der Basis der Leseerlaubnis-/Verbotsinformation, die in der Vorgabeeinrichtung verankert ist, und eines Ausgangssignales von der Dekodereinrichtung aufweist.
DE4204119A 1991-02-12 1992-02-12 Multiprozessorsystem Expired - Fee Related DE4204119C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3018690A JPH04257048A (ja) 1991-02-12 1991-02-12 デュアルポートメモリ

Publications (2)

Publication Number Publication Date
DE4204119A1 DE4204119A1 (de) 1992-08-13
DE4204119C2 true DE4204119C2 (de) 1997-04-17

Family

ID=11978616

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4204119A Expired - Fee Related DE4204119C2 (de) 1991-02-12 1992-02-12 Multiprozessorsystem

Country Status (3)

Country Link
US (1) US5459851A (de)
JP (1) JPH04257048A (de)
DE (1) DE4204119C2 (de)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225727A (ja) * 1994-02-14 1995-08-22 Fujitsu Ltd 計算機システム
JPH08212132A (ja) * 1995-02-07 1996-08-20 Mitsubishi Electric Corp 記憶装置
US5802597A (en) * 1995-12-22 1998-09-01 Cirrus Logic, Inc. SDRAM memory controller while in burst four mode supporting single data accesses
US5852608A (en) * 1996-06-06 1998-12-22 Sun Microsystems, Inc. Structure and method for bi-directional data transfer between asynchronous clock domains
US5884100A (en) * 1996-06-06 1999-03-16 Sun Microsystems, Inc. Low-latency, high-throughput, integrated cache coherent I/O system for a single-chip processor
JPH1027150A (ja) 1996-07-09 1998-01-27 Murata Mach Ltd 情報処理装置及び外部装置
US5768211A (en) * 1996-07-31 1998-06-16 Cypress Semiconductor Corporation Multi-port arbitration for high performance width expansion
US5825878A (en) * 1996-09-20 1998-10-20 Vlsi Technology, Inc. Secure memory management unit for microprocessor
US6078997A (en) * 1996-12-09 2000-06-20 Intel Corporation Directory-based coherency system for maintaining coherency in a dual-ported memory system
US5860120A (en) * 1996-12-09 1999-01-12 Intel Corporation Directory-based coherency system using two bits to maintain coherency on a dual ported memory system
US5995570A (en) * 1997-06-27 1999-11-30 International Business Machines Corporation Recovering a clock signal in a multimedia network using time stamps
US5978903A (en) * 1997-08-19 1999-11-02 Advanced Micro Devices, Inc. Apparatus and method for automatically accessing a dynamic RAM for system management interrupt handling
US6067595A (en) * 1997-09-23 2000-05-23 Icore Technologies, Inc. Method and apparatus for enabling high-performance intelligent I/O subsystems using multi-port memories
US5907508A (en) * 1997-10-28 1999-05-25 International Business Machines Corporation Method and apparatus for single clocked, non-overlapping access in a multi-port memory cell
US5956286A (en) * 1997-10-28 1999-09-21 International Business Machines Corporation Data processing system and method for implementing a multi-port memory cell
US5870349A (en) * 1997-10-28 1999-02-09 International Business Machines Corporation Data processing system and method for generating memory control signals with clock skew tolerance
US5877976A (en) * 1997-10-28 1999-03-02 International Business Machines Corporation Memory system having a vertical bitline topology and method therefor
US6233659B1 (en) 1998-03-05 2001-05-15 Micron Technology, Inc. Multi-port memory device with multiple modes of operation and improved expansion characteristics
US6304973B1 (en) * 1998-08-06 2001-10-16 Cryptek Secure Communications, Llc Multi-level security network system
US7333388B2 (en) * 2001-10-03 2008-02-19 Infineon Technologies Aktiengesellschaft Multi-port memory cells
JP3693013B2 (ja) * 2001-12-26 2005-09-07 日本電気株式会社 データ処理システム、アレイ型プロセッサ、データ処理装置、コンピュータプログラム、情報記憶媒体
US8397034B1 (en) 2003-06-27 2013-03-12 Cypress Semiconductor Corporation Multi-port arbitration system and method
JP2005259320A (ja) * 2004-03-15 2005-09-22 Nec Electronics Corp パーシャル・デュアル・ポート・メモリ及び該メモリを用いた電子機器
JP2005259321A (ja) * 2004-03-15 2005-09-22 Nec Electronics Corp フレキシブル・マルチエリア・メモリ及び該メモリを用いた電子機器
US7813213B1 (en) 2005-05-04 2010-10-12 Cypress Semiconductor Corporation Pulsed arbitration system
US20060253659A1 (en) * 2005-05-05 2006-11-09 International Business Machines Corporation Method and virtual port register array for implementing shared access to a register array port by multiple sources
US7962698B1 (en) 2005-10-03 2011-06-14 Cypress Semiconductor Corporation Deterministic collision detection
US7600081B2 (en) * 2006-01-18 2009-10-06 Marvell World Trade Ltd. Processor architecture having multi-ported memory
TW200745873A (en) * 2006-06-05 2007-12-16 Dmp Electronics Inc Dual computers for backup and being fault-tolerant system architecture
US7483313B2 (en) * 2007-01-31 2009-01-27 Dell Products, Lp Dual ported memory with selective read and write protection
US7613055B2 (en) 2007-08-09 2009-11-03 Altera Corporation Programmable control block for dual port SRAM application
US20140192601A1 (en) * 2013-01-09 2014-07-10 Chang-Ho Do Multi-port memory device with serial input/output interface
US10409742B2 (en) 2015-10-07 2019-09-10 Rambus Inc. Interface for memory readout from a memory component in the event of fault

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4930578B1 (de) * 1970-09-30 1974-08-14
US4590552A (en) * 1982-06-30 1986-05-20 Texas Instruments Incorporated Security bit for designating the security status of information stored in a nonvolatile memory
US4577292A (en) * 1983-05-31 1986-03-18 International Business Machines Corporation Support circuitry for multi-port systems
JPS61211759A (ja) * 1985-03-16 1986-09-19 Meidensha Electric Mfg Co Ltd マルチcpuシステムにおける2ポ−トメモリ制御回路
US4742487A (en) * 1986-04-15 1988-05-03 International Business Machines Corporation Inhibit and transfer circuitry for memory cell being read from multiple ports
DE3786539T2 (de) * 1986-12-19 1993-10-28 Fujitsu Ltd Halbleiterspeicher mit Doppelzugriffseinrichtung zur Realisierung eines Lesebetriebs mit hoher Geschwindigkeit.
JPH01178193A (ja) * 1988-01-07 1989-07-14 Toshiba Corp 半導体記憶装置
US4975878A (en) * 1988-01-28 1990-12-04 National Semiconductor Programmable memory data protection scheme
US4975870A (en) * 1988-02-25 1990-12-04 Data General Corporation Apparatus for locking a portion of a computer memory
JPH01241643A (ja) * 1988-03-24 1989-09-26 Mitsubishi Electric Corp インタフェース装置
US5014247A (en) * 1988-12-19 1991-05-07 Advanced Micro Devices, Inc. System for accessing the same memory location by two different devices
JPH0812646B2 (ja) * 1989-03-03 1996-02-07 三菱電機株式会社 半導体集積回路

Also Published As

Publication number Publication date
US5459851A (en) 1995-10-17
JPH04257048A (ja) 1992-09-11
DE4204119A1 (de) 1992-08-13

Similar Documents

Publication Publication Date Title
DE4204119C2 (de) Multiprozessorsystem
DE69815258T2 (de) Elektrisch programmier- und löschbarer nichtflüchtiger Speicher mit einem lese- und/oder schreibgeschützen Bereich einschliesslich zugehöriger elektronischer Schaltung
DE69520665T2 (de) Anordnung von nichtflüchtigen EEPROM,insbesondere Flash-EEPROM
DE4207945C2 (de) Multiport-Speicher und Verfahren zum Entscheiden eines Zugriffskonflikts darin
DE69217761T2 (de) Lese- und Schreibschaltung für einen Speicher
DE4114410C2 (de)
DE3884848T2 (de) Rascher Zugriff für einen FIFO-Speicher.
EP0908893B1 (de) Speicherarchitektur mit Mehrebenenhierarchie
DE4200758C2 (de) Halbleiterspeichereinrichtung und Verfahren zur Steuerung des Betriebs derselben
DE2908691C2 (de)
DE4238062C2 (de) Multiport-Speichereinrichtung
DE4025151A1 (de) Halbleiterspeichereinrichtung mit flasch-schreibfunktion
DE4218686C2 (de) Statischer Direktzugriffsspeicher
DE3906897A1 (de) Halbleiterspeichereinrichtung mit verbesserter redundanzschaltung
DE4309320A1 (de) Halbleiterspeichervorrichtung und Betriebsverfahren
EP0224887B1 (de) Gate Array Anordnung in CMOS-Technik
EP1352318B1 (de) Mikroprozessorschaltung für tragbare datenträger
DE4406258C2 (de) Informationsverarbeitungsvorrichtung
DE68926158T2 (de) Einchip-Mikrorechner mit EPROM
DE69326154T2 (de) Integrierte Schaltung für die Programmierung einer Speicherzelle eines nicht flüchtigen Speicherregisters
EP1118999A1 (de) Verfahren und Vorrichtung zum wechselweisen Betreiben eines Schreib-Lese-Speichers im Ein-Speicher-Betriebsmodus und im verschränkten Mehr-Speicher-Betriebsmodus
DE4206079C2 (de) Halbleiterspeichereinrichtung und Verfahren zum Lesen von Daten aus einer solchen Halbleiterspeichereinrichtung
DE10105627B4 (de) Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung
DE2235883A1 (de) Datenverarbeitungseinrichtung
DE69319886T2 (de) Halbleiterspeicher mit Speichermatrix, der mit einem einzigen Sektor assoziierte Redundantezellenspalte enthält

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee