PatentDe  


Dokumentenidentifikation DE10105627B4 21.06.2007
Titel Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung
Anmelder International Business Machines Corp., Armonk, N.Y., US
Erfinder Lattimore, George M., Austin, Tex., US;
Pille, Jürgen, 70199 Stuttgart, DE;
Sauter, Rolf, 71149 Bondorf, DE;
Wendel, Dieter, 71101 Schönaich, DE
Vertreter Gigerich, J., Dipl.-Ing., Pat.-Anw., 81679 München
DE-Anmeldedatum 08.02.2001
DE-Aktenzeichen 10105627
Offenlegungstag 04.10.2001
Veröffentlichungstag der Patenterteilung 21.06.2007
Veröffentlichungstag im Patentblatt 21.06.2007
IPC-Hauptklasse G11C 7/00(2006.01)A, F, I, 20051017, B, H, DE
IPC-Nebenklasse G11C 11/417(2006.01)A, L, I, 20051017, B, H, DE   

Beschreibung[de]
Gebiet der Erfindung

Die vorliegende Erfindung bezieht sich auf eine Mehrfachanschlussspeichereinrichtung, ein Verfahren zum Betrieb einer Mehrfachanschlussspeichereinrichtung, eine Einrichtung für nicht ausführbare Verarbeitung, welche diese Speichereinrichtung umfasst, und ein Datenverarbeitungssystem, welches das Verfahren ausführt.

Hintergrund der Erfindung

Eine Mehrfachanschlussspeichereinrichtung umfasst mehrere Anschlüsse. Beim Speicher kann es sich um einen Random Access Memory (RAM) oder einen Static Random Access Memory (SRAM) handeln. Generell stellt jeder Anschluss einen unabhängigen Eingangs- und/oder Ausgangspfad zum Schreiben von Daten in einen Speicher dar. Ein Mehrfachanschlussspeicher kann beispielsweise mehrere Schreib- und Leseanschlüsse umfassen, wobei die Anzahl der Schreibanschlüsse nicht mit jener der Leseanschlüsse identisch sein muss.

So wird z.B. im U.S. Patent Nr. 5,359,557 eine Mehrfachanschlussspeichereinrichtung beschrieben, bei der mindestens zwei Ports Zugriffsmöglichkeit auf je eine eigene Speicheranordnung haben. Dabei sind die zwei Speicher und der Schreibzugriff jedoch redundant ausgelegt, d.h. der Inhalt des einen Speichers ist eine Kopie des Inhalts des anderen Speichers.

Wird versucht, die Anzahl der Schreibanschlüsse eines Mehrfachanschlussspeichers zu erhöhen, so steigen die Verkabelungskomplexität und der Prozentsatz an Fläche, die für die Verkabelung benötigt wird, in Hinblick auf die für die Speicherzelltransistoren sowie die Verkabelung erforderliche Gesamtfläche zum Quadrat der Anschlussanzahl.

Insbesondere in Datenverarbeitungssystemen, die mehrere Mehrfachanschlussspeicher, Mehrfachanschlussregister oder Mehrfachanschlussanordnungen umfassen, wird die Fläche der Siliziumscheibe, die von Speichern, Registern oder Anordnungen mit einer großen Anzahl Anschlüssen beansprucht wird, üblicherweise von der Fläche bestimmt, die für die Verkabelung benötigt wird, und nicht von der Fläche, welche die Transistoren benötigen, aus denen sie bestehen.

Daher ist ein Ansatz für eine optimierte Verkabelungsverwaltung für Mehrfachanschlussregister und Mehrfachanschlussspeicheranordnungen erforderlich.

ÜBERBLICK ÜBER DIE ERFINDUNG

Um die Chipfläche zu reduzieren, die benötigt wird, wenn die Anzahl der Schreibanschlüsse einer Mehrfachanschlussspeicheranordnung mit K Schreibanschlüssen und L Leseanschlüssen erhöht wird (K = 2, 3, 4, ... und L = 1, 2, 3, ...), schlägt die vorliegende Erfindung vor, eine solche Mehrfachanschlussspeicheranordnung durch zwei oder mehrere Mehrfachanschlussspeicheranordnungen und eine Auswahlvorrichtung zu ersetzen. Die zwei oder mehreren Mehrfachanschlussspeicheranordnungen sind so gewählt, dass sie insgesamt K Schreibanschlüsse umfassen, und jede Mehrfachanschlussspeicheranordnung umfasst eine Teilmenge der Gesamtanzahl Schreibanschlüsse und L Leseanschlüsse.

In einer bevorzugten Ausführungsart der Erfindung umfassen daher die zwei oder mehreren Mehrfachanschlussspeicheranordnungen jeweils die gleiche Anzahl und die gleichen Adressen, die zum Schreiben von Daten auf sie zur Verfügung stehen. Da festgelegt werden muss, ob die ersten Daten, die in eine spezifische Adresse der ersten Mehrfachanschlussspeicheranordnung geschrieben wurden, jünger oder älter sind als die zweiten Daten, die auf die gleiche spezifische Adresse – allerdings einer zweiten oder weiteren Mehrfachanschlussspeicheranordnung – geschrieben wurden, schlägt die Erfindung die Verwendung einer Auswahlvorrichtung vor. Die erfindungsgemäße Auswahlvorrichtung speichert für jede verfügbare Adresse für die zwei oder mehreren Mehrfachanschlussspeicheranordnungen, in welche davon zuletzt Daten geschrieben wurden.

In einer anderen bevorzugten Ausführungsart der Erfindung umfasst die Auswahlvorrichtung eine Mehrfachanschlussspeicheranordnung. Bevorzugterweise umfasst die Mehrfachanschlussspeicheranordnung der Auswahlvorrichtung die gleiche Anzahl Adressen und die gleichen Adressen wie jede der zwei oder mehreren Mehrfachanschlussspeicheranordnungen für die Datenspeicherung, worin die zwei oder mehreren Mehrfachanschlussspeicheranordnungen vorzugsweise alle gleich sind.

In einer weiteren bevorzugten Ausführungsart der Erfindung ist jeder Schreibanschluss der Speicheranordnung der Auswahlvorrichtung mit einem anderen Schreibanschluss der zwei oder mehreren Mehrfachanschlussspeicheranordnungen verbunden, und die eine oder mehreren auf die zwei oder mehreren Mehrfachanschlussspeicheranordnungen bei einem oder mehreren Schreibzyklen angewendete(n) Adresse(n) wird auch auf die Mehrfachanschlussspeicheranordnung der Auswahlvorrichtung angewendet. Die Auswahlvorrichtung speichert ein oder mehrere Steuerbits unter der Adresse, die auf ihren eine Adresseneingang oder ihre mehreren Adresseneingänge angewendet wurde, welche angeben, über welchen Schreibanschluss der zwei oder mehreren Mehrfachanschlussspeicheranordnungen und/oder in welche Speicheranordnung Daten zuletzt in die spezifische Adresse der zwei oder mehreren Mehrfachanschlussspeicheranordnungen geschrieben wurden. Umfasst die erfindungsgemäße Mehrfachanschlussspeichereinrichtung beispielsweise zwei Mehrfachanschlussspeicheranordnungen für die Datenspeicherung, muss für jede Adresse der beiden Mehrfachanschlussspeicheranordnungen nur ein Einzelsteuerbit der höheren oder der unteren Ebene gespeichert werden. Das Einzelsteuerbit wird in der Speicheranordnung der Auswahlvorrichtung gespeichert und ermöglicht die Angabe, in welche der beiden Mehrfachanschlussspeicheranordnungen zuletzt Daten für eine spezifische Adresse geschrieben wurden. Gleichermaßen umfasst die Speicherkapazität der Speicheranordnung der Auswahlvorrichtung nur ein Einzelbit.

Es versteht sich, dass die Speicherkapazität pro Adresse auf zwei oder mehrere Steuerbits erhöht werden muss, falls mehr als zwei Mehrfachanschlussspeicheranordnungen verwendet werden, damit anhand der gespeicherten Steuerbits angegeben werden kann, in welche der mehr als zwei Mehrfachanschlussspeicheranordnungen für die Datenspeicherung zuletzt Daten geschrieben wurden.

In einer nochmals weiteren bevorzugten Ausführungsart der Erfindung umfasst die Auswahlvorrichtung der erfindungsgemäßen Mehrfachanschlussspeichereinrichtung eine Multiplexer-Gruppe. Die Eingänge jedes Multiplexers sind mit einem Leseanschluss der verschiedenen Mehrfachanschlussspeicheranordnungen für die Datenspeicherung verbunden, und ein weiterer Auswahleingang jedes Multiplexers ist mit einem unterschiedlichen Leseanschluss der Speicheranordnung der Auswahlvorrichtung verbunden. Werden während eines Lesevorgangs ein oder mehrere Steuerbits auf den Auswahleingang jedes Multiplexers angewendet, steuern die Steuerbits jeden Multiplexer so, dass er nur die zuletzt geschriebenen Daten ausgibt, die in den zwei oder mehreren Mehrfachanschlussspeicheranordnungen für Datenspeicherung für eine spezifische Adresse abgelegt sind.

Die vorstehende Zusammenfassung der vorliegenden Erfindung soll nicht jede Ausführungsart oder jede Implementierung der vorliegenden Erfindung beschreiben. Vorteile und Errungenschaften werden, gemeinsam mit einem umfassenderen Verständnis der Erfindung, unter Bezugnahme auf die nachfolgende ausführliche Beschreibung, die Ansprüche und die dazugehörigen Zeichnungen offensichtlich und nachvollziehbar.

KURZBESCHREIBUNG DER ZEICHNUNGEN

1 stellt ein allgemeines Blockdiagramm einer bekannten Mehrfachanschlussanordnung dar;

2 stellt ein allgemeines Blockdiagramm einer erfindungsgemäßen Mehrfachanschlussspeichereinrichtung dar, welche dieselbe Funktionalität umfasst wie die in 1 gezeigte Mehrfachanschlussanordnung.

1 zeigt ein Beispiel einer bekannten Mehrfachanschlussspeicheranordnung 100. Die Mehrfachanschlussspeicheranordnung 100 umfasst acht Schreibanschlüsse 1 bis 8 (101 bis 108), einen Adressenanschluss 109 und einen Lese-/Schreibsteueranschluss 110 sowie vier Leseanschlüsse 1 bis 4 (111 bis 114).

2 zeigt eine erfindungsgemäße Mehrfachanschlussspeichereinrichtung 200, welche dieselbe Funktionalität umfasst wie die in 1 gezeigte Mehrfachanschlussspeicheranordnung. Die Mehrfachanschlussspeichereinrichtung 200 umfasst eine Speicheranordnung 1 (201), eine Speicheranordnung 2 (202), eine Steueranordnung 203, einen Multiplexer 1 (204), einen Multiplexer 2 (205), einen Multiplexer 3 (206) und einen Multiplexer 4 (207).

Die Speicheranordnung 1 (201) umfasst vier Schreibanschlüsse 1 bis 4 (208 bis 211) und vier Leseanschlüsse 1 bis 4 (214 bis 217) sowie einen Adressenanschluss 212 und einen Lese-/Schreibsteueranschluss 213.

Die Speicheranordnung 2 (202) ist identisch mit der Speicheranordnung 1 (201) und umfasst vier Schreibanschlüsse 1 bis 4 (218 bis 221), vier Leseanschlüsse 1 bis 4 (224 bis 227), einen Adressenanschluss 222 und einen Lese-/Schreibsteueranschluss 223.

Die Steueranordnung 203 umfasst acht Schreibanschlüsse 1 bis 8 (228 bis 235), vier Leseanschlüsse 1 bis 4 (236 bis 239), einen Adressenanschluss 256 und einen Lese-/Schreibsteueranschluss 257.

Der Multiplexer 1 umfasst zwei Dateneingänge 240 und 241, einen Ausgang, bezeichnet als Leseanschluss M 1 (242), und einen Auswahleingang 243, der Multiplexer 2 umfasst zwei Dateneingänge 244 und 245, einen Ausgang 246, bezeichnet als Leseanschluss M 2, und einen Auswahleingang 247, der Multiplexer 3 umfasst zwei Dateneingänge 248 und 249, einen Ausgang 250, bezeichnet als Leseanschluss M 3, und einen Auswahleingang 251 und der Multiplexer 4 umfasst zwei Dateneingänge 252 und 253, einen Ausgang 254, bezeichnet als Leseanschluss M 4, und einen Auswahleingang 255.

Der Leseanschluss 4 (214) der Speicheranordnung 1 (201) ist mit dem Dateneingang 252 des Multiplexers 4 (207) verbunden, der Leseanschluss 3 (215) der Speicheranordnung 1 (201) ist mit dem Dateneingang 248 des Multiplexers 3 (206) verbunden, der Leseanschluss 2 (216) der Speicheranordnung 1 (201) ist mit dem Dateneingang 244 des Multiplexers 2 (205) verbunden und der Leseanschluss 1 (217) ist mit dem Dateneingang 240 des Multiplexers 1 (204) verbunden.

Der Leseanschluss 1 (224) der Speicheranordnung 2 (202) ist mit dem Dateneingang 241 des Multiplexers 1 (204) verbunden, der Leseanschluss 2 (225) der Speicheranordnung 2 (202) ist mit dem Dateneingang 245 des Multiplexers 2 (205) verbunden, der Leseanschluss 3 (226) der Speicheranordnung 2 (202) ist mit dem Dateneingang 249 des Multiplexers 3 (206) verbunden und der Leseanschluss 4 (227) der Speicheranordnung 2 (202) ist mit dem Dateneingang 253 des Multiplexers 4 (207) verbunden.

Der Leseanschluss 1 (236) der Steueranordnung 203 ist mit dem Auswahleingang 243 des Multiplexers 1 (204) verbunden, der Leseanschluss 2 (237) der Steueranordnung 202 ist mit dem Auswahleingang 247 des Multiplexers 2 (205) verbunden, der Leseanschluss 3 (238) der Steueranordnung 203 ist mit dem Auswahleingang 251 des Multiplexers 3 (206) verbunden und der Leseanschluss 4 (239) der Steueranordnung 203 ist mit dem Auswahleingang 255 des Multiplexers 4 (207) verbunden.

Im Folgenden wird die Funktionsweise der erfindungsgemäßen Mehrfachanschlussspeichereinrichtung 200 detailliert beschrieben. Mit Hinblick auf 1 wird angenommen, dass jede Datenverarbeitungseinheit (nicht dargestellt) einer Vielzahl von acht Datenverarbeitungseinheiten (nicht dargestellt) mit einem unterschiedlichen Schreibanschluss der Schreibanschlüsse 1 bis 8 (101 bis 108) der bekannten Speicheranordnung 100 verbunden ist.

Werden ein oder mehrere geeignete Schreibsteuersignale auf den Lese-/Schreibsteueranschluss 110 angewendet, ist jede der Datenverarbeitungseinheiten in der Lage, Daten gleichzeitig oder parallel auf eine spezifische Adresse der verfügbaren Adressen, die auf den zugehörigen Schreibanschluss angewendet wurde, zu schreiben und dort zu speichern. Dies geschieht durch Anwendung eines oder mehrerer geeigneter Adressensignale auf den Adressenanschluss 109 der bekannten Speicheranordnung 100. Über jeden der Schreibanschlüsse 1 bis 8 (101 bis 108) können Daten auf jede beliebige Adresse der bekannten Speicheranordnung 100 geschrieben werden. Es muss nur dafür gesorgt werden, dass Daten nicht zur gleichen Zeit, im gleichen Schritt oder Taktzyklus über verschiedene Schreibanschlüsse auf dieselbe Adresse geschrieben werden. Anderenfalls wären die an einer solchen Adresse gespeicherten Dateninhalte unbestimmt, wie dies Fachleuten bekannt ist.

Werden über den Schreibanschluss (101) Daten unter Adressennummer 1 in einem ersten Schritt oder Taktzyklus geschrieben und gespeichert und in einem zweiten Schritt oder Taktzyklus Daten auf dieselbe Adresse entweder über den Schreibanschluss (101) oder einen anderen der Schreibanschlüsse 2 bis 8 geschrieben, so werden die alten Daten von den neuen überschrieben.

Werden ein oder mehrere geeignete Lesesteuersignale auf den Lese-/Schreibsteueranschluss 110 und eine oder mehrere Adressen auf den Adressenanschluss 109 der bekannten Speicheranordnung 100 angewendet, so können über jeden der Leseanschlüsse 1 bis 4 (111 bis 114) Daten gleichzeitig oder parallel über die Leseanschlüsse 1 bis 4 der bekannten Speicheranordnung 100 durch eine Vielzahl weiterer Datenverarbeitungseinheiten (nicht dargestellt) gelesen werden, von denen jede mit einem Leseanschluss der Leseanschlüsse 1 bis 4 (111 bis 114) verbunden ist. Die Einschränkung, die für den Schreibvorgang gilt, nämlich dass nur eine einzige Einheit gleichzeitig auf dieselbe Adresse schreiben darf, gilt nicht für das Lesen von Daten aus der bekannten Speicheranordnung 100.

Werden in einem dritten Schritt oder Taktzyklus die unter Adressennummer 1 gespeicherten Daten über einen oder mehrere der Leseanschlüsse 1 bis 4 (111 bis 114) der bekannten Speicheranordnung 100 gelesen, so werden die Daten gelesen, die im zweiten Schritt oder Taktzyklus auf Adressennummer 1 geschrieben wurden, d. h. die letzten bzw. jüngsten unter Adressennummer 1 gespeicherten Daten.

Es wird nun angenommen, dass in einem ersten Schritt oder Taktzyklus Daten auf ähnliche Art und Weise über Schreibanschluss 1 (208) auf Adressennummer 1 der Speicheranordnung 1 (201) der erfindungsgemäßen Mehrfachanschlussspeichereinrichtung 200 von einer Datenverarbeitungseinheit (nicht dargestellt) aus einer Vielzahl von acht Verarbeitungseinheiten (nicht dargestellt) geschrieben werden, von denen jede mit einem unterschiedlichen Schreibanschluss der Schreibanschlüsse 208 bis 211 und 218 bis 221 der beiden Speicheranordnungen 1 und 2 (201 und 202) verbunden ist.

In einem zweiten Schritt oder Taktzyklus sollen nun Daten auf ähnliche Art und Weise über Schreibanschluss 1 (218) oder einen anderen der Schreibanschlüsse 1 bis 4 (218 bis 221) der Speicheranordnung 2 (202) auf Adressennummer 1 der Speicheranordnung 2 (202) geschrieben werden. Ohne weitere Maßnahmen, wie sie später beschrieben werden, ist es offensichtlich nicht möglich festzustellen, ob die Daten, die in Adressennummer 1 der Speicheranordnung 1 gespeichert wurden, oder die Daten, die in Adressennummer 1 der Speicheranordnung 2 gespeichert wurden, die letzten bzw. jüngsten Daten für Adressennummer 1 sind, da im Gegensatz zur bekannten Speicheranordnung 100, welche ebenfalls acht Schreibanschlüsse umfasst, die Daten auf unterschiedlichen physischen Speicheranordnungen gespeichert sind und daher im zweiten Schritt nicht überschrieben werden, wenn auf dieselbe Adresse geschrieben wird.

Um diese Feststellung zu ermöglichen, schlägt die vorliegende Erfindung die Verwendung einer Steueranordnung vor, die speichert, in welche der beiden Speicheranordnungen 1 oder 2 der Mehrfachanschlussspeichereinrichtung 200 zuletzt Daten für jede verfügbare Adresse in beiden Speicheranordnungen geschrieben wurden. In diesem Beispiel würde Steueranordnung 203 im ersten Schritt oder Taktzyklus erste sogenannte Auswahldaten speichern, mit der Angabe, dass Daten auf Adressennummer 1 der Speicheranordnung 1 geschrieben wurden und vorzugsweise die alten oder ersten Auswahldaten in einem zweiten Schritt oder Taktzyklus von zweiten Auswahldaten überschrieben würden, mit der Angabe, dass Daten auf Adressennummer 1 der Speicheranordnung 2 geschrieben wurden. Dadurch kann festgestellt werden, welche Daten auf der gleichen Adresse – jedoch in zwei oder mehr unterschiedlichen Speicheranordnungen – die aktuellsten Daten sind und somit für die weitere Verarbeitung verwendet werden sollen.

Jeder der Schreibanschlüsse 1 bis 8 (228 bis 235) der Steueranordnung 203 ist mit dem entsprechenden Schreibanschluss der Schreibanschlüsse 1 bis 4 (208 bis 211) der Speicheranordnung 1 (201) und der Schreibanschlüsse 1 bis 4 (218 bis 221) der Speicheranordnung 2 (202) (nicht dargestellt) verbunden. Zusätzlich werden die Adressensignale auf den Adressenanschluss 256 der Steueranordnung 203 angewendet, wenn auf die Speicheranordnung 1 (201) oder die Speicheranordnung 2 (202) geschrieben wird (nicht dargestellt). Um das Schreiben auf die Steueranordnung 203 zu ermöglichen, wird ein geeignetes Schreibsignal auf den Lese-/Schreibsteueranschluss 257 der Steueranordnung 203 angewendet.

Werden nun dementsprechend im ersten Schritt oder Taktzyklus auf Adressennummer 1 der Speicheranordnung 1 über den Schreibanschluss 1 (208) auf die Speicheranordnung 1 Daten geschrieben, die auf den Schreibanschluss 1 (208) der Speicheranordnung 1 angewendet werden, so werden gleichzeitig die Daten, die in Speicheranordnung 1 gespeichert werden sollen, auf den Schreibanschluss 1 (228) der Steueranordnung 1 angewendet, und die Adresse, die auf den Adressenanschluss 212 der Speicheranordnung 1 angewendet wird, wird auf den Adressenanschluss 256 der Steueranordnung 203 angewendet, und die Steueranordnung speichert ein Steuerbit, z. B. ein Signal der höheren Ebene, unter der Adressennummer 1 in der Steueranordnung 203, das angibt, dass Daten auf die Speicheranordnung 1 geschrieben wurden.

Werden im zweiten Schritt oder Taktzyklus auf Adressennummer 1 der Speicheranordnung 2 über den Schreibanschluss 1 (218) auf die Speicheranordnung 2 Daten geschrieben, die auf den Schreibanschluss 1 (218) der Speicheranordnung 2 angewendet werden, so werden gleichzeitig die Daten, die in Speicheranordnung 2 gespeichert werden sollen, auf den Schreibanschluss 5 (232) der Steueranordnung 203 angewendet, und die Adresse, die auf den Adressenanschluss 222 der Speicheranordnung 2 angewendet wird, wird auf den Adressenanschluss 256 der Steueranordnung 203 angewendet, und die Steueranordnung speichert das geänderte Steuerbit, z. B. ein Signal der unteren Ebene, unter der Adressennummer 1 in der Steueranordnung 203, das angibt, dass Daten auf die Speicheranordnung 2 geschrieben wurden. Dementsprechend wird bevorzugt, das Signal der höheren Ebene, das im ersten Schritt gespeichert wurde, durch ein Signal der unteren Ebene im zweiten Schritt zu überschreiben. Dasselbe gilt für alle anderen Schreibanschlüsse der Speicheranordnung 1 und der Speicheranordnung 2 und ihrer verfügbaren Adressen.

In einer bevorzugten Ausführungsart der Erfindung – wie in 2 gezeigt – ist die Steueranordnung 203 eine Speicheranordnung, welche dieselbe Anzahl Adressen umfasst wie die Speicheranordnung 1 und die Speicheranordnung 2, d. h. die Steueranordnung 203, die Speicheranordnung 1 und die Speicheranordnung 2 umfassen dieselbe Anzahl verfügbarer Adressen für die Datenspeicherung. Im Gegensatz zur Speicheranordnung 1 und zur Speicheranordnung 2 ist die Speicherkapazität für jede Adresse in der Steueranordnung 203 viel geringer als die Speicherkapazität für jede Adresse in der Speicheranordnung 1 und der Speicheranordnung 2. Vorzugsweise beträgt die Speicherkapazität für jede Adresse in der Steueranordnung 203 nur ein Bit pro Adresse, was ausreicht für das Speichern der Angabe, in welche Speicheranordnung der Speicheranordnungen 1 oder 2 zuletzt Daten geschrieben wurden.

Um die Daten, die zuletzt auf die gleiche Adresse in der Speicheranordnung 1 oder der Speicheranordnung 2 geschrieben wurden, für die weitere Verarbeitung durch eine oder mehrere Datenverarbeitungseinheiten (nicht dargestellt) zur Verfügung zu stellen, die mit einem oder mehreren der Leseanschlüsse M1 bis M4 (242, 246, 250, 254) verbunden sind, wird die Adresse oder werden die Adressen der Daten, die ausgegeben werden sollen, auf die Speicheranordnung 1 (201), die Speicheranordnung 2 (202) und die Steueranordnung 203 angewendet.

Es wird nun beispielsweise angenommen, das die zuletzt unter Adressennummer 1 entweder in der Speicheranordnung 1 oder in der Speicheranordnung 2 gespeicherten Daten über den Multiplexer 1 ausgegeben werden sollen. In diesem Beispiel wird im dritten Schritt ein Lesesteuersignal auf den Lese-/Schreibsteueranschluss 213 der Speicheranordnung 1, auf den Lese-/Schreibsteueranschluss 223 der Speicheranordnung 2 und auf den Lese-/Schreibsteueranschluss 257 der Steueranordnung 203 angewendet, und die Adressennummer 1 wird auf den Adressenanschluss 212 der Speicheranordnung 1 (201), den Adressenanschluss 222 der Speicheranordnung 2 (202) und auf den Adressenanschluss 256 der Steueranordnung 203 angewendet. Wie aus 2 zu ersehen ist, werden die Daten, die unter Adressennummer 1 auf der Speicheranordnung 1 (201) gespeichert sind, auf den Dateneingang 240 des Multiplexers 1 über den Leseanschluss 1 (217) angewendet, während die unter Adressennummer 1 in der Speicheranordnung 2 gespeicherten Daten auf den Dateneingang 241 des Multiplexers 1 über den Leseanschluss 1 (224) der Speicheranordnung 2 (202) angewendet werden, und das Steuerbit, das in der Steueranordnung 203 gespeichert ist, wird auf den Auswahleingang 243 des Multiplexers 1 über den Leseanschluss 1 (236) der Steueranordnung 203 angewendet.

Abhängig vom Status des Steuerbits, das unter Adressennummer 1 in der Steueranordnung 203 gespeichert ist und angibt, in welcher Speicheranordnung der beiden Speicheranordnungen 1 oder 2 (201, 202) zuletzt Daten gespeichert wurden, gibt der Multiplexer 1 (204) die Daten entweder auf seinen Eingang 240 oder auf seinen Eingang 241 an seinem Leseanschluss M 1 (242) zur weiteren Verarbeitung aus. Wie aus 2 ersichtlich ist, gilt dies entsprechend für die anderen Leseanschlüsse und deren zugehörige Multiplexer für alle in den Speicheranordnungen 1 und 2 verfügbaren Adressen.

In einer bevorzugten Ausführungsart der Erfindung wird jede der Speicheranordnungen 1 und 2 (201 und 202) aus Speicheranordnungen ausgewählt, die ein Optimum hinsichtlich mindesterforderlicher Chipfläche umfassen.

Aus dem Vorhergegangenen versteht es sich, dass eine Speicheranordnung, wie jene in 1, die mehrere Schreibanschlüsse und/oder Leseanschlüsse umfasst, durch eine erfindungsgemäße Mehrfachanschlussspeichereinrichtung ersetzt werden kann. Die erfindungsgemäße Mehrfachanschlussspeichereinrichtung umfasst zwei oder mehrere Speicheranordnungen, die insgesamt eine geringere Verkabelungsfläche benötigen als die zu ersetzende Speicheranordnung, eine Steueranordnung zum Speichern von einem oder mehreren Steuerbits je nach Speicherkapazität und einen Multiplexer für je zwei oder mehr zugehörige Leseanschlüsse der Speicheranordnungen, wie erklärt. Dadurch kann eine bekannte Mehrfachanschlussspeicheranordnung durch eine erfindungsgemäße Mehrfachanschlussspeichereinrichtung ersetzt werden, die dieselbe Funktionalität besitzt, aber eine geringere Chipfläche erfordert.

Anstatt eines oder mehrerer Steuerbits kann auch eine andere Angabe, wie beispielsweise eine Zeitmarke oder eine eindeutige Kennung, die den in den Speicheranordnungen abgelegten Daten hinzugefügt wird, verwendet werden, um zu steuern, dass die Daten für eine gegebene Adresse über Multiplexer ausgegeben werden, die zuletzt entweder auf Speicheranordnung 1 oder Speicheranordnung 2 geschrieben wurden. Die Angabe könnte beispielsweise in den Speicheranordnungen und/oder in der Steueranordnung gespeichert werden.

Im Gegensatz zum Stand der Technik steigen beim Versuch, die Anzahl der Anschlüsse eines Mehrfachanschlussspeichers zu erhöhen, die Verkabelungskomplexität und der Prozentsatz an Fläche, die für die Verkabelung benötigt wird, in Hinblick auf die für die Speicherzelltransistoren sowie die Verkabelung erforderliche Gesamtfläche nicht zum Quadrat der Anzahl der Schreibanschlüsse. Die erforderliche Chipfläche steigt statt dessen fast linear mit der Anzahl der Schreibanschlüsse. Der Anstieg ist nur fast linear, da eine sehr geringe Speicherkapazität und eine entsprechende Chipfläche für den Aufbau der Steuerbitspeicherkapazität, hinsichtlich der für die bekannten Speicheranordnungen benötigten Chipfläche, die dieselbe Anzahl Lese- und Schreibanschlüsse und dieselbe Datenspeicherkapazität sowie eine sehr kleine Chipfläche für den Multiplexer-Aufbau umfasst, benötigt wird.

Dies ist von besonderer Bedeutung, wenn eine oder mehrere erfindungsgemäße Mehrfachanschlussspeichereinrichtungen auf einem einzigen Chip bzw. einer einzigen Siliziumscheibe implementiert werden soll(en), der eine oder mehrere Datenverarbeitungseinheiten und/oder Prozessoren umfasst, wie beispielsweise einen oder mehrere sogenannte nicht ausführbare Prozessoren, wie sie Fachleuten bekannt sind. In derartigen Anwendungen ist die verfügbare Chipfläche für die Implementierung der erforderlichen Funktionalität sehr eingeschränkt.

Aus dem Vorhergegangenen versteht es sich, dass jede Mehrfachanschlussspeicheranordnung mit K Schreibanschlüssen (K = 1, 2, 3, ...) und L Leseanschlüssen (L = 1, 2, 3, ...) durch eine erfindungsgemäße Mehrfachanschlussspeichereinrichtung ersetzt werden kann. Eine derartige Mehrfachanschlussspeichereinrichtung umfasst M Mehrfachanschlussspeicheranordnungen (M = 2, 3, 4, ...), die insgesamt eine Anzahl von K Schreibanschlüssen umfassen, und jede der Mehrfachanschlussspeicheranordnungen umfasst eine Anzahl von L Leseanschlüssen. Zusätzlich umfasst die erfindungsgemäße Mehrfachanschlussspeichereinrichtung eine Anzahl von L Multiplexern und eine oder mehrere Steueranordnungen, die insgesamt eine Anzahl von K Schreibanschlüssen und eine Anzahl von L Leseanschlüssen umfassen. Der entsprechende Leseanschluss jeder der Mehrfachanschlussspeicheranordnungen wird auf denselben Multiplexer aus der Gesamtheit von L Multiplexern sowie auf den entsprechenden Leseanschluss der Steueranordnung angewendet, wobei der entsprechende Leseanschluss der Steueranordnung den Multiplexer so steuert, dass dieser jene Daten derjenigen Mehrfachanschlussspeicheranordnung ausgibt, in die zuletzt Daten geschrieben wurden, die unter der gleichen Adresse gespeichert wurden, die in allen M Mehrfachanschlussspeicheranordnungen vorhanden ist.

100
bekannte Mehrfachanschlussspeicheranordnung
101
Schreibanschluss 1
102
Schreibanschluss 2
103
Schreibanschluss 3
104
Schreibanschluss 4
105
Schreibanschluss 5
106
Schreibanschluss 6
107
Schreibanschluss 7
108
Schreibanschluss 8
109
Adressenanschluss
110
Lese-/Schreibsteueranschluss
111
Leseanschluss 1
112
Leseanschluss 2
113
Leseanschluss 3
114
Leseanschluss 4
200
Mehrfachanschlussspeichereinrichtung
201
Speicheranordnung 1
202
Speicheranordnung 2
203
Steueranordnung
204
Multiplexer 1
205
Multiplexer 2
206
Multiplexer 3
207
Multiplexer 4
208
Schreibanschluss 1
209
Schreibanschluss 2
210
Schreibanschluss 3
211
Schreibanschluss 4
212
Adressenanschluss
213
Lese-/Schreibsteueranschluss
214
Leseanschluss 4
215
Leseanschluss 3
216
Leseanschluss 2
217
Leseanschluss 1
218
Schreibanschluss 1
219
Schreibanschluss 2
220
Schreibanschluss 3
221
Schreibanschluss 4
222
Adressenanschluss
223
Lese-/Schreibsteueranschluss
224
Leseanschluss 1
225
Leseanschluss 2
226
Leseanschluss 3
227
Leseanschluss 4
228
Schreibanschluss 1
229
Schreibanschluss 2
230
Leseanschluss 3
231
Leseanschluss 4
232
Leseanschluss 5
233
Leseanschluss 6
234
Leseanschluss 7
235
Leseanschluss 8
236
Leseanschluss 1
237
Leseanschluss 2
238
Leseanschluss 3
239
Leseanschluss 4
240
Dateneingang
241
Dateneingang
242
Leseanschluss M 1
243
Auswahleingang
244
Dateneingang
245
Dateneingang
246
Leseanschluss M 2
247
Auswahleingang
248
Dateneingang
249
Dateneingang
250
Leseanschluss M 3
251
Auswahleingang
252
Dateneingang
253
Dateneingang
254
Leseanschluss M 4
255
Auswahleingang
256
Adressenanschluss
257
Lese-/Schreibsteueranschluss


Anspruch[de]
Verfahren zum Betrieb einer Mehrfachanschlussspeichereinrichtung (200) mit mindestens zwei Speicheranordnungen (201, 202), wobei jede Speicheranordnung umfasst:

mehrere adressierbare Speicherfelder;

mindestens einen Schreibanschluss (208211, 218221, 228235) zum Schreiben von Daten in die Speicherfelder und

mindestens einen Leseanschluss (214217, 224227, 236239) zum Lesen der in den Speicherfeldern gespeicherten Daten,

gekennzeichnet durch die Schritte:

Schreiben erster Daten in ein erstes Speicherfeld einer ersten Speicheranordnung (201), wobei das erste Speicherfeld durch eine erste Adresse gekennzeichnet ist;

Schreiben zweiter Daten in ein erstes Speicherfeld einer zweiten Speicheranordnung (202), wobei das erste Speicherfeld der zweiten Speicheranordnung (202) auch durch die gleiche erste Adresse gekennzeichnet ist.
Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass Auswahldaten geschrieben werden, die angeben, ob die ersten oder die zweiten Daten zuletzt geschrieben wurden. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass Auswahldaten in ein erstes Speicherfeld einer dritten Speicheranordnung (203) geschrieben werden. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass dieses erste Speicherfeld der dritten Speicheranordnung (203) ebenfalls durch die erste Adresse gekennzeichnet ist. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Auswahldaten diesen ersten Daten und/oder zweiten Daten hinzugefügt werden und/oder in diesem ersten und/oder zweiten Speicherfeld abgelegt werden. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Auswahldaten eine eindeutige Kennung umfassen oder darstellen, welche die ersten und/oder zweiten Daten kennzeichnet. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Auswahldaten eine Zeitmarke umfassen oder darstellen, welche das Datum der ersten und/oder zweiten Daten angibt. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Mehrfachanschlussspeichereinrichtung (200) mindestens eine Auswahlvorrichtung, wie einen Multiplexer (204 bis 207), umfasst, der durch die Auswahldaten dahingehend gesteuert wird, die ersten Daten auszugeben, falls diese ersten Daten in Hinblick auf die zweiten Daten zuletzt geschrieben wurden und vice versa. Mehrfachanschlussspeichereinrichtung (200), die geeignete Mittel umfasst, um die Schritte des Verfahrens in Übereinstimmung mit jedem der vorhergehenden Ansprüche auszuführen. Out-of-Order-Verarbeitungseinrichtung, die geeignete Mittel umfasst, um die Schritte des Verfahrens in Übereinstimmung mit jedem der Ansprüche 1 bis 8 auszuführen. Datenverarbeitungssystem, das geeignete Mittel umfasst, um die Schritte des Verfahrens in Übereinstimmung mit jedem der Ansprüche 1 bis 8 auszuführen.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com