DE3607092A1 - Speichermanagementsystem - Google Patents

Speichermanagementsystem

Info

Publication number
DE3607092A1
DE3607092A1 DE19863607092 DE3607092A DE3607092A1 DE 3607092 A1 DE3607092 A1 DE 3607092A1 DE 19863607092 DE19863607092 DE 19863607092 DE 3607092 A DE3607092 A DE 3607092A DE 3607092 A1 DE3607092 A1 DE 3607092A1
Authority
DE
Germany
Prior art keywords
memory
address
circuit
signal
rstvec
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.)
Withdrawn
Application number
DE19863607092
Other languages
English (en)
Inventor
Boleslav Kanata Ontario Sykora
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi Semiconductor ULC
Original Assignee
Mitel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitel Corp filed Critical Mitel Corp
Publication of DE3607092A1 publication Critical patent/DE3607092A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment

Description

Deckblatt
Die Erfindung betrifft ein Speichermanagementsystem zum Erfassen des Vorhandenseins von Speichern in einem Rechner und zum Neuordnen der Speicheradressen.
Rechner weisen üblicherweise einen oder mehrere Speichermodule auf, die aus mehreren Speicherbanken bestehen, die mit Einzelspeichern verbunden sind, wie beispielsweise dynamischen Speichern mit wahlfreiem Zugriff, sogenannten DRAM-Speichern. Eine Hauptsteuerschaltung, beispielsweise in Form eines Mikrocomputers, erzeugt Adressensignale zum Zugriff bestimmter Speicherstellen der Einzelspeicher. Beispielsweise wird ein Adressensignal von den Speichermodulen empfangen und dort dekodiert, wodurch eine bestimmte Speicherbank freigeschaltet wird und der Zugriff an eine bestimmte DRAM-Speicherstelle erfolgt, die durch das Adressensignal definiert ist.
Bei Rechnern, die eine bestimmte, nicht ausbaubare Anzahl von Speichern aufweisen, besteht ein festgelegtes Verhältnis zwischen den erzeugten Adressensignalen und den DRAM-Speicherstellen.
Es ist jedoch wünschenswert, daß die Speicherkapazität ausbaubar ist, d.h. eine größere Anzahl von Einzelspeichern untergebracht werden kann, entweder um die Software zu erweitern oder um mehr Daten speichern zu können. Bei einem Speicherausbau ist es jedoch erforderlich, auf kostspielige Weise die Dekodierschaltung für die Speichermoduladressen neu auszulegen und neu zu verdrahten.
Um dies zu vermeiden, wird bei einem bekannten Speichermanagementsystem mehrere Hardwareadressenmultiplexer und ein Systemprogramm eingesetzt, welches eine Unterroutine für die Neuordnung der Adressensignale während der Ausführung eines Anwendungsprogramms umfaßt.
Die Neuordnung erfolgt hierbei im On-Line-Betrieb.
Die neu geordneten Adressensignale werden sodann dazu verwendet, die aktuellen DRAM-Speicherstellen anzusteuern. Die vorerwähnte Subroutine für die Neuordnung und die zusätzliche Hardware sind kompliziert und die Ausführung der Subroutine benötigt relativ viel Zeit. Ein oder mehrere Hauptsteuerschaltungen befinden sich im Wartestatus während der Adressenneuordnung, da eine Vielzahl von Zugriffsbefehlen zum Schalten der Banken in den Programmkode eingesetzt werden, wodurch die Arbeitsgeschwindigkeit zur Ausführung des Anwendungsprogramms wesentlich reduziert wird, während gleichzeitig die Gefahr von Speicherzugriffsfehlern erhöht wird.
Die Subroutine für die Neuordnung kann sich hierbei nicht selbst anpassen, so daß bei einer weiteren Veränderung der Speicherkapazität verschiedene Parameter des Programms modifiziert werden müssen, so daß der das Programm speichernde Speicher gegen einen anderen ausgetauscht werden muß.
Es besteht die Aufgabe, das Speichermanagementsystem so auszubilden, daß es flexibel bei Veränderung der Speicherkapazität und ohne Wartestatus arbeitet.
Gelöst wird diese Aufgabe durch die kennzeichnenden Merkmale des Anspruches 1. Vorteilhafte Ausgestaltungen sind den Unteransprüchen entnehmbar.
Ein Rechner kann zwei Speichermodule aufweisen, die als Haupt- und als Ausbauspeichermodule bezeichnet werden, wobei in jedem Modul bis zu 2,5M Bytes bei Verwendung von fünf 512k Bytes Speicherbanken unterbringbar sind. Es ist erforderlich, daß die Speicheradressen des Haupt- und des Ausbaumoduls aufeinanderfolgend sind, sich also aneinander anschließen. Die erste Speicherstelle des Ausbauspeichermoduls würde somit eine Adresse von 280000 (hex) haben. Weist jedoch der Hauptspeichermodul nicht seine volle Speicherkapazität von 2,5M Bytes auf, sondern beispielsweise nur 1M Byte, entsprechend der Anzahl der angeschlossenen DRAM-Chips (nur zwei der fünf Speicherbanken sind belegt), dann beträgt die letzte gültige Speicheradresse des Hauptspeichermoduls gleich 0FFFFF (hex) so daß die nächstfolgende Adresse 100000 (hex) wäre.
Gemäß der Erfindung wird die Speicherkapazität von 1M Byte des Hauptspeichermoduls erfaßt und in Abhängigkeit davon bestimmte Steuersignale den Freigabeschaltungen übermittelt, so daß, wenn die Hauptsteuerschaltung das Adressensignal 100000 (hex) erzeugt, die Freigabesignalschaltungen des Ausbaumoduls die Speicherstellen, die bei 280000 (hex) beginnen, zu einer Anfangsadresse von 100000 (hex) neu ordnen und die Freigabesignalschaltungen des Hauptspeichermoduls die Speicheradressen ab 100000 (hex) löschen, so daß nunmehr der Zugriff auf die erste Speicherstelle des Ausbauspeichermoduls erfolgt und nicht die Stelle 100000 des Hauptspeichermoduls angesteuert wird. Somit ist die zweite Speicher- bank des Hauptspeichermoduls in direktem Anschluß an die erste Bank des Ausbaumoduls gruppiert.
Das System ist billig und der Überprüfungs- und Neuordnungsprozeß wird bevorzugt ausgeführt vor dem ersten Speicherzugriff, d.h. während der Einschaltphase, so daß kein Wartezustand erforderlich ist während der Durchführung der folgenden Speicherzugriffe, wie dies bei der bekannten On-Line-Technik der Fall ist.
Werden im Hauptspeichermodul weitere Banken aufgefüllt, beispielsweise die dritte, vierte oder fünfte Bank, dann erfaßt das System das Vorhandensein des ausgebauten Speichers während des Einschaltens des Rechners und ordnet die erste Speicherstelle des Speichermoduls derart, daß diese sich anschließt an die letztgültige Speicherstellenadresse des erweiterten Hauptspeichermoduls. Das System ist also selbst anpaßbar.
Bei dem System werden die Speicherbanken aufeinanderfolgend aktiviert, d.h. freigeschaltet. In jede freigeschaltete Datenbank wird an einer bestimmten Speicherstelle ein Datensignal eingegeben und sodann die Speicherstelle wiederum angesteuert, um zu prüfen, ob an der Speicherstelle das Datensignal gespeichert ist. Auf diese Weise wird festgestellt, an welche Speicherbanken Speicher angeschlossen sind.
Nach der Feststellung, welche Datenbanken eines Hauptspeichermoduls mit Speichern belegt sind, wird ein Steuersignal einer Freigabesignalschaltung eines Ausbauspeichers zugeführt, wodurch die diesem zugeführten Adressensignale neu geordnet werden, so daß die Startspeicheradresse im Ausbauspeicher sich direkt anschließt an die letzte Adressenstelle im Hauptspeichermodul.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend anhand der Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm des Datenverhaltungssystems und
Fig. 2 das Blockdiagramm eines bevorzugten Ausführungsbeispiels einer Schaltung zur Erzeugung von Freigabesignalen.
In Fig. 1 ist ein Hauptspeichermodul 1 und ein Ausbauspeichermodul 2 dargestellt, von denen jedes aus mehreren Speicherbanken B0, B1, B2 BN besteht. Jede Speicherbank besteht üblicherweise aus einem oder mehreren Speicherchips mit wahlweisem Zugriff, nachfolgend als dynamische RAM-Speicherchips bzw. als DRAM-Speicherchips bezeichnet. Hierbei handelt es sich beispielsweise um 64k oder um 256k DRAM-Chips. Die Datenanschlüsse der Datenbanken sind mit einem Datenbus 3 verbunden, während die Adresseneingänge der Datenbanken verbunden sind mit den Adressenleitungen A1 bis Ai eines Adressenbusses 4, der mit der Hauptsteuerschaltung 5 verbunden ist, die beispielsweise aus einem Mikroprozessor besteht.
Eine erste und eine zweite Schaltung 6A und 6B zur Erzeugung von Freigabesignalen sind mit ihren Freigabesignalausgängen verbunden mit Eingängen der Speicherbanken B0, B1, B2 der Haupt- und Ausbauspeichermodule 1 und 2. Eine erste Anzahl von Adresseneingängen der Freigabesignalschaltungen sind verbunden mit den Adressenleitungen Ai bis Aj des Adressenbusses 4. Eine zweite Anzahl von Eingängen sind mit einem Steuerbus 7 verbunden, der an die Hauptsteuerschaltung
5 angeschlossen ist. Zusätzlich ist ein Signalausgang RSTVEC[mit Überstrich] der Hauptsteuerschaltung 5 verbunden mit einem weiteren Eingang der Freigabesignalschaltung 6A und über eine Klinkenschaltung 8 mit einem weiteren Eingang der Freigabesignalschaltung 6B. Hierbei erfolgt die Steuerung der Klinkenschaltung durch Steuersignale der Adressen- und Steuerbusse 4 und 7.
Im Betrieb erzeugt die Hauptsteuerschaltung 5 bestimmte Adressen- und Steuersignale, die den Adressen- und Steuerbussen 4 und 7 und dem Ausgang RSTVEC[mit Überstrich] zur Anlage an die Freigabesignalschaltung 6A zugeführt werden. Durch eine Softwaresteuerung werden von der Schaltung 6A die Speicherbanken B0, B1, B2 BN des Hauptspeichermoduls 1 aufeinanderfolgend frei geschaltet, wobei die Hauptsteuerschaltung 5 das Vorhandensein von damit verbundenen Speicherchips feststellt.
Beispielsweise wird die Speicherbank B0 durch die Freigabesignalschaltung 6A freigeschaltet und die Hauptsteuerschaltung 5 erzeugt ein Datensignal, das dem Datenbus 3 zugeführt und in einer bestimmten Speicherstelle der Speicherbank B0 gespeichert wird. Als nächstes liest die Hauptsteuerschaltung 5 das an dieser Speicherstelle gespeicherte Datensignal ab. Sind mit der Speicherbank B0 DRAM-Chips verbunden, dann liest die Hauptsteuerschaltung 5 das zuvor gespeicherte Datensignal ab. Ist jedoch mit der Speicherbank B0 kein DRAM-Chip verbunden, dann wird ein Fehlersignal von beispielsweise FF(hex) abgelesen in Abhängigkeit des Zugriffs eines nicht vorhandenen DRAM-Chips. Wird jedoch das Vorhandensein eines DRAM-Chips erfaßt, dann bleibt die Speicherbank B0 freigeschaltet und die Bank B1 wird nunmehr freigeschaltet, worauf sich der Prozeß zum Erfassen von DRAM-Chips wiederholt.
Wird eine leere Speicherbank erfaßt, d.h. eine Bank mit der keine DRAM-Chips verbunden sind, dann schaltet die Hauptsteuerschaltung 5 die leere Speicherbank ab und speichert bestimmte Steuersignale in den Freigabesignalschaltungen, wodurch angezeigt wird, welche Speicherbanken B0, B1, B2 BN des Hauptspeichermoduls 1 mit ihnen verbundene DRAM-Chips aufweisen. Hierbei wird die erstgültige Speicherstelle des Ausbauspeichermoduls 2 so geordnet, daß sie sich anschließt mit der letztgültigen Speicherstelle des Hauptspeichermoduls 1, wie dies im einzelnen anhand der Fig. 2 erläutert wird.
Während der Ausführung eines Programms durch die Hauptsteuerschaltung 5 werden durch die Schaltungen 6A und 6B die Speicheradressen neu geordnet, so daß aufeinanderfolgende Speicherstellen des Haupt- und des Ausbauspeichermoduls 1 und 2 freigeschaltet werden.
Das Signal am Ausgang RSTVEC[mit Überstrich] ist ein Rückstellsignal, das während einer Systemrückstellung alle Speichermodule abschaltet, um vom ROM einen Vektorabruf zu ermöglichen. Es schaltet über die Klinke 8 abwechselnd den Haupt- und den Ausbauspeichermodul frei, um während des Neuordnungsprozesses die Datenbusübermittlung aufzuteilen.
In Fig. 2 ist eine der Freigabesignalschaltungen 6A bzw. 6B dargestellt. Gemäß einem bevorzugten Ausführungsbeispiel weist jeder der Module 1, 2 fünf Speicherbanken auf, welche mit B0 bis B4 bezeichnet sind. Eine programmierbare Feldlogikschaltung 9 ist mit ihren Adresseneingängen verbunden mit den Adressenleitungen A17 bis A22 des Adressenbusses 4. Diese
Adressenleitungen A17 bis A22 entsprechen den Adressenleitungen Ai bis Aj in Fig. 1. Die Datenleitungen D0 bis D4 des Datenbusses 3 sind verbunden mit den Dateneingängen 1D bis 5D eines Datenregisters 10. Ein Rückstelleingang des Registers 10 ist verbunden mit der Steuerleitung RESET[mit Überstrich] des Steuerbusses 7. Die Ausgänge 1Q bis 5Q des Registers 10 sind verbunden mit den Steuereingängen CTRL der Feldlogikschaltung 9, die nachfolgend als PAL bezeichnet wird. Diese erzeugen Steuersignale A, B, C, D und X, wie später noch erläutert wird. Ein weiterer Steuereingang von PAL 9, der mit RSTVEC[mit Überstrich] bezeichnet ist, ist verbunden mit dem entsprechend bezeichneten Steuerausgang der Hauptsteuerschaltung 5, wie im Zusammenhang mit Fig. 1 erwähnt bzw. im Falle der Freigabesignalschaltung 6B mit diesem Ausgang über die Klinke 8.
Die Ausgänge RCAS0[mit Überstrich], RCAS1[mit Überstrich], RING2[mit Überstrich], RCAS3[mit Überstrich] und RCAS4[mit Überstrich] von PAL 9 sind verbunden mit jeweils ersten Eingängen der NAND-Gatter 11 bis 15 und der NOT-Gatter 16 bis 20. Die zweiten Eingänge der NAND-Gatter 11 bis 15 sind verbunden mit einem Ausgang eines NAND-Gatters 21.
Ein erster Eingang des NAND-Gatters 21 ist verbunden mit einem Ausgang eines NOT-Gatters 22, dessen Eingang verbunden ist mit der Steuerleitung REFRESH[mit Überstrich] des Steuerbusses 7, der mit der Hauptsteuerschaltung 5 verbunden ist. Der zweite Eingang des NAND-Gatters 21 ist verbunden mit dem Ausgang von zwei in Serie geschalteten NOT-Gattern 23 und 24. Der Eingang des Gatters 24 ist an die Adressenleitung A23 der Hauptsteuerschaltung 5 angeschlossen.
Die Ausgänge der NAND-Gatter 11 bis 15 sind mit jeweils einem Eingang der NAND-Gatter 25 bis 29 verbunden. Die Ausgänge der NOT-Gatter 16 bis 20 sind jeweils mit ersten Eingängen der NAND-Gatter 30 bis 34 verbunden.
Die Ausgänge der NAND-Gatter 25 bis 34 liegen jeweils an Ausgangswiderständen 35 bis 44.
Die Ausgangswiderstände 35 bis 39 sind verbunden mit Reihenadressen-Wahlausgangsanschlüssen RAS0[mit Überstrich] bis RAS4[mit Überstrich] während die Widerstände 40 bis 44 angeschlossen sind an Spaltenadressen-Wahlausgangsanschlüssen CAS0[mit Überstrich] bis CAS4[mit Überstrich]. Die Reihen- und die Spaltenadressen-Wahlausgangsanschlüsse sind verbunden mit den Freischalteingängen für die Reihen und Spalten der Speicherbanken B0 bis B4 des Hauptspeichermoduls 1.
Ein Adressenwahlausgang AS[mit Überstrich] der Hauptsteuerschaltung 5 ist verbunden mit einem NOT-Gatter 45, dessen Ausgang verbunden ist mit den jeweils zweiten Eingängen der NAND-Gatter 25 bis 29. Dieser Ausgang ist weiterhin verbunden mit dem Eingang IN einer Verzögerungsleitung 46, deren Ausgang verbunden ist mit den jeweils zweiten Eingängen der NAND-Gatter 30 bis 34.
Als erstes wird die Anzahl der Speicher ermittelt, die mit benachbarten Speicherbanken B0 bis B4 des Hauptspeichermoduls 1 verbunden sind. PAL 9 erzeugt aktive Signale L an bestimmten Ausgängen RCAS0[mit Überstrich] bis RCAS4[mit Überstrich] in Abhängigkeit von bestimmten empfangenen Signalen an dessen Adressen- und Steuereingängen ADDRESS und CTRL als Ergebnis einer Programmierung gem. den Gleichungen, die nachfolgend anhand der Tabellen 1 und 2 erläutert werden.
Gemäß dem bevorzugten Ausführungsbeispiel umfassen die Speichermodule 1 und 2 jeweils fünf Speicherbanken B0 bis B4, welche DRAM-Chips von 64k oder 256k Byte enthalten. Besteht der Hauptsteuermodul 1 aus 64k-Chips, dann sind Daten bis zu 640K Bytes unterbringbar. Besteht er aus 256k-Chips, dann sind Daten bis zu 2,5M Bytes unterbringbar. In entsprechender Weise weist der Ausbauspeicher 2 entweder 64k oder 256k-Chips auf, nicht jedoch beide Chiparten.
Die PAL-Gleichungen zur Erzeugung der aktiven Freischaltsignale L an den Ausgängen RCAS0[mit Überstrich] bis RCAS4[mit Überstrich] zum Freischalten bestimmter Datenbanken sind in den Tabellen 1 und 2 wiedergegeben.
Tabelle 1
PAL-Gleichungen für 64k-Chips
RCAS0[mit Überstrich] =
/A22 * /A21 * /A20 * /A19 * /A18 * /A17 * RSTVEC * /X +
/A22 * /A21 * /A20 * A19 * /A18 * A17 * RSTVEC * X * /C * /D * A +
/A22 * /A21 * A20 * /A19 * /A18 * /A17 * RSTVEC * X * C * /D * /A +
/A22 * /A21 * A20 * A19 * /A18 * /A17 * RSTVEC * X * C * /D * A +
/A22 * A21 * /A20 * /A19 * /A18 * /A17 * RSTVEC * X * C * D * /A +
/A22 * A21 * /A20 * A19 * /A18 * /A17 * RSTVEC * X * C * D * A +
/A22 * /A21 * /A20 * A19 * /A18 * /A17 * RSTVEC * X * /C * D * A
RCAS1[mit Überstrich] =
/A22 * /A21 * /A20 * /A19 * /A18 * A17 * RSTVEC * /X * A +
/A22 * /A21 * /A20 * A19 * A18 * /A17 * RSTVEC * X * /C * /D * A * D +
/A22 * /A21 * A20 * /A19 * /A18 * A17 * RSTVEC * X * C * /D * /A * D +
/A22 * /A21 * A20 * A19 * /A18 * A17 * RSTVEC * X * C * /D * A * D +
/A22 * A21 * /A20 * /A19 * /A18 * A17 * RSTVEC * X * C * D * /A * D +
/A22 * A21 * /A20 * A19 * /A18 * A17 * RSTVEC * X * C * D * A * D +
/A22 * /A21 * /A20 * A19 * /A18 * A17 * RSTVEC * X * /C * D * A * D
RCAS2[mit Überstrich] =
/A22 * /A21 * /A20 * /A19 * A18 * /A17 * RSTVEC * /X * A * B +
/A22 * /A21 * /A20 * A19 * A18 * A17 * RSTVEC * X * /C * /D * A * D +
/A22 * /A21 * A20 * /A19 * A18 * /A17 * RSTVEC * X * C * /D * /A * D +
/A22 * /A21 * A20 * A19 * A18 * /A17 * RSTVEC * X * C * /D * A * D +
/A22 * A21 * /A20 * /A19 * A18 * /A17 * RSTVEC * X * C * D * /A * D +
/A22 * A21 * /A20 * A19 * A18 * /A17 * RSTVEC * X * C * D * A * D +
/A22 * /A21 * /A20 * A19 * A18 * /A17 * RSTVEC * X * /C * D * A * D
RCAS3[mit Überstrich] =
/A22 * /A21 * /A20 * /A19 * A18 * A17 * RSTVEC * /X * A * B * C +
/A22 * /A21 * A20 * /A19 * /A18 * /A17 * RSTVEC * X * /C * /D * A * D +
/A22 * /A21 * A20 * /A19 * A18 * A17 * RSTVEC * X * C * /D * /A * D +
/A22 * /A21 * A20 * A19 * A18 * A17 * RSTVEC * X + C * /D * A * D +
/A22 * A21 * /A20 * /A19 * A18 * A17 * RSTVEC * X * C * D * /A * D +
/A22 * A21 * /A20 * A19 * A18 * A17 * RSTVEC * X * C * D * A * D +
/A22 * /A21 * /A20 * A19 * A18 * A17 * RSTVEC * X * /C * D * A * D
RCAS4[mit Überstrich] =
/A22 * /A21 * /A20 * A19 * /A18 * /A17 * RSTVEC * /X * A * B * C *
/A22 * /A21 * A20 * /A19 * /A18 * A17 * RSTVEC * X * /C * /D * A * D +
/A22 * /A21 * A20 * A19 * /A18 * /A17 * RSTVEC * X * C * /D * /A * D +
/A22 * A21 * /A20 * /A19 * /A18 * /A17 * RSTVEC * X * C * /D * A * D +
/A22 * A21 * /A20 * A19 * /A18 * /A17 * RSTVEC * X * C * D * /A * D +
/A22 * A21 * A20 * /A19 * /A18 * /A17 * RSTVEC * X * C * D * A * D +
/A22 * /A21 * A20 * /A19 * /A18 * /A17 * RSTVEC * X * /C * D * A * D
Tabelle 2
PAL-Gleichungen für 256k-Chips
RCAS0[mit Überstrich] =
/A22 * /A21 * /A20 * /A19 * RSTVEC * /X +
/A22 * /A21 * /A20 * A19 * /A18 * A17 * RSTVEC * X * /C * /B * A +
/A22 * /A21 * A20 * /A19 * RSTVEC * X * C * /B * /A +
/A22 * /A21 * A20 * A19 * RSTVEC * X * C * /B * A +
/A22 + A21 * /A20 * /A19 * RSTVEC * X * C * B * /A +
/A22 * A21 * /A20 * A19 * RSTVEC * X * C * B * A +
/A22 * /A21 * /A20 * A19 * RSTVEC * X * /C * B * A
RCAS1[mit Überstrich] =
/A22 * /A21 * /A20 * A19 * RSTVEC * /X * A +
/A22 * /A21 * A20 * /A19 * /A18 * A17 * RSTVEC * X * /C * /B * A * D +
/A22 * /A21 * A20 * A19 * RSTVEC * X * C * /B * /A * D +
/A22 * A21 * /A20 * /A19 * RSTVEC * X * C * /B * A * D +
/A22 * A21 * /A20 * A19 * RSTVEC * X * C * B * /A * D +
/A22 * A21 * A20 * /A19 * RSTVEC * X * C * B * A * D +
/A22 * /A21 * A20 * /A19 * RSTVEC * X * /C * B * A * D
RCAS2[mit Überstrich] =
/A22 * /A21 * A20 * /A19 * RSTVEC * /X * A * B *
/A22 * /A21 * A20 * A19 * /A18 * A17 * RSTVEC * X * /C * /B * A * D +
/A22 * A21 * /A20 * /A19 * RSTVEC * X * C * /B * /A * D +
/A22 * A21 * /A20 * A19 * RSTVEC * X * C * /B * A * D +
/A22 * A21 * A20 * /A19 * RSTVEC * X * C * B * /A * D +
/A22 * A21 * A20 * A19 * RSTVEC * X * C * B * A * D +
/A22 * /A21 * A20 * A19 * RSTVEC * X * /C * B * A * D
RCAS3[mit Überstrich] =
/A22 * /A21 * A20 * A19 * RSTVEC * /X * A * B * C +
/A22 * A21 * /A20 * /A19 * /A18 * A17 * RSTVEC * X * /C * /B * A * D +
/A22 * A21 * /A20 * A19 * RSTVEC * X * C * /B * /A * D +
/A22 * A21 * A20 * /A19 * RSTVEC * X * C * /B * A * D +
/A22 * A21 * A20 * A19 * RSTVEC * X * C * B * /A * D +
A22 * /A21 * /A20 * /A19 * RSTVEC * X * C * B * A * D +
/A22 * A21 * /A20 * /A19 * RSTVEC * X * /C * B * A * D
RCAS4[mit Überstrich] =
/A22 * A21 * /A20 * /A19 * RSTVEC * /X * A * B * C * D +
/A22 * A21 * /A20 * A19 * /A18 * A17 * RSTVEC * X * /C * /B * A * D +
/A22 * A21 * A20 * /A19 * RSTVEC * X * C * /B * /A * D +
/A22 * A21 * A20 * A19 * RSTVEC * X * C * /B * A * D +
A22 * /A21 * /A20 * /A19 * RSTVEC * X * C * B * /A * D +
A22 * /A21 * /A20 * A19 * RSTVEC * X * C * B * A * D +
/A22 * A21 * /A20 * A19 * RSTVEC * X * /C * B * A * D
Die Arbeitsweise eines bevorzugten Ausführungsbeispiels wird nachfolgend anhand der Fig. 1 und 2 und der Tabelle 2 beschrieben, wobei vorausgesetzt ist, daß in den Banken B0 und B1 des Hauptspeichermoduls und in der Bank B0 des Ausbauspeichermoduls 2 jeweils 256k-Chips angeschlossen sind.
Gemäß dem bevorzugten Ausführungsbeispiel ist der Datenbus 3 ein 16 Bit-Datenbus während die DRAM-Chips 1 Bit-Bauteile sind. In jeder Datenbank sind 16 DRAM-Chips angeordnet zur Erzeugung von 16 Bit-Datensignalen. Somit weist jede Bank des Hauptspeichermoduls 1 eine Speicherkapazität von 512k Bytes auf, so daß eine Gesamtspeicherkapazität von 1M Bytes entsteht. Der Ausbauspeichermodul 2 weist eine Kapazität von 512k Bytes auf, so daß die gesamte Speicherkapazität des Systems 1,5M Bytes beträgt.
In Abhängigkeit einer Systemrückstellung oder einer Systemeinschaltung wird eine Anfangsroutine ausgeführt, bei welcher die Hauptsteuerschaltung 5 logische Signale L den Adressenleitungen A3 bis A23 des Adressenbusses 4 zuführt sowie dem Ausgang RSTVEC[mit Überstrich] und der Leitung RESET[mit Überstrich] des Steuerbusses 7. Hierdurch liegen an den Ausgängen 1Q bis 5Q des Registers 10 und an den Eingängen ADDRESS, CTRL und RSTVEC[mit Überstrich] von PAL 9 logische Signale
L an, wobei das logische Signal L der Leitung RSTVEC[mit Überstrich] unter der Steuerung von Signalen des Adressen- und Steuerbusses 4 und 7 in der Klinkenschaltung 8 verklinkt wird. Am Ausgang RSTVEC[mit Überstrich] wird sodann ein logisches Signal H erzeugt und der Freigabesignalschaltung 6A zugeführt. Somit nimmt der Ausgang RCAS0[mit Überstrich] von PAL 9 den Wert H an, wodurch eine Speicherkapazität von 512k Bytes der Speicherbank B0 des Hauptspeichermoduls 1 freigeschaltet werden.
Die Freigabesignalschaltung 6B bleibt abgeschaltet, da das Signal L der Leitung RSTVEC[mit Überstrich] in der Klinkenschaltung 8 verriegelt wurde. Auf diese Weise wird keine der Banken B0 bis B5 des Ausbauspeichermoduls 2 freigeschaltet, so daß eine gleichzeitige Übertragung zum Datenbus 3 vermieden wird.
Um zu bestimmen, ob an die Speicherbank B0 DRAM-Chips angeschlossen sind oder nicht wird eine bestimmte Speicherstelle innerhalb der vorerwähnten 512k Bytes ausgewählt und von der Hauptsteuerschaltung 5 über den Datenbus 3 ein hexadezimales Datensignal ausgegeben. Das Datensignal wird sodann von der Hauptsteuerschaltung 5 abgelesen, falls ein DRAM-Chip mit der freigeschalteten Datenbank B0 verbunden ist. Falls jedoch mit der freigeschalteten Datenbank B0 kein DRAM-Chip verbunden ist, wird von dort ein Fehldatensignal FF(hex) empfangen.
Um die Speichergröße zu bestimmen, d.h. die Anzahl der Speicherbanken B0 bis B4, mit denen DRAM-Chips verbunden sind, werden die Speicherbanken aufeinanderfolgend freigeschaltet und in der oben beschriebenen Weise überprüft.
Ist beispielsweise die Speicherbank B1 freizuschalten, erzeugt die Hauptsteuerschaltung 5 ein Signal H, das dem Eingang 1D des Registers 10 zugeführt und dort gespeichert wird. Auf die Leitung A wird somit vom Register 10 ein Signal H aufgegeben und einem der Steuereingänge CTRL von PAL 9 zugeführt. Da die Signale X, B, C und D den Wert L haben und das Signal den Wert H aufweist, nimmt der Ausgang RCAS1[mit Überstrich] von PAL 9 den Wert L an, wenn ein Adressensignal 0001 von der Hauptsteuerschaltung 5 den Adressenleitungen A22 bis A19 zugeführt wird (siehe Tabelle 2).
Das Signal L vom Ausgang RCAS1[mit Überstrich] wird dem ersten Eingang des NAND-Gatters 12 zugeführt. Der Ausgang des NAND-Gatters 21 weist normalerweise den Wert H auf, nimmt jedoch den Wert L an in Abhängigkeit eines Signals L in der Leitung REFRESH[mit Überstrich], das im Inverter 22 umgekehrt wird, und in Verbindung mit einem Signal H in der Adressenleitung A23. Dies bedeutet, daß der Ausgang des NAND-Gatters 12 von seinem normalen Wert L auf den Wert H schaltet in Abhängigkeit davon, daß der Ausgang RCAS1[mit Überstrich] von PAL 9 den Wert L annimmt oder der Ausgang des NAND-Gatters 21 auf den Wert L geht (beispielsweise während der DRAM Neuordnung, wie später noch erläutert wird).
Der Wert H vom NAND-Gatter 12 wird dem ersten Eingang des NAND-Gatters 26 zugeführt. Dem zweiten Eingang des NAND-Gatters 26 wird der Wert H zugeführt in Abhängigkeit, daß ein Adressenwahlsignal AS[mit Überstrich] mit dem Wert L durch die Hauptsteuerschaltung 5 erzeugt wird, das im Inverter 45 umgekehrt und dem NAND-Gatter 26 zugeführt wird. Liegen an den Eingängen des NAND-Gatters 26 die Signale H an, dann schaltet sein Ausgang auf den Wert L, so daß ein Speicherreihen-Wahlsignal RAS1[mit Überstrich] erzeugt wird, das alle Speicherreihen der Speicherbank B1 freischaltet. Das aktive Signal L am Ausgang RCAS1[mit Überstrich] wird im NOT-Gatter 17 invertiert und dem ersten Eingang des NAND-Gatters 31 zugeführt. In der Verzögerungsleitung 46 wird das invertiere Signal AS[mit Überstrich] um etwa 80 Nanosekunden verzögert und dem zweiten Eingang des NAND-Gatters 31 zugeführt. Somit nimmt der Ausgang des NAND-Gatters 31 den Wert L an, wodurch ein Speicherspalten-Wahlsignal CAS1[mit Überstrich] erzeugt wird, das Speicherspalten der Speicherbank B1 etwa 80 Nanosekunden nach der Erzeugung des Signals RAS1[mit Überstrich] freischaltet und somit eine komplette Freigabe der Speicherbank B1 bewirkt.
Die Verzögerung von etwa 80 Nanosekunden zwischen den Signalen an den Ausgängen RAS1[mit Überstrich] und CAS1[mit Überstrich] zur Anwahl der Reihen und Spalten ist erforderlich, um ausreichend Zeit zu haben, damit die 8 Bit-Reihenadressensignale verklinkt werden können, um die Adresseneingänge der DRAM-Schaltungen multiplexen zu können, bevor die 8 Bit Spaltenadressensignale verklinkt werden. Bekannterweise weisen die DRAM-Chips eine bestimmte kapazitive Ladung auf.
Nach dem Freischalten der Freigabe der Speicherbank B1 durch die Signale an den Anschlüssen RAS1[mit Überstrich] und CAS1[mit Überstrich] wird in eine bestimmte Speicherstelle durch die Hauptsteuerschaltung 5 das vorerwähnte Datensignal eingegeben und sodann abgelesen um zu ermitteln, ob mit der Datenbank B1 DRAM-Speicherchips verbunden sind.
Gemäß den vorgenannten Voraussetzungen hat nunmehr die Hauptsteuerschaltung 5 festgestellt, daß mit den Speicherbanken B0 und B1 des Hauptspeichermoduls
DRAM-Chips verbunden sind. Als nächstes wird nunmehr die Speicherbank B2 überprüft.
Zur Überprüfung der Speicherbank B2 werden Signale C, D und X mit dem Wert L den Eingängen CTRL von PAL 9 zugeführt, gleichzeitig mit der Zuführung von Signalen A und B mit dem Wert H. Auf diese Weise erzeugt der Ausgang RCAS2[mit Überstrich] ein Signal mit dem Wert L, sobald ein Adressensignal 0010 (hex) von der Hauptsteuerschaltung den Adressenleitungen A22 bis A19 zugeführt wird. Hierdurch nehmen die Ausgänge RAS2[mit Überstrich] und CAS2[mit Überstrich] der NAND-Gatter 27 und 32 jeweils den Wert L an, wodurch die Speicherbank B2 freigegeben ist. Die Hauptsteuerschaltung 5 erzeugt das Datensignal und erwartet die Rückmeldung dieses Datensignals von einer bestimmten Speicherstelle innerhalb der Speicherbank B2, liest jedoch ein Fehlersignal FF(hex), da mit dieser Speicherbank keine DRAM-Chips verbunden sind. Die Hauptsteuerschaltung hat also das Vorhandensein von DRAM-Chips lediglich bei den Speicherbanken B0 und B1 festgestellt und erzeugt somit ein D0-Signal mit dem Wert H und D1- bis D3-Signale mit dem Wert L, die im Register 10 gespeichert werden. Das Register 10 erzeugt ein Steuersignal, das den Eingängen CTRL von PAL 9 zugeführt wird, wobei das Steuersignal A den Wert H und die Signale B, C und D den Wert L aufweisen. Demzufolge werden lediglich die Banken B0 und B1 des Hauptspeichermoduls 1 freigeschaltet in Abhängigkeit des Empfangs weiterer Adressensignale von der Hauptsteuerschaltung 5.
Die Hauptsteuerschaltung 5 erzeugt sodann ein zweites Steuersignal zur Speicherung in der Freigabesignalschaltung 6B, damit Adressensignale, welche über die Adressenleitungen A17 bis A22 empfangen werden, neu geordnet werden, um eine Kontiguität zwischen der letzten gültigen Speicherstelle im Hauptspeichermodul 1 und der ersten Speicherstelle im Ausbauspeichermodul 2 herzustellen.
Wie schon zuvor erwähnt, sind die Schaltungen 6A und 6B zur Erzeugung der Freigabesignale gleich aufgebaut, jedoch ist der Eingang RSTVEC[mit Überstrich] von PAL 9 in der Schaltung 6A direkt mit dem Ausgang RSTVEC[mit Überstrich] der Hauptsteuerschaltung 5 verbunden, während der Eingang RSTVEC[mit Überstrich] von PAL 9 in der Schaltung 6B mit dem Ausgang der Klinkenschaltung 8 verbunden ist, deren Eingang am Ausgang RSTVEC[mit Überstrich] der Hauptsteuerschaltung 5 liegt. Somit werden entweder die PAL-Schaltungen 9 der Schaltungen 6A oder 6B gem. den Gleichungen der Tabellen 1 oder 2 programmiert in Abhängigkeit davon, ob es sich um 64k- oder um 256k-DRAM-Chips handelt.
Die Hauptsteuerschaltung 5 gibt das vorerwähnte zweite Steuersignal in das Register 10 der Freigabesignalschaltung 6B ein. Gemäß dem zweiten Steuersignal nehmen die Signale X und C den Wert H an und werden dem Steuereingang CTRL von PAL 9 zugeführt, gleichzeitig mit den Signalen A, B und D, die den Wert L aufweisen. Die Hauptsteuerschaltung schaltet dann die Klinkenschaltung 8 so, daß das Signal in der Leitung RSTVEC[mit Überstrich] für den Modul 6B den Wert H annimmt. Der Ausgang RCAS0[mit Überstrich] von PAL 9 der Schaltung 6B nimmt den Wert L an, wenn in den Adressenleitungen A22 bis A19 das Adressensignal 0010 (hex) auftritt, resultierend, daß der dritte OR-Ausdruck in der PAL-Gleichung zutrifft (Tabelle 2).
Aus der Tabelle 2 ist ersichtlich, daß wenn die Bank B0 des Hauptspeichermoduls 1 freigegeben ist, die Werte der Adressenleitung A22, A21, A20 und A19 jeweils 0 sind. Ist die Bank B1 freigegeben, dann sind die Werte in diesen Leitungen gleich 0, 0, 0 und 1. Ist die Bank B0 des Ausbauspeichermoduls 2 freigeschaltet, dann sind die Signalwerte in den vorgenannten Leitungen A22 bis 19 gleich 0, 0, 1 und 0. Hieraus ergibt sich, daß die Startspeicheradresse im Ausbauspeicher 2 sich direkt anschließt an die letzte Adressenstelle im Hauptspeichermodul 1.
Entsprechend der vorstehenden Beschreibung erzeugt die Hauptsteuerschaltung 5 ein Datensignal, das in eine bestimmte Speicherstelle der Speicherbank B0 des Ausbauspeichermoduls 2 eingeschrieben und von dort wieder abgerufen wird, um zu bestimmen, ob mit dieser Bank DRAM-Chips verbunden sind.
Als nächstes wird die Bank B1 des Ausbauspeichermoduls 2 freigeschaltet wobei der Ausgang RCAS1[mit Überstrich] von PAL 9 der Schaltung 6B den logischen Signalwert L annimmt. Dieses Ausgangssignal wird aktiv, wenn der Wert 0011 an die Eingänge A22 bis A19 von PAL 9 angelegt wird, entsprechend dem dritten OR-Ausdruck der Gleichung RCAS1[mit Überstrich] in Tabelle 2. Wie schon zuvor beschrieben, wird das Datensignal in die Speicherbank B1 eingegeben zur Bestimmung, ob mit dieser Bank DRAM-Chips verbunden sind. Entsprechend den vorgenannten Bedingungen wird der Wert FF abgelesen, was anzeigt, daß die Bank B1 keine DRAM-Chips enthält.
Wie schon zuvor erwähnt, werden die DRAM-Chips periodisch aufgefrischt bzw. wiederbelebt in Abhängigkeit der
Erzeugung eines Signals REFRESH[mit Überstrich] durch die Hauptsteuerschaltung 5. Tritt dieses Signal auf und weist die Adressenleitung A23 des Adressenbusses 4 den Wert H auf, dann nehmen die Ausgänge der NAND-Gatter 11 bis 15 jeweils den Wert H an. Die Ausgänge der NAND-Gatter 25 bis 29 nehmen den Wert L an, wenn die Ausgänge der NAND-Gatter 11 bis 15 den Wert H annehmen und wenn vom NOT-Gatter 45 ein Signal H erzeugt wird, wenn diesem Gatter ein Signal AS[mit Überstrich] mit dem Wert L zugeführt wird. Die Reihenadressenausgänge RAS0[mit Überstrich] bis RAS4[mit Überstrich] der NAND-Gatter 25 bis 29 nehmen somit gleichzeitig den Wert L an, wodurch ein Refreshing der 2,5M Bytes des Speichersystems bewirkt wird.
Bei einem Prototyp wurden im Hauptspeichermodul 1 sechs Speichergrößen untergebracht, abhängig davon, ob 64k oder 256k Byte DRAM-Chips verwendet wurden. Die Tabelle 3 gibt die Werte der Signale A, B und C wieder entsprechend den verschiedenen Speichergrößen des Hauptspeichermoduls. Diese Signale werden den Steuereingängen CTRL von PAL 9 der Freigabesignalschaltung 6B zugeführt, um die Startadresse neu zu lokalisieren, damit diese sich direkt an die letzte gültige Speicheradresse des Hauptspeichermoduls 1 anschließt.
Tabelle 3
C B A Größe (Bytes)
_____ _____________
0 1 1 512k
0 0 1 640k
1 0 0 1M
1 0 1 1.5M
1 1 0 2M
1 1 1 2.5M
Damit die Schaltung einwandfrei arbeiten kann, ist es erforderlich, daß die DRAM-Chips verbunden werden mit aufeinanderfolgenden bzw. benachbarten Speicherbänken der Speichermodule. Eine einwandfreie Funktionsweise ist also nicht gegeben, wenn mit den Speicherbanken B0, B1 und B3 des Hauptspeichermoduls 1 DRAM-Chips verbunden sind, jedoch nicht mit der Bank B2. In diesem Fall erfaßt die Hauptsteuerschaltung nur das Vorhandensein von Chips, die mit den Banken B0 und B1 verbunden sind.
Es sind verschiedene Variationsmöglichkeiten gegeben. Beispielsweise kann der Hauptspeichermodul 1 und der Ausgangsspeichermodul 2 mehr oder weniger als fünf Speicherbanken enthalten. Es ist auch möglich, daß mehr als zwei Speichermodule vorgesehen sind. Die Speicherchips können eine Kapazität aufweisen, die größer ist oder kleiner als die vorerwähnten 64k und 256k Bytes. Anstelle der DRAM-Chips können auch andere Speicherschaltungen verwendet werden, wie beispielsweise statische RAM-Speicher. Anstelle der PAL-Schaltung können auch andere Freigabesignale erzeugende programmierbare logische Schaltungen verwendet werden, wie beispielsweise programmierbare logische Felder, sogenannte PLAS-Schaltungen.

Claims (7)

1. Speichermanagementsystem zum Erfassen des Vorhandenseins von Speichern in den Speicherbänken eines Rechners und zum Neuordnen der Speicheradressen, wenn die Anzahl der mit Speichern verbundenen Speicherbanken verändert wird, wobei die Speicherbanken in Speichermodule gruppiert sind, mit einer Hauptsteuerschaltung, die Adressen- und Steuersignale erzeugt und Datensignale sendet und empfängt, dadurch gekennzeichnet, daß jedem Speichermodul (1, 2) eine Freigabesignalschaltung (6A, 6B) zugeordnet ist, durch erste Adressensignale die Hauptsteuerschaltung (5) zuerst die eine Freigabesignalschaltung (6A) angesteuert wird und dabei in Aufeinanderfolge deren Speicherbanken (B0 bis BN) auf das Vorhandensein von Speichern überprüft wird, die Hauptsteuerschaltung (5) ein Steuersignal erzeugt, wenn die eine Freigabesignalschaltung (6A) eine Speicherbank ohne Speicher erfaßt, daß die benachbarte Freigabesignalschaltung (6B) ansteuert, der zweite Adressensignale von der Hauptsteuerschaltung (5) zugeführt werden und dabei in der Aufeinanderfolge die mit der benachbarten Freigabesignalschaltung (6B) verbundenen Speicherbanken (B0 bis BN) auf das Vorhandensein von Speichern überprüft werden, wobei bei Erzeugung des Steuersignals die Adressen so geordnet werden, daß die erste Speicherstelle der ersten Speicherbank (B0), mit der die benachbarte Freigabesignalschaltung (6B) verbunden ist, sich an die letzte Speicherstelle der einen Speicher aufweisenden Datenbank anschließt, die zuvor von der einen Freigabesignalschaltung (6A) überprüft wurde.
2. Speichermanagementsystem nach Anspruch 1, dadurch gekennzeichnet, daß zur Überprüfung der Speicherbanken (B0 bis BN) die Hauptsteuerschaltung (5) in die durch eine Freigabesignalschaltung (6A, 6B) freigeschaltete Speicherbank ein Datensignal eingibt und zum Abruf die Speicherstelle ansteuert, in die dieses Datensignal eingegeben wurde.
3. Speichermanagementsystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die eine Freigabesignalschaltung (6A) bei Erzeugung des Steuersignals alle Adressen ab der letzten Speicherstelle löscht und die benachbarte Freigabesignalschaltung (6B) der ersten Speicherstelle eine an die Adresse der letzten Speicherstelle sich anschließende Adresse zuordnet, an die sich die weiteren Adressen des benachbarten Speichermoduls (2) anschließen.
4. Speichermanagementsystem nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Freigabesignalschaltungen (6A, 6B) programmierbare Feldlogikschaltungen sind.
5. Speichermanagementsystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Freigabesignalschaltungen (6A, 6B) die Reihen und Spalten einer frei zu schaltenden Speicherbank zueinander verzögert ansteuert, wobei das Freischaltsignal (AS) der Hauptsteuerschaltung den frei schaltenden Bauteilen (24 bis 34) für die Reihen und Spalten einmal direkt und zum anderen über eine Verzögerungsleitung (46) zugeführt wird.
6. Speichermanagementsystem nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Freigabesignalschaltungen (6A, 6B) Speicher zum Speichern der mit Speichern versehenen Speicherbanken (B0 bis BN) aufweisen.
7. Speichermanagementsystem nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß jeder Freigabesignalschaltung (6A, 6B) von einem Steuerbus (7) Signale zugeführt werden, die die Speicherbank der aufeinanderfolgend frei zu schaltenden Speicherbanken (B0 bis BN) bestimmen, die Freischaltung durch ein Adressensignal erfolgt, das in der Freigabesignalschaltung (6A, 6B) nur gespeichert wird, wenn die freigeschaltete Speicherbank einen Speicher aufweist und dieses Adressensignal die Freischaltung derjenigen Speicherbank bewirkt, die als nächstes von den Signalen des Steuerbus (7) angesteuert wird, wobei aufeinanderfolgende Adressensignale aufeinanderfolgende Speicherbanken definieren.
DE19863607092 1985-05-28 1986-03-05 Speichermanagementsystem Withdrawn DE3607092A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA000482566A CA1234224A (en) 1985-05-28 1985-05-28 Computer memory management system

Publications (1)

Publication Number Publication Date
DE3607092A1 true DE3607092A1 (de) 1986-12-04

Family

ID=4130575

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863607092 Withdrawn DE3607092A1 (de) 1985-05-28 1986-03-05 Speichermanagementsystem

Country Status (8)

Country Link
US (1) US4860252A (de)
JP (1) JPS61273649A (de)
CN (1) CN85109307A (de)
CA (1) CA1234224A (de)
DE (1) DE3607092A1 (de)
FR (1) FR2582829A1 (de)
GB (1) GB2175716B (de)
IT (1) IT1185741B (de)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2191879A (en) * 1986-05-12 1987-12-23 Computer Concepts Integrated circuit device arrangement
JPS63143689A (ja) * 1986-12-06 1988-06-15 Tokyo Electric Co Ltd メモリカ−ドの容量検出装置
JPS63225837A (ja) * 1987-03-13 1988-09-20 Fujitsu Ltd 距離付きベクトルアクセス方式
US5038320A (en) * 1987-03-13 1991-08-06 International Business Machines Corp. Computer system with automatic initialization of pluggable option cards
GB8725111D0 (en) * 1987-03-13 1987-12-02 Ibm Data processing system
US4926314A (en) * 1987-03-17 1990-05-15 Apple Computer, Inc. Method and apparatus for determining available memory size
GB2204721B (en) * 1987-05-11 1991-10-23 Apple Computer Method and apparatus for determining available memory size
US5003506A (en) * 1987-06-02 1991-03-26 Anritsu Corporation Memory capacity detection apparatus and electronic applied measuring device employing the same
US5226122A (en) * 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
US5040153A (en) * 1987-10-23 1991-08-13 Chips And Technologies, Incorporated Addressing multiple types of memory devices
IT1216087B (it) * 1988-03-15 1990-02-22 Honeywell Bull Spa Sistema di memoria con selezione predittiva di modulo.
US5027313A (en) * 1988-08-25 1991-06-25 Compaq Computer Corporation Apparatus for determining maximum usable memory size
JPH02245840A (ja) * 1989-03-20 1990-10-01 Fujitsu Ltd 記憶装置
GB2232511B (en) * 1989-05-19 1993-08-25 Research Machines Ltd Self configuring memory system
US5237672A (en) * 1989-07-28 1993-08-17 Texas Instruments Incorporated Dynamically adaptable memory controller for various size memories
US5012408A (en) * 1990-03-15 1991-04-30 Digital Equipment Corporation Memory array addressing system for computer systems with multiple memory arrays
JPH0418638A (ja) * 1990-05-11 1992-01-22 Fujitsu Ltd 静的メモリ割当て処理方法
JPH04229487A (ja) * 1990-06-19 1992-08-18 Dell Usa Corp ダイナミックramを含むメモリサブシステムのリフレッシュ動作制御システムを有するディジタルコンピュータ及びリフレッシュ動作制御方法
US5253354A (en) * 1990-08-31 1993-10-12 Advanced Micro Devices, Inc. Row address generator for defective DRAMS including an upper and lower memory device
US5269010A (en) * 1990-08-31 1993-12-07 Advanced Micro Devices, Inc. Memory control for use in a memory system incorporating a plurality of memory banks
US5293593A (en) * 1990-10-11 1994-03-08 Hewlett-Packard Company Method and apparatus for the mapping of physically non-contiguous memory fragments to be linearly addressable
EP0484760A3 (en) * 1990-11-08 1992-07-15 Kabushiki Kaisha Toshiba Memory refresh control system upon connection of extension unit
US5265231A (en) * 1991-02-08 1993-11-23 Thinking Machines Corporation Refresh control arrangement and a method for refreshing a plurality of random access memory banks in a memory system
EP0510241A3 (en) * 1991-04-22 1993-01-13 Acer Incorporated Upgradeable/downgradeable computer
US5761479A (en) * 1991-04-22 1998-06-02 Acer Incorporated Upgradeable/downgradeable central processing unit chip computer systems
US5551012A (en) * 1991-04-22 1996-08-27 Acer Incorporated Single socket upgradeable computer motherboard with automatic detection and socket reconfiguration for inserted CPU chip
US5291584A (en) * 1991-07-23 1994-03-01 Nexcom Technology, Inc. Methods and apparatus for hard disk emulation
EP0529142A1 (de) * 1991-08-30 1993-03-03 Acer Incorporated Ausbaubare und abbaubare Rechner
US5687342A (en) * 1991-09-18 1997-11-11 Ncr Corporation Memory range detector and translator
EP0615190A1 (de) * 1993-03-11 1994-09-14 Data General Corporation Erwertbarer Speicher für einen Digitalrechner
JPH07271711A (ja) * 1994-03-28 1995-10-20 Toshiba Corp コンピュータシステム
US6360285B1 (en) 1994-06-30 2002-03-19 Compaq Computer Corporation Apparatus for determining memory bank availability in a computer system
US5909702A (en) * 1995-09-29 1999-06-01 Intel Corporation Memory address translations for programs code execution/relocation
US5715207A (en) * 1996-03-28 1998-02-03 International Business Machines Corporation Memory presence and type detection using multiplexed memory line function
US5860134A (en) * 1996-03-28 1999-01-12 International Business Machines Corporation Memory system with memory presence and type detection using multiplexed memory line function
JPH09293015A (ja) * 1996-04-24 1997-11-11 Mitsubishi Electric Corp メモリシステムおよびそれに用いられる半導体記憶装置
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US5774135A (en) * 1996-11-05 1998-06-30 Vlsi, Technology, Inc. Non-contiguous memory location addressing scheme
JP3649011B2 (ja) * 1998-01-09 2005-05-18 株式会社日立製作所 コンピュータシステム
TW591388B (en) * 2003-02-21 2004-06-11 Via Tech Inc Memory address decoding method and related apparatus by bit-pattern matching
TWI221221B (en) * 2003-02-27 2004-09-21 Via Tech Inc Address decoding method and related apparatus by comparing mutually exclusive bit-patterns of address
WO2015116050A1 (en) 2014-01-29 2015-08-06 Hewlett-Packard Development Company, L.P. Thermal ink jet printhead
EP3896696A1 (de) 2014-01-31 2021-10-20 Hewlett-Packard Development Company, L.P. Dreidimensionale adressierung für speicher

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0136178A2 (de) * 1983-09-29 1985-04-03 Tandem Computers Incorporated Automatische Speicherkarten-Rekonfiguration

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3435420A (en) * 1966-01-03 1969-03-25 Ibm Contiguous bulk storage addressing
US3815103A (en) * 1973-01-02 1974-06-04 Honeywell Inf Systems Memory presence checking apparatus
US4025903A (en) * 1973-09-10 1977-05-24 Computer Automation, Inc. Automatic modular memory address allocation system
DE2364408C3 (de) * 1973-12-22 1979-06-07 Olympia Werke Ag, 2940 Wilhelmshaven Schaltungsanordnung zur Adressierung der Speicherplätze eines aus mehreren Chips bestehenden Speichers
US4030080A (en) * 1974-01-07 1977-06-14 Texas Instruments Incorporated Variable module memory
US3959774A (en) * 1974-07-25 1976-05-25 California Institute Of Technology Processor which sequences externally of a central processor
JPS5444535B2 (de) * 1975-01-31 1979-12-26
US4050098A (en) * 1975-11-17 1977-09-20 Gulf & Western Industries, Inc. Self-addressing modules for programmable controller
JPS559260A (en) * 1978-07-03 1980-01-23 Nec Corp Information processing system
US4234934A (en) * 1978-11-30 1980-11-18 Sperry Rand Corporation Apparatus for scaling memory addresses
JPS5580164A (en) * 1978-12-13 1980-06-17 Fujitsu Ltd Main memory constitution control system
US4303993A (en) * 1979-10-10 1981-12-01 Honeywell Information Systems Inc. Memory present apparatus
JPS573158A (en) * 1980-06-09 1982-01-08 Hitachi Ltd Discrimination system for package unit storage device
US4468729A (en) * 1981-06-29 1984-08-28 Sperry Corporation Automatic memory module address assignment system for available memory modules
US4400794A (en) * 1981-11-17 1983-08-23 Burroughs Corporation Memory mapping unit
IT1142074B (it) * 1981-11-24 1986-10-08 Honeywell Inf Systems Sistema di elaborazione dati con allocazione automatica dell'indirizzo in una memoria modulare
IT1153611B (it) * 1982-11-04 1987-01-14 Honeywell Inf Systems Procedimento di mappatura della memoria in sistema di elaborazione dati
JPS59148963A (ja) * 1983-02-14 1984-08-25 Fujitsu Ltd 記憶装置制御方式
US4545010A (en) * 1983-03-31 1985-10-01 Honeywell Information Systems Inc. Memory identification apparatus and method
JPS59197943A (ja) * 1983-04-23 1984-11-09 Ricoh Co Ltd メモリのアドレス空間検出方式
US4589063A (en) * 1983-08-04 1986-05-13 Fortune Systems Corporation Data processing system having automatic configuration
US4622633A (en) * 1983-12-06 1986-11-11 Tri Sigma Corporation Object building method for self configuring computer network
US4609986A (en) * 1984-06-14 1986-09-02 Altera Corporation Programmable logic array device using EPROM technology

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0136178A2 (de) * 1983-09-29 1985-04-03 Tandem Computers Incorporated Automatische Speicherkarten-Rekonfiguration

Also Published As

Publication number Publication date
GB8526597D0 (en) 1985-12-04
CA1234224A (en) 1988-03-15
US4860252A (en) 1989-08-22
IT1185741B (it) 1987-11-12
CN85109307A (zh) 1986-11-26
GB2175716B (en) 1989-07-19
FR2582829A1 (fr) 1986-12-05
GB2175716A (en) 1986-12-03
IT8522962A0 (it) 1985-11-22
JPS61273649A (ja) 1986-12-03

Similar Documents

Publication Publication Date Title
DE3607092A1 (de) Speichermanagementsystem
DE2617408C3 (de) Speichermodul fur ein Datenverarbeitungsgerät mit Speicherhierarchie
DE2354521C2 (de) Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln
DE2142634C3 (de) Assoziativspeicher
DE19530100C2 (de) Integrierte Dram-Schaltung mit Reihenkopierschaltung und Verfahren
DE10116914A1 (de) Schaltungsanordnung mit einem Speicherfeld
DE3906497A1 (de) Selbstkonfigurierendes speichersystem
DE3311948C2 (de)
DE2404146A1 (de) Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem
DE2856133A1 (de) Verarbeitungssystem fuer einen assoziativspeicher
DE2264166A1 (de) Verfahren und anordnung zur steuerung der erneuerung des inhalts von speicherelementen
DE3620858C2 (de)
DE19645745B4 (de) Dynamischer Schreib-/Lesespeicher
DE3128729A1 (de) Halbleiter-speichersystem
DE2725396C3 (de)
DE4304886C2 (de) Halbleiterspeichervorrichtung
DE2926322A1 (de) Speicher-subsystem
DE2527062B2 (de) Anpassungsfähiger Adressendecodierer
DE2117581C3 (de) Einrichtung zur Adressenprüfung
DE10306149B4 (de) Verfahren zum Zuweisen von Speicheranordnungs-Adressen, Pufferbaustein und Speichermodul
DE2513262A1 (de) Digitale codeumwandlungsanordnung
DE10226585C1 (de) RAM-Speicherschaltung
DE3024153A1 (de) Speicher-subsystem
EP0134822B1 (de) Digitalspeicher
DE10105627B4 (de) Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8139 Disposal/non-payment of the annual fee