-
GEBIET DER
ERFINDUNG
-
Die vorliegende Erfindung betrifft
das Gebiet der Halbleiterspeicher. Im Besonderen betrifft die vorliegende
Erfindung das Vorsehen einer kleineren Dual-Port-SRAM-Speicherzelle.
-
STAND DER
TECHNIK
-
Eine gewöhnliche Architektur eines Direktzugriffsspeichers
(engl. Abkürzung
RAM für
Random Access Memory) besteht aus einer Anordnung von Speicherzellen.
Jede Zelle kann ein Bit an Informationen speichern. Die Anordnung
ist in Zeilen und Spalten aus Speicherzellen angeordnet. Jede Zeile wird
auch als eine Wordline bezeichnet. Jede Spalte wird auch als Bitline
bezeichnet. Eine Speicheranordnung, die eine derartige Anordnung
mit 2m Zeilen und 2n Spalten
aufweist, kann 2m·n Informationsbits
speichern. Wenn die Fertigung einer derartigen Anordnung eine Flächeneinheit
erfordert, so entspricht die Speicherzellendichte für eine derartige
Anordnung 2m·n Zellen
je Flächeneinheit.
-
In Systemen, die Speichervorrichtungen
benötigen,
sind die Speicherkapazität
und die Arbeitsgeschwindigkeit des Speichers wichtige Attribute. Vom
Standpunkt des Systemdurchsatzes aus betrachtet ist der Zugriff
auf die Speichervorrichtung ein weiteres wichtiges Attribut. Die
Speicherkapazität
betrifft die Datenmenge, die eine Speichervorrichtung speichern
kann. Die Arbeitsgeschwindigkeit betrifft die Geschwindigkeit, mit
der die Speichervorrichtung Daten speichern oder abrufen kann. Der
Zugriff ist größtenteils
von der Architektur des Systems abhängig. Im Allgemeinen nimmt
der Systemdurchsatz zu, wenn mehr als eine Systemvorrichtung direkt
auf die Speichervorrichtung zugreifen können. Der Systemdurchsatz nimmt
allgemein ferner zu, wenn mehr als eine Vorrichtung gleichzeitig
auf den Speicher zugreifen.
-
Da eine Speichervorrichtung für gewöhnlich eine
oder mehrere Anordnungen von Speicherzellen aufweist, ist die Speicherfähigkeit
einer Speichervorrichtung größtenteils
von der Größe einer
Speicherzelle abhängig.
Die Größe einer
Zelle bei einer gegebenen festen Anzahl von Komponenten ändert sich im
Zuge der weiteren Entwicklung der Fertigungstechnologien. Jede Verringerung
der Größe einer Speicherzelle
ermöglicht
jedoch die Fertigung von Speichervorrichtung mit einer höheren Dichte
der Speicherzellen. Eine Reduzierung der Zellenfläche ermöglicht eine
Zunahme der Zellendichte einer Anordnung um einen Faktor, der sich
dem Reduktionsfaktor nähert.
-
Eine Zelle, die zum Beispiel 40%
der Fläche einer
anderen Zelle nutzt, weist somit einen Reduktionsfaktor von 2,5
auf. Eine Anordnung der kleineren Zellen kann somit eine Zellendichte
aufweisen, die nahezu 2,5 mal größer ist
als die einer Anordnung der größeren Zellen.
-
Die Speicherkapazität steht
im direkten Verhältnis
zu der Zellendichte. Bei einer gegebenen festen Flächeneinheit
für eine
Anordnung von Speicherzellen ermöglicht
ein Reduktionsfaktor von 2,5 die Konstruktion von Speichervorrichtungen
mit den kleineren Zellen mit einer bis zu 2,5-fachen Speicherkapazität der Speichervorrichtungen,
die mit den größeren Zellen
konstruiert sind.
-
Die Systemzugriffgeschwindigkeit
kann häufig
unter Verwendung einer Dual-Port-Speicherarchitektur deutlich erhöht werden.
Ein Dual-Port-Speicher weist zwei Zugangs-Ports auf, so dass mehr
als eine Systemvorrichtung direkt auf den Speicher zugreifen können. Ein
Speicher mit einem Port ermöglicht
lediglich die direkte Kopplung mit einer Systemvorrichtung, so dass
die anderen Systemvorrichtungen für die Erlangung eines Zugriffs
auf den Speicher um den Port konkurrieren. Durch die Möglichkeit
der direkten Kopplung mit mehr als einer Systemvorrichtung verbessert
sich für
gewöhnlich
die Systemleistung insgesamt, da eine Dual-Port-Architektur die Konkurrenz
beim Zugriff auf einen Port des Speichers verringert.
-
Zu den Beispielen für Speichervorrichtungen,
die eine Dual-Port-Speicherarchitektur
verwenden zählen
Dual-Port-SRAMs (SRAMS) und First-In-First-Out-Puffer (FIFO-Puffer).
Eine Dual-Port-Speichervorrichtung mit integrierter Schaltung kann
eine Anordnung von Dual-Port-Speicherzellen aufweisen. Eine derartige
Dual-Port-Zelle gemäß dem Stand
der Technik ist in der Abbildung aus 1 veranschaulicht.
-
Herkömmliche Dual-Port-Speicherzellen
leiden unter einer Reihe von Nachteilen. Ein Nachteil der dem Stand
der Technik entsprechenden Dual-Port-Speicherzelle ist es, dass
die Größe des Layouts
einer derartigen Zelle ungefähr
2 bis 2,5 mal so groß ist
wie eine unter Verwendung der gleichen Fertigungstechnologie konstruierte
Zelle mit einem Port. Ein weiterer Nachteil der dem Stand der Technik
entsprechenden Dual-Port-Speicherzelle ist es, dass ein Paar von
Bitlines für
jeden Port erforderlich ist, und zwar aufgrund der differentiellen
Beschaffenheit der Zelle.
-
Ein weiteres Verfahren zur Realisierung
des Effekts einer Dual-Port-Speichervorrichtung in der Praxis ist
die Verwendung einer Anordnung aus Speicherzellen mit einem Port
in einer Dual-Port-Speichervorrichtung. Eine derartige Speicherzelle
mit einem Port ist in der Abbildung aus 2 veranschaulicht. In diesem Beispiel
werden die Ports der Speichervorrichtung multiplexiert, bevor der
Zugriff auf die Speicheranordnung realisiert wird. Somit konkurrieren
die beiden Vorrichtungen um den Zugriff auf der Geräteebene
im Gegensatz zu einer Konkurrenz au der Ebene einer Speicherzelle
in der Anordnung.
-
Ein Nachteil des Einsatzes multiplexierter Speicherzellen
mit einem Port ist es, dass die Multiplexing-Schaltkreisanordnung
Platz in Anspruch nimmt, der ansonsten für die Konstruktion von mehr Speicherzellen
verwendet werden könnte.
Darüber hinaus
ist die Multiplexing-Funktion für
den Zugriff auf eine Zelle mit einem Port langsamer als das direkte Zugriffsverfahren
unter Verwendung einer Dual-Port-Speicherzelle.
Dies führt
für gewöhnlich zu
einer langsameren Arbeitsgeschwindigkeit der Speichervorrichtung.
Die langsamere Arbeitsgeschwindigkeit des Speichers neigt dazu,
den Durchsatz des ganzen Systems negativ zu beeinflussen, wenn häufig Speicherzugriffe
angefordert werden.
-
Beispiele für dem Stand der Technik entsprechende
Speicherzellen sind in IEEE Transactions on Circuits and Systems
1: Fundamental Theory and Applications, Volume 41, Nr. 11, November
1994, New York, USA, Seiten 677–685,
SP000496357 Lai et al.: "A
New Design Methodology For Multiport Sram Cell" sowie in IEEE Proceedings of the Texas Conference
on Computing Systems, November 1975, IEEE Editor, Seiten 2B–11–2B–1.8, Chu
et al. in einem Artikel mit dem Titel "Multiaccess Memory: An Overview" sowie in den japanischen
Patentzusammenfassungen JP-A-55101185, 1. August 1980 (Chiyou Lsi
Gijutsu Kenkyu) beschrieben.
-
ZUSAMMENFASSUNG
UND AUFGABEN DER ERFINDUNG
-
Beschrieben wird eine Single-Ended
Dual-Port-Speicherzelle gemäß den anhängigen Ansprüchen. Die
Speicherzelle kann ein von einem ersten oder einem zweiten Port
empfangenes Datenbit speichern. Der erste und der zweite Port können das gespeicherte
Bit gleichzeitig erkennen. Die Speicherzelle sorgt für eine stabile
Speicherung der in die Zelle geschriebenen Werte.
-
Eine Anordnung von Single-Ended Dual-Poxt-Speicherzellen
kann in einer Dual-Port-Speichervorrichtung verwendet werden, um
den gleichzeitigen Zugriff auf einen Speicher durch mehr als eine
Systemvorrichtung erleichtern bzw. ermöglichen.
-
Andere Aufgaben, Merkmale und Vorteile der
vorliegenden Erfindung werden aus den beigefügten Zeichnungen und aus der
folgenden genauen Beschreibung deutlich.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Die vorliegende Erfindung wird in
Form von Beispielen und ohne einzuschränken in den Abbildungen der
beigefügten
Zeichnungen veranschaulicht, wobei die gleichen Elemente mit übereinstimmenden
Bezugszeichen bezeichnet sind. In den Zeichnungen zeigen:
-
1 eine
Prinzipskizze einer dem Stand der Technik entsprechenden differentiellen
Dual-Port-Speicherzelle;
-
2 eine
Prinzipskizze für
eine dem Stand der Technik entsprechende differentielle Speicherzelle
mit einem Port;
-
3 eine
Prinzipskizze eines Ausführungsbeispiels
einer Single-Ended Dual-Port-Speicherzelle;
-
4 eine
Prinzipskizze einer dem Stand der Technik entsprechenden Single-Ended-Speicherzelle
mit einem Port;
-
5 ein
alternatives Ausführungsbeispiel einer
Single-Ended Dual-Port-Speicherzelle;
und
-
6 ein
Blockdiagramm der unterstützenden
Schaltkreisanordnung für
eine Anordnung von Single-Ended Dual-Port-Speicherzellen.
-
GENAUE BESCHREIBUNG
DER ERFINDUNG
-
Die Abbildung aus 3 veranschaulicht das Schaltungsdiagramm
für ein
Ausführungsbeispiel
einer statischen Single-Ended Dual-Port-Speicherzelle mit einer
Implementierung unter Verwendung der Metalloxid-Halbleitertechnologie (MOS). Bei der
Zelle 300 aus 3 handelt
es sich um eine statische Direktzugriffsspeicherzelle (SRAM-Zelle). Eine
Dual-Port-Speichervorrichtung kann eine Anordnung derartiger Zellen
aufweisen.
-
NMOS-Transistoren 350 und 360 dienen
als Pass-Gates für
die Bitlines 372 und 382 der entsprechenden ersten 370 und
zweiten Ports 380.
-
Die Signalspeichervorrichtung zum
Speichern eines Datenbits wird durch die NMOS-Transistoren 310 und 320 und
die PMOS-Transistoren 330 und 340 gebildet.
Die Abbildung aus 5 veranschaulicht
ein alternatives Ausführungsbeispiel,
das Widerstandsbelastungsvorrichtungen 530 und 540 an
Stelle der PMOS-Transistoren 330 und 340 aus 3 verwendet.
-
In Bezug auf die Abbildung aus 3 ist der erste Port 370 der
Bitline 372 und der Wordline 374 zugeordnet. Die
Bitline 372 des ersten Ports wird zum Schreiben eines Datenbits
von dem ersten Port 370 in die Speicherzelle 300 verwendet.
Die Bitline 372 des ersten Ports wird ferner zum Lesen
des einzelnen Informationsbits über
den ersten Port 370 aus der Speicherzelle 300 verwendet.
Die Wordline 374 des ersten Ports wird zur Auswahl der
Speicherzelle 300 für
einen Lese- oder Schreibvorgang über
den ersten Port 370 verwendet.
-
Der zweite Port arbeitet auf ähnliche
Weise. Der zweite Port 380 ist der Bitline 382 und
der Wordline 384 zugeordnet. Die Bitline 382 des
zweiten Ports wird zum Schreiben eines Datenbits von dem zweiten
Port 380 in die Speicherzelle 300 verwendet. Die
Bitline 382 des zweiten Ports wird ferner zum Lesen eines
Informationsbits über
den zweiten Port 380 aus der Speicherzelle 300 verwendet.
Die Wordline 384 des zweiten Ports wird auch zur Auswahl
einer Speicherzelle 300 für eine Lese- oder Schreiboperation über den
zweiten Port 380 verwendet.
-
Sowohl der erste als auch der zweite
Port müssen
die gleiche Logikbasis zur Speicherung verwenden, um sicherzustellen,
dass die ersten und zweiten Ports die Speicherzelle gemeinsam nutzen können. Mit
anderen Worten müssen
der erste und der zweite Port beide jeweils ein positives oder ein negatives
Logiksystem verwenden.
-
Um sicherzustellen, dass von dem
ersten und dem zweiten Port das gleiche Logiksystem verwendet wird,
sollten die durch eine der Bitlines (372 oder 382)
vorgesehenen Daten invertiert werden. Das Hinzufügen der invertierenden Logik
für die
unterstützende
Schaltkreisanordnung für
die Speicheranordnung sollte keinen größeren Platz in Anspruch nehmen,
da die invertierende Logik auf der Ebene des Geräte-Ports anstatt auf der Speicherzellenebene
hinzugefügt
werden kann. Die Abbildung aus 6 veranschaulicht
ein Ausführungsbeispiel
der unterstützenden
Schaltkreisanordnung 600 für eine Anordnung von Single-Ended
Dual-Port-Speicherzellen 610 in Blockdiagrammdarstellung.
Zum Beispiel kann eine invertierende Logik in einer 32 K × 1 Bit
Dual-Port-Speichervorrichtung nur einem und nicht beiden Geräte-Ports
hinzugefügt
werden. In der Abbildung aus 6 können der
Dateneingabepuffer 622 des rechten Ports und der Port-Ausgabepuffer
sowie die Schreibsteuereinrichtung 624 die invertierende Logik
aufweisen, um die Datenumkehr auf der Port-Ebene zu erreichen. In
einem anderen Ausführungsbeispiel
können
eine invertierende Dateneingangssteuereinrichtung 632 und
ein invertierender Leseverstärker 634 verwendet
werden. Dies hebt sich deutlich von der invertierenden Logik für jede Speicherzelle
der Anordnung 610 ab.
-
Eine derartige invertierende Logik
ist allgemein schneller und neigt dazu, weniger Platz in Anspruch
zu nehmen als die Multiplexing-Schaltkreisanordnung einer dem Stand
der Technik entsprechenden Speichervorrichtung, die die multiplexierten
Single-Port-Zellen verwendet, wie dies vorstehend im Text beschrieben
worden ist.
-
Sofern keine anderslautenden Angaben
gemacht werden, wird für
die Lese- und Schreibbeispiele von einem positiven Logiksystem in
Bezug auf den ersten Port 370 ausgegangen. Dies bedeutet,
dass ein hoher Logikwert oder eine "1" durch
eine Spannung dargestellt wird, die größer ist als die Spannung, die
einen niedrigen Logikwert oder eine "0" darstellt.
Der Spannungswert an dem Knoten 351 zeigt den Zustand der
Zelle an. Als Beispiel invertiert die unterstützende Schaltkreisanordnung
die Signale der Bitline 382 (und nicht die Signale der
Bitline 372).
-
Kennzeichnenderweise können in
Bezug auf das Lesen und Schreiben von Single-Ended-Port-Speicherzellen
im Gegensatz zu differentiellen Zellen Probleme auftreten. In Bezug
auf die Abbildung aus 2 wird
ein Paar komplementärer Signale
der differentiellen Speicherzelle 200 über die Bitlines 272a und 272b während einem
Schreibvorgang zugeführt.
Dies wirkt dabei unterstützend,
sicherzustellen, dass die Speicherzelle 200 den Zustand
wechseln kann, wenn der Zelleninhalt nicht dem zu speichernden Wert
entspricht. Wenn zum Beispiel eine "1" gespeichert
werden soll, so führt
die Bitline 272a eine logische "1" und
die Bitline 272b führt
eine logische "0". Wenn die Wordline 274 auf
einen hohen Wert gebracht wird, wird eine Seite der Zelle 200 "gedrückt", während die
andere Seite "gezogen
wird, um sicherzustellen, dass die Zelle eine logische "1" speichert. Dabei handelt es sich um
die differentielle oder "Dual-Ended" Beschaffenheit der Zelle
während
einem Schreibvorgang. Im Bezug auf die Single-Ended-Zelle aus 3 ist an Stelle der kombinierten
Aktion aus "drücken" und "ziehen" in Bezug auf die
Zelle 300 während
einem Schreibvorgang im Gegensatz dazu entweder nur ein "Drücken" oder "Ziehen" von dem einen oder
dem anderen Port gegeben. Dies geht darauf zurück, dass jedem Port nur eine
Bitline zugeordnet ist und dass die Ports unabhängig voneinander arbeiten.
Da ein Schreib- oder Lesevorgang der Zelle 300 unter Verwendung
einer einzigen Bitline erfolgt, müssen andere Techniken verwendet
werden, um sicherzustellen, dass die Speicherzelle 300 dazu
gebracht wird, den Zustand zu ändern
und den gespeicherten Wert zu halten. Ansonsten kann es sein, dass
die Zelle 300 nicht in der Lage ist, einen während eines
Schreibvorgangs in die Zelle geschriebenen Wert zu speichern.
-
Eine differentielle Speicherzelle
ist allgemein so gestaltet, dass sie die Zellenstabilität während Leseoperationen
aufrechterhält
sowie die Fähigkeit
zur Speicherung eines während
Schreiboperationen geschriebenen Werts, ohne dass eine spezielle
unterstützende
Schaltkreisanordnung wie etwa Ladepumpen und Bezugssignale verwendet
werden muss. Eine Single-Ended-Speicherzelle ist unter Umständen nicht
in der Lage, den in sie geschriebenen Wert für Schreiboperationen zu speichern,
die eine normale unterstützende
Schaltkreisanordnung verwenden. Die Abbildung aus 4 veranschaulicht ein Ausführungsbeispiel
einer dem Stand der Technik entsprechenden Single-Ended Single-Port-Zelle.
In der Abbildung aus 4 geht
die Unfähigkeit
zur Speicherung eines in die Zelle 400 geschriebenen Werts
auf die niedrige Konduktanz (hoher Widerstand) des Pass-Gate-Transistors 450 im
Vergleich zu dem Transistor 410 zurück.
-
In Bezug auf die dem Stand der Technik
entsprechende differentielle. Speicherzelle 200 aus 2 liegt das Verhältnis des
Gate-Breiten-Längenverhältnisses
des Transistors 210 zu dem Gate-Breiten-Längenverhältnis des
Transistors 250 im Bereich von 1,5 bis 2,0. Das Verhältnis des
Gate-Breiten-Längenverhältnisses
des Transistors 220 zu dem des Transistors 260 entspricht
ungefähr
dem Verhältnis des
Gate-Breiten-Längenverhältnisses
des Transistors 250 zu dem Gate-Breiten-Längenverhältnis des Transistors 210.
Das Verhältnis
des Breiten-Längenverhältnisses
der Pull-Down- oder Signalspeichervorrichtung (d. h. 210)
zu dem effektiven Breiten-Längenverhältnisses
des Pass-Gates (d. h. 250) wird als Beta-Verhältnis der
Speicherzelle bezeichnet. Algebraisch lässt sich dies für die Zell 200 mit (W210L210)/(W250/L250) ausdrücken. Wenn
die Transistoren 210 und 250 mit der gleichen
Gate-Länge
gestaltet werden, so entspricht das Beta-Verhältnis einfach dem Verhältnis der
Gate-Breiten (d. h. W210/W250. Die
Abbildung aus 2 veranschaulicht
zwar zwei Pass-Gates (250, 260) und zwei Pull-Down-Vorrichtungen
(210, 220), jedoch gibt es für diese Zelle nur ein Beta-Verhältnis, da
die Zelle kennzeichnenderweise symmetrisch ist. Mit anderen Worten
weisen die Lastvorrichtungen 240 und 230 identische
Merkmale auf, und die Breiten, Längen
und Betriebsmerkmale der Transistoren 210 und 250 sind
mit denen der entsprechenden Transistoren 220 und 260 identisch.
Das Beta-Verhältnis
für die
dem Stand der Technik entsprechende Zelle 200 liegt somit
kennzeichnenderweise im Bereich von 1,5 bis 2,0. Das Beta-Verhältnis für eine dem
Stand der Technik entsprechende Zelle unter Verwendung von Widerstandsbelastungen
liegt kennzeichnenderweise im Bereich von 2,5 bis 3,0. Das Gate-Breiten-Längenverhältnis der
Transistoren 210 und 220 ist mit anderen Worten
bis zu dreimal so groß wie
das der entsprechenden Transistoren 250 und 260 in
der dem Stand der Technik entsprechenden differentiellen Zelle 200,
wenn Widerstandsbelastungen verwendet werden. Die Verwendung eines
Beta-Verhältnisses von
1,5 bis 2,0 in der Single-Ended-Zelle 400 aus 4 kann dazu führen, dass
die während
einer Schreiboperation in die Zelle geschriebenen Werte nicht ordnungsgemäß gespeichert
werden können.
-
Ein Verfahren zur Überwindung
der Unmöglichkeit
der richtigen Speicherung der Werte für die Zelle 400 ist
der Einsatz einer Wordline-Verstärkungsschaltung
zur Steigerung der Konduktanz (Reduzierung des Widerstands) des
Transistors 450 während einer
Schreiboperation. Eine Erhöhung
der Konduktanz des Transistors 450 ermöglicht einen Schreibvorgang,
der eine einzige Bitline 472 ermöglicht. Das Anlegen einer größeren Spannung
als Vcc an die Wordline 474 erhöht die Konduktanz
des Transistors 450. Während
einem Lesevorgang wird an die Wordline 474 eine normale
Spannung (z. B. Vcc) angelegt und die Zelle
bleibt für
die Leseoperation stabil.
-
Ein weiteres Verfahren betrifft eine Änderung des
Beta-Verhältnisses
der Speicherzelle 400 von dem für eine typische differentielle
Speicherzelle. Zum Beispiel kann sich der Entwickler eines Speichers
dafür entscheiden,
den Eingangs-Pass-Gate-Transistor 450 doppelt
so groß zu gestalten
wie 410 und 420. Durch die Verdopplung der Größe des Transistors 450 im
Verhältnis
zu den Transistoren 410 und 420 hat der Speicherentwickler das
Beta-Verhältnis
der Speicherzelle auf ungefähr 0,5
verringert. Dies ermöglicht
Schreiboperationen unter Verwendung der normalen unterstützenden Schaltkreisanordnung
und der normalen Wordline-Spannungen (z. B. Vcc).
Die Verringerung des Widerstands des Pass-Gates 450 bewirkt
jedoch allgemein, dass die Speicherzelle in Bezug auf Leseoperationen
instabil wird. Anders ausgedrückt
kann eine Leseoperation bewirken, dass die Zelle den gespeicherten
Wert verliert. Die Zellenstabilität kann dadurch aufrecht erhalten
werden, dass die Konduktanz des Pass-Gate-Transistors 450 während der
Leseoperation verringert wird. Die Konduktanz des Pass-Gate-Transistors 450 kann
unter Verwendung einer niedrigeren Spannung als Vcc an
der Wordline 474 während
der Leseoperation verringert werden.
-
Die angewandten Verfahren zur Überwindung
von Schwierigkeiten beim Lesen oder Schreiben für die Single-Ended Single-Port-Zelle 400 können auf
die in der Abbildung aus 3 veranschaulichte
Single-Ended Dual-Port-Speicherzelle 300 erweitert werden.
Somit kann sich der Speicherzellenentwickler dafür entscheiden, ein Beta-Verhältnis aufrecht
zu erhalten, das dem dem Stand der Technik entsprechender differentieller
Speicherzellen ähnlich ist,
oder der Speicherentwickler entscheidet sich dafür, eine Zelle mit einem niedrigeren
Beta-Verhältnis zu
entwickeln. Demgemäß muss der
Entwickler die unterstützende
Schaltkreisanordnung für
die Schreiboperation oder die Leseoperation modifizieren.
-
Zur Ausführung einer Leseoperation der Speicherzelle 300 von
dem ersten Port 370 wird die Wordline 374 auf
einen logisch hohen Wert gesetzt. Wenn die Zelle 300 so
gestaltet ist, dass sie ein Beta-Verhältnis aufweist, das dem dem
Stand der Technik entsprechenden differentiellen Speicherzellen ähnlich ist,
sollte die Wordline-Spannung ungefähr Vcc entsprechen.
Wenn die Zelle 300 ansonsten mit einem niedrigeren Beta-Verhältnis gestaltet
ist, sollte die unterstützende
Schaltkreisanordnung eine niedrigere Spannung als Vcc für die Spannung
der Wordline 374 vorsehen. Dadurch wird der Bitline-Pass-Gate-Transistor 350 eingeschaltet,
so dass ein Datenbit von der Zelle 300 zu der Bitline 372 kommuniziert
werden kann. Wenn in der Annahme eines positiven Logiksystems in
Bezug auf den ersten Port die Zelle 300 eine logische "1" aufweist, sind die Transistoren 340 und 320 eingeschaltet
und die Transistoren 330 und 310 sind ausgeschaltet.
Da der Transistor 340 eingeschaltet und der Transistor 310 ausgeschaltet
ist, wird an der Bitline 372 von dem Knoten 351 eine
Spannung vorgesehen, die sich Vcc nähert.
-
Wenn die Zelle 300 eine
logische "0" aufweist, sind die
Transistoren 310 und 330 eingeschaltet und die
Transistoren 320 und 340 sind ausgeschaltet. Da
der Transistor 310 eingeschaltet und der Transistor 340 ausgeschaltet
ist, wird an der Bitline 372 von dem Knoten 351 eine
Spannung vorgesehen, die sich Vss nähert.
-
Die von dem zweiten Port ausgeführte Leseoperation
ist ähnlich,
mit der Ausnahme, dass die Speicherzelle als positive Logik im Verhältnis zu
dem ersten Port gesehen wird. Zur Ausführung einer Leseoperation der
Zelle 300 von dem zweiten Port 380 wird die Wordline 384 auf
einen logisch hohen Wert gesetzt. Dies ermöglicht es, dass sich der Bitline-Pass-Gate-Transistor 360 einschaltet,
so dass ein Datenbit von der Zelle 300 zu der Bitline 382 übertragen
werden kann. In der Annahme eines positiven Logiksystems in Bezug
auf den ersten Port sind die Transistoren 340 und 320 eingeschaltet
und die Transistoren 330 und 310 ausgeschaltet,
wenn die Zelle 300 eine logische "1" aufweist,
ebenso wie bei der Ausführung
einer Leseoperation von dem ersten Port. Da der Transistor 320 eingeschaltet
und der Transistor 330 ausgeschaltet ist, wird an der Bitline 382 eine
Spannung vorgesehen, die sich Vss nähert. Da Vss eine
logische "0" darstellt, muss
die unterstützende
Schaltkreisanordnung für
die Speicheranordnung die Daten von der Bitline 382 invertieren,
um den Inhalt der Speicherzelle 300 präzise darstellen zu können. Wie
dies bereits vorstehend im Text beschrieben worden ist, kann anstatt
auf der Basis von Zelle für
Zelle auf der Ebene des zweiten Geräte-Ports eine invertierende
Logik vorgesehen werden. In einem anderen Ausführungsbeispiel kann eine invertierende
Logik auf einer Zwischenebene eingesetzt werden, wie etwa bei Gruppen
von Bitlines.
-
Eine mögliche Ausführungsart einer Schreiboperation
ist wie folgt gegeben. Zur Ausführung
einer Schreiboperation an den Port 370 wird die Wordline 374 auf
einen logisch hohen Wert angehoben. Wenn die Zelle 300 mit
einem für
eine differentielle Speicherzelle typischen Beta-Verhältnis gestaltet
ist, kann es sein, dass die Spannung der Wordline 374 Vcc überschreiten
muss. Wenn die Zelle 300 im Gegensatz dazu mit einem kleineren Beta-Verhältnis gestaltet
ist, so ist die Spannung der Wordline 374 ungefähr gleich
Vcc. Dies ermöglicht das Einschalten des
Bitline-Pass-Gate-Transistors 350 mit ausreichender Konduktanz,
so dass ein zu schreibendes Datenbit von der Bitline 372 zu
der Zelle 300 übertragen
werdenkann. Wenn in der Annahme, dass die Zelle 300 gegenwärtig eine
logische "0" speichert (die Spannung
an dem Knoten 351 nähert
sich Vss), eine logische "1" in die Zelle 300 geschrieben
werden soll, beginnt die logisch "hohe" Spannung
an der Bitline 372, die Spannung an dem Knoten 351 zu
erhöhen.
Wenn die Spannung an dem Knoten 351 zunimmt, geht die Konduktanz
des PMOS-Transistors 330 zurück und die Konduktanz des NMOS-Transistors 320 steigt
an.
-
Dies verringert die Spannung an dem
Knoten 361. Wenn die Spannung an dem Knoten 361 abnimmt,
nimmt die Konduktanz des NMOS-Transistors 310 ab und die
Konduktanz des PMOS-Transistors 340 nimmt
zu. Die Spannung an dem Knoten 351 nimmt mit abnehmender
Konduktanz das NMOS-Transistors 310 zu. Somit wird ein
positiver Rückführungszyklus
erzeugt, der andauert, bis die Transistoren 310 und 330 ausgeschaltet
und die Transistoren 320 und 340 eingeschaltet
werden, so dass der Knoten 351 auf einer sich Vcc nähernden Spannung
verriegelt wird. In ähnlicher
Weise wird der Knote 361 auf einer sich Vss nähernden
Spannung verriegelt. Wenn die Zelle vor der Operation eine "1" gespeichert hat, so verbleibt der Knoten 351 einfach auf
dem sich Vcc nähernden Wert. Unabhängig von dem
vorherigen Zustand der Zelle ist die Zelle 300 jetzt in
einem Zustand einer logischen "1" verriegelt, so dass
die an der Bitline 372 vorgesehene Spannung sich Vcc nähert.
-
Um sicherzustellen, dass dieses Verfahren des
Schreibens in die Speicherzelle 300 ordnungsgemäß funktioniert,
wird der Pass-Gate-Transistor 350 so ausgewählt, dass
er einen geringen "eingeschalteten" Widerstand (Drain-Source-Widerstand) im
Vergleich zu dem "eingeschalteten" Widerstand von 310 aufweist.
Die gleiche Beziehung gilt für
den "eingeschalteten" Widerstand des Pass-Gate-Transistors 360 und
des Transistors 320. Dies ermöglicht das Schreiben in die
Speicherzelle 300 unter Verwendung einer typischen unterstützenden
Schaltkreisanordnung und der Wordline-Spannungen (Vcc). In
einem alternativen Ausführungsbeispiel
wird das gleiche Beta-Verhältnis wie
bei einer standardmäßigen differentiellen
Speicherzelle aufrecht erhalten. Wie dies bereits vorstehend im
Text ausgeführt
worden ist, kann dies voraussetzen, dass die unterstützende Schaltkreisanordnung
während
einer Schreiboperation an den Wordlines 374 bzw. 384 Spannungen
vorsieht, die größer sind
als Vcc.
-
Die Transistoren 330 und 340 (oder
die Widerstandsbelastungsvorrichtungen in einem alternativen Ausführungsbeispiel)
sind ausreichend groß, um
eine Zellenstabilität
zu gewährleisten,
während sich
gleichzeitig die durch den Speicherentwickler bestimmten Verlustgrenzen
einhalten. Bei einem Ausführungsbeispiel
kann es sich um PMOS-Transistoren 340 und 330 handeln,
die einen "eingeschalteten" Widerstand aufweisen,
der ungefähr
doppelt so groß ist
wie der "eingeschaltete" Widerstand der entsprechenden
NMOS-Transistoren 310 und 320. Ein
anderes Ausführungsbeispiel
gemäß der Abbildung
aus 5 kann Widerstandsbelastungsvorrichtungen 540 und 530 aufweisen,
die einen Widerstand aufweisen, der doppelt so groß ist wie
der "eingeschaltete" Widerstand der entsprechenden
Transistoren 510 und 520.
-
In erneutem Bezug auf die Abbildung
aus 3 entspricht das
Verfahren zum Schreiben einer logischen "0" an
den Port 370 dem Verfahren zum Schreiben einer logischen "1". Die Wordline 374 wird auf
einen logisch hohen Wert erhöht,
so dass ein Datenbit von der Bitline 372 zu der Zelle 300 übertragen werden
kann. Wenn die Speicherzelle 300 mit einem üblichen
Beta-Verhältnis
für eine
differentielle Speicherzelle gestaltet ist, kann es sein, dass die
Spannung der Wordline 374 Vcc überschreiten
muss. Wenn die Speicherzelle 300 hingegen mit einem kleineren
Beta-Verhältnis
gestaltet ist, so entspricht die Spannung der Wordline 374 ungefähr Vcc. Dies ermöglicht das Einschalten des
Bitline-Pass-Gate-Transistors 350 mit ausreichender Konduktanz,
so dass ein zu schreibendes Datenbit von der Bitline 372 zu
der Zelle 300 übertragen
werden kann. Wenn in der Annahme, dass die Zelle 300 gegenwärtig eine
logische "1" speichert (die Spannung
an dem Knoten 351 nähert
sich Vcc), eine logische "0" in die Zelle 300 geschrieben
werden soll, beginnt die logisch "niedrige" Spannung an der Bitline 372 die
Spannung an dem Knoten 351 zu senken. Wenn die Spannung
an dem Knoten 351 abnimmt, nimmt die Konduktanz des PMOS-Transistors 330 zu und
die Konduktanz des NMOS-Transistors 320 nimmt ab. Dies
erhöht
die Spannung an dem Knoten 361. Wenn die Spannung an dem
Knoten 361 zunimmt, nimmt die Konduktanz des NMOS-Transistors 310 zu
und die Konduktanz des PMOS-Transistors 340 nimmt ab. Die
Spannung an dem Knoten 351 nimmt ab, wenn die Konduktanz
des NMOS-Transistors 310 zunimmt. Somit wird ein positiver
Rückführungszyklus
erzeugt, der andauert, bis die Transistoren 310 und 330 eingeschaltet
und die Transistoren 320 und 340 ausgeschaltet
werden, so dass der Knoten 351 auf einem sich Vss nähernden
Spannungswert verriegelt wird. In ähnlicher Weise wird der Knoten 361 auf
einem sich Vcc nähernden Spannungswert verriegelt.
Wenn die Zelle vor der Operation eine "0" gespeichert
hat, würde
der Knoten 351 einfach auf einem sich Vss nähernden
Wert verbleiben. Unabhängig
von dem vorherigen Zustand der Zelle wird die Zelle 300 jetzt
in einem logischen Zustand von "0" verriegelt, so dass
sich die an der Bitline 372 vorgesehene Spannung Vss nähert.
-
Das Verfahren zur Ausführung einer
Schreiboperation an den Port 380 setzt das Erhöhen der Wordline 384 auf
einen logisch hohen Wert voraus, so dass ein Datenbit von der Bitline 382 zu
der Zelle 300 übertragen
werden kann. Die an den Port 380 zu schreibenden Daten
sollten invertiert werden, da die Speicherzelle auf einer positiven
Logik im Verhältnis zu
dem Port 370 basiert. Wenn zum Beispiel eine logische "1" an den zweiten Port einer Speichervorrichtung
geschrieben werden soll, sollte die unterstützende Schaltkreisanordnung
für die
Anordnung das Signal invertieren, so dass an dem Port 380 der
Zelle 300 eine logische "0" dargestellt
wird. In der Annahme, dass die Zelle 300 gegenwärtig eine
logische "0" speichert (die Spannung
an dem Knoten 361 nähert sich
Vcc), beginnt die logisch "niedrige" Spannung an der
Bitline 382 die Spannung an dem Knoten 361 zu senken.
Ab diesem Punkt arbeitet die Zelle auf die gleiche Weise wie wenn
eine "1" an den Port 370 geschrieben
wird. Wenn die Spannung an dem Knoten 361 abnimmt, nimmt
die Konduktanz des PMOS-Transistors 340 zu und die Konduktanz
des NMOS-Transistors 310 nimmt ab. Dadurch nimmt die Spannung
an dem Knoten 351 zu. Wenn die Spannung an dem Knoten 351 zunimmt,
nimmt die Konduktanz des NMOS-Transistors 320 zu und die
Konduktanz des PMOS-Transistors 330 nimmt ab. Die Spannung
an dem Knoten 361 nimmt ab, wenn die Konduktanz des NMOS-Transistors 320 zunimmt. Somit
wird ein positiver Rückkopplungszyklus
erzeugt und aufrecht erhalten, bis die Transistoren 310 und 330 ausgeschaltet
und die Transistoren 320 und 340 eingeschaltet
werden, so dass der Knoten 361 auf einem Spannungswert
verriegelt wird, der sich Vss nähert. In ähnlicher
Weise wird der Knoten 351 auf einem sich Vcc nähernden
Spannungswert verriegelt. Wenn die Zelle vor der Operation eine "1" gespeichert hat, so bleibt der Knoten 361 einfach
auf einem sich Vss nähernden Wert. Unabhängig von
dem vorherigen Zustand der Zelle wird die Zelle 300 jetzt
in einem logischen Zustand von "1" verriegelt.
-
Die Operation zur Verwendung des
Ports 380 zum Speichern einer logischen "0" unter Verwendung des zweiten Ports
einer Speichervorrichtung wird auf ähnliche Weise ausgeführt, so
dass das Datenbit durch die unterstützende Schaltkreisanordnung
invertiert wird, so dass eine logische "1" von
der Bitline 382 zu der Zelle geführt wird.
-
Eine Dual-Port-Speicherzelle, die
Lese- und Schreiboperationen an jedem Port ermöglicht, wird als Duplex-Zelle
bezeichnet. In einer Duplex-Dual-Port-Speicherzelle ist die Symmetrie
in Bezug auf die jedem Port zugeordneten Vorrichtungen von Bedeutung,
da die Schreib- und Leseoperationen an jedem Port erfolgen. Das
Einführen
einer Asymmetrie in eine Duplex-Zelle kann Unterschiede in den Lese- und
Schreibfähigkeiten
an jedem Port erzeugen.
-
Der Speicherentwickler kann sich
dafür entscheiden,
die Pass-Gate-Transistoren 350 und 360 größer zu gestalten
(d. h. niedrigerer Widerstand) als die entsprechenden Transistoren 310 und 320.
Durch die größer ausgewählten Transistoren 350 und 360 wird
die Zelle 300 absichtlich in Bezug auf Leseoperationen
destabilisiert, so dass eine Verstärkungsspannung (d. h. größer als
Vcc) an den Wordlines 374 und 384 für Schreiboperationen
nicht erforderlich ist. Eine niedrigere Spannung (d. h. kleiner
als Vcc) kann für Leseoperationen jedoch an
den Wordlines 374 und 384 erforderlich sein.
-
Alternativ kann sich der Speicherentwickler dafür entscheiden,
dass die Pass-Gate-Transistoren 350 und 360 kleiner
(d. h. größerer Widerstand)
sind als die entsprechenden Transistoren 310 und 320. Durch
die Auswahl kleinerer Transistoren 350 und 360 ist
an den Wordlines 374 und 384 für Leseoperationen keine kleinere
Spannung als Vcc erforderlich. Für Schreiboperationen
kann jedoch eine Verstärkungsspannung
(d. h. größer als
Vcc) an den Wordlines 374 und 384 erforderlich
sein.
-
Da der Drain-Source-Widerstand umgekehrt proportional
zu den Transistor-Gate-Breiten (in der Annahme einer festen Gate-Länge) ist, können die Vorrichtungen mit
höherem
Widerstand so klein wie möglich
gestaltet werden, und die Größen der
Vorrichtungen mit geringerem Widerstand können nach der Bestimmung der
Größe der kleineren
Komponenten ausgewählt
werden. In einem Ausführungsbeispiel
können
die Transistoren 310, 320, 330 und 340 mit
den gleichen Vorrichtungsgeometrien ausgewählt werden (d. h. mit gleichen
Gate-Breiten und gleichen Gate-Längen).
Die Pass-Gates 350 und 360 werden mit deutlich
größeren Gate-Breiten
als die entsprechenden NMOS-Transistoren 310 und 320 ausgewählt. Unter
Verwendung eines Verfahrens, das minimale Geometrien von 0,5 Mikron
zulässt,
können
die PMOS-Transistoren 330 und 340 somit
Gate-Breiten von 0,5 Mikron und Gate-Längen von 0,5 Mikron aufweisen.
Die Pass-Gates 350 und 360 können Gate-Breiten von 1,2 Mikron
und Gate-Längen
von 0,5 Mikron aufweisen. Die Transistoren 310 und 320 können Gate- Breiten von 0,5 Mikron
und Gate-Längen
von 0,5 Mikron aufweisen.
-
In einem weiteren Beispiel, das nicht
Bestandteil der vorliegenden Erfindung ist, können die Transistoren 310 und 320 Gate-Breiten
von 1,2 Mikron und Gate-Längen
von 0,5 Mikron aufweisen. Die Transistoren 350 und 360 und
die PMOS-Transistoren 330 und 340 können jeweils
eine Gate-Breite von 0,5 Mikron und eine Gate-Länge von 0,5 Mikron aufweisen.
-
In dem Ausführungsbeispiel weisen die Pass-Gate-Transistoren 350 und 360 einen
höheren Drain-Source-Widerstand
auf als die Transistoren 310 und 320, so dass
die Zelle in Bezug auf eine Leseoperation stabil gehalten wird,
wenn eine Bitline Vcc führt, und wobei der dieser Bitline
zugeordnete Knoten auf einem Wert verriegelt wird, der sich Vss nähert.
Wie dies bereits vorstehend im Text beschrieben worden ist wird
dies entweder über
die Vorrichtungsgeometrie oder die Wordline-Spannung erreicht. Wenn die Zelle 300
zum Beispiel eine gespeicherte "0" aufweist, wird der
Knoten 351 auf einem sich Vss nähernden Wert verriegelt. Selbst
wenn die Bitline 372 somit eine sich Vcc nähernde Spannung führt, wenn
das Pass-Gate 350 durch die Wordline 374 ausgewählt wird, ändert sich
der Zelleninhalt nicht (d. h. der Knoten 351 wechselt nicht
von Vss zu Vcc). Wenn jedoch die Pass-Gates 350 oder 360 ausgewählt werden,
weisen sie unter Umständen
keinen ausreichenden Widerstand auf, um es zu verhindern, dass die
Zelle 300 den Zustand wechselt, wenn ein Knoten auf einem
sich Vcc nähernden Wert verriegelt wird
und wenn die diesem Knoten zugeordnete Bitline Vss führt. Wenn
der Knoten 351 zum Beispiel auf einem sich Vcc nähernden
Wert verriegelt wird und die Bitline 372 Vss führt, reicht
der Widerstand des Pass-Gates 350 unter Umständen nicht
auf, um es zu verhindern, dass die Zelle 300 zum Zeitpunkt
der Durchführung
eines Lesevorgangs von dem Port 370 (d. h. der Knoten kann
von Vcc zu Vss wechseln)
den Zustand ändert.
Dies kann dadurch verhindert werden, dass sichergestellt wird, dass
die für
den Lesevorgang verwendete Bitline zum Führen von Vcc vorgeladen
wird, bevor die entsprechende Wordline während einer Leseoperation eingeschaltet
wird.
-
Die Single-Ended Dual-Port-Speicherzelle aus 3 ermöglicht den gleichzeitigen Zugriff
von den beiden Ports 370 und 380. Da an beiden
Ports entweder eine Schreib- oder eine Leseoperation ausgeführt werden
kann, wird die Zelle 300 als Duplex-Zelle bezeichnet. Die
Speicherzelle ermöglicht somit
gleichzeitige Leseoperationen von beiden Ports. Auf die Zelle 300 kann
durch eine Leseoperation von einem Port und eine Schreiboperation
an den anderen Port gleichzeitig zugegriffen werden.
-
Die Zelle 300 arbeitet unter
Umständen
nicht vorhersehbar, wenn jeder Port versucht, einen anderen Wert
zu schreiben. Wenn ferner eine Leseoperation von einem Port gleichzeitig
zu einer ausgeführten
Schreibeoperation an den anderen Port ausgeführt wird, kann es vorkommen,
dass der abgerufene Wert nicht dem erwarteten Wert entspricht. Diese beiden
Situationen können
jedoch auf unterschiedliche Art und Weise behandelt werden. Eine
Möglichkeit
ist es, einfach die Tatsache zu ignorieren, dass die Daten unpräzise sein
könnten.
Eine andere Möglichkeit
ist die Behebung einer derartigen Konkurrenz durch die unterstützende Schaltkreisanordnung,
indem ein gleichzeitiger Zugriff bei derartigen Bedingungen nicht
zugelassen wird.
-
Bei einem Vergleich der Abbildungen
der 1, 2 und 3 sollten
verschiedene Vorteile deutlich werden. Die Abbildung aus 1 veranschaulicht eine dem
Stand der Technik entsprechende Dual-Port-Speicherzelle 100,
die zwei Haltetransistoren (110, 120), vier Bitline-Pass-Gate-Transistoren (130, 140, 150, 160)
und zwei Widerstandsbelastungen (162 und 164)
voraussetzen. Die vier Bitline-Pass-Gates ermöglichen asynchrone Lese- und Schreiboperationen,
die von zwei separaten, asynchronen Ports 170 und 180 auftreten
können.
Im Gegensatz dazu erfordert das in der Abbildung aus 3 veranschaulichte Ausführungsbeispiel
nur vier Haltetransistoren und zwei Pass-Gate-Transistoren. Somit kann die Dual-Port-Zelle 300 die
Funktionalität der
Dual-Port-Zelle 100 mit weniger Speicherzellenkomponenten
erreichen.
-
Eine weitere Unterscheidung zwischen
den dem Stand der Technik entsprechenden Zellen aus den Abbildungen
der 1 und 2 und der Schaltung aus 3 ist es, dass die Abbildungen
der 1 und 2 differentielle bzw. Dual-Ended-Speicherzellen
(100 und 200) veranschaulichen, während die
Abbildung aus 3 eine
Single-Ended-Speicherzelle 300 veranschaulicht. Der Inhalt
einer Speicherzelle wird für gewöhnlich durch
einen Leseverstärker
detektiert, der mit der Zelle gekoppelt ist. In der Abbildung aus 2 wird der Zustand der Speicherzelle
durch Messen der Differenz zwischen einem Signal auf der Bitline 272a und
dem komplementären
Signal gemessen, das an 272b durch die Speicherzelle 200 dargestellt
ist. Somit erfasst der Leseverstärker
den Inhalt der dem Stand der Technik entsprechenden Speicherzelle
durch Messen der potenziellen Differenz zwischen den Bitlines 272a und 272b.
Auf ähnliche Weise
wird in Bezug auf die Abbildung aus 1 der Zustand
der Speichervorrichtung durch Messen der potenziellen Differenz
zwischen den Bitlines 172a und 172b für den Port 170 oder
durch Messen der potenziellen Differenz zwischen den Bitlines 182a und 182b für den Port 180 bestimmt.
In der Abbildung aus 3 kann
der Zustand der Zelle 300 jedoch durch einen Vergleich
des an den Bitlines 372 oder 382 gemessenen Potenzials
mit einer Referenzspannung (z. B. Vcc, Vss oder Signalerde) anstatt mit anderen komplementären Signalen
bestimmt werden, die durch die Speicherzelle vorgesehen werden (z.
B. die komplementären
Bitlines 172b und 182b aus 1 oder 272b aus 2).
-
Eine Speichervorrichtung, die Single-Ended Dual-Port-Speicherzellen verwendet,
kann folgendes vorsehen: (1) die Vorteile in Bezug auf den Zugriff, die
für gewöhnlich Dual-Port-Zellen zugeordnet
sind, wie dies in der Abbildung aus 1 dargestellt
ist, und wobei gleichzeitig folgendes erreicht wird: (2) die Speicherkapazität einer
Speichervorrichtung, die mit einer Single-Port-Speicherzellenkonstruktion gemäß der Abbildung
aus 2 gestaltet ist.
-
Die vorliegende Erfindung wurde vorstehend in
Bezug auf besondere Ausführungsbeispiele
der Erfindung beschrieben. Es ist jedoch offensichtlich, dass diesbezüglich verschiedene
Modifikationen und Abänderungen
möglich
sind, ohne dabei von dem Umfang der vorliegenden Erfindung abzuweichen, der
in den Ansprüchen
ausgeführt
ist. Die Beschreibung und die Zeichnungen dienen somit ausschließlich dem
Zweck der Veranschaulichung und schränken die Erfindung nicht ein.