DE3235264C2 - - Google Patents

Info

Publication number
DE3235264C2
DE3235264C2 DE3235264A DE3235264A DE3235264C2 DE 3235264 C2 DE3235264 C2 DE 3235264C2 DE 3235264 A DE3235264 A DE 3235264A DE 3235264 A DE3235264 A DE 3235264A DE 3235264 C2 DE3235264 C2 DE 3235264C2
Authority
DE
Germany
Prior art keywords
memory
main memory
data
local
sequence
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 - Lifetime
Application number
DE3235264A
Other languages
English (en)
Other versions
DE3235264A1 (de
Inventor
Fumitaka Oome Tokyo Jp Sato
Kunihiro Tokorozawa Saitama Jp Nagura
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Publication of DE3235264A1 publication Critical patent/DE3235264A1/de
Application granted granted Critical
Publication of DE3235264C2 publication Critical patent/DE3235264C2/de
Granted 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/251Local memory within processor subsystem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/253Centralized memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)
  • Storage Device Security (AREA)

Description

Die Erfindung betrifft ein Verfahren zum Betreiben eines lokalen Speichers in einer Datenverarbeitungsvorrichtung.
Aufgrund der Entwicklung von großintegrierten Schaltkreisen (LSI) und Mikrorechnern konnten in jüngster Zeit Datenverarbeitungsvorrichtungen zunehmend kostengünstiger hergestellt werden. Im Zuge dieser Entwicklung kann auch ein LSI oder ein Mikroprozessor zur Ausführung systematischer Operationen mit einer Datenverarbeitungsvorrichtung verbunden werden. Unter Verwendung eines LSI oder eines Mikroprozessors für die Steuerung bzw. Eingabe/Ausgabesteuerung wird dann nach Maßgabe spezifischer Software eine ganz spezielle Verarbeitung durchgeführt.
Fig. 1 veranschaulicht ein Beispiel für eine Datenverarbeitungsvorrichtung, bei der eine Zentraleinheit (CPU) 11 arithmetische Operationen in Übereinstimmung mit einem in einem Hauptspeicher (MMU) 12 gespeicherten Programm unter Überwachung von nicht dargestellten, an eine Sammelschiene 15 angeschlossenen Eingabe/Ausgabegeräte steuert.
Eingabe/Ausgabe-Prozessoren (IPO) 13 und 14 führen die Datenübertragung zwischen der Sammelschiene 15 und den Eingabe/Ausgabegeräten durch. Die Zentraleinheit 11, der Hauptspeicher 12 und die Prozessoren 13 und 14 sind an die Sammelschiene 15 angeschlossen.
Bei der Datenverarbeitungsvorrichtung gemäß Fig. 1 belegen die Eingabe/Ausgabegeräte die Sammelschiene 15 für die Datenübertragung und den gegenseitigen Informationsaustausch über diese Sammelschiene.
Im Hauptspeicher 12 sind allgemeine Programme, einschließlich eines Betriebssystems (OS) gespeichert. Die Zentraleinheit 11 bewirkt einen Zugriff zum Hauptspeicher 12 über die Sammelschiene 15, sooft die Betriebssystemsteuerung benötigt wird. In diesem Fall belegt die Zentraleinheit 11 die Sammelschiene 15 und überträgt Daten in vorbestimmten Einheiten. Anschließend steht die Sammelschiene 15 für andere Vorrichtungen oder Geräte offen.
Bei der beschriebenen Datenverarbeitungsvorrichtung belegt jedoch die Zentraleinheit 11 die Sammelschiene 15 häufig, weil das Betriebssystem in seinem Maßstab erweitert ist. Hierdurch vergrößert sich der Gesamtanteil für das Betriebssystem weiter unter Beeinträchtigung der Leistung der Datenverarbeitungsvorrichtung.
Ein Cache-Speichersystem soll die Hochgeschwindigkeitsverarbeitung ermöglichen und die Leistungsfähigkeit der Zentraleinheit 11 verbessern. Ein Cache-Speicher ist ein Hochgeschwindigkeitsspeicher für die Zwischenspeicherung der zwischen der Zentraleinheit 11 und dem Hauptspeicher 12 übertragenen Daten. Obgleich die Speicherkapazität des Cache- Speichers klein ist, werden die Daten mit hoher Geschwindigkeit zwischen der Zentraleinheit 11 und dem Hauptspeicher 12 übertragen, weil ein Hochgeschwindigkeits-Speicherelement Verwendung findet.
Der Hauptspeicher 12 und der Cache-Speicher sind jeweils im wesentlichen in Blöcke einer festen Länge (32 Byte zu 64 Byte) unterteilt. Die im Hauptspeicher 12 gespeicherten Daten werden zum Cache-Speicher in Blockeinheiten übertragen. Wenn die Zentraleinheit 11 einen Operator einer gerade ausgeführten Anweisung oder die nächste Anweisung anfordert, prüft sie zunächst, ob derartige Daten im Cache-Speicher gespeichert sind. Wenn in letzterem die nötigen Daten gespeichert sind, werden diese Daten sofort aus diesem Speicher ausgelesen und als Adreßtabelle in einem Speicher abgespeichert, der ein sog. Inhaltsverzeichnis darstellt, um eine Hochgeschwindigkeits- Adressierung durchzuführen. Falls dagegen im Cache- Speicher die nötigen Daten nicht enthalten sind, wird ein diese Daten enthaltender Block aus dem Hauptspeicher 12 ausgelesen und zum Cache-Speicher übertragen. Gleichzeitig wird der oben beschriebene Block für die Verarbeitung durch die Zentraleinheit 11 benutzt. Ein Block enthält im allgemeinen eine Zahl von Daten, die um einen Befehl größer ist als die verarbeitete Datenzahl. Im Betrieb ist es weiterhin wahrscheinlicher, daß die nötigen Daten im selben Block des Hauptspeichers 12 enthalten sind. Bei der beschriebenen Vorrichtung wird daher die Verarbeitungsgeschwindigkeit des Rechners erhöht.
Bei Anwendung des Cache-Speichersystems wird die Leistung der Zentraleinheit 11 verbessert. Die Hardware (Inhaltsverzeichnis und seine peripheren Schaltungen) für die Steuerung der Zentraleinheit 11 besitzt jedoch große Abmessungen. Weiterhin wird dabei das Steuersystem der Zentraleinheit 11 komplex.
In der DE-OS 28 54 485 ist ein Datenverarbeitungssystem mit Speicherhierarchie beschrieben, bei dem eine System-Datenschiene und mehrere Systemeinheiten einschließlich eines Hauptspeichers, eines Pufferspeichers und einer Zentraleinheit, die alle an die System-Datenschiene angeschlossen sind, vorgesehen sind. Bei diesem Datenverarbeitungssystem werden verschiedene Adressen- und Datenformate verwendet, wobei beispielsweise bestimmte Bits dazu benutzt werden, um eine Speicherstelle zu adressieren. Der Hauptspeicher und der Pufferspeicher haben so verschiedene Adressen, wobei für den Pufferspeicher ein Inhaltsverzeichnis vorgesehen ist. Damit soll ein Datenverarbeitungssystem geschaffen werden, bei dem die Informationsübertragung zwischen einer Zentraleinheit und einem Pufferspeicher und der Nachrichtenaustausch zwischen einem Hauptspeicher und anderen Systemkomponenten verbessert ist, wobei die Wahrscheinlichkeit eines Staus des Datenverkehrs auf einer Datenschiene auf ein Minimum reduziert wird.
Weiterhin beschäftigt sich der Aufsatz von C. J. Conti: "Concepts for Buffer Storage", in "Computer Group News", März 1969, Seiten 9 bis 11, mit einer Datenverarbeitungsvorrichtung, die für Sektorpuffer und Direktabbildungspuffer sogenannte "Cache"-Speicher verwendet, welche die folgenden Eigenschaften aufweisen: Wann immer eine Zentraleinheit auf Adressen eines Cache- Speichers und speziell eines Pufferspeichers zugreift, in welchem kopierte Daten sind, nimmt der Cache-Speicher den Zugriff unabhängig von Lese- oder Schreiboperationen vor. Das Kopieren von in einem Hauptspeicher gespeicherten Daten in den Cache-Speicher wird nicht durch dessen Software, sondern automatisch durch dessen Hardware ausgeführt. Um dies nun durchzuführen, ist eine Gültigkeitsbit-Anzeige, ob der Block in den Cache-Speicher kopiert ist oder nicht, unvermeidlich für jeden Block im Inhaltsverzeichnis des Cache-Speichers vorgesehen. Die den Cache-Speicher ansteuernde Hardware liest automatisch die Speicherinhalte des Blocks aus dem Hauptspeicher aus, wenn der Block einschließlich der entsprechenden Adresse im Cache-Speicher nicht vorliegt oder wenn das Gültigkeitsbit nicht "gültig" anzeigt, selbst wenn der Block einschließlich der Adressen im Cache-Speicher vorhanden ist.
Schließlich sind in der DE-Z. "Elektronische Rechenanlagen", Jahrgang 20, 1978, Heft 3, Seiten 109 bis 114) lokale Speicher in Datenverarbeitungssystemen beschrieben, wobei auch auf sog. Cache-Pufferspeicher eingegangen wird, die zwischen einem Zentralprozessor und einem Hauptspeicher liegen, wobei hier in der Speicherhierarchie der Hauptspeicher einem Basisspeicher nachgeschaltet ist. Ein solcher Cache-Pufferspeicher wird in ähnlicher Weise adressiert wie der Hauptspeicher und erfordert eine gesonderte Einspeicherungs- und Ausspeicherungs-Verarbeitung.
Es ist Aufgabe der vorliegenden Erfindung, ein Verfahren zum Betreiben eines lokalen Speichers in einer Datenverarbeitungsvorrichtung zu schaffen, bei dem die Betriebsleistung einer Sammelschiene und die Ausführgeschwindigkeit eines Befehlszyklus wesentlich erhöht wird.
Diese Aufgabe wird durch ein Verfahren nach dem Patentanspruch 1 gelöst.
Vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den Patentansprüchen 2 und 3.
Die Erfindung ermöglicht ein Verfahren, bei dem ein Satz von Routineprogrammen, die häufig in einem Betriebssystem benutzt werden, in einem in einer Zentraleinheit angeordneten lokalen Speicher gespeichert ist und die Zentraleinheit einen Zugriff zum lokalen Speicher herstellt, so daß die Betriebsleistung einer Sammelschiene und die Geschwindigkeit eines Zentraleinheit-Befehlszyklus wesentlich erhöht werden und damit die Leistungsfähigkeit der Sammelschiene bedeutend verbessert wird.
Mit dem Verfahren zur Datenverarbeitung gemäß der Erfindung werden die folgenden Vorteile erzielt:
  • a) Da der lokale Speicher ein Hochgeschwindigkeitsspeicher ist, ist die Zykluszeit des Zentraleinheit- Befehls kürzer als die Zugriffzeit zum Hauptspeicher.
  • b) Während die Zentraleinheit einen Zugriff zum lokalen Speicher herstellt, ist ein Zugriff anderer Eingabe/Ausgabegeräte zum Hauptspeicher möglich.
  • c) Im Vergleich zu einer Anlage, bei der das Betriebssystems in einem Festwertspeicher in Hardware-Weise programmiert ist, kann das Betriebssystem einfach verbessert und modifiziert werden.
  • d) Da sich der Inhalt des lokalen Speichers dynamisch ändern läßt, läßt sich die Anlage mittels einer entsprechenden Änderung flexibel an verschiedene Anwendungsfälle anpassen.
Im folgenden ist eine bevorzugte Ausführungsform der Erfindung im Vergleich zum Stand der Technik anhand der beigefügten Zeichnung näher erläutert. Es zeigt
Fig. 1 ein Blockschaltbild des Gesamtaufbaus einer Datenverarbeitungsvorrichtung,
Fig. 2 ein Blockschaltbild des Aufbaus einer Zentraleinheit,
Fig. 3 Speicherpläne eines Hauptspeichers und eines lokalen Speichers, und
Fig. 4 ein Blockschaltbild der Schaltungsanordnung einer Speichersteuereinheit gemäß Fig. 2.
In Fig. 2 sind nur die die Erfindung betreffenden Teile veranschaulicht. Eine Zentraleinheit (CPU) 11 umfaßt eine arithmetische Logikeinheit (ALU) 21, einen lokalen Speicher (LMU) 22, eine Speichersteuereinheit (MCU) 23 und eine Sammelschienen-Schnittstelleneinheit (BIU) 24. Die Logikeinheit 21 führt eine logische Berechnung nach Maßgabe von im lokalen Speicher 22 oder in einem Hauptspeicher (MMU) 12 gespeicherten Programmdaten durch und steuert mit einer Anlage verbundene Eingabe/Ausgabegeräte an. Der lokale Speicher (LMU) 22 stellt einen zusätzlichen Speicher dar; in ihm ist ein Satz von Programmen gespeichert, die aus einem Operationssystem (OS) des Hauptspeichers 12 häufig benutzt werden. Bei der dargestellten Ausführungsform können gemäß Fig. 3 die Speicherinhalte der Adressen von 16KB bis 32KB entsprechenden Speicherstellen kopiert und im lokalen Speicher 22 gespeichert werden. Die Speichersteuereinheit (MCU) 23 ist mit der arithmetischen Logikeinheit 21 und dem lokalen Speicher 22 verbunden, und ihr Innenaufbau ist in Fig. 4 dargestellt. Die Speichersteuereinheit 23 umfaßt ein Adressenregister, einen Komparator, Flip-Flops sowie verschiedene Arten von nicht dargestellten Torschaltungen, und sie steuert die Speicher an.
Die Sammelschienen-Schnittstelleneinheit (BIU) 24 dient zur Verbindung der Zentraleinheit 11 mit einer Sammelschiene 15 und weist einen Sammelschienen-Treiber/Empfänger (nicht dargestellt) sowie andere Arten von Torschaltungen auf. Die Sammelschiene 15 wird durch eine Anzahl von Adressenleitungen, Datenleitungen und Steuerleitungen gebildet.
Bei der beschriebenen Datenverarbeitungsvorrichtung liest die Zentraleinheit 11 einen Teil des Betriebssystems aus dem Hauptspeicher 12 aus und schreibt diesen Teil in den lokalen Speicher 22 ein. Eine Adresse, die die Übereinstimmung zwischen einem im lokalen Speicher 22 eingeschriebenen Programm und einer Speicherstelle des Hauptspeichers 12 angibt, wird in einem Adressenregister 54 in der Speichersteuereinheit 23 gesetzt. Danach führt die Zentraleinheit 11 Operationen unabhängig vom Speicherinhalt des lokalen Speichers 22 durch. Sooft die Zentraleinheit 11 einen Zugriff zum Hauptspeicher 12 herstellt, wird eine durch erstere gelieferte Adresse durch einen Komparator 55 mit der im Adressenregister 54 gesetzten Größe verglichen. Wenn das von der Zentraleinheit 11 gelieferte Adressendatum innerhalb der Gesamtheit der aus den im Adressenregister 54 gespeicherten Adressendaten und der Kapazität des lokalen Speichers 22 liegt, stellt die Zentraleinheit 11 einen Zugriff zum lokalen Speicher 22 her. Gleichzeitig wird eine Signalausgabe zur Sammelschiene 15 durch die Sammelschienen-Schnittstelleneinheit 24 verhindert.
Im folgenden sind Aufbau und Arbeitsweise der Datenverarbeitungsvorrichtung im einzelnen erläutert. Wenn der Betrieb der Anlage eingeleitet wird, wird ein Ladeprogramm (Loader) von einem externen Speicher, z. B. einer mit Eingabe/Ausgabe-Prozessoren 13 und 14 (IOPs) verbundenen Plattenspeichereinheit, in den Hauptspeicher 12 eingegeben. Durch dieses Ladeprogramm werden Daten (z. B. Betriebssystemprogramm und Benutzerprogramm) von einer Magnetplatteneinheit in den Hauptspeicher 12 eingegeben. Die im Hauptspeicher 12 gespeicherten Daten werden teilweise oder ganz auch in den lokalen Speicher 22 eingegeben. Dabei wird ein Teil jeder dem Speicherbereich des Hauptspeichers 12 zugewiesenen Adressenstelle auch als Adresse des lokalen Speichers 22 zugewiesen. Die Einschreib- und Lesebefehle werden sowohl im Hauptspeicher 12 als auch im lokalen Speicher 22 gemeinsam benutzt. In diesem Fall muß die Zentraleinheit 11 entweder den Hauptspeicher 12 oder den lokalen Speicher 22, welche dieselben Adressen aufweisen, wählen. Wenn weiterhin ein Programm, das einen Datenbereich im lokalen Speicher 22 aufweist, in den lokalen Speicher 22 kopiert und dieses Programm ausgeführt wird, ergibt sich eine gewisse Störung, weil die Daten durch andere Geräte, wie die Eingabe/Ausgabegeräte, aus diesem Datenbereich ausgelesen werden müssen. In diesem Fall müssen daher Daten in den Datenbereich des Hauptspeichers 12 eingeschrieben werden, da die Eingabe/Ausgabegeräte nicht das Vorhandensein des lokalen Speichers 22 erkennen.
Zur Lösung dieses Problems ist ein Flip-Flop zur Unterscheidung der Dauer des Einleitungsbetriebs von der Dauer des eigentlichen Betriebs vorgesehen. Wenn der Betrieb der Anlage eingeleitet wird, wird ein Befehlswort des Ladeprogramms aus dem Hauptspeicher 12 ausgelesen, und im Hauptspeicher 12 gespeicherte Daten (z. B. Benutzerprogramm) werden in den lokalen Speicher 22 kopiert.
Wenn sich die Anlage dagegen im eigentlichen Betrieb befindet, wird ein Befehlswort des Benutzerprogramms aus dem lokalen Speicher 22 ausgelesen, während Daten (Operationsergebnis aufgrund der Ausführung des Benutzerprogramms) aus dem Hauptspeicher 12 ausgelesen und in ihn eingeschrieben werden.
Fig. 4 veranschaulicht eine Schaltung für die Steuerung der vorstehend beschriebenen Operation. Die Schaltung stellt einen Teil der Speichersteuereinheit (MCU) 23 dar, die einen Regler aufweist, der ein Speicherstartsignal MEMS nach Lieferung eines Lesesignals READ und eines Einschreibsignals WRITE liefert, um eine vorbestimmte Operation auszuführen. Ein derartiger Regler ist an sich bekannt und braucht daher nicht im einzelnen beschrieben zu werden. Das Lesesignal READ wird an die eine Eingangsklemme eines UND-Glieds 41 sowie die erste Eingangsklemme eines UND-Glieds 44 angelegt. Das Lesesignal READ wird auch über einen Treiber 61 zum lokalen Speicher 22 und über einen Treiber 64 zum Hauptspeicher 12 geliefert. Ein Befehlsabrufzyklus-Signal IFS, das angibt, ob sich die Zentraleinheit 11 in einem Schritt zum Abrufen eines Befehls befindet oder nicht, wird der anderen Eingangsklemme des UND-Glieds 41 aufgeprägt. Das Einschreibsignal WRITE wird der ersten Eingangsklemme eines UND-Glieds 43 zugeführt und außerdem über einen Treiber 62 zum lokalen Speicher 22 und über einen Treiber 65 zum Hauptspeicher 12 geliefert.
Das Speicherstartsignal MEMS wird an die zweiten Eingangsklemmen aller UND-Glieder 43, 44 und 45 sowie die dritte Eingangsklemme des UND-Glieds 42 und die erste Eingangsklemme eines UND-Glieds 46 gemeinsam bzw. gleichzeitig angelegt. Weiterhin wird ein Ausgangssignal des UND-Glieds 41 über einen Umsetzer 49 zur ersten Eingangsklemme des UND-Glieds 42 und zur ersten Eingangsklemme des UND-Glieds 45 zugeführt.
Eine Eingangsklemme D eines Flip-Flops 51 nimmt das Datum des 2ten Bits der in der arithmetischen Logikeinheit 21 vorgesehenen internen Sammelschiene ab. Eine Eingangsklemme D eines Flip-Flops 52 nimmt das Datum des 3ten Bits der internen Sammelschiene in der Logikeinheit 21 ab. Ein Programmstatuswort- bzw. PSW-Aktualisierungssteuersignal PSW LD wird an die Eingangsklemmen CK der Flip-Flops 51 und 52 angelegt. Wenn der PSW-Aktualisierungsbefehl ausgegeben wird, werden die Flip-Flops 51 und 52 gesetzt. Ein Ausgangssignal an einer Ausgangsklemme Q des Flip-Flops 51 wird den dritten Eingangsklemmen der UND-Glieder 43 und 44 zugeführt. Ein an einer Ausgangsklemme erscheinendes Ausgangssignal wird der zweiten Eingangsklemme des UND- Glieds 42 und der dritten Eingangsklemme des UND-Glieds 45 zugeführt.
Ein Ausgangssignal von einer Ausgangsklemme des Flip- Flops 52 wird als höchstwertigstes Bit-Datum eines Adressenregisters 53 geliefert, in welchem Startadressendaten des lokalen Speichers 22 gespeichert sind. Die von der Zentraleinheit (CPU) 11 gelieferten Adressendaten werden im Adressenregister 54 gespeichert. Die in den Adressenregistern 53 und 54 enthaltenen Daten werden dem Komparator 55 zugeführt, der dann die oberen 10-Bitdaten (Daten über dem 14ten Bit, d. h. über der 16KBten Adresse bei dieser Ausführungsform) mit im Adressenregister 53 gespeicherten Daten vergleicht, um festzustellen, ob die herauszugreifende Adresse innerhalb der Gesamtheit aus den im Adressenregister 53 gespeicherten Adressendaten und der Speicherkapazität des lokalen Speichers 22 liegt oder nicht. Ein Ausgangssignal des Komparators 55 wird den vierten Eingangsklemmen der UND-Glieder 42 und 43 sowie der zweiten Eingangsklemme des UND-Glieds 46 über einen Umsetzer 50 zugeführt.
Ausgangssignale von den UND-Gliedern 42 und 43 werden einem ODER-Glied 47 zugeliefert, dessen Ausgangssignal über einen Treiber 63 als Speichertaktsignal MEMS-L dem lokalen Speicher 22 zugeführt wird. Ausgangssignale der UND-Glieder 44, 45 und 46 werden einem ODER-Glied 48 zugeführt, dessen Ausgangssignal der Sammelschienen- Schnittstelleneinheit (BIU) 24 und außerdem über einen Treiber 66 als Speicherstartsignal MEMS-M dem Hauptspeicher 12 zugeführt wird.
Nachstehend ist die Arbeitsweise der Schaltung nach Fig. 4 erläutert.
Es sei angenommen, daß beim Einleiten des Betriebs der Anlage das Flip-Flop 51 gesetzt und das Ausgangssignal vom Komparator 55 hoch ist. In diesem Fall entsprechen die im Adressenregister 54 gespeicherten Adressendaten den Adressen von 16KB bis 32KB des Hauptspeichers 12. Wenn die Zentraleinheit 11 das Lesesignal READ und dann nach einer kurzen Zeit das Speicherstartsignal MEMS liefert, ist nur das UND-Glied 44 durchgeschaltet. Sodann wird das Speicherstartsignal MEMS-M über das ODER-Glied 48 und den Treiber 66 zum Hauptspeicher 12 geliefert. Gleichzeitig wird ein Signal erzeugt, das einen Zugriff zur Sammelschienen-Schnittstelleneinheit 24 ermöglicht. Als Ergebnis wird eine gewünschte Datenreihe über die Sammelschiene 15 aus dem Hauptspeicher 12 ausgelesen.
Es sei angenommen, daß das von der Zentraleinheit 11 gelieferte Einschreibsignal im selben Zustand ist, wobei nur das UND-Glied 43 durchgeschaltet ist und das Speicherstartsignal MEMS-L über das ODER-Glied 47 und den Treiber 63 zum lokalen Speicher 22 geliefert wird. Infolgedessen werden die aus dem Hauptspeicher 12 ausgelesenen Daten in den lokalen Speicher 22 eingeschrieben.
Im eigentlichen Betrieb der Anlage wird jedoch das Flip-Flop 51 rückgesetzt. Es sei nun angenommen, daß das Ausgangssignal des Komparators 55 hoch ist (Speicheradressenbereich: 16KB bis 32KB) und das Lesesignal READ des Befehlsworts von der Zentraleinheit 11 geliefert wird. Wenn die Zentraleinheit 11 das Signal IFS des hohen Pegels liefert, ist das UND-Glied 41 durchgeschaltet. Nach Ablauf einer kurzen Zeitspanne wird das Speicherstartsignal MEMS von der Zentraleinheit 11 zum UND-Glied 42 übertragen, das daraufhin durchschaltet. Daher wird das Speicherstartsignal MEMS-L über das ODER-Glied 47 und den Treiber 63 zum lokalen Speicher 22 übertragen. Da der Lesebefehl READ-L dem lokalen Speicher 22 über den Treiber 61 zugeführt wird, wird ein Befehlswort aus dem lokalen Speicher 22, der mit hoher Geschwindigkeit betrieben wird oder arbeitet, ausgelesen.
Es sei angenommen, daß in diesem Zustand das Lesesignal READ oder das Einschreibsignal WRITE von der Zentraleinheit 11 geliefert und sodann das Speicherstartsignal MEMS von ihr abgegeben wird. Das UND-Glied 45 ist dabei durchgeschaltet (das UND-Glied 45 ist (stets) durchgeschaltet, außer wenn das Signal IFS und das Signal READ geliefert werden). Das Speicherstartsignal MEMS-M wird dem Hauptspeicher 12 über das ODER-Glied 48 und den Treiber 66 zugeführt. Gleichzeitig wird ein Sammelschienen-Freigabesignal der Sammelschiene 15 zur Sammelschienen-Schnittstelleneinheit 24 geliefert. Da der Hauptspeicher 12 bereits den Lesebefehl READ-M oder den Einschreibbefehl WRITE-M über den Treiber 64 bzw. 65 erhalten hat, können die gewünschten Daten über die Sammelschiene 15 in der Zentraleinheit 11 abgerufen werden.
Die Größe des Lese/Einschreibsignals READ/WRITE muß im lokalen Speicher 22 und im Hauptspeicher 12 ausreichend lange vor der Ausgabe des Speicherstartsignals (MEMS-L/ MEMS-M) bestimmt werden. Die Zeit- oder Taktsteuerung zwischen dem Speicherstartsignal und dem Lese/Einschreibsignal ist auch dann gewährleistet, wenn die Schaltung gemäß Fig. 4 hinzugeführt ist, weil die Zeitspanne, während welcher das Lese/Einschreibsignal die Schaltung nach Fig. 4 durchläuft, kürzer ist als die Zeitspanne, während welcher das Speicherstartsignal diese Schaltung passiert.
Wenn das Ausgangssignal des Komparators 55 niedrig wird, wird ein Signal eines hohen Pegels über den Umsetzer 50 zum UND-Glied 46 geliefert, so daß das Speicherstartsignal MEMS über das UND-Glied 46 und das ODER-Glied 48 zum Hauptspeicher 12 übertragen wird.
Das Flip-Flop 52 wird zum Deaktivieren des lokalen Speichers 22 rückgesetzt. Ein Ausgangssignal von der Ausgangsklemme des Flip-Flops 52 wird als höchstwertigstes Bit des Adressenregisters 53 geliefert, so daß das höchstwertigste Bit auf den logischen Pegel "1" gesetzt wird. Infolgedessen wird eine sehr hohe Größe im Adressenregister 53 gesetzt. Das Ausgangssignal vom Komparator 55 geht auf den niedrigen Pegel über, und das Speicherstartsignal kann nicht zum lokalen Speicher 22 geliefert werden.
Da das Flip-Flop 51 durch den in der Hauptbetriebsart ausgegebenen PSW-Aktualisierungsbefehl gesetzt ist, kann die Größe durch das Benutzerprogramm nicht modifiziert werden. Das Adressenregister 53 kann einen festverdrahteten Konstantschaltkreis aufweisen.
Das Benutzerprogramm braucht nicht in einem Bereich von 16KB bis 32KB gespeichert zu sein. Auch wenn es überläuft, kann der überlaufende Programmteil aus dem Hauptspeicher 12 ausgelesen werden, während der im Bereich von 16KB bis 32KB liegende Programmteil aus dem lokalen Speicher 22 ausgelesen wird. Der Benutzerprogrammbereich braucht daher nicht begrenzt zu sein.
Bei der beschriebenen Ausführungsform umfaßt der lokale Speicher 22 acht Chips von Speicherelementen, die jeweils aus 8 Bits×2KB bestehen. Ein Speicherelement von 8 Bits×8KB befindet sich jedoch derzeit in Entwicklung. Wenn ein solches Speicherelement verwendet wird, sind nur zwei Chips zur Bildung des lokalen Speichers 22 nötig. Die vorliegende Datenverarbeitungsvorrichtung mit dem lokalen Speicher bietet mithin größere Vorteile als eine Datenverarbeitungsvorrichtung unter Verwendung eines Cache-Speichers, die eine größere periphere Schaltung und einen Einhaltsverzeichnisspeicher benötigt.

Claims (3)

1. Verfahren zum Betreiben eines lokalen Speichers (22) in einer Datenverarbeitungsvorrichtung mit einer Zentraleinheit (11), einem Hauptspeicher (12) und einem externen Speicher, mit den Schritten:
  • (a) Laden eines Anwenderprogramms oder Betriebssystems aus dem externen Speicher in eine erste Vielzahl von adressierbaren Speicherstellen im Hauptspeicher (12),
  • (b) Auslesen eines Teils des Programms von einer festen Unterfolge der ersten Vielzahl aus dem Hauptspeicher (12) in den lokalen Speicher (22), der eine zweite Vielzahl von adressierbaren Speicherstellen mit den gleichen Adressen wie die Unterfolge hat, wobei der Teil des Programms der in der Unterfolge gefundene Teil ist, und wobei das Laden, Auslesen und Kopieren durch ein Ladeprogramm (Loader) nur erfolgt, wenn die Datenverarbeitungsvorrichtung initialisiert wird,
  • (c) Adressieren des lokalen Speichers (22) anstelle des Hauptspeichers (12) ohne Verwendung eines Inhaltsverzeichnisses mittels der gleichen Adressen und eines Zugriffsbefehls, wodurch das Auslesen von Speicherstellen der zweiten Vielzahl, die die Unterfolge bilden, bewirkt wird,
  • (d) Zugreifen auf den Hauptspeicher (12) für das Auslesen der Speicherstellen der ersten Vielzahl, die nicht Teil der Unterfolge sind, und
  • (e) Ausführungen eines Benutzerprogramms, wobei ein Lesen aus der Unterfolge einen Zugriff auf den lokalen Speicher (22) und ein Lesen außerhalb der Unterfolge einen Zugriff auf den Hauptspeicher bedingen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Unterfolge der ersten Vielzahl adressierbarer Speicherstellen aus aufeinanderfolgenden Adressen besteht.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß im Schritt (a) die Speicherstellen im lokalen Speicher (22) direkt adressierbar sind mittels:
  • (f) Setzen eines Flip-Flops (51), das einen Ladezustand des lokalen Speichers (22) anzeigt, in einen ersten Zustand, der ein Laden anzeigt, und in den einen Betriebszustand darstellenden Schritten (c) bis (e),
  • (g) das Flip-Flop (51) in einen zweiten Zustand, der kein Laden anzeigt, gesetzt wird.
DE19823235264 1981-09-29 1982-09-23 Datenverarbeitungsvorrichtung und -verfahren Granted DE3235264A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56153045A JPS5856277A (ja) 1981-09-29 1981-09-29 情報処理装置ならびに方法

Publications (2)

Publication Number Publication Date
DE3235264A1 DE3235264A1 (de) 1983-04-07
DE3235264C2 true DE3235264C2 (de) 1991-10-24

Family

ID=15553760

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19823235264 Granted DE3235264A1 (de) 1981-09-29 1982-09-23 Datenverarbeitungsvorrichtung und -verfahren

Country Status (5)

Country Link
US (1) US4628450A (de)
JP (1) JPS5856277A (de)
DE (1) DE3235264A1 (de)
FR (1) FR2513778B1 (de)
GB (1) GB2107091B (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5942367Y2 (ja) * 1978-11-06 1984-12-11 ソニー株式会社 包装装置
US4729091A (en) * 1984-11-13 1988-03-01 International Business Machines Corporation Directing storage requests prior to address comparator initialization with a reference address range
JP2740326B2 (ja) * 1989-03-01 1998-04-15 三洋電機株式会社 接触吸熱、放熱装置
US6209061B1 (en) * 1998-03-02 2001-03-27 Hewlett-Packard Co. Integrated hierarchical memory overlay having invariant address space span that inactivates a same address space span in main memory
US20050097304A1 (en) * 2003-10-30 2005-05-05 International Business Machines Corporation Pipeline recirculation for data misprediction in a fast-load data cache

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3581291A (en) * 1968-10-31 1971-05-25 Hitachi Ltd Memory control system in multiprocessing system
US3701107A (en) * 1970-10-01 1972-10-24 Rca Corp Computer with probability means to transfer pages from large memory to fast memory
GB1354827A (en) * 1971-08-25 1974-06-05 Ibm Data processing systems
US3753242A (en) * 1971-12-16 1973-08-14 Honeywell Inf Systems Memory overlay system
US4016541A (en) * 1972-10-10 1977-04-05 Digital Equipment Corporation Memory unit for connection to central processor unit and interconnecting bus
GB1441817A (en) * 1973-07-19 1976-07-07 Int Computers Ltd Data processing apparatus
JPS5211728A (en) * 1975-07-18 1977-01-28 Oki Electric Ind Co Ltd Memory device with stratum composition
JPS5263038A (en) * 1975-10-01 1977-05-25 Hitachi Ltd Data processing device
IT1052738B (it) * 1975-12-24 1981-07-20 Cselt Centro Studi Lab Telecom Dispositivo per il caricamento automatico della memoria centrale di calcolatori elettronici
US4181937A (en) * 1976-11-10 1980-01-01 Fujitsu Limited Data processing system having an intermediate buffer memory
US4075686A (en) * 1976-12-30 1978-02-21 Honeywell Information Systems Inc. Input/output cache system including bypass capability
US4126894A (en) * 1977-02-17 1978-11-21 Xerox Corporation Memory overlay linking system
US4136386A (en) * 1977-10-06 1979-01-23 International Business Machines Corporation Backing store access coordination in a multi-processor system
US4161024A (en) * 1977-12-22 1979-07-10 Honeywell Information Systems Inc. Private cache-to-CPU interface in a bus oriented data processing system
IT1111606B (it) * 1978-03-03 1986-01-13 Cselt Centro Studi Lab Telecom Sistema elaborativo modulare multiconfigurabile integrato con un sistema di preelaborazione
US4253146A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Module for coupling computer-processors
US4280176A (en) * 1978-12-26 1981-07-21 International Business Machines Corporation Memory configuration, address interleaving, relocation and access control system
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
US4473877A (en) * 1981-04-16 1984-09-25 Tulk Ronald K Parasitic memory expansion for computers
US4450524A (en) * 1981-09-23 1984-05-22 Rca Corporation Single chip microcomputer with external decoder and memory and internal logic for disabling the ROM and relocating the RAM
US4484267A (en) * 1981-12-30 1984-11-20 International Business Machines Corporation Cache sharing control in a multiprocessor
US4463420A (en) * 1982-02-23 1984-07-31 International Business Machines Corporation Multiprocessor cache replacement under task control

Also Published As

Publication number Publication date
GB2107091A (en) 1983-04-20
GB2107091B (en) 1985-10-23
FR2513778A1 (fr) 1983-04-01
JPS5856277A (ja) 1983-04-02
FR2513778B1 (fr) 1988-10-28
US4628450A (en) 1986-12-09
DE3235264A1 (de) 1983-04-07

Similar Documents

Publication Publication Date Title
DE3786967T2 (de) Protokoll zum Ungültigerklären eines Cachespeichers für ein digitales Datenverarbeitungssystem.
DE3685876T2 (de) Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher.
DE69714472T2 (de) Verfahren zum überprüfen eines integrierten speichers mit hilfe einer integrierten dma-schaltung
DE69028066T2 (de) Kombinierte synchrone und asynchrone Speichersteuerung
DE3908507C2 (de) Graphische Anzeigeanordnung
DE2523372C3 (de) Eingabe-/Ausgabe-Anschlußsteuereinrichtung
DE3752017T2 (de) Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit
DE68923944T2 (de) RAM mit doppelten Ein/Ausgängen.
DE69027806T2 (de) Multifunktionskoppler zwischen einer zentralen Verarbeitungseinheit eines Rechners und verschiedenen Peripheriegeräten dieses Rechners
DE60224774T2 (de) Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit
DE69020569T2 (de) Modulares ein-/ausgabesystem für superrechner.
DE2744531A1 (de) Elektronische datenverarbeitungsanlage
DE2902465A1 (de) Datenverarbeitungsanordnung
DE3781794T2 (de) Vorrichtung und verfahren zum versehen eines cachespeichers mit einer schreiboperation mit zwei systemtaktzyklen.
DE3587031T2 (de) Zugriffpruefungseinrichtung fuer digitale datenverarbeitungsanordnung, welche einen speicher mit seitenabruf hat.
DE3687867T2 (de) Mikrorechner.
EP0500973B1 (de) EEPROM und Verfahren zum Ändern einer Initialisierungsroutine im EEPROM
DE3751108T2 (de) Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden.
DE69816714T2 (de) Instrumentationsanordnung für eine Maschine mit nichtuniformen Speicherzugriffen
DE3850514T2 (de) Cachespeicher mit Treffervorhersagelogik.
DE69119149T2 (de) Struktur zur direkten Speicher-zu-Speicher-Übertragung
DE69427512T2 (de) Direktspeicherzugriffssteuerung
DE69029815T2 (de) Zentralisierte referenz- und änderungstabelle für eine virtuelle speicheranordnung
DE3911721C2 (de)
DE68927306T2 (de) Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZ

8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 13/00

8125 Change of the main classification

Ipc: G06F 12/08

8127 New person/name/address of the applicant

Owner name: KABUSHIKI KAISHA TOSHIBA, KAWASAKI, KANAGAWA, JP

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee