DE69025580T2 - Auffrichungspuffer für Speicherkarte - Google Patents
Auffrichungspuffer für SpeicherkarteInfo
- Publication number
- DE69025580T2 DE69025580T2 DE69025580T DE69025580T DE69025580T2 DE 69025580 T2 DE69025580 T2 DE 69025580T2 DE 69025580 T DE69025580 T DE 69025580T DE 69025580 T DE69025580 T DE 69025580T DE 69025580 T2 DE69025580 T2 DE 69025580T2
- Authority
- DE
- Germany
- Prior art keywords
- refresh
- pulses
- request
- refresh request
- timing
- 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
- 230000015654 memory Effects 0.000 claims description 96
- 238000003491 array Methods 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 9
- 230000000737 periodic effect Effects 0.000 claims description 8
- 238000000034 method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000009825 accumulation Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 230000001960 triggered effect Effects 0.000 claims 2
- 239000011159 matrix material Substances 0.000 claims 1
- 230000011664 signaling Effects 0.000 claims 1
- 230000010365 information processing Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf informationsverarbeitende Systeme mit Geräten für die Verarbeitung, die mit einem Hauptspeicher mit dynamischen Datenarrays und genauer mit Mitteln für die Bereitstellung periodischer Auffrischzyklen an Speicherarrays auf mehreren Speicherkarten verbunden sind, die Hauptspeicher enthalten.
- Dynamische Speicher werden häufig in datenverarbeitenden Systemen genutzt, da sie im Vergleich zu statischen Speichern hohe Datenspeicherdichten bei geringen Kosten aufweisen. Gewöhnlich umfassen derartige Speigher Arrays (Reihen und Spalten) einzelner Bitlagen oder Zellen. Jede Zelle besitzt eine Kapazität und entlädt sich mit der Zeit. Es ergibt sich somit die Notwendigkeit, die Ladung periodisch rückzuspeichern oder die Zelle "aufzufrischen".
- Mit der Auffrischoperation ist die Notwendigkeit des Einzelzugriffs auf jede Reihe einer Speicherarray verbunden. Arrays haben typischerweise mehrere Reihen, z.B. 512 oder 1024 Reihen. Vorausgesetzt zum Beispiel, daß bestimmte Arrays alle 4 Millisekunden aufgefrischt werden müssen und 512 Reihen enthalten, ist der Auffrischungszyklus, d.h., die Zeit zwischen aufeinanderfolgen Auffrischanfragen, gleich dem Auffrischintervall geteilt durch die Anzahl der Reihen, in diesem Fall 0,004 Sekunden geteilt durch 512 Reihen, oder etwa 7,8 Mikrosekunden. Der Mehraufwand, der mit der Erzeugung und dem Senden dieser Anfragen einhergeht, verringert die Verfügbarkeit des Speichers wesentlich, in einigen Fällen um bis zu zwanzig Prozent. Dies verringert natürlich den Wert des Speichers in bezug auf seine Fähigkeit, äußere Anfragen von Geräten für die Verarbeitung für das Holen und Speichern von Daten zu bedienen.
- Versuche, sich mit diesem Problem zu beschäftigen, umfassen die Einteilung des Halbleiterspeichers in zwei Blöcke, wie es zum Beispiel in der US-Patentschrift Nr. 4 106 108 beschrieben wurde. Wenn ein Zentralprozessor eine Lese-/Schreiboperation einem der Blöcke für einen bestimmten Zyklus zuweist, wird der gleiche Zyklus genutzt, um ein Reihe mit Speicherelementen in dem anderen Block aufzufrischen. Ein in zwei Teile aufgeteilter Speicher wird ebenfalls im IBM Technical Disclosure Bulletin, Band 16, Nr. 3 (August 1973) beschrieben.
- Ein weiterer Ansatz besteht darin, einen Speicherauffrischimpuls zu verzögern, so daß er externe Anfragen bedient. US-Patentschrift Nr. 4 691 303 beschreibt ein Auffrischsysten für mehrere Bänke aus Halbleiterspeichern mit einer Logik, die Auffrischimpulse daran hindert, während eines anfänglichen Herunterzählens von einem ausgewählten Wert bis null Lese-/Schreib-Operationen zu stören. In der US-Patentschrift Nr. 4 525 301 stellt eine vom Zentralprozessor gesteuerte Schaltung Auffrischanfragen bereit, die einen Zähler erhöhen, während mit jeder Auffrischoperation der Zähler heruntergezählt wird. Eine Auffrischung wird erzwungen, wenn der Zähler eine kritische Grenze erreicht. IBM Technical Disclosure Bulletin, Band 25, Nr. 7A (Dezember 1982) bezieht sich auf einen Vier-bit-Auffrischzähler, der die Auffrischfunktion bei einem Zählerstand von 0000 bis 0111 hemmt, die Auffrischung bei einem Zählerstand von 1000 bis 1110 erlaubt, wenn der Speicher nicht beschäftigt ist, und der die Auffrischfunktion bei einem Zählerstand von 1111 anfordert. Jede Speicherzyklusperiode erhöht den Zähler, während er mit jeder Auffrischoperation zurückgesetzt wird.
- Andere Verbesserungen umfassen die Bereitstellung von Mitteln, um die Auffrischrate oder -frequenz aus einigen vorher festgelegten Werten auszuwählen, wodurch die Auswahl einer einzigen, optimalen Auffrischrate ermöglicht wird, die an alle Speicherkarten angelegt wird. In einem anderen bekannten System liefert ein Prozessor Auffrischsignale in drei Gruppen, die Störungen infolge von Auffrischoperationen verringern, da einige Speicher- karten aufgefrischt werden, während andere für den Speicherzugriff verfügbar sind.
- Bei informationsverarbeitenden Netzwerken mit mehreren Prozessoren, die sich um einen gemeinsamen Bus zum Hauptspeicher bemühen, wobei der Hauptspeicher aus mehreren Speicherkarten besteht, erfordert eine prozessorgesteuerte Auffrischung der Speicherarrays jedoch eine ernennenswerte Zeit auf dem gemeinsamen Bus und setzt somit das Leistungsvermögen des Netzwerkes herab.
- Es ist deshalb eine Aufgabe der vorliegenden Erfindung, ein informationsverarbeitendes Netzwerk bereitzustellen, in dem dynamische Speicherarrays bei minimalen Störungen zwischen Auffrischzyklen und externen Zugriffsanfragen an die Speicherarrays periodisch aufgefrischt werden.
- Eine andere Aufgabe der Erfindung besteht darin, etwas von der Intelligenz, die mit Array-Auffrischoperationen einhergeht, von den Präzessoren in die Speicherkarten des Hauptspeichers zu verlegen.
- Eine weitere Aufgabe besteht darin, ein Netzwerk bereitzustellen, in dem mehrere Speicherkarten des Hauptspeichers unabhängig voneinander Auffrischoperationen ausführen können.
- Noch eine andere Aufgabe besteht darin, ein Datenverarbeitungsnetzwerk bereitzustellen, das Mittel für die individuelle Auswahl einer optimalen Auffrischfrequenz für jede der vielen Speicherkarten umfaßt.
- Um diese und weitere Aufgaben zu erfüllen, wird ein System bereitgestellt, um Auffrischimpulse an eine Vielzahl von Speicherkarten bereitzustellen, wobei jede folgendes umfaßt: Datenarrays zur Speicherung bitverschlüsselter Daten, wobei die Datenarrays dynamisch sind und periodische Auffrischzyklen erfordern und sich in einem Verarbeitungsnetzwerk mit einer Gerätekonfiguration für die Verarbeitung zur Manipulation bitverschlüsselter Daten befinden; eine Schnittstelle, die mit der Verarbeitungsanordnung und mit den Speicherkarten verbunden ist, um bitverschlüsselte Daten zwischen der Verarbeitungsanordnung und den Speicherkarten zu übertragen; ein Zeitablaufsignalmittel, das von der Verarbeitungsgeräteanordnung unabhängig ist, um Zeitimpulse bei einer konstanten Zeitfrequenz zu erzeugen; und in jeder Speigherkarte ein Auffrischanforderungsmittel, um die Zeitimpulse zu empfangen und um in Abhängigkeit von den Zeitimpulsen periodische Auffrischanforderungsimpulse bei einer Anforderungs frequenz zu erzeugen, die proportional zur Zeitfrequenz gemäß einem ausgewählten Wert ist, der die Anzahl der Zeitimpulse festlegt, die notwendig sind, um jeden Auffrischanforderungsimpuls zu erzeugen. Das Auffrischanforderungsmittel umfaßt Mittel für die steuerbare Einstellung des ausgewählten Wertes, um das Verhältnis der Auffrischanforderungsimpulse zu den Zeitsteuerungsimpulsen zu ändern; das Verarbeitungsnetzwerk, bei dem:
- jede der Speicherkarten weiterhin ein Puffermittel für die Akkumulierung der Auffrischanforderungsimpulse und die verzögerte Bereitstellung von Auffrischimpulsen enthält, während die zugehörige Speicherkarte eine externe Zugriffsanfrage erhält und darauf antwortet, und weiterhin, wenn die Akkumulation von Auffrischanforderungsimpulsen gleich einem vorher festgelegten Schwellenwert ist, eine Antwort auf alle weiteren externen Zugriffsanfragen verhindert und wenigstens einen Auffrischimpuls an die Datenarrays bereitstellt. Jedes der Puffermittel enthält einen Auffrischanforderungszähler, der hochgezählt wird und jedesmal eine Auffrischanforderung an eine Steuerschaltung der zugehörigen Speicherkarte erzeugt, wenn er ein Auffrischanforderuhgssignal empfängt, und der ein Auffrischforderungssignal an die Steuerschaltung erzeugt, wenn er auf den Schwellenwert hochgezählt wurde, wobei die Steuerschaltung dann in Abhängigkeit vom Empfang der Auffrischanforderung und bei Abwesenheit der externen Zugriffsanforderung an die Datenarrays einen Auffrischimpuls liefert. Die Steuerschaltung liefert weiterhin ein Signal zum Herunterzählen an den Auffrischanforderungszähler, wenn sie einen der Auffrischimpulse bereitgestellt hat.
- Das System ist in Verbindung mit einem Prozeß für die Bereitstellung von Auffrischimpulsen an die Speicherarrays der Speicherkarten einsetzbar, der folgende Schritte umfaßt:
- Erzeugen einer Vielzahl von Auffrischanforderungssignalen, wobei zu jeder Speicherkarte ein Auffrischanforderungssignal gehört und wobei jedes Auffrischanforderungssignal Auffrischanforderungsimpulse mit einer Rate liefert, die ein ganzzahliges Vielfaches des Wertes der Rate der Zeitimpulse ist, wobei jeder der - Werte unabhängig einstellbar ist passend zu den zugehörigen Speicherarrays auf der zuge hörigen Speicherkarten ausgewählt wurde.
- Erkennen der Anwesenheit einer externen Zugriffsanfrage auf die Speicherarrays jeder Speicherkarte;
- Erzeugen eines Auffrischimpulses an die Speicherarrays jeder Speicherkarte, wenn der zugehörige der Auffrischanforderungsimpuls anwesend und die externe Anforderung abwesend ist, und die Verzögerung des Erzeugens der Auffrischimpulse und Speicherung jedes der Anforderungsimpulse, wenn die externe Anfrage anwesend ist; und
- Verhindern einer externen Anfrage und Erzeugung von wenigstens einem Auffrischimpuls in Abhängigkeit von der Akkumulation einer vorher festgelegten Schwellenwertzahl der gespeicherten Anforderungsimpulse, die größer als eins ist.
- Ein Vorteil der vorliegenden Erfindung besteht darin, daß der Prozessor-Aufwand für die Steuerung der Speicherauffrischoperationen und der Schnittstellenverkehr, der mit derartigen Operationen verbunden ist, praktisch beseitigt werden. Dies verringert die Störungen zwischen den Auffrischoperationen und den Prozessoroperationen an den Daten beträchtlich. Die Auffrischfrequenz wird auf ihren optimalen Wert eingestellt, und zwar nicht nur generell, sondern für jede Speicherkarte des Hauptspeichers individuell. Somit kann ein Hauptspeicher mit maximalen Wirkungsgrad arbeiten, auch wenn er aus zwei unterschiedlichen Typen von Speicherkarten besteht. Operationen, die Zugriff auf Speicherarrays mit sich bringen, werden solange nicht für die Speicherauffrischung unterbrochen, bis der vorher festgelegte Schwellenwert erreicht wird und auch dann nur für einen einzigen Auffrischimpuls. Der Schwellenwert wird vorzugsweise ausreichend hoch gesetzt, so daß er unter normalen Betriebsbedingungen selten erreicht wird, was weiterhin eine minimale Störung durch Auffrischoperationen sicherstellt.
- Für ein weiteres Verständnis der obigen und weiteren Aufgaben und Vorteile, wird für die folgende detaillierte Beschreibung auf die Zeichnungen Bezug genommen, wobei:
- Figur 1 eine schematische Ansicht eines informationsverarbeitenden Netzwerkes ist, in dem mehrere verarbeitende Geräte über eine gemeinsam genutzte Schnittstelle mit einem Hauptspeicher verbunden sind, der mehrere Speicherkarten enhält, und Figur 2 eine schematische Ansicht der Schaltung einer oder mehrerer Speicherkarten für die Steuerung von Auffrischimpulsen an die Speicherarrays gemäß der vorliegenden Erfindung ist.
- Gehen wird jetzt zu den Zeichnungen über. In Figur 1 wird ein informationsverarbeitendes Netzwerk 16 für die Speicherung und Ausführung ausgewählter Operationen bei bitverschlüsselten Daten gezeigt. Das System umfaßt zwei Geräte für die Verarbeitung, gekennzeichnet mit 18 und 20. Eine Entscheidungsleitung 22 verbindet beide Prozessoren und wird in Verbindung mit Entscheidungslogik genutzt, die sich in den Verarbeitungsgeräten befindet, um jedem Prozessor bezüglich des Zugriffs auf die Schnittstelle eine Priorität zuzuordnen. Dies ist so zu verstehen, daß die Anordnung der Verabeitungsgeräte in diesem Netzwerk aus einem einzelnen Prozessor oder mehreren Prozessorgeräten bestehen kann, bei denen mehrere Entscheidungsleitungen für eine-Punktzu-Punkt-Verbindung aller verarbeitenden Geräte bereitgestellt werden.
- Eine Schnittstelle 24 verbindet die Geräte für die Verarbeitung mit dem Hauptspeicher. Schnittstelle 24 kann eine Vielzahl getrennter Busse umfassen, die parallel arbeiten, wobei jeder gemeinsam von allen Verarbeitungsgeräten und Speicherkarten des Hauptspeichers genutzt wird. Zum Beispiel werden Arbeitsdaten (die Informationen, die sich am dichtesten auf die Benutzer des Netzwerkes beziehen) direkt über einen Arbeitsdatenbus 23 übertragen, ein Befehls-/Adreßbus 25 überträgt Informationen, die die Übertragung von Arbeitsdaten steuern, wobei diese Informationen enthalten, die sich auf die Adresse im Hauptspeicher beziehen, an der die Arbeitsdaten zu speichern sind oder von der diese abgerufen werden. Wenn gewünscht, kann ein Kommunikationsbus (nicht dargestellt) den Status von Arbeitsdaten übertragen, wenn die Arbeitsdaten über den Datenbus übertragen werden.
- Der Haup,tspeicher umfaßt mehrere Speicherkarten, wie bei 26, 28 und 30 angezeigt. Speicherkarte 28 zum Beispiel umfaßt einen Datenpuffer 32, Speicherarrays für den wahlfreien Zugriff 34, um bitverschlüsselte Daten zu speichern, eine Auffrischanforderungsschaltung 36, einen Auffrischanforderungspuffer 38 und eine Steuerschaltung 40, um den Zugriff auf die Speicherarrays zu verwalten.
- Die Speicherkarten 28 und 30 sind ähnlich der Speicherkarte 26, die jeweils einen Puffer 42, Speicherarrays 44, eine Auffrischanforderungsschaltung 46, einen Auffrischanforderungspuffer 48 und eine Steuerschaltung 50; sowie einen Datenpuffer 52, Speicherarrays 54, eine Auffrischanforderungsschaltung 56, einen Auffrischanforderungspuffer 58 und eine Steuerschaltung 60 enthalten. Diese Komponenten sind im wesentlichen gleich wie die entsprechenden Komponenten in Speicherkarte 26 und arbeiten auf die gleiche Weise. Es versteht sich von selbst, daß Hauptspeicher weiterhin mehrere Speicherkarten wie diese umfassen kann.
- Die Datenleitungen 62 und 64 verbinden Geräte. für die Verarbeitung 18 und 20 mit Schnittstelle 24. Datenleitungen 66, 68 und 70 verbinden die Schnittstelle mit den Speicherkarten 26, 68 und 70. Befehlsleitungen 72 und 74 und weitere Befehlsleitungen 76, 78 und 80 verbinden die Schnittstelle 24 mit den Verarbeitungsgeräten beziehungsweise Speicherkarten. Ein Taktoszillator 82 liefert an die Speicherkarten 26, 28 und 30 Zeitablaufimpulse mit einer vorher festgelegten Zeitfrequenz.
- Datenpuffer 32 von Speicherkarte 26 empfängt Arbeitsinformationen von dem Prozessor über die Schnittstelle, um sie nacheinander in die Speicherarrays 34 zu laden oder um sie anders zu, handhaben. Auffrischanforderungsschaltung 36 empfängt die Zeitimpulse und erzeugt Auffrischanforderungsimpulse mit einer Frequenz, die proportional zur Zeitfrequenz ist. Auffrischanforderungspuffer 38 empfängt die Auffrischanforderungsimpulse. Als Antwort auf jeden Anforderungsimpuls speichert Puffer 38 die Auffrischanforderung oder bewirkt, daß Steuerschaltung 40 einen Auffrischimpuls an die Speichermatrizen in Abhängigkeit davon liefert, ob Steuerschaltung 40 mit dem Empfang von oder dem Antworten auf externe(n) Anforderungen auf den Zugriff auf die Arrays beschäftigt ist, z.B. mit einer Anfrage von einem der Datenverarbeitungsgeräte, um Daten zu holen oder zu speichern.
- Speicherarrays 34, 44 und 54 sind dynamische Speicher mit wahlfreiem Zugriff (dynamischer RAM), die, wie zuvor angemerkt, eine periodische Auffrischoperation benötigen, um die Unversehrtheit der in den Arrays gespeicherten Daten aufrecht zu erhalten. Auffrischanforderungsschaltung 36 und Auffrischanforderungspuffer 38, die die Bereitstellung von Auffrischimpulsen an Speicherarrays 34 steuern, werden in Figur 2 gezeigt, wobei dies so zu verstehen ist, daß die entsprechenden Schaltungen auf den Speicherkarten 28 und 30 im wesentlichen identisch sind.
- Die Auffrischanforderungsschaltung umfaßt einen Zeitablaufimpulszähler 84, der die Zeitablaufimpulse vom Taktgeber 82 empfängt und jedesmal einen Zählerausgangsimpuls erzeugt, wenn er eine vorher festgelegte Anzahl von Zeitablaufimpulsen empfangen hat, z.B. 500. Die Zählerausgangsimpulse werden an einen der Eingänge der Vergleicherschaltung 86 angelegt.
- Die andere Eingabe an den Vergleicher 86 ist eine Auffrischanforderungswerteingabe, die von einem programmierbaren Auffrischregister 88 bereitgestellt wird. Ein Programmiergerät 90, außerhalb von Speicherkarte 26 befindlich, ist an die Speicherkarte lösbar angeschlossen, um Register 88 zu programmieren, d.h., um den Auffrischanforderungswert auf eine andere Einstellung zu setzen. Gerät 90. ist auf die gleiche Weise an die anderen Speicherkarten anschließbar, um die individuelle Einstellung jeder Speicherkarte auf ihre optimale Auffrischanforderungsfrequenz zu ermöglichen. Die Ausgabe von Vergleicher 86 ist ein-Auffrischanforderungsimpuls, der jedesmal erzeugt wird, wenn die Anzahl der Zählerausgangsimpulse gleich dem Auffrischanforderungswert ist.
- Ein Multiplexer 92 empfängt die Auffrischanforderungsimpulse und kann sie an den Auffrischanforderungspuffer 38 leiten. Wahlweise kann Multiplexer 92 ebenfalls Auffrischimpulse von einer externen Quelle 94 empfangen und so gesetzt werden, daß er entweder die externen oder die programmierten Auffrischanforderungsimpulse an den, Auffrischanforderungspuffer bereitstellt. Normalerweise wählt Multiplexer 92 die programmierten Anforderungsimpulse vom Vergleicher 86 aus. Wenn allerdings Auffrischregister 88 eine Sperreingabe an den Multiplexer über Leitung 96 vorsieht, wählt der Multiplexer die Eingabe von der externen Quelle 94, um sie an den Auffrischanforderungspuffer weiterzuleiten. Die externe Quelle wird vorwiegend genutzt, um das Netzwerk zu testen.
- Auffrischanfragepuffer 38 umfaßt einen Anfrageimpulszähler 98, der die Ausgabe von Multiplexer 92 empfängt, d.h. entweder die programmierten oder die externen Auffrischanfrageimpulse. Als Antwort wird der Anfragezähler erhöht und erzeugt eine Auffrischanfrage 100; die an die Steuerschaltung 40 der Speicherkarte geliefert wird. Anfragezähler 98 liefert eine andere Eingabe an Steuerschaltung 40, nämlich eine Auffrischforderung 102, wenn der Zähler auf einen vorher festgelegten Schwellwert hochgezählt wurde, z.B. acht. Ein dritter Eingang an die Steuerschaltung, nämlich ein externer Eingang 104, ist aktiv, wenn die Steuerschaltung einen Zugriff auf die Speicherarray für vom Auffrischen abweichende Funktionen bereitstellt, z.B. Lese- /Schreibfunktionen.
- Steuerschaltung 40 antwortet auf diese Eingaben wie folgt. Bei Empfang jeder Auffrischanfrage von Zähler 98 (und wenn externe Eingäbe 104 nicht aktiv ist), erzeugt die Steuerschaltung einen Auffrischimpuls an das Speicherarray, wie bei 106 ängezeigt. Wenn sie den Auffrischimpuls erzeugt, liefert die Steuerschaltung ein "Auffrischung-durchgeführt" Signal bei 108 als Eingabe an Zähler 98, wodurch der Zähler heruntergezählt wird.
- Wenn die externe Eingabe aktiv ist, wenn Steuerschaltung 40 einen Auffrischanforderungsimpuls empfängt, speichert sie die Anfrage und liefert weder einen Auffrischimpuls noch erzeugt sie ein "Anfrage-durchgeführt" Signal. Solange ein externer Eingang 104 aktiv bleibt, wird jede folgende Auffrischanforderung gespeichert und Anforderungszähler 98 wird weiter hochgezählt.
- Sollte Zähler 98 allerdings mit der Erhöhung fortschreiten, bis er den Schwellenwert erreicht, liefert der Zähler eine Auffrischforderung 102 an die Steuerschaltung, die dann den externen Betrieb unterbricht, der mit Eingang 104 verbunden ist, und bewirkt, daß Steuerschaltung 40 einen Auffrischimpuls an die Speicherarrays und das herunterzählende Signal an Zähler 98 bereitstellt.
- Jede der Speicherkarten ist demnach programmierbar, um die Auffrischanforderungsfrequenz in Abhängigkeit von dem Zusammenhang von den Auffrischanforderungen zu Auffrischforderungen zu setzen, die durch den in Zähler 98 gesetzten Schwellenwert bestimmt werden. Optimale Werte für Auffrischanforderungsfrequenz und Auffrischforderungsfrequenz werden natürlich vom Typ der verwendeten Speicherarrays sehr abhängig sein. Allgemein jedoch muß die Auffrischforderungsfrequenz ausreichend hoch sein (oder umgekehrt, muß der Auffrischforderungszyklus ausreichend kurz sein), um die Unversehrtheit von Daten in den Speicherarrays sicherzustellen. Der Schwellwert im Anforderungszähler 98 wird so gesetzt, um den geforderten Zusammenhang zwischen der Auffrischanforderungsfrequenz zu der Auffrischforderungsfrequenz zu bestimmen. Ein höherer Schwellenwert erfordert häufigere Auffrischanforderungen, verringert allerdings erheblich die Wahrscheinlichkeit, daß Zähler 98 während des normalen Betriebes des Netzwerkes jemals auf den Schwellenwert hochgezählt wird, was somit die Möglichkeit verringert, daß Auffrischimpulse andere Operationen unterbrechen werden. In Verbindung mit der jeweiligen Ausführungsform wurde ein Schwellenwert von wenigstens vier als ausreichend gefunden.
- Gemäß der gegenwärtigen Erfindung kann somit jede der vielen Speicherkarten auf ihre optimale Auffrischrate oder Frequenz eingestellt werden. Diese Eigenschaft kann den Wirkungsgrad eines Hauptspeichers, bestehend aus unterschiedlichen Hauptspeicherkartentypen, wesentlich verbessern, da das Netzwerk nicht länger unter einer einzigen Auffrischrate arbeiten muß, die den höchsten Auffrischratenanforderungen einer Karte für den Einsatz mit allen Karten genügen muß. Die Fähigkeit, unterschiedliche Speichertechnologien zuzulassen verbessert die Vielseitigkeit des Netzwerkes. Ein weiterer Vorteil, insbesondere für ein Netzwerk von Mehrfachverarbeitungsgeräten, besteht darin, daß die Steuerung von Auffrischimpulsen transparent zum Prozessor ist. Somit braucht der Prozessor nicht länger um die Steuerung eines Busses oder einer anderen Schnittstelle zu kämpfen, sondern kann stattdessen andere Operationen an Daten ausführen, während die Speicherkarte selbst mit den Auffrischvorgang in Abhängigkeit von einem Taktsignal beschäftigt ist, das schon für andere Einsatzzwecke im Netzwerk bereitgestellt wurde. Prozessor-Aufwand und Forderungen nach einer gemeinsamen Schnittstelle für Speicherauffrischfunktionen werden praktisch beseitigt.
Claims (5)
1. Verarbeitungsnetzwerk, das folgendes enthält: eine Vielzahl
von Speicherkarten (26, 28, 30), von denen jede
Auffrischimpulse empfängt und Datenarrays (34) für die Speicherung
von bitverschlüsselten Daten besitzt, wobei die Datenarrays
dynamisch sind und periodische Auffrischzyklen benötigen;
eine Gerätekonfiguration für die Verarbeitung (16) zur
Manipulation bitverschlüsselter Daten; eine Schnittstelle
(24), die mit der Verarbeitungskonfiguration und den
Speicherkarten für die Übertragung bitverschlüsselter Daten
zwischen der Verarbeitungskonfiguration und den
Speicherkarten verbunden ist; ein Zeitsignalmittel (82), das
unabhängig von der Gerätekonfiguration für die Verarbeitung
ist, um Zeitimpulse mit einer konstanten Zeitfrequenz zu
erzeugen; sowie ein Mittel für Auffrischanfragen (36, 46,
56) in jeder Speicherkarte für den Empfang der Zeitimpulse
für die durch die Zeitimpulse ausgelöste Erzeugung von
periodischen Impulsen zur Auffrischanfrage mit einer
Auffrischfrequenz, die gemäß eines ausgewählten Wertes zur
Zeitfrequenz proportional ist, wobei der Wert die Anzahl
der Zeitimpulse bestimmt, die zur Erzeugung jedes
Auffrischanforderungsimpulses benötigt werden, wobei das
Mittel für die Auffrischanforderung Mittel für die steuerbare
Einstellung des ausgewählteh Wertes zur Anderung des
Verhältnisses von Auffrischanforderungsimpulsen zu
Zeitimpulsen umfaßt;
wobei das Verarbeitungsnetzwerk dadurch gekennzeichnet ist,
daß:
jede der Speicherkarten weiterhin Puffermittel (34,
48, 58) für die Speicherung von
Auffrischanforderungsimpulsen (100) und die verzögerte Bereitstellung von
Auffrischimpulsen enthält, während die zugehörige
Speicherkarte eine externe Zugriffsanfrage (104)
empfängt,
auf diese antwortet und weiterhin, bis die
Menge der gespeicherten Auffrischanfrageimpulse gleich
einem vorher festgelegten Schwellenwert ist, eine
Antwort auf weitere externe Zugriffsanfragen verhindert,
sowie wenigstens einen Auffrischimpuls an die
Datenmatrix bereitstellt; wobei jedes der Puffermittel (38,
48, 58) einen Auffrischanforderungszähler (98) umfaßt,
der hochgezählt wird und eine Auffrischanforderung an
die Steuereinheit (105) der zugehörigen Speicherkarte
jedesmal erzeugt, wenn er einen der
Auffrischanforderungsimpulse empfängt und ein
Auffrischanforderungssignal (102) an die Steuereinheit erzeugt, wenn bis
zum Schwellenwert hochgezählt wurde, wobei die
Steuerschaltung (105) einen Auffrischimpuls (106) an die
Datenarrays liefert, die auf den Empfang der
Auffrischanforderung und die Abwesenheit der externen
Zugriffsanfrage (104) reagiert, und den Auffrischimpuls
bereitstellt, der beim Empfang der
Auffrischanforderung ausgelöst wird, wobei die Steuerschaltung
weiterhin ein Signal zum Herunterzählen (108) an den
Auffrischanforderungszähler liefert, wenn sie einen, der
Auffrischimpulse bereitstellt.
2. Netzwerk,nach Anspruch 1, wobei die
Auffrischanforderungsmittel (36, 46, 56) folgendes umfassen:
einen Zeitimpulszähler (84) für den Empfang der Zeitimpulse
und das Erzeugen eines Auffrischanforderungsimpulses an
seinem Ausgang jedesmal, wenn die Anzahl der empfangenen
Zeitimpulse auf den ausgewählten Wert angewachsen ist; und
ein Register (88) und eine Vergleicherschaltung (86), wobei
das Register den ausgewählten Wert (96) als eine erste
Eingabe an die Vergleicherschaltung liefert und das so
programmierbar ist, daß es den ausgewählten Wert steuerbar
einstellen kann, und wobei der Impulszähler eine zweite
Eingabe an die Vergleicherschaltung liefert, wobei die
Vergleicherschaltung
einen der Auffrischahforderungsimpulse
immer dann erzeugt, wenn die Menge der empfangenen
Zeitimpulse gleich dem ausgewählten Wert ist.
3. Netzwerk nach den Ansprüchen 1 oder 2, wobei:
die Datenarrays einer ersten der Speicherkarten einen
Anforderungszyklus des Auffrischimpulses erfordern, der sich
von dem entsprechenden Anforderungszyklus der Datenarrays
in einer zweiten der Speicherkarten unterscheidet, und sich
die ausgewählten Werte, die mit den ersten und zweiten
Speicherkarten verbunden sind, voneinander unterscheiden,
wobei jedes Register gemäß den Anforderungen von deren
zugehörigen Datenarrays programmiert wurde.
4. Netzwerk nach einem der vorherigen Ansprüche, wobei:
die Steuereinheit (105), die als Reaktion auf den Empfang
der Auffrischanforderungen, während der Abfrage einer
externen Zugriffsanforderung, die Auffrischanforderungen
speichert und Auffrischimpulse liefert, die von
gespeicherten Auffrischanforderungen ausgelöst werden, wenn eine
externe Anfrage nicht länger abgetastet wird.
5. Prozeß zur Lieferung von Auffrischimpulsen an eine Vielzahl
von Speicherkarten (26, 28, 30), von denen jede Datenarrays
(34) für die Speicherung bitverschlüsselter Daten besitzt,
wobei die Bitarrays dynamisch sind und periodische
Auffrischzyklen in einem Verarbeitungsnetzwerk benötigen, das
eine Verarbeitungsgerätekonfiguration (16) für die
Manipulation bitverschlüsselter Daten enthält; eine Schnittstelle
(24) besitzt, die mit der Verarbeitungskonfiguration und
den Speicherkarten verbunden ist, um bitverschlüsselte
Daten zwischen der Verarbeitungskonfiguration und den
Speicherkarten zu übertragen; und ein Zeitsignalmittel (82)
besitzt, das unabhängig von der
Verarbeitungsgerätekonfiguration ist, um Zeitimpulse bei einer konstanten Zeitfrequenz
zu erzeugen; und für den Empfang der Zeitimpulse ein
Auffrischungsanforderungsmittel (36, 46, 56) in jeder
Speicherkarte besitzt und als Antwort auf die Zeitimpulse
periodische Auffrischanforderungsimpulse mit einer
Anforderungsfrequenz erzeugt, die proportional zu den
Zeitfrequenzen gemäß einem ausgewählten Wert ist, der die Anzahl der
Zeitimpulse bestimmt, die benötigt werden, um jeden
Auffrischanforderungsimpuls zu erzeugen, wobei das
Auffrischanforderungsmittel Mittel für die steuerbare
Einstellung des ausgewählten Wertes umfaßt, um das Verhältnis von
Auffrischanforderungsimpulsen zu Zeitimpulsen zu ändern;
der Prozeß zu Lieferung der Auffrischimpulse an die
Speicherarrays der Speicherkarten, der die folgenden Schritte
umfaßt:
Erzeugung einer Vielzahl von
Auffrischanforderungssignalen, wobei ein Auffrischanförderungssignal mit
jeder der Speicherkarten korrespondiert, und wobei jedes
Auffrischanforderungssignal
Auffrischanforderungsimpulse mit einer Rate liefert, die ein integraler
mehrfacher Wert der Rate der Zeitimpulse ist, wobei jeder
der Werte unabhängig einstellbar ist und ausgewählt
wurde, um mit den zugehörigen Speicherarrays auf der
zugehörigen der Speicherkarten zu korrespondieren;
Abtasten hinsichtlich der Anwesenheit einer externen
Anforderung (104) nach Zugriff auf die Speicherarrays
von jeder der Speicherkarten;
Erzeugen eines Auffrischimpulses an die Speicherarrays
von jeder Speicherkarte, wenn der zugehörige der
Auffrischanforderungsimpulse anwesend ist und die externe
Anforderung nicht vorhanden ist, und die Verzögerung
der Erzeugung der Auffrischimpulse, sowie Speicherung
jeder der Auffrischimpulse, wenn die externe Anfrage
vorhanden ist; und
Verhindern der externen Anfrage und Erzeugung von
wenigstens einem Auffrischimpuls (106) in Abhängigkeit
von dem Sammelstand eines vorher festgelegten,
Schwellenwertes von gespeicherten Impulsen größer als eins.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/450,139 US5193165A (en) | 1989-12-13 | 1989-12-13 | Memory card refresh buffer |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69025580D1 DE69025580D1 (de) | 1996-04-04 |
DE69025580T2 true DE69025580T2 (de) | 1996-09-12 |
Family
ID=23786921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69025580T Expired - Fee Related DE69025580T2 (de) | 1989-12-13 | 1990-10-17 | Auffrichungspuffer für Speicherkarte |
Country Status (4)
Country | Link |
---|---|
US (1) | US5193165A (de) |
EP (1) | EP0437158B1 (de) |
JP (1) | JPH03209691A (de) |
DE (1) | DE69025580T2 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5276844A (en) * | 1991-08-05 | 1994-01-04 | Ascom Autelca Ltd. | Protection system for critical memory information |
US5418920A (en) * | 1992-04-30 | 1995-05-23 | Alcatel Network Systems, Inc. | Refresh control method and system including request and refresh counters and priority arbitration circuitry |
US5638529A (en) * | 1992-08-24 | 1997-06-10 | Intel Corporation | Variable refresh intervals for system devices including setting the refresh interval to zero |
US5577236A (en) * | 1994-12-30 | 1996-11-19 | International Business Machines Corporation | Memory controller for reading data from synchronous RAM |
US5761703A (en) * | 1996-08-16 | 1998-06-02 | Unisys Corporation | Apparatus and method for dynamic memory refresh |
US5907863A (en) * | 1996-08-16 | 1999-05-25 | Unisys Corporation | Memory control unit using preloaded values to generate optimal timing of memory control sequences between different memory segments |
US6356485B1 (en) * | 1999-02-13 | 2002-03-12 | Integrated Device Technology, Inc. | Merging write cycles by comparing at least a portion of the respective write cycle addresses |
US6512990B1 (en) * | 2000-01-05 | 2003-01-28 | Agilent Technologies, Inc. | Distributed trigger node |
US6968392B1 (en) * | 2000-06-29 | 2005-11-22 | Cisco Technology, Inc. | Method and apparatus providing improved statistics collection for high bandwidth interfaces supporting multiple connections |
JP2005310245A (ja) * | 2004-04-20 | 2005-11-04 | Seiko Epson Corp | メモリコントローラ、半導体集積回路装置、マイクロコンピュータ及び電子機器 |
US7088632B2 (en) * | 2004-05-26 | 2006-08-08 | Freescale Semiconductor, Inc. | Automatic hidden refresh in a dram and method therefor |
US8472278B2 (en) | 2010-04-09 | 2013-06-25 | Qualcomm Incorporated | Circuits, systems and methods for adjusting clock signals based on measured performance characteristics |
US9293187B2 (en) * | 2011-09-26 | 2016-03-22 | Cisco Technology, Inc. | Methods and apparatus for refreshing digital memory circuits |
US9490002B2 (en) | 2014-07-24 | 2016-11-08 | Rambus Inc. | Reduced refresh power |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3800295A (en) * | 1971-12-30 | 1974-03-26 | Ibm | Asynchronously operated memory system |
IT1041882B (it) * | 1975-08-20 | 1980-01-10 | Honeywell Inf Systems | Memoria dinamica a semiconduttori e relativo sistema di recarica |
US4172282A (en) * | 1976-10-29 | 1979-10-23 | International Business Machines Corporation | Processor controlled memory refresh |
JPS5693179A (en) * | 1979-12-26 | 1981-07-28 | Fujitsu Ltd | Refresh control system |
US4625301A (en) * | 1983-11-30 | 1986-11-25 | Tandy Corporation | Dynamic memory refresh circuit |
US4625296A (en) * | 1984-01-17 | 1986-11-25 | The Perkin-Elmer Corporation | Memory refresh circuit with varying system transparency |
US4747082A (en) * | 1984-11-28 | 1988-05-24 | Hitachi Ltd. | Semiconductor memory with automatic refresh means |
JPS624577A (ja) * | 1985-07-02 | 1987-01-10 | 北川工業株式会社 | 基板引抜具 |
JPS6212994A (ja) * | 1985-07-09 | 1987-01-21 | Fujitsu Ltd | リフレツシユ制御方式 |
JPS63140491A (ja) * | 1986-12-02 | 1988-06-13 | Nec Corp | リフレツシユ制御方式 |
JPS6452293A (en) * | 1987-08-24 | 1989-02-28 | Hitachi Ltd | Memory built-in semiconductor integrated circuit |
JPH01267896A (ja) * | 1988-04-19 | 1989-10-25 | Toshiba Corp | 半導体メモリ |
-
1989
- 1989-12-13 US US07/450,139 patent/US5193165A/en not_active Expired - Fee Related
-
1990
- 1990-10-17 EP EP90480164A patent/EP0437158B1/de not_active Expired - Lifetime
- 1990-10-17 DE DE69025580T patent/DE69025580T2/de not_active Expired - Fee Related
- 1990-11-13 JP JP2306944A patent/JPH03209691A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
DE69025580D1 (de) | 1996-04-04 |
EP0437158B1 (de) | 1996-02-28 |
US5193165A (en) | 1993-03-09 |
EP0437158A3 (en) | 1991-12-11 |
JPH03209691A (ja) | 1991-09-12 |
EP0437158A2 (de) | 1991-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69124905T2 (de) | Datenverarbeitungsvorrichtung zur dynamischen Zeiteinstellung in einem dynamischen Speichersystem | |
DE69025580T2 (de) | Auffrichungspuffer für Speicherkarte | |
DE69632634T2 (de) | Arbitrierungseinheit zum Multiprozessorsystembuszugriff mit Wiederholungsfähigkeit | |
DE3876780T2 (de) | Mikrorechner mit eingebauter chipauswahl und programmierbarer busdehnung. | |
DE10345383B4 (de) | Bankadreßabbildung gemäß einer Bankhaltezeit bei dynamischen Direktzugriffsspeichern | |
DE68923026T2 (de) | Speicherdiagnosegerät und Verfahren. | |
DE69021461T2 (de) | Lese/Schreib-Speicher. | |
DE69028017T2 (de) | Arbitrierungssystem mit Beschränkung der aufeinanderfolgenden Zugriffsberechtigungen von Hochprioritätsanforderungen | |
DE68919539T2 (de) | Datenverarbeitungssystem mit Zugriffsquellen von verschiedenem Durchsatz. | |
DE69026479T2 (de) | Datenprozessor mit Wartezustandsteuerungseinheit | |
DE3844033C2 (de) | Speicherschaltung für ein Mikroprozessorsystem | |
DE112005002336T5 (de) | Befehl, der unterschiedliche Operationen in unterschiedlichen Chips steuert | |
DE3438869A1 (de) | Computersystem mit adressumwandlung | |
EP0107026B1 (de) | Speicherprogrammierbare Steuerung | |
DE3115541A1 (de) | "datenverarbeitungsanlage" | |
DE69822866T2 (de) | System und verfahren zum beenden von lock-step-sequenzen in einem multiprozessorsystem | |
DE69031524T2 (de) | Verfahren und Vorrichtung zur Datenübertragung zwischen Prozessorelementen | |
DE3704056A1 (de) | Peripherer dma-controller fuer datenerfassungssysteme | |
DE3885985T2 (de) | Speichersteueranordnung für ein Daten verarbeitendes System. | |
CH634671A5 (de) | Kanalspeicher-adapter. | |
DE10296959T5 (de) | System und Verfahren zum Steuern der Buszuteilung während Cache-Speicher-Burstzyklen | |
DE69025524T2 (de) | Vorrichtung und Verfahren zur Steuerung von Speicherzugriffsanforderungen in einem digitalen Datenverarbeitungssystem | |
EP0013697B1 (de) | Auffrischung benötigendes seitenorganisiertes Speichersystem | |
DE68923899T2 (de) | Halbleiterspeicher. | |
DE2149200C3 (de) | Einrichtung zur Auswahl von im Verlauf einer Programmbearbeitung am häufigsten benötigten Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |