-
Die
vorliegende Erfindung betrifft eine Verbesserung einer Halbleiterspeichervorrichtung,
beispielsweise eines Cache-Speichers. OCHII et al. beschreiben in „An Ultralow
Power 8K × 8-Bit
Full CMOS RAM with a Six-Transistor Cell", IEEE Journal of Solid-State Circuits,
Band SC-17 (1982), Okt. Nr. 5, NY, USA, eine statische CMOS-RAM-Vorrichtung. Diese
Vorrichtung wird aus Speicherzellen hergestellt, die mit zwei Bitleitungen
verbunden sind, die weiterhin an einen Spaltenleseverstärker (COLUMN S/A)
angeschlossen sind, um die Datenausgabe aus den Speicherzellen zu
stabilisieren.
-
Ein
Verfahren für
den Betrieb eines dynamischen Direktzugriffspeichers (RAMs) ist
in EP-A-O 214 050 beschrieben. In einem Zweistufenprozess wird eine
erste Reihe einer Speicherzelle mit Hilfe von Leseverstärkern ausgelesen,
um die Daten der Speicherzellen auf den jeweiligen Bitleitungen
zu stabilisieren. In einem zweiten Zyklus werden die stabilisierten
Daten auf den Bitleitungen in eine zweite Speicherzellenreihe geschrieben.
Entsprechend US-A-4 193 127 wird eine Speicheranordnung beschrieben,
die aus bipolaren Transistoren gebildet wird. In dieser Speicheranordnung
sind zwei separate Sätze
von Bitleitungen vorhanden. Ein erster Satz von Bitleitungen wird
zum Lesen von Daten aus den Speicherzellenreihen verwendet. Mit
einem zweiten Satz vom Bitleitungen werden Daten in die Speicherzellen
geschrieben. Daten können
von einer ersten Reihe der Speicherzellen in eine zweite Reihe von Speicherzellen übertragen
werden, indem die Lesebitleitungen über eine Verstärkungsstufe
mit den Schreibbitleitungen verbunden werden und eine Ziel-Speicherzellenreihe
in einen Schreibzustand versetzt wird.
-
Neuerdings
ist ein Mikroprozessor im Allgemeinen mit einem schnellen Cache-Speicher
ausgestattet, der zwischen einer CPU und einer langsamen Haupt-Massenspeichervorrichtung
angeordnet ist, um die Gesamtleistung zu verbessern.
-
Ein
Cache-Speicher ist beispielsweise in „Computer Architecture: A
Quantitative Approach" von
John L. Hennessy und David A. Patterson, veröffentlicht von Morgan Knafmann
Publishers, Inc. (1990), genauer beschrieben.
-
Ein
Steuersystem für
einen Cache-Speicher ist im Grunde in die folgenden beiden Systeme
klassifiziert, die unterschiedliche Schreibverfahren anwenden: Ein
Write-Through-System
(Durchschreibesystem) und ein Write-Back-System (Rückschreibesystem).
In dem Write-Through-System wird sowohl in den Cache-Speicher als
auch in die Hauptspeichervorrichtung geschrieben.
-
Demgegenüber wird
beim Write-Back-System lediglich in den Cache-Speicher geschrieben, und
wenn ein Block im Cache-Speicher, in dem Daten verändert worden
sind, neu geschrieben werden soll, werden die Daten in die Hauptspeichervorrichtung
geschrieben.
-
8 veranschaulicht
einen konventionellen Cache-Speicher, wobei es sich um ein Blockdiagramm
handelt, welches eine exemplarische Konfiguration des Cache-Speichers und der
dazu gehörigen
Peripheriegeräte
zeigt.
-
In 8 bezeichnet
die Bezugsziffer 1 einen Mikroprozessor mit den für die Erfindung
wichtigen Elementen. Die Bezugsziffer 3 kennzeichnet eine CPU,
die Ziffer 4 eine externe Hauptspeichervorrichtung, die
Ziffer 5 kennzeichnet einen Bus-Controller, die Ziffer 6 bezeichnet
einen Adressbus, die Ziffer 7 einen Datenbus, die Ziffer 8 einen
Cache-Speicher und
die Ziffer 9 einen Write-Back-Puffer (Rückschreibepuffer).
-
Nun
wird eine Schreiboperation in den Cachespeicher 8 mit Hilfe
des Write-Back-Systems
mit der zuvor genannten Konfiguration beschrieben.
-
Der
Adressbus 6 überträgt ein Adressensignal,
das von der CPU 3 über
den Bus-Controller 5 an den
Cache-Speicher 8 und auch an die Hauptspeichervorrichtung 4 bereitgestellt
wird. Der Datenbus 7 überträgt Daten
zwischen dem Cache-Speicher 8 oder der Hauptspeichervorrichtung 4 und
der CPU 3. Der Bus-Controller 5 steuert den Adressbus 6 und den
Datenbus 7 zwischen dem Bus-Controller 5 und der
Hauptspeichervorrichtung 4 an. Weiterhin wird eine Mindesteinheit
an Daten, die zwischen dem Cache-Speicher 8 und
der Hauptspeichervorrichtung 4 übertragen werden; als ein Block
oder eine Zeile gekennzeichnet, und. die Größe eines Blocks ist im Allgemeinen
beispielsweise um ein ganzzahliges Vielfaches größer als die Datenbreite (Bitanzahl)
der Daten, die zwischen dem Cache-Speicher 8 und dem Datenbus 7 in
einem Stapel übertragen
werden.
-
Wenn
eine willkürliche
Adresse in den Cache-Speicher 8 geschrieben werden soll
und Daten eines Blockes (oder einer Zeile, nachfolgend angegeben
durch „Block") mit der zu schreibenden
Adresse nicht verändert
(umgeschrieben) werden, während
die Daten im Cache-Speicher 8 gehalten werden, verbleiben
dieselben Daten in der Hauptspeichervorrichtung 4, und
somit besteht keine Notwendigkeit, die Daten in die Hauptspeichervorrichtung 4 zurückzuschreiben.
Wenn andererseits die Daten des Blocks mit der Adresse, die geschrieben
werden soll, verändert
werden, während
sie in dem Cache-Speicher 8 gehalten werden, unterscheiden
sich die Daten im Block von den Daten in der Hauptspeichervorrichtung 4,
weshalb es notwendig ist, die Daten des Blocks in die Hauptspei chervorrichtung 4 zurückzuschreiben,
bevor die neuen Daten in den Cache-Speicher 8 geschrieben
werden.
-
Während die
Daten in die Hauptspeichervorrichtung 4 zurückgeschrieben
werden, muss auf eine Datenschreiboperation im Cache-Speicher 8 gewartet
werden. Da eine Datenschreiboperation in der Hauptspeichervorrichtung 4 mit
sehr geringer Geschwindigkeit abläuft, wird der Write-Back-Puffer 9 zum
temporären
Halten der Daten, die in die Hauptspeichervorrichtung 4 zurückgeschrieben
werden sollen, verwendet, so dass die Wartezeit verkürzt werden
kann.
-
Anders
ausgedrückt,
wenn es notwendig ist, dass Daten eines Blocks mit einer Adresse,
die in einer Schreiboperation in den Cache-Speicher 8 geschrieben
werden soll, in die Hauptspeichervorrichtung 4 zurückgeschrieben
werden, würden
die Daten aus dem Block zuerst aus dem Cache-Speicher 8 ausgelesen
und über
den Datenbus 7 in dem Write-Back-Puffer 9 gespeichert.
Anschließend
wird die Schreiboperation in dem Cache-Speicher ausgeführt und die im Write-Back-Puffer 9 gespeicherten
Daten werden unter Ausnutzung der freien Zeit in die langsame Hauptspeichervorrichtung 4 zurückgeschrieben.
-
Bei
der konventionellen Konfiguration ist der Write-Back-Puffer 9 allerdings
als eine externe Schaltung des Cache-Speichers 8 vorgesehen,
weshalb die Schreib-(Speicher)-Operation
in den Write-Back-Puffer 9 über den Datenbus 7 erfolgen
sollte. Die Daten, die in dem Write-Back-Puffer 9 gespeichert
werden sollen, entsprechen sämtlichen
Daten einer Mindesteinheit, die zwischen dem Cache-Speicher 8 und
der Hauptspeichervorrichtung 4 übertragen wird, konkret sämtliche
Daten des Blocks einschließlich
der zu schreibenden Adresse, wobei die Blockgröße mehrere Male die Datenbreite
der zwischen dem Cache-Speicher 8 und dem Datenbus 7 in einem
Stapel übertragenen
Daten umfasst. Um die Daten eines Blockes in dem Write-Back-Puffer 9 zu speichern,
ist es daher erforderlich, zum Lesen der Daten mehrere Zugriffe
auf den Cache-Speicher 8 vorzunehmen. Wenn beispielsweise
die Datenbreite der zwischen dem Cache-Speicher 8 und dem
Datenbus 7 in einem Stapel übertragenen Daten 32 Bits beträgt und die
Blockgröße 128 Bits
(16 Bytes), sollten wenigstens vier Zugriffe auf den Cache-Speicher 8 erfolgen,
um die Daten eines Blocks in dem Write-Back-Puffer zu speichern.
Dementsprechend kann sich der Datendurchsatz des gesamten Systems
mit dem Mikroprozessor 1 erheblich verschlechtern.
-
Ein
weiterer Nachteil besteht darin, dass aufgrund der höheren Anzahl
von Zugriffen auf den Cache-Speicher 8 die von dem Mikroprozessor 1 verbrauchte
Energie zunimmt.
-
Darüber hinaus
muss der Write-Back-Puffer 9 Daten eines großen Blocks
halten. Deshalb benötigt
der Write-Back-Puffer 9 selbst dann, wenn er die allgemein
gebräuchlichen
Flipflops und Ähnliches verwendet,
viel Platz, was zu einem größeren Chip führt.
-
Eine
Aufgabe der vorliegenden Erfindung besteht darin, eine verbesserte
Speichervorrichtung zu schaffen.
-
Diese
Aufgabe wird durch die Merkmale aus Anspruch 1 gelöst.
-
Weitere
Ausführungsformen
sind Gegenstand der abhängigen
Patentansprüche.
-
Da
die Speicherzellenanordnung des erfindungsgemäßen Speichers über eine
spezielle Speicherzellenreihe verfügt, die einen Write-Back-Puffer bildet,
können
die Daten, die in die Hauptspeichervorrichtung zurückgeschrieben
werden sollen, ohne einen Datenbus in die spezielle Speicherzellenreihe geschrieben
und dort temporär
gehalten werden.
-
In
der erfindungsgemäßen Halbleiterspeichervorrichtung
können
sämtliche
Daten, die von einer willkürlichen
Wortleitung in der Speicherzellenanordnung ausgewählt werden, über mehrere
Bitleitungspaare in einem Stapel gleichzeitig als eine Leseoperation
in die spezielle Speicherzellenreihe geschrieben werden. Die an
die Bitleitungspaare ausgegebenen Daten werden über den Spaltenschalter, die
Leseschaltung und den Ausgabepuffer extern aus der Halbleiterspeichervorrichtung
ausgegeben, allerdings ist die Anzahl der Bitleitungspaare, die
gleichzeitig von einer Wortleitung ausgewählt werden und an die die Daten
ausgegeben werden, ein Mehrfaches größer als die Bitanzahl der extern
ausgegebenen Daten. Dementsprechend können die Daten der Speicherzellen,
deren Anzahl ein Mehrfaches der Bitanzahl der extern ausgegebenen
Daten beträgt, gleichzeitig
in einem Stapel in die spezielle Speicherzellenreihe geschrieben
bzw. dort gespeichert werden.
-
Weiterhin
sind bei einer Schreiboperation in der erfindungsgemäßen speziellen
Speicherzellenreihe die Treiber-MOSFETs, die in den Speicherzellen
der speziellen Speicherzellenreihe enthalten sind, von den Bezugspotenzialleitungen
getrennt. Deshalb werden nicht die Daten der speziellen Speicherzellenreihe
an die Bitleitungen ausgegeben, sondern die Daten in der Speicherzellenanordnung,
die von der willkürlichen
Wortzeile ausgewählt
wurden. Darüber
hinaus werden Speicherknoten der Speicherzellen, die in der speziellen
Speicherzellenreihe enthalten sind, mit dem Potenzial der Bitleitungen versorgt.
Anders ausgedrückt,
wenn die spezielle Speicherzellenreihe so gesteuert wird, dass sie
in den Schreibzustand versetzt wird, können alle Daten der Speicherzellen,
die in einer Reihe ausgerichtet sind; welche von der zufälligen Wortleitung
in der Speicherzellenanordnung ausgewählt wird; über die Bitleitungspaare in
die spezielle Speicherzellenreihe geschrieben werden.
-
Zusätzlich können in
dem erfindungsgemäßen Cache-Speicher
Daten der Speicherzellen, deren Anzahl ein Mehrfaches der Datenbreite
der zwischen dem Cache-Speicher und einem Datenbus in einem Stapel übertragenen
Daten beträgt,
gleichzeitig in einem Stapel in den Write-Back-Puffer geschrieben
und dort gespeichert werden. Wenn beispielsweise Adressen im Cache-Speicher
so eingestellt werden, dass ein Block einer Wortleitung zugeordnet
wird und die Anzahl der Speicherzellen, die gleichzeitig von einer
Wortleitung ausgewählt
werden, auf die gleiche Anzahl wie die Blockgröße eingestellt wird, können alle
Daten eines Blocks gleichzeitig mit einer Datenleseoperation in
dem Write-Back-Puffer gespeichert werden.
-
Auf
diese Art und Weise kann bei Verwendung des vorliegenden Cache-Speichers
die Anzahl von Zugriffen auf den Cache-Speicher, die zum Speichern
von Daten im Write-Back-Puffer
erfolgen müssen,
erheblich verringert werden. Da zum Speichern der Daten im Write-Back-Puffer
der Datenbus nicht verwendet wird, kann weiterhin der Datendurchsatz des
gesamten Systems unter Verwendung des Mikroprozessors verbessert
und der Energieverbrauch gesenkt werden. Da der Write-Back-Puffer
zudem aus Speicherzellen aufgebaut ist, lässt sich die Chipgröße gleichzeitig
verkleinern.
-
Wenn
in dem erfindungsgemäßen Cache-Speicher
die Anzahl von Daten, die aus dem Cache-Speicher an den Datenbus
ausgegeben werden, kleiner als die Anzahl von Datenelementen in
einer Mindesteinheit (d.h. einem Blok) ist, die zwischen dem Cache-Speicher und der
Mauptspeichervorrichtung übertragen
wird, können
die Daten eines Blocks zusätzlich
mittels eines Lesevorgangs in einem Stapel in dem Write-Back-Puffer
gespeichert werden.
-
In
den beiliegenden Zeichnungen ist eine bevorzugte Form der vorliegenden
Erfindung abgebildet.
-
1 ist
ein Blockdiagramm, das eine Beispielkonfiguration eines Cache-Speichers
gemäß einer
ersten erfindungsgemäßen Ausführungsform
und die dazugehörigen
Peripheriegeräte
zeigt;
-
2 ist
ein Blockdiagramm, das den Innenaufbau des Cache-Speichers aus 1 zeigt;
-
3 ist
ein Diagramm, welches einen Beispielaufbau einer Speicherzellenanordnung
des Cache-Speichers aus 2 zeigt;
-
4 ist
ein Diagramm, das eine Beispielkonfiguration einer Speicherzelle
aus 3 zeigt;
-
5 ist
ein Diagramm, das eine Beispielkonfiguration einer Speicherzelle
zeigt, die in einer speziellen Speicherzellenreihe der ersten ertindungsgemäßen Ausführungsform
enthalten ist;
-
6 ist
ein Diagramm, das eine ungefähre Wellenform
in einer Datenschreiboperation in der Speicherzelle aus 5 zeigt;
-
7 ist
ein Diagramm, das eine Abwandlung der Konfiguration der Speicherzelle
zeigt, die in der speziellen Speicherzellenreihe enthalten ist;
und
-
8 ist
ein Blockdiagramm, das eine Beispielkonfiguration eines konventionellen
Cache-Speichers und der dazu gehörigen
Peripheriegeräte
zeigt.
-
DETAILLIERTE BESCHREIBUNG
DER ERFINDUNG
-
Nun
wird anhand der beiliegenden Zeichnungen eine bevorzugte Ausführungsform
der Erfindung beschrieben.
-
1 ist
ein Blockdiagramm, das eine Beispiellconfiguration eines Cache-Speichers
entsprechend einer ersten erfindungsgemäßen Ausführungsform und dessen dazugehörigen Peripheriegeräte zeigt.
In 1 kennzeichnet die Bezugsziffer 1 einen
Mikroprozessor, wobei nur dessen sich auf die Erfindung beziehenden
Elemente abgebildet sind.
-
Die
Bezugsziffer 3 kennzeichnet eine CPU, die Ziffer 4 eine
externe Hauptspeichervorrichtung. Der Mikroprozessor 1 enthält zusätzlich zur
CPU 3 einen Bus-Controller 5, einen Adressbus 5,
einen Datenbus 7 und einen Cache-Speicher 2. Der
Mikroprozessor 1 verfügt über den
erfindungsgemäßen Cache-Speicher
(konkret den Cache-Speicher 2) mit einem Write-Back-Puffer 20,
der in einer Cache-Speicher-Zellenanordnung 10 enthalten
ist.
-
Nun
wird eine Datenschreiboperation in den Cache-Speicher 2 mit
Hilfe des Write-Back-Systems gemäß der vorliegenden
Ausführungsform
beschrieben:
Wenn Daten an eine willkürliche Adresse des Cache-Speichers
geschrieben werden sollen, ist es genau wie bei dem konventionellen
Cache-Speicher notwendig, die Daten des Blocks mit der zu schreibenden
Adresse in die Hauptspeichervorrichtung 4 zurückzuschreiben,
bevor die neuen Daten in den Cache-Speicher 2 geschrieben
werden, falls Daten eines Blocks mit der zu schreibenden Adresse
verändert
worden sind, während
sie in dem Cache-Speicher 2 gespeichert sind. An dieser
Stelle wird im konventionellen Cache-Speicher der Write-Back-Puffer 9 zum
temporären
Halten der Daten, die in die langsame Hauptspeichervorrichtung 4 zurückgeschrieben werden
sollen, genutzt. Im Unterschied dazu enthält die Cache-Speicherzellenanordnung
(Speicherzellenanordnung) 10 des Cache-Speichers 2 nach
der vorliegenden Ausführungsform
einen Write- Back-Puffer 20.
Deshalb ist es zum Ausführen
einer Schreiboperation (Speicheroperation) in den (dem) Write-Back-Puffer 20 nicht
erforderlich, den Datenbus 7 zu verwenden, und die Schreiboperation,
konkret die Speicheroperation, kann innerhalb der Cache-Speicherzellenanordnung 10 allein
durchgeführt werden.
-
Nun
wird eine Halbleiterspeichervorrichtung beschrieben, die zur Umsetzung
dieses Cache-Speichers verwendet wird.
-
2 zeigt
eine Beispielkonfiguration des Cache-Speichers 2, der eine
Speicherzellenanordnung 10, einen Adress-Decoder 31,
einen Wortleitungstreiber 32, einen Spaltenschalter 33,
eine Leseschaltung 34 und einen Datenausgabepuffer 35 enthält. In 2 gibt
AD ein Adresssignal an, dass aus dem Adressbus 6 eingegeben
wird, und DOUT gibt die Datenausgabe aus dem Datenbus 7 an.
Zu beachten ist, dass lediglich die sich auf die Erfindung beziehenden
Schaltkreise in 2 abgebildet sind und eine Taktsteuerung,
eine Schreibsteuerung und dergleichen weggelassen worden sind. Weiterhin kennzeichnet
eine Bezugsziffer 20 eine spezielle Speicherzellenreihe
bzw. einen Write-Back-Puffer, der in der Speicherzellenanordnung 10 enthalten
ist.
-
Darüber hinaus
zeigt 3 eine Beispielskonfiguration der Cache-Speicherzellenanordnung 10,
und die Cache-Speicherzellenanordnung 10 aus 3 ist
als Matrix aus m Reihen × n
Spalten aufgebaut (wobei m und n willkürliche ganze Zahlen sind), was
jedoch keine Einschränkung
der Erfindung darstellt. In 3 kennzeichnet
die Bezugsziffer 101 mehrere Speicherzellen, die Bezugsziffer 201 mehrere
Speicherzellen, die in der speziellen Speicherzellenreihe 20 enthalten
sind, WL1 bis WLm geben Wortleitungen an, BL1 bis BLn und BL1B bis
BLnB geben Bitleitungspaare an, WBWL gibt eine Wortleitung einer
speziellen Speicherzellenreihe an, und WBWR bezeichnet eine Schreibsteuerungs-Signalleitung
zum Steuern einer Schreiboperation in der speziellen Speicherzellenreihe.
-
Nun
wird die Funktionsweise der vorliegenden Halbleiterspeichervorrichtung
beschrieben.
-
Das
Adresssignal AD wird von dem Adressdecoder 31 decodiert,
und eine von den Wortleitungen WL1 bis WLm, die dem Adresssignal
AD entspricht, wird wahlweise von dem Wortleitungstreiber 32 angesteuert,
wodurch Daten aus den Speicherzellen 101, die der ausgewählten Wortleitung
entsprechen, über
BLn und BLnB an die Bitleitungspaare BL1 und BL1B ausgegeben werden.
Konkret werden dann, wenn eine von den Wortleitungen BL1 bis BLm ausgewählt wird,
n Speicherzellen 101 gleichzeitig ausgewählt, und
die Daten werden über
BLn und BLnB an alle Bitleitungspaare BL1 und BL1B ausgegeben. Danach
werden die Daten eines Teils der Bitleitungspaare, der von dem Spaltenschalter 33 ausgewählt wurde,
von der Leseschaltung 34 so verstärkt, dass sie von dem Datenausgabepuffer 35 ausgegeben
werden. Wenn die Wortleitung WBWL der speziellen Speicherzellenreihe 20 nicht
ausgewählt wird,
ist diese Operation die gleiche wie bei einem allgemeinen Lesevorgang
eines statischen RAMs. Wie bereits erwähnt, sind die Taktsteuerung,
die Schreibsteuerung und Ähnliches
weggelassen worden.
-
Wenn
die Wortleitung WBWL der speziellen Speicherzellenreihe 20 während dieses
Lesevorgangs ausgewählt
und die Schreibsteuerungssignalleitung WBWR zu der speziellen Speicherzellenreihe 20 so
gesteuert wird, dass sie in den Schreibzustand versetzt wird, werden
die Daten, die an die Bitleitungspaare BL1 und BL1B über BLn
und BLnB ausgegeben werden, in die Speicherzellen 201 geschrieben,
die in der speziellen Speicherzellenreihe 20 enthalten
sind. Nachstehend wird die Konfiguration der Speicherzelle 201 beschrieben.
-
Da
den Bitleitungspaaren BL1 und BL1B über BLn und BLnB Daten aus
allen Speicherzellen zugeführt
werden, die einer Wortleitung entsprechen, die aus den Wortleitungen
WL1 bis WLm ausgewählt worden
sind, werden die Daten gleichzeitig in sämtliche Speicherzellen 201 geschrieben,
die in der speziellen Speicherzellenreihe 20 enthalten
sind.
-
Im
Allgemeinen wählt
der Spaltenschalter 33 einen Teil der Bitleitungspaare
aus weshalb die Anzahl n der Bitleitungspaare größer ist als die Bitanzahl der
ausgegebenen Daten DOUT. Wenn beispielsweise die Datenbreite der
ausgegebenen Daten DOUT 32 Bit beträgt, kann die Anzahl n der Bitleitungspaare 64, 128, 256,
usw. betragen. Tatsächlich wird
die Anzahl n der Bitleitungspaare unter Berücksichtigung der Verzögerungszeit
der Wortleitung und des verbrauchten Stroms in Abhängigkeit
von der Anzahl der Bitleitungspaare festgelegt, die gleichzeitig ausgewählt werden.
-
Wenn
die Daten aller Speicherzellen, die der ausgewählten Wortleitung entsprechen,
auf diese Art und Weise an eine beliebige Stelle in den ausgegebenen
Daten geschrieben werden sollen, ist es notwendig, mehrere Zugriffe
auf die Speicherzellen vorzunehmen. Durch Anwendung der Konfiguration nach
der vorliegenden Ausführungsform
können
jedoch die Daten aller Speicherzellen, die der ausgewählten Wortleitung
entsprechen, über
die Bitleitungspaare gleichzeitig und in einem Stapel mittels eines
Zugriffs in die spezielle Speicherzellenreihe 20 geschrieben
werden.
-
Darüber hinaus
können
beim Lesen der speziellen Speicherzellenreihe 20 die Daten
genauso gelesen werden wie die allgemeinen Speicherzellen 101,
wobei die Wortleitungen WL1 bis WLm nicht ausgewählt werden und die Wortleitung
WBWL der speziellen Speicherzellenreihe 20 ausgewählt wird und
wobei die Schreibsteuerungssignalleitung WBWR zu der speziellen
Speicherzellenreihe 20 so gesteuert wird, dass sie in den
Lesestatus versetzt wird.
-
Als
Nächstes
werden Beispielkonfigurationen der Speicherzellen anhand der 4 bis 6 beschrieben.
-
4 zeigt
eine Beispielkonfiguration der allgemeinen Speicherzelle 101,
wobei WL eine Wortleitung angibt, BL und BLB ein Bitleitungspaar
angeben, ML1 und ML2 Lade-MOSFETs
angeben, MD1 und MD2 Treiber-MOSFETs und MA1 und MA2 Übertragungs-MOSFETs
angeben.
-
5 zeigt
eine Beispielkonfiguration der Speicherzelle 201, die in
der speziellen Speicherzellenreihe 20 enthalten ist, und
in diesem Beispiel wird die Speicherzelle 201 von einer
statischen Speicherzelle gebildet. In 5 gibt WBWL
eine Wortleitung an und BL und BLB kennzeichnen ein Bitleitungspaar.
Die Speicherzelle 201 umfasst ein Paar Invertiervorrichtungen,
von denen eine eine Reihenverbindung eines Lade-MOSFETs (Ladevorrichtung)
MLW1 und einen Treiber-MOSFET MDW1 aufweist, und die andere eine
Reihenverbindung des anderen Lade-MOSFETs (Ladevorrichtung) MLW2
und einen anderen Treiber-MOSFET MDW2 enthält. Die Eingangsanschlüsse IW1
und IW2 und die Ausgangsanschlüsse
NW1 und NW2 dieser Invertiervorrichtungen sind überkreuz miteinander verbunden,
wodurch sie eine Kreuzverbindungsschaltung bilden. Weiterhin ist
zwischen dem Ausgangsanschluss MW1 der einen Invertiervorrichtung
und einer Bitleitung BL des Bitleitungspaares BL und BLB ein Übertragungs-MOSFET
MAW1 zwischengeschaltet, und zwischen dem Ausgangsanschluss MW2
der anderen Invertiervorrichtung und der anderen Bitleitung BLB
ist ein Übertragungs-MOSFET
MAW2 zwischengeschaltet. Diese Übertragungs-MOSFETs
MAW1 und MAW2 werden von der Wortleitung WBWL gesteuert. Darüber hinaus
gibt MWRO einen Steuer-MOSFET an, der so zu steuern ist, dass er
in einem Schreibvorgang nicht von der Schreibsteuersignalleitung
WBWR ausgewählt
wird. Der Steuer-MOSFET MWRO befindet sich zwischen einer gemeinsamen
Quelle, die sich ein Paar Treiber-MOSFETs MDW1 und MDW2 und eine
Bezugspotenzialleitung GND teilen. In diesem Fall werden aufgrund eines
Bitleitungspotenzials p-Kanal-MOSFETs als Übertragungs-MOSFETs MAW1 und
MAW2 verwendet, wie nachstehend beschrieben.
-
6 zeigt
eine ungefähre
Wellenform in einer Schreiboperation in der Speicherzelle 201 aus 5.
-
Nun
wird diese Schreiboperation beschrieben.
-
Durch
die Aktivierung (Auswahl) der Wortleitung WL der allgemeinen Speicherzellen 101 werden die
Daten der entsprechenden Speicherzellen 101 an die Bitleitungspaare
BL und BLB ausgegeben. Wenn an dieser Stelle die Wortleitung WBWL
der Speicherzellen 201 in der speziellen Speicherzellenreihe 20 deaktiviert
ist (nicht ausgewählt),
erfolgt der allgemeine Lesevorgang.
-
Demgegenüber ist
beim Schreiben von Daten in die Speicherzellen 201, die
in der speziellen Speicherzellenreihe 20 enthalten sind,
die Wortleitung WBWL der Speicherzellen 201 in der speziellen Speicherzellenreihe 20 aktiviert
(ausgewählt),
und der Steuer-MOSFET
MWRO wird so gesteuert, dass er von der Schreibsteuersignalleitung
WBWR nicht ausgewählt
wird. Da der Steuer-MOSFET MWRO nicht ausgewählt ist, werden die Datenspeicherknoten
(Ausgangsanschlüsse)
NW1 und NW2 der Speicherzellen 201 in der speziellen Speicherzellenreihe 20 von
dem Erdpotenzial getrennt. Folglich werden die in den Datenspeicherknoten
NW1 und NW2 gehaltenen Daten nicht an das Bitleitungspaar BL und BLB
ausgegeben, sondern die an das Bitleitungspaar BL und BLB aus der
allgemeinen Speicherzelle 101 ausgegebenen Daten werden
zu den Datenspeicherknoten NW1 und NW2 übertragen. Bei dieser Ausführungsform
wird das Bitleitungspaar BL und BLB auf eine Versorgungsspannung
vorgeladen, und die p-Kanal-MOSFETs werden als Übertragungs-MOSFETs MAW1 und
MAW2 verwendet, weshalb eine kleine Amplitude zwischen dem Bitleitungspaar
BL und BLB, welche nahe an der Versorgungsspannung liegt, zu den
Datenspeicherknoten NW1 und NW2 übertragen
werden kann. Anschließend
wird der Steuer-MOSFET MWRO so gesteuert, dass er ausgewählt wird,
indem die Schreibsteuerungssignalleitung WBWR genutzt wird, und
die Speicherzellen 201 führen die gleiche Operation
wie eine Leseschaltung durch, weshalb die kleine Amplitude nahe
an der Versorgungsspannung zwischen den Datenspeicherknoten NW1
und NW2 auf ein Bezugspotenzial erhöht werden kann. Somit können die
Daten genau gehalten werden (Zeitraum t2). Mit anderen Worten werden
an dieser Stelle die von den allgemeinen Speicherzellen 101 gespeicherten
Daten in die Speicherzellen 201 geschrieben. In diesem
Fall können die
Wortleitung WL der allgemeinen Speicherzellen 201 und die
Wortleitung WBWL der Speicherzellen 201 in der speziellen
Speicherzellenreihe 20 in den nicht selektierten Zustand
versetzt werden.
-
Wenn
lediglich die Wortleitung WBWL der Speicherzellen 201 in
der speziellen Speicherzellenreihe 20 ausgewählt wird,
wobei die Wortleitung WL der allgemeinen Speicherzellen 101 in
den nicht ausgewählten
Zustand versetzt ist und der Steuer-MOSFET MWRO von der Schreibsteuersignalleitung WBWR
ausgewählt
worden ist, werden weiterhin die Daten in den Speicherzellen 201,
die in der speziellen Speicherzellenreihe 20 enthalten
sind, an das Bitleitungspaar BL und BLB ausgegeben. Folglich können die
Daten genauso ausgelesen werden wie bei einer allgemeinen Operation.
-
Somit
wird die Schreibeinrichtung 200 mit der Konfiguration erstellt,
bei der die Wortleitung WBWL der Speicherzellen 201 in
der speziellen Speicherzellenreihe 20 aktiviert (ausgewählt) ist
und der Steuer-MOSFET MWRO so gesteuert ist, dass er von der Schreibsteuerungssignalleitung
WBWR nicht ausgewählt
wird.
-
Dementsprechend
können
während
der allgemeinen Leseoperation zum Lesen von in den allgemeinen Speicherzellen 101 gespeicherten
Daten für
die Bitleitungspaare die gelesenen Daten über den Betrieb der Schreibeinrichtung 200 gleichzeitig
in die Speicherzellen 201 in der speziellen Speicherzellenreihe 20 durch
die Bitleitungspaare geschrieben werden.
-
Indem,
wie bei erneuter Betrachtung von 1 erkennbar,
die spezielle Speicherzellenreihe des anhand der 2 bis 6 beschriebenen
Cache-Speichers 2 in der Halbleiterspeichervorrichtung als
Write-Back-Puffer verwendet wird, kommt die Halbleiterspeichervorrichtung
als Cache-Speicher in dem Mikroprozessor 1 aus 1 wie
folgt zum Einsatz:
Wie unter Bezugnahme auf die 2 bis 6 beschrieben
wurde, können
mit Hilfe der speziellen Speicherzellenreihe 20 als Write-Back-Puffer
die Daten sämtlicher
Speicherzellen, die der ausgewählten Wortleitung
in der Speicherzellenanordnung entsprechen, gleichzeitig und in
einem Stapel in den Write-Back-Puffer geschrieben und dort gespeichert werden.
Die Breite der Daten, die gleichzeitig geschrieben und gespeichert
werden können,
beträgt ein
Vielfaches der Datenbreite, die zwischen dem Cache-Speicher und
dem Datenbus 7 in einen Stapel übertragen wird. Deshalb werden
beispielsweise bei dieser Ausführungsform
die Adressen im Cache-Speicher 2 so eingestellt, dass ein
Block insgesamt (konkret Daten in einer Mindesteinheit, die zwischen
einen Cache-Speicher
und der Hauptspeichervorrichtung 4 übertragen wird) von derselben
Wortleitung ausgewählt
wird, und die Anzahl der Speicherzellen, die in einer Reihe ausgerichtet
sind und gleichzeitig von einer Wortleitung ausgewählt werden,
auf die gleiche Zahl gesetzt wird wie die Blockgröße (die
Anzahl der übertragenen
Daten in einer Mindesteinheit). Auf diese Art und Weise können sämtliche
Daten in einem Block durch Auswahl einer Wortleitung an die Bitleitungspaare
ausgegeben werden, und die Daten eines Blocks können insgesamt gleichzeitig
durch eine Datenleseoperation in dem Write-Back-Puffer 20 gespeichert werden.
-
Folglich
kann bei der Durchführung
der Schreiboperation (Speicheroperation) in dem Write-Back-Puffer 20 die
Anzahl von erforderlichen Zugriffen auf den Cache-Speicher 2 stark
verringert werden.
-
Wie
oben anhand der 1 bis 6 beschrieben,
können
bei der Halbleiterspeichervorrichtung nach der vorliegenden Ausführungsform
die Daten aller Speicherzellen, die in einer Reihe in der Speicherzellenanordnung 10 ausgerichtet
sind und von einer willkürlichen
Wortleitung ausgewählt
werden, durch die Bitleitungspaare in einem Stapel gleichzeitig
mit der Leseoperation in die spezielle Speicherzellenreihe 20 geschrieben
werden. Wenn die spezielle Speicherzellenreihe 20 der vorliegenden
Halbleiterspeichervorrichtung als Write-Back-Puffer und die Halbleiterspeichervorrichtung als
Cache-Speicher in dem System mit Mikroprozessor 1 und Cache-Speicher 2 verwendet
wird, lässt sich
die Anzahl der Zugriffe, die auf den Cache-Speicher 2 zwecks
Speichern von Daten in dem Write-Back-Puffer 20 zu erfolgen
hat, stark verringern. Da der Datenbus 7 bei der Speicheroperation
in dem Write-Back-Puffer 20 nicht zum Einsatz kommt, kann darüber hinaus
der Durchsatz des gesamten Systems mit Mikroprozessor 1 verbessert
werden und gleichzeitig der Energieverbrauch des Mikroprozessors 1 gesenkt
werden.
-
Weiterhin
entsteht der Write-Back-Puffer 20 aus den Speicherzellen,
so dass der Platzbedarf gleichzeitig verringert werden kann.
-
Bei
der oben beschriebenen Ausführungsform
hat die spezielle Speicherzellenreihe bzw. der Write-Back-Puffer 20 lediglich
eine Reihe Speicherzellen, nämlich
es wird lediglich eine Wortleitung WBWL genutzt. Allerdings kann
die spezielle Speicherzellenreihe bzw. der Write-Back-Puffer 20 auch mehrere
Reihen von Speicherzellen enthalten. Im vorliegenden Fall sind mehrere
Wortleitungen WBWL vorhanden, die der Reihe von Speicherzellen in
der speziellen Speicherzellenreihe bzw. dem Write-Back-Puffer 20 entsprechen,
und zur Auswahl der Wortleitungen werden der Adress-Decoder 31 und der
Wortleitungstreiber 32 verwendet. Auf diese Art und Weise
können
Daten in allen Speicherzellen in mehreren Reihen, die von mehreren
Wortleitungen WL in der Speicherzellenanordnung 10 ausgewählt werden,
in mehrere Reihen der Speicherzellen in der speziellen Speicherzellenreihe
oder dem Write-Back-Puffer 20 geschrieben und dort gespeichert werden.
-
Somit
können
selbst dann, wenn eine Blockgröße größer ist
als die Anzahl von Speicherzellen, die gleichzeitig von einer Wortleitung
ausgewählt werden,
die Reihen der Speicherzellen in der speziellen Speicherzellenreihe 20,
die in der Speicherzellenanordnung 10 enthalten sind, als
Write-Back-Puffer genutzt werden.
-
MODIFIZIERUNG
-
7 zeigt
eine Modifizierung der Speicherzelle 201, die in der speziellen
Speicherzellenreihe 20 aus 5 enthalten
ist.
-
Die
Konfiguration gemäß 7 unterscheidet
sich von der aus 5 wie folgt: Ein Paar Steuer-MOSFETs
MWR1 und MWR2, das so gesteuert sind, dass es von der Schreibsteuer-Signalleitung WBWR
nicht ausgewählt
wird, ist jeweils in Reihe zwischen den Quellen der Treiber-MOSFETs
MDW1 und MDW2 und den Bezugspontenzialleitungen GND angeschlossen.
Der Rest der Konfiguration ist identisch mit jener aus 5.
Auch die Funktionsweise und Wirkung sind vollkommen gleich.
-
In
jeder der 4, 5 und 7 wird eine
vollständige
CMOS-Speicherzelle als Speicherzelle genutzt, was keinerlei Einschränkung der
Erfindung darstellt. Hierbei kann eine Speicherzelle mit hohem Widerstand
oder eine TFT-Speicherzelle zum Einsatz kommen. Als Alternative
dazu kann eine Speicherzelle mit mehreren Anschlüssen, die zwei oder mehrere
Paare von Übertragungs-MOSFETs aufweist,
verwendet werden.