-
Die vorliegende Erfindung betrifft
Halbleitereinrichtungen und Computersysteme, und insbesondere eine
Halbleitereinrichtung mit einem eingebauten Speicher, die eine Zentraleinheit
und einen Speicher auf dem gleichen Chip enthält gemäß PA 1, und ein die Halbleitereinrichtung
mit dem eingebauten Speicher verwendendes Computersystem gemäß Patentanspruch
3.
-
Systeme wie Personalcomputer und
Arbeitsplatzrechner weisen einen Mikroprozessor mit einer Zentraleinheit
(CPU) zur Verarbeitung von Daten und einen Speicher zum Speichern
von Daten auf. Der Mikroprozessor und der Speicher sind auf einer
Platine als getrennte Chips gepackt, wobei die beiden Daten über einen
auf die Platine gedruckten externen Datenbus austauschen.
-
Derartige Systeme enthalten Mehrprozessorsysteme
mit einer Vielzahl von Mikroprozessoren. Bei dem Mehrprozessorsystem
nutzt die Vielzahl von Mikroprozessoren den Speicher gemeinsam.
Bei dem Mehrprozessorsystem ist die Reihenfolge der durch die Mikroprozessoren
parallel durchgeführten Verarbeitungsvorgänge ein
Problem. D.h., es besteht das Problem eines Zugangskonflikts, bei
dem eine Vielzahl von Mikroprozessoren gleichzeitig auf gemeinsam
genutzte Betriebsmittel, wie den Speicher, zugreifen.
-
Herkömmliche Mehrprozessorsysteme
lösen das
Problem des Zugangskonflikts durch Verwendung von Semaphoren. Ein
Semaphorwert zeigt beispielsweise an, daß das gemeinsam genutzte Betriebsmittel
verfügbar
ist. Ein Mikroprozessor, der auf das gemeinsam genutzte Betriebsmittel
zuzugreifen versucht, liest zuerst den Semaphorwert. Wenn bestimmt
wird, daß auf
das gemeinsam genutzte Betriebsmittel zugegriffen werden kann, wird.
der Semaphorwert in einen neuen Wert umgewandeltlgeschrieben und
der Mikroprozessor erhält
das Zugriffsrechts auf das gemeinsam genutzte Betriebsmittel. Die
Folge eines Lese- Abänderungs-Schreib-Zugriffs
auf das Semaphor muß auf
ungeteilte. Art und Weise durchgeführt werden. D.h., falls das
Lesen und das Schreiben getrennt sind, kann ein anderer Mikroprozessor
zwischen dem Lesen und dem Schreiben den Semaphorwert, der noch
nicht neu geschrieben wurde, lesen, um zu bestimmen, daß auf das
gemeinsam genutzte Betriebsmittel zugegriffen werden kann, was zu
einer Zugriffskollision auf das gemeinsam genutzte Betriebsmittel
durch die zwei Mikroprozessoren führt.
-
Der Mikroprozessor, der das Zugriffsrecht auf
das gemeinsam genutzte Betriebsmittel durch den vorstehend beschriebenen
Ablauf erhalten hat, beginnt einen Zugriff auf das gemeinsam genutzte Betriebsmittel.
Andererseits geht der Mikroprozessor, der den Semaphorwert gelesen
hat, um zu erkennen, daß er
das Zugriffsrecht auf das gemeinsam genutzte Betriebsmittel nicht
erhalten kann, in einen Bereitschaftszustand über. Bei herkömmlichen
Mehrprozessorsystemen sind die Semaphorwerte in einem Speicher auf
einem getrennt von den Mikroprozessoren vorhandenen Chip gespeichert.
Herkömmliche Mikroprozessoren
weisen reservierte Befehle und externe Anschlüsse zur Durchführung eines
verriegelten Speicherzugriffs zum selbsttätigen Zugreifen auf das Semaphor,
während
ein Zugriff auf das Semaphor von anderen Mikroprozessoren verhindert wird.
Während
dieser Befehl ausgeführt
wird (beispielsweise während
ein Lese-Abänderungs-Schreib-Zugriff
auf das Semaphor durchgeführt
wird), setzt der Mikroprozessor sich bei dem externen Anschluß zur Anforderung
einer externen Bussteuereinrichtung durch, so daß eine Durchführung der
Speicherzugriffsfolgen auf ungeteilte Art und Weise ermöglicht wird.
Die Bussteuereinrichtung, die diese Anforderung empfängt, verhindert
einen Zugriff auf das Semaphor von anderen Mikroprozessoren.
-
Aus der
US-A-4 760 521 ist ein Arbitersystem
für eine
Werkzeugmaschinensteuerung bekannt, das mehrere Prozessoren und
einen lokalen Speicher für
jeden Prozessor aufweist. Das Arbitersystem ermöglicht einem Prozessor den
Zugriff auf Daten, die in einem "fremden", d.h. dem lokalen Speicher
eines anderen Prozessors gespeichert sind. Das System beinhaltet
eine externe Arbitersteuerung, die über Zugriffsanforderungen auf
einen fremden Speicher von jedem Prozessor entscheidet. Das System weist
ferner eine Vielzahl lokaler Arbiter, die jeweils zu einem bestimmten
Prozessor gehören,
um über Zugriffsanforderungen
auf ihren Prozessorbus und -speicher von einer Vielzahl von Benutzern
einschließlich
der externen Arbitersteuerung zu entscheiden, eine DRAM-Steuereinrichtung
und eine direkte Speicherzugriff-Steuereinrichtung auf.
-
Des weiteren ist in der
EP 0 254 960 A2 Mehrprozessorsystem
offenbart, bei dem in jeder lokalen Gruppe ein Prozessor und sein
lokaler Speicher enthalten sind, wobei entweder ein Prozessor aus
der gleichen Gruppe oder aus einer anderen Gruppe über ein Übertragungsmedium
auf den lokalen Speicher zugreift. Zudem umfaßt das System eine Speichersteuereinrichtung
zur Steuerung des Zugriffs auf einen eigenen Speicher von einem
eigenen Prozessor und den anderen Prozessoren in der Gruppe in Abhängigkeit
des Status von Flags.
-
Ferner ist aus der
US-A-5 283 870 ein Multiprozessorsystem
bekannt, das eine Vielzahl von Systemprozessoren, die mit einem
Systembus verbunden sind, um einen Haupt- oder Systemspeicher gemeinsam
zu nutzen, sowie eine Anzahl von kartenintegrierten Speicherprozessoren
enthält,
die auch mit dem Systembus verbunden sind. Jeder Prozessor weist
einen Hochleistungsmikroprozessor auf, der über den lokalen Bus des Mikroprozessors
mit einem kartenintegrierten oder lokalen Speicher verbunden ist.
Auf den Systemspeicher kann unter Verwendung eines Protokolls zur
Speichersperrung zugegriffen werden, während auf den lokalen Speicher über ein Bussperrprotokoll
zugegriffen werden kann. Jeder kartenintegrierte Speicherprozessor
enthält
eine Sperreinrichtung, die die Verarbeitung von Speichersperrbefehlen
ermöglicht,
die auf den lokalen Speicher gerichtet sind und über den Systembus von einem
anderen Prozessor empfangen werden, und die Speichersperrbefehle
zum Systemspeicher ausgibt.
-
Der Erfindung liegt die Aufgabe zugrunde, eine
Halbleitereinrichtung mit einem eingebauten Speicher auszugestalten,
die eine Zentraleinheit und den Speicher auf dem gleichen Chip enthält, wobei das
Problem eines Konflikts zwischen einem Zugriff von außerhalb
des Chips auf den Speicher und einem Zugriff von der Zentraleinheit
gelöst
wird.
-
Eine weitere Aufgabe der Erfindung
besteht in der Ausgestaltung einer Halbleitereinrichtung mit einem
eingebauten Speicher, die eine Zentraleinheit und den Speicher auf
dem gleichen Chip enthält,
wobei eine Folge von Speicherzugriffen auf den eingebauten Speicher
von der Zentraleinheit auf ungeteilte Art und Weise ohne Beeinflussung
durch Zugriffe von außen
durchgeführt
werden.
-
Diese Aufgabe wird erfindungsgemäß durch eine
Halbleitereinrichtung gemäß dem Patentanspruch
1 und mit einem Computersystem mit einer Halbleitereinrichtung gemäß dem Patentanspruch
3 gelöst.
Eine vorteilhafte Ausgestaltung wird im Unteranspruch 2 angegeben.
Die Halbleitereinrichtung umfaßt
auf einem Chip einen Speicher zur Speicherung von Daten, eine Zentraleinheit
zur Durchführung eines
verriegelten Zugriffs auf den Speicher und eine Speichersteuereinrichtung
zum Empfang eines Anforderungssignals zum Zugriff auf den Speicher
von außen
und zur Ausgabe eines Antwortsignals zur Beantwortung des Anforderungssignals,
wobei die Speichersteuereinrichtung das Antwortsignal in einen Zustand
versetzt, der anzeigt, daß ein
Zugriff auf den Speicher von außen
in einer Periode ausgeschlossen ist, in der die Zentraleinheit den
verriegelten Zugriff durchführt.
-
Bei der Halbleitereinrichtung beginnt
die Zentraleinheit den verriegelten Zugriff, wenn ein Verriegelungszugriffsbefehl
empfangen wird, und beendet den verriegelten Zugriff, wenn ein Verriegelungszugriffsendebefehl
empfangen wird.
-
Bei der Halbleitereinrichtung führt die
Zentraleinheit einen nicht verriegelten Zugriff auf den Speicher
durch, das Anforderungssignal umfaßt ein Halteanforderungssignal
zur Anforderung eines Busrechts, und das Antwortsignal umfaßt ein Haltebestätigungssignal
zur Anzeige, daß das
Busrecht freigegeben wurde, wobei die Speichersteuereinrichtung
in einer Periode des nicht verriegelten Zugriffs in der Zentraleinheit
auf das Halteanforderungssignal mit einem Pegel anspricht, der eine
Anforderung des Busrechts anzeigt, um das Haltebestätigungssignal auf
einen Antwortpegel zu setzen, der anzeigt, daß das Busrecht freigegeben
wurde, und wobei in einer Periode des verriegelten Zugriffs in der
Zentraleinheit die Speichersteuereinrichtung das Haltbestätigungssignal
auf einen von dem Antwortpegel verschiedenen Pegel setzt, um das
Antwortsignal in einen Zustand zu versetzen, der anzeigt, daß ein Zugriff
von außen
auf den Speicher ausgeschlossen ist.
-
Bei der Halbleitereinrichtung führt die
Zentraleinheit einen nicht verriegelten Zugriff auf den Speicher
durch, das Anforderungssignal umfaßt ein Chipauswahlsignal zur
Anforderung eines Zugriffs auf den Speicher von außen und
das Antwortsignal umfaßt
ein Datenvollständigkeitssignal
zur Anzeige, daß der
Zugriff von außen
auf den Speicher abgeschlossen ist, wobei bei dem nicht verriegelten
Zugriff in der Zentraleinheit die Speichersteuereinrichtung auf
das Chipauswahlsignal mit einem Pegel anspricht, der anzeigt, daß ein Zugriff
auf den Speicher von außen
angefordert ist, um das Datenvollständigkeitssignal auf einen Antwortpegel
zu setzen, der anzeigt, daß der
Zugriff von außen
auf den Speicher abgeschlossen ist, und wobei in einer Periode des
verriegelten Zugriffs in der CPU die Speichersteuereinrichtung das
Datenvollständigkeitssignal
in einen von dem Antwortpegel verschiedenen Pegel versetzt, um das
Antwortsignal in den Zustand zu versetzen, der anzeigt, daß ein Zugriff
auf den Speicher von außen ausgeschlossen
ist.
-
Bei der Halbleitereinrichtung führt die
Zentraleinheit einen nicht verriegelten Zugriff auf den Speicher
durch, das Anforderungssignal umfaßt ein Halteanforderungssignal
zur Anforderung eines Busrechts und ein Chipauswahlsignal zur Anforderung eines
Zugriffs auf den Speicher von außen und das Antwortsignal umfaßt ein Haltebestätigungssignal zur
Anzeige, daß das
Busrecht freigegeben wurde, und ein Datenvollständigkeitssignal zur Anzeige,
daß der
Zugriff auf den Speicher von außen
abgeschlossen ist, wobei die Speichersteuereinrichtung einen ersten
Sperrmodus und einen zweiten Sperrmodus, die umschaltbar sind, aufweist,
wobei in dem ersten Sperrmodus zum Zeitpunkt des nicht verriegelten
Zugriffs in der Zentraleinheit die Speichersteuereinrichtung auf
das Halteanforderungssignal mit einem Pegel anspricht, der anzeigt,
daß das
Busrecht angefordert ist, um das Haltebestätigungssignal auf einen ersten
Antwortpegel zu setzen, der anzeigt, daß das Busrecht freigegeben
wurde, und in der Periode des verriegelten Zugriffs in der Zentraleinheit
das Haltbestätigungssignal
auf einen von dem ersten Antwortpegel verschiedenen Pegel setzt,
um das Antwortsignal in den Zustand zu versetzen, der anzeigt, daß ein Zugriff
auf den Speicher von außen
ausgeschlossen ist, und wobei die Speichersteuereinrichtung in dem
zweiten Sperrmodus zum Zeitpunkt des nicht verriegelten Zugriffs
in der Zentraleinheit auf das Chipauswahlsignal mit einem Pegel
anspricht, der anzeigt, daß ein
Zugriff auf den Speicher von außen
angefordert ist, um das Datenvollständigkeitssignal auf einen zweiten
Antwortpegel zu setzen, der anzeigt, daß der Zugriff auf den Speicher
von außen
beendet ist, und in einer Periode des verriegelten Zugriffs in der
Zentraleinheit das Datenvollständigkeitssignal auf
einen von dem zweiten Antwortpegel verschiedenen Pegel setzt, um
das Antwortsignal in den Zustand zu versetzen, der anzeigt, daß ein Zugriff
auf den Speicher von außen
ausgeschlossen ist.
-
Ein erfindungsgemäßes Computersystem gemäß Patentanspruch
3 umfaßt
eine Halbleitereinrichtung mit einer Zentraleinheit und einem Speicher auf
einem Chip, wobei die Zentraleinheit einen verriegelten Zugriff
auf den Speicher durchführt,
einen externen Busmasters zur Durchführung eines Zugriffs auf den
Speicher und eine externe Bussteuereinrichtung, die einen Zugriff
auf den Speicher durch den externen Busmaster in einer Periode verhindert,
in der die Zentraleinheit den verriegelten Zugriff durchführt.
-
Wie vorstehend angeführt, ist
erfindungsgemäß eine Halbleitereinrichtigung
ausgebildet, die einen eingebauten Speicher aufweist, der ein Lesen-Abändern-Schreiben
ohne Störung
durch einen Zugriff von außen
durchführen
kann.
-
Des weiteren ist ein Computersystem
mit gelöstem
Zugangskonflikt ausgebildet.
-
Die Erfindung wird anhand der nachstehenden
ausführlichen
Beschreibung der Erfindung in Verbindung mit den beiliegenden Zeichnung
näher erläutert.
-
Es zeigen:
-
1 ein
Blockschaltbild eines Computersystems gemäß einem Ausführungsbeispiel
der Erfindung,
-
2 ein
Blockschaltbild der Zentraleinheit des Ausführungsbeispiels der Erfindung,
-
3 ein
Blockschaltbild der externen Busschnittstelleneinrichtung des Ausführungsbeispiels der
Erfindung,
-
6 ein
Blockschaltbild der Speichersteuereinrichtung des Ausführungsbeispiels
der Erfindung,
-
5 eine
Darstellung des Adressenraums des Mikroprozessors des Ausführungsbeispiels
der Erfindung,
-
6a–6f Zeitablaufdiagramme des
Befehlabruf-Zugriffsvorgangs
des Mikroprozessors des Ausführungsbeispiels
der Erfindung,
-
7a–7f Zeitablaufdiagramme des
Operandenlese-Zugriffsvorgangs
des Mikroprozessors des Ausführungsbeispiels
der Erfindung,
-
8a–8f Zeitablaufdiagramme des
Operandenschreib-Zugriffsvorgangs
des Mikroprozessors des Ausführungsbeispiels
der Erfindung,
-
9a–9i Zeitablaufdiagramme des
Lese-Zugriffsvorgangs des externen Busmasters bei dem Mikroprozessor
des Ausführungsbeispiels
der Erfindung,
-
10a–10i Zeitablaufdiagramme des Schreib-Zyklus-Vorgangs
des externen Busmasters bei dem Mikroprozessor des Ausführungsbeispiels der
Erfindung, 11a–11l Zeitablaufdiagramme des Vorgangs
im Fall eines Zugangskonflikts des Mikroprozessors des Ausführungsbeispiels
der Erfindung, 12a–12l Zeitablaufdiagramme eines
Vorgangs im Fall eines Zugangskonflikts des Mikroprozessors des
AusführungsbeiSpiels
der Erfindung,
-
13a–13n Zeitablaufdiagramme des
verriegelten Zugriffs in dem Halteausschlußsperrmodus des Mikroprozessors
des Ausführungsbeispiels
der Erfindung und
-
14a–14n Zeitablaufdiagramme des
verriegelten Zugriffs in dem Chipauswahlausschlußsperrmodus des Mikroprozessors
des Ausführungsbeispiels
der Erfindung.
-
Erstes bevorzugtes Ausführungsbeispiel
-
Ein Mikroprozessor der 32-Bit-RISC-(Rechner
mit reduziertem Befehlsvorrat) Bauart mit einem eingebauten DRAM
(dynamischen Schreib-Lese-Speicher) gemäß einem bevorzugtem Ausführungsbeispiel
der Erfindung wird nachstehend unter Bezugnahme auf 1 bis 14 beschrieben.
Gemäß 1 weist ein Computersystem
STM einen Ein-Chip-Mikroprozessor (Halbleitereinrichtung) 100, eine
externe Bussteuereinrichtung 200, einen externen Busmaster 300 und
einen externen Speicher 400 auf, die auf einer Platine
angeordnet sind. Der Mikroprozessor 100, der externe Busmaster 300 und
der externe Speicher 400 sind mit einem 16- Bit-breiten externen
Datenbus 500 zum Austauschen von Daten über den externen Datenbus 500 verbunden,
der auf der Platine ausgebildet ist.
-
Der Mikroprozessor 100 mit
einem darin enthaltenen DRAM (dynamischen Schreib-Lese-Speicher) 120 empfängt ein
von außen
eingegebenes Taktsignal CLKIN, um synchron mit dem Taktsignal CLKIN
zu arbeiten. Der Mikroprozessor 100 empfängt auch
ein Halteanforderungssignal/HREQ (Anforderungssignal) von der externen
Bussteuereinrichtung 200. Wenn das Halteanforderungssignal/HREQ
auf einen L-Pegel übergeht,
wodurch der Mikroprozessor 100 zum Übergang in einen Haltezustand
angefordert wird, gibt er ein Haltebestätigungssignal/HACK (Antwortsignal)
auf einem L-Pegel aus, der anzeigt, daß er in einen Haltezustand übergegangen
ist.
-
D.h., wenn sich das Haltebestätigungssignal/HACK
auf einem H-Pegel
befindet, der anzeigt, daß sich
der Mikroprozessor 100 nicht in dem Haltezustand befindet,
bleibt das Busrecht zur Verwendung des externen Datenbusses 500 bei
dem Mikroprozessor 100. Wenn beispielsweise der externe Busmaster 300 das
Busrecht des externen Datenbusses 500 zum Lesen von Daten
aus dem externen Speicher 400 über den externen Datenbus 500 benötigt, setzt
die externe Bussteuereinrichtung 200 das Halteanforderungssignal/HREQ
auf den L-Pegel, um das Busrecht des externen Datenbusses 500 von dem
Mikroprozessor 100 zu fordern. Wenn der Mikroprozessor 100 bestimmt,
das Busrecht des externen Datenbusses 500 abzugeben, geht
er selbst in den Haltezustand über
und gibt das Busrecht des externen Datenbusses 500 frei,
indem das Haltebestätigungssignal/HACK
auf den L-Pegel gesetzt wird, um anzuzeigen, daß das Busrecht freigegeben
wurde. Somit steuert die externe Bussteuereinrichtung 200 den
externen Datenbus 500 derart, das Daten von dem Mikroprozessor 100,
dem externen Busmaster 300 und dem externen Speicher 400 nicht
auf dem externen Datenbus 500 kollidieren.
-
Der Mikroprozessor 100 empfängt von
der externen Bussteuereinrichtung 200 auch ein Chipauswahlsignal/CS
(Anforderungssignal) zur Anforderung eines Zugriffs auf den in dem
Mikroprozessor 100 enthaltenen DRAM 120, ein Lese/Schreib-Signal R/W,
das anzeigt, ob der Zugriff ein Lese- oder ein Schreib-Zugriff ist, und ein
23-Bit-Adressensignal A [8:30] zur Bestimmung einer Adresse in dem
eingebauten DRAM-Bereich,
auf den zuzugreifen ist. Auf das Chipauswahlsignal /CS mit einem
L-Pegel hin, der eine Zugriffsanforderung anzeigt, gibt der Mikroprozessor 100,
wenn sich das Lese/Schreib-Signal R/W auf einem H-Pegel befindet,
der ein Lesen anzeigt, Daten, die an der durch das Adressensignal
A [8:30] bestimmten Adresse in dem eingebauten DRAM-Bereich gespeichert
sind, auf den externen Datenbus 500 als externe Daten extD
[0:15] aus. Wenn sich das Lese/Schreib-Signal R/W auf einem L-Pegel
befindet, der ein Schreiben anzeigt, schreibt der Mikroprozessor
den externen Daten extD [0:15] entsprechende Daten an die durch
das Adressensignal A [8:30] bestimmten Adresse in dem eingebauten DRAM-Bereich.
-
Wenn von dem externen Busmaster 300 ein Zugriff
auf den ein- gebauten DRAM-Bereich durchgeführt wird, gibt der Mikroprozessor 100 auch
ein Datenvollständigkeitssignal/DC
(Antwortsignal) zur Anzeige aus, daß ein Zugriff (interner Buszyklus)
auf den eingebauten DRAM-Bereich abgeschlossen ist. Wenn das Chipauswahlsignal/CS
auf den L-Pegel gesetzt wird, gibt der Mikroprozessor 100 das
Datenvollständigkeitssignal/DC
auf einem H-Pegel aus, wodurch angezeigt wird, daß der Zugriff
auf den eingebauten DRAM-Bereich unvollständig ist. Wenn dann der Zugriff
auf den eingebauten DRAM-Bereich abgeschlossen ist, ändert der
Mikroprozessor 100 das Datenvollständigkeitssignal/DC in den L-Pegel, der
eine Beendigung des Zugriffs anzeigt. Wenn das Chipauswahlsignal/CS
auf den H-Pegel zurückkehrt, beendet
der Mikroprozessor 100 die Ausgabe des Datenvollständigkeitssignals/DC.
Wenn das Halteanforderungssignal/HREQ auf den H-Pegel zurückkehrt,
setzt der Mikroprozessor 100 das Haltebestätigungssignal/HACK
auf den H-Pegel.
-
Der Mikroprozessor 100 gibt
an die externe Bussteuereinrichtung 200 auch ein Busstartsignal/BS
zum Starten eines Buszyklus für
den externen Datenbus 500 aus. Wenn auf den externen Speicher 400 zugegriffen
wird, setzt der Mikroprozessor 100 das Busstartsignal/BS
auf den L-Pegel, wodurch angezeigt wird, daß ein Buszyklus bei dem externen Datenbus 500 gestartet
wurde. Gleichzeitig führt
der Mikroprozessor 100 das Lese/Schreib-Signal R/W und
das Adressensignal A [8:30] der externen Bussteuereinrichtung 200 zu.
Wenn sich das Lese/Schreib-Signal R/W auf dem H-Pegel befindet, liest
der Mikroprozessor Daten als externe Daten extD [0:15] aus dem externen
Speicher 400 über
den externen Datenbus 500 aus. Wenn sich das Lese/Schreib-Signal
R/W auf dem L-Pegel befindet, gibt der Mikroprozessor Daten als
externe Daten extD [0:15] an den externen Datenbus 500 aus
und schreibt die Daten in den externen Speicher 400. Wenn
danach die externe Bussteuereinrichtung 200 das Datenvollständigkeitssignal/DC
in den L-Pegel ändert, der
die Vollständigkeit
eines Zugriffs (externen Buszyklus) auf den externen Speicher 400 anzeigt,
setzt der Mikroprozessor 100 das Busstartsignal/BS auf
den H-Pegel. Auf
die Änderung
des Datenvollständigkeitssignals/DC
auf den L-Pegel hin speichert der Mikroprozessor 100 die
gelesenen Daten zwischen oder beendet das Halten der Schreibdaten.
-
Die externe Bussteuereinrichtung 200 empfängt von
dem externen Busmasters 300 ein Busrechtanforderungssignal/REQB
zur Anzeige einer Anforderung des Busrechts des externen Datenbusses 500.
Wenn das Busrechtanforderungssignal/REQB auf einen L-Pegel übergeht,
der die Anforderung des Busrechts anzeigt, setzt die externe Bussteuereinrichtung 200 das
Halteanforderungssignal/HREQ auf den L-Pegel und unterbricht eine
Ausgabe des Datenvollständigkeitssignals/DC
auf dem H-Pegel. Da gleichzeitig auch der Mikroprozessor 100 das
Datenvoll ständigkeitssignal/DC
nicht ausgibt, wird dieses Datenvollständigkeitssignal/DC in einen
hochohmigen Zustand versetzt. Wenn das Busrechtanforderungssignal/REQB
auf den H-Pegel übergeht,
setzt die externe Bussteuereinrichtung 200 das Halteanforderungssignal/HREQ
auf den H-Pegel.
-
Die externe Bussteuereinrichtung 200 empfängt auch
von dem externen Busmasters 300 ein Busmaster-Lese/Schreib-Signal
R/WBM zur Anzeige eines Datenlesens oder Datenschreibens und ein 24-Bit-Adressensignal
A [8:31], und gibt die Steuersignale/CS, R/W, A [8:30] zum Zugriff
auf den DRAM-Bereich in dem Mikroprozessor 100 und ein Steuersignal
CTRL zum Zugriff auf den externen Speicher 400 aus. Wenn
das Haltebestätigungssignal/HACK
auf den L-Pegel im Ansprechen auf das Halteanforderungssignal/HREQ übergeht,
verändert die
externe Bussteuereinrichtung 200 die Steuersignale/CS,
R/W, A [8:30] oder das Steuersignal CTRL im Ansprechen auf das Busmaster-Lese/Schreib-Signal
R/WBM und das Adressensignal A [8:31].
-
D.h., falls die 4 Bits A [8:11] in
dem 24-Bit-Adressensignal A [8:31] von dem externen Busmaster 300 000
sind, bestimmt die externe Bussteuereinrichtung 200, daß der Zugriff
auf den eingebauten DRAM-Bereich in dem Mikroprozessor 100 erfolgt.
Dann setzt die externe Bussteuereinrichtung 200 das Chipauswahlsignal/CS
auf den L-Pegel und führt
die 23 Bits A [8:30] in dem Adressensignal A [8:31] dem Mikroprozessor 100 zu.
Falls sich das Busmaster-Lese/Schreib-Signal R/WBM auf dem H-Pegel befindet, interpretiert
die externe Bussteuereinrichtung dies als Lesen und setzt das Lese/Schreib-Signal
R/W auf den H-Pegel. Falls sich das Busmaster-Lese/Schreib-Signal
R/WBM auf dem L-Pegel befindet, interpretiert die externe Bussteuereinrichtung
dies als Schreiben und setzt das Lese/Schreib-Signal R/W auf den
L-Pegel. Falls in dem 24-Bit-Adressensignal
A [8:31] zumindest 1 Bit in den 4 Bits A [8:11] eins ist, interpretiert
die externe Bussteuereinrichtung dies als Zugriff auf den externen
Speicher 400. Dann veranlaßt die externe Bussteuereinrichtung 200 das
Steuersi gnal CTRL zur Veränderung
entsprechend dem Adressensignal A [8:31] und dem Busmaster-Lese/Schreib-Signal R/WBM.
Das Steuersignal CTRL stellt im Allgemeinen eine Vielzahl von Signalen
zur Steuerung des externen Speichers 400 dar.
-
Des weiteren gibt die externe Bussteuereinrichtung 200 an
den externen Busmaster 300 ein Busmasterdatenvollständigkeitssignal/DCBM
zur Anzeige einer Beendigung eines Zugriffs auf den eingebauten
DRAM-Bereich in dem Mikroprozessor 100 oder den externen
Speicher 400 aus. Wenn der externe Busmaster 300 auf
den eingebauten DRAM-Bereich in dem Mikroprozessor 100 zugreift und
das Datenvollständigkeitssignal/DC
durch den Mikroprozessor 100 auf den L-Pegel gesetzt wird, setzt
die externe Bussteuereinrichtung 200 das Busmasterdatenvollständigkeitssignal/DCBM
auf den L-Pegel, der die Beendigung des Zugriffs anzeigt. Wenn der
externe Busmaster 300 auf den externen Speicher 400 zugreift,
setzt die externe Bussteuereinrichtung 200 das Busmasterdatenvollständigkeitssignal/DCBM
angesichts dessen auf dem L-Pegel, wenn eine vorbestimmte Lese-
oder Schreibzykluszeit des externen Speichers 400 abläuft.
-
Wenn das Busrechtanforderungssignal/REQB
von dem externen Busmaster 300 auf den H-Pegel gesetzt
wird, wenn das Chipauswahlsignal/CS auf dem L-Pegel ist, setzt die
externe Bussteuereinrichtung 200 das Chipauswahlsignal/CS
auf den H-Pegel, bevor oder zur gleichen Zeit, wenn das Halteanforderungssignal/HREQ
zur Änderung
in den H-Pegel veranlaßt
wird, und beendet auch die Ausgabe des Lese/Schreib-Signals R/W
und des Adressensignals A [8:30].
-
Wenn das Busstartsignal/BS auf den
L-Pegel übergeht,
interpretiert die externe Bussteuereinrichtung 200 dies
als Zugriffs auf den externen Speicher 400 von dem Mikroprozessor 100.
Dann veranlaßt die
externe Bussteuereinrichtung 200 das Steuersignal CTRL
zur Veränderung
entsprechend dem Lese/Schreib-Signal R/W und dem Adressensignal
A [8:30] von dem Mikroprozessor 100. Angesichts des Ablaufs
der vorbestimmten Lese- oder Schreibzykluszeit des externen Speichers 400 setzt
die externe Bussteuereinrichtung 200 das Datenvollständigkeitssignal/DC
auf den L-Pegel und beendet das Halten des Steuersignals CTRL.
-
Der externe Busmaster 300 fordert
das Busrecht für
den externen Datenbus 500. Beispielsweise ist ein Mikroprozessor
mit dem gleichen Aufbau wie der Mikroprozessor 100 oder
ein Mikroprozessor einer anderen Bauart mit einem unterschiedlichen
Aufbau in diesem externen Busmaster 300 enthalten. Bei
einem Zugriff auf den eingebauten DRAM-Bereich in dem Mikroprozessor 100 oder
auf den externen Speicher 400 setzt der externe Busmaster 300 das
Busrechtanforderungssignal/REQB auf den L-Pegel und verändert auch das Busmaster-Lese/Schreib-Signal
R/WBM und das Adressensignal A [8:31] auf dem Zugriff entsprechende
Pegel. Wenn das Busmasterdatenvollständigkeitssignal/DCBM auf den
L-Pegel übergeht,
speichert der externe Busmaster 300 die externen Daten
extD [0:15] in einem Lesezyklus zwischen oder beendet das Halten
der externen Daten extD [0:15] in einem Schreibzyklus.
-
Der externe Speicher 400 weist
beispielsweise eine Kapazität
von 16 MByte (128 MBit) auf, wobei zwei 64-MBit-DRAMs enthalten
sind, die jeweils 8 Einrichtungen enthalten. Der externe Speicher 400 empfängt das
Steuersignal CTRL von der externen Bussteuereinrichtung 200,
woraufhin er die externen Daten extD [0:15] speichert, die über den
externen Datenbus 500 bereitgestellt werden, oder gespeicherte
Daten auf den externen Datenbus 500 als externe Daten extD
[0:15] ausgibt.
-
Nachstehend wird der Aufbau des Mikroprozessor 100 beschrieben.
Gemäß 1 enthält der Mikroprozessor 100 einen
Chip, eine Zentraleinheit (CPU) 110 zur Verarbeitung von
Daten, einen eingebauten 1-Megabyte (8-Megabit) DRAM (dynamischen
Schreib-Lese-Speicher) 120 (Speicher) zur Speicherung von
Daten und einen 4-Kilobyte (32-KBit) Cachespeicher 130 (Speicher)
zur Speicherung eines Teils der in dem eingebauten DRAM 120 gespeicherten
Daten. Der Mikroprozessor 100 enthält auch eine PLL-(phase locked
loop) Takterzeugungsschaltung 140, die das von außen eingegebene
Taktsignal CKLIN zur Erzeugung eines Taktsignals CLOCK mit einer
vierfachen Frequenz des Taktsignals CLKIN und eines mit dem Taktsignal
CLKIN synchronisierten internen Taktsignals intCLK empfängt. Der
Mikroprozessor 100 enthält
auch eine externe Busschnittstelleneinrichtung 150 zum
Austausch von Signalen zwischen der Außenseite des Chips und den
internen Schaltungen. Der Mikroprozessor 100 enthält auch
eine Speichersteuereinrichtung 160, die synchron mit dem
Taktsignal CLOCK zum Empfang verschiedener Signale von der Zentraleinheit 110 und
der externen Busschnittstelleneinrichtung 150 und zur Steuerung
des DRAMs 120 und des Cachespeichers 130 auf die
Signale hin arbeitet. Der Mikroprozessor 100 enthält auch
einen 128-Bitbreiten internen Datenbus 170, über den
die Zentraleinheit 110, der DRAM 120, der Cachespeicher 130 und
die externe Busschnittstelleneinrichtung 150 Daten austauschen.
-
Die Zentraleinheit 110 gibt
an die Speichersteuereinrichtung 160 ein Befehlsabruf-Zugriffsanforderungssignal/REQF,
um eine Anforderung zum Abrufen von Befehlscodes in die Zentraleinheit 110 anzuzeigen,
ein Operandenzugriffsanforderungssignal/REQO, um eine Anforderung
eines Lese- oder Schreiboperanden, die Objektdaten der Ausführung des
Befehls, anzuzeigen, ein Befehlsabruf-Zugriffsadressensignal AF
zur Bestimmung einer Adresse des Speichers des Befehlsabrufszugriffs,
ein Operandenzugriffsadressensignal AO zur Bestimmung einer Adresse
des Speichers für
den Operandenzugriff und ein Sperrsignal/LOCK zum Anzeigen aus,
ob der Zugriff auf den eingebauten DRAM-Bereich, der durch die Zentraleinheit 110 angefordert
wurde, ein verriegelter Zugriff ist. Da der Cachespeicher 130 eine
Kopie eines Teils der Daten in dem DRAM 120 speichert,
bedeutet der Zugriff auf den eingebauten DRAM-Bereich einen Zugriff auf den DRAM 120 oder den
Cachespeicher 130. Die Zentraleinheit 110 gibt auch
ein Operanden- Lese/Schreib-Signal
OPR/W zum Anzeigen aus, ob der Operandenzugriff ein Lese- oder Schreibzugriff
ist.
-
Die Zentraleinheit 110 empfängt von
der Speichersteuereinrichtung 160 ein Befehlsabruf-Zugriffsbestätigungssignal/ACKF
(verriegelter Zugriffsbefehl) zur Bestätigung der Annahme des Befehlsabruf-Zugriffs,
ein Operandenzugriffsbestätigungssignal/ACKO
(verriegelter Zugriffsbefehl bzw. Verriegelungszugriffbefehl) zur
Bestätigung
der Annahme des Operandenzugriffs, ein Befehlsabruf-Zugriffsendesignal/ENDF
(Verrieglungszugriffsendebefehl) zur Anzeige der Beendigung des
Befehlabrufszugriffs und ein Operandenzugriffsendesignal/ENDO (Verriegelungszugriffsendebefehl)
zur Anzeige des Endes des Operandenzugriffs.
-
Im Fall des Befehlsabrufszugriffs,
setzt die Zentraleinheit 110 das Befehlsabruf-Zugriffsanforderungssignal/REQF
auf den L-Pegel, der eine Anforderung des Befehlsabrufszugriffs
anzeigt, und verändert
das Befehlsabruf-Zugriffsadressensignal AF entsprechend der Adresse,
auf die zuzugreifen ist. Wenn sich das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
auf das Befehlsabruf-Zugriffanforderungssignal/REQF auf den L-Pegel
verändert
und sich dann das Befehlsabruf-Zugriffsendesignal/ENDF
auf den L-Pegel verändert,
der das Ende des Befehlsabruf-Zugriffs anzeigt, speichert die Zentraleinheit 110 128
Bit interne Daten intD [0:127] auf dem internen Datenbus 170 zwischen.
-
Im Fall des Operandenzugriffs, setzt
die Zentraleinheit 110 das Operandenzugriffsanforderungssignal/REQO
auf den L-Pegel, der eine Anforderung des Operandenzugriffs anzeigt.
Gleichzeitig setzt die Zentraleinheit 110 das Operanden-Lese/Schreib-Signal
OPR/W auf den H-Pegel im Fall eines Lesens des Operanden und setzt
das Operanden-Lese/Schreib-Signal
OPR/W auf den L-Pegel im Fall des Schreibens des Operandens und
verändert
das Operandenzugriffsadressensignal AO entsprechend der Adresse,
auf die zuzugreifen ist. Wenn das Operandenlesen ein verriegelter
Zugriff ist, setzt die Zentraleinheit 110 auch das Sperrsignal/LOCK
auf den L-Pegel, der einen verriegelten Zugriff anzeigt. Wenn das
Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel übergeht,
gibt die Zentraleinheit 110 im Fall des Operandenschreibens
den Operanden auf den internen Datenbus 170 als 32-Bit-Daten
in den internen Daten intD [0:127]. Falls das Operandenschreiben
ein verriegelter Zugriff ist, setzt die Zentraleinheit 110 das
Sperrsignal/LOCK auf den H-Pegel, um die verriegelte Zugriffsperiode
zu beenden. Wenn sich dann das Operandenzugriffsendesignal/ENDO in
den L-Pegel ändert,
der das Ende des Operandenzugriffs anzeigt, speichert die Zentraleinheit 100 die 128
Bit internen Daten intD [0:127] auf dem internen Datenbus 170 im
Fall des Operandenlesens zwischen. Im Fall des Operandenschreibens
beendet die CPU 110 das Halten des Operandens, der an den internen
Datenbus 170 ausgegeben wurde.
-
Der DRAM 120 empfängt ein
Steuersignal CTRLD von der Speichersteuereinrichtung 160 und speichert
daraufhin die internen Daten intD [0:127], die über den internen Datenbus 170 bereitgestellt werden,
oder gibt gespeicherte Daten auf den internen Datenbus 170 als
interne Daten intD [0:127] aus. Das Steuersignal CTRLD stellt im
allgemeinen verschiedene Signale dar, um den DRAM 120 zur Durchführung eines
Lese- oder Schreibvorgangs zu veranlassen.
-
Der Cachespeicher 130 enthält einen
SRAM (statischen Schreib-Lese-Speicher).
Der Cachespeicher 130 empfängt ein Steuersignal CTRLC
von der Speichersteuereinrichtung 160, woraufhin er die
internen Daten intD [0:127] speichert, die über den internen Datenbus 170 bereitgestellt
werden, oder gespeicherte Daten auf den internen Datenbus 170 als interne
Daten intD [0:127] ausgibt. Das Steuersignal CTRLC stellt im Allgemeinen
verschiedene Signale dar, um den Cachespeicher 130 zur
Durchführung
eines Lese- oder Schreibvorgangs zu veranlassen. Der Cachespeicher 130 kann
Teile von in dem eingebauten DRAM 120 gespeicherten Daten
oder Teile von in dem externen Speicher
400 gespeicherten
Daten kopieren und speichern. D.h., er kann zwischen einem Cachespeicher
des eingebauten DRAMs 120 und einem Cachespeicher des externen
Speichers 400 umgeschaltet werden. In dieser Beschreibung
dient er als Cachespeicher des eingebauten DRAMs 120.
-
Die PLL-Takterzeugungsschaltung 140 enthält einen
Frequenzmultiplizierer, der beispielsweise das 66,6 MH Taktsignal
CLOCK ausgibt, wenn das von außen
eingegebene Taktsignal CLKIN eine Frequenz von 16,65 MH aufweist.
Das interne Taktsignal intCLK ist mit dem Eingangstaktsignal CLKIN
in Phase und weist die gleiche Frequenz wie das Taktsignal CLKIN
auf.
-
Die externe Busschnittstelleneinrichtung 150 empfängt extern
das Halteanforderungssignal/HREQ, das Chipauswahlsignal/CS, das
Datenvollständigkeitssignal/DC,
das Lese/Schreib-Signal R/W und das Adressensignal A [8:30], um
entsprechend das interne Halteanforderungssignal int/HREQ, das interne
Chipauswahlsignal int/CS, das interne Datenvollständigkeitssignal
int/DC, das interne Lese/Schreib-Signal intR/W und das interne Adressensignal
int A [8:30] auszugeben. Die externe Busschnittstelleneinrichtung 150 empfängt das
interne Haltebestätigungssignal
int/HACK, das interne Datenvollständigkeitssignal int/DC, das
interne Lese/Schreib-Signal intR/W und das interne Busstartsignal
int/BS, um jeweils entsprechend das Haltebestätigungssignal/HACK, das Datenvollständigkeitssignal/DC,
das Lese/Schreib-Signal R/W und das Busstartsignal/BS nach außen auszugeben.
-
Die externe Busschnittstelleneinrichtung 150 überträgt auch
Daten zwischen dem externen Datenbus 500 und dem internen
Datenbus 170. Wenn Daten von dem internen Datenbus 170 zu
dem externen Datenbus 500 übertragen werden, hält die externe Busschnittstelleneinrichtung 150 zuerst
die parallelen internen 128-Bit-Daten intD [0:127] auf dem internen
Datenbus 170 und gibt die Daten 16-Bit-Weise auf den externen
Datenbus 500 als externe Daten extD [0:15] seriell aus.
Wenn andererseits Daten von dem externen Datenbus 500 zu
dem internen Datenbus 170 übertragen werden, nimmt die
externe Busschnittstelleneinrichtung 150 zuerst die externen
Daten extD [0:15] auf dem externen Datenbus 500 16-Bit-Weise
seriell entgegen und hält
sie und gibt die Daten auf dem internen Datenbus 170 parallel aus.
Bei der parallelen Ausgabe kann die externe Schnittstelleneinrichtung
bis zu 128 Bits entgegen nehmen und die 128 Bits parallel ausgeben,
oder kann nur 32 Bits entgegen nehmen und die 32 Bits parallel ausgeben,
oder es kann auf ähnliche
Weise eine 64-Bit-Ausgabe oder eine 96-Bit-Ausgabe durchgeführt werden.
-
Die Speichersteuereinrichtung 160 empfängt von
der Zentraleinheit 110 das Befehlsabruf-Zugriffsadressensignal
AF, das Operandenzugriffsadressensignal AO, das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO, das Sperrsignal/LOCK
und das Operanden-Lese/Schreib-Signal
OPR/W, und von der externen Busschnittstelleneinrichtung 150 das
interne Halteanforderungssignal int/HREQ und das interne Chipauswahlsignal
int/CS. Das interne Halteanfoderungssignal int/HREQ und interne
Chipauswahlsignal int/CS sind zum Zugriff auf den eingebauten DRAM-Bereich
von außen
erforderlich. Die Speichersteuereinrichtung 160 entscheidet über die
vier Anforderungen: die Befehlsabruf-Zugriffsanforderung, die Operandenzugriffsanforderung,
die Halteanforderung und die Chipauswahl (Zugriffsanforderung auf den
eingebauten DRAM-Bereich).
-
Die Speichersteuereinrichtung 160 führt die Entscheidung
auf unterschiedliche Arten in der verriegelten Zugriffsperiode und
der nicht verriegelten Zugriffsperiode durch. Der verriegelte Zugriff
enthält zwei
Arten von Modi, die im Programm bzw. in der Software umschaltbar
sind, den Halteausschluß-Sperrmodus (erster
Sperrmodus), der ausschließlich
durch das interne Halteanforderungssignal int/HREQ durchgeführt wird,
und den Chipauswahlausschlußsperrmodus
(zweiter Sperrmodus), der ausschließlich durch das interne Chipauswahlsignal
int/CS durchgeführt
wird. Die Art und Weise der Entscheidung wird auch in jedem Modus
umgeschaltet. Die Speichersteuereinrichtung 160 gibt das
Befehlsabruf-Zugriffsbestätigungssignal/ACKF,
das Operandenzugriffsbestätigungssignal/ACKO,
das interne Haltebestätigungssignal
int/HACK und das interne Datenvollständigkeitssignal int/DC aus,
die die Ergebnisse der Entscheidung über die vier Anforderungen
widerspiegeln.
-
Bei dem nicht verriegelten Zugriff,
wenn das interne Halteanforderungssignal int/HREQ auf den L-Pegel übergeht, überprüft die Speichersteuereinrichtung 160,
ob der Mikroprozessor 100 einen Buszyklus für den externen
Datenbus 500 zu starten versucht. Falls der Mikroprozessor 100 den
Buszyklus nicht zu starten versucht, setzt die Speichersteuereinrichtung 160 das
interne Haltebestätigungssignal int/HACK
auf den L-Pegel. D.h., ob ein Befehlsabruf-Zugriff oder Operandenzugriff
auf den externen Speicher 400 durchgeführt wird, wird dementsprechend
bestimmt, ob das Befehlsabruf-Zugriffsanforderungssignal/REQF
oder das Operandenzugriffsanforderungssignal/REQO zur Anzeige einer
Anforderung des Befehlsabruf-Zugriffs oder des Operandenzugriffs
auf dem L-Pegel
ist, und dementsprechend, ob das Befehlsabruf-Zugriffsadressensignal AF oder das Operandenzugriffsadressensignal
AO eine Adresse des externen Speichers 400 bestimmt.
-
Wenn sich das Befehlsabruf-Zugriffsanforderungssignal/REQF
auf dem L-Pegel befindet und das Befehlsabruf-Zugriffsadressensignal AF eine Adresse
in dem externen Speicher 400 bestimmt, oder wenn das Operandenzugriffsanforderungssignal/REQO
auf dem L-Pegel ist und das Operandenzugriffsadressensignal AO eine
Adresse in dem externen Speicher 400 bestimmt, setzt die
Speichersteuereinrichtung 160 das interne Haltezugriffsbestätigungssignal
int/HACK nicht auf den L-Pegel, selbst wenn das interne Halteanforderungssignal
int/HREQ auf den L-Pegel übergeht,
bis der Befehlsabruf-Zugriff
oder der Operandenzugriff bei der Ausführung außer halb beendet ist. Andererseits
setzt die Speichersteuereinrichtung 160 das interne Haltebestätigungssignal int/HACK
schnell auf den L-Pegel.
-
Falls bei dem nicht verriegelten
Zugriff das interne Halteanforderungssignal int/HREQ auf dem L-Pegel
ist, nimmt die Speichersteuereinrichtung 160 die Anforderung
von der Zentraleinheit 110 für den Befehlsabruf-Zugriff
oder den Operandenzugriff nach außen nicht an. D.h., wenn sich
das interne Halteanforderungssignal int/HREQ auf dem L-Pegel befindet,
setzt die Speichersteuereinrichtung 160 selbst dann, wenn
das Befehlsabruf-Zugriffsadressensignal AF eine Adresse in dem externen
Speicher 400 bestimmt und sich das Befehlsabruf-Zugriffsanforderungssignal/REQF
auf dem L-Pegel befindet, oder wenn das Operandenzugriffsadressensignal
AO eine Adresse in dem externen Speicher 400 bestimmt und sich
das Operandenzugriffsanforderungssignal REQO auf dem L-Pegel befindet,
das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
oder das Operandenzugriffsbestätigungssignal/ACKO
entsprechend der Anforderung solange nicht auf den L-Pegel, bis
das interne Halteanforderungssignal int/HREQ auf den H-Pegel übergeht,
und setzt das interne Haltebestätigungssignal
int/HACK auf den H-Pegel, um das Busrecht des externen Datenbusses 500 zu
erhalten.
-
D.h., wenn bei einem nicht verriegelten
Zugriff der Befehlsabruf-Zugriff und der Operandenzugriff Zugriffe
auf den externen Speicher 400 sind, setzt die Speichersteuereinrichtung 160 die
Antwortsignale, das Befehlsabruf-Zugriffs-Bestätigungssignal/ACKF,
das Operandenzugriffsbestätigungssignal/ACKO
und das interne Haltebestätigungssignal int/HACK
in der Reihenfolge auf den L-Pegel, in der das Befehlsabruf-Zugriffsanforderungssignal/REQF, das
Operandenzugriffsanforderungssignal/REQO und das interne Halteanforderungssignal
int/HREQ den L-Pegel erreichen. Wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO und das interne Halteanforderungssignal
int/HREQ gleichzeitig auf den L-Pegel übergehen, antwortet die Speichersteuereinrichtung 160 zuerst
auf die Halteanforderung und setzt das interne Haltebestätigungssignal
int/HACK auf den L-Pegel. Dann spricht sie auf die Operandenzugriffsanforderung
an und setzt das Operandenzugriffbestätigungssignal/ACKO auf den
L-Pegel. Wenn dieser Operandenzugriff beendet ist, spricht sie auf die
Befehlsabruf-Zugriffsanforderung
an und setzt das Befehlabruf-Zugriffsbestätigungssignal/ACKF auf
den L-Pegel.
-
Falls jedoch der Befehlsabruf-Zugriff
und der Operandenzugriff Zugriffe auf den eingebauten DRAM-Bereich
zur Zeit einer Nicht-Verriegelung sind, setzt die Speichersteuereinrichtung 160 die Antwortsignale,
das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
und das Operandenzugriffsbestätigungssignal/ACKO
in der Reihenfolge auf den L-Pegel, mit der das Befehlsabruf-Zugriffsanforderungssignal/REQF
und das Operandenzugriffsanforderungssignal/REQO auf den L-Pegel übergegangen sind,
ungeachtet des internen Halteanforderungssignals int/HREQ. Wenn
in diesem Fall das Befehlsabruf-Zugriffsanforderungssignal/REQF
und das Operandenzugriffsanforderungssignal/REQO gleichzeitig auf
den L-Pegel übergehen,
setzt die Speichersteuereinrichtung 160 zuerst das Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel, und wenn dieser Operandenzugriff beendet ist, spricht
sie auf die Befehlsabruf-Zugriffsanforderung an, indem sie das Befehlsabruf-Zugriffsbestätigungssignal/ACKF auf
den L-Pegel setzt.
-
Wenn bei dem nicht verriegelten Zugriff
das interne Chipauswahlsignal int/CS auf den L-Pegel übergeht,
greift die Speichersteuereinrichtung 160, wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF
und das Operandenzugriffsanforderungssignal/REQO auf dem H-Pegel
sind, oder wenn sich zumindest eines von diesen bereits auf dem
L-Pegel befindet, jedoch die Anforderung ein Zugriff nach außen ist,
und daher das entsprechende Befehlsabruf-Zugriffsbestätigungssignal/ACKF oder das
Operandenzugriffsbestätigungssignal/ACKO
auf dem H-Pegel beibehalten wird, auf den eingebauten DRAM-Bereich
auf die Chipauswahl hin zu. Wenn dieser Zugriff beendet ist, setzt
die Speichersteuereinrichtung 160 das antwortende interne
Datenvollständigkeitssignal
int/DC auf den L-Pegel.
-
Wenn das Befehlsabrufszugriffanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO und das interne Chipauswahlsignal
int/CS in dem nicht verriegelten Zugriff gleichzeitig auf den L-Pegel übergehen,
führt die
Speichersteuereinrichtung 160 zuerst einen Zugriff auf
den eingebauten DRAM-Bereich auf die Chipauswahl hin durch, und
wenn dieser Zugriff beendet ist, setzt sie das interne Datenvollständigkeitssignal
int/DC auf den L-Pegel. Dann spricht sie auf die Operandenzugriffsanforderung
an, indem sie das Operandenzugriffsbestätigungssignal/ACKO auf den
L-Pegel setzt. Auf die Beendigung des Operandenzugriffs hin spricht
sie auf die Befehlsabruf-Zugriffsanforderung an, indem sie das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
auf den L-Pegel setzt. Da das Chipauswahlsignal/CS auf den L-Pegel
gesetzt wird, nachdem das Halteanforderungssignal/HREQ und das Haltebestätigungssignal/HACK
auf den L-Pegel gesetzt wurde, befindet sich das interne Haltebestätigungssignal
int/HACK auf dem L-Pegel, wenn das interne Chipauswahlsignal int/CS
auf den L-Pegel übergeht.
-
Wenn das Sperrsignal/LOCK auf den
L-Pegel, das Operanden-Lese/Schreib-Signal
OPR/W auf den H-Pegel und das Operandenzugriffsanforderungssignal/REQO
auf den L-Pegel und im Ansprechen darauf das Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel gesetzt wird, d.h., wenn der verriegelte Operandenlesezyklus
beginnt, beginnt die Verriegelungszugriffsperiode. Die Verriegelungzugriffsperiode
endet, wenn das Sperrsignal/LOCK auf den H-Pegel, das Operanden-Lese/Schreib-Signal
OPR/W auf den L-Pegel und das Operandenzugriffsanforderungssignal/REQO
auf den L-Pegel und dann das Operandenzugriffsendesignal/ENDO auf
den L-Pegel gesetzt werden, d.h., wenn der verriegelte Operandenschreibzyklus
endet.
-
In der Verriegelungszugriffsperiode,
wenn sie auf den Halteausschlußsperrmodus
eingestellt ist, setzt die Speichersteuereinrichtung 160 das
interne Haltebestätigungssignal
int/HACK auf den H-Pegel, der anzeigt, daß ein Zugriff auf den eingebauten DRAM-Bereich
von außen
ausgeschlossen ist, während
das interne Halteanforderungssignal int/HREQ selbst dann ignoriert
wird, wenn es auf den L-Pegel übergeht,
bis die Verriegelungszugriffsperiode endet. In der Verriegelungsperiode
setzt die Speichersteuereinrichtung 160 die Antwortsignale,
das Befehlsabrufszugriffsbestätigungssignal/ACKF
und das Operandenzugriffsbestätigungssignal/ACKO
in der Reihenfolge auf den L-Pegel, mit der das Befehlsabruf-Zugriffsanforderungsignal/REQF
und das Operandenzugriffsanforderungssignal/REQO den L-Pegel erreichen.
Wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF und das Operandenzugriffsanforderungssignal/REQO
gleichzeitig auf den L-Pegel übergehen,
setzt die Speichersteuereinrichtung 160 das Operandenzugriffsbestätigungssignal/ACKO
zuerst auf den L-Pegel. Wenn dieser Operandenzugriff beendet ist,
setzt sie das Befehlsabrufszugriffsbestätigungssignal/ACKF auf den
L-Pegel.
-
In der Verriegelungszugriffsperiode,
wenn sie auf den Chipauswahlausschlußsperrmodus eingestellt ist,
behält
die Speichersteuereinrichtung 160 das Datenvollständigkeitssignal
int/DC auf dem H-Pegel bei, ohne einen Zugriff auf den eingebauten DRAM-Bereich
durchzuführen,
um anzuzeigen, daß ein
Zugriff auf den eingebauten DRAM-Bereich ausgeschlossen ist, während das
interne Chipauswahlsignal int/CS selbst dann ignoriert wird, wenn
es auf den L-Pegel übergeht,
bis die Verriegelungszugriffsperiode beendet wird. Zu dieser Zeit
setzt die Speichersteuereinrichtung 160 die Antwortsignale,
das Befehlsabrufszugriffsbestätigungssignal/ACKF
und das Operandenzugriffsbestätigungssignal/ACKO
in der Reihenfolge auf den L-Pegel, mit der das entsprechende Befehlsabrufszugriffsanforderungssignal/REQF
und das Operandenzugriffsanforderungssignal/REQO auf den L-Pegel übergehen.
Falls das Be fehlsabrufszugriffsanforderungssignal/REQF und das Operatenzugriffsanforderungssignal/REQO gleichzeitig
auf den L-Pegel übergehen,
setzt die Speichersteuereinrichtung 160 zuerst das Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel.
-
Wenn dann dieser Operandenzugriff
beendet wird, setzt sie das Befehlsabrufszugriffsbestätigungssignal/ACKF
auf den L-Pegel.
-
Des weiteren empfängt die Speichersteuereinrichtung 160 von
der externen Busschnittstelleneinrichtung 150 das interne
Datenvollständigkeitssignal
int/DC, das interne Lese/Schreib-Signal
intR/W und das interne Adressensignal intA [8:30], und gibt das
Befehlsabruf-Zugriffsendesignal/ENDF, das Operandenzugriffsendesignal/ENDO,
das interne Lese/Schreib-Signal intR/W, das interne Adressensignal
intA [8:30], das interne Busstartsignal int/BS, das Steuersignal
CTRLD und das Steuersignal CTRLC aus.
-
Wenn das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
auf den L-Pegel gesetzt wurde, überprüft die Speichersteuereinrichtung 160,
ob das Befehlsabruf-Zugriffsadressensignal AF von der Zentraleinheit 110 eine
Adresse in dem eingebauten DRAM-Bereich
oder eine Adresse in dem externen Speicher 400 bestimmt.
Wenn infolgedessen bestimmt wird, daß es sich um einen Zugriff
auf den externen Speicher 400 handelt, setzt die Speichersteuereinrichtung 160 das
interne Lese/Schreib-Signal intR/W auf den H-Pegel, der ein Lesen
anzeigt, ändert das
interne Adressensignal intA [8:30] in eine Adresse zum Zugriff auf
den externen Speicher 400 und setzt das interne Busstartsignal
int/BS auf den L-Pegel, der anzeigt, daß ein Buszyklus für den externen Datenbus 500 beginnt.
Wenn dann das interne Datenvollständigkeitsignal int/DC auf den
L-Pegel übergeht,
der eine Beendigung des Buszyklus anzeigt, setzt die Speichersteuereinrichtung 160 das
interne Busstartsignal int/BS auf den H-Pegel zurück, und setzt
es wiederum auf den L-Pegel,
und ändert
auch das interne Adressensignal intA [8:30] zum Starten des Buszyklus.
Auf diese Weise wird der Buszyklus zweimal, beim Entgegennehmen
von 32-Bit-Daten, viermal bei 64-Bits, sechsmal bei 96 Bits und
achtmal bei 128 Bits gestartet. Die Speichersteuereinrichtung 160 setzt
das Befehlsabruf-Zugriffsendesignal/ENDF im Ansprechen darauf auf
den L-Pegel, wenn das interne Datenvollständigkeitssignal int/DC zweimal, viermal,
sechsmal oder achtmal den L-Pegel erreicht.
-
Falls in Folge der Überprüfung bestimmt wird,
daß es
sich um einen Zugriff auf den eingebauten DRAM-Bereich handelt, überprüft die Speichersteuereinrichtung 160,
ob das Befehlsabruf-Zugriffsadressensignal
AF von der Zentraleinheit 110 eine Adresse ist, die in
dem Cachespeicher 130 gespeicherten Daten entspricht. Falls
es sich um eine entsprechende Adresse handelt, interpretiert die
Speichersteuereinrichtung dies als Cache-Treffer, als Zugriff auf
den Cachespeicher 130, und verändert das Steuersignal CTRLC
zur Steuerung des Cachespeichers 130. Falls es sich nicht
um eine entsprechende Adresse handelt, interpretiert die Speichersteuereinrichtung 160 dies
als Zugriff auf den eingebauten DRAM 120, als Cache-Fehlschlag, und verändert dann
das Steuersignal CTRLD zur Steuerung des eingebauten DRAMs 120.
Dann setzt die Speichersteuereinrichtung 160 angesichts
des Ablaufs der Zykluszeit des eingebauten DRAMs 120 oder
des Cachespeichers 130 das Befehlsabruf-Zugriffsendesignal/ENDF
auf den L-Pegel und beendet das Halten des Steuersignals CTRLC oder
CTRLD.
-
Auf ähnliche Weise wie in dem Fall,
in dem die Speichersteuereinrichtung das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
auf den L-Pegel setzt, wenn die Speichersteuereinrichtung 160 das
Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel gesetzt hat, falls bestimmt wird, daß der Operandenzugriff
ein Zugriff auf den externen Speicher 400 ist, spricht
sie auf das Operanden-Lese/Schreib-Signal
OPR/W an, indem das interne Lese/Schreib-Signal intR/W auf den H-Pegel gesetzt wird,
wenn sich das Operanden-Lese/Schreib-Signal OPR/W auf dem H-Pegel
befindet, und indem das interne Lese/Schreib-Signal intR/W auf den
L- Pegel gesetzt
wird, falls sich das Operanden-Lese/Schreib-Signal OPR/W auf dem L-Pegel befindet. Gleichzeitig
verändert
die Speichersteuereinrichtung 160 das interne Adressensignal
intA [8:30] in eine Adresse zum Zugriff auf den externen Speicher 400 und
setzt das interne Busstartsignal int/BS auf den L-Pegel, der anzeigt,
daß ein
Buszyklus für
den externen Datenbus 500 gestartet wurde.
-
Wenn danach das interne Datenvollständigkeitssignal
int/DC in den L-Pegel übergeht,
der die Beendigung des Buszyklus anzeigt, setzt die Speichersteuereinrichtung 160 das
interne Busstartsignal int/BS zurück auf den H-Pegel und setzt
es wiederum auf den L-Pegel und verändert auch das interne Adressensignal
intA [8:30] zum Starten eines Buszyklus. Auf diese Weise wird der
Buszyklus zweimal, wenn 32-Bit-Daten entgegengenommen oder ausgegeben
werden, viermal bei 64-Bits, sechsmal bei 96 Bits und achtmal bei
128 Bits gestartet. Die Speichersteuereinrichtung 160 setzt
das Operandenzugriffsendesignal/ENDO im Ansprechen darauf auf den L-Pegel,
daß das
interne Datenvollständigkeitssignal int/DC
den L-Pegel zweimal, viermal, sechsmal oder achtmal erreicht.
-
Wenn die Speichersteuereinrichtung 160 den
Operandenzugriff als Zugriff auf den eingebauten DRAM-Bereich interpretiert,
verändert
sie das Steuersignal CTRLC zur Steuerung des Cachespeichers 130,
falls es sich um einen Cache-Treffer handelt, im Ansprechen auf
das Operandenzugriffsadressensignal AO und das Operanden-Lese/Schreib-Signal
OPR/W von der Zentraleinheit 110. Falls es sich um einen
Cache-Fehlschlag handelt, verändert
die Speichersteuereinrichtung 160 das Steuersignal CTRLD
zur Steuerrung des eingebauten DRAMs 120 im Ansprechen
auf das Operandenzugriffsadressensignal AO und da Operanden-Lese/Schreib-Signals
OPR/W von der Zentraleinheit 110. Dann setzt die Speichersteuereinrichtung 160 angesichts
des Ablaufs der Zykluszeit des eingebauten DRAMs 120 oder
des Cachespeichers 130 das Operandenzugriffsendesignal/ENDO
auf den L-Pegel und beendet das Halten des Steuersignals CTRLC oder
CTRLD.
-
Wenn des weiteren auf den Übergang
des internen Chipauswahlsignals int/DS auf den L-Pegel angesprochen
wird, bestimmt die Speichersteuereinrichtung 160 auf der
Grundlage der internen Adresse intA [8:30] von der externen Busschnittstelleneinrichtung 150 auf ähnliche
Weise wie bei dem Zugriff auf den eingebauten DRAM-Bereich durch
die Zentraleinheit 110, ob es sich um einen Cache-Treffer
oder einen Cache-Fehlschlag handelt. Wenn es sich um einen Cache-Treffer
handelt, veranlaßt
die Speichersteuereinrichtung 160 das Steuersignal CTRLC
zur Steuerung des Cachespeichers 130 zur Veränderung auf
das interne Lese/Schreib-Signal intR/W und das interne Adressensignal
intA [8:30] von der externen Busschnittstelleneinrichtung 150 hin.
Wenn es sich um einen Cache-Fehlschlag handelt, wird das Steuersignal
CTRLD zur Steuerung des eingebauten DRAMs 120 zur Änderung
auf das interne Lese/Schreib-Signal intR/W und die interne Adresse intA
[8.30] von der externen Busschnittstelleinrichtung 150 hin
veranlaßt.
Demzufolge wird angesichts des Ablaufs der Zykluszeit des eingebauten
DRAMs 120 oder des Cachespeichers 130 das interne
Datenvollständigkeitssignal
int/DC durch die Speichersteuereinrichtung 160 auf den
L-Pegel gesetzt, und das Halten des Steuersignals CTRLC oder CTRLD
beendet.
-
Unter Bezugnahme auf 2 wird nachstehend die Zentraleinheit
(CPU) 110 ausführlicher
beschrieben. Die Zentraleinheit 110 besteht aus einem CPU-Kern
einer 32-Bit-RISK- (Rechner mit reduziertem Befehlsvorrat) Bauart.
Die Befehlslänge
beträgt 16
Bits oder 32 Bits. Der Operandenzugriff von der Zentraleinheit 110 auf
den eingebauten DRAM-Bereich oder den externen Speicher 400 wird
nur durch einen Ladebefehl und einen Speicherbefehl durchgeführt. Gemäß 2 enthält die Zentraleinheit 110 eine
Befehlswarteschlange 110a, die interne 128-Bit-Daten intD
[0:127] von dem internen Datenbus 170 zur Ausgabe von 32
Bits als Befehl empfängt.
Die Zentraleinheit
110 enthält auch eine Befehlsdekodiereinrichtung 110b zur
Dekodierung und Ausgabe eines von der Befehlswarteschlange 110a empfangenen
Befehls. Wenn 32-Bit-Daten von der Befehlswarteschlange 110a übertragen
werden, ist nicht bekannt, ob die Daten einen 32-Bit-Befehl oder einen
16-Bit-Befehl darstellen. Die Befehlsdekodiereinrichtung 110b dekodiert
diese Daten um anzuzeigen, ob es sich um 32 Bits oder 16 Bits handelt.
-
Die Zentraleinheit 110 enthält auch
einen Programmzähler 110c der
eine Befehlsabrufszugriffsadressensignal AF zur Bestimmung von Adress-Speicherbefehlen,
die durch die Befehlswarteschlange 110a abzurufen sind,
und eine Registereinrichtung 110d zur Speicherung von Daten.
Die Registereinrichtung 110d weist 16 32-Bit-breite Register auf.
Des weiteren enthält
die Zentraleinheit 110 eine ALU (arithmetische Logikeinrichtung) 110e zur Durchführung von
logischen Operationen bei Daten, wie eine Addition, eine Subtraktion,
eine Und-Verknüpfung und
eine Oder-Verknüpfung,
eine Schiebeeinrichtung 110f zur Verschiebung oder Rotation
einer Bitfolge von Daten für
eine gewünschte
Anzahl von Bits, und eine Produkt-Summen-Berechnungseinrichtung 110g zur
Durchführung
einer Produkt-Summen-Berechnung bei Daten. Die Produkt-Summen-Berechnungseinrichtung 110g enthält einen
32 × 16-Bit-Multiplizierer und
einen 56-Bit-Akumulator. Die Zentraleinheit 110 enthält auch
eine Ladespeichereinrichtung 110 h zum Laden und Speichern von Daten
zwischen der Registereinrichtung 110d, der Alu 110e,
der Schiebeeinrichtung 110f und der Produkt-Summen-Berechnungseinrichtung 110g.
-
Die Zentaleinheit 110 enthält ferner
eine Datenauswahleinrichtung 110i, die interne 128-Bit-Daten
intD [0:127] von dem internen Datenbus 170 empfängt und
32 Bits ausgibt, und 32-Bit-Daten von Einrichtungen, wie dem Register 110d,
empfängt
und die Daten an den internen Datenbus 170 ausgibt. Die Zentraleinheit 110 enthält auch
eine CPU-Steuerschaltung 110j zur Steuerung des Operandenzugriffs.
Der Befehl wird mit tels der fünfstufigen
Pipelineverarbeitung verarbeitet. Die Pipelineverarbeitung beinhaltet
den Befehlsabruf in der Befehlswarteschlange 110a, die
Befehlsdekodierung in der Befehlsdekodiereinrichtung 110b,
die Ausführung
in der ALU 110e und der gleichen, den Speicherzugriff in der
CPU-Steuerschaltung 110j und
das Zurückschreiben
in die Register in der Datenauswahleinrichtung 110i.
-
Die Befehlswarteschlange 110a setzt
das Befehlsabruf-Zugriffsanforderungssignal/REQF, wenn
alle erforderlichen Befehle zu der Befehlsdekodiereinrichtung 110b ausgegeben
wurden, auf den L-Pegel zum Abrufen des nächsten Befehls. Wenn der Befehl über den
internen Datenbus 170 übertragen
ist und das Befehlsabruf-Zugriffsendesignal/ENDF auf den L-Pegel übergeht,
speichert die Befehlswarteschlange den Befehl von dem internen Datenbus 170 zwischen.
Die Befehlsdekodiereinrichtung 110b dekodiert den von der
Befehlswarteschlange 110a bereitgestellten Befehl und überträgt ihn zu
der Registereinrichtung 110d, der ALU 110e, der
Schiebeeinrichtung 110f, der Produkt-Summen-Berechnungseinrichtung 110g,
der Ladesteuereinrichtung 110h oder der CPU-Steuerschaltung 110j. Wenn
die Befehlswarteschlange 110a das Befehlsabruf-Zugriffsanforderungssignal/REQF
auf den L-Pegel setzt, veranlaßt
der Programmzähler 110c das
Befehlsabruf-Zugriffsadressensignal
AF zur Bestimmung des Zielorts des Befehlsabruf-Zugriffs zur Änderung
auf die Adresse, auf die zuzugreifen ist. Wenn das Befehlsabrufbestätigungssignal/ACKF
auf den L-Pegel übergeht,
beendet der Programmzähler 110c die
Ausgabe des Befehlsabruf-Zugriffsadressensignal AF.
-
Die Datenauswahleinrichtung 110i empfängt das
Operandenzugriffsadressensignal AO, das Operandenzugriffsbestätigungssignal/ACKO
und das Operandenzugriffsendesignal/ENDO. Wenn zum Zeitpunkt des
Operandenschreibens das Operandenzugriffsbestätigungssignal/ACKO auf den
L-Pegel übergeht,
gibt die Datenauswahleinrichtung 110i von der Registereinrichtung 110d oder
dergleichen empfangene 32-Bit-Daten zu den 32 Bits im Ansprechen
auf das Operandenzugriffsadressensignal AO auf dem 128-Bit-breiten
internen Datenbus 170 aus. Wenn zum Zeitpunkt des Operandenlesens
das Operandenzugriffsendesignal/ENDO auf den L-Pegel übergeht,
speichert die Datenauswahleinrichtung 110i die 128-Bit-Daten
von dem internen Datenbus 170 zwischen und gibt 32 Bits
entsprechend dem Operandenzugriffsadressensignal AO aus.
-
Die CPU-Speichersteuereinrichtung 110j empfängt einen
dekodierten Befehl von der Befehlsdekodiereinrichtung 110b.
Wenn der Befehl von der Befehlsdekodiereinrichtung 110b eine
Ladebefehl oder ein Speicherbefehl ist und der Operandenbestimmungsabschnitt
des Befehls den eingebauten DRAM-Bereich,
den externen Speicher 400 oder eine Register in dem Mikroprozessor 100 jedoch
außerhalb
der Zentraleinheit 110 bestimmt, verändert die CPU-Speichersteuereinrichtung 110j das
Operandenzugriffsadressensignal AO entsprechend dem Operandenbestimmungsabschnitt.
Zu diesem Zeitpunkt setzt die CPU-Speichersteuereinrichtung 110j das
Operandenzugriffsanforderungssignal/REQO auf den L-Pegel und setzt
das Operanden-Lese/Schreib-Signal OPR/W auf den H-Pegel im Fall des
Ladesbefehls, oder auf den L-Pegel im Fall des Speicherbefehls.
Wenn der Ladebefehl ein Ladebefehl mit Verriegelung ist, setzt die
CPU Speichersteuereinrichtung 110j das Sperrsignal/LOCK
auf den L-Pegel, und wenn es sich um einen Speicherbefehl mit Verriegelung
handelt, setzt sie das Sperrsignal/LOCK zurück auf den H-Pegel.
-
Nachstehend wird die externe Busschnittstelleneinrichtung 150 ausführlicher
beschrieben. Gemäß 3 enthält die externe Busschnittstelleneinrichtung 150 einen
Halteanforderungssignaleingangspuffer 150a, der das Halteanforderungssignal/HREQ
von außen
zur Ausgabe des internen Halteanforderungssignal int/HREQ empfängt. Der
Halteanforderungssignaleingangspuffer 150a setzt das interne
Halteanforderungssignal int/HREQ auf den H-Pegel, wenn sich das
Halteanforderungssignal/HREQ auf dem H-Pegel befindet, und setzt
es auf den L-Pegel, falls das Halteanforderungssignal/HREQ auf dem
L-Pegel ist. Die externe Busschnittstelleneinrichtung 150 enthält auch
einen Haltebestätigungssignalausgangspuffer 150b,
der das interne Haltebestätigungssignal
int/HACK zur Ausgabe des Haltebestätigungssignals/HACK nach außen empfängt. Der
Haltebestätigungssignalausgangspuffer 150b setzt
das Haltebestätigungssignal/HACK auf
den H-Pegel, falls das interne Haltebestätigungssignal int/HACK auf
dem H-Pegel ist, und setzt es auf den L-Pegel, falls das interne
Haltebestätigungssignal
int/HACK auf dem L-Pegel ist.
-
Die externe Busschnittstelleneinrichtung 150 enthält ferner
einen Chipauswahlsignaleingangspuffer 150c, der das Chipauswahlsignal/CS
von außen zur
Ausgabe des internen Chipauswahlsignals int/CS empfängt. Der
Chipauswahlsignaleingangspuffer 150c setzt das interne
Chipauswahlsignal int/CS auf den H-Pegel, falls das Chipauswahlsignal/CS
auf dem H-Pegel ist, und auf den L-Pegel, falls das Chipauswahlsignal/CS
auf dem L-Pegel ist. Die externe Busschnittstelleneinrichtung 150 enthält ferner
einen Datenvollständigkeitssignaleingangs/ausgangspuffer 150d,
der das interne Chipauswahlsignal int/CS und auch das Datenvollständigkeitssignal/DC
von außen
zur Ausgabe des internen Datenvollständigkeitsignals int/DC empfängt, und
ferner das interne Datenvollständigkeitssignal
int/DC zur Ausgabe des Datenvollständigkeitssignals/DC empfängt. Wenn sich
das interne Chipauswahlsignal int/CS auf dem H-Pegel befindet, setzt
der Datenvollständigkeitssignaleingangs/-ausgangspuffer 150d das
interne Datenvollständigkeitssignal
int/DC auf den H-Pegel, falls das Datenvollständigkeitssignal/DC von außen auf
dem H-Pegel ist, und auf den L-Pegel, falls das Datenvollständigkeitssignal/DC
von außen
auf dem L-Pegel ist. Wenn sich das interne Chipauswahlsignal int/CS
auf dem L-Pegel befindet, wird das Datenvollständigkeitssignal/DC nach außen auf
den H-Pegel gesetzt, falls das interne Datenvollständigkeitssignal
int/DC auf dem H-Pegel ist, und auf den L-Pegel gesetzt, falls das
interne Datenvollständigkeitssignal int/DC
auf dem L-Pegel ist.
-
Die externe Busschnittstelleneinrichtung 150 enthält ferner
einen Lese/Schreib-Signal-Eingangs/Ausgangspuffer 150 e, der das
interne Haltebestätigungssignal
int/HACK, und auch das Lese/Schreib-Signal R/W von außen zur
Ausgabe des internen Lese/Schreib-Signals intR/W empfängt, und auch
das interne Lese/Schreib-Signal R/W zur Ausgabe des Lese/Schreib-Signals
R/W empfängt. Wenn
sich das interne Haltebestätigungssignal int/HACK
auf dem H-Pegel befindet, setzt der Lese/Schreib-Signal-Eingangs-Ausgangs-Puffer 150e das
Lese/Schreib-Signal R/W auf den H-Pegel, falls sich das interne
Lese/Schreib-Signal
intR/W auf dem H-Pegel befindet, und auf den L-Pegel, falls sich
das interne Lese/Schreib-Signal intR/W auf dem L-Pegel befindet. Wenn sich das interne
Haltebestätigungssignal
int/HACK auf dem L-Pegel befindet, wird das interne Lese/Schreib-Signal
intR/W auf den H-Pegel gesetz, falls sich das Lese/Schreib-Signal
R/W von außen
auf dem H-Pegel befindet, und auf den L-Pegel gesetzt, falls sich
das Lese/Schreib-Signal R/W von außen auf dem L-Pegel befindet.
-
Des weiteren enthält die externe Busschnittstelleneinrichtung 150 einen
Adressensignaleingangs/-ausgangspuffer 150f, der das interne
Haltebestätigungssignal
int/HACK, und auch das Adressensignal A[8:30] von außen zur
Ausgabe des internen Adressensignals int A[8:30] empfängt, und
auch das interne Adressensignal int A[8:30] zur Ausgabe des Adressensignals
A[8:30] empfängt.
Wenn sich das interne Haltebestätigungssignal
int/HACK auf dem H-Pegel befindet, setzt der Adressensignaleingangs/-ausgangspuffer 150f das
Adressensignal A[8:30] auf den gleichen Pegel wie das interne Adressensignal
int A[8:30]. Wenn sich das interne Haltebestätigungssignal int/HACK auf
dem L-Pegel befindet, wird das interne Adressensignal int A[8:30] auf
den gleichen Pegel wie das Adressensignal A[8:30] gesetzt.
-
Des weiteren enthält die externe Busschnittstelleneinrichtung 150 einen
Busstartsignalausgangspuffer 150g, der das interne Busstartsignal int/BS
empfängt
und das Busstartsignal/BS nach außen ausgibt. Der Busstartsignalausgangspuffer 150g setzt
das Busstartsignal/BS auf den H-Pegel, falls das interne Busstartsignal
int/BS auf dem H-Pegel ist, und auf den L-Pegel, falls das Letztere
auf dem L-Pegel ist.
-
Die externe Busschnittstelleneinrichtung 150 enthält ferner
einen Datenpuffer 150h, der das interne Haltebestätigungssignal
int/HACK, das interne Datenvollständigkeitssignal int/DC, das
interne Lese/Schreib-Signal R/W und das interne Taktsignal intCLK
und auch externe Daten extD [0:15] von außen zur Ausgabe der internen
Daten intD [0:127] empfängt,
und auch die internen Daten intD [0:127] zur Ausgabe der externen
Daten extD [0:15] zur Busbreitenumwandlung zwischen dem internen
128-Bit-Datenbus und dem externen 16-Bit-Datenbus empfängt. Wenn
sich das interne Haltebestätigungssignal int/HACK
auf dem H-Pegel befindet, und sich das interne Lese/Schreib-Signal intR/W auf
dem H-Pegel und sich das interne Datenvollständigkeitssignal int/DC auf
dem L-Pegel befindet, wenn sich das interne Taktsignal intCLK von
dem L-Pegel in den H-Pegel ändert,
dann speichert der Datenpuffer 150h die externen 16-Bit-Daten extD [0:15]
zwischen und speichert die Daten in dem Datenpuffer 150h und
gibt auch die gespeicherten Daten als 16 Bits in den 128 Bit internen
Daten intD [0:127] aus.
-
Wenn sich das interne Haltebestätigungssignal
int/HACK auf dem H-Pegel und das interne Lese/Schreib-Signal intR/W
auf dem L-Pegel und das interne Datenvollständigkeitssignal int/DC auf
dem L-Pegel befinden, wenn sich das interne Taktsignal intCLK von
dem L-Pegel auf den H-Pegel ändert, dann
beendet der Datenpuffer 150h das Halten der Ausgabe der
externen 16-Bit-Daten extD [0:15], die aus den 128 Bit internen
Daten intD [0:127] ausgegeben werden. Wenn sich außerdem 'das
interne Haltebestätigungssignal
int/HACK auf dem L-Pegel und das interne Lese/Schreib-Signal intR/W
auf dem H-Pegel und das interne Datenvollständigkeitssignal int/DC auf
dem L-Pegel befinden,
wenn sich das interne Taktsignal intCLK von dem H-Pegel auf den L-Pegel ändert, dann
gibt der Datenpuffer 150h die externen 16-Bit-Daten extD
[0:15] aus den internen 128-Bit-Daten int [0:127] aus.
-
Wenn sich das interne Haltebestätigungssignal
int/HACK auf dem L-Pegel und das interne Lese/Schreib-Signal intR/W
auf dem L-Pegel und das interne Datenvollständigkeitssignal int/DC auf
dem L-Pegel befinden, wenn sich das interne Taktsignal intCLK von
dem H-Pegel auf den L-Pegel ändert, dann
speichert der Datenpuffer 150h die externen 16-Bit-Daten
extD [0:15] zwischen und speichert sie in den Datenpuffer 150h und
gibt die gespeicherten Daten als 16 Bits in den 128 Bit internen
Daten intD [0:127] aus.
-
Nachstehend wird die Speichersteuereinrichtung 160 in
dem Mikroprozessor 100 ausführlicher beschrieben. Gemäß 4 enthält die Speichersteuereinrichtung 160 ein
Sperrmodusregister 161, das über den internen Datenbus übertragene Daten
speichert und die gespeicherten Daten als Sperrmodussignal LM zum
Einstellen des Sperrmodus ausgibt. Wenn sich das Sperrmodussignal
LM auf dem L-Pegel befindet, ist der Sperrmodus auf den Halteausschlußsperrmodus
eingestellt, und wenn es sich auf dem H-Pegel befindet, ist der
Sperrmodus auf dem Chipauswahlauschlußsperrmodus eingestellt. Die
Zentraleinheit 110 wird zur Durchführung eines Speicherbefehls
in dem Sperrmodusregister 161 zum Einstellen des Werts
des Sperrmodusregister 161 veranlaßt. D.h., die Zentraleinheit
wird zur Durchführung
von Befehlen ST, AO und LM veranlaßt. ST stellt den Speicherbefehl,
AO die Zieladresse der Ausführung
des Speicherbefehls und LM Daten des Sperrmodus dar. Wenn der Operandenzugriff durch
Einstellung von AO auf eine Adresse in dem Sperrmodusregister 161 und
von LM auf 0, wenn der Halteausschlußsperrmodus eingestellt wird,
oder auf 1, wenn der Chipauswahlausschlußsperrmodus eingestellt wird,
wird das Sperrmodusregister 161 durch das Operandenzugriffsadressensignal
AO bestimmt und LM wird über
den internen Datenbus 170 zu dem Sperrmodusregister 161 übertragen.
-
Die Speichersteuereinrichtung 160 enthält eine
Verriegelungsschaltung 162, die das Sperrmodussignal LM,
das Sperrsignal/LOCK, das interne Halteanforderungssignal int/HREQ
und das interne Chipauswahlsignal int/CS empfängt und ein gesperrtes Halteanforderungssignal/HREQL
und ein gesperrtes Chipauswahlsignal/CSL ausgibt. Die Verriegelungsschaltung 162 enthält einen
Invertierer 162a, der das interne Halteanforderungssignal
int/HERQ empfängt
und es als inverses Signal ausgibt, und einen Invertierer 162b,
der das Sperrsignal/LOCK zur Ausgabe als inverses Signal empfängt. Die
Verriegelungsschaltung 162 enthält des weiteren eine NAND-Schaltung 162c,
die das inverse Signal von dem Invertierer 162b und das
gesperrte Halteanforderungssignal/HREQL empfängt, und eine zusammengesetzte
Gatterschaltung 162d, die ein NAND-Gatter und ein OR-Gatter
enthält,
die das inverse Signal von dem Invertierer 162a, das Ausgangssignal
der NAND-Schaltung 162c und das Sperrmodussignal LM zur
Ausgabe des gesperrten Halteanforderungssignals/HREQL empfängt.
-
Die Verriegelungsschaltung 162 enthält ferner
einen Invertierer 162e, der das Sperrmodussignal LM zur
Ausgabe als inverses Signal und einen Invertierer 162f enthält, der
das interne Chipauswahlsignal int/CS zur Ausgabe als inverses Signal
empfängt.
Die Verriegelungsschaltung 162 enthält auch eine NAND-Schaltung 162g,
die das Ausgangssignal der NAND-Schaltung 162g,
das inverse Signal des Sperrsignals/LOCK von dem Inventierer 162b und das
gesperrte Chipauswahlsignal/CSL empfängt und eine zusammengesetzte
Gatterschaltung 162h aus einem NAND-Gatter und einem OR-Gatter,
die das inverse Signal von dem Invertierer 162f und das
inverse Signal des Sperrmodussignals LM von dem Inventierer 162e zur
Ausgabe des gesperrten Chipauswahlsignals/CSL empfangen. Wenn sich
das Sperrsignal/LOCK auf dem H-Pegel befindet, veranlaßt die Verriegelungsschaltung 162 das
gesperrte Halteanforderungssignal/HREQL und das gesperrte Chipauswahlsignal/CSL
zur Veränderung
auf Pegel ungeachtet des Werts des Sperrmodussignals LM, die dem
internen Halteanforderungssignal int/HREQ und dem internen Chipauswahlsignal
int/CS entsprechen.
-
Wenn sich das Sperrsignal/LOCK auf
dem L-Pegel und das gesperrte Halteanforderungssignal/HREQL auf
dem H-Pegel und das Sperrmodussignal LM auf dem L-Pegel befinden,
sperrt die Verriegelungsschaltung 162 das gesperrte Halteanforderungssignal/HREQL
ungeachtet des internen Halteanforderungssignals int/HREQ auf dem
H-Pegel. Wenn sich das Sperrsignal/LOCK auf dem L-Pegel und das
gesperrte Chipauswahlsignal/CSL auf dem H-Pegel und das Sperrmodussignal
LM auf dem H-Pegel befinden, ändert
die Verriegelungsschaltung 162 das gesperrte Halteanforderungssignal/HREQL auf
einen Pegel, der dem internen Halteanforderungssignal int/HREQ entspricht,
sperrt jedoch das gesperrte Chipauswahlsignal/CSL ungeachtet des internen
Chipauswahlsignals int/CS auf den H-Pegel.
-
In der vorstehenden Beschreibung
der Speichersteuereinrichtung 160 wurde der Fall beschrieben,
bei dem das Befehlsabrufszugriffsanforderungssignal/REQF, das Operandenzugriffsanforderungssignal/REQO
und das interne Halteanforderungssignal int/HREQ gleichzeitig auf
den L-Pegel übergehen. Jedoch
entspricht die Beschreibung strenggenommen dem Fall, bei dem aufgrund
von Verzögerungen in
dem Invertierer 162a und der zusammengesetzten Gatterschaltung 162d in
der Verriegelungschaltung 162 das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO und das gesperrte Halteanforderungssignal/HREQL
gleichzeitig auf den L-Pegel übergehen. Auf ähnlicher
Weise entsprich die Beschreibung bezüglich des Falls, bei dem das
Befehlsabruf-Zugriffsanforderungssignal/REQF, das Operandenzugriffsanforderungssignal/REQO
und das interne Chipauswahlsystem int/CS gleichzeitig auf den L-Pegel übergehen,
strenggenommen dem Fall, bei dem das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO und das gesperrte Chipauswahlsignal/CSL
gleichzeitig aufgrund von Verzögerungen
in dem Invertierer
162f und der zusammengesetzten Gatterschaltung 162h in
der Verriegelungsschaltung 162 den L-Pegel erreichen.
-
Des weiteren enthält die Speichersteuereinrichtung 160 eine
Haltesteuereinrichtung 163, die das Befehlsabruf-Zugriffsadressensignal
AF, das Operandenzugriffsadressensignal AO, das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO und das gesperrte Halteanforderungssignal/HREQL empfängt und
das interne Haltebestätigungssignal int/HACK
ausgibt. Die Haltesteuerschaltung 163 gibt auch ein Befehlsabruf-Zeiterfassungssignal
FLF zur Anzeige, ob das gesperrte Halteanforderungssignal/HREQL
oder das Befehlsabruf-Zugriffsanforderungssignal/REQF
eher den L-Pegel erreicht hat, und ein Operandenzeiterfassungssignal
FLO zur Anzeige aus, welches, das gesperrte Halteanforderungssignal/HREQL
oder das Operandenzugriffsanforderungssignal/REQO, den L-Pegel eher erreicht
hat, ein externes Befehlsabruf-Zugriffserfassungssignal EADF
zur Anzeige, ob das Befehlsabruf-Zugriffsadressensignal AF eine
Adresse in dem externen Speicher 400 bestimmt, und ein
externes Operandenzugriffserfassungssignal EADO zur Anzeige aus, ob
das Operandenzugriffsadressensignal AO eine Adresse des externen
Speichers 400 bestimmt.
-
Wenn das gesperrte Halteanforderungssignal/HREQL
eher als das Befehlsabruf-Zugriffsanforderungssignal/REQF und das
Operandenzugriffsanforderungssignal/REQO auf den L-Pegel übergeht, oder
wenn das gesperrte Halteanforderungssignal/HREQL und das Befehlsabruf-Zugriffsanforderungssignal/REQF
oder das Operandenzugriffsanforderungssignal/REQO den L-Pegel gleichzeitig
erreichen und das andere den L-Pegel gleichzeitig oder später erreicht,
setzt die Haltesteuerschaltung 163 das interne Haltebestätigungssignal
int/ACK schnell auf den L-Pegel. Selbst wenn das gesperrte Halteanforderungssignal/HREQL
den L-Pegel später
als das Befehlsabruf-Zugriffsanforderungssignal/REQF erreicht, falls
das Befehlsabruf-Zugriffsadressensignal AF keine Adresse des externen
Speichers 400 bestimmt, d.h., falls der Befehlsabruf-Zugriff
keinen externen Buszyklus startet, setzt die Haltesteuerschaltung 163 das
interne Haltebestätigungssignal int/HACK
bald auf den L-Pegel.
-
Selbst wenn das gesperrte Halteanforderungssignal/HREQL
den L-Pegel später
als das Operandenzugriffsanforderungssignal/REQO erreicht, falls
das Operandenzugriffsadressensignal AO keine Adresse des externen
Speichers 400 bestimmt, d.h., wenn der Operandenzugriff
keinen externen Buszyklus startet, setzt die Haltesteuerschaltung 163 das
interne Haltebestätigungssignal
int/HACK bald auf den L-Pegel. Selbst wenn unter anderen Bedingungen das
gesperrte Halteanforderungssignal/HREQL auf den L-Pegel übergeht,
stellt die Halteanforderungssteuerschaltung 163 eine Bereitschaft
auf diese Anforderung bereit, indem das interne Haltebestätigungssignal
int/HACK nicht unverzüglich
auf den L-Pegel gesetzt wird, und setzt das interne Haltebestätigungssignal
int/HACK auf den L-Pegel,
nachdem das Befehlsabruf-Zugriffsanforderungssignal/REQF oder
das Operandenzugriffsanforderungssignal/REQO, das den L-Pegel früher erreicht
hat, den H-Pegel erreicht hat.
-
Wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF
früher
als das gesperrte Halteanforderungssignal/HREQL auf den L-Pegel übergeht, setzt
die Haltesteuerschaltung 163 das Befehlsabruf-Zeiterfassungssignal
FLF auf den H-Pegel, und wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF
später
oder gleichzeitig wie das gesperrte Halteanforderungssignal/HREQL
auf den L-Pegel übergeht,
wird das Befehlsabruf-Zeiterfassungssignal
FLF auf den L-Pegel gesetzt. Wenn das Operandenzugriffsanforderungssignal/REQO
früher
als das gesperrte Halteanforderungssignal/HREQL auf den L-Pegel übergeht,
setzt die Haltesteuerschaltung 163 das Operandenzeiterfassungssignal
FLO auf den H-Pegel, und wenn das Operandenzugriffsanforderungssignal/REQO
später
oder gleichzeitig wie das gesperrte Halteanforderungssignal/HREQL
den L-Pegel er reicht, wird das Operandenzeiterfassungssignal FLO
auf den L-Pegel
gesetzt.
-
Wenn das Befehlsabruf-Zugriffsadressensignal
AF eine Adresse des externen Speichers 400 bestimmt, setzt
die Haltesteuerschaltung 163 das externe Befehlsabruf-Zugriffserfassungssignal
EADF auf den H-Pegel, und falls nicht, auf den L-Pegel. Wenn außerdem das
Operandenzugriffsadressensignal AO eine Adresse des externen Speichers 400 bestimmt, setzt
die Haltesteuerschaltung 163 das externe Operandenzugriffserfassungssignal
EADO auf den H-Pegel, und falls nicht, auf den L-Pegel.
-
Die Speichersteuereinrichtung 160 enthält außerdem eine
Entscheidungssteuerschaltung 164, die das Befehlsabruf-Zugriffsanforderungssignal/REQF,
das Operandenzugriffsanforderungssignal/REQO, das gesperrte Halteanforderungssignal/HREQL, das
gesperrte Chipauswahlsignal/CSL, das Befehlsabruf-Zeiterfassungssignal/FLF,
das Operandenzeiterfassungssignal FLO, das externe Befehlsabruf-Zugriffserfassungssignal
EADF und das externe Operandenzugriffserfassungssignal EADO empfängt und
das Befehlsabruf-Zugriffsbestätigungssignal/ACKF,
das Operandenzugriffsbestätigungssignal/ACKO,
das Befehlsabruf-Zugriffsendesignal/ENDF, das Operandenzugriffsendesignal/ENDO,
und das interne Datenvollständigkeitssignal int/DC
ausgibt.
-
Wenn das Befehlsabruf-Zugriffsanforderungssignal/REQF
früher
als das Operandenzugriffsanforderungssignal/REQO auf den L-Pegel übergeht
und sich das Befehlsabruf-Zeiterfassungssignal FLF auf dem H-Pegel
befindet, wodurch angezeigt wird, daß das Befehlsabrufszugriffsanforderungssignal/REQF
den L-Pegel früher
als das gesperrte Halteanforderungssignal/HREQL erreicht hat, setzt
die Entscheidungssteuerschaltung 164 das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
unverzüglich
auf den L-Pegel. Selbst wenn zu diesem Zeitpunkt das Befehlsabruf-Zeiterfassungssignal
FLF auf dem L-Pegel ist, wenn sich das externe Befehlsabruf-Zugriffserfassungssignal
EADF auf dem L-Pegel befindet, wodurch angezeigt wird, daß kein externer
Buszyklus gestartet ist, und das Befehlsabruf-Zugriffsanforderungssignal/REQF den
L-Pegel früher
als das gesperrte Chipauswahlsignal/CSL erreicht hat, wird das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
unverzüglich
auf den L-Pegel gesetzt. Selbst wenn in anderen Fällen das
Befehlsabruf-Zugriffsanforderungssignal/REQF auf den L-Pegel übergeht,
setzt die Entscheidungssteuerschaltung 164 das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
nicht unverzüglich
auf den L-Pegel, um eine Bereitschaft auf diese Anforderung auszubilden.
-
Die Entscheidungssteuerschaltung 164 setzt das
Befehlsabruf-Zugriffsbestätigungssignal/ACKF auf
den L-Pegel, nachdem das gesperrte Halteanforderungssignal/HREQL
den H-Pegel erreicht hat, wenn eine Bereitschaft bereitgestellt
wurde, da das gesperrte Halteanforderungssignal/HREQL den L-Pegel
früher
oder gleichzeitig erreicht hat, nachdem das gesperrte Chipauswahlsignal/CSL
den H-Pegel erreicht hatte, wenn die Bereitschaft ausgebildet wurde,
da das gesperrte Chipauswahlsignal/CSL den L-Pegel früher oder
gleichzeitig erreicht hatte, und nachdem das Operandenzugriffsanforderungssignal/REQO
auf den H-Pegel übergeht,
wenn die Bereitschaft ausgebildet war, da das Operandenzugriffsanforderungssignal/REQO
den L-Pegel früher
oder zu gleichen Zeit erreicht hatte.
-
Wenn das Operandenzugriffsanforderungssignal/REQO
den L-Pegel früher
oder gleichzeitig wie das Befehlsabruf-Zugriffsanforderungssignal/REQF erreicht
hat und sich das Operandenzeiterfassungssignal FLO auf dem H-Pegel
befindet, wodurch angezeigt wird, daß das Operandenzugriffsanforderungssignal/REQO
den L-Pegel früher
als das gesperrte Halteanforderungssignal/HREQL erreicht hat, setzt
die Entscheidungssteuerschaltung 164 das Operandenzugriffsbestätigungssignal/ACKO
unverzüglich
auf den L-Pegel. Selbst wenn sich zu diesem Zeitpunkt das Operandenzeiterfassungssignal
FLO auf dem L-Pegel befindet, falls das externe Operandenzugriffserfassungssignal
EADO auf dem L-Pegel ist, wodurch angezeigt wird, das kein externer
Buszyklus gestartet ist, und das Operandenzugriffsanforderungssignal/REQO
den L-Pegel früher
als das gesperrte Chipauswahlsignal/CSL erreicht hat, wird das Operandenzugriffsbestätigungssignal/ACKO
unverzüglich
auf den L-Pegel gesetzt. Selbst wenn in anderen Fällen das
Operandenzugriffsanforderungssignal/REQO auf den L-Pegel übergeht,
setzt die Entscheidungssteuerschaltung 164 das Operandenzugriffsbestätigungssignal/ACKO
nicht unverzüglich auf
den L-Pegel, um
eine Bereitschaft auf diese Anforderung auszubilden.
-
Die Entscheidungssteuerschaltung 164 setzt das
Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel, nachdem das gesperrte Halteanforderungssignal/HREQL
auf den H-Pegel übergeht,
wenn die Bereitschaft ausgebildet wurde, da das gesperrte Halteanforderungssignal/HREQL
den L-Pegel früher oder
gleichzeitig erreicht hat, nachdem das gesperrte Chipauswahlsignal/CSL
auf den H-Pegel übergeht, wenn
die Bereitschaft ausgebildet wurde, da das gesperrte Chipauswahlsignal/CSL
den L-Pegel früher oder
gleichzeitig erreicht hat, und nachdem das Befehlsabruf-Zugriffsanforderungssignal/REQF
auf den H-Pegel übergeht,
wenn die Bereitschaft ausgebildet wurde, da das Befehlsabruf-Zugriffsanforderungssignal/REQF
den L-Pegel früher
erreicht hat.
-
Wenn das gesperrte Chipauswahlsignal/CSL auf
den L-Pegel früher
oder gleichzeitig wie das Befehlsabruf-Zugriffsanforderungssignal/REQF und das
Operandenzugriffsanforderungssignal/REQO übergeht, setzt die Entscheidungssteuerschaltung 164 das
interne Datenvollständigkeitssignal
int/DC auf den L-Pegel, in Anbetracht dessen, daß die Zykluszeit des eingebauten
DRAMs 120 oder des Cachespeichers 130 vorüber geht,
während
das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
und das Operandenzugriffsbestätigungssignal/ACKO
auf dem H-Pegel beibehalten werden.
-
Selbst wenn das gesperrte Chipauswahlsignal/CSL
den L-Pegel später
als das Befehlsabruf-Zugriffsanforderungssignal/REQF oder das Operandenzugriffsanforderungssignal/REQO
erreicht, wenn sich das externe Zugriffserfassungssignal EADF oder EADO,
das dem Befehlsabruf-Zugriffsanforderungssignal/REQF oder dem Operandenzugriffsanforderungssignal/REQO
entspricht, welches den L-Pegel früher erreicht hat, auf dem H-Pegel
befindet, wodurch der Beginn eines externen Buszyklus angezeigt
wird, und daher eine Bereitschaft als Ergebnis einer Entscheidung
mit dem gesperrten Halteanforderungssignal/HREQL ausgebildet wurde,
um das Befehlsabruf-Zugriffsbestätigungssignal/ACKF
oder das Operandenzugriffsbestätigungssignal/ACKO
auf dem H-Pegel beizubehalten, setzt die Entscheidungssteuerschaltung 164 das
interne Datenvollständikeitssignal
int/DC auf den L-Pegel, wobei auch berücksichtigt wird, wenn die Zykluszeit
des eingebauten DRAMs 120 oder des Cachespeichers 130 vorübergeht.
-
Wenn die Entscheidungssteuerschaltung 164 das
Befehlsabruf-Zugriffsbestätigungssignal/ACKF
auf den L-Pegel gesetzt hat, setzt sie das Befehlsabruf-Zugriffsendesignal/ENDF
entsprechend dem internen Datenvollständigkeitssignal int/DC auf
den L-Pegel, falls das externe Befehlsabruf-Zugriffserfassungssignal EADF auf dem
H-Pegel ist, oder es wird in Betracht gezogen, wenn die Zykluszeit
des eingebauten DRAMs 120 oder des Cachespeichers 130 vorüber geht,
wenn sich das externe Befehlsabruf-Zugriffserfassungssignal EADF
auf dem L-Pegel befindet. Wenn das Operandenzugriffsbestätigungssignal/ACKO
auf den L-Pegel gesetzt wurde, falls sich das externe Operandenzugriffserfassungssignal
EADO auf dem H-Pegel befindet, setzt die Entscheidungssteuerschaltung 164 das Operandenzugriffsendesignal/ENDO
entsprechend dem internen Datenvollständigkeitssignal int/DC auf den
L-Pegel, und falls sich das externe Operandenzugriffserfassungssignal
EADO auf dem L-Pegel befindet, wird in Betracht gezogen, wenn die
Zykluszeit des eingebauten DRAMs 120 oder des Cachespeichers 130 vorübergeht.
-
Nachstehend wird der Adressenraum
beschrieben. Gemäß 5 beträgt der für den Benutzer verfügbare Bereich
in dem Benutzerraum des Mikroprozessors 100 16 MByte von
der physikalischen Adresse H'00 0000 bis H'FF FFFF. In diesem Bereich stellt
der 1-MByte-Bereich von H'00 0000 bis H'0F FFFF den eingebauten
DRAM-Bereich dar. Die Adresse wird mit einer Breite von 32 Bits
gehandhabt.
-
Nachstehend werden Verarbeitungsvorgänge des
Mikroprozessors 100 zur Übertragung von Befehlen und
zur Übertragung
von Operanden, Objektdaten zur Ausführung der Befehle, beschrieben. Zuerst
wird ein Befehlsabruf-Zugriff beschrieben, mit dem die Zentraleinheit 110 einen
Befehl abruft. Es wird auf die 1, 2 und 3 Bezug genommen. Wenn der abzurufende
Befehl in dem Cachespeicher 130 vorhanden ist, was einem
Cache-Treffer entspricht, werden vier Befehlscodes für 128 Bits
von dem Cachespeicher 130 zu der Befehlswarteschlange 110a in
der Zentraleinheit 110 über
den internen Datenbus 170 übertragen. Die 16-Bit-Befehle
stellen einen 32-Bit-Befehlscode dar. Wenn der durch die Zentraleinheit 110 abzurufende
Befehl nicht in dem Cachespeicher 130 sondern in dem eingebauten
DRAM 120 vorhanden ist, werden die Befehlscodes für 128 Bits
von dem eingebauten DRAM 120 zu der Befehlswarteschlange 110a in
der Zentraleinheit 110 über den
internen Datenbus 170 übertragen.
Falls der durch die Zentraleinheit 110 abzurufende Befehl
weder in dem Cachespeicher 130 noch in dem eingebauten
DRAM 120 sondern in dem externen Speicher 400 vorhanden
ist, werden die Befehlscodes in dem 128-Bit-Datenpuffer 150h in
der externen Busschnittstelleneinrichtung 150 von dem externen
Speicher 400 über
den externen Datenbus 500 gespeichert.
-
Es gibt drei Arten zur Speicherung
von Daten in dem Datenpuffer 150h. Zuerst wird der Befehl
auf zweimal entgegengenommen, jeweils 16-Bits, und ein gewünschter
32-Bit-Befehlscode wird in dem Datenpuffer 150h gespeichert.
Dann werden beginnend von dem einen gewünschten 32-Bit-Befehlscode
die Befehl scodes an der Grenze des Datenpuffers 150h in
dem Datenpuffer 150h gespeichert. Wenn in diesem Fall ein
gewünschter
32-Bit-Befehlscode an dem führenden
Adressenabschnitt des Datenpuffers 150h entgegengenommen
wird, werden die verbleibenden drei Befehlscodes für 96 Bits
an der Grenze des Datenpuffers 150h nachfolgend in dem
Datenpuffer 150h entgegengenommen. D.h., der Befehl wird
von dem externen Datenbus 500 achtmal, jeweils 16-Bits,
entgegengenommen. Wenn ein gewünschter
32-Bit-Befehlscode in dem zweiten Adressenabschnitt von dem Kopf-
bzw. von der Oberseite in dem Datenpuffer 150h entgegengenommen
wird, werden die verbleibenden zwei Befehlscodes für 64 Bits
zu der Grenze des Datenpuffers 150h nachfolgend in dem
Datenpuffer 150h aufgenommen. D.h., der Befehl wird von
dem externen Datenbus 500 sechsmal, jeweils zu 16-Bits,
entgegengenommen.
-
Wenn ein gewünschter 32-Bit-Befehlscode in
dem dritten Adressenabschnitt des Datenpuffers 150h entgegengenommen
wird, wird auf ähnlicher Weise
der verbleibende Befehlscode für
32 Bits zu der Grenze des Datenpuffers 150h nachfolgend
in dem Datenpuffer 150h entgegengenommen. D.h., der Befehl
wird von dem externen Datenbus 500 viermal, jeweils zu
16-Bits, entgegengenommen. Wenn ein gewünschter 32-Bit-Befehlscode
in dem letzten Adressenabschnitt in dem Datenpuffer 150h aufgenommen
wird, wird nachfolgend kein Befehlscode entgegengenommen. D.h.,
der Befehl wird von dem externen Datenbus 500 zweimal,
jeweils zu 16-Bits, entgegengenommen. Dann werden die vier Befehlscodes
für 128-Bits,
die den einen gewünschten 32-Bit-Befehlscode enthalten,
in dem Datenpuffer 150h gespeichert. In diesem Fall nimmt
der Datenpuffer 150h die Befehlscodes achtmal, jeweils
zu 16-Bits, von dem externen Datenbus 500 entgegen. Dann
werden die in dem Datenpuffer 150h in der externen Busschnittstelleneinrichtung 150 gespeicherten
Befehlscodes zu der Befehlswarteschlange 110a in der Zentraleinheit 110 über den
internen Datenbus 170 übertragen.
-
Nachstehend wird der Operandenlesezugriff beschrieben,
bei dem die Zentraleinheit 110 einen Operanden liest. Falls
der für
die Zentraleinheit 110 erforderliche Operant an einer Adresse
in dem eingebauten DRAM-Bereich vorhanden ist, werden die den erforderlichen
Operanden enthaltenden 128-Bit-Daten von dem Cachespeicher 130 oder dem
eingebauten DRAM 120 zu der Datenauswahleinrichtung 110i in
der Zentraleinheit 110 über
den internen Datenbus 170 übertragen. Die Datenauswahleinrichtung 110i überträgt den erforderlichen
Operanden für
32 Bits zum Schaltkreis in der Zentraleinheit 110. Falls
der für
die Zentraleinheit 110 erforderliche Operant an einer Adresse
in dem externen Speicher 400 vorhanden ist, wird der gewünschte 32-Bit-Operant
in dem Datenpuffer 150h in der externen Busschnittstelleneinrichtung 150 von
dem externen Datenbus 500 gespeichert, der zu der Datenauswahleinrichtung 110i in
der Zentraleinheit 110 über den
internen Datenbus 170 übertragen
wird.
-
Nachstehend wird der Operandenschreibzugriff
beschrieben, bei dem die Zentraleinheit 110 einen Operanden
schreibt. Zuerst wird der aus der Zentraleinheit 110 ausgegebene
32-Bit-Operant der Datenauswahleinrichtung 110i zugeführt. Die
Datenauswahleinrichtung 110i überträgt den 32-Bit-Operanden von
der Zentraleinheit 110 zu 32 Bits des internen 128-Bit-Datenbusses 170.
Wenn dieser Operant an eine Adresse in dem eingebauten DRAM-Bereich
zu schreiben ist, wird der Operant in den Cachespeicher 130 oder
den eingebauten DRAM 120 über den internen Datenbus 170 geschrieben.
Wenn dieser Operant in den externen Speicher 400 zu schreiben
ist, wird der Operant einmal in dem Datenpuffer 150h in
der externen Busschnittstelleneinrichtung 150 über den
internen Datenbus 170 gespeichert und jeweils zu 16 Bits
zu dem externen Datenbus 500 übertragen.
-
Nachstehend wird ein Lesezugriff
des externen Busmasters beschrieben, bei dem externe Busmaster 300 einen
Operanden liest, der an einer Adresse in dem eingebauten DRAM-Bereich vorhanden
ist. Zuerst werden den gewünschten
Operanden enthaltende 128-Bit-Daten zu dem Datenpuffer 150h in
der externen Busschnittstelleneinrichtung 150 über den
internen Datenbus 170 von dem Cachespeicher 130 oder
dem eingebauten DRAM 120 übertragen und darin gespeichert.
Daraufhin wird der in dem Datenpuffer 150h gespeicherte
Operant zu dem externen Datenbus 500, jeweils zu 16-Bits, übertragen. Dann
empfängt
der externe Busmaster 300 den über den externen Datenbus 500 übertragenen
Operanden.
-
Nachstehend wird ein Schreibzugriff
des externen Busmasters beschrieben, bei dem der externe Busmaster 300 einen
Operanden an eine Adresse in dem eingebauten DRAM-Bereich schreibt.
Zuerst werden Daten durch 16 Bits von dem externen Busmaster 300 zu
dem Datenpuffer 150h in der externen Busschnittstelleneinrichtung 150 über den
externen Datenbus 500 übertragen
und in dem Datenpuffer 150h gespeichert. Dann werden die
in dem Datenpuffer 150h gespeicherten Daten in den Cachespeicher 130 oder
den eingebauten DRAM 120 über den internen Datenbus 170 geschrieben.
-
Nachstehend wird der Zugriffsvorgang
auf den Cachespeicher 120 oder den eingebauten DRAM beschrieben.
Zuerst wird das Protokoll des Befehlsabruf-Zugriffs unter Bezugnahme
auf 6 beschrieben, bei dem die Zentraleinheit 110 Daten aus
dem Cachespeicher 130 oder dem eingebauten DRAM 120 liest.
Zuerst setzt zu einem Zeitpunkt t1 die Befehlswarteschlange 110a in
der Zentraleinheit 110 das Befehlsabrufanforderungssignal/REQF
auf den L-Pegel und der Programmzähler 110c in der CPU 110 verändert das
Befehlsabruf-Zugriffsadressensignal AF auf eine Adresse, die den
eingebauten DRAM-Bereich bestimmt, und dann spricht die Speichersteuereinrichtung 160 auf
diese Anforderung an und setzt das Befehlsabruf-Zugriffsbestätigungssignal/ACKF zu einem
Zeitpunkt t2 auf den L-Pegel. Dann setzt die Speichersteuereinrichtung 160 das Steuersignal
CTRLC oder CTRLD in einen Lesebestimmungszustand für den Cachespeicher 130 oder den
eingebauten DRAM 120. Dann werden Daten aus dem Cachespeicher 130 oder
dem eingebauten DRAM 120 als interne Daten intD [0:127]
zu einem Zeitpunkt t3 auf den internen Datenbus 170 ausgegeben.
Die ausgegebenen internen Daten intD [0:127] werden durch die Zentraleinheit 110 abgerufen.
Die Speichersteuereinrichtung 160 setzt das Befehlsabruf-Zugriffsendesignal/ENDF
zu einem Zeitpunkt t3 auf den L-Pegel.
-
Unter Bezugnahme auf 7 wird
das Protokoll des Operandenlesezugriffs beschrieben, bei dem die
Zentraleinheit 110 Daten aus dem Cachespeicher 130 oder
dem eingebauten DRAM 120 liest. Zuerst setzt zu einem Zeitpunkt
t1 die CPU-Steuerschaltung 110j in
der Zentraleinheit 110 das Operandenzugriffsanforderungssignal/REQO
auf den L-Pegel und ändert
das Operandenzugriffsadressensignal AO in eine Adresse zur Bestimmung
des eingebauten DRAM-Bereichs, und dann setzt die Speichersteuereinrichtung 160 auf
diese Anforderung hin das Operandenzugriffsbestätigungssignal ACKO zu einem
Zeitpunkt t2 auf den L-Pegel. Daraufhin versetzt die Speichersteuereinrichtung 160 das
Steuersignal CTRLC oder CTRLD in einen Lesebestimmungszustand für den Cachespeicher 130 oder
den eingebauten DRAM 120. Dann werden Daten aus dem Cachespeicher 130 oder
dem eingebauten DRAM 120 als interne Daten intD [0:127]
auf den internen Datenbus 170 zu einem Zeitpunkt t3 ausgegeben.
Die ausgegebenen internen Daten intD [0:127) werden in der Zentraleinheit 110 abgerufen.
Die Speichersteuereinrichtung 160 setzt das Operandenzugriffsendesignal/ENDO
zu einem Zeitpunkt t3 auf den L-Pegel.
-
Nachstehend wird unter Bezugnahme
auf 8 das Protokoll des Operandenschreibzugriffs beschrieben,
bei dem die Zentraleinheit 110 Daten in den Cachespeicher 130 oder
den eingebauten DRAM 120 schreibt. Zuerst setzt die CPU-Steuerschaltung 110j in
der Zentraleinheit 110 das Operandenzugriffsanforderungssignal/REQO
zu einem Zeitpunkt t1 auf den L-Pegel und ändert das Operandenzugriffsadressensignal
AO in eine Adresse zur Bestimmung des eingebauten DRAM-Bereichs, und dann
setzt die Speichersteuereinrichtung 160 auf diese Anforderung
hin das Operandenzugriffsbestätigungssignal/ACKO
zu einem Zeitpunkt t2 auf den L-Pegel. Dann gibt die Zentraleinheit 110 Schreibdaten
als interne Daten intD [0:127] auf den internen Datenbus 170 aus.
Danach setzt die Speichersteuereinrichtung 160 das Steuersignal
CTRLC oder CTRLD in einen Schreibbestimmungszustand für den Cachespeicher 130 oder
den eingebauten DRAM 120. Dann werden die Daten von dem
internen Datenbus 170 in den Cachespeicher 130 oder den
eingebauten DRAM 120 geschrieben. Die Speichersteuereinrichtung 160 setzt
das Operandenzugriffsendesignal/ENDO zu einem Zeitpunkt t5 auf den L-Pegel.
-
Nachstehend wird unter Bezugnahme
auf 9 das Protokoll des Lesezugriffs
durch den externen Busmaster beschrieben, bei dem der externe Busmaster 300 Daten
aus dem Cachespeicher 130 oder dem eingebauten DRAM 120 liest.
Zuerst setzt die externe Bussteuereinrichtigung 200 das
Halteanforderungssignal/HREQ zu einem Zeitpunkt t1 im Ansprechen
auf die Anforderung von dem externen Busmaster 300 auf
den L-Pegel. Daraufhin setzt der Mikroprozessor 100 das
Haltebestätigungssignal/HACK
zu einem Zeitpunkt t2 auf den L-Pegel. Dann setzt die externe Bussteuereinrichtigung 200 das
Chipauswahlsignal/CS zu einem Zeitpunkt t3 auf den L-Pegel, ändert das
Adressensignal A [8:30] in eine Adresse des Zielorts und setzt das
Lese/Schreib-Signal R/W auf den H-Pegel. Dann versetzt die Speichersteuereinrichtung 160 in
der Zentraleinheit 110 das Steuersignal CTRLC oder CTRLD in
einen Lesebestimmungszustand für
den Cachespeicher 130 oder den eingebauten DRAM 120.
-
Daraufhin werden die internen Daten
intD [0:127] aus dem Cachespeicher 130 oder dem eingebauten
DRAM 120 auf den internen Datenbus 170 ausgegeben
und in der externen Busschnittstelleneinrichtung 150 entgegengenommen
und gespeichert, wobei Daten auf den externen Datenbus 500 als
externe Daten extD [0:15] zu jedem der Zeitpunkte t6, t8, t10 und
t12 jeweils zu 16 Bits ausgegeben werden. Zum Zeitpunkt t6 wird
das Datenvollständigkeitssignal/DC
auf den L-Pegel gesetzt.
-
Nachstehend wird unter Bezugnahme
auf 10 das Protokoll des Schreibzugriffs
durch den externen Busmaster beschrieben, bei dem externe Busmaster 300 Daten
in den Cachespeicher 130 oder den eingebauten DRAM 120 schreibt.
Zuerst setzt die externe Bussteuereinrichtung 200 im Ansprechen
auf eine Anforderung von dem externen Busmaster 300 das
Halteanforderungssignal/HREQ zu einem Zeitpunkt t1 auf den L-Pegel.
Daraufhin setzt der Mikroprozessor 100 das Haltebestätigungssignal/HACK
zu einem Zeitpunkt t2 auf den L-Pegel. Dann setzt die externe Bussteuereinrichtung 200 das Chipauswahlsignal/CS
zu einem Zeitpunkt t3 auf den L-Pegel, ändert das Adressensignal A
[8:30] in eine Adresse des Zielorts und setzt das Lese/Schreib-Signal
R/W auf den L-Pegel, und der externe Busmaster 300 stellt
die Schreibdaten als externe Daten extD [0:15) bereit.
-
Die aus dem externen Busmaster 300 ausgegebenen
Schreibdaten werden durch 16 Bits in dem Datenpuffer 150h in
der externen Busschnittstelleneinrichtung 150 in dem Mikroprozessor 100 gespeichert.
Um nach außen
anzuzeigen, daß Daten auf
dem externen Datenbus 500 in dem Datenpuffer 150h
gespeichert wurden, setzt der Mikroprozessor 100 das Datenvollständigkeitssignal/DC
zu einem Zeitpunkt t4 auf den L-Pegel. Wenn das Chipauswahlsignal/CS
zu einem Zeitpunkt tll auf den H-Pegel gesetzt wird und sich das
Lese/Schreib-Signal R/W auf dem L-Pegel befindet, setzt die Speichersteuereinrichtung 160 das
Steuersignal CTRLC oder CTRLD in einen Schreibbestimmungszustand
für den
Cachespeicher 130 oder den eingebauten DRAM 120.
-
Darauffolgend werden die in der externen Busschnittstelleneinrichtung 150 entgegengenommenen
und gespeicherten Schreibdaten auf den internen Datenbus 170 ausgegeben
und die Daten auf dem internen Datenbus 170 werden in dem
Cachespeicher 130 oder dem eingebauten DRAM 120 gespeichert.
-
Nachstehend wird der Fall beschrieben,
bei dem Zugriffe von der Zentraleinheit 110 und dem externen
Busmaster 300 wetteifern. Es wird auf 11 Bezug
genommen. Wenn eine Zugriffsanforderung von der Zentraleinheit 110 und
eine Zugriffsanforderung von dem externen Busmaster 300 wie
in dem Fall gleichzeitig auftreten, bei dem beispielsweise das Operandenzugriffsanforderungssignal/REQO und
das Chipauswahlsignal/CS gleichzeitig den L-Pegel erreichen, wird
die Zugriffsanforderung von dem externen Busmaster 300 vorzugsweise
zuerst durch Steuerung durch die Speichersteuereinrichtung 160 verarbeitet,
und dann wird die Anforderung von der Zentraleinheit 110 verarbeitet.
Wenn wie in 12 gezeigt eine Zugriffsanforderung
von der Zentraleinheit 110 eher als eine Zugriffsanforderung von
dem externen Busmaster 300 wie in dem Fall auftritt, bei
dem das Operandenzugriffsanforderungssignal/REQO den L-Pegel früher als
das Chipauswahlsignal/CS erreicht, wird die Zugriffsanforderung von
der Zentraleinheit 110 zuerst durch Steuerung durch die
Speichersteuereinrichtung 160 und dann die Anforderung
von dem externen Busmaster 300 verarbeitet. Wenn eine Zugriffsanforderung
von dem externen Busmaster 300 früher auftritt, werden jene in
umgekehrter Reihenfolge verarbeitet.
-
Nachstehend wird der Verriegelungszugriff durch
die Zentraleinheit 110 beschrieben. Zuerst wird unter Bezugnahme
auf 13 das Protokoll des Verriegelungszugriffs
für den
Fall beschrieben, bei dem der Halteausschlußsperrmodus eingestellt ist.
Die Zentraleinheit 110 setzt das Sperrsignal/LOCK in der Periode
von der Ausführung
des verriegelten Ladebefehls bis zur Ausführung des verriegelten Speicherbefehls
auf den L-Pegel.
In der Periode, wenn die Speichersteuereinrichtung 160 das
Operandenzugriffsbestätigungssignal/ACKO
im Ansprechen auf die Operandenzugriffsanforderung durch den verriegelten
Ladebefehl auf den L-Pegel setzt, zu dem Zeitpunkt, wenn die Speichersteuereinrichtung 160 das
Operandenzugriffsbestätigungssignal/ACKO
im Ansprechen auf die Operandenzugriffsanforderung durch den verriegelten
bzw. gesperrten Speicherbefehl auf den L-Pegel setzt, ignoriert
sie das von außen
zugeführte
Halteanforderungssignal/HREQ selbst dann, wenn es auf den L-Pegel übergeht.
Demnach wird in der Verriegelungszugriffsperiode durch die Zentraleinheit 110 das Busrecht
des externen Datenbusses 500 nicht für den externen Busmaster 300 freigegeben.
Nach der Durchführung
der Speicherungsverarbeitung mit dem gesperrten Speicherbefehl nimmt
die Speichersteuereinrichtung 160 die Halteanforderung
an.
-
Des weiteren wird unter Bezugnahme
auf 14 das Protokoll des Verriegelungszugriffs
beschrieben, bei dem der Chipauswahlauschlußsperrmodus eingestellt ist.
Die Zentraleinheit 110 setzt das Sperrsignal/LOCK in der
Periode von der Ausführung des
verriegelten Ladebefehls bis zur Ausführung des verriegelten Speicherbefehls
auf den L-Pegel. In der Periode von dem Zeitpunkt, wenn die Speichersteuereinrichtung 160 das
Operandenzugriffsbestätigungssignal/ACKO
auf die Operandenzugriffsanforderung durch den verriegelten Ladebefehl
hin auf den L-Pegel setzt, bis zu dem Zeitpunkt, wenn die Speichersteuereinrichtung 160 das
Operandenzugriffsbestätigungssignal/ACKO
auf die Operandenzugriffsanforderung durch den gesperrten Speicherbefehl
hin auf den L-Pegel setzt, ignoriert sie das von außen zugeführte Chipauswahlsignal/CS
selbst dann, wenn es auf den L-Pegel übergeht. Demnach wird in der
Verriegelungszugriffsperiode durch die Zentraleinheit 110 kein
Zugriff durch den externen Busmaster 300 auf den eingebauten
DRAM-Bereich durchgeführt.
Nach der Durchführung
der Speicherverarbeitung mit dem gesperrten Speicherbefehl nimmt
die Speichersteuereinrichtung 160 die Zugriffsanforderung
von dem externen Busmaster 300 an.
-
Wie vorstehend beschrieben enthält der Mikroprozessor 100 gemäß dem ersten
Ausführungsbeispiel
die Zentraleinheit 110, den eingebauten DRAM 120 und
die Speichersteuereinrichtung
160, die den Verriegelungszugriff
durch die CPU 110 auf den eingebauten DRAM 120 derart
steuert, daß die Zentraleinheit 110 einen
Verriegelungszugriff durchführen
kann. Demnach kann die Zentraleinheit 110 einen Lese-Abänderungs-Schreib-Zugriff
auf ungeteilte Art und Weise ohne Störung durch einen Zugriff auf
den eingebauten DRAM 120 von außen durchführen. Dies löst das Problem
des Zugangskonflikts, das dadurch entsteht, daß der eingebaute DRAM 120 und
die Zentraleinheit 110 auf einem Chip ausgebildet sind,
wodurch die Verwendung des eingebauten DRAMs 120 als gemeinsam
genutzter Speicher mit der Außenseite
ermöglicht
wird.
-
Insbesondere wird bei Systemen, bei
denen Semaphorwerte in dem eingebauten DRAM-Bereich gespeichert
sind, das Problem gelöst,
daß von
außen ein
Neuschreiben vorgesehen wird, während
die Zentraleinheit 110 den Semaphorwert liest und den Wert
neu schreibt. Auch in anderen Fällen,
wenn ein eingebauter DRAM-Bereich als gemeinsam genutzter Speicher
verwendet wird, wird der Zentraleinheit 110 die Durchführung einer
Folge von Verarbeitungen ermöglicht,
während
Zugriffsanforderungen von außen
ausgeschlossen sind.
-
Da es des weiteren möglich ist,
zwischen dem Halteausschlußsperrmodus
und dem Chipauswahlausschlußsperrmodus
umzuschalten, kann der geeignete Sperrmodus in Abhängigkeit
des Systems eingestellt werden.
-
Bei einer Halbleitereinrichtung mit
einer Zentraleinheit und einem Speicher auf dem gleichen Chip weist
die Zentraleinheit keine Funktion zur Durchführung eines Verriegelungszugriffs
auf den eingebauten Speicher auf, und daher kann die Zentraleinheit kein
Lesen-Abändern-Schreiben
bezüglich
des eingebauten Speichers auf ungeteilte Art und Weise durchführen. Zur
Lösung
des Problems sind eine Zentraleinheit, ein eingebauter DRAM und
eine Speichersteuereinrichtung ausgebildet, die eine Steuerung derart
bereitstellt, daß die
Zentralein heit einen Verriegelungszugriff auf den eingebauten DRAM durchführen kann.