-
Die Erfindung betrifft eine digitale
Speicherschaltung, die mindestens ein Paar benachbarter Speicherbänke enthält und mit
doppelter Datenrate betreibbar ist, gemäß dem Oberbegriff des Patentanspruchs
1. Bekannte Speicherschaltungen dieser Gattung erfordern bei Integration
auf einem Halbleiterchip relativ großen Abstand zwischen den benachbarten
Bänken,
um die Lese/Schreib-Datenleitungen von den Bänken zu einem zentralen Bankmultiplexer
zu führen,
der diese Leitungen mit den zentralen Datenleitungen des Chips verbindet.
Dies ist ein Problem, weil es Grenzen für die Miniaturisierung setzt.
Mit der vorliegenden Erfindung soll dieses Problem gelöst werden.
-
Das der Erfindung zugrundeliegende
Problem, die Aufgabe der Erfindung und deren erfindungsgemäße Lösung werden
nachstehend anhand von Zeichnungen näher erläutert, in denen
-
1 ein
Beispiel einer Speicherschaltung nach dem Stand der Technik zeigt,
-
2 eine
Beispiel einer Speicherschaltung gemäß einer ersten Ausführungsform
der Erfindung zeigt, und
-
3 eine
Beispiel einer Speicherschaltung gemäß einer zweiten Ausführungsform
der Erfindung zeigt.
-
Die 1 zeigt
schematisch den Aufbau einer mit doppelter Datenrate betriebenen
RRM-Speicherschaltung (DDR-DRAM) nach dem Stand der Technik. Diese
Speicherschaltung enthält
vier Bänke,
deren jede bezeichnet ist mit der Buchstabenkombination BK und einer
nachgestellten Kombination von zwei Binärziffern, welche die Binäradresse
der betreffenden Bank darstellen. Jeder der vier Bänke BK00,
BK01, BK10 und BK11 enthält
eine große
Vielzahl binärer
Speicherzellen, die eine Matrix aus Reihen und Spalten bilden. Die
Speicherschaltung enthält
ferner eine Steuereinrichtung 120 mit einem Bankadressendecoder 21,
einem Reihenadressendecoder 22 und einem Spaltenadressendecoder 23.
-
Sowohl die einzelnen Bänke BK00
bis BK11 als auch die Reihen und Spalten innerhalb jeder Bank sind
jeweils selektiv adressierbar, um eine gewünschte Speicherzelle für das Einschreiben
oder Auslesen eines binären
Datums auszuwählen.
Die Adressierung einer Bank BK erfolgt durch Aktivierung einer zugeordneten
Bankselektions-Steuerleitung BS mittels des Bankadressendecoders 23 abhängig von
einer Bankadresse BAD. Die Adressierung einer Reihe erfolgt durch
Aktivierung einer zugeordneten Reihenselektions-Steuerleitung RS
mittels des Reihenadressendecoders 21 abhängig von
einer digitalen Reihenadresse RAD. Die Adressierung einer Spalte
erfolgt durch Aktivierung von Spaltenselektions-Steuerleitungen
SS mittels des Spaltenadressendecoders 22 abhängig von
einer Spaltenadresse SAD, um einen Datenübertragungsweg zwischen der
durch diese Adresse definierten Spalte und einer Lese/Schreib-Datenleitung
durchzuschalten.
-
An jeder Bank BK ist eine Mehrzahl
n solcher Lese/Schreib-Datenleitungen
LD vorgesehen, um Daten gleichzeitig an n verschiedenen Spalten
einer Bank BK schreiben oder lesen zu können. Die Menge der n Lese/Schreib-Datenleitungen
LD an jeder Bank BK ist aufgeteilt in zwei Teilmengen, jeweils bestehend
aus einem Bündel
n/2 Leitungen, und jedes dieser Bündel ist einer eigenen Hälfte der
betreffenden Bank fest zugeordnet. Zur Unterscheidung wird die eine
Bankhälfte
als "gerade Hälfte"
und die andere Bankhälfte
als "ungerade Hälfte"
bezeichnet. Jedes der erwähnten
Bündel
von jeweils n/2 Lese/-Schreib-Datenleitungen
ist bezeichnet mit der Buchstabenkombination LD und einer nachgestellten
Kombination dreier Binärziffern,
deren erste beiden die Adresse der betreffenden Bank BK und deren
letzte die jeweils zugeordnete Bankhälfte bezeichnet, wobei "0"
für "gerade"
steht und "1" für
"ungerade" steht.
-
Der Spaltenadressendecoder 23 ist
so ausgelegt, daß er gleichzeitig
eine Gruppe von n/2 Spalten der geraden Bankhälfte und eine Gruppe n/2 Spalten
der ungeraden Bankhälfte
adressiert. Die Adressierung und das Schreiben bzw. Lesen von Daten
an den Bänken
BK erfolgt im Takt der Perioden eines Taktsignals CLK mit der Frequenz
f. Das heißt,
innerhalb jeder Taktperiode der Dauer T = 1/f werden über die
Adressendecoder 21, 22 und 23 eine Bank,
eine Reihe sowie eine Gruppe von n/2 Spalten in jeder Hälfte dieser
Bank adressiert, und über
die Lese/Schreib-Datenleitungen LD der adressierten Bank erfolgt
das Schreiben oder Lesen von Daten gleichzeitig an den Speicherzellen,
die sich in der adressierten Reihe an den Positionen der adressierten Spalten
befinden. Die Lese/-Schreib-Datenleitungen
LD jeder Bank BK sind über
einen Bankmultiplexer 30 mit einem Bündel von n zentralen Datenleitungen
ZD verbindbar.
-
Die Eingabe bzw. Ausgabe der Daten
an der Speicherschaltung erfolgt über ein Bündel von n/2 parallelen Eingabe/Ausgabe-Leitungen EA mit
der doppelten Taktfrequenz. Hierzu sind die Eingabe/Ausgabe-Leitungen
EA an eine Eingabe/Ausgabe-Schaltung 41 angeschlossen,
die sowohl mit der steigenden als auch mit der fallenden Flanke
des Taktsignals CLK getaktet wird. Das heißt, zum gleichzeitigen Schreiben
von n Daten an einer adressierten Bank BK wird sowohl bei der steigenden
Flanke als auch bei der fallenden Flanke des Taktsignals CLK jeweils
ein Satz von n/2 parallelen Datenbits auf die n/2 parallelen Eingabe/Ausgabe-Leitungen
EA gegeben. Innerhalb einer Taktperiode T erscheinen also insgesamt
n Datenbits, aufgeteilt in zwei zeitlich aufeinanderfolgende Teilmengen,
deren eine der steigenden Taktflanke und deren andere der fallenden Taktflanke
zugeordnet ist. Diese beiden Teilmengen von jeweils n/2 Datenbits
müssen
ihrerseits den beiden LD-Bündeln
der betreffenden Bank BK eindeutig zugeordnet werden.
-
Um diese Zuordnung herzustellen,
ist ein n/2-poliger Umschalter 40 vorgesehen, der das Bündel der n/2
Eingabe/Ausgabe-Leitungen
in einem ersten Schaltzustand mit einer ersten Hälfte der n zentralen Datenleitungen
ZD verbindet und in einem zweiten Schaltzustand mit der zweiten
Hälfte
der n zentralen Datenleitungen ZD verbindet. Der Bankmultiplexer 30 ist
so beschaffen, daß er
unter Steuerung der Bankadressenbits BAD[0:1] die erste Hälfte der
Datenleitungen ZD mit demjenigen LD-Bündel verbindet, das der geraden
Hälfte der
jeweils adressierten Bank BK zugeordnet ist, und die andere Hälfte der
Datenleitungen ZD mit demjenigen LD-Bündel verbindet, das der ungeraden
Hälfte
der jeweils adressierten Bank BK zugeordnet ist.
-
Zum Zwecke der Veranschaulichung
ist der n/2-polige Umschalter 40 in der Zeichnung symbolisch
als mechanischer Umschalter dargestellt, dessen schwenkbarer Arm
als dicker Balken gezeichnet ist, der n/2 parallele Einzelarme symbolisiert.
In ähnlicher
Weise sind im Bankmultiplexer 30 drei Umschalter 31, 32 und 33 gezeichnet,
die allerdings die doppelte Anzahl von Polen haben, also n-polig
sind und somit n parallele Einzelarme beinhalten, dargestellt durch
zwei parallele dicke Balken, deren jeder n/2 parallele Einzelarme
symbolisiert. Jeder der Umschalter 40 und 31–33 ist
durch jeweils ein binäres
Steuersignal steuerbar, symbolisiert durch eine gestrichelt gezeichnete
Steuerleitung. Hat das Steuersignal den Binärwert (Logikwert} "0", dann nimmt
der vielpolige Schaltarm des betreffenden Umschalters die mit "0"
bezeichnete Position (0-Position) ein. Hat das Steuersignal den
Logikwert "1", dann nimmt der vielpolige Schaltarm des betreffenden
Umschalters die mit "1" bezeichnete Position (1-Position) ein.
-
Der Umschalter 40 wird durch
ein "Takthälfte"-Signal
CLH gesteuert, das mittels eines Signalgebers 24 in der
Steuereinrichtung 120 aus dem Taktsignal CLK abgeleitet
wird, derart daß es
vor jeder steigenden Taktflanke auf "0" geht und vor jeder fallenden
Taktflanke auf "1" geht. Der Umschalter 31 im Bankmultiplexer 30 wird
gesteuert durch das niedrigerwertige Bit BAD[0] der Bankadresse,
so daß er
in die 0-Position geht, wenn eine der beiden oberen Bänke BK00
oder BK10 adressiert ist, und in die 1-Position geht, wenn eine
der beiden unteren Bänke
BK01 oder BK11 adressiert ist. Die Umschalter 32 und 33 im
Bankmultiplexer 30 werden gesteuert durch das höherwertige
Bit BAD[1] der Bankadresse, so daß sie in die 0-Position gehen,
wenn eine der beiden linken Bänke
BK00 oder BK01 adressiert ist, und in die 1-Position gehen, wenn
eine der beiden rechten Bänke
BK10 oder BK11 adressiert ist.
-
Die gezeigte Ausbildung und Steuerung
der Umschalter
40 und
31-33 führt dazu, daß bei steigender Taktflanke
genau dasjenige LD-Bündel,
das der geraden Hälfte
der adressierten Bank BK zugeordnet ist, mit den n/2 Eingabe/Ausgabe-Leitungen
EA verbunden wird, und daß bei
fallender Taktflanke genau dasjenige LD-Bündel, das der ungeraden Hälfte der
adressierten Bank BK zugeordnet ist, mit den n/2 Eingabe/Ausgabe-Leitungen
EA verbunden wird. Somit werden Daten, die im Schreibbetrieb bei
steigender Taktflanke an den Eingabe/Ausgabe-Leitungen EA eingegeben
und somit in eine gerade Bankhälfte
geschrieben wurden, im Lesebetrieb auch nur bei steigender Taktflanke
an den Eingabe/Ausgabe-Leitungen EA ausgegeben. In gleicher Weise
werden Daten, die im Schreibbetrieb bei fallender Taktflanke an
den Eingabe/Ausgabe-Leitungen EA eingegeben und somit in eine ungerade
Bankhälfte
geschrieben wurden, im Lesebetrieb auch nur bei fallender Taktflanke
an den Eingabe/-Ausgabe-Leitungen
EA ausgegeben. Die nachstehende Tabelle 1 veranschaulicht die mit
der Schaltung nach
1 hergestellte
Zuordnung zwischen den Taktflanken, der Bankadresse, den Umschalter-Positionen
und den Bankhälften: Tabelle
1
-
Bei der Speicherschaltung nach 1 müssen dem Bankmultiplexer 30 von
jedem Paar benachbarter Bänke
jeweils vier Bündel
von jeweils n/2 Lese/Schreib-Datenleitungen LD zugeführt werden.
Bei dem oberen Bankpaar BK00, BK10 sind es die vier LD-Bündel LD00-0,
LD 00-1, LD10-0 und LD10-1, und bei dem unteren Bankpaar BK01, BK11
sind es die vier LD-Bündel
LD01-0, LD 01-1,
LD11-0 und LD11-1. In integrierten Speicherschaltungen müssen diese
Leitungsbündel
zwischen den Bänken
verlaufen, so daß relative
große
Zwischenräume
zwischen benachbarten Bänken
erforderlich sind. Dies steht dem Wunsch nach möglichst kleiner Chipfläche entgegen.
-
Aus der US 2001/0034819 A1 ist eine
digitale Speicherschaltung bekannt, die im Interleave-Betrieb die
von einer geraden Speicherbank und einer ungeraden Speicherbank
gelesenen Daten auf ein Bündel
von Ausgabeleitungen schaltet.
-
Die Aufgabe der Erfindung besteht
darin, bei einer mit mehreren Speicherbänken versehenen und mit doppelter
Datenrate zu betreibenden Speicherschaltung den Platzbedarf für die Anordnung
der Speicherbänke zu
minimieren. Diese Aufgabe wird erfindungsgemäß durch die im Patentanspruch
1 angegebenen Merkmale gelöst.
Besondere Ausführungsformen
der Erfindung sind in Unteransprüchen
gekennzeichnet.
-
Demnach wird die Erfindung realisiert
an einer digitalen Speicherschaltung, die folgendes enthält: mindestens
zwei Paare benachbarter Bänke
mit jeweils einer Vielzahl von Speicherzellen in jeder Bank, die
eine matrixförmige
Anordnung von Reihen und Spalten bilden und adressierbar sind durch
Bankadressensignale, Reihenadressensignale und Spaltenadressensignale,
wobei an jede Bank zwei Bündel
von jeweils n/2 Lese/Schreib-Datenleitungen angeschlossen sind,
die den Spalten unterschiedlicher Hälften der Bank zugeordnet sind,
um an jeder Bankhälfte
gleichzeitig n/2 Datenbits an n/2 gleichzeitig adressierten Spalten
einschreiben oder auslesen zu können;
ein Bündel
von n/2 Eingabe/Ausgabe-Leitungen zum Eingeben und Ausgeben von
n/2 Datenbits in Parallelform; eine Steuereinrichtung, die auf die
Bankadressensignale, die Reihenadressensignale, die Spaltenadressensignale
und ein Taktsignal anspricht, um während jeweils einer Periode
des Taktsignals Datenübertragunswege
zwischen gleichzeitig adressierten Speicherzellen und zugeordneten
Lese/Schreib-Datenleitungen herzustellen; eine Umschalteinrichtung,
die abhängig
vom Taktsignal steuerbar ist, um die n/2 Eingabe/Ausgabe-Leitungen
während
einer ersten Halbperiode des Taktsignals mit den der ersten Hälfte der
adressierten Speicherbank zugeordneten Lese/Schreib-Datenleitungen
zu verbinden und während der
folgenden zweiten Halbperiode des Taktsignals mit den der zweiten
Hälfte
der adressierten Speicherbank zugeordneten Lese/Schreib-Datenleitungen
zu verbinden. Erfindungsgemäß sind für jedes
Paar benachbarter Bänke
nur jeweils zwei Bündel
von jeweils n/2 Lese/Schreib-Datenleitungen vorgesehen, deren erstes
der ersten Hälfte
der einen Bank und der zweiten Hälfte
der anderen Bank zugeordnet ist und deren zweites der zweiten Hälfte der
einen Bank und der ersten Hälfte
der anderen Bank zugeordnet ist, und die Umschalteinrichtung ist
zwischen verschiedenen Schaltzuständen umsteuerbar ist, um die
Eingabe/Ausgabe-Leitungen entweder mit dem ersten Bündel oder
mit dem zweiten Bündel
der Lese/Schreib-Datenleitungen zumindest des die adressierte Bank
enthaltenden Bankpaars zu verbinden.
-
In der erfindungsgemäßen Speicherschaltung
ist also die Anzahl der Lese/Schreib-Datenleitungen für jedes
Paar benachbarter Bänke
nur halb so groß wie
beim Stand der Technik, so daß die
für die
Führung
der Lese/Schreib-Datenleitungen benötigte Chipfläche zwischen
den benachbarten Bänken
kleiner ist und die Bänke
einander näher
liegen können.
Die erlaubt eine Verkleinerung des Chips.
-
In einer ersten Ausführungsform
der Erfindung enthält
die Umschalteinrichtung einen zentralen n/2-poligen Umschalter,
der in einem ersten Schaltzustand die Eingabe/Ausgabe-Leitungen
mit einem ersten Bündel von
n/2 zentralen Datenleitungen verbindet und in einem zweiten Schaltzustand
die Eingabe/Ausgabe-Leitungen mit einem zweiten Bündel von
n/2 zentralen Datenleitungen verbindet. Ferner ist für jedes
Bankpaar einen eigens zugeordneter n-poliger Umschalter vorgesehen,
der abhängig
von der Bankadressierung derart steuerbar ist, daß er das
erste Bündel
der zentralen Datenleitungen mit dem ersten Bündel der Lese/Schreib-Datenleitungen
der jeweils adressierten Bank verbindet und gleichzeitig das zweite
Bündel
der zentralen Datenleitungen mit dem zweiten Bündel der Lese/Schreib-Datenleitungen
der jeweils adressierten Bank verbindet. Außerdem ist eine Umschalt-Steuereinrichtung
vorgesehen, die auf das Taktsignal anspricht, um den ersten Umschalter
während
der ersten Halbperiode des Taktsignals in den ersten Schaltzustand
zu versetzen und während
der folgenden zweiten Halbperiode des Taktsignals in den zweiten
Schaltzustand zu versetzen.
-
In einer zweiten, alternativen Ausführungsform
der Erfindung enthält
die Umschalteinrichtung ebenfalls einen zentralen n/2-poligen Umschalter,
der in einem ersten Schaltzustand die Eingabe/Ausgabe-Leitungen
mit einem ersten Bündel
von n/2 zentralen Datenleitungen verbindet und in einem zweiten
Schaltzustand die Eingabe/Ausgabe-Leitungen mit einem zweiten Bündel von
n/2 zentralen Datenleitungen verbindet. Eine erste Verbindungseinrichtung
ist ausgelegt zum Verbinden des ersten Bündels der zentralen Datenleitungen mit
dem ersten Bündel
der Lese/Schreib-Datenleitungen zumindest des die adressierte Bank
enthaltenden Bankpaars. Eine zweite Verbindungseinrich tung ist ausgelegt
zum Verbinden des zweiten Bündels
der zentralen Datenleitungen mit dem zweiten Bündel der Lese/-Schreib-Datenleitungen
zumindest des die adressierte Bank enthaltenden Bankpaars. Ferner
ist eine Umschalt-Steuereinrichtung vorgesehen, die auf das Taktsignal und
die Spaltenadressierung an der jeweils adressierten Bank anspricht,
um den zentralen Umschalter während
der ersten Halbperiode des Taktsignals in den ersten Schaltzustand
zu versetzen, wenn die adressierte Spalte in einer ersten Bankhälfte liegt,
und in den zweiten Zustand zu versetzen, wenn die adressierte Spalte in
einer zweiten Bankhälfte
liegt, und um den zentralen Umschalter während der zweiten Halbperiode
des Taktsignals in den jeweils anderen Schaltzustand umzuschalten.
-
Die verschiedenen Ausführungsformen
der Erfindung werden nachstehend anhand der in der 2 und 3 gezeigten
Schaltungsbeispiele näher
erläutert.
-
Die in 2 gezeigte
erfindungsgemäße Speicherschaltung
enthält
ebenso wie die Speicherschaltung nach 1 vier
Speicherbänke
BK00 bis BK11, eine Steuereinrichtung 120, einen Bankmultiplexer 30 mit drei
n-poligen Umschaltern 31, 32 und 33,
n zentrale Datenleitungen ZD, einen n/2-poligen Umschalter 40 und ein
Bündel
von n/2 Eingabe/Ausgabe-Leitungen EA. Alle diese Elemente sind in
der gleichen Weise ausgebildet und werden in der gleichen Weise
gesteuert, wie es oben in Verbindung mit der 1 beschrieben wurde. Nur die Anschlußweise der
Lese/Schreib-Datenleitungen LD an den Bänken BK und die Verbindung
dieser Leitungen mit den Umschaltern 32 und 33 ist
anders als in 1.
-
In der Speicherschaltung nach 2 ist die gerade Hälfte der
Bank BK00 an das selbe Bündel
LDa von n/2 Lese/Schreib-Datenleitungen
angeschlossen wie die ungerade Hälfte
der Bank BK10, und die ungerade Hälfte der Bank BK00 ist an das
selbe Bündel
LDb von n/2 Lese/Schreib-Datenleitungen angeschlossen wie die gerade
Hälfte
der Bank BK10. In ähnlicher
Weise ist die gerade Hälfte
der Bank BK01 an das selbe Bündel
LDc von n/2 Lese/Schreib-Datenleitungen angeschlossen wie die ungerade
Hälfte
der Bank BK11, und die ungerade Hälfte der Bank BK01 ist an das
selbe Bündel
LDd von n/2 Lese/Schreib-Datenleitungen angeschlossen wie die gerade
Hälfte
der Bank BK11.
-
Die LD-Bündel LDa, LDb, LDc und LDd
sind in derartiger Weise mit den Anschlüssen der n-poligen Umschalter
32 und
33 des
Bankmultiplexers
30 verbunden, daß sich in Kombination mit der
Steuerung der Umschalter
31,
32,
33 im
Bankmultiplexer
30 und des Umschalters
40 die
in der nachstehenden Tabelle 2 veranschaulichte Zuordnung zwischen
den Taktflanken und der Datenverbindung zum Lesen und Schreiben
an den Bänken
ergibt: Tabelle
2
-
Wie aus 2 und der Tabelle 2 ersichtlich, sind
die Eingabe/Ausgabe-Leitungen EA bei steigender Taktflanke sowohl
mit der geraden Hälfte
der jeweils adressierten Bank BK (z.B. BK00) als auch mit der ungeraden
Hälfte
der jeweiligen Nachbarbank (z.B. BK10) verbunden (z.B. über das
LD-Bündel
LDa). Bei fallender Taktflanke sind die Eingabe/Ausgabe-Leitungen
EA sowohl mit ungeraden Hälfte
der adressierten Bank (z.B. BK00) als auch mit der geraden Hälfte der
Nachbarbank (z.B. BK10) verbunden (z.B. über das LD-Bündel LDb).
An der jeweiligen Nachbarbank erfolgt aber kein Lese- oder Schreibbe trieb,
weil diese Bank nicht adressiert ist, also nicht über die
zugeordnete Bankselektions-Steuerleitung BS aktiviert ist. Somit
ist sichergestellt, daß Daten,
die im Schreibbetrieb bei steigender Taktflanke an den Eingabe/Ausgabe-Leitungen
EA eingegeben und somit in eine gerade Bankhälfte geschrieben wurden, im
Lesebetrieb auch nur bei steigender Taktflanke an den Eingabe/Ausgabe-Leitungen
EA ausgegeben werden. In gleicher Weise ist sichergestellt, daß Daten,
die im Schreibbetrieb bei fallender Taktflanke an den Eingabe/-Ausgabe-Leitungen
EA eingegeben und somit in eine ungerade Bankhälfte geschrieben wurden, im
Lesebetrieb auch nur bei fallender Taktflanke an den Eingabe/Ausgabe-Leitungen
EA ausgegeben werden.
-
Im Vergleich zu der bekannten Speicherschaltung
nach 1 ist bei der erfindungsgemäßen Ausführungsform
nach 2 die Anzahl der
dem Bankmultiplexer 30 zuzuführenden Lese/Schreib-Datenleitungen LD
auf die Hälfte
vermindert, weil jeweils zwei benachbarte Bänke gemeinsam die selben Lese/Schreib-Datenleitungen nutzen.
Diese Technik "doppelt-genutzter" Lese/Schreib-Datenleitungen vermindert
also den Abstand, der zwischen den benachbarten Bänken BK00
und BK10 und zwischen den benachbarten Bänken BK01 und BK11 eingehalten
werden muß,
um die Lese/Schreib-Datenleitungen LD unterzubringen.
-
Bei der Ausführungsform nach 2 ist der Schaltungsaufwand
und somit der Platzbedarf des Bankmultiplexers 30 genau
so groß wie
bei der Speicherschaltung nach 1.
Es ist wünschenswert,
auch diesen Platzbedarf zu vermindern, um den Abstand der Bänke BK noch
weiter verringern zu können.
Dies gelingt mit einer alternativen Ausführungsform der Erfindung, wie
sie in 3 als Beispiel
dargestellt ist.
-
Die in 3 gezeigte
Speicherschaltung unterscheidet sich von der Speicherschaltung nach 2 dadurch, daß der Bankmultiplexer 30 durch
einen wesentlich einfacheren Bankmultiplexer 50 ersetzt
ist und daß der
n/2-polige Umschalter 40 nicht durch das binäre Takthälfte-Signal
CLH sondern durch ein binäres Schaltsignal
USS gesteuert wird, welches von einer Verknüpfungsschaltung 25 in
der Steuereinrichtung 320 erzeugt wird durch logische Verknüpfung des
Takthälfte-Signals
CLH mit einer Information, die anzeigt, ob die jeweils adressierte
Spalte in geraden Hälfte
oder in der ungeraden Hälfte
der adressierten Speicherbank liegt. Alle anderen Teile der Speicherschaltung
nach 3 sind genau so
ausgebildet und werden in der gleichen Weise gesteuert wie die mit
gleichen Bezugszahlen bezeichneten Teile der Speicherschaltung nach 2.
-
Die Verknüpfungsschaltung 25 ist
so ausgelegt, daß sie
das Schaltsignal USS genau dann auf den Logikwert "0" treibt und
somit den Umschalter 40 in die 0-Position bringt, wenn
das Takthälfte-Signal
CLH den Logikwert "0" hat und eine Spalte in der geraden Bankhälfte adressiert
ist. Die Verknüpfungsschaltung 25 treibt das
Schaltsignal USS genau dann auf den Logikwert "1" und bringt somit
den Umschalter 40 in die 1-Position genau dann, wenn das Takthälfte-Signal
CLH den Logikwert "1" hat und eine Spalte in einer ungeraden Bankhälfte adressiert
ist. Die Information darüber,
ob die adressierte Spalte in der geraden Hälfte oder in der ungeraden
Hälfte
der adressierten Speicherbank liegt, also eine binäre "Gerade/-Ungerade-Information",
läßt sich unmittelbar
aus der Spaltenadresse SAD und der jeweils gültigen Bankadresse BAD ableiten.
-
Wenn die Beziehung zwischen Spaltenadresse
und Bankhälfte
bei allen Bänken
gleich ist, genügt
allein die Spaltenadresse SAD als Gerade/Ungerade-Information. Vorzugsweise
ist der Spaltenadressendecoder 23 so organisiert, daß ein einziges
Bit an einer bestimmten Bitposition "i" der Spaltenadresse SAD die Bankhälfte auswählt. Meistens
ist dieses "Bankhälftenbit"
SAD[i] das höchstwertige
Bit (MSB) oder das niedrigstwertige Bit (LSB) der Spaltenadresse.
Für das
hier beschriebene Ausführungsbeispiel
sei angenommen, daß SAD[i]
für Spalten
der geraden Bankhälfte
den Wert "0" hat und für
Spalten der ungeraden Bankhälfte
den Wert "1" hat.
-
Der Bankmultiplexer 50 enthält nur zwei
n/2-polige Umschalter 51 und 52, die beide vom
niedrigerwertigen Bit BAD[0] der Bankadresse gesteuert werden. Ist
eine der beiden Bänke
BK00, BK10 des oberen Bankpaars adressiert, dann ist BAD[0] logisch
"0" und die Umschalter 51 und 52 sind in ihrer
0-Position. Bei Adressierung einer der Bänke BK01, BK11 ist BAD[0] logisch
"1", und die Umschalter sind in ihrer 1-Position.
-
Die Umschalter
51 und
52 sind
derart zwischen den Anschlüssen
des Umschalters
40 und den Bündeln LDa, LDb, LDc und LDd
angeordnet, daß sich
im Betrieb der Speicherschaltung die in der nachstehenden Tabelle
3 aufgeführten
Zuordnungen zwischen der Bankadressierung, den Taktsignalflanken
und dem Schreiben bzw. Lesen an den Bankhälften ergibt: Tabelle
3
-
Der Tabelle 3 kann entnommen werden,
daß das
binäre
Schaltsignal USS eine logische XOR-Funktion (Exklusiv-Oder-Funktion)
des Bankhälftenbits
SAD[i] und des Takthälfte-Signals CLH
ist. Somit kann die Verknüpfungsschaltung 25 ein
simples XOR-Gatter sein, wie in 3 gezeigt.
-
Wie aus der Tabelle 3 und der 3 ersichtlich, gilt für die linken
Bänke BK00
und BK01 in jedem Bankpaar BK00, BK10 bzw. BK01, BK11 folgendes:
Nur bei steigender Taktflanke (CLH=0) sind die Eingabe/Ausgabe-Leitungen
EA mit den Lese/-Schreib-Datenleitungen
LD der geraden Hälfte
der adressierten Bank verbunden, wenn die adressierte Spalte zur
geraden Bankhälfte
gehört
(SAD[i]=0). Nur bei fallender Taktflanke (CLH=1) sind die Eingabe/Ausgabe-Leitungen
EA mit den Lese/-Schreib-Datenleitungen
LD der ungeraden Hälfte
der adressierten Bank verbunden, wenn die adressierte Spalte zur
ungeraden Bankhälfte
gehört (SAD[i]=1).
-
Für
die rechten Bänke
BK10 und BK11 jedes Bankpaars gilt das Umgekehrte: Nur bei steigender
Taktflanke (CLH=0) sind die Eingabe/Ausgabe-Leitungen EA mit den
Lese/Schreib-Datenleitungen LD der ungeraden Hälfte der adressierten Bank
verbunden, wenn die adressierte Spalte zur ungeraden Bankhälfte gehört (SAD[i]=1).
Nur bei fallender Taktflanke (CLH=1) sind die Eingabe/Ausgabe-Leitungen
EA mit den Lese/Schreib-Datenleitungen LD der geraden Hälfte der
adressierten Bank verbunden, wenn die adressierte Spalte zur geraden
Bankhälfte
gehört
(SAD[i]=0).
-
Diese Umkehrung des Betriebs der
linken Bank gegenüber
dem Betrieb der rechten Bank ist unkritisch. Trotz dieser Umkehrung
ist nämlich
sichergestellt, daß jeweils
die selben Daten, die im Schreibbetrieb bei steigender Taktflanke über die
Eingabe/Ausgabe-Leitungen EA an irgendeiner gewählten Adresse eingeschrieben
wurden, nur bei steigender Taktflanke an den Eingabe/Ausgabe-Leitungen
EA ausgegeben werden, wenn die gleiche Adresse beim Lesen gewählt wird.
In gleicher Weise ist sichergestellt, daß Daten, die im Schreibbetrieb
bei fallender Taktflanke über
die Eingabe/Ausgabe-Leitungen EA an einer irgendeiner gewählten Adresse
eingeschrieben wurden, bei Wahl der gleichen Adresse im Lesebetrieb
nur bei fallender Taktflanke über
die Eingabe/Ausgabe-Leitungen EA ausgegeben werden.
-
Die in den 2 und 3 gezeigten
Speicherschaltungen sind nur Beispiele für verschiedene Ausführungsformen,
die natürlich
auch abgewandelt können,
ohne das Prinzip der Erfindung zu verlassen. Gewünschtenfalls kann der n-polige
Umschalter 31 im Bankmultiplexer 30 nach 2 durch eine feste n-polige Verzweigung
ersetzt werden, so daß die
zentralen Datenleitungen bleibend mit den beiden anderen n-poligen Umschaltern
verbunden sind. Hierdurch sind die zentralen Datenleitungen zwar
gleichzeitig mit Bänken
aller Paare verbunden, ein Schreib- oder Lesebetrieb erfolgt jedoch
immer nur an der adressierten Bank. Allerdings ist bei dieser Variante
die Belastung der Datenquelle höher.
In ähnlicher
Weise können
die n/2-poligen Umschalter 51 und 52 in der Speicherschaltung
nach 3 durch jeweils
eine feste n/2-polige Verzweigung ersetzt werden.
-
Die Anzahl der Bankpaare kann auch
kleiner oder größer als
2 sein. Wenn nur ein einziges Bankpaar vorhanden ist, entfällt bei
der Ausführungsform
nach 2 der zentrale
n-polige Umschalter 31 sowie einer der n-poligen Umschalter 31, 32;
und die zentralen Datenleitungen ZD sind dann fest an den verbleibenden einzigen
n-poligen Umschalter angeschlossen. Bei der Ausführungsform nach 3 entfallen die beiden n/2-poligen Umschalter 51 und 52,
und die beiden Bündel
der Datenleitungen ZD sind direkt mit den beiden Bündeln der
Lese/-Schreib-Datenleitungen
des einzigen Bankpaars verbunden. Sind mehr als zwei Bankpaare vorhanden,
sind der Umschalter 31 in 3 bzw.
die Umschalter 51 und 52 in 3 zu ersetzen durch Umschalter, die mehr
als zwei Positionen einnehmen können,
um Verbindungen mit den Lese/Schreib-Datenleitungen jedes Bankpaar
individuell herstellen zu können.
-
Die mehrpoligen Umschalter sind in
den Zeichnungsfiguren sym bolisch wie mechanische Umschalter dargestellt,
um die Schaltfunktionen anschaulich zu zeigen. In Wirklichkeit handelt
es sich natürlich
um elektronische Schaltmittel, vorzugsweise unter Verwendung von
MOS-Feldeffekttransistoren.
-
- 21
- Bankadressendecoder
- 22
- Reihenadressendecoder
- 23
- Spaltenadressendecoder
- 24
- Takthälfte-Signalgeber
- 25
- XOR-Gatter
- 30
- Bankmultiplexer
- 31
- n-poliger
Umschalter
- 32
- n-poliger
Umschalter
- 33
- n-poliger
Umschalter
- 40
- n/2-poliger
Umschalter
- 41
- Eingabe/Ausgabe-Schaltung
- 50
- Bankmultiplexer
- 51
- n/2-poliger
Umschalter
- 52
- n/2-poliger
Umschalter
- BAD
- Bankadressensignal
- BK
- Speicherbank
- BS
- Bankselektions-Steuerleitung
- CLK
- Taktsignal
- CLH
- Takthälfte-Signal
- USS
- Umschalt-Steuersignal
- EA
- Eingabe/Ausgabe-Leitungen
- LD
- Lese/Schreib-Datenleitungen
- RAD
- Reihenadressensignal
- RS
- Reihenselektions-Steuerleitung
- SAD
- Spaltenadressensignal
- SS
- Spaltenselektions-Steuerleitung
- ZD
- zentrale
Datenleitungen