-
Die
vorliegende Erfindung betrifft eine Halbleiteranordnung sowie ein
Verfahren zum Betreiben einer Halbleiteranordnung. Die Erfindung
betrifft insbesondere Halbleiteranordnungen mit mehreren Steuereinheiten
und einer Vielzahl von Speichermodulen.
-
Zur
Datenspeicherung weisen Computersysteme üblicherweise eine Speichersteuerung
und Speichervorrichtungen wie etwa Schreib/Lesespeicher oder RAM-Speicher
auf, die beispielsweise als FB-DIMM (Fully Buffered Dual Inline
Memory Module) ausgebildet sind. Jedes der FB-DIMMs umfasst einen
Speicherbaustein zur Speicherung von Daten, eine Speicherschnittstelle
und einen Advanced Memory Buffer (AMB). Der AMB dient dazu, den
Datenaustausch zwischen der Speichersteuerung und dem Speicherbaustein
zu steuern. Der AMB empfängt Schreib-
oder Befehlsdaten in serieller Form von der Speichersteuerung, wandelt
diese in parallele Datenströme
um und leitet diese über
die Speicherschnittstelle an den Speicherbaustein weiter. Zudem
kann der AMB in den Speicherbausteinen gespeicherte Daten in serielle
Datenpakete umwandeln. Außerdem
weist der AMB eine Durchleitungslogik oder Path-Through-Logik auf,
mittels derer Datenpakete, die für
ein anderes FB-DIMM bestimmt sind, weiter geleitet werden.
-
Typischerweise
weisen Computersysteme mehrere der FB-DIMMs auf. Die Speichersteuerung sendet
eine erste Art von Datenrahmen mit Schreib- oder Befehlsdaten in
einer ersten Richtung an die Speichermodule über eine 10 Bit breite Datenleitung. Über eine
12 bis 14 Bit breite Datenleitung empfängt die Speichersteuerung eine
zweite Art von Datenrahmen mit Antwort- oder Lesedaten von den Speichermodulen.
-
Zur
Datenübertragung
in der ersten Richtung weist die Speichersteuerung eine Ausgangsschnittstelle
auf. Die Speichermodule weisen geeignete erste Eingangsschnittstellen
zum Empfang der ersten Art von Datenrahmen aus der ersten Richtung,
und geeignete erste Ausgangsschnittstellen zum Übertragen der ersten Art von
Datenrahmen an das in der ersten Richtung benachbarte Speichermodul
auf, wobei jeweilige erste Ausgangsschnittstellen der Speichermodule
mit jeweiligen ersten Eingangsschnittstellen von in der ersten Richtung
benachbarten Speichermodulen gekoppelt sind. Somit können Datenrahmen
der ersten Art in der ersten Richtung von einem Speichermodul zu
dem nächsten übertragen
werden.
-
Zur
Datenübertragung
in der zweiten Richtung weisen die Speichermodule geeignete zweite Ausgangsschnittstellen
zum Übertragen
der zweiten Art von Datenrahmen an das in der zweiten Richtung benachbarte
Speichermodul und geeignete zweite Eingangsschnittstellen auf zum
Empfang von der zweiten Art von Datenrahmen, wobei jeweilige zweite Ausgangsschnittstellen
der Speichermodule mit jeweiligen zweiten Eingangsschnittstellen
von in der zweiten Richtung benachbarten Speichermodulen gekoppelt
sind.
-
Bei
einer Unterbrechung der Verbindung, beispielsweise durch einen defekten
AMB eines der Speichermodule, ist die Datenübertragung zwischen der Speichersteuerung
und den Speichermodulen, welche sich bezüglich der Unterbrechung in
der ersten Richtung befinden, gestört.
-
Speichermodule,
die bezüglich
der Speichersteuerung weit entfernt angeordnet sind, weisen eine hohe
Latenzzeit auf. Bei n Speichermodulen weist beispielsweise das n-te
Speichermodul eine Latenzzeit von n Punkt-zu-Punkt-Verbindungen
auf.
-
Da
die Speichervorrichtung nur eine Schnittstelle zwischen der Speichersteuerung
und den Speichermodulen aufweist, ist zudem die Bandbreite für die Datenübertragung
begrenzt.
-
Bei
einer n Speichermodule umfassenden Speichervorrichtung werden in
der ersten Richtung übertragene
Datenrahmen, die für
das erste Speichermodul bestimmt sind, durch die gesamte Reihenanordnung übertragen.
Somit sind n Hochgeschwindigkeitsverbindungen aktiv. Dies führt zu einer hohen
Leistungsaufnahme der Halbleiteranordnung.
-
Die
Speichervorrichtung kann nur von einer Speichersteuerung angesteuert
werden. Daher muss bei Computersystemen mit mehreren zentralen Steuereinheiten
(CPUs) die Kommunikation zwischen den einzelnen zentralen Steuereinheiten
und den Speichermodulen entweder über eine gemeinsame externe
Speichersteuerung erfolgen, oder, im Falle in den zentralen Steuereinheiten
integrierter Speichersteuerungen, durch eine direkte Kommunikation
zwischen den einzelnen Steuereinheiten, um Daten aus den Speichermodulen
zu lesen oder Daten in die Speichermodule zu schreiben.
-
Es
ist daher eine Aufgabe der vorliegenden Erfindung, eine Halbleiteranordnung
sowie ein Verfahren zum Betreiben einer Halbleiteranordnung vorzusehen,
bei der die oben beschriebenen Probleme vermieden werden und die
Zuverlässigkeit
der Halbleiteranordnung erhöht
ist.
-
Diese
Aufgabe wird gelöst
durch eine Halbleiteranordnung gemäß Patentanspruch 1 und ein Verfahren
zum Betreiben einer Halbleiteranordnung gemäß Patentanspruch 18.
-
Eine
erfindungsgemäße Halbleiteranordnung
umfasst mindestens ein Speichermodul mit einem Speicherbaustein
zum Speichern von Daten, einer ersten Eingangsschnittstelle, um
Daten aus einer ersten Richtung zu empfangen, einer ersten Ausgangsschnittstelle,
um Daten in einer zweiten Richtung zu senden, einer zweiten Eingangsschnittstelle, um
Daten aus der zweiten Richtung zu empfangen und einer zweiten Ausgangsschnittstelle,
um Daten in der ersten Richtung zu senden. Die Halbleiteranordnung
umfasst des Weiteren eine erste Steuereinheit mit einer Steuerschaltung,
einer ersten Eingangsschnittstelle, einer zweiten Eingangsschnittstelle,
einer ersten Ausgangsschnittstelle und einer zweiten Ausgangsschnittstelle.
Die Steuerschaltung der ersten Steuereinheit ist mit der ersten
Eingangsschnittstelle der ersten Steuereinheit gekoppelt, um Daten
von dem mindestens einen Speichermodul aus der zweiten Richtung
zu empfangen. Die Steuerschaltung der ersten Steuereinheit ist mit
der zweiten Eingangsschnittstelle der ersten Steuereinheit gekoppelt,
um Daten aus der ersten Richtung zu empfangen. Die Steuerschaltung
der ersten Steuereinheit ist mit der ersten Ausgangsschnittstelle
der ersten Steuereinheit gekoppelt, um Daten an das mindestens eine
Speichermodul in der ersten Richtung zu senden. Die Steuerschaltung
der ersten Steuereinheit ist mit der zweiten Ausgangsschnittstelle
der ersten Steuereinheit gekoppelt, um Daten in der zweiten Richtung
zu senden.
-
Die
Halbleiteranordnung umfasst ferner mindestens eine zweite Steuereinheit
mit einer Steuerschaltung, einer ersten Eingangsschnittstelle, einer zweiten
Eingangsschnittstelle, ei ner ersten Ausgangsschnittstelle und einer
zweiten Ausgangsschnittstelle. Die Steuerschaltung der zweiten Steuereinheit
ist mit der ersten Eingangsschnittstelle der zweiten Steuereinheit
gekoppelt, um Daten von dem mindestens einen Speichermodul aus der
ersten Richtung zu empfangen. Die Steuerschaltung der zweiten Steuereinheit
ist mit der zweiten Eingangsschnittstelle der zweiten Steuereinheit
gekoppelt, um Daten aus der zweiten Richtung zu empfangen. Die Steuerschaltung
der zweiten Steuereinheit ist mit der ersten Ausgangsschnittstelle
gekoppelt, um Daten an das mindestens eine Speichermodul in der
zweiten Richtung zu senden. Die Steuerschaltung der zweiten Steuereinheit
ist mit der zweiten Ausgangsschnittstelle der zweiten Steuereinheit
gekoppelt, um Daten in der ersten Richtung zu senden.
-
Die
zweite Ausgangsschnittstelle der ersten Steuereinheit ist mit der
zweiten Eingangsschnittstelle der zweiten Steuereinheit gekoppelt
und die zweite Ausgangsschnittstelle der mindestens einen zweiten Steuereinheit
ist mit der zweiten Eingangsschnittstelle der ersten Steuereinheit
gekoppelt.
-
Unter
einem anderen Aspekt sieht die Erfindung ein Verfahren zum Betreiben
einer Halbleiteranordnung vor. Die Halbleiteranordnung umfasst mindestens
ein Speichermodul mit einem Speicherbaustein zum Speichern von Daten,
eine erste Steuereinheit mit einer Steuerschaltung und eine zweite
Steuereinheit mit einer Steuerschaltung. Das Verfahren umfasst Senden
von Daten in einer ersten Richtung von der Steuerschaltung der ersten
Steuereinheit an das mindestens eine Speichermodul und Empfangen von
Daten in der Steuerschaltung der ersten Steuereinheit von dem mindestens
einem Speichermodul aus einer zweiten Richtung. Des Weiteren umfasst das
Verfahren Senden von Daten in der zweiten Richtung von der Steuerschaltung der
zweiten Steuereinheit an das mindestens eine Speichermodul und Empfangen
von Daten in der Steuerschaltung der zweiten Steuereinheit von dem
mindestens einen Speichermodul aus der ersten Richtung.
-
Im
Weiteren wird die Erfindung anhand von Ausführungsbeispielen beschrieben
und in Figuren schematisch dargestellt.
-
1 zeigt
eine schematische Darstellung einer Halbleiteranordnung gemäß einer
Ausführungsform
der Erfindung.
-
2 zeigt
eine schematische Darstellung einer Weiterbildung der in 1 dargestellten
Halbleiteranordnung.
-
3 und 4 zeigen
schematisch einen Lesevorgang einer ersten Art bei der in 1 dargestellten
Halbleiteranordnung.
-
5 und 6 zeigen
schematisch einen Lesevorgang einer zweiten Art bei der in 1 dargestellten
Halbleiteranordnung.
-
7 und 8 zeigen
schematisch einen Schreibvorgang bei der in 1 dargestellten
Halbleiteranordnung.
-
In 9 ist
die Vorgehensweise bei einer Entfernung oder einer Ersetzung eines
der Speichermodule (100a, 100b, 100c, 100d)
dargestellt.
-
1 zeigt
eine schematische Darstellung einer Halbleiteranordnung gemäß einer
Ausführungsform
der Erfindung. Die Halbleiteranordnung umfasst eine erste Steuereinheit 10,
eine zweite Steuereinheit 20 sowie eine Vielzahl von Speichermodu len 100a, 100b, 100c und 100d die
in einer Kette angeordnet sind. Die erste Steuereinheit 10 und die
zweite Steuereinheit 20 sind jeweils an entfernten Enden
der Kette von Speichermodulen 100a, 100b, 100c, 100d angeordnet.
Die Speichermodule 100a, 100b, 100c und 100d sind
identisch ausgebildet.
-
An
Speichermodul 100a wird nun der Aufbau der Speichermodule 100a, 100b, 100c und 100d erläutert. Das
Speichermodul 100a umfasst einen Speicherbaustein 117 zum
Speichern von Daten. Bevorzugt ist der Speicherbaustein 117 ein
Speicherbaustein mit dynamischen wahlfreiem Zugriff (DRAM), in dem
Daten wiederholt gespeichert und ausgelesen werden können. Beispielweise
weist der Speicherbaustein 117 die Funktionalität eines Speicherbausteins
vom Double-Data-Rate-Type (DDR Typ) oder eines ähnlichen Speicherbausteintyps
auf.
-
Das
Speichermodul 100a weist ferner einen Schnittstellenblock 110 mit
einer ersten Eingangsschnittstelle 111, einer ersten Ausgangsschnittstelle 112,
einer zweiten Eingangsschnittstelle 113 und einer zweiten
Ausgangsschnittstelle 114 auf. Die Ein- und Ausgabeschnittstellen
können
Daten wie etwa Lesedaten, Schreibdaten, aber auch Befehlsdaten übertragen.
-
Über die
erste Eingangsschnittstelle 111 kann das Speichermodul 100a Daten
aus einer ersten Richtung empfangen. Über die erste Ausgangsschnittstelle 112 kann
das Speichermodul 100a Daten in einer zweiten Richtung
senden. Über
die zweite Eingangsschnittstelle 113 kann das Speichermodul 100a Daten
aus der zweiten Richtung empfangen. Über die zweite Ausgangsschnittstelle 114 kann das
Speichermodul 100a Daten in der ersten Richtung senden.
-
Das
Speichermodul 100a ist dazu ausgestaltet bei Empfang eines
entsprechenden Steuerbefehls entweder die erste Eingangsschnittstelle 111 und
die erste Ausgangsschnittstelle 112 zu deaktivieren oder die
zweite Eingangsschnittstelle 113 und die zweite Ausgangsschnittstelle 114 zu
deaktivieren.
-
Die
erste 112 und die zweite 114 Ausgangsschnittstelle
umfassen ferner jeweils einen Ausgangstreiber 115, 116,
der die Daten in einem rahmenbasierten Format ausgibt. Die Lese-
und Schreibdaten oder Befehlsdaten werden dabei in demselben Rahmenformat
ausgegeben. Die erste Ausgangsschnittstelle 112 und die
zweite Ausgangsschnittstelle 114 sind zur Übertragung
von Daten mit einer identischen Datenbreite ausgebildet. Die erste
Eingangsschnittstelle 111 und die zweite Eingangsschnittstelle 113 sind
zur Übertragung
von Daten mit derselben Datenbreite ausgebildet. Bevorzugt sind
die erste Eingangsschnittstelle 111, die zweite Eingangsschnittstelle 113,
die erste 112 Ausgangsschnittstelle und die zweite Ausgangsschnittstelle 114 zur Übertragung
von Daten mit derselben Datenbreite ausgebildet.
-
Über eine
Schnittstelle 118 ist ein Dateneingang des Speicherbausteins 117 sowohl
mit der ersten Eingangsschnittstelle 111 als auch mit der
zweiten Eingangsschnittstelle 113 des Speichermoduls 100a verbunden.
Mittels der Schnittstelle 118 können Schreib- oder Befehlsdaten
von der ersten Eingangsschnittstelle 111 oder Schreib-
oder Befehlsdaten von der zweiten Eingangsschnittstelle 113 an
den Speicherbaustein 117 übertragen werden.
-
Von
dem Speichermodul 100a über
die erste Eingangsschnittstelle 111 empfangene Datenrahmen,
die von der ersten Steuereinheit 10 oder von einem in der
zweiten Richtung benachbar ten Speichermodul gesendet wurden, werden über eine
zwischen der ersten Eingangsschnittstelle 111 und der zweiten Ausgangsschnittstelle 114 angeordnete
elektrisch leitfähige
Verbindung und die Ausgangsschnittstelle 114 an die zweite
Steuerschaltung 20 oder an ein in der ersten Richtung benachbartes
Speichermodul übertragen.
-
Von
dem Speichermodul 100a über
die zweite Eingangsschnittstelle 113 empfangene Datenrahmen,
die von der zweiten Steuereinheit 20 oder von einem in
der ersten Richtung benachbarten Speichermodul gesendet wurden,
werden über
eine zwischen der zweiten Eingangsschnittstelle 113 und
der ersten Ausgangsschnittstelle 112 angeordnete elektrisch
leitfähige
Verbindung und die erste Ausgangsschnittstelle 112 an die
erste Steuereinheit 10 oder an ein in der zweiten Richtung
benachbartes Speichermodul übertragen.
-
In
Abhängigkeit
von in dem Speicherbaustein 117 gespeicherten Daten fügen die
Ausgangstreiber 115, 116 Lesedaten in die Datenrahmen
ein und senden die Datenrahmen in die erste beziehungsweise zweite
Richtung.
-
Die
erste Steuereinheit 10 umfasst einen Mikroprozessor 19,
eine Steuerschaltung 15, einen Schalter 16, eine
erste Eingangsschnittstelle 11, eine zweite Eingangsschnittstelle 14,
eine erste Ausgangsschnittstelle 12 und eine zweite Ausgangsschnittstelle 13.
-
Der
Mikroprozessor 19 ist über
den Schalter 16 mit der Steuerschaltung 15 zum
Austausch von Daten gekoppelt. Ferner ist der Mikroprozessor 19 über den
Schalter 16 mit der ersten Ausgangsschnittstelle 12,
der ersten Eingangsschnittstelle 11, der zweiten Ausgangsschnittstelle 13 und
der zweiten Eingangsschnittstelle 14 zur Übertragung
von Daten gekoppelt.
-
Die
Steuerschaltung 15 ist mit der ersten Eingangsschnittstelle 11 gekoppelt,
um Daten von den Speichermodulen 100a, 100b, 100c und 100d aus der
zweiten Richtung zu empfangen. Die Steuerschaltung 15 ist
mit der zweiten Eingangsschnittstelle 14 gekoppelt, um
Daten aus der ersten Richtung zu empfangen. Die Steuerschaltung 15 ist
mit der ersten Ausgangsschnittstelle 12 gekoppelt, um Daten
an die Speichermodule 100a, 100b, 100c und 100d in
der ersten Richtung zu senden. Die Steuerschaltung 15 ist
mit der zweiten Ausgangsschnittstelle 13 gekoppelt, um
Daten in der zweiten Richtung zu senden.
-
Die
erste Eingangsschnittstelle 11 der ersten Steuereinheit 10 ist
mit der zweiten Ausgangsschnittstelle 13 der ersten Steuereinheit 10 gekoppelt,
um Daten in der zweiten Richtung zu übertragen. Die zweite Eingangsschnittstelle 14 der
ersten Steuereinheit 10 ist mit der ersten Ausgangsschnittstelle 12 der ersten
Steuereinheit 10 gekoppelt, um Daten in der ersten Richtung
zu übertragen.
-
Die
Kopplung der Steuerschaltung 15 mit der ersten Eingangsschnittstelle 11,
der zweiten Eingangsschnittstelle 14, der ersten Ausgangsschnittstelle 12 und
der zweiten Ausgangsschnittstelle 13 erfolgt über den
Schalter 16.
-
Die
zweite Steuereinheit 20 umfasst einen Mikroprozessor 29,
eine Steuerschaltung 25, einen Schalter 26, eine
erste Eingangsschnittstelle 21, eine zweite Eingangsschnittstelle 24, eine
erste Ausgangsschnittstelle 22 und eine zweite Ausgangsschnittstelle 23.
-
Der
Mikroprozessor 29 ist über
den Schalter 26 mit der Steuerschaltung 25 zum
Austausch von Daten gekoppelt. Der Mikroprozessor 29 ist
außerdem über den
Schalter 26 mit der ersten Ausgangsschnittstelle 22,
der ersten Eingangsschnittstelle 21, der zweiten Ausgangsschnittstelle 23 und
der zweiten Eingangsschnittstelle 24 zur Übertragung
von Daten gekoppelt.
-
Die
Steuerschaltung 25 ist mit der ersten Eingangsschnittstelle 21 gekoppelt,
um Daten von den Speichermodulen 100a, 100b, 100c und 100d aus der
ersten Richtung zu empfangen. Die Steuerschaltung 25 ist
mit der zweiten Eingangsschnittstelle 24 gekoppelt, um
Daten aus der zweiten Richtung zu empfangen. Die Steuerschaltung 25 ist
mit der ersten Ausgangsschnittstelle 22 gekoppelt, um Daten
an die Speichermodule 100a, 100b, 100c und 100d in
der zweiten Richtung zu senden. Die Steuerschaltung 25 ist
mit der zweiten Ausgangsschnittstelle 23 gekoppelt, um
Daten in der ersten Richtung zu senden.
-
Die
erste Eingangsschnittstelle 21 der zweiten Steuereinheit 20 ist
mit der zweiten Ausgangsschnittstelle 23 der zweiten Steuereinheit 20 gekoppelt,
um Daten in der ersten Richtung zu übertragen. Die zweite Eingangsschnittstelle 24 der
zweiten Steuereinheit 20 ist mit der ersten Ausgangsschnittstelle 22 der
zweiten Steuereinheit 20 gekoppelt, um Daten in der zweiten
Richtung zu übertragen.
-
Die
Kopplung der Steuerschaltung 25 mit der ersten Eingangsschnittstelle 21,
der zweiten Eingangsschnittstelle 24, der erste Ausgangsschnittstelle 22 und
der zweiten Ausgangsschnittstelle 23 erfolgt über den
Schalter 26.
-
Die
zweite Ausgangsschnittstelle 13 der ersten Steuereinheit 10 ist
mit der zweiten Eingangsschnittstelle 24 der zweiten Steuereinheit 20 gekoppelt. Über diese
Koppelung können
Daten von der ersten Steuereinheit 10 an die zweite Steuereinheit 20 übertragen
werden. Beispielsweise können
Daten von dem Mikroprozessor 19 der ersten Steuereinheit 10 an
den Mikroprozessor 29 der zweiten Steuereinheit übertragen
werden.
-
Die
zweite Ausgangsschnittstelle 23 der zweiten Steuereinheit 20 ist
mit der zweiten Eingangsschnittstelle 14 der ersten Steuereinheit 10 gekoppelt. Über diese
Koppelung können
Daten von der zweiten Steuereinheit 20 an die erste Steuereinheit übertragen
werden.
-
Die
erste Ausgangsschnittstelle 12 der ersten Steuereinheit 10 ist
mit der ersten Eingangsschnittstelle 111 des ersten Speichermoduls 100a der
Speichermodule gekoppelt, um Daten in der ersten Richtung zu übertragen.
Die erste Ausgangsschnittstelle 112 des ersten Speichermoduls 100a ist mit
der ersten Eingangsschnittstelle 11 der ersten Steuereinheit 10 gekoppelt,
um Daten in der zweiten Richtung zu übertragen. Das Speichermodul 100d bildet
das letzte Speichermodul der Kette von Speichermodulen 100a, 100b, 100c und 100d.
Die erste Ausgangsschnittstelle 22 der zweiten Steuereinheit 20 ist
mit der zweiten Eingangsschnittstelle 113 des letzten Speichermoduls 100d gekoppelt,
um Daten in der zweiten Richtung zu übertragen. Die zweite Ausgangsschnittstelle 114 des
letzten Speichermoduls 100d ist mit der ersten Eingangsschnittstelle 21 der zweiten
Steuereinheit 20 gekoppelt, um Daten in der ersten Richtung
zu übertragen.
Bei den übrigen
Speichermodulen 100b, 100c ist die jeweilige erste
Eingangsschnittstelle 111 mit der jeweiligen zweiten Ausgangsschnittstelle 114 ei nes
jeweiligen in der zweiten Richtung benachbarten Speichermoduls 100a, 100b gekoppelt,
um Daten in der ersten Richtung zu übertragen. Die jeweilige erste
Ausgangsschnittstelle 112 jedes der übrigen Speichermodule 100b, 100c ist
mit der jeweiligen zweiten Eingangsschnittstelle 113 des
jeweiligen in der zweiten Richtung benachbarten Speichermoduls 100a, 100b gekoppelt,
um Daten in der zweiten Richtung zu übertragen. Die jeweilige zweite
Eingangsschnittstelle 113 jedes der übrigen Speichermodule 100b, 100c ist mit
der jeweiligen ersten Ausgangsschnittstelle 112 eines jeweiligen
in der ersten Richtung benachbarten Speichermoduls 100c, 100 gekoppelt,
um Daten in der zweiten Richtung zu übertragen, und die jeweilige zweite
Ausgangsschnittstelle 114 jedes der übrigen Speichermodule 100b, 100c ist
mit der jeweiligen ersten Eingangsschnittstelle 111 des
jeweiligen in der ersten Richtung benachbarten Speichermoduls 100c, 100d gekoppelt,
um Daten in der ersten Richtung zu übertragen.
-
Ein
Speichermodul der Vielzahl von Speichermodulen 100a, 100b, 100c, 100d kann
als redundantes Speichermodul ausgebildet sein, in dessen Speicherbaustein 117 Daten
in Abhängigkeit
von in den Speicherbausteinen 117 der übrigen Speichermodule gespeicherten
Daten abgespeichert sind. Somit können bei einer Funktionsstörung eines
der Speichermodule durch das Auslesen jedes einzelnen der Vielzahl
von Speichermodulen die Daten des Speichermoduls mit der Funktionsstörung wiederhergestellt
werden.
-
Bei
der erfindungsgemäßen Halbleiteranordnung
können
Daten sowohl in der ersten Richtung als auch in der zweiten Richtung
zwischen der ersten Steuereinheit und jedem der Speichermodule übertragen
werden. Zudem können
Daten sowohl in der ersten Richtung als auch in der zweiten Richtung
zwischen der zweiten Steuereinheit und jedem der Speichermodule übertragen
werden.
-
Bei
der erfindungsgemäßen Halbleiteranordnung
haben sowohl die erste Steuereinheit 10 als auch die zweite
Steuereinheit 20 über
die jeweiligen ersten Ausgangsschnittstellen 12, 22 und
die jeweiligen ersten Eingangsschnittstellen 11, 21 direkten
Zugriff auf jedes Speichermodul der Vielzahl von Speichermodulen 100a, 100b, 100c, 100d.
-
Außerdem besteht
für die
erste Steuereinheit 10 und für die zweite Steuereinheit 20 die
Möglichkeit, über die
jeweiligen zweiten Ausgangsschnittstellen 13, 23 und
die jeweiligen zweiten Eingangsschnittstellen 14, 24 indirekt
auf jedes Speichermodul der Vielzahl von Speichermodulen 100a, 100b, 100c, 100d zuzugreifen.
Dabei erfolgt der Zugriff einer Steuereinheit auf die Speichermodule über eine
Datenübertragung über die
jeweilige andere der Steuereinheiten. Bei einer Unterbrechung der
direkten Verbindung zwischen der ersten Steuereinheit 10 oder der
zweiten Steuereinheit 20 und einem der Speichermodule 100a, 100b, 100c, 100d kann
die erste Steuereinheit 10 oder die zweite Steuereinheit 20 über die
indirekte Verbindung auf das eine Speichermodul 100a, 100b, 100c, 100d zugreifen.
-
Im
Unterschied zu einer Halbleiteranordnung mit nur einer Steuereinheit
ist bei der erfindungsgemäßen Halbleiteranordnung
lediglich eine weitere Verbindung, nämlich die Verbindung zwischen
der zweiten Steuereinheit und dem damit verbundenen Speichermodul
vorgesehen. Gleichzeitig wird durch die erfindungsgemäße Halbleiteranordnung
jedoch die Datenbreite der Datenübertragung
verdoppelt. Bei einer mehr als ein Spei chermodul umfassenden Halbleiteranordnung
wird somit die Leistungsaufnahme per Bandbreite signifikant reduziert.
-
Lese-
oder Schreibzugriffe auf die Speichermodule werden durch eine direkte
Kommunikation zwischen der ersten Steuereinheit 10 und
der zweiten Steuereinheit 20 über die jeweiligen zweiten
Ausgangsschnittstellen 13, 23 und die jeweiligen
zweiten Eingangsschnittstellen 14, 24 abgestimmt.
Beispielsweise kann die erste Steuereinheit Zugriffsrechte auf eine
erste Teilmenge der Vielzahl von Speichermodulen aufweisen, und
die zweite Steuereinheit 20 Zugriffsrechte auf eine zweite
Teilmenge der Vielzahl von Speichermodulen aufweisen, wobei die
zweite Teilmenge sich von der ersten Teilmenge unterscheidet.
-
Bei
der erfindungsgemäßen Halbleiteranordnung
teilen sich zwei Steuereinheiten eine Vielzahl von Speichermodulen.
An beiden Enden der Kette aus einer Vielzahl von Speichermodulen
ist eine Speichersteuerung angeordnet. Die Zugriffsberechtigung
zur Übertragung
von Lese- und Schreibdaten oder Befehlsdaten an die einzelnen Speichermodule wird über eine
direkte Kommunikation zwischen den beiden Steuereinheiten geregelt.
Beide Steuereinheiten können
einen direkten Lesezugriff auf die Vielzahl von Speichermodulen
aufweisen, so dass die Datenmenge, die zwischen den beiden Steuereinheiten ausgetauscht
wird, reduziert werden kann, da die Daten direkt aus der einzelnen
Speichermodulen der Vielzahl von Speichermodulen gelesen werden
können,
anstatt zunächst
von einer Steuereinheit gelesen zu werden und dann über eine
Verbindung zwischen den Steuereinheiten übertragen zu werden. Dadurch
wird die Latenzzeit signifikant reduziert.
-
Des
Weiteren hat die erfindungsgemäße Halbleiteranordnung
den Vorteil, dass sie eine redundante Kopplung der Steuereinheiten
vorsieht. Bei einer Funktionsstörung
der direkten Verbindung zwischen den einzelnen Steuereinheiten,
kann eine Kommunikation zwischen den einzelnen Steuereinheiten über die
Verbindung über
die Vielzahl von Speichermodulen erfolgen.
-
2 zeigt
eine Weiterbildung der in 1 dargestellten
Halbleiteranordnung. Zusätzlich
zu der in 1 dargestellten Halbleiteranordnung
weist die in 2 dargestellte Halbleiteranordnung
eine weitere Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' auf, wobei
jedes Speichermodul der weiteren Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' identisch zu
den Speichermodulen 100a, 100b, 100c, 100d ausgebildet
ist. Zudem weisen die erste Steuereinheit 10 und die zweite
Steuereinheit 20 jeweils eine dritte Eingangsschnittstelle 17, 27 und
eine dritte Ausgangsschnittstelle 18, 28 auf.
-
Die
Steuerschaltung 15 der ersten Steuereinheit 10 ist
mit der dritten Eingangsschnittstelle 17 der ersten Steuereinheit
gekoppelt, um Daten von einem der Speichermodule 100a', 100b', 100c', 100d' aus der zweiten
Richtung zu empfangen. Die Steuerschaltung 15 der ersten
Steuereinheit 10 ist mit der dritten Ausgangsschnittstelle 18 gekoppelt
um Daten an eines der Speichermodule 100a', 100b', 100c', 100d' in der ersten Richtung zu senden.
Die Steuerschaltung 25 der zweiten Steuereinheit 20 ist
mit der dritten Eingangsschnittstelle 27 der zweiten Steuereinheit 20 gekoppelt,
um Daten von einem der Speichermodule 100a', 100b', 100c', 100d' aus der ersten Richtung zu empfangen.
Die Steuerschaltung 25 der zweiten Steuereinheit 20 ist
ferner mit der dritten Ausgangsschnitt stelle 28 gekoppelt
um Daten an eines der Speichermodule 100a', 100b', 100c', 100d' in der zweiten Richtung zu senden.
-
Die
dritte Ausgangsschnittstelle 18 der ersten Steuereinheit 10 ist
mit der ersten Eingangsschnittstelle 111' des ersten Speichermoduls 100a' der weiteren
Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' gekoppelt, um Daten in der ersten
Richtung zu übertragen,
die erste Ausgangsschnittstelle 112' des ersten Speichermoduls 100a' der weiteren
Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' ist mit der dritten Eingangsschnittstelle 17 der
ersten Steuereinheit 10 gekoppelt, um Daten in der zweiten
Richtung zu übertragen,
die dritte Ausgangsschnittstelle 28 der zweiten Steuereinheit 20 ist
mit der zweiten Eingangsschnittstelle 113' des letzten Speichermoduls 100d' der weiteren
Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' gekoppelt, um Daten in der zweiten Richtung
zu übertragen
und die zweite Ausgangsschnittstelle 114' des letzten Speichermoduls 100d' der weiteren
Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' ist mit der dritten Eingangsschnittstelle 27 der
zweiten Steuereinheit 20 gekoppelt, um Daten in der ersten
Richtung zu übertragen.
-
Für die übrigen Speichermodule 100b', 100c' der weiteren
Vielzahl von Speichermodulen 100a', 100b', 100c', 100d' ist die erste Eingangsschnittstelle 111' mit der zweiten
Ausgangsschnittstelle 114' eines
in der zweiten Richtung benachbarten Speichermoduls 100a', 100b' gekoppelt,
um Daten in der ersten Richtung zu übertragen, die erste Ausgangsschnittstelle 112' mit der zweiten
Eingangsschnittstelle 113' des
in der zweiten Richtung benachbarten Speichermoduls 100a', 100b' gekoppelt, um
Daten in der zweiten Richtung zu übertragen, die zweite Eingangsschnittstelle 113' mit der ersten
Ausgangs schnittstelle 112' des
in der ersten Richtung benachbarten Speichermoduls 100c', 100d' gekoppelt,
um Daten in der zweiten Richtung zu übertragen, und die zweite Ausgangsschnittstelle 114' mit der ersten
Eingangsschnittstelle 111' des
in der ersten Richtung benachbarten Speichermoduls 100c', 100d' gekoppelt,
um Daten in der ersten Richtung zu übertragen.
-
3 zeigt
schematisch einen Lesevorgang einer ersten Art bei der in 1 dargestellten
Halbleiteranordnung. Die erste Steuereinheit 10 sendet
in einer ersten Richtung über
die erste Ausgangsschnittstelle 12 einen Lesebefehl an
ein Speichermodul. Beispielhaft ist hier der Lesevorgang für das Speichermodul 100a angegeben.
Der Lesebefehl wird von der ersten Eingangsschnittstelle 111 des Speichermoduls 100a empfangen
und über
die Schnittstelle 118 an den Speicherbaustein 117 weitergeleitet.
Der Speicherbaustein 117 erzeugt in Abhängigkeit von in dem Speicherbaustein 117 gespeicherten
Daten Lesedaten, die über
die zweite Ausgangsschnittstelle 114 in der ersten Richtung
gesendet werden und von den bezüglich
des Speichermoduls 100a in der ersten Richtung befindlichen
Speichermodulen 100b, 100c, 100d an die
erste Eingangsschnittstelle 21 der zweiten Steuereinheit 20 übertragen
werden. Von der ersten Eingangsschnittstelle 21 der zweiten
Steuereinheit 20 werden die Lesedaten über den Schalter 26 an
die zweite Ausgangsschnittstelle 23 der zweiten Steuereinheit 20 weitergeleitet
und an die zweite Eingangsschnittstelle 14 der ersten Steuereinheit 10 übertragen.
In der 3 sind die Befehlsdaten CMD als gestrichelte Pfeile,
und die Lesedaten RD als hervorgehobene Pfeile dargestellt. Die
Lesedaten RD werden bei der ersten Art des Lesebefehls in einen
Datenrahmen eingefügt,
der in derselben Richtung übertragen
wird, aus welcher der Datenrahmen mit dem Lesebefehl übertragen
wurde.
-
4 zeigt
einen weiteren Lesevorgang der ersten Art bei der in 1 dargestellten
Halbleiteranordnung. Die erste Steuereinheit 10 sendet über die zweite
Ausgangsschnittstelle 13 in einer zweiten Richtung einen
Lesebefehl an ein Speichermodul, wobei in 4 ein Lesebefehl
an das Speichermodul 100d dargestellt ist. Der Lesebefehl
wird von der zweiten Eingangsschnittstelle 24 der zweiten
Steuereinheit 20 empfangen und an die erste Ausgangsschnittstelle 22 der
zweiten Steuereinheit 20 weitergeleitet. Von dort wird
der Lesebefehl an die zweite Eingangsschnittstelle 113 des
Speichermoduls 100d übertragen
und über
die Schnittstelle 118 an den Speicherbaustein 117 weitergeleitet.
Der Speicherbaustein 117 erzeugt in Abhängigkeit von in dem Speicherbaustein 117 gespeicherten
Daten Lesedaten RD, die über
die erste Ausgangsschnittstelle 112 in der zweiten Richtung
gesendet werden und von den bezüglich
des Speichermoduls 100d in der zweiten Richtung angeordneten
Speichermodulen 100c, 100b, 100a an die
erste Eingangsschnittstelle 11 der ersten Steuereinheit 10 übertragen
werden. In 4 sind die Befehlsdaten CMD
als gestrichelte Pfeile, und die Lesedaten RD als hervorgehobene
Pfeile dargestellt.
-
Die
in 3 und 4 dargestellten Lesevorgänge sind
als Beispiele für
Lesevorgänge
zum Lesen von in den Speicherbausteinen der Speichermodule gespeicherten
Daten angegeben. Der Lesebefehl kann von der ersten Steuereinheit 10 sowohl in
der ersten Richtung als auch in der zweiten Richtung an ein für den Lesevorgang
vorgesehenes Speichermodul übertragen
werden. Die Lesedaten werden von dem Speichermodul in dieselbe Richtung
gesendet wie jener, aus der der Lesebefehl übertragen wurde. Jedes der
Speichermodule 100a, 100b, 100c, 100d kann von
der ersten Steuereinheit 10 sowohl in der ersten Richtung
als auch in der zweiten Richtung ausgelesen werden.
-
Die
zweite Steuereinheit 20 kann ebenfalls die Speichermodule
durch Übertragung
von Daten sowohl in der ersten als auch in der zweiten Richtung auslesen.
Der Lesevorgang erfolgt dann entsprechend den in den 3 und 4 angegebenen
Lesevorgängen,
wobei der Lesebefehl ausgehend von der zweiten Steuereinheit 20 gesendet
wird.
-
5 zeigt
schematisch einen Lesevorgang einer zweiten Art bei der in 1 dargestellten
Halbleiteranordnung. Die erste Steuereinheit 10 sendet über die
erste Ausgangsschnittstelle 12 in der ersten Richtung einen
Lesebefehl an ein Speichermodul, wobei in 5 ein Lesebefehl
an das Speichermodul 100a dargestellt ist. Der Lesebefehl
wird von der ersten Eingangsschnittstelle 111 des Speichermoduls 100a empfangen
und über
die Schnittstelle 118 an den Speicherbaustein 117 weitergeleitet.
Der Speicherbaustein 117 erzeugt in Abhängigkeit von in dem Speicherbaustein 117 gespeicherten
Daten Lesedaten, die über
die erste Ausgangsschnittstelle 112 in der zweiten Richtung
an die erste Eingangsschnittstelle 11 der ersten Steuereinheit übertragen werden.
Die Befehlsdaten CMD sind als gestrichelte Pfeile und die Lesedaten
RD als hervorgehobene Pfeile dargestellt. Die Lesedaten RD werden
bei der zweiten Art des Lesebefehls in einen Datenrahmen eingefügt, der
von dem Speichermodul 100a aus der anderen Richtung empfangen
wurde, als jener, aus der der Datenrahmen mit den Befehlsdaten empfangen
wurde.
-
6 zeigt
schematisch einen weiteren Lesevorgang der zweiten Art bei der in 1 dargestellten
Halbleiteranordnung. Die erste Steuereinheit 10 sendet über die
zweite Ausgangs schnittstelle 13 in der zweiten Richtung
einen Lesebefehl CMD an ein Speichermodul, wobei in 6 ein
Lesebefehl an das Speichermodul 100d dargestellt ist. Der
Lesebefehl wird von der zweiten Eingangsschnittstelle 24 der
zweiten Steuereinheit 20 empfangen und an die erste Ausgangsschnittstelle 22 der
zweiten Steuereinheit 20 weitergeleitet. Von dort wird
der Lesebefehl an die zweite Eingangsschnittstelle 113 des Speichermoduls 100d übertragen
und über
die Schnittstelle 118 an den Speicherbaustein 117 weitergeleitet.
Der Speicherbaustein 117 erzeugt in Abhängigkeit von in dem Speicherbaustein 117 gespeicherten
Daten Lesedaten RD, die über
die zweite Ausgangsschnittstelle 114 in der ersten Richtung
an die erste Eingangsschnittstelle 21 der zweiten Steuereinheit 20 gesendet
werden. Von dort werden die Lesedaten RD über den Schalter 26 und über die zweite
Ausgangsschnittstelle 23 der zweiten Steuereinheit 20 an
die zweite Eingangsschnittstelle 14 der ersten Steuereinheit übertragen.
-
Bei
der ersten Art des Lesevorgangs ist die Latenzzeit für einen
Lesevorgang in der ersten Richtung und für einen Lesevorgang in der
zweiten Richtung unabhängig
von der Position des zu lesenden Speichermoduls.
-
Bei
der zweiten Art des Lesevorgangs ist dagegen die Latenzzeit für einen
Lesevorgang abhängig
von der Position des zu lesenden Speichermoduls.
-
7 zeigt
schematisch einen Schreibvorgang bei der in 1 dargestellten
Halbleiteranordnung. Die erste Speichersteuerung 10 sendet
in der ersten Richtung über
die erste Ausgangsschnittstelle 12 einen Schreibbefehl
inklusive der zu schreibenden Schreibdaten WRT an das für den Schreibvorgang
vorgesehene Speichermodul, wobei in 7 ein Schreibvorgang für das Speichermodul 100b dargestellt
ist. An der ersten Eingangsschnittstelle 111 des Speichermoduls 100b wird
der Schreibbefehl inklusive der Schreibdaten WRT empfangen. Dann werden
die Schreibdaten WRT aus dem empfangenen Datenrahmen an den Speicherbaustein 117 weitergeleitet
und darin gespeichert.
-
8 zeigt
schematisch einen Schreibvorgang bei der in 1 dargestellten
Halbleiteranordnung. Die erste Steuereinheit 10 sendet
in der zweiten Richtung über
die zweite Ausgangsschnittstelle 13 einen Schreibbefehl
inklusive Schreibdaten WRT an ein Speichermodul, wobei in 8 ein
Schreibbefehl an das Speichermodul 100d dargestellt ist.
Der Schreibbefehl inklusive der Schreibdaten WRT wird von der zweiten
Eingangsschnittstelle 24 der zweiten Steuereinheit 20 empfangen
und über
den Schalter 26 und die erste Ausgangsschnittstelle 22 der
zweiten Steuereinheit 20 an die zweite Eingangsschnittstelle 113 des
Speichermoduls 100d weitergeleitet. Von dort werden die
Schreibdaten WRT aus dem Datenrahmen an den Speicherbaustein 117 weitergeleitet
und darin gespeichert.
-
Die
in 7 und 8 veranschaulichten Schreibvorgänge sind
als Beispiele für
Schreibvorgänge
zum Schreiben von Daten in die jeweiligen Speichermodule angegeben.
Der Schreibbefehl kann von der ersten Steuereinheit 10 sowohl
in der ersten Richtung als auch in der zweiten Richtung an ein für den Schreibvorgang
vorgesehenes Speichermodul übertragen
werden.
-
Die
zweite Steuereinheit 20 kann ebenfalls Schreibbefehle inklusive
Schreibdaten sowohl in der ersten als auch in der zweiten Richtung
an jedes der Speichermodule senden. Der Schreibvorgang erfolgt dann
entsprechend den in den 7 und 8 angegebenen
Schreibvorgängen,
wobei der Schreibbefehl inklusive der Schreibdaten ausgehend von
der zweiten Steuereinheit 20 gesendet wird.
-
In 9 ist
die Vorgehensweise bei einer Entfernung oder einer Ersetzung eines
der Speichermodule (100a, 100b, 100c, 100d)
dargestellt. In dem vorliegenden Beispiel wird das Speichermodul 100c (gepunktet
umfasst) entfernt bzw. ersetzt. Das Speichermodul 100c kann
beispielsweise eine Funktionsstörung
aufweisen, die von der ersten Steuereinheit 10 oder der
zweiten Steuereinheit 20 oder den benachbarten Speichermodulen 100b und 100d erkannt
wird. In diesem Fall kann eine Datenübertragung von dem Speichermodul 100b an
das Speichermodul 100d und umgekehrt nicht erfolgen.
-
Durch
einen entsprechenden Befehl, der von der ersten Steuereinheit in
der ersten Richtung oder von der zweiten Steuereinheit in der ersten
Richtung an das Speichermodul 100b gesendet wird, wird
das Speichermodul 100b in eine alternative Betriebsart versetzt,
bei der die Eingangs- und Ausgangsschnittstelle, die dem zu entfernenden
bzw. zu ersetzenden Speichermodul 100c benachbart sind,
deaktiviert sind. Diese Deaktivierung ist in 9 durch
gepunktete Strukturen des Speichermoduls 100b dargestellt.
-
Das
Speichermodul 100d, das in der ersten Richtung benachbart
zu dem zu entfernenden bzw. zu ersetzenden Speichermodul 100c benachbart
angeordnet ist, wird ebenso durch einen von der ersten Steuereinheit 10 in
der zweiten Richtung oder von der zweiten Steuereinheit in der zweiten
Richtung gesendeten entsprechenden Befehl in eine alternative Betriebsart
versetzt, bei der die Eingangs- bzw. Ausgangsschnittstelle, die
dem zu entfernenden bzw. ersetzenden Speichermodul 100c benachbart sind, deaktiviert
sind. Diese Deaktivierung ist in 9 durch
gepunktete Strukturen des Speichermoduls 100d dargestellt.
-
Nun
kann das Speichermodul entfernt bzw. ersetzt werden. Bei der Entfernung
des Speichermoduls 100c wird die Halbleiteranordnung in
zwei kettenartige Halbleiteranordnungen unterteilt, bei denen Lesevorgänge der
anhand der 5 und 6 beschriebenen
zweiten Art vorgenommen werden können.
-
Sobald
das zu ersetzende Speichermodul ersetzt wurde, sendet die erste
Steuereinheit 10 oder die zweite Steuereinheit 20 einen
entsprechenden Befehl in der zweiten Richtung an diejenigen Speichermodule,
die der Position des entfernten Speichermoduls benachbart sind,
d. h. bei dem Beispiel in 9 an die
Speichermodule 100b und 100d, um die Eingangs-
und die Ausgangsschnittstellen, die dem entfernten Speichermodul
benachbart sind, wieder zu aktivieren.