-
Die
vorliegende Erfindung betrifft serielle Speicher auf Siliziumchip,
und insbesondere die Schaffung einer erweiterten Speicherebene durch
Aneinanderfügen
mehrerer serieller Speicher.
-
Die
auf Siliziumchip integrierten Speicher weisen eine integrierte Speicherebene
begrenzter Größe auf,
im Allgemeinen kleiner, als der Speicherbereich, den bestimmte Anwendungen
erfordern. Beispielsweise erfordern Peripheriegeräte von Datenverarbeitungsanlagen,
wie etwa Drucker, Speicher großer
Kapazität,
um große
Datenmengen zu speichern. Aus diesem Grund ist es üblich, mehrere
Siliziumchips zu gruppieren, um erweiterte Speicherebenen zu schaffen,
die durch Aneinanderfügen
der integrierten Speicherebenen entstehen, die in jedem der Speicher
vorhanden sind. Eine derartige Gruppierung besteht im Allgemeinen
aus einem Stapel von Siliziumchips im selben Gehäuse oder einem Stapel von Gehäusen, die
jeweils einen Siliziumchip enthalten.
-
Die 1 und 2A, 2B zeigen
zwei herkömmliche
Verfahren, die die Schaffung einer erweiterten Speicherebene erlauben,
mit Speichern vom Paralleltyp bzw. seriellen Speichern.
-
In 1 sind
vier identische Speicher PMEM1, PMEM2, PMEM3, PMEM4 vom Typ mit
parallelem Ein-/Ausgang gruppiert, um eine erweiterte Speicherebene
zu erhalten.
-
Die
Speicher umfassen jeweils eine integrierte Speicherebene, die mit
N Bits adressierbar ist (nicht dargestellt). Jeder Speicher weist
N parallele Adresseneingänge
AI0-AIN_1 auf, die mit den N niederwertigen Adressenleitungen
eines Adressenbusses ADB verbunden sind. Der Adressenbus umfasst
N+2 Adressenleitungen, die für
die Adressierung der erweiterten Speicherebene erforderlich sind,
deren Umfang hier das Vierfache desjenigen der integrierten Speicherebenen
in den Siliziumchips beträgt.
Die Auswahl jedes Speichers innerhalb der erweiterten Speicherebene
erfolgt mit Hilfe eines Auswahleinganges CS („Chip Select"), der an jedem Siliziumchip
vorgesehen ist. Hierzu werden die beiden höchstwertigen Leitungen des
Adressenbusses ADB an einen Adressendecoder ADEC angelegt, der vier
Auswahlleitungen CS1, CS2, CS3, CS4 bietet, wobei jede Auswahlleitung
an den Eingang CS eines Speichers angeschlossen ist.
-
Dieses
Beispiel zeigt, dass die Schaffung einer erweiterten Speicherebene
mit Hilfe integrierter Schaltungen mit Paralleleingängen zu
einer hinderlichen Vervielfachung der Anschlussleitungen führt, damit
die Speicher innerhalb der erweiterten Speicherebene einzeln ausgewählt werden
können.
-
2A betrifft
enger das technische Gebiet der Erfindung und stellt eine erweiterte
Speicherebene dar, die aus vier identischen Speichern SMEM1, SMEM2,
SMEM3, SMEM4 mit seriellem Ein-/Ausgang oder seriellen Speichern
aufgebaut wurde, deren Aufbau schematisch in 2B dargestellt
wurde.
-
Jeder
Speicher SMEM umfasst einen seriellen Ein-/Ausgang IO, eine Eingangs-/Ausgangsschaltung IOCT,
eine Zentraleinheit UC, einen Adressenzähler ACNT von N Bits und eine
integrierte Speicherebene MA, die mit N Bits adressierbar ist (2B).
Die Schaltung IOCT ist mit dem seriellen Ein-/Ausgang IO verbunden und
wandelt in serieller Form empfangene Daten in parallele Daten um
und umgekehrt. Jeder serielle Ein-/Ausgang IO ist mit einer Datenleitung
DTW (2A) verbunden, die allen Speichern gemeinsam ist
und die gleichzeitig Befehle, Adressen und Daten in serieller Form
transportiert. Jeder Speicher weist auch zwei Eingänge IP1,
IP0 auf, deren elektrisches Potential derart eingestellt ist, dass
es jedem Speicher eine bestimmte höherwertige Adresse zuweist.
Beispielsweise liegt an den beiden Eingängen IP1, IP0 des Speichers
SMEM1 eine Versorgungsspannung Vcc an, um dem Speicher die höherwertige
Adresse „11" zuzuweisen, während an
die Eingänge
IP1, IP0 des Speichers SMEM2 die Spannung Vcc bzw. die Masse (GND)
angelegt ist, um dem Speicher die höherwertige Adresse „10" zuzuweisen, an die
Eingänge
IP1, IP0 des Speichers SMEM3 die Masse bzw. die Spannung Vcc, um
dem Speicher die höherwertige
Adresse „01" zuzuweisen und an
die Eingänge IP1,
IP0 des Speichers SMEM4 die Masse, um dem Speicher die höherwertige
Adresse „00" zuzuweisen.
-
Die
Auswahl jedes Speichers innerhalb der erweiterten Speicherebene
erfolgt dadurch, dass den Speichern Befehle der Form [OPCODE, I1,
I0, AD] geschickt werden, die einen Operationscode OPCODE umfassen,
zwei Bits I1, I0, die eine höherwertige
Adresse bilden und eine Adresse AD aus N Bits, die eine niederwertige
Adresse bilden, wobei die höherwertige
Adresse mit der Adresse AD eine erweiterte Adresse bildet. Die Zentraleinheit
jedes Speichers führt
die Operationscodes OPCODE aus, die in den empfangenen Befehlen enthalten
sind, wenn die höherwertige
Adresse I1 I0 der höherwertigen
Adresse IP1 IP0 entspricht, die dem Speicher zugewiesen ist. Im
Fall eines Lesebefehls legt der Adressenzähler ACNT die N Adressen-Bits
AN-1-A0, die im
Befehl enthalten sind, an die Speicherebene MA an, während die
Zentraleinheit ein Lesesignal an die Speicherebene anlegt.
-
Die
Patente
US 5 303 201 und
US 5 895 480 beschreiben
Speicher der oben genannten Art, in denen der Adressenzähler (ein
Adressenpuffer in
US 5 895 480 )
ein Zähler
einer erweiterten Adresse (oder ein Puffer für erweiterte Adressen) ist,
der eine erweiterte Adresse aufnehmen kann, statt nur die niederwertige
Adresse. Die Arbeitsweise dieser Speicher ist im Wesentlichen identisch
zu der des oben beschriebenen Speichers, insofern, als die vom Adressenzähler oder
-puffer empfangene höherwertige
Adresse mit der höherwertigen Adresse
verglichen wird, die dem Speicher zugewiesen ist, und insofern,
als ein Lesebefehl nicht ausgeführt wird,
wenn die in einer erweiterten Adresse enthaltene höherwertige
Adresse mit der höherwertigen
Adresse nicht übereinstimmt,
die dem Speicher zugewiesen ist.
-
Zusammenfassend
kann gesagt werden, dass das herkömmliche Verfahren zur Schaffung
einer erweiterten Speicherebene darin besteht, Speicher vorzusehen,
die in der Lage sind, sich bei Empfang eines Befehls, der eine erweiterte
Adresse enthält,
selbst zu identifizieren und den Befehl nicht auszuführen, wenn die
in der erweiterten Adresse enthaltene höherwertige Adresse nicht mit
der höherwertigen
Adresse identisch ist, die dem Speicher zugewiesen ist.
-
Dieses
Verfahren ist in Hinsicht auf die Zahl elektrischer Verbindungen
vorteilhaft, die erhaltene erweiterte Speicherebene jedoch hat keinen
Einheitscharakter, beispielsweise was die Ausführung eines fortlaufenden Lesebefehls
betrifft. So erfordert ein fortlaufendes Lesen der erweiterten Speicherebene
zunächst
die Sendung eines Befehls zum fortlaufenden Lesen seiner integrierten
Speicherebene an den ersten Speicher SMEM1, wobei ein derartiger
Befehl den Operationscode des Befehls enthält, die höherwertige Adresse 1,1 des
Speichers SMEM1 und die niederwertige Adresse AD0, die den Speicherbereich
angibt, in dem das fortlaufende Lesen in der integrierten Speicherebene
beginnen soll. Ähnliche
Befehle, die über
geeignete Kennzeichnungsbits verfügen, müssen dann an die anderen Speicher
geschickt werden, also insgesamt vier Befehle, um die gesamte erweiterte
Speicherebene zu lesen.
-
So
besteht ein allgemeiner Gegenstand der vorliegenden Erfindung darin,
ein Verfahren und eine serielle Speicherstruktur vorzusehen, die
erlauben, eine erweiterte Speicherebene zu schaffen, die einen Einheitscharakter
hat, d. h. die sich von außen
betrachtet wie ein einziger Speicher verhält, der über eine große Speicherebene
verfügt.
-
Insbesondere
ist Gegenstand der Erfindung, eine erweiterte Speicherebene vorzusehen,
die Einheitscharakter hat, was die Ausführung eines Befehls zum fortlaufenden
Lesen der Speicherebene aufweist.
-
Insbesondere
ist Gegenstand der Erfindung, eine erweiterte Speicherebene vorzusehen,
die Einheitscharakter hat, was die Ausführung besonderer Befehle betrifft,
die dazu dienen, Spezialregister zu lesen, die im Allgemeinen in
seriellen Speichern vorgesehen sind, beispielsweise Zustandsregister
oder Kennzeichnungsregister.
-
Insbesondere
ist Gegenstand der Erfindung, eine erweiterte Speicherebene vorzusehen,
die Einheitscharakter hat, was den Schutz der erweiterten Speicherebene
vor Lesen oder Schreiben betrifft, wenn ein Speicher gerade einen
Schreibvorgang ausführt.
-
Mindestens
ein Gegenstand der Erfindung wird dadurch erreicht, dass ein Speicher
auf Siliziumchip vorgesehen wird, einen seriellen Ein-/Ausgang und
eine integrierte Speicherebene umfassend, Mittel zur Speicherung
einer höherwertigen
Adresse, die dem Speicher innerhalb einer erweiterten Speicherebene
zugewiesen ist, die mit einer erweiterten Adresse adressiert werden
kann, die aus einer niederwertigen Adresse und einer höherwertigen
Adresse besteht, einen erweiterten Adressenzähler zur Speicherung einer
erweiterten Adresse, die am seriellen Ein-/Ausgang des Speichers
empfangen wurde, und Anlegen der niederwertigen Adresse an die integrierte
Speicherebene, Mittel zum Vergleichen der höherwertigen Adresse der erweiterten Adresse
mit der dem Speicher zugewiesenen höherwertigen Adresse, und Mittel
zur Verhinderung der Ausführung
eines Lese- oder Schreibbefehls der integrierten Speicherebene,
wenn die höherwertige
Adresse der erweiterten Adresse sich von der dem Speicher zugewiesenen
höherwertigen
Adresse unterscheidet, in dem die Mittel zur Verhinderung der Ausführung eines
Befehls zum Lesen der Speicherebene derart eingerichtet sind, dass
sie den Speicher das Lesen seiner integrierten Speicherebene ausführen lassen,
dabei aber verhindern, dass die in der integrierten Speicherebene
gelesenen Daten an den seriellen Ein-/Ausgang des Speichers angelegt
werden.
-
In
einer Ausführungsform
umfasst der Speicher einen Ausgangspufferschaltkreis zum Anlegen
von in der integrierten Speicherebene gelesenen Daten an den seriellen
Ein-/Ausgang des Speichers, und Mittel zur Ausgabe eines Signals
zur Sperrung der Ausgangspufferschaltung, wenn sich die höherwertige
Adresse der erweiterten Adresse von der höherwertigen Adresse unterscheidet,
die dem Speicher zugeordnet ist.
-
In
einer Ausführungsform
umfasst der Speicher eine Schaltung zur Zeitverzögerung zur zeitlichen Verzögerung des
Anlegens des Sperrsignals an die Ausgangspufferschaltung für den Fall,
dass die Ausgangspufferschaltung in dem Augenblick, in dem das Sperrsignal
in einen aktiven Wert übergeht,
dabei ist, an den seriellen Ein-/Ausgang die Bits einer Information
auszugeben, die in der integrierten Speicherebene gelesen wurde,
bevor das Sperrsignal in den aktiven Wert übergegangen ist.
-
In
einer Ausführungsform
umfasst der Speicher eine Zentraleinheit zur Ausführung eines
Befehls zum fortlaufenden Lesen der erweiterten Speicherebene unter
fortlaufendem Inkrementieren oder Dekrementieren des Zählers der
erweiterten Adresse, auch wenn die höherwertige Adresse der erweiterten
Adresse von der dem Speicher zugewiesenen höherwertigen Adresse verschieden
ist, bis zum Abbruch der Ausführung
des Befehls zum fortlaufenden Lesen.
-
In
einer Ausführungsform
ist die Zentraleinheit derart eingerichtet, dass sie während der
Ausführung eines
Befehls zum fortlaufenden Lesen die integrierte Speicherebene fortlaufend
liest, auch wenn die höherwertige
Adresse der erweiterten Adresse von der dem Speicher zugewiesenen
höherwertigen
Adresse verschieden ist.
-
In
einer Ausführungsform
umfasst der Speicher Mittel zum Speichern einer Information über eine
Anzahl K an Bits, die die höherwertige
Adresse der erweiterten Adresse umfasst, wobei K eine Variable ist,
die zwischen 0 und Kmax liegt, wobei Kmax ungleich Null ist, einen
Zähler
der erweiterten Adresse, N+Kmax Zählzellen umfassend, wobei N
die Anzahl an Bits der niederwertigen Adresse ist, und Mittel zur
Speicherung von Kmax Be zugs-Bits, von denen K Bezugsbits die dem
Speicher zugeordnete höherwertige
Adresse darstellen.
-
In
einer Ausführungsform
umfasst der Speicher ein Konfigurationsregister zur Speicherung
von Kmax Flagbits, die in Anzahl und Stellenwert den Bits entsprechen,
die die höherwertige
Adresse der erweiterten Adresse maximal enthalten kann, wobei jedes
Flagbit einen bestimmten Wahrheitswert aufweist, wenn sich ein Bit
entsprechenden Stellenwertes in der höherwertigen Adresse der erweiterten
Adresse befindet, derart, dass die Anzahl an Flagbits, die den bestimmten
Wahrheitswert haben, die Anzahl an Bits definiert, die in der höherwertigen
Adresse der erweiterten Adresse anwesend sind.
-
In
einer Ausführungsform
umfasst der Speicher ein Konfigurationsregister zur Speicherung
einer codierten Binärzahl,
die eine Angabe über
die Größe der erweiterten
Speicherebene macht, und eine Decodierschaltung, die aufgrund der
codierten Binärzahl
Kmax Flagbits liefert, die in Anzahl und Stellenwert den Bits entsprechen,
die die höherwertige
Adresse der erweiterten Adresse maximal enthalten kann, wobei jedes Flagbit
einen bestimmten Wahrheitswert aufweist, wenn das Bit entsprechenden
Stellenwerts in der höherwertigen
Adresse der erweiterten Adresse anwesend ist, derart, dass die Anzahl
an Flagbits mit dem bestimmten Wahrheitswert die Anzahl an Bits
definiert, die in der höherwertigen
Adresse der erweiterten Adresse anwesend sind.
-
In
einer Ausführungsform
umfasst der Speicher Mittel zum Deaktivieren der Zählerzellen
des Zählers der
erweiterten Adresse in Abhängigkeit
von der Information über
die Anzahl an Bits, die die höherwertige Adresse
der erweiterten Adresse aufweist, derart, dass der Zähler nur
N+K aktive Zählerzellen
umfasst.
-
In
einer Ausführungsform
umfassen die Mittel zum Vergleichen der höherwertigen Adresse der erweiterten
Adresse mit der dem Speicher zugewiesenen höherwertigen Adresse einen Vergleicher
und Mittel zur Sperrung der Eingänge
des Vergleichers in Abhängigkeit
von der Information über
die Anzahl an Bits, die die höherwertige
Adresse einer erweiterten Adresse umfasst, derart, dass der Vergleicher
nur K aktive Eingänge umfasst.
-
In
einer Ausführungsform
umfasst der Speicher einen Verfügbar/Besetzt-Kontakt,
der von außen
auf ein bestimmtes elektrisches Potential gesetzt werden kann, und
innere Mittel, um den Verfügbar/Besetzt-Kontakt
während
eines Lösch-
oder Programmiervorganges der integrierten Speicherebene auf das
bestimmte elektrische Potential zu setzen, wobei der Speicher dafür eingerichtet
ist, einen Lese- oder Schreibbefehl nicht auszuführen, wenn das elektrische
Potential des Verfügbar/Besetzt-Kontaktes
das bestimmte Potential aufweist.
-
In
einer Ausführungsform
umfasst der Speicher spezifische Kontakte, die erlauben, Bezugsbits
zu konfigurieren, die die dem Speicher zugewiesene höherwertige
Adresse darstellen, indem bestimmte elektrische Potentiale an die
spezifischen Kontakte angelegt werden.
-
Die
vorliegende Erfindung betrifft ebenfalls eine erweiterte Speicherebene,
eine Kombination von mindestens zwei erfindungsgemäßen Speichern
umfassend, in der die seriellen Ein-/Ausgänge jedes Speichers miteinander
verbunden sind.
-
Die
vorliegende Erfindung betrifft ebenfalls eine erweiterte Speicherebene,
eine Kombination von mindestens zwei erfindungsgemäßen Speichern
umfassend, in der die seriellen Ein-/Ausgänge jedes Speichers miteinander verbunden
sind und in der die Verfügbar/Besetzt-Kontakte jedes Speichers
miteinander verbunden sind.
-
Die
vorliegende Erfindung betrifft ebenfalls ein Verfahren zur Herstellung
einer erweiterten Speicherebene, die mit einer erweiterten Adresse,
eine niederwertige Adresse und eine höherwertige Adresse umfassend,
adressiert werden kann, wobei die erweiterte Speicherebene mehrere
serielle Speicher umfasst, die auf einem Silizium-Chip integriert
sind, wobei jeder Speicher einen seriellen Ein-/Ausgang umfasst
und eine integrierte Speicherebene, die mit der niederwertigen Adresse
adressiert werden kann, wobei die seriellen Ein-/Ausgänge der
Speicher miteinander verbunden sind, wobei das Verfahren die Schritte
der Bereitstellung der Mittel zur Speicherung einer höherwertigen
Adresse in jedem Speicher, die dem Speicher innerhalb der erweiterten
Speicherebene zugewiesen ist, umfasst, der Bereitstellung eines
Zählers
der erweiterten Adresse in jedem Speicher zur Speicherung einer
erweiterten Adresse, der Zuweisung einer höherwertigen Adresse zu jedem
Speicher, des Erteilens eines Lese- oder Schreibbefehls, der eine
erweiterte Adresse umfasst, an die Speicher, und der Verhinderung
der Ausführung
eines Lese- oder Schreibbefehls in jedem Speicher mit einer zugewiesenen
höherwertigen
Adresse, die von der höherwertigen
Adresse verschieden ist, die sich im Lese- oder Schreibbefehl befindet,
und in dem der Schritt, der darin besteht, die Ausführung eines
Lesebefehls in einem Speicher zu verhindern, die Tatsache umfasst,
den Speicher seine integrierte Speicherebene lesen zu lassen, dabei
aber zu verhindern, dass die in der integrierten Ebene gelesenen
Daten an den seriellen Ein-/Ausgang des Speichers angelegt werden.
-
In
einer Ausführungsform
umfasst das Verfahren die Schritte der Bereitstellung eines Verfügbar/Besetzt- Kontaktes in jedem
Speicher, der Bereitstellung von Mitteln in jedem Speicher, um den
Verfügbar/Besetzt-Kontakt während eines
Lösch-
oder Programmiervorganges der integrierten Speicherebene auf ein
bestimmtes elektrisches Potential zu setzen, des Verbindens der
Verfügbar/Besetzt-Kontakte
der Speicher miteinander, und der Konfiguration jedes Speichers
derart, dass er einen Lese- oder Schreibbefehl nicht ausführt, wenn
das elektrische Potential des Verfügbar/Besetzt-Kontaktes das
bestimmte Potential aufweist.
-
In
einer Ausführungsform
umfasst jeder Speicher eine Ausgangspufferschaltung, um am seriellen Ein-/Ausgang
des Speichers Daten zu liefern, die in der integrierten Speicherebene
gelesen wurden, und in dem der Schritt, der darin besteht, in der
integrierten Speicherebene gelesene Daten daran zu hindern, an den Ein-/Ausgang
des Speichers angelegt zu werden, das Anlegen eines Sperrsignals
an die Ausgangspufferschaltung des Speichers umfasst.
-
Die
vorliegende Erfindung betrifft ebenfalls ein Verfahren für die Herstellung
einer erweiterten Speicherebene, die einen Befehl zum fortlaufenden
Lesen der Speicherebene ausführen
kann, die Schritte der Erteilung eines erweiterten Lesebefehls,
der eine erweiterte Adresse für
den Beginn des Lesens enthält,
an die Speicher umfassend und ein fortlaufendes Inkrementieren oder
Dekrementieren des Zählers
der erweiterten Adresse jedes Speichers, auch wenn die höherwertigen
Adressbits der erweiterten Adresse von der dem Speicher zugewiesenen
höherwertigen
Adresse verschieden sind, bis zum Abbruch der Ausführung des
Befehls zum fortlaufenden Lesen.
-
In
einer Ausführungsform
wird die integrierte Speicherebene jedes Speichers während der
Ausführung eines
Be fehls zum fortlaufenden Lesen fortlaufend gelesen, auch wenn die
höherwertige
Adresse der erweiterten Adresse von der dem Speicher zugewiesenen
höherwertigen
Adresse verschieden ist.
-
In
einer Ausführungsform
umfasst das Verfahren die Bereitstellung von Mitteln zum Speichern
einer Information über
die Zahl K von höherwertigen
Bits, die die höherwertige
Adresse der erweiterten Adresse maximal umfassen kann, wobei K eine
Variable ist, die zwischen 0 und Kmax beträgt, wobei Kmax ungleich Null ist.
-
Die
vorliegende Erfindung betrifft ebenfalls ein Verfahren zur Herstellung
einer erweiterten Speicherebene variabler Größe, die mit Hilfe einer erweiterten
Adresse von zwischen N Bits und N+Kmax Bits adressiert werden kann,
ohne die Architektur der Speicher zu ändern, die die erweiterte Speicherebene
bilden, wobei N die Anzahl an Bits der niederwertigen Adresse ist,
wobei das Verfahren Schritte umfasst, die in der Bereitstellung
eines Zählers
der erweiterten Adresse, N+Kmax Zählzellen in jedem Speicher
bestehen, die Bereitstellung von Mitteln zur Speicherung von Kmax
Bezugs-Bits in jedem Speicher, und das Zuweisen zu jedem Speicher
von mindestens K Bezugsbits die eine höherwertige Adresse bilden.
-
In
einer Ausführungsform
umfasst das Verfahren das Deaktivieren von Zählerzellen des Zählers der erweiterten
Adresse in Abhängigkeit
von der Information über
die Zahl K, derart, dass der Zähler
nur N+K aktive Zählerzellen
umfasst.
-
In
einer Ausführungsform
werden nur K Bezugsbits mit K Bits der höherwertigen Adresse verglichen, die
sich im Zähler
befinden, ohne die Kmax – K
anderen Adressbits zu berücksichtigen,
die sich im Zähler
befinden.
-
In
einer Ausführungsform
wird die Information über
die Zahl K den Speichern in Form einer codierten Binärzahl geliefert,
die eine Angabe über
die Größe der erweiterten
Speicherebene macht.
-
In
einer Ausführungsform
umfasst das Verfahren das Bereitstellen spezifischer Kontakte in
jedem Speicher und das Konfigurieren der jedem Speicher zugewiesenen
höherwertigen
Adresse durch Anlegen bestimmter elektrischer Potentiale an die
spezifischen Kontakte.
-
Diese
Ziele, Merkmale und Vorteile der vorliegenden Erfindung, sowie weitere,
werden in der folgenden nicht einschränkenden Beschreibung eines
erfindungsgemäßen Speichers
detaillierter unter Bezugnahme auf die entsprechenden beigefügten Zeichnungen
beschrieben. Es zeigen:
-
1,
oben beschrieben, eine erweiterte Speicherebene, die Parallelspeicher
umfasst,
-
2A, 2B,
oben beschrieben, eine erweiterte Speicherebene, die herkömmliche
serielle Speicher umfasst, bzw. die Struktur dieser seriellen Speicher,
-
3 eine
erweiterte Speicherebene, die erfindungsgemäße serielle Speicher umfasst,
und schematisch die Struktur eines dieser seriellen Speicher,
-
4 als
Blockdiagramm ein Ausführungsbeispiel
eines erfindungsgemäßen seriellen
Speichers,
-
5A ein
erstes Ausführungsbeispiel
eines Zählers
der erweiterten Adresse, der in 4 als Block dargestellt
ist,
-
5B ein
erstes Ausführungsbeispiel
eines Vergleichers, der in 4 als Block
dargestellt ist,
-
6A ein
zweites Ausführungsbeispiel
des Zählers
der erweiterten Adresse, der in 4 als Block dargestellt
ist,
-
6B ein
zweites Ausführungsbeispiel
des Vergleichers, der in 4 als Block dargestellt ist,
-
7A bis 7J Steuerungsdiagramme,
die Zählsignale
und Datensignale und die Arbeitsweise einer erfindungsgemäßen erweiterten
Speicherebene in Reaktion auf einen Befehl zum fortlaufenden Lesen
darstellen.
-
3 stellt
eine erweiterte Speicherebene dar, die vier erfindungsgemäße serielle
Speicher MEM1, MEM2, MEM3, MEM4 umfasst, die auf Siliziumchips integriert
sind. Jeder Speicher umfasst herkömmlicherweise einen seriellen
Ein-/Ausgangs-Anschluss IOP (In/Out Pad), eine Ein-/Ausgangs-Schaltung
IOCT, die die Umwandlung der in serieller Form empfangenen Daten
in Paralleldaten und umgekehrt sicherstellt, eine integrierte Speicherebene
MA, die mit N Bits adressierbar ist, und eine Zentraleinheit UC
mit verdrahteter Logik oder mit Mikroprozessor. Wir gehen hier und
im Folgenden zur Vereinfachung der Darstellung davon aus, dass die
integrierten Speicherebenen jedes Speichers identisch sind und dass
die Anzahl N an Adressenbits, die zum Lesen oder Schreiben von Daten
in jeder der integrierten Speicherebenen erforderlich ist, für jeden
Speicher identisch ist.
-
Die
Anschlüsse
IOP jedes der Speicher MEM1 bis MEM4 sind mit einer gemeinsamen
Datenleitung DTW verbunden. Diese Datenleitung gehört zu einem
seriellen Datenbus, der Steuerleitungen umfassen kann, wie Takt-,
Versorgungs-, Masseleitungen etc., die hier nicht dargestellt wurden.
-
Erfindungsgemäß umfassen
die Lese- oder Schreibbefehle, die über die Leitung DTW an die
Speicher gesandt werden, einen Operationscode OPCODE, eine Adresse
EAD und gegebenenfalls eine Information DT (in den Datenschreibbefehlen),
d. h.:
[OPCODE, BAD] (Lesen)
oder
[OPCODE, BAD, DT]
(Schreiben)
-
Die
Adresse EAD ist eine erweiterte Adresse, die eine Zahl von N+K Adressenbits
umfasst, die größer ist,
als die Anzahl N der Adressenbits, die die Adressierung der integrierten
Speicherebene jedes Speichers erfordert, wobei N+K mindestens gleich
der Anzahl an Adressenbits ist, die für die Adressierung der erweiterten
Speicherebene als Ganzes erforderlich ist. Die erweiterte Adresse
BAD umfasst so N niederwertige Adressenbits AN-1A0, die eine niederwertige Adresse ADL bilden,
die dazu dient, einen Speicherbereich in einer der integrierten
Speicherebenen auszuwählen,
im Allgemeinen ein Binärwort,
und K höherwertige
Adressenbits AN+K-1, AN+K-2,
... AN, die eine höherwertige Adresse ADH bilden,
die erlaubt, einen der Speicher zu bezeichnen.
-
Im
dargestellten Beispiel ist K gleich 2, da die erweiterte Speicherebene
vier serielle Speicher umfasst. Die Befehle weisen dadurch Adressen
zu N+2 Bits auf. Die Adresse ADL umfasst niederwertige Adressenbits AN-1-A0 und die Adresse
ADH 2 höherwertige
Adressenbits AN+1, AN.
-
Jeder
Speicher umfasst einen Zähler
der erweiterten Adresse EACNT von N+K Bits, hier N+2 Bits, einen
Vergleicher COMP mit 2 mal K Eingängen (2·K), hier 4 Eingängen, und
ein Mittel zur Speicherung einer höherwertigen Bezugsadresse RADH,
die dem Speicher zugewiesen ist, die die Adresse des Speichers innerhalb
der erweiterten Speicherebene darstellt, genauer gesagt die Adresse
der integrierten Speicherebene des Speichers innerhalb der erweiterten
Speicherebene.
-
Dieses
Speichermittel ist beispielsweise ein Indexregister IDXREG, das
K Bezugsbits RK-1, RK-2,
... R0 umfasst, hier zwei Bits R1, R0, die
der Adresse RADH entsprechen. Beispielsweise umfasst das Register
IDXREG des Speichers MEM1 die Bezugsbits „00", das Register IDXREG des Speichers
MEM2 die Bezugsbits „01", das Register IDXREG
des Speichers MEM3 die Bezugsbits „10" und das Register IDXREG des Speichers
MEM4 die Bezugsbits „11".
-
Wenn
ein Befehl, der eine erweiterte Adresse enthält, durch die Datenleitung
DTW geschickt wird, empfängt
jeder Speicher den Befehl und legt den Operationscode OPCODE an
seine Zentraleinheit UC an und speichert die erweiterte Adresse
EAD in seinem Zähler
der erweiterten Adresse EACNT. Die von den N ersten Bits AN-1-A0 der im Zähler gespeicherten
Adresse EAD gebildete Adresse ADL wird an die Speicherebene MA angelegt,
während
die Adresse ADH, die aus den K höherwertigen
Adressbits der Adresse EAD besteht, hier den Bits AN+1,
AN, an K erste Eingänge des Vergleichers COMP,
hier zwei Eingänge,
angelegt wird. Dieser empfängt
an K anderen Eingängen,
hier zwei Eingängen,
die Bezugsbits RK-1-R0,
hier die Bits R1, R0.
-
Der
Ausgang des Vergleichers gibt ein Signal ADMATCH aus, das beispielsweise
1 beträgt,
wenn die höherwertigen
Bits der empfangenen erweiterten Adresse mit der höherwertigen
Adresse identisch sind, die dem Speicher zugewiesen ist, d. h. identisch
mit den Bezugsbits. Das Signal ADMATCH wird verwendet, um die Speicher,
die von der erweiterten Adresse nicht betroffen sind, daran zu hindern,
den empfangenen Befehl auszuführen,
sei es ein Lesebefehl oder ein Schreibbefehl (wenn die integrierten
Speicherebenen für
Schreibzugriff zugänglich
sind).
-
Die
Nichtausführung
eines Schreibbefehls wird herkömmlicherweise
durch Sperrung der Ausführung des
Operationscodes durch die Zentraleinheit UC erreicht, was Schreibbefehle
betrifft.
-
Erfindungsgemäß wird die
Nichtausführung
eines Lesebefehls erreicht, indem die Zentraleinheit jedes Speichers
den Lesebefehl ausführen
gelassen wird, während
verhindert wird, dass die gelesenen Daten an den seriellen Ein-/Ausgangs-Anschluss
IOP angelegt werden. Dieses Verfahren erlaubt vorteilhafterweise,
ein fortlaufendes Lesen der erweiterten Speicherebene sicherzustellen,
denn es erlaubt, die Zentraleinheit jedes Speichers fortlaufend
ihre integrierte Speicherebene lesen zu lassen und die gelesenen
Daten auszugeben, wenn das Signal ADMATCH auf 1 geht.
-
In
einem anderen Aspekt der Erfindung umfasst jeder Speicher einen
verfügbar/besetzt-Kontakt
RBP (Ready/Busy Pad) und eine Schaltung RBCT zum Betrieb des Kontaktes
RBP. Die Kontakte RBP der Speicher sind miteinander verbunden und
mit Hilfe eines Pull-Up-Widerstandes
RPU hohen Betrages auf ein hohes Potential, hier eine Versorgungsspannung
Vcc, voreingestellt. Der Widerstand RPU befindet sich hier außerhalb der
Speicher, kann sich jedoch ebenso innerhalb jedes Speichers befinden,
d. h. in die Siliziumchips integriert werden.
-
Die
Schaltung RBCT empfängt
ein Signal IWIP (Internal Write In Progress), das von der Zentraleinheit ausgegeben
wird, und liefert der Zentraleinheit ein Signal EWIP (External Write
In Progress). Das Signal IWIP wird von der Zentraleinheit während eines
Schreibvorganges der integrierten Speicherebene (Löschen und/oder
Programmieren) auf 1 gesetzt. Wenn das Signal IWIP auf 1 übergeht,
setzt die Schaltung RBCT den Kontakt RBP auf ein niedriges Potential,
beispielsweise das Potential der Masse. Außerdem setzt die Schaltung
RBCT das Signal EWIP auf 1, wenn sie das niedrige Potential, hier
das Massepotential, am Kontakt RBP feststellt, auch wenn das Signal
IWIP gleich Null ist. Die Tatsache, dass das Signal EWIP auf 1 liegt,
während das
Signal IWIP gleich 0 ist, bedeutet, dass das Massenpotential am
Kontakt RBP von einem anderen Speicher angelegt wurde. Das Signal
EWIP erlaubt so der Zentraleinheit zu wissen, dass ein Speicher
der erweiterten Speicherebene dabei ist, in seiner eigenen Speicherebene
einen Schreibvorgang auszuführen.
Die Zentraleinheit lehnt dann die Ausführung eines Lese- oder Schreibbefehls
ab, der eventuell am Ein-/Ausgangs-Anschluss IOP empfangen worden
sein kann, solange der laufende Schreibvorgang nicht beendet ist.
-
Wenn
ein Speicher einen Schreibvorgang ausführt, werden so die anderen
Speicher davon durch den Übergang
ihres Kontaktes RBP auf 0 informiert, der zum Übergang des Signals EWIP auf
1 führt.
Die Zentraleinheiten dieser Speicher lehnen dann ab, Lese- oder
Schreibbefehle auszuführen.
Dieser Aspekt der Erfindung erlaubt es, der erweiterten Speicherebene
bei Schreibzugriff einen Einheitscharakter zu verleihen, denn sie
verhält
sich dann nach außen
wie ein einzelner Speicher. Ein einzelner Speicher kann nämlich nicht
gleichzeitig einen Schreibvorgang und einen Lesevorgang in seiner
Speicherebene ausführen.
Ebenso kann ein einzelner Speicher nicht gleichzeitig zwei Schreibvorgänge in zwei
verschiedenen Bereichen seiner Speicherebene ausführen. Es
handelt sich also um das Verhalten eines einzelnen Speichers, der
in der erweiterten Speicherebene geschaffen wird, die als ein unteilbares
Ganzes angesehen wird.
-
In
Hinsicht auf die 4 wird jetzt eine Ausführungsform
eines seriellen Speichers im Einzelnen beschrie ben, die die oben
erwähnten
verschiedenen Aspekte der Erfindung ausführt, sowie andere, die im Folgenden
beschrieben werden.
-
Allgemeine Aspekte des Speichers
-
Der
in 4 dargestellte Speicher MEM umfasst die weiter
oben beschriebenen Elemente, nämlich:
- – den
Anschluss IOP, der den seriellen Ein-/Ausgang des Speichers bildet,
- – den
Verfügbar/Besetzt-Kontakt
RBP,
- – die
Eingangs-/Ausgangsschaltung IOCT,
- – die
Betriebsschaltung RBCT des Kontaktes RBP,
- – die
Zentraleinheit UC,
- – den
Zähler
der erweiterten Adresse EACNT,
- – die
mit N Bits adressierbare Speicherebene MA,
- – das
Indexregister IDXREG, und
- – den
Vergleicher COMP.
-
Der
Speicher umfasst ebenfalls:
- – einen
internen Datenbus 5 vom Paralleltyp,
- – einen
Massenanschluss GNDP,
- – einen
Taktanschluss CKP, der ein Taktsignal CK0 empfängt,
- – einen
Taktgeber CKGEN,
- – eine
Synchronisationsschaltung SYNCCT, und
- – zwei
Spezialregister, hier ein Zustandsregister STREG (Status Register)
und ein Kennzeichnungsregister IDREG.
-
Die
Eingangs-/Ausgangsschaltung umfasst einen Eingangspuffer INBUF mit
einem seriellen Eingang und Ausgang, ein Schieberegister INSREG
mit einem seriellen Eingang und einem parallelen Ausgang, einen Ausgangspuffer
OUTBUF mit einem seriellen Eingang und Ausgang und ein Schieberegister
OUTSREG mit parallelem Eingang und seriellem Ausgang. Der Eingang
des Puffers INBUF ist mit dem Anschluss IOP verbunden und sein serieller
Ausgang mit dem seriellen Eingang des Registers INSREG, dessen Ausgang
mit dem Datenbus 5 verbunden ist. Der Eingang des Registers
OUTSREG ist mit dem Datenbus 5 verbunden. Sein Ausgang
ist mit dem Eingang des Puffers OUTBUF verbunden, dessen Ausgang
mit dem Anschluss IOP verbunden ist.
-
Die
Speicherebene MA umfasst eine Matrix aus Speicherzellen FGTMTX,
beispielsweise eine Matrix aus Floating-Gate-Transistoren, einen Zeilen- und
Spaltendecoder XYDEC, eine Programmierschaltung LATCHCT, die Hochspannungs-Latches
umfasst, deren Eingänge
mit dem Bus 5 verbunden sind, und eine Leseschaltung SENSECT,
die Leseverstärker
umfasst, deren Ausgänge
mit dem Bus 5 verbunden sind.
-
Die
Spezialregister STREG und IDREG sind für Lesezugriff und Schreibzugriff über den
Datenbus 5 zugänglich.
Das Register IDREG umfasst beispielsweise eine eindeutige Kennung
ID des Siliziumchips. Das Statusregister STREG umfasst beispielsweise
Schreibschutz-Bits P0, P1, ... Pi für Teile der Speicherebene, ein
allgemeines Schreibschutzbit WEN (Write Enable), sowie ein Bit WP,
das den laufenden Wert des Signals EWIP angibt, und ganz allgemein
alle für
die Verwaltung eines Speichers nützlichen
Daten, die dem Fachmann bekannt sind.
-
Die
Zentraleinheit steuert die verschiedenen Elemente des Speichers,
wobei die Steuerleitungen zwischen der Zentraleinheit und diesen
verschiedenen Elementen schematisch durch eine unterbrochene Linie dargestellt
sind. Die Zentraleinheit steuert insbesondere die verschiedenen
Register für
Lese- und/oder Schreibzugriff, steuert die Speicherebene MA und
ihre Bestandteile für
Lese- und Schreibzugriff, steuert den Zähler der erweiterten Adresse
EACNT zum Laden der erweiterten Adresse und/oder zur Inkrementierung oder
Dekrementierung des Zählers
bei der Ausführung
von Befehlen zum fortlaufenden Lesen, steuert das Laden der Schieberegister
etc.
-
Der
Taktgeber CKGEN liefert ein Taktsignal CK1, das ein Teiler des Signals
CK0 ist. Das Signal CK0 ist ein Bittaktsignal, während das Signal CK1 ein Worttaktsignal
ist, dessen Frequenz der Frequenz des Taktsignals CK0 geteilt durch
die Anzahl an Bits ist, die die Binärworte umfassen, die sich in
der Speicherebene befinden. Das Taktsignal CK1 taktet die Vorgänge, die
Binärworte
betreffen, insbesondere zum Lesen oder Schreiben der Speicherebene,
zur Inkrementierung oder Dekrementierung des Adressenzählers EACNT,
zum Laden eines Binärwortes
ins Register OUTSREG oder zum Lesen eines Binärwortes ins Register INSREG, etc.
Das Taktsignal CK0 taktet die Vorgänge, die die Übertragung
oder den Empfang von Bits in serieller Form betreffen, insbesondere
das Verschieben von Bits in den Schieberegistern OUTSREG, INSREG
und das Takten der Puffer OUTBUF, INBUF.
-
Hierunter
werden Aspekte der Erfindung beschrieben, die sich auf die Ausführung von
Befehlen beziehen, die eine erweiterte Adresse enthalten.
-
Ausführung
von Befehlen, die eine erweiterte Adresse enthalten
-
Die
in serieller Form am Anschluss IOP empfangenen Operationscodes OPCODE
mit den erweiterten Adressen EAD werden durch das Register INSREG
in parallele Daten umgewandelt, die an den Bus 5 angelegt
werden, und werden an einen Eingang der Zentraleinheit und einen
Eingang des Zählers
der erweiterten Adresse EACNT angelegt. Wenn eine Adresse EAD im
Adressenzähler
EACNT gespeichert wurde, leitet dieser die N ersten Adressenbits
AN-1-A0 (Adresse
ADL) an den Dekoder XYDEC weiter und die höherwertigen Adressenbits AN+2, AN+1, AN (Adresse ADH) an die ersten Eingänge des
Vergleichers COMP.
-
Das
Indexregister IDXREG enthält
hier drei Bezugsbits R2, R1, R0, die die höherwertige Bezugsadresse RADH
bilden, die dem Speicher innerhalb der erweiterten Speicherebene
zugewiesen ist. Diese erweiterte Speicherebene kann so maximal mit
N+3 Bits (K = 3) adressiert werden, und ihr Umfang kann hier nicht größer sein,
als das Achtfache des Umfangs der integrierten Speicherebene MA.
So umfasst hier eine erweiterte Adresse maximal 3 höherwertige
Adressenbits AN+2, AN+1,
AN.
-
Die
Bits R2, R1, R0 werden an zweite Eingänge des Vergleichers COMP angelegt,
dessen Ausgang das oben beschriebene Signal ADMATCH ausgibt.
-
Das
Signal ADMATCH wird an die Zentraleinheit angelegt, um die Ausführung von
Schreibbefehlen zu sperren. Das Signal ADMATCH wird ebenfalls an
einen Eingang eines NDR-Gatters 10 mit zwei Eingängen angelegt,
dessen Ausgang ein Signal SHZ (Set High Z) liefert. Das Signal SHZ
wird über
die Synchronisationsschaltung SYNCCT an einen Steuereingang des
Ausgangspuffers OUTBUF angelegt. Der Ausgangspuffer OUTBUF ist ein
Puffer mit drei Zuständen,
der einen Ausgangszustand auf 0 (Masse), auf 1 (Vcc) oder auf hoher
Impedanz (HZ) aufweisen kann. Wenn das Signal SHZ auf 1 liegt, legt
der Puffer OUTBUF seinen Ausgang auf hohe Impedanz. Die Synchronisationsschaltung
SYNCCT ist im Allgemeinen für
das Signal SHZ durchlässig,
außer
in einem hierunter beschriebenen besonderen Fall.
-
Wenn
also die höherwertigen
Bits in einer in einem Befehl empfangenen erweiterten Adresse nicht
den Bezugsbits entsprechen, geht das Signal ADMATCH auf 0 und das
Signal SHZ auf 1, was den Ausgang des Puffers OUTBUF in den Zustand
hoher Impedanz übergehen
lässt.
Die an den seriellen Eingang des Puffers angelegten Daten werden
also nicht mehr an den Eingangs-/Ausgangsanschluss IOP übertragen,
was erlaubt, einen Lesebefehl nicht auszuführen. Die Zentraleinheit ist
ihrerseits dafür
eingerichtet, den Lesebefehl auszuführen, dem erfindungsgemäßen Verfahren
zur Nichtausführung
eines Lesebefehls entsprechend, demzufolge die Daten gelesen werden,
ihre Ausgabe aber blockiert wird.
-
Die
Schaltung SYNCCT wird gegenüber
dem Signal SHZ undurchlässig,
wenn von der Zentraleinheit ein Signal LORD zum Laden eines Binärwortes
an das Schieberegister OUTSREG angelegt wird. Ab diesem Zeitpunkt
zählt die
Schaltung SYNCCT eine Anzahl an Taktzyklen CK0, die der Anzahl an
Bits in einem Binärwort
entspricht, d. h. einen Taktzyklus CK1, und wird wieder durchlässig, wenn
der Zyklus zur Aussendung des Binärwortes beendet ist. Wenn so
das Signal SHZ auf 1 übergeht,
während
ein Binärwort
gerade Bit für
Bit an den Ausgangsanschluss IOP gesandt wird, tritt die Sperrung
(auf hohe Impedanz Setzen) des Ausgangspuffers erst ein, nachdem
das gesamte Wort geschickt wurde.
-
Im
Folgenden werden die Aspekte der Erfindung beschrieben, die sich
auf den Leseschutz der erweiterten Speicherebene während eines
Schreibvorganges beziehen.
-
Leseschutz der erweiterten
Speicherebene während
eines Schreibvorganges
-
Die
Schaltung RBCT umfasst einen Transistorschalter T1, hier vom Typ
NMOS, ein GR-Gatter 20 und ein Invertiergatter 21.
Die Drain- und Source-Anschlüsse
des Transistors T1 sind mit dem Kontakt RBP bzw. der Masse verbunden,
während
das Gitter des Transistors durch das Signal IWIP gesteuert wird,
das von der Zentraleinheit ausgegeben wird. Das Gatter 21 ist
als Eingang an den Kontakt RBP angeschlossen. Das Gatter 20 empfängt an einem
Eingang das Signal IWIP, an einem anderen Eingang den Ausgang des
Gatters 21 und gibt an seinem Ausgang des Signal EWIP aus.
-
Wie
oben erwähnt,
wird das Signal IWIP auf 1 gesetzt, wenn die Zentraleinheit einen
Lösch-
und/oder Programmiervorgang in der Speicherebene ausführt. Der
Kontakt RBP, der durch den oben beschriebenen Widerstand RPU auf
die Spannung Vcc vorgespannt ist, wird dann durch den Transistor
T1 auf 0 (Masse) gesetzt. Außerdem
geht, wenn der Kontakt RBP von einem anderen Speicher auf 0 gesetzt
wird (da die Kontakte RBP miteinander verbunden sind), das Signal
EWIP auf 1 über,
auch wenn das Signal IWIP auf 0 liegt. Wenn so IWIP = 0 und EWIP
= 1, weiß die
Zentraleinheit, dass ein anderer Speicher gerade schreibt und aus
den oben genannten Gründen
die Ausführung
eines Lese- oder Schreibbefehls ablehnt.
-
Im
Folgenden werden jetzt Aspekte der Erfindung beschrieben, die erlauben,
einen seriellen Speicher zu schaffen, der konfigurierbar ist und
sich in eine erweiterte Speicherebene variabler Größe einfügen kann.
-
Schaffung eines konfigurierbaren
Speichers
-
Der
Speicher umfasst ein Konfigurationsregister CNFREG und einen Konfigurationsdecoder
CNFDEC. Das Register CNFREG enthält
eine Information über
die Größe der erweiterten
Speicherebene, in die der Speicher eingefügt ist. Diese Information ist
hier die Zahl K, die mit Hilfe zweier Bits K1, K0 binärcodiert
ist und zwischen K = 0 und K = Kmax = 3 variieren kann. Die Größe der erweiterten
Speicherebene ist so gleich dem 2K-fachen
der Größe der integrierten
Speicherebene MA, was einer Zahl von Speicherstellen (Binärworten)
gleich 2K·2N oder
2N+K entspricht.
-
Der
Ausgang des Registers CNFREG wird an den Konfigurations-Decoder
CNFDEC angelegt, der von K ausgehend, drei Flagbits F2, F1, F0 ausgibt,
die die Anzahl an höherwertigen
Adressenbits angeben, die die erweiterte Adresse der erweiterten
Speicherebene umfasst.
-
Dabei
ist zu beachten, dass die Flagbits F2, F1, F0 auch direkt im Register
CNFREG gespeichert sein können,
wobei die Speicherung des Parameters K in binärer Form hier vorgesehen ist,
um die Größe des Registers
CNFREG zu verringern.
-
Die
Beziehung zwischen der Zahl K und den Flagbits F2, F1, F0 wird in
der folgenden Tabelle 1 beschrieben. Der Dezimalwert von K ist in
der ersten Spalte der Tabelle angegeben. der Binärwert von K (die Bits K1, K0)
ist in der zweiten Spalte der Tabelle angegeben. Die Größe der erweiterten
Speicherebene ist in der dritten Spalte der Tabelle angegeben. Die
vierte, fünfte
und sechste Spalte beschreiben jeweils die Werte der Flagbits F2,
F1, F0 für
jeden Wert von K. Die siebte Spalte gibt die höherwertigen Adressenbits (Bits,
die über die
N ersten Bits hinausgehen), die die erweiterte Adresse umfasst,
für jeden
Wert von K an. Die letzte Spalte gibt den Maximalwert MSBmax der
höherwertigen
Adresse in der erweiterten Speicherebene für jeden Wert von K an.
-
Aus
der Tabelle 1 ist zu ersehen, dass ein Flagbit F2, F1, F0 auf 1
liegt, wenn das entsprechende höherwertige
Bit in der erweiterten Adresse verwendet wird. So ist K ein programmierbarer
Wert, der zwischen 0 und Kmax, hier mit Kmax = 3, variieren kann,
und das Konfigurationsregister erlaubt es, den Speicher in eine erweiterte
Speicherebene einzufügen,
die 2 (K = 1), 4 (K = 2) oder 8 (K = 3) Speicher umfasst, die über eine mit
N Bits adressierbare integrierte Speicherebene verfügen, oder
ihn in eine erweiterte Verbundspeicherebene (bestehend aus Speichern
unterschiedlicher Größen) einzufügen, die
mit N+K Bits adressierbar ist.
-
Ebenfalls
ist der Tabelle 1 zu entnehmen, dass das Flagbit F0 nur gleich 0
ist, wenn K gleich 0 ist. Mit anderen Worten bedeutet die Tatsache,
dass das Flagbit F0 gleich 0 ist, dass der Speicher nicht in eine
erweiterte Speicherebene eingefügt
ist und dass es keine höherwertige
Adresse gibt. Der Speicher arbeitet dann in „herkömmlicher" Weise, d. h., indem er alle Befehle
ausführt,
ohne dass seine Arbeitsweise vom Vergleich der höherwertigen Adressenbits mit
den Bezugsbits R2, R1, R0 abhinge. Tabelle 1
K(dezimal) | K1
K0 | 2K·2N | F2 | F1 | F0 | MSB | MSBmax |
0 | 00 | 2N | 0 | 0 | 0 | – | – |
1 | 01 | 2·2N | 0 | 0 | 1 | AN | 1 |
2 | 10 | 4·2N | 0 | 1 | 1 | AN+1 AN | 11 |
3 | 11 | 8·2N | 1 | 1 | 1 | AN+2 AN+1 AN | 111 |
-
Um
den Mechanismus des Vergleichs der höherwertigen Adressen mit den
Bezugsbits zu verhindern, wenn F0 = 0, wird das Flagbit F0 an den
Eingang eines Invertiergatters 11 angelegt, dessen Ausgang
ein Signal ADMATCH' ausgibt.
Das Signal ADMATCH' wird
an den zweiten Eingang des Gatters 10 angelegt. Wenn also
F0 = 0, liegt ADMATCH' auf
1 und wird das Signal SHZ auf 0 gesetzt, so dass der Puffer OUTBUF
nicht in den Zustand hoher Impedanz versetzt werden kann.
-
Um
andererseits die Arbeitsweise des Speichers an die Anzahl K an höherwertigen
Bits anzupassen, die die erweiterte Adresse enthält, weist der Zähler der
erwei terten Adresse und/oder der Vergleicher eine variable Konfiguration
auf, die von K abhängt.
-
Die 5A und 5B stellen
eine erste Ausführungsform
EACNT1 des Zählers
der erweiterten Adresse dar bzw. eine erste Ausführungsform COMP1 des Vergleichers.
In dieser ersten Ausführungsform
dieser Teile enthält
der Adressenzähler
eine variable Anzahl an aktiven Zählzellen, die Funktion von
K ist, während
der Vergleicher eine Anzahl an Vergleichseingängen umfasst, die feststeht
und gleich Kmax ist.
-
Insbesondere
umfasst der Adressenzähler
EACNT1 einen Basis-Zählblock
BCNT, der N Zählzellen von
jeweils 1 Bit (nicht dargestellt) umfasst und drei zusätzliche
Zählzellen
C1, C2, C3 von jeweils 1 Bit, die außerhalb des Basis-Zählblockes
angeordnet sind. Die verschiedenen Zählzellen werden durch das Taktsignal CK1
getaktet.
-
Der
Basis-Zählblock
BCNT empfängt
am Eingang die Adressenbits AN-1-A0, also die Adresse ADL, und gibt die Adressenbits
AN-1'-A0' aus.
Die Adressenbits AN-1'-A0' sind in dem Fall
eines Lese- oder Schreibbefehls mit fester Adresse den am Eingang
empfangenen Adressenbits gleich oder bilden eine mit dem Takt des
Taktsignals CK1 inkrementierte oder dekrementierte Adresse im Fall
eines Befehls zum fortlaufenden Lesen. Der Zählblock BCNT liefert ein Übertragsbit
C (Carry), wenn er den Übertragswert
(alle Adressenbits auf 1) erreicht und zum Zeitpunkt, wo er auf
0 zurückgeht.
-
Die
Zählzellen
C1, C2, C3 umfassen jeweils einen Eingang In zum Empfang eines höherwertigen Adressenbits,
AN, AN+1 bzw. AN+2, die zusammen die Adresse ADH bilden,
und einen Ausgang, der Adressenbits AN', AN+1 bzw.
AN+2' ausgibt.
Jede Zählzelle
C1, C2, C3 umfasst einen Ein gang CIN, um das Bit C der vorangehenden
Stelle zu empfangen, und einen Ausgang COUT, um das Bit C der folgenden
Stelle auszugeben. Der Eingang CIN der Zelle C1 empfängt das
Bit C, das der Block BCNT über
ein UND-Gatter geliefert
hat, dessen anderer Eingang das Flagbit F0 empfängt. Der Eingang CIN der Zelle
C2 empfängt
das Bit C, das von der Zelle C1 über
ein UND-Gleid geliefert wurde, dessen anderer Eingang das Flagbit
F1 empfängt.
Der Eingang CIN der Zelle C3 empfängt das Bit C, das von der
Zelle C2 über
ein UND-Gatter geliefert wird, dessen anderer Eingang das Flagbit
F2 empfängt.
Wenn die Flagbits F0, F1, F2 auf 1 liegen (K = Kmax = 3), sind die
drei Zellen aktiv und in Kaskadenschaltung an den Block BCNT angeschlossen.
Die Adressenbits AN', AN+1', AN+2' sind dann den am
Eingang im Fall eines Lese- oder Schreibbefehls mit fester Adresse
empfangenen Adressenbits gleich oder bilden eine mit dem Takt des
Taktsignals CK1 inkrementierte oder dekrementierte höherwertige Adresse
im Fall eines Befehls zum fortlaufenden Lesen. Wenn das Flagbit
F2 auf 0 liegt und die Flagbits F1, F0 auf 1 (K = 2), ist die Zelle
C3 durch das entsprechende UND-Gatter vom übrigen Zähler getrennt. Ihr Ausgang
bleibt während
eines Zyklus fortlaufenden Lesens auf 0 und ist nicht an der Festlegung
des Signals ADMATCH beteiligt, das der Vergleicher liefert. Wenn
die Flagbits F2, F1 auf 0 liegen und das Flagbit F0 auf 1 (K = 1),
sind die Zellen C3, C2 vom übrigen
Adressenzähler
getrennt und ihre Ausgänge
bleiben während
eines Zyklus fortlaufenden Lesens auf 0 und sind nicht an der Festlegung
des Signals ADMATCH beteiligt, das der Vergleicher liefert. Wenn
schließlich
die Flagbits F0 bis F2 alle auf 0 liegen, sind die drei Zellen abgetrennt
und der Adressenzähler
umfasst nur den Basiszähler
BCNT, der einem Adressenzähler
eines herkömmlichen
Speichers entspricht. Der Speicher arbeitet in diesem Fall in der „herkömmli chen" Betriebsart: Das
Signal ADMATCH' liegt
auf 1 und setzt das Signal SHZ auf 0, wie oben beschrieben.
-
Der
in 5B dargestellte Vergleicher COMP1 umfasst die
Antivalenz-Gatter 30, 31, 32 und ein NDR-Gatter 33.
Das Gatter 30 empfängt
am Eingang das Bezugsbit R0 und das höherwertige Adressenbit AN'. Das
Gatter 31 empfängt
am Eingang das Bezugsbit R1 und das höherwertige Adressenbit AN+1'.
Das Gatter 32 empfängt
am Eingang das Bezugsbit R2 und das höherwertige Adressenbit AN+2'.
Das Gatter 33 weist drei Eingänge auf, die an die Ausgänge der
Gatter 30, 31, 32 angeschlossen sind
und liefert das Signal ADMATCH.
-
Die 6A und 6B stellen
eine zweite Ausführungsform
EACNT2 des Zählers
der erweiterten Adresse dar bzw. eine zweite Ausführungsform
COMP2 des Vergleichers. In dieser zweiten Ausführungsform enthält der Adressenzähler EACNT2
eine invariable Anzahl N+Kmax an aktiven Zählzellen. Der Zähler EACNT2
entspricht dem Zähler
EACNT1, in dem die UND-Gatter, die erlauben, die Summenübertragsbits
C zu filtern, weggelassen und durch direkte Verbindungen ersetzt.
-
Der
Vergleicher COMP2 weist dieselben Gatter auf, wie der oben beschriebene
Vergleicher COMP1, die mit denselben Bezugszeichen gekennzeichnet
sind. Er weist außerdem
UND-Gatter 34, 35, 36 auf. Das Gatter 34 empfängt am Eingang
den Ausgang des Gatters 30 und das Flagbit F0. Sein Ausgang
ist an den ersten Eingang des Gatters 33 angelegt. Das
Gatter 35 empfängt
am Eingang den Ausgang des Gatters 31 und das Flagbit F1.
Sein Ausgang ist an den zweiten Eingang des Gatters 33 angelegt.
Das Gatter 36 empfängt
am Eingang den Ausgang des Gatters 32 und das Flagbit F2.
Sein Ausgang ist an den dritten Eingang des Gatters 33 angelegt.
Auf diese Weise werden die Eingänge
des Vergleichers durch die Flag bits F0, F1, F2 gesperrt, wenn diese
auf 0 liegen. Insbesondere sind die den Eingängen des Gatters 30 entsprechenden
Eingänge
des Vergleichers gesperrt, wenn das Flagbit F0 auf 0 liegt. Die
den Eingängen
der Gatter 30, 31 entsprechenden Eingänge des
Vergleichers sind gesperrt, wenn die Flagbits F0, F1 auf 0 liegen.
Schließlich
sind alle Eingänge
des Vergleichers gesperrt, wenn alle Flagbits F0, F1, F2 auf 0 liegen,
wobei dann das Signal ADMATCH auf 1 gesetzt wird. Diese Ausführungsform
des Vergleichers erlaubt es, die Gatter 10, 11 wegzulassen,
da das Signal ADMATCH direkt an die Schaltung SYNCCT angelegt werden
kann.
-
Schließlich weist
der erfindungsgemäße serielle
Speicher eine programmierbare Konfiguration auf, die ihm erlaubt,
wie ein herkömmlicher
serieller Speicher zu arbeiten oder in eine erweiterte Speicherebene
eingefügt
zu werden, deren Größe das Doppelte,
Vierfache oder Achtfache der Größe seiner
eigenen Speicherebene beträgt.
-
Die
Programmierung des Konfigurationsregisters CNFREG erfolgt vorzugsweise
Software-gesteuert mit Hilfe eines besonderen Befehls, den die Zentraleinheit
ausführt.
Diese Programmierung kann vorgesehen werden, wenn alle Speicher
miteinander verbunden sind, denn der Betrag von K ist für alle Speicher
derselbe. Die Programmierung des Indexregisters IDXREG muss dagegen
vor der Verbindung der Speicher sichergestellt werden, denn jeder
Speicher muss eine individuelle höherwertige Adresse empfangen
und die Ausführung
eines individuellen Schreibbefehls des Registers IDXREG kann nicht
erfolgen, solange ihm keine höherwertige
Adresse eingegeben worden ist. Das Register IDXREG kann beispielsweise
bei der Herstellung der Siliziumchips programmiert werden, die dann
partieweise klassifiziert werden, wobei jede Partie einer höherwertigen
Adresse entspricht. Diese Lösung
widerspricht jedoch der angestrebten Flexibilität. Erfindungsgemäß besteht
eine vorteilhaftere Lösung
darin, elektrische Anschlüsse
vorzusehen, hier drei Anschlüsse
IDXP0, IDXP1, IDXP2, die mit entsprechenden Eingängen des Registers IDXREG verbunden
sind, die den Bezugsbits R0, R1 bzw. R2 entsprechen. Die Anschlüsse IDXP0,
IDXP1, IDXP2 sind über
einen individuellen oder gemeinsamen Pull-Down-Widerstand RPD großen Betrages
mit der Masse verbunden. Wenn der Siliziumchip in einem Gehäuse angeordnet
wird, wird jeder Anschluss IDXP0, IDXP1, IDXP2 mit der Spannung
Vcc verbunden, um das entsprechende Bezugsbit auf 1 zu programmieren,
oder wird nicht angeschlossen, um das entsprechende Bezugsbit auf
0 zu programmieren. Wenn keiner der drei Anschlüsse IDXP0, IDXP1, IDXP2 mit der
Spannung Vcc verbunden ist, liegen alle Bezugsbits auf 0 und der
Speicher arbeitet in „herkömmlicher" Weise. Verschiedene
Verbesserungen dieses statischen Programmierprinzips durch Verdrahtung
können
vom Fachmann vorgesehen werden. Insbesondere kann eine Steuerschaltung
vorgesehen werden, die erlaubt, den Widerstand RPD von den Anschlüssen IDXP0,
IDXP1, IDXP2 zu trennen, wenn das Register IDXREG programmiert ist,
um zu vermeiden, dass ein Verluststrom dauernd durch den Widerstand
RPD fließt.
-
Die
folgende Tabelle 2 gibt die verschiedenen höherwertigen Adressen an, die
in Abhängigkeit
vom ins Register CNFREG geladenen Wert von K (K1 K0) ins Register
IDXREG geladen werden können. Tabelle 2
CNFREG
(K1 K0) | IDXREG
(R2 R1 R0) |
00 | 000 |
01 | 000
oder 001 |
10 | von
000 bis 011 |
11 | von
000 bis 111 |
-
Im
Folgenden wird jetzt ein Aspekt der Erfindung beschrieben, der sich
auf das Lesen eines der Spezialregister bezieht. Ziel der Erfindung
ist hier, dafür
zu sorgen, dass in dem Fall, dass ein Lesebefehl eines derartigen
Registers an eine Gesamtheit von Speichern angelegt wird, ein einziger
Speicher den Befehl ausführt
und den Inhalt des Spezialregisters auf den seriellen Bus legt,
um Antwortkollisionen zu vermeiden.
-
Lesen von Spezialregistern
-
Der
Speicher umfasst einen Master-Speicherdecoder MSTDEC, der ein Signal
MASTER (6) ausgibt. Wenn das Signal
MASTER auf 1 liegt, wird der Speicher innerhalb der erweiterten
Speicherebene als Master-Speicher angesehen, während die anderen Speicher
als Slave betrachtet werden. Da nur ein einziger Speicher innerhalb
derselben erweiterten Speicherebene Master sein kann, darf das Signal
MASTER nur für einen
einzigen Speicher auf 1 liegen. Erfindungsgemäß besteht eine unter anderen
Lösungen
darin, den Masterstatus demjenigen zuzuweisen, der im Register IDXREG
eine höherwertige
Adresse empfängt,
die die höchstwertige
der höherwertigen
Adressen der erweiterten Speicherebene ist. Hierzu empfängt der
Decoder MSTDEC am Eingang die Bezugsbits R0, R1, R2 und die Bits
K1, K0, die die Zahl K bilden. Die hierunter folgende Tabelle 3
beschreibt die logische Funktion zur Erzeugung des Signals MASTER,
die vom Decoder MSTDEC ausgeführt
wird. Wie ihr zu entnehmen ist, liegt für jeden Wert von K das Signal
MASTER auf 1, wenn die höherwertige
Adresse R2 R1 R0 dem in der erweiterten Speicherebene höchstmöglichen
Wert entspricht. Wenn K = 0, liegt das Signal MASTER immer auf 1,
da der Speicher in der „herkömmlichen" Betriebsart arbeitet.
-
Erfindungsgemäß ist die
Zentraleinheit UC dafür
konfiguriert, einen Lesebefehl eines der Spezialregister STREG,
IDREG nur unter der Bedingung auszuführen, dass das Signal MASTER
auf 1 liegt. Das Register wird dann über den internen Datenbus
5 und
die Schaltung IOCT auf den Ausgang IOP des Speichers ausgegeben.
So weist die erweiterte Speicherebene nach außen einen Einheitscharakter
auf, was das Lesen der Spezialregister betrifft, denn es ist immer
der Master-Speicher, der auf die Lesebefehle antwortet. Mit anderen Worten
geschieht alles so, als würde
die erweiterte Speicherebene nur ein Exemplar jedes der Spezialregister aufweisen,
da diejenigen der Slavespeicher nie gelesen werden und von außen unzugänglich bleiben. Tabelle 3
K(dezimal) | CNFREG
(K1 K0) | IDXREG
(R2 R1 R0) | MASTER |
0 | 00 | 000 | 1 |
1 | 01 | 001 | 1 |
1 | 01 | 000 | 0 |
2 | 10 | 011 | 1 |
2 | 10 | von
000 bis 010 | 0 |
3 | 11 | 111 | 1 |
3 | 11 | von
000 bis 110 | 0 |
-
Die
Spezialregister der Slavespeicher müssen, auch wenn sie für Lesezugriff
nicht zugänglich
sind, trotzdem programmierbar sein, da sie auf die Arbeitsweise
dieser Speicher Einfluss nehmen können. So dienen erfindungsgemäß die Schreibschutzbits
P0 bis Pi eher dem Schreibschutz von Bruchteilen der erweiterten Speicherebene,
als dem Schreibschutz von Bruchteilen der integrierten Speicherebene
des Speichers, in dem sie eingetragen sind. Jedes dieser Bits betrifft
also Speicher, insbesondere diejenigen, die gegebenenfalls Teil des
Bruchteils der erweiterten Speicherebene sind, die schreib geschützt werden
muss. Ebenso wird das Bit WEN als gemeinsames Bit zum allgemeinen
Schreibschutz der erweiterten Speicherebene verwendet, und nicht
zum Schreibschutz eines bestimmten Speichers.
-
So
werden im Gegensatz zu Lesebefehlen Schreibbefehle der Spezialregister
von allen Speichern, Master oder Slawe, ausgeführt. So enthalten die Spezialregister
genau denselben Wert in jedem der Speicher der erweiterten Speicherebene
und bilden jeweils ein Äquivalent
zu einem einzigen gemeinsamen Register.
-
Eine
Variante dieses Aspektes der Erfindung besteht darin, den Status
eines Master-Speichers dem Speicher mit der kleinsten höherwertigen
Adresse, d. h. allen Bezugsbits gleich 0, zuzuweisen. In diesem
Fall ist es nicht erforderlich, dass der Speicher seine Bezugsbits
mit den Bits K0, K1 der Zahl K vergleicht, um zu wissen, ob er Master-Speicher
ist, oder nicht.
-
Fortlaufendes Lesen der erweiterten
Speicherebene
-
Die
Ausführung
eines Befehls zum fortlaufenden Lesen wird jetzt im Einzelnen beschrieben.
Ein derartiger Befehl enthält
eine erweiterte Adresse EAD0 des Lesebeginns, d. h. eine Adresse
aus N+K Bits:
[CODE (fortlaufendes_Lesen), EAD0]
-
Wenn
ein derartiger Befehl zum fortlaufenden Lesen empfangen wird, inkrementieren
oder dekrementieren die entsprechenden Zentraleinheiten der Speicher
laufend und gleichzeitig ihre Zähler
der erweiterten Adresse und jede gibt die angeforderten Daten aus,
wenn die höherwertigen
Bits des Zählers
der erweiterten Adresse gleich den Bezugsbits werden, die sich im
Indexregister befinden. Da die jeweiligen Zähler der erweiterten Adresse
der verschiedenen Speicher zu jedem Zeitpunkt denselben Wert der
erweiterten Adresse enthalten, wechseln sich die Speicher automatisch
ab, um den Inhalt ihrer jeweiligen integrierten Speicherebenen auf
den seriellen Bus auszugeben, was von außen einem einzigen Speicher
entspricht, der eine integrierte Speicherebene großen Umfangs
umfasst, der ein fortlaufendes Lesen seiner Speicherebene ausführen würde.
-
Zur
besseren Vorstellbarkeit zeigen die 7A bis 7J die
Ausführung
eines Befehls zum fortlaufenden Lesen der erweiterten Speicherebene,
die in 3 dargestellt ist, bestehend aus den Speichern
MEM1 bis MEM4. Die 7A, 7C, 7E, 7G zeigen
Zählwerte
CNTVALI, CNTVAL2, CNTVAL3, CNTVAL4, die aus den N ersten Bits des
Zählers
der erweiteten Adresse der Speicher MEM1, MEM2, MEM3 bzw. MEM4 bestehen,
d. h. der Adresse ADL. Die 7A, 7C, 7E bzw. 7G stellen
ebenfalls die Werte der Signale ADMATCH1, ADMATCH2, ADMATCH3, ADMATCH4
am Ausgang der jeweiligen Vergleicher der Speicher MEM1, MEM2, MEM3,
MEM4 dar. Die 7B, 7D, 7F, 7H stellen
die Daten DTREAD1, DTREAD2, DTREAD3, DTREAD4 dar, die in den integrierten
Speicherebenen der Speicher MEM1, MEM2, MEM3 bzw. MEM4 gelesen wurden. 7I stellt
den höherwertigen
Zählwert
dar, der von den beiden höherwertigen
Bits AN+1, AN (denn
hier ist K = 2) im Zähler
der erweiterten Adresse jedes Speichers gebildet wird, d. h. die
Adresse ADH. Die 7J stellt die Daten DTOUT dar,
die die integrierte Speicherebene liefert. Hier wird angenommen,
dass das fortlaufende Lesen an der Adresse Null der erweiterten
Speicherebene beginnt und dass der Speicher MEM1 derjenige ist,
der die niedrigste höherwertige
Adresse darstellt, d. h. AN+1 AN =
00.
-
Im
Verlauf des fortlaufenden Lesens durchlaufen die niederwertigen
Zählwerte
CNTVAL1, CNTVAL2, CNTVAL3, CNTVAL4 mehrere Zählzyklen, wobei sie jeweils
durch Null laufen (7A, 7C, 7E, 7G),
während
sich der höherwertige
Zählwert
nach jedem Zyklus um eine Einheit erhöht. In jedem Zyklus lesen die
Zentraleinheiten der Speicher ihre gesamten jeweiligen Speicherebenen,
diese Daten werden jedoch nur an den Ausgang angelegt, wenn das
Signal ADMATCH gleich 1 ist. So sind die Daten, die im Verlauf des ersten
Zählzyklus
ausgegeben werden, diejenigen, die vom Speicher MEM1 gelesen werden,
und erstrecken sich vom ersten Binärwort DT10 bis zum letzten
Binärwort
DT1x, das sich im Speicher MEM1 befindet. Die im Verlauf des zweiten
Zählzyklus
ausgegebenen sind diejenigen, die vom Speicher MEM2 gelesen werden,
und erstrecken sich vom ersten Binärwort DT20 bis zum letzten
Binärwort
DT2x, das sich im Speicher MEM2 befindet. Ebenso sind die im Verlauf
des dritten Zählzyklus
ausgegebenen Daten diejenigen, die vom Speicher MEM3 gelesen werden,
und erstrecken sich vom ersten Binärwort DT30 bis zum letzten
Binärwort
DT3x, das sich im Speicher MEM3 befindet. Im Verlauf des vierten
und letzten Zählzyklus
sind die ausgegebenen Daten diejenigen, die vom Speicher MEM4 gelesen
werden, und erstrecken sich vom ersten Binärwort DT40 bis zum letzten
Binärwort
DT4x, das sich im Speicher MEM4 befindet. Das Ende des Lesevorganges
kann jedoch jederzeit eintreten und wird im Allgemeinen dadurch
ausgelöst,
dass das Taktsignal CK0 nicht mehr an die Speicher angelegt wird.
-
So
hat die Nichtausführung
eines Befehls zum fortlaufenden Lesen durch Ausführung des Lesens der integrierten
Speicherebene unter Sperrung der Daten am Ausgang des Speichers
einen entscheidenden Vorteil gegenüber einem Verfahren, das darin
bestände,
das Lesen der Speicherebene nicht auszuführen. Dieses andere Verfahren
würde erfordern,
einen komplexen Decoder vorzusehen, der sich auf alle Adressenbits
des Zählers
bezieht, um dem Zeitpunkt vorherzukommen, zu dem Daten ausgegeben
werden müssen,
um rechtzeitig während
der Ausführung
eines Befehls zum fortlaufenden Lesen, während derer der Zähler der
erweiterten Adresse laufend inkrementiert oder dekrementiert wird,
das Lesen der Speicherebene zu beginnen.
-
Dem
Fachmann wird klar sein, dass ein erfindungsgemäßer Speicher verschiedenen
Varianten und Ausführungsformen
fähig ist.
Verschiedene Kombinationen der erfindungsgemäßen Mittel können vorgesehen werden,
wobei gewisse Mittel fortgelassen werden können. Insbesondere ist die
Verwendung des Verfügbar/Besetzt-Kontaktes
RBP und des Signals EWIP nur gerechtfertigt, wenn die integrierte
Speicherebene jedes Speichers gleichzeitig für Lese- und Schreibzugriff zugänglich ist
(beispielsweise eine Speicherebene vom Typ Flash oder EPROM). Ebenso
ist das Vorsehen eines konfigurierbaren Adressenzählers und/oder
eines konfigurierbaren Vergleichers nur gerechtfertigt, wenn die
Schaffung eines konfigurierbaren Speichers gewünscht ist, der dazu bestimmt
ist, in eine erweiterte Speicherebene eingefügt zu werden, deren Größe nicht vorab
festgelegt ist. Ebenso ist das Vorsehen des Master-Speichersignals
nur gerechtfertigt, wenn die Schaffung einer erweiterten Speicherebene
gewünscht
ist, die in der Lage ist, auf einen Befehl zum Lesen von Spezialregistern
zu reagieren. Wenn auch schließlich
zur Vereinfachung die Schaffung einer erweiterten Speicherebene
beschrieben wurde, die aus Speichern besteht, die integrierte Speicherebenen
gleicher Größe aufweisen,
betrifft die Erfindung ebenfalls die Schaffung einer erweiterten
Verbundspeicherebene. In diesem Fall sind N und K in jedem Speicher
unterschiedlich, aber die Summe aus N und K ist konstant und gleich
der Anzahl an Bits, die die erweiterte Adresse der erweiterten Verbundspeicherebene
umfasst.