DE3781911T2 - Speichersystem unter benutzung eines gleichstromleistungsfreien gatterfeldes zur fehlerkorrektur. - Google Patents
Speichersystem unter benutzung eines gleichstromleistungsfreien gatterfeldes zur fehlerkorrektur.Info
- Publication number
- DE3781911T2 DE3781911T2 DE8787301603T DE3781911T DE3781911T2 DE 3781911 T2 DE3781911 T2 DE 3781911T2 DE 8787301603 T DE8787301603 T DE 8787301603T DE 3781911 T DE3781911 T DE 3781911T DE 3781911 T2 DE3781911 T2 DE 3781911T2
- Authority
- DE
- Germany
- Prior art keywords
- capacitors
- storage system
- capacitor
- error correction
- arrangement
- 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.)
- Expired - Fee Related
Links
- 239000003990 capacitor Substances 0.000 claims abstract description 53
- 230000015654 memory Effects 0.000 claims abstract description 15
- 238000007599 discharging Methods 0.000 claims abstract description 9
- 230000001934 delay Effects 0.000 claims 1
- 208000011580 syndromic disease Diseases 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 101000821100 Homo sapiens Synapsin-1 Proteins 0.000 description 5
- 102100021905 Synapsin-1 Human genes 0.000 description 5
- 102100029469 WD repeat and HMG-box DNA-binding protein 1 Human genes 0.000 description 5
- 101710097421 WD repeat and HMG-box DNA-binding protein 1 Proteins 0.000 description 5
- 230000004044 response Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 102100022002 CD59 glycoprotein Human genes 0.000 description 1
- 101150110971 CIN7 gene Proteins 0.000 description 1
- 101000897400 Homo sapiens CD59 glycoprotein Proteins 0.000 description 1
- 101150110298 INV1 gene Proteins 0.000 description 1
- 101100397044 Xenopus laevis invs-a gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Dram (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Direct Current Feeding And Distribution (AREA)
- Supply And Distribution Of Alternating Current (AREA)
- Power Conversion In General (AREA)
- Detection And Correction Of Errors (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf Speichersysteme zur Speicherung von digitalen Daten unter Benutzung von logischen Gatterfeldern zur Korrektur von Fehlern in den Daten. Insbesondere bezieht sich die Erfindung auf Systeme der vorgenannten Art, die mit niedriger Gleichstromleistung arbeiten.
- Bisher wurden hauptsächlich Speichersysteme benutzt, die mit dynamischen RAM-Chips (DRAM) arbeiteten. Viele Millionen solcher DRAM-Chips wurden jedes Jahr verkauft. Derzeit ist ein einziges DRAM-Chip in der Lage, 256.000 Informationsbits zu speichern, während vor zehn Jahren ein einziges DRAM-Chip nur 1.000 Bits speichern konnte.
- Zum größten Teil wurde die Anzahl von Bits, die in einem einzigen DRAM-Chip gespeichert werden konnte, durch Verkleinerung der Geometrie der verschiedenen Schaltungsmuster auf dem Chip erreicht, wodurch die Größe jeder Speicherzelle reduziert wurde. Je kleiner die Größe einer solchen DRAM-Speicherzelle wurde, um so mehr traten sogenannte "Soft"-Fehler auf.
- Solche "Soft"-Fehler sind Übergangsfehler und treten innerhalb eines Chips als Random-Fehler auf. Alpha-Teilchen, wie sie durch Spurenmengen von Verunreinigungen innerhalb des Chips existieren, sind die übliche Quelle solcher "Soft"-Fehler. Sobald die Alpha-Teilchen emittiert sind, erzeugen sie Paare von Elektronen-Löchern und verändern die in einer Zelle als Information gespeicherte Ladung. Je kleiner eine solche Zelle wird, um so kleiner wird auch die Ladungsänderung, die auftreten darf, ohne daß ein Fehler auftritt.
- Um solche "Soft"-Fehlerprobleme zu vermeiden, arbeiten Speichersysteme mit Fehlerkorrektur-Codes. Bei solchen Systemen wird ein Fehlercode zusammen mit den Daten in ein DRAM-Chip geschrieben. Dieser Fehlercode wird derart erzeugt, daß er Fehler, die während der Speicherung auftreten, beim Auslesen der Daten aus dem Speicher korrigiert. Hamming-Codes sind ein solches Beispiel von Fehlerkorrektur-Codes, und diese sind auf den Seiten 126 bis 128 in einem Buch mit dem Titel "Computer Networks" von Andrew Tanenbaum, 1981, Prentice-Hall, Inc., beschrieben. In diesem Buch sind auch andere Codes beschrieben.
- Ein Problem bei der Benutzung von Fehlerkorrektur-Codes besteht jedoch darin, daß die erforderliche Anzahl von Prüfbits mit der Anzahl der Datenbits pro Datenwort und mit der Anzahl von Fehlern, die in einem Datenwort korrigiert werden sollen, ansteigt. Zum Beispiel wird auf Seite 27 des vorerwähnten Buches die Formel m+r+1< 2r angegeben, die für Hamming-Codes zur Korrektur eines einzigen Bitfehlers erfüllt sein muß, wobei m die Anzahl von Datenbits pro Wort und r die Anzahl von Prüfbits pro Wort angeben.
- Weist das gespeicherte Datenwort 118 Bits auf und sollen über Hamming-Codes zwei Fehler in dem Datenwort korrigiert werden, so sind 17 Prüfbits pro Datenwort erforderlich. Diese Prüfbits haben 2¹&sup7; oder 131.072 verschiedene Binärkombinationen, die decodiert werden müssen, wenn ein Fehler auftritt, um festzustellen, welche Bits in dem Datenwort korrigiert werden müssen. Ein solches Decodieren erfordert einen hohen Aufwand an Logik, die wiederum einen entsprechenden Leistungsverbrauch hat. Es besteht daher das Problem, wie entsprechende Schaltungen aufgebaut sein müssen, damit der Leistungsverbrauch bis zu einem Punkt reduziert wird, an dem das System in ein kleine Anzahl von Halbleiterchips integriert werden kann, ohne dabei den maximalen Leistungsverbrauch jedes Chips zu überschreiten.
- FR-A-22 92 383 beschreibt ein programmierbares logisches Gatterfeld, das eine Rückkopplungsschaltung zum Verbinden eines Ausgangs des Feldes mit einem Eingang des Feldes aufweist, um auf diese Weise eine sequentielle Logik darzustellen. Das Gatterfeld benutzt eine Reihe von Speicherkondensatoren, deren Ladung einen logischen Zustand anzeigt. Diese Anordnung reduziert den Stromverbrauch gegenüber bisher bekannten Felder mit Flip-Flops als logische Speicher. Das Aufladen und Entladen dieser Kondensatoren wird jedoch durch sequentielle Impulse gesteuert, so daß die Arbeitsgeschwindigkeit des Feldes verhältnismäßig niedrig ist.
- Es ist deshalb eine Primäraufgabe der vorliegenden Erfindung, ein Speichersystem vorzuschlagen, daß eine schnell arbeitende Fehlerkorrekturlogik aufweist, die mit niedrigem Gleichstromverbrauch arbeitet.
- Die Erfindung ist im Anspruch 1 definiert.
- Verschiedene Merkmale und Vorteile der Erfindung gehen aus der nachfolgenden detaillierten Beschreibung in Verbindung mit den folgenden Zeichnungen hervor.
- Es zeigen:
- Fig. 1 ein Speichersystem, das gemäß der Erfindung aufgebaut ist;
- Fig. 2 ein Zeitdiagramm mit den verschiedenen Signalen, wie sie während eines Lesezyklus bei dem Speichersystem nach Fig. 1 auftreten;
- Fig. 3 ein detailliertes Schaltbild eines Enable-Moduls und eines Fehlerkorrektur-Moduls des Systems nach Fig. 1;
- Fig. 4 ein detailliertes Logikschaltbild eines Steuermoduls des Systems nach Fig. 1;
- Fig. 5 ein Satz Gleichungen, die den Leistungsverbrauch des Systems nach Fig. 1 angeben;
- Fig. 6 ein detailliertes Schaltbild einer alternativen Ausführungsform eines Enable-Moduls und eines Fehlerkorrektur-Moduls für das System nach Fig. 1;
- Fig. 7 ein detailliertes Schaltbild einer anderen Ausführungsform eines Enable-Moduls und eines Fehlerkorrektur-Moduls für das System nach Fig. 1;
- Fig. 8 ein Zeitdiagramm, das die Arbeitsweise der Schaltung nach Fig. 7 darstellt; und
- Fig. 9 ein detailliertes Schaltbild einer Ausführungsform für das OR-Gatter in Fig. 7.
- Nachfolgend sollen anhand der Fig. 1 Details eines Speichersystems beschrieben werden, das einen niedrigen Stromverbrauch hat und gemäß der Erfindung aufgebaut ist. Dieses System enthält einen Eingangspuffer 10, ein Steuermodul 11, ein dynamisches RAM 12, ein Register 13, ein Prüfbitgenerator 14, einen Komparator 15, ein Leistungs-Enable-Modul 16, ein Fehlerkorrektur-Modul 17 und einen Ausgangspuffer 18. Alle diese Einheiten sind über Busse 20 bis 28 miteinander verbunden, wie in Fig. 1 gezeigt. Zusätzlich sind diese Einheiten über Leitungen 30 bis 36 zwecks Zuführung von Steuersignalen mit der Steuereinheit 11 gekoppelt.
- Im Betrieb werden Lese- und Schreibbefehle für das dynamische RAM 12 über den Bus 20 von Mehrfacheinheiten (nicht gezeigt) an den Eingangspuffer 10 geliefert. Diese Befehle werden dann vom Eingangspuffer 10 über den Bus 21 mittels des Steuermoduls 11 sequentiell abgerufen. Jeder dieser Befehle enthält eine Adresse, die das Steuermodul 11 über den Bus 22 an das dynamische RAM 12 sendet.
- Ist der Befehl ein Schreibbefehl, so wird dieser von 118 Datenbits im Puffer 10 begleitet. Diese Daten gelangen über den Bus 21 zum Generator 14, der 17 Prüfbits erzeugt. Dies Prüfbits werden zusammen mit den Datenbits in das Register 13 geschrieben und von dort an der am Bus 22 anstehenden Adresse in das dynamische RAM 12 geschrieben. Ist der Befehl ein Lesebefehl, so werden 118 Datenbits und 17 Prüfbits an der vom Bus 22 bezeichneten Adresse im RAM 12 aufgerufen. Diese Bits gelangen in das Register 13 und werden über den Bus 21 an den Prüfbitgenerator 14 gegeben. Dieser Generator regeneriert dieselben 17 Prüfbits, die ursprünglich zusammen mit den Daten im dynamischen RAM 12 gespeichert waren. Sind die Datenbits im dynamischen RAM 12 nicht von Fehlern begleitet, so sind die Prüfbits vom Generator 14 die gleichen wie die Prüfbits im Register 13.
- Der Komparator 15 stellt irgendwelche Diskrepanzen zwischen den Prüfbits vom Generator 14 und den Prüfbits im Register 13 fest. Er vergleicht diese Prüfbits und produziert 17 Syndrom-Bits auf dem Bus 26, die das Ergebnis des Vergleichs anzeigen. Ist irgendeines dieser Syndrom- Bits nicht gleich 0, so existiert in den Datenbits ein Fehler.
- Alle diese Syndrom-Bits auf dem Bus 26 werden zusammen mit einem Betriebsspannungsfehler-Korrekturmodul-Signal (PWRECC) auf der Leitung 35 an das Stromversorgungs- Enable-Modul 16 geschickt. Dieses Modul spricht auf die empfangenen Signale an und bewirkt den Betrieb und Leistungsverbrauch in dem Fehlerkorrektur-Modul 17. Wenn das Fehlerkorrektur-Modul 17 wirksam geschaltet ist, erzeugt es 118 Fehlerkorrektursignale (ER1 bis ER118) aus den 17 Syndrom-Bits und schickt diese über den Bus 28 zum Ausgangspuffer 18. Ist das i-te Fehlersignal ERi wahr, so ist das i-te Datenbit auf dem Bus 21 fehlerhaft und muß im Ausgangspuffer 18 durch Invertieren korrigiert werden.
- Nachfolgend soll anhand der Fig. 2 der Zeitablauf beschrieben werden, und zwar wie der Lesebefehl abgewickelt wird. Wie gezeigt, wird jeder Lesebefehl während eines Lesezyklus abgearbeitet, der aus acht sequentiellen Taktimpulsen t&sub0; bis t&sub7; besteht. Ein Taktimpuls hat eine Länge von 45 Nanosekunden. Vom Zeitpunkt t&sub0; bis zum Zeitpunkt t&sub2; bewirkt das Modul 11, daß das Zeilenadresssignal (RAS) auf der Leitung 31 wahr wird, und vom Zeitpunkt t&sub2; bis zum Zeitpunkt t&sub5; bewirkt das Modul 11, daß das Spaltenadressignal (CAS) auf der Leitung 32 wahr wird. Die Zeilenadressen und Spaltenadressen werden den dynamischen RAM auf dem Bus 22 zusammen mit den RAS- und CAS-Signalen zugeführt.
- Etwa in der Mitte zwischen t&sub3; und t&sub4; spricht das dynamische RAM 12 auf die RAS- und CAS-Signale an, indem es Datenbits und Prüfbits auf dem Bus 23 aus dem adressierten Speicherplatz bereitstellt. Diese Bits werden im Register 13 abhängig von einem Registerlade-Signal (LOADREG), das durch das Steuermodul 11 auf der Leitung 43 geliefert wird, gespeichert. Vom Register 13 gelangen die Datenbits und Prüfbits durch den Generator 14 und den Komparator 15, um die 17 Syndrom-Bits auf dem Bus 26 zu erzeugen. Diese werden zum Zeitpunkt t&sub5; stabil.
- Vom Zeitpunkt t&sub5; bis zum Zeitpunkt t&sub6; bewirkt das Steuermodul 11, daß das PWRECC-Signal auf der Leitung 35 wahr wird, und abhängig davon schickt die Enable-Schaltung 16 die Syndrombits auf dem Bus 26 über den Bus 27 an das Fehlerkorrektur-Modul. Zu allen anderen Zeitpunkten während des Lesezyklus ist das PWRECC-Signal falsch, und abhängig davon bewirkt die Leistungs-Enable-Schaltung, daß die Signale auf dem Bus 27 in einen Zustand gelangen, in dem im Fehlerkorrektur-Modul keine Gleichstromleistung verbraucht wird.
- Um den Lesezyklus abzuschließen, liefert das Steuermodul 11 zum Zeitpunkt t&sub6; ein Lade-Ausgangspuffer-Signal (LOADOQ) auf der Leitung 36 an den Ausgangspuffer 18. Dies zeigt dem Ausgangspuffer an, daß die Fehlerkorrektursignale auf dem Bus 28 stabil sind und ausgenutzt werden können, um irgendwelche Fehler in den Daten auf dem Bus 21 zu korrigieren. Schließlich liefert das Steuermodul 11 zum Zeitpunkt t&sub7; ein Takt-Eingangspuffer-Signal (CLOCKIQ) an den Eingangspuffer auf der Leitung 30, wodurch bewirkt wird, daß der Eingangspuffer den nächsten Befehl über den Bus 21 an das Speichersystem liefert.
- Nachfolgend soll anhand der Fig. 3 der detaillierte Aufbau einer Ausführungsform des Leistungs-Enable-Moduls 16 und des Fehlerkorrektur-Moduls 17 beschrieben werden. In dieser Ausführungsform enthält das Modul 16 17 Inverter INV1 bis INV17 sowie 17 Paare von NOR-Gattern NOR1a, NOR1b bis NOR17a, NOR17b. Diese Gatter sind, wie gezeigt, miteinander gekoppelt.
- Das Modul 17 enthält 136 AND-Gatter AND1 bis AND136. Jedes dieser AND-Gatter besteht aus 17 Transistorpaaren.
- Diese Transistorpaare sind mit T1a, T1b bis T17a, T17b bezeichnet. Alle diese Transistoren sind miteinander gekoppelt, wie dargestellt. Die Verbindungen zwischen den Leitungen auf dem Bus 27 und den Gate-Elektroden der Transistoren sind maskenprogrammierbar, um auf diese Weise die UND-Operation in Übereinstimmung mit den angewandten Fehlerkorrektur-Codes durchzuführen.
- Jedes dieser AND-Gatter erhält von einem Bus über entsprechende Lastwiderstände R1 bis R136 eine Vorspannung VDD. Die Ausgangssignale dieser AND-Gatter sind Minterme, die mit MIN1 bis MIN136 bezeichnet sind. Diese sind ODER-mäßig verknüpft durch ein einziges OR-Gatter 40. Diese ODER-Verknüpfung erzeugt gerade eines der Fehlerkorrektursignal ER1 bis ER118 auf der Leitung 40a, und auf diese Weise ist die Schaltung gemäß Fig. 3 im Enable-Modul 16 und im Fehlerkorrektur-Modul 17 der Fig. 1 118-mal vorhanden.
- Im Betrieb wird der invertierte Wert des PWRECC-Signals vom Inverter 41 an jedes der NOR-Gatter-Paare NOR1a, NOR1b bis NOR17a, NOR17b gesandt. Ist das Signal PWRECC also falsch, 50 ist die Ausgangsspannung jedes der NOR- Gatter-Paare niedrig. Hierdurch wiederum schaltet die niedrige Ausgangsspannung alle Transistoren, die die AND-Gatter AND1 bis AND136 bilden, ab. Diese abgeschalteten Transistoren haben zur Folge, daß vom Spannungsbus VDD kein Strom durch die Lastwiderstände R1 bis R136 fließt und somit keine Leistung verbraucht wird.
- Ist dagegen das PWRECC-Signal wahr, so bestimmt der Zustand der Syndrom-Bits SYN1 bis SYN17 den Zustand der Ausgangssignale der NOR-Gatter. Ist z. B. SYN1 wahr, so hat die Ausgangsspannung des Gatters NOR1a einen hohen Wert und die Ausgangsspannung des Gatters NOR1b ist niedrig, und umgekehrt. Diese Ausgangsspannungen der NOR- Gatter bestimmen, welche der Transistoren der AND-Gatter AND1 bis AND136 einschalten und welche dieser Transistoren abgeschaltet sind. Wird irgendein Transistor eines bestimmten AND-Gatters eingeschaltet, so fließt durch den Lastwiderstand dieses AND-Gatters Strom, so daß Leistung verbraucht wird.
- In Fig. 4 sind nun Einzelheiten der Schaltung im Steuermodul 11 zu sehen, die das nachfolgend beschriebene PWRECC-Signal erzeugt. Diese Schaltung enthält ein Flip- Flop 50, ein AND-Gatter 51 und einen achtstufigen Ringzähler 52, die alle miteinander gekoppelt sind, wie in Fig. 4 gezeigt.
- Der Ringzähler 52 erzeugt Signale t&sub0; bis t&sub7;, und der Ausgang Q des Flip-Flops 50 erzeugt ein Signal PWRECC. Das Flip-Flop wird durch ein AND-Gatter 51 zum Zeitpunkt t&sub5; nur dann eingestellt, wenn ein Lesezyklus durchgeführt werden soll; es wird jedoch immer zum Zeitpunkt t&sub6; zurückgestellt.
- Das PWRECC-Signal ist also, wie in Fig. 2 gezeigt, während 7/8 jedes Lesezyklus falsch und während des gesamten Schreibzyklus ebenfalls falsch. Im Ergebnis wird die im Fehlerkorrektur-Modul 17 sonst verbraucht Leistung um einen Faktor vermindert, der 1/8 mal dem Verhältnis der Lesezyklen zu den gesamten Lese-Schreib-Zyklen beträgt. Wird z. B. ein Verhältnis von zwei Lesezyklen auf einen Schreibzyklus angenommen, so wird der Leistungsverbrauch im Fehlerkorrektur-Modul 17 auf 1/12 reduziert.
- In Fig. 4 ist auch ein weiteres AND-Gatter 53 gezeigt, das das AND-Gatter 51 ersetzen kann, um die Leistungsaufnahme des Fehlerkorrektur-Moduls 17 weiter zu reduzieren. Das Gatter 53 setzt das Flip-Flop 50 zum Zeitpunkt t&sub5; während eines Lesezyklus nur dann, wenn alle 17 Syndrom-Bits nicht gleich 0 sind. Das dem AND-Gatter 53 zugeführte Signal NONZSYN wird durch eine ODER-Verknüpfung des Warenzustandes aller 17 Syndrom-Bits gebildet. Alle Syndrom-Bits sind gleich 0, wenn in den Datenbits des Registers 13 keine Fehler vorhanden sind. Entsprechend einer konservativen Annahme beträgt das Verhältnis von Lesezyklen mit Fehlern zu den gesamten Lesezyklen etwa 1 : 1000.
- Fig. 5 zeigt einige Zahlenbeispiele zur Erläuterung der Leistungseinsparungen. Gleichung 1 gibt die Gleichstromleistung (PA) pro AND-Gatter der Schaltung nach Fig. 3 an, und zwar als Spannung VDD mal dem Strom (I), der durch den Lastwiderstand des AND-Gatters fließt, wenn irgendeiner der Transistoren des AND-Gatters eingeschaltet ist. Um ein Fehlerkorrektursignal zu erzeugen, müssen 136 AND-Gatter vorgesehen sein, so daß die Gleichung 2 angibt, daß die Leistung (PER) pro Fehlerkorrektursignal gleich PA·136 ist. Weiter ist eine Gesamtsumme von 118 Fehlerkorrektursignalen vorhanden, so daß Gleichung 3 angibt, daß die gesamte Leistung PT, die im Fehlerkorrektur-Modul verbraucht wird, PER·118 beträgt.
- Typische Werte für die Spannung VDD sind 5 Volt, und der Strom I beträgt 0,2 mA. Dies bedeutet, entsprechend Gleichung 4, eine Gesamtleistung PT von 160 Watt. Eine solche Verlustleistung ist so groß, daß sie jedes einzelne Halbleiterchip zerstören würde, in dem eine solche Fehlerkorrekturschaltung enthalten ist. Eine realistische Verlustleistung pro Chip liegt bei etwa 5 Watt, so daß der Aufbau eines Fehlerkorrektur-Moduls, das 160 Watt verbraucht, 32 Chips erfordern würde.
- Im Vergleich dazu sagt Gleichung 5 aus, daß durch Anwendung der Enable-Schaltung 16 und des AND-Gatters 51 im Modul 11 die 160 Watt auf nur 13,3 Watt reduziert werden. Beträgt also die maximale Verlustleistung pro Chip 5 Watt, so kann die Fehlerkorrektur-Schaltung schon mittels nur drei Chips realisiert werden.
- Jedes dieser drei Chips würde 1/3 der 118 Schaltungen nach Fig. 3 enthalten. Somit ist die Gesamtanzahl von AND-Gattern pro Chip also (118:3) (136) oder 5440; die Gesamtanzahl von OR-Gattern pro Chip läge bei (118:3) oder (40), die Gesamtanzahl von NOR-Gattern pro Chip läge bei (118:3) (17) (2) oder 1360; und die Gesamtanzahl von Invertern pro Chip läge bei (118:3) (18) oder 720. Dies führt zu einer Gesamtanzahl von Gattern von 7560 (von denen 5440 nicht dauernd Leistung verbrauchen); diese Anzahl paßt unter Anwendung der heutigen Technologien leicht in ein Chip.
- Weiter gibt die Gleichung 6 an, daß mit der Verwendung eines AND-Gatters 53 in der Schaltung nach Fig. 4 die 160 Watt auf weniger als 1 Watt reduziert werden. Hierdurch ist es möglich, daß die Fehlerkorrektur-Schaltung in einem einzigen Halbleiterchip untergebracht werden kann.
- Fig. 6 zeigt nun eine andere Ausführungsform für das Leistungs-Enable-Modul 16. In dieser Ausführungsform gibt das Bezugszeichen 16', und in der Zeichnung sind die Verbindung mit dem Fehlerkorrektur-Modul 17 gezeigt.
- Das Modul 16' enthält 136 Transistoren X1 bis X136. Diese Transistoren sprechen auf das PWRECC-Signal an, um die Vorspannung VDD an die AND-Gatter AND1 bis AND136 zu koppeln oder von diesen zu sperren. Hierzu sind die Gate-Elektroden der Transistoren X1 bis X136 an das PWRECC-Signal in der Weise angeschlossen, daß sie nur dann einschalten, wenn das Signal wahr ist.
- Werden die Transistoren X1 bis X136 gesperrt, so fließt von dem VCC-Bus durch die Gatter AND1 bis AND136 kein Strom. Es wird somit keine Gleichstromleistung verbraucht, und zwar unabhängig von dem Zustand der Syndrom-Bits. Sind die Transistoren X1 bis X136 jedoch eingeschaltet, so verbraucht das Fehlerkorrektur-Modul Leistung, während es abhängig von den Syndrom-Bits die Fehlerkorrektursignal erzeugt. Die Schaltung nach Fig. 6 erzeugt, wie auch die Schaltung nach Fig. 3, nur eines der Fehlerkorrektursignale, d. h., in dem Fehlerkorrektur-Modul 17 ist die Schaltung 118-mal vorhanden.
- Die Fig. 7 und 8 zeigen den Aufbau und die Arbeitsweise einer weiteren Ausführungsform der Erfindung. Bei dieser Ausführungsform sind das Leistungs-Enable-Modul der Fig. 3 und das Leistungs-Enable-Modul 16' der Fig. 6 an das vorher beschriebene Fehlerkorrektur-Modul 17 angeschlossen, und das Gatter 41 ist entfallen. In Fig. 7 sind die Bezugszeichen, die die verschiedenen Komponenten der Module 16, 16' und 17 bezeichnen, die gleichen wie vor in Verbindung mit den Fig. 3 und 6 beschrieben.
- In der Ausführungsform nach Fig. 7 sind die Leitungen, an denen die Minterme gebildet werden, durch je einen Kondensator C mit Masse verbunden. Es sind somit 136 Kondensatoren vorgesehen. Jeder dieser Kondensatoren C kann durch eine in Sperrichtung vorgespannte Verbindung einer P-N-Diode gebildet werden oder aus einem Paar von im Abstand parallel zueinander angeordneten Platten. Der Kondensator kann entweder an einem Punkt der die Minterme tragenden Leitungen oder aber entlang dieser Leitung verteilt angeordnet sein. Vorzugsweise beträgt die Kapazität des Kondensators C 0,05 bis 5,00 pF.
- Ein wichtiges Merkmal der Ausführungsform nach Fig. 7 besteht darin, daß der Gleichstromleistungsverbrauch praktisch auf 0 reduziert wird. Wie dies erreicht wird, kann durch eine Analyse der Signalformen nach Fig. 8 erläutert werden. Vom Zeitpunkt t&sub0; bis zum t&sub2; ist das PWRECC-Signal hoch. Als Ergebnis sind die Transistoren X1 bis X136 im Modul 16' eingeschaltet, und zur gleichen Zeit sind alle Ausgangssignale der NOR-Gatter im Modul 16 zwangsweise niedrig. Somit fließt nur ein kurzer Übergangsstrom durch die Transistoren X1 bis X136, um die Kondensatoren C, die an die Leitungen mit den Minterm-Signalen MIN1 bis MIN136 verbunden sind, vorhanden. Sobald die Kondensatoren C auf die Spannung VDD aufgeladen sind, fließt kein weiterer Strom.
- Nachdem die Syndrom-Signale SYN1 bis SYN17 stabilisiert sind, wird das PWRECC-Signal zwangsweise niedrig. Fig. 8 zeigt die Signale SYN1 bis SYN17, wie sie zum Zeitpunkt t&sub1; stabilisiert sind, sowie das PWRECC-Signal, das zum Zeitpunkt t&sub2; niedrig wird. Ist das PWRECC-Signal niedrig, so schalten die Transistoren X1 bis X136 im Modul 16' ab, so daß eine weitere Aufladung des Kondensators C verhindert wird. Zur gleichen Zeit sind die Ausgangssignale der NOR-Gatter im Modul 16 entweder hoch oder niedrig, und zwar abhängig von dem Zustand der Syndrom-Signale SYN1 bis SYN17.
- Jedes hohe Ausgangssignal von einem NOR-Gatter, das einem Transistor eines bestimmten AND-Gatters zugeführt wird, entlädt den Kondensator C dieses AND-Gatters. Z.B. wird der Kondensator C des AND-Gatters 136 entladen, wenn das Ausgangssignal des NOR-Gatters 1a hoch ist und dem Transistor T1a im AND-Gatter 136 zugeführt wird. Eine solche Entladung tritt zwischen den Zeitpunkten t&sub2; und t&sub3; (siehe Fig. 8) auf.
- Nach der Entladung des Kondensators C bleiben die Minterm-Signal MIN1 bis MIN136 im wesentlichen stabil, so lange das PWRECC-Signal niedrig bleibt. Jeder Kondensator C hat einen geringfügigen Leckstrom, so daß er sich langsam entlädt; diese Entladung durch Leckstrom ist jedoch für den Zeitraum von einigen Mikrosekunden vernachlässigbar. Während dieses Zeitraums kann eine ODER- Verknüpfung der Minterm-Signale durch das Gatter 40 direkt erfolgen oder nach entsprechender Verriegelung in einem Flip-Flop. Danach kann die Sequenz vom Zeitpunkt t&sub0; bis zum Zeitpunkt t&sub4; dadurch wiederholt werden, daß das PWRECC-Signal auf einen hohen Wert gebracht wird, so daß die Kondensatoren C wieder aufgeladen werden.
- Nachfolgend sollen anhand der Fig. 9 Details einer bevorzugten Ausführungsform eines OR-Gatters 40 beschrieben werden. Dieses OR-Gatter enthält eine Mehrzahl von Transistoren M1 bis M136 (je einer für jedes Minterm), einen anderen Transistor N1, einen Inverter 40b, einen anderen Transistor 40c, einen Kondensator C' und ein AND-Gatter 40d. Alle diese Komponenten sind, wie in Fig. 9 gezeigt, miteinander gekoppelt. Insbesondere ist jedes Minterm-Signal MIN1 bis MIN136 an je eine Gate-Elektrode eines der Transistoren M1 bis M136 angeschlossen. Ein hohes MIN1-Signal schaltet den Transistor M1 ein, ein hohes MIN2-Signal schaltet Transistor M2 an, usw.
- Wie bereits in Verbindung mit Fig. 8 erläutert wurde, sind alle Minterm-Signale dann hoch, wenn das Steuersignal PWRECC hoch ist. Aus diesem Grund sind während dieses Zeitraums alle Transistoren M1 bis M136 eingeschaltet und schließen somit die Leitung 40a zum Transistor N1 kurz. Der Transistor N1 wird jedoch gesperrt, wenn das Signal PWRECC hoch ist. Aus diesem Grunde wird die Leitung 40a nicht nach Masse kurzgeschlossen, sondern statt dessen der dazugehörige Kondensator C' über den Transistor 40c auf die Spannung VDD aufgeladen.
- Wenn das Signal PWRECC niedrig wird, schaltet Transistor N1 ein und erlaubt es dem Kondensator C', sich zu entladen. Diese Entladung tritt jedoch nur dann auf, wenn irgendeiner der Minterme MIN1 bis MIN136 hoch bleibt. Werden alle diese Minterme während des Zeitraums von t&sub2; bis t&sub3; niedrig, bleibt der Kondensator C' aufgeladen.
- Ein Hauptmerkmal des OR-Gatters nach Fig. 9 besteht darin, daß es praktisch keine Gleichstromleistung verbraucht. Dies kommt daher, da niemals ein konstanter Gleichstrom jemals durch die Transistoren 40c und N1 fließt. Außerdem arbeitet das OR-Gatter nach Fig. 9 außerordentlich schnell, um das Vorhandensein oder die Abwesenheit des Fehlersignals ERi festzustellen. Diese Feststellzeit beginnt zum Zeitpunkt t&sub2; (wenn das Signal PWRECC niedrig wird) und dauert so lange, bis entweder der Kondensator C oder der Kondensator C' sich entlädt. In keinem Fall erfordert die Festelloperation, daß sich beide Kondensatoren sequentiell entladen, oder daß sequentiell ein Kondensator aufgeladen und der andere entladen wird.
- Ebenso wie der Kondensator C kann der Kondensator C' durch ein in Sperrichtung vorgespannte P-N-Diode gebildet werden oder durch ein Paar von zueinander im Abstand parallel angeordneten Platten. Diese Komponenten können entweder an einer Stelle konzentriert sein oder sich entlang der Leitung 40a verteilen. Vorzugsweise ist die Kapazität des Kondensators C' mindestens 50% größer als die Kapazität des Kondensators C, so daß er seine Ladung behält, während sich der Kondensator C während des Zeitraums t&sub2;-t&sub3; entlädt. Alternativ kann das PWRECC-Signal zum Inverter 40b geringfügig verzögert werden, damit der Kondensator C beginnen kann, sich zu entladen, bevor dies für den Kondensator C' erfolgt; und dies ist die Funktion des AND-Gatters 40d.
- Die vorliegende Erfindung ist nicht auf ein spezielles Speichersystem beschränkt, das nur mit einem bestimmten Fehlerkorrektur-Code arbeitet. Auf jeden Fall können die Anzahl von AND-Gattern in den Fig. 3 und 6 sowie die Minterme, die dadurch gebildet werden, durch maskenprogrammierbare Verbindungen zum Bus 27 so angepaßt werden, daß viele verschiedene Codes angewandt werden können.
Claims (10)
1. Speichersystem mit Fehlerkorrektur,
mit einer Speicheranordnung, der eine Adresse zugeführt
wird und die Datenbits und Prüfbits an dieser Adresse
ausliest, und
mit einem gleichstromleistungsfreien, logischen
Gatterfeld, dem Eingangssignale zuführbar sind, die aus den
Prüfbits abgeleitet sind, um Fehlersignale aus den
Eingangssignalen zu erzeugen, die Fehler in den Datenbits
korrigieren,
wobei das logische Gatterfeld eine Mehrzahl von
Kondensatoren (C), eine erste Aufladeanordnung (X1) zum
Aufladen aller Kondensatoren der Mehrzahl von Kondensatoren,
eine erste Entladeanordnung (T1) zum selektiven Entladen
jedes der Kondensatoren abhängig von einer
entsprechenden Kombination der Eingangssignale, einen anderen
Kondensator (C') und eine zweite Entladeanordnung (N1) zum
Entladen des anderen Kondensators (C') für den Fall, daß
nicht alle Kondensatoren (C) der Mehrzahl von
Kondensatoren durch die erste Entladeanordnung entladen werden,
enthält;
dadurch gekennzeichnet,
daß die erste und die zweite Aufladeanordnung die ihnen
zugeordneten Kondensatoren (C, C') abhängig von einem
Zustand eines einzigen Steuerimpulses (PWRECC) aufladen,
daß die erste und die zweite Entladeanordnung die ihnen
zugeordneten Kondensatoren (C, C') abhängig von dem
entgegengesetzten Zustand des einzigen Steuerimpulses
(PWRECC) entladen, und
daß der andere Kondensator (C') eine längere Entladezeit
als jeder Kondensator (C) der Mehrzahl von Kondensatoren
hat.
2. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß der andere Kondensator (C')
eine größere Kapazität und jeder der Kondensatoren (C)
der Mehrzahl eine kleine Kapazität aufweisen.
3. Speichersystem nach Anspruch 2,
dadurch gekennzeichnet, daß der größere Kondensator (C')
eine Kapazität hat, die mindestens um 50% größer ist
als die der kleineren Kondensatoren (C).
4. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß jeder Kondensator (C) der
Mehrzahl eine Kapazität im Bereich von 0,05 bis 5 pF
hat.
5. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß die größere Kapazität durch
eine in Sperrichtung vorgespannte, konzentrierte P-N-
Diode dargestellt ist.
6. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß die größere Kapazität durch
eine in Sperrichtung vorgespannte, verteilte P-N-Diode
dargestellt ist.
7. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß die größere Kapazität durch
ein konzentriertes Paar von parallelen Platten gebildet
ist.
8. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß die größere Kapazität durch
verteilte Paare von parallelen Platten gebildet ist.
9. Speichersystem nach Anspruch 1,
dadurch gekennzeichnet, daß die zweite Entladeanordnung
nach einer gewissen Verzögerung auf den
entgegengesetzten Zustand des einzigen Impulses anspricht, und daß die
erste Entladeanordnung um eine kürzere Zeit verzögert.
10. Speichersystem nach Anspruch 9,
dadurch gekennzeichnet, daß die Verzögerungszeit der
zweiten Entladeanordnung um eine logische Verzögerung
größer als die kürzere Verzögerungszeit ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/835,776 US4698812A (en) | 1986-03-03 | 1986-03-03 | Memory system employing a zero DC power gate array for error correction |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3781911D1 DE3781911D1 (de) | 1992-11-05 |
DE3781911T2 true DE3781911T2 (de) | 1993-02-25 |
Family
ID=25270429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8787301603T Expired - Fee Related DE3781911T2 (de) | 1986-03-03 | 1987-02-24 | Speichersystem unter benutzung eines gleichstromleistungsfreien gatterfeldes zur fehlerkorrektur. |
Country Status (6)
Country | Link |
---|---|
US (1) | US4698812A (de) |
EP (1) | EP0236053B1 (de) |
JP (1) | JPS62219299A (de) |
AT (1) | ATE81219T1 (de) |
CA (1) | CA1283485C (de) |
DE (1) | DE3781911T2 (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6273500A (ja) * | 1985-09-26 | 1987-04-04 | Mitsubishi Electric Corp | 半導体記憶装置 |
US5493574A (en) * | 1992-09-24 | 1996-02-20 | Zilog, Inc. | Power efficient RAM disk and a method of emulating a rotating memory disk |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3893070A (en) * | 1974-01-07 | 1975-07-01 | Ibm | Error correction and detection circuit with modular coding unit |
DE2455178C2 (de) * | 1974-11-21 | 1982-12-23 | Siemens AG, 1000 Berlin und 8000 München | Integrierte, programmierbare Logikanordnung |
US4103182A (en) * | 1976-09-01 | 1978-07-25 | Hewlett-Packard Company | Programmable transfer gate array |
US4381460A (en) * | 1980-05-27 | 1983-04-26 | National Semiconductor Corporation | Bootstrap driver circuit |
JPS58139399A (ja) * | 1982-02-15 | 1983-08-18 | Hitachi Ltd | 半導体記憶装置 |
JPS58182184A (ja) * | 1982-04-17 | 1983-10-25 | Fujitsu Ltd | デコ−ダ回路 |
CA1184308A (en) * | 1982-06-22 | 1985-03-19 | Robert D. Bannon | True single error correction system |
JPS59121691A (ja) * | 1982-12-01 | 1984-07-13 | Fujitsu Ltd | ダイナミツク型半導体記憶装置 |
US4535455A (en) * | 1983-03-11 | 1985-08-13 | At&T Bell Laboratories | Correction and monitoring of transient errors in a memory system |
US4646303A (en) * | 1983-10-05 | 1987-02-24 | Nippon Gakki Seizo Kabushiki Kaisha | Data error detection and correction circuit |
NL8303765A (nl) * | 1983-11-02 | 1985-06-03 | Philips Nv | Dataverwerkend systeem waarbij in het geheugen onbetrouwbare woorden zijn vervangen door een onbetrouwbaarheidsindicator. |
DE3473365D1 (en) * | 1984-05-26 | 1988-09-15 | Honeywell Bull Spa | Single error correction circuit for system memory |
-
1986
- 1986-03-03 US US06/835,776 patent/US4698812A/en not_active Expired - Lifetime
-
1987
- 1987-02-24 EP EP87301603A patent/EP0236053B1/de not_active Expired - Lifetime
- 1987-02-24 AT AT87301603T patent/ATE81219T1/de not_active IP Right Cessation
- 1987-02-24 CA CA000530493A patent/CA1283485C/en not_active Expired - Lifetime
- 1987-02-24 DE DE8787301603T patent/DE3781911T2/de not_active Expired - Fee Related
- 1987-03-02 JP JP62045383A patent/JPS62219299A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPH0416879B2 (de) | 1992-03-25 |
DE3781911D1 (de) | 1992-11-05 |
EP0236053A3 (en) | 1989-03-29 |
US4698812A (en) | 1987-10-06 |
CA1283485C (en) | 1991-04-23 |
ATE81219T1 (de) | 1992-10-15 |
JPS62219299A (ja) | 1987-09-26 |
EP0236053B1 (de) | 1992-09-30 |
EP0236053A2 (de) | 1987-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3645221C2 (de) | ||
DE69101640T2 (de) | Binäre speicherzelle. | |
EP0104442B1 (de) | Monolithisch integrierte digitale Halbleiterschaltung | |
DE3227464C2 (de) | Programmierbare Schaltung | |
DE4328605C2 (de) | Halbleiterspeichereinrichtung | |
DE3128740C2 (de) | ||
DE2121865C3 (de) | Speicher-Adressierschaltung | |
DE69322311T2 (de) | Halbleiterspeicheranordnung | |
DE68910994T2 (de) | Schaltung zur Einstellung des Betriebsmodus für DRAM-Speicher. | |
DE2749850A1 (de) | Hybrider halbleiterspeicher mit assoziativer seitenadressierung, seitenaustausch und steuerung auf dem chip | |
DE10307244A1 (de) | Automatische Vorladesteuerungsschaltung und zugehöriges Vorladesteuerungsverfahren | |
DE69618847T2 (de) | Programmierbarer Zähler für binäre und verschachtelte Sequenzen | |
DE68909626T2 (de) | Dekodierschaltung. | |
DE3432799A1 (de) | Dynamische halbleiterspeicheranordnung mit geringerem energieverbrauch beim internen regenerationsbetrieb | |
DE4108996C2 (de) | Halbleiterspeichereinrichtung | |
DE69125076T2 (de) | Halbleiter-Speicher mit Chip-Enable-Kontrolle vom Output-Enable während des Testmodus | |
DE69228522T2 (de) | Lese-Schreibspeicher mit Prüfmodusdatenvergleich | |
DE69322436T2 (de) | Halbleiterspeicheranordnung | |
DE3781911T2 (de) | Speichersystem unter benutzung eines gleichstromleistungsfreien gatterfeldes zur fehlerkorrektur. | |
DE1966852A1 (de) | Speichereinheit mit einer kapazitiven speichereinrichtung | |
DE3688049T2 (de) | Signaleingangsschaltung mit signalverriegelungsfunktion. | |
DE69223087T2 (de) | DRAM-Zeilenredundanzsschaltung mit verbessertem Wirkungsgrad | |
EP0697659B1 (de) | Redundanz-Schaltungsanordnung für einen integrierten Halbleiterspeicher | |
DE19708963C2 (de) | Halbleiterdatenspeicher mit einer Redundanzschaltung | |
DE10121649A1 (de) | Auswahlsignal-Erzeugungsschaltung mit einer Klemmschaltung zum Klemmen von Auswahlsignalen beim Einschalten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |