DE69230366T2 - Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema - Google Patents
Multiport statischer Direktzugriffspeicher mit schnellem SchreibdurchschemaInfo
- Publication number
- DE69230366T2 DE69230366T2 DE69230366T DE69230366T DE69230366T2 DE 69230366 T2 DE69230366 T2 DE 69230366T2 DE 69230366 T DE69230366 T DE 69230366T DE 69230366 T DE69230366 T DE 69230366T DE 69230366 T2 DE69230366 T2 DE 69230366T2
- Authority
- DE
- Germany
- Prior art keywords
- write
- read
- address
- coupled
- port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000003068 static effect Effects 0.000 title claims description 10
- 239000000872 buffer Substances 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 230000003213 activating effect Effects 0.000 claims 4
- 230000004913 activation Effects 0.000 claims 2
- 230000004044 response Effects 0.000 claims 2
- 238000005070 sampling Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/16—Multiple 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
- SEITE FEHLT
- dem Stand der Technik beschrieben, einschließlich dem deutschen Patent DE-C-28 17 431 (IBM).
- Ein Beispiel für die Durchführung von einem solchen Register 10 ist aus der europäischen Patentanmeldung EP-A-0 434 852 (IBM) bekannt und in Fig. 1 abgebildet. Das abgebildete Beispiel hat nur einen Schreibport 30, der mit einer Dateneingangsleitung 20 verbunden ist. Drei Leseports 50a, 50b und 50c sind in der Figur abgebildet. Sie sind jeweils mit separaten Datenausgangsleitungen 60a, 60b bzw. 60c verbunden. Ein Decoder 70 decodiert die Leseadreßsignale AR1, AR2, AR3 und die Schreibadreßsignale AW, die in den Leitungen 100a-c bzw. 80 auftreten und wählt die angegebenen Wortleitungen innerhalb eines Zellenbereichs 40 aus. Der Zellenbereich 40 enthält eine Anzahl von statischen Verriegelungen, wie diese im Stand der Technik bekannt sind. Ein Taktsignal (CE) wird in Leitung 90 für den Zellendecoder 70 und den Zellenbereich 40 bereitgestellt.
- Fig. 2 zeigt ein Taktdiagramm für eine Schreibdurchprozedur aus dem Stand der Technik. Die Schreibdurchprozedur wird von einem Taktsignal (CE) getaktet und kantengetriggert. Das Taktsignal (CE) wird verwendet, um die gültigen Eingangsdaten (DI), die in der Dateneingangsleitung 20 durch den Schreibport 30 im Zellenbereich 40 erscheinen, abzutasten. Bevor das Taktsignal (CE) ansteigt, müssen das Dateneingangssignal (DI) in der Dateneingangsleitung 20 und die Adreßsignale (AW, AR) gültig sein. Die Adreßsignale enthalten das Schreibadreßsignal (AW), das die Adresse angibt, in der die Eingangsdaten (DI) in die Dateneingangsleitung 20 zu schreiben sind, und die Lese adreßsignale (AR; AR1, AR2, AR3), die die Adresse angeben, von der die Ausgangsdaten (DO; DO1, DO2, DO3) über die Leseports 50a-c an die Datenausgangsleitungen 60a-c auszugeben sind. Die erforderliche Mindest-Setup-Zeit für die Adreßsignale (Alt AR) sind in Fig. 2 als Ts abgebildet.
- Das Register 10 startet den Schreibdurchzyklus, sobald das Taktsignal (CE) positiv ist. Das Taktsignal (CE) muß für eine Mindestzeit Tce hochgehalten werden, bis die gültigen Ausgangsdaten (D0) in den Datenausgangsleitungen 60a-c nach der Zugriffszeit Tac erscheinen. Die Dateneingangs-(DI) und Adreßsignale (AR, AW) müssen länger als die Zeit Tce gültig bleiben. Die zusätzliche Zeit, während der diese Signale gültig bleiben, wird mit Th bezeichnet und negative Taktflanke genannt. Bevor der nächste Schreibzyklus beginnt, wird das Taktsignal (CE) klein.
- Das Problem bei dieser Lösung aus dem Stand der Technik ist, daß die Schreibdurch-Zugriffszeit Tac hoch ist, da sie die Zeit enthält, die notwendig ist, um die Verriegelung der SRAM- Zelle zu überschreiben, sowie die Zeit, die notwendig ist, um die Daten aus der Zelle zu lesen.
- EP-A-0 440 191 beschreibt eine Multiport-Speichereinheit, in der sowohl Schreib- als auch Leseoperationen in einem Taktsignal synchronisiert werden.
- In EP-A-0 178 163 wird eine Multiport-Speichereinheit beschrieben, in der die Schreib- und Leseoperationen einander überlappen. Die Lese- und Schreiboperationen werden durch Taktsignale synchronisiert.
- Es ist deshalb Gegenstand der Erfindung, ein Speicherregister und ein Verfahren zu erstellen, um das Speicherregister zu bedienen, in dem die Schreibdurch-Zugriffszeit reduziert wird.
- Dieser Gegenstand wird erreicht, indem eine asynchron gesteuerte statische Lesewortleitung in der Speicherzelle bereitgestellt wird und indem eine Schreibwortleitung in der Speicherzelle mit einem Taktsignal getaktet wird, wie dies in den Ansprüchen 1 und 13 definiert ist.
- Die getaktete Schreibwortleitung wird erstellt, indem der Ausgang des Schreibadreß-Decoders der Speicherzelle an ein AND- Gate und der andere Eingang an das Taktsignal angeschlossen wird. Die Speicherzelle des Speicherregisters enthält eine gepufferte Verriegelung, einen Knoten, an den eine Schreibbitleitung angeschlossen ist, und den anderen Knoten, an den eine Lesebitleitung über eine Übertragungseinheit angeschlossen ist.
- Da der Leseadreß-Decoder nicht getaktet wird, ist das Takten der Leseadresse nicht länger kritisch, und sie kann somit zu einem späteren Zeitpunkt als die Schreibadresse eingerichtet werden.
- Die Speicherzelle wird in einem Pipelinemodus bedient, in dem die Schreib- und Lesephasen verschachtelt werden.
- Das Verfahren, Daten durch die Zelle zu schreiben, enthält die folgenden Schritten: Plazieren der zu schreibenden Daten in die Schreibbitleitung, die an die Speicherzelle angeschlossen ist; Abtasten der Schreibadresse von einem Schreibadreßport in eine getaktete Schreibwortleitung; Überschreiben der Inhalte einer Verriegelung in der Speicherzelle; Einrichten einer Leseadresse, um eine statische Lesewortleitung auszuwählen, und Lesen der Daten aus der Verriegelung in der Speicherzelle in eine Lesebitleitung.
- Fig. 1 zeigt eine Implementierung des Registers aus dem Stand der Technik.
- Fig. 2 zeigt ein Taktdiagramm einer Schreibdurchprozedur mittels des Kreises aus Fig. 1.
- Fig. 3 zeigt einen Vier-Port-SRAM, der die vorgeschlagene Erfindung benutzt.
- Fig. 4 zeigt ein Taktdiagramm einer Schreibdurchprozedur mittels des Kreises aus Fig. 3.
- Fig. 5 zeigt ein verschachteltes Taktdiagramm, das für eine Simulation der Erfindung benutzt wird.
- Fig. 6 zeigt die Taktsignale und Wellenformen, die durch Simulation der Erfindung generiert werden.
- Fig. 3 zeigt ein Ausführungsbeispiel der aktuellen Erfindung. Es enthält eine Vier-Port-Speicherzelle 200 mit einem Schreibport 210 und drei Leseports 220. Der Schreibport 210 ist mit einem Dateneingangspuffer 215 verbunden, und jeder der Leseports 220 ist mit Datenausgangspuffern 225 verbunden. In dem Ausführungsbeispiel wird auf die Vier-Port-Speicherzelle 200 über eine getaktete Schreibwortleitung 246 und drei separate, statische Lesewortleitungen 256 zugegriffen. Die Lesewortleitungen 256 werden, anders als die Schreibwortleitung 246, nicht durch ein Taktsignal (CE) getaktet, das an das Speicherregister geliefert wird. In Fig. 3 ist der Einfachheit halber nur eine der Lesewortleitungen 256 abgebildet.
- Schreibadreßsignale (AW) treten am Schreibadreßport 240 auf und werden von dem Schreibadreßpuffer 242 gepuffert. Der Schreibadreß-Wort-Decoder 244 decodiert die Schreibadreßsignale (AW) und gibt ein Signal an die Ausgangsleitung 241 aus, die der Zelle entspricht, in die die Daten zu schreiben sind. Diese Ausgangsleitung 241 ist an ein AND-Gate 245 angeschlossen, dessen anderer Eingang das Taktsignal (CE) in Leitung 230 ist. Vom AND-Gate 245 wird das getaktete Signal an die Schreibwortleitung 246 von Zelle 200 übertragen, in die die Daten zu schreiben sind.
- Schreibadreßsignale (AR) treten am Leseadreßport 250 auf und werden von den Leseadreßpuffern 252 gepuffert. Die Leseadreß- Wortdecoder 254 decodieren die Leseadreßsignale (AR) und geben ein Signal an die Lesewortleitung 256 aus, die der Zelle 200 entspricht, aus der die Daten zu lesen sind.
- Die Speicherzelle 200 selbst enthält eine statische CMOS-Verriegelung, die an einen Schreibport und drei Leseports angeschlossen ist, von denen jeder in einer Single-Ended-Konfiguration angeordnet ist. Der Schreibport wird von einer NFET- Übertragungseinheit 260 ausgeführt, die zwischen einem ersten Verriegelungsknoten 282 von der Verriegelung 290 und einer Schreibbitleitung 217 angeschlossen ist, die ihrerseits mit den Daten in Puffer 215 verbunden ist. Die NFET-Übertragungseinheit 260 wird von der getakteten Schreibwortleitung 246 getaktet. Jeder der Leseports wird von einer NFET-Übertragungseinheit 270, 272, 274 ausgeführt, die zwischen einem zweiten Verriegelungsknoten 284 und den entsprechenden Lesebitleitungen 277 angeschlossen sind, die ihrerseits mit den Datenausgangspuffern 225 verbunden sind. Die Gates der NFET-Übertragungseinheit 270, 272, 274 sind mit der entsprechenden statischen Lesewortleitung 256 verbunden. Die Verriegelung 290 ist eine invertierte Verriegelung, und ein Inverterpuffer 280 ist zwischen dem Ausgang der Verriegelung 290 und dem zweiten Verriegelungsknoten 284 angeschlossen, um ausreichende Treiberfähigkeiten für die angeschlossen Lesebitleitungen bereitzustellen.
- Es wird nun Bezug auf Fig. 4 genommen. Die Schreibdurchoperation des in Fig. 3 abgebildeten Kreises kann beschrieben wer den. Zum Zwecke der Abbildung wird angenommen, daß eine logische '0' zu Anfang in der Verriegelung 290 der Speicherzelle 200 gespeichert wird, und daß die Schreibbitleitung 217 in einer höheren Ebene ist als die Daten, die in die Verriegelung 290 der Speicherzelle zu schreiben sind.
- Die erste Phase der Schreibdurchoperation enthält eine Schreib-Pipeline-Operation, die von dem Taktsignal (CE) aufgerufen wird, das bei der Zeit To hochgeht, während die Schreibadresse (AW) zuvor auf die Zeit Ts vor To eingerichtet wurde, wie dies in Fig. 4 abgebildet ist. In der ersten Stufe der Schreib-Pipeline-Operation tastet das Taktsignal (CE) in Leitung 230 mittels des AND-Gates 245 den Ausgang der vollkommen statischen Schreibadreß-Wortdecoders entlang der getakteten Schreibwortleitung 246 bis zum Schreibport der ausgewählten Speicherzelle ab. In der zweiten Stufe der Schreib-Pipeline- Operation wird der Schreibport NEFT 260, während die Schreibwortleitung 246 hoch geht, eingeschaltet und zieht den ersten Verriegelungsknoten 282 hoch und überschreibt dadurch die in der Verriegelung 290 gespeicherte '0'. Im Ausführungsbeispiel der abgebildeten Erfindung können die Daten in der Schreibbitleitung 217 zu einer Zeit Tdi nach To gültig werden, wie dies in Fig. 4 abgebildet ist. Die obere Ebene, die im ersten Verriegelungsknoten 282 erreicht wird, wird durch die Verriegelung 290 invertiert und dann von dem angeschlossenen Inverterpuffer 280 wieder invertiert und erscheint somit im zweiten Verriegelungsknoten 284 als obere Ebene. Nachdem der Wert in der Verriegelung 290 überschrieben wurde, wird die Schreiboperation beendet, und die Verriegelung 290 ist für die Auswahl des Leseports bereit. Die Schreibwortleitung 217 kann in die ser Stufe ausgeschaltet werden, um sicherzustellen, daß ungültige Daten im Dateneingangsport 210 nicht den Status der Verriegelung 290 schalten. Nachdem das Taktsignal (CE) zur Zeit Tce nach To negativ geworden ist, muß das Schreibadreßsignal (AW) für eine weitere Periode, Haltezeit Th, gültig bleiben, nach der es und das Dateneingangssignal (DI) ungültig werden können.
- Die zweite Phase der Schreibdurchoperation enthält eine Lesepipeline. Diese kann bereits gestartet werden, während das Schreiben der Verriegelung 290 von der Speicherzelle 200 ausgeführt und aufgerufen wird, sobald das Leseadreßsignal (AR) gültig wird. In Stufe 1 der Lese-Pipeline-Operation wird das Leseadreßsignal (AR) im Leseadreßdecoder 254 decodiert, was in einem Auswahlsignal in einer der Lesewortleitungen 256 resultiert. Das Leseadreßsignal (AR) wird zur Zeit Tw nach To gültig, wie dies in Fig. 4 abgebildet ist. In Stufe 2 wird, während die Wortleitung 256 hochgeht, die eine der ausgewählten NFET-Übertragungseinheiten 270-274 eingeschaltet.
- Der Inverterpuffer 280 lädt die eine der ausgewählten Lesebitleitungen 227 auf, und nach Verstärkung durch den Ausgangspuffer 225 erscheinen die überschriebenen Zellendaten in den ausgewählten Ausgangsports 220 zu einer Zeit Tv nach To, wie dies in Fig. 4 dargestellt ist. Der Unterschied zwischen den Zeiten Tv und Tw wird Taa genannt und ist die Adreßzugriffszeit für die Daten in der Zelle. Sie ist kürzer als die Zugriffszeit Tac, die in Fig. 2 für das Speicherregister aus dem Stand der Technik, das in Fig. 1 abgebildet ist, dargestellt ist.
- Bei der Verriegelung 290, die ursprünglich mit '1' geladen werden sollte und mit einer '0' überschrieben werden muß, wird dies auf eine ähnliche Art und Weise ausgeführt. Der erste Verriegelungsknoten 282 wird von der Speisespannung gegen Erde durch den Schreibport NFET 260 entladen, und dieses Down-Level- Signal breitet sich durch die nachfolgenden invertierenden Stufen aus und kann durch einige der ausgewählten Leseport- Übertragungs-NFETs 270-274 im jeweiligen Ausgangsport 220 ausgelesen werden.
- Ein Basis-Taktdiagramm der externen und internen Signale der Erfindung ist in Fig. 5 abgebildet, um die Vorteile der Erfindung gegenüber Lösungen aus dem Stand der Technik zu illustrieren. Die in der Figur abgebildeten Referenzbuchstaben sind die gleichen wie die, die zuvor benutzt wurden. Die Referenzbuchstaben WLW geben das Signal an, das in der Schreibwortleitung 246 entwickelt wurde, BLW, das Signal, das in der Schreibbitleitung 217 entwickelt wurde, WLR, das Signal, das in einer der Lesewortleitungen 256 entwickelt wurde, BLR, das Signal, das in einer der Lesebitleitungen 227 entwickelt wurde, und NT, das Signal, das im ersten Verriegelungsknoten 282 der Speicherzelle 200 entwickelt wurde.
- Die erste Phase der Schreibdurchoperation ist in der oberen Hälfte von Fig. 5 abgebildet und enthält die Schreiboperation. Wie oben erwähnt und in Fig. 5 angegeben, kann sie in zwei Stufen unterteilt werden, die erste Stufe besteht aus dem Decodieren einer Schreibadresse (als W-dec in Fig. 5 angegeben), und die zweite Stufe besteht aus dem Schreibender Daten in die Zelle 200 (als W-cell in Fig. 5 angegeben). Ebenso wird die Leseoperation, die in der unteren Hälfte von Fig. 5 abgebildet ist, auch in zwei Stufen unterteilt, die erste Stufe besteht aus dem Decodieren einer Leseadresse (als R-dec in Fig. 5 angegeben), und die zweite Stufe besteht aus dem Lesen der Daten aus der Zelle 200 (als R-cell in Fig. 5 angegeben).
- Wie Fig. 5 zeigt, wird das Schreibadreßsignal (AW) zu einer Zeit Ts eingerichtet, bevor das Schreibtaktsignal (CE) zu einer Zeit To positiv wird und gültig bleiben muß, bis das Schreibtaktsignal (CE) zur Zeit Tce nach To abfällt. Diese beiden Signale sind im AND-Gate 245 kombiniert und veranlassen das Signal in der Schreibwortleitung 246 anzusteigen. Zu einer Zeit Tdi nach To tritt das Dateneingangssignal (DI) auf, und wenn es wie in diesem Beispiel eine '1' ist, veranlaßt es ein Schreibbitleitungssignal (BLW), in der Schreibbitleitung 217 aufzutreten. Die Wirkung der Signale der Schreibwortleitung (WLF) und der Schreibbitleitung (BLW) besteht darin, das Potential des ersten Verriegelungsknotens 282 zu veranlassen, in der Zelle 200 anzusteigen, wie dies oben erklärt wurde (Signal NT).
- Anders als bei Vorrichtungen aus dem Stand der Technik darf das Schreibadreßsignal (AR) nicht gültig sein, bevor das Schreibtaktsignal (CE) ansteigt. Es wird nach der Zeit Tw nach To gültig. Nach einer Verzögerung steigt das Lesewortleitungssignal (WLR) in der Lesewortleitung 256 an. Die Wirkung des Anstiegs von diesem Signal besteht darin, den Wert im ersten Verriegelungsknoten 282 der Speicherzelle 200 mit der Lesebitleitung 227 zu koppeln, wie dies oben erklärt wurde, und ein Anstieg des Lesebitleitungssignals (BLR) tritt in der Lesebit leitung 227 auf. Die Leseadreß-Zugriffszeit Taa ist in Fig. 5 als Länge des Lesezyklusbeginns in einer Zeit Tw nach To abgebildet.
- Fig. 6 zeigt die Ergebnisse der Simulation, die mit den externen Signale erreicht werden können, die in Fig. 5 abgebildet sind. Die vertikale Achse von Fig. 6 zeigt den Spannungswert der Signale in Volt. Die horizontale Achse ist eine Zeitskala, die in Nanosekunden-Intervallen eingeteilt ist. Fig. 6 zeigt zwei komplette Schreib- und Lesezyklen. Die beiden Schreibzyklen werden W1-Zyklus und W0-Zyklus genannt und sind im oberen Teil der Figur gekennzeichnet. Die beiden Schreibzyklen sind in Decodierungs- und Schreibstufen unterteilt, und in Übereinstimmung mit Fig. 5 sind diese Stufen mit W-DEC bzw. W-CELL gekennzeichnet. Die beiden Lesezyklen werden R1-ZYKLUS UND R0- ZYKLUS genannt und sind im unteren Teil der Figur gekennzeichnet. Die beiden Lesezyklen werden in zwei Decodierungs- und Lesestufen unterteilt, und in Übereinstimmung mit Fig. 5 sind diese Stufen mit R-DEC bzw. R-CELL gekennzeichnet.
- In Fig. 6 sind die Signalwerte gegenüber der Zeit für die folgenden Signale abgebildet: Adreßschreibsignal (AW), Adreßlesesignal (AR), Taktsignal (CE), Signal in Schreibwortleitung 246 (WLW), Signal in Lesewortleitung 256 (WLR), Dateneingangssignal (DI), Datenausgangssignal (D0) und Signal im zweiten Verriegelungsknoten 284 der Verriegelung 290 (NB). Jedes dieser Signale ist mittels eines anderen Leitungscodes in der Figur abgebildet. Im zweiten Lesezyklus (RO-ZYKLUS) und im zweiten Schreibzyklus (W0-Zyklus) sind die Schreib (WLW) und Lesewortleitungssignale (WLR), die von den Abfallflanken der Schreibadresse (AW in der Zeit 2 ns) und der Leseadresse (AR in der Zeit 4 ns) generiert werden, für eine andere ausgewählte Speicherzelle abgebildet, die mit den gleichen Schreib-(BLW) und Lesebitleitungen (BLR) wie die Speicherzelle verbunden ist, die im ersten Zyklus berücksichtigt wird (R1 & W1-ZYKEN).
- Der erste Schreibzyklus in der Figur ist der W1-ZYKLUS. In diesem Zyklus muß ein Wert von 1 in der Verriegelung 290 der Speicherzelle 200 plaziert werden. Das Taktsignal (CE) erreicht den Schwellwert, über dem es "1" (aktiv) in einer Zeit von -2ns zu sein scheint. Zu diesem Zeitpunkt liegt ebenfalls ein gültiges Adreßschreibsignal (AW) an. In einer Zeit von - 1ns überträgt das Dateneingangssignal (DI) den Schwellwert, über dem es eine logische "1" zu sein scheint. Dieser Wert wird dann in die Verriegelung 290 der Speicherzelle 200 geschrieben, wie oben beschrieben. Das Adreßlesesignal (AR) wird in der Zeit von 0ns gültig. An diesem Punkt beginnt der erste Lesezyklus, R1-ZYKLUS. In einer Zeit von über 3,5 ns steigt das Datenausgangssignal (DO) über seinen Schwellwert an, und die gültigen Daten werden in einem der Leseports 220 erhalten. Die Zeit zum Einrichten der Leseadresse (AR), um ein gültiges Datenausgangssignal (DO) zu erhalten, beträgt ca. 3,5 ns und ist in Fig. 6 als Tal abgebildet. Bei der Lösung aus dem Stand der Technik muß das Leseadreßsignal (AR) zu dem Zeitpunkt gültig sein, an dem das Taktsignal (CE) seinen Schwellwert kreuzt. Dies erfolgt 2 ns früher als in der beschriebenen Simulation und somit würde mit der Lösung aus dem Stand der Technik der Wert von Taal ca. 5,5 ns betragen.
- Der zweite Schreibzyklus ist der W0-ZYKLUS. In diesem Zyklus muß ein Wert von 0 in die Verriegelung 290 der Speicherzelle 200 plaziert werden. Das Taktsignal (CE) erreicht den Schwellwert, über dem es "1" (aktiv) zu sein scheint, in einer Zeit von 2 ns. Zu diesem Zeitpunkt liegt auch ein gültiges Adreßschreibsignal (AW) an. In einer Zeit von 3 ns überträgt das Dateneingangssignal (DI) den Schwellwert, unter dem es eine logische "0" zu sein scheint. Dieser Wert wird dann - wie oben beschrieben - in die Speicherzelle 200 geschrieben. In einer Zeit von 4 ns wird das Adreßlesesignal (AR) für den zweiten Lesezyklus, R0-ZYKLUS, gültig, da es unter den Schwellwert fällt. Zu diesem Zeitpunkt beginnt der zweite Lesezyklus, R0- ZYKLUS. Ein weiteres Lesewortleitungssignal (WLR) wird generiert, das die Schreibdurchdaten von einer anderen Speicherzelle zu den Leseports 220 leitet. In einer Zeit von ca. 7,5 ns fällt das Datenausgangssignal (DO) unter seinen Schwellwert, und ein gültiger Lesevorgang wird an den Leseports 220 erreicht. Die Zeit vom Einrichten des zweiten Leseadreßsignals (AR), um ein gültiges Datenausgangssignal (DO) zu empfangen, beträgt wiederum ca. 3,5 ns und ist in der Figur als Taa0 gekennzeichnet. Wie oben beschrieben, erfolgt dies 2ns früher als in der Lösung aus dem Stand der Technik.
Claims (14)
1. Ein Multiport Speicher mit
einem Bereich mit Speicherzellen (200), wobei jede
Speicherzelle mit wenigstens einem Schreibport (210) verbunden
ist, um Schreibdaten an die Speicherzelle zu liefern und
mit wenigstens einem Lesespeicher (220), um Daten aus der
Speicherzelle zu lesen, wobei der Schreibport und der
Leseport durch die Aktivierung der ersten bzw. zweiten
Steuerleitungen (246, 256) ausgewählt werden;
gekennzeichnet durch
eine erste Vielzahl von Adreßeingängen (240), um eine
erste Vielzahl von Adreßsignalen (AW) zu empfangen, um den
Schreibport auszuwählen, der mit einer der Speicherzellen
gekoppelt ist;
eine zweite Vielzahl von Adreßeingängen (250), um eine
zweite Vielzahl von Adreßsignalen (AR1) zu empfangen, um
den Leseport auszuwählen, der mit einer der Speicherzellen
gekoppelt ist;
einen ersten Kreis (244), der mit der ersten Vielzahl von
Adreßeingängen gekoppelt ist, um die erste Vielzahl von
Adreßsignalen zu decodieren und die erste Steuerleitung
(246) zu aktivieren;
einen zweiten Kreis (254), der mit der zweiten Vielzahl
von Adreßeingängen gekoppelt ist, um die zweite Vielzahl
von Adreßsignalen zu decodieren und die zweite
Steuerleitung (WLR1) zu aktivieren;
dadurch gekennzeichnet, daß der erste Kreis die erste
Steuerleitung aktiviert, bevor der zweite Kreis die zweite
Steuerleitung aktiviert;
der zweite Kreis nicht durch einen Takt synchronisiert
wird, und
wobei mindestens ein Leseport während der Zeit aktiviert
wird, wenn die Daten in die Speicherzellen geschrieben
werden.
2. Der Speicher nach Anspruch 1, wobei auf den Speicher in
einem Schreib-/Lesezugriffszyklus zugegriffen wird, und
ein Schreibteil dieses Zugriffszyklus einen ersten Teil
enthält, in dem einer der Schreibports ausgewählt wird,
und einen zweiten Teil, in den Schreibdaten durch den
ausgewählten Schreibport in eine ausgewählte Speicherzelle
geschrieben werden, und wobei ein Leseteil des
Zugriffszyklus einen ersten Teil enthält, in dem einer der
Leseports ausgewählt wird, und einen zweiten Teil, in den
Daten durch den ausgewählten Leseport aus einer ausgewählten
Speicherzelle ausgelesen werden.
3. Der Speicher nach Anspruch 2, wobei der zweite Teil des
Schreibteils von diesem Zugriffszyklus zur gleichen Zeit
wie der erste Teil des Leseteils von diesem Zugriffszyklus
auftritt.
4. Der Speicher wie in Anspruch 3 angemeldet, der jedoch
außerdem Logikmittel (245) enthält, die zwischen dem
ersten Kreis und der ersten Steuerleitung gekoppelt sind.
5. Der Speicher wie in Anspruch 4 angemeldet, wobei die
Logikmittel durch ein Taktsignal (CE) gesteuert werden.
6. Der Speicher wie in Anspruch 1 angemeldet, wobei jede der
Speicherzellen erste und zweite, kreuzgekoppelte Inverter
(240) hat, und einen Ausgangspuffer (280), um Daten aus
diesen Speicherzellen in den Leseport zu treiben.
7. Der Speicher wie in Anspruch 6 angemeldet, wobei der
Schreibport einen Transistor (260) enthält, der eine
Steuerelektrode hat, die mit der ersten Steuerleitung
verbunden ist, eine erste, gesteuerte Elektrode, die einen
Dateneingang empfängt, und eine zweite, gesteuerte
Elektrode, die mit einem Eingang der ersten und zweiten
kreuzgekoppelten Inverter gekoppelt ist.
8. Der Speicher wie in Anspruch 7 angemeldet, wobei der
Leseport einen Transistor (274) enthält, der eine
Steuerelektrode hat, die mit der zweiten Steuerleitung verbunden
ist, eine erste, gesteuerte Elektrode, die mit einem
Ausgang der ersten und zweiten kreuzgekoppelten Inverter
gekoppelt ist, und eine zweite, gesteuerte Elektrode, die
mit einer Lesebitleitung gekoppelt ist.
9. Der Speicher wie in Anspruch 1 angemeldet, wobei die erste
Vielzahl der Adreßsignale vor der zweiten Vielzahl der
Adreßsignale gültig ist.
10. Ein Multiport-Speicher wie in Anspruch 1 angemeldet, des
weiteren mit:
ersten synchronen Mitteln (244, 245), um den Schreibport
als Reaktion auf die erste Adresse nach Empfang eines
Taktsignals (CE) zu aktivieren; und
zweiten asynchronen Mitteln (245), um den Leseport als
Reaktion auf die zweite Adresse ohne Empfang eines
Taktsignals zu aktivieren, wobei der Leseport im wesentlichen
zur gleichen Zeit aktiviert wird, wie die Daten in die
Speichermittel der Speicherzelle geschrieben werden.
11. Der Speicher wie in Anspruch 10 angemeldet, wobei die
ersten synchronen Mittel außerdem enthalten:
einen ersten Decoder (244), der mit der ersten Vielzahl
von Adreßeingängen gekoppelt ist und einen decodierten
Ausgang bereitstellt; und
ein logisches Gate (245) mit einem ersten Eingang, der mit
dem decodierten Ausgang des ersten Decoders gekoppelt ist,
einen zweiten Eingang, der mit dem Taktsignal gekoppelt
ist und einen Ausgang, der mit dem Schreibport gekoppelt
ist.
12. Der Speicher nach Anspruch 11, wobei die zweiten
asynchronen Mittel des weiteren einen zweiten Decoder (254)
enthalten, der mit der zweiten Vielzahl von Adreßeingängen
gekoppelt ist und einen Ausgang erzeugt, der mit dem
Leseport gekoppelt ist.
13. Ein Verfahren, um Daten durch eine Multiport-Speicherzelle
zu schreiben, mit einer Verriegelung (250), Schreib- und
Leseadreßports (260, 271), die mit der Verriegelung
gekoppelt sind, einer getaktete Schreibwortleitung (246), die
mit dem Schreibadreßport gekoppelt ist, einer
Schreibbitleitung (217), die mit der Verriegelung gekoppelt ist und
dort Daten hat, einer statischen Lesewortleitung (256),
die mit dem Leseadreßport gekoppelt ist, und eine
Lesebitleitung (227), die mit der Verriegelung gekoppelt ist, um
Daten aus der Multiport-Speicherzelle zu lesen, wobei das
Verfahren Schritte enthält, um
a) ein decodiertes Schreibadreß-Aktivierungssignal (WLW)
aus dem Schreibadreßport in die getaktete
Schreibwortleitung abzutasten;
b) Daten aus der Schreibbitleitung in diese Verriegelung
zu schreiben;
c) ein decodiertes Leseadreß-Aktivierungssignal (WLR1)
aus dem Leseadreßport in der statischen
Lesewortleitung zu erzeugen; und
d) Daten von der Verriegelung in der Lesebitleitung
auszulesen;
dadurch gekennzeichnet, daß
der Schritt (c) nicht von einem Takt synchronisiert
wird, wobei die Schritte (b) und (c) im wesentlichen
gleichzeitig ausgeführt werden.
14) Das Verfahren, um Daten durch eine Multiport-Speicherzelle
zu schreiben wie in Anspruch 13 angemeldet, wobei der
Schritt (a) außerdem Schritte enthält, um
die Schreibadresse in einem Schreibadreß-Decoder (244) zu
decodieren und diese an ein AND-Gate (245) zu übertragen,
wobei der andere Eingang mit einem Taktsignal (CE)
verbunden ist und der Ausgang mit der Schreibwortleitung
verbunden ist.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP92101965A EP0554489B1 (de) | 1992-02-06 | 1992-02-06 | Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69230366D1 DE69230366D1 (de) | 2000-01-05 |
| DE69230366T2 true DE69230366T2 (de) | 2000-06-08 |
Family
ID=8209307
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69230366T Expired - Fee Related DE69230366T2 (de) | 1992-02-06 | 1992-02-06 | Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5473574A (de) |
| EP (1) | EP0554489B1 (de) |
| JP (1) | JP2765670B2 (de) |
| DE (1) | DE69230366T2 (de) |
Families Citing this family (43)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5640534A (en) * | 1994-10-05 | 1997-06-17 | International Business Machines Corporation | Method and system for concurrent access in a data cache array utilizing multiple match line selection paths |
| TW330265B (en) * | 1994-11-22 | 1998-04-21 | Hitachi Ltd | Semiconductor apparatus |
| JP3569811B2 (ja) * | 1995-01-25 | 2004-09-29 | 株式会社ルネサステクノロジ | パイプライン処理機能を有するデータ処理装置 |
| 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 |
| US5561638A (en) * | 1995-11-30 | 1996-10-01 | Northern Telecom Limited | Multi-port SRAM core array |
| US5612923A (en) * | 1996-05-09 | 1997-03-18 | Northern Telecom Limited | Multi-port random access memory |
| US5831896A (en) * | 1996-12-17 | 1998-11-03 | International Business Machines Corporation | Memory cell |
| US5761147A (en) * | 1997-02-21 | 1998-06-02 | International Business Machines Corporation | Virtual two-port memory structure with fast write-thru operation |
| US5748539A (en) * | 1997-03-05 | 1998-05-05 | Sun Microsystems, Inc. | Recursive multi-channel interface |
| US5959935A (en) * | 1997-05-30 | 1999-09-28 | Sgs-Thomson Microelectronics S.R.L. | Synchronization signal generation circuit and method |
| KR100289386B1 (ko) * | 1997-12-27 | 2001-06-01 | 김영환 | 멀티 포트 에스램 |
| KR100253391B1 (ko) * | 1997-12-27 | 2000-05-01 | 김영환 | 투 포트 에스램의 라이트 스루 기능을 갖는 고속회로 |
| US6330182B1 (en) | 1998-09-23 | 2001-12-11 | Intel Corporation | Method for evaluating soft error immunity of CMOS circuits |
| US6593967B1 (en) | 1998-12-16 | 2003-07-15 | Eastman Kodak Company | Electronic camera having dual clocked line memory |
| US6229754B1 (en) * | 2000-02-09 | 2001-05-08 | International Business Machines Corporation | Write through function for a memory |
| US6504786B1 (en) * | 2000-11-07 | 2003-01-07 | Gautam Nag Kavipurapu | High speed, scalable, dynamic integrated programmable switch (DIPS) device |
| US6938142B2 (en) | 2002-08-28 | 2005-08-30 | Micron Technology, Inc. | Multi-bank memory accesses using posted writes |
| JP4019021B2 (ja) * | 2003-07-14 | 2007-12-05 | 日本テキサス・インスツルメンツ株式会社 | 半導体メモリセル |
| JP4510498B2 (ja) * | 2004-04-05 | 2010-07-21 | セイコーインスツル株式会社 | 半導体集積回路 |
| FR2871922A1 (fr) * | 2004-06-17 | 2005-12-23 | St Microelectronics Sa | Cellule de memoire vive a encombrement et complexite reduits |
| KR100635176B1 (ko) | 2005-01-28 | 2006-10-16 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 그것의 라이트 데이터 멀티플렉싱방법 |
| US7321504B2 (en) * | 2005-04-21 | 2008-01-22 | Micron Technology, Inc | Static random access memory cell |
| US7304352B2 (en) * | 2005-04-21 | 2007-12-04 | International Business Machines Corporation | Alignment insensitive D-cache cell |
| US7403446B1 (en) * | 2005-09-27 | 2008-07-22 | Cypress Semiconductor Corporation | Single late-write for standard synchronous SRAMs |
| US20070201262A1 (en) * | 2006-02-27 | 2007-08-30 | International Business Machines Corporation | Logic SRAM cell with improved stability |
| US8493811B2 (en) * | 2010-02-10 | 2013-07-23 | Apple Inc. | Memory having asynchronous read with fast read output |
| TWI463493B (zh) * | 2011-03-08 | 2014-12-01 | Univ Nat Chiao Tung | 靜態隨機存取記憶體胞元及其操作方法 |
| US9058860B2 (en) * | 2012-03-29 | 2015-06-16 | Memoir Systems, Inc. | Methods and apparatus for synthesizing multi-port memory circuits |
| TW201503156A (zh) * | 2013-07-15 | 2015-01-16 | Zhi-Cheng Xiao | 不需要感測放大器的半導體記憶體 |
| US10860318B2 (en) | 2016-12-06 | 2020-12-08 | Gsi Technology, Inc. | Computational memory cell and processing array device using memory cells |
| US10943648B1 (en) | 2016-12-06 | 2021-03-09 | Gsi Technology, Inc. | Ultra low VDD memory cell with ratioless write port |
| US11227653B1 (en) | 2016-12-06 | 2022-01-18 | Gsi Technology, Inc. | Storage array circuits and methods for computational memory cells |
| US10249362B2 (en) * | 2016-12-06 | 2019-04-02 | Gsi Technology, Inc. | Computational memory cell and processing array device using the memory cells for XOR and XNOR computations |
| US10860320B1 (en) | 2016-12-06 | 2020-12-08 | Gsi Technology, Inc. | Orthogonal data transposition system and method during data transfers to/from a processing array |
| US10770133B1 (en) | 2016-12-06 | 2020-09-08 | Gsi Technology, Inc. | Read and write data processing circuits and methods associated with computational memory cells that provides write inhibits and read bit line pre-charge inhibits |
| US10854284B1 (en) | 2016-12-06 | 2020-12-01 | Gsi Technology, Inc. | Computational memory cell and processing array device with ratioless write port |
| US10777262B1 (en) | 2016-12-06 | 2020-09-15 | Gsi Technology, Inc. | Read data processing circuits and methods associated memory cells |
| US10847213B1 (en) | 2016-12-06 | 2020-11-24 | Gsi Technology, Inc. | Write data processing circuits and methods associated with computational memory cells |
| US10847212B1 (en) | 2016-12-06 | 2020-11-24 | Gsi Technology, Inc. | Read and write data processing circuits and methods associated with computational memory cells using two read multiplexers |
| US10891076B1 (en) | 2016-12-06 | 2021-01-12 | Gsi Technology, Inc. | Results processing circuits and methods associated with computational memory cells |
| US10930341B1 (en) | 2019-06-18 | 2021-02-23 | Gsi Technology, Inc. | Processing array device that performs one cycle full adder operation and bit line read/write logic features |
| US10877731B1 (en) | 2019-06-18 | 2020-12-29 | Gsi Technology, Inc. | Processing array device that performs one cycle full adder operation and bit line read/write logic features |
| US10958272B2 (en) | 2019-06-18 | 2021-03-23 | Gsi Technology, Inc. | Computational memory cell and processing array device using complementary exclusive or memory cells |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4610004A (en) * | 1984-10-10 | 1986-09-02 | Advanced Micro Devices, Inc. | Expandable four-port register file |
| KR0141494B1 (ko) * | 1988-01-28 | 1998-07-15 | 미다 가쓰시게 | 레벨시프트회로를 사용한 고속센스 방식의 반도체장치 |
| US5001671A (en) * | 1989-06-27 | 1991-03-19 | Vitelic Corporation | Controller for dual ported memory |
| US5062081A (en) * | 1989-10-10 | 1991-10-29 | Advanced Micro Devices, Inc. | Multiport memory collision/detection circuitry |
| EP0434852B1 (de) * | 1989-12-23 | 1995-05-17 | International Business Machines Corporation | Hochintegrierter Halbleiterspeicher mit Mehrfachzugang |
| JPH03224197A (ja) * | 1990-01-30 | 1991-10-03 | Toshiba Corp | 多ポートram及び情報処理装置 |
| JP2891504B2 (ja) * | 1990-03-13 | 1999-05-17 | 三菱電機株式会社 | マルチポートメモリ |
-
1992
- 1992-02-06 DE DE69230366T patent/DE69230366T2/de not_active Expired - Fee Related
- 1992-02-06 EP EP92101965A patent/EP0554489B1/de not_active Expired - Lifetime
-
1993
- 1993-01-11 JP JP5002542A patent/JP2765670B2/ja not_active Expired - Lifetime
- 1993-02-05 US US08/014,031 patent/US5473574A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0684362A (ja) | 1994-03-25 |
| US5473574A (en) | 1995-12-05 |
| EP0554489A1 (de) | 1993-08-11 |
| JP2765670B2 (ja) | 1998-06-18 |
| EP0554489B1 (de) | 1999-12-01 |
| DE69230366D1 (de) | 2000-01-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69230366T2 (de) | Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema | |
| DE3588247T2 (de) | Dynamischer Halbleiterspeicher mit einer statischen Datenspeicherzelle | |
| DE69526431T2 (de) | Eine synchrone nand-dram-speicherarchitektur | |
| DE3686436T2 (de) | Speichersystem mit hoher leistung. | |
| DE69428415T2 (de) | Datenbusstruktur für beschleunigten Spaltenzugriff in einem RAM | |
| DE68922975T2 (de) | Speichereinheit mit zwei Toren. | |
| DE3942386C2 (de) | Zeitgabeschaltung für einen Halbleiterspeicher | |
| DE68918469T2 (de) | Serieller Lesezugriff von seriellen Speichern mit einer durch den Benutzer definierten Startadresse. | |
| DE69817955T2 (de) | Assoziativspeicher | |
| DE68923571T2 (de) | Dynamischer RAM-Speicher mit Redundanz und verbesserter Prüfbarkeit. | |
| DE69025520T2 (de) | Speicher mit verbessertem Bitzeilenausgleich | |
| DE4210857A1 (de) | Halbleiterspeichereinrichtung und verfahren zum uebertragen von daten | |
| DE2718454A1 (de) | Als halbleiterschaltung ausgefuehrte speichervorrichtung | |
| DE69619794T2 (de) | Speicherzelle zum lesen und schreiben einer registerbank | |
| DE69330819T2 (de) | Synchrone LSI-Speicheranordnung | |
| DE68919464T2 (de) | Halbleiterspeichereinrichtung, die einen Speicher mit Seriengriff aufweist. | |
| DE112004001676B4 (de) | Direktzugriffsspeicher mit Postambel-Datenübernahmesignal-Rauschunterdrückung | |
| DE3533870C2 (de) | ||
| DE3789726T2 (de) | Register mit Einrichtungen zum gleichzeitigen Auslesen und Einschreiben über vielfache Anschlüsse. | |
| DE2905676A1 (de) | Integrierte schaltung mit einem einzigen chip | |
| DE4108996C2 (de) | Halbleiterspeichereinrichtung | |
| DE69126514T2 (de) | Serieller Speicher | |
| DE69604297T2 (de) | Segmentierte leseleitungsschaltung insbesondere für multiport speicheranordnungen | |
| DE19908157A1 (de) | Speichertestschaltung | |
| DE3786478T2 (de) | Sperr- und Übertragungsschaltung für einen von mehreren Ports gelesenen Speicher. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8339 | Ceased/non-payment of the annual fee |