DE10215362A1 - Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher - Google Patents
Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten SpeicherInfo
- Publication number
- DE10215362A1 DE10215362A1 DE10215362A DE10215362A DE10215362A1 DE 10215362 A1 DE10215362 A1 DE 10215362A1 DE 10215362 A DE10215362 A DE 10215362A DE 10215362 A DE10215362 A DE 10215362A DE 10215362 A1 DE10215362 A1 DE 10215362A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- access
- control signals
- cnt
- bsy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1647—Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
- G06F15/7857—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) using interleaved memory
Abstract
Ein integrierter Speicher weist wenigstens zwei unabhängig voneinander betreibbare Anschlußfelder (P1, P2) zur externen Kommunikation des Speichers auf. Weiterhin ist eine Steuerschaltung (30) vorgesehen, die eine Anzahl von ersten Steuersignalen (BSY) und eine Anzahl von zweiten Steuersignalen (CNT) zum externen Abgriff erzeugt. Die Anzahl der ersten Steuersignale (BSY) entspricht einer Anzahl an Speicherbänken (B0 bis B3), wobei die ersten Steuersignale jeweils einer der Speicherbänke zugeordnet sind. Eines der ersten Steuersignale zeigt jeweils an, wenn ein Zugriff auf die zugeordnete Speicherbank stattfindet. Die Anzahl der zweiten Steuersignale (CNT) entspricht der Anzahl der Anschlußfelder (P1, P2). Eines der zweiten Steuersignale wird erzeugt, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke über eines der Anschlußfelder und einem Zugriff auf dieselbe Speicherbank über ein anderes der Anschlußfelder auftritt. Zwei Prozessoreinheiten (1, 2) sind jeweils an ein unterschiedliches der Anschlußfelder (P1, P2) angeschlossen und greifen in Abhängigkeit der ersten und zweiten Steuersignal unabhängig voneinander auf den Speicher zu.
Description
- Die vorliegende Erfindung betrifft einen integrierten Speicher mit einem Speicherzellenfeld, das mehrere Speicherbänke mit jeweiligen Speicherzellen aufweist, sowie eine Schaltungsanordnung mit einem derartigen integrierten Speicher.
- Integrierte Speicher, beispielsweise in Form sogenannter DRAMs (Dynamic Random Access Memories), werden im allgemeinen in einer Systemumgebung betrieben, in der beispielsweise ein Prozessor oder ein Controller vorgesehen ist, der zum Auslesen von gespeicherten Daten oder zum Einschreiben von zu speichernden Daten auf den Speicher zugreift. Ein integrierter Speicher, insbesondere in Form eines DRAMs, weist im allgemeinen ein Speicherzellenfeld auf, das üblicherweise in mehrere getrennte Speicherbänke mit jeweiligen Speicherzellen unterteilt ist. Bei jeder der Speicherbänke kann über einen jeweiligen Zeilendecoder und Spaltendecoder separat auf die matrixförmig organisierten Speicherzellen zum Auslesen von Daten oder zum Schreiben von Daten zugegriffen werden. In Speichersystemen, die mehrere Prozessoren oder Controller aufweisen, ist es bislang üblich, daß jeder Prozessor bzw. Controller auf einen eigenen mit ihm verbundenen Speicher zugreift. Dies kann zum einen einen vergleichsweise hohen Platzbedarf und zum andere einen vergleichsweise hohen Kostenaufwand bedeuten, da für mehrere Prozessoren oder Controller jeweils ein eigener Speicherbaustein vorzusehen ist.
- Die Aufgabe der vorliegenden Erfindung ist es, einen integrierten Speicher anzugeben, der bei Einsatz in einer Systemumgebung mit mehreren Prozessoren oder Controllern einen vergleichsweise geringen Platzbedarf ermöglicht.
- Weiterhin ist es Aufgabe der vorliegenden Erfindung, eine Schaltungsanordnung mit einem integrierten Speicher und mehreren Prozessoren oder Controllern anzugeben, die einen vergleichsweise geringen Platzbedarf ermöglicht.
- Die Aufgabe betreffend den integrierten Speicher wird gelöst durch einen integrierten Speicher gemäß Patentanspruch 1. Die Aufgabe betreffend die Schaltungsanordnung wird gelöst durch eine Schaltungsanordnung gemäß Patentanspruch 7.
- Gemäß der Erfindung weist ein integrierter Speicher der eingangs genannten Art weiterhin zwei unabhängig voneinander betreibbare Anschlußfelder zur externen Kommunikation des Speichers auf, die mit einem jeweiligen Befehls- und Adreßbus und einem jeweiligen Datenbus verbunden sind. Der jeweilige Datenbus ist mit jeder der Speicherbänke verbindbar. Weiterhin ist eine Steuerschaltung vorgesehen, die eine Anzahl von ersten Steuersignalen und eine Anzahl von zweiten Steuersignalen zum externen Abgriff erzeugt. Die Anzahl der ersten Steuersignale entspricht der Anzahl der Speicherbänke, wobei die ersten Steuersignale jeweils einer der Speicherbänke zugeordnet sind. Eines der ersten Steuersignale zeigt jeweils an, wenn ein Zugriff auf die zugeordnete Speicherbank stattfindet. Die Anzahl der zweiten Steuersignale entspricht der Anzahl der Anschlußfelder. Eines der zweiten Steuersignale wird erzeugt, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke über eines der Anschlußfelder und einem Zugriff auf dieselbe Speicherbank über ein anderes der Anschlußfelder auftritt.
- Mit der Erfindung ist damit ein Speicher bereitgestellt, der es erlaubt, daß zwei Prozessoren oder Controller unabhängig voneinander auf den Speicher zugreifen können. Dementsprechend sind gemäß der Erfindung in einer Schaltungsanordnung wenigstens zwei Prozessoreinheiten, beispielsweise jeweils in Form eines Prozessors oder Controllers, jeweils an ein unterschiedliches der Anschlußfelder des erfindungsgemäßen integrierten Speichers angeschlossen. Die Prozessoreinheiten empfangen jeweils wenigstens eines der ersten und zweiten Steuersignale und greifen in Abhängigkeit der ersten und zweiten Steuersignale unabhängig voneinander auf den Speicher zu. Mit der Erfindung ist es damit ermöglicht, in einer Multi- Prozessor-Umgebung nur einen integrierten Speicher vorzusehen, auf den mehrere Prozessoreinheiten unabhängig voneinander zugreifen können. Damit ist eine vergleichsweise platzsparende Schaltungsanordnung ermöglicht.
- In einer Ausführungsform der Erfindung greifen die Prozessoreinheiten parallel auf unterschiedliche Speicherbänke des Speichers zu. Damit ist ermöglicht, daß die Prozessoren unabhängig voneinander mit einer hohen Zugriffsgeschwindigkeit ohne Wartezeiten, sogenannte Wait States, auf den Speicher zugreifen können. Es tritt demzufolge kein Nachteil gegenüber Speichersystemen auf, die Prozessoren mit jeweils eigenen zugeordneten Speichern aufweisen.
- Mit der Erfindung ist ein sogenannter Refresh-Betrieb zur Auffrischung des Speicherzelleninhalts auf zweierlei Art ermöglicht. Zum einen wirken die Prozessoreinheiten und der Speicher derart zusammen, daß ein Refresh-Betrieb für jede der Speicherbänke durch eine der Prozessoreinheiten steuerbar ist. Alternativ dazu ist der Speicher derart ausgebildet, daß ein Refresh-Betrieb für jede der Speicherbänke ohne Beteiligung der Prozessoreinheiten steuerbar ist. Entsprechend wird durch die Steuerschaltung des Speichers eines der zweiten Steuersignale erzeugt, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke und einem Refresh- Betrieb auf derselben Speicherbank auftritt.
- Weitere vorteilhafte Aus- und Weiterbildungen der Erfindung sind in Unteransprüchen angegeben.
- Die Erfindung wird im folgenden anhand der in der Zeichnung dargestellten Figuren, die Ausführungsbeispiele der vorliegenden Erfindung darstellen, näher erläutert.
- Es zeigen:
- Fig. 1 eine Ausführungsform einer Schaltungsanordnung gemäß der Erfindung,
- Fig. 2 eine detailliertere Ausführungsform eines integrierten Speichers und einer Schaltungsanordnung gemäß der Erfindung,
- Fig. 3 bis 8 jeweilige Signaldiagramme zur Erläuterung des Betriebs des Speichers und der Schaltungsanordnung gemäß Fig. 2.
- In Fig. 1 ist eine Schaltungsanordnung mit einem integrierten Speicher 3 dargestellt, der mehrere Speicherbänke B0 bis B3 mit jeweiligen Speicherzellen aufweist. Der Speicher 3 weist außerdem zwei unabhängig voneinander betreibbare Anschlußfelder P1 und P2 auf, die zur externen Kommunikation des Speichers mit einem jeweiligen Kommunikationsbus 10 und 20 verbunden sind. Jeder der Kommunikationsbusse 10 und 20 ist mit jeder der Speicherbänke B0 bis B3 verbindbar, symbolisch dargestellt durch jeweilige Schaltersymbole, die von einer Steuerschaltung 30 ansteuerbar sind.
- In Fig. 2 ist eine detailliertere Ausführungsform des Speichers 3 und der Schaltungsanordnung gemäß Fig. 1 gezeigt. Jedes der unabhängig voneinander betreibbaren Anschlußfelder P1 und P2 ist mit einem jeweiligen Befehls- und Adreßbus 11, 21 und einem jeweiligen Datenbus 12, 22 verbunden. Der Befehls- und Adreßbus 11 dient zur Übertragung von Kommandosignalen CMD#1 und Adreßsignalen ADD#1 und ist mit dem Anschlußfeld P1 verbunden. Der Datenbus 12 dient zur Übertragung von Datensignalen DQ#1 und ist ebenfalls mit dem Anschlußfeld P1 verbunden. Der Befehls- und Adreßbus 21 dient zur Übertragung der Kommandosignale CMD#2 und Adreßsignale ADD#2 und ist mit dem Anschlußfeld P2 verbunden. Der Datenbus 22 dient zur Übertragung der Datensignale DQ#2 und ist ebenfalls mit dem Anschlußfeld P2 verbunden. Der Befehls- und Adreßbus 11 und Datenbus 12 sind mit der Prozessoreinheit 1, der Befehls- und Adreßbus 21 und Datenbus 22 sind mit der Prozessoreinheit 2 verbunden. Der jeweilige Datenbus 12, 22 ist mit jeder der Speicherbänke B0 bis B3 verbindbar, in Fig. 2 ebenfalls symbolisch durch Schaltersymbole dargestellt.
- Der Speicher 3 weist eine Steuerschaltung 30 auf, die die Umschaltung der Datenbusse 12, 22 zur Verbindung mit den jeweiligen Speicherbänken B0 bis B3 steuert und außerdem den Zugriff auf die Speicherzellen der jeweiligen Speicherbänke B0 bis B3 steuert. Die Steuerschaltung 30 ist mit dem jeweiligen Befehls- und Adreßbus 11, 21 verbunden. Die Steuerschaltung 30 erzeugt weiterhin eine Anzahl von ersten Steuersignalen BSY#0 bis BSY#3, die der Anzahl der Speicherbänke B0 bis B3 entspricht. Die Steuersignale BSY#0 bis BSY#3 sind jeweils einer der Speicherbänke zugeordnet und zeigen jeweils an, wenn ein Zugriff auf die zugeordnete Speicherbank stattfindet. Weiterhin erzeugt die Steuerschaltung 30 eine Anzahl von zweiten Steuersignalen CNT#1, CNT#2, die der Anzahl der Anschlußfelder P1, P2 entspricht. Eines der Steuersignale CNT#1, CNT#2 wird erzeugt, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke über eines der Anschlußfelder P1, P2 und einem Zugriff auf dieselbe Speicherbank über das jeweils andere der Anschlußfelder P1, P2 auftritt. Die Steuersignale BSY#0 bis BSY#3 und CNT#1, CNT#2 werden an externen Anschlüssen des Speichers 3 bereitgestellt und von den Prozessoreinheiten 1 und 2 abgegriffen. Diese empfangen jeweils die Steuersignale und greifen in deren Abhängigkeit unabhängig voneinander auf den Speicher 3 zu.
- Weiterhin weist der Speicher 3 eine Registerschaltung 31 auf, die insbesondere als sogenanntes Mode-Register-Set (MRS) ausgeführt ist. Die Registerschaltung 31 dient unter anderem zur Speicherung einer Information darüber, welches der Anschlußfelder P1, P2 für einen Zugriff im Falle einer Zugriffskollision priorisiert wird. In einer vorteilhaften Ausführungsform wird die von extern programmierbare Registerschaltung 31 durch eine der Prozessoreinheiten 1, 2 (sogenannter Master- Prozessor) mit einer Information programmiert, welches der Anschlußfelder P1, P2 für einen Zugriff im Falle einer Zugriffskollision priorisiert wird. Die in der Registerschaltung 31 gespeicherte Information wird an die Steuerschaltung 30 weitergeleitet.
- Im folgenden wird anhand der Signaldiagramme gemäß Fig. 3 bis 8 der Betrieb der Speicheranordnung gemäß Fig. 2 näher erläutert.
- Die mit den Kommandosignalen CMD#1, CMD#2 übermittelten Zugriffsbefehle ACT bedeuten, daß eine Speicherbank für einen Zugriff aktiviert werden soll. Die Befehle RDA und WRA bedeuten einen Lesezugriff mit sogenanntem Auto-Precharge bzw. einen Schreibzugriff mit Auto-Precharge. Das Kommando REF bedeutet ein Auslösen eines Refresh-Zyklus zur Durchführung eines Refresh-Betriebs. Die mit den Adreßsignalen ADD#1, ADD#2 übermittelten Signale bedeuten einen Zugriff auf die jeweilige Speicherbank B0 bis B3 des Speichers 3. Das Steuersignal BSY#0 ist der Speicherbank B0 zugeordnet, das Steuersignal BSY#1 der Speicherbank B1 und so weiter. Im vorliegenden Beispiel ist der Speicher 3 als synchroner dynamischer Speicher (Steuertakt CLK), sogenannter SDRAM, ausgeführt. Im vorliegenden Beispiel wird er gemäß einer Double-Data-Rate- Architektur (DDR DRAM) betrieben, die gezeigte Betriebsweise ist jedoch analog auf eine Single-Data-Rate-Architektur übertragbar.
- Gemäß Fig. 3 erfolgt ein Zugriff auf die Speicherbank B1 mittels dem Zugriffsbefehl ACT. Der Zugriff wird dabei durch die Steuerschaltung 30 gemäß dem Speicher nach Fig. 2 derart gesteuert, daß die Speicherbank B1 mit dem Anschlußfeld P1 verbunden wird, wenn an dem Anschlußfeld P1 der Zugriffsbefehl ACT auf dem Befehlsbus 11 zum Zugriff auf die Speicherbank B1 anliegt. Sobald der Zugriffsbefehl ACT vom Anschlußfeld P1, auch als Port bezeichnet, empfangen wird, wird das Steuersignal BSY#1 vom Speicher gesetzt. Nach dem Ablauf der sogenannten Row-Cycle-Time tRC (Zykluszeit, die bei einem Zugriffszyklus zum Aktivieren einer Wortleitung benötigt wird) minus zwei Taktperioden des Taktsignals CLK wird das Steuersignal BSY#1 vor Beendigung des Zugriffs von der Steuerschaltung 30 rückgesetzt. Die Prozessoreinheiten 1, 2 überprüfen jeweils vor einem Zugriff auf den Speicher, ob eines der Steuersignale BSY gesetzt ist. Im Falle, daß das jeweilige Steuersignal BSY nicht gesetzt ist, kann beim nächsten Taktzyklus ein erneuter Zugriff auf die betreffende Speicherbank erfolgen. Im Fall gemäß Fig. 3 überprüft die Prozessoreinheit 1 nach dem Ablauf von tRC, ob das Steuersignal BSY#1 gesetzt ist. Dieses ist zum Zeitpunkt (2) nicht gesetzt, so daß ein erneuter Zugriff auf die Speicherbank B1 erfolgen kann. Entsprechend dem Lesebefehl RDA werden beim vorhergehenden Zugriff auf die Speicherbank B1 Daten dieser Speicherbank auf dem Datenbus 12 ausgegeben.
- In einem weiteren Fall werden gemäß Fig. 4 zwei Zugriffsbefehle ACT auf die Speicherbank B1 und auf die Speicherbank B2 abgegeben. Entsprechend werden nacheinander die Steuersignale BSY#1 und BSY#2 gesetzt. Infolge der Lesebefehle RDA auf Speicherbank B1 und B2 werden nacheinander über den Port P1 die Daten der Speicherbänke B1 und B2 ausgegeben. Nach dem Rücksetzen des Steuersignals BSY#1 kann ein weiterer Zugriff auf die Speicherbank B1 erfolgen.
- Anhand des Signaldiagramms gemäß Fig. 5 ist ein paralleler Zugriff der Prozessoreinheiten 1 und 2 auf die Speicherbänke B0 bis B3 gezeigt. Über Port P1 wird auf die Speicherbänke B0 und B1 über die Zugriffsbefehle ACT und Lesebefehle RDA nacheinander zugegriffen. Über Port P2 wird auf die Speicherbänke B2 und B3 mittels der Zugriffsbefehle ACT und Lesebefehle RDA nacheinander zugegriffen. Bei jedem Zugriff auf die jeweilige Speicherbank wird das entsprechende Steuersignal BSY, das dieser Speicherbank zugeordnet ist, gesetzt. Zu den jeweiligen Zeitpunkten, wie anhand Fig. 3 erläutert, wird das jeweilige Steuersignal BSY rückgesetzt. Die Daten der Speicherbänke B0 und B1 werden nacheinander über Port P1 ausgegeben, parallel dazu die Daten der Speicherbänke B2 und B3 nacheinander über Port P2.
- Anhand des Signaldiagramms gemäß Fig. 6 sind drei weitere Fälle von unterschiedlichen Zugriffen gezeigt. Im Fall 1 erfolgt ein gleichzeitiger Zugriff auf Speicherbank B1 sowohl über Port P1 als auch über Port P2. Zum Zeitpunkt (1) überprüft jede der Prozessoreinheiten 1, 2 den Zustand des der Speicherbank B1 zugeordneten Steuersignals BSY#1. Da dieses Signal nicht gesetzt ist, erfolgt jeweils ein Zugriffsbefehl ACT auf Speicherbank B1 zum Zeitpunkt (2). Zum Zeitpunkt (3) merken beide Prozessoreinheiten 1, 2, daß das Steuersignal BSY#1 gesetzt ist. In diesem Fall tritt eine Zugriffskollision zwischen einem Zugriff auf die Speicherbank B1 über Port P1 und einem Zugriff auf dieselbe Speicherbank B1 über Port P2 auf. In diesem Fall muß entschieden werden, welcher der Ports P1, P2 für einen Zugriff im Falle einer Zugriffskollision priorisiert wird. Im Fall 1 gemäß Fig. 6 hat der Zugriff über Port P2 Priorität. Das Steuersignal CNT#1 wird gesetzt. Das bedeutet, der Zugriff über Port P1 wird für einen Zugriff vom Speicher ignoriert. Der Zugriff auf Speicherbank B1 über Port P1 wird von der Prozessoreinheit 1 gestoppt, der Zugriff über Port P2 wird fortgeführt.
- Im Fall 2 gemäß Fig. 6 überprüft die Prozessoreinheit 2 zum Zeitpunkt (3), genau zum gleichen Zeitpunkt, zu dem sie den Zugriffsbefehl ACT absetzt, den Zustand des Steuersignals BSY#1. Auch hier tritt eine Zugriffskollision mehrerer Zugriffe auf Speicherbank B1 auf. In diesem Fall wird das Steuersignal CNT#2 gesetzt zum Zeitpunkt (4). Der begonnene Zugriff auf Port P1 wird fortgeführt, der Zugriff auf Port P2 wird vom Speicher ignoriert ("first come, first served").
- Im Fall 3 überprüft Prozessoreinheit 2 das Steuersignal BSY#1, bevor ein Zugriffsbefehl ACT abgesetzt wird. Im vorliegenden Fall wird jedoch, abweichend von der Spezifikation, dennoch ein Zugriffsbefehl ACT auf Speicherbank B1 abgesetzt. In diesem Fall wird das Steuersignal CNT#2 zum Zeitpunkt (5) gesetzt und der Zugriff über Port P2 wird vom Speicher ignoriert, während der Zugriff über Port P1 fortgeführt wird. Wie aus den Fällen gemäß Fig. 6 ersichtlich, ist das Steuersignal CNT#1 bzw. CNT#2 nur im Fall 1 notwendig, bei den anderen beiden Fällen reicht das Steuersignal BSY#1 zur Zugriffssteuerung im Prinzip aus.
- Anhand des Signaldiagramms gemäß Fig. 7 sind weitere vier Fälle unterschiedlicher Zugriffe auf den Speicher 3 gezeigt. Im Fall 1 hatte die Prozessoreinheit 1 keine Zeit, das Signal BSY#1 zu überprüfen. In diesem Fall tritt eine Zugriffskollision zwischen einem Refresh-Betrieb auf Speicherbank B1 und einem Zugriff über Port P1 ebenfalls auf Speicherbank B1 auf. Das Steuersignal CNT#1 wird gesetzt, der Zugriffsbefehl ACT auf Port P1 wird ignoriert. Die Prozessoreinheit 1 wird zum Zeitpunkt (2) über das gesetzte Signal BSY#1 informiert. Das Signal CNT#1 wird zum Zeitpunkt (3) gesetzt.
- Im Fall 2 tritt eine ähnliche Situation wie im Fall 1 auf, jedoch zum gleichen Zeitpunkt (1). Der Zugriffsbefehl ACT auf Port P1 wird ignoriert und die betreffende Prozessoreinheit 1 über CNT#1 zum Zeitpunkt (2) informiert.
- Im Fall 3 wurde der Zugriffsbefehl ACT zum Zugriff auf Speicherbank B1 bereits abgesetzt. Nach der Zeit tRC wird die Speicherbank B1 automatisch geschlossen und der Refresh- Betrieb wird auf Speicherbank B1 ausgeführt, wobei das Steuersignal BSY#1 für eine weitere Zeit tRC gesetzt wird.
- Im Fall 4 wurde ein Lesebefehl RDA auf Speicherbank B1 eingeleitet. Mit dem Steuersignal CNT#1 wird vom Speicher der Prozessoreinheit 1 angezeigt, daß kein weiteres Lesekommando angenommen werden soll. Anschließend wird automatisch ein Vorladevorgang durchgeführt. Darauffolgend wird der Refresh- Befehl ausgeführt, wobei das Steuersignal BSY#1 für einen weiteren Zeitraum tRC gesetzt ist.
- Die Prozessoreinheiten 1 und 2 und der Speicher 3 können grundsätzlich derart zusammenwirken, daß ein Refresh-Betrieb für jede der Speicherbänke B0 bis B3 durch eine der Prozessoreinheiten 1, 2 steuerbar ist. Mit dem Vorsehen der Steuersignale BSY und CNT ist es jedoch auch möglich, daß der Speicher den Refresh-Betrieb für jede der Speicherbänke ohne Beteiligung der Prozessoreinheiten steuert. Die Funktionalität ist ähnlich wie in den Fällen, die oben näher beschrieben sind. Ein Unterschied besteht jedoch darin, daß der Refresh- Befehl REF speicherintern erzeugt wird.
- Anhand des Signaldiagramms gemäß Fig. 8 sind weitere Fälle von unterschiedlichen Zugriffen gezeigt. Im Fall 1 wurde ein Zugriffsbefehl ACT auf Speicherbank B1 über Port P2 eingeleitet, nachdem hier ein interner Refresh-Betrieb auf dieselbe Speicherbank eingeleitet wurde. In diesem Fall wird das Signal CNT#2 gesetzt. Der Zugriffsbefehl auf Speicherbank B1 wird vom Speicher ignoriert. Auf Speicherbank B3 wird ein paralleler Zugriff über Port P1 durchgeführt.
- Im Fall 2 wird auf Speicherbank B3 ein Refresh-Betrieb ausgeführt. Zur gleichen Zeit wird ein Zugriffsbefehl ACT auf Speicherbank B3 über Port P1 eingeleitet. Das Steuersignal CNT#1 wird erzeugt, um der Prozessoreinheit 1 anzuzeigen, daß der Zugriff auf Speicherbank B3 infolge des Zugriffsbefehls vom Speicher nicht ausgeführt wird. Zur gleichen Zeit wird auf der Speicherbank B0 über Port P2 ein Zugriff ausgeführt. Für den Fall, daß statt der Aktivierung der Speicherbank B0 ein weiterer Zugriffsbefehl auf Speicherbank B3 zur gleichen Zeit über Port P2 eingeleitet worden wäre, würde eine doppelte Zugriffskollision auftreten. In diesem Fall würden beide Signale CNT#1 und CNT#2 gesetzt werden und keiner der Zugriffsbefehle über Port P1 und Port P2 würden vom Speicher akzeptiert werden.
- Im Fall 3 wird ein Refresh-Betrieb auf Speicherbank B0 durchgeführt, nachdem ein Zugriffsbefehl ACT auf Speicherbank B0 über Port P1 eingeleitet wurde. Das Steuersignal CNT#1 wird gesetzt, um der Prozessoreinheit 1 anzuzeigen, daß der Zugriff auf Speicherbank B0 vom Speicher terminiert wird. Es wird kein Lese- oder Schreibkommando auf Speicherbank B0 akzeptiert, solange das Steuersignal BSY#0 gesetzt ist. Parallel dazu wird ein Zugriffsbefehl auf Speicherbank B2 über Port P2 durchgeführt. Einen Taktzyklus später wird von der Prozessoreinheit 1 ein Zugriffsbefehl auf Speicherbank B2 über Port P1 eingeleitet. Von der Prozessoreinheit 1 kann jedoch das Signal CNT#1 zur Überprüfung einer Zugriffskollision nicht herangezogen werden, da dieses Signal bereits verwendet wurde, um die Zugriffskollision für Speicherbank B0 anzuzeigen. In diesem Fall muß die Prozessoreinheit 1 das Steuersignal BSY#2 überprüfen, um festzustellen, daß der Zugriffsbefehl auf Speicherbank B2 über Port P1 vom Speicher ignoriert wird.
- Im Fall 4 wird eine Leseoperation über Port P2 durchgeführt, bis das Signal CNT#2 gesetzt wird. Danach wird die Speicherbank vorgeladen und ein Refresh-Betrieb auf dieser Speicherbank wird durchgeführt.
- Bei den erläuterten Ausführungsbeispielen wurde der Refresh- Betrieb bankweise durchgeführt. Im Falle, daß der Refresh- Betrieb für eine Speicherbank durch eine der Prozessoreinheiten gesteuert wird, bedeutet dies, daß die jeweilige Speicherbankadresse übertragen werden muß. Eine Alternative besteht darin, einen Refresh-Betrieb für alle Speicherbänke gleichzeitig durchzuführen. In diesem Fall müssen statt einer Speicherbank alle Speicherbänke vorgeladen werden. In diesem Fall wird die Anzahl der Refresh-Kommandos reduziert (bei den genannten Ausführungsbeispielen um den Faktor 4), jedoch geht damit eine gewisse Einschränkung der Flexibilität bei der Steuerung des Refresh-Betriebs des Speichers einher. Bezugszeichenliste 1, 2 Prozessoreinheit
3 Speicher
10, 20 Kommunikationsbus
11, 21 Befehls- und Adreßbus
12, 22 Datenbus
30 Steuerschaltung
31 Registerschaltung
B0 bis B3 Speicherbank
P1, P2 Anschlußfeld
CMD#1, CMD#2 Kommandosignal
ADD#1, ADD#2 Adreßsignal
DQ#1, DQ#2 Datensignal
BSY#0 bis BSY#3 Steuersignal
CNT#1, CNT#2 Steuersignal
CLK Taktsignal
ACT Zugriffsbefehl
RDA Lesebefehl
WRA Schreibbefehl
REF Refresh-Befehl
tRC Zykluszeit
Claims (13)
1. Integrierter Speicher
mit einem Speicherzellenfeld, das mehrere Speicherbänke (B0 bis B3) mit jeweiligen Speicherzellen aufweist,
mit wenigstens zwei unabhängig voneinander betreibbaren Anschlußfeldern (P1, P2) zur externen Kommunikation des Speichers, die mit einem jeweiligen Befehls- und Adreßbus (11, 21) und einem jeweiligen Datenbus (12, 22) verbunden sind,
bei dem der jeweilige Datenbus (12, 22) mit jeder der Speicherbänke (B0 bis B3) verbindbar ist,
mit einer Steuerschaltung (30), die zum externen Abgriff
eine Anzahl von ersten Steuersignalen (BSY#0 bis BSY#3) erzeugt, die der Anzahl der Speicherbänke (B0 bis B3) entspricht, wobei die ersten Steuersignale jeweils einer der Speicherbänke zugeordnet sind und eines der ersten Steuersignale jeweils anzeigt, wenn ein Zugriff auf die zugeordnete Speicherbank stattfindet, und
eine Anzahl von zweiten Steuersignalen (CNT#1, CNT#2) erzeugt, die der Anzahl der Anschlußfelder (P1, P2) entspricht, wobei eines der zweiten Steuersignale erzeugt wird, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke über eines der Anschlußfelder und einem Zugriff auf dieselbe Speicherbank über ein anderes der Anschlußfelder auftritt.
mit einem Speicherzellenfeld, das mehrere Speicherbänke (B0 bis B3) mit jeweiligen Speicherzellen aufweist,
mit wenigstens zwei unabhängig voneinander betreibbaren Anschlußfeldern (P1, P2) zur externen Kommunikation des Speichers, die mit einem jeweiligen Befehls- und Adreßbus (11, 21) und einem jeweiligen Datenbus (12, 22) verbunden sind,
bei dem der jeweilige Datenbus (12, 22) mit jeder der Speicherbänke (B0 bis B3) verbindbar ist,
mit einer Steuerschaltung (30), die zum externen Abgriff
eine Anzahl von ersten Steuersignalen (BSY#0 bis BSY#3) erzeugt, die der Anzahl der Speicherbänke (B0 bis B3) entspricht, wobei die ersten Steuersignale jeweils einer der Speicherbänke zugeordnet sind und eines der ersten Steuersignale jeweils anzeigt, wenn ein Zugriff auf die zugeordnete Speicherbank stattfindet, und
eine Anzahl von zweiten Steuersignalen (CNT#1, CNT#2) erzeugt, die der Anzahl der Anschlußfelder (P1, P2) entspricht, wobei eines der zweiten Steuersignale erzeugt wird, wenn eine Zugriffskollision zwischen einem Zugriff auf eine der Speicherbänke über eines der Anschlußfelder und einem Zugriff auf dieselbe Speicherbank über ein anderes der Anschlußfelder auftritt.
2. Integrierter Speicher nach Anspruch 1,
dadurch gekennzeichnet, daß
durch die Steuerschaltung (30) weiterhin eines der zweiten
Steuersignale (CNT#1, CNT#2) erzeugt wird, wenn eine
Zugriffskollision zwischen einem Zugriff auf eine der
Speicherbänke und einem Refresh-Betrieb auf dieselbe Speicherbank
auftritt.
3. Integrierter Speicher nach Anspruch 1 oder 2,
dadurch gekennzeichnet, daß
durch die Steuerschaltung (30) das Speicherzellenfeld derart
angesteuert wird, daß eine der Speicherbänke (B0 bis B3) mit
einem der Anschlußfelder (P1, P2) verbunden ist, wenn an dem
einen der Anschlußfelder ein Zugriffsbefehl (ACT) auf dem
Befehlsbus (11, 21) zum Zugriff auf die eine der Speicherbänke
anliegt.
4. Integrierter Speicher nach einem der Ansprüche 1 bis 3,
dadurch gekennzeichnet, daß
durch die Steuerschaltung (30) bei einem Zugriff auf eine der
Speicherbänke das dieser Speicherbank zugeordnete der ersten
Steuersignale (BSY#0 bis BSY#3) gesetzt wird und vor
Beendigung des Zugriffs dieses Steuersignal rückgesetzt wird.
5. Integrierter Speicher nach einem der Ansprüche 1 bis 4,
dadurch gekennzeichnet, daß
ein durch die Steuerschaltung (30) bei einer
Zugriffskollision erzeugtes der zweiten Steuersignale (CNT#1, CNT#2)
anzeigt, welches der Anschlußfelder (P1, P2) für einen Zugriff
vom Speicher ignoriert wird.
6. Integrierter Speicher nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß
eine von extern programmierbare Registerschaltung (31)
vorgesehen ist zur Speicherung einer Information, welche der
Anschlußfelder (P1, P2) für einen Zugriff im Falle einer
Zugriffskollision priorisiert wird, und zur Ausgabe der
gespeicherten Information an die Steuerschaltung (30).
7. Schaltungsanordnung mit einem integrierten Speicher (3)
nach einem der vorhergehenden Ansprüche und wenigstens zwei
Prozessoreinheiten (1, 2), die jeweils an ein
unterschiedliches der Anschlußfelder (P1, P2) angeschlossen sind, jeweils
wenigstens eines der ersten und zweiten Steuersignale (BSY,
CNT) empfangen und die in Abhängigkeit der ersten und zweiten
Steuersignale unabhängig voneinander auf den Speicher
zugreifen.
8. Schaltungsanordnung nach Anspruch 7,
dadurch gekennzeichnet, daß
die Prozessoreinheiten (1, 2) parallel auf unterschiedliche
Speicherbänke (B0 bis B3) zugreifen.
9. Schaltungsanordnung nach Anspruch 7 oder 8,
dadurch gekennzeichnet, daß
eine von extern programmierbare Registerschaltung (31) des
Speichers durch eine der Prozessoreinheiten (1, 2) mit einer
Information programmierbar ist, welche der Anschlußfelder
(P1, P2) für einen Zugriff im Falle einer Zugriffskollision
priorisiert wird.
10. Schaltungsanordnung nach einem der Ansprüche 7 bis 9,
dadurch gekennzeichnet, daß
die Prozessoreinheiten (1, 2) und der Speicher (3) derart
zusammenwirken, daß ein Refresh-Betrieb für jede der
Speicherbänke (B0 bis B3) durch eine der Prozessoreinheiten steuerbar
ist.
11. Schaltungsanordnung nach einem der Ansprüche 7 bis 9,
dadurch gekennzeichnet, daß
der Speicher (3) derart ausgebildet ist, daß ein Refresh-
Betrieb für jede der Speicherbänke (B0 bis B3) ohne
Beteiligung der Prozessoreinheiten steuerbar ist.
12. Schaltungsanordnung nach einem der Ansprüche 7 bis 11,
dadurch gekennzeichnet, daß
die Prozessoreinheiten (1, 2) jeweils vor einem Zugriff auf
den Speicher (3) überprüfen, ob eines der ersten
Steuersignale (BSY#0 bis BSY#3) gesetzt ist und im Falle eines gesetzten
der ersten Steuersignale einen Zugriff auf die zugeordnete
Speicherbank unterlassen.
13. Schaltungsanordnung nach einem der Ansprüche 7 bis 12,
dadurch gekennzeichnet, daß
die Prozessoreinheiten (1, 2) jeweils vor einem Zugriff auf
den Speicher (3) überprüfen, ob eines der zweiten
Steuersignale (CNT#1, CNT#2) gesetzt ist und im Falle eines gesetzten
der zweiten Steuersignale einen Zugriff über eines der
Anschlußfelder (P1, P2) unterlassen oder abbrechen.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10215362A DE10215362A1 (de) | 2002-04-08 | 2002-04-08 | Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher |
US10/409,012 US7047371B2 (en) | 2002-04-08 | 2003-04-08 | Integrated memory having a memory cell array containing a plurality of memory banks, and circuit configuration having an integrated memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10215362A DE10215362A1 (de) | 2002-04-08 | 2002-04-08 | Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10215362A1 true DE10215362A1 (de) | 2003-10-30 |
Family
ID=28458636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10215362A Ceased DE10215362A1 (de) | 2002-04-08 | 2002-04-08 | Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher |
Country Status (2)
Country | Link |
---|---|
US (1) | US7047371B2 (de) |
DE (1) | DE10215362A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004003323A1 (de) * | 2004-01-22 | 2005-08-18 | Infineon Technologies Ag | Halbleiterspeichervorrichtung und Schaltungsanordnung |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149841B2 (en) * | 2003-03-31 | 2006-12-12 | Micron Technology, Inc. | Memory devices with buffered command address bus |
US7475186B2 (en) * | 2003-10-31 | 2009-01-06 | Superspeed Software | System and method for persistent RAM disk |
US8533716B2 (en) | 2004-03-31 | 2013-09-10 | Synopsys, Inc. | Resource management in a multicore architecture |
US7296129B2 (en) | 2004-07-30 | 2007-11-13 | International Business Machines Corporation | System, method and storage medium for providing a serialized memory interface with a bus repeater |
US9038070B2 (en) | 2004-09-14 | 2015-05-19 | Synopsys, Inc. | Debug in a multicore architecture |
US7512762B2 (en) | 2004-10-29 | 2009-03-31 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency |
US7299313B2 (en) | 2004-10-29 | 2007-11-20 | International Business Machines Corporation | System, method and storage medium for a memory subsystem command interface |
US7331010B2 (en) | 2004-10-29 | 2008-02-12 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem |
JP4715219B2 (ja) * | 2005-02-10 | 2011-07-06 | ソニー株式会社 | 共有メモリ装置 |
KR101153712B1 (ko) * | 2005-09-27 | 2012-07-03 | 삼성전자주식회사 | 멀티-포트 sdram 엑세스 제어장치와 제어방법 |
US7478259B2 (en) | 2005-10-31 | 2009-01-13 | International Business Machines Corporation | System, method and storage medium for deriving clocks in a memory system |
US7685392B2 (en) | 2005-11-28 | 2010-03-23 | International Business Machines Corporation | Providing indeterminate read data latency in a memory system |
US7669086B2 (en) * | 2006-08-02 | 2010-02-23 | International Business Machines Corporation | Systems and methods for providing collision detection in a memory system |
US7870459B2 (en) | 2006-10-23 | 2011-01-11 | International Business Machines Corporation | High density high reliability memory module with power gating and a fault tolerant address and command bus |
US7721140B2 (en) | 2007-01-02 | 2010-05-18 | International Business Machines Corporation | Systems and methods for improving serviceability of a memory system |
JP5360214B2 (ja) * | 2008-09-03 | 2013-12-04 | マーベル ワールド トレード リミテッド | マルチプレーン型フラッシュメモリへのデータのプログラミング方法、これを用いたデバイスおよびシステム |
US8255615B1 (en) | 2009-01-08 | 2012-08-28 | Marvell International Ltd. | Flexible sequence design architecture for solid state memory controller |
JP6160294B2 (ja) * | 2013-06-24 | 2017-07-12 | 富士通株式会社 | ストレージシステム、ストレージ装置及びストレージシステムの制御方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4207945C2 (de) * | 1991-03-13 | 1994-06-09 | Mitsubishi Electric Corp | Multiport-Speicher und Verfahren zum Entscheiden eines Zugriffskonflikts darin |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4758993A (en) * | 1984-11-19 | 1988-07-19 | Fujitsu Limited | Random access memory device formed on a semiconductor substrate having an array of memory cells divided into sub-arrays |
US4742493A (en) * | 1986-05-19 | 1988-05-03 | Advanced Micro Devices, Inc. | Multiple port memory array device including improved timing and associated method |
US6108756A (en) * | 1997-01-17 | 2000-08-22 | Integrated Device Technology, Inc. | Semaphore enhancement to allow bank selection of a shared resource memory device |
US6173356B1 (en) * | 1998-02-20 | 2001-01-09 | Silicon Aquarius, Inc. | Multi-port DRAM with integrated SRAM and systems and methods using the same |
DE19933540C2 (de) * | 1999-07-16 | 2001-10-04 | Infineon Technologies Ag | Synchroner integrierter Speicher |
TW503401B (en) * | 2001-03-27 | 2002-09-21 | Taiwan Semiconductor Mfg | 1-T memory structure with hidden refresh function and its operation method |
US6717834B2 (en) * | 2002-03-26 | 2004-04-06 | Intel Corporation | Dual bus memory controller |
-
2002
- 2002-04-08 DE DE10215362A patent/DE10215362A1/de not_active Ceased
-
2003
- 2003-04-08 US US10/409,012 patent/US7047371B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4207945C2 (de) * | 1991-03-13 | 1994-06-09 | Mitsubishi Electric Corp | Multiport-Speicher und Verfahren zum Entscheiden eines Zugriffskonflikts darin |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004003323A1 (de) * | 2004-01-22 | 2005-08-18 | Infineon Technologies Ag | Halbleiterspeichervorrichtung und Schaltungsanordnung |
US7467254B2 (en) | 2004-01-22 | 2008-12-16 | Infineon Technologies Ag | Semiconductor memory device with write protected memory banks |
Also Published As
Publication number | Publication date |
---|---|
US20030191912A1 (en) | 2003-10-09 |
US7047371B2 (en) | 2006-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10215362A1 (de) | Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher | |
DE3909896C2 (de) | ||
DE19860650B4 (de) | Synchrone Halbleiter-Speichervorrichtung mit einer Chip-Satz-Speichersteuervorrichtung mit Datenausblend-Maskenfunktion | |
DE4236453C2 (de) | Mehrkanal-Speichereinrichtung und Verfahren zum Betreiben derselben | |
DE102007038615B4 (de) | Speicher mit Speicherbänken und Modusregistern, sowie Verfahren zum Betreiben eines solchen Speichers | |
DE4200758C2 (de) | Halbleiterspeichereinrichtung und Verfahren zur Steuerung des Betriebs derselben | |
DE10223178B4 (de) | Schaltungsanordnung mit einer Ablaufsteuerung, integrierter Speicher sowie Testanordnung mit einer derartigen Schaltungsanordnung | |
DE102007050864B4 (de) | Verfahren und Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen | |
EP1291878B1 (de) | Steuereinrichtung zur Steuerung von Burst-Zugriffen | |
DE2617408B2 (de) | Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie | |
DE102004053497A1 (de) | Halbleiterspeicherbauelement und Wiederauffrischverfahren | |
DE102004027121A1 (de) | Ein Mehrfachbankchip, der mit einer Steuerung kompatibel ist, die für eine geringere Anzahl von Banken entworfen ist, und ein Verfahren zum Betreiben | |
DE102004050037B4 (de) | Speicherbauelement, Speichersystem und Betriebsmodussetzverfahren | |
DE3214230C2 (de) | Speicheranordnung mit Mehrfach-Zugriffsleitungen | |
DE19547782A1 (de) | Halbleiterspeichervorrichtung mit Vorladeschaltung | |
DE102011081438A1 (de) | Modifizierte Leseoperation für einen nichtflüchtigen Speicher | |
EP0811984B1 (de) | Verfahren zum Lesen und Auffrischen eines dynamischen Halbleiterspeichers | |
DE10154770B4 (de) | Dynamische Speichervorrichtung mit einer Auswahleinrichtung für das selektive Ausblenden von nicht belegten Speicherzellen beim Refresh | |
DE4325677C2 (de) | Halbleiterspeichereinrichtung | |
EP1158527B1 (de) | Integrierter Speicher mit Zeilenzugriffssteuerung zur Aktivierung und Vorladung von Zeilenleitungen und Verfahren zum Betrieb eines solchen Speichers | |
DE19513587B4 (de) | Speicherbauelement und Verfahren zum Programmieren eines Steuerbetriebsmerkmals eines Speicherbauelements | |
DE10129315A1 (de) | Dynamischer Halbleiterspeicher mit Refresh | |
EP1085387B1 (de) | Speichersteuerung zum Durchführen von Schaltbefehlen für den Zugriff auf Speicherzellen | |
DE102004024942B3 (de) | Speicherschaltung und Verfahren zum Auslesen von einer in der Speicherschaltung enthaltenen spezifischen Betriebsinformationen | |
DE10234944B4 (de) | Verfahren zum Testen eines Halbleiterspeichers mit mehreren Speicherbänken |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: QIMONDA AG, 81739 MUENCHEN, DE |
|
8131 | Rejection |