DE4111483C2 - Dual-Port-Speicher - Google Patents
Dual-Port-SpeicherInfo
- Publication number
- DE4111483C2 DE4111483C2 DE4111483A DE4111483A DE4111483C2 DE 4111483 C2 DE4111483 C2 DE 4111483C2 DE 4111483 A DE4111483 A DE 4111483A DE 4111483 A DE4111483 A DE 4111483A DE 4111483 C2 DE4111483 C2 DE 4111483C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- read
- write
- port
- memory cell
- 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
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- 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
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Static Random-Access Memory (AREA)
Description
Die Erfindung betrifft allgemein einen Dual-Port-Speicher nach dem
Oberbegriff des Patenanspruches 1.
Fig. 1 zeigt ein Blockdiagramm der Konfiguration zur allgemeinen
Verwendung eines Dual-Port-Speichers. In der Figur weist ein Dual-
Port-Speicher 1 zwei Ein-/Ausgangsports (einer wird im weiteren als
A-Port, der andere als B-Port bezeichnet) auf. A-Port ist über einen
Systembus 2 mit einem A-System 3, B-Port über einen Systembus 4 mit
einem B-System 5 verbunden. Das A-System 3 und das B-System 5 können
beliebige Systeme sein, die Daten verarbeiten. In vielen Fällen sind
diese z. B. Mikroprozessorsysteme, die eine CPU aufweisen. Der Dual-
Port-Speicher 1 weist intern eine Speichereinrichtung auf. Auf diese
Speichereinrichtung kann durch das A-System 3 und das B-System 5 ge
trennt zugegriffen werden.
Der oben angeführte Dual-Port-Speicher 1 wird häufig für Datenemp
fang/-übertragung zwischen dem A-System 3 und dem B-System 5 be
nutzt. Beispielsweise ist es im Fall, wenn das A-System 3 und das B-
System 5 asynchron arbeiten, schwierig, zwischen den jeweiligen Sy
stemen eine Datenübertragung direkt auszuführen. Beim Übertragen von
Daten über den Dual-Port-Speicher 1 ist es jedem System möglich, Da
ten beliebig ein-/auszugeben, wenn dies notwendig ist. Folglich ver
bessert sich der Durchsatz des Systems. Darüber hinaus arbeiten die
Systeme 3 und 5 zusammen, um die Entwicklung eines größeren Systems
zu ermöglichen.
Es gibt zwei herkömmliche Zugriffsverfahren auf den Dual-Port-Spei
cher, die im folgenden beschrieben werden.
Fig. 2A zeigt das erste Zugriffsverfahren, bei dem Adreßdaten, die
von einer CPU 6 des A-Systems (im weiteren als A-Port-Adreßdaten be
zeichnet) zugeführt werden, und Adreßdaten, die an den B-Port von
einer CPU 7 des B-Systems (im weiteren als B-Port-Adreßdaten be
zeichnet) angelegt werden, von einem Adreßmultiplexer 8 gemultiplext
und an einen Dekoder 9 angelegt werden. Der Dekoder 9 wählt entspre
chend entweder den A-Port- oder B-Port-Adreßdaten, die über den
Adreßmultiplexer 8 zugeführt worden sind, eine Speicherzelle eines
Speicherzellenfeldes 10 aus. Das Speicherzellenfeld 10 weist eine
Mehrzahl von Speicherzellen auf, die in Form einer Matrix in Zeilen-
und Spaltenrichtung angeordnet sind. Wie in Fig. 2B gezeigt ist,
weist jede Zeile von Speicherzellen 11 eine Wortleitung 12 auf. Fer
ner weist jede Spalte von Speicherzellen 11 eine Bitleitung 13 auf.
Es ist ein Leseverstärker 14 angeordnet, der durch die jeweiligen
Bitleitungen 13 unterteilt wird. Über diesen unterteilten Lesever
stärker 14 werden von der CPU 6 oder 7 Schreibdaten an die Bitlei
tung 13 angelegt oder Daten, die auf die Bitleitungen ausgelesen
worden sind, werden der CPU 6 oder 7 zugeführt. Der Dekoder 9 be
treibt selektiv eine der Mehrzahl von Wortleitungen 12 in Überein
stimmung mit den angelegten Daten. Dies bewirkt, daß ein Transfer
gatetransistor 15 der ausgewählten Zeile einen leitenden Zustand
annimmt. Ferner aktiviert der Dekoder 9 selektiv einen der unter
teilten Leseverstärker 14 in Übereinstimmung mit den zugeführten Da
ten. Damit wird die ausgewählte Speicherzelle 11 über den entspre
chenden Transfergatetransistor 15 mit der CPU 6 oder 7 verbunden.
Damit ist ein Lesen und Schreiben von Daten bezüglich der ausgewähl
ten Speicherzelle 11 möglich.
Das zweite Zugriffsverfahren ist in Fig. 3A dargestellt. Bei diesem
sind ein Dekoder 9a und ein Leseverstärker 14a für den A-Port und
ein Dekoder 9b und ein Leseverstärker 14b für den B-Port im Zusam
menhang mit einem Speicherzellenfeld 100 gebildet. Die A-Port-Adreß
daten von der CPU 6 werden dem Dekoder 9a und die B-Port-Adreßdaten
von der CPU 7 dem Dekoder 9b zugeführt. Das Speicherzellenfeld 100
weist eine Mehrzahl von Speicherzellen auf, die ähnlich wie beim
Speicherzellenfeld 10 der Fig. 2A in Form einer Matrix entlang der
Zeilen- und Spaltenrichtung angeordnet sind. Es sei bemerkt, daß das
Speicherzellenfeld 100 zwei Wortleitungen 12a und 12b, die entspre
chend jeder Zeile von Speicherzellen 11 gebildet sind, und ferner
auch zwei Bitleitungen 13a und 13b, die entsprechend jeder Spalte
angeordnet sind, aufweist, wie in Fig. 3B dargestellt ist. Außerdem
sind zwei Transfergatetransistoren 15a und 15b für eine Speicher
zelle 11 gebildet. Wortleitung 12a, Bitleitung 13a und Transfergate
transistor 15a sind entsprechend dem A-Port und Wortleitung 12b,
Bitleitung 13b und Transfergatetransistor 15b sind entsprechend
dem B-Port geschaffen. Damit können die CPUs 6 und 7 auf das
Speicherzellenfeld 100 zur selben Zeit zugreifen, da beim Dual-Port-
Speicher der Fig. 3A die Zugriffssysteme für den A-Port und den B-
Port vollständig unabhängig voneinander sind.
Da auf den Dual-Port-Speicher der Fig. 3A von den CPUs 6 und 7
gleichzeitig zugegriffen werden kann, gibt es Fälle, in denen ein
Zugriffskonflikt durch die beiden CPUs 6 und 7 bezüglich derselben
Speicherzelle auftritt. In einem solchen Fall tritt entsprechend der
Zugriffsart der CPUs 6 und 7 der Zustand von Fig. 4 auf. Tritt ein
Lesezugriffskonflikt bezüglich derselben Speicherzelle auf (Fall von
Fig. 4(1)), so sind die aus der ausgewählten Speicherzelle gelesenen
Daten normal. Tritt ein Lesezugriffs- und Schreibzugriffskonflikt
bezüglich derselben Speicherzelle auf (Fall von Fig. 4(2), (3)), so
sind die von der ausgewählten Speicherzelle ausgelesenen Daten nicht
definiert (das bedeutet, es kann nicht entschieden werden, ob sie
normal oder unnormal sind), während die in die ausgewählte Speicher
zelle geschriebenen Daten normal sind. Tritt ein Konflikt bei einer
Schreibzugriffsoperation bezüglich derselben Speicherzelle (Fall von
Fig. 4(4)) auf, so sind die in die ausgewählte Speicherzelle ge
schriebenen Daten nicht definiert.
Um die oben angeführten Zugriffskonfliktprobleme zu lösen, ist ein
Schaltkreis für einen beliebigen Zugriff vorgeschlagen worden, der
bezüglich des Dual-Port-Speichers intern oder extern gebildet werden
soll. Tritt ein Zugriffskonflikt der Systeme auf, so vergibt dieser
Schaltkreis ein Zugriffsrecht an eines der Systeme entsprechend ei
ner vorbestimmten Priorität und hält den Zugriff des anderen Systems
temporär an. Anschließend wird der temporär angehaltene Zugriff ge
startet, wenn ein konfliktfreier Zustand erreicht worden ist.
Fig. 5 zeigt ein Systemkonfigurationsdiagramm eines Dual-Port-RAM,
der einen Schaltkreis für einen beliebigen Zugriff aufweist, wie er
in der JP 62-175992 beschrieben ist.
Der Dual-Port-RAM der Fig. 5 weist einen Ausgangsdaten-Steuerschalt
kreis 20 auf, wobei die D-Flip-Flops 21a und 21b als Schaltkreis für
beliebigen Zugriff gebildet sind. Die restliche Struktur ist der des
Dual-Port-Speichers von Fig. 3A ähnlich, so daß für einander ent
sprechende Abschnitte dieselben Bezugszeichen benutzt werden. Dem
Ausgangsdaten-Steuerschaltkreis 20 werden von der CPU 6 A-Port-
Adreßdaten A(A), von der CPU 7 B-Port-Adreßdaten B(B), ein A-Port-
Schreibsignal (A) und ein B-Port-Schreibsignal (B) zugeführt.
Der Ausgangsdaten-Steuerschaltkreis 20 erzeugt Ausgangsdaten-Steuer
signale ΦA und ΦB in Übereinstimmung mit den zugeführten Adreßdaten
und Schreibsignalen. Das Ausgangsdaten-Steuersignal ΦA wird dem D-
Flip-Flop 21a und das Ausgangsdaten-Steuersignal ΦB dem D-Flip-Flop
21b zugeführt. Das D-Flip-Flop 21a liest und hält die A-Port-Aus
gangsdaten Dout(A) vom Leseverstärker 14a in Abhängigkeit vom Aus
gangsdaten-Steuersignal ΦA. Das Q-Ausgangssignal des D-Flip-Flops
21a wird der CPU 6 als externe Ausgangsdaten Dout(A)* des A-Ports
zugeführt. Demgegenüber liest und hält das D-Flip-Flop 21a die B-
Port-Ausgangsdaten Dout(B) vom Leseverstärker 14b in Abhängigkeit
vom Ausgangsdaten-Steuersignal ΦB. Das Q-Ausgangssignal des D-Flip-
Flops 21b wird der CPU 7 als externe Ausgangsdaten Dout(B)* des B-
Ports zugeführt.
Fig. 6 zeigt ein weiteres Detail des Ausgangsdaten-Steuerschaltkrei
ses 20 der Fig. 5. Der Ausgangsdaten-Steuerschaltkreis 20 weist Ex
klusiv-Logiksummengatter 22₀-22 n, ein ODER-Gatter 23 und NOR-Gatter
24a, 24b auf. Die Exklusiv-Logiksummengatter 22₀-22 n erfassen je
weils, ob die Logik eines jeden Adreßsignals A0(A)-An(A), die in den
A-Port-Adreßdaten A(A) enthalten sind, mit der Logik eines jeden
Adreßsignals A0(B)-An(B), die in den B-Port-Adreßdaten A(B) enthal
ten sind, übereinstimmt. Das ODER-Gatter 23 ermittelt, ob die A-
Port-Adreßdaten (A) mit den B-Port-Adreßdaten (B) als ganzes über
einstimmen, indem die logische Summe der Ausgangssignale von den Ex
klusiv-Logiksummengattern 22₀-22 n gebildet wird. Das NOR-Gatter 24a
empfängt das Ausgangssignal des ODER-Gatters 23 sowie das B-Port-
Schreibsignal (B), um ein Ausgangsdaten-Steuersignal ΦA für den A-
Port zu bilden. Das NOR-Gatter 24b empfängt das Ausgangssignal des
ODER-Gatters 23 sowie das A-Port-Schreibsignal (A), um ein Aus
gangsdaten-Steuersignal ΦB für den B-Port zu bilden.
Fig. 7 zeigt die detaillierte Struktur des D-Flip-Flops 21b von Fig.
5. Das D-Flip-Flop 21b weist einen Inverter 25 und NOR-Gatter 26-29
auf. Die NOR-Gatter 28 und 29 bilden den Datenhalteschaltkreis, wo
bei jedes Ausgangssignal an einen Eingang des anderen NOR-Gatters 29
bzw. 28 angelegt wird. Die B-Port-Ausgangsdaten vom Leseverstärker
14 werden sowohl einem Eingang des NOR-Gatters 26 als auch über den
Inverter 25 einem Eingang des NOR-Gatters 27 zugeführt. Das Aus
gangsdaten-Steuersignal ΦB vom Ausgangsdaten-Steuerschaltkreis 20
wird an die jeweils anderen Eingänge der NOR-Gatter 26 und 27 ange
legt. Jedes der Ausgangssignale der NOR-Gatter 26 und 27 wird an den
anderen Eingang der NOR-Gatter 28 und 29 angelegt. Die NOR-Gatter 26
und 27 bestimmen in Abhängigkeit vom Ausgangsdaten-Steuersignal ΦB,
ob die Daten, die im Datenhalteschaltkreis aus den NOR-Gattern 28
und 29 gehalten werden, aktualisiert werden sollen.
Der Aufbau des D-Flip-Flops 21a ist dem des oben erwähnten D-Flip-
Flops 21b ähnlich, außer daß sich das Eingangssignal und das Aus
gangssignal von denen des oben angeführten D-Flip-Flops 21b unter
scheiden.
Fig. 8 zeigt den Betrieb des herkömmlichen Dual-Port-RAMs der Fig.
5-7 im Falle eines Konfliktes zwischen einem Schreibzugriff auf der
Seite des A-Ports und einem Lesezugriff auf der Seite des B-Ports
bezüglich derselben Speicherzelle. Unter Bezugnahme auf das Zeitdia
gramm der Fig. 8 wird nun der Betrieb zum Zeitpunkt des Zugriffskon
fliktes im oben angeführten Dual-Port-RAM beschrieben.
Zuerst wird die Koinzidenz der A-Port-Adresse A(A) und der B-Port-
Adresse A(B) durch die Exklusiv-Logiksummengatter 22₀-22 n und das
ODER-Gatter 23 erfaßt. Dies bewirkt, daß der Ausgang des ODER-Gat
ters 23 den L-Pegel annimmt. Mit dem Beginn der Schreiboperation auf
der Seite des A-Ports wird das A-Port-Schreibsignal (A) auf den L-
Pegel gebracht, um als Reaktion hierauf das Ausgangsdaten-Steuersi
gnal ΦB auf den H-Pegel zu bringen. Damit wird die Aktualisierungs
operation der Haltedaten des D-Flip-Flops 21b unterbunden. Obwohl
die gespeicherten Daten der ausgewählten Speicherzelle durch die
Schreiboperation der Seite des A-Ports überschrieben werden, fährt
das D-Flip-Flop 21b daher damit fort, die alten Daten (die Daten vor
der Aktualisierung) zu halten. Entsprechend werden die externen Aus
gangsdaten Dout(B)* des B-Ports stabil gehalten. Ist die Schreibope
ration der Seite des A-Ports beendet, so kehrt das A-Port-Schreibsi
gnal (A) auf den H-Pegel zurück, wobei als Reaktion hierauf das
Ausgangsdaten-Steuersignal ΦB auf den L-Pegel gebracht wird. Dies
beendet die Unterbindung der Datenaktualisierung im D-Flip-Flop 21b.
Daher werden die Haltedaten des D-Flip-Flops 21b durch die Ausgangs
daten Dout(b) des B-Ports aktualisiert. Dies bedeutet, daß die ex
ternen Ausgangsdaten Dout(B)* des B-Ports zu diese Zeitpunkt auf
neue Daten aktualisiert werden.
Im Dual-Port-RAM der Fig. 5-7 werden die externen Ausgangsdaten
Dout(B)* des B-Ports auf neue Daten aktualisiert (die neu in die
Speicherzelle geschriebenen Daten), nachdem die Schreiboperation des
A-Ports beendet ist, wenn zwischen dem Schreibzugriff der Seite des
A-Ports und dem Lesezugriff der Seite des B-Ports bezüglich dersel
ben Speicherzelle ein Konflikt auftritt. Daher muß das B-System mit
dem Lesen der neuen Daten warten, bis der Schreibzugriff des A-Sy
stems beendet ist. Tritt ein Zugriffskonflikt auf, so wird allgemein
vom Dual-Port-RAM ein BELEGT-Signal an das A-System oder B-System
übermittelt, um die Zugriffsoperation des A- oder B-Systems in einem
Wartezustand zu halten (dies ist in der JP 62-175992 nicht beschrie
ben). In Fig. 8 reagiert die Zugriffsoperation des B-Systems auf ein
BELEGT-Signal vom B-Port, damit diese in einem Wartezustand gehalten
wird, bis die Schreiboperation des A-Systems beendet ist. Fig. 9
zeigt ein Systemstrukturdiagramm eines herkömmlichen Multiportspei
chers, der einen Schaltkreis für beliebigen Zugriff aufweist und
beispielsweise in der JP 63-183678 beschrieben ist. Ein Multiport
speicher 34 weist drei Ein-/Ausgabeports A-Port, B-Port und C-Port
auf, so daß drei CPUs 31, 32 und 33 gleichzeitig zugreifen können.
Im Multiportspeicher 34 verriegeln Adreßverriegelungen 35a, 35b und
35c die Adreßdaten, die von den CPUs 31, 32 bzw. 33 zugeführt wer
den. Ein Adreßselektor 36 wählt diejenigen Adreßdaten aus den Adreß
daten, die in den Adreßverriegelungen 35a-35c gehalten werden, aus,
die an einen Speicherbereich 37 angelegt werden sollen. Die Schreib
datenverriegelungen 38a, 38b und 38c verriegeln die Schreibdaten,
die von den CPUs 31, 32 bzw. 33 zugeführt werden. Die von den
Schreibdatenverriegelungen 38a, 38b und 38c gehaltenen Schreibdaten
werden über Schreibdatentreiber 39a, 39b bzw. 39c dem Speicherbe
reich 37 zugeführt. Die aus dem Speicherbereich 37 ausgelesenen Da
ten werden über die Datenports 40a, 40b bzw. 40c den CPUs 31, 32 und
33 zugeführt. Ein Speichersteuerabschnitt 41 steuert die Adreßver
riegelungen 35a-35c, die Schreibdatenverriegelungen 38a-38c, die
Schreibdatentreiber 39a-39c, die Datenports 40a-40c und den
Speicherbereich 37.
Nun wird der Betrieb des herkömmlichen Multiportspeichers der Fig. 9
beschrieben. Tritt zwischen mehreren CPUs ein Zugriffskonflikt auf,
so hält der Speichersteuerbereich 41 Adreßdaten und Schreibdaten in
den jeweiligen Verriegelungen 35a-35c, 38a-38c und führt eine
Schreiboperation in den Speicherbereich 37 aus, nachdem der andere
Zugriff vervollständigt worden ist.
Tritt nachfolgend ein Schreibzugriff von einer CPU auf, wenn ein
Schreibzugriff bereits im Multiportspeicher wartet, so wartet im
Multiportspeicher der Fig. 9 der Schreibzugriff dieser CPU auf der
Seite der CPU.
Der oben angeführte und in herkömmlichen Dual-Port- oder Multiport
speichern benutzte Schaltkreis für beliebigen Zugriff kann die Zu
griffsoperationen bezüglich des Systems in eine Warteschlange ein
reihen, wenn zwischen den Systemen ein Zugriffskonflikt auftritt.
Dies führt zu dem Nachteil, daß der herkömmliche Dual-Port-Speicher
nur dann benutzt werden kann, wenn eine Funktion zur Behandlung der
Zugriffwarteforderung des Dual-Port-Speichers (beispielsweise eine
BEREIT-Funktion) gebildet ist. Ferner tritt das Problem auf, daß die
Anwendung auf den industriellen Bereich beschränkt ist, in dem eine
gewisse Wartezeit erlaubt ist.
In einem System, in dem stets eine Echtzeitverarbeitung ausgeführt
wird, muß die Operation von allen Einrichtungen zu identischen Zeit
punkten ausgeführt werden. Ist in einem solchen System die Zeitab
stimmung der Wartezeiterzeugung nicht bekannt, kann ein Dual-Port-
Speicher, der die Erzeugung einer solchen Wartezeit erlaubt, nicht
verwendet werden, wie kurz die Wartezeit auch ist.
Darüber hinaus fehlt bei Mikrocomputer, die in kleinen Systemen be
nutzt werden, manchmal der BEREIT-Anschluß (der Anschluß, an den ein
Warteanforderungssignal angelegt wird) aufgrund der Tatsache, daß
eine Erhöhung der LSI-Anschlüsse die Kosten erhöht. In einem solchen
System kann kein Dual-Port-Speicher benutzt werden, obwohl er für
die Verbesserung des Systemdurchsatzes vorteilhaft wäre.
Aus der deutschen Zeitschrift "Design & Elektronik", Ausgabe 1,
7. Januar 1987, Seiten 61 bis 69, ist ein Dual-Port-Speicher nach
dem Oberbegriff des Patentanspruches 1 bekannt. Bei dem bekannten
Dual-Port-Speicher können die beiden Ein-/Ausgabeports voneinan
der unabhängig auf jeden Speicherplatz lesend oder schreibend
zugreifen. Durch eine On-Chip-Logik ist Vorsorge getroffen, daß
es zu keinen Zugriffskonflikten kommen kann.
Es ist Aufgabe der vorliegenden Erfindung, einen Dual-Port-Spei
cher der eingangs beschriebenen Art vorzusehen, der selbst dann
flexibel einen beliebigen Zugriff gestattet, ohne an das System
eine Zugriffswarteanforderung auszugeben, wenn zwischen den
Systemen ein Zugriffskonflikt auftritt.
Diese Aufgabe wird gelöst durch einen Dual-Port-Speicher der ein
gangs beschriebenen Art, der durch die Merkmale des kennzeichnen
den Teiles des Patentanspruches 1 gekennzeichnet ist.
Bevorzugte Ausgestaltungen der Erfindung sind in den zugehörigen
Unteransprüchen angegeben.
Tritt bei dem vorliegenden Speicher ein Zugriffskonflikt zwischen
dem ersten System und dem zweiten System bezüglich derselben
Speicherzelle auf, so vermittelt die Steuersignal-Erzeugereinrich
tung und die erste und die zweite Übertragungssteuereinrichtung im
Zugriffskonflikt. Die Steuersignal-Erzeugereinrichtung und die erste
und die zweite Übertragungssteuereinrichtung verarbeiten den Zu
griffskonflikt im Inneren des Dual-Port-Speichers und erzeugen keine
Zugriffswarteanforderung für die Systemseite. Die erste und die
zweite Übertragungssteuereinrichtung umfassen zu diesem Zweck erste
und zweite Lesedaten-Auswahleinrichtungen. Tritt ein Lese- und
Schreibzugriffskonflikt auf, so verhindern die erste und die zweite
Lesedaten-Auswahleinrichtung eine Undefiniertheit der Lesedaten, in
dem entweder die aus der Speicherzelle ausgelesenen Daten oder die
vom System auf der Seite des Schreibzugriffs angelegten Daten als
Lesedaten ausgewählt und zugeführt werden, die dem System auf der
Seite des Lesezugriffs als Lesedaten übergeben werden.
Es folgt die Beschreibung eines Ausführungsbeispieles anhand der Figuren. Von
den Figuren zeigen:
Fig. 1 ein Systemblockdiagramm einer allgemeinen Anwendungs
konfiguration eines Dual-Port-Speichers;
Fig. 2A ein Blockdiagramm eines Beispiels eines herkömmlichen
Dual-Port-Speichers;
Fig. 2B ein Diagramm, das eine Teilstruktur des Speicher
zellenfeldes von Fig. 2B darstellt;
Fig. 3A ein Blockdiagramm eines weiteren Beispiels eines
herkömmlichen Dual-Port-Speichers;
Fig. 3B ein Diagramm, das eine Teilstruktur des Speicher
zellenfeldes von Fig. 3B darstellt;
Fig. 4 ein Diagramm, das die Zustände des Lese- und Schreibdaten
darstellt, wenn im herkömmlichen Dual-Port-Speicher der
Fig. 3A ein Zugriffskonflikt auftritt;
Fig. 5 ein Blockdiagramm, das ein Beispiel eines herkömmlichen
Dual-Port-Speichers darstellt, der einen Schaltkreis für
die Schlichtung des Zugriffskonfliktes aufweist;
Fig. 6 ein Logikgatterdiagramm, das die Detailstruktur des
Ausgangsdaten-Steuerschaltkreises von Fig. 5 darstellt;
Fig. 7 ein Logikgatterdiagramm, das die Detailstruktur des
D-Flip-Flops 21b in Fig. 5 darstellt;
Fig. 8 ein Zeitdiagramm zur Erläuterung der Operation zum
Zeitpunkt des Zugriffskonfliktes im herkömmlichen Dual-
Port-Speicher von Fig. 5;
Fig. 9 ein Blockdiagramm, das die Struktur eines herkömmlichen
Multiportspeichers darstellt, der einen Schaltkreis zur
Schlichtung eines Zugriffskonfliktes aufweist;
Fig. 10 ein Blockdiagramm der Struktur einer Ausführungsform der
vorliegenden Erfindung;
Fig. 11 ein Logikschaltbild, das die Detailstruktur des Schalt
kreises zur Schlichtung eines Zugriffskonfliktes aus
Fig. 10 darstellt;
Fig. 12A ein Schaltbild, das die Detailstruktur des Leseoperations-
Steuerschaltkreises darstellt, der im Steuersignal-
Erzeugerschaltkreis der Fig. 10 enthalten ist;
Fig. 12B ein Schaltbild, das ein Beispiel der Struktur des
Schreiboperations-Steuerschaltkreises darstellt, der im
Steuersignal-Erzeugerschaltkreis der Fig. 10 enthalten
ist;
Fig. 12C ein Schaltbild, das ein weiteres Beispiel der Struktur des
Schreiboperations-Steuerschaltkreises darstellt, der im
Steuersignal-Erzeugerschaltkreis der Fig. 10 enthalten
ist;
Fig. 13 ein Zeitdiagramm zum Beschreiben der grundlegenden Lese-/
Schreiboperation der Ausführungsform von Fig. 10;
Fig. 14 ein Diagramm, das schematisch die Schreib-/Leseoperation
der Ausführungsform von Fig. 10 darstellt;
Fig. 15 ein Zeitdiagramm zur Erläuterung des Betriebes, wenn
zwischen dem Schreibzugriff auf der Seite des A-Ports und
einem Lesezugriff auf der Seite des B-Ports in der
Ausführungsform von Fig. 10 ein Konflikt auftritt;
Fig. 16A ein schematisches Diagramm, das die Zugriffskonflikt-
Zeitabstimmung der vier Fälle von Fig. 15 darstellt;
Fig. 16B-16E Diagramme zur Darstellung des Datenflusses im A- und
B-Port in den vier Fällen der Fig. 15;
Fig. 17A-17I Diagramme zur Erläuterung des Operationszustandes des
Dual-Port-RAM entsprechend 1-9 der Fig. 15 und 16;
Fig. 18 ein Zeitdiagramm zur Erläuterung des Betriebs des
Schreiboperations-Steuerschaltkreises von Fig. 12B, wenn
zwischen einem Schreibzugriff auf der Seite des A-Ports
und einem Schreibzugriff auf der Seite des B-Ports
bezüglich derselben Speicherzelle ein Konflikt auftritt;
und
Fig. 19 ein Zeitdiagramm zur Erläuterung der Operation des
Schreiboperation-Steuerschaltkreises von Fig. 12C, wenn
zwischen einem Schreibzugriff auf der Seite des A-Ports
und einem Schreibzugriff auf der Seite des B-Ports
bezüglich derselben Speicherzelle ein Konflikt auftritt.
Unter Bezugnahme auf die Figuren wird nun ein Dual-Port-RAM in Über
einstimmung mit einer Ausführungsform der vorliegenden Erfindung be
schrieben. Es ist zu beachten, daß diese Erfindung nicht auf einen
Dual-Port-Speicher mit einem RAM beschränkt ist, sondern auch auf
Dual-Port-Speicher mit anderen Speicherarten anwendbar ist.
Fig. 10 zeigt ein Blockdiagramm der Struktur eines Dual-Port-RAM in
Übereinstimmung mit einer Ausführungsform der Erfindung. Ein Dual-
Port-RAM 50 weist ein Speicherzellenfeld 100, Dekoder 9a und 9b und
Leseverstärker 14a, 14b auf. Das Speicherzellenfeld 100, die Dekoder
9a und 9b sowie die Leseverstärker 14a und 14b weisen Strukturen
auf, die den in den Fig. 3A und 3B gezeigten ähnlich sind.
Der Dual-Port-RAM 50 weist ferner einen Zugriffskonflikt-Erfassungs
schaltkreis 51 und einen Steuersignal-Erzeugerschaltkreis 52 auf.
Der Zugriffskonflikt-Erfassungsschaltkreis 51 empfängt von der CPU 6
des A-Systems A-Port-Adreßdaten A(A) und von der CPU 7 des B-Systems
B-Port-Adreßdaten A(B) und ermittelt, ob zwischen dem A- und dem B-
System ein Zugriffskonflikt auftritt. Der Steuersignal-Erzeuger
schaltkreis 52 erzeugt in Übereinstimmung mit einem Zugriffskon
flikt-Erfassungssignal S1, das vom Zugriffskonflikt-Erfassungs
schaltkreis 51 zugeführt wird, von der CPU 6 angelegten A-Port-Steu
erdaten und von der CPU 7 angelegten B-Port-Steuerdaten ein Steuer
signal für den A-Port und ein Steuersignal für den B-Port. Die A-
Port-Steuerdaten weisen ein Schreibsteuersignal (A), ein Definiti
onssignal *(A) für die erlaubte Periode der Schreiboperation und
ein Lesesteuersignal (A), die B-Port-Steuerdaten ein Schreibsteuer
signal (B), ein Definitionssignal *(B) für die erlaubte Periode
der Schreiboperation und ein Lesesteuersignal (B) auf. Das im Steu
ersignal-Erzeugerschaltkreis 52 erzeugte Steuersignal für den A-Port
weist ein Schaltsteuersignal SEL(A), ein Definitionssignal W(A) für
den externen Schreibzyklus, ein Definitionssignal WE(A) für den in
ternen Schreibzyklus, ein Lesedatenausgabe-Steuersignal R(A) und ein
Lesedateneinlese-Steuersignal RE(A), das Steuersignal für den B-Port
ein Schaltsteuersignal SEL(B), ein Definitionssignal W(B) für den
externen Schreibzyklus, ein Definitionssignal WE(B) für den inter
nen Schreibzyklus, ein Lesedatenausgabe-Steuersignal R(B) und ein
Lesedateneinlese-Steuersignal RE(B) auf.
Der Dual-Port-RAM 50 weist ferner Schreibdatenverriegelungen 53a,
53b und Lesedatenverriegelungen 54a, 54b auf. Die Schreibdatenver
riegelung 53a hält Schreibdaten von der Seite des A-Ports, die
Schreibdatenverriegelung 53b Schreibdaten von der Seite des B-Ports.
Ferner hält die Lesedatenverriegelung 54a Lesedaten von der Seite
des A-Ports, die Lesedatenverriegelung 54b Lesedaten von der Seite
des B-Ports.
Der Dual-Port-RAM 50 weist ferner Schalter 55a-57a, 55b-57b, Aus
wahlschalter 58a, 58b und Drei-Zustands-Puffer 59a, 59b auf. Die
Schalter 55a-57a, 55b-57b bestehen beispielsweise jeweils aus einer
Transistoreinrichtung. Die Auswahlschalter 58a, 58b sind beispiels
weise parallel geschaltet und bestehen aus zwei Transistoreinrich
tungen, die komplementär zueinander arbeiten. Der Schalter 55a be
findet sich zwischen einem Systembus 2 und der Schreibdatenverriege
lung 53a, der Schalter 55b zwischen einem Systembus 4 und der
Schreibdatenverriegelung 53b. Der Durchschalt-/Sperrzustand dieser
Schalter 55a, 55b wird von den Definitionssignalen W(A) bzw. W(B)
des externen Schreibzyklus definiert. Der Schalter 56a befindet sich
zwischen der Schreibdatenverriegelung 53a und dem Leseverstärker
14a, der Schalter 56b zwischen der Schreibdatenverriegelung 53b und
dem Leseverstärker 54b. Die Schalter 56a, 56b sind Durchschalt-
/Sperrschalter und werden von den Definitionssignalen WE(A) bzw.
WE(B) des internen Schreibzyklus gesteuert. Der Auswahlschalter 58a
wählt entweder das Ausgangssignal des Leseverstärkers 14a oder das
Ausgangssignal der Schreibdatenverriegelung 53b aus und legt das
ausgewählte Ausgangssignal an die Lesedatenverriegelung 54a an. Der
Auswahlschalter 58b wählt entweder das Ausgangssignal des Lesever
stärkers 14b oder das Ausgangssignal der Schreibdatenverriegelung
53a aus und legt das ausgewählte Ausgangssignal an die Lesedatenver
riegelung 54b an. Die Schaltstellungen der Auswahlschalter 58a, 58b
werden von den Schaltsteuersignalen SEL (A) bzw. SEL(B) gesteuert.
Der Schalter 57a befindet sich zwischen dem Auswahlschalter 58a und
der Lesedatenverriegelung 54a, der Schalter 57a zwischen dem Aus
wahlschalter 58b und der Lesedatenverriegelung 54b. Der Durchschalt-
/Sperrzustand der Schalter 57a, 57b wird von den Lesedateneinlese-
Steuersignalen RE (A) bzw. RE(B) gesteuert. Der Drei-Zustands-Puffer
59a befindet sich zwischen der Lesedatenverriegelung 54a und dem
Systembus 2, der Drei-Zustands-Puffer 59b zwischen der Lesedatenver
riegelung 54b und dem Systembus 4. Die Durchschalt-/Sperrzustände
der Drei-Zustands-Puffer 59a, 59b werden von den Lesedatenausgabe-
Steuersignalen R(A) bzw. R(B) gesteuert. Der Systembus 2 ist mit der
CPU 6 auf der Seite des A-Systems, der Systembus mit der CPU 7 auf
der Seite des B-Systems verbunden.
Fig. 11 stellt ein Logikgatterdiagramm dar, das die Detailstruktur
des Zugriffskonflikt-Erfassungsschaltkreises 51 der Fig. 10 zeigt.
Der Zugriffskonflikt-Erfassungsschaltkreis 51 weist Exklusiv-NOR-
Gatter 60₀-60 n und ein UND-Gatter 61 auf. Die Exklusiv-NOR-Gatter
60₀-60 n erfassen, ob die Logik der jeweiligen Adreßsignale A0(A)-
An(A), die im A-Port-Adreßsignal enthalten sind, mit der Logik der
jeweiligen Adreßsignale A0(B)-An(B), die im B-Port-Adreßsignal ent
halten sind, übereinstimmt. Das UND-Gatter 61 ermittelt, ob die A-
Port-Adreßdaten A(A) mit den B-Port-Adreßdaten A(B) als ganzes über
einstimmen, indem das logische Produkt der Ausgangssignale der Ex
klusiv-NOR-Gatter 60₀-60 n bestimmt wird. Das UND-Gatter 61 stellt
nur dann ein Signal mit H-Pegel bereit, wenn die A-Port-Adreßdaten
A(A) vollständig mit den B-Port-Adreßdaten A(B) übereinstimmen.
Der Steuersignal-Erzeugerschaltkreis 52 der Fig. 10 weist einen Le
seoperations-Steuerschaltkreis, um Steuersignale zum Steuern der Le
seoperation des A- und B-Ports zu erzeugen, und einen Schreibopera
tions-Steuerschaltkreis, um Steuersignale zum Steuern der Schreibo
peration des A- und B-Ports zu erzeugen, auf.
Fig. 12 zeigt ein Blockdiagramm der Konfiguration des oben angeführ
ten Leseoperations-Steuerschaltkreises, der im Steuersignal-Erzeu
gerschaltkreis 52 enthalten ist. Der Leseoperations-Steuerschalt
kreis weist einen Leseoperations-Steuerschaltkreis 63a der Seite des
A-Ports und einen Leseoperations-Steuerschaltkreis 63b der Seite des
B-Ports auf. Der Leseoperations-Steuerschaltkreis 63a der Seite des
A-Ports und der Leseoperations-Steuerschaltkreis 63b der Seite des
B-Ports besitzen ähnliche Strukturen, wie in der Figur darge
stellt ist. Es unterscheiden sich nur das angelegte Signal und das
erzeugende Signal, die Schaltkreisstruktur ist dieselbe. Daher wer
den die einander entsprechenden Abschnitte durch dieselben Bezugs
zeichen bezeichnet, wobei den Bezugszeichen für den Schaltkreis auf
der Seite des A-Ports ein "a" und den Bezugszeichen für den Schalt
kreis auf der Seite des B-Ports ein "b" angehängt wird. Im folgenden
wird die Struktur des Leseoperations-Steuerschaltkreises 63a auf der
Seite des A-Ports beschrieben.
Der Leseoperations-Steuerschaltkreis 63a auf der Seite des A-Ports
von Fig. 12A wird durch UND-Gatter 64a-67a, ein ODER-Gatter 69a,
einen Inverter 70a, Abfallerfassungsschaltkreise 71a, 72a zum Erfas
sen des Abfalls des Eingangssignals, Anstiegserfassungsschaltkreise
73a, 74a zum Erfassen des Anstiegs des Eingangssignals und RS-Flip-
Flops 75a, 76a mit Priorität des Setzeinganges implementiert. Die
Abfallerfassungsschaltkreise 71a, 72a geben als Reaktion auf den Ab
fall des Eingangssignals einen Einzelimpuls mit H-Pegel aus. Sie
sind z. B. aus einem Einzelimpulsmultivibrator gebildet, der in Ab
hängigkeit von einem Signalabfall betreibbar ist. Die Anstiegserfas
sungsschaltkreise 73a, 74a geben als Reaktion auf den Anstieg des
Eingangssignals einen Einzelimpuls mit H-Pegel aus. Sie sind z. B.
aus einem Einzelimpulsmultivibrator gebildet, der in Abhängigkeit
von einem Signalanstieg betreibbar ist. Das UND-Gatter 64a empfängt
an einem Eingang ein invertiertes Signal des Schreibsteuersignals
(B) und am anderen Eingang ein Zugriffskonflikt-Erfassungssignal S1
vom Zugriffskonflikt-Erfassungsschaltkreis 51. Das Ausgangssignal
des UND-Gatters 64a wird sowohl an einen Eingang des UND-Gatters 65a
als auch an den Abfallerfassungsschaltkreis 72a angelegt. Das Aus
gangssignal des UND-Gatters 65 wird dem Einstellanschluß des RS-
Flip-Flops 75a zugeführt. Das Ausgangssignal des Abfallerfassungs
schaltkreises 72a wird an einen Eingang des UND-Gatters 66a, das Le
sesteuersignal (A) an den Abfallerfassungsschaltkreis 71a, den An
stiegerfassungsschaltkreis 73a und den Inverter 70a angelegt. Das
Ausgangssignal des Abfallerfassungsschaltkreises 71a wird sowohl dem
anderen Eingang des UND-Gatters 65a als auch dem Einstelleingang des
RS-Flip-Flops 76a zugeführt. Das Ausgangssignal des Anstiegerfas
sungsschaltkreises 73a wird sowohl an den Rückstelleingang des RS-
Flip-Flops 75a als auch an den ersten Eingang des ODER-Gatters 69a
angelegt. Das Ausgangssignal des Inverters 71a wird als Lesedaten
ausgabe-Steuersignal R(A) bereitgestellt. Das Definitionssignal (B)
für die erlaubte Periode der Schreiboperation wird an den An
stiegserfassungsschaltkreis 74a und das Ausgangssignal des An
stiegserfassungsschaltkreises 74a an einen Eingang des UND-Gatters
67a angelegt. Das Q-Ausgangssignal des RS-Flip-Flops 75a wird als
Schaltsteuersignal SEL (A) bereitgestellt und an den anderen Eingang
des UND-Gatters 67a angelegt. Das Q-Ausgangssignal des RS-Flip-Flops
75a wird invertiert und das invertierte Ausgangssignal dem anderen
Eingang des UND-Gatters 66a zugeführt. Das Ausgangssignal des UND-
Gatters 66a wird an den zweiten Eingang des ODER-Gatters 69a, das
Ausgangssignal des UND-Gatters 67a an den dritten Eingang des ODER-
Gatters 69a angelegt. Das Ausgangssignal des ODER-Gatters 69a wird
dem Rückstelleingang des RS-Flip-Flops 76a zugeführt und das Q-Aus
gangssignal des RS-Flip-Flops 76a als Lesedateneinlese-Steuersignal
RE (A) bereitgestellt.
Unter Betrachtung des oben angeführte Schreiboperations-Steuer
schaltkreises, der im Steuersignal-Erzeugerschaltkreis 52 der Fig.
10 enthalten ist, werden nun Beispiele zweier Schaltkreise beschrie
ben. Genauer gesagt handelt es sich um die in den Fig. 12B und 12C
gezeigten Schreiboperations-Steuerschaltkreise. Der Schreiboperati
ons-Steuerschaltkreis der Fig. 12B stellt einen Typ dar, bei dem ein
später erzeugter Schreibzugriff Priorität genießt, wenn ein Konflikt
zwischen einem Schreibzugriff auf der Seite des A-Ports und einem
Schreibzugriff auf der Seite des B-Ports auftritt. Der Schreibopera
tions-Steuerschaltkreis von Fig. 12C stellt einen Typ dar, bei dem
der Zugriff einer vorbestimmten Seite stets Priorität besitzt (in
Fig. 12C der Schreibzugriff der Seite des A-Ports), wenn ein Kon
flikt zwischen einem Schreibzugriff auf der Seite des A-Ports und
einem Schreibzugriff auf der Seite des B-Ports auftritt.
Nun wird die Struktur des Schreiboperations-Steuerschaltkreises der
Fig. 12B beschrieben. Die Schreibsteuersignale (A), (B) werden an
die Inverter 81a bzw. 81b angelegt. Die Ausgangssignale der Inverter
81a, 81b werden als Definitionssignale W(A) bzw. W(B) des externen
Schreibzyklus bereitgestellt und an die Abfallerfassungsschaltkreise
82a bzw. 82b angelegt. Die Abfallerfassungsschaltkreise 82a, 82b ge
ben als Reaktion auf den Abfall des Eingangssignals einen Einzelim
puls mit H-Pegel aus. Sie sind z. B. als Einzelimpulsmultivibrator,
der von einem Signalabfall abhängig ist, gebildet. Das Ausgangssi
gnal des Abfallerfassungsschaltkreises 82a wird dem Eingang des RS-
Flip-Flops 83a mit Priorität des Setzeinganges zugeführt. Das Aus
gangssignal des Abfallerfassungsschaltkreises 82b wird an den Ein
stelleingang des RS-Flip-Flops 83b mit Priorität des Rückstellein
gangs angelegt. Das Zugriffskonflikt-Erfassungssignal S1 vom Zu
griffskonflikt-Erfassungsschaltkreis 51 wird an die jeweiligen einen
Eingänge der UND-Gatter 84a, 84b, das Q-Ausgangssignal des RS-Flip-
Flops 83b an den anderen Eingang des UND-Gatters 84a und das Q-Aus
gangssignal des RS-Flip-Flops 83a an den anderen Eingang des UND-
Gatters 84b angelegt. Die Ausgangssignale der UND-Gatter 84a, 84b
werden den Anstiegserfassungsschaltkreisen 85a bzw. 85b zugeführt.
Die Anstiegserfassungsschaltkreise 85a, 85b geben als Reaktion auf
einen Anstieg des Eingangssignals einen Einzelimpuls mit H-Pegel
aus. Sie bestehen z. B. aus einem Einzelimpulsmultivibrator, der von
einem Signalanstieg abhängig ist. Die Ausgangssignale der An
stiegserfassungsschaltkreise 85a, 85b werden den Eingängen der ODER-
Gatter 86a, 86b zugeführt. Die Definitionssignale *(A), *(B) für die
erlaubte Periode der Leseoperation werden an die anderen Eingänge
der ODER-Gatter 86a, 86b, die Ausgangssignale der ODER-Gatter 86a,
86b an die jeweiligen Rückstelleingänge der RS-Flip-Flops 83a, 83b
angelegt. Das Q-Ausgangssignal des RS-Flip-Flops 83a wird als Defi
nitionssignal WE(A) für den internen Schreibzyklus und das Q-Aus
gangssignal des RS-Flip-Flops 83b als Definitionssignal WE(B) des
internen Schreibzyklus bereitgestellt.
Im folgenden wird die Struktur des Schreiboperations-Steuerschalt
kreises der Fig. 12C beschrieben. Der Schreiboperations-Steuer
schaltkreis der Fig. 12C weist ähnlich wie der Schreiboperations-
Steuerschaltkreis der Fig. 12B Inverter 81a, 81b, Abfallerfassungs
schaltkreise 82a, 82b, RS-Flip-Flops 83a, 83b und ein ODER-Gatter
86b auf. Es wird jedoch das Definitionssignal *(A) der erlaubten Pe
riode für die Schreiboperation direkt an den Rückstelleingang des
RS-Flip-Flops 83a angelegt. Ferner wird auch das Definitionssignal
*(B) für die erlaubte Periode der Leseoperation direkt an einen Ein
gang des ODER-Gatters 86b angelegt. Der Q-Ausgang des RS-Flip-Flops
83a wird einem Eingang des UND-Gatters 87 zugeführt, während das Zu
griffskonflikt-Erfassungssignal S1 vom Zugriffskonflikt-Erfassungs
schaltkreis 51 an den anderen Eingang des UND-Gatter 87 angelegt
wird.
Fig. 13 zeigt ein Zeitdiagramm zur Erläuterung der allgemeinen Ope
ration der in den Fig. 10-12C gezeigten Ausführungsform. Unter Be
zugnahme auf die Fig. 13 wird nun die Schreib-/Leseoperation der
Seite des A-Ports in einem Fall beschrieben, bei dem kein Zugriffs
konflikt auftritt. Es sei bemerkt, daß die Schreib-/Leseoperation
der Seite des B-Ports in gleicher Weise ausgeführt wird.
Zuerst wird die allgemeine Schreiboperation der Seite des A-Ports
beschrieben. Während des Schreibens empfängt der Dual-Port-RAM 50 A-
Port-Adreßdaten A(A) von der CPU 6, ein Schreibsteuersignal (A),
ein Definitionssignal *(A) der erlaubten Periode für die Schreibo
peration und Schreibdaten über den Systembus. In allgemeinen Spei
chereinrichtungen werden Schreibdaten während der Periode in eine
Speicherzelle geschrieben, in der sich das Schreibsteuersignal (A)
auf dem L-Pegel befindet. Im Dual-Port-RAM 50 der Fig. 10 wird die
L-Pegel-Periode des Schreibsteuersignals (A) der Einleseperiode der
Schreibdaten zugewiesen, so daß die praktische Ausführung des
Schreibens in eine Speicherzelle innerhalb einer vorbestimmten Zeit
spanne nach der Einleseperiode der Schreibdaten ausgeführt wird. Zu
diesem Zweck wird das Definitionssignal *(A) für die erlaubte Peri
ode der Schreiboperation verwendet. Dieses Definitionssignal *(A)
für die erlaubte Periode der Schreiboperation stellt ein Signal dar,
dessen Impuls breiter als das Schreibsteuersignal (A) ist. Die
Zeitspanne vom Anstieg des Schreibsteuersignals (A) bis zum Anstieg
des Definitionssignals *(A) für die erlaubte Periode der Schreibo
peration wird der Schreibperiode der Daten in die Speicherzelle zu
gewiesen. Während dieser Periode ist das Schreiben von Daten in die
ausgewählte Speicherzelle möglich, da die A-Port-Adreßdaten A(A) im
mer noch anliegen. Ein solches Definitionssignal *(A) für die er
laubte Periode der Schreiboperation wird z. B. unter Verwendung eines
Systemtaktsignals extern erzeugt. Ferner kann auch ein Taktsignal,
wie beispielsweise ein Adreßverriegelungs-Aktivierungssignal, als
Definitionssignal *(A) für die erlaubte Periode der Schreibopera
tion benutzt werden. Das Definitionssignal (A) für den externen
Schreibzyklus, das das invertierte Signal des Schreibsteuersignals
(A) darstellt, wird während der Zeitspanne, in der sich das
Schreibsteuersignal (A) auf dem L-Pegel befindet, auf den H-Pegel
gebracht. Befindet sich das Definitionssignal (A) für den externen
Schreibzyklus auf dem H-Pegel, schaltet der Schalter 55a durch, so
daß die Schreibdaten von der CPU 6 in die Schreibdatenverriegelung
53a eingelesen und gehalten werden. Da die Zeitspanne, während der
sich das Schreibsteuersignal (A) auf dem L-Pegel befindet (d. h.
wenn das Definitionssignal W(A) für den externen Schreibzyklus auf
dem H-Pegel liegt), den Schreibzyklus von der Seite der CPU 6 aus
gesehen darstellt, wird diese Zeitspanne im weiteren als externer
Schreibzyklus bezeichnet. Das Definitionssignal WE(A) für den inter
nen Schreibzyklus befindet sich während der Zeitspanne vom Anstieg
des Schreibsteuersignals (A) bis zum Anstieg des Definitionssignals
*(A) für die erlaubte Periode der Schreiboperation auf dem H-Pegel.
Dies ergibt sich aus der Tatsache, daß das RS-Flip-Flop 83a der Fig.
12B und 12C als Reaktion auf den Anstieg des Schreibsteuersignals
(A) gesetzt (der Q-Ausgang auf den H-Pegel gebracht) und als Reak
tion auf den Anstieg des Definitionssignals *(A) für die erlaubte
Periode der Schreiboperation zurückgestellt (der Q-Ausgang auf den
L-Pegel gebracht) wird. Befindet sich das Definitionssignal WE(A)
für den internen Schreibzyklus auf dem L-Pegel, so wird der Schalter
56a durchgeschaltet, um die in der Schreibdatenverriegelung 53a ge
haltenen Schreibdaten dem Leseverstärker 14a zuzuführen. Diese Daten
werden in die ausgewählte Speicherzelle des Speicherzellenfeldes 10
geschrieben. Damit ist im Inneren des Dual-Port-RAM 50 die Zeit
spanne des H-Pegels des Definitionssignals (A) des internen
Schreibzyklus der tatsächliche Schreibzyklus in eine Speicherzelle.
Daher wird die Periode, während der sich das Definitionssignal WE(A)
des internen Schreibzyklus auf dem H-Pegel befindet, im weiteren als
interner Schreibzyklus bezeichnet.
Nun wird die allgemeine Leseoperation der Seite des A-Ports be
schrieben. Während des Lesens empfängt der Dual-Port-RAM 50 A-Port-
Adreßdaten A(A) und ein Lesesteuersignal (A) von der CPU 6 über den
Systembus 2. Da zu diesem Zeitpunkt kein Zugriffskonflikt auftritt,
befindet sich das Zugriffskonflikt-Erfassungssignal S1 vom Zugriffs
konflikt-Erfassungsschaltkreis 51 auf dem L-Pegel. Daher liegt der
Ausgang des UND-Gatters 64a im Leseoperations-Steuerschaltkreis 63
der Fig. 12A auf dem L-Pegel. Selbst wenn das Lesesteuersignal (A)
abfällt und vom Abfallerfassungsschaltkreis 71a ein Einzelimpuls mit
H-Pegel ausgegeben wird, kann dieser Einzelimpuls folglich das UND-
Gatter 65a nicht durchlaufen. Das RS-Flip-Flop 75a wird nicht ge
setzt und dessen Q-Ausgang, d. h. das Schaltsteuersignal SEL(A) wird
auf dem L-Pegel gehalten. Als Reaktion hierauf wählt der Auswahl
schalter 58a das Ausgangssignal des Leseverstärkers 14a aus. Ferner
wird das RS-Flip-Flop 76a als Reaktion auf den Abfall des Lesesteu
ersignals (A) gesetzt. Entsprechend befindet sich der Q-Ausgang des
RS-Flip-Flops 76a, d. h. das Lesedateneinlese-Steuersignal RE(A) wäh
rend der Zeitspanne, in der das Lesesteuersignal (A) auf dem L-Pe
gel liegt, auf dem H-Pegel. Befindet sich das Lesedateneinlese-Steu
ersignal RE(A) auf dem H-Pegel, so schaltet der Schalter 57a durch,
um das Ausgangssignal des Leseverstärkers 14a über den Schalter 57a
an die Lesedatenverriegelung 54a anzulegen. Daher hält die Leseda
tenverriegelung 54a das Ausgangssignal des Leseverstärkers 14a, d. h.
die aus der ausgewählten Speicherzelle des Feldes 100 gelesenen Da
ten.
Da das Lesedatenausgabe-Steuersignal R(A) das invertierte Signal des
Lesesteuersignals (A) darstellt, befindet sich das Lesedatenaus
gabe-Steuersignal R(A) während der Zeitspanne, in der das Lesesteu
ersignal (A) auf dem L-Pegel liegt, auf dem H-Pegel. Befindet sich
das Lesedatenausgabe-Steuersignal R(A) auf dem H-Pegel, so wird der
Drei-Zustands-Puffer 59a in einen leitenden Zustand geschaltet, um
die in der Lesedatenverriegelung 54a gehaltenen Lesedaten über den
Systembus 2 zur CPU 6 auszugeben. Ähnlich wie bei der oben angeführ
ten Schreiboperation wird bei der Leseoperation der Lesezyklus, wie
er von der CPU 6 aus gesehen wird (definiert durch die L-Pegel-Peri
ode des Lesesteuersignals (A)), als externer Lesezyklus und der Le
sezyklus im Inneren des Dual-Port-RAM 50 (definiert durch die H-Pe
gel-Periode des Lesedateneinlese-Steuersignals RE(A)) als interner
Lesezyklus bezeichnet. Die oben beschriebene allgemeine Schreib-
/Leseoperation wird auf der Seite des B-Ports in identischer Weise
ausgeführt.
Aus der oben angeführten Beschreibung ergibt sich, daß der Dual-
Port-RAM 50 wie in Fig. 14 dargestellt arbeitet. Die gesamte Schrei
boperation (Schreibzyklus) wird in die erste Hälfte des externen
Schreibzyklus mit der Zeitperiode T1 und die spätere Hälfte des in
ternen Schreibzyklus mit der Zeitperiode T2 unterteilt. Während des
externen Schreibzyklus wird das Einlesen der Schreibdaten von der
CPU 6 ausgeführt. Während des internen Schreibzyklus erfolgt das
tatsächliche Schreiben in die ausgewählte Speicherzelle. Bei der Le
seoperation fällt der externe Lesezyklus mit dem internen Lesezyklus
zusammen. Mit anderen Worten wird die Leseoperation von der CPU in
Echtzeit mit der Leseoperation aus der Speicherzelle ausgeführt.
Fig. 15 zeigt ein Zeitdiagramm zur Erläuterung der Operation, wenn
zwischen einem Schreibzugriff auf der Seite des A-Ports und einem
Lesezugriff auf der Seite des B-Ports bezüglich derselben Speicher
zelle ein Zugriffskonflikt auftritt. Unter Bezugnahme auf die Fig.
15 wird nun der Betrieb der Ausführungsform der Fig. 10-12C be
schrieben, wenn der oben angeführte Zugriffskonflikt auftritt. Fig.
15 zeigt die Taktsignale für die vier Fälle des Zugriffskonfliktes.
Fig. 16A ist zur Verdeutlichung angegeben, in der Fall 1 von (a)
zeigt, daß der Lesezyklus des B-Ports vor dem internen Schreibzyklus
des A-Ports beginnt, wobei der Lesezyklus des B-Ports während des
externen Schreibzyklus des A-Ports endet. Fall 2 von (b) in Fig. 16A
zeigt, daß der Lesezyklus des B-Ports vor dem externen Schreibzyklus
des A-Ports beginnt und nach der Beendigung des internen Schreibzy
klus des A-Ports endet. Fall 3 von (c) in Fig. 16A legt dar, daß der
Lesezyklus des B-Ports während des externen Schreibzyklus des A-
Ports beginnt und nach der Ausführung des internen Schreibzyklus des
B-Ports endet. Fall 4 von (d) in Fig. 16A zeigt, daß der Lesezyklus
des B-Ports während des internen Schreibzyklus des A-Ports beginnt
und nach der Beendigung des internen Schreibzyklus endet. Im folgen
den wird der Betrieb in den Fällen 1-4 beschrieben. In den Fig. 16B-
16E ist der Datenfluß im A- und B-Port in den Fällen 1-4 darge
stellt.
Wird der Lesezyklus des B-Ports durch einen Abfall des Lesesteuersi
gnals (B) auf den L-Pegel gestartet, steigt das Lesedatenausgabe-
Steuersignal R(B), das das invertierte Signal des Lesesteuersignals
(B) darstellt, auf den H-Pegel an. Ferner wird im Leseoperations-
Steuerschaltkreis 63b auf der Seite des B-Ports (siehe Fig. 12A) vom
Abfallerfassungsschaltkreis 71b ein Einzelimpuls mit H-Pegel ausge
geben und das RS-Flip-Flop 76b gesetzt. Dies bewirkt einen Anstieg
des Lesedateneinlese-Steuersignals RE(B) auf den H-Pegel. Da zu die
sem Zeitpunkt kein Zugriffskonflikt existiert, liegt das Zugriffs
konflikt-Erfassungssignal S1 vom Zugriffskonflikt-Erfassungsschalt
kreis 51 auf dem L-Pegel. Das Schreibsteuersignal (A) befindet sich
auf dem H-Pegel. Daher liegt der Ausgang des UND-Gatters 64b auf dem
L-Pegel. Selbst wenn als Reaktion auf den Abfall des Lesesteuersi
gnals (B) ein Einzelimpuls mit H-Pegel vom Abfallerfassungsschalt
kreis 71b ausgegeben wird, kann dieser Impuls das UND-Gatter 65b
nicht passieren. Damit wird das RS-Flip-Flop 75b nicht gesetzt und
das Schaltsteuersignal SEL(B) bleibt auf dem L-Pegel. Da das Lese
datenausgabe-Steuersignal R(B) auf dem H-Pegel liegt, ist der Drei-
Zustands-Puffer 59b leitend. Ferner ist der Schalter 57b durchge
schaltet, da sich das Lesedateneinlese-Steuersignal RE(B) auf dem H-
Pegel befindet. Außerdem wählt der Auswahlschalter 58b den Ausgang
des Leseverstärkers 14b aus, da sich das Schaltsteuersignal SEL(B)
auf dem L-Pegel befindet. Entsprechend ist der Betriebszustand des
Dual-Port-RAM 50 zu diesem Zeitpunkt der in Fig. 17A dargestellte.
Mit anderen Worten wird auf der Seite des A-Ports keine Operation
ausgeführt, da der Schreibzyklus noch nicht gestartet worden ist.
Demgegenüber werden auf der Seite des B-Ports die vom Leseverstärker
14b ausgegebenen Lesedaten über die Lesedatenverriegelung 54b dem
Systembus 4 zugeführt.
Fallen nun das Schreibsteuersignal (A) und das Definitionssignal
*(A) für die erlaubte Periode der Schreiboperation auf den L-Pegel
ab, so steigt das Definitionssignal W(A) für den externen Schreibzy
klus, das das invertierte Signal des Schreibsteuersignals (A) dar
stellt, auf den H-Pegel an und der externe Schreibzyklus des A-Ports
beginnt. Im Schreiboperations-Steuerschaltkreis der Fig. 12B und 12C
wird vom Abfallerfassungsschaltkreis 82a zu diesem Zeitpunkt kein
Einzelimpuls ausgegeben und das RS-Flip-Flop 83a bleibt in einem
rückgestellten Zustand. Daher befindet sich das Definitionssignal
WE(A) des internen Schreibzyklus auf dem L-Pegel. Demgegenüber gibt
es keine Änderung im Betriebszustand des Leseoperations-Steuer
schaltkreises 63b auf der Seite des B-Ports. Daher verbleiben das
Lesedatenausgabe-Steuersignal R(B) sowie das Lesedateneinlese-Steu
ersignal RE(B) auf dem H-Pegel, während das Schaltsteuersignal
SEL(B) auf dem L-Pegel bleibt. Da sich das Definitionssignal W(A)
des externen Schreibzyklus auf dem H-Pegel befindet, wird der Schal
ter 55a auf der Seite des A-Ports neu durchgeschaltet. Daher befin
det sich der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeit
punkt im Zustand der Fig. 17B. Das bedeutet, daß die Schreibda
ten von der CPU 6 der Schreibdatenverriegelung 53a auf der Seite des
A-Ports zugeführt und gehalten werden. Demgegenüber tritt im Be
triebszustand auf der Seite des B-Ports keine Änderung auf und vom
Leseverstärker 14b ausgegebenen Lesedaten werden über die Lesedaten
verriegelung 54b dem Systembus 4 zugeführt.
Wenn nun das Lesesteuersignal (B) ansteigt und der Lesezyklus des
B-Ports endet, fällt das Lesedatenausgabe-Steuersignal, das das in
vertierte Signal des Lesesteuersignals (B) darstellt, ab. Ferner
wird im Leseoperations-Steuerschaltkreis 63b auf der Seite des B-
Ports vom Anstiegerfassungsschaltkreis 73b als Reaktion auf den An
stieg des Lesesteuersignals R(B) ein Einzelimpuls mit H-Pegel ausge
geben. Dieser Einzelimpuls durchläuft das ODER-Gatter 69b und wird
an den Rückstelleingang des RS-Flip-Flops 76b angelegt. Dies be
wirkt, daß das RS-Flip-Flop 76b zurückgesetzt wird. Entsprechend
fällt das Lesedateneinlese-Steuersignal RE(B) auf den L-Pegel ab.
Demgegenüber ändert sich der Betriebszustand im Schreiboperations-
Steuerschaltkreis der Fig. 12B und 12C nicht. Daher bleiben das De
finitionssignal W(A) für den externen Schreibzyklus auf dem H-Pegel
und das Definitionssignal WE(A) für den internen Schreibzyklus und
das Schaltsteuersignal SEL auf dem L-Pegel. Da das Lesedateneinlese-
Steuersignal RE(B) und das Lesedatenausgabe-Steuersignal R(B) auf
den L-Pegel abfallen, wird der Schalter 55b gesperrt und der Drei-
Zustands-Puffer 59b auf der Seite des B-Ports in einen nicht-leiten
den Zustand geschaltet. Daher ist der Betriebszustand des Dual-Port-
RAM 50 zu diesem Zeitpunkt der in von Fig. 17C dargestellte.
Dies bedeutet, daß der Betrieb auf der Seite des B-Ports angehalten
ist. Demgegenüber ändert sich der Betriebszustand auf der Seite des
A-Ports nicht und die Schreibdaten von der CPU 6 werden der Schreib
datenverriegelung zugeführt und gehalten.
Steigt das Schreibsteuersignal (A) auf den H-Pegel an und fällt das
Definitionssignal W(A) für den externen Schreibzyklus, das dessen
invertiertes Signal darstellt, auf den L-Pegel ab, so endet der ex
terne Schreibzyklus des A-Ports. Als Reaktion auf den Abfall des De
finitionssignals W(A) des externen Schreibzyklus wird vom Abfaller
fassungsschaltkreis 82a im Schreiboperations-Steuerschaltkreis der
Fig. 12B und 12C ein Einzelimpuls ausgegeben, um das RS-Flip-Flop
83a zu setzen. Dies bewirkt, daß das Definitionssignal WE(A) des in
ternen Schreibzyklus auf den H-Pegel ansteigt und der interne
Schreibzyklus des A-Ports beginnt. Demgegenüber ändert sich der Be
triebszustand des Leseoperations-Steuerschaltkreises 63b auf der
Seite des B-Ports nicht. Entsprechend behalten das Lesedateneinlese-
Steuersignals RE(B), das Lesedatenausgabe-Steuersignals SR(B) und
das Schaltsteuersignal SEL(B) jeweils den L-Pegel bei. Damit fällt
das Definitionssignal W(A) des externen Schreibzyklus auf den L-Pe
gel, um den Schalter 55a zu sperren. Da das Definitionssignal WE(A)
für den internen Schreibzyklus auf den H-Pegel ansteigt, schaltet
der Schalter 56a durch. Damit ist der Betriebszustand des Dual-Port-
RAM 50 zu diesem Zeitpunkt der von in Fig. 17D gezeigte. Das be
deutet, daß die in der Schreibdatenverriegelung 53a gehaltenen
Schreibdaten über den Schalter 56a dem Leseverstärker 14a zugeführt
und in die ausgewählte Speicherzelle des Speicherzellenfeldes 100
geschrieben werden. Demgegenüber tritt im Betriebszustand auf der
Seite des B-Ports keine Änderung auf und der Betrieb bleibt angehal
ten.
Beim Betrieb im Fall 1 werden die an den A-Port angelegten Schreib
daten nicht sofort in eine Speicherzelle geschrieben, sondern zuerst
in der Schreibdatenverriegelung gehalten, während das Lesen und Aus
geben von Daten auf der Seite des B-Ports während dieser Periode
ausgeführt werden. Beim Schreiben der in der Schreibdatenverriege
lung 53a gehaltenen Schreibdaten in eine Speicherzelle wird die Aus
gabeoperation der Lesedaten im B-Port verhindert, so daß eine Unde
finiertheit der Lesedaten, die sich aus dem Konflikt zwischen einem
Schreib- und einem Lesezugriff ergibt, verhindert wird.
Zuerst beginnt der Lesezyklus des B-Ports, indem das Lesesteuersi
gnal (B) auf den L-Pegel fällt. Zu diesem Zeitpunkt ist der externe
Schreibzyklus auf der Seite des A-Ports noch nicht begonnen worden.
Daher ist der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeit
punkt der Zustand von in der oben angeführten Fig. 17A. Dies be
deutet, daß die vom Leseverstärker 14b ausgegebenen Lesedaten über
die Lesedatenverriegelung 54b dem Systembus 4 zugeführt werden.
Als nächstes fallen das Schreibsteuersignal (A) und das Definiti
onssignal *(A) für die erlaubte Periode der Schreiboperation auf
den L-Pegel und der externe Schreibzyklus des A-Ports beginnt. Zu
diesem Zeitpunkt befindet sich der B-Port in der Mitte des Lesezy
klus. Daher ist der Betriebszustand des Dual-Port-RAM 50 zu diesem
Zeitpunkt der Zustand von in der oben angeführten Fig. 17B. Das
bedeutet, daß auf der Seite des A-Ports die von der CPU 6 zugeführ
ten Schreibdaten an die Schreibdatenverriegelung 53a angelegt und
gehalten werden. Auf der Seite des B-Ports werden die vom Lesever
stärker 14b ausgegebenen Lesedaten über die Lesedatenverriegelung
54b dem Systembus 3 zugeleitet.
Wenn als nächstes das Schreibsteuersignal (A) auf den H-Pegel an
steigt und das Definitionssignal W(A) für den externen Schreibzy
klus, das das invertierte Signal hierzu darstellt, auf den L-Pegel
abfällt, ist der externe Schreibzyklus des A-Ports beendet. Ferner
wird als Reaktion auf den Abfall des Definitionssignals W(A) für den
externen Schreibzyklus vom Abfallerfassungsschaltkreis 82a im
Schreiboperations-Steuerschaltkreis der Fig. 12B und 12C ein Einze
limpuls mit H-Pegel ausgegeben, um das RS-Flip-Flop 83a zu setzen.
Dies bewirkt einen Anstieg des Definitionssignals WE(A) für den in
ternen Schreibzyklus auf den H-Pegel, wodurch der interne Schreibzy
klus des A-Ports gestartet wird. Demgegenüber fällt im Leseoperati
ons-Steuerschaltkreis 63b auf der Seite des B-Ports das Ausgangssi
gnal des UND-Gatters 64b vom H- auf den L-Pegel ab. Dies ergibt sich
aus der Tatsache, daß der L-Pegel des Schreibsteuersignals (A) auf
den H-Pegel ansteigt und damit ein Eingang des UND-Gatters 64b auf
den L-Pegel gezogen wird, obwohl sich das Zugriffskonflikt-Erfas
sungssignal S1 vom Zugriffskonflikt-Erfassungsschaltkreis 51 auf dem
H-Pegel befindet. Als Reaktion auf den Abfall des Ausgangssignals
vom UND-Gatter 64b wird vom Abfallerfassungsschaltkreis 72b ein Ein
zelimpuls mit H-Pegel ausgegeben. Dieser Einzelimpuls wird an einen
Eingang des UND-Gatters 66b angelegt. Zu diesem Zeitpunkt wird das
invertierte Signal des Schaltsteuersignals SEL(B), d. h. ein Signal
mit H-Pegel, an den anderen Eingang des UND-Gatters 66b angelegt.
Entsprechend durchläuft der Einzelimpuls vom Abfallerfassungsschalt
kreis 72b das UND-Gatter 66b und wird über das ODER-Gatter 69b dem
Rückstelleingang des RS-Flip-Flops 76b zugeführt. Hierdurch wird das
RS-Flip-Flop 76b zurückgestellt und das Lesedateneinlese-Steuersi
gnal RW(B) auf den L-Pegel gezogen. Das Lesedatenausgabe-Steuersi
gnal R(B) behält den H-Pegel und das Schaltsteuersignal SEL(B) den
L-Pegel bei. Damit wird der Schalter 55a in einen gesperrten Zustand
gebracht, da das Definitionssignal W(A) für den externen Schreibzy
klus auf den L-Pegel gezogen wird. Ferner wird der Schalter 56a
durchgeschaltet, da das Definitionssignal WE(A) für den internen
Schreibzyklus auf den H-Pegel gebracht wird. Darüber hinaus wird der
Schalter 57b gesperrt, da das Lesedateneinlese-Steuersignal RE(B)
auf den L-Pegel gebracht wird. Daher ist der Betriebszustand des
Dual-Port-RAM 50 zu diesem Zeitpunkt der als in Fig. 17E darge
stellte Zustand. Dies bedeutet, daß auf der Seite des A-Ports die in
der Schreibdatenverriegelung 53a gehaltenen Schreibdaten über den
Schalter 56a dem Leseverstärker 14 zugeführt werden, um in die aus
gewählte Speicherzelle geschrieben zu werden. Demgegenüber werden
auf der Seite des B-Ports die in der Lesedatenverriegelung 54b ge
haltenen Lesedaten über den Drei-Zustands-Puffer 59b dem Systembus 4
zugeführt.
Wenn als nächstes das Definitionssignal *(A) für die erlaubte Peri
ode der Schreiboperation auf den H-Pegel ansteigt, wird das RS-Flip-
Flop im Schreiboperations-Steuerschaltkreis der Fig. 12B und 12C zu
rückgestellt und das Definitionssignal WE(A) für den internen
Schreibzyklus fällt auf den L-Pegel, um den internen Schreibzyklus
des A-Ports zu beenden. Demgegenüber findet im Leseoperations-Steu
erschaltkreis 63b auf der Seite des B-Ports keine Veränderung des
Betriebszustandes statt. Daher behalten das Schaltsteuersignal
SEL(B) und das Lesedateneinlese-Steuersignal RE(B) den L-Pegel bei,
wohingegen das Lesedatenausgabe-Steuersignal R(B) den H-Pegel beibe
hält. Damit wird der Schalter 56a gesperrt, das das Definitionssi
gnal WE(A) des internen Schreibzyklus auf den L-Pegel gebracht wird.
Daher ist der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeit
punkt der Zustand von in Fig. 17F. Dies bedeutet, daß der Betrieb
auf der Seite des A-Ports vollständig angehalten ist. Demgegenüber
findet im Betriebszustand auf der Seite des B-Ports keine Änderung
statt und die in der Lesedatenverriegelung 54b gehaltenen Lesedaten
werden über den Drei-Zustands-Puffer 59b dem Systembus 4 zugeführt.
Damit wird im Fall 2 eine Undefiniertheit der Lesedaten, die bei ei
nem Konflikt zwischen einem Schreib- und einem Lesezugriff auftritt,
verhindert, indem selbst während des Schreibzyklus des A-Ports die
in der Lesedatenverriegelung 54b gehaltenen Lesedaten zum Zeitpunkt
des Beginns des Lesezyklus dem Systembus 4 zugeführt werden.
Zuerst fallen das Schreibsteuersignal (A) und das Definitionssignal
*(A) für die erlaubte Periode der Schreiboperation auf den L-Pegel
ab. Als Reaktion steigt das Definitionssignal (A) für den externen
Schreibzyklus, das das invertierte Signal des Schreibsteuersignals
(A) ist, an, um den externen Schreibzyklus des A-Ports zu starten.
Zu diesem Zeitpunkt ist der Lesezyklus des B-Ports noch nicht begon
nen worden. Dieser Zustand ist ähnlich dem Zustand des oben ange
führten Falles 1, bei dem der Lesezyklus des B-Ports während des ex
ternen Schreibzyklus des A-Ports endet. Daher ist der Betriebszu
stand des Dual-Port-RAM 50 zu diesem Zeitpunkt der Zustand in
der oben angeführten Fig. 17C. Dies bedeutet, daß auf der Seite des
A-Ports die von der CPU 6 angelegten Schreibdaten über den Schalter
55a der Schreibdatenverriegelung 53a zugeführt und gehalten werden.
Demgegenüber wird auf der Seite des B-Ports keine Operation ausge
führt, da der Lesezyklus noch nicht begonnen hat.
Wenn das Lesesteuersignal (B) auf den L-Pegel abfällt, steigt das
Lesedatenausgabe-Steuersignal R(B), das dessen invertiertes Signal
darstellt, auf den H-Pegel an, um den Lesezyklus des B-Ports zu
starten. Zu diesem Zeitpunkt befinden sich die beiden Eingänge des
UND-Gatters 64b im Leseoperations-Steuerschaltkreis 63b auf der
Seite des B-Ports auf dem H-Pegel und das Ausgangssignal des UND-
Gatters 64b liegt damit ebenfalls auf dem H-Pegel.
Wird als Reaktion auf den Abfall des Lesesteuersignals (B) vom Ab
fallerfassungsschaltkreis 71b ein Einzelimpuls ausgegeben, so läuft
dieser Impuls folglich durch das UND-Gatter 65b durch und setzt das
RS-Flip-Flop 75b. Daher steigt das Schaltsteuersignal SEL(B) auf den
H-Pegel an. Ferner setzt der vom Abfallerfassungsschaltkreis 71b
ausgegeben Einzelimpuls auch das RS-Flip-Flop 76b. Entsprechend
steigt auch das Lesedateneinlese-Steuersignal RE(B) auf den H-Pegel
an. Demgegenüber findet im Schreiboperations-Steuerschaltkreis der
Fig. 12B und 12C keine Änderung des Betriebszustandes statt. Daher
behält das Definitionssignal W(A) für den externen Schreibzyklus den
H-Pegel und das Definitionssignal WE(A) für den internen Schreibzy
klus den L-Pegel bei. Damit wählt der Auswahlschalter 58b das Aus
gangssignal der Schreibdatenverriegelung 53a aus, da das Schaltsteu
ersignal SEL(B) auf den H-Pegel gezogen wird. Ferner schaltet auch
der Schalter 57b durch, da sich das Lesedateneinlese-Steuersignal
RE(B) auf dem H-Pegel befindet. Darüber hinaus wird auch der Drei-
Zustands-Puffer 59 in einen leitenden Zustand gebracht, da sich das
Lesedatenausgabe-Steuersignal R(B) auf dem H-Pegel befindet. Daher
ist der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeitpunkt der
Zustand in Fig. 17G. Dies bedeutet, daß auf der Seite des A-
Ports keine Änderung des Betriebszustandes stattfindet und die von
der CPU 6 angelegten Schreibdaten werden über den Schalter 55a der
Schreibdatenverriegelung 53a zugeführt und gehalten. Demgegenüber
werden auf der Seite des B-Ports die in der Schreibdatenverriegelung
53a auf der Seite des A-Ports gehaltenen Daten über den Auswahl
schalter 58b und den Schalter 57b der Lesedatenverriegelung 54b zu
geführt und gehalten. Die gehaltenen Daten der Lesedatenverriegelung
54b werden dem Systembus 4 über den Drei-Zustands-Puffer als Leseda
ten übergeben. Dies bedeutet, daß die auf der Seite des A-Ports ein
gelesenen Daten als Lesedaten vom B-Port abgegeben werden, bevor sie
in die Speicherzelle geschrieben werden.
Steigt das Schreibsteuersignal (A) als nächstes auf den H-Pegel an,
fällt das Definitionssignal W(A) für das externe Schreiben, das des
sen invertiertes Signal darstellt, auf den L-Pegel ab und der ex
terne Schreibzyklus des A-Ports endet. Ferner wird als Reaktion auf
den Abfall des Definitionssignals W(A) für den externen Schreibzy
klus vom Abfallerfassungsschaltkreis 82a im Schreiboperations-Steu
erschaltkreis der Fig. 12B und 12C ein Einzelimpuls mit H-Pegel aus
gegeben, um das RS-Flip-Flop 83a zu setzen. Daher steigt das Defini
tionssignal WE(A) für den internen Schreibzyklus auf den H-Pegel an,
um den internen Schreibzyklus im Port A zu starten. Demgegenüber
findet im Leseoperations-Steuerschaltkreis 63b auf der Seite des B-
Ports keine Änderung des Betriebszustandes statt. Daher behalten das
Schaltsteuersignal SEL, das Schreibdateneinlese-Steuersignal RE(B)
und das Lesedatenausgabe-Steuersignal R(B) jeweils den H-Pegel bei.
Damit wird der Schalter 55a gesperrt, da das Definitionssignal W(A)
für den externen Schreibzyklus auf den L-Pegel gebracht wird. Ferner
wird der Schalter 56a durchgeschaltet, da das Definitionssignal
WE(A) für den internen Schreibzyklus auf den H-Pegel gezogen wird.
Somit ist der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeit
punkt der Zustand in Fig. 17H. Dies bedeutet, daß auf der Seite
des A-Ports die Eingabe von der CPU 6 zur Schreibdatenverriegelung
53a blockiert ist und die in der Schreibdatenverriegelung 53a gehal
tenen Schreibdaten über den Schalter 56a dem Leseverstärker 14a zu
geführt werden. Daher werden Daten in die ausgewählte Speicherzelle
des Speicherzellenfeldes 100 geschrieben. Demgegenüber findet auf
der Seite des B-Ports keine Veränderung des Betriebszustandes statt
und die in der Schreibdatenverriegelung 53a gehaltenen Daten werden
dem Systembus 4 über die Lesedatenverriegelung 54b als Lesedaten zu
geführt.
Fällt nun das Definitionssignal *(A) für die erlaubte Periode der
Schreiboperation auf den L-Pegel ab, so wird das RS-Flip-Flop 83a in
den Fig. 12B und 12C zurückgestellt, so daß das Definitionssignal
WE(A) für den internen Schreibzyklus auf den L-Pegel abfällt. Daher
endet der interne Schreibzyklus des A-Ports. Zu diesem Zeitpunkt be
findet sich der B-Port in der Mitte des Lesezyklus. Dieser Zustand
ist dem Zustand im Fall 2 ähnlich, wenn der interne Schreibzyklus
des A-Ports endet. Daher ist der Betriebszustand des Dual-Port-RAM
50 zu diesem Zeitpunkt der Zustand in der oben erwähnten Fig.
17F. Dies bedeutet, daß auf der Seite des A-Ports keine Operation
ausgeführt wird, da der Schreibzyklus beendet worden ist. Demgegen
über werden auf der Seite des B-Ports die in der Lesedatenverriege
lung 54b gehaltenen Daten (die von der Schreibdatenverriegelung 53a
während des Schreibzyklus des A-Ports eingelesenen Daten) dem
Systembus 4 zugeführt.
Im Fall 3 werden die während des Schreibzyklus des A-Ports in die
Schreibdatenverriegelung 53a eingelesenen Daten der Lesedatenverrie
gelung 54b über den Auswahlschalter 58b zugeführt und von der Lese
datenverriegelung 54b dem Systembus 4 als Lesedaten übergeben. Da
die ausgewählte Speicherzelle später von den Schreibdaten von der
CPU 6 überschrieben wird, werden die in der Schreibdatenverriegelung
54b gehaltenen Daten vor der Ausführung des Überschreibens mit ande
ren Worten als Lesedaten behandelt. Dies verhindert eine Undefi
niertheit der Lesedaten, die bei einem Konflikt zwischen einem
Schreibzugriff der Seite des A-Ports und einem Lesezugriff der Seite
des B-Ports auftritt.
Zuerst fallen das Schreibsteuersignal (A) und das Definitionssignal
*(A) für die erlaubte Periode der Schreiboperation auf den L-Pegel
ab. Daher steigt das Definitionssignal W(A) für den externen
Schreibzyklus, das das invertierte Signal des Schreibsteuersignals
(A) ist, auf den H-Pegel an, um den externen Schreibzyklus des A-
Ports zu starten. Zu diesem Zeitpunkt ist der Lesezyklus des B-Ports
noch nicht gestartet worden. Dieser Zustand ist dem Zustand im oben
erwähnten Fall 3 ähnlich, wenn der externe Schreibzyklus des A-
Ports beginnt. Daher ist der Betriebszustand des Dual-Port-RAM 50 zu
diesem Zeitpunkt der Zustand in Fig. 17C. Dies bedeutet, daß auf
der Seite des A-Ports die von der CPU 6 angelegten Schreibdaten über
den Schalter 55a der Schreibdatenverriegelung 53a zugeführt und ver
riegelt werden. Demgegenüber wird auf der Seite des B-Ports keine
Operation ausgeführt, da der Lesezyklus noch nicht gestartet worden
ist.
Steigt das Schreibsteuersignal (A) nun auf den H-Pegel an, so fällt
das Definitionssignal W(A) des externen Schreibzyklus, das dessen
invertiertes Signal ist, auf den L-Pegel ab. Ferner steigt das Defi
nitionssignal WE(A) für den internen Schreibzyklus an, um den inter
nen Schreibzyklus des A-Ports zu starten. Zu diesem Zeitpunkt ist im
B-Port der Lesezyklus noch nicht gestartet worden. Dieser Zustand
ist dem Zustand des oben angeführten Falles 1 ähnlich, wenn der in
terne Schreibzyklus des A-Ports beginnt. Daher ist der Betriebszu
stand des Dual-Port-RAM 50 zu diesem Zeitpunkt der Zustand in
der oben angeführten Fig. 17D. Dies bedeutet, daß die in der
Schreibdatenverriegelung 53a gehaltenen Schreibdaten an den Lesever
stärker 14a angelegt werden, um in die ausgewählte Speicherzelle des
Speicherzellenfeldes 100 eingeschrieben zu werden. Demgegenüber wird
auf der Seite des B-Ports keine Operation ausgeführt, da der Lesezy
klus noch nicht gestartet worden ist.
Fällt das Lesesteuersignal (B) nun auf den L-Pegel, so steigt das
Lesedatenausgabe-Steuersignal R(B), das dessen invertiertes Signal
darstellt, auf den H-Pegel an, um den Lesezyklus des B-Ports zu
starten. Als Reaktion auf den Abfall des Lesesteuersignals (B) wird
vom Abfallerfassungsschaltkreis 71b ein Einzelimpuls ausgegeben, um
das RS-Flip-Flop 76b zu setzen. Folglich steigt das Lesedatenein
lese-Steuersignal RE(B) auf den H-Pegel an. Das Schaltsteuersignal
SEL(B) befindet sich zu diesem Zeitpunkt auf dem L-Pegel. Demgegen
über findet keine Änderung des Betriebszustandes im Schreiboperati
ons-Steuerschaltkreis der Fig. 12B und 12C statt. Daher behalten das
Definitionssignal W(A) für den externen Schreibzyklus und das Defi
nitionssignal WE(A) für den internen Schreibzyklus den L-Pegel bei.
Damit wählt der Auswahlschalter 58b das Ausgangssignal des Lesever
stärkers 14b aus, da das Schaltsteuersignal SEL(B) auf dem L-Pegel
liegt. Ferner wird der Schalter 57b durchgeschaltet, da das Leseda
teneinlese-Steuersignal RE(B) auf den H-Pegel gebracht wird. Darüber
hinaus wird der Drei-Zustands-Puffer 59b leitend, weil das Leseda
tenausgabe-Steuersignal R(B) auf den H-Pegel gezogen wird. Somit ist
der Betriebszustand des Dual-Port-RAM 50 zu diesem Zeitpunkt der Zu
stand in Fig. 17I. Das bedeutet, daß auf der Seite des A-Ports
die in der Schreibdatenverriegelung 53a gehaltenen Schreibdaten dem
Leseverstärker 14a zugeführt werden, um in die ausgewählte Speicher
zelle eingeschrieben zu werden. Demgegenüber werden auf der Seite
des B-Ports die vom Leseverstärker 14b ausgegebenen Lesedaten über
die Lesedatenverriegelung 54b dem Systembus 4 zugeführt.
Wenn als nächstes das Definitionssignal *(A) für die erlaubte Peri
ode der Schreiboperation auf den H-Pegel ansteigt, so fällt das De
finitionssignal WE(A) für den internen Schreibzyklus ab, um die in
terne Schreiboperation des A-Ports zu beenden. Zu diesem Zeitpunkt
befindet sich der B-Port in der Mitte des Lesezyklus. Dieser Zustand
ist ähnlich dem Zustand des oben angeführten Falles 1, wenn der Le
sezyklus des B-Ports beginnt. Daher ist der Betriebszustand des
Dual-Port-RAM 50 zu diesem Zeitpunkt der Zustand in Fig. 17A. Da
der interne Schreibzyklus auf der Seite des A-Ports beendet worden
ist, bedeutet dies, daß dessen Betrieb vollständig angehalten ist.
Demgegenüber werden auf der Seite des B-Ports die vom Leseverstärker
14b ausgegebenen Lesedaten über die Lesedatenverriegelung 54b dem
Systembus 4 zugeführt.
Da der Lesezyklus des B-Ports nach dem Beginn des internen Schreib
zyklus des A-Ports gestartet wird, befinden sich damit die aus der
Speicherzelle ausgelesenen Daten selbst dann nicht in einem undefi
nierten Zustand, wenn ein Zugriffskonflikt auftritt. Daher werden
die aus der Speicherzelle ausgelesenen Daten dem Systembus 4 über
die Lesedatenverriegelung 54b zugeführt.
Obwohl die oben angeführte Operation für einen Fall beschrieben wor
den ist, bei dem ein Konflikt zwischen einem Schreibzugriff der
Seite des A-Ports und einem Lesezugriff der Seite des B-Ports bezüg
lich derselben Speicherzelle im Speicherzellenfeld 100 beschrieben
worden ist, wird eine ähnliche Operation für den umgekehrten Fall
ausgeführt, daß ein Konflikt zwischen einem Lesezugriff auf der
Seite des A-Ports und einem Schreibzugriff auf der Seite des B-Ports
auftritt, wobei hier nur die Rolle von A- und B-Port vertauscht ist.
Nun wird der Betrieb für den Fall beschrieben, daß ein Konflikt zwi
schen einem Schreibzugriff der Seite des A-Ports und einem Schreib
zugriff der Seite des B-Ports bezüglich derselben Speicherzelle im
Speicherzellenfeld 100 auftritt. Wie oben erwähnt worden ist, unter
scheiden sich die Verfahren zur Vermeidung eines Zugriffskonfliktes
zwischen dem Schreiboperations-Steuerschaltkreis der Fig. 12B und
dem Schreiboperations-Steuerschaltkreis der Fig. 12C. Dies bedeutet,
daß der Schreiboperations-Steuerschaltkreis der Fig. 12B dem später
erzeugten Schreibzugriff Priorität einräumt, wenn zwischen einem
Schreibzugriff der Seite des A-Ports und einem Schreibzugriff der
Seite des B-Ports ein Konflikt auftritt. Andererseits gibt der
Schreiboperations-Steuerschaltkreis der Fig. 12C stets dem Schreib
zugriff der Seite des A-Ports Priorität, wenn zwischen einem
Schreibzugriff der Seite des A-Ports und einem Schreibzugriff der
Seite des B-Ports ein Konflikt auftritt.
Fig. 18 zeigt ein Zeitdiagramm des Betriebs des Schreiboperation-
Steuerschaltkreises der Fig. 12B, wenn zwischen einem Schreibzugriff
der Seite des A-Ports und einem Schreibzugriff der Seite des B-Ports
bezüglich derselben Speicherzelle ein Konflikt auftritt. Unter Be
zugnahme auf die Fig. 18 wird zuerst der Betrieb des Schreiboperati
ons-Steuerschaltkreises der Fig. 12B zum Zeitpunkt des Zugriffskon
fliktes beschrieben. Es wird angenommen, daß zuerst ein Schreibzu
griff der Seite des A-Ports erzeugt wird, gefolgt von der Erzeugung
eines Schreibzugriffs der Seite des B-Ports während des internen
Schreibzyklus. Endet der externe Schreibzyklus des B-Ports und fällt
das Definitionssignal W(B) des externen Schreibzyklus auf den L-Pe
gel ab, so gibt der Abfallerfassungsschaltkreis 82b einen Einzelim
puls mit H-Pegel aus und setzt das RS-Flip-Flop 83b. Dies bewirkt
einen Anstieg des Definitionssignals WE(B) für den internen Schreib
zyklus auf den H-Pegel, um den internen Schreibzyklus der Seite des
B-Ports zu starten. Als Reaktion auf den Anstieg des Definitionssi
gnals WE(B) des internen Schreibzyklus auf den H-Pegel steigt auch
der Ausgang des UND-Gatters 84b auf den H-Pegel an. Als Reaktion
hierauf wird vom Anstiegerfassungsschaltkreis 85a ein Einzelimpuls
mit H-Pegel ausgegeben. Dieser Einzelimpuls wird über das ODER-Gat
ter 86a an das RS-Flip-Flop 83a angelegt, um dieses zurückzustellen.
Dies bewirkt einen Abfall des Definitionssignals WE(A) des internen
Schreibzyklus auf den L-Pegel. Das heißt, der interne Schreibzyklus
der Seite des A-Ports wird beendet und dem internen Schreibzyklus
der Seite des B-Ports wird Priorität gegeben. Für den Fall, daß der
Schreibzugriff der Seite des B-Ports vor dem Schreibzugriff der
Seite des A-Ports erzeugt wird, wird eine ähnliche Operation ausge
führt, nur sind die Rollen der Ports A und B vertauscht.
Fig. 19 zeigt ein Zeitdiagramm der Operation des Schreiboperations-
Steuerschaltkreises der Fig. 12C, wenn zwischen einem Schreibzugriff
der Seite des A-Ports und einem Schreibzugriff der Seite des B-Ports
bezüglich derselben Speicherzelle ein Konflikt auftritt. Unter Be
zugnahme auf die Fig. 19 wird der Betrieb des Schreiboperations-
Steuerschaltkreises der Fig. 19C zum Zeitpunkt des Zugriffskonflik
tes beschrieben. Fig. 19 zeigt vier Fälle eines Zugriffskonfliktes.
In Fig. 19 zeigt Fall 1, daß der interne Schreibzyklus der Seite des
A-Ports nach der Beendigung des internen Schreibzyklus der Seite des
B-Ports beginnt. Es gibt keine Schlichtung des Zugriffskonfliktes,
da kein Konflikt beim Schreiben von Daten bezüglich derselben
Speicherzelle existiert.
Fall 2 zeigt, daß der interne Schreibzyklus der Seite des A-Ports
während des internen Schreibzyklus der Seite des B-Ports beginnt. In
diesem Fall steigt das Ausgangssignal des UND-Gatters 87 als Reak
tion auf den Anstieg des Definitionssignals WE(A) des internen
Schreibzyklus auf den H-Pegel an. Der Anstieg des Ausgangssignals
vom UND-Gatter 87 wird über das ODER-Gatter 86b an das RS-Flip-Flop
83b angelegt, um dieses zurückzustellen. Entsprechend fällt das De
finitionssignal WE(B) des internen Schreibzyklus auf den L-Pegel ab.
Dies bedeutet, daß der interne Schreibzyklus auf der Seite des B-
Ports beendet wird und dem internen Schreibzyklus der Seite des A-
Ports Priorität eingeräumt wird.
Fall 3 zeigt den Zustand, wenn versucht wird, während des internen
Schreibzyklus der Seite des A-Ports den internen Schreibzyklus der
Seite des B-Ports zu starten. In diesem Fall wird das RS-Flip-Flop
83b nicht gesetzt, da das Definitionssignal WE(A) des internen
Schreibzyklus und das Zugriffskonflikt-Erfassungssignal S1 vom Zu
griffskonflikt-Erfassungsschaltkreis 51 auf dem H-Pegel liegen und
damit der Rückstelleingang des RS-Flip-Flops 83b auf dem H-Pegel ge
halten wird, selbst wenn das Definitionssignal W(B) für den externen
Schreibzyklus abfällt und der Abfallerfassungsschaltkreis 82b einen
Einzelimpuls mit H-Pegel ausgibt. Dies bedeutet, daß der Beginn des
internen Schreibzyklus der Seite des B-Ports angehalten wird und dem
internen Schreibzyklus der Seite des A-Ports Priorität eingeräumt
wird.
Fall 4 zeigt, daß der interne Schreibzyklus der Seite des B-Ports
beginnt, nachdem der interne Schreibzyklus der Seite des A-Ports
beendet worden ist. In diesem Fall wird keine Schlichtung des Zu
griffskonfliktes ausgeführt, da ähnlich wie beim oben angeführten
Fall 1 kein Konflikt beim Datenschreiben bezüglich derselben
Speicherzelle existiert.
Da ein Konflikt zwischen einem Schreibzugriff der Seite des A-Ports
und des B-Ports von der externen Seite des Systems vermieden werden
kann, erfordert der Dual-Port-Speicher der vorliegenden Erfindung
wenigstens die Funktion, einen Konflikt zwischen einem Schreib- und
einem Lesezugriff schlichten zu können.
Damit kann in Übereinstimmung mit der vorliegenden Erfindung eine
Schlichtung des Zugriffskonflikts intern im Dual-Port-Speicher aus
geführt werden, ohne daß ei 00512 00070 552 001000280000000200012000285910040100040 0002004111483 00004 00393ne Zugriffswarteanforderung zur externen
Systemseite ausgegeben wird, wenn ein Zugriffskonflikt auftritt. Es
ist daher möglich, diesen Dual-Port-Speicher in Systemen zu verwen
den, die eine Zugriffswarteanforderung nicht verarbeiten können.
Ferner ist es möglich, unter Verwendung von Dual-Port-Speichern ein
Echtzeit-Steuersystem zu entwickeln, wenn Echtzeit gefordert wird.
Claims (10)
1. Dual-Port-Speicher zum Übertragen von Daten zwischen einem
ersten System (6) und einem zweiten System (7) über einen ersten
und einen zweiten Ein-/Ausgabeport, auf den gleichzeitig vom
ersten und zweiten System (6, 7) zugegriffen werden kann, mit:
einem Speicherzellenfeld (100) mit einer Mehrzahl von Speicher zellen,
einer ersten Speicherzellen-Auswahleinrichtung (9a) zum Auswählen von einer der Speicherzellen im Speicherzellenfeld (100) in Ab hängigkeit von Adreßdaten A(A), die vom ersten System (6) zuge führt werden,
einer zweiten Speicherzellen-Auswahleinrichtung (9b) zum Auswählen von einer der Speicherzellen im Speicherzellenfeld (100) in Ab hängigkeit von Adreßdaten A(B), die vom zweiten System (7) zuge führt werden,
einer Zugriffskonflikt-Erfassungseinrichtung (51) zum Erfassen eines Konfliktes zwischen einem Zugriff des ersten Systems (6) und einem Zugriff des zweiten Systems (7) bezüglich derselben Spei cherzelle im Speicherzellenfeld (100),
gekennzeichnet durch:
eine Steuersignal-Erzeugungseinrichtung (52) zum Erzeugen einer Mehrzahl von Steuersignalen (SEL(A), W(A), WE(A), R(A), RE(A); SEL(B), W(B), WE(B), R(B), RE(B)) in Übereinstimmung mit den Steuerdaten ((A), *(A), (A); (B), *(B), (B)) von den ersten und zweiten Systemen (6, 7) und dem Ausgangssignal (S1) der Zu griffskonflikt-Erfassungseinrichtung (51),
eine erste Übertragungssteuereinrichtung (53a-59a), die von den Steuersignalen abhängig ist, zum Steuern der Übertragung von Schreibdaten und Lesedaten zwischen dem ersten System (6) und dem Speicherzellenfeld (100), und
eine zweite Übertragungssteuereinrichtung (53b-59b), die von den Steuersignalen abhängig ist, zum Steuern der Übertragung von Schreibdaten und Lesedaten zwischen dem zweiten System (7) und dem Speicherzellenfeld (100), wobei
die erste Übertragungssteuereinrichtung (53a-59a) eine erste Lese daten-Auswahleinrichtung (58a) aufweist zum selektiven Anlegen von Daten, die aus der Speicherzelle gelesen worden sind, oder der Schreibdaten, die vom zweiten System (7) zugeführt werden, an das erste System (6) in Abhängigkeit von einem ersten Schaltsteuersi gnal (SEL(A)) aus der Mehrzahl von Steuersignalen von der Zu griffskonflikt-Erfassungseinrichtung (51), die einen Konflikt erfaßt, und
die zweite Übertragungssteuereinrichtung (53b-59b) eine zweite Lesedaten-Auswahleinrichtung (58b) aufweist zum selektiven Anlegen von Daten, die aus der Speicherzelle gelesen worden sind, oder der Schreibdaten, die vom ersten System (6) zugeführt werden, an das zweite System (7) in Abhängigkeit von einem zweiten Schaltsteuer signal (SEL(B)) aus der Mehrzahl von Steuersignalen von der Zu griffskonflikt-Erfassungseinrichtung (51), die einen Konflikt er faßt.
einem Speicherzellenfeld (100) mit einer Mehrzahl von Speicher zellen,
einer ersten Speicherzellen-Auswahleinrichtung (9a) zum Auswählen von einer der Speicherzellen im Speicherzellenfeld (100) in Ab hängigkeit von Adreßdaten A(A), die vom ersten System (6) zuge führt werden,
einer zweiten Speicherzellen-Auswahleinrichtung (9b) zum Auswählen von einer der Speicherzellen im Speicherzellenfeld (100) in Ab hängigkeit von Adreßdaten A(B), die vom zweiten System (7) zuge führt werden,
einer Zugriffskonflikt-Erfassungseinrichtung (51) zum Erfassen eines Konfliktes zwischen einem Zugriff des ersten Systems (6) und einem Zugriff des zweiten Systems (7) bezüglich derselben Spei cherzelle im Speicherzellenfeld (100),
gekennzeichnet durch:
eine Steuersignal-Erzeugungseinrichtung (52) zum Erzeugen einer Mehrzahl von Steuersignalen (SEL(A), W(A), WE(A), R(A), RE(A); SEL(B), W(B), WE(B), R(B), RE(B)) in Übereinstimmung mit den Steuerdaten ((A), *(A), (A); (B), *(B), (B)) von den ersten und zweiten Systemen (6, 7) und dem Ausgangssignal (S1) der Zu griffskonflikt-Erfassungseinrichtung (51),
eine erste Übertragungssteuereinrichtung (53a-59a), die von den Steuersignalen abhängig ist, zum Steuern der Übertragung von Schreibdaten und Lesedaten zwischen dem ersten System (6) und dem Speicherzellenfeld (100), und
eine zweite Übertragungssteuereinrichtung (53b-59b), die von den Steuersignalen abhängig ist, zum Steuern der Übertragung von Schreibdaten und Lesedaten zwischen dem zweiten System (7) und dem Speicherzellenfeld (100), wobei
die erste Übertragungssteuereinrichtung (53a-59a) eine erste Lese daten-Auswahleinrichtung (58a) aufweist zum selektiven Anlegen von Daten, die aus der Speicherzelle gelesen worden sind, oder der Schreibdaten, die vom zweiten System (7) zugeführt werden, an das erste System (6) in Abhängigkeit von einem ersten Schaltsteuersi gnal (SEL(A)) aus der Mehrzahl von Steuersignalen von der Zu griffskonflikt-Erfassungseinrichtung (51), die einen Konflikt erfaßt, und
die zweite Übertragungssteuereinrichtung (53b-59b) eine zweite Lesedaten-Auswahleinrichtung (58b) aufweist zum selektiven Anlegen von Daten, die aus der Speicherzelle gelesen worden sind, oder der Schreibdaten, die vom ersten System (6) zugeführt werden, an das zweite System (7) in Abhängigkeit von einem zweiten Schaltsteuer signal (SEL(B)) aus der Mehrzahl von Steuersignalen von der Zu griffskonflikt-Erfassungseinrichtung (51), die einen Konflikt er faßt.
2. Dual-Port-Speicher nach Anspruch 1,
dadurch gekennzeichnet, daß die erste Übertragungssteuereinrich
tung (53a-59a)
eine erste Schreibdaten-Halteeinrichtung (53a) zum temporären Halten der Schreibdaten, die vom ersten System (6) zugeführt werden, und
einen ersten Schreibdaten-Schalter (56a) zum Anlegen der Schreibdaten, die in der ersten Schreib daten-Halteeinrichtung (53a) gehalten werden, nach einer vorbe stimmten ersten Zeitspanne an das Speicherzellenfeld (100) in Abhängigkeit eines ersten Definitionssignales (WE(A)) aus der Mehrzahl von Steuerdaten aufweist, und daß
die zweite Übertragungssteuereinrichtung (53b-59b)
eine zweite Schreibdaten-Halteeinrichtung (53b) zum temporären Halten der Schreibdaten, die vom zweiten System (7) zugeführt werden, und
einen zweiten Schreibdaten-Schalter (56b) zum Anlegen der Schreibdaten, die in der zweiten Schreib daten-Halteeinrichtung (53b) gehalten werden, nach der vorbe stimmten ersten Zeitspanne an das Speicherzellenfeld (100) in Abhängigkeit eines zweiten Definitionssignales (WE(B)) aus der Mehrzahl von Steuerdaten aufweist.
eine erste Schreibdaten-Halteeinrichtung (53a) zum temporären Halten der Schreibdaten, die vom ersten System (6) zugeführt werden, und
einen ersten Schreibdaten-Schalter (56a) zum Anlegen der Schreibdaten, die in der ersten Schreib daten-Halteeinrichtung (53a) gehalten werden, nach einer vorbe stimmten ersten Zeitspanne an das Speicherzellenfeld (100) in Abhängigkeit eines ersten Definitionssignales (WE(A)) aus der Mehrzahl von Steuerdaten aufweist, und daß
die zweite Übertragungssteuereinrichtung (53b-59b)
eine zweite Schreibdaten-Halteeinrichtung (53b) zum temporären Halten der Schreibdaten, die vom zweiten System (7) zugeführt werden, und
einen zweiten Schreibdaten-Schalter (56b) zum Anlegen der Schreibdaten, die in der zweiten Schreib daten-Halteeinrichtung (53b) gehalten werden, nach der vorbe stimmten ersten Zeitspanne an das Speicherzellenfeld (100) in Abhängigkeit eines zweiten Definitionssignales (WE(B)) aus der Mehrzahl von Steuerdaten aufweist.
3. Dual-Port-Speicher nach Anspruch 2,
dadurch gekennzeichnet, daß die erste Lesedaten-Auswahleinrichtung
(58a)
Daten, die aus der durch die erste Speicherzellen-Auswahleinrich tung (9a) ausgewählten Speicherzelle gelesen worden sind, als Lesedaten auswählt, die dem ersten System (6) durch den zweiten Schreibdaten-Schalter (56b) zugeführt werden sollen, in Abhängig keit davon, daß
Daten, die aus der durch die erste Speicherzellen-Auswahleinrich tung (9a) ausgewählten Speicherzelle gelesen worden sind, als Lesedaten auswählt, die dem ersten System (6) durch den zweiten Schreibdaten-Schalter (56b) zugeführt werden sollen, in Abhängig keit davon, daß
- (i) das erste System (6) eine Speicherleseoperation auslöst, bevor das zweite System (7) Daten zuführt, die in den Speicher ge schrieben werden sollen, und
- (ii) das erste System (6) eine Leseoperation während einer Zeit spanne auslöst, in der Schreibdaten, die in das Speicherzellenfeld (100) geschrieben werden sollen, in der zweiten Schreibdaten- Halteeinrichtung (53b) gehalten werden, und
die Schreibdaten, die in der zweiten Schreibdaten-Halteeinrichtung
(53b) gehalten werden, als Lesedaten auswählt, die dem ersten
System (6) von dem zweiten Schreibdaten-Schalter (56b) zugeführt
werden sollen, in Abhängigkeit davon, daß das erste System (6)
eine Speicherleseoperation auslöst, nachdem Daten, die vom zweiten
System (7) in den Speicher eingeschrieben werden sollen, in der
zweiten Schreibdaten-Halteeinrichtung (53b) gespeichert worden
sind und vor den gehaltenen Schreibdaten an das Speicherzellenfeld
(100) angelegt worden sind, und daß
die zweite Lesedaten-Auswahleinrichtung (58b) Daten, die von der durch die zweite Speicherzellen-Auswahlein richtung (9b) ausgewählten Speicherzelle gelesen worden sind, als Lesedaten auswählt, die dem zweiten System (7) durch den ersten Schreibdaten-Schalter (56a) zugeführt werden sollen, in Abhängig keit davon, daß
die zweite Lesedaten-Auswahleinrichtung (58b) Daten, die von der durch die zweite Speicherzellen-Auswahlein richtung (9b) ausgewählten Speicherzelle gelesen worden sind, als Lesedaten auswählt, die dem zweiten System (7) durch den ersten Schreibdaten-Schalter (56a) zugeführt werden sollen, in Abhängig keit davon, daß
- (i) das zweiten System (7) eine Speicherleseoperation auslöst, bevor das erste System (6) Daten zuführt, die in den Speicher ge schrieben werden sollen, und
- (ii) das zweite System (7) eine Leseoperation während einer Zeit spanne auslöst, in der Schreibdaten, die in das Speicherzellenfeld (100) geschrieben werden sollen, in der Schreibdaten-Halteein richtung (53a) gehalten werden, und
die Schreibdaten, die in der Schreibdaten-Halteeinrichtung (53a)
gehalten werden, als Lesedaten auswählt, die dem zweiten System
(7) von dem ersten Schreibdaten-Schalter (56a) zugeführt werden
sollen, in Abhängigkeit davon, daß das zweiten System (7) eine
Speicherleseoperation auslöst, nachdem Daten, die vom ersten
System (6) in den Speicher eingeschrieben werden sollen, in der
ersten Schreibdaten-Halteeinrichtung (53a) gespeichert worden sind
und vor den gehaltenen Schreibdaten an das Speicherzellenfeld
(100) angelegt worden sind.
4. Dual-Port-Speicher nach Anspruch 3,
dadurch gekennzeichnet, daß die erste Übertragungssteuereinrich
tung (53a-59a) eine erste Lesedaten-Halteeinrichtung (54a) zum
Halten der Lesedaten aufweist, die von der ersten Lesedaten-Aus
wahleinrichtung (58a) ausgewählt worden sind, und
daß die zweite Übertragungssteuereinrichtung (53b-59b) eine zweite Lesedaten-Halteeinrichtung (54b) zum Halten der Lesedaten auf weist, die von der zweiten Lesedaten-Auswahleinrichtung (58b) ausgewählt worden sind.
daß die zweite Übertragungssteuereinrichtung (53b-59b) eine zweite Lesedaten-Halteeinrichtung (54b) zum Halten der Lesedaten auf weist, die von der zweiten Lesedaten-Auswahleinrichtung (58b) ausgewählt worden sind.
5. Dual-Port-Speicher nach Anspruch 4,
dadurch gekennzeichnet, daß die erste Übertragungssteuereinrich
tung (53a-59a) einen ersten Lesedaten-Schalter (57a) in Abhängig
keit von einem ersten Lesedatensteuersignal (RE(A)) aus der Mehr
zahl von Steuersignalen aufweist zum Verhindern der Änderung der
gelesenen Daten, die in der ersten Lesedaten-Halteeinrichtung
(54a) gehalten werden, in Abhängigkeit von der Überschreibung,
wenn die in der Speicherzelle gespeicherten Daten überschrieben
werden, indem die in der zweiten Schreibdaten-Halteeinrichtung
(53b) gehaltenen Schreibdaten für den Fall, daß die erste Lese
daten-Auswahleinrichtung (58a) die aus der von der ersten Spei
cherzellen-Auswahleinrichtung (9a) ausgewählten Speicherzelle
ausgelesenen Daten auswählt, durch den zweiten Schreibdaten-
Schalter (56b) an das Speicherzellenfeld (100) angelegt werden,
und
daß die zweite Übertragungssteuereinrichtung (53b-59b) einen zweiten Lesedaten-Schalter (57b) in Abhängigkeit von einem zweiten Lesedatensteuersignal (RE(B)) aus der Mehrzahl von Steuersignalen aufweist, zum Verhindern der Änderung der gelesenen Daten, die in der zweiten Lesedaten-Halteeinrichtung (54b) gehalten werden, in Abhängigkeit von der Überschreibung, wenn die in der Speicherzelle gespeicherten Daten überschrieben werden, indem die in der ersten Schreibdaten-Halteeinrichtung (53a) gehaltenen Schreibdaten für den Fall, daß die zweite Lesedaten-Auswahleinrichtung (58b) die aus der von der zweiten Speicherzellen-Auswahleinrichtung (9b) ausgewählten Speicherzelle ausgelesenen Daten auswählt, durch den ersten Schreibdaten-Schalter (56a) an das Speicherzellenfeld (100) angelegt werden.
daß die zweite Übertragungssteuereinrichtung (53b-59b) einen zweiten Lesedaten-Schalter (57b) in Abhängigkeit von einem zweiten Lesedatensteuersignal (RE(B)) aus der Mehrzahl von Steuersignalen aufweist, zum Verhindern der Änderung der gelesenen Daten, die in der zweiten Lesedaten-Halteeinrichtung (54b) gehalten werden, in Abhängigkeit von der Überschreibung, wenn die in der Speicherzelle gespeicherten Daten überschrieben werden, indem die in der ersten Schreibdaten-Halteeinrichtung (53a) gehaltenen Schreibdaten für den Fall, daß die zweite Lesedaten-Auswahleinrichtung (58b) die aus der von der zweiten Speicherzellen-Auswahleinrichtung (9b) ausgewählten Speicherzelle ausgelesenen Daten auswählt, durch den ersten Schreibdaten-Schalter (56a) an das Speicherzellenfeld (100) angelegt werden.
6. Dual-Port-Speicher nach Anspruch 5,
dadurch gekennzeichnet, daß der erste Lesedaten-Schalter (57a) zum
Blockieren des Signalpfades zwischen der ersten Lesedaten-Auswahl
einrichtung (58a) und der ersten Lesedaten-Halteeinrichtung (54a)
dient, und daß
der zweite Lesedaten-Schalter (57b) zum Blockieren des Signalpfa des zwischen der zweiten Lesedaten-Auswahleinrichtung (58b) und der zweiten Lesedaten-Halteeinrichtung (54b) dient.
der zweite Lesedaten-Schalter (57b) zum Blockieren des Signalpfa des zwischen der zweiten Lesedaten-Auswahleinrichtung (58b) und der zweiten Lesedaten-Halteeinrichtung (54b) dient.
7. Dual-Port-Speicher nach Anspruch 1,
dadurch gekennzeichnet, daß der erste Schreibdaten-Schalter (56a)
das Schreiben der vom ersten System (6) zugeführten Schreibdaten
in die Speicherzelle verhindert, wenn die Schreiboperation durch
das zweite System (7) während der Schreiboperation des ersten
Systemes (6) bezüglich derselben Speicherzelle gestartet wird, und
daß
der zweite Schreibdaten-Schalter (56b) das Schreiben der vom zweiten System (7) zugeführten Schreibdaten in die Speicherzelle verhindert, wenn die Schreiboperation durch das erste System (6) während der Schreiboperation des zweiten Systemes (7) bezüglich derselben Speicherzelle gestartet wird.
der zweite Schreibdaten-Schalter (56b) das Schreiben der vom zweiten System (7) zugeführten Schreibdaten in die Speicherzelle verhindert, wenn die Schreiboperation durch das erste System (6) während der Schreiboperation des zweiten Systemes (7) bezüglich derselben Speicherzelle gestartet wird.
8. Dual-Port-Speicher nach einem der Ansprüche 1 bis 7,
dadurch gekennzeichnet, daß die erste und zweite Speicherauswahl
einrichtung (9a, 9b) ein erster und ein zweiter Adreßdekoder sind,
daß eine erste und zweite Datenein-/-ausgabeeinrichtung vorgesehen sind,
daß eine erste und zweite Adreßdaten-Empfangseinrichtung zum Zu führen von ersten und zweiten Adreßdaten A(A), A(B), an den ersten bzw. den zweiten Adreßdekoder vorgesehen sind,
daß die Zugriffskonflikt-Erfassungseinrichtung (51) eine Koinzi denz der Adreßdaten erfaßt, die an die erste bzw. zweite Adreß empfangseinrichtung angelegt worden sind, und das Ausgangssignal (S1) in Abhängigkeit hiervon ausgibt.
daß eine erste und zweite Datenein-/-ausgabeeinrichtung vorgesehen sind,
daß eine erste und zweite Adreßdaten-Empfangseinrichtung zum Zu führen von ersten und zweiten Adreßdaten A(A), A(B), an den ersten bzw. den zweiten Adreßdekoder vorgesehen sind,
daß die Zugriffskonflikt-Erfassungseinrichtung (51) eine Koinzi denz der Adreßdaten erfaßt, die an die erste bzw. zweite Adreß empfangseinrichtung angelegt worden sind, und das Ausgangssignal (S1) in Abhängigkeit hiervon ausgibt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2095308A JP2965043B2 (ja) | 1990-04-10 | 1990-04-10 | デュアルポートメモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4111483A1 DE4111483A1 (de) | 1991-10-17 |
DE4111483C2 true DE4111483C2 (de) | 1995-11-02 |
Family
ID=14134134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4111483A Expired - Fee Related DE4111483C2 (de) | 1990-04-10 | 1991-04-09 | Dual-Port-Speicher |
Country Status (3)
Country | Link |
---|---|
US (1) | US5276842A (de) |
JP (1) | JP2965043B2 (de) |
DE (1) | DE4111483C2 (de) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2727555B2 (ja) * | 1988-03-08 | 1998-03-11 | 神鋼電機株式会社 | 券売機 |
JPH04271089A (ja) * | 1991-02-26 | 1992-09-28 | Nec Ic Microcomput Syst Ltd | Icメモリ装置 |
US5420984A (en) * | 1992-06-30 | 1995-05-30 | Genroco, Inc. | Apparatus and method for rapid switching between control of first and second DMA circuitry to effect rapid switching beween DMA communications |
FR2693575B1 (fr) * | 1992-07-09 | 1994-08-19 | Gemplus Card Int | Carte à mémoire de masse avec fonction entrée/sortie. |
FR2695740B1 (fr) * | 1992-09-16 | 1994-11-25 | Bull Sa | Système de transmission de données entre un bus d'ordinateur et un réseau en forme d'anneau à très haut débit. |
US5737569A (en) * | 1993-06-30 | 1998-04-07 | Intel Corporation | Multiport high speed memory having contention arbitration capability without standby delay |
JPH0756885A (ja) * | 1993-08-20 | 1995-03-03 | Mitsubishi Electric Corp | マイクロコンピュータ |
DE4333226A1 (de) * | 1993-09-30 | 1995-04-06 | Licentia Gmbh | Verfahren und Vorrichtung zur Steuerung des Zugriffs zu Dual-Port-Speichern |
US5375089A (en) * | 1993-10-05 | 1994-12-20 | Advanced Micro Devices, Inc. | Plural port memory system utilizing a memory having a read port and a write port |
US5398211A (en) * | 1993-10-14 | 1995-03-14 | Integrated Device Technology, Inc. | Structure and method for providing prioritized arbitration in a dual port memory |
US6122706A (en) * | 1993-12-22 | 2000-09-19 | Cypress Semiconductor Corporation | Dual-port content addressable memory |
JP2790034B2 (ja) * | 1994-03-28 | 1998-08-27 | 日本電気株式会社 | 非運用系メモリ更新方式 |
WO1996007139A1 (en) * | 1994-09-01 | 1996-03-07 | Mcalpine Gary L | A multi-port memory system including read and write buffer interfaces |
US6272465B1 (en) * | 1994-11-02 | 2001-08-07 | Legerity, Inc. | Monolithic PC audio circuit |
JPH08235852A (ja) * | 1995-02-28 | 1996-09-13 | Mitsubishi Electric Corp | 半導体記憶装置 |
JPH0945079A (ja) * | 1995-07-25 | 1997-02-14 | Oki Micro Design Miyazaki:Kk | デュアルポートram |
US5699530A (en) * | 1995-10-03 | 1997-12-16 | Intel Corporation | Circular RAM-based first-in/first-out buffer employing interleaved storage locations and cross pointers |
JP3441613B2 (ja) * | 1996-04-11 | 2003-09-02 | シャープ株式会社 | 逐次型順序変換装置 |
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 |
US5852608A (en) * | 1996-06-06 | 1998-12-22 | Sun Microsystems, Inc. | Structure and method for bi-directional data transfer between asynchronous clock domains |
US5845130A (en) * | 1996-09-11 | 1998-12-01 | Vlsi Technology, Inc. | Mailbox traffic controller |
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 |
US6046982A (en) * | 1997-03-18 | 2000-04-04 | Cabletron Systems, Inc. | Method and apparatus for reducing data loss in data transfer devices |
US6020760A (en) | 1997-07-16 | 2000-02-01 | Altera Corporation | I/O buffer circuit with pin multiplexing |
US6034857A (en) * | 1997-07-16 | 2000-03-07 | Altera Corporation | Input/output buffer with overcurrent protection circuit |
US6011744A (en) * | 1997-07-16 | 2000-01-04 | Altera Corporation | Programmable logic device with multi-port memory |
DE19740694A1 (de) | 1997-09-16 | 1999-03-18 | Siemens Ag | Schaltungsanordnung zur Behandlung von Zugriffskonflikten |
US6216205B1 (en) | 1998-05-21 | 2001-04-10 | Integrated Device Technology, Inc. | Methods of controlling memory buffers having tri-port cache arrays therein |
US5982700A (en) * | 1998-05-21 | 1999-11-09 | Integrated Device Technology, Inc. | Buffer memory arrays having nonlinear columns for providing parallel data access capability and methods of operating same |
US5999478A (en) * | 1998-05-21 | 1999-12-07 | Integrated Device Technology, Inc. | Highly integrated tri-port memory buffers having fast fall-through capability and methods of operating same |
US5978307A (en) * | 1998-05-21 | 1999-11-02 | Integrated Device Technology, Inc. | Integrated circuit memory devices having partitioned multi-port memory arrays therein for increasing data bandwidth and methods of operating same |
US7096324B1 (en) | 2000-06-12 | 2006-08-22 | Altera Corporation | Embedded processor with dual-port SRAM for programmable logic |
US6658525B1 (en) * | 2000-09-28 | 2003-12-02 | International Business Machines Corporation | Concurrent access of an unsegmented buffer by writers and readers of the buffer |
US6546461B1 (en) | 2000-11-22 | 2003-04-08 | Integrated Device Technology, Inc. | Multi-port cache memory devices and FIFO memory devices having multi-port cache memory devices therein |
US7120761B2 (en) * | 2000-12-20 | 2006-10-10 | Fujitsu Limited | Multi-port memory based on DRAM core |
US7171525B1 (en) * | 2002-07-31 | 2007-01-30 | Silicon Image, Inc. | Method and system for arbitrating priority bids sent over serial links to a multi-port storage device |
US8397034B1 (en) | 2003-06-27 | 2013-03-12 | Cypress Semiconductor Corporation | Multi-port arbitration system and method |
US7042792B2 (en) * | 2004-01-14 | 2006-05-09 | Integrated Device Technology, Inc. | Multi-port memory cells for use in FIFO applications that support data transfers between cache and supplemental memory arrays |
JP2005259321A (ja) * | 2004-03-15 | 2005-09-22 | Nec Electronics Corp | フレキシブル・マルチエリア・メモリ及び該メモリを用いた電子機器 |
JP2005259320A (ja) * | 2004-03-15 | 2005-09-22 | Nec Electronics Corp | パーシャル・デュアル・ポート・メモリ及び該メモリを用いた電子機器 |
US7516280B1 (en) | 2004-03-30 | 2009-04-07 | Cypress Semiconductor Corporation | Pulsed arbitration system and method |
JPWO2006001078A1 (ja) * | 2004-06-28 | 2008-04-17 | 株式会社ルネサステクノロジ | 半導体集積回路装置 |
US7110304B1 (en) * | 2004-08-26 | 2006-09-19 | Altera Corporation | Dual port memory array using shared write drivers and read sense amplifiers |
US7813213B1 (en) | 2005-05-04 | 2010-10-12 | Cypress Semiconductor Corporation | Pulsed arbitration system |
DE102005037219A1 (de) * | 2005-08-08 | 2007-02-15 | Robert Bosch Gmbh | Vorrichtung und Verfahren zur Speicherung von Daten und/oder Befehlen in einem Rechnersystem mit wenigstens zwei Verarbeitungseinheiten und wenigstens einem ersten Speicher oder Speicherbereich für Daten und/oder Befehle |
KR100725100B1 (ko) * | 2005-12-22 | 2007-06-04 | 삼성전자주식회사 | 포트간 데이터 전송기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치 |
KR100735612B1 (ko) * | 2005-12-22 | 2007-07-04 | 삼성전자주식회사 | 멀티패쓰 억세스블 반도체 메모리 장치 |
KR100655081B1 (ko) * | 2005-12-22 | 2006-12-08 | 삼성전자주식회사 | 가변적 액세스 경로를 가지는 멀티 포트 반도체 메모리장치 및 그에 따른 방법 |
US7600081B2 (en) * | 2006-01-18 | 2009-10-06 | Marvell World Trade Ltd. | Processor architecture having multi-ported memory |
KR100745374B1 (ko) * | 2006-02-21 | 2007-08-02 | 삼성전자주식회사 | 멀티포트 반도체 메모리 장치 및 그에 따른 신호 입출력방법 |
TW200745873A (en) * | 2006-06-05 | 2007-12-16 | Dmp Electronics Inc | Dual computers for backup and being fault-tolerant system architecture |
JP4835935B2 (ja) * | 2007-01-05 | 2011-12-14 | 横河電機株式会社 | データ転送回路および半導体試験装置 |
US7630272B2 (en) | 2007-02-19 | 2009-12-08 | Freescale Semiconductor, Inc. | Multiple port memory with prioritized world line driver and method thereof |
US8587595B2 (en) | 2009-10-01 | 2013-11-19 | Hand Held Products, Inc. | Low power multi-core decoder system and method |
JP2011227834A (ja) | 2010-04-22 | 2011-11-10 | Sony Corp | 信号制御装置及び信号制御方法 |
US8918594B2 (en) | 2010-11-16 | 2014-12-23 | Micron Technology, Inc. | Multi-interface memory with access control |
US8582389B2 (en) * | 2011-06-15 | 2013-11-12 | Arm Limited | Write assist in a dual write line semiconductor memory |
US8700879B2 (en) * | 2011-08-31 | 2014-04-15 | Micron Technology, Inc. | Concurrent memory operations |
US8432756B1 (en) | 2011-10-18 | 2013-04-30 | Apple Inc. | Collision prevention in a dual port memory |
US10819416B2 (en) | 2016-05-13 | 2020-10-27 | Sony Corporation | Apparatuses and methods for using ARQ processes in a relay device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5146572A (en) * | 1980-11-17 | 1992-09-08 | International Business Machines Corporation | Multiple data format interface |
EP0275884B1 (de) * | 1987-01-23 | 1993-05-26 | Siemens Aktiengesellschaft | Halbleiterspeicher mit wahlfreiem Zugriff über zwei getrennte Ein/Ausgänge |
JP2615088B2 (ja) * | 1987-11-06 | 1997-05-28 | 株式会社日立製作所 | 半導体記憶装置 |
US4937781A (en) * | 1988-05-13 | 1990-06-26 | Dallas Semiconductor Corporation | Dual port ram with arbitration status register |
US5157775A (en) * | 1989-12-15 | 1992-10-20 | Eastman Kodak Company | Dual port, dual speed image memory access arrangement |
-
1990
- 1990-04-10 JP JP2095308A patent/JP2965043B2/ja not_active Expired - Fee Related
-
1991
- 1991-04-09 DE DE4111483A patent/DE4111483C2/de not_active Expired - Fee Related
- 1991-04-09 US US07/682,826 patent/US5276842A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE4111483A1 (de) | 1991-10-17 |
JPH03292695A (ja) | 1991-12-24 |
US5276842A (en) | 1994-01-04 |
JP2965043B2 (ja) | 1999-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4111483C2 (de) | Dual-Port-Speicher | |
DE3508291C2 (de) | Datenverarbeitungssystem | |
DE4025151C2 (de) | Halbleiterspeichereinrichtung und Betriebsverfahren für eine Halbleiterspeichereinrichtung | |
DE4200758C2 (de) | Halbleiterspeichereinrichtung und Verfahren zur Steuerung des Betriebs derselben | |
EP0513611B1 (de) | Verfahren zur Datenübertragung für einen Halbleiterspeicher und Halbleiterspeicher zur Durchführung des Verfahrens | |
DE4207945C2 (de) | Multiport-Speicher und Verfahren zum Entscheiden eines Zugriffskonflikts darin | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE10003465A1 (de) | Halbleiterspeichervorrichtung mit Mehrfachanschluß (Multiple-Port Semiconductor Memory Device) | |
DE3606650A1 (de) | Hardware logik-simulator | |
DE4238062C2 (de) | Multiport-Speichereinrichtung | |
DE19510902A1 (de) | Emulation eines Mehrtor-Speichers unter Verwendung von Markierregistern | |
DE102005003863B4 (de) | Speichervorrichtung mit Nicht-Variabler Schreiblatenz | |
EP0046500B1 (de) | Schieberegister für Prüf- und Test-Zwecke | |
DE3930932A1 (de) | Ausgangsrueckkopplungssteuerschaltung fuer integrierte schaltung | |
DE3123382C2 (de) | Verfahren und Einrichtung zum Übertragen von Daten in einem Mehrprozessorsystem | |
DE2905676A1 (de) | Integrierte schaltung mit einem einzigen chip | |
DE4309320A1 (de) | Halbleiterspeichervorrichtung und Betriebsverfahren | |
DE3501194A1 (de) | Verfahren und vorrichtung zum datenaustausch zwischen mikroprozessoren | |
DE4406258C2 (de) | Informationsverarbeitungsvorrichtung | |
DE1237812B (de) | Datenverarbeitungsgeraet mit mehreren Speichern | |
DE3214230A1 (de) | Speicheranordnung mit mehrfach-zugriffsleitungen | |
DE4206079C2 (de) | Halbleiterspeichereinrichtung und Verfahren zum Lesen von Daten aus einer solchen Halbleiterspeichereinrichtung | |
DE69910172T2 (de) | Schaltkreis mit pseudo-mehrport-speicher | |
DE69629542T2 (de) | Adressierbares serielles prüfsystem | |
DE10063936A1 (de) | Interrupt Controller für einen Mikroprozessor |
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 | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: PRUFER & PARTNER GBR, 81545 MUENCHEN |
|
8339 | Ceased/non-payment of the annual fee |