DE4107889C2 - Halbleiterspeichereinrichtung und N-Bit-Datenpfad - Google Patents

Halbleiterspeichereinrichtung und N-Bit-Datenpfad

Info

Publication number
DE4107889C2
DE4107889C2 DE4107889A DE4107889A DE4107889C2 DE 4107889 C2 DE4107889 C2 DE 4107889C2 DE 4107889 A DE4107889 A DE 4107889A DE 4107889 A DE4107889 A DE 4107889A DE 4107889 C2 DE4107889 C2 DE 4107889C2
Authority
DE
Germany
Prior art keywords
write
read
lines
data
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE4107889A
Other languages
English (en)
Other versions
DE4107889A1 (de
Inventor
Hirofumi Shinohara
Noriaki Matsumoto
Kumiko Fujimori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4107889A1 publication Critical patent/DE4107889A1/de
Application granted granted Critical
Publication of DE4107889C2 publication Critical patent/DE4107889C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

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

Landscapes

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

Description

Die Erfindung betrifft eine Halbleiterspeichereinrichtung mit M Worten und N Bits mit einer Mehrzahl von Ports sowie einen N-Bit-Datenpfad mit einer Mehrzahl von I-Bit-Datenpfaden.
Mit der neueren Entwicklung der Halbleitertechnologie wurden im Be­ reich der Speicher Dualport-Speicher mit zwei Dateneingängen entwic­ kelt. In einem Dualport-Speicher teilen sich Master- und Slave-CPUs einen Speicher, auf den sie zugreifen. Die Master-CPU besitzt dabei Priorität und die Slave-CPU greift auf den Speicher zu, wenn die Ma­ ster-CPU dies nicht ausführt.
Als eine weitere Verbesserung des Dualport-Speichers sind Multiport- Speicher entwickelt worden, bei denen zwei oder mehr CPUs unabhängig voneinander auf einen gemeinsamen Speicher zugreifen können. Allge­ mein werden die Dualport-Speicher auch als Multiport-Speicher be­ zeichnet.
Fig. 25 zeigt ein Blockschaltbild eines Multiport-Speichers mit einem Schreib- und einem Leseport gemäß der DE 39 06 895 A1.
Bezüglich dieser Figur weist der Multiport-Speicher eine Struktur M Worte × N Bit auf, worin entweder M oder N eine Potenz von 2 dar­ stellt. Eine Speicherzelle 1 speichert 1 Bit an Daten. Ein Speicher­ zellenfeld wird durch Anordnen der Speicherzellen 1 in M Zeilen×N Spalten gebildet. Ein Schreibadreßdekoder 2a treibt die Wortleitun­ gen WW0, WW1, . . ., WWM-1 in Abhängigkeit von einer extern angelegten Schreibadresse WA auf "1" oder "0". Die Schreibwortleitungen sind in Zeilenrichtung des Speicherzellenfeldes angeordnet.
Ein Leseadreßdekoder 2b treibt die Lesewortleitungen RW0, RW1, . . ., RWM-1 in Abhängigkeit von einer extern angelegten Adresse RA auf "1" oder "0". Die Lesewortleitungen RW0, RW1, . . ., RWM-1 sind im Speicherzellenfeld in Zeilenrichtung und abwechselnd mit den Schreibwortleitungen WW0, WW1, . . ., WWM-1 angeordnet.
Ein Dateneingangsschaltkreis 3 treibt die Schreibbitleitungen WB0, WB1, . . ., WBN-1 in Abhängigkeit von extern eingegebenen Daten DI0, DI1, . . ., DIN-1 auf "1" oder "0". Die Schreibbitleitungen WB0, WB1, . . ., WBN-1 sind im Speicherzellenfeld in Spaltenrichtung angeordnet.
Die Leseverstärker 4 sind mit den Lesebitleitungen RB0, RB1, . . ., RBN-1 verbunden, um die in den Speicherzellen 1 gespeicherten Daten zu erfassen und zu verstärken und N Bits an Daten DO0, DO1, . . ., DON-1 extern auszugeben.
Im weiteren werden die Schreibwortleitungen WW0, WW1, . . ., WWN-1, die Lesewortleitungen RW0, RW1, . . ., RWN-1, die Schreibbitleitungen WB0, WB1, . . ., WBN-1 und die Lesebitleitungen RB0, RB1, . . ., RBN-1 als WWi, RWi, WBj bzw. RWj bezeichnet (wobei i = 1, 2, . . ., N-1; j = 1, 2, . . ., N-1). Ein Schreibport weist eine Schreibadresse WA, Schreibwortleitungen WWi, Schreibbitleitungen WBj, Eingangsdaten DI, einen Dateneingangsschaltkreis 3 und einen Schreibadreßdekoder 2a auf, ein Leseport eine Leseadresse RA, Lesewortleitungen RWi, Lese­ bitleitungen RBj, Ausgabedaten DO, einen Leseadreßdekoder 2b und Le­ severstärker 4 auf.
Fig. 26 zeigt ein detailliertes Schaltbild der Speicherzelle 1. Die Bezugszeichen WW, RW, WB und RB stellen beliebige Schreibwort-, Le­ sewort-, Schreibbit- bzw. Lesebitleitungen dar.
Bezüglich dieser Figur weist die Speicherzelle 1 ein Schreibzu­ griffsgatter 6, einen Speicherschaltkreis 5 und ein Lesezugriffsgat­ ter 7 auf. Die Gate-Elektrode des Schreibzugriffsgatters 6 ist mit einer Schreibwortleitung WW, die Drain-Elektrode mit einer Schreib­ bitleitung WB und die Source-Elektrode mit dem Speicherschaltkreis 5 verbunden. Der Speicherschaltkreis 5 weist einen Flip-Flop-Schalt­ kreis, einen Inverter 5c, einen Schreibanschluß A und einen Aus­ gangsanschluß B auf. Der Flip-Flop-Schaltkreis umfaßt Inverter 5a und 5b, deren Ausgangs- und Eingangsanschlüsse miteinander verbunden sind. Der Schreibanschluß A ist mit der Source-Elektrode des Zu­ griffsgatters 6 und der Ausgangsanschluß B mit dem Inverter 5c ver­ bunden. Der Ausgangsanschluß (Leseanschluß C) des Inverters 5c ist mit der Drain-Elektrode des Lesezugriffsgatters 7 verbunden. Die Source-Elektrode des Lesezugriffsgatters 7 ist mit der Lesebitlei­ tung RB und die Gate-Elektrode mit der Lesewortleitung RW verbunden.
Fig. 27 zeigt einen 2-Eingänge-4-Ausgänge-Dekoder, der in jedem der Adreßdekoder 2a und 2b enthalten ist. Bezüglich dieser Figur treibt der Dekoder eine der Schreibwortleitungen WW0, WW1, WW2 und WW3 auf "1" und die anderen auf "0", wenn 1-Bit-Adressen über die Adreßlei­ tungen RA0 und RA1 angelegt werden. Dieser Adreßdekoder wird einzeln in einem Multiport-Speicher mit 4 Worten×4 Bits verwendet, der in Fig. 30 dargestellt ist.
Fig. 28 zeigt den Dateneingangsschaltkreis. Bezüglich dieser Figur werden durch zwei Inverterstufen extern eingegebene Daten DI auf eine vorbestimmte Spannung gesetzt, um der Schreibbitleitung WB zu­ geführt zu werden.
Fig. 29(a) zeigt den Leseverstärker 4. Der Leseverstärker 4 hebt durch ein Hochziehgatter 4a die Spannung der von der Speicherzelle über die Lesebitleitung RB zugeführten Daten auf einen vorbestimmten Wert an, verstärkt diese durch die Inverter 4b und 4c und gibt die Daten DO extern aus. Statt des in Fig. 29(a) gezeigten Schaltkrei­ ses kann ein Stromerfassungsschaltkreis als Leseverstärker benutzt werden, der in Fig. 29(b) dargestellt ist.
Im folgenden wird nun der Betrieb des oben angeführten herkömmlichen Multiport-Speichers beschrieben.
[I] Daten schreiben
Durch eine Adresse WA wird ein zu schreibendes Wort aus M Worten ausgewählt. Der Schreibadreßdekoder 2a dekodiert die Adresse WA, setzt eine der Schreibwortleitungen WWi auf "1" und die anderen auf "0". Das Zugriffsgatter 6 der Speicherzelle, das mit der auf "1" ge­ setzten Wortleitung WWi verbunden ist, wird leitend, so daß die Schreibbitleitung WBj elektrisch mit dem Anschluß A verbunden wird. Die zu schreibenden Daten DIj werden extern an den Dateneingangs­ schaltkreis 3 angelegt und der Dateneingangsschaltkreis treibt die Schreibbitleitung WBj in Abhängigkeit vom Wert der Daten DIj auf "1" oder "0". Ist das Schreibzugriffsgatter 6 leitend, so erreicht der Wert des Schreibanschlusses A folglich unabhängig von den Werten des Schreibanschlusses A und des Ausgangsanschlusses B des Speicher­ schaltkreises 5 einen Wert, der DIj entspricht, das heißt, den Wert, der vom Dateneingangsschaltkreis 3 getrieben wird.
Durch den oben beschriebenen Betrieb ist das Schreiben in die Speicherzelle 1, die mit der Schreibwortleitung WWi verbunden ist, abgeschlossen. Nachdem das Schreiben ausgeführt worden ist, wird die Schreibwortleitung WWi auf "0" gesetzt und die Schreibbitleitung WBj elektrisch vom Schreibanschluß A getrennt, während der in den Flip- Flop-Schaltkreis geschriebene Wert beibehalten wird. Solange die Schreibwortleitung WWi gleich "0" ist, können daher selbst dann keine neuen Daten geschrieben werden, wenn Daten an die Schreibbit­ leitung WBj angelegt werden.
[II] Daten lesen
Das Lesen von Daten wird vom Leseport ausgeführt. Das von M Worten zu lesende Wort wird von einer externen Leseadresse RA bestimmt. Der Leseadreßdekoder 2b dekodiert die Leseadresse RA, um die entspre­ chende der Lesewortleitungen RWi auf "1" und die anderen auf "0" zu setzen. Das Lesezugriffsgatter 7 der Speicherzelle 1, das mit der auf "1" gesetzten Lesewortleitung RWi verbunden ist, wird leitend, so daß der Leseanschluß C des Speicherschaltkreises 5 elektrisch mit der Lesebitleitung RBj verbunden wird. Daher wird der Wert der Lese­ bitleitung RBj auf den Wert des Leseanschlusses C des Speicher­ schaltkreises 5 getrieben. Daher werden die in der Speicherzelle 1, die mit der auf "1" gesetzten Lesewortleitung RWi verbunden ist, ge­ speicherten Daten an den Leseverstärker 4 angelegt. Der Leseverstär­ ker 4 erfaßt und verstärkt die angelegten Daten und gibt N Bits an Daten DO0, DO1, . . ., DON-1 extern aus.
Ist die Schreibwortleitung WWi auf "1" gesetzt, so werden beim oben beschriebenen herkömmlichen Multiport-Speicher die vom Dateneingang 3 zugeführten Daten in alle Speicherzellen geschrieben, die mit der Schreibwortleitung verbunden sind, die auf "1" gesetzt ist. Die Da­ ten werden nämlich in die Speicherzellen aller Spalten geschrieben, die einer Zeile des Speicherzellenfeldes entsprechen. Daher muß eine Zeile einem Wort entsprechen und eine Spalte einem Bit. Somit muß eine unabhängige Bitleitung spaltenweise angeordnet werden. Daher kann das Verhältnis von Länge (M)×Breite (N) der Speicherzelle nicht verändert werden.
Es ist nämlich das Verhältnis von Länge×Breite nicht veränderbar, so daß der Grad freien Entwurfes beschränkt ist, wenn er mit anderen Schaltkreisen verbunden oder in Kombination mit anderen Schaltkrei­ sen integriert wird.
Aufgabe der Erfindung ist es daher, eine Halbleiterspeichereinrich­ tung zu schaffen, bei der eine Flexibilität im Entwurf gegeben ist. Außerdem soll ein Datenpfad geschaffen werden, der auf einfache Weise unter Verwendung einer Halbleiterspeicherein­ richtung mit Multiports gebildet werden kann.
Diese Aufgabe wird durch eine Halbleiterspeicheeinrichtung mit den Merkmalen des Patentanspruches 1 gelöst.
Folglich kann das Verhältnis von Länge und Breite des Speicherzellenfeld-Layouts frei gewählt und die Zahl der Zeilen vermindert werden. Ferner kann die Zahl der Spalten für ein Bit erhöht und die peripheren Schaltkreise wie beispielsweise Schreibschaltkreise oder Leseverstärker können einfach angeordnet werden. Darüber hinaus können die Schreib- und Lesebitleitungen verkürzt werden, wodurch es möglich ist, die Verzö­ gerungszeit zu reduzieren, die für das Laden und Entladen dieser Bitleitungen notwendig ist, sowie die Leistungsaufnahme zu vermindern.
Folglich kann das Layout eines Datenbusses einfach ausgeführt werden, indem man eine Halbleiterspeichereinrichtung mit Multiports verwendet. Ferner kann dessen Flächenbedarf vermindert werden.
Es folgt die Beschreibung von Ausführungsbeispielen anhand der Figuren. Von den Figuren zeigt:
Fig. 1 ein Blockdiagramm, das eine erste Ausführungsform der Erfindung darstellt;
Fig. 2 Details der in Fig. 1 dargestellten Speicherzelle;
Fig. 3 eine Modifikation eines Speicherschaltkreises;
Fig. 4 und 5 die Integration des Multiportspeichers der Fig. 1 in Kombination mit anderen Schaltkreisen;
Fig. 6 ein Blockdiagramm eines Speichers mit 4 Worten×4 Bits, der durch 2 Zeilen×8 Spalten gebildet wird;
Fig. 7 Details des Schreibspalten-Adreßdekoders der Fig. 6;
Fig. 8 Details eines Leseadreßdekoders;
Fig. 9(a) und 9(b) einen 2-Eingänge-4-Ausgänge-Adreßdekoder;
Fig. 10 das Layout von Speicherzellen zur Erläuterung des Betriebes des in Fig. 7 dargestellten Multiportspeichers;
Fig. 11 ein Signaldiagramm für Fig. 7;
Fig. 12 ein Blockdiagramm einer zweiten Ausführungsform;
Fig. 13 Details der Speicherzelle in Fig. 12;
Fig. 14 ein Blockdiagramm einer dritten Ausführungsform;
Fig. 15 ein Blockdiagramm der Details der Speicherzelle in Fig. 14;
Fig. 16 und 17 eine vierte Ausführungsform;
Fig. 18 Details des Dateneingangsschaltkreises von Fig. 16;
Fig. 19 eine Modifikation der Speicherzelle von Fig. 17;
Fig. 20 ein Blockdiagramm einer weiteren Ausführungsform der Fig. 7;
Fig. 21 Details der Speicherzelle in Fig. 20;
Fig. 22 ein Blockdiagramm einer fünften Ausführungsform;
Fig. 23 das Layout von Speicherzellen zur Erläuterung des Betriebs;
Fig. 24 ein Signaldiagramm für Fig. 22;
Fig. 25 ein Blockdiagramm eines herkömmlichen Multiport-Speichers;
Fig. 26 das Schaltbild einer Speicherzelle von Fig. 25;
Fig. 27 das Schaltbild eines Dateneingangsschaltkreises von Fig. 25;
Fig. 28 das Schaltbild eines 2-Eingänge-4-Ausgänge-Adreßdekoders;
Fig. 29(a) und 29(b) Schaltbilder eines Leseverstärkers; und
Fig. 30 ein Blockdiagramm eines herkömmlichen Multiportspeichers mit 4 Worten×4 Bits.
Bezüglich Fig. 1 ist der Multiportspeicher wie im Falle der Fig. 25 ein Speicher mit M Worten×N Bits, der einen Dateneingangsschalt­ kreis 3 und Leseverstärker 4 aufweist. Im Unterschied zu dem in Fig. 25 weist der Multiport-Speicher ein Speicherzellenfeld mit Speicherzellen 1a, die in Zeilen und Spalten angeordnet sind, einen Schreibadreßdekoder 2c, einen Schreibspalten-Adreßdekoder 2d, einen Leseadreßdekoder 2e, einen Lesespalten-Adreßdekoder 2f und ein Le­ sespalten-Auswahlgatter 11 auf. Im Speicherzellenfeld sind Speicher­ zellen 1a in M/n Zeilen und n×N Spalten angeordnet, wobei M, N und M/n natürliche Zahlen darstellen.
In Zeilenrichtung des Speicherzellenfeldes sind M/n Schreibwortlei­ tungen WWi (im Unterschied zu Fig. 25 gilt i = 0, 1, . . ., (M/n-1) und Lesewortleitungen RWi abwechselnd mit den Schreibwortleitungen WWi angeordnet. Beispielsweise können die Schreibwortleitungen und Lesewortleitungen in der Reihenfolge WW0, RW0, WW1, RW1 . . . oder WW0, RW0, RW1, WW2, RW2, RW3 . . . angeordnet sein. In Spaltenrichtung des Speicherzellenfeldes sind N Schreibbitleitungen WBj (wobei j = 0, 1, . . ., N-1) und n×N Lesebitleitungen RBjk (wobei k = 0, 1, . . ., n-1) angeordnet. Ferner sind in Zeilenrichtung des Speicherzel­ lenfeldes n Spaltenauswahlleitungen CSELk zum Steuern eines Spalten­ auswahlgatters 8 in der Speicherzelle 8a, die später erläutert wird, gebildet. Die Spaltenauswahlleitungen CSELk sind in Spaltenrichtung verzweigt und jede der verzweigten Spaltenauswahlleitungen ist mit den Speicherzellen 1a derselben Spalte verbunden.
Der Schreibadreßdekoder 2c wählt in Abhängigkeit von einer externen Schreibadresse eine gewünschte Wortleitung aus den M/n Schreibwort­ leitungen aus und treibt diese auf "1" oder "0". Der Schreibspalten- Adreßdekoder 2d treibt in Abhängigkeit von einer externen Schreib­ spaltenadresse eine gewünschte Spaltenauswahlleitung von n Spalten­ auswahlleitungen CSELk auf "1" oder "0".
Der Leseadreßdekoder 2e wählt in Abhängigkeit von einer externen Le­ seadresse eine gewünschte Wortleitung aus M/n Lesewortleitungen RWi aus und treibt diese auf "1" oder "0". Der Lesespalten-Adreßdekoder 2f wählt in Abhängigkeit von einer externen Spaltenadresse eine ge­ wünschte Spaltenauswahlleitung aus n Spaltenauswahlleitungen RSk aus und treibt diese auf "1" oder "0".
Jedes der Lesespalten-Auswahlgatter 11 weist einen N-Kanal-Transi­ stor auf, wobei die Gate-Elektrode des Transistors mit einer Le­ sespalten-Auswahlleitung RSk, die Drain-Elektrode mit einer Lesebit­ leitung RB und die Source-Elektrode mit dem Leseverstärker 4 verbun­ den ist. Die Lesespalten-Auswahlgatter sind in Gruppen unterteilt, die jeweils n Gatter umfassen, wobei die Source-Elektroden innerhalb jeder Gruppe miteinander verbunden sind. Die Schreibbitleitung WBj ist mit dem Dateneingangsschaltkreis 3 verbunden und legt dieselben Daten an n Speicherzellen 1a an, die mit der Schreibbitleitung WBj verbunden sind.
Wie oben beschrieben worden ist, weist der Schreibport des Multi­ port-Speichers einen Schreibport WA, Schreibwortleitungen WWi, Schreibbitleitungen WBj, Eingangsdaten DI, einen Schreibadreßdekoder 2c, einen Schreibspalten-Adreßdekoder 2d, Schreibspalten-Auswahllei­ tungen CSELk und einen Dateneingangsschaltkreis 3 auf. Der Leseport weist demgegenüber eine Leseadresse RA, Lesewortleitungen RWi, Lese­ bitleitungen RBjk, Lesespalten-Auswahlleitungen RSk, Ausgangsdaten DO, einen Leseadreßdekoder 2e, einen Lesespalten-Adreßdekoder 2f und Leseverstärker 4 auf.
Fig. 2 zeigt Details der Speicherzelle 1a in Fig. 1. Die Speicher­ zelle 1a unterscheidet sich von der in Fig. 26 dahingehend, daß zwi­ schen dem Zugriffsgatter 6 und dem Schreibanschluß A ein Schreib­ spalten-Auswahlgatter 8 gebildet ist, dessen Gate-Elektrode mit der Spaltenauswahlleitung CSEL verbunden ist, so daß die Leitung WB und der Anschluß A elektrisch verbunden werden, wenn Signale von der Schreibwortleitung WW und der Spaltenauswahlleitung CSEL an das Gat­ ter 8 eingegeben werden. Abschnitte, die denjenigen in Fig. 26 ent­ sprechen, werden durch dieselben Bezugszeichen bezeichnet und ihre Beschreibung daher nicht wiederholt.
Der Speicherschaltkreis 5 weist drei Inverter 5a, 5b und 5c auf. Es können jedoch auch die in den Fig. 3(a) bis 3(e) dargestellten Schaltkreise verwendet werden. Die Fig. 3(a) und 3(b) stellen stati­ sche RAMs dar, die Fig. 3(c) und 3(d) dynamische RAMs, bei denen Da­ ten in Abhängigkeit vom Umfang der im Schreibanschluß A gespeicher­ ten Ladung gespeichert werden. Die Fig. 3(e) zeigt einen ROM, bei dem das Durchschalten/Sperren eines N-Kanal MOSFET 5e zuvor einpro­ grammiert wird.
Im folgenden wird nun der Betrieb des in den Fig. 1 und 2 gezeigten Multiport-Speichers beschrieben.
[I] Schreibbetrieb
Eine zu beschreibende Adresse wird extern an den Schreibadreßdekoder 2c angelegt und es werden N Bits von zu schreibenden Daten DI0, DI1, . . ., DI(N-1) an den Dateneingangsschaltkreis 3 angelegt. Der Schreibadreßdekoder 2c dekodiert die externe Adresse, treibt die Schreibwortleitung WWi entsprechend der gewünschten Zeile auf "1" und die anderen Schreibwortleitungen auf "0".
Diese Schreibspaltenadresse wird vom Schreibspalten-Adreßdekoder 2d dekodiert, der die gewünschte aus n Spaltenauswahlleitungen CSELk auf "1" und die anderen auf "0" treibt. Folglich werden die Zu­ griffsgatter 6 der Speicherzellen 1a der Zeile, die mit der getrie­ benen Schreibwortleitung WWi verbunden sind, leitend gemacht und das Schreibspalten-Auswahlgatter 8, das mit der auf "1" getriebenen Spaltenauswahlleitung SCELk verbunden ist, schaltet durch.
Folglich wird die Schreibbitleitung WBj elektrisch mit dem Schreib­ anschluß A des Speicherschaltkreises 5 verbunden, wodurch die an den Dateneingangsschaltkreis 3 angelegten Daten DIj in den Speicher­ schaltkreis 5 geschrieben werden.
In diesem Fall wird die Summe des Ausgangswiderstandes des Datenein­ gangsschaltkreises 3, der Durchlaßwiderstand des Zugriffsgatters 6 und der Durchlaßwiderstand des Auswahlgatters 8 kleiner als der Aus­ gangswiderstand des Inverters 5b gesetzt. Damit wird der Wert am Schreibanschluß A unabhängig vom Anfangswert des Ausgangsanschlusses B des Flip-Flops und des Schreibanschlusses A gleich dem Wert DIj, der im Dateneingangsschaltkreis 3 festgelegt ist.
Auf diese Weise wird das Schreiben von Daten vervollständigt. In den Speicherzellen 1a, die mit den auf "0" getriebenen Spaltenauswahl­ leitungen CSELk verbunden sind, werden die Schreibbitleitungen WBj elektrisch von den Schreibanschlüssen A getrennt, so daß kein Schreiben ausgeführt wird und die darin gespeicherten Daten unverän­ dert beibehalten werden. Daher halten die Speicherzellen 1a der Spalte, die von der Spaltenadresse nicht ausgewählt wird, selbst dann ihre Daten, wenn die Speicherzellen mit der Zeile verbunden sind, die von der extern eingegebenen Schreibadresse bestimmt wird. Durch Steuern der Spaltenauswahlleitung CSELk, indem ein Aktivie­ rungssignal WE an den Spaltenadreßdekoder 2d angelegt wird, können die Daten aller Speicherzellen 1a beibehalten werden.
II) Lesebetrieb
Durch eine Leseadresse wird eines von M Worten ausgewählt. Der Lese­ adreßdekoder 2e dekodiert die Leseadresse, treibt eine der M/n Lesewortleitungen RWi auf "1" und die anderen auf "0". Die mit der auf "1" getriebenen Lesewortleitung RWi verbundenen Zugriffsgatter 7 der Speicherzellen 1a werden durchgeschaltet und der Leseanschluß C elektrisch mit der Lesebitleitung RBjk verbunden.
Folglich wird die Lesebitleitung RBjk auf den Wert des Leseanschlus­ ses C getrieben. Dieser Wert wird an die Drain-Elektrode des Le­ sespalten-Auswahlgatters 11 angelegt. Der Lesespalten-Adreßdekoder 2f dekodiert eine extern angelegte Leseadresse und treibt eine der n Lesespalten-Auswahlleitungen RSk auf "1" und die anderen auf "0". Die Lesespalten-Auswahlgatter 11, deren Gate-Elektroden mit der auf "1" getriebenen Lesespalten-Auswahlleitungen verbunden sind, werden leitend und damit wird die Zahl k (0, 1, . . ., n-1) von Lesebitlei­ tungen RBjk ausgewählt.
Auf diese Weise wird beim Lesebetrieb die Zeile (j) der Lesebitlei­ tungen RBjk durch den Leseadreßdekoder 2e und die Spalte (k) durch den Lesespaltendekoder bestimmt. Daher werden die Daten der Speicherzelle 1a der festgelegten Zeile und Spalte über das Spalten­ auswahlgatter 11 an den Leseverstärker angelegt, von diesem erfaßt und verstärkt und anschließend N Bits an Daten DO0, DO1, . . ., DON-1 extern ausgegeben.
Das Lesespalten-Auswahlgatter 11 kann außerhalb der Speicherzelle 1a gebildet werden, da der Schreibanschluß A und der Ausgangsanschluß B des Flip-Flop-Schaltkreises selbst dann nicht invertiert sind, wenn die Lesewortleitung RW auf "1" gesetzt ist. Obwohl der Schreibadreß­ dekoder 2c, der Schreibspalten-Adreßdekoder 2d, der Leseadreßdekoder 2e und der Lesespalten-Adreßdekoder 2f unterteilt auf beiden Seiten des Speicherzellenfeldes des oben beschriebenen Beispiels angeordnet sind, können diese Elemente auch auf nur einer Seite des Speicher­ zellenfeldes gebildet sein. Außerdem können sie auch auf der oberen Seite des Speicherzellenfeldes angeordnet sein.
Beim oben beschriebenen Multiport-Speicher kann M Worte×N Bits als (M/n) Zeilen×(n×N) Spalten gebildet werden, so daß die Verbindung zu einem peripheren Schaltkreis im Vergleich zum Stand der Technik auf einfachere Weise erfolgen kann. Ferner wird die Herstellung integrierter Schaltkreise, die zusammen mit den peripheren Schaltkreisen gebildet werden, vereinfacht. Die Struktur des integrierten Schaltkreises wird nun unter Bezugnahme auf die Fig. 4 und 5 beschrieben.
Soll ein Datenbus eines Prozessors durch gemeinsames Bilden eines Multiport-Speichers 10, einer ALU 12 und eines Schieberegisters 13 geschaffen werden, so erfordern die Verbindunganschlüsse der ALU 12 und des Schieberegisters je Bit im allgemeinen das 50- bis 100fache der Designeinheit (Gate-Länge 1 µm), während die Breite einer Spalte des Speicherzellenfeldes 10 das 15- bis 30fache dieser Einheit benötigt. Wird die Zahl der Spalten von Speicherzellen auf zwei bis vier je einem Bit eingestellt, so stimmt die Breite von einem Bit des Multiport-Speichers mit der Breite je Bit der ALU 122 und des Schieberegisters 13 überein. Daher gibt es keinen unnötigen Rand. Daher können der Multiport-Speicher sowie ALU und Schieberegi­ ster in engem Kontakt zueinander entworfen werden, wie in Fig. 5 dargestellt ist. In Fig. 5 entspricht jeder der Abschnitte, die durch gestrichelte Linien voneinander getrennt sind, der Breite von einem Bit.
Fig. 6 zeigt ein Blockdiagramm eines Beispieles, bei dem der Multi­ port-Speicher der Fig. 1 mit 4 Worten × 4 Bits in zwei Zeilen zu 8 Spalten gebildet wird. Bezüglich dieser Figur weist der Multiport- Speicher einen Schreib- und einen Leseport auf. Eine Zeile ent­ spricht zwei Worten und 2 Spalten entsprechen einem Bit. Ein Schreibadreßdekoder 2c ist mit der Adreßleitung WA0 verbunden, deko­ diert eine externe Adresse und treibt entweder die Schreibwortlei­ tung WW0 oder WW1 auf "1". Ein Schreibspalten-Adreßdekoder 2d ist mit einer Adresse WA1 verbunden, dekodiert eine externe Adresse und treibt entweder die Spaltenauswahlleitung CSEL0 oder CSEL1 auf "1". Ein Leseadreßdekoder 2e ist mit einer Adreßleitung RA0 verbunden, dekodiert eine Leseadresse und treibt entweder die Lesewortleitung RW0 oder RW1 auf "1". Außerdem ist der Leseadreßdekoder 2f mit der Adreßleitung RA1 verbunden, dekodiert Adreßdaten und treibt entweder die Lesespalten-Auswahlleitung RS0 oder RS1 auf "1". Die Drain-Elek­ trode jeder Lesespalten-Auswahlgatter 11 ist mit einer Lesebitlei­ tung RBjk (wobei j = 0, 1 und k = 0, 1) und die Source-Elektroden mit der Source-Elektrode des benachbarten Spaltenauswahlgatters 11 und dem Leseverstärker 4 verbunden.
Durch die oben beschriebene Struktur kann ein 4 Worte × 4 Bits Mul­ tiport-Speicher aus 2 Zeilen und 8 Spalten gebildet werden. Die Schreibbitleitung WB wird gemeinsam benutzt und daher kann deren Zahl gleich wie beim Stand der Technik sein, obwohl der Speicher 8 Spalten aufweist. Da die Lesebitleitungen RBjk durch die Lesespal­ ten-Auswahlgatter 11 ausgewählt werden, stimmt ferner auch die Zahl der Leseverstärker 4 mit derjenigen für den Stand der Technik über­ ein.
Fig. 7 zeigt die Details des Schreibspalten-Adreßdekoders 2d der Fig. 6.
Bezüglich dieser Figur weist der Schreibspalten-Adreßdekoder 2d In­ verter 14 und 16 sowie UND-Gatter 15 und 17 auf. Unter der Annahme, daß die Schreibspaltenadresse WA1 gleich "1" ist, wird der Betrieb beschrieben. Die externe Schreibspaltenadresse WA1 wird vom Inverter 14 invertiert, um an das UND-Gatter 15 und den Inverter 16 angelegt werden. Der UND-Schaltkreis 15 treibt die Schreibspalten-Auswahllei­ tung CSEL0 auf "0", solange das Aktivierungssignal WE auf "0" ge­ setzt ist. Der Inverter 16 invertiert das Ausgangssignal des Inver­ ters 14, um dieses an den UND-Schaltkreis 17 anzulegen. Folglich wird das Schreibspalten-Auswahlsignal CSEL1 auf "1" getrieben, so­ lange das Aktivierungssignal WE gleich "1" ist. Ist das Aktivie­ rungssignal WE nämlich gleich "1", so arbeitet er als allgemeiner Dekoder. Ist das Aktivierungssignal WE gleich "0", so werden beide Spaltenauswahlleitungen CSEL0 und CSEL1 beide auf "0" gesetzt, so daß die Daten aller Speicherzellen 1a beibehalten werden.
In Fig. 7 ist ein 1-Eingang-2-Ausgänge-Schreibspalten-Adreßdekoder 2d dargestellt. Um ein Speicherzellenfeld mit vier Zeilen zu bilden, kann ein 2-Eingänge-4-Ausgänge-Dekoder gebildet sein. Ein Beispiel für einen solchen Adreßdekoder ist in den Fig. 9(a) und 9(b) ge­ zeigt.
Fig. 8 zeigt die Details des Lesespalten-Adreßdekoders. Bezüglich dieser Figur wird eine externe Lesespaltenadresse RA1 durch drei In­ verterstufen 18, 19 und 20 invertiert, um ein Signal auf der Le­ sespalten-Auswahlleitung RS0 bereitzustellen. Die Lesespalten-Aus­ wahlleitung RS1 wird durch vier Inverterstufen, einschließlich des obengenannten Inverters 18 sowie der Inverter 21, 22 und 23, auf den Wert der Lesespaltenadresse RA1 getrieben.
Die Adreßdekoder 2c und 2e weisen dieselbe Struktur wie der Adreßde­ koder der Fig. 8 auf.
Unter Bezugnahme auf die Fig. 10 und 11 wird nun der Betrieb des in den Fig. 6 bis 9 gezeigten Multiport-Speichers beschrieben. In Fig. 10 sind die in Fig. 6 von einer gestrichelten Linie umgebenen Speicherzellen als MC0, MC1, MC2 und MC3 dargestellt. Fig. 11 zeigt ein Signaldiagramm, in dem die Marke xxx angibt, daß sich die Daten in der Speicherzelle 1a im Zustand vor dem Neuschreiben befinden.
[I] Schreiboperation (1) Schreiben in MC0
Wenn WA0 auf "0" liegt, setzt der Schreibadreßdekoder 2c die Schreibwortleitung WW0 auf "1" und WW1 auf "0". Entsprechend schal­ ten die Zugriffsgatter 6 von MC0 und MC2 durch. Anschließend er­ reicht die Adresse WA1 den Wert "0" und das Aktivierungssignal WE den Wert "1". Nun setzt der Schreibspalten-Adreßdekoder 2d die Spal­ tenauswahlleitung CSEL0 auf "1". Entsprechend schalten die Spalten­ auswahlgatter 8 von MC0 und MC1 durch. Folglich wird das Schreiben des Speicherschaltkreises 5 der Speicherzelle MC0 der gewählten Zeile und Spalte durch die Schreibadresse WA0 und die Schreibspal­ tenadresse WA1 ermöglicht.
(2) Schreiben in MC1
Wenn WA0 auf "1" liegt, setzt der Schreibadreßdekoder 2c die Schreibwortleitung WW0 auf "0" und WW1 auf "1". Entsprechend schal­ ten die Zugriffsgatter 6 von MC1 und MC3 durch. Da die Schreibspal­ tenadresse WA1 wie im vorherigen Fall (1) gleich "0" ist, wenn das Aktivierungssignal WE "1" erreicht, setzt der Schreibspalten-Adreß­ dekoder 2d die Spaltenauswahlleitung CSEL0 auf "1". Entsprechend schalten die Spaltenauswahlgatter 8 von MC0 und MC1 durch. Folglich wird das Schreiben in den Speicherschaltkreis 5 der Speicherzelle MC1 der durch die Schreibadresse WA0 und die Schreibspaltenadresse WA1 gewählten Zeile und Spalte ermöglicht.
(3) Schreiben in MC2
Erfolgt ein Schreiben in die Speicherzelle MC2, so wird WA0 auf "0" und WA1 auf "1" gesetzt. Ist das Aktivierungssignal WE in diesem Zu­ stand auf "1" gesetzt, so ist nur ein Schreiben in die Speicherzelle MC2 möglich. Da die Eingangsdaten DI gleich "1" sind, wird in diesem Zustand "1" in MC2 geschrieben.
(4) Schreiben in MC3
Das Schreiben in MC3 wird ausgeführt, wenn WA0 gleich "1" die Schreibspaltenadresse WA1 gleich "1" und das Aktivierungssignal WE gleich "1" ist. Da die Eingangsdaten DI0 gleich "0" sind, wird in diesem Zustand "0" in MC3 geschrieben.
[II] Lesebetrieb
Nun wird der Lesebetrieb beschrieben. Wie beim Lesebetrieb wird die Bestimmung von zwei Worten durch die Leseadresse RA0 und die Auswahl der Lesespalte durch RA1 ausgeführt. Sollen die Daten in MC0 gelesen werden, so werden genauer gesagt die Leseadresse RA0 "0" und die Le­ sespaltenadresse RA1 beide auf "0" gesetzt.
Entsprechend setzt der Lesespalten-Adreßdekoder 2e die Lesewortlei­ tung RW0 auf "1" und schaltet die Lesezugriffsgatter 7 von MCO und MC2 durch. Der Lesespalten-Adreßdekoder 2e setzt RS0 auf "1" um das Lesespalten-Auswahlgatter 11, das mit der Lesebitleitung RB00 ver­ bunden ist, durchzuschalten. Folglich wird der Leseanschluß C von MC0 mit dem Leseverstärker 4 verbunden. Hierdurch werden die Daten der Speicherzelle MC0 an den Leseverstärker 4 angelegt.
Werden Daten aus MC1 gelesen, so wird auf diese Weise RA0 auf "1" und die Lesespaltenadresse RA1 auf "0" gesetzt. Ferner wird das Le­ sen von Daten aus MC2 ausgeführt, indem die Leseadresse RA0 auf "0" und die Lesespaltenadresse RA1 auf "1" gesetzt werden. Ferner wird das Lesen von Daten aus MC3 ausgeführt, indem man die Lesespal­ tenadresse RA0 auf "1" und die Lesespaltenadresse RA1 auf "1" setzt.
Die Fig. 12 und 13 zeigen eine Ausführungsform, wobei Fig. 12 ein schematisches Diagramm des gesamten Multiport-Speichers und Fig. 13 die Details der Speicherzelle von Fig. 12 darstellt. Bezüglich der Fig. 12 und 13 unterscheidet sich diese Ausführungsform von derjeni­ gen in den Fig. 6 und 7 dahingehend, daß sich zwei benachbarte Speicherzellen 1bl und 1br derselben Zeile ein Schreibzugriffsgatter 6 teilen. Durch diese Struktur kann die Zahl der Zugriffsgatter 6 halbiert werden, wodurch aufgrund der verminderten Kapazität der Schreibwortleitung WW Produktionsausbeute, Zuverlässigkeit und Be­ triebsgeschwindigkeit verbessert werden können.
Die Fig. 14 und 15 zeigen eine weitere Ausführungsform, wobei Fig. 14 ein schematisches Diagramm des gesamten Multiport-Speichers und Fig. 15 die Details der Speicherzelle von Fig. 14 darstellt. Bezüg­ lich der Fig. 14 und 15 unterscheidet sich diese Ausführungsform von derjenigen der Fig. 6 und 2 dahingehend, daß eine Lese- und Schreib­ wortleitung RWW sowohl als Schreibwortleitung WW als auch als Lese­ wortleitung RW benutzt wird. Daher kann die Struktur des Multiport- Speichers weiter vereinfacht werden. Diese Speicherzelle 1c wird auf einen Lese- und Schreibport angewandt.
Existiert kein Schreibauswahlgatter 8 und wird das Lesezugriffsgat­ ter 7 leitend, so wird als Reaktion auf das Erreichen des Wertes "1" durch die Lese-Schreib-Wortleitung RWW in diesem Fall auch das Schreibzugriffsgatter 6 gleichzeitig durchgeschaltet. Damit tritt Lesen und Schreiben gleichzeitig auf, so daß dieser Aufbau praktisch nicht benutzt werden kann. Durch Bilden des Spaltenauswahlgatters 8 kann die Zeitabstimmung von Lesen und Schreiben gesteuert werden und daher kann die Gesamtstruktur des Lese- und Schreibports einfach ge­ macht werden.
Die Fig. 16 und 17 zeigen eine weitere Ausführungsform, wobei Fig. 16 ein schematisches Diagramm des gesamten Multiport-Speichers und Fig. 17 die Details der Speicherzelle von Fig. 16 darstellt. Bezüg­ lich dieser Figuren unterscheidet sich diese Ausführungsform von derjenigen der Fig. 14 dahingehend, daß zusätzlich Spaltenauswahl­ leitungen CSEL20 und CSEL21 gebildet sind und daß eine Lese- Schreib-Bitleitung RWB sowohl als Lesebitleitung RB als auch als Schreibbitleitung WB benutzt wird. Der Dateneingangsschaltkreis 3′ ist gebildet, um ein Drei-Zustands-Gatter 3a′ durch das Aktivie­ rungssignal WE zu steuern (siehe Fig. 18). Das Schreibzugriffsgatter 6 und das Lesezugriffsgatter 7 der Speicherzelle 1c der Fig. 17 kön­ nen zusammen benutzt werden, um eine solche Struktur zu schaffen, wie in Fig. 19 gezeigt ist.
Ein 4 Worte×4 Bits Multiportspeicher mit einem Speicherzellenfeld von 2 Zeilen×8 Spalten, einem Schreibport und einem Leseport ist unter Bezugnahme auf die Fig. 6 und 19 beschrieben worden. Dessen Zahlen können jedoch allgemein durch natürliche Zahlen M, N, n, a, b und c beschrieben werden. Wie oben beschrieben worden ist, kann ein Speicherzellenfeld aus M Worten×N Bits genauer gesagt aus M/n Zei­ len und n×N Spalten gebildet werden und die Zahl der Lese-, Schreib- und Schreib-/Leseports kann a, b bzw. c sein. Hierbei ist n2, M/n ganzzahlig und c kann gleich 0 sein. Ist c1, so kann a oder b gleich 0 sein.
Fig. 20 ist ein Blockdiagramm, das eine weitere Ausführungsform der Fig. 6 darstellt und Fig. 21 zeigt die Details des Speicherzellen­ feldes der Fig. 20.
Bezüglich dieser Figuren unterscheidet sich diese Ausführungsform von der in Fig. 6 gezeigten dahingehend, daß zwei Schreibports W1 und W2 sowie drei Leseports R1, R2 und R3 gebildet sind. Entspre­ chend sind daher zwei Schreibadreßdekoder 2c gebildet, die mit Adreßleitungen W1A0 bzw. W2A0 verbunden sind, die externe Schreibadressen empfangen. Es sind zwei Schreibspalten-Adreßdekoder 2d gebildet und mit den Schreibspalten-Adreßleitungen W1A1 bzw. W2A1 verbunden. Zwei Dateneingangsschaltkreise 3, die Schreibdaten DI von den jeweiligen Ports empfangen, sind bitweise angeordnet.
Da es drei Leseports gibt, wird die Zahl der Leseadreßdekoder 2e, der Lesespalten-Adreßdekoder 2f, der Leseverstärker 4 und der Le­ sespalten-Auswahlgatter 11 verdreifacht.
Fig. 22 zeigt einen Multiport-Speicher mit seriellem Zugriff. Bezüg­ lich dieser Figur unterscheidet sich dieser Multiport-Speicher in den folgenden Punkten von denen der Fig. 1 bis 21. Statt des Schreibadreßdekoders 2c, des Schreibspalten-Adreßdekoders 2d, des Leseadreßdekoders 2e und des Lesespalten-Adreßdekoders 2f werden Schieberegister 21 bis 24 und UND-Gatter 25 bis 29 verwendet, um ein sogenanntes FIFO-System zu realisieren (FIFO = First In, First Out), in dem die Werte der Schieberegister umlaufen. Das Speicherzellen­ feld weist 2 Zeilen×8 Spalten von Speicherzellen 1a auf. Dies er­ laubt die Verarbeitung von zwei Bits, 6 Worten. Der Schreibport weist Schieberegister 21 und 22 und UND-Gatter 25, 27, 28 und 29 auf. Das Schieberegister weist einen Schiebeeingangsanschluß SI, einen Triggeranschluß T, an den ein Schreibtaktsignal WCLK angelegt wird, einen Rückstelleingangsanschluß R und Ausgangsanschlüsse Q0 und Q1 auf. Das Eingangs-Gate des UND-Gatters 25 ist mit dem Schreibtaktsignal WCLK und dem Ausgangsanschluß Q1 des Schieberegi­ sters 21 und das Ausgangs-Gate mit dem Triggereingangsanschluß T des Schieberegisters 22 verbunden. Das Schieberegister 22 weist einen Schiebeeingangsanschluß SI, einen Triggereingangsanschluß T, der mit dem UND-Gatter 25 verbunden ist, einen Rückstelleingangsanschluß R, Ausgangsanschlüsse Q0 und Q1 und einen Ausgangsanschluß Q2 auf, der mit dem Schiebeeingangsanschluß SI verbunden ist. Die Eingangs-Gates der UND-Gatter 27, 28 und 29 sind mit den Ausgangsanschlüssen Q0, Q1 und Q2 des Schieberegisters 22 und die Ausgangs-Gates mit den Schreibspalten-Auswahlleitungen CSEL0, CSEL1 und CSEL2 verbunden.
Der Leseport weist Schieberegister 22 und 24 und ein UND-Gatter 26 auf. Im Unterschied zum Schreibport empfängt er Lesetaktsignale RCLK und Gatter entsprechend den UND-Gattern 227, 28 und 29 sind nicht geschaffen.
Der Betrieb des Multiport-Speichers der Fig. 22 wird nun unter Be­ zugnahme auf die Fig. 22, 23 und 24 beschrieben. Die Fig. 23 zeigt das Layout der Speicherzellen 1a in einem Abschnitt, der in Fig. 22 von einer gestrichelten Linie eingeschlossen wird. Fig. 24 stellt ein Signaldiagramm des Multiport-Speichers der Fig. 22 dar.
Als Reaktion auf das Abfallen des Rückstellsignales setzen die Schieberegister 21 bis 24 zuerst den Wert des Ausgangsanschlusses Q0 auf "1" und die Werte der Ausgangsanschlüsse Q1 und Q2 auf "0". Folglich werden die Schreibwortleitung WW0, die Schreibspalten-Si­ gnalleitung SCEL0, die Lesewortleitung RW0 und die Lesespalten-Si­ gnalleitung RS0 auf "1" gesetzt. Dann verschiebt das Schieberegister 21 als Reaktion auf das Abfallen des Schreibtaktsignales WCLK die Werte der Ausgangsanschlüsse Q0 und Q1, um die Pegel von WW0 und WW1 zu invertieren. Das UND-Gatter 25 stellt ein logisches Produkt des Schreibtaktsignales WCLK und des Wertes des Ausgangsanschlusses Q1 des Schieberegisters 21 bereit. Das resultierende logische Produkt weist eine Periode auf, die das doppelte der Periode des Ausganges Q1 des Schieberegisters 21 beträgt (entsprechend zwei Zeilen des Speicherzellenfeldes).
Der logische Ausgangswert des UND-Gatters 25 wird an den Triggerein­ gangsanschluß T des Schieberegisters 22 angelegt. In Abhängigkeit vom logischen Ausgangswert verschiebt das Schieberegister 22 die Werte der Ausgangsanschlüsse Q0, Q1 und Q2 und gibt Signale CS0 bis CS2 an die UND-Gatter 27 bis 29 aus. Die UND-Gatter 27 bis 29 steu­ ern die Schreibspalten-Auswahlleitungen CSEL0 bis CSEL2 in Abhängig­ keit vom Schreibaktivierungssignal WE und den Signalen CS0 bis CS2. Folglich wird der Wert des Dateneingangsanschlusses in die Speicher­ zellen 1a geschrieben, die mit den Schreibspalten-Auswahlleitungen CSEL0 bis CSEL2 verbunden sind, deren Pegel gleich "1" ist.
Nun wird der Lesebetrieb beschrieben.
Die Schieberegister 23 und 24 und das UND-Gatter 26 arbeiten etwa in derselben Weise wie die Schieberegister 21 und 22 für das Schreiben, um die Lesewortleitungen RW0 und RW1 sowie die Lesespalten-Auswahl­ leitungen RS0 bis RS2 zu steuern. Der Betrieb unterscheidet sich je­ doch von der Schreiboperation dahingehend, daß die Lesespalten-Aus­ wahlleitungen RS0 bis RS2 durch das Schreibaktivierungssignal WE nicht aktiviert werden.
In einem derartigen Multiport-Speicher wird die Speicherzelle mit jedem Abfallen des Schreibtaktsignales WCLK oder Lesetaktsignales RCLK ausgewählt. Die Speicherzellen werden dabei aufeinanderfolgend in der Reihenfolge MC0, MC1, MC2, MC3, MC4, MC5, MC0, MC1, ... aus­ gewählt, wobei der darin befindliche Wert um eins weitergeschoben wird.

Claims (14)

1. Halbleiterspeichereinrichtung mit M Worten×N Bits, mit einer Mehrzahl von Ports, aufweisend
ein Speicherzellenfeld aus einer Mehrzahl von Speicherzellen (1a), die in (M/n) Zeilen und (n×N) Spalten angeordnet sind und jeweils einen Datenspeicherknoten (A) aufweisen,
Schreibwortleitungen (WW0 bis WW(M/n-1)) und Lesewortleitungen (RW0 bis RW(M/n-1)), die jeweils gemeinsam mit Speicherzellen einer Zeile im Speicherzellenfeld verbunden sind,
n Schreibspalten-Auswahlleitungen (CSEL0 bis CSEL(n-1)), die entspre­ chend der Zahl (n) von Worten in einer Zeile des Speicherzellen­ feldes gebildet und mit den jeweils n-ten (der Zahl von Worten) Speicherzellen der Speicherzellen der jeweiligen Zeilen verbunden sind,
Schreibbitleitungen (WB0 bis WB(N-1)) und Lesebitleitungen (RB00 bis RB(N-1, n-1)), die mit einer Spalte oder Mehrzahl von Spalten der Speicherzellen (1a) des Speicherzellenfeldes verbunden sind,
Eingangsanschlüsse (DI0 bis DI(N-1)), an die Daten zum Treiben der Schreibbitleitungen angelegt werden, und
Ausgangsanschlüsse (DO0 bis DO(N-1)), von denen Daten der Speicherzellen (1a) ausgegeben werden,
wobei in Abhängigkeit von den an die Eingangsanschlüsse angelegten Daten die Schreibbitleitungen getrieben werden und in Abhängigkeit von einem Signal, das an eine der Schreibwortleitungen und der Schreibspalten- Auswahlleitungen ausgegeben wird, die elektrische Verbindung zwischen der Schreibbitleitung und dem Datenspeicherknoten der Speicherzelle, die mit der Schreibbitleitung verbunden ist, gesteuert wird, so daß durch die Schreibbitleitungen, die Schreibwortlei­ tungen und die Eingangsanschlüsse ein erster Port gebildet wird, und eine Lesebitleitung entsprechend dem Wert des Datenspeicherknotens der Speicherzelle und die entsprechende der Lesewortleitungen getrieben werden und Daten entsprechend einem Signal auf der Lesebitleitung an den entsprechenden der Ausgangsanschlüsse ausgegeben werden, so daß die Lesebitleitungen, die Lesewortleitungen und die Ausgangs­ anschlüsse einen zweiten Port bilden.
2. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Schreibbitleitungen (WB0 bis WB(N-1)) entsprechend der Zahl (N) von Bits N Schreibbitleitungen aufweisen, die jeweils mit n (der Zahl von Worten) Speicherzellen (1a) einer jeden Zeile verbunden sind.
3. Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, gekenn­ zeichnet durch
einen Schreibadreßdekoder (2c), der ein Schreibadreßsignal empfängt und ein Signal an die Schreibwortleitungen ausgibt,
einen Schreibspalten-Adreßdekoder (2d), der ein Schreibspalten- Adreßsignal empfängt und ein Signal an die Schreibspalten-Auswahlleitungen ausgibt,
einen Leseadreßdekoder (2e), der ein Leseadreßsignal empfängt und ein Lesewortsignal an die Lesewortleitungen ausgibt,
eine Schreibeinrichtung (3) zum Treiben der Schreibbitleitungen, die mit einem Satz von n (der Zahl von Worten) Speicherzellen einer jeden Zeile des Speicherzellenfeldes verbunden sind, auf der Basis an die Eingangsanschlüsse angelegten Daten, und
Leseverstärker (4) zum Ausgeben von Daten, die von den Lesebitlei­ tungen gelesen worden sind, an die Ausgangsanschlüsse.
4. Halbleiterspeichereinrichtung nach Anspruch 3, gekennzeichnet durch
ein Schaltelement (11), das zwischen den Leseverstärker und die mit den n (der Zahl von Worten) Speicherzellen verbundenen Schreibbitleitung geschaltet ist, und
einen Lesespalten-Adreßdekoder (2f), der das Leseadreßsignal emp­ fängt, um das Schaltelement zu schalten.
5. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Schreibspalten-Auswahlleitung zwei Sätze von Auswahlleitungen (CSEL0, CSEL1) aufweist, die jeweils mit einer Speicherzelle und der anderen Speicherzelle von benachbarten Speicherzellen (1a) der jeweiligen Spalte verbunden sind.
6. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Schreibbitleitung gemeinsam mit einer Speicherzelle (1a) und der anderen Speicherzelle (1a) der benachbarten Speicherzellen der je­ weiligen Spalte verbunden ist.
7. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß
jede Speicherzelle (1a), die das Speicherzellenfeld bildet, eine Speichereinrichtung (5) zum Speichern von Daten, erste und zweite Zugriffsgatter (6, 8), die zwischen die Schreibbitleitung (WB) und die Speichereinrichtung (5) in Reihe geschaltet sind, und ein drittes Zugriffsgatter (7), das zwischen die Speichereinrichtung (5) und die Lesebitleitung (RB) geschaltet ist, aufweist,
wobei das erste Zugriffsgatter (6) von einem an die Schreibwortleitung (WW) ange­ legten Signal abhängig ist, um die an die Schreibbitleitung angelegten Daten dem zweiten Zugriffsgatter zuzuführen,
das zweite Zugriffsgatter (8) von einem an die Schreibspalten-Auswahl­ leitung (CSEL) angelegten Signal abhängig ist, um Daten in die Speicherein­ richtung zu schreiben, die an die Schreibbitleitung angelegt sind, und
das dritte Zugriffsgatter von einem an die Lesewortleitung (RW) angeleg­ ten Signal abhängig ist, um Daten zu lesen, die in der Speicherein­ richtung gespeichert sind.
8. Halbleiterspeichereinrichtung nach Anspruch 7, dadurch gekenn­ zeichnet, daß das erste Zugriffsgatter (6) zwei Leitungsanschlüsse aufweist, wobei einer mit der Schreibbitleitung (WB) und der andere mit dem zweiten Zugriffsgatter (8) verbunden ist, die in den zwei benachbarten Speicher­ zellen derselben Zeile enthalten sind.
9. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch gekenn­ zeichnet, daß
die Schreibwortleitung (WW) gleichzeitig auch als Lesewortleitung (RW) verwendbar ist, wobei diese Schreiblesewortleitung (RWW) mit den Speicherzellen derselben Zeile des Speicherzellenfeldes verbunden ist, und
der Schreibadreßdekoder (2c) gleichzeitig auch als Leseadreßdekoder (2e) verwendbar ist, wobei dieser Schreibadreßdekoder vom eingegebenen Schreibadreßsignal und Leseadreßsignal abhängig ist und ein Signal an die gleichzeitig als Lesewortleitung verwendbare Schreib­ wortleitung anlegt und
der Schreibspalten-Adreßdekoder von einem Schreibaktivierungssignal (WE) und einem Schreibadreßsignal abhängig ist und ein Signal an die Schreibspalten-Auswahlleitung (CSEL) anlegt (Fig. 14, 15).
10. Halbleiterspeichereinrichtung nach Anspruch 9, dadurch gekenn­ zeichnet, daß die gleichzeitig auch als Lesewortleitung nutzbare Schreibwortleitung (RWW) gemeinsam mit den ersten (6) und dritten (7) Zugriffsgattern der jeweiligen Speicherzellen (1a) verbunden ist, die das Speicher­ zellenfeld bilden.
11. Halbleiterspeichereinrichtung nach Anspruch 9, dadurch gekenn­ zeichnet, daß
die Schreibbitleitung (WB) gleichzeitig auch als Lesebitleitung (RB) verwendbar ist, wobei diese Schreibbitleitung (RWB) gemeinsam mit den zwei benachbarten Speicherzellen der Speicherzellen der jeweiligen Zeile verbunden ist, und
die Schreibeinrichtung durch das Schreibaktivierungssignal aktiviert wird.
12. Halbleiterspeichereinrichtung nach Anspruch 11, dadurch gekenn­ zeichnet, daß
jede der Speicherzellen (1c) eine Speichereinrichtung (5), erste und zweite Zugriffsgatter (6, 8), die zwischen der auch ale Lesebitlei­ tung nutzbaren Schreibbitleitung (RWB) und der Speichereinrichtung in Reihe geschaltet sind, und dritte und vierte Zugriffsgatter (7, 9), die zwischen der Speichereinrichtung und der auch als Lesebitlei­ tung nutzbaren Schreibbitleitung in Reihe geschaltet sind, aufweist,
wobei das erste Zugriffsgatter (6) von einem Signal abhängig ist, das an die auch als Lesewortleitung nutzbare Schreibwortleitung (RWW) angelegt ist, um Daten, die an die auch als Lesebitleitung nutzbare Schreibbitleitung (RWB) angelegt werden, dem zweiten Zugriffsgatter (8) zuzuführen,
das zweite Zugriffsgatter (8) von einem Signal abhängig ist, das an die Schreibspalten-Auswahlleitungen (CSEL] angelegt wird, um Daten in die Spei­ chereinrichtung zu schreiben, die an die auch als Lesebitleitung nutzbare Schreibbitleitung (RWB) angelegt sind,
das vierte Zugriffsgatter (9) von einem Signal abhängig ist, das an die Lesespalten-Auswahlleitung (CSEL) angelegt wird, um Daten, die in der Spei­ chereinrichtung gespeichert sind, dem dritten Zugriffsgatter (7) zuzu­ führen, und
das dritte Zugriffsgatter (7) von einem Signal abhängig ist, das an die auch als Lesewortleitung nutzbare Schreibwortleitung (RWW) angelegt wird, um Daten, die in der Speichereinrichtung gespeichert sind, an die auch als Lesebitleitung nutzbare Schreibbitleitung (RWB) auszugeben (Fig. 16, 17).
13. Halbleiterspeichereinrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß
der Schreibadreßdekoder (2c), der Leseadreßdekoder (2e), der Schreibspalten-Adreßdekoder (2d) und der Lesespalten-Adreßdekoder (2f) je eine Schiebeeinrichtung (21, 22, 23, 24) zum Verschieben eines Ausgangswertes aufweist, wobei
der Schreibadreßdekoder (2c) in Abhängigkeit von einem eingegebenen Schreibtaktsignal (WCLK) aufeinanderfolgend Schreibwortleitungen (WW) aktiviert,
der Schreibspalten-Adreßdekoder (2d) in Abhängigkeit von einem logi­ schen Ausgangssignal vom Schreibadreßdekoder (2c) und dem Schreibtakt­ signal (WCLK) Schreibspalten-Auswahlleitungen (CSEL) aufeinanderfolgend aktiviert,
der Leseadreßdekoder (2e) in Abhängigkeit von einem eingegebenen Lese­ taktsignal (RCLK) aufeinanderfolgend Lesewortleitungen (RW) aktiviert, und
der Lesespalten-Adreßdekoder (2f) in Abhängigkeit von einem logi­ schen Ausgangssignal des Leseadreßdekoders (2e) und des Lesetaktsignals Lesespalten-Auswahlleitungen (RS) aufeinanderfolgend aktiviert (Fig. 22).
14. N-Bit-Datenpfad (10, 12, 13) mit einer Mehrzahl von 1-Bit-Daten­ pfaden, die ähnliche Funktionen und ähnliches Layout aufweisen und in einer ersten Richtung angeordnet sind, wobei jeder 1-Bit-Datenpfad eine Halbleiterspeichereinrichtung mit 1 Bit×M Worte mit einem ersten und zweiten Port verwendet, mit
einer N Bit × M Worte Speichereinrichtung (10) mit N solcher 1 Bit × M Worten Speichereinrichtungen, die in der ersten Richtung angeordnet sind, und
einer N-Bit arithmetischen Einrichtung (12, 13) mit N 1-Bit arithmeti­ schen Einrichtungen, die in der ersten Richtung angeordnet sind, wobei die 1-Bit arithmetische Einrichtung Daten empfängt, die vom zweiten Port ausgegeben werden und Ergebnisse der arithmetischen Operationen an den ersten Port übermittelt,
wobei die N Bit × M Wort Speichereinrichtung ein Speicherzellenfeld mit Speicherzellen (1a) aus M Worten, die in M/n Zeilen und n×N Spalten angeordnet sind und jeweils einen Daten­ speicherknoten (A) besitzen, wobei die Speicherzellen zur selben Zeile gehören, die sich in der ersten Richtung erstreckt,
Schreibwortleitungen (WW0 bis WW(M/n-1)) und Lesewortleitungen (RW0 bis RW(M/n-1)), die jeweils gemeinsam mit Speicherzellen einer Zeile des Speicherzellenfeldes verbunden sind,
Schreibspalten-Auswahlleitungen (CSEL0 bis CSEL(n-1)) entsprechend der Zahl n von Spalten, die jeweils mit einer von n Speicherzellen der jeweiligen Zeile verbunden sind, und
Schreibbitleitungen (WB0 bis WB(N-1)) und Lesebitleitungen (RB00 bis RB(N-1, n-1)), die jeweils mit Speicherzellen einer Spalte oder Mehr­ zahl von Spalten des Speicherzellenfeldes verbunden sind, aufweist,
der erste Port die Schreibwortleitungen, die Schreibspalten-Auswahl­ leitungen und die Schreibbitleitungen zum Schreiben von Eingangsdaten in die Datenspeicherknoten umfaßt und
der zweite Port die Lesewortleitungen und die Lesebitleitungen zum Lesen von Daten von den Speicherknoten umfaßt (Fig. 4, 5).
DE4107889A 1990-03-13 1991-03-12 Halbleiterspeichereinrichtung und N-Bit-Datenpfad Expired - Fee Related DE4107889C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2063670A JP2891504B2 (ja) 1990-03-13 1990-03-13 マルチポートメモリ

Publications (2)

Publication Number Publication Date
DE4107889A1 DE4107889A1 (de) 1991-09-19
DE4107889C2 true DE4107889C2 (de) 1995-02-16

Family

ID=13236020

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4107889A Expired - Fee Related DE4107889C2 (de) 1990-03-13 1991-03-12 Halbleiterspeichereinrichtung und N-Bit-Datenpfad

Country Status (3)

Country Link
US (1) US5177706A (de)
JP (1) JP2891504B2 (de)
DE (1) DE4107889C2 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2664810B2 (ja) * 1991-03-07 1997-10-22 株式会社東芝 メモリセルアレイ分割型半導体記憶装置
DE69216267T2 (de) * 1991-03-19 1997-09-25 Fujitsu Ltd Multiport-Speicher
US5291443A (en) * 1991-06-26 1994-03-01 Micron Technology, Inc. Simultaneous read and refresh of different rows in a dram
JPH05113929A (ja) * 1991-10-22 1993-05-07 Mitsubishi Electric Corp マイクロコンピユータ
EP0554489B1 (de) * 1992-02-06 1999-12-01 International Business Machines Corporation Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema
JPH06242951A (ja) * 1992-12-22 1994-09-02 Toshiba Corp キャッシュメモリシステム
JPH06215576A (ja) * 1993-01-18 1994-08-05 Mitsubishi Electric Corp 半導体記憶装置
JP3214132B2 (ja) * 1993-03-01 2001-10-02 三菱電機株式会社 メモリセルアレイ半導体集積回路装置
US5737569A (en) * 1993-06-30 1998-04-07 Intel Corporation Multiport high speed memory having contention arbitration capability without standby delay
JPH0729376A (ja) * 1993-07-14 1995-01-31 Ricoh Co Ltd 半導体メモリ装置及びデータ読み書き方法
US5416739A (en) * 1994-03-17 1995-05-16 Vtech Computers, Ltd. Cache control apparatus and method with pipelined, burst read
JPH07311842A (ja) * 1994-05-19 1995-11-28 Konica Corp 画像記憶装置
JP3181479B2 (ja) * 1994-12-15 2001-07-03 沖電気工業株式会社 半導体記憶装置
JPH08212132A (ja) * 1995-02-07 1996-08-20 Mitsubishi Electric Corp 記憶装置
US5802586A (en) * 1995-02-27 1998-09-01 Motorola, Inc. Cache memory having a read-modify-write operation and simultaneous burst read and write operations and a method therefor
US5715197A (en) 1996-07-29 1998-02-03 Xilinx, Inc. Multiport RAM with programmable data port configuration
US6052327A (en) * 1997-10-14 2000-04-18 Altera Corporation Dual-port programmable logic device variable depth and width memory array
US5923608A (en) * 1997-10-31 1999-07-13 Vlsi Technology, Inc. Scalable N-port memory structures
US5978889A (en) * 1997-11-05 1999-11-02 Timeplex, Inc. Multiple device data transfer utilizing a multiport memory with opposite oriented memory page rotation for transmission and reception
US5953283A (en) * 1998-07-31 1999-09-14 International Business Machines Corporation Multi-port SRAM with reduced access requirements
DE10213267A1 (de) * 2002-03-25 2003-10-23 Infineon Technologies Ag Registerzelle und Verfahren zum Schreiben auf die Registerzelle
CN1689106A (zh) * 2002-08-29 2005-10-26 皇家飞利浦电子股份有限公司 具有数据存储装置的电子装置
US7111110B1 (en) 2002-12-10 2006-09-19 Altera Corporation Versatile RAM for programmable logic device
US7630237B2 (en) * 2003-02-06 2009-12-08 Sandisk Corporation System and method for programming cells in non-volatile integrated memory devices
JP2006134484A (ja) * 2004-11-05 2006-05-25 Nec Micro Systems Ltd 半導体記憶装置
US7349264B2 (en) * 2005-12-28 2008-03-25 Sandisk Corporation Alternate sensing techniques for non-volatile memories
US7616481B2 (en) * 2005-12-28 2009-11-10 Sandisk Corporation Memories with alternate sensing techniques
US7864600B2 (en) * 2008-06-19 2011-01-04 Texas Instruments Incorporated Memory cell employing reduced voltage
US8416624B2 (en) 2010-05-21 2013-04-09 SanDisk Technologies, Inc. Erase and programming techniques to reduce the widening of state distributions in non-volatile memories
US8959291B2 (en) 2010-06-04 2015-02-17 Lsi Corporation Two-port memory capable of simultaneous read and write
US8645609B2 (en) * 2010-12-06 2014-02-04 Brocade Communications Systems, Inc. Two-port memory implemented with single-port memory blocks
JP2019160371A (ja) * 2018-03-14 2019-09-19 株式会社東芝 メモリ回路および電子機器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01205790A (ja) * 1988-02-10 1989-08-18 Ricoh Co Ltd スタティックram
JPH01307091A (ja) * 1988-06-03 1989-12-12 Mitsubishi Electric Corp マルチポートメモリ
JP2600304B2 (ja) * 1988-06-30 1997-04-16 三菱電機株式会社 半導体記憶装置とこれを用いたデータパス
DE69023258T2 (de) * 1989-03-15 1996-05-15 Matsushita Electronics Corp Halbleiter-Speichereinrichtung.
US5040146A (en) * 1989-04-21 1991-08-13 Siemens Aktiengesellschaft Static memory cell

Also Published As

Publication number Publication date
DE4107889A1 (de) 1991-09-19
JPH03263687A (ja) 1991-11-25
JP2891504B2 (ja) 1999-05-17
US5177706A (en) 1993-01-05

Similar Documents

Publication Publication Date Title
DE4107889C2 (de) Halbleiterspeichereinrichtung und N-Bit-Datenpfad
DE3906895C2 (de)
DE3884848T2 (de) Rascher Zugriff für einen FIFO-Speicher.
DE4036091C2 (de) Dynamischer Halbleiterspeicher mit wahlfreiem Zugriff
DE69028386T2 (de) Auf statischem RAM basierende Zelle für ein programmierbares logisches Feld
DE3886114T2 (de) Halbleiterspeichergerät mit redundanter Speicherzellenmatrix.
DE68918413T2 (de) Integrierte Halbleiterschaltung.
DE4025151C2 (de) Halbleiterspeichereinrichtung und Betriebsverfahren für eine Halbleiterspeichereinrichtung
EP0908893B1 (de) Speicherarchitektur mit Mehrebenenhierarchie
DE3916784C2 (de) Speicherzellenfeld und Verfahren zum Schreiben von Daten in das Speicherzellenfeld
DE69026673T2 (de) Bitzeile-Segmentierung in einer logischen Speicheranordnung
DE3930932C2 (de)
DE4330778A1 (de) Speicherzellenschaltung
DE3220273A1 (de) Halbleiterspeichervorrichtung
DE2727419A1 (de) Matrixspeicher
DE68921900T2 (de) Halbleiterspeicheranordnung mit serieller Zugriffsanordnung.
DE3886938T2 (de) Reprogrammierbare logische Sicherung für logische Anordnungen, basierend auf einer 6-Elementen-SRAM-Zelle.
DE102019100477A1 (de) Sram-speicher
DE60129269T2 (de) Speicherschaltung für eine programmierbare logische integrierte Schaltungsanordnung
EP0224887B1 (de) Gate Array Anordnung in CMOS-Technik
DE19839089B4 (de) Datenpuffer für einen programmierbaren Speicher mit mehreren Zuständen
DE68914073T2 (de) Integrierte Speicherschaltung mit parallelem und seriellem Ein- und Ausgang.
DE68922738T2 (de) Hochintegrierter Halbleiterspeicher mit Mehrfachzugang.
DE3328042C2 (de)
EP0354265A1 (de) Integrierte Halbleiterschaltung mit einem Speicherbereich

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G11C 7/00

D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
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